发明内容
基于此,有必要针对上述技术问题,提供一种能够实现UPF的N9接口对GTP数据包处理方法、装置、计算机设备和计算机可读存储介质。
本申请提供了一种GTP数据包的处理方法,应用于5G核心网中的UPF,所述UPF包括I-UPF和PSA-UPF;所述方法包括:
所述PSA-UPF通过所述PSA-UPF的N6接口接收GTP下行数据包;
所述PSA-UPF通过所述PSA-UPF的N6接口,依据I-UPF的N9通道信息生成所述GTP下行数据包的包头信息,并依据所述GTP下行数据包的包头信息和所述GTP下行数据包生成第一目标GTP下行数据包;
所述PSA-UPF将所述第一目标GTP下行数据包发送至所述I-UPF;
所述I-UPF通过所述I-UPF的N9接口将所述第一目标GTP下行数据包的包头信息中的所述I-UPF的N9通道信息替换为基站通道信息,得到第二目标GTP下行数据包;
所述I-UPF将所述第二目标GTP下行数据包进行转发至基站。
在其中一个实施例中,所述方法还包括:
所述I-UPF生成所述I-UPF的N9通道信息,并将所述I-UPF的N9通道信息存储于所述PSA-UPF的N6接口对应的转发行为规则;
在依据I-UPF的N9通道信息生成所述GTP下行数据包的包头信息之前,所述方法还包括:
所述PSA-UPF确定所述PSA-UPF的N6接口对应的转发行为规则;
所述PSA-UPF从所述PSA-UPF的N6接口对应的转发行为规则中,读取所述I-UPF的N9通道信息。
在其中一个实施例中,所述方法还包括:
所述I-UPF生成所述I-UPF的N9通道信息,并将所述I-UPF的N9通道信息存储于所述I-UPF的N9接口对应的包检查规则;所述I-UPF的N9通道信息包括所述I-UPF的N9的IP地址和隧道端点标识;
所述I-UPF通过基站生成所述基站通道信息,并将所述基站的通道信息存储于所述I-UPF的N9接口对应的转发行为规则。
在其中一个实施例中,所述I-UPF通过所述I-UPF的N9接口将所述第一目标GTP下行数据包的包头信息中的所述I-UPF的N9通道信息替换为基站通道信息之前,所述方法还包括:
所述I-UPF获取所述I-UPF的N9接口对应的所述包检查规则;
所述I-UPF从所述I-UPF的N9接口对应的所述包检查规则中读取所述I-UPF的N9通道信息;
所述I-UPF获取所述I-UPF的N9接口对应的所述转发行为规则;
所述I-UPF从所述I-UPF的N9接口对应的所述转发行为规则中读取所述基站通道信息。
在其中一个实施例中,所述I-UPF通过所述I-UPF的N9接口将所述第一目标GTP下行数据包的包头信息中的所述I-UPF的N9通道信息替换为基站通道信息包括:
所述I-UPF通过所述I-UPF的N9接口从所述第一目标GTP下行数据包的包头信息中,读取第一目标通道信息;
当所述第一目标通道信息与所述I-UPF的N9通道信息一致时,则所述I-UPF通过所述I-UPF的N9接口将所述第一目标GTP下行数据包的包头信息中的所述I-UPF的N9通道信息替换为基站通道信息,或通过所述I-UPF的N9接口将所述第一目标GTP下行数据包的包头信息替换为第一目标包头信息;所述第一目标包头信息包含所述基站通道信息。
在其中一个实施例中,所述PSA-UPF将所述第一目标GTP下行数据包发送至所述I-UPF,包括:
在所述PSA-UPF通过所述PSA-UPF的N9接口发送第一回声消息至所述I-UPF后,所述I-UPF接收所述第一回声消息;
在所述I-UPF依据所述第一回声消息向所述PSA-UPF发送回声响应后,所述PSA-UPF将所述第一目标GTP下行数据包转发至所述I-UPF。
第二方面,本申请提供了一种GTP数据包的处理装置。所述装置包括:
接收模块,用于所述PSA-UPF通过所述PSA-UPF的N6接口接收GTP下行数据包;
生成模块,用于所述PSA-UPF通过所述PSA-UPF的N6接口,依据I-UPF的N9通道信息生成所述GTP下行数据包的包头信息,并依据所述GTP下行数据包的包头信息和所述GTP下行数据包生成第一目标GTP下行数据包;
发送模块,用于所述PSA-UPF将所述第一目标GTP下行数据包发送至所述I-UPF;
替换模块,用于所述I-UPF通过所述I-UPF的N9接口将所述第一目标GTP下行数据包的包头信息中的所述I-UPF的N9通道信息替换为基站通道信息,得到第二目标GTP下行数据包;
转发模块,用于所述I-UPF将所述第二目标GTP下行数据包进行转发至基站。
在其中一个实施例中,所述生成模块还用于所述I-UPF生成所述I-UPF的N9通道信息,并将所述I-UPF的N9通道信息存储于所述PSA-UPF的N6接口对应的转发行为规则;所述PSA-UPF确定所述PSA-UPF的N6接口对应的转发行为规则;所述PSA-UPF从所述PSA-UPF的N6接口对应的转发行为规则中,读取所述I-UPF的N9通道信息。
在其中一个实施例中,所述替换模块还用于所述I-UPF生成所述I-UPF的N9通道信息,并将所述I-UPF的N9通道信息存储于所述I-UPF的N9接口对应的包检查规则;所述I-UPF的N9通道信息包括所述I-UPF的N9的IP地址和隧道端点标识;所述I-UPF通过基站生成所述基站通道信息,并将所述基站的通道信息存储于所述I-UPF的N9接口对应的转发行为规则。
在其中一个实施例中,所述替换模块还用于所述I-UPF获取所述I-UPF的N9接口对应的所述包检查规则;所述I-UPF从所述I-UPF的N9接口对应的所述包检查规则中读取所述I-UPF的N9通道信息;所述I-UPF获取所述I-UPF的N9接口对应的所述转发行为规则;所述I-UPF从所述I-UPF的N9接口对应的所述转发行为规则中读取所述基站通道信息。
在其中一个实施例中,所述替换模块还用于所述I-UPF通过所述I-UPF的N9接口从所述第一目标GTP下行数据包的包头信息中,读取第一目标通道信息;当所述第一目标通道信息与所述I-UPF的N9通道信息一致时,则所述I-UPF通过所述I-UPF的N9接口将所述第一目标GTP下行数据包的包头信息中的所述I-UPF的N9通道信息替换为基站通道信息,或通过所述I-UPF的N9接口将所述第一目标GTP下行数据包的包头信息替换为第一目标包头信息;所述第一目标包头信息包含所述基站通道信息。
在其中一个实施例中,所述转发模块还用于在所述PSA-UPF通过所述PSA-UPF的N9接口发送第一回声消息至所述I-UPF后,所述I-UPF接收所述第一回声消息;在所述I-UPF依据所述第一回声消息向所述PSA-UPF发送回声响应后,所述PSA-UPF将所述第一目标GTP下行数据包转发至所述I-UPF。
本申请还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述方法的步骤。
本申请还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述方法的步骤。
本申请还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述方法的步骤。
上述GTP数据包的处理方法、装置、计算机设备和存储介质,通过PSA-UPF通过PSA-UPF的N6接口接收GTP下行数据包;PSA-UPF通过PSA-UPF的N6接口,依据I-UPF的N9通道信息生成GTP下行数据包的包头信息,并依据GTP下行数据包的包头信息和GTP下行数据包生成第一目标GTP下行数据包;PSA-UPF将第一目标GTP下行数据包发送至I-UPF;I-UPF通过I-UPF的N9接口将第一目标GTP下行数据包的包头信息中的I-UPF的N9通道信息替换为基站通道信息,得到第二目标GTP下行数据包;I-UPF将第二目标GTP下行数据包进行转发至基站。在5G核心网中本申请提供了一种UPF的N9接口对GTP下行数据包处理的方法,从而实现了5G核心网的UPF对GTP下行数据包的高效处理。
本申请还提供了一种GTP数据包的处理方法,其特征在于,应用于5G核心网中的UPF,所述UPF包括I-UPF和PSA-UPF;所述方法包括:
所述I-UPF通过所述I-UPF的N3接口接收GTP上行数据包,并通过所述I-UPF的N3接口从所述GTP上行数据包中读取目的地址;
当所述I-UPF的N3接口对应的服务数据过滤规则为分流业务规则时,所述I-UPF从所述分流业务规则中读取数据网络的IP地址,并依据所述数据网络的IP地址确定目标地址范围;
当所述目的地址在所述目标地址范围内时,则所述I-UPF通过所述I-UPF的N3接口将所述GTP上行数据包的包头信息中的通道信息替换为所述PSA-UPF的N9通道信息,得到第一目标GTP上行数据包,并将所述第一目标GTP上行数据包转发至所述PSA-UPF;
所述PSA-UPF通过所述PSA-UPF的N9接口将所述第一目标GTP上行数据包的包头信息进行除去处理,得到第二目标GTP上行数据包,并通过所述PSA-UPF的N9接口将所述第二目标GTP上行数据包发送至所述数据网络。
在其中一个实施例中,所述PSA-UPF通过所述PSA-UPF的N9接口将所述第一目标GTP上行数据包的包头信息进行除去处理之前,所述方法还包括:
所述PSA-UPF通过所述PSA-UPF的N9接口从所述第一目标GTP上行数据包的包头信息中,读取第二目标通道信息;
所述PSA-UPF获取所述PSA-UPF的N9接口对应的包检查规则;
所述PSA-UPF从所述PSA-UPF的N9接口对应的所述包检查规则中读取所述PSA-UPF的N9通道信息;
所述PSA-UPF通过所述PSA-UPF的N9接口将所述第一目标GTP上行数据包的包头信息进行除去处理包括:
当所述第二目标通道信息与所述PSA-UPF的N9通道信息一致时,则所述PSA-UPF通过所述PSA-UPF的N9接口将所述第一目标GTP上行数据包的包头信息进行除去处理。
在其中一个实施例中,将所述第一目标GTP上行数据包转发至所述PSA-UPF,包括:
在所述I-UPF通过所述I-UPF的N9接口发送第二回声消息至所述PSA-UPF后,所述PSA-UPF接收所述第二回声消息;
在所述PSA-UPF依据所述第二回声消息向所述I-UPF发送回声响应后,所述I-UPF将所述第一目标GTP上行数据包转发至所述PSA-UPF。
在其中一个实施例中,所述方法还包括:
当用户终端对应的基站由原基站切换至目标基站时,则所述原基站对应的PSA-UPF依据所述I-UPF的N9通道信息生成结束标志数据包;
在所述原基站对应的PSA-UPF将所述结束标志数据包发送至所述I-UPF后,所述I-UPF将所述结束标志数据包转发至所述原基站,以使所述原基站停止发送数据包。
本申请还提供了一种GTP数据包的处理装置,其特征在于,所述装置包括:
接收与读取模块,用于所述I-UPF通过所述I-UPF的N3接口接收GTP上行数据包,并通过所述I-UPF的N3接口从所述GTP上行数据包中读取目的地址;
读取与确定模块,用于当所述I-UPF的N3接口对应的服务数据过滤规则为分流业务规则时,所述I-UPF从所述分流业务规则中读取数据网络的IP地址,并依据所述数据网络的IP地址确定目标地址范围;
替换与转发模块,用于当所述目的地址在所述目标地址范围内时,则所述I-UPF通过所述I-UPF的N3接口将所述GTP上行数据包的包头信息中的通道信息替换为所述PSA-UPF的N9通道信息,得到第一目标GTP上行数据包,并将所述第一目标GTP上行数据包转发至所述PSA-UPF;
去除与发送模块,用于所述PSA-UPF通过所述PSA-UPF的N9接口将所述第一目标GTP上行数据包的包头信息进行除去处理,得到第二目标GTP上行数据包,并通过所述PSA-UPF的N9接口将所述第二目标GTP上行数据包发送至所述数据网络。
在其中一个实施例中,所述去除与发送模块还用于所述PSA-UPF通过所述PSA-UPF的N9接口从所述第一目标GTP上行数据包的包头信息中,读取第二目标通道信息;所述PSA-UPF获取所述PSA-UPF的N9接口对应的包检查规则;所述PSA-UPF从所述PSA-UPF的N9接口对应的所述包检查规则中读取所述PSA-UPF的N9通道信息;当所述第二目标通道信息与所述PSA-UPF的N9通道信息一致时,则所述PSA-UPF通过所述PSA-UPF的N9接口将所述第一目标GTP上行数据包的包头信息进行除去处理。
在其中一个实施例中,所述替换与转发模块还用于在所述I-UPF通过所述I-UPF的N9接口发送第二回声消息至所述PSA-UPF后,所述PSA-UPF接收所述第二回声消息;在所述PSA-UPF依据所述第二回声消息向所述I-UPF发送回声响应后,所述I-UPF将所述第一目标GTP上行数据包转发至所述PSA-UPF。
在其中一个实施例中,所述去除与发送模块还用于当用户终端对应的基站由原基站切换至目标基站时,则所述原基站对应的PSA-UPF依据所述I-UPF的N9通道信息生成结束标志数据包;在所述原基站对应的PSA-UPF将所述结束标志数据包发送至所述I-UPF后,所述I-UPF将所述结束标志数据包转发至所述原基站,以使所述原基站停止发送数据包。
本申请还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述方法的步骤。
本申请还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述方法的步骤。
本申请还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述方法的步骤。
上述GTP数据包的处理方法、装置、计算机设备和存储介质,通过I-UPF通过I-UPF的N3接口接收GTP上行数据包,并通过I-UPF的N3接口从GTP上行数据包中读取目的地址;当I-UPF的N3接口对应的服务数据过滤规则为分流业务规则时,I-UPF从分流业务规则中读取数据网络的IP地址,并依据数据网络的IP地址确定目标地址范围;当目的地址在目标地址范围内时,则I-UPF通过I-UPF的N3接口将GTP上行数据包的包头信息中的通道信息替换为PSA-UPF的N9通道信息,得到第一目标GTP上行数据包,并将第一目标GTP上行数据包转发至PSA-UPF;PSA-UPF通过PSA-UPF的N9接口将第一目标GTP上行数据包的包头信息进行除去处理,得到第二目标GTP上行数据包,并通过PSA-UPF的N9接口将第二目标GTP上行数据包发送至数据网络。在5G核心网中本申请提供了一种UPF的N9接口对GTP上行数据包处理的方法,从而实现了5G核心网的UPF对GTP上行数据包的高效处理。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例提供的GTP数据包的处理方法,可以应用于如图1所示的应用环境中。其中,终端102通过网络与服务器104进行通信。数据存储系统可以存储服务器104需要处理的数据。数据存储系统可以集成在服务器104上,也可以放在云上或其他网络服务器上。本申请可由终端102或服务器104执行。需指出的是,5G核心网中的UPF可以是服务器104中的软件模块,UPF包括I-UPF和PSA-UPF,本实施例以服务器104执行为例进行说明。
在服务器104中,PSA-UPF通过PSA-UPF的N6接口接收GTP下行数据包;PSA-UPF通过PSA-UPF的N6接口,依据I-UPF的N9通道信息生成GTP下行数据包的包头信息,并依据GTP下行数据包的包头信息和GTP下行数据包生成第一目标GTP下行数据包;PSA-UPF将第一目标GTP下行数据包发送至I-UPF;I-UPF通过I-UPF的N9接口将第一目标GTP下行数据包的包头信息中的I-UPF的N9通道信息替换为基站通道信息,得到第二目标GTP下行数据包;I-UPF将第二目标GTP下行数据包进行转发至基站。
其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑、物联网设备和便携式可穿戴设备,物联网设备可为智能音箱、智能电视、智能空调、智能车载设备等。便携式可穿戴设备可为智能手表、智能手环、头戴设备等。服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一个实施例中,如图2所示,提供了一种GTP数据包的处理方法,以该方法应用于图1中的服务器104为例进行说明,包括以下步骤:
S202,PSA-UPF通过PSA-UPF的N6接口接收GTP下行数据包。
其中,UPF包括I-UPF(Intermediate UPF)和PSA-UPF(PDU Session Ancho UPF)。(R)AN(基站)与PSAUPF之间的所有中间UPF都称为I-UPF,I-UPF包括ULCL UPF(UplinkClassifier UPF)和BP UPF(Branching Point UPF),ULCL UPF具备分流功能可以将本地业务转发到本地PSA UPF上的UPF称为上行分类器UPF。ULCL UPF存在于IPv4/IPv6 PDU会话场景中。BP UPF具备分叉点功能可以将IPv6多宿主PDU会话数据转发到不同PSA UPF上,BPUPF存在于IPv6多宿主PDU会话场景中。PSA UPF通过N6接口与DN(Data Network,数据网络)连接的UPF称为会话锚点UPF。通过PSA UPF实现核心网与外部数据网络的连接。N9接口是指UPF与UPF之间的GTP数据通道的接口。PSA-UPF的N6接口是指PSA-UPF与数据网络之间的接口。GTP(GPRS Tunnel Protocol,GPRS隧道传输协议)数据包可以指遵循GPRS隧道传输协议的数据包。GTP下行数据包可以指下行的GTP数据包,包头信息可以指数据包中的包头信息。
在一个实施例中,PSA-UPF通过PSA-UPF的N6接口接收数据网络发送的GTP下行数据包,再从GTP下行数据包中读取该GTP下行数据包中的包头信息。
S204,PSA-UPF通过PSA-UPF的N6接口,依据I-UPF的N9通道信息生成GTP下行数据包的包头信息,并依据GTP下行数据包的包头信息和GTP下行数据包生成第一目标GTP下行数据包。
其中,N9通道信息可以指N9接口的通道信息,通道信息包括IP(InternetProtocol,互联网协议)地址和隧道端点标识(Tunnel End Point identifier,TEID)。在通道信息中,IP地址可用于接收或发送数据包。隧道端点标识可以指相应接口的唯一标识,接口接收数据包时,隧道端点标识可用于判断数据包的来向,例如,N9接口的隧道端点标识可用于判断GTP数据包是来自PSA-UPF还是DN。I-UPF的N9的IP地址和隧道端点标识可以指I-UPF的N9接口的IP地址和I-UPF的N9接口的隧道端点标识。第一目标GTP下行数据包可以指待转发的下行GTP数据包,第一目标GTP下行数据包与第二目标GTP下行数据包是指不同的待转发的下行GTP数据包。
在一个实施例中,I-UPF生成I-UPF的N9通道信息,并将I-UPF的N9通道信息存储于PSA-UPF的N6接口对应的转发行为规则;在依据I-UPF的N9通道信息生成GTP下行数据包的包头信息之前,PSA-UPF确定PSA-UPF的N6接口对应的转发行为规则;PSA-UPF从PSA-UPF的N6接口对应的转发行为规则中,读取I-UPF的N9通道信息。
其中,转发行为规则(Forwarding Action Rule,FAR)又可称转发操作规则,用于对数据包进行转发的场景。
在一个实施例中,PSA-UPF确定PSA-UPF的N6接口对应的转发行为规则包括:PSA-UPF从5G核心网的SMF中获取PSA-UPF的N6接口对应的转发行为规则。
在一个实施例中,PSA-UPF生成PSA-UPF的N6接口对应的转发行为规则获取请求,将该请求发送至5G核心网的SMF,SMF将该PSA-UPF的N6接口对应的转发行为规则发送至PSA-UPF,PSA-UPF接收该PSA-UPF的N6接口对应的转发行为规则。
S206,PSA-UPF将第一目标GTP下行数据包发送至I-UPF。
具体地,在PSA-UPF通过PSA-UPF的N9接口发送第一回声消息至I-UPF后,I-UPF接收第一回声消息;在I-UPF依据第一回声消息向PSA-UPF发送回声响应后,PSA-UPF将第一目标GTP下行数据包转发至I-UPF的N9接口。
其中,其中,回声消息可以指用于维护接口之间的通道的消息,回声消息可以指echo消息,第一回声消息与第二回声消息可以指不同的回声消息。
S208,I-UPF通过I-UPF的N9接口将第一目标GTP下行数据包的包头信息中的I-UPF的N9通道信息替换为基站通道信息,得到第二目标GTP下行数据包。
其中,基站通道信息可以基站的通道信息,基站通道信息包括基站的IP地址和隧道端点标识。
在一个实施例中,I-UPF生成I-UPF的N9通道信息,并将I-UPF的N9通道信息存储于I-UPF的N9接口对应的包检查规则;I-UPF的N9通道信息包括I-UPF的N9的IP地址和隧道端点标识;I-UPF通过基站生成基站通道信息,并将基站的通道信息存储于I-UPF的N9接口对应的转发行为规则。
其中,包检查规则(Packet Detection Rule,PDR)可用于检查数据包的来向的规则。
在一个实施例中,在S208之前,I-UPF获取I-UPF的N9接口对应的包检查规则;I-UPF从I-UPF的N9接口对应的包检查规则中读取I-UPF的N9通道信息;I-UPF获取I-UPF的N9接口对应的转发行为规则;I-UPF从I-UPF的N9接口对应的转发行为规则中读取基站通道信息。
在一个实施例中,S208包括I-UPF通过I-UPF的N9接口从第一目标GTP下行数据包的包头信息中,读取第一目标通道信息;当第一目标通道信息与I-UPF的N9通道信息一致时,则I-UPF通过I-UPF的N9接口将第一目标GTP下行数据包的包头信息中的I-UPF的N9通道信息替换为基站通道信息,或通过I-UPF的N9接口将第一目标GTP下行数据包的包头信息替换为第一目标包头信息;第一目标包头信息包含基站通道信息。
其中,第一目标通道信息可以指在第一目标GTP下行数据包的包头信息中的目标通道信息。目标通道信息可以指数据包的目的对应的通道信息。第一目标包头信息可以指用于替换第一目标GTP下行数据包中的包头信息的目标包头信息。
具体地,I-UPF可以响应于的通道信息的读取指令,通过I-UPF的N9接口,从第一目标GTP下行数据包的包头信息中读取第一目标通道信息。
S210,I-UPF将第二目标GTP下行数据包进行转发至基站。
具体地,I-UPF依据基站通道信息将第二目标GTP下行数据包转发至相应基站。
在一个实施例中,I-UPF依据第二目标GTP下行数据包中的基站通道信息中的IP地址,确定第二目标GTP下行数据包转发的目的基站,再依据该基站通道信息中的隧道端点标识确定目的基站的目的接口,I-UPF将第二目标GTP下行数据包进行转发至目的基站的目的接口。
其中,目的基站可以指数据包将去往的基站。目的接口可以指数据包将到达的接口。
在一个实施例中,当用户终端(UE)对应的基站由原基站切换至目标基站时,则原基站对应的PSA-UPF依据I-UPF的N9通道信息生成结束标志数据包;在原基站对应的PSA-UPF将结束标志数据包发送至I-UPF后,I-UPF将结束标志数据包转发至原基站,以使原基站停止发送数据包。
其中,原基站可以指原先用户终端对应的基站。目标基站可以指用户终端目标连接的基站。结束标志数据包可以指Endmarker数据包。
上述GTP数据包的处理方法中,通过PSA-UPF通过PSA-UPF的N6接口接收GTP下行数据包;PSA-UPF通过PSA-UPF的N6接口,依据I-UPF的N9通道信息生成GTP下行数据包的包头信息,并依据GTP下行数据包的包头信息和GTP下行数据包生成第一目标GTP下行数据包;PSA-UPF将第一目标GTP下行数据包发送至I-UPF;I-UPF通过I-UPF的N9接口将第一目标GTP下行数据包的包头信息中的I-UPF的N9通道信息替换为基站通道信息,得到第二目标GTP下行数据包;I-UPF将第二目标GTP下行数据包进行转发至基站。在5G核心网中本申请提供了一种UPF的N9接口对GTP下行数据包处理的方法,从而实现了5G核心网的UPF对GTP下行数据包的高效处理。
在一个实施例中,如图11所示,还提供了一种GTP数据包的处理方法,以该方法应用于图1中的服务器104为例进行说明,包括以下步骤:
S1102,I-UPF通过I-UPF的N3接口接收GTP上行数据包,并通过I-UPF的N3接口从GTP上行数据包中读取目的地址。
其中,I-UPF的N3接口是指基站与UPF之间的接口。GTP上行数据包可以指上行传输的GTP数据包。目的地址可以指GTP上行数据包最终的目的地址。
在一个实施例中,I-UPF通过I-UPF的N3接口接收基站发送的GTP上行数据包。
S1104,当I-UPF的N3接口对应的服务数据过滤规则为分流业务规则时,I-UPF从分流业务规则中读取数据网络的IP地址,并依据数据网络的IP地址确定目标地址范围。
其中,服务数据过滤规则(Service Data Flow,SDF)可以指I-UPF的N3接口对应的服务数据过滤规则。目标地址范围可以指以数据网络的IP地址确定的目标地址范围,例如,数据网络的IP地址为172.16.0.139/24,则目标地址范围为172.16.0.0~172.16.0.255。
在一个实施例中,在S1104之前,I-UPF从5G核心网的会话管理功能(SessionManagement Function,SMF)网元中获取I-UPF的N3接口对应的服务数据过滤规则。
在一个实施例中,I-UPF生成I-UPF的N3接口对应的服务数据过滤规则获取请求,将该请求发送至5G核心网的SMF,SMF将该I-UPF的N3接口对应的服务数据过滤规则发送至I-UPF,I-UPF接收该I-UPF的N3接口对应的服务数据过滤规则。
S1106,当目的地址在目标地址范围内时,则I-UPF通过I-UPF的N3接口将GTP上行数据包的包头信息中的通道信息替换为PSA-UPF的N9通道信息,得到第一目标GTP上行数据包,并将第一目标GTP上行数据包转发至PSA-UPF。
其中,第一目标GTP上行数据包待转发的上行GTP数据包。第一目标GTP上行数据包与第二目标GTP上行数据包是不同的待转发的上行GTP数据包。
在一个实施例中,当目的地址在目标地址范围内时,则I-UPF通过I-UPF的N3接口将GTP上行数据包的包头信息中的通道信息替换为PSA-UPF的N9通道信息,或通过I-UPF的N3接口将GTP上行数据包的包头信息替换为第二目标包头信息,得到第一目标GTP上行数据包;第二目标包头信息包含PSA-UPF的N9通道信息。
在一个实施例中,将第一目标GTP上行数据包转发至PSA-UPF,包括:在I-UPF通过I-UPF的N9接口发送第二回声消息至PSA-UPF后,PSA-UPF接收第二回声消息;在PSA-UPF依据第二回声消息向I-UPF发送回声响应后,I-UPF将第一目标GTP上行数据包转发至PSA-UPF。
S1108,PSA-UPF通过PSA-UPF的N9接口将第一目标GTP上行数据包的包头信息进行除去处理,得到第二目标GTP上行数据包,并通过PSA-UPF的N9接口将第二目标GTP上行数据包发送至数据网络。
在一个实施例中,PSA-UPF通过PSA-UPF的N9接口从第一目标GTP上行数据包的包头信息中,读取第二目标通道信息;PSA-UPF获取PSA-UPF的N9接口对应的包检查规则;PSA-UPF从PSA-UPF的N9接口对应的包检查规则中读取PSA-UPF的N9通道信息;当第二目标通道信息与PSA-UPF的N9通道信息一致时,则PSA-UPF通过PSA-UPF的N9接口将第一目标GTP上行数据包的包头信息进行除去处理。
其中,第二通道信息可以指第一目标GTP上行数据包的包头信息中的目标通道信息。
在一个实施例中,当用户终端(UE)对应的基站由原基站切换至目标基站时,则原基站对应的PSA-UPF依据I-UPF的N9通道信息生成结束标志数据包;在原基站对应的PSA-UPF将结束标志数据包发送至I-UPF后,I-UPF将结束标志数据包转发至原基站,以使原基站停止发送数据包。
其中,原基站可以指原先用户终端对应的基站。目标基站可以指用户终端目标连接的基站。结束标志数据包可以指Endmarker数据包。
上述GTP数据包的处理方法,通过I-UPF通过I-UPF的N3接口接收GTP上行数据包,并通过I-UPF的N3接口从GTP上行数据包中读取目的地址;当I-UPF的N3接口对应的服务数据过滤规则为分流业务规则时,I-UPF从分流业务规则中读取数据网络的IP地址,并依据数据网络的IP地址确定目标地址范围;当目的地址在目标地址范围内时,则I-UPF通过I-UPF的N3接口将GTP上行数据包的包头信息中的通道信息替换为PSA-UPF的N9通道信息,得到第一目标GTP上行数据包,并将第一目标GTP上行数据包转发至PSA-UPF;PSA-UPF通过PSA-UPF的N9接口将第一目标GTP上行数据包的包头信息进行除去处理,得到第二目标GTP上行数据包,并通过PSA-UPF的N9接口将第二目标GTP上行数据包发送至数据网络。在5G核心网中本申请提供了一种UPF的N9接口对GTP上行数据包处理的方法,从而实现了5G核心网的UPF对GTP上行数据包的高效处理。
作为一个实例,本实施例如下:
在UPF中实现N9接口,分为三个部分:
a、UPF要形成N9通道的信息,I-UPF与PSA之间要知道彼此N9通道,根据各自的转发规则关联N9信息;
b、I-UPF与PSA之间要进行echo心跳,维护N9通道;
c、I-UPF与PSA各自根据N9接口的转发规则对数据包进行不同的处理,实现N9接口GTP数据包的透传,其中,图3为一个实施例中N9接口的协议栈示意图;N9接口的协议栈如图3所示。图4为一个实施例中N9接口在分流业务下的场景示意图。
1、UPF要形成N9通道信息,UPF之间要知道彼此N9通道,根据各自的转发规则关联N9通道信息(本实施例方法使用golang语言描述);图5为一个实施例中不同UPF的N9接口位置示意图;如图5所示,PSA-UPF的N9通常是处理上行数据包类似N3,I-UPF的N9通常是处理下行数据包类似N6。图6为一个实施例中分设I-UPF的示意图;如图6所示,分设-UPF没有N6不能直接转发到DN,图7为一个实施例中合设I-UPF的示意图;如图7所示,合设-UPF有N6可以直接转发到DN;相当于将PSA2合并到I-UPF,使I-UPF拥有PSA2的功能。
UPF要生成的N9通道信息包括N9的IP和TEID,并将其保存包含(N9IE)PDR中:UPF之间要了解彼此N9通道信息通过SMF下发,同时也要上报关于自身N9通道信息,对方的N9通道信息保存在数据包转发规则FAR中。图8为一个实施例中不同UPF之间的下发与上报的通道消息示意图;如图8所示,通道信息在I-UPF、PSA-UPF和SMF之间是以下发与上报的方式进行传递的。
形成SDF的匹配规则与N9通道关联,在I-UPF在上行PDR中有分流规则的SDF,此匹配规则PDR关联的转发FAR中IE OuterHeaderCreation保存PSA(边缘UPF)的N9通道信息;下行转发规则PDR包含N9的通道信息关联的转发规则FAR中OuterHeaderCreation保存基站通道信息。在PSA(边缘UPF)上行转发PDR包含N9的通道信息关联转发规则FAR转发到DN;下行匹配规则PDR关联转发规则FAR中IEOuterHeaderCreation保存I-UPF的N9通道信息。图10为一个实施例中不同UPF之间的PDR和FAR示意图,如图10所示,1和2过程表示的是:I-UPF是配置有上行PDR1与FAR1、下行PDR2与FAR2;PSA1是配置有上行PDR1与FAR1、下行PDR2与FAR2;PSA2是配置有上行PDR1与FAR1、下行PDR2与FAR2;3过程表示的是PSA1和PSA2是配置有下行PDR2与FAR3;4和5过程同理。
2、I-UPF与PSA进行echo的心跳,以维护N9通道,原来UPF主要是跟基站进行echo消息进行心跳以维护数据面的正常,现在UPF之间数据通道的正常也关乎数据面的正常通行。I-UPF与PSA的echo心跳方便在分流业务数据面不通时进行问题定位。UPF不仅仅需要处理echo请求响应消息,也需要处理请求消息,处理请求消息跟要区分是发自基站还是UPF的。图9为一个实施例中UPF之间进行echo的心跳示意图;
3、I-UPF和PSA各自的N9接口对数据的处理以完成GTP数据包的透传。
4、在分流业务过程中边缘UPF可能出现发生Endmarker给基站的问题,但是边缘UPF不与基站之间接触,这样一来Endmarker数据包就需要I-UPF进行转发;边缘UPF的Endmarker数据包包含I-UPF的N9通道信息,这样I-UPF的N9接口在接收到此数据包就按照一般数据包的处理换成基站的通道信息转发给基站,这样一来I-UPF就完成了Endmarker的透传。
应该理解的是,虽然如上的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的GTP数据包的处理方法的GTP数据包的处理装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个GTP数据包的处理装置实施例中的具体限定可以参见上文中对于GTP数据包的处理方法的限定,在此不再赘述。
在一个实施例中,如图12所示,提供了一种GTP数据包的处理装置,包括:接收模块1202、生成模块1204、发送模块1206、替换模块1208和转发模块1210,其中:
接收模块1202,用于PSA-UPF通过PSA-UPF的N6接口接收GTP下行数据包;
生成模块1204,用于PSA-UPF通过PSA-UPF的N6接口,依据I-UPF的N9通道信息生成GTP下行数据包的包头信息,并依据GTP下行数据包的包头信息和GTP下行数据包生成第一目标GTP下行数据包;
发送模块1206,用于PSA-UPF将第一目标GTP下行数据包发送至I-UPF;
替换模块1208,用于I-UPF通过I-UPF的N9接口将第一目标GTP下行数据包的包头信息中的I-UPF的N9通道信息替换为基站通道信息,得到第二目标GTP下行数据包;
转发模块1210,用于I-UPF将第二目标GTP下行数据包进行转发至基站。
在一个实施例中,生成模块1204还用于I-UPF生成I-UPF的N9通道信息,并将I-UPF的N9通道信息存储于PSA-UPF的N6接口对应的转发行为规则;PSA-UPF确定PSA-UPF的N6接口对应的转发行为规则;PSA-UPF从PSA-UPF的N6接口对应的转发行为规则中,读取I-UPF的N9通道信息。
在一个实施例中,替换模块1208还用于I-UPF生成I-UPF的N9通道信息,并将I-UPF的N9通道信息存储于I-UPF的N9接口对应的包检查规则;I-UPF的N9通道信息包括I-UPF的N9的IP地址和隧道端点标识;I-UPF通过基站生成基站通道信息,并将基站的通道信息存储于I-UPF的N9接口对应的转发行为规则。
在一个实施例中,替换模块1208还用于I-UPF获取I-UPF的N9接口对应的包检查规则;I-UPF从I-UPF的N9接口对应的包检查规则中读取I-UPF的N9通道信息;I-UPF获取I-UPF的N9接口对应的转发行为规则;I-UPF从I-UPF的N9接口对应的转发行为规则中读取基站通道信息。
在其中一个实施例中,替换模块1208还用于I-UPF通过I-UPF的N9接口从第一目标GTP下行数据包的包头信息中,读取第一目标通道信息;当第一目标通道信息与I-UPF的N9通道信息一致时,则I-UPF通过I-UPF的N9接口将第一目标GTP下行数据包的包头信息中的I-UPF的N9通道信息替换为基站通道信息,或通过I-UPF的N9接口将第一目标GTP下行数据包的包头信息替换为第一目标包头信息;第一目标包头信息包含基站通道信息。
在其中一个实施例中,转发模块1210还用于在PSA-UPF通过PSA-UPF的N9接口发送第一回声消息至I-UPF后,I-UPF接收第一回声消息;在I-UPF依据第一回声消息向PSA-UPF发送回声响应后,PSA-UPF将第一目标GTP下行数据包转发至I-UPF。
上述实施例,通过PSA-UPF通过PSA-UPF的N6接口接收GTP下行数据包;PSA-UPF通过PSA-UPF的N6接口,依据I-UPF的N9通道信息生成GTP下行数据包的包头信息,并依据GTP下行数据包的包头信息和GTP下行数据包生成第一目标GTP下行数据包;PSA-UPF将第一目标GTP下行数据包发送至I-UPF;I-UPF通过I-UPF的N9接口将第一目标GTP下行数据包的包头信息中的I-UPF的N9通道信息替换为基站通道信息,得到第二目标GTP下行数据包;I-UPF将第二目标GTP下行数据包进行转发至基站。在5G核心网中本申请提供了一种UPF的N9接口对GTP下行数据包处理的方法,从而实现了5G核心网的UPF对GTP下行数据包的高效处理。
在一个实施例中,如图13所示,本申请还提供了一种GTP数据包的处理装置还包括:接收与读取模块1302、读取与确定模块1304、替换与转发模块1306和去除与发送模块1308,其中:
接收与读取模块1302,用于I-UPF通过I-UPF的N3接口接收GTP上行数据包,并通过I-UPF的N3接口从GTP上行数据包中读取目的地址;
读取与确定模块1304,用于当I-UPF的N3接口对应的服务数据过滤规则为分流业务规则时,I-UPF从分流业务规则中读取数据网络的IP地址,并依据数据网络的IP地址确定目标地址范围;
替换与转发模块1306,用于当目的地址在目标地址范围内时,则I-UPF通过I-UPF的N3接口将GTP上行数据包的包头信息中的通道信息替换为PSA-UPF的N9通道信息,得到第一目标GTP上行数据包,并将第一目标GTP上行数据包转发至PSA-UPF;
去除与发送模块1308,用于PSA-UPF通过PSA-UPF的N9接口将第一目标GTP上行数据包的包头信息进行除去处理,得到第二目标GTP上行数据包,并通过PSA-UPF的N9接口将第二目标GTP上行数据包发送至数据网络。
在一个实施例中,去除与发送模块1308还用于PSA-UPF通过PSA-UPF的N9接口从第一目标GTP上行数据包的包头信息中,读取第二目标通道信息;PSA-UPF获取PSA-UPF的N9接口对应的包检查规则;PSA-UPF从PSA-UPF的N9接口对应的包检查规则中读取PSA-UPF的N9通道信息;当第二目标通道信息与PSA-UPF的N9通道信息一致时,则PSA-UPF通过PSA-UPF的N9接口将第一目标GTP上行数据包的包头信息进行除去处理。
在一个实施例中,替换与转发模块1306还用于在I-UPF通过I-UPF的N9接口发送第二回声消息至PSA-UPF后,PSA-UPF接收第二回声消息;在PSA-UPF依据第二回声消息向I-UPF发送回声响应后,I-UPF将第一目标GTP上行数据包转发至PSA-UPF。
在一个实施例中,去除与发送模块1308还用于当用户终端对应的基站由原基站切换至目标基站时,则原基站对应的PSA-UPF依据I-UPF的N9通道信息生成结束标志数据包;在原基站对应的PSA-UPF将结束标志数据包发送至I-UPF后,I-UPF将结束标志数据包转发至原基站,以使原基站停止发送数据包。
上述实施例,通过I-UPF通过I-UPF的N3接口接收GTP上行数据包,并通过I-UPF的N3接口从GTP上行数据包中读取目的地址;当I-UPF的N3接口对应的服务数据过滤规则为分流业务规则时,I-UPF从分流业务规则中读取数据网络的IP地址,并依据数据网络的IP地址确定目标地址范围;当目的地址在目标地址范围内时,则I-UPF通过I-UPF的N3接口将GTP上行数据包的包头信息中的通道信息替换为PSA-UPF的N9通道信息,得到第一目标GTP上行数据包,并将第一目标GTP上行数据包转发至PSA-UPF;PSA-UPF通过PSA-UPF的N9接口将第一目标GTP上行数据包的包头信息进行除去处理,得到第二目标GTP上行数据包,并通过PSA-UPF的N9接口将第二目标GTP上行数据包发送至数据网络。在5G核心网中本申请提供了一种UPF的N9接口对GTP上行数据包处理的方法,从而实现了5G核心网的UPF对GTP上行数据包的高效处理。
上述GTP数据包的处理装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器或终端,本实施例以计算机设备为服务器进行说明。其内部结构图可以如图14所示。该计算机设备包括处理器、存储器、输入/输出接口(Input/Output,简称I/O)和通信接口。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口通过输入/输出接口连接到系统总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储GTP数据包的处理数据。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种GTP数据包的处理方法。本领域技术人员可以理解,图14中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各实施例。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述各实施例。
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述各实施例。
需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。