集线器最大的特点就是采用共享型模式,就是指在有一个端口在向另一个端口发送数据时,其他端口就处于“等待”状态。为什么会“等待”呢?举个例子来说,其实在单位时间内A向B发送数据包时,A是发送给B、C、D三个端口的(该现象即紧接下文介绍的IP广播),但是只有B接收,其他的端口在第一单位时间判断不是自己需要的数据后将不会再去接收A发送来的数据。直到A再次发送IP广播,在A再次发送IP广播之前的单位时间内,C,D是闲置的,或者CD之间可以传输数据。如图1,我们可以理解为集线器内部只有一条通道(即公共通道),然后在公共通道下方就连接着所有端口。
IP广播
所谓IP广播(也称:群发),是指集线器在发送数据给下层设备时,不分原数据来自何处,将所得数据发给每一个端口,如果其中有端口需要来源的数据,就会处于接收状态,而不需要的端口就处于拒绝状态。举个例子来说:在网内时,当客户端A发送数据包给客户端B时,集线器便将来自A的数据包群发给每一个端口,此时B就处于接收状态,其它端口则处于拒绝状态;在网外也如此,当客户端A发送域名“www.163.com”时,通过集线器,然后经过DNS域名解析把IP地址(202.108.36.172)发回给集线器。此时,集线器便群发给所有接入的端口,需要此地址的机器便处于接收状态(客户端A处于接收状态),不需要则处于拒绝状态。
单位时间
这应该是最简单的一个名词了,也可以理解为Hub的工作频率,比如工作频率为33MHz的Hub,那么在单位时间内Hub能做什么事呢?上面在解释共享型的时候已经举了个例子,但是有一点在这需要解释的是,比如我们有的时候会看到A在向B发送数据的“同时”,C也在向D传送数据,这看起来似乎有点矛盾,也确实是这样,那为什么会看起来2者同时在进行呢?因为A在第一个单位时间内发送数据给B的时候,由于广播的原因,B、C、D在第一个单位时间内会同时接受广播,但是C,D会从第2个单位时间开始拒绝接收A发来的数据,因为C和D已经判断出这些数据不是他们需要的数据。而且在第2个单位时间的时候C也发送一个数据广播,A,B,D都接受,但是只有D会接收这些数据。这些操作只用2到3个单位时间,但是我们却很难察觉到,感觉上就是在同时“进行”一样。
什么是集线器