Skilningur á efri mörkum TCP-gagnasendingargetu
Raunverulegur flutningshraði á einu stöku TCP-flæði ræðst aldrei eingöngu af uppgefnum línuhraða. Hann takmarkast af lægsta gildi þriggja sjálfstæðra þátta: flutningsgetu hlekks, móttökugluggann og pakkatap. Þegar gögn eru send yfir netkerfi mætir flæðið þessum efri mörkum sem skilgreina raunverulegan flöskuháls tengingarinnar.
Samskiptareglur valda alltaf ákveðinni yfirbyggingu sem dregur úr nýtanlegri bandvídd. Á venjulegu Ethernet-neti bætast 78 bæti við hvern pakka, sem skiptist í 40 bæti fyrir TCP/IP-pakkahausa og 38 bæti af línu- og rammautanumhald. Þetta þýðir að jafnvel þótt lína sé sögð hafa ákveðinn hámarkshraða, mun raunverulegt línuþak eftir yfirbyggingu alltaf vera lægra.
Bandvíddar-seinkunarmargfeldi (BDP) og mikilvægi þess
Bandvíddar-seinkunarmargfeldi, eða BDP, skilgreinir það magn gagna sem þarf að vera í flutningi á netleiðinni á hverjum tíma til að nýta tiltæka bandvídd til fulls. Það reiknast sem margfeldi af hraða tengingarinnar og svartíma (RTT).
Ef móttökugluggi TCP-flæðisins er minni en BDP, getur sendandinn ekki nýtt alla getu línunnar. Hann neyðist til að bíða eftir staðfestingu (ACK) frá móttakanda áður en hann sendir meiri gögn, sem skilur netleiðina eftir hálftóma. Á netleiðum með mikla seinkun og háan línuhraða verður BDP mjög stórt, sem krefst þess að móttökuglugginn sé stækkaður verulega til að koma í veg fyrir að glugginn verði flöskuhálsinn.
TCP-gluggaskölun samkvæmt RFC 7323
Í upprunalegu TCP-samskiptareglunum var hámarksstærð móttökuglugga takmörkuð við 16 bita, sem gefur að hámarki 65,535 bæti. Á nútíma háhraðanetum með mikla seinkun dugar þessi gluggastærð skammt. Til að leysa þetta skilgreinir RFC 7323 staðallinn TCP-gluggaskölun, sem gerir endapunktum kleift að semja um margföldunarstuðul og stækka gluggann.
Ef gluggi til að fylla leiðina fer yfir 65,535 bæti, verða báðir endar að semja um TCP-gluggaskölun (RFC 7323). Algert hámark sem TCP getur samið um með gluggaskölun er 1,073,725,440 bæti. Ef reiknaður gluggi fer yfir það hámark, mun tengingin aldrei geta nýtt alla bandvíddina á þessari tilteknu leið.
Áhrif pakkataps og Mathis-líkanið
Pakkatap hefur veruleg áhrif á afköst TCP þar sem samskiptareglan túlkar tap sem merki um stíflu í netkerfinu og minnkar sendingarhraðann í kjölfarið. Mathis-líkanið áætlar efri mörk taptakmarkaðrar gagnasendingargetu út frá stærð pakka (MSS), svartíma (RTT) og líkum á pakkatapi (p).
Líkanið gerir ráð fyrir jafnt dreifðu og sjálfstæðu pakkatapi. Það gefur áreiðanlegar niðurstöður þegar pakkatap er undir u.þ.b. 1%. Ef pakkatap fer yfir 1% er líkanið ekki lengur fyllilega áreiðanlegt og líta verður á taptakmarkaða gagnasendingargetu sem bjartsýnt mat, þar sem hviðukennt tap í raunheimum skaðar afköst meira en líkanið spáir fyrir um.
Reiknireglur og einingar
Reiknivélin styðst við eftirfarandi formúlur til að ákvarða afköst og flutningstíma:
- Formúla:
gagnahraði = min(hraði × eff, gluggi ÷ RTT, MSS ÷ RTT ÷ √p) · BDP = hraði × RTT - Samskiptareglunýtni:
Samskiptareglunýtni = MSS ÷ (MSS + 78 B) = ‹mss› ÷ ‹frame› = ‹eff› (40 B pakkahausar + 38 B á línunni) - Efri mörk hlekks:
Efri mörk hlekks = hraði × nýtni = ‹rate› × ‹eff› = ‹value› - BDP:
BDP = hraði × RTT = ‹rate› × ‹rtt› = ‹bdp› = ‹bytes› - Gluggi til að fylla leiðina:
Gluggi til að fylla leiðina = BDP ÷ 8 = ‹bdp› → ‹window› - Efri mörk glugga:
Efri mörk glugga = gluggi ÷ RTT = ‹window› ÷ ‹rtt› = ‹value› - Efri mörk taps (Mathis):
Efri mörk taps (Mathis) = MSS ÷ RTT ÷ √p = ‹mss› ÷ ‹rtt› ÷ √‹p› = ‹value› - Áætluð afköst:
Áætluð afköst = lægsta af þessum efri mörkum = ‹value› → takmarkast af ‹constraint› - Flutningstími:
Flutningstími = RTT + 8 × stærð ÷ gagnahraði = ‹rtt› + 8 × ‹size› ÷ ‹throughput› = ‹time›
Allar einingar í reiknivélinni eru byggðar á tugakerfi (t.d. 1 kbit = 1.000 bitar, 1 MB = 1.000.000 bæti). Þetta getur valdið misræmi við skráastjóra í stýrikerfum sem nota tvíundarkerfi (þar sem 100 MB skrá er í raun 100 MiB, eða um það bil 104,86 tugakerfis-MB).
Takmarkanir líkansins
Útreikningarnir miðast við stöðugt ástand á einu staku TCP-flæði. Raunverulegir þættir eins og hæg ræsing (TCP slow start), fínstilling flæðisstýringar, hægur viðtakandi og TLS-handbönd eru utan líkansins. Þess vegna munu raunverulegar millifærslur byrja hægar og geta endað undir reiknuðum tölum. Engin almenn öryggismörk gilda í útreikningunum; líta verður á hverja tölu sem fræðileg efri mörk og gera ráð fyrir svigrúmi fyrir álag og flökt á netleiðinni.
Persónuvernd og vinnsla gagna
Sérhvert gildi sem þú slærð inn er reiknað í þessum vafra — ekkert er sent neitt. Öll gagnavinnsla fer fram staðbundið á tæki notandans, sem tryggir að engar upplýsingar um netkerfi eða gagnastærðir séu fluttar yfir netið til ytri netþjóna.
Algengar spurningar
Hvers vegna er flutningurinn minn hægari en sá tengihraði sem ég borga fyrir?
Eitt stakt TCP flæði mætir þremur sjálfstæðum efri mörkum og þau lægstu ráða för. Yfirbygging samskiptareglna sker niður hlekkinn sjálfan um u.þ.b. 5% — venjulegur Ethernet-rammi ber 1,460 gagnabæti af 1,538 á línunni. Móttökugluggann takmarkar afköst við window ÷ RTT, þannig að hinn klassíski 65,535-bæta gluggi takmarkar 50 ms leið við u.þ.b. 10.5 Mbit/s, óháð því hversu hröð tengingin er. Og tap takmarkar hana við (MSS ÷ RTT) ÷ √tap. Niðurstaðan hér að ofan sýnir hvaða efri mörk takmarka þínar tölur.
Hvað er bandvíddar-tafar-margfeldi (BDP) og hvers vegna ákvarðar það gluggastærðina?
BDP — hraði tengingar × svartími (RTT) — er magn gagna í flutningi á hverju augnabliki. TCP getur að hámarki haft einn óstaðfestan glugga í einu, þannig að gluggi sem er minni en BDP skilur leiðina eftir hálftóma: við 100 Mbit/s með 50 ms RTT rúmar leiðin 625 kB, og 65,535-bæta gluggi fyllir varla tíunda hluta herra. Þess vegna þurfa hraðar og langar leiðir TCP gluggaskölun (RFC 7323), sem hækkar samningsanlegt hámark úr 65,535 bætum í um 1 GB.
Hvernig takmarkar pakkatap afköst TCP?
TCP meðhöndlar tap sem stíflu og helmingar sendingarhraða sinn við hvert tap, þannig að jafnvel örlítið tap skiptir máli á hröðum leiðum. Mathis-líkanið áætlar efri mörkin sem (MSS ÷ RTT) ÷ √p — við 0.01% tap á 50 ms leið með 1,460-bæta MSS er það um 23 Mbit/s, óháð hraða tengingarinnar. Líkanið gerir ráð fyrir jafnt dreifðu, sjálfstæðu tapi; undir u.þ.b. 1% fylgir það raunveruleikanum vel, en fyrir hviðukennt tap er það bjartsýnt.
Eru megabætin hér þau sömu og í skráastjóranum mínum?
Ekki alveg. Þessi síða notar tugakerfiseiningar, sem er venjan í netkerfum: 1 kbit = 1,000 bitar og 1 MB = 1,000,000 bæti. Flestir skráastjórar telja í einingum sem byggja á 1024, oft ranglega merktar som MB — „100 MB“ skrá þar er venjulega 100 MiB ≈ 104.86 tugakerfis-MB, svo það tekur um 5% lengri tíma að flytja hana en tugakerfistalan gefur til kynna. Sláðu inn 104.86 MB hér til að það passi nákvæmlega.