CN111835591B - 一种以太网报文快速协议识别的方法 - Google Patents
一种以太网报文快速协议识别的方法 Download PDFInfo
- Publication number
- CN111835591B CN111835591B CN202010662655.0A CN202010662655A CN111835591B CN 111835591 B CN111835591 B CN 111835591B CN 202010662655 A CN202010662655 A CN 202010662655A CN 111835591 B CN111835591 B CN 111835591B
- Authority
- CN
- China
- Prior art keywords
- protocol
- cur
- message
- level
- current
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/18—Protocol analysers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Communication Control (AREA)
Abstract
本发明公开了一种以太网报文快速协议识别的方法,包括固定识别部分,所述固定识别部分具体包括如下步骤:步骤1、将固定识别部分的所有协议报文进行编码,每个类型的协议对应一个唯一的编号;步骤2、设定3个基本变量,当前协议,下级协议和上级协议,三个基本变量的取值在编码的编号范围内;步骤3、根据当前协议,取所述当前协议的protocol字段判断是否存在下级协议;步骤4、如果下级协议存在,让所有协议报文级别依次下移一级,然后继续循环步骤3;采用本发明方法进行快速协议识别,提升了可扩展性,提升了效率,降低了电路面积。
Description
技术领域
本发明属于网络协议识别领域,具体是指一种以太网报文快速协议识别的方法。
背景技术
满足IEEE 802.3协议规定的以太网数据帧是当前通信网络中最基本的数据帧格式,通信网络中数据链路层一般都是以太网数据帧来承载,而构建在以太网报文上的TCP/IP协议更是计算机和通信网络的核心功能。如表1所示为一个基本的以太网数据帧结构,
表1
在表1中,preamble为前导,网络中用来同步,一般7个字节;sfd为定界符,1个字节;da为目的端地址,sa为源端地址;vlan是虚拟局域网标签,长度4个字节,可以有多个,也可以没有;type是报文类型,比如ipv4就是0x0800,ipv6就是0x86dd;data是数据有效净荷;fcs是报文crc32校验。
在当前的大部分网络设备中,不管是终端的手机或iptv,还是接入的PON或wifi,或者是核心网的交换机和路由器,都需要对以太网报文进行识别和分类,而很多类型报文都有子协议,需要对子协议也进行处理,举例来说,网络中最常见的ip报文,需要对其后续协议(TCP/UDP等)进行识别和处理。
那么如何才能快速且有效率的识别和处理以太网报文呢,一方面现在网络设备速率很高,低速方案很难满足性能需求;另一方面网络芯片一般都对成本敏感,面积很大的识别电路会让成本上升;而且现今网络技术日新月异,以太网协议经常会被扩展,而芯片一次流片就没法变动,这要求报文识别技术要有一定的扩展性和升级空间。因此,一个好的报文识别及处理方案必须兼顾以上三点。
然而,现有技术中的报文识别,通常采用以下两种方案:第一种:简单固定电路识别;第二种:通过可编程的指令集识别。第一种方案是基于协议顺序进行识别的,按照以太网数据结果定义顺序识别各个字段,以下以udp报文识别为例来说明对该方案进行说明:udp报文是封装在ip协议里面的,而ip报文又分ipv4和ipv6,表2和表3分别为ipv4和ipv6的报文格式。
表2:IPv4报文格式
表3:IPv6报文格式
udp报文需要在ip包头里面协议字段为17,因此具体识别流程如下:一、取以太网type字段,如果等于0x0800则为ipv4报文,如果等于0x86dd则为ipv6报文,否则不是ip报文,也就不是udp报文;二、如果是ipv4报文,取ip包头第10字节的协议字段,如果是17则该报文为udp,否则不是udp;三、如果是ipv4报文,取ip包头第7字节的协议字段,如果是17则该报文为udp,否则不是udp;具体流程见图1;采用该方案进行报文识别存在的问题为:1)电路比较固定,遇到复杂的报文结构需要增加很多电路,比如ip协议中存在隧道报文dslite(即ipv4头部封装在ipv6里面)或6rd(即ipv6头部封装在ipv4里面),这种需要额外再增加逻辑来处理,如果报文还进行了pppoe拨号则处理更加复杂;2)、可扩展性较差,如果某个协议进行了扩展则完全没法处理。而第二种方案是通过可编程的指令集来实现,类似cpu指令集;具体流程与第一种方案类似,区别是把各个操作变成一个个基本指令,硬件电路不停的取指令解析。该方案所存在的问题是:1)指令需要逐条取出操作,不能并行处理,再加上指令集相对于封装好的固定硬件电路要更加基本,完成同样的操作所需的指令较多,会有性能瓶颈;2)、为了提升性能,一般采用多核的方式来降低操作时延,但这样会带来芯片面积的增加。
发明内容
本发明为解决上述技术问题,提供了一种以太网报文快速协议识别的方法,其将固定识别和可编程电路结合起来,一方面提升了可扩展性,一方面也提升了效率,降低了电路面积。
为了实现上述目的,本发明采取的技术方案如下:
一种以太网报文快速协议识别的方法,包括固定识别部分,所述固定识别部分具体包括如下步骤:
步骤1、将固定识别部分的所有协议报文进行编码,每个类型的协议对应一个唯一的编号;
步骤2、设定3个基本变量,当前协议cur_protocol,下级协议next_protocol和上级协议报文last_protocol,三个基本变量的取值在编码的编号范围内;
步骤3、遍历固定识别部分的所有协议报文,根据当前协议cur_protocol,取所述当前协议cur_protocol的protocol字段判断是否存在下级协议;
步骤4、如果下级协议存在,让所有协议报文级别依次下移一级,即更新后的上级协议last_protocol==更新前的当前协议cur_protocol;找到的下级协议next_protocol==更新后的当前协议cur_protocol;然后继续循环步骤3;
步骤5、如果下级协议不存在,让cur_protocol==END,结束报文识别。
进一步的,还包括可扩展部分,所述可扩展部分包括T组可编程的变量protocol_head,T≥1,且为整数,所述可编程的变量的格式如下:
其中,N≥1,且为整数;
protocol_offset为扩展报文协议字段对应的位置;
protocol为扩展报文对应的协议编码;
father_protocol为扩展报文的上层报文对应的协议编码。
更进一步的,当可扩展部分被应用于以太网报文快速协议识别时,在步骤5中,如果下级协议不存在时,还需进行如下步骤:
步骤(1)、遍历可扩展部分的所有protocol_head,判断当前协议cur_protocol是否等于所有protocol_head的protocol_frame字段,如果当前协议cur_protocol有等于protocol_head的protocol_frame字段,则取protocol_offset对应的位置为cur_protocol_frame;
步骤(2)、遍历所有protocol_head的father_protocol,当有protocol_head[t].father_protocol==当前协议cur_protocol且protocol_head[t].protocol_frame==cur_protocol_frame的情况存在时,1≤t≤T,t为整数;则为存在下级协议报文,然后循环步骤4;
当未找到满足protocol_head[t].father_protocol==cur_protocol,且
protocol_head[t].protocol_frame==cur_protocol_frame的情况时;1≤t≤T,t为整数,则为不存在下级协议,此时,让cur_protocol==END,结束报文识别。
更进一步的,步骤(1)和步骤(2)中的遍历可以并行执行。
进一步的,判断下级协议指的是判断是否有下级协议和下级协议的类型。
与现有技术相比,本发明所取得的有益效果如下:
本发明利用cur_protocol、next_protocol和last_protocol循环识别的整体流程架构,针对以太网报文识别的特殊编程逻辑,通过将固定识别和可编程电路结合起来,一方面提升了可扩展性,一方面也提升了效率,降低了电路面积。
附图说明
图1为现有技术中udp报文识别的工作流程图;
图2为本发明一个实施例中报文识别的工作流程图;
图3为本发明一个实施例中固定识别部分进行协议类型判断的工作流程图;
图4为本发明一个实施例中可扩展部分进行协议类型判断的工作流程图;
具体实施方式
下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。
实施例1:
本发明公开了一种以太网报文快速协议识别的方法的一个实施例,包括固定识别部分,所述固定识别部分具体包括如下步骤:
步骤1、将固定识别部分的所有协议报文进行编码,每个类型的协议对应一个唯一的编号;
步骤2、设定3个基本变量,当前协议cur_protocol,下级协议next_protocol和上级协议报文last_protocol,三个基本变量的取值在编码的编号范围内;
步骤3、遍历固定识别部分的所有协议报文,根据当前协议cur_protocol,取所述当前协议cur_protocol的protocol字段判断下级协议;所述判断下级协议指的是判断是否有下级协议和下级协议的类型,比如cur_protocol==ETH,取type位置判断是否有下级协议;如果cur_protocol==IPv4,取protocol位置判断下级协议;
步骤4、如果下级协议存在,让所有协议报文级别依次下移一级,即更新后的上级协议last_protocol==更新前的当前协议cur_protocol;找到的下级协议next_protocol==更新后的当前协议cur_protocol;然后继续循环步骤3;
步骤5、如果下级协议不存在,让cur_protocol==END,结束报文识别。
进一步的,如图3所示,以识别udp(考虑ipv4封装,ipv6封装,dslte封装,6rd封装,以及pppoe+以上各种封装)为例,介绍一下固定识别部分识别协议类型的方法:
步骤A、首先去当前协议cur_protocol的protocol字段,判断协议类型是否为UDP,如果是,当前协议cur_protocol则为UDP报文,如果不是,由于UDP在ipv4/ipv6头部中对应协议字段值为17,此时,提取v4包头协议字段,判断是否为17,如果v4包头协议字段为17则为UDP报文,如果v4包头协议字段为17,则提取v6包头协议字段,判断是否为17,如果v6包头协议字段为17则为UDP报文;如果v6包头协议字段不为17,则不是UDP报文,然后继续判断是否为pppoe,如果是pppoe报文,pppoe头部也是有协议字段的,检查是否0x21(ipv4)或者0x57(ipv6),如果不是pppoe报文,自然也不会是UDP报文。
在固定识别部分进行协议类型的识别就是不停的根据当前协议cur_protocol,循环检查next_protocol的过程,相比于直线识别过程,对于各种形式的udp封装,识别过程是统一的,不用增加代码和电路。
但是,随着技术的不断发展,协议类型也处于不断的更新过程中,然而固定识别部分一经形成,即无法进行更改,为解决该问题,本发明提供了实施例2。
实施例2
如图2~4所示的本发明的一种以太网报文快速协议识别的方法的另一个实施例,包括固定识别部分和可扩展识别部分,其中,所述可扩展部分包括T组可编程的变量protocol_head,T≥1,且为整数,所述可编程的变量的格式如下:
其中,N≥1,且为整数;
protocol_offset为扩展报文协议字段对应的位置;
protocol为扩展报文对应的协议编码;
father_protocol为扩展报文的上层报文对应的协议编码,考虑到不少协议同时在ipv4和ipv6里面存在,需要两个编码,这时N将=2;
当固定识别部分与可扩展部分同时存在,所述以太网报文快速协议识别的方法具体包括如下步骤:
步骤1、将固定识别部分的所有协议报文进行编码,每个类型的协议对应一个唯一的编号;
步骤2、设定3个基本变量,当前协议cur_protocol,下级协议next_protocol和上级协议报文last_protocol,三个基本变量的取值在编码的编号范围内;
步骤3、遍历固定识别部分的所有协议报文,根据当前协议cur_protocol,取所述当前协议cur_protocol的protocol字段判断下级协议;所述判断下级协议指的是判断是否有下级协议和下级协议的类型,比如cur_protocol==ETH,取type位置判断是否有下级协议;如果cur_protocol==IPv4,取protocol位置判断下级协议;
步骤4、如果下级协议存在,让所有协议报文级别依次下移一级,即更新后的上级协议last_protocol==更新前的当前协议cur_protocol;找到的下级协议next_protocol==更新后的当前协议cur_protocol;然后继续循环步骤3;
步骤5、如果下级协议不存在,还需进行如下步骤:
步骤(1)、遍历可扩展部分的所有protocol_head,判断当前协议cur_protocol是否等于所有protocol_head的protocol_frame字段,如果当前协议cur_protocol有等于protocol_head的protocol_frame字段,则取protocol_offset对应的位置为cur_protocol_frame;
步骤(2)、遍历所有protocol_head的father_protocol,当有protocol_head[t].father_protocol==当前协议cur_protocol且protocol_head[t].protocol_frame==cur_protocol_frame的情况存在时,1≤t≤T,t为整数;则为存在下级协议报文,然后循环步骤4;
当未找到满足protocol_head[t].father_protocol==cur_protocol,且protocol_head[t].protocol_frame==cur_protocol_frame的情况时;1≤t≤T,t为整数,则为不存在下级协议,此时,让cur_protocol==END,结束报文识别。
进一步的,在固定识别部分进行协议类型识别时,具体方法见实施例1;
进一步的,在可扩展部分进行协议类型识别时,以新扩展的报文类型user_define,基于ipv4/ipv6封装,协议号200(现在不存在这种协议),进行识别过程的描述:
步骤a:定义一个protocol_head[0],定义如下:
步骤b、取protocol字段,遍历所有的protocol_head,判断是否father_protocol==cur_protocol且protocol_frame==protocol;
步骤c、如果步骤b的判断结果满足father_protocol==cur_protocol且protocol_frame==protocol,则为user_define报文,否则不是。
实施例3
本实施例以举例方式对实施例2的识别过程进行详细的介绍:
本实施例固定识别部分和可编程识别部分同时进行,固定识别部分找到下级协议的话,可编程识别就不再起作用。
以ipv4报文为例,
一、固定识别一:
1、识别vlan层数,假设没有vlan;
2、取len_type字段(没有vlan的话是13-14字节),发现值是0x0800,找到下一个协议ipv4;
上一步如果是6rd报文,即ipv6头封装在ipv里面
二、固定识别二:
1、当前是ipv4头,取协议字段(11字节),发现时41(假设固定识别部分不支持这个值),固定识别部分找不到下级协议,当前层次固定识别终止,可编程识别部分启动;
三、可编程识别准备:
1、给ipv4头一个自定义编码,假设为10,ipv6头一个自定义编码,假设为11;
2、定义struct0,其中protocol为10(与之前ipv4自定义编码相同,表示所述struct0为ipv4),protocol_offset为11(字节),其他变量不关注;
3、定义struct1,其中protocol为11(与之间ipv6自定义编码相同,表示所述struct1为ipv6),protocol_frame为41(协议定义的ipv6头代码),father_protocol为10(ipv4),其他字段可不关注;
四、可编程识别,和固定识别二同时进行
1、当前是ipv4头,自定义编码为10,查询所有的struct,发现struct0的protocol为10,取offset11字节对应的内容,发现时41;
2、查询所有struct,发现struct1的father_protocol==10(ipv4)且protocol_frame==41,匹配成功,struct1的protocol为11,是ipv6,则下一级协议是ipv6;
以上是在固定识别部分没有找到下级协议,然而可编程找到了,则取可编程结果,下一级协议为ipv6,继续从ipv6往下识别(后面重复之前循环,固定部分和可编程部分都继续进行,比如下级协议是udp,固定识别中ipv6的next head发现时17,则识别为udp)。
本发明能够进行以太网报文识别,提升了通用性,并在不明显增大电路面积的情况下,可以进行一定程度的扩展;明显提高识别效率,可以满足高速网络的需求。
以上所述实施方式仅为本发明的优选实施例,而并非本发明可行实施的穷举。对于本领域一般技术人员而言,在不背离本发明原理和精神的前提下对其所作出的任何显而易见的改动,都应当被认为包含在本发明的权利要求保护范围之内。
Claims (4)
1.一种以太网报文快速协议识别的方法,包括固定识别部分和可扩展部分,其特征在于,所述固定识别部分具体包括如下步骤:
步骤1、将固定识别部分的所有协议报文进行编码,每个类型的协议对应一个唯一的编号;
步骤2、设定3个基本变量,当前协议cur_protocol,下级协议next_protocol和上级协议报文last_protocol,三个基本变量的取值在编码的编号范围内;
步骤3、遍历固定识别部分的所有协议报文,根据当前协议cur_protocol,取所述当前协议cur_protocol的protocol字段判断是否存在下级协议;
步骤4、如果下级协议存在,让所有协议报文级别依次下移一级,即更新后的上级协议last_protocol==更新前的当前协议cur_protocol;存在的下级协议next_protocol==更新后的当前协议cur_protocol;然后继续循环步骤3;
步骤5、如果下级协议不存在,让cur_protocol==END,结束报文识别;
当可扩展部分被应用于以太网报文快速协议识别时,如果下级协议不存在时,还需进行如下步骤:
步骤(1)、遍历可扩展部分的所有protocol_head,判断当前协议cur_protocol是否等于protocol_head的protocol_frame字段,如果当前协议cur_protocol有等于protocol_head的protocol_frame字段,则取protocol_offset对应的位置为cur_protocol_frame;
步骤(2)、遍历所有protocol_head的father_protocol,当有protocol_head[t].father_protocol==当前协议cur_protocol且protocol_head[t].protocol_frame==cur_protocol_frame的情况存在时,1≤t≤T,t为整数;则判断为存在下级协议报文,然后循环步骤4;
当未找到满足protocol_head[t].father_protocol==cur_protocol,且protocol_head[t].protocol_frame==cur_protocol_frame的情况时;1≤t≤T,t为整数,则判断为不存在下级协议,此时,让cur_protocol==END,结束报文识别。
3.根据权利要求1所述的一种以太网报文快速协议识别的方法,其特征在于,步骤(1)和步骤(2)中的遍历可以并行执行。
4.根据权利要求1所述的一种以太网报文快速协议识别的方法,其特征在于,判断下级协议指的是判断是否有下级协议和下级协议的类型。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010662655.0A CN111835591B (zh) | 2020-07-10 | 2020-07-10 | 一种以太网报文快速协议识别的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010662655.0A CN111835591B (zh) | 2020-07-10 | 2020-07-10 | 一种以太网报文快速协议识别的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111835591A CN111835591A (zh) | 2020-10-27 |
CN111835591B true CN111835591B (zh) | 2022-05-03 |
Family
ID=72901397
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010662655.0A Active CN111835591B (zh) | 2020-07-10 | 2020-07-10 | 一种以太网报文快速协议识别的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111835591B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112839057A (zh) * | 2021-02-09 | 2021-05-25 | 芯河半导体科技(无锡)有限公司 | 一种灵活可扩展的以太网报文激励发生器 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103023909A (zh) * | 2012-12-24 | 2013-04-03 | 成都科来软件有限公司 | 一种网络数据包协议识别方法及系统 |
CN106549817A (zh) * | 2015-09-21 | 2017-03-29 | 深圳市中兴微电子技术有限公司 | 报文识别方法及装置 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4858468B2 (ja) * | 2008-03-12 | 2012-01-18 | 日本電気株式会社 | プロトコル処理装置及び処理方法 |
CN205142267U (zh) * | 2012-05-07 | 2016-04-06 | 布里斯托尔D/B/A远程自动化解决方案公司 | 识别过程控制系统中正在使用的通信协议的装置 |
CN104702600B (zh) * | 2015-03-02 | 2017-11-24 | 国家计算机网络与信息安全管理中心 | 一种可配置的逐层报文解析方法和装置 |
CN105554002A (zh) * | 2015-12-22 | 2016-05-04 | 曙光信息产业股份有限公司 | 一种隧道报文的解析方法和装置 |
CN109997383B (zh) * | 2016-12-09 | 2021-09-07 | 华为技术有限公司 | 协议转换方法及装置 |
-
2020
- 2020-07-10 CN CN202010662655.0A patent/CN111835591B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103023909A (zh) * | 2012-12-24 | 2013-04-03 | 成都科来软件有限公司 | 一种网络数据包协议识别方法及系统 |
CN106549817A (zh) * | 2015-09-21 | 2017-03-29 | 深圳市中兴微电子技术有限公司 | 报文识别方法及装置 |
Non-Patent Citations (1)
Title |
---|
模式匹配与校验和相结合的IP协议识别方法;杨洁等;《西安电子科技大学学报》;20120105(第03期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN111835591A (zh) | 2020-10-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10892987B2 (en) | Segment routing network processing of packets including packets having a segment identifier structure providing processing and/or memory efficiencies | |
US10764181B2 (en) | Pipelined evaluations for algorithmic forwarding route lookup | |
US10673650B2 (en) | Programmable tunnel creation for hardware-based packet processing | |
US8867395B2 (en) | Accelerating data packet parsing | |
US10778721B1 (en) | Hash-based ACL lookup offload | |
US7187694B1 (en) | Generic packet parser | |
US20030009466A1 (en) | Search engine with pipeline structure | |
US20120281714A1 (en) | Packet processing accelerator and method thereof | |
US7382777B2 (en) | Method for implementing actions based on packet classification and lookup results | |
US9860168B1 (en) | Network packet header modification for hardware-based packet processing | |
US10911579B1 (en) | Generating programmatically defined fields of metadata for network packets | |
US20180048593A1 (en) | Flow entry generating and packet processing based on flow entry | |
US20150295729A1 (en) | Hardware accelerator for tunnel processing | |
CN111835591B (zh) | 一种以太网报文快速协议识别的方法 | |
US20020199021A1 (en) | Method and apparatus for using the type/length field in an ethernet mac header for carrying generic tags/labels | |
EP2071808B1 (en) | Methods and a system and devices for ipv6 datagram transmission in the ethernet | |
CN113411290A (zh) | 一种分组头解析方法及装置 | |
US8730961B1 (en) | System and method for optimizing router lookup | |
CN105187330B (zh) | 使用唯一分组标识符来标识分组结构的方法及网络交换机 | |
CN106209554B (zh) | 跨虚拟可扩展局域网的报文转发方法和设备 | |
US20040114568A1 (en) | Address search | |
WO2014146571A1 (zh) | 基于网络处理器的报文预处理方法、装置及网络处理器 | |
US11689464B2 (en) | Optimizing entries in a content addressable memory of a network device | |
TWI726828B (zh) | 透過置換虛擬區網標籤而為時間敏感網路路由封包之裝置及方法 | |
US8583822B2 (en) | Method and system for minimum frame size support for a communication protocol encapsulated over Ethernet |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |