网络数据包在链路层、网络层转发过程
一、链路层转发 交换机:根据Mac地址 转发数据帧 。 交换机内 有一张 记录着局域网 主机MAC地址与交换机接口的对应关系的表 ,交换机就是根据这张表负责将数据帧传输到指定的主机上的。 工作原理:交换机在接收到数据帧以后,首先、会记录数据帧中的源MAC地址和对应的接口到MAC表中,接着、会检查自己的MAC表中是否有数据帧中目标MAC地址的信息,如果有则会根据MAC表中记录的对应接口将数据帧发送出去(单播),如果没有,则会将该数据帧从非接受接口发送出去(广播)。 单个交换机传输数据帧过程: 在pc1上ping pc2的ip,在构造icmp报文前,需要知道目标主机的mac地址,由于此时pc1上没有匹配的mac地址条目,pc1将会先发送广播报文。 交换机收到此数据帧后,首先将数据帧中的源MAC地址和对应的接口(接口为feth26) 记录到MAC地址表中。 然后交换机会检查自己的MAC地址表中是否有数据帧中的目标MAC地址的信息,如果有,则从MAC地址表中记录的接口发送出去,如果没有,则会将此数据帧从非接收接口的所有接口发送出去(也就是除了feth26接口)。 这时,局域网的所有主机都会收到此数据帧,但是只有主机B收到此数据帧时会响应这个广播,并回应一个数据帧,此数据帧中包括主机B的MAC地址。 当交换机收到主机B回应的数据帧后,也会记录数据帧中的源MAC地址