Tika izveidots protokols ar nosaukumu TCP Flow Control, lai kontrolētu datu plūsmu starp lietotāju un serveri.
Tas nodrošina, ka datu nosūtīšanai un saņemšanai ir pieejams noteikts joslas platums, lai apstrāde varētu turpināties bez nopietnām problēmām.
Lai to paveiktu, TCP protokols izmanto metodi, kas pazīstama kā bīdāmo logu protokols.
Šajā rakstā mēs padziļināti apskatīsim TCP plūsmas kontroli, tostarp to, kā tā darbojas, un, pats galvenais, bīdāmā loga protokolu.
Kas ir TCP plūsmas kontrole?
TCP protokols nodrošina, ka neparedzamā tīklā var izveidot uzticamu sakaru kanālu.
Datu paketes var pazust, nonākt ārpus secības, tikt dublēti tīklā vai tikt pārslogotas saņēmēja mezglā, kad tās tiek sūtītas no viena mezgla uz otru.
Tomēr, izstrādājot lietojumprogrammu, mums parasti nav jārisina šī sarežģītība; tā vietā mēs vienkārši nosūtām dažus datus uz ligzdu, un TCP nodrošina, ka paketes tiek veiksmīgi piegādātas saņēmēja mezglā..
Plūsmas kontrole ir būtiska papildu funkcija, ko piedāvā TCP.
Izmantojot plūsmas kontroli, TCP būtībā pārliecināsies, ka sūtītājs vienlaikus nesūta uztvērējam pārāk daudz pakešu.
Kā darbojas pārsūtīšanas kontroles protokols — plūsmas kontrole?
Tas parasti notiek, ja mums ir jāsazinās ar datiem tīklā.
Sūtītāja lietojumprogramma nosūta datus uz ligzdu, transporta slānis (šajā gadījumā TCP) iesaiņo šos datus segmentā, un tīkla slānis (piemēram, IP) nodod šo paketi saņēmējam mezglam pa noteiktu maršrutu.
Tīkla slānis pārsūtīs šos datus uz TCP sarunas saņēmējā galā, un TCP padarīs tos pieejamus saņēmējai lietojumprogrammai kā identisku sniegto datu dublikātu.
TCP nepiegādās paketes no ierindas un gaidīs atkārtotu pārsūtīšanu, ja konstatēs baitu straumes atstarpi.
Tas ir tas, ko mēs redzēsim, ja tuvināsim.
Gan pārraides, gan saņemšanas buferi uz TCP tiek izmantoti, lai turētu datus, kas attiecīgi jānosūta un jāsaņem.
Pēc tam lietojumprogramma nolasīs datus no saņemšanas bufera, kad tie būs sagatavoti.
Plūsmas kontroles galvenais mērķis ir nodrošināt, ka mēs nesūtām papildu paketes, kamēr uztvērēja saņemšanas buferis jau ir pilns, jo tas liktu uztvērējam nomest papildu paketes, kuras tas nevarētu apstrādāt.
Uztvērējs paziņos savu saņemšanas logu vai pieejamo vietu saņemšanas buferī, lai ierobežotu datu daudzumu, ko TCP var pārsūtīt.
Bīdāmo logu protokols
Bīdāmo logu protokols TCP ir viena no visplašāk izmantotajām plūsmas kontroles metodēm. Tā ir mainīga izmēra, uz baitiem orientēta procedūra.
Šajā pieejā saņēmējs nosūta sūtītājam saņēmēja logu, tiklīdz sūtītājs un saņēmējs ir savienoti.
Uztvērēja pašreizējā bufera lielums tiek saukts par uztvērēja logu.
Datu apjomu, ko var nosūtīt tālāk bez apstiprinājuma, tagad aprēķina TCP, pamatojoties uz pieejamo uztvērēja logu.
Tomēr TCP aptur datu pārsūtīšanu, ja uztvērēja loga izmērs ir 0, un gaida, līdz tas palielināsies.
Uztvērēja loga izmērs ir TCP rāmja sastāvdaļa.
Maksimālais loga izmērs ir 65,535 16 baiti, jo tā loga izmērs ir XNUMX biti.
Loga izmērus izvēlas saņēmējs. Ar katru apstiprinājuma ziņojumu uztvērējs pārraida pašlaik pieejamo uztvērēja loga izmēru.
Bīdāmo logu protokola process
Izmantojot bīdāmo logu protokola tehniku, tiek izveidoti divi buferi, kad sūtītājs un saņēmējs savienojas.
Šie divi buferi ir sadalīti divās grupās: nosūtīšanas logs, kas pieder sūtītājam, un saņemšanas logs, kas pieder saņēmējam.
Saņemšanas logs atdod atlikušo saņemšanas bufera vietu, kad sūtītājs nosūta datus uztvērējam.
Rezultātā sūtītājam ir ierobežots datu apjoms, ko var ievietot saņemšanas buferī.
Pārsūtīšanas logs iepriekš minētajā piemērā pārsūta datus uz saņemšanas logu.
Pēc datu saņemšanas saņemšanas logs nosūta apstiprinājumu, un pēc tam pārraides logs pārsūta jaunu datu rāmi.
Tomēr šoreiz saņemšanas logs papildus nosūta ziņojumu, norādot, ka pieejamā atmiņa ir aizpildīta papildus saņemtajam apstiprinājumam.
Pārraides logs aptur datu pārraidi, līdz saņem apstiprinājumu no saņēmēja loga, ka vieta ir atbrīvota, un tad tas var atsākt datu pārraidi.
Secinājumi
Noslēgumā jāsaka, ka datu savienojuma slānis un transporta slānis ir atbildīgi par plūsmas kontroles problēmu risināšanu.
Plūsmas kontroles mehānisma pamatmērķis ir novērst uztvērēja pārslogošanu ar datiem no ātrāk pārraidītā sūtītāja.
Pat ja sūtītāja pārsūtītie dati ir bez kļūdām un tiek nosūtīti ātrāk, pateicoties jaudīgai iekārtai, iespējams, ka lēnākā gala uztvērējs nespēs apstrādāt ātrāku datu pārraides ātrumu un tādējādi zaudēs daļu datu.
Atstāj atbildi