51学通信技术论坛

 找回密码
 立即注册
搜索
查看: 13197|回复: 19
打印 上一主题 下一主题

GGSN技术规范-GGSN的功能要求   [复制链接]

Rank: 9Rank: 9

懒

跳转到指定楼层
楼主
发表于 2011-2-16 21:11:56 |只看该作者 |倒序浏览
一键分享 一键分享
本帖最后由 爱卫生 于 2012-10-14 23:49 编辑

GGSN的功能要求
一 会话管理功能
GGSN应支持规范中定义的PDP状态模型,应能存储和处理处于待命和准备就绪状态的MS的PDP上下文,能根据APN寻址到相应外部数据网。具体包括:
1、PDP上下文的激活
 MS发起的PDP上下文的激活
 MS发起的二次PDP上下文的激活
 网络发起的PDP上下文的激活(可选)
2、PDP上下文的修改
 SGSN发起的PDP上下文的修改
 GGSN发起的PDP上下文的修改
 MS发起的PDP上下文的修改
 RNC发起Iu连接释放引起的PDP上下文的修改
 RAB释放引起的PDP上下文的修改
3、PDP上下文的去活
 MS发起的PDP上下文去活
 SGSN发起的PDP上下文去活
 GGSN发起的PDP上下文去活
二 路由选择和数据转发功能
GGSN应具有将从上一个节点接收到的数据(PDP PDU)转发给路由中下一个节点的功能。GGSN应具有对PDP PDU排序的功能。GGSN应保证在GGSN与MS之间传送的N-PDUs的最大尺寸为1500 字节,对从外部数据网收到的大于上述要求的PDP PDU,GGSN应根据PDP的类型和具体实施要求对其进行分段、丢弃或拒绝。
GGSN应具有将来自外部数据网的PDP PDU用GTP字头和TCP/IP或UDP/IP字头进行封装的功能,并以这些字头中的相关地址信息作为标识,在GPRS骨干网中利用一条点到点的双向隧道来传输封装数据。对于去往外部数据网的PDP PDU,GGSN应去除其封装字头后再转发给外部数据网。
当MS的一个PDP地址对应多个PDP上下文时,GGSN应能根据分配给各PDP上下文的TFT来将下行N-PDU寻路到相应的GTP隧道。
三 位置管理功能
GGSN应具有位置管理功能,包括:
通过Gc接口或通过MAP-GTP转换节点向HLR请求MS的位置信息的功能;(可选)
配合SGSN实现移动性管理,主要是 MS在 不同 SGSN登录时的位置管理功能。
四 用户数据管理功能
GGSN中应能存储、修改和删除GGSN中的移动用户的有关数据,主要是PDP上下文中的内容。
五 消息屏蔽功能
GGSN在GTP解包后应对用户源地址进行检查并可以对其进行访问控制,防止用户通过地址伪装进行DoS攻击。另外,GGSN应具有网络控制的消息屏蔽功能,消息屏蔽功能可以选择允许/不允许哪些分组进入GPRS网,以保证GPRS网的安全,该功能可以通过外部设备如防火墙来实现。在GTP解包后应对用户源地址进行合法性检查,以保证GPRS网的安全,对目的地址不在IP地址池中的下行数据包进行丢弃处理。
六 计费信息收集功能
GGSN应能为每个激活的PDP上下文分配计费ID,并能收集每个MS使用外部数据网和GPRS网络资源相关的计费信息 G-CDR,并能将所收集到的计费信息通过Ga接口送往计费网关进行处理。
七 接入外部数据网的相关功能
GGSN应能支持以透明方式和非透明方式接入外部IP网。包括以下功能:
1、用户地址管理功能。
-GGSN应具有为MS动态分配IP地址的功能,或者应具有通过接入DHCP服务器等来实现动态分配IP地址的功能。
-GGSN应具有地址翻译和映射功能(可选),如:将分配给用户的静态IP地址翻译成相应的IMSI,将私有地址映射成合法地址等。
2、用户认证功能。
在非透明方式下, GGSN应具有接入RADIUS服务器实现用户认证的功能。为保证某些数据业务的计费要求,GGSN应能在GGSN侧按APN配置生成统一的Radius消息,并使用统一的Radius消息与外部Radius服务器通信。Radius消息及属性的定义详见3G TS 29.061: "General Packet Radio Service (GPRS); Interworking between the Public Land Mobile Network (PLMN) supporting GPRS and Packet Data Networks (PDN)".
3、隧道功能
要求支持IPv4及IPv6的GRE隧道和IPv6 over IPv4手工隧道功能,L2TP、IPsec等功能可选。
4、GGSN应支持DiffServ功能(RFC2474,2475),实现根据业务所属类型
(conversational, streaming, interactive, background)将其进行分类和标记功
能(可通过命令行等方式,进行灵活配置映射策略)。
八 网络时间同步功能
GGSN应具备NTP 客户端功能,可以通过NTPv3(RFC1305)协议实现时间同步。
www.gprshome.com: GPRS及移动通信技术学习交流分享平台。

Rank: 6Rank: 6Rank: 6Rank: 6Rank: 6Rank: 6

特殊贡献奖

沙发
发表于 2011-4-22 12:55:42 |只看该作者
总结的很好,学习了

使用道具 举报

Rank: 2Rank: 2

板凳
发表于 2011-5-23 11:37:47 |只看该作者
为什么版主的字都是这么小

使用道具 举报

Rank: 9Rank: 9

懒

地板
发表于 2011-5-23 11:52:07 |只看该作者
回复 chenhaonan 的帖子

    真是不好意思。很难找到特别合适的字体大小。因为这取决于客户机上浏览器的设置,分辨率的设置,以及不同的浏览器的效果也不同。另外,还有就是我对Discuz论坛的后台管理也是新手,现在还没有找到合适的插件去设置字体。不好意思。
   但如果大家觉得字体太小的话,可以在IE浏览器菜单中选择,查看-----》字体大小------》选择最大字体就可以大点了。
    所以我在发布的时候只能用统一的我电脑上的字体发布,即先用格式刷格式化,然后宋体 1号 +黑色。抱歉。
   
www.gprshome.com: GPRS及移动通信技术学习交流分享平台。

使用道具 举报

Rank: 2Rank: 2

5#
发表于 2011-5-23 12:04:47 |只看该作者
版主真有耐心,谢谢回答!
请问primary pdp context 和 secondary pdp context会公用一个控制面TEID,
1. 那么两个不同的pdp上下文(APN不同),它们的控制面TEID是一样的吗,还是分别分配的?
2. 控制面TEID和用户面TEID分开分配的吗,就是说控制面TEID在0~0xffffffff里分配,而用户面TEID在另外一个0~0xffffffff里分配,否则控制面TEID和用户面TEID怎么会有值相同的时候呢?

使用道具 举报

Rank: 9Rank: 9

懒

6#
发表于 2011-5-23 12:17:17 |只看该作者
回复 chenhaonan 的帖子

请问primary pdp context 和 secondary pdp context会公用一个控制面TEID,
1. 那么两个不同的pdp上下文(APN不同),它们的控制面TEID是一样的吗,还是分别分配的?

    答:是的。会分别分配。协议要求分配两个不同的。每一个primary pdp context都要有一个单独的TEID,这样在Gn接口才能识别出用户来。因此TEID是创建primary pdp context用到的create pdp context request消息的必选IE。
2. 控制面TEID和用户面TEID分开分配的吗,就是说控制面TEID在0~0xffffffff里分配,而用户面TEID在另外一个0~0xffffffff里分配,否则控制面TEID和用户面TEID怎么会有值相同的时候呢?

   答:是的。分开分配。但控制面TEID和用户面TEID可以允许相同,规范里面只说了要分配两个,并且单独分配,由单独的IE(GTP的信息元素)来承载,但规范并没有一定要两个值不相同。有些厂家的SGSN分配出来就是相同的值。
