03-HDLC配置
本章节下载: 03-HDLC配置 (299.22 KB)
· ICG2000D/3000S/3000F/3000F-DP/5000G/5000T路由器使用集中式命令行,ICG 6000路由器使用分布式命令行。
· 本特性仅在路由器上安装了SAE、E1、E1-F、T1、T1-F、POS、CPOS、CE3和CT3接口模块时支持。
HDLC(High-level Data Link Control,高级数据链路控制)是一种面向比特的链路层协议,其最大特点是对任何一种比特流(传输的时候是以比特为单位进行传输),均可以实现透明的传输。
· HDLC协议只支持点到点链路,不支持点到多点。
· HDLC不支持IP地址协商,不支持认证。协议内部通过keepalive报文来检测链路状态。
· HDLC协议只能封装在同步链路上,如果是同/异步串口的话,只有当同/异步串口工作在同步模式下才可以应用HDLC协议。支持HDLC协议的接口有:工作在同步模式下的Serial接口和POS接口。
表1-1 配置接口封装HDLC协议
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入同步模式的Serial接口或POS接口视图 |
interface interface-type interface-number |
- |
在接口封装HDLC协议 |
link-protocol hdlc |
缺省情况下,接口封装PPP协议 |
HDLC协议使用轮询机制来确认链路状态是否正常。
当接口上封装的链路层协议为HDLC时,链路层会周期性地向对端发送keepalive报文(可以通过timer-hold命令修改keepalive报文的发送周期),keepalive报文中携带了本端发送序号和前一次收到的对端发送序号。当接口发送keepalive报文后,如果在keepalive周期内收到对端发来的keepalive应答报文(该报文携带有本端前一次发送序号),接口下次发送的keepalive报文中的发送序号将加一,否则,每经过一个keepalive周期,接口将重发一次keepalive报文,该报文的发送序号不变。如果接口重发第retries个(可以通过timer-hold retry命令修改该个数)keepalive报文后,在keepalive周期内仍然没有收到对端发来的keepalive应答报文,链路层会认为对端故障,上报链路层down。
配置轮询功能时需要注意:
· 如果将keepalive报文的发送周期配置为0秒,则不发送keepalive报文。
· 在配置keepalive报文的发送周期时,建议链路两端的设置保持一致。
· 如果网络的延迟比较大,或拥塞程度较高,可以适当加大keepalive报文的发送周期,以避免链路被认为发生故障而被关闭。
表1-2 配置轮询功能
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入接口视图 |
interface interface-type interface-number |
- |
配置接口发送keepalive报文的周期 |
timer-hold seconds |
缺省情况下,接口发送keepalive报文的周期为10秒 |
配置允许接口重传的keepalive报文个数 |
timer-hold retry retries |
缺省情况下,允许接口重传的keepalive报文个数为5 |
在完成上述配置后,在任意视图下执行display interface命令可以查看接口的HDLC配置结果。
在用户视图下执行reset counters interface命令可以清除封装HDLC协议接口的统计信息,使接口重新开始统计流量。
表1-3 HDLC显示和维护
操作 |
命令 |
查看接口的HDLC配置结果 |
display interface serial interface-number display interface pos interface-number |
清除封装HDLC协议接口的统计信息 |
reset counters interface [ serial [ interface-number ] ] reset counters interface [ pos [ interface-number ] ] |
路由器Router A和Router B通过POS接口相连,要求运行HDLC协议。
图1-1 配置HDLC组网图
(1) 配置Router A
<RouterA> system-view
[RouterA] interface pos 2/2/0
[RouterA-Pos2/2/0] clock master
[RouterA-Pos2/2/0] link-protocol hdlc
[RouterA-Pos2/2/0] ip address 12.1.1.1 24
[RouterA-Pos2/2/0] quit
(2) 配置Router B
<RouterB> system-view
[RouterB] interface pos 2/2/0
[RouterB-Pos2/2/0] link-protocol hdlc
[RouterB-Pos2/2/0] ip address 12.1.1.2 24
配置完成后Router A和Router B可以互相ping通。以Router A的显示为例。
[RouterA] ping 12.1.1.2
Ping 12.1.1.2 (12.1.1.2): 56 data bytes, press CTRL_C to break
56 bytes from 12.1.1.2: icmp_seq=0 ttl=254 time=2.137 ms
56 bytes from 12.1.1.2: icmp_seq=1 ttl=254 time=2.051 ms
56 bytes from 12.1.1.2: icmp_seq=2 ttl=254 time=1.996 ms
56 bytes from 12.1.1.2: icmp_seq=3 ttl=254 time=1.963 ms
56 bytes from 12.1.1.2: icmp_seq=4 ttl=254 time=1.991 ms
--- Ping statistics for 12.1.1.2 ---
5 packet(s) transmitted, 5 packet(s) received, 0.0% packet loss
round-trip min/avg/max/std-dev = 1.963/2.028/2.137/0.062 ms
· ICG2000D/3000S/3000F/3000F-DP/5000G/5000T路由器使用集中式命令行,ICG 6000路由器使用分布式命令行。
· 本特性仅在路由器上安装了SAE、E1、E1-F、T1、T1-F、POS、CPOS、CE3和CT3接口模块时支持。
HDLC链路捆绑是将多个链路层协议为HDLC的接口(简称HDLC接口)捆绑到一起,形成一条逻辑上的数据链路。
HDLC链路捆绑的作用如下:
· 流量负载分担:出/入流量可以在多个成员接口之间分担。
· 增加带宽:链路捆绑接口的带宽是各可用成员接口带宽的总和。
· 提高连接可靠性:当某个成员接口出现故障时,流量会自动切换到其他可用的成员接口上,从而提高整个捆绑链路的连接可靠性。
HDLC捆绑接口是一个逻辑接口。一个HDLC捆绑接口对应一个HDLC捆绑。
HDLC捆绑是一组HDLC接口的集合。HDLC捆绑是随着HDLC捆绑接口的创建而自动生成的,其编号与HDLC捆绑接口编号相同。
加入HDLC捆绑后的接口称为成员接口。目前,只有POS接口和Serial接口可以加入HDLC捆绑,并且加入HDLC捆绑的成员接口的链路层协议类型必须是HDLC。
加入HDLC捆绑后,成员接口的网络层将被置于down状态,成员接口上的三层业务相关的配置都不生效,成员接口通过HDLC捆绑接口的三层配置进行业务处理。
可以将不同类型的接口加入同一个HDLC捆绑。
成员接口有下列4种状态:
· 初始状态:成员接口的链路层协议处于down状态。
· 协商状态:成员接口的链路层协议处于up状态,但是成员接口不满足选中条件。
· 就绪状态:成员接口的链路层协议处于up状态,且成员接口满足选中条件,但由于最多选中成员接口数目/最少选中成员接口数目/最小激活带宽的限制,使得该成员接口没有被选中,那么该成员接口将处于就绪状态。
· 选中状态:成员接口的链路层协议处于up状态,且成员接口满足选中条件,处于选中状态。只有处于此状态的成员接口才能转发流量。
如果HDLC捆绑中没有处于选中状态的成员接口,则HDLC捆绑接口将处于down状态,不能转发流量;只有HDLC捆绑中有处于选中状态的成员接口,HDLC捆绑接口才会处于up状态,才能进行流量转发。HDLC捆绑的带宽是所有处于选中状态的成员接口的带宽之和。
成员接口状态的确定过程如下:
(1) 当成员接口的链路层协议处于down状态时,成员接口将处于初始状态,当成员接口的链路层协议变为up状态后,成员接口先是处于协商状态,之后经过下面的选择过程可能变为选中状态或就绪状态。
(2) 假设处于协商状态的成员接口有M个、设备限制最多选中成员接口数目为N[1],当M<=N时,这M个成员接口均处于选中状态;当M>N时,依次按照成员接口的速率/波特率、捆绑优先级和接口索引号来为这些成员接口进行排序(速率/波特率大的排在前面、捆绑优先级高的排在前面,接口索引号小的排在前面),排在前N个的成员接口将处于选中状态,排在后面的(M-N)个成员接口将处于就绪状态。
(3) 假设步骤(2)中选出的处于选中状态的成员接口有P个、设备限制的最少选中成员接口数目为Q,当P<Q或者这P个成员接口的总带宽小于配置的最小激活带宽时,这P个成员接口都不会被选中,将处于就绪状态;当P>=Q或者设备没有限制最少选中成员接口数目和最小激活带宽时,这P个成员接口将处于选中状态。
设备限制的最多选中成员接口数目首先采用用户通过bundle max-active links命令配置的值;如果用户未配置或配置值大于设备支持的最多选中成员接口数目,则以设备支持的最多选中成员接口数目为准。
HDLC捆绑是通过选中成员接口来转发流量的。当HDLC捆绑中存在多个选中成员接口时,设备会根据负载分担方式来选择选中成员接口发送流量。负载分担方式分为逐流负载分担和逐包负载分担两种,原理如下:
· 逐流负载分担:通过源IP地址和目的IP地址等将报文分成不同的流,同一条流的报文将在同一个选中成员接口上发送。目前支持IPv4、IPv6报文根据源IP地址和目的IP地址进行分流(源IP地址和目的IP地址都相同的报文,属于同一条流),MPLS报文根据标签进行分流。
· 逐包负载分担:以报文为单位,将流量分担到不同的选中成员接口上进行发送。
配置HDLC捆绑接口时需要注意:
· 配置的最少选中成员接口数目不能大于最多选中成员接口数目。
· 为保证转发正常,建议在同一条HDLC捆绑链路两端的HDLC捆绑接口上配置相同的最少选中成员接口数目、最多选中成员接口数目、最小激活带宽。
· HDLC链路捆绑配置完成后,如果用户修改了最少选中成员接口数目、最多选中成员接口数目、最小激活带宽,那么设备会重新确定各成员接口的状态。
· 建议HDLC捆绑链路两端采用相同的负载分担方式。
表2-1 配置HDLC捆绑接口
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
创建HDLC捆绑接口并进入HDLC捆绑接口视图 |
interface hdlc-bundle bundle-id |
缺省情况下,未配置HDLC捆绑接口 |
配置负载分担方式 |
bundle load-balance { per-flow | per-packet } |
缺省情况下,采用逐包负载分担 |
(可选)配置处理接口流量的主用slot(分布式设备-独立运行模式/集中式设备-IRF模式) |
service slot slot-number |
缺省情况下,未配置处理当前接口流量的主用slot,设备支持情况请参考命令手册相关描述 |
(可选)配置处理接口流量的主用slot(分布式设备-IRF模式) |
service chassis chassis-number slot slot-number |
缺省情况下,未配置处理当前接口流量的主用slot,设备支持情况请参考命令手册相关描述 |
(可选)配置处理接口流量的备用slot(分布式设备-独立运行模式/集中式设备-IRF模式) |
service standby slot slot-number |
缺省情况下,未配置处理接口流量的备用slot,设备支持情况请参考命令手册相关描述 |
(可选)配置处理接口流量的备用slot(分布式设备-IRF模式) |
service standby chassis chassis-number slot slot-number |
缺省情况下,未配置处理接口流量的备用slot,设备支持情况请参考命令手册相关描述 |
(可选)配置最少选中成员接口数目 |
bundle min-active links number |
缺省情况下,不进行限制 |
(可选)配置最多选中成员接口数目 |
bundle max-active links number |
缺省情况下,以设备支持的最多选中成员接口数目为准 |
(可选)配置最小激活带宽 |
bundle min-active bandwidth bandwidth |
缺省情况下,不进行限制 |
(可选)配置接口的期望带宽 |
bandwidth bandwidth-value |
缺省情况下,接口的期望带宽=接口的波特率÷1000(kbit/s) |
(可选)配置HDLC捆绑接口的描述信息 |
description text |
缺省情况下,接口的描述信息为“该接口的接口名 Interface” |
(可选)配置HDLC捆绑接口的MTU值 |
mtu size |
缺省情况下,HDLC捆绑接口的MTU值为1500字节 MTU参数会影响IP报文的分片与重组,可以通过本命令来设置合适的MTU值 |
(可选)恢复HDLC捆绑接口的缺省配置 |
default |
- |
打开HDLC捆绑接口 |
undo shutdown |
缺省情况下,HDLC捆绑接口处于打开状态 当打开HDLC捆绑接口时,会触发重新确定成员接口的状态;当关闭HDLC捆绑接口时,所有选中成员口都会变成协商状态 |
配置接口加入HDLC捆绑时需要注意:
· POS接口、Serial接口支持加入HDLC捆绑,并且支持加入同一个HDLC捆绑中。
· 一个接口只能加入一个HDLC捆绑,如果需要加入其他HDLC捆绑,必须先退出原来的HDLC捆绑。
· 加入HDLC捆绑的接口封装的链路层协议必须为HDLC。接口加入HDLC捆绑之后不允许修改链路层协议。
· HDLC捆绑接口没有创建的情况下,也允许将接口加入HDLC捆绑。
· 可以将不同接口板上的接口加入到同一个HDLC捆绑。
· HDLC链路捆绑配置完成后,如果用户修改了某成员接口的捆绑优先级,那么设备会重新确定各成员接口的状态。
· 如果本地设备使用了HDLC捆绑,与该HDLC捆绑的成员接口直连的对端设备上的接口也必须加入同一个HDLC捆绑。两端设备上的HDLC捆绑编号不要求相同,HDLC捆绑编号只具有本地意义。
· bundle member-priority命令和bundle max-active links命令一般需要配合使用,以保证两台设备相互连接的接口能够同时处于选中状态(只有两端接口同时处于选中状态,报文才能发送成功),避免出现一端接口处于选中状态,而另一端接口没有处于选中状态的情况。
表2-2 配置接口加入HDLC捆绑
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入POS接口或者Serial接口视图 |
interface interface-type interface-number |
- |
配置接口的链路层协议类型为HDLC |
link-protocol hdlc |
缺省情况下,接口的链路层协议为PPP |
配置接口加入HDLC捆绑 |
bundle id bundle-id |
缺省情况下,接口不属于任何HDLC捆绑 |
配置接口的捆绑优先级 |
bundle member-priority priority |
缺省情况下,接口的捆绑优先级为32768 |
在完成上述配置后,在任意视图下执行display命令可以显示配置后HDLC链路捆绑的运行情况,通过查看显示信息验证配置的效果。
在用户视图下执行reset命令可以清除HDLC捆绑接口的统计信息。
表2-3 HDLC链路捆绑显示和维护
操作 |
命令 |
显示HDLC捆绑信息(集中式设备) |
display bundle hdlc-bundle [ bundle-id ] |
显示HDLC捆绑信息(分布式设备-独立运行模式/集中式设备-IRF模式) |
display bundle hdlc-bundle [ bundle-id ] slot slot-number |
显示HDLC捆绑信息(分布式设备-IRF模式) |
display bundle hdlc-bundle [ bundle-id ] chassis chassis-number slot slot-number |
显示HDLC捆绑接口的相关信息 |
display interface [ hdlc-bundle [ bundle-id ] ] [ brief [ description | down ] ] |
清除HDLC捆绑接口的统计信息 |
reset counters interface [ hdlc-bundle [ bundle-id ] ] |
为了增加Router A和Router B之间的链路带宽,并提高连接可靠性,在设备之间建立HDLC捆绑逻辑链路。
图2-1 配置HDLC链路捆绑组网图
(1) 配置Router A
# 创建HDLC捆绑接口1,并配置IP地址。
<RouterA> system-view
[RouterA] interface hdlc-bundle 1
[RouterA-HDLC-bundle1] ip address 1.1.1.1 24
[RouterA-HDLC-bundle1] quit
# 将POS2/2/1、POS2/2/2加入到HDLC捆绑1(POS接口采用主时钟模式)。
[RouterA] interface pos 2/2/1
[RouterA-Pos2/2/1] clock master
[RouterA-Pos2/2/1] link-protocol hdlc
[RouterA-Pos2/2/1] bundle id 1
[RouterA-Pos2/2/1] quit
[RouterA] interface pos 2/2/2
[RouterA-Pos2/2/2] clock master
[RouterA-Pos2/2/2] link-protocol hdlc
[RouterA-Pos2/2/2] bundle id 1
[RouterA-Pos2/2/2] quit
(2) 配置Router B
# 创建HDLC捆绑接口1,并配置IP地址。
<RouterB> system-view
[RouterB] interface hdlc-bundle 1
[RouterB-HDLC-bundle1] ip address 1.1.1.2 24
[RouterB-HDLC-bundle1] quit
# 将POS2/2/1、POS2/2/2加入到HDLC捆绑1。
[RouterB] interface pos 2/2/1
[RouterB-Pos2/2/1] link-protocol hdlc
[RouterB-Pos2/2/1] bundle id 1
[RouterB-Pos2/2/1] quit
[RouterB] interface pos 2/2/2
[RouterB-Pos2/2/2] link-protocol hdlc
[RouterB-Pos2/2/2] bundle id 1
[RouterB-Pos2/2/2] quit
(3) 验证配置结果
Router A和Router B的HDLC捆绑接口能够互相Ping通。
[RouterA] ping –a 1.1.1.1 1.1.1.2
Ping 1.1.1.2 (1.1.1.2) from 1.1.1.1: 56 data bytes, press CTRL_C to break
56 bytes from 1.1.1.2: icmp_seq=0 ttl=255 time=0.000 ms
56 bytes from 1.1.1.2: icmp_seq=1 ttl=255 time=0.000 ms
56 bytes from 1.1.1.2: icmp_seq=2 ttl=255 time=0.000 ms
56 bytes from 1.1.1.2: icmp_seq=3 ttl=255 time=0.000 ms
56 bytes from 1.1.1.2: icmp_seq=4 ttl=255 time=0.000 ms
--- Ping statistics for 1.1.1.2 ---
5 packet(s) transmitted, 5 packet(s) received, 0.0% packet loss
round-trip min/avg/max/std-dev = 0.000/0.000/0.000/0.000 ms
在Router A或Router B上执行display bundle hdlc-bundle命令,可以看到HDLC捆绑接口1的捆绑信息。以Router A的显示为例。
[RouterA] display bundle hdlc-bundle 1
Bundle: HDLC-bundle1
Selected members: 2, Total bandwidth: 311040 kbps
Member State Bandwidth(kbps) Priority
Pos2/2/1 Selected 155520 32768
Pos2/2/2 Selected 155520 32768
上述信息表明,POS2/2/1和POS2/2/2都处于选中状态,可以进行流量的负载分担;HDLC捆绑的带宽为311040 kbps,是两个POS接口的带宽之和;当其中一个POS接口出现故障时,流量可以通过另一个POS接口发送,提高了链路的连接可靠性。
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!