【技术实现步骤摘要】
一种基于定时器的端口队列调度方法及电子设备
[0001]本专利技术涉及数据网络通信
,具体涉及一种基于定时器的端口队列调度方法及电子设备。
技术介绍
[0002]在QoS工具集的所有机制中,拥塞管理工具在应用服务级别提供了最重要的作用。拥塞管理工具,即排队工具。在出接口发送流量拥塞期间,使用拥塞管理功能,积累在某一个接口的数据包就会排队等候,基于分配给数据包的优先权以及为这个接口配置的排队机制,这些数据包能够按照排定的顺序发送出去。
[0003]单个的排队机制,在处理汇聚网络所需的流量混合方面都存在严重的缺陷,它们要么就公平地处理数据,要么就优先处理诸如语音的实时应用程序,没有有效地处理两种类型的流量。拥塞管理QoS功能提供了PQ、WFQ及LPQ几种类型的排队协议,每一种都可以指定创建数目不等的队列,能在一定程度上提供流量以及流量的发送顺序的差异性,但无法保障汇聚网络所需的流量混合方面的需求。
技术实现思路
[0004]针对现有技术中的上述不足,本专利技术提供的一种基于定时器的端口队列调度方法及电子设备解决了已有技术无法保障汇聚网络所需的流量混合方面的需求的问题。
[0005]为了达到上述专利技术目的,本专利技术采用的技术方案为:
[0006]提供一种基于定时器的端口队列调度方法,其包括以下步骤:
[0007]S1、向端口发送报文,基于优先权分配,确认报文进入队列的类型;
[0008]S2、基于根据上一次运行定时器机制的瞬间值,初始化定时器;
[0 ...
【技术保护点】
【技术特征摘要】
1.一种基于定时器的端口队列调度方法,其特征在于,包括以下步骤:S1、向端口发送报文,基于优先权分配,确认报文进入队列的类型;S2、基于根据上一次运行定时器机制的瞬间值,初始化定时器;S3、基于队列类型的顺序,通过定时器调度端口队列补充令牌;S4、基于报文的队列类型和调度的令牌,安排报文入队和出队;S5、在出队过程中,循环调度队列链表中的节点,并使队列根据权重比出队,完成端口队列调度。2.根据权利要求1所述的基于定时器的端口队列调度方法,其特征在于,步骤S2的具体方法为:S2
‑
1、将定时器分为五个等级,第一级按照1个时间单位,分配256个令牌桶,第二级到第五级均分配64个令牌桶;S2
‑
2、根据上一次运行定时器机制的瞬间值二进制低8位对应的令牌桶位置,将定时器挂接到第一级的定时器链表上,得到第一级定时器链表;根据上一次运行定时器机制的瞬间值二进制第9位到第14位对应的令牌桶位置,将定时器挂接到第二级的定时器链表上,得到第二级定时器链表;根据上一次运行定时器机制的瞬间值二进制第15位到第20位对应的令牌桶位置,将定时器挂接到第三级的定时器链表上,得到第三级定时器链表;根据上一次运行定时器机制的瞬间值二进制第21位到第26位对应的令牌桶位置,将定时器挂接到第四级的定时器链表上,得到第四级定时器链表;根据上一次运行定时器机制的瞬间值二进制第27位到第32位对应的令牌桶位置,将定时器挂接到第五级的定时器链表上,得到第五级定时器链表,完成初始化。3.根据权利要求1所述的基于定时器的端口队列调度方法,其特征在于,步骤S3的具体方法为:S3
‑
1、当定时器调度到从属于某端口的令牌桶时,更新PQ队列的PIR需求;S3
‑
2、获取PQ队列的整形速率,并计算更新间隔,通过更新间隔计算PQ队列每次更新的令牌数;S3
‑
3、根据端口的最大传输单元计算PQ队列的令牌桶深度;其中PQ队列的令牌桶深度不少于一次更新令牌数的2倍;S3
‑
4、判断PQ队列中令牌数是否小于PQ队列的令牌桶深度,若是则计算两者差值作为PQ队列需要补充的令牌,并进入步骤S3
‑
5;否则不补充令牌,并进入步骤S3
‑
6;S3
‑
5、判断需要补充的令牌数是否大于端口此次更新的剩余令牌数,若是则将剩余令牌全部用于PQ队列的补充,并结束此次端口队列的调度,等待定时器下一次的调度;否则将PQ队列令牌补充完,将端口此次更新的剩余令牌减去此次补充的数量,并进入步骤S3
‑
6;S3
‑
6、判断是否有剩余令牌,若是则统计需要添加令牌的WFQ队列的数量和总权重,并进入步骤S3
‑
7;否则等待定时器下一次的令牌调度;S3
‑
7、计算当前WFQ队列的令牌桶深度,判断当前WFQ队列中令牌数是否小于WFQ队列的令牌桶深度,若是则计算两者差值作为当前WFQ队列需要补充的令牌,并进入步骤S3
‑
8;否则不补充令牌,并进入步骤S3
‑
9;S3
‑
8、判断当前WFQ队列是否需要更新令牌,若是则根据当前WFQ队列的权重...
【专利技术属性】
技术研发人员:詹晋川,张磊,郭杨平,周志远,
申请(专利权)人:深圳市风云实业有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。