目录

前文列表

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

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

数据中心网络架构的问题与演进 — 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. Pysnooper 一款大受欢迎的Debug模块

    Github地址 安装 PIP pip install pysnooper import pysnooper @pysnooper.snoop() def number_to_bits(number) ...

  2. IPC之mq_sysctl.c源码解读

    // SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2007 IBM Corporation * * Author: Cedric ...

  3. 白话跨域CORS

    跨域访问控制是浏览器和服务器按照约定,协同工作,守护安全的一种机制. 其中认为浏览器和服务器是安全的,但是浏览器上运行的页面(HTML+JS)可能不安全. 分几种不同方式. 页面跨域简单请求(Get/ ...

  4. 热门前沿知识相关面试问题-MVC/MVP/MVVM架构设计模式面试问题详解

    MVC[最常用]: MVC的定义:M:业务逻辑处理.[业务MODEL]V:处理数据显示的部分.[如xml布局文件]C:Activity处理用户交互的问题.[也就是Activity在MVC中扮演着C的角 ...

  5. 浅析Service Worker

    一.service worker是什么? 平常浏览器窗口中跑的页面运行的是主JavaScript线程,DOM和window全局变量都是可以访问的. Service Worker是走的另外的线程,可以理 ...

  6. BZOJ 4031: [HEOI2015]小Z的房间 (矩阵树定理 板题)

    背结论 : 度-邻 CODE1 O(n3logn)O(n^3logn)O(n3logn) #include <bits/stdc++.h> using namespace std; typ ...

  7. Binding使用的属性、DataContext上下文绑定必须使用的情况

    RelativeSource属性 https://blog.csdn.net/yangwenxue1989/article/details/81624240 Binding时,如果明确知道数据源的Na ...

  8. Ubuntu:电源管理

    本文适用于Ubuntu 16.04,造冰箱的大熊猫@cnblogs 2018/3/4 在Ubuntu 16.04中,与电源管理相关的选项位于System Settings下的Power对话框中. 要启 ...

  9. Lucas(卢卡斯)定理

    Lucas定理 对于C(m,n)%P(P是质数)这样的问题,可以通过预处理阶乘和阶乘的逆元,来快速计算.但是当m,n大于P时,就不能保证m,n与P互质了,但不互质的情况下,乘法逆元不存在,此时就需要卢 ...

  10. DOM对象属性

    事件  onmouseover 鼠标以上事件  onmouseout    鼠标离开事件  onclock 鼠标点击事件  onfocus 获取焦点 onblur 失去焦点 oninput  输入事件 ...