早期的局域网一般工作在共享方式下。在使用共享式以太网时,会有这样的感觉:有时候网络快得如行云流水,有时候却慢似蜗牛爬行。为什么会有这样的现象呢?这就得从共享式以太网的工作机制谈起了。
工作机制
共享式以太网(即使用集线器或共用一条总线的以太网)采用了载波检测多路侦听(Carries Sense Multiple Access with Collision Detection,简称CSMA/CD)机制来进行传输控制。
1、带宽共享
图1
在局域网中,数据都是以“帧”的形式传输的。共享式以太网是基于广播的方式来发送数据的,因为集线器不能识别帧,所以它就不知道一个端口收到的帧应该转发到哪个端口,它只好把帧发送到除源端口以外的所有端口,这样网络上所有的主机都可以收到这些帧,如图1所示。这就造成了只要网络上有一台主机在发送帧,网络上所有其他的主机都只能处于接收状态,无法发送数据。也就是说,在任何一时刻,所有的带宽只分配给了正在传送数据的那台主机。举例来说,虽然一台100Mbps的集线器连接了20台主机,表面上看起来这20台主机平均分配5Mbps带宽。但是实际上在任何一时刻只能有一台主机在发送数据,所以带宽都分配给它了,其他主机只能处于等待状态。之所以说每台主机平均分配有5Mbps带宽,是指较长一段时间内的各主机获得的平均带宽,而不是任何一时刻主机都有5Mbps带宽。
2、带宽竞争
在共享式以太网中,带宽是如何分配的呢?共享式以太网是一种基于“竞争”的网络技术,也就是说网络中的主机将会“尽其所能”地“占用”网络发送数据。因为同时只能有一台主机发送数据,所以相互之间就产生了“竞争”。这就好像千军万马过独木桥一样,谁能抢占先机,谁就能过去,否则就只能等待了。
3、冲突检测/避免机制
在基于竞争的以太网中,只要网络空闲,任何一主机均可发送数据。当两个主机发现网络空闲而同时发出数据时,如果同一时间内网络上有两台主机同时发送数据,那么就会产生“碰撞”(Collision),也称为“冲突”,如图2所示。这时两个传送操作都遭到破坏,此时CSMA/CD机制将会让其中的一台主机发出一个“通道拥挤”信号,这个信号将使冲突时间延长至该局域网上所有主机均检测到此碰撞。然后,两台发生冲突的主机都将随机等待一段时间后再次尝试发送数据,避免再次发生数据碰撞的情况。
图2
共享式以太网这种“带宽竞争”的机制使得冲突(或碰撞)几乎不可避免。而且网络中的主机越多,碰撞的几率越大。
虽然任何一台主机在任何一时刻都可以访问网络,但是在发送数据前,主机都要侦听网络是否堵塞。假如共享式以太网上有一台主机想要传输数据,但是它检测到网上已经有数据了,那么它必须等一段时间,只有检测到网络空闲时,主机才能发送数据。
存在的问题
通过以上讲解,我们了解了共享式以太网的工作机制,但这对于网络管理有什么意义呢?理解这一机制对于如何保证网络运行的效率、性能和网络设计具有重要的意义。
1、共享式以太网虽然具有搭建方法简单、实施成本低(适合用于小型网络)的优点,但它的缺点是明显的:如果网络中的用户较多时,碰撞的几率将会大大增大。据实际经验,当网络的10分钟平均利用率超过37%以上,整个网络的性能将会急剧下降。因此,依据实际的工程经验,采用100Mbps集线器的站点不宜超过三四十台,否则很可能会导致网络速度非常缓慢。而10M共享式以太网目前已不能满足网络通信的需求,因此很少使用了。
所以,当网络规模较大时,只有通过采用交换机才能保证每台主机分配足够的网络带宽。
2、在网络设计中,网络设备的选型具有决定性的意义。如果选型不当,很可能会导致网络性能达不到要求,或者造成网络设备的浪费。由于共享式以太网采用CSMA/CD机制,使得网络没有QoS(服务质量)保障。“QoS”的意思是网络可以给每台主机分配指定的带宽,或者至少要达到某一带宽要求。现在网络交换机的价格越来越低,与相同级别的集线器的价格相差不大,而性能上的差异却非常大,因此应尽可能地选购带宽独享的交换机,使用交换式以太网,以提高网络性能。