发明内容
针对相关技术中包处理器无法识别1588报文的EtherType的的问题,本发明提供了一种1588报文处理方法、装置及通信设备,以至少解决上述问题。
根据本发明的一个方面,提供了一种1588报文处理方法,包括:识别接收到的1588报文的原始EtherType;根据预定的映射方式对所述原始EtherType进行修改;将修改EtherType后的所述1588报文发送给包处理器。
优选地,所述预定的映射方式包括:根据所述原始EtherType及其承载方式进行映射。
优选地,根据所述原始EtherType及其承载方式进行映射包括:对于二层承载,将所述原始EtherType的前十二位修改为78f;对于三层承载,将所述原始EtherType的前十二位修改为801。
优选地,所述预定的映射方式包括以下至少之一:所述1588报文的所述原始EtherType为Annouce报文,且承载方式为二层承载时,将所述原始EtherType修改为0x78f0;所述1588报文的所述原始EtherType为Annouce报文,且承载方式为三层承载时,将所述原始EtherType修改为0x8010;所述1588报文的所述原始EtherType为Sync报文,且承载方式为二层承载时,将所述原始EtherType修改为0x78f1;所述1588报文的所述原始EtherType为Sync报文,且承载方式为三层承载时,将所述原始EtherType修改为0x8011;所述1588报文的所述原始EtherType为Follow_Up报文,且承载方式为二层承载时,将所述原始EtherType修改为0x78f2;所述1588报文的所述原始EtherType为Follow_Up报文,且承载方式为三层承载时,将所述原始EtherType修改为0x8012;所述1588报文的所述原始EtherType为Delay_req报文,且承载方式为二层承载时,将所述原始EtherType修改为0x78f3;所述1588报文的所述原始EtherType为Delay_req报文,且承载方式为三层承载时,将所述原始EtherType修改为0x8013;所述1588报文的所述原始EtherType为Delay_rsp报文,且承载方式为二层承载时,将所述原始EtherType修改为0x78f4;所述1588报文的所述原始EtherType为Delay_rsp报文,且承载方式为三层承载时,将所述原始EtherType修改为0x8014;所述1588报文的所述原始EtherType为Pdelay_req报文,且承载方式为二层承载时,将所述原始EtherType修改为0x78f5;所述1588报文的所述原始EtherType为Pdelay_req报文,且承载方式为三层承载时,将所述原始EtherType修改为0x8015;所述1588报文的所述原始EtherType为Pdelay_rsp报文,且承载方式为二层承载时,将所述原始EtherType修改为0x78f6;所述1588报文的所述原始EtherType为Pdelay_rsp报文,且承载方式为三层承载时,将所述原始EtherType修改为0x8016;所述1588报文的所述原始EtherType为Pdelay_respond_follow_up报文,且承载方式为二层承载时,将所述原始EtherType修改为0x78f7;所述1588报文的所述原始EtherType为Pdelay_respond_follow_up报文,且承载方式为三层承载时,将所述原始EtherType修改为0x8017;所述1588报文的所述原始EtherType为Signaling报文,且承载方式为二层承载时,将所述原始EtherType修改为0x78f8;所述1588报文的所述原始EtherType为Signaling报文,且承载方式为三层承载时,将所述原始EtherType修改为0x8018;所述1588报文的所述原始EtherType为Management报文,且承载方式为二层承载时,将所述原始EtherType修改为0x78f9;所述1588报文的所述原始EtherType为Management报文,且承载方式为三层承载时,将所述原始EtherType修改为0x8019。
优选地,将修改EtherType后的所述1588报文发送给所述包处理器之后,还包括:所述包处理器接收修改EtherType后的所述1588报文;所述包处理器根据所述预定的映射方式将所述1588报文中修改后的EtherType反映射为所述原始EtherType。
根据本发明的另一方面,提供了一种1588报文处理装置,包括:识别模块,用于识别接收到的1588报文的原始EtherType;修改模块,用于根据预定的映射方式对所述原始EtherType进行修改;发送模块,用于将修改EtherType后的所述1588报文发送给包处理器。
优选地,所述修改模块用于根据所述预定的映射方式为根据所述原始EtherType及其承载方式进行映射的方式对所述原始EtherType进行修改。
优选地,所述修改模块包括:第一修改单元,用于在所述承载方式为二层承载的情况下,将所述原始EtherType的前十二位修改为78f;第二修改单元,用于在所述承载方式为三层承载的情况下,将所述原始EtherType的前十二位修改为801。
优选地,所述第一修改单元还用于:所述1588报文的所述原始EtherType为Annouce报文,且承载方式为二层承载时,将所述原始EtherType修改为0x78f0;所述1588报文的所述原始EtherType为Sync报文,且承载方式为二层承载时,将所述原始EtherType修改为0x78f1;所述1588报文的所述原始EtherType为Follow_Up报文,且承载方式为二层承载时,将所述原始EtherType修改为0x78f2;所述1588报文的所述原始EtherType为Delay_req报文,且承载方式为二层承载时,将所述原始EtherType修改为0x78f3;所述1588报文的所述原始EtherType为Delay_rsp报文,且承载方式为二层承载时,将所述原始EtherType修改为0x78f4;所述1588报文的所述原始EtherType为Pdelay_req报文,且承载方式为二层承载时,将所述原始EtherType修改为0x78f5;所述1588报文的所述原始EtherType为Pdelay_rsp报文,且承载方式为二层承载时,将所述原始EtherType修改为0x78f6;所述1588报文的所述原始EtherType为Pdelay_respond_follow_up报文,且承载方式为二层承载时,将所述原始EtherType修改为0x78f7;所述1588报文的所述原始EtherType为Signaling报文,且承载方式为二层承载时,将所述原始EtherType修改为0x78f8;所述1588报文的所述原始EtherType为Management报文,且承载方式为二层承载时,将所述原始EtherType修改为0x78f9;所述第二修改单元还用于:所述1588报文的所述原始EtherType为Annouce报文,且承载方式为三层承载时,将所述原始EtherType修改为0x8010;所述1588报文的所述原始EtherType为Sync报文,且承载方式为三层承载时,将所述原始EtherType修改为0x8011;所述1588报文的所述原始EtherType为Follow_Up报文,且承载方式为三层承载时,将所述原始EtherType修改为0x8012;所述1588报文的所述原始EtherType为Delay_req报文,且承载方式为三层承载时,将所述原始EtherType修改为0x8013;所述1588报文的所述原始EtherType为Delay_rsp报文,且承载方式为三层承载时,将所述原始EtherType修改为0x8014;所述1588报文的所述原始EtherType为Pdelay_req报文,且承载方式为三层承载时,将所述原始EtherType修改为0x8015;所述1588报文的所述原始EtherType为Pdelay_rsp报文,且承载方式为三层承载时,将所述原始EtherType修改为0x8016;所述1588报文的所述原始EtherType为Pdelay_respond_follow_up报文,且承载方式为三层承载时,将所述原始EtherType修改为0x8017;所述1588报文的所述原始EtherType为Signaling报文,且承载方式为三层承载时,将所述原始EtherType修改为0x8018;所述1588报文的所述原始EtherType为Management报文,且承载方式为三层承载时,将所述原始EtherType修改为0x8019。
根据本发明的另一方面,还提供了一种通信设备,包括:1588报文处理装置和包处理器,其中,所述1588报文处理装置包括:识别模块,用于识别接收到的1588报文的原始EtherType;修改模块,用于根据预定的映射方式对所述原始EtherType进行修改;发送模块,用于将修改EtherType后的所述1588报文发送给包处理器;所述包处理器包括:接收模块,用于接收修改EtherType后的所述1588报文;反映射模块,用于根据所述预定的映射方式将所述1588报文中修改后的EtherType反映射为所述原始EtherType。
通过本发明,采用识别接收到的1588报文的原始EtherType;根据预定的映射方式对所述原始EtherType进行修改;将修改EtherType后的所述1588报文发送给包处理器的方法,解决了相关技术中包处理器无法识别1588报文的EtherType的问题,进而达到了使包处理器能够识别1588报文的EtherType的效果,从而使包处理器能够正常对1588报文进行处理。
具体实施方式
下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
在本发明实施例中提供了一种1588报文处理方法。图2是根据本发明实施例的1588报文处理方法的流程图,如图2所示,该方法包括如下步骤:
步骤S202,识别接收到的1588报文的原始EtherType;
步骤S204,根据预定的映射方式对原始EtherType进行修改;
步骤S206,将修改EtherType后的1588报文发送给包处理器。
通过上述步骤,将接收到的原始1588报文的EtherType先进行识别和修改,再发送给包处理器,使得包处理器能够识别修改后的1588报文的EtherType。这种处理方式,相比现有技术中包处理器无法识别1588报文的EtherType的情况,不增加额外的成本,但却有效的达到了使包处理器能够识别1588报文的EtherType的效果,从而可以正确实现1588协议的各种时钟模型,大大降低了对包处理器的要求,也降低了实现1588时钟的硬件成本。
优选地,上述步骤S204中的预定的映射方式可以是根据原始EtherType及其承载方式进行映射。通过采取这样的优选预定的映射方式,可以使映射简单清楚,有利于使用。当然也可以使用其他的方式进行映射,只要能够将原始1588报文中的各种EtherType一对一的进行映射,均应当纳入本发明的保护范围。
优选地,上述步骤S204中的预定的映射方式的具体方式可以为:对于二层承载,将原始EtherType的前十二位修改为78f;对于三层承载,将原始EtherType的前十二位修改为801。通过这种优选映射方式,可以将不同承载方式的1588报文的EtherType映射至不同的地址区域,使映射更加清楚,方便使用。需要说明的是,78f或801仅仅是一种举例,实际应用中将其修改为其它值的情况,均应当纳入本发明的保护范围。
优选地,上述的预定的映射方式可以按如下方式具体实施,但并不限于这种映射方式:1588报文的原始EtherType为Annouce报文,且承载方式为二层承载时,将原始EtherType修改为0x78f0;1588报文的原始EtherType为Annouce报文,且承载方式为三层承载时,将原始EtherType修改为0x8010;1588报文的原始EtherType为Sync报文,且承载方式为二层承载时,将原始EtherType修改为0x78f1;1588报文的原始EtherType为Sync报文,且承载方式为三层承载时,将原始EtherType修改为0x8011;1588报文的原始EtherType为Follow_Up报文,且承载方式为二层承载时,将原始EtherType修改为0x78f2;1588报文的原始EtherType为Follow_Up报文,且承载方式为三层承载时,将原始EtherType修改为0x8012;1588报文的原始EtherType为Delay_req报文,且承载方式为二层承载时,将原始EtherType修改为0x78f3;1588报文的原始EtherType为Delay_req报文,且承载方式为三层承载时,将原始EtherType修改为0x8013;1588报文的原始EtherType为Delay_rsp报文,且承载方式为二层承载时,将原始EtherType修改为0x78f4;1588报文的原始EtherType为Delay_rsp报文,且承载方式为三层承载时,将原始EtherType修改为0x8014;1588报文的原始EtherType为Pdelay_req报文,且承载方式为二层承载时,将原始EtherType修改为0x78f5;1588报文的原始EtherType为Pdelay_req报文,且承载方式为三层承载时,将原始EtherType修改为0x8015;1588报文的原始EtherType为Pdelay_rsp报文,且承载方式为二层承载时,将原始EtherType修改为0x78f6;1588报文的原始EtherType为Pdelay_rsp报文,且承载方式为三层承载时,将原始EtherType修改为0x8016;1588报文的原始EtherType为Pdelay_respond_follow_up报文,且承载方式为二层承载时,将原始EtherType修改为0x78f7;1588报文的原始EtherType为Pdelay_respond_follow_up报文,且承载方式为三层承载时,将原始EtherType修改为0x8017;1588报文的原始EtherType为Signaling报文,且承载方式为二层承载时,将原始EtherType修改为0x78f8;1588报文的原始EtherType为Signaling报文,且承载方式为三层承载时,将原始EtherType修改为0x8018;1588报文的原始EtherType为Management报文,且承载方式为二层承载时,将原始EtherType修改为0x78f9;1588报文的原始EtherType为Management报文,且承载方式为三层承载时,将原始EtherType修改为0x8019。上述的优选映射方式,不但映射条理清楚,而且更有利于包处理器的读取,有利于使用。
优选地,在步骤S206之后,包处理器可以在接收到修改EtherType后的1588报文之后,根据之前设定的映射方式将1588报文中修改后的EtherType反映射为原始EtherType。通过这样的优选处理方式,可以使包处理器识别到的修改后的1588报文的EtherType反映射成为原始的1588报文的EtherType,从而更利于之后的设备对1588报文的处理。
在本发明实施例中还提供了一种1588报文处理装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图3是根据本发明实施例的1588报文处理装置30的结构框图一,如图3所示,该装置30包括:识别模块32、修改模块34、发送模块36,下面对该结构进行详细的说明。
识别模块32,用于识别接收到的1588报文的原始EtherType;修改模块34,连接至识别模块32,该模块用于根据预定的映射方式对识别模块32识别的原始EtherType进行修改;发送模块36,连接至修改模块34,用于将修改模块34修改EtherType后的1588报文发送给包处理器。
优选地,修改模块34用于根据预定的映射方式为根据原始EtherType及其承载方式进行映射的方式对原始EtherType进行修改。
图4是根据本发明优选实施例的1588报文处理装置30的结构框图二,如图4所示,该模块包括:第一修改单元342,第二修改单元344。其中,
第一修改单元342,用于在承载方式为二层承载的情况下,将原始EtherType的前十二位修改为78f;第二修改单元344,用于在承载方式为三层承载的情况下,将原始EtherType的前十二位修改为801。
优选地,第一修改单元342还用于:1588报文的原始EtherType为Annouce报文,且承载方式为二层承载时,将原始EtherType修改为0x78f0;1588报文的原始EtherType为Sync报文,且承载方式为二层承载时,将原始EtherType修改为0x78f1;1588报文的原始EtherType为Follow_Up报文,且承载方式为二层承载时,将原始EtherType修改为0x78f2;1588报文的原始EtherType为Delay_req报文,且承载方式为二层承载时,将原始EtherType修改为0x78f3;1588报文的原始EtherType为Delay_rsp报文,且承载方式为二层承载时,将原始EtherType修改为0x78f4;1588报文的原始EtherType为Pdelay_req报文,且承载方式为二层承载时,将原始EtherType修改为0x78f5;1588报文的原始EtherType为Pdelay_rsp报文,且承载方式为二层承载时,将原始EtherType修改为0x78f6;1588报文的原始EtherType为Pdelay_respond_follow_up报文,且承载方式为二层承载时,将原始EtherType修改为0x78f7;1588报文的原始EtherType为Signaling报文,且承载方式为二层承载时,将原始EtherType修改为0x78f8;1588报文的原始EtherType为Management报文,且承载方式为二层承载时,将原始EtherType修改为0x78f9;第二修改单元344还用于:1588报文的原始EtherType为Annouce报文,且承载方式为三层承载时,将原始EtherType修改为0x8010;1588报文的原始EtherType为Sync报文,且承载方式为三层承载时,将原始EtherType修改为0x8011;1588报文的原始EtherType为Follow_Up报文,且承载方式为三层承载时,将原始EtherType修改为0x8012;1588报文的原始EtherType为Delay_req报文,且承载方式为三层承载时,将原始EtherType修改为0x8013;1588报文的原始EtherType为Delay_rsp报文,且承载方式为三层承载时,将原始EtherType修改为0x8014;1588报文的原始EtherType为Pdelay_req报文,且承载方式为三层承载时,将原始EtherType修改为0x8015;1588报文的原始EtherType为Pdelay_rsp报文,且承载方式为三层承载时,将原始EtherType修改为0x8016;1588报文的原始EtherType为Pdelay_respond_follow_up报文,且承载方式为三层承载时,将原始EtherType修改为0x8017;1588报文的原始EtherType为Signaling报文,且承载方式为三层承载时,将原始EtherType修改为0x8018;1588报文的原始EtherType为Management报文,且承载方式为三层承载时,将原始EtherType修改为0x8019。
在实施例中还提供了一种1588时钟网络通信设备。该设备使用上述的1588报文处理装置30。图5是根据本发明实施例的1588时钟网络通信设备,如图5所示,该设备包括1588报文处理装置30和包处理器50,1588报文处理装置30,其中,
1588报文处理装置30包括识别模块32、修改模块34和发送模块36,其中,识别模块32,用于识别接收到的1588报文的原始EtherType;修改模块34,连接至识别模块32,该模块用于根据预定的映射方式对识别模块32识别的原始EtherType进行修改;发送模块36,连接至修改模块34,用于将修改模块34修改EtherType后的1588报文发送给包处理器;包处理器50包括接收模块52和反映射模块54,其中,接收模块52,连接至发送模块36,用于接收修改EtherType后的1588报文;反映射模块54,连接至接收模块52,用于根据预定的映射方式将1588报文中修改后的EtherType反映射为原始EtherType。
下文中将参考附图并结合优选实施例来详细说明本发明。以下实施例结合了上述实施例及其优选实施方式。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
在本优选实施例中,提供了一种解决包处理器无法识别1588报文EtherType的问题的实现方法。图6是根据本发明优选实施例的1588报文EtherType和修改后的EtherType的映射关系表。该映射可以在上述实施例中的1588时钟网络通信设备中的1588报文处理装置30中进行,在具体实现中,可以利用现有硬件设备进行映射,例如,使用现有时钟网络通信设备前端的区分1588报文EtherType、同时负责打时间戳的硬件器件进行映射。
表1是1588报文EtherType和修改后的EtherType的映射关系表,该优选映射方式如表1所示。
如果是二层承载,可以将Annouce报文的EtherType类型修改为0x78f0;如果是三层承载,则可以修改为0x8010。
如果是二层承载,可以将Sync报文的EtherType类型修改为0x78f1;如果三层承载,则可以修改为0x8011。
如果是二层承载,可以将Follow_Up报文的EtherType类型修改为0x78f2;如果是三层承载,则可以修改为0x8012。
如果是二层承载,可以将Delay_req报文的EtherType类型修改为0x78f3;如果是三层承载,则可以修改为0x8013。
如果是二层承载,可以将Delay_rsp报文的EtherType类型修改为0x78f4;如果是三层承载,则可以修改为0x8014。
如果是二层承载,可以将Pdelay_req报文的EtherType类型修改为0x78f5;如果是三层承载,则可以修改为0x8015。
如果是二层承载,可以将Pdelay_rsp报文的EtherType类型修改为0x78f6;如果是三层承载,则可以修改为0x8016。
如果是二层承载,可以将Pdelay_respond_follow_up报文的EtherType类型修改为0x78f7;如果是三层承载,则可以修改为0x8017。
如果是二层承载,可以将Signaling报文的EtherType类型修改为0x78f8;如果是三层承载,则可以修改为0x8018。
如果是二层承载,可以将Management报文的EtherType类型修改为0x78f9;如果是三层承载,则可以修改为0x8019。
表1 1588报文EtherType和修改后的EtherType的映射关系表
当然,还可以将其他类型的报文类型进行修改,并不局限于上述的类型。也可以按照其他的映射方式进行修改,只要能够达到将原有的1588报文类型映射为能够被包处理器识别的地址类型即可。
通过使用上述优选是实例中的映射方式,设备后端的包处理器(即上述的包处理器50),就能够识别修改后的EtherType类型,得到各种1588报文的EtherType,从而能够将1588协议中各种时钟模式下的各种报文EtherType包进行正确的识别并处理,从而达到不需要更改设备后端的包处理器就能实现1588的各种时钟模式下的消息报文的正确处理的效果。
在本优选实施例中还提供了一种具体实现1588报文处理的方法,该方法包括以下步骤:
步骤S1,配置设备(即上面提到的1588时钟网络通信设备)前端1588时间戳硬件器件(即上面提到的1588报文处理装置30的其中一种具体实现的硬件)识别1588报文的EtherType。
步骤S2,配置1588报文EtherType以及承载方式(例如,二层承载、三层承载)所对应的EtherType的修改值。
步骤S3,设备后端包处理器(即上面提到的包处理器50)识别报文的EtherType的修改值;
步骤S4,设备后端包处理器通过EtherType的修改值映射得到1588报文EtherType;
步骤S5,设备后端包处理器根据1588时钟模式、时钟同步机制、以及同步方法等,对1588报文进行正确的处理,从而实现1588时间同步。
本优选实施例为解决由于包处理器无法识别1588报文的EtherType,从而无法实现各种复杂的1588时钟模型的问题,采用了一种1588报文处理的方法,有效的解决了包处理器无法识别1588报文的EtherType,从而无法实现各种1588时钟模型的问题,并且在很大程度上降低了对包处理器的要求。
图6是根据本优选实施例的时钟网络通信设备的示意图,如图6所示,该设备由上述扩展了1588报文处理功能的处理1588协议时间戳的前端硬件,以及无法识别1588报文EtherType的包处理器组成。其中,图6中的报文识别器相当于上述的识别模块32,报文修改器相当于上述的修改模块34,包类型映射表即为表1所示的1588报文EtherType和修改后的EtherType的映射关系表,前端的时间物理器件相当于上述的1588报文处理装置30。
与现有技术相比较,本优选实施例在现有设备的包处理器无法识别1588报文EtherType,从而无法实现1588各种时钟模型基础上,通过一种利用设备前端处理1588报文时间戳硬件(即上面提到的1588报文处理装置30的其中一种具体实现的硬件),将相应的1588消息报文的EtherType进行映射修改的方法,使得设备后端的包处理器(即上面提到的包处理器50)可以识别EtherType类型的修改值,从而能够获知1588报文的EtherType。解决了设备后端的包处理器由于无法识别应用层协议,即无法识别接收到的1588报文EtherType字段,从而无法正确处理各种1588消息报文,导致无法正确实现1588各种时钟模型的问题。由于本优选实施例是在现有的硬件设备基础上实现的,不增加额外的成本,对软件的成本增加也很小,但却能够达到有效的解决包处理器无法识别1588报文EtherType的效果,大大降低了对包处理器的要求,同时也大大降低了实现1588时钟的硬件成本。
在本发明另一优选实施例中,还提供了一种解决包处理器无法识别1588报文EtherType的实现装置,该装置包括以下模块:
1588报文EtherType识别模块(即识别模块32),负责1588报文EtherType的识别,该模块工作在设备前端处理1588时间戳的硬件器件(即1588报文处理装置30)中。
EtherType修改模块(即修改模块34):负责将1588报文中的不同EtherType报文的EtherType进行修改,该模块工作在设备前端处理1588时间戳的硬件器件(即1588报文处理装置30)中。
报文转发处理模块:负责1588报文的正确转发,也就是根据1588时钟模型,时钟状态(Master/Slave/Passive),时钟同步机制(E2E/P2P),以及时钟同步方法(一步法/两步法),正确区分出1588报文EtherType,正确处理1588报文的转发。该部分由设备后端的包处理器(即包处理器50)通过匹配EtherType类型修改值来识别1588报文EtherType,实现正确处理。
图7是根据本发明另一优选实施例的解决包处理器无法识别1588报文EtherType的实现方法的处理流程图。如图7所示,包括以下步骤S702至步骤S706。
步骤S702,在时间发生器的时间戳表示的时间点上,通过1588报文EtherType识别模块(即识别模块32),识别1588报文EtherType。
步骤S704,通过EtherType修改模块(即修改模块34),根据1588报文EtherType修改报文的EtherType,将包转发到后端包处理器。
步骤S706,通过报文转发处理模块,正确区分1588报文EtherType,实现1588时间同步。
综上所述,本发明实施例通过一种1588时钟网络通信设备,具体涉及一种1588报文处理方法及装置。从以上的描述中,可以看出,通过本发明,采用识别接收到的1588报文的原始EtherType;根据预定的映射方式对所述原始EtherType进行修改;将修改EtherType后的所述1588报文发送给包处理器的方法步骤,解决了相关技术中包处理器无法识别1588报文的EtherType的问题,进而达到了使包处理器能够识别1588报文的EtherType的效果,从而使包处理器能够正常对1588报文进行处理。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。