51学通信技术论坛

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

对于TLLI/TEID/NSAPI的一点疑问   [复制链接]

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

特殊贡献奖

跳转到指定楼层
楼主
发表于 2011-4-14 01:36:53 |只看该作者 |倒序浏览
一键分享 一键分享
问题一:
TLLI是表示MS与SGSN之间的一条逻辑链路,NSAPI是用来区别在MS PDP-SAP,在GSN同一个用户的多个PDP上下文,而TEID又是区分GSN之间GTP所建立的每个用户TUNNEL.对于每个单个概念貌似都好理解。但是在看PDP Context Activatio抓包时这些参数同时都会出现,总感觉这些标示在不同阶段,不同参考点之间存在着一定的联系,但是又摸不着头脑,还望版主能解惑,谢谢!
问题二:
说到这里再请教个问题,就是最近看PDP激活的一些文档时,总是会提到多个PDP上下文的激活,这里也不是很理解,一般的话我们的手机终端同一时刻不是只能访问一个APN么,比如说移动的,要么CMNET,要么CMWAP?是不是一个APN就对应一个PDP上下文激活,多个PDP上下文激活的话是不是会对应多个APN呢?像多个PDP上下文激活能否举个具体的场景呢,便于理解。(下面的场景是否为多个PDP上下文激活?一台手机终端通过GPRS的CMWAP APN正在访问WAP的页面,而后手机终端又和PC通过蓝牙或是数据线相连,这时PC通过手机的CMNET APN又在上互联网)
问题三:
还有看到一些PDP二次激活的问题,也不是很懂,比如说我现在使用CMNET的APN访问互联网,而后突然这时我又打开了一个wap.baidu.com的WAP页面这个是不是会使用到CMWAP的APN?而后二次激活呢?小弟不怎么懂,若是问题较幼稚,还望版主见谅。

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

特殊贡献奖

沙发
发表于 2011-4-14 17:58:58 |只看该作者
今天在看文档对问题一又有了一些自己的理解,不知道对不对,还望版主指正,TLLI是MS-SGSN之间区分不同用户的,而且在GMM层使用P-TMSI区分用户而在BSSGP层把这个值继承了下来压在TLLI段(除Random TLLI)。而TEID是SGSN-GGSN之间区分不同用户的。
SAPI是在MS-SGSN之间区分同一个用户的不同业务应用。NSAPI是在SGSN-GGSN之间区分同一个用户不同业务应用。
(在版主提供一些抓包文件当中发现SNDCP层、GMM层、GTP层都有NSAPI这个字段,不知这个字段为什么要在协议栈的多层中都要定义呢?)
入门者,问题较多,还望版主见谅!{:soso_e100:}

使用道具 举报

Rank: 9Rank: 9

懒

板凳
发表于 2011-4-27 16:58:05 |只看该作者
不好意思。居然没看到你的提问。如果下次你发现有问题,我3天之内都没有回复的话,记得给我一个站内短消息。不管我知不知道一定会回复的。
是这样的。
1)在GPRS网络中有很多用户,而且每个用户都有自己的一个或多个PDP上下文,网络侧的各个节点需要将它们识别出来。在Gn接口,区分用户的PDP上下文就用的TEID。而TLLI,是在LLC PDU在LLC层对一个MS的标识。当TLLI区分出一个用户后,就可以用NSAPI来区分这个MS的上下文了。但TLLI+NSAPI是在Gb接口来标识每个MS的PDP上下文的。假设A手机有两个PDP上下文,则TLLI是相同的。但会有两个NSAPI。一个是5,一个是6。此时B手机上来了,则网络侧会分配一个新的P-TMSI,基于这个P-TMSI产生一个新的TLLI来标识B手机。但B手机如果有两个PDP上下文的话,也是5和6。这是不变的。
2)多个PDP上下文可以是指多个APN,也可以是在同一个APN内的多个PDP上下文。例如cmwap这个APN里有不同的应用。如HTTP、IMS视频等。对不同应用的QOS需求是不一样的。这可以对应到两个PDP上下文。一个是Primary PDP Context,另一个是Secondary PDP Context,需要通过相应的激活流程才能激活。我们一般来说的PDP激活流程其实是指的Primary PDP Context的激活。还是用户A,它可以用Primary PDP Context来请求HTTP业务,只需要一个比较低的QOS,另外,它可以用Secondary PDP Context激活流程来激活Secondary PDP Context,来请求IMS视频业务要求一个较高的QOS,但这两个PDP上下文是属于同一个APN的。如cmwap。
“(下面的场景是否为多个PDP上下文激活?一台手机终端通过GPRS的CMWAP APN正在访问WAP的页面,而后手机终端又和PC通过蓝牙或是数据线相连,这时PC通过手机的CMNET APN又在上互联网)”
    这个也叫多个PDP上下文激活。但涉及到多个APN。这个在规范里其实是允许的。但在现网里不一定允许。
3)第三个问题其实和第二个问题是一样的。二次激活就是指的Secondary PDP Context,指的是在同一个APN中,如果需要访问一些对QOS要求更高的业务时,可以通过Secondary PDP Context激活流程来做二次激活。这是一个专门的流程。在TS23.060中定义。

   "说我现在使用CMNET的APN访问互联网,而后突然这时我又打开了一个wap.baidu.com的WAP页面这个是不是会使用到CMWAP的APN?而后二次激活呢?"。这个不是二次激活。访问wap.baidu.com用的是哪个APN,取决于你在MS里选择的哪个APN,肯定会让你选择的。CMNET这个APN理论上也可以去访问wap.baidu.com。
  

关于你的第2篇回复的回复:
1)TLLI是MS-SGSN之间区分不同用户的。而且在GMM层使用P-TMSI区分用户而在BSSGP层把这个值继承了下来压在TLLI段(除Random TLLI)。而TEID是SGSN-GGSN之间区分不同用户的。-----   这么说基本是对的。GMM层也可以通过IMSI来区分用户。TEID不光是区分用户的。而是可以区分用户的每个PDP上下文。如果这个用户有多个PDP上下文,则会分配多个TEID来区分。
2)SAPI是在MS-SGSN之间区分同一个用户的不同业务应用。NSAPI是在SGSN-GGSN之间区分同一个用户不同业务应用。---- 关于SAPI的描述是对的。关于NSAPI的描述不完全准确。NSAPI的作用是标识某个MS的多个PDP Context(如果它有的话)。因为NSAPI的4个bit,所以最多16个PDP上下文,减去0-4个预留值。那可用的还有11个值。因此也就是说一个MS理论上最多是可以激活11个PDP上下文。这些PDP上下文可以是在一个APN中,也可以是跨越多个APN的。
  SNDCP层是在用户传递payload的时候,才有的一个特殊层。如果信令消息的话,是没有SNDCP层的。因为它的主要功能是压缩。数据包的封装是从上往下,每层都需要识别出是哪个用户。所以SNDCP层也是需要一个标识来识别出这是哪一个MS的PDP上下文,这就是NSAPI,交给LLC层可以通过TLLI来识别MS。GMM层是手机发出来的,用户标识自己请求的这个上下文是哪一个。GTP层也是同样的。在Gn口标识用户是哪个上下文的。
www.gprshome.com: GPRS及移动通信技术学习交流分享平台。

使用道具 举报

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

特殊贡献奖

地板
发表于 2011-5-1 00:27:43 |只看该作者
多谢版主又用较长文字回答了小弟的问题,理解了许多。等用户等级提高了,上传点资料造福群众啊。呵呵。

使用道具 举报

Rank: 9Rank: 9

懒

5#
发表于 2011-5-1 12:16:40 |只看该作者
回复 Albert 的帖子

   谢谢你。Albert。不用客气。这本来就是一个技术交流的平台。以后多交流。{:soso_e100:}
www.gprshome.com: GPRS及移动通信技术学习交流分享平台。

使用道具 举报

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

版主

6#
发表于 2011-5-29 15:43:54 |只看该作者
回复 爱卫生 的帖子

“(下面的场景是否为多个PDP上下文激活?一台手机终端通过GPRS的CMWAP APN正在访问WAP的页面,而后手机终端又和PC通过蓝牙或是数据线相连,这时PC通过手机的CMNET APN又在上互联网)”
    这个也叫多个PDP上下文激活。但涉及到多个APN。这个在规范里其实是允许的。但在现网里不一定允许。
----------------------
有厂商支持现网把二次激活用feature关闭掉,这就意味着:MS无论用什么APN,同时进行2个以上的业务应用激活,无论这些业务应用的Qos相同与否,都会有各自的PDP上下文,即多业务多PDP上下文。

使用道具 举报

Rank: 9Rank: 9

懒

7#
发表于 2011-5-29 16:28:48 |只看该作者
回复 gprssanling 的帖子

  谢谢你的补充。关于MS的多PDP上下文,论坛还有篇帖子在讨论。PDP上下文详解
  实际上,Multiple PDP 上下文分为两种,一种是在相同APN内的,1个Primary+N个Secondary PDP上下文,还有一种是MS同时访问不同APN,如cmwap和cmnet,这个叫多个Primary PDP上下文。这种情况下对应到两个PDN网络,物理上就是分开的。所以MS肯定可以分别请求相同或不同的QOS。但如果是在设备上禁止二次激活,那对应的应该就是第二种情况---Multiple Primary PDP上下文。但这种情况,我有印象好像在现网某些地方是禁止的。只允许MS在同一时刻访问一个APN。即使他签约了多个APN。

点评

weishengzi  现网禁止二次激活的情况应该多吧,个别厂商的GGSN二次激活功能在去年支持的都还不怎么好  发表于 2011-7-25 18:01:20
www.gprshome.com: GPRS及移动通信技术学习交流分享平台。

使用道具 举报

Rank: 1

8#
发表于 2011-9-23 10:29:37 |只看该作者
回复 爱卫生 的帖子

解释的还是挺清楚的, 这个问题也困扰我很久了, 感谢一下

使用道具 举报

Rank: 2Rank: 2

9#
发表于 2011-10-26 17:24:29 |只看该作者
解释清晰明了。

