Региональный интернет-регистратор RIPE NCC, занимающийся распределением IP-адресов на территории Европы, Средней и Центральной Азии, обеспечил (https://labs.ripe.net/Members/claudio_jeker/openbgpd-adding-... поддержку разработки OpenBGPD (http://www.openbgpd.org/), развиваемого проектом OpenBSD пакета для маршрутизации с использованием протокола BGP. RIPE и несколько европейских точек обмена трафиком организовали финансирование работы над OpenBGPD - последние 6 месяцев ключевой разработчик OpenBGPD имеет возможность развивать проект в режиме полного рабочего дня. Целью проекта является доведение функциональности OpenBGPD до состояния, пригодного для использования на серверах для маршрутизации в точках межоператорского обмена трафиком (IXP (https://ru.wikipedia.org/wiki/%D0%A2%D0%....Из наблюдаемых ранее проблем, мешавших использованию OpenBGPD в крупных инфраструктурах отмечается (https://www.openbsd.org/papers/OpenBGPD_gotta_go_fast-DENOG1... низкая производительность в условиях поддержания полного набора фильтров на базе глобальной таблицы BGP-маршрутов, и блокировка обновлений в процессе перезагрузки конфигурации (перезаливка конфигурации с 370 тысячами фильтров занимает около часа). Полгода назад началась интенсивная работа по устранению данных проблем и улучшению поддержки актуальных спецификаций. Например, в процессе разработки OpenBGPD 6.4 в код внесено 154 улучшения, что составляет около 8% всех коммитов за всю историю проекта.
В частности, в OpenBGPD 6.4 обеспечено соответствие требованиям
RFC8212 (по умолчанию теперь применяются правила блокировки), добавлена поддержка RPKI (Resource Public Key Infrastructure) для верификации (https://www.opennet.ru/opennews/art.shtml?num=47303) автономных систем (пока только для статических таблиц (roa-set), без поддержки RTR), реализованы средства для манипуляции наборами префиксов (prefix-sets), автономных систем (as-sets) и исходных систем (origin-sets, префикс + исходная автономная система), задействован новый быстрый алгоритм поиска в больших коллекциях фильтров, обеспечена возможность фонового обновления конфигурации, убрана блокировка, мешающая применению обновлений в процессе перезагрузки конфигурации.
Поддержка новых возможностей OpenBGPD 6.4 добавлена в утилиты bgpq3 (https://github.com/snar/bgpq3) и arouteserver (https://github.com/pierky/arouteserver), часто применяемыми сетевыми операторами для генерации конфигурации BGP. Например, реализация наборов префиксов и автономных систем позволила существенно сократить размер генерируемых таблиц с фильтрами. Если в версии 6.3 таблица с фильтрами включала 370 тысяч записей, то для
версии 6.4 её удалось ужать до 6000 правил. Время загрузки полного набора правил после перезапуска сократилась с часа до 2 минут. Перезагрузка конфигурации теперь занимает менее 10 секунд.
В мае планируется выпустить релиз OpenBGPD 6.5, в котором ожидается продолжение оптимизации операций с фильтрами, улучшение фильтрации по "community" (сопоставление групп и быстрые операции установки и удаления), рефакторинг кода обработки таблиц маршрутизации (RIB (https://en.wikipedia.org/wiki/Routing_table), Routing Information Base) и ускорение работы с несколькими таблицами маршрутизации. Отдельно можно отметить намерение подготовить весной переносимую версию OpenBGPD (пока без поддержки FIB), которую по аналогии с OpenSSH и LibreSS, можно будет использоваться в разных операционных системах.
Из дальнейших планов упоминается добавление поддержки многопоточности в RDE для распаралелливания операций с фильтрами, добавление поддержки FIB (https://en.wikipedia.org/wiki/Forwarding_information_base) в переносимую версию, реализацию расширенных функций (ADD_PATH, BGP multipath, RFC 7313, BMP, RTR).
URL: http://undeadly.org/cgi?action=article;sid=20181128191120
Новость: https://www.opennet.ru/opennews/art.shtml?num=49682