掌桥专利:专业的专利平台
掌桥专利
首页

基于分层架构的网元流量治理方法、装置和系统

文献发布时间:2023-06-19 19:30:30


基于分层架构的网元流量治理方法、装置和系统

技术领域

本公开涉及网络通信技术领域,具体而言,涉及一种基于分层架构的网元流量治理方法、基于分层架构的网元流量治理装置和基于分层架构的网元流量治理系统。

背景技术

随着微服务与云化技术的快速发展,大量的微服务使得其运维的难度急剧增加,例如微服务的连接、管理和监控等。因此,需要使用专门的微服务系统如服务网格来负责微服务之间的通信、限流、熔断和监控等。

目前,云原生网元引入服务网格对微服务进行治理时,通常是基于边车(sidecar)代理模式,由边车代理接管网元微服务的通信流量并进行处理,从而实现云原生网元通信承载、监控、安全等能力。

但是,使用基于边车代理模式的服务网格直接代理云原生网元的通信流量时,需要将网元微服务的通信流量绕转到服务网格代理,使得网络转发路径变长,加大了网络时延,降低了服务网格代理的服务性能,从而降低了服务网格对网元微服务的治理能力。

需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。

发明内容

本公开提供一种基于分层架构的网元流量治理方法、基于分层架构的网元流量治理装置和基于分层架构的网元流量治理系统,进而至少在一定程度上克服相关技术中服务网格对网元微服务的治理能力较低的问题。

根据本公开的第一方面,提供一种基于分层架构的网元流量治理方法,所述分层架构包括控制层和数据层;所述方法包括:

所述控制层响应网元微服务的治理请求,对所述数据层进行生命周期管理,以建立所述数据层与所述网元微服务之间的通信连接;

所述数据层接收到所述网元微服务发起的流量传输请求时,对所述网元微服务的通信流量进行流量治理。

在本公开的一种示例性实施例中,所述控制层包括网元微服务治理接口和解析功能、数据层部署功能、数据层配置功能和数据层管理功能;所述数据层包括套接字层功能、传输层功能、网络层功能、介质访问控制层功能中的一种或多种数据层功能。

在本公开的一种示例性实施例中,所述控制层响应网元微服务的治理请求,对所述数据层进行生命周期管理,包括:

所述控制层通过网元微服务治理接口接收所述网元微服务的治理请求,并对所述网元微服务的治理请求进行解析,以确定所述数据层功能;

所述控制层根据所述数据层功能对所述数据层进行生命周期管理。

在本公开的一种示例性实施例中,所述网元微服务治理接口中至少包括所述网元微服务的网络命名空间信息和所述数据层的功能信息;

所述对所述网元微服务的治理请求进行解析,以确定所述数据层功能,包括:

根据所述网元微服务的网络命名空间信息确定所述网元微服务的网络命名空间;

根据所述数据层的功能信息确定所述网元微服务的网络命名空间中的所述数据层功能。

在本公开的一种示例性实施例中,所述控制层根据所述数据层功能对所述数据层进行生命周期管理,包括:

所述控制层根据所述数据层功能对所述数据层进行部署、配置和管理。

在本公开的一种示例性实施例中,所述控制层根据所述数据层功能对所述数据层进行部署,包括:

所述控制层根据所述数据层功能将所述数据层部署在所述网元微服务的网络命名空间的网络协议栈上的对应网络协议层。

在本公开的一种示例性实施例中,所述流量传输请求为网络命名空间的网络协议栈的系统调用,所述系统调用中至少包括所述网元微服务的通信流量;

所述数据层接收到所述网元微服务发起的流量传输请求时,对所述网元微服务的通信流量进行流量治理,包括:

所述数据层接收到所述系统调用时,根据所述系统调用确定所述网元微服务的网络命名空间的网络协议栈;

当所述网元微服务的通信流量进入所述网络协议栈时,对应触发部署在所述网络协议栈上的所述网络协议层的所述数据层的功能对所述通信流量进行流量治理。

在本公开的一种示例性实施例中,所述对应触发部署在所述网络协议栈上的所述网络协议层的所述数据层的功能对所述通信流量进行流量治理,包括:

