VLL解决方案

https://www.cnblogs.com/darkchen/p/14652540.html

接上篇文档引出VPLS

VLL可以跨地域建立二层交换网络,但有个缺陷是只支持两个site互通,对于多个site间互联无能为力

VPLS解决方案对于CE设备来说运营商网络就类似于一台交换机,各个地域的site节点均接入同一台交换机

应用场景

  

  公司A在深圳,佛山,广州三个pop点拥有自建网络,租用运营商线路三点做互联,并取得了经营许可,可以给其他用户提供广州深圳佛山三点互联,综合考虑决定组建VPLS网络,针对不同企业分配不同VSI, VC lable,PE设备不感知用户侧路由,用户多个site间路由信息由自己维护,用户可以灵活组网,自行选择路由协议

如下图,PE1,PE2,PE3所组成的VPLS网络可以在逻辑上视为一台二层交换机

VPLS组件

  AC(Attachment Circuit)

    接入电路,PE-CE间电路

  PW(Pseudo Wire)伪线

    同VLL

  VSI(Virtual Switch Instance)虚拟交换实例 

    VSI是设备上为每一个VPLS单独划分的一个虚拟交换处理单元,在每一个VSI中都有独立的一张MAC地址表和转发器,并负责终结PW。

    数据从CE设备进入绑定了VSI的PE接口后会在该VSI查找目的imac对应的PW,并转发出去,对于接收的数据根据VC lable查找相应的VSI,根据mac转发至对应端口

以VPN1中,以CE1到CE3的单播报文流向为例,说明基本数据流走向:

  PE1、PE2、PE3同属同一个VPLS域,通过VSI将接入VPLS的AC链路映射到各条PW上,生成该VSI的转发器。
  CE1接收Site1用户的二层报文,通过AC链路送入PE1。
  PE1收到报文后,发现是VPLS接入,则根据目的MAC地址在转发器(Forwarder)中选定转发报文的PW。
  PE1根据PW的转发表项及隧道信息生成两层标签,内层私网标签用于标识PW,外层公网标签用于穿越隧道到达PE2。同时根据目的MAC表索引查找目的MAC地址,将报文进行封装。
  二层报文经公网隧道到达PE2,此时外层标签为私网标签(公网标签已于倒数第二跳弹出)。
  PE2接收该报文,根据私网标签选定转发报文的VSI,剥离私网标签,再根据VSI选择对应的转发器(Forwarder),由转发器(Forwarder)根据报文目的MAC地址将CE1上送的二层报文转发给CE3。

MAC地址管理(转发,学习,泛洪),过程类似传统交换机处理过程,只是把交换机端口更改为PW伪线

  

 

  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报文。

环路解决方案

  VPLS内部具有水平分割原则,“水平分割转发”的意思就是从公网侧PW收到的数据包不再转发到这个VSI关联的其它PW上,只能转发到私网侧,从PE收到的报文不转发到其他PE。也就是说要求任意两个PE之间通过直接相连的PW通信,而不能通过第三个PE设备中转报文,这也是PE之间需要建立全连接(PW全连接)的原因。

  水平分割原则只能解决VPLS内部环路,不能解决同一PE设备上接入的多个CE间环路问题,此种场景下环路解决方案还依赖于STP,VPLS网络可以透传CE设备的BPDU

配置举例

  

基础配置略,PE1-P-PE2间使用ospf,mpls ldp组网

#基础配置略

#PE1
mpls l2vpn
#
vsi dark static
pwsignal ldp
vsi-id 2
peer 3.3.3.3
peer 4.4.4.4
#
mpls ldp
#
#
mpls ldp remote-peer 3.3.3.3
remote-ip 3.3.3.3
#
mpls ldp remote-peer 4.4.4.4
remote-ip 4.4.4.4
#
interface GigabitEthernet0/0/3
l2 binding vsi dark #PE2
mpls l2vpn
#
vsi dark static
pwsignal ldp
vsi-id 2
peer 1.1.1.1
peer 4.4.4.4
#
mpls ldp
#
#
mpls ldp remote-peer 1.1.1.1
remote-ip 1.1.1.1
#
mpls ldp remote-peer 4.4.4.4
remote-ip 4.4.4.4
#
interface GigabitEthernet0/0/3
l2 binding vsi dark #PE4
mpls l2vpn
#
vsi dark static
pwsignal ldp
vsi-id 2
peer 1.1.1.1
peer 3.3.3.3
#
mpls ldp
#
#
mpls ldp remote-peer 1.1.1.1
remote-ip 1.1.1.1
#
mpls ldp remote-peer 3.3.3.3
remote-ip 3.3.3.3
#
interface GigabitEthernet0/0/3
l2 binding vsi dark

测试与抓包

可以看到三个silt站点通过ospf建立起来peer,测试可以互通,抓包分析公网使用mpls隧道,内层标签为VC lable

