CN105376087B - 用于网络服务配置的事务完整性 - Google Patents
用于网络服务配置的事务完整性 Download PDFInfo
- Publication number
- CN105376087B CN105376087B CN201510496364.8A CN201510496364A CN105376087B CN 105376087 B CN105376087 B CN 105376087B CN 201510496364 A CN201510496364 A CN 201510496364A CN 105376087 B CN105376087 B CN 105376087B
- Authority
- CN
- China
- Prior art keywords
- network
- service
- network resources
- controller
- resources
- 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
Images
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/50—Network service management, e.g. ensuring proper service fulfilment according to agreements
-
- 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/50—Network service management, e.g. ensuring proper service fulfilment according to agreements
- H04L41/5041—Network service management, e.g. ensuring proper service fulfilment according to agreements characterised by the time relationship between creation and deployment of a service
- H04L41/5051—Service on demand, e.g. definition and deployment of services in real time
-
- 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
- H04L41/0806—Configuration setting for initial configuration or provisioning, e.g. plug-and-play
-
- 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
-
- 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/50—Network service management, e.g. ensuring proper service fulfilment according to agreements
- H04L41/5041—Network service management, e.g. ensuring proper service fulfilment according to agreements characterised by the time relationship between creation and deployment of a service
- H04L41/5054—Automatic deployment of services triggered by the service manager, e.g. service implementation by automatic configuration of network components
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/70—Admission control; Resource allocation
- H04L47/80—Actions related to the user profile or the type of traffic
-
- 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/51—Discovery or management thereof, e.g. service location protocol [SLP] or web services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W8/00—Network data management
- H04W8/02—Processing of mobility data, e.g. registration information at HLR [Home Location Register] or VLR [Visitor Location Register]; Transfer of mobility data, e.g. between HLR, VLR or external networks
- H04W8/04—Registration at HLR or HSS [Home Subscriber Server]
-
- 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/0866—Checking the configuration
- H04L41/0873—Checking configuration conflicts between network elements
Abstract
在一些示例中,一种控制器供应用于传输网络内的分组流的服务。控制器的服务供应模块接收服务请求,所述服务请求包括要由所述网络向所述网络的订户或客户提供的服务的定义。所述服务供应模块确定要被配置为实施所述网络中的所述服务并将所述服务应用到所述订户的基于分组的网络流量的至少一个网络设备的多个网络资源。所述服务供应模块的锁定单元从存储针对所述网络资源中的每个网络资源的软件表示的全网络协调仓库获取锁,所述锁向所述服务供应模块提供针对所述网络资源的独占配置访问。仅在所述锁定单元获取了针对所述网络资源的所述锁时,所述服务供应模块将所述网络资源配置为供应所述服务。
Description
技术领域
本发明涉及计算机网络,并且更具体地,涉及控制计算机网络。
背景技术
计算机网络是能够交换数据并共享资源的互连的计算设备的集合。在基于分组的网络中,计算设备通过将数据划分成称为分组的小块来通信数据,分组被单独地通过网络从源设备路由至目的设备。目的设备从分组中提取数据并将数据汇集成其原始形式。将数据划分成分组使得源设备能够仅仅重新发送可能在传输期间被丢失的那些单个分组。
被称为路由器的某些设备维护描述通过网络的路由的路由信息。“路由”一般能够被定义为网络上的两个位置之间的路径。路由器包括控制平面和转发平面,控制平面有时被称为管理平面,其维护路由信息,转发平面根据路由信息来转发接收到的分组。
网络服务提供商将服务提供到传入分组,所述服务诸如将客户站点通过网络核心(VPN服务)或订户链接到服务、安全、隧道、虚拟专用网络、过滤、负载平衡、VoIP/多媒体处理和各种类型的应用代理(HTTP、XML、WAP等等)。服务提供商还提供被设计为改善用户体验的质量的内容专属服务,例如,视频流和高速缓存。为了提供这些新的服务,服务提供商通常已经求助于专门化的专用装备。在一些情况下,路由器已经被修改为包括将各种服务应用到传入分组的附加的硬件或软件。例如,安装在路由器的转发平面或服务平面中的网络接口或线路卡可以被配置为执行特定服务,例如以上描述的服务。
部署服务和响应影响这样的服务的网络事件可能是昂贵且耗时的。例如,服务的手动供应可能需要大量时间和人力资源来确定网络资源是否可用。在诸如链接或设备故障的网络事件的情况下,可能需要通过确定网络资源的备选集合是否可用来手动地重新供应服务。因此,服务的手动供应可能导致更高的运营成本,因为现有技术通常需要对多个资源和这样的资源的相应的能力进行耗时评估,并且服务提供商和大的企业面临在减少总体资本支出(CapEx)和运营支出(OpEx)的同时响应地且快速地部署所请求的服务的压力。网络管理者正在寻求在利用网络基础设施中的现有资产的同时移动到这样的操作模型,在所述操作模型中容量升级被作为目标、是服务驱动的、并且能够接近实时地动态地适应他们的客户的不断变化的需求。当前服务供应模型提供有限的灵活性,因为它们通常与网络设备的拓扑布局紧密耦合并且进一步地需要用于管理用于部署、问题排查和故障恢复的多个不同技术的重大运营支出。
发明内容
总体上,描述了用于促进用于使网络中的服务供应并行化的事务完整性的技术。一个或多个控制器的工作者负责通过将网络资源配置为实施所请求的服务来执行针对网络的服务请求。在所述技术的一些示例中,所述工作者在对所述网络资源进行配置之前获取由协调仓库提供的针对每个网络资源的锁。所述协调仓库可以提供针对每个资源在任何时间仅允许一个工作者具有对所述资源的配置访问的集中的每个资源锁。换言之,所述协调仓库的每个资源锁可以实现对所述网络资源中的任何网络资源的单线程存取:为了将网络资源配置为供应服务的一部分,工作者必须获取由所述协调仓库提供的对应锁。然后,所述工作者可以根据从运行到完成的模型来对所述网络资源进行配置。
在一些情况下,所述协调仓库使用具有与网络资源的一对一关联的软件表示来提供针对每个网络资源的锁。所述工作者可以访问将网络资源映射到对应表示的数据结构以便标识并请求针对网络资源的锁。所述协调仓库可以使用由网络资源提供的原生锁定机制,例如,NETCONF配置锁或通过使用所述协调仓库内部的同步原语来实施锁。在将针对网络资源的锁提供给工作者时,所述协调仓库阻挡其他工作者获取针对所述网络资源的所述锁从而提供对所述网络资源的单线程配置访问。工作者可以避免尝试对网络资源进行配置,除非和直到先前分配的锁已经被释放并且所述工作者已经获取针对所述网络资源的所述锁。
通过实现对网络资源的单线程配置访问,所述技术可以促进用于服务配置的事务完整性以减少能够导致网络服务故障的跨网络资源的服务误配置和/或不一致的实例。作为结果,所述技术可以实现并行服务供应模型,在所述并行服务供应模型中,多个工作者(或单个工作者的多个例程)能够通过同时对不同网络资源进行配置来同时供应网络中的服务,每个工作者具有对任何给定网络资源在任何一个时间的独占配置访问。在实现了并行供应模型的情况下,网络运营商能够对服务供应进行缩放以满足动态增长的服务需求,例如,向客户提供用于更快的服务命令到完成的自供应端口并且提供响应于网络事件的实时服务供应。
在一个示例中,一种方法包括由供应用于传输网络内的分组流的服务的控制器接收服务请求,所述服务请求包括要由所述网络向所述网络的订户或客户提供的服务的定义。所述方法还包括由所述控制器确定要被配置为实施所述网络中的所述服务并将所述服务应用到所述订户的基于分组的网络流量的至少一个网络设备的多个网络资源订户。所述方法还包括,仅在获取了针对所述至少一个网络设备的所述多个网络资源的锁时由所述控制器将所述至少一个网络设备的所述多个网络资源配置为供应所述服务,其中从存储针对所述至少一个网络设备的所述多个网络资源中的每个网络资源的软件表示的全网络协调仓库获取所述锁,并且其中所述锁向所述控制器提供针对所述多个网络资源的独占配置访问。
在另一示例中,一种控制器供应用于传输网络内的分组流的服务。所述控制器包括:一个或多个处理器,所述一个或多个处理器被耦合到存储器;以及服务供应模块,所述服务供应模块由所述一个或多个处理器运行以:接收服务请求,所述服务请求包括要由所述网络向所述网络的订户或客户提供的服务的定义;并且确定要被配置为实施所述网络中的所述服务并将所述服务应用到所述订户的基于分组的网络流量的至少一个网络服务设备的多个网络资源订户。所述控制器还包括锁定单元,所述锁定单元由所述一个或多个处理器执行以从存储针对所述至少一个网络设备的所述多个网络资源中的每个网络资源的软件表示的全网络协调仓库获取锁,所述锁向所述服务供应模块提供针对所述多个网络资源的独占配置访问,其中仅在所述锁定单元获取了针对所述至少一个网络设备的所述多个网络资源的所述锁时,所述服务供应模块由所述一个或多个处理器运行以将所述至少一个网络设备的所述多个网络资源配置为供应所述服务。
在另一示例中,一种非暂态计算机可读介质包含指令。所述指令使得可编程处理器:由供应用于传输网络内的分组流的服务的控制器接收服务请求,所述服务请求包括要由所述网络向所述网络的订户或客户提供的服务的定义;由所述控制器确定要被配置为实施所述网络中的所述服务并将所述服务应用到所述订户的基于分组的网络流量的至少一个网络设备的多个网络资源订户;以及仅在获取了针对所述至少一个网络设备的所述多个网络资源的锁时由所述控制器将所述至少一个网络设备的所述多个网络资源配置为供应所述服务,其中从存储针对所述至少一个网络设备的所述多个网络资源中的每个网络资源的软件表示的全网络协调仓库获取所述锁,并且其中所述锁向所述控制器提供针对所述多个网络资源的独占配置访问。
在下面的附图和描述中阐述了本发明的一个或多个实施例的细节。本发明的其他特征、目的、以及优点将从说明书和附图、以及从权利要求书中变得显而易见。
附图说明
图1图示了根据本文中描述的技术的示例网络系统。
图2是图示了根据本公开中描述的技术的控制器的示例实例的框图。
图3是详细图示了根据本公开中描述的技术的示例控制器的框图。
图4是图示了根据本公开中描述的技术的用于将网络资源映射到由协调仓库提供的网络资源的相应的全网络同步表示以促进全网络同步资源锁定的示例数据结构的框图。
图5是图示了根据本文中描述的技术的针对用于使用协调仓库来供应服务的控制器的操作的示例模式的流程图。
图6是图示了根据本文中描述的技术的针对用于使用协调仓库来供应服务的控制器的操作的示例模式的流程图。
在整个附图和文中相似的附图标记指代相似的元件。
具体实施方式
图1图示了根据本文中描述的技术的示例网络系统。图1的示例网络系统包括向订户设备16A-16N(统称为“订户设备16”)提供基于分组的网络服务的服务提供商网络2。即,服务提供商网络2向订户设备16提供网络接入的认证和建立,使得订户设备可以开始与PDN12交换数据分组,PDN 12可以表示诸如互联网的内部或外部的基于分组的网络。尽管关于运营服务提供商网络2的服务提供商来描述,但是在一些示例中网络2可以表示由大企业管理的企业网络。因此,对“服务提供商”或“提供商”的引用可以类似地指“企业管理者”、“网络管理者”或“运营商”。另外,尽管主要关于暗指服务提供商网络服务的终端用户的“订户”来描述,但是本文中描述的技术类似地可适用于服务提供商的“客户”和诸如蜂窝发射塔、多租户单元(MTU)、住宅聚合点等等的客户设备。客户的示例可以包括购买、租赁或以其他方式使用由服务提供商网络2提供的服务的大学、企业或任何其他实体。
在图1的示例中,服务提供商网络2包括经由服务提供商核心网络7和网关8提供到分组数据网络(PDN)12和边缘网络9的连接性的接入网络6(“接入网络6”)。服务提供商核心网络7和PDN 12提供可由订户设备16请求和使用的基于分组的服务。作为示例,核心网络7和/或PDN 12可以提供,例如批量数据交付、互联网协议语音(VoIP)、互联网协议电视(IPTV)、短消息服务(SMS)、无线应用协议(WAP)服务、或客户专属应用服务。分组数据网络12可以包括,例如局域网(LAN)、广域网(WAN)、互联网、虚拟LAN(VLAN)、企业LAN、层3虚拟专用网络(VPN)、由操作接入网络6的服务提供商操作的互联网协议(IP)内联网、企业IP网络、或其一些组合。在各个实施例中,PDN 12被连接到公共WAN、互联网、或其他网络。分组数据网络12执行诸如IP(IPv4和/或IPv6)、X.25或点到点协议(PPP)的一个或多个分组数据协议(PDP),以实现PDN 12服务的基于分组的传输。
订户设备16经由接入网络6连接到网关8以接收到针对由订户设备16托管的应用的订户服务的连接性。订户可以表示,例如企业、住宅订户、或移动订户。订户设备16可以是,例如订户个人计算机、便携式计算机或与订户相关联的其他类型的计算设备。另外,订户设备16可以包括经由无线电接入网络(RAN)4访问服务提供商网络2的数据服务的移动设备。示例移动订户设备包括移动电话、具有例如3G无线网卡的膝上型计算机或桌上型计算机、具有无线功能的笔记本、视频游戏设备、寻呼机、智能手机、个人数字助理(PDA)等等。订户设备16中的每个订户设备可以运行各种软件应用,例如文字处理和其他办公支持软件、网页浏览软件、支持语音呼叫的软件、视频游戏、视频会议、以及电子邮件等等。订户设备16经由包括有线通信链接和/或无线通信链接的接入链接连接到接入网络6。如本文中使用的术语“通信链接”包括任何形式的传输介质,有线的或无线的,并且能够包括诸如网络设备的中间节点。接入链接中的每个接入链接可以包括,例如对称DSL网络、WiMAX、T-1线路、集成服务数字网络(ISDN)、有线以太网、或蜂窝无线电链接的方面。
网络服务提供商操作或在一些情况下租赁接入网络6的元件来提供订户设备16与网关8之间的分组传输。接入网络6表示聚集来自一个或多个订户的数据流量用于向服务提供商的服务提供商核心网络7/从服务提供商的服务提供商核心网络7传输的网络。接入网络6可以包括耦合到聚集片段的多个“接入”片段和/或由服务提供商拥有或租赁的回程网络。接入网络的接入节点耦合到用户终端设备(CPE)以在层2(L2)或更高层处理订户分组。接入节点可以包括数字订户线路接入复用器(DSLAM)、多租户单元(MTU)、诸如具有微机电系统(MEMs)和硅基液晶(LCoS)的可重构光分插复用器(ROADM)的无源光网络(PON)光学线路终端设备、蜂窝站点网关(CSG)、eNode B、LTE/GSM/UMTS控制器、和微波以及通过分布式基站的虚拟多入多出(MIMO)。在有线运营商(多系统运营商(MSO))领域中,有线数据服务接口规范(DOCSIS)3.x标准规定了信道绑定和动态频率分配的方式。宽带有线接入网络节点可以包括有线调制解调器终端系统(CMTS)和有线调制解调器,例如,作为聚合有线接入平台(CCAP)解决方案的一部分。
接入网络6包括执行用以传输控制和用户数据的通信协议以促进订户设备16与网关8之间的通信的网络节点。接入网络6可以包括宽带接入网络、网络、无线LAN、公共交换电话网(PSTN)、或其他类型的接入网络,并且可以包括或以其他方式提供针对诸如图1的无线电接入网络(RAN)4的蜂窝接入网络的连接性。接入网络6的示例还可以包括符合通用移动电信系统(UMTS)体系结构、被称为长期演进(LTE)的UMTS的演进、由互联网工程任务组(IETF)标准化的移动IP、以及由第三代合作伙伴项目(3GPP)、第三代合作伙伴项目2(3GPP/2)和全球微波接入互联(WiMAX)论坛提出的其他标准的网络。
接入网络的传输节点将接入节点连接到实现区域间分组传输的边界节点。边界节点可以包括区域边界路由器和自治系统边界路由器(ASBR)。在图示的示例中,边界节点(未示出)将接入网络6耦合到核心网络7。
服务提供商核心网络7(下文中称为“核心网络7”)提供到附接到接入网络6的订户设备16的基于分组的连接性以用于接入PDN12。核心网络7可以表示由服务提供商拥有和操作以互连多个网络的公共网络,其可以包括接入网络6。核心网络7可以实施多协议标签交换(MPLS)转发并且在这种情况下可以被称为MPLS网络或MPLS骨干网。在一些情况下,核心网络7表示提供来自一个或多个服务提供商的服务的多个互连的自治系统,例如互联网。PDN 12可以表示例如通过诸如客户边缘交换机或路由器的客户边缘设备耦合到核心网络7的边缘网络。PDN 12可以包括数据中心。
接入网络6、核心网络7以及边缘网络9可以包括将服务应用到订户分组的服务节点。服务节点示例包括L2提供商边缘(PE)或L3PE路由器、宽带网络网关(BNG)、对等路由器、内容服务器、媒体网关、基站控制器等等。图示的网关8包括服务节点的示例。
在包括有线/宽带接入网络的网络2的示例中,网关8可以表示例如宽带网络网关(BNG)、宽带远程接入服务器(BRAS)、MPLS提供商边缘(PE)路由器、核心路由器、L2/L3PE路由器、或网关。在包括如接入网络6的蜂窝接入网络的网络2的示例中,网关8可以表示移动网关,例如,网关通用分组无线业务(GPRS)服务节点(GGSN)、接入网关(aGW)、或分组数据网络(PDN)网关(PGW)。在其他示例中,关于网关8描述的功能可以被实施在交换机、服务卡或其他网络元件或部件中。
在该示例中,网络2附加地包括边缘网络9。在一些示例中,边缘网络9可以表示,例如,商业边缘网络、宽带订户管理边缘网络、移动边缘网络、诸如企业分支机构的客户站点、或其组合。在一些示例中,边缘网络9可以提供包括例如应用可知的和订户可知的服务和计费的服务提供商管理的网络托管的增值服务(VAS)。图1的接入网络6也是针对服务提供商网络2的边缘网络的示例。边缘网络9可以备选地表示数据中心/增值服务复合体,其由包括例如诸如基于x86处理器的服务器的通用计算设备的可扩展集群的计算环境来提供服务。作为另一示例,计算环境可以包括通用计算设备和专用装备的组合。服务提供商核心7可以耦合到多个边缘网络,诸如边缘网络9的前述示例中的任何边缘网络。
因为是虚拟化的,所以由数据中心的服务节点提供的单个网络服务能够通过对虚拟化的存储器、处理器利用、存储和网络策略的分配以及通过添加附加的负载平衡的虚拟机来进行缩放。在一个示例中,边缘网络9包括数据中心,该数据中心包括实施工业标准协议的互连的、高性能且现成的基于分组的路由器和交换机的集合。在一个示例中,边缘网络9包括数据中心,该数据中心包括提供通过以太网的互联网协议(IPoE)的点到点连接性的现成部件。
管理网络2的至少部分的网络服务提供商通常向与诸如订户设备16的设备相关联的订户提供服务,订户设备16访问服务提供商网络。提供的服务可以包括,例如,传统互联网访问、互联网协议语音(VoIP)、视频和多媒体服务、安全服务、以及例如使用点到点以太网服务、多点到多点以太网服务、点到多点以太网服务、全网状L3VPN、以及中枢辐射型L3VPN中的一种通过核心网络7来链接客户站点。如以上关于接入网络6所描述的,核心网络7可以支持连接到服务提供商网络接入网关以提供对所提供的服务的访问的多种类型的接入网络基础设施。
总体上,订户设备16中的任何一个或多个订户设备可以通过向网关8发送会话请求来请求授权和数据服务。反过来,网关8通常访问认证、授权和计费(AAA)服务器11以对请求网络接入的订户设备进行认证。一旦被认证,订户设备16中的任何订户设备可以向服务提供商核心网络7发送订户数据流量以便访问并接收由PDN 12或边缘网络9提供的服务,并且这样的分组可以遍历服务提供商核心7作为至少一个分组流的一部分。术语“分组流”、“通信流”、或仅“流”指代源自于特定源设备并发送到特定目的设备的分组的集合。例如,单个分组流,不管是(源自订户设备16之一的)上游方向或(去往订户设备16之一的)下游方向,都可以由5元组来标识:<源网络地址,目的网络地址,源端口,目的端口,协议>。该5元组一般标识接收到的分组对应的分组流。n元组指代从5元组中得到的任意n项。例如,分组的2元组可以指分组的<源网络地址,目的网络地址>或<源网络地址,源端口>的组合。此外,订户设备可以在对服务提供商网络2认证并建立用于接收数据服务的通信会话时发起多个分组流。
服务提供商网络2可以包括认证、授权和计费服务器11(“AAA服务器11”)。在检测到新的通信流时,例如,网关8可以借助于RADIUS或Diameter协议向AAA服务器11认证新订户并且在此时接收定义要被应用到订户的服务或将订户期望的各种流量映射到一个或多个服务流的服务请求或其他信息。在检测到新的流时,网关8可以基于服务简档和流量类型来选择针对流的服务链。例如,网关8可以基于针对订户接收到的服务简档和/或基于例如HTTP流量或VoIP流量的流量的类型来选择针对分组的服务链。
服务提供商网络2的各种网络,即,核心网络7、边缘网络9、接入网络6以及RAN 4包括由控制器10可配置为供应用于由网络2的客户/订户使用的服务的一部分的网络资源5。网络资源5中的任何网络资源可以表示要被配置的设备(DTC),诸如路由器、交换机、光学设备、聚合有线接入平台(CCAP)元件、微波元件、无源光网络元件、服务节点、执行服务的虚拟机、针对BGP IP VPN的虚拟路由器、以及其他网络元件。在一些示例中,网络资源5中的任何网络资源可以备选地或附加地表示给定DTC的一个或多个硬件或软件部件,诸如硬件或软件接口、服务线路卡、转发线路卡、网络链接、标签交换路径(LSP)、路由实例(例如,虚拟路由和转发实例(VRF))等等。换言之,DTC可以包括多个网络资源5,只要网络资源中的每个网络资源能够被单独地且同步地配置而不损失对任何网络资源的操作的完整性。
网络管理者采用控制器10来供应服务提供商网络2内的服务。例如,这样的服务可以为订户设备16提供到服务提供商提供的资源的访问。控制器10是用于配置和管理服务提供商网络2的各种相应的域(例如,核心网络7、接入网络6、以及边缘网络9)的高级控制器。在一些情况下,控制器10可以管理增值服务复合体的操作环境内的虚拟机的部署。控制器10可以与网关8和其他设备交互以指定服务链。例如,由控制器10提供的服务链信息可以指定增值服务、用于沿着服务路径隧穿或以其他方式传输(例如,MPLS或IP隧道)分组流的流量工程信息(例如,标签或下一跳)、速率限制、服务类型(TOS)标记或指定用于将分组流与特定服务链进行匹配的标准的分组分类器的任何组合和排序。针对软件定义的网络的SDN控制器的进一步的示例细节被描述在于2013年6月5日提交的PCT国际专利申请PCT/US2013/044378中,通过引用将其全部内容并入本文中。
服务提供商网络2可以包括服务提供商系统24。总体上,服务提供商系统24可以向控制器10发送使得控制器验证、供应、和/或管理由服务提供商网络2提供的服务的请求。服务提供商系统24可以向控制器10的接口20发送包括验证、供应、和/或管理由服务提供商网络2提供的服务的请求的数据交换格式的消息。
在一些示例中,服务提供商系统24由管理服务提供商网络2的网络管理者实施和操作。在这样的示例中,服务提供商的客户可以使用客户端设备(未示出)与服务提供商系统24交互。例如,服务提供商系统24可以提供包括图形用户接口和/或应用编程接口(API)的端口,其允许客户提交针对网络服务的请求。在一些示例中,服务提供商系统24可以由客户而不是管理服务提供商网络2的服务提供商拥有、操作、和/或维护。
服务提供商系统24可以向控制器10的接口20发送消息以请求网络服务。在一些示例中,根据无状态、客户端-服务器通信体系结构来实施接口20。无状态、客户端-服务器通信体系结构可以依赖于可高速缓存的协议。作为示例,接口20可以根据表述性状态传输(REST)软件体系结构来实施以与服务提供商系统24发送和接收消息。在一些情况下,接口20可以执行HTTP作为应用协议。
为了向控制器10提交请求,服务提供商系统24可以生成包括服务请求的消息。服务请求可以包括由客户请求的网络的一个或多个服务和/或资源的定义。作为一个示例,服务请求可以指定一个或多个客户站点之间的针对客户的虚拟专用网络(VPN)服务。
服务请求的示例可以包括以下:
属性“服务名称”、“服务类型”、“客户”、“站点”、“拓扑结构”以及“服务质量简档”属性以及对应的值一起共同定义将全网状VPN配置具有客户站点SFO、LAX、NYC和DFW之间的服务简档的黄金质量的请求。
响应于由客户提供的用以请求服务的输入,服务提供商系统24可以生成定义服务的服务请求,例如以上针对VPN服务所描述的。服务提供商系统24向接口20发送包括服务请求的消息。
控制器10包括多个服务供应模块26A-26N(统称为“服务供应模块26”),每个服务供应模块能够通过对网络资源5进行配置来实现由服务请求表示的网络的状态。即,服务供应模块26可以将定义服务的服务抽象的高级数据模型转化成适合于与服务提供商网络2的网络资源5交互的低级形式。接收消息的控制器10可以验证包括在消息中的请求并且在存在足够的网络资源5满足请求时供应服务。以这种方式,接口20和服务供应模块26可以为控制10提供能够支持快速变化的服务类型、适于实时网络资源并且强制执行商业逻辑的灵活服务抽象层。
服务提供商系统24可以被实施为硬件、软件、和/或硬件和软件的组合。尽管被示出为图1中的独立系统,但是在本公开中描述的服务提供商系统24的功能的任意集合可以被实施在控制器10、网关8、AAA服务器11、策略控制服务器14、或任何其他合适的设备中。
控制器10可以供应对应于服务提供商网络2的各种边界和/或层的多个片段中的服务。例如,针对由订户设备16中的任何一个或多个订户设备使用的服务的第一服务片段的虚拟LAN(VLAN)或L2/L3回路可以通过接入网络6基础设施被承载并且在核心网络7存在的情况下被映射到PE路由器处的虚拟路由和转发表(VRF表)或虚拟专用LAN服务(VPLS)实例。然后,第二服务片段可以在描绘介入网络6与核心网络7之间的边界的入口PE路由器处被发起。核心网络7承载服务跨到另一端,出口PE路由器,在那里该第二服务片段终止并且被映射到在接收端上的接入/聚集基础设施中,可能作为服务的最后片段并且在边缘网络9上操作。这仅仅是服务供应的一个说明性示例。下面进一步描述具有不同复杂度的其他示例。的确,图1中图示的各种网络,诸如核心网络7,可以包括具有网络资源5的多个层,该多个层可以分别被供应为单独的服务片段以便建立服务。另外,各个片段中的每个片段可以采用不同类型的网络来传输数据,例如光网络、路由网络以及无线网络。
根据本文中描述的技术,网络运营商部署向网络资源5中的每个网络资源提供全网络锁定服务的协调仓库22。协调仓库22表示单独地或协作地提供锁定服务的一个或多个服务器。协调仓库22可以利用由Apache软件基金会发布的或其他协调服务以提供锁定服务。在图1的示例中,协调仓库22存储对应于服务提供商网络2的相应的网络资源5的软件表示21。软件表示21中的每个软件表示代表网络资源5中的对应一个网络资源,并且协调仓库22可以通过使用对应的软件表示21来提供每个网络资源5的锁,以协调和排除对网络资源的访问。
在一些示例中,软件表示21中的每个软件表示与定义针对对应的网络资源5的锁状态的锁相关联。换言之,如果给定的软件表示21根据协调仓库22而被锁定,则对应的网络资源5也被锁定,并且尝试获得该锁的服务供应模块26被排除获得该锁。以这种方式,针对给定的软件表示21的锁提供针对对应的网络资源5的独占配置访问。每个服务供应模块26避免尝试配置网络资源5,除非服务供应模块26具有针对网络资源5的锁。
控制器10借助于诸如内部网关协议(IGP)的路由协议以及诸如Netconf/YANG的管理协议/方法来发现网络资源。另外,控制器10可以通过经由使用诸如Netconf/YANG的管理方法、简单网络管理协议(SNMP)、传输层接口(TLI)、和/或通用对象请求代理结构(CORBA)来收集负载状态、统计、计数器、警报以及健康指标来发现网络状态。
控制器10使用诸如边界网关协议(BGP)路由反射器和路径计算单元协议(PCEP)的路由协议、管理供应协议(例如,Netconf/YANG)、以及新兴的软件定义网络(SDN)协议(例如,OpenFlow)来促进对路由和交换网络元件的动态供应。
控制器10的服务供应模块26可以独立地执行路径计算算法来在网络资源5之间计算路径及指配负载。对于光网络片段,这可以包括指定波长分配、光再生以及波长转换。例如,服务供应模块26中的每个服务供应模块可以表示由执行服务供应模块26的多线程进程的线程执行的软件进程或进程例程。在一些情况下,网络管理者部署控制器10的多个实例,其中每个实例可以包括服务供应模块26中的一个或多个并行实例。
控制器10的服务供应模块26通过向包括网络资源5的网络2的元件发出命令来独立地并且在一些情况下同步地(即,同时)对服务提供商网络2进行配置以便建立路径。为了该目的,服务供应模块26可以使用路由协议、信令协议(诸如具有流量工程扩展(RSVP-TE)的多协议标签交换(MPLS)资源预留协议、广义的MPLS)、或配置协议(诸如Netconf/YANG、SNMP、PCEP)、或用于安装状态或以其他方式控制服务提供商网络2的元件的其他协议。
图1图示了实现借助于服务提供商核心7将接入网络6连接到边缘网络9的用于服务23的网络配置的服务供应模块26A。为了在实现服务23的网络配置的同时维持服务供应事务的完整性,服务供应模块26A尝试获得要由服务供应模块26A配置的针对网络资源5中的每个网络资源的锁以便实施服务23。如下面进一步参考图4所描述的,服务供应模块26A可以在一些示例中连续地获得、配置和释放针对服务23所要求的网络资源5的锁28。如下面进一步参考图5所描述的,服务供应模块26A可以在一些示例中原子地获得针对服务23所要求的网络资源5的所有锁28、对服务23所要求的网络资源进行配置、并且然后原子地或非原子地释放锁28。“原子地”获得锁是在对对应的网络资源5中的任何网络资源进行配置之前获得所有的锁。
在图示的示例中,因为服务供应模块26A成功地获得锁28,服务供应模块26A将服务23所要求的网络资源5配置为供应服务。服务供应模块26N可以由控制器10任命负责处理针对与服务23共同具有要求的网络资源5的服务29的服务请求。即,服务23和服务29两者要求要被配置以便建立服务23和服务29的共同的网络资源5。当服务供应模块26A具有锁28时,服务供应模块26N避免尝试对服务29与服务23共同具有的至少一个网络资源5进行配置,因为服务供应模块26N不能够获得所要求的一个或多个锁。
作为服务供应模块26利用软件表示21来表示相应的网络资源5并将软件表示21与由协调仓库22提供的全网络同步锁相关联的结果,控制器10的服务供应模块26可以强制执行对网络资源5的单线程配置访问,这可以促进针对服务配置的事务完整性以减少跨网络2的网络资源5的服务误配置和/或不一致性的实例,否则其可能导致网络服务故障。
并行运作的多个服务供应模块26可以因此通过同时地对不同的网络资源进行配置来同步地尝试供应服务23、29,每个工作者具有对任何给定网络资源在任何一个时间的独占配置访问。在实现了并行供应模型的情况下,例如,服务提供商网络2的网络管理者能够对服务供应进行缩放以可靠地满足动态增长的服务需求、(例如,经由服务提供商系统24)向客户提供用于更快服务命令到完成的自供应端口、并且提供响应于网络事件的实时服务供应。该技术可以因此提供电信级的全网络服务协调机制和其他网络基础设施,包括遗留的基础设施。
图2是图示了根据本公开中描述的技术来操作的控制器的示例实例的框图。控制器70是用于可以被配置为提供服务的网络的逻辑上集中的但在一些情况下物理上分布式的控制器。在该示例中,控制器70包括多个服务供应模块71A-71N(统称为“服务供应模块71”)以通过验证、供应、和/或管理请求的服务来处理所请求的服务。服务供应模块71可以通过缩放以增大服务供应模块71实例的数量(即,水平缩放)来适应网络条件。控制器70可以表示图1的控制器10的示例实例,并且服务供应模块71可以表示图1的服务供应模块26的示例实例。
为了便于说明的目的,未示出控制器70的一些部件,例如一个或多个可编程处理器和网络接口。这些部件可以包括硬件和用于执行控制器70的模块的指令。控制器70呈现北向接口72,北向接口72可以由控制器的分层布置中的其他控制器或由编排器、管理器、或其他实体调用,以修改控制器70的配置状态78(“配置.状态78”)或提取描述服务数据模型74的控制器70的操作状态80。北向接口72可以表示图1的接口20的示例实例。北向接口72可以用于与诸如OpenStack的编排系统集成;北向接口72也可以或备选地由其他应用或运营商的运营支撑系统(OSS)/商业支撑系统(BSS)使用。在一些情况下,北向接口72可以表示RESTful应用编程接口(API)。
服务供应模块71中的每个服务供应模块包括用于执行相似的功能的相似的部件,所述部件和功能在下文中关于服务供应模块71A来进行描述。服务数据库26存储表示正式服务数据模型74内的实例化服务的对象。高级服务模型74可以包括,例如,需求日历和对由提供商/企业指引的网络的约束。变换引擎86将服务数据库76中的服务对象从高级服务数据模型74变换到技术数据模型90中的对应的低级对象。变换引擎86可以包括模式变换器。在这种意义上,变换引擎86用作服务数据模型74到技术数据模型90的编译器。鉴于高级服务数据模型74描述先前请求和实例化的或被处理以用于在控制器70的控制下利用网络片段的最终实例化的服务,如技术数据库92所表示的,低级技术数据模型90描述这些服务怎样被实施或怎样被实施在网络内。例如,技术数据库92可以包括描述至少部分地实施服务数据库76中的服务的TE-LSP的对象。技术数据库92进一步包括由控制器70管理的网络的网络资源的标识符,诸如服务提供商网络2的网络资源。技术数据模型90包括描述网络元件的相应的配置的配置状态94以及描述网络元件的诸如负载、可用带宽等的相应的操作特性的操作状态96。
换言之,高级服务数据模型74使用直接映射到提供给终端用户的服务的对象,例如,虚拟网络、连接性策略、或安全性策略来以非常高级的抽象描述在控制器70的控制下的网络的期望的状态。另一方面,低级技术数据模型90使用映射到诸如BGP路由目标或VxLAN网络标识符的具体网络协议结构的对象以非常低级的抽象来描述网络的期望的状态。相应地,南向接口100执行一个或多个南向协议102A-102K(统称为“南向协议102”),利用一个或多个南向协议102A-102K控制器10可以在控制器70的控制下从网络片段30获得配置状态94和操作状态96并且将配置状态94和操作状态96注入到网络片段30,其中配置状态94和操作状态存储南向协议102可理解的并且映射到南向协议102的构造的对象。以这种方式,服务供应模块71A可以使在控制器70的控制下的网络的状态与如由服务供应模块71A经由北向接口72接收到的并由服务数据模型74表示的网络的期望的状态相匹配。南向协议102可以包括用于路径供应以及用于拓扑发现的协议。例如,南向协议102可以包括路径计算单元(PCE)通信协议(PCEP)、具有流量工程扩展的开放式最短路径优先(OSPF-TE)、具有流量工程扩展的中间系统到中间系统(ISIS-TE)、BGP链接状态(BGP-LS)、NETCONF/Yang、接口到路由系统(I2RS)协议、针对网络元件的CLI、以及SNMP。
根据本公开的技术,服务供应模块71A附加地包括锁定单元110,锁定单元110被配置为管理为服务供应模块71A锁定的网络资源。资源图114将技术数据库92中指定的网络资源映射到网络资源的相应的虚拟/软件表示。协调仓库客户端116表示协调仓库22的客户端并且因此能够访问由协调仓库22提供的锁定服务。协调仓库客户端116可以执行通过其访问由协调仓库22提供的服务接口以获得/释放针对网络资源的锁的库、协议、或其他软件。
当服务供应模块71A试图经由南向接口100来对网络资源进行配置时,其向锁定单元110提供针对网络资源的标识符,锁定单元110使用资源图114来将标识符映射到网络资源的虚拟/软件表示。如以上参考图1所描述的,协调仓库22管理网络资源的表示。协调仓库客户端116向协调仓库22提供针对网络资源的表示的标识符连同针对锁的请求。协调仓库客户端116随后从协调仓库22接收给予或拒绝锁的消息。在连续地或原子地获得针对请求的服务的网络资源的要求的锁后,服务供应模块71A对网络资源进行配置以实施服务。服务供应模块71中的每个服务供应模块可以同步地操作,在一些情况下寻求在重叠的时间的针对相同网络资源的锁。
图3是详细图示了根据本公开的技术的诸如图1的控制器10或图2的控制器71的另一示例控制器的框图。在该示例中,控制器140包括形式为北向应用编程接口(API)150和南向API 152的北向接口和南向接口,其可以分别表示北向接口72和南向接口100的示例。北向API 150包括网络服务应用可以通过其配置并请求路径计算并且在针对控制器的路径计算域内查询建立的路径的方法和/或可访问数据结构。南向API 152包括服务供应模块26A-26N(仅26A被示出在图3中)通过其接收针对路径计算域的拓扑和网络资源信息并且通过访问聚集节点的数据平面并对聚集节点的数据平面编程和/或访问路径计算域内的节点来建立路径的方法和/或可访问数据结构。
路径计算模块186包括用于存储用于计算和建立请求的路径的路径信息的数据结构。这些数据结构包括约束154、路径要求156、操作配置158、以及路径出口160。网络服务应用可以调用北向API 150以安装这些数据结构和/或从这些数据结构查询数据。约束154表示描述关于路径计算的外部约束的数据结构。约束154允许网络服务应用例如在路径计算模块186计算一组路径之前修改链接属性。例如,射频(RF)模块(未示出)可以编辑链接以指示资源在组之间共享并且资源必须被相应地分配。网络服务应用可以修改链接的属性以影响作为结果的流量工程计算。在这种情况下,链接属性可以重载从拓扑指示模块216接收到的属性并且在拓扑中的节点/随从端口的持续时间保持有效。例如,到约束154的链接编辑消息可以包括指定节点标识符和端口索引的链接描述符,以及指定带宽、预期发送时间、共享的链接组、以及命运共享组的链接属性。
路径出口160表示存储当前在路径计算域中委托或建立的所有路径的路径描述符的接口。响应于经由北向API 150接收到的查询,路径出口160返回一个或多个路径描述符。接收到的查询可以请求终止(一个或多个)路径的任何两个网络设备之间的路径。路径描述符可以由网络服务用于在终止(一个或多个)路径的边缘和接入节点处建立转发配置。路径描述符可以包括显式路由对象(ERO)。可以响应于来自感兴趣的一方的查询来发送路径描述符或“路径信息”。路径出口消息递送包括路径类型(主或迂回);针对每个CoS值的带宽;以及针对从入口到出口的有序的路径中的每个节点的节点标识符、入口标签以及出口标签的路径信息。
路径要求156表示接收针对要由路径计算模块186计算的路径的路径请求并将这些路径请求(包括路径要求)提供给路径引擎244以用于计算的接口。路径要求消息可以包括具有针对终止指定路径的节点的入口节点标识符和出口节点标识符的路径描述符,以及包括CoS值和带宽的请求参数。路径要求消息可以添加到针对指定路径的现有路径要求或从针对指定路径的现有路径要求中删除。
拓扑模块216包括用于处置拓扑发现并且在需要时维持服务供应模块26与路径计算域(即,由控制器140控制的域)的节点之间的控制通道的拓扑指示模块162。拓扑指示模块162可以包括用于描述到路径计算模块186的接收到的拓扑的接口。
拓扑指示模块162可以使用拓扑发现协议来描述到路径计算模块186的路径计算域拓扑。使用拓扑发现,拓扑指示模块162可以接收节点邻居列表,每个邻居包括例如节点标识符、本地端口索引、和远程端口索引,以及链接属性列表,每个链接属性指定端口索引、带宽、预期发送时间、共享链接组、以及命运共享组。这些是映射到图2的低级技术数据模型90的构造的示例。
拓扑指示模块162可以与诸如路由协议(例如,BGP)路由反射器的拓扑服务器通信,以接收针对网络的网络层的拓扑信息。拓扑指示模块162可以包括执行路由协议以接收路由协议广告的路由协议过程,所述路由协议广告诸如开放式最短路径优先(OSPF)或中间系统到中间系统(IS-IS)链接状态广告(LSA)或边界网关协议(BGP)更新(UPDATE)消息。在一些情况下,拓扑指示模块162可以是既不转发也不发起路由协议广告的被动收听者。在一些情况下,拓扑指示模块162可以备选地或附加地执行拓扑发现机制,诸如用于应用层流量优化(ALTO)服务的接口。拓扑指示模块162可以因此接收由诸如ALTO服务器的拓扑服务器收集的拓扑信息的摘要,而不是执行路由协议以直接接收路由协议广告。
在一些示例中,拓扑指示模块162接收包括流量工程(TE)信息的拓扑信息。例如,拓扑指示模块162可以执行具有TE扩展的中间系统到中间系统(IS-IS-TE)或具有TE扩展的开放式最短路径优先(OSPF-TE)以接收针对广告的链接的TE信息。这样的TE信息包括以下的一个或多个:链接状态、管理属性以及诸如在连接路由计算域的路由器的链接的各种LSP优先级级别可用的带宽的度量。在一些情况下,拓扑指示模块162执行BGP-TE以接收针对内自治系统和其他网络外链接的广告的TE信息。
流量工程数据库(TED)242将由拓扑指示模块162接收到的、针对构成针对控制器140的路径计算域的网络的拓扑信息存储到计算机可读存储介质(未示出)。TED 242可以包括一个或多个链接状态数据库(LSDB),其中链接和节点数据在路由协议广告中被接收、从拓扑服务器被接收、和/或由诸如重叠控制器的链接层实体发现并且然后被提供给拓扑指示模块162。在一些情况下,运营商可以经由客户端接口来对TED 242内的流量工程或其他拓扑信息进行配置。
路径引擎244接受形式为TED 242的路径计算域的当前拓扑快照并且使用TED 242来计算如由配置的节点专属策略(约束154)和/或通过经由API利用外部模块的动态联网所指示的节点之间的CoS感知的流量工程路径。路径引擎244还可以根据(如分别在操作配置158和路径要求156中指定的)配置的故障转移和容量要求在每个CoS的基础上针对所有主路径计算迂回。
总体上,为了计算请求的路径,路径引擎244基于TED 242和所有指定的约束来确定在层中是否存在在请求的时间期间满足针对请求的路径的TE规范的路径。路径引擎244可以使用Djikstra约束的SPF(CSPF)246路径计算算法以用于在路径计算域中标识满足的路径。如果针对所请求的路径的满足的计算的路径存在,则路径引擎将针对计算的路径的路径描述符提供给路径管理器248以使用路径供应模块218来建立路径。由路径引擎244计算的路径可以被称为“计算的”路径,直到诸如路径供应模块248将预定的路径编程到网络中时,在那时所预定的路径变成“有效的”或“委托的”路径。预定的或有效的路径是针对所预定的时间的临时专用带宽通道,在所述临时专用带宽通道中,路径是或者将变成可操作为传输流。
路径管理器248使用路径供应模块218来建立计算的预定的路径,在该实例中其包括转发信息库(FIB)配置模块252(图示为“FIB CONFIG.252”)、策略器配置模块254(图示为“POLICER CONFIG.254”)、以及CoS调度器配置模块256(图示为“COS SCHEDULERCONFIG.256”)。
FIB配置模块252将转发信息编程到路径计算域的聚集节点或接入节点的数据平面。聚集节点或接入节点的FIB包括MPLS交换表、针对每个主LSP的迂回路径、每个接口的CoS调度器和在LSP入口的策略器。FIB配置模块252可以实施,例如,诸如OpenFlow协议的软件定义的网络(SDN)协议以提供并指引节点以将转发信息安装到它们相应的数据平面。因此,“FIB”可以指形式为例如一个或多个OpenFlow流表的转发表,每个OpenFlow流表包括指定对匹配分组的处置的一个或多个流表条目。FIB配置模块252可以附加地或备选地实施其他接口类型,诸如简单网络管理协议(SNMP)接口、路径计算单元协议(PCEP)接口、设备管理接口(DMI)、CLI、到路由系统的接口(I2RS)、或任何其他节点配置接口。FIB配置模块接口252建立与聚集节点或接入节点的通信会话以安装转发信息来接收路径建立事件信息,诸如接收到的转发信息已经被成功安装或接收到的转发信息不能够被安装(指示FIB配置失败)的确认。关于PCEP的附加的细节可以在“Path Computation Element(PCE)Communication Protocol(PCEP)”(Network Working Group,Request for Comment 5440,2009年3月)中找到,通过引用将其全部内容并入本文中。关于I2RS的附加的细节在“Interface to the Routing System Framework”(Network Working Group,Internet-draft,2012年7月30日)中找到,通过引用将其并入为如同在本文中完全地阐述一样。
FIB配置模块252可以根据从路径计算模块186接收到的信息来添加、改变(即,隐含地添加)、或删除转发表条目。从路径计算模块186到FIB配置模块252的FIB配置消息可以指定事件类型(添加或删除)、节点标识符、路径标识符、一个或多个转发表条目(每个转发表条目包括入口端口索引、入口标签、出口端口索引、以及出口标签)、以及指定路径标识符和CoS模式的迂回路径。
策略器配置模块254可以由路径计算模块186调用以请求策略器被安装在针对特定LSP入口的特定聚集节点或接入节点上。如以上指出的,针对聚集节点或接入节点的FIB包括在LSP入口处的策略器。策略器配置模块254可以根据CCP来接收策略器配置请求。CCP策略器配置请求消息可以指定事件类型(添加、改变或删除)、节点标识符、LSP标识符,以及针对每种类别的服务的包括CoS值、最大带宽、突发、以及下降/备注的策略器信息的列表。FIB配置模块252根据策略器配置请求来对策略器进行配置。
CoS调度器配置模块256可以由路径计算模块186调用以请求聚集节点或接入节点上的CoS的配置。CoS调度器配置模块256可以接收CoS调度器配置信息。规划配置请求消息可以指定事件类型(改变)、节点标识符、端口身份值(端口索引),以及指定例如带宽、队列深度、以及规划纪律的配置信息。
根据本公开的技术,客户可能想要对服务提供商网络中的服务进行配置。客户可以与服务提供商系统24交互以提供定义由客户请求的服务的一个或多个参数。服务提供商系统24调用北向API 150的接口20以向控制器140提供由客户请求的服务的定义,所述定义包括以下属性:对应于由用户提供以请求服务的参数的值对。
取决于控制器140的控制模式,路径计算模块186可以根据请求来供应网络服务。在接收到用于供应网络服务的数据时,路径引擎244获得形式为TED 242的路径计算域的当前拓扑快照并且使用TED 242来计算CoS可知的流量工程路径。
如果针对请求的路径的满足的计算的路径存在,则路径引擎244将针对计算的路径的路径描述符提供给路径管理器248以使用路径供应模块218来建立路径。FIB配置模块252将转发信息编程到路径计算域的聚集节点或接入节点的数据平面。在一些示例中,策略器配置模块254可以由路径计算模块186调用以请求策略器被安装在针对特定LSP入口的特定聚集节点或接入节点上。在一些示例中,CoS调度器配置模块256可以由路径计算模块186调用以请求聚集节点或接入节点上的CoS调度器的配置。
路径供应模块218可以生成和/或编译以建模语言提供以设置网络设备和网络设备资源的参数的资源模型。在一些示例中,路径供应模块218可以使用被公布为RFC 6020的YANG数据建模语言来生成和/或编译资源模型。YANG可以用于对网络元件的状态和配置数据进行建模。在图5的示例中,路径供应模块218可以根据YANG标准来将供应网络服务所需要的任何资源模型编译成一个或多个建模文件。在编译了一个或多个建模文件时,路径供应模块218可以执行服务供应工作以确定一个或多个数据建模文件的内容并供应所请求的服务。路径供应模块218可以将YANG标准的格式化消息转换成设备专属和资源专属配置信息。
然后,路径供应模块218尝试对对应于设备专属配置信息的一个或多个网络资源进行配置。路径供应模块218调用锁定单元110以获得针对网络资源的锁。在连续地或原子地获得必要的锁时,路径供应模块根据配置信息对网络资源进行配置。以这种方式,服务供应模块26A改变计算的路径的状态以安全地供应具有促进配置的网络资源的完整性的服务。
图4是图示了根据本公开中描述的技术的用于将网络资源映射到由协调仓库提供的网络资源的相应的全网络同步表示以促进全网络同步网络资源锁定的示例数据结构的框图。在该示例中,全网络同步的数据结构300具有以类似于文件系统的方式分层组织的数据模型和名字空间。数据结构300通过网络“N1”和“N2”来聚集网络资源节点304A-304D,使得网络资源节点304A-304B是表示网络“N1”的节点302B的子节点并且网络资源节点304C-304D是表示网络“N2”的节点302C的子节点。节点302B、302C是根节点302A的子节点。
网络资源节点304A-304D(统称为“资源节点304”)中的每个网络资源节点是网络的对应网络资源的软件表示。技术数据库92存储针对可用的网络资源的标识符310A-310N,资源图114将其映射到相应的软件表示。在该示例中,协调仓库22使用障碍节点来实施锁。如果障碍节点存在,则障碍针对障碍条件来放置。总体上,分布式系统使用障碍来阻挡对系统节点的集合的处理直到条件被满足,在那时所有系统节点都被允许进行处理。服务供应模块26创建并遵守针对网络资源放置的障碍节点。即,因为障碍节点针对网络资源来放置而已经不允许前进的服务供应模块26不尝试对网络资源进行配置除非和直到服务供应模块26获得由障碍节点表示的锁。在图示的示例中,服务供应模块26A使用资源图114将网络资源310D映射到节点304A。在确认针对节点304A的“锁”障碍节点不存在之后,服务供应模块26A创建障碍节点310作为针对网络资源“/N1/RA”的节点304A的子节点。服务供应模块26A因此具有用于对由310D标识的网络资源进行配置的锁,并且在对网络资源进行配置之后,通过删除障碍节点310来释放锁。其他服务供应模块26禁止尝试对网络资源进行配置直到服务供应模块26A删除障碍节点310。服务供应模块26A可以创建障碍节点310作为短暂的,使得在服务供应模块26A失败时,协调仓库22移除障碍节点310使得其他服务供应模块26可以获得针对节点304A的锁。
在一些示例中,协调仓库22可以使用其他原语来实施对网络资源的锁定并且由此用作针对网络资源配置的全网络信号量仓库。例如,协调仓库22可以使用其提供原语和配方,服务供应模块26可以利用该原语和配方来实施针对网络资源的障碍和其他类型的锁。
图5是图示了根据本文中描述的技术的针对用于使用协调仓库来供应服务的控制器的操作的示例模式的流程图。关于图1的控制器10和协调仓库22来描述示例操作400。控制器10接收服务请求并将事务委托给服务供应模块26A(401)。在确定了要被配置为完成事务的网络资源的集合之后,服务供应模块26A连续地通过网络资源的集合进行循环以获取锁并对资源进行配置。通过网络资源的集合进行循环(402),服务供应模块26A确定是否仍然有要被配置的任何网络资源(404)。如果没有(404的否分支),则针对所请求的服务的事务完成(406)。
否则(404的是分支),针对循环中的下一个网络资源,服务供应模块26A尝试从协调仓库22获取针对网络资源的锁(410)。在一些情况下,锁可以由要被配置的设备本机提供,例如使用NETCONFIG配置锁。如果服务供应模块26A没有成功获取锁(414),则服务供应模块26A可以可选地等待一定时间(408)并且然后进行到循环的下一次迭代(402)。如果服务供应模块26A获取锁(414),则服务供应模块26A尝试对网络资源进行配置(416)。如果配置成功(422的是分支),则服务供应模块26A释放锁并进行到循环的下一次迭代(402)。如果配置不成功(418的否分支),则因为服务不能够被配置为已计算,服务供应模块26A可以回滚事务(420)并将锁释放回协调仓库22(422)。然而,在一些情况下,服务供应模块26A可以再次尝试配置或继续对要被配置的集合中的其他网络资源进行配置。该确定可以基于由网络操作设置的策略。
图6是图示了根据本文中描述的技术的针对用于使用协调仓库来供应服务的控制器的操作的示例模式的流程图。关于图1的控制器10和协调仓库22来描述示例操作500。控制器10接收服务请求并将事务委托给服务供应模块26A(501)。在确定了要被配置为完成事务并建立服务的网络资源的集合之后,服务供应模块26A尝试原子地获得针对网络资源的集合中的所有网络资源的锁(504)。如以上所描述的,协调仓库22可以提供用于进行网络资源锁定的障碍节点。原子地获得针对网络资源的集合的锁意味着所有障碍节点以原子操作被创建——它们中的全部被创建或者它们中没有一个被创建。如果不成功(508的否分支),则服务供应模块26A可以可选地等待一定时间(502)并再次尝试原子地获得锁(504)。
在成功获得针对网络资源的集合的锁(508)时,服务供应模块26A通过网络资源的集合进行迭代以配置资源。通过网络资源的集合进行循环(510),服务供应模块26A确定是否仍然有要被配置的任何网络资源(512)。如果没有(512的否分支),则针对所请求的服务的事务完成(518)并且服务供应模块26A释放锁(522)。
如果集合中的网络资源仍然有要被配置的(512的是分支),服务供应模块26A尝试对网络资源进行配置(514)。如果配置成功(520的是分支),则服务供应模块26A进行到循环的下一迭代(510),如果配置不成功(520的否分支),则因为服务不能够被配置为已计算,服务供应模块26A可以回滚事务(520)并将锁释放回协调仓库22(522)。然而,在一些情况下,服务供应模块26A可以再次尝试配置或继续对要被配置的集合中的其他网络资源进行配置。该确定可以基于由网络操作设置的策略。
对于操作400和500的模式,服务供应模块26可以在未能获取锁时尝试获取针对服务的网络资源的集合中的其他网络资源或针对其他服务的网络资源的锁。换言之,服务供应模块26不需要空闲。操作400提供最终一致性模型,在所述最终一致性模型中在任何时间一些网络资源由服务供应模块26A被配置具有服务而其他网络资源不被这样配置并且可以由其他服务供应模块26锁定。另外,连续地锁定要求的网络资源通常具有协调仓库22的、比原子地获取针对所有要求的网络资源的锁(如由操作500完成的)更大的锁定开销。另外,操作500可以提供严格的服务级事务完整性并且可以提供比操作400更好的性能,因为锁操作是单个原子锁获取。
在一些示例中,服务供应模块26A可以派生针对用于并行配置多个网络资源的多个例程的线程,而不是以单线程操作连续地通过网络资源的集合进行迭代。在一些示例中,对于操作500,服务供应模块26A在工作者级别而不是例程级别实施锁。
本文中描述的技术可以被实施在硬件、软件、固件、或其任何组合中。被描述为模块、单元或部件的各种特征可以一起被实施在集成逻辑设备中或可以单独地被实施为离散但可互操作的逻辑设备或其他硬件设备。在一些情况下,电子线路的各种特征可以被实施为一个或多个集成电路设备,例如集成电路芯片或芯片组。
如果被实施在硬件中,本公开可以涉及这样的处理器或集成电路设备的装置,例如集成芯片或芯片组。备选地或附加地,如果被实施在软件或固件中,所述技术可以至少部分由包括指令的计算机可读数据存储介质来实现,所述指令当被执行时使得处理器执行以上描述的方法中的一个或多个方法。例如,计算机可读数据存储介质可以存储用于由处理器执行的这样的指令。
计算机可读介质可以形成计算机程序产品的一部分,其可以包括包装材料。计算机可读介质可以包括计算机数据存储介质,例如随机存取存储器(RAM)、只读存储器(ROM)、非易失性随机存取存储器(NVRAM)、电可擦可编程只读存储器(EEPROM)、快闪存储器、磁或光数据存储介质等等。在一些示例中,一款制品可以包括一个或多个计算机可读存储介质。
在一些示例中,计算机可读存储介质可以包括非暂态介质。术语“非暂态”可以指示存储介质没有被实现在载波或传播的信号中。在某些示例中,非暂态存储介质可以存储(例如,在RAM或高速缓存中)能够随时间变化的数据。
代码或指令可以是由包括一个或多个处理器的处理电路执行的软件和/或固件,所述一个或多个处理器诸如一个或多个数字信号处理器(DSP)、通用微处理器、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、或其他等同的集成或离散逻辑电路。因此,如本文中使用的术语“处理器”可以指适合于实施本文中描述的技术的前述结构或任何其他结构中的任何结构。另外,在一些方面中,在本公开中描述的功能可以被提供在软件模块或硬件模块内。
对于以上附加地或者备选地,描述了以下示例。在以下示例中的任何示例中描述的特征可以与本文中描述的其他示例中的任何示例一起来利用。
示例1.一种方法,包括:由供应用于传输网络内的分组流的服务的控制器接收服务请求,所述服务请求包括要由所述网络向所述网络的订户或客户提供的服务的定义;由所述控制器确定要被配置为实施所述网络中的所述服务并将所述服务应用到所述订户的基于分组的网络流量的至少一个网络设备的多个网络资源;以及仅在获取了针对所述至少一个网络设备的所述多个网络资源的锁时由所述控制器将所述至少一个网络设备的所述多个网络资源配置为供应所述服务,其中从存储针对所述至少一个网络设备的所述多个网络资源中的每个网络资源的软件表示的全网络协调仓库获取所述锁,并且其中所述锁向所述控制器提供针对所述多个网络资源的独占配置访问。
示例2.根据示例1所述的方法,其中获取针对所述至少一个网络设备的所述多个网络资源的所述锁包括从所述协调仓库获取针对所述至少一个网络设备的所述多个网络资源中的每个网络资源的单独锁,其中针对所述多个网络资源中的每个网络资源的所述单独锁向所述控制器提供针对所述网络资源的独占配置访问。
示例3.根据示例1所述的方法,其中获取针对所述至少一个网络设备的所述多个网络资源的所述锁包括从所述协调仓库原子地获取针对所述至少一个网络设备的所述多个网络资源中的所有网络资源的单个锁,其中针对所述多个网络资源的所述单个锁向所述控制器提供针对所述多个网络资源的所述独占配置访问。
示例4.根据示例1所述的方法,其中所述服务包括以下各项中的一项:点到点以太网服务、多点到多点以太网服务、点到多点以太网服务、全网状层3虚拟专用联网(L3VPN)服务、以及中枢辐射型L3VPN服务。
示例5.根据示例1所述的方法,其中所述控制器包括第一服务供应模块和第二供应模块,所述方法还包括:由所述控制器将所述服务请求委托给所述第一服务供应模块,其中获取针对所述至少一个网络设备的所述多个网络资源的所述锁包括由所述第一服务供应模块获取针对所述至少一个网络设备的所述多个网络资源的所述锁,并且其中只要所述第一服务供应模块具有所述锁,所述第二供应模块就避免对所述至少一个网络设备的所述多个网络资源中的任何网络资源进行配置。
示例6.根据示例1所述的方法,其中获取针对所述至少一个网络设备的所述多个网络资源的所述锁包括:由所述第一服务供应模块创建所述协调仓库中的节点,所述节点与针对所述至少一个网络设备的所述多个网络资源中的第一网络资源的所述软件表示相关联,其中在所述节点存在时,所述第二供应模块避免对所述至少一个网络设备的所述多个网络资源中的任何网络资源进行配置。
示例7.根据示例6所述的方法,还包括:由所述第一服务供应模块删除所述协调仓库中的所述节点;以及由所述第二服务供应模块通过创建所述协调仓库中的所述节点来获取针对所述第一网络资源的锁。
示例8.根据示例1所述的方法,其中获取针对所述至少一个网络设备的所述多个网络资源的所述锁包括:由所述控制器创建所述协调仓库中的节点,所述节点与针对所述至少一个网络设备的所述多个网络资源中的第一网络资源的所述软件表示相关联。
示例9.根据示例8所述的方法,其中所述节点包括障碍节点和短暂障碍节点中的一种。
示例10.根据示例1所述的方法,其中所述协调仓库包括一个或多个服务器,所述一个或多个服务器通过同步针对所述至少一个网络设备的所述多个网络资源中的每个网络资源的所述软件表示来提供全网络同步网络资源锁定服务。
示例11.根据示例1所述的方法,其中所述多个网络资源中的第一网络资源包括以下中的一种:要被配置的网络设备和要被配置的网络设备的部件。
示例12.一种供应用于传输网络内的分组流的服务的控制器,所述控制器包括:一个或多个处理器,所述一个或多个处理器被耦合到存储器;服务供应模块,所述服务供应模块由所述一个或多个处理器执行以:接收服务请求,所述服务请求包括要由所述网络向所述网络的订户或客户提供的服务的定义;确定要被配置为实施所述网络中的所述服务并将所述服务应用到所述订户的基于分组的网络流量的至少一个网络设备的多个网络资源;以及锁定单元,所述锁定单元由所述一个或多个处理器执行以从存储针对所述至少一个网络设备的所述多个网络资源中的每个网络资源的软件表示的全网络协调仓库获取所述锁,所述锁向所述服务供应模块提供针对所述多个网络资源的独占配置访问,其中仅在所述锁定单元获取了针对所述至少一个网络设备的所述多个网络资源的所述锁时,所述服务供应模块由所述一个或多个处理器执行以将所述至少一个网络设备的所述多个网络资源配置为供应所述服务。
示例13.根据示例12所述的控制器,其中为了获取针对所述至少一个网络设备的所述多个网络资源的所述锁,所述锁定单元从所述协调仓库获取针对所述至少一个网络设备的所述多个网络资源中的每个网络资源的单独锁,其中针对所述多个网络资源中的每个网络资源的所述单独锁向所述控制器提供针对所述网络资源的独占配置访问。
示例14.根据示例12所述的控制器,其中为了获取针对所述至少一个网络设备的所述多个网络资源的所述锁,所述锁定单元从所述协调仓库原子地获取针对所述至少一个网络设备的所述多个网络资源中的所有网络资源的单个锁,其中针对所述多个网络资源的所述单个锁向所述控制器提供针对所述多个网络资源的所述独占配置访问。
示例15.根据示例12所述的控制器,其中所述服务包括以下各项中的一项:点到点以太网服务、多点到多点以太网服务、点到多点以太网服务、全网状层3虚拟专用联网(L3VPN)服务、以及中枢辐射型L3VPN服务。
示例16.根据示例12所述的控制器,其中所述服务供应模块包括第一服务供应模块,其中所述控制器包括第二供应模块,其中所述控制器将所述服务请求委托给所述第一服务供应模块,并且其中只要所述第一服务供应模块具有所述锁,所述第二供应模块避免对所述至少一个网络设备的所述多个网络资源中的任何网络资源进行配置。
示例17.根据示例12所述的控制器,其中为了获取针对所述至少一个网络设备的所述多个网络资源的所述锁,所述锁定单元创建所述协调仓库中的节点,所述节点与针对所述至少一个网络设备的所述多个网络资源中的第一网络资源的所述软件表示相关联。
示例18.根据示例17所述的控制器,其中所述节点包括障碍节点和短暂障碍节点中的一种。
示例19.根据示例12所述的控制器,其中所述多个网络资源中的第一网络资源包括以下中的一种:要被配置的网络设备和要被配置的网络设备的部件。
示例20.一种包括指令的非暂态计算机可读介质,所述指令用于使得一个或多个可编程处理器:由供应用于传输网络内的分组流的服务的控制器接收服务请求,所述服务请求包括要由所述网络向所述网络的订户或客户提供的服务的定义;由所述控制器确定要被配置为实施所述网络中的所述服务并将所述服务应用到所述订户的基于分组的网络流量的至少一个网络设备的多个网络资源;以及仅在获取了针对所述至少一个网络设备的所述多个网络资源的锁时由所述控制器将所述至少一个网络设备的所述多个网络资源配置为供应所述服务,其中从存储针对所述至少一个网络设备的所述多个网络资源中的每个网络资源的软件表示的全网络协调仓库获取所述锁,并且其中所述锁向所述控制器提供针对所述多个网络资源的独占配置访问。
此外,在以上描述的示例中的任何示例中阐述的具体特征中的任何特征可以被组合到所描述的技术的有利示例中。即,具体特征中的任何特征一般适用于本发明的所有示例。已经描述了本发明的各种示例。
Claims (13)
1.一种用于促进网络中的并行化服务供应的事务完整性的方法,包括:
由控制器接收服务请求,所述控制器供应用于传输网络内的分组流的服务,所述服务请求指定要由所述网络向所述网络的订户或客户提供的服务;
由所述控制器确定至少一个网络设备的多个网络资源,所述至少一个网络设备将被配置为实施所述网络中的所述服务,并将所述服务应用到所述订户或所述客户的基于分组的网络流量;
由所述控制器存储所述多个网络资源的标识符的数据库,所述标识符映射到全网络协调仓库中的相应软件表示,所述全网络协调仓库存储用于所述至少一个网络设备的所述多个网络资源的所述相应软件表示;
由所述控制器使用所述标识符的数据库将所述多个网络资源的所述相应标识符映射到所述全网络协调仓库中的所述相应软件表示;以及
仅在获取了针对所述至少一个网络设备的所述多个网络资源的所述相应软件表示的锁时,由所述控制器将所述至少一个网络设备的所述多个网络资源配置为供应所述服务,其中从所述全网络协调仓库获取针对所述软件表示的所述锁,其中针对所述软件表示的所述锁向所述控制器提供针对所述多个网络资源的独占配置访问。
2.根据权利要求1所述的方法,其中获取针对所述至少一个网络设备的所述多个网络资源的所述相应软件表示的所述锁包括:从所述协调仓库获取针对所述至少一个网络设备的所述多个网络资源中的每个网络资源的单独锁,其中针对所述多个网络资源中的每个网络资源的所述单独锁向所述控制器提供针对所述网络资源的独占配置访问。
3.根据权利要求1-2中任一项所述的方法,其中获取针对所述至少一个网络设备的所述多个网络资源的所述相应软件表示的所述锁包括:从所述协调仓库中以原子操作的方式获取针对所述至少一个网络设备的所有所述多个网络资源的所有软件表示的锁,其中针对所述多个网络资源的所述锁向所述控制器提供针对所述多个网络资源的所述独占配置访问。
4.根据权利要求1-2中任一项所述的方法,其中所述服务包括以下各项中的一项:点到点以太网服务、多点到多点以太网服务、点到多点以太网服务、全网状层3虚拟专用网(L3VPN)服务、以及中枢辐射型L3VPN服务。
5.根据权利要求1-2中任一项所述的方法,其中所述控制器包括第一服务供应模块和第二供应模块,所述方法还包括:
由所述控制器将所述服务请求委托给所述第一服务供应模块,
其中获取针对所述至少一个网络设备的所述多个网络资源的所述相应软件表示的所述锁包括由所述第一服务供应模块获取针对所述至少一个网络设备的所述多个网络资源的所述锁,并且
其中只要所述第一服务供应模块具有所述锁,所述第二供应模块就避免对所述至少一个网络设备的所述多个网络资源中的任何网络资源进行配置。
6.根据权利要求5所述的方法,其中获取针对所述至少一个网络设备的所述多个网络资源的所述锁包括:
由所述第一服务供应模块创建所述协调仓库中的节点,所述节点与针对所述至少一个网络设备的所述多个网络资源中的第一网络资源的所述软件表示相关联,
其中在所述节点存在时,所述第二供应模块避免对所述至少一个网络设备的所述多个网络资源中的任何网络资源进行配置。
7.根据权利要求6所述的方法,还包括:
由所述第一服务供应模块删除所述协调仓库中的所述节点;以及
由所述第二供应模块通过创建所述协调仓库中的所述节点来获取针对所述第一网络资源的锁。
8.根据权利要求1-2中任一项所述的方法,其中获取针对所述至少一个网络设备的所述多个网络资源的所述相应软件表示的所述锁包括:
由所述控制器创建所述协调仓库中的节点,所述节点与针对所述至少一个网络设备的所述多个网络资源中的第一网络资源的所述软件表示相关联。
9.根据权利要求8所述的方法,其中所述节点包括障碍节点和短暂障碍节点中的一种。
10.根据权利要求1-2中任一项所述的方法,
其中所述协调仓库包括一个或多个服务器,所述一个或多个服务器通过同步针对所述至少一个网络设备的所述多个网络资源中的每个网络资源的所述软件表示来提供全网络同步网络资源锁定服务。
11.根据权利要求1-2中任一项所述的方法,其中所述多个网络资源中的第一网络资源包括以下中的一种:要被配置的网络设备和要被配置的网络设备的部件。
12.一种供应用于传输网络内的分组流的服务的控制器,所述控制器包括:
一个或多个处理器,所述一个或多个处理器被耦合到存储器;
服务供应模块,所述服务供应模块由所述一个或多个处理器执行以用于:
接收服务请求,所述服务请求指定要由所述网络向所述网络的订户或客户提供的服务;
确定至少一个网络设备的多个网络资源,所述至少一个网络设备将被配置为实施所述网络中的所述服务,并将所述服务应用到所述订户的基于分组的网络流量;
存储所述多个网络资源的标识符的数据库,所述标识符映射到全网络协调仓库中的相应软件表示,所述全网络协调仓库存储用于所述至少一个网络设备的所述多个网络资源的所述相应软件表示;
使用所述标识符的数据库将所述多个网络资源的所述相应标识符映射到所述全网络协调仓库中的所述相应软件表示;以及
锁定单元,所述锁定单元由所述一个或多个处理器执行以从所述全网络协调仓库获取针对所述相应软件表示的锁,针对所述相应软件表示的所述锁向所述服务供应模块提供针对所述多个网络资源的独占配置访问,
其中仅在所述锁定单元获取了针对所述至少一个网络设备的所述多个网络资源的所述相应软件表示的所述锁时,所述服务供应模块由所述一个或多个处理器执行以将所述至少一个网络设备的所述多个网络资源配置为供应所述服务。
13.根据权利要求12所述的控制器,还包括用于执行根据权利要求1-11中的任一项所述的方法的装置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/460,320 US10200258B2 (en) | 2014-08-14 | 2014-08-14 | Transaction integrity for network services configuration |
US14/460,320 | 2014-08-14 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105376087A CN105376087A (zh) | 2016-03-02 |
CN105376087B true CN105376087B (zh) | 2020-07-24 |
Family
ID=53969141
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510496364.8A Active CN105376087B (zh) | 2014-08-14 | 2015-08-13 | 用于网络服务配置的事务完整性 |
Country Status (3)
Country | Link |
---|---|
US (1) | US10200258B2 (zh) |
EP (1) | EP2985951B1 (zh) |
CN (1) | CN105376087B (zh) |
Families Citing this family (34)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160105534A1 (en) * | 2014-10-13 | 2016-04-14 | Futurewei Technologies, Inc. | Physical switch initialization using representational state transfer services |
US9565135B2 (en) * | 2014-10-31 | 2017-02-07 | Futurewei Technologies, Inc. | System and method for service chaining with tunnel chains in software defined network |
US9722946B1 (en) * | 2014-11-10 | 2017-08-01 | VCE IP Holding Company LLC | Apparatus and method for a script execution control environment |
CN106209553B (zh) * | 2015-04-30 | 2019-07-23 | 华为技术有限公司 | 报文处理方法、设备及系统 |
US10574525B2 (en) * | 2015-07-02 | 2020-02-25 | Perspecta Labs Inc. | Configuration agreement protocol method |
US11228906B2 (en) | 2015-07-14 | 2022-01-18 | Ujet, Inc. | Customer communication system |
US9838533B2 (en) | 2015-07-14 | 2017-12-05 | Ujet, Inc. | Customer communication system including scheduling |
CN106576074B (zh) * | 2015-07-31 | 2020-04-21 | 华为技术有限公司 | 路由规则的获取方法、设备和系统 |
US10193984B2 (en) * | 2015-12-01 | 2019-01-29 | Telefonaktiebolaget Lm Ericsson (Publ) | Architecture for enabling fine granular service chaining |
CN106059915A (zh) * | 2016-07-20 | 2016-10-26 | 赛特斯信息科技股份有限公司 | 基于sdn控制器实现租户南北向流量限速的系统及方法 |
WO2018203663A1 (en) * | 2017-05-02 | 2018-11-08 | Samsung Electronics Co., Ltd. | Method and apparatus for providing network-based northbound application programming interface in a wireless communication system |
US10686669B2 (en) * | 2017-06-16 | 2020-06-16 | Cisco Technology, Inc. | Collecting network models and node information from 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 |
US10454896B2 (en) * | 2017-07-04 | 2019-10-22 | Is5 Communications Inc | Critical infrastructure security framework |
US10637740B2 (en) * | 2017-07-07 | 2020-04-28 | Howard Pfeffer | Apparatus and methods for management, configuration and provisioning of communication devices in a distributed access architecture |
US10523560B2 (en) * | 2017-07-28 | 2019-12-31 | Juniper Networks, Inc. | Service level agreement based next-hop selection |
CN107463438B (zh) * | 2017-08-03 | 2020-09-08 | 郑州云海信息技术有限公司 | 用于多Openstack环境的信息处理方法、装置和系统 |
US10536397B2 (en) | 2017-10-03 | 2020-01-14 | Sap Se | Packet count-based object locking protocol |
US10608947B2 (en) * | 2018-02-26 | 2020-03-31 | Qualcomm Incorporated | Per-flow jumbo MTU in NR systems |
CN110365719B (zh) * | 2018-03-26 | 2021-10-01 | 华为技术有限公司 | 一种数据处理的方法以及相关设备 |
WO2020014337A1 (en) * | 2018-07-10 | 2020-01-16 | Futurewei Technologies, Inc. | Integrated backhaul transport for 5gs |
CN110971626B (zh) * | 2018-09-28 | 2024-01-19 | 贵州白山云科技股份有限公司 | 一种企业分支机构访问请求处理方法、装置及系统 |
CN110971714B (zh) * | 2018-09-28 | 2023-10-27 | 贵州白山云科技股份有限公司 | 一种企业出口访问请求处理方法、装置及系统 |
CN113228592B (zh) * | 2019-03-22 | 2022-07-22 | 华为技术有限公司 | 提供传输上下文和路径上元数据以支持启用5g的网络的方法和装置 |
US10897396B2 (en) | 2019-03-29 | 2021-01-19 | Juniper Networks, Inc. | Supporting concurrency for graph-based high level configuration models |
US10841182B2 (en) * | 2019-03-29 | 2020-11-17 | Juniper Networks, Inc. | Supporting near real time service level agreements |
US11055191B2 (en) * | 2019-05-17 | 2021-07-06 | Citrix Systems, Inc. | Service graph highlights missing nodes and links |
CN116232990A (zh) | 2019-07-31 | 2023-06-06 | 华为技术有限公司 | 在支持SRv6的数据面上传输MTNC-ID以实现5G传输 |
CN112350843B (zh) * | 2019-08-09 | 2022-02-08 | 烽火通信科技股份有限公司 | 一种基于虚拟组件的场景式割接方法和系统 |
JP2021048526A (ja) * | 2019-09-19 | 2021-03-25 | 富士ゼロックス株式会社 | ネットワークシステム、ネットワークオペレーションセンタ、ネットワーク機器及びプログラム |
US11323339B1 (en) * | 2021-08-27 | 2022-05-03 | Juniper Networks, Inc. | Service placement assistance |
US11888819B2 (en) * | 2021-11-09 | 2024-01-30 | Axonius Solutions Ltd. | Secure access to multiple isolated networks |
CN113873289B (zh) * | 2021-12-06 | 2022-02-18 | 深圳市华曦达科技股份有限公司 | 一种iptv系统直播调度的方法 |
US11575596B1 (en) * | 2022-03-07 | 2023-02-07 | Ciena Corporation | Identifying an ingress router of a flow in inter-AS VPN option-C networks with visibility in one AS |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7159091B1 (en) * | 2003-12-31 | 2007-01-02 | Intel Corporation | Dynamic relocation of execute in place applications |
CN101256492A (zh) * | 2008-03-31 | 2008-09-03 | 宋乃辉 | 一种进行模型驱动架构的软件开发方法及其系统 |
Family Cites Families (39)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB9508283D0 (en) * | 1995-02-07 | 1995-06-14 | British Telecomm | Information services provision and management |
US7302634B2 (en) * | 2001-03-14 | 2007-11-27 | Microsoft Corporation | Schema-based services for identity-based data access |
US7327673B1 (en) * | 2001-08-31 | 2008-02-05 | At&T Delaware Intellectual Property, Inc. | Asymmetric digital subscriber line provision flow control on digital subscriber line access multiplexer switches |
US7403988B1 (en) * | 2001-12-28 | 2008-07-22 | Nortel Networks Limited | Technique for autonomous network provisioning |
US6915522B2 (en) * | 2002-01-23 | 2005-07-05 | Intel Corporation | System and method to synchronize two or more object management systems |
US7349913B2 (en) * | 2003-08-21 | 2008-03-25 | Microsoft Corporation | Storage platform for organizing, searching, and sharing data |
US7606888B2 (en) * | 2003-11-24 | 2009-10-20 | Cisco Technology, Inc. | Approach for managing network device configuration data |
US8601099B1 (en) * | 2003-12-30 | 2013-12-03 | Sap Ag | System and method for managing multiple sever node clusters using a hierarchical configuration data structure |
US8046464B2 (en) * | 2004-03-10 | 2011-10-25 | The Boeing Company | Quality of service resource management apparatus and method for middleware services |
US20060271542A1 (en) * | 2005-05-25 | 2006-11-30 | Harris Steven T | Clustered object state using logical actions |
US7733891B2 (en) * | 2005-09-12 | 2010-06-08 | Zeugma Systems Inc. | Methods and apparatus to support dynamic allocation of traffic management resources in a network element |
US8584195B2 (en) * | 2006-11-08 | 2013-11-12 | Mcafee, Inc | Identities correlation infrastructure for passive network monitoring |
EP2215775A1 (en) | 2007-11-21 | 2010-08-11 | Motive, Incorporated | System and method for identifying and calling a function of a service |
US8639267B2 (en) * | 2008-03-14 | 2014-01-28 | William J. Johnson | System and method for location based exchanges of data facilitating distributed locational applications |
US8972978B2 (en) * | 2008-05-02 | 2015-03-03 | Skytap | Multitenant hosted virtual machine infrastructure |
KR101156618B1 (ko) * | 2008-11-21 | 2012-06-14 | 연세대학교 산학협력단 | 무선 네트워크에서 자원을 할당하는 방법 |
US9557889B2 (en) * | 2009-01-28 | 2017-01-31 | Headwater Partners I Llc | Service plan design, user interfaces, application programming interfaces, and device management |
US8725122B2 (en) * | 2009-05-13 | 2014-05-13 | First Data Corporation | Systems and methods for providing trusted service management services |
CN101730156B (zh) * | 2009-06-18 | 2013-08-07 | 中兴通讯股份有限公司 | 一种资源接纳控制方法 |
US9442810B2 (en) * | 2009-07-31 | 2016-09-13 | Paypal, Inc. | Cloud computing: unified management console for services and resources in a data center |
CN102006179B (zh) | 2009-08-28 | 2014-08-13 | 中兴通讯股份有限公司 | 一种备份数据及回退数据的方法和装置 |
US8914787B2 (en) * | 2009-08-31 | 2014-12-16 | Red Hat, Inc. | Registering software management component types in a managed network |
CN101695043B (zh) * | 2009-10-15 | 2015-06-10 | 中兴通讯股份有限公司 | 一种热备份端口复用的方法及网络系统 |
US20110302265A1 (en) * | 2010-06-03 | 2011-12-08 | Microsoft Corporation | Leader arbitration for provisioning services |
US9565074B2 (en) * | 2011-04-26 | 2017-02-07 | Openet Telecom Ltd. | Systems, devices, and methods of orchestrating resources and services across multiple heterogeneous domains |
US9009317B2 (en) * | 2011-10-10 | 2015-04-14 | Verizon Patent And Licensing Inc. | System for and method of managing network resources |
WO2013102253A1 (en) | 2012-01-04 | 2013-07-11 | Hongbing Fan | System and method for providing p2p based reconfigurable computing and structured data distribution |
US9064216B2 (en) | 2012-06-06 | 2015-06-23 | Juniper Networks, Inc. | Identifying likely faulty components in a distributed system |
US8813225B1 (en) * | 2012-06-15 | 2014-08-19 | Amazon Technologies, Inc. | Provider-arbitrated mandatory access control policies in cloud computing environments |
US9501541B2 (en) * | 2012-09-07 | 2016-11-22 | Oracle International Corporation | Separation of pod provisioning and service provisioning |
US9357018B2 (en) * | 2013-01-23 | 2016-05-31 | Oracle International Corporation | Service bus workflow templates |
US20140358759A1 (en) * | 2013-05-28 | 2014-12-04 | Rivada Networks, Llc | Interfacing between a Dynamic Spectrum Policy Controller and a Dynamic Spectrum Controller |
US9658899B2 (en) * | 2013-06-10 | 2017-05-23 | Amazon Technologies, Inc. | Distributed lock management in a cloud computing environment |
US10623243B2 (en) * | 2013-06-26 | 2020-04-14 | Amazon Technologies, Inc. | Management of computing sessions |
WO2015026785A2 (en) * | 2013-08-19 | 2015-02-26 | Jacobus Erasmus Van Der Merwe | Programmable data network management and operation |
US10122650B2 (en) * | 2013-09-20 | 2018-11-06 | Oracle International Corporation | System and method for tenant management in a cloud platform environment |
US9396009B2 (en) * | 2014-01-30 | 2016-07-19 | International Business Machines Corporation | Optimized global capacity management in a virtualized computing environment |
US10205760B2 (en) * | 2014-05-05 | 2019-02-12 | Citrix Systems, Inc. | Task coordination in distributed systems |
US10291548B2 (en) * | 2014-08-08 | 2019-05-14 | Oracle International Corporation | Contribution policy-based resource management and allocation system |
-
2014
- 2014-08-14 US US14/460,320 patent/US10200258B2/en active Active
-
2015
- 2015-08-11 EP EP15180500.9A patent/EP2985951B1/en active Active
- 2015-08-13 CN CN201510496364.8A patent/CN105376087B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7159091B1 (en) * | 2003-12-31 | 2007-01-02 | Intel Corporation | Dynamic relocation of execute in place applications |
CN101256492A (zh) * | 2008-03-31 | 2008-09-03 | 宋乃辉 | 一种进行模型驱动架构的软件开发方法及其系统 |
Also Published As
Publication number | Publication date |
---|---|
US10200258B2 (en) | 2019-02-05 |
EP2985951A1 (en) | 2016-02-17 |
EP2985951B1 (en) | 2017-10-04 |
US20160050125A1 (en) | 2016-02-18 |
CN105376087A (zh) | 2016-03-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105376087B (zh) | 用于网络服务配置的事务完整性 | |
US9705815B2 (en) | Graph database for services planning and configuration in network services domain | |
US9838268B1 (en) | Distributed, adaptive controller for multi-domain networks | |
US11722410B2 (en) | Policy plane integration across multiple domains | |
US10999189B2 (en) | Route optimization using real time traffic feedback | |
US9819540B1 (en) | Software defined network controller | |
US10567288B1 (en) | Automatic discovery, scaling, and load balancing of multiple cloud data centers in a software-defined network environment | |
CN106464742B (zh) | 用于基于云的服务交换的可编程网络平台 | |
US11528190B2 (en) | Configuration data migration for distributed micro service-based network applications | |
EP2922252B1 (en) | Selectable service node resources | |
US9124485B2 (en) | Topology aware provisioning in a software-defined networking environment | |
CN103548376A (zh) | 通过openflow数据平面在云计算机中实现epc | |
Chartsias et al. | SDN/NFV-based end to end network slicing for 5G multi-tenant networks | |
WO2018233580A1 (zh) | 一种网络中建立转发路径的方法、控制器及系统 | |
Podleski et al. | Multi-domain Software Defined Network: exploring possibilities in | |
CN112202930B (zh) | 一种移动设备接入sd-wan网络方法、pop和系统 | |
EP4054125A1 (en) | Global network state management | |
US20220239583A1 (en) | Systems and methods for implementing multi-part virtual network functions | |
CN104935506A (zh) | 可选择的服务节点资源 | |
US9794146B2 (en) | Methods and systems for a monitoring device to execute commands on an attached switch | |
CN115118585A (zh) | 一种业务的部署方法、装置及系统 | |
Derakhshan et al. | Enabling cloud connectivity using SDN and NFV technologies | |
WO2022193897A1 (zh) | 一种业务的部署方法、装置及系统 | |
Tzanakaki et al. | Converged wireless access/optical metro networks in support of cloud and mobile cloud services deploying SDN principles | |
Muthukumar | Analysis of OpenFlow and NETCONF as SBIs in Managing the Optical Link Interconnecting Data Centers in an SDN Environment |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |