一种链路状态检测方法、装置和系统制造方法及图纸

技术编号:13431372 阅读:140 留言:0更新日期:2016-07-30 03:46
本发明专利技术实施例提供应用于软件定义网络SDN的链路状态检测方法、装置和系统,用于减少控制器与交换机之间的链路状态探测的报文。在控制器发现一条可用链路之后,控制器向交换机发送链路流表,该链路流表用于指示该交换机将其它交换机通过所述可用链路转发的用于探测所述可用链路的状态报文进行丢弃。

Link state detection method, device and system

The embodiment of the invention provides a link state detection method, a device and a system for software defined network SDN, which is used for reducing the link state detection between the controller and the switch. After the discovery of an available link in the controller, the controller to switch the transmission link flow table, the link flow table is used to indicate that the switch will discard other switches through the available link forwarding state for the detection of the available link message.

【技术实现步骤摘要】

本专利技术实施例涉及通信技术,特别是一种链路状态检测方法、装置和系统。
技术介绍
在软件定义网络(SoftwareDefinedNetworking,SDN)的体系架构包括控制器和交换机,控制器是SDN网络的核心。应用通过控制器来配置和操作交换机的各种设置和行为,从而达到控制交换机实现各种应用逻辑的目的;同样,交换机也通过控制器将数据平面的各种信息反馈到应用中,以便应用做出相应的控制逻辑。OpenFlow协议用来描述控制器和交换机之间交互所用信息的标准,以及控制器和交换机的接口标准。协议的核心部分是用于OpenFlow协议信息结构的集合。流表(FlowTable)是OpenFLow交换机本地维护的用于控制数据包具体处理操作的表项。当OpenFlow交换机上线后,它会通过一系列消息与控制器建立连接并交互必要的信息。建立连接成功后,控制器可以向OpenFlow交换机下发一条LLDP(LinkLayerDiscoveryProtocol,链路层发现协议)报文的通用流表,该通用流表用于指示OpenFlow交换机将收到的所有LLDP报文都通过OpenFlow协议中的Packet-In消息上报给控制器。由于网络的控制都集中在控制器,所以链路状态的(例如链路发现或链路故障)检测都需要控制器来完成。为了使控制器快速发现链路或发现链路故障,需要控制器以一定周期T发起链路的状态的探测,控制器首先会根据SDN网络中的任意一个交换机1的信息构造一个模拟交换机1发出的LLDP报文,封装到OpenFlow协议中Packet-Out消息中发送给交换机1,该报文对应的actions是从交换机1的某个开启的端口发出。交换机1收到LLDP的Packet-Out报文后,按照actions从某个开启的端口发出,例如通过端口1发出。以交换机2为例,它收到O交换机1发来的LLDP报文后,首先在本地通用流表里匹配,找到了控制器之前下发的LLDP报文的通用匹配流表,按照流表actions将该LLDP报文通过Packet-In消息发送给控制器。由于SDN网络中存在大量的交换机,如果在链路发现阶段,每个交换机都发送Packet-In消息给控制器,将使得控制器收到大量的Packet-In消息。当网络规模增大时,这个消息量还是相当大,会占用控制器和交换机之间安全通道的大量网络资源,影响控制消息的及时准确传输,也浪费了控制器的处理和存储资源的。综上所述,现有技术方案中存在大量的Packet-In消息,降低了控制器网络和计算资源的利用率,影响整个网络的使用效率。
技术实现思路
本专利技术实施例提出了一种链路状态检测方法、装置和系统,以解决现有技术链路状态检测方法浪费网络资源的问题。第一方面,本专利技术实施例一种链路状态检测方法,应用于软件定义网络SDN,包括:控制器向第一交换机下发基于链路层发现协议LLDP构造的第一LLDP报文,所述第一LLDP报文指示所述第一交换机向第二交换机转发所述第一LLDP报文以发现所述第一交换机到所述第二交换机的可用链路;所述控制器接收所述第二交换机上报的所述第一LLDP报文,根据所述第一LLDP报文的传输路径确定所述第一交换机到第二交换机的可用链路,并记录所述可用链路的信息;所述控制器向所述第二交换机发送链路流表,所述链路流表用于指示所述第二交换机将所述第一交换机通过所述可用链路转发的第二LLDP报文进行丢弃,所述第二LLDP报文由所述控制器触发并用于探测所述可用链路的状态。根据第一方面,第一种可行的实现方式中,所述链路流表包括:所述链路的标识信息和丢弃指示,所述链路标识信息包括所述第一交换机的信息和所述第二交换机的信息,所述第一交换机的信息包括所述第一交换机的媒体接入控制MAC地址和端口地址,所述第二交换机的信息包括所述第二交换机的媒体接入控制MAC地址和端口地址。根据第一方面的上述可行的实现方式,第二种可行的实现方式中,在所述控制器向第一交换机下发所述第一LLDP报文之前,还包括:所述控制器在确定与所述第二交换机建立连接后,向所述第二交换机发送通用流表,所述通用流表用于指示所述第二交换机将接收到的所有LLDP报文上报给所述控制器;则所述链路流表中还包括优先级信息,所述优先级信息用于指示所述链路流表的优先级高于所述通用流表。根据第一方面的上述可行的实现方式,第三种可行的实现方式中,所述控制器每间隔第一时间周期触发所述第二LLDP报文;则所述链路流表中还包括流表老化时间和流表老化行为,所述流表老化时间大于所述第一时间周期,所述流表老化行为用于指示所述第二交换机在所述链路流表老化时删除所述链路流表且向所述控制器上报所述链路流表已删除的通知。根据第一方面的上述可行的实现方式,第四种可行的实现方式中,,还包括:所述控制器接收所述第二交换机发送的所述链路流表已删除的通知,并根据所述通知确定所述可用链路的状态出现异常。第二方面,提供一种链路状态检测方法,应用于软件定义网络SDN,包括:第二交换机接收第一交换机转发的基于链路层发现协议LLDP协议的第一LLDP报文,所述第一LLDP报文由控制器构造并下发给所述第一交换机,所述第一LLDP报文用于发现所述第一交换机到所述第二交换机的可用链路;所述第二交换机向所述控制器上报所述第一LLDP报文,以使得所述控制器根据所述第一LLDP报文的传输路径确定所述第一交换机到第二交换机的可用链路;所述第二交换机接收并保存所述控制器发送的链路流表,所述链路流表用于指示所述第二交换机将所述第一交换机通过所述可用链路转发的第二LLDP报文进行丢弃,所述第二LLDP报文由所述控制器触发并用于探测所述可用链路的状态。根据第二方面,第一种可行的实现方式中,所述链路流表包括:所述链路的标识信息和丢弃指示,所述链路标识信息包括所述第一交换机的信息和所述第二交换机的信息,所述第一交换机的信息包括所述第一交换机的媒体接入控制MAC地址和端口地址,所述第二交换机的信息包括所述第二交换机的媒体接入控制MAC地址和端口地址。根据第二方面的上述可行的实现方式,第二种可行的实现方式中,在所述第二交换机接收第一交换机转发的所述第一LLDP报文之前,还包括:所述第二交换机接收所述控制器发送的通用流表,所述通用流表用于指示所述第二交换机将接收到的所有LLDP报文上报给所述控制器;相应地,所述第二交换机在接收到所述第一LLD本文档来自技高网
...

