• 产品与解决方案
  • 行业解决方案
  • 服务
  • 支持
  • 合作伙伴
  • 新华三人才研学中心
  • 关于我们

03-二层技术-以太网交换配置指导

目录

13-PBB配置

本章节下载 13-PBB配置  (302.66 KB)

13-PBB配置


1 PBB

1.1  PBB简介

PBB(Provider Backbone Bridge,运营商骨干网桥)协议也称为“MAC-in-MAC”技术,它由IEEE 802.1ah所定义。作为一种二层VPN(Virtual Private Network,虚拟专用网络)技术,PBB通过MAC地址嵌套,将用户MAC地址封装在运营商MAC地址之中,实现对不同的用户业务进行隔离。

运营商通常使用QinQ技术为用户提供二层隧道服务,但使用该技术的网络不可避免地存在一些限制,主要表现在:运营商网络中未能做到对用户MAC地址的有效隔离,造成运营网络中的设备需要支持庞大的MAC地址表;由于运营商网络只能提供4094个VLAN,成为运营商大规模开展以太网业务的瓶颈。

采用PBB技术则可以弥补这些不足:它通过为用户网络报文再封装一层报文头,实现了运营商网络对用户MAC地址的隔离,减小了MAC地址表的大小;它通过增加专门的服务实例标识,可提供1600余万个服务实例。

有关QinQ的详细介绍,请参见“二层技术-以太网交换配置指导”中的“QinQ”。

1.1.1  PBB基本概念

1-1PBB的基本组网模型,本节将对PBB里的一些基本概念进行介绍。

图1-1 PBB的基本组网模型

 

2. PBBN

采用了PBB协议的网络称为PBBN(Provider Backbone Bridge Network,运营商骨干桥接网),也称为PBB网络。PBBN是一个二层交换网络,可以在不同节点之间建立二层连接。

3. PBN

采用了QinQ或VLAN映射技术的网络称为PBN(Provider Bridge Network,运营商桥接网)。用户网络既可以直接接入PBBN,也可以通过PBN接入PBBN。

4. PBB报文

经过PBB封装的报文简称为PBB报文,有关PBB报文的具体封装格式,请参见“1.1.2  PBB报文封装”一节的介绍。

5. BEB

BEB(Backbone Edge Bridge,骨干网边缘网桥)设备是PBBN的边缘设备。它负责:

·     将来自用户网络的报文进行PBB封装,并转发到PBBN中。

·     将来自PBBN的PBB报文进行解封装,并转发到用户网络中。

·     BEB设备需要学习对应用户网络的MAC地址。

6. BCB

BCB(Backbone Core Bridge,骨干网核心网桥)设备是PBBN的核心设备。它负责按照B-MAC和B-VLAN转发PBB报文。BCB设备只需要转发报文和学习骨干网中的MAC地址,不需要学习用户网络中大量的MAC地址,从而降低了网络部署的成本,也为PBBN提供了更好的可扩展性。

7. B-MAC/B-VLAN

BEB设备在对用户报文进行封装时,会为其打上运营商分配的MAC地址和VLAN。这个由运营商分配的MAC地址和VLAN就分别称为B-MAC(Backbone MAC,骨干网MAC)和B-VLAN(Backbone VLAN,骨干网VLAN)。在PBBN中,BCB设备按照B-MAC和B-VLAN转发PBB报文。

B-MAC包括源B-MAC和目的B-MAC,BEB设备在对用户报文进行封装时,会将自己的桥MAC地址作为源B-MAC、将PBBN隧道目的端BEB设备的MAC地址作为目的B-MAC。

8. 上行口/下行口

BEB设备上连接PBBN的端口称为上行口,连接用户网络的端口称为下行口。来自用户网络的报文被封装成PBB报文后,会通过BEB设备相应的上行口转发出去;而来自PBBN的PBB报文被解封装后,会按照用户MAC地址通过BEB设备相应的下行口转发出去。

9. PBB VSI实例和I-SID

