GORAKH.NET+

Справочник

Архив за январь. Факт дня и разбор документа на каждую дату.
1 января
Факт дня

Мотылёк в реле

Слово «баг» появилось задолго до компьютеров, но самый известный экземпляр реален: в 1947 году из реле Harvard Mark II достали мотылька и вклеили в журнал с подписью «первый настоящий случай найденного бага». Страница до сих пор хранится в музее.

Разбор дня

Протокол IP

Internet Protocol

Основной документ интернета: формат заголовка, адресация и фрагментация. Поле TTL задумывалось как время в секундах, но все реализации считают им число хопов, и в IPv6 его честно переименовали в Hop Limit.

RFC 791 на rfc-editor.org
2 января
Факт дня

Почему спам называется спамом

Название пришло из скетча Монти Пайтона, где в кафе всё меню состоит из консервов SPAM, а хор викингов заглушает разговор песней про них. Мусорные рассылки заглушают полезную почту ровно так же.

Разбор дня

UTF-8

UTF-8, a transformation format of ISO 10646

Кодировка переменной длины, совместимая с ASCII: латиница занимает байт, кириллица два, эмодзи четыре. Именно эта совместимость и обеспечила ей победу.

RFC 3629 на rfc-editor.org
3 января
Факт дня

Отладка началась с рифмы

Radia Perlman описала алгоритм остовного дерева стихотворением Algorhyme, которое вошло в её статью. Строчка «I think that I shall never see a graph more lovely than a tree» открывает документ о протоколе, спасающем сети от петель.

Разбор дня

UDP: протокол пользовательских датаграмм

User Datagram Protocol

Три страницы текста на весь протокол: порты, длина, контрольная сумма и ничего больше. Ни соединений, ни подтверждений, ни повторов, поэтому на UDP выросли DNS, DHCP, VoIP и QUIC, где надёжность делают уровнем выше.

RFC 768 на rfc-editor.org
4 января
Факт дня

Восемьдесят колонок

Ширина терминала в 80 символов пришла от перфокарты IBM, где было ровно 80 колонок. Ограничение пережило и карты, и текстовые терминалы, и до сих пор задаёт длину строки в половине руководств по стилю кода.

Разбор дня

URI: общий синтаксис

Uniform Resource Identifier (URI): Generic Syntax

Разбор адреса на схему, авторитет, путь, запрос и фрагмент. Фрагмент после решётки на сервер никогда не отправляется.

RFC 3986 на rfc-editor.org
5 января
Факт дня

Первый жёсткий диск весил тонну

IBM 350 RAMAC 1956 года хранил около пяти мегабайт на пятидесяти дисках диаметром 61 сантиметр. Устройство весило почти тонну, и его перевозили самолётом как крупногабаритный груз.

Разбор дня

ICMP: протокол управляющих сообщений

Internet Control Message Protocol

Служебные сообщения IP: недостижимость, превышение TTL, эхо-запрос. Traceroute не имеет своего протокола - он шлёт пакеты с TTL 1, 2, 3 и собирает маршрут из ICMP-ответов «время истекло» от каждого промежуточного роутера.

RFC 792 на rfc-editor.org
6 января
Факт дня

Наносекунда в руке

Грейс Хоппер раздавала на лекциях отрезки провода длиной около 30 сантиметров: столько свет проходит за наносекунду. Так она объясняла инженерам, почему длина кабеля влияет на задержку.

Разбор дня

Автоматическое обновление якорей доверия DNSSEC

Automated Updates of DNS Security (DNSSEC) Trust Anchors

Как резолвер безопасно подхватывает новый корневой ключ, не дожидаясь ручной правки конфигурации.

RFC 5011 на rfc-editor.org
7 января
Факт дня

Собачка в адресе

Рэй Томлинсон выбрал символ @ для почтового адреса просто потому, что он точно не встречался в именах пользователей и означал предлог «на». Решение приняли за минуты, а живёт оно уже полвека.

Разбор дня

ARP: разрешение адресов в Ethernet

An Ethernet Address Resolution Protocol: Or Converting Network Protocol Addresses to 48.bit Ethernet Address for Transmission on Ethernet Hardware

Как по IP-адресу узнать MAC соседа: широковещательный вопрос «чей это адрес» и ответ владельца. Протокол не проверяет, кто отвечает, поэтому ARP-спуфинг остаётся рабочей атакой в локальной сети спустя сорок лет.

