Data Domain: Felsöka nätverksprestanda med iperf
Summary: Använd iperf-verktyget och DD net iperf-kommandot för att mäta rå nätverksgenomströmning mellan slutpunkter, vilket hjälper till att diagnostisera långsamma eller misslyckade säkerhetskopieringar, återställningar eller replikering genom att validera NIC-till-NIC-bandbredden över nätverkssökvägen. ...
Symptoms
Den här artikeln innehåller detaljerade instruktioner om hur du använder iperf verktyget och DD net iperf kommando för att mäta nätverksgenomströmning mellan en mediaserver och ett Data Domain-system (DD) eller mellan två DD-system.
Iperf-verktyget är ett branschstandardverktyg som är utformat för att mäta rå nätverksprestanda mellan två slutpunkter. Det hjälper till att validera den underliggande NIC-to-NIC bandwidth över alla mellanliggande nätverkskomponenter – till exempel växlar, routrar, brandväggar och WAN-länkar – med TCP- eller UDP-trafik. Detta är viktigt för att isolera nätverksrelaterade problem från problem på programnivå.
Du kan behöva springa iperf när något av följande symtom uppstår:
- Långsam säkerhetskopiering eller återställning av prestanda med CIFS, NFS eller DD Boost över IP mellan mediaservern och DD.
- Säkerhetskopierings- eller återställningsfel över CIFS, NFS eller DD Boost mellan mediaservern och DD.
- Problem med replikeringsprestanda (till exempel samling, katalog, MTree-replikering eller hanterad filreplikering) mellan två DD-system.
Cause
Prestandaproblem under säkerhetskopiering, återställning eller replikering beror ofta på flaskhalsar i nätverket snarare än begränsningar på programnivå. Dessa flaskhalsar kan uppstå var som helst längs datasökvägen – mellan medieservern och Data Domain-systemet eller mellan två DD-system – och kan omfatta:
- Bandbreddsbegränsningar på nätverkskort eller mellanliggande nätverksenheter (switchar, routrar, brandväggar).
- MTU-missmatchningar som orsakar fragmentering och vidaresändningar.
- Hög latens eller paketförlust på grund av överbelastning, felaktiga kablar eller felkonfigurerad QoS.
- Problem med TCP-fönsterskalning eller otillräckliga buffertstorlekar som påverkar dataflödet.
- Brandvägg eller IDS/IPS-inspektionskostnader som begränsar SMB/NFS/DDBoost-trafik.
Eftersom dessa problem ofta är osynliga på programlagret, iperf används för att mäta rå TCP/UDP-genomströmning mellan slutpunkter och validera underliggande nätverksprestanda oberoende av CIFS, NFS eller DD Boost. Detta hjälper till att isolera om långsamma säkerhetskopieringar/återställningar orsakas av nätverksbegränsningar eller av program-/lagringskonfiguration.
Resolution
Iperf är ett allmänt använt testverktyg för nätverksprestanda med öppen källkod som genererar TCP- och UDP-trafikströmmar för att mäta tillgänglig bandbredd och dataflöde. Det ger en korrekt bedömning av rå nätverkskapacitet mellan två slutpunkter, till exempel en mediaserver och ett Data Domain-system (DD), eller mellan två DD-system. Genom att simulera dataöverföring vid transportlagret, iperf hjälper till att identifiera flaskhalsar i nätverket, latensproblem och paketförlust över mellanliggande komponenter som switchar, routrar och brandväggar – oberoende av protokoll på programnivå som CIFS, NFS eller DD Boost.
Iperf Har två lägen: Server och Client.
AVSNITT I: VAR DU KAN FÅ TAG PÅ IPERF-VERKTYGET:
Det finns tre sätt att få iperf körbar fil:
Metod 1:
DD har "net iperf" Kommandot. Om du bara vill testa bandbredden mellan två DD:er använder du "net iperf" kommandot räcker.
Metod 2:
Du har nu möjlighet Iperf verktyget är tillgängligt på DDR under /ddr/var/tools/iperf Mappen. Om du vill hämta den körbara iperf-filen mappar du /ddvar antingen med hjälp av CIFS eller NFS på din mediaserver, och placera den under valfri mapp, säg /tmpEller C:\EMCEller C:\ddtools.
1. Så här skapar du en tillfällig CIFS-resurs för /ddvar där iPerf verktyg för Windows:
cifs share create <Share Name is recommended to be 'ddvar' without any slash> path <Path to the directory being shared '/ddvar'> clients <IP of relevant remote Windows Host>
Eg: sysadmin@dd# cifs share create ddvar path /ddvar clients <IP of affected backup Host>
Så här tar du bort tillfällig CIFS-resurs:
cifs share destroy <Temporary Share Name>
Eg: sysadmin@dd# cifs share destroy ddvar
2. Så här skapar du en tillfällig NFS-resurs för Linux:
nfs export create <Share Name is recommended to be 'ddvar' without any slash> path <Path to the directory being shared '/ddvar' clients <IP of relevant remote Linux Host>
Eg: sysadmin@dd# nfs export create ddvar path /ddvar clients <IP of relevant remote Linux Host>
Så här tar du bort tillfällig NFS-resurs:
nfs export destroy <Temporary Share Name>
Eg: sysadmin@dd# nfs export destroy ddvar
Metod 3:
Ladda ner från DD med scp (UNIX) eller pscp (Windows):
UNIX:
scp <localuser>@<IP or hostname of DD>:/ddr/var/tools/iperf/<OS>/<iperf executable> <local path>
example: scp sysadmin@10.10.10.10:/ddr/var/tools/iperf/Linux/iperf /tmp/iperf
OS/iperf executable:
HP-UX_RISC/iperf
AIX/iperf
Linux/iperf
HP-UX_IA64/iperf
Solaris_Sparc/iperf
Windows/iperf.exe
Windows:
pscp -scp <localuser>@<IP or hostname of DD>:/ddr/var/tools/iperf/Windows/iperf.exe <local path>
example: pscp -scp sysadmin@10.10.10.10:/ddr/var/tools/iperf/Windows/iperf.exe C:\ddtools\iperf.exe
pscp (kommandoradsversion av scp för Windows) finns att ladda ner från putty.org (extern). Winscp fungerar inte att ladda ner från DD.
AVSNITT II: Hitta IP-adressen på DD som ska användas i iperf-testet.#net show hardware, to see which port, 1G/10G link#net show setting, to see the IP assigned to the port
AVSNITT III: SÅ HÄR KÖR DU IPERF
EXEMPEL I: SÅ HÄR KÖR DU IPERF MELLAN TVÅ DD:ER:
På mål-DD, med hjälp av putty-session,
#net iperf server
Sedan på källan DD,
#net iperf client <DestinationDDIP> interval 10 duration 60
#net iperf server statusför att bekräfta att iPerf har stoppats.-Ovanstående kommando är att se vilken nätverksbandbredd som är tillgänglig från käll-DD till mål-DD, med 1 ström, med 10 sekunders intervall i 60 sekunder.
-Du kan köra kommandot ovan med
"connection 10" för att testa nätverksbandbredden med 10 anslutningar, vilket bör vara större än 1 anslutning.– Om replikering pågår mellan dessa 2 DD samtidigt visas
iperf Resultatet visar den nätverksbandbredd som finns kvar förutom det som redan används av replikeringen. Du kan använda #iostat 2 för att se det dataflöde som används på porten samtidigt.-Du kan vända på testet, för att se den tillgängliga bandbredden tvärtom, dvs. mellan destination till källa DD..
EXEMPEL II: SÅ HÄR KÖR DU IPERF FRÅN MEDIASERVER TILL DD. Detta kan användas för problem med långsam säkerhetskopiering/skrivning.
På DD, med hjälp av putty-session,
#net iperf server --- This means DD in server mode and is listening
På mediaserver, Windows eller Linux:
#iperf -c <DDIPaddress> -t 60 -i 10
Obs! -Efter testet, använd ctl+c på källan för att stoppa iperf..
#net iperf server status,
för att bekräfta att iPerf har stoppats.
-Du kan köra kommandot ovan med -P 10 för att testa nätverksbandbredden med 10 anslutningar, vilket bör vara större än 1 anslutning.
-Du måste använda flaggan -w 256K, för att ange fönsterstorleken.
Example:
root@client 1 iperf-2.0.5]# iperf -c 11.65.228.28 -i 3 -t 30 -w 256K
------------------------------------------------------------
Client connecting to 11.65.228.28, TCP port 5001
TCP window size: 512 KByte (WARNING: requested 256 KByte)
------------------------------------------------------------
[ 3] local 11.65.249.45 port 63535 connected with 11.65.228.28 port 5001
[ ID] Interval Transfer Bandwidth
[ 3] 0.0- 3.0 sec 2.79 GBytes 7.98 Gbits/sec
[ 3] 3.0- 6.0 sec 2.86 GBytes 8.19 Gbits/sec
[ 3] 6.0- 9.0 sec 2.90 GBytes 8.30 Gbits/sec
Obs! I ovanstående utdata är .45 käll-IP:n som används av mediaservern för att skriva till DD. .28 är den DD IP som används för säkerhetskopiering.
EXEMPEL III: SÅ HÄR KÖR DU IPERF FRÅN DD TILL MEDIASERVER: Detta kan användas för problem med långsam återställning/läsning.
På mediaserver, Windows eller Linux:
#iperf -s
På DD:
#net iperf client <ip address> duration 60 interval 10
Obs!
-Du kan behöva använda flaggan -p 5001 eller annan #, för att ange porten.
-Du kan behöva använda flaggan -w 256K för att ange fönsterstorleken.
AVSNITT IV: NÄSTA STEG
-Idealiskt, mellan 1 Gbps-portar, skulle vi vilja se 800 Mbps till 900 Mbps genomströmning när inget annat använde bandbredden.
Mellan 10 Gbit/s-portar skulle vi vilja se några Gbit/s-genomströmning när inget annat använde bandbredden.
-När genomströmningen är lägre än den ideala linjehastigheten ovan, använd flera anslutningar (10 eller 20) för att se den tillgängliga bandbredden öka.
-Kontrollera även routing och se till att MTU är konsekvent hela vägen. (Se anteckningar nedan, hur man använder ping för att kontrollera MTU)
Additional Information
Kontrollera MTU-konsekvens över nätverkssökvägen.
Om du vill bekräfta att MTU-inställningarna är konsekventa från slutpunkt till slutpunkt (klient → nätverk → lagring) använder du ping med alternativet Fragmentera inte . Detta säkerställer att paket inte fragmenteras längs sökvägen.
Windows (Standard MTU 1500):ping -f -l 1472(1472-bytes payload + 28-byte header = 1500 MTU)
Windows (Jumbo Frame MTU 9000):ping -f -l 8972(8972 bytes payload + 28-bytes header = 9000 MTU)
Från Data Domain (DD):net ping count 2 packet-size 1472 path-mtu donet ping count 2 packet-size 8972 path-mtu do
Varför detta är viktigt:
Genom att kontrollera MTU ser du till att jumboramar eller standardramar stöds konsekvent på alla nätverksenheter, vilket förhindrar fragmentering och paketförlust som kan försämra CIFS-återställningsprestandan.