[专稿] BlackBerry 网络断网问题分析
BlackBerry 8900 断网现象,以及更新了官方发布的 5.0 OS 以后 9000,9700 也部分加入“断网大军”,断网问题越来越成为一个让 BBer 相当头疼的问题。当断网发生时,你的 BlackBerry 可以通过自带浏览器正常访问网络,但几乎所有的第三方程序都突然不能获得网络访问,登陆不了 IM 工具,使用不了 OperaMini、Gmail 等日常程序…你能做的就是按下 Alt+上档键+Del 重启你的 BlackBerry,方能恢复正常。
今天的专稿是来自于时光的朋友 lichaobin 应邀投递的断网分析文章,尝试从专业角度去了解更多网络访问的基本原理,抛砖引玉获得更多启发。而目的只有一个,找到断网的问题根源,解决问题。文章版权归作者 lichaobin 所有,欢迎转载分享讨论,转载请注明相关作者和来源信息。您如果希望和作者交流讨论,也可以日志留言向我们索取联络方式。
BlackBerry 网络断网问题分析(by lichaobin at 黑莓时光)
开头先来解释几个术语:
- GPRS(General Packet Radio Service)通用分组无线业务是GSM网络过渡到3G的第一步,被认为是2.5G的技术。
- HSCSD(High Speed Circuit Switching Data)
- EDGE(Enhanced Data Rates For GSM Evolution)是EGPRS和ECSD的无线口技术, EGPRS (Enhanced GPRS)是对GPRS的增强,ECSD (Enhanced CSD)是对HSCSD的增强. EDGE令网络容量及数据传送比GPRS更快。
简单介绍一下各位同学使用手机GPRS上网的过程:
- 用户开机,手机与SGSN交互,发起附着请求给HLR,HLR验证通过后,向手机发送附着请求成功消息;
- 用户在附着成功后,通过UM接口发起GPRS业务请求,此时BTS来判断此时发起的CS域的请求还是PS域的请求;
- BTS将发送过来的PS域的请求处理之后,经过ABIS接口发送给BSC,此时BSC得知该请求为数据包时候,将相应的请求通过Pb接口发送给PCU来进行处理;
- PCU通过Gb接口,将数据发送给SGSN来进行处理;
- SGSN此时发起一个非常重要的请求:就是PDP上下文激活的请求,相关的信令带了APN参数,SGSN通过DNS解析APN,获取GGSN的IP地址,并通过Gn接口发送到GGSN,GGSN此时开始处理SGSN发起的PDP激活的请求,此时GGSN根据用户发送的APN,分配用户一个IP地址,然后此时GGSN向AAA服务器发起鉴权的请求,该请求是通过Gi接口发送。此时AAA服务器接收发送过来的请求,然后将手机号码和用户的IP地址保存下来。然后反馈鉴权的结果;
- 如果SGSN收到激活成功的消息之后,此时SGSN会判断用户的签约信息,如果HLR上对此用户设置了GPRS-CSI的DP12的数据,那么此时SGSN会通过Ge接口来向SCP发送呼叫请求,触发GPRS-PPS业务,GPRS-PPS业务开始进行用户鉴权,费用计算等等操作,然后下发AC给SGSN;
- SGSN收到AC后,向MS返回激活PDP上下文接受消息(PDP类型,PDP地址,TI,商定的QoS,无线优先权,PDP配置选项),此时就已建立起MS与GGSN之间的路由;
- MS收到GGSN发送的连接成功消息后,向WAPGW发送GET URL请求进行WAP浏览,WAPGW把GET请求发送给相应的PORTAL&SP站点,PORTAL&SP把请求应答消息给WAPGW,WAPGW把请求应答消息发给终端MS,MS开始进行使用分组数据业务;
- SGSN等到AC中的时间或者流量用尽时向SCP上报ACR,SCP收到ACR后进行扣费、写话单操作,然后看用户是否挂机,如果用户仍然激活,就继续下发AC,如果用户已经断网,就下发Release Call给SGSN。
我看了一下时光上如下8900和9700断网问题搜集贴:
如果断网(故障是所有的第三方软件均不能用,Msn,Gamil,Google app,第三方邮件程序都不可以用,系统提示信号强度不够,请检查网络设置之类的。黑莓自带浏览器可以用,wifi也可以用。其实这时候信号已经变得非常好,已经是满格的状态了。拔电池重启后故障排除,所有第三方软件都可以用。)是按如此定义来的话,因为黑莓自带的浏览器ok,说明整个网络接入环境是通畅的,仅第三方软件有问题,应该和第三方软件的服务器,APN,黑莓机器servicebook,自身的OS和rom存在关系可能性较大。现在中国移动的APN是CMNET和CMWAP。CMWAP使用HTTP代理协议和WAP网关协议可以访问到Internet。 CMNET直接访问Internet。
对于通过CMWAP和CMNET进行业务时一个行或者一个不行的问题,本人没有在国内使用过,不甚了解。但是从网络侧来说应该没有很大的区别应该只是在移动核心网(SGSN,GGSN)后去了不同的服务器而已。当然WAP代理服务器也是需要考虑的因素之一,WAP网关和第三方软件服务器的配合问题也可能造成第三方软件不可用。下面以飞信为例介绍一下流程(其他第三方软件过程类似):
对于各位同学关心的黑莓断网的问题,需要实测解析信令和抓包才能了解网络侧的状态,而后进一步关注于黑莓自身的问题,采取逐段分析排除的方法才有可能彻底解决问题。
如果各位同学使用的sim卡属于不允许使用3G业务号段,黑莓手机在2G和3G网络共同覆盖区域有可能无法进行业务,造成手机进行网络乒乓切换。此时SGSN正常拒绝该用户注册3G网络,拒绝原因值为7号“gprs_service_not_allowed”,该用户被拒绝后回到2G,但是2-3分钟后,手机似乎忘记曾经被3G网络拒绝过,而试图重新尝试登陆3G,此现象循环。而根据协议3GPP TS24.008描述,当手机接收到SGSN下发的7号拒绝原因值后,应该不在尝试登陆3G,直到手机开关机或者SIM/USIM卡被移除。这样看来问题原因就是黑莓手机OS系统bug没有严格遵守协议标准。目前中国移动的GSM和TD网络之间的互操作以及切换还在进一步优化过程中,也有可能造成手机上网时候的断网。(中国联通也存在类似情况)
对于地铁,电梯,CBD高层建筑,地下停车场等特殊地区,进出特殊地区(有信号)数据业务要小区重选(类似于硬切换的道理),必然造成数据业务的掉线。但是一般来说重选成功的时间不长,用户应该感知不到整个过程。表现仅为浏览网页过程中的停顿或者缓慢。并且一但过程结束,手机重新发起数据业务肯能能成功,应该不会出现如各位所述需要拆电池重启等方法才能重新开启链接的情况。GPRS具有”永远在线”的特点,即用户随时与网络保持联系。用户访问互联网时,手机就在无线信道上发送和接受数据,没有数据传送时,手机就进入一种”准休眠”状态,手机释放所用的无线频道给其他用户使用,这时网络与用户之间还保持一种逻辑上的连接,当用户再次点击,手机立即向网络请求无线频道用来传送数据,而不象普通拨号上网那样断线后还得重新拨号才能上网。
从有信号区域到无信号区域再返回时无法进行业务,手机断网必然重现问题?我手头也没有重现的环境,只能先说这些猜测想法了。从无信号区域返回有信号区域,所有的资源会重新获取,如果机器自带的浏览器ok,那么和网络侧的关系应该不大。我就遇到过手机信号条直接显示SOS,如果哪位同学和我有一样的经历,可以参看如下的分析:
如果小区内无线信号不稳定或者经过复杂特殊区域,MS与SGSN之间的鉴权消息时序出现了错乱,导致SGSN错误的判断MS鉴权失败,下发了鉴权拒绝消息给MS,在手机上呈现SIM卡未注册。
- 正常情况下,MS发起附着请求(ATTACH_REQ)后,SGSN发起了鉴权请求(AUTHENTICATION_AND_CIPHERING_REQ),MS立即(1秒钟内)回复鉴权响应(AUTHENTICATION_AND_CIPHERING_RSP),SGSN校验正确之后,下发附着接受消息(ATTACH_ACC),MS立即回复附着完成消息(ATTACH_CMP)。
- 异常情况下,MS发起附着请求(ATTACH_REQ)后,SGSN发起了鉴权请求(AUTHENTICATION_AND_CIPHERING_REQ),MS没有回复鉴权相应消息,SGSN会等待10秒钟之后再重发鉴权请求消息,但是6秒之后MS再次发起附着请求,SGSN也会再次发起鉴权请求,MS立即回复了鉴权响应,SGSN在校验的鉴权响应时发现MS回复的消息错误,就直接下发鉴权失败(AUTHENTICATION_AND_CIPHERING_REJ)消息给MS,导致MS出现SIM卡未注册现象,手机接入GPRS网络失败。
图1 出现“SIM卡未注册”的手机的信令流程
SGSN下发的鉴权相应消息到达PCU之后,可能没有及时到达MS,因此SGSN也没有及时收到鉴权响应消息。6秒之后,MS再次发起附着请求,SGSN会使用一个新的鉴权集下发鉴权响应消息,此时MS回复针对上一次鉴权请求的响应消息,导致SGSN在校验的时候判断MS鉴权失败,下发了鉴权拒绝消息给MS,在手机上呈现SIM卡未注册。
另外对于使用联通WCDMA 3G的同学断网也可能是以下原因:黑莓手机不支持RNC在一个RB SETUP消息里面同时下发两个业务RB,并且这两个RB都建立在HSDPA上。如果这两个RB是建立在DCH上,那么可以成功。另外,需要说明的是黑莓手机只是不支持两个HSDPA业务同时建立,如果是前后建立两个HSDPA业务,黑莓手机是支持的。
再说说从本地漫游到别的省市的情况:各位同学在出行漫游附着到本地网之后,尝试通过漫游地SGSN回到归属GGSN激活PDP上下文,如果上网失败。可能性就是相同的IMSI用户已经激活了相同APN的一个PDP上下文,然后该用户尝试再次激活相同APN的PDP上下文,同时SGSN发来的请求指示并非二次激活(二次激活还会携带已有PDP的NSAPI值),GGSN将拒绝第二次激活,拒绝原因值就是Mandatory IE Incorrect。
对于相同IMSI号码GGSN中已经存在激活状态的PDP,已激活PDP使用的SGSN信令面地址与第二次激活所用的SGSN信令面地址相同,两次激活对应的漫游地SGSN相同。该用户第二次激活PDP时(非协议中描述的二次激活Secondary PDP),漫游地SGSN并未先向GGSN发送请求将原来同一IMSI上下文去激活。这种处理是有问题的。而SGSN比较好的处理方式是对用户的主要索引是IMSI,系统中是否存在该用户也需要用IMSI查询。所以如果用户用相同的IMSI激活,SGSN认为是同一用户,如果已经激活PDP,用户再重新ATTACH,SGSN会把该用户原来的资源去激活。
以上就是我根据以往经验对黑莓手机的粗浅分析,谬误之处请各位指正。

























文章相当专业,实在是看不太懂~希望对专业人士有用
我就想知道怎么能不断网,分析,掠过掠过。。。
我是8820的。对断网有过一段时间的感受。
在124还是多少ROM之前,断网有发生过,现在已经没这个情况了。
我认为不是硬件,还是软件的问题。
我的9500也有过一段时间的断网,是断得连自带都连不上的
我觉得还是系统安全性能的问题。因为曾经有次断网后,有个原生的软件还是能联网的
我能不能问一下你的9500用的是什么系统啊,我的是151的系统;经常掉的脸自带浏览器都登陆不了!先谢谢了!
我补充一条:北京某bber的89er,对断网忍无可忍无须再忍,一怒之下入了移动的bes,从此跟断网说,赛有拉拉了。
@友藏 我擦,这个太狠了…
那位煤油…话费是全额报销的吧?
博主说的那个可能是用BIS后开通自带的MSN,GTALK,PUSHMAIL服务,变相绕过了断网这个问题,记得上次时光讨论断网的那个帖子里,有个加入BIS的新加坡BBer的回复是,他也断网。
本质上还是没解决。
@yayami 并非同一人,我认识的那位没有听到这个反馈,另外一位留言看到。
复杂 太复杂了 不要这么专业 只要告诉我们简单的操作流程就可以了 这样的文章 太专业 不适合我们
带楼下一起飘过…
为什么我断网的时候其它程序都不能用就guunoo还能用??????
@anoxic
是因为wifi吧?guunoo支持wifi,不过得手动切。我现在刷了5.0以后,断网基本不断wifi了。只要晚上关机,早上必断。坐地铁,则看运气。总之都是信号从有到无再到有,就有可能断网。另外,有时开了wifi再关上似乎也可能导致断网。
文章太深奥。我一直往下拖动鼠标想找到解决断网的问题。结果是我从头晕到尾。
哈哈。
我觉得是跟网络基站覆盖有关。非专业人士,无法用专业术语解释,但我能直观感受到的情况是:
在北京,断网的可能性很大;而在广州,甚至规模更小一些的二、三线城市,断网几乎不存在。
希望专业人士能从这方面解释一下。
P.S.:联通WCDMA试商用时,就是因为在北京的基站建设不足(他们自己承认的),导致俺的iPhone 3G(当时用)总是在2G网络和3G网络之间徘徊,且更青睐2G……俺一怒之下转到移动了…其实现在挺想拿BB9000用WCDMA的…
个人感觉不是手机硬件和软件的问题。一个事移动或联通公司的问题。我在上海。原来刚买手机的时候有过2-3次的掉网。然而随着上海移动系统升级。掉网现象我就没出现过(时间大约有2个月)。一直没掉过网。 有人说上QQ 如果接到电话或者打电话QQ就掉线。要重开QQ才能再度连上。貌似这个问题我结束通话后没过几秒就重新连接上了。最后我认为移动和联通公司系统问题>手机问题。
我换移动的号不断,联通3G的断网。。我的是9000
其实,看的出,问题的根源,应该是BB的数据请求里,包含了一些握手信息,而就是这部分关键信息上,各大运营商在大网的设置上,没有丝毫的考虑去接受或者拒绝,纯靠BB端自己来解析和运行。而上了官方服务,走的端口和握手信息全然不同,是为BB端量身定制,自然没有了烦恼。
所以说,还是运营商和RIM的OS之间,配合的问题了。
硬伤,就像南北韩,分裂了,自然就不会互相迁就。
这层窗户纸,要想打破,还有的等了。
我用的8520,使用尚邮时每天出现断网现象,现在把尚邮删除了,基本没断网了。
哎呀,看了我的文章是写的晦涩了一点啊,不适合大家的口味啊。一不小心就专业性太强了。
对于断网这个问题,我只想说一下,断网和什么网络其实没什么大关系的,主要是接入点不对应导致的,因为我们没有BIS&BES,而多数软件都会加入BIS&BES支持,BB会去优先选择走那个的,有些软件是内置了接入点,才能依旧能上网,而这些软件基本都是国产或者是修改的软件,而5.0是默认走BIS的,真是令人fxxxk……
我的黑莓9000刷了OS5.0 还是会断网啊。自带的浏览器可以用,但是gmail 和 opera 都不能用了。拔电池重启就可以了。不知道为什么。
文章太专业了,只要告诉我们如何解决?
@Chengzi.DA 默认走BIS,除非软件支持cmnet接入的……这么现在米有办法的
北京的断网现象比较严重,以前听说别的地区并没有断网。打电话给10086询问,客服并没有啥新的说法,似乎他们不知道不同地区的移动网络有什么区别。元旦回沈阳,4天从来不断网,随时可以上任何第三方软件。这才相信了移动网络真的有所不同,回到北京后仍然是断网。我的结论是:断网与BB及其系统并无太大关系,一旦移动引入了BB,北京的网络会进行调试及改进的。
另:利用wap上goonuu确实不怎么断网的。
我的9530在北京压根就没连上过,出北京立马连上了,移动cmnet,联通3gnet都是如此
我是9520 + 9000, 原来移动的edge在上海从来没有断过网,最近开始试着用联通的wcdma,断网就每天都有了,感觉的确和网络质量有关,可能和2g/3g互联什么的有关系吧。
用移动的号在欧洲漫游的时候,多数也是在vodafone德国或意大利的3g下工作,网络时常在2g、3g下自动切换,除了非常耗电外,断网也是没有遇到过。
使用goonuu,viigo等可以设置gprs参数的软件就不断网。所以我老觉得跟sb有关系,不过在仔细查看了sb以后,也没发现什么特别之处,可能是我还没有看懂sb。
有一个疑问,我无法理解。大家都说,可能是因为运营商的关系,可能是因为信号的关系,可能是因为SB的关系。可是断网的现象是:自带浏览器完全正常上网,如果是信号不好或运营商的网络不稳定,它又何以区分你使用了自带浏览器还是第三方软件??而且,当第三方软件断网时,不仅仅走net的软件断网,连走wifi的软件也断网,这就和运营商无关了吧???这就是手机本身的问题了吧???事实上,换其它牌子的手机是没有断网问题的,比如iphone,moto什么的,至少我试下来是这样。原因实在是想不通啊,断得连wifi都无法连接了(除了自带热点浏览器之外),奇怪啊!!!我用的是bold,5.0.0.411
@小丹 俺也是断网受害者,症状:1、关掉无线网络后再打开无线网络,网络连接中断,什么都不能上网。重启后恢复正长。2、在成都能使用GOONUU+GOOGLEMAP+同花顺+ucweb,但到了郑州无论怎么重启都只能上goonuu+googlemap,不知道为什么这两个可以其它都不行,如qq、大智慧、同花顺、等等。
请高手加油啊!!!
对于Goonuu为什么不断网,我具体原因说不上来。
为了让goonuu在网络上正常起来,团队的一个同学整了半年,最后终于解决了这个麻烦的问题。
BlackBerry相对其他系统来说对网络的控制实在太严格了。
加上中国特色的无线网络环境:比如说3个3G标准,wap,net等
BlackBerry在不使用BIS或者BES的时候就问题多多了。