[发明专利]面向无线多跳网络中网络编码感知路由的流量匹配方法有效
申请号: | 202110338353.2 | 申请日: | 2021-03-25 |
公开(公告)号: | CN112954719B | 公开(公告)日: | 2023-10-13 |
发明(设计)人: | 王翠香;邵星;皋军;张成彬;顾辉;唐伯宇;吴晟凯;徐鹏;潘磊;鲁夕瑶 | 申请(专利权)人: | 盐城工学院 |
主分类号: | H04W24/02 | 分类号: | H04W24/02;H04W84/18;H04L1/00;H04L47/50;H04L45/00 |
代理公司: | 南京瑞弘专利商标事务所(普通合伙) 32249 | 代理人: | 王路 |
地址: | 224005 江苏*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 面向 无线 网络 编码 感知 路由 流量 匹配 方法 | ||
1.一种面向无线多跳网络中网络编码感知路由的流量匹配方法,其特征在于,具体包括以下步骤:
步骤a.源节点S发起到目的节点D的路由请求,并依据网络编码感知路由原理,通过路由返回报文获取从源节点S到目的节点D且存在网络编码机会的路径PathSD;
步骤b.源节点S向PathSD上的每跳节点发起成组虚拟队列计算请求;
步骤c.PathSD上的每跳节点,基于成组虚拟队列计算结果,开始基于流量匹配机制的数据包发送。
2.根据权利要求1所述的面向无线多跳网络中网络编码感知路由的流量匹配方法,其特征在于所述步骤b中的成组虚拟队列计算,其步骤如下:
步骤b1:假定当前节点为v,该节点的原始数据包排队队列为Queuev,路径PathSD对应的数据流为flowSD,假定流经当前节点v的数据流有n+1条,对应的流经节点v的数据流集合为FlowSetv={flow1,flow2,…flown,flowSD};
步骤b2:对于FlowSetv中的任意一条数据流flowi,构建一个对应的虚拟队列vquevi,虚拟队列中的数据包是指来自于数据流flowi且在当前节点v排队的数据包,流经当前节点v的n+1条数据流,对应构建n+1个虚拟队列,其集合为VQueueSetv={vquev1,vquev2,…,vquevn,vquevsd},定义编码成组数据流结果集合cflowGroupRes为空集定义编码成组虚拟队列结果集合cvqueGroupRes为空集
步骤b3:对于FlowSetv中的任意一条数据流flowj,其虚拟队列为VQueueSetv中的vquevj,定义编码成组数据流集合cflowGroup={flowj},定义编码成组虚拟队列集合cvqueGroup={vquevj};
步骤b4:令FlowSetv=FlowSetv-{flowj},VQueueSetv=VQueueSetv-{vquevj};
步骤b5:如果FlowSetv中存在一条数据流flowk,其对应虚拟队列为vquevk,如flowk与cflowGroup中的任意一条数据流存在网络编码机会,则cflowGroup=cflowGroup∪{flowk},cvqueGroup=cvqueGroup∪{vquevk},FlowSetv=FlowSetv-{flowk},VQueueSetv=VQueueSetv-{vquevk},如果FlowSetv中不存在数据流与cFlow中的任意一条数据流存在网络编码机会,则跳转到步骤b6。否则重复步骤b5;
步骤b6:cflowGroupRes=cflowGroupRes∪{cflowGroup},cvqueGroupRes=cvqueGroupRes∪{cvqueGroup},如果FlowSetv不是空集,跳转到步骤d3,如果FlowSetv是空集,跳转到步骤b7;
步骤b7:流经节点v的数据流依据存在网络编码机会的关系进行分组,假定共分为m组,结果为cflowGroupRes={cflowGroup1,cflowGroup2,…,cflowGroupm},对应的虚拟队列成组结果为cvqueGroupRes={cvqueGroup1,cvqueGroup2,…,cvqueGroupm},节点v的成组虚拟队列计算结束。
3.根据权利要求1所述的面向无线多跳网络中网络编码感知路由的流量匹配方法,其特征在于所述步骤c中的流量匹配机制,其步骤如下:
步骤c1:节点v的成组虚拟队列的计算结果为cvqueGroupRes={cvqueGroup1,cvqueGroup2,…,cvqueGroupm},对cvqueGroupRes中任意一个虚拟队列组cvqueGroupu,其包含numvu个虚拟队列,对应的numvu条数据流在节点v存在网络编码机会,即numvu个虚拟队列的队首数据包可以编码为一个数据包,则流量匹配的基本调度单位为虚拟队列组;
步骤c2:对虚拟队列组cvqueGroupu,对其中numvu个虚拟队列的队首数据包的到达时间排序,最早到达的时间作为该虚拟队列组的到达时间ArriveTimevu。计算cvqueGroupRes中的每个虚拟队列组的到达时间,并依据到达时间先后顺序排序,得到排序后的成组虚拟队列集合cvqueGroupRes'={cvqueGroup'1,cvqueGroup'2,…,cvqueGroup'w,…,cvqueGroup'm},为cvqueGroupRes'中的每个虚拟队列组设置计数器且均赋值为M,M为集合cvqueGroupRes'中元素的个数,对cvqueGroup'w其计数器为τw;
步骤c3:对于cvqueGroupRes'中的第1个元素,虚拟队列组cvqueGroup'1中有Numv1个虚拟队列,如这Numv1个虚拟队列都不为空,则将这Numv1个虚拟队列的队首数据包异或运算得到编码数据包发送出去,且τ1=M,τ1类似一个计数器,如果cvqueGroup'1的虚拟队列中有为空,且τ10,则τ1=τ1-1,如果cvqueGroup'1的虚拟队列中有为空,且τ1=0,则将cvqueGroup'1中非空队列队首数据包异或运算得到编码数据包并发送出去,τ1=M,接着考虑cvqueGroupRes'中下一个元素;
步骤c4:对于cvqueGroupRes'中的第w个元素,虚拟队列组cvqueGroup'w中有Numvw个虚拟队列,如这Numvw个虚拟队列都不为空,则将这Numvw个虚拟队列的队首数据包异或运算得到编码数据包发送出去,且τw=M,如果cvqueGroup'w的虚拟队列中有为空,且τw0,则τw=τw-1,如果cvqueGroup'w的虚拟队列中有为空,且τ1=0,则将cvqueGroup'1中非空队列队首数据包异或运算得到编码数据包并发送出去,τw=M,如果wM,则w=w+1,重复步骤c4,如果w=M,跳转到步骤c5;
步骤c5:计算cvqueGroupRes中的每个虚拟队列组的到达时间,并依据到达时间先后顺序排序,得到排序后的成组虚拟队列集合cvqueGroupRes'={cvqueGroup'1,cvqueGroup'2,…,cvqueGroup'm},跳转到步骤c3。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于盐城工学院,未经盐城工学院许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110338353.2/1.html,转载请声明来源钻瓜专利网。