流量工程业务映射的制作方法

文档序号:18706828发布日期:2019-09-17 23:50阅读:402来源:国知局
流量工程业务映射的制作方法

本申请要求于2018年2月26日提交的发明名称为“流量工程业务映射”、申请号为no.15/905,558的美国非临时专利申请的优先权,上述美国非临时专利申请要求由futureweitechnologies,inc.于2017年2月27日提交的发明名称为“流量工程te业务映射”、申请号为no.62/464,198的美国临时专利申请的优先权,其通过引用结合于此。

关于联邦资助的研究或开发的声明

不适用。

参考缩微胶片附录

不适用。



背景技术:

软件定义网络(softwaredefinednetwork,sdn)是解耦网络控制和转发功能的网络化范例。将控制面从数据面解耦允许网络控制的集中化,能够实现有效的策略管理和灵活管理。网络控制的集中化有利于各种网络功能,例如网络测量、流量工程、增强服务质量、以及增强接入控制。随着启用sdn的节点和协议的可用性的增长,许多组织开始部署sdn网络。

虚拟专用网(virtualprivatenetwork,vpn)在公共网络上扩展专用网络,并使用户能够如同其计算设备直接连接到专用网络一样在共享网络或公共网络上发送和接收数据。用户可以使用vpn特定业务模型来请求vpn。



技术实现要素:

根据本公开的一个方面,提供了一种客户网络控制器(customernetworkcontroller,cnc),该cnc包括处理器,该处理器用于导入vpn业务的vpn特定业务模型并将该vpn特定业务模型映射到一个或多个流量工程(trafficengineering,te)特定参数。根据本公开这一方面的cnc还包括存储器,该存储器耦合至上述处理器并用于存储上述vpn业务的vpn标识(identification,id)和为上述vpn业务建立的te隧道的隧道id之间的映射,其中,该te隧道满足上述一个或多个te特定参数。

可选地,在前述方面的任一方面中,上述vpn特定业务模型包括三层(layerthree,l3)业务模型(servicemodel,sm)。

可选地,在前述方面的任一方面中,上述一个或多个te特定参数是在流量工程网络的抽象和控制(abstractionandcontroloftrafficengineerednetwork,actn)虚拟网络(virtualnetwork,vn)另一下一代(yetanothernextgeneration,yang)模型中使用的参数。

可选地,在前述方面的任一方面中,上述一个或多个te特定参数是在te隧道模型中使用的参数。

可选地,在前述方面的任一方面中,上述处理器还用于将上述vpn业务映射到指示该vpn业务是否允许te隧道共享的业务映射策略,并且上述cnc还包括发射器,该发射器用于向多域服务协调器(multi-domainservicecoordinator,mdsc)控制器发送上述业务映射策略。

可选地,在前述方面的任一方面中,上述cnc还包括耦合至上述处理器的发射器和接收器。该发射器用于向mdsc控制器发送上述vpn特定业务模型并且向该mdsc控制器发送上述一个或多个te特定参数。该接收器用于从mdsc控制器接收te隧道id。

根据本公开的另一方面,提供了一种cnc,该cnc包括处理器,该处理器用于导入vpn业务的vpn特定业务模型,并将该vpn特定业务模型映射到指示上述vpn业务是否允许te隧道共享的业务映射策略。该cnc还包括存储器,该存储器耦合至处理器并用于根据上述业务映射策略存储上述vpn业务的vpnid和为上述vpn业务建立的te隧道的隧道id之间的映射。

可选地,在前述方面的任一方面中,上述cnc还包括耦合至上述处理器的发射器和接收器。该发射器用于向mdsc控制器发送上述业务映射策略。该接收器用于从mdsc控制器接收te隧道id。

可选地,在前述方面的任一方面中,上述vpn特定业务模型是l3sm。

可选地,在前述方面的任一方面中,上述业务映射策略是从包括如下模式的多个模式中选择的:第一模式,需要不与任何现有vpn业务共享的新te隧道;第二模式,允许使用与现有vpn业务共享的现有te隧道,并且不允许修改该现有te隧道;第三模式,允许使用与现有vpn业务共享的现有隧道,并且允许修改该现有te隧道。

根据本公开的另一方面,一种中央控制器包括接收器和耦合至该接收器的处理器。该接收器用于接收指定vpn业务的一个或多个属性的vpn特定业务模型。该处理器用于获得该vpn特定业务模型和与该一个或多个属性对应的一个或多个te特定参数之间的映射,使用该映射确定满足该一个或多个te特定参数的te隧道,以及将上述vpn业务映射到该te隧道。

可选地,在前述方面的任一方面中,上述一个或多个te特定参数与actnvnyang模型相关联。

可选地,在前述方面的任一方面中,上述映射还指示上述vpn业务的业务映射模型,其中,该业务映射模型指示是否允许与现有vpn业务共享上述te隧道,并且其中,上述处理器还用于根据该业务映射策略建立所述te隧道。

可选地,在前述方面的任一方面中,上述中央控制器还包括耦合至上述处理器的发射器,其中,该处理器用于经由上述接收器和发射器与一个或多个包配置网络控制器(provisioningnetworkcontroller,pnc)和一个或多个传输pnc交互,以在ip/mpls网络中创建映射到传输网络中的上述te隧道的服务提供商边缘设备(provideredge,pe)-pe隧道。

可选地,在前述方面的任一方面中,上述处理器用于使上述发射器向一个或多个ip控制器和一个或多个传输网络控制器发送层间接入点和隧道需求。

可选地,在前述方面的任一方面中,上述处理器用于使上述发射器向一个或多个ip控制器发送基于上述vpn特定业务模型的te模型,其中,该te模型指定上述一个或多个te特定参数。

可选地,在前述方面的任一方面中,上述中央控制器还包括存储器,该存储器耦合至上述处理器并用于在数据结构中存储te隧道id和上述vpn业务的id之间的关系。

根据本公开的另一方面,一种中央控制器包括接收器和耦合至该接收器的处理器。该接收器用于接收vpn业务的vpn特定业务模型和该vpn业务的业务映射策略,其中,该业务映射策略指示该vpn业务是否允许te隧道共享。该处理器用于根据上述业务映射策略确定用于该vpn业务的te隧道,并用于将该vpn业务映射到该te隧道。

可选地,在前述方面的任一方面中,上述业务映射策略是从多个模式中选择的,该多个模式包括第一模式、第二模式、和第三模式,第一模式需要不与任何现有vpn业务共享的新te隧道,第二模式允许使用与现有vpn业务共享的现有te隧道,并且不允许修改该现有te隧道,第三模式允许使用与现有vpn业务共享的现有隧道,并且允许修改该现有te隧道。

可选地,在前述方面的任一方面中,上述vpn特定业务模型是l3sm。

可选地,在前述方面的任一方面中,上述vpn特定业务模型指定上述vpn业务的属性,其中,上述业务映射策略指示上述vpn业务是否允许te隧道共享,并且其中,上述处理器还用于查找te隧道分配以确定是否有任何已建立的te隧道允许共享并满足上述属性。

可选地,在前述方面的任一方面中,上述中央控制器还包括发射器,并且其中,响应于确定没有已建立的te隧道允许共享并满足上述属性,上述处理器用于使用te隧道模型经由接收器和发射器与一个或多个pnc交互。

为了清楚起见,前述实施例中任何一个可以与前述其他实施例中的任何一个或多个组合以创建在本公开的范围内的新实施例。

通过以下结合附图和权利要求的详细描述,将更清楚地理解这些和其他特征。

附图说明

为了更完整地理解本公开,参考以下结合附图和具体实施方式的简要说明,其中,相同的附图标记表示相同的部分。

图1为根据本公开实施例的网络的示意图。

图2为根据本公开实施例的映射关系的图。

图3为网络中的网元(networkelement,ne)的实施例的图。

图4为示出对于具有不同业务策略和相应值的vpn业务的隧道分配的示例的表。

图5为示出在网络中创建te隧道的方法的实施例的协议图。

图6为示出在网络中创建隧道的方法的实施例的协议图。

图7为示出根据业务映射策略在网络中创建te隧道的方法的实施例的图,该业务映射策略包括表示cnc接收并存储的信息的数据模型。

图8为读写yang数据模型,该模型定义了如何在cnc或中央控制器处将vpn特定业务模型映射到业务映射策略和te隧道。

图9为只读yang数据模型,该模型定义了如何在cnc或中央控制器处将vpn特定业务模型映射到业务映射策略和te隧道。

图10为发起用于使用vpn特定业务模型请求的vpn业务的te隧道的建立的方法。

图11为根据业务映射策略发起te隧道的建立的方法。

图12为建立用于使用vpn特定业务模型请求的vpn业务的te隧道的方法。

图13为建立用于使用vpn特定业务模型请求的vpn业务的te隧道的方法。

具体实施方式

首先应该理解,尽管以下提供了一个或多个实施例的说明性实施方式,但是所公开的系统和/或方法可以使用任何数量的无论是当前已知的还是现有的技术来实施。本公开不应限于以下所示的说明性实施方式、附图、和技术,包括本文所示和所描述的示例性设计和实施方式,而是可以在所附权利要求的范围以及它们的等同物的全部范围内进行修改。

虚拟专用网(virtualprivatenetwork,vpn)的用户可能需要获得网络资源保证。然而,使用一层(layerone,l1)、二层(layer2,l2)、或三层(layer3,l3)vpn业务模型(servicemodel,sm)建立的vpn通常是仅基于尽力而为(besteffort)建立的,资源得不到保证。可以使用流量工程(trafficengineering,te)隧道模型来建立保证资源的te隧道。然而,当前vpn网络不具有将l1、l2、l3vpnsm(例如,在l1、l2、l3sm中表达的te约束)映射到流量工程网络的抽象和控制(abstractionandcontroloftrafficengineerednetworks,actn)虚拟网络(virtualnetwork,vn)模型或te隧道模型以建立te隧道的机制。本文公开了涉及将vpn特定业务模型映射到actnvnsm或te隧道模型以(例如,使用te隧道模型)建立te隧道的实施例。

图1为根据本公开实施例的网络100的示意图。在各实施例中,网络100可以实施软件定义网络(softwaredefinednetwork,sdn)、vpn、一层vpn业务模型(layer1vpnservicemodel,l1sm)、二层vpn业务模型(layer2vpnservicemodel,l2sm)、三层vpn业务模型(layer3vpnservicemodel,l3sm)、actn、te隧道模型、另一下一代(yetanothernextgeneration,yang)数据模型、表达性状态转移配置(representationalstatetransferconfiguration,restconf)协议、网络配置(networkconfiguration,netconf)协议、路径计算单元通信协议(pathcomputationelementcommunicationprotocol,pcep)、或以上的组合。l2sm可以根据标题为“ayangdatamodelforl2vpnservicedelivery”、第3版、2017年9月18日的互联网工程任务组(internetengineeringtaskforce,ietf)文件(本文称为l2sm文件)中描述的l2sm来实现,该文件全部内容以引入的方式并入本文。l3sm可以根据标题为“yangdatamodelforl3vpnservicedelivery”、第11版、2018年1月17日的ietf文件(本文称为l3sm文件)中描述的l3sm来实现,该文件全部内容以引入的方式并入本文。actn可以根据标题为“ayangdatamodelforactnvnoperation”、第7版、2017年10月23日的ietf文件(本文称为actnvnyang文件)所定义的一样实现,该文件全部内容以引入的方式并入本文。te隧道模型可以根据标题为“ayangdatamodelfortrafficengineeringtunnelsandinterfaces”、2016年10月26日的ietf文件(本文称为te隧道模型文件)所定义的一样实现,该文件全部内容以引入的方式并入本文。yang数据模型根据2010年10月发布的标题为“yang-adatamodelinglanguageforthenetworkconfigurationprotocol(netconf)”的ietf征求意见稿(requestforcomments,rfc)6020文件所定义的一样实现,该文件全部内容以引入的方式并入本文。netconf协议根据2011年7月的标题为“networkconfigurationprotocol(netconf)”的ietfrfc6241文件所定义的一样实现,该文件全部内容以引入的方式并入本文。restconf协议根据2017年1月的标题为“restconfprotocol”的ietfrfc8040文件所定义的一样实现,该文件全部内容以引入的方式并入本文。pcep根据2009年3月的标题为“pathcomputationelement(pce)communicationprotocol(pcep)”的ietfrfc5440文件所定义的一样实现,该文件全部内容以引入的方式并入本文。网络100的底层基础设施可以是任何类型的网络,例如有线网络或无线网络、光纤网络、或以上的组合。在实施例中,网络100采用多个域,例如一个或多个互联网协议(internetprotocol,ip)域以及一个或多个传输域(transportdomain)。

网络100包括用户网络边缘设备(customeredge,ce)103和108,节点104、105、106、107、109、110、111、和112,cnc130,以及中央控制器140。ce103和108是位于网络100外部的客户侧的网络设备。例如,ce103和108可以是路由器、桥、交换机、或主机。ce103和108可以发起或终止客户流量。

在一些实施例中,ce103和108可以专用于特定客户并且通过链路121分别连接到节点104和107。节点104、105、106、107、109、110、111、和112也通过链路124彼此连接。链路121和124可以包括用于在网络100中传输数据的诸如光纤链路、电链路、无线链路的物理链路以及逻辑链路。节点104、105、106、107、109、110、111、和112是用于执行多协议标签交换(multiprotocollabelswitching,mpls)信令以在网络100中建立标签交换路径(label-switchedpath,lsp)和隧道并且用于执行沿所建立的lsp和隧道的数据转发的任意设备或组件,例如,路由器和交换机。

接收来自ce的流量的节点称为入口服务提供商边缘设备(provideredge,pe)节点,向ce发送流量的节点称为出口pe节点。在一些实施例中,节点104和107为pe节点,并且可以分别称为入口pe节点104和出口pe节点107。例如,入口pe节点104可以是位于网络100边缘的引导去往ce103的流量和来自ce103的流量的pe节点104。类似地,出口pe节点107可以是位于网络100边缘的引导去往ce108的流量和来自ce108的流量的pe节点107。在一些实施例中,pe节点104和107可以连接到网络100外部的一个或多个节点。在一些实施例中,当网络100包括多个域(例如,ip域1、ip域2、和传输域3)时,网络100可以包括位于多个域的边界间的区域边界路由器(areaborderrouter,asbr)。例如,节点105、106可以是asbr。位于网络100的一个或多个域内部的节点109、110、111、和112称为内部节点。节点109、110、111、112中的每个节点在网络100的相应域内转发流量。尽管仅示出了网络100中的四个节点109、110、111、112,然而网络100可以包括任意数量的节点。

在一些实施例中,pe节点104和107由可以支持用于不同客户的多个vpn的服务提供商管理。服务提供商是负责运行网络100向顾客或客户提供vpn业务的组织。pe节点104和107可以位于存在的服务提供商点,并可以由该服务提供商管理。

cnc130是用于与ce103和108通信以及获取vpn信息的控制器设备。vpn信息包括对vpn业务的请求,vpn信息使用vpn特定sm179来表达。vpn特定sm179是据以表达对vpn业务的请求(例如,包括一个或多个属性的请求)的模型。vpn业务(例如,请求的vpn业务)的vpnsm179是或包括根据vpn特定sm179表达的对vpn业务的请求。例如,vpn特定sm179可以与l2sm文件中描述的l2sm对应,该l2sm文件的全部内容以引入的方式并入本文。当vpn特定sm179与l2sm对应时,vpn业务(例如,请求的vpn业务)的vpn特定sm179是或包括使用(例如,根据上述l2sm文件的)l2sm表达的vpn业务请求。又如,vpn特定sm179可以与l3sm文件中描述的l3sm对应,该l3sm文件的全部内容以引入的方式并入本文。当vpn特定sm179与l3sm对应时,vpn业务(例如,请求的vpn业务)的vpn特定sm179是或包括使用(例如,根据上述l3sm文件的)l3sm表达的vpn业务请求。作为示例,在一些实施例中,属性173包括服务质量(qualityofservice,qos)或带宽。

