分布式系统架构网络之IDC机房

2023-10-27

我们开发的互联网应用被部署到IDC机房里的某个服务器上,从而完成了应用互联网的接入,所以我们接下来学习一些IDC机房的相关知识。

IDC机房又被称为互联网数据中心(Internet Data Center)或者数据中心,IDC不仅是数据存储的中心,还是数据流通的中心。IDC机房是标准化的电信专业级机房,为企业、政府提供服务器托管,租用及相关增值等方面的全方位服务。一开始,IDC机房主要是联通、电信等运营商建设的,后来很多企业也有了自己的IDC机房,BAT都是自建IDC机房。

由于2002年5月国内电信业大重组,原中国电信北方10个省份正式划入中国网通集团,南方21个省份重组为新的中国电信。这次“大分家”把中国的互联网一分为二,于是出现了中国特色的“互联互不通”,这样直接导致了国内的IDC机房往往具备双线接入这一奇特特征。

如下所示是IDC机房的网络架构图,一般分为出口路由区、核心交换区、接入网络区及增值业务区四个区域。

这里写图片描述

1、出口路由区的主要功能是作为IDC机房的出口,与国干网(CHINANET骨干网)和本身的城域网互联,完成外部网络和IDC内网的三层互通,通常由两台CR路由器组成。对于某些大型的省份,通常会建设多个IDC机房,若每个IDC机房之间都与国干网和城域网互联,则会浪费国干网和城域网设备的端口资源和线路资源,因此通常会再建设一个IDC路由骨干层网络。骨干层中的两台CR路由器直接与国干网和城域网互联,各机房IDC出口CR路由器则与骨干层出口路由器互联。

2、核心交换区则由一组核心交换机组成,作为接入层与出口路由区的互联设备,起到汇聚流量的作用,同时IDC内部流量的互通也可以通过核心交换层完成。在云计算业务兴起后,为了扩大二层网络规模,同时提高内网效率,交换网络大多数采用核心层加接入层的扁平化组网,不在设置汇聚层。而为了实现高密接入,核心交换机通常采用数据中心及设备,具有高吞吐、大缓存等特点,同时通过IRF2网络虚拟化技术,将多台核心交换机虚拟成一台,既提高接入密度,又方便管理。

3、接入网络区下联物理服务器,上联核心交换机,主要部署千兆或万兆交换机。由于物理服务器数量众多,且每台物理服务器均有多个端口,这就要求接入层交换机需要实现高密接入。当前,在IDC网络中,接入交换机通常以TOR方式在每个机柜部署两台,实现本机柜的服务器接入。接入交换机通常采用千兆下行(连接服务器),万兆上行(连接核心交换机)的连接方式,并通过IRF2技术进行虚拟化部署。

4、增值业务区部署与增值业务相关的 设备,包括防火墙、IPS、负载均衡等设备。这些设备通常以旁挂核心交换机的方式进行设计,根据业务需求,在核心交换机上将流量增值业务区处理。对于云主机等业务,由于规划使用私网IP网段,因此必须使用防火墙实现NAT转换,该防火墙设备通常也以旁挂方式部署在核心交换机上。

IDC机房通常采用传统的VLAN技术实现租户网络的隔离,VLAN基于IEEE的802.1Q协议,在该协议的帧格式里面定义了VLAN ID的位数为12比特,因此最多只能支持4094个VLAN。而随着云数据中心的各种业务应用的规模落地,业务量不断增长,就可能需要成千上万个VLAN,传统VLAN的数量不能满足云数据中心日后业务规模发展的需求。另外,物理服务器被虚拟化之后,云数据中心内部虚拟机的数量相比原有的物理机发生了数量级的增加,与之对应的虚拟机虚拟网卡的MAC地址数量也相应增加,这对云数据中心接入区网络的交换机地址容量能力产生了很大冲击,当虚拟机数量很多时,会导致交换机的MAC地址表溢出,从而导致数据帧的丢弃或者产生大量的广播帧,严重影响网络的性能。

最后,云数据中心中虚拟机通常需要在一定范围内迁移,在传统VLAN网络下,虚拟机只能在二层网络下迁移,并且为了能够支持虚拟机的迁移,需要在二层网络中对VLAN进行预配置,这造成了VLAN的配置混乱,影响了VLAN广播域的隔离,降低了网络的效率。VXLAN(Virtual eXtensible Local Area Network)虚拟拓展局域网是一种“VLAN升级技术”,它是一种大二层虚拟网络拓展的隧道封装技术,可以很好的解决上诉问题,目前该技术已经成为各种规模化运营的云数据中心不可忽视的关键应用技术。

VXLAN是VMware、思科、Arista、Broadcom、Citrix和RedHat共同提出的IETF草案,可以通过软件的方式来实现支持,其中最重要的开源软件交换机是Open vSwitch,它也是虚拟化网络解决方案中最重要的一个开源软件,OpenStack、Docker都可以用它实现虚拟网络。

参考:架构揭秘从分布式到微服务

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

分布式系统架构网络之IDC机房 的相关文章

