随笔-144  评论-80  文章-1  trackbacks-0

走近GPRS


崔绘


对于一个技术人员而言,GPRS是一个美丽而又复杂的系统,它继承了无线领域几代技术的精华,又吸收了数据网络数十年成功的经验。如此种种,决非一篇文章可以尽数。本文试图从原理角度介绍GPRS网络元素、数据传输协议和操作流程,希望能揭开冰山的一角,为大家了解GPRS技术提供帮助。
作为一个用户,他所见到GPRS网络是一个承载网,与以太网,帧中继网无异。而从系统工程师的角度看,这个网络就复杂多了,为了提供二层承载,GPRS网络引入了许多新的网络元素和数据处理方法。
数据由用户的手机到因特网要经过四个设备,MS(Mobile Station,手机)、BSS(Base Station System,基站系统)、SGSN(Serving GPRS Support Node,服务GPRS节点)和GGSN(Gateway GPRS Support Node,网关GPRS节点)。其中,SGSN和GGSN是新增设备,而MS和BSS需要进行设备的软硬件升级。
它们的主要功能如下:
MS:一方面,处理空中接口的上下行传输;另一方面,将数据信息发给与之连接的计算机。
BSS:通常包括一系列设备。负责分配空中的信道资源,并在手机和SGSN之间转发信息。
SGSN:是无线部分和数据网部分的分界线,负责管理手机的移动,并与GGSN协作完成用户数据在Gn网络上的传输。
GGSN:是GPRS网络与外网的分界线,对内负责Gn网络的传输,对外是一台因特网路由器。其中的BGGSN(Border GGSN)负责连接不同运营商之间的Gn网络,实现网间漫游。上述四个设备将用户的计算机和因特网连接起来,完成了无线上网的数据传输工作。这之间用到的接口有:
R:计算机与GPRS手机之间的接口。可以基于多种传输方法,如RS232、红外等等。
Um:空中接口,在手机与BSS之间。接口上的传输格式与GSM无异,但逻辑信道的定义和分配有很大差别。
Gb:BSS和SGSN之间的接口。可以是租用的帧中继网络或者是运行帧中继封装协议的专线。
Gn:SGSN和GGSN之间的接口。所有的SGSN和GGSN构成了GPRS的骨干网,这个网络是运营商的私有网络,与外网之间没有路由。GGSN将外网的信息封装后在Gn网络上传输。
Gi:GGSN和外网之间的接口。在这个接口上可以设置隧道(Tunnel),以保证用户到企业内部网之间的安全性。 除此之外,还有Gp接口,在BGGSN和其他运营商的网络之间,以便实现网间漫游。所有这些设备和接口如图所示(双线标出的是数据通路):

图:GPRS网络的设备与接口
在上图中,还包括一些传统的GSM设备,如MSC(Mobile Switch Center,移动交换中心)、HLR(Home Location Register,用户位置寄存器)、SMS(Short Message Service,短消息服务中心)等等。这些设备与GPRS网络元素之间的接口主要是信令接口。比如:
Gr接口,在SGSN和HLR之间。用户向SGSN登录时,SGSN在HLR中获得用户的登记信息和鉴权信息。
Gs接口,在SGSN和MSC之间。主要为了便于一些组合的操作,例如,一个用户要同时登录GPRS和GSM两个网络,SGSN就要通过这个接口将对GSM网络的登录请求转发给MSC。
Gd接口,在SGSN和SMS之间。有了这个接口,短消息就可以通过GPRS网络传送,而不必占用GSM的资源。
Gc接口,在GGSN和HLR之间。设置它的目的是为了支持外网主机发起连接。通常连接是由手机发起的,SGSN在对用户鉴权之后,找到指定的GGSN,并与之建立数据通路。如果联接是由外网主机发起的,信息到达GGSN之后,GGSN就需要通过Gc接口查询HLR:(1)目的IP对应哪一台手机;(2)这台手机现在由哪一个SGSN控制。这个接口目前还没有实现。
上面的所有这些设备和接口是从网络功能上讲的。在现实的GPRS网络中,还需要一些其它的辅助设备。例如网络管理设备、Gn网络的路由器、交换机和应用支持设备(DNS和DHCP服务所在的主机)等等。
了解一个系统,除了它的组成之外,我们最关心的莫过于系统中所使用的协议。GPRS引入了许多新的协议,它们大多出现在数据传输通路上,如下图所示:

