转一篇,大二层网络

http://support.huawei.com/huaweiconnect/enterprise/thread-333013.html

这种大二层,理解深一些,即使不从事机房网络的管理,对DEVOPS,容器群集技术也是需要的。

==================

在开始之前,首先要明确一点,大二层网络基本上都是针对数据中心场景的,因为它实际上就是为了解决数据中心的服务器虚拟化之后的虚拟机动态迁移这一特定需求而出现的。对于普通的园区网之类网络而言,大二层网络并没有特殊的价值和意义(除了某些特殊场景,例如WIFI漫游等等)。

所以,我们现在所说的大二层网络,一般都是指数据中心的大二层网络。

(3)如何实现真正意义上的大二层网络?

这一篇的内容会略长一些,各位读者做好心理准备。

如上一篇介绍的那样,传统的二层技术无法实现真正意义上的大二层网络。所以就要另外动脑筋来想办法。

幸好这个世界上聪明的脑袋是很多的,这些技术大牛们各显神通,在最近十来年的时间之间,提出了很多大二层网络的解决方案。归纳总结一下,大概有这么几个流派:

  •  釜底抽薪派
  •  移花接木派
  •  瞒天过海派

1      釜底抽薪派

1.1      思想

釜底抽薪派解决大二层网络困境,还是从二层网络的核心问题着手。既然二层网络的核心问题是环路问题,那么解决了环路问题,就一劳永逸了。抽了“环路”的“薪”,那么因环路导致广播风暴的“火”也就烧不起来了。也就意味着,二层网络想做多大就可以做多大。

当然,要有效解决大二层环境中的环路问题,传统的xSTP技术行不通了(具体原因前一篇中已经分析过了)。幸好现在我们有了新的武器,那就是网络设备虚拟化技术。

所谓网络设备虚拟化技术,就是将相互冗余的两台或多台物理网络设备组合在一起,虚拟化成一台逻辑网络设备,在整个网络中只呈现为一个节点。

(这里的网络虚拟化技术特指多虚一的技术,另外也有一虚多的技术,比如华为的VS(Virtual System)技术,可以把一台网络设备虚拟成多台网络设备使用,这种虚拟化技术就有点和服务器的虚拟化比较相似,但是我们本文中不涉及这种虚拟化)

网络设备虚拟化再配合链路聚合技术,就可以把原来的多节点、多链路的结构变成逻辑上单节点、单链路的结构,环路问题也就无疾而终了。(上一篇中已经说明了,单节点、单链路的树型结构网络是没有环路问题的)

而且虚拟化技术和链路聚合技术都具备冗余备份功能,单台物理设备或者链路故障时,可以自动切换到其他物理设备和链路来进行数据转发,保证网络的可靠性。

以网络设备虚拟化+链路聚合技术构建的二层网络天然没有环路,其规模仅受限于虚拟网络设备所能支持的接入能力,只要虚拟网络设备允许,二层网络就可以想做多大就做多大。

1.2      技术

网络设备虚拟化的主要技术大致可以分为三类:框式设备的堆叠技术、盒式设备的堆叠技术、框盒/盒盒之间的混堆技术。有华为的CSS、iStack、SVF,CISCO的VSS、FEX,H3C的IRF等。具体的技术本文就不赘述了,后续会有相关文章详细介绍。

1.3      番外

但是网络设备虚拟化方案也有一定的缺点:

1)这些协议都是厂家私有的,因此只能使用同一厂家的设备来组网。

2)受限于堆叠系统本身的规模限制,目前最大规模的堆叠/集群大概可以支持接入1~2万主机,对于超大型的数据中心来说,有时候就显得力不从心了。但是对于一般的数据中心来说,还是显得游刃有余的。

2      移花接木派

移花接木派要解决的也是二层网络的环路问题,但是着眼点不是杜绝或者阻塞环路,而是在有物理环路的情况下,怎样避免逻辑转发路径的环路问题。

这一派的大牛们从三层网络的机制中找到了灵感。

