报文采样方法、装置及报文处理设备与流程

文档序号:15232841发布日期:2018-08-21 19:51阅读:251来源:国知局

本公开涉及数据传输技术领域,具体而言,涉及一种报文采样方法、装置及报文处理设备。



背景技术:

在很多场景中,往往会使用到数据报文采样方案,例如对网络中的业务流量进行统计和分析过程中,通过设定的采样间隔对数据报文进行采样,进而计算得到数据报文对应的业务流量,经发明人研究发现,现有的数据报文采样方案可靠性有限,无法满足实际需求,例如,基于设定的采样间隔对网络中各种流量的数据报文统一统计后进行采样时,由于流量大小的差异,对于流量较小的数据报文,不仅无法做到可靠采样,甚至可能出现遗漏。



技术实现要素:

有鉴于此,本公开的目的在于提供一种报文采样方法、装置及报文处理设备,以提高报文采样的可靠性。

第一方面,本公开提供了一种报文采样方法,应用于报文处理设备,所述方法包括:

将接收到的数据报文分类;

按采样间隔对不同类型的数据报文分别进行采样,得到不同类型的数据报文样本。

可选地,将接收到的数据报文分类的步骤,包括:

识别数据报文的源地址和目的地址;

将源地址相同且目的地址相同的数据报文划分为同一类型的数据报文。

可选地,按采样间隔对不同类型的数据报文分别进行采样的步骤,包括:

分别统计不同类型的数据报文的数量;

针对不同类型的数据报文,根据统计得到的数量按照采样间隔进行采样。

可选地,分别统计不同类型的数据报文的数量的步骤,包括:

在接收到数据报文时,根据该数据报文的特征计算hash值,根据所述hash值确定该数据报文对应的数量统计地址,并将该数量统计地址对应的计数器的计数值加1;

针对不同类型的数据报文,根据统计得到的数量按照采样间隔进行采样的步骤,包括:

在任意计数器的计数值满足所述采样间隔时,对该计数器对应类型的数据报文进行一次采样,从而采样得到不同类型的数据报文样本。

可选地,所述计数器存储在所述报文处理设备的动态随机存取存储器中。

可选地,所述方法还包括:

复制采样得到的数据报文样本;

将复制后得到的其中一份数据报文样本发送到netstream业务板,将另一份数据报文样本进行转发。

可选地,所述方法还包括:

根据采样得到的不同类型的数据报文样本的数量差异,获得各种类型的数据报文对应的流量在采样对象中的占比。

第二方面,本公开提供了一种报文采样装置,应用于报文处理设备,所述报文采样装置包括:

分类模块,用于将接收到的数据报文分类;

采样模块,用于按采样间隔对不同类型的数据报文分别进行采样,得到不同类型的数据报文样本。

可选地,所述分类模块包括:

地址识别子模块,用于识别数据报文的源地址和目的地址;

类别划分子模块,用于将源地址相同且目的地址相同的数据报文划分为同一类型的数据报文。

可选地,所述采样模块包括:

数量统计子模块,用于分别统计不同类型的数据报文的数量;

采样子模块,用于针对不同类型的数据报文,根据统计得到的数量按照采样间隔进行采样。

可选地,所述数量统计子模块包括:

统计单元,用于在接收到数据报文时,根据该数据报文的特征计算hash值,根据所述hash值确定该数据报文对应的数量统计地址,并将该数量统计地址对应的计数器的计数值加1;

所述采样子模块具体用于,在任意计数器的计数值满足所述采样间隔时,对该计数器对应类型的数据报文进行一次采样,从而采样得到不同类型的数据报文样本。

可选地,所述报文采样装置还包括:

复制模块,用于复制采样得到的数据报文样本;

处理模块,用于将复制后得到的其中一份数据报文样本发送到netstream业务板,将另一份数据报文样本进行转发。

可选地,所述报文采样装置还包括:

流量分析模块,用于根据采样得到的不同类型的数据报文样本的数量差异,获得各种类型的数据报文对应的流量在采样对象中的占比。

第三方面,本公开提供了一种报文处理设备,包括:

存储器;

处理器;以及

报文采样装置,所述报文采样装置包括:

分类模块,用于将接收到的数据报文分类;

采样模块,用于按采样间隔对不同类型的数据报文分别进行采样,得到不同类型的数据报文样本。

第四方面,本公开提供了一种计算机可读存储介质,所述计算机可读存储介质包括计算机程序,所述计算机程序运行时控制所述计算机可读存储介质所在报文处理设备执行上述的报文采样方法。

