Petrozavodsk State UniversityNET TECHNOLOGIES BGP – Border Gateway Protocol Протокол BGP единственный протокол внешних шлюзов (Exterior Gateway Protocol EGP), получивший широкое распространение. Впервые он был описан в 1989 г. в спецификации RFC Версия 4 этого протокола отражена в спецификации RFC 1654, опубликованной в 1994 г., и значительно усовершенствована в RFC Кроме того, в последующие годы был принят ряд документированных расширений этой версии протокола. Наиболее существенным достижением протокола BGP4 является использование им механизма внутридоменной бесклассовой маршрутизации (Classless Inter-Domain Routing CIDR), который позволяет агрегировать сообщения об обновлении маршрутов, поступающих от множества соседних маршрутизаторов, в один элемент маршрутной таблицы. Протокол BGP4 был реализован в то время, когда гигантские маршрутные таблицы стали значительно замедлять работу маршрутизаторов. Техника бесклассовой маршрутизации CIDR позволяет устранить многие узкие места и повысить стабильность работы сети Интернет. Обеспечивая более эффективное распределение адресов, она заметно снижает риск истощения сетевого адресного пространства.
Petrozavodsk State UniversityNET TECHNOLOGIES BGP – Border Gateway Protocol В отличие от протоколов OSPF (Open Shortest Path First) и EIGRP (Enhanced Interior Gateway Routing Protocol), обнаруживающих соседей автоматически, протокол BGP способен поддерживать обмен маршрутными таблицами только после того, как оба маршрутизатора сконфигурируют IP- и AS-адреса (Autonomous System Numbers ASN) друг друга на своих интерфейсах. По завершении процедуры конфигурирования маршрутизаторы становятся одноранговыми, или равноправными. BGP для своей работы использует TCP, это позволяет не «отвлекаться» на процедуры контроля приема/передачи маршрутной информации.
Petrozavodsk State UniversityNET TECHNOLOGIES BGP – Border Gateway Protocol Протокол BGP4 это протокол векторов маршрутов (Path Vector Protocol), аналогичный протоколу векторов расстояний (Distance Vector Protocol), но с одним весьма существенным отличием. Протокол векторов расстояний выбирает лучший маршрут на основании числа транзитов (hops) и скоростей каналов. В противоположность этому протокол BGP4 выбирает тот маршрут, который проходит через наименьшее число автономных систем (Autonomous Systems AS). Когда сообщение об обновлении маршрутной информации проходит через шлюз очередной автономной системы, BGP4 добавляет адрес ASN этой AS к цепочке адресов других автономных систем, через которые это сообщение прошло. По умолчанию маршрут с наименьшим числом адресов ASN хранится в маршрутной таблице в качестве оптимального пути к сети назначения. Одна автономная система может содержать множество внутренних маршрутизаторов, так что фактическое число переходов, как правило, всегда больше, чем указано в строке с адресами автономных систем.
Petrozavodsk State UniversityNET TECHNOLOGIES BGP – Border Gateway Protocol Информация получена с AT&T route server (AS7018) ( ) /24 – одна из сетей ПетрГУ route-server>sh ip bgp /24 BGP routing table entry for /24, version Paths: (19 available, best #14, table Default-IP-Routing-Table) Not advertised to any peer , (received & used) from ( ) Origin IGP, localpref 100, valid, external Community: 7018: , (received-only) from ( ) Origin IGP, localpref 100, valid, external Community: 7018:5000 [skip] , (received & used) from ( ) Origin IGP, localpref 100, valid, external, best Community: 7018:5000
Petrozavodsk State UniversityNET TECHNOLOGIES BGP – Border Gateway Protocol AS 7018 AS 1299 AS 3343 AS 3267
Petrozavodsk State UniversityNET TECHNOLOGIES BGP – Border Gateway Protocol route-server>trace Type escape sequence to abort. Tracing the route to white_dwarf.cbbtier3.att.net ( ) [AS 7018] 0 msec 0 msec 0 msec 2 ar13.s n54ny.ip.att.net ( ) [AS 7018] 200 msec 16 msec 200 msec 3 tbr1-p n54ny.ip.att.net ( ) [AS 7018] 204 msec 200 msec 200 msec [AS 7018] 200 msec 200 msec 200 msec 5 att-gw.ny.telia.net ( ) [AS 7018] 200 msec 200 msec 200 msec 6 nyk-bb1-link.telia.net ( ) [AS 1299] 200 msec 200 msec 200 msec 7 kbn-bb1-pos1-3-0.telia.net ( ) [AS 1299] 200 msec 200 msec kbn-bb1-link.telia.net ( ) [AS 1299] 200 msec 8 s-bb1-link.telia.net ( ) [AS 1299] 208 msec 200 msec s-bb1-pos7-0-0.telia.net ( ) [AS 1299] 204 msec 9 s-b4-pos12-0.telia.net ( ) [AS 1299] 200 msec 100 msec 100 msec 10 gnii s-b4.c.telia.net ( ) [AS 1299] 88 msec 92 msec 92 msec 11 spb-gw.RUN.Net ( ) [AS 3343] 104 msec 104 msec 112 msec 12 b57-2-gw.spb.runnet.ru ( ) [AS 3343] 104 msec 112 msec 104 msec 13 s14-1-gw.spb.runnet.ru ( ) [AS 3267] 116 msec 116 msec 120 msec 14 tcms3.spb.runnet.ru ( ) [AS 3267] 116 msec 108 msec 116 msec 15 pgu.karelia.runnet.ru ( ) [AS 3267] 172 msec * * route-server>
Petrozavodsk State UniversityNET TECHNOLOGIES BGP – Border Gateway Protocol По умолчанию протокол BGP4 определяет в качестве оптимального путь, проходящий через наименьшее число автономных систем. Однако при оценке маршрутов этот протокол не принимает во внимание ни скорости каналов, ни сетевую нагрузку на них, так что самый короткий путь может вполне оказаться далеко не самым оптимальным. Проблема решается с помощью атрибута Local-Pref протокола BGP4, позволяющего для следующего перехода выбрать вполне конкретный путь из всего множества существующих маршрутов. Системный администратор назначает всем маршрутам (или даже отдельной их группе), объявленным для одного из интерфейсов вашего маршрутизатора, более высокий весовой коэффициент Local- Pref, чем тем же маршрутам, объявленным для другого интерфейса. А поскольку значения этих весовых коэффициентов всегда учитываются раньше, чем вычисленные длины маршрутов, выраженные в числе транзитов, то окончательно выбранный маршрут пройдет через интерфейс с наиболее высоким весовым коэффициентом Local-Pref.
Petrozavodsk State UniversityNET TECHNOLOGIES BGP – Border Gateway Protocol Автоматическое резервирование Prov A Prov Y Prov X BGP session
Petrozavodsk State UniversityNET TECHNOLOGIES BGP – Border Gateway Protocol Автоматическое резервирование Prov A Prov Y Prov X BGP session