一种异构控制器之间的通信方法及系统技术方案

技术编号:14895484 阅读:97 留言:0更新日期:2017-03-29 10:43
本发明专利技术实施例提供了一种异构控制器之间的通信方法及系统,包括:接收第一域控制器的域内交换机发送的第一链路层发现协议报文;根据所述第一链路层发现协议报文确定第二链路层发现协议报文;对所述第二链路层发现协议报文进行封装,得到南向协议承载报文;向超级控制器发送所述南向协议承载报文,以使所述超级控制器获得域间链路信息;获取各个域控制器的域内网络信息;对所述域内网络信息进行封装,得到第一报文;将所述第一报文发送给超级控制器,以使所述超级控制器获得所述各个域控制器的域内网络信息,根据所述域间链路信息及所述域内网络信息进行异构控制器之间的通信。本发明专利技术实施例,以实现支持异构控制器间的协同工作。

【技术实现步骤摘要】

本专利技术涉及网络
,特别是涉及一种异构控制器之间的通信方法及系统。
技术介绍
基于新型网络架构的软件定义网络(SoftwareDefinedNetwork,SDN)成为近年来网络领域的研究热点。其中,控制平面是SDN架构的核心位置,负责整个底层网络的控制和管理。随着SDN网络规模不断扩大,为管理大规模网络,特别是在异构化的网络中,需要部署协同工作的多异构控制器。现有的针对多异构控制器协同方案均基于水平架构,控制器之间为全连接关系,彼此共享各自的网络信息,每个控制器都拥有全局网络信息,控制器之间通过数据交换实现协同工作,系统效率运行低。因此,对于异构SDN控制器之间的协作,亟需一种高效的通信方法。
技术实现思路
本专利技术实施例的目的在于提供一种异构控制器之间的通信方法及系统,以实现支持垂直架构的异构控制器间的协同工作。具体技术方案如下:第一方面,本专利技术公开了一种异构控制器之间的通信方法,应用于域控制器,包括:接收第一域控制器的域内交换机发送的第一链路层发现协议报文;根据所述第一链路层发现协议报文确定第二链路层发现协议报文;对所述第二链路层发现协议报文进行封装,得到南向协议承载报文;向超级控制器发送所述南向协议承载报文,以使所述超级控制器获得域间链路信息;获取各个域控制器的域内网络信息;对所述域内网络信息进行封装,得到第一报文;将所述第一报文发送给超级控制器,以使所述超级控制器获得所述各个域控制器的域内网络信息,根据所述域间链路信息及所述域内网络信息进行异构控制器之间的通信,其中,所述各个域控制器包括所述第一域控制器。可选的,在所述接收所述第一域控制器的域内交换机发送的第一链路层发现协议报文之前,所述方法还包括:获取所述第一域控制器的唯一标识信息ID;所述第一域控制器为该第一域控制器的域内的每个交换机的每个端口分配一个虚拟端口号;根据所述第一域控制器的ID及所述一个虚拟端口号,确定所述第一链路层发现协议报文;将所述第一链路层发现协议报文发送给第二域控制器的域内交换机,其中,所述第二域控制器和所述第一域控制器是异构的控制器。可选的,在所述接收第一域控制器的域内交换机发送的第一链路层发现协议报文之前,所述方法还包括:接收第二域控制器发送的第一链路层发现协议报文;当接收所述第一链路层发现协议报文的第一域控制器的域内交换机的端口未被确定为虚拟端口时,将接收所述第一链路层发现协议报文的端口确定为第一域的虚拟端口,并为该虚拟端口分配虚拟端口号,其中,所述第一域为所述第一域控制器所控制的域。可选的,所述根据所述第一链路层发现协议报文确定第二链路层发现协议报文,包括:获得接收所述第一链路层发现协议报文的,所述第一域的虚拟端口的虚拟端口号,将所述虚拟端口号添加到所述第一链路层发现协议报文中,得到所述第二链路层发现协议报文。可选的,所述域内网络信息包括:虚拟交换机的虚拟端口信息、虚拟端口间的可达性信息以及主机信息;其中,所述虚拟交换机为各个控制器所控制的网络;所述第一报文包括:虚拟端口信息报文、虚拟端口间的可达性报文和主机信息报文;所述对所述域内网络信息进行封装,得到第一报文,包括:将所述虚拟端口信息封装,得到所述虚拟端口信息报文;将所述虚拟端口间的可达性信息封装,得到所述虚拟端口间的可达性报文;将所述主机信息封装,得到所述主机信息报文;其中,所述各个域控制器包括:所述第一域控制器和所述第二域控制器。第二方面,本专利技术实施例公开了一种异构控制器之间的通信方法,应用于超级控制器,包括:接收各个域控制器发送的第一报文,解析所述第一报文,得到所述各个域控制器的域内网络信息;所述域内网络信息包括:虚拟端口信息、虚拟端口间的可达性信息和主机信息;所述第一报文包括:虚拟端口信息报文、虚拟端口间的可达性报文和主机信息报文;接收各个域控制器发送的南向协议承载报文;解析所述南向协议承载报文,得到所述各个域控制器之间的域间链路信息;根据所述域内网络信息和所述域间链路信息,生成全局网络信息。可选的,所述解析所述第一报文,得到所述各个域控制器的域内网络信息,包括:解析所述虚拟端口信息报文,得到所述各个域控制器的虚拟端口信息;解析所述虚拟端口间可达性报文,得到所述各个域控制器的虚拟端口间的可达性信息;解析所述主机信息报文,得到所述各个域控制器的主机信息。可选的,所述解析所述南向协议承载报文,得到所述各个域控制器之间的域间链路信息,包括:解析所述南向协议承载报文,得到第二链路层发现协议报文;分析所述第二链路层发现协议报文,得到所述各个域控制器之间的域间链路信息。可选的,所述根据所述域内网络信息和所述域间链路信息,生成全局网络信息之后,所述方法还包括:当接收第一域控制器发送的第一目标南向协议承载报文时,解析所述第一目标南向协议承载报文,得到南向协议报文;解析所述南向协议报文,得到所述第一域控制器不能处理的网络数据包;获取所述网络数据包中的目的主机地址;根据所述域内网络信息,确定所述目的主机地址所在的第二域控制器;计算所述第一域控制器到所述第二域控制器的跨域路径;根据所述全局网络信息及所述跨域路径,生成转发规则信息,将所述转发规则封装为第二南向协议承载报文,并发送给所述跨域路径上的至少一个第三域控制器,以使所述至少一个第三域控制器协同所述第一域控制器处理所述网络数据包,所述至少一个第三域控制器包括所述第二域控制器。第三方面,本专利技术实施例公开了一种异构控制器之间的通信系统,应用于软件定义网络中,所述系统包括:超级控制器及至少一个域控制器;其中,所述超级控制器用于,接收各个域控制器发送的第一报文,解析所述第一报文,得到所述各个域控制器的域内网络信息;接收各个域控制器发送的南向协议承载报文;解析所述南向协议承载报文,得到所述各个域控制器之间的域间链路信息;根据所述域内网络信息和所述域间链路信息,生成全局网络信息;所述域内网络信息包括:虚拟端口信息、虚拟端口间的可达性信息和主机信息;所述第一报文包括:虚拟端口信息报文、虚拟端口间的可达性报文和主机信息报文;所述至少一个域控制器用于,接收第一域控制器的域内交换机发送的第一链路层发现协议报文;根据所述第一链路层发现协议报文确定第二链路层发现协议报文;以及,用于对所述第二链路层发现协议报文进行封装,得到南向协议承载报文;以及,用于向超级控制器发送所述南向协议承载报文,以使所述超级控制器获得域间链路信息;以及,用于获取各个域控制器的域内网络信息;对所述域内网络信息进行封装,得到第一报文;以及,用于将所述第一报文发送给超级控制器,以使所述超级控制器获得所述各个域控制器的域内网络信息,根据所述域间链路信息及所述域内网络信息进行异构控制器之间的通信,所述各个域控制器包括所述第一域控制器。本专利技术实施例提供的一种异构控制器之间的通信方法及系统,所述方法包括:接收第一域控制器发送的第一链路层发现协议报文;根据所述第一链路层发现协议报文确定第二链路层发现协议报文;对所述第二链路层发现协议报文进行封装,得到南向协议承载报文;向超级控制器发送所述南向协议承载报文,以使所述超级控制器获得域间链路信息;获取所述第一域控制器的域内网络信息;对所述域内网络信息进行封装,得到第一报文;将所述第一报文发送给超级控制器,以使所述超级控制器获得本文档来自技高网...
一种异构控制器之间的通信方法及系统

