通信人家园

标题: [分享]三层交换技术解析  [查看完整版帖子] [打印本页]

时间:  2007-9-30 10:00
作者: yu13xiao     标题: [分享]三层交换技术解析

简单地说,三层交换技术就是:二层交换技术+三层转发技术。它解决了局域网中网段划分之后,网段中子网必须依赖路由器进行管理的局面,解决了传统路由器低速、复杂所造成的网络瓶颈问题。 <br/>  什么是三层交换 <br/>  三层交换(也称多层交换技术,或IP交换技术)是相对于传统交换概念而提出的。众所周知,传统的交换技术是在OSI网络标准模型中的第二层――数据链路层进行操作的,而三层交换技术是在网络模型中的第三层实现了数据包的高速转发。简单地说,三层交换技术就是:二层交换技术+三层转发技术。 <br/>  三层交换技术的出现,解决了局域网中网段划分之后,网段中子网必须依赖路由器进行管理的局面,解决了传统路由器低速、复杂所造成的网络瓶颈问题。 <br/>  三层交换原理 <br/>  一个具有三层交换功能的设备,是一个带有第三层路由功能的第二层交换机,但它是二者的有机结合,并不是简单地把路由器设备的硬件及软件叠加在局域网交换机上。 <br/>  <br/>  其原理是:假设两个使用IP协议的站点A、B通过第三层交换机进行通信,发送站点A在开始发送时,把自己的IP地址与B站的IP地址比较,判断B站是否与自己在同一子网内。若目的站B与发送站A在同一子网内,则进行二层的转发。若两个站点不在同一子网内,如发送站A要与目的站B通信,发送站A要向“缺省网关”发出ARP(地址解析)封包,而“缺省网关”的IP地址其实是三层交换机的三层交换模块。当发送站A对“缺省网关”的IP地址广播出一个ARP请求时,如果三层交换模块在以前的通信过程中已经知道B站的MAC地址,则向发送站A回复B的MAC地址。否则三层交换模块根据路由信息向B站广播一个ARP请求,B站得到此ARP请求后向三层交换模块回复其MAC地址,三层交换模块保存此地址并回复给发送站A,同时将B站的MAC地址发送到二层交换引擎的MAC地址表中。从这以后,当A向B发送的数据包便全部交给二层交换处理,信息得以高速交换。由于仅仅在路由过程中才需要三层处理,绝大部分数据都通过二层交换转发,因此三层交换机的速度很快,接近二层交换机的速度,同时比相同路由器的价格低很多。 <br/>  三层交换机种类 <br/>  三层交换机可以根据其处理数据的不同而分为纯硬件和纯软件两大类。 <br/>  (1)纯硬件的三层技术相对来说技术复杂,成本高,但是速度快,性能好,带负载能力强。其原理是,采用ASIC芯片,采用硬件的方式进行路由表的查找和刷新。如图1所示。<br/>   <img src="http://cisco.chinaitlab.com/imgfiles/2002.2.26.21.20.51.4412.jpg" alt=""/> <br/>  图1 纯硬件三层交换机原理<br/>  当数据由端口接口芯片接收进来以后,首先在二层交换芯片中查找相应的目的MAC地址,如果查到,就进行二层转发,否则将数据送至三层引擎。在三层引擎中,ASIC芯片查找相应的路由表信息,与数据的目的IP地址相比对,然后发送ARP数据包到目的主机,得到该主机的MAC地址,将MAC地址发到二层芯片,由二层芯片转发该数据包。 <br/>  (2)基于软件的三层交换机技术较简单,但速度较慢,不适合作为主干。其原理是,采用CPU用软件的方式查找路由表。如图2所示。 <br/>  <img src="http://cisco.chinaitlab.com/imgfiles/2002.2.26.21.21.0.4414.jpg" alt=""/> <br/>  图2 软件三层交换机原理<br/>  当数据由端口接口芯片接收进来以后,首先在二层交换芯片中查找相应的目的MAC地址,如果查到,就进行二层转发否则将数据送至CPU。CPU查找相应的路由表信息,与数据的目的IP地址相比对,然后发送ARP数据包到目的主机得到该主机的MAC地址,将MAC地址发到二层芯片,由二层芯片转发该数据包。因为低价CPU处理速度较慢,因此这种三层交换机处理速度较慢。 <br/>  市场产品选型<br/>  近年来宽带IP网络建设成为热点,下面以适合定位于接入层或中小规模汇聚层的第三层交换机产品为例,介绍一些三层交换机的具体技术。在市场上的主流接入第三层交换机,主要有Cisco的Catalyst 2948G-L3、Extreme的Summit24和AlliedTelesyn的Rapier24等,这几款三层交换机产品各具特色,涵盖了三层交换机大部分应用特性。当然在选择第三层交换机时,用户可根据自己的需要,判断并选择上述产品或其他厂家的产品,如北电网络的Passport/Acceler系列、原Cabletron的SSR系列(在Cabletron一分四后,大部分SSR三层交换机已并入Riverstone公司)、Avaya的Cajun M系列、3Com的Superstack3 4005系列等。此外,国产网络厂商神州数码网络、TCL网络、上海广电应确信、紫光网联、首信等都已推出了三层交换机产品。下面就其中三款产品进行介绍,使您能够较全面地了解三层交换机,并针对自己的情况选择合适的机型。 <br/>  Cisco Catalyst 2948G-L3交换机结合业界标准IOS提供完整解决方案,在版本12.0(10)以上全面支持IOS访问控制列表 ACL,配合核心Catalyst 6000,可完成端到端全面宽带城域网的建设(Catalyst 6000使用MSFC模块完成其多层交换服务,并已停止使用RSM路由交换模块,IOS版本6.1以上全面支持ACL)。 <br/>  Extreme公司三层交换产品解决方案,能够提供独特的以太网带宽分配能力,切割单位为500kbps或200kbps,服务供应商可以根据带宽使用量收费,可实现音频和视频的固定延迟传输。 <br/>  AlliedTelesyn公司Rapier24三层交换机提供的PPPoE特性,丰富和完善了用户认证计费手段,可适合多种接入网络,应用灵活,易于实现业务选择,同时又保护目前用户的已有投资,另可配合NAT(网络地址转换)和DHCP的Server等功能,为许多服务供应商看好。<br/>  总之,三层交换机从概念的提出到今天的普及应用,虽然只历经了几年的时间,但其扩展的功能也不断结合实际应用得到丰富。随着ASIC硬件芯片技术的发展和实际应用的推广,三层交换的技术与产品也会得到进一步发展。 <br/>
时间:  2007-9-30 10:07
作者: yu13xiao     标题: 三层交换路漫漫

