1.  叶脊网络架构简介

天地万物,应运而生。传统的三层网络架构,在发展了多年后,终于也命数将尽了,替代它的,将是叶脊网络架构。究其原因,是因为传统三层网络架构自身存在一些无法突破的限制与弊端,在当今云计算风起云涌,虚拟化如火如荼,数据中心越来越大,网络规模需要无限扩展的时代,叶脊网络架构应运而生。

免费获取本系列剩余文章,请关注我的公众号: DevOps365

1.1 传统三层网络的弊端

如上图是传统三成网络架构的典型拓扑结构:

  1. 接入层:接入交换机通常位于机架顶部,所以它们也被称为ToR(Top of Rack)交换机,它们物理连接服务器。
  2. 汇聚层:汇聚交换机连接同一个二层网络(VLAN)下的接入交换机,同时提供其他的服务,例如防火墙,SSL offload,入侵检测,网络分析等, 它可以是二层交换机也可以是三层交换机。
  3. 核心层: 核心交换机为进出数据中心的包提供高速的转发,为多个二层局域网(VLAN)提供连接性,核心交换机为通常为整个网络提供一个弹性的三层网络。

免费获取本系列剩余文章,请关注我的公众号: DevOps365

在这种网络架构下,存在如下的一些弊端:

  1. 带宽的浪费:为了防止环路,汇聚层和接入层之间通常会运行STP协议,使得接入交换机的上联链路中实际承载流量的只有一条,而其他上行链路将被阻塞(如图中虚线所示),造成了带宽的浪费;
  2. 故障域较大:STP协议由于其本身的算法,在网络拓扑发生变更时需要重新收敛,容易发生故障,从而影响整个VLAN的网络;
  3. 难以适应超大规模网络:在云计算领域,网络规模扩大,数据中心也分布在不同的地理位置,虚拟机要求能在任意地点创建,迁移,而保持其网络属性(IP, 网关等)保持不变,需要支持大二层网络,在上图的拓扑中,无法在VLAN10和VLAN20之间作上述迁移;

对于上述带宽浪费的问题,思科提出的解决方案是vPC(virtual Port Channel)协议,可以将接入交换机的两条上行链路做成一个vPC,同时承载流量,从而避免了带宽的浪费,提升了带宽的利用率,然而,一方面,这种方案仍然无法做到水平扩展,因为vPC只支持最多两个上行链路,上行链路增多时,无法线性增加带宽;另一方面,vPC是思科的私有协议,对于厂商的依赖性强,成本上不具有优势,下图为vPC的架构图:

上图的方案提高了带宽利用率,但仍没有解决大二层的问题,解决方案是将核心层以下的部分全部放在同一个二层网络中,但是,同一个二层网络中容纳如此多的设备,二层网络中的广播风暴将随着设备的增加而越来越严重,最终给交换机带来沉重的负载,从而影响流量,下图为传统网络大二层的解决方案示意图:

在过去的业务模式中,分布式还没有兴起,一个服务通常需要访问的资源在同一个服务器上,因此东西向流量较少,主要需要关注的是南北向流量,以一个web服务为例,后端服务也许只位于一个服务器上,这个服务处理请求时不需要向别的服务器发起请求,在本机上就可以完成处理,处理完成后将结果返回给浏览器,如果访问请求增多,则南北向流量增大,对单个服务器的运算能力也要求较大,然而东西向流量并不会变多。

免费获取本系列剩余文章,请关注我的公众号: DevOps365

然而由于技术的发展,如今的数据中心对网络的需求早已发生了变化:

  1. 虚拟化的兴起:为了提高计算和存储资源的利用率,如今的数据中心几乎都会采用虚拟化技术,而虚机资源的迁移会大大增加网络中的东西向流量;
  2. 软件架构的解耦:当今的一个服务可能会拆分成多个服务部署在不通的虚拟机上,可能位于不通的位置,这些服务之间会频繁的通信,会大大增加东西向流量;
  3. 分布式应用的兴起:数据和应用如今会分布在成千上万个服务器上,任务需要在这些服务起上进行分发,计算,汇总,返回,会大大增加东西向流量;

传统架构下,当存在大量东西向流量时,汇聚交换机和核心交换机的压力会大大增加,网络规模和性能也就限制在了汇聚层和核心层。要支持大规模的网络,就必须有性能最好,端口密度最大的汇聚层核心层设备,这样的设备成本高,不是所有企业都买得起,且必须在建设网络时就预先规划好网络规模,在网络规模小时,会造成资源的浪费,在网络规模继续扩大时,扩容也比较困难,因而让企业陷入了成本和可扩展性的两难选择之中。