【技术保护点】
一种链路状态检测方法,其特征在于,应用于软件定义网络SDN,包括:控制器向第一交换机下发基于链路层发现协议LLDP构造的第一LLDP报文,所述第一LLDP报文指示所述第一交换机向第二交换机转发所述第一LLDP报文以发现所述第一交换机到所述第二交换机的可用链路;所述控制器接收所述第二交换机上报的所述第一LLDP报文,根据所述第一LLDP报文的传输路径确定所述第一交换机到第二交换机的可用链路,并记录所述可用链路的信息;所述控制器向所述第二交换机发送链路流表,所述链路流表用于指示所述第二交换机将所述第一交换机通过所述可用链路转发的第二LLDP报文进行丢弃,所述第二LLDP报文由所述控制器触发并用于探测所述可用链路的状态。

【技术特征摘要】
1.一种链路状态检测方法,其特征在于,应用于软件定义网络SDN,包
括:
控制器向第一交换机下发基于链路层发现协议LLDP构造的第一LLDP报
文,所述第一LLDP报文指示所述第一交换机向第二交换机转发所述第一LLDP
报文以发现所述第一交换机到所述第二交换机的可用链路;
所述控制器接收所述第二交换机上报的所述第一LLDP报文,根据所述第
一LLDP报文的传输路径确定所述第一交换机到第二交换机的可用链路,并记
录所述可用链路的信息;
所述控制器向所述第二交换机发送链路流表,所述链路流表用于指示所述
第二交换机将所述第一交换机通过所述可用链路转发的第二LLDP报文进行丢
弃,所述第二LLDP报文由所述控制器触发并用于探测所述可用链路的状态。
2.根据权利要求1所述的方法,其特征在于,所述链路流表包括:所述链
路的标识信息和丢弃指示,所述链路标识信息包括所述第一交换机的信息和所
述第二交换机的信息,所述第一交换机的信息包括所述第一交换机的媒体接入
控制MAC地址和端口地址,所述第二交换机的信息包括所述第二交换机的媒
体接入控制MAC地址和端口地址。
3.根据权利要求1或2所述的方法,其特征在于,在所述控制器向第一交
换机下发所述第一LLDP报文之前,还包括:
所述控制器在确定与所述第二交换机建立连接后,向所述第二交换机发送
通用流表,所述通用流表用于指示所述第二交换机将接收到的所有LLDP报文
上报给所述控制器;
则所述链路流表中还包括优先级信息,所述优先级信息用于指示所述链路
流表的优先级高于所述通用流表。
4.根据权利要求3所述的方法,其特征在于,所述控制器每间隔第一时间