【技术保护点】
一种异构控制器之间的通信方法,其特征在于,应用于域控制器,包括:接收第一域控制器的域内交换机发送的第一链路层发现协议报文;根据所述第一链路层发现协议报文确定第二链路层发现协议报文;对所述第二链路层发现协议报文进行封装,得到南向协议承载报文;向超级控制器发送所述南向协议承载报文,以使所述超级控制器获得域间链路信息;获取各个域控制器的域内网络信息;对所述域内网络信息进行封装,得到第一报文;将所述第一报文发送给超级控制器,以使所述超级控制器获得所述各个域控制器的域内网络信息,根据所述域间链路信息及所述域内网络信息进行异构控制器之间的通信,其中,所述各个域控制器包括所述第一域控制器。

【技术特征摘要】
1.一种异构控制器之间的通信方法,其特征在于,应用于域控制器,包括:接收第一域控制器的域内交换机发送的第一链路层发现协议报文;根据所述第一链路层发现协议报文确定第二链路层发现协议报文;对所述第二链路层发现协议报文进行封装,得到南向协议承载报文;向超级控制器发送所述南向协议承载报文,以使所述超级控制器获得域间链路信息;获取各个域控制器的域内网络信息;对所述域内网络信息进行封装,得到第一报文;将所述第一报文发送给超级控制器,以使所述超级控制器获得所述各个域控制器的域内网络信息,根据所述域间链路信息及所述域内网络信息进行异构控制器之间的通信,其中,所述各个域控制器包括所述第一域控制器。2.根据权利要求1所述的方法,其特征在于,在所述接收所述第一域控制器的域内交换机发送的第一链路层发现协议报文之前,所述方法还包括:获取所述第一域控制器的唯一标识信息ID;所述第一域控制器为该第一域控制器的域内的每个交换机的每个端口分配一个虚拟端口号;根据所述第一域控制器的ID及所述一个虚拟端口号,确定所述第一链路层发现协议报文;将所述第一链路层发现协议报文发送给第二域控制器的域内交换机,其中,所述第二域控制器和所述第一域控制器是异构的控制器。3.根据权利要求2所述的方法,其特征在于,在所述接收第一域控制器的域内交换机发送的第一链路层发现协议报文之前,所述方法还包括:接收第二域控制器发送的第一链路层发现协议报文;当接收所述第一链路层发现协议报文的第一域控制器的域内交换机的端口未被确定为虚拟端口时,将接收所述第一链路层发现协议报文的端口确定为第一域的虚拟端口,并为该虚拟端口分配虚拟端口号,其中,所述第一域为所述第一域控制器所控制的域。4.根据权利要求3所述的方法,其特征在于,所述根据所述第一链路层发现协议报文确定第二链路层发现协议报文,包括:获得接收所述第一链路层发现协议报文的,所述第一域的虚拟端口的虚拟端口号,将所述虚拟端口号添加到所述第一链路层发现协议报文中,得到所述第二链路层发现协议报文。5.根据权利要求1所述的方法,其特征在于,所述域内网络信息包括:虚拟交换机的虚拟端口信息、虚拟端口间的可达性信息以及主机信息;其中,所述虚拟交换机为各个控制器所控制的网络;所述第一报文包括:虚拟端口信息报文、虚拟端口间的可达性报文和主机信息报文;所述对所述域内网络信息进行封装,得到第一报文,包括:将所述虚拟端口信息封装,得到所述虚拟端口信息报文;将所述虚拟端口间的可达性信息封装,得到所述虚拟端口间的可达性报文;将所述主机信息封装,得到所述主机信息报文;其中,所述各个域控制器还包括:所述第二域控制器。6.一种异构控制器之间的通信方法,其特征在于,应用于超级控制器,包括:接收各个域控制器发送的第一报文,解析所述第一报文,得到所述各个域控制器的域内网络信息;所述域内网络信息包括:虚拟端口信息、虚拟端口间的可达性信息和主机信息;所述第一报文包括:虚拟端口信息报文、虚拟端口间的可达性报文和主机信息报文;接收各个...

【专利技术属性】
技术研发人员:杨帆刘江曹睿黄韬刘韵洁妥艳君李吉良刘玉贞张学敏张文志
申请(专利权)人:北京邮电大学中国电子科技集团公司第五十四研究所
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1