2.1      思想

我们都知道,二层以太网的帧交换不能有环路,冗余链路必须阻塞掉。但是三层转发网络也是有环路的,为啥就没有这些问题呢?而且三层网络还可以利用冗余链路做ECMP。它们的区别在哪里?

其实原因很简单,因为三层网络比二层网络“聪明”!二层网络的设备说不好听一点,都是“近视眼”,只看到和自己相连的链路,不知道整个网络的拓扑结构,转发的时候只能通过大喊大叫来寻找目标(向除入端口之外的其他端口广播),这种喊话的声音来回传递就形成了广播风暴。

而三层网络就聪明智能得多了。三层网络是依靠路由协议来计算转发路径的。通过路由协议,各台路由设备就可以收集、扩散和更新彼此的路由信息,进而每一台设备可以知道全部或者局部网络的拓扑信息,所以在数据转发的时候,可以保证从某个主机发出的报文只会向着目标主机一路前进,而不会再返回前续节点而造成路径循环。

所以,移花接木派就想到了能不能把三层网络的路由转发方式引入到二层网络中来呢?事实上他们做到了。通过在二层报文前插入额外的帧头,并且采用路由计算的方式控制整网数据的转发,不仅可以在冗余链路下防止广播风暴,而且可以做ECMP。这样可以将二层网络的规模扩展到整张网络,而不会受核心交换机数量的限制。当然这需要交换机改变传统的基于MAC的二层转发行为,而采用新的协议机制来进行二层报文的转发。

题外话:有喜欢钻研的同学可能会疑问,那为啥当初二层网络不直接按照这种方式设计呢?而要设计成这样一个比较弱智的转发行为模式?说白了,时代的不同而已,那个时候的网络设备性能很低,要进行完整的路由计算,就要求网络设备具有很高的性能(所以那个时候路由器很贵的!),而那个时候的局域网又都不大,没有遇到像现在这种大二层的网络需求,所以弱智一点的转发行为更符合经济的原则。所以TCP/IP协议族就把拓扑发现定义在第三层。

当前的网络设备的性能已经不可同日而语了,以太网交换机完全有能力承担更复杂的路由计算,而且又有大二层这种明确的需求,所以三层路由方式控制二层网络转发行为就变得可行和合理了。

2.2      技术

通过路由计算方式进行二层报文的转发,需要定义新的协议机制。这些新的协议包括TRILL、FabricPath、SPB等。

2.2.1        TRILL和FabricPath

TRILL是IETF推出的标准协议,而FabricPath则是CISCO在TRILL推出之前推向市场的“Pre-Standard”技术,内容与TRILL 类似,包含了一些私有的增强性功能和特性,我们暂不用去理会,基本上可以认为TRILL和FabricPath是差不多的(当然封装格式啥的有点不太一样)。

说起TRILL,就不能不提它的首席发明者Perlman,这是一个传奇般的天才女人。前面我们提到的STP协议,就是她在1983年发明的,解决了以太网交换的环路问题。而她还有一项众所周知的伟大发明,那就是IS-IS路由协议。这两项发明是现代的数据通信网络中不可或缺的重要发明。

到了二十一世纪,大二层网络的需求超出了STP的能力范畴,Perlman坐不住了,于是她老人家闭关苦思一年,终于发明了TRILL协议。在TRILL协议中,Perlman把她最得意的一个“儿子”—— IS-IS引入到了局域网络中,从而解决网络风暴问题。

TRILL协议在原始以太帧外封装一个TRILL帧头,再封装一个新的外层以太帧来实现对原始以太帧的透明传输,TRILL交换机可通过TRILL帧头里的Nickname标识来进行转发,而Nickname就像路由一样,可通过IS-IS路由协议进行收集、同步和更新。

关于TRILL的详细技术原理,后面会有专题详细介绍,本文不详述。(下面是一个典型的TRILL网络)

2.2.2        SPB

而SPB是IEEE推出的待定标准,算是TRILL的强有力竞争者。