\t周期触发所述第二LLDP报文;
则所述链路流表中还包括流表老化时间和流表老化行为,所述流表老化时
间大于所述第一时间周期,所述流表老化行为用于指示所述第二交换机在所述
链路流表老化时删除所述链路流表且向所述控制器上报所述链路流表已删除的
通知。
5.根据权利要求4所述的方法,其特征在于,还包括:
所述控制器接收所述第二交换机发送的所述链路流表已删除的通知,并根
据所述通知确定所述可用链路的状态出现异常。
6.一种链路状态检测方法,其特征在于,应用于软件定义网络SDN,包
括:
第二交换机接收第一交换机转发的基于链路层发现协议LLDP协议的第一
LLDP报文,所述第一LLDP报文由控制器构造并下发给所述第一交换机,所
述第一LLDP报文用于发现所述第一交换机到所述第二交换机的可用链路;
所述第二交换机向所述控制器上报所述第一LLDP报文,以使得所述控制
器根据所述第一LLDP报文的传输路径确定所述第一交换机到第二交换机的可
用链路;
所述第二交换机接收并保存所述控制器发送的链路流表,所述链路流表用
于指示所述第二交换机将所述第一交换机通过所述可用链路转发的第二LLDP
报文进行丢弃,所述第二LLDP报文由所述控制器触发并用于探测所述可用链
路的状态。
7.根据权利要求6所述的方法,其特征在于,所述链路流表包括:所述链
路的标识信息和丢弃指示,所述链路标识信息包括所述第一交换机的信息和所
述第二交换机的信息,所述第一交换机的信息包括所述第一交换机的媒体接入
控制MAC地址和端口地址,所述第二交换机的信息包括所述第二交换机的媒
体接入控制MAC地址和端口地址。
8.根据权利要求6或7所述的方法,其特征在于,在所述第二交换机接收
第一交换机转发的所述第一LLDP报文之前,还包括:
所述第二交换机接收所述控制器发送的通用流表,所述通用流表用于指示
所述第二交换机将接收到的所有LLDP报文上报给所述控制器;
相应地,
所述第二交换机在接收到所述第一LLDP报文后,根据所述通用流表向所
述控制器上报所述第一LLDP报文;
所述链路流表中还包括优先级信息,所述优先级信息用于指示所述链路流
表的优先级高于所述通用流表;
所述第二交换机在接收到所述第二LLDP报文后,根据所述优先级信息匹
配所述链路流表,根据匹配结果将所述第二LLDP报文丢弃。
9.根据权利要求6-8任一项所述的方法,其特征在于,所述第二LLDP报
文由所述控制器每间隔第一时间周期触发;
则所述链路流表中还包括流表老化时间和流表老化行为,所述流表老化时
间大于所述第一时间周期,所述流表老化行为用于指示所述第二交换机在所述
链路流表老化时删除所述链路流表且向所述控制器上报所述链路流表已删除的
通知。
10.根据权利要求9所述的方法,其特征在于,还包括:
所述第二交换机在保存所述链路流表之后,启动计时器;
若在所述计时器的计时时间超出所述流表老化时间之前接收到所述第二
LLDP报文,所述所述第二交换机根据所述链路流表将所述第二LLDP报文丢
弃,并重置所述计时器。
11.根据权利要求10所述的方法,其特征在于,还包括:
所述第二交换机确定在所述计时器的计时时间超出所述流表老化时间之
后,仍未接收到所述第二LLDP报文,则确定所述链路流表老化;
所述第二交换机根据所述流表老化行为删除所述链路流表,并向所述控制
器上报所述链路流表已删除的通知,以通知所述控制器所述可用链路的状态出
现异常。
12.一种软件定义网络SDN,其特征在于,包括控制器、第一交换机和第

