CN108600393B - 一种基于命名数据的物联网数据通信方法 - Google Patents

一种基于命名数据的物联网数据通信方法 Download PDF

Info

Publication number
CN108600393B
CN108600393B CN201810542141.4A CN201810542141A CN108600393B CN 108600393 B CN108600393 B CN 108600393B CN 201810542141 A CN201810542141 A CN 201810542141A CN 108600393 B CN108600393 B CN 108600393B
Authority
CN
China
Prior art keywords
data
message
query
node
table entry
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
Application number
CN201810542141.4A
Other languages
English (en)
Other versions
CN108600393A (zh
Inventor
王晓喃
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Changshu Institute of Technology
Original Assignee
Changshu Institute of Technology
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Changshu Institute of Technology filed Critical Changshu Institute of Technology
Priority to CN201810542141.4A priority Critical patent/CN108600393B/zh
Publication of CN108600393A publication Critical patent/CN108600393A/zh
Application granted granted Critical
Publication of CN108600393B publication Critical patent/CN108600393B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

本发明提供了一种基于命名数据的物联网数据通信方法,所述物联网包括一个以上的节点,每个节点配置一个无线接口;一种数据由一个数据ID唯一标识,数据ID为大于0的正整数;一个消息包含消息类型、数据ID、广播范围和负载域;用户通过本发明提供的方法能够快速获取数据,从而降低数据通信延迟和代价,提高服务质量。本发明可应用于智能家居、环境监测、路况监测等诸多领域,具有广泛的应用前景。

Description

一种基于命名数据的物联网数据通信方法
技术领域
本发明涉及一种通信方法,尤其涉及的是一种基于命名数据的物联网数据通信方法。
背景技术
物联网是一种新的服务模式。近年来,很多研究工作致力于物联网,以便用户人能够快速获取网络服务。随着网络技术的发展,物联网会成为未来提供服务的一种模式。目前,物联网的数据通信延迟和代价都比较大,降低了网络服务性能。因此,如何降低物联网提供服务的延迟和代价成为近年来研究的热点问题。
发明内容
发明目的:本发明所要解决的技术问题是针对现有技术的不足,提供了一种基于命名数据的物联网数据通信方法。本发明通过请求聚合的方式来实现物联网,从而降低物联网提供服务的延迟和代价,从而有效提高网络服务性能。
技术方案:本发明公开了一种基于命名数据的物联网数据通信方法,所述物联网包括一个以上的节点,每个节点配置一个无线接口;一种数据由一个数据ID唯一标识,例如电视剧,数据ID为大于0的正整数;
一个消息包含消息类型、数据ID、广播范围和负载域;
邻居消息的消息类型为1,邻居查询消息的消息类型为2,邻居数据消息的消息类型为3,查询消息的消息类型为4,数据消息的消息类型为5,二次查询消息的消息类型为6,二次数据消息的消息类型为7,数据创建消息的消息类型为8;
每个节点维护一个索引表,每个索引表项包含数据ID集合域和生命周期域;
每个节点维护一个存储表,每个存储表项包含数据ID域,数据域和生命周期域;
节点N1定期执行下述过程来建立索引表:
步骤101:开始;
步骤102:节点N1查看存储表并创建一个数据ID集合参数D1,参数D1的初始值为空;针对每一个存储表项,节点N1判断参数D1中是否包含该存储表项的数据ID域值,如果不包括,节点N1则将该存储表项的数据ID域值加入到参数D1中,否则节点N1不执行任何操作;
步骤103:节点N1发送邻居消息,该邻居消息的消息类型为1,数据ID域值为0,广播范围为1,负载为参数D1;
步骤104:邻居节点接收到该邻居消息后,将该邻居消息的广播范围递减1,查看索引表,如果存在一个索引表项,该索引表项的数据ID集合域值等于该邻居消息负载中的参数D1,则将该索引表项中的生命周期设置为最大值,例如500ms,否则该邻居节点创建一个索引表项,该索引表项的数据ID集合域值等于该邻居消息负载中的参数D1,生命周期为最大值;
步骤105:接收到该邻居消息的邻居节点判断该邻居消息的广播范围是否为0,如果是,则执行步骤107,否则执行步骤106;
步骤106:接收到该邻居消息的邻居节点转发该邻居消息,执行步骤104;
步骤107:结束;
如果节点检测到一个索引表项的生命周期衰减为0,则从索引表中删除该索引表项;
节点通过上述过程建立索引表,基于该索引表项的数据ID集合域,节点能够从邻居节点获取所需数据,从而大幅度降低了数据通信延迟和代价。
本发明所述方法中,数据C1由数据ID CID1标识,如果节点N1检测到自己的索引表中存在一个索引表项,且该索引表项的数据ID集合中包含数据ID CID1,则通过下述过程获取数据C1:
步骤201:开始;
步骤202:节点N1发送邻居查询消息,该邻居查询消息的消息类型为2,数据ID为CID1,广播范围为1,负载为空;
步骤203:邻居节点接收到邻居查询消息后,将该邻居查询消息的广播范围域值递减1,查看存储表;如果存在一个存储表项,该存储表项的数据ID等于该邻居查询消息的数据ID,则执行步骤206,否则执行步骤204;
步骤204:接收到邻居查询消息的邻居节点判断该邻居查询消息的广播范围是否等于0,如果是,则执行步骤207,否则执行步骤205;
步骤205:接收到邻居查询消息的邻居节点转发该邻居查询消息,执行步骤203;
步骤206:接收到邻居查询消息的邻居节点选择一个存储表项,该存储表项的数据ID等于该邻居查询消息的数据ID,该邻居节点发送一个邻居数据消息,该邻居数据消息的数据ID等于该邻居查询消息的数据ID,消息类型为3,广播范围域值为1,负载为该存储表项中的数据域值;
步骤207:接收到邻居数据消息的节点将该邻居数据消息的广播范围域值递减1,查看存储表,如果存在一个存储表项,该存储表项的数据ID等于该邻居数据消息的数据ID,则丢弃该邻居数据消息,否则,接收到邻居数据消息的节点创建一个存储表项,该存储表项的数据ID等于该邻居数据消息的数据ID,数据域值等于该邻居数据消息负载中的数据域值,生命周期设置为最大值,例如1h;
步骤208:接收到邻居数据消息的节点判断该邻居数据消息的广播范围域值是否等于0,如果是,则执行步骤210,否则执行步骤209;
步骤209:接收到邻居数据消息的节点转发该邻居数据消息,执行步骤207;
步骤210:结束;
如果节点检测到一个存储表项的生命周期衰减为0,则从存储表中删除该存储表项;
节点通过监测邻居表以获取能够提供目标数据的邻居表项,由于上述过程没有指定某个特定的邻居节点提供数据,因此所有能够提供目标数据的邻居节点均返回数据,从而确保节点能够接收到响应数据,解决了无线网络丢包率高的问题,也避免了节点由于数据通信失败而再次请求数据的情况,因此大幅度降低了数据通信延迟和代价。
本发明所述方法中,节点保存一个查询表,每个查询表项包含数据ID域、距离域和生命周期域;
数据C1由数据ID CID1标识;如果节点N1检测到自己的索引表中任何一个索引表项的数据ID集合中都不包含数据ID CID1,则通过下述过程获取数据C1:
步骤301:开始;
步骤302:节点N1设置一个参数h0,参数h0的初始值为常量X;常量X一般为大于5的正整数,常量X小于阈值TS1,X取值越大,查询消息和数据消息的广播范围越大;
步骤303:节点N1将参数h0的值递增1;如果参数h0的值大于阈值TS1,则执行步骤315,否则执行步骤304;阈值TS1为大于常量X的正整数;阈值TS1越大,查询消息和数据消息的广播范围越大;
步骤304:节点N1设置一个时钟TM1,节点N1发送一个查询消息,该查询消息的消息类型为4,数据ID为CID1,广播范围域值等于参数h0,负载为参数h0;
步骤305:接收到查询消息的节点将该查询消息的广播范围域值递减1,查看存储表,如果存在一个存储表项,该存储表项的数据ID等于该查询消息的数据ID,则执行步骤306,否则执行步骤307;
步骤306:接收到查询消息的节点选择一个存储表项,该存储表项的数据ID等于该查询消息的数据ID,该节点发送一个数据消息,该数据消息的数据ID等于该查询消息的数据ID,消息类型为5,广播范围域值等于该查询消息负载中的参数h0与该查询消息广播范围域值之差的绝对值,负载为该存储表项中的数据域值,执行步骤310;
步骤307:接收到查询消息的节点查看查询表,如果存在一个查询表项,该查询表项的数据ID等于该查询消息的数据ID,则执行步骤310,否则执行步骤308;
步骤308:接收到查询消息的节点创建一个查询表项,该查询表项的数据ID等于该查询消息的数据ID,距离域值等于该查询消息负载中的参数h0与该查询消息广播范围域值之差的绝对值,生命周期设置为最大值,例如1s;该节点判断该查询消息的广播范围域值是否为0,如果是,则执行步骤310,否则执行步骤309;
步骤309:接收到查询消息的节点转发接收到的查询消息,执行步骤305;
步骤310:接收到数据消息节点将该数据消息的广播范围域值递减1,查看查询表,如果存在一个查询表项,该查询表项的数据ID等于该数据消息的数据ID,则执行步骤311,否则执行步骤312;
步骤311:接收到数据消息的节点选择一个查询表项,该查询表项的数据ID等于该数据消息的数据ID,将该数据消息的广播范围域值更新为该查询表项的距离域值,删除该查询表项,转发该数据消息,执行步骤310;
步骤312:接收到数据消息的节点丢弃该数据消息;
步骤313:判断节点N1是否在时钟TM1规定的时间范围内接收到数据消息,如果是,则执行步骤314,否则执行步骤303;
步骤314:接收到数据消息的节点N1创建一个存储表项,该存储表项的数据ID等于该数据消息的数据ID,数据域值等于该数据消息负载中的数据域值,生命周期设置为最大值;
步骤315:结束;
节点通过存储表能够从距离最近的节点获取所需数据,因此降低了数据通信延迟,此外,车辆节点采用查询表实现了查询消息的聚合,因此多个节点能够通过一次数据通信过程获取数据,此外,有些节点能够从中间节点共享数据,因此进一步降低了数据通信延迟;由于上述过程中任何接收到查询消息且能提供目标数据的节点均能返回响应数据,因此提高了数据通信成功率,由于响应数据通过查询表自动返回到源节点,而无需建立路由,也无需维护路由信息,因此大幅度降低了数据通信和代价,提高了数据通信性能。
本发明所述方法中,数据C1由数据ID CID1标识;如果节点N2创建了数据C1,则通过下述过程发布数据C1:
步骤401:开始;
步骤402:节点N2创建一个存储表项,该存储表项的数据ID等于数据ID CID1,数据域值等于数据C1,生命周期设置为最大值;节点N2发送一个数据创建消息,该数据创建消息的数据ID等于数据ID CID1,消息类型为8,广播范围为常量X,负载为数据C1;
步骤403:接收到数据创建消息的节点将该数据创建消息的广播范围域值递减1,查看存储表,如果存在一个存储表项,该存储表项的数据ID等于该数据创建消息的数据ID,该节点则将该存储表项的数据域值更新为该数据创建消息负载中的数据,将生命周期设置为最大值;否则,该节点创建一个存储表项,该存储表项的数据ID等于该数据创建消息的数据ID,数据域值等于该数据创建消息负载中的数据,生命周期设置为最大值;
步骤404:接收到数据创建消息的节点查看查询表;如果存在一个查询表项,该查询表项的数据ID等于该数据创建消息的数据ID,则执行步骤405,否则执行步骤406;
步骤405:接收到数据创建消息的节点选择一个查询表项,该查询表项的数据ID等于该数据创建消息的数据ID,将该数据创建消息的广播范围域值更新为该查询表项的距离域值,删除该查询表项,转发该数据创建消息,执行步骤403;
步骤406:接收到数据创建消息的节点判断该数据创建消息的广播范围域值是否等于0,如果是,则执行步骤408,否则执行步骤407;
步骤407:接收到数据创建消息的节点转发该数据创建消息,执行步骤403;
步骤408:结束;
节点产生数据后通过上述过程进行发布,在数据发布过程中,节点通过查询表能够将该数据返回到请求该数据的节点,因此降低了节点获取数据的延迟,同时提高了节点获取数据的成功率,此外,某些节点无需发送查询消息即可获取响应数据,进一步降低了数据通信延迟,不仅解决了无线网络丢包率高的问题,也避免了节点由于数据通信失败而再次请求数据的情况。
本发明所述方法中,数据C1由数据ID CID1标识;如果节点N1检测到自己的索引表中任何一个索引表项的数据ID集合中都不包含CID1,并且执行301~315并没有获取数据C1,节点N1则通过下述过程获取数据C1:
步骤501:开始;
步骤502:节点N1设置一个参数h2,参数h2的初始值为常量X;,常量X一般为大于5的正整数;
步骤503:节点N1将参数h2的值递增1;如果参数h2的值大于阈值TS2,则执行步骤516,否则执行步骤504;阈值TS2为大于常量X的正整数;阈值TS2越大,二次查询消息和二次数据消息的广播范围越大;
步骤504:节点N1设置一个时钟TM2,发送二次查询消息,该二次查询消息的消息类型为6,数据ID为CID1,广播范围域值为参数h2,负载为参数h2;
步骤505:接收到二次查询消息的节点将该二次查询消息的广播范围域值递减1,查看存储表;如果存在一个存储表项,该存储表项的数据ID等于该二次查询消息的数据ID,则执行步骤506,否则执行步骤507;
步骤506:接收到二次查询消息的节点选择一个存储表项,该存储表项的数据ID等于该二次查询消息的数据ID,该节点发送一个二次数据消息,该二次数据消息的数据ID等于该二次查询消息的数据ID,消息类型为7,广播范围域值等于该二次查询消息负载中的参数h2与该二次查询消息广播范围域值之差的绝对值,负载为该存储表项中的数据域值,执行步骤510;
步骤507:接收到二次查询消息的节点查看查询表,如果存在一个查询表项,该查询表项的数据ID等于该二次查询消息的数据ID,则执行步骤510,否则执行步骤508;
步骤508:接收到二次查询消息的节点创建一个查询表项,该查询表项的数据ID等于该二次查询消息的数据ID,距离域值等于该二次查询消息负载中的参数h2与该二次查询消息广播范围域值之差的绝对值,生命周期设置为最大值,例如1s;该节点判断该二次查询消息的广播范围域值是否为0,如果是,则执行步骤510,否则执行步骤509;
步骤509:接收到二次查询消息的节点转发接收到的二次查询消息,执行步骤505;
步骤510:接收到二次数据消息的节点,将该二次数据消息的广播范围域值递减1,查看查询表;如果存在一个查询表项,该查询表项的数据ID等于该二次数据消息的数据ID,则执行步骤511,否则执行步骤512;
步骤511:接收到二次数据消息的节点选择一个查询表项,该查询表项的数据ID等于该二次数据消息的数据ID,将该二次数据消息的广播范围域值更新为该查询表项的距离域值,删除该查询表项,转发该二次数据消息,执行步骤510;
步骤512:接收到二次数据消息的节点查看该二次数据消息的广播范围域值是否为0,如果是,则执行步骤514,否则执行步骤513;
步骤513:接收到二次数据消息的节点转发该二次数据消息,执行步骤510;
步骤514:判断节点N1是否在时钟TM2规定的时间范围内接收到二次数据消息,如果是,则执行步骤515,否则执行步骤503;
步骤515:接收到二次数据消息的节点N1创建一个存储表项,该存储表项的数据ID等于该二次数据消息的数据ID,数据域值等于该二次数据消息负载中的数据域值,生命周期设置为最大值;
步骤516:结束。
为了确保节点能够获取所需数据,节点通过存储表能够从距离最近的车辆节点获取所需数据,此外,由于在查询消息经过的所有中间节点均能够返回数据,同时,响应数据能够根据二次查询消息中的广播范围进行传输,因此节点无需发送请求消息即可获取响应数据,降低了数据通信延迟,此外,车辆节点采用查询表实现了查询消息的聚合,多个节点通过一次数据通信过程能够同时获取数据,部分节点能够从中间节点共享数据,因此进一步降低了数据通信延迟;由于上述过程中任何接收到二次查询消息且能提供目标数据的节点均能返回响应数据,因此提高了数据通信成功率,解决了无线网络丢包率高的问题,也避免了车辆节点由于数据通信失败而再次请求数据的情况,因此大幅度降低了数据通信延迟和代价。由于响应数据通过查询表自动返回到源节点,无需建立路由,也无需维护路由信息,因此大幅度降低了数据通信和代价,提高了数据通信性能。
有益效果:本发明提供了一种基于命名数据的物联网数据通信方法,用户通过本发明提供的方法能够快速获取数据,从而降低数据通信延迟和代价,提高服务质量。本发明可应用于智能家居、环境监测、路况监测等诸多领域,具有广泛的应用前景。
附图说明
下面结合附图和具体实施方式对本发明做更进一步的具体说明,本发明的上述和/或其他方面的优点将会变得更加清楚。
图1为本发明所述的建立索引表流程示意图。
图2为本发明所述的本地获取数据流程示意图。
图3为本发明所述的远程数据通信流程示意图。
图4为本发明所述的发布数据流程示意图。
图5为本发明所述的远程获取数据流程示意图。
具体实施方式:
本发明提供了一种基于命名数据的物联网数据通信方法,用户通过本发明提供的方法能够快速获取数据,从而降低数据通信延迟和代价,提高服务质量。本发明可应用于智能家居、环境监测、路况监测等诸多领域,具有广泛的应用前景。
图1为本发明所述的建立索引表流程示意图。所述物联网包括一个以上的节点,每个节点配置一个无线接口;一种数据由一个数据ID唯一标识,数据ID为大于0的正整数;
一个消息包含消息类型、数据ID、广播范围和负载域;
邻居消息的消息类型为1,邻居查询消息的消息类型为2,邻居数据消息的消息类型为3,查询消息的消息类型为4,数据消息的消息类型为5,二次查询消息的消息类型为6,二次数据消息的消息类型为7,数据创建消息的消息类型为8;
每个节点维护一个索引表,每个索引表项包含数据ID集合域和生命周期域;
每个节点维护一个存储表,每个存储表项包含数据ID域,数据域和生命周期域;
节点N1定期执行下述过程来建立索引表:
步骤101:开始;
步骤102:节点N1查看存储表并创建一个数据ID集合参数D1,参数D1的初始值为空;针对每一个存储表项,节点N1判断参数D1中是否包含该存储表项的数据ID域值,如果不包括,节点N1则将该存储表项的数据ID域值加入到参数D1中,否则节点N1不执行任何操作;
步骤103:节点N1发送邻居消息,该邻居消息的消息类型为1,数据ID域值为0,广播范围为1,负载为参数D1;
步骤104:邻居节点接收到该邻居消息后,将该邻居消息的广播范围递减1,查看索引表,如果存在一个索引表项,该索引表项的数据ID集合域值等于该邻居消息负载中的参数D1,则将该索引表项中的生命周期设置为最大值,否则该邻居节点创建一个索引表项,该索引表项的数据ID集合域值等于该邻居消息负载中的参数D1,生命周期为最大值;
步骤105:接收到该邻居消息的邻居节点判断该邻居消息的广播范围是否为0,如果是,则执行步骤107,否则执行步骤106;
步骤106:接收到该邻居消息的邻居节点转发该邻居消息,执行步骤104;
步骤107:结束;
如果节点检测到一个索引表项的生命周期衰减为0,则从索引表中删除该索引表项。
图2为本发明所述的本地获取数据流程示意图。数据C1由数据ID CID1标识,如果节点N1检测到自己的索引表中存在一个索引表项,且该索引表项的数据ID集合中包含数据ID CID1,则通过下述过程获取数据C1:
步骤201:开始;
步骤202:节点N1发送邻居查询消息,该邻居查询消息的消息类型为2,数据ID为CID1,广播范围为1,负载为空;
步骤203:邻居节点接收到邻居查询消息后,将该邻居查询消息的广播范围域值递减1,查看存储表;如果存在一个存储表项,该存储表项的数据ID等于该邻居查询消息的数据ID,则执行步骤206,否则执行步骤204;
步骤204:接收到邻居查询消息的邻居节点判断该邻居查询消息的广播范围是否等于0,如果是,则执行步骤207,否则执行步骤205;
步骤205:接收到邻居查询消息的邻居节点转发该邻居查询消息,执行步骤203;
步骤206:接收到邻居查询消息的邻居节点选择一个存储表项,该存储表项的数据ID等于该邻居查询消息的数据ID,该邻居节点发送一个邻居数据消息,该邻居数据消息的数据ID等于该邻居查询消息的数据ID,消息类型为3,广播范围域值为1,负载为该存储表项中的数据域值;
步骤207:接收到邻居数据消息的节点将该邻居数据消息的广播范围域值递减1,查看存储表,如果存在一个存储表项,该存储表项的数据ID等于该邻居数据消息的数据ID,则丢弃该邻居数据消息,否则,接收到邻居数据消息的节点创建一个存储表项,该存储表项的数据ID等于该邻居数据消息的数据ID,数据域值等于该邻居数据消息负载中的数据域值,生命周期设置为最大值;
步骤208:接收到邻居数据消息的节点判断该邻居数据消息的广播范围域值是否等于0,如果是,则执行步骤210,否则执行步骤209;
步骤209:接收到邻居数据消息的节点转发该邻居数据消息,执行步骤207;
步骤210:结束;
如果节点检测到一个存储表项的生命周期衰减为0,则从存储表中删除该存储表项。
图3为本发明所述的远程数据通信流程示意图。节点保存一个查询表,每个查询表项包含数据ID域、距离域和生命周期域;
数据C1由数据ID CID1标识;如果节点N1检测到自己的索引表中任何一个索引表项的数据ID集合中都不包含数据ID CID1,则通过下述过程获取数据C1:
步骤301:开始;
步骤302:节点N1设置一个参数h0,参数h0的初始值为常量X;
步骤303:节点N1将参数h0的值递增1;如果参数h0的值大于阈值TS1,则执行步骤315,否则执行步骤304;阈值TS1为大于常量X的正整数;
步骤304:节点N1设置一个时钟TM1,节点N1发送一个查询消息,该查询消息的消息类型为4,数据ID为CID1,广播范围域值等于参数h0,负载为参数h0;
步骤305:接收到查询消息的节点将该查询消息的广播范围域值递减1,查看存储表,如果存在一个存储表项,该存储表项的数据ID等于该查询消息的数据ID,则执行步骤306,否则执行步骤307;
步骤306:接收到查询消息的节点选择一个存储表项,该存储表项的数据ID等于该查询消息的数据ID,该节点发送一个数据消息,该数据消息的数据ID等于该查询消息的数据ID,消息类型为5,广播范围域值等于该查询消息负载中的参数h0与该查询消息广播范围域值之差的绝对值,负载为该存储表项中的数据域值,执行步骤310;
步骤307:接收到查询消息的节点查看查询表,如果存在一个查询表项,该查询表项的数据ID等于该查询消息的数据ID,则执行步骤310,否则执行步骤308;
步骤308:接收到查询消息的节点创建一个查询表项,该查询表项的数据ID等于该查询消息的数据ID,距离域值等于该查询消息负载中的参数h0与该查询消息广播范围域值之差的绝对值,生命周期设置为最大值;该节点判断该查询消息的广播范围域值是否为0,如果是,则执行步骤310,否则执行步骤309;
步骤309:接收到查询消息的节点转发接收到的查询消息,执行步骤305;
步骤310:接收到数据消息节点将该数据消息的广播范围域值递减1,查看查询表,如果存在一个查询表项,该查询表项的数据ID等于该数据消息的数据ID,则执行步骤311,否则执行步骤312;
步骤311:接收到数据消息的节点选择一个查询表项,该查询表项的数据ID等于该数据消息的数据ID,将该数据消息的广播范围域值更新为该查询表项的距离域值,删除该查询表项,转发该数据消息,执行步骤310;
步骤312:接收到数据消息的节点丢弃该数据消息;
步骤313:判断节点N1是否在时钟TM1规定的时间范围内接收到数据消息,如果是,则执行步骤314,否则执行步骤303;
步骤314:接收到数据消息的节点N1创建一个存储表项,该存储表项的数据ID等于该数据消息的数据ID,数据域值等于该数据消息负载中的数据域值,生命周期设置为最大值;
步骤315:结束。
图4为本发明所述的发布数据流程示意图。数据C1由数据ID CID1标识;如果节点N2创建了数据C1,则通过下述过程发布数据C1:
步骤401:开始;
步骤402:节点N2创建一个存储表项,该存储表项的数据ID等于数据ID CID1,数据域值等于数据C1,生命周期设置为最大值;节点N2发送一个数据创建消息,该数据创建消息的数据ID等于数据ID CID1,消息类型为8,广播范围为常量X,负载为数据C1;
步骤403:接收到数据创建消息的节点将该数据创建消息的广播范围域值递减1,查看存储表,如果存在一个存储表项,该存储表项的数据ID等于该数据创建消息的数据ID,该节点则将该存储表项的数据域值更新为该数据创建消息负载中的数据,将生命周期设置为最大值;否则,该节点创建一个存储表项,该存储表项的数据ID等于该数据创建消息的数据ID,数据域值等于该数据创建消息负载中的数据,生命周期设置为最大值;
步骤404:接收到数据创建消息的节点查看查询表;如果存在一个查询表项,该查询表项的数据ID等于该数据创建消息的数据ID,则执行步骤405,否则执行步骤406;
步骤405:接收到数据创建消息的节点选择一个查询表项,该查询表项的数据ID等于该数据创建消息的数据ID,将该数据创建消息的广播范围域值更新为该查询表项的距离域值,删除该查询表项,转发该数据创建消息,执行步骤403;
步骤406:接收到数据创建消息的节点判断该数据创建消息的广播范围域值是否等于0,如果是,则执行步骤408,否则执行步骤407;
步骤407:接收到数据创建消息的节点转发该数据创建消息,执行步骤403;
步骤408:结束。
图5为本发明所述的远程获取数据流程示意图。数据C1由数据ID CID1标识;如果节点N1检测到自己的索引表中任何一个索引表项的数据ID集合中都不包含CID1,并且执行301~315并没有获取数据C1,节点N1则通过下述过程获取数据C1:
步骤501:开始;
步骤502:节点N1设置一个参数h2,参数h2的初始值为常量X;
步骤503:节点N1将参数h2的值递增1;如果参数h2的值大于阈值TS2,则执行步骤516,否则执行步骤504;阈值TS2为大于常量X的正整数;
步骤504:节点N1设置一个时钟TM2,发送二次查询消息,该二次查询消息的消息类型为6,数据ID为CID1,广播范围域值为参数h2,负载为参数h2;
步骤505:接收到二次查询消息的节点将该二次查询消息的广播范围域值递减1,查看存储表;如果存在一个存储表项,该存储表项的数据ID等于该二次查询消息的数据ID,则执行步骤506,否则执行步骤507;
步骤506:接收到二次查询消息的节点选择一个存储表项,该存储表项的数据ID等于该二次查询消息的数据ID,该节点发送一个二次数据消息,该二次数据消息的数据ID等于该二次查询消息的数据ID,消息类型为7,广播范围域值等于该二次查询消息负载中的参数h2与该二次查询消息广播范围域值之差的绝对值,负载为该存储表项中的数据域值,执行步骤510;
步骤507:接收到二次查询消息的节点查看查询表,如果存在一个查询表项,该查询表项的数据ID等于该二次查询消息的数据ID,则执行步骤510,否则执行步骤508;
步骤508:接收到二次查询消息的节点创建一个查询表项,该查询表项的数据ID等于该二次查询消息的数据ID,距离域值等于该二次查询消息负载中的参数h2与该二次查询消息广播范围域值之差的绝对值,生命周期设置为最大值;该节点判断该二次查询消息的广播范围域值是否为0,如果是,则执行步骤510,否则执行步骤509;
步骤509:接收到二次查询消息的节点转发接收到的二次查询消息,执行步骤505;
步骤510:接收到二次数据消息的节点,将该二次数据消息的广播范围域值递减1,查看查询表;如果存在一个查询表项,该查询表项的数据ID等于该二次数据消息的数据ID,则执行步骤511,否则执行步骤512;
步骤511:接收到二次数据消息的节点选择一个查询表项,该查询表项的数据ID等于该二次数据消息的数据ID,将该二次数据消息的广播范围域值更新为该查询表项的距离域值,删除该查询表项,转发该二次数据消息,执行步骤510;
步骤512:接收到二次数据消息的节点查看该二次数据消息的广播范围域值是否为0,如果是,则执行步骤514,否则执行步骤513;
步骤513:接收到二次数据消息的节点转发该二次数据消息,执行步骤510;
步骤514:判断节点N1是否在时钟TM2规定的时间范围内接收到二次数据消息,如果是,则执行步骤515,否则执行步骤503;
步骤515:接收到二次数据消息的节点N1创建一个存储表项,该存储表项的数据ID等于该二次数据消息的数据ID,数据域值等于该二次数据消息负载中的数据域值,生命周期设置为最大值;
步骤516:结束。
实施例1
基于表1的仿真参数,本实施例模拟了本发明中的一种基于命名数据的物联网数据通信方法,网络启动后,每个节点执行步骤101-107建立索引表;如果节点创建了一种数据,则执行步骤401-408进行发布数据操作;如果一个节点通过索引表检测到邻居节点能够提供所需数据,则通过执行步骤201-210获取数据;如果节点无法通过邻居节点获取数据,则通过执行步骤301-315获取数据,如果节点通过步骤301-315仍然无法获取数据,则执行步骤501-516获取数据。该通信方法的性能分析如下:当节点移动速度增加时,网络性能下降,数据通信延迟有所增加,当节点移动速度降低时,网络性能增强,数据通信延迟降低,数据获取的平均延迟为0.46s。
表1仿真参数
Figure BDA0001679130620000111
本发明提供了一种基于命名数据的物联网数据通信方法的思路,具体实现该技术方案的方法和途径很多,以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。本实施例中未明确的各组成部份均可用现有技术加以实现。

Claims (5)

1.一种基于命名数据的物联网数据通信方法,其特征在于,所述物联网包括一个以上的节点,每个节点配置一个无线接口;一种数据由一个数据ID唯一标识,数据ID为大于0的正整数;
一个消息包含消息类型、数据ID、广播范围和负载域;
邻居消息的消息类型为1,邻居查询消息的消息类型为2,邻居数据消息的消息类型为3,查询消息的消息类型为4,数据消息的消息类型为5,二次查询消息的消息类型为6,二次数据消息的消息类型为7,数据创建消息的消息类型为8;
每个节点维护一个索引表,每个索引表项包含数据ID集合域和生命周期域;
每个节点维护一个存储表,每个存储表项包含数据ID域,数据域和生命周期域;
节点N1定期执行下述过程来建立索引表:
步骤101:开始;
步骤102:节点N1查看存储表并创建一个数据ID集合参数D1,参数D1的初始值为空;针对每一个存储表项,节点N1判断参数D1中是否包含该存储表项的数据ID域值,如果不包括,节点N1则将该存储表项的数据ID域值加入到参数D1中,否则节点N1不执行任何操作;
步骤103:节点N1发送邻居消息,该邻居消息的消息类型为1,数据ID域值为0,广播范围为1,负载为参数D1;
步骤104:邻居节点接收到该邻居消息后,将该邻居消息的广播范围递减1,查看索引表,如果存在一个索引表项,该索引表项的数据ID集合域值等于该邻居消息负载中的参数D1,则将该索引表项中的生命周期设置为最大值,否则该邻居节点创建一个索引表项,该索引表项的数据ID集合域值等于该邻居消息负载中的参数D1,生命周期为最大值;
步骤105:接收到该邻居消息的邻居节点判断该邻居消息的广播范围是否为0,如果是,则执行步骤107,否则执行步骤106;
步骤106:接收到该邻居消息的邻居节点转发该邻居消息,执行步骤104;
步骤107:结束;
如果节点检测到一个索引表项的生命周期衰减为0,则从索引表中删除该索引表项。
2.根据权利要求1所述的一种基于命名数据的物联网数据通信方法,其特征在于,数据C1由数据ID CID1标识,如果节点N1检测到自己的索引表中存在一个索引表项,且该索引表项的数据ID集合中包含数据ID CID1,则通过下述过程获取数据C1:
步骤201:开始;
步骤202:节点N1发送邻居查询消息,该邻居查询消息的消息类型为2,数据ID为CID1,广播范围域值为1,负载为空;
步骤203:邻居节点接收到邻居查询消息后,将该邻居查询消息的广播范围域值递减1,查看存储表;如果存在一个存储表项,该存储表项的数据ID等于该邻居查询消息的数据ID,则执行步骤206,否则执行步骤204;
步骤204:接收到邻居查询消息的邻居节点判断该邻居查询消息的广播范围域值是否等于0,如果是,则执行步骤207,否则执行步骤205;
步骤205:接收到邻居查询消息的邻居节点转发该邻居查询消息,执行步骤203;
步骤206:接收到邻居查询消息的邻居节点选择一个存储表项,该存储表项的数据ID等于该邻居查询消息的数据ID,该邻居节点发送一个邻居数据消息,该邻居数据消息的数据ID等于该邻居查询消息的数据ID,消息类型为3,广播范围域值为1,负载为该存储表项中的数据域值;
步骤207:接收到邻居数据消息的节点将该邻居数据消息的广播范围域值递减1,查看存储表,如果存在一个存储表项,该存储表项的数据ID等于该邻居数据消息的数据ID,则丢弃该邻居数据消息,否则,接收到邻居数据消息的节点创建一个存储表项,该存储表项的数据ID等于该邻居数据消息的数据ID,数据域值等于该邻居数据消息负载中的数据域值,生命周期设置为最大值;
步骤208:接收到邻居数据消息的节点判断该邻居数据消息的广播范围域值是否等于0,如果是,则执行步骤210,否则执行步骤209;
步骤209:接收到邻居数据消息的节点转发该邻居数据消息,执行步骤207;
步骤210:结束;
如果节点检测到一个存储表项的生命周期衰减为0,则从存储表中删除该存储表项。
3.根据权利要求1所述的一种基于命名数据的物联网数据通信方法,其特征在于,
节点保存一个查询表,每个查询表项包含数据ID域、距离域和生命周期域;
数据C1由数据ID CID1标识;如果节点N1检测到自己的索引表中任何一个索引表项的数据ID集合中都不包含数据ID CID1,则通过下述过程获取数据C1:
步骤301:开始;
步骤302:节点N1设置一个参数h0,参数h0的初始值为常量X;
步骤303:节点N1将参数h0的值递增1;如果参数h0的值大于阈值TS1,则执行步骤315,否则执行步骤304;阈值TS1为大于常量X的正整数;
步骤304:节点N1设置一个时钟TM1,节点N1发送一个查询消息,该查询消息的消息类型为4,数据ID为CID1,广播范围域值等于参数h0,负载为参数h0;
步骤305:接收到查询消息的节点将该查询消息的广播范围域值递减1,查看存储表,如果存在一个存储表项,该存储表项的数据ID等于该查询消息的数据ID,则执行步骤306,否则执行步骤307;
步骤306:接收到查询消息的节点选择一个存储表项,该存储表项的数据ID等于该查询消息的数据ID,该节点发送一个数据消息,该数据消息的数据ID等于该查询消息的数据ID,消息类型为5,广播范围域值等于该查询消息负载中的参数h0与该查询消息广播范围域值之差的绝对值,负载为该存储表项中的数据域值,执行步骤310;
步骤307:接收到查询消息的节点查看查询表,如果存在一个查询表项,该查询表项的数据ID等于该查询消息的数据ID,则执行步骤310,否则执行步骤308;
步骤308:接收到查询消息的节点创建一个查询表项,该查询表项的数据ID等于该查询消息的数据ID,距离域值等于该查询消息负载中的参数h0与该查询消息广播范围域值之差的绝对值,生命周期设置为最大值;该节点判断该查询消息的广播范围域值是否为0,如果是,则执行步骤310,否则执行步骤309;
步骤309:接收到查询消息的节点转发接收到的查询消息,执行步骤305;
步骤310:接收到数据消息节点将该数据消息的广播范围域值递减1,查看查询表,如果存在一个查询表项,该查询表项的数据ID等于该数据消息的数据ID,则执行步骤311,否则执行步骤312;
步骤311:接收到数据消息的节点选择一个查询表项,该查询表项的数据ID等于该数据消息的数据ID,将该数据消息的广播范围域值更新为该查询表项的距离域值,删除该查询表项,转发该数据消息,执行步骤310;
步骤312:接收到数据消息的节点丢弃该数据消息;
步骤313:判断节点N1是否在时钟TM1规定的时间范围内接收到数据消息,如果是,则执行步骤314,否则执行步骤303;
步骤314:接收到数据消息的节点N1创建一个存储表项,该存储表项的数据ID等于该数据消息的数据ID,数据域值等于该数据消息负载中的数据域值,生命周期设置为最大值;
步骤315:结束。
4.根据权利要求1所述的一种基于命名数据的物联网数据通信方法,其特征在于,
数据C1由数据ID CID1标识;如果节点N2创建了数据C1,则通过下述过程发布数据C1:
步骤401:开始;
步骤402:节点N2创建一个存储表项,该存储表项的数据ID等于数据ID CID1,数据域值等于数据C1,生命周期设置为最大值;节点N2发送一个数据创建消息,该数据创建消息的数据ID等于数据ID CID1,消息类型为8,广播范围域值为常量X,负载为数据C1;
步骤403:接收到数据创建消息的节点将该数据创建消息的广播范围域值递减1,查看存储表,如果存在一个存储表项,该存储表项的数据ID等于该数据创建消息的数据ID,该节点则将该存储表项的数据域值更新为该数据创建消息负载中的数据,将生命周期设置为最大值;否则,该节点创建一个存储表项,该存储表项的数据ID等于该数据创建消息的数据ID,数据域值等于该数据创建消息负载中的数据,生命周期设置为最大值;
步骤404:接收到数据创建消息的节点查看查询表;如果存在一个查询表项,该查询表项的数据ID等于该数据创建消息的数据ID,则执行步骤405,否则执行步骤406;
步骤405:接收到数据创建消息的节点选择一个查询表项,该查询表项的数据ID等于该数据创建消息的数据ID,将该数据创建消息的广播范围域值更新为该查询表项的距离域值,删除该查询表项,转发该数据创建消息,执行步骤403;
步骤406:接收到数据创建消息的节点判断该数据创建消息的广播范围域值是否等于0,如果是,则执行步骤408,否则执行步骤407;
步骤407:接收到数据创建消息的节点转发该数据创建消息,执行步骤403;
步骤408:结束。
5.根据权利要求3所述的一种基于命名数据的物联网数据通信方法,其特征在于,数据C1由数据ID CID1标识;如果节点N1检测到自己的索引表中任何一个索引表项的数据ID集合中都不包含CID1,并且执行步骤301~315并没有获取数据C1,节点N1则通过下述过程获取数据C1:
步骤501:开始;
步骤502:节点N1设置一个参数h2,参数h2的初始值为常量X;
步骤503:节点N1将参数h2的值递增1;如果参数h2的值大于阈值TS2,则执行步骤516,否则执行步骤504;阈值TS2为大于常量X的正整数;
步骤504:节点N1设置一个时钟TM2,发送二次查询消息,该二次查询消息的消息类型为6,数据ID为CID1,广播范围域值为参数h2,负载为参数h2;
步骤505:接收到二次查询消息的节点将该二次查询消息的广播范围域值递减1,查看存储表;如果存在一个存储表项,该存储表项的数据ID等于该二次查询消息的数据ID,则执行步骤506,否则执行步骤507;
步骤506:接收到二次查询消息的节点选择一个存储表项,该存储表项的数据ID等于该二次查询消息的数据ID,该节点发送一个二次数据消息,该二次数据消息的数据ID等于该二次查询消息的数据ID,消息类型为7,广播范围域值等于该二次查询消息负载中的参数h2与该二次查询消息广播范围域值之差的绝对值,负载为该存储表项中的数据域值,执行步骤510;
步骤507:接收到二次查询消息的节点查看查询表,如果存在一个查询表项,该查询表项的数据ID等于该二次查询消息的数据ID,则执行步骤510,否则执行步骤508;
步骤508:接收到二次查询消息的节点创建一个查询表项,该查询表项的数据ID等于该二次查询消息的数据ID,距离域值等于该二次查询消息负载中的参数h2与该二次查询消息广播范围域值之差的绝对值,生命周期设置为最大值;该节点判断该二次查询消息的广播范围域值是否为0,如果是,则执行步骤510,否则执行步骤509;
步骤509:接收到二次查询消息的节点转发接收到的二次查询消息,执行步骤505;
步骤510:接收到二次数据消息的节点,将该二次数据消息的广播范围域值递减1,查看查询表;如果存在一个查询表项,该查询表项的数据ID等于该二次数据消息的数据ID,则执行步骤511,否则执行步骤512;
步骤511:接收到二次数据消息的节点选择一个查询表项,该查询表项的数据ID等于该二次数据消息的数据ID,将该二次数据消息的广播范围域值更新为该查询表项的距离域值,删除该查询表项,转发该二次数据消息,执行步骤510;
步骤512:接收到二次数据消息的节点查看该二次数据消息的广播范围域值是否为0,如果是,则执行步骤514,否则执行步骤513;
步骤513:接收到二次数据消息的节点转发该二次数据消息,执行步骤510;
步骤514:判断节点N1是否在时钟TM2规定的时间范围内接收到二次数据消息,如果是,则执行步骤515,否则执行步骤503;
步骤515:接收到二次数据消息的节点N1创建一个存储表项,该存储表项的数据ID等于该二次数据消息的数据ID,数据域值等于该二次数据消息负载中的数据域值,生命周期设置为最大值;
步骤516:结束。
CN201810542141.4A 2018-05-30 2018-05-30 一种基于命名数据的物联网数据通信方法 Active CN108600393B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810542141.4A CN108600393B (zh) 2018-05-30 2018-05-30 一种基于命名数据的物联网数据通信方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810542141.4A CN108600393B (zh) 2018-05-30 2018-05-30 一种基于命名数据的物联网数据通信方法

Publications (2)

Publication Number Publication Date
CN108600393A CN108600393A (zh) 2018-09-28
CN108600393B true CN108600393B (zh) 2020-08-18

Family

ID=63630311

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810542141.4A Active CN108600393B (zh) 2018-05-30 2018-05-30 一种基于命名数据的物联网数据通信方法

Country Status (1)

Country Link
CN (1) CN108600393B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109768932B (zh) * 2019-03-04 2020-12-11 常熟理工学院 一种命名数据网络的实现方法

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104579974A (zh) * 2014-12-22 2015-04-29 湖南大学 面向ndn中名字查找的哈希布鲁姆过滤器及数据转发方法
CN104836737A (zh) * 2015-03-27 2015-08-12 北京邮电大学 以命名数据为中心的物联网通信方法
WO2015048773A3 (en) * 2013-09-30 2015-11-19 Northeastern University System and method for joint dynamic forwarding and caching in content distribution networks
CN105681438A (zh) * 2016-01-26 2016-06-15 南京航空航天大学 内容中心网络中一种集中式的缓存决策策略
CN106502993A (zh) * 2016-11-28 2017-03-15 北京交通大学 命名数据网络的多维命名支持方法
CN106713515A (zh) * 2017-03-29 2017-05-24 常熟理工学院 一种物联网数据传输方法
CN106792978A (zh) * 2017-03-29 2017-05-31 常熟理工学院 一种基于云的智能车联网数据通信方法
CN107124470A (zh) * 2017-06-08 2017-09-01 天津大学 基于命名数据网的车联网架构及网络层通信方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8965845B2 (en) * 2012-12-07 2015-02-24 International Business Machines Corporation Proactive data object replication in named data networks

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015048773A3 (en) * 2013-09-30 2015-11-19 Northeastern University System and method for joint dynamic forwarding and caching in content distribution networks
CN104579974A (zh) * 2014-12-22 2015-04-29 湖南大学 面向ndn中名字查找的哈希布鲁姆过滤器及数据转发方法
CN104836737A (zh) * 2015-03-27 2015-08-12 北京邮电大学 以命名数据为中心的物联网通信方法
CN105681438A (zh) * 2016-01-26 2016-06-15 南京航空航天大学 内容中心网络中一种集中式的缓存决策策略
CN106502993A (zh) * 2016-11-28 2017-03-15 北京交通大学 命名数据网络的多维命名支持方法
CN106713515A (zh) * 2017-03-29 2017-05-24 常熟理工学院 一种物联网数据传输方法
CN106792978A (zh) * 2017-03-29 2017-05-31 常熟理工学院 一种基于云的智能车联网数据通信方法
CN107124470A (zh) * 2017-06-08 2017-09-01 天津大学 基于命名数据网的车联网架构及网络层通信方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
"Data aggregation in named data networking";Sho Harada,et al;《TENCON 2017 - 2017 IEEE Region 10 Conference》;20171221;1-5 *
"下一代全IP无线传感器网络路由方案";王晓喃;《计算机应用研究》;20120806;2310-2312 *
"命名数据网络NDN的域间多路径路由机制";胡晓艳;《通信学报》;20151216;211-223 *

Also Published As

Publication number Publication date
CN108600393A (zh) 2018-09-28

Similar Documents

Publication Publication Date Title
CN109257789B (zh) 一种基于多跳簇的车载网数据通信方法
CN106993321B (zh) 一种基于簇的网络数据通信方法
JP2019506696A (ja) 資源取得方法および関係した装置
CN109088778B (zh) 一种未来移动网络的数据通信实现方法
WO2016202381A1 (en) Path setup in a mesh network
CN112953828A (zh) 一种基于物联网的环境监测***实现方法
CN108600393B (zh) 一种基于命名数据的物联网数据通信方法
CN112073531A (zh) 一种基于边缘计算的物联网实时监测***的实现方法
CN108601095B (zh) 一种多媒体传感网的实现方法
CN108696838B (zh) 一种基于位置信息的车载数据路由方法
CN110401911B (zh) 一种基于命名数据网络的车载云实现方法
CN108848477B (zh) 一种车载传感网的实现方法
CN109768893B (zh) 一种高效的大数据网络数据通信实现方法
CN110233889B (zh) 一种基于缓存机制的网络数据通信实现方法
CN110291839B (zh) 单播连接建立方法、装置及存储介质
CN108769138B (zh) 一种高效的车联网数据通信方法
CN107949000B (zh) 一种低延迟的机会网络实现方法
CN106209641A (zh) 一种报文处理的方法、***及装置
CN106535231B (zh) 一种面向5G用户为中心网络Cache部署的内容传送方法
CN109039901B (zh) 一种高效的数据网络路由实现方法
CN110719208B (zh) 一种基于最短路径的新一代网络实现方法
CN108770030B (zh) 一种下一代无线网络的数据通信方法
CN108965138B (zh) 一种新一代多媒体传感网的实现方法
CN110380971B (zh) 一种基于缓冲机制的网络数据通信方法
CN108462761B (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