É possível que pacotes enviados usando TCP cheguem com dados diferentes?

É possível que pacotes enviados usando TCP cheguem com dados diferentes?

Às vezes, na minha biblioteca de rede, quando envio um pacote, os dados chegam diferentes de quando os enviei. Presumi que o TCP garantisse a entrega exata. Isso é verdade? Ou deve haver algo errado no processo de empacotamento e recebimento do código da minha própria biblioteca?

Responder1

O TCP NÃO garante a entrega exata dos seus dados no nível de um pacote individual.

Em vez disso, o TCP fornece a estrutura para determinar a integridade dos dados, incluindo números de sequência e somas de verificação no cabeçalho de cada pacote, que o destinatário deve verificar e um mecanismo onde o destinatário pode solicitar ao remetente a retransmissão dos pacotes quando os pacotes não chegam. ou as somas de verificação falham.

Responder2

Tente combinar a soma de verificação. Se não corresponder, é provável que os dados estejam sendo alterados por algo ou alguém após serem enviados e antes de chegarem ao destino. Como uma coisa do MITM. É possível em ambas as extremidades, remetente e destinatário.

informação relacionada