网元和管理该网元的控制器的制作方法

文档序号:11142861阅读:609来源:国知局
网元和管理该网元的控制器的制造方法与工艺

本发明通常涉及软件定义网络。更具体地说,本发明涉及用于软件定义网络“SDN”的网元和用于软件定义网络的控制器。此外,本发明涉及用于配置软件定义网络的网元的方法、涉及用于软件定义网络的网元的计算机程序,以及涉及用于软件定义网络的控制器的计算机程序。



背景技术:

软件定义网络是用于数据传送网络的新兴架构。在软件定义网络“SDN”中,控制平面和数据平面分离,使得在能够与网元分离的一个或多个控制器中实现控制平面,而在网元中实现数据平面。网元能够是例如网际协议“IP”路由器、多协议标签交换“MPLS”节点、光分组交换机和/或以太网交换机。每一网元可以由单个装置或多个装置的组合构成。通常,软件定义网络允许快速体验和优化交换和/或路由策略以及对以前封闭且私有的网元的内部结构进行外部访问。

基于网际协议“IP”的网络初始是基于自主系统“AS”的概念构建的。该概念允许网络通过连接结点来调节和扩展,该连接节点基于部分需要知道的信息将分组转发到合理的下一跳。AS原理非常象传统的邮局服务那样进行工作,其中,为了为手边的信件选择合理的下一跳,给定城市的邮政工人无需知道另一城市的所有街道的所有住户。联网的该方法简单,并且已经证明可复原和可扩展。然而,该方法具有一些缺点。只要涉及分组传输服务,不允许指定的目的地,或不允许具有家庭邮箱的住户在没有改变他们的身份的情况下搬家。作为他们附接所至的网络接口的目的地的拓扑位置规定与分组传输服务有关的他们的身份。此外,仅使用该基本AS原理,难以指定其他性质,诸如逻辑分组、访问控制、服务质量、中间网络处理或指定有关形成流的分组的顺序的方面。

在下文中,使用类似邮政服务,以简化的方式,示出软件定义网络。对任何指定的街道位置,软件定义网络进行工作,使得首先由软件定义网络的边缘上的网元对来自所有住户的所有信件进行汇总。该网元被配置为使用全局查找机制,检查信件目的地中的每一个的当前位置。基于全局查找和其他全局定义和全局测量的考虑因素,诸如基于访问控制或远程位置负载条件,所述网元将初始信件中的一个或多个放在另外的信封中,该信封被寻址到目的地当前所在的街道位置中的每一个。然后,使用就像传统的网际协议“IP”那样进行工作的常见邮政服务来获得到远程位置的这些外层信封。这是基于现有和可扩展的逐跳转发服务来完成的。然后,由远程网元打开外层信封并且将初始信件分发到目的地。应注意到上述提出的软件定义网络和邮政服务之间的类比是一种极端简化并且仅给出有关由软件定义网络提供的通用可能性的有限观点。

然而,软件定义网络并没有免于挑战。一些挑战与配置网元有关。通常,在网元构成配置系统的帮助下,网元被配置为使得控制器将配置数据发送到每一网元。配置系统使网元作为软件定义网络的一部分来操作。由此,控制器实际上对网元进行编程,以使其以所需的方式作为软件定义网络的一部分来操作。配置系统可以包括例如定义了在不同操作情形中将执行的动作的一个或多个查找表。一个挑战与需要对网元编程许多应用程序有关和/或与设置两个或以上控制器来编程同一网元的情形有关。应用程序能够是诸如互联网语音“VoIP”、视频点播“VoD”、在线游戏、内容分发的高速缓存和/或图片高速缓存等。通常不相互协调应用程序,但尽管如此,必须编程应用程序,使得它们在配置系统中不相互冲突。配置系统的查找表可以确定例如成形器,该成形器将与一个或多个应用程序一起被使用并且定义最大允许数据速率,以及可能还定义用于一个或多个应用程序的最大允许突发大小的。涉及例如VoIP,每微流的最大允许数据速率能够为例如64kbits/s,而对VoD,每微流的最大允许数据速率例如为4Mbits/s。很显然,如果配置系统中在这些应用之间存在冲突,则VoD将不能够适当地工作,使得在一些情况下,VoIP的成形器错误地被用于对表示VoD的数据流量进行成形。此外,当设置两个或以上控制器来编程同一网元时,类似的冲突也会发生。因此,当对网元编程不同应用程序时以及当两个或以上控制器在同一网元中进行编程时,需要禁止上述类型的冲突的机制。



技术实现要素:

下文提出简单的概述以便提供不同发明实施例的一些方面的基本理解。概述不是本发明的详尽综述。不旨在标识本发明的关键或必要元素,也不勾画本发明的范围。下述概述仅以简化的形式提出本发明的一些概念,以作为示例说明本发明的实施例的更详细描述的序言。

根据本发明,对于软件定义网络“SDN”,即,对于应用软件定义网络的数据传输网络,提供了一种新的网元。该网元能够是例如网际协议“IP”路由器、多协议标签交换“MPLS”交换机、光分组交换机和/或以太网交换机。

根据本发明的一种网元包括数据传输接口和处理系统,所述数据传输接口用于将数据传送到软件定义网络,以及从软件定义网络接收数据,所述处理系统用来:

‐根据从软件定义网络的控制器系统接收到的配置数据,构成用于管理待被转发的数据的配置系统,以便使网元能够作为软件定义网络的一部分来操作,

‐对配置系统的第一部分进行配置,以使在网元处接收到的数据与配置实体专用标识符相关联,所述配置实体专用标识符识别与接收到的数据有关的配置实体,所述配置实体专用标识符构成与接收到的数据相关联的元数据的至少一部分,以及

‐对在配置系统的第一部分后使用的配置系统的第二部分进行配置,以当协同接收到的数据确定待执行的动作时,使用包括配置实体专用标识符的元数据。

上述配置实体能够是例如应用程序,诸如互联网语音“VoIP”、视频点播“VoD”、提供游戏服务的在线游戏、内容分发的高速缓存和/或图片高速缓存。上述配置实体也可以是属于软件定义网络的控制器系统的控制器并且被适配于对所述网元进行编程。

上述配置实体专用标识符使与不同配置实体有关的配置系统的部分可唯一地可寻址。因此,可以避免在由相互不协调的应用程序和/或控制器定义的元数据项刚好相同的情形下,错误地使用配置系统的错误部分的冲突。

根据本发明,还提供了一种新的控制器,所述控制器用于配置软件定义网络“SDN”的网元。所述控制器能够是由软件定义网络的许多控制器构成的控制器系统的一部分。控制器也可以单独地构成软件定义网络的控制器系统。此外,控制器能够是单一装置或能够相互通信的多个装置的组合。根据本发明的控制器包括:

‐处理系统,所述处理系统被适配成组成用于控制网元构成配置数据,所述配置数据用于管理待由网元转发的数据的配置系统,使得网元能够作为软件定义网络的一部分来操作,以及

‐数据传输接口,所述数据传输接口被适配成将配置数据传送到网元,

控制器的处理系统被适配成组成配置数据,以包括用于控制网元实现下述操作的配置数据部分:

‐对配置系统的第一部分进行配置,以使在网元处接收到的数据与配置实体专用标识符相关联,所述配置实体专用标识符识别与在网元处接收到的数据有关的配置实体,所述配置实体专用标识符构成与在网元处接收到的数据相关联的元数据的至少一部分,以及

‐对在配置系统的第一部分后使用的配置系统的第二部分进行配置,以当协同在网元处接收到的数据确定待由网元执行的动作时,使用包括配置实体专用标识符的元数据。

根据本发明,还提供了一种用于配置软件定义网络“SDN”的网元的新方法。根据本发明的方法包括:

‐根据从软件定义网络的控制器系统接收到的配置数据,构成用于管理待被转发的数据的网元的配置系统,以便使网元能够作为软件定义网络的一部分来操作,

‐对配置系统的第一部分进行配置,以使在网元处接收到的数据与配置实体专用标识符相关联,所述配置实体专用标识符识别与接收到的数据有关的配置实体,所述配置实体专用标识符构成与接收到的数据相关联的元数据的至少一部分,以及

‐对在配置系统的第一部分后使用的对配置系统的第二部分进行配置,以当协同接收的数据确定待由网元执行的动作时,使用包括配置实体专用标识符的元数据。

根据本发明,还提供了一种用于提供配置软件定义网络“SDN”的网元的配置数据的新方法。根据本发明的方法包括组成配置数据以包括用于控制网元实现下述操作的配置数据部分:

‐构成用于管理将由网元转发的数据的配置系统,以便使网元能够作为软件定义网络的一部分来操作,

‐对配置系统的第一部分进行配置,以使在网元处接收到的数据与配置实体专用标识符相关联,所述配置实体专用标识符识别与在网元处接收到的数据有关的配置实体,所述配置实体专用标识符构成与在网元处接收到的数据相关联的元数据的至少一部分,以及

‐对在该配置系统的第一部分后使用的配置系统的第二部分进行配置,以当协同在网元处接收到的数据确定待由网元执行的动作时,使用包括配置实体专用标识符的元数据。

根据本发明,还提供了一种用于软件定义网络的网元的新计算机程序。根据本发明用于网元的计算机程序包括用于控制网元的可编程处理系统实现下述操作的计算机可执行指令:

‐根据从软件定义网络的控制器系统接收到的配置数据,构成用于管理待被转发的数据的配置系统,以便使网元能够为软件定义网络的一部分来操作,

‐对配置系统的第一部分进行配置,以使在网元处接收到的数据与配置实体专用标识符相关联,所述配置实体专用标识符识别与接收到的数据有关的配置实体,所述配置实体专用标识符构成与接收到的数据相关联的元数据的至少一部分,以及

‐对在配置系统的第一部分后使用的配置系统的第二部分进行配置,以当协同接收到的数据确定待由网元执行的动作时,使用包括配置实体专用标识符的元数据。

根据本发明,还提供了一种用于软件定义网络的控制器的新计算机程序。根据本发明用于控制器的计算机程序包括计算机可执行指令,所述计算机可执行指令用于控制控制器的可编程处理系统组成用于控制网元实现下述操作的配置数据:

‐构成用于管理待由网元转发的数据的配置系统以使网元能够作为软件定义网络的一部分来操作,

‐对配置系统的第一部分进行配置,以使在网元处接收到的数据与配置实体专用标识符相关联,所述配置实体专用标识符识别与在网元处接收到的数据有关的配置实体,所述配置实体专用标识符构成与在网元处接收到的数据相关联的元数据的至少一部分,

‐对在配置系统的第一部分后使用的对配置系统的第二部分进行配置,以当协同在网元处接收到的数据确定待由网元执行的动作时,使用包括配置实体专用标识符的元数据。

用于控制器的计算机程序进一步包括下述计算机可执行指令,该计算机可执行指令用于控制控制器的可编程处理系统控制该控制器的数据传输接口来将配置数据传送到网元。

根据本发明,还提供了一种新的计算机程序产品。计算机程序产品包括非易失性计算机可读介质,例如压缩盘“CD”,其编码有根据本发明用于网元的计算机程序,和/或编码有根据本发明用于控制器的计算机程序。

在附加从属权利要求中描述了多个本发明的示例和非限定实施例。

当结合附图进行阅读时,从具体示例说明实施例的下述描述中,将更好地理解有关结构和操作方法两者的各种示例和非限制实施例,以及其另外的目的和优点的本发明。

动词“由…组成”和“包括”在本文档中被用作开放限制,既不排除也不要求存在还未引用的特征。在附加的从属权利要求中引用的特征可相互自由地组合,除非另有明确说明。此外,应理解在整个文档中使用“一”、“一个”——即使用单数形式,不排除多个。

附图说明

在下文中,参考附图,更详细地说明本发明的示例和非限制实施例以及它们的优点,其中:

图1示出包括根据本发明的示例和非限制实施例的网元和根据本发明的示例和非限制实施例的控制器的软件定义网络的示意性图示,

图2示出根据本发明的示例和非限制实施例的网元的示意性图示,

图3示出根据本发明的示例和非限制实施例的用于配置软件定义网络的网元的控制器的示意性图示,以及

图4示出根据本发明的示例和非限制实施例的用于配置软件定义网络的网元的方法的流程图。

