BBR
BBR er en TCP-netværksoptimeringsalgoritme open source fra Google, som er dedikeret til at løse to problemer: at udnytte båndbredden fuldt ud på netværksforbindelser med en bestemt pakketabsrate. Reducer bufferbelægning på netværksforbindelser for at reducere latenstiden. Målet med TCP-trængselskontrol er at maksimere båndbredden af flaskehalsforbindelserne på netværket.
TCP BBR er et sæt TCP-kongestionskontrolalgoritmer designet og udgivet af Google. På grund af den langsomme forsinkelse i at levere understøttelse af den nye kerne og standardunderstøttelsen af TCP BBR siden Linux 4.9-kernen, er den gradvist blevet det første valg til server-ensidig acceleration. BBRplus er en forbedret version af den oprindelige BBR, modificeret af CSDN-netizen dog250. BBRv2 er derimod en opfølgende version af den oprindelige BBR og er stadig i beta.
Men i lyset af et bredt udvalg af BBR-derivater er det sjældent at se horisontale sammenligningsanmeldelser af dem på internettet. Nogle af de eksisterende evalueringer er ofte baseret på erfaring og subjektive indtryk eller off-site test med ukontrollerbare variable. Så Reizhi besluttede at tage sig tid til at lave en lokal horisontal test af BBR BBRplus og BBR2 for at finde ud af det.
Testmiljø
Brug VMware workstation til at åbne to Debian-virtuelle maskiner, hvor maskine A er serveren, opsæt en webservice via Nginx og placer en 100 MB fil til downloadhastighedstest; Maskine B er en klientmaskine, og du bruger wget til at downloade. De to virtuelle maskiner er forbundet via et virtuelt internt netværk og er begge på SSD'er.
Testmetodologi
Netværkskortet på maskine A indstilles til en forsinkelse på 150 ms ± 15 ms (tilfældige udsving) via tc-kommandoen, og 8 % pakketab bruges til at simulere et generelt netværksmiljø. Efter at have installeret forskellige BBR-grenaccelerationer, download 100MB testfilen på maskine B gennem wget flere gange (≥5 gange) og få gennemsnitshastigheden for de hurtigste 3 gange.
Testresultater
Lad os se direkte på testresultaterne, BBRv2, som stadig er i beta, er den langsomste i denne test, med næsten samme hastighed som standard kubiske algoritme i 4.19-kernen. Overraskende nok er BBRplus, selvom det er betydeligt hurtigere end den oprindelige BBR, langt bagefter BBR med 5,5 kerner.
Det, der var meget overraskende i min test, var, at BBRplus-grenen steg meget hurtigt efter at have startet downloadet. Men af en eller anden grund, når downloadet når omkring 50% ~ 60%, falder hastigheden pludseligt. Følgende graf registrerer fuldt ud hastighedsændringerne for BBRplus 4.14.129.
BBRplus 4.14.129
I starten troede Reizhi, at det var en testfejl eller andre årsager, men efter genstart, geninstallation af systemet, geninstallation af kernen, manuel kompilering af kernen og aktivering af BBRplus osv., blev det ikke bedre. Under samme testmiljø er hastighedsydelsen for BBR 5.5 meget mere stabil.
BBR 5.5.10
Selvom BBR 5.5.10 ikke er lige så hurtig som BBRplus med hensyn til startacceleration og tophastighed, opretholder den en meget god hastighed gennem hele downloadprocessen, og det samlede tidsforbrug er meget lavere end BBRplus. Betyder det, at BBRplus er bedre egnet til små trafikudbrud, mens BBR excellerer ved store mængder og vedvarende gennemstrømning?
Anmærkninger
I denne test prøvede vi også Sharp Speed og Net-speeder, men ligesom BBR2 er deres samlede hastighed kun i tocifrede tal, så resultaterne er ikke inkluderet her.
BBR2 5.4.0-rc6
Ovenstående er hastigheden for BBR2, som ikke blev fuldt downloadet på grund af den langsomme hastighed.
Originalt link:Hyperlink-login er synlig.
|