CN104737519A - 用于软件定义网络(sdn)的通用网络控制器的***和设备 - Google Patents
用于软件定义网络(sdn)的通用网络控制器的***和设备 Download PDFInfo
- Publication number
- CN104737519A CN104737519A CN201380055049.0A CN201380055049A CN104737519A CN 104737519 A CN104737519 A CN 104737519A CN 201380055049 A CN201380055049 A CN 201380055049A CN 104737519 A CN104737519 A CN 104737519A
- Authority
- CN
- China
- Prior art keywords
- message
- switch
- version
- network
- standard
- 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
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/02—Standardisation; Integration
- H04L41/0213—Standardised network management protocols, e.g. simple network management protocol [SNMP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/02—Standardisation; Integration
- H04L41/0226—Mapping or translating multiple network management protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/40—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using virtualisation of network functions or resources, e.g. SDN or NFV entities
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
一种软件定义网络(SDN)中的通用网络控制器,其基于不同且甚至不兼容的Open Flow(OF)标准版本通过混合交换机来控制网络,所述通用网络控制器包括:第一收发器,所述第一收发器连接到包括第一OF标准版本的第一OF交换机上,用于从所述第一OF交换机接收消息并且向所述第一OF交换机传输消息;第二收发器,所述第二收发器连接到包括第二OF标准版本的第二OF交换机上,用于从所述第二OF交换机接收消息并且向所述第二OF交换机传输消息,其中所述第一OF标准版本与所述第二OF标准版本不同,并且其中所述第一OF标准版本与所述第二OF标准版本不兼容;以及处理器,所述处理器耦合到所述第一收发器和所述第二收发器上并且用于控制所述第一OF交换机和所述第二OF交换机。
Description
相关申请案的交叉申请
本发明要求由罗敏(Min Luo)等人2013年3月13日递交的发明名称为“用于软件定义网络(SDN)的通用网络控制器的***和设备(System and Apparatus of Generalized Network Controller for a SoftwareDefined Network(SDN))”的第13/801,531号美国非临时专利申请案的在先申请优先权,该美国非临时专利申请案要求由罗敏(Min Luo)等人2012年10月22日递交的发明名称为“用于软件定义网络(SDN)的通用网络控制器的***和设备(System and Apparatus of Generalized NetworkController for a Software Defined Network(SDN))”的第61/716,985号美国临时专利申请案的在先申请优先权,该在先申请的内容好像全文复制一般以引入的方式并入本文本中。
关于由联邦政府赞助的研究或开发的声明
不适用。
参考缩微胶片附录
不适用。
技术领域
无
背景技术
软件定义网络(SDN)是一种新型的网络架构,其中控制平面与数据面隔开并实施为软件应用程序。这种架构允许网络管理人员对网络流量进行逻辑上可编程的集中式控制而不需要物理接入到网络的硬件装置。因此,SDN将网络控制(学习并转发决策)与网络拓扑结构(接合点、接口、以及它们如何对等)解耦。将网络控制与网络拓扑结构解耦基于集中收集和管理的全局网络拓扑结构、状态、以及应用或通信业务流模式实现了更好的路由决策以及资源利用。SDN可以简化网络操作,其中集中式控制器可以预指定备用路由路径并且自动地配置网络设备,并且每身份全局定义不必匹配到每一和每一个接口位置。实现将网络控制与网络拓扑结构解耦的基本方法是通过在网络边缘处应用全局认知且经拓扑解耦的软件控制。假设传统的拓扑耦合的桥接和路由驱动网络的核心,使得可以保持因特网协议(IP)网络的可扩展性、互操作性、高可用性以及延展性。
在SDN的一种配置中,网络控制平面硬件以物理方式与数据转发平面硬件解耦,例如,网络交换机转发数据包并且单独的服务器或控制器操作网络控制平面。SDN可能需要一些方法以用于控制平面与数据面的通信。用以实现此通信的一种机制是通过OpenFlow(OF),OF是用于控制网络交换机的标准协议或接口。然而,随着SDN迅速发展,这些标准变得不兼容,从而对于每个版本的标准需要专用的网络控制器。例如,OpenFlow 1.2是不与OpenFlow 1.0后向兼容的。因此,可能需要OpenFlow1.0控制器来控制OpenFlow 1.0交换机和基于OpenFlow 1.0的网络。相对应地,可能需要OpenFlow 1.2控制器来控制OpenFlow 1.2交换机和基于OpenFlow 1.2的网络。这可能因协议而导致网络分片,对潜在消费者和电信产业而言这会变成SDN的数据网络中的严重问题。
发明内容
在一个实施例中,本发明包含SDN中的通用网络控制器,所述通用网络控制器包括第一收发器,所述第一收发器连接到包括第一OF标准版本的第一OF交换机上,用于从第一OF交换机接收消息并且向第一OF交换机传输消息;第二收发器,所述第二收发器连接到包括第二OF标准版本的第二OF交换机上,用于从第二OF交换机接收消息并且向第二OF交换机传输消息,其中第一OF标准版本与第二OF标准版本不同;以及处理器,所述处理器耦合到第一收发器和第二收发器上并且用于控制第一OF交换机和第二OF交换机。
在另一实施例中,本发明包含用于在SDN中的通用网络控制器中控制对应于不同OF标准版本的多个OF交换机的方法,所述方法包括:在接收器处从OF交换机中的第一者接收传入消息,其中OF交换机中的至少两者对应于OF标准的不同的非兼容版本;用处理器将传入消息转换为版本无关的消息;用处理器处理版本无关的消息以产生到OF交换机中的第二者的网络管理传出消息;并且将传出消息转换为与同OF交换机中的第二者兼容的版本对应的版本相关消息。
在另一实施例中,本发明包含可由SDN中的网络控制器中的处理器执行的计算机程序产品,所述计算机程序产品包括存储在非暂时性计算机可读媒体上的计算机可执行指令,所述指令当由处理器执行时使得网络控制器执行以下操作:从OF交换机中的第一者接收传入消息,其中OF交换机中的至少两者对应于OF标准的不同的非兼容版本;将传入消息转换为版本无关的消息;处理版本无关的消息以产生到OF交换机中的第二者的网络管理传出消息;以及将传出消息转换为与同OF交换机中的第二者兼容的版本对应的版本相关消息。
从结合附图和所附权利要求书进行的以下详细描述将更清楚地理解这些和其它特征。
附图说明
为了更完整地理解本发明,现在参考以下结合附图和详细描述进行的简要描述,其中相同参考标号表示相同部分。
图1是根据所揭示实施例的SDN的示意图。
图2是根据所揭示实施例的通用网络控制器的示意图。
图3是根据所揭示实施例的核心控制器模块的示意图。
图4是图示根据所揭示实施例的用于OF消息的消息标准化方案的示意图。
图5是根据所揭示实施例的用于从包括至少两个不同版本的OF交换机的SDN网络中的通用网络控制器接收、转换、处理消息并向所述控制器发送消息的方法的流程图。
图6是图示网络单元的实施例的示意图,网络单元可以是通过网络传送且处理数据的任何装置。
具体实施方式
最初应理解,尽管下文提供一个或一个以上实施例的说明性实施方案,但可使用任何数目的技术,不管是当前已知还是现有的,来实施所揭示的***和/或方法。本发明决不应限于下文所说明的所述说明性实施方案、图式和技术,包含本文所说明并描述的示范性设计和实施方案,而是可在所附权利要求书的范围以及其均等物的完整范围内修改。
为了克服伴随基于IP的网络的复杂性和可管理性问题,SDN自从其在2008年被引入之后作为潜在的方案出现,并且已经吸引了来自学术界和工业界的研究和开发(R&D)兴趣,尤其是在最近两年。SDN将数据转发能力与路由、资源和其它管理需要解耦,同时分布在IP网络中的所有此类管理或控制功能在逻辑上集中到控制器中。为了实现SDN,已经建立新的标准OF协议来指定在控制器与交换机之间的适当的相互作用。使用全局网络拓扑结构和状态、动态通信业务流/容量信息,控制器可以对如何通过网络分配网络资源和路由不同的应用/信息流做出更好的且全局优化的决策。
自从第一OF标准(例如,OF 1.0)在2009年首次公开之后,OF标准随着SDN技术的进步一直在迅速发展。为增强灵活性、可靠性以及高级的网络能力,例如OF 1.1和OF 1.2等在OF 1.0之后的后续标准发布除例如支持IP版本6(IPv6)和多协议标记交换(MPLS)等其它功能特征之外,引入了许多核心功能,例如多流表和多控制器。这些所需的新能力在它们更新的复杂性以及对于有效***结构和实施的难度方面付出一定代价,而不管OF控制器或交换机的版本如何。
OF 1.1和OF 1.2中的改变如此显著以至于开放网络基金会(ONF)声明OF 1.2/1.1与OF 1.0不兼容。针对OF标准的每个版本设计网络控制器应该是可行的。然而,运行于控制平面上的许多不兼容的控制器可能导致网络管理如噩梦般困难。此外,不兼容的协议、交换机以及控制器还可能导致网络分片。
由于OF 1.2不仅不与OF 1.0兼容,而且在技术上更难以针对交换机以及控制器两者来设计和实施,因此目前几乎所有厂商仅提供OF 1.0交换机。因此,早期采用者可能不得不使用OF 1.0技术,同时等待OF 1.2或更新版本产品的可用性。如果这两种技术保持不兼容,那么一旦基于OF 1.2或更新标准版本的产品变得可用,早期采用者将不得不再次投资并舍弃他们基于OF 1.0的早期基础设施。
本文所揭示的是一种通用网络控制器,所述通用网络控制器可以用支持不同OF标准版本的混合交换机发现并管理网络,由此消除或实质上减轻由不兼容的网络控制平面导致的分段网络“岛”的可能性。以此方式,早期采用者的投资将不会浪费,并且鼓励更多公司开始测试并将OF技术投入操作。此外,这使得逻辑上集中式SDN控制器可能控制整个网络,使得可以实现SDN的全部益处。本文所描述的通用网络控制器是基于抽象网络控制数据模型,其可以基于在其中对网络无关的消息进行处理的所述数据模型将版本特定的消息的语义映射到版本无关的消息和语义中。所述通用网络控制器可以产生版本无关的消息并且将所述消息转换为与它们要到达的网络交换机的版本兼容的格式。可以在所述数据模型的版本无关的环境中建模不同标准的不同功能。所揭示的通用网络控制器可以控制基于混合或复合交换机的数据网络,其中交换机符合不同的OF标准。所揭示的通用网络控制器可以提供拓扑发现和版本协商以满足此类混合网络元件之间的互操作性的需要。
所揭示的通用网络控制器和控制器处理机制可以支持标准化、归一化以及转换,这可以使得一个所述通用网络控制器能够有效且高效地处理来自OF 1.2和OF 1.0交换机两者以及其它标准版本的OF交换机的消息,其中来自OF 1.2交换机的消息与来自OF 1.0交换机或其它交换机的消息可以是不兼容的。所揭示的抽象网络控制数据模型机制可以提供具有公共消息属性的足够抽象化的工厂模式以归纳消息定义,同时使来自不同交换机类型的各消息能够经不同地定义和实例化。所述通用网络控制器中的许多控制器模块和逻辑可以能够仅处理标准化的公共消息,而一些模块可以仅需要通过归一化和转换来处理OF 1.0或OF 1.2消息的特定不兼容部分。所揭示的机制可以实质上将管理和控制SDN环境中的不同版本类型的OF交换机涉及的开销降到最低。但最重要的是,所述通用控制器可以控制整个SDN并且消除由不兼容的网络控制平面协议导致的网络分片问题。
图1是根据所揭示实施例的SDN 100的示意图。SDN 100可以包括网络控制器102、多个OF交换机104以及多个主机106。控制路径由虚线表示并且数据路径由实线表示。***配置、管理信息以及路由表信息可以经由控制路径在网络控制器102与OF交换机104之间互换。数据包经由数据路径在OF交换机104之间转发。网络控制器102可以是用于控制OF交换机104的通用网络控制器。网络控制器102可以用于执行控制路径或控制平面功能,例如绘制网络映象和定义路由表中的信息,路由表定义用传入消息包做什么。网络控制器102可以用于控制平面的管理和控制功能,这可以包含路由和资源管理。OF交换机104可以是根据OF标准通过网络100接收和传输数据的任何装置。OF交换机104中的一些可以对应于与OF交换机104中的其它者的OF标准不同的OF标准并且根据所述不同OF标准进行配置。此外,不同OF标准可以与由其它OF交换机104所用的其它OF标准不兼容。例如,交换机104a可以支持OF标准的1.0版本但是不支持后续版本,而交换机104b可以支持OF标准的1.2版本但是不支持早期的版本。
OF控制器102可以从OF交换机104接收消息并且向所述OF交换机传输消息。传入消息中的一些或传入消息中的部分可以转换为标准无关的格式(例如,与OF 1.0或OF 1.2无关的格式),以用来通过OF控制器102中的一些模块处理。标准无关的格式可以基于抽象网络控制数据模型,该模型提供各种标准格式的属性或特征的抽象化。通用网络控制器102可以经由多个OF协议中的任一者与OF交换机104相互作用。网络控制器102可以确定网络100的全局网络拓扑结构。使用全局网络拓扑结构、状态信息、动态通信业务流/容量信息以及其它网络状态信息,网络控制器102可以对如何通过网络100分配资源和路由不同的应用/信息流做出决策。
图2是根据所揭示实施例的通用网络控制器200的示意图。网络控制器200可以实施为网络控制器102。网络控制器200可以处理来自不同类型的OF交换机的消息,其中OF交换机中的一些根据一个OF标准或版本操作且其它OF交换机根据一个或多个其它OF标准或版本操作。如本文所使用的标准和版本可以可互换地使用。例如,OF交换机中的一些可以根据OF版本1.2操作而其它OF交换机可以根据OF版本1.0操作。
网络控制器200可以包括消息分析器202、消息归一化器204、一个或多个核心控制器模块206以及消息转换器208。消息分析器202可以解译传入消息的版本,例如OF版本1.0或1.2。消息归一化器204可以从原始消息提取来自两个或更多个OF版本的特征,并且在网络控制器200中的一个或多个相关模块中创建版本或标准无关的消息。版本或标准无关的消息可以包括标准化内部消息格式或归一化消息。核心控制器模块206可以分类为与OF版本无关或与OF版本相关。版本无关的模块可以用与原始消息被接收的版本无关的统一方式来处理标准化内部消息。版本相关的模块可以考虑原始消息的版本并处理版本相关的消息。图3提供核心控制模块206的更多细节。消息转换器208可以根据经处理消息构成或构造新的出站消息。可以根据消息要到达的OF交换机的版本构造新的出站消息。因此,出站消息可以是版本相关的,例如,由消息可被传输到的特定OF交换机可读且可用的。
图3是根据所揭示实施例的核心控制器模块300的示意图。核心控制器模块300可以实施为图2中的核心控制器模块206。核心控制器模块300可以包括路由模块302、拓扑模块304、网络信息库(NIB)306、连接模块308、交换机管理模块310、装置管理模块312以及链路发现模块314。在其它实施例中,核心控制器模块300可以包含来自图3中所描绘的模块的更多、更少和/或不同的模块。路由模块302可以确定从SDN网络(例如,图1中的SDN网络100)中的进入OF交换机穿过SDN网络到外出OF交换机的路径。该路径可以包含在进入OF交换机与外出OF交换机之间的一个或多个中间OF交换机。拓扑模块304可以确定SDN网络的网络拓扑结构。网络拓扑结构可以包括在SDN网络中的各种OF交换机与OF交换机的版本或类型之间的连接。网络拓扑结构可以包含物理拓扑结构和/或逻辑拓扑结构。网络的逻辑拓扑结构可以包括关于各种部件在网络中的布局的信息,包含例如装置位置和电缆安装。逻辑拓扑结构可以显示数据如何通过一些虚拟化形式在SDN网络内流转而不管物理设计如何。
NIB 306可以是数据库、数据表或在存储器中或在文件***中的其它数据存储装置,其可以存储从一些特定网络源或到特定目标的路线的列表。NIB 306可以包含与链路或此类存储的路线相关联的度量(例如,距离、容量、使用成本等)。NIB 306可以包括关于SDN网络的拓扑结构的信息。连接模块308可以确定连接哪些OF交换机以及在OF交换机之间的连接类型。交换机管理模块310可以管理OF交换机的交换功能。装置管理模块312可以管理连接到OF交换机上的主机。管理OF交换机可以包含发布路由指令、提供软件和/或固件更新或重新启动OF交换机等。链路发现模块314可以确定何时创建和/或破坏在各种OF交换机之间的逻辑或物理链路。
为了实现消息类型的一致处理,定义通用消息类型OF_Type,并且版本特定的OF_Type10和OF_Type12被定义为OF_Type的子类,如图4中所描绘。所有三种消息类型都是可实例化的。
图4是图示根据所揭示实施例的用于OF消息的消息标准化方案400的示意图。消息标准化方案400可以使各种OF消息标准化或将各种OF消息转换为可以由版本无关的核心控制器模块处理的单一消息格式,版本无关的核心控制器模块例如图2中的核心控制器模块206或图3中的核心控制器模块300。单一消息格式可以被定义为OF_Message 402。OF_Message10404(其可以对应于OF版本1.0)以及OF_Message12406(其可以对应于OF版本1.2)可以转换为OF_Message 402。其它消息类型,例如OF_Packetln 408、OF_PortStatus 410以及OF_Error 412,如OF组织的OF规范的修订版1.0和修订版1.2中所定义,也可以转换为OF_Message402以用于处理。OF_Packetln 408可以是来自OF交换机的第一数据包。OF交换机可以已经接收来自源节点的OF_Packetln 408,且可能不能发现关于如何处理OF_Packetln 408和属于相同流的其它数据包的适当指令。OF_Packetln 408可以被发送到网络控制器以确定适当的指令和处理决策。OF_PortStatus 410可以是当端口状态改变时从OF交换机到网络控制器的消息,例如添加端口、修改端口和/或从数据路径移除端口。OF_Error 412可以是当出现问题时OF交换机传输到OF控制器的消息。这些消息404、406、408、410、412的转换器可以是图2中示出的且在上文所描述的消息归一化器204。OF_Message 402可以被定义为所揭示的抽象网络控制数据模型中的任何OF消息的最高抽象类。OF_Message10404和OF_Message12406两者可以是OF_Message 404的子类。也可以包含对应于其它OF版本或标准的其它消息并且这些消息可以是OF_Message 404的子类。可以使用工厂模式来管理任何特定版本的所有OF消息的实例化,同时可以使用接口OF_Message.getType()来获得所有个别模块的公共OF_Type。在抽象化OF消息并且可获得用来管理每种类型消息的生命周期的一般机制之后,可以相应地延长匹配和作用。所属领域的一般技术人员应了解,上文所论述的OF消息可以符合OF规范的其它版本。
表1示出根据所揭示实施例的各种消息、相对应的消息类型以及模块。
表1
到通用网络控制器的传入消息可以包含PacketIn消息、PortStatus消息以及错误信息。这些消息的消息类型可以是OF_Type(例如,这些消息可以转换为版本无关的消息)并且处理这些消息的模块可以是任何或所有相关模块。到网络控制器的传入消息还可以包含FlowRemoved,取决于消息是来自使用OF版本1.0的OF交换机还是使用OF版本1.2的OF交换机,FlowRemoved可以是OF_Type10或OF_Type12中的任一者。可以处理这些消息的模块可以包含路由模块。
来自所述通用网络控制器的传出消息可以包含PacketOut消息,其可以包括OF_Type的消息类型并且可以通过链路发现模块和/或路由模块处理。来自控制器的传出消息还可以包含FlowMod、GroupMod以及TableMod,并且这些消息中的每一者可以是OF_Type10或OF_Type12中的任一者且可以通过路由模块处理。
握手消息(例如,用来宣布、进行配置和连接装置的消息)可以包含问候、FeatureRequest/Reply、ConfigureRequest/Reply、StatsuRequest/Reply、RoleRequest/Reply、以及SetConfig。这些消息中可以是OF_Type10或OF_Type12中的任一者且可以通过连接模块和/或交换机管理模块处理。
图5是根据所揭示实施例的用于从包括至少两个不同版本的OF交换机的SDN网络中的通用网络控制器接收、转换、处理消息并向所述控制器发送消息的方法500的流程图,通用网络控制器例如图1中的OF网络控制器102或图2中的网络控制器200。方法500可以在块502处开始,此处所述通用网络控制器可以从OF交换机接收消息。在块504处,通用网络控制器可以确定OF消息的版本。在块506处,通用网络控制器可以将OF消息的至少一部分转换为通用的版本无关的消息。在块508处,通用网络控制器可以确定将通用的版本无关的消息和/或原始的版本相关的消息所发送到的以供处理的模块。在块510处,通用网络控制器可以将通用的版本无关的消息发送到适当的版本无关的模块上以用于处理。在块512处,通用网络控制器可以在必要时或视需要将原始的版本相关的消息发送到一个或多个版本相关的模块上。在块514处,通用网络控制器可以基于处理构造传出消息。在块516处,通用网络控制器可以将传出消息转换为与消息要到达的OF交换机的版本对应的版本相关消息。在块518处,通用网络控制器可以将版本相关的消息传输到OF交换机,在此之后,方法500可以结束。
图7图示网络单元600的实施例,所述网络单元可以是通过网络传送且处理数据的任何设备,具有足够的处理功率、存储器资源以及处理置于其上的必需工作量的网络吞吐能力。举例来说,网络单元600可以对应于上文所描述的OF交换机104或控制器102。网络单元600可以包括一个或多个进入端口或单元610,其耦合到接收器(Rx)612上,用于从其它网络组件接收信号和帧/数据。网络单元600可以包括逻辑单元620来确定向哪些网络组件发送数据。逻辑单元620可以实施为硬件、软件或两者。逻辑单元620可以实施为一个或多个中央处理单元(CPU)芯片、或可以是一个或多个专用集成电路(ASIC)的一部分。网络单元600还可以包括一个或多个外出端口或单元630,其耦合到发射器(Tx)632上,用于向其它网络组件发射信号和帧/数据。逻辑单元620还可以实施或支持上文所描述的所述通用网络控制器方法和方案。网络单元600的组件可以如图6中所示布置。
逻辑单元620可以与包含辅助存储装置604、只读存储器(ROM)606以及随机存取存储器(RAM)608的存储器装置通信。辅助存储装置604通常由一个或多个磁盘驱动器或磁带驱动器组成,并且用于数据的非易失性存储且在RAM 608不足以能容纳所有工作数据时用作溢出数据存储设备。辅助存储装置604可以用于存储程序,当选择此些程序来执行时,将所述程序加载到RAM 608中。ROM 606用于存储在程序执行期间读取的指令以及可能的数据。ROM 606是非易失性存储器设备,其通常具有相对于辅助存储装置604的较大存储器容量而言较小的存储器容量。RAM608用以存储易失性数据并且可能存储指令。对ROM 606和RAM 608两者的存取通常比对辅助存储装置604的存取快。
揭示至少一个实施例,且所属领域的技术人员对所述实施例和/或所述实施例的特征的变化、组合和/或修改在本发明的范围内。因组合、整合和/或省略所述实施例的特征而产生的替代实施例也在本发明的范围内。在明确陈述数值范围或限制的情况下,应将此些表达范围或限制理解为包含属于明确陈述的范围或限制内的类似量值的重复范围或限制(例如,从约1到约10包含2、3、4等;大于0.10包含0.11、0.12、0.13等)。举例来说,每当揭示具有下限Rl和上限Ru的数值范围时,具体是揭示属于所述范围的任何数字。明确地说,属于所述范围内的随后的数字是具体揭示的:R=Rl+k×(Ru-Rl),其中k是伴有1%增量的从1%到100%变化的变量,即,k是1%、2%、3%、4%、7%、…、70%、71%、72%、…、97%、96%、97%、98%、99%或100%。此外,还特定揭示由如上文所定义的两个R数字定义的任何数值范围。除非另行说明,否则术语“约”的使用意味着后续数字的±10%。相对于权利要求的任一元素使用术语“任选地”意味着所述元素是需要的,或者所述元素是不需要的,两种替代方案均在所述权利要求的范围内。使用例如包括、包含和具有等较广术语应被理解为提供对例如由……组成、基本上由……组成以及大体上由……组成等较窄术语的支持。因此,保护范围不受上文所陈述的描述限制,而是由所附权利要求书界定,所述范围包含所附权利要求书的标的物的所有均等物。每一和每个权利要求作为进一步揭示内容并入说明书中,且所附权利要求书是本发明的实施例。所述揭示内容中的参考的论述并不是承认其为现有技术,尤其是具有在本申请案的在先申请优先权日期之后的公开日期的任何参考。本发明中所引用的所有专利、专利申请案和公开案的揭示内容特此以引用的方式并入本文中,其提供补充本发明的示范性、程序性或其它细节。
虽然本发明中已提供若干实施例,但应理解,在不脱离本发明的精神或范围的情况下,所揭示的***和方法可以许多其它特定形式来体现。本发明的实例应被视为说明性的而非限制性的,且本发明不限于本文所给出的细节。举例来说,各种元件或组件可在另一***中组合或集成,或某些特征可省略或不实施。
另外,在不脱离本发明的范围的情况下,各种实施例中描述和说明为离散或单独的技术、***、子***和方法可与其它***、模块、技术或方法组合或整合。展示或论述为彼此耦合或直接耦合或通信的其它项目也可以电方式、机械方式或其它方式通过某一接口、装置或中间组件间接地耦合或通信。改变、替代和更改的其它实例可由所属领域的技术人员确定,且可在不脱离本文所揭示的精神和范围的情况下作出。
Claims (20)
1.一种软件定义网络(SDN)中的通用网络控制器,其包括:
第一收发器,所述第一收发器连接到包括第一OF标准版本的第一Open Flow(OF)交换机上,用于从所述第一OF交换机接收消息并且向所述第一OF交换机传输消息;
第二收发器,所述第二收发器连接到包括第二OF标准版本的第二OF交换机上,用于从所述第二OF交换机接收消息并且向所述第二OF交换机传输消息,其中所述第一OF标准版本与所述第二OF标准版本不同,并且其中所述第一OF标准版本与所述第二OF标准版本不兼容;以及
处理器,所述处理器耦合到所述第一收发器和所述第二收发器上并且用于控制所述第一OF交换机和所述第二OF交换机。
2.根据权利要求1所述的通用网络控制器,其进一步包括用于解译传入消息的版本的消息分析器。
3.根据权利要求2所述的通用OF控制器,其进一步包括消息归一化器,所述消息归一化器耦合到所述消息分析器上并且用于从所述传入消息提取特征且构造版本无关的传入消息。
4.根据权利要求3所述的通用OF控制器,其进一步包括版本无关的控制器模块以及抽象网络控制数据模型,其耦合到所述消息归一化器上且用于处理所述版本无关的传入消息。
5.根据权利要求4所述的通用网络控制器,其中所述版本无关的控制器模块包括路由模块、拓扑模块、连接模块、交换机管理模块、设备管理模块、链路发现模块以及网络信息库(NIB)中的至少一者。
6.根据权利要求1所述的通用网络控制器,其中所述处理器用于构造用于数据包的穿过所述SDN的路径,其中所述路径包括:包括所述第一OF标准版本的OF交换机以及包括所述第二OF标准版本的OF交换机。
7.根据权利要求4所述的通用OF控制器,其进一步包括耦合到所述版本无关的控制器模块上的消息转换器,其中所述消息转换器用于为所述第一OF交换机和所述第二OF交换机中的一者构造版本特定的出站消息。
8.一种用于在软件定义网络(SDN)中的网络控制器中控制对应于不同OF标准版本的多个Open Flow(OF)交换机的方法,其包括:
在接收器处接收来自所述OF交换机中的第一者的传入消息,其中所述OF交换机中的至少两者对应于OF标准的不同的非兼容版本;
用处理器将所述传入消息转换为版本无关的消息;
用所述处理器处理所述版本无关的消息以产生到所述OF交换机中的第二者的网络管理传出消息;
将所述传出消息转换为与同所述OF交换机中的第二者兼容的版本对应的版本相关消息;以及
抽象化消息类型OF_Type以及它们的版本相关的子类OF_Type10和OF_Type12,以及还有抽象化为OF_Message的消息类别和版本相关的子类OF_Message10和OF_Message12的消息类别。
9.根据权利要求8所述的方法,其进一步包括用所述处理器确定所述传入消息的所述版本。
10.根据权利要求8所述的方法,其中处理包括确定通过所述SDN的数据包的路由路径,其中所述路由路径包括第一交换机和第二交换机,所述第一交换机包括第一版本的OF标准且所述第二交换机具有第二版本的OF标准,并且其中所述第一版本与所述第二版本不同。
11.根据权利要求8所述的方法,其中处理包括确定所述SDN网络的拓扑结构。
12.根据权利要求8所述的方法,其中处理包括交换机管理。
13.根据权利要求8所述的方法,其中处理包括装置管理。
14.根据权利要求8所述的方法,其中处理包括链路发现。
15.根据权利要求8所述的方法,其中所述第一OF交换机和所述第二OF交换机是相同的OF交换机。
16.一种可由软件定义网络(SDN)中的网络控制器中的处理器执行的计算机程序产品,所述计算机程序产品包括存储在非暂时性计算机可读媒体上的计算机可执行指令,所述指令当由所述处理器执行时使得所述网络控制器执行以下操作:
接收来自多个Open Flow(OF)交换机中的第一者的传入消息,其中所述OF交换机中的至少两者对应于OF标准的不同的非兼容版本;
将所述传入消息转换为版本无关的消息;
处理所述版本无关的消息以产生到所述OF交换机中的第二者的网络管理传出消息;以及
将所述传出消息转换为与同所述OF交换机中的第二者兼容的版本对应的版本相关消息。
17.根据权利要求16所述的计算机程序产品,其进一步包括存储在所述非暂时性计算机可读媒体上的指令,所述指令当由所述处理器执行时使得所述OF控制器确定通过所述SDN的数据包的路由路径,其中所述路由路径包括:包括OF标准的第一版本的第一交换机和具有OF标准的第二版本的第二交换机,其中所述第一版本与所述第二版本不同。
18.根据权利要求16所述的计算机程序产品,其进一步包括存储在所述非暂时性计算机可读媒体上的指令,所述指令当由所述处理器执行时使得所述OF控制器确定所述传入消息的所述版本。
19.根据权利要求16所述的计算机程序产品,其中所述第一OF交换机和所述第二OF交换机是相同的OF交换机。
20.根据权利要求16所述的计算机程序产品,其进一步包括存储在所述非暂时性计算机可读媒体上的指令,所述指令当由所述处理器执行时使得所述网络控制器执行确定所述SDN网络的拓扑结构、交换机管理功能、装置管理功能以及链路发现功能中的至少一者。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201261716985P | 2012-10-22 | 2012-10-22 | |
US61/716,985 | 2012-10-22 | ||
US13/801,531 | 2013-03-13 | ||
US13/801,531 US8982727B2 (en) | 2012-10-22 | 2013-03-13 | System and apparatus of generalized network controller for a software defined network (SDN) |
PCT/CN2013/085638 WO2014063605A1 (en) | 2012-10-22 | 2013-10-22 | System and apparatus of generalized network controller for a software defined network (sdn) |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104737519A true CN104737519A (zh) | 2015-06-24 |
CN104737519B CN104737519B (zh) | 2018-04-20 |
Family
ID=50485236
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201380055049.0A Active CN104737519B (zh) | 2012-10-22 | 2013-10-22 | 用于软件定义网络(sdn)的通用网络控制器的***和设备 |
Country Status (4)
Country | Link |
---|---|
US (1) | US8982727B2 (zh) |
EP (1) | EP2888858B1 (zh) |
CN (1) | CN104737519B (zh) |
WO (1) | WO2014063605A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110290092A (zh) * | 2018-03-19 | 2019-09-27 | 中国科学院沈阳自动化研究所 | 一种基于可编程交换机的sdn网络配置管理方法 |
CN111684439A (zh) * | 2018-02-06 | 2020-09-18 | 思科技术公司 | 网络保证数据库版本兼容性 |
Families Citing this family (34)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8924787B2 (en) * | 2012-01-24 | 2014-12-30 | Nec Laboratories America, Inc. | Network debugging |
US8982727B2 (en) * | 2012-10-22 | 2015-03-17 | Futurewei Technologies, Inc. | System and apparatus of generalized network controller for a software defined network (SDN) |
US9559897B2 (en) | 2012-12-21 | 2017-01-31 | Brocade Communications Systems, Inc. | Device ID assignment in a system of devices |
US9276827B2 (en) * | 2013-03-15 | 2016-03-01 | Cisco Technology, Inc. | Allocating computing resources based upon geographic movement |
US9853889B2 (en) | 2013-05-20 | 2017-12-26 | Brocade Communications Systems, Inc. | Broadcast and multicast traffic reduction in stacking systems |
US9313102B2 (en) | 2013-05-20 | 2016-04-12 | Brocade Communications Systems, Inc. | Configuration validation in a mixed node topology |
US10284499B2 (en) * | 2013-08-22 | 2019-05-07 | Arris Enterprises Llc | Dedicated control path architecture for systems of devices |
US9467330B2 (en) * | 2013-10-14 | 2016-10-11 | Hewlett Packard Enterprise Development Lp | Diagnosing connectivity in a network |
US9185049B2 (en) | 2013-10-31 | 2015-11-10 | Brocade Communications Systems, Inc. | Techniques for simplifying stacking trunk creation and management |
US9577932B2 (en) | 2014-02-12 | 2017-02-21 | Brocade Communications Systems, Inc. | Techniques for managing ternary content-addressable memory (TCAM) resources in heterogeneous systems |
EP2919423B1 (en) * | 2014-03-12 | 2018-11-14 | Xieon Networks S.à.r.l. | A network element of a software-defined network |
US9692695B2 (en) | 2014-03-27 | 2017-06-27 | Brocade Communications Systems, Inc. | Techniques for aggregating hardware routing resources in a multi-packet processor networking system |
US9692652B2 (en) | 2014-04-03 | 2017-06-27 | Brocade Communications Systems, Inc. | Framework for reliably communicating port information in a system of devices |
CN105337853A (zh) | 2014-06-11 | 2016-02-17 | 杭州华三通信技术有限公司 | 一种软件定义网络中的实例建立方法和装置 |
US9774502B2 (en) | 2014-06-25 | 2017-09-26 | Ciena Corporation | Systems and methods for combined software defined networking and distributed network control |
WO2016003420A1 (en) | 2014-06-30 | 2016-01-07 | Hewlett-Packard Development Company, L.P. | Determination of a network cloud containing an uncontrolled network device based on link data of controlled network devices |
US10469349B2 (en) | 2014-07-18 | 2019-11-05 | Hewlett Packard Enterprise Development Lp | Conflict detection in a hybrid network device |
US9813312B2 (en) | 2014-07-21 | 2017-11-07 | Big Switch Networks, Inc. | Systems and methods for performing debugging operations on networks using a controller |
CN107003860B (zh) * | 2014-08-19 | 2020-08-14 | 华为技术有限公司 | 一种软件定义网络控制器及其创建方法 |
US9436443B2 (en) | 2014-08-28 | 2016-09-06 | At&T Intellectual Property I, L.P. | Software defined network controller |
CN105471726B (zh) * | 2014-09-05 | 2019-08-27 | 华为技术有限公司 | 转发参数传递的方法及设备 |
US9397952B2 (en) * | 2014-09-05 | 2016-07-19 | Futurewei Technologies, Inc. | Segment based switching architecture with hybrid control in SDN |
US10055240B2 (en) | 2014-09-23 | 2018-08-21 | At&T Intellectual Property I, L.P. | Service creation and management |
US10644950B2 (en) | 2014-09-25 | 2020-05-05 | At&T Intellectual Property I, L.P. | Dynamic policy based software defined network mechanism |
US9798810B2 (en) | 2014-09-30 | 2017-10-24 | At&T Intellectual Property I, L.P. | Methods and apparatus to track changes to a network topology |
WO2016072991A1 (en) * | 2014-11-06 | 2016-05-12 | Hewlett Packard Enterprise Development Lp | Determine responsiveness to a modeled change in a simulated environment |
US10091059B2 (en) | 2014-12-16 | 2018-10-02 | Arris Enterprises Llc | Handling connections between network devices that support multiple port communication modes |
US10432510B2 (en) | 2015-01-30 | 2019-10-01 | Hewlett Packard Enterprise Development Lp | Forwarding table of hybrid software defined networking switch |
EP3288224B1 (en) * | 2015-05-15 | 2019-11-06 | Huawei Technologies Co., Ltd. | Data packet forwarding method and network device |
US10015115B2 (en) | 2015-06-01 | 2018-07-03 | Ciena Corporation | Software defined networking service control systems and methods of remote services |
JP7164039B2 (ja) * | 2019-06-21 | 2022-11-01 | 日本電信電話株式会社 | プラグイン生成装置、コントローラシステム、プラグイン生成方法、および、プラグイン生成プログラム |
US11595444B2 (en) | 2020-12-03 | 2023-02-28 | International Business Machines Corporation | Authenticity assessment of a requestor based on a communication request |
CN114531354B (zh) * | 2022-04-22 | 2022-08-23 | 北京金山云网络技术有限公司 | 集群的升级方法、装置、集群控制器和服务器 |
US12028271B2 (en) | 2022-12-06 | 2024-07-02 | Bank Of America Corporation | Prioritizing messages for server processing based on monitoring and predicting server resource utilization |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN201018527Y (zh) * | 2006-11-02 | 2008-02-06 | 上海未来宽带技术及应用工程研究中心有限公司 | 一种用于多版本协议融合的装置 |
CN101222367A (zh) * | 2008-01-28 | 2008-07-16 | 中兴通讯股份有限公司 | 用于集群网元批量更新版本文件的方法和网管*** |
US20090313335A1 (en) * | 2008-06-13 | 2009-12-17 | Sap Ag | Managing Software Component Versions within a Service Oriented Architecture |
US7765194B1 (en) * | 2006-03-17 | 2010-07-27 | Cisco Technology, Inc. | Detection and enforcement of version compatibility in network devices |
CN102238020A (zh) * | 2010-04-21 | 2011-11-09 | 杭州华三通信技术有限公司 | 实现多设备统一管理的方法、汇聚交换机以及接入交换机 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090248392A1 (en) | 2008-03-25 | 2009-10-01 | International Business Machines Corporation | Facilitating language learning during instant messaging sessions through simultaneous presentation of an original instant message and a translated version |
EP2288714A4 (en) * | 2008-05-09 | 2014-12-03 | Cargill Inc | REDUCED SUGAR LEVEL VISCOSITY SYRUP, METHODS OF MAKING SAME, AND APPLICATIONS THEREOF |
US9356805B2 (en) * | 2008-06-06 | 2016-05-31 | International Business Machines Corporation | Implementing a plurality of interface definitions |
EP2506505A4 (en) | 2009-11-26 | 2017-07-12 | Nec Corporation | Load distribution system, load distribution method, and program |
WO2012066830A1 (ja) | 2010-11-18 | 2012-05-24 | 日本電気株式会社 | 閉路形成未然防止システム、及び閉路形成未然防止方法 |
US8982727B2 (en) * | 2012-10-22 | 2015-03-17 | Futurewei Technologies, Inc. | System and apparatus of generalized network controller for a software defined network (SDN) |
US9923831B2 (en) * | 2012-11-29 | 2018-03-20 | Futurewei Technologies, Inc. | Packet prioritization in a software-defined network implementing OpenFlow |
US9065768B2 (en) * | 2012-12-28 | 2015-06-23 | Futurewei Technologies, Inc. | Apparatus for a high performance and highly available multi-controllers in a single SDN/OpenFlow network |
-
2013
- 2013-03-13 US US13/801,531 patent/US8982727B2/en active Active
- 2013-10-22 EP EP13848861.4A patent/EP2888858B1/en active Active
- 2013-10-22 CN CN201380055049.0A patent/CN104737519B/zh active Active
- 2013-10-22 WO PCT/CN2013/085638 patent/WO2014063605A1/en active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7765194B1 (en) * | 2006-03-17 | 2010-07-27 | Cisco Technology, Inc. | Detection and enforcement of version compatibility in network devices |
CN201018527Y (zh) * | 2006-11-02 | 2008-02-06 | 上海未来宽带技术及应用工程研究中心有限公司 | 一种用于多版本协议融合的装置 |
CN101222367A (zh) * | 2008-01-28 | 2008-07-16 | 中兴通讯股份有限公司 | 用于集群网元批量更新版本文件的方法和网管*** |
US20090313335A1 (en) * | 2008-06-13 | 2009-12-17 | Sap Ag | Managing Software Component Versions within a Service Oriented Architecture |
CN102238020A (zh) * | 2010-04-21 | 2011-11-09 | 杭州华三通信技术有限公司 | 实现多设备统一管理的方法、汇聚交换机以及接入交换机 |
Non-Patent Citations (1)
Title |
---|
无: "SPARC ICT-258457 Split Architecture for Large Scale Wide Area Networks. Deliverable D3.3", 《无》 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111684439A (zh) * | 2018-02-06 | 2020-09-18 | 思科技术公司 | 网络保证数据库版本兼容性 |
CN111684439B (zh) * | 2018-02-06 | 2024-02-20 | 思科技术公司 | 网络保证数据库版本兼容性 |
CN110290092A (zh) * | 2018-03-19 | 2019-09-27 | 中国科学院沈阳自动化研究所 | 一种基于可编程交换机的sdn网络配置管理方法 |
CN110290092B (zh) * | 2018-03-19 | 2021-05-28 | 中国科学院沈阳自动化研究所 | 一种基于可编程交换机的sdn网络配置管理方法 |
Also Published As
Publication number | Publication date |
---|---|
US20140112190A1 (en) | 2014-04-24 |
CN104737519B (zh) | 2018-04-20 |
EP2888858B1 (en) | 2019-02-13 |
WO2014063605A1 (en) | 2014-05-01 |
US8982727B2 (en) | 2015-03-17 |
EP2888858A1 (en) | 2015-07-01 |
EP2888858A4 (en) | 2016-05-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104737519A (zh) | 用于软件定义网络(sdn)的通用网络控制器的***和设备 | |
Rayes et al. | Internet of things from hype to reality | |
US11563669B2 (en) | Method for implementing network virtualization and related apparatus and communications system | |
CN107147509B (zh) | 虚拟专用网业务实现方法、装置及通信*** | |
Kiran et al. | Enabling intent to configure scientific networks for high performance demands | |
CN106134133B (zh) | 隧道化通过wan在分站之间的时间关键消息 | |
CN107819742B (zh) | 一种动态部署网络安全服务的***架构及其方法 | |
CN109462534A (zh) | 区域互联控制器、区域互联控制方法以及计算机存储介质 | |
CN104065553B (zh) | 虚拟网络迁移方法和相关设备 | |
CN108566445A (zh) | 一种报文传输方法及装置 | |
TWI713384B (zh) | 虛擬公眾WiFi電路指配系統 | |
CN108306804A (zh) | 一种Ethercat主站控制器及其通信方法和*** | |
CN104253767A (zh) | 一种虚拟分片网络的实现方法及一种交换机 | |
CN110249593A (zh) | 根据变电站拓扑规范配置ied过程总线网络交换机的***和方法 | |
CN105530277A (zh) | 一种设备间协同工作的方法及设备 | |
CN112602292A (zh) | 5g核心网中的片间共享 | |
JPWO2018179125A1 (ja) | ネットワーク構成情報生成方法および通信機器 | |
US12021735B2 (en) | Systems and methods for implementing multi-part virtual network functions | |
CN104426715A (zh) | 一种分布式测试工具控制方法 | |
CN109842527A (zh) | 一种网络告警方法以及设备 | |
KR20190066743A (ko) | 소프트웨어 정의 네트워킹 기반의 멀티 프로토콜 지원 네트워크 가상화 시스템 및 네트워크 가상화 장치의 동작 방법 | |
CN114629741A (zh) | 车辆总线通信网络的数据交换方法、装置及*** | |
Imtiaz et al. | Common automation protocol architecture and real-time interface (capri) | |
CN107896234B (zh) | 在Modbus通信网络中传输报文的方法、Modbus通信网络***和设备 | |
KR100619707B1 (ko) | 상이한 프로토콜 결합 장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |