VPLS笔记

VPLS

了解EVPN前先了解一下VPLS技术

VPLS称为虚拟专用局域网业务 (Virtual Private LAN Service),是公用网络中提供的一种点到多点的L2VPN业务。

VPLS存在无法实现负载分担、网络部署困难等缺点,无法满足L2VPN灵活部署和CE多归属场景下提升链路利用率等需求,EVPN (Ethernet Virtual Private Network,以太网虚拟私有网络)解决了以上问题。

EVPN在RFC7432中被定义,它引入控制平面用于控制MAC地址的学习。随着EVPN的不断扩展,EVPN不仅支持L2VPN,同时支持L3VPN。EVPN被广泛用于不同的场景,如广域网、数据中心和园区网。

Vpls:全称为VirtualPrivateLanService,也就是虚拟专用局域网业务。比较热门的一种MPLS二层VPN技术。业界有两个标准,一个标准以LDP作为信令协议,由Alcatel发起,得到业界大部分厂家的支持(包括Cisco);另一个标准由Juniper发起,以BGP作为信令协议,只有Juniper和华为支持。

一种基于以太网的二层VPN技术,公用网络,点到多点的L2VPN业务

实现VPLS:创建隧道和PW,创建VSI,绑定PW和AC到VSI

1 VPLS 概念

AC:接入电路,描述CE与PE之间物理链路。对应的接口只能是以太网接口。

PW :伪链接/伪线,用于描述在公网中利用MPLS标签转发技术实现隧道转发的双向虚拟链路,称之为PW。两个本地和远端VC标签定义一条PW

VC(Virtual Circuit):虚电路。在两个节点之间的一种单向逻辑连接。一个PW由一对反向VC组成。在一些应用中一个VC也可作为单向PW使用

VSI :虚拟交换实例,是AC与PW的桥梁,AC接入PE后,由VSI互相映射,让AC产生的流量进入对应的PW隧道中进行传输与访问。

PW Signaling:信令协议,有mpls ldp和bgp组成

Tunnel:隧道,说白了就是转发所有VSI业务的通道,可以是mpls隧道,也可以说gre隧道。

Forwarder:代表了PW的转发表,一个映射关系,PE收到AC上送的数据帧,由转发器选定转发报文使用的PW

2 VPLS的LDP信令

VPLS的LDP会话是通过MPLS LDP远端会话建立的。

远端LDP会话建立依靠单播发送HELLO包进行通信。在VPLS中,用于建立PW。

Vpls的LDP建立过程:

在两个PE的场景中,PE1和PE2都具备了CE传递来的AC与VSI。

两台PE在本地绑定了自己的AC和VSI信息。

此时,PE1与PE2之间建立的远端LDP会话信息。

PE1会采用DU(下游自主)的方式主动向PE2发送标签映射消息。此消息中携带了最关键的PW ID(即VSI ID)信息和VC标签,还有一些接口信息。

PE2收到这个消息后,会检测自身是否有AC与VSI关联的信息,如果有,且与发送来的包内容相同和封装参数相同,如果VSI ID相同,则认为这个vsi与自己的vsi处于同一个vpn内,PE2接收此消息,并将自己的相同信息发送给PE1.

PE1收到同样的消息后完成配置。

3 VPLS的LDP配置过程

注意,VPLS只能实现二层互访

在公网环境中创建IGP协议,打通路由。

在公网环境中创建BGP协议,为MPLS做准备。

配置MPLS基本功能,开启LDP协议。

配置LDP远端对等体

[AR1]mpls ldp  remote-peer x

X代表对端PE的地址,用于建立远端对等体的命令。此命令是个名称,目的是开启远端对等体功能。

[AR1-mpls-ldp-remote-3.3.3.3]remote-ip3.3.3.3

配置LDP远端对等体。

对端也需要如此配置。

在PE设备上开启L2VPN功能, P设备不需要开启

[~AR1] mpls 12vpn

[*AR1-12vpn] commit

配置vsi

[AR1]vsi X

系统视图下创建vsi,X为名称,同一设备下vsi名称不能相同。

[AR1-vsi-x]Pwsignalldp

配置VSI信令由LDP创建。

[AR1-vsi-x-ldp] vsi-idX

PW两端的VSIID的值必须一致,否则VSI无法建立成功。如果两端VSIID不一致,需要在执行命令peer配置对等体时使用参数negotiation-vc-id vc-id,设置用于PW协商的VCID。

VSI只存在于PE上,一个PE上可以有多个VSI,但VSIID必须本地唯一。

[AR1-vsi-x-ldp]peerXXX

