我们平常生活中就可感觉到这两种方式的不同之处,明显可以感受到双车道的交换方式的优越性,等于说是一台性能好的交换机比一台恶劣的交换机处理速度快是一样的。
而对于交换机而言,它能够“认识”连接到自己身上的每一台电脑,凭什么认识呢?就是凭每块网卡物理地址,俗称“MAC地址”。交换机还具有MAC地址学习功能,它会把连接到自己身上的MAC地址记住,形成一个节点与MAC地址对应表。
凭这样一张表,它就不必再进行广播了,从一个端口发过来的数据,其中会含有目的地的MAC地址,交换机在保存在自己缓存中的MAC地址表里寻找与这个数据包中包含的目的MAC地址对应的节点,找到以后,便在这两个节点间架起了一条临时性的专用数据传输通道,这两个节点便可以不受干扰地进行通信了。
要注意交换机档次越低,交换机的缓存就越小,也就是说为保存MAC地址所准备的空间也就越小,对应的就是它能记住的MAC地址数也就越少。通常一台交换机都具有1024个MAC地址记忆空间,都能满足实际需求。
从上面的分析来看我们知道交换机所进行的数据传递是有明确的方向的,而不是乱传递,而不是集线器的广播方式,这种传递示意图如图3所示。同时由于交换机可以进行全双工传输,所以交换机可以同时在多对节点之间建立临时专用通道,形成了立体交叉的数据传输通道结构。
交换机的数据传递工作原理可以简单地这样来说明:
当交换机从某一节点收到一个以太网帧后,将立即在其内存中的地址表(端口号-MAC地址)进行查找,以确认该目的MAC的网卡连接在哪一个节点上,然后将该帧转发至该节点。
如果在地址表中没有找到该MAC地址,也就是说,该目的MAC地址是***出现,交换机就将数据包广播到所有节点。拥有该MAC地址的网卡在接收到该广播帧后,将立即做出应答,从而使交换机将其节点的“MAC地址”添加到MAC地址表中。
换言之,当交换机从某一节点收到一个帧时(广播帧除外),将对地址表执行两个动作,一是检查该帧的源MAC地址是否已在地址表中,如果没有,则将该MAC地址加到地址表中,这样以后就知道该MAC地址在哪一个节点;
二是检查该帧的目的MAC地址是否已在地址表中,如果该MAC地址已在地址表中,则将该帧发送到对应的节点即可,而不必像集线器那样将该帧发送到所有节点,只须将该帧发送到对应的节点。
从而使那些既非源节点又非目的节点的节点间仍然可以进行相互间的通信,从而提供了比集线器更高的传输速率。如果该MAC地址不在地址表中,则将该帧发送到所有其它节点(源节点除外),相当于该帧是一个广播帧。
讲到这里我们要明白一个事实,那就是交换机在刚买回来不可能知道您所在网络中各节点的地址,也就是说在交换机刚刚打开电源时,其MAC地址表是一片空白。那么,交换机的地址表是怎样建立起来的呢?
学习!交换机根据以太网帧中的源MAC地址来更新地址表。当一台计算机打开电源后,安装在该系统中的网卡会定期发出空闲包或信号,交换机即可据此得知它的存在以及其MAC地址,这就是所谓自动地址学习。
由于交换机能够自动根据收到的以太网帧中的源MAC地址更新地址表的内容,所以交换机使用的时间越长,学到的MAC地址就越多,未知的MAC地址就越少,因而广播的包就越少,速度就越快。#t#
那么,交换机是否会***性地记住所有的端口号-MAC地址关系呢?不是的。由于交换机中的内存毕竟有限,因此,能够记忆的MAC地址数量也是有限的。既然不能无休止地记忆所有的MAC地址,那么就必须赋予其相应的忘却机制,从而吐故纳新。
实上,工程师为交换机设定了一个自动老化时间(Auto-aging),若某MAC地址在一定时间内(默认为300秒)不再出现,那么,交换机将自动把该MAC地址从地址表中清除。当下一次该MAC地址重新出现时,将会被当作新地址处理。
综上所述,交换机作为当前局域网的主要连接设备,与集线器相比具有许多明显的优点,目前正有全面取代集线器之势,随着交换技术的不断发展,以太网交换机的价格急剧下降,交换到桌面已是大势所趋。
如果网络上拥有大量的用户、繁忙的应用程序和各式各样的服务器,而且你还未对网络结构做出任何调整,那么整个网络的性能可能会非常低。最为有效的解决方法就是用交换机替代原来的集线器,当然交换机的价格会比集线器贵些,但目前来说应该完全可以接受。况且所带来的性能提绝不是“一点点”那么简单!