51学通信技术论坛

标题: PDP上下文详解 [打印本页]

作者: 爱卫生    时间: 2011-5-8 09:33:49     标题: PDP上下文详解


Packet Data Protocol (PDP)   

  A Packet Data Protocol (PDP) context offers a packet data connection over which the UE and the network can exchange IP packets. Usage of these packet data connections is restricted to specific services. These services can be accessed via so-called access points.

  一个PDP上下文提供了在UE和网络侧之间交换IP包的一个数据包连接。利用这个数据包连接可以访问一些特定的业务。这些业务可以通过所谓的接入点来访问。
  Packet Data Protocol Context is one of the most important concepts for the UMTS Packet Data Architecture.
  The PDP Context has a record of parameters, which consists of all the required information for establishing an end-to-end connection:
- PDP Type
- PDP address type
- QoS profile request (QoS parameters requested by user)
- QoS profile negotiated (QoS parameters negotiated by network)
- Authentication type (PAP or CHAP)
- DNS type (Dynamic DNS or Static DNS)
  The PDP Context is mainly designed for two purposes for the terminal.

  Firstly PDP Context is designed to allocate a Packet Data Protocol (PDP) address, either IP version 4 or IP version 6 type of address, to the mobile terminal.
  Secondly it is used to make a logical connection with QoS profiles, the set of QoS attributes negotiated for and utilized by one PDP context, through the UMTS network.
  
PDP上下文是UMTS数据架构中的最重要的概念之一。
  一个PDP上下文有一组参数,由建议一个端到端连接所需要的所有信息组成:
- PDP类型
- PDP地址类型
- 请求的QOS profile(用户请求的)
- 协商的QOS profile(和网络侧进行协商之后的)
- 鉴权类型(PAP或CHAP)
- DNS类型(动态或静态DNS)
  PDP上下文一般来说是为终端的两种目的而设置。
  首先PDP上下文设计用于分配一个PDP地址,或者是IPV4或者是IPV6地址给一个终端。第二点用于决定一个到终端的带有QOS profile的逻辑连接,即为一个PDP上下文协商的一组贯穿整个UMTS网络都能得到执行的QOS profile。

Multiple PDP Context
  As mobile phones develop, there will be a need to serve parallel applications running on them with simultaneous PS calls. These PS calls can differ in their QoS (Quality of Service) parameters, and/or in the target network (PDN – Packet Data Network) to which they provide connection.
  Multiple PDP Contexts means that one mobile terminal can have multiple PDP contexts. Each of the Multiple PDP Contexts can at the same time have different QoS profiles. The primary PDP Context is a normal PDP Context with default QoS profile attributes and it is always activated first. For the multiple primary PDP Contexts, each context has different PDP Address and different APN
  Multiple PDP contexts will have special significance when IMS is introduced and all the services will be PS (IP) based. In an IMS based network the MS can (and will) activate separate PDP contexts for SIP based signaling and for all the sessions of different, eventually parallel services (e.g. parallel VoIP call and PS data call, etc.). A different QoS – which matches the application - will be used for each connection.
  The data flow (user plane) of a particular PDP context can terminate either in the Mobile Terminal (MT) itself or in the connected Terminal Equipment (TE) as shown in Figure below. The application for which the connection is provided is running either on the MT or on the TE respectively. An example for the first possibility is a video telephony client running on the mobile, for the second possibility a web browser running on the connected notebook.
   由于移动终端的发展,他们需要同时在手机上建立多个并行的PS连接。这些PS连接,他们的QOS参数,以及访问的目标网络都有可能不同。
  多PDP上下文也就是说一个移动终端可以存在多个PDP上下文。每个"多PDP上下文"在同一时刻可以有多个不同的QOS profile。其中,有一个具有缺省QOS profile属性的Primary PDP上下文作为一个正常的PDP上下文,总是将被第一个激活的。对于多个Primary PDP上下文,每个上下文都有不同的PDP地址和不同的APN。
   当IMS被引入并所有的服务都是基于IP的时候,多PDP上下文将有特别的意义。在一个基于IMS的网络,MS可以为基于SIP的信令和其他所有的会话激活不同的PDP上下文,来提供并行的服务(例如并行的VOIP会话和PS数据业务等)。对每个连接都有一个不同的匹配和满足这个应用的QOS将被使用。
  特定的PDP上下文的数据流(用户面)既可以由移动手机自身亦或者是由其连接的终端电脑来终结,如下图所示。由连接提供的应用程序可以在手机或连接的终端电脑上分别运行。例如可以在手机上运行一个视频客户端,而在连接的笔记本电脑上运行一个web浏览服务。

[attach]305[/attach]

                                               图1:多PDP上下文
  In IMS based systems it is expected that several embedded applications will run on the MT, requiring multiple PDP contexts. For the TE (e.g. connected PC) one additional PDP context may be also active.
Multiple PDP contexts have two sub-categories:
1 multiple primary PDP contexts: they provide connections to different PDNs
2 secondary PDP contexts: they provide connections to the same PDN but with different QoS
   在基于IMS的系统中,它期望能在终端上运行多个嵌入的应用,因此需要有多个PDP上下文。对于TE(例如连接的电脑),则需要有一个额外的PDP上下文也要激活。多PDP上下文有如下两个子分类:

  1 多Primary PDP上下文:他们连接到不同的PDN;

  2 Secondary PDP上下文; 他们提供了到相同PDN的连接,但是具有不同的QOS   

Multiple Primary PDP Contexts
  Multiple primary PDP contexts are two or more PDP contexts independent from one another, each of them using one unique PDP address. They give the possibility to have simultaneous connections to different PDNs – e.g. to the internet for one application, while to a private network for another one.
  Beside the unique PDP address, each PDP context has its own QoS and NSAPI (Network Layer Service Access Point Identifier, see later) assigned. Each PDP context has a separate RAB (Radio Access Bearer) and GTP tunnel to transfer user plane data.
  The PDP contexts typically terminate in different access points on the network side (although it is allowed that they terminate in the same access point). The terminating access points can be located in the same or in different GGSNs.
  The example in Figure below shows the user plane path for three primary PDP contexts providing connections to three different PDNs:
   多Primary PDP上下文是在终端中存在两个或更多独立的PDP上下文,每一个上下文都有唯一的IP地址。他们提供了同时访问不同PDN网络的能力--例如一个应用是连接到Internet,另一个应用则连接到一个私有网络。

  除了唯一的PDP地址,每个PDP上下文还会分配到自己的QOS和NSAPI。每个PDP上下文还有一个分离的RAB和GTP用户平面的隧道。

  PDP上下文通常在网络侧的不同接入点终结(尽管军需他们在相同的接入点终结)。终结的接入点可以存在于相同或不同的GGSN。

  下面的图例说明了有3个Primary PDP上下文的用户平面路径存在,并提供了到3个不同PDN的连接:

