专利摘要
本发明提供了一种基于物联网的数据通信方法,所述物联网中包含接入路由器、接入节点、传感器节点和执行节点;接入路由器与路由骨干网相连,接入节点配置一个有线接口与接入路由器相连,配置一个无线接口与传感器节点和执行节点相连;传感器节点用于采集数据,执行节点用于执行操作。用户通过该方法可实时查询目标对象节点所处环境的参数,并根据目标对象节点的状态及时向执行节点发送命令实现对目标对象节点的实时控制和调节,本发明可广泛用于农业环境监测和远程控制等领域。
权利要求
1.一种基于物联网的数据通信方法,其特征在于,所述物联网中包含接入路由器、接入节点、传感器节点和执行节点;接入路由器与路由骨干网相连,接入节点配置一个有线接口与接入路由器相连,配置一个无线接口与传感器节点和执行节点相连;传感器节点用于采集数据,执行节点用于执行操作;传感器节点或者执行节点配置一个无线接口,通过该无线接口与接入节点链路相连;一个接入节点与该接入节点链路相连的传感器节点和执行节点构成一个子网,该子网内的传感器节点和执行节点通过该接入节点实现通信;一个接入路由器和与该接入路由器相连的所有接入节点以及与所述接入节点链路相连的传感器节点和执行节点构成一个网络;
一个接入路由器由其硬件ID标识;一个传感器节点能采集一种类型的数据,该数据由一个数据ID唯一标识,该传感器节点由该数据ID唯一标识;一个执行节点能执行一种类型的命令,该命令由命令ID唯一标识,该执行节点由该命令ID唯一标识;
一个接入路由器、接入节点、传感器节点和执行节点配置一个具有全球唯一性的地址,该地址由网络前缀、子网ID、节点ID和内部ID构成;一个网络内所有接入节点、执行节点和传感器节点的网络前缀都相同,等于该网络内的接入路由器的网络前缀;接入路由器的网络前缀预先设置;
一个接入路由器的地址中,子网ID和内部ID为0,节点ID为1;
一个接入节点的地址中,网络前缀等于所在网络的接入路由器的网络前缀;子网ID等于接入节点的硬件ID,节点ID和内部ID为0;
一个传感器节点的地址中,网络前缀和子网ID等于所在子网的接入路由器的网络前缀和子网ID,节点ID等于自己所能采集数据的数据ID,内部ID为自己的硬件ID;
一个执行节点的地址中,网络前缀和子网ID等于所在子网的接入路由器的网络前缀和子网ID,节点ID等于自己所能执行命令的命令ID,内部ID为自己的硬件ID;
一个接入路由器定期广播信标消息,消息源地址为自己的地址;接入节点通过有线节点收到接入路由器广播的信标消息后,通过查看信标消息的源地址能够获取所在网络的网络前缀,接入节点将网络前缀与自己的子网ID相结合构成自己的地址,该地址的节点ID和内部ID为0;接入节点定期通过无线接口广播信标消息,该信标消息的源地址为自己的地址;
传感器节点或者执行节点启动接收到接入节点发送的第一个信标消息后,将自己的节点ID和内部ID与该信标消息的源地址中的网络前缀和子网ID相结合构成自己的地址,该地址做为永久地址,在传感器节点或者执行节点的整个生命周期内保持不变,该接入节点做为该传感器节点或者执行节点的永久接入节点;
当传感器节点或者执行节点脱离永久接入节点的通信范围与另外一个接入节点链路相连时,传感器节点或者执行节点能接收到该接入节点的信标消息,然后将自己的节点ID和内部ID与该信标消息的源地址中的网络前缀和子网ID相结合构成自己的地址,该地址做为暂时地址,该接入节点做为该传感器节点或者执行节点的暂时接入节点;
一个接入节点维护一个节点表,每个节点表包含永久地址域、暂时地址域、切换标识符和生命周期;当切换标识符为1时,表明该节点表表项所对应的节点已经完成移动切换,当切换标识符为0时,表明该节点表表项所对应的节点准备执行移动切换;
一个传感器节点或者执行节点定期广播信标消息,信标消息负载为它的永久地址,源地址为它当前的暂时地址;
在接入节点发送前一个信标消息和下一个信标消息的时间间隔内,对于接入节点从无线接口接收到的每一个信标消息,接入节点查看节点表,如果不存在永久地址等于该信标消息负载中的地址的节点表项,接入节点则创建一个节点表项,该节点表项的永久地址为信标消息负载中的地址,切换符号为0,暂时地址域为该信标消息的源地址,生存时间为最大生存时间;如果存在,则不做任何操作;
接入节点发送下一个信标消息后,执行下述操作:
步骤101:开始;
步骤102:接入节点查看节点表,选择所有切换标识为0的节点表项,根据所述节点表项的永久地址域值将所述节点表项分组,每个分组的节点表项中永久地址的网络前缀和子网ID都相同;
步骤103:接入节点对于每个分组执行下述操作:如果该分组中节点表项中永久地址的网络前缀和子网ID与该接入节点的网络前缀和子网ID都相同,则执行步骤104,否则执行步骤105;
步骤104:对于该分组中的每个节点表项,接入节点将节点表项中的切换标识设置为1,并将该节点表项的暂时地址域值设置为永久地址域值,执行步骤107;
步骤105:对于符合条件1的每个分组,接入节点执行下述操作:接入节点创建一个地址,该地址的网络前缀和子网ID等于该分组中节点表项的永久地址的网络前缀和子网ID,节点ID和内部ID为0;接入节点发送一个切换消息,该切换消息的源地址为自己的地址,目的地址为创建的地址,负载为该分组中每个节点表项的地址二元组<永久地址,暂时地址>集合;接入节点将分组中每个节点表项的切换标识设置为1;
条件1:该分组的节点表项中永久地址的网络前缀和子网ID与接入节点的网络前缀和子网ID不同;
步骤106:接入节点收到切换消息后,对于切换消息中的每个地址二元组进行如下操作:接入节点查看节点表,如果节点表中所有节点表项的永久地址都不等于切换消息中地址二元组中永久地址,那么该接入节点创建一个节点表项,该节点表项的永久地址和暂时地址分别为该地址二元组的永久地址和暂时地址,切换符号为1,生存时间为最大生存时间值;否则,接入节点选择永久地址等于该地址二元组中永久地址的节点表项,将该节点表项的暂时地址域值设置为地址二元组中的暂时地址域值,切换符号设置为1,生存时间为最大生存时间值;
步骤107:结束;
如果一个接入节点从无线接口接收到一个信标消息,接入节点查看节点表并选择暂时地址域值等于该信标消息源地址的节点表项,将该节点表项的生命时间设置为最大生命时间;如果一个接入节点检测到一个节点表项的生命周期衰减为0且该节点表项的永久地址的网络前缀和子网ID不等于该接入节点的网络前缀和子网ID,那么该接入节点删除该节点表项。
2.根据权利要求1所述的一种基于物联网的数据通信方法,其特征在于,一个接入节点保存一个三元组<传感器节点地址,执行器节点地址,报警地址>集合,在一个三元组中,如果传感器节点地址所标识的传感器节点检测到数据超出设定阈值,则激活执行器节点地址所标识的执行器节点,同时将该事件通知报警地址所标识的用户;
在传感器节点N1位于子网S1内,子网S1的接入节点为AP1的条件下,如果传感器节点N1检测到数据C1超出设定阈值,数据C1由数据ID由DID1标识,传感器节点N1则执行下述操作:
步骤201:开始;
步骤202:传感器节点N1发送报警消息,该报警消息的源地址为传感器节点N1的暂时地址,目的地址为接入节点AP1的地址,负载为报警信息;
步骤203:接入节点AP1收到报警消息后,查看保存的三元组集合,选择三元组集合中传感器节点地址等于报警消息源地址的三元组T1,如果该三元组中的执行器节点地址为0,则执行步骤204,否则执行步骤205;
步骤204:接入节点AP1发送报警消息,该报警消息的源地址为自己的地址,目的地址为三元组T1中的报警地址,负载为接收到的报警消息中的负载,目的节点收到报警消息后,执行步骤206;
步骤205:接入节点AP1查看节点表,选择永久地址等于三元组T1中执行器节点地址的节点表项,然后发送请求消息,该请求消息的源地址为接入节点AP1的源地址,目的地址为该节点表项的暂时地址;目的执行器节点收到请求消息后,执行请求消息目的地址中节点ID所标识的命令;
步骤206:结束。
3.根据权利要求1所述的一种基于物联网的数据通信方法,其特征在于,在传感器节点N1位于子网S1内,子网S1的接入节点为AP1,子网S2的接入节点为AP2,接入节点AP1和接入节点AP2在一个网络G1内,网络G1的接入路由器为AR1的条件下,如果传感器节点N1需要获取子网S2内数据ID集合E1标识的数据以及在子网S2内执行命令ID集合E2标识的操作,传感器节点N1则执行下述操作:
步骤301:开始;
步骤302:传感器节点N1发送请求消息,该请求消息的源地址为自己的地址,目的地址为接入节点AP2的地址,负载为数据ID集合E1和命令ID集合E2的并集;
步骤303:接入节点AP1收到请求消息后,将该请求消息转发到接入路由器AR1,接入路由器AR1将收到的请求消息转发到接入节点AP2;
步骤304:接入节点AP2接收到请求消息后,对于请求消息负载中的每个数据ID或者命令ID,接入节点AP2执行下述操作:接入节点查看节点表,选择所有永久地址中的节点ID等于该节点ID或者命令ID且网络前缀和子网ID等于自己的网络前缀和子网ID的节点表项,接入节点AP2发送请求消息,该请求消息的源地址是自己的地址,目的地址是该节点表项的暂时地址;如果请求消息的目的地址的节点ID为命令ID,那么目标执行器节点收到请求消息后,执行目的地址的节点ID所标识的命令;如果请求消息的目的地址的节点ID为数据ID,那么目标传感器节点收到请求消息后,返回响应消息,该响应消息的源地址为接收到的请求消息的目的地址,该响应消息的目的地址为接收到的请求消息的源地址,负载为请求消息目的地址的节点ID所标识的数据;
步骤305:接入节点AP2在设定时间内接收到所有的响应消息后,返回一个响应消息,该响应消息的源地址为接收到的请求消息的目的地址,该响应消息的目的地址为接收到的请求消息的源地址,负载为所有接收到的响应消息负载中的数据的并集;
步骤306:传感器节点N1接收到响应消息后,保存响应消息中的数据;
步骤307:结束。
4.根据权利要求3所述的一种基于物联网的数据通信方法,其特征在于,在传感器节点N1位于子网S1内,子网S1的接入节点为AP1,子网S2的接入节点为AP2,接入节点AP1和接入节点AP2在一个网络G1内,网络G1的接入路由器为AR1的条件下,如果传感器节点N1需要获取子网S2内所有的数据以及在子网S2内执行所有的操作,传感器节点N1则执行下述操作:
步骤401:开始;
步骤402:传感器节点N1发送请求消息,该请求消息的源地址为自己的地址,目的地址为接入节点AP2的地址,负载为空;
步骤403:接入节点AP1收到请求消息后,将该请求消息转发到接入路由器AR1,接入路由器AR1将收到的请求消息转发到接入节点AP2;
步骤404:接入节点AP2接收到请求消息后,查看节点表,选择所有永久地址的网络前缀与子网ID等于自己的网络前缀和子网ID的节点表项,对于每个选择的节点表项进行下述操作:接入节点AP2发送请求消息,该请求消息的源地址是接入节点AP2自己的地址,目的地址是该节点表项的暂时地址;如果该请求消息的目的地址的节点ID为命令ID,那么目标执行器节点收到该请求消息后,执行目的地址的节点ID所标识的命令;如果请求消息的目的地址的节点ID为数据ID,那么目标传感器节点收到请求消息后,返回响应消息,该响应消息的源地址为接收到的请求消息的目的地址,该响应消息的目的地址为接收到的请求消息的源地址,负载为请求消息目的地址的节点ID所标识的数据;
步骤405:接入节点AP2在规定时间内接收到所有的响应消息后,返回一个响应消息,该响应消息的源地址为接收到的请求消息的目的地址,该响应消息的目的地址为接收到的请求消息的源地址,负载为所有接收到的响应消息负载中的数据的并集;
步骤406:传感器节点N1接收到响应消息后,保存响应消息中的数据;
步骤407:结束。
5.根据权利要求4所述的一种基于物联网的数据通信方法,其特征在于,在传感器节点N1位于子网S1内,子网S1的接入节点为AP1,传感器节点或者执行器节点N2位于子网S2内,子网S2的接入节点为AP2,接入节点AP1和接入节点AP2在一个网络G1内,网络G1的接入路由器为AR1的条件下,如果传感器节点N1需要获取传感器节点N2的数据或者执行器节点N2执行操作,传感器节点N1则执行下述操作:
步骤501:开始;
步骤502:传感器节点N1发送请求消息,该请求消息的源地址为自己的地址,目的地址为传感器节点或者执行器节点N2的地址,负载为空;
步骤503:接入节点AP1收到请求消息后,将该请求消息转发到接入路由器AR1,接入路由器AR1将收到的请求消息转发到接入节点AP2;接入节点AP2接收到请求消息后,查看节点表,选择永久地址等于请求消息的目的地址的节点表项,将该请求消息的目的地址更新为该节点表项的暂时地址,然后转发该请求消息;
步骤504:传感器节点或者执行器节点N2收到请求消息,如果请求消息的目的地址的节点ID为数据ID,执行步骤505,否则执行步骤506;
步骤505:传感器节点N2返回响应消息,该响应消息的源地址为接收到的请求消息的目的地址,该响应消息的目的地址为接收到的请求消息的源地址,负载为请求消息目的地址的节点ID所标识的数据;传感器节点N1接收到响应消息后,保存响应消息中的数据,执行步骤507;
步骤506:执行器节点N2执行请求消息目的地址的节点ID所标识的命令;
步骤507:结束。
6.根据权利要求1所述的一种基于物联网的数据通信方法,其特征在于,在传感器节点N1位于子网S1内,子网S1的接入节点为AP1,传感器节点N3位于子网S3中,子网S3的接入节点为AP3,接入节点AP1位于网络G1内,网络G1的接入路由器为AR1,接入节点AP3位于网络G3内,网络G3的接入路由器为AR3的条件下,如果传感器节点N1需要获取传感器节点N3的数据或者执行器节点N3执行操作,传感器节点N1则执行下述操作:
步骤601:开始;
步骤602:传感器节点N1发送请求消息,该请求消息的源地址为自己的地址,目的地址为传感器节点或者执行器节点N3的地址,负载为空;
步骤603:接入节点AP1收到请求消息后,将该请求消息转发到接入路由器AR1,接入路由器AR1将收到的请求消息转发到接入路由器AR2,接入路由器AR2将接收到的请求消息转发到接入节点AP2;接入节点AP2接收到请求消息后,查看节点表,选择永久地址等于请求消息的目的地址的节点表项,将该请求消息的目的地址更新为该节点表项的暂时地址,转发该请求消息;
步骤604:传感器节点或者执行器节点N3收到请求消息,如果请求消息的目的地址的节点ID为数据ID,执行步骤605,否则执行步骤606;
步骤605:传感器节点N3返回响应消息,该响应消息的源地址为接收到的请求消息的目的地址,该响应消息的目的地址为接收到的请求消息的源地址,负载为请求消息目的地址的节点ID所标识的数据;传感器节点N1接收到响应消息后,保存响应消息中的数据,执行步骤607;
步骤606:执行器节点N3执行请求消息目的地址的节点ID所标识的命令;
步骤607:结束。
7.根据权利要求1所述的一种基于物联网的数据通信方法,其特征在于,在传感器节点N1位于子网S1内,子网S1的接入节点为AP1,传感器节点N3位于子网S3中,子网S3的接入节点为AP3,接入节点AP1位于网络G1内,网络G1的接入路由器为AR1,接入节点AP3位于网络G3内,网络G3的接入路由器为AR3的条件下,如果传感器节点N1需要获取网络G3内数据ID集合E3标识的数据以及在子网S3内执行命令ID集合E4标识的操作,传感器节点N1则执行下述操作:
步骤701:开始;
步骤702:传感器节点N1发送请求消息,该请求消息的源地址为自己的地址,目的地址为接入节点AR3的地址,负载为集合E3和集合E4的并集;
步骤703:接入节点AP1收到请求消息后,将该请求消息转发到接入路由器AR1,接入路由器AR1将收到的请求消息转发到接入路由器AR3;接入路由器AR3接收到请求消息后,将请求消息转发到网络G3内的所有接入节点;
步骤704:网络G3内的接入节点收到请求消息后,对于请求消息负载中的每个数据ID或者命令ID,接入节点执行下述操作:接入节点查看节点表,选择所有永久地址中的节点ID等于该节点ID或者命令ID且网络前缀和子网ID等于自己的网络前缀和子网ID的节点表项,接入节点发送请求消息,该请求消息的源地址是自己的地址,目的地址是该节点表项的暂时地址;如果请求消息的目的地址的节点ID为命令ID,那么目标执行器节点收到请求消息后,执行目的地址的节点ID所标识的命令;如果请求消息的目的地址的节点ID为数据ID,那么目标传感器节点收到请求消息后,返回响应消息,该响应消息的源地址为接收到的请求消息的目的地址,该响应消息的目的地址为接收到的请求消息的源地址,负载为请求消息目的地址的节点ID所标识的数据;
步骤705:接入节点在规定时间内接收到所有的响应消息后,返回一个响应消息,该响应消息的源地址为接收到的请求消息的目的地址,该响应消息的目的地址为接收到的请求消息的源地址,负载为所有接收到的响应消息负载中的数据的并集;接入路由器AR3在规定时间内接收到所有的响应消息后,返回一个响应消息,该响应消息的源地址为接收到的请求消息的目的地址,该响应消息的目的地址为接收到的请求消息的源地址,负载为所有接收到的响应消息负载中的数据的并集;
步骤706:传感器节点N1接收到响应消息后,保存响应消息中的数据;
步骤707:结束。
8.根据权利要求1所述的一种基于物联网的数据通信方法,其特征在于,在传感器节点N1位于子网S1内,子网S1的接入节点为AP1,传感器节点N3位于子网S3中,子网S3的接入节点为AP3,接入节点AP1位于网络G1内,网络G1的接入路由器为AR1,接入节点AP3位于网络G3内,网络G3的接入路由器为AR3的条件下,如果传感器节点N1需要获取网络G3内所有数据以及在网络G3内执行所有操作,传感器节点N1则执行下述操作:
步骤801:开始;
步骤802:传感器节点N1发送请求消息,该请求消息的源地址为自己的地址,目的地址为接入节点AR3的地址,负载为空;
步骤803:接入节点AP1收到请求消息后,将该请求消息转发到接入路由器AR1,接入路由器AR1将收到的请求消息转发到接入路由器AR3;接入路由器AR3接收到请求消息后,将请求消息转发到网络G3内的所有接入节点;
步骤804:网络G3内的接入节点收到请求消息后,查看节点表,选择所有永久地址的网络前缀与子网ID等于自己的网络前缀和子网ID的节点表项,对于每个选择的节点表项进行下述操作:接入节点发送请求消息,该消息的源地址是自己的地址,目的地址是该节点表项的暂时地址;如果该请求消息的目的地址的节点ID为命令ID,那么目标执行器节点收到该请求消息后,执行目的地址的节点ID所标识的命令;如果请求消息的目的地址的节点ID为数据ID,那么目标传感器节点收到请求消息后,返回响应消息,该响应消息的源地址为接收到的请求消息的目的地址,该响应消息的目的地址为接收到的请求消息的源地址,负载为请求消息目的地址的节点ID所标识的数据;
步骤805:接入节点在规定时间内接收到所有的响应消息后,返回一个响应消息,该响应消息的源地址为接收到的请求消息的目的地址,该响应消息的目的地址为接收到的请求消息的源地址,负载为所有接收到的响应消息负载中的数据的并集;接入路由器AR3在规定时间内接收到所有的响应消息后,返回一个响应消息,该响应消息的源地址为接收到的请求消息的目的地址,该响应消息的目的地址为接收到的请求消息的源地址,负载为所有接收到的响应消息负载中的数据的并集;
步骤806:传感器节点N1接收到响应消息后,保存响应消息中的数据;
步骤807:结束。
说明书
技术领域
本发明涉及一种数据通信方法,尤其涉及的是一种基于物联网的数据通信方法。
背景技术
在典型的物联网构架中,一个电子标签具有全球唯一的电子编码,将其附着在物品上标识目标对象。目前的物联网架构能够很好地跟踪目标对象,但仍存在以下不足:
1)用户只能通过数据库服务器来获取目标对象信息,无法实现与目标对象直接地点到点通信;
2)用户只能查询目标对象的信息,无法直接控制目标对象的状态;
3)目标对象信息只能通过读写器被动地读取,目标对象无法根据当前的状态主动请求数据更新或发出警报信息。
发明内容
发明目的:本发明所要解决的技术问题是针对现有技术的不足,提供一种基于物联网的数据通信方法。本发明克服了上述不足,从而实现物联网数据的实时通信。
技术方案:本发明公开了一种基于物联网的数据通信方法,所述物联网中包含接入路由器、接入节点、传感器节点和执行节点;接入路由器与路由骨干网相连,接入节点配置一个有线接口与接入路由器相连,配置一个无线接口与传感器节点和执行节点相连;传感器节点用于采集数据,例如温度,执行节点用于执行操作,例如关闭空调;传感器节点或者执行节点配置一个无线接口,通过该无线接口与接入节点链路相连;一个接入节点与该接入节点链路相连的传感器节点和执行节点构成一个子网,该子网内的传感器节点和执行节点通过该接入节点实现通信;一个接入路由器和与该接入路由器相连的所有接入节点以及与所述接入节点链路相连的传感器节点和执行节点构成一个网络;
一个接入路由器由其硬件ID标识,例如媒体接入控制地址;一个传感器节点能采集一种类型的数据,该数据由一个数据ID唯一标识,该传感器节点由该数据ID唯一标识;一个执行节点能执行一种类型的命令,该命令由命令ID唯一标识,该执行节点由该命令ID唯一标识;
一个接入路由器、接入节点、传感器节点和执行节点配置一个具有全球唯一性的地址,该地址由网络前缀、子网ID、节点ID和内部ID构成;一个网络内所有接入节点、执行节点和传感器节点的网络前缀都相同,等于该网络内的接入路由器的网络前缀;接入路由器的网络前缀预先设置,例如3fe8:1:1:1::;
一个接入路由器的地址中,子网ID和内部ID为0,节点ID为1;
一个接入节点的地址中,网络前缀等于所在网络的接入路由器的网络前缀;子网ID等于接入节点的硬件ID,节点ID和内部ID为0;
一个传感器节点的地址中,网络前缀和子网ID等于所在子网的接入路由器的网络前缀和子网ID,节点ID等于自己所能采集数据的数据ID,内部ID为自己的硬件ID,例如媒体接入控制地址;
一个执行节点的地址中,网络前缀和子网ID等于所在子网的接入路由器的网络前缀和子网ID,节点ID等于自己所能执行命令的命令ID,内部ID为自己的硬件ID,例如媒体接入控制地址;
一个接入路由器定期广播信标消息,消息源地址为自己的地址;接入节点通过有线节点收到接入路由器广播的信标消息后,通过查看信标消息的源地址能够获取所在网络的网络前缀,接入节点将网络前缀与自己的子网ID相结合构成自己的地址,该地址的节点ID和内部ID为0;接入节点定期通过无线接口广播信标消息,该信标消息的源地址为自己的地址;
传感器节点或者执行节点启动接收到接入节点发送的第一个信标消息后,将自己的节点ID和内部ID与该信标消息的源地址中的网络前缀和子网ID相结合构成自己的地址,该地址做为永久地址,在传感器节点或者执行节点的整个生命周期内保持不变,该接入节点做为该传感器节点或者执行节点的永久接入节点;
当传感器节点或者执行节点脱离永久接入节点的通信范围与另外一个接入节点链路相连时,传感器节点或者执行节点能接收到该接入节点的信标消息,然后将自己的节点ID和内部ID与该信标消息的源地址中的网络前缀和子网ID相结合构成自己的地址,该地址做为暂时地址,该接入节点做为该传感器节点或者执行节点的暂时接入节点;
一个接入节点维护一个节点表,每个节点表包含永久地址域、暂时地址域、切换标识符和生命周期;当切换标识符为1时,表明该节点表表项所对应的节点已经完成移动切换,当切换标识符为0时,表明该节点表表项所对应的节点准备执行移动切换;
一个传感器节点或者执行节点定期广播信标消息,信标消息负载为它的永久地址,源地址为它当前的暂时地址;
在接入节点发送前一个信标消息和下一个信标消息的时间间隔内,对于接入节点从无线接口接收到的每一个信标消息,接入节点查看节点表,如果不存在永久地址等于该信标消息负载中的地址的节点表项,接入节点则创建一个节点表项,该节点表项的永久地址为信标消息负载中的地址,切换符号为0,暂时地址域为该信标消息的源地址,生存时间为最大生存时间,例如10min;如果存在,则不做任何操作;
接入节点发送下一个信标消息后,执行下述操作:
步骤101:开始;
步骤102:接入节点查看节点表,选择所有切换标识为0的节点表项,根据所述节点表项的永久地址域值将所述节点表项分组,每个分组的节点表项中永久地址的网络前缀和子网ID都相同;
步骤103:接入节点对于每个分组执行下述操作:如果该分组中节点表项中永久地址的网络前缀和子网ID与该接入节点的网络前缀和子网ID都相同,则执行步骤104,否则执行步骤105;
步骤104:对于该分组中的每个节点表项,接入节点将节点表项中的切换标识设置为1,并将该节点表项的暂时地址域值设置为永久地址域值,执行步骤107;
步骤105:对于符合条件1的每个分组,接入节点执行下述操作:接入节点创建一个地址,该地址的网络前缀和子网ID等于该分组中节点表项的永久地址的网络前缀和子网ID,节点ID和内部ID为0;接入节点发送一个切换消息,该切换消息的源地址为自己的地址,目的地址为创建的地址,负载为该分组中每个节点表项的地址二元组<永久地址,暂时地址>集合;接入节点将分组中每个节点表项的切换标识设置为1;
条件1:该分组的节点表项中永久地址的网络前缀和子网ID与接入节点的网络前缀和子网ID不同;
步骤106:接入节点收到切换消息后,对于切换消息中的每个地址二元组进行如下操作:接入节点查看节点表,如果节点表中所有节点表项的永久地址都不等于切换消息中地址二元组中永久地址,那么该接入节点创建一个节点表项,该节点表项的永久地址和暂时地址分别为该地址二元组的永久地址和暂时地址,切换符号为1,生存时间为最大生存时间值;否则,接入节点选择永久地址等于该地址二元组中永久地址的节点表项,将该节点表项的暂时地址域值设置为地址二元组中的暂时地址域值,切换符号设置为1,生存时间为最大生存时间值;
步骤107:结束;
如果一个接入节点从无线接口接收到一个信标消息,接入节点查看节点表并选择暂时地址域值等于该信标消息源地址的节点表项,将该节点表项的生命时间设置为最大生命时间;如果一个接入节点检测到一个节点表项的生命周期衰减为0且该节点表项的永久地址的网络前缀和子网ID不等于该接入节点的网络前缀和子网ID,那么该接入节点删除该节点表项。
上述过程可以快速实现移动切换从而确保数据通信的正确性和实时性。
本发明所述方法中,一个接入节点保存一个三元组<传感器节点地址,执行器节点地址,报警地址>集合,在一个三元组中,如果传感器节点地址所标识的传感器节点检测到数据超出设定阈值,则激活执行器节点地址所标识的执行器节点,同时将该事件通知报警地址所标识的用户;
在传感器节点N1位于子网S1内,子网S1的接入节点为AP1的条件下,如果传感器节点N1检测到数据C1超出设定阈值,数据C1由数据ID由DID1标识,传感器节点N1则执行下述操作:
步骤201:开始;
步骤202:传感器节点N1发送报警消息,该报警消息的源地址为传感器节点N1的暂时地址,目的地址为接入节点AP1的地址,负载为报警信息;
步骤203:接入节点AP1收到报警消息后,查看保存的三元组集合,选择三元组集合中传感器节点地址等于报警消息源地址的三元组T1,如果该三元组中的执行器节点地址为0,则执行步骤204,否则执行步骤205;
步骤204:接入节点AP1发送报警消息,该报警消息的源地址为自己的地址,目的地址为三元组T1中的报警地址,负载为接收到的报警消息中的负载,目的节点收到报警消息后,执行步骤206;
步骤205:接入节点AP1查看节点表,选择永久地址等于三元组T1中执行器节点地址的节点表项,然后发送请求消息,该请求消息的源地址为接入节点AP1的源地址,目的地址为该节点表项的暂时地址;目的执行器节点收到请求消息后,执行请求消息目的地址中节点ID所标识的命令;
步骤206:结束。
上述过程可以实现实时报警和实时控制,从而有效克服了现有物联网的不足。
本发明所述方法中,在传感器节点N1位于子网S1内,子网S1的接入节点为AP1,子网S2的接入节点为AP2,接入节点AP1和接入节点AP2在一个网络G1内,网络G1的接入路由器为AR1的条件下,如果传感器节点N1需要获取子网S2内数据ID集合E1标识的数据以及在子网S2内执行命令ID集合E2标识的操作,传感器节点N1则执行下述操作:
步骤301:开始;
步骤302:传感器节点N1发送请求消息,该请求消息的源地址为自己的地址,目的地址为接入节点AP2的地址,负载为数据ID集合E1和命令ID集合E2的并集;
步骤303:接入节点AP1收到请求消息后,将该请求消息转发到接入路由器AR1,接入路由器AR1将收到的请求消息转发到接入节点AP2;
步骤304:接入节点AP2接收到请求消息后,对于请求消息负载中的每个数据ID或者命令ID,接入节点AP2执行下述操作:接入节点查看节点表,选择所有永久地址中的节点ID等于该节点ID或者命令ID且网络前缀和子网ID等于自己的网络前缀和子网ID的节点表项,接入节点AP2发送请求消息,该请求消息的源地址是自己的地址,目的地址是该节点表项的暂时地址;如果请求消息的目的地址的节点ID为命令ID,那么目标执行器节点收到请求消息后,执行目的地址的节点ID所标识的命令;如果请求消息的目的地址的节点ID为数据ID,那么目标传感器节点收到请求消息后,返回响应消息,该响应消息的源地址为接收到的请求消息的目的地址,该响应消息的目的地址为接收到的请求消息的源地址,负载为请求消息目的地址的节点ID所标识的数据;
步骤305:接入节点AP2在设定时间(例如1min)内接收到所有的响应消息后,返回一个响应消息,该响应消息的源地址为接收到的请求消息的目的地址,该响应消息的目的地址为接收到的请求消息的源地址,负载为所有接收到的响应消息负载中的数据的并集;
步骤306:传感器节点N1接收到响应消息后,保存响应消息中的数据;
步骤307:结束。
上述过程可实时获取传感器节点感知的数据同时实时执行控制命令。
本发明所述方法中,在传感器节点N1位于子网S1内,子网S1的接入节点为AP1,子网S2的接入节点为AP2,接入节点AP1和接入节点AP2在一个网络G1内,网络G1的接入路由器为AR1的条件下,如果传感器节点N1需要获取子网S2内所有的数据以及在子网S2内执行所有的操作,传感器节点N1则执行下述操作:
步骤401:开始;
步骤402:传感器节点N1发送请求消息,该请求消息的源地址为自己的地址,目的地址为接入节点AP2的地址,负载为空;
步骤403:接入节点AP1收到请求消息后,将该请求消息转发到接入路由器AR1,接入路由器AR1将收到的请求消息转发到接入节点AP2;
步骤404:接入节点AP2接收到请求消息后,查看节点表,选择所有永久地址的网络前缀与子网ID等于自己的网络前缀和子网ID的节点表项,对于每个选择的节点表项进行下述操作:接入节点AP2发送请求消息,该请求消息的源地址是接入节点AP2自己的地址,目的地址是该节点表项的暂时地址;如果该请求消息的目的地址的节点ID为命令ID,那么目标执行器节点收到该请求消息后,执行目的地址的节点ID所标识的命令;如果请求消息的目的地址的节点ID为数据ID,那么目标传感器节点收到请求消息后,返回响应消息,该响应消息的源地址为接收到的请求消息的目的地址,该响应消息的目的地址为接收到的请求消息的源地址,负载为请求消息目的地址的节点ID所标识的数据;
步骤405:接入节点AP2在规定时间内接收到所有的响应消息后,返回一个响应消息,该响应消息的源地址为接收到的请求消息的目的地址,该响应消息的目的地址为接收到的请求消息的源地址,负载为所有接收到的响应消息负载中的数据的并集;
步骤406:传感器节点N1接收到响应消息后,保存响应消息中的数据;
步骤407:结束。
上述过程可实时获取传感器节点感知的数据同时实时执行控制命令。
本发明所述方法中,在传感器节点N1位于子网S1内,子网S1的接入节点为AP1,传感器节点或者执行器节点N2位于子网S2内,子网S2的接入节点为AP2,接入节点AP1和接入节点AP2在一个网络G1内,网络G1的接入路由器为AR1的条件下,如果传感器节点N1需要获取传感器节点N2的数据或者执行器节点N2执行操作,传感器节点N1则执行下述操作:
步骤501:开始;
步骤502:传感器节点N1发送请求消息,该请求消息的源地址为自己的地址,目的地址为传感器节点或者执行器节点N2的地址,负载为空;
步骤503:接入节点AP1收到请求消息后,将该请求消息转发到接入路由器AR1,接入路由器AR1将收到的请求消息转发到接入节点AP2;接入节点AP2接收到请求消息后,查看节点表,选择永久地址等于请求消息的目的地址的节点表项,将该请求消息的目的地址更新为该节点表项的暂时地址,然后转发该请求消息;
步骤504:传感器节点或者执行器节点N2收到请求消息,如果请求消息的目的地址的节点ID为数据ID,执行步骤505,否则执行步骤506;
步骤505:传感器节点N2返回响应消息,该响应消息的源地址为接收到的请求消息的目的地址,该响应消息的目的地址为接收到的请求消息的源地址,负载为请求消息目的地址的节点ID所标识的数据;传感器节点N1接收到响应消息后,保存响应消息中的数据,执行步骤507;
步骤506:执行器节点N2执行请求消息目的地址的节点ID所标识的命令;
步骤507:结束。
上述过程可实时获取传感器节点感知的数据同时实时执行控制命令。
本发明所述方法中,在传感器节点N1位于子网S1内,子网S1的接入节点为AP1,传感器节点N3位于子网S3中,子网S3的接入节点为AP3,接入节点AP1位于网络G1内,网络G1的接入路由器为AR1,接入节点AP3位于网络G3内,网络G3的接入路由器为AR3的条件下,如果传感器节点N1需要获取传感器节点N3的数据或者执行器节点N3执行操作,传感器节点N1则执行下述操作:
步骤601:开始;
步骤602:传感器节点N1发送请求消息,该请求消息的源地址为自己的地址,目的地址为传感器节点或者执行器节点N3的地址,负载为空;
步骤603:接入节点AP1收到请求消息后,将该请求消息转发到接入路由器AR1,接入路由器AR1将收到的请求消息转发到接入路由器AR2,接入路由器AR2将接收到的请求消息转发到接入节点AP2;接入节点AP2接收到请求消息后,查看节点表,选择永久地址等于请求消息的目的地址的节点表项,将该请求消息的目的地址更新为该节点表项的暂时地址,转发该请求消息;
步骤604:传感器节点或者执行器节点N3收到请求消息,如果请求消息的目的地址的节点ID为数据ID,执行步骤605,否则执行步骤606;
步骤605:传感器节点N3返回响应消息,该响应消息的源地址为接收到的请求消息的目的地址,该响应消息的目的地址为接收到的请求消息的源地址,负载为请求消息目的地址的节点ID所标识的数据;传感器节点N1接收到响应消息后,保存响应消息中的数据,执行步骤607;
步骤606:执行器节点N3执行请求消息目的地址的节点ID所标识的命令;
步骤607:结束。
上述过程可实时获取传感器节点感知的数据同时实时执行控制命令。
本发明所述方法中,在传感器节点N1位于子网S1内,子网S1的接入节点为AP1,传感器节点N3位于子网S3中,子网S3的接入节点为AP3,接入节点AP1位于网络G1内,网络G1的接入路由器为AR1,接入节点AP3位于网络G3内,网络G3的接入路由器为AR3的条件下,如果传感器节点N1需要获取网络G3内数据ID集合E3标识的数据以及在子网S3内执行命令ID集合E4标识的操作,传感器节点N1则执行下述操作:
步骤701:开始;
步骤702:传感器节点N1发送请求消息,该请求消息的源地址为自己的地址,目的地址为接入节点AR3的地址,负载为集合E3和集合E4的并集;
步骤703:接入节点AP1收到请求消息后,将该请求消息转发到接入路由器AR1,接入路由器AR1将收到的请求消息转发到接入路由器AR3;接入路由器AR3接收到请求消息后,将请求消息转发到网络G3内的所有接入节点;
步骤704:网络G3内的接入节点收到请求消息后,对于请求消息负载中的每个数据ID或者命令ID,接入节点执行下述操作:接入节点查看节点表,选择所有永久地址中的节点ID等于该节点ID或者命令ID且网络前缀和子网ID等于自己的网络前缀和子网ID的节点表项,接入节点发送请求消息,该请求消息的源地址是自己的地址,目的地址是该节点表项的暂时地址;如果请求消息的目的地址的节点ID为命令ID,那么目标执行器节点收到请求消息后,执行目的地址的节点ID所标识的命令;如果请求消息的目的地址的节点ID为数据ID,那么目标传感器节点收到请求消息后,返回响应消息,该响应消息的源地址为接收到的请求消息的目的地址,该响应消息的目的地址为接收到的请求消息的源地址,负载为请求消息目的地址的节点ID所标识的数据;
步骤705:接入节点在规定时间内接收到所有的响应消息后,返回一个响应消息,该响应消息的源地址为接收到的请求消息的目的地址,该响应消息的目的地址为接收到的请求消息的源地址,负载为所有接收到的响应消息负载中的数据的并集;接入路由器AR3在规定时间内接收到所有的响应消息后,返回一个响应消息,该响应消息的源地址为接收到的请求消息的目的地址,该响应消息的目的地址为接收到的请求消息的源地址,负载为所有接收到的响应消息负载中的数据的并集;
步骤706:传感器节点N1接收到响应消息后,保存响应消息中的数据;
步骤707:结束。
上述过程可实时获取传感器节点感知的数据同时实时执行控制命令。
本发明所述方法中,在传感器节点N1位于子网S1内,子网S1的接入节点为AP1,传感器节点N3位于子网S3中,子网S3的接入节点为AP3,接入节点AP1位于网络G1内,网络G1的接入路由器为AR1,接入节点AP3位于网络G3内,网络G3的接入路由器为AR3的条件下,如果传感器节点N1需要获取网络G3内所有数据以及在网络G3内执行所有操作,传感器节点N1则执行下述操作:
步骤801:开始;
步骤802:传感器节点N1发送请求消息,该请求消息的源地址为自己的地址,目的地址为接入节点AR3的地址,负载为空;
步骤803:接入节点AP1收到请求消息后,将该请求消息转发到接入路由器AR1,接入路由器AR1将收到的请求消息转发到接入路由器AR3;接入路由器AR3接收到请求消息后,将请求消息转发到网络G3内的所有接入节点;
步骤804:网络G3内的接入节点收到请求消息后,查看节点表,选择所有永久地址的网络前缀与子网ID等于自己的网络前缀和子网ID的节点表项,对于每个选择的节点表项进行下述操作:接入节点发送请求消息,该消息的源地址是自己的地址,目的地址是该节点表项的暂时地址;如果该请求消息的目的地址的节点ID为命令ID,那么目标执行器节点收到该请求消息后,执行目的地址的节点ID所标识的命令;如果请求消息的目的地址的节点ID为数据ID,那么目标传感器节点收到请求消息后,返回响应消息,该响应消息的源地址为接收到的请求消息的目的地址,该响应消息的目的地址为接收到的请求消息的源地址,负载为请求消息目的地址的节点ID所标识的数据;
步骤805:接入节点在规定时间内接收到所有的响应消息后,返回一个响应消息,该响应消息的源地址为接收到的请求消息的目的地址,该响应消息的目的地址为接收到的请求消息的源地址,负载为所有接收到的响应消息负载中的数据的并集;接入路由器AR3在规定时间内接收到所有的响应消息后,返回一个响应消息,该响应消息的源地址为接收到的请求消息的目的地址,该响应消息的目的地址为接收到的请求消息的源地址,负载为所有接收到的响应消息负载中的数据的并集;
步骤806:传感器节点N1接收到响应消息后,保存响应消息中的数据;
步骤807:结束。
上述过程可实时获取传感器节点感知的数据同时实时执行控制命令。
有益效果:本发明提供了一种基于物联网的数据通信方法,用户通过该方法可实时查询目标对象节点所处环境的参数,并根据目标对象节点的状态及时向传感器节点发送命令实现对目标对象节点的实时控制和调节,本发明可广泛用于农业环境监测和远程控制等领域。
附图说明
下面结合附图和具体实施方式对本发明做更进一步的具体说明,本发明的上述和/或其他方面的优点将会变得更加清楚。
图1为本发明所述的切换流程示意图。
图2为本发明所述的报警流程示意图。
图3为本发明所述的网络内数据通信流程示意图。
图4为本发明所述的子网内数据通信流程示意图。
图5为本发明所述的子网间数据流程示意图。
图6为本发明所述的网络间数据流程示意图。
图7为本发明所述的网络间子网数据流程示意图。
图8为本发明所述的网络数据流程示意图。
具体实施方式:
本发明提供了一种基于物联网的数据通信方法,用户通过该方法可实时查询目标对象节点所处环境的参数,并根据目标对象节点的状态及时向传感器节点发送命令实现对目标对象节点的实时控制和调节,本发明可广泛用于农业环境监测和远程控制等领域。
图1为本发明所述的切换流程示意图。接入节点发送下一个信标消息后,执行下述操作:
步骤101:开始;
步骤102:接入节点查看节点表,选择所有切换标识为0的节点表项,根据所述节点表项的永久地址域值将所述节点表项分组,每个分组的节点表项中永久地址的网络前缀和子网ID都相同;
步骤103:接入节点对于每个分组执行下述操作:如果该分组中节点表项中永久地址的网络前缀和子网ID与该接入节点的网络前缀和子网ID都相同,则执行步骤104,否则执行步骤105;
步骤104:对于该分组中的每个节点表项,接入节点将节点表项中的切换标识设置为1,并将该节点表项的暂时地址域值设置为永久地址域值,执行步骤107;
步骤105:对于符合条件1的每个分组,接入节点执行下述操作:接入节点创建一个地址,该地址的网络前缀和子网ID等于该分组中节点表项的永久地址的网络前缀和子网ID,节点ID和内部ID为0;接入节点发送一个切换消息,该切换消息的源地址为自己的地址,目的地址为创建的地址,负载为该分组中每个节点表项的地址二元组<永久地址,暂时地址>集合;接入节点将分组中每个节点表项的切换标识设置为1;
条件1:该分组的节点表项中永久地址的网络前缀和子网ID与接入节点的网络前缀和子网ID不同;
步骤106:接入节点收到切换消息后,对于切换消息中的每个地址二元组进行如下操作:接入节点查看节点表,如果节点表中所有节点表项的永久地址都不等于切换消息中地址二元组中永久地址,那么该接入节点创建一个节点表项,该节点表项的永久地址和暂时地址分别为该地址二元组的永久地址和暂时地址,切换符号为1,生存时间为最大生存时间值;否则,接入节点选择永久地址等于该地址二元组中永久地址的节点表项,将该节点表项的暂时地址域值设置为地址二元组中的暂时地址域值,切换符号设置为1,生存时间为最大生存时间值;
步骤107:结束;
如果一个接入节点从无线接口接收到一个信标消息,接入节点查看节点表并选择暂时地址域值等于该信标消息源地址的节点表项,将该节点表项的生命时间设置为最大生命时间;如果一个接入节点检测到一个节点表项的生命周期衰减为0且该节点表项的永久地址的网络前缀和子网ID不等于该接入节点的网络前缀和子网ID,那么该接入节点删除该节点表项。
图2为本发明所述的报警流程示意图。一个接入节点保存一个三元组<传感器节点地址,执行器节点地址,报警地址>集合,在一个三元组中,如果传感器节点地址所标识的传感器节点检测到数据超出设定阈值,则激活执行器节点地址所标识的执行器节点,同时将该事件通知报警地址所标识的用户;在传感器节点N1位于子网S1内,子网S1的接入节点为AP1的条件下,如果传感器节点N1检测到数据C1超出设定阈值,数据C1由数据ID由DID1标识,传感器节点N1则执行下述操作:
步骤201:开始;
步骤202:传感器节点N1发送报警消息,该报警消息的源地址为传感器节点N1的暂时地址,目的地址为接入节点AP1的地址,负载为报警信息;
步骤203:接入节点AP1收到报警消息后,查看保存的三元组集合,选择三元组集合中传感器节点地址等于报警消息源地址的三元组T1,如果该三元组中的执行器节点地址为0,则执行步骤204,否则执行步骤205;
步骤204:接入节点AP1发送报警消息,该报警消息的源地址为自己的地址,目的地址为三元组T1中的报警地址,负载为接收到的报警消息中的负载,目的节点收到报警消息后,执行步骤206;
步骤205:接入节点AP1查看节点表,选择永久地址等于三元组T1中执行器节点地址的节点表项,然后发送请求消息,该请求消息的源地址为接入节点AP1的源地址,目的地址为该节点表项的暂时地址;目的执行器节点收到请求消息后,执行请求消息目的地址中节点ID所标识的命令;
步骤206:结束。
图3为本发明所述的网络内数据通信流程示意图。在传感器节点N1位于子网S1内,子网S1的接入节点为AP1,子网S2的接入节点为AP2,接入节点AP1和接入节点AP2在一个网络G1内,网络G1的接入路由器为AR1的条件下,如果传感器节点N1需要获取子网S2内数据ID集合E1标识的数据以及在子网S2内执行命令ID集合E2标识的操作,传感器节点N1则执行下述操作:
步骤301:开始;
步骤302:传感器节点N1发送请求消息,该请求消息的源地址为自己的地址,目的地址为接入节点AP2的地址,负载为数据ID集合E1和命令ID集合E2的并集;
步骤303:接入节点AP1收到请求消息后,将该请求消息转发到接入路由器AR1,接入路由器AR1将收到的请求消息转发到接入节点AP2;
步骤304:接入节点AP2接收到请求消息后,对于请求消息负载中的每个数据ID或者命令ID,接入节点AP2执行下述操作:接入节点查看节点表,选择所有永久地址中的节点ID等于该节点ID或者命令ID且网络前缀和子网ID等于自己的网络前缀和子网ID的节点表项,接入节点AP2发送请求消息,该请求消息的源地址是自己的地址,目的地址是该节点表项的暂时地址;如果请求消息的目的地址的节点ID为命令ID,那么目标执行器节点收到请求消息后,执行目的地址的节点ID所标识的命令;如果请求消息的目的地址的节点ID为数据ID,那么目标传感器节点收到请求消息后,返回响应消息,该响应消息的源地址为接收到的请求消息的目的地址,该响应消息的目的地址为接收到的请求消息的源地址,负载为请求消息目的地址的节点ID所标识的数据;
步骤305:接入节点AP2在设定时间内接收到所有的响应消息后,返回一个响应消息,该响应消息的源地址为接收到的请求消息的目的地址,该响应消息的目的地址为接收到的请求消息的源地址,负载为所有接收到的响应消息负载中的数据的并集;
步骤306:传感器节点N1接收到响应消息后,保存响应消息中的数据;
步骤307:结束。
图4为本发明所述的子网内数据通信流程示意图。在传感器节点N1位于子网S1内,子网S1的接入节点为AP1,子网S2的接入节点为AP2,接入节点AP1和接入节点AP2在一个网络G1内,网络G1的接入路由器为AR1的条件下,如果传感器节点N1需要获取子网S2内所有的数据以及在子网S2内执行所有的操作,传感器节点N1则执行下述操作:
步骤401:开始;
步骤402:传感器节点N1发送请求消息,该请求消息的源地址为自己的地址,目的地址为接入节点AP2的地址,负载为空;
步骤403:接入节点AP1收到请求消息后,将该请求消息转发到接入路由器AR1,接入路由器AR1将收到的请求消息转发到接入节点AP2;
步骤404:接入节点AP2接收到请求消息后,查看节点表,选择所有永久地址的网络前缀与子网ID等于自己的网络前缀和子网ID的节点表项,对于每个选择的节点表项进行下述操作:接入节点AP2发送请求消息,该请求消息的源地址是接入节点AP2自己的地址,目的地址是该节点表项的暂时地址;如果该请求消息的目的地址的节点ID为命令ID,那么目标执行器节点收到该请求消息后,执行目的地址的节点ID所标识的命令;如果请求消息的目的地址的节点ID为数据ID,那么目标传感器节点收到请求消息后,返回响应消息,该响应消息的源地址为接收到的请求消息的目的地址,该响应消息的目的地址为接收到的请求消息的源地址,负载为请求消息目的地址的节点ID所标识的数据;
步骤405:接入节点AP2在规定时间内接收到所有的响应消息后,返回一个响应消息,该响应消息的源地址为接收到的请求消息的目的地址,该响应消息的目的地址为接收到的请求消息的源地址,负载为所有接收到的响应消息负载中的数据的并集;
步骤406:传感器节点N1接收到响应消息后,保存响应消息中的数据;
步骤407:结束。
图5为本发明所述的子网间数据流程示意图。在传感器节点N1位于子网S1内,子网S1的接入节点为AP1,传感器节点或者执行器节点N2位于子网S2内,子网S2的接入节点为AP2,接入节点AP1和接入节点AP2在一个网络G1内,网络G1的接入路由器为AR1的条件下,如果传感器节点N1需要获取传感器节点N2的数据或者执行器节点N2执行操作,传感器节点N1则执行下述操作:
步骤501:开始;
步骤502:传感器节点N1发送请求消息,该请求消息的源地址为自己的地址,目的地址为传感器节点或者执行器节点N2的地址,负载为空;
步骤503:接入节点AP1收到请求消息后,将该请求消息转发到接入路由器AR1,接入路由器AR1将收到的请求消息转发到接入节点AP2;接入节点AP2接收到请求消息后,查看节点表,选择永久地址等于请求消息的目的地址的节点表项,将该请求消息的目的地址更新为该节点表项的暂时地址,然后转发该请求消息;
步骤504:传感器节点或者执行器节点N2收到请求消息,如果请求消息的目的地址的节点ID为数据ID,执行步骤505,否则执行步骤506;
步骤505:传感器节点N2返回响应消息,该响应消息的源地址为接收到的请求消息的目的地址,该响应消息的目的地址为接收到的请求消息的源地址,负载为请求消息目的地址的节点ID所标识的数据;传感器节点N1接收到响应消息后,保存响应消息中的数据,执行步骤507;
步骤506:执行器节点N2执行请求消息目的地址的节点ID所标识的命令;
步骤507:结束。
图6为本发明所述的网络间数据流程示意图。在传感器节点N1位于子网S1内,子网S1的接入节点为AP1,传感器节点N3位于子网S3中,子网S3的接入节点为AP3,接入节点AP1位于网络G1内,网络G1的接入路由器为AR1,接入节点AP3位于网络G3内,网络G3的接入路由器为AR3的条件下,如果传感器节点N1需要获取传感器节点N3的数据或者执行器节点N3执行操作,传感器节点N1执行下述操作:
步骤601:开始;
步骤602:传感器节点N1发送请求消息,该请求消息的源地址为自己的地址,目的地址为传感器节点或者执行器节点N3的地址,负载为空;
步骤603:接入节点AP1收到请求消息后,将该请求消息转发到接入路由器AR1,接入路由器AR1将收到的请求消息转发到接入路由器AR2,接入路由器AR2将接收到的请求消息转发到接入节点AP2;接入节点AP2接收到请求消息后,查看节点表,选择永久地址等于请求消息的目的地址的节点表项,将该请求消息的目的地址更新为该节点表项的暂时地址,转发该请求消息;
步骤604:传感器节点或者执行器节点N3收到请求消息,如果请求消息的目的地址的节点ID为数据ID,执行步骤605,否则执行步骤606;
步骤605:传感器节点N3返回响应消息,该响应消息的源地址为接收到的请求消息的目的地址,该响应消息的目的地址为接收到的请求消息的源地址,负载为请求消息目的地址的节点ID所标识的数据;传感器节点N1接收到响应消息后,保存响应消息中的数据,执行步骤607;
步骤606:执行器节点N3执行请求消息目的地址的节点ID所标识的命令;
步骤607:结束。
图7为本发明所述的网络间子网数据流程示意图。在传感器节点N1位于子网S1内,子网S1的接入节点为AP1,传感器节点N3位于子网S3中,子网S3的接入节点为AP3,接入节点AP1位于网络G1内,网络G1的接入路由器为AR1,接入节点AP3位于网络G3内,网络G3的接入路由器为AR3的条件下,如果传感器节点N1需要获取网络G3内数据ID集合E3标识的数据以及在子网S3内执行命令ID集合E4标识的操作,传感器节点N1则执行下述操作:
步骤701:开始;
步骤702:传感器节点N1发送请求消息,该请求消息的源地址为自己的地址,目的地址为接入节点AR3的地址,负载为集合E3和集合E4的并集;
步骤703:接入节点AP1收到请求消息后,将该请求消息转发到接入路由器AR1,接入路由器AR1将收到的请求消息转发到接入路由器AR3;接入路由器AR3接收到请求消息后,将请求消息转发到网络G3内的所有接入节点;
步骤704:网络G3内的接入节点收到请求消息后,对于请求消息负载中的每个数据ID或者命令ID,接入节点执行下述操作:接入节点查看节点表,选择所有永久地址中的节点ID等于该节点ID或者命令ID且网络前缀和子网ID等于自己的网络前缀和子网ID的节点表项,接入节点发送请求消息,该请求消息的源地址是自己的地址,目的地址是该节点表项的暂时地址;如果请求消息的目的地址的节点ID为命令ID,那么目标执行器节点收到请求消息后,执行目的地址的节点ID所标识的命令;如果请求消息的目的地址的节点ID为数据ID,那么目标传感器节点收到请求消息后,返回响应消息,该响应消息的源地址为接收到的请求消息的目的地址,该响应消息的目的地址为接收到的请求消息的源地址,负载为请求消息目的地址的节点ID所标识的数据;
步骤705:接入节点在规定时间内接收到所有的响应消息后,返回一个响应消息,该响应消息的源地址为接收到的请求消息的目的地址,该响应消息的目的地址为接收到的请求消息的源地址,负载为所有接收到的响应消息负载中的数据的并集;接入路由器AR3在规定时间内接收到所有的响应消息后,返回一个响应消息,该响应消息的源地址为接收到的请求消息的目的地址,该响应消息的目的地址为接收到的请求消息的源地址,负载为所有接收到的响应消息负载中的数据的并集;
步骤706:传感器节点N1接收到响应消息后,保存响应消息中的数据;
步骤707:结束。
图8为本发明所述的网络数据流程示意图。在传感器节点N1位于子网S1内,子网S1的接入节点为AP1,传感器节点N3位于子网S3中,子网S3的接入节点为AP3,接入节点AP1位于网络G1内,网络G1的接入路由器为AR1,接入节点AP3位于网络G3内,网络G3的接入路由器为AR3的条件下,如果传感器节点N1需要获取网络G3内所有数据以及在网络G3内执行所有操作,传感器节点N1则执行下述操作:
步骤801:开始;
步骤802:传感器节点N1发送请求消息,该请求消息的源地址为自己的地址,目的地址为接入节点AR3的地址,负载为空;
步骤803:接入节点AP1收到请求消息后,将该请求消息转发到接入路由器AR1,接入路由器AR1将收到的请求消息转发到接入路由器AR3;接入路由器AR3接收到请求消息后,将请求消息转发到网络G3内的所有接入节点;
步骤804:网络G3内的接入节点收到请求消息后,查看节点表,选择所有永久地址的网络前缀与子网ID等于自己的网络前缀和子网ID的节点表项,对于每个选择的节点表项进行下述操作:接入节点发送请求消息,该消息的源地址是自己的地址,目的地址是该节点表项的暂时地址;如果该请求消息的目的地址的节点ID为命令ID,那么目标执行器节点收到该请求消息后,执行目的地址的节点ID所标识的命令;如果请求消息的目的地址的节点ID为数据ID,那么目标传感器节点收到请求消息后,返回响应消息,该响应消息的源地址为接收到的请求消息的目的地址,该响应消息的目的地址为接收到的请求消息的源地址,负载为请求消息目的地址的节点ID所标识的数据;
步骤805:接入节点在规定时间内接收到所有的响应消息后,返回一个响应消息,该响应消息的源地址为接收到的请求消息的目的地址,该响应消息的目的地址为接收到的请求消息的源地址,负载为所有接收到的响应消息负载中的数据的并集;接入路由器AR3在规定时间内接收到所有的响应消息后,返回一个响应消息,该响应消息的源地址为接收到的请求消息的目的地址,该响应消息的目的地址为接收到的请求消息的源地址,负载为所有接收到的响应消息负载中的数据的并集;
步骤806:传感器节点N1接收到响应消息后,保存响应消息中的数据;
步骤807:结束。
实施例1
基于表1的仿真参数,本实施例模拟了本发明中的基于物联网的数据通信方法,性能分析如下:当网络间进行通信时,平均数据通信延迟增加,当网络内进行通信时,平均通信延迟降低,网络间平均通信延迟为125ms,网络内平均数据通信延迟为78ms。
表1仿真参数
本发明提供了一种基于物联网的数据通信方法的思路,具体实现该技术方案的方法和途径很多,以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。本实施例中未明确的各组成部份均可用现有技术加以实现。
一种基于物联网的数据通信方法专利购买费用说明
Q:办理专利转让的流程及所需资料
A:专利权人变更需要办理著录项目变更手续,有代理机构的,变更手续应当由代理机构办理。
1:专利变更应当使用专利局统一制作的“著录项目变更申报书”提出。
2:按规定缴纳著录项目变更手续费。
3:同时提交相关证明文件原件。
4:专利权转移的,变更后的专利权人委托新专利代理机构的,应当提交变更后的全体专利申请人签字或者盖章的委托书。
Q:专利著录项目变更费用如何缴交
A:(1)直接到国家知识产权局受理大厅收费窗口缴纳,(2)通过代办处缴纳,(3)通过邮局或者银行汇款,更多缴纳方式
Q:专利转让变更,多久能出结果
A:著录项目变更请求书递交后,一般1-2个月左右就会收到通知,国家知识产权局会下达《转让手续合格通知书》。
动态评分
0.0