具体实施方式

图1示出示例说明软件定义网络“SDN”100的示意性图示。软件定义网络包括网元101,102,103和104。软件定义网络100进一步包括能够被视为构成软件定义网络的控制器系统的控制器105和106。如图1所示,该示例软件定义网络的网元101-104与数据传输链路互连。此外,该示例软件定义网络100可以包括图1中未示出的其他网元。网元的每一个可以例如是网际协议“IP”路由器、多协议标签交换“MPLS”节点、光分组交换机和/或以太网交换机。每一网元可以由单个装置或多个装置的组合构成。同样地,控制器105和106中的每一个可以由单个装置或多个装置的组合构成。在图1所示的示例情形中,控制器105包括两个互连的装置。用户接口设备107连接到控制器105,相应地,用户接口设备108连接到控制器106。在图1所示的示例情形中,网元104充当对于能够是例如全球互联网的外部网络199的网关。应注意到控制器105或其一个或多个部分也能够充当能够是例如网际协议“IP”路由器、多协议标签交换“MPLS”交换机、光分组交换机和/或以太网交换机的网元。相应地,控制器106或其一个或多个部分也能够充当上述类型的网元。

在不限制普遍性并且仅出于示例目的的情况下,考虑控制器105的操作。控制器106可以以类似的方式进行操作。在考虑到构建使网元能够以所需方式管理数据的配置系统时,控制器105被适配于将用于控制网元的配置数据发送到网元101-104中的至少一个。配置系统可以包括例如互连查找表的系统,该互连查找表用于选择将在不同操作情形中执行的软件定义动作。待被管理的数据能够以数据帧为形式,诸如以网际协议IP分组、MPLS标签帧、以太网帧为形式或数据能够是符合正被使用的一个或多个数据传输协议的一些其他形式。控制器105能够被适配于根据例如OpenFlow协议或适合于软件定义网络的一些其他协议,配置所述网元。能够从由开放网络基金会“ONF”管理的OpenFlow交换机规范中找到有关OpenFlow的更多细节。

在使用OpenFlow的示例情形中,根据OpenFlow规范,配置系统包括一个或多个流表和一个或多个组表。每一流表包含一组流条目。每一流条目可以由匹配字段、计数器和一组软件定义动作构成,以应用于匹配数据帧。匹配通常在第一流表处开始并且可以继续至另外的流表。流条目通常被设置成优先级顺序并且每一表中的第一匹配条目是正被使用的条目。如果找到匹配流条目,则执行与该特定流条目相关联的一个或多个软件定义动作。如果在流表中未找到匹配,则可以在所述网元和控制器105之间的OpenFlow信道上,将所述的数据帧转发到控制器105,数据帧可以被丢弃,或数据帧可以继续到下一流表或组表。与每一流条目相关联的软件定义动作可以包括例如数据帧转发、数据帧变更、组表处理和流水线处理。流水线处理动作允许将数据帧发送到后续流表,以用于进一步处理和允许在流表之间通信以元数据为形式的信息。连同OpenFlow,元数据通常是具有64位的位向量。当与匹配流条目相关联的一个或多个软件定义动作未指定下一表时,流水线处理停止。此时,通常变更和转发所述的数据帧。组表处理动作允许将数据帧发送到组表,以用于进一步处理并且允许将以元数据为形式的信息通信到组表。组表包含组条目,其中,每一组条目可以包含将连同被定义为属于特定组的数据帧被执行的软件定义动作的列表。此外,被发送到所述网元的配置数据可以包括一个或多个配置程序,配置程序中的每一个包括一个或多个计算机可执行指令,该计算机可执行指令定义了将连同管理所述网元中的数据待被执行的软件定义动作或一系列软件定义动作。由配置程序定义的软件定义动作或一系列软件定义动作可以包括例如:将数据记录在存储器中、变更数据、选择网元的一个或多个输出端口并且将该数据及其可能的副本转发到所选的一个或多个输出端口、选择网元的配置系统的一个或多个查找表并且根据所选的查找表执行一个或多个查找、执行算术运算、分支操作、执行逻辑运算、读取与被管理的数据相关联的元数据、写入与该数据相关联的元数据、变更与该数据相关联的元数据、丢弃该数据和/或复制该数据。

