CN105103492A - 控制网络拓扑 - Google Patents
控制网络拓扑 Download PDFInfo
- Publication number
- CN105103492A CN105103492A CN201380075346.1A CN201380075346A CN105103492A CN 105103492 A CN105103492 A CN 105103492A CN 201380075346 A CN201380075346 A CN 201380075346A CN 105103492 A CN105103492 A CN 105103492A
- Authority
- CN
- China
- Prior art keywords
- topology
- network
- template
- present topology
- present
- 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/12—Discovery or management of network topologies
-
- 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/14—Network analysis or design
-
- 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/02—Topology update or discovery
-
- 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/14—Network analysis or design
- H04L41/145—Network analysis or design involving simulating, designing, planning or modelling of a network
-
- 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/16—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using machine learning or artificial intelligence
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
控制网络拓扑包括确定网络的所期望的拓扑,将所述所期望的拓扑与网络的当前拓扑进行比较,以及采用对所述当前拓扑中的网络组件的角色分配和参数分配控制所述当前拓扑,以采用当前网络组件来实现所述所期望的拓扑。
Description
背景技术
为了把分组从一个网络组件路由到另一网络组件,通过路由器和交换机发送分组。路由器一般连接组成更大的互联的网络的层2网络。分组被发送到层2网络的路由器,其中该分组起源于该层2网络。路由器将发送分组到第二路由器,如果该分组的目的地不是与该第二路由器相关的层2网络的部分,则所述第二路由器将会将分组转发到再一路由器,或者如果它相关的层2网络包含该分组的目的地,则所述第二路由器将该分组放到它的层2网络上。控制平面是路由器的架构的一部分,所述控制平面控制如何转发分组。一般地,控制平面具有列出互联的网络的组件和其位置的路由表。当确定如何转发分组时,控制平面查阅路由表。此外,控制平面遵循规定路由器如何与其它路由器通信的路由协议。
附图说明
附图图解了本文描述的原理的各种示例,并且是说明书的一部分。经图解的示例仅仅是示例,并不限制权利要求书的范围。
图1是根据本文描述的原理的网络的示例的图。
图2是根据本文描述的原理的控制系统的示例的图。
图3是根据本文描述的原理的所期望的网络拓扑模板的示例的图。
图4是根据本文描述的原理的用于收集信息的过程的流程图的示例的图。
图5是根据本文描述的原理的用于给网络组件分配角色的方法的示例的图。
图6是根据本文描述的原理的用于控制网络拓扑的方法的示例的图。
图7是根据本文描述的原理的控制系统的示例的图。
图8是根据本文描述的原理的控制系统的示例的图。
图9是根据本文描述的原理的用于控制网络拓扑的过程的流程图的示例的图。
具体实施方式
控制平面实现使用网络拓扑以将分组转发到网络中的适当目的地。网络拓扑包含建立于网络组件之间的逻辑连接。存在数种控制平面实现。这类控制平面实现包括分布式径内(distributedinpath)控制平面实现(诸如,在层2网络处的快速生成树协议(RSTP)),集中式离径(centralizedoffpath)控制平面实现(诸如OpenFlow,其中一程序同时控制数个路由器),以及运行RSTP和OpenFlow两者的混合实现。但是,这些实现中的每一个都有其限制。传统的分布式控制平面实现快于反应并且缩放良好,但是难于改变,具有有限的拓扑可见性,并且提供较少的控制选项。比如OpenFlow的集中式控制平面实现快于改变,提供更多的控制选项,但是具有可缩放性和性能上的挑战。
其它集中式控制平面实现包括传统的网络管理,其中中央离径控制器控制分布式/径上控制器函数的参数。该实现最适于长期业务需求,但是不以个体通信流速度反应,并且分布式控制平面难于增加或修改。另一集中式控制平面实现包括覆盖管理,其中中央离径控制器控制在层2网络的入口点和出口点处的封装,以创建利用由分布式/径上控制器函数创建的拓扑满足业务需求的路径。该实现仍然受到在适当位置的分布式控制平面限制。并且,底层管理具有微管理交换转发以满足业务需求的中央离径控制器。这类实现的一个示例是OpenFlow。这类实现具有故障缩放并且当进行远程决策时具有较慢的反应时间。
本文描述的原理包括用于通过改变控制平面实现以最佳地满足应用的规格来控制网络拓扑的方法。这样的方法包括确定网络的所期望的拓扑,将所期望的拓扑与网络的当前拓扑进行比较,以及采用对当前拓扑中的网络组件的角色分配和参数分配控制当前拓扑以采用当前网络组件实现所期望的拓扑。所述角色分配包括每个网络组件将要执行的以实现所期望的拓扑的作业。这类角色可以包括协议平面角色、控制平面角色、或者网络组件将参与到所期望的拓扑中的其它、或者它们的组合。所述参数包括用于执行角色分配的较低级实现。例如,参数分配可以包括链路聚合归组参数、端口状态参数、服务质量参数、其它参数、或者它们的组合。
在以下的描述中,出于解释的目的,阐述许多具体细节以提供对本系统和方法的透彻理解。然而,对本领域技术人员来说将显而易见的是,可以在没有这些具体细节的情况下实施本装置、系统以及方法。在说明书中对“示例”或者类似的语言的提及意指所描述的特定的特征、结构或者特性被包含在至少那一个示例中,但未必包含在其它示例中。
图1是根据本文描述的原理的网络(100)的示例的图。在该示例中,网络(100)具有第一网络(102)、第二网络(104)以及远程客户端(106)。所述第一网络(102)具有与控制系统(110)通信的因特网连接部分(108)。并且,所述第二网络(104)具有与所述控制系统通信的内联网部分(112)。此外,所述控制系统(110)还与所述远程客户端(106)通信。
除了因特网连接部分(108)之外,第一网络(102)具有无线接入部分(114),有线客户端接入部分(116),核心交换部分(118),内联网部分(120)以及数据中心连接部分(122)。并且,第二网络(104)具有核心交换部分(124),数据中心连接部分(126)以及有线客户端接入部分(128)。虽然已经参考互联的网络(100)描述了该示例,但是可以依照本文描述的原理使用任何适当的网络类型。在替代示例中,所述网络为层2网络,数据中心网络,存储网络,企业网络,局域网络,虚拟局域网络,另一类型的网络,或者它们的组合。
控制系统(110)可以获取用于执行网络上的特定应用或者普通应用的所期望的网络拓扑的描述。控制系统(110)可以请求该描述,从用户输入接收该描述,或者基于用于执行特定应用的请求、其它机制、或者它们的组合来确定该描述。响应于获取该描述,控制系统(110)读取该描述以确定如何构建所期望的拓扑。另外,控制系统(110)确定所述网络的当前拓扑并且将网络(100)的当前拓扑与所期望的拓扑进行比较。
控制系统(110)发现来自第一和第二网络(102,104)中的每个部分、远程客户端(106)以及这些部分如何互相连接。发现过程可以通过探测以及听网络(100)的部分、读取网络管理数据库信息、查阅管理员输入、使用网络计划程序、其它机制、或者它们的组合来完成。另外,控制系统(110)可以查阅诸如因特网或者其它资源的外部资源,以确定关于网络(100)的当前拓扑的信息。
在一些示例中,控制系统(110)查阅外部资源以确定如何构建所期望的拓扑。例如,多种硬件设备以及程序可以能够实现所期望的拓扑。控制系统(110)可以参考在网络(100)外部的资源来确定已经在当前拓扑中的现存程序和硬件中的至少一些是否是兼容的以便实现所期望的拓扑。
用于将当前拓扑与所期望的拓扑进行比较的一种机制是采用关于当先拓扑和所期望的拓扑两者的有用信息填写模板。所述模板可以以使得它们之间的区别明显的这样的方式组织关于当前拓扑和所期望的拓扑的所获取的信息。因此,控制系统(110)可以互相比较模板以确定当前拓扑与所期望的拓扑是否不同。如果当前拓扑与所期望的拓扑不同,则控制系统可以进一步确定当前拓扑是否能够支持所期望的拓扑。如果不能支持,控制系统可以请求或者主动获取用于当前拓扑的附加资源以实现所期望的拓扑。
此外,控制系统(110)确定什么类型的控制平面用于在所述第一和第二网络(102,104)以及与它们相关的部分上实现。响应于确定所期望的控制平面实现,控制系统(110)给各种网络组件分配角色以跨网络实现控制平面。对于所述第一和第二网络(102,104)而言以及对于所述第一和第二网络(102,104)中的每一个之中的部分而言,被分配的角色中的每一个可以是不同的。
控制系统(110)还酌情修改已发现的经部署的中央及分布式控制平面以执行控制平面实现。此外,如果期望的话,控制系统(110)利用新网络资源来酌情实现所期望的拓扑以实现所期望的拓扑。在建立所期望的网络拓扑之后,监视该网络以酌情做出进一步调整。
在发现网络拓扑及能力之后,控制系统(110)确定集中式和分布式控制平面中的哪一类型符合所期望的拓扑的规格。例如,控制系统(110)可以确定使用传统RSTP分布式控制平面用于在第一网络和第二网络(102,104)两者之中的两个有线客户端接入部分(116,128)。可以选择覆盖管理模式用于第一网络(102)的无线客户端接入部分(114)。控制系统(110)还可以选择传统因特网协议(IP)控制平面和防火墙用于所述第一网络的因特网连接部分(108)。
此外,控制系统(110)可以选择混合模式用于交换核心部分(118,124)以使用RSTP和OpenFlow控制平面实现两者。内联网部分(112,120)可以被分配纯OpenFlow控制平面,因为内联网拓扑简单并且其有助于跨第一和第二网络(102,104)虚拟化数据中心。混合模式还可以被实现用于数据中心连接部分(122,126),其中使用独特的协议用于专用带宽,利用数据中心桥接方法,并使用OpenFlow帮助提供跨第一网络和第二网络(102,104)的虚拟化。
如上所述的这样的拓扑可以被用于创建虚拟局域网(VLANs)。这类VLAN可以包括:到第二网络(104)的客户VLAN,其提供因特网连接性,同时仍然限制接入到第一网络(102);语音VLAN;企业数据VLAN;至少一个移动性VLAN,其用以从无线客户端接入部分(114)载送经封装的业务;一组VLAN,其用于连接第一网络和第二网络(102,104)中的数据中心连接部分(122,126)以帮助创建单个虚拟化数据中心;以及用于中央控制器的专用管理VLAN,其用以与互联的网络设备通信。多生成树协议(MSTP)可以被实现用来提供到每个VLAN的分离的生成树并且控制每个VLAN的拓扑以最好地满足业务需求。
控制系统(110)可以使用任何适当的可用来实现所期望的拓扑的信息,诸如所期望的拓扑和网络服务的一般描述,针对每个网络功能区域的网络部分描述,以及所期望的业务服务的类型。针对每个网络(102,104)和/或部分的控制平面实现可以包括说明不同控制平面实现类型,特定VLAN规则,服务质量规则,以及到网络的其它部分的互联方法的策略。
所期望的拓扑的一般描述被用于创建初始结构,在现存控制平面实现中设置参数,以及部署任意适当的附加控制平面实现。控制系统(110)还可以使用网络负载或独特的网络环境的描述来选择和调整控制平面元素以处理这些网络负载或环境。控制系统(110)可以使用这样的信息来建立控制平面配置以支持长期和短期网络环境。
图2是根据本文描述的原理的控制系统(200)的示例的图。在该示例中,控制系统(200)利用来自不同的源的现存信息来填写描述当前和所期望的网络拓扑的拓扑模板(202,204)。
控制系统(200)包括用于填写所期望的拓扑模板(202)以表达网络的所期望的状态以及当前拓扑模板(204)以表达网络的当前状态的机制。采用比较引擎(210)将经填写的所期望的拓扑模板(206)与经填写的当前拓扑模板(208)进行比较,以确定所期望的拓扑和当前拓扑之间的区别。
由控制系统(200)接收或者检索关于当前网络拓扑的信息。该信息可以来自各种各样的源以填写所期望的和/或当前拓扑模板(202,204)。用于填写当前拓扑模板(204)的信息可以来自已经存储在控制系统(200)、当前网络发现系统(214)、当前网络管理系统(216)、因特网(218)、其它源或者它们的组合中的当前拓扑信息(212)。采用来自所期望的拓扑描述(220)的信息填写用于填充所期望的拓扑模板(202)的信息,控制系统(200)要么从另一源接收所述信息要么基于网络将执行的应用内部地确定所述信息。当前拓扑模板(202,204)与所期望的拓扑的结构具有相似的格式以帮助比较引擎(210)进行比较。
虽然已经参考特定信息源描述了本示例以填写所期望的拓扑模板或者当前拓扑模板,但是可以依照本文描述的原理而使用包含对填写所期望的拓扑或者当前拓扑模板有用的信息的任何合适的源。
图3是根据本文描述的原理的所期望的网络拓扑模板(300)的示例的图。在该示例中,所期望的拓扑模板(300)包括网络部分列表(302),部分互联描述(304),以及全局参数(306)。最初使用所期望的网络拓扑的描述来填写所期望的拓扑模板(300)。可以用来自用于设备和互联细节的通用规则的一系列型式表示所期望的网络拓扑。读取所期望的网络拓扑并填写所期望的网络拓扑模板(300)的转换函数包含用于将通用规则转化为具体设备实现参数设置的功能,所述具体设备实现参数设置将被储存于所期望的拓扑模板(300)中。如果所期望的网络拓扑描述包含更多具体陈述的细节,那么可以使用更少的转化来填写所期望的拓扑模板(300)。
同样地,当前拓扑模板(图2,204)也包括网络部分列表、部分互联描述以及全局参数。该信息可以从至少一个其它数据收集实体处收集,从网络发现通信中搜集,或者这些方法的结合。该信息用于填写当前网络部分描述、互联描述以及全局参数。
虽然图3的示例参考特定数目的部分和部分类型描述了所期望的网络拓扑模板,但是可以根据本文描述的原理使用任何合适数目的部分或者部分类型。此外,虽然参考相似于当前网络拓扑模板的所期望的拓扑模板描述了上述示例,但是可以根据本文描述的原理而使用用于所期望的拓扑模板或者当前拓扑模板的任何合适的模板。例如,所期望的拓扑模板可以不相似于当前拓扑模板。
图4是根据本文描述的原理的用于收集信息的过程的流程图(400)的示例的图。在该示例中,所述过程包括读取(402)所期望的拓扑描述。可以从外部源获取所期望的拓扑描述,或者控制系统可以基于网络将执行的至少一个应用产生所期望的拓扑描述。在一些示例中,控制系统监视历史上采用网络处理的应用的类型并产生非常适于或者比当前拓扑更适于处理这样的应用的所期望的拓扑的描述。
该过程还包括读取(404)当前拓扑和确定(406)当前拓扑描述与所期望的拓扑描述是否匹配。如果所期望的拓扑与当前拓扑匹配,那么该过程结束(408)。另一方面,如果所期望的拓扑与当前拓扑不匹配,该过程将进一步确定(410)当前拓扑是否应该获取附加的网络组件以实现所期望的拓扑。如果期望更多的网络组件,则该过程包括添加(412)更多网络组件。附加的网络组件可以包括硬件、程序、虚拟组件、其它组件、或者其组合。
该过程还包括给当前网络拓扑的组件分配(414)角色以实现所期望的拓扑。这样的角色可以包括转发控制平面策略、其它角色、或者其组合。
图5是根据本文描述的原理的用于给网络组件分配角色的方法(500)的示例的图。在该示例中,方法(500)包括将网络归组(502)成部分并基于部分的能力给这些部分分配角色。另外,该过程包括组织(504)部分以执行它们的角色并与其它部分对接。
虽然参考用于给网络组件分配角色的特定机制描述了该示例,但是可以根据本文描述的原理使用用于给网络组件分配角色的任何合适的机制。例如,该分配可以基于单独的网络组件性能而不是基于部分性能或其组合。
图6是根据本文描述的原理的用于控制网络拓扑方法(600)的示例的图。在该示例中,方法(600)包括确定(602)网络的所期望的拓扑,比较(604)所期望的拓扑与网络的当前拓扑,以及采用对当前拓扑中的网络组件的角色分配和参数分配控制(606)当前拓扑以采用当前网络组件实现所期望的拓扑。
该方法可以包括将附加网络组件添加到当前拓扑以实现所期望的拓扑。网络组件可以是影响网络的拓扑的任何网络组件。例如,网络组件可以是控制平面元件、路由器、交换机、另一网络组件、或者它们的组合。
确定所期望的拓扑可以包括从另一源处接收所期望的拓扑的描述的至少部分。在一些示例中,从包括关于能够实现所期望的拓扑的设备的信息的至少一个源收集关于所期望的拓扑的信息。这样的信息可以被用于填写所期望的拓扑模板。另外,从包括涉及网络的当前拓扑的信息的源收集关于当前网络拓扑的信息。该信息还可以被用于填写当前拓扑模板。可以互相比较所期望的拓扑模板和当前拓扑模板以确定所期望的拓扑和当前拓扑是否匹配。
如果所期望的拓扑和当前拓扑不匹配,则可以修改当前拓扑以采用当前组件实现所期望的拓扑。可以给网络组件分配角色,所述角色使得当前拓扑实现分布式径内控制实现、集中式离径控制实现、另一实现或者它们的组合。例如,可以使得网络的部分中的一个部分实现分布式径内控制实现,而使得另一部分实现集中式离径控制实现,同时使得再一部分实现另一类型的实现,等等。
图7是根据本文描述的原理的控制系统(700)的示例的图。控制系统(700)包括获取引擎(702),收集引擎(704),比较引擎(706),以及分配引擎(708)。在图7的示例中,控制系统(700)还包括模板引擎(710)。引擎(702,704,706,708,710)指的是用于执行规定功能的硬件和程序指令的组合。所述引擎(702,704,706,708,710)中的每一个可以包括处理器和存储器。所述程序指令被存储在存储器中并且使得处理器执行引擎的规定功能。
获取引擎(702)获取关于所期望的拓扑的描述。通过被动地从另一源接收描述,主动地从另一源请求描述,响应于采用网络执行的历史应用而产生描述,响应于将采用网络执行的作业而产生描述,其它机制或它们的组合来获取该描述。在一些示例中,在正在进行的基础上连续地产生该描述以保持网络以最佳效率运行。
收集引擎(704)收集关于所期望的拓扑和/或当前拓扑的信息。针对所期望的拓扑,收集引擎(704)可以从描述、描述的源、网络外部的源、其它源或者它们的组合收集信息。在一些示例中,收集引擎(704)还基于描述推断关于所期望的拓扑的事实,或者从描述中未明确描述或所收集的信息中未找到的其它的源收集信息。这样的推断允许收集引擎(704)提供关于所期望的拓扑的更多细节。
可以从已存储在控制系统(700)中的信息、存储在网络中的信息、网络发现设备、网络存储设备、网络管理设备、路由器、交换机、网络外部的源、因特网、其它源、或者它们的组合收集关于当前拓扑的信息。收集引擎(704)还可以酌情推断关于网络的当前拓扑的缺失数据。
模板引擎(710)将来自收集引擎(704)的信息和/或推断填充到模板中以描述所期望的拓扑和当前拓扑。用于所期望的拓扑和当前拓扑的模板具有相似的结构和/或组织以简化所述两个模板的比较。比较引擎(706)将所期望的拓扑模板与当前拓扑模板进行比较并确定它们之间是否有任何区别。如果有区别,比较引擎(706)识别区别。
分配引擎(708)给控制元件、网络组件、网络部分、层2网络、或者它们的组合分配角色以采用现存拓扑实现所期望的拓扑。分配引擎(708)确定所部署的控制元件或其它网络组件的每一类型在所期望的拓扑中将要扮演的角色,并且确定如何使数据平面元件与控制平面元件进行互联以及它们将如何交互操作。如果合适,将附加资源添加到当前拓扑以实现所期望的拓扑。
随着实现所期望的拓扑,控制系统(700)监视拓扑实现并酌情进行调整。这样的调整可以聚焦于处理特定业务流或流类型的较短期配置。控制系统(700)可以使用各种用于较短期配置调整的方法。控制系统(700)可以直接参与到业务流中以在业务使用网络之前设置配置参数,或者通过概括所部署的控制元件的配置而间接参与以针对如何处理流类型而指示网络组件。对于较长期配置控制和较短期配置控制两者来说,控制系统(700)可以选择哪种所部属的控制元件或其它网络组件用来管理,如何利用每一个控制元件,这些控制元件将如何交互操作,以及将要部署什么新的控制元件。
图8是根据本文描述的原理的控制系统(800)的示例的图。在该示例中,控制系统(800)包括与存储器资源(804)通信的处理资源(802)。处理资源(802)包括至少一个处理器和用于处理编程指令的其它资源。存储器资源(804)一般表示能够存储诸如控制系统(800)使用的编程指令或数据结构之类的数据的任何存储器。存储在存储器资源(804)中的所示的编程指令包括所期望的拓扑描述获取器(806),所期望的拓扑描述读取器(808),当前拓扑信息收集器(810),当前拓扑模板填写器(814),所期望的拓扑模板填写器(818),模板比较器(820),以及角色分配器(822)。存储在存储器资源(804)中的所示的数据结构包括当前拓扑模板(812)和所期望的拓扑模板(816)。
存储器资源(804)包括计算机可读存储介质,所述计算机可读存储介质包含计算机可读程序代码以使得由处理资源(802)执行任务。计算机可读存储介质可以是有形的和/或非暂时性存储介质。计算机可读存储介质可以为非传输存储介质的任何合适的存储介质。计算机可读存储介质类型的非详尽列表包括非易失性存储器、易失性存储器、随机存取存储器、基于忆阻器的存储器、只写存储器、闪存、电可擦编程只读存储器、或其它类型的存储器,或者它们的组合。
所期望的拓扑描述获取器(806)表示当执行时使得处理资源(802)获取所期望的拓扑的描述的编程指令。所期望的拓扑描述读取器(808)表示当执行时使得处理资源(802)读取所期望的拓扑描述的编程指令。当前拓扑信息收集器(810)表示当执行时使得处理资源(802)收集关于当前拓扑的信息的编程指令。
当前拓扑填写器(814)表示当执行时使得处理资源(802)填写当前拓扑模板(812)的编程指令。所期望的拓扑填写器(818)表示当执行时使得处理资源(802)填写所期望的拓扑模板(816)的编程指令。模板比较器(820)表示当执行时使得处理资源(802)将所填写的所期望的拓扑模板与所填写的当前拓扑模板进行比较以识别它们之间的区别的编程指令。角色分配器(822)表示当执行时使得处理资源(802)给网络组件分配角色以采用当前拓扑实现所期望的拓扑的编程指令。
此外,存储器资源(804)可以是安装包的部分。响应于安装所述安装包,存储器资源(804)的编程指令可以从安装包的源(诸如便携介质、服务器、远程网络位置、另一位置、或者它们的组合)下载。与本文描述的原理兼容的便携式存储器媒介包括DVD、CD、闪存、便携式盘、磁盘、光盘、其它形式的便携式存储器、或者它们的组合。在其它示例中,程序指令已被安装。这里,存储器资源可以包括集成存储器,诸如硬盘驱动器、固态硬盘驱动器等等。
在一些示例中,处理资源(802)和存储器资源(804)位于相同的物理组件内,所述物理组件诸如服务器或者网络组件。存储器资源(804)可以是物理组件的主存储器的部分、高速缓存器、寄存器、非易失性存储器、或者该物理组件的存储器层级中的其它地方。可替换地,存储器资源(804)可以通过网络与处理资源(802)通信。此外,数据结构(诸如库)可以通过网络连接从远程位置访问,而编程指令位于本地。因此,控制系统(800)可以在用户设备上、服务器上、一批服务器上、或它们的组合上实现。
图8的控制系统(800)可以是通用计算机的部分。然而,在替代的示例中,控制系统(800)是专用集成电路的部分。
图9是根据本文描述的原理的用于控制网络拓扑的过程的流程图(900)的示例的图。在该示例中,该过程包括获取(902)所期望的网络拓扑的描述以及读取(904)所期望的网络拓扑描述。响应于读取该描述,收集(906)关于当前网络拓扑的信息。基于该描述填写(908)描述所期望的拓扑的模板,并基于所收集的信息填写(910)描述网络的当前拓扑的另一模板。
该过程还包括确定(912)所填写的所期望的拓扑模板和所填写的当前拓扑模板是否匹配。如果它们匹配,则网络通过继续实现当前拓扑维持(914)现状。然而,如果它们不匹配,则当前拓扑被分(916)成数个部分。该过程包括确定(918)分布式径内实现是否适合所述部分中的至少一个。如果是这样,则给适合的部分分配(920)分布式径内实现。该过程包括确定(922)集中式离径实现是否适合所述部分中的至少一个。如果是这样,则给适合的部分分配(924)集中式离径实现。确定(926)用于剩余部分(如果有的话)的适合的实现并分配(928)适合的角色和参数以执行所述实现。
虽然已经参考特定的部分、网络组件、以及安排描述了上述示例,但是可以根据本文描述的原理而使用任何合适的部分、网络组件、和/或安排。另外,虽然已经参考特定拓扑实现描述了上述示例,但是可以根据本文描述的原理使用任何合适的拓扑实现。所期望的拓扑可以使得跨整个网络或其部分实现单个实现。可以在网络的多个区域中实现单个实现。
之前的描述仅被提供用于说明和描述所描述的原理的示例。该描述不意图是详尽的或者将这些原理限制到所公开的任何精确形式。根据上述教导可以有许多修改和变型。
Claims (15)
1.一种方法,包括:
确定网络的所期望的拓扑;
将所述所期望的拓扑与所述网络的当前拓扑进行比较;以及
采用对所述当前拓扑中的当前网络组件的角色分配和参数分配控制所述当前拓扑,以采用所述当前网络组件来实现所述所期望的拓扑。
2.根据权利要求1的方法,其中所述当前网络组件包括控制平面元件。
3.根据权利要求1的方法,还包括将附加网络组件添加到所述当前拓扑以实现所述所期望的拓扑。
4.根据权利要求1的方法,其中确定所述网络的所述所期望的拓扑包括从至少一个源收集关于能够实现所述所期望的拓扑的设备的信息。
5.根据权利要求4的方法,还包括采用所述信息填写所期望的拓扑模板。
6.根据权利要求1的方法,其中将所述所期望的拓扑与所述网络的所述当前拓扑进行比较包括收集关于所述当前拓扑的信息。
7.根据权利要求6的方法,还包括采用所述信息填写当前拓扑模板。
8.根据权利要求7的方法,其中将所述所期望的拓扑与所述网络的所述当前拓扑进行比较包括将所述当前拓扑模板的所填写的版本与所期望的拓扑模板的所填写的版本进行比较。
9.根据权利要求1的方法,其中采用对所述当前拓扑中的所述当前网络组件的所述角色分配和所述参数分配控制所述当前拓扑以采用所述当前拓扑来实现所述所期望的拓扑包括使得所述当前拓扑实现分布式径内控制实现。
10.根据权利要求1的方法,其中采用对所述当前拓扑中的所述当前网络组件的所述角色分配和所述参数分配控制所述当前拓扑以采用所述当前拓扑来实现所述所期望的拓扑包括使得所述当前拓扑实现集中式离径控制实现。
11.一种系统,包括:
获取引擎以获取所期望的拓扑的描述;
收集引擎以收集关于所述所期望的拓扑和当前拓扑的信息;
比较引擎以将所述所期望的拓扑与所述当前拓扑进行比较;以及
控制引擎以采用对所述当前拓扑中的网络组件的角色分配和参数分配控制所述当前拓扑以采用网络组件来实现所述所期望的拓扑。
12.根据权利要求11的系统,其中所述控制引擎使得所述当前拓扑实现集中式离径控制实现、分布式径内控制实现、或者它们的组合。
13.根据权利要求11的系统,还包括模板引擎,其用于填写用于所述当前拓扑和所述所期望的拓扑两者的模板以用于所述比较引擎。
14.一种计算机程序产品,包括:
非暂时性计算机可读存储介质,所述非暂时性计算机可读存储介质包括体现于此的计算机可读程序代码,所述计算机可读程序代码包括当执行时使得处理器执行以下操作的程序指令:
获取所期望的拓扑的描述;
收集关于所述所期望的拓扑和当前拓扑的信息;
填写用于所述所期望的拓扑和所述当前拓扑两者的模板;
针对区别比较所述模板;以及
采用对所述当前拓扑中的网络组件的角色分配和参数分配控制所述网络拓扑以采用所述网络组件来实现所述所期望的拓扑。
15.根据权利要求14的计算机程序产品,还包括计算机可读程序代码,所述计算机可读程序代码包括当执行时使得所述处理器实现集中式离径控制实现、分布式径内控制实现、或者它们的组合的程序指令。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/US2013/023792 WO2014120145A1 (en) | 2013-01-30 | 2013-01-30 | Controlling a topology of a network |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105103492A true CN105103492A (zh) | 2015-11-25 |
CN105103492B CN105103492B (zh) | 2019-06-28 |
Family
ID=51262713
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201380075346.1A Active CN105103492B (zh) | 2013-01-30 | 2013-01-30 | 控制网络拓扑 |
Country Status (4)
Country | Link |
---|---|
US (1) | US9900221B2 (zh) |
EP (1) | EP2951952B1 (zh) |
CN (1) | CN105103492B (zh) |
WO (1) | WO2014120145A1 (zh) |
Families Citing this family (73)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2951952B1 (en) * | 2013-01-30 | 2021-06-02 | Hewlett Packard Enterprise Development LP | Controlling a topology of a network |
US9838268B1 (en) * | 2014-06-27 | 2017-12-05 | Juniper Networks, Inc. | Distributed, adaptive controller for multi-domain networks |
US9781004B2 (en) | 2014-10-16 | 2017-10-03 | Cisco Technology, Inc. | Discovering and grouping application endpoints in a network environment |
DE102015103727A1 (de) * | 2015-03-13 | 2016-09-15 | Phoenix Contact Gmbh & Co. Kg | Projektiergerät und Verfahren zum Konfigurieren und/oder Parametrieren von Automatisierungskomponenten eines Automatisierungssystems |
CN105306255A (zh) * | 2015-09-21 | 2016-02-03 | 烽火通信科技股份有限公司 | 电信网管中大数据量多个拓扑图实例系统及管理方法 |
EP3465458B1 (en) * | 2016-05-26 | 2023-10-25 | Netfoundry Inc. | Mobile overlay virtual enterprise network and virtual internet for enterprises |
WO2018000240A1 (en) * | 2016-06-29 | 2018-01-04 | Orange | Method and system for the optimisation of deployment of virtual network functions in a communications network that uses software defined networking |
US10680852B2 (en) * | 2016-07-14 | 2020-06-09 | Hewlett Packard Enterprise Development Lp | Configuration of a managed device |
US10623264B2 (en) | 2017-04-20 | 2020-04-14 | Cisco Technology, Inc. | Policy assurance for service chaining |
US10560328B2 (en) | 2017-04-20 | 2020-02-11 | Cisco Technology, Inc. | Static network policy analysis for networks |
US10826788B2 (en) | 2017-04-20 | 2020-11-03 | Cisco Technology, Inc. | Assurance of quality-of-service configurations in a network |
US10812318B2 (en) | 2017-05-31 | 2020-10-20 | Cisco Technology, Inc. | Associating network policy objects with specific faults corresponding to fault localizations in large-scale network deployment |
US10554483B2 (en) * | 2017-05-31 | 2020-02-04 | Cisco Technology, Inc. | Network policy analysis for networks |
US10439875B2 (en) | 2017-05-31 | 2019-10-08 | Cisco Technology, Inc. | Identification of conflict rules in a network intent formal equivalence failure |
US10693738B2 (en) | 2017-05-31 | 2020-06-23 | Cisco Technology, Inc. | Generating device-level logical models for a network |
US10581694B2 (en) | 2017-05-31 | 2020-03-03 | Cisco Technology, Inc. | Generation of counter examples for network intent formal equivalence failures |
US10505816B2 (en) | 2017-05-31 | 2019-12-10 | Cisco Technology, Inc. | Semantic analysis to detect shadowing of rules in a model of network intents |
US10623271B2 (en) | 2017-05-31 | 2020-04-14 | Cisco Technology, Inc. | Intra-priority class ordering of rules corresponding to a model of network intents |
US20180351788A1 (en) | 2017-05-31 | 2018-12-06 | Cisco Technology, Inc. | Fault localization in large-scale network policy deployment |
US10686669B2 (en) | 2017-06-16 | 2020-06-16 | Cisco Technology, Inc. | Collecting network models and node information from a network |
US10547715B2 (en) | 2017-06-16 | 2020-01-28 | Cisco Technology, Inc. | Event generation in response to network intent formal equivalence failures |
US10587621B2 (en) | 2017-06-16 | 2020-03-10 | Cisco Technology, Inc. | System and method for migrating to and maintaining a white-list network security model |
US11150973B2 (en) | 2017-06-16 | 2021-10-19 | Cisco Technology, Inc. | Self diagnosing distributed appliance |
US10498608B2 (en) | 2017-06-16 | 2019-12-03 | Cisco Technology, Inc. | Topology explorer |
US11645131B2 (en) | 2017-06-16 | 2023-05-09 | Cisco Technology, Inc. | Distributed fault code aggregation across application centric dimensions |
US11469986B2 (en) | 2017-06-16 | 2022-10-11 | Cisco Technology, Inc. | Controlled micro fault injection on a distributed appliance |
US10904101B2 (en) | 2017-06-16 | 2021-01-26 | Cisco Technology, Inc. | Shim layer for extracting and prioritizing underlying rules for modeling network intents |
US10574513B2 (en) | 2017-06-16 | 2020-02-25 | Cisco Technology, Inc. | Handling controller and node failure scenarios during data collection |
US10528444B2 (en) | 2017-06-19 | 2020-01-07 | Cisco Technology, Inc. | Event generation in response to validation between logical level and hardware level |
US10812336B2 (en) | 2017-06-19 | 2020-10-20 | Cisco Technology, Inc. | Validation of bridge domain-L3out association for communication outside a network |
US10536337B2 (en) | 2017-06-19 | 2020-01-14 | Cisco Technology, Inc. | Validation of layer 2 interface and VLAN in a networked environment |
US10411996B2 (en) | 2017-06-19 | 2019-09-10 | Cisco Technology, Inc. | Validation of routing information in a network fabric |
US10567228B2 (en) | 2017-06-19 | 2020-02-18 | Cisco Technology, Inc. | Validation of cross logical groups in a network |
US11283680B2 (en) | 2017-06-19 | 2022-03-22 | Cisco Technology, Inc. | Identifying components for removal in a network configuration |
US10567229B2 (en) | 2017-06-19 | 2020-02-18 | Cisco Technology, Inc. | Validating endpoint configurations between nodes |
US10805160B2 (en) | 2017-06-19 | 2020-10-13 | Cisco Technology, Inc. | Endpoint bridge domain subnet validation |
US10505817B2 (en) | 2017-06-19 | 2019-12-10 | Cisco Technology, Inc. | Automatically determining an optimal amount of time for analyzing a distributed network environment |
US10218572B2 (en) | 2017-06-19 | 2019-02-26 | Cisco Technology, Inc. | Multiprotocol border gateway protocol routing validation |
US10700933B2 (en) | 2017-06-19 | 2020-06-30 | Cisco Technology, Inc. | Validating tunnel endpoint addresses in a network fabric |
US10432467B2 (en) | 2017-06-19 | 2019-10-01 | Cisco Technology, Inc. | Network validation between the logical level and the hardware level of a network |
US10652102B2 (en) | 2017-06-19 | 2020-05-12 | Cisco Technology, Inc. | Network node memory utilization analysis |
US10547509B2 (en) | 2017-06-19 | 2020-01-28 | Cisco Technology, Inc. | Validation of a virtual port channel (VPC) endpoint in the network fabric |
US10341184B2 (en) | 2017-06-19 | 2019-07-02 | Cisco Technology, Inc. | Validation of layer 3 bridge domain subnets in in a network |
US10333787B2 (en) | 2017-06-19 | 2019-06-25 | Cisco Technology, Inc. | Validation of L3OUT configuration for communications outside a network |
US10673702B2 (en) | 2017-06-19 | 2020-06-02 | Cisco Technology, Inc. | Validation of layer 3 using virtual routing forwarding containers in a network |
US10623259B2 (en) | 2017-06-19 | 2020-04-14 | Cisco Technology, Inc. | Validation of layer 1 interface in a network |
US10554493B2 (en) | 2017-06-19 | 2020-02-04 | Cisco Technology, Inc. | Identifying mismatches between a logical model and node implementation |
US10644946B2 (en) | 2017-06-19 | 2020-05-05 | Cisco Technology, Inc. | Detection of overlapping subnets in a network |
US11343150B2 (en) | 2017-06-19 | 2022-05-24 | Cisco Technology, Inc. | Validation of learned routes in a network |
US10560355B2 (en) | 2017-06-19 | 2020-02-11 | Cisco Technology, Inc. | Static endpoint validation |
US10437641B2 (en) | 2017-06-19 | 2019-10-08 | Cisco Technology, Inc. | On-demand processing pipeline interleaved with temporal processing pipeline |
US10348564B2 (en) | 2017-06-19 | 2019-07-09 | Cisco Technology, Inc. | Validation of routing information base-forwarding information base equivalence in a network |
US10291478B1 (en) | 2017-07-03 | 2019-05-14 | Juniper Networks, Inc. | Graph-based network topology validation |
US10587456B2 (en) | 2017-09-12 | 2020-03-10 | Cisco Technology, Inc. | Event clustering for a network assurance platform |
US10587484B2 (en) | 2017-09-12 | 2020-03-10 | Cisco Technology, Inc. | Anomaly detection and reporting in a network assurance appliance |
US10554477B2 (en) | 2017-09-13 | 2020-02-04 | Cisco Technology, Inc. | Network assurance event aggregator |
US10333833B2 (en) | 2017-09-25 | 2019-06-25 | Cisco Technology, Inc. | Endpoint path assurance |
US11102053B2 (en) | 2017-12-05 | 2021-08-24 | Cisco Technology, Inc. | Cross-domain assurance |
US10873509B2 (en) | 2018-01-17 | 2020-12-22 | Cisco Technology, Inc. | Check-pointing ACI network state and re-execution from a check-pointed state |
US10572495B2 (en) | 2018-02-06 | 2020-02-25 | Cisco Technology Inc. | Network assurance database version compatibility |
US10812315B2 (en) | 2018-06-07 | 2020-10-20 | Cisco Technology, Inc. | Cross-domain network assurance |
US10659298B1 (en) | 2018-06-27 | 2020-05-19 | Cisco Technology, Inc. | Epoch comparison for network events |
US10911495B2 (en) | 2018-06-27 | 2021-02-02 | Cisco Technology, Inc. | Assurance of security rules in a network |
US11019027B2 (en) | 2018-06-27 | 2021-05-25 | Cisco Technology, Inc. | Address translation for external network appliance |
US11218508B2 (en) | 2018-06-27 | 2022-01-04 | Cisco Technology, Inc. | Assurance of security rules in a network |
US11044273B2 (en) | 2018-06-27 | 2021-06-22 | Cisco Technology, Inc. | Assurance of security rules in a network |
US10904070B2 (en) | 2018-07-11 | 2021-01-26 | Cisco Technology, Inc. | Techniques and interfaces for troubleshooting datacenter networks |
US10826770B2 (en) | 2018-07-26 | 2020-11-03 | Cisco Technology, Inc. | Synthesis of models for networks using automated boolean learning |
US10616072B1 (en) | 2018-07-27 | 2020-04-07 | Cisco Technology, Inc. | Epoch data interface |
US11212322B2 (en) * | 2018-10-10 | 2021-12-28 | Rockwelll Automation Technologies, Inc. | Automated discovery of security policy from design data |
US11411802B2 (en) * | 2019-12-09 | 2022-08-09 | Arista Networks, Inc. | Determining the impact of network events on network applications |
CN111339095A (zh) * | 2020-02-25 | 2020-06-26 | 深信服科技股份有限公司 | 一种网络拓扑构建的方法、装置、设备及存储介质 |
US11575580B2 (en) * | 2021-06-01 | 2023-02-07 | Cisco Technology, Inc. | Multi-domain and multi-tenant network topology model generation and deployment |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080281947A1 (en) * | 2007-05-09 | 2008-11-13 | Brajesh Kumar | System and method for automatically deploying a network design |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7039009B2 (en) | 2000-01-28 | 2006-05-02 | At&T Corp. | Control of optical connections in an optical network |
WO2002049273A2 (de) * | 2000-12-14 | 2002-06-20 | Hirschmann Electronics Gmbh & Co. Kg | Automatische konfiguration eines netzwerkes |
US6990520B2 (en) * | 2002-06-12 | 2006-01-24 | Prisa Networks, Inc. | System and method for managing computer networks |
US8442030B2 (en) * | 2007-03-01 | 2013-05-14 | Extreme Networks, Inc. | Software control plane for switches and routers |
US9419867B2 (en) * | 2007-03-30 | 2016-08-16 | Blue Coat Systems, Inc. | Data and control plane architecture for network application traffic management device |
US8290367B2 (en) * | 2008-04-14 | 2012-10-16 | Telcordia Technologies, Inc. | OSS support for control plane technology |
US8504660B2 (en) | 2009-08-12 | 2013-08-06 | International Business Machines Corporation | Validation of the configuration of a data communications network using a virtual network operations center |
US8762505B2 (en) * | 2010-06-14 | 2014-06-24 | Microsoft Corporation | Definition configuration and administration of distributed server systems through structured data model |
DE102011011587A1 (de) * | 2011-02-17 | 2012-08-23 | Phoenix Contact Gmbh & Co. Kg | Portunabhängiges topologisch geplantes Echtzeitnetzwerk |
US9491086B2 (en) | 2011-03-02 | 2016-11-08 | Ciena Corporation | Distributed network planning systems and methods |
US8392541B2 (en) | 2011-04-01 | 2013-03-05 | Cisco Technology, Inc. | Distributed control technique for RPL topology |
US9106555B2 (en) * | 2012-01-25 | 2015-08-11 | Cisco Technology, Inc. | Troubleshooting routing topology based on a reference topology |
EP2951952B1 (en) * | 2013-01-30 | 2021-06-02 | Hewlett Packard Enterprise Development LP | Controlling a topology of a network |
-
2013
- 2013-01-30 EP EP13873958.6A patent/EP2951952B1/en active Active
- 2013-01-30 CN CN201380075346.1A patent/CN105103492B/zh active Active
- 2013-01-30 WO PCT/US2013/023792 patent/WO2014120145A1/en active Application Filing
- 2013-01-30 US US14/764,093 patent/US9900221B2/en active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080281947A1 (en) * | 2007-05-09 | 2008-11-13 | Brajesh Kumar | System and method for automatically deploying a network design |
Also Published As
Publication number | Publication date |
---|---|
EP2951952A1 (en) | 2015-12-09 |
US20150365314A1 (en) | 2015-12-17 |
EP2951952A4 (en) | 2016-09-21 |
EP2951952B1 (en) | 2021-06-02 |
US9900221B2 (en) | 2018-02-20 |
WO2014120145A1 (en) | 2014-08-07 |
CN105103492B (zh) | 2019-06-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105103492A (zh) | 控制网络拓扑 | |
US11196620B2 (en) | Method and apparatus for NaaS device configuring service | |
Wu et al. | UbiFlow: Mobility management in urban-scale software defined IoT | |
CN110213369B (zh) | 一种服务功能链自动编排系统及其编排方法 | |
US9806983B2 (en) | System and method for control flow management in software defined networks | |
CN104205767A (zh) | 支持软件定义网络和应用层业务优化 | |
CN104660507B (zh) | 数据流转发路由的控制方法及装置 | |
AU2014414703A1 (en) | Data forwarding method, device and system in software-defined networking | |
Podleski et al. | Multi-domain Software Defined Network: exploring possibilities in | |
WO2015039617A1 (zh) | 一种报文处理方法、系统及设备 | |
Lin et al. | DTE-SDN: A dynamic traffic engineering engine for delay-sensitive transfer | |
JP2016076922A (ja) | モバイルアプリケーション固有ネットワーク | |
EP2090022B1 (en) | A system and a method relating to network management | |
Wang et al. | Software defined autonomic QoS model for future Internet | |
Giannelli et al. | Software defined networking for quality-aware management of multi-hop spontaneous networks | |
López et al. | Reviewing SDN adoption strategies for Next Generation Internet of Things networks | |
CN116458204A (zh) | 传输网络切片控制设备及用于基于时间敏感网络的传输网络的控制面实体 | |
US10027557B2 (en) | Method for transmitting data streams through a telecommunication network | |
CN115102831A (zh) | 一种分布式bgp服务的部署方法和系统 | |
CN108667630A (zh) | 一种计费方法、相关设备和系统 | |
Alassery | High Performance Priority Packets Scheduling Mechanism for Big Data in Smart Cities. | |
ul Huque et al. | A system architecture for time-sensitive heterogeneous wireless distributed software-defined networks | |
Daneshmand | Research and Development of QoS methods Based on SDN in 5G/IMT-2020 | |
Daneshmand | Analysis and evaluation of the effectiveness of methods for ensuring the quality of service for softwaredefined networks of the standard 5G/IMT-2020 | |
CN111342927B (zh) | 一种时间同步处理方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C41 | Transfer of patent application or patent right or utility model | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20170122 Address after: American Texas Applicant after: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP Address before: American Texas Applicant before: Hewlett-Packard Development Company, L.P. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |