История изменений
Исправление zaz, (текущая версия) :
В принципе на современном шасси встроенный свич довольно шустрый и производительный (10Gbps для него явно проблемой не будет).
Есть в природе (по крайней мере были рашьше у фуджитсу) блейды у которых были отдельные ethernet порты на передней панеле (правда всего 2 штуки + 4 выхода на внутренние свичи шасси), и можно было подключать витую пару прямо в блейд минуя шасси.
Для линукса (да и наверное для всех сетевых железок) решающее значение имеет не Gbps а Pps (Packet Per Second), как показывает практика критичной стороной является прием пакетов - отправка на порядок более дешовая. Если принимать UDP траффик через весь стек (device -> driver -> TCP/IP stack -> application) то у нас в виртуалке на стариньком Xeon 100K Pps/sec на ядро это норма. На реальном железе, да еще без апликейшен леера (просто маршрутизация) думаю 500К Pps получить реально на ОДНО ядро (тоесть 10 ядерный Xeon в теории должен выдать 5M Pps - но я думаю что это сильно заниженая цифра). Но есть свои нюансы, нужно понимать что где и как тюнить - нужны нормально настроенные ринг буфера, NAPI2, подкрученные сетевые бюджеты и отбалансированый IRQ (разведенные нормально потоки по очередям + адаптерам с рабочими для вашего трафика хешами), ну и от правил в iptables тоже зависить сильно нагрузка на CPU.
Да и по поводу «потестировать» - можно взять у любого хостера пару блейдов на месяц в аренду, поганять на них тестовый траффик и решить подойдет ли оно вам или нет ...
Исходная версия zaz, :
В принципе на современном шасси встроенный свич довольно шустрый и производительный (10Gbps для него явно проблемой не будет).
Есть в природе (по крайней мере были рашьше у фуджитсу) блейды у которых были отдельные ethernet порты на передней панеле (правда всего 2 штуки + 4 выхода на внутренние свичи шасси), и можно было подключать витую пару прямо в блейд минуя шасси.
Для линукса (да и наверное для всех сетевых железок) решающее значение имеет не Gbps а Pps (Packet Per Second), как показывает практика критичной стороной является прием пакетов - отправка на порядок более дешовая. Если принимать UDP траффик через весь стек (device -> driver -> TCP/IP stack -> application) то у нас в виртуалке на стариньком Xeon 100K Pps/sec на ядро это норма. На реальном железе, да еще без апликейшен леера (просто маршрутизация) думаю 500К Pps получить реально на ОДНО ядро (тоесть 10 ядерный Xeon в теории должен выдать 5M Pps - но я думаю что это сильно заниженая цифра). Но есть свои нюансы, нужно понимать что где и как тюнить - нужны нормально настроенные ринг буфера, NAPI2, подкрученные сетевые бюджеты и отбалансированый IRQ (разведенные нормально потоки по очередям + адаптерам с рабочими для вашего трафика хешами)