CN107645389B - 一种网络通信方法和装置 - Google Patents

一种网络通信方法和装置 Download PDF

Info

Publication number
CN107645389B
CN107645389B CN201610575523.8A CN201610575523A CN107645389B CN 107645389 B CN107645389 B CN 107645389B CN 201610575523 A CN201610575523 A CN 201610575523A CN 107645389 B CN107645389 B CN 107645389B
Authority
CN
China
Prior art keywords
network management
message
openflow
protocol
management message
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.)
Active
Application number
CN201610575523.8A
Other languages
English (en)
Other versions
CN107645389A (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.)
Nokia Shanghai Bell Co Ltd
Original Assignee
Nokia Shanghai Bell 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 Nokia Shanghai Bell Co Ltd filed Critical Nokia Shanghai Bell Co Ltd
Priority to CN201610575523.8A priority Critical patent/CN107645389B/zh
Publication of CN107645389A publication Critical patent/CN107645389A/zh
Application granted granted Critical
Publication of CN107645389B publication Critical patent/CN107645389B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本公开的实施例公开了网络通信方法和装置,其中所述网络包括一个或多个第一设备以及一个或多个第二设备,第一设备使用面向连接的协议与至少一个第二设备建立连接。一种方法包括:在第一设备处,将基于面向无连接协议传送的网络管理消息转换成能够在第一设备和第二设备之间所建立的连接上传送的消息;以及在所建立的连接上,将所转换的消息发送给至少一个第二设备。本公开的方法和装置可以实现的技术效果是,确保网络管理消息快速、可靠、安全地传送到目的地,并且易于扩展。

Description

一种网络通信方法和装置
技术领域
本公开的实施例涉及通信技术,更具体地涉及一种网络通信方法和装置。
背景技术
现代通信时代已经带来了网络的巨大扩张,网络已经逐渐成为单位,个人工作以及生活中不可缺少的一部分。由于网络的应用越来越广,使得网络规模更加庞大、结构更加复杂、支持的用户更多、网络设备数量越来越多,因此需要高效的网络管理。简单网络管理协议(SNMP)作为一种网络管理协议,是被广泛接受并投入使用的标准协议。它的目标是保证网络管理信息在任意支持SNMP协议的管理设备和被管设备之间传送,便于网络管理系统在网络上的任何节点检索信息,获得网络指标参数。然而,大多数网络管理协议(例如,SNMP协议)使用面向无连接的协议(例如,UDP(用户数据报协议))作为第四层协议(传输层协议),进行无连接操作,因此在一些情况下,将无法确保网络管理消息被传送到网络管理设备。因此,需要一种改进的网络通信解决方案。
发明内容
根据本公开的一个方面,公开了一种网络通信方法,其中所述网络包括一个或多个第一设备以及一个或多个第二设备,第一设备使用面向连接的协议与至少一个第二设备建立连接。所述方法包括:在第一设备处,将基于面向无连接协议传送的网络管理消息转换成能够在第一设备和第二设备之间所建立的连接上传送的消息;以及在所建立的连接上,将所转换的消息发送给至少一个第二设备。
在一个实施例中,将基于面向无连接协议传送的网络管理消息转换成能够在第一设备和第二设备之间所建立的连接上传送的消息包括:检测在所述第一设备处的网络管理事件;响应于所检测到的网络管理事件,构建与所述网络管理事件对应的基于面向无连接协议传送的网络管理消息;以及将所构建的网络管理消息转换成能够在第一设备和第二设备之间所建立的连接上传送的消息。
在一个实施例中,将基于面向无连接协议传送的网络管理消息转换成能够在第一设备和第二设备之间传送的消息包括:将接收的基于面向无连接协议传送的数据分组识别为网络管理消息;以及将所识别的网络管理消息转换成能够在第一设备和第二设备之间所建立的连接上传送的消息。
在一个实施例中,第一设备运行OpenFlow协议,将接收的基于面向无连接协议传送的消息识别为网络管理消息包括:通过OpenFlow协议,将接收的基于面向无连接协议传送的消息识别为网络管理消息。
在一个实施例中,第一设备与第二设备通过OpenFlow协议进行通信,将基于面向无连接协议传送的网络管理消息转换成能够在第一设备和第二设备之间所建立的连接上传送的消息包括:将基于面向无连接协议传送的网络管理消息转换成OpenFlow消息。
在一个实施例中,所述网络管理消息是简单网络管理协议消息。
在一个实施例中,所述网络管理消息是掉电告警消息。
在一个实施例中,所述第一设备是OpenFlow交换机,所述第二设备是OpenFlow控制器。
根据本公开的一个方面,公开了一种网络通信方法,其中所述网络包括一个或多个第一设备以及一个或多个第二设备,第一设备使用面向连接的协议与至少一个第二设备建立连接。所述方法包括:在第二设备处,在所建立的连接上,接收来自第一设备的消息,其中通过所述第一设备将网络管理消息转换成能够在第一设备和第二设备之间所建立的连接上传送的消息来生成所述第一设备的消息;以及处理所述网络管理消息。
在一个实施例中,处理所述网络管理消息包括:将所述网络管理消息转换为面向无连接协议传送的网络管理消息;以及将所转换的网络管理消息传送给网络管理设备。
在一个实施例中,第一设备与第二设备通过OpenFlow协议进行通信,所接收的来自第一设备的消息是OpenFlow消息。
在一个实施例中,所述网络管理消息是简单网络管理协议消息。
在一个实施例中,所述网络管理消息是掉电告警消息。
在一个实施例中,所述第一设备是OpenFlow交换机,所述第二设备是OpenFlow控制器。
根据本公开的一个方面,公开了一种网络通信装置,其中所述网络包括一个或多个第一设备以及一个或多个第二设备,第一设备使用面向连接的协议与至少一个第二设备建立连接。所述装置包括:转换单元,其用于将基于面向无连接协议传送的网络管理消息转换成能够在第一设备和第二设备之间所建立的连接上传送的消息;以及发送单元,其用于在所建立的连接上,将所转换的消息发送给至少一个第二设备。
在一个实施例中,所述转换单元包括:检测构件,其用于检测在所述第一设备处的网络管理事件;构建构件,其用于响应于所检测到的网络管理事件,构建与所述网络管理事件对应的基于面向无连接协议传送的网络管理消息;以及第一转换构件,其用于所构建的网络管理消息转换成能够在第一设备和第二设备之间所建立的连接上传送的消息。
在一个实施例中,所述转换单元包括:识别构件,其用于将接收的基于面向无连接协议传送的数据分组识别为网络管理消息;以及第二转换构件,其用于将所识别的网络管理消息转换成能够在第一设备和第二设备之间所建立的连接上传送的消息。
在一个实施例中,第一设备运行OpenFlow协议,所述识别构件还用于通过OpenFlow协议,将接收的基于面向无连接协议传送的消息识别为网络管理消息。
在一个实施例中,第一设备与第二设备通过OpenFlow协议进行通信,所述转换单元还用于将基于面向无连接协议传送的网络管理消息转换成OpenFlow消息。
在一个实施例中,所述网络管理消息是简单网络管理协议消息。
在一个实施例中,所述网络管理消息是掉电告警消息。
在一个实施例中,所述第一设备是OpenFlow交换机,所述第二设备是OpenFlow控制器。
根据本公开的一个方面,公开了一种网络通信装置,其中所述网络包括一个或多个第一设备以及一个或多个第二设备,第一设备使用面向连接的协议与至少一个第二设备建立连接。所述装置包括:接收单元,其用于在所建立的连接上,接收来自第一设备的消息,其中通过所述第一设备将网络管理消息转换成能够在第一设备和第二设备之间所建立的连接上传送的消息来生成所述第一设备的消息;以及处理单元,其用于处理所述网络管理消息。
在一个实施例中,所述处理单元包括:转换单元,其用于将所述网络管理消息转换为面向无连接协议传送的网络管理消息;以及传送单元,其用于将所转换的网络管理消息传送给网络管理设备。
在一个实施例中,第一设备与第二设备通过OpenFlow协议进行通信,所接收的来自第一设备的消息是OpenFlow消息。
在一个实施例中,所述网络管理消息是简单网络管理协议消息。
在一个实施例中,所述网络管理消息是掉电告警消息。
在一个实施例中,所述第一设备是OpenFlow交换机,所述第二设备是OpenFlow控制器。
上述所述的方法和装置可以实现的技术效果是,确保网络管理消息快速、可靠、安全地传送到目的地,并且易于扩展。
附图说明
图1示出了可以使用本公开的实施例的网络系统的示意图。
图2示出了根据本公开的实施例的方法的流程图。
图3示出了根据本公开的实施例的方法的流程图。
图4示出了根据本公开的实施例的装置的框图。
图5示出了根据本公开的实施例的装置的框图。
具体实施方式
下面参照附图描述本公开的实施例。在下面的描述中,阐述了许多具体细节以便使所属技术领域的技术人员更全面地了解和实现本公开。但是,对所属技术领域的技术人员明显的是,可以在不具有这些具体细节中的一些具体细节的情况下来实现本公开的实施例。此外,应当理解的是,本公开并不局限于所介绍的特定实施例。相反,可以考虑用下面所述的特征和要素的任意组合来实施本公开的实施例。因此,下面的方面、特征、实施例和优点仅作说明之用,而不应看作是权利要求的要素或限定,除非在权利要求中明确提出。
在全文中,相同的标记指相同的元素。如本文所使用的,词语“数据”、“内容”、“信息”以及类似的词语可交换地使用,以指依照本公开的实施例能够被传送、接收和/或存储的数据。因此,任何此类词语的使用不应当被认为是限制本公开的实施例的精神和范围。
另外,如本文所使用的,词语‘电路’指:(a)仅硬件电路实现方式(例如,在模拟电路和/或数字电路中的实现方式);(b)电路和计算机程序产品(多个)的组合,所述计算机程序产品(多个)包括:存储在一个或多个计算机可读存储器上的软件和/或固件指令,所述组合一起工作以使得装置执行本文描述的一个或多个功能;以及(c)要求用于运行的软件或固件的电路(诸如例如,微处理器(多个)或微处理器(多个)的一部分),即使所述软件或固件不是物理呈现的。‘电路’的这种定义应用于本文中(包括在任何权利要求中)的这个词语的所有使用。作为进一步示例,如本文所使用的,词语‘电路’还包含:包括一个或多个处理器和/或其部分(多个)并且伴随有软件和/或固件的实现方式。
需要注意的是,在本公开的一些实施例中,将结合SNMP来描述本公开的实施例,但是本公开的实施例并不是仅限于SNMP,而是可以适用于任何合适的网络管理协议。此外,在本公开的一些实施例中,将结合软件定义网络(SDN)(例如,使用OpenFlow协议的网络)来描述本公开的实施例,但是本公开的实施例并不是仅限于软件定义网络,而是可以适用于任何合适的网络。
如本文中使用,网络管理消息可以是与网络设备有关的任何消息。例如,网络管理消息可以包括但不限于:告警消息、状态消息、与环境有关的消息、业务流量消息、链路状态消息、资源使用率消息、负载情况消息等。此外,在本文中实施例中使用的网络管理消息也可以是由运营商或操作者指定的特定的网络管理消息。例如,运营商可以将感兴趣的消息(例如,掉电告警消息)指定为网络管理消息,或者运营商可以基于网络管理消息的优先级值,将大于某一优先级阈值的网络管理消息指定为可以使用本文中的实施例的网络管理消息。
作为示例,假设网络管理消息是掉电告警消息,并且使用SNMP或系统日志协议(Syslog)来传送掉电告警消息。在网络设备失去外部电源的情况下,由于SNMP消息或系统日志消息是基于UDP(用户数据包协议)传送的,UDP并不能保证掉电告警消息一定被传送到目的地,因此,如果网络管理系统没有接收到掉电告警消息,则它不能对这种掉电事件做出快速响应,从而可能导致目的地为掉电设备的业务仍然向掉电设备传送,从而造成数据丢失,进而导致数据分组时延增加(例如,重传等)、网络拥塞等。
此外,虽然可以使用基于TCP(传输控制协议)的协议来传送此类关键和时间敏感的消息,但是建立TCP连接是费时的并且是易错的。当诸如掉电事件的网络管理事件发生时,网络设备通常仅有非常短的时间(例如,若干毫秒)来发送掉电事件消息。在这种情况下,网络设备可能没有时间来建立TCP连接。此外,网络管理事件并不是一直发生,因此如果在网络设备和网络管理设备/系统之间建立持久的TCP,则代价较高,例如,占用大量的TCP连接数量,消耗大量的资源(诸如,带宽、存储、计算资源等)。
此外,大多数现有的网络管理消息是基于UDP而不是TCP来传送的,因此如何确保网络管理消息传送给网络管理设备/系统成为本领域急需解决的问题之一。
本文中公开的实施例可以解决或缓解上述问题中的至少一个问题。图1示出了可以使用本公开的实施例的示例网络系统100的示意图。如图1所示,网络系统100可以包括:在椭圆虚线框170中的一个或多个第一设备101,102,以及在椭圆虚线框160中的一个或多个第二设备110、111。需要注意的是,尽管在图1中仅示出了两个第一设备和两个第二设备,但是在其它实施例中,在网络系统100中可以包括任何合适数量的第一设备和第二设备。
第一设备与第一设备通过连接140连接。连接140可以是任何合适的网络连接,例如以太网连接、同轴电缆连接、光纤连接、无线电连接等。连接140可以是有线连接或无线连接或其它合适的连接。此外,尽管在第一设备101和第一设备102之间仅示出了一个连接140,但是在其它实施例中,它们之间可以有多个连接140。每个第一设备102可以与至少一个第一设备连接。另外,第一设备还可以与其它设备(未示出)连接,例如其它设备可以是利用第一设备传送和/或接收信息的设备,或与第一设备相关联的设备。
第一设备可以包括但不限于交换机(例如,以太网交换机、OpenFlow交换机等)、路由器、计算机、服务器、接入点、蜂窝基站、计算设备以及其它能够对信息进行转发和/或路由的设备。此外,第一设备可以是同一类型的设备或不同类型的设备。
第二设备与第二设备可以通过连接150连接。连接150可以是任何合适的网络连接,例如以太网连接、同轴电缆连接、光纤连接、无线电连接等。连接150可以是有线连接或无线连接或其它合适的连接。此外,尽管在第二设备110和第二设备111之间仅示出了一个连接150,但是在其它实施例中,它们之间可以有多个连接150。在其它实施例中,第二设备之间也可以没有连接,也就是说每个第二设备可以作为独立的设备。每个第二设备110可以与至少一个第一设备连接。另外,第二设备还可以与其它设备(未示出)(例如网络管理设备/系统等)直接连接或间接连接。作为示例,在直接连接的情况下,第二设备可以通过相对应的接口与其它设备进行连接。在间接连接的情况下,第二设备和其它设备之间可以存在一个或多个中间设备。例如,第一设备可以作为中间设备使得网络管理设备/系统可以与第二设备连接。
第二设备可以包括但不限于计算机、控制器(例如,OpenFlow控制器)、服务器、接入点、蜂窝基站、计算设备以及其它具有计算能力的设备。
第一设备可以与至少一个第二设备连接,例如,第一设备101可以通过连接130、134分别与第二设备110、111连接。在其它实施例中,第一设备101也可以借助于另一个第一设备(诸如第一设备102)与第二设备110、111之间的连接136、138和第一设备101和第一设备102之间的连接140,分别与第二设备110、111。也就是说,第一设备与第二设备之间的连接可以借助于由第一设备组成的网络或可以使用另一个网络(例如,用于将第一设备与第二设备连接的网络)。
此外,第一设备可以使用面向连接的协议(例如TCP、SSL、TLS等协议)与至少一个第二设备建立连接。在一个实施例中,该连接可以是一直存在的。也就是说,从该连接建立成功开始,它可以一直存在。取决于不同的应用场景,在第一设备和第二设备之间所建立的TCP连接可以用于不同的目的,例如在基于OpenFlow的SDN网络中,可以在该TCP连接上传送OpenFlow消息。
在一个实施例中,第一设备可以是OpenFlow交换机,第二设备可以是OpenFlow控制器。作为示例,第一设备可以是支持任何版本(包括现有或将来开发)的OpenFlow协议的交换机。另外,第一设备可以是异构的OpenFlow交换机,也就是说,第一设备不必是支持同一版本的OpenFlow协议的交换机。例如,一些第一设备可以是支持OpenFlow 1.3协议的交换机,一些第一设备可以是支持OpenFlow 1.4协议的交换机,诸如此类。类似地,第二设备也可以是异构的OpenFlow控制器,也就是说,第二设备不必是支持同一版本的OpenFlow协议的控制器。例如,一些第二设备可以是支持OpenFlow 1.3协议的控制器,一些第二设备可以是支持OpenFlow 1.4协议的控制器,诸如此类。
在基于OpenFlow的SDN网络的实施例中,第二设备(例如,OpenFlow控制器)可以管理一个或多个第二设备(OpenFlow交换机),例如OpenFlow控制器可以使用OpenFlow协议与OpenFlow交换机进行交互以完成对交换机的管理和操作。此外,第二设备也可以承担传统的网络管理功能以及其它功能等。
图2示出了根据本公开的实施例的网络通信方法200的流程图,其中该网络包括一个或多个第一设备以及一个或多个第二设备,第一设备使用面向连接的协议(诸如TCP、TLS、SSL)与至少一个第二设备建立连接。可以在诸如图1的第一设备101、102的设备处来执行该方法200。因此,第一设备101、102可以提供用于实现方法200的各个部分的构件以及用于实现第一设备101、102的其它功能的构件。
如在图2中示出的,方法200从框201开始。在框201中,第一设备101将基于面向无连接协议传送的网络管理消息转换或构建成能够在第一设备和第二设备之间所建立的连接上传送的消息。面向无连接协议可以是UDP协议或其它面向无连接的协议。作为示例,基于面向无连接协议传送的网络管理消息可以是SNMP消息或者是其它基于面向无连接协议传送的网络管理消息(例如,系统日志消息)。网络管理消息可以是第一设备101自身的网络管理消息,也可以是第一设备101通过任何合适的方式(例如,网络管理事件接口,诸如告警接口)从其它设备接收/采集的网络管理事件。此外,在第一设备是路由交换设备(例如,交换机或路由器等)的情况下,网络管理消息也可以是第一设备通过网络端口(例如,以太网接口、光纤接口等)从其它设备接收的数据分组(诸如SNMP分组)。
如上所述,第一设备和第二设备之间所建立的连接可以是基于面向连接的协议(诸如TCP、TLS、SSL协议)建立的连接(诸如TCP、TLS、SSL连接)。在基于OpenFlow的软件定义网络的情况下,第一设备(例如,OpenFlow交换机)和第二设备(OpenFlow控制器)之间可以通过所建立的TCP连接传送OpenFlow消息。
在这个实施例中,转换或构建可以包括:将网络管理消息整体封装在能够在第一设备和第二设备之间所建立的连接上传送的消息,或提取网络管理消息的有效载荷部分并且在第一设备和第二设备之间所建立的连接上传送有效载荷部分,或是其它任何合适的转换方式。作为示例,假设网络管理消息是SNMP消息,网络是SDN网络(例如,基于OpenFlow的SDN网络,其中在第一设备和第二设备之间使用基于TLS的OpenFlow协议传送消息),则在框201中,第一设备可以将SNMP消息整体封装在OpenFlow协议中的任何合适的消息中(例如,在错误消息(Error Message)中,其中错误消息的类型为实验者错误消息(ExperimenterError Message)),或者提取SNMP消息的有效载荷,然后将有效载荷封装在OpenFlow协议中的任何合适的消息中。
在一个实施例中,将基于面向无连接协议传送的网络管理消息转换或构建成能够在第一设备和第二设备之间所建立的连接上传送的消息包括:检测在所述第一设备处的网络管理事件;响应于所检测到的网络管理事件,构建与所述网络管理事件对应的基于面向无连接协议传送的网络管理消息;以及将所构建的网络管理消息转换或构建成能够在第一设备和第二设备之间所建立的连接上传送的消息。
在这个实施例中,网络管理事件可以是第一设备101自身的网络管理事件或是第一设备通过例如网络管理接口(诸如,告警接口等)从相关联的设备接收的网络管理事件。在这种情况下,第一设备101可以通过例如第一设备101的告警模块或告警接口等检测在第一设备处的网络管理事件,例如,第一设备101或相关联的设备的掉电事件。然后,第一设备101可以响应于检测到网络管理事件(例如,掉电事件),构建与所述网络管理事件对应的基于面向无连接协议传送的网络管理消息。例如,所构建的网络管理消息可以是SNMP消息。最后,第一设备101可以将所构建的网络管理消息转换成能够在第一设备和第二设备之间所建立的连接上传送的消息,其中转换可以与关于上述实施例描述的转换类似,因此出于简洁的原因,在此不再详细描述。
在另一个实施例中,将基于面向无连接协议传送的网络管理消息转换或构建成能够在第一设备和第二设备之间所建立的连接上传送的消息包括:将接收的基于面向无连接协议传送的数据分组识别为网络管理消息;以及将所识别的网络管理消息转换或构建成能够在第一设备和第二设备之间所建立的连接上传送的消息。
在这个实施例中,第一设备可以从其它设备接收基于面向无连接协议传送的网络管理消息。例如,第一设备可以是路由交换设备(例如,交换机、路由器等),它可以通过诸如以太网接口的网络接口,从其它交换机/路由器/网络设备等接收基于面向无连接协议传送的数据分组,并且使用任何合适的方式(分组报头检测、深度包检测等方法)将接收的基于面向无连接协议传送的数据分组识别为网络管理消息。
在一个实施例中,第一设备可以运行OpenFlow协议,在这种情况下,第一设备可以通过OpenFlow协议定义的流表匹配,找到对应于网络管理设备的流表项(flow entry)(在此,假设第一设备中已经存储了该流表项)(例如,该流表项可以包括网络管理设备的目的地IP地址、UDP协议、UDP端口号等),从而识别网络管理消息。例如,如果网络管理设备的IP地址是a.b.c.d(其中每个字母代表0-255中的一个数),并且该网络管理设备使用UDP协议来传送SNMP消息,其中UDP端口号为n,则第一设备可以通过流表匹配(假设OpenFlow控制器已经向第一设备已经下发了对应于该网络管理设备的SNMP消息的流表项),找到对应于目的地为该网络管理设备的网络管理消息的流表项,从而识别网络管理消息。
在一个实施例中,第一设备与第二设备通过OpenFlow协议进行通信,将基于面向无连接协议传送的网络管理消息转换或构建成能够在第一设备和第二设备之间所建立的连接上传送的消息包括:将基于面向无连接协议传送的网络管理消息转换或构建成OpenFlow消息。在这个实施例中,第一设备可以是OpenFlow交换机,第二设备可以是OpenFlow控制器,它们可以通过OpenFlow协议通信。第一设备在识别了网络管理消息后,可以根据流表项指定的动作,将所识别的网络管理消息转换成任何合适的OpenFlow消息。作为示例,第一设备可以将网络管理消息封装在OpenFlow错误消息(Error Message)中,其中错误消息的类型为实验者错误消息(Experimenter Error Message)。在其它实施例中,可以将网络管理消息封装在任何合适的现有的或将来开发的OpenFlow消息中。
在将基于面向无连接协议传送的网络管理消息转换成能够在第一设备和第二设备之间所建立的连接上传送的消息后,在框204中,第一设备可以在所建立的连接上,将所转换的消息发送给至少一个第二设备。例如,在基于OpenFlow的SDN网络中,所转换的消息可以是OpenFlow消息,则第一设备可以在第一设备和第二设备之间建立的TCP连接上,将该OpenFlow消息发送给至少一个第二设备。作为示例,如果第一设备与一个第二设备连接,则第一设备可以将该OpenFlow消息发送给该第二设备;如果第一设备与两个第二设备连接,其中一个第二设备是主(Master)设备,另一个第二设备是从(slave)设备,则第一设备可以将OpenFlow消息发送给主设备或发送给它们两者;或者第一设备可以根据将来开发的OpenFlow协议的规定,将该OpenFlow消息发送给相应的一个或多个第二设备。将网络管理消息发送给两个或更多的控制器的一个优点是,即使其中一个控制器没有接收到网络管理消息,其余的控制器仍然能够接收到该网络管理消息,并且执行相应地动作,从而可以确保网络管理消息可靠地传送到目的地(例如,网络管理设备/系统)。
图3示出了根据本公开的实施例的网络通信方法300的流程图,其中网络包括一个或多个第一设备以及一个或多个第二设备,第一设备使用面向连接的协议(诸如TCP、TLS、SSL)与至少一个第二设备建立连接。可以在诸如图1的第二设备110、111的设备处来执行该方法300。因此,第二设备110、111可以提供用于实现方法300的各个部分的构件以及用于实现第二设备110、111的其它功能的构件。
如在图3中示出的,方法300从框301开始。在框301中,第二设备110在所建立的连接上,接收来自第一设备的消息,其中通过所述第一设备将网络管理消息转换或构建成能够在第一设备和第二设备之间所建立的连接上传送的消息来生成所述第一设备的消息。其中,面向无连接协议、网络管理消息、第一设备和第二设备之间所建立的连接、转换与上述实施例中的对应部分的描述相同,因此出于简洁的原因,在此不再详细描述它们。
在接收到来自第一设备的消息后,在框204,第二设备110可以处理所述网络管理消息,例如,它可以根据预定的规则/设置来处理该网络管理消息。作为示例,第二设备110可以对应于SNMP陷阱(trap)/Syslog的预定规则来处理SNMP陷阱/Syslog消息。作为示例,如果第二设备110承担网络管理设备/系统的功能或部分功能并且它能够处理该网络管理消息,则它可以自己处理该网络管理消息。例如,在SDN网络的情况下,并且网络管理消息是第一设备(例如,OpenFlow交换机)的掉电告警消息,第二设备(例如,OpenFlow控制器)可以根据掉电告警消息执行任何预定的动作,例如,将第一设备(OpenFlow交换机)设置为不可用的状态、更新网络拓扑、重新计算路由、向受影响的OpenFlow交换机下发新流表项、进行负载均衡等。如果第二设备110不承担网络管理设备/系统的功能,则它可以例如根据预定规则,将该网络管理消息转发给能够处理网络管理消息的设备/系统。例如,如果另一个第二设备能够处理该网络管理消息,则它可以例如通过合适的协议(例如,OpenFlow协议)或第二设备之间的接口(例如,OpenFlow控制器之间的东西向接口))将该网络管理消息转发给另一个第二设备;或者,如果与第二设备相关联的另一个设备(例如,网络管理设备或系统)能够处理该网络管理消息,则它可以例如通过另一个设备与第二设备之间的接口(例如,OpenFlow控制器的北向接口))将该网络管理消息转发给另一个设备;或者,如果能够处理该网络管理消息的设备或系统是外部网络管理系统或系统日志服务器,则第二设备可以将该网络管理消息重新发送给网络中的另一个第一设备(例如,OpenFlow交换机)以使得它能够将该网络管理消息发送给外部网络管理系统或系统日志服务器。例如,在基于OpenFlow的SDN网络中,第二设备可以将网络告警消息封装成SNMP v1/v2/v3消息并通过例如packet out消息将它发送给另一个第一设备(例如,OpenFlow交换机)(根据需要,也可以下发与该SNMP v1/v2/v3消息对应的流表项)以使得该另一个第一设备将SNMP v1/v2/v3消息发送给外部网络管理设备/系统。
在一个实施例中,处理网络管理消息包括:将所述网络管理消息转换为面向无连接协议传送的网络管理消息;以及将所转换的网络管理消息传送给网络管理设备。在这个实施例中,第二设备可以将网络管理消息转换成例如SNMP v1/v2/v3消息或其它合适的网络管理消息,然后将所转换的消息发送给网络管理设备。例如,在基于OpenFlow协议的SDN网络的情况下,第二设备(例如,OpenFlow控制器)可以计算至SNMP v1/v2/v3消息的目的地的最可靠的路径(例如,没有拥塞的路径、时延低的路径等),然后将SNMP v1/v2/v3消息发送给该路径上的路由交换设备(例如,OpenFlow交换机),从而可以最大程度地确保SNMPv1/v2/v3消息被传送到目的地(例如,网络管理设备)。在网络管理设备接收到网络管理消息后,它可以根据预定的规则,执行与该网络管理消息对应的动作,例如,提供报警、将网络管理事件发送给操作者等。
在至少一个实施例中,网络管理消息可以是简单网络管理协议消息。
在至少一个实施例中,网络管理消息可以是掉电告警消息。
在至少一个实施例中,第一设备是OpenFlow交换机,第二设备是OpenFlow控制器。
基于与上述方法200相同的发明构思,本公开还提供了一种网络通信装置,其中所述网络包括一个或多个第一设备以及一个或多个第二设备,第一设备使用面向连接的协议与至少一个第二设备建立连接。该装置可以包括用于执行参照图2描述的方法200的步骤的构件。针对与前述实施例相同的部分,适当地省略它们的描述。
图4示出了根据本公开的实施例的装置400的框图。装置400可以用于执行参照图2描述的方法200的步骤。装置400可以是图1中的第一设备或是第一设备中的组件。
在一个实施例中,所述装置400包括:转换单元402,其将基于面向无连接协议传送的网络管理消息转换成能够在第一设备和第二设备之间所建立的连接上传送的消息;以及发送单元404,其在所建立的连接上,将所转换的消息发送给至少一个第二设备。
在一个实施例中,所述转换单元402包括:检测构件(未示出),其检测在所述第一设备处的网络管理事件;构建构件(未示出),其响应于所检测到的网络管理事件,构建与所述网络管理事件对应的基于面向无连接协议传送的网络管理消息;以及第一转换构件(未示出),其所构建的网络管理消息转换成能够在第一设备和第二设备之间所建立的连接上传送的消息。
在一个实施例中,所述转换单元402包括:识别构件(未示出),其将接收的基于面向无连接协议传送的数据分组识别为网络管理消息;以及第二转换构件(未示出),其将所识别的网络管理消息转换成能够在第一设备和第二设备之间所建立的连接上传送的消息。
在一个实施例中,第一设备运行OpenFlow协议,识别构件(未示出)还通过OpenFlow协议,将接收的基于面向无连接协议传送的消息识别为网络管理消息。
在一个实施例中,第一设备与第二设备通过OpenFlow协议进行通信,所述转换单元402还将基于面向无连接协议传送的网络管理消息转换成OpenFlow消息。
在一个实施例中,所述网络管理消息是简单网络管理协议消息。
在一个实施例中,所述网络管理消息是掉电告警消息。
在一个实施例中,所述第一设备是OpenFlow交换机,所述第二设备是OpenFlow控制器。
基于与上述方法300相同的发明构思,本公开还提供了一种网络通信装置,其中所述网络包括一个或多个第一设备以及一个或多个第二设备,第一设备使用面向连接的协议与至少一个第二设备建立连接。该装置可以包括用于执行参照图3描述的方法300的步骤的构件。针对与前述实施例相同的部分,适当地省略它们的描述。
图5示出了根据本公开的实施例的装置500的框图。装置500可以用于执行参照图3描述的方法300的步骤。装置500可以是图1中的第二设备或是第二设备中的组件。
在一个实施例中,所述装置500包括:接收单元502,其在所建立的连接上,接收来自第一设备的消息,其中通过所述第一设备将网络管理消息转换成能够在第一设备和第二设备之间所建立的连接上传送的消息来生成所述第一设备的消息;以及处理单元504,其处理所述网络管理消息。
在一个实施例中,所述处理单元504包括:转换单元(未示出),其将所述网络管理消息转换为面向无连接协议传送的网络管理消息;以及传送单元(未示出),其将所转换的网络管理消息传送给网络管理设备。
在一个实施例中,第一设备与第二设备通过OpenFlow协议进行通信,所接收的来自第一设备的消息是OpenFlow消息。
在一个实施例中,所述网络管理消息是简单网络管理协议消息。
在一个实施例中,所述网络管理消息是掉电告警消息。
在一个实施例中,所述第一设备是OpenFlow交换机,所述第二设备是OpenFlow控制器。
与现有的解决方案相比,本公开的实施例可以提供以下优点:由于可以使用第一设备和第二设备之间的持久建立的面向连接的连接,因此与基于TCP的方案相比,速度更快;由于基于面向连接的连接,因此与UDP的方案相比,更加可靠;由于第一设备可以向两个或更多个第二设备传送网络管理消息,因此即使其中一个第二设备未能接收到网络管理消息,其它第二设备也能接收到网络管理消息,因此更加可靠;由于可以基于SSH或TLS,因此更加安全;在基于OpenFlow的SDN网络的情况下,可以容易地扩展(例如,可以通过对OpenFlow协议中的Error Message进行扩展以实现本公开的实施例)。
注意的是,以上描述的装置的组件中的任何组件可以被实现为硬件、软件模块或其组合。在软件模块的情况下,可以将它们包含在有形的计算机可读可记录存储介质上。所有软件模块(或其任何子集)可以在相同的介质上,或每个软件模块可以在不同的介质上。软件模块可以运行在硬件处理器上。使用运行在硬件处理器上的不同的软件模块来执行方法步骤。
另外,本公开的一个方面可以使用在通用计算机或工作站上运行的软件。此类实现方式可以使用例如处理器、存储器和例如由显示器和键盘形成的输入/输出接口。如本文中使用的词语“处理器”旨在包含任何处理设备,诸如处理器包含CPU(中央处理器)和/或其它形式的处理电路。此外,词语“处理器”可以指不只一个处理器。词语“存储器”旨在包含与处理器或CPU相关联的存储器,诸如RAM(随机访问存储器)、ROM(只读存储器)、固定存储器(例如,硬盘)、可移动存储设备(例如,磁盘)、闪速存储器等。处理器、存储器和输入/输出接口(诸如显示器和键盘)可以例如经由总线互连。
因此,计算机软件(其包含用于执行如本文所描述的本公开方法的指令和代码)可以存储在相关联的存储器设备中的一个或多个相关联的存储器设备中,并且当准备好被使用时,被部分地或全部地加载(例如加载到RAM中)并由CPU执行。此类软件可以包括但不限于固件、驻留软件、微码、以及诸如此类。计算机软件可以是使用任何编程语言编写而成的计算机软件,以及可以是以源代码、目标代码或在源代码和目标代码之间的中间代码的形式,诸如以部分编译的形式,或以任何其它期望的形式。
本公开的实施例可以采用包含在计算机可读介质中的计算机程序产品的形式,该计算机可读介质具有在其上包含的计算机可读程序代码。此外,可以使用任何组合的计算机可读介质。计算机可读介质可以是计算机可读信号介质或计算机可读存储介质。计算机可读存储介质可以是但不限于电、磁、电磁、光或其它存储介质,以及可以是可移动的介质或被固定地安装在装置和设备中的介质。此类计算机可读介质的非限制性示例是RAM、ROM、硬盘、光盘、光纤等。计算机可读介质可以例如是有形的介质,例如,有形的存储介质。
本文所使用的词语仅是出于描述特定实施例的目的,并且不是意在限制实施例。如本文所使用的,单数形式“一个”、“一种”和“所述”意味着也包含复数形式,除非上下文中清楚地另外指明。还应当理解的是,当在本文使用时,词语“包括”、“具有”、“包含”和/或“含有”指存在所阐明的特征、数字、步骤、操作、元素和/或组件,但是不排除存在或附加一个或多个其它特征、数字、步骤、操作、元素、组件和/或其组合。
还应当注意的是,在一些可替代实现方式中,所阐明的功能/动作可以不按附图中所阐明的顺序发生。如果需要,可以以不同的顺序和/或彼此并发地执行本公开中所描述的不同功能。此外,如果需要,上述功能中的一个或多个功能可以是非必须的或可以被组合。
尽管以上参照附图描述了本公开的实施例,但是本领域的技术人员可以理解以上描述仅为示例,而不是对本公开的限制。可以对本公开的实施例进行各种修改和变型,而仍落入本公开的精神和范围之内,本公开的范围仅由所附权利要求书确定。

Claims (18)

1.一种网络通信方法,其中所述网络包括一个或多个OpenFlow交换机以及一个或多个OpenFlow控制器,OpenFlow交换机使用面向连接的协议与至少一个OpenFlow控制器建立连接,所述一个或多个OpenFlow交换机与所述一个或多个OpenFlow控制器通过OpenFlow协议进行通信,所述方法包括:在OpenFlow交换机处,
将基于面向无连接协议传送的网络管理消息转换成OpenFlow消息;以及
在所建立的连接上,将所转换的消息发送给用于处理网络管理消息的至少一个OpenFlow控制器,
其中将基于面向无连接协议传送的网络管理消息转换成OpenFlow消息包括:
检测在所述OpenFlow交换机处的网络管理事件,其中所述网络管理事件是所述OpenFlow交换机自身的网络管理事件;
响应于所检测到的网络管理事件,构建与所述网络管理事件对应的基于面向无连接协议传送的网络管理消息;以及
将所构建的网络管理消息转换成OpenFlow消息。
2.根据权利要求1所述的方法,其中将基于面向无连接协议传送的网络管理消息转换成OpenFlow消息包括:
将接收的基于面向无连接协议传送的数据分组识别为网络管理消息;以及
将所识别的网络管理消息转换成OpenFlow消息。
3.根据权利要求2所述的方法,其中OpenFlow交换机运行OpenFlow协议,将接收的基于面向无连接协议传送的消息识别为网络管理消息包括:
通过OpenFlow协议,将接收的基于面向无连接协议传送的消息识别为网络管理消息。
4.根据权利要求1-3任一所述的方法,其中所述网络管理消息是简单网络管理协议消息。
5.根据权利要求1-3任一所述的方法,其中所述网络管理消息是掉电告警消息。
6.一种网络通信方法,其中所述网络包括一个或多个OpenFlow交换机以及一个或多个OpenFlow控制器,OpenFlow交换机使用面向连接的协议与至少一个OpenFlow控制器建立连接,所述一个或多个OpenFlow交换机与所述一个或多个OpenFlow控制器通过OpenFlow协议进行通信,所述方法包括:在OpenFlow控制器处,
在所建立的连接上,接收来自OpenFlow交换机的OpenFlow消息,其中通过所述OpenFlow交换机将基于面向无连接协议传送的网络管理消息转换成所述OpenFlow消息;以及
处理所述网络管理消息,
其中所述OpenFlow消息是由OpenFlow交换机通过以下步骤生成的:检测在所述OpenFlow交换机处的网络管理事件,响应于所检测到的网络管理事件,构建与所述网络管理事件对应的基于面向无连接协议传送的网络管理消息,将所构建的网络管理消息转换成OpenFlow消息,其中所述网络管理事件是所述OpenFlow交换机自身的网络管理事件。
7.根据权利要求6所述的方法,其中处理所述网络管理消息包括:
将所述网络管理消息转换为面向无连接协议传送的网络管理消息;以及
将所转换的网络管理消息传送给网络管理设备。
8.根据权利要求6或7所述的方法,其中所述网络管理消息是简单网络管理协议消息。
9.根据权利要求6或7所述的方法,其中所述网络管理消息是掉电告警消息。
10.一种网络通信装置,其中所述网络包括一个或多个OpenFlow交换机以及一个或多个OpenFlow控制器,OpenFlow交换机使用面向连接的协议与至少一个OpenFlow控制器建立连接,所述一个或多个OpenFlow交换机与所述一个或多个OpenFlow控制器通过OpenFlow协议进行通信,所述装置包括:
转换单元,其用于将基于面向无连接协议传送的网络管理消息转换成OpenFlow消息;以及
发送单元,其用于在所建立的连接上,将所转换的消息发送给用于处理网络管理消息的至少一个OpenFlow控制器,
其中,所述转换单元包括:
检测构件,其用于检测在所述OpenFlow交换机处的网络管理事件,其中所述网络管理事件是所述OpenFlow交换机自身的网络管理事件;
构建构件,其用于响应于所检测到的网络管理事件,构建与所述网络管理事件对应的基于面向无连接协议传送的网络管理消息;以及
第一转换构件,其用于所构建的网络管理消息转换成OpenFlow消息。
11.根据权利要求10所述的装置,其中所述转换单元包括:
识别构件,其用于将接收的基于面向无连接协议传送的数据分组识别为网络管理消息;以及
第二转换构件,其用于将所识别的网络管理消息转换成OpenFlow消息。
12.根据权利要求11所述的装置,其中OpenFlow交换机运行OpenFlow协议,所述识别构件还用于通过OpenFlow协议,将接收的基于面向无连接协议传送的消息识别为网络管理消息。
13.根据权利要求10-12任一所述的装置,其中所述网络管理消息是简单网络管理协议消息。
14.根据权利要求10-12任一所述的装置,其中所述网络管理消息是掉电告警消息。
15.一种网络通信装置,其中所述网络包括一个或多个OpenFlow交换机以及一个或多个OpenFlow控制器,OpenFlow交换机使用面向连接的协议与至少一个OpenFlow控制器建立连接,所述一个或多个OpenFlow交换机与所述一个或多个OpenFlow控制器通过OpenFlow协议进行通信,所述装置包括:
接收单元,其用于在所建立的连接上,接收来自OpenFlow交换机的OpenFlow消息,其中通过所述OpenFlow交换机将基于面向无连接协议传送的网络管理消息转换成所述OpenFlow消息;以及
处理单元,其用于处理所述网络管理消息,
其中所述OpenFlow消息是由OpenFlow交换机通过以下步骤生成的:检测在所述OpenFlow交换机处的网络管理事件,响应于所检测到的网络管理事件,构建与所述网络管理事件对应的基于面向无连接协议传送的网络管理消息,将所构建的网络管理消息转换成OpenFlow消息,其中所述网络管理事件是所述OpenFlow交换机自身的网络管理事件。
16.根据权利要求15所述的装置,其中所述处理单元包括:
转换单元,其用于将所述网络管理消息转换为面向无连接协议传送的网络管理消息;以及
传送单元,其用于将所转换的网络管理消息传送给网络管理设备。
17.根据权利要求15或16所述的装置,其中所述网络管理消息是简单网络管理协议消息。
18.根据权利要求15或16所述的装置,其中所述网络管理消息是掉电告警消息。
CN201610575523.8A 2016-07-21 2016-07-21 一种网络通信方法和装置 Active CN107645389B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610575523.8A CN107645389B (zh) 2016-07-21 2016-07-21 一种网络通信方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610575523.8A CN107645389B (zh) 2016-07-21 2016-07-21 一种网络通信方法和装置