\t二交换机;
所述控制器,用于向所述第一交换机下发基于链路层发现协议LLDP协议
构造的第一LLDP报文,所述第一LLDP报文指示所述第一交换机向第二交换
机转发所述第一LLDP报文以发现所述第一交换机到所述第二交换机的可用链
路;
所述第一交换机,用于向所述第二交换机转发所述第一LLDP报文;
所述第二交换机,用于接收所述第一交换机转发的所述第一LLDP报文,
以及向所述控制器上报所述第一LLDP报文;
所述控制器,还用于接收所述第二交换机上报的所述第一LLDP报文,根
据所述第一LLDP报文的传输路径确定所述第一交换机到第二交换机的可用链
路,记录所述可用链路的信息,以及向所述第二交换机发送链路流表,所述链
路流表用于指示所述第二交换机将所述第一交换机通过所述可用链路转发的第
二LLDP报文进行丢弃,所述第二LLDP报文由所述控制器触发并用于探测所
述可用链路的状态;
所述第二交换机,还用于接收并保存所述控制器发送的链路流表。
13.根据权利要求12所述的软件定义网络,其特征在于,所述链路流表包
括:所述链路的标识信息和丢弃指示,所述链路标识信息包括所述第一交换机
的信息和所述第二交换机的信息,所述第一交换机的信息包括所述第一交换机
的媒体接入控制MAC地址和端口地址,所述第二交换机的信息包括所述第二
交换机的媒体接入控制MAC地址和端口地址。
14.根据权利要求12或13所述的软件定义网络,其特征在于,
所述控制器还用于在确定与所述第二交换机建立连接后,向所述第二交换
机发送通用流表,所述通用流表用于指示所述第二交换机将接收到的所有
LLDP报文上报给所述控制器,以及所述控...

【专利技术属性】
技术研发人员:朱旭琪
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:广东;44

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

1