Índice:
Definição - O que significa Sliding Window?
A janela deslizante é uma técnica para controlar pacotes de dados transmitidos entre dois computadores da rede em que é necessária a entrega confiável e sequencial de pacotes de dados, como ao usar o Data Link Layer (modelo OSI) ou o Transmission Control Protocol (TCP).
Na técnica da janela deslizante, cada pacote de dados (para a maioria das camadas de link de dados) e byte (no TCP) inclui um número de sequência consecutivo exclusivo, usado pelo computador receptor para colocar os dados na ordem correta. O objetivo da técnica da janela deslizante é usar os números de sequência para evitar dados duplicados e solicitar dados ausentes.
Janela deslizante também é conhecida como janelas.
Techopedia explica Janela Deslizante
A técnica da janela deslizante impõe limites variados ao número de pacotes de dados enviados antes de aguardar o retorno do sinal de confirmação do computador receptor. O número de pacotes de dados é chamado de tamanho da janela. Os limites no tamanho da janela variam dependendo da taxa na qual o computador receptor pode processar os pacotes de dados e da capacidade de seu buffer.
Se o aplicativo no computador receptor processar os pacotes de dados em uma taxa mais lenta do que o computador remetente os envia, o sinal de confirmação do computador receptor instruirá o computador remetente a diminuir o número de pacotes no tamanho da janela na próxima transmissão, ou para interromper temporariamente a transmissão para liberar o buffer. Se, por outro lado, o aplicativo receptor puder processar os pacotes de dados mais rapidamente do que o computador remetente os envia, o sinal de confirmação instruirá o computador remetente a aumentar o número de pacotes na próxima transmissão.
Para uma transmissão eficiente de pacotes de dados, o transmissor não deve ser forçado a parar de enviar por um tempo desnecessariamente longo. Isso acontecerá se o computador receptor enviar um sinal de reconhecimento para parar e não enviar outro sinal para começar a transmitir quando o buffer tiver espaço disponível ou estiver vazio. Outras considerações para a transmissão eficiente de pacotes de dados incluem:
- Tempo de atraso de ida e volta
- Atraso de ponta a ponta
- Atraso na largura de banda