二、利用流量控制功能来减少设备之间的流量丢失

在IEEE802.3种,提出了流量控制的特性。通过这个特性,就可以有效的避免设备之间的流量丢失。不过可惜的是,并不是所有的网络设备都支持这个特性。虽然如此,为了避免上述的数据流量丢失错误,笔者还是建议尽可能的采用流量控制功能来防止数据流量丢失。这个数据流量控制功能的工作原理比较简单,其提供了一种在两台设备之间,或者精确的说,是在链路伙伴之间提供一种缓冲区是否满的这种情况进行沟通的一种手段。当链路伙伴发现对端设备的缓冲区已经满了,则将停止发送数据流量,并且在对端设备表明它具有接收流量的能力之后(缓冲区得到一定的释放之后)再重新发送流量。其实,这个特性只是对QOS特性的一个补充。网络工程师普遍认为,这个特性有助于解决缓冲区溢出导致的数据流量丢失问题。

如上图所示,当交换机B发现自己的缓冲区已满无法接收更多的数据时,就会向其链接伙伴交换机A发送消息,告知自己的缓冲区已经满了无法再接收新的数据。此时交换机B就会停止向其发送新的数据,直到交换机B再次发送消息给交换机A,可以重新发数据为止。在流量控制特性中,网络设备是使用特定的数据正来通知链路伙伴网络设备来延迟一段特定的时间后再重新发送数据。那么这个特定的时间是多少呢?根据现在的网络通行标准,这个时间不是有用户或者网络管理员配置的。而是接收端根据实际情况来自动确定的,或者说是根据接收端的交换机等网络设备的端口逻辑来确定的。通常情况下,网络管理员不需要关注这个时间是多少,只需要了解此时会发生数据延迟。这也是采用数据流量控制所带来的一个负面作用。不过话说回来,比起数据流量丢失来说,这个数据延迟还是可以接受的。毕竟只要能够完全接收数据,即使发送数据延迟的话,至少这个数据还可以正常使用。相反,只要一发生数据流量丢失,无法完整的受到全部数据,那么这个文件就无法正常使用。


相关内容