在许多情况下,需要对网元101-104或它们中的至少一些进行编程以支持许多不同的应用程序,诸如互联网语音“VoIP”、视频点播“VoD”、用于提供游戏服务的在线游戏、用于内容分发的高速缓存和/或图片高速缓存等。在不限制普遍性并且仅出于示例目的的情况下,假定网元101是需要被编程以支持上述类型的许多不同应用程序的上述网元中的一个。网元101包括用于接收和传送数据的数据传输接口。网元101包括用于根据从控制器105和/或从控制器106接收到的配置数据构成配置系统的装置。正由配置系统管理的数据通常与允许信息在配置系统的不同部分之间通信的元数据相关联。能够由控制器105和106中的一个对网元101进行编程来支持所有应用程序,或能够由控制器105对网元进行编程来支持一些应用程序,而由控制器106对网元进行编程来支持其他应用程序。单独的应用程序和/或应用程序组和/或控制器构成控制实体,每一控制实体在网元101的配置系统中,具有其控制实体专用部分。假定上述应用程序组中的每一个包含以协同的方式被对于网元101而编程的应用程序,使得属于所述组的应用程序能够被视为单个配置实体。在配置系统包括用于确定待执行的动作的查找表系统的示例情形中,配置系统的控制实体专用部分可以包括例如查找表系统的查找表的给定实体。

在示例情形中,网元101包括用于对该配置系统的第一部分进行配置以将在该网元处接收到的数据与配置实体专用标识符相关联的装置,该配置实体专用标识符识别与接收到的数据相关联的配置实体。配置实体能够是例如与接收到的数据有关的应用程序或应用程序组。配置实体专用标识符构成元数据的至少一个部分,该元数据与接收到的数据相关联并且被配置系统用于在配置系统的不同部分之间通信信息。配置系统的第一部分能够是例如识别接收到的数据的输入端口“IPORT”的部分、识别虚拟本地接入网络“VLAN”或与接收到的数据有关的一些其他相应实体的部分,或确定针对接收到的数据的策略操作的部分。网元101包括用于对在该配置系统的第一部分后使用的配置系统的第二部分进行配置的装置,以当协同接收到的数据确定待执行的动作时,使用包括配置实体专用标识符的元数据。配置实体专用标识符使与不同配置实体有关的配置系统的部分唯一地可寻址。因此,可以避免如下冲突:例如错误地使用配置系统的错误部分,使得在由相互不协调的应用程序和/或控制器定义的元数据项刚好相同的情形中,错误地选择查找表的错误条目。由此,在该示例情形中,网元101被适配于使与不同应用程序和/或应用程序组有关的配置系统的部分唯一地可寻址。

在另一示例情形中,同时由控制器105和106两者构成网元101。控制器中的每一个包括用于组成配置数据的装置,该配置数据用于控制网元101来构成与由所述控制器编程的一个或多个应用程序有关的配置系统的部分。每一控制器被适配于组成配置数据部分,所述配置数据部分用于控制网元101来配置网元的配置系统的第一部分,以使在网元处接收到的数据与配置实体专用标识符相关联,该配置实体专用标识符识别与在该网元处接收到的数据有关的配置实体。配置实体专用标识符构成元数据的至少一部,该元数据与接收到的数据相关联并且被配置系统用于在配置系统的不同部分之间通信信息分。因此,在该示例情形中,控制器105和106中的每一个被适配于组成相应的配置数据,使得通过该配置数据对网元101进行编程以构成网元的配置系统,因此,可唯一地寻址与由这些控制器编程的应用程序或应用程序组有关的配置系统的部分,使得避免配置系统的这些部分之间的冲突。

图2a示出根据本发明的示例和非限制实施例的网元201的示例性图示。网元能够例如是网际协议“IP”路由器、多协议标签交换“MPLS”交换机、光分组交换机和/或以太网交换机。在图2所示的示例性情形中,网元201是单一装置,但网元也能够是多个装置的组合。网元包括用于接收数据和用于传送数据的数据传输接口211。数据传输接口211包括用于连接到软件定义网络“SDN”的数据传输链路的输入端口213和215以及输出端口214和216。在图2中,使用云200来描绘除网元201外的软件定义网络的元件。网元201包括处理系统212,处理系统212被适配于根据从软件定义网络的控制系统接收到的配置数据,构成配置系统,使得网元能够为软件定义网络的一部分来操作。配置系统可以包括例如用于当管理待被转发的数据时选择软件定义动作的查找表。

处理系统212被适配于对该配置系统的第一部分进行配置,以将在网元处接收到的数据与配置实体专用标识符CEID相关联,该配置实体专用标识符CEID识别与接收到的数据有关的配置实体。配置实体专用标识符CEID能够被适配于识别由接收到的数据表示的应用程序或一组应用程序。应用程序可以包括例如互联网语音“VoIP”、视频点播“VoD”、用于提供游戏服务的在线游戏、用于内容分发的高速缓存和/或图片高速缓存等。配置系统专用标识符CEID还可以被适配于识别软件定义网络的控制器系统中的控制器中的特定控制器或特定协调控制器组,其中,控制器中的特定控制器或特定控制器组是在已经对于网元201的配置系统对与接收到的数据有关的应用程序或应用程序组进行编程的基础上,已经发送配置数据的控制器或控制器组。配置实体专用标识符CEID构成与接收到的数据相关联的元数据的至少一部分。处理系统212被适配于对在配置系统的第一部分后使用的配置系统的第二部分进行配置,使得当协同接收到的数据确定待执行的操作时,使用由配置实体专用标识符构成的数据。

在根据本发明的示例和非限制实施例的网元中,处理系统212被适配于变更分别由相互不同配置实体中的一个定义的元数据格式,使得配置实体专用标识符在变更的元数据格式的每一个中处于相同的位置。由配置实体,例如由应用程序或应用程序组定义的元数据格式能够是诸如块220,其中,阴影区域221表示适当的元数据,以及整个块220表示为该元数据分配的数据字段。在该示例情形中,将元数据的最左部分转移到块220的最右部分,以便让位于由块220a所示的表示示例变更元数据格式的配置实体专用标识符CEID。

在根据本发明的另一示例和非限制实施例的网元中,处理系统212被适配于变更分别由相互不同配置实体中的一个定义的元数据格式,以包含用于配置实体专用标识符的附加数据字段。这由块220b来图示,块220b表示示例变更元数据格式并且包括由块220表示的初始元数据格式以及用于配置实体专用标识符CEID的附加数据字段。

在根据本发明的示例和非限制实施例的网元中,处理系统212被适配于在下述的至少一个的基础上,确定用于接收到的数据的配置实体专用标识符:

‐开放系统互连“OSI”模型1级物理层“L1”字段分类,例如输入端口号,

‐OSI模型2级数据链路层“L2”字段分类,例如虚拟本地接入网“VLAN”,

‐OSI模型3级网络层“L3”字段分类,例如,网际协议“IP”源地址、IP目的地地址或IP差分服务代码点“DSCP”,

‐OSI模型4级传输层“L4”字段分类,例如传输控制协议“TCP”端口号或用户数据报协议“UDP”端口号,

‐OSI模型5级会话层“L5”字段分类,例如,实时传输协议“RTTP”报头或点对点隧道效应协议“PPTP”报头,

‐OSI模型6级表示层“L6”字段分类,

‐OSI模型级7应用层“L7”字段分类,例如超文本传输协议“HTTP”报头和/或会话发起协议“SIP”报头,

‐虚拟专用网“VPN”,

‐服务等级“CoS”,

‐多协议标签交换“MPLS”报头。

能够由一个或多个处理电路实现网元201的处理系统212,每一处理电路能够是具有适当软件、诸如专用集成电路“ASIC”的专用硬件处理器或诸如现场可编程门阵列“FPGA”的可配置硬件处理器的可编程处理器电路。

