连接链路段的桥

网络桥又称网桥,工作在数据链路层,把多个局域网段连接成桥接网络。以以太网透明桥为例,它处理的是帧及MAC地址,而不是为每个IP目的网络选择路由。IEEE 802.1Q-2022讨论桥、桥接网络和虚拟局域网,既涵盖互连方式,也规定相应操作原则。

“透明”意味着普通终端不必了解中间有多少座桥,就能按正常链路方式收发帧。桥可以是独立设备,也可由操作系统实现。软件名称中带有“桥”并不充分:若它在解释、转换应用协议,就不能仅凭名称把它归入这里的链路层桥接。

参考:[1] [2] [3]

学习源地址,查询目的地址

典型透明桥收到一帧后,先把源MAC地址与进入端口的对应关系记入转发表。假如主机甲的帧从端口一进入,桥便知道返回甲的帧应走端口一;这不是甲主动向桥登记,也不是桥从该帧的目的地址推断甲的位置。

随后,桥查询目的地址。若已知目标位于另一可转发端口,就向该端口发送;若目标仍在入端口一侧,通常不把帧转到其他网段。目的地址未知时,桥会向同一桥接域中其余符合条件的端口泛洪。乙在端口二回应后,桥又能学习乙的位置,后续甲乙之间的单播便可定向转发。

参考:[2] [3]

地址会过期,网络不能任意成环

动态地址条目需要老化,否则终端搬移或离线后,旧映射可能长期误导转发。Linux桥文档把老化时间与源地址流量刷新联系起来,也允许控制端口是否学习、是否接收未知单播泛洪。这说明学习和泛洪属于可配置的具体行为,不能把某个实现的默认值当作所有桥的必然属性。

广播通常也要在所属桥接域内向其他符合条件的端口传播。若冗余链路形成未受控制的环,帧可能被不断复制,造成广播风暴和地址学习反复变化。生成树协议通过桥之间交换控制信息,选出无环的有效转发拓扑,让部分冗余端口暂不转发普通数据;发生故障后再调整路径。它解决的是转发环路,不是简单删掉所有备用物理链路。

参考:[2] [3]

与交换机、集线器和路由器的区别

普通二层以太网交换机可以理解为多端口、常由专用硬件加速的桥。两者的核心学习与过滤逻辑相通,不能仅按端口数量给它们划出绝对技术边界。集线器则在物理层把接收的信号传到其他端口,不根据目的MAC地址作同样的逐帧选择。

路由器在网络层连接不同网络,关注的是IP等网络层协议与路由信息。同一设备可以同时提供桥接与路由功能,因此应看流量实际经过哪一种处理,而不是只看机箱名称。桥能减少不必要的跨网段单播,却不会自动隔离所有广播,也不意味着接入同一桥的设备已获得应用层互通或安全授权。

参考:[2] [4]