XXX代表对端VSI id,如果要协商需要增加negotiation参数。

对端也是这么配置

接口绑定

[*AR1-GigabitEthernet0/1/]ip binding vsi x

绑定接口给X的vsi,这个配置是给pe连接私网的接口配置的。

对端也是如此配置。

4 VPLS的BGP信令

1.当PE1配置本地标签块后,此时如果PE1和PE2之间的BGP Session已经建立,PE1则向PE2发送携带MP-REACH属性的Update消息,包括SitelD和标签块信息。

2.PE2收到该Update消息后,根据自己的Site lD和报文中的标签块,计算出唯一的一个标签值,作为VC标签,此时单向VC1建立成功。同时,PE2根据报文中Site D和本地标签块,也可以得到PE1的VC标签值,并向PE1发送Update消息,PE1收到PE2的Update消息后作同样的检查和处理,最终也成功建立VC2。

通过BGP建立VPLS信令的核心:

1.是在vsi中建立rt和rd属性。

2.标签块的配置需要设定标签块ID,两个ID在一个网络内不能重复。哪怕这是一条VC,也是两个不同的标签块ID。

3.标签块配置需要遵循两个原则,一是标签块ID大于对端标签块偏移值(只有0,1取值),同时标签块ID要小于对端(标签块偏移值+range)的和。

[*PE2-vsi-bgp1-bgp]site 2 range 5 default-offset 0

[*PE1-vsi-bgp1-bgp]site 1 range 5 default-offset 0

如上两个PE之间配置标签块的例子我们得知,PE1的标签块ID为1,满足大于标签块偏移值,同时满足小于对端5+0的和

PE2的配置也是遵循这个原理。

抓包查看BGP的UPdate信息:

5 VPLS的 BGP 配置过程

注意,VPLS只能实现二层互访

在公网环境中创建IGP协议,打通路由。

在公网环境中创建BGP协议,为MPLS做准备。

配置MPLS基本功能,开启LDP协议。

配置BGP的L2VPN邻居

bgp 1

 peer 2.2.2.2 as-number 1

    peer2.2.2.2 connect-interface LoopBack0

 #

 ipv4-family unicast

     undo synchronization

     peer 2.2.2.2 enable

     peer 2.2.2.2 reflect-client

 #

 l2vpn-ad-family

    Undo policyvpn-target

 peer 2.2.2.2 enable

     peer 2.2.2.2 reflect-client

 peer 2.2.2.2 signaling vpls

//正常建立的IPV4单播邻居不用管,主要是建立L2VPN邻居,同时关闭vpn-target功能。

//在l2vpn下开启signaling vpls的信令功能。

//上述为P设备,也是骨干网络中RR设备的配置过程,PE设备没RR无需添加路由反射器,仅仅与路由反射器建立l2vpn邻居即可。

配置VSI

vsi a

Pwsignal bgp

route-distinguisher 1:1

vpn-target 1:1import-extcommunity

vpn-target 1:1 export-extcommunity

site 4 range5default-offset 0

//vsi采用bgp的方式建立vpls功能

//创建rd和rt值

//配置标签块

接口绑定

[*AR1-GigabitEthernet0/1/]ip binding vsi x

绑定接口给X的vsi,这个配置是给pe连接私网的接口配置的。

对端也是如此配置。

所有的PE设备都需要配置类似的vsi,同一个VC和PW下,都需要配置相同的RT值,跟MPLS VPN类似。

查看配置命令:dis vsi pw out-interface,dis vpls

6 vpls的工作原理

1)转发原理:

192.168.1.1 开始访问192.168.1.2时:

发送ARP包到达PE1,PE1通过vsi记录192.168.1.1的mac地址信息,并记录此mac地址对应的接口是谁。

并进行ARP泛洪,通过AC接口收到的得知属于哪个vsi,然后根据该ASI绑定的PE进行泛洪,私网标签即PW的标签,公网标签根据PW隧道目的地址然后迭代到公网的LSP中

如果获取到后,得知192.168.1.1属于某一个pw,所以直接将此mac地址信息通过PW复制到PE2中。

PE2通过PW学习到这个mac地址表项,通过PE2中的VSI信息查询对应端口,从而实现二层互访。

本质上实现PW传递信息是通过mpls ldp协议进行传递的。公网标签。

2)MAC地址学习过程:

  1. PE1从连接CE1的端口Port1(Port1属于VLAN10)收到来自PC1的ARP广播报文,PE1把PC1的MAC地址添加到在自己的MAC表项中(PE1的MAC表项中蓝色字体内容)。
  2. PE1向其它端口(PW1和PW2此时可以看成端口)广播该ARP报文(PE1上的蓝色虚线)。
  3. PE2从PW1上收到PE1转发来的PC1的ARP报文,把PC1的MAC地址添加到自己的MAC表项中(PE2的MAC表中蓝色字体内容)。
  4. PE2只向连接CE2的端口转发该ARP报文(PE2上的蓝色虚线),而不向PW上转发,所以该ARP只发送给PC2。这就是VPLS的水平分割特点,即从公网侧PW收到的报文不再转发到其他PW上,而只能转发到私网侧。
  5. PC2收到PE2转发来的PC1的ARP报文,发现目的地址是自己,就发送一个ARP Reply报文给PC1(PC2上的绿色虚线)。
  6. PE2从Port2端口收到PC2给PC1的ARP回应报文。PE2添加PC2的MAC地址到自己的MAC表项中(PE2的MAC表中绿色字体内容)。ARP Reply报文的目的地MAC是PC1(MAC A),PE2查询自己的MAC表后,往PW1发送ARP Reply报文。
  7. PE1收到PE2转发来的PC2的ARP Reply报文,也一样添加PC2的MAC地址到自己的表项中(PE2的MAC表中绿色字体内容),并查找MAC表,转发该ARP Reply报文到PC1。
  8. PC1收到PC2的ARP Reply报文,完成MAC地址的学习。
  9. PE1向PW1广播该ARP报文的同时,PE1也通过PW2向PE3发送ARP报文。PE3收到来自PE1的ARP广播报文,添加PC1的MAC地址到自己的MAC表项中(PE3的MAC表中蓝色字体内容),根据水平分割的特性,PE3也只向PC3发送该ARP报文,因为PC3不是该ARP的目的地址,所以PC3不回应ARP Reply报文。

3)MAC地址学习方式::

1,PE即学习AC的MAC地址也学习对应的VLAN

2,PE只学习到AC的MAC地址和接口关系,所有用户都属于同一个广播域

7 VPLS拓展

我们已知VPLS是可以建立通过公网实现而层互访的需求的。

如果在不同位置的CE中配置路由协议,实际上通过vpls也是可以建立邻居关系的。

1)AC的封装方式:

Tag帧格式:

总结:

vlan接入则为LSP为用户分配的标签,为了区分不同的用户,即为P-Tag,骨干网tag,默认

以太网接入:CE发给PE的数据帧不携带LSPf分配的Tag,只携带用户自身侧的 VLAN Tag对于PE来说是没什么意义的

2)PW的封装方式:

PW由PW ID和PW封装唯一标识,两端PW封装类型必须相同,默认情况下,PW的封装方式分为Tagged模式

8 VPLS的弊端

1.VPLS在CE双归接入PE存在环形拓扑的时候,同交换机的破环技术(STP)思路一样,采用阻塞一个端口方式形成无环的转发路径。因此VPLS接入形成了一种主备的模式。

2.由于CE和PE之间只有一条链路转发数据,且PE与PE之间的链路无法形成多路径,可能造成部分链路拥塞。

3.收敛速度慢:PE3在感知到链路故障后会向对端E发送MAC-Withdraw报文,通知删除PE3相关MAC地址。同时PE4将备份链路升级为Active。对端PE1接收到撤销报文后将清除MAC地址,重新学习MAC地址。故障收敛时间与MAC地址数量强相关。

VPWS:

点到点的L2VPN业务

VPWS的基本架构可以分为AC,PW,Tunnel三个部分

  • AC(Attachment Circuit):接入电路。AC是一条连接CE和PE的独立的链路或电路。AC接口可以是物理接口或逻辑接口。AC属性包括封装类型、最大传输单元MTU、以及特定链路类型的接口参数。
  • PW(Pseudo wire):虚链路。这里指在两个PE节点之间的一种逻辑连接。
  • Tunnel(Network Tunnel):隧道。用于透明传送业务数据。
  • PW Signal:PW信令协议,用于协商PW。
  • L2 PDU(Protocol Data Unit)表示链路层报文。
  • T表示Tunnel标签。
  • V表示虚电路VC(Virtual Circuit)标签。
  • T’表示转发过程中外层标签被替换。

CCC方式建立VPWS,需要手工配置CR-LSP,即静态私网标签,就是唯一标识一台CE设备

LDP方式建立VPWS,使用LDP来传递VC信息,两台CE之间使用VC-Type和VC-ID来唯一标识一个VC,两台PE通过LDP交换VC标签

  • 18
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

路明非z

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值