| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 网络协议 -> 网络层级介绍到数据中心网络 -> 正文阅读 |
|
[网络协议]网络层级介绍到数据中心网络 |
网络分层? ? ? ? 计算机网络是分层次的,数据流就是一级一级逐层处理和转发。OSI模型将通信系统中的数据流划分为七个层。维基百科:https://zh.wikipedia.org/wiki/OSI%E6%A8%A1%E5%9E%8B。 ????????互联网协议套件(英语:Internet Protocol Suite,缩写IPS)是网络通信模型,以及整个网络传输协议家族,为网际网络的基础通信架构。它常通称为TCP/IP协议族(英语:TCP/IP Protocol Suite,或TCP/IP Protocols),简称TCP/IP。维基百科:https://zh.wikipedia.org/wiki/TCP/IP%E5%8D%8F%E8%AE%AE%E6%97%8F ? ? ? ? 综上,OSI是一个理论上的网络通信模型,而TCP/IP则是实际运行的网络协议,下面是TCP/IP体系层次介绍。
网络设备概念????????交换机:交换机工作在OSI模型的数据链路层上。交换机内部的CPU在每个端口成功连接时,通过ARP协议来学习各端口的MAC地址,保存成一张ARP表。后续通信发往该MAC地址的数据包将仅仅送往其对应的端口,而不是所有的端口。因此,交换机可用于划分数据链路层广播,即冲突域(Hub或者Repeater连接的所有节点可以被认为是在同一个冲突域内),但它不能划分网络层广播,即广播域(接收同样广播消息的节点的集合)。 ????????交换机被广泛应用于二层网络交换,俗称“二层交换机”。 ? ? ? ? 分类:二层交换机、三层交换机、四层交换机、七层交换机,分别工作在OSI模型的第二层、第三层、第四层和第七层。 ? ? ? ?? ?????????网关:顾名思义就是连接两个网络的设备。现如今很多局域网都是采用路由来接入网络,因此现在通常指的网关就是路由器的IP。网关能在不同协议间移动数据,而路由器能在不同网络间移动数据。对于以太网中的网关只能转发三层以上的数据包,这一点和路由器是一样的。而不同的是,网关中并没有路由表,它只能按照预先设定的不同网段来进行转发。网关最重要的一点就是端口映射,子网内用户在外网看来只是外网的IP地址对应着不同的端口,这样看来就会保护子网内的用户。 ? ? ? ? 路由器:路由器一般特指能够实现路由寻找和转发的特定类产品,路由器很显然能够实现网关的功能。提供了路由与转发两种重要机制,可以决定数据包来源端到目的端所经过的路由路径,这个过程称为路由。将路由器输入端的数据包移送至适当的路由器输出端,称为转发(转送)。路由器工作在OSI模型的网络层上。路由器的一个作用是连通不同的网络,另一个作用是选择信息传送的线路。路由器与交换机的差别即在于路由器是OSI模型第三层的产品,交换机是OSI模型第二层的产品。 ?? 二层网络和三层网络????????网络结构中按照逻辑拓扑结构进行的分类,并不是说ISO七层模型中的数据链路层和网络层,而是指核心层,汇聚层和接入层,这三层都部署的就是三层网络结构,二层网络结构没有汇聚层。???????? ????????核心层:用于汇聚层的的互联,并实现整个数据中心与外部网络的三层通信。是整个网络的支撑脊梁和数据传输通道,整个三层网络结构中,核心层的设备要求是最高的,必须配备高性能的数据冗余转接设备和防止负载过剩的均衡负载的设备,以降低各核心层交换机所需承载的数据量,是网络的高速交换主干。 ? ? ? ? 汇聚层:在两层之间承担“媒介传输”的作用,用于接入层的互联,实施策略、安全、工作组接入、源地址或目的地址过滤等多种功能,它是实现策略的地方,各种防火墙、负载均衡等业务也部署于此。 ????????接入层:用于连接所有的计算节点。通常以机柜交换机(TOR,Top of Rack,柜顶交换机)的形式存在。 ? ? ? ? 二层网络一般只能组建小型局域网:交换机根据MAC地址表进行数据包的转发,有则转发,无则泛洪,即将数据包广播发送到所有端口,频繁的对未知的MAC目标的数据包进行广播,在大规模的网络架构中形成的网络风暴是非常庞大的,这也很大程度上限制了二层网络规模的扩大,因此二层网络的组网能力非常有限。 ? ? ? ? 三层网络可以组建大型网络:三层交换机在一定程度上可以替代路由器,但三层交换机出现最重要的目的是加快大型局域网内部的数据交换,所具备的路由功能也多是围绕这一目的而展开的,所以他的路由功能没有同一档次的专业路由器强,在安全、协议支持等方面还有许多欠缺,并不能完全取代路由器工作。 ????????实际应用:处于同一个局域网中的各个子网的互联以及局域网中VLAN间的路由,用三层交换机来代替路由器,而只有局域网与公网互联之间要实现跨地域的网络访问时,才通过专业路由器。 网络模型发展—从三层网络到“Spine-Leaf网络架构”(叶脊网络)? ? ? ? 以下一部分摘自:干货分享:到底什么是叶脊网络? - IT之家 ????????1953年,贝尔实验室有一位名叫Charles Clos的研究员,发表了一篇名为《A Study of Non-blocking Switching Networks》的文章,介绍了一种“用多级设备来实现无阻塞电话交换”的方法。? ????????Charles?Clos提出的网络模型,核心思想是:用多个小规模、低成本的单元,构建复杂、大规模的网络。就是后来产生深远影响的CLOS网络模型。 ????????80年代,随着计算机网络的兴起,开始出现了各种网络拓扑结构,例如星型、链型、环型、树型。 ? ? ? ? 树形结构:传统的树型网络,带宽是逐级收敛的。什么是收敛呢?物理端口带宽一致,二进一出,就是1:2的收敛。 ????????2000年之后,互联网从经济危机中复苏,以谷歌和亚马逊为代表的互联网巨头开始崛起。他们开始推行云计算技术,建设大量的数据中心(IDC),甚至超级数据中心。? ????????传统树形结构不适用当前网络架构,出现了胖树(Fat-Tree)结构,实际还是CLOS模型。胖树(Fat-Tree)更像是真实的树,越到树根,枝干越粗。从叶子到树根,网络带宽不收敛。 ?????????胖树架构被引入到数据中心之后,数据中心变成了传统的三层结构: ?????????2010年之后,为了提高计算和存储资源的利用率,所有的数据中心都开始采用虚拟化技术。网络中开始出现了大量的虚拟机(VM,Virtual Machine)。与此同时,微服务架构开始流行,很多软件开始推行功能解耦,单个服务变成了多个服务,部署在不同的虚拟机上。虚拟机之间的流量,大幅增加,这种平级设备之间的数据流动,我们称之为东西向流量。东西向流量,其实也就是一种“内部流量”。这种数据流量的大幅增加,给传统三层架构带来了很大的麻烦——因为服务器和服务器之间的通信,需要经过接入交换机、汇聚交换机和核心交换机。(注:无论是大2层还是L3层架构,都是传统的三层架构) ? ? ? ? ?这意味着,核心交换机和汇聚交换机的工作压力不断增加。要支持大规模的网络,就必须有性能最好、端口密度最大的汇聚层核心层设备。这样的设备成本高,价格非常昂贵。于是,演进出“Spine-Leaf网络架构”,即叶脊网络。 ?????????相比于传统网络的三层架构,叶脊网络进行了扁平化,变成了两层架构。 ????????其中L2/L3的分隔通常在Leaf接入交换机,与传统三层网络架构类似,这样也能分隔L2广播域,同时还减少了架构层次,对跨2层业务的调度,也就是东西向的业务调度,更方便,时延能做到有效的降低。 ?????????叶交换机:相当于传统三层架构中的接入交换机,作为TOR(Top Of Rack)直接连接物理服务器。叶交换机之上是三层网络,之下都是个独立的L2广播域。如果说两个叶交换机下的服务器需要通信,需要经由脊交换机进行转发。 ????????脊交换机:相当于核心交换机。叶和脊交换机之间通过ECMP(Equal Cost Multi Path)动态选择多条路径。 ???????? 叶脊网络架构的优势?带宽利用率高:每个叶交换机的上行链路,以负载均衡方式工作,充分的利用了带宽。 网络延迟可预测:叶交换机之间的连通路径的条数可确定,均只需经过一个脊交换机,东西向网络延时可预测。 扩展性好:带宽不足时,增加脊交换机数量,可水平扩展带宽。当服务器数量增加时,增加脊交换机数量,也可以扩大数据中心规模。总之,规划和扩容非常方便。??????? 降低对交换机的要求:南北向流量,可以从叶节点出去,也可从脊节点出去。东西向流量,分布在多条路径上。这样一来,不需要昂贵的高性能高带宽交换机。 安全性和可用性高:传统网络采用STP协议,当一台设备故障时就会重新收敛,影响网络性能甚至发生故障。叶脊架构中,一台设备故障时,不需重新收敛,流量继续在其他正常路径上通过,网络连通性不受影响,带宽也只减少一条路径的带宽,性能影响微乎其微。 叶脊网络的问题?????????叶脊拓扑网络从2013年左右开始出现,发展速度惊人,很快就取代了大量的传统三层网络架构,成为现代数据中心的新宠。最具有代表性的,是Facebook在2014年公开的数据中心架构。Facebook使用了一个五级CLOS架构,甚至是一个立体的架构。 ? ? ? ? L2/3分离位置不同,带来了不同的问题: ????????L2/3的隔离位置在汇聚交换机时:服务器部署受限。 ? ? ? ? 这种叶脊leaf-spine虽然有效解决了跨2层业务调度的层次与时延问题。但是L2/3的分离位置不同的时候,无法解决服务器任意部署问题。假如两个服务器处于不同的VLAN中,服务器配置不同的VLAN号,通过Spine交换机的调度,业务承载是没有问题的,如果机器更改位置,相当于两个Spine交换机有了相同的VLAN配置。 ? ? ? ? 如何解决服务器任意部署问题?如何解决VM迁移问题? ????????虚机迁移这个动作对用用户是透明的,所以在迁移前后必须保证虚机的MAC/IP 是保持不变的,虚拟机的运行状态也必须保持原状(例如TCP会话状态),所以虚拟机的动态迁移只能在同一个二层域中进行,而不能跨二层域迁移。这样就意味着迁移必须在一个二层广播域内完成。(一个IP子网=一个广播域)。而且要支持跨AZ(Available Zone),跨Region等等。 ? ? ? ? 至此引出新的概念:大二层网络,于是虚拟网络开始大放异彩。 |
|
网络协议 最新文章 |
使用Easyswoole 搭建简单的Websoket服务 |
常见的数据通信方式有哪些? |
Openssl 1024bit RSA算法---公私钥获取和处 |
HTTPS协议的密钥交换流程 |
《小白WEB安全入门》03. 漏洞篇 |
HttpRunner4.x 安装与使用 |
2021-07-04 |
手写RPC学习笔记 |
K8S高可用版本部署 |
mySQL计算IP地址范围 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/26 1:25:04- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |