1.一种基于主干路径递归扩展的网络拓扑重构方法,使用了与域间路径标识序列mpid对应的域间路径标识前缀序列mpx;其特征在于包括有下列步骤:
步骤一,获取跳数最大-域间路径标识序列集;
步骤二,主干路径的节点构建;
步骤三,基于主干路径的递归扩展构建骨干-域间网络拓扑结构图g骨干;
步骤四,基于骨干-域间网络拓扑结构图g骨干的递归扩展构建混合-域间网络拓扑结构图g混合;
步骤五,失配-域间路径标识序列的再分配完成带失配节点的域间网络拓扑结构图的扩展;
详细地:
步骤101,获取待分析-域间路径标识序列集;
从观察节点a收集到的请求消息中获取域间路径标识序列,构成待分析-域间路径标识序列的集合,记为ssequence,且ssequence={mpid1,mpid2,…,mpida,…,mpidy};执行步骤102;
mpid1表示第一个域间路径标识序列;
mpid2表示第二个域间路径标识序列;
mpida表示第a个域间路径标识序列,下角标a表示域间路径标识序列的序号;
mpidy表示最后一个域间路径标识序列,下角标y表示域间路径标识序列的总数;
步骤102,将待分析-域间路径标识序列集中具有最大跳数的域间路径标识序列的跳数值记录出来;
记录所述ssequence中各个域间路径标识序列的跳数值,记为hop,且hop≥1;另外,最大跳数值,记为hopmax;执行步骤103;
步骤103,将待分析-域间路径标识序列集中具有相同最大跳数的域间路径标识序列记录出来;
从所述ssequence中选取出具有相同最大跳数的域间路径标识序列,从而构成了跳数最大-域间路径标识序列集合,记为slongest,且slongest={smpid首位,ssanalysis};
smpid首位表示从ssequence中选取出的第一个具有相同最大跳数的域间路径标识序列;执行步骤201;
ssanalysis表示从ssequence中选取出的除smpid首位以外的所有具有相同最大跳数的域间路径标识序列构成的集合,称为匹配节点-域间路径标识序列集;
所述ssanalysis={smpid1,smpid2,…,smpids,…,smpids};
若ssanalysis=0,执行步骤201和步骤401;
若ssanalysis≥1,执行步骤201、步骤301和步骤401;
smpid1表示与主干路径匹配的第一个域间路径标识序列;
smpid2表示与主干路径匹配的第二个域间路径标识序列;
smpids表示与主干路径匹配的第s个域间路径标识序列,下角标s表示与主干路径匹配的域间路径标识序列的序号;
smpids表示与主干路径匹配的最后一个域间路径标识序列,下角标s表示与主干路径匹配的域间路径标识序列的总数;
步骤二,主干路径的节点构建;
步骤201,初始化,构建一个空的域间网络拓扑结构图g;
两个节点之间的连线,称为域间网络拓扑结构图g的边;
步骤202,以观察节点作为网络拓扑结构图的起始节点;
将观察节点a添加到空的域间网络拓扑结构图g中作为起始节点p0;所述起始节点p0的节点状态信息,记为
步骤203,确认增加节点个数;
依据步骤102记录的最大跳数值hopmax,确定出除起始节点p0以外的增加节点个数;而增加节点个数等于域间路径标识序列的最大跳数值hopmax;
步骤204,主干路径选取;
从步骤103获得的跳数最大-域间路径标识序列集slongest={smpid首位,ssanalysis}中选取smpid首位,并以smpid首位作为空的域间网络拓扑结构图g中主干路径进行节点构建;
所述smpid首位对应的域间路径标识序列,记为mpid首位;mpid首位对应的域间路径标识前缀序列记为mpx首位;
步骤205,处理最大跳数值中增加的第一个节点;
继起始节点p0后向空的网络拓扑结构图g中新增一个节点,记为第一个节点p1;新建一条自起始节点p0至第一个节点p1的边,所述边对应的域间路径标识前缀为mpx首位中的第一跳,也是hopmax的第一跳;
第一个节点p1维护着一个四元组的节点状态信息,记为
步骤206,处理最大跳数值中增加的第二个节点;
继匹配第一个节点p1后向空的网络拓扑结构图g中新增一个节点,记为第二个节点p2;新建一条自第一个节点p1至第二个节点p2的边,所述边对应的域间路径标识前缀为mpx首位中的第二跳,也是hopmax的第二跳;
第二个节点p2维护着一个四元组的节点状态信息,记为
步骤207,处理最大跳数值中增加的任意一个节点;
继匹配第二个节点p2后向空的网络拓扑结构图g中新增一个节点,记为主干路径上的任意一个节点pw;新建一条自第二个节点p2至任意一个节点pw的边,所述边对应的域间路径标识前缀为mpx首位中的经第二跳后的任意一跳,也是hopmax中的经第二跳后的任意一跳;
主干路径上的任意一个节点pw维护着一个四元组的节点状态信息,记为
步骤208,处理最大跳数值中增加的最后一个节点;
继匹配任意一个节点pw后向空的网络拓扑结构图g中新增一个节点,记为主干路径上的最后一个节点pv;新建一条自主干路径上的节点pw至主干路径上的最后一个节点pv的边,所述边对应的域间路径标识前缀为mpx首位中的最后一跳,也是hopmax的最后一跳;
主干路径上的最后一个节点pv维护着一个四元组的节点状态信息,记为
节点pw与节点pv不是同一节点;
步骤209,获得主干路径;
经过步骤204至步骤208的处理,得到了自初始节点p0顺次经第一个节点p1、第二个节点p2、主干路径上的任意一个节点pw至主干路径上的最后一个节点pv,满足了hopmax,将域间路径标识序列mpid首位存储到节点pv的
步骤三,基于主干路径的递归扩展构建骨干-域间网络g骨干;
在依据基于主干路径的递归扩展构建得到的骨干-域间网络拓扑结构图g骨干中,先要判断匹配节点-域间路径标识序列集ssanalysis中是否存在有元素;
若ssanalysis≥1,采用g-mpx方法对ssanalysis中各个元素顺次进行与主干路径的递归扩展构建网络,直到完成最后一个元素与主干路径的递归扩展构建网络,从而得到骨干-域间网络拓扑结构图g骨干;
若ssanalysis=0,说明匹配节点-域间路径标识序列集ssanalysis中没有元素了,主干路径成为了骨干-域间网络拓扑结构图g骨干;
步骤301,记录匹配节点-域间路径标识序列集;
选取经步骤103获得的ssanalysis,ssanalysis不为空集(ssanalysis≥1),即ssanalysis={smpid1,smpid2,…,smpids,…,smpids};执行步骤302;
分别提取出ssanalysis={smpid1,smpid2,…,smpids,…,smpids}中各个元素的域间路径标识序列和域间路径标识前缀序列;
从ssanalysis中提取出smpids对应的域间路径标识序列,记为
从ssanalysis中提取出smpids对应的域间路径标识序列,记为
若
若
ssanalysis为空集(ssanalysis=0),执行步骤401;也就是说直接在步骤209中获得的主干路径上,依据g-mpx方法对其他-域间路径标识序列集s其他={rmpid1,rmpid2,…,rmpidr,…,rmpidr}中的各个元素顺次进行与主干路径变成的骨干-域间网络的匹配构建网络处理,从而得到混合-域间网络拓扑结构图g混合;
步骤302,采用g-mpx方法对ssanalysis中第一个元素的匹配与分枝处理;
从ssanalysis中选取出smpid1,提取出smpid1对应的域间路径标识序列,记为
主干路径下、配合跳数值的匹配与分枝的逐跳处理;
(a),将mpx6中的第一跳与主干路径的域间路径标识前缀序列mpx首位中的第一跳进行匹配;匹配成功,节点有序位置至节点p1处,节点p1维护节点状态信息为
因此,
(b),将mpx6中的第二跳与主干路径的域间路径标识前缀序列mpx首位中的第二跳进行匹配;匹配失败,继节点p1后新增第五个节点p5,新建一条自节点p1至第五个节点p5的边,所述边对应的域间路径标识前缀为mpx6中的第二跳;第五个节点p5维护着一个四元组的节点状态信息,记为
因此,
(c),继第五个节点p5后新增第六个节点p6,新建一条自第五个节点p5至第六个节点p6的边,所述边对应的域间路径标识前缀为mpx6中的第三跳;第六个节点p6维护着一个四元组的节点状态信息,记为
因此,
(d),继第六个节点p6后新增第七个节点p7,新建一条自第六个节点p6至第七个节点p7的边,所述边对应的域间路径标识前缀为mpx6中的第四跳;第七个节点p7维护着一个四元组的节点状态信息,记为
由于满足了hopmax,所述
步骤303,采用g-mpx方法对ssanalysis中第二个元素的匹配与分枝处理;
从ssanalysis中选取smpid2,提取出smpid2对应的mpid10和mpx10;
mpid10对应的是<1.2.13.32,2.9.102.75,3.6.28.81,4.9.36.45>;
mpx10对应的是<1.2.0.0,2.9.0.0,3.6.0.0,4.9.0.0>;
比较ssanalysis中第二个元素与位于第二个元素之前的所有元素的域间路径标识前缀序列;
mpid6对应的是<1.2.123.34,2.9.12.7,3.6.8.1,4.9.6.5>;
mpx6对应的是<1.2.0.0,2.9.0.0,3.6.0.0,4.9.0.0>;
比较mpx10与mpx6是相同的,将mpid10加入到已经获得的
步骤304,采用g-mpx方法对ssanalysis中第三个元素的匹配与分枝处理;
从ssanalysis中选取smpid3,并从smpid3提取出mpid16和mpx16;
mpid16的序列是<1.2.16.29,2.4.14.83,5.32.23.29,2.15.28.5>;
mpx16的序列是<1.2.0.0,2.4.0.0,5.32.0.0,2.15.0.0>;
比较ssanalysis中第三个元素与位于第三个元素之前的所有元素的域间路径标识前缀序列;
mpid6对应的是<1.2.123.34,2.9.12.7,3.6.8.1,4.9.6.5>;
mpx6对应的是<1.2.0.0,2.9.0.0,3.6.0.0,4.9.0.0>;
mpid10对应的是<1.2.13.32,2.9.102.75,3.6.28.81,4.9.36.45>;
mpx10对应的是<1.2.0.0,2.9.0.0,3.6.0.0,4.9.0.0>;
mpid16的序列是<1.2.16.29,2.4.14.83,5.32.23.29,2.15.28.5>;
mpx16的序列是<1.2.0.0,2.4.0.0,5.32.0.0,2.15.0.0>;
将mpx16分别与smpid1的mpx6、smpid2的mpx10进行对比是否相同;mpx16不同于mpx6和mpx10,从起始节点开始进行匹配处理;
主干路径下、配合跳数值的匹配与分枝的逐跳处理;
(a),将mpx16(即<1.2.0.0,2.4.0.0,5.32.0.0,2.15.0.0>)中的第一跳1.2.0.0/16与主干路径的域间路径标识前缀序列mpx1(即<1.2.0.0,2.4.0.0,5.7.0.0,4.9.0.0>)中的第一跳1.2.0.0/16进行匹配;匹配成功,节点有序位置至节点p1处,节点p1维护节点状态信息为
因此,
(b),将mpx16(即<1.2.0.0,2.4.0.0,5.32.0.0,2.15.0.0>)中的第二跳2.4.0.0/16与主干路径的域间路径标识前缀序列mpx1(即<1.2.0.0,2.4.0.0,5.7.0.0,4.9.0.0>)中的第二跳2.4.0.0/16进行匹配;匹配成功,节点有序位置至节点p2处,第二个节点p2维护着一个四元组的节点状态信息,记为
因此,
(c),将mpx16(即<1.2.0.0,2.4.0.0,5.32.0.0,2.15.0.0>)中的第三跳5.32.0.0/16与主干路径的域间路径标识前缀序列mpx1(即<1.2.0.0,2.4.0.0,5.7.0.0,4.9.0.0>)中的第三跳5.7.0.0/16进行匹配;匹配失败,继第二个节点p2后新增第八个节点p8,新建一条自第二个节点p2至第八个节点p8的边,所述边对应的域间路径标识前缀为mpx16(即<1.2.0.0,2.4.0.0,5.32.0.0,2.15.0.0>)中的第三跳5.32.0.0/16;第八个节点p8维护着一个四元组的节点状态信息,记为
因此,
(d),继第八个节点p8后新增第九个节点p9,新建一条自第八个节点p8至第九个节点p9的边,所述边对应的域间路径标识前缀为mpx16(即<1.2.0.0,2.4.0.0,5.32.0.0,2.15.0.0>)中的第四跳2.15.0.0/16;第九个节点p9维护着一个四元组的节点状态信息,记为
由于hopmax=4,此处为第四跳,所述
步骤305,采用g-mpx方法对ssanalysis中第四个元素的匹配与分枝处理;
从sanalysis中选取smpid4,并从smpid4提取出mpid17和mpx17;
mpid17的序列是<1.2.25.129,2.4.104.36,5.32.213.209,3.6.28.5>;
mpx17的序列是<1.2.0.0,2.4.0.0,5.32.0.0,3.6.0.0>;
比较ssanalysis中第四个元素与位于第四个元素之前的所有元素的域间路径标识前缀序列;
mpid6对应的是<1.2.123.34,2.9.12.7,3.6.8.1,4.9.6.5>;
mpx6对应的是<1.2.0.0,2.9.0.0,3.6.0.0,4.9.0.0>;
mpid10对应的是<1.2.13.32,2.9.102.75,3.6.28.81,4.9.36.45>;
mpx10对应的是<1.2.0.0,2.9.0.0,3.6.0.0,4.9.0.0>;
mpid16的序列是<1.2.16.29,2.4.14.83,5.32.23.29,2.15.28.5>;
mpx16的序列是<1.2.0.0,2.4.0.0,5.32.0.0,2.15.0.0>;
mpid17的序列是<1.2.25.129,2.4.104.36,5.32.213.209,3.6.28.5>;
mpx17的序列是<1.2.0.0,2.4.0.0,5.32.0.0,3.6.0.0>;
将mpx17分别与smpid1的mpx6、smpid2的mpx10、smpid3的mpx16进行对比是否相同;mpx17不同于mpx6、mpx10和mpx16,从起始节点开始进行匹配处理;
主干路径下、配合跳数值的匹配与分枝的逐跳处理;
(a),将mpx17(即<1.2.0.0,2.4.0.0,5.32.0.0,3.6.0.0>)中的第一跳1.2.0.0/16与主干路径的域间路径标识前缀序列mpx1(即<1.2.0.0,2.4.0.0,5.7.0.0,4.9.0.0>)中的第一跳1.2.0.0/16进行匹配;匹配成功,节点有序位置至节点p1处,节点p1维护节点状态信息为
因此,
(b),将mpx17(即<1.2.0.0,2.4.0.0,5.32.0.0,3.6.0.0>)中的第二跳2.4.0.0/16与主干路径的域间路径标识前缀序列mpx1(即<1.2.0.0,2.4.0.0,5.7.0.0,4.9.0.0>)中的第二跳2.4.0.0/16进行匹配;匹配成功,节点有序位置至节点p2处,第二个节点p2维护着一个四元组的节点状态信息,记为
因此,
(c),将mpx17(即<1.2.0.0,2.4.0.0,5.32.0.0,3.6.0.0>)中的第三跳5.32.0.0/16与主干路径的域间路径标识前缀序列mpx1(即<1.2.0.0,2.4.0.0,5.7.0.0,4.9.0.0>)中的第三跳5.7.0.0/16进行匹配;匹配失败,对比与第二个节点p2连通的节点;
第二个节点p2至第三个节点p3的边,所述边对应的域间路径标识前缀为mpx1(<1.2.0.0,2.4.0.0,5.7.0.0,4.9.0.0>)中的第三跳5.7.0.0/16;
第二个节点p2至第八个节点p8的边,所述边对应的域间路径标识前缀为mpx16(即<1.2.0.0,2.4.0.0,5.32.0.0,2.15.0.0>)中的第三跳5.32.0.0/16;
将mpx17(即<1.2.0.0,2.4.0.0,5.32.0.0,3.6.0.0>)中的第三跳5.32.0.0/16与mpx16(即<1.2.0.0,2.4.0.0,5.32.0.0,2.15.0.0>)中的第三跳5.32.0.0/16进行匹配;匹配成功,节点有序位置至第八个节点p8处,第八个节点p8维护着一个四元组的节点状态信息,记为
因此,
(d),继第八个节点p8后新增第十个节点p10,新建一条自第八个节点p8至第十个节点p10的边,所述边对应的域间路径标识前缀为mpx17(即<1.2.0.0,2.4.0.0,5.32.0.0,3.6.0.0>)中的第四跳3.6.0.0/16;第十个节点p10维护着一个四元组的节点状态信息,记为
由于hopmax=4,此处为第四跳,所述
步骤306,采用g-mpx方法对ssanalysis中第五个元素的匹配与分枝处理;
从sanalysis中选取smpid5,并从smpid5提取出mpid18和mpx18;
mpid18的序列是<1.2.3.47,2.4.124.26,5.32.2.29,3.6.218.65>;
mpx18的序列是<1.2.0.0,2.4.0.0,5.32.0.0,3.6.0.0>;
比较ssanalysis中第五个元素与位于第五个元素之前的所有元素的域间路径标识前缀序列;
mpid6对应的是<1.2.123.34,2.9.12.7,3.6.8.1,4.9.6.5>;
mpx6对应的是<1.2.0.0,2.9.0.0,3.6.0.0,4.9.0.0>;
mpid10对应的是<1.2.13.32,2.9.102.75,3.6.28.81,4.9.36.45>;
mpx10对应的是<1.2.0.0,2.9.0.0,3.6.0.0,4.9.0.0>;
mpid16的序列是<1.2.16.29,2.4.14.83,5.32.23.29,2.15.28.5>;
mpx16的序列是<1.2.0.0,2.4.0.0,5.32.0.0,2.15.0.0>;
mpid17的序列是<1.2.25.129,2.4.104.36,5.32.213.209,3.6.28.5>;
mpx17的序列是<1.2.0.0,2.4.0.0,5.32.0.0,3.6.0.0>;
mpid18的序列是<1.2.3.47,2.4.124.26,5.32.2.29,3.6.218.65>;
mpx18的序列是<1.2.0.0,2.4.0.0,5.32.0.0,3.6.0.0>;
将smpid5的mpx18分别与smpid1的mpx6、smpid2的mpx10、smpid3的mpx16、smpid4的mpx17进行对比是否相同;mpx18不同于mpx6、mpx10和mpx16,但是mpx18与mpx17是相同的,需要将mpid18(即<1.2.3.47,2.4.124.26,5.32.2.29,3.6.218.65>)加入到已经获得的
步骤307,采用g-mpx方法对ssanalysis中第六个元素的匹配与分枝处理;
从sanalysis中选取smpid6,并从smpid6提取出mpid25和mpx25;
mpid25的序列是<1.10.29.52,8.1.64.68,10.5.10.92,2.4.9.6>;
mpx25的序列是<1.10.0.0,8.1.0.0,10.5.0.0,2.4.0.0>;
比较ssanalysis中第六个元素与位于第六个元素之前的所有元素的域间路径标识前缀序列;
mpid6对应的是<1.2.123.34,2.9.12.7,3.6.8.1,4.9.6.5>;
mpx6对应的是<1.2.0.0,2.9.0.0,3.6.0.0,4.9.0.0>;
mpid10对应的是<1.2.13.32,2.9.102.75,3.6.28.81,4.9.36.45>;
mpx10对应的是<1.2.0.0,2.9.0.0,3.6.0.0,4.9.0.0>;
mpid16的序列是<1.2.16.29,2.4.14.83,5.32.23.29,2.15.28.5>;
mpx16的序列是<1.2.0.0,2.4.0.0,5.32.0.0,2.15.0.0>;
mpid17的序列是<1.2.25.129,2.4.104.36,5.32.213.209,3.6.28.5>;
mpx17的序列是<1.2.0.0,2.4.0.0,5.32.0.0,3.6.0.0>;
mpid18的序列是<1.2.3.47,2.4.124.26,5.32.2.29,3.6.218.65>;
mpx18的序列是<1.2.0.0,2.4.0.0,5.32.0.0,3.6.0.0>;
mpid25的序列是<1.10.29.52,8.1.64.68,10.5.10.92,2.4.9.6>;
mpx25的序列是<1.10.0.0,8.1.0.0,10.5.0.0,2.4.0.0>;
将smpid6的mpx25分别与smpid1的mpx6、smpid2的mpx10、smpid3的mpx16、smpid4的mpx17、smpid5的mpx18进行对比是否相同;mpx25不同于mpx6、mpx10、mpx16、mpx17和mpx18,从起始节点开始进行匹配处理;
主干路径下、配合跳数值的匹配与分枝的逐跳处理;
(a),将mpx25(即<1.10.0.0,8.1.0.0,10.5.0.0,2.4.0.0>)中的第一跳1.10.0.0/16与主干路径的域间路径标识前缀序列mpx1(即<1.2.0.0,2.4.0.0,5.7.0.0,4.9.0.0>)中的第一跳1.2.0.0/16进行匹配;匹配失败,继起始节点p0后新增第十一个节点p11,新建一条自起始节点p0至第十一个节点p11的边,所述边对应的域间路径标识前缀为mpx25(即<1.10.0.0,8.1.0.0,10.5.0.0,2.4.0.0>)中的第一跳1.10.0.0/16;第十一个节点p11维护节点状态信息为
因此,
(b),继第十一个节点p11后新增第十二个节点p12,新建一条自第十一个节点p11至第十二个节点p12的边,所述边对应的域间路径标识前缀为mpx25(即<1.10.0.0,8.1.0.0,10.5.0.0,2.4.0.0>)中的第二跳8.1.0.0/16;第十二个节点p12维护着一个四元组的节点状态信息,记为
因此,
(c),继第十二个节点p12后新增第十三个节点p13,新建一条自第十二个节点p12至第十三个节点p13的边,所述边对应的域间路径标识前缀为mpx25(即<1.10.0.0,8.1.0.0,10.5.0.0,2.4.0.0>)中的第三跳10.5.0.0/16;第十三个节点p13维护着一个四元组的节点状态信息,记为
因此,
(d),继第十三个节点p13后新增第十四个节点p14,新建一条自第十三个节点p13至第十四个节点p14的边,所述边对应的域间路径标识前缀为mpx25(即<1.10.0.0,8.1.0.0,10.5.0.0,2.4.0.0>)中的第四跳2.4.0.0/16;第十四个节点p14维护着一个四元组的节点状态信息,记为
由于hopmax=4,此处为第四跳,所述
步骤308,采用g-mpx方法对ssanalysis中第七个元素的匹配与分枝处理;
从sanalysis中选取smpid7,并从smpid7提取出mpid27和mpx27;
mpid27的序列是<1.10.37.42,8.1.4.6,10.5.1.2,2.4.33.46>;
mpx27的序列是<1.10.0.0,8.1.0.0,10.5.0.0,2.4.0.0>;
比较ssanalysis中第七个元素与位于第七个元素之前的所有元素的域间路径标识前缀序列;
mpid6对应的是<1.2.123.34,2.9.12.7,3.6.8.1,4.9.6.5>;
mpx6对应的是<1.2.0.0,2.9.0.0,3.6.0.0,4.9.0.0>;
mpid10对应的是<1.2.13.32,2.9.102.75,3.6.28.81,4.9.36.45>;
mpx10对应的是<1.2.0.0,2.9.0.0,3.6.0.0,4.9.0.0>;
mpid16的序列是<1.2.16.29,2.4.14.83,5.32.23.29,2.15.28.5>;
mpx16的序列是<1.2.0.0,2.4.0.0,5.32.0.0,2.15.0.0>;
mpid17的序列是<1.2.25.129,2.4.104.36,5.32.213.209,3.6.28.5>;
mpx17的序列是<1.2.0.0,2.4.0.0,5.32.0.0,3.6.0.0>;
mpid18的序列是<1.2.3.47,2.4.124.26,5.32.2.29,3.6.218.65>;
mpx18的序列是<1.2.0.0,2.4.0.0,5.32.0.0,3.6.0.0>;
mpid25的序列是<1.10.29.52,8.1.64.68,10.5.10.92,2.4.9.6>;
mpx25的序列是<1.10.0.0,8.1.0.0,10.5.0.0,2.4.0.0>;
mpid27的序列是<1.10.37.42,8.1.4.6,10.5.1.2,2.4.33.46>;
mpx27的序列是<1.10.0.0,8.1.0.0,10.5.0.0,2.4.0.0>;
将smpid7的mpx27分别与smpid1的mpx6、smpid2的mpx10、smpid3的mpx16、smpid4的mpx17、smpid5的mpx18、smpid6的mpx25进行对比是否相同;mpx27不同于mpx6、mpx10、mpx16、mpx17和mpx18,但是mpx27与mpx25是相同的,需要将mpid27(即<1.10.37.42,8.1.4.6,10.5.1.2,2.4.33.46>)加入到已经获得的
由于hopmax=4,此处为第四跳,所述
重复执行步骤301至步骤308,直至ssanalysis中的所有同跳最长长度-域间路径标识序列与主干路径网络拓扑结构图匹配扩展完成;
此时,在满足hopmax的条件下、以及基于主干路径的递归扩展处理后,各节点维护的节点状态信息采用集合形式记录为,即骨干-域间网络拓扑结构图中各节点维护的节点状态信息集合,记为aeemp,且
步骤四,基于骨干-域间网络拓扑结构图g骨干的递归扩展构建混合-域间网络拓扑结构图g混合;
同样采用g-mpx方法对其他-域间路径标识序列集s其他中的各个元素,在骨干-域间网络拓扑结构图g骨干中进行逐跳对比匹配与分枝处理,得到的是混合-域间网络拓扑结构图g混合;在进行与所述g骨干的匹配构建网络处理之前,先要判断所述s其他中是否存在有元素;
若s其他≥1,采用g-mpx方法对s其他中各个元素顺次进行与所述g骨干的逐跳对比匹配与分枝处理构建网络,直到完成s其他中最后一个元素,得到混合-域间网络拓扑结构图g混合;然后执行步骤步骤501;
若s其他=0,说明s其他中没有元素了,骨干-域间网络拓扑结构图g骨干成为了最终构建的域间网络拓扑结构图g,同时也不进行步骤五的处理;
对混合-域间网络拓扑结构图g混合中的失配节点采用集合形式表达为mpu={u1,u2,…,ud,…,ud};mpu∈mp;其中:u1表示混合-域间网络拓扑结构图g混合中的第一个失配节点,u2表示混合-域间网络拓扑结构图g混合中的第二个失配节点,ud表示混合-域间网络拓扑结构图g混合中的第d个失配节点(也称为任意一个失配节点),d表示失配节点的标识号,ud表示混合-域间网络拓扑结构图g混合中的最后一个失配节点,d表示失配节点的总个数,d∈d,d<b;
第一个失配节点u1的节点状态信息,记为
从p0经u1后到ud,任意一个节点ud的节点状态信息,记为
从p0经u1、ud后到ud,最后一个节点ud的节点状态信息,记为
采用g-mpx方法对s其他中任意一个元素的匹配与分枝处理;
从s其他中选取出任意一个rmpidr,提取出rmpidr对应的域间路径标识序列,记为
aeemp表示骨干-域间网络拓扑结构图g骨干中所有节点维护的节点状态信息集合;
ud、ud-1和ud+1为不同的失配节点;
配合跳数值的匹配与分枝的逐跳处理;
匹配条件一(全部匹配成功),将
匹配条件二(全部匹配失败),将
匹配条件三(部分匹配成功或失败),将
步骤401,记录其他-域间路径标识序列集s其他;
经步骤三处理后,待分析-域间路径标识序列集ssequence中只剩下有其他-域间路径标识序列集s其他,且s其他={rmpid1,rmpid2,…,rmpidr,…,rmpidr};
s其他不为空集,即s其他≥1;
rmpid1表示与骨干-域间网络拓扑结构图匹配的第一个域间路径标识序列;
rmpid2表示与骨干-域间网络拓扑结构图匹配的第二个域间路径标识序列;
rmpidr表示与骨干-域间网络拓扑结构图匹配的第r个域间路径标识序列,下角标r表示与骨干-域间网络拓扑结构图匹配的域间路径标识序列的序号;
rmpidr表示与骨干-域间网络拓扑结构图匹配的最后一个域间路径标识序列,下角标r表示与骨干-域间网络拓扑结构图匹配的域间路径标识序列的总数;
若s其他=0,结束节点匹配,重构得到域间网络拓扑结构图g;
步骤402,采用g-mpx方法对s其他中第一个元素的匹配与分枝处理;
从s其他中选取出rmpid1,提取出rmpid1对应的域间路径标识序列,记为
从s其他中选取rmpid1,提取出rmpid1对应的mpid2和mpx2;记录下mpid2的跳数值为1;
mpid2的序列是<1.2.13.4>;
mpx2的序列是<1.2.0.0>;
配合跳数值的匹配与分枝的逐跳处理;
将mpx2(即<1.2.0.0>)与aeemp中的域间路径标识前缀序列对比,mpx2(即<1.2.0.0>)与aeemp中的节点状态信息
为了详细说明所述
当有新的域间路径标识前缀序列记载在
步骤403,采用g-mpx方法对s其他中第二个元素的匹配与分枝处理;
从s其他中选取出rmpid2,提取出rmpid2对应的域间路径标识序列,记为
从s其他中选取rmpid2,提取出rmpid2对应的mpid3和mpx3;记录下mpid3的跳数值为1;
mpid3的序列是<1.1.3.4>;
mpx3的序列是<1.1.0.0>;
配合跳数值的匹配与分枝的逐跳处理;
将mpx3(即<1.1.0.0>)与
新建一条自起始节点p0至第一个失配节点u1的边,所述边对应的域间路径标识前缀为mpx3(即<1.1.0.0>)的1.1.0.0/16;第一个失配节点u1维护着一个四元组的节点状态信息,记为
因此,
将
步骤404,采用g-mpx方法对s其他中第三个元素的匹配与分枝处理;
从s其他中选取出rmpid3,提取出rmpid3对应的域间路径标识序列,记为
从s其他中选取rmpid3,提取出rmpid3对应的mpid4和mpx4;记录下mpid4的跳数值为2;
mpid4的序列是<1.2.129.56,2.1.10.8>;
mpx4的序列是<1.2.0.0,2.1.0.0>;
配合跳数值的匹配与分枝的逐跳处理;
将mpx4(即<1.2.0.0,2.1.0.0>)与
新建一条自节点p1至第二个失配节点u2的边,所述边对应的域间路径标识前缀为mpx4(即<1.2.0.0,2.1.0.0>)中的第二跳2.1.0.0/16;第二个失配节点u2维护着一个四元组的节点状态信息,记为
由于mpid4的跳数值为2,因此,
将
步骤405,采用g-mpx方法对s其他中第四个元素的匹配与分枝处理;
从s其他中选取出rmpid4,提取出rmpid4对应的域间路径标识序列,记为
从s其他中选取rmpid4,提取出rmpid4对应的mpid5和mpx5;记录下mpid5的跳数值为2;
mpid5的序列是<1.2.109.46,2.1.19.78>;
mpx5的序列是<1.2.0.0,2.1.0.0>;
配合跳数值的匹配与分枝的逐跳处理;
将mpx5(即<1.2.0.0,2.1.0.0>)与
由于mpid5的跳数值为2,因此,
步骤406,采用g-mpx方法对s其他中第五个元素的匹配与分枝处理;
从s其他中选取出rmpid5,提取出rmpid5对应的域间路径标识序列,记为
从s其他中选取rmpid5,提取出rmpid5对应的mpid7和mpx7;记录下mpid7的跳数值为2;
mpid7的序列是<1.2.121.3,2.9.2.27>;
mpx7的序列是<1.2.0.0,2.9.0.0>;
配合跳数值的匹配与分枝的逐跳处理;
将mpx7(即<1.2.0.0,2.9.0.0>)与
由于mpid7的跳数值为2,因此
将
步骤407,采用g-mpx方法对s其他中第六个元素的匹配与分枝处理;
从s其他中选取出rmpid6,提取出rmpid6对应的域间路径标识序列,记为
从s其他中选取rmpid6,提取出rmpid6对应的mpid8和mpx8;记录下mpid8的跳数值为3;
mpid8的序列是<1.2.23.44,2.9.112.71,3.6.18.31>;
mpx8的序列是<1.2.0.0,2.9.0.0,3.6.0.0>;
配合跳数值的匹配与分枝的逐跳处理;
将mpx8(即<1.2.0.0,2.9.0.0,3.6.0.0>)与
继续进行mpx8(即<1.2.0.0,2.9.0.0,3.6.0.0>)中的第二跳2.9.0.0/16与
继续进行mpx8(即<1.2.0.0,2.9.0.0,3.6.0.0>)中的第三跳3.6.0.0/16与
新建一条自节点p5至第三个失配节点u3的边,所述边对应的域间路径标识前缀为mpx8(即<1.2.0.0,2.9.0.0,3.6.0.0>)中的第三跳3.6.0.0/16;第三个失配节点u3维护着一个四元组的节点状态信息,记为
由于mpid8的跳数值为3,因此
将
在图6d中,是采用g-mpx方法构建的是第四个失配节点u4,属于所述u4的所有的域间路径标识序列有
在图6e中,是采用g-mpx方法构建的是第五个失配节点u5,属于所述u5的所有的域间路径标识序列有
遍历完成s其他中所有元素,形成了包含有失配节点的混合-域间网络拓扑结构图g混合;从混合-域间网络拓扑结构图g混合中第一方面提取出各个失配节点,第二方面提取出各个失配节点的节点状态信息,第三方面提取出属于任意一个失配节点的域间路径标识序列,也称为失配-域间路径标识序列;
多个失配节点构成为了失配节点集合mpu={u1,u2,u3,u4,u5};
为了方便说明各个失配节点中包含的失配-域间路径标识序列,分别记录出失配节点u1、失配节点u2、失配节点u3、失配节点u4和失配节点u5中各个节点状态信息为:
不识一般性,收集属于任意一个失配节点ud的失配-域间路径标识序列有
步骤五,失配-域间路径标识序列的再分配完成带失配节点的域间网络拓扑结构图的扩展;
同样采用g-mpx方法对失配节点中的各个失配-域间路径标识序列在混合-域间网络拓扑结构图g混合中进行逐跳对比匹配与分枝处理;在进行与所述g混合的匹配构建网络处理之前,先要判断任意一个失配节点ud的
若
若
失配节点u1所维护的节点状态信息
步骤501,记录失配节点状态信息集;
经步骤四后,获得的失配节点集合为mpu={u1,u2,u3,u4,u5};
获得的失配节点状态信息集,记为uaemp,uaemp不为空集,即
步骤502,采用g-mpx方法对失配节点状态信息集uaemp中第一个失配节点中的失配域间路径标识序列的匹配与分枝处理;
选取失配节点u1,获取失配节点u1中的失配域间路径标识序列
从uaemp中选取u1,提取出属于u1的
u1的节点状态信息是
配合跳数值的匹配与分枝的逐跳处理;
(a),将
(b),将
(c),将
(d),将
(e),将
步骤503,采用g-mpx方法对失配节点状态信息集uaemp中第二个失配节点中的失配域间路径标识序列的匹配与分枝处理;
选取失配节点u2,获取失配节点u2中的失配域间路径标识序列
从uaemp中选取u2,提取出失配域间路径标识序列
配合跳数值的匹配与分枝的逐跳处理;
(a),将
(b),将
(c),将
(d),将
步骤504,采用g-mpx方法对失配节点状态信息集uaemp中第三个失配节点中的失配域间路径标识序列的匹配与分枝处理;
选取失配节点u3,获取失配节点u3中的失配域间路径标识序列
从uaemp中选取u3,提取出失配域间路径标识序列
配合跳数值的匹配与分枝的逐跳处理;
(a),将
步骤505,采用g-mpx方法对失配节点状态信息集uaemp中第四个失配节点中的失配域间路径标识序列的匹配与分枝处理;
选取失配节点u4,获取失配节点u4中的失配域间路径标识序列
从uaemp中选取u4,提取出失配域间路径标识序列
配合跳数值的匹配与分枝的逐跳处理;
(a),将
(b),将
步骤506,采用g-mpx方法对失配节点状态信息集uaemp中第五个失配节点中的失配域间路径标识序列的匹配与分枝处理;
选取失配节点u5,获取失配节点u5中的失配域间路径标识序列
从uaemp中选取u5,提取出失配域间路径标识序列
配合跳数值的匹配与分枝的逐跳处理;
(a),将
(b),将
步骤507,开始遍历拓展后的域间网络拓扑结构图g中的所有的失配节点,并将被分解的失配节点移除图g;
由于失配节点u1、失配节点u2、失配节点u3、失配节点u4和失配节点u5中所有域间路径标识序列已分配到图g其他节点p15,p16,p17,p18,p19,p20,p21,p22中,因而所述失配节点u1、失配节点u2、失配节点u3、失配节点u4和失配节点u5中不存任有域间路径标识序列了,故则删除失配节点u1、失配节点u2、失配节点u3、失配节点u4和失配节点u5,以及节点之间的边;最终生成域间网络拓扑结构图。