Fri, Oct 01, 2010 at 09:41:30, unisol wrote about "Re: [uanog] BIRD":
Когда Quagga принимает большое кол-во bgp updates и пересчитывает таблицы, то она "иногда" не успевает обрабатывать keepavile и дропает bgp session; в результате, опять пересчет таблиц, опять проигнорированный keepalive и получился "эффект домино". Разработчики пытаются сейчас сделать отдельный thread, который будет обрабатывать Подумалось: "ВО ТОРМОЗА. А низзя разбить операцию нехерового пересчёта на последовательность меньших операций фиксированной длины (может даже настраиваемой), с обработкой всякой мутотени в промежутках, а то и halt/sleep/etc (с целью уменьшить тепловыделение - иногда может не лишним оказаться... Ваще оно как начнёт впендюривать маршруты - то тоже нефигово нагружает проц...)?"
Видимо, что-то мешает. Вообще это стандартное изменение, но его надо качественно реализовать. Например, что делать, если придёт ещё группа апдейтов? Как остановить пересчёт, если что-то принципиально изменилось (порвался peer)? Всё это стандартные проблемы программирования, но для конкретной команды они могут оказаться новыми и неожиданными. У Cisco, кстати, это явно решено давным-давно (пересчёт сильно пригружает, но не парализует). -netch-