整个通信网络正呈现着向局域网络统一的趋势。宽带接入网的迅速推广以及VPN技术的发展,使企业广域网的概念逐渐淡化,企业路由器市场空间会越来越小。同时,三层交换机的出现动摇了企业路由器的地位。正如路由器统治广域网一样,三层交换机将在今后主宰局域网已成为不争的事实。 <br/>  然而,从国内的情况来看,三层交换机虽然发展势头良好,但想取代企业级路由器还要经历一个漫长的过程。 <br/>  从技术角度来看,三层交换机虽然具备了企业级路由器的大多数功能,但路由器较三层交换机功能更为强大,如网络地址转换等,仍然无法由三层交换完全替代。 <br/>  从实际应用角度来看,我国跟全球情况不同,技术和产品的演进过程相对滞后。现在很多地方还在建网,企业级路由器市场规模仍有较大增长。很多厂商仍然会在这个领域继续争夺,如神州数码网络、华为、实达等国内厂商都在推广自己的企业级路由器产品。 <br/>  国内专网的应用场合仍很普遍。现在的企业一般内部已建成了局域网,处于同一个局域网中的各子网的互联倒是可以用交换机来代替路由器,但局域网必须与公网互联以实现跨地域的企业网,而这时路由器就不可缺少了。VPN技术还有很多问题没有解决,特别是安全性问题,因此,在一些对安全性有较高要求的专网使用场合,企业级路由器发挥着无法替代的作用。各地银行网点之间的相互连接和访问都需要路由设备提供功能保障,其应用市场前景被厂商看好。 <br/>  而且很多旧的、甚至是被公认为落后的网络接口与协议仍然在使用之中,它们何时才能退出历史舞台,不仅仅是一个技术问题,在中国市场上也难以判断。而且,即使是各个部分的功能都有了替代品,总拥有成本能否下降还是个问题。除了设备成本外,安装的复杂性、网络运行的效率、维护的成本等都会考虑在总拥有成本中。 <br/>
时间:  2007-9-30 10:15
作者: rafequ

