北京金桥世纪H3C认证培训全国总代理

L2VPN的Kompella标签分配

2011-11-15 13:40:17互联网

当PE上增加一个CE的相关配置时,需要指定标签块的大小LR,LB是PE自动分配的。这个标签块作为一个NLRI条目通过BGP传递到其它PE。当该CE配置被删除或者PE与该CE的连接失效,这个标签块也要被删除,BGP同样会做撤消通告。

假设,在开始部署的时候,CEm需要与远端其它CE建立两条VC,那么定义标签块的大小不能小于2。当然,为了今后扩容的考虑,我们可以定义Rang=10。无论Rang为多大,随着网络的扩容VC数量的增加,总会出现标签不够用的时候。这时候我们就需要重新定义Rang的大小,给一个更大的标签空间。但问题出现了,前面我们谈到标签块的数据是通过BGP的NLRI来传递的,并且这个标签块已经被用于计算VC标签和实际数据的转发。为了不破坏原有的VC连接,采用一个办法,就是给这个CE分配一个新的标签块,并且作为一条新的NLRI通过BGP通告。也就是说一个CE的标签空间可能是由许多个标签块组成的(Rang等于LR的总和),这种机制解决了网络扩展的需求。多个标签之间的联系通过一个偏移量来定义LO(Label-block Offset)。LO标志出了前面所有标签块大小的总和。比如第一个标签块的LR为100,LO为0;第二个标签块的LR为50,那么LO为100;如果有第三个标签块,它的LO就是150。LO会在VC标签计算被使用。现在每一个标签块都可以用三个参数来描述,那就是LB/LR/LO。


CE ID是在同一个VPN内唯一标识CE的参数。在同一个VPN内,每个CE,其CE ID必须是不同的,CE ID会在每一个NLRI中携带,这样就可以将标签块和对应的CE关联起来。在Kompella draft中,CE ID也被用于VC标签的计算。

假设PEk本地有一个CE-k,其CE ID为k,收到远端PE-m发过来的CE-m的一个或多个标签块,根据Kompella draft规定,CE-k连接到CE-m的标签必须满足以下两个条件:

(1)LOm <= k < LOm + LRm  

然后从标签块LBm/LRm/LOm中选择标签,标签值为:

(2)LBm+k-LOm   

公式(1)的右半部分很好理解,结合公式(2),如果不能满足k < LOm + LRm,CE-k选用的标签将超出LBm/LRm/LOm标签块的范围。但为什么要求LOm <= k,其中包含着什么意义?事实上,理解了LOm <= k,也就理解了Kompella标签分配算法中隐含的思想。

根据前面的叙述,LOm代表的是当前这个标签块之前CE-m的标签总和,也就是已经为CE-m分配掉的标签总数。要求 LOm<=k,就是规定,标签与CE ID是一一对应的。所有标签块里的第一个标签是分为CE 1的;所有标签里的第二个标签,是分给CE 2的。如果CE ID大于LOm,那么说明这个CE已经无标签可分了。CE ID如果是不连续的,那么LOm里面的标签有些会空余出来,这些已分配标签留给谁用呢?当然是留给CE ID比LOm小的CE使用。这反映了Kompella标准设计者的一个默认假设,即,如果一个CE ID为k,那么从0到k的CE ID都应该会被应用,并因此为这些CE预留了标签。

这就提出了一个问题,如果在配置CE ID时,不按自然数顺序编号,而是跳跃性的配置,一些CE ID配置得特别大,就会导致跳跃区域的CE ID没有被使用,但系统仍然给其预留标签,从而浪费标签,这是标准所不乐见的。因此,用户在配置时,最好能对CE顺序分配CE ID,这样能作到最节省的使用标签。

要求LOm <= k,事实上反映了Kompella标准设计者的一个美好愿望:用户配置时,能顺序配置CE ID,这样标准中的标签分配算法就能作到最节省标签空间。


下面详细描述了计算VC标签的过程。假设PE-k本地有一个CE-k,CE ID为k,收到远端PEm为CE-m分配的一个标签块LBm/LRm/LOm。

首先检查从PEk收到CEm的封装类型是否与CEk的相同,如果不一致,停止处理;

检查是否 k=m,如果是,报错“CE ID k has been allocated to two CEs in VPN X (check CEm at PEk)”,然后停止处理;

如果CEm有多个标签块,检查这些标签块是否有满足LOm <= k < LOm + LRm,如果任何一个标签块都不满足,报错 “Cannot communicate with CE m (PE A) of VPN X:outside range”然后停止处理;

检查和CE k相关的所有的标签块是否有满足LOk <= m < LOk + LRk,如果任何一个标签块都不满足,报错 “Cannot communicate with CE m (PE A) of VPN X:outside range”然后停止处理;

检查PEk和PEm之间的外层通道是否正常建立,如果没有就停止处理,这里假设为LSP隧道,标签为Z;对于外层隧道的判断决定了是否为一个VC计算VC标签,这一点与L3VPN不同。如果外层隧道没有建立,就不应该为VC计算标签。

PEk为CE-m分配内层出标签为(LBm + k - LOm) ,PEk为CE-k分配内层入标签为(LBk + m - LOk);

PEB到PEA的外层隧道的标签为Z;

内外层标签都已经计算出来,VC处于UP状态,可以用于二层报文的传输了。

·[金桥动态]关于对H3CTE认证培训与考试进行捆绑的通知 
·[知识课堂]部署NTP组播模式 
·[常见问题]H3C认证网络工程师常见问题一 
·[金桥动态]特别开设-H3C定向培训之网络工程师系列课程 
·[知识课堂]配置HGMP 
·[金桥动态]H3C第二期集训营学员就业在即,杭州华三北京办事处 


点击这里给我发消息 点击这里给我发消息 点击这里给我发消息 点击这里给我发消息 点击这里给我发消息


开班信息

开班时间 班级类型 报名情况

7月14日

H3CTE认证

热报中

7月7日

H3CSE培训

热报中

7月7日

H3CNE认证

热报中

7月14日

H3CTE认证

热报中

7月7日

H3CSE培训

热报中

7月7日

H3CNE培训

热报中

7月14日

H3CTE认证

热报中

7月7日

H3CSE认证

热报中

7月7日

H3CNE培训

热报中

7月21日

H3CIMC培训

热报中

7月8日

H3C无线培训

热报中

7月8日

H3CEAD培训

热报中

7月28日

H3CPME认证

热报中

7月14日

H3C安全认证

热报中

7月21日

H3CIMC培训

热报中

7月8日

H3C无线培训

热报中

7月8日

H3CEAD培训

热报中

7月28日

H3CPME认证

热报中

7月14日

H3C安全认证

热报中

7月21日

H3CIMC培训

热报中

7月8日

H3C无线培训

热报中

7月8日

H3CEAD培训

热报中

7月28日

H3CPME认证

热报中

7月14日

H3C安全认证

热报中

点击咨询开班情况>>

在线咨询