www.gprshome.com: GPRS及移动通信技术学习交流分享平台。

使用道具 举报

Rank: 2Rank: 2

7#
发表于 2011-5-23 13:05:43 |只看该作者
回复 爱卫生 的帖子

IMSI+NSAPI可以唯一确定一个pdp context:IMSI确定一个MS,一个MS的多个pdp context用NSAPI区分(5—15)。TEID(C)+NSAPI可以唯一确定一个pdp context:控制面TEID确定某个MS的所有有相同APN的pdp context(也就间接地确定了一个MS),NSAPI确定了其中的不同pdp context,即primary pdp context,secondary pdp context(若有的话),因为有相同APN的pdp context的NSAPI是不同的。
PDP地址+NSAPI可以唯一确定一个pdp context:某个MS的所有有相同APN的pdp context使用同一个分配给该MS的PDP地址,再由NSAPI去区分primary pdp context和secondary pdp context。
请问这样理解可以吗?
另外为什么SGSN和GGSN有控制面IP地址和用户面IP地址两个IP地址,而且它们可以相同也可以不相同?每个GSN是有多个控制面IP地址和多个用户面IP地址吗,还是分别只有一个?

使用道具 举报

Rank: 9Rank: 9

懒

8#
发表于 2011-5-23 17:15:33 |只看该作者
回复 chenhaonan 的帖子

   基本上90%你的理解都是对的。已经很不容易啦。
   关于不正确的纠正如下:
1 在你的文中提到IMSI+NSAPI可以唯一确定一个MS的pdp context,这是对的。但在后面又说PDP地址+NSAPI可以唯一确定一个pdp context,这是不对的。pdp context是由IMSI+NSAPI来区分。而且这个是在Gb接口才是用这种方式来确定。但如果是在Gn接口要识别一个MS的pdp context的话,则要使用TEID+NSAPI来区分。
2 “某个MS的所有有相同APN的pdp context使用同一个分配给该MS的PDP地址,再由NSAPI去区分primary pdp context和secondary pdp context。”前面一句是对的,但后面用NSAPI去区分就不对了。其实提到的MS的所有有相同APN的pdp context实际上就是primary pdp context以及多个secondary pdp context,其中第一次激活的一定是primary pdp context,secondary pdp context要依附于primary pdp context的存在。并且和primary pdp context共用很多控制面的信息。不恰当的比喻,鸡生蛋,如果还没生出来。那鸡没了。蛋也存活不了。要区分secondary pdp context 实际上由一个叫Linked TI来进行关联的。primary pdp context有一个事务ID(TI),secondary pdp context通过linked TI这个参数与之相关联就可以实现绑定了。关于这两个pdp context的关系实例可以参考http://www.gprshome.com/forum.php?mod=viewthread&tid=240&extra=page%3D1 “Secondary PDP Context激活流程及实例”。

   针对你提出的问题:
1 另外为什么SGSN和GGSN有控制面IP地址和用户面IP地址两个IP地址,而且它们可以相同也可以不相同?
   答:因为这涉及到两个隧道,一个GTP-C,一个GTP-U,因为对应到两个平面,控制和用户平面。他们的路由路径可以是不一样的。这样,可以使得用户平面在传递的时候选择一个最佳路由减少延迟。规范并没有要求一定要这两个IP相同。所以它们可以相同可以不相同。并且给厂家在设计产品的时候提供了一些灵活性。例如一些硬件板子只能处理GTP-C,不能处理GTP-U,可能就需要两个IP,当然也可以使用相同的IP。

2 每个GSN是有多个控制面IP地址和多个用户面IP地址吗,还是分别只有一个?
    答:是的。分别只有一个。但这只是针对一个MS来说。归纳起来应该是:
    针对一个MS,它在激活成功后所有的控制平面的IP地址都是一样的,直到它被去激活。在去激活之前可能还有别的信令消息,例如PDP修改流程也是使用相同的TEID。
               它在激活成功后所有的用户平面的IP地址都是一样的,直到它被去激活。
