常见的以太网设备包括Hub、交换机等。交换机工作在数据链路层,它有效的隔离了以太网中的冲突域,极大地提升了以太网性能。
- 随着企业网络的发展,越来越多的用户需要接入到网络交换机提供的大量的接入端口能够很好地满足这种需求。同时,交换机也彻底解决了困扰早期以太网的冲突问题,极大地提升了以太网的性能,同时也提高了以太网的安全性。
- 交换机工作在数据链路层,对数据帧进行操作。在收到数据帧后,交换机会根据数据帧的头部信息对数据帧进行转发。
交换机中有一个MAC地址表里面存放了MAC地址与交换机端口的映射关系。MAC地址表也称为 CAM(Content Addressable Memory)表。
如图所示,交换机对帧的转发操作行为一共有三种:泛洪(Flooding),转发(Forwarding),丢弃(Discarding)。
泛洪:交换机把从某一端口进来的帧通过所有其它的端口转发出去(注意,“所有其它的端口”是指除了这个帧进入交换机的那个端口以外的所有端口)。
转发:交换机把从某一端口进来的帧通过另一个端口转发出去(注意,"另一个端口”不能是这个帧进入交换机的那个端口)。
丢弃:交换机把从某一端口进来的帧直接丢弃。交换机的基本工作原理可以概括地描述如下:
如果进入交换机的是一个单播帧,则交换机会去MAC地址表中查找这个帧的目的MAC地址。
2)如果查到了这个MAC地址,则比较这个MAC地址在MAC地址表中对应的端口是不是这个帧进入交换机的那个端口。如果不是,则交换机执行转发操作。如果是,则交换机执行丢弃操作。如果进入交换机的是一个广播帧,则交换机不会去查MAC地址表,而是直接执行泛洪操作。
如果进入交换机的是一个组播帧,则交换机的外理行为比较复杂,超出了这里的学习范围,所以略去不讲。另外,交换机还具有学习能力。当一个师进入交换机后,交换机会检查这个师的源MAC地址,并将该源MAC地址与这个师讲入交换机的那个端口进行映射,然后将这个映射关系存放进 MAC地址表。
主机A发送数据给主机C时,一般会首先发送ARP请求来获取主机C的MAC地址,此ARP请求帧中的月的MAC地址是广播地址,源MAC地址是自己的MAC地址。SWA收到该帖后会将源MAC地址和接收端口的映射关系添加到MAC地址表中,缺省情况下,X7系列交换机学习到的MAC地址表项的老化时间为300秒。如果在老化时间内再次收到主机A发送的数据帧SWA中保存的主机A的MAC地址和G0/0/1的映射的老化时间会被刷新,此后,如果交换机收到目标MAC地址为00-01-02-03-04-AA的数据帧时,都将通过G0/0/1端口转发。
当数据帧的MAC地址不在MAC地址表中,或者目的MAC地址为广播地址时,交换机会范洪该帧。
交换机根据MAC地址表将目标主机的回复信息单播帧转发给源主机。
主机B和主机C接收到此数据帧后,都会查看该ARP数据帧。但是主机B不会回复该帧,主机C会处理该帧并发送ARP回应,此回复数据帧的目的MAC地址为主机A的MAC地址,源 MAC地址为主机C的MAC地址。SWA收到回复数据帧时,会将该帧的源MAC地址和接口的映射关系添加到MAC地址表中。如果此映射关系在MAC地址表已经存在,则会被刷新。然后SWA查询MAC地址表根据帧的目的MAC地址找到对应的转发端口后,从G0/0/1转发此数据帧
current state 表示端口的物理状态,如果为UP,表示端口处于打开状态
Line protocol current state 表示端口的链路协议状态,如果为UP,表示端口的链路协议处于正常的启动状态。
Speed 表示端口的工作速率SWA的G00/1端口工作速率为100Mbit/s Duplex表示端口的双工模式,SWA的G0/0/1端口双工模式为全双工。
当一台主机从交换机的一个端口移动到另外一个端口时,交换机的MAC地址表会发生什么改变?
当一台主机从交换机的一个端口移除时,交换机检测到物理链路Down,因此会从MAC地址表中清除对应主机的MAC表项。一旦主机连接到交换机另外一个端口,交换机会检测到新端口对应的物理链路UP。主机发送报文后,交换机就会学习到主机的MAC地址和新端口的映射关系,并且添加到MAC地址表中。