您所在的位置:读书频道 > 网络与维护 > 网络管理 > 6.4 网桥

6.4 网桥

2007-06-18 09:57 朱加强 北大燕工教育研究院 字号:T | T
一键收藏,随时查看,分享好友!

《计算机网络技术》一书全面系统的介绍了计算机网络技术知识,贯穿计算机网络的方方面面对于入学者可以说是先纵览网络,以后对网络的学习更加具有目标性。本节是网桥的叙述。

AD:

6.4 网桥
网桥这种设备看上去有点像中继器。它具有单个的输入端口和输出端口。如图6-13所示。它与中继器的不同之处就在于它能够解析它收发的数据。网桥属于OSI模型的数据链路层;数据链路层能够进行流控制、纠错处理以及地址分配。网桥能够解析它所接受的帧,并能指导如何把数据传送到目的地。特别是它能够读取目标地址信息(MAC),并决定是否向网络的其他段转发(重发)数据包,而且,如果数据包的目标地址与源地址位于同一段,就可以把它过滤掉。当节点通过网桥传输数据时,网桥就会根据已知的MAC地址和它们在网络中的位置建立过滤数据库(也就是人们熟知的转发表)。网桥利用过滤数据库来决定是转发数据包还是把它过滤掉,如图6-14所示。

图6-13 网桥
图6-14 网桥过滤数据库 

以图6-14的情况为例子来描述网桥的工作原理,以下几点需要注意:
(1)桥连接了多个不同的LAN网段(图6-14中,为简单起见只画了两个LAN,但在结构上一个网桥连接的LAN的数量并没有限制)。
(2)每个站有一个全局唯一的48位单播地址。这是很重要的;网桥的正常运行依赖于链路层全局唯一地址。
(3)网桥与每个相连的LAN的连接处都有一个端口或接口。
(4)网桥内部有一个网桥端口与所有站相对应的地址映射表;即网桥知道到达每个站要经过的端口。
(5)网桥工作于混杂模式(Promiscuous mode)。即它接收其每个端口到来的每一个帧,而不管帧的目的地址(目标站)。典型的端站只接收那些目的地址与自己的地址相同的帧。相反,网桥不管目的地址指向何方,接收所有的帧。
当一个端口接收到帧后,网桥检查该帧的目的地址,然后查找地址表,确定与该地址对应的端口。如果收到帧的端口正是帧目的地址所在的端口,那么网桥就会丢弃这个帧。因为可以认定通过正常的LAN传输机制,目标机已经接收过这个帧。例如,网桥在1号端口收到了一个从08-00-60-00-00-46站发往08-00-60-00-00-09的帧。由于地址表显示08-00-60-00-00-09这个站在端口1上,并且这一帧正是端口1接收的,所以网桥会把这个帧丢弃。如果站08-00-60-00-00-46接着向08-00-60-00-00-17发送一帧,网桥会从端口1接收这一帧(因为网桥处于混杂模式,它接收所有帧),并在地址表中查看站
08-00-60-00-00-17。地址表说明目的地址是在端口2上。为了使目标站正确地收到该帧,网桥必须把这一帧转发到端口2。

在帧的转发过程中注意以下几点:
(1)当通过某个端口向所LAN上其他有关的站发送帧时,网桥没有任何特权。它必须按照端口正常的介质访问控制(MAC)规定来工作。这就意味着网桥在以太网端口上必须延迟发送、检测冲突、后退等,就像其他以太网设备一样。
(2)在输出端口转发帧时,可能出现长时间的延迟。这称为网桥传送延迟。如果一个输出端口阻塞了,帧有可能在网桥内部队列中等待发送。在最坏的情况下,网桥输出队列可能饱和,那么就会导致网桥由于缺少缓冲区而丢弃帧
(3)当网桥转发帧时,转发帧的源地址是该帧最初发送者的地址(在这个例子中是08-00-60 -00-00-46),而不是网桥自己的地址。实际上对于转发工作,网桥没有也不需要自己的地址。无论帧的目的地址是什么,网桥都接收下来并把它们以最初发送者的地址转发出去,它从不把自己的地址加入到转发的帧中。
(4)端站意识不到网桥的存在。发送者不知道也不需要知道某个网桥在为它转发帧。接收站把所有的帧都看作是如同发送者和接收者在同一个LAN网段上的帧一样(同样的地址,同样的数据)。因此,网桥是透明的。端站不需要修改设备驱动程序或增加特殊软件就可以使用网桥。
注:网桥的正常工作依赖于使用全局唯一地址。如果在同一个网段上有两个或更多的站使用了相同的地址,那么地址表就可能会有二义性,网桥也就不能作出正确的转发决定。

