假设我们有具有多个千兆位接口的交换机,并且有两台机器连接到该交换机上,一台具有千兆位NIC,另一台带有100 mbps NIC,我们开始将文件从千兆位计算机复制到快速以太网机器。该文件复制速度将是最大100 mbps,但1 gbps的机器将如何知道有关第二方的速度和发送慢?是通过TCP消息吗?如果我们正在发送ICMP/UDP数据包,会发生什么?
发布于 2017-04-11 17:44:18
从根本上说,如果交换机只能在100 m处转发数据包,那么交换机缓冲区就会溢出并丢弃数据包。
如果您正在使用TCP,发送方将对任何ACK作出反应,减慢速度,直到达到平衡(或多或少)为止。
发布于 2017-04-11 17:40:06
如果TCP正在使用,而以太网流量控制没有,则会发生以下情况。
其他协议组合可能会有所不同。在某些情况下,大量数据包可能会被交换机丢弃。
第一个也是最常用的以太网流量控制系统使用“暂停帧”。暂停帧是为了在以太网内实现“背压”的一种手段,这样交换机缓冲区就不会溢出,因为发送节点的速度仅限于下游设备可以标记的内容。不幸的是,它们造成了这样的问题:一个拥挤的流可能导致阻塞其他不拥挤的流,因此它们在实践中常常被禁用。
https://networkengineering.stackexchange.com/questions/40359
复制相似问题