Hi! On Fri, Aug 20, 2010 at 13:44 +0400, Alexandre Snarskii wrote:
On Fri, Aug 20, 2010 at 10:06:39AM +0200, Vitaliy Karlov wrote:
2010/8/20 Vladimir Litovka
: Поэтому если человек решает академическую задачу, то можно фильтровать. А если он строить реальную сеть, то я бы на его месте а) так не делал и б) пересмотрел бы топологию.
Полностью согласен с Литовкой. Линки R5-R2 или R4-R1 избавляют от задачи как от класса,
Как? Они существенно уменьшают вероятность, но не избавляют "от класса"
к тому же domestic links обычно существенно дешевле трансатлантики.
А нужен-ли общий OSPF? сделать "bgp confederation" в каждой из которых независимый igp (OSPF/eigrp) и общение между конфедерациями с "next-hop-self" и соответвующей фильтрацией BGP префиксов при необходимости.
К сожалению, топологию строю не я. И, отчасти, топология выстраивается по финансовым соображения, нежели речь идёт о правильности.
Я соглашусь, что я не совсем точно описал задачу. Если картинку приложить к реальной сети, то можно сказать, что в каждой точке может быть подключен customer и/или IX. R3 и R6 находятся на другом континенте. Поэтому трафик таким образом гонять просто нецелесообразно. Во-первых, RTT будет равно двум трансатлатинчским линкам, и, во-вторвых, всё-равно там нет капасити.
И вторая идея - предположим, что route-reflector'ами в вашей картинке являются R2 и R5. На линке R3-R6 ставится тупой пакетный фильтр, запрещающий BGP-сессии между R{4,5,7,8} <-> R2, и R{1,2} <-> R5. В результате, при падении линка R2-R4 соответствующие bgp-сессии порвутся, и R8 просто не будет знать по iBGP о маршрутах, доступных через R1. Время определения аварии плохое, согласен, первые ~90 sec траффик будет ходить через атлантику, но - дешево и эффективно.