目录

前文列表

数据中心网络架构的问题与演进 — 传统路由交换技术与三层网络架构

数据中心网络架构的问题与演进 — 网络虚拟化

数据中心网络架构的问题与演进 — CLOS 网络与 Fat-Tree、Spine-Leaf 架构

数据中心网络架构演进回顾



传统的数据中心使用三层架构(Three-tier Architecture),根据物理位置将服务器划分为不同 POD。这种架构由核心交换机、汇聚交换机和接入交换机组成。在汇聚交换机和接入交换机之间运行生成树协议(Spanning Tree Protocol,STP)以保证网络的二层部分(L2)没有环路。三层架构中,每个 POD 内的服务器都属于同一个 VLAN, 因此服务器无需修改 IP 地址和网关就可以在 POD 内部任意迁移位置。POD 内走二层广播,POD 间走三层路由,所以横向流量路径会很长(接入→汇聚→核心→汇聚→接入)而导致高时延。STP 有许多好处:简单,即插即用(plug-and-play,P&P),只需很少配置。但是,STP 无法使用并行转发路径(Parallel Forwarding Path),所以它永远会禁用 VLAN 内的冗余路径,这意味着在未发生故障时,最大链路带宽的 50% 会被 Block(阻塞)掉。

2010 年,Cisco 提出了 vPC(Virtual Port Channel,虚拟链路聚合)技术来解决 STP 的限制。 vPC 解放了被 STP 禁用的端口,提供接入交换机到汇聚交换机之间的 Active-Active 上行链路,充分利用可用的带宽。使用 vPC 技术时,STP 会作为备用机制(Fail-safe Mechanism)。虚拟机、容器等技术的发展,使得应用的部署方式越来越分布式,导致数据中心内部横向流量(East-West-Traffic)显著提升。这些流量需要被高效地处理,并且还要保证低的、可预测的延迟。然而,vPC 只能提供两个并行上行链路,因此三层数据中心架构中的带宽成为了瓶颈。



