Overlay网络技术之vxvlan
了解云计算数据中心网络架构的过程中,看到这么一篇不错的关于大二层技术overlay的文章,转载分享给大家!一、 传统网络面临的问题随着企业业务的快速扩展需求,IT做为基础设施,快速部署和减少投入成为主要需求,云计算可以提供可用的、便捷的、按需的资源提供,成为当前企业IT建设的常规形态,而在云计算中大量采用和部署的虚拟化几乎成为一个基本的技术模式。部署虚拟机需要在网络中无限制地迁移到目的物理位置,虚机增长的快速性以及虚机迁移成为一个常态性业务。传统的网络已经不能很好满足企业的这种需求。 传统网络架构限制东西流量传统网络架构以三层为主,主要是以控制南北数据流量为主,由于数据中心虚拟机的大规模使用,虚拟机迁移的特点以东西流量为主,在迁移后需要其IP地址、MAC地址等参数保持不变,如此则要求业务网络是一个二层网络。但已有二层技术存在下面问题。
业务规模受网络设备规格限制云业务中虚拟机的大规模部署,使二层地址(MAC)表项的大小限制了云计算环境下虚拟机的规模,特别是对于接入设备而言,二层地址表项规格较小,限制了整个云计算数据中心的业务规模。 不能适应大规模租户部署云业务需要大量租户之间的隔离,当前的主流二层网络隔离技术为VLAN,但是在大量租户部署时会有两大限制。一是VLAN可用的数量为4K左右,远远不能满足公有云或大型私有云的部署需求;二是如果在大规模数据中心部署VLAN,会使得所有VLAN在数据中心都被允许通过,会导致任何一个VLAN的广播数据会在整个数据中心内泛滥,大量消耗网络带宽,同时带来维护的困难。 二、 解决问题的新思路-Overlay网络针对前文提出的三大技术挑战,传统解决问题的思路是把原先的网络架构改造为互通的大二层网络,总是带来新的问题。于是业界提出新的思路,在不改变原先架构的基础之上新建一个Overlay的网络,来为云业务提供支撑。
1. Overlay网络的优点东西流量受到传统网络架构限制问题的解决方法Overlay是把二层报文封装在IP报文之上的新的数据格式,因此,只要网络支持IP路由可达就可以部署Overlay网络,而IP路由网络本身已经非常成熟,且在网络结构上没有特殊要求。而且路由网络本身具备良好的扩展能力,很强的的故障自愈能力和负载均衡能力。采用Overlay技术后,企业不用改变现有网络架构即可用于支撑新的云计算业务,极方便用户部署。 业务规模受网络规格限制问题的解决方法部署Overlay网络后,虚拟机数据封装在IP数据包中,对于承载网络(特别是接入交换机)只需要学习隧道端点的MAC,MAC地址规格需求极大降低。对于核心网关处的设备表项(MAC/ARP)要求依然极高,当前的解决方案仍然是采用分布式网关方式,通过多个核心网关设备来提高表项的总体规格。 租户数量受限问题的解决方法针对VLAN只能支持数量4K以内的限制,在Overlay技术中扩展了隔离标识的位数,可以支持高达16M的用户,极大扩展了隔离数量。针对VLAN技术下广播风暴问题,Overlay对广播流量转化为组播流量,可以避免网络本身的无效流量带宽浪费。 2. 实现Overlay网络的三大技术方案IETF在Overlay技术领域提出三大技术方案。
在实现Overlay架构的三大技术中,其中尤以VXLAN技术为最佳:
VXLAN具有以下技术优势:
3. VXLAN控制平面隧道的实现三种方式:VXLAN控制平面隧道的实现方式主要分为三种:通过数据平面自学习、通过控制协议学习(利用扩展路由协议IS-IS或BGP完成VXLAN控制平面的地址学习)和通过SDN Controller实现。这三种方式的主要特点如表1所示。
表1 VXLAN控制平面隧道的实现三种方式 三种实现方式对比,在大规模的云计算虚拟化环境中,以Controller方式为最优。
三、 VXLAN网络的部署方法1. VXLAN的网络模型
图1 VXLAN三种组网模型 如图1所示,根据客户不同组网需求,分为以下三种组网模型。
H3C 支持以上所有类型的VXLAN网络架构,以满足不同客户的组网需求。 2. VXLAN的实际组网控制平面借助H3C高可靠的SDN Controller集群实现管理和配置,H3C VCF架构下的VXLAN的组网模型如图2所示,所有设备由H3C Controller通过标准协议集中管理,减少了传统设备管理的复杂性。同时当用户业务扩展时,通过集中管理用户可以方便快速的部署网络设备,便于网络的扩展和管理。在VXLAN实际网络部署中,接入设备根可以为vSwitch和物理交换机。为了实现VXLAN的网关功能,由核心物理网络设备承担,提高了网络性能。
图2 VXLAN实际网络部署 核心设备主要提供VXLAN 网关功能,支持VXLAN报文的封装与解封装,并根据内层报文的IP头部进行三层转发,支持跨VXLAN之间的转发,支持VXLAN和传统VLAN之间的互通。 vSwitch软件主要提供虚拟化VXLAN 隧道封装功能,支撑VM接入Overlay网络,支持VXLAN报文的封装与解封装,支持跨VXLAN之间的转发。 物理接入网络设备主要提供VXLAN 隧道封装功能,支撑物理服务器接入Overlay网络,支持VXLAN报文的封装与解封装,并根据内层报文的MAC头部进行二层转发。 该方案具有如下特性:
四、 结束语云计算发展过程中,计算虚拟化和存储虚拟化已经取得长足发展,但网络虚拟化一直是云业务资源虚拟化的短板, Overlay的网络架构是在传统物理网络基础上构建了逻辑的二层网络,是网络支持云业务发展的理想选择,提供了网络资源池化的最佳解决方式,是H3C云网融合技术路线中网络部分的关键技术。它克服了基于 VLAN 的传统限制,可为处于任何位置的用户带来最高的可扩展性和灵活性、以及优化的性能。 |
Overlay网络技术之vxvlan的更多相关文章
- 准备 overlay 网络实验环境 - 每天5分钟玩转 Docker 容器技术(49)
为支持容器跨主机通信,Docker 提供了 overlay driver,使用户可以创建基于 VxLAN 的 overlay 网络.VxLAN 可将二层数据封装到 UDP 进行传输,VxLAN 提供与 ...
- 创建 overlay 网络 - 每天5分钟玩转 Docker 容器技术(50)
上一节我们搭建好实验环境,配置并运行了consul,今天开始创建 overlay 网络. 在 host1 中创建 overlay 网络 ov_net1: -d overlay 指定 driver 为 ...
- 云计算和大数据时代网络技术揭秘(十三)VXLAN
Vxlan(virtual Extensible LAN)虚拟可扩展局域网,是一种Overlay方式的网络技术,采用了mac in UDP的方式 进行封装,共50字节的报头.该技术的目标是解决虚拟机在 ...
- Docker 新网络 overlay 网络
Overlay网络是指在不改变现有网络基础设施的前提下,通过某种约定通信协议,把二层报文封装在IP报文之上的新的数据格式. 这样不但能够充分利用成熟的IP路由协议进程数据分发,而且在Overlay技术 ...
- sdn学习-1(概念:Underlay网络和Overlay网络)
随着云计算.大数据.移动互联网等新技术的普及,部署大量虚拟机成为一种必然趋势.解决这些虚拟机迁移问题理想的方案是在传统单层网络(Underlay)基础上叠加(Overlay)一层逻辑网络,将网络分成两 ...
- Docker原生网络技术简介
Docker原生网络技术简介 默认网络 在宿主机部署好Docker Engine后会默认创建三种网络:Bridge.Host和None,如下: docker network ls NETWORK ID ...
- 基于多租户的云计算Overlay网络
一 . 为什么需要Vxlan 1. vlan的数量限制 4096个vlan远不能满足大规模云计算数据中心的需求 2. 物理网络基础设施的限制 基于IP子网的区域划分限制了需要二层网络连通性的应用负载的 ...
- Docker容器跨主机通信--overlay网络
一.Docker主机间容器通信的解决方案 Docker网络驱动 Overlay: 基于VXLAN封装实现Docker原生Overlay网络 Macvlan: Docker主机网卡接口逻辑上分为多个子接 ...
- Overlay网络与物理网络的关系
编者按:无论是云计算还是SDN都把注意力集中在数据中心网络的建设上,各种解决方案层出不穷,其中以VMware为代表的软件厂商提出Overlay网络方案后,为数据中心网络的发展提出了新的思路.那么Ove ...
随机推荐
- 2.3. 实体(Core Data 应用程序实践指南)
Entity 实体,就像是数据表的映射类.用实体就可以创建托管对象了. 实体需要做的就是设置实体名称.实体属性及属性数据类型. 还可以根据实体配置NSManagedObject的子类(可选),创建子类 ...
- Mysql中各种常见数据库存储引擎对比
- Delphi的ListView自动排序
private SortCol: Integer; SortWay: Integer; procedure TForm1.LVweColumnClick(Sender: TObject; Column ...
- js原生设计模式——3简单工厂模式\简单工厂模式封装简单对象
1.Factory基本写法 <!DOCTYPE html><html lang="en"><head> <meta charset= ...
- 拖动条(SeekBar)的功能和用法
拖动条和进度条非常相似,只是进度条采用颜色填充来表明进度完成的程序,而拖动条则通过滑块的位置来标识数值——而且拖动条允许用户拖动滑块来改变值,因而拖动条通常用于对系统的某种数值进行调节,比如调节音量等 ...
- 纯代码实现CSS圆角
我这里说的是纯代码,是指的不使用图片实现圆角,图片实现圆角,这里就不说了. 纯代码实现圆角主要有3种方法: 第一种:CSS3圆角 #chaomao{ border-radius:2px 2 ...
- thinkphp 3.2 模型的使用示例
原来以为thinkPHP的 model 就和PHPCMS一样 就起到一个连接数据库的作用,今天看了视频,才发现这个也是 mvc中的m 使用方法可以使用 D() 方法 下面是 UserControll ...
- JTree实例
JTree实例 private void createTreeByXdDdt() { DefaultComboBoxModel boxModel = (DefaultComboBoxModel) cm ...
- 部署statspack工具(二)之解决方案1
7.解决方案一:调整buffer cache sys@TESTDB12>alter system set sga_max_size=804m scope=spfile; //重启数 ...
- LINQ 的查询_联表、分组、排序
1.查询 var v = from s in db.Set<ScoreInfo>().ToList()group s by s.subject into scoreselect new{ ...