在PBBN中,一个PBB VSI(Virtual Switch Instance,虚拟交换实例)实例代表了运营商提供的一类业务,I-SID(Backbone Service Instance Identifier,骨干网服务实例编号)就是这个PBB VSI实例的唯一编号。

1.1.2  PBB报文封装

图1-2 PBB报文封装格式

 

图1-2是PBB报文的封装格式,其中各重点字段的具体含义如表1-1所示。

表1-1 PBB报文封装重点字段含义

字段

全称

含义

B-DA

Backbone Destination MAC address(骨干网目的MAC地址)

即目的B-MAC,是PBB封装的外层目的MAC地址,为PBBN隧道目的端BEB设备的MAC地址,与B-SA合称为B-MAC

B-SA

Backbone Source MAC address(骨干网源MAC地址)

即源B-MAC,是PBB封装的外层源MAC地址,为PBBN隧道源端BEB设备的MAC地址,与B-DA合称为B-MAC

B-Tag

Backbone VLAN Tag(骨干网VLAN标签)

即B-VLAN Tag,是PBB封装的外层VLAN Tag,用来标识报文在PBBN中的VLAN和优先级信息,其TPID值固定为0x8100

I-Tag

Backbone Service Instance Tag(骨干网服务实例标签)

PBB封装中的业务标记,包括以下字段:

·     TPID:标签协议标识符,TPID值固定为0x88E7

·     I-PCP:传送优先级

·     I-DEI:丢弃优先级

·     I-SID:业务实例标识

·     C-DA:用户报文的目的MAC地址

·     C-SA:用户报文的源MAC地址

S-Tag

Service VLAN Tag(服务VLAN标签)

报文在PBN中的外层VLAN Tag,用来标识报文在PBN中的VLAN和优先级信息

C-Tag

Customer VLAN Tag(用户VLAN标签)

报文在PBN中的内层VLAN Tag,用来标识报文在用户网络中的VLAN和优先级信息

 

1.1.3  PBB报文转发

图1-3 PBB报文转发示意图

 

在如图1-3所示的PBBN中,PBB报文的转发过程如下:

(1)     BEB 1将来自用户网络的报文封装上相应的B-MAC、B-VLAN和I-SID头,然后通过其上行口转发给BCB。

(2)     BCB将来自BEB 1的PBB报文按照B-MAC和B-VLAN转发给BEB 2。

(3)     BEB 2将来自BCB的PBB报文解封装,还原成标准的以太网报文,然后通过其相应的下行口向用户网络转发。

1.1.4  协议规范

与PBB相关的协议规范有:

·     IEEE 802.1ah:Virtual Bridged Local Area Networks Amendment 7: Provider Backbone Bridges

1.2  PBB配置任务简介

只需在BEB设备上配置PBB。BCB设备只需按照B-MAC和B-VLAN转发PBB报文,因此无需配置PBB。

表1-2 PBB配置任务简介

配置任务

说明

详细配置

使能L2VPN功能

必选

1.3.1 

创建PBB VSI实例

必选

1.3.2 

为PBB VSI实例指定B-VLAN

必选

1.3.3 

配置上行口

必选

1.3.4 

配置下行口

必选

1.3.5 

配置封装类型

可选

1.3.6 

 

1.3  配置PBB

1.3.1  使能L2VPN功能

作为二层VPN技术的一种,在配置PBB时,只有使能L2VPN功能后,PBB配置才能生效。

表1-3 使能L2VPN功能

操作

命令

说明

进入系统视图

system-view

-

使能L2VPN功能

l2vpn enable

缺省情况下,L2VPN处于关闭状态

 

1.3.2  创建PBB VSI实例

创建PBB VSI实例时需指定其I-SID,I-SID是PBB VSI实例的唯一编号,用来标识同一类型的服务,在PBBN中同一PBB VSI实例必须指定相同的I-SID,不同PBB VSI实例的I-SID不同。有关VSI的详细介绍,请参见“MPLS配置指导”中的“VPLS”。

需要注意的是,在同一个VSI视图下,PBB和SPBM(Shortest Path Bridging MAC,最短路径桥MAC模式)的I-SID不能相同。有关SPBM的详细介绍,请参见“SPB配置指导”中的“SPBM”。

表1-4 创建PBB VSI实例

操作

命令

说明

进入系统视图

system-view

-

创建VSI,并进入VSI视图

vsi vsi-name

缺省情况下,设备上不存在任何VSI

创建PBB VSI实例,并进入VSI PBB子视图

pbb i-sid i-sid

缺省情况下,未创建PBB VSI实例

 

1.3.3  为PBB VSI实例指定B-VLAN

PBB VSI实例必须指定B-VLAN才能够生效,只有I-SID和B-VLAN都相同的PBB VSI实例才能互通。一个PBB VSI实例只能指定一个B-VLAN,不同的PBB VSI实例可以指定相同的B-VLAN。

表1-5 配置B-VLAN

操作

命令

说明

进入系统视图

system-view

-

进入VSI视图

vsi vsi-name

-

进入VSI PBB子视图

pbb i-sid i-sid

-

为PBB VSI实例指定B-VLAN

bvlan vlan-id

缺省情况下,PBB VSI实例未指定B-VLAN

 

1.3.4  配置上行口

在BEB设备上,来自用户网络、属于某PBB VSI实例的报文被封装成PBB报文后,将通过该实例对应的上行口转发出去。

配置上行口时,需要注意:

·     可以为一个PBB VSI实例配置一个或多个上行口。

·     只有为PBB VSI实例指定了B-VLAN后,上行口的配置才会生效。

·     上行口必须加入到PBB VSI实例的B-VLAN中且链路状态为up,否则该上行口配置不会生效。

·     若上行口为聚合成员口,则该上行口配置不会生效。

表1-6 配置上行口

操作

命令

说明

进入系统视图

system-view

-

进入二层以太网接口视图/二层聚合接口视图

interface interface-type interface-number

-

将端口指定为PBB VSI实例的上行口

pbb uplink { all | vsi vsi-name-list }

缺省情况下,端口不是任何PBB VSI实例的上行口

 

1.3.5  配置下行口

在BEB设备上,来自用户网络的报文先根据下行口上的匹配规则判断其所属的PBB VSI实例,然后被封装成PBB报文并通过上行口转发出去;而来自PBBN、属于某PBB VSI实例的PBB报文被解封装后,将按照其用户MAC地址通过相应的下行口转发出去。

需要注意的是,可以为一个PBB VSI实例配置一个或多个下行口。

表1-7 配置下行口

操作

命令

说明

进入系统视图

system-view

-

进入二层以太网接口视图

interface interface-type interface-number

-

创建以太网服务实例,并进入以太网服务实例视图

service-instance instance-id

缺省情况下,二层以太网接口上不存在任何以太网服务实例

配置以太网服务实例的报文匹配规则

匹配当前端口接收的所有报文

encapsulation default

缺省情况下,未配置任何报文匹配规则

配置以太网服务实例报文匹配规则时,必须首先在设备上创建报文所属VLAN并配置当前接口允许这些VLAN的报文通过

匹配携带任意VLAN标签或不携带VLAN标签的报文

encapsulation { tagged | untagged }

匹配携带指定外层VLAN标签的报文

encapsulation s-vid vlan-id [ only-tagged ]

匹配携带指定外层和内层VLAN标签的报文(仅R2422及以上版本支持)

encapsulation s-vid vlan-id c-vid vlan-id

将服务实例与PBB VSI实例相关联

xconnect vsi vsi-name [ access-mode { ethernet | vlan } ]

缺省情况下,服务实例没有与任何PBB VSI实例关联

 

说明

·     不要在同一接口上同时创建以太网服务实例和使能EVB功能,否则二者均将无法正常工作。有关EVB功能的详细介绍请参见“EVB配置指导”。

·     有关service-instanceencapsulationxconnect vsi命令的详细介绍,请参见“MPLS命令参考”中的“VPLS”。

 

1.3.6  配置数据封装类型

