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浏览服务。
图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的连接: 图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上下文用户平面:
图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、包过滤器之间的关系由下图所示:
图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都可以发起这个流程。
图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 |