网桥也叫桥接器,内部结构如图3-3所示,是连接不同物理层的局域网的一种存储/转发设备。扩展局域网最常见的方法是使用网桥,它能将一个大的LAN分割为多个网段,或将两个以上的LAN互联为一个逻辑LAN,使逻辑LAN上的所有用户都能通信。
网桥工作在数据链路层,当它收到一个MAC帧时,会先缓存到缓冲区中,然后根据MAC帧的目的地址对收到的帧进行转发。
网桥具有过滤帧的功能。当网桥收到一个帧时,并不是向所有的端口转发此帧,而是先检查此帧的目的MAC地址,然后根据站表确定将该帧转发到哪一个端口。
图3-3 网桥结构示意图
网桥具有学习能力,每当一个帧经过它时,它会首先检查站表,如果该帧的MAC地址不在站表中,则将该MAC地址及其对应的端口号记入站表。
网桥能够扩大网络的覆盖范围,主要体现在它的扩散能力上。在收到一个帧时,如果该帧的目的地址不在站表中,则将该数据帧转发给网桥所连接的除该数据帧所在网段之外的所有网段。
网桥的优点:
(1)过滤通信量。
(2)扩大了物理范围。
(3)提高了可靠性。
(4)可互连不同物理层(如传输媒介不同)、不同MAC子层和不同速率(如10Mb/s和100Mb/s以太网)的局域网。
网桥的缺点:
(1)存储转发增加了时延。(www.xing528.com)
(2)在MAC子层并没有流量控制功能。
(3)具有不同MAC子层的网段桥接在一起时时延更大。
(4)网桥只适合于用户数不太多(不超过几百个)和通信量不太大的局域网,否则有时还会因传播过多的广播信息而产生网络拥塞。这就是所谓的广播风暴。
目前使用得最多的网桥是透明网桥(Transparent Bridge)。“透明”是指局域网上的站点并不知道所发送的帧将经过哪几个网桥,因为网桥对各站来说是看不见的。透明网桥是一种即插即用设备,其标准是IEEE 802.1D。
透明网桥在接入网络之后,可以通过自学习,逐步建立数据帧的转发站表,自学习算法如表3-1所示。实际应用中,站表除了MAC地址和端口号外,还有该数据帧进入网桥的时间信息。
如果站点更换了网络适配器,其MAC地址会发生变化;如果有些站点开机,而有些站点不开机,网络拓扑会发生变化;如果网络中发生了这些变化,由于站表中记录有时间信息,则站表可以根据最近接收到的数据帧的信息,对站表进行更新,以保证网桥站表中保留的是网络拓扑的最新状态信息。
网桥收到一帧后先进行自学习,查找站表中与收到帧的源地址有无相匹配的项目。如果没有,就在站表中增加一个项目(源地址、进入的端口和时间)。如果有,则把原有的项目进行更新。然后,查找站表中与收到帧的目的地址有无相匹配的项目。如果没有,则通过所有其他端口(但进入网桥的端口除外)进行转发。如果有,则按站表中给出的端口进行转发。如果站表中给出的端口就是该帧进入网桥的端口,则应丢弃这个帧(此时不需要网桥转发)。
表3-1 透明网桥的自学习算法
图3-4给出了透明网桥通过自学习建立站表的过程的一个例子。系统上电开始时,网桥站表为空,当H1发送一个数据帧给H2时,网桥B1的端口1收到该帧,可以知道从端口1可以到达H1,因此站表中记录H1的站地址和端口1;由于表中没有找到目的地址H2,因此通过扩散功能,将数据帧转发到端口2,网桥B2的端口1收到该帧,同样可以记录从端口1可以到达H1;当H3发送数据帧给H1时,网桥B1的端口2接收到该帧,可以记录从端口2可以到达H3,同时网桥B2中的端口1接收到该帧,可以记录从端口1可以到达H3;如此下去,经过一段时间,网桥就可以学习到当前网络的拓扑结构了,即站表中可以记录下当前网络所有的转发路径了。
图3-4 透明网桥的自学习过程
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。