基于分层PCE的多域光网络安全光路建立协议的制作方法

文档序号:12697889阅读:237来源:国知局
基于分层PCE的多域光网络安全光路建立协议的制作方法与工艺

本发明涉及多域光网络技术领域,具体涉及一种基于分层PCE的多域光网络安全光路建立协议。



背景技术:

2009年,IETF在RFC 5520中提出了多域光网络光路建立的安全性需求,但是没有提出了相关的有效解决方案。2009年,北京科技大学周贤伟教授等提出了一种的ASON安全光路建立协议,但是该协议只适合应用于单域的光网络中。2004年孙卫强在文献[34]中提出了一种基于混合模式的跨域光路建立协议CLEP,2014年王宗伟[35]提出了一种基于SD-PCE和pH-PCE的跨域光路的建立方案,同年邱在猛[36]也提出了基于PCE的光网络的跨域解决方案,但此三者种方案均未考虑安全因素。因此,跨域光网络安全光路建立问题亟待解决。



技术实现要素:

针对上述现有技术中存在的不足,本发明提出了基于分层PCE的多光域网络安全光路建立协议,该协议用于规划源节点到目的节点的安全路径,其中在光网络中设有多个路由器,每个路由器代表一个节点,任选一节点作为源节点,任选一节点作为目的节点,其特征在于,包括以下步骤:

步骤一,根据光网络建立基于分层PCE的多域光网络模型

多域光网络模型的每个子域中配有一个子路径计算单元cPCE,整个模型中配有一个父路径计算单元pPCE,节点分布于子域中;

步骤二,在多域光网络模型的基础上,建立多域光网络拓扑图G:

G=(M,E)

其中,M表示光网络中的节点集合;E为M中的节点构成的链路集合;

步骤三,建立多域光网络安全光路协议

在协议中,将步骤二建立的超图模型分为PCE层和自治域层,其中PCE层包括cPCE以及pPCE,自治域层包括各个子域;

步骤31,域路径的计算;

所述域路径是指:从源节点到目的节点经过的所有域的集合组成的链路;

步骤32,全局波长的分配

(1)划分域内波长集合和域间波长集合;

Step1,cPCEi将cPCEi管理的所有波长集合U(i)从小到大进行排列;i表示自治域个数,i=1,2,...,s,s为大于等于2的自然数。

将U(i)中的波长去除,得到cPCEi自主管理的波长集合U′in;j≠i,j=1,2,...,s;

Step2,设初始分配比β=0.1,pPCE将中的波长从小到大排列,前β比例的波长划分在Uin(i)中,后(1-β)比例的波长划分到Uout(i)中,Uout(i)由pPCE用于跨域光路建立,Uout(i)波长的使用必须经pPCE授权给cPCE,再由cPCE授权给节点;

所述Uin(i)为域内波长集合,Uout(i)为域间波长集合;

Step3,cPCEi对在业务统计周期时间Tstastic内处理的第i个自治域的域内业务量Min(i)和在Tstastic内处理的整个光网络中的业务量Mall(i)进行统计,通过式(1),得到新的分配比例β:

Step4,在下一个业务统计周期时,pPCE将β值下发各cPCE,各cPCE将按照后(1-β)比例的波长划分在Uout(i)内,用于跨域光路建立;前β比例的波长资源划分在Uin(i)中,用于域内光路建立;

(2)波长子域的划分

cPCEi根据Uin(i)中的每个波长的使用情况,依次以Uin(i)中的每个波长作为当前波长λ1,划分λ1的波长子域;

Step1,寻找该cPCEi自治域中已使用λ1的跨域路径段,将已使用λ1的跨域路径段经过的节点划分到波长子域λ1-1

Step2,cPCEi将波长子域λ1-1中的节点去除,将剩余节点中每一个连通部分的节点划分到一个波长子域,得到λ1-2,…,λ1-a;a为大于等于2的自然数;

步骤33,高速光路的建立:

Step1,pPCE在Uout(i)中选取的波长作为高速波长用来建立抽象高速路由,cPCE不得将高速波长分配给域内光路建立使用;抽象高速路由在域内由域的物理边界节点组成的环状链路建立,在域间由网关节点之间的连线相连建立;

Step2,若头域cPCE和尾域cPCE计算的域内路径段及可用波长,可以找到匹配的抽象高速路由则pPCE直接通知头域cPCE可以利用高速路由建立高速光路。

进一步地,所述步骤31中域路径的计算包括三个约束条件:

(1)域内光路建立不需其他域参与;

(2)使用更少的域完成光路建立;

(3)结合每个域的策略因素。

进一步地,若头域cPCE和尾域cPCE计算的域内路径段及可用波长,无法找到匹配的抽象高速路由时,则使用优化方法来建立光路,具体过程如下:

步骤34,光路可用波长的计算

Step1,cPCE计算路径段可用波长

将每个自治域中的路径段可用波长数据结构定义为:(路径段头节点,路径段尾节点:头尾节点可使用波长的集合);

cPCEi通过查找路径段可用波长数据结构,得到头尾节点可使用波长的集合,即为空闲波长集合;

Step2,pPCE计算光路可用波长

①pPCE下发域路径给相关域的cPCEi;所述相关域是指,域路径经过的自治域;

(a)若pPCE给域路径的头域cPCEi下发域路径,则该头域cPCEi计算头节点到下游域的所有网关节点之间的路径段可用波长;

(b)若pPCE给域路径的尾域cPCEi下发域路径,要求尾域cPCEi计算尾节点到上游域的所有网关节点之间的路径段可用波长;

(c)pPCE给域路径的中间域cPCEi下发路径段,要求该cPCEi计算所有上游域网关节点到下游域网关节点之间的路径段可用波长;

②cPCE计算出路径段可用波长后,统计每个节点的可用波长,然后将光路的路径段可用波长数据与节点可用波长数据传递给pPCE;

③pPCE收到所有相关域的cPCE对同一光路发来的光路的路径段可用波长数据与节点可用波长数据集合后,得到该光路所有的路径段及其可用波长;

④pPCE将该光路所有的路径段及其可用波长拼接为光路可用波长图:

将路径段的波长集合记在连线上,从头节点开始,将连线上的波长向下游连接线合并,计算该光路可用波长,合并规则如下:

(a)任选一连线作为当前连线,若当前连线没有上游连线,则该当前连线可进行波长合并,即为可合并上游连线;

(b)若该可合并上游连线与下游连线串联,则将该下游连线的波长集合修改为:该可合并上游连线波长与下游连线波长的交集,删除该可合并上游连线;

(c)若多个可合并的上游连线在同一节点汇聚,且该节点的多个可合并的上游连线均能够合并波长时,将该节点的任一下游连线的波长修改为:所有可合并的上游连线波长的并集与该下游连线波长的交集,当该节点下游的所有连线均合并了波长后,删除该节点所有可合并的上游连线;

步骤35,通过步骤34得到的光路可用波长,指派波长及网关节点;

(1)建立光网络同步的建路周期

设一个建路周期在t0时刻到t4时刻完成,下一周期的t0时刻等于本周期的t4时刻;

(2)波长指派

pPCE在一个建路周期内接收并处理了所有cPCE提交的光路可选波长后,整合为一张光路可选波长表,表中包括光路的标识LinkID,请求提交时间LinkTime,光路径过的域的集合LinkDom,光路建立可选的波长LinkCourse,可选波长的数量CourseNumber;

pPCE依据光路可选波长表,给光路指派波长,具体过程如下:

①pPCE按照光路排序的先后顺序对光路可选波长进行分配:

(a)按CourseCount排序,CourseCount值大的排序在前;

(b)当CourseCount相同时,把LinkCourse相同的光路放入一个光路集合中,记该光路集合中的光路个数为Count;在CourseCount相同的前提下,Count值大的光路集合排序在前,光路集合内部的元素按LinkTime排序,LinkTime值小的排序在前。

(c)当光路集合的CourseCount相同,LinkCourse不同,Count相同时,光路集合按集合中排序的第一个光路的LinkTime值排序,该LinkTime值小的光路集合排序在前。

②选择排序后的最前面一个光路作为一个路径,在该路径的波长集合中任选一个波长λt,将波长λt指派为该路径的波长,检查该路径上的所有域节点经过的其他光路,如果这些光路可选波长包含λt,则去除该光路的可选波长λt;如果可选波长λt为该路径唯一可选波长,则pPCE在排序队列中删除该光路,并将该光路记录为本建路周期无法分配波长的光路,通知头域在下一建路周期再次提交光路建立请求;

③返回步骤①,直到队列中无光路,波长指派结束;

(3)pPCE指派网关节点和cPCE计算域内路径段

Step1,pPCE在步骤(2)指派波长的光路可用波长图中,保留该指派波长能通过的节点和链路,得到可选的路由网络,再从可选的路由网络计算得到所有的抽象域路径,计算出最为可信的链路,将该路径对应的网关节点指派给该光路,最后下发cPCE指派的波长及网关节点;

Step2,cPCE收到指派的波长及网关节点后,依据当前时刻的波长子域信息,对光路进行最佳路径段的选择,将其他可信路由结果按信任度由高向低排序充当备份路由,在cPCE指派的路由出现故障时再使用;若排序最后的备份路由也无法建立光路径段时,故障点发送ERROR类消息,表示该光路建立失败。

与现有技术相比,本发明具有以下技术效果:

本发明结合信任模型和密钥管理方案,采用全局优化的多域可信路径选择、可用波长计算和波长分配策略,利用基于TLS的双向身份认证、基于TCP-AO的源认证、基于身份密码学的加密与数字签名技术以及基于Path-Key的隐私保护机制,设计了一种新的基于全局优化的多域光网络安全光路建立协议GO-PCE(Global Optimizing secure light-path protocol based PCE in multi-domain optical network),可满足机密性、完整性、真实性、不可抵赖性、新鲜性和私有性等安全服务需求,相比SD-PCE和pH-PCE光路建立协议,具有较低的阻塞率和较短的光路建立时延。

附图说明

图1为拓扑结构图;

图2(a)为划分的波长子域图;(b)为波长释放后划分的波长子域图;

图3为高速路由计算的示例图;

图4为域路径计算的示例图;

