当信号到达集线器后,会被广播到整个网络中
。以太网的基本架构就是将包发到所有的设备,然后由设备根据接收方MAC地址来判断应该接收哪些包,而集线器就是这一架构的忠实体现,它就是负责按照以太网的基本架构将信号广播出去。下面来看看它的工作方式。
集线器的内部结构如图3.2左侧部分所示。首先,在每个接口的后面装有和网卡中的PHY(MAU)功能相同的模块
,但如果它们像网卡端一样采用直连式接线,是无法正常接收信号的。要正常接收信号,必须将“发送线路”和“接收线路”连接起来才行。在图3.2中,集线器中的PHY (MAU)模块与接口之间采用交叉接线的原因正是在于此。
**集线器的接口中有一个MDI/MDI-X切换开关,现在你应该知道它是干什么用的了吧?**MDI就是对RJ-45接口和信号收发模块进行直连接线,而MDI-X则是交叉接线。由于集线器的接口一般都是MDI-X模式,要将两台集线器相连时,就需要将其中一台改成MDI模式(图3.5(a))。如果集线器上没有MDI切换开关,而且所有的接口又都是MDI-X时,可以用交叉网线连接两台集线器。所谓交叉网线,就是一种将发送和接收信号线反过来接的网线(图3.6)。
此外,交叉网线也可以像图3.5(b)这样用于将两台计算机直接连接起来。网卡不仅可以连接集线器,因为网卡的PHY(MAU)模块和集线器都是一样的,所以两台计算机的网卡也可以相互连接,只要将一侧的发送信号线和另一侧的接收信号线连起来就可以收发数据了。
信号到达集线器的PHY(MAU)模块后,会进入中继电路。中继电路的基本功能就是将输入的信号广播到集线器的所有端口上。当然,也有一些产品具有信号整形、错误抑制等功能,但基本上就是将输入的信号原封不动地输出到网线接口。
接下来,信号从所有接口流出,到达连接在集线器上的所有设备。然后,这些设备在收到信号之后会通过MAC头部中的接收方MAC地址判断是不是发给自己的,如果是发给自己的就接受,否则就忽略。这样,网络包就能够到达指定MAC地址的接收方了。
集线器将信号发送给所有连接在它上面的线路。
由于集线器只是原封不动地将信号广播出去,所以即便信号受到噪声的干扰发生了失真,也会原样发送到目的地
。这时,接收信号的设备,也就是交换机、路由器、服务器等,会在将信号转换成数字信息后通过FCS校验发现错误,并将出错的包丢弃。当然,丢弃包并不会影响数据的传输,因为丢弃的包不会触发确认响应。因此协议栈的TCP模块会检测到丢包,并对该包进行重传。
总结
- 集线器可以实现以太网的基本设想