1.帧中继介绍
![1e048b3a724fdfad799089b0ff176aec.png](https://i-blog.csdnimg.cn/blog_migrate/93ab23b9326fcae7d43d3aec64f062fa.jpeg)
帧中继协议是在 X.25 分组交换技术的基础上发展起来的一种快速分组交换技术。概括地讲,帧中继技术是在数据链路层用简化的方法转发和交换数据单元的快速分组交换技术。帧中继技术是在通信线路质量不断提高,用户终端智能化不断提高的基础上发展起来的。
帧中继协议是改进了的 X.25 协议。相对于 X.25 协议,帧中继协议只完成链路层核心的功能,简单而高效。目前在许多国家,帧中继正在替代传统的复杂低速的报文交换服务。
帧中继是基于虚电路的(Virtual Circuits, VCs)。由于帧中继较快的转发速度,而且帧中继数据单元至少可以 1600 字节,所以帧中继协议十分适合在广域网中连接局域网。用户的路由器封装帧中继协议,作为 DTE 设备连接到帧中继网中的 DCE 设备,即帧中继交换机。
目前比较常用的是帧中继的 PVC 业务。网络服务商为用户提供固定的虚电路连接,用户可以申请许多虚电路,通过帧中继网络交换到不同的远端用户。
DLCI(数据链路连接标识)用于标识每一个 PVC。通过帧中继帧中的地址字段的 DLCI,可以区分出该帧属于哪一条虚电路。
LMI(本地管理接口)协议用于建立和维护路由器和交换机之间的连接。LMI 协议还用于维护虚电路,包括虚电路的建立、删除和状态改变。
2.帧中继协议栈
![bb4ad1d44ffe061eba9bd141456f535d.png](https://i-blog.csdnimg.cn/blog_migrate/58193a1a16ed1a1d06c7fe5fdabc4318.jpeg)
帧中继功能的核心部分对应 OSI 参考模型的下两层。
采用现代的物理层设施,例如光纤和数字传输线路,帧中继可以为终端站(典型的例子如局域网)提供高速的广域网连接。
因为工作在数据链路层,帧中继封装 OSI 栈中的上层信息。
帧中继与传统的广域网报文交换(例如 X.25)有一些共同之处。例如,在用户和网络设备之间的帧中继接口在统计复用的电路上使用 FIFO(先入先出)队列,一些逻辑连接(我们称之为虚电路)共用相同的物理连接。
与 X.25 不同的是,帧中继提供相对快速的服务:
帧中继转发速度范围较大,典型的帧中继连接转发速率为 56Kbps 或64Kbps,一些设备可以提供 45Mbps 的转发速率;
帧中继是尽力传送的不可靠连接的服务,由于数字和光纤设施的进步,允许忽略错误检测、确认重传和流量控制等机制。
3.帧中继术语
![beb8bbb0038de7b5d7c65694123e04fc.png](https://i-blog.csdnimg.cn/blog_migrate/0fa9aed5dfff657912ff704db1de3ab3.jpeg)
帧中继网络中的每一个连接都使用 DLCI 来标识。
每一个 PVC 可以配置自己的参数,典型的参数如下:
CIR:承诺信息速率,单位 Kbps。这是交换机安全传播数据的最大保证带宽。超过这一速率限制的报文流量的 DE 位将被置 1。一旦遇到拥塞,DE 位被置位的报文将会被抛弃。许多网络服务提供零 CIR 的选择,该服务的费用比较少。如果选择零 CIR,应该有服务水平的协议来保证相当高百分比(95-99%)的数据流量会通过。
Bc:承诺的突发量,帧中继网中控制报文流量的一个指标。在某一CIR 下帧中继网络承诺可以接收和转发的最大数据量(以 bit 为单位)。
Be:超过的突发量,帧中继网中控制报文流量的一个指标。当报文流量超过 Bc 后帧中继网络试图接收和转发的数据量。通常 Be 这部分流量传送出去的可能性比 Bc 这部分流量要低,因为 Be 这部分流量的DE 位会被网络置位。
当转发队列中的报文长度超过一个阀值,可以认为发生了拥塞。当拥塞发生,在该队列中的报文的 FECN 位将被置位。如果拥塞持续下去,相反方向的报文的 BECN 位将被置位。
应该注意不同的服务商不总是提供这些可选参数。
4.帧中继 DLCI 的分配
![9f7154be6878e02bad3f5d3b6c42803f.png](https://i-blog.csdnimg.cn/blog_migrate/9d31992852593e1e43a2bcf60fd9b484.jpeg)
上图显示了帧中继网络中 DLCI 工作的情况。两个路由器被帧中继网络分别交换到远端。在图中帧中继网络中大交换机代表帧中继网络。
帧中继网络作为一种公共设施,一般是由电话公司开发的,也可以通过自己私有的交换机组建帧中继网。对于任何一种方式,帧中继网络服务者为用户的路由器使用的 PVC 分配了 DLCI 号。
DLCIs 通常只具有本地意义,即任何一个本地应用的 DLCI 号可以被其它地点使用,但本地的 DLCI 号不可以重复。
一些 DLCI 代表特殊的功能,如 DLCI 0 和 1023 为 LMI 协议专用。
路由器管理者通过配置 MAP 把这些可用的 DLCI 号映射到远端的网络层地址。例如,可以映射到对端路由器一个接口的 IP 地址。在图中,路由器管理者配置了一个 MAP,建立了 IP 地址为 172.16.11.3 和 DLCI 值为 48 的 PVC 的映射。
5.Quidway支持的LMI格式
![96605e3e3d1e6e4ecf3704b5bf96f33d.png](https://i-blog.csdnimg.cn/blog_migrate/3d8ba119feb82f0694de3a8fbec5932e.jpeg)
Quidway 路由器提供了三种帧中继 LMI 协议的支持:
ANSI —— ANSI(美国国家标准研究局)授权的 T1S1 委员会在 T1.617 附录 D 中描述了该帧中继信令标准。
Q933a —— ITU-T(国际电信联盟电信标准分部,前身为CCITT)在 Q.933 附录 A 中描述了该帧中继信令标准。该组织在 20 世纪 80 年代中期把帧中继作为 ISDN 的一部分来开始研究,在路由器中把这种 LMI 成为 Q933a。
Cisco 兼容—— 该标准是由 Cisco、DEC、NC 和 StrataCom 四家电信公司联合提出的,又名“gang of four”。在 20 世纪 90 年代初,这些公司联合起来致力于帧中继的研究工作,以加速产品的推广。
路由器管理者必须从这三种协议中选择一种合适的 LMI 协议类型连接到帧中继网络中,两边的 LMI 类型应该配置的一致。
Cisco 路由器也支持以上三种 LMI 类型,Quidway 路由器与之完全兼容。
6.帧中继配置
1、协议封装及LMI类型选择
![32738223b0affa1715823eb86e033ece.png](https://i-blog.csdnimg.cn/blog_migrate/30d88f2ded146e78341c69490d905437.jpeg)
使用命令 encapsulation frame-relay 来指定链路层的封装类型为帧中继协议。通常是在连接到帧中继网络的路由器的同步串口上使用该命令来封装帧中继协议。
Quidway 支持两种链路封装格式:
缺省是 IETF 格式的封装。IETF 封装在 RFC1294/1490 中定义,该封装格式被很多厂家的路由器所支持。
Cisco 兼容格式的封装。该封装格式由“gang of four”开发,一般 Cisco 的路由器支持该封装格式。Quidway 封装该格式可以与 Cisco 路由器互通。
封装格式可以在接口上指定,如本图所示。也可以在虚电路上指定,如下图所示。
使用命令 frame-relay lmi-type 来选择一种 LMI 类型。
路由器必须配置一种合适的信令,以与帧中继交换机相匹配。Quidway 支持所有标准的 LMI 信令格式:
ANSI —— ANSI T1.617 附录 D;
ITU-T(或 Q933a)—— Q.933 附录 A;
Cisco 兼容——“gang of four”定义的 LMI。
2、帧中继地址映射
![06da9084e9e1ebe62d888ee38adfd2a2.png](https://i-blog.csdnimg.cn/blog_migrate/aec69357a82be915db0ddf510952b483.jpeg)
使用命令 frame-relay map 来配置一个静态 MAP,MAP 把目的网络协议地址映射到本地 DLCI。
frame-relay map
参数 描述
protocol 支持的协议:IP/IPX
Protocol-address 协议地址
DLCI 虚电路的DLCI号
broadcast 该MAP可转发广播报文(可选)
ietf 指定IETF封装格式(可选)
Cisco-compatible 指定 Cisco 兼容封装格式(可选)
如果没有通过 Inverse ARP 协议动态地建立本地虚电路到对端协议地址的映射,就需要使用该命令来显式的配置静态 MAP。
7.水平分割与帧中继
![d680e1c924146f4192b1b5577989184c.png](https://i-blog.csdnimg.cn/blog_migrate/53f6c141b5c9db90ae43d63f8399ebe2.jpeg)
在 NBMA 环境当中,路由器如果要转发路由更新信息给传来的方向,就会产生问题。这种情况是由于连接到广域网中的路由器的串口上水平分割产生的作用。
采用水平分割,如果路由器从一个串口上收到路由信息,那么它不能从同一个串口将该路由信息传播回去。对于帧中继,这种情况适用于除了直接基于 IP 的所有路由协议,如 RIP、IGRP、Enhanced IGRP。
如果您从一个串口(例如路由器 A 的串口 0)映射一组 DLCI,只有从路由器 A 来或到路由器 A 去的更新信息可以穿过串口 0。如果路由器B 试图发送更新信息通过路由器 A 到路由器 C 或 D,那么路由器 A 的水平分割过程将起作用。因为更新信息来自串口 0,由于水平分割,路由器 A 将不允许更新信息从串口 0 发送出去。
8.帧中继全网状连接
![3eb6709bb106a36453792f797d51bc2b.png](https://i-blog.csdnimg.cn/blog_migrate/2227d701439bc4f79b5995cf8feb361b.jpeg)
水平分割机制不允许路由器把从一个接口进来的更新信息再从该接口发送出去。我们可以建立一个全网状连接的帧中继连接,这需要为从每一个路由器到不同的目的路由器之间都建立一个帧中继数据连接,即在每一对路由器之间配置一个 DLCI。
但是,在帧中继广域网中这样连接路由器有几个关键的缺点:
路由器管理者必须从服务提供商那里申请许多帧中继的 PVC。服务提供商需要安装每一个分配的 PVC,该企业也因此将为每一个 PVC 付费,增大了企业的开支。
每一个路由器上的配置必须包含映射到每一个远端的 DLCI。为了到达每一个目的路由器,所有的路由器都必须使用全网状连接,这会需要大量的 MAP 配置。这种配置的建立和支持可能会相当困难。
9.非广播多点访问(NBMA)
![76d52922f3485116c101cc3ba877e8fa.png](https://i-blog.csdnimg.cn/blog_migrate/bee25674f7208c76014a4ee1211e3dc3.jpeg)
帧中继在广域网中一种模型称为 NBMA。NBMA 模型使所有 IP 地址在同一子网的路由器可以通过虚电路连接起来。因为帧中继不支持广播,所以必须把广播报文拷贝到各个虚电路,然后从各个虚电路转发出去。
对于允许关闭水平分割的路由协议,可以把全网状连接改为部分网状连接。对于一些不允许关闭水平分割的路由协议,每一对路由器之间必须通过虚电路直接连接(全网状连接)。
10.帧中继 MAP 举例
![8cd22be561bd1e748f024c13e168b1b2.png](https://i-blog.csdnimg.cn/blog_migrate/9bcd3c71a14d2b6c4c421e218460e25a.jpeg)
如下例:
encapsulation frame-relay —— 封装帧中继协议,选择封装类型为 IETF(缺省)
frame-relay lmi-type ansi —— 选择 LMI 类型为 ANSI
frame-relay map ip 172.16.11.3 48 broadcast
参数:
ip 上层协议
172.16.11.3 被映射的对端地址
48 到达对端的 DLCI 号
broadcast 允许广播,如路由更新报文可以由此转发
去往 IP 地址为 172.16.11.3 的报文流量将使用 DLCI 48 发送到帧中继网中。广播的 IP 报文也将从串口 0 发送出去。
Quidway A 使用命令 frame-relay map 与每一个远端路由器之间配置了一个静态 MAP。在该例中,我们在三台路由器之间配置了全网状连接。
因为路由协议要把更新信息广播到每一个对端,所以有必要限制在 NBMA 组中的路由器的数量。
11.子接口
![22a1d53cb2538b579d196eacafc646c3.png](https://i-blog.csdnimg.cn/blog_migrate/741466991ba02b63d340819b212362de.jpeg)
NBMA 广域网环境需要象局域网一样的多点访问操作。然而水平分割机制不允许多点访问的更新信息从一个接口进入,再从该接口出去。尽管路由器需要在水平分割的广域网中传播更新信息,但是通过提供全网状连接的方案是不切合实际的。
另外一个选择是在一个物理串口上建立一些虚拟接口,这些虚拟接口的逻辑结构称为子接口。
您可以在串口线路上定义这些逻辑子接口。每一个子接口使用一个或多个 DLCI 连接到对端的路由器。当您在子接口上配置了 DLCI 后,还需要建立目的端协议地址和该 DLCI 的映射。
这样,您虽然在路由器 A 上仅拥有一个物理串口 S0,但是在物理串口S0 上您现在定义了 S0.1 子接口上的 DLCI 到路由器 B,S0.2 子接口上的 DLCI 到路由器 C,和 S0.3 子接口上的 DLCI 到路由器 D。
12.帧中继部分网状连接
![c72d52b2443c53b4b1eec7b03c3984a3.png](https://i-blog.csdnimg.cn/blog_migrate/3b500557cdacd87afcd4cfe451390066.jpeg)
当您在物理接口上定义了逻辑子接口,帧中继的连接就可以设计成部分网状连接。
为了实现部分网状连接,您可以在一个子接口上配置一个 DLCI 映射到目的端协议地址,为每一个目的路由器配置一个子接口和一个DLCI。
通过配置子接口,路由器可以实现相互连接,并能够转发更新信息。这样在路由器的一个物理接口上就可以避免水平分割带来的影响。
使用子接口,该路由器可以和每一个路由器实现连接,并且可以转发更新信息。在路由器 A 的物理接口 S0 上水平分割将不再起作用。
这样您就可以实现与每一台路由器的连接,而不必在每两台路由器之间配置一条帧中继的 PVC 了。所有路由器的配置都变得十分简单,不再需要为每一对路由器之间都配置一个 DLCI了。
13.子接口配置
![e876fe761c2e898d9ce097e6152d2a29.png](https://i-blog.csdnimg.cn/blog_migrate/154841df66bdbb4f9edbc800c2d7f7f4.jpeg)
在您使用和配置帧中继子接口之前,您必须在某个物理接口上已经封装了帧中继协议。帧中继子接口的命令和描述见下,第一个命令定义了子接口。
命令1:
interface type number.subinterface-number {point-to-point | multipoint}
参数说明
type 帧中继支持的接口类型,通常是一个同步串口。
number.subinterface-number
Number 指明了物理接口号;
Subinterface-number 是子接口号。
point-to-point | multipoint
子接口类型。
命令2:
frame-relay interface-dlci dlci [broadcast]
参数 说明
dlci 定义的虚电路号
broadcast 可选,表示可以在该虚电路上转发广播信息
除了以上命令,您还需要在子接口上配置网络地址。
14.带子接口的帧中继
![8e81b6c48d6ce170212f2fb555d9c7c8.png](https://i-blog.csdnimg.cn/blog_migrate/a05de03c65f3188be68c04a11819c1c2.jpeg)
如图所示,当您配置了子接口和帧中继 DLCI,该网络结构将对不同子接口上的虚电路连接使用不同的子网网段。
在路由器 A 上,子接口 S0.1 对于 IP 子网段 172.16.112.0(假设 8 位掩码)使用 DLCI 110。对于子接口 S0.2,DLCI 48 连接到 172.16.113.1。
这种设计与前面 NBMA 环境下的点对点的两两连接不同。在那种配置中,所有的路由器都在同一个子网段中,使用全网状连接的 PVC。
但是当您使用帧中继的子接口时,只有相连接的两个路由器的子接口在同一子网段。这个帧中继配置中包含有许多子网。
子接口上的 DLCI 承载一个或几个目的协议地址。
在路由器 A 上,DLCI 110 连接到目的 IPX 地址网段为 4a1d 的网络。DLCI 48 连接到目的 IPX 地址网段为 4c1d 的网络。
下一小节显示了实现该网络结构的具体配置命令。
在该配置下,全网状连接已经不再是必要的了。在右侧的两台路由器之间不再需要直接的帧中继连接设施。这种结构和配置与全网状连接相比节省了大量开支。
15.子接口配置举例
![126a12fd977e0f1f10f4472b69dc04aa.png](https://i-blog.csdnimg.cn/blog_migrate/447add75bfe2d4512e226f3438c38fba.jpeg)
配置帧中继子接口,先从前面介绍的命令开始。这个例子假定帧中继LMI 类型为缺省 Q933a。在这个例子中:
命令 interface s 0.n point-to-point 在物理接口 S0 上建立了一个子接口。
参数 说明
n 子接口号,从 1 到 4294967293。
point-to-point 建立的子接口的类型
命令 frame-relay interface-dlci nn broadcast 在该子接口上配置一个 DLCI。
参数 说明
nn 由帧中继网络服务商分配的本地唯一的 DLCI
broadcast 指明广播报文可以使用该 DLCI 到目的地址
命令 ipx network nnnn 配置 IPX 网络号。
16.用于网络发现的 Inverse ARP
![e0562f31914eca1b6ff1c33bbcd7987c.png](https://i-blog.csdnimg.cn/blog_migrate/7037a557c37918bdf4aa9d2d46336036.jpeg)
无论是 NBMA 环境还是子接口 DLCI 下,通过使用 Inverse ARP 协议可以简化配置。通过 Inverse ARP 协议,在 NBMA 或子接口环境中路由器只需要知道自己的网络协议地址。
路由器通过 LMI 信令从帧中继交换机得到虚电路信息,然后通过在每个虚电路上发送 Inverse ARP 消息得到对端路由器的网络协议地址。
17.DLCI 使用 Inverse ARP
![5b873b62011204ad3a7f076ab07407b6.png](https://i-blog.csdnimg.cn/blog_migrate/2f68a7eb44ad415fb00fea5a62b8bc69.jpeg)
您一旦为帧中继指定了 DLCI,Inverse ARP 协议将自动启动。
通过 Inverse ARP 协议,路由器将自动解析对端的网络协议地址。路由器首先发出 Inverse ARP 请求,把自己的网络地址和虚电路号传给对端。对端回应 Inverse ARP 响应,携带对端的网络地址和虚电路号。
因为帧中继 Inverse ARP 协议缺省是自动启动的,如果您需要在某个DLCI 上禁止 Inverse ARP 协议,需要执行命令 no frame-relay inverse-arp。
使用 Inverse ARP 协议,就可以不用手工的配置静态的地址映射,Inverse ARP 协议可以动态地生成地址映射,简化了路由器的配置。
18.显示帧中继接口
![e7965cf1fa4def5ab7a6e056c3b43f26.png](https://i-blog.csdnimg.cn/blog_migrate/f55a0cb0e82b9aea7cb1c721b396c8d3.jpeg)
使用命令 show interface serial n 显示接口信息和帧中继的一些配置。上图是该命令一个显示结果的例子。
其他的 show 和 debug 命令用来调试路由器帧中继协议的运行情况,具体可以参见《用户手册》。
19.监视帧中继
![7ff6d076f424c62a64e6529e650a4daa.png](https://i-blog.csdnimg.cn/blog_migrate/0794de03025f652089f0a9d88e6f40e6.jpeg)
如果在路由器的某接口上封装了帧中继协议,路由器需要和帧中继交换机交换 LMI 报文。可以使用命令 show frame-relay lmi 来显示路由器和交换机之间的 LMI 交换报文的信息。
上图显示了执行该命令后,屏幕打印出来的 LMI 消息的调试信息。
20.帧中继小结
![87e7cc88db1a1c6a2b3590c6addccda7.png](https://i-blog.csdnimg.cn/blog_migrate/1587eddef732befbcf29a25ab04c31dd.jpeg)