
Принципы маршрутизации в Internet. Самое полное описание протокола BGP 4 - Сэм Хелеби
.pdf
Еще один недостаток: для задания и соблюдения правил маршрутизации BGP внутри сегментов требуется дополнительное вмешательство со стороны пользователя. Как уже говорилось, единственным средством влияния на работу системы маршрутизации BGP является манипулирование атрибутами. Очевидно, что соблюдать правила маршрутизации в нескольких сегментированных подсистемах AS намного труднее, чем в отдельном протоколе IGP. Понимание всех этих аспектов необходимо разработчикам при создании сетей. Более подробное освещение этой проблемы не входит в круг вопросов, рассматриваемых в этой книге. Для получения полной информации по этой теме обратитесь к книге "Решения для крупномасштабных IP-сетей " ("Large-Scale IP Network Solutions'/•
В этом разделе мы рассмотрим два метода сегментирования AS:
•разделение нескольких регионов с помощью IBGP;
•разделение нескольких регионов с помощью EBGP.
Сегментирование AS с несколькими регионами, разделяемыми по IBGP
Автономная система может быть разделена на регионы, в каждом из которых используются различные протоколы IGP. Регионы логически взаимосвязаны по полносвязной схеме посредством IBGP. Для обеспечения избыточности регионы могут быть объединены физически с использованием схемы подключения "каждый с каждым", как это показано на рис. 9.12.
Рис. 9.12. Объединение регионов с помощью IBGP
Каждый регион будет преобразовывать свои IGP-маршругы в IBGP-маршругы и анонсировать внутри региона маршрут по умолчанию. В результате в каждом регионе будет сформирован маршрут по умолчанию, указывающий на граничный BGP-маршрутизатор, для всех пунктов назначения, не принадлежащих к данному региону. Региональные граничные маршрутизаторы будут передавать все маршруты от всех регионов (по IBGP) и соответствующим образом направлять трафик. Каждый регион надежно защищен от нестабильностей, порождаемых другими регионами, так как внутренние маршрутизаторы без поддержки BGP открыты только для маршрутов, которые принадлежат соответствующему региону. При необходимости организовать доступ с помощью динамического протокола маршрутизации между региональными граничными маршрутизаторами, участвующими в полносвязной схеме IBGP, вы можете использовать IGP отдельно.
Однако при таком варианте построения сети отсутствует одна важная деталь —
соединение с Internet. Подключение подобной схемы к Internet требует дополнительного планирования. Как показано на рис. 9.12, каждый регион уже имеет маршрут по умолчанию
Глава 9. Управление крупномасштабными автономными системами |
241 |

в другие регионы внутри AS. Проблема возникает, если BGP-маршрутизатор (в одном из регионов) не поддерживает синхронизацию с реальными маршрутами, полученными через точку соединения с Internet. В этой ситуации внутренние маршрутизаторы без поддержки BGP должны выбрать между маршрутом по умолчанию в Internet и маршрутом по умолчанию в другие регионы, как это показано на рис. 9.13.
Чтобы избежать этого, всем регионам необходимо всегда по умолчанию указывать на региональный граничный BGP-маршрутизатор или пытаться достичь заданных пунктов назначения в Internet или других регионах AS. Согласно этому требованию, соединения с Internet должны быть частью полносвязной IBGP-сети, как это показано на рис. 9.14.
Рис. 9.13. Конфликты маршрутов по умолчанию
Рис. 9.14. Несколько регионов с подключением к сети Internet
Регионы 1, 2 и 3 объединены по полносвязной схеме с помощью протокола IBGP, который обслуживает и соединение с Internet. Внутренние маршрутизаторы без поддержки BGP в каждом регионе направляют трафик по умолчанию на граничный BGPмаршрутизатор, в котором содержатся все маршруты. Если пункт назначения принадлежит к другому региону, то трафик просто направляется в этот регион. В противном случае трафик будет пересылаться в Internet согласно правилам маршрутизации BGP.
Однако при использовании этого метода отсутствует гибкость в определении правил маршрутизации для каждого из регионов. Так как все регионы находятся в одной автономной системе, префиксы, принадлежащие различным регионам, отличить с помощью BGP не так-то легко. В более сложных структурах сети для того, чтобы отличить префиксы различных регионов, можно воспользоваться атрибутом сообщества COMMUNITY. Эта схема может применяться вместе с иерархической конфигурацией отражения маршрутов, что позволяет создавать крупные виртуальные частные сети. Об этом более подробно читайте в конце главы.
Глава 9. Управление крупномасштабными автономными системами |
242 |

Сегментирование AS с несколькими регионами, разделяемыми по EBGP
Если для обработки трафика между регионами требуется определить гибкие правила маршрутизации, то каждый регион, например, может быть представлен как отдельная автономная система. Как известно для обеспечения взаимодействия между AS требуется протокол EBGP, а внутри AS — протокол IBGP. В каждой AS вы можете использовать определенный протокол IGP, если есть необходимость в дополнительном динамическом протоколе маршрутизации, который бы обеспечивал взаимодействие между различными EBGP-узлами. Этот метод сегментирования AS представлен на рис. 9.15.
Рис. 9.15. Несколько регионов, разделенных с помощью EBGP
На первый взгляд кажется, что это наиболее оптимальное решение для управления ростом IGP-инфраструктуры. Теперь AS разделена на несколько более мелких AS, где каждая AS представляет собой отдельный регион со своим номером AS и имеет выделенное соединение с Internet. Каждая AS "вкладывает" в протокол BGP собственный набор IGPмаршрутов, которые передаются всем остальным регионам и в сеть Internet. Внутренние маршрутизаторы в каждом регионе по умолчанию направляют трафик на граничные BGPмаршрутизаторы, где содержатся все маршруты. Правилами маршрутизации BGP могут быть установлены локальные предпочтения для префиксов, поэтому региональные граничные маршрутизаторы для связи между регионами будут предпочитать соединениям с Internet использование внутренних маршрутов. Для подключения к сети Internet в регионах отдается предпочтение собственному провайдеру. Однако если канал с провайдером выходит из строя, то регион может воспользоваться доступом в Internet через провайдеров других регионов.
Подобная схема выглядит прекрасно на бумаге, но все изменится, когда вы попытаетесь воплотить ее в жизнь. Очень трудно обосновать в Американском реестре адресов Internet (American Registry for Internet Numbers — AR1N) или других региональных реестрах сети Internet (Regional Internet Registries — RIR) необходимость получения номеров AS для развертывания подобной сети. Так как количество номеров AS ограничено, они быстро расходуются. Скорее всего потребуется реальное обоснование, прежде чем в реестрах ARIN и RIR сетевому администратору выделят несколько номеров AS. К сожалению, аргумента о необходимости использования нескольких AS для улучшения стабильности работы IGP обычно недостаточно для такого обоснования. Вам следует проконсультироваться с сотрудниками локального регионального реестра сети Internet относительно того, что будет считаться "достаточным основанием".
Другие альтернативы включают использование частных номеров AS или BGPконфедераций для управления ростом IGP-инфраструктуры. Мы обсудим эти способы в
Глава 9. Управление крупномасштабными автономными системами |
243 |

следующих разделах.
Использование частных номеров AS
Использование частных номеров AS представляет собой ешс один способ деления крупных AS с несколькими регионами, связанных по EBGP. В регионах поддерживается протокол IBGP, а для связи между ними используется протокол EBGP. К тому же каждый региональный домен будет преобразовывать свои префиксы к виду префиксов BGP для облегчения межрегионального взаимодействия. Внутренние маршрута заторы в каждом регионе без поддержки BGP будут по умолчанию отправлять весь трафик на региональные граничные маршрутизаторы, где содержатся все маршруты. И наконец, вы можете организовать работу по одному из протоколов IGP, если есть необходимость в динамическом протоколе, который обеспечивал бы взаимодействие по EBGP между регионами.
Этот сценарий хорошо работает без подключения к сети Internet. Однако когда появляется соединение с Internet все частные номера AS должны быть скрыты от внешнего мира. Для сокрытия частных номеров AS требуется усложнение сетевой архитектуры. На рис. 9.16 показан один из вариантов решения этой проблемы, который может использоваться при подключении AS к сети Internet и использовании частных номеров AS.
На рис. 9.16 представлено, каким образом AS раздроблена на несколько частных подсистем AS. Теперь регион 1 ~ это AS65001, регион 2 — AS65002, а регион 3 — AS65003. В каждой частной AS могут поддерживаться взаимоисключающие протоколы IGP.
Для обеспечения соединений с Internet в качестве точки объединения всех частных AS используется AS 100. Очень важно отметить, что это — центральная магистральная AS с легальным номером AS, уникальным для сети Internet. Все частные AS будут посредством EBGP взаимодействовать с магистральной AS100 для обеспечения межрегиональных и Internet-соединений.
С целью недопущения передачи информации о частных номерах AS внешним Internet-провайдерам сетевой администратор может воспользоваться процедурой очистки AS_PATH. о которой мы говорили в главе 6. В AS 100 изымаются частные номера AS, поступающие от каждого региона, перед передачей BGP-обновлений внешним провайдерам Internet.
На рис. 9.16 AS65001 генерирует префикс 192.213.16.0/24. Для всех остальных частных AS этот префикс будет поступать с AS_PATH 100 65001. При передаче его внешним AS200 и AS300 частный номер AS изымается и AS_PATH будет иметь вид 100. Таким образом, все ваши сети будут в Internet объявлены как сгенерированные в AS100.
Рис. 9.16. Частные AS при подключении к различным провайдерам
Глава 9. Управление крупномасштабными автономными системами |
244 |

Использование конфедераций для управления ростом IGPинфраструктуры
Для обуздания роста IGP-инфраструктуры можно использовать конфедерации. Вы уже видели, каким образом конфедерации могут разделять AS на более мелкие подсистемы. Если в каждой подсистеме AS обеспечить поддержку различных протоколов IGP, то централизованная схема, представленная на рис. 9.16, приобретет определенную жизнеспособность. Итак, теперь 1GP используются независимо друг от друга, однако из внешнего мира AS воспринимается как единое целое. Для обеспечения межрегионального взаимодействия каждый IGP может подставляться в BGP. По-прежнему внутренние маршрутизаторы в каждом регионе, не поддерживающие BGP, будут по умолчанию ссылаться на региональный граничный BGP-маршрутизатор, где имеются все маршруты. Д1Я обеспечения доступа в Internet всем регионам по умолчанию будет использоваться центральная AS. Таким образом, вырисовывается схема подобная, приведенной на рис. 9.16.
Однако имеется и обратная сторона медали: конфедерации требуют "тонкой" настройки и не обеспечивают одинаковых возможностей по установке правил между подсистемами AS, так как вся AS рассматривается как единое целое. К тому же любая схема с использованием нецентрализованных конфедераций может привести к таким осложнениям, как неоптимальная маршрутизация, и, следовательно, — к затруднениям при выборе маршрута для передачи трафика внутри конфедерации.
Забегая вперед
До сих пор мы рассматривали протокол BGP, который в умелых руках может быть мощнейшим инструментом, делающим маршрутизацию более структурированным процессом. Теперь вы знаете, как управлять трафиком и как сегментировать AS на более мелкие управляемые элементы. Однако остается еще один аспект, который требует тщательного изучения, — это нестабильность маршрутов в сети Internet. Большое количество факторов обуславливает появление флуктуации (колебаний) маршрутов, которые, в свою очередь, порождают флуктуации трафика. Некоторые причины вы можете устранить самостоятельно, другие - нет. В настоящее время невозможно представить себе мир без Internet, и в ваших интересах уважать и защищать целостность этой сети. В следующей главе мы обсудим некоторые причины, порождающие нестабильность маршрутов и меры, которые могут быть приняты, чтобы устранить или по крайней мере снизить эффект от их воздействия.
Часто задаваемые вопросы
В— У меня есть два узла: один — в Сан-Франциско, другой — в Сан-Хосе. Не лучше ли мне разделить их на две AS и организовать между ними взаимодействие по BGP вместо IGP, по которому они работают сейчас?
О— Ваша схема не нуждается в сегментировании по BGP. Помните, что, хотя сегментирование и дает возможность гибкого управления, и повышает структурирование, оно требует соблюдения правил BGP. В небольших сетях, каковой является ваша сеть, вы можете добиться тех же результатов путем выполнения иерархической маршрутизации с помощью IGP.
В— В моей сети недостаточно BGP-узлов для организации отражателя маршрутов. Что будет, если я буду использовать хотя бы один из них в качестве отражателя?
О — Вы получите нормальную маршрутизацию с своей сети. Вам лишь нужно
Глава 9. Управление крупномасштабными автономными системами |
245 |

понять, что в подобной модели необходимо полагаться на централизацию маршрутизаторов, которые будут пересылать BGP-маршруты в другую часть вашей сети. Однако отражатель маршрутов не только создает дополнительную нагрузку на процессор маршрутизатора, но является и точкой возможного отказа. Следовательно, необходимо предусмотреть дополнительные меры предосторожности, установив для обеспечения избыточности хотя бы два отражателя маршрутов. Кроме того, вам придется столкнуться с такими вещами, как группы взаимодействующих узлов и изменение атрибутов, о чем мы говорили в этой главе. Если в вашем случае нет повышенных требований к нагрузке на процессор маршрутизатора, то смело можете конфигурировать отражатель маршрутов.
В— При работе с конфедерациями внешний EBGP-маршрут более предпочтителен, чем внешний маршрут между конфедерациями. Означает ли это, что я никогда не смогу использовать другую подсистему AS в качестве точки выхода?
О — Нет. Вы всегда можете использовать атрибуты, как, например, атрибут локального предпочтения, для указания желаемой точки выхода.
В— Так как локальные предпочтения не передаются между AS, они не будут передаваться и между подсистемами AS, не так ли?
О — Это не совсем так. При внесении определенных изменений подсистемы распознают, что они взаимодействуют с внешними узлами внутри конфедерации, и обрабатывают все атриб^ы, которые обычно обрабатываются только с помощью протокола IBGP.
В— Мне нужно сконфигурировать отражатели маршрутов, но программное обеспечение используемых маршрутизаторов не поддерживает этих функций. Нужно ли мне модернизировать все маршрутизаторы?
О — Нет. Вам потребуется модернизировать лишь маршрутизаторы, которые планируется использовать в качестве отражателей маршрутов. Остальные маршрутизаторы будут выполнять роль обычных IBGP-спикеров. Это поможет вам постепенно реорганизовать всю вашу сеть.
Ссылки
1RFC 1966, "BGP Route Reflection: An Alternative to Full Mesh IBGP," www.isi.edu/in-notes/rfc 1966.txt
2RFC 1965, "Autonomous System Confederations for BGP,"www.isi.edu/innotes/rfcl965.txt
- RFC 1930, "Guidelines for Creation, Selection, and Registration of an Autonomous System (AS)," www.isi.edu/in-notes/rfcl930.txt
4Raza, Khalid and Mark Turner. Large-Scale IP Network Solutions (Indianapolis, Ind.:
Cisco Press, 2000)
Глава 9. Управление крупномасштабными автономными системами |
246 |

Глава 9. Управление крупномасштабными автономными системами |
247 |

Ключевые темы этой главы:
Источники нестабильности маршрутов в Internet. Дается крпткий обзор причин, вызывающих нестабильность маршрутов в сети Internet.
Управление маршрутами и аннулирование содержимого кэша.
Компанией Cisco предлагается программное решение, позволяющее
администраторам переконфигурировать атрибуты "на ходу", с минимальными последствиями для маршрутов и содержимого кэша.
Обновление BGP-маршрутов. Обновление маршрутов протокола граничного шлюза обеспечивает механизм применения новых правил маршрутизации путем запроса обновленного набора маршрутов от другого узла, что не требует сброса соединения по BGP или прекращения анонсирования маршрутов.
Разгрузка маршрутов. Процедура разгрузки маршрутов предполагает выявление и блокирование нестабильных маршрутов с целью обеспечения более высокой надежности как внутри, так и вне автономной системы.
Глава 10. Проектирование стабильных сетей на базе TCP/IP |
248 |

Глава 10. Проектирование стабильных
сетей на базе TCP/IP
Организация и поддержка стабильности маршрутов внутри и между сетями TCP/IP является решающим фактором для создания надежной связности в сети Internet и в других сетях на базе TCP/IP. Многочисленные ошибки при организации сетей и другие проблемы могут способствовать дестабилизации работы в Internet. В этой главе мы рассмотрим основные источники нестабильности маршрутов в сетях на базе TCP/IP и методы ее снижения.
Источники нестабильности маршрутов в Internet
Основным симптомом нестабильности маршрутов является исчезновение маршрута из маршрутной таблицы. Такой маршрут может периодически появляться и исчезать; это состояние называют колебанием или мерцанием (flapping) маршрута. На уровне протокола маршрутизации в этом случае происходит следующее: в BGP посылается сообщение об обновлении маршрута, а затем этот маршрут сразу же удаляется. Маршрутизатор, который постоянно получает сообщения UPDATE и WITHDRAWN, должен пересылать эти сообщения своим соседям. Эти сообщения приходят во все сети, поддерживающие в глобальной сети Internet протокол BGP. Очевидно, что постоянное поступление этих сообщений в сеть значительно снижает ее производительность.
Ниже приведены факторы, которые вызывают нестабильность маршрутов в сети
Internet.
Нестабильность протокола внутреннего шлюза (Interior Gateway Protocol — IGP).
Дефектны оборудования.
Ошибки в программном обеспечении.
Недостаточная мощность процессора.
Недостаточный объем памяти.
Модернизация и техническое обслуживание сети.
Человеческие ошибки.
Перегруженность соединений.
Нестабильность IGP
Динамическое преобразование IGP-маршрутов в BGP-маршруты может привести к нежелательным колебаниям маршрутов. В этом случае проблемы внутри домена маршрутизации могут распространиться и за его пределы. Как уже отмечалось в главе 6,
Глава 10. Проектирование стабильных сетей на базе TCP/IP |
249 |

"Настройка параметров BGP", статическое преобразование маршрутов в BGP может облегчить решение этой проблемы.
Объединение маршрутов на граничных или центральных маршрутизаторах также может снизить потенциальную опасность, связанную с преобразованием маршрутов из IGP в BGP. При объединении маршруты переходят в BGP как один объединенный маршрут. Нестабильность какого-либо из маршрутов, входящих в состав объединенного маршрута, не влияет на стабильность всего объединенного маршрута.
Однако и по сей день некоторые разработчики сетей вынуждены прибегать к динамической маршрутизации по ряду причин.
В реализациях протокола BGP разрешается статически объявлять только ограниченное число сетей. Лимит статически объявляемых маршрутов зависит от производителя оборудования и может колебаться. Однако независимо от размеров лимита, если требуется дополнительно задать несколько маршрутов к сетям сверх этого лимита, администраторам придется обратиться к преобразованию маршрутов из IGP в BGP.
Некоторые администраторы побаиваются, что сети, маршруты к которым они статически объявляют, могут стать недоступными для маршрутизатора. Эти опасения вполне понятны, особенно для случаев, когда маршруты объявляются из различных точек AS. Объявление недоступного маршрута может привести к образованию "черной дыры".
Дефекты оборудования
Дефектные интерфейсы, бракованные узлы или некачественные линии связи также могут влиять на стабильность маршрутов. Интерфейс, который постоянно то отключается, то включается в работу может привести к изменению маршрутной информации. Некоторые дефекты оборудования можно исправить, но в основном они не могут быть устранены силами обслуживающего персонала. Избыточность систем и соединений -- одно из важнейших средств обеспечения нормальной работы сети при отказах оборудования или при выходе из строя канала связи, но при физической неисправности узла прерывается процесс маршрутизации, а это влечет за собой лавинообразные отказы в обслуживании на всей протяженности маршрута.
Ошибки в программном обеспечении
Ошибки в программном обеспечении (на жаргоне специалистов "баги" - от англ. bugs) могут привести к отказам различных систем и повлиять на стабильность работы всей сети. Разработчики протоколов маршрутизации постарались выявить все дефекты в программном обеспечении перед тем как их продукты поступили на рынок. Однако практически невозможно предусмотреть все ситуации, которые могут возникать в реальных сетях. Администраторам следует всесторонне протестировать новое программное обеспечение или его новые функции в тестовых лабораториях или в наименее критичных к простоям сегментах сети для того, чтобы составить определенное представление о программном обеспечении, прежде чем внедрять его во всей сети.
Недостаточная мощность процессора
Чем больше обновлений маршрутов и сеансов связи обслуживает маршрутизатор, тем большая мощность процессора требуется для выполнения этих операций. Представьте себе маршрутизатор грузовиком с колесной схемой 4x4, а процесс маршрутизации и перегрузку трафика — перевозимым грузом. Удивит ли вас, если такой грузовик испытывает
Глава 10. Проектирование стабильных сетей на базе TCP/IP |
250 |