图5为光路可用波长计算的示例图;

图6为光路可用波长计算的中间结果图;

图7为建路周期时序图;

图8为光路可用波长表;

图9为GO-PCE协议流程图;

图10为GO-PCE故障处理过程图。

具体实施方式

下面结合附图和实施例对本发明作进一步说明。

本实施例提供了一种基于分层PCE的多光域网络安全光路建立协议,该协议用于规划源节点到目的节点的安全路径,其中在光网络中设有多个路由器,每个路由器代表一个节点,任选一节点作为源节点,任选一节点作为目的节点,其特征在于,包括以下步骤:

步骤一,根据光网络建立基于分层PCE的多域光网络模型

多域光网络模型的每个子域中配有一个子路径计算单元cPCE,整个模型中配有一个父路径计算单元pPCE,节点分布于子域中;

步骤二,在多域光网络模型的基础上,建立多域光网络拓扑图G:

G=(M,E)

其中,M表示光网络中的节点集合,M=(m0,m1,m2,…,mn-1);E为M中的节点构成的链路集合;

由于目前的安全光路建立协议没有基于全局的资源优化策略,使得资源争用现象频繁发生。为了提高光路建立效率,达到减小光路时延的目的,本文设计一种基于全局优化的选路和建路机制;其中,资源在本发明中是指可用波长。

步骤三,建立多域光网络安全光路协议

在协议中,将步骤二建立的超图模型分为PCE层和自治域层,其中PCE层包括cPCE以及pPCE,自治域层包括各个子域;

步骤31,域路径的计算;本实施例采用pPCE依据其域间TED数据计算域抽象路径,所述域抽象路径即为域路径;

所述域路径是指:从源节点到目的节点经过的所有域的集合组成的链路;

步骤32,全局波长的分配

光网络规模巨大,如果每条跨域都自主的使用波长而不进行优化,当跨大量的域建立光路时,必将广泛的导致类似CSMA-CD协议一样的资源争用冲突现象。为了更好的利用PCE强大的计算能力,避免各光路径在建路阶段争用资源引发冲突,GO-PCE规定:由PCE层选择好波长后,向节点指派使用,节点不得私自使用波长,波长使用完毕后,按源节点到目的节点的方向释放波长,由自治域路径段的头尾节点,分别向其所在域的cPCE发送RESV-TEAR消息报告资源已释放,波长分配策略如下:

(1)划分域内波长集合和域间波长集合;

本发明中域内波长集合和域间波长集合的划分,应在下述四种假设情况下:

假设1:光路径建立满足光路径的波长一致性条件;

假设2:整个光网络有s个cPCE,分别为cPCE1,cPCE2,…,cPCEs

假设3:同一个域的节点的波长集合相同,等于该域cPCE管理的波长集合;

假设4:cPCEi仅在Uin(i)中选择波长完成域内光路建立,pPCE仅在Uout(i)中选择cPCEi可用的波长为跨域光路建立使用。

Step1,cPCEi将cPCEi管理的所有波长集合U(i)从小到大进行排列;i表示自治域个数,i=1,2,...,s,s为大于等于2的自然数。

pPCE依据各域自身策略需求和域间光连接的实际情况,动态地为各个域划分不同的边界波长,并依据cPCE的反馈信息动态调整,边界波长到最大波长部分由pPCE统一调度为域间通信使用,最小波长到边界波长部分由cPCE分配给域内通信使用。域间波长资源的使用必须经pPCE授权给cPCE,cPCE再授权给节点。波长释放时链路头尾节点需通过OSTF-TE协议向cPCE报告该链路资源状态改变信息。

将U(i)中的波长去除,得到cPCEi自主管理的波长集合U′in;j≠i,j=1,2,...,s;其中,U′in为cPCEi不被pPCE管理的域内波长的集合;

Step2,由于多域光网络域间业务量大于域内业务量,设初始分配比β=0.1,pPCE将中的波长从小到大排列,前β比例的波长划分在Uin(i)中,后(1-β)比例的波长划分到Uout(i)中,Uout(i)由pPCE用于跨域光路建立,Uout(i)波长的使用必须经pPCE授权给cPCE,再由cPCE授权给节点;

所述Uin(i)为cPCEi管理的所有域内波长的集合,Uout(i)为cPCEi管理的所有跨域波长的集合;

Step3,cPCEi对在业务统计周期时间Tstastic内处理的第i个自治域的域内业务量Min(i)和在Tstastic内处理的整个光网络中的业务量Mall(i)进行统计,通过式(1),得到新的分配比例β:

Step4,在下一个业务统计周期时,pPCE将β值下发各cPCE,各cPCE将按照后(1-β)比例的波长划分在Uout(i)内,用于跨域光路建立;前β比例的波长资源划分在Uin(i)中,用于域内光路建立;

若经过Tstastic后β值增大,则pPCE将更多的波长分配给cPCE自主使用。若新纳入Uin(i)的波长还被上个统计周期的跨域光路占用,在该cPCE的Uin(i)中添加该波长,待该光路释放波长后再用于域内光路建立使用。波长释放时由光路在各域的路径段头尾节点通过OSTF协议向cPCE报告,cPCE收到该消息后,将TED中该光路链路上所有节点的该波长的状态修改为空闲。

若经过Tstastic后β值减小,则pPCE分配更少的波长给cPCE自主使用。当新纳入Uout(i)的波长还被上个统计周期域的光路占用,在该cPCE的Uin(i)中删除该波长,在pPCE的Uout(i)中添加该波长,待该资源释放后再用于跨域光路建立,波长释放时光路在各域的路径段头尾节点通过OSTF协议向各cPCE报告,cPCE通过域间OSTF协议上报pPCE该资源可用,pPCE收到某域的上报消息后,就在该cPCE的Uout(i)中修改该波长为空闲。

(2)本发明采用波长子域的划分的方法,提高跨域资源的空间利用率。

波长子域是指:cPCE结合TED中域内拓扑关系表和节点的波长使用情况,为每个波长建立拓扑关系图。将正在使用的波长节点划分到一个波长子域中,其他节点按连通性聚类。本实施例结合图1所示的拓扑结构阐述波长子域划分过程。

cPCEi根据Uin(i)中的每个波长的使用情况,依次以Uin(i)中的每个波长作为当前波长λ1,划分λ1的波长子域,图1中黑色连线表示节点拓扑关系,红色连线表示λ1在本域已使用的部分;

Step1,寻找该cPCEi自治域中已使用λ1的跨域路径段,将已使用λ1的跨域路径段经过的节点划分到波长子域λ1-1;由图1可知,此时域内已建好2条以λ1为波长的跨域路径段,其中{m2,m3,m4}是一条以m2为源节点(或目的节点)的跨域路径段,{m7,m8,m10}是一条源、目节点均不在本域的跨域路径段,则该域cPCE将已经使用λ1的节点划分在一个波长子域中,记做波长子域λ1-1,即λ1-1={m2,m3,m4,m7,m8,m10}。

Step2,cPCEi将波长子域λ1-1中的节点去除,将剩余节点中每一个连通部分的节点划分到一个波长子域,得到λ1-2,…,λ1-a;a为大于等于2的自然数;

cPCE将该波长子域的节点及其拓扑连线去除,得到新的拓扑图2(a)。然后将每一个连通部分的节点划分到一个波长子域中去,得到λ1-2={m1},λ1-3={m5,m6},λ1-4={m9},波长子域划分完毕。此时λ1建立跨域光路的能力已经很差。

当某条光连接释放λ1后,cPCE更新λ1的波长子域信息。如路径段{m7,m8,m10}释放λ1后,将恢复m7,m8,m10原有的连线,得到新的波长子域。如图2(b)所示,cPCE将更新λ1的波长子域为:λ1-1={m2,m3,m4},λ1-2={m1,m5,m6,m7,m8,m9,m10}。此时λ1建立跨域光路的能力已大大增强。

步骤33,高速光路的建立:

由于光网络域间业务量大于域内业务量,域间路径请求是网络的主流。若各跨域光路在各中间域上都个性化建路,必将导致域间资源的调度困难。本发明借鉴现实生活中为了避免在城市内部发生拥堵,司机通常选择走环城高速的想法,提出中间域高速路由概念,使数据在中间域传输时尽可能环绕域的物理边界传输,而不影响域内节点。

Step1,pPCE在Uout(i)中选取的波长作为高速波长用来建立抽象高速路由,cPCE不得将高速波长分配给域内光路建立使用;抽象高速路由在域内由域的物理边界节点组成的环状链路建立,在域间由网关节点之间的连线相连建立;

Step2,若头域cPCE和尾域cPCE计算的域内路径段及可用波长,可以找到匹配的抽象高速路由则pPCE直接通知头域cPCE可以利用高速路由建立高速光路。

本实施例结合图3中m3到m24的光路建立,对高速光路的建立过程如下:

①m3作为PCC向本域cPCE(即cPCE1)发起PCEP连接,发送光路建立请求(m3,m24)。

②cPCE1收到该建路请求后,比对TED数据库,判断m24不是域内节点,标记(m3,m24)为跨域请求,cPCE1向pPCE发起PCEP连接,发送跨域路径计算请求(D1,m3,m24)。

③pPCE接收到路径计算请求(D1,m3,m24)后,向除cPCE1以外cPCE寻找m24

④各cPCE对比本域TED数据库,若发现目的节点,则向pPCE报告目的节点位置,否则不发送位置报告。本例中m24在D3中,cPCE3向pPCE发送位置报告(D3,m24)。

⑤pPCE接收到该消息后,得到目的域为D3,pPCE通过域间TED数据库信息,计算出一条合适的域路径,本例中计算结果为{D1,D2,D3}。pPCE通过跨域TED的中间域高速路由信息,计算出多条从D1到D3的抽象高速路由:{m3,m7,m10,m16,m17,m24},{m3,m7,m9,m15,m19,m24},{m3,m8,m9,m15,m19,m24}。

⑥pPCE给该光路的头域和尾域cPCE发送抽象高速路由至头域和尾域的cPCE,要求其计算域内路径段及上可用波长。

⑦cPCE计算出可用波长后上报pPCE。

⑧pPCE收到来自头域cPCE和尾域cPCE的路径段及可选资源结果后,若能找到匹配的高速路由则直接通知头域cPCE可以利用高速路由建路。

