当 ping 丢失时,会发生什么?

网络工程 路由 ipv4
2021-07-09 05:15:06

假设您发送的消息没有到达目的地,例如 ping。该消息的内容是否受到保护?重传是如何完成的?

4个回答

IP 协议不保证数据包将到达、准时到达或以正确的顺序到达。IP 唯一可以验证的是数据包头是否完整(由于头校验和)。因此,如果 ping 丢失,它就是...丢失。由发送程序来检测没有收到相应的回复。如果要保证交付,则需要依赖第 4 层协议,即 TCP。

该消息的内容不再像您发送它时那样受到保护。除非您使用某种加密机制来提供机密性,否则沿该路径的任何人(可能具有恶意)都可以窥探您的数据包。

重传是由TCP完成的关于UDP不能说同样的话,它只是被丢弃,因为通常不需要重传(即数据包到达不同步)。

当 ICMP Echo 消息丢失时,它会无限期地丢失。消息不会被重传,因为 ICMP 运行在 IP 之上,不提供可靠性。

考虑在可能有数据包丢失的路径上发出 ping。某些 ping 将丢失,而其他 ping 可能会收到回复。如果 ICMP 提供可靠性并且能够重新传输,您将永远不会看到 ping 故障通过降级路径,尽管大多数 ping 实用程序的默认超时为 2 秒。

Ping 是 ICMP。在传输过程中,如果 TTL(生存时间)到期,则数据包将被丢弃。请参阅http://en.wikipedia.org/wiki/Internet_Control_Message_Protocol