要说SPB,需要先从PBB(Provider Backbone Bridging)说起,PBB是IEEE于2008年完成的802.1ah标准,为运营商城域以太网定义了一整套MAC-in-MAC的转发机制。但PBB只定义了转发平面的封装内容,当报文封装上外层Ethernet报头在运营商骨干区域二层网络中时,仍然需要依靠传统的STP进行环路避免和转发控制。

于是IEEE在2009年又定义了802.1Qay标准:PBB-TE(Provider Backbone Bridge Traffic Engineering),用于在运营商的骨干区域中进行拓扑管理与环路保护,说白了就是通过手工方式配置一堆指定路径取代STP的自动收敛。但PBB-TE静态规划转发路径,明显无法适用于大型二层网络扩展,于是IEEE再搞出个802.1aq SPB(Shortest Path Bridging)来,这回就直面大二层网络的需求了。

从实现上来看,SPB同样是采用了IS-IS作为其控制平面协议进行拓扑学习计算,而用MAC-in-MAC封装方式在SPB区域内部进行报文传输。所以这个实现和TRILL还是非常相似的。

关于SPB的详细技术原理,以后有机会再做详细介绍,本文不详述。

2.3      番外

关于TRILL和SPB,在数通领域都有各自的支持厂商。以CISCO为首,华为、Broadcom、Juniper等都是TRILL的有力支持者。而Avaya、ALU等则坚定的站在SPB这边。而像HP等厂商,则表示我两个都支持。。。。。。

另外,总的来说,像TRILL和SPB这些技术是CT厂商主推的大二层网络技术方案。为什么CT厂商会钟情于这些技术呢?其实这也很容易理解,因为这些技术的部署和实施都是在网络设备上进行的,与服务器等IT设施无关,所以CT厂商可以全盘控制。

3      瞒天过海派

瞒天过海派正式的学名应该叫Overlay派,就是通过用隧道封装的方式,将源主机发出的原始二层报文封装后在现有网络中进行透明传输,到达目的地之后再解封装得到原始报文,转发给目标主机,从而实现主机之间的二层通信。

通过封装和解封装,相当于一个大二层网络叠加在现有的基础网络之上,所以称为Overlay派。瞒天过海的含义也就在于此。

3.1      思想

其实对于隧道封装,我们并不陌生,比如最典型的GRE,就是把原始数据报文通过GRE封装之后在三层网络中进行传输,从主机的角度来看,中间的三层网络是透明不可见的,也就相当于直接在源网络和目标网络之间直接拉了一根“光纤”!

但是GRE这样的隧道协议是点到点的隧道协议,只能点对点建立隧道,如果有很多主机需要二层通信的话,就要每两台主机之间都拉上“光纤”,这是无法想象的。那怎么办?

既然“光纤”不行,那就上“二层交换机”!

众所周知,“二层交换机”是可以实现下挂主机之间相互二层通信的,而且主机从“二层交换机”的一个端口迁移到另一个端口时,IP地址是可以保持不变的。这样不就可以实现大二层网络的需求了吗?

所以,Overlay方案的意义也就是在于此。Overlay方案的核心就是通过点到多点的隧道封装协议,完全忽略中间网络的结构和细节,把整个中间网络虚拟成一台“巨大无比的二层交换机”, 每一台主机都是直接连在这台“巨大交换机”的一个端口上。而基础网络之内如何转发都是这台“巨大交换机”内部的事情,主机完全无需关心。

基于这种“巨大交换机”的理解,那么就也很容易理解为什么这种方案就可以实现VM动态迁移了,不就是把VM主机从交换机的一个端口换到另一个端口嘛,完全无需变更IP地址。

3.2      技术

Overlay派的典型技术主要有VXLAN、NVGRE、STT等,在本文中仅对VXLAN进行简单的介绍。

VXLAN(Virtual eXtensible LANs)是VMWare和CISCO提出的Overlay技术方案。VXLAN的阵营中还包括了Arista、Broadcom、Citrix和Red Hat等厂商,可谓阵容豪华。当前处于IETF草案阶段。