接入模式是BEB对从CE收到的以太网帧携带的外层VLAN Tag的理解方式,以及BEB向CE发送以太网帧的方式。根据xconnect vsi命令配置,接入模式分为两种:

·     VLAN接入模式:CE发送给BEB的以太网帧头需要带有一个VLAN Tag,该Tag被称为P-Tag,即服务提供商网络为了区分用户而添加的“服务定界符”。BEB发送以太网帧给CE时,也需要携带P-Tag。

·     Ethernet接入模式:CE发送给BEB的以太网帧头中如果带有VLAN Tag,则该Tag被称为U-Tag,即用户网络的内部VLAN Tag,对于BEB设备没有意义。PE发送以太网帧给CE时,不需要携带P-Tag。

PBB VSI实例对应的数据封装类型有两种:

·     Ethernet数据封装类型下,向PBBN侧传输的帧不能带服务提供商网络为了区分用户而要求用户添加的P-Tag。对于CE侧的报文,如果BEB从CE收到带有P-Tag的报文,则将其去除后再进行PBB封装并转发;如果从CE收到不带P-Tag的报文,则直接进行PBB封装后转发。对于BEB发送给CE的报文,如果xconnect vsi命令配置的接入模式为VLAN,则添加P-Tag后转发给CE;如果配置的接入模式为Ethernet,则不添加P-Tag,直接转发给CE;不允许重写或去除已经存在的任何Tag。

·     VLAN数据封装类型下,向PBBN侧传输的帧必须带P-Tag。对于CE侧的报文,BEB从CE收到带有P-Tag的报文后,如果远端BEB不要求Ingress改写P-Tag,则保留P-Tag,如果远端BEB要求Ingress改写P-Tag,则将P-Tag改写为远端BEB期望的VLAN Tag(Tag可能是值为0的空Tag),再进行PBB封装后转发;从CE收到不带P-Tag的报文后,如果远端BEB不要求Ingress改写P-Tag,则添加值为0的空P-Tag,如果远端BEB要求Ingress改写P-Tag,则添加一个远端BEB期望的VLAN Tag(Tag可能是值为0的空Tag)后,再进行PBB封装后转发。对于BEB发送给CE的报文,如果xconnect vsi命令配置的接入模式为VLAN,则转发给CE时重写或保留P-Tag;如果配置的接入模式为Ethernet,则去除P-Tag后转发给CE。

表1-8 配置数据封装类型

操作

命令

说明

进入系统视图

system-view

-

进入VSI视图

vsi vsi-name

-

进入VSI PBB子视图

pbb i-sid i-sid

-

配置数据封装类型

encapsulation { ethernet | vlan }

缺省情况下,数据封装类型为VLAN

 

1.4  PBB显示和维护

在完成上述配置后,在任意视图下执行display命令可以显示配置后PBB的运行情况,通过查看显示信息验证配置的效果。

用户视图下执行reset pbb connection命令可以清除由报文产生的连接信息。

表1-9 PBB显示和维护

操作

命令

查看PBB VSI实例的上行连接信息

display pbb connection

查看MAC-in-MAC连接信息

display l2vpn minm connection [ vsi vsi-name ]

查看MAC-in-MAC转发表项信息

display l2vpn minm forwarding [ vsi vsi-name ] [ slot slot-number ]

查看VSI的信息

display l2vpn vsi [ name vsi-name ] [ verbose ]

清除PBB VSI实例的上行连接信息

reset pbb connectionbvlan vlan-id | interface interface-type interface-number ] *

 

1.5  PBB典型配置举例

1. 组网需求

·     BEB 1通过端口FortyGigE1/0/1连接Core network,通过端口FortyGigE1/0/2连接Customer network A中的Device A;BEB 2通过端口FortyGigE1/0/1连接Core network,通过端口FortyGigE1/0/2连接Customer network B中的Device B。

·     Customer network A和Customer network B中共存在VLAN 100~120这21个VLAN,且Device A和Device B向BEB发送VLAN 100~120的报文时携带VLAN Tag。

·     通过配置,使Customer network A和Customer network B之间利用PBB实现互通。

2. 组网图

