经过以太网通讯的主机,能够用 集线器 或者 交换机 链接起来。不管集线器仍是交换机,端口数量都是有限的。普通交换机通常有 4 口, 8 口、 16 口或 24 口,最多也有 48 口的。编程
这是一台典型的 48 口交换机:网络
如今问题来了:当主机数量超过端口数后,该怎么办呢?dom
咱们能够将多台以太网设备链接起来,组成更大的网络:性能
那么,组建以太网通常采用什么拓扑结构?须要考虑哪些因素呢?开始讨论以前,咱们先来认识一下冲突域的概念。spa
咱们知道,集线器是一种很低级的物理层设备,本质能够理解成共用导线。所以,链接在集线器上的主机,不能同时通讯。以下图,当主机①与主机③正在通讯时,其余主机是没法通讯的:rem
若是一个以太网区域内,多台主机因为冲突而没法同时通讯,这个区域构成一个 冲突域 ( collision domain )。很显然,链接在同个集线器下的全部主机处于同一冲突域,它们的通讯效率是很是低下的:get
交换机就不同了,它工做在数据链路层,根据目的 MAC 地址转发以太网帧。因为交换机端口内部不会共用导线,所以不一样端口能够同时通讯。以下图,就算主机①和主机③正在通讯,但并不影响其余端口上的主机:it
这时,主机④仍能够向主机②发送数据,彻底不受任何影响;但其余主机不能给主机③发数据。io
所以,交换机每一个端口都是一个独立的冲突域:table
回到前面的拓扑图,因为交换机每一个端口都是独立的冲突域,而整个集线器是一个冲突域,所以整个拓扑构成了两个互相独立的冲突域:
因为集线器没法隔离冲突域,所以如今已经不多用了,更不用说经过链接多个集线器来组网:
级联是链接多台以太网交换机的传统方法,只需用网线将交换机端口链接起来。以两台交换机为例:
图中的两台交换机,各有一个端口经过网线链接起来。这样一来,左边主机与右边主机通讯,都须要经过中间的这根网线,共享带宽。所以,在左边主机看来,右边主机都在一个冲突域内,左右两边通讯效率较差。
尽管如此,同个交换机下的不一样主机,冲突域是独立,于是通讯效率更高。
因为左右两边的主机通讯都要通过中间的网线,这根小水管应该最早面临瓶颈。那么,如何提升左右两边的通讯带宽呢?一根网线不够用,那就两根嘛,分别插两个端口。
这样的双线级联结构,左右两边的通讯带宽理论上能够达到原来的两倍,不够还能够再加。
有些交换机还支持堆叠,堆叠通常经过专门的堆叠口和堆叠线进行:
以堆叠方式链接的交换机,组成一个有机总体,在外部看来就是一台,如上图。所以,堆叠交换机每一个端口都是独立的冲突域。此外,堆叠端口带宽也比普通网络端口大得多,更不容易遇到瓶颈。
美中不足的是,不是全部交换机都支持堆叠,并且通常只有同个品牌型号的交换机才能堆叠。此外,堆叠对交换机距离也有要求,不能离得太远。
链接方式 | 优势 | 缺点 |
---|---|---|
级联 | 实现简单; 节约成本; 距离基本不受限制; 兼容不一样品牌设备 | 性能较差 |
堆叠 | 性能更好; 信号不易衰减 | 实现困难; 投入较大; 距离受限; 要求同一品牌 |
【小菜学网络】系列文章首发于公众号【小菜学编程】,敬请关注: