Kas ir Silly Window Sindroms - paskaidrojums un novēršana

Satura rādītājs:

Kas ir Silly Window Sindroms - paskaidrojums un novēršana
Kas ir Silly Window Sindroms - paskaidrojums un novēršana

Video: Kas ir Silly Window Sindroms - paskaidrojums un novēršana

Video: Kas ir Silly Window Sindroms - paskaidrojums un novēršana
Video: Windows 8: How to Set Up Dual Monitors - YouTube 2024, Aprīlis
Anonim

Dati tiek pārsūtīti tīklā un internetā, izmantojot TCP / IP protokols. TCP / IP nav ideāls, bet to ir vieglāk ieviest salīdzinājumā ar citiem protokoliem, kas ir teorēti datu pārraidei … tādi kā ISO OSI modelis. Tāpat kā ar jebkuru tehnisku jautājumu, arī TCP / IP ir dažas kļūdas un arī Silly Window Sindroms ir viens no šiem trūkumiem. Lai izprastu Silly Window sindromu vai SWS, vispirms ir jāsaprot datu pārraides pamatā esošais TCP / IP mehānisms.

Silly Window Sindroms

Image
Image

Loga un tā izmēra izpratne

Ja divi punkti tiek sazinā ti ar TCP / IP, tas ietver apstiprināšanas mehānismu. Šis atpazīšanas mehānisms ir tas, kas izraisa dusmiņu sindromu, kā paskaidrots tālāk. Punkti var attiekties uz diviem datoriem, klientu un serveri utt.

SWS is caused by the receiver advancing the right window edge whenever it has any new buffer space available to receive data and by the sender using any incremental window, no matter how small, to send more data. The result can be a stable pattern of sending tiny data segments, even though both sender and receiver have a large total buffer space for the connection, says MSDN.

Kad dators, piemēram, A, nosūta datu paketi uz citu datoru B, pēdējam ir jāatzīst un jāatbild, ka tas ir saņēmis datu paketi. Papildus apstiprinājumam tai ir jānosūta arī šī sakaru vītnei noteiktā bufera lielums. Parasti kopējais baitu skaits ir brīvs komunikācijai.

Tātad, ja B saka, ka 100B ir pieejams nākamajam ziņojumam, 100B ir lukss Silly Window sindromā. Tas ir, tas ir bufera izmērs. Ar savu trūkumu, TCP / IP mehānisms var samazināt bufera lielumu katram no A saziņai / datiem. Tas nozīmē, ka, kad A sūta ziņojumu, B pieņem, ka bufera izmērs tiek samazināts un nosūtīts mazāks skaitlis. Tādējādi loga izmērs saglabājas uz samazinātas un uz punktu, komunikācija vienkārši apstājas, jo B nosūta 0B kā loga izmēru.

Kā darbojas dumjš loka sindroms

Saskaņā ar iepriekš minēto A un B piemēru, ja B sūta 1000B loga izmēru, A to sadalīs divās 500B un sūtīs divus 500B paketus. Saņemot pirmo paketi, B nosūtīs apstiprinājumu, ka šim logam ir pieejams 500B, jo otrais pakete vēl nav saņemts. Pieņemts, ka 500B ir loga izmērs un attiecīgi nosūta divus 250B paketus. Lai gan B tiek izmantots 500B, un 500 ir tikko saņemts, tas nosūta 0B, kā tas ir pieejams. Šajā brīdī A pieņems, ka nav pieejams neviens logs, lai gan var gadīties, ka buferis ir tukšs, jo procesors tajā izmanto datus. Vēl tiks nosūtīts mazāks pakete, lai redzētu, vai ir pieejams kāds logs. Ja bufera saturs brīdī B vēl nav noņemts, tas joprojām saņem 0 kā atbildi / apstiprinājumu.

Tādējādi loga izmērs turpina samazināties, jo B sūta apstiprinājumu katru reizi, kad tā saņem paketi no A. Šis izmērs parasti ir mazāks nekā iepriekšējais apstiprinājums, jo B daļēji saņem datu paketes. Nebūtu problēmu, ja A varētu sūtīt paketi, kas ir pietiekami liela, lai vienā reizē aptvertu bufera izmēru. Bet tas prasītu papildu mehānismus un līdz ar to arī Silly Window sindromu. Komunikācija apstājas pēc tam, kad A saņem divas vai trīs reizes.

Kā novērst dumbrlīnijas sindromu (SWS)

Ir vienkāršs algoritms, kas jāievieš, lai atbrīvotos no SWS. Saņemot sākotnējo paketi, B kā logu nosūta pusi faktiski pieejamās vietas. Tas dos Sūtīt mazāku paketes. Līdz ar to, kad paketes kļūst pārāk mazas, tad B nosūta kopējo bufera izmēru, lai A varētu sākt sūtīt lielākus datu bitus vēlreiz.

Citiem vārdiem sakot, ja 1000B ir pieejams, B nosūta 500B kā apstiprinājumu. Attiecīgi, A nosūta 250B x 2 paketes. Šim nolūkam A saņem apstiprinājumu. Kad tas saņem 50B paketi, B nosūta 1000B-50B uz A. Tas atkal aktivizē visu sarunu. Tas varētu izraisīt nelielu apstrādes aizkavēšanos, bet novērsīs Silly Window sindroma rašanos un pārtrauc visu sarunu.

Rezumējot, SWS ir balstīts uz saņēmēja pieejamo bufera lielumu un sūtītāja aprēķināto lielumu. Lai novērstu SWS, tiek ieviesta kavēšanās un apzināti mazāks loga lielums ir atgriezies, līdz pakešu lielums kļūst pārāk mazs. Tad saņēmējs atklāj faktiski pieejamo loga izmēru. Viss process turpina atkārtot, kamēr komunikācija ir pabeigta.

Lai gan es, iespējams, esmu lietojis vārdu logu un buferi savstarpēji aizvietojot. Es nedomāju, ka starp tām būtu atšķirības. SWS pētījumos buferis ir logs.

Ja jums nepieciešama plašāka informācija, detalizēts skaidrojums ir pieejams šeit tcpipguide.com.

Ieteicams: