CN103780425B - 用于配置软件定义网络的方法和控制器设备 - Google Patents
用于配置软件定义网络的方法和控制器设备 Download PDFInfo
- Publication number
- CN103780425B CN103780425B CN201310512810.0A CN201310512810A CN103780425B CN 103780425 B CN103780425 B CN 103780425B CN 201310512810 A CN201310512810 A CN 201310512810A CN 103780425 B CN103780425 B CN 103780425B
- Authority
- CN
- China
- Prior art keywords
- relation
- entity
- rule
- action
- data item
- 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
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/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
-
- 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/08—Configuration management of networks or network elements
- H04L41/0894—Policy-based network configuration management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/645—Splitting route computation layer and forwarding layer, e.g. routing according to path computational element [PCE] or based on OpenFlow functionality
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
-
- 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/08—Configuration management of networks or network elements
- H04L41/0893—Assignment of logical groups to network elements
-
- 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/08—Configuration management of networks or network elements
- H04L41/0895—Configuration of virtualised networks or elements, e.g. virtualised network function or OpenFlow elements
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Multi Processors (AREA)
Abstract
本发明涉及用于配置软件定义网络的方法和控制器设备。提出了用于基于关系数据项和动作策略规则来配置软件定义网络的网络元件的方法。每一个关系数据项表达两个实体及其关系,以及每一个动作策略规则表达事件和响应于该事件要被执行的动作。该方法包括:基于关系数据项来导出(301)在实体之间的隐含关系,并且基于关系数据项、动作策略规则和导出的隐含关系为网络元件生成(303)配置数据。用于生成配置数据的对隐含关系的导出以及所导出的隐含关系的利用促进了提供自动化操作。
Description
技术领域
本发明总体上涉及软件定义网络“SDN”。更特别地,本发明涉及用于配置软件定义网络的一个或多个网络元件的方法、控制器设备和计算机程序。
背景技术
软件定义联网是数据传输网络的新兴架构。在软件定义网络“SDN”中,控制面与数据面分离,以使得控制面在能够与网络元件分离的一个或多个控制器设备中实现,并且数据面在网络元件中实现。网络元件可以是例如网际协议“IP”路由器、多协议标签交换“MPLS”节点和/或以太网交换机。每一个网络元件可以由单个装置或多个装置的组合组成。典型地,软件定义联网允许交换和/或路由策略以及对以前封闭且私有的网络元件的内部的外部访问的快速试验和优化。
基于网际协议“IP”的网络最初基于自治系统“AS”的概念来构建。这个概念允许网络通过基于部分须知信息来将分组转发到合理的下一跳的连接结点来扩展和延伸。AS原理与传统邮局服务工作原理很相似,在传统邮局服务中,在给定城市的邮政工作者不需要知道在另一个城市的所有街道的所有租户,以便为在手信件选择合理的下一跳。这种联网的方法很简单,并且已证实是有弹性且可扩展的。然而,这种方法有几个缺点。就分组递送服务来说,其不允许指明的目的地或带有家用邮箱的租户在不改变其身份的情况下迁移。目的地的拓扑位置,其是它们被附着到的网络接口,规定它们的与分组递送服务有关的身份。另外,仅使用基本AS原理,很难指定其他质量,诸如逻辑分组、访问控制、服务质量、中间网络处理,或指定与形成流的分组序列有关的方面。
使用邮政服务类推,软件定义联网为任何给定街道位置工作,以使来自所有租户的所有信件首先通过软件定义网络的边缘上的网络元件聚集。该网络元件被配置成使用全局查找机制为信件目的地中的每一个检查当前位置。基于该全局查找以及其他全局定义和全局测量的考虑,诸如访问控制或远程位置负载状况,所述网络元件将原始信件中的一个或多个放置在寄送到目的地当前所在的街道位置中的每一个的另外信封中。其然后使用与传统网际协议“IP”工作原理相似的普通邮政服务来让这些外部信封到达远程位置。这基于现有且可扩展的逐跳转发服务来完成。然后远程网络元件打开外部信件,并且原始信封被递送到目的地。
然而,软件定义联网并没有摆脱掉挑战。部分挑战涉及配置网络元件以及保持网络元件被配置,以使它们能够不断地执行上述任务。因此,仍然存在对用于配置并更新软件定义网络的网络元件的技术解决方案的需要。
发明内容
下面呈现了简化的发明内容,以提供对各种发明实施例的一些方面的基本了解。本发明内容并不是本发明的详尽概述。其既不意在识别本发明的关键性或决定性要素,也不勾画本发明的范围。下面的发明内容仅以简化形式呈现了本发明的一些概念,作为本发明的示例性实施例的更详细描述的前序。
根据本发明,提供了用于基于关系数据项和动作策略规则来配置软件定义网络的一个或多个网络元件的新方法,每一个关系数据项表达两个实体,即实体对,及其关系,以及每一个动作策略规则表达事件和响应于该事件要被执行的一个或多个动作。根据本发明的方法包括:
-基于关系数据项来导出在实体对之间的隐含关系,以及
-基于关系数据项、动作策略规则和导出的隐含关系为一个或多个网络元件生成配置数据。
示例性隐含关系可以例如基于两个关系数据项来导出,其中关系数据项中的第一个表达在第一和第二实体之间的关系,以及关系数据项中的第二个表达在第二实体和第三实体之间的关系。在该示例性情况下,上述隐含关系可以被设置成表达在第一和第三实体之间的关系与在第一和第二实体之间的关系相同。关系数据项中的第一个可以表达例如“TCP目的地端口X由协议-Y使用”,其中“TCP目的地端口X”和“协议-Y”分别是第一和第二实体,以及用法“由……使用”是它们的关系,以及关系数据项中的第二个可以表达例如“订户Z使用协议-Y”,其中“订户Z”是第三实体以及用法“使用”是在第二和第三实体之间的关系。在这种情况下,隐含关系可以是“订户Z使用TCP目的地端口X”。
根据本发明的示例性且非限制性实施例的方法进一步包括基于关系数据项、动作策略规则和导出的隐含关系来导出隐含动作规则。在该示例性情况下,用于一个或多个网络元件的配置数据可以基于关系数据项、动作策略规则、导出的隐含关系和导出的隐含动作规则来生成。示例性隐含动作规则可以例如基于动作策略规则和上述隐含关系来导出,其中动作策略规则表达与上述第一实体有关的第一事件和响应于第一事件要被执行的至少一个第一动作。在该示例性情况下,上述隐含动作规则可以被设置成表达第一动作响应于与上述第三实体有关的事件要被执行。上述动作策略规则可以是例如“当传入数据具有TCP目的地端口X时,然后阻止传入数据”,其中“传入数据具有TCP目的地端口X”表示与第一实体有关的第一事件以及“阻止传入数据”表示第一动作。在这种情况下,隐含动作规则可以是例如“当传入数据属于订户Z时,然后阻止传入数据”,其中“传入数据属于订户Z”表示与第三实体“订户Z”有关的事件。
对隐含关系的导出以及将导出的隐含关系用于为一个或多个网络元件导出配置数据便于提供配置数据,使得一旦关系数据项和动作策略规则已作为输入数据被给出,就可以用适当方式自动处理许多不同情况。关系数据项和动作策略规则有利地用以人类可读和机器可读两者的格式定义数据的可扩展标记语言“XML”来呈现。关系数据项可以例如但不必被呈现为资源描述框架“RDF”数据模型的三元组“主语实体-谓语-宾语实体”。三元组可以被嵌套入用超文本标记语言“HTML”呈现的人类可读数据中。这允许以用户友好方式实现没有通过用于配置网络元件的系统的提供者预见或计划的服务和可操作模型。动作策略规则可以例如但不必以这样的形式来呈现,在该形式中每一个动作策略规则包含事件描述符、动作描述符和条件描述符,其中动作描述定义响应于以下情况要被执行的一个或多个动作:在该情况下由事件描述所定义的事件发生并且由条件描述符所定义的每个条件被满足。
根据本发明,还提供了用于配置软件定义网络的一个或多个网络元件的新的控制器设备。根据本发明的控制器设备包括:
-用于接收关系数据项和动作策略规则的数据接口,每一个关系数据项表达实体对及其关系,以及每一个动作策略规则表达事件和响应于该事件要被执行的一个或多个动作,以及
-用于为一个或多个网络元件生成配置数据的处理器,
其中,该处理器被配置成:
-基于关系数据项来导出在实体对之间的隐含关系,以及
-基于关系数据项、动作策略规则和导出的隐含关系为一个或多个网络元件生成配置数据。
根据本发明,还提供了新的软件定义网络,其包括:
-一个或多个网络元件,以及
-控制器设备,其用于将配置数据传送给一个或多个网络元件,以便对该一个或多个网络元件进行配置,
其中,该控制器设备包括:
-用于接收关系数据项和动作策略规则的数据接口,每一个关系数据项表达实体对及其关系,以及每一个动作策略规则表达事件和响应于该事件要被执行的一个或多个动作,以及
-处理器,其被配置成:
-基于关系数据项来导出在实体对之间的隐含关系,以及
-基于关系数据项、动作策略规则和导出的隐含关系为一个或多个网络元件生成配置数据。
根据本发明,还提供了用于基于关系数据项和动作策略规则来配置软件定义网络的一个或多个网络元件的新的计算机程序,每一个关系数据项表达实体对及其关系,以及每一个动作策略规则表达事件和响应于该事件要被执行的一个或多个动作。根据本发明的计算机程序包括计算机可执行指令,其用于控制可编程处理器:
-基于关系数据项来导出在实体对之间的隐含关系,以及
-基于关系数据项、动作策略规则和导出的隐含关系为一个或多个网络元件生成配置数据。
根据本发明,还提供了新的计算机程序产品。该计算机程序产品包括编码有根据本发明的计算机程序的非易失性计算机可读介质,例如光盘“CD”。
在伴随的从属权利要求中描述了本发明的多个示例性实施例。
当结合附图阅读时,根据特定示例性实施例的下面描述,将最好地理解既关于构建以及关于操作方法的本发明的各种示例性实施例,连同其另外目的和优点。
动词“包括”和“包含”在本文档中被用作为既不排除也不需要同样未记载的特征的存在的开放式限制。除非另外明确说明,在从属权利要求中记载的特征可相互自由组合。
附图说明
在下面参考附图更详细地说明了本发明的示例性实施例及其优点,在附图中:
图1示出根据本发明的示例性实施例的软件定义网络的示意图,
图2示出根据本发明的示例性实施例的控制器设备的示意图,以及
图3示出根据本发明的示例性实施例的、用于配置软件定义网络的一个或多个网络元件的方法的流程图。
具体实施方式
图1示出根据本发明的示例性实施例的软件定义网络“SDN”100的示意图。软件定义网络包括网络元件101、102、103和104以及控制器设备105。网络元件101-104通过数据传输链路相互连接,如图1中所图示。网络元件可以是例如IP(网际协议)路由器、多协议标签交换“MPLS”节点和/或以太网交换机。每一个网络元件可以由单个装置或多个装置的组合组成。在图1中所图示的示例性情况下,终端设备107被连接到控制器设备105,并且网络元件102用作到可以是例如全球因特网的外部网络106的网关。控制器设备105包括用于接收关系数据项和动作策略规则的数据接口。每一个关系数据项表达实体对和在实体之间的关系,以及每一个动作策略规则表达事件和响应于该事件要被执行的一个或多个动作。每一个关系数据项可以被呈现为包括主语实体、谓语和宾语实体的三元组,其中主语和宾语实体构成实体对以及谓语表达其相互关系。例如,关系数据项可以是“安全外壳“SSH”协议使用TCP目的地端口22”,其中“SSH-协议”是主语实体,“使用”是谓语,以及“TCP目的地端口22”是宾语实体。关系数据项的另一个示例是“订户S使用SSH-协议”,其中“订户S”是主语实体,“使用”是谓语,以及“SSH-协议”是宾语实体。每一个动作策略规则可以被呈现为包括事件描述符和指示响应于事件要被执行的一个或多个动作的动作描述符的二元组。例如,动作策略规则可以是“当传入数据表示SSH-协议时,然后阻止传入数据”,其中“传入数据表示SSH-协议”是事件描述符,以及“阻止传入数据”是动作描述符。
控制器设备105包括被配置成基于关系数据项来导出在实体对之间的隐含关系的处理器。隐含关系可以通过链结两个或更多个关系数据项,以使得关系数据项的宾语实体是下一关系数据项的主语实体来导出。在该链中的第一关系数据项的主语实体是导出的隐含关系的主语实体,并且在该链中的最后关系数据项的宾语实体是隐含关系的宾语实体。隐含关系的谓语典型地是该链中的第一关系数据项的谓语。例如,在上述示例性情况下,关系数据项“订户S使用SSH-协议”的宾语实体是关系数据项“SSH-协议使用TCP目的地端口22”的主语实体。因此,隐含关系是“订户S使用TCP目的地端口22”。
在根据本发明的示例性实施例的软件定义网络中,控制器设备105的处理器被进一步配置成基于关系数据项、动作策略规则和导出的隐含关系来导出隐含动作规则。隐含动作规则可以基于其的事件描述符包括关系数据项或隐含关系的主语实体的动作策略规则来导出。关系数据项或隐含关系的宾语实体构成隐含动作规则的事件描述符的基础,以及动作策略规则的动作描述符构成隐含动作规则的动作描述符。例如,在上述示例性情况下,动作策略规则“当传入数据表示SSH-协议时,然后阻止传入数据”的事件描述符包括关系数据项“SSH-协议使用TCP目的地端口22”的主语实体。这导致下面的隐含动作规则:“当传入数据具有TCP目的地端口22时,然后阻止传入数据”。隐含动作规则还可以基于其的事件描述符包括关系数据项或隐含关系的宾语实体的动作策略规则来导出。在这种情况下,关系数据项或隐含关系的主语实体构成隐含动作规则的事件描述符的基础,以及动作策略规则的动作描述符构成隐含动作规则的动作描述符。例如,上面导出的隐含动作规则“当传入数据具有TCP目的地端口22时,然后阻止传入数据”的事件描述符包括上面导出的隐含关系“订户S使用TCP目的地端口22”的宾语实体。这导致下面新的隐含动作规则:“当传入数据表示订户S时,然后阻止传入数据”。上面呈现的示例性情况说明了更早导出的隐含动作规则可以用于导出新的隐含动作规则。对隐含关系的导出以及将导出的隐含关系用于导出隐含动作规则便于一旦适当关系数据项和动作策略规则对控制器设备105可用,就提供自动化操作。
控制器设备105的处理器被进一步配置成基于关系数据项、动作策略规则和导出的隐含关系为软件定义网络“SDN”100生成网络级配置数据。在根据本发明的示例性实施例的软件定义网络中,控制器设备105的处理器被配置成还将上述隐含动作规则用作为网络级配置数据的基础。此外,控制器设备105的处理器被配置成基于网络级配置数据来生成网络元件特定配置数据。网络级配置数据指示响应于在软件定义网络“SDN”100中的不同事件要完成的动作。给定网络元件的配置数据指示考虑中的该网络元件响应于在该网络元件中发生或该网络元件另外已知的不同事件要完成的动作。控制器设备105优选地被配置成经由直接数据传输链路或经由一个或多个其他网络元件将网络元件101-104中的每一个的配置数据传送给适当的网络元件。
在根据本发明的示例性实施例的软件定义网络中,控制器设备105的处理器被配置成基于指示动作策略规则的相互优先级的冲突解决规则,结合隐含动作规则的导出,解决在相互冲突的动作策略规则之间的冲突。
在根据本发明的示例性实施例的软件定义网络中,控制器设备105的处理器被配置成基于指示动作策略规则的相互优先级的冲突解决规则,结合配置数据的生成,解决在相互冲突的动作策略规则之间的冲突。
在根据本发明的示例性实施例的软件定义网络中,控制器设备105被配置成将OpenFlow用作为通信方法,用于软件定义网络的控制面与软件定义网络的数据面通信。在这种情况下,OpenFlow可以用于将配置数据通信给一个或多个网络元件。OpenFlow由开放网络基金会“ONF”管理。
图2示出根据本发明的示例性实施例的控制器设备205的示意图。控制器设备包括用于接收关系数据项和动作策略规则的数据接口210。每一个关系数据项表达实体对及其关系,以及每一个动作策略规则表达事件和响应于该事件要被执行的一个或多个动作。控制器设备包括用于为网络218的一个或多个网络元件生成配置数据的处理器211。处理器211被配置成:
-基于关系数据项来导出在实体对之间的隐含关系,以及
-基于关系数据项、动作策略规则和导出的隐含关系为一个或多个网络元件生成配置数据。
控制器设备205可以进一步包括用于建立到网络218的数据传输连接以及用于将配置数据传送给一个或多个网络元件的发送器213、215和接收器212、214。还可能的是,控制器设备205设有用于连接到包括用于建立到网络218的数据传输连接的发送器和接收器的外部设备的数据接口。
在根据本发明的示例性实施例的控制器设备中,处理器211被配置成基于关系数据项、动作策略规则和导出的隐含关系来导出隐含动作规则,并且基于关系数据项、动作策略规则、导出的隐含关系和导出的隐含动作规则为一个或多个网络元件生成配置数据。
在根据本发明的示例性实施例的控制器设备中,处理器211被配置成借助于关系数据项或隐含关系,从更早已被导出的另一个隐含动作规则导出隐含动作规则中的至少一个。
在根据本发明的示例性实施例的控制器设备中,处理器211被配置成基于指示动作策略规则的相互优先级的冲突解决规则,结合隐含动作规则的导出,解决在相互冲突的动作策略规则之间的冲突。
在根据本发明的示例性实施例的控制器设备中,处理器211被配置成基于指示动作策略规则的相互优先级的冲突解决规则,结合配置数据的生成,解决在相互冲突的动作策略规则之间的冲突。
在根据本发明的示例性实施例的控制器设备中,处理器211被配置成基于第一和第二关系数据项R1和R2来导出隐含关系,其中第一关系数据项R1表达在第一和第二实体E1和E2之间的关系,以及第二关系数据项R2表达在第二实体E2和第三实体E3之间的关系。在这种情况下,隐含关系可以被设置成表达在第一和第三实体E1和E3之间的关系。在第一和第三实体E1和E3之间的关系可以被设置成与在第一和第二实体E1和E2之间的关系相同。
在根据本发明的示例性实施例的控制器设备中,处理器211被配置成基于第一动作策略规则AR1和上述隐含关系来导出隐含动作规则,其中第一动作策略规则AR1表达第一事件EV1和响应于第一事件要被执行的一个或多个第一动作ACT1,以及隐含关系表达在第一和第三实体E1和E3之间的关系,其中第一实体E1与第一事件EV1有关以及第三实体E3与第三事件EV3有关。在这种情况下,隐含动作规则可以被设置成表达一个或多个第一动作ACT1响应于第三事件EV3要被执行。
在根据本发明的示例性实施例的控制器设备中,数据接口210被配置成接收以根据以人类可读和机器可读两者的形式定义数据的可扩展标记语言“XML”的数据格式的关系数据项和动作策略规则。
在根据本发明的示例性实施例的控制器设备中,数据接口210被配置成接收作为三元组的资源描述框架“RDF”数据模型的关系数据项,每一个三元组包含主语实体、宾语实体以及定义在这些主语和宾语实体之间的关系的谓语。
在根据本发明的示例性实施例的控制器设备中,处理器211被配置成至少部分基于动作策略规则和导出的隐含动作规则,为要被配置的一个或多个网络元件中的每一个构建包含转发规则的查找表,查找表表示用于该网络元件的配置数据的至少一部分。
在根据本发明的示例性实施例的控制器设备中,数据接口210被配置成接收以这样的形式的动作策略规则,在该形式中每一个动作策略规则包含事件描述符、动作描述符和条件描述符,动作描述定义响应于以下情况要被执行的一个或多个动作:在该情况下由事件描述所定义的事件发生并且由条件描述符所定义的每个条件被满足。
根据本发明的示例性实施例的控制器设备被配置成将OpenFlow用作为通信方法,用于软件定义网络的控制面与软件定义网络的数据面通信。在这种情况下,OpenFlow可以用于将配置数据通信给一个或多个网络元件。
图2中所示的控制器设备的处理器211可以用一个或多个处理器电路来实现,其每一个可以是设有适当软件的可编程处理器电路、专用硬件处理器,诸如专用集成电路“ASIC”、或可配置的硬件处理器,诸如现场可编程门阵列“FPGA”。
图3示出根据本发明的示例性实施例的、用于基于关系数据项和动作策略规则来配置软件定义网络的一个或多个网络元件的方法的流程图,每一个关系数据项表达实体对及其关系,以及每一个动作策略规则表达事件和响应于该事件要被执行的一个或多个动作。图3中所图示的方法包括下面动作:
-动作301:基于关系数据项来导出在实体对之间的隐含关系,以及
-动作303:基于关系数据项、动作策略规则和导出的隐含关系为一个或多个网络元件生成配置数据。
此外,该方法可以包括经由软件定义网络的数据传输链路将配置数据传送给一个或多个网络元件。例如,可以将OpenFlow用作为通信方法,用于软件定义网络的控制面与软件定义网络的数据面通信。在这种情况下,OpenFlow可以用于将配置数据通信给一个或多个网络元件。
根据本发明的示例性实施例的方法包括基于关系数据项、动作策略规则和导出的隐含关系来导出隐含动作规则。对隐含动作规则的导出是在图3中所示的动作302。在该示例性情况下,基于关系数据项、动作策略规则、导出的隐含关系和导出的隐含动作规则来生成用于一个或多个网络元件的配置数据。
根据本发明的示例性实施例的方法包括借助于关系数据项或隐含关系,从更早已被导出的另一个隐含动作规则导出隐含动作规则中的至少一个。
根据本发明的示例性实施例的方法包括基于指示动作策略规则的相互优先级的冲突解决规则,结合隐含动作规则的导出,解决在相互冲突的动作策略规则之间的冲突。
根据本发明的示例性实施例的方法包括基于指示动作策略规则的相互优先级的冲突解决规则,结合配置数据的生成,解决在相互冲突的动作策略规则之间的冲突。
在根据本发明的示例性实施例的方法中,基于第一和第二关系数据项R1和R2来导出隐含关系,其中第一关系数据项R1表达在第一和第二实体E1和E2之间的关系,以及第二关系数据项R2表达在第二实体E2和第三实体E3之间的关系。在这种情况下,隐含关系可以被设置成表达在第一和第三实体E1和E3之间的关系。在第一和第三实体E1和E3之间的关系可以被设置成与在第一和第二实体E1和E2之间的关系相同。
在根据本发明的示例性实施例的方法中,基于第一动作策略规则AR1和上述隐含关系来导出隐含动作规则,其中第一动作策略规则AR1表达第一事件EV1和响应于第一事件要被执行的一个或多个第一动作ACT1,以及隐含关系表达在第一和第三实体E1和E3之间的关系,其中第一实体E1与第一事件EV1有关以及第三实体E3与第三事件EV3有关。在这种情况下,隐含动作规则可以被设置成表达一个或多个第一动作ACT1响应于第三事件EV3要被执行。
在根据本发明的示例性实施例的方法中,接收以根据以人类可读和机器可读两者的形式定义数据的可扩展标记语言“XML”的数据格式的关系数据项和动作策略规则。
在根据本发明的示例性实施例的方法中,关系数据项是三元组的资源描述框架“RDF”数据模型,每一个三元组包含定义实体对的主语实体和宾语实体以及定义在这些主语和宾语实体之间的关系的谓语。
根据本发明的示例性实施例的方法包括至少部分基于动作策略规则和导出的隐含动作规则,为要被配置的一个或多个网络元件中的每一个构建包含转发规则的查找表,查找表表示用于该网络元件的配置数据的至少一部分。
在根据本发明的示例性实施例的方法中,动作策略规则中的每一个包含事件描述符、动作描述符和条件描述符,动作描述定义响应于以下情况要被执行的一个或多个动作:在该情况下由事件描述所定义的事件发生并且由条件描述符所定义的每个条件被满足。
根据本发明的示例性实施例的计算机程序包括用于基于关系数据项和动作策略规则来配置软件定义网络的一个或多个网络元件的软件模块,每一个关系数据项表达实体对及其关系,以及每一个动作策略规则表达事件和响应于该事件要被执行的一个或多个动作。软件模块包括计算机可执行指令,所述计算机可执行指令用于控制可编程处理器:
-基于关系数据项来导出在实体对之间的隐含关系,以及
-基于关系数据项、动作策略规则和导出的隐含关系为一个或多个网络元件生成配置数据。
在根据本发明的示例性实施例的计算机程序中,软件模块进一步包括这样的计算机可执行指令,其用于控制可编程处理器基于关系数据项、动作策略规则和导出的隐含关系来导出隐含动作规则,并且基于关系数据项、动作策略规则、导出的隐含关系和导出的隐含动作规则为一个或多个网络元件生成配置数据。
软件模块可以是例如用适当编程语言和用适于编程语言和可编程处理器的编译器实现的子程序或函数。
根据本发明的示例性实施例的计算机程序产品包括编码有根据本发明的示例性实施例的计算机程序的计算机可读介质,例如光盘“CD”。
根据本发明的示例性实施例的信号被编码为承载定义根据本发明的示例性实施例的计算机程序的信息。
在上面给出的描述中所提供的特定示例不应当被解释为限制所附权利要求的范围和/或实用性。
Claims (25)
1.一种用于配置软件定义网络的一个或多个网络元件的控制器设备(205),所述控制器设备包括:
-用于接收关系数据项和动作策略规则的数据接口(210),每一个关系数据项表达构成实体对的主语实体和宾语实体及其表示所述主语实体和所述宾语实体之间关系的谓语,并且每一个动作策略规则表达事件和响应于所述事件要被执行的一个或多个动作,以及
-用于为所述一个或多个网络元件生成配置数据的装置(211),其特征在于,所述控制器设备进一步包括:
-用于基于所述关系数据项来导出在各个实体对之间的隐含关系的装置,每个所述隐含关系通过链结两个或更多个关系数据项以使链中较早的第一关系数据项的宾语实体是该链中下一个即第二关系数据项的主语实体而被导出,并且,基于所述关系数据项中的第一关系数据项和第二关系数据项导出所述隐含关系中的第一隐含关系,所述关系数据项中的所述第一关系数据项表达在所述实体中的第一实体和第二实体之间的关系,所述关系数据项中的所述第二关系数据项表达在所述实体中的所述第二实体和第三实体之间的关系,以及所述隐含关系中的所述第一隐含关系表达在所述实体中的所述第一实体和第三实体之间的关系,以及
-用于基于所述关系数据项、所述动作策略规则和所述导出的隐含关系为所述一个或多个网络元件生成所述配置数据的装置。
2.根据权利要求1所述的控制器设备,其中,所述控制器设备包括用于下述步骤的装置:基于所述关系数据项、所述动作策略规则和所述导出的隐含关系来导出隐含动作规则,并且基于所述关系数据项、所述动作策略规则、所述导出的隐含关系和所述导出的隐含动作规则为所述一个或多个网络元件生成所述配置数据。
3.根据权利要求2所述的控制器设备,其中,所述控制器设备包括用于下述步骤的装置:基于指示所述动作策略规则的相互优先级的冲突解决规则,结合所述隐含动作规则的导出,解决在相互冲突的动作策略规则之间的冲突。
4.根据权利要求1至3中的任何一个所述的控制器设备,其中,所述控制器设备包括用于下述步骤的装置:基于指示所述动作策略规则的相互优先级的冲突解决规则,结合所述配置数据的生成,解决在相互冲突的动作策略规则之间的冲突。
5.根据权利要求2至3中的任何一个所述的控制器设备,其中,所述控制器设备包括用于下述步骤的装置:基于所述动作策略规则中的第一动作策略规则和所述隐含关系中的第一隐含关系来导出所述隐含动作规则中的第一隐含动作规则,所述动作策略规则中的所述第一动作策略规则表达第一事件和响应于所述第一事件要被执行的一个或多个第一动作,所述隐含关系中的所述第一隐含关系表达在所述实体中的第一实体和所述实体中的第二实体之间的关系,其中所述实体中的所述第一实体与所述第一事件有关以及所述实体中的所述第二实体与第二事件有关,以及所述隐含动作规则中的所述第一隐含动作规则表达所述一个或多个第一动作响应于所述第二事件要被执行。
6.根据权利要求1所述的控制器设备,其中,所述控制器设备包括用于下述步骤的装置:基于所述动作策略规则中的第一动作策略规则和所述隐含关系中的所述第一隐含关系来导出所述隐含动作规则中的第一隐含动作规则,所述动作策略规则中的所述第一动作策略规则表达第一事件和响应于所述第一事件要被执行的一个或多个第一动作,所述隐含关系中的所述第一隐含关系表达在所述实体中的所述第一实体和所述实体中的所述第三实体之间的关系,其中所述实体中的所述第一实体与所述第一事件有关以及所述实体中的所述第三实体与第三事件有关,以及所述隐含动作规则中的所述第一隐含动作规则表达所述一个或多个第一动作响应于所述第三事件要被执行。
7.根据权利要求1所述的控制器设备,其中,所述控制器设备包括用于下述步骤的装置:将在所述实体中的所述第一和第三实体之间并且由所述隐含关系中的所述第一隐含关系表达的所述关系设置成与在所述实体中的所述第一和第二实体之间并且由所述关系数据项中的所述第一关系数据项表达的所述关系相同。
8.根据权利要求1至3中的任何一个所述的控制器设备,其中,所述数据接口被配置成接收以根据以人类可读和机器可读两者的形式定义数据的可扩展标记语言的数据格式的所述关系数据项和动作策略规则。
9.根据权利要求1至3中的任何一个所述的控制器设备,其中,所述控制器设备包括用于下述步骤的装置:至少部分基于所述动作策略规则,为要被配置的所述一个或多个网络元件中的每一个构建包含转发规则的查找表,所述查找表表示用于所述网络元件的所述配置数据的至少一部分。
10.根据权利要求2至3中的任何一个所述的控制器设备,其中,所述控制器设备包括用于下述步骤的装置:至少部分基于所述动作策略规则和所述导出的隐含动作规则,为要被配置的所述一个或多个网络元件中的每一个构建包含转发规则的查找表,所述查找表表示用于所述网络元件的所述配置数据的至少一部分。
11.根据权利要求1至3中的任何一个所述的控制器设备,其中,所述数据接口被配置成接收下述形式的所述动作策略规则:在该形式中每一个动作策略规则包含事件描述符、动作描述符和条件描述符,所述动作描述定义响应于如下情况要被执行的一个或多个动作:在该情况下由所述事件描述所定义的事件发生并且由所述条件描述符所定义的每个条件被满足。
12.根据权利要求2至3中的任何一个所述的控制器设备,其中,所述控制器设备包括用于下述步骤的装置:从更早导出的所述隐含动作规则中的另一个导出所述隐含动作规则中的至少一个。
13.一种用于基于关系数据项和动作策略规则来配置软件定义网络的一个或多个网络元件的方法,每一个关系数据项表达构成实体对的主语实体和宾语实体及其表示所述主语实体和所述宾语实体之间关系的谓语,以及每一个动作策略规则表达事件和响应于所述事件要被执行的一个或多个动作,其特征在于,所述方法包括:
-基于所述关系数据项来导出(301)在所述实体对之间的隐含关系,每个所述隐含关系通过链结两个或更多个关系数据项以使链中较早的第一关系数据项的宾语实体是该链中下一个即第二关系数据项的主语实体而被导出,并且,基于所述关系数据项中的第一关系数据项和第二关系数据项导出所述隐含关系中的第一隐含关系,所述关系数据项中的所述第一关系数据项表达在所述实体中的第一实体和第二实体之间的关系,所述关系数据项中的所述第二关系数据项表达在所述实体中的所述第二实体和第三实体之间的关系,以及所述隐含关系中的所述第一隐含关系表达在所述实体中的所述第一实体和第三实体之间的关系,以及
-基于所述关系数据项、所述动作策略规则和所述导出的隐含关系来生成(303)配置数据。
14.根据权利要求13所述的方法,其中,所述方法进一步包括:基于所述关系数据项、所述动作策略规则和所述导出的隐含关系来导出(303)隐含动作规则,并且基于所述关系数据项、所述动作策略规则、所述导出的隐含关系和所述导出的隐含动作规则为所述一个或多个网络元件生成所述配置数据。
15.根据权利要求14所述的方法,其中,所述方法包括基于指示所述动作策略规则的相互优先级的冲突解决规则,结合所述隐含动作规则的所述导出,解决在相互冲突的动作策略规则之间的冲突。
16.根据权利要求15所述的方法,其中,所述方法包括基于指示所述动作策略规则的所述相互优先级的所述冲突解决规则,结合所述配置数据的生成,解决在相互冲突的动作策略规则之间的冲突。
17.根据权利要求14至15中的任何一个所述的方法,其中,基于所述动作策略规则中的第一动作策略规则和所述隐含关系中的第一隐含关系来导出所述隐含动作规则中的第一隐含动作规则,所述动作策略规则中的所述第一动作策略规则表达第一事件和响应于所述第一事件要被执行的一个或多个第一动作,所述隐含关系中的所述第一隐含关系表达在所述实体中的第一实体和所述实体中的第二实体之间的关系,其中所述实体中的所述第一实体与所述第一事件有关以及所述实体中的所述第二实体与第二事件有关,以及所述隐含动作规则中的所述第一隐含动作规则表达所述一个或多个第一动作响应于所述第二事件要被执行。
18.根据权利要求13所述的方法,其中,基于所述动作策略规则中的第一动作策略规则和所述隐含关系中的所述第一隐含关系来导出所述隐含动作规则中的第一隐含动作规则,所述动作策略规则中的所述第一动作策略规则表达第一事件和响应于所述第一事件要被执行的一个或多个第一动作,所述隐含关系中的所述第一隐含关系表达在所述实体中的所述第一实体和所述实体中的所述第三实体之间的关系,其中所述实体中的所述第一实体与所述第一事件有关以及所述实体中的所述第三实体与第三事件有关,以及所述隐含动作规则中的所述第一隐含动作规则表达所述一个或多个第一动作响应于所述第三事件要被执行。
19.根据权利要求17所述的方法,其中,所述方法包括将在所述实体中的所述第一和第三实体之间并且由所述隐含关系中的所述第一隐含关系表达的关系设置成与在所述实体中的所述第一和第二实体之间并且由所述关系数据项中的所述第一关系数据项表达的关系相同。
20.根据权利要求13至15中的任何一个所述的方法,其中,所述关系数据项和动作策略规则以根据以人类可读和机器可读两者的形式定义数据的可扩展标记语言的数据格式来接收。
21.根据权利要求13至15中的任何一个所述的方法,其中,所述方法包括至少部分基于所述动作策略规则,为要被配置的所述一个或多个网络元件中的每一个构建包含转发规则的查找表,所述查找表表示用于所述网络元件的所述配置数据的至少一部分。
22.根据权利要求14至15中的任何一个所述的方法,其中,所述方法包括至少部分基于所述动作策略规则和所述隐含动作规则,为要被配置的所述一个或多个网络元件中的每一个构建包含转发规则的查找表,所述查找表表示用于所述网络元件的所述配置数据的至少一部分。
23.根据权利要求13至15中的任何一个所述的方法,其中,所述动作策略规则中的每一个包含事件描述符、动作描述符和条件描述符,所述动作描述定义响应于如下情况要被执行的一个或多个动作:在该情况下由所述事件描述所定义的事件发生并且由所述条件描述符所定义的每个条件被满足。
24.根据权利要求14至15中的任何一个所述的方法,其中,所述隐含动作规则中的至少一个从更早导出的所述隐含动作规则中的另一个导出。
25.一种软件定义网络,包括:
-一个或多个网络元件(101至104),以及
-根据权利要求1至3中的任何一个所述的控制器设备(105),用于将配置数据传送给所述一个或多个网络元件,以便对所述一个或多个网络元件进行配置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FI20126105 | 2012-10-25 | ||
FI20126105A FI20126105L (fi) | 2012-10-25 | 2012-10-25 | Menetelmä ja ohjauslaite ohjelmallisesti määriteltävän verkon konfiguroimiseksi |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103780425A CN103780425A (zh) | 2014-05-07 |
CN103780425B true CN103780425B (zh) | 2018-12-04 |
Family
ID=49447427
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310512810.0A Active CN103780425B (zh) | 2012-10-25 | 2013-10-25 | 用于配置软件定义网络的方法和控制器设备 |
Country Status (4)
Country | Link |
---|---|
US (1) | US9426025B2 (zh) |
EP (1) | EP2725741A3 (zh) |
CN (1) | CN103780425B (zh) |
FI (1) | FI20126105L (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9270612B2 (en) * | 2013-12-13 | 2016-02-23 | International Business Machines Corporation | Software-defined networking interface between multiple platform managers |
US10469349B2 (en) | 2014-07-18 | 2019-11-05 | Hewlett Packard Enterprise Development Lp | Conflict detection in a hybrid network device |
CN104202303A (zh) * | 2014-08-11 | 2014-12-10 | 华中科技大学 | 一种sdn应用的策略冲突检测方法及系统 |
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 |
CN104506511A (zh) * | 2014-12-15 | 2015-04-08 | 蓝盾信息安全技术股份有限公司 | 一种sdn网络动态目标防御系统及方法 |
US10129097B2 (en) | 2015-06-02 | 2018-11-13 | ALTR Solutions, Inc. | GUI and high-level API wrapper for software defined networking and software defined access for controlling network routing and rules |
CN111404709B (zh) * | 2019-01-02 | 2023-05-09 | 中国移动通信有限公司研究院 | 网络功能虚拟化下策略规则的运行方法及装置 |
CN112867035B (zh) * | 2021-01-18 | 2023-08-25 | 中盈优创资讯科技有限公司 | 一种5g传输网spn网元一键开局方法及装置 |
US11955127B2 (en) * | 2021-02-24 | 2024-04-09 | Kyndryl, Inc. | Cognitive correlation of group interactions |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7451201B2 (en) * | 2003-09-30 | 2008-11-11 | International Business Machines Corporation | Policy driven autonomic computing-specifying relationships |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2408168B (en) | 2002-07-19 | 2006-07-05 | Masergy Communications Inc | System and method for providing a customer controlled network |
FR2843260B1 (fr) | 2002-07-31 | 2005-04-08 | Cit Alcatel | Systeme de gestion de reseau par regles comportant un moteur d'inference |
JP2004292197A (ja) * | 2003-03-26 | 2004-10-21 | Ngk Insulators Ltd | ハニカム構造体の製造方法 |
US8285874B2 (en) | 2004-01-27 | 2012-10-09 | Cisco Technology, Inc. | Routing systems and methods for implementing routing policy with reduced configuration and new configuration capabilities |
US9104779B2 (en) * | 2005-03-30 | 2015-08-11 | Primal Fusion Inc. | Systems and methods for analyzing and synthesizing complex knowledge representations |
WO2007065471A1 (en) | 2005-12-05 | 2007-06-14 | Telefonaktiebolaget Lm Ericsson (Publ) | A method and a system relating to network management |
GB0718214D0 (en) | 2007-09-19 | 2007-10-31 | Ibm | An apparatus for storing a logical statement |
US8694448B2 (en) | 2008-12-16 | 2014-04-08 | At&T Intellectual Property I, L.P. | Method and apparatus for providing an adaptive parser |
KR101408108B1 (ko) * | 2009-09-14 | 2014-06-17 | 닛본 덴끼 가부시끼가이샤 | 통신 시스템, 노드, 제어 장치, 및 제어 방법 |
EP3720062A1 (en) * | 2009-10-07 | 2020-10-07 | NEC Corporation | Information system, control server, virtual network management method, and program |
US8897134B2 (en) * | 2010-06-25 | 2014-11-25 | Telefonaktiebolaget L M Ericsson (Publ) | Notifying a controller of a change to a packet forwarding configuration of a network element over a communication channel |
US9001827B2 (en) * | 2010-12-17 | 2015-04-07 | Big Switch Networks, Inc. | Methods for configuring network switches |
US8964563B2 (en) * | 2011-07-08 | 2015-02-24 | Telefonaktiebolaget L M Ericsson (Publ) | Controller driven OAM for OpenFlow |
WO2013035342A1 (en) * | 2011-09-09 | 2013-03-14 | Nec Corporation | Network management service system, control apparatus, method, and program |
US9184995B2 (en) * | 2012-04-11 | 2015-11-10 | Gigamon Inc. | Traffic visibility in an open networking environment |
US9647938B2 (en) * | 2012-06-11 | 2017-05-09 | Radware, Ltd. | Techniques for providing value-added services in SDN-based networks |
-
2012
- 2012-10-25 FI FI20126105A patent/FI20126105L/fi not_active Application Discontinuation
-
2013
- 2013-10-21 EP EP13189470.1A patent/EP2725741A3/en not_active Ceased
- 2013-10-24 US US14/061,796 patent/US9426025B2/en active Active
- 2013-10-25 CN CN201310512810.0A patent/CN103780425B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7451201B2 (en) * | 2003-09-30 | 2008-11-11 | International Business Machines Corporation | Policy driven autonomic computing-specifying relationships |
Also Published As
Publication number | Publication date |
---|---|
US9426025B2 (en) | 2016-08-23 |
EP2725741A3 (en) | 2016-04-13 |
EP2725741A2 (en) | 2014-04-30 |
CN103780425A (zh) | 2014-05-07 |
FI20126105L (fi) | 2014-04-26 |
US20140122668A1 (en) | 2014-05-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103780425B (zh) | 用于配置软件定义网络的方法和控制器设备 | |
Tan et al. | In-band network telemetry: A survey | |
Kaur et al. | Tensor-based big data management scheme for dimensionality reduction problem in smart grid systems: SDN perspective | |
CN105406992B (zh) | 一种面向sdn的业务需求转化和部署方法 | |
CN107851109B (zh) | 软件定义网络的配置 | |
Molina et al. | Using software defined networking to manage and control IEC 61850-based systems | |
CN106961445B (zh) | 基于fpga硬件并行流水线的报文解析装置 | |
CN102783098B (zh) | 通信系统、路径控制设备、分组转发设备以及路径控制方法 | |
CN103873291B (zh) | 用于配置软件定义的网络的方法和设备 | |
CN103825823A (zh) | 基于不同优先级的软件定义网络中数据转发方法 | |
Huang et al. | Software-defined QoS provisioning for fog computing advanced wireless sensor networks | |
CN106341330A (zh) | 一种sdn控制器的拓扑发现方法及系统 | |
CN112491619A (zh) | 一种基于sdn的服务定制网络资源自适应分配技术 | |
KR20140052847A (ko) | 소프트웨어 정의 네트워킹 기반 네트워크에서 서비스 품질 제공 방법 및 그 장치 | |
Manzanares-Lopez et al. | Passive in-band network telemetry systems: The potential of programmable data plane on network-wide telemetry | |
WO2021098824A1 (zh) | 网络切片创建方法、基础网络控制器、系统和存储介质 | |
Babbar et al. | Performance evaluation of qos metrics in software defined networking using ryu controller | |
Seeger et al. | Rule-based translation of application-level QoS constraints into SDN configurations for the IoT | |
JP6524911B2 (ja) | ネットワーク制御装置、ネットワーク制御方法およびプログラム | |
Sun et al. | SDN-based autonomic CCN traffic management | |
Liu et al. | An enhanced scheduling mechanism for elephant flows in SDN-based data center | |
EP2753034A1 (en) | A method and a device for defining implementation of a look-up table for a network element of a software-defined network | |
Zhou et al. | PindSwitch: A SDN-based protocol-independent autonomic flow processing platform | |
Pagano et al. | RTNS: an NS-2 extension to simulate wireless real-time distributed systems for structured topologies | |
US9432291B2 (en) | Method and a device for defining a look-up system for a network element of a software-defined network |
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 |