www.gprshome.com: GPRS及移动通信技术学习交流分享平台。

使用道具 举报

Rank: 2Rank: 2

9#
发表于 2011-5-23 17:50:46 |只看该作者
回复 爱卫生 的帖子

一个MS,创建成功第一个PDP Context后,有了SGSN Address for signalling,SGSN Address for user traffic,GGSN Address for Control Plane,GGSN Address for user traffic。再创建第二个新的PDP Context,跟第一个PDP Context使用不同的TEID,但这4个地址SGSN Address for signalling,SGSN Address for user traffic,GGSN Address for Control Plane,GGSN Address for user traffic是相同的,对吗?一个MS激活后,所创建的所有PDP Context都使用相同的上述4个地址?如果第二个MS使用跟第一个MS相同的SGSN,GGSN。那么它创建PDP Context时所使用的SGSN Address for signalling,SGSN Address for user traffic,GGSN Address for Control Plane,GGSN Address for user traffic是怎样的呢?跟第一个MS所使用的地址一样吗?

使用道具 举报

Rank: 9Rank: 9

懒

10#
发表于 2011-5-23 18:16:12 |只看该作者
回复 chenhaonan 的帖子

1 再创建第二个新的PDP Context,跟第一个PDP Context使用不同的TEID。但这4个地址SGSN Address for signalling,SGSN Address for user traffic,GGSN Address for Control Plane,GGSN Address for user traffic是相同的,对吗?
   答:创建的第二个新的PDP Context,也就是Secondary PDP Context,和第一个PDP Context即Primary PDP Context使用相同的控制面TEID,而不使用相同的用户面TEID(因为二次激活后后续还有payload要传)。这四个地址,SGSN Address for signalling,SGSN Address for user traffic,GGSN Address for Control Plane,GGSN Address for user traffic在规范TS29.060当中指明(见7.3.1章节)是一定要重新分配的,例如,SGSN Address for signalling,SGSN Address for user traffic是在create pdp context request消息(不论是primary还是secondary pdp context)必须要携带的必选IE,因此是一定要为二次激活重新分配的。所以primary pdp context和secondary pdp context用户和控制平面所使用的IP地址一定是分开的两个IP。但这两个IP在规范中并没有说不可以相同。因为在上面链接的抓包例子当中实际上这4个地址对于同一个MS的多个上下文来说是相同的。可以作为厂家的一种实现方式。

2 如果第二个MS使用跟第一个MS相同的SGSN,GGSN。那么它创建PDP Context时所使用的SGSN Address for signalling,SGSN Address for user traffic,GGSN Address for Control Plane,GGSN Address for user traffic是怎样的呢?跟第一个MS所使用的地址一样吗?
   答:理论上两个MS使用的SGSN控制和用户面地址可以是不一样的,但一般来说都是一样的。厂家在设计产品的时候,对于一个SGSN上的多个用户的激活基本都采用相同的SGSN Address for signalling,SGSN Address for user traffic。GGSN上也是一样的。不会为某个MS单独去设置控制或用户面的TEID和IP地址。
www.gprshome.com: GPRS及移动通信技术学习交流分享平台。

使用道具 举报

Rank: 2Rank: 2

11#
发表于 2011-5-23 18:37:43 |只看该作者
耐人寻味,每次回答都这么详细,多谢!{:soso_e179:}

使用道具 举报

Rank: 2Rank: 2

12#
发表于 2011-10-30 00:30:40 |只看该作者
回复 爱卫生 的帖子

十分感谢 学习啦

使用道具 举报

Rank: 8

义 超级之星 勤 论坛核心会员

13#
发表于 2011-11-20 04:30:47 |只看该作者
回复 爱卫生 的帖子

规范并没有要求一定要这两个IP相同。所以它们可以相同可以不相同。并且给厂家在设计产品的时候提供了一些灵活性。例如一些硬件板子只能处理GTP-C,不能处理GTP-U,可能就需要两个IP,当然也可以使用相同的IP。

        不太理解,当GTP-C和GTP-U指定同样的地址时该如何处理,这样还分信令和用户平面吗?
