Não há garantia única de entrega de pacotes no modelo de rede de melhor esforço da Internet. Em vez disso, a entrega confiável é alcançada através de vários protocolos e mecanismos que trabalham para * aumentar * a probabilidade de transmissão bem -sucedida, mas não oferecem garantias absolutas. Aqui está um colapso:
*
TCP (protocolo de controle de transmissão): O TCP é o cavalo de trabalho para transferência de dados confiável. Emprega várias técnicas para garantir uma entrega confiável:
*
Números de sequência: Cada pacote é numerado, permitindo que o receptor detecte pacotes ausentes ou fora de ordem.
*
Agradecimentos (ACKs): O receptor envia ACKs de volta ao remetente, confirmando o recebimento de pacotes. Se um ACK não for recebido dentro de um período de tempo limite, o remetente retransmissão do pacote.
*
Controle de fluxo: O TCP gerencia a taxa de transmissão de dados para impedir que o remetente sobrecarregue o receptor.
*
Controle de congestionamento: O TCP ajusta a taxa de transmissão com base no congestionamento da rede para evitar a sobrecarga da rede.
Mesmo com o TCP, as garantias absolutas são ilusórias. Eventos extremamente raros, como falhas catastróficas de rede ou partições de rede prolongadas, ainda podem levar à perda de pacotes.
*
udp (protocolo de datagrama do usuário): O UDP é um protocolo sem conexão que não garante a entrega. É mais rápido que o TCP porque não inclui a sobrecarga dos mecanismos de confiabilidade. Aplicativos que podem tolerar alguma perda de pacotes (como streaming de vídeo ou jogos on -line) costumam usar o UDP. A confiabilidade, se necessário, é implementada no nível do aplicativo.
*
mecanismos de nível de aplicação: Os aplicativos podem criar seus próprios mecanismos de confiabilidade no topo do UDP ou mesmo do TCP para aumentar ainda mais a confiabilidade. Isso pode envolver coisas como:
*
Protocolos de retransmissão: Semelhante ao mecanismo de retransmissão do TCP, mas gerenciado pelo aplicativo.
*
Summas de verificação e códigos de correção de erro: Isso ajuda a detectar e às vezes corrigir erros nos pacotes recebidos.
Em resumo:Embora o TCP e vários mecanismos em nível de aplicativo melhorem significativamente a probabilidade de entrega de pacotes,
Nenhum protocolo de rede fornece uma garantia de 100%. Fatores externos, como interrupções de rede, falhas de equipamentos e ataques maliciosos, sempre podem interromper a transmissão. A confiabilidade é uma questão de probabilidade e mitigação, não a certeza absoluta.