交换机工作在OSI 参考模型中数据链路层的MAC 子层。在以太网交换机上有许多高速端口,这些端口分别连接不同的局域网网段或单台设备,以太网交换机负责在这些端口之间转发帧。交换和交换机最早起源于电话通信系统,由电话交换技术发展而来。
交换机属于数据链路层设备,可以识别数据包中的MAC 地址信息,根据MAC 地址进行转发,并将这些MAC 地址与对应的端口记录在自己内部的一个转发表中。交换机具体的工作流程如下:
(1)当交换机从某个端口收到一个数据包,它先读取包头中的源MAC 地址,从而得知源MAC 地址的机器是连在哪个端口上的,如果源MAC 地址不在转发表中,就在转发表中登记MAC 地址对应端口。
(2)接着读取包头中的目的MAC 地址,并在地址表中查找相应的端口。
(3)如果表中有与该目的MAC 地址对应的端口,就把数据包直接复制到该端口上。
(4)如果表中找不到相应的端口则把数据包广播到所有端口上,当目的机器对源机器回应时,交换机又可以学习到一个目的MAC 地址与哪个端口对应,在下次传送数据时就不再需要对所有端口进行广播了。
不断地循环这个过程,对于全网的MAC 地址信息都可以学习到,二层交换机就是这样建立和维护其转发表的。
交换工作模式是为对使用共享工作模式的网络提供有效的网段划分解决方案而出现的,它可以使每个用户尽可能地分享到最大带宽。交换机的工作模式示意图如图6.6所示。
图6.6 交换工作模式
这样每个端口就可以独享交换机的一部分总线带宽。这样,不仅提高了效率,节约了网络资源,还可以保证数据传输的安全性。而且由于这个过程比较简单,多使用硬件来实现,因此速度相当快,一般只需几十微秒,交换机便可决定一个数据帧该往哪里送。(www.xing528.com)
交换机的交换模式有以下4 种:
(1)直通转发模式。交换机在输入端口收到一帧,立即检查该帧的帧头,获取目的MAC地址,查找自己内部的转发表,找到相应的输出端口,在输入和输出的交叉处接通,数据被直通到输出端口。直通转发模式如图6.7所示。
图6.7 直通转发模式
直通转发模式只检查帧头,获取目的MAC 地址,但不存储帧,因此时延小,交换速度快。但也正是由于不存储帧,所以不具有错误检测能力,易丢失数据,而且要增加端口的话,交换矩阵十分复杂。
(2)存储转发模式。交换机将输入的帧缓存起来,校验该帧是否正确,如果不正确,则将该帧丢弃,如果该帧是长度小于64 字节的残缺帧,也将它丢弃。只有该帧校验正确,且是有效帧,才取出目的MAC 地址,查找转发表,找出其对应的端口并将该帧发送到这个端口。
存储转发式交换的优点是能进行错误检测,并且由于缓存整个帧,能支持不同速度端口之间的数据交换。其缺点是时延较大。
(3)准直通转发模式。准直通转发模式只转发长度至少为512 bit(64 字节)的帧。既然所有残帧的长度都小于512 bit,那么,该转发模式自然也就避免了残帧的转发。为了实现该功能,准直通转发交换机使用了一种特殊的缓存。这种缓存采用先进先出队列(FIFO),比特流从一端进入然后再以同样的顺序从另一端出来。如果帧以小于512 bit 的长度结束,那么FIFO 中的内容(残帧)就会被丢弃。因此,它是一个非常好的解决方案,也是目前大多数交换机使用的直通转发方式。
(4)智能交换模式。智能交换模式是指交换机能够根据所监控网络中错误包传输的数量,自动智能地改变转发模式。如果堆栈发觉每秒错误少于20 个,将自动采用直通转发模式;如果堆栈发觉每秒错误大于20 个,将自动采用存储转发模式,直到返回的错误数量每秒低于20 个时,再切换回直通转发模式。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。