想不到临时起意做了个无用技的集合,最近写了这么多篇了。但对于网络来说,这个集合目前还是很皮毛的。
毕竟,iN很难通过寥寥几篇文章让读者真的去掌握大学里几年再加上各种职业培训的内容,这件事本来就不现实。
不过,一些网络的概念还是别以讹传讹,有的时候未必会用得到,却需要大家至少有一个正确一点的理解。否则什么东西都成了玄学,大家玩起来也不体面。
在这几天的文章中一直有一个概念,基本上贯穿了前面文章的始终,这个东西就是“网桥(Bridge)”。
那么网桥到底是个什么东西?今天咱们来展开讲讲。
很多数码小白接触到桥的主要信息来源就是很多数码博主在教大家如何把光猫改成桥接模式。通过这一系列的教程,大家就有一个“桥接”的概念。但很遗憾的是,大量数码博主会把桥接模式和路由模式搞混,以至于即便是按照一些保姆级的教程文章把网络设通,但也没有人把网桥搞明白。
按照网络设备的定义,网桥是指把多个不同的网段,在数据链路层连接起来的设备。我们首先要明确一点,这是一个“设备”,而不是一个“功能”。而实际上,的确是有叫做网桥的硬件产品存在的。
我们来说最简单的网络桥接器:
当两个网络集线器各自接入了一些计算机设备的时候,在网络上是有两类网络信号传递的,第一种就是咱们常见的数据传输信号,第二种叫做广播信号。当一个以太网帧在传输的时候,集线器会向所有端口进行广播,以确定目的设备存在,同时让目的设备做好接受信号的准备。
如果我们将两个集线器连接起来后,任意的一台集线器上的广播数据就会传递到整个网络中,同时,集线器之间的连接线路上也会承担传输广播信号的负担。这样一来网络的效率就大幅度降低了。
加上一个网桥之后,由于网桥是一个二层存储转发设备,因此,一个集线器内部的广播信号就不会通过网桥传递到另一个集线器上。这样集线器下部的网络则可以保持更高效的工作状态。
这就是网桥的最核心作用。当然了,我们的铜缆网线最长的长度是100米,如果要连接200米之外的设备只用铜缆网线是做不到的,通常的做法就是在网线的中间端加上一个网桥,例如网桥的存储转发功能再次发起一个物理连接,使网桥一边的以太网信号传递到网桥的另一边。
既然网桥可以跨接两个铜缆以太网信号了,那么我们还可以做得更出格一些,例如一边是铜缆一边是光缆。
一些光纤收发器,只要有存储转发功能其本质还是一个网桥。
网桥很简单对吧?简单到已经可以集成到大部分网络设备中。
我们看待带有存储转发功能的网络交换机,甚至可以直接将之当作集成在交换机背板上的一组网桥。这就导致了网桥的概念上移。
因此,在很多路由器上会出现桥接这一选项:
光猫改桥接模式实际上就是仅仅在光猫上启用光纤介质到以太网的存储转发模式。
和桥的本质是没有任何区别的,但有一点要注意的是(上图,桥的工作原理)桥是一种存储转发设备,它对网络的影响来自于自身处理能力。这句话怎么理解呢?简单的说,我们在使用任何网桥的时候,不管是一个实体的硬件设备还是在系统中虚拟出来的虚拟设备,都需要注意网桥(或宿主)的性能。否则的话,过多的网桥不仅仅不会提高性能,反而会成为网络性能的瓶颈。
说回咱们刚刚提到的光猫桥接模式。
一般的情况下,运营商给大家提供的光猫本身的处理能力是不够的。有人做过测试,利用从64字节-1518字节的不同数据包跑速率得到的测试结果:
我们就可以发现,运营商的光猫在传输64字节和128字节的小包的时候并不能跑满千兆带宽。实际上这就是因为在桥接处理的时候自身比较弱的存储转发性能所导致的。
当然了,光猫改桥接理论上还是会提高网络速度的,但上面的表就已经代表了一种设备的最大处理能力了。至于改了桥接速度能不能真正提高,实际上还得看光猫下面的路由器自己的处理能力,毕竟,路由器的WAN口实际上还是一个网桥。路由器的处理能力也是这一条链路木桶上的木板,桶能装多少水取决于最短的木板。
那么在Router OS中如何看网桥呢?这个部分并不在界面中。通常,我们可以在Router OS的interfaces界面中看到:
例如上图,在其中包含了两个网桥 BridgeLan和loopback-CN-HL,我们可以看到它们前面的标志是“”的标记,但是并不代表这台路由器上只有两个网桥。
进入到命令行:
你会发现通过输入命令可以列举出四个网桥,pppoe-out1和WG.TJ.HL-US.SV也是实质意义上的网桥。本身也受到网桥核心的端口转发特性影响。
简而言之,它们都会消耗你的设备的资源和处理成本。
既然耗费资源和处理成本,能不能不设置网桥呢?答案是否定的,网桥是必须要有的!这关乎Router OS路由器各个端口之间的互联互通。
当一个Router OS设备有多个网络接口(例如以多个太网口、无线接口等)需要在同一个网络中进行通信时,就需要使用网桥将它们连接在一起,实现不同网络接口之间的通信。
同时,我们还可以通过网桥将多个物理或虚拟接口连接到同一个逻辑网络中,从而扩展网络的覆盖范围。
如果更精细的做流量的控制和管理,我们也可以拆分出几个不同的网桥,对流量进行批量的控制,而在这个操作中,利用网桥进行的流控实际上要比利用路由器的CPU有更低的处理成本。