VPLS技术学习总结

1VPLS技术的产生背景

在运营网络,特别是MAN(城域网)日渐增多,城域网通常提供点到点的业务,并且不能跨广域网(WAN)提供服务。为了能在MAN/WAN上提供类似以太网的多点业务,产生了VPLS技术。

VPLS技术是一种基于MPLS和以太网技术的二层VPN技术,主要目的就是通过分组交换网络(Private SwitchedNetWorks)连接多个以太网LAN网段,使它们像一个LAN那样工作。

2VPLS涉及到术语

MPLSL2VPN:就是在MPLS网络上透明的传递用户的二层数据。从用户的角度来看,这个MPLS网络就是一个二层的交换网络,通过这个网络,可以在不同站点之间建立二层的连接。

VPLS(Virtual Private LANService):在公用网络上提供的一种一点到多点的L2VPN业务,VPLS使地域上隔离的用户站点能通过MAN/WAN相连,并且使各个站点之间的连接效果像在一个LAN中一样。

VPWS(Virtual Private WireService):是指分组交换网络PSN(Packet SwitchedNetwork)中尽可能的模仿ATM、帧中继、以太网、低速TDM电路和SONET/SDH等业务的基本行为和特征的一种二层业务承载技术。

CE(Custom Edge):直接与服务提供商相连的用户边缘设备。

PE(Provide Edge):指骨干网上的边缘设备,与CE相连,主要负责VPN业务的接入,它完成报文从私网到公网的隧道,从公网隧道到私网的映射和转发。PE可以进一步分为UPE和SPE。

UPE(Underlayer ProviderEdge):用户汇聚设备,即直接连接CE的设备称为下层PE,简称UPE。UPE只需要与基本VPLS全连接网络的其中一台PE建立连接。

SPE(Super ProviderEdge):连接UPE并位于基于MPLS全连接网络内部的其他设备都建立连接。对于SPE而言,与之相连的UPE就像一个CE,UPE与SPE之间建立的PW将作为SPE的AC。

PR(Provider Router):骨干网络核心路由器,负责MPLS转发。

VSI(Virtual SwitchInstance):虚拟交换实例,通过VSI,则可以将VPLS的实际接入链路映射到各条虚连接上。

PW(Pseudo Wires):虚链路,在两个VSI之间的一条双向的虚拟连接,VSI由一对单向的MPLS VC构成。

AC(Attachment Circuit):接入链路,CE与PE的链接,它可以是实际的物理接口,也可以是虚拟接口。AC上的所有用户报文一般都要求原封不动的转发到对端Site,包括用户的二三层协议报文。

Forwards:PE的一种,PE收到AC上送的数据帧,由转发器选定转发报文使用的PW,事实上就是VPLS转发表。

隧道(Tunnels):用于承载PW,一条Tunnels可以承载多条PW,一般情况下为MPLS隧道。隧道是一条本地PE和对端PE之间的直连通道,完成PE之间的数据透传。

