Bat Posted February 21, 2012 Posted February 21, 2012 Решил увеличить пропускную способность браса на Линукс. Сделал агреацию интерфейсов на доступе. 2 гбитных интерфейса объеденил в один линк. С другой тсроны стоит 3120, такжеогранизовал link. Все работает, но создается ощущение, что канал не прокачивается. pps суммарно порядка 100к на даунлинках. По замерам спидтестов показывает ниже, чем положено, хотя канал не забит. Кто-нибудь пробовал делать агрегаию на подобных или бОльшх pps? Вставить ник Quote
Wingman Posted February 21, 2012 Posted February 21, 2012 у меня точно без проблем прокачивалось больше (точных цифр уже не помню), с одной стороны gentoo + igb*4, с другой 3627G Вставить ник Quote
Bat Posted February 21, 2012 Author Posted February 21, 2012 ok. В порядке уточнения, мы сейчас об этом методе говорим: ifenslave bond0 eth0 ? Вставить ник Quote
Ilya Evseev Posted February 21, 2012 Posted February 21, 2012 Кто-нибудь пробовал делать агрегаию на подобных или бОльшх pps? Пробовали. Работает. Показывайте команды настройки с обеих сторон. Особенно интересуют тип агрегации и способ балансировки. Вставить ник Quote
martini Posted February 21, 2012 Posted February 21, 2012 работает, утилизирует суммарную полосу процентов на 90-95 без проблем Вставить ник Quote
Bat Posted February 22, 2012 Author Posted February 22, 2012 (edited) В modprobe/dist.conf alias bond0 bonding options bond0 miimon=100 mode=4 lacp_rate=1 ifconfig bond0 192.168.0.1 netmask 255.255.0.0 ifenslave bond0 eth0 ifenslave bond0 eth1 На bond0 повешен pppoe сервер.Кол-во терминаций около 1500 шт. Со стороны 3120 config link_aggregation algorithm mac_source create link_aggregation group_id 1 type lacp config link_aggregation group_id 1 master_port 2:3 ports 2:3-2:4 state enable config lacp_port 1:1-1:24 mode passive config lacp_port 2:1-2:2,2:5-2:24 mode passive config lacp_port 2:3-2:4 mode active Edited February 22, 2012 by Bat Вставить ник Quote
Ilya Evseev Posted February 22, 2012 Posted February 22, 2012 config link_aggregation algorithm mac_source Сейчас загрузка по физическим интерфейсам в транке распределяется равномерно? На bond0 повешен pppoe сервер.Кол-во терминаций около 1500 шт. Ядра процессора загружены равномерно? На 100% ни одно не забито? Вставить ник Quote
Bat Posted February 22, 2012 Author Posted February 22, 2012 Да, трафик распределяется хоть и не идеально симмитрично, но достаточно равномерно. Загрузка процев тоже в прицнипе равномерна. На данный момент 34% и 27% на процах с прерываниям на данных сетевых картах. Вставить ник Quote
Ilya Evseev Posted February 22, 2012 Posted February 22, 2012 Да, трафик распределяется хоть и не идеально симмитрично, но достаточно равномерно. Загрузка процев тоже в прицнипе равномерна. На данный момент 34% и 27% на процах с прерываниям на данных сетевых картах. Если физически разъединить один линк, суммарные pps останутся такими же? Если упадут, то надо проверять настройку сетевых карт. Вставить ник Quote
Bat Posted February 22, 2012 Author Posted February 22, 2012 (edited) Разъдинял - остаются такой же. Ну возможно все нормально. Я же написал, что субъективно показалось, вот и хотел выяснить работает ли у кого-нибдуь такая схема. Спасибо всем. И вот еще вопрос, правда не по названию топика. Работает ли у кого-нибудь распределение прерываний сетевых карт по всем ядрам? Т.е. при smp_affinity=ff У меня наблюдается падение трафика при задании этого значения. Edited February 22, 2012 by Bat Вставить ник Quote
Ilya Evseev Posted February 24, 2012 Posted February 24, 2012 Работает ли у кого-нибудь распределение прерываний сетевых карт по всем ядрам? Т.е. при smp_affinity=ff Лучше одно прерывание закреплять за одним ядром. smp_affinity=1,2,4,8,0x10,... ff - это значение по умолчанию. У меня наблюдается падение трафика при задании этого значения. Процессор Core2 Quad? Вставить ник Quote
Bat Posted February 24, 2012 Author Posted February 24, 2012 Лучше одно прерывание закреплять за одним ядром. smp_affinity=1,2,4,8,0x10,... ff - это значение по умолчанию. Да, все правильно, ff по умолчанию как бы задано в default_smp_affinity, но оно почему-то это умолчание никогда не работает. Приходится искусственно задавать через echo "ff". И вот тогда все хорошо и нагрузка красиво распределяется на все ядра. Но результат мне не нравится. Трафик почему-то заметно падает. Придется видимо дейтсивтлно оставить закрепление прерываний по конкретным ядрам. Правда в этом случае 1 Гбит не выжать никак на карте - упрется в потолок производительности ядра. Уже при 500 Мбит подходит к 80%. Процессор Core2 Quad? Не, проц Xeon. Вставить ник Quote
kayot Posted February 25, 2012 Posted February 25, 2012 Лучше одно прерывание закреплять за одним ядром. smp_affinity=1,2,4,8,0x10,... ff - это значение по умолчанию. Да, все правильно, ff по умолчанию как бы задано в default_smp_affinity, но оно почему-то это умолчание никогда не работает. Приходится искусственно задавать через echo "ff". И вот тогда все хорошо и нагрузка красиво распределяется на все ядра. Но результат мне не нравится. Трафик почему-то заметно падает. Придется видимо дейтсивтлно оставить закрепление прерываний по конкретным ядрам. Правда в этом случае 1 Гбит не выжать никак на карте - упрется в потолок производительности ядра. Уже при 500 Мбит подходит к 80%. Процессор Core2 Quad? Не, проц Xeon. С маской ff все верно, при высокой загрузке максимальную производительность имеет вариант с привязкой сетевки к конкретному ядру. Прерывания не генерируются одновременно, а просто скачут по всем ядрам вымывая кеши и увеличивая загрузку еще больше. Про проц xeon - а у меня машина серебристая :) Вставить ник Quote
SmokerMan Posted February 25, 2012 Posted February 25, 2012 Про проц xeon - а у меня машина серебристая :) Процов два вот таких - vendor_id : GenuineIntel cpu family : 6 model : 23 model name : Intel® Xeon® CPU E5410 @ 2.33GHz stepping : 10 cpu MHz : 2327.807 cache size : 6144 KB Вставить ник Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.