03-ANCP配置
本章节下载: 03-ANCP配置 (261.57 KB)
ANCP(Access Node Control Protocol,接入节点控制协议)协议提供了BRAS(Broadband Remote Access Server,宽带远程接入服务器)与AN(Access Node,接入节点,如DSLAM设备)之间控制信息传递的通道。ANCP由GSMPv3(General Switch Management Protocol Version 3,通用交换管理协议版本3)协议承载,并对GSMPv3协议进行了补充,增加了邻接关系的建立与维护机制。
ANCP使用客户端/服务器模型。目前,H3C设备只能作为ANCP服务器。
ANCP的典型应用组网如图1-1所示,支持ANCP协议的DSLAM作为AN,充当ANCP客户端;支持ANCP协议的H3C设备作为BRAS,充当ANCP服务器。
图1-1 ANCP典型组网
ANCP协议主要工作流程如下:
(1) 建立TCP连接
(2) 建立ANCP邻接关系以及完成ANCP协商
(3) ANCP工作和维护
BRAS使用端口6068进行监听,经过一定配置的AN启动后即向BRAS的该端口发起TCP连接。BRAS作为TCP服务器端,AN作为TCP客户端。
建立TCP连接之后,AN与BRAS之间开始建立ANCP邻接关系:
(1) BRAS和AN主动向对端发送SYN报文,报文中携带版本号、发送邻接报文的时间间隔、发送端标识(设备的MAC地址[1])、本端支持的能力集等(能力集为能力类型的集合,关于能力类型的介绍请参见“1.1.3 ”)。如果在发送邻接报文时间间隔内没有收到对端的SYN报文,则重传SYN报文,当达到最大重传次数时,则中断ANCP邻接关系的建立,关闭TCP连接。
(2) BRAS和AN收到对端的SYN报文后,会判断报文中携带的版本号是否支持,协商发送邻接报文的时间间隔(取两端时间间隔中的较大值,后续发送邻接报文均采用此值)、协商能力集(本端支持的能力集和收到的SYN报文中携带的ANCP能力集取交集),并向对端发送SYNACK报文,报文中携带协商后的参数值。如果在协商后的发送邻接报文时间间隔内没有收到对端的SYNACK报文,则重传SYNACK报文,当达到最大重传次数时,则中断ANCP邻接关系的建立,关闭TCP连接。
(3) BRAS和AN收到对端的SYNACK报文后,向对端发送ACK报文,通知ANCP邻接关系已经建立。
[1]:对于BRAS来说,设备的MAC地址不可配置,采用的是设备的桥MAC地址;对于AN来说,设备的MAC地址可以配置,缺省采用AN的桥MAC地址。
ANCP邻接关系建立后,ANCP进入正式工作阶段,主要包括:
· ANCP邻接关系维护。
BRAS和AN各自按协商后的发送邻接报文时间间隔向对端发送ACK报文,维护ANCP邻接关系。当连续3个邻接报文发送周期内未收到对端的ACK报文,则认为ANCP邻接中断,发送RSTACK报文,关闭TCP连接。
· 动态拓扑发现及线路信息更新。
AN将处于上线状态的接入线路及其参数上报给BRAS。当线路状态及线路参数信息发生改变时,AN通过ANCP协议通知BRAS更新相关线路信息。
· 下发线路策略。
用户上线或定制业务时,RADIUS服务器根据线路信息,向BRAS下发对应线路策略,BRAS通过ANCP协议下发给AN,AN对该线路应用该策略。
· 接入线路OAM检测。
BRAS通过ANCP协议向AN下发对指定线路进行OAM检测的消息,AN收到消息后会对相应线路进行环回检测,并将检测结果通过ANCP协议返回给BRAS。
本文中,AN专指DSLAM设备;用户的接入线路专指DSL线路。
H3C设备作为ANCP Sever时支持动态拓扑发现,接入线路配置和接入线路检测。
为了避免接入网的阻塞,BRAS需要能感知到接入网的拓扑结构以及接入线路的参数。其中有些信息是动态的,因此无法从运维管理系统获取。有些信息很少变化,但仍然需要与BRAS保存的信息保持严格同步。而运维管理系统无法以可靠和升级的方式对这些数据进行维护。
动态拓扑发现可帮助解决这些问题。这些参数,包括DSL链路状态、同步的DSL链路实际上下行速率、上下行最大速率等,可由DSLAM动态上报给BRAS。当DSLAM发现接入线路状态变化,需要重新更新线路的参数,DSLAM向BRAS发送Port Up报文来更新线路参数。
接入线路参数相对是固定配置的,但是当用户需要开展增值业务时,则需要在DSLAM上对DSL线路进行相应的处理,且当用户从自助网站上定购业务时,需要对线路参数进行自动更新而不需要人工干预。
用户上线时,DSLAM对DHCP和PPPoE控制报文会进行监听,并在报文中分别插入Option82信息和PPPoE+信息,这些信息中携带接入线路ID和接入线路参数。BRAS根据DHCP控制报文的Option82信息或PPPoE控制报文的PPPoE+信息匹配接入线路ID(ANCP协议定义为Access-Loop-Circuit-ID),可唯一的找到用户所在的接入线路。
当用户的业务发生变化时,RADIUS服务器向BRAS下发接入线路的策略,然后BRAS通知DSLAM修改接入线路的配置参数,从而可以避免在运维管理系统或网管系统上对DSLAM进行手动配置,降低运维成本。
在BRAS设备上通过命令行对某个接入线路发起检测。当相应的DSLAM收到BRAS设备上发起的OAM检测消息时,就检测指定的接入线路的状态,并将检测结果发回给BRAS,这样BRAS就可以完成对单个接入线路的状态监控。
与ANCP相关的协议规范有:
· RFC 3292:General Switch Management Protocol (GSMP) V3
· RFC 6320:Protocol for Access Node Control Mechanism in Broadband Networks
表1-1 ANCP配置任务简介
配置任务 |
说明 |
详细配置 |
开启ANCP功能 |
必选 |
|
配置发送SYN邻接报文的时间间隔 |
必选 |
|
配置ANCP邻接建立过程中报文的最大重传次数 |
必选 |
|
创建ANCP邻居 |
必选 |
|
配置ANCP邻居ID |
必选 |
|
配置建立ANCP邻接的全局源接口 |
全局源接口和邻居视图下配置的源接口二者必须配置其一 |
|
配置ANCP邻居建立ANCP邻接的源接口 |
||
配置线路表项的老化时间 |
必选 |
|
配置ANCP OAM检测功能 |
可选 |
|
配置BRAS下发业务策略 |
可选 |
只有在开启ANCP功能并配置了建立ANCP邻接的源接口后,系统才开始进行TCP监听并处理ANCP客户端建立TCP连接的请求和ANCP业务。
关闭ANCP功能后,所有ANCP邻接会被断开,TCP监听功能关闭。
表1-2 开启ANCP功能
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
开启ANCP功能 |
ancp enable |
缺省情况下,ANCP功能处于关闭状态 |
在TCP连接建立成功之后,ANCP客户端和ANCP服务器都会向对端发送SYN报文试图建立ANCP邻接,SYN报文中携带本端配置的发送邻接报文时间间隔;ANCP邻接建立过程中,两端协商发送邻接报文的时间间隔(取两端配置的时间间隔中的较大值),后续SYNACK、ACK报文均以协商后的时间间隔发送。
表1-3 配置发送SYN邻接报文的时间间隔
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
配置发送SYN邻接报文的时间间隔 |
ancp session interval interval |
缺省情况下,发送SYN邻接报文的时间间隔为25秒 |
在ANCP邻接建立过程中,如果在发送邻接报文的时间间隔内未收到对端回应的报文,则会向对端重新发送上一个报文。如果SYN或者SYNACK报文的重发次数达到该命令所配置的最大重传次数时还未收到对端回应的报文,则终止ANCP邻接建立过程,断开TCP连接。
表1-4 配置ANCP邻接建立过程中报文的最大重传次数
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
配置ANCP邻接建立过程中报文的最大重传次数 |
ancp session retransmit retransmit-value |
缺省情况下,报文的最大重传次数为10次 |
用户可以创建多个ANCP邻居,并为每个ANCP邻居分别配置参数,从而对每个ANCP邻居进行单独管理。
表1-5 创建ANCP邻居
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
创建ANCP邻居并进入该ANCP邻居视图 |
ancp neighbor neighbor-name |
缺省情况下,不存在ANCP邻居 |
ANCP邻居ID,即ANCP客户端的MAC地址,用来唯一标识一个ANCP邻居。TCP连接建立后,BRAS设备根据ANCP客户端发送的邻接报文中携带的发送端标识(设备的MAC地址)来判断ANCP客户端所属的ANCP邻居。如果ANCP客户端的MAC地址与某个ANCP邻居ID匹配,则该ANCP客户端就属于该ANCP邻居。如果ANCP客户端的MAC地址与所有ANCP邻居ID都不匹配时,则关闭TCP连接。
配置ANCP邻居ID时需要注意:
· 一个ANCP邻居只能配置一个ANCP邻居ID。不同ANCP邻居不允许配置相同的ANCP邻居ID。
· 取消已配置的ANCP邻居ID时,会断开已经建立的ANCP邻接关系和TCP连接。
表1-6 配置ANCP邻居ID
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入ANCP邻居视图 |
ancp neighbor neighbor-name |
- |
配置ANCP邻居ID |
peer-id peer-id |
缺省情况下,未配置ANCP邻居ID |
只有在开启ANCP功能并配置了建立ANCP邻接的源接口后,系统才开始进行TCP监听并处理ANCP客户端建立TCP连接的请求和ANCP业务。
只有LoopBack接口可以作为建立ANCP邻接的源接口。指定了源接口后,系统使用该源接口的IP地址(IPv4主地址/第一个IPv6全球单播地址)和6068端口号作为本端的源地址和源端口号进行TCP监听,与对端建立TCP连接;系统发送ANCP报文时,ANCP报文的源地址为源接口的IP地址。
配置ANCP邻居建立ANCP邻接的源接口时需要注意:
· 删除源接口配置后,TCP监听功能关闭;修改源接口后,使用新源接口的IP地址和6068端口号作为本端的源地址和源端口号进行TCP监听。对源接口的删除或者修改不会影响已经建立好的TCP连接。
· 全局源接口和邻居视图下配置的源接口二者必须配置其一。全局源接口对所有邻居生效,在邻居视图下配置的源接口只对当前邻居生效。如果同时配置了全局源接口和邻居视图下的源接口,则会优先使用邻居视图下配置的源接口。
表1-7 全局配置建立ANCP邻接的源接口
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
配置建立ANCP邻接的全局源接口 |
ancp source-interface loopback interface-number |
缺省情况下,未配置全局源接口 |
表1-8 在ANCP邻居视图下建立ANCP邻接的源接口
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入ANCP邻居视图 |
ancp neighbor neighbor-name |
- |
配置建立ANCP邻接的源接口 |
source-interface loopback interface-number |
缺省情况下,未配置建立ANCP邻接的源接口 |
设备通过线路表项记录用户DSL线路信息。当用户所在的接入线路上线或变化时,设备会创建或更新相应线路表项。当用户所在的接入线路下线时,设备将在老化时间过后删除对应的线路表项。
需要注意的是,如果ANCP客户端在收到设备下发的业务策略后需要将线路重启(即将线路down掉,让其重新接入),则需要在设备上配置较长的线路表项老化时间。
表1-9 配置线路表项的老化时间
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入ANCP邻居视图 |
ancp neighbor neighbor-name |
- |
配置线路表项的老化时间 |
aging-time value |
缺省情况下,线路表项的老化时间为150秒 |
BRAS设备可以通过命令行触发对某个接入线路的ANCP OAM检测,完成对单个接入线路的状态监控。
表1-10 配置ANCP OAM检测功能
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
触发对指定接入线路的ANCP OAM检测 |
ancp oam [ count test-counter | timeout time-value ] * access-loop circuit-id |
本命令只用来触发一次对指定接入线路进行OAM检测的操作 |
开启ANCP功能的BRAS设备能够自动从RADIUS服务器上获取接入线路的参数,通知DSLAM修改接入线路的配置参数;也支持通过命令行进行手动配置,向DSLAM下发指定线路的业务策略。业务策略的具体参数(如QoS参数、带宽等)需要在对端的DSLAM设备上定义。
表1-11 配置BRAS下发业务策略
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
向对端DSLAM下发指定线路的业务策略 |
ancp access-loop-configure circuit-id circuit-id service-profile profile-name [ timeout time-value ] |
本命令只用来触发一次向DSLAM下发指定线路的业务策略操作 |
在完成上述配置后,在任意视图下执行display命令可以显示ANCP的配置和运行情况,通过查看显示信息验证配置的效果。
在用户视图下执行reset命令可以清除ANCP的邻居状态信息、接入线路表项和统计信息。
表1-12 ANCP显示和维护
操作 |
命令 |
显示ANCP邻居信息,包括配置信息与状态信息 |
display ancp neighbor [ neighbor-name ] |
显示ANCP接入线路表项信息 |
display ancp access-loop [ circuit-id circuit-id | neighbor neighbor-name ] |
显示ANCP邻居的ANCP统计信息 |
display ancp statistic [ neighbor neighbor-name ] |
清除ANCP邻居的状态信息,并关闭TCP连接 |
reset ancp neighbor [ neighbor-name ] |
清除ANCP接入线路表项 |
reset ancp access-loop [ circuit-id circuit-id | neighbor neighbor-name ] |
清除ANCP邻居的ANCP统计信息 |
reset ancp statistic [ neighbor neighbor-name ] |
用户通过DSLAM设备接入BRAS。DSLAM设备的MAC地址为0001-0002-0003,BRAS设备的LoopBack1接口的IP地址为10.10.10.10。
用户可以通过IPoE接入方式或PPPoE拨号方式上线,通过RADIUS服务器进行认证和计费。
通过配置ANCP功能达到如下目的:
· BRAS设备可以动态发现下挂接入线路的拓扑和参数。
· BRAS设备能对DSLAM接入线路进行配置。
· BRAS设备能对下挂接入线路作OAM检测。
图1-2 配置ANCP组网图
· 本文只介绍BRAS上的ANCP配置,BRAS上的其它配置和组网图中其它设备的配置请参考相应的配置手册。
· 用户需要对DSLAM进行相应的配置,保证DSLAM与BRAS上的LoopBack1接口能够互通,并启动DSLAM的ANCP客户端功能,使其与BRAS建立ANCP邻接。
(1) 按照图1-2配置BRAS接入,包括配置认证方案、计费方案、RADIUS服务器、地址池、上行接口等,保证IPoE用户、PPPoE用户能够认证上线。具体配置过程请参考相应的配置手册。
(2) 配置ANCP功能
# 开启ANCP功能。
<BRAS> system-view
[BRAS] ancp enable
# 创建ANCP邻居。
[BRAS] ancp neighbor test1
# 配置ANCP邻居ID。
[BRAS-ancp-neighbor-test1] peer-id 1-2-3
[BRAS-ancp-neighbor-test1] quit
# 配置ANCP邻居建立ANCP邻接的源接口。
[BRAS] interface loopback 1
[BRAS-LoopBack1] ip address 10.10.10.10 24
[BRAS-LoopBack1] quit
[BRAS] ancp neighbor test1
[BRAS-ancp-neighbor-test1] source-interface loopback 1
# 配置线路表项的老化时间为100秒。
[BRAS-ancp-neighbor-test1] aging-time 100
[BRAS-ancp-neighbor-test1] quit
# 在BRAS上查看ANCP邻居配置信息及动态拓扑发现的邻居状态信息。可以看到邻居test1已与DSLAM建立ANCP邻接,使用状态为used,DSLAM支持的能力集有三个,邻居test1下接入线路总数为3条。
[BRAS] display ancp neighbor test1
Neighbor name : test1
Peer ID : 0001-0002-0003
Source interface : LoopBack1
Session message interval : 25 s
Session message retransmit : 10
Aging time : 100 s
State : used
Peer IP : 10.1.1.2
Peer port : 510
Neighbor capacities : discovery, line-cfg, oam
Negotiated interval : 25.0 s
Access loop number : 3
# 在BRAS上查看ANCP接入线路表项信息。
[BRAS] display ancp access-loop
Total entries: 3
Neighbor name Peer ID Circuit ID State
test1 0001-0002-0003 Access1 UP
test1 0001-0002-0003 Access2 UP
test1 0001-0002-0003 Access3 UP
[BRAS] display ancp access-loop circuit-id Access1
Neighbor name : test1
Circuit ID : Access1
Remote ID : remote3
Peer ID : 0001-0002-0003
DSL type : ADSL1
Actual data rate upstream : 512 Kbps
Actual data rate downstream : 1536 Kbps
Min data rate upstream : 32 Kbps
Min data rate downstream : 32 Kbps
Attainable data rate upstream : 96 Kbps
Attainable data rate downstream : 96 Kbps
Max data rate upstream : 64 Kbps
Max data rate downstream : 24544 Kbps
Min low power data rate upstream : 0 Kbps
Min low power data rate downstream : 0 Kbps
Max delay upstream : 6 s
Max delay downstream : 16 s
Actual delay upstream : 4 s
Actual delay downstream : 16 s
Data link : ETHERNET
Encapsulation 1 : Untagged Ethernet
Encapsulation 2 : NA
# 向接入线路Access1下发业务策略profile1,下发成功。
[BRAS] ancp access-loop-configure circuit-id Access1 service-profile profile1 timeout 10
Issuing service profile name profile1 for Access1. Please wait…
Issued the service profile name successfully.
# 配置对接入线路Access1的OAM检测,检测结果成功。
[BRAS] ancp oam count 5 timeout 5 access-loop Access1
OAM testing Access1. Please wait…
OAM test succeeded.
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!