Clos网络的初步分析(一)
前言
好好学习研究一下Clos网络的念头由来已久,本来计划在三月上旬把文章写完。但最近针对云的理解和认识,在内部写了一个长篇大论,占了很大的精力,所以就拖到了现在。
一、为什么会出现Clos网络?
Clos网络架构,出现之初只是为了解决电话交换网络的需求。在那个年代,电信联盟圈子里,遇到问题的解法之一就是:电路怎么办、结构怎么办。
计算机网络圈,在面对类似以太网aloha冲突时,往往会通过设计CSMA/CD、CSMA/CA这种载波侦听多路访问的冲突控制或避免机制予以应对。我们当年学习计算机网络时,涉及到局域网络,也通常只会看到核心、汇聚、接入三层,以及各种STP生成树协议,甚至根本就不知道还有Clos这个人。
但从什么时候开始,Clos网络架构被计算机网络积极引入并得到大面积应用?通常的说法是,针对数据中心内部东西向流量占比达到80%且需要极高的可用通信带宽等情况,STP生成树始终不能很好解决,因此Clos网络架构被引入进来,并在计算机网络圈里形成了一个新的名词:叶脊网络(spine-leaf)。在实际工作中,相信很多人都做过相关的实现。
但是,Clos网络架构由何而来,重点解决的究竟是什么问题,感觉有的人并不是非常清楚,因此在这里把自己的学习理解记录下来,希望能够有所帮助。
二、什么是Clos网络?
1953年,贝尔实验室研究员Charles Clos发表了一个文章《a study of Non-blocking Switching Network》(实际的文章收录时间是1952年10月)。虽然名字里有switching network,但实际上这是一个针对电话交换网络,采用多级设备实现无阻塞电话交换的方法。
个人看完之后的一个感受就是:我刚刚学习了一篇数学文章。这个文章的原文,有兴趣的朋友可以留言索取。
当时的背景是,电话交换网络设备已经由人工交换机发展为步进制交换机,再进化为纵横式交换机。而纵横式交换机基于开关矩阵原理设计而成。下面贴一张手画的矩阵示意图。
假设一个矩阵有3个输入、3个输出,为了实现任意的输入和输出之间随时可以通信,矩阵交叉点(crosspoint)就需要有至少3*3=9个点。如果有N个用户,那么就会意味着交叉点将达到N^2。如果将这种要求放到一台交换机之上,相当于是既要极大提升能力,同时还要控制好成本。既要我美艳又要我杀人不眨眼,显然是很困难的。
那么Clos的思想是什么呢?就是如何通过多个小规模、低成本的单元,来构建复杂、大规模的网络。也就是,通过增加低成本设备的数量,在不依赖单体设备的高性能、高可靠前提下,通过略显复杂的网络架构设计,来实现无阻塞的通信诉求。
当我们将矩阵由一个平面拓展到三个平面的立体结构时,交叉点数量C(3)=6N^(3/2)-3N。与前面的N2相比,数量极大减少,也就意味着显著降低了对于单台设备的性能要求。有兴趣的可以通过学习原文来了解为什么会是这个结论。这里只贴一张手画的示意图。
简要总结一下Clos网络的特点:
1.无阻塞
2.设备数量多
3.可有效降低对单体设备性能的要求
Clos网络的初步分析(一)相关推荐
- Azure底层架构的初步分析
之所以要写这样的一篇博文的目的是对于大多数搞IT的人来说,一般都会对这个topic很感兴趣,因为底层架构直接关乎到一个公有云平台的performance,其实最主要的原因是我们的客户对此也非常感兴趣, ...
- 【2017年第3期】大数据服务三农的初步分析与探索
孙忠富, 褚金翔, 马浚诚, 杜克明, 郑飞翔 中国农业科学院农业环境与可持续发展研究所,北京 100081 摘要:三农问题是当前中国密切关注的社会问题,大数据技术的发展为三农带来了新的机遇.首先,对 ...
- 2017 Python 问卷调查结果初步分析
Note:本文在我的个人站点同步发布:2017 Python 问卷调查结果初步分析 · Lee's Space Station,无广告,体验更好. 未经授权,禁止转载. 前言 2017 年末,PSF( ...
- 国内首个开源网络流量可视化分析平台 -- 流影
流影:基于流量的网络行为高级分析平台 流影是一款基于全流量的高级网络行为分析平台,该系统是由深海鱼(北京)科技有限公司流影项目组研发设计,首发开源是1.0版本. 项目简介 深海鱼(北京)科技有限公司专 ...
- 企业网络营销信息源分析报告
企业网络营销信息源分析报告 前言 选择来了家乡黄冈的以下的机构进行了调查,湖北省黄冈中学.李时珍中学.艾江山健康科技有限公司.黄冈市第二人民医院.广睿电子科技有限公司.沙隆达蕲春有限公司.本来想选择我 ...
- BGP in the datacenter, 数据中心的BGP,数据中心网络架构,Clos网络架构
数据中心的BGP 说明: 这是最近在学习<BGP in the datacenter>.由于原文是全英文.所以在学习过程中,利用谷歌翻译和网易翻译,再把翻译不通的地方,加上自己理解稍微改了 ...
- 关联规则挖掘_基于人工智能的网络告警关联分析处理的应用
1 概述 随着通信网络近些年的快速发展,其规模已经相当庞大,在网络中每天都会产生告警信息,并且这些信息数据量庞大.突发故障多,当网络设备出现故障并引发告警时,与它关联的设备也会引发相应的故障,并在短时 ...
- 拉卡拉手机刷卡器音频通讯技术原理初步分析
拉卡拉手机刷卡器音频通讯技术原理初步分析 kimmking@163.com http://blog.csdn.net/kimmking/article/details/8712161 1. ...
- 网络数据包分析与抓取
多年的网络数据包分析与抓取经验,闲话少说,上干货. 先列举数据包的种类:1.Http数据包:2.UDP数据包:3.TCP数据包:4.ARP数据包:其实数据包的概念是很泛的,在软件可逆领域,数据包抓取. ...
最新文章
- 微信程序跳转到页面底部 scroll-view
- python在windows下操作word的方法的代码
- Quill编辑器IOS下无法获取焦点的解决方法
- python counter函数定义_分享几个自己常用的Python高级函数
- QT 中 关键字讲解(emit,signal,slot)以及使用
- 2013-11-5 深圳尚游网络公司 - 服务器开发工程师
- mysql两者之间_Django和MySQL - 两者之间的数据是不同的
- mysql 日期间隔_mysql比较两个日期间隔
- Apple Mac OS X每日一技巧016:MacBook电源线如何缠绕
- Docker安装aria2+ariang
- linux消息分发机制,RabbitMQ消息分发轮询和Message Acknowledgment
- LOGO特训营 第三节 首字母创意手法
- Catagory用法
- 怎么给证件照换背景?教你一招快速更换证件照背景色
- 小米2s刷原生安卓_小米2/2S刷原生安卓Android4.4ROM刷機教程
- Python不借助中间值实现两个数之间的交换
- 根据内核Oops 定位代码工具使用— addr2line 、gdb、objdump
- BM开发出量子计算机,迄今错误率最低量子比特面世,有望推进量子计算机研发工作...
- 基于openharmony的智慧婴儿陪睡伴侣
- SQL Server、Oracle 如何清除指定SQL的执行计划
热门文章
- 免费 | 通知 ∣ 8月6-9日 ∣ 第十届分子生药学暑期研讨会线上会议日程和参会链接...
- 页面上下滚动,背景图不动
- iPhone为盲人自动识别并标记按钮和UI功能
- VBoxManage命令详解技术文章
- Hive学习之路(四):Hive内置函数介绍与实现WordCount
- 解析大数据时代的机器人文明
- JSDOM和BOM学习第五天(下)
- 三星出局 传台积电独家代工苹果未来两代A10、A11芯片
- 为什么要 “打工人” ?
- 计算机开始按钮的功能,Win8.1终于有了“开始按钮”