Кратко

  • RFC 2374 назвал поля TLA, NLA и SLA, но прямо предположил, что маршрутизаторы не знают этих имён и выбирают самый длинный префикс на произвольной битовой границе.
  • Иерархия была ограниченным планом выделения и агрегации, а не автоматическим доказательством полномочий, принятия маршрута, переносимости или работающего сервиса.

Схема выглядела как вертикаль власти

Формат агрегируемого глобального unicast распределял биты институциональным языком: три для префикса формата, тринадцать для TLA, восемь в резерве, двадцать четыре для NLA, шестнадцать для SLA и шестьдесят четыре для интерфейса.

TLA и NLA описывали публичную топологию, SLA — внутреннюю структуру площадки. Получатель TLA мог делить NLA между провайдерами и площадками, а они — делить дальше. Казалось, что адрес сам описывает путь от вершины публичной системы до локального интерфейса.

Но спецификация запрещала переносить такое чтение в пересылку. Маршрутизация должна была искать самый длинный префикс на любой битовой границе и не знать внутренней структуры. Поля служили назначению и выделению. Кроме различия unicast и multicast, они не были смысловыми командами для маршрутизатора.

Граница поля не создавала маршрут

Орган мог делегировать префикс. Оператор мог объявить его. Сосед мог принять по политике. Маршрутизатор мог установить запись. Это отдельные действия.

Адрес не показывал, действует ли выделение, изменилась ли опека, существует ли более специфичный маршрут, отвергла ли политика объявление и через какого провайдера идёт трафик. Реальный префикс мог пересекать именованное поле; идеально структурированный адрес мог оставаться недоступным.

Надёжная цепочка соединяет действующее правило, запись делегирования, объявление, решение импорта, установленную пересылку, наблюдаемый путь и результат сервиса. Наличие NLA не заменяет ни одну квитанцию.

8192 было рамкой планирования

Тринадцать бит давали 8192 TLA. Число должно было удержать бездефолтные таблицы в пределах тогдашней техники, оставив запас для более специфичных путей внутри и между областями. Учитывалась и вычислительная сложность: один префикс мог приходить по множеству путей.

Восемь резервных бит оставляли выход. Позднее решение могло расширить TLA или NLA либо применить другой префикс формата. Развёрнутый маршрутизатор не должен был угадывать момент перемены. Требовалось новое общее решение.

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

Делегирование меняло гибкость на агрегацию

Получатель TLA имел двадцать четыре бита NLA и строил собственную иерархию; следующий уровень мог делить снова. RFC 2374 рекомендовал постепенное выделение и признавал компромисс: глубокая структура улучшала агрегацию и уменьшала таблицы, плоская облегчала назначение и подключение, но увеличивала число маршрутов.

Внутри площадки шестнадцать бит SLA давали 65 535 значений подсети с локальной структурой. Очень крупная организация могла получить ещё один идентификатор площадки. Публичный распределитель не проектировал локальные подсети, а площадка не получала власть над публичным маршрутом благодаря аккуратному SLA.

Формат распределял решения, но не отменял их.

Переносимость осталась за границей документа

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

Однако механизмы выбора и переносимости не рассматривались. Формат резервировал место в топологии выделения, но не определял управление обменом, маршрутную политику, аутентификацию, переключение, коммерческие условия или процедуру миграции.

RFC 2450 позднее предложил нативный сервис за три месяца, проверяемую маршрутными наблюдениями транзитную историю, публичные реестры, отчёты об использовании и возможность отзыва. Но это был Informational-вклад для первых двух лет, прямо допускавший изменение процедур с опытом.

Опыт изменил словарь

6bone использовал pTLA и pNLA как прототипы, а первые sub-TLA оставили реальные административные записи. Они доказывают эксперимент и выделения, но не постоянное воплощение всех задуманных отношений.

В 2003 году RFC 3587 сделал структуру TLA/NLA исторической. Остался общий формат из глобального маршрутного префикса, идентификатора подсети и интерфейса. Функция SLA продолжилась под именем subnet ID, а реализации получили предупреждение не считать 2000::/3 вечно особенным.

Агрегация и самый длинный префикс не исчезли. Исчезло обязательное толкование публичной топологии из фиксированных полей. Работающая сеть всегда следовала маршрутам; новая спецификация сделала разделение яснее.

Принцип Lu Heng о первенстве работающего кода помещает полномочие в объявления, фильтры, таблицы и наблюдаемые пути, не в статус названия поля. Минимальная начальная спецификация объясняет временную пользу плана. Слои реальности разделяют синтаксис, выделение, опеку, распространение, путь и сервис.

RFC 2374 пытался сделать агрегацию управляемой, записав словарь в адрес. Долговечной оказалась граница: маршрутизатор читал не иерархию, а маршрут.