付费下载自CNKI论文期刊网。发表于《企业技术开发》2012年Z2期。 已分享至论坛城通网盘,下载地址:http://www.400gb.com/file/9744808 【作者】 赵俊; 【作者简介】(1984 ---),男,山东烟台人,硕士研究生,研究方向:数据网络优化分析 【机构】 佛山移动网络维护中心; 【摘要】 在GPRS核心网络上发现有部分垃圾小区数据,BSC侧小区数据已删除,但在SGSN上却保留了这些小区数据,导致SGSN没有清除RA。相同的RA出现在不同的SGSN上,引发了GPRS业务跨SGSN路由更新失败。经过深入分析,发现SGSN的这种处理机制是被3GPP规范所确认的,根据BSC与SGSN之间的消息处理机制,对比了各种可能的解决方案,从技术上和流程上提出了优化措施,消除了网络隐患。 【关键词】 路由更新; 小区; RA; SGSN; 1 问题描述 在数据业务路测过程中,发现SGSN204与SGSN205之间出现GPRS单向路由更新失败的情况:从SGSN205到SGSN204路由更新成功,但从SGSN204路由更新至SGSN205经过多次测试均失败,在无线网侧检查指标参数等正常,在核心网侧检查SGSN路由更新解析数据正常,DNS数据制作无遗漏。 2 问题分析 2.1 排查过程 首先,在SGSN205上对测试号码进行跟踪,发现号码从SGSN204路由更新至SGSN205后被隐性去附着, SGSN上的日志记录如下: “Event name:ra_update_reject;Eventdetails:Routing Area Update type ra_updating,intra_rau;Cause value:#10(implicitly_detached);IMSI:-;MSISDN:-;NSAPI:-;RAI:460-0-9260-1;CGI:460-0-9260-33411;Radio Access Type:GSM“ 该路由更新本是SGSN之间的路由更新,应被记录为inter_rau,但这里却被识别为intra_rau,表明SGSN205认为RA460-00-9260-1属于自已下带的BSC的RA,因此,在本地查找用户路由更新前的上下文数据但实际上用户的数据在SGSN204,结果SGSN205查找不成功便认为该用户已经被隐含去附着。所以,就出现了路由更新失败的情况在SGSN205上检查发现,路由区460-00-9260-1在SGSN205上的确存在,证明了上述分析。 再对RA460-00-9260-1归属的BSC做进一步检查,查看该BSC的小区状态,发现属于460-00-9260-1这个RA的小区只有3个,但都处于block状态,说明这几个小区已被闭塞,没有业务;在BSC上检查已看不到这个小区,log显示这几个小区在一个星期前已被删除。 为尽快解决SGSN间路由更新失败的问题,在SGSN手工删除这3个小区后,路由区460-00-9260-1随即从SGSN205上消失,修改后进行测试,路由更新成功,问题得到了解决。 2.2 SGSN上的小区处理机制研究 为何无线侧的小区数据删除后,在SGSN上却有残留,SGSN上关于BSC的所有信息都是从BSC上学习过来的,正常情况下BSC上的所有操作信息与SGSN应该是同步的,如果在BSC上按照正常流程删除小区,SGSN也应该会自动删除,而不应该保留这些数据。由于当时这3个小区是应急车数据临时做在了SGSN205上,初步怀疑是BSC侧没有正常删除数据导致了垃圾小区的残留。为了进一步研究SGSN与BSC之间的同步机制,对小区制作和删除的整个过程进行了模拟试验,并进行抓包分析。 测试场景如下:无线侧完成一个小区从创建到删除的整个过程,SGSN侧进行抓包。与故障时场景一样,创建小区使用的是新RAI。 测试结果显示,当小区数据在BSC上删除之后,SGSN并没有自动删除小区和RAI。整个过程无线侧进行了小区创建、闭塞、和删除3种操作,从抓包结果可以看出,SGSN侧收到的同步信令只有BVC-RESET和BVC-BLOCK两种。 什么是BVC?BVC为BSSGP层上的一些虚拟逻辑链路,提供BSS与SGSN之间BSSGP实体的通讯BSSGP(BSS GPRS应用协议)层在BSS与SGSN之间提供了一条无连接的链路通道进行无确认的数据传送,它位于NS(Network Serice)层之上,通常所说的NSEI就是NS层的网络服务实体标识符,用来唯一标识一个BSC。所以,通过NSEI+BVCI可以唯一地识别每个BSSGP虚连接。 BSSGP BVC主要有两种: 1)PTP BVC:完成BSSGP实体间点对点的通讯,用来传送数据业务流量。一个小区对应一个PTP BVC,其由一个不为0或1的值作为标识,即它的BVCI值。 2)SIG BVC:完成BSSGP实体间信令实体的通讯,它的BVCI值为0。用来传送BVC的信令对于BVC的信令。 对于BVC的信令消息SIG BVC,3GPP解释主要有以下两种: 1)PTP BVC的操作:有闭塞和解闭2种,分别对应BVC-BLOCK和BVC-UNBLOCK这2种消息,对应会有BVC-BLOCK-ACK和BVC-UNBLOCK-ACK的确认消息。 2)BVC-RESET过程:SGSN同步BSC的状态信息时,会使用BVC-RESET消息,同步成功则收到BVC-RESET-ACK的消息,一般在下面几种情况下会产生BVC-RESET消息。 从规范中可以看出,BSC向SGSN之间并没有独立的与删除bvc相关的消息。BSC删除小区数据时,只会在闭塞时产生BVC-BLOCK消息,将SGSN上的bvc状态置为blocked状态,无法清除SGSN上的残留小区数据,也不会产生BVC-RESET消息使SGSN进行bvc的初始化学习。也就是说,常规的小区删除方法并不能够使SGSN清除旧的小区甚至RAI数据,必须通过人工干预的方式触发SGSN删除。 3 问题解决措施 根据以上分析结论,总结Gb IP情况下能够触发SGSN清除RAI的方法有以下4种: 1)BSC删除小区后,SGSN同时执行delete bvc操作,手工删除本地bvc数据,当该RA下的所有的小区bvc被删除之后,RAI也会自动删除。本次故障解决即采用了这个方案。 2)BSC去活NSE,即BSC发出SNS-SIZE消息,包含reset-flag=1,则SGSN会清空所有该NSE对应操作信息,包括所有BVC 、RAI。一般情况下BSC重启或跨SGSN的割接调整会触发。 3)SGSN发起signaling-bvc reset操作,使所有PTP bvc reset,从而重建所有BVCI和cell id映射关系,保留所有unblocked的小区,同时,删除状态为blocked的小区,方法简单可行。 4)BSC修改BVCI和CGI映射关系,并发起BVC-RESET,通知SGSN该BVCI用于新的小区标识、新的RAI,当原RA下所有的小区都改变映射关系之后,SGSN自动将旧的RAI删除,增加了小区删除操作的复杂性,产生了更多的垃圾小区数据,有一定风险。 4 结语 随着Gb IP技术的推广,SGSN自动学习的机制越发得到加强和体现,同时,RA分裂的现象越来越多,单RA的BSC已越来越少。在一个BSC有多个RA的情况下,其中一个RA的停用并不意味着该BSC业务的停用,NSEI不删除,SGSN也就不会有清除RAI的信令。因此,无线侧在删除小区停用一个RA的情况下,核心网侧需要同步在SGSN上用指令对整个BSC的小区进行重置,让SGSN重新学习BSC的小区状态这样才可以清除旧的RAI数据,避免不同SGSN上有RAI冲突导致切换失败。 由于SGSN的这种处理机制在3GPP规范里描述,因此无论哪个厂商的设备都可能存在有这种问题,需要加以关注。本文在小区级别上深入研究了BSC与SGSN之间的消息同步机制,从技术上和流程上对各种优化方案进行了讨论,提出了行之有效的解决方案,也为网络优化工作提供了参考与借鉴。 参考文献: [1]徐文君无线传感器网络跨层优化协议研究[D]武汉:武汉理工大学,2007. |