参考3GPP TS 29.060
GTP的头部是可变的,GTP-C(control)和GTP-U(user)共同使用一个头部。
GTP Header头部:
-Version 用来标识GTP协议的版本,在这里应该设置为1。
-Protocol Type(PT)。这一位用来标识是GTP(PT为1)还是GTP'(PT为0)。GTP'在3GPP TS 32.295中定义,并且它的头部的含义和GTP头部的含义是不一样的。
-(*) 空闲比特,发送端置为0,接收端忽略这一位。
-Extension Header flag (E)。这一bit用来说明Next Extension Header域是否有意义。当这一位为0的时候,Next Extension Header要么不存在,要么存在但是也不被使用。当这一位为1的时候,Next Extension Header域要被解释和使用。
-Sequence number flag (S)。这一bit用来说明Sequence number 域是否有意义。当这一位为0的时候,Sequence number 要么不存在,要么存在但是也不被使用。当这一位为1的时候,Sequence number 域要被解释和使用。
-N-PDU Number flag (PN)。这一bit用来说明N-PDU Number域是否有意义。当这一位为0的时候,N-PDU Number 要么不存在,要么存在但是也不被使用。当这一位为1的时候,N-PDU Number 域要被解释和使用。
-Message Type。这个域定义了GTP的消息类型,包括GTP-C和GTP-U。
-L