- 易迪拓培训,专注于微波、射频、天线设计工程师的培养
GPRS协议栈中GMM协议的研究和实现
摘 要 GPRS协议栈技术是移动通信软件的关键技术,本文基于GPRS协议栈中的GPRS移动性管理层协议(GMM),对GMM层所实现的功能、过程、状态控制、安全机制进行了深入地研究,并通过一个工程项目对GPRS协议栈中的GMM层进行了设计和实现。
关键词 通用分组无线业务 GPRS移动性管理 路由区 状态控制
1 引言
近年来,移动通信产业已成为发展最迅速、最具活力的产业之一。随着用户对通信质量,通信业务的要求越来越高,通信技术不断发展和成熟,通过采用GPRS技术,可使现有GSM网络轻易地实现与高速数据分组的简便接入,从而使运营商能够对移动市场需求作出快速反应并获得竞争优势。
GPRS协议栈技术是移动通信软件的关键技术,所以目前对GPRS技术的研究主要集中在GPRS协议栈技术上。本文正是基于这一点,通过对GPRS协议栈中的关键层——GPRS移动性管理(GMM)层的深入研究,对GMM层中所实现的功能、过程、状态控制、安全机制进行了阐述和分析,最后通过一个实际的GPRS工程项目把对GMM研究应用到实际中去,表明研究的价值和意义。
本文是如下安排的:第2节介绍了一些基本概念和原理;第3节研究了GMM所实现的功能、过程、状态控制、安全机制,并对它们之间的相互关系进行了阐述;第4节把对GMM的研究应用到一个实际的工程中;第5节对全文进行了总结。
2 基本概念
GPRS协议栈是由传输协议栈和信令协议栈组成的,传输协议栈是用于用户信息的传输(用户数据的传输)和相关控制过程的信息传输;而信令协议栈是提供对传输协议栈的支持,完成对GPRS网络接入的控制,以及对分组数据协议的关联等等。
GPRS信令协议栈如图1所示。从图1可以看出在GPRS的无线接口(Um)中,对照ISO(国际标准化组织)的参考模型,GPRS的信令协议栈从下到上可以分为三层:L1层是物理层,它是由GSM RF构成的;L2层是数据链路层,它是由媒质接入控制层(MAC)、无线链路控制层(RLC)、逻辑链路控制层(LLC)三层一起实现其功能的;L3层是信令层,通过下层(L1层,L2层)提供的分组信道传输信令消息,来达到对GPRS协议栈的控制作用。
GMM作为GPRS信令协议栈L3层中的一层,利用下层(L1层,L2层)提供的分组信道传输GMM的信令消息。GMM的这些信令信息的主要作用是支持用户终端的移动,将用户的位置信息通知网络,以及提供用户识别信息的机密性。
3 GMM功能实现
上节已经对GPRS协议栈进行了系统地概括和介绍,GMM层的主要功能就是上节所说的,支持用户终端的移动,将用户的位置信息通知网络,以及提供用户识别信息的机密性,而这些功能是通过GMM的过程来实现的。下面首先研究一下GMM的过程,通过这些过程实现了GMM的功能:GMM的安全机制是通过GMM的公共过程来实现的,GMM的位置信息是通过实现GMM的特定过程来完成的;最后研究和说明GMM如何通过它的状态管理来实现GMM的过程,进而实现GMM的功能。
3.1 GMM的过程
依赖于GMM过程是如何启动的,把该层的过程分为两大类:GMM公共过程和GMM特定过程。我们正是通过执行这些过程来实现GMM层的特定功能。
3.1.1 GMM的公共过程
当建立了GMM上下文环境时,由网络发起并完成以下功能:
1. GPRS加密和鉴权过程;
2. P-TMSI分配或重新分配过程;
3. GPRS识别过程;
4. GPRS信息过程。
GPRS 采用GMM 的公共过程—— GPRS鉴权过程来实现GPRS终端的安全。GPRS采用如下的方法:网络通过信令发来一个随机数(RAND),GPRS终端把该随机数送到SIM卡,由SIM卡把鉴权密钥(Ki),随机数作为输入,通过鉴权算法得到符号响应(SERS),然后GPRS终端通过信令把该符号响应送到网络,网络会把GPRS终端送来的符号响应跟自己采用相同的算法和相同的输入算出来的符号响应进行比对,如果相同,则鉴权成功,否则失败。这里Ki和IMSI是紧密相联的,即一个IMSI对应一个Ki,不同的IMSI对应不同的Ki。这里Ki的机密性保证了用户的安全。
作为用户身份标识的IMSI应尽量少用,防止非法用户通过各种途径窃听无线链路上的信令交互而得到GPRS终端的IMSI,P-TMSI引入正是基于此目的。
临时链路逻辑标识(TLLI)和路由区标识共同作用,可唯一确定GPRS终端,而TLLI正是源自GPRS网络的SGSN节点分配给终端的P-TMSI。P-TMSI的分配由GMM的公共过程(P-TMSI分配或重新分配过程)来完成的。
3.1.2 GMM的特定过程
1. GPRS去附着过程(GPRS Detach);
2. GPRS附着过程(GPRS Attach);
3. 当存在GMM上下文环境时,由GPRS终端发起的路由区更新过程。
通过GMM的特定过程的实现把GPRS终端的位置信息告诉网络,网络会发起相应的过程来更新GPRS终端在网络数据库中的信息,并且GMM的公共过程可包含在GMM的特定过程来实现。
3.2 GMM的状态管理
GMM过程的实现必须有序的进行,也就是说GMM过程必须得到有效地控制,通过GMM的状态管理可实现GMM终端过程和网络同步,来实现GMM在协议栈中应起的作用。GMM层的状态管理是由GMM状态、与SIM卡相关的GPRS更新状态、MM状态三个有限状态机(FSM)相互配合,相互影响进行管理的。例如:当由于某个GMM过程使GMM层状态从已注册状态切换到GMM去注册状态的子状态限制服务时,就要把GPRS更新状态置为漫游不容许状态,同时把MM状态从备用态(STANDBY)或就绪态(READY)置为空闲态(IDLE(GPRS)),这时GPRS终端不能提供正常的服务。
3.2.1 GMM的状态
GMM状态主要分为:
1. GMM空状态:在此状态下,GPRS终端丧失了GPRS能力,GPRS的移动性管理功能不可用;
2. GMM去注册状态:在此状态下,GPRS终端的GPRS能力可用,但GMM上下文环境没有建立,GPRS终端可通过发起GPRS附着过程来建立GMM上下文环境;
3. GMM注册已开始状态:在此状态下,GPRS终端已发起GPRS附着过程,并正在等待网络的应答;
4. GMM已注册状态:在此状态下,GMM上下文环境已经建立完成——也就是说GPRS终端发起的GPRS附着过程已成功完成,GMM可进行任何GMM过程,并可进行激活PDP业务等一系列正常操作;
5. GMM去注册已开始状态:在此状态下,GPRS终端已发起GPRS去附着过程,并正在等待网络的应答;
6. GMM路由区更新已开始状态:在此状态下,GPRS终端已发起路由区更新过程,并正在等待网络的应答。
从以上状态的介绍中,我们可以看出GMM状态对GMM过程的管理,在某种状态下,GMM可实现或正在实现GMM的某种过程或某几种过程,通过这些过程,来实现GMM的功能。
3.2.2 GPRS更新状态
GPRS更新状态是跟SIM卡紧密相关的,它存储在SIM卡的非易失内存中,GPRS更新状态只在GMM执行GPRS附着过程、路由区更新过程、GPRS去附着过程、GPRS鉴权过程时发生改变。GPRS更新状态可分为:更新状态、非更新状态、漫游不容许状态三种状态。并且在更新状态、非更新状态(路由区标识(RAI)有效时)下,路由区标识、P-TMSI、GPRS密钥、GPRS密钥序列数(CKSN)等,可能都是有效的;在非更新状态(路由区标识(RAI)被删除时)、漫游不容许状态下,上述提到的P-TMSI,GPRS密钥等都是无效的,在SIM卡中这些数据都被置为删除状态。
路由区标识、P-TMSI、 GPRS密钥、GPRS密钥序列数等数据,在GMM的各种过程中,都会或多或少的用到,它们的存在与否会使GPRS网络在执行GMM的过程时,采取不同的流程。例如:当执行GPRS附着过程时,如果P-TMSI有效存在,则采用P-TMSI作为身份标识;如果P-TMSI无效时,则只能采用IMSI作为身份标识,并且GPRS网络在执行附着过程时,对这两种情况分别采用了不同的流程。
3.2.3 MM状态
MM状态分为三种状态:空闲态(IDLE(GPRS))、备用态(STANDBY)、就绪态(READY)。当GPRS终端执行GPRS附着过程时, MM状态从空闲态切换到就绪态;当GPRS终端执行GPRS去附着过程时,MM状态从就绪态切换到空闲态;
当终端GMM Ready定时器超时或终端收到网络发来的消息中STANDBY标志置为TRUE时,MM状态从就绪态切换到备用态;当GPRS终端发送LLC PDU到网络时,MM状态如果此时处于备用态,那么就从备用态切换到就绪态。当MM状态处于备用态时,只有GPRS终端跨路由区时,它才通知网络,在同一路由区进行小区切换时,不需要通知网络;当MM状态处于就绪态时,无论是否在同一路由区进行小区切换时,都需要通知网络,或由网络主动发起GPRS终端的小区切换。所以,GPRS终端通过GMM层的MM状态来控制什么时机将用户的位置信息通知网络的功能的实现。
4 实际工程应用
前文深入地研究了GMM的过程、状态控制,并且通过GMM过程实现了GMM的功能,基于上述内容,我们通过一个实际的工程来说明GMM层是如何应用到实际生活当中去的。在介绍实际应用之前,首先介绍一下终端的分类。GPRS终端分为A、B、C三类:A类终端是指该终端支持GPRS业务和GSM业务同时工作;B类终端是指在该终端上GPRS业务和GSM业务不可同时工作,但可通过信令使这两种业务交替工作;C类终端是指只支持GPRS业务的终端。
南京双电科技公司开发的GPRS无线上网卡支持GPRS业务和GSM业务交替工作,具有上网,电话,短消息功能,是GPRS的B类终端。本上网卡从技术层面上讲主要在于突破了一系列关键技术,在TI C55 DSP硬件平台上,完全以我们自主研发的软件模块为核心实现完整的GSM、GPRS及EDGE终端协议栈。图2是双电公司的GPRS无线网卡的协议栈分布图。
说该卡是B类终端,除了在硬件上提供足够和有效的资源外,在软件协议栈上,我们主要是通过实现B类终端GMM层所特定的过程来实现的。
主要实现以下特定过程:
1. 当网络运行在模式I时,由网络或GPRS终端发起去附着GPRS业务和GSM业务的过程,并且释放GMM上下文环境;
2. 当网络运行在模式I时,由GPRS终端发起附着GPRS业务和GSM业务的过程,并且建立GMM上下文环境;
3. 当网络运行在模式I时,由GPRS终端发起联合路由区更新过程。
通过实现这些特定的过程,可实现GPRS的B类终端所具备的同时监控GPRS和GSM业务,并通过信令实现二种业务的自由切换的功能。
经测试对比验证,在相同的网络环境下,我公司自主研发的该款卡的GMM层的各项性能指标均达到了国内外同类型产品。
5 结束语
本文系统地研究了GPRS协议栈中的GMM层协议,首先深入研究了GMM层中所实现的功能、过程、状态控制、安全机制等,在此基础上,通过一个工程,把对GMM层的研究应用到实际中去,产生了一定的经济效益和社会影响。
作为GPRS信令协议栈的GMM是在整个协议体系中起着非常重要的作用。由于第三代(WCDMA)无线终端协议栈L3层和GPRS终端协议栈L3层非常相似,因而对GPRS 终端协议栈GMM层协议所进行的研究和实现无论是对于现在还是将来,都具有很重要的意义。
由于本网页不支持图片与公式效果,如有需要请参阅杂志。
上一篇:无线局域网技术及其应用
下一篇:WAP应用安全的研究