图 GPRS所使用的数据传输协议
数据包从外网传到手机要经过四个接口,Gi、Gn、Gb和Um。下面我们就顺序介绍在这个过程中所使用到的传输协议。
Gi接口,外网与GGSN之间的接口
在这个接口上没有新的协议。与普通的路由器一样,GGSN利用现有的传输方法,接收二层数据帧。之后,做帧处理,得到IP数据包。分析该IP包的目的地址,恰为本地PDP Context所标示的某一手机地址,则将此数据包送至Gn接口的软件模块,做进一步处理。
Gn接口,GGSN与SGSN之间的接口
最先对数据包做处理的GTP(GPRS Tunneling Protocol)协议,它实现了从GGSN到SGSN的虚拟传输通路,即隧道。隧道的优点有二,一是便于手机的移动,当手机由一个SGSN转移到另外一个SGSN的控制下时,只需改变GTP的配置,使隧道的末端发生变化即可,对于被承载的IP数据包来说是透明的;二来,在Gi和Gn两个网络之间,即外网和运营商网络之间不存在路由,只有封装关系,安全性得到了保障。
Gn网络本身是一个TCP/IP网络,Gn网络中的元素都是靠IP来寻址的。GTP协议数据包对于Gn网络来说是高层的应用数据,需要由TCP或UDP承载,对应GTP应用的四层端口号是3386。之后, TCP或UDP的数据包进一步封装成IP包,此包的目的地址即为目标SGSN的地址。
Gn网络中的IP包传送也是靠一系列的路由器和交换机来完成的。注意,这时传送的是运营商内网IP(或者内层IP、下层IP),与此相对应,封装在GTP协议内部的IP叫做外网IP(或者外层IP、上层IP)。
数据到达SGSN之后,层层解封,最终还原出用户的IP数据包,交给IP Relay软件模块。
Gb接口,SGSN和BSS之间的接口
首先,SNDCP(Sub-Network Dependent Convergence Protocol)对IP数据包做同一化处理,这一步的目的是提高GPRS的可扩展性,未来,只需改变SNDCP就可以适应新的三层协议,比如IPv6。除此之外,SNDCP还负责数据的压缩和分段,压缩的目的是节约空中接口带宽,分段的目的是适应下层LLC的MTU(Maximum Transmission Unit,最大传输单元)。
LLC(Logical Link Control)协议负责从SGSN到手机的数据传输。它的服务对象有三,SNDCP数据包(即用户数据)、用户信令和短消息。服务的类型有面向连接和无连接两种,用户可以根据QoS要求选择。
BSSGP(Base Station System GPRS Protocol)是SGSN与BSS通讯的最上层协议,故而它不但发送上层的LLC数据,还传输SGSN对BSS的控制信息,如对手机的呼叫(Paging)等等。
NS(Network Service)提供网络传输服务,目前,这个服务是基于帧中继PVC的。也就是说,Gb接口是帧中继接口,可以租用帧中继服务商的线路,也可以在专线上运行帧中继协议。
数据到达BSS之后,同样是层层解封,最终得到的是LLC数据帧,BSS并不对LLC帧做处理,而只是透明转发。
Um接口,BSS和手机之间的接口
任何由空中接口传输的数据,必须先经过两个协议的处理,RLC(Radio Link Control)和MAC(Media Access Control)。 RLC将LLC数据帧拆分成便于空中传输的数据块,并负责空中接口的可靠性保障。数据块的大小依Coding Scheme的不同,可能是181bits、268bits、312bits和428bits。
MAC的功能是控制空中资源的使用,由于一个用户可以使用多个信道,多个用户也可以使用一个信道,而且,资源的分配是动态的,所以下行传输时,MAC必须标识当前的数据块是给哪一个手机的,上行传输时,必须指定当前资源由谁使用。
加上LLC和MAC头之后,数据块被卷积(Convolutional Coding)和交织(Interleaving)。卷积指在数据中添加冗余信息,以减少非连续比特错误。卷积处理之后的数据块统一为456比特。交织是将数据块交叉分散到四个突发序列(Normal Burst)中,可以抵抗连续比特错误。
经过上述处理,最终得到的突发序列与GSM无异,每个包含114比特的数据信息。它们采用和GSM同样的方式,通过空中接口,到达手机。手机做如图的解封之后,还原出IP数据包。至此,IP包通过了GPRS网络,承载的功能完成了。
控制GPRS操作的有两个重要的Context,在SGSN之前(靠近手机一侧)有MM Context,SGSN之后(靠近网络一侧)有PDP Context。
MM Context负责移动管理,它有三种状态,空闲(Idle)、就绪(Ready)和守候(Standby)。手机开机,执行登录网络操作,手机的状态由空闲转至就绪。在就绪状态下,手机可以收发数据。一段时间没有数据收发,手机将转入守候状态。这时,网络中有手机的注册信息,但手机基本不占用网络资源。在守候状态下,手机可以申请资源进行上行传输,位置更新;网络方也可以通过Paging发起下行传输,传输一旦开始,手机就返回就序状态。在正常状态下,手机的MM Context在就绪和守候两者之间。也就是说,无论网络还是手机都随时可以发起数据传输,这就是GPRS宣称的一直在线(Always Online)功能,与传统的上网方法相比,效率着实提高不少。
PDP Context负责数据的传输,任何数据传送之前,手机要建立PDP Context,必备的参数包括手机的IP地址,APN(Access Point Name,访问点名字)等等。有了这些参数,SGSN可以发起建立一条到GGSN的数据传输通路。IP地址的动态分配也是在这个过程中完成的。
GPRS服务的Qos服务质量可以从五个方面规定。
  • 优先级。分为高中低三种。
  • 可靠性。GPRS从四个方面评价可靠性,GTP是否重传,LLC是否重传,LLC是否带数据校验和空中接口是否重传。目前的实现大多是GTP、LLC不重传,LLC带数据校验,空中接口有重传。
  • 延迟。协议规定了三种量化的延迟标准和尽最大可能传输。目前实现的是尽最大可能传输。所有的延迟测量都是在Gi和R接口之间进行的。
  • 平均速率。分为十九级,目前实现的尽最大可能传输。
  • 突发速率。分为九级,从8Kbps到未来的2Mbps。
合理的数据传输计费方法应该综合考虑数据量与服务质量。不过,计费并不是GPRS协议规定的内容,它的方式将由系统运营商决定。
正如本文开篇所言,GPRS是一个非常复杂的系统,决非一篇文章可以尽述。如果你想更加系统地了解GPRS,最好的方法莫过于阅读ETSI的GSM 03.60协议 GPRS Service Description。

(网页编辑:嘉佳
posted on 2006-09-07 11:45 小力力力 阅读(3508) 评论(0)  编辑  收藏

只有注册用户登录后才能发表评论。


网站导航: