TCP binne SSTP: waarom herversending twee keer gebeur
SSTP dra die tonnel in 'n TCP-stroom oor TLS. Wanneer die pad pakkette laat val, val buitenste en binnenste herstel gelyktydig terug.
Mondelinge oorlewering kom voor die protokol opdaag. Vra rond en SSTP is die stadige een, die opsie wat jy vermy tensy iets jou dwing. Daardie reputasie beskryf een faalmodus op een soort pad.
Die meganisme is werklik. Dit is ook voorwaardelik, wat die reputasie nooit noem nie.
Twee betroubare strome op een pad
SSTP wikkel sy tonnel in 'n HTTPS-sessie. HTTPS loop oor TCP, en daardie buitenste stroom waarborg geordende aflewering. 'n Enkele ontbrekende segment hou dus alles terug wat agter hom in die ry staan. Later grepe wat aan ander binnegesprekke behoort, wag in elk geval.
Binnenste TCP-vloeie hou hul eie ordening en oorladingbeheer. Hulle kan nie die buitenste herstel sien nie, so al wat hulle gewaar, is 'n staking. 'n Staking is die sein wat vir hulle sê die pad is oorlaai.
Albei lae val nou op dieselfde oomblik terug. Dit is die hele wisselwerking, en een verlore segment is genoeg om dit te begin.
Waar die effek verskyn en waar nie
Op 'n skoon pad herstel die buitenste stroom selde iets. Die wisselwerking tree nooit in nie, en SSTP dra interaktiewe verkeer heeltemal goed. Die algemene bewering faal juis op hierdie punt.
Die effek verskyn wanneer verlies of herordening die onderliggende pad bereik. 'n Oorbelaaide Wi-Fi-skakel of 'n mobiele verbinding met wisselende vertraging skep die toestande. 'n Geblokkeerde buitenste tou word dan sigbare vertraging binne die tonnel.
Dit skaal ook met die werklading. Baie parallelle vloeie vul die tou en maak kop-van-lyn-blokkering erger. Een interaktiewe sessie oor dieselfde pad kan aanvaarbaar voel.
Wat die simptoom gewoonlik nie is nie
Nie elke stadige sessie is hierdie probleem nie. 'n Bestendige lae tempo vanaf die eerste pakket wys op kapasiteit, vorming of 'n bedienerbeperking. Pouses wat met plaaslike oorlading saamval, wys op touvorming op die toegangskakel.
Die remedies verskil, en daarom kom die diagnose eerste. Bufferinstelling doen niks vir 'n gevormde skakel nie. Die wissel van protokolle doen niks vir 'n bediener wat uit kapasiteit is nie. Herhaalde herstellings wys heeltemal elders heen.
# outer path quality to the SSTP endpoint
ping -c 50 203.0.113.44 | tail -3
mtr -rwc 50 203.0.113.44
# is the local link saturated while the session stalls?
sar -n DEV 2 5
# retransmissions on the outer connection
ss -tin dst 203.0.113.44
Voer die meting uit terwyl die probleem gebeur. 'n Opname wat in 'n gesonde minuut geneem is, bewys niks oor die lus wat in die slegte een loop nie.
'n Vergelyking wat vertroue verdien
As 'n ander vervoermiddel werklik beskikbaar is, vergelyk dit onder beheer. Dieselfde gasheer, dieselfde netwerk, dieselfde bestemming en dieselfde taak. Albei lopies hoort binne dieselfde tien minute sodat die padtoestande ooreenstem.
Om 'n poort te verander verander nie 'n protokol nie. Om 'n onverwante profiel in 'n SSTP-kliënt te invoer skep nie 'n alternatiewe vervoermiddel nie. Die vergelyking beteken iets net wanneer die bediener die tweede opsie bied.
Hou TLS-verifikasie regdeur in plek. Werkverrigtingwerk is nie 'n rede om 'n ongeverifieerde sertifikaat te aanvaar nie. As stakings hoofsaaklik verskyn terwyl die oplyn versadig is, kyk na touvorming voordat jy die lae die skuld gee.