4.连接在该台交换机上的其他PC都能收到这个数据帧,但是除了PC2之外的其他PC在收到这个数据帧之后,将bit流成帧并查看以太网头部的目的MAC,发现该MAC与本机的MAC并不一致,因此判断这个数据帧并非发送给自己,于是丢弃。
而PC2在收到这个数据帧并查看目的MAC发现,这个数据帧的目的MAC与自己的MAC是相同的,因此判断这个数据帧是发送给自己的,于是进行CRC校验,校验成功后将以太网头部解封装,将内层的IP数据将给IP协议栈去处理,进一步查看IP头部,发现IP头部中的目的IP地址就是本机的IP,于是将IP头部解封装,将内层的payload将给上层协议处理。如此一来PC1发送给PC2的数据就完成了单向的传输。对于交换机而言,MAC地址表里就有了一个条目。
现在,PC2要回送数据给PC1,数据的构造如下图所示:
5.交换机在收到这个数据帧后,首先是查看数据帧以太网头部的源MAC地址,将该MAC地址学习到MAC地址表中,并关联到接收该数据帧的接口24。
6.接下去交换机拿着数据帧以太网头部中的目的MAC到自己的MAC地址表里去查,结果发现MAC1这个目的MAC地址在MAC地址表中是有一条匹配表项的,并且关联到接口1,于是交换机将这个数据帧交换到接口1。这就是所谓的交换(switching)。
这个数据帧最终被PC-A接收到,这就完成了一个在以太网环境中的数据交互过程。
小结一下:所谓的以太网环境中的二层交换(lay2-switching),就是指的当一台二层交换机收到一个数据帧时,分析数据帧头部的目的MAC地址,拿着MAC地址去MAC地址表中进行查找,如果有匹配项,则将数据帧从该匹配项所关联的接口换出去,如果没有匹配项,则将数据帧进行泛洪。所以:以太网二层交换是基于数据帧的帧头中的目的MAC地址进行查找的;
查找的是MAC地址表。