RFC 826 на rfc-editor.org
8 января
Факт дня

Первый спам отправили в 1978 году

Менеджер DEC разослал приглашение на презентацию нескольким сотням адресов ARPANET. Возмущение было таким, что администрация сети официально попросила больше так не делать.

Разбор дня

ABNF: язык описания синтаксиса

Augmented BNF for Syntax Specifications: ABNF

Нотация, которой записаны грамматики почти всех интернет-протоколов. Читая любой RFC, вы читаете и ABNF.

RFC 5234 на rfc-editor.org
9 января
Факт дня

Кофейник, ставший первой веб-камерой

В Кембридже камеру навели на кофейник, чтобы не ходить впустую на другой этаж. Позже картинку вывели в веб, и весь мир несколько лет наблюдал за уровнем кофе в лаборатории.

Разбор дня

Передача IP-датаграмм в сетях Ethernet

A Standard for the Transmission of IP Datagrams over Ethernet Networks

Документ на две страницы, закрепивший инкапсуляцию IP в Ethernet с типом 0x0800 и MTU 1500 байт. Это то самое число, из-за которого до сих пор считают запас на заголовки в туннелях и режут MSS.

RFC 894 на rfc-editor.org
10 января
Факт дня

Эфир в названии Ethernet

Боб Меткалф назвал технологию в честь светоносного эфира - гипотетической среды, через которую якобы распространяется свет. Идея эфира в физике не подтвердилась, а название прижилось.

Разбор дня

Обнаружение EngineID в SNMPv3

Simple Network Management Protocol (SNMP) Context EngineID Discovery

Как клиент узнаёт идентификатор движка агента, без которого нельзя вычислить ключи.

RFC 5343 на rfc-editor.org
11 января
Факт дня

Bluetooth назван в честь короля

Имя досталось от датского конунга Харальда Синезубого, объединившего племена. Логотип - это его инициалы рунами, наложенные друг на друга.

Разбор дня

Доменные имена: понятия и возможности

Domain names - concepts and facilities

Идея DNS: дерево имён, делегирование зон и кэширование ответов. До неё соответствие имён и адресов раздавали одним файлом HOSTS.TXT, который рассылали по всей сети из единого центра.

RFC 1034 на rfc-editor.org
12 января
Факт дня

Тринадцать корневых серверов

Число не мистическое: адреса всех корневых серверов должны были умещаться в ответ DNS размером 512 байт. Тринадцать имён - это максимум, который туда влезал.

Разбор дня

Транспортная подсистема SNMP

Transport Subsystem for the Simple Network Management Protocol (SNMP)

Каркас, позволивший SNMP работать поверх защищённых транспортов, а не только по открытому UDP.

RFC 5590 на rfc-editor.org
13 января
Факт дня

Первый домен .com

Пятнадцатого марта 1985 года зарегистрировали symbolics.com, домен производителя лисп-машин. Компания давно исчезла, а домен до сих пор существует и перепродавался как реликвия.

Разбор дня

Доменные имена: реализация и спецификация

Domain names - implementation and specification

Формат пакетов и записей DNS. Отсюда лимит в 512 байт на ответ по UDP: всё, что больше, требовало перехода на TCP, пока не появился EDNS0 с расширенным размером сообщения.

RFC 1035 на rfc-editor.org
14 января
Факт дня

Wi-Fi ничего не значит

Название придумало маркетинговое агентство по созвучию с Hi-Fi. Расшифровка «Wireless Fidelity» появилась позже как попытка задним числом объяснить бессмысленный термин.

Разбор дня

Модель транспортной безопасности SNMP

Transport Security Model for the Simple Network Management Protocol (SNMP)

Перенос задачи защиты с самого протокола на транспорт вроде SSH или TLS.

RFC 5591 на rfc-editor.org
15 января
Факт дня

Микроволновка глушит Wi-Fi

Печь работает на 2,45 гигагерц - в той же полосе, что и старые каналы Wi-Fi. Экран поглощает большую часть излучения, но утечек хватает, чтобы соседний канал заметно просел.

Разбор дня

DHCP: динамическая настройка узлов

Dynamic Host Configuration Protocol

Четыре шага, которые проходит каждый ноутбук в незнакомой сети: DISCOVER, OFFER, REQUEST, ACK. Поле аппаратного адреса сделали шестнадцатибайтным с запасом на будущие канальные протоколы, а используется в нём обычно шесть байт MAC.