当网络100是多域网络时,如图1所示,则中央控制器140包括连接cnc130和与各个域1、2、3相关联的多个pnc131、133、133或域控制器的多域服务协调器(multi-domainservicecoordinator,mdsc)控制器141(例如,mdscsdn控制器)。mdsc控制器141或超控制器和pnc131、133、135或域控制器可以并置,或者,mdsc控制器141或超控制器和pnc131、133、135或域控制器可以分开放置。mdsc控制器141或超控制器用于协调ce103和108中的每一个处的由网络100执行的功能。作为示例,mdsc控制器141负责与ippnc(例如,pnc131和135,也称为包pnc)与传输pnc(例如,pnc133)协调在l3sm中表达的l3vpn业务请求。特别地,mdsc控制器141用于与ippnc和传输pnc协调以映射l3sm和actnvn/te隧道模型。

pnc131、133、135或域控制器配置网络100中的节点104、105、106、107、109、110、111、和112并监控网络100的物理拓扑。pnc131、133、135或域控制器可以用于将网络100的物理拓扑传送到mdsc控制器141或超控制器。ippnc(例如,pnc131和135)负责用于为vpn客户创建pe-pel3vpn隧道的设备配置,并负责在pe节点上配置l3vpnvpn路由和转发(vpnroutingandforwarding,vrf)。传输pnc(例如,pnc133)负责传输网络中te隧道的设备配置。虽然图1示出了多域网络,但是实施例可以用在单域网络中,在单域网络的情况下,中央控制器140不包括mdscsdn控制器。

网络100的mdsc控制器141或超控制器和pnc131、133、135或域控制器基于cnc130接收的客户的请求控制节点104、105、106、107、109、110、111、和112。cnc130通过cnc/mdsc接口(cnc/mdscinterface,cmi)157与mdsc控制器141或超控制器连接,并且mdsc控制器141通过南向接口与节点104、105、106、107、109、110、111、和112连接。应当理解,网络100中可以包括任何数量的cnc、mdsc、超控制器、pnc、和域控制器。

网络100用于提供用于承载从ce103到ce108的流量的te隧道。建立隧道的方法可以包括使用封装协议封装原始包并且将封装的包从入口pe节点104发送到出口pe节点107。出口pe节点107对封装的包进行解封装以去除由入口pe节点104封装到包上的包头,并将原始包转发到ce108。因此,隧道化的包如普通ip包一样在网络上传输,其中,外部ip源地址是入口pe节点104的地址,外部ip目的地地址是出口pe节点107的地址。隧道机制使用户或第三方能够通过互联网或者无需了解基础设施网络而建立专用网络。

vpn业务的客户可能希望具有保证vpn业务的某些业务约束(例如,te约束)。但是,当前的vpn网络无法建立满足在vpn特定业务模型中表达的所需网络特性的te隧道,因为当前vpn网络无法将vpn特定sm179中指定的属性转换或映射为可以由中央控制器140用以建立te隧道163的格式。

本文公开的实施例涉及为vpn业务建立满足使用vpn特定sm179表达的一个或多个属性173的te隧道163。上述一个或多个属性173可以与使用vpn特定sm179表达的te约束(例如,用于实例化te隧道的特性或属性)相对应。实施例使用te业务映射模型以将使用vpn特定sm179表达的该一个或多个属性173转换和/或映射到te隧道模型或中间模型(例如,actnvnyang模型)的一个或多个te特定参数175。te隧道模型中使用的参数(例如,如te隧道模型文件中所描述的)和/或actnvnyang模型中使用的参数(例如,如actnvnyang文件中所描述的)称为te特定参数。在一些实施例中,根据为vpn业务指定的业务映射策略额外地建立te隧道。

在实施例中,cnc130获取包括与客户请求的vpn业务相关联的一个或多个属性173的vpn特定sm179。cnc130还可以获取与该vpn业务相关联的业务映射策略182。cnc130向中央控制器140发送请求170,使中央控制器140建立用于vpn业务的te隧道。该请求170至少包括vpn特定sm179、一个或多个te特定参数175、以及业务映射策略182。

一个或多个te特定参数175映射到使用vpn特定sm179表达的vpn业务的一个或多个属性173。cnc130用于使用te业务映射模型(例如,图2或图7的te业务映射模型202)来确定一个或多个te特定参数175,以将使用vpn特定sm179表达的一个或多个属性173转换和/或映射到不同模型181的一个或多个te特定参数175,mdsc控制器141可以从该一个或多个te特定参数175生成te隧道。例如,上述不同模型181可以对应于如actnvnyang文件中所描述的actnvnyang模型。在该示例中,cnc130使用te业务映射模型将包括在vpn特定sm179内或使用vpn特定sm179表达的一个或多个属性173转换和/或映射到与actnvnyang模型相关联的一个或多个te特定参数175。又如,上述不同模型181可以对应于如te隧道模型文件中所描述的te隧道模型。虽然图1示出了上述请求170包括一个或多个te特定参数175,但是在其他示例中,请求170不包括一个或多个te特定参数175,并且mdsc控制器141确定该一个或多个te特定参数175。例如,cnc130可以发送包括vpn特定sm179的请求,mdsc控制器141可以使用te业务映射模型来将使用vpn特定sm179表达的一个或多个属性173转换和/或映射到如在te隧道模型文件中指定的te隧道模型中使用的一个或多个te特定参数175。

cnc130或mdsc控制器141可以通过在数据结构中(例如,经由vpn业务id)将一个或多个te特定参数175关联到vpn业务,将vpn特定sm179映射到一个或多个te特定参数175。因此,以这种方式,cnc130或mdsc控制器141可以将vpn特定sm179映射到一个或多个te特定参数175(例如,可以将vpn特定sm179映射到actnvnyang模型或te隧道模型)。cnc130或mdsc控制器141可以将一个或多个te特定参数175存储在cnc130或mdsc控制器141的存储器中。

业务映射策略182可以指定与te隧道隔离、te隧道共享、或te隧道特性修改相关联的一个或多个模式。例如,业务映射策略182可以指定需要完全te隧道隔离的第一模式。响应于业务映射策略182指定第一模式,mdsc控制器141可以用于生成新的te隧道。业务映射策略182(例如,第一模式)允许为因qos或其他原因需要其他vpn操作的网络切片的客户创建动态vn/te隧道。附加地或替代地,业务映射策略182可以指定允许使用现有te隧道的第二模式。在这些示例中,mdsc控制器141可以与pnc131、133、135交互以确定现有te隧道是否满足上述一个或多个te特定参数175。当现有te隧道满足上述一个或多个te特定参数时,mdsc控制器141可以将vpn业务分配给现有te隧道。当现有te隧道不满足上述一个或多个te特定参数175时,mdsc控制器141可以生成新te隧道。附加地或替代地,第二模式可以禁止修改te隧道特性。在这些示例中,业务映射策略182可以指定允许使用现有te隧道并允许修改特性的第三模式。

cnc130可以通过在数据结构中将业务映射策略182关联到vpn业务(例如,经由vpn业务id)来将vpn特定sm179映射到业务映射策略182。因此,以这种方式,cnc130可以将vpn业务的vpn特定sm179映射到vpn业务的业务映射策略182。

cnc130将包括vpn特定sm179、一个或多个te特定参数175(包括在请求170中)、和业务映射策略182的请求170发送到中央控制器140(例如,mdsc控制器141)。响应于接收到请求170,中央控制器140根据请求170中的业务映射策略182确定用于vpn业务的te隧道。

