CN101626337A - 基于虚拟网卡技术的多隧道并发模型实现方法 - Google Patents
基于虚拟网卡技术的多隧道并发模型实现方法 Download PDFInfo
- Publication number
- CN101626337A CN101626337A CN200910033851A CN200910033851A CN101626337A CN 101626337 A CN101626337 A CN 101626337A CN 200910033851 A CN200910033851 A CN 200910033851A CN 200910033851 A CN200910033851 A CN 200910033851A CN 101626337 A CN101626337 A CN 101626337A
- Authority
- CN
- China
- Prior art keywords
- tunnel
- microsoft loopback
- loopback adapter
- packet
- client
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 42
- 238000005516 engineering process Methods 0.000 title claims abstract description 11
- 238000012545 processing Methods 0.000 claims abstract description 10
- 238000004891 communication Methods 0.000 claims abstract description 6
- 238000005538 encapsulation Methods 0.000 claims description 3
- 238000012856 packing Methods 0.000 claims description 3
- 238000012546 transfer Methods 0.000 claims description 3
- 230000003993 interaction Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
基于虚拟网卡技术的多隧道并发模型实现方法:建立隧道时,应用程序的处理进程获取虚拟地址,进行虚拟网卡使用实例的注册,建立与虚拟网卡通信的文件描述字;当虚拟网卡接收到协议栈转发的数据时,根据数据包的目的地址,将数据包转发给相应的文件描述字,从而交由正确的处理进程进行处理;每个隧道的处理过程分为建立隧道、数据转发以及拆除隧道:建立隧道时客户端发送建立隧道请求,隧道网关的应用程序fork一个新的进程来处理该请求:隧道建立成功后,隧道网关负责转发客户端与应用服务器之间的通信数据:当客户端断开tcp连接或是超时,拆除隧道连接,隧道网关将回收地址池分配出去的虚拟地址,进行虚拟网卡虚拟实例注销。
Description
一、技术领域
本发明涉及基于虚拟网卡技术的多隧道并发模型实现方法。涉及大并发量、大数据量的数据处理,需要多个进程或是线程能并发的与虚拟网卡进行数据交互的方法。
二、背景技术
虚拟网卡技术被广泛的应用于VPN领域,如开源项目OpenVpn,其就使用了tun/tap驱动程序来实现虚拟网卡的功能。
使用tun驱动的应用程序在初始化虚拟网卡时,会建立一个文件描述字fd,此后,应用程序通过该文件描述字与虚拟网卡进行数据交互。
大并发量、大数据量的TCP应用程序模型,往往都是一个进程或一个线程来处理一个独立的Tcp连接,通过启用多进程或多线程的方式,来实现对大并发量、大数据量的支持。如果以此基础来实现多隧道的并发模型,这就需要多个进程或是线程能并发的与虚拟网卡进行数据交互。使用tup驱动来实现此种应用时,处理并发连接的进程和使用tun驱动的进程之间需要进行额外的数据通信,显然,这存在着一定的性能缺陷。
三、发明内容
本发明的发明目的是:提供一种基于虚拟网卡技术的多隧道并发模型实现方法,尤其是实现一种虚拟网卡驱动程序,该驱动能支持与多进程间的并发通信,从而支持多隧道的建立,解决性能问题。通过对虚拟网卡驱动的修改实现:修改启动虚拟网卡的驱动操作,并在此基础之上,增加注册虚拟网卡实例的功能。以此基础来实现多进程或是多线程与虚拟网卡的并发数据交互,从而支持大并发量、大数据量的处理。
一种基于虚拟网卡技术的支持大并发量、大数据量的多隧道并发模型实现方法:建立隧道时,应用程序的处理进程获取虚拟地址,然后进行虚拟网卡使用实例的注册,建立与虚拟网卡通信的文件描述字;当虚拟网卡接收到协议栈转发的数据时,根据数据包的目的地址(即虚拟地址),将数据包转发给相应的文件描述字,从而交由正确的处理进程进行处理;
每个进程处理一个隧道,一个隧道的处理过程可分为建立隧道、数据转发以及拆除隧道,具体步骤如下:
●建立隧道
客户端发送建立隧道请求,隧道网关的应用程序fork一个新的进程来处理该请求:
1)fork一个新的进程,处理客户端的建立TCP连接请求;
2)接收客户端的建立隧道请求;
3)选取一个未使用的虚拟地址,准备分配给客户端;
4)以该虚拟地址为关键IP,调用虚拟网卡的DUMMY_INSTANCE_REGISTER服务,完成虚拟网卡使用实例的注册;
5)返回给客户端隧道建立成功报文;
●数据转发
隧道建立成功后,隧道网关负责转发客户端与应用服务器之间的通信数据:
1)客户端将IP数据包封装入隧道报文,将隧道报文发送给隧道网关;
2)隧道网关处理进程接收到数据包后,解析隧道报文,提取其中封装的IP数据包,然后将IP数据包通过与虚拟网卡关联的文件描述字,提交给虚拟网卡驱动;
3)虚拟网卡驱动将数据包提交给协议栈,协议栈通过路由匹配,将数据包转发给应用服务器;
4)应用服务器将响应数据包发送给隧道网关;
5)隧道网关协议栈根据路由,将数据包传送给虚拟网卡;
6)虚拟网卡驱动根据数据包的目的地址(虚拟地址),查看与其对应的虚拟网卡实例是否已经注册,如果已经注册,则唤醒相应的隧道网关处理进程读取数据;否则丢弃该数据包;
7)隧道网关处理进程读取数据之后,将其封装入隧道报文,发送给客户端;
●拆除隧道
当客户端断开tcp连接或是超时时,则需要拆除隧道连接,隧道网关将回收地址池分配出去的虚拟地址,并调用虚拟网卡的DUMMY_INSTANCE_UNREGISTER服务,进行虚拟网卡的虚拟实例的注销。
本发明的有益效果是:实现了基于虚拟网卡技术的多隧道并发模型;解决了使用tun驱动的性能低下的问题,性能提升50%以上;虚拟网卡驱动的实现原理基本同tun驱动,本发明修改了启动虚拟网卡的驱动操作,并在此基础之上,增加了注册虚拟网卡实例的功能。
四、附图说明
图1是本发明关系图
图2是隧道建立过程示意图
图3是转发数据示意图
图4是隧道拆除过程示意图
五、具体实施方式
如图所示:基于虚拟网卡技术的支持大并发量、大数据量的多隧道并发模型实现方法:建立隧道时,应用程序的处理进程获取虚拟地址,进行虚拟网卡使用实例的注册,建立与虚拟网卡通信的文件描述字;当虚拟网卡接收到协议栈转发的数据时,根据数据包的目的地址(即虚拟地址),将数据包转发给相应的文件描述字,从而交由正确的处理进程进行处理。
虚拟网卡驱动的实现过程如下:原理说明
1)启动虚拟网卡
启动虚拟网卡时,不再建立文件描述字与虚拟网卡的对应关系。虚拟网卡驱动只完成IP地址设置,路由设置等基本工作;
2)注册虚拟网卡使用实例
应用程序注册虚拟网卡使用实例时,以从地址分配模块获取的虚拟地址作为关键字,传送给虚拟网卡驱动;虚拟网卡驱动添加一个数据包接收缓存队列,创建一个文件描述字,并使得该文件描述字、添加的数据包接收缓存队列,关键字虚拟地址这三者相互关联;
3)数据转发
虚拟网卡驱动接收到应用程序提交的数据时,只需简单的将数据包转交给***协议栈,由协议栈进行下一步处理;
虚拟网卡驱动接收到***协议栈提交的数据时,判断数据包的目的地址是否已注册了实例,没有则丢弃该数据包,否则将数据包加入相应的数据包接收队列;应用程序可以通过注册使用实例时建立的文件描述字,读取该数据包;
4)注销虚拟网卡使用实例
应用程序注销虚拟网卡使用实例时,以注册的虚拟地址作为关键字,传送给虚拟网卡驱动;虚拟网卡驱动释放资源,删除与该实例相关联的数据包接收缓存队列,关闭关联的文件描述字;
5)关闭虚拟网卡
虚拟网卡驱动停止服务,删除虚拟路由,虚拟网卡地址;
●宏定义
#define INSTANCE_MAX_NUM 1024 /*支持的最大实例数*/
●数据结构定义
struct lsv_dev_struct_t{
unsigned long flags;
int attached;
uid_t owner;
wait_queue_head_t read_wait[INSTANCE_MAX_NUM];/*等待队列*/
struct sk_buff_head readq[INSTANCE_MAX_NUM]; /*网络缓冲区队列*/
struct net_device *dev; /*linux抽象网络设备结构*/
struct net_device_stats stats; /*网卡状态信息结构*/
struct fasync_struct *fasync; /*文件异步通知结构*/
unsigned long if_flags;
u8 dev_addr[ETH_ALEN];
u32 chr_filter[2];
u32 net_filter[2];
};
2.多隧道模型的实现过程:
客户端,隧道网关以及应用服务器的关系参见图1,多隧道模型实现包括***初始化、建立隧道、数据转发以及拆除隧道:
●***初始化
隧道网关应用程序初始化,建立TCP多进程服务模型,并打开虚拟网卡生成的字符设备,调用DUMMY_NET_DEV_REGISTER服务,启动虚拟网卡;
●建立隧道
客户端发送建立隧道请求,隧道网关的应用程序fork一个新的进程来处理该请求,可参见图2;
1)fork一个新的进程,处理客户端的建立TCP连接请求;
2)接收客户端的建立隧道请求;
3)选取一个未使用的虚拟地址,准备分配给客户端;
4)以该虚拟地址为关键IP,调用虚拟网卡的DUMMY_INSTANCE_REGISTER服务,完成虚拟网卡使用实例的注册;
5)返回给客户端隧道建立成功报文;
●数据转发
隧道建立成功后,隧道网关负责转发客户端与应用服务器之间的通信数据,可参见图3,具体过程如下:
1)客户端将IP数据包封装入隧道报文,将隧道报文发送给隧道网关;
2)隧道网关处理进程接收到数据包后,解析隧道报文,提取其中封装的IP数据包,然后将IP数据包通过与虚拟网卡关联的文件描述字,提交给虚拟网卡驱动;
3)虚拟网卡驱动将数据包提交给协议栈,协议栈通过路由匹配,将数据包转发给应用服务器;
4)应用服务器将响应数据包发送给隧道网关;
5)隧道网关协议栈根据路由,将数据包传送给虚拟网卡;
6)虚拟网卡驱动根据数据包的目的地址(虚拟地址),查看与其对应的虚拟网卡实例是否已经注册,如果已经注册,则唤醒相应的隧道网关处理进程读取数据;否则丢弃该数据包;
7)隧道网关处理进程读取数据之后,将其封装入隧道报文,发送给客户端;
●拆除隧道
当客户端断开tcp连接或是超时时,则需要拆除隧道连接,隧道网关将回收地址池分配出去的虚拟地址,并调用虚拟网卡的DUMMY_INSTANCE_UNREGISTER服务,进行虚拟网卡的虚拟实例的注销。
Claims (1)
1、一种基于虚拟网卡技术的多隧道并发模型实现方法:建立隧道时,应用程序的处理进程获取虚拟地址,进行虚拟网卡使用实例的注册,建立与虚拟网卡通信的文件描述字;当虚拟网卡接收到协议栈转发的数据时,根据数据包的目的地址(即虚拟地址),将数据包转发给相应的文件描述字,从而交由正确的处理进程进行处理;
其特征是每个进程处理一个隧道,一个隧道的处理过程分为建立隧道、数据转发以及拆除隧道,具体步骤如下:
●建立隧道
客户端发送建立隧道请求,隧道网关的应用程序fork一个新的进程来处理该请求:
1)fork一个新的进程,处理客户端的建立TCP连接请求;
2)接收客户端的建立隧道请求;
3)选取一个未使用的虚拟地址,准备分配给客户端;
4)以该虚拟地址为关键IP,调用虚拟网卡的DUMMY_INSTANCE_REGISTER服务,完成虚拟网卡使用实例的注册;
5)返回给客户端隧道建立成功报文;
●数据转发
隧道建立成功后,隧道网关负责转发客户端与应用服务器之间的通信数据:
1)客户端将IP数据包封装入隧道报文,将隧道报文发送给隧道网关;
2)隧道网关处理进程接收到数据包后,解析隧道报文,提取其中封装的IP数据包,然后将IP数据包通过与虚拟网卡关联的文件描述字,提交给虚拟网卡驱动;
3)虚拟网卡驱动将数据包提交给协议栈,协议栈通过路由匹配,将数据包转发给应用服务器;
4)应用服务器将响应数据包发送给隧道网关;
5)隧道网关协议栈根据路由,将数据包传送给虚拟网卡;
6)虚拟网卡驱动根据数据包的目的地址(虚拟地址),查看与其对应的虚拟网卡实例是否已经注册,如果已经注册,则唤醒相应的隧道网关处理进程读取数据;否则丢弃该数据包;
7)隧道网关处理进程读取数据之后,将其封装入隧道报文,发送给客户端;
●拆除隧道
当客户端断开tcp连接或是超时,则需要拆除隧道连接,隧道网关将回收地址池分配出去的虚拟地址,并调用虚拟网卡的DUMMY_INSTANCE_UNREGISTER服务,进行虚拟网卡的虚拟实例的注销。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009100338515A CN101626337B (zh) | 2009-06-18 | 2009-06-18 | 基于虚拟网卡技术的多隧道并发模型实现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009100338515A CN101626337B (zh) | 2009-06-18 | 2009-06-18 | 基于虚拟网卡技术的多隧道并发模型实现方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101626337A true CN101626337A (zh) | 2010-01-13 |
CN101626337B CN101626337B (zh) | 2011-09-28 |
Family
ID=41522031
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2009100338515A Expired - Fee Related CN101626337B (zh) | 2009-06-18 | 2009-06-18 | 基于虚拟网卡技术的多隧道并发模型实现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101626337B (zh) |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102843292A (zh) * | 2012-08-20 | 2012-12-26 | 成都卫士通信息产业股份有限公司 | 一种跨运营商网络的vpn数据处理方法及装置 |
WO2013053284A1 (zh) * | 2011-10-13 | 2013-04-18 | 华为技术有限公司 | 基于流量工程隧道的虚拟专用网络实现方法及*** |
WO2013131476A1 (en) * | 2012-03-07 | 2013-09-12 | Tencent Technology (Shenzhen) Company Limited | Service access method and device for conducting the same |
CN106412137A (zh) * | 2016-12-20 | 2017-02-15 | 北京并行科技股份有限公司 | 一种文件下载***及文件下载方法 |
CN107276873A (zh) * | 2016-04-08 | 2017-10-20 | 北京岚锋创视网络科技有限公司 | 一种访问服务的方法及装置 |
CN108718268A (zh) * | 2017-04-07 | 2018-10-30 | 格尔软件股份有限公司 | 一种提高vpn服务端并发处理性能的方法 |
CN108965088A (zh) * | 2017-05-25 | 2018-12-07 | 中兴通讯股份有限公司 | 创建静态隧道的方法及装置 |
CN109525462A (zh) * | 2018-12-14 | 2019-03-26 | 北京奇安信科技有限公司 | 网关测试方法及装置 |
CN109584668A (zh) * | 2018-12-29 | 2019-04-05 | 中铁工程装备集团有限公司 | 一种基于虚拟现实和大数据的隧道掘进机实训平台 |
CN111245699A (zh) * | 2020-01-15 | 2020-06-05 | 广州华多网络科技有限公司 | 远程通信服务控制方法、服务器及客户端 |
CN111786867A (zh) * | 2019-04-04 | 2020-10-16 | 厦门网宿有限公司 | 一种数据传输方法及服务器 |
CN111786870A (zh) * | 2019-04-04 | 2020-10-16 | 厦门网宿有限公司 | 数据传输方法及strongswan服务器 |
CN111786868A (zh) * | 2019-04-04 | 2020-10-16 | 厦门网宿有限公司 | 服务器之间的数据传输方法及strongswan服务器 |
CN112491720A (zh) * | 2020-11-10 | 2021-03-12 | 网宿科技股份有限公司 | 一种平滑升级方法及*** |
CN112737915A (zh) * | 2020-12-29 | 2021-04-30 | 优刻得科技股份有限公司 | 基于智能网卡的内网隧道跨域网关转发方法、***、设备和介质 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4508007B2 (ja) * | 2005-06-27 | 2010-07-21 | 株式会社Kddi研究所 | Vpnトンネル接続トポロジを決定する管理サーバ及びプログラム |
CN100471163C (zh) * | 2007-05-18 | 2009-03-18 | 清华大学 | 在IPv6中用主机间隧道支持IPv4应用程序的方法 |
-
2009
- 2009-06-18 CN CN2009100338515A patent/CN101626337B/zh not_active Expired - Fee Related
Cited By (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013053284A1 (zh) * | 2011-10-13 | 2013-04-18 | 华为技术有限公司 | 基于流量工程隧道的虚拟专用网络实现方法及*** |
WO2013131476A1 (en) * | 2012-03-07 | 2013-09-12 | Tencent Technology (Shenzhen) Company Limited | Service access method and device for conducting the same |
CN103312661A (zh) * | 2012-03-07 | 2013-09-18 | 腾讯科技(深圳)有限公司 | 一种服务访问方法及装置 |
CN103312661B (zh) * | 2012-03-07 | 2016-02-17 | 腾讯科技(深圳)有限公司 | 一种服务访问方法及装置 |
US9407600B2 (en) | 2012-03-07 | 2016-08-02 | Tencent Technology (Shenzhen) Company Limited | Service access method and device for conducting the same |
CN102843292A (zh) * | 2012-08-20 | 2012-12-26 | 成都卫士通信息产业股份有限公司 | 一种跨运营商网络的vpn数据处理方法及装置 |
CN107276873B (zh) * | 2016-04-08 | 2020-03-24 | 深圳岚锋创视网络科技有限公司 | 一种访问服务的方法及装置 |
CN107276873A (zh) * | 2016-04-08 | 2017-10-20 | 北京岚锋创视网络科技有限公司 | 一种访问服务的方法及装置 |
CN106412137B (zh) * | 2016-12-20 | 2019-07-09 | 北京并行科技股份有限公司 | 一种文件下载***及文件下载方法 |
CN106412137A (zh) * | 2016-12-20 | 2017-02-15 | 北京并行科技股份有限公司 | 一种文件下载***及文件下载方法 |
CN108718268A (zh) * | 2017-04-07 | 2018-10-30 | 格尔软件股份有限公司 | 一种提高vpn服务端并发处理性能的方法 |
CN108718268B (zh) * | 2017-04-07 | 2022-01-28 | 格尔软件股份有限公司 | 一种提高vpn服务端并发处理性能的方法 |
CN108965088B (zh) * | 2017-05-25 | 2021-11-30 | 中兴通讯股份有限公司 | 创建静态隧道的方法及装置 |
CN108965088A (zh) * | 2017-05-25 | 2018-12-07 | 中兴通讯股份有限公司 | 创建静态隧道的方法及装置 |
CN109525462A (zh) * | 2018-12-14 | 2019-03-26 | 北京奇安信科技有限公司 | 网关测试方法及装置 |
CN109584668A (zh) * | 2018-12-29 | 2019-04-05 | 中铁工程装备集团有限公司 | 一种基于虚拟现实和大数据的隧道掘进机实训平台 |
CN111786870B (zh) * | 2019-04-04 | 2022-01-04 | 厦门网宿有限公司 | 数据传输方法及strongswan服务器 |
CN111786868A (zh) * | 2019-04-04 | 2020-10-16 | 厦门网宿有限公司 | 服务器之间的数据传输方法及strongswan服务器 |
CN111786870A (zh) * | 2019-04-04 | 2020-10-16 | 厦门网宿有限公司 | 数据传输方法及strongswan服务器 |
CN111786867A (zh) * | 2019-04-04 | 2020-10-16 | 厦门网宿有限公司 | 一种数据传输方法及服务器 |
CN111786868B (zh) * | 2019-04-04 | 2022-04-22 | 厦门网宿有限公司 | 服务器之间的数据传输方法及strongswan服务器 |
CN111245699B (zh) * | 2020-01-15 | 2021-08-17 | 广州华多网络科技有限公司 | 远程通信服务控制方法、服务器及客户端 |
CN111245699A (zh) * | 2020-01-15 | 2020-06-05 | 广州华多网络科技有限公司 | 远程通信服务控制方法、服务器及客户端 |
CN112491720A (zh) * | 2020-11-10 | 2021-03-12 | 网宿科技股份有限公司 | 一种平滑升级方法及*** |
CN112491720B (zh) * | 2020-11-10 | 2022-02-15 | 网宿科技股份有限公司 | 一种平滑升级方法及*** |
CN112737915A (zh) * | 2020-12-29 | 2021-04-30 | 优刻得科技股份有限公司 | 基于智能网卡的内网隧道跨域网关转发方法、***、设备和介质 |
Also Published As
Publication number | Publication date |
---|---|
CN101626337B (zh) | 2011-09-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101626337B (zh) | 基于虚拟网卡技术的多隧道并发模型实现方法 | |
EP1868093B1 (en) | Method and system for a user space TCP offload engine (TOE) | |
CN103312601A (zh) | 用户态到内核态的数据报文处理方法 | |
CN110138553B (zh) | 一种IPSec VPN网关数据包处理装置及方法 | |
CN101159747B (zh) | 一种基于tcp并发多链路的通信***及其方法 | |
CN102469064B (zh) | 通信实现方法及通信设备 | |
US20030115350A1 (en) | System and method for efficient handling of network data | |
US7826350B1 (en) | Intelligent network adaptor with adaptive direct data placement scheme | |
US8356112B1 (en) | Intelligent network adaptor with end-to-end flow control | |
CN101599991A (zh) | 一种基于高速通信协议的提升网络文件***性能的方法 | |
CN102035751A (zh) | 一种数据的传输方法和设备 | |
CN104281493A (zh) | 一种提升应用交付通讯平台多进程程序性能的方法 | |
CN110167197B (zh) | Gtp下行数据传输优化方法及装置 | |
US20040083288A1 (en) | Apparatus and method for receive transport protocol termination | |
US20050286513A1 (en) | Software assisted RDMA | |
CN1509037A (zh) | 在与具有瞬时网址的无线装置通信时的脱连时间的实施 | |
CN102122255B (zh) | 利用虚拟字符设备和genetlink实现Linux***中进程间通信的方法 | |
CN103440213A (zh) | 一种应用于具有多cpu和网卡的***的网卡驱动方法 | |
CN101052031A (zh) | 苹果计算机与无线通讯终端进行数据交互的方法 | |
WO2012151998A1 (zh) | 移动宽带设备的数据处理方法及驱动装置 | |
US6839732B1 (en) | Efficient use of domain socket pairs in communication for tightly coupled transactions | |
US8589587B1 (en) | Protocol offload in intelligent network adaptor, including application level signalling | |
CN106339263B (zh) | 一种多软件运行环境之间通信的方法 | |
WO2014075489A1 (zh) | 流量管理调度方法及装置 | |
CN117395329A (zh) | 收发以太二层协议报文的方法、装置及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20110928 |