[attach]306[/attach]

                                          图2:多Primary PDP上下文
  Primary PDP contexts can be activated or deactivated independently from one another. QoS of any of the active PDP contexts can be modified with the PDP context modification procedure initiated by the MS or by the network. (See Below for details)
   Primary PDP上下文可以互不受影响的单独激活。任何激活的PDP上下文的QOS可以通过由MS或网络侧发起的PDP上下文修改流程来发起。   


Secondary PDP Contexts
  A secondary PDP context is always associated with a primary PDP context. PDP address (IP address) and access point (AP) is re-used from the primary context. Hence the primary and the associated secondary PDP context provide connection to the same PDN with different guaranteed QoS.
  One primary PDP context might have multiple secondary contexts assigned. Each PDP context (i.e. the primary and all secondary) has its own RAB and GTP tunnel to transfer user plane data. Also, each context is identified by a unique NSAPI (Network Layer Service Access Point Identifier).
  The primary PDP context has to be active prior to activating an associated secondary PDP context. Any secondary PDP context can be deactivated while keeping the associated primary context (and eventual other secondary PDP contexts) active. If a primary PDP context is deactivated, this will also deactivate all the assigned secondary PDP contexts. QoS of any active primary or secondary PDP context can be modified with the PDP context modification procedure initiated by the MS or by the network. (See below for details)
  As the PDP address (IP address) is common for the primary and for (all) the associated secondary PDP contexts, the TFT (Traffic Flow Template) is introduced to route downlink user plane data into the correct GTP tunnel and hence into the correct RAB for each context.
  The example in Figure below shows the user plane for a primary and two associated secondary PDP contexts:

  一个Secondary PDP上下文总是和一个Primary PDP上下文关联的。PDP地址和接入点AP都是和Primary上下文一样的。因此Primary和关联的Secondary PDP上下文一起提供了到相同PDN的连接,但区别是具有不同的承诺QOS。

  一个Primary PDP上下文可能有多个分配的Secondary上下文。每个PDP上下文(也就是Primary和所有的Secondary)都有他们自己的RAB和GTP隧道来传输用户平面数据。并且,每个上下文都由唯一的NSAPI来识别。

  Primary PDP上下文必要要在关联的Secondary上下文激活之前激活。任何的Secondary PDP上下文可以在保持的Primary上下文处于active的状态下进行激活。如果一个Primary PDP上下文去激活了,那也将去激活所有分配关联的Secondary PDP上下文。任何active的primary或secondary PDP上下文的QOS都可以由MS或网络侧发起的PDP context modification流程来修改。

  由于PDP地址(IP地址)对Primary和所有关联的secondary PDP上下文来说都是公共的,因此要引入TFT(Traffic Flow Template)来讲下行的用户平面数据路由到正确的GTP隧道以及每个上下文正确的RAB。

  下面图例中的例子描述了一个Primary和两个关联的Secondary PDP上下文用户平面:

[attach]307[/attach]

                                          图3:Secondary PDP上下文
  Combination of multiple primary PDP contexts and secondary PDP contexts is also possible. For example, two primaries with one secondary context for each will result in four active PDP contexts in total. The maximum number of supported PDP contexts is terminal dependent.
   将多个Primary PDP上下文和Secondary PDP上下文捆绑是有可能的。例如,两个各自带有secondary上下文的primary上下文就总共有4个active的上下文。支持的最大数量的PDP上下文和终端的实现有关。(最大11个,取决于NSAPI)

Traffic Flow Template (TFT)
  The Traffic Flow Template (TFT) is used by GGSN to discriminate between different user payloads. The TFT incorporates from one to eight packet filters; a unique packet filter identifier identifies each filter. Filtering can be based on one or more of the following filter attributes:
- Source address (with subnet mask)
- IPv4 protocol number
- Destination port range
- Source port range
- IPSec Security Parameter Index (SPI)
- Type of Service (TOS) (IPv4)
  The TFT is provided by the MS in the Activate Secondary PDP Context Request message, it is stored by the GGSN, and is examined when routing downlink user plane data. The TFT can be modified or deleted with the MS initiated PDP context modification procedure. A TFT may be also assigned to a primary PDP context by means of the MS initiated PDP context modification procedure.

  A TFT is built up from Packet Filters (minimum 1, maximum 8 of them) to provide flexibility in filtering. The relationship between PDP contexts, TFTs and Packet Filters is illustrated in Figure below:

  TFT是GGSN上用于区分不同的用户payload的关键。TFT可以由1到8个包过滤器组成;一个唯一的包过滤ID标识了每个过滤器。过滤可以根据以下一个或多个过滤属性:

- 源地址(和掩码)

- IPV4协议号

- 目标端口范围

- 源端口范围

- IPSec SPI(安全参数索引)

- TOS(IPV4包头中的)

  TFT由MS在Activate Secondary PDP Context Request消息中提供,并且存储在GGSN中,并且在路由下行用户平面数据包的时候检查。TFT可以由MS发起的PDP Context modification流程修改。

  TFT是由包过滤器组成(最少1,最多8个)来提供过滤的灵活性。PDP上下文、TFTs、包过滤器之间的关系由下图所示:

[attach]308[/attach]

图4:TFT


PDP context procedures
Primary PDP context activation
  This procedure is used to establish a logical connection with the Quality of Service (QoS) functionality through the network from the UE to the GGSN. PDP context activation is initiated by the UE and changes the session management state to active, creates the PDP context, receives the IP address and reserves radio resources. After a PDP context activation the UE is able to send IP packets over the air interface. The UE can have up to 11 PDP contexts active concurrently.
