Programa TCP
Como o TCP funciona
O TCP baseia-se na comunicação ponto a ponto entre dois hosts de rede. Ele recebe os dados dos programas e processa esses dados como um fluxo de bytes. Os bytes são agrupados em segmentos que o TCP numera e seqüencia para entrega.
Antes que dois hosts TCP possam trocar dados, eles devem primeiro estabelecer uma sessão entre si. Uma sessão TCP é iniciada através de um processo conhecido como handshake de 3 vias. Esse processo sincroniza os números de seqüência e oferece informações de controle necessárias para estabelecer uma conexão virtual entre os dois hosts.
Depois de concluído o handshake em 3 vias inicial, os segmentos são enviados e confirmados de forma seqüencial entre os hosts remetente e destinatário. Um processo de handshake semelhante é usado pelo TCP antes de fechar a conexão para verificar se os dois hosts acabaram de enviar e receber todos os dados.
Os segmentos TCP são encapsulados e enviados em data gramas IP.
Portas TCP
As portas TCP usam uma porta de programa específica para entregar dados enviados por meio do TCP. As portas TCP são mais complexas e operam de forma diferente das portas UDP.
Enquanto a porta UDP opera como uma fila de mensagem única e um ponto de extremidade de rede para a comunicação baseada em UDP, o ponto de extremidade final de todas as comunicações TCP é uma conexão exclusiva. Cada conexão TCP é identificada de forma exclusiva por pontos de extremidade duplos.
Cada porta de servidor TCP é capaz de oferecer acesso compartilhado a várias conexões pois todas as conexões TCP são identificadas de forma exclusiva por dois pares de endereço IP e portas TCP (um par de endereço/porta para cada host conectado).
Os programas TCP usam números de porta reservados ou conhecidos, conforme apresentado na ilustração a seguir.
O lado do servidor de cada programa que usa portas TCP escuta as mensagens que chegam no seu número de porta conhecido. Todos os números de porta