封装(Encapsulation:PW上传输的报文使用标准的PW封装格式和技术,PW上的VPLS报文封装有两种模式:Tagged和Raw模式。

PW信令协议(Pseudo-WireSignaling):VPLS实现的基础,用于创建和维护PW,还可以用于自动发现VSI的对端设备,目前主要有LDP和BGP两种。

3 VPLS隧道的两种实现方式

PW间隧道的建立方式有两种,即LDP方式和MP-BGP方式。它们之间的不同之处,主要体现在以下几个方面:

3.1采用LDP协议比较简单,对PE要求比较低,LDP不能提供VPN成员自动发现机制,需要手工配置;采用BGP协议需要PE运行BGP,对PE要求高,可以提供VPN成员的自动发现机制。

3.2LDP需要在两个PE之间建立LDP session,其session数与PE数的平方成正比;而用BGP方式可以利用Router Reflector降低BGP连接数。

3.3LDP方式分配标签是对每个PE分配一个标签,需要的时候才分配;BGP方式则分配一个标签快,对标签有一定的浪费。

3.4LDP方式必须保证所有域中配置的VPLS Instance都使用同一个VSI ID值空间;BGP方式必须采用VPN Target识别VPN关系。

4 VPLS的实现方式

VPLS的实现主要分为控制平面与数据平面两部分。

4.1 VPLS PE的控制平面功能

4.1.1成员发现

找到同一个VPLS中的所有其他PE的过程。这个过程可以通过配置的方式实现,也可以通过使用协议自动来完成,如BGP。

4.1.2信令机制

在同一个VPLS的PE之间建立、维护和拆除PW的任务由信令协议来完成,如LDP和BGP等。

4.2 VPLS PE的数据平面封装功能

4.2.1 封装

从CE收到以太网帧后,PE首先对其封装后再发到分组交换网络中。

4.2.2转发

根据报文是从哪个接口上接收的以及报文的目的MAC地址决定转发出口。

4.3 VPLS的典型组网

整个VPLS网络就像一个交换机,它通过MPLS隧道在每个VPN的各个Site之间建立PW,通过PW将用户二层报文在站点间透传。对于PE设备,它会在转发报文的同时学习源MAC并建立MAC转发表项,完成MAC地址和用户接入接口AC和PW的映射关系。对于PE设备,只需要完成依据MPLS标签进行MPLS转发,不关心MPLS报文内部封装的二层用户报文。

5 报文的封装和接入

5.1 报文的封装

5.1.1 AC上的报文封装

AC上的报文封装方式由用户接入方式决定,用户接入方式可以分为两种:VLAN接入和Ethernet接入。

VLAN接入:CE发送到PE或PE发送到CE的以太网帧头带有一个ALAN TAG。该TAG是一个ISP为了区分用户而要求用户打上“服务界定符”,称为P-TAG。

Ethernet接入:CE发送到PE或PE发送到CE的以太网帧头中不带P-TAG。如果此时帧头中有VLAN TAG,则它只是用户报文的内部VLAN TAG称为U-TAG。U-TAG是该报文在发送到CE前已经携带,而不是CE打上的,用于CE区分该报文。

5.1.2 PW上的报文封装

PW上的报文封装可以分为两种:Raw模式和Tagged模式。

Raw模式:P-TAG不在PW上传输,对于CE发送到PE上的报文,如果PE收到带有P-TAG的报文,则将P-TAG去除后,再打上两层MPLS标签后转发;如果PE收到不带有P-TAG的报文,则直接打上两层标签转发。对于PE发送CE的报文,PE根据实际配置选择添加或者不添加P-TAG后转发给CE,不允许重新写入或者移除已存在的TAG。

Tagged模式:上送的PW的帧必须带有P-TAG传输,对于CE发送到PE的报文,如果PE收到带有P-TAG的报文,则不去除P-TAG,而是直接打上两层标签后转发;如果收到不带有P-TAG的报文,则添加一个空TAG后,再打上两层标签后转发。对于PE发送到CE的报文,PE根据实际配置选择重写去除和保留服务界定符后转发给CE。

6 VPLS环路的避免

在以太网上,为了避免环路的发生,一般的二层网络都要求能使能STP协议。但在私网的STP协议不应该参与到ISP的网络中去,而是只在私网的设备间运行,避免私网设备间的环路。

VPLS中,使用“全连接”和“水平分割转发”来避免环路,每一个PE必须为每一个VPLS转发实例创建一棵到该实例下的所有其他PE设备的树。每个PE设备必须支持“水平分割”策略来避免环路,即PE不能在具有相同VPLS实例的PW上转发报文。“水平分割转发”就是指从公网侧PW收到的数据包不再转发到其他PW上,只能转发到私网侧,从PE收到的报文不能转发到其他PE。

PE间的全连接和水平分割一起保证了VPLS转发的可达性和无环路,当CE有多条连接到PE,或连接到一个VPLS VPN的不同CE间有连接时,VPLS不能保证没有环路发生,需要使用其他方法,例如STP等来闭环。

6VPLS学习心得

VPLS学习的关键在于以下几点:

(1)   VPLS技术产生的背景及其要解决的问题;

(2)   VPLS典型组网的结构及报文转发流向;

(3)   VPLS结构中对MPLS双层标签以及隧道的理解;

(4)   VPLS封装的几种模式;

(5)   VPLS避免环路发生的解决方法。

VPLS技术学习总结相关推荐

  1. IE-LAB网络实验室:VPLS技术介绍

    VPLS,全称为VirtualPrivateLanService,也就是虚拟专用局域网业务.目前比较热门的一种MPLS二层VPN技术.目前业界有两个标准,一个标准以LDP作为信令协议,由Alcatel ...

  2. Maya 2022中的硬表面建模技术学习视频教程

    Maya 2022中的硬表面建模 信息: 使用正确的拓扑和边流在Maya中建模硬曲面对象. 你会学到什么 硬质表面工具和技术 细分工作流程 边缘流动控制 正确拓扑 材料设置 Studio Lightn ...

  3. Maya阿诺德室外环境灯光照明和渲染技术学习视频教程

    Maya阿诺德室外环境灯光照明和渲染技术学习视频教程 Maya and Arnold_ Exterior Lighting and Rendering 教程时长 1小时47分 大小 1.1G 1280 ...

  4. java mvc框架代码_JAVA技术学习笔记:SpringMVC框架(内附入门程序开发代码)

    原标题:JAVA技术学习笔记:SpringMVC框架(内附入门程序开发代码) JavaEE体系结构包括四层,从上到下分别是应用层.Web层.业务层.持久层.Struts和SpringMVC是Web层的 ...

  5. 听听阿里老哥对算法工程师技术学习路线的建议

    点击上方,选择星标或置顶,不定期资源大放送! 阅读大概需要15分钟 Follow小博主,每天更新前沿干货 来源丨https://zhuanlan.zhihu.com/p/192633890 前言 知乎 ...

  6. 【技术学习】一次Node.js站点渗透

    前言 遇到一个站,后端是Node.js写的,对于这种类型的站点,一般比较难getshell,但也实现了最终的目标,拿到后台权限 信息搜集 先进行常规的信息搜集,子域名扫描.端口扫描.目录扫描等 这个站 ...

  7. 推荐一个很牛逼的 Github 项目:本人历时半年完成的【Java 面试 + Java 后端技术学习指南】,已拿大厂offer

    今天给大家分享一份[Java 面试 + Java 后端技术学习指南]:一份通向理想互联网公司的面试指南,包括 Java,技术面试必备基础知识.Leetcode.计算机操作系统.计算机网络.系统设计.分 ...

  8. 小五思科技术学习笔记之SSH

    下面介绍一下相关概念: SSH的概念: SSH的英文全称为Secure Shell,SSH使用TCP的22号端口,其目的是要在非安全的网络上提供安全的远程登陆和其他安全的网络服务, 为什么要使用SSH ...

  9. 亲爱的,我是一条Linux运维技术学习路径呀。

    根据我的经验,人在年轻时,最头疼的一件事就是决定自己这一生要做什么.在这方面,我倒没有什么具体的建议:干什么都可以,但最好不要写小说,这是和我抢饭碗.总而言之,干什么都是好的:但要干出个样子来,这才是 ...

最新文章

  1. 2w字 + 40张图带你参透并发编程!
  2. 自动驾驶视觉融合-相机校准与激光点云投影
  3. Hibernate Session的delete()方法
  4. 零基础学python视频百度云-零基础入门学习Python 小甲鱼视频教程
  5. python流程控制-python之流程控制
  6. caffe之特征图可视化及特征提取
  7. SQL*Plus中替换变量与定义变量
  8. scp传输文件,自动填充密码
  9. Spark从HDFS上读取JSON数据
  10. 把庞大的 npm script 拆到单独文件中
  11. Jupyter notebook中怎么添加Pytorch运行环境
  12. Interfaces
  13. Android中的PopUpWindow
  14. docker添加新的环境变量_docker使用教程[三]Dockfile小试牛刀
  15. 迭代近邻算法Iterative Closest Point, ICP
  16. sqlmap批量扫描burpsuite拦截的日志记录
  17. python去掉停用词_Python - 删除停用词
  18. c语言 多进程实现基于UDP的网络群聊聊天室
  19. Python快速实现一个域名、IP信息聚合网站
  20. 语音文件怎么转换文字?这两个方法就能轻松解决。

热门文章

  1. 文件系统之inode
  2. .net 运用ajaxpro 功能省市县联动
  3. 通电螺旋线圈与永磁真空断路器
  4. windows10下安装和配置nodejs环境
  5. ESD门禁闸机管理系统如何适应不同场景及需求
  6. docker快速搭建zookeeper集群
  7. 兼容性测试主要测试那些方面
  8. 【UART】USCI:UART模式
  9. ARM与Thumb之间的状态转换
  10. 离散傅里叶变换的公式理解