技术领域
[0001] 本申请涉及计算机技术领域,尤其涉及一种用于板级管理控制器的网络通信方法、电子设备及介质。
相关背景技术
[0002] 在云计算、数据中心、人工智能等技术领域,通过板级管理控制器(Baseboard Management Controller,BMC),对外提供统一的访问接口,提供例如温度,电压,风扇,总线监控等服务,可用于远程管理和服务器远程登录。板级管理控制器的对外通信是通过在服务器上板载集成的独立管理网络口来进行,利用网络控制器边带接口(Network Controller‑Sideband Interface,NC‑SI)技术,使得板级管理控制器可以参考独立网卡管理方式来管理主板上的业务网络接口卡,这样可以提高服务器的密度,提供更丰富的功能和服务。但是,现有技术中,板级管理控制器的网络通信方案出于业务隔离和避免资源冲突的目的,有的安排板级管理控制器独占以太口,有的要求板级管理控制器使用网络控制器边带接口命令来单独管理配置虚拟局域网(Virtual Local Area Network,VLAN),不利于降低成本和提高资源利用率。
[0003] 为此,本申请提供了一种用于板级管理控制器的网络通信方法、电子设备及介质,不仅实现了在板级管理控制器与宿主机之间共享以太口,而且确保了业务隔离,避免了资源冲突,确保了板级管理控制器的带宽资源,有利于提高服务器密度,提供更丰富的功能和服务,有利于降低成本和提高资源利用率。
具体实施方式
[0021] 下面将结合附图对本申请实施例作进一步地详细描述。
[0022] 应当理解的是,在本申请的描述中,“至少一个”指一个或一个以上,“多个”指两个或两个以上。另外,“第一”、“第二”等词汇,除非另有说明,否则仅用于区分描述的目的,而不能理解为指示或暗示相对重要性,也不能理解为指示或暗示顺序。
[0023] 图1为本申请实施例提供的一种用于板级管理控制器的网络通信方法的流程示意图。如图1所示,所述网络通信方法包括以下步骤。
[0024] 步骤S101:通过第一网络接口卡,提供报文复制模块,其中,所述报文复制模块用于,当在宿主机与板级管理控制器之间共用所述第一网络接口卡的第一以太口时,复制经所述第一以太口的且符合第一匹配条件的上行报文给第一网络口集合,所述第一网络口集合包括所述宿主机的与所述第一以太口对应的网络口和所述板级管理控制器的与所述第一以太口对应的网络口。
[0025] 步骤S103:通过所述第一网络接口卡,提供调度模块,其中,所述调度模块用于,对经所述第一以太口的下行流量执行下行限速策略,其中,所述下行限速策略限定了所述板级管理控制器的最大带宽和最大突发带宽均以及限定了所述宿主机的最大带宽和最大突发带宽。
[0026] 步骤S105:利用所述第一网络接口卡的所述报文复制模块和所述调度模块,在所述宿主机与所述板级管理控制器之间共用所述第一以太口,以及,实现所述板级管理控制器与所述第一网络接口卡的简化媒体独立接口之间的网络通信。
[0027] 图1所示的用于板级管理控制器的网络通信方法,应用于云计算、数据中心、人工智能等技术领域,通过板级管理控制器(Baseboard Management Controller,BMC),对外提供统一的访问接口,提供例如温度,电压,风扇,总线监控等服务,可用于远程管理和服务器远程登录。板级管理控制器的对外通信是通过在服务器上板载集成的独立管理网络口来进行,利用网络控制器边带接口(Network Controller‑Sideband Interface,NC‑SI)技术,板级管理控制器与网络接口卡所在的板卡上的简化媒体独立接口(Reduced Media Independent Interface,RMII)之间进行网络通信,这样使得板级管理控制器可以参考独立网卡管理方式来管理主板上的业务网络接口卡。简化媒体独立接口一般设有最大带宽,例如100兆比特每秒的网络速率。利用节省下来的独立网卡位置,可以使用其它的业务卡,进而可以提高服务器的密度,提供更丰富的功能和服务。如果安排板级管理控制器独占网络接口卡上的以太口来对外进行通信,这样虽然有助于业务隔离和避免资源冲突,但是会占用网络接口卡上有限的以太口资源,而且网络接口卡上作为业务接口的带宽可用于提供丰富的功能,因此不利于控制成本。为了实现业务隔离和避免资源冲突,以及为了避免业务带宽资源不足,图1所示的用于板级管理控制器的网络通信方法,在安排板级管理控制器与宿主机之间共享网络接口卡上的以太口的基础上,通过对网络接口卡进行软件层面和硬件层面的优化,进而对上行报文处理流程和下行报文处理流程做出改进,不仅实现了在板级管理控制器与宿主机之间共享以太口,而且确保了业务隔离,避免了资源冲突,确保了板级管理控制器的带宽资源,有利于提高服务器密度,提供更丰富的功能和服务,有利于降低成本和提高资源利用率。下面详细说明。
[0028] 参考图1,在步骤S101,通过第一网络接口卡,提供报文复制模块。其中,所述报文复制模块用于,当在宿主机与板级管理控制器之间共用所述第一网络接口卡的第一以太口时,复制经所述第一以太口的且符合第一匹配条件的上行报文给第一网络口集合,所述第一网络口集合包括所述宿主机的与所述第一以太口对应的网络口和所述板级管理控制器的与所述第一以太口对应的网络口。这里,通过第一网路接口卡的软件层面和硬件层面的优化,提供了报文复制模块,以及利用报文复制模块,当在宿主机与板级管理控制器之间共用所述第一网络接口卡的第一以太口时,复制经所述第一以太口的且符合第一匹配条件的上行报文给第一网络口集合。如此,宿主机与板级管理控制器之间可以共用第一网络接口卡的第一以太口,当第一网络接口卡的作为业务接口的第一以太口接收到特定的上行报文时,这些特定的上行报文的目的地可能是宿主机也可能是板级管理控制器。为了确保报文正确转发,在宿主机与板级管理控制器之间共用第一网络接口卡的第一以太口的情况下,利用报文复制模块来复制特定的上行报文到第一网络口集合,如此,所述宿主机的与所述第一以太口对应的网络口和所述板级管理控制器的与所述第一以太口对应的网络口各自都可以接收到被复制的报文,这样意味着,不需要板级管理控制器单独管理配置虚拟局域网(Virtual Local Area Network,VLAN)也不需要板级管理控制器独占第一以太口,降低了网络管理和配置方面的复杂度和成本。并且,基于用于板级管理控制器的网络通信方法所在的应用环境,例如适用的网络通信协议、安全规范等,可以对报文复制模块进行灵活地设定,包括设定第一匹配条件,从而可以达到共用第一以太口且不需要单独配置虚拟局域网的目的。在一些实施例中,可以设定第一匹配条件为,例如,当经第一以太口的上行报文是地址解析协议(Address Resolution Protocol,ARP)请求报文时,报文复制模块执行报文复制动作,复制到宿主机与板级管理控制器对应的网络口集合;再例如,当经第一以太口的上行报文是互联网协议第6版(Internet Protocol Version 6,IPV6)的邻居发现(Neighbor Discovery,ND)协议的相关报文时,例如邻居通告(Neighbor Advertisement,NA)报文和邻居请求(Neighbor Solicitation,NS)报文,这样类似于ARP应答报文和ARP请求报文,报文复制模块执行报文复制动作,复制到宿主机与板级管理控制器对应的网络口集合;再例如,当经第一以太口的上行报文是动态主机配置协议(Dynamic Host Configuration Protocol,DHCP)组播报文,如用于对用户网路协议地址进行动态管理和配置,报文复制模块执行报文复制动作,复制到宿主机与板级管理控制器对应的网络口集合。如此,通过部署报文复制模块以及设定相应的第一匹配条件,在板级管理控制器使用以太口时下发对应的表项到报文复制模块,可以灵活适配各种通信协议规范,例如互联网协议第4版(Internet Protocol Version 4,IPV4)和IPV6,将经第一以太口的特定的上行报文,例如ARP报文、ND报文、NA报文、NS报文以及DHCP组播报文等复制到第一网络口集合,这样节省了板级管理控制器配置独立VLAN的损耗,而且也满足了业务隔离的需求。
[0029] 继续参考图1,在步骤S103,通过所述第一网络接口卡,提供调度模块,其中,所述调度模块用于,对经所述第一以太口的下行流量执行下行限速策略,其中,所述下行限速策略限定了所述板级管理控制器的最大带宽和最大突发带宽均以及限定了所述宿主机的最大带宽和最大突发带宽。如此,通过第一网路接口卡的软件层面和硬件层面的优化,在上述的报文复制模块的基础上,进一步提供了调度模块,从而在对上行报文处理流程做出改进的基础上,进一步地对下行报文处理流程做出改进。 当在宿主机与板级管理控制器之间共用所述第一网络接口卡的第一以太口时,为了确保宿主机可以充分利用第一以太口的带宽,以及确保板级管理控制器有足够的带宽提供各种功能和服务,例如温度,电压,风扇,总线监控等,并且,考虑到在第一以太口的流量竞争大的情况下可能产生反压,因此,通过调度模块对经所述第一以太口的下行流量执行下行限速策略,从而限定了所述板级管理控制器的最大带宽和最大突发带宽均以及限定了所述宿主机的最大带宽和最大突发带宽。这样意味着,在以太口流量竞争大和产生反压时,也能确保板级管理控制器的带宽资源,例如100兆比特每秒的网络速率,这样足够支持利用网络控制器边带接口技术来实现板级管理控制器与第一网络接口卡所在的板卡上的简化媒体独立接口之间进行网络通信。并且,满足了宿主机充分利用带宽资源的需求,有利于提升报文转发性能。
[0030] 继续参考图1,在步骤S105,利用所述第一网络接口卡的所述报文复制模块和所述调度模块,在所述宿主机与所述板级管理控制器之间共用所述第一以太口,以及,实现所述板级管理控制器与所述第一网络接口卡的简化媒体独立接口之间的网络通信。如此,不需要单独配置虚拟局域网,也不需要在时间或者空间上隔离以太口的使用。在所述宿主机与所述板级管理控制器之间,可以共用第一网络接口卡上的第一以太口,通过上述的报文复制模块确保了正确的报文转发功能,避免了单独管理配置独立的虚拟局域网,以及,通过上述的调度模块避免了带宽竞争,确保了板级管理控制器的业务质量,避免板级管理控制器的业务被宿主机业务挤兑从而导致带宽整体小。如此,在安排板级管理控制器与宿主机之间共享网络接口卡上的以太口的基础上,通过对网络接口卡进行软件层面和硬件层面的优化,进而对上行报文处理流程和下行报文处理流程做出改进,不仅实现了在板级管理控制器与宿主机之间共享以太口,而且确保了业务隔离,避免了资源冲突,确保了板级管理控制器的带宽资源,有利于提高服务器密度,提供更丰富的功能和服务,有利于降低成本和提高资源利用率。
[0031] 图2为本申请实施例提供的一种用于板级管理控制器的网络接口卡的示意图。如图2所示,网络接口卡包括多个以太口,分别是以太口A240,以太口B242,以太口C244。用于板级管理控制器201的网络接口卡220,为板级管理控制器201提供的网络通信方法包括:通过网络接口卡220,提供报文复制模块221,其中,所述报文复制模块221用于,当在宿主机211与板级管理控制器201之间共用所述网络接口卡220的第一以太口(以太口A240)时,复制经所述第一以太口(以太口A240)的且符合第一匹配条件的上行报文给第一网络口集合,所述第一网络口集合包括所述宿主机211的与所述第一以太口(以太口A240)对应的网络口B213和所述板级管理控制器201的与所述第一以太口(以太口A240)对应的网络口A203;通过所述网络接口卡220,提供调度模块223,其中,所述调度模块223用于,对经所述第一以太口(以太口A240)的下行流量执行下行限速策略,其中,所述下行限速策略限定了所述板级管理控制器201的最大带宽和最大突发带宽均以及限定了所述宿主机211的最大带宽和最大突发带宽;利用所述网络接口卡220的所述报文复制模块221和所述调度模块223,在所述宿主机211与所述板级管理控制器201之间共用所述第一以太口(以太口A240),以及,实现所述板级管理控制器201与所述网络接口卡220的简化媒体独立接口230之间的网络通信。
[0032] 图2所示的网络接口卡220,在安排板级管理控制器201与宿主机211之间共享网络接口卡220上的以太口A240的基础上,通过对网络接口卡220进行软件层面和硬件层面的优化,进而对上行报文处理流程和下行报文处理流程做出改进,不仅实现了在板级管理控制器201与宿主机211之间共享以太口A240,而且确保了业务隔离,避免了资源冲突,确保了板级管理控制器201的带宽资源,有利于提高服务器密度,提供更丰富的功能和服务,有利于降低成本和提高资源利用率。应当理解的是,网络接口卡220上的多个以太口中的一个或者多个以太口可以作为共享的以太口。在一些实施例中,网络接口卡220上的多个以太口中的也可能存在一个或者多个以太口作为被板级管理控制器201独享的以太口。
[0033] 参考图1和图2,在一种可能的实施方式中,所述下行限速策略限定了所述板级管理控制器的最大带宽和最大突发带宽均以及限定了所述宿主机的最大带宽和最大突发带宽,包括:所述下行限速策略限定了,所述板级管理控制器的最大带宽和最大突发带宽均是预设值,并且,所述下行限速策略还限定了,所述宿主机的最大带宽和最大突发带宽均是所述第一以太口的带宽。这里,所述板级管理控制器的最大带宽和最大突发带宽均是预设值,该预设值可以是例如100兆比特每秒的网络速率,这样足够支持利用网络控制器边带接口技术来实现板级管理控制器与第一网络接口卡所在的板卡上的简化媒体独立接口之间进行网络通信。如此,通过第一网路接口卡的软件层面和硬件层面的优化,在上述的报文复制模块的基础上,进一步提供了调度模块,从而在对上行报文处理流程做出改进的基础上,进一步地对下行报文处理流程做出改进。当在宿主机与板级管理控制器之间共用所述第一网络接口卡的第一以太口时,确保宿主机可以充分利用第一以太口的带宽,以及确保板级管理控制器有足够的带宽提供各种功能和服务。
[0034] 在一些实施例中,所述调度模块还用于,对经所述第一以太口的上行流量执行上行调度策略,所述上行调度策略是基于所述宿主机和所述板级管理控制器各自的权重而确定,或者,所述宿主机和所述板级管理控制器各自的优先级而确定。如此,通过上行调度策略,进一步提供了业务流量方面的调度灵活性,有利于保证板级管理控制器的业务流量。
[0035] 在一些实施例中,当所述上行调度策略是基于所述宿主机和所述板级管理控制器各自的权重而确定时,所述板级管理控制器的权重高于所述宿主机的权重,并且,当所述上行调度策略是基于所述宿主机和所述板级管理控制器各自的优先级而确定时,所述板级管理控制器的优先级高于所述宿主机的优先级。如此,当在宿主机与板级管理控制器之间共用所述第一网络接口卡的第一以太口时,确保宿主机可以充分利用第一以太口的带宽,以及确保板级管理控制器有足够的带宽提供各种功能和服务。
[0036] 在一种可能的实施方式中,所述第一匹配条件指示了,当所述上行报文是地址解析协议请求报文、互联网协议第6版的邻居通告报文、所述互联网协议第6版的邻居请求报文、或者动态主机配置协议的组播报文时,复制所述上行报文给所述第一网络口集合。如此,基于用于板级管理控制器的网络通信方法所在的应用环境,例如适用的网络通信协议、安全规范等,可以对报文复制模块进行灵活地设定,包括设定第一匹配条件,从而可以达到共用第一以太口且不需要单独配置虚拟局域网的目的。通过部署报文复制模块以及设定相应的第一匹配条件,在板级管理控制器使用以太口时下发对应的表项到报文复制模块,可以灵活适配各种通信协议规范,例如IPV4和IPV6,将经第一以太口的特定的上行报文,例如ARP报文、ND报文、NA报文、NS报文以及DHCP组播报文等复制到第一网络口集合,这样节省了板级管理控制器配置独立VLAN的损耗,而且也满足了业务隔离的需求。
[0037] 在一些实施例中,所述互联网协议第6版的邻居通告报文和所述互联网协议第6版的邻居请求报文是基于所述互联网协议第6版的邻居发现协议。如此,不仅实现了在板级管理控制器与宿主机之间共享以太口,而且确保了业务隔离,避免了资源冲突,确保了板级管理控制器的带宽资源,有利于提高服务器密度,提供更丰富的功能和服务,有利于降低成本和提高资源利用率。
[0038] 在一种可能的实施方式中,所述板级管理控制器通过所述简化媒体独立接口与所述第一网络接口卡进行网络通信,从而按照独立网卡管理方式来使用所述第一网络接口卡。
[0039] 在一些实施例中,所述板级管理控制器,通过所述第一网络口集合中的所述板级管理控制器的与所述第一以太口对应的网络口,与第二网络接口卡进行网络通信,从而按照所述独立网卡管理方式来使用所述第二网络接口卡,其中,所述第二网络接口卡独立于所述第一网络接口卡。如此,当在宿主机与板级管理控制器之间共用所述第一网络接口卡的第一以太口时,还可以部署板级管理控制器按照所述独立网卡管理方式来使用所述第二网络接口卡,也即使得板级管理控制器可以参考独立网卡管理方式来管理主板上的业务网络接口卡,这样有助于提供更加丰富的功能,增加服务器的密度,提高资源利用率。
[0040] 在一些实施例中,所述第一网络接口卡和所述第二网络接口卡均挂载在所述宿主机所在的服务器上。如此,有助于提供更加丰富的功能,增加服务器的密度,提高资源利用率。
[0041] 在一种可能的实施方式中,当在所述宿主机与所述板级管理控制器之间共用所述第一网络接口卡的所述第一以太口时,所述板级管理控制器所使用的虚拟局域网资源与所述宿主机所使用的虚拟局域网资源之间不冲突。如此,不需要单独配置虚拟局域网,也不需要在时间或者空间上隔离以太口的使用。在所述宿主机与所述板级管理控制器之间,可以共用第一网络接口卡上的第一以太口,通过上述的报文复制模块确保了正确的报文转发功能,避免了单独管理配置独立的虚拟局域网,以及,通过上述的调度模块避免了带宽竞争,确保了板级管理控制器的业务质量,避免板级管理控制器的业务被宿主机业务挤兑从而导致带宽整体小。
[0042] 在一种可能的实施方式中,所述板级管理控制器独享所述第一网络接口卡的第二以太口,并且,所述板级管理控制器独占所述第二以太口的带宽。如此,当在宿主机与板级管理控制器之间共用所述第一网络接口卡的第一以太口时,还可以安排板级管理控制器独享所述第一网络接口卡的第二以太口,并且,板级管理控制器独占所述第二以太口的带宽,如此,在共享第一以太口的基础上还实现了独占第二以太口,这样有利于满足板级管理控制器的定制化输入输出需求,例如通过独占的第二以太口来提供对响应速度、带宽资源、网络稳定性等要求更高的功能和服务,同时通过共享的第一以太口来降低了整体成本和提高了整体资源利用率。
[0043] 图3是本申请实施例提供的一种计算设备的结构示意图,该计算设备300包括:一个或者多个处理器310、通信接口320以及存储器330。所述处理器310、通信接口320以及存储器330通过总线340相互连接。可选地,该计算设备300还可以包括输入/输出接口350,输入/输出接口350连接有输入/输出设备,用于接收用户设置的参数等。该计算设备300能够用于实现上述的本申请实施例中设备实施例或者系统实施例的部分或者全部功能;处理器310还能够用于实现上述的本申请实施例中方法实施例的部分或者全部操作步骤。例如,该计算设备300执行各种操作的具体实现可参照上述实施例中的具体细节,如处理器310用于执行上述方法实施例中部分或者全部步骤或者上述方法实施例中的部分或者全部操作。再例如,本申请实施例中,计算设备300可用于实现上述装置实施例中一个或者多个部件的部分或者全部功能,此外通信接口320具体可用于为了实现这些装置、部件的功能所必须的通讯功能等,以及处理器310具体可用于为了实现这些装置、部件的功能所必须的处理功能等。
[0044] 应当理解的是,图3的计算设备300可以包括一个或者多个处理器310,并且多个处理器310可以按照并行化连接方式、串行化连接方式、串并行连接方式或者任意连接方式来协同提供处理能力,或者多个处理器310可以构成处理器序列或者处理器阵列,或者多个处理器310之间可以分成主处理器和辅助处理器,或者多个处理器310之间可以具有不同的架构如采用异构计算架构。另外,图3所示的计算设备300,相关的结构性描述及功能性描述是示例性且非限制性的。在一些示例性实施例中,计算设备300可以包括比图3所示的更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者具有不同的部件布置。
[0045] 处理器310可以有多种具体实现形式,例如处理器310可以包括中央处理器(central processing unit,CPU)、图形处理器(graphic processing unit,GPU)、神经网络处理器(neural‑network processing unit,NPU)、张量处理器(tensor processing unit,TPU)或数据处理器(data processing unit,DPU)等一种或多种的组合,本申请实施例不做具体限定。处理器310还可以是单核处理器或多核处理器。处理器310可以由CPU和硬件芯片的组合。上述硬件芯片可以是专用集成电路(application‑specific integrated circuit,ASIC),可编程逻辑器件(programmable logic device,PLD)或其组合。上述PLD可以是复杂可编程逻辑器件(complex programmable logic device,CPLD),现场可编程逻辑门阵列(field‑programmable gate array,FPGA),通用阵列逻辑(generic array logic,GAL)或其任意组合。处理器310也可以单独采用内置处理逻辑的逻辑器件来实现,例如FPGA或数字信号处理器(digital signal processor,DSP)等。通信接口320可以为有线接口或无线接口,用于与其他模块或设备进行通信,有线接口可以是以太接口、局域互联网络(local interconnect network,LIN)等,无线接口可以是蜂窝网络接口或使用无线局域网接口等。
[0046] 存储器330可以是非易失性存储器,例如,只读存储器(read‑only memory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。存储器330也可以是易失性存储器,易失性存储器可以是随机存取存储器(random access memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(static RAM,SRAM)、动态随机存取存储器(dynamic RAM,DRAM)、同步动态随机存取存储器(synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(double data rate SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(direct rambus RAM,DR RAM)。存储器330也可用于存储程序代码和数据,以便于处理器310调用存储器330中存储的程序代码执行上述方法实施例中的部分或者全部操作步骤,或者执行上述设备实施例中的相应功能。此外,计算设备300可能包含相比于图3展示的更多或者更少的组件,或者有不同的组件配置方式。
[0047] 总线340可以是快捷外围部件互连标准(peripheral component interconnect express,PCIe)总线,或扩展工业标准结构(extended industry standard architecture,EISA)总线、统一总线(unified bus,Ubus或UB)、计算机快速链接(compute express link,CXL)、缓存一致互联协议(cache coherent interconnect for accelerators,CCIX)等。总线340可以分为地址总线、数据总线、控制总线等。总线340除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,图3中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
[0048] 本申请实施例提供的方法和设备是基于同一发明构思的,由于方法及设备解决问题的原理相似,因此方法与设备的实施例、实施方式、示例或实现方式可以相互参见,其中重复之处不再赘述。本申请实施例还提供一种系统,该系统包括多个计算设备,每个计算设备的结构可以参照上述所描述的计算设备的结构。该系统可实现的功能或者操作可以参照上述方法实施例中的具体实现步骤和/或上述装置实施例中所描述的具体功能,在此不再赘述。
[0049] 本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机指令,当所述计算机指令在计算机设备(如一个或者多个处理器)上运行时可以实现上述方法实施例中的方法步骤。所述计算机可读存储介质的处理器在执行上述方法步骤的具体实现可参照上述方法实施例中所描述的具体操作和/或上述装置实施例中所描述的具体功能,在此不再赘述。
[0050] 本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。本申请实施例可以全部或部分地通过软件、硬件、固件或其他任意组合来实现。当使用软件实现时,上述实施例可以全部或部分地以计算机程序产品的形式实现。本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质上实施的计算机程序产品的形式。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载或执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以为通用计算机、专用计算机、计算机网络、或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集合的服务器、数据中心等数据存储设备。可用介质可以是磁性介质(如软盘、硬盘、磁带)、光介质、或者半导体介质。半导体介质可以是固态硬盘,也可以是随机存取存储器,闪存,只读存储器,可擦可编程只读存储器,电可擦可编程只读存储器,寄存器或任何其他形式的合适存储介质。
[0051] 本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述。可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0052] 在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。显然,本领域的技术人员可以对本申请实施例进行各种改动和变型而不脱离本申请实施例的精神和范围。本申请实施例方法中的步骤可以根据实际需要进行顺序调整、合并或删减;本申请实施例系统中的模块可以根据实际需要进行划分、合并或删减。如果本申请实施例的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。