5GC基础自学系列 | 5GC协议系列之GTP-U

Posted COCOgsta

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了5GC基础自学系列 | 5GC协议系列之GTP-U相关的知识,希望对你有一定的参考价值。

视频来源:51学通信《5G核心网基础、协议与信令流程》

一边学习一边整理老师的课程内容及试验笔记,并与大家分享,侵权即删,谢谢支持!


主要内容

介绍5G网络和4G的GTP-U有什么不同?

介绍GTP-U协议的协议栈和主要功能

介绍GTP-U协议相关功能的主要参数

5G协议总览(23501)

5G中的GTP-U协议简介

5G的GTP-U协议在29281定义, 本视频以R15.6版本举例介绍。

5G的GTP-U协议栈和4G是一样的, 也使用UDP的端口2152。

站在核心网的角度(23501),主要用于N3和N9口,用于用户面数据传递。

  • 关于N9口的GTP在38415介绍

站在RAN的角度看, 还用于gNB之间的Xn-U口。

GTP-U相关术语和概念

GTP-U消息:用来传送上层用户面数据或信令消息。

  • -注意:GTP-U消息不光是用来传递用户面数据, 它也有自己的信令消息。
  • 信令消息的参数部分叫IE, 采用TV或TLV编码。

GTP Path:两个GTP隧道端点之间建立的无连接路径。

GTP隧道:通过TEID+IP地址+UDP端口标识。

GTP隧道端点:GTP隧道的两端节点。通过节点IP地址+UDP端口标识。

T-PDU:用户的原始上层数据

G-PDU:T-PDU+GTP-U包头

  • G-PDU:GTP encapsulated user Plane Data Unit
  • T-PDU:Transport PDU
  • TEID:Tunnel Endpoint IDentifier
  • IE:Information Element

5G GTP-U包头 - (必选参数+可选参数+扩展包头)

  • Version:版本号, v1版本。
  • PT:Protocol Type, 1bit。取值为0:GTP'(用于4G的话单传递)值1为GTP
  • E bit:Extension Header, 1bit。指示后续是否有扩展包头。
  • S bit:Sequence number, 1bit。指示是否存在序列号字段。
  • PNbit:1bit。指示是否存在N-PDU Number。
  • Length:2字节。总长度。=上层Payload的长度+GTP-U头的总长度。
  • TEID:4字节。标识一个GTP-U隧道
  • Sequence Number:2字节。对T-PDU进行编号,可用于用户面排序、重传等目的
  • N-PDU Number:仅用于GPRS。SN DCP层参数。
  • Next Extension Header Type:如果有扩展包头的话, 那扩展包头的类型是什么。

回顾:4G vs 5G Qos架构 - 引入PDU Session Container扩展包头的背景

结论:

  • 4G的GTP-U隧道(如S 1-U口)基于EPS Bearer的, 所以TEID就可以区分不同的用户。
  • 5G的GTP-U隧道(如N3口)基于PDU会话的, 但上面有用户很多的Qos流, 无法用TEID来区分。
  • 因此, 5G的GTP-U定义了一个扩展包头:PDU Session Container来解决这个问题。

5G GTP-U扩展包头 - PDU Session Container(5G独有)

为了支持5G的PDU会话参数传递, 在29281中定义了PDU Session Container扩展包头,具体的参数在38415中定义。

  • PPP:Paging Policy Presence, 1bit。指示是否存在PPI参数
  • PPI:Paging Policy Indicator, 3bit。寻呼策略指示, 用于PPD功能。
  • RQI:ReflectiveQoSIndication。1bit, 反射型Qos指示
  • QFI:QoSFlowIdentifier。6bit, Qos流的标识
  • PDU Type:4bit。取值为0=DLP DU SESSION INFORMATION,1=ULP DU SESSION INFORMATION。2~15预留。

注:PPD即Paging Policy Differentiation, 在23501的5.4.3.2中定义, 指的是可根据运营商的配置, 由AMF针对同一PDU会话的不同流量或业务类型采取不同的寻呼策略。由PPI参数决定。PPI参数可以由SMF根据IP头的DSCP值映射过来, 然后提供给UPF。

GTP-U传递用户面数据举例(N3口)

5G GTP-U信令面消息 - 路径管理

GTP-U协议的路径管理消息主要有:

  • Echo Request:用来探测GTP路径和对端节点是否正常。发送间隔由N3计数器控制,建议值为5次。T3为等待响应的时间,建议不低于60秒。若T3*N3超时,则认为GTP路径失效。
  • Echo Response:对Echo Request的响应
  • Supported Extension Headers Notification:声明自己所支持的GTP扩展包头

5G GTP-U信令面消息 - 隧道管理

GTP-U协议的隧道管理消息主要有:

  • Error Indication:当收到一个G-PDU但找不到对应的EPS Bearer/PDU会话, 并且TEID不是全0, 则要给对端发Error Indication。主要用途防止DOS攻击。
  • End Marker:用于表明该GTP-U隧道已收到最后一个G-PDU, 该隧道将不再接受后续的用户数据。如果来了,也被直接丢弃。【常见于切换流程完成阶段的用户面路径切换。(参考51学通信录制的“基于Xn接口的跨gNB基本切换流程”视频)】

以上是关于5GC基础自学系列 | 5GC协议系列之GTP-U的主要内容,如果未能解决你的问题,请参考以下文章

5GC基础自学系列 | 5GC协议系列之SBI接口HTTP2

5GC基础自学系列 | 汇总

5GC基础自学系列 | 5GC基础之网络切片

5GC基础自学系列 | 5GC基础之5GC网络架构及网元

5GC基础自学系列 | 5GC基础之移动性管理

5GC基础自学系列 | 5GC基础之5GC中的网元发现与选择