所述步骤31中域路径的计算包括三个约束条件:

(1)域内光路建立不需其他域参与;

如图4所示,若m1与m9建立光连接,假设pPCE考虑全网最佳拓扑结构建立跨域路径{D1,D2,D1}的{m1,m12,m13,m9}连接或{m1,m10,m11,m9}连接将是全网最佳路径,但考虑到D2不会无偿地为D1提供建路服务,D1的cPCE可通过组建{m1,m2,m3,m4,m5,m6,m7,m8,m9}的域内路由完成m1与m9的光连接,虽然这样经过较多路由器,但D1不必向D2支付转发费用,且D1自行建立的光路降低了m1所管理用户隐私信息外泄D2的风险。为了减少域转发开支、增加域内安全性,本发明添加域路径约束条件1:源节点和目的节点在域内时,光路由cPCE自行在域内建立,不需要将该光路请求提交给pPCE。

(2)使用更少的域完成光路建立;

如图4,若m5与m18建立光连接,cPCE将这个跨域连接请求发送给pPCE,若pPCE依据全网TED建立跨域路径{D1,D2,D3}的{m5,m12,m10,m16,m17,m18}连接将是全网最佳路径,但由于D1和D3是邻域,D2不会无偿替D1和D3转发消息,另外由于隐私保护的缘故,pPCE的TED中并没有全网的拓扑结构,pPCE无法知道路径在每个域中的实际跳数,因此无法计算出最佳路径。为了在域间找到合适域路径,本发明添加域路径约束条件2:pPCE计算域路径时尽可能使参与的域最少。

(3)结合每个域的策略因素。

本发明使用的是基于分层PCE架构的,pPCE在进行域间抽象路径的选择时必须考虑域策略。由于域内ISP对域内信息流动具有管辖权,信息不可以绝对自由的进出。有的域与域之间没有建立合作关系,不能相互建立连接;有的域在收取一定的费用后为其他域提供转发业务。为了适应域间策略需求,本发明添加域路径约束条件3:pPCE计算域路径时需考虑每个域相对另一个域的转发的代价和域信任度,结合各种限制条件计算出一条合理的域路径,本实施例pPCE结合申请号2016105187969基于D-S证据和博弈理论的多域光网络信任模型发明专利中的光路链路信任度计算公式和3条约束条件,计算出多条信任度最高的域内路,选择计算结果中最可信的域路径作为该光路指定的域路径。

若步骤33中的头域cPCE和尾域cPCE计算的域内路径段及可用波长,无法找到匹配的抽象高速路由时,则使用优化方法来建立光路,该方法将替代步骤33,具体过程如下:

步骤34,光路可用波长的计算

Step1,cPCE计算路径段可用波长

pPCE计算光路可用波长依赖于cPCE计算得到的各路径段能够使用的波长。pPCE向cPCE下发光路的域路径后,cPCE向pPCE提供路径段可用波长。

将每个自治域中的路径段可用波长数据结构定义为:(路径段头节点,路径段尾节点:头尾节点可使用波长的集合);例如(m7,m6:{λ1,λ3,λ4,λ8,λ40})表示在m7和m6之间存在连通的空闲波长λ1,λ3,λ4,λ8,λ40。

cPCEi通过查找路径段可用波长数据结构,得到头尾节点可使用波长的集合,即为空闲波长集合;

Step2,pPCE计算光路可用波长

①pPCE下发域路径给相关域的cPCEi;所述相关域是指,域路径经过的自治域;

(a)若pPCE给域路径的头域cPCEi下发域路径,则该头域cPCEi计算头节点到下游域的所有网关节点之间的路径段可用波长;

(b)若pPCE给域路径的尾域cPCEi下发域路径,要求尾域cPCEi计算尾节点到上游域的所有网关节点之间的路径段可用波长;

(c)pPCE给域路径的中间域cPCEi下发路径段,要求该cPCEi计算所有上游域网关节点到下游域网关节点之间的路径段可用波长;

所述下游域是指:本域在域路径的下一个域,如图5所示,从左至右分别为D1、D2、D3域,假设对一次请求计算的域路径为D1D2D3,则D1的下游域为D2,D2的下游域为D3;

所述上游域是指:本域在域路径的上一个域,如图5所示,从左至右分别为D1、D2、D3域,假设对一次请求计算的域路径为D1D2D3,则D2的上游域为D1,D3的上游域为D2;

②cPCE计算出路径段可用波长后,统计每个节点的可用波长,以m5为例,将包含m5的路径段的可用波长取并集,便得到m5的可用资源集合,记做F(m5);

然后将光路的路径段可用波长数据与节点可用波长数据传递给pPCE;

③pPCE收到所有相关域的cPCE对同一光路发来的光路的路径段可用波长数据与节点可用波长数据集合后,结合域间拓扑关系,得到该光路所有的路径段及其可用波长;如统计域间连接{m5,m7}资源时,将F(m5)和F(m7)取交集

④pPCE将该光路所有的路径段及其可用波长拼接为光路可用波长图,如图5所示:

