查看原文
其他

三层交换机

小白学智能 小白学智能 2022-07-21
01使用路由器进行VLAN间路由时的问题

一般只要能提供VLAN间路由,便能够使分属不同VLAN的计算机进行互相通信。

但如果使用路由器进行VLAN间路由的话,随着VLAN之间流量的不断增加,则有可能导致路由器成为整个网络的瓶颈。

交换机使用被称为ASIC(Application Specified Integrated Circuit)的专用硬件芯片处理数据帧的交换操作,在很多机型上都能实现以缆线速度(Wired Speed)交换。而路由器,则基本上是基于软件处理的。

即使以缆线速度接收到数据包,也无法在不限速的条件下转发出去,因此会成为速度瓶颈。尤其就VLAN间路由而言,流量会集中到路由器和交换机互联的汇聚链路部分。

从硬件上看,由于需要分别对路由器和交换机进行设置,故在一些空间狭小的环境里可能缺乏有效设置的场所。

02三层交换机(Layer 3 Switch)

为了解决上述问题,三层交换机应运而生。三层交换机本质上就是“带有路由功能的(二层)交换机”。路由属于OSI参照模型中第三层网络层的功能,因此带有第三层路由功能的交换机才被称为“三层交换机”。

三层交换机的内部结构简图可如下图所示。

即在一台本体内,分别设置了交换机模块和路由器模块,而内置的路由模块与交换模块相同,皆使用ASIC硬件来处理路由。因此,与传统的路由器相比,可以实现高速路由。并且,路由与交换模块是汇聚链接的,由于是内部连接,可以确保相当大的带宽。

03使用三层交换机进行VLAN间路由在三层交换机内部,数据是怎样进行传输的呢?

基本上,它和使用汇聚链路连接路由器与交换机时的情形相同。

假设有如下图所示的4台计算机与三层交换机互联。当使用路由器连接时,一般需要在LAN接口上设置对应各VLAN的子接口,而三层交换机则是在内部生成“VLAN接口(VLAN Interface)”。VLAN接口,是用于各VLAN收发数据的接口。

注:在Cisco的Catalyst系列交换机上,VLAN Interface被称为SVI——Switched Virtual Interface

为了与使用路由器进行VLAN间路由对比,让我们同样来考虑一下计算机A与计算机B之间通信时的情况。首先是目标地址为B的数据帧被发到交换机,通过检索同一VLAN的MAC地址列表发现计算机B连在交换机的端口2上,因此将数据帧转发给端口2。

接下来设想一下计算机A与计算机C间通信时的情形。针对目标IP地址,计算机A可以判断出通信对象不属于同一个网络,因此向默认网关发送数据(Frame 1)。

交换机通过检索MAC地址列表后,经由内部汇聚链接,将数据帧转发给路由模块。在通过内部汇聚链路时,数据帧被附加了属于红色VLAN的VLAN识别信息(Frame 2)。

路由模块在收到数据帧时,先由数据帧附加的VLAN识别信息分辨出它属于红色VLAN,据此判断由红色VLAN接口负责接收并进行路由处理。因为目标网络192.168.2.0/24是直连路由器的网络、且对应蓝色VLAN;

因此,接下来就会从蓝色VLAN接口经由内部汇聚链路转发回交换模块。在通过汇聚链路时,这次数据帧被附加上属于蓝色VLAN的识别信息(Frame 3)。

交换机收到这个帧后,检索蓝色VLAN的MAC地址列表,确认需要将它转发给端口3。由于端口3是通常的访问链接,因此转发前会先将VLAN识别信息除去(Frame 4)。最终,计算机C成功地收到交换机转发来的数据帧。

整体的流程,与使用外部路由器时的情况十分相似——都需要经过“发送方→交换模块→路由模块→交换模块→接收方”这样的流程。




//

未完待续

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存