RFC 2131 на rfc-editor.org
16 января
Факт дня

Печенье из мира программирования

Куки названы от magic cookie - небольшого блока данных, который программа передаёт другой и получает обратно неизменным. Термин был в ходу в Unix задолго до веба.

Разбор дня

CMS: синтаксис криптографических сообщений

Cryptographic Message Syntax (CMS)

Формат подписанных и зашифрованных данных, на котором стоят S/MIME и подпись кода.

RFC 5652 на rfc-editor.org
17 января
Факт дня

Демон не имеет отношения к чертям

Фоновые процессы Unix назвали в честь демона Максвелла из мысленного эксперимента по термодинамике - невидимого помощника, который сортирует молекулы. Отсюда буква d в конце имён: httpd, sshd, crond.

Разбор дня

Опции DHCP и расширения BOOTP

DHCP Options and BOOTP Vendor Extensions

Каталог опций, которые сервер отдаёт клиенту: шлюз, DNS, домен поиска, NTP. Каждая опция это номер, длина и значение, а номер 53 задаёт тип самого сообщения DHCP.

RFC 2132 на rfc-editor.org
18 января
Факт дня

Ping назван по звуку сонара

Майк Мьюсс написал утилиту за вечер в 1983 году и назвал по аналогии с гидролокатором: посылаем импульс и слушаем отражение. Расшифровку Packet InterNet Groper придумали позже.

Разбор дня

EPP: протокол регистрации доменов

Extensible Provisioning Protocol (EPP)

Язык, которым регистратор говорит с реестром зоны: создать домен, продлить, передать другому. Каждая покупка домена проходит через него.

RFC 5730 на rfc-editor.org
19 января
Факт дня

Traceroute обманывает роутеры

Своего протокола у него нет: он шлёт пакеты с TTL, равным единице, двойке, тройке, и собирает маршрут из сообщений об истечении времени, которые честно возвращают промежуточные роутеры.

Разбор дня

FTP: протокол передачи файлов

File Transfer Protocol

Редкий протокол с двумя соединениями: по одному идут команды, по другому данные. Из-за этого активный режим ломается за NAT, а фаерволам приходится разбирать команду PORT, чтобы понять, какое соединение разрешить.

RFC 959 на rfc-editor.org
20 января
Факт дня

418 I'm a teapot

Код появился в первоапрельском документе о протоколе управления кофейниками. Когда его попытались убрать из библиотек, сообщество возмутилось так, что код оставили жить.

Разбор дня

EPP: работа с доменами

Extensible Provisioning Protocol (EPP) Domain Name Mapping

Операции над доменным именем: проверка занятости, регистрация, продление, смена владельца.

RFC 5731 на rfc-editor.org
21 января
Факт дня

IP через почтовых голубей

Документ RFC 1149 описывает передачу датаграмм птицами и всерьёз обсуждает задержку и потери. В 2001 году энтузиасты поставили эксперимент: из девяти пакетов дошло четыре.

Разбор дня

SMTP: простой протокол передачи почты

Simple Mail Transfer Protocol

Диалог из команд HELO, MAIL FROM, RCPT TO и DATA. Адрес в конверте MAIL FROM никак не связан с адресом в заголовке письма, которое видит получатель, - отсюда и подделка отправителя, и надстройки SPF, DKIM, DMARC.

RFC 5321 на rfc-editor.org
22 января
Факт дня

Комната 404 - миф

Легенда про кабинет 404 в ЦЕРН красива, но неверна: код просто означает четвёртый класс ошибок и четвёртую ошибку в группе. Впрочем, миф оказался живучее правды.

Разбор дня

EPP: работа с хостами

Extensible Provisioning Protocol (EPP) Host Mapping

Регистрация серверов имён и их адресов, в том числе склеивающих записей внутри своей же зоны.

RFC 5732 на rfc-editor.org
23 января
Факт дня

Код 451 отсылает к Брэдбери

Ответ «недоступно по юридическим причинам» получил номер 451 в честь романа «451 градус по Фаренгейту» - температуры воспламенения бумаги.

Разбор дня

Формат интернет-сообщения

Internet Message Format

Синтаксис письма: заголовки, пустая строка, тело. Ограничение в 998 символов на строку тянется со времён телетайпов и до сих пор заставляет почтовые библиотеки переносить длинные заголовки.

