来源(Cisco与华为技术网(Vlan9.com))

From: http://www.vlan9.com/news/y047968.html

来源: 作者: 出处:Vlan9.com 2007-10-03 关 键 词:http www 共享 广播 广播风暴

号称网络硬件三剑客的集线器(Hub)、交换机(Switch)与路由器(Router)一直都是网络界的活跃分子,但让很多初入网络之门的菜鸟恼火的是,它们三者不仅外观相似,而且经常呆在一起,要想分清谁是谁,感觉有点难!就让我们一起来看看它们之间有什么区别和联系吧!

三剑客的工作原理

一、集线器

1.什么是集线器

在认识集线器之前,必须先了解一下中继器。在我们接触到的网络中,最简单的就是两台电脑通过两块网卡构成“双机互连”,两块网卡之间一般是由非屏蔽双绞线来充当信号线的。由于双绞线在传输信号时信号功率会逐渐衰减,当信号衰减到一定程度时将造成信号失真,因此在保证信号质量的前提下,双绞线的最大传输距离为100米。当两台电脑之间的距离超过100米时,为了实现双机互连,人们便在这两台电脑之间安装一个“中继器”,它的作用就是将已经衰减得不完整的信号经过整理,重新产生出完整的信号再继续传送(图1)。



中继器就是普通集线器的前身,集线器实际就是一种多端口的中继器。集线器一般有4、8、16、24、32等数量的RJ45接口,通过这些接口,集线器便能为相应数量的电脑完成“中继”功能。由于它在网络中处于一种“中心”位置,因此集线器也叫做“Hub”。

2.集线器的工作原理

集线器的工作原理很简单,以图2为例,图中是一个具备8个端口的集线器,共连接了8台电脑。集线器处于网络的“中心”,通过集线器对信号进行转发,8台电脑之间可以互连互通。具体通信过程是这样的:假如计算机1要将一条信息发送给计算机8,当计算机1的网卡将信息通过双绞线送到集线器上时,集线器并不会直接将信息送给计算机8,它会将信息进行“广播”——将信息同时发送给8个端口,当8个端口上的计算机接收到这条广播信息时,会对信息进行检查,如果发现该信息是发给自己的,则接收,否则不予理睬。由于该信息是计算机1发给计算机8的,因此最终计算机8会接收该信息,而其它7台电脑看完信息后,会因为信息不是自己的而不接收该信息。

3.集线器的特点

1)共享带宽

集线器的带宽是指它通信时能够达到的最大速度。目前市面上用于中小型局域网的集线器主要有10Mbps、100Mbps和10/100Mbps自适应三种。

10Mb带宽的集线器的传输速度最大为10Mbps,即使与它连接的计算机使用的是100Mbps网卡,在传输数据时速度仍然只有10Mbps。10/100Mbps自适应集线器能够根据与端口相连的网卡速度自动调整带宽,当与10Mbps的网卡相连时,其带宽为10Mb;与100Mbps的网卡相连时,其带宽为100Mb,因此这种集线器也叫做“双速集线器”。

集线器是一种“共享”设备,集线器本身不能识别目的地址,当同一局域网内的A主机给B主机传输数据时,数据包在以集线器为架构的网络上是以广播方式传输的,由每一台终端通过验证数据包头的地址信息来确定是否接收。

由于集线器在一个时钟周期中只能传输一组信息,如果一台集线器连接的机器数目较多,并且多台机器经常需要同时通信时,将导致集线器的工作效率很差,如发生信息堵塞、碰撞等。

为什么会这样呢?打给比方,以图2为例,当计算机1正在通过集线器发信息给计算机8时,如果此时计算机2也想通过集线器将信息发给计算机7,当它试图与集线器联系时,却发现集线器正在忙计算机1的事情,于是计算机2便会“带”着数据站在集线器的面前等待,并时时要求集线器停下计算机1的活来帮自己干。如果计算机2成功地将集线器“抢”过来了(由于集线器是“共享”的,因此很容易抢到手),此时正处于传输状态的计算机1的数据便会停止,于是计算机1也会去“抢”集线器……



可见,集线器上每个端口的真实速度除了与集线器的带宽有关外,与同时工作的设备数量也有关。比如说一个带宽为10Mb的集线器上连接了8台计算机,当这8台计算机同时工作时,则每台计算机真正所拥有的带宽是10/8=1.25Mb!

2半双工

先说说全双工:两台设备在发送和接收数据时,通信双方都能在同一时刻进行发送或接收操作,这样的传送方式就是全双工。而处于半双工传送方式的设备,当其中一台设备在发送数据时,另一台只能接收,而不能同时将自己的数据发送出去。

