CN108282380A - 一种合法性检测方法和装置 - Google Patents
一种合法性检测方法和装置 Download PDFInfo
- Publication number
- CN108282380A CN108282380A CN201710457993.9A CN201710457993A CN108282380A CN 108282380 A CN108282380 A CN 108282380A CN 201710457993 A CN201710457993 A CN 201710457993A CN 108282380 A CN108282380 A CN 108282380A
- Authority
- CN
- China
- Prior art keywords
- detection
- controller
- type
- flow table
- network equipment
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/30—Network architectures or network communication protocols for network security for supporting lawful interception, monitoring or retaining of communications or communication related information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Environmental & Geological Engineering (AREA)
- Technology Law (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请提供一种合法性检测方法和装置,该方法包括:接收控制器发送的请求消息,所述请求消息携带所述控制器支持的检测能力集合;若所述检测能力集合包括至少一个检测类型,则从所述检测能力集合中选取检测类型;向所述控制器发送针对所述请求消息的响应消息,所述响应消息携带选取的检测类型,以使所述控制器根据选取的检测类型对所述网络设备的流表项进行合法性检测。通过本申请的技术方案,当控制器向网络设备下发大量流表项时,网络设备不用对这些流表项进行合法性检测,节省网络设备的CPU资源,提高网络设备的处理性能,提升流表项的下发效率,提升用户体验。
Description
技术领域
本申请涉及通信技术领域,尤其涉及一种合法性检测方法和装置。
背景技术
SDN(Software Defined Network,软件定义网络)是一种新型网络创新架构,其核心思想是将网络设备(如交换机、路由器等)的控制层面与数据平面分离,以实现对网络流量的灵活控制,并为核心网络以及应用的创新提供良好的平台。
其中,控制器和网络设备通过管理通道进行通信,控制器可以根据用户的配置或者动态运行的协议,生成用于指导网络设备进行报文处理的流表项,并将流表项下发到网络设备,而网络设备依据控制器下发的流表项进行报文处理。
在传统方式中,网络设备在接收到控制器下发的流表项后,先对该流表项进行合法性检测,若检测成功,则将该流表项添加到本地的流表中,若检测失败,则拒绝将该流表项添加到本地的流表中。网络设备在接收到报文后,从流表中查询出与该报文匹配的流表项,并通过该流表项对该报文进行处理。
当控制器向网络设备下发大量流表项时,网络设备对这些流表项的合法性检测,会占用网络设备的大量CPU资源,继而影响网络设备的处理性能。
发明内容
本申请提供一种合法性检测方法,应用于网络设备,所述方法包括:
接收控制器发送的请求消息,所述请求消息携带所述控制器支持的检测能力集合;若所述检测能力集合包括至少一个检测类型,则从所述检测能力集合中选取检测类型;向所述控制器发送针对所述请求消息的响应消息,所述响应消息携带选取的检测类型,以使所述控制器根据选取的检测类型对所述网络设备的流表项进行合法性检测。
本申请提供一种合法性检测装置,应用于网络设备,所述装置包括:
接收模块,用于接收控制器发送的请求消息,所述请求消息携带所述控制器支持的检测能力集合;选取模块,用于当所述检测能力集合包括至少一个检测类型时,则从所述检测能力集合中选取检测类型;发送模块,用于向控制器发送针对所述请求消息的响应消息,所述响应消息携带选取的检测类型,以使所述控制器根据选取的检测类型对所述网络设备的流表项进行合法性检测。
基于上述技术方案,本申请实施例中,在控制器向网络设备发送流表项之前,控制器可以对流表项进行合法性检测,这样,当控制器向网络设备下发大量流表项时,网络设备不用对这些流表项进行合法性检测,节省网络设备的CPU资源,提高网络设备的处理性能,提升流表项的下发效率,提升用户体验。
附图说明
为了更加清楚地说明本申请实施例或者现有技术中的技术方案,下面将对本申请实施例或者现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中所记载的一些实施例,对于本领域普通技术人员来讲,还可以根据本申请实施例的这些附图获得其他的附图。
图1是本申请一种实施方式中的合法性检测方法的流程图;
图2是本申请另一种实施方式中的合法性检测装置的结构图;
图3是本申请一种实施方式中的网络设备的硬件结构图。
具体实施方式
在本申请使用的术语仅仅是出于描述特定实施例的目的,而非限制本申请。本申请和权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其它含义。还应当理解,本文中使用的术语“和/或”是指包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,此外,所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
本申请实施例中提出一种合法性检测方法,该方法可以应用于包括控制器和网络设备的系统。其中,控制器和网络设备可以部署在同一个设备(例如BRAS(BroadbandRemote Access Server,宽带远程接入服务器)设备),如控制器是BRAS设备的控制平面的处理单元,网络设备是BRAS设备的数据平面的处理单元。控制器和网络设备也可以部署在不同设备,如控制器是实现控制平面的独立设备,网络设备是实现数据平面的独立设备,如交换机、路由器等。
在一个例子中,控制器可以生成流表项,并将流表项下发到网络设备。网络设备在收到流表项后,对流表项进行合法性检测,若检测成功,将流表项添加到流表中,若检测失败,拒绝将流表项添加到流表中。网络设备在接收到报文后,从流表中查询出与报文匹配的流表项,并通过该流表项对报文进行处理。
由于网络设备对流表项进行合法性检测的过程,会占用网络设备的CPU资源,影响网络设备的处理性能。因此,本申请实施例中,在控制器向网络设备发送流表项之前,可以对流表项进行合法性检测,这样,网络设备不用对流表项进行合法性检测或者只进行部分合法性检测,从而提高网络设备的处理性能。
参见图1所示,为合法性检测方法的流程图,该方法可以包括以下步骤:
步骤101,网络设备接收控制器发送的请求消息,该请求消息携带控制器支持的检测能力集合,该检测能力集合可以包括至少一个检测类型。
步骤101之前,控制器向网络设备发送请求消息,该请求消息携带控制器支持的检测能力集合,该检测能力集合中的检测类型可以包括但不限于以下之一或者任意组合:能力集检测、参数有效性检测、先决性检测、重复性检测。
在一个例子中,在控制器向网络设备发送请求消息之前,则控制器还可以获取到本控制器支持的所有检测类型。然后,该控制器可以将所有检测类型均添加到上述检测能力集合;或者,该控制器还可以从所有检测类型中选取部分检测类型,并将选取的部分检测类型添加到上述检测能力集合。
针对“获取本控制器支持的所有检测类型”的过程,可以在控制器下发配置信息,该配置信息表示控制器支持的所有检测类型,因此,控制器可以根据该配置信息获取到本控制器支持的所有检测类型。例如,若配置信息包括能力集检测、参数有效性检测、先决性检测、重复性检测,则控制器支持的所有检测类型就是能力集检测、参数有效性检测、先决性检测、重复性检测。
在实际应用中,控制器支持的所有检测类型可以是网络设备支持的所有检测类型的子集。例如,当网络设备支持的所有检测类型包括能力集检测、参数有效性检测、先决性检测时,则配置信息可以包括能力集检测、参数有效性检测、先决性检测,也可以包括能力集检测、参数有效性检测,以此类推。
针对“控制器从所有检测类型中选取部分检测类型”的过程,控制器可以随机从所有检测类型中选取部分检测类型,也可以采用预设策略从所有检测类型中选取部分检测类型。例如,预设策略的一个示例可以是:若控制器本地存储有网络设备的流表,则可以选取重复性检测这个检测类型;若控制器本地没有存储网络设备的流表,则不可以选取重复性检测这个检测类型。
当然,该预设策略并不局限于此,对此预设策略不做限制。
步骤102,网络设备从该检测能力集合中选取检测类型。
在一个例子中,针对“网络设备从该检测能力集合中选取检测类型”的过程,可以包括但不限于:从该检测能力集合中选取所有检测类型;或者,从该检测能力集合中选取部分检测类型;或者,针对该检测能力集合中的每个检测类型,若网络设备配置有该检测类型的信任标记,则选取该检测类型。
例如,若检测能力集合包括能力集检测、参数有效性检测、先决性检测、重复性检测,则可以选取能力集检测、参数有效性检测、先决性检测、重复性检测。或者,可以随机选取能力集检测、参数有效性检测。或者,若本地配置能力集检测的信任标记,则选取能力集检测;若本地配置参数有效性检测的信任标记,则选取参数有效性检测;若本地配置先决性检测的信任标记,则选取先决性检测;若本地没有配置重复性检测的信任标记,则不选取重复性检测;综上所述,选取的检测类型包括能力集检测、参数有效性检测、先决性检测。
其中,可以在网络设备下发配置信息,该配置信息包括检测类型与信任标记(如标记S)的对应关系,如能力集检测与信任标记的对应关系、参数有效性检测与信任标记的对应关系、先决性检测与信任标记的对应关系。针对具有信任标记的检测类型,表示允许控制器执行与该检测类型对应的合法性检测;针对不具有信任标记的检测类型,表示不允许控制器执行与该检测类型对应的合法性检测,而是需要由网络设备自身来执行与该检测类型对应的合法性检测。
步骤103,网络设备向控制器发送针对该请求消息的响应消息,且该响应消息携带选取的检测类型,以使控制器根据选取的检测类型(即响应消息携带的检测类型)对该网络设备的流表项进行合法性检测。
在一个例子中,控制器在向网络设备发送请求消息时,该请求消息携带的检测能力集合还可以未携带检测类型,这样,网络设备在接收到控制器发送的请求消息后,若检测能力集合未携带检测类型,则确定由本网络设备根据自身支持的所有检测类型,对接收到的流表项进行合法性检测,并向控制器发送针对该请求消息的ACK(Acknowledgement,确认字符)消息,这个ACK消息表示本网络设备已经知道控制器不会对流表项进行合法性检测,而是需要由本网络设备根据自身支持的所有检测类型,对接收到的流表项进行合法性检测。
其中,“检测能力集合未携带检测类型”的原因是:控制器在获取本控制器支持的所有检测类型时,发现本控制器支持的所有检测类型为空,因此,检测能力集合未携带检测类型。或者,虽然所有检测类型不为空,但是,控制器在从所有检测类型中选取部分检测类型时,根据实际需要,控制器选取的部分检测类型可以为空,因此,检测能力集合未携带检测类型。例如,当控制器的CPU使用率和/或内存使用率大于预设阈值时,选取的部分检测类型可以为空。
在一个例子中,网络设备还可以与控制器建立OpenFlow连接,对OpenFlow连接的建立方式不做限制。而且,该OpenFlow连接可以是基于TCP(Transmission ControlProtocol,传输控制协议)的连接,也可以是基于UDP(User Datagram Protocol,用户数据报协议)的连接,还可以是基于SSL(Secure Sockets Layer,安全套接层)的连接,对此OpenFlow连接的类型不做限制。
在此基础上,上述请求消息可以是控制器通过该OpenFlow连接发送给网络设备的,且上述响应消息是网络设备通过该OpenFlow连接发送给控制器的。
在一个例子中,针对“控制器向网络设备发送请求消息”的发送时机,可以包括但不限于:在控制器与网络设备建立OpenFlow连接后,控制器可以通过该OpenFlow连接向网络设备发送该请求消息;或者,在生成网络设备对应的第一个流表项后,控制器可以通过OpenFlow连接向网络设备发送请求消息。当然,该请求消息的发送时机并不局限于上述两种方式,对此发送时机不做限制。
在一个例子中,该请求消息可以包括厂商标识字段、消息类型字段和信任字段,该信任字段用于携带检测能力集合。此外,该响应消息可以包括厂商标识字段、消息类型字段和信任字段,该信任字段用于携带上述选取的检测类型。
其中,网络设备在接收到该请求消息后,若该请求消息的厂商标识字段携带的厂商标识与本网络设备的厂商标识相同,则可以正确处理该请求消息,即可以采用本申请实施例的方案进行处理。同理,控制器在接收到该响应消息后,若该响应消息的厂商标识字段携带的厂商标识与本控制器的厂商标识相同,则可以正确处理该响应消息,即可以采用本申请实施例的方案进行处理。
其中,该请求消息中携带的消息类型字段可以为第一标识,该第一标识表示当前消息是用于进行能力协商的请求消息,对此第一标识的取值不做限制。此外,该响应消息中携带的消息类型字段可以为第二标识,该第二标识表示当前消息是用于进行能力协商的响应消息,对此第二标识的取值不做限制。
其中,信任字段用于携带检测类型的信息,以下对信任字段的实现方式进行说明:方式一、信任字段是N比特的数值,N的数量与检测类型的数量相同,针对每个比特,当该比特为第三标识(如0)时,表示携带与该比特对应的检测类型,当该比特为第四标识(如1)时,表示未携带与该比特对应的检测类型。
例如,当检测类型包括能力集检测、参数有效性检测、先决性检测和重复性检测时,则N为4,第一个比特对应能力集检测,第二个比特对应参数有效性检测,第三个比特对应先决性检测,第四个比特对应重复性检测。这样,若信任字段为0001,就表示请求消息/响应消息携带的检测类型是能力集检测、参数有效性检测、先决性检测;若信任字段为0000,就表示请求消息/响应消息携带的检测类型是能力集检测、参数有效性检测、先决性检测、重复性检测。
方式二、信任字段可以携带检测类型的标记。例如,能力集检测对应标记A、参数有效性检测对应标记B、先决性检测对应标记C、重复性检测对应标记D。基于此,若信任字段携带标记A、标记B、标记C、就表示请求消息/响应消息携带的检测类型是能力集检测、参数有效性检测、先决性检测。
在一个例子中,该ACK消息可以包括厂商标识字段和消息类型字段,但是与上述请求消息/响应消息不同的是,该ACK消息可以不携带信任字段。其中,该ACK消息中携带的消息类型字段可以为第五标识,该第五标识表示当前消息是ACK消息,对此第五标识的取值不做限制,与第一标识、第二标识不同即可。
在一个例子中,控制器在接收到响应消息之后,若该响应消息中携带检测类型,就可以根据该响应消息携带的检测类型对网络设备的流表项进行合法性检测。此外,控制器在接收到该响应消息之前,针对网络设备的流表项,控制器可以采用传统方式,直接将该流表项发送给网络设备。此外,控制器在接收到ACK消息之后,则控制器采用传统方式,直接将流表项发送给网络设备。
进一步的,网络设备在从检测能力集合中选取检测类型之后,还可以获取本网络设备支持的所有检测类型,并将所有检测类型中排除所述选取的检测类型之外的剩余检测类型确定为目标检测类型。然后,网络设备在接收到流表项后,还可以根据目标检测类型对接收到的流表项进行合法性检测。其中,目标检测类型是控制器未执行的检测类型,需要网络设备执行;目标检测类型之外的其它检测类型,是控制器已经执行的检测类型,网络设备不再执行。
例如,假设网络设备支持的所有检测类型为能力集检测、参数有效性检测、先决性检测、重复性检测,而网络设备选取的检测类型为能力集检测、参数有效性检测、先决性检测,则网络设备可以确定目标检测类型是重复性检测。因此,网络设备在接收到控制器发送的流表项后,只对该流表项进行重复性检测,而不再对该流表项进行能力集检测、参数有效性检测、先决性检测。
其中,网络设备在对流表项进行合法性检测后,若合法性检测成功,则将该流表项添加到流表中;若合法性检测失败,则拒绝将该流表项添加到流表中。
在一个例子中,若网络设备支持的所有检测类型与网络设备选取的检测类型完全相同,则目标检测类型为空,此时,网络设备在接收到控制器发送的流表项后,不再对该流表项进行合法性检测,直接将该流表项添加到流表中。
在一个例子中,控制器在接收到网络设备发送的响应消息后,还可以向网络设备发送一个ACK(Acknowledgement,确认字符)消息。基于此,网络设备在接收到ACK消息之前,若接收到控制器发送的流表项,则根据本网络设备支持的所有检测类型(如能力集检测、参数有效性检测、先决性检测、重复性检测等)对该流表项进行合法性检测;网络设备在接收到ACK消息之后,若接收到控制器发送的流表项,则根据目标检测类型对该流表项进行合法性检测。
在一个例子中,针对“控制器根据该响应消息携带的检测类型对网络设备的流表项进行合法性检测”的过程,可以包括但不限于如下情况:
情况一、若该响应消息携带的检测类型包括能力集检测,则控制器获取网络设备的流表项对应的能力,并判断网络设备是否支持该能力;如果是,则确定该流表项的合法性检测成功,如果否,则确定该流表项的合法性检测失败。
例如,流表项通常包括匹配选项和动作选项,假设匹配选项包括IPv6地址,则说明流表项对应的能力包括IPv6,若网络设备不支持IPv6能力,则确定流表项的合法性检测失败。假设动作选项包括修改报文MAC地址,则说明流表项对应的能力包括MAC地址修改,若网络设备不支持MAC地址修改能力,则确定流表项的合法性检测失败。进一步的,若网络设备支持流表项对应的所有能力(如IPv6能力和MAC地址修改能力),则确定流表项的合法性检测成功。当然,上述过程只是给出了两个示例,实际应用中并不局限于此,在此不再赘述。
当确定该流表项的合法性检测成功时,控制器可以将该流表项发送给网络设备,而网络设备在接收到该流表项后,不再对该流表项进行能力集检测。当确定该流表项的合法性检测失败时,控制器不再将该流表项发送给网络设备。
其中,为了实现上述过程,控制器可以收集网络设备的能力信息,如网络设备是否支持IPv6能力,是否支持MAC地址修改能力等,对此过程不再赘述。
情况二、若该响应消息携带的检测类型包括参数有效性检测,则控制器判断网络设备的流表项中的每个参数是否均有效;如果是,则可以确定该流表项的合法性检测成功,如果否,则可以确定该流表项的合法性检测失败。
例如,流表项通常包括匹配选项和动作选项,假设匹配选项包括VLAN5000(Virtual Local Area Network,虚拟局域网),由于VLAN标识的范围是1-4094,因此,VLAN5000这个参数无效,确定流表项的合法性检测失败。假设动作选项包括接口标识101,而网络设备的接口标识范围是1-10,则接口标识101这个参数无效,确定流表项的合法性检测失败。进一步的,若流表项中的每个参数(如VLAN标识、接口标识等)均有效,则确定流表项的合法性检测成功。当然,上述过程只是给出了两个示例,实际应用中并不局限于此,在此不再赘述。
当确定该流表项的合法性检测成功时,控制器可以将该流表项发送给网络设备,而网络设备在接收到该流表项后,不再对该流表项进行参数有效性检测。当确定该流表项的合法性检测失败时,控制器不再将该流表项发送给网络设备。
其中,为了实现上述过程,控制器可以收集网络设备的管理数据,如网络设备的VLAN标识范围、接口标识范围等,对此过程不再赘述。
情况三、若该响应消息携带的检测类型包括先决性检测,则控制器判断网络设备的流表项中的任意两个参数是否发生冲突;如果是,则可以确定该流表项的合法性检测成功,如果否,则可以确定该流表项的合法性检测失败。
例如,流表项通常包括匹配选项和动作选项,假设匹配选项包括IP地址和协议类型,协议类型为LLDP(Link Layer Discovery Protocol,链路层发现协议)类型,由于IP地址对应的协议类型应该是以太类型,而不是LLDP类型,因此,IP地址和LLDP类型发生冲突,确定流表项的合法性检测失败。进一步的,若流表项中的任意两个参数没有发生冲突,则确定流表项的合法性检测成功。当然,上述过程只是给出了一个示例,实际应用中并不局限于此,在此不再赘述。
当确定该流表项的合法性检测成功时,控制器可以将该流表项发送给网络设备,而网络设备在接收到该流表项后,不再对该流表项进行先决性检测。当确定该流表项的合法性检测失败时,控制器不再将该流表项发送给网络设备。
情况四、若该响应消息携带的检测类型包括重复性检测,则控制器判断网络设备的流表中是否存在与网络设备的流表项匹配的记录;如果否,则可以确定流表项的合法性检测成功,如果是,则可以确定流表项的合法性检测失败。
例如,流表项通常包括匹配选项和动作选项,针对为网络设备生成的流表项(后续将其称为流表项1),则可以通过流表项1的匹配选项查询该网络设备的流表(控制器可以为每个网络设备维护一个流表,该流表用于记录网络设备的所有流表项)。若流表中的某个流表项的匹配选项与流表项1的匹配选项相同,则确定流表中存在与流表项1匹配的记录,确定流表项1的合法性检测失败;若流表中的所有流表项的匹配选项与流表项1的匹配选项均不相同,则确定流表中不存在与流表项1匹配的记录,确定流表项1的合法性检测成功。
当确定该流表项的合法性检测成功时,控制器将该流表项记录到该网络设备的流表中,并将该流表项发送给网络设备,而网络设备在接收到该流表项后,不再对该流表项进行重复性检测。当确定该流表项的合法性检测失败时,控制器不将该流表项发送给网络设备,也不将该流表项记录到该网络设备的流表中。
在一个例子中,针对“网络设备根据目标检测类型对流表项进行合法性检测”的过程,与上述情况一到情况四类似,例如,当目标检测类型包括能力集检测时,则网络设备对流表项进行合法性检测的方式,与上述情况一类似。
基于上述技术方案,本申请实施例中,在控制器向网络设备发送流表项之前,控制器可以对流表项进行合法性检测,这样,当控制器向网络设备下发大量流表项时,网络设备不用对这些流表项进行合法性检测,节省网络设备的CPU资源,提高网络设备的处理性能,提升流表项的下发效率,提升用户体验。
基于与上述方法同样的申请构思,本申请实施例中还提出一种合法性检测装置,应用于网络设备,如图2所示,为所述合法性检测装置的结构图。
接收模块201,用于接收控制器发送的请求消息,所述请求消息携带所述控制器支持的检测能力集合;
选取模块202,用于当所述检测能力集合包括至少一个检测类型时,则从所述检测能力集合中选取检测类型;
发送模块203,用于向所述控制器发送针对所述请求消息的响应消息,所述响应消息携带选取的检测类型,以使所述控制器根据选取的检测类型对所述网络设备的流表项进行合法性检测。
在从所述检测能力集合中选取检测类型的过程中,所述选取模块202,具体用于从所述检测能力集合中选取所有检测类型;或者,从所述检测能力集合中选取部分检测类型;或者,针对所述检测能力集合中的每个检测类型,若所述网络设备配置有所述检测类型的信任标记,则选取所述检测类型。
在一个例子中,所述合法性检测装置还包括(在图中未体现):
获取模块,用于获取所述网络设备支持的所有检测类型,并将所述所有检测类型中排除所述选取的检测类型之外的剩余检测类型确定为目标检测类型;
检测模块,用于在接收到所述控制器发送的流表项后,根据所述目标检测类型对所述流表项进行合法性检测。
所述发送模块203,还用于当所述检测能力集合未携带检测类型时,则确定由所述网络设备根据自身支持的所有检测类型,对接收到的流表项进行合法性检测,并向所述控制器发送针对所述请求消息的ACK消息。
在一个例子中,所述合法性检测装置还包括(在图中未体现):
建立模块,用于与所述控制器建立OpenFlow连接;
其中,所述请求消息是所述控制器在所述OpenFlow连接建立后,通过所述OpenFlow连接发送的;所述请求消息包括厂商标识字段、消息类型字段和信任字段,所述信任字段用于携带所述检测能力集合;所述响应消息是所述网络设备通过所述OpenFlow连接发送的;所述响应消息包括厂商标识字段、消息类型字段和信任字段,所述信任字段用于携带所述选取的检测类型。
本申请实施例提供的网络设备,从硬件层面而言,其硬件架构示意图具体可以参见图3所示。包括:机器可读存储介质和处理器,其中:
机器可读存储介质:存储指令代码。
处理器:与机器可读存储介质通信,读取和执行机器可读存储介质中存储的所述指令代码,实现本申请上述示例公开的合法性检测操作。
这里,机器可读存储介质可以是任何电子、磁性、光学或其它物理存储装置,可以包含或存储信息,如可执行指令、数据,等等。例如,机器可读存储介质可以是:RAM(RadomAccess Memory,随机存取存储器)、易失存储器、非易失性存储器、闪存、存储驱动器(如硬盘驱动器)、固态硬盘、任何类型的存储盘(如光盘、dvd等),或者类似的存储介质,或者它们的组合。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可以由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其它可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其它可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
而且,这些计算机程序指令也可以存储在能引导计算机或其它可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或者多个流程和/或方框图一个方框或者多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其它可编程数据处理设备上,使得在计算机或者其它可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其它可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (11)
1.一种合法性检测方法,其特征在于,应用于网络设备,所述方法包括:
接收控制器发送的请求消息,所述请求消息携带所述控制器支持的检测能力集合;
若所述检测能力集合包括至少一个检测类型,则从所述检测能力集合中选取检测类型;
向所述控制器发送针对所述请求消息的响应消息,所述响应消息携带选取的检测类型,以使所述控制器根据选取的检测类型对所述网络设备的流表项进行合法性检测。
2.根据权利要求1所述的方法,其特征在于,
从所述检测能力集合中选取检测类型的过程,具体包括:
从所述检测能力集合中选取所有检测类型;或者,
从所述检测能力集合中选取部分检测类型;或者,
针对所述检测能力集合中的每个检测类型,若所述网络设备配置有所述检测类型的信任标记,则选取所述检测类型。
3.根据权利要求1所述的方法,其特征在于,
从所述检测能力集合中选取检测类型之后,所述方法还包括:
获取所述网络设备支持的所有检测类型,并将所述所有检测类型中排除所述选取的检测类型之外的剩余检测类型确定为目标检测类型;
在接收到流表项后,根据所述目标检测类型对所述流表项进行合法性检测。
4.根据权利要求1所述的方法,其特征在于,
所述接收控制器发送的请求消息之后,所述方法还包括:
若所述检测能力集合未携带检测类型,则确定由所述网络设备根据自身支持的所有检测类型,对接收到的流表项进行合法性检测,并向所述控制器发送针对所述请求消息的ACK消息。
5.根据权利要求1或4所述的方法,其特征在于,所述方法还包括:
与所述控制器建立OpenFlow连接;
其中,所述请求消息是所述控制器在所述OpenFlow连接建立后,通过所述OpenFlow连接发送的;
所述响应消息是所述网络设备通过所述OpenFlow连接发送的。
6.根据权利要求5所述的方法,其特征在于,
所述请求消息包括厂商标识字段、消息类型字段和信任字段,所述信任字段用于携带所述检测能力集合;所述响应消息包括厂商标识字段、消息类型字段和信任字段,所述信任字段用于携带所述选取的检测类型。
7.一种合法性检测装置,其特征在于,应用于网络设备,所述装置包括:
接收模块,用于接收控制器发送的请求消息,所述请求消息携带所述控制器支持的检测能力集合;
选取模块,用于当所述检测能力集合包括至少一个检测类型时,则从所述检测能力集合中选取检测类型;
发送模块,用于向所述控制器发送针对所述请求消息的响应消息,所述响应消息携带选取的检测类型,以使所述控制器根据选取的检测类型对所述网络设备的流表项进行合法性检测。
8.根据权利要求7所述的装置,其特征在于,
在从所述检测能力集合中选取检测类型的过程中,所述选取模块,具体用于从所述检测能力集合中选取所有检测类型;或者,从所述检测能力集合中选取部分检测类型;或者,针对所述检测能力集合中的每个检测类型,若所述网络设备配置有所述检测类型的信任标记,则选取所述检测类型。
9.根据权利要求7所述的装置,其特征在于,还包括:
获取模块,用于获取所述网络设备支持的所有检测类型,并将所述所有检测类型中排除所述选取的检测类型之外的剩余检测类型确定为目标检测类型;
检测模块,用于在接收到所述控制器发送的流表项后,根据所述目标检测类型对所述流表项进行合法性检测。
10.根据权利要求7所述的装置,其特征在于,
所述发送模块,还用于当所述检测能力集合未携带检测类型时,则确定由所述网络设备根据自身支持的所有检测类型,对接收到的流表项进行合法性检测,并向所述控制器发送针对所述请求消息的ACK消息。
11.根据权利要求7或10所述的装置,其特征在于,还包括:
建立模块,用于与所述控制器建立OpenFlow连接;
其中,所述请求消息是所述控制器在所述OpenFlow连接建立后,通过所述OpenFlow连接发送的;所述请求消息包括厂商标识字段、消息类型字段和信任字段,所述信任字段用于携带所述检测能力集合;所述响应消息是所述网络设备通过所述OpenFlow连接发送的;所述响应消息包括厂商标识字段、消息类型字段和信任字段,所述信任字段用于携带所述选取的检测类型。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710457993.9A CN108282380B (zh) | 2017-06-16 | 2017-06-16 | 一种合法性检测方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710457993.9A CN108282380B (zh) | 2017-06-16 | 2017-06-16 | 一种合法性检测方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108282380A true CN108282380A (zh) | 2018-07-13 |
CN108282380B CN108282380B (zh) | 2020-10-09 |
Family
ID=62801213
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710457993.9A Active CN108282380B (zh) | 2017-06-16 | 2017-06-16 | 一种合法性检测方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108282380B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023045931A1 (zh) * | 2021-09-24 | 2023-03-30 | 华为技术有限公司 | 一种网络性能异常分析方法、装置及可读存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104104561A (zh) * | 2014-08-11 | 2014-10-15 | 武汉大学 | 一种基于OpenFlow协议的SDN防火墙状态检测方法及系统 |
US8908539B1 (en) * | 2012-05-25 | 2014-12-09 | Google Inc. | Systems and methods for testing network connections of a centrally-controlled network |
CN105490944A (zh) * | 2014-09-19 | 2016-04-13 | 中国电信股份有限公司 | 一种sdn中用户事件的上报方法及网络系统 |
-
2017
- 2017-06-16 CN CN201710457993.9A patent/CN108282380B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8908539B1 (en) * | 2012-05-25 | 2014-12-09 | Google Inc. | Systems and methods for testing network connections of a centrally-controlled network |
CN104104561A (zh) * | 2014-08-11 | 2014-10-15 | 武汉大学 | 一种基于OpenFlow协议的SDN防火墙状态检测方法及系统 |
CN105490944A (zh) * | 2014-09-19 | 2016-04-13 | 中国电信股份有限公司 | 一种sdn中用户事件的上报方法及网络系统 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023045931A1 (zh) * | 2021-09-24 | 2023-03-30 | 华为技术有限公司 | 一种网络性能异常分析方法、装置及可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN108282380B (zh) | 2020-10-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103401726B (zh) | 网络路径探测方法及装置、系统 | |
CN111052686A (zh) | 在公共云中执行在线服务 | |
CN104468368B (zh) | 配置bgp邻居的方法及装置 | |
CN107547242B (zh) | Vm配置信息的获取方法及装置 | |
CN104852840B (zh) | 一种控制虚拟机之间互访的方法及装置 | |
CN102739549A (zh) | 接收报文的方法、发送报文的方法及装置 | |
CN106201769B (zh) | 服务器系统、非临时计算机可读存储介质以及用以增强服务器系统中的存储器容错率的方法 | |
CN109818997A (zh) | 一种负载均衡方法、系统及存储介质 | |
CN107547391A (zh) | 一种报文传输方法和装置 | |
CN107846364A (zh) | 一种报文的处理方法和装置 | |
CN109525684A (zh) | 报文转发方法和装置 | |
JP2017041747A (ja) | 情報処理装置、情報処理装置の制御プログラム、制御方法及び情報処理システム | |
CN109379241A (zh) | 一种路径信息确定方法及装置 | |
CN110120897A (zh) | 链路探测方法、装置、电子设备及机器可读存储介质 | |
CN106506515A (zh) | 一种认证方法和装置 | |
CN104994022A (zh) | 一种报文传输的方法和业务板 | |
CN107517129B (zh) | 一种基于OpenStack配置设备上行接口的方法和装置 | |
CN108418752A (zh) | 一种聚合组的创建方法和装置 | |
CN107547400A (zh) | 一种虚拟机迁移方法和装置 | |
CN109861869A (zh) | 一种配置文件的生成方法及装置 | |
CN109728972A (zh) | 网络连接检测方法和装置 | |
CN108282380A (zh) | 一种合法性检测方法和装置 | |
CN108089934A (zh) | 集群管理方法及集群服务器 | |
EP3481099B1 (en) | Load balancing method and associated device | |
CN103905392B (zh) | 动态主机设置协议dhcp服务器选择方法、装置及系统 |
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 |