Networking 路由器丢弃网络数据包

Networking 路由器丢弃网络数据包,networking,router,packets,Networking,Router,Packets,我有一个简短的问题。如果在两台主机之间建立TCP连接并协商ECN,则接收方将通知发送方任何网络拥塞。 如果ECN未协商且路由器丢弃数据包,它是否向发送方发送关于丢弃数据包的ICMP通知 我只是想知道,为什么中间路由器不能在丢弃数据包之前发送icmp消息?因为它有一种与发送者沟通的方式。为什么发送方要等到接收到来自接收方的确认?否。ECN位被设置并与数据包一起传输,作为通知发送方应降低其传输速率的机制。这将消除数据包的丢弃 然而,TCP协议栈是为了保证传输,而不是干涉路由器。如果一个数据包被丢弃,

我有一个简短的问题。如果在两台主机之间建立TCP连接并协商ECN,则接收方将通知发送方任何网络拥塞。 如果ECN未协商且路由器丢弃数据包,它是否向发送方发送关于丢弃数据包的ICMP通知


我只是想知道,为什么中间路由器不能在丢弃数据包之前发送icmp消息?因为它有一种与发送者沟通的方式。为什么发送方要等到接收到来自接收方的确认?否。ECN位被设置并与数据包一起传输,作为通知发送方应降低其传输速率的机制。这将消除数据包的丢弃


然而,TCP协议栈是为了保证传输,而不是干涉路由器。如果一个数据包被丢弃,接收方有责任检测并再次请求该数据包。

我只是想知道,为什么中间路由器不能在丢弃数据包之前发送icmp消息?因为它有一种与发送者沟通的方式。为什么发送方要等到收到发送方的确认?理论上,我认为可以,但TCP协议不是这样设计的。假设ICMP数据包本身被丢弃?发送者不会发现传输问题。