Обзор iKOOLCORE R2 Max – Часть 2: 10GbE на мини-ПК с Intel N100 с OpenWrt (QWRT), Proxmox VE, Ubuntu 24.04 и pfSense 2.7.2

Аппаратная часть 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

Стандартная OpenWrt не содержит драйверов для сетевой карты AQC113C-B1-C 10GbE, поэтому IKOOLCORE подготовил образ «OpenWrt 23.05», точнее, образ на базе форка QWRT со всеми необходимыми драйверами. Конфигурация предусматривает WAN-порт на разъеме 2.5GbE (как показано на фото ниже), а второй порт 2.5GbE и два порта 10GbE работают в LAN с подсетью 192.168.1.0 и включенным DHCP-сервером.

iKOOLCORE R2 Max OpenWrt LAN WAN Ports

Для подключения к интернету WAN-порт соединен с коммутатором 2.5GbE, а правый порт 10GbE LAN подключен к ноутбуку для доступа к веб-интерфейсу. Дополнительно подключен HDMI-монитор для отслеживания предупреждений и ошибок.

Загружен образ QWRT-R24.11.18-x86-64-generic-squashfs-combined-efi.img.gz и записан на USB-накопитель:

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 и подачи питания началась загрузка. Процесс занял некоторое время, после чего на мониторе появились сообщения.

iKOOLCORE R2 Max OpenWrt Instllation USB flash drive

Из-за использования IP 192.168.1.1 в основном роутере, WAN-порт временно отключен для настройки OpenWrt/QWRT через веб-интерфейс LuCI по адресу http://192.168.1.1. Имя пользователя по умолчанию – «root», пароль – «Password».

iKOOLCORE R2 Max OpenWrt Login

Настройка прошла успешно, но навигация затруднена без знания китайского языка.

QRT Luci Dashboard Chinese

Для переключения на английский: перейти в «系统», выбрать вкладку «语言和界面», затем в выпадающем списке «语言» выбрать English.

QWRT Change Language to English

После сохранения интерфейс временно остается китайским, но при переходе на другую страницу язык меняется. В разделе Overview подтверждается использование R2 Max с процессором Intel N100 под управлением QWRT R24.11 на ядре Linux 6.12.

QWRT English Interface

Для устранения конфликта подсетей изменена LAN-подсеть: в разделе Сеть->Интерфейсы

iKOOLCORE R2 Max OpenWrt WAN port

выбрана вкладка LAN, после чего IPv4-адрес изменен с 192.168.1.1 на 192.168.4.1.

iKOOLCORE R2 Max OpenWrt LAN IPv4 address

После сохранения и переподключения к веб-интерфейсу по адресу http://192.168.4.1 подтверждено получение ноутбуком нового IP-адреса. На этом этапе восстановлено подключение WAN.

iKOOLCORE R2 Max QWRT new LAN IP address

Дополнительно изменен пароль роутера на более безопасный, чем «Password».

QWRT Luci Change Password

Все изменения пока сохранены на USB-накопителе. Для установки QWRT на внутренний SSD выполнены действия по инструкции с сайта документации OpenWrt . Сначала осуществлен доступ по SSH с установленным паролем:

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:

opkg update
opkg install lsblk
lsblk

Результат выполнения команды:

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.

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 не распознала образ):

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).

iKOOLCORE R2 Max Proxmox VE Installation FQDN CIRD Gateway

Перед завершением установки проверены параметры и диск назначения (/dev/nvme0n1).

Proxmox VE Installation Summary

Доступ к панели Proxmox VE осуществляется через веб-браузер по адресу 192.168.4.253:8006 или ikoolcore-r2-max-cnx.local:8006 с использованием учетных данных, заданных при установке.

Proxmox VE login

iKOOLCORE R2 Max Proxmox VE Dashboard

Все функционирует корректно. Перед добавлением гостевых ОС предстоит проверить производительность 10GbE на модели с пассивным охлаждением (OpenWrt) и активным (Proxmox VE) для оценки интерфейсов без уровня виртуализации.

Тестирование 10GbE на iKOOLCORE R2 Max с iperf3

Левые порты 10GbE устройств соединены метровым кабелем Ethernet (вероятно, Cat 5). Порт 2.5GbE OpenWrt-устройства подключен к ноутбуку, другой порт 2.5GbE – к коммутатору для доступа в интернет.

OpenWrt Proxmox VE 10GbE test bed

Через SSH к устройству Proxmox VE проверена скорость соединения:

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:

  • Отправка данных с клиента:
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.

  • Загрузка данных с сервера:
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 – требует улучшения.

Тест в дуплексном режиме (двунаправленная передача):

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:

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 перегрев сетевой карты не наблюдался.

aqc113c-b1-c script temperature monitoring Отмечена значительная вариативность результатов тестов.

