诞生原因

VPLS存在的问题:
现网大量采用Ethernet L2VPN服务,例如VoIP、HSI和BTV等业务网关部署在BRAS,企业机构之间通过城域网构建二层网络,数据中心互联。
VPLS是现网广泛应用的技术,能够提供二层报文的透传,但依然存在很多限制和新的需求。

限制:

  1. Multihoming:当前VPLS只能支持multihoming的single-active冗余不是,不支持多路径多活转发。
  2. 组播优化:组播的LSPs可以结合VPLS,但是只能用于P2MP的LSPs。对于MP2MP的LSPs使用场景,VPLS无法支持。
  3. 配置复杂度高:当前VPLS提供基于BGP的auto-discovery的single-sided接入,但是需要工程师在接入侧以太配置上再配置大量的网络参数。
  4. 多租户的DCI互联:DCI链路之间不仅传统数据中心间二层,也需要扩展租户的的二层网络。

EVPN解决方法

1.BGP MPLS-Based Ethernet VPN

通过使用BGP协议作为控制面协议,MPLS作为转发面数据封装,通过引入一些新的内容,来解决VPLS场景下比如容易产生环路、多份广播报文以及MAC地址学习的问题。

EVPN(Ethernet Virtual Private Network)其实就是一种用于二层网络互联的VPN技术。EVPN技术采用类似于BGP/MPLS IP VPN的机制,在BGP协议的基础上定义了一种新的NLRI(Network Layer Reachability Information,网络层可达信息)即EVPN NLRI,EVPN NLRI定义了几种新的BGP EVPN路由类型,用于处在二层网络的不同站点之间的MAC地址学习和发布。

2.BGP VxLan-Based Ethernet VPN

VXLAN实现方案没有控制平面,是通过数据平面的流量泛洪进行VTEP发现和主机信息(包括IP地址、MAC地址、VNI、网关VTEP IP地址)学习的。这种方式导致数据中心网络存在很多泛洪流量。为了解决这一问题,VXLAN引入了EVPN作为控制平面,通过在VTEP之间交换BGP EVPN路由实现VTEP的自动发现、主机信息相互通告等特性,从而避免了不必要的数据流量泛洪。

BGP MPLS-Base EVPN

4种路由信息:

Type 1:3中功能

功能1:水平分割(分发ESI标签):

功能2:快速收敛

功能3:别名(任意的多归PE发布MAC等明细路由,其他PE可根据RT1路由形成到所有多归PE的ECMP)

Type2:传递MAC和arp信息

单活模式 (Single-Active Redundancy Mode)

  1. 1个PE如果它收到的1组per ES AD路由中有1个通告的是单活模式,则对于该ES,按照单活模式处理;这时流量只能走主PE。
  2. 如果主PE发生故障,它可以先撤销per ES AD路由;远端PE设备再切换到该组PE中的其他PE。

多活模式 (All-Active Redundancy Mode)

  1. 1个PE如果它收到的1组per ES AD路由中全部通告的是多活模式,则对于该ES,按照多活模式处理;这时流量可以通过每个PE转发。

Type3:隧道的自动建立

Type4:接收者网段选举“DR”

DF选举过程:

BGP Vxlan-Base EVPN

EVPN最早是用于主要解决以下问题:

  1. 控制平面由BGP分发,广播和多播由共享树或进向复制。
  2. 控制平面学习MAC。
  3. 路由反射替代全互联。
  4. 因为NVO的需要解决百万实例在一个物理设施上,所以控制平面的扩展能力非常重要。EVPN及其扩展功能被设计满足这个需求。
  5. 华为将EVPN和VXLAN结合,主要使用Type2,Type3和Type5类路由。

Type2:MAC/ARP信息的发送

EVPN通过扩展BGP协议新定义了几种BGP EVPN路由,这些BGP EVPN路由可以用于传递VTEP地址和主机信息,因此EVPN应用于VXLAN网络中,可以使VTEP发现和主机信息学习从数据平面转移到控制平面。

首先VXLAN需要使用EVPN协议规定的Route Type2,又称为MAC/IP Advertisement route,用于发布主机的MAC或MAC+IP的信息。BGP-EVPN会通过BGP协议,将以太端口学习的MAC、ARP,转化为Route Type2路由发布给其他设备,其他设备接收后生成MAC转发表、主机路由转发表。

这个功能可不简单,传统设备我们学习MAC地址都是通过报文触发,学习报文的源MAC,而BGP-EVPN则通过Route Type2路由携带了MAC信息去发布MAC,可以节省很多的ARP流量。

IP表:(用于L3转发)

MAC表:(用于L2转发)

隧道表:(通过IP与MAC表的Nexthop或者DIP找到隧道表)

传递的路由信息:

通告主机路由:保证精确找到主机,因为同一网段的主机在不同的NVE上,如果发送网段路由,很有可能信息无法传递到对应的设备上。

虚拟机迁移:

Type 3:用于隧道的建立、VNI广播成员的自动加入

Type3路由,又称为Inclusive Multicast Ethernet Tag route,该类型路由是由前缀和PMSI属性组成,用于隧道自动建立、VNI广播成员的自动加入。

该类型路由在VXLAN控制平面中主要用于VTEP的自动发现和VXLAN隧道的动态建立。作为BGP EVPN对等体的VTEP,通过Inclusive Multicast路由互相传递二层VNI和VTEP IP地址信息。

其中,Originating Router’s IP Address字段为本端VTEP IP地址,MPLS Label字段为二层VNI。如果对端VTEP IP地址是三层路由可达的,则建立一条到对端的VXLAN隧道。同时,如果对端VNI与本端相同,则创建一个头端复制表,用于后续BUM报文转发。

VXLAN隧道可以通过手动创建,通过指定两端的VTEP和VNI信息,静态配置创建隧道。而动态协议BGP EVPN中创建VXLAN隧道,则是通过Type3路由, 可以把本端的VTEP地址、VNI等信息发给远端,远端收到后会用来创建VXLAN隧道,并且创建VXLAN隧道的头端复制列表。

VxLAN隧道头部复制列表是为BUM(广播、未知单播、组播)报文准备的,完成复制转发。

Type 5:引入外部路由信息和传递L3路由信息

Type5路由又称IP前缀路由,可用于将EVPN以外的子网网络引入到EVPN,当然可以掩码是32位,用于发布主机的Host路由。

Type5路由可以用来传递网段IP路由,同时可以携带对应VRF的L3 VNI。

也可以用来传递代表VRF的L3 VNI,这里什么是L3 VNI呢?

  1. 由于在分布式网关环境下,跨子网要通信,需要代表各自VRF,而报文里面没有VRF,因此我们这边通过一个特定的VNI映射成VRF,这个VNI就是L3 VNI。
  2. 这时,远端的VTEP在学习到网段路由后,可以添加到对应VPN实例中,并根据下一跳驱动创建L3 VXLAN隧道,并下发路由表。

整理资料来源:HCIE学习文档

BGP Ethernet Virtual Private Network技术原理相关推荐

  1. 【计算机网络学习笔记17】网络安全、加密技术、“Virtual Private Network”技术

    [计算机网络学习笔记17]网络安全.加密技术."Virtual Private Network"技术 一.网络安全概述 1.1 网络系统的安全目标: 1.可用性(Availabil ...

  2. MPLS Virtual Private Network

    目录 传统Virtual Private Network 1.产生 2.网络结构 3.Virtual Private Network模型 3.1.Overlay Virtual Private Net ...

  3. Virtual Private Network虚拟专用网络-在Linux上搭建专用通道

    一.VPN VPN属于远程访问技术,简单地说就是利用公用网络架设专用网络.例如某公司员工出差到外地,他想访问企业内网的服务器资源,这种访问就属于远程访问. 在传统的企业网络配置中,要进行远程访问,传统 ...

  4. Virtual Private Network

    VPN技术的运行机制与发展 虚拟专用网络(Virtual Private Network,VPN)是利用不可靠的公用互联网络作为信息传输媒介,通过附加的安全隧道.用户认证和访问控制等技术实现与专用网络 ...

  5. 什么是Virtual Private Network?

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 @[TOC](文章目录) 前言 提示:主要介绍Virtual Private Network是什么 随着虚拟网络技术的不断发展,概念层 ...

  6. 虚拟专用网(Virtual Private Network)

    虚拟专用网(Virtual Private Network) 假如一个公司的两个场所需要通信,那么每个场所至少需要有一个路由器和全球唯一的IP地址,当场所A中的X主机向B场所的Y主机发送信息时,主机X ...

  7. 企业路由器配置L2TP 站点到站点模式Virtual Private Network指南_3(外网访问内网资源)

    应用场景:  企业路由器提供多类VPN功能.其中L2TP VPN可以实现企业站点之间搭建安全的数据传输通道,将接入Internet的企业分支机构与总部网络通过安全隧道互联,实现资源.信息共享. 资源说 ...

  8. 【SEED Labs 2.0】Virtual Private Network (V*N) Lab

    本文为 SEED Labs 2.0 - Virtual Private Network (V*N) Lab 的实验记录. 文章目录 0. 实验目标 1. 生成证书 2. 设置 Docker 3. 编写 ...

  9. MPLS virtual private network 跨域方案实现原理

    概述: 随着MPLS技术的成熟,其应用越来越流行,尤其是在VPN方面.通过运营商提供的VPN服务,将分布在各地的站点通过运营商的网络连接起来,避免了租用专线,节省了大量的成本.近年来,由于MPLS V ...

  10. virtual private network 与IPSec协议工作原理

    1.什么是数据认证,有什么作用,有哪些实现的技术手段? 数字认证证书它是以数字证书为核心的加密技术可以对网络上传输的信息进行加密和解密.数字签名和签名验证,确保网上传递信息的安全性.完整性. 使用了数 ...

最新文章

  1. 19 个 JavaScript 常用的简写技术
  2. [ Linux ] 釋放記憶體指令(cache) - 轉載
  3. 常用的130个vim命令
  4. 一个实用的表格(锁定表头,可调整单元格大小,可排序)
  5. Java GUI 实现登录界面
  6. C++11左值和右值引用讲解
  7. App Start Up Step
  8. Android 帧动画 (一)
  9. Alpha通道的概念与功能
  10. kitkat(KRT16S)刷入实机nexus4
  11. 中国电信宣布全面布局元宇宙,将打造元宇宙平台和内容生态
  12. 大物期末复习(知识点公式总结+错题分析)
  13. python程序设计基础课后答案-python语言程序设计基础(第2版)课后答案嵩天
  14. Python读取Excel未隐藏的数据
  15. 算法设计与分析 SCAU11083 旅游背包(优先做)
  16. 论文录用后不想发了,撤稿会有什么影响吗?
  17. 利用计算机网络实现OA的功能,oa系统是什么,oa系统功能介绍
  18. Zuul网关拦截器配置
  19. 通过SSH访问电信天翼云服务器,报ssh_exchange_identification: read: Connection reset by peer的解决方法
  20. 他出身草根,却是 Google 资深工程师

热门文章

  1. 【深度学习】你该会的精选面试题(二)
  2. 微醺的夜,胡乱的文字,迷失的我
  3. 机器学习基础算法21-多输出的决策树回归
  4. 数据结构 /ord ;集合;dict()
  5. Java:接口interface
  6. Scala:集合类型Collection和迭代器
  7. python字符串转换为数字_Python不使用int()函数把字符串转换为数字的方法
  8. python有参装饰器详解_Python 带有参数的装饰器实例代码详解
  9. php快速排序空间复杂度,PHP 算法基础----时间复杂度和空间复杂度(转载)
  10. mysql的cost