1.2 叶脊网络架构的优势

如上图所示为叶脊网络架构的简单模型,SPINE和LEAF之间为全网状连接(Full Mesh),具有如下优势:

  1. 带宽利用率高:每个LEAF到SPINE的多条上行链路以负载均衡方式工作,充分的利用了带宽;
  2. 网络延迟可预测:在以上模型中,各LEAF之间的连通路径的条数可确定,均只需经过一个SPINE,东西向网络延时可预测;
  3. 可水平扩展带宽:带宽不足时,增加SPINE交换机数量,可水平扩展带宽;
  4. 服务器数量水平扩展:服务器数量增加时,增加LEAF交换机,扩大数据中心规模
  5. 单个交换机要求低:南北向流量可以从LEAF节点出去,也可从SPINE节点出去,东西向流量会分布在多条路径上,对单个交换机的性能要求不高;
  6. 高可用性强大:传统网络采用STP协议,当一台设备故障时就会重新收敛,影响网络性能甚至发生故障,SPINE LEAF架构中一台设备故障时,不需重新收敛,流量继续在其他正常路径上通过,网络连通性不受影响,带宽也只减少一条路径的带宽,性能影响微乎其微;
  7. 可扩展性好:无需提前规划网络规模,按需扩容,小规模启用,大规模适用。

接下来我们可以根据交换机的端口数量和带宽,对SPINE LEAF架构的网络适用的规模进行简单的估计,如下图所示的拓扑:

估算基于以下假设:

  1. SPINE数量:16台
  2. 每个SPINE的下联端口:48个 × 100G
  3. SPINE上联端口:16个 × 100G
  4. LEAF数量:48台
  5. 每个LEAF的下联端口:64个 × 25G
  6. LEAF的上联端口: 16个 × 25G

SPINE的下联端口数量和LEAF的上联端口数量相同,以充分利用端口,在考虑链路SPINE LEAF之间的带宽全部跑满的情况下,每个LEAF下联的服务器数量最多为:

即刚好等于LEAF的下联端口数量,总共可支持的服务器数量为:

也就是说,在上述假设下,一组SPINE LEAF网络可以支持3072台服务器,这是相当于一个中大型规模的数据中心,那么如果仍有扩展的需求该怎么办呢?根据上述的计算,LEAF和SPINE的下联端口都已经耗尽,在这个网络中已无法增加SPINE,LEAF或服务器。让我们继续深入一下,看看Facebook的Fabric网络架构:

免费获取本系列剩余文章,请关注我的公众号: DevOps365

在这种架构中,我们的SPINE LEAF网络是其中的一个POD, 我们的SPINE是图中的Fabric Switches,我们的LEAF是图中的Rack Switches,最上面的Spine Switches把各个POD连通起来。当一个POD的容量已满时,可以增加POD,并用SPINE将这些POD连通起来,实现了网络的继续扩展。除了前面描述的POD和SPINE,上图中还有黄色的Edge Plane,这是为数据中心提供南北向流量的模块。它们与SPINE交换机的连接方式,与前文中简单的的SPINE LEAF架构一样。并且它们也是可以水平扩展的。

SPINE LEAF网络架构只是一种网络部署的拓扑方式,具体的实现方法与配置多种多样,有的厂商根据这种拓扑结构定义了特定的网络协议,如思科的Fabric Path等。接下来,笔者将要介绍的是利用SPINE LEAF网络架构构建一个全三层的网络的设计思路与实践方案。

免费获取本系列剩余文章,请关注我的公众号: DevOps365

点击进入下一节: 叶脊(Spine-Leaf)网络拓扑下全三层网络设计与实践(二) - 架构设计思路 - 网络规划

