Statisk IP i GCP kontra VPN-hastighet: tre variabler, ett test
En reserverad adress är inte en hastighetsinställning. Separera adressens livscykel, nätverksnivån och OpenVPN-transporten innan du jämför genomströmning på Compute Engine.
Överföringen blev snabbare efter att adressen reserverades, och slutsatsen skrev sig själv. Bara det att samma ändring också bytte tunneln från UDP till TCP, flyttade testet till en annan kväll och kanske landade på en VM i en annan zon. Att reservera en extern adress löser ett livscykelproblem: den håller slutpunkten densamma mellan omstarter. Den har ingen mekanism som skulle accelerera paket, så hastighetsskillnaden i det experimentet tillhör de andra variablerna, och beslutet framför dig är vilken som ska testas härnäst.
Vad en reserverad adress egentligen köper
Compute Engine skiljer mellan efemära adresser, som tilldelas och släpps med instansen, och statiska adresser som du reserverar och behåller. Den skillnaden handlar om bevarande och fakturering, inte om vägen ett paket tar. En stabil slutpunkt är verkligen användbar för DNS-poster, fjärråtkomstprofiler, partnerlistor och brandväggsregler som inte bör ändras när en VM startar om.
Det är goda skäl att reservera en. Ingen av dem är ett genomströmningsskäl.
Håll nivå, adress och transport som tre variabler
Google Cloud säljer också Premium- och Standard Network Service Tiers, och de två tar olika vägar till internet med olika funktionstillgänglighet. Statisk adressering är ortogonal mot båda, så behandla statisk och Premium som oberoende fakta om en VM och inte som synonymer. Notera den faktiska nivån, regionen och eventuell interconnect eller attachment som är i spel, eftersom de beskriver vägen på ett sätt som adressetiketten aldrig kommer att göra.
Tre variabler, tre separata experiment, annars är resultatet en historia och inte en mätning.
Designa ett test som svarar på en fråga
Håll VM, adress, klientplats, destination och arbetsbelastning fasta medan du jämför godkända UDP- och TCP-profiler. Det krävs både en serverlyssnare per transport och matchande brandväggsregler; att ändra ett klientnyckelord och lämna lyssnaren oförändrad testar bara ditt tålamod. Använd en repeterbar överföring och notera riktning, varaktighet, enkel- kontra parallellströmmar och enheterna, eftersom MB/s och Mb/s skiljer sig med en faktor åtta.
Håll också koll på VM:ens CPU, eftersom en liten instans mättas på kryptering eller softirq-arbete långt innan nätverket gör det, och det taket kommer att se precis ut som en leverantörsgräns.
Retransmissions- och förlusträknare från VM:en och klienten skiljer vägproblem från transportproblem, och en förloppsindikator kan inte. En användbar sekvens med iperf3 tar ungefär tio minuter per transport. Starta servern på andra sidan, kör klienten i trettio sekunder i varje riktning och upprepa varje riktning tre gånger. Kasta första körningen i varje serie och jämför sedan sändar- och mottagarhastigheten tillsammans med retransmissionstalet som TCP-körningarna skriver ut.
Varför UDP och TCP skiljer sig mekaniskt
OpenVPN över UDP bär datagram och låter applikationens egen transport hantera förluster. Över TCP ligger tunnelns pålitliga ström under en redan pålitlig applikationsström, så ett förlorat segment stoppar allt bakom det medan den yttre anslutningen sänder om enligt sitt eget schema. Det beteendet i köns huvud är en egenskap hos tunnling av TCP inuti TCP, inte en leverantörspolicy. Hanteringen av MTU och MSS skiljer sig också mellan de två lägena, vilket ändrar fragmenteringsbeteendet på samma väg.
Ett snabbare TCP-försök bevisar därför att TCP var snabbare den dagen på den vägen, och inget mer allmänt.
Skriv resultatet så att det överlever en granskning
En försvarbar slutsats har en form: den här profilen, på den här maskinstorleken, på den här nätverksnivån, höll den här uppmätta arbetsbelastningen i den här riktningen under de här förhållandena. Allt bredare kräver fler körningar än en kväll kan leverera. Om det långsammare fallet förblir oförklarat, behåll det som en observation med sitt paket- och resursbevis i stället för att hitta på en begränsning som inget leverantörsdokument beskriver.
Adressstabilitet och överföringshastighet kan båda spela roll för samma utrullning, och det användbara beslutet är vilken av dem du köper med varje ändring.