CN111190547B - 一种分布式容器镜像存储与分发系统与方法 - Google Patents
一种分布式容器镜像存储与分发系统与方法 Download PDFInfo
- Publication number
- CN111190547B CN111190547B CN201911396796.6A CN201911396796A CN111190547B CN 111190547 B CN111190547 B CN 111190547B CN 201911396796 A CN201911396796 A CN 201911396796A CN 111190547 B CN111190547 B CN 111190547B
- Authority
- CN
- China
- Prior art keywords
- docker
- distributed
- container
- mirror image
- daemon
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/065—Replication mechanisms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0656—Data buffering arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
Abstract
一种分布式容器镜像存储与分发系统与方法,所述系统包括分布式文件系统和分布式缓存系统,协同实现分布式Docker镜像存储与分发功能,所述分布式缓存系统,包括各个运行Docker容器的主机分出的部分内存,实现运行容器所需Docker镜像的缓存,取代了在各个主机缓存容器镜像,节省了存储成本,而且从分布式缓存系统获取Docker镜像缩短了容器启动时间。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种利用分布式文件系统和分布式缓存系统协同实现分布式容器镜像存储与分发功能的分布式容器镜像存储与分发系统与方法。
背景技术
Docker容器集群以其轻量级、易迁移、便捷性等特性成为隔离、部署计算机应用的解决方案。例如,Google的所有应用程序以容器方式运行,每周运行的容器数量超过20亿。容器封装了应用程序运行的环境,容器编排实现了容器应用的自动化部署与维护,从而使得开发人员专注于软件功能,有效提高软件开发、部署效率。
Docker容器体系由Docker守护进程、Docker客户端和Docker仓库3个部分组成。Docker守护进程在各个主机上,负责启动、停止容器、创建镜像以及从Docker容器推送、拉取镜像。Docker客户端提供给用户用于与Docker守护进程通信功能,用于用户向Docker守护进程发送管理Docker容器命令。Docker仓库保存Docker镜像,不同的主机从Docker仓库拉取镜像或者向其推送镜像。
现有技术CN109491758A公开了一种Docker镜像分发方法,基于客户端发送的获取Docker镜像文件的请求,从P2P网络的tracker服务器中查询可用的数据共享节点,与至少一个所述可用的数据共享节点建立P2P连接,下载所述docker镜像文件,并将已下载的所述docker镜像文件发送至所述客户端,从而实现容器服务中高效率、低成本的docker镜像分发。但是该现有技术仍然需要每个主机运行容器时都要下载在本地不存在的Docker镜像。
可见,现有的Docker容器集群性能依赖于Docker仓库性能,每个主机运行容器时都要从Docker仓库下载在本地不存在的Docker镜像。这种运行机制存在如下的问题:
1、存储资源浪费:同一镜像因为要在不同主机上运行,每台主机都要从Docker仓库下载进行保存在本地,导致Docker集群中同一镜像存储多份,带来了存储空间浪费。
2、启动性能低:主机从Docker仓库下载镜像时间成为主机启动瓶颈,导致大规模Docker集群性能依赖Docker仓库性能。
发明内容
本发明针对上述问题,利用分布式文件系统和分布式缓存系统协同实现分布式容器镜像存储与分发功能,使得容器仓库的镜像在分布式文件系统中完成持久化存储,提供并发存储和数据冗余功能,分布式缓存系统实现运行容器所需镜像的缓存,取代了在各个主机缓存容器镜像,节省了存储成本,从分布式缓存获取镜像缩短了容器启动时间。具体方案如下:
一种分布式容器镜像存储与分发系统,包括Docker容器集群和Docker仓库;所述Docker容器集群包括多个运行Docker容器的Docker主机,每个所述Docker主机均运行Docker守护进程和Docker客户端;所述Docker仓库包括分布式缓存系统和分布式文件系统;每个所述Docker主机的内存划分为Docker本地内存和Docker本地缓存节点;所述分布式缓存系统由一个分布式缓存系统主节点和全部所述Docker本地缓存节点构成,所述分布式缓存系统用于存储运行Docker容器所需的镜像;所述分布式文件系统由一个主存储节点和与多个从存储节点构成。
优选的,所述Docker守护进程负责启动、停止容器,创建镜像,以及从Docker容器推送、拉取镜像;所述Docker客户端向用户提供与Docker守护进程的通信功能,向Docker守护进程发送管理Docker容器命令。
优选的,所述分布式缓存系统主节点,用于对所述分布式缓存系统中存储的Docker镜像进行登记,并接受查询。
优选的,所述分布式文件系统主节点,用于对分布式文件系统中存储的Docker镜像进行登记,并接受查询。
一种分布式容器镜像存储与分发方法,用于上述的分布式容器镜像存储与分发系统,包括如下步骤:
用户使用Docker客户端向Docker守护进程发送管理Docker容器命令;Docker守护进程根据命令,创建Docker镜像、删除Docker镜像、修改Docker镜像或启动Docker容器;所述Docker守护进程创建Docker镜像完成后,Docker镜像保存到所述分布式缓存系统,并在所述分布式缓存系统主节点进行登记。
优选的,所述Docker守护进程删除Docker镜像时,只修改Docker容器所在的Docker主机的镜像信息,不删除所述分布式缓存系统的实际Docker镜像
优选的,所述Docker守护进程修改Docker镜像时,采用写时复制机制,把Docker镜像复制一个副本,在其上增加修改层,并采用定期策略或者不定期策略存储到所述分布式缓存系统及所述分布式文件系统。
优选的,所述Docker守护进程启动Docker容器时,首先查询所述分布式缓存系统,如果存在Docker容器,将其拉取到该Docker守护进程所在Docker主机的所述Docker本地内存中进行加载启动;如果不存在,则从所述分布式文件系统中查询,并将Docker容器提取到所述分布式缓存系统中,存储在该Docker守护进程所在Docker主机分配给分布式缓存系统的对应的所述Docker本地缓存节点上,进行加载启动。
优选的,采用实时、定时或者不定时策略,将所述分布式缓存系统中存储的Docker镜像持久化存储到所述分布式文件系统。
本发明的分布式容器镜像存储与分发方法节省了存储成本,以Docker分布式缓存系统和分布式文件系统为中心,向分布式文件系统推送能够以并行存储加快镜像推送速度,从分布式缓存系统拉取镜像,将进行多副本的镜像同时传输,加快了拉取镜像速度,因此提高了拉取、推送的性能。
附图说明
图1是本发明的分布式容器镜像存储与分发系统结构图。
图2是本发明的分布式容器镜像存储与分发方法流程示意图。
具体实施方式
如附图1所示,一种分布式容器镜像存储与分发系统,包括Docker容器集群和Docker仓库;所述Docker容器集群包括多个运行Docker容器的Docker主机,每个所述Docker主机均运行Docker守护进程和Docker客户端;所述Docker仓库包括分布式缓存系统和分布式文件系统;每个所述Docker主机的内存划分为Docker本地内存和Docker本地缓存节点;所述分布式缓存系统由一个分布式缓存系统主节点和全部所述Docker本地缓存节点构成,所述分布式缓存系统用于存储运行Docker容器所需的镜像;所述分布式文件系统由一个主存储节点和与多个从存储节点构成。
所述分布式文件系统的主从节点可以由不运行Docker容器的存储服务器充当,用于持久化存储容器镜像。若运行Docker的服务器充当分布式文件系统的存储节点,将使其既要提供镜像服务,又要提供运行Docker容器,这样会影响Docker运行效率。
所述分布式缓存系统的节点可以由运行Docker容器充当,因为Docker容器运行内存中必须有对应的Docker镜像,这样在其存储其必须镜像时顺便提供其他节点的镜像缓存服务,相当于兼职提供镜像缓存服务。
所述Docker守护进程负责启动、停止容器,创建镜像,以及从Docker容器推送、拉取镜像;所述Docker客户端向用户提供与Docker守护进程的通信功能,向Docker守护进程发送管理Docker容器命令。
所述分布式缓存系统主节点,用于对所述分布式缓存系统中存储的Docker镜像进行登记,并用于查询所述分布式缓存系统中是否存储需要的Docker镜像。
所述分布式文件系统主节点,用于对分布式文件系统中存储的Docker镜像进行登记,并用于查询所述对分布式文件系统中是否存储需要的Docker镜像。
如附图2所示,一种分布式容器镜像存储与分发方法,用于上述的分布式容器镜像存储与分发系统,包括如下步骤:用户使用Docker客户端向Docker守护进程发送管理Docker容器命令;Docker守护进程根据命令,创建Docker镜像、删除Docker镜像、修改Docker镜像或启动Docker容器。
所述Docker守护进程创建Docker镜像完成后,Docker镜像保存到所述分布式缓存系统,并在所述分布式缓存系统主节点进行登记,存储位置是该Docker守护进程所在的Docker主机所提供的内存。通过采用内存间复制,能够提高镜像数据的存取速度。
所述Docker守护进程删除Docker镜像时,只修改Docker容器所在的Docker主机的镜像信息,不删除所述分布式缓存系统的实际Docker镜像
所述Docker守护进程修改Docker镜像时,采用写时复制机制,把Docker镜像复制一个副本,在其上增加修改层,并采用定期策略或者不定期策略存储到所述分布式缓存系统及所述分布式文件系统。
所述Docker守护进程启动Docker容器时,首先查询所述分布式缓存系统,如果存在Docker容器,将其拉取到该Docker守护进程所在Docker主机的所述Docker本地内存中进行加载启动;如果不存在,则从所述分布式文件系统中查询,并将Docker容器提取到所述分布式缓存系统中,存储在该Docker守护进程所在Docker主机分配给分布式缓存系统的对应的所述Docker本地缓存节点上,进行加载启动。
所述分布式容器镜像存储与分发方法采用实时、定时或者不定时策略,将所述分布式缓存系统中存储的Docker镜像持久化存储到所述分布式文件系统。
本发明通过上述实施例来说明本发明的详细过程和组成,但是本发明并不局限于上述详细过程和组成。本领域的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是本发明的原理,在不脱离本发明精神和范围的前提下本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明的范围内。
Claims (9)
1.一种分布式容器镜像存储与分发系统,包括Docker容器集群和Docker仓库,其特征在于:
所述Docker容器集群包括多个运行Docker容器的Docker主机,每个所述Docker主机均运行Docker守护进程和Docker客户端;
所述Docker仓库包括分布式缓存系统和分布式文件系统;
每个所述Docker主机的内存划分为Docker本地内存和Docker本地缓存节点;
所述分布式缓存系统由一个分布式缓存系统主节点和全部所述Docker本地缓存节点构成,所述分布式缓存系统用于存储运行Docker容器所需的镜像;
所述分布式文件系统由一个主存储节点和与多个从存储节点构成。
2.根据权利要求1所述的分布式容器镜像存储与分发系统,其特征在于,所述Docker守护进程负责启动、停止容器,创建镜像,以及从Docker容器推送、拉取镜像;所述Docker客户端向用户提供与Docker守护进程的通信功能,向Docker守护进程发送管理Docker容器命令。
3.根据权利要求1所述的分布式容器镜像存储与分发系统,其特征在于,所述分布式缓存系统主节点,用于对所述分布式缓存系统中存储的Docker镜像进行登记,并接受查询。
4.根据权利要求1所述的分布式容器镜像存储与分发系统,其特征在于,所述分布式文件系统主节点,用于对分布式文件系统中存储的Docker镜像进行登记,并接受查询。
5.一种分布式容器镜像存储与分发方法,用于如权利要求1-4任意一项所述的分布式容器镜像存储与分发系统,其特征在于包括如下步骤:
用户使用Docker客户端向Docker守护进程发送管理Docker容器命令;
Docker守护进程根据命令,创建Docker镜像、删除Docker镜像、修改Docker镜像或启动Docker容器;
所述Docker守护进程创建Docker镜像完成后,Docker镜像保存到所述分布式缓存系统,并在所述分布式缓存系统主节点进行登记。
6.根据权利要求5所述的分布式容器镜像存储与分发方法,其特征在于,所述Docker守护进程删除Docker镜像时,只修改Docker容器所在的Docker主机的镜像信息,不删除所述分布式缓存系统的实际Docker镜像。
7.根据权利要求5所述的分布式容器镜像存储与分发方法,其特征在于,所述Docker守护进程修改Docker镜像时,采用写时复制机制,把Docker镜像复制一个副本,在其上增加修改层,并采用定期策略或者不定期策略存储到所述分布式缓存系统及所述分布式文件系统。
8.根据权利要求5所述的分布式容器镜像存储与分发方法,其特征在于,所述Docker守护进程启动Docker容器时,首先查询所述分布式缓存系统,如果存在Docker容器,将其拉取到该Docker守护进程所在Docker主机的所述Docker本地内存中进行加载启动;如果不存在,则从所述分布式文件系统中查询,并将Docker容器提取到所述分布式缓存系统中,存储在该Docker守护进程所在Docker主机分配给分布式缓存系统的对应的所述Docker本地缓存节点上,进行加载启动。
9.根据权利要求5所述的分布式容器镜像存储与分发方法,其特征在于,采用实时、定时或者不定时策略,将所述分布式缓存系统中存储的Docker镜像持久化存储到所述分布式文件系统。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911396796.6A CN111190547B (zh) | 2019-12-30 | 2019-12-30 | 一种分布式容器镜像存储与分发系统与方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911396796.6A CN111190547B (zh) | 2019-12-30 | 2019-12-30 | 一种分布式容器镜像存储与分发系统与方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111190547A CN111190547A (zh) | 2020-05-22 |
CN111190547B true CN111190547B (zh) | 2023-02-24 |
Family
ID=70707788
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911396796.6A Active CN111190547B (zh) | 2019-12-30 | 2019-12-30 | 一种分布式容器镜像存储与分发系统与方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111190547B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111858763A (zh) * | 2020-07-22 | 2020-10-30 | 陈永欢 | 一种大数据安防监控系统 |
CN112748879B (zh) * | 2020-12-30 | 2023-03-10 | 中科曙光国际信息产业有限公司 | 数据获取方法、系统、装置、计算机设备和存储介质 |
CN112799780A (zh) * | 2021-01-15 | 2021-05-14 | 中国银联股份有限公司 | 容器镜像共享方法、装置、服务器、设备及介质 |
CN112988462A (zh) * | 2021-02-08 | 2021-06-18 | 同盾科技有限公司 | 容器镜像中心和容器镜像中心运行方法 |
CN113760453B (zh) * | 2021-08-04 | 2024-05-28 | 南方电网科学研究院有限责任公司 | 容器镜像分发系统及容器镜像推送、拉取和删除方法 |
CN114006753A (zh) * | 2021-10-29 | 2022-02-01 | 中国电信股份有限公司 | 一种容器镜像层下载拦截方法和装置 |
CN115766739A (zh) * | 2022-10-14 | 2023-03-07 | 济南浪潮数据技术有限公司 | 一种容器镜像分发方法、装置、系统及其介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106790660A (zh) * | 2017-01-18 | 2017-05-31 | 咪咕视讯科技有限公司 | 一种实现分布式存储系统的部署方法及装置 |
WO2019127971A1 (zh) * | 2017-12-29 | 2019-07-04 | 平安科技(深圳)有限公司 | 镜像仓库的镜像同步方法、系统、设备及存储介质 |
CN110024422A (zh) * | 2016-12-30 | 2019-07-16 | 英特尔公司 | 物联网的命名和区块链记录 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018005613A1 (en) * | 2016-06-28 | 2018-01-04 | Solano Labs, Inc. | Systems and methods for efficient distribution of stored data objects |
-
2019
- 2019-12-30 CN CN201911396796.6A patent/CN111190547B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110024422A (zh) * | 2016-12-30 | 2019-07-16 | 英特尔公司 | 物联网的命名和区块链记录 |
CN106790660A (zh) * | 2017-01-18 | 2017-05-31 | 咪咕视讯科技有限公司 | 一种实现分布式存储系统的部署方法及装置 |
WO2019127971A1 (zh) * | 2017-12-29 | 2019-07-04 | 平安科技(深圳)有限公司 | 镜像仓库的镜像同步方法、系统、设备及存储介质 |
Non-Patent Citations (1)
Title |
---|
基于分布式容器环境的智慧运维开发平台研究;罗匀岭等;《广西通信技术》;20190915(第03期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN111190547A (zh) | 2020-05-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111190547B (zh) | 一种分布式容器镜像存储与分发系统与方法 | |
CN106888254B (zh) | 一种基于Kubernetes的容器云架构及其各模块之间的交互方法 | |
US10831720B2 (en) | Cloud storage distributed file system | |
CN102185928B (zh) | 一种在云计算系统创建虚拟机的方法及云计算系统 | |
EP0338041B1 (en) | Naming service for networked digital data processing system | |
CN108667904B (zh) | 一种Docker容器远程内存卷管理方法和系统 | |
US20190392053A1 (en) | Hierarchical namespace with strong consistency and horizontal scalability | |
US10735369B2 (en) | Hierarchical namespace service with distributed name resolution caching and synchronization | |
US10740192B2 (en) | Restoring NAS servers from the cloud | |
US20190370365A1 (en) | Distributed transactions in cloud storage with hierarchical namespace | |
CN112231052B (zh) | 一种高性能分布式容器镜像分发系统及方法 | |
WO2020103904A1 (zh) | 云桌面升级方法、装置、云端服务器及存储介质 | |
MX2008014244A (es) | Conversion de maquinas a maquinas virtuales. | |
CN109933312B (zh) | 一种有效降低容器化关系型数据库i/o消耗的方法 | |
CN113377868B (zh) | 一种基于分布式kv数据库的离线存储系统 | |
US10031682B1 (en) | Methods for improved data store migrations and devices thereof | |
CN102333029A (zh) | 一种服务器集群系统中的路由方法 | |
CN102780724A (zh) | 一种类目信息的发送方法、系统及设备 | |
CN112052230B (zh) | 多机房数据同步方法、计算设备及存储介质 | |
CN101267341A (zh) | 一种分布式网络管理系统、网管服务器和方法 | |
US7818390B2 (en) | Method for transferring data between terminal apparatuses in a transparent computation system | |
CN112882726B (zh) | 基于Hadoop和Docker的环境系统的部署方法 | |
CN111158851A (zh) | 一种虚拟机快速部署方法 | |
CN113885780A (zh) | 数据同步方法、装置、电子设备、系统和存储介质 | |
CN111459619A (zh) | 一种基于云平台实现服务的方法和装置 |
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 |