CN103023826A - 一种OpenFlow控制器的路由控制方法 - Google Patents
一种OpenFlow控制器的路由控制方法 Download PDFInfo
- Publication number
- CN103023826A CN103023826A CN2012105726612A CN201210572661A CN103023826A CN 103023826 A CN103023826 A CN 103023826A CN 2012105726612 A CN2012105726612 A CN 2012105726612A CN 201210572661 A CN201210572661 A CN 201210572661A CN 103023826 A CN103023826 A CN 103023826A
- Authority
- CN
- China
- Prior art keywords
- openflow switch
- session information
- session
- openflow
- coding strategy
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及路由控制技术领域,公开了一种OpenFlow控制器的路由控制方法,包括:先由控制器检查OpenFlow交换机上的会话信息的编码策略是否已存在;若会话信息的编码策略已存在,则将会话信息的操作指令发回给OpenFlow交换机;若会话信息的编码策略不存在,则设计会话信息的编码策略;最后,将编码策略及相应的转发行为分配给相应的OpenFlow交换机。本发明通过OpenFlow控制器设计了OpenFlow交换机的编码运算和解码运算,对网络流进行网络编码,提升了网络容量。
Description
技术领域
本发明涉及路由控制技术领域,主要适用于OpenFlow控制器的路由控制方法。
背景技术
在开放的OpenFlow网络结构中,OpenFlow控制器可以集中管理网络,OpenFlow交换机可以通过自定义数据流的处理方法来扩展交换机的数据处理能力,两者共同够成了一套网络管理操作系统。
与传统的IP网络不同,OpenFlow网络将所有交换机的流处理策略(控制平面)集中在控制器上设计,使得路由控制可集中设计。依据开放项目nox提供的接口就可以设计集中算路算法,也可以将常见的分布式路由引擎直接移植到控制器端。
现有的OpenFlow研究项目有很多尝试,RouteFlow项目在一个OpenFlow网络上提供网络层路由服务。该项目在支持OpenFlow网络的硬件上提供虚拟IP路由的解决方案,该解决方案实现了在OpenFlow控制器上通过虚拟机构成了虚拟网络。在OpenFlow控制器上建立一个虚拟机网络,并维持每一台虚拟机与每一台底层网络OpenFlow交换机的同步,在虚拟网络中引入路由引擎Quagga,为每一台虚拟机提供路由服务。该项目OpenFlow网络的路由完全由Quagga通过的传统路由协议计算而得,不能通过OpenFlow控制器对路由进行定制,没能体现OpenFlow技术的优势。
发明内容
本发明所要解决的技术问题是提供一种OpenFlow控制器的路由控制方法,它通过OpenFlow控制器设计了OpenFlow交换机的编码运算和解码运算,对网络流进行网络编码,提升了网络容量。
为解决上述技术问题,本发明提供了一种OpenFlow控制器的路由控制方法包括:
先由OpenFlow控制器检查OpenFlow交换机上的会话信息的编码策略是否已存在;
若所述会话信息的编码策略已存在,则将会话信息的操作指令发回给所述OpenFlow交换机;
若会话信息的编码策略不存在,则设计会话信息的编码策略;具体方法为:
判断是否有已知会话的路径与会话信息的路径相交;
若有所述已知会话的路径与会话信息的路径相交,则判断会话信息与已知会话信息能否建立数据链路图;若会话信息与已知会话信息能够建立所述数据链路图,则对数据链路图中的OpenFlow交换机设置编码系数和/或解码系数;否则继续遍历其他相交的已知会话直至找到已知会话信息能与会话信息建立数据链路图;
接着判断数据链路图中的信宿能否接收到原始的会话数据;
若所述信宿能够接收到所述原始的会话数据,则将所述编码系数和/或所述解码系数、参与编解码操作的OpenFlow交换机及参与编解码操作的流ID设计为会话信息的编码策略;
若信宿不能接收到原始的会话数据,则重置编码系数和/或解码系数直至数据链路图中的信宿能够接收到原始的会话数据;
若没有已知会话的路径与会话信息的路径相交,则将找出的会话信息的路径设置为会话信息的编码策略;
最后,将编码策略及相应的转发行为分配给相应的OpenFlow交换机。
进一步地,所述先由OpenFlow控制器检查OpenFlow交换机上的会话信息的编码策略是否已存在,包括:先由所述OpenFlow控制器收集所述OpenFlow交换机的信息数据,得到OpenFlow交换机所属的链路、OpenFlow交换机所属的链路的变化情况及OpenFlow交换机上的会话信息;再检查所述会话信息的编码策略是否已存在。
进一步地,在所述得到OpenFlow交换机所属的链路、OpenFlow交换机所属的链路的变化情况及OpenFlow交换机上的会话信息后,根据所述OpenFlow交换机所属的链路和所述OpenFlow交换机所属的链路的变化情况更新网络邻接表;再根据所述网络邻接表的变化情况进行相应的操作;
若在网络邻接表中增加了链路,则判断在当前不合理会话列表中的不合理会话信息是否能够被分配链路;若所述不合理会话信息能够被分配链路,则设计不合理会话信息的编码策略;其中,不合理会话信息为不能被分配链路的会话信息;
若网络邻接表中减少了链路,则找出当前编码策略中已用到了已删除链路的会话信息,并重新对会话信息设计编码策略;
其中,网络邻接表用于存放OpenFlow网络中的所有链路。
进一步地,所述判断会话信息与已知会话信息能否建立数据链路图;若会话信息与已知会话信息能够建立数据链路图包括:先根据所述会话信息和所述已知会话信息的信源和信宿之间的路径建立两个路径集合;再判断所述两个路径集合中的所有链路是否都最多只能被两条路径所共有;若两个路径集合中的所有链路都最多只能被两条路径所共有,则说明会话信息与已知会话信息能建立数据链路图;将路径集合中的路径合并组成数据链路图;否则说明会话信息与已知会话信息不能建立数据链路图。
进一步地,所述根据会话信息和已知会话信息的信源和信宿之间的路径建立两个路径集合包括:先根据所述会话信息和所述已知会话信息选择网络中的空闲链路,再将所述空闲链路转换为平行链路;接着以3对不同的信源和信宿的组合方式从所述平行链路中选择出3条不相交的路径形成一个路径集合;再以3对不同的信源和信宿的组合方式从平行链路中选择出3条不相交的路径形成另一个路径集合。
进一步地,所述判断数据链路图中的信宿能否接收到原始的会话数据;若信宿能够接收到原始的会话数据,则将编码系数和/或解码系数、参与编解码操作的OpenFlow交换机及参与编解码操作的流ID设计为会话信息的编码策略;若信宿不能接收到原始的会话数据,则重置编码系数和/或解码系数直至数据链路图中的信宿能够接收到原始的会话数据,包括:判断所述数据链路图中的两个会话信息的信宿能否接收到所述原始的会话数据,并根据所述信宿接收会话数据的情况做出相应的处理;
若两个会话信息的信宿都能接收到原始的会话数据,则将所述编码系数和/或所述解码系数、所述参与编解码操作的OpenFlow交换机及所述参与编解码操作的流ID设计为会话信息的编码策略;
若两个信宿中只有一个信宿能接收到原始的会话数据,则先以不能接收到原始的会话数据的信宿设为起点,再沿着与会话数据传输的方向相反的方向寻找最近的一个OpenFlow交换机,再重置OpenFlow交换机为解码交换机,并选择解码系数使得解码结果为信宿不能收到的原始的会话数据;再将选择的解码系数、参与解码操作的OpenFlow交换机及参与解码操作的流ID设计为会话信息的编码策略;
若两个信宿都不能接收到原始的会话数据,则重置编码系数和/或解码系数直至数据链路图中的信宿能够接收到原始的会话数据。
进一步地,所述将编码策略及相应的转发行为分配给相应的OpenFlow交换机包括:将所述编码策略及相应的转发行为分配给所述数据链路图中相应的OpenFlow交换机,并判断所述OpenFlow交换机中是否已存有编码策略;
若OpenFlow交换机中已存有编码策略,则OpenFlow交换机接收到编码策略及相应的转发行为后,更新流表项,使OpenFlow交换机得到可用的流表项;
若OpenFlow交换机中没有编码策略,则OpenFlow交换机直接将接收到的编码策略及相应的转发行为添加到流表项中,使OpenFlow交换机得到可用的流表项。
进一步地,所述若OpenFlow交换机中已存有编码策略,则OpenFlow交换机接收到编码策略及相应的转发行为后,更新流表项,使OpenFlow交换机得到可用的流表项包括:若所述OpenFlow交换机中已存有编码策略,则OpenFlow交换机接收到所述编码策略及相应的转发行为后,判断分配的编码策略及相应的转发行为是否与OpenFlow交换机中已存的流表项相冲突;
若分配的编码策略及相应的转发行为与OpenFlow交换机中已存的流表项相冲突,则删除相冲突的流表项,并更新得到的流表项,使OpenFlow交换机得到可用的流表项;
若分配的编码策略及相应的转发行为与OpenFlow交换机中已存的流表项不相冲突,则将编码策略及相应的转发行为添加到OpenFlow交换机中已存的流表中,并更新流表项,使OpenFlow交换机得到可用的流表项。
进一步地,所述OpenFlow交换机的信息数据包括:OpenFlow交换机的注册信息、OpenFlow交换机的的状态信息及OpenFlow交换机上的会话信息。
进一步地,所述OpenFlow交换机的注册信息包括:OpenFlow交换机的交换机编号及与该OpenFlow交换机相连的OpenFlow交换机的交换机编号;所述OpenFlow交换机的状态信息包括:OpenFlow交换机的端口速率和OpenFlow交换机是否可用;所述OpenFlow交换机的会话信息包括:信源地址和信宿地址。
本发明的有益效果在于:
本发明提供的OpenFlow控制器的路由控制方法通过OpenFlow控制器设计了OpenFlow交换机的编码运算和解码运算,对网络流进行网络编码,缓解了公用链路的流量,降低了网络中公用链路上的网络拥塞对网络性能的影响。本发明还通过为新会话和已有会话寻找数据链路图,为新会话提供了多条传输路径,平衡了网络负载,从而提升了网络容量。
附图说明
图1为本发明实施例提供的OpenFlow控制器的路由控制方法的流程图。
图2为本发明实施例提供的OpenFlow控制器的路由控制方法中设计编码策略的流程图。
图3为本发明实施例提供的OpenFlow控制器的路由控制方法中使OpenFlow交换机得到可用的流表项的流程图。
图4为本发明实施例提供的OpenFlow控制器的路由控制方法中更新待设计会话流表的流程图。
具体实施方式
为进一步阐述本发明为达成预定发明目的所采取的技术手段及功效,以下结合附图及较佳实施例,对依据本发明提出的OpenFlow控制器的路由控制方法的具体实施方式及工作原理进行详细说明。
由图1可知,本发明提供的OpenFlow控制器的路由控制方法包括:
先由OpenFlow控制器检查OpenFlow交换机上的会话信息的编码策略是否已存在;具体的,先由OpenFlow控制器收集OpenFlow交换机的信息数据,得到OpenFlow交换机所属的链路、OpenFlow交换机所属的链路的变化情况及OpenFlow交换机上的会话信息;并根据OpenFlow交换机所属的链路和OpenFlow交换机所属的链路的变化情况更新网络邻接表;再检查会话信息的编码策略是否已存在。其中,网络邻接表用于存放OpenFlow网络中的所有链路。OpenFlow交换机的信息数据包括:OpenFlow交换机的注册信息、OpenFlow交换机的状态信息及OpenFlow交换机上的会话信息。OpenFlow交换机的注册信息包括:OpenFlow交换机的交换机编号及与该OpenFlow交换机相连的OpenFlow交换机的交换机编号;OpenFlow交换机的状态信息包括:OpenFlow交换机的端口速率和OpenFlow交换机是否可用;OpenFlow交换机的会话信息包括:信源地址和信宿地址。
若会话信息的编码策略已存在,则将会话信息的操作指令发回给OpenFlow交换机,由OpenFlow交换机响应;
若会话信息的编码策略不存在,则搜索会话信息的路径,并设计会话信息的编码策略;由图2可知,具体方法为:
首先从网络邻接表中找出会话信息的路径,再判断是否有已知会话的路径与会话信息的路径相交;具体的,先判断能否从网络邻接表中找到会话信息的路径;若能够找到会话信息的路径,则从找到的路径中找出最短路径,并判断是否有已知会话的路径与会话信息的最短路径相交;若不能找到会话信息的路径,则说明不能为会话信息设计编码策略。
若有已知会话的路径与会话信息的最短路径相交,则基于边不相交路径算法判断会话信息与已知会话信息能否建立数据链路图;若会话信息与已知会话信息能够建立数据链路图,则通过会话信息与已知会话信息建立数据链路图,并对数据链路图中的OpenFlow交换机设置编码系数和/或解码系数;在本实施例中,在设置编码系数和/或解码系数时,应该保证链路产生的数据包与非下行流链路独立,以避免成环。若会话信息与已知会话信息不能建立数据链路图,则继续遍历其他相交的已知会话直至找到一个已知会话能与会话信息建立数据链路图。需要说明的是,若始终没有已知会话信息能与会话信息建立数据链路图,则判断在找到的会话信息的路径中,是否能找到会话信息的第二短路径,若能在找到的会话信息的路径中找到会话信息的第二短路径,然后再在已知会话中找寻能建立数据链路图的会话。若不能找到与第二短路径建立数据链路图的已知会话,则继续遍历找到的会话信息的路径中的其他路径直至能够找到与路径建立数据链路图的已知会话。若无已知会话能够与路径建立数据链路图,则将找到的最短路径作为会话信息的编码策略,并将该会话存到不合理会话列表。其中,基于边不相交路径算法判断会话信息与已知会话信息能否建立数据链路图,包括:先根据会话信息和已知会话信息的信源和信宿之间的路径建立两个路径集合;再判断两个路径集合中的所有链路是否都最多只能被两条路径所共有;若两个路径集合中的所有链路都最多只能被两条路径所共有,则说明会话信息与已知会话信息能建立数据链路图;将路径集合中的路径合并组成数据链路图;否则说明会话信息与已知会话信息不能建立数据链路图。需要说明的是,若已知会话与会话信息建立数据链路图,则说明数据链路图中的所有路径都已被占用。在本实施例中,建立两个路径集合的具体方法为:先根据会话信息和已知会话信息选择网络中的空闲链路,再将空闲链路转换为平行链路;接着以3对不同的信源和信宿的组合方式从平行链路中选择出3条不相交的路径形成一个路径集合;再以3对不同的信源和信宿的组合方式从平行链路中选择出3条不相交的路径形成另一个路径集合。需要说明的是,在这两个路径集合中的路径可以有一样的路径。
若没有已知会话的路径与会话信息的最短路径相交,则将最短路径设置为会话信息的编码策略,并将该会话存到不合理会话列表。
接着判断数据链路图中的信宿能否接收到原始的会话数据;
若信宿能够接收到原始的会话数据,则将编码系数和/或解码系数、参与编解码操作的OpenFlow交换机及参与编解码操作的流ID设计为会话信息的编码策略;
若信宿不能接收到原始的会话数据,则重置编码系数和/或解码系数直至数据链路图中的信宿能够接收到原始的会话数据;
具体的,判断数据链路图中的两个会话信息的信宿能否接收到原始的会话数据,并根据信宿接收会话数据的情况做出相应的处理;
若两个会话信息的信宿都能接收到原始的会话数据,则将编码系数和/或解码系数、参与编解码操作的OpenFlow交换机及参与编解码操作的流ID设计为会话信息的编码策略;
若两个信宿中只有一个信宿能接收到原始的会话数据,则先以不能收到原始的会话数据的信宿设为起点,再沿着与会话数据传输的方向相反的方向寻找最近的一个OpenFlow交换机,再重置该OpenFlow交换机为解码交换机,并选择解码系数使得解码结果为信宿不能收到的原始的会话数据;再将选择的解码系数、参与解码操作的OpenFlow交换机及参与解码操作的流ID设计为会话信息的编码策略;
若两个信宿都不能接收到原始的会话数据,则重置编码系数和/或解码系数直至数据链路图中的信宿能够接收到原始的会话数据。
最后,将设计的编码策略及相应的转发行为分配给数据链路图中相应的OpenFlow交换机,由图3可知,并判断OpenFlow交换机中是否已存有编码策略;
若OpenFlow交换机中已存有编码策略,则OpenFlow交换机接收到编码策略及相应的转发行为后,判断分配的编码策略及相应的转发行为是否与OpenFlow交换机中已存的流表项相冲突;若编码策略及相应的转发行为与OpenFlow交换机中已存的流表项相冲突,则删除相冲突的流表项,并更新流表项,使OpenFlow交换机得到可用的流表项;若分配的编码策略及相应的转发行为与OpenFlow交换机中已存的流表项不相冲突,则将编码策略及相应的转发行为添加到OpenFlow交换机中已存的流表中,并更新流表项,使OpenFlow交换机得到可用的流表项;
若OpenFlow交换机中没有编码策略,则OpenFlow交换机直接将接收到编码策略及相应的转发行为添加到流表项中,使OpenFlow交换机得到可用的流表项。
在OpenFlow交换机得到可用的流表项后,对得到的可用的流表项设置生存时间,使得空闲时间超时或者使用时间超时的流表自动清除。
需要说明的是,由图4可知,在根据OpenFlow交换机所属的链路和OpenFlow交换机所属的链路的变化情况更新网络邻接表后,根据网络邻接表的变化情况进行相应的操作;
若在网络邻接表中增加了链路,则判断在当前不合理会话列表中的不合理会话信息是否能够被分配链路;若不合理会话信息能够被分配链路,则将不合理会话信息放入待设计会话流表中,准备设计不合理会话信息的编码策略;否则不进行任何操作;其中,不合理会话信息为不能被分配链路的会话信息;
若网络邻接表中减少了链路,则找出当前编码策略中已用到了已删除链路的会话信息,将不合理会话信息放入待设计会话流表中,并重新对会话信息设计编码策略。
通过本发明提供的OpenFlow控制器的路由控制方法进行路由控制,依据OpenFlow协议,OpenFlow控制器与OpenFlow交换机之间保持持续的心跳交互,OpenFlow控制器从OpenFlow交换机得到OpenFlow交换机的注册信息、状态信息以及其上的会话信息。OpenFlow控制器从OpenFlow交换机的注册信息中解析出OpenFlow交换机及该OpenFlow交换机所属的链路,从OpenFlow交换机的状态信息中解析出OpenFlow交换机所属的链路的变化情况,再根据OpenFlow交换机所属的链路和OpenFlow交换机所属的链路的变化情况更新网络邻接表。然后根据网络邻接表的变化情况进行相应的操作;若在网络邻接表中增加了链路,则判断在当前不合理会话列表中的不合理会话信息是否能够被分配链路;若不合理会话信息能够被分配链路,则为会话信息搜索出路径;再从搜索出的路径中找出最短路径,并判断是否有已知会话的路径与会话信息的最短路径相交;若有已知会话的路径与会话信息的最短路径相交,则判断会话信息与已知会话信息能否建立数据链路图;若会话信息与已知会话信息能够建立数据链路图,则通过会话信息与已知会话信息建立数据链路图,并对数据链路图中的OpenFlow交换机设置编码系数和/或解码系数;否则继续遍历其他相交的已知会话直至找到一个已知会话能与会话信息建立数据链路图。若始终没有已知会话信息能与会话信息建立数据链路图,则判断在找到的会话信息的路径中,是否能找到会话信息的第二短路径,若能在找到的会话信息的路径中找到会话信息的第二短路径,然后再在已知会话中找寻能建立数据链路图的会话。若不能找到与第二短路径建立数据链路图的已知会话,则继续遍历找到的会话信息的路径中的其他路径直至能够找到与路径建立数据链路图的已知会话。若无已知会话能够与路径建立数据链路图,则将找到的最短路径作为会话信息的编码策略,并将该会话存到不合理会话列表。若没有已知会话的路径与会话信息的最短路径相交,则将最短路径设置为会话信息的编码策略,并将该会话存到不合理会话列表。接着判断数据链路图中的信宿能否接收到原始的会话数据;若信宿能够接收到原始的会话数据,则将编码系数和/或解码系数、参与编解码操作的OpenFlow交换机及参与编解码操作的流ID设计为会话信息的编码策略;若信宿不能接收到原始的会话数据,则重置编码系数和/或解码系数直至数据链路图中的信宿能够接收到原始的会话数据;最后,将设计的编码策略及相应的转发行为分配给数据链路图中的OpenFlow交换机,并判断OpenFlow交换机中是否已存有编码策略;若OpenFlow交换机中已存有编码策略,则OpenFlow交换机接收到编码策略及相应的转发行为后,判断分配的编码策略及相应的转发行为是否与OpenFlow交换机中已存的流表项相冲突;若编码策略及相应的转发行为与OpenFlow交换机中已存的流表项相冲突,则删除相冲突的流表项,并更新流表项,使OpenFlow交换机得到可用的流表项。若编码策略及相应的转发行为与OpenFlow交换机中已存的流表项不相冲突,则将编码策略及相应的转发行为添加到OpenFlow交换机中已存的流表中,并更新流表项,使OpenFlow交换机得到可用的流表项。若OpenFlow交换机中没有编码策略,则OpenFlow交换机直接将接收到编码策略及相应的转发行为添加到流表项中,使OpenFlow交换机得到可用的流表项。在OpenFlow交换机得到可用的流表项后,对得到的可用的流表项设置生存时间,使得空闲时间超时或者使用时间超时的流表自动清除。若网络邻接表中减少了链路,找出当前编码策略中已用到了已删除链路的会话信息,将不合理会话信息放入待设计会话流表中,准备重新对会话信息设计编码策略。会话信息编码策略的设计方法同上,这里不做赘述。
本发明提供的OpenFlow控制器的路由控制方法通过OpenFlow控制器设计了OpenFlow交换机的编码运算和解码运算,对网络流进行网络编码,缓解了公用链路的流量,降低了网络中公用链路上的网络拥塞对网络性能的影响。本发明还通过为新会话和已有会话寻找数据链路图,为新会话提供了多条传输路径,平衡了网络负载,从而提升了网络容量。
最后所应说明的是,以上具体实施方式仅用以说明本发明的技术方案而非限制,尽管参照实例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的精神和范围,其均应涵盖在本发明的权利要求范围当中。
Claims (10)
1.一种OpenFlow控制器的路由控制方法,其特征在于,包括:
先由OpenFlow控制器检查OpenFlow交换机上的会话信息的编码策略是否已存在;
若所述会话信息的编码策略已存在,则将会话信息的操作指令发回给所述OpenFlow交换机;
若会话信息的编码策略不存在,则设计会话信息的编码策略;具体方法为:
判断是否有已知会话的路径与会话信息的路径相交;
若有所述已知会话的路径与会话信息的路径相交,则判断会话信息与已知会话信息能否建立数据链路图;若会话信息与已知会话信息能够建立所述数据链路图,则对数据链路图中的OpenFlow交换机设置编码系数和/或解码系数;否则继续遍历其他相交的已知会话直至找到已知会话信息能与会话信息建立数据链路图;
接着判断数据链路图中的信宿能否接收到原始的会话数据;
若所述信宿能够接收到所述原始的会话数据,则将所述编码系数和/或所述解码系数、参与编解码操作的OpenFlow交换机及参与编解码操作的流ID设计为会话信息的编码策略;
若信宿不能接收到原始的会话数据,则重置编码系数和/或解码系数直至数据链路图中的信宿能够接收到原始的会话数据;
若没有已知会话的路径与会话信息的路径相交,则将找出的会话信息的路径设置为会话信息的编码策略;
最后,将编码策略及相应的转发行为分配给相应的OpenFlow交换机。
2.如权利要求1所述的OpenFlow控制器的路由控制方法,其特征在于,所述先由OpenFlow控制器检查OpenFlow交换机上的会话信息的编码策略是否已存在,包括:先由所述OpenFlow控制器收集所述OpenFlow交换机的信息数据,得到OpenFlow交换机所属的链路、OpenFlow交换机所属的链路的变化情况及OpenFlow交换机上的会话信息;再检查所述会话信息的编码策略是否已存在。
3.如权利要求2所述的OpenFlow控制器的路由控制方法,其特征在于,在所述得到OpenFlow交换机所属的链路、OpenFlow交换机所属的链路的变化情况及OpenFlow交换机上的会话信息后,根据所述OpenFlow交换机所属的链路和所述OpenFlow交换机所属的链路的变化情况更新网络邻接表;再根据所述网络邻接表的变化情况进行相应的操作;
若在网络邻接表中增加了链路,则判断在当前不合理会话列表中的不合理会话信息是否能够被分配链路;若所述不合理会话信息能够被分配链路,则设计不合理会话信息的编码策略;其中,不合理会话信息为不能被分配链路的会话信息;
若网络邻接表中减少了链路,则找出当前编码策略中已用到了已删除链路的会话信息,并重新对会话信息设计编码策略;
其中,网络邻接表用于存放OpenFlow网络中的所有链路。
4.如权利要求1所述的OpenFlow控制器的路由控制方法,其特征在于,所述判断会话信息与已知会话信息能否建立数据链路图;若会话信息与已知会话信息能够建立数据链路图包括:先根据所述会话信息和所述已知会话信息的信源和信宿之间的路径建立两个路径集合;再判断所述两个路径集合中的所有链路是否都最多只能被两条路径所共有;若两个路径集合中的所有链路都最多只能被两条路径所共有,则说明会话信息与已知会话信息能建立数据链路图;将路径集合中的路径合并组成数据链路图;否则说明会话信息与已知会话信息不能建立数据链路图。
5.如权利要求4所述的OpenFlow控制器的路由控制方法,其特征在于,所述根据会话信息和已知会话信息的信源和信宿之间的路径建立两个路径集合包括:先根据所述会话信息和所述已知会话信息选择网络中的空闲链路,再将所述空闲链路转换为平行链路;接着以3对不同的信源和信宿的组合方式从所述平行链路中选择出3条不相交的路径形成一个路径集合;再以3对不同的信源和信宿的组合方式从平行链路中选择出3条不相交的路径形成另一个路径集合。
6.如权利要求1所述的OpenFlow控制器的路由控制方法,其特征在于,所述判断数据链路图中的信宿能否接收到原始的会话数据;若信宿能够接收到原始的会话数据,则将编码系数和/或解码系数、参与编解码操作的OpenFlow交换机及参与编解码操作的流ID设计为会话信息的编码策略;若信宿不能接收到原始的会话数据,则重置编码系数和/或解码系数直至数据链路图中的信宿能够接收到原始的会话数据,包括:判断所述数据链路图中的两个会话信息的信宿能否接收到所述原始的会话数据,并根据所述信宿接收会话数据的情况做出相应的处理;
若两个会话信息的信宿都能接收到原始的会话数据,则将所述编码系数和/或所述解码系数、所述参与编解码操作的OpenFlow交换机及所述参与编解码操作的流ID设计为会话信息的编码策略;
若两个信宿中只有一个信宿能接收到原始的会话数据,则先以不能接收到原始的会话数据的信宿设为起点,再沿着与会话数据传输的方向相反的方向寻找最近的一个OpenFlow交换机,再重置OpenFlow交换机为解码交换机,并选择解码系数使得解码结果为信宿不能收到的原始的会话数据;再将选择的解码系数、参与解码操作的OpenFlow交换机及参与解码操作的流ID设计为会话信息的编码策略;
若两个信宿都不能接收到原始的会话数据,则重置编码系数和/或解码系数直至数据链路图中的信宿能够接收到原始的会话数据。
7.如权利要求1所述的OpenFlow控制器的路由控制方法,其特征在于,所述将编码策略及相应的转发行为分配给相应的OpenFlow交换机包括:将所述编码策略及相应的转发行为分配给所述数据链路图中相应的OpenFlow交换机,并判断所述OpenFlow交换机中是否已存有编码策略;
若OpenFlow交换机中已存有编码策略,则OpenFlow交换机接收到编码策略及相应的转发行为后,更新流表项,使OpenFlow交换机得到可用的流表项;
若OpenFlow交换机中没有编码策略,则OpenFlow交换机直接将接收到的编码策略及相应的转发行为添加到流表项中,使OpenFlow交换机得到可用的流表项。
8.如权利要求7所述的OpenFlow控制器的路由控制方法,其特征在于,所述若OpenFlow交换机中已存有编码策略,则OpenFlow交换机接收到编码策略及相应的转发行为后,更新流表项,使OpenFlow交换机得到可用的流表项包括:若所述OpenFlow交换机中已存有编码策略,则OpenFlow交换机接收到所述编码策略及相应的转发行为后,判断分配的编码策略及相应的转发行为是否与OpenFlow交换机中已存的流表项相冲突;
若分配的编码策略及相应的转发行为与OpenFlow交换机中已存的流表项相冲突,则删除相冲突的流表项,并更新得到的流表项,使OpenFlow交换机得到可用的流表项;
若分配的编码策略及相应的转发行为与OpenFlow交换机中已存的流表项不相冲突,则将编码策略及相应的转发行为添加到OpenFlow交换机中已存的流表中,并更新流表项,使OpenFlow交换机得到可用的流表项。
9.如权利要求2所述的OpenFlow控制器的路由控制方法,其特征在于,所述OpenFlow交换机的信息数据包括:OpenFlow交换机的注册信息、OpenFlow交换机的的状态信息及OpenFlow交换机上的会话信息。
10.如权利要求9所述的OpenFlow控制器的路由控制方法,其特征在于,所述OpenFlow交换机的注册信息包括:OpenFlow交换机的交换机编号及与该OpenFlow交换机相连的OpenFlow交换机的交换机编号;所述OpenFlow交换机的状态信息包括:OpenFlow交换机的端口速率和OpenFlow交换机是否可用;所述OpenFlow交换机的会话信息包括:信源地址和信宿地址。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210572661.2A CN103023826B (zh) | 2012-12-26 | 2012-12-26 | 一种OpenFlow控制器的路由控制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210572661.2A CN103023826B (zh) | 2012-12-26 | 2012-12-26 | 一种OpenFlow控制器的路由控制方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103023826A true CN103023826A (zh) | 2013-04-03 |
CN103023826B CN103023826B (zh) | 2015-06-10 |
Family
ID=47971966
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210572661.2A Expired - Fee Related CN103023826B (zh) | 2012-12-26 | 2012-12-26 | 一种OpenFlow控制器的路由控制方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103023826B (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103391296A (zh) * | 2013-07-29 | 2013-11-13 | 北京华为数字技术有限公司 | 一种控制器、转发器及通道建立方法和系统 |
CN103595647A (zh) * | 2013-11-27 | 2014-02-19 | 北京邮电大学 | 一种基于OpenFlow的SDN虚拟化平台下行信令处理方法 |
CN103607379A (zh) * | 2013-11-04 | 2014-02-26 | 中兴通讯股份有限公司 | 一种软件定义网络安全实施方法、系统及控制器 |
CN103916634A (zh) * | 2014-04-04 | 2014-07-09 | 浙江宇视科技有限公司 | 一种基于openflow控制的视频点播方法 |
CN104378298A (zh) * | 2013-08-16 | 2015-02-25 | 中兴通讯股份有限公司 | 一种流表条目生成方法及相应设备 |
CN104426813A (zh) * | 2013-09-02 | 2015-03-18 | 中兴通讯股份有限公司 | 一种流表更新的控制方法、装置及控制器 |
CN104486209A (zh) * | 2014-12-12 | 2015-04-01 | 上海斐讯数据通信技术有限公司 | 一种OpenFlow协议网络的报文传输系统及方法 |
CN104780151A (zh) * | 2014-01-09 | 2015-07-15 | 富士通株式会社 | 流传送系统及在流传送系统中使用的节点装置 |
CN109039914A (zh) * | 2018-08-23 | 2018-12-18 | 迈普通信技术股份有限公司 | 报文处理方法、装置及电子设备 |
CN104683243B (zh) * | 2013-11-26 | 2019-02-01 | 华为技术有限公司 | 一种数据处理方法、装置及系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110188373A1 (en) * | 2010-02-01 | 2011-08-04 | Shuichi Saito | Interface control system and interface control method |
CN102349268A (zh) * | 2009-03-09 | 2012-02-08 | 日本电气株式会社 | OpenFlow通信系统和OpenFlow通信方法 |
CN102546351A (zh) * | 2012-03-15 | 2012-07-04 | 北京邮电大学 | openflow网络和现有IP网络互联的系统和方法 |
CN102576343A (zh) * | 2009-09-28 | 2012-07-11 | 日本电气株式会社 | 计算机系统和虚拟机迁移方法 |
CN102640463A (zh) * | 2009-11-18 | 2012-08-15 | 日本电气株式会社 | 动态路由分支系统和动态路由分支方法 |
-
2012
- 2012-12-26 CN CN201210572661.2A patent/CN103023826B/zh not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102349268A (zh) * | 2009-03-09 | 2012-02-08 | 日本电气株式会社 | OpenFlow通信系统和OpenFlow通信方法 |
CN102576343A (zh) * | 2009-09-28 | 2012-07-11 | 日本电气株式会社 | 计算机系统和虚拟机迁移方法 |
CN102640463A (zh) * | 2009-11-18 | 2012-08-15 | 日本电气株式会社 | 动态路由分支系统和动态路由分支方法 |
US20110188373A1 (en) * | 2010-02-01 | 2011-08-04 | Shuichi Saito | Interface control system and interface control method |
CN102546351A (zh) * | 2012-03-15 | 2012-07-04 | 北京邮电大学 | openflow网络和现有IP网络互联的系统和方法 |
Non-Patent Citations (2)
Title |
---|
YAMASAKI Y ET AL.: "《Flexible access management system for campus VLAN based on OpenFlow》", 《IEEE》 * |
王楠: "《Openflow网络中路由机制的研究与实现》", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103391296B (zh) * | 2013-07-29 | 2016-08-24 | 北京华为数字技术有限公司 | 一种控制器、转发器及通道建立方法和系统 |
WO2015014269A1 (zh) * | 2013-07-29 | 2015-02-05 | 华为技术有限公司 | 一种控制器、转发器及通道建立方法和系统 |
CN103391296A (zh) * | 2013-07-29 | 2013-11-13 | 北京华为数字技术有限公司 | 一种控制器、转发器及通道建立方法和系统 |
CN104378298A (zh) * | 2013-08-16 | 2015-02-25 | 中兴通讯股份有限公司 | 一种流表条目生成方法及相应设备 |
CN104426813A (zh) * | 2013-09-02 | 2015-03-18 | 中兴通讯股份有限公司 | 一种流表更新的控制方法、装置及控制器 |
CN103607379A (zh) * | 2013-11-04 | 2014-02-26 | 中兴通讯股份有限公司 | 一种软件定义网络安全实施方法、系统及控制器 |
CN104683243B (zh) * | 2013-11-26 | 2019-02-01 | 华为技术有限公司 | 一种数据处理方法、装置及系统 |
CN103595647A (zh) * | 2013-11-27 | 2014-02-19 | 北京邮电大学 | 一种基于OpenFlow的SDN虚拟化平台下行信令处理方法 |
CN103595647B (zh) * | 2013-11-27 | 2014-08-06 | 北京邮电大学 | 一种基于OpenFlow的SDN虚拟化平台下行信令处理方法 |
CN104780151B (zh) * | 2014-01-09 | 2018-09-04 | 富士通株式会社 | 流传送系统及在流传送系统中使用的节点装置 |
CN104780151A (zh) * | 2014-01-09 | 2015-07-15 | 富士通株式会社 | 流传送系统及在流传送系统中使用的节点装置 |
CN103916634B (zh) * | 2014-04-04 | 2017-11-03 | 浙江宇视科技有限公司 | 一种基于openflow控制的视频点播方法 |
CN103916634A (zh) * | 2014-04-04 | 2014-07-09 | 浙江宇视科技有限公司 | 一种基于openflow控制的视频点播方法 |
CN104486209A (zh) * | 2014-12-12 | 2015-04-01 | 上海斐讯数据通信技术有限公司 | 一种OpenFlow协议网络的报文传输系统及方法 |
CN109039914A (zh) * | 2018-08-23 | 2018-12-18 | 迈普通信技术股份有限公司 | 报文处理方法、装置及电子设备 |
CN109039914B (zh) * | 2018-08-23 | 2020-11-27 | 迈普通信技术股份有限公司 | 报文处理方法、装置及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN103023826B (zh) | 2015-06-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103023826B (zh) | 一种OpenFlow控制器的路由控制方法 | |
US10673741B2 (en) | Control device discovery in networks having separate control and forwarding devices | |
US10263889B2 (en) | Data forwarding method, device, and system in software-defined networking | |
CN100505692C (zh) | 高性能路由器bgp路由协议分布并行实现方法 | |
EP2737672B1 (en) | Resiliency-aware hybrid design of controller-switch connectivity in a split-architecture system | |
JP4328478B2 (ja) | ラベル転送ネットワークにおける経路変更方法並びにラベルスイッチングノード及び管理ノード | |
CN103119900B (zh) | 通信系统、控制设备、节点控制方法和节点控制程序 | |
EP2608459B1 (en) | Router, virtual cluster router system and establishing method thereof | |
US9065757B2 (en) | Network device and method of routing traffic | |
CN112448900A (zh) | 一种数据传输方法及装置 | |
JP2011160363A (ja) | コンピュータシステム、コントローラ、スイッチ、及び通信方法 | |
CN102368739A (zh) | 面向包-电路交换片上路由器的广播机制路由算法 | |
CN101099341B (zh) | 用于调度网络域的内部节点针对可达性事件的扫描的系统和方法 | |
GB2485026A (en) | Routed Split Multi-Link Trunking (RSMLT) resiliency for Wireless Local Area Network (WLAN) split-plane environments | |
CN101909005A (zh) | 转发表的处理方法和装置 | |
CN201774543U (zh) | 一种四网互联互通控制装置 | |
CN112822233B (zh) | 流量重定向方法及装置 | |
Oikonomou et al. | Scalable service migration in general topologies | |
CN1553651A (zh) | 基于多协议标签交换的用户设备双归属实现方法 | |
WO2017105816A1 (en) | Adaptive fabric multicast schemes | |
CN103248568B (zh) | 路由器及其实现支持冗余无编号链路的数据转发方法 | |
CN109257372A (zh) | 基于网络融合的报文转发方法、设备、存储介质及装置 | |
CN115426308B (zh) | 一种多标识网络下的链路状态路由方法 | |
CN110620723B (zh) | 基于路由分面中继节点的一种无状态单播保护方法 | |
CN102404178A (zh) | 一种四网互联互通控制系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20150610 Termination date: 20151226 |
|
EXPY | Termination of patent right or utility model |