51学通信技术论坛

 找回密码
 立即注册
搜索
楼主: 爱卫生

Primary PDP Context激活流程及实例     [复制链接]

Rank: 1

发表于 2012-2-9 20:51:19 |显示全部楼层
进来学习一下

使用道具 举报

Rank: 1

发表于 2012-3-13 11:13:10 |显示全部楼层
受益匪浅,非常感谢楼主!

使用道具 举报

Rank: 1

发表于 2012-3-16 14:50:50 |显示全部楼层
回复 爱卫生 的帖子

楼主,你好:
    看了你的回复,还是有点疑惑。我感觉(估计理解错了)原始问题的意思应该是#2Create PDP Context Request里GSN Address都是192.169.100.1,TEID Data I 和TEID Control Plane也都是0x32f02bf9。那么GGSN->SGSN的发送下行消息的时候,即使GGSN知道这是一个控制信令或者用户数据,但是GGSN是如何区分这条消息在UDP传输层面是应该发给SGSN上哪个IP+哪个port的呢,因为SGSN没有提供SGSN自己控制面和用户面的port。

----------其实我被这个问题引出的疑问有以下三个:
1)你在 GPRS循序渐进帖子里提到控制平面GTP-C端口号为UDP 2123,用户平面GTP-U端口号为2152,根据你的抓包来看,GGSN使用了2123,SGSN的端口没用这两个,那么是否意味着:GTP协议的GTP-C/GTP-U端口规定只事针对GGSN,SGSN和这没有关系,可以根据实现自行选择端口?
2)primary/secondary抓包里#2的TEID-Data I/TEID-Control Plane是一样的,和你回复的“SGSN发给GGSN的用户面和控制面IP可以是相同的,也可以不相同的,但是两个GTP协议的IE(信息元素)。但要区分的话,不是通过IP地址来区分,而是通过TEID。控制面和用户面的TEID一定是不一样的。” 是不一致的。我觉得你回帖中的“控制面和用户面的TEID一定是不一样的。”提到的TEID应该是指#2里SGSN发给GGSN的request里的TEID,而不是指#3里GGSN发给SGSN的response里的TEID吧?
3)GGSN需要给SGSN发个消息,同时也知道这个消息是Control面的还是Data面的,那么从传输层的角度来书,GGSN在SGSN提供的Control面IPAddress和Data IP一样的情况下,如何选取port呢,是不是有别的规范来做这个?


小弟对GPRS协议没怎么学习过,看到这个回帖一头雾水,希望楼主在方便时抽空做下科普工作,在此先谢谢了。

使用道具 举报

Rank: 9Rank: 9

懒

发表于 2012-3-19 21:17:39 |显示全部楼层
回复 ktpd00wen99 的帖子

1 UDP的端口号,在协议里没有说一定要源和目的端口都相同。不见得源端口也要用2123。

  规范29.060里的原话是:

The UDP Destination Port number for GTP-C request messages is 2123. It is the registered port number for GTP-C.

The UDP Destination Port number for GTP-U request messages is 2152. It is the registered port number for GTP-U.

The UDP Source Port is a locally allocated port number at the sending GSN/RNC.

  因此,GSN节点可以本地分配源端口,只需要在本地能够区分出上层应用即可。

2 谢谢,之前的回复确实不准确。已经更新。正确的应该如下。

SGSN发给GGSN的用户面和控制面IP可以是相同的,也可以不相同的。这是两个GTP协议的IE(信息元素)。一个GTP-C,一个GTP-U。要区分的话,不是通过IP地址来区分,而是通过TEID。控制面和用户面的TEID通常是不一样的。即使一样,也能够区分。在解封装的时候,GGSN是先解IP头部,然后解UDP,看到不同的端口号,就送给不同的进程(GTP-C和GTP-U)来处理。不同的进程再根据TEID来区分用户。

另外,#2的TEID是SGSN给GGSN分的,用于下行GTP包封装,而#3的TEID是GGSN给SGSN分的,用于上行方向GTP封装。两者没有直接联系。

3 这个问题的答案见第1个问题的答案。如果GGSN确定是用户面,则目的端口为2152,否则是2123。源端口可以随机定。也可以和目的端口一致。看厂家了。

www.gprshome.com: GPRS及移动通信技术学习交流分享平台。

使用道具 举报

Rank: 2Rank: 2

发表于 2012-4-28 16:19:58 |显示全部楼层
这个包下载下来后,用什么打开查看啊

使用道具 举报

Rank: 9Rank: 9

懒

发表于 2012-4-28 19:02:32 |显示全部楼层
回复 爱学习 的帖子

wireshark就可以。
www.gprshome.com: GPRS及移动通信技术学习交流分享平台。

使用道具 举报

Rank: 3Rank: 3Rank: 3

发表于 2012-5-2 20:48:26 |显示全部楼层
楼主,你这里面的控制面和用户面的TEID都是0x32f02bf9,这样难道不会有问题吗?

使用道具 举报

Rank: 9Rank: 9

懒

发表于 2012-5-2 20:53:59 |显示全部楼层
回复 imwoohan 的帖子

没关系的。因为Gn接口控制和用户面是分离的。通过udp端口号2123和2152区分。从传输层UDP查端口号,就可以交给上层的用户部分即GTP-C或GTP-U处理,因此TEID是可以复用的。就好象两个局域网,因为是彼此隔离的,因此可以使用相同的IP地址段。
www.gprshome.com: GPRS及移动通信技术学习交流分享平台。