图3示出根据本发明的示例和非限制实施例的用于配置软件定义网络的网元的控制器305的示意性图示。在图3中未示出待配置的网元。在图3所示的示例情形中,控制器305是单个装置,但如在本文档前面所述,控制器305也可以是多个装置的组合。控制器包括用于接收数据和传送数据的数据传输接口311。数据传输接口311包括用于经由数据传输链路连接到软件定义网络的其他元件的输入端口313和315和输出端口314和316。在图3中,使用云300图示除控制器305外的软件定义网络的元件。数据传输接口311可以进一步包括用于连接到用户接口设备307和/或其他外围设备的一个或多个数据端口。控制器305包括用于组成配置数据的处理系统312,该配置数据使网元的每一个构成配置系统,以使得所述网元能够作为软件定义网络的一部分来操作。

处理系统312被适配成组成配置数据,该配置数据包括用于控制所述网元、对网元的配置系统的第一部分进行配置的配置数据部分,以使在网元处接收到的数据与配置实体专用标识符相关联,该配置实体专用标识符识别与在网元处接收到的数据有关的配置实体并且构成与在网元处接收到的数据相关联的元数据的至少一部分。配置数据部分还控制网元以对在该配置系统的第一部分后使用的配置系统的第二部分进行配置,使得当结合在网元处接收到的数据确定待由网元执行的动作时,使用包括该配置实体专用标识符的元数据。配置实体专用标识符可以识别由在网元处接收到的数据表示的应用程序或应用程序组。此外,配置实体专用标识符可以从软件定义网络的所有控制器中,识别控制器305以及由在网元处接收到的数据表示的并且由控制器305对于网元进行编程的应用程序或应用程序组。

在根据本发明的示例和非限制实施例的控制器中,处理系统312被适配于变更分别由相互不同配置实体中的一个定义的元数据格式,使得配置实体专用标识符在变更的元数据格式的每一个中处于相同的位置。此外,处理系统312被适配于组成配置数据以包括用于控制网元来使用变更的元数据格式的配置数据部分。

在根据本发明的另一示例和非限制实施例的控制器中,处理系统312被适配于变更分别由相同不同配置实体中的一个定义的元数据格式,以包含用于配置实体专用标识符的附加数据字段。此外,处理系统312被适配于组成配置数据以包括用于控制网元使用变更的元数据格式的配置数据部分。

能够由一个或多个处理电路实现控制器305的处理系统312,每一处理电路能够是具有适当软件、诸如专用集成电路“ASIC”的专用硬件处理器、或诸如现场可编程门阵列“FPGA”的可配置硬件处理器的可编程处理器电路。

图4示出根据本发明的示例和非限制实施例的方法的用于配置软件定义网络的网元的流程图。该方法包括下述动作:

‐动作401:根据从软件定义网络的控制器系统接收到的配置数据,构成用于管理待被转发的数据的网元的配置系统,以便使网元能够作为软件定义网络的一部分来操作,

‐动作402:对该配置系统的第一部分进行配置,使在网元处接收到的数据与配置实体专用标识符相关联,该配置实体专用标识符识别与接收的数据有关的配置实体,配置实体专用标识符构成与接收到的数据相关联的元数据的至少一部分,以及

‐动作403:对在该配置系统的第一部分后使用的该配置系统的第二部分进行配置,使得当协同接收到的数据确定待由网元执行的动作时,使用包括配置实体专用标识符的元数据。

根据本发明的示例和非限制实施例的方法包括变更分别由相互不同的配置实体中的一个定义的元数据格式,使得配置实体专用标识符在变更的元数据格式的每一个中处于相同的位置。

根据本发明的另一示例和非限制实施例的方法包括变更分别由相互不同的配置实体中的一个定义的元数据格式,以包含用于配置实体专用标识符的附加数据字段。

在根据本发明的示例和非限制实施例的方法中,配置实体专用标识符识别由接收到的数据表示的应用程序或应用程序组。

在根据本发明的示例和非限制实施例的方法中,配置实体专用标识符识别控制器系统中的一个或多个控制器,其中一个或多个控制器已经发送一部分配置数据,使得在配置数据的该部分的基础上,已经对于配置系统对由接收到的数据表示的应用程序或应用程序组进行编程。

在根据本发明的示例和非限制实施例的方法中,每一应用程序是下述的一种:互联网语音“VoIP”、视频点播“VoD”、用于提供游戏服务的在线游戏、用于内容分发的高速缓存和/或图片高速缓存等。

