CN107347023A - 一种面向节点请求可靠性的sdn控制器部署方法 - Google Patents
一种面向节点请求可靠性的sdn控制器部署方法 Download PDFInfo
- Publication number
- CN107347023A CN107347023A CN201710568701.9A CN201710568701A CN107347023A CN 107347023 A CN107347023 A CN 107347023A CN 201710568701 A CN201710568701 A CN 201710568701A CN 107347023 A CN107347023 A CN 107347023A
- Authority
- CN
- China
- Prior art keywords
- controller
- node
- mrow
- request
- sdn
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0654—Management of faults, events, alarms or notifications using network fault recovery
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0823—Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability
- H04L41/0836—Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability to enhance reliability, e.g. reduce downtime
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/12—Avoiding congestion; Recovering from congestion
- H04L47/125—Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种面向节点请求可靠性的SDN控制器部署方法,包括:定义单链路失效故障情况下平均节点请求丢失数的可靠性性能指标;部署控制器的过程为首先假设在所有节点所在位置上均部署一个控制器,然后将多余的控制器依次移除,直到控制器个数减少到指定的数量;在每次移除一个控制器时,选择移除能够使网络获得最小平均节点请求丢失数的控制器。本发明能降低平均节点请求丢失数,从而在单链路失效故障情况下提高节点请求的可靠性,降低平均流表项安装请求通信延迟,降低交换机平均转发的流表项安装请求数,降低交换机的平均负载,提高网络的稳定性和安全性。
Description
技术领域
本发明涉及软件定义网络的控制器部署领域,特别是涉及面向节点流表项安装请求可靠性优化的软件定义网络控制器部署方法。
背景技术
目前使用最广泛的网络是基于TCP/IP体系架构的因特网。负责存储转发数据的路由器和交换机等设备上的协议都是基于分布式合作的方式进行工作,导致了现有网络在可扩展性、可管理性、可升级性以及可靠性等方面存在诸多的问题。SDN即软件定义网络,作为一种新型的网络架构为改变现有网络中的种种局限性带来了希望,软件定义网络中数据层面和控制层面分离的网络架构使其具有良好的动态性、可管理性以及可扩展性。为了使SDN节点保持有效工作,需要保证控制器及时响应接收到的节点流表项安装请求。链路失效会导致节点发送的请求无法到达控制器,从而控制器无法响应请求,节点无法正常完成网络数据的转发。为了弥补广域网中单控制器在处理能力、带宽以及I/O等资源的局限性,在广域网中常采用多个物理控制器组成的逻辑集中控制层面来管理整个网络。在部署控制器时,可靠性以及交换机和控制器之间的通信延迟等性能都是十分重要的考量指标。
目前软件定义网络中控制器的部署策略主要有:面向交换机和控制器之间的通信延迟性能,主要优化节点和控制器之间的平均通信延迟或最大通信延迟;面向可靠性,主要提高节点和控制器之间路径鲁棒性、为节点配置冗余控制器或备份控制路径等;面向控制器之间的负载均衡,主要优化所有控制器处理的流表项安装请求负载差值;综合优化能耗、负载动态变化以及经济代价等。这些策略在部署控制器时往往致力于提高节点与其映射控制器之间的连接可靠性或者降低二者之间的通信延迟,忽略了节点向控制器发送的流表项安装请求数,即不同的交换机在单位时间会产生不同数量的流表项安装请求。使用这些策略部署控制器后,会因为单链路失效故障导致大量的节点请求无法发送到控制器,从而导致大量的数据流在节点处无法转发,进而降低了网络的可靠性和吞吐量。
发明内容
本发明为克服现有技术存在的不足之处,提出一种面向节点请求可靠性的SDN控制器部署方法,以期能降低平均节点请求丢失数,从而在单链路失效故障情况下提高节点请求的可靠性。
本发明为达到上述发明目的,采用如下技术方案:
本发明一种面向节点请求可靠性的SDN控制器部署方法,其特点是应用于存在单链路失效故障的SDN中,所述SDN中存在N个节点和K个控制器,向自身映射的控制器所发送的节点请求即为流表项安装请求,以最小平均节点请求的丢失数作为所述节点请求的可靠性,则所述SDN控制器部署方法是按如下步骤进行:
步骤1、假设在N个节点所在位置上均部署一个控制器,并将每个节点映射到自身所在位置的控制器上;
步骤2、将所述SDN中当前剩余控制器所组成的集合记为C={c1,c2,…,ck,…,c|C|},ck表示任意第k个控制器,|C|表示当前剩余控制器的总数,且|C|≥K,从当前剩余控制器集合C中移除一个控制器,使得所述SDN的平均节点请求的丢失数最小;
步骤2.1、初始化k=1;
步骤2.2、获取第k个控制器ck上映射的节点集合 表示第k个控制器ck上所控制的第i个节点,|Sk|表示第k个控制器ck上所控制的节点总数;
步骤2.3、测试移除第k个控制器ck后,则剩余控制器集合记为C′=C-{ck};
步骤2.4、初始化i=1;
步骤2.5、判断i≤|Sk|是否成立,若成立,则计算第i个节点映射到剩余控制器集合C′中每个控制器上所引起的平均节点请求丢失数记所述SDN中能获得最小平均节点请求丢失数且控制的所有节点单位时间内产生的请求数总和不大于控制器处理能力的控制器为c′,并将第i个节点映射到控制器c′上;否则,执行步骤2.7;
步骤2.6、将i+1赋值给i后,返回步骤2.5;
步骤2.7、测试移除第k个控制器ck后,将所述SDN中平均节点请求丢失数记为
步骤2.8、将k+1赋值给k后,判断k≤|C|是否成立,若成立,则返回步骤2.2;否则,执行步骤2.9;
步骤2.9、将当前剩余控制器集合C中,能获得的控制器记为并真正移除控制器记为从而完成所述N个控制器中一个控制器的移除测试;
步骤3、将赋值给C,并判断|C|>K是否成立,若成立,则返回步骤2执行,否则表示完成在所述N个节点的SDN中部署K个控制器。
本发明所述的SDN控制器部署方法的特点也在于,所述步骤2.5中每个控制器上所引起的平均节点请求丢失数是利用式(1)获得:
式(1)中,L表示所述SDN中所有控制路径所包含的所有链路集合,e表示所有节点和其映射控制器之间的控制路径集合中的一条链路,D(e)表示因链路e发生故障而导致的节点请求丢失数;并有:
式(2)中,si表示所述SDN中任意第i个节点,V表示所述N个节点所构成的集合,ri,k表示第i个节点si在单位时间向其映射的第k个控制器ck发送的请求数,表示第i个节点si和第k个控制器ck的控制路径pi,k是否包含链路e,表示控制路径pi,k包含链路e,表示控制路径pi,k不包含链路e,xi,k表示第i个节点si是否映射到第k个控制器ck上,若xi,k=1表示第i个节点si被映射到第k个控制器ck上,xi,k=0表示第i个节点si未映射到第k个控制器ck。
与已有技术相比,本发明的有益效果在于:
1、本发明提出的控制器部署方法可以有效减少单链路故障导致的平均节点请求丢失数,提高了节点请求的可靠性,降低了平均流表项安装请求通信延迟,提高了控制器对流表项安装请求的响应速度,并降低了节点平均转发的流表项安装请求数,从而降低了节点的平均负载,提高了网络的稳定性。
2、本发明考虑各个节点在单位时间内向控制器发送的请求数的不同,定义了控制器部署可靠性指标,即平均节点请求丢失数;部署控制器时,计算不同控制器部署位置引起的平均节点请求丢失数,选择导致较少平均节点请求丢失数的位置部署控制器,从而降低了单链路故障造成的节点请求丢失数,提高了网络的可靠性。
3、本发明基于平均节点请求丢失数部署控制器,将控制器部署在产生较多请求的节点附近,节点请求通过较少的链路即可发送到控制器,从而降低了节点请求的通信延迟,降低了平均流表项安装请求通信延迟,提高了控制器对流表项安装请求的响应速度;同时,也降低了交换机平均转发的流表项安装请求数,减少了交换机的平均负载,提高了网络的稳定性。
附图说明
图1是本发明部署控制器的流程图。
图2是本发明节点和控制器之间的交互方式。
具体实施方式
本实施例中,一种面向节点请求可靠性的SDN控制器部署方法,应用于存在单链路失效故障的SDN中,SDN中存在N个节点和K个控制器,向自身映射的控制器所发送的节点请求即为流表项安装请求,以最小平均节点请求的丢失数作为节点请求的可靠性;部署控制器的过程为首先假设在所有节点所在位置上均部署一个控制器,然后将多余的控制器依次移除,直到控制器个数减少到指定的数量;在每次移除一个控制器时,选择移除能够使网络获得最小平均节点请求丢失数的控制器;如图1所示,该SDN控制器部署方法是按如下步骤进行:
步骤1、假设在N个节点所在位置上均部署一个控制器,并将每个节点映射到自身所在位置的控制器上;
步骤2、将SDN中当前剩余控制器所组成的集合记为C={c1,c2,…,ck,…,c|C|},ck表示任意第k个控制器,|C|表示当前剩余控制器的总数,且|C|≥K,从当前剩余控制器集合C中移除一个控制器,使得SDN的平均节点请求的丢失数最小;移除控制器时,考虑各个节点在单位时间内向控制器发送的请求数的不同,将控制器部署在产生较多请求的节点附近,从而降低单链路故障造成的节点请求丢失数,提高网络的可靠性;节点请求通过较少的链路即可发送到控制器,从而降低了节点请求的通信延迟,降低了平均流表项安装请求通信延迟,提高控制器对流表项安装请求的响应速度,同时也降低了交换机平均转发的流表项安装请求数,减少了交换机的平均负载,提高了网络的稳定性;
步骤2.1、初始化k=1;
步骤2.2、获取第k个控制器ck上映射的节点集合 表示第k个控制器ck上所控制的第i个节点,|Sk|表示第k个控制器ck上所控制的节点总数;
步骤2.3、测试移除第k个控制器ck后,则剩余控制器集合记为C′=C-{ck};
步骤2.4、初始化i=1;
步骤2.5、判断i≤|Sk|是否成立,若成立,则计算第i个节点映射到剩余控制器集合C′中每个控制器上所引起的平均节点请求丢失数记SDN中能获得最小平均节点请求丢失数且控制的所有节点单位时间内产生的请求数总和不大于控制器处理能力的控制器为c′,并将第i个节点映射到控制器c′上;否则,执行步骤2.7;每个控制器上所引起的平均节点请求丢失数是利用式(1)获得:
式(1)中,L表示SDN中所有控制路径所包含的所有链路集合,节点和映射控制器之间的控制路径为两者之间的最短路径,e表示所有节点和其映射控制器之间的控制路径集合中的一条链路,D(e)表示因链路e发生故障而导致的节点请求丢失数;并有:
式(2)中,si表示SDN中任意第i个节点,V表示N个节点所构成的集合,ri,k表示第i个节点si在单位时间向其映射的第k个控制器ck发送的请求数,表示第i个节点si和第k个控制器ck的控制路径pi,k是否包含链路e,表示控制路径pi,k包含链路e,表示控制路径pi,k不包含链路e,xi,k表示第i个节点si是否映射到第k个控制器ck上,若xi,k=1表示第i个节点si被映射到第k个控制器ck上,xi,k=0表示第i个节点si未映射到第k个控制器ck。
步骤2.6、将i+1赋值给i后,返回步骤2.5;
步骤2.7、测试移除第k个控制器ck后,将SDN中平均节点请求丢失数记为
步骤2.8、将k+1赋值给k后,判断k≤|C|是否成立,若成立,则返回步骤2.2;否则,执行步骤2.9;
步骤2.9、将当前剩余控制器集合C中,能获得的控制器记为并真正移除控制器记为从而完成N个控制器中一个控制器的移除测试;
步骤3、将赋值给C,并判断|C|>K是否成立,若成立,则返回步骤2执行,否则表示完成在N个节点的SDN中部署K个控制器。
参见图2,本发明中涉及到的节点和控制器之间的关系为:节点在遇到未知的数据流时,向控制器发送流表项安装请求;控制器收到节点的流表项安装请求时,会向节点发送流表项安装请求响应,该响应一般是在节点上安装新的流表项。
Claims (2)
1.一种面向节点请求可靠性的SDN控制器部署方法,其特征是应用于存在单链路失效故障的SDN中,所述SDN中存在N个节点和K个控制器,向自身映射的控制器所发送的节点请求即为流表项安装请求,以最小平均节点请求的丢失数作为所述节点请求的可靠性,则所述SDN控制器部署方法是按如下步骤进行:
步骤1、假设在N个节点所在位置上均部署一个控制器,并将每个节点映射到自身所在位置的控制器上;
步骤2、将所述SDN中当前剩余控制器所组成的集合记为C={c1,c2,…,ck,…,c|C|},ck表示任意第k个控制器,|C|表示当前剩余控制器的总数,且|C|≥K,从当前剩余控制器集合C中移除一个控制器,使得所述SDN的平均节点请求的丢失数最小;
步骤2.1、初始化k=1;
步骤2.2、获取第k个控制器ck上映射的节点集合 表示第k个控制器ck上所控制的第i个节点,|Sk|表示第k个控制器ck上所控制的节点总数;
步骤2.3、测试移除第k个控制器ck后,则剩余控制器集合记为C′=C-{ck};
步骤2.4、初始化i=1;
步骤2.5、判断i≤|Sk|是否成立,若成立,则计算第i个节点映射到剩余控制器集合C′中每个控制器上所引起的平均节点请求丢失数记所述SDN中能获得最小平均节点请求丢失数且控制的所有节点单位时间内产生的请求数总和不大于控制器处理能力的控制器为c′,并将第i个节点映射到控制器c′上;否则,执行步骤2.7;
步骤2.6、将i+1赋值给i后,返回步骤2.5;
步骤2.7、测试移除第k个控制器ck后,将所述SDN中平均节点请求丢失数记为
步骤2.8、将k+1赋值给k后,判断k≤|C|是否成立,若成立,则返回步骤2.2;否则,执行步骤2.9;
步骤2.9、将当前剩余控制器集合C中,能获得的控制器记为并真正移除控制器记为从而完成所述N个控制器中一个控制器的移除测试;
步骤3、将赋值给C,并判断|C|>K是否成立,若成立,则返回步骤2执行,否则表示完成在所述N个节点的SDN中部署K个控制器。
2.根据权利要求1所述的SDN控制器部署方法,其特征是,所述步骤2.5中每个控制器上所引起的平均节点请求丢失数是利用式(1)获得:
<mrow>
<mover>
<mi>D</mi>
<mo>&OverBar;</mo>
</mover>
<mo>=</mo>
<mfrac>
<mrow>
<msub>
<mi>&Sigma;</mi>
<mrow>
<mi>e</mi>
<mo>&Element;</mo>
<mi>L</mi>
</mrow>
</msub>
<mi>D</mi>
<mrow>
<mo>(</mo>
<mi>e</mi>
<mo>)</mo>
</mrow>
</mrow>
<mrow>
<mo>|</mo>
<mi>L</mi>
<mo>|</mo>
</mrow>
</mfrac>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>1</mn>
<mo>)</mo>
</mrow>
</mrow>
式(1)中,L表示所述SDN中所有控制路径所包含的所有链路集合,e表示所有节点和其映射控制器之间的控制路径集合中的一条链路,D(e)表示因链路e发生故障而导致的节点请求丢失数;并有:
<mrow>
<mi>D</mi>
<mrow>
<mo>(</mo>
<mi>e</mi>
<mo>)</mo>
</mrow>
<mo>=</mo>
<msub>
<mi>&Sigma;</mi>
<mrow>
<msub>
<mi>s</mi>
<mi>i</mi>
</msub>
<mo>&Element;</mo>
<mi>V</mi>
</mrow>
</msub>
<msub>
<mi>&Sigma;</mi>
<mrow>
<msub>
<mi>c</mi>
<mi>k</mi>
</msub>
<mo>&Element;</mo>
<mi>C</mi>
</mrow>
</msub>
<msub>
<mi>r</mi>
<mrow>
<mi>i</mi>
<mo>,</mo>
<mi>k</mi>
</mrow>
</msub>
<mo>&CenterDot;</mo>
<msubsup>
<mi>p</mi>
<mrow>
<mi>i</mi>
<mo>,</mo>
<mi>k</mi>
</mrow>
<mi>e</mi>
</msubsup>
<mo>&CenterDot;</mo>
<msub>
<mi>x</mi>
<mrow>
<mi>i</mi>
<mo>,</mo>
<mi>k</mi>
</mrow>
</msub>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>2</mn>
<mo>)</mo>
</mrow>
</mrow>
式(2)中,si表示所述SDN中任意第i个节点,V表示所述N个节点所构成的集合,ri,k表示第i个节点si在单位时间向其映射的第k个控制器ck发送的请求数,表示第i个节点si和第k个控制器ck的控制路径pi,k是否包含链路e,表示控制路径pi,k包含链路e,表示控制路径pi,k不包含链路e,xi,k表示第i个节点si是否映射到第k个控制器ck上,若xi,k=1表示第i个节点si被映射到第k个控制器ck上,xi,k=0表示第i个节点si未映射到第k个控制器ck。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710568701.9A CN107347023B (zh) | 2017-07-13 | 2017-07-13 | 一种面向节点请求可靠性的sdn控制器部署方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710568701.9A CN107347023B (zh) | 2017-07-13 | 2017-07-13 | 一种面向节点请求可靠性的sdn控制器部署方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107347023A true CN107347023A (zh) | 2017-11-14 |
CN107347023B CN107347023B (zh) | 2019-09-13 |
Family
ID=60256882
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710568701.9A Active CN107347023B (zh) | 2017-07-13 | 2017-07-13 | 一种面向节点请求可靠性的sdn控制器部署方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107347023B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160156558A1 (en) * | 2014-11-27 | 2016-06-02 | Inventec (Pudong) Technology Corp. | Data Center Network Flow Migration Method and System Thereof |
CN105959217A (zh) * | 2016-06-06 | 2016-09-21 | 北京邮电大学 | 一种sdn移动自组网的数据处理方法及装置 |
CN106027311A (zh) * | 2016-06-24 | 2016-10-12 | 江苏省未来网络创新研究院 | 基于sdn的灾备系统及其数据灾备方法 |
CN106130766A (zh) * | 2016-09-23 | 2016-11-16 | 深圳灵动智网科技有限公司 | 一种基于sdn技术实现自动化网络故障分析的系统和方法 |
-
2017
- 2017-07-13 CN CN201710568701.9A patent/CN107347023B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160156558A1 (en) * | 2014-11-27 | 2016-06-02 | Inventec (Pudong) Technology Corp. | Data Center Network Flow Migration Method and System Thereof |
CN105959217A (zh) * | 2016-06-06 | 2016-09-21 | 北京邮电大学 | 一种sdn移动自组网的数据处理方法及装置 |
CN106027311A (zh) * | 2016-06-24 | 2016-10-12 | 江苏省未来网络创新研究院 | 基于sdn的灾备系统及其数据灾备方法 |
CN106130766A (zh) * | 2016-09-23 | 2016-11-16 | 深圳灵动智网科技有限公司 | 一种基于sdn技术实现自动化网络故障分析的系统和方法 |
Also Published As
Publication number | Publication date |
---|---|
CN107347023B (zh) | 2019-09-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107394773B (zh) | 考虑故障处理全过程的配网信息物理系统可靠性评估方法 | |
CN103957032B (zh) | 电力耦合网络抵御级联失效负载重分配方法 | |
CN107690176B (zh) | 一种基于q学习算法的网络选择方法 | |
CN108965014B (zh) | QoS感知的服务链备份方法及系统 | |
CN103401794B (zh) | 一种面向大规模应用的软件定义网络控制优化方法 | |
CN101841482B (zh) | 一种数据中心网络节能路由方法及装置 | |
CN103545919B (zh) | 一种有源配电网络的孤岛拓扑识别方法 | |
CN106161257B (zh) | 一种面向sdn网络的基于链路利用率的自适应节能路由方法 | |
CN107682195A (zh) | 基于复杂网络与大数据结合的通信网络鲁棒性评估方法 | |
CN105050095B (zh) | 一种基于能量预测的异构无线传感网的拓扑构建方法 | |
CN110224427B (zh) | 一种基于微电网能量控制策略的信息物理系统建模方法 | |
CN108880888A (zh) | 一种基于深度学习的sdn网络流量预测方法 | |
CN101783752A (zh) | 一种基于网络拓扑特征的网络安全量化评估方法 | |
CN104411000A (zh) | 一种无线传感器网络中分层路由协议簇头选择方法 | |
CN104022951B (zh) | 一种网络服务路径的建立方法及系统 | |
CN107317764A (zh) | 流量负载均衡的方法和系统 | |
CN105207910A (zh) | 一种基于粒子群优化的电力通信网路由优化方法 | |
CN107835130A (zh) | 一种流量分配方法及装置 | |
CN107947988A (zh) | 一种实时通信网络仿真系统 | |
CN108880909B (zh) | 一种基于强化学习的网络节能方法及装置 | |
CN107347023A (zh) | 一种面向节点请求可靠性的sdn控制器部署方法 | |
CN107453786B (zh) | 一种电力通信网络模型建立方法及装置 | |
CN105247823A (zh) | 调整链路开销的方法和装置 | |
CN101986608A (zh) | 一种异构覆盖网络负载均衡程度的评价方法 | |
Sun et al. | Online pre-analysis and real-time matching for controlled splitting of large-scale power networks |
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 |