一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

数据处理方法、HSS、电子设备及计算机存储介质与流程

2022-11-19 16:56:17 来源:中国专利 TAG:

数据处理方法、hss、电子设备及计算机存储介质
技术领域
1.本发明涉及通信技术领域,具体涉及一种数据处理方法、一种hss、一种电子设备及一种计算机存储介质。


背景技术:

2.ims(ip multimedia subsystem,ip多媒体子系统)是基于ip网提供话音及多媒体业务的网络体系架构。ims可以实现因特网业务与固定用户业务和移动用户业务与融合、语音与数据和视频等多媒体业务融合,是下一代网络的核心技术。hss(home subscriber server,归属用户服务器)是ims网络中的核心数据库,负责用户数据和业务数据的存储,支持ims业务接入鉴权、漫游登记、移动被叫路由寻址功能,此外还可为i-cscf(interrogating call session control function,呼叫会话控制功能实体)提供选择s-cscf(serving call session control function,服务会话控制功能实体)所需的信息,并与as(激活接入层)交互提供签约数据支持。
3.随着ims网络中用户数量的增长和平台业务的发展,hss中存储的数据量越来越大,频繁地操作hss中的数据,尤其是变化不是很频繁且访问量相对较大的数据,导致hss存在负载压力大、响应速度低等问题。


技术实现要素:

