一种用于软件定义网络的数据双路径备份传输方法

文档序号:9870050阅读:892来源:国知局
一种用于软件定义网络的数据双路径备份传输方法
【技术领域】
[0001] 本发明属于数据通信技术领域,是软件定义网络的可靠传输方法,具体设及一种 用于软件定义网络的数据双路径备份传输方法。
【背景技术】
[0002] 随着互联网技术的发展,软件定义网络(SDN)的应用越来越广泛。与传统网络不 同,软件定义网络采用控制和转发分离的结构,可W在不变动硬件设备的前提下,W中屯、控 制的方式,用程序重新规划网络。从而降低了网络部署成本,减轻了网络运营和维护负担。
[0003] 网络应用对数据传送的可靠性要求越来越高,特别是在工业领域的应用。而网络 传输往往有不确定性,特别是无线网络,网络连接常常是不稳定的。一旦网络中某个节点或 者链路发生故障,整个网络需要一定时间进行重新组织,运就为数据可靠传输提出了新的 挑战。
[0004] 针对W上问题,现有解决办法多针对传统的分布式网络,其技术手段在SDN网络 中并不适用。

【发明内容】
阳〇化]有鉴于此,本发明目的在于提供一种用于软件定义网络的数据双路径备份传输方 法,对可靠性要求较高的业务采用两条路径同时传输,避免因网络不稳定或者链路故障引 起的丢包。
[0006] 本发明为实现上述目的所采用的技术方案是:一种用于软件定义网络的数据双路 径备份传输方法,包括集中的路径规划过程和数据双路径备份转发过程;
[0007] 所述的集中路径规划过程,网络管理器接受业务数据的备份传输要求,根据全网 拓扑和负载情况对数据业务进行路径规划,并将规划结果W流表项的形式发送至各个交换 机;
[0008] 所述的双路备份转发过程,交换机实现数据传输过程中的分路、交叉W及聚合,流 程为分路交换机接收业务数据并根据流表项将业务数据复制并同时转发给两个下游交换 机,两条链路上的节点逐级转发业务数据,最终由聚合交换机将两路数据合并后转发给终 端节点。
[0009] 所述集中路径规划过程包括W下步骤:
[0010] (1)网络交换机每隔一段时间计算每条链路的实时链路代价:
阳01引其中,Ti为链路L 1的剩余带宽;
[0013] (2)网络交换机将链路代价逐级发送到网络管理器中,更新网络管理器中的链路 代价信息;
[0014] (3)网络管理器接受业务数据双路备份转发请求,请求信息中包含业务数据的源 信息、目的信息;
[001引 (4)计算从源节点S到目的节点d的所有路径集合,记为Q'(S,d)=巧1'(S,d) I i =1, 2,. . . , n };
[0016] 妨计算Pi'(s,d)的路径代价并按照从小到大排序记为心(s,d),若心(s,d)中 的元素满足Dw'(s,d) >2XDi'(s,d)则将链路代价大于心(s,d)的路径从Q'(s,d)中删 除,并将剩余路径集合记为Q (S, d) = {Pi (S, d) I i = 1,2,. . .,n};
[0017] (6)判断源节点S到目的节点d路径数量,如果等于I则无法分配备份链路,反馈 失败消息;如果数量大于1,则进行步骤(8);
[0018] (7)统计Q(s,d)中路径经过的所有节点Ni(s,d),并记Q(s,d)中经过节点Ni(s,d) 的路径数量心
[0019] 做捜索Ni(s,d)找出C,v(s,rf)与Q(S,d)中的路径数量相等的节点,并按照源节点 S至目的节点d顺序排列记为Gj,其中j = 1,2,…,m 阳020] (9)计算节点G.j至G W,j = 1,2,…,m-1的不相交路径:
[OOW (10)将巧(G,,G,+i)连接成路径巧(M),巧'巧冶州)连接成路径巧'(5,的:,j = 1,2, ...,IIi-I ; 阳02引 (11)若G,同时在分路节点列表和聚合节点列表中,则将其在两个列表中删除并添 加到交点列表中,j = 1,2,…,m ;
[0023] (12)网络管理器根据数据流特征,将路径规划结果转换成交换机流表项并发送至 各个交换机。 阳024] 所述计算节点Gj至G W,j = 1,2,…,m-1的不相交路径,包括W下步骤: 阳02引 9. 1)取Q (S,d)中在G丢G W之间的部分不相同路径,并在G產G W之间截短组 成路径集合 Q(Gj,GjJ = IPi 化,Gw) I i = 1,2,. . .,m},i = 1,2,…,k ;
[0026] 9.。判断Q (Gj,Gw)中元素的个数,若不为"1"则进行步骤9.扣,否则将 P。化,G,J同时记为巧巧,巧+1谢皆辟,G"i),进行步骤(10);
[0027] 9.如统计Q (Gj,GjJ中路径经过的所有节点Ni化,GjJ ;
[00測 9.4) W P^G,,G, J为行索引,Ni化,G, J为列索引生成路径节点矩阵H(GWW),生 成规则为:若Pi (G,,Gw)经过Ni (G,,Gw),则对应的元素值为"1";否则对应元素值 为"0";
[0029] 9. W取H(GWW)中的行向量两辆做矩阵乘法,记录所有向量乘积为"2"的行所对 应的路径组合,记为IV化,GjJ和P/化,Gw),i = 1,2,…,h ;
[0030] 9. 6)计算IV化,G, J和P^G.,,G,4)的链路代价之和,并将链路代价之和最小的组 合记为巧巧,Gw巧日巧'(G,.,Gj+j),其中货(A,A+,)为代价较小路径,巧'' (G/,J为代价较 大路径;
[0031] 9. 7)将G,添加到分路节点列表,G W添加到聚合节点列表。
[0032] 所述双路备份转发过程包括W下步骤: 阳03引 (1)流表解析;
[0034] 似数据转发
[0035] (3)交换机清理接收计数列表,删除保留时间过长的列表项。
[0036] 所述流表解析包括W下步骤:
[0037] 1. 1)交换机接收网络管理器下发流表项并添加到流表列表中;
[0038] 1. 2)若流表指定交换机为该数据流的分路交换机,交换机为该数据流创建两字节 计数器并初始为"0",进行数据转发步骤;否则进行1. 3);
[0039] 1. 3)若流表指定交换机为该数据流的交点交换机;交换机为该数据流创建接收 计数列表用于保存接收计数和接收时间,进行数据转发步骤;否则进行1. 4);
[0040] 1. 4)若流表指定交换机为该数据流的聚合交换机,交换机为该数据流创建接收计 数列表用于保存接收计数和接收时间。
[0041] 所述数据转发包括W下步骤:
[0042] 2. 1)交换机接收网络发送的数据,并与流表项对比;
[0043] 2. 2)若交换机不是该数据流的分路交换机,则进行2. 3);否则在数据包数据流特 征后添加两字节计数字段并将该数据流计数器值赋予该字段,同时计数器加"1",并按照流 表指示将数据发往两个下游节点;
[0044] 2. 3)若交换机不是该数据流的交点交换机,则进行2. 4);否则进一步判断数据包 的计数字段值是否在接收计数列表中:若在则丢弃该数据包;否则将数据计数字段和接收 时间保存到接收计数列表中,并根据流表将该数据包转发至两个下游节点,进行(3);
[0045] 2. 4)若交换机不是该数据流的聚合交换机,则进行2. 5);否则进一步判断数据包 的计数字段值是否在接收计数列表中:若在则丢弃该数据包;否则将数据计数字段和接收 时间保存到接收计数列表中,删除数据包的数据计数字段,转发至下游节点,进行(3);
[0046] 2. 5)交换机根据流表将数据包转发至下一节点。
[0047] 本发明具有W下优点及有益效果:
[0048] 1.本发明采用网络中重合度最小的两条链路进行数据传输,最大程度的避免了因 网络中某个节点或某条链路故障导致的数据丢失,提高了关键业务传输的可靠性。同时路 径规划过程中适当考虑了网络链路负载因素,避免因备份传输导致的网络环境恶化。
[0049] 2.路径规划过程中适当考虑了网络链路负载因素,避免因备份传输导致的网络环 境恶化。
【附图说明】
[0050] 图1是本发明应用部署的示意图;
[0051] 图2是本发明集中路径规划过程的流程图;
[0052] 图3是本发明路径规划过程示例图;
[0053] 图4是本发明分段求解多条路径的示例图;
[0054] 图5是本发明双链路转发过程的流程图;
[0055] 图6是本发明双链路转发过程的解析流表流程图;
[0056] 图7是本发明双链路转发过程的数据转发流程图。
【具体实施方式】
[0057] 下面结合附图和实施例,对本
【发明内容】
作详细叙述:
[0058] 参照图1,本发明的一种用于软件定义网络的数据双路径备份传输方法包括集中 的路径规划过程和数据双路径备份转发过程。其中时延分配过程在网络管理器I中实现, 时延保障转发过程由传输路径上的网络交换机2实现。
[0059] 参照图2,所述路径规划过程,包括W下步骤:
[0060] 步骤1 :网络交换机每隔一段时间计算每条链路的实时链路代价:
阳06引其中,Ti为链路L 1的剩余带宽;
[0063] 步骤2:网络交换机将链路代价逐级发送到网络管理器中,更新网络管理器中的 链路代价信息;
[0064] 步骤3 :网络管理器接受业务数据双路备份转发请求,请求信息中包含业务数据 的源信息、目的信息; 阳0化]步骤4:计算从源节点S到目的节点d的所有路径集合,记为Q'(s,d)= OV (S, d) I i = 1,2,. . .,n'}。参照图 3,两终端间有 ABCH、ABCFH、ABCGE細、AEFCH、AE即、 AEGH、ADEFCH、ADEFH、ADEGH 共 9 条路径;
[0066] 步骤5 :计算Pi'(S,d)的路径代价并按照从小到大排序记为町'(S,d),若町'(S,d) 中的元素满足Dw'(s,d) >2XDi'(s,d)则将链路代价大于心(s,d)的路径从Q'(s,d)中 删除,并将剩余路径集合记为Q(s,d)=巧i(s,d) Ii = l,2,...,n}。参照图3,两终端间有 BC间因实时负载过重导致链路代价较大,经过该链路的路径被删除,Q(s,d)为剩余AEFCH、 AEFH、AEGH、ADEFCH、ADEFH、ADEGH 共 6 条路径;
[0067] 步骤6 :判断源节点S到目的节点d路径数量,如果等于1则无法分配备份链路, 反馈失败消息;如果数量大于1,则进行步骤7 ; 阳068] 步骤7 :统计Q (S, d)中路径经过的所有节点Ni (S, d),并记Q (S, d)中经过节点 Ni(s,d)的路径数量C Uc/);参照图3, Q(s,d)经过的所有节点为A、C、D、E、F、G、H,经过 运些节点的路径数量依次为6次、1次、3次、6次、4次、2次、6次; W例步骤8 :捜索Ni(s,d)找出与Q(s,d)中的路径数量相等的节点,并按照源 节点S至目的节点d顺序排列记为G.j,其中j = 1,2,…,m。参照图3, Q(s, d)中路径数量 为6,因此Gj依次为A、E、H ; 阳070] 步骤9 :计算节点G.j至G W,j = 1,2,…,m-1的不相交路径: 阳〇7U 步骤9-1 :取Q (S,d)中在G丢G W之间的部分不相同路径,并在G產G
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1