欢迎多多交流

PS CORE & SS7 & SIGTRAN & IP

有相关的专业技术网站/Q群也多谢推荐

使用道具 举报

Rank: 9Rank: 9

懒

14#
发表于 2011-11-20 19:17:58 |只看该作者
yonka 发表于 2011-11-20 04:30
回复 爱卫生 的帖子

“规范并没有要求一定要这两个IP相同。所以它们可以相同可以不相同。并且给厂家在设计 ...

  相同没有关系的。即使相同,还有UDP端口号可以区分。GSN节点在解包时,首先是IP层,根据目的IP发现是GTP-C或GTP-U的Service IP(假设这两个地址相同),然后再往上解UDP层,发现端口号是2123或者是2152,这样如果是前者,判断出来是GTP-C的协议栈,送给GTP-C相应的进程和板卡进行处理,而2152也会送给相应的处理GTP-U的进程和板卡进行处理。
  没有关系的。GTP-C和GTP-U隧道的TEID都可以相同的,但不同用户的TEID肯定不同。因为这样可以达到节省Gn接口地址资源的目的。只要能在GSN节点上能够区分出是哪个用户的PDP上下文即可。
www.gprshome.com: GPRS及移动通信技术学习交流分享平台。

使用道具 举报

Rank: 4Rank: 4Rank: 4Rank: 4

15#
发表于 2012-7-13 14:36:55 |只看该作者
留着,有用

使用道具 举报

Rank: 4Rank: 4Rank: 4Rank: 4

16#
发表于 2012-7-13 14:40:15 |只看该作者
表示评论还看不懂

使用道具 举报

Rank: 7Rank: 7Rank: 7Rank: 7Rank: 7Rank: 7Rank: 7

版主

17#
发表于 2013-6-21 11:30:06 |只看该作者
我现在是是在底层采集设备采集过来的数据进行处理,统计,发现一个SGSN和GGSN之间的一个省的一个小时的流量达到6303TB,这个算是正常么?
一般情况下,一个省的流量会是多少,上海,北京和西藏这种都可以举个例子么?

以后要多来论坛学习学习~~ <img src="static/image/smiley/comcom/1.gif" c ...

使用道具 举报

Rank: 9Rank: 9

18#
发表于 2013-6-21 14:34:31 |只看该作者
tonyhe 发表于 2013-6-21 11:30
我现在是是在底层采集设备采集过来的数据进行处理,统计,发现一个SGSN和GGSN之间的一个省的一个小时的流量 ...

一个小时,一个省的一个SGSN和GGSN之间的流量6300TB?这个太夸张了,如果是真实流量,移动该做梦都笑醒了。

从几个方面的数据来论证:

1 http://data.eguan.cn/yidonghulian_139907.html 这里有移动2012年上半年的所有无线数据流量总计为1222亿MB。约122200TB及12万TB。那如果按照你的一小时6300TB来计算,每天只按8小时高峰期算,一年只安200天算。那就是6300*8*200=10080000TB,约1000万TB。差太远。

2 按钱来算。还是上面的链接,1222亿MB,收入是284.81亿元,每M的ARPU值约为0.2元左右。如果你的6300TB,那就是6300*100万M*0.2元,也就是说这个运营商一个小时就可以赚10个亿。

3 按SGSN的出口带宽算。SGSN很少能有10G的满载流量满负荷跑,就按10G来算,全双工20G。一个小时3600秒。这个SGSN累死也才能跑72000G,也就是72TB。

所以鉴定为假。

51学通信(www.51xuetongxin.com):致力打造最好的通信技术在线学习平台 。

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

站长邮箱|Archiver|51学通信 ( 粤ICP备11025688 )

GMT+8, 2024-11-25 23:47 , Processed in 0.032643 second(s), 12 queries .

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部