随机推荐

  • Liunx - 安装maven

    一 使用步骤 1 下载安装 maven官网 https maven apache org download cgi 上传至云服务中 我使用的连接工具 MobaXterm Personal 一键上传 选择你要安装的路径新建maven文件夹 新
  • 【软件测试】软件测试方法之黑盒测试方法和白盒测试

    白盒测试方法 一 概念 白盒测试也称结构测试或逻辑驱动测试 是针对被测单元内部是如何进行工作的测试 它根据程序的控制结构设计测试用例 主要用于软件或程序验证 它可以形象得用下图表示 二 白盒测试方法应该遵循的原则 保证一个模块中的所有独立路
  • exif-js读取图像的元数据(以取经纬度、方位角为例)

    参考文档 安装 npm install exif js save 引用 import EXIF from exif js 使用 EXIF getData document getElementById imgElement function
  • vue聊天功能模块(九)艾特功能实现

    预览 艾特开始 思路 输入ctrl 弹出群成员列表弹框 点击成员时 把成员名称添加到输入框 同时隐藏弹框 1 点击弹框外任意位置 把弹框关闭即可 2 点击删除键时 把 和名称删掉 3 要实现艾特提示 输入框显示的是 某某某 实际发出去的消息
  • HttpClient 之 发送Https请求

    HttpClient包是一个优秀的Http请求的开源jar 本文Http工具类的封装基于HttpClient 封装后的工具类支持Https请求 但是由于项目的需要快速的实现 以下代码还可能会有点过时 但是要是可行的 并且相对比较简单 1 实
  • 小程序组件化开发

    前言 随着小程序的普及 越来越多的开发者开始使用小程序进行开发 而小程序的组件化开发已经成为了一种标配的开发模式 本文将深入介绍小程序组件化开发的相关知识 包括组件的定义 生命周期 通信和使用等方面 帮助大家更好地理解和使用小程序的组件化开
  • 图解SimCLR框架,用对比学习得到一个好的视觉预训练模型

    点击上方 AI公园 关注公众号 选择加 星标 或 置顶 作者 amitness 编译 ronghuaiyang 正文共 3027 字 33 图 预计阅读时间 9 分钟 导读 有点像词向量预训练模型 这个框架可以作为很多视觉相关的任务的预训练
  • [Qt] QString 和 String 字符串的相互转换

    QString gt String string str qstr toStdString String gt QString QString qstr QString fromStdString str
  • 微信支付本地调试

    经过折腾几天 找了一些资料来看 我不得不吐槽微信这个团队在做文档是如何槽糕 文档做的不好其次 接口那些总体而言 让人感觉很难受 而且给出的方案不是最优而是最麻烦的 和开发者互动很少 开放平台像是一个爱理不理的平台 这几天收集了一些问题记录一
  • 竞赛选题 基于机器视觉的银行卡识别系统 - opencv python

    1 前言 优质竞赛项目系列 今天要分享的是 基于深度学习的银行卡识别算法设计 该项目较为新颖 适合作为竞赛课题方向 学长非常推荐 更多资料 项目分享 https gitee com dancheng senior postgraduate
  • java canvas 动态画图_手把手教你用canvas画动态直线

    自己闲来无事的时候 就想学学热火了好久的H5 然后就看了下canvas 不看不知道 一看下一条 H5我以为没啥 原来都开始提供各种接口和函数了 我滴乖乖 canvas主要是用来画图的 结合定时器 setInterval 函数能够作出精美的动
  • (综述,讲得很好)基于3DMM的三维人脸重建技术总结

    深度学习全监督重建方法 由于真实的三维人脸和二维人脸图像对非常缺乏 采集成本高 很难得到真实二维三维图像对 通常将多张照片进行model fitting求解生成了对应的三维人脸模型 将其作为真值 Ground Truth 从而得到了二维三维
  • 【华为OD统一考试A卷

    华为OD统一考试A卷 B卷 新题库说明 2023年5月份 华为官方已经将的 2022 0223Q 1 2 3 4 统一修改为OD统一考试 A卷 和OD统一考试 B卷 你收到的链接上面会标注A卷还是B卷 请注意 根据反馈 目前大部分收到的都是
  • kubernetes的学习—部署 Dashboard

    部署 Dashboard Dashboard的介绍 Dashboard 仪表盘 是基于网页的 Kubernetes 用户界面 你可以使用 Dashboard 将容器应用部署到 Kubernetes 集群中 也可以对容器应用排错 还能管理集群
  • Java——第一个窗口程序

    代码演示 package Gui import java awt GUI的第一个界面 public class TestFrame public static void main String args Frame f1 new Frame
  • 加密网络空间安全厂商“观成科技”获数千万A轮融资,方广资本领投

    近日 观成科技宣布完成数千万A轮融资 方广资本领投 老股东奇安投资跟投 进化资本担任财务顾问 此次融资将主要用于进一步加大研发和技术研究的投入 持续提升产品的竞争力和服务能力 观成科技是一家致力于以守护加密网络空间安全为使命 以加密流量检测
  • Windows下Java实现语音播放

    链接 https pan baidu com s 1BhXGCBSifLxCLDsZ Q8Rpw 提取码 dgbg 64位操作系统 下载jocab 放入jdk安装目录bin目录下 Maven依赖
  • Linux上安装tenginx

    1 下载tengine http tengine taobao org download cn html 2 将文件上传到 opt tengine的目录上 tengine目录是自定义目录 3 解压包 并进入解压后的文件目录下 4 编译环境准
  • Vue弹窗 Confirm 组件

    Vue的弹窗组价 描述 有时候自己开发项目 需要使用到一些弹窗 提示框之类的东西 一般会有我们自己使用一些UI组件库 或者自己手写一个 哈哈 用别人的东西有时候挺好的 但是有时候又不好 因为业务的需求和UI的设计总是变化的很快 别人的东西难
  • 分布式系统架构网络之IDC机房

    我们开发的互联网应用被部署到IDC机房里的某个服务器上 从而完成了应用互联网的接入 所以我们接下来学习一些IDC机房的相关知识 IDC机房又被称为互联网数据中心 Internet Data Center 或者数据中心 IDC不仅是数据存储的