《微电脑世界》2003年第2期发表了《路由器的桥接功能在VLAN划分中的应用》,文章对利用Cisco路由器的透明桥接功能进行VLAN划分以及在局域网中的应用进行了详细阐述。中国建设银行南通分行(以下称我行)在进行国际业务部与机关大楼联网过程中,因为外汇咨询服务系统的需要,也利用了路由器的透明桥接功能,但却用在广域网上,解决了客户机和服务器之间由于需要通过广播来传送数据包的互连问题,见附图
附图 广域网连接示意图
一、桥接奥秘
根据OSI(开放系统互连)七层模型中的定义,路由器属于网络层的设备,主要用来连接分布在一定地域范围内的计算机远程网络,它的每个端口属于不同的IP子网。在默认情况下,地址解析协议(ARP)、广播等数据链路层信息终止于路由器的Interface端口,不同端口之间数据的转发必须依赖第三层的IP地址信息。
在Cisco路由器中,其操作系统IOS从11.2版本开始增加了路由桥接功能(Integrated Routing and Bridging,IRB),通过设置桥接组和桥接虚拟端口(BVI),在不同的局域网端口与广域网端口之间进行桥接,从而实现了地址解析、广播包等信息穿过路由器,通过DDN、X.25和帧中继等广域链路到达远端网络,远端网络和本地网络共享同一个广播域。
透明桥接对于网络上的设备来说应该是透明的,当数据帧通过网桥时,它不对数据帧进行任何修改。当路由器配置了桥接选项后,会处理同一桥接组内所有接口上的数据帧,并实时调查每个主机的位置,它的作用就相当于一个局域网交换机。若在某个接口上接收了一个数据帧,就会在该桥接表内置入一个条目,列出发送数据主机的MAC地址和接收到数据帧的接口。若是同一个物理局域网内的两个主机通信,数据帧就不会被发送到其他的接口,因为在桥接表里,数据帧都来自相同的接口;若是收到一个帧,而其中的MAC地址不在自己的桥接表里,就会将这个帧以广播包的形式扩散到同一桥接组内所有的接口,包括DDN、X.25、帧中继等广域网端口。
采用桥接功能的意义在于,在应用中如果需要通过广播传送数据包时,采用一般的静态路由连接无法传送,桥接可以依靠生成树协议(STP)解决这一问题。而目前企业信息系统中,这样的应用越来越多,如办公自动化和其他各种应用,所以在网络设计时,需要考虑到这一因素。
二、配置须知
对于X.25和帧中继等一点对多点的广域网链路,路由器会根据IP地址到X.121地址的映射关系、IP地址到数据链路连接标识符(DLCI)号的映射关系,产生一张包括MAC地址和X.121地址、或者MAC地址和DLCI号的关系表;若收到一个数据帧,其MAC地址在自己的桥接表里,数据帧就直接转发到相应的端口。
配置了透明桥接的Cisco路由器之后,需要使用生成树协议来协商建立一条到根网桥的无环路径,避免桥接引起的广播风暴。首先,桥接设备之间通过交换桥接协议数据单元(Bridge Protocol Data Unit,BPDU)来选举根网桥,网桥ID最低的桥接设备选为根网桥,网桥ID由一个2字节的优先级域和一个6字节的MAC地址域组成,网桥的优先级可以手工设置,缺省为32768。选举完根网桥后,其他桥接设备再确定到根网桥的最佳无环路径。
为了选择哪些端口转发数据,哪些端口阻止数据通过,桥接设备将检查被通告到其端口上的所有BPDU,依次比较BPDU中的路径开销、网桥ID等参数,路径开销越低,端口优先级越高;若路径开销一样,网桥ID越低,优先级越高;若网桥ID一样,端口ID越低,优先级越高。优先级高的端口转发数据帧,优先级低的端口处于阻断状态,这样,所有桥接设备就形成了一个转发数据帧的最佳无环路径树。
三、自己动手
在Cisco路由器上设置桥接,需要完成以下工作。
1.设置桥接
首先需要配置IRB功能,使得路由器既可路由又可桥接,允许路由器配置BVI端口,再建立一个桥接组,选择一个生成树的算法,在接口配置模式下,将接口划到网桥组,然后配置桥接组所在STP生成树域。
2.设置参数
先配置整个网桥的优先级参数,缺省是32768,再调整桥接端口的优先级。调整桥接端口的路径开销,默认值是1000除以数据传输速率(Mbps)。调整BPDU中的时间间隙。调整桥接表的aging-time时间。
3.配置协议
指定允许路由的的协议类型。配置IRB功能以后,桥接组中的数据缺省情况下都是进行桥接,对于目的地址与桥接组中的主机不在同一网段的数据包,指定允许路由的的协议类型。
4.配置BVI端口
BVI端口是整个桥接组的虚端口,与路由器中其他可路由的端口一样,进出桥接组的可路由数据包由该端口接收发送。
四、实际案例
我行国际业务部到市行机关大楼的距离为3km,它通过一根2Mbps的DDN专线与市行机关进行网络通信。最近,我行国际业务部新上一套外汇咨询服务系统,属于客户机/服务器模式,服务器安装在机关大楼中心机房,为便于查询,客户机安装在国际业务部,客户机和服务器的某些内部进程必须通过广播来传送数据包,不能被路由。我们成功地运用Cisco路由器的透明桥接功能实现了客户机/服务器之间的通信,虽然速度稍微慢了一点,但是通过调整相应程序中的延时参数,从而保证了外汇咨询服务系统的正常运行。(作者地址:江苏省南通市姚港路1号建设银行南通分行信息技术部,226006)