- - - - - - - - - - - - - - - - - - - - - - - - -
[ 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 LAN Cables

Повторный тест с кабелем Cat6:

  • Отправка:
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.

  • Загрузка
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.

  • Дуплексный режим
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 single core CPU usage

Предпринят поиск метода задействования всех четырех ядер в iperf3. Установлено, что iperf 3.16 поддерживает многопоточность, опыт документирован. Образ QWRT уже содержал iperf 3.17.1, но в Proxmox VE использовалась iperf 3.12. Для тестов была собрана версия iperf 3.18 из исходного кода. Воспроизводить процесс здесь не будем, перейдем сразу к результатам.

Поскольку теперь можно использовать параллельные потоки на всех четырех ядрах с опцией «-P 4», повторим тест на скачивание:

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» (этого достаточно, и вывод менее перегружен):

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 интерфейс пассивно охлаждаемого маршрутизатора с аналогичными результатами:

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:

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 доступен через зеркало при необходимости.

Proxmox VE 8.3 Upload ISO

При установке Ubuntu 24.04 в основном следовали инструкции для Ubuntu 22.04 на Proxmox со сквозной передачей видео и USB для задействования портов HDMI, USB-мыши и клавиатуры. Детали опустим, приведем лишь сводку: создана виртуальная машина с параметрами (4 ядра, 4 ГБ ОЗУ, 64 ГБ HDD).

Ubuntu 24.04 Proxmox VE Installation

После запуска выполнена установка 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 представлена ниже.

Proxmox VE R2 Max Ubuntu 24.04 configuration passthrough

После перезапуска Ubuntu 24.04 работала с HDMI-выводом, USB-клавиатурой и мышью без использования веб-интерфейса Proxmox VE. Тесты 10GbE будут выполнены позже, но предварительные результаты выглядят положительно (см. фото).

iKOOLCORE R2 Max Review Proxmox VE Ubuntu 22.04

Теперь протестируем pfSense, хотя есть сомнения из-за комментария читателя :

У меня модель N305. Чип 10gbe не поддерживается в FreeBSD, поэтому невозможна сквозная передача в OPNsense на Proxmox…

Хотя после настройки удалось достичь 6.2 Гбит/с через OPNsense!

В типовой конфигурации два порта 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

Proxmox VE Network Interfaces

Не забудьте нажать «Apply Configuration» здесь, иначе при запуске ВМ Proxmox VE выдаст ошибку об отсутствии интерфейса vmbr1.

Вот конфигурация для pfSense 2.7.2 в Proxmox VE после добавления vmbr1 и vmbr2. Важно выбрать Default (SeaBIOS) для BIOS, а не UEFI, иначе загрузка не удастся.

Proxmox VE pfSense 2.7.2 hardware

Я установил pfSense в Proxmox используя те же инструкции, что и для iKOOLCORE R2 в прошлом году. Для WAN настроен DHCP с сервера OpenWrt, а для LAN — 192.168.6.1. Обратите внимание, что vmbr1 (10GbE) должен быть назначен на vtnet1, а vmbr2 (2.5GbE) — на vtnet0.

pfSense 10GbE WAN 2.5GbE LAN configuration

iKOOLCORE R2 Max pfSense 2.7.2 WAN LAN Configuration

Теперь кабель Ethernet перемещается с ноутбука на порт 2.5GbE для завершения настройки pfSense через 192.168.6.1. Для начальной конфигурации необходимо использовать имя пользователя и пароль администратора по умолчанию. По завершении мастера настройки потребуется изменить пароль администратора. Эти шаги подробно описаны в предыдущих инструкциях по pfSense, поэтому здесь они не рассматриваются. В результате pfSense успешно запущен и работает.

iKOOLCORE R2 Max pfSense 2.7.2 dashboard

Однако доступ в Интернет отсутствовал из-за проблемы с разрешением DNS. Для решения проблемы в разделе Services->DNS Resolver была активирована опция «DNS Query Forwarding».

pfSense 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):

  • Отправка
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.

  • Загрузка
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 Гбит/с. Это обнадеживает. Теперь попробуем полнодуплексную передачу:

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 ниже), и ЦП, по-видимому, не является узким местом.

Proxmox VE Ubuntu CPU usage htop

Итак, виртуализация действительно создает узкое место для двунаправленной передачи данных, но точная причина не совсем ясна. Для HTTP/FTP-сервера, работающего только на загрузку, это не имеет значения, однако торрент-сервер может пострадать в зависимости от трафика. В таких случаях предпочтительнее запускать ОС напрямую на оборудовании, а не через Proxmox VE. Если упущена какая-либо оптимизация — сообщите в комментариях.

Пора выключить виртуальную машину Ubuntu и запустить ВМ pfSense. Потребуется пакет iperf3. Обычно его можно установить через System->Package Manager, но возникла ошибка: «Unable to retrieve package information».

pfSense Package Manager Unable to retrieve package information

Поиск помощи на форумах Netgate затруднен из-за блокировки IP-адресов из Таиланда, однако решение было найдено на Reddit : достаточно открыть SSH-терминал и выполнить команду:

pkg-static install -fy pkg pfSense-repo pfSense-upgrade

Теперь iperf3 можно установить через веб-интерфейс…

iperf 3.15 pfSense Это версия 3.15… Для тестирования она не идеальна, поскольку требуется как минимум iperf 3.16 с поддержкой многопоточности… Пакет был удален, а iperf3.18 установлен через командную строку:

fetch https://pkg.freebsd.org/FreeBSD:14:amd64/latest/All/iperf3-3.18.pkg
pkg-static iperf3-3.18.pkg

Убедимся в успешной установке:

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.

  • Отправка
[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.

  • Загрузка
[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.

  • Дуплексный режим
[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 могла бы улучшить показатели, но без виртуализации результаты должны быть существенно выше. Учитывая уже потраченное на обзор время, этот тест пропускается…

iKOOLCORE R2 Max 10GbE Intel N100 mini PC review

Вместо этого запустим ВМ Ubuntu 24.04 и проведем тесты iperf3 от сервера Ubuntu к клиенту pfSense (обратное направление заблокировано настройками брандмауэра по умолчанию) в наихудшем сценарии:

  • pfSense → Ubuntu
[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
[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.

  • Двунаправленный (дуплексный)
[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 на одном устройстве, — это слишком высокая нагрузка 🙂

Proxmox VE HTOP 10GbE pfSense Ubuntu iperf3

Заключение

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.

Оригинал статьи вы можете прочитать здесь.

0 0 votes
Article Rating
Подписаться
Уведомление о
guest

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.

0 Комментарий
Oldest
Newest Most Voted
Inline Feedbacks
View all comments