一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

隧道建立方法、设备及存储介质与流程

2023-01-14 14:27:05 来源:中国专利 TAG:


1.本发明涉及数据通信领域,尤其涉及隧道建立方法、设备及存储介质。


背景技术:

2.传统的基于设备侧搜集的拓扑的带约束条件的算路方式能够很好的解决某个域内的隧道建立需求,但由于看不到跨域的拓扑信息,因此往往无法满足跨域隧道建立的需求。但是在很多场景中,需要进行大拓扑、多域的算路,这就需要一个专门的路径计算设备/组件来搜集全网、跨域的拓扑信息,从而完成跨域路径的计算。这种专门负责算路的设备/组件,称为路径计算单元(path computation element,pce);而传统的路由器设备,作为算路请求的需求方,向pce发起算路请求,称为路径计算客户端(path computation client,pcc)。pcc和pce之间通过路径计算单元通信协议(path computation element communication protocol,pcep)协议来完成pcep会话的建立和通信。
3.随着sdn技术的发展,pce不仅仅是作为集中算路的服务组件,还可以主动的对pcc上已经建立的隧道进行动态规划和调优工作。pce通过pcep的pcinitial(path computation lsp initiate request)消息可以向pcc直接下发隧道创建,pcc根据pcinitial消息中指定的参数,动态创建一个隧道。但是这种通过pcinit方式创建的隧道,只完成了隧道的创建,和该隧道关联的一些策略、属性等目前无法通过pcep协议扩展下发。这给pcinitial方式创建的隧道在工程应用上带来了极大的困难。


技术实现要素:

4.本发明实施例的主要目的在于提出一种隧道建立方法、设备及存储介质,旨在实现在以pcep协议完成隧道建立时隧道关联的属性的下发。
5.第一方面,本发明实施例提供了一种隧道建立方法,应用于路径计算单元pce,包括:获取待下发的隧道关联参数;将所述隧道关联参数承载于路径计算单元通信协议pcep消息中;
6.将携带所述隧道关联参数的所述pcep消息发送给目标路径计算客户端pcc,使所述pcc根据所述隧道关联参数进行隧道属性配置。根据本发明实施例提供的方案,通过在路径计算单元通信协议pcep消息中承载隧道关联参数,可携带至少一个隧道关联参数,下发给pcc,实现了pce主动创建隧道时关联参数的下发,可扩展性强,在pcinitial隧道创建成功后,也可以在pcupd消息中携带该对象,完成隧道关联参数的添加/删除/更新操作。
7.第二方面,本发明提供了一种隧道建立方法,应用于路径计算客户端pcc,包括:接收路径计算单元pce发送的pcep消息;从所述pcep消息中解析出携带的隧道关联参数;根据所述隧道关联参数进行隧道属性配置。根据本发明实施例提供的方案,通过在路径计算单元通信协议pcep消息中承载隧道关联参数,可携带至少一个隧道关联参数,下发给pcc,实现了pce主动创建隧道时关联参数的下发,可扩展性强,在pcinitial隧道创建成功后,也可以在pcupd消息中携带该对象,完成隧道关联参数的添加/删除/更新操作。
8.第三方面,本发明实施例还提供了一种设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如第一方面所述的数据处理方法。
9.第四方面,本发明实施例还提供一种设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如第二方面所述的数据处理方法。
10.第五方面,本发明实施例还提供一种通信系统:包括如第三方面所述的设备及如上第四方面所述的设备。
11.第六方面,本发明实施例还提供一种计算机可读存储介质,存储有计算机可执行指令,所述计算机可执行指令用于执行如第一方面所述的数据处理方法。
12.第七方面,本发明实施例还提供一种计算机可读存储介质,存储有计算机可执行指令,所述计算机可执行指令用于执行如第二方面所述的数据处理方法。
13.本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
附图说明
14.图1是实施例一提供的隧道建立方法的流程图;
15.图2是实施例一提供的系统架构平台的示意图;
16.图3是实施例一提供的隧道属性信息的结构示意图;
17.图4是实施例一提供的参数类型为静态路由时的隧道关联参数的结构示意图;
18.图5是实施例一提供的参数类型为dscp时的隧道关联参数的结构示意图;
19.图6是实施例一提供的参数类型为bfd检测时的隧道关联参数的示意图;
20.图7是实施例二提供的隧道建立方法的流程图;
21.图8是实施例二提供的隧道属性信息中包括多个隧道关联参数的示意图;
22.图9是实施例三提供的设备的内部模块示意图;
23.图10是实施例四提供的设备的内部模块示意图。
具体实施方式
24.为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
25.需要说明的是,虽然在装置示意图中进行了功能模块划分,在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于装置中的模块划分,或流程图中的顺序执行所示出或描述的步骤。说明书、权利要求书或上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
26.在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或“单元”的后缀仅为了有利于本发明的说明,其本身没有特有的意义。因此,“模块”、“部件”或“单元”可以混合地使用。
27.实施例一
28.如图1所示,本实施例提供了一种隧道建立方法的流程图,应用于路径计算单元pce(path computation element),该方法包括如下步骤。
29.步骤s110,获取待下发的隧道关联参数。
30.具体地,本实施例运行在如图2所示的网络中,路径计算单元pce作为集中算路的服务组件,根据当前通信系统的通信状态及通信负载等,对通信系统中已建立或尚未建立的隧道进行动态规划和调优,根据动态规划或者调优结果确定某一隧道的关联参数。这些隧道关联参数将会通过pcep(path computation element communication protocol,路径计算单元通信协议)协议下发给路径计算客户端pcc,例如图2中所示的节点a。应理解的是,本发明的实施例不限定获取隧道关联参数的方法,路径计算单元pce也可通过读取配置或以接收输入的方式获得隧道关联参数。
31.步骤s120,将隧道关联参数承载于路径计算单元通信协议pcep消息中。
32.具体地,可根据隧道关联参数的类型,将隧道关联参数承载于隧道属性信息中。本实施例的隧道属性信息对应的数据结构如图3所示,格式遵循rfc5440中pcep object的定义,如下,其中对象类型(object-class)值为新定义的值(需要iana分配,本实施例中的示意值为65535),ot值=1,对象长度(object length,相当于第一长度信息),为该对象头的长度和数据承载区的所有可选的长度类型参数(tlvs)的长度之和;其中一个长度类型值用于承载一个隧道关联参数。显然地,对象长度(object length)也可以仅为该对象头的长度,即不包括任何隧道关联参数。此时,作为接收方的路径计算客户端pcc接收到这样的隧道属性信息,不会进行任何操作,或者,向路径计算单元pce发送标识下发的隧道属性信息错误的响应。
33.可选长类型参数(本文也称optional tlv,optional type-length-value)部分是变长的,可以携带一个或者多个和隧道关联的参数tlv。每个参数tlv中均包括:隧道关联参数的参数类型、参数长度及数据内容。其中,参数长度标识出隧道关联参数的长度,可以是仅包括隧道关联参数的长度,也可以承载该隧道关联参数的参数tlv的整体长度(即包括隧道关联参数的参数类型、参数长度及数据内容在内的总长度)。本实施例中,参数长度为包括承载该隧道关联参数的长度类型参数tlv的长度。
34.如图4至图6,给出了三种不同类型的tlv。图4中的长度类型参数tlv承载的隧道关联参数的类型为:静态路由参数,则数据内容包括:ip地址及网络掩码。图4中给出的示例为ipv4版本的ip地址,仅为示例,并不对ip地址的版本进行限定。图5中的长度类型参数tlv承载的隧道关联参数的类型为:dscp(differentiated service code point,差分服务代码点)参数,则数据内容部分包括:dscp参数值。图6中的长度类型参数tlv承载的隧道关联参数的类型为:双向转发检测(bidirectional forwarding detection,bfd),则数据内容部分包括:bfd类型、保留字、检测周期和超时倍数。图4至图6仅是列举一些示例,其它和隧道相关的参数也可以类似地装载于tlv中。路径计算单元pce根据需要,于隧道属性信息中携带一个或者多个长度类型参数tlv,tlv可有不同的类型,用于承载对应的隧道关联参数,下发给对应的pcc,以使pcc根据该隧道关联参数进行相应的配置或更新。
35.s130,将携带隧道关联参数的pcep消息发送给目标路径计算客户端pcc,使pcc根据隧道关联参数进行隧道属性配置。
36.本实施例中,可将隧道属性信息承载于pcinit消息或pcupd消息中,发送给目标路径计算客户端pcc。
37.具体地,路径计算单元pce将隧道属性信息承载于pcinit消息中,发送给目标路径计算客户端pcc,pcc检测到pcinit消息,创建对应的隧道,并根据隧道属性信息配置相应的参数。路径计算单元pce主动创建隧道并下发隧道关联参数完成。
38.路径计算单元pce将隧道属性信息承载于pcupd消息中,发送给目标路径计算客户端pcc,pcc检测到pcupd消息,并根据隧道属性信息更新相应的参数。路径计算单元pce在主动创建隧道后,即可通过在pcupd消息中携带隧道属性信息,完成隧道关联参数的添加/删除/更新操作。
39.下面将结合图4至图6中的三种类型的长度类型参数tlv,对隧道关联参数的下发过程进行详细的说明。
40.通过如图4所示的长度类型参数tlv,pce主动创建的隧道可以通过静态路由导流。rfc8281中只定义了pce通过pcinitiate消息向pcc发送隧道的创建,但是隧道创建后,如何把用户流量引入到该隧道上确没有说明,这样直接创建出来的隧道无法承载业务流量是没有意义的,只会浪费网络的带宽资源。在本实施例中,pce在下发pcinit消息时,可以携带如图3所示的隧道属性信息,该信息上携带如图4所示定义的静态路由类型的长度类型参数tlv,该tlv中为隧道设置了静态路由(ip地址/掩码信息)。这样,在隧道创建的同时,通过该静态路由设置了引流,目标地址到达该静态路由网段的用户流量会被该隧道承载发送到相应的目的地。
41.通过如图5所示的长度类型参数tlv,pce主动创建的隧道可以通过dscp导流。通过静态路由来为隧道引流,粒度比较粗放,无法为不同的用户提供不同质量的服务。本实施例中,pce在下发pcinit消息时,可以携带如图3所示的隧道属性信息,该信息上携带如图5所示定义的dscp参数类型的长度类型参数tlv。该tlv中为隧道设置了dscp参数值。通过该设置,本次创建的隧道会和特定dscp值进行绑定,在支持根据ip报文的dscp入隧道的设备上,运营商边缘pe(provider edg)节点可以根据ip报文中的dscp值,对入口流量进行匹配,不同dscp值的业务流量匹配到不同的隧道,设置了dscp的隧道直接根据ip业务流量中的dscp值匹配sr-te隧道,可以更灵活的根据业务通过如图5所示的dscp参数值去部署sr-te隧道。
42.通过如图6所示的长度类型参数tlv,pce可以快速感知节点或链路故障,进行切换操作。pce通过pcinit消息下发可自主创建了sr-te隧道,但由于sr-te隧道没有信令,因此,当sr-te隧道的路径上某个节点或者链路发生故障时,sr-te隧道是无法快速感知和进行切换的。因此,在实际应用上,需要为sr-te隧道配置bfd检测,保证发生故障时的,sr-te隧道能快速的切换到备份路径上,达到工程上50ms内的快切要求。具体地,在本实施例中,pce在下发pcinit消息时,可以携带如图3所示的隧道属性信息,该信息上携带如图6所示定义的bfd检测类型的长度类型参数tlv。该tlv中为隧道设置了bfd的类型和具体的bfd检测参数:检测周期和超时倍数。当pcc接收到该参数,会在完成隧道创建后,根据该bfd的类型、检测周期及超时倍数,为该隧道开启bfd检测,从而达到为该隧道进行快速检测的目的。
43.应理解的是,本发明的另一实施例中,隧道属性信息中的第一长度信息也可以仅标识承载的隧道关联参数的第二长度;其中,第二长度可以是承载隧道关联参数的长度类型参数tlv的总长度(即optional tlv的长度),也可以是optional tlv中tlvs中的参数长
度之和。
44.实施例二
45.如图7所示,本实施例提供了一种隧道建立方法的流程图,应用于路径计算客户端pcc,该方法包括如下步骤。
46.步骤s210,接收路径计算单元pce发送的pcep消息。
47.本实施例中,pcep消息包括:pcinit消息和pcupd消息中的至少一项。
48.pcinit消息也称为pcinitiate消息,是pcep发起建立隧道的消息。pcupd消息,也称pcep update消息,是pcep更新消息。
49.步骤s220,从pcep消息中解析出携带的隧道关联参数。
50.本实施例中,具体地,包括:从pcep消息中获取携带的隧道属性信息;再从隧道属性信息中解析出隧道关联参数。
51.以pcinitiate消息为例,对隧道属性信息的解析过程如下。路径计算客户端pcc接收到pcinitiate消息,若检测到其中携带有隧道属性信息,则创建新隧道,并读取该隧道属性信息。隧道属性信息的结构如图3所示,包括对象类型、ot、对象长度及可变长类型参数。其中对象长度相当于第一长度信息,包括隧道属性信息的头部长度以及可变长类型参数的长度。隧道属性信息的头部为隧道属性信息中除去可变长类型参数的部分,包括:对象类型、ot、res、p、i以及对象长度。其中对象长度的单位为bytes(字节)。如图3所示,隧道属性信息的头部长度为32位二进制,即4个字节。若路径计算客户端pcc未检测到隧道属性信息,或者检查到隧道属性信息的对象长度为4,即表明没有隧道相关参数下发。路径计算客户端pcc不做任何操作,或者,返回相应的响应码,以告知pce没有隧道相关参数下发。
52.从隧道属性信息中解析出隧道关联参数的具体过程如下。
53.具体地,以隧道属性信息中的对象长度包括隧道属性信息的头部长度以及可变长类型参数的长度为例,若路径计算客户端pcc检测到隧道属性信息,且隧道属性信息中的对象长度大于4,则根据对象长度的大小,获取隧道关联参数所在的数据块。例如,若隧道属性信息中的对象长度大于4,为n(n为大于4的整数),则表明隧道关联参数位于隧道属性信息中的第5个字节至第n个字节。
54.如图3和图4所示,若携带了一个隧道关联参数,且该隧道关联参数的类型为静态路由参数,此时,隧道关联参数对应的长类型参数tlv为12个字节,pcc此时检测到的隧道属性信息中的对象长度为12 4=16个字节,则第5个字节至第16个字节为隧道关联参数所处位置。读取到tlv的参数类型为静态路由所对应的编号,则根据参数长度可定位至隧道关联参数的结尾处,根据静态路由所对应的结构(如图4所示),可解析出该隧道关联参数对应的数据内容:ip地址及网络掩码。应注意的是,图4中给出的示例为ipv4版本的ip地址,仅为示例,并不对ip地址的版本进行限定。
55.如图3和图5所示,若携带了一个隧道关联参数,且该隧道关联参数的类型为dscp参数,此时,隧道关联参数对应的长类型参数tlv为8个字节,pcc此时检测到的隧道属性信息中的对象长度为8 4=12个字节,则第5个字节至第12个字节为隧道关联参数所处位置。读取到tlv的参数类型为dscp所对应的编号,则根据参数长度可定位至隧道关联参数的结尾处,根据dscp所对应的结构(如图5所示),可解析出该隧道关联参数对应的数据内容:dscp参数值。
56.如图3和图6所示,若携带了一个隧道关联参数,且该隧道关联参数的类型为bfd检测,此时,隧道关联参数对应的长类型参数tlv为12个字节,pcc此时检测到的隧道属性信息中的对象长度为12 4=16个字节,则第5个字节至第16个字节为隧道关联参数所处位置。读取到tlv的参数类型为bfd检测所对应的编号,则根据参数长度可定位至隧道关联参数的结尾处,根据bfd检测所对应的结构(如图6所示),可解析出该隧道关联参数对应的数据内容:bfd的类型和具体的bfd检测参数;其中,bfd检测参数包括:检测周期和超时倍数。
57.步骤s230,根据隧道关联参数进行隧道属性配置。
58.具体地,若路径计算客户端pcc接收到的是pcinit消息中携带的隧道关联参数,则在隧道创建后,根据隧道关联参数配置相应的属性信息。若路径计算客户端pcc接收到的是pcupd消息中携带的隧道关联参数,则根据隧道关联参数更新相应的属性信息。例如,若路径计算客户端pcc接收到的隧道关联参数为静态路由参数,则根据ip地址及网络掩码,通过该静态路由为该隧道设置引流,使目标地址到达该静态路由网段的用户流量被该隧道承载发送到相应的目的地。例如,若路径计算客户端pcc接收到的隧道关联参数为dscp参数,则将本次创建的隧道会与给定的dscp值参数进行绑定,从而使得在支持根据ip报文的dscp入隧道的设备上,运营商边缘pe(provider edg)节点可以根据ip报文中的dscp值,对入口流量进行匹配,不同dscp值的业务流量匹配到不同的隧道。设置了dscp的隧道直接根据ip业务流量中的dscp值匹配sr te隧道,可以更灵活的根据业务通过如图5所示的dscp参数值去部署sr-te隧道。例如,若路径计算客户端pcc接收到的隧道关联参数为bfd检测,则根据该bfd的类型、检测周期及超时倍数,为该隧道开启bfd检测,从而达到为该隧道进行快速检测的目的。
59.在本实施例中,单个pcinit消息及pcupd消息中的隧道属性信息也可以携带多组隧道关联参数。下面将以隧道属性信息中同时携带静态路由和bfd检测为例,说明隧道关联参数的下发过程。
60.路径计算单元pce获取要设置静态路由的ip地址及网络掩码,并生成形如图4所示的类型为静态路由的长类型参数tlv;获取要设置的bfd的类型、检测周期及超时倍数,生成形如图6所示的类型为bfd检测的长类型参数tlv。然后放入如图3所示的隧道属性信息的可选长类型参数(optional tlvs)部分。本实施例中,隧道属性信息的参数长度(相当于第一长度信息)为隧道属性头部的长度与可选长类型参数(optional tlvs)的长度之和。本例中,隧道属性信息的参数长度为28(4 12 12)个字节;类型为静态路由参数的长类型参数tlv对应的参数长度(如图4所示)为12;类型为bfd检测的长类型参数tlv的参数长度(如图6所示)为12。然后,路径计算单元pce在pcinit消息中携带该隧道属性信息,通过pcep协议下发给目标路径计算客户端pcc。
61.路径计算客户端pcc接收到pcinit消息,创建隧道,提取出隧道属性信息,根据隧道属性信息的参数长度为28个字节,获取到隧道属性信息中从第5个字节至第28个字节均为携带的关联参数信息。定位至隧道属性信息的第5个字节,可获取第一个长类型参数tlv的类型为静态路由参数,且第一个长类型参数的参数长度为12,根据如图4所示的结构,可提取出相应的属性:ip地址及网络编码,并对该隧道进行相应的设置。然后根据第一个长类型参数的参数长度为12,定位至隧道属性信息的第17个字节,可获取第二个长类型参数tlv的类型为bfd检测,且第二个长类型参数的参数长度为12,根据如图6所示的结构,可以提取
出相应的属性:bfd的类型、检测周期及超时倍数,并对该隧道进行相应的设置。该新创建的隧道因此具备两种属性,可通过静态路由进行导流,以及,按接收到的参数(bfd的类型、检测周期及超时倍数)进行bfd检测。
62.应理解的是,对于已经建立的隧道,若路径计算单元在动态规划或调优操作中,需要对相应的隧道相关参数进行添加/删除/更新操作,可以按如上所述的方法装载好隧道属性信息,通过pcupd消息进行下发操作,以使目标隧道的相关参数进行相应的添加/删除/更新操作。
63.在本实施例中,隧道属性信息的第一长度信息(即如图3中的对象长度)为隧道属性信息的整体长度,包括头部及可选长类型参数的长度。每个长类型参数中的参数长度,表示长类型参数的整体长度,如图8所示,即包括:参数类型、参数长度及数据内容所占的空间的大小,单位为字节。路径计算客户端pcc接收到pcinit消息或者pcupd消息,获取出隧道属性信息,参照图8,从隧道属性信息的头部中可读取得到第一长度信息(即图3中的对象长度)。该第一长度信息为隧道属性信息的总长度,根据该第一长度信息可以得知隧道属性信息中的可选长类型参数(optional tlvs)的长度(即隧道属性信息承载的隧道关联参数的第二长度)。根据该第二长度可定位隧道关联参数在隧道属性信息中的位置,并解析出隧道关联参数。具体地,获取隧道关联参数的起始位置,读取第一个长类型参数tlv的参数类型及参数长度。根据当前参数类型读出第一个长类型参数的数据内容,并根据当前参数长度定位下一个长类型参数tlv。根据当前参数长度和当前长类型参数tlv的位置确定该隧道属性信息的数据承载区是否读取完毕。若尚未读完,则继续读取下一个长类型参数,直至到达第一长度信息所指向的数据承载区的末尾。
64.在本发明的另一些实施例中,隧道属性信息的第一长度信息仅标识承载的隧道相关参数的可选长类型参数(optional tlvs)的长度,不包括隧道属性信息的头部长度;每个长类型参数中的参数长度,仅表示承载的隧道相关参数(即图8中的数据内容)的长度。例如,如图4所示的类型为静态路由参数的长类型参数tlv的参数长度为8个字节;如图5所示的类型为dscp参数的长类型参数tlv的参数长度为4个字节;如图6所示的长类型参数bfd检测的长类型参数tlv的参数长度为8个字节。因如图4至图6所示的长类型参数的头部(即参数类型及参数长度部分)均为2个字节,因此,路径计算客户端pcc接收到pcinit消息或者pcupd消息,获取出隧道属性信息,参照图8,从隧道属性信息的头部中可读取得到第一长度信息(即图3中的对象长度)。该第一长度信息为隧道属性信息的可变长类型参数的总长度(即optional tlv的长度),也就是隧道属性信息承载的隧道关联参数的第二长度。根据该第二长度可定位隧道关联参数在隧道属性信息中的位置,并解析出隧道关联参数。具体地,获取隧道关联参数的起始位置,读取第一个长类型参数tlv的参数类型及参数长度。根据当前参数类型读出第一个长类型参数的数据内容,并根据当前参数长度定位下一个长类型参数tlv。根据当前参数长度和当前长类型参数tlv的位置确定该隧道属性信息的数据承载区是否读取完毕。若尚未读完,则继续读取下一个长类型参数,直至到达第一长度信息所指向的数据承载区的末尾。
65.实施例三
66.在前述实施例提出的隧道建立方法的基础上,本发明的实施例三提出一种第一设备,该第一设备用于下发隧道关联参数给目标路径计算客户端pcc。
67.参照图9,本实施例的第一设备100的内部模块包括:获取单元110、装载单元120和第一发送单元130。获取单元110,用于获取待下发的隧道关联参数。装载单元120,用于将隧道关联参数承载于pcep消息中。例如,根据隧道关联参数的类型,将隧道关联参数承载于隧道属性信息中;以及,将隧道属性信息承载于pcinit消息或pcupd消息。第一发送单元130,用于将携带隧道关联参数的pcep消息发送给目标路径计算客户端pcc,使pcc根据隧道关联参数进行隧道属性配置。
68.具体地,本实施例的第一设备100运行在如图2所示的网络中,作为路径计算单元pce,根据当前通信系统的通信状态及通信负载等,对通信系统中已建立或尚未建立的隧道进行动态规划和调优,根据动态规划或者调优结果确定某一隧道的关联参数。这些隧道关联参数将会通过pcep协议下发给路径计算客户端pcc,例如图2中所示的节点a。应理解的是,本发明的实施例不限定获取单元110获取隧道关联参数的方法,第一设备100的获取单元110也可通过读取配置或以接收输入的方式获得隧道关联参数。
69.第一设备100的装载单元120将待下发的隧道关联参数承载至隧道属性信息中。本实施例的隧道属性信息对应的数据结构如图3所示,格式遵循rfc5440中pcep object的定义,如下,其中对象类型(object-class)值为新定义的值(需要iana分配,本实施例中的示意值为65535),ot值=1,对象长度(object length,相当于第一长度信息),为该对象头的长度和后面承载的所有可选的长度类型参数(tlvs)的长度之和;其中一个长度类型值用于承载一个隧道关联参数。可选长类型参数(本文也称optional tlvs,optional type-length-values)部分是变长的,可以携带一个或者多个和隧道关联的参数tlv。每个参数tlv中均包括:隧道关联参数的参数类型、参数长度及数据内容。其中,参数长度标识出隧道关联参数的长度,可以是仅包括隧道关联参数的长度,也可以承载该隧道关联参数的参数tlv的整体长度(即包括隧道关联参数的参数类型、参数长度及数据内容在内的总长度)。
70.第一设备100的装置单元120根据待下发的隧道关联参数的类型,生成相应类型的tlv,填充至可选长类型参数(optional tlvs)。如图4至图6,给出了三种不同类型的tlv。图4中的长度类型参数tlv承载的隧道关联参数的类型为:静态路由参数,则数据内容包括:ip地址及网络掩码。图4中给出的示例为ipv4版本的ip地址,仅为示例,并不对ip地址的版本进行限定。图5中的长度类型参数tlv承载的隧道关联参数的类型为:dscp(differentiated service code point,差分服务代码点)参数,则数据内容部分包括:dscp参数值。图6中的长度类型参数tlv承载的隧道关联参数的类型为:bfd检测,则数据内容部分包括:bfd类型、保留字、检测周期和超时倍数。图4至图6仅是列举一些示例,其它和隧道相关的参数也可以地装载于tlv中。第一设备100的装置单元120根据需要,于隧道属性信息中携带一个或者多个长度类型参数tlv,tlv可有不同的类型,用于承载对应的隧道关联参数,下发给对应的pcc,以使pcc根据该隧道关联参数进行相应的配置或更新。
71.本实施例中,pcep消息包括:pcinit消息及pcupd消息中的至少一项。第一设备100的装置单元120将隧道属性信息承载于pcinit消息中,发送给目标路径计算客户端pcc,以使pcc检测到pcinit消息,创建对应的隧道,并根据隧道属性信息配置相应的参数。第一设备100的装置单元120将隧道属性信息承载于pcupd消息中,发送给目标路径计算客户端pcc,以使pcc检测到pcupd消息,并根据隧道属性信息更新相应的参数。
72.第一设备100还包括第一接收单元210(未图示),用于接收目标路径计算客户端
pcc返回的响应信息。
73.实施例四
74.在前述实施例提出的隧道建立方法的基础上,本发明的实施例四提出一种第二设备,该第二设备用于接收并处理第一设备下发的隧道关联参数。
75.参照图10,本实施例的第二设备200的内部模块包括:第二接收单元210、解析单元220和配置单元230。第二接收单元210,用于接收第一设备发送的pcep消息。本实施例中,pcep消息,包括:pcinit消息及pcupd消息中的至少一项。解析单元220,用于从pcep消息中解析出携带的隧道关联参数。配置单元230,用于根据隧道关联参数配置或更新相应的属性。
76.第二设备200的第二接收单元210接收到pcinit消息,若解析单元220检测到其中携带有隧道属性信息,则创建新隧道,并读取该隧道属性信息。隧道属性信息的结构如图3所示,包括对象类型、ot、对象长度及可变长类型参数。其中对象长度相当于第一长度信息,包括隧道属性信息的头部长度以及可变长类型参数的长度。隧道属性信息的头部为隧道属性信息中除去可变长类型参数的部分,包括:对象类型、ot、res、p、i以及对象长度。其中对象长度的单位为bytes(字节)。如图3所示,隧道属性信息的头部长度为32位二进制,即4个字节。若路径计算客户端pcc未检测到隧道属性信息,或者检查到隧道属性信息的对象长度为4,即表明没有隧道相关参数下发。路径计算客户端pcc不做任何操作,或者,返回相应的响应码,以告知pce没有隧道相关参数下发。
77.具体地,若路径计算客户端pcc的解析单元220检测到隧道属性信息,且隧道属性信息中的对象长度大于4,则根据对象长度(相当于第一长度信息)的大小,获取隧道关联参数所在的数据块。例如,若隧道属性信息中的对象长度大于4,为n(n为大于4的整数),则表明隧道关联参数位于隧道属性信息中的第5个字节至第n个字节。该第一长度信息为隧道属性信息的总长度,根据该第一长度信息可以得知隧道属性信息中的可选长类型参数(optional tlvs)的长度(即隧道属性信息承载的隧道关联参数的第二长度)。
78.根据该第二长度可定位隧道关联参数在隧道属性信息中的位置,并解析出隧道关联参数。具体地,获取隧道关联参数的起始位置,读取第一个长类型参数tlv的参数类型及参数长度。根据当前参数类型读出第一个长类型参数的数据内容,并根据当前参数长度定位下一个长类型参数tlv。根据当前参数长度和当前长类型参数tlv的位置确定该隧道属性信息的数据承载区是否读取完毕。若尚未读完,则继续读取下一个长类型参数,直至到达第一长度信息所指向的数据承载区的末尾。
79.解析单元220完成解析操作后,由配置单元230根据隧道相关参数的类型及数据内容进行相应的配置。
80.第二设备100还包括第二接收单元220(未图示),用于返回响应信息给第一设备100。
81.实施例五
82.在前述实施例提出的隧道建立方法以及第一设备100和第二设备200的基础上,本发明的实施例五提出一种通信系统。该系统中包含一个第一设备100和多个第二设备200。
83.第一设备100工作在如图2所示的通信系统中,其中第一设备100相当于图2中的pce,第二设备200相当于图2中的节点a或节点b。第一设备100作为路径计算单元pce,根据
当前通信系统的通信状态及通信负载等,对通信系统中已建立或尚未建立的隧道进行动态规划和调优,根据动态规划或者调优结果确定某一隧道的关联参数。第一设备100获取待下发的隧道关联参数,将隧道属性信息承载于pcep消息中,交将携带隧道关联参数的pcep消息发送给第二设备。具体地,例如,第一设备100获取待下发的隧道关联参数,根据隧道关联参数的类型,将该隧道关联参数承载于隧道属性信息中,然后将隧道属性信息承载于pcinit消息或pcupd消息中,通过通过pcep协议发送第二设备200。
84.第二设备200接收至pcep消息,解析出该pcep消息携带的隧道关联参数,根据解析出的隧道关联参数对隧道相应属性进行配置。例如,第二设备200接收到pcinit消息或pcupd消息,获取隧道属性信息,从隧道属性信息中解析出隧道关联参数。具体解析过程为:获取获取所述隧道属性信息中的第一长度信息,根据所述第一长度信息获取隧道属性信息承载的隧道关联参数的第二长度;根据第二长度获取隧道属性信息的数据承载区;遍历数据承载区,根据参数类型及参数长度解析出隧道关联参数。若接收到的是pcinit消息,则根据解析得到的隧道关联参数配置相应的属性;若接收到的是pcupd消息,则根据根据解析得到的隧道关联参数添加/删除/更新相应的属性。
85.本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统、装置中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于ram、rom、eeprom、闪存或其他存储器技术、cd-rom、数字多功能盘(dvd)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献