Delen via


Netwerkdoorvoer van virtuele machines testen met behulp van NTTTCP

Samenvatting

In dit artikel wordt beschreven hoe u het gratis hulpprogramma NTTTCP van Microsoft gebruikt om netwerkbandbreedte en doorvoerprestaties te testen op Azure Windows of virtuele Linux-machines (VM's). Een hulpprogramma zoals NTTTCP is gericht op het netwerk voor het testen en minimaliseert het gebruik van andere resources die van invloed kunnen zijn op de prestaties.

Vereiste voorwaarden

  • Een Azure-account met een actief abonnement. Gratis een account maken
  • Twee virtuele Windows- of Linux-machines in Azure. Maak een Windows virtuele machine of maak een virtuele Linux-machine.
    • Als u de doorvoer wilt testen, hebt u twee VM's van dezelfde grootte nodig om te kunnen functioneren als afzender en ontvanger. De twee VM's moeten zich in dezelfde nabijheidsplaatsingsgroep of beschikbaarheidsset bevinden, zodat u hun interne IP-adressen kunt gebruiken en load balancers kunt uitsluiten van de test.
    • Noteer het aantal VM-kernen en het IP-adres van de ontvanger-VM voor de opdrachten. Zowel de opdrachten van de afzender als de ontvanger gebruiken het IP-adres van de ontvanger.

Opmerking

Testen met behulp van een virtueel IP-adres is mogelijk, maar valt buiten het bereik van dit artikel.

Voorbeelden die in dit artikel worden gebruikt

Configuratie Waarde
IP-adres van ontvanger-VM 10.0.0.5
Aantal VM-kernen 2

Doorvoer testen met Windows-VM's of Linux-VM's

U kunt de doorvoer van Windows VM's testen met behulp van NTTTCP of vanaf Linux-VM's met behulp van NTTTCP-for-Linux.

VM's voorbereiden en NTTTCP installeren voor Windows

  1. Download op zowel de afzender- als ontvanger-VM's de nieuwste versie van NTTTCP in een afzonderlijke map, zoals c:\tools.

  2. Open de Windows opdrachtregel en navigeer naar de map waarin u ntttcp.exe hebt gedownload.

  3. Maak op de ontvanger-VM een Windows Firewall allow-regel om toe te staan dat het NTTTCP-verkeer binnenkomt. Het is eenvoudiger om nttcp.exe op naam toe te staan dan om specifieke binnenkomende TCP-poorten toe te staan. Voer de volgende opdracht uit, waarbij u vervangt door uw downloadpad voor ntttcp.exe indien dat anders is.

    netsh advfirewall firewall add rule program=c:\tools\ntttcp.exe name="ntttcp" protocol=any dir=in action=allow enable=yes profile=ANY
    
  4. Als u uw configuratie wilt bevestigen, gebruikt u de volgende opdrachten om één TCP-stream (Transfer Control Protocol) gedurende 10 seconden te testen op de virtuele machines van de ontvanger en afzender:

    Ontvanger-VM

    ntttcp -r -m [<number of VM cores> x 2],*,<receiver IP address> -t 10 -P 1

    ntttcp -r -m 4,*,10.0.0.5 -t 10 -P 1
    

    Afzender-VM

    ntttcp -s -m [<number of VM cores> x 2],*,<receiver IP address> -t 10 -P 1

    ntttcp -s -m 4,*,10.0.0.5 -t 10 -P 1
    

    Opmerking

    Gebruik de voorgaande opdrachten alleen om de configuratie te testen.

    Aanbeveling

    Wanneer u de test voor de eerste keer uitvoert om de installatie te controleren, gebruikt u een korte testduur om snel feedback te krijgen. Zodra u hebt gecontroleerd of het hulpprogramma werkt, verlengt u de testduur tot 300 seconden voor de meest nauwkeurige resultaten.

Doorvoertests uitvoeren

Voer de test 300 seconden of vijf minuten uit op zowel de afzender- als de ontvanger-VM's. De afzender en ontvanger moeten dezelfde testduur voor de parameter opgeven.

  1. Voer op de ontvangende VM de volgende opdracht uit, waarbij u de en plaatsaanduiders vervangt door uw eigen waarden.

    ntttcp -r -m [<number of VM cores> x 2],*,<receiver IP address> -t 300

    ntttcp -r -m 4,*,10.0.0.5 -t 300
    
  2. Voer op de afzender-VM de volgende opdracht uit. De opdrachten voor afzender en ontvanger verschillen alleen in de of parameter die de afzender of ontvanger-VM aanwijst.

    ntttcp -s -m [<number of VM cores> x 2],*,<receiver IP address> -t 300

    ntttcp -s -m 4,*,10.0.0.5 -t 300
    
  3. Wacht op de resultaten.

Wanneer de test is voltooid, moet de uitvoer er ongeveer uitzien als in het volgende voorbeeld:

C:\tools>ntttcp -s -m 4,*,10.0.0.5 -t 300
Copyright Version 5.39
Network activity progressing...


Thread  Time(s) Throughput(KB/s) Avg B / Compl
======  ======= ================ =============
     0  300.006        29617.328     65536.000
     1  300.006        29267.468     65536.000
     2  300.006        28978.834     65536.000
     3  300.006        29016.806     65536.000


#####  Totals:  #####


   Bytes(MEG)    realtime(s) Avg Frame Size Throughput(MB/s)
================ =========== ============== ================
    34243.000000     300.005       1417.829          114.141


Throughput(Buffers/s) Cycles/Byte       Buffers
===================== =========== =============
             1826.262       7.036    547888.000


DPCs(count/s) Pkts(num/DPC)   Intr(count/s) Pkts(num/intr)
============= ============= =============== ==============
     4218.744         1.708        6055.769          1.190


Packets Sent Packets Received Retransmits Errors Avg. CPU %
============ ================ =========== ====== ==========
    25324915          2161992       60412      0     15.075

Doorvoer testen tussen een Windows-VM en een Linux-VM

Als u NTTTCP-doorvoertests tussen een Windows-VM en een Linux-VM wilt uitvoeren, schakelt u de modus zonder synchronisatie in met behulp van de vlag -ns op Windows of de vlag -N op Linux.

Voer de volgende opdracht uit om te testen met de Windows VM als ontvanger:

ntttcp -r -m [<number of VM cores> x 2],*,<Linux VM IP address> -t 300

Voer de volgende opdracht uit om te testen met de Windows-VM als afzender:

ntttcp -s -m [<number of VM cores> x 2],*,<Linux VM IP address> -ns -t 300

Volgende stappen