2.3 组播分组的BIER封装
首先是工作BIFT表的生成。工作表即正常的BIER转发表,对于图4所示拓扑中的节点2来说,工作BIFT如下表1所示。
表1 节点2的工作BIRT表
Tab.1 Working BIRT Table of node 2
F-BM |
BFR-Prefix of Dest BFER |
BFR-NBR |
0:000000001 |
1 |
1 |
0:000000100 |
3 |
3 |
0:110101000 |
4, 6, 8, 9 |
4 |
0:000010000 |
5 |
5 |
0:001000000 |
7 |
7 |
对于保护BIFT来说,本文采取VLAN封装的形式实现保护,因此保护表可以省去。双P圈保护方案用VLAN实现,即在生成P1圈时,将在P1圈上的节点端口的VLAN设置为P1圈专有VLAN,例如VLAN-ID设为101;在生成P2圈时,将在P2圈上的节点端口的VLAN设置为P2圈专有VLAN,例如VLAN-ID设为102。端口VLAN模式为trunk模式,即可以接收和发送多个VLAN报文。对于图6网络拓扑中的节点1来说,1—2端口设置为port trunk allow-pass vlan 101;1—3端口设置为port trunk allow-pass vlan 101 102;1—7端口设置为port trunk allow-pass vlan 102.
正常情况下BIER工作分组带默认VLAN头,即VLAN-ID=1;当BIER分组遇到故障时,检查最短路径P1圈是否完好,如果完好,就加上P1圈的专有VLAN头,即VLAN-ID=101;如果P1圈不完好,就检查非最短路径P2圈是否完好,如果完好,就加上P2圈的专有VLAN头,即VLAN-ID=102;如果P2圈也不完好,则丢弃分组。当P圈上的链路发生故障时,故障相邻的两个节点会在P圈的VLAN上进行广播,使得P圈上的节点会禁用该P圈的VLAN。这样,检查P圈是否完好的操作通过端口VLAN的是否禁用即可完成。