使用道具 举报

Rank: 3Rank: 3Rank: 3

发表于 2012-5-2 21:01:43 |显示全部楼层
回复 爱卫生 的帖子

那言下之意就是ip地址+TEID+udp端口号唯一标志了一个 控制平面或者用户平面了?

使用道具 举报

Rank: 3Rank: 3Rank: 3

发表于 2012-6-8 11:44:50 |显示全部楼层
对我这种小白,一定要认真看帖子,多谢分享。
这种内争取搞定位置管理部分的知识点 <img src="static/image/smiley/comcom/28.gif" class="vm ...

使用道具 举报

Rank: 3Rank: 3Rank: 3

发表于 2012-6-8 14:28:28 |显示全部楼层
本来以为看了帖子基本明白了,没想到看了诸位的提问后才发现自己仍然一知半解。开始从头看起GPRS循序渐进。

使用道具 举报

Rank: 2Rank: 2

发表于 2012-6-19 21:03:51 |显示全部楼层
我突然有个问题,爱总,ggsn在收到create pdp context request后,跟radius和dhcp 的交互过程是怎么样的?能否解释下

使用道具 举报

Rank: 9Rank: 9

懒

发表于 2012-6-19 21:13:01 |显示全部楼层
dandaner00hcw 发表于 2012-6-19 21:03
我突然有个问题,爱总,ggsn在收到create pdp context request后,跟radius和dhcp 的交互过程是怎么样的?能 ...

现网中DHCP比较少用,可能一些企业用户有吧。

RADIUS现网中主要的作用有两个,一个是认证,但现在都是透明接入不需要认证,除非是一些企业用户。包括access request和access accept消息,可以用PAP或CHAP协议来做认证。还有一个作用是Accouting,作用是将MS的相关信息例如IMSI、MSISDN提供给WAP网关做一些业务的参考等。消息包括Accouting request、accouting response。

论坛已经开通全文搜索功能,可以搜索radius得到更多信息。具体过程参考这篇帖子:http://www.gprshome.com/forum.php?mod=viewthread&tid=1581RADIUS协议基本概念及带有RADIUS过程的PDP激活流程

www.gprshome.com: GPRS及移动通信技术学习交流分享平台。

使用道具 举报

Rank: 2Rank: 2

发表于 2012-6-20 09:56:37 |显示全部楼层
爱卫生 发表于 2012-6-19 21:13
现网中DHCP比较少用,可能一些企业用户有吧。 RADIUS现网中主要的作用有两个,一个是认证,但现在都是透明 ...

{:soso_e160:}爱总辛苦了

使用道具 举报

Rank: 1

发表于 2012-7-31 10:18:54 |显示全部楼层
版主,您好,我想问问,TBF和PDP的关系,是先建立PDP,还是先建立TBF?GPRS附着,PDP激活这些过程在什么信道传的?

使用道具 举报

Rank: 9Rank: 9

发表于 2012-7-31 19:40:36 |显示全部楼层
Erin 发表于 2012-7-31 10:18
版主,您好,我想问问,TBF和PDP的关系,是先建立PDP,还是先建立TBF?GPRS附着,PDP激活这些过程在什么信道 ...

一定是先建TBF后PDP,TBF建立好后就分配了相应的无线信道等物理资源。PDP属于上层数据,路(TBF)都没修好是不能建的。 附着、PDP激活都是PDTCH信道传递的。

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

使用道具 举报

Rank: 1

发表于 2012-8-2 14:18:40 |显示全部楼层
admin 发表于 2012-7-31 19:40
一定是先建TBF后PDP,TBF建立好后就分配了相应的无线信道等物理资源。PDP属于上层数据,路(TBF)都没修好 ...

     哦,好的,谢谢!
     我可以这么理解:就是根据TBF建立时的请求原因决定是GPRS附着,PDP激活,位置更新!
     PDP激活之后就可以进行分组数据的收发了。但是这个过程中,TBF释放时间我听说2-4s,如果没有分组数据收发,TBF就释放了,如果有数据要发送就会再次建立TBF连接。也就是PDP激活后还可能会有多次的TBF的建立和释放。
     例如,对于QQ来说:QQ要登陆先要建立TBF连接,然后PDP激活,PDP激活后是QQ登陆和QQ服务器的消息交互在PDTCH信道上。然后QQ就直接挂起,那么就只有QQ心跳,每一次QQ心跳就会重新建立TBF连接,等到下次心跳时TBF就已经释放了。所以QQ心跳很消耗CCCH资源。是吗?


使用道具 举报

Rank: 9Rank: 9

懒

发表于 2012-8-2 21:45:54 |显示全部楼层
Erin 发表于 2012-8-2 14:18
哦,好的,谢谢!
     我可以这么理解:就是根据TBF建立时的请求原因决定是GPRS附着,PDP激活,位 ...

基本是这样的。补充一下,就是现网中核心网下发的ready timer时间都比较长了,不是44秒,可能几百秒等等。这样QQ心跳来了就不需要寻呼MS了。而CCCH包括PCH和RACH、AGCH。PCH因为ready timer调长了而占用会减少,但后面两个用于建TBF不会减少了。

不是100%确定。供参考!

www.gprshome.com: GPRS及移动通信技术学习交流分享平台。

使用道具 举报

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

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

GMT+8, 2024-3-28 20:47 , Processed in 0.035361 second(s), 9 queries .

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部