本公开提供的报文采样方法、装置及报文处理设备,将接收到的数据报文分类,针对不同类型的数据报文分别进行采样,从而能够可靠地对各种类型的数据报文均进行采样,避免流量较小的数据报文在采样时被遗漏,从而提高采样的可靠性和准确性。

为使本公开的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

为了更清楚地说明本公开的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本公开的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1为本公开提供的一种报文处理设备的方框示意图。

图2为本公开提供的一种报文采样方法的流程图。

图3为本公开提供的图2中步骤s11的示例性流程图。

图4为本公开提供的图2中步骤s12的示例性流程图。

图5为本公开提供的一种报文采样装置的方框示意图。

图标:10-报文处理设备;11-存储器;12-处理器;13-网络模块;20-报文采样装置;21-分类模块;211-地址识别子模块;212-类别划分子模块;22-采样模块;221-数量统计子模块;2211-计数器组分配单元;2212-统计单元;222-采样子模块;23-复制模块;24-处理模块;25-流量分析模块。

具体实施方式

在很多场景中,均需要使用到报文采样方案,例如,在需要对网络中的业务流量进行统计和分析的场景中,如基于netstream技术实现流量统计的过程中,一般需要结合数据报文采样方案实现流量统计,通过设定采样间隔对数据报文进行采样,从而减少需要统计的数据报文的数量,分析采样到的信息便可反映整个网络的流量状况。另外,基于采样到的信息进行统计还可以减小网络的流量,避免网络中的大流量对报文处理设备的性能造成影响。然而,经调研发现,现有的数据报文采样方案可靠性有限,采样准确率无法满足实际需求。

发明人对现有技术中的报文采样流程进行深入分析后发现,现有技术中的报文采样,无论是顺序采样还是随机采样,采用的方法一般是对所有符合采样条件的数据报文进行数量统计,然后按照设定的采样间隔进行采样,例如,若采样间隔为1000:1,顺序采样则选取统计到的数量为1000、2000、3000…的数据报文进行采样。随机采样则在每1000个数据报文中随机选取一个数据报文进行采样。然后再将采样得到的数据报文进行后续处理,例如,在netstream技术中,会将采样得到的数据报文做镜像处理后发往netstream业务板,在netstream业务板进行流量统计等业务。

经分析,采用现有技术中的报文采样方案可靠性有限的原因在于,网络中一般存在多种流量,例如,源地址相同且目的地址相同的各数据报文对应一种流量,源地址或目的地址不相同的数据报文对应不同类型的流量,不同类型的流量的大小存在差异,采用现有技术中的采样方案得到的采样报文无法对不同类型的流量的数据报文进行可靠采样,例如,基于设定的采样间隔对网络中各种流量的数据报文统一统计后进行采样时,由于流量大小的差异,对于流量较小的数据报文,不仅无法做到可靠采样,甚至可能出现遗漏,进而影响基于采样的数据报文进行后续处理的可靠性。

基于此,本公开提供了一种报文采样方案,突破现有技术中的思维局限,摒弃现有技术中对所有数据报文统一进行数量统计,然后按照设定的采样间隔进行采样的方案,本方案中巧妙地对接收到的数据报文进行分类,对不同类型的数据报文分别进行采样,确保不同类型的数据报文均能被可靠采样,提高采样可靠性和准确性的同时,为通过采用得到的信息进行后续分析提供了更多可能性。例如,按流量进行数据报文分类时,能够确保各种流量类型对应的数据报文均能被采样,避免现有技术中因不同流量的大小差异所导致的采样可靠性有限,甚至漏采样的情况发生,提高采样可靠性,将采样得到的各种流量类型对应的数据报文数量相比即可获得网络各种类型的流量的比重。

针对现有技术所存在的缺陷,均是发明人在经过实践并仔细研究后得出的结果,因此,上述问题的发现过程以及本公开针对现有技术中所存在问题所提出的解决方案,都应该是发明人在本公开过程中对本公开做出的贡献。

下面将结合本公开中附图,对本公开中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本公开的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本公开的实施例的详细描述并非旨在限制要求保护的本公开的范围,而是仅仅表示本公开的选定实施例。基于本公开的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。

如图1所示,是本公开提供的报文处理设备10的一种方框示意图。本公开中的报文处理设备10可以为路由器、交换机、网关等具有报文分析处理和转发功能的设备。如图1所示,报文处理设备10包括:存储器11、处理器12、网络模块13及报文采样装置20。