通过所述数据层的功能对所述通信流量进行套接字层处理、传输层处理、网络层处理、介质访问控制层处理中的一种或多种。

根据本公开的第二方面,提供一种基于分层架构的网元流量治理装置,所述分层架构包括控制层和数据层;所述装置包括:

生命周期管理模块,用于所述控制层响应网元微服务的治理请求,对所述数据层进行生命周期管理,以建立所述数据层与所述网元微服务之间的通信连接;

通信流量治理模块,用于所述数据层接收到所述网元微服务发起的流量传输请求时,对所述网元微服务的通信流量进行流量治理。

根据本公开的第三方面,提供一种基于分层架构的网元流量治理系统,所述分层架构包括控制层和数据层,所述系统包括:

网元微服务,用于向所述控制层发送治理请求,向所述数据层发送流量传输请求;

所述控制层,用于响应网元微服务的治理请求,对所述数据层进行生命周期管理,以建立所述数据层与所述网元微服务之间的通信连接;

所述数据层,用于接收到所述网元微服务发起的流量传输请求时,对所述网元微服务的通信流量进行流量治理。

根据本公开的第四方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意一项所述的基于分层架构的网元流量治理方法。

根据本公开的第五方面,提供一种电子设备,包括:处理器;以及存储器,用于存储所述处理器的可执行指令;其中,所述处理器配置为经由执行所述可执行指令来执行上述任意一项所述的基于分层架构的网元流量治理方法。

本公开示例性实施例可以具有以下部分或全部有益效果:

在本公开示例实施方式所提供的基于分层架构的网元流量治理方法中,所述分层架构包括控制层和数据层,其中,所述控制层响应网元微服务的治理请求,对所述数据层进行生命周期管理,以建立所述数据层与所述网元微服务之间的通信连接;所述数据层接收到所述网元微服务发起的流量传输请求时,对所述网元微服务的通信流量进行流量治理。本公开使用服务网格代理的控制层和数据层对网元微服务的通信流量进行流量治理,可以根据网元微服务的类型灵活地加载数据层,并通过数据层接管网元微服务的通信流量,无需将通信流量进行绕转,缩短了通信流量的转发路径,降低了网络时延,提高了服务网格代理的服务性能,进而提升了服务网格对网元微服务的治理能力。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。

图1示出了本公开实施例中的一种基于分层架构的网元流量治理系统的架构示意图;

图2示出了本公开实施例中的一种基于边车代理的服务网格的架构示意图;

图3示出了本公开实施例中一种基于分层架构的网元流量治理方法的流程图;

图4示出了本公开实施例中的另一种网元流量治理系统的架构示意图;

图5示出了本公开实施例中的又一种网元流量治理系统的架构示意图;

图6示意性示出了本公开实施例中一种基于分层架构的网元流量治理装置的框图;

图7示出了适于用来实现本公开实施例的电子设备的结构示意图。

具体实施方式

现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。在下面的描述中,提供许多具体细节从而给出对本公开的实施方式的充分理解。然而,本领域技术人员将意识到,可以实践本公开的技术方案而省略所述特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知技术方案以避免喧宾夺主而使得本公开的各方面变得模糊。

此外,附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。

以下对本公开实施例的技术方案进行详细阐述:

图1示出了一种基于分层架构的网元流量治理系统的架构示意图。如图1所示,系统架构100包括网元微服务110和服务网格代理,服务网格代理又可以分离为控制层120和数据层130。其中,网元微服务110可以向控制层120发送治理请求,控制层120响应网元微服务110的治理请求,对数据层130进行生命周期管理,以建立数据层130与网元微服务110之间的通信连接。网元微服务110还可以向数据层130发送流量传输请求,数据层130接收到网元微服务110发起的流量传输请求时,对网元微服务110的通信流量进行流量治理。另外,控制层120还可以用于为不同类型的网元微服务110创建对应的数据层130,并根据网元微服务的类型和网元微服务的治理要求动态加载对应的数据层130。

以下对本公开实施例的技术方案进行详细阐述:

目前,云原生网元引入服务网格对微服务进行治理时,通常是基于边车代理模式,由边车代理接管网元微服务的通信流量并进行处理,从而实现云原生网元通信承载、监控、安全等能力。

