【转载】+【原创】三层交换机与普通的交换机有什么区别

转载自:https://zhidao.baidu.com/question/149045183.html

普通的交换机是2层交换机

二层交换机属数据链路层设备,可以识别数据包中的 MAC 地址信息,根据 MAC 地址进行转发,并将这些 MAC 地址与对应的端口记录在自己内部的一个地址表中。
工作流程
(1) 当交换机从某个端口收到一个数据包,它先读取包头中的源 MAC 地址,这样它就知道源 MAC 地址的机器是连在哪个端口上的;
(2) 再去读取包头中的目的 MAC 地址,并在地址表中查找相应的端口;
(3) 如表中有与这目的 MAC 地址对应的端口,把数据包直接复制到这端口上;
(4) 如表中找不到相应的端口则把数据包广播到所有端口上,当目的机器对源机器回应时,交换机又可以学习一目的 MAC 地址与哪个端口对应,在下次传送数据时就不再需要对所有端口进行广播了。
不断的循环这个过程,对于全网的 MAC 地址信息都可以学习到,二层交换机就是这样建立和维护它自己的地址表。

从二层交换机的工作原理可以推知以下三点:
(1) 由于交换机对多数端口的数据进行同时交换,这就要求具有很宽的交换总线带宽,如果二层交换机有 N 个端口,每个端口的带宽是 M,交换机总线带宽超过 N×M,那么这交换机就可以实现线速交换;
(2) 学习端口连接的机器的 MAC 地址,写入地址表,地址表的大小(一般两种表示方式:一为 BEFFER RAM,一为 MAC 表项数值),地址表大小影响交换机的接入容量;
(3) 还有一个就是二层交换机一般都含有专门用于处理数据包转发的 ASIC (Application specific Integrated Circuit)芯片,因此转发速度可以做到非常快。由于各个厂家采用 ASIC 不同,直接影响产品性能。

以上三点也是评判二三层交换机性能优劣的主要技术参数,这一点请大家在考虑设备选型时注意比较。

三层交换机

三层交换机使用了三层交换技术
简单地说,三层交换技术就是:二层交换技术+三层转发技术。它解决了局域网中网段划分之后,网段中子网必须依赖路由器进行管理的局面,解决了传统路由器低速、复杂所造成的网络瓶颈问题。

什么是三层交换
三层交换(也称多层交换技术,或IP交换技术)是相对于传统交换概念而提出的。众所周知,传统的交换技术是在 OSI 网络标准模型中的第二层——数据链路层进行*作的,而三层交换技术是在网络模型中的第三层实现了数据包的高速转发。简单地说,三层交换技术就是:二层交换技术+三层转发技术。
三层交换技术的出现,解决了局域网中网段划分之后,网段中子网必须依赖路由器进行管理的局面,解决了传统路由器低速、复杂所造成的网络瓶颈问题。

三层交换原理
一个具有三层交换功能的设备,是一个带有第三层路由功能的第二层交换机,但它是二者的有机结合,并不是简单地把路由器设备的硬件及软件叠加在局域网交换机上。
其原理是:假设两个使用 IP 协议的站点 A、B 通过第三层交换机进行通信,发送站点 A 在开始发送时,交换机把 A 站的 IP 地址与 B 站的 IP 地址比较,判断 B 站是否与 A 站在同一子网内。若目的站 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 发送的数据包便全部交给二层交换处理,信息得以高速交换。由于仅仅在路由过程中才需要三层处理,绝大部分数据都通过二层交换转发,因此三层交换机的速度很快,接近二层交换机的速度,同时比相同路由器的价格低很多。

三层交换机种类
三层交换机可以根据其处理数据的不同而分为纯硬件和纯软件两大类。
(1)纯硬件的三层技术相对来说技术复杂,成本高,但是速度快,性能好,带负载能力强。其原理是,采用 ASIC 芯片,采用硬件的方式进行路由表的查找和刷新。
纯硬件三层交换机原理
当数据由端口接口芯片接收进来以后,首先在二层交换芯片中查找相应的目的 MAC 地址,如果查到,就进行二层转发,否则将数据送至三层引擎。在三层引擎中,ASIC 芯片查找相应的路由表信息,与数据的目的 IP 地址相比对,然后发送 ARP 数据包到目的主机,得到该主机的 MAC 地址,将 MAC 地址发到二层芯片,由二层芯片转发该数据包。

(2)基于软件的三层交换机技术较简单,但速度较慢,不适合作为主干。其原理是,采用 CPU 用软件的方式查找路由表.
软件三层交换机原理
当数据由端口接口芯片接收进来以后,首先在二层交换芯片中查找相应的目的 MAC 地址,如果查到,就进行二层转发否则将数据送至 CPU。CPU 查找相应的路由表信息,与数据的目的 IP 地址相比对,然后发送 ARP 数据包到目的主机得到该主机的 MAC 地址,将 MAC 地址发到二层芯片,由二层芯片转发该数据包。因为低价 CPU 处理速度较慢,因此这种三层交换机处理速度较慢。

总结:

个人理解,普通交换机就像是两层楼房,路由器和交换机就都是三层楼房。你要找人,要给那人发数据。

传统方式:交换机 + 路由器。
(1)那人在附近(同一子网)
你先是到了交换机楼下,然后上到第二层,到那你就能看到你要找的那人在哪了。
开销:跑两层
(2)那人在远处(不在同一子网)
你还是先到了交换机楼下,然后上到第二层,到那你看不到你要找的人,也许那人离得比较远,那你就得再往高处走。于是你下楼跑到路由器楼下,然后上到第三层,到那你也许就能看到你要找的人了。如果真是事与愿违,别怕,路由器上有广播,可以帮你广播找人,这样只要你找的那人不聋,那他就能回应,那就算是完成找人的任务了!下次你再找那人,就可以省掉广播这个步骤了。
初次开销:跑五层 + 广播
下一次开销:跑五层

新方式:三层交换机
(1)那人在附近(同一子网)
你来到了三层交换机楼下,然后先上到第二层,那人离得比较近,你一眼就看到他了,好,找人任务结束。
开销:跑了两层
(2)那人在远处(不在同一子网)
你也是先到了三层交换机楼下,你到二楼看了一眼,没找到人。接着你上三楼,当然直接就能看到要找的人自然是皆大欢喜,不过要是没找到,那也别怕,三层交换机的三楼也有广播,开始广播找人,结果一般会让人满意。等那人回应了,好,找人任务结束!同样的,下次再要找那人,就不需要广播了,而且三层交换机还比较贴心,它会记录你这次要找的这个人,把这个人的位置标记到二楼的布告栏上,你下次找这个人,上到二楼看布告栏就知道那人在哪了,连三楼都不用上!
初次开销:跑三层 + 广播
下一次开销:跑两层

看看,三层交换机是不是效率高多了?这就是所谓的“一次路由,多次交换”,即“上一次三楼,之后就只用上到二楼”。
(PS:虽然按我找的转载部分的理解,下一次开销应该是跑两层,但是我在思科模拟器上做实验,发现下一次的开销还是三层,也许那个三层只是走个形式,基本不占用多少开销,约等于两层吧。)

猜你喜欢

转载自blog.csdn.net/yld10/article/details/80222883
今日推荐