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. 学习zabbix(十)

    Zabbix 3.0 基础介绍 [一] 一.Zabbix介绍   zabbix 简介 Zabbix 是一个高度集成的网络监控解决方案,可以提供企业级的开源分布式监控解决方案,由一个国外的团队持续维护更 ...

  2. 相对路径在IEAD中的位置

    相对路径在IEAD中的位置 工具栏-->Run -->Edit Configurations -->Working directory-->就是了 这里是直接到软件的地址:剩下 ...

  3. c++的常用库

    C++ 资源大全 关于 C++ 框架.库和资源的一些汇总列表,内容包括:标准库.Web应用框架.人工智能.数据库.图片处理.机器学习.日志.代码分析等. 标准库 C++标准库,包括了STL容器,算法和 ...

  4. 给新手的最简单electron使用教程

    我花了两个月闲暇翻译完了文档,大概是目前最完整最实时的中文文档了,有需要可以去看看学学:github传送门,大多数的需求阅读文档即可解决,实际上,翻译文档正是我入门一项未知事物时的最简单常用的法子. ...

  5. Angular2入门系列(五)———— 路由参数设置

    Angular2入门系列(五)---- 路由参数设置路由配置: { path: '', component: CarProFile, children: [ { path: 'add', compon ...

  6. 一块小饼干(Cookie)的故事-上篇

    cookie 如果非要用汉语理解的话应该是 一段小型文本文件,由网景的创始人之一的卢 蒙特利在93年发明. 上篇是熟悉一下注册的大致流程,下篇熟悉登录流程以及真正的Cookie 实现基本的注册功能 我 ...

  7. SQList基础+ListView基本使用

    今日所学: SQList基础语法 SDList下载地址 SQLite Download Page SQList安装教程SQLite的安装与基本操作 - 极客开发者-博客 ListView用法 没遇到什 ...

  8. jboss学习4-jboss7开发配置指南

    1      Jboss7下载与安装1.1     官方下载路径:http://www.jboss.org/jbossas/downloads,目前最新稳定版本为7.1.1 final,分别有zip和 ...

  9. Uncaught TypeError: document.getElementsById is not a function

    今天博主终于开始攻关javascript(俗称js)了,不过要注意了,它和java可是一丁点关系都没有,就像老婆饼和老婆一样. 下面就让我们来讨论一下博主这次犯下的低级错误吧 一.背景(解决方法在文末 ...

  10. BootstrapBlazor 使用模板创建项目

    原文连接:https://www.cnblogs.com/ysmc/p/16101157.html BootstrapBlazor 官网地址:https://www.blazor.zone Boots ...