ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

GSM信令排查实战:七号信令协议栈与接口拓扑解析

GSM信令排查实战:七号信令协议栈与接口拓扑解析 简介GSM网络拓扑结构讲义是一份面向移动通信初学者的PPT课件系统讲解GSM网络拓扑结构与信令协议体系适合通信专业学生、网络优化工程师以及需要快速理解移动核心网原理的技术人员自学或教学使用。内容先梳理BSS、NSS、OSS三类子系统围绕TMSC、MSC、BSC、BTS、HLR、VLR、AUC等关键网元展开说明各自功能与接口关系随后详细介绍7号信令网三级结构、MTP/SCCP/MAP/TCAP/BSSAP等协议层并结合TUP与ISUP的差异、鉴权与加密流程、位置更新与切换信令流程以及T3212、T3192等重要定时器帮助读者读懂实际网络中的信令消息。资源为单个PPT演示文稿pptx格式大小仅1.27MB内含清晰目录、网络拓扑图、协议分层图和常见信令分析软件介绍便于按章节浏览学习也便于教学投屏展示。目前已有77人学习下载既可作为移动通信课程的补充讲义也可作为考前复习或日常排查信令问题时的速查手册。1. GSM网络拓扑结构这张PPT其实是信令排查的地图做无线网络优化的头两年我习惯把GSM拓扑当成“背概念”的章节——MSC是核心BSC管基站BTS发信号HLR存用户背完就扔。直到有一次处理跨MSC切换失败定位了整整一个下午最后发现是E接口的TUP消息里主叫号码字段被转接点改了才意识到拓扑结构图不是让你背的是让你在故障时知道消息该往哪儿追的。这份PPT最值钱的地方不在那张TMSC1、TMSC2、MSC1、MSC2的框图画得有多全而在它把六个接口B口、A口、Abis口、Um口、E口、C口、H口和七号信令的层级关系串成了一条完整的信令路径。适合三类人刚入网优想快速搭起GSM信令框架的新人、做核心网维护但总在MSC和HLR之间绕圈的工程师、以及需要给客户讲“信令是怎么走的”却苦于没有现成材料的培训人员。这份讲义能帮你解决的问题只有一个——当一条信令消息在网络里走丢时你能在五分钟内说出它该经过哪些节点、在哪个接口上该用哪层协议。2. 从Um口到A口无线侧四个网元的分工与信令走向2.1 MSC、BSC、BTS、HLR各管什么一张表说清职责边界PPT里最容易被忽略的一句话是MSC为其服务区内的移动用户提供交换和信令功能。很多人以为MSC只管呼叫实际上它还承担切换过程、位置更新、用户身份识别、移动设备识别、数据库管理、测量和人机接口甚至计费。这解释了为什么MSC的维护界面总是最复杂的——它不只是一个交换机还是移动性管理的大管家。BSC和BTS的分工更容易混淆。BSC控制无线通信资源包括频率分配和功率控制但它不直接跟手机打交道直接跟手机说话的是BTS负责无线链路的建立和管理。这个区分在信令分析时非常重要如果你在Abis接口上看到一个无线链路建立失败的消息问题大概率在BTS或传输侧如果你在A接口上看到同样的失败问题就上升到BSC和MSC之间的信令协商了。HLR和VLR的职责边界也是排查位置更新失败的钥匙。HLR存的是用户身份IMSI、MSISDN、当前所在的VLR、业务能力和补充业务信息VLR存的是移动台状态、位置登记LAI、TMSI管理和MSRN管理。一个用户漫游到一个新MSC/VLR区域时VLR要先向HLR报告“这个用户在我这儿”HLR更新位置信息后把用户档案发给VLR。这个信令过程如果哪个环节断了现象就是手机有信号但打不出电话——很多新手以为是无线问题实际上是HLR和VLR之间的C接口或H接口消息超时。2.2 六个接口承载什么B口、A口、Abis口、Um口、E口、C口和H口逐一拆解PPT里画的接口图看着像蜘蛛网实际归纳起来就三类。第一类是无线侧接口Um口是手机和BTS之间的空中接口承载的是LAPDm帧和DTAP消息Abis口是BTS和BSC之间的接口承载的是BTS管理和RR管理消息A口是BSC和MSC之间的接口承载的是BSSMAP和DTAP消息。第二类是核心网内部接口B口是MSC和VLR之间的内部接口E口是MSC和MSC之间的接口C口是MSC和HLR之间的接口H口是HLR和VLR之间的接口。第三类是外部网络接口MSC通过ISUP或TUP和PSTN相连。调试时最容易翻车的地方是A口和E口的混淆。A口走的是BSSAP协议里面对应关系是DTAP给CM/MM消息、BSSMAP给RR管理和BSS管理消息而E口走的是TUP或ISUP用于MSC之间的切换和漫游。我曾经在一次跨MSC切换失败时拿着A口的抓包文件找问题翻了一整页BSSMAP也没找到原因——后来才反应过来跨MSC的切换信令根本不过A口它走的是E口。从那以后我每次看信令消息前会先确认当前抓的是哪个物理接口再决定要过滤哪层协议。接口和协议栈的对应关系实际排错时是最常用的速查表建议直接抄在笔记本上接口位置承载协议典型消息Um口MS ↔ BTSLAPDm RR/MM/CMDTAP信道请求、鉴权请求、位置更新请求Abis口BTS ↔ BSCLAPD BTSM RR射频状态、信道激活、测量报告A口BSC ↔ MSCMTP SCCP BSSAPBSSMAP/DTAP寻呼、切换请求、SAPI排队指示B口MSC ↔ VLR内部接口通常MSC和VLR合设位置更新、取漫游号C口MSC ↔ HLRMTP SCCP TCAP MAP位置更新请求MAP_UPDATE_LOCATIONE口MSC ↔ MSCMTP SCCP TUP/ISUP切换请求Handover RequestH口HLR ↔ VLRMTP SCCP TCAP MAP提供漫游号Provide Roaming Number这个对应关系直接决定了你在Wireshark里该选什么过滤条件。抓A口信令主过滤应该是mtp3或sccp然后在SCCP层看Called Party Address是MSC还是BSC的编码抓E口信令主过滤就该加tup或isup了。你抓的接口选错了协议过滤条件出来的会话根本不完整。3. 七号信令协议栈MTP、SCCP、TCAP、MAP一层层剥到业务消息3.1 从MTP到TCAP七号信令消息的封装与寻址逻辑PPT把GSM的信令协议分成了两个群七号信令协议群和GSM专用协议群。先说七号信令群它的基础是MTP——消息传递部分。MTP分三层MTP1处理物理层的帧同步和错误检测对应2Mb/s的PCM时隙MTP2负责信令数据链路处理帧的重传和差错控制相当于数据链路层MTP3负责信令路由和信令消息的优先级是网络层的角色。MTP3之上是SCCP它补了MTP3没有的两个能力一是基于GT全局名的寻址不需要你记住每个网元的点编码二是面向连接的传输支持长消息的分段传送。SCCP之上是TCAP它给事务型应用提供对话能力——比如MAP的“请求-响应”就是通过TCAP承载的。MAP是实现移动性管理的核心位置更新、鉴权、取漫游号、切换都走MAP。这个分层逻辑给你排错时的路径依赖如果一个位置更新请求发出去后没有响应你要先确认MTP3层有没有收到对应的DPC消息再确认SCCP层能否正常路由最后看TCAP层的事务状态。我曾经处理过一次HLR无响应的问题抓包显示SCCP层消息已经发到了HLR的GT地址但TCAP层始终没有收到回应。最后发现是HLR的SCCP子系统号SSN配置错了消息送到了但没有应用层接收——这就是典型的“到了门牌号上但没有人接电话”的场景。3.2 TUP和ISUP的区别什么时候看CIC什么时候看消息类型TUP和ISUP是七号信令里面向电话业务的用户部分但它们的侧重点完全不同。TUP是为传统的PSTN电话呼叫设计的主要处理呼叫的建立、监视和释放消息类型包括IAM初始地址消息、ACM地址全消息、ANC应答消息、REL释放消息和RLC释放完成消息。ISUP是TUP的扩展增加了ISDN的承载能力管理支持多个通道的协商和补充业务控制。实际操作中ISUP比TUP多了一个关键字段——CIC电路识别码。CIC用来标识一条具体的语音电路所以在看ISUP消息时你要同时关注CIC和消息类型。有一次处理MSC到PSTN的中继语音单通问题我抓了ISUP消息发现呼叫建立和释放都正常但CIC对应的中继时隙在MSC侧和PSTN侧不一致——这就是电路资源编码错位语音通了但方向错了。TUP没有CIC复杂度但在国内现网里用得越来越少大多数省份的关口局都已经升级到ISUP了。GSM侧的应用消息MAP和BSSAP都承载在TCAP之上但有一条要特别记住BSSAP在A口上不是直接跑在TCAP之上的它是由SCCP直接承载的用SSN来区分BSSMAP和DTAP。这算是一个承上启下的关系排无线侧信令问题时你要在A口抓包里过滤SCCP的SSN字段来区分两类消息排核心网侧问题时你才需要往上看TCAP和MAP。3.3 各层协议字段速查抓包时优先看哪几个字段协议层优先查看字段排除价值MTP3DPC/OPC目的/源点编码、SIO确认消息有没有被送到正确的点码SCCPCalled/Calling Party Address、SSN确认实际寻址对象MSC/BSC/HLRTCAPTransaction ID、Operation Code确认事务是否成功操作码是否匹配MAPOperation TypeUpdateLocation等确认具体业务类型比如位置更新还是取漫游号TUP/ISUP消息类型IAM/ACM/REL等、CIC确认呼叫状态机走到了哪一步我用这个表的方式很简单先在MTP3层看点码是否匹配排除消息路由错了再在SCCP层看SSN和GT排除送错了应用然后在TCAP层看事务ID排除响应错位最后到具体业务层看操作码和参数。如果这四层都正常问题基本就锁定在应用网元的业务逻辑上了。4. NO.7信令网组网HSTP双平面、信令点编码与GSM信令流程4.1 三级信令网和A、B平面的设计逻辑PPT用一个图讲了信令网的三级结构HSTP高级信令转接点、LSTP低级信令转接点和SP信令点。SP是信令消息的源点或目的地点公众电话网中的交换机、特种服务中心、移动网、智能网、ISDN网元都是SP。LSTP每省设置2到4个HSTP每大区设置一个。数字移动网采用专用信令网结构要求每个SP至少连接两个LSTP每个LSTP至少连接两个HSTP且HSTP采用双平面结构——A平面和B平面。这个双平面设计不是摆设是解决单点故障的硬要求。如果只有一个HSTP它挂了整个省的信令就全断分成A、B两个平面后任一平面故障信令可以走另一个平面迂回。排查信令链路问题时你必须先确认自己抓包的点在哪个平面——A平面的信令链路拥塞B平面可能完全正常这种情况下不是网络故障是链路负荷不均。现网里最常见的信令组网问题是链路倒换时的消息乱序。MTP2层有重传机制但MTP3层对消息顺序的要求是严格的链路倒换时如果两端的链路集优先级配置不一致就可能出现消息乱序到达导致TCAP事务超时。这类问题在你的呼叫记录里表现为“位置更新成功率突然下降”但在信令抓包里往往只是在倒换瞬间出现了几条重传消息。4.2 鉴权和加密Ki、RAND、SRES、Kc、A3/A8/A5各自的角色PPT里最容易被忽略但实际排障价值最高的是鉴权和加密流程。鉴权用A3和A8算法AUC生成一个随机数RAND和SIM卡里的Ki一起作为输入A3算法算出期望的SRESA8算法算出加密密钥Kc。VLR把RAND发给手机手机里的SIM卡用同样的Ki和RAND计算出SRES传回VLRVLR和期望值对比一致则鉴权通过。加密则是用A5算法将Kc应用到无线通路上。排障时最常见的翻车点是AUC里某个用户的Ki数据和HLR里不一致导致鉴权永远失败。现象很隐蔽——用户开机后有信号但一发起位置更新就被拒绝。这种问题抓无线侧信令看不出来因为Um口消息显示鉴权请求发过去了手机也算出了SRES但VLR比对后认为不匹配。定位方法是从A接口抓包看鉴权响应消息里的SRES和期望的SRES差在哪里再核对HLR/AUC里的用户数据。这条血泪经验的教训是不要在无线侧翻来覆去查覆盖先到核心网侧看鉴权。定时器在鉴权流程里同样关键。T3212是周期位置更新定时器到了设定周期手机必须做一次位置更新如果定时器设置太长用户长时间不更新位置寻呼时代码会直接失败表现为“叫不通但手机有信号”。T3192则是等待用户响应的定时器很多厂商的默认值是2秒如果网络响应速度稍慢手机就会提前放弃表现为“信号满格但接不起电话”。这类定时器参数的设置光看PPT理解不了一定要结合实际的话务模型调——用户密集区域周期位置更新设短了会加大信令负荷设长了寻呼失败率会飙升。5. 信令排查避坑定时器超时、TMSI重分配与DTAP/BSSMAP混淆5.1 定时器超时问题现象是“时好时坏”原因是参数没对齐现象手机在同一个位置反复出现位置更新失败时好时坏抓Abis口信令能看到RR层消息正常但MM层的位置更新请求迟迟得不到响应。原因位置更新请求在A口卡住了MSC和VLR之间的B接口处理超时。最常见是T3212的设置不一致——BSC侧的周期位置更新定时器时长和MSC侧配置的值不匹配导致每次周期位置更新都在等待超时后重新发起。解决先看MSC侧的T3212配置再看BSC侧对应参数两侧设成一致值。检查VLR的负荷和C接口链路状态排除HLR响应慢导致的超时连锁反应。定位速度的关键是不要只盯无线侧要顺着A口往上看B接口和C接口。5.2 TMSI重分配位置更新成功但信令面乱码现象位置更新信令流程看着全成功但手机后续的呼叫建立总是异常而且每次异常的模式相同——总是在随机接入后失败。原因TMSI重分配出了问题。VLR给手机分配了一个新的TMSI但这条信令消息在A口被丢了手机还在用旧TMSI网络侧已经用新TMSI建立对应关系。结果就是后续每一个呼叫请求都因为TMSI应答不匹配而失败。解决抓A口信令看TMSI重分配消息的发送和确认。这类问题最隐蔽的点在于位置更新已经成功业务侧的消息也都有响应唯一的破绽是TMSI在信令消息里对不上号。实际处理中在A口抓包过滤SCCP层看携带“TMSI Reallocation Command”的消息序号核对该消息之后的下一条上行消息里携带的TMSI是不是同一个。5.3 DTAP和BSSMAP混淆A口抓包看着正常实际消息发错了地方现象BSC和MSC之间的切换失败A口抓包看到BSSMAP消息正常往返但切换就是起不来。原因把DTAP消息误当成了BSSMAP。A口上DTAP是透传的——手机发起的CM业务请求BSC不解析直接封装在SCCP消息里透传给MSC。BSSMAP才是BSC和MSC之间真正的管理消息。很多新手看A口抓包只看到SCCP层有消息没区分SSN把DTAP当BSSMAP分析自然定位不到问题。解决A口抓包先过滤SCCP层看Called Party Address里的SSN——BSSMAP用的是特定SSNDTAP是另一组。确认SSN正确后再分析消息内容。这是信令分析的基本功也是A口问题定位快慢的分水岭。5.4 信令点编码看错同一个网元在A口和E口抓出来的OPC不一样现象核心网内部信令链路正常但A口切换请求总是超时MSC侧认为消息没发出去BSC侧认为收到了但来源不对。原因同一个MSC在A口的信令点编码和在E口的信令点编码往往不是同一个。A口用的信令点编码通常属于MSC的A接口子系统E口的属于另一个子系统。抓包时如果用E口的点码去比对A口的消息会得出“消息来源不对”的错误结论。解决先向局方要到整个核心网的信令点编码规划表抓包前先确认当前接口上各网元的点码归属再核对接入网元配置。这个细节最容易浪费半天时间却只需要一张点码表就能避免。6. 把讲义翻成排查步骤一张纸验证信令质量的方法这套PPT里最有用的不是某一条消息的字段定义而是它把“信令怎么走”讲成了完整的时空顺序。从那以后我每次搭建信令分析环境都强制自己先走一遍这套流程先画出目标接口的网元连接图和点码表再选对协议过滤条件最后按“MTP3点码 → SCCP SSM → TCAP事务 → 业务操作”的顺序逐层确认。验证信令质量最直接的三个指标你可以用现成的抓包工具验证位置更新成功率看MAP层是否有“Update Location Reject”、切换成功率看E接口的Handover Request和Handover Request Acknowledge是否成对出现、寻呼成功率看A口寻呼消息发出后是否能收到寻呼响应。这三个指标正常核心网侧的信令基本就没有大问题了。如果抓包环境里有WiresharkA口抓包最快的一张验证过滤表达式是sccp mtp3这个过滤条件把MTP3和SCCP都选上既能看路由信息又能看寻址信息。再细分业务时在显示过滤里加tcap交换机事务消息或者加map过滤位置更新。E口抓包则用isup或tup我一般习惯先看isup的消息类型再按CIC归类统计呼叫状态机。投影到PPT上最有价值的一页其实不是MSC的功能列表而是那张接口拓扑图。把接口图刻在脑子里再回头看书里的定时器、鉴权、TUP/ISUP这些散落的章节你会发现它们全部是为了回答同一个问题这条信令消息从发起网元到目的网元中间要经过哪个接口、在哪层协议上做了什么样的处理。希望这套分析方法能帮到你少走我当年走过的弯路。本文还有配套的精品资源点击获取
返回列表