Secondary PDP context activation
  A secondary PDP context activation allows the subscriber to establish a second PDP context with the same IP address as the primary PDP context. The two contexts may have different QoS profiles, which makes the feature useful for applications that have different QoS requirements (e.g., IP multimedia). The access point name, though, will be the same for the primary and secondary PDP contexts.
PDP context modification
   The UE, the SGSN or the GGSN initiate this procedure for updating the corresponding PDP context. Additionally, the radio access network is able to request a PDP context modification from the SGSN (e.g., when coverage to the UE has been lost). The procedures modify parameters that were negotiated during an activation procedure for one or several PDP contexts.
PDP context deactivation
  This procedure is used to delete a particular logical connection between the UE and the GGSN. The initiative to deactivate a PDP context can come from the UE, the SGSN, the Home Location Register (HLR) or the GGSN.

Primary PDP context激活

  这个流程用来建立UE到GGSN贯穿网络侧的带有QOS功能的逻辑连接。PDP上下文激活由UE发起,并且将会话管理状态切换到active,创建PDP上下文,接收IP地址和预留的空口资源。在一个PDP上下文激活后,UE可以通过空中接口发送IP包。UE最多同时有11个PDP上下文。

Secondary PDP context激活

  secondary PDP上下文用来允许签约用户能够建立第二个并且和primary PDP上下文具有相同地址的上下文。这两个上下文可以有不同的QOS profile,这样来满足不同引用的需要(例如IP多媒体)。接入点的名字也和关联的Primary PDP上下文是一样的。

PDP context修改

  UE、SGSN或GGSN都可以发起这个流程来更新相应的PDP上下文。另外,无线接入网络也能请求到SGSN的PDP上下文修改流程(例如到UE的无线覆盖丢失)。流程涉及的修改的参数将在一个或多个PDP上下文的激活时进行协商。

PDP context去激活

  这个流程用来删除UE和GGSN之间的特定的逻辑连接。UE、SGSN、HLR、GGSN都可以发起这个流程。

[attach]309[/attach]

图5:PDP上下文的激活


Access points
  Access points can be understood as IP routers that provide the connection between the UE and the selected service. Examples of such services are:
- Multimedia Messaging Service (MMS);
- Wireless Application Protocol (WAP);
- direct Internet access;
- IP Multimedia Subsystem (IMS).
  Depending on the operator of the network, more than one of these services might be provided by the same access point. The UE needs to be aware of an Access Point Name (APN) – the address of a GGSN – which gives access to the service-providing entity (e.g., an MMSC, the Internet or the P-CSCF). One GGSN may provide different services that can be accessed by different APNs.

  When establishing a primary PDP context with an APN the UE receives an IP address or – in the case of IPv6 – an IPv6 prefix that it has to use when communicating over that PDP context. This means that when a UE has established several connections to different APNs the UE will have different IP addresses for each of the provided services.

  接入点可以理解为类似IP路由器并提供了UE到选择的服务之间的连接。这样的服务例如是:
- MMS(彩信)
- WAP
- 直接的Internet访问
- IMS(多媒体子系统)
  取决于网络的运营商,可能会在相同的接入点部署多种服务。UE需要识别出APN(接入点名称)- GGSN的地址 - 为服务提供接入的实体(例如彩信的MMSC,Internet的HTTP Server或者IMS中的P-CSCF)。一个GGSN可以提供由不同APN来接入的不同的服务。
  当在APN中建立一个primary PDP上下文时,UE接收到一个IP地址或---如果是IPV6的网络--将接收到一个IPV6前缀用于这个PDP上下文的通信。这意味着当UE想访问不同APN提供的服务时,将需要建立多个不同的连接,并且需要使用不同的IP地址进行访问。

REFERENCES
[1] The IMS: IP Multimedia Concepts and Services, Second Edition Miikka Poikselk?, Georg Mayer, Hisham Khartabil and Aki Niemi
[2] Multiple PDP Contexts in UMTS - ESG Group, Qualcomm
[3] 3GPP TS 23.060: "General Packet Radio Service (GPRS); Service description"
[4] 3GPP TS 24.008: "Mobile radio interface layer 3 specification; Core Network Protocols"
[5] What are Secondary PDP Contexts Good For? - Martins Mobile Technology Blog
[6] Using Traffic Flow Templates (TFTs) on BGAN - Inmarsat


作者: chenhaonan    时间: 2011-5-24 14:55:00

这篇文章写得太好了,太清楚了。
请问版主,GGSN中为什么要引入TFT(Traffic Flow Template)来讲下行的用户平面数据路由到正确的GTP隧道,直接使用NSAPI不可以吗,因为Primary PDP Context和它所关联的Secondary PDP Contexts的NSAPI都是不同的呀?或者直接使用TEID DATA I,因为每个GTP-U隧道的TEID是唯一的呀?
作者: 爱卫生    时间: 2011-5-24 16:20:13

本帖最后由 爱卫生 于 2011-5-26 10:07 编辑

回复 chenhaonan 的帖子

   引入一个官方的解释。参考规范TS24.008的10.5.6.12章节关于TFT的描述,“The TFT may contain packet filters for the downlink direction, the uplink direction or packet filters that apply for both directions. The packet filters determine the traffic mapping to PDP contexts. ”。也就是说TFT是用来做路由寻址的,用于和PDP上下文做一个映射的。具体是怎么做的呢?可以参考下面的英文解释(暂不翻译了):
“   A TFT is created for a new PDP context using the same PDP address and the same APN as an existing PDP context but with a different QoS profile. This new PDP context is called a secondary PDP context and is activated during a secondary PDP context activation procedure. After a TFT has been created for a new secondary PDP context, it is sent by the MS to the network during the secondary PDP context activation procedure. A TFT may be modified during a PDP context modification procedure initiated by the MS. A TFT is deleted when the associated PDP context is deactivated.
   During packet transmission between the MS and the external packet network, the GGSN will compare the parameters of the IP PDU header with packet filters of the TFT. If a match is found between the IP PDU header and a packet filter, the GGSN is able to direct the IP PDU from the interconnected external PDN to the suitable activated PDP context identified by the NSAPI parameter. This is illustrated in Figure below. ”
   

[attach]404[/attach]

