二层交换技术的发展比较成熟,二层工业交换机属数据链路层设备,可以识别数据包中的MAC地址信息,根据MAC地址进行转发,并将这些MAC地址与对应的端口记录在自己内部的一个地址表中。
具体的工作流程如下:
1) 当工业交换机从某个端口收到一个数据包,它先读取包头中的源MAC地址,这样它就知道源MAC地址的机器是连在哪个端口上的;
2) 再去读取包头中的目的MAC地址,并在地址表中查找相应的端口;
3) 如表中有与这目的MAC地址对应的端口,把数据包直接复制到这端口上;
4) 如表中找不到相应的端口则把数据包广播到所有端口上,当目的机器对源机器回应时,工业交换机又可以记录这一目的MAC地址与哪个端口对应,在下次传送数据时就不再需要对所有端口进行广播了。不断的循环这个过程,对于全网的MAC地址信息都可以学习到,二层交换机就是这样建立和维护它自己的地址表。
二层交换机之所以是这么高效,一方面是因为它的硬件的实现高速转发,另一方面是因为二层交换机只是读取封装好的数据包,并不对数据包进行修改(路由器是会对数据包进行修改的,修改它的目的和源MAC地址的)。