4.本发明针对现有技术中存在的上述不足,提供一种数据处理方法、一种hss、一种电子设备及一种计算机存储介质。
5.第一方面,本发明实施例提供一种数据处理方法,应用于hss,所述方法包括:在确定出当前接收到的数据获取请求为非首次接收到的情况下,从预先开辟的缓存中获取所述数据获取请求对应的响应数据;其中,所述数据获取请求是网络设备根据用户设备发送的用户请求发送至本hss的;将所述响应数据返回给所述网络设备,以供所述网络设备根据所述响应数据处理所述用户请求。
6.在一些实施例中,在所述将所述响应数据返回给所述网络设备之前,所述方法还包括:在确定出当前接收到的数据获取请求为首次接收到的情况下,确定所述数据获取请求对应的响应数据;并将确定的响应数据存储至所述预先开辟的缓存中。
7.在一些实施例中,所述缓存是根据yml配置文件从内存中开辟的,所述缓存为多个,所述从预先开辟的缓存中获取所述数据获取请求对应的响应数据包括:确定所述数据获取请求对应的缓存;从所述数据获取请求对应的缓存中获取所述响应数据。
8.在一些实施例中,不同的数据获取请求调用不同的本地api,在开辟所述缓存之
后,所述方法还包括:分别为每一所述缓存创建存储键;生成所述api的参数信息与所述缓存之间的一一对应关系;所述确定所述数据获取请求对应的缓存包括:根据所述数据获取请求所调用的本地api以及所述对应关系,确定所述数据获取请求对应的缓存。
9.在一些实施例中,在接收到数据获取请求之后,所述方法还包括:创建client结构;解析所述数据获取请求,获取请求参数;将所述请求参数存储至所述client结构的参数列表;从所述client结构的参数列表中提取命令参数;根据命令协议和所述命令参数确定所述数据获取请求所调用的本地api。
10.在一些实施例中,在所述从所述数据获取请求对应的缓存中获取所述响应数据之后,所述方法还包括:删除所述client结构。
11.在一些实施例中,所述将确定的响应数据存储至所述预先开辟的缓存中包括:根据所述数据获取请求所调用的本地api以及所述对应关系,将确定的响应数据存储至相应的缓存中。
12.在一些实施例中,所述用户请求为注册请求、鉴权请求、位置查询请求和注销请求中的任一,所述数据获取请求为用户授权请求uar和多媒体鉴权请求mar中的之一。
13.在一些实施例中,所述网络设备至少包括呼叫会话控制功能实体i-cscf和服务会话控制功能实体s-cscf。
14.第二方面,本发明实施例提供一种hss,所述hss包括缓存、接收模块、处理模块和发送模块;所述接收模块用于,接收数据获取请求;所述处理模块用于,在确定出当前接收到的数据获取请求为非首次接收到的情况下,从预先开辟的所述缓存中获取所述数据获取请求对应的响应数据;其中,所述数据获取请求是网络设备根据用户设备发送的用户请求发送至本hss的;所述发送模块用于,将所述响应数据返回给所述网络设备,以供所述网络设备根据所述响应数据处理所述用户请求。
15.第三方面,本发明实施例提供一种电子设备,包括:一个或多个处理器;存储装置,其上存储有一个或多个程序;当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如前所述的数据处理方法。
16.第四方面,本发明实施例提供一种计算机存储介质,其上存储有计算机程序,其中,所述程序被执行时实现如前所述的数据处理方法。
17.用户设备发送用户请求后,网络设备向hss发送相应的数据获取请求,hss判断该数据获取请求是否为非首次接收到,在确定出该数据获取请求为非首次接收到的情况下,由于hss预先开辟出缓存且缓存中存储有该数据获取请求对应的响应数据,hss可以直接从
预先开辟的缓存中获取该数据获取请求对应的响应数据,并将响应数据返回给网络设备,以供网络设备根据响应数据处理用户请求,避免了通过操作本地数据库例如对数据库中的数据进行查询、修改、删除等操作来确定相关响应数据,降低了hss的处理负荷,增加了响应用户请求的平滑度,提高了响应用户请求的速度。
附图说明
18.图1是本发明实施例提供的数据处理方法的流程示意图一;图2是本发明实施例提供的数据处理方法的流程示意图二;图3是本发明实施例提供的数据处理方法的流程示意图三;图4是本发明实施例提供的数据处理方法的流程示意图四;图5是本发明实施例提供的数据处理方法的原理示意图;图6是本发明实施例提供的ue在ims网络注册的流程示意图;图7是本发明实施例提供的hss的模块示意图。
具体实施方式
19.在下文中将参考附图更充分地描述示例实施例,但是所述示例实施例可以以不同形式来体现且不应当被解释为限于本文阐述的实施例。反之,提供这些实施例的目的在于使本发明透彻和完整,并将使本领域技术人员充分理解本发明的范围。
20.如本文所使用的,术语“和/或”包括一个或多个相关列举条目的任何和所有组合。
21.本文所使用的术语仅用于描述特定实施例,且不意欲限制本发明。如本文所使用的,单数形式“一个”和“该”也意欲包括复数形式,除非上下文另外清楚指出。还将理解的是,当本说明书中使用术语“包括”和/或“由
……
制成”时,指定存在所述特征、整体、步骤、操作、元件和/或组件,但不排除存在或添加一个或多个其他特征、整体、步骤、操作、元件、组件和/或其群组。
22.本文所述实施例可借助本发明的理想示意图而参考平面图和/或截面图进行描述。因此,可根据制造技术和/或容限来修改示例图示。因此,实施例不限于附图中所示的实施例,而是包括基于制造工艺而形成的配置的修改。因此,附图中例示的区具有示意性属性,并且图中所示区的形状例示了元件的区的具体形状,但并不旨在是限制性的。
23.除非另外限定,否则本文所用的所有术语(包括技术和科学术语)的含义与本领域普通技术人员通常理解的含义相同。还将理解,诸如那些在常用字典中限定的那些术语应当被解释为具有与其在相关技术以及本发明的背景下的含义一致的含义,且将不解释为具有理想化或过度形式上的含义,除非本文明确如此限定。
24.为了提升ims网络中hss的响应速度,本发明实施例提出,可以通过预先在hss中开辟出缓存,在用户设备首次发起用户请求时,将从数据库中获取的响应数据放入缓存中,待用户设备后续再次发起相同的用户请求时,直接返回缓存中的相关响应数据,而无需再操作本地数据库来确定相关响应数据。
25.相应的,如图1所示,本发明实施例提供一种数据处理方法,应用于hss,所述方法可以包括如下步骤:在步骤s11中,在确定出当前接收到的数据获取请求为非首次接收到的情况下,从
预先开辟的缓存中获取所述数据获取请求对应的响应数据;其中,所述数据获取请求是网络设备根据用户设备发送的用户请求发送至本hss的;在步骤s12中,将所述响应数据返回给所述网络设备,以供所述网络设备根据所述响应数据处理所述用户请求。
26.其中,在当前网络设备与用户设备之间的通信链路上,可以存在其他网络设备,也可以不存在其他网络设备,也即,用户请求可以是用户设备直接发送至当前网络设备的,也可以是用户设备发送至其他网络设备的,只是其他网络设备请求当前网络设备做进一步处理。hss至少包括预先开辟的缓存和数据库。
27.用户设备发送用户请求后,当前网络设备向hss发送相应的数据获取请求,以获取与用户设备相关的用户信息,hss可以判断该数据获取请求是否是首次接收到,由于该数据获取请求是网络设备根据用户设备发送的用户请求发送至本hss的,也就相当于是在判断本次的用户请求是用户设备首次发起的还是非首次发起的,若是用户设备非首次发起的,则从预先开辟的缓存中获取数据获取请求对应的响应数据以便返回给网络设备,以供网络设备对用户请求进行处理。
28.需要注意的是,用户设备发送用户请求后,除向hss发送相应的数据获取请求之外,网络设备有时还会向hss发送其他类型的请求,本发明实施例未涉及,因此不做赘述。
29.从上述步骤s11-s12可以看出,用户设备发送用户请求后,网络设备向hss发送相应的数据获取请求,hss判断该数据获取请求是否为非首次接收到,在确定出该数据获取请求为非首次接收到的情况下,由于hss预先开辟出缓存且缓存中存储有该数据获取请求对应的响应数据,hss可以直接从预先开辟的缓存中获取该数据获取请求对应的响应数据,并将响应数据返回给网络设备,以供网络设备根据响应数据处理用户请求,避免了通过操作本地数据库例如对数据库中的数据进行查询、修改、删除等操作来确定相关响应数据,降低了hss的处理负荷,增加了响应用户请求的平滑度,提高了响应用户请求的速度。
30.若确定出当前接收到的数据获取请求为首次接收到,也就说明本次的用户请求是用户设备首次发起的,缓存中未存储有相关响应数据,hss仍需确定相关响应数据,进一步的,在确定出相关响应数据后,可以将相关响应数据存储至预先开辟的缓存中,这样一来,用户设备下次发起相同的用户请求时,hss就可以直接将缓存中的相关响应数据返回给请求用户信息的网络设备。
31.相应的,在一些实施例中,如图2所示,在所述将所述响应数据返回给所述网络设备(即步骤s12)之前,所述方法还可以包括如下步骤:在步骤s10’中,在确定出当前接收到的数据获取请求为首次接收到的情况下,确定所述数据获取请求对应的响应数据;在步骤s11’中,并将确定的响应数据存储至所述预先开辟的缓存中。
32.在一些实施例中,所述将确定的响应数据存储至所述预先开辟的缓存中(即步骤s11’)可以包括如下步骤:在确定的响应数据中携带的状态码满足预设条件的情况下,将确定的响应数据存储至所述预先开辟的缓存中。
33.作为一种具体的实施方式,确定的响应数据中携带的状态码满足预设条件可以包括:确定的响应数据中携带的状态码的值小于400。例如,httpstatuscode《400。
34.其中,若响应数据中携带的状态码的值大于或等于400,则说明数据获取请求出现
错误,若响应数据中携带的状态码的值小于400,则至少说明数据获取请求是成功的。也就是说,若响应数据中携带的状态码的值大于或等于400,响应数据的作用仅仅是向网络设备通知其请求出现错误,此时响应数据中并不会携带有用户信息,存储响应数据是没有意义的。
35.随着ims网络中用户数量的增长和平台业务的发展,hss中存储的数据量越来越大,为了进一步降低hss的处理负荷、提高响应速度,hss还可以预先开辟出多个缓存,分别用以存储不同的数据获取请求对应的响应数据。
36.相应的,在一些实施例中,所述缓存是根据yml配置文件从内存中开辟的,所述缓存为多个,如图3所示,所述从预先开辟的缓存中获取所述数据获取请求对应的响应数据(即步骤s11中所述)可以包括如下步骤:在步骤s111中,确定所述数据获取请求对应的缓存;在步骤s112中,从所述数据获取请求对应的缓存中获取所述响应数据。
37.其中,yml配置文件中记载了一些重要参数,hss可以预先根据yml配置文件中的参数设置缓存基础功能和端口等,从本地存储中开辟出一段空间作为缓存。hss预先开辟的缓存可以包括多个,分别用以存储不同类型的响应数据。当接收到数据获取请求时,先确定哪个缓存存储了该数据获取请求对应的响应数据,再从确定出的缓存中获取响应数据。
38.对于不同数据获取请求,往往需要调用不同的api(应用程序接口),以便执行不同的指令来获取相应的响应数据,本发明实施例提出,hss可以将预先开辟的缓存与本地api进行一一绑定并生成对应关系,当接收到数据获取请求时,先确定该数据获取请求需要调用哪个api,再根据确定出的api与对应关系来确定出具体是哪个缓存存储了该数据获取请求对应的响应数据。
39.相应的,在一些实施例中,不同的数据获取请求调用不同的本地api,如图4所示,在开辟所述缓存之后,所述方法还可以包括如下步骤:在步骤s21中,分别为每一所述缓存创建存储键;在步骤s22中,生成所述api的参数信息与所述缓存之间的一一对应关系;在步骤s23中,所述确定所述数据获取请求对应的缓存包括:根据所述数据获取请求所调用的本地api以及所述对应关系,确定所述数据获取请求对应的缓存。
40.在预先根据yml配置文件中的参数设置缓存基础功能和端口等,从本地存储中开辟出一段空间作为缓存之后,hss还可以在程序中分别为每一缓存创建不同的存储键,将某个api与某个缓存的存储键进行绑定,并生成该绑定关系的唯一的id或值,将存储键、id或值、api参数之间的对应关系保存在缓存中,以此供程序后续识别、读取缓存内容。
41.在一些实施例中,在接收到数据获取请求之后,所述方法还可以包括如下步骤:创建client结构;解析所述数据获取请求,获取请求参数;将所述请求参数存储至所述client结构的参数列表;从所述client结构的参数列表中提取命令参数;根据命令协议和所述命令参数确定所述数据获取请求所调用的本地api。
42.当监听端口对应的socket(套接字)收到连接请求后,就会创建一个client结构,通过client结构来对连接状态进行管理。在请求进入时,将请求读取缓冲并进行解析后,存入到client的参数列表。然后根据client的参数列表找到对应的command,最后根据命令协议,对command进一步地解析、校验并执行。数据读写的核心处理线程是单线程模型,为了保
持整个系统的高性能,必须避免任何线程导致阻塞的操作。
43.在解析数据获取请求之后,还可以删除client结构来释放内存。相应的,在一些实施例中,在所述从所述数据获取请求对应的缓存中获取所述响应数据之后,所述方法还可以包括如下步骤:删除所述client结构。
44.如前所述,hss可以预先开辟出多个缓存,分别用以存储不同类型的响应数据。相应的,在一些实施例中,所述将确定的响应数据存储至所述预先开辟的缓存中(即步骤s11’)可以包括如下步骤:根据所述数据获取请求所调用的本地api以及所述对应关系,将确定的响应数据存储至相应的缓存中。
45.hss在ims网络中承担的功能较多,可以包括注册、鉴权、注销、位置查询等等,相应的,在一些实施例中,所述用户请求为注册请求、鉴权请求、位置查询请求和注销请求中的任一。
46.需要注意的是,本发明实施例并不仅限于以上列举出的这些请求,只要涉及到需向hss的数据库获取用户信息的请求,均可以在本发明实施例的保护范围之内。
47.i-cscf和s-cscf是两种经常需要向hss获取用户信息来处理用户请求的网络设备。相应的,在一些实施例中,所述网络设备至少可以包括呼叫会话控制功能实体i-cscf和服务会话控制功能实体s-cscf。
48.需要注意的是,本发明实施例并不仅限于以上列举出的这两种网络设备,只要涉及到需向hss的数据库获取用户信息来处理用户请求的网络设备,均可以在本发明实施例的保护范围之内。
49.以下结合图5来对本发明实施例提供的数据处理方法的原理进行简要描述。
50.如图5所示,为本发明实施例提供的数据处理方法的原理示意图,客户端(即用户设备)发起请求后,hss判断该请求是否是客户端首次发出的,实质上是在判断缓存中是否存在相应的响应数据,若缓存中存在相应的响应数据,则根据缓存的数据响应客户端的请求,若缓存中不存在相应的响应数据,则启动mysql(一种关系型数据库管理系统)功能,对数据库中的数据进行查询、修改、删除等操作,根据操作结果响应客户端的请求,以及将响应数据增加到缓存中。
51.以下结合图6和一个具体实施例来对本发明实施例提供的数据处理方法进行详细说明。
52.以用户设备在ims网络的注册流程为例,拜访网络visited network包括用户设备(即user equipment,ue)和p-cscf,家庭网络home network包括i-cscf、hss和s-cscf,如图6所示,该注册流程可以包括如下步骤(1)-(20)。
53.步骤(1),ue向拜访网络的p-cscf发送register请求消息,首次启动注册流程。register请求消息中包含了用户标识、归属网络域名、用户信息、会话描述信息等。
54.步骤(2),p-cscf处理该register请求消息,并使用其中的归属网络域名查询dns获得归属网络中的i-cscf入口点,向该i-cscf转发register请求消息。
55.步骤(3),i-cscf向hss发送用户授权请求(uar),hss对用户设备的身份、服务权限进行鉴权后,由于判断出该uar是首次发送,hss指示i-cscf:根据需要的s-cscf能力以及可用的s-cscf分配一个s-cscf为ue服务。与此同时,hss确定出imsu、impu、impi等信息,并将这些信息分别保存在相应的缓存中,hss的缓存模块向hss返回resultcode(2001)消息。
56.其中,至少在步骤(3)之前,hss已经预先开辟出缓存。
57.步骤(4),hss向i-cscf发送uaa(用户授权应答),uaa中携带有imsu对应的能力集。
58.步骤(5),i-cscf在register请求消息中添加imsu对应的能力集后,转发register请求消息给分配的s-cscf。
59.步骤(6),s-cscf向hss发送多媒体鉴权请求(mar),mar携带认证方案、sip身份验证项数等信息,由于判断出该mar是首次发送,hss从预先开辟缓存中获取impi并根据获取的impi以及mar携带的信息组装得到认证向量,将impu的用户状态设置为鉴权未决后更新缓存中的impu,更新数据库中的以及缓存中的s-cscf的名称,hss的缓存模块向hss返回resultcode(2001)消息。
60.步骤(7),hss向s-cscf发送maa(多媒体认证应答),maa中携带认证信息。
61.步骤(8),s-cscf向i-cscf返回401(未授权)消息。
62.步骤(9),i-cscf向p-cscf返回401(未授权)消息。
63.步骤(10),p-cscf向ue返回401(未授权)消息。
64.其中,401(未授权)消息用于通知ue重新进行认证。
65.步骤(11),ue向拜访网络的p-cscf发送的register请求消息,重新启动注册流程。register请求消息中包含了认证信息、用户标识、归属网络域名、用户信息、会话描述信息等。
66.步骤(12),p-cscf处理该register请求消息,并使用其中的归属网络域名查询dns获得归属网络中的i-cscf入口点,向该i-cscf转发register请求消息。
67.步骤(13),i-cscf向hss第二次发送用户授权请求(uar),由于判断出该uar是非首次发送,hss直接读取缓存中的imsu以获得s-cscf的名称,hss的缓存模块向hss返回resultcode(2002)消息。
68.步骤(14),hss向i-cscf发送携带鉴权信息的uaa,鉴权信息至少包括i-cscf分配给ue的s-cscf的名称。
69.步骤(15),i-cscf根据uaa返回的s-cscf的名称,转发register消息给指定的s-cscf。
70.步骤(16),认证通过,s-cscf向hss发送服务分配请求(sar),hss将impu的用户状态设置为已注册后更新缓存中的impu。
71.步骤(17),s-cscf从hss下载saa(服务分配应答),saa中携带ue的相关信息,如签约信息、安全信息等。
72.步骤(18),s-cscf完成service control,向i-cscf返回200 ok消息(注册确认信息)。
73.步骤(19),i-cscf向p-cscf返回200 ok消息(注册确认信息)。
74.步骤(20),p-cscf向ue返回200 ok消息(注册确认信息),完成注册流程。
75.基于相同的技术构思,本发明实施例还提供一种hss,如图7所示,所述hss包括接收模块101、处理模块102、缓存103和发送模块104;所述接收模块101用于,接收数据获取请求;所述处理模块102用于,在确定出当前接收到的数据获取请求为非首次接收到的情况下,从预先开辟的所述缓存103中获取所述数据获取请求对应的响应数据;其中,所述
数据获取请求是网络设备根据用户设备发送的用户请求发送至本hss的;所述发送模块104用于,将所述响应数据返回给所述网络设备,以供所述网络设备根据所述响应数据处理所述用户请求。
76.此外,本发明实施例还提供一种电子设备,包括:一个或多个处理器;存储装置,其上存储有一个或多个程序;当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如前各实施例所述的数据处理方法。
77.此外,本发明实施例还提供一种计算机存储介质,其上存储有计算机程序,其中,所述程序被执行时实现如前各实施例所述的数据处理方法。
78.本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、装置中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于ram、rom、eeprom、闪存或其他存储器技术、cd-rom、数字多功能盘(dvd)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。
79.本文已经公开了示例实施例,并且虽然采用了具体术语,但它们仅用于并仅应当被解释为一般说明性含义,并且不用于限制的目的。在一些实例中,对本领域技术人员显而易见的是,除非另外明确指出,否则可单独使用与特定实施例相结合描述的特征、特性和/或元素,或可与其他实施例相结合描述的特征、特性和/或元件组合使用。因此,本领域技术人员将理解,在不脱离由所附的权利要求阐明的本发明的范围的情况下,可进行各种形式和细节上的改变。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献