URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID6
Нить номер: 22474
[ Назад ]

Исходное сообщение
"BGP. 2 внешних канала. Балансировка исходящего канала  "

Отправлено maxjon , 11-Апр-11 10:37 
Здравствуйте!

Как можно сбалансировать исходящий трафик между двумя BGP-пирами?


Содержание

Сообщения в этом обсуждении
"BGP. 2 внешних канала. Балансировка исходящего канала  "
Отправлено den , 11-Апр-11 11:01 
> Здравствуйте!
> Как можно сбалансировать исходящий трафик между двумя BGP-пирами?

получить хотябы от одного пира full-view или partial view. И понижением/повышенеим local pref на префиксы получаемые от нейбором достигаем нужного результата. Префиксы приоритезировать по as-path regexp или по community и тд.


"BGP. 2 внешних канала. Балансировка исходящего канала  "
Отправлено maxjon , 11-Апр-11 11:04 
>> Здравствуйте!
>> Как можно сбалансировать исходящий трафик между двумя BGP-пирами?
> получить хотябы от одного пира full-view или partial view. И понижением/повышенеим local
> pref на префиксы получаемые от нейбором достигаем нужного результата. Префиксы приоритезировать
> по as-path regexp или по community и тд.

Спасибо Вам за ответ.
Но дело в том что, я не могу пока получит full-view,
пока ресурсы девайся не позволяют! Можете сказать как быть в этом случае?


"BGP. 2 внешних канала. Балансировка исходящего канала  "
Отправлено den , 11-Апр-11 11:27 
>>> Здравствуйте!
>>> Как можно сбалансировать исходящий трафик между двумя BGP-пирами?
>> получить хотябы от одного пира full-view или partial view. И понижением/повышенеим local
>> pref на префиксы получаемые от нейбором достигаем нужного результата. Префиксы приоритезировать
>> по as-path regexp или по community и тд.
> Спасибо Вам за ответ.
> Но дело в том что, я не могу пока получит full-view,
> пока ресурсы девайся не позволяют! Можете сказать как быть в этом случае?

насколько позволяют?
В таком случаее принять full-view обрезанный до /21 или даже до /19, /18
Второй вариант , на маршрутизаторе включаете netflow собираете статистику за сутки-двое, строите матрицу srcAS / dstAS, агрегируете по направлениям, получаете картину распределения трафика по AS. Строите фильрт по as-path и раскидываете трафик по аплникам. Вариант 3 - тоже самое, что вариант два, но методом научного эксперимента, вручную анализируете направления, и на крупные точки обмена трафика или паритеты изменятете вес. Смотрите, анализуруте, и так пока вас не устроит результат.


"BGP. 2 внешних канала. Балансировка исходящего канала  "
Отправлено Semop , 11-Апр-11 11:29 
http://www.opennet.me/openforum/vsluhforumID6/22226.html#2



"BGP. 2 внешних канала. Балансировка исходящего канала  "
Отправлено maxjon , 11-Апр-11 12:49 
> http://www.opennet.me/openforum/vsluhforumID6/22226.html#2

Есть еще другие варианты?


"BGP. 2 внешних канала. Балансировка исходящего канала  "
Отправлено Semop , 11-Апр-11 13:14 
>> http://www.opennet.me/openforum/vsluhforumID6/22226.html#2
> Есть еще другие варианты?

чем не нравится? Данная схема работает больше полугода. 3 аплинка, соответственно 3 нейбора. Исх. трафик на всех трех разбился ~ поровну.


"BGP. 2 внешних канала. Балансировка исходящего канала  "
Отправлено maxjon , 11-Апр-11 13:16 
>>> http://www.opennet.me/openforum/vsluhforumID6/22226.html#2
>> Есть еще другие варианты?
> чем не нравится? Данная схема работает больше полугода. 3 аплинка, соответственно 3
> нейбора. Исх. трафик на всех трех разбился ~ поровну.

Можете еще раз коротко и ясно объяснит основную часть конфига ?
заранее спасибо.


"BGP. 2 внешних канала. Балансировка исходящего канала  "
Отправлено Semop , 11-Апр-11 13:43 
> Можете еще раз коротко и ясно объяснит основную часть конфига ?
> заранее спасибо.

outer bgp XYZ
redistribute static route-map stat2bgp
neighbor x.x.x.x remote-as X
neighbor x.x.x.x route-map out-x out
neighbor y.y.y.y remote-as Y
neighbor y.y.y.y route-map out-Y out
no auto-summary