举例来说,当业务映射策略182不允许共享时,中央控制器140使用te隧道模型向pnc131、133、135发送te隧道建立请求192。te隧道建立请求192使用te隧道模型来指定用于实例化te隧道并且对应于一个或多个属性173的属性。在te业务映射模型将一个或多个属性173直接映射到te隧道模型的参数的示例中,中央控制器140使用一个或多个te特定参数175来实例化te隧道模型,而无需实例化actnvnyang模型。在te业务映射模型将一个或多个属性173映射到actnvnyang模型(例如,中间模型)的参数的示例中,mdsc控制器141将使用actnvnyang模型表达的一个或多个te特定参数175转换和映射到网络中心模型(例如,te隧道模型)。在这些示例中,mdsc控制器141随后根据te隧道模型生成te隧道建立请求192。中央控制器140和pnc131、133、135交互以确定满足使用te隧道模型表达的一个或多个te特定参数175的te隧道。中央控制器140将te隧道id190分配给所创建的隧道、更新状态(例如,表)以反映所创建的隧道、并将te隧道id190发送到cnc130。

当业务映射策略182允许te隧道共享时,mdsc控制器141确定是否可以使用现有te隧道。在一些示例中,mdsc控制器141通过搜索指示与每个现有te隧道相关联的属性和共享策略的隧道分配来确定是否可以使用现有te隧道。例如,mdsc控制器141可以存储如下参考图4更详细地描述的te隧道分配数据结构,并且mdsc控制器141可以访问和搜索满足上述属性和允许共享的现有te隧道的隧道分配。在其他示例中,mdsc控制器141向pnc控制器查询满足上述属性并允许共享的现有te隧道。当mdsc控制器141和/或pnc131、133、135确定现有te隧道满足上述属性173并允许共享时,mdsc控制器141更新隧道分配以反映vpn业务的vpnid171被映射到满足属性173并允许共享的te隧道163的te隧道id190。然后,mdsc控制器141将te隧道id190发送到cnc130。当mdsc控制器141确定没有现有te隧道满足一个或多个te特定参数175,但是业务映射策略182允许特性修改时,mdsc控制器141使用如上所述的一个或多个te特定参数175确定te隧道模型,并且与pnc131、133、135交互以确定现有te隧道是否可以被修改以满足一个或多个te特定参数175。当pnc131、133、135确定现有隧道可以被修改以满足一个或多个te特定参数175时,将现有隧道分配给vpn业务。当pnc131、133、135确定现有te隧道无法被修改以满足一个或多个te特定参数175时,mdsc控制器141使用te隧道模型与pnc131、133、135交互以创建用于vpn业务的新te隧道。当mdsc控制器141确定没有现有te隧道满足一个或多个te特定参数175并且不允许修改特性时,mdsc控制器141与pnc交互以如上所述创建新te隧道163。

在一些示例中,mdsc控制器141与ippnc(例如,pnc131和135)和传输pnc(例如,pnc133)交互以通过提供层间接入点和隧道需求(例如,一个或多个参数175)在ip/mpls网络中创建pe-pe隧道,该pe-pe隧道被映射到传输网络中的te隧道。特定业务信息被传递到ippnc以进行实际的vpn配置和激活。传输pnc创建与接入点和出口点匹配的相应te隧道163。ippnc将pe-pe隧道id与对应的te隧道id190映射以绑定这两个id。mdsc控制器141通知ippnc传输隧道标识符,以便ippnc为vpn客户创建或更新vrf实例(例如,使用传输隧道标识符来填充指向正确隧道标识符的vrf表)。因此,网络100可以自动地将vpn和vrf实例绑定到te隧道并提供vn和te隧道之间的自动业务映射,并且利用底层vn和te隧道的可见性帮助运营商控制和管理l2和l3业务。

图2为示出根据本公开实施例的映射关系的框图。te业务映射模型202用于经由通用actnvn模型204在vpn特定业务模型(例如,l3sm179a、l2sm179b、或l1sm179c)和te隧道模型206之间映射,和/或用于创建跨vpn特定业务模型和te隧道模型206的绑定关系。te业务映射模型202可以包括以下参考图5描述的数据模型703-705中的一个或多个。附加地或替代地,te业务映射模型202可以包括在本具体实施方式的末尾呈现的代码。actnvnyang模型204是通用虚拟网络业务模型,其允许内部或外部客户创建满足带各种约束的客户业务目标的vn。te业务映射模型202将vpn特定业务模型(例如,l3sm179a、l2sm179b、或l1sm179c)与te特定参数(例如,一个或多个te特定参数175)绑定。该绑定有助于具有底层te网络可见性的无缝业务操作。

图3为网络100中的ne300的实施例的图。例如,ne300可以是cnc130或中央控制器140。ne200可以用于实现和/或支持本文所描述的te业务映射机制。ne300可以在单个节点中实现,或者ne300的功能可以在多个节点中实现。本领域技术人员将认识到,术语ne包括广泛的装置,ne300仅是其中的示例。为了清楚起见,ne300被包括在内,但并不意在将本公开的应用限制于特定的ne实施例或ne类实施例。本公开中描述的特征和/或方法中的至少一些可以在诸如ne300的网络装置或模块中实现。例如,本公开中的特征和/或方法可以使用硬件、固件、和/或安装在硬件上运行的软件实现。如图3所示,ne300包括用于接收数据的一个或多个入口端口310和接收器单元(rx)320,用于处理数据的至少一个处理器、逻辑单元、或中央处理单元(centralprocessingunit,cpu)305,用于发送数据的发射器单元(tx)325和一个或多个出口端口330,以及用于存储数据的存储器350。

处理器305可以包括一个或多个多核处理器并且可以耦合至存储器350,存储器350可以用作数据存储、缓冲器等。处理器305可以实现为通用处理器,或者可以是一个或多个专用集成电路(applicationspecificintegratedcircuit,asic)和/或数字信号处理器(digitalsignalprocessor,dsp)的一部分。处理器305可以包括映射模块355,其可以执行cnc130或中央控制器140的处理功能,并且实现如下更全面地讨论的方法500、600、700、1000、1100、1200、和1300和/或本文讨论的任何其他方法。这样,包括映射模块355和相关联的方法和系统提供了对ne300的功能的改进。此外,映射模块355实现特定对象(例如,网络)到不同状态的转换。在可选实施例中,映射模块355可以实现为存储在存储器350中的指令,该指令可以由处理器305执行。

存储器350可以包括用于暂时存储内容的缓存,例如随机接入存储器(random-accessmemory,ram)。另外,存储器350可以包括用于相对长时地存储内容的长期存储器,例如,只读存储器(read-onlymemory,rom)。例如,缓存和长期存储器可以包括动态ram(dynamicram,dram)、固态驱动器(solid-statedrive,ssd)、硬盘、或以上的组合。存储器350可以用于存储路由数据库。在实施例中,存储器350可以包括一个或多个te特定参数175、业务映射策略182、和te隧道映射365。te隧道映射365可以包括与为vpn业务创建的te隧道163对应的te隧道id190。虽然图3将隧道映射365示为与一个或多个te特定参数175和业务映射策略182分离的块,但是可以使用与一个或多个te特定参数175和业务映射策略182相同的数据模型(如以下参考图5-7更详细描述的以及在本具体实施方式末尾列出的计算机程序清单中的数据模型)来存储te隧道映射365。

