Возвращаясь к "тормознутости" pfsense
-
Если из принципа хочется разобраться, то ставьте чистую FreeBsd 8.1 - и смотрите.
Если и на ней не пойдет, pfs тут ни причем.
В этом случае берем 9.1 - и смотрим на ней.
Если на 9-ке все ок, ничто не мешает откомпилировать из сырцов модуля 9-ки модуль для 8.1 и скормить его pfs.
После этого можно написать bug report фришникам.
Готовы это проделать? Или остановитесь на полпути? Модули я помогу вам скопилировать если что, но искать за вас древние интелловые
сотки и проверять их на на чистой free не буду.
Помнится, 8.1 довольно бажная была. -
Но я решительно не понимаю, почему серверная ось, заточенная под высокую производительность и обеспеченная соответствующим железом не может использовать сетевые интерфейсы на все 100% или, хотя бы на 80%, а не на 35-40%! Можно ведь и на камазе перевозить за рейс только по одному кирпичу, однако стараются его загрузить по полной. И был бы нонсенс, если бы этот камаз не смог сдвинуться с места с загруженными в его кузов 10 кирпичами, что и наблюдается с сенсом - не едет!
Вот из-за этих мелочей в виде карт и тп продашкн и начал уходить с фрии на линукс лет 5 назад. Безусловвно, во фрии сетевой стек опережает по возможностям линуксовый. С другой стороны, есть у меня старенькие 5-летние Ксеоны одноюнитовые (на них pfs не встает без бубна и подгонки). Сделал из них две ноды Proxmox, в нодах живут и пфсенсы в том числе в карпе. И стоят эти ксеоны на подмену Цискам по BGP и OSPF плюс мультикаст проксируют. А так бы отдал бы их под файлопомойку.
-
2
netormoz
i82557 и i82558 в freebsd обслуживаются драйвером fxp и работают прекрасно, что блестяще доказывает тест m0n0wall'а.У моновола какое ядро?
-
Начинает вырисовываться интересная картина. По завершении всех проверок сообщу.
-
Ждем с нетерпением
-
Можно ли в fxp драйвере сенса отключить аппаратный буфер карточки так, чтобы использовался только программный?
-
ifconfig fxp0 -link0
-
Этот вариант не работает. Есть какой нибудь другой?
-
Покажите ifconfig -a
sysctl -a | grep -i fxp -
Несколько позже, сейчас пытаю с другими карточками.
-
как успехи?
-
И тишина
-
Нет, не тишина. Много времени занимают многочисленные смены режимов и последующие (по несколько гигов) прокачки трафа. Так что, пока в процессе…. .
-
Все-таки карты заработали на полную сотку или нет?
-
так как все закончилось с картами?
-
Ну, вот, все проверки завершены и как обещал, привожу результаты.
Предыстория: т.к. я большой любитель устанавливать фиксированные настройки (во избежание неоднозначности) везде, где это возможно и нужно, первым делом после отработки мастера начальной конфигурации я установил сетевые интерфейсы из default в 100M/fd, и…. получил на 100Мбит/с канале скорость загрузки ~40Мбит/с, а отправки ~10-15Мбит/с, а в статистике шлюза целое стадо крупных рогатых животных, обитающих в лесах средней полосы! Видимо, эти лоси и были причиной такого катастрофического заужения пропускной способности сетевых карточек.
На низкоскоростных соединениях эта проблема скорее всего не проявится. т.к. имеет значение относительно скорости самой сетевой карточки.Для более детального выяснения причин такого поведения сетевых карточек, был проведён ряд проверок, со сменой сетевых карт, режимов работы маршрутизатора/МоБо/процессора, сменой ОСей самого маршрутизатора, сменой материнской платы/процессора (для исключения зависимости от железа).
В процессе экспериментов использовались сетевые карты: Compaq на i82558, IBM на i82559 и Linksys на ADMtek AN985, интегрированная на i82562EZ, noname на RTL8139D. Все карты 10/100Мбит/с. Карты на i82558 и i82559 - хардварные, т.е. имеющие аппаратный буфер FIFO (RX/TX) пакетов и ещё разные "фишки", остальные - софтовые. Использовавшиеся ОСи: pfSense 2.0.3 NanoBSD, pfSense 2.1 RC1 NanoBSD, m0n0Wall 1.34, seroshell 2.0 RC3. Измерение скорости и потерь проводилось при помощи синтетики (сервис speedtest.net), реальной прокачки трафика торрент-клиентом с увеличенным числом пиров и соединений и многопоточного скачивания образов дисков Win 8.1 с серверов Мелкософта. Контроль скорости проводился по статистике и графикам торрент-клиента, локального компьютера и самого маршрутизатора.Результат:
1. при автоконфигурировании (default и autoselect) карточки определяются правильно, выставляется 100Mb/FD. При этом потерь в статистике шлюза нет, скорость интерфейсов полная.
2.1 при принудительном выставлении в вэб-конфигураторе 100Mb/FD на LAN и WAN (в свойствах интерфейсов значится 100Mb/FD), мы имеем потери сквозной пропускной способности маршруризатора как 35-40% от полосы канала и около 30% лосей на шлюзе.
2.2 при принудительном выставлении в вэб-конфигураторе 100Mb/FD только на одном интерфейсе (LAN или WAN), мы имеем примерно двое меньшие потери скорости - 45-50% от полосы канала, при этом и лосей на шлюзе 15-20%.
3.1 при принудительном выставлении в вэб-конфигураторе 100Mb/HD только на одном интерфейсе, мы имеем потерю в скорости ~30-35% от полосы канала и только по RX для данного интерфейса, по TX влияния на скорость соединения нет. Потери на шлюзе в лосях 7-10%.
3.2 при выставлении 100Mb/HD на LAN и WAN, имеем потери 30-35% от канала в обоих направлениях и потери на шлюзе около 15%.Выводы:
Драйверы сетевых карт, скорее всего, не причём, т.к. в процессе экспериментов использовались различные драйверы: fxp, rl и dc, показавшие абсолютно идентичное поведение вверенных им микросхем. Так же не причём и сами сетевые карты.
Но, можно предположить, что причина кроется в самом вэб-конфигураторе, который при сохранении конфигурации во флэш карточки, пишет и ещё что-то, что вызывает такой эффект, либо имеются некоторые проблемы с самим ядром.Выход один - оставлять скоростные настройки интерфейсов в default или выставлять принудительно в autoselect, что равнозначно, и избегать принудительного выставления в Full/HalfDuplex.
Ну, вроде бы ничего не забыл.
P.S. А сенс, всё таки, более латентен, чем тот же моноволл :(.
-
2 QWERTik
Карты на i82558 и i82559 - хардварные, т.е. имеющие аппаратный буфер FIFO (RX/TX) пакетов
Все карты (ВНЕЗАПНО!) имеют аппаратный буфер, только разного размера. "аппаратность" карты определятся другими критериями.
интегрированная на i82801BA
Вот это вообще <censored>! Это Southbridge ICH2! После таких "заявлений" хочется спросить: а что вы вообще наизмеряли, если не в состоянии отличить южник от сетёвки?</censored>
-
2 QWERTik
Карты на i82558 и i82559 - хардварные, т.е. имеющие аппаратный буфер FIFO (RX/TX) пакетов
Все карты (ВНЕЗАПНО!) имеют аппаратный буфер, только разного размера. "аппаратность" карты определятся другими критериями.
интегрированная на i82801BA
Вот это вообще <censored>! Это Southbridge ICH2! После таких "заявлений" хочется спросить: а что вы вообще наизмеряли, если не в состоянии отличить южник от сетёвки?</censored>
Именно разного размера ), и по поводу "фишек" вы конечно не заметили 8). Надеюсь, вы не будете утверждать, что карточки на i82558 и i82559 софтовые, как и на RTL8139?
По поводу южника, да, вы правы, я немного поторопился (несколько запарился >:(), микруха i82562EZ. Спасибо за напоминание, в отчёте поправлю.
А как по поводу сути проблемы, есть чего сказать? Или только цепляться к словам?
-
Понятно. в 11 году летом на 2.0 bete на интегрированной сотке была подобная проблема. Резалась скорость на default и принудительных 100 Мб, а в autoselect все работало. И вроде тогда они на dlink подключались. А через cisco все три режима работали нормально. Все равно это проблема дров на выставлении negotiatian, а не вебморды. Гигабитные карты сейчас нормально работают.
-
Я знаю, что проблема старая, от того и название топика соответствующее. Как я писал ранее, я проверял это на сетёвках трёх разных семейств микросхем, т.е. совершенно разные драйверы, но поведение абсолютно одинаково - значит проблема не в конкретном драйвере (или они все кривые?), а в чём то ещё.
По поводу гигабиток: с ними все нормально на сотке или гигабит прокачивается на полной скорости без проблем?
Почитав англоязычную ветку, увидел там несколько топиков, из которых следует, что и с гигабитками есть проблема обрезки скорости на гигабите!
Вот и удивляет тот факт, что ещё с альфы 2.0 имеется нерешённая проблема, от того и топик назвал "возвращаясь…".