使用VPLS跨地域多站点建立二层交换网络的更多相关文章

  1. Windows Azure 存储的冗余存储选项和只读访问跨地域冗余存储

    我们很高兴地宣布,现在我们使客户可以获得对数据更高的读取可用性.该预览功能称为"只读访问- 跨地域冗余存储(RA-GRS)",使客户可以在存储帐户主要区域无法读取数据时,通过跨 ...

  2. Google揭开Mesa的神秘面纱——一个具备跨地域复制和近实时特性的可伸缩数据仓库

    http://www.infoq.com/cn/news/2014/08/google-data-warehouse-mesa Google发表了一篇新的论文,该论文描述了他们内部所使用的一个被称为M ...

  3. 基于 DataLakeAnalytics 做跨地域的数据分析

    在阿里云上,很多客户的应用都是多地域部署的, 比如在北京(cn-beijing)的地域部署一个应用让北方的客户访问快一点,同时在杭州(cn-hangzhou)地域部署一份让南方的客户访问快一点.多地域 ...

  4. 华为如何实现基于Git的跨地域协同开发

    跨地域开发的需求其实由来已久,在IT/互联网发展的早期就已存在,只不过限于当时网络环境的因素,无法在线上有效的完成协同工作,所以没法实际开展.而随着近十年网络的快速发展,跨地域协同开发线变得可能而且越 ...

  5. windows server 2008 站点系列--AD的站点建立与子网的管理(zhuanzai)

    本次课程将给大家介绍AD中站点和子网的功能.站点和子网之间的关联,以及相关的设置步骤. 应用背景介绍: contoso公司的总部在西安(Xian),陕南的汉中(Shannan)和陕北的榆林(Shanb ...

  6. wamp2.5虚拟站点建立

    1. D:\wamp\bin\apache\Apache2.2.21\conf 目录下打开httpd.conf修改以下几个地方.(软件安装在D盘) (1)178行DocumentRoot " ...

  7. 使用VLL技术实现多家合作伙伴复用同一条链路做两端数据全透传

    公司A当前租用一条10G跨市运营商光缆,自身业务只用到一半流量,为节省成本,寻求多家合作伙伴共用链路以达到财务需求 合作伙伴需求接入链路全透传,即光缆两端接入点端口逻辑直连 当前有三种方案可以实现上述 ...

  8. Kubernetes容器云平台建设实践

    [51CTO.com原创稿件]Kubernetes是Google开源的一个容器编排引擎,它支持自动化部署.大规模可伸缩.应用容器化管理.伴随着云原生技术的迅速崛起,如今Kubernetes 事实上已经 ...

  9. 跨云平台与物理专线使用Vxlan实现两地二层互通,并使用ospf与bgp做底层链路主备

    Vxlan基础,已掌握可略过 VXLAN网络架构 VXLAN是NVO3中的一种网络虚拟化技术,通过将原主机发出的数据包封装在UDP中,并使用物理网络的IP.MAC作为外层头进行封装,然后在IP网络上传 ...

随机推荐

  1. HTML5存储方式

    由于之前在参加面试或者笔试的过程中经常会被问到HTML5存储的内容,包括它们之间的区别.特征和应用范围,所以看到一篇介绍不错的文章,把里面的个人觉得适合我的内容按照自己的理解总结如下.方便以后忘记了进 ...

  2. HTML5中dialog元素尝鲜

    对话框(别称模态框,浮层)是web项目中用于用户交互的重要部分,我们最常见的就是js中 alert(),confirm(),但是这个对话框的不美观,也不能自定义样式,所以在开发的过程中,一般根据自己自 ...

  3. Android Studio安装及问题

    安装教程+虚拟机调试:https://blog.csdn.net/y74364/article/details/96121530 gradle下载缓慢解决办法:https://blog.csdn.ne ...

  4. 利用css3实现3D轮播图

    动画实现主要利用了z-index将层级关系改变,从而实现了焦点图的效果:css3属性 transform rotate 来实现图片的动画效果 .transition实现过度动画! * { margin ...

  5. python3拉勾网爬虫之(您操作太频繁,请稍后访问)

    你是否经历过这个:那就对了~因为需要post和相关的cookie来请求~所以,一个简单的代码爬拉钩~~~

  6. Thinkphp设计模式和执行流程

    ThinkPHP设计模式 单例模式:数据库连接DB工厂模式:比如Db.class.php中的factory()方法适配器模式:驱动类,数据库观察者模式:Hook类 注册树模式:绑定容器外观模式:fac ...

  7. Codeforces Round #767 (Div. 2) c d, 巧妙标记

    贪心: Problem - C - Codeforces 思维: Problem - D - Codeforces 这两个题不错, 第一个需要考虑后面,就先标记完, 从前遍历挨个除去标记 第二个需要考 ...

  8. 『现学现忘』Git基础 — 8、Git创建本地版本库

    目录 1.Git版本库介绍 2.创建本地版本库 场景一:创建一个空的本地版本库. 场景二:项目中已存在文件时,创建该项目的本地版本库. 场景三:在GitHub网站上创建仓库,克隆到本地. 1.Git版 ...

  9. css兼容问题集锦

    BEGIN; 1.文本框很大,导致里面的内容不居中.以及内容为数字时,不支持text-indent属性 解:line-height: K px; (值为文本框的height值). 2.文本框有背景图片 ...

  10. 通过源码了解Java的自动装箱拆箱

    什么叫装箱 & 拆箱? 将int基本类型转换为Integer包装类型的过程叫做装箱,反之叫拆箱. 首先看一段代码 public static void main(String[] args) ...