当ne300是cnc130时,rx320接收包括vpn特定sm179的vpn信息,该vpn特定sm179包括vpn业务的属性173。例如,rx320可以接收包括一个或多个属性173的l1sm、l2sm、或l3sm。rx320还可以接收业务映射策略182。映射模块355用于通过调用如以上参考图1所述的te业务映射模型来生成一个或多个te特定参数175。例如,映射模块355可以使用te业务映射模型来映射vpn特定sm179,以将在vpn特定sm179中表达的属性173表达为mdsc控制器141可以从中生成te隧道163的不同模型181的格式。例如,映射模块355可以用于将vpn特定sm179映射到actnvnyang模型。附加地或替代地,映射模块355可以用于确定和/或存储vpn业务的业务映射策略182。处理器305生成包括vpn特定sm179、一个或多个te特定参数175、和业务映射策略182的请求170,然后tx325将请求170发送到中央控制器140。rx320从中央控制器140接收指示是否建立了满足一个或多个te特定参数175的te隧道163的消息。rx320可以从中央控制器140接收te隧道id190,或者处理器305可以生成te隧道id190。te隧道id190可以存储在存储器350的te隧道映射365中。

当ne300是中央控制器140时,rx320从cnc130接收请求170。请求170包括vpn特定sm179、一个或多个te特定参数175、和业务映射模块182。由处理器305执行的映射模块355用于从请求170的业务映射策略182中确定vpn业务的业务映射策略182。

当业务映射策略182需要隔离时,映射模块355使用vpn特定模型179和一个或多个te特定参数175确定指定一个或多个属性173的te隧道模型。在一些实施例中,映射模块355使用诸如actnvnyang模型的中间模型来确定te隧道模型。在这些实施例中,映射模块355使用vpn特定sm179和一个或多个te特定参数175确定actnvnyang模型,并且生成基于actnvnyang模型的te隧道模型。ne300计算满足请求170中的一个或多个te特定参数175的te隧道163,或经由tx325与pnc交互以计算te隧道163。tx325将关于计算的te隧道163的信息发送到入口pe节点104。

当请求170中的业务映射策略182指示允许共享时,映射模块355确定现有te隧道是否满足一个或多个te特定参数175并允许共享,或经由tx325与pnc(例如,131、133、135)交互以确定现有te隧道是否满足一个或多个te特定参数175并允许共享。当现有te隧道满足一个或多个te特定参数175并允许共享时,映射模块355将现有隧道分配给vpn业务。当没有现有te隧道满足一个或多个te特定参数175并允许共享时,映射模块355使用vpn特定sm179和一个或多个te特定参数175以确定表示该一个或多个te特定参数175的te隧道模型。tx325还可以向cnc130发送指示te隧道163是否已成功建立的消息。在一些实施例中,一个或多个te特定参数175可以存储在中央控制器140的存储器350中。te隧道id190还可以存储在中央控制器140的存储器350的te隧道映射365中。

应当理解,通过将可执行指令编程和/或加载到ne300上,处理器305和/或存储器350中的至少一个被改变,将ne300部分地转换为具有本公开所教导的新型功能的特定机器或装置,例如,多核转发架构。能通过将可执行软件加载到计算机中来实现的功能可以通过众所周知的设计规则转换为硬件实现,这对于电气工程和软件工程领域来说是基础的。在软件还是在硬件中实现概念的决策通常取决于设计的稳定性和要生产的单元数量考虑,而不是从软件域转换到硬件域所涉及的任何问题。通常,要频繁改变的设计可以优选在软件中实现,因为重新编写硬件实现比重新编写软件设计更昂贵。通常,将会大量生产的稳定设计可以优选在硬件中实现,例如在asic中实现,因为对于大规模生产运行,硬件实现可能比软件实现更低价。通常,设计可以以软件形式开发和测试,然后通过众所周知的设计规则转换为将软件的指令硬连线的asic中的等效硬件实现。与机器由特定机器或设备中的新asic控制一样,编程和/或加载有可执行指令的计算机也可被视为特定机器或装置。

图4为示出隧道分配的示例的表400。在实施例中,表400存储网络100的隧道信息。在实施例中,表400可以存储在cnc130和/或中央控制器140。例如,表400中的信息可以存储在cnc130和/或中央控制器140的存储器350中。表400包括与te隧道id402列中的相应隧道对应的条目450a-c。

表400包括vpnid列401、te隧道id列402、参数列403、和业务映射策略列404。参数列403包括关于为vpn业务或te隧道指定的各种te特定参数的子列405和406。如图4所示,表400包括两种示例的te特定参数175,其包括时延等级和路径保护等级。子列405定义时延等级te特定参数175的值,子列406定义路径保护等级te特定参数175的值。虽然图4中仅示出了两种te特定参数175,但是vpn业务可以定义对应于与执行该vpn业务的网络需求te特定参数175或与te隧道相关联的的任意不同类型的属性。例如,一个或多个te特定参数175可以包括带宽规范,其可以定义te隧道163的最小带宽、最大带宽、和/或允许带宽范围的值。一个或多个te特定的参数175可以包括吞吐量规范,其可以定义网络100的te隧道163中的吞吐量的值。一个或多个te特定参数175中的另一个可以指示在隧道故障时如何重新路由te隧道163。例如,一个或多个te特定参数175中的一个可以指示将te隧道163的重新路由委托给网络而不通知cnc130。一个或多个te特定参数175还可以包括指示通知cnc130隧道故障、以便cnc130在隧道故障之后实例化新的te隧道163的参数。应理解,一个或多个te特定参数175还可以包括其他属性的值,例如抖动、错误率、延迟、比特率、和/或其他类型的网络性能要求测量。业务映射策略列404可以指示te隧道163是否物理隔离或是否给定单独的波长。

如图4所示,条目450a-450c示出了如何为vpn业务分配或创建te隧道163的示例。条目450a对应于vpnid为“a”的第一vpn业务。第一vpn业务的一个或多个te特定参数175可以指定为该第一vpn业务创建的te隧道163的时延等级可以小于50毫秒(ms)。该一个或多个te特定参数175可以指定应该启用路径保护(“1+1”)使得te隧道163可以在故障时重建。第一vpn业务的业务映射策略182指示允许te隧道的共享。为第一vpn业务建立的te隧道163可以由te隧道id190“d”标识。

条目450b对应于vpnid为“b”的第二vpn业务。第二vpn业务的一个或多个te特定参数175可以指定为该第二vpn业务创建的te隧道163的时延等级可以小于50毫秒(ms)。第二vpn业务的一个或多个te特定参数175还可以指定可以不启用路径保护(1:0),并且te隧道163可以在可能的故障时修复。第二vpn业务的业务映射策略182指示允许te隧道的共享。为第二vpn业务建立的te隧道163可以由te隧道id190“e”标识。

条目450c对应于vpnid为“c”的第三vpn业务。第三vpn业务的一个或多个te特定参数175可以指定当为第三vpn业务确定隧道时,不应考虑为第三vpn业务创建的te隧道163的时延等级。第三vpn业务的一个或多个te特定参数175可以指定启用路径保护。第三vpn业务的业务映射策略182指示不允许te隧道的共享。为第三vpn业务建立的te隧道163可以由te隧道id190“f”标识。

在这个示例中,当cnc130接收对第四vpn业务的l3sm请求(指定时延等级<50ms且路径保护1+1)时,并当映射到第四vpn业务的业务映射策略182指示允许隧道共享时,mdsc可以搜索隧道分配寻找满足上述时延等级和路径保护的现有te隧道。mdsc可以确定第一vpn业务的te隧道满足该时延等级和路径保护并允许共享。响应于确定第一vpn业务的te隧道满足第四vpn业务的时延和路径保护要求,并且第一vpn业务的业务映射策略182允许共享,mdsc可以将第四vpn业务分配到te隧道id190为“d”的te隧道。

虽然仅示出了三个条目450a-c,但应当理解,表400中可以包括与网络100中不同vpn业务对应的任意数量的条目。虽然每个条目450a-c仅示出与vpn业务相关联的两个te特定参数175,但是应当理解,任何数量的te特定参数175可以与vpn业务相关联。虽然图4中以表格的形式示出了vpnid171、te隧道id190、te特定参数175、和业务映射策略182的映射,但应当理解,表400是存储在cnc130和/或中央控制器140处的信息的抽象。这样,vpnid172、te隧道id190、te特定参数175、和业务映射策略182的映射可以以其他方式存储在任何其他数据结构中或以分布式方式存储。

