CN106789387A - 一种用于sdn的链路检测方法及装置 - Google Patents

一种用于sdn的链路检测方法及装置 Download PDF

Info

Publication number
CN106789387A
CN106789387A CN201610150277.1A CN201610150277A CN106789387A CN 106789387 A CN106789387 A CN 106789387A CN 201610150277 A CN201610150277 A CN 201610150277A CN 106789387 A CN106789387 A CN 106789387A
Authority
CN
China
Prior art keywords
switching equipment
detection message
link detection
link
flow table
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
Application number
CN201610150277.1A
Other languages
English (en)
Other versions
CN106789387B (zh
Inventor
宋小恒
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
New H3C Technologies Co Ltd
Original Assignee
New H3C Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by New H3C Technologies Co Ltd filed Critical New H3C Technologies Co Ltd
Priority to CN201610150277.1A priority Critical patent/CN106789387B/zh
Publication of CN106789387A publication Critical patent/CN106789387A/zh
Application granted granted Critical
Publication of CN106789387B publication Critical patent/CN106789387B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0805Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
    • H04L43/0811Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking connectivity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/10Active monitoring, e.g. heartbeat, ping or trace-route
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Environmental & Geological Engineering (AREA)
  • Health & Medical Sciences (AREA)
  • Cardiology (AREA)
  • General Health & Medical Sciences (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明实施例提供了一种用于软件定义网络SDN的链路检测方法及装置,应用于控制器,该方法包括:向源交换设备下发LLDP报文、目的交换设备的地址信息和目的交换设备的标签值,以使所述源交换设备转发链路检测报文,所述链路检测报文封装了所述LLDP报文、目的交换设备的地址信息和目的交换设备的标签值;接收所述目的交换设备根据所述链路检测报文和流表返回的LLDP报文,其中所述流表为所述控制器下发的,用于指示所述目的交换设备将LLDP报文返回控制器,指示源交换设备与目的交换设备之间的中间交换设备转发所述链路检测报文;确定所述源交换设备和所述目的交换设备之间的链路连接状态。本发明实施例能够准确地检测SDN网络中交换设备之间的链路连接状态。

Description

一种用于SDN的链路检测方法及装置
技术领域
本发明涉及通信技术领域,特别是涉及一种用于SDN的链路检测方法及装置。
背景技术
SDN(Software Defined Network,软件定义网络)是一种新型网络创新架构,其核心思想是将网络设备的控制层面与转发层面分离,以实现对网络流量的灵活控制,为核心网络及应用的创新提供良好的平台。
SDN网络中支持链路的检测功能。具体地,控制器可以定时向每个交换设备的链路端口发送LLDP(Link Layer Discovery Protocol,链路层发现协议)报文,LLDP报文中携带源交换设备号和源端口号,LLDP报文封装在Packetout报文中。源交换设备收到该Packetout报文后解析出LLDP协议报文并向指定的源端口发送LLDP报文,LLDP报文到达目的交换设备后,由目的交换设备将LLDP报文封装在Packetin报文上送到控制器。其中,Packetin报文中携带目的交换设备的设备号。控制器通过LLDP报文中的源交换设备号以及Packetin报文中目的交换设备号,就可以获取源交换设备和目的交换设备之间的链路连接状态。
发明内容
本发明实施例的目的在于提供一种用于SDN的链路检测方法及装置,以准确地检测SDN网络中交换设备之间的链路连接状态。具体技术方案如下:
第一方面,本发明实施例提供了一种用于软件定义网络SDN的链路检测方法,应用于控制器,所述方法包括:
向源交换设备下发链路层发现协议LLDP报文、目的交换设备的地址信息和目的交换设备的标签值,以使所述源交换设备转发链路检测报文,所述链路检测报文封装了所述LLDP报文、目的交换设备的地址信息和目的交换设备的标签值;
接收所述目的交换设备根据所述链路检测报文和流表返回的LLDP报文,其中所述流表为所述控制器下发的,用于指示所述目的交换设备将LLDP报文返回控制器,指示源交换设备与目的交换设备之间的中间交换设备转发所述链路检测报文;
确定所述源交换设备和所述目的交换设备之间的链路连接状态。
第二方面,本发明实施例提供了一种用于软件定义网络SDN的链路检测方法,应用于第一交换设备,所述方法包括:
针对当前待发送的链路检测报文,所述链路检测报文中封装有链路层发现协议LLDP报文、目的交换设备的地址信息和目的交换设备的标签值,提取所述链路检测报文中携带的目的交换设备的地址信息、目的交换设备的标签值;
将提取的所述目的交换设备的地址信息、目的交换设备的标签值与控制器下发的流表进行匹配;
当匹配到用于指导本设备转发所述链路检测报文的流表时,若流表中的地址信息和标签值为本设备的地址信息和标签值,根据流表的动作项将LLDP报文上送至控制器;若流表中的地址信息和标签值非本设备的地址信息和标签值,根据流表的动作项转发所述链路检测报文。
第三方面,本发明实施例提供了一种用于软件定义网络SDN的链路检测装置,应用于控制器,所述装置包括:
发送模块,用于向源交换设备下发链路层发现协议LLDP报文、目的交换设备的地址信息和目的交换设备的标签值,以使所述源交换设备转发链路检测报文,所述链路检测报文封装了所述LLDP报文、目的交换设备的地址信息和目的交换设备的标签值;
第一接收模块,用于接收所述目的交换设备根据所述链路检测报文和流表返回的LLDP报文,其中所述流表为所述控制器下发的,用于指示所述目的交换设备将LLDP报文返回控制器,指示源交换设备与目的交换设备之间的中间交换设备转发所述链路检测报文;
确定模块,用于确定所述源交换设备和所述目的交换设备之间的链路连接状态。
第四方面,本发明实施例提供了一种用于软件定义网络SDN的链路检测装置,应用于第一交换设备,所述装置包括:
提取模块,用于针对当前待发送的链路检测报文,所述链路检测报文中封装有链路层发现协议LLDP报文、目的交换设备的地址信息和目的交换设备的标签值,提取所述链路检测报文中携带的目的交换设备的地址信息、目的交换设备的标签值;
匹配模块,用于将提取的所述目的交换设备的地址信息、目的交换设备的标签值与控制器下发的流表进行匹配;
处理模块,用于当匹配到用于指导本设备转发所述链路检测报文的流表时,若流表中的地址信息和标签值为本设备的地址信息和标签值,根据流表的动作项将LLDP报文上送至控制器;若流表中的地址信息和标签值非本设备的地址信息和标签值,根据流表的动作项转发所述链路检测报文。
本发明实施例提供了一种用于SDN的链路检测方法及装置,控制器可以将流表预先下发给交换设备,该流表可以用于指示目的交换设备将LLDP报文返回控制器,指示源交换设备与目的交换设备之间的中间交换设备转发链路检测报文,并且,可以将链路层发现协议LLDP报文封装在链路检测报文中发送,当中间交换设备或目的交换设备接收到链路检测报文时,对该链路检测报文的处理方式与对数据报文的处理方式相同,即根据控制器下发的流表对链路检测报文进行处理,因此链路检测报文的传输状态能够正确反映出链路上真实的数据报文的传输状态,从而能够准确地检测SDN网络中交换设备之间的链路连接状态。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种用于SDN的链路检测方法的流程图;
图2为本发明实施例提供的一种用于SDN的链路检测方法的另一流程图;
图3为本发明实施例提供的一种用于SDN的链路检测装置的结构示意图;
图4为本发明实施例提供的一种用于SDN的链路检测装置的另一结构示意图;
图5(a)、图5(b)为本发明实施例的用于SDN的链路检测过程示意图。
具体实施方式
为了准确地检测SDN网络中交换设备之间的链路连接状态,本发明实施例提供了一种用于SDN的链路检测方法及装置。
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本发明。
在实际应用中,交换设备处理数据报文的方式和处理LLDP报文的方式是不一样的。数据报文是硬件转发,而LLDP报文则是上送控制器,且LLDP报文的处理优先级和数据报文往往不一致。具体地,LLDP报文是根据协议MAC表进行处理,而数据报文是根据其他的流表进行处理,协议MAC表的优先级高于其他流表的优先级。因此,在物理链路正常的情况下,可能数据报文被丢弃了,而LLDP报文是能够正常上送的。因此,现有的链路检测方式无法正确反映出链路上真实的数据报文的传输状态,进而无法准确地检测SDN网络中交换设备之间的链路连接状态。
为了准确地检测SDN网络中交换设备之间的链路连接状态,本发明实施例提供了一种用于SDN的链路检测方法过程,应用于控制器,如图1所示,该过程包括以下步骤:
S101,向源交换设备下发链路层发现协议LLDP报文、目的交换设备的地址信息和目的交换设备的标签值,以使所述源交换设备转发链路检测报文,所述链路检测报文封装了所述LLDP报文、目的交换设备的地址信息和目的交换设备的标签值。
在本发明实施例中,可以预先为每个交换设备配置对应的标签值,以标识每个交换设备。
在本发明实施例中,为了准确地检测SDN网络中交换设备之间的链路连接状态,SDN网络中的控制器可以向源交换设备下发链路层发现协议LLDP报文、目的交换设备的地址信息和目的交换设备的标签值,以使源交换设备转发链路检测报文。
具体地,在一种实现方式中,控制器可以向源交换设备下发LLDP报文、目的交换设备的地址信息和目的交换设备的标签值,源交换设备接收到LLDP报文、目的交换设备的地址信息和目的交换设备的标签值后,可以生成封装有LLDP报文、目的交换设备的地址信息和目的交换设备的标签值的链路检测报文,并转发该链路检测报文。
在另一种实现方式中,为了提高链路检测效率,控制器可以生成封装有LLDP报文、目的交换设备的地址信息和目的交换设备的标签值的链路检测报文,并下发给源交换设备。源交换设备接收到链路检测报文后,可以直接转发该链路检测报文。
在本发明实施例中,控制器向源交换设备下发链路层发现协议LLDP报文、目的交换设备的地址信息和目的交换设备的标签值时,可以采用现有的方式进行,如可以将链路层发现协议LLDP报文、目的交换设备的地址信息和目的交换设备的标签值封装在Packetout协议报文中发送给源交换设备。并且,可以在Packetout协议报文中包含出端口号,源交换设备接收到Packetout协议报文后,可以识别Packetout协议报文中包含的出端口号,并采用对应的出端口对链路检测报文进行转发。控制器将链路层发现协议LLDP报文、目的交换设备的地址信息和目的交换设备的标签值封装在Packetout协议报文中的过程,以及源交换设备转发链路检测报文的过程均属于现有技术,在本发明实施例中对这两个过程不进行赘述。
S102,接收所述目的交换设备根据所述链路检测报文和流表返回的LLDP报文,其中所述流表为所述控制器下发的,用于指示所述目的交换设备将LLDP报文返回控制器,指示源交换设备与目的交换设备之间的中间交换设备转发所述链路检测报文。
在本发明实施例中,控制器可以预先生成针对链路检测报文转发的流表,并将该流表下发给交换设备。交换设备接收到控制器下发的流表后,可以将该流表保存在本地。具体地,该流表中可以保存有匹配项和动作项,该匹配项中具体可以包括:目的交换设备的地址信息及标签值,动作项可以包括转发和/或上送控制器等。控制器生成针对链路检测报文转发的流表的过程属于现有技术,在本发明实施例中对该过程不进行赘述。
当源交换设备转发链路检测报文后,根据待检测链路中包含的交换设备的数量,该链路检测报文可以被转发给目的交换设备或源交换设备与目的交换设备之间的中间交换设备。例如,当待检测链路中包含两台交换设备时,该链路检测报文将直接被源交换设备转发给目的交换设备;当待检测链路中包含三台以上交换设备时,该链路检测报文将被源交换设备转发给中间交换设备。
当链路检测报文被源交换设备转发给中间交换设备时,中间交换设备可以根据本地保存的针对链路检测报文转发的流表,继续转发链路检测报文,该链路检测报文最终将会被转发给目的交换设备。
目的交换设备接收到链路检测报文后,也可以根据本地保存的针对链路检测报文转发的流表,向控制器返回LLDP报文。
具体地,中间交换设备或目的交换设备接收到链路检测报文时,可以根据链路检测报文中包括的目的交换设备的地址信息及标签值,查找与该链路检测报文匹配的流表;并根据该与链路检测报文匹配的流表中的动作项对链路检测报文进行相应的处理。
例如,目的交换设备获得的与链路检测报文匹配的流表中包括的动作项可以为上送控制器;中间交换设备获得的与链路检测报文匹配的流表中包括的动作项可以为转发。
具体地,在本发明实施例中,目的交换设备将LLDP报文返回给控制器时,可以将LLDP报文封装在Packetin协议报文中,并将Packetin协议报文发送给控制器。控制器接收到Packetin协议报文后,可以获得Packetin协议报文中的LLDP报文。目的交换设备将LLDP报文封装在Packetin协议报文中的过程属于现有技术,在本发明实施例中对该过程不进行赘述。
当目的交换设备向控制器返回LLDP报文后,控制器可以接收目的交换设备返回的LLDP报文,并根据该LLDP报文检测源交换设备与目的交换设备之前的链路连接状态。
具体地,在一种实现方式中,目的交换设备接收到链路检测报文后,可以解封装链路检测报文获取LLDP报文,并只将LLDP报文返回给控制器;在另一种实现方式中,目的交换设备接收到链路检测报文后,可以直接将链路检测报文返回给控制器,控制器接收到链路检测报文后,解封装链路检测报文获取LLDP报文。
S103,确定所述源交换设备和所述目的交换设备之间的链路连接状态。
当控制器接收到目的交换设备返回的LLDP报文后,可以根据该LLDP报文确定源交换设备和目的交换设备之间的链路连接状态。
本发明实施例提供了一种用于SDN的链路检测方法,控制器可以将流表预先下发给交换设备,该流表可以用于指示目的交换设备将LLDP报文返回控制器,指示源交换设备与目的交换设备之间的中间交换设备转发链路检测报文,并且,可以将链路层发现协议LLDP报文封装在链路检测报文中发送,当中间交换设备或目的交换设备接收到链路检测报文时,对该链路检测报文的处理方式与对数据报文的处理方式相同,即根据控制器下发的流表对链路检测报文进行处理,因此链路检测报文的传输状态能够正确反映出链路上真实的数据报文的传输状态,从而能够准确地检测SDN网络中交换设备之间的链路连接状态。
进一步地,在本发明实施例中,控制器下发的流表还可以用于指示中间交换设备将链路检测报文上送给控制器。这种情况下,本发明实施例提供的方法还可以包括:接收中间交换设备返回的链路检测报文,确定源交换设备和中间交换设备之间的链路连接状态。
具体地,当中间交换设备获得的与链路检测报文匹配的流表的动作项为转发和发送到控制器时,中间交换设备可以转发该链路检测报文,并将该链路检测报文发送给控制器。
例如,在一种实现方式中,中间交换设备可以根据与链路检测报文匹配的流表的Experimenter字段中是否包含Mirror字段,来判断该流表的动作项是否为转发和发送到控制器。当识别到流表的Experimenter字段中包含Mirror字段时,可以确定该流表的动作项为转发和发送到控制器。
在另一种实现方式中,控制器下发的流表中针对动作项为转发和发送到控制器,可以将Flow Action类型字段进行扩展。因此,中间交换设备可以根据与链路检测报文匹配的流表的Flow Action类型字段是否进行了扩展,来判断该流表的动作项是否为转发和发送到控制器。当识别到流表的Flow Action类型字段进行了扩展时,可以确定该流表的动作项为转发和发送到控制器。
具体地,在本发明实施例中,中间交换设备可以将链路检测报文封装在Packetin协议报文中,并将Packetin协议报文发送给控制器。控制器接收到Packetin协议报文后,可以获得Packetin协议报文中封装在链路检测报文中的LLDP报文,并根据该LLDP报文源交换设备和中间交换设备之间的链路连接状态。中间交换设备将链路检测报文封装在Packetin协议报文中的过程属于现有技术,在本发明实施例中对该过程不进行赘述。
可选地,在本发明实施例中,上述链路检测报文中还可以包括自身的类型标识信息,以用来标识其自身的类型。当交换设备接收到链路检测报文,识别到其中包括的类型标识信息时,可以得知该类型标识信息之后的信息为目的交换设备的标签值。
进一步地,在本发明实施例中,上述链路检测报文中封装的LLDP报文中可以携带有LLDP报文的序列号信息,用以标识唯一的LLDP报文。
可以理解,控制器可以同时发送多个LLDP报文,通过在LLDP报文中添加序列号信息,当控制器接收到目的交换设备或中间交换设备返回的LLDP报文时,可以根据其发送和接收的包括相同序列号信息的LLDP报文,来确定源交换设备与目的交换设备或中间交换设备之间的链路连接状态。
进一步地,请参考图2,其示出了本发明实施例提供的一种用于软件定义网络SDN的链路检测方法过程,应用于第一交换设备,如图2所示,该过程包括以下步骤:
S201,针对当前待发送的链路检测报文,所述链路检测报文中封装有链路层发现协议LLDP报文、目的交换设备的地址信息和目的交换设备的标签值,提取所述链路检测报文中携带的目的交换设备的地址信息、目的交换设备的标签值。
在本发明实施例中,第一交换设备可以针对当前待发送的封装有链路层发现协议LLDP报文、目的交换设备的地址信息和目的交换设备的标签值的链路检测报文,提取该链路检测报文中携带的目的交换设备的地址信息、目的交换设备的标签值。
具体地,第一交换设备可以根据链路检测报文的封装格式,在链路检测报文相应的位置处提取目的交换设备的地址信息、目的交换设备的标签值。例如,目的交换设备的地址信息可以包括在链路检测报文的报文头中。并且,在本发明实施例中,链路检测报文中还可以包括自身的类型标识信息,以用来标识其自身的类型。当第一交换设备接收到链路检测报文,识别到其中包括的类型标识信息时,可以得知该类型标识信息之后的信息为目的交换设备的标签值。
S202,将提取的所述目的交换设备的地址信息、目的交换设备的标签值与控制器下发的流表进行匹配。
在本发明实施例中,控制器可以预先生成针对链路检测报文转发的流表,并将该流表下发给交换设备。交换设备接收到控制器下发的流表后,可以将该流表保存在本地。具体地,该流表中可以保存有匹配项和动作项,该匹配项中具体包括:目的交换设备的地址信息及标签值,动作项可以包括转发和/或上送控制器等。
在本发明实施例中,当第一交换设备提取到链路检测报文中包括的目的交换设备的地址信息和目的交换设备的标签值时,可以将提取的目的交换设备的地址信息、目的交换设备的标签值与控制器下发的流表进行匹配。
S203,当匹配到用于指导本设备转发所述链路检测报文的流表时,若流表中的地址信息和标签值为本设备的地址信息和标签值,根据流表的动作项将LLDP报文上送至控制器;若流表中的地址信息和标签值非本设备的地址信息和标签值,根据流表的动作项转发所述链路检测报文。
当第一交换设备匹配到用于指导本设备转发该链路检测报文的流表时,可以进一步判断该流表中的地址信息和标签值是否为本设备的地址信息和标签值。其中,第一交换设备本设备的标签值可以是控制器下发的,或者也可以是预先配置并保存在本地的。
当第一交换设备判断得到流表中的地址信息和标签值为本设备的地址信息和标签值时,可以表明第一交换设备为目的交换设备。这种情况下,第一交换设备可以根据匹配到的流表的动作项将LLDP报文上送至控制器,以使控制器检测源交换设备与目的交换设备之间的链路连接状态。
当第一交换设备判断得到流表中的地址信息和标签值非本设备的地址信息和标签值时,可以表明第一交换设备不是目的交换设备,也就是说,第一交换设备为源交换设备或中间交换设备。这种情况下,第一交换设备可以根据流表的动作项转发该链路检测报文,以将链路检测报文转发给第一交换设备下游的交换设备。
需要说明的是,本发明实施例中,第一交换设备为SDN网络中的任一交换设备。也就是说,第一交换设备可以为源交换设备、中间交换设备或目的交换设备。当第一交换设备为源交换设备时,其可以将链路检测报文转发给中间交换设备;当第一交换设备为中间交换设备时,其可以将链路检测报文转发给另一中间交换设备或目的交换设备;当第一交换设备为目的交换设备时,其可以将链路检测报文上送给控制器。因此,通过本发明实施例提供的方法,目的交换设备最终都可以将链路检测报文上送给控制器,以使控制器检测源交换设备与目的交换设备之间的链路连接状态。
本发明实施例提供了一种用于SDN的链路检测方法,控制器可以将流表预先下发给交换设备,该流表可以用于指示目的交换设备将LLDP报文返回控制器,指示源交换设备与目的交换设备之间的中间交换设备转发链路检测报文,并且,可以将链路层发现协议LLDP报文封装在链路检测报文中发送,当中间交换设备或目的交换设备接收到链路检测报文时,对该链路检测报文的处理方式与对数据报文的处理方式相同,即根据控制器下发的流表对链路检测报文进行处理,因此链路检测报文的传输状态能够正确反映出链路上真实的数据报文的传输状态,从而能够准确地检测SDN网络中交换设备之间的链路连接状态。
进一步地,在本发明实施例中,控制器下发的流表还可以用于指示中间交换设备将链路检测报文上送给控制器。这种情况下,本发明实施例提供的方法中,当第一交换设备判断得到流表中的地址信息和标签值非本设备的地址信息和标签值时,其除了根据流表的动作项转发链路检测报文之外,还可以进一步地根据流表的动作项将链路检测报文上送至控制器,以使控制器确定源交换设备和第一交换设备之间的链路连接状态。
进一步地,在本发明实施例中,当第一交换设备为源交换设备时,当前待发送的链路检测报文可以为源交换设备根据接收到的控制器下发的LLDP报文、目的交换设备的地址信息和目的交换设备的标签值生成的。
相应于上面的方法实施例,本发明实施例还提供了相应的装置实施例。
图3为本发明实施例提供的一种用于软件定义网络SDN的链路检测装置,应用于控制器,所述装置包括:
发送模块310,用于向源交换设备下发链路层发现协议LLDP报文、目的交换设备的地址信息和目的交换设备的标签值,以使所述源交换设备转发链路检测报文,所述链路检测报文封装了所述LLDP报文、目的交换设备的地址信息和目的交换设备的标签值;
第一接收模块320,用于接收所述目的交换设备根据所述链路检测报文和流表返回的LLDP报文,其中所述流表为所述控制器下发的,用于指示所述目的交换设备将LLDP报文返回控制器,指示源交换设备与目的交换设备之间的中间交换设备转发所述链路检测报文;
确定模块330,用于确定所述源交换设备和所述目的交换设备之间的链路连接状态。
本发明实施例提供了一种用于SDN的链路检测装置,控制器可以将流表预先下发给交换设备,该流表可以用于指示目的交换设备将LLDP报文返回控制器,指示源交换设备与目的交换设备之间的中间交换设备转发链路检测报文,并且,可以将链路层发现协议LLDP报文封装在链路检测报文中发送,当中间交换设备或目的交换设备接收到链路检测报文时,对该链路检测报文的处理方式与对数据报文的处理方式相同,即根据控制器下发的流表对链路检测报文进行处理,因此链路检测报文的传输状态能够正确反映出链路上真实的数据报文的传输状态,从而能够准确地检测SDN网络中交换设备之间的链路连接状态。
进一步地,所述发送模块310,具体用于:
向源交换设备下发LLDP报文、目的交换设备的地址信息和目的交换设备的标签值,以使所述源交换设备生成所述链路检测报文;或,
向源交换设备下发所述链路检测报文。
进一步地,所述流表还用于指示所述中间交换设备将所述链路检测报文上送给控制器;所述装置还包括:
第二接收模块(图中未示出),用于接收中间交换设备返回的所述链路检测报文,确定所述源交换设备和所述中间交换设备之间的链路连接状态。
进一步地,所述第一接收模块320,具体用于:
接收所述目的交换设备返回的LLDP报文;或,
接收所述目的交换设备返回的链路检测报文,解封装链路检测报文后获取LLDP报文。
图4为本发明实施例提供的一种用于软件定义网络SDN的链路检测装置,应用于第一交换设备,所述装置包括:
提取模块410,用于针对当前待发送的链路检测报文,所述链路检测报文中封装有链路层发现协议LLDP报文、目的交换设备的地址信息和目的交换设备的标签值,提取所述链路检测报文中携带的目的交换设备的地址信息、目的交换设备的标签值;
匹配模块420,用于将提取的所述目的交换设备的地址信息、目的交换设备的标签值与控制器下发的流表进行匹配;
处理模块430,用于当匹配到用于指导本设备转发所述链路检测报文的流表时,若流表中的地址信息和标签值为本设备的地址信息和标签值,根据流表的动作项将LLDP报文上送至控制器;若流表中的地址信息和标签值非本设备的地址信息和标签值,根据流表的动作项转发所述链路检测报文。
本发明实施例提供了一种用于SDN的链路检测装置,控制器可以将流表预先下发给交换设备,该流表可以用于指示目的交换设备将LLDP报文返回控制器,指示源交换设备与目的交换设备之间的中间交换设备转发链路检测报文,并且,可以将链路层发现协议LLDP报文封装在链路检测报文中发送,当中间交换设备或目的交换设备接收到链路检测报文时,对该链路检测报文的处理方式与对数据报文的处理方式相同,即根据控制器下发的流表对链路检测报文进行处理,因此链路检测报文的传输状态能够正确反映出链路上真实的数据报文的传输状态,从而能够准确地检测SDN网络中交换设备之间的链路连接状态。
进一步地,所述本设备的标签值是所述控制器下发的,或是预先配置并保存在本地的。
进一步地,若流表中的地址信息和标签值非本设备的地址信息和标签值时;
所述处理模块430,还用于:
根据流表的动作项将所述链路检测报文上送至控制器。
进一步地,当所述第一交换设备为源交换设备时,所述装置还包括:
生成模块(图中未示出),用于根据接收到的所述控制器下发的LLDP报文、目的交换设备的地址信息和目的交换设备的标签值生成所述当前待发送的链路检测报文。
下面结合一个具体的实施例对本发明提供的用于软件定义网络SDN的链路检测方法进行详细的说明。
如图5(a)所示,本实施例中的SDN网络可以包括控制器,以及多个交换设备:交换设备1、交换设备2、交换设备3以及交换设备4;在本实施例中,以控制器检测交换设备1到交换设备3之间的链路的连接状态为例进行说明本发明实施例的链路检测的过程。其中,该链路中交换设备1为源交换设备,交换设备3为目的交换设备,交换设备2为中间交换设备。
控制器首先向交换设备1发送封装了LLDP报文、目的交换设备(即交换设备3)的MAC地址以及标签值的链路检测报文,并记录发送时间,该链路检测报文封装在Packetout协议报文中,该Packetout中包含有出端口号。
交换设备1接收到Packetout报文,解析出链路检测报文,并从指定出端口发送该链路检测报文,即可以将该链路检测报文发送给交换设备2。
交换设备2接收到链路检测报文后,提取该链路检测报文中封装的目的交换设备的MAC地址和标签值,并根据目的交换设备的MAC地址和标签值,与自身保存的流表进行匹配,获得与该链路检测报文匹配的流表,并根据该流表中包含的转发动作项,将链路检测报文直接转发到交换设备3。
交换设备3接收到链路检测报文后,提取该链路检测报文中封装的目的交换设备的MAC地址和标签值,并根据目的交换设备的MAC地址和标签值,与自身保存的流表进行匹配,获得与该链路检测报文匹配的流表,并根据该流表中包含的发送到控制器的动作项,获得链路检测报文中封装的LLDP报文,将该LLDP报文封装在Packetin协议报文中发送给控制器。
控制器接收到Packetin协议报文,解析出LLDP报文,并记录接收时间,此时可以判定链路检测报文在交换设备1到交换设备3之间的链路可达,并得到这个链路检测报文在交换设备1和交换设备3之间链路的整体延迟。
在实际应用中,控制器可以通过定时发送一系列交换设备1到交换设备3的链路检测报文,统计一段时间内的链路延迟和丢包数量,就可以对交换设备1到交换设备3之间的链路进行合理的评估。
另外,如图5(b)所示,在本实施例中,以控制器检测交换设备1到交换设备4之间的链路的连接状态为例进行说明本发明实施例的链路检测的过程,并且,在本实施例中,控制器需要跟踪从交换设备1到交换设备4路径上各交换设备之间的链路延迟。其中,该链路中交换设备1为源交换设备,交换设备4为目的交换设备,交换设备2为中间交换设备。
控制器首先向交换设备1发送封装了LLDP报文、目的交换设备(即交换设备4)的MAC地址以及标签值的链路检测报文,并记录发送时间,该链路检测报文封装在Packetout协议报文中,该Packetout中包含有出端口号。
交换设备1接收到Packetout报文,解析出链路检测报文,并从指定出端口发送该链路检测报文,即可以将该链路检测报文发送给交换设备2。
交换设备2接收到链路检测报文后,提取该链路检测报文中封装的目的交换设备的MAC地址和标签值,并根据目的交换设备的MAC地址和标签值,与自身保存的流表进行匹配,获得与该链路检测报文匹配的流表,并根据该流表中包含的转发和发送到控制器的动作项,将链路检测报文转发到交换设备4,并将链路检测报文封装在Packetin协议报文中发送给控制器。
控制器接收到交换设备2发送的Packetin协议报文,解析出链路检测报文,并记录时间,得到交换设备1到交换设备4路径上的中间交换设备(交换设备2)的接收时间,得到交换设备1到交换设备2之间的链路延迟。
交换设备4接收到链路检测报文后,提取该链路检测报文中封装的目的交换设备的MAC地址和标签值,并根据目的交换设备的MAC地址和标签值,与自身保存的流表进行匹配,获得与该链路检测报文匹配的流表,并根据该流表中包含的发送到控制器的动作项,获得链路检测报文中封装的LLDP报文,将该LLDP报文封装在Packetin协议报文中发送给控制器。
控制器接收到Packetin协议报文,解析出LLDP报文,并记录接收时间,此时可以判定链路检测报文在交换设备1到交换设备4之间的链路可达,并得到链路检测报文在交换设备1和交换设备4之间链路的整体延迟。
并且,控制器还可以根据接收到交换设备2向其发送的Packetin协议报文的时间,以及接收到交换设备4向其发送的Packetin协议报文的时间,得到链路检测报文在交换设备2和交换设备4之间的链路延迟。
在实际应用中,控制器可以通过定时发送一系列交换设备1到交换设备4的链路检测报文,统计一段时间内的链路延迟和丢包数量,就可以对交换设备1到交换设备4之间的链路进行合理的评估。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

Claims (16)

1.一种用于软件定义网络SDN的链路检测方法,其特征在于,应用于控制器,所述方法包括:
向源交换设备下发链路层发现协议LLDP报文、目的交换设备的地址信息和目的交换设备的标签值,以使所述源交换设备转发链路检测报文,所述链路检测报文封装了所述LLDP报文、目的交换设备的地址信息和目的交换设备的标签值;
接收所述目的交换设备根据所述链路检测报文和流表返回的LLDP报文,其中所述流表为所述控制器下发的,用于指示所述目的交换设备将LLDP报文返回控制器,指示源交换设备与目的交换设备之间的中间交换设备转发所述链路检测报文;
确定所述源交换设备和所述目的交换设备之间的链路连接状态。
2.根据权利要求1所述的方法,其特征在于,所述向源交换设备下发链路层发现协议LLDP报文、目的交换设备的地址信息和目的交换设备的标签值,包括:
向源交换设备下发LLDP报文、目的交换设备的地址信息和目的交换设备的标签值,以使所述源交换设备生成所述链路检测报文;或,
向源交换设备下发所述链路检测报文。
3.根据权利要求1所述的方法,其特征在于,所述流表还用于指示所述中间交换设备将所述链路检测报文上送给控制器;所述方法还包括:
接收中间交换设备返回的所述链路检测报文,确定所述源交换设备和所述中间交换设备之间的链路连接状态。
4.根据权利要求1所述的方法,其特征在于,所述接收所述目的交换设备根据所述链路检测报文和流表返回的LLDP报文包括:
接收所述目的交换设备返回的LLDP报文;或,
接收所述目的交换设备返回的链路检测报文,解封装链路检测报文后获取LLDP报文。
5.一种用于软件定义网络SDN的链路检测方法,应用于第一交换设备,其特征在于,所述方法包括:
针对当前待发送的链路检测报文,所述链路检测报文中封装有链路层发现协议LLDP报文、目的交换设备的地址信息和目的交换设备的标签值,提取所述链路检测报文中携带的目的交换设备的地址信息、目的交换设备的标签值;
将提取的所述目的交换设备的地址信息、目的交换设备的标签值与控制器下发的流表进行匹配;
当匹配到用于指导本设备转发所述链路检测报文的流表时,若流表中的地址信息和标签值为本设备的地址信息和标签值,根据流表的动作项将LLDP报文上送至控制器;若流表中的地址信息和标签值非本设备的地址信息和标签值,根据流表的动作项转发所述链路检测报文。
6.根据权利要求5所述的方法,其特征在于,所述本设备的标签值是所述控制器下发的,或是预先配置并保存在本地的。
7.根据权利要求5或6所述的方法,其特征在于,所述流表还用于指示在源交换设备与目的交换设备之间的中间交换设备将链路检测报文上送给控制器;
所述若流表中的地址信息和标签值非本设备的地址信息和标签值时,根据流表的动作项转发所述链路检测报文,进一步包括:
根据流表的动作项将所述链路检测报文上送至控制器。
8.根据权利要求5所述的方法,其特征在于,当所述第一交换设备为源交换设备时,所述当前待发送的链路检测报文为所述源交换设备根据接收到的所述控制器下发的LLDP报文、目的交换设备的地址信息和目的交换设备的标签值生成的。
9.一种用于软件定义网络SDN的链路检测装置,其特征在于,应用于控制器,所述装置包括:
发送模块,用于向源交换设备下发链路层发现协议LLDP报文、目的交换设备的地址信息和目的交换设备的标签值,以使所述源交换设备转发链路检测报文,所述链路检测报文封装了所述LLDP报文、目的交换设备的地址信息和目的交换设备的标签值;
第一接收模块,用于接收所述目的交换设备根据所述链路检测报文和流表返回的LLDP报文,其中所述流表为所述控制器下发的,用于指示所述目的交换设备将LLDP报文返回控制器,指示源交换设备与目的交换设备之间的中间交换设备转发所述链路检测报文;
确定模块,用于确定所述源交换设备和所述目的交换设备之间的链路连接状态。
10.根据权利要求9所述的装置,其特征在于,所述发送模块,具体用于:
向源交换设备下发LLDP报文、目的交换设备的地址信息和目的交换设备的标签值,以使所述源交换设备生成所述链路检测报文;或,
向源交换设备下发所述链路检测报文。
11.根据权利要求9所述的装置,其特征在于,所述流表还用于指示所述中间交换设备将所述链路检测报文上送给控制器;所述装置还包括:
第二接收模块,用于接收中间交换设备返回的所述链路检测报文,确定所述源交换设备和所述中间交换设备之间的链路连接状态。
12.根据权利要求9所述的装置,其特征在于,所述第一接收模块,具体用于:
接收所述目的交换设备返回的LLDP报文;或,
接收所述目的交换设备返回的链路检测报文,解封装链路检测报文后获取LLDP报文。
13.一种用于软件定义网络SDN的链路检测装置,应用于第一交换设备,其特征在于,所述装置包括:
提取模块,用于针对当前待发送的链路检测报文,所述链路检测报文中封装有链路层发现协议LLDP报文、目的交换设备的地址信息和目的交换设备的标签值,提取所述链路检测报文中携带的目的交换设备的地址信息、目的交换设备的标签值;
匹配模块,用于将提取的所述目的交换设备的地址信息、目的交换设备的标签值与控制器下发的流表进行匹配;
处理模块,用于当匹配到用于指导本设备转发所述链路检测报文的流表时,若流表中的地址信息和标签值为本设备的地址信息和标签值,根据流表的动作项将LLDP报文上送至控制器;若流表中的地址信息和标签值非本设备的地址信息和标签值,根据流表的动作项转发所述链路检测报文。
14.根据权利要求13所述的装置,其特征在于,所述本设备的标签值是所述控制器下发的,或是预先配置并保存在本地的。
15.根据权利要求13或14所述的装置,其特征在于,若流表中的地址信息和标签值非本设备的地址信息和标签值时;
所述处理模块,还用于:
根据流表的动作项将所述链路检测报文上送至控制器。
16.根据权利要求13所述的装置,其特征在于,当所述第一交换设备为源交换设备时,所述装置还包括:
生成模块,用于根据接收到的所述控制器下发的LLDP报文、目的交换设备的地址信息和目的交换设备的标签值生成所述当前待发送的链路检测报文。
CN201610150277.1A 2016-03-16 2016-03-16 一种用于sdn的链路检测方法及装置 Active CN106789387B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610150277.1A CN106789387B (zh) 2016-03-16 2016-03-16 一种用于sdn的链路检测方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610150277.1A CN106789387B (zh) 2016-03-16 2016-03-16 一种用于sdn的链路检测方法及装置

Publications (2)

Publication Number Publication Date
CN106789387A true CN106789387A (zh) 2017-05-31
CN106789387B CN106789387B (zh) 2020-10-13

Family

ID=58972021

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610150277.1A Active CN106789387B (zh) 2016-03-16 2016-03-16 一种用于sdn的链路检测方法及装置

Country Status (1)

Country Link
CN (1) CN106789387B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107231309A (zh) * 2017-07-24 2017-10-03 迈普通信技术股份有限公司 获取sdn全网视图的方法、控制器及目的交换节点
CN108540343A (zh) * 2018-03-27 2018-09-14 新华三技术有限公司 路径的检测方法及装置
CN109150646A (zh) * 2017-06-28 2019-01-04 华为技术有限公司 链路状态检测系统、方法和装置
CN110995694A (zh) * 2019-11-28 2020-04-10 新华三半导体技术有限公司 网络报文检测方法、装置、网络安全设备及存储介质
CN112910682A (zh) * 2021-01-04 2021-06-04 中国联合网络通信集团有限公司 链路检测方法和交换机控制器

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103001887A (zh) * 2012-11-22 2013-03-27 中兴通讯股份有限公司 一种链路保活方法、控制器及交换机
WO2013140803A1 (en) * 2012-03-23 2013-09-26 Nec Corporation System and method for communication
CN103401786A (zh) * 2013-07-12 2013-11-20 华为技术有限公司 网络拓扑建立、路径控制、报文传输方法及装置、系统
CN103986651A (zh) * 2014-05-30 2014-08-13 杭州华三通信技术有限公司 一种软件定义网络控制器及其控制方法
CN104735001A (zh) * 2013-12-24 2015-06-24 中兴通讯股份有限公司 软件定义网络中的链路发现方法、装置及系统
CN104780095A (zh) * 2015-04-30 2015-07-15 杭州华三通信技术有限公司 一种sdn网络中的路径探测方法和装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013140803A1 (en) * 2012-03-23 2013-09-26 Nec Corporation System and method for communication
CN103001887A (zh) * 2012-11-22 2013-03-27 中兴通讯股份有限公司 一种链路保活方法、控制器及交换机
CN103401786A (zh) * 2013-07-12 2013-11-20 华为技术有限公司 网络拓扑建立、路径控制、报文传输方法及装置、系统
CN104735001A (zh) * 2013-12-24 2015-06-24 中兴通讯股份有限公司 软件定义网络中的链路发现方法、装置及系统
CN103986651A (zh) * 2014-05-30 2014-08-13 杭州华三通信技术有限公司 一种软件定义网络控制器及其控制方法
CN104780095A (zh) * 2015-04-30 2015-07-15 杭州华三通信技术有限公司 一种sdn网络中的路径探测方法和装置

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109150646A (zh) * 2017-06-28 2019-01-04 华为技术有限公司 链路状态检测系统、方法和装置
CN107231309A (zh) * 2017-07-24 2017-10-03 迈普通信技术股份有限公司 获取sdn全网视图的方法、控制器及目的交换节点
CN108540343A (zh) * 2018-03-27 2018-09-14 新华三技术有限公司 路径的检测方法及装置
CN110995694A (zh) * 2019-11-28 2020-04-10 新华三半导体技术有限公司 网络报文检测方法、装置、网络安全设备及存储介质
CN110995694B (zh) * 2019-11-28 2021-10-12 新华三半导体技术有限公司 网络报文检测方法、装置、网络安全设备及存储介质
CN112910682A (zh) * 2021-01-04 2021-06-04 中国联合网络通信集团有限公司 链路检测方法和交换机控制器

Also Published As

Publication number Publication date
CN106789387B (zh) 2020-10-13

Similar Documents

Publication Publication Date Title
CN106789387A (zh) 一种用于sdn的链路检测方法及装置
CN105474602B (zh) 软件定义网络中识别攻击流的方法、装置以及设备
CN101433029B (zh) 用于使用第二层源地址的选择性的第二层端口阻塞的方法、系统
CN104852867B (zh) 数据包转发方法、装置及系统
CN103581021B (zh) 软件定义网络下业务检测的方法及设备
CN102035694A (zh) 链路检测装置及方法
CN105490884B (zh) 一种vxlan隧道检测方法及装置
CN104579718B (zh) 一种优化arp老化机制的装置和方法
CN106936661A (zh) 一种网络监测方法、装置及系统
CN103023779B (zh) 一种数据报文处理方法及装置
CN101924659A (zh) 网络设备及其物理端口链路的检测方法
CN104869028A (zh) 网络装置与回路检测方法
CN103368849A (zh) Oam报文的处理方法和装置
CN106301997A (zh) 网关设备响应网络连通性方法和装置
CN106658756A (zh) 一种终端设备与热点连接的识别方法及装置
CN105991795A (zh) Arp表项更新方法以及装置
CN103457782B (zh) 一种基于vlan的环回检测方法及网络设备
CN109040124A (zh) 用于交换机的处理报文的方法和装置
CN107317691A (zh) 一种故障定位方法及设备
CN107749826A (zh) 一种数据包转发方法及系统
CN102857421A (zh) 一种vll故障检测方法及设备
CN106559283A (zh) 一种网络监测方法、装置及系统
CN107465621A (zh) 一种路由器发现方法、sdn控制器、路由器和网络系统
CN106850268A (zh) 一种线性保护倒换的实现装置及方法
CN102571464B (zh) 链路的跟踪处理方法及系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant