vindue i et computernetværk er en teknik, der bruges til at optimere dataoverførsel mellem enheder ved at opdele data i mindre, mere håndterbare enheder kaldet vinduer. Både den afsendende og den modtagende enhed skal understøtte vinduer, for at den kan fungere effektivt.
Sådan fungerer vinduesvisning:
1. Windows i fast størrelse :Både afsendende og modtagende enheder bestemmer en vinduesstørrelse, normalt angivet som et antal datapakker eller bytes. Dette definerer den maksimale mængde data, der kan transmitteres i et vindue.
2. Afsenderens vindue :Afsenderenheden opdeler dataene i bidder af vinduesstørrelse og sender disse bidder sekventielt. Hvert vindue er nummereret til identifikation.
3. Modtagers vindue :Modtageren bevarer sit vindue, som i starten starter i samme position som afsenderens vindue. Modtageren sender "bekræftelser" til afsenderen for hvert modtaget vindue med succes.
4. Flowkontrol :Modtagerens vinduesstørrelse fungerer som et signal til afsenderen. Hvis modtagerens vindue er fyldt (dens buffer er optaget), stopper den med at kvittere for nye vinduer, hvilket får afsenderen til at stoppe transmissionen midlertidigt, indtil modtagerens vindue bliver tilgængelig. Dette forhindrer, at modtageren overvældes med data, som den ikke kan behandle hurtigt nok.
5. Sklidende vinduer :Efterhånden som modtageren bekræfter modtagne data, glider både afsender- og modtagervinduer gradvist eller bevæger sig fremad til åbne områder, hvor yderligere vinduer kan sendes og behandles.
6. Sekvensnummerering :Hver pakke i et vindue tildeles et sekvensnummer, som gør det muligt for begge enheder at holde styr på datastykker og identificere eventuelle huller, duplikationer eller tab.
7. Gentransmissioner og fejlhåndtering :Hvis afsenderen ikke modtager en bekræftelse for et bestemt vindue inden for en angivet timeout, gensender den det tilsvarende vindue. Windowing, kombineret med sekvensnummerering, hjælper med effektiv fejlhåndtering.
Windowing optimerer datakommunikationen ved at forhindre unødvendig datatransmission, når den modtagende enhed ikke er klar eller har begrænsede behandlingsmuligheder. Det giver også mulighed for bedre flowkontrol, fejlhåndtering og udnyttelse af tilgængelig netværksbåndbredde.