所述存储器11、处理器12以及网络模块13相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。存储器11中存储有报文采样装置20,所述报文采样装置20包括至少一个可以软件或固件(firmware)的形式存储于所述存储器11中的软件功能模块,所述处理器12通过运行存储在存储器11内的软件程序以及模块,如本公开中的报文采样装置20,从而执行各种功能应用以及数据处理,即实现本公开中的报文采样方法。

其中,所述存储器11可以是,但不限于,随机存取存储器(randomaccessmemory,ram),只读存储器(readonlymemory,rom),可编程只读存储器(programmableread-onlymemory,prom),可擦除只读存储器(erasableprogrammableread-onlymemory,eprom),电可擦除只读存储器(electricerasableprogrammableread-onlymemory,eeprom)等。其中,存储器11用于存储程序,所述处理器12在接收到执行指令后,执行所述程序。

所述处理器12可能是一种集成电路芯片,具有数据的处理能力。上述的处理器12可以是通用处理器,包括中央处理器(centralprocessingunit,cpu)、网络处理器(networkprocessor,np)等。可以实现或者执行本公开中公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。

网络模块13用于通过网络建立报文处理设备10与外部通信终端之间的通信连接,实现网络信号及数据的收发操作。上述网络信号可包括无线信号或者有线信号。

可以理解,图1所示的结构仅为示意,报文处理设备10还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。图1中所示的各组件可以采用硬件、软件或其组合实现。

本公开还提供一种计算机可读存储介质,包括计算机程序。所述计算机程序运行时控制所述计算机可读存储介质所在报文处理设备10执行下面的报文采样方法。

请结合参阅图2,报文处理设备10通过以下步骤实现报文采样。

步骤s11,将接收到的数据报文分类。

本实施例中,可以采用多种方式对数据报文进行分类,例如,在源地址相同且目的地址相同的各数据报文对应一种流量的情况下,可以根据源地址和目的地址将数据报文分类,进而实现对各种类型的数据报文的流量统计。

请结合参阅图3,在根据源地址和目的地址将数据报文分类的情况下,可以通过步骤s111和步骤s112实现数据报文的分类。

步骤s111,识别数据报文的源地址和目的地址。

步骤s112,将源地址相同且目的地址相同的数据报文划分为同一类型的数据报文。

又例如,若需要统计网络中传输的数据报文的数据长度分布情况,可预先划分数据报文的数据长度位于不同范围值时分别对应的类型,在接收到数据报文后,识别数据报文的数据长度,分析该数据长度位于的范围值以及对应的类型,进而实现对各种数据长度的数据报文的分类。又例如,若需要统计网络中传输的数据报文所用协议情况,可以按协议对数据报文的类型进行划分,在接收到数据报文后,识别数据报文所用协议,将所用协议相同的数据报文划分为同一类。数据报文的分类方式还以有其他,本实施例对此不作限定。

步骤s12,按采样间隔对不同类型的数据报文分别进行采样,得到不同类型的数据报文样本。

请结合参阅图4,在对数据报文进行分类之后,可以通过步骤s121和步骤s122对不同类型的数据报文分别进行采样。

步骤s121,分别统计不同类型的数据报文的数量。

统计数据报文的数量的方式有多种,例如,可以通过计数器统计数据报文的数量。在通过计数器统计数据报文的数量时,针对同一类型的数据报文,可以采用一个计数器进行数量统计,针对多种类型的数据报文,则分配计数器组,使用计数器组进行数量统计,计数器组中的各计数器分别用于统计不同类型的数据报文的数量,如分配64k地址作为计数器组的地址,计数器组中的各计数器分别对应有起始地址,在接收到数据报文时,根据该数据报文的特征计算hash值,根据hash值确定该数据报文在计数器组中对应的数量统计地址,并将该数量统计地址对应的计数器的计数值加1,从而实现对不同类型的数据报文的数量统计。

其中,可以通过多种特征计算hash值,例如,在根据源地址和目的地址将数据报文分类的情况下,可以通过数据报文的源地址和目的地址计算hash值,相应地,数据报文的数量统计地址为用于统计该类型的数据报文的计数器的起始地址与该数据报文的hash值之和。

还可以通过其他方式获得数量统计地址,例如,在根据数据长度对数据报文进行分类的情况下,可以给各范围值分配固定地址,例如,对于数据长度小于128的数据报文,可以设定固定偏移为1,对于数据长度位于128~256之间的数据报文,可以设定固定偏移为2等。将分配的计数器的起始地址偏移相应的固定偏移值作为数据长度为相应范围值的数据报文的数量统计地址。

步骤s122,针对不同类型的数据报文,根据统计得到的数量按照采样间隔进行采样。

在通过计数器组统计各种类型的数据报文的数量的情况下,在任意计数器的计数值满足所述采样间隔时,对该计数器对应类型的数据报文进行一次采样,从而采样得到不同类型的数据报文样本。

计数值满足采样间隔包括,将计数值对采样间隔取模,如果模值为0,则进行数据报文采样。其中,采样间隔可以灵活设定,例如,可以为1999:1、1000:1、75:1、50:1等,在采样间隔为1000:1的情况下,计数值为1000、2000、3000、4000等1000的整数倍时,将计数值对采样间隔取模的模值为0,进行数据报文采样。采样的方式可以灵活设定,例如,可以进行顺序采样,也可以随机采样。本实施例对此不作限制。

基于性价比考虑,在通过计数器组统计各种类型的数据报文的数量的情况下,计数器组存储在报文处理设备10的动态随机存取存储器(dynamicrandomaccessmemory,dram)中。dram存储空间较大,能够满足计数需求,且价格便宜。

在执行步骤s12,完成对网络中各种类型的数据报文的采样之后,可以执行以下步骤。

步骤s13,复制采样得到的数据报文样本。

其中,可以通过镜像功能实现对采样得到的数据报文样本的复制。

步骤s14,将复制后得到的其中一份数据报文样本发送到netstream业务板,将另一份数据报文样本进行转发。

将复制后得到的其中一份数据报文样本发送到netstream业务板,netstream业务板即可对各种类型的数据报文样本进行统计分析等业务,例如,在将源地址相同且目的地址相同的数据报文划分为同一类型的数据报文的情况下,通过对采样得到的数据报文样本的分析,可以分析出不同类型的数据报文在采样对象中的占比。

本实施例中,针对各种类型的数据报文采用相同的采样间隔进行采样,通过对设定时长内采样到的不同类型的数据报文样本的数量差异的分析,即可获得各种类型的数据报文对应的流量在采样对象中的占比。

将另一份数据报文样本进行转发即可实现对接收到的数据报文的发送操作。

为了更为清楚地阐述本公开中的实现方案,以将源地址相同且目的地址相同的数据报文划分为同一类型的数据报文,报文采样方案应用在netstream技术中为例,对本公开的工作流程进行举例说明。

假设用户的源ip地址(internetprotocoladdress)为10.0.0.1,该用户主要访问两个目的地址,目的ip地址分别为15.0.0.1和25.0.0.1,分别记为dip1和dip2,用户访问dip1的速率为10pps,访问dip2的速率为10mpps,将采样间隔设定为1000:1,对该用户的访问情况进行10分钟的netstream采样统计,那么,实现流程如下。

识别网络中各数据报文的源地址和目的地址得出网络中存在两种类型的数据报文,其中第一种类型的数据报文为由源ip地址10.0.0.1发送至目的ip地址15.0.0.1,第二种类型的数据报文为由源ip地址10.0.0.1发送至目的ip地址25.0.0.1。

由于传输第二种类型的数据报文的速率是传输第一种类型的数据报文的速率的1000000倍,采用计数器组分别对两种类型的数据报文进行数量统计,采用计数器组进行数据报文数量统计的方式如下:使用源ip地址+目的ip地址进行循环冗余校验crc16计算,得到第一种类型的数据报文的hash值为0xe6e6,第二种类型的数据报文的hash值为0x9493。分配一段计数器地址为0~64k。则第一种类型的数据报文对应的统计地址为stat1:0xe6e6,第二种类型的数据报文对应的统计地址为stat2:0x9493。每进入一个第一种类型的数据报文,stat1累加1,每进入一个第二种类型的数据报文,stat2累加1。理想状态下,10分钟后,stat1的报文数累加到10pps*60s*10min=6000个,stat2的报文数累加到10mpps*60s*10min=6000m个。

按1000:1的采样间隔分别对两种类型的数据报文进行采样,理想状态下,10分钟的采样结果如下:第一种类型的数据报文的采样数量为10pps*60s*10min/1000=6个;第二种类型的数据报文的采样数量为10mpps*60s*10min/1000=6000000个。

复制采样得到的两种类型的数据报文样本,将复制后得到的其中一份数据报文样本发送到netstream业务板,将另一份数据报文样本进行转发。

netstream业务板根据第一种类型的数据报文样本与第二种类型的数据报文样本的数量差异:6:6000000=1:1000000,即可得出第一种类型的数据报文对应的流量在采样对象中的占比约为1:1000001,第二种类型的数据报文对应的流量在采样对象中的占比约为1000000:1000001。

由于两种类型的数据报文的传输速率相差极大,若采用现有技术中的采样方式将第一种类型的数据报文和第二种类型的数据报文放在一起进行数据统计,每1000个数据报文中采样一个数据报文,由于两种类型的数据报文并非在单位时间内有规律的排布,第一种类型的数据报文极大概率不会被采样到,即使第一种类型的数据报文被采样到,例如采样到5个,第一种类型的数据报文和第二种类型的数据报文的流量之比也会比实际上的流量之比相差20%之多。

通过上述分析可知,采用本公开中的报文采样方案,能够可靠地对各种类型的数据报文进行采样,采样结果较为可靠,能够正确反映各种类型的数据报文在采样对象中的占比。

在上述基础上,如图5所示,本公开提供了一种报文采样装置20,所述报文采样装置20包括分类模块21和采样模块22。

其中,分类模块21用于将接收到的数据报文分类。

由于分类模块21和图2中步骤s11的实现原理类似,因而在此不作更多说明。

分类模块21包括地址识别子模块211和类别划分子模块212。

其中,地址识别子模块211用于识别数据报文的源地址和目的地址。

由于地址识别子模块211和图3中步骤s111的实现原理类似,因而在此不作更多说明。

类别划分子模块212用于将源地址相同且目的地址相同的数据报文划分为同一类型的数据报文。

由于类别划分子模块212和图3中步骤s112的实现原理类似,因而在此不作更多说明。

采样模块22用于按采样间隔对不同类型的数据报文分别进行采样,得到不同类型的数据报文样本。

由于采样模块22和图2中步骤s12的实现原理类似,因而在此不作更多说明。

采样模块22包括数量统计子模块221和采样子模块222。

数量统计子模块221用于分别统计不同类型的数据报文的数量。

由于数量统计子模块221和图4中步骤s121的实现原理类似,因而在此不作更多说明。

采样子模块222,用于针对不同类型的数据报文,根据统计得到的数量按照采样间隔进行采样。

由于采样子模块222和图4中步骤s122的实现原理类似,因而在此不作更多说明。

其中,数量统计子模块221包括计数器组分配单元2211和统计单元2212。

计数器组分配单元2211用于分配计数器组,所述计数器组中的各计数器分别用于统计不同类型的数据报文的数。

统计单元2212用于在接收到数据报文时,根据该数据报文的特征计算hash值,根据所述hash值确定该数据报文对应的数量统计地址,并将该数量统计地址对应的计数器的计数值加1。

采样子模块222具体用于在任意计数器的计数值满足所述采样间隔时,对该计数器对应类型的数据报文进行一次采样,从而采样得到不同类型的数据报文样本。

可选地,报文采样装置20还包括复制模块23、处理模块24和流量分析模块25。

复制模块23用于复制采样得到的数据报文样本。

由于复制模块23和图2中步骤s13的实现原理类似,因而在此不作更多说明。

处理模块24用于将复制后得到的其中一份数据报文样本发送到netstream业务板,将另一份数据报文样本进行转发。

由于处理模块24和图2中步骤s14的实现原理类似,因而在此不作更多说明。

流量分析模块25,用于根据采样得到的不同类型的数据报文样本的数量差异,获得各种类型的数据报文对应的流量在采样对象中的占比。

关于报文采样装置20的实现原理可以参考报文采样方法中的描述,因而在此不作赘述。

本公开中的报文采样方法、装置及报文处理设备,针对不同类型的数据报文分别进行采样,从而能够可靠地对各种类型的数据报文均进行采样,使得采样结果更加可靠和准确,巧妙地选用计数器组进行数据报文的数量统计,计数器组存放在dram中,几乎不增加硬件成本和软件成本且操作简便,避免了采用流表等方式记录流量所存在的占用空间大,软件编写复杂等问题。

在本公开所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置和方法实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本公开的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的各方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的各方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

另外,在本公开各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。

所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本公开的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,报文处理设备,或者网络设备等)执行本公开各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

以上所述仅为本公开的可选实施例而已,并不用于限制本公开,对于本领域的技术人员来说,本公开可以有各种更改和变化。凡在本公开的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本公开的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1