Locked History Actions

Windowing flow Control

Windowing flow control

Buferinės TCP Lango Dydžio Vadybos poveikis, Kad suprastume, kodėl lango dydis gali svyruoti, mes turime suprasti tai, kam tai atstovauja. Paprasčiausias būdas svarstyti lango dydį yra toks, kad jis rodo, kad prietaiso dydis gauna buferį tam tikram ryšiui. Tai yra, lango dydis atstovauja, su kiek duomenų prietaisas gali pasielgti nuo jo pero vieną kartą anksčiau, negu tai perduos į taikomąjį procesą. Aš pasakiau, kad serverio lango dydis buvo 360. Tai reiškia, kad serveris nori paimti mažiau kaip 360 baitų laiku nuo kliento. Kai serveris gauna duomenis iš kliento, tai deda tai į šį buferį. Serveris turi tada padaryti du skirtingus daiktus su šiais duomenimis: Pripažinimas: serveris turi nusiųsti pripažinimą atgal klientui, kad parodytų, kad duomenys buvo gauti. Perkėlimas: serveris turi apdirbti duomenis, perleisdamas tai taikomajam maršruto procesui. Kritiškai svarbu, kad mes atsiskiriame tarp šito dviejų veiksmo. Deja, TCP standartai nedaro didelio darbo šiuo atžvilgiu, kuris daro juos labai sudėtingus suprasti. Pagrindinis punktas yra, kad pagrindinėje slydimo langų sistemoje, duomenys yra pripažinti kai gautas, bet ne būtinai nedelsiant perleisti iš buferio. Tai reiškia, kad tai galima buferiui, kad prisipildytų su gautais duomenimis greičiau negu gavimas, TCP gali ištuštinti tai. Kai tai įvyksta, gavimo prietaisas, galbūt, reikia sureguliuoti lango dydį, kad neleistų buferiui būti perkrautas. Kadangi lango dydis gali būti panaudotas šiame būde valdyti normą, pagal kurią duomenys teka tarp prietaisų ryšio galuose, tai yra metodas, kuriuo TCP įgyvendina srauto kontrolę, vienerias iš "klasikinių" transportinio sluoksnio darbo vietų. Srauto kontrolė yra gyvybiškai svarbi TCP, kadangi tai yra metodas, kuriuo prietaisai praneša savo padėtį į vieną kitą. Mažindamas ar didindamas lango dydį, serverį ir klientą kiekvienas garantuoja, kad kitas prietaisas siunčia duomenis taip greitai, kadangi gavėjas gali turėti reikalo su tuo.

Tuo metu, kai konceptualiai paprastas, srauto kontrolės naudojimo lango dydžio reguliavimas gali būti labai sudėtingas. Jei mes nesame atsargūs su tuo, kaip mes darome pakeitimus į lango dydį, mes galime įvesti rimtas problemas TCP operacijoje. Yra taip pat ypatingų situacijų, kurios gali įvykti, ypač atvejais, kur lango dydį padaro mažą atsakant į prietaisą, tampantį užsiėmusį.

Lango slydimas (windows sliding)

Lango slydimas yra srauto kontrolės TCP naudojimo metodas. Algoritmas iš esmės deda buferį tarp paraiškos ir tinklo duomenų srauto. Tikslas paslinkti langą sutrukdo siuntėją, kad nusiųstų per didelį skaičių paketų į per srautą tinklo ištekliai ar telefono ragelio buferis. "Slystantis lango dydis" yra maksimalus kiekis duomenų, kuriuos mes galime nusiųsti, neturėdami laukti ACK. TCP pasiekia srauto kontrolę vartojant slystantį Lango algoritmą, kuris atsižvelgia į 2 svarbius parametrus. Pirmas yra telefono ragelio reklamuotas lango dydis, kuris iš esmės sako siuntėjui, kas yra einamasis TCP telefono ragelio buferis, antras parametras yra susigrūdimo langas, kurie kontroliuoja skaičių paketų, kuriuos TCP srautas gali turėti tinkle bet kokiu duotu laiku.