基于OpenFlow协议的网络多路径实现方法及系统的制作方法_2

文档序号:9527516阅读:来源:国知局
enFlow 交换机 A---OpenFlow 交换机 B---OpenFlow 交换机
E---OpenFlow 交换机 F ;
[0032]路径三:0penFlow交换机 A---OpenFlow 交换机 C---OpenFlow 交换机 F ;
[0033]随后再基于路径一、路径二及路径三中均包含OpenFlow交换机A、路径二及路径三中均包含OpenFlow交换机B确定交叉节点包括OpenFlow交换机A及OpenFlow交换机B,其中,OpenFlow交换机A具有与OpenFlow交换机B连接的端口 b以及与OpenFlow交换机C连接的端口 c,OpenFlow交换机B具有与OpenFlow交换机D连接的端口 d以及与OpenFlow交换机E连接的端口 e。
[0034]又例如,若所有采用预定协议的信息都为可进行多路径传输的信息,则所述网络多路径实现系统基于网络拓扑信息将网络中的所有传输路径均确定为可行路径,并将网络中包含多个端口的OpenFlow交换机作为交叉节点。
[0035]再例如,若所有需要经过预定端口的信息都为可进行多路径传输的信息,则所述网络多路径实现系统基于网络拓扑信息将网络中的包含该预定端口的传输路径均确定为可行路径,并将该些可行路径中包含多个端口的OpenFlow交换机作为交叉节点。
[0036]此外,考虑到系统的需要或其他一些限制条件,可能某些具有多端口的OpenFlow交换机不能用于多路径传输,则所述网络多路径实现系统基于网络拓扑信息及预定限制条件来确定各可进行多路径传输的信息的各可行路径信息,并基于各可行路径信息来确定各可行路径间的所有交叉节点,由此来确保网络的正常运行。
[0037]接着,在步骤S2中,所述网络多路径实现系统基于所有交叉节点各自与下一节点间的链路信息来确定各交叉节点与各自的下一节点相连的端口的权重信息。
[0038]具体地,所述网络多路径实现系统根据链路上三方面的信息指标来确定这条链路是否处于一个适合增加负载的状况,对于适合增加负载的链路,将被赋予一个较高的权重,而对于那些相对而言不太适合增加负载的链路,则被赋予一个较低的权重。所述链路上三个方面的信息包括:1、这个链路上即时的负载比重,也就是该链路上现有的数据量占其所能承载的总数据量的比重,这个值越小,则说明这条链路越适合增加负载;2、这条链路上数据传输的可靠性,主要从丢包率上来看,丢包率越低,说明这条链路越适合增加负载;3、传输时延,传输时延越小,说明这条链路越适合增加负载。所述网络多路径实现系统在获取到这三个方面的信息后,对该些信息进行综合评估和分析,确定这条链路所连的交换机端口的权重。需要注意的是,即便是对于完全相同的链路状况,可能在不同的应用下也会得到不同的结果的权重值,因为不同的应用可能会有不同的性能要求,有些对时效性要求较高,可能就会重点关注传输时延方面的指标,有些对可靠性要求较高,可能就会重点关注可靠性方面的指标,对于那些没有特殊要求的,可能就会重点关注流量方面的指标,也就是负载比重。所述网络多路径实现系统可以根据这些策略,再结合具体应用需求,最终确定一组权重值。
[0039]接着,在步骤S3中,所述网络多路径实现系统基于各端口的权重信息来配置各端口各自对应的OpenFlow交换机的组表信息,并将组表发送至相应OpenFlow交换机。
[0040]具体地,所述网络多路径实现系统将待下发给相应OpenFlow交换机的组表中的bucket栏写入该OpenFlow交换机的端口号及端口号所对应的权重信息,并将写入了权重信息的组表下发给该OpenFlow交换机。
[0041]例如,所述网络多路径实现系统确定OpenFlow交换机A的端口 b的权重为0.4、端口 c的权重为0.6,则所述网络多路径实现系统将待下发给OpenFlow交换机A的组表中的bucket栏写入:端口 b:0.4、端口 c:0.6,并将该组表下发给OpenFlow交换机A。
[0042]接着,在步骤S4中,所述网络多路径实现系统配置所有交叉节点各自对应的OpenFlow交换机的流表信息,其中,各流表信息中包含可进行多路径传输的信息所属的组的类型信息,该类型信息能使OpenFlow交换机基于自身包含的各端口的权重信息来转发可进行多路径传输的信息。
[0043]具体地,所述网络多路径实现系统将待下发给各处于可行路径上且具有多端口的OpenFlow交换机的流表的组的类型信息栏写入可进行多路径传输的信息所属的组的类型信息,例如,select类,并将写入了 select类的流表下发给相应各OpenFlow交换机,由此,当该些OpenFlow交换机接收到组的类型信息为select类的信息流时,各自再基于各自所接收到的组表信息中的bucket栏内的信息来转发该信息流。
[0044]例如,所述网络多路径实现系统将写入了 select类的流表下发给OpenFlow交换机A及OpenFlow交换机B,则当OpenFlow交换机A接收到组的类型信息为select类的各信息流时,基于自身所接收到的组表信息中的bucket栏内的信息??端口 b:0.4、端口 c:
0.6,将该些信息流中40%的信息流由端口 b转发、60%的信息流由端口 c转发,OpenFlow交换机B接收到组的类型信息为select类的各信息流时,基于自身所接收到的组表信息中的bucket栏内的信息:端口 d:0.5、端口 e:0.5,将该些信息流中50%的信息流由端口 d转发、50%的信息流由端口 e转发。
[0045]需要说明的是,步骤S3及S4的顺序并非以所示为限,事实上,步骤S3可与步骤S4同时进行,或者步骤S4之后进行等。
[0046]如图2所示,本发明提供一种基于OpenFlow协议的网络多路径实现系统。所述网络多路径实现系统1至少包括:路径确定模块11、权重确定模块12、组表下发模块13、以及流表下发模块14。
[0047]所述路径确定模块11基于网络拓扑信息来确定各可进行多路径传输的信息的各可行路径信息,并基于各可行路径信息来确定各可行路径间的所有交叉节点。
[0048]其中,可进行多路径传输的信息可由操作人员随意设定,例如,可将基于OpenFlow协议的网络中任意两节点之间传输的所有信息都作为可进行多路径传输的信息;又例如,所有采用预定协议的信息都作为可进行多路径传输的信息;再例如,所有需要经过预定端口的信息都作为可进行多路径传输的信息等等。
[0049]例如,若网络中节点A至节点F之间传输的所有信息都为可进行多路径传输的信息,则所述路径确定模块11基于网络拓扑信息确定由节点A至节点F的可行路径包括以下三条路径:
[0050]路径一:OpenFlow 交换机 A---OpenFlow 交换机 B---OpenFlow 交换机
D---OpenFlow 交换机 F ;
[0051]路径二:0penFlow 交换机 A---OpenFlow 交换机 B---OpenFlow 交换机
E---OpenFlow 交换机 F ;
[0052]路径三:0penFlow交换机 A---OpenFlow 交换机 C---OpenFlow 交换机 F ;
[0053]随后再基于路径一、路径二及路径三中均包含OpenFlow交换机A、路径二及路径三中均包含OpenFlow交换机B确定交叉节点包括OpenFlow交换机A及OpenFlow交换机B,其中,OpenFlow交换机A具有与OpenFlow交换机B连接的端口 b以及与OpenFlow交换机C连接的端口 c,OpenFlow交换机B具有与OpenFlow交换机D连接的端口 d以及与OpenFlow交换机E连接的端口 e。
[0054]又例如,若所有采用预定协议的信息都为可进行多路径传输的信息,则所述路径确定模块11基于网络拓扑信息将网络中的所有传输路径均确定为可行路径,并将网络中包含多个端口的OpenFlow交换机作为交叉节点。
[0055]再例如,若所有需要经过预定端口的信息都为可进行多路径传输的信息,则所述路径确定模块11基于网络拓扑信息将网络中的包含该预定端口的传输路径均确定为可行路径,并将该些可行路径中包含多个端口的OpenFlow交换机作为交叉节点。
[0056]此外,考虑到系统的需要或其他一些限制条件,可能某些具有多端口的OpenFlow交换机不能用于多路径传输,则所述路径确定模块11基于网络拓扑信息及预定限制条件来确定各可进行多路径传输的信息的各可行路径信息,并基于各可行路径信息来确定各可行路径间的所有交叉节点,由此来确保网络的正常运行。
[0057]接着,所述权重确定模块12基于所有交叉节点各自与下一节点间的链路信息来确定各交叉节点与各自的下一节点相连的端口的权重信息。
[0058]具体地,所述权重确定模块12根据链路上三方面的信息指标来确定这条链路是否处于一
当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1