!
ip route 1.1.1.0 255.255.255.0 Null0 250
ip route 2.2.2.0 255.255.255.0 Null0 250

ip prefix-list route_x seq 10 permit 1.1.1.0/24

ip prefix-list route_y seq 10 permit 2.2.2.0/24


route-map out-x permit 10
match ip address prefix-list route_x
set local-preference 150

route-map out-x permit 20
match ip address prefix-list route_y
set local-preference 100

route-map out-y permit 10
match ip address prefix-list route_x
set local-preference 150

route-map out-y permit 20
match ip address prefix-list route_y
set local-preference 100


route-map stat2bgp permit 10
match ip address prefix-list route_x

route-map stat2bgp permit 20
match ip address prefix-list route_y

------------------------------
Принцип работы:

Имеется 2 нейбора. Для каждого настроен роут-мап, в котором прописан свой префикс-лист. В табл. BGP редистрибьютируются статические маршруты = тем же префикс листам что и для анонсов для нейборов. При падении одного из нейбора - трафик перескакивает на соседний. Мне кажется довольно гибкий конфиг. При добавлении/удалении прописываются только 2 строчки:
ip route
ip prefix-list

а самих нейборов можно не дергать и не ложить. Суть в том, если хочется отбалансировать более менее ровно, то сетки на нейборы надо бить поровну - т.е. /24 сеть на 1 и /24 на 2ого.
Хитрость конфига в том, что RIPE'овскую сеть (если куплена /21 например) можно бить хоть на /24 или хоть на /32 даже. Для этого просто в один из этих двух префикс-листов надо прописать в верху строчки эту ГЛАВНУЮ /21 сеть. А потом можно побить ее на более мелкие и раскидать по нейборам. В этом случае трафик по маршруту, где живет /21 сеть ходить не будет, а будет ходить там, где эта сеть побита. Это сделано для того, чтоб лишний раз не напрягать RIPE объявлением мелких объектов. Очень удобно, если конечно это рутится на одном роутере.
Вроде нормально объяснил)


"BGP. 2 внешних канала. Балансировка исходящего канала  "
Отправлено Semop , 11-Апр-11 13:50 
------например так--------
ip route 1.1.1.0 255.255.255.0 Null0 250
ip route 1.1.1.0 255.255.255.128 Null0 250
ip route 1.1.1.128 255.255.255.128 Null0 250

ip prefix-list route_x seq 1 permit 1.1.1.0/24
ip prefix-list route_x seq 10 permit 1.1.1.0/25

ip prefix-list route_y seq 10 permit 1.1.1.128/25

--------------------
Получится что 1.1.1.0/25 живет на 1 нейборе, а 1.1.1.128/25 живет на 2ом. Хотя даже их в RIPE нет(есть только /24), у нас есть "мертвый" 1.1.1.0/24
Вполне я думаю нормально. Можно конечно не в ручную бить, а динамически. Но для этого надо поднимать протокол динамической маршрутизации какой-нибудь


"BGP. 2 внешних канала. Балансировка исходящего канала  "
Отправлено den , 11-Апр-11 17:26 
>[оверквотинг удален]
> ip route 1.1.1.128 255.255.255.128 Null0 250
> ip prefix-list route_x seq 1 permit 1.1.1.0/24
> ip prefix-list route_x seq 10 permit 1.1.1.0/25
> ip prefix-list route_y seq 10 permit 1.1.1.128/25
> --------------------
> Получится что 1.1.1.0/25 живет на 1 нейборе, а 1.1.1.128/25 живет на 2ом.
> Хотя даже их в RIPE нет(есть только /24), у нас есть
> "мертвый" 1.1.1.0/24
> Вполне я думаю нормально. Можно конечно не в ручную бить, а динамически.
> Но для этого надо поднимать протокол динамической маршрутизации какой-нибудь

может я не втеме, но задача ставилась как:
"Как можно сбалансировать исходящий трафик между двумя BGP-пирами?"
И причем тут балансинг входящияго трафика.

Вторым условием было - лимитированые возможности маршрутизатора или L3 коммутатора (тоесть full-view принять не можем).

Из этих соображений было предложено несколько вариантов.
Так и не услишал ответ на вопрос - сколько префиксов может принять рутер ? а если точнее размер TCAM таблицы.


"BGP. 2 внешних канала. Балансировка исходящего канала  "
Отправлено Semop , 11-Апр-11 20:29 

