一种适用于广域物联网的非ip数据传输方法

文档序号:7891869阅读:201来源:国知局
专利名称:一种适用于广域物联网的非ip数据传输方法
技术领域
本发明属于计算机通信领域,具体地讲涉及一种适用于广域物联网的非IP数据传输方法。
背景技术
目前物联网正从局域网络发展到广域网络。物联网的发展使得网络的内涵得到了广泛的延伸,物联网将成为以泛在网为承载的,包含互联网应用和电信网应用的信息网络, 其上的用户不但包括人而且包括物。物联网的末端周期地或者非周期地采集的数据将通过网络传输到应用平台,供应用平台使用并提供各种基于数据的服务。当前应用平台和采集数据的末端都由一家来提供,即自己的数据自己使用。而随着网络的规模扩大、业务的增多,同一类末端的数据可能被多个应用平台使用,一个应用平台也可能使用多种不同末端提供的数据。大量的同质的数据需要被网络传送到应用平台,这种应用可以看做一种多对多(m:n)的数据传输模式,即m个数据源的数据通过网络传输到η个数据接收结点,且m远大于η。目前的数据传输主要采用IP协议,IP协议使用单播和多播方式传送数据,这两种方式适合I: I和I :m的数据传输模式。如果采用IP的单播,网络把每个末端看做一个独立的网络实体,每个末端和应用平台都具有一个独立的IP地址,使用IP+TCP/UDP的方式把末端的产生的数据传给应用平台,显然浪费带宽;采用多播方式必须为每个数据源建立多播树,且多播适合于一个数据源传送数据到众多接收点的数据传输模式,对于这种数据发送点远远大于接收点的数据传输模式,如果采用有源多播树显然建立多播树的开销太大,如果采用共享多播树,则对共享结点的性能要求非常高,而且物联网中产生的数据量比较大, 从这方面讲共享树也不太合适。IP协议还提供了一种特别的数据传送方式任意播,这种方式下数据传送的最近的某一任意播地址的结点,适用于分布式服务,而物联网的数据是要传送到使用本数据的所有结点。这些方式对广域物联网的数据传输模式都不是很合适。如果网络把那些同质的数据看作是同源的数据,则数据的传输就会发生大的变化,会变得简单。

发明内容
本发明的目的在于克服现有单播和多播数据传输方法的不足,提供更适合m:n数据传输模式(m远大于η)的一种适用于广域物联网的非IP数据传输方法,以支持广域物联网的数据传输。为实现上述目的,本发明提出一种适用于广域物联网的非IP数据传输方法,本方法的基本思想是数据分类标识,采用逆向传输的方法实现多对多的数据传输;数据从数据制造结点开始携带自己的数据标识,属于同一类的数据制造结点拥有相同的数据标识, 在网络中路由结点根据数据的数据标识把数据向不同的方向转发,路由结点存储有记录数据转发方向的路由表。数据使用结点通过向网络发布数据宣告使网络获得连通关系,数据宣告由数据使用结点或路由结点发向自己的邻结点,通知邻结点自己获得的连通关系的变化。在这里路由表记录了需要数据标识所标识的数据的数据使用者相对于本节点的方向。 路由表由网络结点通过连通关系表计算得到。连通关系表中记录了数据使用者使用的数据从各个方向到达的最短距离、有效时间,以及到达使用者的最佳转发方向。它是由网络结点根据从邻接点收到的数据宣告计算得到。一种适用于广域物联网的非IP数据传输方法包括两部分面向数据的寻址方式和支持面向数据寻址方式的路由方法。所述面向数据的寻址方式,包括地址和数据转发方法。面向数据的寻址方式支持 m:n(m>>n)的数据传输模式,即m个数据源的数据通过网络传输到η个数据接收结点,这里数据源的数量远大于数据接收结点的数量。所述面向数据的寻址方式中,数据标识是数据在网络中寻址的依据,作为该寻址方式的地址,该标识在整个数据传输过程中是不变的。数据标识在网络中是唯一的,用来标识一类数据,能唯一区分所提供的数据服务的类型。在同类型的数据有多家数据提供商的情况下,数据标识可用来区分不同数据提供者的该种数据类型。数据标识要求为二进制数字。数据标识的分配可由数据标识服务器来分配,但不限于此。所述面向数据的寻址方式中的数据转发方法包括数据制造结点数据发送过程; 路由结点数据转发过程;数据使用结点数据接收过程。所述数据制造结点数据发送过程数据制造结点把本结点生成的数据装配上数据标识封装成数据包,并使用下层的协议把数据发送给网络。所述路由结点数据转发过程当路由结点收到带有数据标识的数据时,根据其数据标识查本结点的路由表,得到本数据的转发方向,如果有一个或多个转发方向则向这些方向转发该数据。此处使用了支持本寻址方式的路由方法生成的路由表。所述路由结点数据转发过程,具体步骤如下步骤SlOO :数据包Pa从端口 ρ到达,R为路由表;步骤SlOl :根据数据的封装结构从数据包Pa中得到数据标识DS和路程段限制字段的值TTL ;步骤S102 :判断路程段限制字段的值TTL的值是否大于0,如果是则执行步骤 S104,否则执行步骤S103 ;步骤S103 :抛弃数据Pa ;结束。步骤S104 :检查本结点路由表R中是否存在数据标识DS对应的表项,如果没有则执行步骤S103,否则执行步骤S105 ;步骤S105:从查到的数据标识DS对应的表项中得到端口列表,记为Pl,Pl = Pl-{ρ};将路程段限制字段的值TTL值减I并将TTL值写入Pa ;步骤S106 :对端口列表Pl中的每个端口,复制数据Pa并从此端口把数据发出去;结束。所述数据使用结点数据接收过程当数据到达数据使用结点,根据数据携带的数据标识检查此数据是否为本结点数据宣告使用的数据,如果是则把数据转交给上层协议处理。所述支持支持面向数据寻址方式的路由方法包括连通关系学习过程和路由表更新过程
连通关系学习过程首先,数据使用者发布数据宣告到邻接点的路由结点,宣告要使用数据标识所标识的数据,此宣告触发整个网络中路由结点的连通关系学习。数据宣告至少包括以下内容数据标识、数据使用者标识、路径长度、打开关闭标识、本结点到数据使用者的最佳距离。数据使用者标识要求在网络中具有唯一性,例如IP地址。此宣告的含义 数据使用者要使用或不使用某个数据;“打开I关闭”标识为“打开”表示使用,“关闭”表示不再使用,最佳距离为ο表示是本结点要使用此类数据。接着,路由结点收到数据宣告后更新本结点的连通关系表,如果连通关系表的变化可能会影响到数据转发的方向,则启动路由表更新过程更新路由表,并向自己的邻接路由结点发送新的数据宣告,通知邻接路由结点连通关系变化。连通关系表至少包含以下内容数据标识、数据使用者标识、端口 I、路径长度、定时器I、端口 2、路径长度、定时器I...端口 η、路径长度、定时器η、使用端口,其中当前使用的转发端口是本结点能够到达此数据使用者的端口中根据策略选出的最佳端口。 路由结点发出的数据宣告包含的内容同数据使用结点发出的数据宣告的内容相同。其中 “打开I关闭”标识如果为“打开”则表示在本结点所在的方向上数据标识所标识的数据的使用者,最佳路径长度为所携带的路径长度。如果为“关闭”则表示在本结点的方向上原有的数据使用者已经关闭了对数据标识所标识的数据的使用。所述路由结点上的连通关系学习过程,具体步骤如下步骤S200 :路由结点从端口 P收到数据宣告N ;步骤S201 :从数据宣告N中提取所宣告的宣告者和数据标识<nl,dsl> ;步骤S202 :检查连通关系表中是否存在包含<nl,dsl>的表项L,如果存在则执行步骤S204,否则执行步骤S203 ;步骤S203 :判断本数据宣告是否为打开宣告,如果为打开宣告则执行步骤S213, 否则结束本次学习过程;步骤S204 :判断本数据宣告是否为打开宣告,如果为打开宣告则执行步骤S210, 否则执行步骤S205 ;步骤S205 L中端口 P的定时器置为关闭状态;步骤S206 :判断该项所有端口对应的定时器是否都为关闭状态,如果是则执行步骤S207,否则执行步骤S208 ;步骤S207 :开闭标识flag = O ;删除该表项L ; 步骤S208 :判断P是否为L中的使用端口,如果是则执行步骤S209,否则结束本学习过程;步骤S209 L中的使用端口置为新的最小路径长度对应的端口 ;路径长度Ien = 使用端口的路径长度;开闭标识flag = I ;步骤S210 :将L中端口的P定时器重启;路径长度Len =宣告数据中的路径长度 +1 ;置L中的路径长度=Len ;步骤S211 :判断Len是否小于使用端口的路径长度,如果是则执行步骤S212否则结束本学习过程;步骤S212 :使用端D=P ;开闭标识flag =打开;步骤S213 :在连通表中添加新表项,将该表项对应的端口定时器清零,开始计时; 路径长度Len =宣告中的路径长度+1 ;开闭标识flag =打开;
步骤S214 :向自己的邻居(除端口 P外)发送标识宣告〈数据标识,数据使用者标识,Len, flag〉;启动路由表计算过程(数据标识);结束路由表更新过程根据所引起更新的数据标识检查连通关系表,统计所有含该数据标识的表项中的使用端口,用此使用端口集来更新路由表中对应的表项的转发端口列表,如果没有对应的项则增加表项,如果使用端口集是空则删除路由表中对应的表项。路由表描述了数据的转发方向,至少包含以下内容数据标识,转发端口列表。所述路由表更新过程,具体步骤如下步骤S300 DS是要更新的数据标识;Con为连通关系表;P1 = Com的第一个表项; P={};步骤S301 :判断端口列表Pl是否为空,如果端口列表Pl为空则结束;否则执行步骤 S302 ;步骤S302 :判断端口列表pl中的数据标识是否同数据标识DS相同,如果相同则执行步骤S303,否则执行步骤S305 ;步骤S303 :端口 P = PU {pl 使用端口 }步骤S304 :判断端口 P中的元素个数是否小于路由结点的端口数,如果是则执行步骤S305,否则执行步骤S306 ;步骤S305 :端口列表Pl指向下一个表项步骤S306 =Rd置为DS在路由表中对应的表项;如果Rd不存在且P古{},则建新的表项〈DS,P〉;如果Rd存在且P== {},则删除表项Rd ;如果Rd存在且P关{},则Rd.端口列表=P。其他说明一个数据使用结点可以独立地发布若干数据宣告,数据使用结点记录自己正在使用的数据标识。从数据使用结点发出的数据使用宣告,可以触发整个网络的连通关系同步。一个数据标识可被所有的产生同一类型数据的数据制造者使用,数据使用者通过对数据标识的宣告来宣布使用该数据标识所标识的数据,一个数据标识所标识的数据可以被多个数据使用者同时宣告使用,不同的数据使用者是相互独立的,对数据的使用也是相互独立的;每个数据标识都对应有具体的数据结构,该数据结构描述数据标识所标识的数据,供应用平台使用。本发明一种适用于广域物联网的非IP数据传输方法,实现了网络层上数据的多对多的数据传输,适合m:n的模式下的数据传输,此处m远大于n,适用于但不限于广域物联网上的数据传输。


图I本发明的涉及的网络实体及其关系;图2本发明的数据标识DS同数据制造者和数据使用者之间的关系;图3本发明的数据封装格式;图4本发明的数据转发过程流程图;图5本发明的连通关系学习流程;图6本发明的路由更新流程。
本发明实施例涉及到的网络实体包括数据制造者、路由结点、数据使用者。数据制造者是网络中数据传输的起点,处于网络末端,通常为数据采集网或数据采集结点。数据采集结点和数据采集网通过路由结点同Internet相连接入广域网,数据采集网可以包括数据簇结点,数据簇结点整合数据采集网络中的数据,整合后的数据通过簇结点发出,充当数据制造者的角色;路由结点是网络中的数据转发结点,如路由器等,负责维护路由表并转发收到的数据;数据使用者为网络中数据传输的终结点,多为应用平台。如图1,描述了本发明实施例中整个网络实体之间的协作关系首先数据使用者要向网络宣告要使用的数据,路由结点把这种使用关系的变化在网络中进行传播,此后数据制造者发送到网络中的数据才能由路由结点逐步转发到数据使用结点(图I中标号1、2、 代表步骤)。数据制造者是否发送数据与数据使用者没有关系,但数据使用者在使用数据之前必须对所使用的数据进行宣告。如图2,描述了本发明实施例中数据制造者、数据使用者和数据标识之间的关系。 多个数据制造者使用同一个数据标识来标识自己产生的数据,不同的数据使用者可以宣告使用同一个数据标识所标识的数据,同时可以宣告使用多个数据标识所标识的数据。例如 一种应用需要多种数据,数据的来源不同,提供者不同,这些不同类型的数据具有不同的数据标识,此应用平台作为数据使用者为所需的每种数据独立发布数据宣告,向网络宣告使用这些数据。本发明一种适用于广域物联网的非IP数据传输方法,包括面向数据的寻址方式和面向数据的数据路由方法。所述面向数据的寻址,地址为数据标识,且是网络中唯一的,其地址形式为二进制数字,本实施例中地址为32比特的二进制数。如图3所示,本发明实施例中的数据封装格式为了将来同IP协议的融合,采用类似IPv6的包头格式。具体说明如下版本为4比特,优先级为4比特,流标签为24比特, 有效数据长度为16比特,下一个包头为8比特,路程段限制为8比特,数据标识为32比特。 数据标识在此实施例中为32位的二进制数,可以标识232类数据。系统中最大路程段限制设置为X。流标签为一预留扩展字段,可以用来标识数据源。本发明实施例中数据制造过程数据制造者结点把数据以图3所示的数据封装格式进行封装,并交给以太网协议把数据发送到网络中去。如图4,为本发明实施例中路由结点进行数据转发的流程图,在路由结点上存储有路由表R, R的结构为〈数据标识,端口列表>。数据转发过程数据到达路由结点后,路由结点根据数据标识和路由表进行数据转发。数据报文中带有TTL路程段限制字段,每转发一次TTL值减1,当TTL值为O后抛弃该报文。数据转发的依据是收到的数据报所携带的数据标识DS和本结点的路由表。路由表结构为〈数据标识,端口列表〉。由于数据是以分类为基础的,所需的标识量比IP地址要少,已分配而不再使用的DS可以收回,而且DS的管理分配同数据传输没有关系,DS的管理和分配可以有多种实现方式,本实施例中采用静态分配方式。端口列表描述了数据要从哪些端口转发出去,不同的端口上有需要此数据的不同数据使用者。路由表不完全描述数据
8使用者的情况,只描述在那个方向上有需要此数据的结点,且通过不同的端口最终会到达不同的目的地。即如果端口列表中有两个以上端口,则肯定有不同的数据使用结点声明使用该数据。具体转发流程如下在步骤SlOO :数据Pa从端口 ρ到达,R为路由表;在步骤SlOl :从根据数据的封装结构从,Pa中得到数据标识DS和路程段限制字段的值TTL ;在步骤S102 :判断TTL的值是否大于0,如果是则执行S104,否则执行S103 ;在步骤S103 :抛弃数据报Pa ;在步骤S104 :检查本结点路由表R中是否存在DS对应的表项,如果没有则执行 S103,否则执行S105 ;在步骤S105 :从查到的DS对应的表项中得到端口列表,记为Pl,Pl = Pl-{ρ};将TTL值减I并将TTL写入Pa ;在步骤S106 :对Pl中的每个端口,复制Pa并从此端口把数据发出去;本发明实施例中数据使用者处理过程如下数据使用者收到数据后检查数据报中携带的DS是否是本结点需要的,如果是则把数据转交给上层应用处理,否则抛弃。在数据使用结点保存有自己的数据使用表,该表记录了本结点正在使用的数据的数据标识。所述支持本寻址方式的路由方法包括连通关系学习过程和路由表更新过程连通关系学习的过程涉及数据使用者和路由结点,由数据使用者触发连通关系学习过程。连通关系学习是通过收集数据宣告来实现的,本发明实施例中数据宣告包括如下数据数据标识DS,数据使用者标识UI,打开关闭标识flag,本结点到数据使用者的最佳距离length ;UI使用数据使用者的IP地址,flag用I标识打开O标识关闭,length为二进制数字。本发明实施例连通关系学习中数据使用者处理过程如果数据使用者要宣告使用某类数据。则将要宣告的数据的DS、自己的IP地址、flag(置为I)、length(置为O)封装进数据宣告中。如果数据使用者要宣告结束某类数据的使用,则将要宣告的数据的DS、自己的IP地址、flag (置为O)、length (置为O)封装进数据宣告中。接着把数据宣告发出。如图5是,本发明实施例中路由结点连通关系学习流程图,连通关系学习过程是根据邻居发来的数据宣告获得数据使用者所在的方位和距离的过程。通过连通关系学习生成连通关系表,表结构为〈数据标识,数据使用者标识;端口 1,路径长度,定时器;端口 2, 路径长度,定时器;...端口 n,路径长度,定时器;使用端口 > ;数据标识和数据使用者标识可以唯一地标识数据的最终目的地。端口和路径长度描述从此端口到达数据最终目的地的路程长度,定时器定义了该端口的有效期,描述了该端口对应数据转发路由是否可用,当定时器关闭时说明此端口不可用。路由结点在连通关系学习过程中也可能产生数据宣告,此数据宣告的结构与数据使用结点发出的数据宣告结构相同,包含< DS,n,flag,length〉。路由结点用它来通知邻接点连通关系的变化,其中,“ length ”标识从数据使用者到达此路由结点的最短路径长度, 以跳数计算。Flag为O表示该数据标识路由失效,为I表示该数据标识路由有效。路由结点的连通关系学习过程如下
在步骤S200 :路由结点从端口 P收到数据宣告N ;在步骤S201 :从N中提取宣告的宣告者和数据标识<nl,dsl> ;在步骤S202 :检查连通关系表中是否存在包含<nl,dsl>的表项L,如果存在则执行步骤S204,否则执行步骤S203 ;在步骤S203:判断本数据宣告是否为打开宣告,如果为打开宣告则执行步骤 S213,否则结束本次学习过程在步骤S204:判断本数据宣告是否为打开宣告,如果为打开宣告则执行步骤 S210,否则执行步骤S205 ;在步骤S205 L中端口 P的定时器置为关闭状态;在步骤S206 :判断该项所有端口对应的定时器是否都为关闭状态,如果是则执行步骤S207,否则执行步骤S208 ;在步骤S207 :开闭标识flag = O ;删除该表项L ;在步骤S208 :判断P是否为L中的使用端口,如果是则执行步骤S209,否则结束本学习过程;在步骤S209 L中的使用端口置为新的最小路径长度对应的端口 ;路径长度Ien =使用端口的路径长度;开闭标识flag = I ;在步骤S210 :将L中端口的P定时器重启;路径长度Len =宣告数据中的路径长度+1 ;置L中的路径长度=Len ;在步骤S211 :判断Len是否小于使用端口的路径长度,如果是则执行步骤S212否则结束本学习过程;在步骤S212 :使用端口 = P ;开闭标识flag =打开;在步骤S213 :在连通表中添加新表项,将该表项对应的端口定时器清零,开始计时;路径长度Len =宣告中的路径长度+1 ;开闭标识flag =打开;在步骤S214 :向自己的邻居(除端口 P外)发送标识宣告〈数据标识,数据使用者标识,Len, flag);启动路由表计算过程(数据标识);如图6所示,本发明实施例中是所述路由表计算过程,路由表计算过程由联通关系变化触发,路由表更新的触发条件是对应的DS连通表项有变化且此变化会影响数据转发方向,针对影响到的DS遍历连通关系表,收集对应含有该DS的表项中的使用端口,直到收集到的端口数大于本结点的端口数或者连通关系表遍历完成。路由表计算过程如下在步骤S300 DS是要更新的数据标识;Con为连通关系表;P1 = Com的第一个表项;P = H ;在步骤S301 :判断Pl是否为空,如果Pl为空则结束;否则执行步骤S302 ;在步骤S302 :判断pl中的数据标识是否同DS相同,如果相同则执行步骤S303,否则执行步骤S305 ;在步骤S303 P = PU{pl 使用端口 }在步骤S304:判断P中的元素个数是否小于路由结点的端口数,如果是则执行步骤S305,否则执行步骤S306 ;在步骤S305 P1指向下一个表项
在步骤S306 =Rd置为DS在路由表中对应的表项;如果Rd不存在且P关{},则建新的表项〈DS,P〉;如果Rd存在且P== {},则删除表项Rd ;如果Rd存在且P古{},则Rd.端口列表=P;应用举例企业A提供老年人健康服务,给老人装配有自动采集生命特征数据的设备,该设备可以采集血压、脉搏、心率、体温等数据。在互联网上建设有一医疗服务平台,该平台根据收到的生命体征数据来分析当前的身体状况,为人们提供日常养生建议或医疗建议。医疗机构B,要收集社会上老年人的身体健康情况调查数据,做人口身体素质分析,当发现网络中企业A采集的数据对自己的分析有用时,只要提出要使用这部分数据,采用本发明方法就可以使采集到的数据在传送到企业A的服务平台同时也传送到医疗机构B的服务平台。本传输方法在该应用举例中的工作过程如下企业A为自己采集的数据获得或确定一个数据标识0χ12340ΑΕ1。企业A的数据采集设备采集了数据之后,把该数据标识封装到数据包头的DS字段中,并把数据发送到网络中。当网络中的路由节点得到此数据后检查路由表,发现在路由表中有数据标识 0χ12340ΑΕ1对应的项<0χ12340ΑΕ1, {1,2}> ;路由节点获得转发端口集{1,2},且该数据包不是从I或2端口到来的,分别向端口 I和端口 2转发此数据包。数据到达企业A的服务平台,该平台查自己的数据使用表发现此数据是自己要用的数据,于是把数据转交给应用层。 数据到达医疗机构B的服务平台,该平台查自己的数据使用表发现此数据是自己要用的数据,于是把数据转交给应用层。在服务平台能收到数据之前必须要做如下工作企业A的服务平台向网络发送数据宣告,该宣告包含如下数据<0χ12340ΑΕ1,IPA,0,1>,向网络宣告本服务平台要使用带有数据标识0χ12340ΑΕ1的数据(因为,路径长度为0,打开关闭为I说明是打开宣告)。路由节点收到之后,发现是从端口 I收到的,检查连通关系表,发现没有<0χ12340ΑΕ1,IPA> 对应的表项,于是在连通关系表中添加新的表项<0xl2340AEl,IPA ;P1,1,Tl ;P1>,假设此路由器有三个接口 1、2、3,则生成新的数据宣告,包含如下数据<0χ12340ΑΕ1,IPA,1,1>从端口 2、3发出,告诉邻居在我这个方向上有0χ12340ΑΕ1所标识数据的使用者,距离为I。 更新自己的路由表,例如检查到路由表中存在<0χ12340ΑΕ1,{2} >,首先收集连通关系表中含有0χ12340ΑΕ1的表项的使用端口,得到一端口列表,例如该列表为{1,2},则路由表项 <0χ12340ΑΕ1, {2}> 更新为 <0χ12340ΑΕ1, {1,2}>。
权利要求
1.一种适用于广域物联网的非IP数据传输方法,其特征在于根据数据标识通过如下步骤实现数据转发a)将数据在数据制造结点装配上对应的数据标识,释放到网络;b)数据使用结点通过向网络发布数据宣告来宣布使用指定的数据标识所标识的数据, 数据宣告由数据使用结点或路由结点发向自己的邻结点,通知邻结点自己获得的连通关系的变化,路由结点根据收到的数据宣告修改网络连通关系表和路由表;c)网络中的路由结点依据数据携带的数据标识和路由表把数据向不同的方向转发,逐步转发直到到达数据使用结点;d)数据使用结点不再需要该类数据时,再次通过发送数据宣告通知网络,自己不再是该类数据的目的地,路由结点仍通过发布数据宣告来通知邻接点连通关系的变化。
2.如权利要求I所述的方法,其特征在于数据标识用来标识一类数据,能唯一区分所提供的数据服务的类型,在整个数据传输过程中是不变的;一个数据标识可被多个数据制造者使用,一个数据标识所标识的数据可以被多个数据使用者同时宣告使用。
3.如权利要求I所述的方法,其特征在于所述连通关系表记录了数据标识所标识的数据从各个方向到达其使用者的最短距离、有效时间,以及到达使用者的最佳转发方向,至少包括以下字段数据标识、数据使用者标识、端口 I、路径长度、定时器I、端口 2、路径长度、定时器2...端口 η、路径长度、定时器η、使用端口,η为大于I的自然数。
4.如权利要求I所述的方法,其特征在于所述路由表记录了数据转发的方向,即数据的目的地相对于本结点的方向,至少包括数据标识和端口列表两个字段。
5.如权利要求I所述的方法,其特征在于所述数据宣告至少包括数据标识、数据使用者标识、路径长度、关闭和开启四个字段。
6.如权利要求I所述的方法,其特征在于数据使用者和路由节点发出的数据宣告的结构是相同的,且都是宣告自己所在的方向上是否有该标识的数据的使用者,以及到达该使用者的最佳的路径长度。
7.如权利要求I所述的方法,其特征在于数据转发方法如下步骤SlOO :数据包Pa从端口 P到达,R为路由表;步骤SlOl :根据数据的封装结构从数据包Pa中得到数据标识DS和路程段限制字段的值 TTL ;步骤S102 :判断路程段限制字段的值TTL的值是否大于0,如果是则执行步骤S104,否则执行步骤S103 ;步骤S103 :抛弃数据Pa ;结束。步骤S104 :检查本结点路由表R中是否存在数据标识DS对应的表项,如果没有则执行步骤S103,否则执行步骤S105 ;步骤S105 :从查到的数据标识DS对应的表项中得到端口列表,记为Pl,Pl = Pl-{ρ}; 将路程段限制字段的值TTL值减I并将TTL值写入Pa ;步骤S106 :对端口列表Pl中的每个端口,复制数据Pa并从此端口把数据发出去;结束。
8.如权利要求I所述的方法,其特征在于建立路由结点的连通关系过程如下步骤S200 :路由结点从端口 P收到数据宣告N ;步骤S201 :从数据宣告N中提取所宣告的宣告者和数据标识<nl,dsl> ;步骤S202 :检查连通关系表中是否存在包含<nl,dsl>的表项L,如果存在则执行步骤 S204,否则执行步骤S203 ;步骤S203 :判断本数据宣告是否为打开宣告,如果为打开宣告则执行步骤S213,否则结束本次学习过程;步骤S204 :判断本数据宣告是否为打开宣告,如果为打开宣告则执行步骤S210,否则执行步骤S205 ;步骤S205 L中端口 P的定时器置为关闭状态;步骤S 2 O 6 :判断该项所有端口对应的定时器是否都为关闭状态,如果是则执行步骤 S207,否则执行步骤S208 ;步骤S207 :开闭标识flag = O ;删除该表项L ;步骤S208 :判断P是否为L中的使用端口,如果是则执行步骤S209,否则结束本学习过步骤S209 :L中的使用端口置为新的最小路径长度对应的端口 ;路径长度Ien =使用端口的路径长度;开闭标识flag = I ;步骤S210 :将L中端口的P定时器重启;路径长度Len =宣告数据中的路径长度+1 ; 置L中的路径长度=Len ;步骤S211 :判断Len是否小于使用端口的路径长度,如果是则执行步骤S212否则结束本学习过程;步骤S212 :使用端口 = P ;开闭标识flag =打开;步骤S213 :在连通表中添加新表项,将该表项对应的端口定时器清零,开始计时;路径长度Len =宣告中的路径长度+1 ;开闭标识flag =打开;步骤S214 :向自己的邻居(除端口 P外)发送标识宣告〈数据标识,数据使用者标识, Len, flag〉;启动路由表计算过程(数据标识);结束。
9.如权利要求I所述的方法,其特征在于路由表计算过程如下步骤S300 DS是要更新的数据标识;Con为连通关系表;P1 = Com的第一个表项;P =H ;步骤S301 :判断端口列表Pl是否为空,如果端口列表Pl为空则结束;否则执行步骤 S302 ;步骤S302 :判断端口列表pl中的数据标识是否同数据标识DS相同,如果相同则执行步骤S303,否则执行步骤S305 ;步骤S303 :端口 P = PU{pl使用端口 }步骤S304 :判断端口 P中的元素个数是否小于路由结点的端口数,如果是则执行步骤 S305,否则执行步骤S306 ;步骤S305 :端口列表Pl指向下一个表项步骤S306 =Rd置为DS在路由表中对应的表项;如果Rd不存在且P古{},则建新的表项〈DS,P〉;如果Rd存在且P== {},则删除表项Rd ;如果Rd存在且P古{}, M Rd.端口列表=P。
全文摘要
本发明公开了一种适用于广域物联网的非IP数据传输方法,其特征在于它通过以下步骤进行数据转发数据在数据制造结点装配上数据标识释放到网络;数据使用结点向网络发布数据宣告,路由结点根据收到的数据宣告修改网络连通关系表和路由表;路由结点依据数据携带的数据标识和路由表把数据向不同的方向转发,直到到达数据使用结点;数据使用结点不再需要该类数据时,发送数据宣告通知网络,自己不再是该类数据的目的地。本方法实现了数据网络多对多(m:n)的传输模式,即m个数据源的数据通过网络传输到n个数据接收结点(这里m远大于n)。应用本方法可以实现依据数据标识而不是目的结点的IP地址进行数据转发,适用于广域物联网的数据传输。
文档编号H04L1/00GK102594705SQ20121007451
公开日2012年7月18日 申请日期2012年3月20日 优先权日2012年3月20日
发明者吕新荣, 张明, 张绛丽, 杨习贝, 王长宝, 黄辉 申请人:江苏科技大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1