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

Настройка маршрутизатора VDSL на OpenBSD и NIC с поддержкой TCO

это мой первый вопрос, и я надеюсь, что все сделаю правильно. Спасибо за настройку serverfault - такого сайта в интернете давно не было.

В ближайшие несколько недель я получу подключение к VDSL 25 (в лучшем случае это загрузка 25 Мбит и загрузка 5 Мбит). Итак, теперь я думал о настройке моего собственного маршрутизатора для VDSL, потому что я не хочу использовать маршрутизатор Speedport, который я получаю с VDSL 25.

Мне очень нравится OpenBSD, и я нашел хорошее руководство по Использование OpenBSD с VDSL. В статье на немецком о настройке PfSense на базе FreeBSD для VDSL Я читал, что у компьютера должна быть не менее 1 ГГц с ОЗУ 1024 МБ.

Моя машина будет Pentium 3 800 МГц и 512 МБ ОЗУ, но я планирую купить гигабитную сетевую карту Intel за 30 долларов с совокупной стоимостью владения (TCP Checksum Offloading). Коллега посоветовал мне это сделать, потому что, по его мнению, это сильно снизило бы нагрузку на ЦП, и тогда моего 800 МГц P3 могло бы быть более чем достаточно.

Итак, есть ли у вас некоторый опыт в отношении «требований к оборудованию» для VDSL и может ли с этим помочь сетевая карта с TCO?

Заранее благодарим за все ваши ответы!

Рекомендуемые спецификации для pfSense - это слишком много. Ваша машина должна легко справляться с такой нагрузкой. Для справки, я некоторое время использовал Soekris Net5501 в производстве, и он упал на скорости около 45 Мбит / с. Он был оснащен Geode 500 МГц, 256 МБ ОЗУ и некоторыми из худших сетевых адаптеров, когда-либо созданных (Via Rhinestone - драйвер vr).

По моему опыту, наиболее частым серьезным препятствием для производительности на маршрутизаторах, подобных этому, является переключение контекста, требуемое для быстрых прерываний. Дерьмовые сетевые карты, такие как Rhinestones, создают прерывание для каждого полученного пакета. Это становится серьезной проблемой, потому что каждый пакет должен быть обработан, но упс! В середине обработки приходит другой. Вы вытаскиваете его, получаете прерывание и т. Д. Переключение контекста - дорогостоящая операция, которая быстро перегружает медленный процессор.

Хорошие сетевые адаптеры (Intel и Broadcom являются надежными) имеют возможности смягчения прерываний, что означает, что они вызывают ошибку в процессоре только тогда, когда у них накоплено определенное количество пакетов или когда таймер достигает нуля. Работа такими фрагментами намного, намного эффективнее чем постоянное переключение контекста.

Некоторые операционные системы пытаются имитировать подавление прерываний с помощью опроса - ядро ​​игнорирует прерывания сетевой карты и просто время от времени проверяет свои буферы. Это может привести к гораздо более высокой пропускной способности и более низкой загрузке ЦП, но за счет задержки, возможной потери пакетов при заполнении буферов сетевой карты и т.д. OpenBSD не реализовал опрос. По моему опыту, подавление прерываний превосходит опрос, а цена приличных сетевых адаптеров достаточно низка, поэтому нет особого оправдания.

Память действительно не должна быть проблемой. OpenBSD и PF очень эффективны. В довольно медленный день (сегодня) у одного из моих производственных маршрутизаторов в памяти около 17,5 тыс. Состояний. Он также запускает spamd, регистрирует все заблокированные пакеты и выполняет tcpdump на своем наиболее активном интерфейсе. Используя 191 МБ ОЗУ.

Все это говорит о том, что ваших характеристик более чем достаточно, независимо от совокупной стоимости владения или нет.

OpenBSD не поддерживает TCO, поэтому вы не получите никакой выгоды от такой карты.