将路径段的波长集合记在连线上,从头节点开始,将连线上的波长向下游连接线合并,计算该光路可用波长,合并规则如下:

(a)任选一连线作为当前连线,若当前连线没有上游连线,则该当前连线可进行波长合并,即为可合并上游连线;

(b)若该可合并上游连线与下游连线串联,则将该下游连线的波长集合修改为:该可合并上游连线波长与下游连线波长的交集,删除该可合并上游连线;

(c)若多个可合并的上游连线在同一节点汇聚,且该节点的多个可合并的上游连线均能够合并波长时,将该节点的任一下游连线的波长修改为:所有可合并的上游连线波长的并集与该下游连线波长的交集,当该节点下游的所有连线均合并了波长后,删除该节点所有可合并的上游连线;

本实施例以图5的光路可用波长图为例,相应节点间连线上的可用波长分别记做f1,f2,…,f18,经过合并后记做f′1,f′2,…,f′18,描述该光路从m1到m12的可选波长的计算过程:

1)连接线{m1,m2},{m1,m3},{m1,m4}没有上游连接,可进行波长合并,使得:

{m2,m5}波长修改为:f4′=f1∩f4;

{m3,m6}波长修改为:f5′=f2∩f5;

{m4,m6}波长修改为:f6′=f3∩f6;

随后删除{m1,m2},{m1,m3},{m1,m4},得到图6所示的中间结果。

2)将{m2,m5}的波长合并到{m5,m7},{m5,m8},{m5,m9}的波长中去,将他们的资源分别修改为f7′=f4′∩f7,f8′=f4′∩f8,f9′=f4′∩f9,随后删除{m2,m5},将{m3,m6},{m4,m6}的可用波长取并集f5′∪f6′合并到{m6,m7},{m6,m8},{m6,m9}的波长中去,将他们修改为:

f10′=f5′∪f6′∩f10;

f11′=f5′∪f6′∩f11;

f12′=f5′∪f6′∩f12;

随后删除{m3,m6},{m4,m6}。

3)用相同的方法处理中间连线,直至处理到与尾节点相连的连接,此时{m10,m12}上的资源修改成了f17′,{m11,m12}上的资源修改成f18′,则本光路的可选波长集合为:f17′∪f18′。

步骤35,通过步骤34得到的光路可选波长,指派波长及网关节点;

(1)建立光网络同步的建路周期

为了提高PCE利用率,全网使用图7所示的建路周期,设一个建路周期在t0时刻到t4时刻完成,下一周期的t0时刻等于本周期的t4时刻;

由于单个光路建立需要一定时间,如果一个光路建立完成后才能建立下一个光路,将极大地浪费节点资源和PCE利用率。为了解决这个问题,本文通过建立全网同步的建路周期,将光路建立的时序进行分解,设计一套多个跨域光路并行建路的方案。具体过程如下:

①整个建路周期内可以随时提交光路请求,可以对已经指派的路径建路。然后按步骤33的方法先进行抽象高速路由的适配,如果能够使用抽象高速路由,则直接使用;若不能使用,则该光路请求由cPCE提交给pPCE,将在下一个周期的t0-t1时刻进行处理。

②整个周期内随时回收释放的资源,并在TED中进行实时的更新。

③当上一个周期的光路没有分配高速路由时,本周期t0-t1时间,各相关cPCE依据t0时刻TED中的拓扑结构为该光路计算路径段可选波长,cPCE必须在t1时刻前提交pPCE,未计算的光路请求推迟到下一周期计算。

④本周期t1-t2时间段,pPCE为本周期t0-t1时间段内cPCE提交的路径段可选波长进行处理,在t2时刻前将各处理的光路的指派资源和网关节点下发cPCE。

⑤本周期t2-t3时间段,cPCE依据实时的拓扑结构,为各光路计算路径段,并在t3时刻前计算完毕。

⑥在t3时刻,cPCE统一将本周期将使用的光路的资源在各波长子域拓扑结构中删除,而后向路径段尾节点下发该路由,在t4时刻前下发完毕。

(2)波长指派

pPCE在一个建路周期内接收并处理了所有cPCE提交的光路可选波长后,整合为一张光路可选波长表,表中包括光路的标识LinkID,请求提交时间LinkTime,光路径过的域的集合LinkDom,光路建立可选的波长LinkCourse,可选波长的数量CourseNumber;如图8所示。

pPCE依据光路可选波长表,给光路指派波长,具体过程如下:

①pPCE按照光路排序的先后顺序对光路可选波长进行分配:

(a)按CourseCount排序,CourseCount值大的排序在前;

(b)当CourseCount相同时,把LinkCourse相同的光路放入一个光路集合中,记该光路集合中的光路个数为Count;在CourseCount相同的前提下,Count值大的光路集合排序在前,光路集合内部的元素按LinkTime排序,LinkTime值小的排序在前。

(c)当光路集合的CourseCount相同,LinkCourse不同,Count相同时,光路集合按集合中排序的第一个光路的LinkTime值排序,该LinkTime值小的光路集合排序在前。