RFC 5322 на rfc-editor.org
24 января
Факт дня

Первая веб-страница жива

Страница Тима Бернерса-Ли о самом проекте World Wide Web восстановлена по историческому адресу. Она объясняет, что такое гипертекст, человеку, который никогда его не видел.

Разбор дня

EPP: работа с контактами

Extensible Provisioning Protocol (EPP) Contact Mapping

Данные владельца и администратора домена, те самые, что раньше целиком светились в whois.

RFC 5733 на rfc-editor.org
25 января
Факт дня

Порт 80 достался по очереди

Номер не имеет символического смысла: HTTP получил следующий свободный номер из низкого диапазона. Соседями оказались finger на 79 и kerberos на 88.

Разбор дня

POP3: протокол получения почты

Post Office Protocol - Version 3

Забрать письма с сервера и обычно удалить их там. Простота стала и слабостью: почта живёт на одном устройстве, состояние между клиентами не синхронизируется, и почти везде POP3 вытеснен IMAP.

RFC 1939 на rfc-editor.org
26 января
Факт дня

HTTPS переехал на 443

Защищённый веб не мог занять 80-й, и ему выделили свободный номер из той же тысячи. Никакой связи с криптографией у числа нет.

Разбор дня

EPP поверх TCP

Extensible Provisioning Protocol (EPP) Transport over TCP

Транспорт для EPP: постоянное TLS-соединение на порту 700 с двусторонней проверкой сертификатов.

RFC 5734 на rfc-editor.org
27 января
Факт дня

Адрес 127.0.0.1 занимает целую сеть

Под петлю зарезервирован не один адрес, а весь блок 127.0.0.0/8 - шестнадцать миллионов адресов. Пинг на 127.1.2.3 работает так же, как на привычный 127.0.0.1.

Разбор дня

Семантика HTTP

HTTP Semantics

Общая часть HTTP, вынесенная из версий протокола: методы, коды ответов, заголовки. Теперь HTTP/1.1, HTTP/2 и HTTP/3 описывают только способ передачи, а смысл запроса у всех троих один и тот же.

RFC 9110 на rfc-editor.org
28 января
Факт дня

Восемь восьмёрок

Google выбрал 8.8.8.8 для публичного резолвера потому, что адрес легко запомнить и продиктовать по телефону. Блок принадлежал компании и был свободен.

Разбор дня

SMTP: передача 8-битного MIME

SMTP Service Extension for 8-bit MIME Transport

Разрешение слать восьмибитный текст без перекодирования. До него любая кириллица ехала в base64 или quoted-printable.

RFC 6152 на rfc-editor.org
29 января
Факт дня

Единицы Cloudflare

Адрес 1.1.1.1 годами страдал от мусорного трафика: его прописывали в тестах и оборудовании как заведомо несуществующий. Прежде чем запускать резолвер, пришлось разбираться с этим потоком.

Разбор дня

Кэширование в HTTP

HTTP Caching

Правила, по которым ответ можно сохранить и переиспользовать: свежесть, валидация, директивы Cache-Control. Здесь же объясняется разница между no-cache, который разрешает хранить, но требует проверки, и no-store, который запрещает хранить вовсе.

RFC 9111 на rfc-editor.org
30 января
Факт дня

Полтора килобайта в кадре

MTU Ethernet в 1500 байт выбрали компромиссом: больше - и один кадр надолго занимает общую среду, меньше - и растут накладные расходы. Число пережило коаксиал, витую пару и оптику.

Разбор дня

SNMP поверх TLS

Transport Layer Security (TLS) Transport Model for the Simple Network Management Protocol (SNMP)

Транспортная модель, дающая SNMP шифрование и проверку сторон по сертификатам.

RFC 6353 на rfc-editor.org
31 января
Факт дня

FF:FF:FF:FF:FF:FF

Широковещательный MAC-адрес из одних единиц слышат все устройства сегмента. Именно поэтому большая широковещательная область шумит и её режут на VLAN.

Разбор дня

HTTP/1.1

HTTP/1.1

Текстовый синтаксис запроса и ответа. Постоянные соединения и конвейеризация появились именно здесь, но конвейер так и не прижился из-за блокировки очереди первым медленным ответом.

RFC 9112 на rfc-editor.org
GORAKH.NET+
Вход / Регистрация