Mecanismo de Janelas

O mecanismo de janelas do TCP torna possível enviar múltiplos segmentos antes da chegada de um reconhecimento. O fato de TCP ser um protocolo "sliding Window" também resolve o problema de controle de fluxo end-to-end, permitindo que o receptor restrinja a transmissão até ele ter suficiente espaço de buffer para acomodar mais dados. Este mecanismo de janelas opera ao nível de bytes e não de segmentos ou pacotes, ou seja o fluxo de dados é numerado sequencialmente, e um remetente (transmissor) mantem três ponteiros associados com cada conexão.

É importante entender que devido as conexões em TCP serem full duplex, duas tranferências ocorrem simultaneamente numa conexão, uma em cada direção. As duas transferências são completamente independentes já que em qualquer momento os dados podem fluir através da conexão numa direção ou em ambas. De modo que o software TCP em cada extremo da conexão mantém duas janelas por conexão (para um total de quatro), uma janela para os dados sendo enviados, e outra janela para os dados recebidos. O tamanho da janela pode ser definido, e no caso de TCP, ele permite que o tamanho da janela varie no tempo.