Представен е новият портативен вариант на пакета за маршрутизация OpenBGPD 9.1, разработван от екипа на OpenBSD и адаптиран за използване в FreeBSD и Linux (поддържат се Alpine, Debian, Fedora, RHEL/CentOS, Ubuntu). За гарантиране на портируемостта са използвани части от кода на проектите OpenNTPD, OpenSSH и LibreSSL. Проектът поддържа повечето спецификации на BGP 4 и отговаря на изискванията на RFC8212, но не се опитва да обхване всичко и предоставя основно поддръжка на най-популярните и разпространени функции.
Развитието на OpenBGPD се осъществява с подкрепата на регионалния интернет регистратор RIPE NCC, който е заинтересован от довеждането на функционалността на OpenBGPD до пригодност за използване на сървъри точки за обмен на трафик между оператори (IXP) и за създаване на пълноценна алтернатива на пакета BIRD (от отворените алтернативи, реализиращи протокола BGP, могат да бъдат отбелязани проектите FRRouting, GoBGP, ExaBGP и Bio-Routing).
В проекта основното внимание е насочено към осигуряване на максимално ниво на сигурност и надеждност. За защита се използват строги проверки на коректността на всички параметри, средства за контрол на спазването на границите на буферите, разделяне на привилегиите и ограничаване на достъпа до системните повици. Сред предимствата се отбелязва удобният синтаксис на езика за дефиниция на конфигурацията, висока производителност и ефективност при работа с паметта (например, OpenBGPD може да работи с таблици за маршрутизация, включващи стотици хиляди записа).
Ключови промени в новата версия:
- Повишена е производителността на филтъра за изходящи маршрути (outbound filter). Правилата за филтриране сега се съхраняват в масив, а повторяеми филтри при различни пирове се дедублират.
- В процеса на RDE (Route Decision Engine) е увеличена производителността при обработката на таблици с филтри (filter_sets) — за повишаване на ефективността на кеширането филтрите са преместени в линейен масив от обекти. На сървъри с голям брой маршрути свързаните с филтрите оптимизации успяха да намалят времето за начална синхронизация с над 25%.
- Подобрен е записи в логовете на грешките при разбиране на атрибути, водещи до събиране на сесии.
- В екипа ‘show rib memory’ са добавени допълнителни метрики за оценка на потреблението на памет.
Източник: opennet.ru
