Jump to content
Калькуляторы

eBGP multipath у кого используется?

добрый день.

Прорабатываю схемы распределения нагрузки на несколько групп серверов.

Одна из схем заключается в приеме балансировщиком полной l7 сессии клиента через одного из аплинков.

Аплинков несколько, на каждом свой балансировщик, каждый работает по l7.

Дальше балансировщик отправляет запросы на какую либо группу серверов, но это к делу уже не относиться.

 

В этом случае если клиент находиться в сети, которая использует multipath для исходящего трафика, его запросы разбиваются на ip пакеты, которые могут прийти разным балансировщикам через разные внешние каналы. Хорошего, естественно ничего, так как этот запрос уже никак не склеить.

 

Чтобы определиться с жизнеспособностью данной схемы, пожалуйста поделитесь секретами, кто использует multipath и какой он у вас.

Спасибо.

 

Share this post


Link to post
Share on other sites

BGP multipath не разбрасывает пакеты между разными каналами. По крайней мере у меня все трейсы стабильны, несмотря на три аплинка с BGP multipath на каждого...

Share this post


Link to post
Share on other sites

multipath вставляет n-е кол-во маршрутов в RIB.

следовательно пакеты могут лететь по через разные AS.

помимо активации такой возможности, необходимо совпадение целого ряда параметров от аплинков.

может быть у вас просто не все условия соблюдены для попадения нескольких роутов в RIB.

 

речь идет именно о том когда он активирован и работает.

 

 

 

BGP multipath не разбрасывает пакеты между разными каналами. По крайней мере у меня все трейсы стабильны, несмотря на три аплинка с BGP multipath на каждого...

 

Share this post


Link to post
Share on other sites

А, ну так это в зависимости от настройки load-sharing, multipath тут ни при чём. per-packet обычно ставят на совсем узких каналах...

А вот с чего оно через разные AS полетит - не представляю, т.к. multipath работает только между маршрутами из одной AS.

Share this post


Link to post
Share on other sites
multipath вставляет n-е кол-во маршрутов в RIB.

следовательно пакеты могут лететь по через разные AS.

помимо активации такой возможности, необходимо совпадение целого ряда параметров от аплинков.

может быть у вас просто не все условия соблюдены для попадения нескольких роутов в RIB.

 

речь идет именно о том когда он активирован и работает.

BGP Multipath работает на каждом стыке AS-AS отдельно. В случае разных AS будет работать BGP best path selection

 

In order to be candidates for multipath, paths to the same destination need to have these characteristics equal to the best-path characteristics:

 

*

 

Weight

*

 

Local preference

*

 

AS-PATH length

*

 

Origin

*

 

MED

*

 

One of these:

o

 

Neighboring AS or sub-AS (before the addition of the eiBGP Multipath feature)

o

 

AS-PATH (after the addition of the eiBGP Multipath feature)

 

Some BGP Multipath features put additional requirements on multipath candidates.

 

These are the additional requirements for eBGP multipath:

 

*

 

The path should be learned from an external or confederation-external neighbor (eBGP).

*

 

The IGP metric to the BGP next hop should be equal to the best-path IGP metric.

Share this post


Link to post
Share on other sites

Конечно, может быть вариант, когда клиент включен в разные роутеры аплинка, и эти роутеры отдают разные AS-path одинаковой длины. Сомневаюсь только, что такие AS-path вставятся как multipath.

Share this post


Link to post
Share on other sites
multipath вставляет n-е кол-во маршрутов в RIB.

следовательно пакеты могут лететь по через разные AS.

помимо активации такой возможности, необходимо совпадение целого ряда параметров от аплинков.

может быть у вас просто не все условия соблюдены для попадения нескольких роутов в RIB.

 

речь идет именно о том когда он активирован и работает.

BGP Multipath работает на каждом стыке AS-AS отдельно. В случае разных AS будет работать BGP best path selection

 

In order to be candidates for multipath, paths to the same destination need to have these characteristics equal to the best-path characteristics:

 

*

 

Weight

*

 

Local preference

*

 

AS-PATH length

*

 

Origin