图5为根据本公开实施例的l3vpn/vn/隧道配置的工作流500的图。在步骤505,cnc130向mdsc控制器141发送携带actnvnyang模型的消息。在步骤510,mdsc控制器141向pnc133发送用于使用隧道模型(例如,te隧道模型)创建隧道的消息。在步骤515,pnc133向mdsc控制器141发送包括配置信息(例如,诸如隧道id)的消息,并且mdsc控制器141更新te隧道模型。在步骤520,mdsc控制器141向pnc131发送用于使用隧道模型(例如,te隧道模型)创建隧道的消息。在步骤525,mdsc控制器141向pnc135发送用于使用隧道模型(例如,te隧道模型)创建隧道的消息。在步骤530,pnc131向mdsc控制器141发送包括配置信息(例如,诸如隧道id)的消息,并且mdsc控制器141更新te隧道模型。在步骤535,pnc135向mdsc控制器141发送包括配置信息(例如,诸如隧道id)的消息,并且mdsc控制器141更新te隧道模型。在步骤540,mdsc控制器141向cnc130发送包括配置信息的消息,并且cnc130更新actnvnyang模型。在步骤545,cnc130向mdsc控制器141发送包括vpn业务的l3sm和te业务映射模型(诸如图2中的te业务映射模型202)的消息。在步骤550,mdsc控制器141向pnc131发送用于使用隧道模型(例如,te隧道模型)创建隧道的消息。在步骤555,mdsc控制器141向pnc135发送用于使用隧道模型(例如,te隧道模型)创建隧道的消息。在步骤560,pnc131向mdsc控制器141发送包括配置信息(例如,诸如te隧道id190)的消息,并且mdsc控制器141用该配置信息更新te业务映射模型。在步骤565,pnc135向mdsc控制器141发送包括配置信息(例如,诸如te隧道id190)的消息,并且mdsc控制器141用该配置信息更新te业务映射模型。在步骤570,mdsc控制器141向cnc130发送包括配置信息(例如,诸如te隧道id109)的消息,并且mdsc控制器141用该配置信息更新te业务映射模型。

图6为示出根据使用vpn特定sm179表达的一个或多个属性173和根据业务映射策略182在网络100中建立te隧道的方法600的实施例的协议图。方法600通过cnc130、中央控制器140、不同ip域1和2的pnc131和pnc135、以及传输域3的pnc133来实现。在步骤605,cnc130接收具有使用vpn特定sm179表达的属性173的vpn业务请求,并接收业务映射策略182。在步骤610,cnc130如以上参考图1和图2所述确定一个或多个te特定参数175。例如,vpn特定sm179可以对应于l3sm,并且可以指示vpn业务的属性173。在步骤610,cnc130使用te业务映射模型202来确定与使用l3sm表达的属性173对应的(例如,不同模型181的)一个或多个te特定参数175。例如,该不同模型181可以是actnvnyang模型。cnc130还使用te业务映射模型来确定业务映射策略182。

在步骤615,可以将请求170发送到中央控制器140。例如,cnc130的tx225将请求170发送到中央控制器140。请求170可以在客户或网络100的运营商指定的各个时刻生成。例如,请求170可以在启动vpn业务时或在由隧道管理调度表指定的某些预定义时刻生成。请求170包括vpn特定sm179、一个或多个te特定参数175、以及业务映射策略182。请求170可以是请求中央控制器140根据业务映射策略182建立满足使用vpn特定sm179指定的属性173的te隧道163。

在步骤620,中央控制器140确定业务映射策略182是否允许共享。当业务映射策略182允许共享时,该流程从步骤620转到步骤625。在步骤625,mdsc控制器141搜索隧道分配以确定现有te隧道是否满足上述属性173并允许共享。例如,mdsc控制器141可以搜索图4的表400中的隧道分配。当现有te隧道满足上述属性173并允许共享时,该流程从步骤625转到步骤640,其中,mdsc控制器141更新隧道分配以反映vpn业务被分配到满足上述属性173并允许共享的te隧道。

当业务映射策略182不允许共享或者当步骤625未确定可以使用的现有te隧道时,该流程从步骤620或步骤625转到步骤630,其中,mdsc控制器141使用te业务映射模型202以基于vpn特定sm179和一个或多个te特定参数175确定te隧道模型。在一些示例中,mdsc控制器141使用te业务映射模型202将vpn特定sm179转换或映射到actnvnyang模型,使得actnvnyang模型以一种使得mdsc控制器141能够使用te隧道模型生成te隧道请求192的格式(例如,经由一个或多个te特定参数175)来表达(在vpn特定sm179中表达的)一个或多个属性173。在这些示例中,te业务映射模型202采用vpn特定sm179和te隧道模型之间的中间业务模型。在其他示例中,不使用中间业务模型。在这些示例中,mdsc控制器141用于直接在vpn特定sm179和te隧道模型之间进行转换或映射。然后,该流程转到步骤635,其中,mdsc控制器141使用te隧道模型并根据业务映射策略182与pnc131、133、135交互。例如,当业务映射策略182不允许共享时,mdsc控制器141使用te隧道模型与pnc131、133、135交互,以创建满足一个或多个te特定参数的新te隧道163。当业务映射策略182允许修改时,mdsc控制器141与pnc131、133、135交互,以确定现有隧道是否可以被修改以满足一个或多个te特定参数175。当现有隧道可以被修改时,那么mdsc控制器141修改并选择该te隧道。否则,mdsc控制器141使用te隧道模型与pnc131、133、135交互,以创建满足一个或多个te特定参数175的新隧道。一旦创建了新te隧道163或修改了现有隧道,该流程从步骤635转到步骤640,其中,mdsc控制器141更新隧道分配以反映vpn业务被分配到新创建或修改的te隧道。

在步骤645,中央控制器140将指示是否已成功建立满足由vpnid171指定的vpn业务的te约束的te隧道163的消息发回cnc130。例如,mdsc控制器141的tx325将消息发送回cnc130。例如,发回cnc130的消息可以是应答(acknowledge,ack)或否定应答(negativeack,nack)消息。在实施例中,中央控制器140生成与新创建的te隧道163对应的te隧道id190,并在该消息中将te隧道id190发送回cnc130。在实施例中,在步骤650,中央控制器140以类似于cnc130存储vpn业务的vpn信息的方式存储vpn业务的vpn信息。在实施例中,中央控制器140可以将存储的vpn业务的vpn信息更新为包括新创建的te隧道163的te隧道id190。

图7为示出使用te业务映射模型(例如,图2的te业务映射模型202)在网络100中创建te隧道163的方法700的实施例的图。方法700包括表示cnc130接收并存储的信息的数据模型703-705。

在步骤701,cnc130运行te业务映射模型202,并导入以用于携带vpn信息的数据模型703的形式的vpn信息。数据模型703是符合如l3sm文件中描述的l3sm中提出的数据建模语言的数据模型。在实施例中,用于携带vpn信息的数据模型703定义与该vpn关联的vpnid171和一个或多个属性173。用于携带vpn信息的数据模型703还可以包括与客户关联的vpn的vpnid171、接入点id、和/或可以由ce103和108发送的其他信息。

在实施例中,在步骤701中描述的vpn信息存储在图3的存储器350中。在一些实施例中,cnc130以数据模型704的形式存储业务映射策略182。用于存储业务映射策略182的数据模型704可以包括映射id、vpn的参考编号、和/或标识和描述vpn业务和业务映射策略182的其他信息。