由于集线器采取的是“广播”传输信息的方式,因此集线器传送数据时只能工作在半双工状态下,比如说计算机1与计算机8需要相互传送一些数据,当计算机1在发送数据时,计算机8只能接收计算机1发过来的数据,只有等计算机1停止发送并做好了接收准备,它才能将自己的信息发送给计算机1或其它计算机。

二、交换机

1.什么是交换机

交换机也叫交换式集线器,它通过对信息进行重新生成,并经过内部处理后转发至指定端口,具备自动寻址能力和交换作用,由于交换机根据所传递信息包的目的地址,将每一信息包独立地从源端口送至目的端口,避免了和其他端口发生碰撞。广义的交换机就是一种在通信系统中完成信息交换功能的设备。

2.交换机的工作原理

在计算机网络系统中,交换机是针对共享工作模式的弱点而推出的。集线器是采用共享工作模式的代表,如果把集线器比作一个邮递员,那么这个邮递员是个不认识字的“傻瓜”——要他去送信,他不知道直接根据信件上的地址将信件送给收信人,只会拿着信分发给所有的人,然后让接收的人根据地址信息来判断是不是自己的!而交换机则是一个“聪明”的邮递员——交换机拥有一条高带宽的背部总线和内部交换矩阵。交换机的所有的端口都挂接在这条背部总线上,当控制电路收到数据包以后,处理端口会查找内存中的地址对照表以确定目的MAC(网卡的硬件地址)的NIC(网卡)挂接在哪个端口上,通过内部交换矩阵迅速将数据包传送到目的端口。目的MAC若不存在,交换机才广播到所有的端口,接收端口回应后交换机会“学习”新的地址,并把它添加入内部地址表中。

可见,交换机在收到某个网卡发过来的“信件”时,会根据上面的地址信息,以及自己掌握的“常住居民户口簿”快速将信件送到收信人的手中。万一收信人的地址不在“户口簿”上,交换机才会像集线器一样将信分发给所有的人,然后从中找到收信人。而找到收信人之后,交换机会立刻将这个人的信息登记到“户口簿”上,这样以后再为该客户服务时,就可以迅速将信件送达了。

3.交换机的性能特点

1)独享带宽

由于交换机能够智能化地根据地址信息将数据快速送到目的地,因此它不会像集线器那样在传输数据时“打扰”那些非收信人。这样一来,交换机在同一时刻可进行多个端口组之间的数据传输。并且每个端口都可视为是独立的网段,相互通信的双方独自享有全部的带宽,无须同其他设备竞争使用。比如说,当A主机向D主机发送数据时,B主机可同时向C主机发送数据,而且这两个传输都享有网络的全部带宽——假设此时它们使用的是10Mb的交换机,那么该交换机此时的总流通量就等于2×10Mb=20Mb。

2)全双工

当交换机上的两个端口在通信时,由于它们之间的通道是相对独立的,因此它们可以实现全双工通信。

三、集线器与交换机的区别

从两者的工作原理来看,交换机和集线器是有很大差别的。首先,从OSI体系结构来看,集线器属于OSI的第一层物理层设备,而交换机属于OSI的第二层数据链路层设备。

其次,从工作方式来看,集线器采用一种“广播”模式,因此很容易产生“广播风暴”,当网络规模较大时性能会受到很大的影响。而当交换机工作的时候,只有发出请求的端口和目的端口之间相互响应而不影响其他端口,因此交换机能够在一定程度上隔离冲突域和有效抑制“广播风暴”的产生。

另外,从带宽来看,集线器不管有多少个端口,所有端口都是共享一条带宽,在同一时刻只能有两个端口传送数据,其他端口只能等待,同时集线器只能工作在半双工模式下;而对于交换机而言,每个端口都有一条独占的带宽,当两个端口工作时并不影响其他端口的工作,同时交换机不但可以工作在半双工模式下而且可以工作在全双工模式下。

如果用最简单的语言叙述交换机与集线器的区别,那就应该是智能与非智能的区别。集线器说白了只是连接多个计算机的网络设备,它只能起到信号放大和传输的作用,不能对信号中的碎片进行处理,所以在传输过程中容易出错。而交换机则可以看作为是一种智能型的集线器,它除了拥有集线器的所有特性外,还具有自动寻址、交换、处理的功能。并且在数据传递过程中,发送端与接受端独立工作,不与其它端口发生关系,从而达到防止数据丢失和提高吞吐量的目的。

Link: http://www.asm32.net/article_details.aspx?id=3190