②选择排序后的最前面一个光路作为一个路径,在该路径的波长集合中任选一个波长λt,将波长λt指派为该路径的波长,检查该路径上的所有域节点经过的其他光路,如果这些光路可选波长包含λt,则去除该光路的可选波长λt;如果可选波长λt为该路径唯一可选波长,则pPCE在排序队列中删除该光路,并将该光路记录为本建路周期无法分配波长的光路,通知头域在下一建路周期再次提交光路建立请求;

③返回步骤①,直到队列中无光路,波长指派结束;

(3)pPCE指派网关节点和cPCE计算域内路径段

pPCE指派好波长后将为每个光路分配网关节点:

Step1,pPCE在步骤(2)指派波长的光路可用波长图(图10)中,保留该指派波长能通过的节点和链路,得到可选的路由网络,再从可选的路由网络计算得到所有的抽象域路径,本实施例采用申请号2016105187969基于D-S证据和博弈理论的多域光网络信任模型发明专利中的链路信任度的计算方法,计算出最为可信的链路,将该路径对应的网关节点指派给该光路,最后下发cPCE指派的波长及网关节点;

Step2,cPCE收到指派的波长及网关节点后,依据当前时刻的波长子域信息,本实施例采用申请号2016105187969基于D-S证据和博弈理论的多域光网络信任模型发明专利中的链路信任度的计算方法,对光路进行最佳路径段的选择,将其他可信路由结果按信任度由高向低排序充当备份路由,在cPCE指派的路由出现故障时再使用;若排序最后的备份路由也无法建立光路径段时,故障点发送ERROR类消息,表示该光路建立失败。

所述多域光网络安全光路建立协议还包括:GO-PCE协议,所述GO-PCE协议在现有的PCEP协议中增加6个新的PCEP消息:

①D-RESV:pPCE将指派的波长及网关节点通过该消息发送给cPCE,要求各域使用该消息计算域内路径段。

②D-RESV-CONF:该消息由每个域的路径段头节点产生,并提交给cPCE,cPCE将该消息转发给pPCE,表明该域内路径段成功完成波长配置。

③ERROR:该消息由路径段尾节点接收到上游节点发来的RESV-ERROR(RSVP-TE消息)后产生,包含故障信息和光路的标签标识,之后沿着D-RESV消息回溯,直到释放该光路建立的所有RESV和D-RESV预留的资源,如果在头域发生故障,头域cPCE将在收到ERROR消息后向源节点发送ERROR消息,通知源节点本次建路失败。

④ERROR-DONE:当路径段头节点收到域内的ERROR后,产生此消息发送给域内cPCE,表明波长已释放,cPCE依据ERROR-DONE修改其TED消息。

⑤D-OK:当pPCE收到光路所有相关cPCE的D-RESV-CONF后,将产生此消息并发送至源节点,表明跨域光路已成功建立,可发送数据。

⑥OVER:当域内尾节点收到上游节点发来的RESV_TEAR(RSVP-TE消息)后,发送一个OVER消息给cPCE,cPCE即对TED信息进行更新。

为了简化协议流程的表述,定义以下12个函数模块:

①F_Identity(A):向生称自己为A的网络实体进行身份认证。若身份认证通过,则跳出本函数;否则,结束此次通信建立过程。

②F_Data:对收到的消息进行源认证。若源认证通过,则跳出本函数;否则,向LMP模块发送ERROR消息,结束此次通信建立过程。

③F_Pri:用其私钥进行签名。

④F_Pub(A):用A公钥进行解密。

⑤F_Session_Key:对需要发送的数据通过会话密钥加密,或对接收到的消息通过会话密钥解密。

⑥F_H_Key_cPCE:对需要发送的数据通过cPCE层组密钥进行加密,或对接收到的消息通过cPCE层组密钥解密。

⑦F_H_Key_Domain:对需要发送的数据通过自治域层组密钥进行加密,或对接收到的消息通过自治域层组密钥解密。

⑧F_Trust_Domain_Path:计算最可信的抽象域路径。

⑨F_Wave_cPCE:计算路径段可选波长。

⑩F_Recourse_pPCE:pPCE在接收到所有相关cPCE发来的路径段可选波长的基础上,统一在本建路周期的t1-t2时间段内对上一周期滞留的所有路径计算请求使用步骤35的方法计算指派波长和网关节点;若处理本周期信提交的PCReq,则按照步骤33中的方法对该路径匹配抽象高速路由;若存在匹配的抽象高速路由,则直接用抽象高速路由建立光路。

F_Recourse_cPCE:cPCE利用D-RESV中选定的波长和网关节点及当前的波长子域拓扑结构,结合申请号2016105187969基于D-S证据和博弈理论的多域光网络信任模型发明专利中的的方法,计算出一条信任度最高的域内路径段。

F_Error:任何网络实体收到转发来的ERROR消息时,该ERROR消息沿着RESV消息的建立方向回溯并释放资源;若发生消息篡改或源认证未通过或产生攻击时,由LMP模块迅速向cPCE上报ERROR消息;若故障节点向光路域内尾节点方向发送RESV-ERROR消息释放预留好的资源,尾节点向cPCE上交ERROR消息,cPCE在备份路由中选择信任度最高的路径段,使用同样的指派波长,否则将ERROR消息上报pPCE。故障处理过程见图10。