VXLAN采用Mac in UDP的封装方式,虚拟机发出的数据包在VXLAN接入点(被称为VTEP)加上VXLAN帧头后再被封装在UDP报头中,并使用承载网络的IP/MAC地址作为外层头进行封装,承载网络只需要按照普通的二三层转发流程进行转发即可。

VXLAN在VXLAN帧头中引入了类似VLAN ID的网络标识,称为VXLAN网络标识VNI(VXLAN Network ID),由24比特组成,支持多达16M((2^24-1)/1024^2)的VXLAN段,从而满足了大量的网络标识需求。

VTEP通过(目的MAC地址、目的VNI、目的VTEP的IP地址)映射表来实现报文封装,对于不认识的MAC地址,通过组播方式在网络内进行查询(当然,如果有统一的控制器,就可以单播向控制器进行查询)。

关于VXLAN的详细技术原理,后面会有专题详细介绍,本文不详述。

3.3      番外

VXLAN和NVGRE等技术是服务器虚拟化的IT厂商主推的大二层网络技术方案,这也很好理解,对于VXLAN和NVGRE技术来说,报文的封装/解封装都是在服务器内部的虚拟交换机vSwitch上进行的,外部网络只对封装后的报文进行普通的二层交换和三层转发,所以技术控制权都在IT厂商手里,CT厂商就是一个路人看客了。

当然,目前CT厂商也在积极参与到Overlay方案中来,所以当前的VXLAN和NVGRE技术也可以把Overlay网络的接入点部署在TOR等网络设备上,由网络设备来完成VXLAN和NVGRE的报文封装。

  •  一方面对于虚拟化的服务器来说,网络设备的性能还是要比vSwitch强很多的,用TOR等设备来进行封装,性能更好一些。
  •  另外一方面,在TOR上部署Overlay接入点,也可以把非虚拟化的服务器统一纳入Overlay网络。

这样CT厂商和IT厂商就可以在大二层这个领域实现了和谐共赢。

时间: 2024-10-03 13:45:28

转一篇,大二层网络的相关文章

大二层网络-基础篇

一.传统数据中心网络架构: 传统的数据中心网络通常都是二层+三层网络架构,如下图所示. 我们看到这种零售行业的"加盟店"形式架构,以及与之相对应的"三层到边缘"架构,以及我们下面要谈到的"大二层"架构,就相当于"直营店"了.之所以采用这种网络架构,是因为这种架构非常成熟,相关的二三层网络技术(二层VLAN+xSTP.三层路由)都是成熟的技术,可以很容易的进行部署,也符合数据中心分区分模块的业务特点. 二.服务器虚拟化趋势: 由

数据中心大二层网络的技术有哪些

数据中心网络主要分为计算网络,存储网络和互联网络,而计算网络是数据中心网络的核心网络. 传统的数据中心网络大多采用与园区网相似的二三层架构 优点: 部署容易,符合数据中心分区分模块的业务特点 但是随着数据中心从传统数据中心向虚拟化数据中心和云化数据中心发展演进,这种二三层混合网架构就显得力不从心.因为现在的数据中心都采用了虚拟化的技术,上层的虚拟机随着需求的变化而随意的进行动态迁移,而动态迁移的的关键就是要保证业务不中断,IP地址保持不变,运行状态保持不变,因此虚拟机的迁移只能在二层域里进行,而

大二层技术对比分析(组图)

大二层技术对比分析(组图) 转载 2015-8-9 传统的数据中心汇聚交换机作为网关,为了提高HA性能,基本都采用双机冗余建设模式.随着数据中心进入虚拟化时代,接入服务器的规模飞速增加,虚拟服务器的规模出现级数增加.同时,更多的客户要求在同一个二层网络内,任意两台虚拟服务器之间要做无阻塞的快速交换.这就导致作为网关的汇聚交换机出现容量不足而降低整网性能,因此需要采用新得技术有效的增加汇聚交换机的容量,同时还必须采用有效的技术提高接入到汇聚交换机之间的带宽利用率.前面几篇文章介绍了各种可用于的数据

