基于GSM业务的接纳控制系统设计与实现
摘要 目前gsm bss系统ip abis带宽资源分配算法比较简单粗放,没有考虑到接纳控制和拥塞控制问题,本文针对该问题对目前的ip abis带宽资源分配机制作进一步改进,给出了接纳控制的应用分析、工作原理及总体设计方案,实现了基于gsm业务的加纳控制系统,最后对接纳控制系统的性能及结果进行了分析。 关键字 gsm;bsc;ip;带宽;接纳控制
中图分类号tp393 文献标识码a 文章编号1674-6708(2010)26-0199-03 0 引言
目前业界的ip abis带宽资源分配算法比较简单粗放,当有业务需要进行资源申请时,数据库子系统只是简单的根据当前业务类型预定义的带宽占用值从基站总带宽中进行扣除。目前的实现存在业务理论分配带宽预定义值不准确、ip承载下传输头损耗的差别预计、接纳控制和拥塞控制、多运营商abis网络共享支持等问题。接纳控制模块存在就是限制业务的数目,保障接入业务的服务质量,早期避免拥塞. 1 接纳控制应用分析
目前的abis带宽分配机制存在的缺陷就是当前的传输足够容纳新的业务却由于下述原因不能接入新的业务.主要体现在两个方面:1)业务类型对应的带宽资源申请配额不准确,预定义值偏大;2)由于没有对实际的ps业务传输流量进行统计,造成在ps业务信道
实际流量空闲的情况下没有可用的带宽资源接纳新的业务。针对第一个问题,可以将传输包头从业务的理论分配预定义值中扣除,业务的理论带宽预定义值只包含净荷带宽占用部分。第二种情况可以考虑以小区为单位进行流量统计,并据此调整资源池的实测带宽,接纳控制模块根据资源池的实测带宽以及累计理论分配带宽进行业务的接纳控制。
2 接纳控制的工作原理及总体设计方案 2.1 接纳控制系统工作原理
对于站点的带宽资源管理初步考虑采用带宽资源池方案,即将与站点连接的物理传输资源划分为1个或者多个独立的带宽资源池,每一个站点都至少挂接一个带宽资源池,但最多也只能挂接两个带宽资源池。
如上图1所示,整个带宽资源池的配置带宽可分为几个区域: 实测带宽区,该站点下所有小区内的当前业务占用带宽; 带宽安全工作区,该区域内可安全接纳新业务; 带宽稳定工作区,既不接纳新业务也不进行拥塞控制; 拥塞缓冲区,用于拥塞控制和反压;
超预定分配区,超额接纳的新业务不允许超过该区域,否则立即拒绝。
为了实现基于资源池的接纳控制和拥塞控制,还需要引入几个概念:
资源池可用带宽b0:资源池的当前可用总带宽,默认情况下等于
资源池的配置带宽;
资源池超预定分配门限:通常表现为一个百分比a或一个固定的带宽值a,对应的超额带宽分配上限为a1=b0×(1+a)或a1=b0+a; 资源池带宽稳定区上限:通常表现为一个百分比b或一个固定的带宽值b,对应的资源池带宽稳定上限为c1=b0*(1-b)或c1=b0-b; 资源池带宽稳定区下限:通常表现为一个百分比c或一个固定的带宽值c,对应的资源池带宽稳定下限为c2=b0*(1-c)或c2=b0-c; 拥塞回调检测点:当资源池下所有业务的当前实测带宽低于这个检测点时,业务子系统开始逐步回调ps信道的最大允许编码速率; 资源池实测带宽:该资源池下所有业务的当前实测带宽,记为b1; 资源池累计理论分配带宽:该资源池下所有业务的累计理论分配带宽的总和,记为b2;
资源池当前业务理论分配带宽:该资源池下需要为正在激活的业务分配的理论带宽,记为bi;
如上图1所示,存在如下逻辑:c>b 或者 c > b
当有新业务激活时,需要进行接纳控制机制,其处理逻辑如下: 1)当b2 + bi a1时,当前业务接纳请求失败,转6); 3)当b1 > c2时,当前业务接纳请求失败,转6); 4)当 b1 + bi > c1时,当前业务接纳请求失败,转6); 5)当前业务接纳请求成功,同时需要刷新资源池的累计理论分配带宽b2的值: b2 <==b2 + bi
6)如果业务接纳请求失败,业务子系统判断是否有需要释放的小区业务,若有则让当前业务排队,等待小区业务释放腾出的带宽空间,然后接入呼叫;否则,当前业务接纳请求失败。 7)流程结束。
2.2 接纳控制系统总体方案 2.2.1 系统的软件框架结构
本系统设计相关的软件构架如下图2所示。由于bsc的软件模块较多,图2画出了支持接纳控制功能时需要增加或修改的模块。 数据库子系统(dbs)提供cac新增数据表描述并提供访问接口,操作维护子系统(oms)提供接纳控制相关的实测带宽数据收集,微码子系统(mcs)提供e1故障以及qos下降时的带宽影响通知, ps业务模块(ranps) 负责ps业务无线资源管理和流程处理, 接纳控制进程(cacproc)负责检测e1故障、链路带宽变化并通知数据库子系统,ip sla统计进程(slaproc)负责ip sla性能统计并将业务的实测带宽数据写入数据库。 2.2.2 相关技术 1)接纳控制实测带宽统计
oms子系统的接纳控制进程接收slaproc进程定时(每秒一个周期)发来的业务实测带宽数据,更新到对应的数据库表中。
n0010接口板的微码子系统定时上报实测带宽和净荷带宽数据,用例开始;
n0020接口板的host进程判断接纳控制开关是否开启,如果没有,
转n0070;否则,转发给对应cmp板上的slaproc进程;
n0030cmp板上的slaproc进程将所有小区的实测带宽和净荷带宽数据进行汇总,然后向接纳控制进程cacproc转发(ev_ipabis_traffic_rpt)实测带宽数据; n0040接纳控制进程cacproc调用数据库接口
(om_set_ipabis_traffic)更新小区和资源池的实测带宽和净荷带宽数据;
n0050数据库子系统判断实测带宽数据是否达到拥塞控制门限,如果达到,启动拥塞控制过程;
n0060数据库子系统判断实测带宽数据是否达到反压回调门限,如果达到,启动反压回调过程; n0070用例结束。
2)资源池可用带宽动态调整
在ip over e1环境下出现e1故障、拥塞或者在ip over ethernet环境下出现qos下降,接纳控制进程调整资源池的可用带宽。 正常过程:n1 ip over e1环境下出现e1故障或者拥塞 n0010在ip over e1环境下,平台的承载子系统检测到e1故障或者拥塞,用例开始;
n0020平台的承载子系统通过回调函数通知微码子系统ml-ppp的链路带宽改变;
n0030微码子系统在回调函数中将ml-ppp链路的当前可用带宽情况通知(ev_mlppp_bandwidth_change)omp上的slaproc进程;
n0040omp上的slaproc进程调用数据库接口
(om_get_mlppp_module)获取ml-ppp链路归属的cmp模块号,然后向cmp上的接纳控制进程cacproc转发
ev_mlppp_bandwidth_change消息。接纳控制进程cacproc根据新的ml-ppp链路的可用带宽情况调用数据库接口
(om_set_ipabispool_bandwidth)更新ml-ppp链路所属的资源池可用带宽以及资源池的overbooking、带宽稳定区上、下限、反压回调门限等参数;
n0050控制进程cacproc调用数据库接口
(om_get_ipabispool_bw_config)判断ml-ppp链路的当前可用带宽是否小于资源池配置带宽,如果小于配置带宽,上报ml-ppp链路拥塞通知(inform_mlppp_link_congestion),在多运营商abis网络共享开关打开的情况下重新计算资源池的理论分配带宽(参见功能协作pd-ibsc-cac-001的正常过程n4)。否则,上报ml-ppp链路拥塞恢复通知(inform_mlppp_link_recovery),在多运营商abis网络共享开关打开的情况下重新计算资源池的理论分配带宽;
n0060数据库子系统判断实测带宽数据是否达到拥塞控制门限,如果达到,启动拥塞控制过程(参见pd-ibsc-cac-005功能协作); n0070数据库子系统判断实测带宽数据是否达到反压回调门限,如果达到,启动反压回调过程(参见pd-ibsc-cac-007功能协作); n0080用例结束。
3)基于传输资源池的接纳控制
接纳控制是基于传输资源池的,如果需要实现按照vlan或者其它方式进行独立的接纳控制,可以将其对应的传输带宽划为独立的资源池即可。根据传输介质的不同,有可能上下行传输不对称,此时,资源池可能会有上下行两套不同的配置参数。但是,处理逻辑是一样的, 这里按照上下行对称链路情况进行描述。
正常过程:n1 多运营商abis网络共享功能开关关闭(业务数据库子系统)
n0010bsc有新业务激活,需要向数据库子系统申请ip abis带宽,用例开始。
n0020判断当前业务类型,如果是cs业务,转n0040;
n0030当前业务属于ps业务,系统根据已激活ps信道的情况判断是否需要申请新的信道资源。如果不需要,当前业务接纳成功,转n0170;
n0040根据当前的传输介质类型以及业务类型计算本次业务所需要的理论分配带宽;
n0050判断资源池当前所有已激活业务的理论分配带宽总和加上本次业务所需理论分配带宽是否超过资源池可用带宽,如果没有超过,允许接纳当前业务,转n0100;
n0060判断接纳控制功能开关是否打开,如果没有打开,转n0120; n0070判断当前业务的理论分配带宽总和加上本次业务所需理论分配带宽是否超过资源池超额预定带宽,如果已超过,转n0120;
n0080判断当前资源池下的实测带宽是否超过资源池带宽稳定区下限,如果已超过,转n0120;
n0090判断当前资源池下的实测带宽与本次业务理论分配带宽之和是否超过资源池带宽稳定区上限,如果已超过,转n0120; n0100更新资源池理论分配带宽;
n0110更新业务所属的运营商理论带宽分配参数,转n0170; n0120判断当前业务类型,如果是ps业务,拒绝接纳当前业务,转n0170;
n0130 判断当前资源池类型,如果是纯cs业务模式,拒绝接纳当前业务,转n0170;
n0140拆除部分ps业务以接纳新的cs业务,如果没有ps业务可以拆除,拒绝接纳当前业务;
n0150重新调整资源池的理论分配带宽;
n0160重新调整接纳的cs业务和拆除的ps业务所属的运营商理论带宽分配参数; n0170用例结束。
3 接纳控制系统性能及结果分析
接纳控制系统的实现,保证有限的传输带宽的有效利用,在gsm网络环境下,无接纳控制存在着带宽利用不足的问题,在数据流量较大的情况下,造成带宽不足而引起的数据包丢弃等问题,采用接纳控制系统之后,资源池可用带宽明显增大,保证了数据传输的安全性以及带宽的充分利用,节省了传输,提高了gsm系统的稳定性。上
述方案的设计,还可用于独立传输资源池配置、资源池可用带宽动态调整、资源池可用带宽统计调整、传输资源池的拥塞控制等功能的实现. 参考文献
[1][美]w richard stevens.unix网络编程[m].北京:清华大 学出版,2006,47-119.
[2]方宏超,彭向前,余文勇,等.基于网络的产品在线检测 系统[j].计算机应用研究,2006,11:160-163.
[3]赵永屹,宿红毅,胡韶辉.基于ajax与j2ee的新型web应用 的设计与实现[j].计算机工程与设计,2007,1:189-192. [4]谢宗晓,郭立生.信息安全管理体系应用手册—iso/iec 27001标准解读及应用模板[m].中国标准出版社,2008,10. [5][美]特南鲍姆.计算机网络[m]. 潘爱民,译.北京:清华 大学出版,2004,8.
因篇幅问题不能全部显示,请点此查看更多更全内容