1、终端从G网小区重选到TD小区鉴权失败的解决案例陈攀重点终端从G网小区重选到TD小区鉴权失败的解决案例摘要:TD终端从GSM小区重选到TD小区后,在位置注册过程中出现鉴权失败,导致进入注册未知状态。分析信令来看,鉴权失败的原因是在该TD小区下,网络下发的是鉴权三元组,终端返回“GSM鉴权不接受”的失败。本文通过该案例的分析及解决思路,详细讲解了GSM网络、TD-SCDMA网络以及2G/3G网络共存时用户鉴权的流程,对以后的2/3G互操作工作有一定的借鉴意义。关键字:TD-SCDMA 2/3G重选 鉴权一 问题描述在某TD小区“棠东工业区T2小区(10087,59)”进行测试时,在该小区下发起语音
2、呼叫,满足门限触发23G互操作切换到GSM网络,通话结束达到重选门限UE再从GSM网络重选回TD网络。此时发现手机没有选择信号较强的小区“棠东工业区T2小区(10087,59)”,而是驻留在信号很弱的TD小区,观察8120手机工程参数的小区列表,发现棠东工业区T2小区(10087,59)的STATUS中显示Barred字样,手动选择锁定棠东工业区T2小区(10087,59)也无法进行锁定。将手机关机再开启后,手机能够正常的驻留在棠东工业区T2小区(10087,59)。如果再发生互操作切换到GSM再重选回TD网络,又会出现这种现象。观察测试数据发现,UE从GSM重选回TD网络首先发起位置更新请求
3、,但手机未及时进行响应,在4秒钟后手机重选到另一个TD小区10054,在10054这个小区下成功发起了位置更新。截图如下:图1 手机测重选信令流程观察10087小区下的鉴权请求和10054下的鉴权请求,发现两者有所不同,其中10087较10054小区下的鉴权请求中少了一组AUTH参数,初步判断是由于此原因而导致手机无法响应鉴权。如下所示:图2 10087小区下收到的鉴权请求消息图3 10054小区下收到的鉴权请求消息二 问题分析2.1 GSM网络用户鉴权在GSM系统中,为了保证只有有权用户可以访问网络采用了GSM用户鉴权,增强了用户信息在无线信道上传送的安全性。鉴权可以分为对用户鉴权和VLR请
4、求用户鉴权数据两个过程,如下图所示: 图4 2G鉴权流程2.1.1对用户鉴权 当用户请求服务时,审核其是否有权访问网络。 a)MSC/VLR送鉴权请求给用户,鉴权请求中有一个随机数(RAND)。 b)用户用收到的RAND在SIM卡上算出回答响应(SRES),放在鉴权响应中并送回MSC/VLR。 c)MSC/VLR将收到的SRES和VLR中所存的做比较,若相同,则鉴权成功,可继续进行用户所请求的服务,否则,拒绝为该用户服务。 2.1.2VLR请求用户的鉴权数据 用户现访的VLR从HLR或用户先前访问的VLR取得鉴权数据-鉴权三元组,在下列两种情况下VLR要请求鉴权数据: a)用户在VLR中没有登
5、记,当用户请求服务时,VLR就向用户所属的HLR,或可能的话从用户先前访问的VLR中取得鉴权数据。 b)用户在VLR中有登记,但VLR中所存的该用户的鉴权三元组只剩下两组时,VLR自动向HLR请求用户的鉴权数据。2.2 TD网络用户鉴权TD网络的鉴权采用的是相互鉴权,其基本思想是服务网络通过盘问响应技术对用户识别符进行校验,同时终端检验归属网络是否授权服务网络做这些事。鉴权的后一个过程相对GSM而言是UMTS的新特性,通过它用户可以检验是否连接到合法的网络。 在3G鉴权中,鉴权五元组代替了GSM的三元组,3G鉴权向量的5个参数分别是RAND、期望响应(XRES)、加密密钥(CK)、完整性密钥(
6、IK)、鉴权令牌(AUTN)。与GSM相比,增加了IK和AUTN两个参数,其中完整性密钥提供了接入链路信令数据的完整性保护,鉴权令牌增强了用户对网络侧合法性的鉴权。UMTS鉴权认证过程如下图所示:图5 UMTS鉴权认证过程a)鉴权中心AuC为每个用户生成基于序列号的鉴权向量组(RAND、XRES、CK、IK、AUTN),并且按照序列号排序。 b)当鉴权中心收到VLR/SGSN的认证请求后,发送n个鉴权向量组给VLR/SGSN。在VLR/SGSN中,每个用户的n个认证向量组,按照“先入先出”(FIFO)的规则发送给移动台,用于鉴权认证。 c)VLR/SGSN初始化的一个鉴权过程为选择一个鉴权向量
7、组,发送其中的RAND和AUTN给用户。用户收到RANDAUTN后,在USIM侧进行鉴权处理,处理的原理如下图所示。 图6 USIM中的鉴权处理原理首先计算AK,并从AUTN中将序列号恢复出来,SQN=(SQNAK)AK;USIM计算出XMAC,将它与AUTN中的MAC值进行比较。如果不同,用户发送一个“用户认证拒绝”信息给VLR/SGSN,放弃该鉴权过程。在这种情况下,VLR/SGSN向HLR发起一个“鉴权失败报告”过程,然后由VLR/SGSN决定是否重新向用户发起一个鉴权认证过程。 同时,用户还要验证接收到的序列号SQN是否在有效的范围内,若不在,MS向VLR发送同步失败消息,并放弃该过程
8、。 如果XMAC和SQN的验证都通过,那么USIM计算出RES,发送给VLR/SGSN,比较RES是否等于XRES,如果相等,网络就认证了用户的身份。 2.3 2G/3G网络共存时的漫游用户鉴权在2G和3G共存网络中,3G用户鉴权按以下方式进行: a)通过UTRAN接入时,使用3G鉴权。b)在2G小区下登记时,2G-MSC/VLR向HLR发起登记,标识Map版本2,HLR将TD用户的鉴权五元组转化成三元组发给2G-VLR。c)当TD终端重选回TD小区时,终端首先上报TMSIPLAI,3G-MSC/VLR无法识别TMSI,将按照PLAI计算出2G-MSC/PVLR的地址,并向2G-MSC/PVL
9、R发起Send Identification Request,其中标识Map版本3。此时由于2G MAP版本低于3G,2G-MSC/PVLR应该拒绝或进行版本协商,无论2G-MSC/PVLR选择的是拒绝流程还是版本协商流程,3G MSC/VLR都要到HLR重新取五元组鉴权参数。分析我们这个案例发现,2G-MSC/PVLR并未进行拒绝或进行版本协商,而是也以版本3返回了响应,并将其保存的鉴权三元组返回给3G-MAS/VLR,导致TD-MSCS认为该终端是一个2G用户,以三元组向终端发送Authentication Request,终端返回“GSM鉴权不接受”的失败。具体见一下描述: 3G MSC
10、/VLR发给2G-VLR的Map信令中标识版本3图7 3G MSC/VLR发给2G-VLR的Map信令 2G-MSC/VLR并没有按照2/3G共核心网测试规范的要求,进行拒绝或版本协商,而是返回了响应,在Map响应中也标识版本3:图8 2G MSC/VLR发给3G-VLR的Map响应 2G-MSC/VLR在Send Identification Response中带回了鉴权三元组:图9 2G MSC/VLR下发的鉴权三元组 由于TD-MSCS从2G-PVLR得到了标识Map版本3的三元组,因此认为这是一个2G用户,因而以三元组向终端发送Authentication Request,终端返回“GSM鉴权不接受”的失败:图10 鉴权失败三 问题解决针对这一问题,省网维核心室现提出如下解决方案:考虑在集团规范的2G-3G互操作中,3G用户从2G网络漫游到3G 网络中位置更新,临近VLR取鉴权参数,无论PVLR采用拒绝流程还是版本协商流程,3G MSC/VLR都要到HLR取鉴权集,我们在TDMSC上修改MAP兼容性参数,当UE从GSM网络重选回TD网络时,3G MSC/VLR禁止从2G-PVLR得到了标识Map版本3的三元组,而是通过IMSI直接从TD-HLR获取鉴权五元组。追踪信令发现3G用户鉴权成功且可成功进行小区重选,问题解决!
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1