Além do endereço IP, a comunicação TCP requer várias outras informações para estabelecer uma conexão e facilitar a troca de dados:
1. Número da porta: * O TCP usa números de porta para identificar aplicativos ou serviços específicos em execução em um host. Cada número da porta representa um serviço exclusivo.
* Por exemplo, o HTTP usa a porta 80, enquanto o SSH usa a porta 22.
* As portas de origem e de destino estão incluídas no cabeçalho do TCP.
2. Números de sequência: * O TCP usa números de sequência para garantir que os pacotes de dados cheguem na ordem correta.
* Cada pacote recebe um número de sequência exclusivo, permitindo que o receptor remonte os dados na ordem correta, mesmo que os pacotes cheguem fora da sequência.
3. Números de reconhecimento: * O TCP usa números de reconhecimento para reconhecer o recebimento de pacotes de dados.
* Quando um pacote é recebido, o receptor envia uma mensagem de reconhecimento que contém o número de sequência do próximo pacote esperado.
* Esse mecanismo garante que o remetente saiba quais pacotes foram recebidos com sucesso e podem reenviar pacotes ausentes ou corrompidos.
4. Bits de controle: * Os pacotes TCP incluem vários bits de controle que controlam o fluxo de dados e indicam o status da conexão.
* Esses bits incluem:
*
syn (sincronizar): Usado para iniciar uma nova conexão.
*
ack (reconhecimento): Usado para reconhecer o recebimento de dados.
*
fin (acabamento): Usado para encerrar uma conexão.
*
rst (redefinir): Usado para redefinir uma conexão.
*
urg (urgente): Usado para indicar que um pacote contém dados urgentes.
5. Tamanho da janela: * O tamanho da janela define a quantidade de dados que podem ser transmitidos sem receber um reconhecimento.
* Isso ajuda a otimizar a transferência de dados, permitindo que o remetente envie vários pacotes antes de aguardar a confirmação, melhorando assim a eficiência.
6. Soma de verificação: * O TCP usa uma soma de verificação para detectar erros na transmissão de dados.
* O receptor calcula a soma de verificação dos dados recebidos e o compara à soma de verificação incluída no cabeçalho do TCP. Se as somas de verificação corresponderem, os dados serão considerados livres de erros.
7. Opções: * O TCP permite campos opcionais que fornecem informações adicionais, como:
*
Tamanho máximo do segmento (MSS): Especifica o tamanho máximo de um segmento TCP que o remetente pode enviar.
*
Opção de timestamp: Permite o tempo preciso dos pacotes de dados.
*
Opção de escala de janela: Estende o tamanho da janela para lidar com grandes quantidades de dados.
Em resumo, embora o endereço IP seja crucial para o roteamento de dados, a comunicação TCP depende de um conjunto complexo de parâmetros para garantir a entrega de dados confiável e ordenada.