随着虚拟化技术的发展,原来三层网络架构的数据中心中基于 POD 的二层设计,已经无法满足虚拟化、云计算大规模的二层扩展需求,例如:vMotion 等 Live Migration 技术要求 L2 越大越好。所以在二层以 POD 形式做了隔离的计算、网络和存储资源,现在都应该可以被池化(Pooled,继而催生了从接入层到核心层的大二层域(Larger L2 Domain)。大二层域,即整个数据中心网络都是一个 L2 广播域(L2 Segment 被扩展到所有 POD)。这样,数据中心的管理员可以创建一个集中式的、更加灵活的、能够按需分配的资源池,服务器/虚拟机就可以在任意地点创建,迁移,而不需要修改 IP 地址或默认网关。



大二层网络的缺点是 BUM(Broadcase,Unknown Unicast,Multicast)会在整个数据中心传播,这最终限制了网络的规模。因为网络规模大到一定程度时,BUM 风暴就会严重影响正常的网络通讯。这是数据中心网络发展过程中向网络服务提供商们提出的又一个新的课题,而服务商们交出的答卷就是 Overlay 网络。

Overlay 网络

现代虚拟化数据中心的网络要加速应用部署和支持 DevOps,必须满足特定的前提条件。例如:需要支持扩展转发表、扩展网段、L2 Segment Extension、虚拟设备漂移(Mobility)、转发路径优化、共享物理基础设施上的网络虚拟化和多租户等等。Overlay 网络可以解决以上提到的问题,因此各厂家在今年来陆续推出了多种新的帧封装格式(Encapsulation Frame Format):

  • VXLAN
  • GRE
  • Geneva
  • NVGRE: Network Virtualization Using Generic Routing Encapsulation
  • TRILL: Transparent Interconnection of Lots of Links
  • LISP: Location/Identifier Separation Protocol

Overlay 网络是指在现有的网络(Underlay Network)的基础上再构建的一个虚拟网络。所谓的 Underlay 网络,就是之前的交换机所在的网络,只要是 IP 网络就行。而新构建的 Overlay 网络,用来作为服务器通讯的网络。Overlay 网络是一个 L3 in L2 网络。也就是说,只要 L3 网络能覆盖的地方,那 Overlay 的 L2 网络也能覆盖。

简而言之,Overlay 网络就是是在共享底层网络(Underlay Network)的节点之间互连形成的虚拟网络,这使得在不修改底层网络的情况下,可以部署对网络拓扑有特定要求的应用。

Overlay 网络的优势

优化的设备功能:Overlay 网络使得可以根据设备在网络中的位置不同而对设备进行分类(和定制)。Edge 或 Leaf 设备可以根据终端状态信息和规模优化它的功能和相关的协议;Core 或 Spine 设备可以根据链路状态优化它的功能和协议,以及针对快速收敛进行优化。

Fabric 的扩展性和灵活性:Overlay 网络使得可以在 Overlay 边界设备上进行网络的扩展。当在 Fabric 边界使用 Overlay 时,Spine 或 Core 设备就无需向自己的转发表中添加终端主机的信息(e.g. 如果在宿主机内进行 Overlay 的封装和解封装,那 Overlay 边界就是在宿主机内部)。

可重叠的 IP 地址:数据中心中使用的大部分 Overlay 技术都支持虚拟网络 ID(VID,),用来唯 一地对每个私有网络进行范围限定和识别(scope and identify)。这种限定使得不同租 户的 MAC 和 IP 地址可以重叠(overlapping)。overlay 的封装使得租户地址空间和 underlay 地址空间的管理分开。

基于 VxLAN Overlay 的 Spine-Leaf 网络架构



基于 VxLAN 的 Overlay 网络在 L3 IP Underlay 网络之上构建了一层 L2 Overlay 网络,通过 VTEP 隧道机制传输 L2 包。例如下图中,原有的交换机网络不变,服务器之间通过 Overlay 网络实现了跨 Leaf 交换机的 L2 网络。这样,在 Overlay 网络中,服务器可以任意部署,而不用考虑现有网络的架构。

  • 单纯的 Spine-Leaf

  • 基于 VxLAN Overlay 的 Spine-Leaf

一个完整的, 基于 VxLAN Overlay 的 Spine-Leaf 网络架构如下图所示。这种网络架构称为 VxLAN Fabric,通常有两种实现方式:一种是基于 Flood-Learn 的模式,与传统的 L2 网络类似;另一种是基于 MP-BGP EVPN 作为控制层。在该架构中的 VM 并不知道 VxLAN Overlay 的存在,VM 只是把 Ethernet Frame 发出来。待 Leaf 交换机上的 VTEP(VxLAN Overlay,需要在 Leaf 交换机上集成 VTEP)接收到 VM 的 Ethernet Frame 后,就会自动的将其封装成 VxLAN 数据包(本质是一个 UDP 包),然后在原有的 Spine-Leaf 的 Underlay 网络上进行 L3 传输。基于 VxLAN Overlay 的 Spine-Leaf 网络架构就是通过这种方式来打破了大二层网络的限制,即将 L2 广播域限制在了 Underlay 上(Leaf 节点),又将 POD 扩展到了整个 Overlay



关于 VxLAN 技术的实现原理在《Networking 基本术语/概念》一文中已有记录,这里不再赘述。

参考文章

https://arthurchiao.github.io/blog/spine-leaf-design-zh/

https://zhuanlan.zhihu.com/p/30119950

数据中心网络架构的问题与演进 — Overlay 网络的更多相关文章

  1. 数据中心网络架构的问题与演进 — CLOS 网络与 Fat-Tree、Spine-Leaf 架构

    目录 文章目录 目录 前文列表 CLOS Networking Switch Fabric 胖树(Fat-Tree)型网络架构 Fat-Tree 拓扑示例 Fat-Tree 的缺陷 叶脊(Spine- ...

  2. 数据中心网络架构的问题与演进 — NFV

    目录 文章目录 目录 前文列表 前言 NFV NFV 的最终目标 NFV 的抽象框架 基础架构层与虚拟基础设施管理层 资源管理与业务流程编排层 OSS 层 SDN 控制层 NFV 的生态合作 NFV ...

  3. 数据中心网络架构的问题与演进 — 云网融合与 SD-WAN

    目录 文章目录 目录 前文列表 云网融合 云网融合的应用场景 SD-WAN SD-WAN 的应用场景 企业组网互联 SD-EN 数据中心互联 SD-DCI 云间互联 SD-CX 企业用户接入云 数据中 ...

  4. 数据中心网络架构的问题与演进 — 混合云与 VPC 专有网络

    目录 文章目录 目录 前文列表 历史背景 混合云 Why hybrid cloud? 混合云市场 混合云的逻辑架构 混合云应用场景 灾难恢复 数据备份 负载扩容 应用部署 开发测试生产部署 混合云产品 ...

  5. 数据中心网络架构的问题与演进 — SDN

    目录 文章目录 目录 前文列表 OpenFlow 源起 从 OpenFlow 衍生 SDN 前文列表 <数据中心网络架构的问题与演进 - 传统路由交换技术与三层网络架构> <数据中心 ...

  6. 数据中心 CLOS 架构

    1.数据中心网络架构挑战 随着技术的发展,数据中心的规模越来越大,一个数据中心的服务器容量从几年前的几千台服务器发展到今天的几万甚至几十万台.为了降低网络建设和运维成本,数据中心网络的设计者们也竭力将 ...

  7. 谈谈 数据中心SOA 架构

    为什么要讨论 数据中心SOA 架构呢? 请参考我写的另外一篇文章  <论 微服务 和 Entity Framework 对数据的割裂>    https://www.cnblogs.com ...

  8. Overlay网络技术之vxvlan

    了解云计算数据中心网络架构的过程中,看到这么一篇不错的关于大二层技术overlay的文章,转载分享给大家! 一. 传统网络面临的问题 随着企业业务的快速扩展需求,IT做为基础设施,快速部署和减少投入成 ...

  9. [转]漫谈数据中心CLOS网络架构

    http://djt.qq.com/article/view/238 1.数据中心网络架构挑战 随着技术的发展,数据中心的规模越来越大,一个数据中心的服务器容量从几年前的几千台服务器发展到今天的几万甚 ...

随机推荐

  1. NORDIC 出现NRF_ERROR_NO_MEM错误

    Which SDK version are you using, is it SDK v12.x.x? Which function returns NRF_ERROR_NO_MEM? Is it s ...

  2. BLE 5协议栈-通用访问规范层(GAP)

    文章转载自:http://www.sunyouqun.com/2017/04/ 通用访问规范GAP(Generic Access Profile)是BLE设备内部功能对外的接口层,它规定了三个方面:G ...

  3. 超简单!教你如何修改源列表(sources.list)来提高软件访问速度

    因为Ubuntu官方的源地址不在国内,所以在国内的访问速度非常慢,比如:我们要下载或是更新软件那速度比蜗牛还慢.所以,我们需要改成国内的镜像服务器,这样,我们在下载或更新软件的时候就会很快了. 配置步 ...

  4. 1.python环境安装

    一:安装Python与环境配置 二:安装pip 三:Anaconda安装和使用 3.1 什么是 Anaconda? Anaconda是专注于数据分析的Python发行版本,支持 Linux, Mac, ...

  5. Python中关于txt的简单读写模式与操作

    Python中关于txt的简单读写操作 常用的集中读写模式: 1.r 打开只读文件,该文件必须存在. 2.r+ 打开可读写的文件,该文件必须存在. 3.w 打开只写文件,若文件存在则文件长度清为0,即 ...

  6. Linux之apt-get软件管理

    apt-get 用Linux apt-get命令的第一步就是引入必需的软件库,Debian的软件库也就是所有Debian软件包的集合,它们存在互联网上的一些公共站点上.把它们的地址加入,apt-get ...

  7. updatedepthtexture 和 screen space shadow 开关

    2018.0.3f 里面directional light开了shadow 就会有一张updatedepth 如果距离远 没有阴影就没有shadow pass 但是updatedepth没有关掉 管线 ...

  8. java 获取随机数的方法

    方法一: (数据类型)(最小值 + Math.random()*(最大值-最小值+1) ); 示例: (int)(1+Math.random()*(10-1+1)): 获取int类型 1-10的随机数 ...

  9. Java-JDBCUtil工具类

    import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import ja ...

  10. SQL Prompt 5 功能按键说明

    1. Refresh suggestions                 未知,按了没反映 2.Format sql                               标准化SQL代码书 ...