*

 

MED

*

 

One of these:

o

 

Neighboring AS or sub-AS (before the addition of the eiBGP Multipath feature)

o

 

AS-PATH (after the addition of the eiBGP Multipath feature)

 

Some BGP Multipath features put additional requirements on multipath candidates.

 

These are the additional requirements for eBGP multipath:

 

*

 

The path should be learned from an external or confederation-external neighbor (eBGP).

*

 

The IGP metric to the BGP next hop should be equal to the best-path IGP metric.

 

т.е. при такой схеме

 

 

                    |----------------eBGP--------------  R2 (AS65002) --------------- 
        R1 (AS65001)                                                                               |
                    |                                                                                      R4 (AS65004)
                    |-----------------eBGP-------------  R3 (AS65003)---------------|

 

на R1 (при прочих равных аттрибутах при включенном eBGP multipath) будет только один маршрут в RIB до AS65004?

 

 

 

 

 

 

 

 

Share this post


Link to post
Share on other sites
т.е. при такой схеме ...

на R1 (при прочих равных аттрибутах при включенном eBGP multipath) будет только один маршрут в RIB до AS65004?

Конечно один.

Share this post


Link to post
Share on other sites
т.е. при такой схеме ...

на R1 (при прочих равных аттрибутах при включенном eBGP multipath) будет только один маршрут в RIB до AS65004?

Конечно один.

Тот который пришел первым.

Share this post


Link to post
Share on other sites

Тем не менее из ретна в мою сторону одно время (тогда ретн у меня был аплинком второго порядка аж 3 раза, т.е. у 3-х моих аплинков ретн был одним из аплинков) был мультипатч (даже при неравных длинах AS PATH на меня на стороне retn). т.е. пакеты оттуда шли через все 3 аплинка+- поровну.

Слово мультипатч виделось в их LG. Появилось это как просьба чтото сделать с фильтрацией по обратному пути моих исходящих пакетов (если у них путь на меня выставлялся в 1 аплинка, а мои пакеты к ним приходили от другого моего аплинка, то они дропались, в результате появился мультипатч и фильтация перестала меня донимать.)

 

Наверное наличие такой возможности и доступность по умолчанию зависит от железки...

Share this post


Link to post
Share on other sites
т.е. при такой схеме ...

на R1 (при прочих равных аттрибутах при включенном eBGP multipath) будет только один маршрут в RIB до AS65004?

Конечно один.

Тот который пришел первым.

 

понял, спасибо.

тогда вопрос расширяется в плоскость per packet/destination load sharing иными способами.

насколько активно это применяется.

 

 

Тем не менее из ретна в мою сторону одно время (тогда ретн у меня был аплинком второго порядка аж 3 раза, т.е. у 3-х моих аплинков ретн был одним из аплинков) был мультипатч (даже при неравных длинах AS PATH на меня на стороне retn). т.е. пакеты оттуда шли через все 3 аплинка+- поровну.

Слово мультипатч виделось в их LG. Появилось это как просьба чтото сделать с фильтрацией по обратному пути моих исходящих пакетов (если у них путь на меня выставлялся в 1 аплинка, а мои пакеты к ним приходили от другого моего аплинка, то они дропались, в результате появился мультипатч и фильтация перестала меня донимать.)

 

Наверное наличие такой возможности и доступность по умолчанию зависит от железки...

с циской вроде понятно.

ответы нецискарей тоже очень востребованы.

 

Share this post


Link to post
Share on other sites
понял, спасибо.

тогда вопрос расширяется в плоскость per packet/destination load sharing иными способами.

насколько активно это применяется.

На самом деле Вы смешиваете две проблемы:

1. Как поведет себя BGP в нарисованной Вами схеме. В большинстве правильных маршрутизаторов можно добиться того, чтобы R1 поставит в таблицу коммутации два next-hop и будет балансировать исходящий трафик по двум uplink.

