答案1
正如其他人所说,主要区别集线器在所有其他端口上广播传入的数据包:
网络集线器是一种相当简单的广播设备。集线器不管理通过它们的任何流量,进入任何端口的任何数据包都会重新生成并在所有其他端口上广播出去。由于每个数据包都通过所有其他端口发送出去,因此会导致数据包冲突——这极大地阻碍了流量的顺畅流动。
同一篇维基百科文章还提出了集线器的一些用途:
为了将协议分析器插入网络连接,集线器是网络分接头或端口镜像的替代品。
当终端用户可以访问交换机进行连接时(例如在会议室中),经验不足或粗心的用户(或破坏者)可能会通过将两个端口连接在一起而导致网络瘫痪,从而造成环路。可以使用集线器来防止这种情况,因为环路会中断集线器上的其他用户,但不会影响网络的其余部分。还可以通过使用可以检测和处理环路的交换机来避免这种危险,例如通过实施生成树协议。
带有 10BASE2 端口的集线器可用于将仅支持 10BASE2 的设备连接到现代网络。使用集线器上的 AUI 端口连接旧的 10BASE5 网段也是如此(原本用于粗网的单个设备可使用 AUI-10BASE-T 收发器连接到现代以太网)。
上面已经提到了,这还存在潜在的安全隐患。如果部署了集线器,那么有权访问集线器上一台机器的人就可以监控流向集线器上所有其他机器的流量。一般来说,交换机没有这种攻击媒介。
答案2
集线器从一个端口接收消息并将其广播到所有其他端口。
交换机接收相同的消息,并通过内部表格和了解其他端口上正在监听的主机,只将消息发送到需要该消息的端口。这样可以减少其他主机的利用率,从而提高总吞吐量。