GTP概述

GTP(GPRS Tunnelling Protocol)协议应用在SGSN 和GGSN 之间,为各个移动台(MS) 建立GTP 通道,GTP 通道是 GPRS服务节点(GSN) 之间的安全通道,两个主机可通过该通道交换数据,所有的PTP 分组数据协议的PDUs 应由GTP 协议进行封装。

GTP协议格式

GTP协议头部格式如下:

Version:版本号,目前基本都是1,即GTP v1版本;如果是0,即GTP v0版本。

Protocol type:1为GTP’,0为GTP-C或GTP-U。

GTP V0和GTP V1 比较表格

GTP作为SGSN和GGSN之间的一种Tunnel协议,是建立在UDP之上的一种应用层协议,分为GTPv0和GTPv1不同的版本。

GTP VO

 

GTP V1

Information element

Presence requirement

 

Information element

Presence requirement

Routeing Area Identity (RAI)

Optional

 

Routeing Area Identity (RAI)

Optional

Quality of Service Profile

Mandatory

 

Quality of Service Profile

Mandatory

Recovery

Optional

 

Recovery

Optional

Selection mode

Mandatory

 

Selection mode

Conditional

Flow Label Data I

Mandatory

 

Tunnel Endpoint Identifier Data I

Mandatory

Flow Label Signalling

Mandatory

 

Tunnel Endpoint Identifier Control Plane

Conditional

End User Address

Mandatory

 

End User Address

Conditional

Access Point Name

Mandatory

 

Access Point Name

Conditional

Protocol Configuration Options

Optional

 

Protocol Configuration Options

Optional

SGSN Address for signalling

Mandatory

 

SGSN Address for signalling

Mandatory

SGSN Address for user traffic

Mandatory

 

SGSN Address for user traffic

Mandatory

 

 

 

Trace Reference

Optional

 

 

 

Trace Type

Optional

MSISDN

Mandatory

 

MSISDN

Conditional

Private Extension

Optional

 

Private Extension

Optional

 

 

 

IMSI

Conditional

 

 

 

TFT

Conditional

 

 

 

Trigger Id

Optional

 

 

 

OMC Identity

Optional

 

 

 

APN Restriction

Optional

 

 

 

RAT Type

Optional

 

 

 

User Location Information

Optional

 

 

 

MS Time Zone

Optional

 

 

 

CAMEL Charging Information Container

Optional

 

 

 

NSAPI

Mandatory

 

 

 

Linked NSAPI

Conditional

 

 

 

Charging Characteristics

Conditional

    相关术语

APN:Access Point Name,接入点名称,在GGSN中用于标识一个指定的外部网络和一种服务的ISP,在SGSN中可根据APN通过DNS域名解析得到与此APN对应的GGSN地址。

TEID:Tunnel Endpoint Identifier,GTP v1的概念,用于表示一条隧道(PDP),分为数据面TEID(TEID(U))和控制面TEID(TEID(C)),由SGSN和GGSN自己分配。

NSAPI:Network Service Access Point Identifier,和TEID(C)或IMSI一起用于标示同一用户激活的不同上下文,范围[0,15],其中0~4系统保留,因此对于一个用户(UE)而言,最多可以建立11条隧道。

TID:GTPv0的概念,由IMSI+NSAPI构成,和TEID作用相同。

TFT:Traffic Flow Template,是GSN在接收或转发用户数据时,用于区分二次激活的PDP上下文,TFT唯一的标识了同一TEID或同一PDP Address下的不同的PDP上下文。当同一个TEID或PDP Address下只有一个活跃的PDP上下文时,不需要为该PDP上下文指定一个TFT,因为所有下行的数据都直接通过该上下文对应的隧道传输。当同一个TEID或PDP Address下有多个活跃的PDP上下文时,那么就需要为每一个PDP上下文指定一个TFT,GGSN接收到发送给MS的G-PDU时,将使用该TFT来对应G-PDU传输时应该使用的PDP上下文。如果在二次激活时,所有该PDP地址下的PDP上下文都已经被分配了一个TFT,那么这一次的二次激活就可以无需再指定一个TFT。即,对应同一个TEID或PDP地址下的不同的PDP上下文,要么全都有各自的TFT,要么,只能有一个PDP上下文没有TFT。

    总结

GTP作为SGSN和GGSN之间的一种Tunnel协议,是建立在UDP之上的一种应用层协议,分为GTPv0和GTPv1不同的版本。

GTP协议分为GT-C,GTP-U和GTP’协议。其中,GTP-C是信令控制协议,GTP-U是封装用户数据协议,GTP’是计费相关的协议,其中控制平面用来创建、删除GTP Tunnel,以及对GTP Tunnel的属性进行修改,数据平面主要是用来传输用户的数据报文。

比较项

GTP v0

GTP v1

协议出处

[GSM TS 09.60]

[3GPP TS 29.060]

QoS信息

R97/98

R99

适用系统

GPRS

GPRS和UMTS

路径端口

3386(用户面、控制面和计费关联在一个端口)

2152(用户面);2123(控制面); 3386(计费)

路径协议

UDP和TCP可选(用户面和计费);UDP(控制面)

UDP(用户面和控制面);UDP和TCP可选(计费)

隧道标识

IMSI+NSAPI

SGSN和GGSN独立分配

二次激活

不支持

发起二次激活时,控制面TEID和之前PDP的TEID相同,用户面TEID重新分配

DT支持

不支持DTI标识

