Inhoudsopgave:
Definitie - Wat betekent Sliding Window?
Schuifvenster is een techniek voor het besturen van verzonden datapakketten tussen twee netwerkcomputers waarbij betrouwbare en opeenvolgende levering van datapakketten vereist is, zoals bij het gebruik van de Data Link Layer (OSI-model) of Transmission Control Protocol (TCP).
In de schuifvenstertechniek bevat elk datapakket (voor de meeste datalinklagen) en byte (in TCP) een uniek opeenvolgend volgnummer, dat door de ontvangende computer wordt gebruikt om gegevens in de juiste volgorde te plaatsen. Het doel van de schuifvenstertechniek is om de volgnummers te gebruiken om dubbele gegevens te voorkomen en ontbrekende gegevens aan te vragen.
Schuifraam wordt ook wel windowing genoemd.
Techopedia legt Sliding Window uit
De schuifraamtechniek legt verschillende limieten op het aantal datapakketten dat wordt verzonden voordat wordt gewacht op een bevestigingssignaal van de ontvangende computer. Het aantal datapakketten wordt de venstergrootte genoemd. De limieten voor de venstergrootte variëren afhankelijk van de snelheid waarmee de ontvangende computer de datapakketten kan verwerken en van de capaciteit van de buffer.
Als de toepassing in de ontvangende computer de datapakketten langzamer verwerkt dan de verzendende computer ze verzendt, zal het bevestigingssignaal van de ontvangende computer de verzendende computer vertellen om het aantal pakketten in het venster te verkleinen bij de volgende verzending, of om de verzending tijdelijk te stoppen om de buffer vrij te maken. Als aan de andere kant de ontvangende toepassing de datapakketten sneller kan verwerken dan de verzendende computer ze verzendt, zal het bevestigingssignaal de verzendende computer vertellen om het aantal pakketten in de volgende verzending te vergroten.
Voor een efficiënte datapakketverzending mag de zender niet worden gedwongen om onnodig lang te stoppen met verzenden. Dit gebeurt als de ontvangende computer een bevestigingssignaal verzendt om te stoppen en geen ander signaal verzendt om te beginnen met verzenden wanneer de buffer beschikbare ruimte heeft of leeg is. Andere overwegingen voor efficiënte datapakketverzending zijn onder meer:
- Retourvertragingstijd
- End-to-end vertraging
- Bandbreedte vertraging
