Кратко
- RFC 1266 назвала три независимо созданные реализации BGP и отделила 56 учтённых маршрутизаторов в семи автономных системах от 49 маршрутизаторов в шести системах действующего Интернета.
- Более 2 000 сетей, разные линии, машины и топологии описывали конкретную среду BGP-3 1991 года, а не всемирную перепись и не обещание будущей производительности.
- Для CA*Net отчёт установил цепочку «перегрузка — потеря управляющих пакетов — медленная сходимость», рассмотрел приоритетную обработку и прямо предупредил, что этот экстремальный случай не является нормой.
Настройка очереди ещё не подтверждает результат
Десять маршрутизаторов CA*Net образовывали кольцо на интенсивно использовавшихся линиях 56 кбит/с. При перегрузке терялось много пакетов с информацией BGP. Потеря управляющих сообщений замедляла сходимость маршрутизации.
Порядок событий принципиален: сначала перегрузка, затем сброс пакетов, после него — задержка сходимости. RFC 1266 отвергала удобное объяснение, будто проблему создал TCP. Замена транспорта не заставила бы перегруженный маршрутизатор перестать отбрасывать пакеты; BGP не создавал исходную нагрузку, а TCP не управлял очередью.
В отчёте были две поверхности воздействия. Можно было устранить саму перегрузку, что находилось вне BGP. Либо можно было уменьшить долю потерянных BGP-пакетов, распознавая их и давая им преимущество. Для классификации подходили IP precedence, номер TCP-порта, адрес источника или назначения. CA*Net использовала адреса.
Более настойчивая повторная передача TCP могла приблизить очередную попытку, а меньшее окно — ограничить объём потенциально устаревших данных. Но отчёт не называл это лечением. Быстро повторить сообщение не значит исправить политику очереди, которая снова его отбрасывает.
Приоритет тоже меняет лишь правило доступа к дефицитному ресурсу. Чтобы подтвердить восстановление, после изменения требуется измерить потерю, обработку обновлений, выбор маршрута, время сходимости и рабочую пересылку. Команда конфигурации не может служить собственным доказательством успеха.
Пятьдесят шесть и сорок девять отвечали на разные вопросы
RFC 1266 готовилась как свидетельство выполнения тогдашних требований к переводу BGP на уровень Draft Standard. Информационный документ сам не задавал стандарт Интернета. Вместо общего заявления о зрелости он перечислил состав наблюдаемой совокупности.
CA*Net дала 10 пограничных маршрутизаторов, магистраль T1 NSFNET — 20, магистраль T3 NSFNET — 15, тестовая сеть T3 NSFNET — 7, CICNET — 2, MERIT и PSC — по одному. Итого получилось 56 маршрутизаторов в семи автономных системах.
Затем источник сузил знаменатель. К действующему Интернету относились 49 маршрутизаторов в шести автономных системах. Семь устройств тестовой сети сохранились в общей истории испытаний, но не стали производственными устройствами. Формула «56 действующих маршрутизаторов» стирает исключение, которое авторы отчёта оставили явно.
Это не спор о ценности лаборатории. Тестовая среда может подтвердить реализацию, взаимодействие или отказ. Производственная среда дополнительно подтверждает жизнь такой конфигурации в реальной эксплуатации. Оба факта нужны; подмена их одной категорией не усиливает свидетельство, а делает его менее проверяемым.
Независимость означала происхождение кода
Отчёт назвал три полностью независимые взаимодействующие реализации. cisco создала BGP для собственной операционной среды маршрутизаторов. Общедоступный gated работал на нескольких системах, включая BSD и AIX. Реализация NSFNET/IBM обслуживала магистрали T1 и T3.
Три независимо написанные кодовые базы дают больше, чем три установки одного бинарного файла. Разные команды вынуждены заново воплотить формат сообщений, состояние и переходы. Если их программы взаимодействуют, это проверенная связь между реализациями, а не только повторение одного исходного кода.
Но независимость не гарантирует равного качества или безопасности. Команды могут одинаково понять двусмысленное место. Редкий переход отказа может не возникнуть ни у одной. А обмен маршрутами между соседями ещё не доказывает правильность каждой локальной политики и последующей доставки.
Разнообразие не сводилось к числу устройств
Скорости линий простирались от 56 кбит/с до 45 Мбит/с. Среди машин были PC/RT и RS/6000, специализированные маршрутизаторы и универсальные Unix-станции. Топологии включали разреженные кольца и деревья, а также плотные магистрали. Полный набор внешних маршрутов, переносимый BGP, охватывал значительно больше 2 000 сетей.
Каждая ось проверяла своё предположение. Разное происхождение кода проверяло ясность спецификации. Операционные системы и аппаратные платформы выявляли требования к памяти и планированию. Скорость линии меняла задержку и вероятность потери. Топология создавала разные условия для путей и подавления петель.
Именно поэтому один счётчик не представляет всю эксплуатационную поверхность. «Три реализации», «56 маршрутизаторов», «49 действующих маршрутизаторов» и «более 2 000 сетей» — четыре записи с разными знаменателями и пределами вывода.
Состояние BGP принадлежало истории соединения
RFC 1164 показывает работу реализации, скрытую за итоговым отчётом. TCP передаёт поток байтов, поэтому один вызов чтения не обязан вернуть целое сообщение BGP. Программа должна проверить заголовок и длину, сохранить неполные данные и дождаться продолжения, не блокируя процесс маршрутизации.
Обновления инкрементальны. Объявленный маршрут остаётся действующим, пока его явно не отзовут или не заменят. Надёжный транспорт обеспечивает порядок и повтор, но сохранённое для каждого соседа состояние становится частью корректности.
RFC 1267 описывала договор BGP-3: при установлении соединения передаётся полное состояние, затем — только изменения. Периодического полного обновления, которое само исправило бы скрытое расхождение, нет. При отказе транспорта соседи возвращаются в Idle и заново строят общую историю.
Поэтому слова «протокол работал» объединяют слишком многое. Разбор сообщений, сохранение обновлений, таймеры, выбор маршрута, локальная политика и восстановление соединения могут давать разные результаты. Успех одной части не становится чеком за все остальные.
Более 2 000 сетей — масштаб с датой
RFC 1266 сообщала об эксплуатации с 1989 года, участии всех трёх реализаций, использовании существенных функций, обмене между транзитными и конечными системами, региональных сетях, магистралях и многовендорной среде. В отчёте также сказано, что были задействованы аутентификация и подавление маршрутных петель.
Вес этому придают названные границы: системы, устройства, классы линий, топологии и современный документу объём маршрутов. За подробностями измерений CA*Net и NSFNET текст отсылал к докладам в материалах двадцатого заседания IETF. Такая ссылка не позволяет позднейшему автору придумать исходные выборки, интервалы ошибок или доли внедрения, которых RFC не приводит.
Число сетей тоже нельзя переносить во времени без версии. Оно свидетельствовало, что реализации BGP-3 обслуживали тогдашний набор внешних маршрутов. Само по себе оно ничего не говорит о BGP-4, поздних атрибутах, современной политике или нынешних продуктах.
Экстремальный случай был помечен самим источником
Для CA*Net сходимость BGP имела необычно высокое значение: сведения о внешних маршрутах не переносились её внутренним шлюзовым протоколом. Информация BGP участвовала во внутренней маршрутизации кольца. RFC 1266 назвала эту конфигурацию экстремальным стрессовым случаем и велела не принимать её результат за норму. В более обычных сетях внешняя маршрутная информация находилась бы в IGP.
Предупреждение не отменяет наблюдение, а определяет способ его применения. Экстремум может раньше проявить зависимость. Он не становится от этого средней топологией, всеобщим дефектом TCP или вечным свойством BGP.
RFC 1268 сохраняет соседнюю границу политики. Обмениваемые AS-пути и локальная конфигурация помогали принимать решения для конечных, многосвязных нетранзитных и транзитных систем. Объявление маршрута не было сертификатом полномочий, коммерческим отношением или обещанием доставки. Эксплуатационный отчёт проверял механизм решения, а не законность каждого решения и не судьбу каждого пакета.
Источники и пределы вывода
- RFC 1266 — Experience with the BGP Protocol
- RFC 1264 — Internet Routing Protocol Standardization Criteria
- RFC 1164 — Application of the Border Gateway Protocol in the Internet
- RFC 1267 — A Border Gateway Protocol 3 (BGP-3)
- RFC 1268 — Application of the Border Gateway Protocol in the Internet
Эти документы подтверждают современную им спецификацию, практику реализации, допущения применения, происхождение программ, учтённую совокупность, масштаб маршрутов и наблюдение CA*Net. Они не подтверждают полный набор данных заседания IETF, всемирное внедрение, современное поведение BGP, нынешнее соответствие продуктов, текущую безопасность, всеобщую сходимость, достижимость, доставку или результат для пользователя.
Обзор для участников
Подробный контекст профиля
Войдите с подходящим уровнем подписки, чтобы открыть полный обзор и примечания к источникам.
Только для Стратегического сообщества
Стратегическое сообщество
Открыто всем читателям. Вступите и войдите, чтобы открыть обзоры профилей.
Вступить в Стратегическое сообществоТолько для Альянса лидеров
Альянс лидеров
Для проверенных владельцев IP-активов и руководителей. Войдите, чтобы открыть обзоры Альянса.
Вступить в Альянс лидеров