<p>谢谢啊</p>
时间:  2007-9-30 12:18
作者: yu13xiao     标题: 多层交换实现的4个步骤

MLS(MultiLayer Switching,多层交换)为交换机提供基于硬件的第三层高性能交换。它采用先进的专用集成电路(ASIC)交换部件完成子网间的IP包交换,可以大大减轻路由器在处理数据包时所引起的过高系统开销。 <br/>  MLS是一种用硬件处理包交换和重写帧头,从而提高IP路由性能的技术。Cisco多层交换技术支持所有传统路由协议,而原来由路由器完成的帧转发和重写功能现在已经由交换机的硬件完成。MLS将传统路由器的包交换功能迁移到第三层交换机上。当然,这首先要求交换的路径必须存在。 <br/>  MLS由以下三个部分组成: <br/>  1. 多层路由处理器 (MLS-RP) 它相当于网络中的路由器,负责处理每个数据流的第一个数据包,协助MLS交换引擎 (MLS-SE)在第三层的CAM (Content-Addressable Memory)中建立捷径条目(Shortcut Entry)。MLS-RP可以是一个外部的路由器,也可以由三层交换机的路由交换模块(RSM)来实现。 <br/>  2. 多层交换的交换引擎 (MLS-SE) 它是负责处理转发和重写数据包功能的交换实体。<br/>  3. 多层交换协议 (MLSP) 它是一个轻型协议,用来通过多层路由处理器 (MLS-RP)对多层交换的交换引擎进行初始化。 <br/>  下面以图1所示的网络为例,阐述多层交换实现的步骤。 <br/>   <img src="http://cisco.chinaitlab.com/imgfiles/2002.11.1.20.34.32.1.jpg" alt=""/>
        <br/>  第一步:发送MLSP Hello 信息 <br/>  当路由器激活后,多层路由处理器每15秒发送一个MLSP Hello包,这些包内含路由器接口所使用的VLAN标识和MAC地址信息。MLS-SE通过这些信息掌握具备多层交换能力的路由器的第二层属性。如果交换机连接了多个MLS-RP,MLS-SE通过为它们的MAC地址分配XTAG值的方法来区分每个MLS-RP的MAC地址条目。如果MLSP帧从同一个MLS-RP得到所有MAC地址,MLS-SE则为其附加相同的XTAG值,具体如图2所示。这些关联的记录都存放在CAM中。由于Hello包是周期性发送的,所以,这种方法可以保证相关值动态地跟踪网络的变化,并可实现一定的淘汰机制。 Hello包是在第二层发布的,它使用多播地址01-00-0C-DD-DD-DD。 <br/>   <img src="http://cisco.chinaitlab.com/imgfiles/2002.11.1.20.34.50.2.jpg" alt=""/>
        <br/>  第二步:标识候选包(Candidate Packet) <br/>  在了解具有多层交换能力的路由器的相关地址后,MLS-SE可以对进入交换机的数据包进行匹配判断。对于一个流中的数据包,如果MLS缓存中含有与之匹配的捷径条目,则MLS-SE就旁路路由器而直接转发该数据包;如果MLS中不含与该数据包相匹配的捷径条目,则MLS-SE将它归为候选包,并在缓存中建立部分捷径(Partial shortcut)。这样的包采用传统的第二层交换机处理方式处理,并发往与之相连的路由器接口(网关),具体见图3所示。 <br/>   <img src="http://cisco.chinaitlab.com/imgfiles/2002.11.1.20.35.7.3.jpg" alt=""/>
        <br/>  这里要注意,候选包(帧)必须满足两个标准:目标地址经过MLSP所列的路由器接口的一个MAC地址;不存在捷径条目。 <br/>  第三步:标识使能包(Enable Packet) <br/>  路由器收到并以传统的方式转发数据包。通过数据包的目标地址路由表得知,这个包应从Fast Ethernet1/0的第二个接口转出,并将包封装为VLAN2帧通过ISL链路送回。具体过程如图4所示。 <br/>   <img src="http://cisco.chinaitlab.com/imgfiles/2002.11.1.20.35.23.4.jpg" alt=""/>
        <br/>  此时,路由器已经重写第二层帧的帧头。同时,路由器不仅改写了ISL头的VLAN号,而且也修改了两个MAC 地址域 :源MAC改为路由器出口的MAC地址,目标MAC改为主机B的MAC地址。虽然数据包的IP地址未改写,但IP包头的生存时间(TTL)值被减1,故IP包头的校验和也需要做相应的修改。 <br/>  这个修改后的数据包称为使能包(Enable Packet),当这个数据包从路由器送出并穿过交换机到达目的地主机B时,要履行下列五个功能: <br/>  第二层交换机根据使能包的目的地MAC地址,知道该数据包应该从PORT3/1口转发出去; <br/>  MLS-SE得知使能包的帧头上源地址是通过Hello过程建立的地址记录之一; <br/>  MLS-SE根据使能包目的IP地址查寻在第二步中建立的部分捷径条目; <br/>  MLS-SE将与使能包源MAC地址相关联的XTAG值和部分捷径条目的对应XTAG值相比较,如果匹配,则表明这个使能包与第二步中的候选包来自同一个路由器;<br/>  MLS-SE完成该捷径条目的建立过程,该捷径记录将包含重写数据流中的后续包帧头所需的所有信息。 <br/>  第四步:直接交换(转发)数据流中的后续包 <br/>  当后续的数据包被主机A送出后,MLS-SE利用数据包中的目标IP地址查找在第三步建立的完整捷径。地址匹配后,MLS-SE利用重写引擎修改帧头信息,然后直接转发给主机B(数据包不发给路由器)。重写操作修改帧头域,其值同第一个被路由器修改的数据包的域值一样。详见图5所示。这里需要解释的是,NFFC(NetFlow Feature Card)是装备在三层交换机中的网络流性能卡,它维护第三层交换数据包流的交换表(MLS Cache),作为多层交换的交换引擎部分。 <br/>  <img src="http://cisco.chinaitlab.com/imgfiles/2002.11.1.20.35.40.5.jpg" alt=""/><br/>  上述这个过程被称为“一次路由,多次交换”。交换机利用专业化硬件ASIC来处理数据包,速度相当快,可以达到100Mbps甚至1000Mbps。<br/>
时间:  2007-9-30 12:20
作者: yu13xiao

<p>在网上看到的</p><p>觉得还不错</p><p>就转到论坛里来了</p>
时间:  2007-9-30 14:10
作者: laiyang

对三层交换的过程描述有错误.....这篇文章在网上流传很广 但是实际工作过程并非完全正确....<br/>
时间:  2007-9-30 17:00
作者: yu13xiao

<p>有错误?</p><p>哪里错了</p>
时间:  2007-11-18 01:22
作者: AcuteMan

不知道是不是还有细节没有写清楚地缘故,我也觉得这篇文章原理上是不准确的
时间:  2010-7-28 15:13
作者: 硝烟灭火

谢谢分享




通信人家园 (https://www.txrjy.com/) Powered by C114