[0001]
本发明涉及通信领域,尤其涉及一种镜像数据流的方法、装置、通信设备及存储介质。
背景技术:[0002]
镜像功能简单地说就是将被监控流量镜像到监控端口,以便对被监控流量进行故障定位、流量分析、流量备份等。被监控流量所在端口称为源端口,监控端口也称为目的端口,目的端口直接与网络分析仪等相连。
[0003]
在相关技术中,镜像实现的方式是将源端口的所有数据流全部镜像到目的端口,这种镜像方式的优点是实现简单,但其存在以下缺点:
[0004]
将源端口的所有数据流全部镜像到目的端口,镜像的数据量大,镜像效率低,尤其是在一些应用场景中,当只需要对源端口流量中的部分特定数据流进行故障定位、流量分析或流量备份等时,还需要从镜像过来的大量的镜像数据流中二次查找所需的特定数据流,查找过程繁琐且需要大量时间,而镜像过来的其他大量的数据流则都是无用的数据流,反而对特定数据的查找分析造成干扰,同时还会导致极大的资源浪费。可见,相关技术中对源端口的所有数据流直接镜像的方式并不能很好的满足只需对源端口指定数据流进行镜像的需求。
技术实现要素:[0005]
本发明实施例提供的一种镜像数据流的方法、装置、通信设备及存储介质,解决相关技术中对源端口的数据流直接全部镜像的方式,不能满足只需对源端口指定数据流进行镜像的需求的问题。
[0006]
为解决上述技术问题,本发明实施例提供一种镜像数据流的方法,包括:
[0007]
在接收到设置有镜像标识的端口的数据流时,根据所述镜像标识在镜像表中匹配对应的目标镜像会话,所述镜像表中包括标签镜像表,所述标签镜像表中包括标签镜像会话,一条所述标签镜像会话包括镜像标识、至少一层标签层、各标签层对应的标签值、各标签值关联的源镜像实体标识、以及目的端口;
[0008]
当匹配出的目标镜像会话包括目标标签镜像会话时,从所述数据流中筛选出与所述目标标签镜像会话相匹配的目标数据流作为待镜像数据流;
[0009]
将所述待镜像数据流发送至所述目标标签镜像会话中的目的端口。
[0010]
为解决上述技术问题,本发明实施例还提供一种镜像数据流的装置,包括:
[0011]
匹配处理模块,用于在接收到设置有镜像标识的端口的数据流时,根据所述镜像标识在镜像表中匹配对应的目标镜像会话,所述镜像表中包括标签镜像表,所述标签镜像表中包括标签镜像会话,一条所述标签镜像会话包括镜像标识、至少一层标签层、各标签层对应的标签值、各标签值关联的源镜像实体标识、以及目的端口;
[0012]
镜像处理模块,用于在所述目标镜像会话包括目标标签镜像会话时,从所述数据
流中筛选出从所述数据流中筛选出与所述目标标签镜像会话相匹配的目标数据流作为待镜像数据流,并将所述待镜像数据流发送至所述目标标签镜像会话中的目的端口。
[0013]
为解决上述技术问题,本发明实施例还提供一种通信设备,其特征在于,包括处理器、存储器;
[0014]
所述处理器用于执行所述存储器中存储的计算机程序,以实现如上所述的镜像数据流的方法的步骤。
[0015]
为解决上述技术问题,本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序可被处理器执行,以实现如上所述的镜像数据流的方法的步骤。
[0016]
有益效果
[0017]
根据本发明实施例提供的镜像数据流的方法、装置、通信设备及存储介质,通过预先设置镜像表,该镜像表中包括标签镜像表,标签镜像表中包括标签镜像会话,一条标签镜像会话包括镜像标识、至少一层标签层、各标签层对应的标签值、各标签值关联的源镜像实体标识、以及目的端口;对于需要镜像处理的端口也对应设置有镜像标识;在接收到设置有镜像标识的端口(也即源端口)的数据流时,则可根据镜像标识在镜像表中匹配对应的目标镜像会话,当匹配出的目标镜像会话包括目标标签镜像会话时,从源端口的数据流中筛选出与目标标签镜像会话相匹配的目标数据流作为待镜像数据流发送至对应目的端口,也即从源端口的数据流中筛选出与目标标签镜像会话中各标签层的标签值、各标签值关联的源镜像实体标识所匹配目标数据流发送至对应目的端口,从而实现对源端口设定部分的数据流进行镜像,而对于其他部分的数据流则可不镜像,从而避免镜像后的二次查找,提升数据流镜像控制的精确性和镜像效率,同时又能避免对源端口的其他数据流进行镜像而导致的资源浪费,提升用户体验满意度。
[0018]
本发明其他特征和相应的有益效果在说明书的后面部分进行阐述说明,且应当理解,至少部分有益效果从本发明说明书中的记载变的显而易见。
附图说明
[0019]
图1为本发明实施例一的标签镜像表流程示意图;
[0020]
图2为本发明实施例一的镜像数据流的方法流程示意图;
[0021]
图3为本发明实施例二的镜像数据流的装置结构示意图;
[0022]
图4为本发明实施例二的标签镜像会话生成流程示意图;
[0023]
图5为本发明实施例二的数据流的镜像过程示意图;
[0024]
图6为本发明实施例三的通信设备结构示意图。
具体实施方式
[0025]
为了使本发明的目的、技术方案及优点更加清楚明白,下面通过具体实施方式结合附图对本发明实施例作进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0026]
实施例一:
[0027]
针对相关技术中对源端口的所有数据流直接镜像的方式(本实施例称之为端口镜
像方式)存在镜像的数据量大,效率低,不能很好的满足只需对源端口指定数据流进行镜像的需求的问题。本实施例提供的镜像数据流的方法,可预先设置包括标签镜像表的镜像表,标签镜像表中可根据需求设置一条或多条标签镜像会话,一条标签镜像会话包括镜像标识、至少一层标签层、各标签层对应的标签值、各标签值关联的源镜像实体标识、以及目的端口;对于需要镜像处理的端口也对应设置有镜像标识。基于上述设置,在接收到设置有镜像标识的端口(也即源端口)的数据流,且根据镜像标识在镜像表中匹配出对应的目标标签镜像会话时,即可对该源端口的数据流中与目标标签镜像会话所匹配(也即对应)的这部分目标数据流进行镜像,从而实现对源端口设定部分的数据流进行镜像,而对于源其他部分的数据流则可不镜像,既能大大减小需要镜像的数据流,又能免镜像后指定数据流的二次查找,提升数据流镜像控制的精确性、镜像效率以及资源利用率,从而提升用户体验满意度。
[0028]
为了便于理解,本实施例下面以一种示例的标签镜像表的设置过程进行说明。
[0029]
请参见图1所示,本实施例所示例的标签镜像表的设置过程包括:
[0030]
s101:创建标签镜像会话。
[0031]
在本实施例中,创建的标签镜像会话包括镜像标识、至少一层标签层、各标签层对应的标签值。本实施例中,不同标签镜像会话的镜像标识不同,也即镜像标识可以唯一标识一条标签镜像会话。
[0032]
本实施例中,标签镜像会话所包括的标签层数可以根据具体应用场景和需求灵活设定,例如可以根据需求设置为一层,两层或三层;当然,在一些应用场景中,也可根据具体需求设置为三层以上。在本实施例中,各标签层对应的标签值的具体设定也可根据具体具体应用场景和需求灵活设定。例如,在本实施例的一些应用场景中,标签值可以设置为入向标签值。
[0033]
s102:关联源镜像实体,并设定镜像目的端口。
[0034]
本实施例中的源镜像实体也可根据具体应用场景和需求灵活确定。例如,一种示例中,该源镜像实体可包括但不限于隧道、伪线、l3vpn(virtual private network,虚拟专用网络)中的至少一种中。本实施例中,关联源镜像实体包括将s101中创建的标签镜像会话中的各层的标签值与对应的源镜像实体的源镜像实体标识进行关联。且本实施例中的源镜像实体标识可为任意能唯一标识源镜像实体的各种标识或识别信息。
[0035]
应当理解的是,本步骤中目的端口也可根据具体应用场景灵活配置。
[0036]
通过上述两个步骤,可以针对当前应用场景配置得到所需求的所有标签镜像会话。当然,在一些示例中,也可在后续动态的新增或删除或修改标签镜像会话。
[0037]
s103:生成转发信息表。
[0038]
在本实施例的一种示例中,生成的转发信息表可以包括但不限于逻辑端口表和镜像表;其中:
[0039]
逻辑端口表中包括根据装置或系统的物理资源信息而转换映射得到的各个逻辑端口(也即本实施例中的端口),各逻辑端口有对应的实体,例如可包括但不限于隧道、伪线、l3vpn等实体;对于逻辑端口表中的各逻辑端口,可以结合前面两个步骤中生成的标签镜像会话,确定哪些逻辑端口对应的实体为标签镜像会话中所关联的实体,采用对应的标签镜像会话中的镜像标识(也可采用其他与该镜像标识具有唯一的映射关系的其他标识)
对这些逻辑端口分别进行标记;这样就可得到逻辑端口表中哪些逻辑端口是需要进行镜像的。相应的,对前面两个步骤中得到的各标签镜像会话进行汇总即可得到镜像表中所包括的标签镜像表。
[0040]
例如,一种示例中,各标签镜像会话中的镜像标识可设置为镜像会话id,得到的标签镜像表如下表1所示:
[0041]
表1
[0042][0043]
本示例中,假设得到的逻辑端口表如下表2所示:
[0044]
表2
[0045][0046][0047]
则表2中,第二逻辑端口、第i逻辑端口和第n逻辑端口都设置有镜像标识,表明这些逻辑端口是需要进行镜像处理的源端口。
[0048]
另外,应当理解的是,在本实施例的一些示例中,一个逻辑端口可以没有对应的镜像标识,表明该逻辑端口不需要进行镜像处理;一个逻辑端口也可以对应一个或两个及两个以上的镜像标识,表明该逻辑端口需要进行镜像处理。一个逻辑端口对应两个及两个以上的镜像标识时,各镜像标识对应的镜像方式可以相同,也可以不同。例如一个镜像标识可以为相关技术中的端口镜像方式对应的镜像标识,另一个镜像标识则为本实施例提供的标签镜像方式的镜像标识;具体可根据具体需求灵活的组合设置。
[0049]
应当理解的是,在本实施例中,可以是在得到上述逻辑端口表之后再生成相应的标签镜像会话;且在一些示例中,可支持对上述标签镜像表中的标签镜像会话进行动态的更新。
[0050]
基于上述设置,本实施例中一种示例的镜像数据流的方法请参见图2所示,包括但不限于:
[0051]
s201:在接收到设置有镜像标识的端口(以下称之为源端口)的数据流时,根据该源端口的镜像标识在镜像表中匹配对应的目标镜像会话。
[0052]
如上所示,镜像表中包括标签镜像表,标签镜像表中包括标签镜像会话,一条标签镜像会话包括镜像标识、至少一层标签层、各标签层对应的标签值、各标签值关联的源镜像实体标识、以及目的端口。
[0053]
可选地,此处的镜像标识可为但不限于在系统中具有唯一标识特性的镜像会话id,如上述表1所示。
[0054]
s202:当匹配出的目标镜像会话包括目标标签镜像会话时,从该源端口的数据流中筛选出与所述目标标签镜像会话相匹配的目标数据流作为待镜像数据流;也即从源端口的数据流中筛选出与目标标签镜像会话中各标签层的标签值、各标签值关联的源镜像实体标识所匹配目标数据流,作为待镜像数据流。
[0055]
s203:将待镜像数据流发送至目标标签镜像会话中的目的端口。例如,从该源端口的数据流中复制一份待镜像数据流发给目的端口,而对于该源端口的源数据则按照正常业务转达。这样目的端口接收到的镜像数据流则是标签镜像会话中所指定的那一部分目标数据流,既能大大减小需要镜像的数据流,又能免镜像后指定数据流的二次查找,提升数据流镜像控制的精确性、镜像效率以及资源利用率。
[0056]
可选地,在本实施例的一些应用场景中,还可将本实施例提供的标签镜像方式与相关技术中的端口镜像方式灵活的结合使用,此时镜像表中还可包括端口镜像表,端口镜像表中包括端口镜像会话。例如,如上分析所示,对于某一个源端口既设置了标签镜像方式对应的镜像标识,又设置了端口镜像方式对应的镜像标识时,可以设置该源端口的标签镜像方式的优先级高于端口镜像方式,也即该源端口的标签镜像会话的优先级高于端口镜像会话。此时,针对该源端口接收到数据流时,根据该源端口的镜像标识匹配出的目标镜像会话包括目标端口镜像会话和目标标签镜像会话时,可仅根据目标标签镜像会话对该源端口的数据流进行镜像处理,对该源端口不再执行端口镜像处理。
[0057]
在本实施例的另一些应用场景中,当需要对该源端口的所有数据流进行全面的监测时,则可设置该源端口的标签镜像方式的优先级低于端口镜像方式,也即该源端口的标签镜像会话的优先级低于端口镜像会话。此时,针对该源端口接收到数据流时,根据该源端口的镜像标识匹配出的目标镜像会话包括目标端口镜像会话和目标标签镜像会话时,可仅
根据目标端口镜像会话对该源端口的数据流进行镜像处理,对该源端口不再执行标签镜像处理。
[0058]
当然,在本实施例的另一些应用场景中,根据需求(例如标签镜像和端口镜像的目的端口不同或有其他特定需求时)也可对该源端口既执行标签镜像处理,又执行端口镜像处理。也即端口镜像方式与标签镜像方式可以根据具体应用灵活的组合使用。
[0059]
在本实施例中,当针对某一源端口,当匹配出的目标镜像会话仅包括目标端口镜像会话时,则可仅根据匹配到的目标端口镜像会话对该源端口的数据流进行镜像处理即可。
[0060]
另外,如上所示,本实施例中,对于标签镜像会话中的层数、各层的标签值以及各层标签值所关联的源镜像实体都可灵活设定。为了便于理解,本实施例下面结合几种示例的标签镜像会话结构为示例进行说明。
[0061]
在一种示例中,对于包括一层标签层的标签镜像会话,该标签层的标签值可为但不限于所要镜像的隧道、伪线或l3vpn的入向标签值,该入向标签值关联的源镜像实体标识对应为隧道、伪线或l3vpn的标识。
[0062]
在一种示例中,对于包括两层标签层的标签镜像会话,第一标签层的第一标签值为所要镜像的第一隧道的第一入向标签值,第一入向标签值关联的第一源镜像实体标识为第一隧道的标识;
[0063]
第二标签层的第二标签值为所要镜像的第二隧道、第二伪线或第二l3vpn的第二入向标签值,第二入向标签值关联的第二源镜像实体标识对应为第二隧道、第二伪线或第二l3vpn的标识;
[0064]
在本示例中,当第二标签层的第二标签值为所要镜像的第二隧道的第二入向标签值时,第一隧道为环形隧道,第二隧道为所述第一隧道下的所要镜像的隧道。
[0065]
在一种示例中,对于包括三层标签层的标签镜像会话,第一标签层的第一标签值为所要镜像的第一隧道的第一入向标签值,第一入向标签值关联的第一源镜像实体标识为第一隧道的标识,第一隧道为环形隧道;
[0066]
第二标签层的第二标签值为第一隧道下的所要镜像的第二隧道第二入向标签值,第二入向标签值关联的第二源镜像实体标识对应为第二隧道、第二伪线或第二l3vpn的标识;
[0067]
第三标签层的第三标签值为所要镜像的第三伪线或第三l3vpn的第三入向标签值,第三入向标签值关联的第三源镜像实体标识对应为第三伪线或第三l3vpn的标识。
[0068]
可见,本实施例中标签镜像会话的具体结构也可根据具体需求灵活设置;在可对需要镜像的目标数据流进行多层筛选控制,实现精粒度的镜像,可更好的满足各种应用场景的需求,例如可适用但不限于分组传送网络中nni(network node interface,网络节点接口)侧各种需要精确获取所需要的镜像数据流的应用场景。
[0069]
实施例二:
[0070]
本提供了一种镜像数据流的装置,可设置于各种作为网络节点的通信设备中,请参见图3所示,包括:
[0071]
匹配处理模块301,用于在接收到设置有镜像标识的端口的数据流时,根据镜像标识在镜像表中匹配对应的目标镜像会话,镜像表中包括标签镜像表,标签镜像表中包括标
签镜像会话,一条标签镜像会话包括镜像标识、至少一层标签层、各标签层对应的标签值、各标签值关联的源镜像实体标识、以及目的端口;具体的匹配处理过程请参见上述各实施例所示,在此不再赘述。
[0072]
镜像处理模块302,用于在目标镜像会话包括目标标签镜像会话时,从数据流中筛选出与目标标签镜像会话相匹配的目标数据流作为待镜像数据流;也即从源端口的数据流中筛选出与目标标签镜像会话中各标签层的标签值、各标签值关联的源镜像实体标识所匹配目标数据流,作为待镜像数据流。具体的处理过程请参见上述各实施例所示,在此也不再赘述。
[0073]
为了便于理解,本实施例下面结合几种应用场景为示例进行说明。
[0074]
场景一:标签镜像会话包括三层标签层,分别为环形隧道标签+隧道标签+伪线标签(或l3vpn标签)。
[0075]
第一步,创建标签镜像会话。
[0076]
镜像标签信息包括标签层次和标签值,标签层次为三层,各层的标签值分别为所要镜像的环形隧道、隧道和伪线的入向标签值(也可为l3vpn的入向标签值)。
[0077]
第二步,关联源镜像实体,并指定镜像目的端口。
[0078]
请参见图4所示,包括:
[0079]
s401:设置标签镜像会话id。
[0080]
s402:设置第一层标签,具体指环形隧道所对应的入向标签值,并关联该环形隧道id。比如要镜像的环形隧道id为65532,入向标签值为18。
[0081]
s403:设置第二层标签,具体指隧道所对应的入向标签值,并关联该隧道id;比如要镜像的隧道id为1,入标签为16。
[0082]
s404:设置第三层标签,具体指伪线的入向标签值,并关联该伪线id,比如伪线id为1,入向标签值为205800的数据流。
[0083]
s405:配置镜像的目的端口。例如镜像到目的端口值为205800,关联pw id1,目的端口gei-1/1的标签镜像为gei-1/1端口。这样创建3的层标签为,第一层标签值为18,关联环形隧道id为65532,第二层标签值为16,关联隧道id 1,第三层标签值为205800,关联pw id 1,目的端口gei-1/1的标签镜像会话。
[0084]
第三步,生成转发信息表,根据转发信息表完成数据流镜像。
[0085]
转发信息表包括逻辑端口表和镜像表,具体生成过程请参见上述各实施例所示,在此不再赘述。
[0086]
对于数据流的镜像过程请参见图5所示,包括:
[0087]
s501:硬件收到逻辑端口的数据流。
[0088]
s502:从逻辑端口表中确定该逻辑端口是否启用端口镜像,如是,转至s503;否则,转至s506。
[0089]
s503:从逻辑端口表中确定该逻辑端口是否启用标签镜像,如是,转至s504;否则,转至s505。
[0090]
s504:读取标签镜像表相应的目标标签镜像会话,从该逻辑端口的数据流中匹配出该目标标签镜像会话对应的目标数据流(也即待镜像数据流)发给对应槽位的目标端口。
[0091]
s505:对该端口的数据流进行正常的业务处理。
[0092]
s506:从逻辑端口表中确定该端口是否启用端口镜像,如是,转至s504;否则,转至s507。
[0093]
s507:对该逻辑端口的数据流进行端口镜像处理。
[0094]
场景二:标签镜像会话包括二层标签,分别为隧道标签+伪线标签(l3vpn标签)。
[0095]
第一步,创建标签镜像会话。
[0096]
镜像标签信息包括标签层次和标签值,标签层次为二层,各层的标签值分别为所要镜像的隧道和伪线的入向标签值(也可为l3vpn的入向标签值);
[0097]
第二步,关联源镜像实体,并指定镜像目的端口。
[0098]
源镜像实体为隧道、伪线(也可为l3vpn)。第一层标签,具体指该隧道所对应的标签值,并关联该隧道id;第二层标签值指伪线或l3vpn的标签值,并关联该伪线id(也可为l3vpn id),指定镜像的目的端口。比如要镜像隧道id为1,入标签为16,伪线id为1,入标签为205800的数据流,镜像到目的端口为gei-1/1端口,可创建2层标签,第一层标签值为16,关联隧道id 1,第二层标签值为205800,关联pw id 1,目的端口gei-1/1的标签镜像会话。
[0099]
第三步,生成转发信息表,根据转发信息表完成数据流镜像。
[0100]
转发信息表包括逻辑端口表和标签镜像表,具体处理流程请参见图5所示,在此不再赘述。
[0101]
场景三:标签镜像会话包括一层标签层,为隧道标签或伪线标签或l3vpn标签:
[0102]
第一步,创建标签镜像会话。
[0103]
镜像标签信息包括标签层次和标签值,标签层次为一层,为所要镜像的隧道或伪线或l3vpn的入向标签值。
[0104]
第二步,关联源镜像实体,并指定镜像目的端口。
[0105]
源镜像实体包括但不限于隧道、伪线或l3vpn。关联源镜像实体就是将镜像标签值与源镜像实体关,具体指该隧道或伪线或l3vpn所对应的入向标签值,并关联该隧道id或伪线id或l3vpn id;并指定镜像的目的端口。比如要镜像隧道id为1,入标签为16的数据流,镜像到目的端口为gei-1/1端口,可创建1层标签,标签值为16,关联隧道id 1,目的端口gei-1/1的标签镜像会话。
[0106]
第三步,生成转发信息表,根据转发信息表完成数据流镜像。
[0107]
如上所述,转发信息表包括逻辑端口表和标签镜像表。根据装置物理资源信息,生成逻辑端口表;如果存在标签镜像,还需要生成标签镜像表,并做镜像标记,且标签镜像的优先级高于端口镜像。硬件处理模块通过转发信息表获取镜像的信息。第一份数据流按照正常业务转发;第二份数据流则根据镜像转发表项,转发到镜像的目的端口。具体处理流程请参见图5所示,在此不再赘述。
[0108]
实施例三:
[0109]
本实施例还提供了一种通信设备,参见图6所示,其包括处理器601、存储器602以及通信总线603;
[0110]
通信总线603用于实现处理器601与存储器602之间的通信连接;
[0111]
一种示例中,处理器601可用于执行存储器602中存储的计算机程序,以实现如上各实施例中的镜像数据流的方法的步骤。
[0112]
本实施例还提供了一种计算机可读存储介质,该计算机可读存储介质包括在用于
存储信息(诸如计算机可读指令、数据结构、计算机程序模块或其他数据)的任何方法或技术中实施的易失性或非易失性、可移除或不可移除的介质。计算机可读存储介质包括但不限于ram(random access memory,随机存取存储器),rom(read-only memory,只读存储器),eeprom(electrically erasable programmable read only memory,带电可擦可编程只读存储器)、闪存或其他存储器技术、cd-rom(compact disc read-only memory,光盘只读存储器),数字多功能盘(dvd)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。
[0113]
在一种示例中,本实施例中的计算机可读存储介质可用于存储计算机程序,该计算机程序可被处理器执行,以实现如上各实施例中的镜像数据流的方法的步骤。
[0114]
本实施例还提供了一种计算机程序(或称计算机软件),该计算机程序可以分布在计算机可读介质上,由可计算装置来执行,以实现如上各实施例所示的镜像数据流的方法的至少一个步骤;并且在某些情况下,可以采用不同于上述实施例所描述的顺序执行所示出或描述的至少一个步骤。
[0115]
本实施例还提供了一种计算机程序产品,包括计算机可读装置,该计算机可读装置上存储有如上所示的任一计算机程序。本实施例中该计算机可读装置可包括如上所示的计算机可读存储介质。
[0116]
可见,本领域的技术人员应该明白,上文中所公开方法中的全部或某些步骤、系统、装置中的功能模块/单元可以被实施为软件(可以用计算装置可执行的计算机程序代码来实现)、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。
[0117]
此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、计算机程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。所以,本发明不限制于任何特定的硬件和软件结合。
[0118]
以上内容是结合具体的实施方式对本发明实施例所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。