具体实施方式
本发明所述采用基于策略路由实现链路聚合功能的方法具体如下:
在宽带接入服务器中将连接骨干网络的一个上联链路端口作为一个网关来看待,系统配置了多个上联端口情况下就存在多个网关出口。
首先要通过管理维护台来配置宽带接入服务器的网关链路与用户接入业务的映射关系,指定用户业务的主备服务出口。在宽带接入服务器中用户是按照所分配子网来划分用户群的,一个用户群对应于宽带接入服务器的一个三层IP端口,一个网关对应于一个上联三层IP端口。这里映射关系是指将一个用户群所有的会话传输都指定同一个网关链路出口来收发用户数据流,是在三层IP端口之间配置映射关系。业务主备倒换是指在主网关出口链路出现故障时,可以将该主出口上所属用户群数据流转换到对应配置备用出口链路上继续数据流传输。业务负荷分担是指对于宽带接入服务器来说,通过将不同用户群指定到不同网关链路出口来实现用户业务流量的负荷分担,对于一个用户会话可以允许从主备网关链路出口上同时接收数据流。
基于策略路由实现链路聚合功能的方式主要涉及两个软件功能实体:网关链路管理维护一张用户群网关出口链路映射表,这张表记录用户群与出口网关映射关系,用户会话转发记录里记录该用户所属用户群,网关链路管理根据配置主备网关出口链路信息和链路状态来决定用户会话上行数据流出口链路,同时驱动策略路由协议例如BGP4(边界网关协议4)向外通告策略路由信息控制下行用户会话数据流传输。网关链路检测主要是通过动态路由协议自带链路检测机制例如OSPF(开放最短路径优先)的HELLO方式实现对网关链路连通性检测。在检测到链路状态发生变化时通知网关链路管理,网关链路管理根据状态变迁转移矩阵来改变用户群网关出口链路映射表相关记录的网关出口信息,同时驱动策略路由协议向外通告路由信息控制下行用户会话数据流传输。从而实现业务主备倒换功能。有关网关状态变迁转移矩阵的描述请参考图4。
宽带接入服务器的业务子系统主要包括以下几个部分:业务管理控制,PPP业务处理,IP业务处理,AAA(认证,计费,授权)认证计费处理,网关链路管理,网关链路检测,路由协议处理等几个部分,PPP(点对点协议)/IP业务接入和转发处理流程如下:
1.当有一个新用户会话请求接入时,PPP/IP业务处理完成后通知业务管理控制。
2.业务管理控制请求网关管理和检测查询该用户会话所属用户群,业务管理控制根据查询到信息组织成用户会话转发记录。用户转发表里记录用户群标识来记录用户群表信息。
3.网关链路管理根据用户群与网关出口链路配置信息,以及从网关链路状态检测得到的链路信息,维护用户群网关出口链路映射表。同时应用BGP4策略路由协议告诉对端路由器,哪些目的子网(用户群)数据从哪个网关出口接收。
4.在转发用户会话数据流时,上行方向根据用户转发记录表里用户群索引查找用户群网关出口链路映射表得到出口网关信息。下行方向由上联路由器根据收到策略路由信息将数据发送给相应网关出口链路。
业务倒换处理流程如下:
1.网关链路检测定时使用动态路由协议链路检测机制发现链路状态变化时,通知网关链路管理。
2.网关链路管理根据网关状态变化信息和当前网关状态,执行状态变迁矩阵得到对应用户群操作
3.网关链路管理对用户群网关出口链路映射表的相关用户群记录进行操作,修改网关出口链路信息。
4.网关链路管理驱动策略路由协议向外通告路由信息控制下行用户会话数据流传输。
图1是典型的宽带接入网层次化结构网络拓扑图。宽带接入网由骨干层,汇聚层和接入层构成。宽带用户的认证,授权和计费由宽带接入服务器来完成,宽带接入服务器通过两条干线链路连接到骨干网上路由器。
图2是宽带接入服务器用户群和网关出口链路映射关系组织图,uni_if1——uni_if5表示用户一侧三层IP端口,每个IP端口对应一个用户群,nni_if1——nni_if4表示骨干网络一侧IP端口,一个IP端口对应一个网关出口链路,实线连线表示它们之间主用映射关系,虚线连线表示它们之间备用映射关系。
图3是支持基于策略路由技术实现链路聚合功能的宽带接入服务器的业务实施一个实例。图中用户侧接口1和用户侧接口2分别表示两个不同子网的用户群,网络侧接口1和网络侧接口2分别连接到两个不同出口路由器上。宽带接入服务器上配置了四个IP端口,UNI-1,UNI-2两个IP端口用来连接接入网用户一侧,NNI-1,NNI-2两个IP端口用来连接骨干网一侧,与骨干网络的一个路由器相连接。UNI-1,UNI-2分别对应两个不同IP子网的用户群,NNI-1,NNI-2分别对应于系统两个网关出口链路。通过管理维护台配置用户群与网关出口链路映射关系如下:
UNI-1--------》NNI-1(主用) UNI-1----------》NNI-2(备用)
UNI-2--------》NNI-1(备用) UNI-2---------》NNI-2(主用)
一个用户群只能配置一个主用和备用网关出口,多个用户群可以配置同一个主用或备用网关出口。在配置完成后打开网关链路检测开关。网关链路管理从网关链路检测处查找配置网关链路状态信息,根据配置用户群与网关出口链路映射关系建立用户群网关出口链路映射关系表,每个用户群记录里记录出口网关链路。假设NNI-1,NNI-2状态都为UP,那么用户群网关出口链路映射关系表信息如下:用户群1(UNI-1)-------》NNI-1
用户群2(UNI-2)-------》NNI-2
同时应用BGP4通知路由器1信息:目的NETWORK:UNI-1出口:NNI-1,路由器2信息:目的NETWORK:UNI-2出口:NNI-2。
下面说明以USER1和USER2两个PPP用户为例说明会话处理流程:
1.USER1向宽带接入服务器发起PPP呼叫
2.PPP协议处理完成PPP协商后通知业务管理控制
3.业务管理控制向网关链路管理查询用户群信息,得到返回值用户群1,添加在用户会话转发记录里
4.同样USER2向宽带接入服务器发起PPP呼叫,处理过程同上,只是用户转发记录里用户群是用户群2
5.在USER1传输数据时,查找用户转发表得到用户群1,再用用户群1索引查找用户群网关出口链路映射关系表得到网关出口链路NNI-1。将用户数据从NNI-1上发送出去,下行方向USER1数据由路由器1从NNI-1上发送给宽带接入服务器。
6.在USER2传输数据时,查找用户转发表得到用户群2,再用用户群2索引查找用户群网关出口链路映射关系表得到网关出口链路NNI-2。将用户数据从NNI-2上发送出去,下行方向USER2数据由路由器2从NNI-2上发送给宽带接入服务器。
7.假设NNI-1与路由器1之间链路断开,网关检测使用OSPF的HELLO定时检测机制发现NNI-1状态为DOWN,通知网关链路管理
8.网关链路管理根据输入值当前NNI-1,NNI-2状态(UP,UP)和变化后状态(DOWN,UP)查找状态变迁矩阵得到用户群1操作为激活备用链路NNI-2,用户群2操作是不动作。根据这些信息修改用户群网关出口链路映射关系表如下:用户群1(UNI-1)-------》NNI-2
用户群2(UNI-2)-------》NNI-2
同时使用BGP4通知路由器2信息:目的NETWORK:UNI-1出口:NNI-2,路由器1信息:删除目的NETWORK:UNI-1出口:NNI-1
9.后续USER1的上行数据就从NNI-2端口发送出去,下行用户数据由路由器2从NNI-2上接收。USER2数据流向不变。
采用基于策略路由实现链路聚合功能的方法提高宽带接入服务器和上联路由器之间信息流量传输高效和可靠性,对宽带接入服务器的上连物理端口实现有效的管理,达到均衡流量和主备用的功能。通过采用这种方法可以实现链路聚合功能,大大简化LACP配置和管理实施工作,便于设备维护和管理,对于宽带网络接入服务器端口链路资源管理提供了一种简便有效的方案。
图4是网关状态变迁转移矩阵,竖项表示主备两个出口网关状态变化前的状态,横项表示当前检测到的主备两个出口网关状态的情况,表格中说明网关管理模块对下层数据转发单元应该执行的操作。
图5是支持基于策略路由技术实现链路聚合功能的宽带接入服务器软件处理流程。主要包括业务接入,用户数据传输和业务主备倒换三个处理阶段,涉及PPP,业务管理,网关链路管理,网关链路检测和路由协议BGP4五个软件模块之间互操作。