2. Как полетят пакеты. В правильных маршрутизаторах балансировка осуществляется pel-flow. Что такое flow-вопрос тонкий (у кого-то flow идентифицируется только source/destination IP, у кого-то к ним добавляются протокол/порты). Но одна TCP сессия всегда попадает в один flow. Все коробки, балансирующие per-packet, обеспечат как минимум проблемы с VoIP. Поэтому мне кажется, что таких уже и не осталось :). В худшем случае хозяева знают об особенностях их 'балансировки' и не злоупотребляют ею :)

Вывод: Если у Вас между клиентом и сервером одна сессия - можно спать спокойно, иначе могут быть проблемы.

Edited by nnm

Share this post


Link to post
Share on other sites

Конечно, может быть вариант, когда клиент включен в разные роутеры аплинка, и эти роутеры отдают разные AS-path одинаковой длины. Сомневаюсь только, что такие AS-path вставятся как multipath.

Сам себе и отвечу - такие маршруты не являются multipath. Только что проверил. :)

Share this post


Link to post
Share on other sites
понял, спасибо.

тогда вопрос расширяется в плоскость per packet/destination load sharing иными способами.

насколько активно это применяется.

На самом деле Вы смешиваете две проблемы:

1. Как поведет себя BGP в нарисованной Вами схеме. В большинстве правильных маршрутизаторов можно добиться того, чтобы R1 поставит в таблицу коммутации два next-hop и будет балансировать исходящий трафик по двум uplink.

2. Как полетят пакеты. В правильных маршрутизаторах балансировка осуществляется pel-flow. Что такое flow-вопрос тонкий (у кого-то flow идентифицируется только source/destination IP, у кого-то к ним добавляются протокол/порты). Но одна TCP сессия всегда попадает в один flow. Все коробки, балансирующие per-packet, обеспечат как минимум проблемы с VoIP. Поэтому мне кажется, что таких уже и не осталось :). В худшем случае хозяева знают об особенностях их 'балансировки' и не злоупотребляют ею :)

Вывод: Если у Вас между клиентом и сервером одна сессия - можно спать спокойно, иначе могут быть проблемы.

спасибо, попробую конкретизировать.

в конечном счете меня интересует как часто меняется next-hop as у операторов разных мастей и калибров, так как это может повлиять на то по какому каналу я приму трафик и на какой балансировщик он упадет.

 

а "сабцелью" является изучение схем операторских сетей при которых возможна смена next-hop as для анализа распространенности этих схем.

 

мои знания родили схему с bgp multipath, благодаря Smoke я понял, что bgp multipath работает только в случае совпадения всего as-path, следовательно на меня пакеты сваляться по одному каналу. а какие маршрутизаторы можно назвать "правильными", собранная схема на динамипсе (cisco) подтвердила, что в RIB включится только один маршрут.

правда сразу родилась схема с двумя vrf-ами и двумя статиками из глобала в каждый vrf. вы это имели ввиду? не очень красиво, но балансироваться точно будет )

 

 

наверно есть схемы подключения, которые мне не известны.

вот я и готов слушать и внимать )

 

Share this post


Link to post
Share on other sites
наверно есть схемы подключения, которые мне не известны.

Еще в JUNOS есть опция, отключающая сравнение peer-ASN при выборе multipath маршрутов для импорта в RIB.

Но если Вас интересует статистическая сторона вопроса, то мне почему-то кажется, что это редко кто применяет. :)

Share this post


Link to post
Share on other sites
Конечно, может быть вариант, когда клиент включен в разные роутеры аплинка, и эти роутеры отдают разные AS-path одинаковой длины. Сомневаюсь только, что такие AS-path вставятся как multipath.
Сам себе и отвечу - такие маршруты не являются multipath. Только что проверил. :)

Дискуссия прошла мимо :)

Share this post


Link to post
Share on other sites

Для цисков есть еще одна командочка секртная:

bgp bestpath as-path multipath-relax, может ее попробуете?

Edited by zzeka

Share this post


Link to post
Share on other sites
Для цисков есть еще одна командочка секртная:

bgp bestpath as-path multipath-relax, может ее попробуете?

угу

вот еще радикальнее нашел

http://www.cisco.com/en/US/docs/ios/12_3t/....html#wp1072077

сегодня обязательно попробую.

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this