Аппаратная часть iKOOLCORE R2 Max уже была рассмотрена в первой части обзора , включая распаковку и разбор системы на базе Intel N100 с двумя портами 10GbE и двумя портами 2.5GbE. Теперь, после дополнительного тестирования с форком OpenWrt, Proxmox VE, Ubuntu 24.04 и pfSense, представлен опыт использования во второй заключительной части обзора.
Напомним: из-за отсутствия оборудования 10GbE, iKOOLCORE предоставил две модели R2 Max – пассивного охлаждения и с активным охлаждением. Ожидалось, что пассивная модель использует SoC Intel N100, а активная – процессор Intel Core i3-N305, но в итоге получены два устройства с Intel N100. Модель без вентилятора будет использоваться как сервер на OpenWrt 23.05 (QWRT), а вариант с активным охлаждением – как тестируемое устройство/клиент с платформой виртуализации Proxmox VE 8.3, запускающей виртуальные машины Ubuntu 24.04 и pfSense 24.11.
Обзор достаточно объемный, поэтому основные разделы:
- Установка и настройка OpenWrt (QRWT) на iKOOLCORE R2 Max
- Установка и настройка Proxmox VE
- Тестирование 10GbE на iKOOLCORE R2 Max с iperf3 (с использованием OpenWrt и Proxmox VE без виртуализации)
- Установка Ubuntu 24.04 и pfSense CE 2.7.2 в Proxmox VE
- Тестирование 10GbE на Intel N100 в Proxmox VE с Ubuntu и pfSense
- Заключение (и ссылка для покупки)
Установка и настройка OpenWrt (QRWT) на iKOOLCORE R2 Max
Стандартная OpenWrt не содержит драйверов для сетевой карты AQC113C-B1-C 10GbE, поэтому IKOOLCORE подготовил образ «OpenWrt 23.05», точнее, образ на базе форка QWRT со всеми необходимыми драйверами. Конфигурация предусматривает WAN-порт на разъеме 2.5GbE (как показано на фото ниже), а второй порт 2.5GbE и два порта 10GbE работают в LAN с подсетью 192.168.1.0 и включенным DHCP-сервером.
Для подключения к интернету WAN-порт соединен с коммутатором 2.5GbE, а правый порт 10GbE LAN подключен к ноутбуку для доступа к веб-интерфейсу. Дополнительно подключен HDMI-монитор для отслеживания предупреждений и ошибок.
Загружен образ QWRT-R24.11.18-x86-64-generic-squashfs-combined-efi.img.gz и записан на USB-накопитель:
1 2 3 |
gunzip QWRT-*.img.gz sudo dd if=QWRT-R24.11.18-x86-64-generic-squashfs-combined-efi.img bs=1M of=/dev/sda sync |
После подключения флеш-накопителя к порту USB 3.0 iKOOLCORE R2 Max и подачи питания началась загрузка. Процесс занял некоторое время, после чего на мониторе появились сообщения.
Из-за использования IP 192.168.1.1 в основном роутере, WAN-порт временно отключен для настройки OpenWrt/QWRT через веб-интерфейс LuCI по адресу http://192.168.1.1. Имя пользователя по умолчанию – «root», пароль – «Password».
Настройка прошла успешно, но навигация затруднена без знания китайского языка.
Для переключения на английский: перейти в «系统», выбрать вкладку «语言和界面», затем в выпадающем списке «语言» выбрать English.
После сохранения интерфейс временно остается китайским, но при переходе на другую страницу язык меняется. В разделе Overview подтверждается использование R2 Max с процессором Intel N100 под управлением QWRT R24.11 на ядре Linux 6.12.
Для устранения конфликта подсетей изменена LAN-подсеть: в разделе Сеть->Интерфейсы…
выбрана вкладка LAN, после чего IPv4-адрес изменен с 192.168.1.1 на 192.168.4.1.
После сохранения и переподключения к веб-интерфейсу по адресу http://192.168.4.1 подтверждено получение ноутбуком нового IP-адреса. На этом этапе восстановлено подключение WAN.
Дополнительно изменен пароль роутера на более безопасный, чем «Password».
Все изменения пока сохранены на USB-накопителе. Для установки QWRT на внутренний SSD выполнены действия по инструкции с сайта документации OpenWrt . Сначала осуществлен доступ по SSH с установленным паролем:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
BusyBox v1.35.0 (2024-11-15 04:01:28 UTC) built-in shell (ash) _______ ___ _________________ __ __ \ __ | / /__ __ \__ __/ _ / / /________ | /| / /__ /_/ /_ / / /_/ /_/_____/_ |/ |/ / _ _, _/_ / \___\_\ ____/|__/ /_/ |_| /_/ http://www.q-wrt.com The core of SmartRouters ----------------------------------------------------------- OpenWrt 23.05.0, r6103-b0cebefb0 ----------------------------------------------------------- root@QWRT:~# |
Установлена и запущена утилита lsblk:
1 2 3 |
opkg update opkg install lsblk lsblk |
Результат выполнения команды:
1 2 3 4 5 6 7 8 |
root@QWRT:~# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT loop0 7:0 0 788.9M 0 loop /overlay sda 8:0 1 58.6G 0 disk ├─sda1 8:1 1 64M 0 part /boot ├─sda2 8:2 1 896M 0 part /rom └─sda128 259:1 1 239K 0 part nvme0n1 259:0 0 119.2G 0 disk |
OpenWrt установлена на /dev/sda, SSD расположен по адресу /dev/nvme0n1. Содержимое перенесено на SSD.
1 2 3 4 |
root@QWRT:~# dd if=/dev/sda bs=1M of=/dev/nvme0n1 60017+1 records in 60017+1 records out root@QWRT:~# sync |
После выключения системы и извлечения USB-накопителя произведена загрузка с внутреннего SSD. Функциональность сохранена.
Установка и настройка Proxmox VE
После завершения установки и настройки «OpenWrt-сервера», Proxmox VE развернут на модели iKOOLCORE R2 Max с активным охлаждением, выступающей в роли тестируемого устройства/клиента.
Текущая версия – Proxmox VE 8.3. Образ записан на USB-накопитель с помощью dd (в Ubuntu утилита Startup Disk Creator не распознала образ):
1 |
sudo dd bs=1M conv=fdatasync if=./proxmox-ve_8.3-1.iso of=/dev/sda |
Процесс аналогичен установке Proxmox VE 8.1 на iKOOLCORE R2 , выполненной ранее. Большинство шагов требует нажатия Next, но ключевой этап – настройка управляющей сети (Management Network Configuration): указание полного доменного имени (ikoolcore-r2-max-cnx.local), IP-адреса (192.168.4.253), шлюза (192.168.4.1) и DNS-сервера (192.168.4.1).
Перед завершением установки проверены параметры и диск назначения (/dev/nvme0n1).
Доступ к панели Proxmox VE осуществляется через веб-браузер по адресу 192.168.4.253:8006 или ikoolcore-r2-max-cnx.local:8006 с использованием учетных данных, заданных при установке.
Все функционирует корректно. Перед добавлением гостевых ОС предстоит проверить производительность 10GbE на модели с пассивным охлаждением (OpenWrt) и активным (Proxmox VE) для оценки интерфейсов без уровня виртуализации.
Тестирование 10GbE на iKOOLCORE R2 Max с iperf3
Левые порты 10GbE устройств соединены метровым кабелем Ethernet (вероятно, Cat 5). Порт 2.5GbE OpenWrt-устройства подключен к ноутбуку, другой порт 2.5GbE – к коммутатору для доступа в интернет.
Через SSH к устройству Proxmox VE проверена скорость соединения:
1 2 3 4 5 6 7 |
root@ikoolcore-r2-max-cnx:~# ip link | grep UP 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000 5: enp8s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq master vmbr0 state UP mode DEFAULT group default qlen 1000 6: vmbr0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DEFAULT group default qlen 1000 root@ikoolcore-r2-max-cnx:~# ethtool enp8s0 | grep Speed Speed: 10000Mb/s |
Показатели корректны. Запущен iperf3 на сервере QWRT и клиенте PVE:
- Отправка данных с клиента:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
root@ikoolcore-r2-max-cnx:~# iperf3 -t 60 -c 192.168.4.1 -i 10 Connecting to host 192.168.4.1, port 5201 [ 5] local 192.168.4.253 port 57738 connected to 192.168.4.1 port 5201 [ ID] Interval Transfer Bitrate Retr Cwnd [ 5] 0.00-10.00 sec 11.0 GBytes 9.41 Gbits/sec 0 2.67 MBytes [ 5] 10.00-20.00 sec 11.0 GBytes 9.41 Gbits/sec 0 2.83 MBytes [ 5] 20.00-30.00 sec 11.0 GBytes 9.41 Gbits/sec 0 4.56 MBytes [ 5] 30.00-40.00 sec 11.0 GBytes 9.41 Gbits/sec 1 4.56 MBytes [ 5] 40.00-50.00 sec 11.0 GBytes 9.42 Gbits/sec 0 4.56 MBytes [ 5] 50.00-60.00 sec 11.0 GBytes 9.41 Gbits/sec 1 4.56 MBytes - - - - - - - - - - - - - - - - - - - - - - - - - [ ID] Interval Transfer Bitrate Retr [ 5] 0.00-60.00 sec 65.7 GBytes 9.41 Gbits/sec 2 sender [ 5] 0.00-60.00 sec 65.7 GBytes 9.41 Gbits/sec receiver iperf Done. |
- Загрузка данных с сервера:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
root@ikoolcore-r2-max-cnx:~# iperf3 -t 60 -c 192.168.4.1 -i 10 -R Connecting to host 192.168.4.1, port 5201 Reverse mode, remote host 192.168.4.1 is sending [ 5] local 192.168.4.253 port 53646 connected to 192.168.4.1 port 5201 [ ID] Interval Transfer Bitrate [ 5] 0.00-10.00 sec 9.99 GBytes 8.58 Gbits/sec [ 5] 10.00-20.00 sec 9.88 GBytes 8.48 Gbits/sec [ 5] 20.00-30.00 sec 9.96 GBytes 8.55 Gbits/sec [ 5] 30.00-40.00 sec 9.91 GBytes 8.51 Gbits/sec [ 5] 40.00-50.00 sec 9.96 GBytes 8.55 Gbits/sec [ 5] 50.00-60.00 sec 9.90 GBytes 8.50 Gbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ ID] Interval Transfer Bitrate Retr [ 5] 0.00-60.00 sec 59.6 GBytes 8.53 Gbits/sec 0 sender [ 5] 0.00-60.00 sec 59.6 GBytes 8.53 Gbits/sec receiver iperf Done. |
Отправка: 9.41 Gbps – нормально, загрузка: 8.53 Gbps – требует улучшения.
Тест в дуплексном режиме (двунаправленная передача):
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
root@ikoolcore-r2-max-cnx:~# iperf3 -t 60 -c 192.168.4.1 -i 10 --bidir Connecting to host 192.168.4.1, port 5201 [ 5] local 192.168.4.253 port 36356 connected to 192.168.4.1 port 5201 [ 7] local 192.168.4.253 port 36372 connected to 192.168.4.1 port 5201 [ ID][Role] Interval Transfer Bitrate Retr Cwnd [ 5][TX-C] 0.00-10.00 sec 10.9 GBytes 9.38 Gbits/sec 0 3.83 MBytes [ 7][RX-C] 0.00-10.00 sec 6.76 GBytes 5.81 Gbits/sec [ 5][TX-C] 10.00-20.00 sec 11.0 GBytes 9.41 Gbits/sec 0 3.83 MBytes [ 7][RX-C] 10.00-20.00 sec 5.58 GBytes 4.79 Gbits/sec [ 5][TX-C] 20.00-30.00 sec 10.9 GBytes 9.33 Gbits/sec 0 3.83 MBytes [ 7][RX-C] 20.00-30.00 sec 9.21 GBytes 7.92 Gbits/sec [ 5][TX-C] 30.00-40.00 sec 10.8 GBytes 9.31 Gbits/sec 0 3.83 MBytes [ 7][RX-C] 30.00-40.00 sec 10.7 GBytes 9.18 Gbits/sec [ 5][TX-C] 40.00-50.00 sec 10.8 GBytes 9.31 Gbits/sec 0 3.83 MBytes [ 7][RX-C] 40.00-50.00 sec 10.7 GBytes 9.15 Gbits/sec [ 5][TX-C] 50.00-60.00 sec 10.8 GBytes 9.27 Gbits/sec 0 3.83 MBytes [ 7][RX-C] 50.00-60.00 sec 10.6 GBytes 9.07 Gbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ ID][Role] Interval Transfer Bitrate Retr [ 5][TX-C] 0.00-60.00 sec 65.2 GBytes 9.33 Gbits/sec 0 sender [ 5][TX-C] 0.00-60.00 sec 65.2 GBytes 9.33 Gbits/sec receiver [ 7][RX-C] 0.00-60.00 sec 53.5 GBytes 7.65 Gbits/sec 1 sender [ 7][RX-C] 0.00-60.00 sec 53.5 GBytes 7.65 Gbits/sec receiver iperf Done. |
Результат приемлемый, но не оптимальный. В отсутствие кабеля Cat6 предпринята попытка использовать 20-см кабель Cat 5/5E:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
root@ikoolcore-r2-max-cnx:~# iperf3 -t 60 -c 192.168.4.1 -i 10 --bidir Connecting to host 192.168.4.1, port 5201 [ 5] local 192.168.4.253 port 54282 connected to 192.168.4.1 port 5201 [ 7] local 192.168.4.253 port 54296 connected to 192.168.4.1 port 5201 [ ID][Role] Interval Transfer Bitrate Retr Cwnd [ 5][TX-C] 0.00-10.00 sec 10.9 GBytes 9.41 Gbits/sec 0 2.93 MBytes [ 7][RX-C] 0.00-10.00 sec 7.64 GBytes 6.56 Gbits/sec [ 5][TX-C] 10.00-20.00 sec 11.0 GBytes 9.41 Gbits/sec 0 2.93 MBytes [ 7][RX-C] 10.00-20.00 sec 7.45 GBytes 6.40 Gbits/sec [ 5][TX-C] 20.00-30.00 sec 11.0 GBytes 9.41 Gbits/sec 0 2.93 MBytes [ 7][RX-C] 20.00-30.00 sec 7.41 GBytes 6.36 Gbits/sec [ 5][TX-C] 30.00-40.00 sec 11.0 GBytes 9.41 Gbits/sec 0 2.93 MBytes [ 7][RX-C] 30.00-40.00 sec 7.39 GBytes 6.35 Gbits/sec [ 5][TX-C] 40.00-50.00 sec 11.0 GBytes 9.41 Gbits/sec 0 2.93 MBytes [ 7][RX-C] 40.00-50.00 sec 7.38 GBytes 6.34 Gbits/sec [ 5][TX-C] 50.00-60.00 sec 11.0 GBytes 9.41 Gbits/sec 1 2.93 MBytes [ 7][RX-C] 50.00-60.00 sec 7.36 GBytes 6.33 Gbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ ID][Role] Interval Transfer Bitrate Retr [ 5][TX-C] 0.00-60.00 sec 65.7 GBytes 9.41 Gbits/sec 1 sender [ 5][TX-C] 0.00-60.00 sec 65.7 GBytes 9.41 Gbits/sec receiver [ 7][RX-C] 0.00-60.00 sec 44.6 GBytes 6.39 Gbits/sec 0 sender [ 7][RX-C] 0.00-60.00 sec 44.6 GBytes 6.39 Gbits/sec receiver iperf Done. |
Улучшений не зафиксировано. IKOOLCORE предоставил скрипт для мониторинга использования ЦП, температуры процессора и сетевой карты, запущенный в Proxmox VE (на базе Debian). При минутном тесте iperf3 перегрев сетевой карты не наблюдался.
Отмечена значительная вариативность результатов тестов.
1 2 3 4 5 6 7 8 |
- - - - - - - - - - - - - - - - - - - - - - - - - [ ID][Role] Interval Transfer Bitrate Retr [ 5][TX-C] 0.00-60.00 sec 64.8 GBytes 9.27 Gbits/sec 0 sender [ 5][TX-C] 0.00-60.00 sec 64.8 GBytes 9.27 Gbits/sec receiver [ 7][RX-C] 0.00-60.00 sec 60.1 GBytes 8.61 Gbits/sec 0 sender [ 7][RX-C] 0.00-60.00 sec 60.1 GBytes 8.61 Gbits/sec receiver iperf Done. |
По информации от производителя, двунаправленная скорость на модели N100 не достигает 10Gbps, в отличие от версии с Core i3-N305. При этом однонаправленная передача (10Gbps Rx или Tx) возможна при использовании Windows 11 на Proxmox VE (R2 Max N100) и Synology DS1821+ 10GbE NAS. Для исключения влияния кабеля приобретены метровые кабели Cat6.
Повторный тест с кабелем Cat6:
- Отправка:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
root@ikoolcore-r2-max-cnx:~# iperf3 -t 60 -c 192.168.4.1 -i 10 Connecting to host 192.168.4.1, port 5201 [ 5] local 192.168.4.253 port 42386 connected to 192.168.4.1 port 5201 [ ID] Interval Transfer Bitrate Retr Cwnd [ 5] 0.00-10.00 sec 11.0 GBytes 9.42 Gbits/sec 0 2.76 MBytes [ 5] 10.00-20.00 sec 11.0 GBytes 9.41 Gbits/sec 0 2.76 MBytes [ 5] 20.00-30.00 sec 11.0 GBytes 9.42 Gbits/sec 0 4.19 MBytes [ 5] 30.00-40.00 sec 11.0 GBytes 9.42 Gbits/sec 0 4.19 MBytes [ 5] 40.00-50.00 sec 11.0 GBytes 9.42 Gbits/sec 0 4.19 MBytes [ 5] 50.00-60.00 sec 11.0 GBytes 9.42 Gbits/sec 0 4.19 MBytes - - - - - - - - - - - - - - - - - - - - - - - - - [ ID] Interval Transfer Bitrate Retr [ 5] 0.00-60.00 sec 65.8 GBytes 9.42 Gbits/sec 0 sender [ 5] 0.00-60.00 sec 65.8 GBytes 9.41 Gbits/sec receiver iperf Done. |
- Загрузка
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
root@ikoolcore-r2-max-cnx:~# iperf3 -t 60 -c 192.168.4.1 -i 10 -R Connecting to host 192.168.4.1, port 5201 Reverse mode, remote host 192.168.4.1 is sending [ 5] local 192.168.4.253 port 38444 connected to 192.168.4.1 port 5201 [ ID] Interval Transfer Bitrate [ 5] 0.00-10.00 sec 10.1 GBytes 8.70 Gbits/sec [ 5] 10.00-20.00 sec 9.86 GBytes 8.47 Gbits/sec [ 5] 20.00-30.00 sec 10.1 GBytes 8.65 Gbits/sec [ 5] 30.00-40.00 sec 9.98 GBytes 8.58 Gbits/sec [ 5] 40.00-50.00 sec 9.93 GBytes 8.53 Gbits/sec [ 5] 50.00-60.00 sec 10.0 GBytes 8.63 Gbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ ID] Interval Transfer Bitrate Retr [ 5] 0.00-60.00 sec 60.0 GBytes 8.59 Gbits/sec 0 sender [ 5] 0.00-60.00 sec 60.0 GBytes 8.59 Gbits/sec receiver iperf Done. |
- Дуплексный режим
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
root@ikoolcore-r2-max-cnx:~# iperf3 -t 60 -c 192.168.4.1 -i 10 --bidir Connecting to host 192.168.4.1, port 5201 [ 5] local 192.168.4.253 port 44438 connected to 192.168.4.1 port 5201 [ 7] local 192.168.4.253 port 44444 connected to 192.168.4.1 port 5201 [ ID][Role] Interval Transfer Bitrate Retr Cwnd [ 5][TX-C] 0.00-10.00 sec 10.9 GBytes 9.40 Gbits/sec 0 3.15 MBytes [ 7][RX-C] 0.00-10.00 sec 7.56 GBytes 6.49 Gbits/sec [ 5][TX-C] 10.00-20.00 sec 10.9 GBytes 9.37 Gbits/sec 0 3.91 MBytes [ 7][RX-C] 10.00-20.00 sec 7.38 GBytes 6.33 Gbits/sec [ 5][TX-C] 20.00-30.00 sec 11.0 GBytes 9.41 Gbits/sec 0 3.91 MBytes [ 7][RX-C] 20.00-30.00 sec 7.57 GBytes 6.51 Gbits/sec [ 5][TX-C] 30.00-40.00 sec 10.9 GBytes 9.41 Gbits/sec 0 3.91 MBytes [ 7][RX-C] 30.00-40.00 sec 7.39 GBytes 6.35 Gbits/sec [ 5][TX-C] 40.00-50.00 sec 10.9 GBytes 9.40 Gbits/sec 0 3.91 MBytes [ 7][RX-C] 40.00-50.00 sec 7.86 GBytes 6.75 Gbits/sec [ 5][TX-C] 50.00-60.00 sec 10.9 GBytes 9.41 Gbits/sec 0 3.91 MBytes [ 7][RX-C] 50.00-60.00 sec 7.70 GBytes 6.61 Gbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ ID][Role] Interval Transfer Bitrate Retr [ 5][TX-C] 0.00-60.00 sec 65.7 GBytes 9.40 Gbits/sec 0 sender [ 5][TX-C] 0.00-60.00 sec 65.7 GBytes 9.40 Gbits/sec receiver [ 7][RX-C] 0.00-60.00 sec 45.5 GBytes 6.51 Gbits/sec 0 sender [ 7][RX-C] 0.00-60.00 sec 45.5 GBytes 6.51 Gbits/sec receiver iperf Done. |
Улучшений нет. Обнаружена 100% загрузка одного ядра ЦП во время двунаправленного теста iperf3.
Предпринят поиск метода задействования всех четырех ядер в iperf3. Установлено, что iperf 3.16 поддерживает многопоточность, опыт документирован. Образ QWRT уже содержал iperf 3.17.1, но в Proxmox VE использовалась iperf 3.12. Для тестов была собрана версия iperf 3.18 из исходного кода. Воспроизводить процесс здесь не будем, перейдем сразу к результатам.
Поскольку теперь можно использовать параллельные потоки на всех четырех ядрах с опцией “-P 4”, повторим тест на скачивание:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 |
root@ikoolcore-r2-max-cnx:~/iperf-3.18/src# ./iperf3 -t 60 -c 192.168.4.1 -P 4 -i 10 -R Connecting to host 192.168.4.1, port 5201 Reverse mode, remote host 192.168.4.1 is sending [ 5] local 192.168.4.253 port 42850 connected to 192.168.4.1 port 5201 [ 7] local 192.168.4.253 port 42856 connected to 192.168.4.1 port 5201 [ 9] local 192.168.4.253 port 42866 connected to 192.168.4.1 port 5201 [ 11] local 192.168.4.253 port 42870 connected to 192.168.4.1 port 5201 [ ID] Interval Transfer Bitrate [ 5] 0.00-10.01 sec 1.86 GBytes 1.60 Gbits/sec [ 7] 0.00-10.01 sec 3.66 GBytes 3.14 Gbits/sec [ 9] 0.00-10.01 sec 3.66 GBytes 3.14 Gbits/sec [ 11] 0.00-10.01 sec 1.79 GBytes 1.54 Gbits/sec [SUM] 0.00-10.01 sec 11.0 GBytes 9.41 Gbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ 5] 10.01-20.01 sec 1.57 GBytes 1.35 Gbits/sec [ 7] 10.01-20.01 sec 3.65 GBytes 3.14 Gbits/sec [ 9] 10.01-20.01 sec 3.65 GBytes 3.14 Gbits/sec [ 11] 10.01-20.01 sec 2.08 GBytes 1.79 Gbits/sec [SUM] 10.01-20.01 sec 11.0 GBytes 9.41 Gbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ 5] 20.01-30.01 sec 1.67 GBytes 1.44 Gbits/sec [ 7] 20.01-30.01 sec 3.65 GBytes 3.14 Gbits/sec [ 9] 20.01-30.01 sec 3.65 GBytes 3.14 Gbits/sec [ 11] 20.01-30.01 sec 1.98 GBytes 1.70 Gbits/sec [SUM] 20.01-30.01 sec 11.0 GBytes 9.41 Gbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ 5] 30.01-40.01 sec 1.84 GBytes 1.58 Gbits/sec [ 7] 30.01-40.01 sec 3.65 GBytes 3.14 Gbits/sec [ 9] 30.01-40.01 sec 3.65 GBytes 3.14 Gbits/sec [ 11] 30.01-40.01 sec 1.82 GBytes 1.56 Gbits/sec [SUM] 30.01-40.01 sec 11.0 GBytes 9.41 Gbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ 5] 40.01-50.01 sec 1.84 GBytes 1.58 Gbits/sec [ 7] 40.01-50.01 sec 3.65 GBytes 3.14 Gbits/sec [ 9] 40.01-50.01 sec 3.65 GBytes 3.14 Gbits/sec [ 11] 40.01-50.01 sec 1.82 GBytes 1.56 Gbits/sec [SUM] 40.01-50.01 sec 11.0 GBytes 9.41 Gbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ 5] 50.01-60.01 sec 1.84 GBytes 1.58 Gbits/sec [ 7] 50.01-60.01 sec 3.65 GBytes 3.14 Gbits/sec [ 9] 50.01-60.01 sec 3.65 GBytes 3.14 Gbits/sec [ 11] 50.01-60.01 sec 1.82 GBytes 1.56 Gbits/sec [SUM] 50.01-60.01 sec 11.0 GBytes 9.42 Gbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ ID] Interval Transfer Bitrate Retr [ 5] 0.00-60.01 sec 10.6 GBytes 1.52 Gbits/sec 0 sender [ 5] 0.00-60.01 sec 10.6 GBytes 1.52 Gbits/sec receiver [ 7] 0.00-60.01 sec 21.9 GBytes 3.14 Gbits/sec 0 sender [ 7] 0.00-60.01 sec 21.9 GBytes 3.14 Gbits/sec receiver [ 9] 0.00-60.01 sec 21.9 GBytes 3.14 Gbits/sec 0 sender [ 9] 0.00-60.01 sec 21.9 GBytes 3.14 Gbits/sec receiver [ 11] 0.00-60.01 sec 11.3 GBytes 1.62 Gbits/sec 0 sender [ 11] 0.00-60.01 sec 11.3 GBytes 1.62 Gbits/sec receiver [SUM] 0.00-60.01 sec 65.8 GBytes 9.42 Gbits/sec 0 sender [SUM] 0.00-60.01 sec 65.8 GBytes 9.41 Gbits/sec receiver iperf Done. root@ikoolcore-r2-max-cnx:~/iperf-3.18/src# |
Показатель 9.41 Гбит/с удовлетворителен. Теперь двунаправленный тест с “-P 2” (этого достаточно, и вывод менее перегружен):
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 |
root@ikoolcore-r2-max-cnx:~/iperf-3.18/src# ./iperf3 -t 60 -c 192.168.4.1 -P 2 -i 10 --bidir Connecting to host 192.168.4.1, port 5201 [ 5] local 192.168.4.253 port 32996 connected to 192.168.4.1 port 5201 [ 7] local 192.168.4.253 port 33000 connected to 192.168.4.1 port 5201 [ 9] local 192.168.4.253 port 33014 connected to 192.168.4.1 port 5201 [ 11] local 192.168.4.253 port 33022 connected to 192.168.4.1 port 5201 [ ID][Role] Interval Transfer Bitrate Retr Cwnd [ 5][TX-C] 0.00-10.01 sec 5.59 GBytes 4.79 Gbits/sec 0 3.64 MBytes [ 7][TX-C] 0.00-10.01 sec 5.36 GBytes 4.60 Gbits/sec 0 3.50 MBytes [SUM][TX-C] 0.00-10.01 sec 10.9 GBytes 9.40 Gbits/sec 0 [ 9][RX-C] 0.00-10.01 sec 5.48 GBytes 4.70 Gbits/sec [ 11][RX-C] 0.00-10.01 sec 5.48 GBytes 4.70 Gbits/sec [SUM][RX-C] 0.00-10.01 sec 11.0 GBytes 9.41 Gbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ 5][TX-C] 10.01-20.01 sec 5.58 GBytes 4.79 Gbits/sec 0 3.64 MBytes [ 7][TX-C] 10.01-20.01 sec 5.36 GBytes 4.60 Gbits/sec 0 3.50 MBytes [SUM][TX-C] 10.01-20.01 sec 10.9 GBytes 9.39 Gbits/sec 0 [ 9][RX-C] 10.01-20.01 sec 5.48 GBytes 4.70 Gbits/sec [ 11][RX-C] 10.01-20.01 sec 5.47 GBytes 4.70 Gbits/sec [SUM][RX-C] 10.01-20.01 sec 11.0 GBytes 9.41 Gbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ 5][TX-C] 20.01-30.01 sec 5.58 GBytes 4.79 Gbits/sec 0 3.64 MBytes [ 7][TX-C] 20.01-30.01 sec 5.35 GBytes 4.60 Gbits/sec 0 3.50 MBytes [SUM][TX-C] 20.01-30.01 sec 10.9 GBytes 9.39 Gbits/sec 0 [ 9][RX-C] 20.01-30.01 sec 5.48 GBytes 4.70 Gbits/sec [ 11][RX-C] 20.01-30.01 sec 5.47 GBytes 4.70 Gbits/sec [SUM][RX-C] 20.01-30.01 sec 10.9 GBytes 9.41 Gbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ 5][TX-C] 30.01-40.01 sec 5.58 GBytes 4.79 Gbits/sec 0 3.64 MBytes [ 7][TX-C] 30.01-40.01 sec 5.35 GBytes 4.60 Gbits/sec 0 3.50 MBytes [SUM][TX-C] 30.01-40.01 sec 10.9 GBytes 9.39 Gbits/sec 0 [ 9][RX-C] 30.01-40.01 sec 5.48 GBytes 4.70 Gbits/sec [ 11][RX-C] 30.01-40.01 sec 5.47 GBytes 4.70 Gbits/sec [SUM][RX-C] 30.01-40.01 sec 11.0 GBytes 9.41 Gbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ 5][TX-C] 40.01-50.01 sec 5.58 GBytes 4.80 Gbits/sec 0 3.64 MBytes [ 7][TX-C] 40.01-50.01 sec 5.35 GBytes 4.60 Gbits/sec 0 3.50 MBytes [SUM][TX-C] 40.01-50.01 sec 10.9 GBytes 9.39 Gbits/sec 0 [ 9][RX-C] 40.01-50.01 sec 5.48 GBytes 4.70 Gbits/sec [ 11][RX-C] 40.01-50.01 sec 5.47 GBytes 4.70 Gbits/sec [SUM][RX-C] 40.01-50.01 sec 11.0 GBytes 9.41 Gbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ 5][TX-C] 50.01-60.01 sec 5.58 GBytes 4.79 Gbits/sec 0 3.64 MBytes [ 7][TX-C] 50.01-60.01 sec 5.35 GBytes 4.60 Gbits/sec 0 3.50 MBytes [SUM][TX-C] 50.01-60.01 sec 10.9 GBytes 9.39 Gbits/sec 0 [ 9][RX-C] 50.01-60.01 sec 5.48 GBytes 4.70 Gbits/sec [ 11][RX-C] 50.01-60.01 sec 5.47 GBytes 4.70 Gbits/sec [SUM][RX-C] 50.01-60.01 sec 11.0 GBytes 9.41 Gbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ ID][Role] Interval Transfer Bitrate Retr [ 5][TX-C] 0.00-60.01 sec 33.5 GBytes 4.79 Gbits/sec 0 sender [ 5][TX-C] 0.00-60.01 sec 33.5 GBytes 4.79 Gbits/sec receiver [ 7][TX-C] 0.00-60.01 sec 32.1 GBytes 4.60 Gbits/sec 0 sender [ 7][TX-C] 0.00-60.01 sec 32.1 GBytes 4.60 Gbits/sec receiver [SUM][TX-C] 0.00-60.01 sec 65.6 GBytes 9.39 Gbits/sec 0 sender [SUM][TX-C] 0.00-60.01 sec 65.6 GBytes 9.39 Gbits/sec receiver [ 9][RX-C] 0.00-60.01 sec 32.9 GBytes 4.70 Gbits/sec 0 sender [ 9][RX-C] 0.00-60.01 sec 32.9 GBytes 4.70 Gbits/sec receiver [ 11][RX-C] 0.00-60.01 sec 32.9 GBytes 4.70 Gbits/sec 0 sender [ 11][RX-C] 0.00-60.01 sec 32.9 GBytes 4.70 Gbits/sec receiver [SUM][RX-C] 0.00-60.01 sec 65.7 GBytes 9.41 Gbits/sec 0 sender [SUM][RX-C] 0.00-60.01 sec 65.7 GBytes 9.41 Gbits/sec receiver iperf Done. |
Вывод содержит много данных, но итоговые результаты видны в строках [SUM] [TX-C] 9.39 Гбит/с и [SUM] [RX-C] 9.41 Гбит/с. Важно, что интерфейс 10GbE можно насытить, используя минимум два ядра, поскольку одно ядро создает узкое место.
Кабель был перемещен на второй 10GbE интерфейс пассивно охлаждаемого маршрутизатора с аналогичными результатами:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
root@ikoolcore-r2-max-cnx:~/iperf-3.18/src# ./iperf3 -t 60 -c 192.168.4.1 -P 2 -i 10 --bidir Connecting to host 192.168.4.1, port 5201 [ 5] local 192.168.4.253 port 53376 connected to 192.168.4.1 port 5201 [ 7] local 192.168.4.253 port 53378 connected to 192.168.4.1 port 5201 [ 9] local 192.168.4.253 port 53388 connected to 192.168.4.1 port 5201 [ 11] local 192.168.4.253 port 53390 connected to 192.168.4.1 port 5201 ... - - - - - - - - - - - - - - - - - - - - - - - - - [ ID][Role] Interval Transfer Bitrate Retr [ 5][TX-C] 0.00-60.01 sec 32.9 GBytes 4.71 Gbits/sec 0 sender [ 5][TX-C] 0.00-60.01 sec 32.9 GBytes 4.71 Gbits/sec receiver [ 7][TX-C] 0.00-60.01 sec 32.7 GBytes 4.68 Gbits/sec 0 sender [ 7][TX-C] 0.00-60.01 sec 32.7 GBytes 4.68 Gbits/sec receiver [SUM][TX-C] 0.00-60.01 sec 65.6 GBytes 9.39 Gbits/sec 0 sender [SUM][TX-C] 0.00-60.01 sec 65.6 GBytes 9.39 Gbits/sec receiver [ 9][RX-C] 0.00-60.01 sec 31.8 GBytes 4.55 Gbits/sec 0 sender [ 9][RX-C] 0.00-60.01 sec 31.8 GBytes 4.55 Gbits/sec receiver [ 11][RX-C] 0.00-60.01 sec 33.9 GBytes 4.85 Gbits/sec 0 sender [ 11][RX-C] 0.00-60.01 sec 33.9 GBytes 4.85 Gbits/sec receiver [SUM][RX-C] 0.00-60.01 sec 65.6 GBytes 9.39 Gbits/sec 0 sender [SUM][RX-C] 0.00-60.01 sec 65.6 GBytes 9.39 Gbits/sec receiver iperf Done. |
Оборудование гарантированно обрабатывает трафик 10GbE в обоих направлениях при задействовании нескольких ядер.
Установка Ubuntu 24.04 и pfSense CE 2.7.2 в Proxmox VE
Теперь проанализируем влияние виртуализации. Сначала активируем сквозную передачу оборудования в Proxmox VE, как ранее делалось на iKOOLCORE R2:
1 2 3 4 5 6 |
export LC_ALL=en_US.UTF-8 apt update apt -y install git git clone https://github.com/KoolCore/Proxmox_VE_Status.git cd Proxmox_VE_Status bash ./passthrough.sh |
Необходимо загрузить образы Ubuntu 24.04 и pfSense CE 2.7.2, затем загрузить их в экземпляр ProxmoxVE. Для скачивания pfSense теперь требуется регистрация (предлагается образ “netgateinstaller”), но образ pfSense-CE-2.7.2-RELEASE-amd64.iso доступен через зеркало при необходимости.
При установке Ubuntu 24.04 в основном следовали инструкции для Ubuntu 22.04 на Proxmox со сквозной передачей видео и USB для задействования портов HDMI, USB-мыши и клавиатуры. Детали опустим, приведем лишь сводку: создана виртуальная машина с параметрами (4 ядра, 4 ГБ ОЗУ, 64 ГБ HDD).
После запуска выполнена установка Ubuntu 24.04, затем ISO-образ извлечен из ВМ для загрузки ОС с HDD.
Хотя Ubuntu отображалась в консоли Proxmox VE, требовалась дополнительная настройка для прямого использования HDMI и USB-периферии. Добавлены два PCIe-устройства и два USB-устройства для сквозной передачи GPU и клавиатуры/мыши, загружены и скопированы файлы gen12_gop.rom и gen12_igd.rom (переименован в igd.rom) в /usr/share/kvm, после чего отредактирован конфигурационный файл /etc/pve/qemu-server/100.conf . Итоговая конфигурация для Ubuntu 24.04 представлена ниже.
После перезапуска Ubuntu 24.04 работала с HDMI-выводом, USB-клавиатурой и мышью без использования веб-интерфейса Proxmox VE. Тесты 10GbE будут выполнены позже, но предварительные результаты выглядят положительно (см. фото).
Теперь протестируем pfSense, хотя есть сомнения из-за комментария читателя :
В типовой конфигурации два порта 10GbE обычно выделяют для pfSense, а один из портов 2.5GbE — для ОС типа Ubuntu 24.04. Но для тестирования потребовалось назначить один 10GbE-порт Ubuntu, а второй — pfSense. Для этого добавлены два моста Linux для pfSense , что дало следующую конфигурацию сетевых интерфейсов в Proxmox VE:
vmbr0 – enp8s0 (10GbE через Marvell AQC113C-B1-C) с IP-адресом: 192.168.4.253 для Proxmox VE (уже сконфигурировано)
- vmbr1 – enp7s0 (10GbE через Marvell AQC113C-B1-C) с IP-адресом: 192.168.4.252 для pfSense WAN
- vmbr2 – enp2s0 (2.5GbE через Intel i226-V) с IP-адресом: 192.168.4.1 для pfSense LAN
Не забудьте нажать «Apply Configuration» здесь, иначе при запуске ВМ Proxmox VE выдаст ошибку об отсутствии интерфейса vmbr1.
Вот конфигурация для pfSense 2.7.2 в Proxmox VE после добавления vmbr1 и vmbr2. Важно выбрать Default (SeaBIOS) для BIOS, а не UEFI, иначе загрузка не удастся.
Я установил pfSense в Proxmox используя те же инструкции, что и для iKOOLCORE R2 в прошлом году. Для WAN настроен DHCP с сервера OpenWrt, а для LAN — 192.168.6.1. Обратите внимание, что vmbr1 (10GbE) должен быть назначен на vtnet1, а vmbr2 (2.5GbE) — на vtnet0.
Теперь кабель Ethernet перемещается с ноутбука на порт 2.5GbE для завершения настройки pfSense через 192.168.6.1. Для начальной конфигурации необходимо использовать имя пользователя и пароль администратора по умолчанию. По завершении мастера настройки потребуется изменить пароль администратора. Эти шаги подробно описаны в предыдущих инструкциях по pfSense, поэтому здесь они не рассматриваются. В результате pfSense успешно запущен и работает.
Однако доступ в Интернет отсутствовал из-за проблемы с разрешением DNS. Для решения проблемы в разделе Services->DNS Resolver была активирована опция «DNS Query Forwarding».
Теперь, когда доступен веб-сёрфинг из подсети 192.168.6.0, а также обеспечен доступ к подсети 192.168.4.0 для тестирования 10GbE, можно перейти к оценке производительности.
Тестирование Intel N100 10GbE в Proxmox VE с Ubuntu и pfSense
Временно остановим виртуальную машину pfSense и запустим виртуальную машину Ubuntu для повторного тестирования интерфейса 10GbE с помощью iperf3 (версия 3.16):
- Отправка
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 |
jaufranc@Ubuntu-24:~$ iperf3 -t 60 -c 192.168.4.1 -i 20 -P 4 Connecting to host 192.168.4.1, port 5201 [ 5] local 192.168.4.215 port 42570 connected to 192.168.4.1 port 5201 [ 7] local 192.168.4.215 port 42586 connected to 192.168.4.1 port 5201 [ 9] local 192.168.4.215 port 42596 connected to 192.168.4.1 port 5201 [ 11] local 192.168.4.215 port 42598 connected to 192.168.4.1 port 5201 [ ID] Interval Transfer Bitrate Retr Cwnd [ 5] 0.00-20.02 sec 3.63 GBytes 1.56 Gbits/sec 0 3.97 MBytes [ 7] 0.00-20.02 sec 7.31 GBytes 3.14 Gbits/sec 0 3.90 MBytes [ 9] 0.00-20.02 sec 7.31 GBytes 3.14 Gbits/sec 1 3.92 MBytes [ 11] 0.00-20.02 sec 3.70 GBytes 1.59 Gbits/sec 0 3.95 MBytes [SUM] 0.00-20.02 sec 21.9 GBytes 9.42 Gbits/sec 1 - - - - - - - - - - - - - - - - - - - - - - - - - [ 5] 20.02-40.02 sec 3.64 GBytes 1.56 Gbits/sec 0 3.97 MBytes [ 7] 20.02-40.02 sec 7.31 GBytes 3.14 Gbits/sec 0 3.90 MBytes [ 9] 20.02-40.02 sec 7.31 GBytes 3.14 Gbits/sec 0 3.92 MBytes [ 11] 20.02-40.02 sec 3.66 GBytes 1.57 Gbits/sec 0 3.95 MBytes [SUM] 20.02-40.02 sec 21.9 GBytes 9.41 Gbits/sec 0 - - - - - - - - - - - - - - - - - - - - - - - - - [ 5] 40.02-60.00 sec 3.65 GBytes 1.57 Gbits/sec 0 3.97 MBytes [ 7] 40.02-60.00 sec 7.30 GBytes 3.14 Gbits/sec 0 3.90 MBytes [ 9] 40.02-60.00 sec 7.30 GBytes 3.14 Gbits/sec 0 3.92 MBytes [ 11] 40.02-60.00 sec 3.65 GBytes 1.57 Gbits/sec 0 3.95 MBytes [SUM] 40.02-60.00 sec 21.9 GBytes 9.41 Gbits/sec 0 - - - - - - - - - - - - - - - - - - - - - - - - - [ ID] Interval Transfer Bitrate Retr [ 5] 0.00-60.00 sec 10.9 GBytes 1.56 Gbits/sec 0 sender [ 5] 0.00-60.01 sec 10.9 GBytes 1.56 Gbits/sec receiver [ 7] 0.00-60.00 sec 21.9 GBytes 3.14 Gbits/sec 0 sender [ 7] 0.00-60.01 sec 21.9 GBytes 3.14 Gbits/sec receiver [ 9] 0.00-60.00 sec 21.9 GBytes 3.14 Gbits/sec 1 sender [ 9] 0.00-60.01 sec 21.9 GBytes 3.14 Gbits/sec receiver [ 11] 0.00-60.00 sec 11.0 GBytes 1.58 Gbits/sec 0 sender [ 11] 0.00-60.01 sec 11.0 GBytes 1.58 Gbits/sec receiver [SUM] 0.00-60.00 sec 65.8 GBytes 9.42 Gbits/sec 1 sender [SUM] 0.00-60.01 sec 65.8 GBytes 9.41 Gbits/sec receiver iperf Done. |
- Загрузка
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 |
jaufranc@Ubuntu-24:~$ iperf3 -t 60 -c 192.168.4.1 -i 20 -P 4 -R Connecting to host 192.168.4.1, port 5201 Reverse mode, remote host 192.168.4.1 is sending [ 5] local 192.168.4.215 port 43328 connected to 192.168.4.1 port 5201 [ 7] local 192.168.4.215 port 43332 connected to 192.168.4.1 port 5201 [ 9] local 192.168.4.215 port 43342 connected to 192.168.4.1 port 5201 [ 11] local 192.168.4.215 port 43350 connected to 192.168.4.1 port 5201 [ ID] Interval Transfer Bitrate [ 5] 0.00-20.02 sec 3.66 GBytes 1.57 Gbits/sec [ 7] 0.00-20.02 sec 7.32 GBytes 3.14 Gbits/sec [ 9] 0.00-20.02 sec 3.65 GBytes 1.57 Gbits/sec [ 11] 0.00-20.02 sec 7.31 GBytes 3.14 Gbits/sec [SUM] 0.00-20.02 sec 21.9 GBytes 9.41 Gbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ 5] 20.02-40.02 sec 4.33 GBytes 1.86 Gbits/sec [ 7] 20.02-40.02 sec 7.31 GBytes 3.14 Gbits/sec [ 9] 20.02-40.02 sec 2.98 GBytes 1.28 Gbits/sec [ 11] 20.02-40.02 sec 7.31 GBytes 3.14 Gbits/sec [SUM] 20.02-40.02 sec 21.9 GBytes 9.41 Gbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ 5] 40.02-60.01 sec 4.26 GBytes 1.83 Gbits/sec [ 7] 40.02-60.01 sec 7.30 GBytes 3.14 Gbits/sec [ 9] 40.02-60.01 sec 3.05 GBytes 1.31 Gbits/sec [ 11] 40.02-60.01 sec 7.30 GBytes 3.14 Gbits/sec [SUM] 40.02-60.01 sec 21.9 GBytes 9.41 Gbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ ID] Interval Transfer Bitrate Retr [ 5] 0.00-60.02 sec 12.2 GBytes 1.75 Gbits/sec 0 sender [ 5] 0.00-60.01 sec 12.2 GBytes 1.75 Gbits/sec receiver [ 7] 0.00-60.02 sec 21.9 GBytes 3.14 Gbits/sec 0 sender [ 7] 0.00-60.01 sec 21.9 GBytes 3.14 Gbits/sec receiver [ 9] 0.00-60.02 sec 9.68 GBytes 1.39 Gbits/sec 0 sender [ 9] 0.00-60.01 sec 9.68 GBytes 1.39 Gbits/sec receiver [ 11] 0.00-60.02 sec 21.9 GBytes 3.14 Gbits/sec 0 sender [ 11] 0.00-60.01 sec 21.9 GBytes 3.14 Gbits/sec receiver [SUM] 0.00-60.02 sec 65.8 GBytes 9.42 Gbits/sec 0 sender [SUM] 0.00-60.01 sec 65.8 GBytes 9.41 Gbits/sec receiver iperf Done. |
В тестах отправки и загрузки достигается скорость 9.41-9.42 Гбит/с. Это обнадеживает. Теперь попробуем полнодуплексную передачу:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 |
jaufranc@Ubuntu-24:~$ iperf3 -t 60 -c 192.168.4.1 -i 20 -P 4 --bidir Connecting to host 192.168.4.1, port 5201 [ 5] local 192.168.4.215 port 47834 connected to 192.168.4.1 port 5201 [ 7] local 192.168.4.215 port 47846 connected to 192.168.4.1 port 5201 [ 9] local 192.168.4.215 port 47848 connected to 192.168.4.1 port 5201 [ 11] local 192.168.4.215 port 47856 connected to 192.168.4.1 port 5201 [ 13] local 192.168.4.215 port 47870 connected to 192.168.4.1 port 5201 [ 15] local 192.168.4.215 port 47872 connected to 192.168.4.1 port 5201 [ 17] local 192.168.4.215 port 47874 connected to 192.168.4.1 port 5201 [ 19] local 192.168.4.215 port 47878 connected to 192.168.4.1 port 5201 [ ID][Role] Interval Transfer Bitrate Retr Cwnd [ 5][TX-C] 0.00-20.02 sec 3.99 GBytes 1.71 Gbits/sec 0 3.81 MBytes [ 7][TX-C] 0.00-20.02 sec 4.04 GBytes 1.73 Gbits/sec 0 3.77 MBytes [ 9][TX-C] 0.00-20.02 sec 4.08 GBytes 1.75 Gbits/sec 0 3.78 MBytes [ 11][TX-C] 0.00-20.02 sec 4.08 GBytes 1.75 Gbits/sec 0 3.81 MBytes [SUM][TX-C] 0.00-20.02 sec 16.2 GBytes 6.95 Gbits/sec 0 [ 13][RX-C] 0.00-20.02 sec 4.37 GBytes 1.88 Gbits/sec [ 15][RX-C] 0.00-20.02 sec 4.39 GBytes 1.89 Gbits/sec [ 17][RX-C] 0.00-20.02 sec 4.33 GBytes 1.86 Gbits/sec [ 19][RX-C] 0.00-20.02 sec 4.35 GBytes 1.87 Gbits/sec [SUM][RX-C] 0.00-20.02 sec 17.4 GBytes 7.49 Gbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ 5][TX-C] 20.02-40.02 sec 3.99 GBytes 1.71 Gbits/sec 0 3.81 MBytes [ 7][TX-C] 20.02-40.02 sec 3.98 GBytes 1.71 Gbits/sec 0 3.77 MBytes [ 9][TX-C] 20.02-40.02 sec 3.96 GBytes 1.70 Gbits/sec 0 3.78 MBytes [ 11][TX-C] 20.02-40.02 sec 3.97 GBytes 1.70 Gbits/sec 0 3.81 MBytes [SUM][TX-C] 20.02-40.02 sec 15.9 GBytes 6.83 Gbits/sec 0 [ 13][RX-C] 20.02-40.02 sec 4.33 GBytes 1.86 Gbits/sec [ 15][RX-C] 20.02-40.02 sec 4.31 GBytes 1.85 Gbits/sec [ 17][RX-C] 20.02-40.02 sec 4.33 GBytes 1.86 Gbits/sec [ 19][RX-C] 20.02-40.02 sec 4.33 GBytes 1.86 Gbits/sec [SUM][RX-C] 20.02-40.02 sec 17.3 GBytes 7.43 Gbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ 5][TX-C] 40.02-60.02 sec 4.04 GBytes 1.74 Gbits/sec 0 3.81 MBytes [ 7][TX-C] 40.02-60.02 sec 4.04 GBytes 1.73 Gbits/sec 0 3.77 MBytes [ 9][TX-C] 40.02-60.02 sec 4.04 GBytes 1.74 Gbits/sec 0 3.78 MBytes [ 11][TX-C] 40.02-60.02 sec 4.05 GBytes 1.74 Gbits/sec 0 3.81 MBytes [SUM][TX-C] 40.02-60.02 sec 16.2 GBytes 6.95 Gbits/sec 0 [ 13][RX-C] 40.02-60.02 sec 4.38 GBytes 1.88 Gbits/sec [ 15][RX-C] 40.02-60.02 sec 4.38 GBytes 1.88 Gbits/sec [ 17][RX-C] 40.02-60.02 sec 4.35 GBytes 1.87 Gbits/sec [ 19][RX-C] 40.02-60.02 sec 4.40 GBytes 1.89 Gbits/sec [SUM][RX-C] 40.02-60.02 sec 17.5 GBytes 7.52 Gbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ ID][Role] Interval Transfer Bitrate Retr [ 5][TX-C] 0.00-60.02 sec 12.0 GBytes 1.72 Gbits/sec 0 sender [ 5][TX-C] 0.00-60.02 sec 12.0 GBytes 1.72 Gbits/sec receiver [ 7][TX-C] 0.00-60.02 sec 12.1 GBytes 1.73 Gbits/sec 0 sender [ 7][TX-C] 0.00-60.02 sec 12.1 GBytes 1.73 Gbits/sec receiver [ 9][TX-C] 0.00-60.02 sec 12.1 GBytes 1.73 Gbits/sec 0 sender [ 9][TX-C] 0.00-60.02 sec 12.1 GBytes 1.73 Gbits/sec receiver [ 11][TX-C] 0.00-60.02 sec 12.1 GBytes 1.73 Gbits/sec 0 sender [ 11][TX-C] 0.00-60.02 sec 12.1 GBytes 1.73 Gbits/sec receiver [SUM][TX-C] 0.00-60.02 sec 48.3 GBytes 6.91 Gbits/sec 0 sender [SUM][TX-C] 0.00-60.02 sec 48.3 GBytes 6.91 Gbits/sec receiver [ 13][RX-C] 0.00-60.02 sec 13.1 GBytes 1.87 Gbits/sec 0 sender [ 13][RX-C] 0.00-60.02 sec 13.1 GBytes 1.87 Gbits/sec receiver [ 15][RX-C] 0.00-60.02 sec 13.1 GBytes 1.87 Gbits/sec 0 sender [ 15][RX-C] 0.00-60.02 sec 13.1 GBytes 1.87 Gbits/sec receiver [ 17][RX-C] 0.00-60.02 sec 13.0 GBytes 1.86 Gbits/sec 0 sender [ 17][RX-C] 0.00-60.02 sec 13.0 GBytes 1.86 Gbits/sec receiver [ 19][RX-C] 0.00-60.02 sec 13.1 GBytes 1.87 Gbits/sec 0 sender [ 19][RX-C] 0.00-60.02 sec 13.1 GBytes 1.87 Gbits/sec receiver [SUM][RX-C] 0.00-60.02 sec 52.3 GBytes 7.48 Gbits/sec 0 sender [SUM][RX-C] 0.00-60.02 sec 52.3 GBytes 7.48 Gbits/sec receiver iperf Done. |
Результат: 7.48 Гбит/с и 6.91 Гбит/с при одновременном использовании Rx и Tx. Было отслежено использование ЦП в Ubuntu и Proxmox VE (см. htop ниже), и ЦП, по-видимому, не является узким местом.
Итак, виртуализация действительно создает узкое место для двунаправленной передачи данных, но точная причина не совсем ясна. Для HTTP/FTP-сервера, работающего только на загрузку, это не имеет значения, однако торрент-сервер может пострадать в зависимости от трафика. В таких случаях предпочтительнее запускать ОС напрямую на оборудовании, а не через Proxmox VE. Если упущена какая-либо оптимизация — сообщите в комментариях.
Пора выключить виртуальную машину Ubuntu и запустить ВМ pfSense. Потребуется пакет iperf3. Обычно его можно установить через System->Package Manager, но возникла ошибка: «Unable to retrieve package information».
Поиск помощи на форумах Netgate затруднен из-за блокировки IP-адресов из Таиланда, однако решение было найдено на Reddit : достаточно открыть SSH-терминал и выполнить команду:
1 |
pkg-static install -fy pkg pfSense-repo pfSense-upgrade |
Теперь iperf3 можно установить через веб-интерфейс…
Это версия 3.15… Для тестирования она не идеальна, поскольку требуется как минимум iperf 3.16 с поддержкой многопоточности… Пакет был удален, а iperf3.18 установлен через командную строку:
1 2 |
fetch https://pkg.freebsd.org/FreeBSD:14:amd64/latest/All/iperf3-3.18.pkg pkg-static iperf3-3.18.pkg |
Убедимся в успешной установке:
1 2 3 |
iperf3 -v iperf 3.18 (cJSON 1.7.15) FreeBSD R2-Max-CNX-pfSense.home.arpa 14.0-CURRENT FreeBSD 14.0-CURRENT amd64 1400094 #1 RELENG_2_7_2-n255948-8d2b56da39c: Wed Dec 6 20:45:47 UTC 2023 root@freebsd:/var/jenkins/workspace/pfSense-CE-snapshots-2_7_2-main/obj/amd64/StdASW5b/var/jenkins/workspace/pfSense-CE-snapshots-2_7_2-main/sources/F amd64 |
Наконец можно протестировать 10GbE в pfSense.
- Отправка
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
[2.7.2-RELEASE][admin@R2-Max-CNX-pfSense.home.arpa]/root: iperf3 -t 60 -c 192.168.4.1 -i 20 -P 2 Connecting to host 192.168.4.1, port 5201 [ 5] local 192.168.4.198 port 58597 connected to 192.168.4.1 port 5201 [ 7] local 192.168.4.198 port 37003 connected to 192.168.4.1 port 5201 [ ID] Interval Transfer Bitrate Retr Cwnd [ 5] 0.00-20.00 sec 3.39 GBytes 1.45 Gbits/sec 390 2.84 KBytes [ 7] 0.00-20.00 sec 13.2 GBytes 5.68 Gbits/sec 409 237 KBytes [SUM] 0.00-20.00 sec 16.6 GBytes 7.14 Gbits/sec 799 - - - - - - - - - - - - - - - - - - - - - - - - - [ 5] 20.00-40.01 sec 1.59 GBytes 681 Mbits/sec 177 1.43 KBytes [ 7] 20.00-40.01 sec 15.5 GBytes 6.66 Gbits/sec 227 219 KBytes [SUM] 20.00-40.01 sec 17.1 GBytes 7.35 Gbits/sec 404 - - - - - - - - - - - - - - - - - - - - - - - - - [ 5] 40.01-60.01 sec 1.55 GBytes 664 Mbits/sec 165 39.9 KBytes [ 7] 40.01-60.01 sec 15.4 GBytes 6.63 Gbits/sec 217 552 KBytes [SUM] 40.01-60.01 sec 17.0 GBytes 7.30 Gbits/sec 382 - - - - - - - - - - - - - - - - - - - - - - - - - [ ID] Interval Transfer Bitrate Retr [ 5] 0.00-60.01 sec 6.52 GBytes 934 Mbits/sec 732 sender [ 5] 0.00-60.01 sec 6.52 GBytes 933 Mbits/sec receiver [ 7] 0.00-60.01 sec 44.2 GBytes 6.33 Gbits/sec 853 sender [ 7] 0.00-60.01 sec 44.2 GBytes 6.33 Gbits/sec receiver [SUM] 0.00-60.01 sec 50.7 GBytes 7.26 Gbits/sec 1585 sender [SUM] 0.00-60.01 sec 50.7 GBytes 7.26 Gbits/sec receiver iperf Done. |
- Загрузка
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
[2.7.2-RELEASE][admin@R2-Max-CNX-pfSense.home.arpa]/root: iperf3 -t 60 -c 192.168.4.1 -i 20 -P 2 -R Connecting to host 192.168.4.1, port 5201 Reverse mode, remote host 192.168.4.1 is sending [ 5] local 192.168.4.198 port 7779 connected to 192.168.4.1 port 5201 [ 7] local 192.168.4.198 port 58873 connected to 192.168.4.1 port 5201 [ ID] Interval Transfer Bitrate [ 5] 0.00-20.01 sec 3.65 GBytes 1.57 Gbits/sec [ 7] 0.00-20.01 sec 3.94 GBytes 1.69 Gbits/sec [SUM] 0.00-20.01 sec 7.58 GBytes 3.26 Gbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ 5] 20.01-40.02 sec 2.55 GBytes 1.09 Gbits/sec [ 7] 20.01-40.02 sec 4.13 GBytes 1.77 Gbits/sec [SUM] 20.01-40.02 sec 6.68 GBytes 2.87 Gbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ 5] 40.02-60.01 sec 3.66 GBytes 1.57 Gbits/sec [ 7] 40.02-60.01 sec 4.29 GBytes 1.84 Gbits/sec [SUM] 40.02-60.01 sec 7.95 GBytes 3.42 Gbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ ID] Interval Transfer Bitrate Retr [ 5] 0.00-60.01 sec 9.86 GBytes 1.41 Gbits/sec 1799 sender [ 5] 0.00-60.01 sec 9.85 GBytes 1.41 Gbits/sec receiver [ 7] 0.00-60.01 sec 12.4 GBytes 1.77 Gbits/sec 2748 sender [ 7] 0.00-60.01 sec 12.4 GBytes 1.77 Gbits/sec receiver [SUM] 0.00-60.01 sec 22.2 GBytes 3.18 Gbits/sec 4547 sender [SUM] 0.00-60.01 sec 22.2 GBytes 3.18 Gbits/sec receiver iperf Done. |
- Дуплексный режим
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 |
[2.7.2-RELEASE][admin@R2-Max-CNX-pfSense.home.arpa]/root: iperf3 -t 60 -c 192.168.4.1 -i 20 -P 2 --bidir Connecting to host 192.168.4.1, port 5201 [ 5] local 192.168.4.198 port 26504 connected to 192.168.4.1 port 5201 [ 7] local 192.168.4.198 port 37717 connected to 192.168.4.1 port 5201 [ 9] local 192.168.4.198 port 62054 connected to 192.168.4.1 port 5201 [ 11] local 192.168.4.198 port 65466 connected to 192.168.4.1 port 5201 [ ID][Role] Interval Transfer Bitrate Retr Cwnd [ 5][TX-C] 0.00-20.01 sec 724 MBytes 303 Mbits/sec 98 89.6 KBytes [ 7][TX-C] 0.00-20.01 sec 5.45 GBytes 2.34 Gbits/sec 292 94.1 KBytes [SUM][TX-C] 0.00-20.01 sec 6.16 GBytes 2.64 Gbits/sec 390 [ 9][RX-C] 0.00-20.01 sec 4.13 GBytes 1.77 Gbits/sec [ 11][RX-C] 0.00-20.01 sec 3.12 GBytes 1.34 Gbits/sec [SUM][RX-C] 0.00-20.01 sec 7.25 GBytes 3.11 Gbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ 5][TX-C] 20.01-40.01 sec 1.17 GBytes 504 Mbits/sec 31 515 KBytes [ 7][TX-C] 20.01-40.01 sec 5.56 GBytes 2.39 Gbits/sec 36 148 KBytes [SUM][TX-C] 20.01-40.01 sec 6.73 GBytes 2.89 Gbits/sec 67 [ 9][RX-C] 20.01-40.01 sec 2.32 GBytes 998 Mbits/sec [ 11][RX-C] 20.01-40.01 sec 3.54 GBytes 1.52 Gbits/sec [SUM][RX-C] 20.01-40.01 sec 5.86 GBytes 2.52 Gbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ 5][TX-C] 40.01-60.01 sec 1.04 GBytes 448 Mbits/sec 17 784 KBytes [ 7][TX-C] 40.01-60.01 sec 9.36 GBytes 4.02 Gbits/sec 15 227 KBytes [SUM][TX-C] 40.01-60.01 sec 10.4 GBytes 4.47 Gbits/sec 32 [ 9][RX-C] 40.01-60.01 sec 1.87 GBytes 804 Mbits/sec [ 11][RX-C] 40.01-60.01 sec 1.49 GBytes 640 Mbits/sec [SUM][RX-C] 40.01-60.01 sec 3.36 GBytes 1.44 Gbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ ID][Role] Interval Transfer Bitrate Retr [ 5][TX-C] 0.00-60.01 sec 2.92 GBytes 419 Mbits/sec 146 sender [ 5][TX-C] 0.00-60.01 sec 2.92 GBytes 418 Mbits/sec receiver [ 7][TX-C] 0.00-60.01 sec 20.4 GBytes 2.92 Gbits/sec 343 sender [ 7][TX-C] 0.00-60.01 sec 20.4 GBytes 2.92 Gbits/sec receiver [SUM][TX-C] 0.00-60.01 sec 23.3 GBytes 3.33 Gbits/sec 489 sender [SUM][TX-C] 0.00-60.01 sec 23.3 GBytes 3.33 Gbits/sec receiver [ 9][RX-C] 0.00-60.01 sec 8.32 GBytes 1.19 Gbits/sec 784 sender [ 9][RX-C] 0.00-60.01 sec 8.32 GBytes 1.19 Gbits/sec receiver [ 11][RX-C] 0.00-60.01 sec 8.15 GBytes 1.17 Gbits/sec 1239 sender [ 11][RX-C] 0.00-60.01 sec 8.15 GBytes 1.17 Gbits/sec receiver [SUM][RX-C] 0.00-60.01 sec 16.5 GBytes 2.36 Gbits/sec 2023 sender [SUM][RX-C] 0.00-60.01 sec 16.5 GBytes 2.36 Gbits/sec receiver iperf Done. |
Результаты далеки от целевых 9.42 Гбит/с: отправка — 7.26 Гбит/с, загрузка — 3.18 Гбит/с, дуплексный режим — 3.33/2.36 Гбит/с. Во время теста наблюдаются значительные колебания. Отметим, что тест проводился в двухъядерной ВМ pfSense под Proxmox VE. Оптимизация FreeBSD могла бы улучшить показатели, но без виртуализации результаты должны быть существенно выше. Учитывая уже потраченное на обзор время, этот тест пропускается…
Вместо этого запустим ВМ Ubuntu 24.04 и проведем тесты iperf3 от сервера Ubuntu к клиенту pfSense (обратное направление заблокировано настройками брандмауэра по умолчанию) в наихудшем сценарии:
- pfSense → Ubuntu
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 |
[2.7.2-RELEASE][admin@R2-Max-CNX-pfSense.home.arpa]/root: iperf3 -t 60 -c 192.168.4.215 -i 10 -P 2 Connecting to host 192.168.4.215, port 5201 [ 5] local 192.168.4.198 port 62919 connected to 192.168.4.215 port 5201 [ 7] local 192.168.4.198 port 29848 connected to 192.168.4.215 port 5201 [ ID] Interval Transfer Bitrate Retr Cwnd [ 5] 0.00-10.01 sec 466 MBytes 390 Mbits/sec 83 172 KBytes [ 7] 0.00-10.01 sec 3.80 GBytes 3.26 Gbits/sec 88 791 KBytes [SUM] 0.00-10.01 sec 4.26 GBytes 3.65 Gbits/sec 171 - - - - - - - - - - - - - - - - - - - - - - - - - [ 5] 10.01-20.00 sec 429 MBytes 360 Mbits/sec 93 1.43 KBytes [ 7] 10.01-20.00 sec 3.63 GBytes 3.12 Gbits/sec 105 84.1 KBytes [SUM] 10.01-20.00 sec 4.05 GBytes 3.48 Gbits/sec 198 - - - - - - - - - - - - - - - - - - - - - - - - - [ 5] 20.00-30.00 sec 297 MBytes 249 Mbits/sec 87 1.43 KBytes [ 7] 20.00-30.00 sec 3.81 GBytes 3.28 Gbits/sec 94 2.35 MBytes [SUM] 20.00-30.00 sec 4.10 GBytes 3.53 Gbits/sec 181 - - - - - - - - - - - - - - - - - - - - - - - - - [ 5] 30.00-40.00 sec 454 MBytes 381 Mbits/sec 95 177 KBytes [ 7] 30.00-40.00 sec 3.70 GBytes 3.18 Gbits/sec 97 442 KBytes [SUM] 30.00-40.00 sec 4.14 GBytes 3.56 Gbits/sec 192 - - - - - - - - - - - - - - - - - - - - - - - - - [ 5] 40.00-50.03 sec 354 MBytes 296 Mbits/sec 96 1.43 KBytes [ 7] 40.00-50.03 sec 3.91 GBytes 3.35 Gbits/sec 92 1.10 MBytes [SUM] 40.00-50.03 sec 4.26 GBytes 3.64 Gbits/sec 188 - - - - - - - - - - - - - - - - - - - - - - - - - [ 5] 50.03-60.01 sec 250 MBytes 210 Mbits/sec 95 1.43 KBytes [ 7] 50.03-60.01 sec 3.92 GBytes 3.38 Gbits/sec 92 306 KBytes [SUM] 50.03-60.01 sec 4.17 GBytes 3.59 Gbits/sec 187 - - - - - - - - - - - - - - - - - - - - - - - - - [ ID] Interval Transfer Bitrate Retr [ 5] 0.00-60.01 sec 2.20 GBytes 314 Mbits/sec 549 sender [ 5] 0.00-60.01 sec 2.20 GBytes 314 Mbits/sec receiver [ 7] 0.00-60.01 sec 22.8 GBytes 3.26 Gbits/sec 568 sender [ 7] 0.00-60.01 sec 22.8 GBytes 3.26 Gbits/sec receiver [SUM] 0.00-60.01 sec 25.0 GBytes 3.58 Gbits/sec 1117 sender [SUM] 0.00-60.01 sec 25.0 GBytes 3.57 Gbits/sec receiver iperf Done. |
- Ubuntu → pfSense
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 |
[2.7.2-RELEASE][admin@R2-Max-CNX-pfSense.home.arpa]/root: iperf3 -t 60 -c 192.168.4.215 -i 10 -P 2 -R Connecting to host 192.168.4.215, port 5201 Reverse mode, remote host 192.168.4.215 is sending [ 5] local 192.168.4.198 port 52024 connected to 192.168.4.215 port 5201 [ 7] local 192.168.4.198 port 59762 connected to 192.168.4.215 port 5201 [ ID] Interval Transfer Bitrate [ 5] 0.00-10.02 sec 1.43 GBytes 1.22 Gbits/sec [ 7] 0.00-10.02 sec 1.49 GBytes 1.27 Gbits/sec [SUM] 0.00-10.02 sec 2.91 GBytes 2.50 Gbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ 5] 10.02-20.00 sec 1.52 GBytes 1.31 Gbits/sec [ 7] 10.02-20.00 sec 1.52 GBytes 1.30 Gbits/sec [SUM] 10.02-20.00 sec 3.03 GBytes 2.61 Gbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ 5] 20.00-30.01 sec 1.11 GBytes 949 Mbits/sec [ 7] 20.00-30.01 sec 1.94 GBytes 1.67 Gbits/sec [SUM] 20.00-30.01 sec 3.05 GBytes 2.62 Gbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ 5] 30.01-40.02 sec 1.43 GBytes 1.23 Gbits/sec [ 7] 30.01-40.02 sec 1.60 GBytes 1.37 Gbits/sec [SUM] 30.01-40.02 sec 3.03 GBytes 2.60 Gbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ 5] 40.02-50.01 sec 1.18 GBytes 1.02 Gbits/sec [ 7] 40.02-50.01 sec 1.82 GBytes 1.57 Gbits/sec [SUM] 40.02-50.01 sec 3.00 GBytes 2.58 Gbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ 5] 50.01-60.02 sec 1.12 GBytes 959 Mbits/sec [ 7] 50.01-60.02 sec 1.93 GBytes 1.65 Gbits/sec [SUM] 50.01-60.02 sec 3.05 GBytes 2.61 Gbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ ID] Interval Transfer Bitrate Retr [ 5] 0.00-60.02 sec 7.79 GBytes 1.11 Gbits/sec 1456 sender [ 5] 0.00-60.02 sec 7.78 GBytes 1.11 Gbits/sec receiver [ 7] 0.00-60.02 sec 10.3 GBytes 1.47 Gbits/sec 1615 sender [ 7] 0.00-60.02 sec 10.3 GBytes 1.47 Gbits/sec receiver [SUM] 0.00-60.02 sec 18.1 GBytes 2.59 Gbits/sec 3071 sender [SUM] 0.00-60.02 sec 18.1 GBytes 2.59 Gbits/sec receiver iperf Done. |
- Двунаправленный (дуплексный)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 |
[2.7.2-RELEASE][admin@R2-Max-CNX-pfSense.home.arpa]/root: iperf3 -t 60 -c 192.168.4.215 -i 10 -P 2 --bidir Connecting to host 192.168.4.215, port 5201 [ 5] local 192.168.4.198 port 16419 connected to 192.168.4.215 port 5201 [ 7] local 192.168.4.198 port 27335 connected to 192.168.4.215 port 5201 [ 9] local 192.168.4.198 port 13205 connected to 192.168.4.215 port 5201 [ 11] local 192.168.4.198 port 55600 connected to 192.168.4.215 port 5201 [ ID][Role] Interval Transfer Bitrate Retr Cwnd [ 5][TX-C] 0.00-10.01 sec 680 MBytes 570 Mbits/sec 61 139 KBytes [ 7][TX-C] 0.00-10.01 sec 194 MBytes 163 Mbits/sec 43 20.0 KBytes [SUM][TX-C] 0.00-10.01 sec 874 MBytes 733 Mbits/sec 104 [ 9][RX-C] 0.00-10.01 sec 1.28 GBytes 1.10 Gbits/sec [ 11][RX-C] 0.00-10.01 sec 1.03 GBytes 881 Mbits/sec [SUM][RX-C] 0.00-10.01 sec 2.31 GBytes 1.98 Gbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ 5][TX-C] 10.01-20.02 sec 410 MBytes 343 Mbits/sec 31 129 KBytes [ 7][TX-C] 10.01-20.02 sec 214 MBytes 179 Mbits/sec 37 134 KBytes [SUM][TX-C] 10.01-20.02 sec 624 MBytes 523 Mbits/sec 68 [ 9][RX-C] 10.01-20.02 sec 1.36 GBytes 1.16 Gbits/sec [ 11][RX-C] 10.01-20.02 sec 1.09 GBytes 937 Mbits/sec [SUM][RX-C] 10.01-20.02 sec 2.45 GBytes 2.10 Gbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ 5][TX-C] 20.02-30.02 sec 529 MBytes 444 Mbits/sec 35 189 KBytes [ 7][TX-C] 20.02-30.02 sec 196 MBytes 164 Mbits/sec 39 153 KBytes [SUM][TX-C] 20.02-30.02 sec 725 MBytes 608 Mbits/sec 74 [ 9][RX-C] 20.02-30.02 sec 1.34 GBytes 1.15 Gbits/sec [ 11][RX-C] 20.02-30.02 sec 1.00 GBytes 863 Mbits/sec [SUM][RX-C] 20.02-30.02 sec 2.34 GBytes 2.01 Gbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ 5][TX-C] 30.02-40.02 sec 429 MBytes 360 Mbits/sec 40 229 KBytes [ 7][TX-C] 30.02-40.02 sec 240 MBytes 201 Mbits/sec 32 32.8 KBytes [SUM][TX-C] 30.02-40.02 sec 669 MBytes 561 Mbits/sec 72 [ 9][RX-C] 30.02-40.02 sec 982 MBytes 824 Mbits/sec [ 11][RX-C] 30.02-40.02 sec 1.41 GBytes 1.21 Gbits/sec [SUM][RX-C] 30.02-40.02 sec 2.37 GBytes 2.04 Gbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ 5][TX-C] 40.02-50.02 sec 489 MBytes 410 Mbits/sec 44 308 KBytes [ 7][TX-C] 40.02-50.02 sec 270 MBytes 226 Mbits/sec 30 217 KBytes [SUM][TX-C] 40.02-50.02 sec 759 MBytes 636 Mbits/sec 74 [ 9][RX-C] 40.02-50.02 sec 1.12 GBytes 965 Mbits/sec [ 11][RX-C] 40.02-50.02 sec 1.19 GBytes 1.02 Gbits/sec [SUM][RX-C] 40.02-50.02 sec 2.31 GBytes 1.99 Gbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ 5][TX-C] 50.02-60.02 sec 467 MBytes 391 Mbits/sec 53 1.43 KBytes [ 7][TX-C] 50.02-60.02 sec 182 MBytes 153 Mbits/sec 58 1.43 KBytes [SUM][TX-C] 50.02-60.02 sec 649 MBytes 544 Mbits/sec 111 [ 9][RX-C] 50.02-60.02 sec 1.31 GBytes 1.13 Gbits/sec [ 11][RX-C] 50.02-60.02 sec 1.10 GBytes 942 Mbits/sec [SUM][RX-C] 50.02-60.02 sec 2.41 GBytes 2.07 Gbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ ID][Role] Interval Transfer Bitrate Retr [ 5][TX-C] 0.00-60.02 sec 2.93 GBytes 420 Mbits/sec 264 sender [ 5][TX-C] 0.00-60.02 sec 2.93 GBytes 420 Mbits/sec receiver [ 7][TX-C] 0.00-60.02 sec 1.27 GBytes 181 Mbits/sec 239 sender [ 7][TX-C] 0.00-60.02 sec 1.26 GBytes 181 Mbits/sec receiver [SUM][TX-C] 0.00-60.02 sec 4.20 GBytes 601 Mbits/sec 503 sender [SUM][TX-C] 0.00-60.02 sec 4.20 GBytes 601 Mbits/sec receiver [ 9][RX-C] 0.00-60.02 sec 7.37 GBytes 1.06 Gbits/sec 1015 sender [ 9][RX-C] 0.00-60.02 sec 7.37 GBytes 1.05 Gbits/sec receiver [ 11][RX-C] 0.00-60.02 sec 6.82 GBytes 976 Mbits/sec 1197 sender [ 11][RX-C] 0.00-60.02 sec 6.82 GBytes 976 Mbits/sec receiver [SUM][RX-C] 0.00-60.02 sec 14.2 GBytes 2.03 Gbits/sec 2212 sender [SUM][RX-C] 0.00-60.02 sec 14.2 GBytes 2.03 Gbits/sec receiver iperf Done. |
Вот htop во время теста Ubuntu на pfSense. Запрашивать от Intel N100 обработку двух виртуальных машин, взаимодействующих через 10GbE на одном устройстве, — это слишком высокая нагрузка 🙂
Заключение
iKOOLCORE R2 Max отлично справляется с сетевыми операциями 10GbE благодаря четырехъядерному процессору Intel N100 при однонаправленной и двунаправленной (полнодуплексной) передаче данных, но может потребоваться задействовать несколько ядер, особенно для двунаправленных операций. Удалось достичь 9.41 Гбит/с во всех сценариях с использованием iperf3 между R2 Max под OpenWrt (сервер) и R2 Max под Proxmox VE (Debian-клиент) при условии применения многопоточности.
При использовании виртуальных машин в Proxmox VE результаты сильнее варьировались и зависели от выбранной ОС. Например, с виртуальной машиной Ubuntu 24.04 были получены значительные показатели: 9.42 Гбит/с DL, 9.42 Гбит/с UL и 7.48/6.91 Гбит/с (полнодуплекс), тогда как в виртуальной машине pfSense 2.7.2 результаты заметно снизились до 7.26 Гбит/с DL, 3.18 Гбит/с UL и 3.33/2.36 Гбит/с (FD). Наихудший сценарий — полнодуплексная передача с выделением каждого 10GbE-интерфейса отдельной виртуальной машине, где iperf3 показал лишь 2.03/1.06 Гбит/с из-за ограничений CPU (и, вероятно, других подсистем). В таком случае лучшая производительность должна быть достижима с моделью Core i3-N305.
Благодарим iKOOLCORE за предоставленный R2 Max для обзора. Мини-ПК на N100 и Core i3-N305 продаются по соответственно $349 и $449 в тестовой конфигурации (8 ГБ ОЗУ, 128 ГБ SSD), но систему без комплектующих можно приобрести всего за $299. Дополнительную скидку 5% предоставляет CNXSOFT промокод
Выражаем свою благодарность источнику, с которого взята и переведена статья, сайту cnx-software.com.
Оригинал статьи вы можете прочитать здесь.
У меня модель N305. Чип 10gbe не поддерживается в FreeBSD, поэтому невозможна сквозная передача в OPNsense на Proxmox…
Хотя после настройки удалось достичь 6.2 Гбит/с через OPNsense!