基于多通道数据包优先级的路由方法及设备的制造方法

文档序号:10538635阅读:209来源:国知局
基于多通道数据包优先级的路由方法及设备的制造方法
【专利摘要】本发明涉及数字信号处理技术领域,提供一种基于多通道数据包优先级的路由方法及设备,以解决目前的路由算法在面对突发速度较高的数据流时,会出现数据丢包的,该设备包括FIFO模块和数据路由模块,FIFO模块与数据路由模块之间通过数据包通道连接,数据路由模块包括数据查询模块和数据优先级判断与选择模块。本发明提出的技术方案根据数据包的优先级对数据包进行选择性路由,具备95%以上的数据路由效率,同时具有较低延迟。
【专利说明】
基于多通道数据包优先级的路由方法及设备
技术领域
[0001] 本发明属于数字信号处理技术领域,特别涉及一种基于多通道数据包优先级的路 由方法及设备。
【背景技术】
[0002] 数据路由算法,又名选路算法,其目的是找到一条从源路由器到目的路由器的 "好"路径,即具有最低费用的路径,路由算法是提高路由协议功能,尽量减少路由时所带来 开销的算法。当实现路由算法的软件必须运行在物理资源有限的计算机上时高效尤其重 要。路由算法必须健壮,即在出现不正常或不可预见事件的情况下必须仍能正常处理,例如 硬件故障、高负载和不正确的实现。因为路由器位于网络的连接点,当它们失效时会产生重 大的问题。
[0003] 目前的路由算法不具备根据数据优先级进行路由选择的功能,因此在面对突发速 度较高的数据流时,会发生数据丢包的情况。

【发明内容】