图1-4 PBB典型配置组网图

 

3. 配置步骤

以BEB 1配置为例,BEB 2的配置与BEB 1相同。

# 创建VLAN 20。

<BEB1> system-view

[BEB1] vlan 20

[BEB1-vlan20] quit

# 使能L2VPN功能。

[BEB1] l2vpn enable

# 创建名为aaa的VSI。

[BEB1] vsi aaa

# 指定其模式为PBB,I-SID为1。

[BEB1-vsi-aaa] pbb i-sid 1

# 为PBB VSI实例aaa指定B-VLAN 20。

[BEB1-vsi-aaa-1] bvlan 20

[BEB1-vsi-aaa-1] quit

[BEB1-vsi-aaa] quit

# 配置上行口:将端口FortyGigE1/0/1配置为Trunk端口且允许VLAN 20通过,并将该端口指定为PBB VSI实例aaa的上行口。

[BEB1] interface fortygige 1/0/1

[BEB1-FortyGigE1/0/1] port link-type trunk

[BEB1-FortyGigE1/0/1] port trunk permit vlan 20

[BEB1-FortyGigE1/0/1] pbb uplink vsi aaa

[BEB1-FortyGigE1/0/1] quit

# 配置下行口:创建VLAN 100~120,将端口FortyGigE1/0/2配置为Trunk端口且允许所有VLAN通过;在该端口上创建服务实例1,配置报文匹配规则为匹配携带VLAN标签的报文,并将该服务实例与PBB VSI实例aaa关联(接入模式为Ethernet)。

[BEB1] vlan 100 to 120

[BEB1] interface fortygige 1/0/2

[BEB1-FortyGigE1/0/2] port link-type trunk

[BEB1-FortyGigE1/0/2] port trunk permit vlan all

[BEB1-FortyGigE1/0/2] service-instance 1

[BEB1-FortyGigE1/0/2-srv1] encapsulation tagged

[BEB1-FortyGigE1/0/2-srv1] xconnect vsi aaa access-mode ethernet

[BEB1-FortyGigE1/0/2-srv1] quit

[BEB1-FortyGigE1/0/2] quit

# 指定PBB VSI实例aaa对应的数据封装类型为Ethernet。

[BEB1] vsi aaa

[BEB1-vsi-aaa] pbb i-sid 1

[BEB1-vsi-aaa-1] encapsulation ethernet

[BEB1-vsi-aaa-1] quit

4. 验证配置

# 在BEB 1上显示PBB VSI实例aaa的上行连接信息。

[BEB1] display pbb connection

BMAC            BVLAN  Port        Type  Aging

011e-8300-0001  20     FGE1/0/1     MC    N

000f-e200-0001  20     FGE1/0/1     UC    Y

之后,使用ping命令发现Device A和Device B之间可以相互Ping通,这表明Customer network A和Customer network B之间实现了互通。

1.6  常见配置错误举例

1. 故障现象

用户报文无法透过PBBN到达对方。

2. 故障分析

·     BEB设备上没有配置PBB类型的VSI,或该VSI的状态为down。

·     BEB设备上的PBB配置不一致。

·     BCB设备上没有创建与BEB设备中B-VLAN相同的VLAN,或者报文经过的所有连接BEB和BCB设备的端口没有全部加入该VLAN。

3. 故障排除

(1)     使用display l2vpn vsi verbose命令查看VSI中的PBB配置。如果没有配置PBB,需要进行配置;如果VSI的状态为down,需要执行undo shutdown命令使该VSI的状态变为up。有关display l2vpn vsi verbose命令的详细介绍,请参见“MPLS命令参考”中的“VPLS”。

(2)     在所有BEB设备上通过display l2vpn vsi verbose命令查看PBB的配置是否一致,特别是I-SID和B-VLAN是否一致。所有BEB设备上的PBB配置都应保持一致。

(3)     在所有BCB设备上通过命令display vlan all查看是否创建了与BEB设备中B-VLAN相同的VLAN,且各设备间相连的端口是否都已加入该VLAN。

不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!

新华三官网
联系我们