如果网桥当前还不知道站发送帧的目的地址(例如,08-00-60-00-00-46向08-00-60-00-00-2c发送帧),网桥在地址表中找不到该目的地址与端口,它便会向除接收该帧之外的所有端口转发此帧。这称为扩散( flooding )或泛洪。扩散使网桥可以与未知的(即在地址表中不存在的)站通信。除了不必要地占用了输出端口的LAN带宽以外,帧扩散并没有坏处。如果站真的存在(但此时尚不知道),扩散保证通信能正常进行。与此类似,如果一个站向组播地址发送帧,网桥会向除接收此帧的端口以外的所有端口转发它。这是因为网桥不能确定哪些站正在监听某个组播地址,所以它不应该把帧的转发限制到一个特定的输出端口上。
通过记录接收帧的源地址,可以动态地建立地址表。当网桥接收到一个帧后,它在表中查找与发送站对应的项(由帧的源地址指明)。如果找到了,就会更新地址表中与该站相对应的端口,以反映在该端口上接收到了最新的帧。这使得网桥可以正确地映射从一个LAN网段转移到另一个网段的站。如果没有找到登记项,网桥会根据新发现的地址和接收它的端口地址新建一个新地址表项。经过一段时间,随着站不断地发送帧,网桥就会知道所有活动站的地址-端口对应关系。
因此,网桥有如下特点:
(1) 在混杂模式下工作。
(2) 有一个将全局唯一地址映射到网桥端口的地址表。
(3) 根据所接收帧的目的地址作出转发决定。
(4) 根据所接收帧的源地址建立和更新地址表。
(5) 当遇到未知的目的地址时,向每个端口(除接收此帧的端口外)转发该帧。

 注:网桥也使用一个时间计数器(aging timer)来清除在一定时间内没有发出帧的项,当遇到到组播目的地址时,向各个端口发送该帧(除接收此帧的端口外)。而且对端站是透明的(透明的意思是目的端并不知道也不需知道网桥的存在)。

网桥并未与网络直接连接,但它可能已经知道了不同的端口都连接了那些工作站。这是因为,网桥在安装后,就促使网络对它所处理的每一个数据包进行解析,以发现其目标地址。一旦获得这些信息,它就会把目标节点的MAC地址和与其相关联的端口录入过滤数据库中。时间一长,它就会发现网络中的所有节点,并为每个节点在数据库中建立记录。因为网桥不能解析高层数据,如网络层数据,所以它们不能分辨不同的协议。它们以同样的速率和精确度转发AppleTalk、TCP/IP、IPX/SPX以及NetBIOS的帧。这样做也有很大的好处。由于并不关心数据所采用的协议,网桥的传输速率比传统的路由器更快,例如路由器关心所采用协议的信息(这将在后面的部分讲述)。但另一方面,由于网桥实际上还是解析了每个数据包,所以它所花费的数据传输时间比中继器和集线器的更长。网桥转发和过滤数据包的方法有几种。虽然讨论这些方法超出了本书的范围,你还是应该知道最常见的几种。大多数以太网采用的方法是所谓的透明网桥方式。大多数令牌环网采用的方法是源路由网桥方式。能够连接以太网和令牌环网的方法被称为中介网桥方式。
20世纪80年代早期,开发网桥是为了转发同类网络间传递的数据包。此后,网桥已经进化到了可以处理不同类型网络间传递的数据包。尽管更高级的路由器和交换机取代了很多网桥,但它们仍然非常适合某些场合。这包括:有些网络需要利用网桥过滤传向各种不同节点的数据以提高网络性能。这些节点因此而能用更少的时间和资源侦听数据,并且指不指定这些资源都无所谓。另外,网桥还可以检测出并丢弃出现问题的数据包,这些数据包可能会造成网络拥塞。也许,最重要的是网桥能够突破原来的最大传输距离的限制从而可以方便地扩充网络。
注1:独立式网桥流行于2 0世纪8 0年代和9 0年代早期,但随着先进的交换技术和路由技术的发展,网桥技术已经远远地落伍了。一般来说,现在很难再见到把网桥作为一种独立设备了。然而,理解网桥的概念对于我们理解交换机的工作原理是非常必要的。下一节里将会学习关于交换机的更多的知识
注2:网桥是可以隔离冲突域,但不能隔离广播域,也就是广播包信息可以直接跨越网桥进行传输到另一个物理网段的。

【责任编辑:雪花 TEL:(010)68476606-8007】

回书目   上一节   下一节

分享到:

  1. Linux服务器配置全程实录
  2. 揭秘--优秀PPT这样制作

热点职位

更多>>

热点专题

更多>>

读书

网管员必读-网络管理(第2版)
本书是对《网管员必读—网络管理》第1版的全面重写,因为书中所涉及的两个主要网络操作系统都已升级。本书介绍的是Windows Serve

最新热帖

更多>>

51CTO旗下网站

领先的IT技术网站 51CTO 中国首个CIO网站 CIOage 中国首家数字医疗网站 HC3i 51CTO学院 区块链第一聚合媒体 zhijiapro