iPerf3 is een tool om actief de maximale bandbreedte te meten die op een IP-netwerk kan worden bereikt. Het ondersteunt het aanpassen van verschillende parameters met betrekking tot timing, buffers en protocollen (TCP, UDP, SCTP met IPv4 en IPv6). Voor elke test rapporteert het bandbreedte, verlies en andere parameters. Dit is een nieuwe implementatie die geen code deelt met de originele iPerf en niet achterwaarts compatibel is. iPerf werd oorspronkelijk ontwikkeld door NLANR/DAST. iPerf3 werd voornamelijk ontwikkeld door ESnet/Lawrence Berkeley National Laboratory.
De iperf-familie van tools voert actieve metingen uit om de maximale bandbreedte te bepalen die op een IP-netwerk kan worden bereikt. Het ondersteunt het aanpassen van verschillende parameters met betrekking tot timing, protocollen en buffers. Voor elke test rapporteert het de gemeten doorvoer, verlies en andere parameters.
Deze release, soms aangeduid als iperf3, is een herontwerp van de originele versie ontwikkeld door NLANR / DAST. IPERF3 is een nieuwe implementatie vanaf de grond die streeft naar een kleinere, eenvoudigere codebase, en een versie van de bibliotheek die in andere programma's kan worden gebruikt. IPERF3 bevat ook functies van veel andere tools zoals NUTTCP en Netperf, die ontbreken in het originele IPERF. Deze omvatten bijvoorbeeld zero copy mode en optionele JSON-uitvoer. Let op dat iperf3 niet achterwaarts compatibel is met de oorspronkelijke iperf.
iPerf3 kan worden gebruikt om de netwerkcommunicatiesnelheid van het apparaat te testen, en iPerf3 kan worden geïnstalleerd op twee computerapparaten, één als server en één als client, en de communicatiesnelheid kan worden getest door berichten naar elkaar te sturen via iPerf3.
De iPerf3-parameters zijn als volgt:
Usage: iperf [-s|-c host] [options] iperf [-h|--help] [-v|--versie]
Server of Client: -p, --poort # serverpoort om op te luisteren/verbinding mee te maken -f, --formaat [kmgKMG] formaat te rapporteren: Kbits, Mbits, KBytes, MBytes -i, --interval # seconden tussen periodieke bandbreedterapporten -F, --bestandsnaam xmit/recv het opgegeven bestand -B, --bind <host> bind aan een specifieke interface -V, --uitgebreide uitvoer -J, --json output in JSON-formaat --logbestand f verzend uitvoer naar een logbestand -d, --debug emitteren debug-output -v, --versie toont versie-informatie en sluit af -h, --help dit bericht te tonen en stop Serverspecifiek: -s, --server draait in servermodus -D, --daemon runt de server als een daemon -I, --pidfile file write PID file -1, --eenmalig afhandelen van één clientverbinding en dan afsluiten Klantspecifiek: -c, --client <host> in clientmodus, verbinding maakt met <host> -u, --udp gebruikt UDP in plaats van TCP -b, --bandbreedte #[KMG][/#] doelbandbreedte in bits/sec (0 voor onbeperkt) (standaard 1 Mbit/sec voor UDP, onbeperkt voor TCP) (optionele slash en pakkettelling voor burst-modus) -t, --tijd # tijd in seconden om te verzenden voor (standaard 10 seconden) -n, --bytes #[KMG] aantal bytes te verzenden (in plaats van -t) -k, --blokaantal #[KMG] aantal blokken (pakketten) om te verzenden (in plaats van -t of -n) -l, --len #[KMG] lengte van de buffer om te lezen of te schrijven (standaard 128 KB voor TCP, 8 KB voor UDP) --cport <port> binden aan een specifieke clientpoort (TCP en UDP, standaard: tijdelijke poort) -P, --parallel # aantal parallelle clientstromen om uit te voeren -R, --reverse run in reverse mode (server stuurt, client ontvangt) -w, --venster #[KMG] stel venstergrootte / socketbuffer grootte in -M, --set-mss # stel TCP/SCTP maximale segmentgrootte in (MTU - 40 bytes) -N, --geen-vertraging ingesteld TCP/SCTP zonder vertraging, waardoor Nagle's algoritme wordt uitgeschakeld -4, --versie 4 gebruikt alleen IPv4 -6, --versie 6 gebruikt alleen IPv6 -S, --tos N stel het IP-'type dienst' in -Z, --zerocopy gebruik een 'zero copy'-methode om data te verzenden -O, --laat N weg Laat de eerste n seconden weg -T, --titel str voorvoegsel elke uitvoerregel met deze string --get-server-output krijg resultaten van server --udp-counters-64bit gebruiken 64-bit tellers in UDP-testpakketten
[KMG] geeft opties aan die een K/M/G-achtervoegsel ondersteunen voor kilo-, mega- of giga-
IPERF3 homepage op:http://software.es.net/iperf/ Meld bugs bij: https://github.com/esnet/iperf Windows 64-bit downloadadres:De hyperlink-login is zichtbaar.
LINUX-servers, als voorbeeld CentOS, kunnen de iPerf3-tool installeren met het yum-commando; het commando is als volgt:
server
Met de Linux-server aan serverzijde voer je het volgende commando uit:
klant
Met mijn lokale computer als clientzijde voerde ik het volgende commando uit:
Opmerking:192.168.50.227 is het IP-adres aan de Sever-zijde
samenvatting
Het serverlogboek toont aan dat er een testverzoek is ontvangen van 192.168.50.243, bronpoort 22376. De clientzijde voert een continue test uit van 10 seconden en toont het aantal verzonden bytes per seconde en bandbreedte-informatie. Verzonden en ontvangen statistieken worden samengevat nadat de test is afgerond. Het luisteren naar poort 5201 gaat door nadat de clientverbinding is gesloten.
Verbinding met host 192.168.50.227, poort 5201 [ 4] lokaal 192.168.50.243 poort 22377 verbonden met 192.168.50.227 poort 5201 [ID] Intervaloverdrachtsbandbreedte [ 4] 0,00-1,00 sek 112 MBytes 943 Mbit/sek [ 4] 1,00-2,00 sek 112 MBytes 940 Mbit/sek [ 4] 2,00-3,00 sec 112 MBytes 941 Mbit/s [ 4] 3,00-4,00 sec 112 MBytes 940 Mbit/s [ 4] 4,00-5,00 sek 112 MBytes 941 Mbit/sek [ 4] 5,00-6,00 sec 112 MBytes 941 Mbit/sec [ 4] 6,00-7,00 sec 112 MBytes 942 Mbit/sec [ 4] 7,00-8,00 sec 112 MBytes 941 Mbit/s [ 4] 8,00-9,00 sec 112 MBytes 942 Mbit/sek [ 4] 9.00-10.00 sec 112 MBytes 942 Mbit/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ID] Intervaloverdrachtsbandbreedte [ 4] 0,00-10,00 sec 1,10 GBytes 941 Mbits/sec zender [ 4] 0,00-10,00 sec 1,10 GBytes 941 Mbits/sec ontvanger
Afgesloten. Zowel de server- als clientapparaten zijn Gigabit Etherports, en de routers zijn ook Gigabit Etherports, dus een bandbreedte van 941 Mbits/sec is normaal.
Test virtuele machines onder ESXI
Beide zijn CentOS-systemen, en de fysieke router krijgt een privé IP-adres toegewezen, dat wordt getest via het privé-IP als volgt:
Verbinding met host 192.168.50.227, poort 5201 [ 5] Local 192.168.50.131 poort 35394 verbonden met 192.168.50.227 poort 5201 [ ID] Intervaloverdracht Bitrate Retr Cwnd [ 5] 0,00-1,00 sek 2,72 GBytes 23,3 Gbits/sec 0 1,39 MBytes [ 5] 1,00-2,00 sec 2,74 GBytes 23,5 Gbits/sec 0 1,48 MBytes [ 5] 2,00-3,00 sek 2,60 GBytes 22,3 Gbit/sec 0 1,48 MBytes [ 5] 3,00-4,00 sec 2,58 GBytes 22,2 Gbits/sec 0 1,48 MBytes [ 5] 4.00-5.00 sec 2.67 GBytes 23.0 Gbits/sec 0 1.48 MBytes [ 5] 5,00-6,00 sec 2,65 GBytes 22,7 Gbits/sec 0 1,48 MBytes [ 5] 6,00-7,00 sec 2,67 GBytes 23,0 Gbits/sec 0 1,48 MBytes [ 5] 7,00-8,00 sec 2,64 GBytes 22,7 Gbits/sec 0 1,48 MBytes [ 5] 8.00-9.00 sec 2.63 GBytes 22.6 Gbits/sec 0 1.48 MBytes [ 5] 9.00-10.00 sec 2.67 GBytes 22.9 Gbits/sec 0 1.48 MBytes - - - - - - - - - - - - - - - - - - - - - - - - - [ ID] Intervaloverdracht Bitrate Retr [ 5] 0,00-10,00 sek 26,6 GBytes 22,8 Gbits/sec 0 sender [ 5] 0,00-10,04 sec 26,6 GBytes 22,7 Gbits/sec ontvanger
Afgesloten. Dit is een beetje abnormaal, want ik ben een Gigabit-router en de testsnelheid is 22,7 Gbit/sec, is dat niet via een fysieke netwerkkaart?
Toegangsinformatie:https://communities.vmware.com/t ... Routes/ta-p/2783083
VM1 en VM2 zijn verbonden met dezelfde vSwitch, genaamd "vSwitch1", dezelfde poortgroep genaamd Production en ook dezelfde VLAN genaamd VLAN 20, en beide draaien ook op dezelfde ESXi-host, genaamd ESX1. Netwerkverkeer tussen deze VM's (VM1 en VM2) gaat niet naar fysieke netwerkkaarten op de ESXi-host en deze frames worden ook niet doorgestuurd naar het fysieke netwerk zoals fysieke switches en routers, omdat VM's dat wel doen communiceren binnen de vSwitch en resulteert in een hogere netwerksnelheid en lagere netwerklatentie. VM1 en VM2 zijn verbonden met dezelfde vSwitch genaamd "vSwitch1", dezelfde poortgroep genaamd Production, en hetzelfde VLAN genaamd VLAN 20, en beide draaien op dezelfde ESXi-host genaamd ESX1. Netwerkverkeer tussen deze VM's (VM1 en VM2).Gaat niet naar het fysieke netwerkpunt op de ESXi-host, en deze frames ookHet wordt niet doorgestuurd naar het fysieke netwerk(zoals fysieke switches en routers) omdat VM's binnen de vSwitch communiceren, wat resulteert in hogere netwerksnelheden en minder netwerklatentie.
Ik heb de omgeving zelf getest.Twee VM's zitten op dezelfde host en vSwitch, maar niet op dezelfde poortgroep, het lijkt erop dat het niet wordt doorgestuurd naar de fysieke netwerkkaart en het fysieke netwerk.
|