DTI标识

CC支持

不支持

支持CC计费属性

安全相关

固定的TID易受攻击

TID随机分配,相对安全性较好

GTP V0 和 GTP V1的更多相关文章

  1. 手脱UPX v0.89.6 - v1.02

    声明: 只为纪录自己的脱壳历程,高手勿喷 这个壳的脱法很多一般都一步直达的,步过我喜欢ESP定律 1.载入OD,在入口下一行ESP定律运行一次 > pushad ; //入口 BE mov es ...

  2. 三、主流区块链技术特点及Hyperledger Fabric V1.0版本特点

    一.Hyperledger fabric V1.0 架构 1.逻辑架构: 2.区块链网络 3.运行时架构 二.架构总结 1.架构要点 分拆Peer的功能,将Blockchain的数据维护和共识服务进行 ...

  3. 003-主流区块链技术特点及Hyperledger Fabric V1.0版本特点

    一.Hyperledger fabric V1.0 架构 1.逻辑架构: 2.区块链网络 3.运行时架构 二.架构总结 1.架构要点 分拆Peer的功能,将Blockchain的数据维护和共识服务进行 ...

  4. Centos7.6部署k8s v1.16.4高可用集群(主备模式)

    一.部署环境 主机列表: 主机名 Centos版本 ip docker version flannel version Keepalived version 主机配置 备注 master01 7.6. ...

  5. 82-基于Xilinx Virtex-5LXT FPGA的四路光纤PCIE卡(4路光纤卡)

    基于Xilinx Virtex-5LXT FPGA的四路光纤PCIE卡(4路光纤卡) 1.板卡特点: 1)  主芯片采用Xilinx Virtex-5LXT FPGA. 前面板提供4路光纤接口,速率可 ...

  6. MATLAB读取一张RGB图片转成YUV格式

    1.读入照片 控制输出的标志定义 clc;close all;clear YES = 1; NO = 0; %YES表示输出该文件,请用户配置 yuv444_out_txt = 1; yuv444_o ...

  7. Android中锁定文件的方法

    androidSDK中并没有锁定文件相关的api. 但是android是基于linux操作系统的,linux比较底层,灵活性也更大,为了实现锁定文件的效果,大概有以下几种办法: 用chmod命令修改文 ...

  8. Matlab

    Q:workspace没有显示变量的值 A:这是因为子程序里的变量是局部变量,他们的作用域就是子函数内部,会在流程控制回到主调函数前被系统自动释放掉,所以,一旦子程序运行完,你是不可能再查看子程序里的 ...

  9. BZOJ4078 : [Wf2014]Metal Processing Plant

    设$D(A)\leq D(B)$,从小到大枚举$D(A)$,双指针从大到小枚举$D(B)$. 那么对于权值不超过$D(A)$的边,可以忽略. 对于权值介于$(D(A),D(B)]$之间的边,需要满足那 ...

随机推荐

  1. Linux常用指令---tar | zip (解压缩)

    减少文件大小有两个明显的好处,一是可以减少存储空间,二是通过网络传输文件时,可以减少传输的时间.gzip是在Linux系统中经常使用的一个对文件进行压缩和解压缩的命令,既方便又好用.gzip不仅可以用 ...

  2. [CareerCup] 11.4 Sort the File 文件排序

    11.4 Imagine you have a 20 GB file with one string per line. Explain how you would sort the file. 这道 ...

  3. 利用JS跨域做一个简单的页面访问统计系统

    其实在大部分互联网web产品中,我们通常会用百度统计或者谷歌统计分析系统,通过在程序中引入特定的JS脚本,然后便可以在这些统计系统中看到自己网站页面具体的访问情况.但是有些时候,由于一些特殊情况,我们 ...

  4. IE firefox 兼容性整理

    1.尽量用jquery操作. 2.jquery取值时要用准确的方法,attr(), val(), text(), html(). 例如: <span value="a"> ...

  5. VS2010版快捷键

    VS2010版快捷键 Ctrl+E,D ----格式化全部代码 Ctrl+E,F ----格式化选中的代码 CTRL + SHIFT + B生成解决方案 CTRL + F7 生成编译 CTRL + O ...

  6. [BZOJ 1483][HNOI 2009]梦幻补丁(有序表启发式合并)

    题目:http://www.lydsy.com:808/JudgeOnline/problem.php?id=1483 分析: 先将不同的颜色的出现位置从小到大用几条链表串起来,然后统计一下答案 对于 ...

  7. ThinkPHP之视图模版的使用

    用户发起一个请求后,服务器应该返回一个页面,而页面是由我们的视图层来控制的. 一.修改控制器 <?php namespace Home\Controller; use Think\Control ...

  8. JAVA中的NIO(一)

    1.IO与NIO IO就是普通的IO,或者说原生的IO.特点:阻塞式.内部无缓冲,面向流. NIO就是NEW IO,比原生的IO要高效.特点:非阻塞.内部有缓存,面向缓冲. 要实现高效的IO操作,尤其 ...

  9. [AaronYang]C#人爱学不学[2]

    1. 记事本写C#,脱离vs 新建记事本,名字为 helloworld.cs using System; namespace Hello{ public class HelloWorldSay{ st ...

  10. javascript键盘输入控制

    获取键盘控制事件 document.onkeydown = keyDown 当浏览器读到这个语句时,无论按下键盘上的哪个键,都将呼叫KeyDown()函数. 不同浏览器的实现: Netscape Ne ...