发明名称 基于时间聚合图的延迟容忍网络最大流路由方法
摘要 本发明公开了一种基于时间聚合图的延迟容忍网络最大流路由方法,主要解决现有的时间聚合图模型中,由于同一链路不同时段之间缺乏联系而引起不同选路顺序导致求解出不同最大流的问题。其实现步骤为:(1)标记时间聚合图;(2)在时间聚合图中寻找增广路径L;(3)计算增广路径L的最大流,获得剩余路径;(4)累加每条增广路径L的最大流Lf<sub>max</sub>(T),以此作为网络当前的最大流,循环找路,当时间聚合图中不存在增广路径时,得到网络的最大流。本发明增加了链路中不同时段之间的联系,解决了时间聚合图中的最大流问题,可用于互联网、物联网、移动通信、卫星通信和深空通信中提高传输吞吐量。
申请公布号 CN105407049A 申请公布日期 2016.03.16
申请号 CN201510700783.9 申请日期 2015.10.26
申请人 西安电子科技大学 发明人 李建东;张焘;李红艳;张顺;侯蓉晖;盛敏;马英红;刘勤;黄鹏宇;刘伟
分类号 H04L12/751(2013.01)I 主分类号 H04L12/751(2013.01)I
代理机构 陕西电子工业专利中心 61205 代理人 王品华;朱红星
主权项 一种基于时间聚合图的延迟容忍网络最大流路由方法,包括:(1)标记时间聚合图时间聚合图是由若干节点和多条有向的边所构成的一种图形,每条边标记一个容量时间序列C(T)=(c<sub>1</sub>,...,c<sub>t</sub>,...,c<sub>m</sub>),每个节点设置一个存储传递序列N(T)=(n<sub>1</sub>,...,n<sub>t</sub>,...,n<sub>m</sub>),其中T是指给定的时间范围,c<sub>t</sub>是指与该边相对应的网络链路在第t个时间段内的网络链路总容量,n<sub>t</sub>是指该节点从第t‑1个时间段向第t个时间段储存的数据量,1≤t≤m,m是指在给定的时间范围T内以单位时间为间隔分割的时间段;(2)在时间聚合图中寻找增广路径L:(2a)设定时间聚合图所描述的延迟容忍网络的当前最大流为Wf<sub>max</sub>(T),并初始化为0;(2b)将源点s设为增广路径L的当前找路节点并将该节点的找路出发时间t<sub>s</sub>设定在第1个时段内即t<sub>s</sub>=1;(2c)利用当前找路节点的存储传递序列对当前节点的找路出发时间进行更新,得到当前节点新的出发时间t<sub>s</sub>;(2d)依据当前节点的邻接关系,找到以当前节点为起始节点的所有邻接链路,并在这些邻接链路中找出所有有效的邻接链路:若链路连通的时间段t满足t≥t<sub>s</sub>,且链路容量c<sub>t</sub>>0则该链路是有效的邻接链路,否则,该链路是无效的邻接链路;(2e)判断当前节点是否有邻接链路或是否有有效的邻接链路,若有,则执行步骤(2f),否则,从所有有效的邻接链路中选择具有最早连通时段t'=min(t)的一条有效邻接链路,将此链路的终止节点作为增广路径L的下一跳节点,并将此链路的终止节点设置为新的当前找路节点,设定当前节点的找路出发时间为t<sub>s</sub>=t',执行步骤(2g);(2f)若当前节点为源点s,则不存在增广路径,执行步骤(6),否则将当前节点的上一跳邻接链路设为无效,在增广路径L中删除该节点,同时把当前节点的上一跳节点设为增广路径L新的当前找路节点,返回步骤(2c);(2g)若当前节点为终点d,则执行步骤(3),否则,返回步骤(2c);(3)计算增广路径L的最大流:(3a)设定增广路径L的当前最大流为Tf<sub>max</sub>(T),并初始化为无穷大,选取增广路径L的最后一跳链路作为当前链路;(3b)根据当前链路终止节点的存储传递序列,计算当前链路的容量时间序列C<sub>u,v</sub>(T)与增广路径L的当前最大流Tf<sub>max</sub>(T)之间所允许的最大流Pf<sub>max</sub>(T),更新增广路径L的当前最大流Tf<sub>max</sub>(T)=Pf<sub>max</sub>(T);(3c)判断当前链路是否为增广路径L的第一跳链路:若是,则得到增广路径L的最大流Lf<sub>max</sub>(T)=Tf<sub>max</sub>(T),执行步骤(4),否则,选择此链路的前一跳链路作为当前链路,返回步骤(3b);(4)获得剩余路径:(4a)设定增广路径L的暂时最大流为Zf<sub>max</sub>(T)=Lf<sub>max</sub>(T),选取增广路径L的第一跳链路作为当前链路;(4b)根据当前链路起始节点的存储传递序列,计算增广路径L的暂时最大流Zf<sub>max</sub>(T)与当前链路的容量时间序列C<sub>u,v</sub>(T)之间所允许的可行流f<sub>u,v</sub>(T);(4c)更新增广路径L的暂时最大流Zf<sub>max</sub>(T)=f<sub>u,v</sub>(T),依据可行流f<sub>u,v</sub>(T)计算当前链路(u,v)以及与当前链路反方向的链路(v,u)的剩余链路容量时间序列;(4d)判断当前链路是否为增广路径L的最后一跳链路:若是,则执行步骤(5),否则,选择此链路的后一跳链路作为当前链路,返回步骤(4b);(5)将每次计算出的增广路径L最大流Lf<sub>max</sub>(T)进行累加,累加的结果作为网络当前的最大流Wf<sub>max</sub>(T),返回步骤(2b);(6)结束循环,输出网络的最大流f<sub>max</sub>(T)=Wf<sub>max</sub>(T)。
地址 710071 陕西省西安市太白南路2号