在步骤702,cnc130使用te业务映射模型202确定一个或多个te特定参数175。例如,cnc130使用te业务映射模型202确定与使用vpn特定sm179表达的属性173对应的一个或多个te特定参数175。cnc130可以根据actnvnyang模型存储一个或多个te特定参数175。cnc130可以存储一个或多个te特定参数175,使得例如通过将一个或多个te特定参数175关联到vpn业务的vpnid171,将一个或多个te特定参数175映射到vpn特定sm179。

在步骤706,cnc130将请求170发送到mdsc控制器141。请求170包括vpn特定sm179(例如,l3sm)、一个或多个te特定参数175、以及业务映射策略182。mdsc控制器141根据请求170中的业务映射策略182确定vpn业务的业务映射策略182。

当业务映射策略182指示允许隧道共享时,mdsc控制器141确定现有te隧道是否满足actnvnyang模型中的一个或多个te特定参数175。例如,mdsc控制器141可以访问te隧道配置,以如上参考图1-图6所述确定现有te隧道是否满足一个或多个te特定参数175并允许共享。当mdsc控制器141确定现有te隧道满足一个或多个te特定参数175并允许共享时,mdsc控制器141确定对vpn业务使用该现有te隧道。在步骤707,mdsc控制器141与pnc131、133、135通信,以将vpn业务的vpnid171与te隧道163相关联(例如,通过te隧道id190)并更新状态。

当不允许te隧道共享时,或者当mdsc控制器141确定没有现有te隧道满足一个或多个te特定参数175并允许共享、并且以及业务映射策略182不允许修改时,mdsc控制器141将使用actnvnyang模型表达的一个或多个te特定参数175转换并映射到网络中心模型(例如,te隧道模型)。然后,在步骤707,mdsc控制器141与pnc131、133、135交互,以创建满足一个或多个te特定参数175(因此满足属性173)的te隧道163。

当mdsc控制器141确定没有现有te隧道满足一个或多个te特定参数175、但是至少一个现有隧道允许共享并且业务映射策略182允许修改时,mdsc控制器141将使用actnvnyang模型表达的一个或多个te特定参数175转换并映射到网络中心模型(例如,te隧道模型)。然后,在步骤707,mdsc控制器141与pnc131、133、135交互,以确定现有te隧道是否可以被修改以满足一个或多个te特定参数175。如果现有te隧道不能被修改为满足一个或多个te特定参数175,mdsc控制器141与pnc131、133、135交互以创建满足一个或多个te特定参数175(因此满足属性173)的te隧道163。

在步骤708,在响应于请求170建立te隧道163(例如,分配未修改的现有te隧道、分配修改的现有te隧道、或创建新的te隧道)之后,mdsc控制器141向cnc130发送指示te隧道163是否已成功建立的消息。该消息可以类似于图6的步骤645中描述的消息。在实施例中,中央控制器140在消息中发送唯一地标识为请求170建立的te隧道163的te隧道id190。在实施例中,cnc130在接收到消息之后确定te隧道id190。cnc130在隧道映射365中将te隧道id190与vpn业务的vpnid171、一个或多个te特定参数175、以及业务映射策略182相关地存储。在一些实施例中,cnc130以数据模型705的形式存储te隧道id190。用于存储te隧道id190的数据模型705可以包括te隧道id190、标识业务映射策略182的业务映射类型、vpn的参考编号、和/或标识te隧道163并将其与vpn业务相关的其他信息。

图8为读写yang数据树800,其定义如何在cnc130或中央控制器140处将vpn特定sm179映射到actnvn或te隧道模型。读写yang数据树800符合在yangdatamodeldoc中提出的数据建模语言。在实施例中,可以使用读写yang数据树800来存储一个或多个te特定参数175、业务映射策略182、和/或te隧道映射365。在这样的实施例中,利用如图7中的数据模型704所示的“映射类型(map-type)”指示的业务映射策略182,每个需要te底层隧道的vpn业务被映射到相应的te隧道163。对于每个vpn,“业务映射(service-mapping)”映射映射类型策略、所描述的vpn特定sm179、以及映射到vpn的te隧道id或vnid。“te”指的是te隧道yang模型,一旦te隧道163被实例化,该te隧道yang模型就提供te隧道id190。附加地或替代地,vpn业务的每个站点被映射到相应的te隧道(例如,如“站点映射(site-mapping)”所指示的te隧道)。用户能够配置/编程映射类型(例如,业务映射策略)。

图9是只读yang数据树900,其定义在cnc130或中央控制器140处如何将actnvn或te隧道映射到l1sm、l2sm、或l3sm业务模型。只读yang数据树900符合在yangdatamodeldoc中提出的数据建模语言。在实施例中,可以使用只读yang数据树900来存储一个或多个te特定参数175、业务映射策略182、和/或te隧道映射365。在这样的实施例中,用户可以访问在读写yang数据树800中描述的yang数据模型的运行状态(只读)。

图10为发起用于使用vpn特定业务模型请求的vpn业务的te隧道163的建立的方法1000。方法1000可以在cnc130从ce103和/或108接收vpn信息时执行。在实施例中,方法1000可以由cnc130执行。方法1000包括在步骤1002导入vpn特定sm。例如,vpn特定业务模型可以对应于以上参考图1描述的vpn特定sm179。举例来说,vpn特定sm可以对应于l1sm、l2sm、或l3sm。可以使用如参考图7的步骤701描述的te业务映射模型202来导入vpn特定sm。

方法1000包括在步骤1004将vpn特定sm179映射到一个或多个te特定参数。例如,vpn特定sm179可以使用语言、名称、参数、范围、或其组合来定义vpn特定sm179的vpn业务的一个或多个属性(例如,诸如属性173)。cnc130可以使用te业务映射模型202将使用vpn特定sm179表达的属性173转换和/或映射到te特定参数(例如,以上参考图1-图9描述的一个或多个te特定参数175)。一个或多个te特定参数175是与vpn特定sm179不同的模型181所使用的参数。例如,一个或多个te特定参数175可以与actnvnyang模型用以定义一个或多个属性173的参数对应。替代地或另外地,一个或多个te特定参数175可以与te隧道模型用以定义一个或多个属性173的参数对应。cnc130可以通过在数据结构中将一个或多个te特定参数175与vpn业务(例如,通过vpn业务id)相关联,将vpn特定sm179映射到一个或多个te特定参数175。因此,以这种方式,方法1000将vpn特定业务模型映射到面向te的模型(例如,映射到te特定参数)。

方法1000包括在步骤1006由cnc130的存储器存储vpn业务的vpnid171与为vpn业务建立的te隧道163的te隧道id190之间的映射。te隧道163满足一个或多个te特定参数175。在实施例中,vpn业务的vpnid171和te隧道id190可以以图7的数据模型705的形式存储。

在一些示例中,方法1000还包括将vpn特定sm179发送到mdsc控制器141,将一个或多个te特定参数175发送到mdsc控制器141,以及从mdsc控制器141接收te隧道id190。例如,图3的tx325可以将vpn特定sm179和一个或多个te特定参数175发送到mdsc控制器141,图3的rx320可以从mdsc控制器141接收te隧道id190。

在一些示例中,方法1000还包括将vpn业务映射到指示vpn业务是否允许te隧道共享的业务映射策略182。在一些示例中,图3的映射模块355使用如图8和图9以及本具体实施方式最后给出的计算机程序清单所示的te业务映射模型202将业务映射策略182映射到vpn业务。在一些示例中,方法1000额外地包括将业务映射策略182发送到mdsc控制器141。例如,图3的tx325将业务映射策略182发送到mdsc控制器141。

图11为根据业务映射策略182发起te隧道163的建立的方法1100。方法1100可以由图1的cnc130或图2的ne200执行。方法1100包括在步骤1102导入vpn业务的vpn特定sm179。vpn特定sm179可以对应于l1sm、l2sm、或l3sm。可以使用如参考图7的步骤701描述的te业务映射模型202来导入vpn特定sm。