100篇大数据文章[转]

摘要:PayPal高级工程总监Anil Madan写了篇大数据的文章,一共有100篇大数据的论文,涵盖大数据技术栈,全部读懂你将会是大数据的顶级高手. 开源(Open Source)用之于大数据技术,其作用有二:一方面,在大数据技术变革之路上,开源在众人之力和众人之智推动下,摧枯拉朽,吐故纳新,扮演着非常重要的推动作用.另一方面,开源也给大数据技术构建了一个异常复杂的生态系统.每一天,都有一大堆"新"框架."新"类库或"新"工具,犹如雨后春笋般涌

iOS开发项目篇—35封装网络请求

iOS开发项目篇—35封装网络请求 一.简单说明 1.分析项目对网路请求(AFN框架)的依赖 项目中,多个控制器都使用了AFN框架发送网络请求,如果AFN2.0存在重大BUg,或者是升级至3.0版本,那么对于整个项目都是及其危险的,所有用到AFN的地方都需要做出相应的修改. 另外,如果现在要求不再使用AFN框架,而是使用一个新的框架,那么有关AFN的依赖所关联的所有代码都需要重新来过. 如果把afn这个第三方框架从项目中删除的话,那么项目就相当于作废了,这就是项目对第三方框架的强依赖的体现. 说

F5内网大二层负载均衡业务访问故障解析(CISCO OTV+LISP-MTU问题导致)

一.问题现象 最近在某客户由于假期出现核心CISCO 6509硬件故障当机问题,进而发现F5发布的3个应用访问问题,出现一部分人访问应用出现不可用的问题,时好时坏,内网使用F5 GTM+LTM进行域名双活,内部同城双活DC通过三层路由使用CISCO的大二层技术OTV+LISP技术构建: F5上面检查应用不管是VS还是pool member都是正常,health check or monitor算法采用TCP:通过将LTM双机上面对端DC业务member 进行offline,GSLB的跨DC me

云计算和大数据时代网络技术揭秘(十五)大数据网络

大数据网络设计要点 对大数据,Gartner的定义是:需要新处理模式才能具有更强的决策力.洞察发现力和流程优化能力的海量.高增长率和多样化的信息资产. 维基百科的定义是:无法在可承受的时间范围内用常规软件工具进行捕捉.管理和处理的数据集合. 大数据的4V特点:Volume(大量).Velocity(高速).Variety(多样).Value(价值). 大数据的研究非常热门,也产生了很多理论和实践,本章不是探索大数据实现的技术原理,而是从一个典型的大数据模型Hadoop为例,重点 放在其对网络的要

# 大小型网络构建-BGP加实验验证

大小型网络构建-BGP加实验验证 BGP -定义-概述-原理#建立邻居表#同步数据库 :network {精确的路由条目}import-route {protocol}BGP数据库中每个条目的状态,必须是: , 表示的是"best -- 最好的".1.尝试着放入自己的路由表:2.发送给自己的 BGP 邻居:#计算路由表 -报文 open :包含BGP建立邻居时需要协商的参数update:包含的是 BGP 路由条目 keep-alive : 用于周期性的发送,维护邻居关系:notific

海康、大华网络摄像机RTSP URL格式组成及参数配置

经常有开发者咨询大牛直播SDK关于海康.大华网络摄像机RTSP url拼接规则和相关参数配置,虽然很简单,考虑到资料不全,写个博客记录下: 1. 海康摄像机:在IE浏览器输入网络摄像机的IP地址,输入配置的用户名.密码,登陆:视频: 码率类型:主码流和子码流,主码流支持的分辨率比较高: 视频类型:如果是音视频都需要,选择"复合流",如果只需要视频,选择"视频流": 分辨率设置,不再赘述: 码率类型:变码率!!!定码率的话,码率过高: 图像质量:酌情设置: 视频帧率: