Pull to refresh

Comments 12

А с другой стороны, BGP Optimizer очень похож на костыли, которые решают проблемы возникшие в результате желания сэкономить.
Эти костыли, как мне кажется — следсвия полного отсутствия в BGP механизмов работы с sub/super-netting, вопреки его разрекламированной направленности на «policy-preferred routing».
Можно много чего разрулить при помощи localpref, и MED, еще больше — при помощи community (которые, в принципе, точно так же манипулируют localpref и MED), но вот против ломаспецификов нет приема.
Хочешь положить болт на все предпочтения окружающих — плодишь специфик в нужную тебе сторону, и все — никакие обычные средства других АС его не обойдут, только еще более твердый лом в виде явных префикс-листов.

В итоге и появляются такие автоматические костылезаторы.
Я не совсем про это. А про ситуации когда, к примеру, покупается два аплинка, как бы для резервирования, но полоса обоих в сумме равна полному трафику в эту AS. Манипулирование спецификами позволяет разбалансировать. Ну а упадёт один канал, что ж, абоненты потерпят. В РФ это сплошь и рядом. Рвут самую дешёвую ВОЛС, где все гонят основной трафик, начинается деградация, пинги в сотни миллисекунд, дропы.
Кроилово приводит к попадалову, как любили упоминать на одном захиревшем сетевом форуме.
Если покупать каналы и использовать их на 50% — или прибыли не будет или клиентов, которые не потерпят высоких цен.
А если аплинков больше двух и запас полосы N+1? Балансировать всяко придется, пока каждый из аплинков не будет вмещать полный трафик до AS, а это нерентабельно.
BGP Optimizer — это инструмент. Как и любым инструментом, если им правильно пользоваться — можно получить много плюшек. А если нет — то получаем вышеописанные события.
Виноватых тут все трое:
— безусловно главный виновник торжества Verizon, который добродушно принял все прилетевшее от кастомера с одним-единствнный законным префиксом, да еще и со скоростью реакции мертвой черепахи; Какая халатность…
— тот самый сталепрокатный завод, который принял префиксы от одного аплинка и спокойно передал другому (зачем вообще отправлять аплинку что-либо кроме себя? Рухтер — купил, АС — купил, настроить — не купил?);
— ну и в последнюю очередь второй аплинк DQE со своими странными оптимизаторами. Оно, конечно, очень некрасиво плодить фейковые специфики, а даже если решились на такую подлость, то хотя бы с no-export отдавали бы кастомерам, но, все же, это на совести такого провайдера.
То чувство, когда недавно читал на хабре статью, где описываются похожие случаи из прошлого и что тряхнуть опять может в любой момент.
с тем же успехом навигатор мог бы отправить поток машин с многополосного шоссе на узкую улочку

Спасибо за пояснения на примере из жизни :))
Самое интересное в ситуации — это как работает NOC у этих провайдеров. У Cloudflare все четко работает, мониторинг, инженеры. У какого то мелкого провайдера тоже инженеры NOC работают, а вот у Verizon все фигово, ни по телефону ни по email не отвечают, случись что серьезней и с их стороны — фиг до них дозвонишься, весь инет положат и будут сидеть и молчать. Вот с этим нужно тоже что то решать.

Интересно, у наших крупных провайдеров NOC работает исправно?
Попробую высказаться по поводу «решать».
Я не первый такого мнения, и в статье (и даже в комментах) этот вопрос отчасти уже фигурировал в форме аналогии с навигатором и узкой улочкой. Аналогия, в принципе, относительно верная. Ящетаю, что для конфигурации BGP нужно выдавать права подобные автомобильным и сделать специальную официальную комиссию. Чтобы не было монополистов данные права должен выдавать IEEE, а не Cisco, ну это формальности.
Естественно, до полноценных автомобильных правил не докатиться, иначе придётся повсюду вешать аппараты-алкочекеры, но это было бы неплохо. :) Ну можно хотя бы перед способностью конфигурации BGP делать интеллектуальную капчу — по N вопросов, проверяющих адекватность инженера в данный момент и дающих доступ до конфигурации
Коллеги подсказывают, что появилось более детальное описание инцидента в блоге CF.

Today we will dive into the archived routing data and analyze it. The format of the code below is meant to use simple shell commands so that any reader can follow along and, more importantly, do their own investigations on the routing tables.
Sign up to leave a comment.