参考图2所示,给出了基于边车代理的服务网格架构图。具体地,操作系统用户态210为云原生网元201中的每个网元微服务部署了一个服务网格代理202,其中,云原生网元201中可以包括接口类网元微服务、业务类网元微服务和管控类等其他类型网元微服务。以接口类网元微服务为例,可以先将接口类网元微服务的通信流量发送至接口类网元微服务网络命名空间203,接口类网元微服务的通信流量被操作系统内核态220的服务网格代理网络命名空间204捕获之后,又被转发至操作系统用户态210的服务网格代理202中,通过服务网格代理202对接口类网元微服务的通信流量进行处理。然后,将处理后的通信流量再发送回服务网格代理网络命名空间204的网络协议栈。其中,网络协议栈包括多个网络协议层,如Socket(套接字层)205、TCP(Transmission Control Protocol,传输控制协议层)/IP(Internet Protocol,互联网协议层)206和网卡驱动层207等。最后,通信流量可以进入其他网元微服务网络命名空间或者通过网卡208离开本操作系统节点。

可以看出,使用基于边车代理模式的服务网格直接代理云原生网元的通信流量时,需要将网元微服务的通信流量绕转到服务网格代理,使得网络转发路径变长,加大了网络时延,降低了服务网格代理的服务性能,从而降低了服务网格对网元微服务的治理能力。

基于上述问题,本示例实施方式提供了一种基于分层架构的网元流量治理方法,分层架构是指将服务网络代理分离为控制层和数据层,并使用控制层和数据层进行微服务通信流量的流量治理。参考图3所示,该方法可以包括以下步骤S310和步骤S320:

步骤S310.所述控制层响应网元微服务的治理请求,对所述数据层进行生命周期管理,以建立所述数据层与所述网元微服务之间的通信连接;

步骤S320.所述数据层接收到所述网元微服务发起的流量传输请求时,对所述网元微服务的通信流量进行流量治理。

在本公开示例实施方式所提供的基于分层架构的网元流量治理方法中,所述分层架构包括控制层和数据层,其中,所述控制层响应网元微服务的治理请求,对所述数据层进行生命周期管理,以建立所述数据层与所述网元微服务之间的通信连接;所述数据层接收到所述网元微服务发起的流量传输请求时,对所述网元微服务的通信流量进行流量治理。本公开使用服务网格代理的控制层和数据层对网元微服务的通信流量进行流量治理,可以根据网元微服务的类型灵活地加载数据层,并通过数据层接管网元微服务的通信流量,无需将通信流量进行绕转,缩短了通信流量的转发路径,降低了网络时延,提高了服务网格代理的服务性能,进而提升了服务网格对网元微服务的治理能力。

下面,对于本示例实施方式的上述步骤进行更加详细的说明。

在步骤S310中,所述控制层响应网元微服务的治理请求,对所述数据层进行生命周期管理,以建立所述数据层与所述网元微服务之间的通信连接。

本公开示例实施方式中,可以将云原生网元拆分为多个高内聚的网元微服务,网元微服务之间松耦合,通过服务化接口进行通信。例如,可以将5G(5th generation mobilenetworks,第五代移动通信网络)核心网控制面网元的IPU组件拆分为不同类型的网元微服务,如接口类网元微服务、业务类网元微服务等。因此,网元微服务可以是接口类网元微服务,也可以是业务类网元微服务,还可以是其他类型的网元微服务,本公开对此不做具体限定。

需要说明的是,本公开将服务网格中的服务网格代理分离为控制层和数据层,可以使用控制层和数据层对不同类型网元微服务的通信流量进行流量治理。示例性的,可以在操作系统用户态部署一个控制层,控制层可以包括网元微服务治理接口及解析模块、数据层装载模块和数据层管控模块,对应的,控制层可以包括网元微服务治理接口和解析功能、数据层部署功能、数据层配置功能和数据层管理功能。云原生网元可以根据各个网元微服务的类型调用控制层的网元微服务治理接口,并通过网元微服务治理接口在操作系统内核态创建与各个网元微服务对应的数据层。例如,对于接口类网元微服务,可以创建与该网元微服务对应的数据层。

一种示例实施方式中,控制层可以通过网元微服务治理接口接收网元微服务的治理请求,并对网元微服务的治理请求进行解析,以确定数据层功能。其中,网元微服务治理接口定义有网元微服务绑定的网络命名空间和所需数据层的功能信息。具体地,解析网元微服务的治理请求时,可以根据网元微服务的网络命名空间信息确定网元微服务的网络命名空间,根据数据层的功能信息确定网元微服务的网络命名空间中的数据层功能。然后,可以根据数据层功能对数据层进行生命周期管理,如对数据层进行部署、配置和管理等。

确定网元微服务的网络命名空间中的数据层功能后,可以根据数据层功能将数据层部署在网元微服务的网络命名空间的网络协议栈上的对应网络协议层,以建立数据层与网元微服务之间的通信连接。其中,网络命名空间为命名空间内的所有进程提供全新隔离的网络协议栈,网络协议栈是指网络中各层协议的总和,反映了网络中文件传输的过程,由上层协议到底层协议,再由底层协议到上层协议。示例性的,网络协议栈可以包括多个网络协议层,如Socket层、TCP/IP层和网卡驱动层等。

示例性的,根据不同的网元微服务治理要求,数据层可以包括套接字层数据层、传输层数据层、网络层数据层和媒体介入控制(Media Access Control,MAC)层数据层中的一种或多种。具体地,可以将数据层中的各数据层部署在网络协议栈中的对应网络协议层。例如,可以将套接字层数据层hook(挂钩)在Socket层,将传输层数据层hook在TCP/UDP(UserDatagram Protocol,用户数据报协议)/SCTP(Stream Control Transmission Protocol,流控制传输协议)层,将网络层数据层hook在IP层,将MAC层数据层hook在网卡驱动层。对应的,数据层可以包括套接字层功能、传输层功能、网络层功能、介质访问控制层功能中的一种或多种数据层功能。该示例中,不同类型的数据层hook在不同的网络协议栈层,用于处理不同类型的网元微服务通信流量。例如,应用Socket跟踪在Socket层,直接高性能转发则在网卡驱动层,且数据层开放对应接口供网元微服务直接调用。

参考图4所示,云原生网元201包括接口类网元微服务、业务类网元微服务和其他类型网元微服务。操作系统用户态210部署一个控制层401,数据层402运行在操作系统内核态220中,由控制层401和数据层402构成服务网格代理。云原生网元201根据各个网元微服务的类型调用控制层401的网元微服务治理接口,并通过网元微服务治理接口在操作系统内核态220创建与各个网元微服务对应的数据层402。例如,对于接口类网元微服务,可以创建与该网元微服务对应的数据层402。数据层402中可以包括多个数据层,即数据层1…数据层N。各个数据层hook在接口类网元微服务网络命名空间中对应的网络协议层,包括Socket205、TCP/IP206和网卡驱动207上。

本公开通过将服务网格代理重构为控制层和数据层两个组件,操作系统用户态仅需部署一个控制层,数据层hook到网元微服务的网络命名空间的网络协议栈上,相比于相关技术中在操作系统用户态部署服务网格代理,降低了操作系统资源开销,尤其是本公开中的数据层采用字节码方式运行在操作系统内核态中,更为轻量、高效。

在步骤S320中,所述数据层接收到所述网元微服务发起的流量传输请求时,对所述网元微服务的通信流量进行流量治理。

其中,网元微服务发起的流量传输请求为网络命名空间的网络协议栈的系统调用,系统调用中至少包括网元微服务的通信流量。示例性的,当数据层接收到所述系统调用时,可以根据系统调用确定网元微服务的网络命名空间的网络协议栈。由于数据层hook在网络协议层上,当网元微服务的通信流量进入网络协议栈时,对应触发部署在网络协议栈上的网络协议层的数据层的功能对通信流量进行处理。

