交换机是用来连接局域网的主要设备。 交换机能够根据以太网帧中的目标地址智能转发数据。因此交换机工作在数据链路层。 交换机分割冲突域,实现全双工通信。 交换机是通过MAC表来进行交换转发工作的,所以MAC地址表是交换工作的核心,网桥与交换机的不同之处就在于网桥使用软件来创建和管理MAC地址表的,而交换机使用ASIC来创建和管理MAC地址表。学习 交换机开机初始化时,MAC地址表是空的,因为MAC地址表是存储在内存中的。交换机要学习进入该端口的数据帧的源MAC地址,并且把源地址及其对应端口号记录在MAC地址表中。 广播 交换机接收到数据帧后,要查看MAC地址表,如果数据帧的目的MAC地址不在MAC地址表中,交换机就会将该数据帧向除接收端口以外的其它所有端口广播(泛洪)出去。 转发 如果目标地址存在MAC地址表中,交换机将根据MAC地址表单播转发数据帧。 更新 交换机MAC地址表的老化时间是300s,即5min。如果该端口一直没有数据通过超过5分钟,该端口对应的MAC地址表项就会删除。腾出地方来给别的项目使用。 交换机如果发现一个数据帧的入端口与MAC地址表中的源MAC地址对应端口不一致,就会将源MAC地址重新学习到新的端口。 图解数据转发过程: 如果计算机A发送数据帧到计算机C,此时交换机的E0口接收该数据帧,交换机记录下该数据帧的源地址A及E0口的对应关系。如下图所示:由于MAC地址表中并没有目标地址C与目标端口的对应关系,所以将此数据帧对除了接收端口E0口以外的其他端口转发出去。 如果是计算机D发送数据帧到计算机C,此时交换机的E3口接收该数据帧,交换机记录下该数据帧的源地址D的地址与端口的对应关系。此时交换机仍然不知道C的地址,所以还是要对除了E0口以外的其他端口上进行转发。 交换机不断记录每个接口上接收到的数据帧的地址,一段时间以后所有的端口对应的MAC地址都会记录到MAC地址表中。此时计算机A再向计算机C发送数据时,就直接查MAC地址表进行转发即可,不会再转发到其他端口上。 从交换机转发原理,我认识到人类智慧的伟大,这是一个非常好的学习转发更新机制。似乎也在揭示一个道理,如果一个端口老是不干活,我就要把你占用的资源释放出来,什么时候干活我分配给你。什么事情都不是一成不变的,都要存在更新机制。作为一个人,不更应该要不断更新自己,不断努力提高自己来应对环境的变化,让自已处于不败之地吗?当我真的开始去做这件事的时候,我发现尽管只学习了九牛之一毛都不到,我的焦虑感却减少了好多好多,因为我相信,只要坚持,就会积少成多,滴水穿石。总有一天我能破茧成蝶。 你也开始在你的领域提高自己需要的技能吧!