Estrutura do segmento TCP

 Agora que examinamos brevemente a conexão TCP, vamos verificar a estrutura do segmento TCP, que consiste em campos de cabeçalho e um campo de dados. O campo de dados contém uma quantidade de dados de aplicação. Como citado antes, o MSS limita o tamanho máximo do campo de dados de um segmento. Quando o TCP envia um arquivo grande, tal como uma imagem de uma página Web, ele comumente fragmenta o segmento em pedaços de tamanho MSS (exceto o último pedaço, que muitas vezes é menor do que o MSS). Aplicações interativas, contudo, muitas vezes transmitem quantidades de dados que são menores do que o MSS. Por exemplo, com aplicações de login remoto como Telnet, o campo de dados do segmento TCP é, muitas vezes, de apenas 1 byte. Como o cabeçalho TCP tem tipicamente 20 bytes (12 bytes mais do que o cabeçalho UDP), o comprimento dos segmentos enviados por Telnet pode ser de apenas 21 bytes.

A Figura 3.29 mostra a estrutura do segmento TCP. Como acontece com o UDP, o cabeçalho inclui números de porta de fonte e de destino, que são usados para multiplexação e demultiplexação de dados de/para aplicações de camadas superiores e, assim como no UDP, inclui um campo de soma de verificação. Um cabeçalho de segmento TCP também contém os seguintes campos:

  • O campo de número de sequência de 32 bits e o campo de número de reconhecimento de 32 bits são usados pelos TCPs remetente e destinatário na implementação de um serviço confiável de transferência de dados, como discutido a seguir.
  • O campo de janela de recepção de 16 bits é usado para controle de fluxo. Veremos em breve que esse campo é usado para indicar o número de bytes que um destinatário está disposto a aceitar.
  • O campo de comprimento de cabeçalho de 4 bits especifica o comprimento do cabeçalho TCP em palavras de 32 bits. O cabeçalho TCP pode ter comprimento variável devido ao campo de opções TCP. (O campo de opções TCP normalmente está vazio, de modo que o comprimento do cabeçalho TCP típico é 20 bytes.)
  • O campo de opções, opcional e de comprimento variável, é usado quando um remetente e um destinatário negociam o MSS, ou como um fator de aumento de escala da janela para utilização em redes de alta velocidade. Uma opção de marca de tempo é também definida. Consulte o RFC 854 e o RFC 1323 para detalhes adicionais.
  • O campo de flag contém 6 bits. O bit ACK é usado para indicar se o valor carregado no campo de reconhecimento é válido, isto é, se o segmento contém um reconhecimento para um segmento que foi recebido com sucesso. Os bits RST, SYN e FIN são usados para estabelecer e encerrar a conexão, como discutiremos ao final desta seção. Marcar o bit PSH indica que o destinatário deve passar os dados para a camada superior imediatamente. Por fim, o bit URG é usado para mostrar que há dados nesse segmento que a entidade da camada superior do lado remetente marcou como ‘urgentes’. A localização do último byte desses dados urgentes é indicada pelo campo de ponteiro de urgência de 16 bits. O TCP deve informar à entidade da camada superior do lado destinatário quando existem dados urgentes e passar a ela um ponteiro para o final desses dados. (Na prática, o PSH, o URG e o ponteiro de dados urgentes não são usados. Contudo, mencionamos esses campos para descrever todos).


  

Comentários

Postagens mais visitadas deste blog

Wi-Fi: LANs sem fio 802.11

Caches Web

Acesso celular à Internet