以图4中的接口类网元微服务为例,对该网元微服务的通信流量进行处理时,可以将接口类网元微服务的通信流量发送至接口类网元微服务网络命名空间203的网络协议栈上。若所需数据层的功能信息为网络层功能,可以由IP层接管接口类网元微服务的通信流量,并对接口类网元微服务的通信流量进行网络层处理。对应的,处理后的通信流量可以进入其他网元微服务网络命名空间或者通过网卡离开本操作系统节点。可以理解的是,本公开可以根据不同的网元微服务的治理需求,通过数据层的功能对通信流量进行套接字层处理、传输层处理、网络层处理、介质访问控制层处理中的一种或多种。

本公开可以根据网元微服务的类型动态启动对应的服务网格功能,提高了服务网格代理的服务性能,进一步提升了服务网格对网元微服务的治理能力。

一种示例实施方式中,参考图5所示,云原生网元201包括网元微服务1和网元微服务N。操作系统用户态210部署一个控制层401,控制层401可以包括网元微服务治理接口及解析模块、数据层装载模块和数据层管控模块。以网元微服务1为例,云原生网元201可以调用控制层401的网元微服务治理接口创建对应的数据层402,包括Socket层数据层、传输层数据层、网络层数据层和MAC层数据层,数据层402运行在操作系统内核态220中。控制层401通过网元微服务治理接口及解析模块解析数据层系统调用501,通过数据层装载模块将所需的数据层402hook到网元微服务1网络命名空间502中的对应网络协议层。例如,将Socket层数据层hook到Socket205,将传输层数据层hook到TCP/UDP/SCTP206,将网络层数据层hook到IP206,将MAC层数据层hook到网卡驱动207,以及通过数据层管控模块配置和管理数据层402。

云原生网元201根据网元微服务1的治理需求发起数据层系统调用501以传输待处理的通信报文,该通信报文中包含微服务1网元微服务的通信流量。网元微服务1的通信流量进入网元微1服务命名空间502中的网络协议层并触发与该网络协议层对应的数据层进行微服务治理。其中,数据层系统调用501中包括Socket层数据层调用、传输层数据层调用、网络层数据层调用和MAC层数据层调用。例如,微服务1的治理需求为只需治理传输层流量时,调用传输层数据层接口即可。最后,治理后的网元微服务1的通信流量可以进入网元微服务N网络命名空间503或者通过网卡208离开本操作系统节点。由图5可知,数据层403hook到网元微服务N网络命名空间503中的网络协议栈上,同时实现了根据网元微服务的类型和网元微服务的治理需求动态加载数据层409,数据层409包括数据层1…等数据层。

在本公开示例实施方式所提供的基于分层架构的网元流量治理方法中,所述分层架构包括控制层和数据层,其中,所述控制层响应网元微服务的治理请求,对所述数据层进行生命周期管理,以建立所述数据层与所述网元微服务之间的通信连接;所述数据层接收到所述网元微服务发起的流量传输请求时,对所述网元微服务的通信流量进行流量治理。本公开使用服务网格代理的控制层和数据层对网元微服务的通信流量进行流量治理,可以根据网元微服务的类型灵活地加载数据层,并通过数据层接管网元微服务的通信流量,无需将通信流量进行绕转,缩短了通信流量的转发路径,降低了网络时延,提高了服务网格代理的服务性能,进而提升了服务网格对网元微服务的治理能力。

应当注意,尽管在附图中以特定顺序描述了本公开中方法的各个步骤,但是,这并非要求或者暗示必须按照该特定顺序来执行这些步骤,或是必须执行全部所示的步骤才能实现期望的结果。附加的或备选的,可以省略某些步骤,将多个步骤合并为一个步骤执行,以及/或者将一个步骤分解为多个步骤执行等。

进一步的,本示例实施方式中,还提供了一种基于分层架构的网元流量治理装置,所述分层架构包括控制层和数据层。参考图6所示,该基于分层架构的网元流量治理装置600可以包括生命周期管理模块610和通信流量治理模块620,其中:

生命周期管理模块610,用于所述控制层响应网元微服务的治理请求,对所述数据层进行生命周期管理,以建立所述数据层与所述网元微服务之间的通信连接;

通信流量治理模块620,用于所述数据层接收到所述网元微服务发起的流量传输请求时,对所述网元微服务的通信流量进行流量治理。

在一种可选的实施方式中,所述控制层包括网元微服务治理接口和解析功能、数据层部署功能、数据层配置功能和数据层管理功能;所述数据层包括套接字层功能、传输层功能、网络层功能、介质访问控制层功能中的一种或多种数据层功能。