方法1100包括在步骤1104将vpn特定sm179映射到指示vpn业务是否允许te隧道共享的业务映射策略182。例如,业务映射策略182可以指示以上参考图1描述的不同模式。举例来说,业务映射策略182可以从以下多个模式中选择,包括需要不与任何现有vpn业务共享的新te隧道的第一模式、允许使用与现有vpn业务共享的现有te隧道并且不允许修改现有te隧道的第二模式、以及允许使用与现有vpn业务共享的现有隧道并允许修改现有te隧道的第三模式。cnc130可以使用te业务映射模型202以将业务映射策略182映射到vpn业务。举例来说,te业务映射模型202可以使用图7的数据模型704确定vpn业务的业务映射策略182,并且可以使用图8的数据树800将vpn业务映射到业务映射策略182。

方法1100包括在步骤1106由cnc130的存储器存储vpn业务的vpnid171与为vpn业务建立的te隧道163的te隧道id190之间的映射。在实施例中,vpn业务的vpnid171和te隧道id190可以以图7的数据模型705的形式存储。

在一些示例中,方法1100还包括将业务映射策略182发送到mdsc控制器141,以及从mdsc控制器141接收te隧道id190。例如,图3的tx325包括可以将业务映射策略182发送到mdsc控制器141,图3的rx320可以从mdsc控制器141接收te隧道id190。

图12为建立用于使用vpn特定sm179请求的vpn业务的te隧道163的方法1200。方法1200可以在中央控制器140从cnc130接收vpn请求、vn创建请求、或一些其他通信时执行。在实施例中,方法1200可以由中央控制器140执行。例如,方法1200可以由mdsc控制器141、超级控制器、pnc、和/或域控制器执行。方法1200包括在步骤1202接收指定vpn业务的一个或多个属性173的vpn特定sm179。例如,vpn特定sm179可以对应于l1sm、l2sm、或l3sm。例如,图3的rx320可以从cnc130接收vpn特定sm179。

方法1200还包括在步骤1204获得vpn特定sm179和与一个或多个属性173对应的一个或多个te特定参数175之间的映射。te特定参数175是与vpn特定sm179不同的模型181所使用的参数。例如,te特定参数175可以与actnvnyang模型用以定义一个或多个属性173的参数对应。替代地或另外地,te特定参数1754与te隧道模型用以定义一个或多个属性173的参数对应。在一些示例中,mdsc控制器141从cnc130获得映射。在其他示例中,mdsc控制器141通过使用te业务映射模型202确定映射来获得映射。映射通过在数据结构中将一个或多个te特定参数175与vpn业务(例如,通过vpnid171)相关联,将vpn特定sm179映射到一个或多个te特定参数175。因此,以这种方式,mdsc控制器141获得vpn特定sm179和面向te的模型(例如,一个或多个te特定参数175)之间的映射。

方法1200还包括在步骤1206使用上述映射确定满足一个或多个te特定参数175的te隧道。该步骤可以包括如上参考图1-图9所述的搜索隧道分配、基于te特定参数175确定te隧道模型(例如,从包括te特定参数175的actnvnyang模型确定te隧道模型)、与pnc交互(例如,使用te隧道模型)、或以上的组合。

方法1200还包括在步骤1208将vpn业务映射到te隧道163。例如,mdsc控制器141可以存储te隧道163的te隧道id190与vpn业务的vpnid171之间的映射。例如,te隧道163的te隧道id190与vpn业务的vpnid171之间的映射可以存储在图3的te隧道映射365中。

图13为建立用于使用vpn特定sm179请求的vpn业务的te隧道163的方法1300。方法1300可以在中央控制器140从cnc130接收vpn请求、vn创建请求、或一些其他通信时执行。在实施例中,方法1300可以由中央控制器140执行。例如,方法1300可以由mdsc控制器141、超级控制器、pnc、和/或域控制器执行。方法1300包括在步骤1302接收指定vpn业务的一个或多个属性173的vpn特定sm179。例如,vpn特定sm179可以对应于l1sm、l2sm、或l3sm。例如,rx320从cnc130接收vpn特定sm179。

方法1300还包括在步骤1304获得vpn特定sm179和业务映射策略182之间的映射。业务映射策略182可以对应于以上参考图1-图9描述的业务映射策略182。映射通过在数据结构中将业务映射策略182与vpn业务(例如,通过vpn业务id)相关联,将vpn特定sm179映射到业务映射策略182。作为示例,cnc130或mdsc控制器141可以使用图7的数据模型704将vpn特定sm179映射到业务映射策略182。因此,以这种方式,mdsc控制器141获得vpn特定sm179和业务映射策略182之间的映射。

方法1300还包括在步骤1306根据业务映射策略182确定用于vpn业务的te隧道163。该步骤可以包括如上参考图1-图9所述的搜索隧道分配、基于一个或多个te特定参数175确定te隧道模型(例如,从包括te特定参数175的actnvnyang模型确定te隧道模型)、与pnc交互(例如,使用te隧道模型)、或其组合。

方法1300还包括在步骤1308将vpn业务映射到te隧道163。例如,mdsc控制器141可以存储te隧道163的te隧道id190与vpn业务的vpnid171之间的映射。例如,te隧道163的te隧道id190与vpn业务的vpnid171之间的映射可以存储在图3的te隧道映射365中。

一种cnc装置,包括处理器件,该处理器件用于导入vpn业务的vpn特定业务模型并将该vpn特定业务模型映射到一个或多个te特定参数。该cnc装置还包括存储信息的器件,该存储信息的器件耦合至处理器并用于存储vpn业务的vpnid和为vpn业务建立的te隧道的隧道id之间的映射,其中,te隧道满足上述一个或多个te特定参数。

一种cnc装置,包括处理器件,该处理器件用于导入vpn业务的vpn特定业务模型,并将该vpn特定业务模型映射到指示vpn业务是否允许te隧道共享的业务映射策略。该cnc装置还包括存储信息的器件,该存储信息的器件耦合至上述处理器件并用于根据上述业务映射策略存储vpn业务的vpnid和为vpn业务建立的te隧道的隧道id之间的映射。

一种中央控制器装置,包括接收信息的器件,该接收信息的器件用于接收指定vpn业务的一个或多个属性的vpn特定业务模型。该中央控制器装置还包括处理器件,该处理器件耦合至上述接收信息的器件并用于:获得vpn特定业务模型和与上述一个或多个属性对应的一个或多个te特定参数之间的映射;使用该映射确定满足上述一个或多个te特定参数的te隧道;以及将上述vpn业务映射到上述te隧道。

一种中央控制器装置,包括接收信息的器件,该接收信息的器件用于接收vpn业务的vpn特定业务模型和该vpn业务的业务映射策略,其中,该业务映射策略指示该vpn业务是否允许te隧道共享。该中央控制器装置还包括处理器件,该处理器件耦合至上述接收信息的器件并用于根据上述业务映射策略确定用于vpn业务的te隧道,并将该vpn业务映射到该te隧道。

虽然本公开提供了若干实施例,但应当理解,在不脱离本公开的精神或范围的情况下,所公开的系统和方法可以以许多其他具体形式实施。所示的示例被认为是说明性的而非限制性的,并不意在限于本文给出的细节。例如,各种元件或组件可以组合或集成在另一系统中,或者,某些特征可以省略或不实现。

另外,在不脱离本公开的范围的情况下,在各个实施例中描述和示出为分立或分离的技术、系统、子系统、和方法可以与其他系统、模块、技术、或方法组合或集成。示出或讨论为彼此耦合或直接耦合或通信的其他项可以通过电气、机械、或其他方式通过某些接口、设备、或中间组件间接耦合或进行通信。本领域技术人员可以确定改变、替换、和变更的其他示例,并且可以在不脱离本文公开的精神和范围的情况下进行改变、替换、和变更。

以下代码是te业务映射模型(例如图2和7的te业务映射模型202)的示例代码。

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