使用道具 举报

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

10#
发表于 2011-12-8 11:30:22 |只看该作者
我之前阅读sndcp协议时也有对NSAPI的疑问,现在明白了。感谢版主!

使用道具 举报

Rank: 1

11#
发表于 2012-4-13 10:12:55 |只看该作者
1、在ms和sgsn之间,tlli+nsapi唯一确定一个pdp,在sgsn和ggsn之间,teid+nsapi唯一确定一个pdp;
2、一个用户可以同时使用多个apn,比如通过3gnet上网的同时用3gwap收到彩信;
3、二次激活是指使用数据业务的时候,由于手机侧上报的qos有所改变造成的流程,一般手机不支持,常见于测试机。

使用道具 举报

Rank: 2Rank: 2

12#
发表于 2012-10-25 11:06:15 |只看该作者
森林的晨雾 发表于 2012-4-13 10:12
1、在ms和sgsn之间,tlli+nsapi唯一确定一个pdp,在sgsn和ggsn之间,teid+nsapi唯一确定一个pdp;
2、一个 ...

在sgsn和ggsn之间,用teid就唯一确定一个pdp的吧,好像不需要nsapi 。请问版主,是吗?

点评

爱卫生  需要NSAPI的。因为primary pdp context和secondary pdp context的控制面TEID是共用的。只有用户面TEID是分开的。所以控制面光靠TEID无法需要primary和secondary。可以参考信令流程实例版块有个二次激活实例供参考。  发表于 2012-10-26 01:00:39

使用道具 举报

Rank: 8

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

13#
发表于 2012-11-6 07:13:17 |只看该作者
爱卫生 发表于 2011-4-27 16:58
不好意思。居然没看到你的提问。如果下次你发现有问题,我3天之内都没有回复的话,记得给我一个站内短消息。 ...

"  SNDCP层是在用户传递payload的时候,才有的一个特殊层。如果信令消息的话,是没有SNDCP层的。因为它的主要功能是压缩。数据包的封装是从上往下,每层都需要识别出是哪个用户。所以SNDCP层也是需要一个标识来识别出这是哪一个MS,这就是NSAPI。GMM层是手机发出来的,用户标识自己请求的这个上下文是哪一个。GTP层也是同样的。在Gn口标识用户是哪个上下文的。"

NSAPI能识别一个用户吗?5~15?怎么理解?

点评

爱卫生  谢谢指正。上面说的不对,已经更新。用户还是在LLC层通过TLLI来区分。但SNDCP层的NSAPI用于区分用户的多个上下文。  发表于 2012-11-6 22:49:20
欢迎多多交流

PS CORE & SS7 & SIGTRAN & IP

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

使用道具 举报

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

14#
发表于 2012-11-28 13:59:41 |只看该作者
虽然看的晚但收获大,感谢爱楼主。

使用道具 举报

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

15#
发表于 2012-11-28 14:06:42 |只看该作者
请问爱楼主一个问题?为什么llc层要用到local,foreign和random ttli?他们的区别是什么哪?

点评

爱卫生  建议看看这篇:http://www.gprshome.com/forum.php?mod=viewthread&tid=603  发表于 2012-11-28 21:47:26

使用道具 举报

Rank: 3Rank: 3Rank: 3

16#
发表于 2012-12-20 17:38:32 |只看该作者
每次看都有收获啊。。

使用道具 举报

Rank: 2Rank: 2

17#
发表于 2014-3-6 14:08:33 |只看该作者
ccc123 发表于 2012-11-28 14:06
请问爱楼主一个问题?为什么llc层要用到local,foreign和random ttli?他们的区别是什么哪?

个人理解是:
①BSC和SGSN之间可以通过GMM层的IMSI/P-TMSI区分用户,但是无线侧和BSC之间没有GMM层,所有就要把GMM的IMSI/P-TMSI映射到LLC层的
TLLI,TLLI是随着IMSI/P-TMSI的变化而变化的(32bit,有映射关系)

②TLLI的32bit里,有2bit通过固定值来区分三个不同的TLLI。IMSI附着时,用的就是random TLLI;而在本地同一个SGSN下通过P-TMSI附着时,用的local TLLI;当跨了RA或者重新开关机,则变成了foreign TLLI。

③关于TLLI更新,在local TLLI→foreign TLLI过程中,attach accept消息里的TLLI仍然是旧的TLLI,直到GMM information才会更新成新的TLLI(这条消息是可选的,已经知道新的TLLI,只是它想不想告诉你而已)

使用道具 举报

Rank: 9Rank: 9

懒

18#
发表于 2014-3-6 23:53:59 |只看该作者
nickyxiaowei 发表于 2014-3-6 14:08
个人理解是:
①BSC和SGSN之间可以通过GMM层的IMSI/P-TMSI区分用户,但是无线侧和BSC之间没有GMM层,所有 ...

三点完全赞同。
www.gprshome.com: GPRS及移动通信技术学习交流分享平台。

使用道具 举报

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

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

GMT+8, 2024-4-26 04:32 , Processed in 0.035496 second(s), 13 queries .

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部