在一种可选的实施方式中,生命周期管理模块610包括:

请求解析子模块,用于所述控制层通过网元微服务治理接口接收所述网元微服务的治理请求,并对所述网元微服务的治理请求进行解析,以确定所述数据层功能;

周期管理子模块,用于所述控制层根据所述数据层功能对所述数据层进行生命周期管理。

在一种可选的实施方式中,所述网元微服务治理接口中至少包括所述网元微服务的网络命名空间信息和所述数据层的功能信息;所述请求解析子模块包括:

网络命名空间确定单元,用于根据所述网元微服务的网络命名空间信息确定所述网元微服务的网络命名空间;

数据层功能确定单元,用于根据所述数据层的功能信息确定所述网元微服务的网络命名空间中的所述数据层功能。

在一种可选的实施方式中,周期管理子模块被配置为用于所述控制层根据所述数据层功能对所述数据层进行部署、配置和管理。

在一种可选的实施方式中,周期管理子模块被配置为用于所述控制层根据所述数据层功能将所述数据层部署在所述网元微服务的网络命名空间的网络协议栈上的对应网络协议层。

在一种可选的实施方式中,所述流量传输请求为网络命名空间的网络协议栈的系统调用,所述系统调用中至少包括所述网元微服务的通信流量;通信流量治理模块620包括:

网络协议栈确定子模块,用于所述数据层接收到所述系统调用时,根据所述系统调用确定所述网元微服务的网络命名空间的网络协议栈;

通信流量治理子模块,用于当所述网元微服务的通信流量进入所述网络协议栈时,对应触发部署在所述网络协议栈上的所述网络协议层的所述数据层的功能对所述通信流量进行流量治理。

在一种可选的实施方式中,通信流量治理子模块被配置为用于通过所述数据层的功能对所述通信流量进行套接字层处理、传输层处理、网络层处理、介质访问控制层处理中的一种或多种。

上述基于分层架构的网元流量治理装置中各模块的具体细节已经在对应的基于分层架构的网元流量治理方法中进行了详细的描述,因此此处不再赘述。

本公开的示例性实施方式还提供了一种计算机可读存储介质,其上存储有能够实现本说明书上述方法的程序产品。在一些可能的实施方式中,本公开的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当程序产品在电子设备上运行时,程序代码用于使电子设备执行本说明书上述“示例性方法”部分中描述的根据本公开各种示例性实施方式的步骤。该程序产品可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在电子设备,例如个人电脑上运行。然而,本公开的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。

程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。

计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。

可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。

可以以一种或多种程序设计语言的任意组合来编写用于执行本公开操作的程序代码,程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。

本公开的示例性实施方式还提供了一种能够实现上述方法的电子设备。下面参照图7来描述根据本公开的这种示例性实施方式的电子设备700。图7显示的电子设备700仅仅是一个示例,不应对本公开实施方式的功能和使用范围带来任何限制。

如图7所示,电子设备700可以以通用计算设备的形式表现。电子设备700的组件可以包括但不限于:至少一个处理单元710、至少一个存储单元720、连接不同系统组件(包括存储单元720和处理单元710)的总线730和显示单元740。

存储单元720存储有程序代码,程序代码可以被处理单元710执行,使得处理单元710执行本说明书上述“示例性方法”部分中描述的根据本公开各种示例性实施方式的步骤。例如,处理单元710可以执行图3中的方法步骤。

存储单元720可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)721和/或高速缓存存储单元722,还可以进一步包括只读存储单元(ROM)723。

存储单元720还可以包括具有一组(至少一个)程序模块725的程序/实用工具724,这样的程序模块725包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。

总线730可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。

电子设备700也可以与一个或多个外部设备800(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备700交互的设备通信,和/或与使得该电子设备700能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口750进行。并且,电子设备700还可以通过网络适配器760与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器760通过总线730与电子设备700的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备700使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。

通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、终端装置、或者网络设备等)执行根据本公开示例性实施方式的方法。

此外,上述附图仅是根据本公开示例性实施方式的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。

应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。

应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。

技术分类

06120115931582