Diverse

Hvad er Silly Window Syndrome - Forklaring og forebyggelse

Hvad er Silly Window Syndrome - Forklaring og forebyggelse

Data overføres via netværket og internettet ved hjælp af TCP / IP-protokol. TCP / IP er ikke perfekt, men er lettere at implementere sammenlignet med andre protokoller teoretiseret til datakommunikation ... såsom ISO OSI-model. Som med enhver teknisk ting har TCP / IP også nogle fejl og Silly Window Syndrome er en skabelse af en af ​​disse fejl. For at forstå hvad der er Silly Window Syndrome eller SWS, skal du først forstå den underliggende mekanisme til datakommunikation i TCP / IP.

Silly Window Syndrome

Forståelse af vinduet og dets størrelse

Når to punkter kommunikerer under TCP / IP, involverer det en anerkendelsesmekanisme. Denne anerkendelsesmekanisme er, hvad der forårsager Silly Window Syndrome som forklaret nærmere. Point kan henvise til to computere, klient og server osv.

SWS er ​​forårsaget af, at modtageren fremrykker den højre vinduskant, hver gang den har noget nyt bufferplads til rådighed for at modtage data og af afsenderen ved hjælp af et hvilket som helst trinvist vindue, uanset hvor lille, til at sende flere data. Resultatet kan være et stabilt mønster for afsendelse af små datasegmenter, selvom både afsender og modtager har en stor samlet bufferplads til forbindelsen, siger MSDN.

Når en computer, siger A, sender en datapakke til en anden computer B, skal sidstnævnte anerkende og svare, at den har modtaget datapakken. Sammen med kvitteringen skal den også sende bufferstørrelsen, der er afsat til den kommunikationstråd. Dette er generelt antallet af byte, der er frigivet til kommunikation.

Så når B siger, at 100B er tilgængelig til den næste besked, er 100B vinduet i Silly Window Syndrome. Det vil sige, det er bufferstørrelsen. Med sin egen fejl kan TCP / IP-mekanisme reducere bufferstørrelsen for hver kommunikation / data, der kommer fra A. Når A sender en meddelelse, antager B, at bufferstørrelsen reduceres og sender et mindre antal. Således forbliver vinduesstørrelsen reduceret, og på et tidspunkt stopper kommunikationen bare, når B sender 0B som vinduesstørrelse.

Hvordan fungerer Silly Window Syndrome

Ifølge ovenstående eksempel på A og B, hvis B sender 1000B som vinduesstørrelse, vil A opdele det i to 500B og sende to pakker på 500B. Efter modtagelse af første pakke sender B en bekræftelse, der siger, at 500B er tilgængelig for vinduet, da den anden pakke endnu ikke skal modtages. A antager, at 500B er vinduesstørrelsen og derfor sender to pakker på 250B. Mens B bruges 500B, og 500 netop er modtaget, sender den 0B som tilgængelig. På dette tidspunkt antager A, at der ikke er noget vindue tilgængeligt, selvom det kan ske, at bufferen er tom, da processoren brugte dataene der. A sender stadig en mindre pakke for at se, om et vindue er tilgængeligt. Hvis indholdet af buffer ved B endnu ikke er fjernet, modtager den stadig 0 som svar / bekræftelse.

Vinduesstørrelsen bliver således ved med at reducere, da B sender kvittering, hver gang den modtager en pakke fra A. Denne størrelse er normalt mindre end tidligere bekræftelse, da B modtager datapakker i dele. Der ville ikke være noget problem, hvis A kunne sende en pakke, der var stor nok til at dække bufferstørrelsen på B ad gangen. Men det ville kræve yderligere mekanismer og dermed Silly Window Syndrome. Kommunikationen stopper, når A modtager 0 to eller tre gange.

Sådan forhindres Silly Window Syndrome (SWS)

Der er en simpel algoritme, der skal implementeres for at slippe af med SWS. Efter modtagelse af den oprindelige pakke sender B halvdelen af ​​den virkelig tilgængelige plads som vinduet. Det får A til at sende mindre pakker. Når pakkerne bliver for mindre, sender B derfor den samlede bufferstørrelse, så A kan begynde at sende større databytes igen.

Med andre ord, hvis 1000B er tilgængelig, sender B 500B som kvittering. Følgelig sender A 250B x ​​2 pakker. For dette modtager A 100B som kvittering. Når den modtager 50B-pakke, sender B 1000B - 50B til A. Det gør hele samtalen operationel igen. Dette kan medføre en smule forsinkelse i behandlingen, men forhindrer, at Silly Window Syndrome opstår og stopper hele samtalen.

For at opsummere er SWS baseret på den bufferstørrelse, der er tilgængelig på modtageren, og den antagne størrelse beregnet af afsenderen. For at forhindre SWS introduceres en forsinkelse, og bevidst mindre vinduesstørrelse gengives, indtil pakkestørrelsen bliver for lille. Derefter afslører modtageren faktisk tilgængelig vinduesstørrelse. Hele processen gentages, indtil kommunikationen er afsluttet.

Selvom jeg måske har brugt ordene vindue og buffer ombytteligt. Jeg mener ikke nogen forskel mellem dem. I SWS-studier er buffer vinduet.

Hvis du har brug for flere oplysninger, er der en detaljeret forklaring tilgængelig her på tcpipguide.com.

Mus Sådan ændres venstre og højre museknap på Windows 10-pc
Sådan ændres venstre og højre museknap på Windows 10-pc
Det er en ganske normal, at alle computermusenheder er ergonomisk designet til højrehåndede brugere. Men der er musenheder til rådighed, der er specie...
Mus Efterlig museklik ved at svæve ved hjælp af Clickless Mouse i Windows 10
Efterlig museklik ved at svæve ved hjælp af Clickless Mouse i Windows 10
Brug af en mus eller et tastatur i den forkerte kropsholdning af overdreven brug kan resultere i mange sundhedsmæssige problemer, herunder stamme, kar...
Mus Føj musbevægelser til Windows 10 ved hjælp af disse gratis værktøjer
Føj musbevægelser til Windows 10 ved hjælp af disse gratis værktøjer
I de senere år har computere og operativsystemer udviklet sig meget. Der var et tidspunkt, hvor brugerne skulle bruge kommandoer til at navigere genne...