ns3队列管理方式的方法和区别
ns3队列管理:
1.FIFO(First In First Out)
调度策略,决定发包的顺序
tail-drop policy 决定队列长度
路由器的队列通常都是按照FIFO的规则处理到来的分组。由于队列长度有限,当队列已满时,以后再到达的所有分组(如果能够继续排队,这些分组都将排在队列尾部)将都被丢弃。这就是尾部丢弃策略(tail-drop policy)
2.pfifo-fast
(p是以packet为单位)
特点是先进先出(FIFO),没有任何数据包被特殊对待,这个队列有3个所谓的“频道”。FIFO规则应用于每一个频道。如果在频道0有数据包等待发送,1频道的包就不会被处理,1频道和2频道之间的关系也是如此。
if packet >packet_limit
tail-drop
else
分配优先级(如何分配)
3.codel
在网络的每一跳上独立计算的。该算法在一个间隔 (最初为100毫秒)内运行。 通过跳监控每个数据包的排队延迟。 每个数据包出队的时候会被转发。先计算每个包的排队延迟(数据包在队列中等待了多少时间)。在这个时间间隔内的最小 排队延迟 要存储下来。当这个时间间隔内的最后一个数据包出队时,如果该间隔的最小 排队延迟 大于5毫秒,则会丢弃此单个数据包,并缩短用于下一组数据包的时间间隔。 如果该时间间隔的最低排队延迟小于5毫秒,则转发数据包并将该时间间隔重置为100毫秒。
当缩短间隔