首先本人这篇文章出自转载,做一个笔记
https://blog.csdn.net/ciellee/article/details/88125110
Log 分很多种,最初的概念是Events,往下再细点就是 Packets ,
再往下细点就是 DebugMsg( 代码中一条条的打印,需结合代码才能分析 ).
今天我们主要是针对 GSM Packets 来学学应该如何分析。
首先我们打开QCAT,Filter 的 GSM 中就有很多Packets。
我们主要关注一些 GSM 注网、注册、没服务、电话无法拨号、电话声音不好类似的问题。
[0x5064] GSM Power Scan Results: 这是GSM最重要的一个packets,这个packets主要是功能就是搜网的时候,将周围所有无线信号进行统筹,分析谁强谁弱,它就是统筹的结果。
[0x5065] GSM L1 FCCH Acquisition: 这些和 Layer 1 开头的packets 和我们关系不大,基本上不用看。
[0x50C8] GSM L2 States:
[0x512C] GSM RR State:
在菜单栏 view—> Call Flow Analysis 中打开Call Flow Analysis,截图如下:
在上图中,主要是反应了 GSM 各模块之间驱动的消息,通过这个模块,可以大概知道,手机GSM 当前走到哪个模块了,即手机软件中模块的调用流程。
如下图:
说明 CM 模块在 Msg 1 中发送了一个消息 ID=0xa 发给 REG 模块
REG 模块收到消息后,就发送了一个消息 MS MM REG? ID=: 0xc 给 MM 模块,
MM模块接收到消息后,就发送了一个消息 给 RRC 模块。
这就是一个基本的消息调用流程,点击对应的消息,就能在packets list 中,获取到对应的log
[0x5A64] GSM DSDS Power Scan Results
[0x5064] GSM Power Scan Results : 搜网时,周围所有无线信号的统筹结果
[0x512F] GSM RR Signaling Message : GSM 终端 和 网络 信令交互的记录
在消息中,
BS>>>MS,说明是下行消息,基站发送消息给手机
BS<<
1). 当看到连续好多栏都是 BS>>>MS 这个时,说明手机处于Idle 状态,
如果在 Idle时,看到很多System Infomation系统消息堆在一块,
说明此时手机并不是纯净的Idle,要不是就是在重选,要么就是在选网。
2). 系统消息System Infomation Type 分 Type1、Type2、Type3、Type4、Type5、Type6 六种
Type1、Type2、Type3、Type4: 这些是当手机处于非连接状态(空闲状态)的时候才收的消息
Type5、Type6:手机处于连接状态下收到的消息(比如打电话,注网,收发短信)
3). GSM Power Scan list : 手机当前小区所有能用的网络的强度由强到弱的列表,可以看到搜网数量及强度
搜索到网络后,手机会将 Power Scan list 中的结果,从强到弱慢慢去试试
Type 3 示例一:
手机收到这个系统消息说明: 这里有一个联通小区,如果手机是中国联通卡,且接收功率能够在 -95dBm 以上,就能够接入这个小区。
Type 3 示例二:
手机收到这个信息说明:这是一个移动小区,如果是中国移动卡,且手机接收功率能够在 -102dBm 以上,就可以接入小区
运营商代码460开头的整理:
46000 中国移动 (GSM)
46001 中国联通 (GSM)
46002 中国移动 (TD-S)
46003 中国电信(CDMA)
46004 空(似乎是专门用来做测试的)
46005 中国电信 (CDMA)
46006 中国联通 (WCDMA)
46007 中国移动 (TD-S)
46008
46009
46010
46011 中国电信 (FDD-LTE)
46000,46002,41004是移动网络的ID号(PLMN标识),它们所支持的接入技术分别为:
46000是中国移动GSM网络的标识号(PLMN标识),所支持的接入技术为 GSM/TD-SCDMA。
46001是中国联通GSM网络的标识号(PLMN标识),所支持的接入技术为 GSM。
46002 是中国移动134/159的SIM卡的PLMN标识,所支持的接入技术为 GSM/TD-SCDMA。
46007是中国移动TD-SCDMA网的PLMN标识,所支持的接入技术为 TD-SCDMA。
41004是中国移动香港的PLMN标识
IMSI 由三部分组成:
移动国家号码 MCC : 由3个数字组成,唯一的识别移动用户所属的国家,中国为460
移动网号MNC : 识别移动用户所归属的移动网
移动用户识别码MSIN: 唯一的识别国内数字窝蜂移动通信网中的移动用户
驻留和注册概念不一样: 注册需要告诉网络我来了, 驻留是可以偷偷的上,是两码事。
因为我的手机是双卡的,所以选择 Filter时,选择的是 DSDS ,如果手机是单卡的就选择 对应没有DSDS 的Filter packets 即可。
这两条信息一般是成对出现的,当看到这个信息时,说明手机已经驻留在小区了。
[0x512F] GSM RR Signaling Message : GSM 终端 和 网络 信令交互的记录
[0x5B2F] GSM DSDS RR Signaling Message
手机驻留小区后,需要进行注册上网(告诉网络我来了),
通过查看 System Information Type 5 和 Type 6 就能看到手机是否连接成功网络,只有连接网络后才会打印Type 5和Type 6的消息
Type1、Type2、Type3、Type4: 这些是当手机处于非连接状态(空闲状态)的时候才收的消息
Type5、Type6:手机处于连接状态下才会收到的消息(比如打电话,注网,收发短信)
连接后就需要注册(注意:看到Type 5 和 Type 6 不一定说明注册上了)
网络不一定会注册的,如果之前注册过了,不一定会重新注册
接下里我们选择 Fileter ,选中
[UMTS] [NAS Layer] [0x713A] UMTS UE OTA
如果没有打电话短信等,没事干的话,只收寻呼 Paging request Type 1,保证别人能够呼叫到我即可。
[0x5B38] GSM DSDS RR Downlink Signaling Counter : 手机驻留后,
如果手机没能够从网络获得寻呼消息,该值会做减法,
如果成功获得寻呼消息,该值会做加法,
当该值小到0的时候,手机就掉网了
[0x5A85] GSM DSDS L1 Neighbor Cell BCCH Burst Metrics
该详细是 还未驻留小区时,打印的,
各个小区的 APPCN 不一样
例如:
[0x5A6C] GSM DSDS L1 Burst Metrics :
驻留小区后,显示当前驻留的小区,手机空间信号的接收强度,可以看到当前手机的功率等级,
将该功率等级 前面讲的 System Infomation Type 3 的功率等级相比,就能知道,当能手机能否上网
一般碰到有网上不去的问题,可以这样比较看,看是否手机功率等级不达标,导致无法注册上网。
这个强度也是上报给UI 显示的信号强度
第一步:RR Signaling Message 分析方法
第二步:如何看 Log 是否正常
第三步:真正意义上的掉话只有一种情况 ---- 查看测量报告
[0x5A88] GSM DSDS L1 Transmit Burst Metric
这个用于描述手机往外发送的功率,一般作用不大,一般不用看
涉及的 Log过滤项:
[0x5B2F] GSM DSDS RR Signaling Message: GSM 终端 和 网络 信令交互的记录
[0x5A6C] GSM DSDS L1 Burst Metrics : 显示当前驻留的小区,手机空间信号的接收强度
[0x5A79] GSM DSDS L1 Enhanced Message Metrics: 译码情况,表明上一条系统消息的解析程度,查看消息有没有成功的被解析 decode
如果通过前面的log 分析,看起来都 还可以,也就是
通过RR Signaling Message 得知 小区handover切换次数不多,Measurement Report中 小区信号强度还可以,比特误码率也不高
通过L1 Burst Metrics 得知,信噪比 SNR 比较正常 (10左右)
通过Enhanced Message Metrics 得知,CRC 信息译码也是pass 。
如果是这样,那语音断断续续就可以使 刚好和 小区切换对上了。
此时,我们可以通过 QCAT 的 Vocoder Playback 将声音从 log中解析出来看看,
和我们之前 小区handover切换的点来比较确认。