TCP
TCP (Protocolo de Controle de Transmissão) - é um protocolo de transmissão da Internet, está na camada de transporte junto com UDP, RTP. A diferença entre UDP e TCP é que é mais confiável.
Garantias TCP
- Entrega de dados
- Preservação da ordem das mensagens.
A garantia de entrega de dados e preservação de uma ordem de mensagens é a recepção da mensagem de confirmação.
Um exemplo de funcionamento do protocolo
O remetente envia uma mensagem pela rede, o destinatário a recebe e envia um ACK ao remetente (Reconhecimento; ACK significa que o segmento de dados foi recebido). A próxima mensagem é enviada e, caso o destinatário a receba, enviará o ACK novamente.
Isso será repetido até que o arquivo de envio seja recebido pelo destinatário.
Operação do protocolo em caso de erro
Se ocorrer um erro durante o transporte, o segmento de dados não chegará ao destinatário e o destinatário não enviará o ASK. O remetente, ao enviar o arquivo, define um timelock após o qual o arquivo será enviado novamente se nenhum ASK chegar. Se o temporizador for bem-sucedido, o protocolo retoma o envio de segmentos até que o arquivo seja finalmente recebido.
O protocolo TCP reconhece vários segmentos enviados um após o outro, em vez de um segmento individual.
Os arquivos chegam ao TCP como um grande fluxo de bytes. Em seguida, esse fluxo é dividido em pedaços. Esses pedaços são chamados de segmentos. Uma vez separados, os segmentos são enviados um após o outro para o destinatário. O destinatário, recebe-os, combina-os num fluxo e envia-o à aplicação.
Todo o processo de envio é protegido apenas contra a perda de segmentos. Os segmentos recebidos podem não ser recebidos na ordem em que foram enviados. Os segmentos também podem ser duplicados.