本发明涉及移动通信,尤其涉及一种upf数据热更新方法、装置、设备及存储介质。
背景技术:
1、upf(user plane function,用户平面功能)是3gpp(3rd generationpartnership project,第三代合作伙伴计划)5g核心网系统架构的重要组成部分,主要负责5g核心网中用户平面数据包的路由和转发相关功能。pfcp(packet forwarding controlprotocol,报文转发控制协议)是用于控制upf的协议,它负责会话的建立与维护、数据面规则的控制、流量报告与计费以及qos(quality of service,服务质量)和策略控制。
2、在现有技术中,upf对于数据面的转发依赖于会话控制信息(pfcp会话消息)描述的规则。当upf收到会话控制信息后,会将其解析并存储在进程内存中,然而upf在进行热更新时,会出现存储在进程内存中的控制面信息丢失的情况,从而导致热更新失败。
技术实现思路
1、本发明提供一种upf数据热更新方法、装置、设备及存储介质,以解决upf在进行热更新时,存储在进程内存中的控制面信息丢失从而导致热更新失败的问题。
2、为实现上述目的,本发明实施例提供了一种upf数据热更新方法,包括:
3、第一upf进程接收会话控制信息,将所述会话控制信息转换成序列化数据存储至数据库中;
4、在所述第一upf进程需要进行热更新,第二upf进程被创建并启动的情况下,所述第二upf进程从所述数据库中获取所述序列化数据,对所述序列化数据进行反序列化,得到所述会话控制信息;
5、所述第一upf进程对自身的控制面接口进行下线处理,所述第二upf进程对自身的控制面接口进行上线处理;
6、所述第二upf进程从所述数据库中获取最新的所述序列化数据,对最新的所述序列化数据进行反序列化,得到最新的所述会话控制信息;
7、所述第一upf进程释放网卡的控制权,所述第二upf进程接管所述网卡的控制权。
8、作为上述方案的改进,所述会话控制信息包括:pfcp消息类型、pfcp消息序号、备份时间、pfcp消息内容、smf的ip端口信息和pfcp偶联的会话id;
9、其中,所述pfcp消息内容包括:使用报告规则、转发动作规则和包检测规则。
10、作为上述方案的改进,所述第一upf进程对自身的控制面接口进行下线处理,所述第二upf进程对自身的控制面接口进行上线处理,包括:
11、所述第二upf进程在得到所述会话控制信息后,向所述第一upf进行发送控制面接口下线指令;
12、所述第一upf进程接收所述控制面接口下线指令,对自身的控制面接口进行下线处理,在所述下线处理成功后,向所述第二upf进程发送控制面接口上线指令;
13、所述第二upf进程接收所述控制面接口上线指令,对自身的控制面接口进行上线处理,在所述上线处理成功后,向所述第一upf进程发送控制面成功转移消息。
14、作为上述方案的改进,所述第一upf进程释放网卡的控制权,所述第二upf进程接管所述网卡的控制权,包括:
15、所述第二upf进程在得到最新的所述会话控制信息后,向所述第一upf进程发送数据面下线指令;
16、所述第一upf进程接收所述数据面下线指令,停止接收和发送数据报文,并释放网卡的控制权,在所述网卡的控制权释放成功后,向所述第二upf进程发送数据面上线指令;
17、所述第二upf进程接收所述数据面上线指令,接管所述网卡的控制权并开始接收和发送数据报文,在所述网卡的控制权接管成功后,向所述第一upf进程发送数据面成功转移消息。
18、作为上述方案的改进,在所述第二upf进程接管所述网卡的控制权之后,所述upf数据热更新方法还包括:
19、所述第一upf进程获取所述第二upf进程的状态信息;
20、若所述状态信息出现异常,则所述第一upf进程回滚至所述第二upf进程被创建之前的状态;
21、若所述状态信息正常,则所述第一upf进程下线。
22、作为上述方案的改进,所述状态信息包括:所述第二upf进程接收的数据报文的数量、所述第二upf进程发送的数据报文的数量、所述第二upf进程与smf之间的pfcp偶联关系,所述第二upf进程的心跳报文和pfcp会话数量。
23、为实现上述目的,本发明实施例还提供了一种upf数据热更新装置,包括第一upf进程和第二upf进程,其中:
24、所述第一upf进程,用于接收会话控制信息,将所述会话控制信息转换成序列化数据存储至数据库中;
25、所述第二upf进程,用于所述第一upf进程需要进行热更新,所述第二upf进程被创建并启动的情况下,并从所述数据库中获取所述序列化数据,对所述序列化数据进行反序列化,得到所述会话控制信息;
26、所述第一upf进程,还用于对自身的控制面接口进行下线处理;
27、所述第二upf进程,还用于对自身的控制面接口进行上线处理;
28、所述第二upf进程,还用于从所述数据库中获取最新的所述序列化数据,对最新的所述序列化数据进行反序列化,得到最新的所述会话控制信息;
29、所述第一upf进程,还用于释放网卡的控制权;
30、所述第二upf进程,还用于接管所述网卡的控制权。
31、作为上述方案的改进,所述第二upf进程,还用于在得到所述会话控制信息后,向所述第一upf进行发送控制面接口下线指令;
32、所述第一upf进程,还用于接收所述控制面接口下线指令,对自身的控制面接口进行下线处理,在所述下线处理成功后,向所述第二upf进程发送控制面接口上线指令;
33、所述第二upf进程,还用于接收所述控制面接口上线指令,对自身的控制面接口进行上线处理,在所述上线处理成功后,向所述第一upf进程发送控制面成功转移消息。
34、为实现上述目的,本发明实施例还提供一种upf数据热更新设备,包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器在执行所述计算机程序时实现上述upf数据热更新方法。
35、为实现上述目的,本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质包括存储的计算机程序;其中,所述计算机程序在运行时控制所述计算机可读存储介质所在的设备执行上述upf数据热更新方法。
36、实施本发明实施例,具有如下有益效果:
37、本发明实施例提供的upf数据热更新方法、装置、设备及存储介质,通过将第一upf进程的会话控制信息进行序列化存储,当第一upf进程需要进行热更新时,创建并启动一个新的upf进程即第二upf进程,从而使第二upf进程能够恢复所述会话控制信息,避免了存储在进程内存中的控制面信息的丢失,实现控制面信息在进程热更新中的持久化保存,从而保证成功完成upf的热更新。而且,新创建的第二upf进程可以独立接管控制面和数据面,从而恢复控制面信息,本发明实施例操作简单,可操作性高,提高了upf进程热更新的效率,减少了服务中断时间,并且整个过程不受其他网元的影响,保证了热更新的顺畅性。