Назад | Перейти на главную страницу

Freebsd или Linux? как маршрутизатор BGP со скоростью более 100 Мбит / с

Я создаю сервер, который будет действовать как пограничный маршрутизатор BGP для моего восходящего канала 100 Мбит / с в ISP.

Мне нужна эта функция:

1) Двухстековый пиринг / маршрутизация BGP (минимум 100 Мбит / с, а может и больше). 2) Потенциальный полный интернет-канал BGP. 3) Некоторые базовые функции ACL.

Оборудование - оперативная память L3426 / 8G. Сетевая карта будет на борту двухпортовой Broadcom 5716.

Раньше я много работал с Linux, и, похоже, он может обрабатывать 100 Мбит / с, но я слышал, что FreeBSD быстрее работает с сетями. Какой мне использовать? И есть ли у нас какие-нибудь результаты тестов производительности?

Ура.

Мы делаем именно это для критически важной инфраструктуры в течение многих лет. Мы принимаем три полных восходящих канала BGP через Quagga bgpd и он использует колоссальные 658 МБ ОЗУ для работы всей системы. По нашему опыту, для этой цели Debian намного надежнее, чем другие ОС (и ему также требуется меньше обновлений безопасности с минимальным объемом установки, вызывающим гораздо меньше перезагрузок, чем две другие ОС, которые мы пробовали). Мы используем Ksplice поэтому мы загружаемся только для критических обновлений пакетов. Не беспокойтесь о совместимости с другими поставщиками у вашего интернет-провайдера ... СОЗРЕТЬ RIR использует Quagga!

Удивительно, что оборудование не так важно, все дело в сетевых адаптерах. Быстрые процессоры в основном означают, что префиксы загружаются быстрее, если вы обновляете сеансы (при условии, что у вас есть ГБ ОЗУ, и они загружаются в память), поэтому четырехъядерные процессоры начального уровня сильно переоценены. Мы долго пробовали разные сетевые адаптеры, и, по нашему опыту, лучшими являются карты Intel, которые используют igb драйвер (примерно за 100 фунтов стерлингов за сетевую карту мы используем: 82576, двухпортовый серверный адаптер ET) с e1000 идет вторым. Есть несколько соображений, например, как ваши входящие и исходящие сетевые карты взаимодействуют с материнской платой, но для скорости ниже 250 Мбит / с вы, вероятно, не заметите, если будете использовать эти сетевые адаптеры. Мы отразили изощренную атаку UDP DDoS, используя эту архитектуру (в ней использовались мельчайшие UDP-пакеты, с которыми маршрутизаторы с трудом справляются). Помните, что вас больше всего беспокоит возможность обрабатывать наибольшее количество пакетов, а не обязательно пропускная способность, измеряемая в Мбит / с. За очень небольшие деньги мы выбрали гигабитный многосетевой маршрутизатор, который может обрабатывать пакеты стандартного размера в Интернете, то есть нормальную работу, до 850 Мбит / с!

Я начал с Cisco (bgpdконфигурация почти идентична, поэтому, если у вас есть опыт работы с комплектом Cisco, это действительно быстрый переход), но из-за того, что Linux настолько податлив (например, возможность добавить несколько сценариев с низким уровнем ресурсов в ваши маршрутизаторы, чтобы помочь с отчетами и admin) IMHO делает его невероятно мощным (и недооцененным) для такого типа настроек. Вы не ошибетесь, прочитав некоторые Архивы списков рассылки Nanog если вы все еще сомневаетесь или вам нужна дополнительная помощь.

Это должно помочь вам довольно быстро начать работу с Debian: Учебник Easy Quagga

Это обе способные платформы. Запустите что-нибудь надежное, например Debian или Centos, на хорошем серверном оборудовании. Убедитесь, что вы указали серверы с серверными сетевыми адаптерами Intel, они намного лучше, чем Broadcomm по стабильности.

Что касается BSD и Linux, все просто ... Выберите то, в чем вы наиболее компетентны.

Я видел старые Celeron, обрабатывающие 80-90 Мбайт / с нормального трафика на установке Debian / Quagga с 3 полными потоками, даже не беспокоясь. Однако квалификатором является «нормальный» трафик, в основном HTTP / SMTP и DNS. Те же машины падали ничком во время DDOS-ситуаций, когда количество пакетов в секунду приходилось на смехотворное количество, в основном UDP-пакетов.

Обычно вам нужно беспокоиться не о пропускной способности, а о PPS, с которыми вы будете работать.

К сожалению, я не могу помочь вам с Linux VS BSD для части производительности маршрутизации, но это не должно иметь никакого значения на текущем стандартном оборудовании для нескольких соединений по 100 МБ.

Quagga (Zebra) работает как в Linux, так и в BSD. Сетевая производительность Linux не хуже, чем у BSD. Итак, вам остается рассмотреть дополнительные критерии выбора платформы.

Точка данных:

Я использую пару серверов Dell R200 на Fedora, один из которых имеет пик 500 Мбит / с с NAT, iptables, LVS, quagga, bgpd по каналу 1GigE. Со скоростью 100 Мбит / с подойдет любое современное оборудование. Для обработки полных таблиц вы должны иметь возможность ознакомиться с соответствующими требованиями к ОЗУ от Cisco или Juniper и перейти оттуда. 1 ГБ ОЗУ должно хватить даже без фильтрации. Мои маршрутизаторы работают с настроенными 2 ГБ, но я использую только маршруты по умолчанию.