Доброго времени суток всем! Я постараюсь сделать это коротким и милым. Моя текущая настройка:
Коммутатор XS708T NETGEAR 10gbE
Машина ESXi №1:
Машина ESXi №2:
VLAN: настроить на pfSense и переключить
Итак, вот в чем проблема: использование iperf между обеими виртуальными машинами Ubuntu на отдельных И тех же машинах ESXi может достичь полной пропускной способности 10 ГБ / с в одной и той же VLAN. Я тоже бежал в обоих направлениях. Наблюдая за systat -ifstat в pfSense, я могу убедиться, что через pfSense не проходит никакой трафик. Если я попытаюсь переключиться между двумя виртуальными машинами Ubuntu на ОДИНАКОВЫХ или РАЗНЫХ машинах ESXi, но с разными VLAN (например, 10 и 99), пропускная способность упадет примерно до 2–3 ГБ / с. Во время этого теста я вижу весь трафик, проходящий через pfSense.
Итак, мой мыслительный процесс таков; проверено, что мой коммутатор может обеспечивать пропускную способность 10 ГБ / с в той же VLAN. Я следил за pfSense в течение всего теста, чтобы убедиться, что я не нахожусь на каких-либо аппаратных (ЦП) ограничениях.
Так это проблема с моей настройкой или, возможно, с моей виртуальной машиной pfSense? Любая помощь приветствуется! Спасибо!
У виртуальной машины pfSense довольно много накладных расходов - входящие пакеты проходят через сетевой адаптер хоста, хост vSwitch, копируются в виртуальную машину, проходят гостевой стек, обрабатываются, а исходящие пакеты возвращаются тем же путем. Все это происходит программно и требует нескольких переключений контекста. Это вызывает задержку пакета и - из-за результирующего продукта задержки полосы пропускания - может ограничивать общую пропускную способность для чувствительного к задержке транспортного протокола, такого как TCP.
Существует три основных подхода: уменьшить задержку (зарезервировать ресурсы хоста для виртуальной машины, использовать паравиртуализированную виртуальную сетевую карту или выделенную сетевую карту с сквозной передачей, точная настройка NUMA), увеличить окно приема TCP с помощью масштабирования окна TCP или использовать несколько потоков TCP в то же время.