【网络】叶脊(Spine-Leaf)网络拓扑下全三层网络设计与实践(一) - 叶脊网络架构简介相关推荐

  1. 【网络】叶脊(Spine-Leaf)网络拓扑下全三层网络设计与实践(三) - 交换设备互联

    3. 交换机互联 3.1 本节目标 了解Spine Leaf网络基本拓扑结构: 网络设备互联接口配置: 网络设备bgp配置: 3.2 拓扑结构: 如下图所示, 本节使用的Spine Leaf网络拓扑, ...

  2. 服务器物理部署拓扑图,【网络】叶脊(Spine-Leaf)网络拓扑下全三层网络设计与实践(五)-物理服务器路由方案及配置...

    5.1 本节目标 理解物理机的业务ip之间的通信过程: 了解如何在leaf交换机上配置业务ip的静态路由: 了解如何在物理机上配置业务ip及其他相关配置项: 5.2 拓扑结构 本节拓扑结构与上节相比没 ...

  3. 每日一学|数据中心spine leaf网络架构

    注:本文来源公众号:云宏WinHong,Vol. 042云宏大讲坛 | 数据中心spine leaf网络架构 . 随着业务形态的变化,数据中心网络的交换架构也在不断的发展.传统的三层网络结构应用广泛而 ...

  4. 简单明了!OLTP场景下的数据分布式设计原则

    来自:DBAplus社群 作者介绍 温卫斌,就职于中国民生银行信息科技部,目前负责分布式技术平台设计与研发,主要关注分布式数据相关领域. 前言 最近几年做分布式项目,很多工作是关于OLTP(联机交易系 ...

  5. kubernetes不同的命名空间下的容器能通信吗_深入浅出聊聊Kubernetes网络:容器网络初探...

    前 言 随着云计算的兴起,各大平台之争也落下了帷幕,Kubernetes作为后起之秀已经成为了事实上的PaaS平台标准,而网络又是云计算环境当中最复杂的部分,总是让人琢磨不透.本文尝试着围绕在Kube ...

  6. FEDORA9安装后的配置lvlv全记录必看一览表 解决FC9安装后网络需激活

    FEDORA9安装后的配置lvlv全记录必看一览表 解决FC9安装后网络需激活 论坛相关精品信息: <script type="text/javascript">< ...

  7. 中国首个“芯片大学”即将落地;生成对抗网络(GAN)的数学原理全解

    开发者社区技术周刊又和大家见面了,萌妹子主播为您带来第三期"开发者技术联播".让我们一起听听,过去一周有哪些值得我们开发者关注的重要新闻吧. 中国首个芯片大学,南京集成电路大学即将 ...

  8. 阿里携手分众打通线上线下全链路 U众计划品效协同双11转化大提升

    雷帝网 乐天 1月2日报道 阿里巴巴与分众传媒今日在上海召开"新零售.新营销.新连接"联合发布会,共同宣布推进"U众计划",携手引领线上线下全链路.品效协同的新 ...

  9. 顶刊IJCV 2022!华为GhostNet再升级!全系列硬件上最优极简AI网络

    作者丨王云鹤@知乎 来源丨https://zhuanlan.zhihu.com/p/540547718 编辑丨CVer GhostNet作为近年来最流行的轻量级神经网络架构,其在ARM和CPU端的应用 ...

最新文章

  1. C++ Primer 5th笔记(chap 13 拷贝控制)析构函数
  2. OpenGL OBJ模型加载.
  3. C#中的线程(三) 使用多线程
  4. 测开2 - Python(文件操作)
  5. 【ElasticSearch】ElasticSearch 中使用衰减函数来完美你的搜索结果
  6. oracle 性能诊断工具,oracle性能诊断工具
  7. thinkphp5连接数据库mysql_ThinkPHP学习(三)配置PHP5支持MySQL,连接MySQL数据库
  8. [GIT] warning: LF will be replaced by CRLF问题解决方法
  9. Ubuntu安装MDK5
  10. 在 Windows 中为高级用户配置 IPv6 的指南
  11. 微信开放平台、微信公众平台和微信商户平台
  12. 记忆力训练软件测试自学,记忆力训练题,每天10分钟,一周提高5倍记忆力
  13. CSS属性分类扫描-表格属性
  14. Unity Shader - ARB_precision_hint_fastest / ARB_precision_hint_nicest 命令
  15. Oracle EBS 值集获取段限定词SQL
  16. linux使用入门debian,Debian 7.7入门安装与配置
  17. 今天是第几天python_今_今是什么意思_今字怎么读_今的含义_今字组词-新东方在线字典...
  18. 30系列显卡安装tensorflow1.15
  19. 掷一枚硬币,直到连续出现两次正面朝上的时候停止,问掷硬币次数的期望
  20. Centos7防火墙与IPTABLES详解

热门文章

  1. 基于QT实现Mp3播放器(理论论述部分)
  2. 2014中国计算机研究生排名,2014年考研计算机相关三大专业全国高校排名
  3. python画散点图和折线图
  4. 打包后生成压缩文件及进行MD5校验批处理脚本
  5. Java SHA256加密
  6. Pytorch环境搭建-Gpytorch
  7. Angular的变更检测
  8. 【Mysql】主库宕机解决方案
  9. Java mysql同步复制_MySQL数据的主从复制、半同步复制和主主复制详解
  10. EasyNVR网页摄像机无插件H5、谷歌Chrome直播方案使用详情功能-视频录像功能说明...