交换机原理是在接收到数据帧以后,首先、会记录数据帧中的源 MAC 地址和对应的接口到 MAC 表中,接着、会检查自己的 MAC 表中是否有数据帧中目标 MAC 地址的信息,如果有则会根据 MAC 表中记录的对应接口将数据帧发送出去 (也就是单播),如果没有,则会将该数据帧从非接受接口发送出去 (也就是广播,或者泛洪 Flood)。
一、什么是交换机?
交换机负责连接网络设备 (如交换机、路由器、防火墙、无线 AP 等) 和终端设备 (如计算机、服务器、摄像头、网络打印机等)。
交换机的功能是连接计算机、服务器、网络打印机、网络摄像头、IP 电话等终端设备,并实现与其它交换机、无线接入点、路由器、网络防火墙等网络设备的互联,从而构建局域网络,实现所有设备之间的通信。
二、交换机工作原理
交换机在接收到数据帧以后,首先、会记录数据帧中的源 MAC 地址和对应的接口到 MAC 表中,接着、会检查自己的 MAC 表中是否有数据帧中目标 MAC 地址的信息,如果有则会根据 MAC 表中记录的对应接口将数据帧发送出去 (也就是单播),如果没有,则会将该数据帧从非接受接口发送出去 (也就是广播,或者泛洪 Flood)。
三、交换机 MAC 地址表的表项内容
交换机 MAC 表中规定 MAC 类型种类:STATIC 表示静态 MAC 地址,DYNAMIC 表示动态 MAC 地址。
四、交换机 MAC 地址表的构建过程
为快速转发报文,以太网交换机需要建立和维护 MAC 地址表。交换机采用源 MAC 地址学习的方法建立 MAC 地址表。
- 交换机初始状态
交换机的初始状态 MAC 地址表为空。
- 地址表源 MAC 地址学习
当计算机 PC1 要发送数据帧给计算机 PC2 时,因此时地址表是空的,交换机将向除 PC1 连接端口 E0/1 以外的其他所有端口转发数据帧。在转发之前,首先检查该数据帧的源 MAC 地址(00-10-B5-4B-30-85),并在交换机的 MAC 地址表中添加一条记录(00-10-B5-4B-30-85,E0/1)使之和端口 E0/1 相对应。
- 计算机 PC2 接收数据帧
计算机 PC2 收到发送的数据帧后,用该数据帧的目的 MAC 地址和本机的 MAC 地址比较,发现 PC1 找的正是它,则接收该数据帧,其他计算机丢弃数据帧。
计算机 PC2(00-10-B5-4B-30-65)回复 PC1 时,交换机直接从端口 E0/1 转发,并学习到 E0/23 为 PC2 连接的端口,将其添加到地址表中。
交换机的其他端口利用源 MAC 地址学习的方法在 MAC 地址表中不断添加新的 MAC 地址与端口号的对应信息。直到 MAC 地址表添加完整为止。
为了保证 MAC 地址表中的信息能够实时地反映网络情况,每个学习到的记录都有一个老化时间(aging-time,最大停留时间) 。默认的 MAC 地址老化时间为 300 秒(5 分钟)。如果在老化时间内收到地址信息则刷新记录。对没有收到相应的地址信息的则删除该记录。例如,计算机 PC2 停止了和交换机通信,达到老化时间后,交换机会将其对应的记录从 MAC 地址表中删除。
也可以手工添加交换机的 MAC 地址表的静态记录,手工配置的静态记录没有老化时间的限制。由于 MAC 地址表中对于同一个 MAC 地址只能有一条记录,所以如果手工配置了 MAC 地址和端口号对应关系后,交换机就不再动态学习这台计算机的 MAC 地址了。
五、交换机的三个主要功能
- 学习
以太网交换机了解每一端口相连设备的 MAC 地址,并将地址同相应的端口映射起来存放在交换机缓存中的 MAC 地址表中。
- 转发 / 过滤
当一个数据帧的目的地址在 MAC 地址表中有映射时,它被转发到连接目的节点的端口而不是所有端口(如该数据帧为广播 / 组播帧则转发至所有端口)。
- 消除回路
当交换机包括一个冗余回路时,以太网交换机通过生成树协议避免回路的产生,同时允许存在后备路径。
六、交换机的工作特性
交换机的每一个端口所连接的网段都是一个独立的冲突域。
交换机所连接的设备仍然在同一个广播域内,也就是说,交换机不隔绝广播(惟一的例外是在配有 VLAN 的环境中)。
交换机依据帧头的信息进行转发,因此说交换机是工作在数据链路层的网络设备(此处所述交换机仅指传统的二层交换设备)。
七、交换机的分类
依照交换机处理帧时不同的操作模式,主要可分为两类:
存储转发
交换机在转发之前必须接收整个帧,并进行错误校检,如无错误再将这一帧发往目的地址。帧通过交换机的转发时延随帧长度的不同而变化。
直通式
交换机只要检查到帧头中所包含的目的地址就立即转发该帧,而无需等待帧全部的被接收,也不进行错误校验。由于以太网帧头的长度总是固定的,因此帧通过交换机的转发时延也保持不变。
交换机工作原理如下:
- 交换机在接收到数据帧以后,首先、会记录数据帧中的源 MAC 地址和对应的接口到 MAC 表中,接着、会检查自己的 MAC 表中是否有数据帧中目标 MAC 地址的信息,如果有则会根据 MAC 表中记录的对应接口将数据帧发送出去 (也就是单播),如果没有,则会将该数据帧从非接受接口发送出去 (也就是广播,或者泛洪 Flood)。
交换机的三个主要功能
学习:以太网交换机了解每一端口相连设备的 MAC 地址,并将地址同相应的端口映射起来存放在交换机缓存中的 MAC 地址表中。
转发 / 过滤:当一个数据帧的目的地址在 MAC 地址表中有映射时,它被转发到连接目的节点的端口而不是所有端口(如该数据帧为广播 / 组播帧则转发至所有端口)。
消除回路:当交换机包括一个冗余回路时,以太网交换机通过生成树协议避免回路的产生,同时允许存在后备路径。