> может я не втеме, но задача ставилась как:
> "Как можно сбалансировать исходящий трафик между двумя BGP-пирами?"
> И причем тут балансинг входящияго трафика.

прошу прощения) Да, переработал я.
Тогда один из вариантов это maximum-path / поднять протокол EIGRP.


"BGP. 2 внешних канала. Балансировка исходящего канала  "
Отправлено fantom , 12-Апр-11 09:42 
>[оверквотинг удален]
>> Вполне я думаю нормально. Можно конечно не в ручную бить, а динамически.
>> Но для этого надо поднимать протокол динамической маршрутизации какой-нибудь
> может я не втеме, но задача ставилась как:
> "Как можно сбалансировать исходящий трафик между двумя BGP-пирами?"
> И причем тут балансинг входящияго трафика.
> Вторым условием было - лимитированые возможности маршрутизатора или L3 коммутатора (тоесть
> full-view принять не можем).
> Из этих соображений было предложено несколько вариантов.
> Так и не услишал ответ на вопрос - сколько префиксов может принять
> рутер ? а если точнее размер TCAM таблицы.

Что-то не припомню, чтобы фигурировала модель РОУТЕРА.
Укажите точные модели железок!

Если с минимальными требованиями - BGP с недавних пор умеет помещать в таблицу маршрутизации более одного (в вашем случае 2) маршрута к одному назначению, соответственно - достаточно будет взять от обоих провов только дефолтовый маршрут! главный вопрос - поддерживает ли ваше железо эту фичу.



"BGP. 2 внешних канала. Балансировка исходящего канала  "
Отправлено maxjon , 12-Апр-11 10:01 
>[оверквотинг удален]
>> full-view принять не можем).
>> Из этих соображений было предложено несколько вариантов.
>> Так и не услишал ответ на вопрос - сколько префиксов может принять
>> рутер ? а если точнее размер TCAM таблицы.
> Что-то не припомню, чтобы фигурировала модель РОУТЕРА.
> Укажите точные модели железок!
> Если с минимальными требованиями - BGP с недавних пор умеет помещать в
> таблицу маршрутизации более одного (в вашем случае 2) маршрута к одному
> назначению, соответственно - достаточно будет взять от обоих провов только дефолтовый
> маршрут! главный вопрос - поддерживает ли ваше железо эту фичу.

Здравствуйте все!
Cisco 3845


"BGP. 2 внешних канала. Балансировка исходящего канала  "
Отправлено fantom , 12-Апр-11 11:54 
>[оверквотинг удален]
>>> Так и не услишал ответ на вопрос - сколько префиксов может принять
>>> рутер ? а если точнее размер TCAM таблицы.
>> Что-то не припомню, чтобы фигурировала модель РОУТЕРА.
>> Укажите точные модели железок!
>> Если с минимальными требованиями - BGP с недавних пор умеет помещать в
>> таблицу маршрутизации более одного (в вашем случае 2) маршрута к одному
>> назначению, соответственно - достаточно будет взять от обоих провов только дефолтовый
>> маршрут! главный вопрос - поддерживает ли ваше железо эту фичу.
>  Здравствуйте все!
>  Cisco 3845

http://www.cisco.com/en/US/docs/ios/iproute_bgp/configuratio...

читаете про
Multipath Load Sharing Between eBGP and iBGP
И думаете, применимо ли это в вашем случае.

минимальный ios c3845-adventerprisek9-mz.123-11.T.bin или старше.

Хотя я бы лично потратил 100-300 баксов на докупку оперативки минимум до 512M и принял бы 2 full view от двух аплинков с разбивкой префиксов localpref-ом.

Как вообще "дубовое" решение - прописать статикой 2 дефаулта на 2-х провов, причем можно даже поизголяться с резервированием - чтобы при падении одного все бежало по второму.


"BGP. 2 внешних канала. Балансировка исходящего канала  "
Отправлено Scr , 06-Фев-12 20:28 

>[оверквотинг удален]
> set local-preference 150
> route-map out-x permit 20
> match ip address prefix-list route_y
> set local-preference 100
> route-map out-y permit 10
> match ip address prefix-list route_x
> set local-preference 150
> route-map out-y permit 20
> match ip address prefix-list route_y
> set local-preference 100

Скорее всего необходимо в одном из случаев поменять local-preference.
А то получается что обоим пирам попадет route_x потому как у него приоритет выше в обоих картах.
Или я не прав ? ;)