在根据本发明的示例和非限制实施例的方法中,在下述的至少一个的基础上,对接收到的数据,确定配置实体专用标识符:

‐OSI模型级1级物理层“L1”字段分类,例如输入端口号,

‐OSI模型2级数据链路层“L2”字段分类,例如虚拟本地接入网“VLAN”,

‐OSI模型3级网络层“L3”字段分类,例如,网际协议“IP”源地址、IP目的地地址或IP差分服务代码点“DSCP”,

‐OSI模型4级传输层“L4”字段分类,例如传输控制协议“TCP”端口号或用户数据报协议“UDP”端口号,

‐OSI模型5级会话层“L5”字段分类,例如,实时传输协议“RTTP”报头或点对点隧道效应协议“PPTP”报头,

‐OSI模型6级表示层“L6”字段分类,

‐OSI模型7级应用层“L7”字段分类,例如超文本传输协议“HTTP”报头和/或会话发起协议“SIP”报头,

‐虚拟专用网“VPN”,

‐服务等级“CoS”,

‐多协议标签交换“MPLS”头。

根据本发明的示例和非限制实施例的计算机程序包括计算机可执行指令,该计算机可执行指令用于控制可编程处理系统来执行与根据本发明的上述示例实施例的任何一个的方法有关的动作。

根据本发明的示例和非限制实施例的计算机程序包括用于软件定义网络的网元的软件模块。软件模块包括用于控制网元的可编程处理系统实现下述操作的计算机可执行指令:

‐根据从软件定义网络的控制器系统接收到的配置数据,构成用于管理待被转发的数据的配置系统,以便使网元能够作为软件定义网络的一部分来操作,

‐对配置系统的第一部分进行配置,以使在网元处接收到的数据与配置实体专用标识符相关联,该配置实体专用标识符识别与接收到的数据有关的配置实体,配置实体专用标识符构成与接收到的数据相关联的元数据的至少一部分,以及

‐对在配置系统的第一部分后使用的配置系统的第二部分进行配置,以当协同接收的数据确定待由网元执行的动作时,使用包括配置实体专用标识符的元数据。

根据本发明的示例和非限制实施例的计算机程序包括用于软件定义网络的控制器的软件模块。软件模块包括用于控制控制器的可编程处理系统实现下述操作的计算机可执行指令:

‐组成配置数据,该配置数据用于控制网元构成用于管理待由该网元转发的数据的配置系统,使得使网元能够作为软件定义网络的一部分来操作,以及

‐对控制器的数据传输接口进行控制以将配置数据传送到网元。

用于控制器的计算机程序的软件模块进一步包括计算机可执行指令,该计算机可执行指令用于控制该控制器的可编程处理系统组成用于控制网元的配置数据以实现下述操作:

‐的配置系统的第一部分进行配置,以使在网元处接收到的数据与的配置实体专用标识符相关联,该配置实体专用标识符识别与在网元处接收的数据有关的配置实体,配置实体专用标识符构成与在网元处接收的数据相关联的元数据的至少一部分,

‐对在配置系统的第一部分后使用的配置系统的第二部分进行配置,以当协同在网元处接收到的数据确定待由网元执行的动作时,使用包括配置实体专用标识符的元数据。

软件模块能够是例如使用适当的编程语言和适合于该编程语言的编译器以及所述的可编程处理系统实现的子例程或功能。值得注意的是,对应于适当的编程语言的源代码也表示计算机可执行软件模块,因为源代码包含控制可编程处理系统来执行上述动作和仅编译信息的格式的变化所需的信息。此外,用于运行根据本发明的示例实施例的计算机程序的可编程处理系统也可以具有解释器,使得使用适当编程语言实现的源代码不需要在运行前被编译。

根据本发明的示例和非限制实施例的计算机程序产品包括计算机可读介质,例如压缩盘“CD”,编码有根据本发明的示例实施例的用于网元的计算机程序和/或编码有根据本发明的示例实施例的用于控制器的计算机程序。

对根据本发明的示例和非限制实施例的信号进行编码以携带定义根据本发明的示例实施例的计算机程序的信息。

在上述说明书中提供的具体实例不应当被解释为限制附加权利要求书的范围和/或适用性。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1