La Fibre
Télécom => Logiciels et systèmes d'exploitation => Iperf => Discussion démarrée par: dabamax le 20 décembre 2018 à 21:09:22
-
Bonjour
Superbe perf en monothread TCP en Reverse avec un débit moyen à 9,02 Gbps
iperf3 -c 192.168.13.5 -w 4000k -t 5 -R
Connecting to host 192.168.13.5, port 5201
Reverse mode, remote host 192.168.13.5 is sending
[ 4] local 192.168.13.1 port 58787 connected to 192.168.13.5 port 5201
[ ID] Interval Transfer Bandwidth
[ 4] 0.00-1.00 sec 1.02 GBytes 8.79 Gbits/sec
[ 4] 1.00-2.00 sec 1.02 GBytes 8.77 Gbits/sec
[ 4] 2.00-3.00 sec 1.02 GBytes 8.77 Gbits/sec
[ 4] 3.00-4.00 sec 1.08 GBytes 9.29 Gbits/sec
[ 4] 4.00-5.00 sec 1.10 GBytes 9.45 Gbits/sec
[ ID] Interval Transfer Bandwidth Retr
[ 4] 0.00-5.00 sec 5.25 GBytes 9.02 Gbits/sec 46900 sender
[ 4] 0.00-5.00 sec 5.25 GBytes 9.02 Gbits/sec receiver
Mais en UDP, ici je force à 3 Gbps, impossible de dépasser les 2 Gbps depuis le même serveur de mon lab
iperf3 -c 192.168.13.5 -u -l 1300 -b 3G -t 5 -R
Connecting to host 192.168.13.5, port 5201
Reverse mode, remote host 192.168.13.5 is sending
warning: Unable to set socket pacing, using application pacing instead
[ 4] local 192.168.13.1 port 44358 connected to 192.168.13.5 port 5201
[ ID] Interval Transfer Bandwidth Jitter Lost/Total Datagrams
[ 4] 0.00-1.00 sec 235 MBytes 1.97 Gbits/sec 0.003 ms 7350/196549 (3.7%)
[ 4] 1.00-2.00 sec 237 MBytes 1.99 Gbits/sec 0.001 ms 33/191180 (0.017%)
[ 4] 2.00-3.00 sec 228 MBytes 1.91 Gbits/sec 0.006 ms 4787/188581 (2.5%)
[ 4] 3.00-4.00 sec 232 MBytes 1.94 Gbits/sec 0.008 ms 683/187585 (0.36%)
[ 4] 4.00-5.00 sec 232 MBytes 1.94 Gbits/sec 0.002 ms 363/187159 (0.19%)
[ ID] Interval Transfer Bandwidth Jitter Lost/Total Datagrams
[ 4] 0.00-5.00 sec 1.15 GBytes 1.98 Gbits/sec 0.005 ms 13216/951094 (1.4%)
[ 4] Sent 951094 datagrams
Jusqu'à maintenant tous mes tests UDP étaient meilleurs en UDP qu'en TCP mais avec des interfaces 1 Gbps. UDP à 10 Gbps nécessiterait-t-il un petit debuggage ?
Cordialement
-
pacing ? buffer size ?
ca fait pareil sans -R et avec '--get-server-output' ?
-
faut check le cpu c'est peut-etre simplement trop d'irq a cause du manque d'offload sur la carte. En TCP l'offload permet d'envoyer et recevoir des grands paquets d'un coup gerés par la carte réseau. En UDP y'a peut-etre pas d'offload donc bien plus de context switch (kernel<->user), d'irq et donc de charge cpu (l'offload udp c'est UFO).
Augmenter la taille des socket buffers peut jouer.
-
pourquoi "-l 1300" aussi ?
-
En effet tu aurais peut-être intérêt à ne pas limiter la taille des datagrammes UDP à 1300 et même à la forcer à une taille bien supérieure à la MTU (16k par exemple ?), pour laisser le driver ou la NIC faire le travail plutôt que Iperf qui travaille en mode user et va générer un grand nombre de syscalls.
Pour l'Offload UDP, outre UFO qui va faire travailler le HW si la NIC le supporte, il y a aussi à défaut GSO qui va faire le travail de fragmentation au niveau du driver, donc en mode kernel, ce qui ne décharge pas totalement le CPU de ce travail mais limite fortement les context switch qui sont très couteux.
-
Bonjour et merci à vous deux
Mon besoin était d'avoir un flux UDP avecx une BP d'au moins 4 Gbps et .... c'est gagné.
iperf3 -u -c 192.168.13.5 -b 9G -l 16k -w 10M -i 1 -R
Connecting to host 192.168.13.5, port 5201
Reverse mode, remote host 192.168.13.5 is sending
warning: Unable to set socket pacing, using application pacing instead
[ 4] local 192.168.13.1 port 40739 connected to 192.168.13.5 port 5201
[ ID] Interval Transfer Bandwidth Jitter Lost/Total Datagrams
[ 4] 0.00-1.00 sec 658 MBytes 5.52 Gbits/sec 0.029 ms 25196/67289 (37%)
[ 4] 1.00-2.00 sec 660 MBytes 5.54 Gbits/sec 0.029 ms 24017/66249 (36%)
[ 4] 2.00-3.00 sec 691 MBytes 5.79 Gbits/sec 0.005 ms 27370/71574 (38%)
[ 4] 3.00-4.00 sec 691 MBytes 5.80 Gbits/sec 0.022 ms 25276/69505 (36%)
[ 4] 4.00-5.00 sec 672 MBytes 5.64 Gbits/sec 0.034 ms 26073/69100 (38%)
[ 4] 5.00-6.00 sec 650 MBytes 5.45 Gbits/sec 0.016 ms 24308/65923 (37%)
[ 4] 6.00-7.00 sec 686 MBytes 5.75 Gbits/sec 0.025 ms 25232/69137 (36%)
[ 4] 7.00-8.00 sec 645 MBytes 5.41 Gbits/sec 0.026 ms 26524/67801 (39%)
[ 4] 8.00-9.00 sec 599 MBytes 5.02 Gbits/sec 0.046 ms 32133/70444 (46%)
[ 4] 9.00-10.00 sec 571 MBytes 4.79 Gbits/sec 0.013 ms 33192/69715 (48%)
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bandwidth Jitter Lost/Total Datagrams
[ 4] 0.00-10.00 sec 10.5 GBytes 9.00 Gbits/sec 0.013 ms 269321/686737 (39%)
[ 4] Sent 686737 datagrams
Cordialement