Publications (2)

Publication Number Publication Date
CN107645389A CN107645389A (zh) 2018-01-30
CN107645389B true CN107645389B (zh) 2021-10-29

Family

ID=61109634

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610575523.8A Active CN107645389B (zh) 2016-07-21 2016-07-21 一种网络通信方法和装置

Country Status (1)

Country Link
CN (1) CN107645389B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108683696A (zh) * 2018-03-27 2018-10-19 上海宽带技术及应用工程研究中心 基于状态机的sdn控制器中交换机状态管理方法及系统
KR102592206B1 (ko) * 2018-06-25 2023-10-20 현대자동차주식회사 차량 내 sdn 기반의 네트워크 관리 장치 및 그 제어 방법
CN111130821B (zh) * 2018-10-30 2023-03-31 中国移动通信有限公司研究院 一种掉电告警的方法、处理方法及装置
CN110535682A (zh) * 2019-07-19 2019-12-03 浪潮思科网络科技有限公司 一种sdn网络中设备告警信息的分析装置及方法
US11853040B2 (en) * 2021-06-28 2023-12-26 Rockwell Automation Technologies, Inc. Proxy system for system log messages

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1350385A (zh) * 2001-10-15 2002-05-22 东方通信股份有限公司 简单网络管理协议中报文可靠传输的方法
CN105516116A (zh) * 2015-12-02 2016-04-20 浙江工商大学 一种基于ForCES控制件控制OpenFlow交换机的系统及协议转换方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3525869B2 (ja) * 2000-07-12 2004-05-10 日本電気株式会社 パケット通信システムの接続装置及び方法
WO2003047213A1 (de) * 2001-11-29 2003-06-05 Siemens Aktiengesellschaft Funkkommunikationssystem und verfahren zu dessen betrieb
US20140006638A1 (en) * 2012-06-29 2014-01-02 Alan Kavanagh Method and a network node, for use in a data center, for routing an ipv4 packet over an ipv6 network

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1350385A (zh) * 2001-10-15 2002-05-22 东方通信股份有限公司 简单网络管理协议中报文可靠传输的方法
CN105516116A (zh) * 2015-12-02 2016-04-20 浙江工商大学 一种基于ForCES控制件控制OpenFlow交换机的系统及协议转换方法

