Network Working Group R. Chandra
Request for Comments: 1997 P. Traina
Category: Standards Track cisco Systems
T. Li
August 1996
Атрибут BGP Communities
BGP Communities Attribute
Статус документа
В этом документе содержится спецификация протокола, предложенного сообществу Internet. Документ служит приглашением к дискуссии в целях развития и совершенствования протокола. Текущее состояние стандартизации протокола вы можете узнать из документа «Internet Official Protocol Standards» (STD 1). Документ может распространяться без ограничений.
Аннотация
BGP1 [1] представляет собой протокол междоменной маршрутизации, разработанный для сетей TCP/IP.
В этом документе описано расширение BGP, которое может использоваться для передачи дополнительной информации как соседям, так и удаленным партнерам BGP.
Целью предлагаемого метода является является упрощение управления политикой и снижение сложности сетевого управления в Internet.
Введение
BGP поддерживает правила транзита с помощью контролируемого распределения маршрутной информации. Механизмы такого контроля описаны в документе [1] и успешно используются транзитными сервис-провайдерами. Однако контроль за распространением маршрутной информации основан в настоящее время лишь на адресных префиксах IP или значении атрибута AS_PATH (или его части).
Для облегчения и упрощения контроля за маршрутной информацией в данном документе предлагается группировать адресатов так, что решения о маршрутизации могли бы также приниматься с учетом таких групп. Предполагается, что такая схема существенно упростит конфигурацию узлов BGP в части контроля за распространением маршрутной информации.
Определения терминов
Community (группа)
Группа адресатов с неким общим свойством.
Каждый администратор автономной системы может определить к каким группам относится тот или иной адресат. По умолчанию все адресаты относятся к общей группе Internet2.
Примеры
Свойство типа «NSFNET sponsored/AUP» может быть добавлено всем соответствующим AUP адресатам, которые анонсируются в NSFNET. Операторы NSFNET могут определить правило, которое будет анонсировать все маршруты (помеченные и не помеченные) к непосредственно соединенным с AUP заказчикам и только помеченные маршруты к коммерческим или внешним сайтам. Это позволит гарантировать, что по крайней мере одна сторона соответствует AUP (способ исполнения транзитных требований NSF).
В этом примере мы опустили основную мотивацию, связанную со сложностью базы данных политики маршрутизации, которая используется для генерации гигантских правил на основе префиксов и AS_PATH. Мы также не принимали во внимание задержки, вызываемые поддержкой этой базы данных в режиме out-of-band (письма в NACR, еженедельная настройка конфигурации и т. п.).
Второй пример основан на практике агрегирования. Зачастую бывает полезно анонсировать объединенный префикс и более специфичные префиксы-компоненты, которые были использованы при агрегировании, для оптимизации маршрутизации через следующий интервал («next hop» routing). Эти префиксы компоненты полезны только соседним партнерам BGP и, возможно, автономным системам соседних партнеров BGP, поэтому желательно фильтровать такую информацию.
Задав группу, которой будут соответствовать партнеры-соседи, можно анонсировать такие префиксы без боязни их распространения за пределы желаемой области.
Атрибут COMMUNITIES
В этом документе определяется атрибут пути COMMUNITIES, который относится к числу необязательных переходных атрибутов переменной длины. Атрибут состоит из набора 4-октетных значений, каждое из которых задает группу (community). Все маршруты с таким атрибутом относятся к группам, указанным в атрибуте.
Атрибут COMMUNITIES имеет код типа (Type Code) 8.
Группы трактуются как 32-битовые значения, однако для удобства администрирования могут делаться следующие допущения:
Значения в диапазоне от 0x0000000 до 0x0000FFFF и от 0xFFFF0000 до 0xFFFFFFFF являются зарезервированными.
Остальные значения нужно кодировать с использованием номера автономной системы в качестве двух первых октетов. Семантика двух оставшихся октетов определяется автономной системой (например, AS 690 может определить исследовательскую, учебную и коммерческую группы, которые будут использоваться для маршрутизации на базе правил в данной AS с использованием значений атрибута от 0x02B20000 до 0x02B2FFFF).
Общепринятые группы
Перечисленные ниже группы имеют глобальное значение и их следует реализовать каждому узлу BGP, поддерживающему группы.
NO_EXPORT (0xFFFFFF01)
Никакие маршруты, содержащие атрибут группы с таким значением, недопустимо анонсировать за пределы конфедерации BGP (отдельные автономные системы, не входящие в конфедерацию, в этом случае рассматриваются как конфедерации).
NO_ADVERTISE (0xFFFFFF02)
Никакие маршруты, содержащие атрибут группы с таким значением, недопустимо анонсировать другим партнерам BGP.
NO_EXPORT_SUBCONFED (0xFFFFFF03)
Никакие маршруты, содержащие атрибут группы с таким значением, недопустимо анонсировать внешним партнерам BGP (включая партнеров из других автономных систем данной конфедерации).
Работа с атрибутами групп
Узел BGP может использовать этот атрибут для контроля за восприятием, предпочтением и распространением маршрутной информации.
Узел BGP, получивший маршрут без атрибута COMMUNITIES, может добавить такой атрибут при дальнейшем распространении маршрута своим партнерам.
Узел BGP, получивший маршрут с атрибутом COMMUNITIES, может изменить этот атрибут в соответствии с локальной политикой.
Агрегирование
Если группа маршрутов объединяется в один и результирующий маршрут не включает атрибута ATOMIC_AGGREGATE тогда в этом маршрут следует включать атрибут COMMUNITIES, содержащий все группы из объединенных в один маршрутов.
Применимость
Атрибут пути COMMUNITIES может использоваться с протоколом BGP версии 2 и всеми последующими версиями, если явно не оговорено иное.
Вопросы безопасности
Вопросы безопасности не обсуждаются в этом документе.
Благодарности
Мы благодарим Vince Fuller, Sean Doran и Andrew Partan за то, что они обратили наше внимание на проблемы, которые атрибут BGP communities помогает решить. Благодарим также Yakov Rekhter за просмотр документа и конструктивные замечания
Адреса авторов
Paul Traina
cisco Systems, Inc.
170 W. Tasman Dr.
San Jose, CA 95134
EMail: pst@cisco.com
Ravishanker Chandrasekeran
(Ravi Chandra)
cisco Systems, Inc.
170 W. Tasman Dr.
San Jose, CA 95134
EMail: rchandra@cisco.com
Tony Li
EMail: tli@skat.usc.edu
Литература
[1] RFC 1771 Rekhter, Y., and T. Li, «A Border Gateway Protocol 4 (BGP-4)»3, March 1995.
[2] RFC 1965 Traina, P., «Autonomous System Confederations for BGP»4, June 1996.
Перевод на русский язык
Николай Малых
1Border Gateway Protocol – протокол граничного шлюза.
2general Internet community