[0004] 【要解决的技术问题】
[0005] 本发明的目的是提供一种基于多通道数据包优先级的路由方法及设备,以解决目 前的路由算法在面对突发速度较高的数据流时,会出现数据丢包的问题。
[0006] 【技术方案】
[0007] 本发明是通过以下技术方案实现的。
[0008] 本发明首先涉及一种基于多通道数据包优先级的路由方法,包括步骤:
[0009] A、顺序查询数据包通道S1~Sn中的各个通道的FIFO状态,判断各个通道的FIFO深 度是否达到预设值,其中η为输入的数据包通道数量;
[0010] Β、若数据包通道的FIFO深度达到预设值,则将该数据包通道的优先级加1;
[0011] C、获得当前优先级最高的数据包通道;
[0012] D、将步骤C中得到的优先级最高的数据包通道的数据包发送至路由出口,并将该 优先级最高的数据包通道的优先级减1,返回到步骤A,循环执行直至完成所有数据包通道 的数据包的发送。
[0013] 作为一种优选的实施方式,所述获得当前优先级最高的数据包通道的方法为:将 数据包通道S1~Sn分成[il/21个组,进行优先级对比,将优先级高的数据包通道保存至到C1 组,C1组包含[W/21个数据包通道;再将C1组分成丨η/4〗个组进行优先级对比,将优先级高的 数据包通道保存至C2组,C2组包含丨η/41个数据包通道;再将C2组分成| η/8〗个组进行优先 级对比,将优先级高的数据包通道保存至C3组,按此规律分组判断优先级直至得到优先级 最高的数据包通道Sy,其中为向上取整符号。
[0014] 作为另一种优选的实施方式,所述输入的数据包流量之和小于数据路由的路由出 口的流量带宽。
[0015] 本发明还涉及一种基于多通道数据包优先级的路由设备,包括FIFO模块和数据路 由模块,所述FIFO模块与数据路由模块之间通过数据包通道连接,所述数据路由模块包括 数据查询模块和数据优先级判断与选择模块,
[0016] 所述数据查询模块被配置成:顺序查询数据包通道S1~Sn中的各个通道的FIFO状 态,判断各个通道的FIFO深度是否达到预设值,其中η为输入的数据包通道数量,若数据包 通道的FIFO深度达到预设值,则将该数据包通道的优先级加1;
[0017] 所述数据优先级判断与选择模块被配置成:获得当前优先级最高的数据包通道; 将得到的优先级最高的数据包通道的数据包发送至路由出口,并将该优先级最高的数据包 通道的优先级减1并返回数据查询模块继续查询各个通道的FIFO状态。
[0018] 作为一种优选的实施方式,所述数据优先级判断与选择模块具体被配置成:将数 据包通道S1~Sn分成丨n/21个组,进行优先级对比,将优先级高的数据包通道保存至到C1 组,ci组包含[π/21个数据包通道;再将C1组分成[n/4 _|个组进行优先级对比,将优先级高的 数据包通道保存至C2组,C2组包含丨n/41个数据包通道;再将C2组分成[π/81个组进行优先 级对比,将优先级高的数据包通道保存至C3组,按此规律分组判断优先级直至得到优先级 的数据包通道Sy,其中[1为向上取整符号;将得到的优先级最高的数据包通道Sy的数据 包发送至路由出口,并将其对应的优先级减1并返回数据查询模块继续查询各个通道的 FIFO状态。
[0019] 作为另一种优选的实施方式,所述输入的数据包流量之和小于数据路由模块的路 由出口的流量带宽。
[0020] 【有益效果】
[0021] 本发明提出的技术方案具有以下有益效果:
[0022] (1)本发明根据数据包的优先级对数据包进行选择性路由,具备95%以上的数据 路由效率,同时具有较低延迟。
[0023] (2)本发明中的数据包通道数量可以很方便的进行扩展。
[0024] (3)本发明具备较低的逻辑复杂度,适用于快速设计。
【附图说明】
[0025] 图1为本发明的实施例一提供的基于多通道数据包优先级的路由设备的原理框 图。
【具体实施方式】
[0026] 为使本发明的目的、技术方案和优点更加清楚,下面将对本发明的【具体实施方式】 进行清楚、完整的描述。
[0027] 实施例一
[0028]图1为本发明实施例一提供的基于多通道数据包优先级的路由设备的原理框图。 如图1所示,包括FIFO模块和数据路由模块,FIFO模块与数据路由模块之间通过数据包通道 连接,具体地,本实施例包括η个FIFO模块:FIFOi-FIFO^FIFOi与数据路由模块之间形成数 据包通道S1,FIF02与数据路由模块之间形成数据包通道S2,"_,FIFOn与数据路由模块之间 形成数据包通道311^01~?正011分别接收输入的11通道数据(包括数据包1~数据包11),数 据包必须遵循两个原则:一是总流量必须小于路由出口流量,其二就是每个通道的数据包 的长度必须有限制:若数据为连续模式,则数据包长度不大于1个有限值(假设以字节为单 位);若为匀速间断模式,则没有限制。
[0029] 数据路由模块包括数据查询模块和数据优先级判断与选择模块,数据路由模块用 于控制FIFO模块输出的缓存数据的读出。数据查询模块负责查询每个FIFO的数据存储深度 并将查询的结果传送给数据优先级判断与选择模块,通过数据优先级判断与选择模块进行 数据优先级的判断和修改,数据优先级判断与选择模块根据判断修改结果选择优先级最高 的数据包送出。
[0030] 本实施例中,数据查询模块具体被配置成:顺序查询数据包通道Si-Sn中的各个 通道的FIFO状态,FIFO深度达到预设值则设为1,否则为0,其中η为输入的数据包通道数量, 若数据包通道的FIFO深度达到预设值,则将该数据包通道的优先级加1。
[0031] 本实施例中,数据优先级判断与选择模块具体被配置成:将数据包通道S1~Sn分 成bi/21个组,进行优先级对比,将优先级高的数据包通道保存至到ci组,ci组包含[n/2:l个 数据包通道;再将C1组分成fw/41个组进行优先级对比,将优先级高的数据包通道保存至C2 组,C2组包含丨?1/41个数据包通道;再将C2组分成『m/81个组进行优先级对比,将优先级高的 数据包通道保存至C3组,按此规律分组判断优先级直至得到优先级最高的数据包通道Sy, 其中[1为向上取整符号;将得到的优先级最高的数据包通道Sy的数据包发送至路由出 口,并将其对应的优先级减1并返回数据查询模块继续查询各个通道的FIFO状态。
[0032] 采用实施例一中的设备实现的基于多通道数据包优先级的路由方法可以参考下 述具体方法实施例。
[0033] 实施例二
[0034]实施例二提供一种基于多通道数据包优先级的路由方法,包括以下步骤:
[0035] (1)、顺序查询数据包通道S1~Sn中的各个通道的FIFO状态,FIFO深度达到预设值 则设为1,否则为〇,其中η为输入的数据包通道数量。
[0036] (2)、若数据包通道的FIFO深度达到预设值,则将该数据包通道的优先级加1。
[0037] (3)、将数据包通道S1~Sn分成丨?1/21个组,进行优先级对比,将优先级高的数据包 通道保存至到C1组,C1组包含『??/21个数据包通道;再将C1组分成:丨n/41个组进行优先级对 比,将优先级高的数据包通道保存至C2组,C2组包含[n/41个数据包通道;再将C2组分成 [n/81个组进行优先级对比,将优先级高的数据包通道保存至C3组,按此规律分组判断优先 级直至得到优先级最高的数据包通道Sy,其中f 1为向上取整符号。下面举例说明:假设共 有数据包通道S1~S6,则将其分成3个组,分别对各个组中的数据包通道进行优先级对比, 将优先级高的数据包通道保存至C1组,假设得到的C1组包括数据包通道S1、S3、S5^M#C1 组中的数据包通道分成2个组,分别对各个组中的数据包通道进行优先级对比,将优先级高 的数据包通道保存至C2组,假设得到的C2组包括数据包通道S1、S5,则再将C2组分成1个组 进行优先级对比,即对数据包通道SI、S5的优先级进行对比,将优先级高的数据包通道作为 当前优先级最高的数据包通道。
[0038] (4)、将步骤(3)中得到的优先级最高的数据包通道Sy的数据包发送至路由出口, 并将其对应的优先级减1,返回到步骤(1),循环执行直至完成所有数据包通道的数据包的 发送。
[0039] 从以上实施例可以看出,本发明实施例根据数据包的优先级对数据包进行选择性 路由,具备95%以上的数据路由效率,同时具有较低延迟;另外,本发明中的数据包通道数 量可以很方便的进行扩展,而且具备较低的逻辑复杂度,适用于快速设计。
[0040] 需要说明,上述描述的实施例是本发明的一部分实施例,而不是全部实施例,也不 是对本发明的限制。基于本发明的实施例,本领域普通技术人员在不付出创造性劳动前提 下所获得的所有其他实施例,都属于本发明的保护范围。
【主权项】
1. 一种基于多通道数据包优先级的路由方法,其特征在于包括步骤: A、顺序查询数据包通道Sl~Sn中的各个通道的FIFO状态,判断各个通道的FIFO深度是 否达到预设值,其中η为输入的数据包通道数量; Β、若数据包通道的FIFO深度达到预设值,则将该数据包通道的优先级加1; C、 获得当前优先级最高的数据包通道; D、 将步骤C中得到的优先级最高的数据包通道的数据包发送至路由出口,并将该优先 级最高的数据包通道的优先级减1,返回到步骤A,循环执行直至完成所有数据包通道的数 据包的发送。2. 根据权利要求1所述的基于多通道数据包优先级的路由方法,其特征在于所述获得 当前优先级最高的数据包通道的方法为:将数据包通道Sl~Sn分成[Π /21个组,进行优先级 对比,将优先级高的数据包通道保存至到Cl组,Cl组包含h/21个数据包通道;再将Cl组分 成[m/41个组进行优先级对比,将优先级高的数据包通道保存至C2组,C2组包含[R/41个数 据包通道;再将C2组分成[n/81个组进行优先级对比,将优先级高的数据包通道保存至C3 组,按此规律分组判断优先级直至得到优先级最高的数据包通道Sy,其中[1为向上取整 符号。3. 根据权利要求1所述的基于多通道数据包优先级的路由方法,其特征在于所述输入 的数据包流量之和小于数据路由的路由出口的流量带宽。4. 一种基于多通道数据包优先级的路由设备,其特征在于包括FIFO模块和数据路由模 块,所述FIFO模块与数据路由模块之间通过数据包通道连接,所述数据路由模块包括数据 查询模块和数据优先级判断与选择模块, 所述数据查询模块被配置成:顺序查询数据包通道Sl~Sn中的各个通道的FIFO状态, 判断各个通道的FIFO深度是否达到预设值,若数据包通道的FIFO深度达到预设值,则将该 数据包通道的优先级加1,其中η为输入的数据包通道数量; 所述数据优先级判断与选择模块被配置成:获得当前优先级最高的数据包通道;将得 到的优先级最高的数据包通道的数据包发送至路由出口,并将该优先级最高的数据包通道 的优先级减1并返回数据查询模块继续查询各个通道的FIFO状态。5. 根据权利要求4所述的基于多通道数据包优先级的路由设备,其特征在于所述数据 优先级判断与选择模块具体被配置成:将数据包通道Sl~Sn分成[n/21个组,进行优先级对 比,将优先级高的数据包通道保存至到Cl组,Cl组包含[n/21个数据包通道;再将Cl组分成 fn/41个组进行优先级对比,将优先级高的数据包通道保存至C2组,C2组包含[n/41个数据 包通道;再将C2组分成[n/81个组进行优先级对比,将优先级高的数据包通道保存至C3组, 按此规律分组判断优先级直至得到优先级的数据包通道Sy,其中[1为向上取整符号;将 得到的优先级最高的数据包通道Sy的数据包发送至路由出口,并将其对应的优先级减1并 返回数据查询模块继续查询各个通道的FIFO状态。6. 根据权利要求4所述的基于多通道数据包优先级的路由设备,其特征在于所述输入 的数据包流量之和小于数据路由模块的路由出口的流量带宽。
【文档编号】H04L12/865GK105897614SQ201610213010
【公开日】2016年8月24日
【申请日】2016年4月7日
【发明人】刘小成, 莫舸舸
【申请人】成都华日通讯技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1