交换机基本原理
常见的以太网设备包括Hub、交换机等。交换机工作在数据链路层,它有效地隔离了以太网中的冲突域,极大的提升了以太网的性能。
小型交换网络
交换机的转发行为
交换机转发行为 | 说明 |
---|---|
泛洪(Flooding) | 交换机把从某一端口进来的帧通过所有其他端口转发出去。 |
转发(Forwarding) | 交换机把从某一端口进来的帧通过另一端口转发出去 |
丢弃(Discarding) | 交换机把从某一端口进来的帧丢弃 |
交换机的转发原理
MAC地址表
交换机中有一个MAC地址表,里面存放了MAC地址与交换机端口的映射关系。MAC地址表也称为CAM表(Content Addressable Memory)
交换机中某一端口的端口号与对端设备网卡的MAC地址的对应关系。
在PC机里有一个ARP缓存表
MAC地址表与转发行为的关系:
1.如果进入交换机的是一个单播帧,则交换机会去MAC地址表中查找这个帧的目的MAC地址:
1)如果查不到这个MAC地址,则交换机执行泛洪操作
2)如果查到了这个MAC地址,则比较这个MAC地址在MAC地址表中对应的端口是不是这个帧进入交换机的那个端口。如果不是,则交换机执行转发操作。如果是,则执行丢弃操作
2.如果进入交换机的是一个广播帧,则交换机不会去查MAC地址表,而是直接执行泛洪操作
3.交换机还具有学习能力。当一个帧进入交换机后,交换机会检查这个帧的源MAC地址,并将该源MAC地址与这个帧进入交换机的那个端口进行映射,然后将这个映射关系存放进MAC地址表
交换机的初始状态
初始状态下,交换机并不知道所连接主机的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秒。
ARP协议
ARP(Address Resolution Protocol),属于网络层。
作用:已知IP地址解析MAC地址
工作原理:
1.首先发送ARP广播,我的IP是多少,我的MAC是多少。某一个IP,我想要与你通信,你的MAC是多少,请告诉我(局域网(同一网段)中所有主机都能收到广播)
2.目标主机回应ARP单播
3.当PC收到ARP单播回应后,在计算机中生成ARP缓存
交换机转发数据帧
当数据帧的目的MAC地址不在MAC表中,或者目的MAC地址为广播地址时,交换机会泛洪
主机A发送的数据帧的目的MAC地址为广播地址,所以交换机会将此数据帧通过G0/0/2和G0/0/3端口广播到主机B和主机C
目标主机回复
交换机根据MAC地址表将目标主机的回复信息单播转发给源主机
主机B和主机C接收到此数据帧后,都会查看该ARP数据帧。但是主机B不会回复该帧,主机C会处理该帧并发送ARP回应,此回复数据帧的目的MAC地址为主机A的MAC地址,源MAC地址为主机C的MAC地址。
SWA收到ARP回应的数据帧时,会将该帧的源MAC地址和接口的映射关系添加到MAC地址表中
如果此映射关系在MAC地址表已经存在,则会被刷新。然后SWA查询MAC地址表,根据帧的目的MAC地址找到对应的转发端口后,从G0/0/1转发此数据帧