本文档介绍源路由转换桥接(SR/TLB),并提供排除故障的信息。
本文档没有任何特定的要求。
本文档不限于特定的软件和硬件版本。
本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始(默认)配置。如果您使用的是真实网络,请确保您已经了解所有命令的潜在影响。
有关文件规则的更多信息请参见“ Cisco技术提示规则”。
以太网环境与令牌环环境在当今网络中混用的情况很常见。这种组合会带来许多逻辑问题。第一,以太网没有任何接近源路由桥接的内容,令牌环有路由信息字段(RIF)。 此外,令牌环具有功能地址,而Ethernet通常具有广播。
为了能够统一这两个环境,思科创建了SR/TLB。
您可以将网桥组添加到路由器的接口(令牌环和以太网),以透明地桥接令牌环和以太网。这会在两个环境之间创建透明网桥域。如果令牌环端运行源路由桥接,则会出现问题。您如何将透明桥接与源路由相关联,尤其是考虑到终端站是通过网络建立路径的终端站?
下图说明了解决方案:
当pc_1要与pc_3通信时,它会将带有广播(FF-FF-FF-FF-FF-FF)数据包的NetBIOS name_query发送到线路。问题是pc_3站正在侦听目标地址为(C0-00-00-00-00-80)的name_queries,它收到该广播,但不会将其发送到NetBIOS,因为它不是name_query(按pc_3的定义)。
因此,从令牌环到以太网的转换可能非常复杂。大多数详细信息都在路由器内部处理,造成一些混乱的问题是位交换。令牌环和以太网以不同方式将比特读入适配器。路由器不进入帧并更改位顺序,因此以太网上的MAC地址与令牌环上的MAC地址不同。
以太网站无法充当源路由的终端站,因此思科路由器承担该角色。根据上图,路由器从以太网接收数据包后会发生以下事件:
cisco1路由器从以太网接收数据包。这是从pc_1到host_1。
cisco1需要RIF才能到达host_1,因此它会创建一个资源管理器来确定到达host_1的路径。
思科1收到响应后,会将响应(不带RIF)发送到以太网站。
pc_1向主机MAC地址发送交换标识(XID)。
cisco1获取以太网数据包,将RIF连接到主机,并沿途发送数据包。
此过程将继续。
若干条件使此过程成为可能。首先,就主机而言,以太网处于所谓的伪环中。在路由器上使用source-bridge transparent命令进行配置:
source-bridge transparent ring-group pseudo-ring bridge-number tb-group [oui]
参数 | 描述 |
---|---|
环组 | 源网桥环组命令创建的虚拟环组。这是要与透明网桥组关联的源网桥虚拟环。此振铃组编号必须与源网桥环组命令指定的编号。有效范围为1到4095。 |
伪环 | 用于表示到源路由桥接域的透明桥接域的环号。此号码必须是源路由桥接网络中任何其他环不使用的唯一号码。 |
网桥编号 | 从令牌环源路由的视点到透明桥接域的网桥编号。 |
tb-group | 要绑定到源路由桥接域的透明网桥组的编号。此命令的no形式会禁用此功能。 |
ou | (可选)组织唯一标识符(OUI),它可以具有以下值:
|
配置SR/TLB时,必须先在路由器中有一个环组。伪环从host_1的角度看,似乎以太网是令牌环。
以下方式配置cisco1:
Cisco1 |
---|
source-bridge ring-group 10 source-bridge transparent 10 11 1 1 ! interface tokenring 0 source-bridge 1 1 10 source-bridge spanning ! interface Ethernet 0 bridge-group 1 ! bridge 1 protocol ieee |
自Cisco IOS®软件版本11.2起,SR/TLB是快速交换的。早于Cisco IOS软件版本11.2,SR/TLB是进程交换的。要关闭快速交换,请发出以下命令:
no source-bridge transparent ring-group fastswitch
SR/TLB有两个show命令非常重要。
show bridge — 此命令对分析透明端非常有用。它显示路由器是否正在从网络中的特定设备接收数据包。
show rif — 此命令显示路由器是否已为目的MAC地址构建RIF。
本节讨论如何排除MAC地址位交换和SR/TLB环路故障。
SR/TLB问题的最常见原因之一是MAC地址位交换。出现此问题是因为路由器对从以太网到令牌环以及从令牌环到以太网的MAC地址执行位交换。结果是终端站无法识别这些帧。此图显示了一个示例:
在此图中,帧在源MAC(SMAC)和目的MAC(DMAC)中具有完全相同的位模式。 但是,此位模式在令牌环中的读取方式与在以太网中不同。要通过此网络发送定向帧,必须先进行位交换,然后才能发送这些帧。
首先要将原始MAC地址转换为二进制。您可以单独使用三个2字节集,以便更轻松。本示例使用 4000.3745.0001。
4000.3745.0001具有以下二进制值:
0100 0000 0000 0000 0011 0111 0100 0101 0000 0000 0000 0001
反转每个字节。请勿反转整个字符串。这是分为字节的二进制数:
01000000 00000000 00110111 01000101 00000000 00000001 40 00 37 45 00 01
要执行位交换,请在每个字节上将第一个位移至最后一个位,然后重复此步骤,直到最后一个位首先:
00000010 00000000 11101100 10100010 00000000 10000000 02 00 EC A2 00 80
位交换完成后,您将拥有新的MAC地址,即0200.ECA2.0080。
许多系统网络架构(SNA)以太网站的软件会自动执行交换。如果你不确定,最好用两种方法来测试。
注:有时网络会为广泛使用的设备提供“非位交换”MAC地址,因为这些地址是相同的交换地址或非交换地址。这意味着您无需处理远程FEP地址的编码。这在具有许多远程站点的前端处理器(FEP)环境中很常见。例如,4200.0000.4242是非位热插拔MAC地址。
此外,路由器本身(在透明网桥部分)将MAC地址视为以太网格式,代码的源路由部分将其视为令牌环格式。在FDDI等帧读取完全相同的场景中,路由器代码显示MAC地址全部为反转的。
使用SR/TLB或透明桥接(TB)且服务器和客户端处于不同的媒体类型LAN(规范或非规范)时,不支持DHCP/BOOTP。 例如,如果客户端位于令牌环LAN中,而服务器位于以太网LAN中。这是因为客户端在BOOTP请求数据包(chaddr字段)中包含其MAC地址。
例如,当MAC地址为4000.1111.0000的客户端发送BOOTP请求,并且数据包通过SR/TLB或TB网桥时,MAC报头中的MAC地址会进行位交换,但BOOTP请求中嵌入的MAC地址保持不变。因此,BOOTP数据包会到达服务器,服务器会回复BOOTP应答。此BOOTP应答会根据广播标志发送到广播地址或客户端的MAC地址。如果未设置此广播标志,则服务器会向在chaddr字段中指定的MAC地址发送单播数据包。以太网端的服务器向MAC地址4000.1111.0000发送应答。数据包通过网桥,网桥位交换MAC地址。因此,令牌环端的BOOTP应答最终的目的MAC地址为0200.8888.0000。因此,客户端无法识别此帧。
SR/TLB问题的另一个原因是您不能允许路由器使用不同的路径到达同一以太网。
此图包含半环:
由于数据包来自同一伪环并且位于同一环组中,因此来自令牌环环境的数据包将发送到以太网。这会使第二台SR/TLB路由器认为某个MAC地址位于其本地以太网上。因此,以太网上的站点无法再到达该站点。
此外,cisco1将获取同一数据包并向网络发送一个资源管理器,这样,该站点就会像在以太网上一样(在令牌环环境中)。
下图说明了一个常见场景:
在这种情况下,只需一个数据包就能形成巨大的环路。由于数据包不会被以太网端或令牌环端丢弃,因此数据包将以环路模式无休止地传输。
SR/TLB的调试非常有限。一个选项是使用过滤器调试令牌环,以查看数据包是否通过路由器。有关详细信息,请参阅了解本地源路由桥接并排除故障。