本发明通过图9所示案例,对GO-PCE在一个建路周期内的具体协议流程进行介绍。该案例中,m1为源节点,m1所在域D1的cPCE为cPCE1;m12为目的节点,m12所在域D2的cPCE为cPCE3。图中步骤按顺时针方向在箭头两侧排列。

(1)源节点m1将源、目节点的IP地址信息(m1,m12)放到PCReq中,作为发送消息,调用F_Identity(cPCE1)、F_Session_Key,发送给cPCE1。

(2)cPCE1调用F_Identity(m1)、F_Data、F_Session_Key,然后对m12是否在D1中进行判断,由于m12不在D1中,于是cPCE1成为该光路径请求的头域cPCE,将cPCE1的IP地址放入m1发来的PCReq中,作为发送消息,调用F_Identity(pPCE)、F_Session_Key,发送给pPCE。

(3)pPCE调用F_Identity(cPCE1)、F_Data、F_Session_Key,得到目的节点为m12,然后将m12封装在搜索节点消息中作为发送消息,调用F_H_Key_cPCE,向除cPCE1以外的所有cPCE洪泛式寻找m12。

(4)各cPCE调用F_Identity(pPCE1)、F_Data、F_H_Key_cPCE,得到目的节点为m12,然后比对本地TED,若m12在本域内,则该cPCE(本案例为cPCE3)将m12及该cPCE的IP地址封装在目的节点位置消息中作为发送消息,调用F_H_Key_cPCE,发送给pPCE。

(5)pPCE调用F_Data、F_H_Key_cPCE,依据其TED中的信息,调用F_Trust_Domain_Path。

(6)pPCE将最可信的域路径封装在PCRep中作为发送消息,调用F_H_Key_cPCE,发送给cPCE1、cPCE3,要求它们其提供路径段可选波长,然后进入步骤(8)。

(7)pPCE将最可信的域路径封装在PCRep中作为发送消息,调用F_H_Key_cPCE、将发送给中除cPCE1、cPCE3外的其他cPCE,要求它们其提供路径段可选波长,进入步骤(8)。

(8)被要求提供路径段可选波长的cPCE调用F_Data、F_H_Key_cPCE,依据其TED中的信息,调用F_Wave_cPCE,将计算结果封装在PCRep中作为发送消息,调用F_H_Key_cPCE,发送给pPCE。

(9)pPCE调用F_Data、F_H_Key_cPCE、F_Recourse_pPCE,将完整的光路由及波长封装在D-RESV消息中作为发送消息,调用F_H_Key_cPCE,发送给相关的cPCE。

(10)各cPCE调用F_Data、F_H_Key_cPCE、F_Recourse_cPCE,然后把指派的路由和波长信息封装在D-RESV中作为发送消息,调用F_Identity(该光路径在本域内的尾节点)、F_Pri、F_H_Key_Domain,发送给该光路径在本域内的尾节点,命令其进行建路,若发生故障,则调用F_Error。

(11)各路径段尾节点调用F_Identity(其域内cPCE)、F_Data、F_H_Key_Domain、F_Pub(其域内cPCE),得到路由和波长,立即启动无PATH消息的RSVP-TE协议,将cPCE签名的建路信息封装在RESV消息中作为发送消息,调用F_Identity(下游节点),F_H_Key_Domain,发送至上游节点和下游域的网关节点。各中间节点调用F_Identity(上游节点)、F_Data、F_H_Key_Domain、F_Pub(其域内cPCE),按cPCE的要求配置波长,调用F_Identity(下游节点),F_H_Key_Domain,向上游节点转发该RESV消息。当该RESV消息传递至路径段的头节点时,说明本域内路径段配置成功,路径段头节点调用F_Identity(其域内cPCE),将光路资源预留确定消息D-RESV-CONF作为发送消息,调用F_Session_Key,发送至其域内cPCE。若建路过程中发生故障,则调用F_Error。

(12)cPCE调用F_Identity(该路径段头结点)、F_Data,如果判断该消息被篡改,则调用F_Error,否则将D-R

ESV-CONF消息作为发送消息,调用F_H_Key_cPCE,转发至pPCE。

(13)若pPCE调用F_Data、F_H_Key_cPCE,若pPCE未收到该光路计算请求的ERROR消息,则产生D-OK消息作为发送消息,调用F_H_Key_cPCE,发送至cPCE1,若pPCE收到ERROR消息,则调用F_Error。

(14)cPCE调用F_H_Key_cPCE、F_Data,将D-OK消息作为发送消息,调用F_Session_Key,发送至m1。

(15)m1调用F_Data、F_Session_Key,开始向m12发送数据。若在光传输阶段出现故障,则调用F_Error。

(16)当通信完成后,m1将RESV_TEAR作为发送消息,调用F_H_Key_Domain,向m12方向发送,中间节点对RESV_TEAR消息调用F_Data、F_H_Key_Domain,通过域间网关节点时,上游网关节点对RESV_TEAR消息调用F_Data、F_Session_Key转发给下一个域的头节点。当每个域的尾节点收到RESV_TEAR后,产生OVER消息作为发送消息,调用F_Session_Key,发送至其域内cPCE,cPCE再对TED进行更新,释放PCEP连接。

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