目录
一、交换机基本原理
1、小型交换网络
2、交换机转发行为
二、交换机转发原理
1、MAC地址表
2、交换机初始状态
3、交换机学习MAC地址
4、ARP协议
5、交换机转发数据帧
6、目标主机回复
常见的以太网设备包括Hub、交换机等。交换机工作在数据链路层,它有效地隔离了以太网中的冲突域,极大地提升了以太网的性能。随着企业网络的发展,越来越多的用户需要接入到网络,交换机提供的大量的接入端口能够很好地满足这种需求。同时,交换机也彻底解决了困扰早期以太网的冲突问题,极大地提升了以太网的性能,同时也提高了以太网的安全性。交换机工作在数据链路层,对数据帧进行操作。在收到数据帧后,交换机会根据数据帧的头部信息对数据帧进行转发。
一、交换机基本原理
1、小型交换网络
2、交换机转发行为
交换机对帧的转发操作行为一共有三种:
交换机转发行为 | 说明 |
泛洪 (Flooding) | 交换机把从某一端口进来的帧通过 所有其它的端口 转发出去。 |
转发 (Forwarding) | 交换机把从某一端口进来的帧通过 另一个端口 转发出去。 |
丢弃 (Discarding) | 交换机把从某一端口进来的帧直接丢弃。 |

二、交换机转发原理
1、MAC地址表
交换机中有一个MAC 地址表,里面存放了MAC 地址与交换机端口的映射关系。MAC 地址表也称为CAM(Content Addressable Memory)表。
MAC 地址表作为交换机转发数据的依据,其含义,可以理解为交换机中某一个端口的端口号与对端设备网卡的MAC 地址的对应关系。换句话说,一个数据帧想要去某一个MAC 地址,应该从交换机的哪一个端口走。

MAC 地址表与转发行为的关系:
- 如果进入交换机的是一个单播帧,则交换机会去自己的MAC 地址表中查找这个帧的目的MAC 地址。如果查不到这个MAC 地址,则交换机执行泛洪操作。如果查到了这个MAC 地址,则比较这个MAC 地址在MAC 地址表中对应的端口是不是这个帧进入交换机的那个端口。如果不是,则交换机执行转发操作。如果是,则交换机执行丢弃操作。
- 如果进入交换机的是一个广播帧,则交换机不会去查MAC 地址表,而是直接执行泛洪操作。
- 如果进入交换机的是一个组播帧,则交换机的处理行为比较复杂。
交换机还具有学习能力。当一个帧进入交换机后,交换机会检查这个帧的源MAC 地址,并将该源MAC 地址与这个帧进入交换机的那个端口进行映射,然后将这个映射关系存放进MAC 地址表。
2、交换机初始状态
初始状态下,交换机并不知道所连接主机的MAC 地址,所以MAC 地址表为空。下图中,SWA 为初始状态,在收到主机A 发送的数据帧之前,MAC地址表中没有任何表项。

然而,交换机具有很好的学习能力。
3、交换机学习MAC地址
交换机将收到的数据帧的源MAC 地址和对应接口记录到MAC 地址表中。如下图所示:
- 主机A 发送数据给主机C 时,一般会首先发送ARP 请求来获取主机C 的MAC 地址,此ARP 请求帧中的目的MAC 地址是广播地址,源MAC 地址是自己的MAC 地址。
- SWA 收到该帧后,会将帧中源MAC 地址和接收端口的映射关系添加到MAC 地址表中。此后,如果交换机收到目标MAC 地址为00-01-02-03-04-AA的数据帧时,都将通过G0/0/1 端口转发。
- 默认情况下,交换机学习到的MAC 地址表项的老化时间为300 秒。如果在老化时间内再次收到主机A 发送的数据帧,SWA 中保存的主机A 的MAC地址和G0/0/1 的映射的老化时间会被刷新。
4、ARP协议
ARP(Address Resolution Protocol,地址解析协议 ),属于网络层。ARP 的作用,已知IP 地址解析MAC 地址。ARP 工作原理:
- 首先发送ARP 广播,内容是我的IP 的多少,我的MAC 是多少。某一个IP,我想要与你通信,你的MAC 是多少,请告诉我。
- 局域网(同一网段)内所有主机,都能收到ARP 广播。
- 只有目标主机收到广播后,回应ARP 单播。
- 当PC 收到ARP 单播回应后,在计算机中生成ARP 缓存表
5、交换机转发数据帧
当目的MAC 地址为广播地址,或者数据帧的目的MAC 地址不在MAC 表中,交换机会泛洪该帧。
如下图所示: 主机A 发送的数据帧的目的MAC 地址为广播地址,所以交换机会将此数据帧通过G0/0/2 和G0/0/3 端口广播到主机B 和主机C。

6、目标主机回复
交换机根据MAC 地址表将目标主机的回复信息单播转发给源主机。
如下图所示:
- 主机B 和主机C 接收到此数据帧后,都会查看该ARP 数据帧。但是主机B 不会回复该帧,主机C 会处理该帧并发送ARP 回应,此回复数据帧的目的MAC 地址为主机A 的MAC 地址,源MAC 地址为主机C 的MAC 地址。
- SWA 收到ARP 回应数据帧时,会将该帧的源MAC 地址和接口的映射关系添加到MAC 地址表中。
- 如果此映射关系在MAC 地址表已经存在,则会被刷新。然后SWA 查询MAC 地址表,根据帧的目的MAC 地址找到对应的转发端口后,从G0/0/1 转发此数据帧。
三、总结
具体来说,它有以下几个核心功能和解决问题的方向:
-
数据转发:交换机能够根据MAC地址表识别网络中的各个设备,并将收到的数据帧直接转发到目标设备,而非广播到所有端口。这提高了数据传输的效率和安全性。
-
冲突域隔离:在传统集线器(Hub)组成的网络中,所有设备共享同一个冲突域,导致数据传输速率下降。而交换机可以将每个端口划分成独立的冲突域,有效减少或避免了数据包碰撞的问题。
-
带宽优化:交换机为每个连接的设备提供了专用的带宽,使得不同设备之间的通信不会互相干扰,从而提升了整个网络的性能和可用带宽。
-
VLAN支持:高级交换机还支持虚拟局域网(VLAN)技术,可以逻辑上将一个物理网络划分为多个子网,增强网络安全性和管理灵活性。