Hoppa till innehållet
Avanet

Testa Sophos Firewall prestanda med iPerf

iPerf är ett bra verktyg om du vill mäta prestandan för en specifik nätverksrutt. För en Sophos Firewall, till exempel, gäller detta tester mellan två interna nätverk, över en plats-till-plats VPN-anslutning, över Remote Access VPN eller mellan en klient bakom brandväggen och en server på Internet.

Ett iPerf-test ersätter inte ett vanligt applikationstest eller ett rent WAN-hastighetstest direkt på brandväggen. Den svarar på en annan fråga: Hur mycket TCP eller UDP genomströmning uppnår denna ena rutt mellan två definierade slutpunkter under de valda testförhållandena?

Användningsområde och mätmodell

iPerf är användbart om du vill mäta ett specifikt avstånd reproducerbart. Innan du utför kommandon bör det vara klart vad som mäts och vad testet medvetet inte svarar.

När iPerf är vettigt

iPerf är särskilt användbart när en prestandasats måste vara reproducerbar:

  • efter en brandväggsmigrering eller en modelländring
  • före och efter ändringar av brandväggsregler, IPS, TLS Inspection eller trafikformning
  • för långsamma anslutningar mellan VLAN eller platser
  • för VPN prestandaproblem via IPsec, SSL VPN eller Sophos Connect
  • för UDP-ämnen som röst, konferensströmmar eller vissa industriapplikationer
  • för att skilja mellan brandvägg, WAN, WLAN, klient, server och applikation

För ett rent internettest ur ett brandväggsperspektiv är artikeln Internet Speedtest via Sophos Firewall CLI mer lämplig. Sophos Firewall Kontrollera prestandamått är också lämplig för att klassificera brandväggens användning.

Vad iPerf mäter

iPerf upprättar en testanslutning mellan en server och en klient. Det uppmätta värdet gäller därför för just denna väg, denna riktning, denna port, detta protokoll och dessa ändpunkter.

Rätt tolkning är viktig:

  • TCP visar uppnåbar genomströmning med överbelastningskontroll, återsändningar och fönsterstorlekar.
  • UDP visar paketförlust och jitter, men kräver en definierad målbandbredd. – En enda testkörning är inte en tillförlitlig uppgift om kapacitet.
  • WiFi, klient CPU, virtuella maskiner, USB-nätverksadaptrar och energisparfunktioner kan begränsa mätningen.
  • Säkerhetsfunktioner på Sophos Firewall påverkar endast resultatet om testanslutningen går genom en lämplig regel och policy.

Planera testinställning

Innan det första kommandot bör det vara klart vilken rutt som kontrolleras:

  1. Var finns iPerf-servern?
  2. Var är iPerf-klienten?
  3. I vilken riktning ska testet utföras?
  4. Vilken brandväggsregel gäller för denna anslutning?
  5. Finns det NAT, VPN, Traffic Shaping, IPS eller TLS Inspection på vägen?
  6. Går testet via kabel eller WLAN?
  7. Ska du kontrollera TCP genomströmning, UDP förlust eller båda?

För tester bakom en Sophos Firewall är en ren struktur vanligtvis viktigare än det individuella maxvärdet. En klient på WiFi, en överbelastad hypervisor eller en långsam Public-iPerf-server kan härma ett falskt brandväggsproblem.

Installera iPerf

iPerf är tillgänglig för Windows, macOS, Linux, Android och iOS. En välkänd nedladdningskälla är iPerf.fr.

iPerf3 Speedtest Tool på Windows
iPerf3 på Windows
För produktiva mätningar är iPerf3 det vanliga valet. Om möjligt bör server och klient använda samma huvudversion.

Kör iPerf

Om testinställningen är klar startar du först servern och utför sedan riktade klienttester. TCP, UDP, motsatt riktning och parallella strömmar svarar på olika frågor och bör därför inte blandas.

Starta servern iPerf

På målsystemet startas iPerf i serverläge:

iperf3 -s

Som standard lyssnar iPerf3 på TCP port 5201. Om en annan port ska användas anges den samma på servern och klienten:

iperf3 -s -p 5200

Varning: På Windows, macOS eller Linux kan den lokala värdbrandväggen blockera iPerf-porten. Om klienten inte kan nå servern bör den lokala brandväggen på iPerf-servern kontrolleras först.

Starta TCP-test

På klienten adresseras servern med sin IP-adress:

iperf3 -c 10.10.10.50

För mer stabila resultat är ett längre test vettigt:

iperf3 -c 10.10.10.50 -t 30

iPerf hastighetstest av TCP prestanda
iPerf hastighetstest av TCP prestanda
Om en Sophos Firewall står mellan klienten och servern måste rätt firewallregel tillåta trafiken. Om regeltilldelningen är oklar hjälper riktad testning av Sophos Firewall-regler. Vid anslutningsproblem är Packet Capture på Sophos Firewall och Sophos Firewall-serviceloggar nästa steg.

Kontrollera riktningen specifikt

Prestandaproblem uppstår ofta bara i en riktning. iPerf3 kan vända dataflödet utan att byta server och klient:

iperf3 -c 10.10.10.50 -t 30 -R

Detta är särskilt användbart för VPN-rutter, asymmetrisk routing, uppladdningsproblem eller WAN-linjer med olika nedströms- och uppströmsbandbredd.

Utför UDP-test

UDP måste alltid testas med en rimlig målbandbredd. Utan en lämplig målbandbredd mäter testet inte den faktiska förväntade belastningen.

iperf3 -c 10.10.10.50 -u -b 100M -t 30

För en 1 Gbit-rutt kan ett högre målvärde vara vettigt:

iperf3 -c 10.10.10.50 -u -b 1G -t 30

Dessa värden är särskilt viktiga för UDP:

  • Förlorade/Totala datagram: Paketförlust
  • Jitter: Variation i paketöverföringstid
  • Bithastighet: effektiv bandbredd skickas eller tas emot

Ett UDP-test med för hög målbandbredd skapar avsiktligt överbelastning. Detta kan vara användbart för gränstestning, men bör inte misstolkas som ett normalt linjetest.

Använd flera strömmar

En enskild TCP-ström kan begränsas av latens, TCP-fönsterstorlek eller klientprestanda. Du kan använda flera parallella strömmar för kapacitetstestning:

iperf3 -c 10.10.10.50 -t 30 -P 4

Resultatet visar mer av ruttens totala användbara kapacitet. För en enda applikation är ett enkelströmstest ofta mer meningsfullt.

Använd public-iPerf server

En offentlig iPerf-server kan användas för grova internetjämförelser. Offentliga servrar kan dock inte kontrolleras: användning, begränsningar, tillgänglighet och avstånd kan variera kraftigt. En väl underhållen översikt finns till exempel i listan över iPerf Public Servers on GitHub.

När det kommer till frågan om den lokala brandväggen, VPN eller en specifik policy saktar ner den, är en separat iPerf-server på andra sidan vanligtvis mycket mer tillförlitlig.

Jämförande mätning och utvärdering

Ett enda iPerf-värde är sällsynt nog. Testet blir meningsfullt först när riktning, parametrar, brandväggsregel och mättid dokumenteras och senare upprepas under samma förhållanden.

Planera baslinje- och jämförelsemätningar

iPerf är särskilt värdefullt när jämförbara mätningar görs före och efter en förändring. Ett enstaka test efter ett klagomål visar bara det aktuella tillståndet. Det står ännu inte om rutten redan var långsam i förväg eller om en ny brandväggsregel, en IPS-profil, TLS Inspection, trafikformning, en VPN-parameter eller ett leverantörsproblem utlöste ändringen.

För tillförlitliga jämförelser bör dessa testförhållanden registreras:

  • Datum och tid: Säkerhetskopieringar, uppdateringar, rapporter eller leverantörsladdning kan förvränga resultaten.
  • Källa och destination: Andra klienter, servrar eller VLAN resulterar i andra sökvägar.
  • Riktning: Ladda ner, ladda upp och -R kan visa väldigt olika värden.
  • Protokoll och parametrar: TCP, UDP, strömmar, varaktighet och målbandbredd måste förbli jämförbara.
  • Tillämplig brandväggsregel: Säkerhetsprofiler, loggning, NAT och trafikformning beror på policyn.
  • VPN eller WAN sökväg: SD-WAN, Route Precedence, Gateway status och tunneltyp påverkar rutten.
  • Miljö: Kabel, WLAN, hypervisor, CPU last och parallelltrafik måste klassificeras.

Om förändringar planeras är en enkel process vettig:

  1. Utför ett referenstest innan du gör ändringar.
  2. Dokumentera brandväggsregel, policy, VPN sökväg och mätparametrar.
  3. Gör exakt en förändring.
  4. Kör samma test igen.
  5. Om det finns avvikelser, kontrollera Log Viewer, Packet Capture, gränssnittsfel och systembelastning.
  6. Testa först därefter nästa ändring.

Speciellt med VPN och platstester förhindrar denna procedur att flera orsaker blandas ihop. Om MTU, IPS, SD-WAN, brandväggsregler och klientprofiler justeras samtidigt är det svårt att tilldela ett bättre iPerf-värde senare.

Utvärdera resultat

Vid utvärdering bör uppmärksamhet inte bara ägnas åt det högsta Mbit/s-numret.

Typiska observationer:

  • Låg TCP-genomströmning med många omsändningar: det tyder på paketförlust, duplex-/länkproblem, WAN-kvalitet eller ett MTU/MSS-ämne.
  • Bra nedladdning, dålig uppladdning: Asymmetrisk linje, routing, leverantörsformning eller VPN-riktning är möjliga.
  • UDP-paketförlust även under måttlig belastning: Vanliga orsaker är överbelastning, dålig WAN-kvalitet, felaktig formning eller WLAN.
  • Mycket fluktuerande värden: Kontrollera parallell belastning, WLAN, CPU-gräns eller virtuell miljö.
  • Endast offentliga servrar långsamma: Då påverkas den externa servern eller peering, inte automatiskt den lokala brandväggen.

Under testet bör RAM, gränssnittsbelastning, IPS-belastning och berörda regler kontrolleras på Sophos Firewall CPU. Värdena kan klassificeras bättre med hjälp av prestandamått och liveloggar.

Fel och checklista

Många felaktiga slutsatser uppstår eftersom testvägen inte är tydligt definierad eller att publika servrar, WLAN, lokala värdbrandväggar och VPN-riktning inte beaktas.

Vanliga fel

  • iPerf-porten är blockerad på servern av den lokala värdbrandväggen. – Fel riktning testas.
  • En WLAN-klient används för en brandväggsprestandadeklaration.
  • UDP är testad utan lämplig målbandbredd eller med orealistiskt hög målbandbredd.
  • En offentlig iPerf-server används som enda bevis på ens internetprestanda.
  • TCP enkelström och flera parallella TCP-strömmar blandas.
  • Den tillämpliga Sophos Firewall-regeln är inte markerad.
  • VPN-tester utvärderas utan att kontrollera MTU, MSS, CPU och motparten.

Kort checklista

  1. Definiera testväg och riktning.
  2. Starta iPerf-servern på en lämplig slutpunkt.
  3. Kontrollera den lokala värdbrandväggen på iPerf-servern.
  4. Identifiera lämplig Sophos Firewall-regel.
  5. Kör TCP-testet i minst 30 sekunder.
  6. Testa vid behov i motsatt riktning med -R.
  7. Testa UDP endast med realistisk målbandbredd.
  8. Kontrollera brandväggsmetrik, loggar och Packet Capture parallellt.
  9. Upprepa testet efter ändringar och dokumentera resultaten.
  10. Använd samma parametrar, riktning och väg när du gör jämförelsemätningar.

Vanliga frågor

Mäter iPerf internethastigheten för Sophos Firewall?

iPerf mäter genomströmningen mellan två definierade slutpunkter. För ett WAN-test direkt på brandväggen är ett separat brandväggshastighetstest med SSH mer lämpligt. För VPN, VLAN, platsanslutningar eller klient-till-server-rutter är iPerf ofta mer informativt.

Ska du använda en offentlig iPerf-server?

Offentliga iPerf-servrar är endast lämpliga för grova jämförelser. För pålitlig brandvägg, VPN eller platstester är det bättre att ha en egen iPerf-server på andra sidan, eftersom belastningen, avståndet, peering och gränserna för den offentliga servern annars kan förvränga resultatet.

Varför skiljer sig resultaten från TCP och UDP?

TCP svarar på paketförlust, latens och återsänder med överbelastningskontroll. UDP skickar med en specificerad målbandbredd och visar i första hand förlust, jitter och uppnådd bithastighet. Båda proven svarar på olika frågor och ska inte direkt likställas.

Varför ska man testa motsatt riktning med -R?

Många prestationsproblem uppstår bara i en riktning. -R vänder datariktningen utan att byta server och klient. Detta hjälper till med asymmetriska linjer, VPN returvägar, SD-WAN sökvägar eller uppladdningsproblem.

Bevisar ett långsamt iPerf-test ett brandväggsproblem?

Nej. Ett långsamt iPerf-test visar initialt bara att denna specifika rutt är långsam under de valda förhållandena. Därefter måste brandväggsregeln, NAT, VPN sökväg, MTU/MSS, WAN kvalitet, klient, server, WLAN och parallell belastning kontrolleras separat.