Also Published As

Publication number Publication date
CN107645389A (zh) 2018-01-30

Similar Documents

Publication Publication Date Title
CN107645389B (zh) 一种网络通信方法和装置
CN109391560B (zh) 网络拥塞的通告方法、代理节点及计算机设备
RU2562438C2 (ru) Сетевая система и способ управления сетью
US9467363B2 (en) Network system and method of managing topology
US9515868B2 (en) System and method for communication
US20160269289A1 (en) Communication system, communication device, controller, and method and program for controlling forwarding path of packet flow
EP3188450B1 (en) Reducing false alarms when using network keep-alive messages
US10819659B2 (en) Direct replying actions in SDN switches
CN112751733B (zh) 一种链路检测方法、装置、设备、系统及交换机
CN111130982B (zh) 报文转发方法、装置、网关设备及可读存储介质
CN108259261B (zh) 路径探测方法和装置
US10250528B2 (en) Packet prediction in a multi-protocol label switching network using operation, administration, and maintenance (OAM) messaging
CN101540772A (zh) 一种深度报文检测设备及其通信方法
CN102739462B (zh) 一种测试报文的发送方法以及装置
CN109039738B (zh) Dcs网络设备的配置与监控方法、装置、维护节点和终端
EP3410637B1 (en) Information transmission method, gateway, and controller
WO2012070274A1 (ja) 通信システムおよびネットワーク障害検出方法
JP2017050708A (ja) 通信システム、制御装置、スイッチ、通信方法及びプログラム
CN110011820B (zh) 一种系统间的连接方法、设备及计算机存储介质
KR101544106B1 (ko) 단일 이더넷 포트를 사용한 sdn 접속 방법
JP2013115733A (ja) ネットワークシステム、及びネットワーク制御方法
US11563640B2 (en) Network data extraction parser-model in SDN
KR101578622B1 (ko) 라우팅 시스템의 장애를 처리하는 방법
KR20160063155A (ko) Sdn 기반의 에러 탐색 네트워크 시스템
CN117834425A (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