PS:VOQ 虚拟输出队列
VoQ(Virtual Output Queue)
是网络设备接口在无拥塞的情况下,防止HOL阻塞(Head of Line Blocking)的队列技术。
在介绍VOQ之前我门想一下,是不是没有拥塞的时候就不再需要QOS了呢?”
可能有人说需要,也有人说不需要。那么设想这样一个场景,有两个数据包,一个为internet报文,长度为1500字节,另外一个只有2个字节是VOIP的报文,internet的报文优先进入交换网,如果按照普通的设计,交换网的每一条crossbar都是总线的结构,也就是说VOIP的数据要等待internet的流量传输完毕以后才可以传输,这样的设计肯定是不合理的,所以说在没有拥塞的时候也是需要QOS技术来保证关键业务的传输的。这种因为队列前部拥塞导致后面的数据无法及时传送的现象就称为HOL阻塞(Head of Line Blocking)。造成HOL阻塞的根源是向所有的转发方向只有一个队列,无法在不同的转发方向间进行调度。如果向不同的转发方向有独立的队列,则可以通过在不同队列间的轮循调度,优化报文转发,避免HOL阻塞。
然而普通的交换网是不具备QOS功能的QOS只由线路板上的TM模块完成。为了在交换网上实现QOS,就引入了一种新的技术VOQ技术。在一个物理通道上(一个Crossbar端口),面向多个输出方向实现多个虚拟输出队列的方式,就是VoQ(Virtual Output Queue)。VoQ除了可以避免HOL阻塞,依据优先级进行调度外,还需要支持交换网级的端到端Flow Control,可以针对Crossbar端口进行速率适配,从而真正实现了通过Crossbar的无阻塞交换。