图例:TFT在下行方向映射到PDP上下文的示意图

   上面的这段英文,直白一点就是说。TFT肯定是和二次激活有关。并且包含了一个packet filter可以来区分MS的不同上层应用,例如在“Secondary PDP Context激活流程及实例”这篇帖子当中,就给出了抓到的包,看到了二次激活请求(#5号包)中用的TFT,包括应用服务器的IP和应用端口号554,代表是一个流媒体业务。

   为什么不能用TEID和NSAPI来区分,一定要用TFT呢?因为前者只能在Gn接口来区分出MS的Primary PDP Context和Secondary PDP Context,但在Gi接口中不行。我们的下行数据肯定是从Gi口先收到。这个Gi口收到的下行数据是一个纯IP包,没有GTP头部的。所以GGSN怎么能和PDP上下文映射呢?就需要用到TFT了。因为这个下行数据中有端口号和IP地址等信息。和PDP Context映射以后,到了Gn接口,再由TEID和NSAPI来区分。


作者: 王二麻子    时间: 2011-7-18 23:06:30

请问楼主:tft,pf,映射表之间的对应关系如何了?tft应该是一对多(带多个pf的时候)或一对一(单一pf)的时候,那映射表的作用是?它里面是什么内容?路由信息?它与tft一对一?还是与pf是一对一?
作者: 爱卫生    时间: 2011-7-19 00:41:18

王二麻子 发表于 2011-7-18 23:06
请问楼主:tft,pf,映射表之间的对应关系如何了?tft应该是一对多(带多个pf的时候)或一对一(单一pf)的 ...

  根据TS23.060的15.3章对TFT和Packet Filter的描述,一个TFT包含1-8个PF。
  因为TFT的作用就是在下行方向,将下行数据根据TFT映射到对应的Secondary PDP Context,因为映射表的内容就很简单。类似:
TFT1 ---》 UE's Secondary PDP Context 1 ,TFT2 ---》 UE's Secondary PDP Context 2。映射表应该和TFT是一对一的关系。即一个UE的TFT只能映射到一个UE的Secondary PDP Context ,当然这是针对同一个UE来说的。不同的UE可以通过UE的IP地址来区分。
  映射表和PF应该没有关系。设立多个PF的目的根据规范的说明"15.3.3.0 General
Based on the type of traffic or the packet data network QoS capabilities, different types of packet filters can be used to classify a given PDP PDU in order to determine the right PDP context. Some examples are given below."

只是为了更好的来决定正确的PDP上下文。PF可以根据多个组合来设置,例如端口号、IP地址、SPI、流标签、ToS字段等等。
  

作者: 王二麻子    时间: 2011-7-21 22:21:43

回复 爱卫生 的帖子

哦,那么是不是只要pdn只要符合一个TFT的pf就可以走这个隧道?比如说,一个手机同时访问百度和新浪(应该是走同一个隧道吧)那么由于源地址不同,因此会从不同的pf过滤进这个隧道了?为什么不直接通过ftf判断就行了,还要通过pf过滤?

作者: samsin    时间: 2011-10-6 21:18:39

哦,那么是不是只要pdn只要符合一个TFT的pf就可以走这个隧道?比如说,一个手机同时访问百度和新浪(应该是走同一个隧道吧)那么由于源地址不同,因此会从不同的pf过滤进这个隧道了?为什么不直接通过ftf判断就行了,还要通过pf过滤?

本文摘自: GPRS家园(www.gprshome.com) 详细出处请参考:http://www.gprshome.com/forum.php?mod=viewthread&tid=266&page=1&extra=#pid936

以下纯属个人观点:
首先看了楼主的介绍之后,把所有相关协议的PDP状态部分,都放在一起,应该把PD状态描述的很全面了,多谢楼主。
1、如果downlink的T-PDU符合一个TFT的entry(pf),因为在GGSN PDP CONTEXTS里:TFT和NSAPI关联,所以GGSN可以选择一个PDP,从这个PDP把T-PDU变成G-PDU发走。
2、TFT只是PF的有限集合,通过TFT判断和通过PF过滤,没有区别。
3、下行的百度、新浪分组,肯定要经过GGSN的TFT过滤,但是肯定没有命中合适的TFT,所以这些分组应该从primaryPDP转发走。

楼主,你好,我有个问题:
1、primary PDP 里面绝对不含TFT。(称为pdp1)
2、所以第一个secondary PDP必须含TFT(即本次PDP的Qos所要满足的特殊“业务”,这个“业务”是广义的)必须含Qos。(pdp2)
3、第二个secondaryPDP就可以不带TFT,让linked PDP2,但必须有Qos。(pdp3)
此时,下行的分组如何被ggsn选择PDP???????





作者: 爱卫生    时间: 2011-10-7 15:22:29

王二麻子 发表于 2011-7-21 22:21
回复 爱卫生 的帖子

哦,那么是不是只要pdn只要符合一个TFT的pf就可以走这个隧道?比如说,一个手机同时访 ...

  不好意思哦。一直没看到你7月份的回复哦。如果都是访问百度和新浪的http页面浏览类业务的话,应该是走同一个隧道啊。但tft是针对同一个用户的多个PDP上下文来看的,如果只有一个primary pdp上下文的话,就没有tft,不需要过滤了!直接都放到primary pdp上下文里。因为百度和新浪的新闻浏览都是同一种类型的业务。Qos的映射是和PDP上下文一一对应的。
  

作者: 爱卫生    时间: 2011-10-7 15:27:48

samsin 发表于 2011-10-6 21:18
以下纯属个人观点:
首先看了楼主的介绍之后,把所有相关协议的PDP状态部分,都放在一起,应该把PD状态 ...

   关于你的问题,说下我的观点。
1 primary pdp不含tft这个绝对同意。
2 所以第一个secondary PDP必须含TFT....。这句也绝对同意。
3 "第二个secondaryPDP就可以不带TFT,让linked PDP2,但必须有Qos。(pdp3)此时,下行的分组如何被ggsn选择PDP???????"
   这个问题,我主要是在想这种场景出现的可能性。因为按我的理解,如果有pdp2和pdp3,那这两者的tft应该是不会相同的。因为代表的是不同的业务种类,在应用层面应该会有区分,例如UDP的端口号不一样。所以如果有区分,就存在你说的下行分组如何被GGSN选择PDP的问题了。
   个人理解哈。仅供参考。

作者: samsin    时间: 2011-10-7 18:57:00

3 "第二个secondaryPDP就可以不带TFT,让linked PDP2,但必须有Qos。(pdp3)此时,下行的分组如何被ggsn选择PDP???????"

本文摘自: GPRS家园(www.gprshome.com) 详细出处请参考:http://www.gprshome.com/forum.ph ... &page=1#pid4249
首先,谢谢楼主:
我的意思是:actviate pdp3 procedure的时候,不带TFT, 让linkedTI指向pdp2的TI,这样的话,也应该可以active 成功吧,这种情况下,TFT3(pdp3的)不就和TFT2的一样了吗?难道GSN还会改TFT3以使的TFT3!=TFT2吗?

作者: samsin    时间: 2011-10-7 21:00:33

Secondary PDP Contexts
  A secondary PDP context is always associated with a primary PDP context. PDP address (IP address) and access point (AP) is re-used from the primary context. Hence the primary and the associated secondary PDP context provide connection to the same PDN with different guaranteed QoS.
  One primary PDP context might have multiple secondary contexts assigned. Each PDP context (i.e. the primary and all secondary) has its own RAB and GTP tunnel to transfer user plane data. Also, each context is identified by a unique NSAPI (Network Layer Service Access Point Identifier).
  The primary PDP context has to be active prior to activating an associated secondary PDP context. Any secondary PDP context can be deactivated while keeping the associated primary context (and eventual other secondary PDP contexts) active. If a primary PDP context is deactivated, this will also deactivate all the assigned secondary PDP contexts. QoS of any active primary or secondary PDP context can be modified with the PDP context modification procedure initiated by the MS or by the network. (See below for details)

爱楼主,你好,上文中的红色部分,有点不明白,从deactivate pdp context procedure流程里面发现:与多pdp去活相关的好像
只有teardown indicator,让当前的PDP(在request消息里用TI标识)与 所有与当前PDP相关的PDPs都去活,只有让teardown=1即可(gn口的createPDP 里的teardown 是sgsn copy的这个值),那么当前的PDP不一定是primary的啊,好像没有红色部分所说明的功能啊?从teardown可以看出去活PDP的时候,好像不区分primary还是secondary的。
那红色部分所说明的理论,从信令流程里怎么解释呢?
多谢楼主。

作者: w18886hphz    时间: 2011-10-16 02:45:52

里面的图包含了太多太多有用的信息了,楼主的回答和翻译都非常精彩。
希望版主不忙的时候抽空看一下上面两个问题哈,新生表示很好奇~~万分感谢!
作者: w18886hphz    时间: 2011-10-16 04:14:44

primary pdp绝对不含TFT?对这个观点有疑问。
图4中primary pdp写着"This example no TFT assigned",说这个例子的primary pdp没有TFT,潜意思是说存在primary pdp中包含TFT的可能吧?
作者: 爱卫生    时间: 2011-10-16 18:42:14

samsin 发表于 2011-10-7 18:57
首先,谢谢楼主:
我的意思是:actviate pdp3 procedure的时候,不带TFT, 让linkedTI指向pdp2的TI,这样的 ...

  我的理解是这样。
  这里提到的pdp1-pdp3,实际上pdp1是primary pdp context, pdp2和pdp3实际上都是secondary pdp context。在这里假设,pdp1是为了访问普通的网页浏览而建立的,pdp2是为了一个IMS的语音业务,pdp3则是为了一个mobile tv的应用。
  在TS24008里关于Linked TI是这样说明的。"The purpose of the Linked TI information element is to specify the active PDP context from which the PDP address for the new PDP context could be derived by the network."即Linked TI关联的PDP context要有一个PDP地址。但上面的如果pdp3如果通过linked ti关联到pdp2,而pdp2是没有pdp地址的,因为它也要依附到pdp1才能获取到pdp地址。
  另外,从逻辑上来说,也不应该出现这样的依附。如果如你所说,pdp3 link到pdp2,那pdp2对应的IMS语音业务结束了,pdp2会被去激活。那这时候是不是应该把link的pdp3也去激活呢?显然不应该。用户还要看mobile tv呢。
  所以,我个人觉得,虽然在规范中没有找到出处,也就是。如果这个MS有多个active的pdp context(1 primary + n secondary),那么这n个secondary pdp context都只能link到primary pdp context,而不能互相之间相互link。否则是没有意义的。

作者: 爱卫生    时间: 2011-10-16 20:54:09

本帖最后由 爱卫生 于 2011-10-16 20:55 编辑
w18886hphz 发表于 2011-10-16 04:14
primary pdp绝对不含TFT?对这个观点有疑问。
图4中primary pdp写着"This example no TFT assigned",说这个 ...


  我的依据是TS24.008中关于Active PDP Context Request和Activate Secondary PDP Context Request消息的构成,如下:

Table 9.5.1/3GPP TS 24.008: Activate PDP context request message content

IEI


Information Element


Type/Reference


Presence


Format


Length




Protocol discriminator


Protocol discriminator

10.2


M


V


1/2




Transaction identifier


Transaction identifier

10.3.2


M


V


1/2– 3/2




Activate PDP context request message identity


Message type

10.4


M


V


1





Requested NSAPI


Network service access point identifier 10.5.6.2


M


V


1




Requested LLC SAPI


LLC service access point identifier 10.5.6.9


M


V


1




Requested QoS


Quality of service

10.5.6.5


M


LV


13-17




Requested PDP address


Packet data protocol address

10.5.6.4


M


LV


3 - 23



28


Access point name


Access point name

10.5.6.1


O


TLV


3 - 102



27


Protocol configuration options


Protocol configuration options 10.5.6.3


O


TLV


3 - 253



A-


Request type


Request type

10.5.6.17


O


TV


1

然后是:

Table 9.5.4/3GPP TS 24.008: ACTIVATE SECONDARY PDP CONTEXT REQUEST message content

IEI


Information Element


Type/Reference


Presence


Format


Length




Protocol discriminator


Protocol discriminator

10.2


M


V


½




Transaction identifier


Transaction identifier

10.3.2


M


V


½– 3/2




Activate secondary PDP context request message identity


Message type

10.4


M


V


1





Requested NSAPI


Network service access point identifier

10.5.6.2


M


V


1




Requested LLC SAPI


LLC service access point identifier 10.5.6.9


M


V


1




Requested QoS


Quality of service

10.5.6.5


M


LV


13-17




Linked TI


Linked TI

10.5.6.7


M


LV


2-3



36


TFT


Traffic Flow Template

10.5.6.12


O


TLV


3-257



27


Protocol configuration options


Protocol configuration options 10.5.6.3


O


TLV


3-253

    所以,可以看到。用于创建Primary PDP Context的Activate PDP Context Request消息是不含TFT的。但在Activate secondary PDP context request里是有TFT的,尽管是可选的。
  但我看的规范是V10.1.0,上面的文章可能适用于更早的规范,不见得就是错的。看怎么理解了。

作者: samsin    时间: 2011-10-18 21:17:14

  我的理解是这样。
   这里提到的pdp1-pdp3,实际上pdp1是primary pdp context, pdp2和pdp3实际上都是secondary pdp context。在这里假设,pdp1是为了访问普通的网页浏览而建立的,pdp2是为了一个IMS的语音业务,pdp3则是为了一个mobile tv的应用。
   在TS24008里关于Linked TI是这样说明的。"The purpose of the Linked TI information element is to specify the active PDP context from which the PDP address for the new PDP context could be derived by the network."即Linked TI关联的PDP context要有一个PDP地址。但上面的如果pdp3如果通过linked ti关联到pdp2,而pdp2是没有pdp地址的,因为它也要依附到pdp1才能获取到pdp地址。
   另外,从逻辑上来说,也不应该出现这样的依附。如果如你所说,pdp3 link到pdp2,那pdp2对应的IMS语音业务结束了,pdp2会被去激活。那这时候是不是应该把link的pdp3也去激活呢?显然不应该。用户还要看mobile tv呢。
   所以,我个人觉得,虽然在规范中没有找到出处,也就是。如果这个MS有多个active的pdp context(1 primary + n secondary),
本文摘自: GPRS家园(www.gprshome.com) 详细出处请参考:http://www.gprshome.com/forum.php?mod=viewthread&tid=266&page=1#pid4548
谢谢楼主,你的回答,我有两个疑问,
1、pdp2 的linked ti i是 primary pdp, pdp3的linked ti是pdp2, 那么pdp2是否有pdp地址,是否有teid control plane 等?个人认为是有的,一旦pdp2建立成功后,就与pdp1没有关系了。在deactivate pdp context 消息里 没有关于 primary和secondary的说明啊,只有一个teardown 标记:说明去活当前pdp时可以去活同类pdp们(有着相同的pdp address和apn)。

2、个人认为:primary pdp和诸secondary pdp只有创建的时候有区别,一旦建立过后,是独立被管理的啊。


作者: worldwind    时间: 2011-12-15 11:40:34

提几个业务跟PDP上下文相关的问题,希望大侠们解答一下,谢谢:
1、手机看视频,一般一个视频是被切片了的,那么每一个切片文件的播放会对应一个PDP上下文吗?会创建不同的secondary PDP‘ 还是怎样的?
2、nsapi和teid可以确定一个PDP上下文,这里的teid是 create PDP context resonose 里面的teid data i 的值吧?
3、secondary pdp的创建里面会在产生一个两个nsapi,怎样获取?用gtp.nsapi只能获取到一个,怎样同时获取到这两个nsapi的值?
作者: worldwind    时间: 2011-12-16 00:37:58

应用到实际场景中,例如同一个手机用户打开UC浏览器:
1、先后观看了例如优酷上面的两个视频,此时会创建几个PDP上下文?
2、先看了优酷的视频,然后又看了新浪的视频,此时又是创建了几个PDP上下文?
作者: 爱卫生    时间: 2011-12-27 22:29:59

回复 worldwind 的帖子

简单回答一下。
1、手机看视频,一般一个视频是被切片了的,那么每一个切片文件的播放会对应一个PDP上下文吗?会创建不同的secondary PDP‘ 还是怎样的?
   不是。也不会创建secondary PDP。PDP上下文分primary和secondary。primary是和APN对应的,APN是和一个PDN网络对应的,和应用无关。secondary和primary的区别是对Qos需求的不同应用。例如视频和网页浏览。那同一个视频的多个切片属于同一种应用。也属于同一个网络。所以不需要创建多个PDP。
2、nsapi和teid可以确定一个PDP上下文,这里的teid是 create PDP context resonose 里面的teid data i 的值吧?

   teid有控制面和用户面两个值。这两个值都会携带在create PDP context resonose消息里分配。
3、secondary pdp的创建里面会在产生一个两个nsapi,怎样获取?用gtp.nsapi只能获取到一个,怎样同时获取到这两个nsapi的值?

  不会产生两个。只有一个。通常是6。你是说怎么用wireshark过滤吗?
1、先后观看了例如优酷上面的两个视频,此时会创建几个PDP上下文?
  一个。因为是同一个PDN网络的同种应用。

2、先看了优酷的视频,然后又看了新浪的视频,此时又是创建了几个PDP上下文?
  一个。还是同一个PDN网络的同种应用。

作者: xray1111    时间: 2012-2-21 22:54:08

我想问一个和应用有关的问题:假如一个用户通过手机上网浏览网页,打开一个页面后,不再有下一个动作,那么MS,SGSN,GGSN这几个节点会一直保持PDP ACTIVATE状态不变么,如果会发生DEACTIVATE PDP的过程,一般是从哪里发起,完整过程一般是怎样的?谢谢!
作者: xray1111    时间: 2012-2-22 14:14:05

还想问一下,24.008里面session management中,session这个词,有没有确切的含义,是否是指从PDP激活开始,到PDP去激活为止,PDP上下文在MS,SGSN,GGSN中生效这段时间相关的信令面和用户面数据传输事件的集合?
作者: 爱卫生    时间: 2012-2-22 15:56:34

回复 xray1111 的帖子

1 我想问一个和应用有关的问题:假如一个用户通过手机上网浏览网页,打开一个页面后,不再有下一个动作,那么MS,SGSN,GGSN这几个节点会一直保持PDP ACTIVATE状态不变么,如果会发生DEACTIVATE PDP的过程,一般是从哪里发起,完整过程一般是怎样的?谢谢!

GGSN上会有idle-timeout来检查PDP多长时间没有业务流量,从而发起去激活流程。流程和23.060里介绍的GGSN发起的PDP去激活流程一致。

2 还想问一下,24.008里面session management中,session这个词,有没有确切的含义,是否是指从PDP激活开始,到PDP去激活为止,PDP上下文在MS,SGSN,GGSN中生效这段时间相关的信令面和用户面数据传输事件的集合?

session应该就是指的建立了到某一个PDN网络的连接。可以这么理解,和PDP的激活肯定是相关联的。我个人比较赞同你的理解。


作者: xray1111    时间: 2012-2-22 16:05:19

谢谢爱总的回答!
作者: Darcy2011    时间: 2012-5-4 10:10:46

顶顶顶顶顶顶顶顶
作者: gpf_gprs2012    时间: 2012-5-24 16:02:23

专业的探讨,让新手既羡慕又开心,可以学到 很多
作者: 云杰    时间: 2012-8-11 16:29:01

经典'学习了
作者: imwoohan    时间: 2012-9-6 17:05:13

爱卫生 发表于 2011-5-24 16:20
回复 chenhaonan 的帖子

   引入一个官方的解释。参考规范TS24.008的10.5.6.12章节关于TFT的描述,“The ...

Gi接口收到的是纯IP包,那么就说明GGSN要通过目的IP来查找对应的PDP上下文集合(拥有同一个PDP地址的PDP上下文集合),然后用这个IP包的源IP地址来在这个PDP上下文集合当中的TFT里面匹配,匹配到了就确定了所对应的PDP上下文,然后再封装上TEID和NASPI在Gn接口上传送给SGSN?

作者: yanxin267    时间: 2012-10-25 13:19:58

爱卫生 发表于 2011-5-24 16:20
回复 chenhaonan 的帖子

   引入一个官方的解释。参考规范TS24.008的10.5.6.12章节关于TFT的描述,“The ...

爱总,TFT可不可以终结为:由于有了secondary PDP,所以引起同一个APN的多个PDP上下文。这多个PDP上下文在MS-SGSN之间Gb/Iu口可以用TLLI+NSAPI来区分,在SGSN-GGSN之间Gn可以用TEID Data来区分,而在GGSN-外部PDN之间的Gi口就引入TFT来区分了。

作者: horizon3    时间: 2012-12-2 23:41:03

如果我打开了一个网页,创建了一个PRIMARY PDP,然后打开一个视频播放,创建了secondary pdp。如果我关闭了网页,也就是PRIMARY PDP被关闭了,按照要求secondary pdp也要被关闭,这样不是视频播放也自动被关闭了。这明显不合理。
不知道是否有相关转换的步骤。
作者: GPRSTV    时间: 2012-12-19 12:04:09

worldwind 发表于 2011-12-16 00:37
应用到实际场景中,例如同一个手机用户打开UC浏览器:
1、先后观看了例如优酷上面的两个视频,此时会创建几 ...

都是同一个PDP。只有一个上下文。不存在二次激活。

作者: wenliu    时间: 2012-12-19 15:35:13

爱卫生 发表于 2012-2-22 15:56
回复 xray1111 的帖子

1 我想问一个和应用有关的问题:假如一个用户通过手机上网浏览网页,打开一个页面后 ...

我觉得是对等双方在为上层应用提供底层连接所必须的参数(这边可能使用QOS)协商一致的情况下所建立的对话通道。 这个通道由SGSN/GGSN来建立,维护和拆除。


作者: wenliu    时间: 2012-12-19 16:05:50

horizon3 发表于 2012-12-2 23:41
如果我打开了一个网页,创建了一个PRIMARY PDP,然后打开一个视频播放,创建了secondary pdp。如果我关闭了 ...

之前我也看到了这个贴子, 针对这个Primary PDP去激活,2nd PDP还能使用的情况,总觉得不可理解。因为Primay PDP维护了IP的分配。如果将维护IP分配的链路都删除了,那2nd PDP这种是为了应用而存在的,应该也被默认释放了。

而且如果2nd PDP取代了Primary PDP,那么因为TFT的存在,用户等于很多对当前APN的默认应用都无法实现了。因此用2nd PDP取代1st PDP的情况在现实中应该毫无意义。



作者: ithinc    时间: 2013-1-24 10:13:48

samsin 发表于 2011-10-6 21:18
以下纯属个人观点:
首先看了楼主的介绍之后,把所有相关协议的PDP状态部分,都放在一起,应该把PD状态 ...
3、第二个secondaryPDP就可以不带TFT,让linked PDP2,但必须有Qos。(pdp3)
此时,下行的分组如何被ggsn选择PDP???????

我的理解:只能有一个不带TFT的PDP,只有当第一个不带TFT的PDP被删除了才可以创建另一个不带TFT的PDP。


作者: ithinc    时间: 2013-1-24 10:16:02

samsin 发表于 2011-10-18 21:17
谢谢楼主,你的回答,我有两个疑问,
1、pdp2 的linked ti i是 primary pdp, pdp3的linked ti是pdp2, 那 ...
2、个人认为:primary pdp和诸secondary pdp只有创建的时候有区别,一旦建立过后,是独立被管理的啊。

严重同意。


作者: ithinc    时间: 2013-1-24 10:23:00

Multiple Primary PDP Contexts
  Multiple primary PDP contexts are two or more PDP contexts independent from one another, each of them using one unique PDP address. They give the possibility to have simultaneous connections to different PDNs – e.g. to the internet for one application, while to a private network for another one.

楼主,这段文字是从哪儿来的?有另一种说法是PDP Context并不区分Primary与SecondaryPrimary/Secondary只是修饰PDP Context Activation,创建完成后两个PDP Context是同等地位的。有一个证据就是从3G切换到LTE时,PGW会选定一个default bearer下发到SGW/MME


作者: wenliu    时间: 2013-1-24 10:51:28

本帖最后由 wenliu 于 2013-1-24 11:16 编辑
ithinc 发表于 2013-1-24 10:23
楼主,这段文字是从哪儿来的?有另一种说法是PDP Context并不区分Primary与Secondary,Primary/Secondary ...

”有一个证据就是从3G切换到LTE时,PGW会选定一个default bearer下发到SGW/MME“



PGW 怎么会选择那条是default 那条是 dedicated 呢。之前LTE attach 中, default 和dedicated 的bearer区分也是从签约数据或者通过PCRF 来推送的。

你这个证据那来的?


23401 5.5.2.2.2  Source SGSN Forward Relcation Req -> MME 的时候,带上了:
PDN Connections, SGSN Tunnel Endpoint Identifier for Control Plane, SGSN Address for Control plane,






作者: ithinc    时间: 2013-1-24 12:47:33

wenliu 发表于 2013-1-24 10:51
”有一个证据就是从3G切换到LTE时,PGW会选定一个default bearer并下发到SGW/MME“

PGW怎么选择并不清楚。在29.274(GTPv2)中:

Table 7.2.8-1:Information Elements in a Modify Bearer Response

  

Information elements

  

P

Condition / Comment

IE Type

Ins.

  

Cause

  

M

Cause

0

  

MSISDN

  

C

This IE shall be included on S5/S8 interfaces  by the PGW if it is stored in its UE context and if this message is triggered  due to TAU/RAU/HO with SGW relocation.

MSISDN

0

  

Linked EPS  Bearer ID

  

C

This IE shall be  sent on S5/S8 when the UE moves from a Gn/Gp SGSN to the S4 SGSN or MME to  identify the default bearer the PGW selects for the PDN Connection.

  

This IE shall also be sent by SGW on S11, S4  during Gn/Gp SGSN to S4-SGSN/MME HO procedures to identify the default bearer  the PGW selects for the PDN Connection.

EBI

0


这个LBI就是PGW选定的default bearer ID。


作者: wenliu    时间: 2013-1-24 14:16:50

本帖最后由 wenliu 于 2013-1-24 15:59 编辑

翻了一下29060 和 23401 ,这个default Beaer ID 认定分情况。不过感觉的确 GPRS这边 Primay 和2nd 这两者是的确同等对待。而LTE 中default 和dedicated 区别的更明显。、

对于GTPV1 和GTPV2 , SGSN -> MME Forward Relocation Req消息来讲:

使用S3 Interface的时候, Forward Relocation Request 消息中已经标出 Link EPS Bearer ID的 header ,所以随后Modify Bearer Resp中这个header是可以不带的。(但是GPRS 使用SGSN-SGW-PGW 的时候,不晓得这种情况下面的primay 和2nd 和使用SGSN-GGSN 下NSAPI 的Primary,secondary有没有区别)。

但是使用Gn interface, GTPV1的Forward Relocation Req消息中: 没有能直接给出有关NSAPI ,Linked NSAPI 和EBI 之间的绑定关系。
可能会根据Signallig Priority Indication with NSAPI来影响后面PGW的决定(MME 这时候不应该参与吧,毕竟用户面的是事情,MME作为接受方,这时候应该尽量维持住,由PGW根据和PCRF之间的Policy来决定,并根据优先级来选定default Bearer)。

不过这样看来,GPRS这边的Primary 和 secondary 地位的确一致。并且29060 在描述delete PDP context 的时候,也需要用Teardown Ind来决定是否能够全部释放去同一个PDN 的链接,而不是通过NSAPI来区分。
这样的话,如果不带Teardown Ind,而只带NSAPI,那么Primary删除,应该不会影响到secondary。


作者: ithinc    时间: 2013-1-24 14:43:24

29.060中Secondary PDP Context Activation Procedure:
Linked NSAPI indicates the NSAPI assigned to any one of the already activated PDP contexts for this PDP address or two IP addresses and APN.
作者: ithinc    时间: 2013-1-24 16:53:19

Gn/Gp SGSN handover MME时,GTPv1的Forward Relocation Request消息中若干个PDP Context之间并没有Linked关系,应该只是通过PDP Address来识别是否同一个PDN吧?
作者: ithinc    时间: 2013-1-24 16:57:26

本帖最后由 ithinc 于 2013-1-24 19:04 编辑
wenliu 发表于 2013-1-24 14:16
翻了一下29060 和 23401 ,这个default Beaer ID 认定分情况。不过感觉的确 GPRS这边 Primay 和2nd 这两者是 ...
对于GTPV1 和GTPV2 , SGSN -> MME Forward Relocation Req消息来讲:

使用S3 Interface的时候, Forward Relocation Request 消息中已经标出 Link EPS Bearer ID的 header ,所以随后Modify Bearer Resp中这个header是可以不带的。(但是GPRS 使用SGSN-SGW-PGW 的时候,不晓得这种情况下面的primay 和2nd 和使用SGSN-GGSN 下NSAPI 的Primary,secondary有没有区别)。

但是使用Gn interface, GTPV1的Forward Relocation Req消息中: 没有能直接给出有关NSAPI ,Linked NSAPI 和EBI 之间的绑定关系。
可能会根据Signallig Priority Indication with NSAPI来影响后面PGW的决定(MME 这时候不应该参与吧,毕竟用户面的是事情,MME作为接受方,这时候应该尽量维持住,由PGW根据和PCRF之间的Policy来决定,并根据优先级来选定default Bearer)。

S3 Interface应该是S4-SGSN才用,S4-SGSN是有default bearer概念的。
Gn Interface的GTPv1 Forward Relocation Req消息中每个PDP Context都带有PDP Address和APN,每一对PDP Address和APN是可以唯一标记一条PDN Connection的。


作者: ithinc    时间: 2013-1-24 19:06:27

答案在23.060 13.2节:

> For  each active PDN connection with S‑GW (using S4):

Default bearer

Identifies the NSAPI of the default bearer,  corresponding to the PDP context which was first established within the given  PDN connection.

X

X



作者: zzz    时间: 2013-7-27 21:50:40

对于Multiple Primary PDP Contexts 这种情况,总觉得一个手机同一时刻有多个IP地址不大好理解。在安卓系统上通过软件查看手机的IP地址,只有一个呀,要是有抓包文件对应看一下就好了。


作者: zzz    时间: 2013-8-1 20:18:54

zzz 发表于 2013-7-27 21:50
对于Multiple Primary PDP Contexts 这种情况,总觉得一个手机同一时刻有多个IP地址不大好理解。在安卓系统 ...

是,现网中应用场景是众多呀,多谢点评!

作者: ccc123    时间: 2014-6-4 08:43:30

这里面很多问题,都期待答案...歇息




欢迎光临 51学通信技术论坛 (http://51xuetongxin.com/bbs/) Powered by Discuz! X2