CN107453996A - 消息应答方法、消息转发方法及通信装置 - Google Patents
消息应答方法、消息转发方法及通信装置 Download PDFInfo
- Publication number
- CN107453996A CN107453996A CN201710591784.3A CN201710591784A CN107453996A CN 107453996 A CN107453996 A CN 107453996A CN 201710591784 A CN201710591784 A CN 201710591784A CN 107453996 A CN107453996 A CN 107453996A
- Authority
- CN
- China
- Prior art keywords
- message
- node
- response
- broadcast
- confirmation
- 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.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/16—Multipoint routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/14—Routing performance; Theoretical aspects
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/20—Hop count for routing purposes, e.g. TTL
-
- 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/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Mobile Radio Communication Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请公开了一种消息应答方法、消息转发方法及通信装置。所述消息应答方法包括:获取至少一广播消息,广播消息为一源节点通过广播的方式发出的,且广播消息中包括与广播消息关联的路由信息,路由信息包括:源节点地址和目的节点地址;响应于广播消息的路由信息中目的节点地址与本地节点地址相同,通过广播的方式向源节点发送应答消息;接收源节点响应于应答消息的至少一确认消息,确认消息中包括源节点到本地节点的通信路径信息;按照通信路径向源节点发送确认消息的确认响应消息。本申请通过目的节点的多次应答来建立可靠的通信路径,以保证在功率不对等的情况下亦可建立可用的路由,并保证通信过程中路由的可用性。
Description
技术领域
本申请属于物联网技术领域,尤其涉及一种消息应答方法、消息转发方法及通信装置。
背景技术
物联网技术是目前迅速发展的互联网技术之一。目前运用物联网技术在智能家居、工业生产、楼宇控制、环境监测、智慧城市等领域运用最广。而在这些领域的物联网网络不仅要进行数据的传输,而且要进行数据采集和融合、任务的协同控制。低成本、低功耗、多功能逐渐成为这些领域必不可少的特性。目前在这些领域运用最多的通信协议包括WiFi、蓝牙、紫蜂(ZigBee)。WiFi设备通信时占用的频点较多、功耗大,使得大多数的WiFi设备需要常规充电;蓝牙技术传输距离短,只适合近距离的数据通信,无法满足大多数物联网设备的通信需求;ZigBee技术在非信标模式下工作时,只有终端子节点能够进入休眠模式,协调器和路由节点必须处于活跃状态来接收处理来自终端子节点的数据信息,大大的增加了网络的整体功耗。
此外,由于物联网中设备和环境的变化而导致路由失败的情况也非常常见,比如在路由建立过程中由于功率不对称等原因,部分节点过于乐观地估计了网络传输环境而跳过了部分中间节点来建立路由路径,而通信过程中已建立的路由路径中部分节点之间实际是无法通信的,这通常直接导致了路由失败、路由路径无效,需要较长的时间和资源来发现问题并重新建立可靠的路由路径。因此现有技术中亟需一种可靠而快速的路由路径建立和修改手段。
发明内容
本申请实施例提供一种简单快速的自组网路由方案。
在一种可能的实施方式中,提供了一种消息应答方法,所述方法包括:
获取至少一广播消息,所述广播消息为一源节点通过广播的方式发出的,且所述广播消息中包括与所述广播消息关联的路由信息,所述路由信息包括:源节点地址和目的节点地址;
响应于所述广播消息的路由信息中目的节点地址与本地节点地址相同,通过广播的方式向所述源节点发送应答消息;
接收所述源节点响应于所述应答消息的至少一确认消息,所述确认消息中包括所述源节点到本地节点的通信路径信息;
按照所述通信路径向所述源节点发送所述确认消息的确认响应消息。
可选地,所述方法还包括:
在接收到所述通信路径之外的第一节点发来所述确认消息时,修改所述通信路径以加入所述第一节点地址;
按照所述修改后的通信路径向所述源节点发送所述确认消息的确认响应消息,其中,所述确认响应消息中包括所述修改后的通信路径信息。
可选地,所述方法中,各节点以不超过本地节点一预设功率的发射功率转发或发送消息。
在本申请的另一种可能的实施方式中,还提供一种消息转发方法,包括:
接收至少一广播消息,所述广播消息为一源节点通过广播的方式发出的;
通过广播的方式向一目的节点转发所述广播消息;
侦听所述目的节点响应于所述广播消息的至少一应答消息;
侦听所述源节点响应于所述应答消息的至少一确认消息,所述确认消息用于确定所述源节点到本地的上一跳节点地址关联的路径为所述源节点到所述目的节点的通信路径,在所述通信路径不包括本地节点时,启动一定时器;
响应于所述定时器超时且没有侦听到所述目的节点响应于所述确认消息的至少一确认响应消息,按照所述通信路径向所述目的节点转发所述至少一确认消息。
可选地,所述广播消息中包括路由信息,所述路由信息包括:跳数计数;
所述方法还包括:
在所述跳数计数不超过第一预设值时,将所述跳数计数增加1,并在第一预定延迟后再转发所述广播消息。
可选地,所述方法还包括:
接收所述目的节点响应于所述确认消息的至少一确认响应消息,所述确认响应消息中,所述通信路径被修改为在所述上一跳节点地址之后加入本地节点地址。
可选地,所述方法还包括:
在转发所述至少一确认消息时,将所述确认消息中的所述通信路径修改为在所述上一跳节点地址之后加入本地节点地址。
可选地,所述方法中,各节点以不超过本地节点一预设功率的发射功率转发或发送消息。
可选地,所述上一跳节点地址由所述广播消息中的路由信息得到,或由本地记录的本地到所述源节点的路由路径得到。
可选地,所述广播消息中包括路由信息,所述路由信息包括:用于标识所述广播消息的第一消息标识;
所述方法还包括:
根据所述第一消息标识,判断是否接收过所述广播消息;
响应于接收过所述路径建立消息,丢弃所述广播消息。
在本申请的再一种可能的实施方式中,还提供一种通信装置,包括:
广播消息获取单元,用于获取至少一广播消息,所述广播消息为一源节点通过广播的方式发出的,且所述广播消息中包括与所述广播消息关联的路由信息,所述路由信息包括:源节点地址和目的节点地址;
应答单元,用于响应于所述广播消息的路由信息中目的节点地址与本地节点地址相同,通过广播的方式向所述源节点发送应答消息;
确认消息接收单元,用于接收所述源节点响应于所述应答消息的至少一确认消息,所述确认消息中包括所述源节点到本地节点的通信路径信息;
确认响应单元,用于按照所述通信路径向所述源节点发送所述确认消息的确认响应消息。
可选地,所述装置还包括:
通信路径修改单元,用于在接收到所述通信路径之外的第一节点发来所述确认消息时,修改所述通信路径以加入所述第一节点地址;
所述确认响应单元按照所述修改后的通信路径向所述源节点发送所述确认消息的确认响应消息,其中,所述确认响应消息中包括所述修改后的通信路径信息。
可选地,所述装置中,各节点以不超过本地节点一预设功率的发射功率转发或发送消息。
在本申请的又一种可能的实施方式中,还提供一种通信装置,包括:
广播消息接收单元,用于接收至少一广播消息,所述广播消息为一源节点通过广播的方式发出的;
广播消息转发单元,用于通过广播的方式向一目的节点转发所述广播消息;
应答侦听单元,用于侦听所述目的节点响应于所述广播消息的至少一应答消息;
确认侦听单元,用于侦听所述源节点响应于所述应答消息的至少一确认消息,所述确认消息用于确定所述源节点到本地的上一跳节点地址关联的路径为所述源节点到所述目的节点的通信路径,在所述通信路径不包括本地节点时,启动一定时器;
确认转发单元,用于响应于所述定时器超时且没有侦听到所述目的节点响应于所述确认消息的至少一确认响应消息,按照所述通信路径向所述目的节点转发所述至少一确认消息。
可选地,所述广播消息中包括路由信息,所述路由信息包括:跳数计数;
所述装置还包括:
延迟转发单元,用于在所述跳数计数不超过第一预设值时,将所述跳数计数增加1,并在第一预定延迟后再转发所述广播消息。
可选地,所述装置还包括:
响应接收单元,用于接收所述目的节点响应于所述确认消息的至少一确认响应消息,所述确认响应消息中,所述通信路径被修改为在所述上一跳节点地址之后加入本地节点地址。
可选地,所述装置还包括:
路径修改单元,用于在转发所述至少一确认消息时,将所述确认消息中的所述通信路径修改为在所述上一跳节点地址之后加入本地节点地址。
可选地,所述装置中,各节点以不超过本地节点一预设功率的发射功率转发或发送消息。
可选地,所述上一跳节点地址由所述广播消息中的路由信息得到,或由本地记录的本地到所述源节点的路由路径得到。
可选地,所述广播消息中包括路由信息,所述路由信息包括:用于标识所述广播消息的第一消息标识;
所述装置还包括:
消息识别单元,用于根据所述第一消息标识,判断是否接收过所述广播消息;
丢弃单元,用于响应于接收过所述路径建立消息,丢弃所述广播消息。
在本申请的另一种可能的实施方式中,还提供一种通信设备,包括:
存储器以及一个或多个处理器;
其中,所述存储器与所述一个或多个处理器通信连接,所述存储器中存储有可被所述一个或多个处理器执行的指令,所述指令被所述一个或多个处理器执行,以使所述一个或多个处理器能够实现如上所述的方法。
本申请实施例提供的方法及装置在路径建立过程中,通过目的节点对路由建立消息和其中路由路径的多次应答,来保证路由路径的可靠性,从而在出现发射功率不对等的问题时,亦可获得有效的路由路径或快速修改路由路径,从而避免由于环境变化造成的未来的通讯不稳定。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例。
图1为依照本申请实施例的消息转发方法的一种示例的流程图;
图2为依照本申请实施例的广播方法的一种示例的流程图;
图3为依照本申请实施例的消息转发方法的又一种示例的流程图;
图4为依照本申请实施例的广播方法的又一种示例的流程图;
图5为依照本申请实施例的广播方法建立通信路径的过程示意图;
图6-9为依照本申请实施例的通信节点的四种示例的结构框图;
图10为依照本申请实施例的消息应答方法的一种示例的流程图。
具体实施方式
为使得本申请的发明目的、特征、优点能够更加的明显和易懂,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而非全部实施例。基于本申请中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本领域技术人员可以理解,本申请中的“第一”、“第二”等术语仅用于区别不同设备、模块或参数等,既不代表任何特定技术含义,也不表示它们之间的必然逻辑顺序。
本申请各实施例的技术方案适用于包括多个通信节点的任意无线传感网络,在下文的描述中,广播消息以为了建立源节点和目的节点之间的通信路径而发起的路径建立消息为例,但本申请不限于此。依照本申请各实施例的技术方案,无线传感网络中的各通信节点能够采用一种无中心、自组织、对等式、多跳和按需路由的通信机制来进行组网,使得网络部署简单快速。
请参照图1,为依照本申请实施例的消息转发方法的一种示例的流程图,该方法可由网络中的任一通信节点执行。如1所示的,本实施例的方法可包括步骤:
S120.获取至少一广播消息,所述广播消息为一源节点通过广播的方式向一目的节点发送的,且所述广播消息中包括与所述广播消息关联的路由信息。
以广播消息为路径建立消息为例,在本申请实施例的方法中,任一通信由节点期望与另一通信节点通信时(在本申请的描述中,发起通信/路径建立的通信节点称为源节点,通信/路径的终端通信节点称为目的节点),若网络中已存在二者之间的可用通信路径,则源节点可根据自身存储的到达该目的节点时经过的下一跳节点的物理地址进行数据的点对点发送,由下一跳节点根据存储的再下一跳节点的物理地址继续转发,直至数据发送到该目的节点。否则,源节点将通过广播的方式发送广播消息,即路径建立消息。路径建立消息中可包括与其关联的路由信息,包括但不限于:源节点地址、目的节点地址、以及跳数计数,跳数计数即广播消息在网络中被转发的次数,源节点广播的路径建立消息的初始跳数计数记为零。在源节点的信号范围内的通信节点,都可能获取到该路径建立消息。
S140.响应于所述跳数计数不超过一预设值,在第一预定延迟后,通过广播的方式转发所述路径建立消息。
在一种可能的实现方式中,该预设值为零,获取到任意路径建立消息后,若该消息当前的跳数计数为0,表示本地节点(接收到该路径建立消息的通信节点)为该路径建立消息的第一跳节点,依照本申请实施例的方法,将所述跳数计数增加1,并在一定的延迟时间之后再对该路径建立消息进行再次广播,此时,跳数计数即为1。此后接收到该路径建立消息的通信节点可根据相应的机制继续广播(不进行延迟)或丢弃该路径建立消息,使得路径建立消息在网络中传递像神经网络中传导一样,直至该路径建立消息通过网络中的任意路径到达对应的目的节点。
其中,第一预定延迟可为预先设置的延迟时间,用于避免无线电碰撞,从而避免因此造成的消息无法在网络中发送。对于任意通信节点,这样的时间可设置为一随机数。
综上,本实施例的方法在路径建立过程中,通过仅有限的通信节点对路径建立消息进行延迟广播,能够使得后续所有的转发都会对应这个延迟,避免无线电碰撞的同时路径建立速度更快。
此外,为了建立源节点和目的节点之间的通信路径,通信节点还应对接收到的路径建立信息的路由信息进行记录,以与周围的通信节点建立有效的联系,有助于通信路径的构建,以及不需要负责路径存储、管理和维护的专门节点。所述路由信息还包括:上一跳节点地址,对于第一跳节点来说,该上一跳节点地址即为源节点地址。具体地,本实施例的方法还包括:
S130.存储与所述路径建立消息关联的所述路由信息,包括上一跳节点地址、源节点地址、目的节点地址。
此外,在步骤S140中修改要发送的路由建立消息的路由信息:将所述上一跳节点地址修改为本地节点地址后,再通过广播的方式转发所述路径建立消息。
为了防止广播消息帧在网络中传递形成环路,所述路由信息中还可包括:用于标识所述广播消息的第一消息标识。这样,每个接收到广播消息的通信节点均会根据该第一消息标识判断是否已经对同样的消息进行了转发,并在是时,丢弃该消息。在这样的实现方式中,所述方法还包括:
S112.根据所述第一消息标识,判断是否转发过所述广播消息。
S114.响应于转发过所述特别消息,丢弃所述广播消息。
此外,如上所述的,本申请实施例的方法可由网络中的任意通信节点执行,执行本实施例的方法通信节点在参与一源节点到目的节点之间的通信路径的构建的同时,可能其本身还是另一通信的目的节点。因此,接收到任意广播消息时,通信节点将依照本申请实施例的方法,根据该消息的路由信息进行判断,并在目的节点地址即为本身的地址时,通过广播的方式发送对该广播消息的应答消息,该应答消息可能通过多条路径传回源节点,源节点可据此寻找到与源节点之间的最终通信路径,同时排除无线收发性能不对等造成的消息无法回传。在这样的实现方式中,本申请实施例的方法还包括:
S150.响应于一广播消息对应的目的节点地址与本地节点地址相同,通过广播的方式向所述广播消息对应的源节点发送应答消息。其中,所述应答消息中包括对应的广播消息的路由信息,还包括:用于标识所述应答消息的第二消息标识。
需要说明的是,对于任一通信节点,其可能接收到来自多条路径的同一广播消息,因此,也要根据第一消息标识丢弃重复接收到的广播消息。此外,为了避免应答消息与目的节点信号范围内还未停止的广播消息的信号冲突,在步骤S150中对应答消息的广播也可延迟一定的时间。具体地:
在步骤S150中,可在第二预定延迟后,通过广播的方式转发所述应答消息。第二预定延迟也可为任意预先设置的延迟时间,例如,根据历史传播信息,将该第二预定延迟设置为一跳传播所需要的时间。
实施本申请实施例的方法的通信节点可能处于任一目的节点信号范围内,此时,依照本申请实施例的方法,将接收到该目的节点广播的应答消息。在本申请实施例的方法中,接收到这样的应答消息的通信节点将通过点对点的单播方式转发该应答消息。具体地,本申请实施例的方法还可包括:
S160.获取至少一应答消息,所述应答消息为一目的节点通过广播的方式发送的,且所述应答消息中包括对应的广播消息的路由信息,还包括:用于标识所述应答消息的第二消息标识。
S180.根据与所述应答消息对应的路由信息,转发所述应答消息。
对于已经建立和/或参与过与应答消息对应的路由信息中指示的源节点之间的通信的通信节点,可以复用之前的路径,直接向该源节点转发所述应答消息。这样做能够降低每个通信节点需要存储的路由信息量。如果之前已存储过路由信息,则不会浪费新的存储空间。
而对于未曾存储过与对应的源节点之间的通信路径的通信节点,可根据与广播消息关联的记录,根据对应的上一跳节点地址,向上一跳节点转发该路径建立应答消息。具体地:
步骤S180可进一步包括:
S182.根据所述应答消息对应的路由信息中的源节点地址,确定对应的广播消息的上一跳节点地址;
S184.根据所述上一跳节点地址,向所述上一跳节点转发所述应答消息。
类似地,对于应答消息,为了防止形成环路,所述应答消息中也可包括:用于标识所述应答消息的第二消息标识。这样,每个接收到应答消息的通信节点可根据该第二消息标识判断是否已经对同样的消息进行了转发,并在是时,丢弃该消息。在这样的实现方式中,所述方法还包括:
S172.根据所述第二消息标识,判断是否转发过所述应答消息;
S174.响应于转发过所述应答消息,丢弃所述应答消息。
类似地,实施本申请实施例的方法的通信节点在构建一源节点与一目的节点之间的通信路径的同时,其本身也可能为另一广播消息对应的源节点,在接收到任一应答消息之后,需要根据对应的源节点地址,实施判断。并且,在本申请实施例的方法中,由于应答消息是从目的节点广播出来的,因此,应答消息可能是通过多条路径到达源节点的,源节点在选择出最终通信路径之后,沿该路径向目的节点发送确认消息,以完成通信路径的建立。相应地,本申请实施例的方法还可包括:
S190.响应于所述应答消息中包括的路由信息对应的源节点地址为本地节点地址,根据所述应答消息对应的上一跳节点地址,发送到目的节点的确认消息。所述确认消息用于确定与所述上一跳节点地址关联的路径为所述源节点与所述目的节点之间的最终通信路径。
在申请本实施例的方法中,可根据任意合适的原则确定源节点与目的节点之间的最终通信路径。在一种可能的实现方式中,所述路径建立应答消息中还可包括:所述对应的路径建立消息的总跳数。在这样的实现方式中,步骤S190中可至少根据所述至少一应答消息的总跳数,确定所述上一跳节点地址。例如,可确定总跳数最少的应答消息对应的路径为最终通信路径。在另一种可能的实现方式中,可根据应答消息到达源节点的时间确定最终通信路径,例如,选择最早到达源节点的应答消息对应的路径作为最终通信路径。在这样的实现方式中,步骤S190中可至少根据获取所述至少一应答消息的时间,确定所述上一跳节点地址。
此外,在本申请实施例的方法中,为了防止未来由于天气等环境因素造成的无线性能差异,导致通信不稳定,所有通信节点对路径建立过程中的消息发送均使用不超过一预设功率的发射功率进行发送,包括上述广播消息、应答消息、以及确认消息,且广播消息、应答消息、以及确认消息的发射功率可相同也可不同。该预设功率可例如为用户设定的发射功率的80%,而在通信路径建立之后,通信数据的传输可使用用户设定的发射功率的100%。
综上,本申请实施例的方法采用无中心、自组织、对等式、多跳和按需路由的方式建立源节点和目的节点之间的通信路径,能够不需要路径存储、管理和维护的节点,每个通信节点仅仅保存到达源节点和到达目的节点所经过的相邻节点信息,最终构建一个源节点和目的节点的双向传输路径,能够实现快速节点间通信。当进行二次数据传输时就不需要进行路径的寻找和建立,直接依据各节点存储的信息就可完成节点间的通信任务。
现在参照2,为依照本申请实施例一种实现方式的广播方法的一种示例的流程图,该方法可由作为源节点的任一通信节点执行。如2所示的,该方法可包括步骤:
S220.通过广播的方式向一目的节点发送广播消息,所述广播消息中包括与所述广播消息关联的路由信息,所述路由信息包括:源节点地址、目的节点地址、以及跳数计数。如结合图1所描述的,源节点期望与目的节点通信时,若网络中已存在二者之间的可用通信路径,则源节点可根据自身存储的到达该目的节点时经过的下一跳节点的物理地址进行数据的点对点发送,由下一跳节点根据存储的再下一跳节点的物理地址继续转发,直至数据发送到该目的节点。否则,源节点将通过广播的方式发送一广播消息,用于建立源节点与目的节点之间的通信路径。所述广播消息中包括与所述广播消息关联的路由信息,包括但不限于:源节点地址、目的节点地址、以及跳数计数,所述跳数计数配置为由转发所述路径建立消息的转发节点修改,且所述跳数计数不超过预设值(例如,零)时,所述广播消息被配置为由转发节点在第一预定延迟后转发。在源节点的信号范围内的转发节点,都可能获取到该广播消息,并依照参照图1所描述的消息转发方法协助建立源节点与目的节点之间的通信路径。
S240.获取响应于所述广播消息的至少一应答消息,所述应答消息为所述目的节点通过广播的方式发送的,且所述应答消息中包括对应的广播消息的路由信息以及用于标识所述应答消息的第二消息标识。
S260.根据所述应答消息的上一跳节点地址,发送到目的节点的确认消息,用于确定与所述上一跳节点地址关联的路径为所述源节点与所述目的节点之间的通信路径。
如结合图1所描述的,源节点可根据接收到的应答消息确定到目的节点的最终通信路径,并向目的节点发送确认消息。在申请本实施例的方法中,可根据任意合适的原则确定源节点与目的节点之间的最终通信路径。在一种可能的实现方式中,所述应答消息中还可包括:所述对应的广播消息的总跳数。在这样的实现方式中,步骤S260中可至少根据所述至少一应答消息的总跳数,确定所述上一跳节点地址。例如,可确定总跳数最少的应答消息对应的路径为最终通信路径。在另一种可能的实现方式中,可根据应答消息到达源节点的时间确定最终通信路径,例如,选择最早到达源节点的应答消息对应的路径作为最终通信路径。在这样的实现方式中,步骤S260中可至少根据获取所述至少一应答消息的时间,确定所述上一跳节点地址。
由于各通信节点的接收范围有限,为了尽可能实现通信路径的建立,本实施例的方法还设置了一定的重发机制,源节点在一预设时间内未获取到来自目的节点的应答消息,则重新发起路径建立,即再次广播发送到该目的节点的广播消息。具体地,本实施例的方法还可包括:
S280.响应于在预设时间内未获取到所述至少一应答消息,再次通过广播的方式向所述目的节点发送所述广播消息。
此外,为了尽可能避免尤其在较大网络规模的情况下可能出现的碰撞,可在一预定延迟时间之后重新发送广播消息。具体地,在步骤S280中,在预设时间内未获取到应答消息,可在第三预定延迟之后重新广播所述广播消息。
需要说明的是,本申请各实施例中的第一、第二、以及第三预定延迟均可为根据需要任意设置的,且对于每一通信路径(同一对源节点和目的节点)的建立,考虑到路径建立失败而重新发起通信路径建立的可能,每次路径建立过程中的第一、第二、和/或第三预定延迟可做相应调整。
现在参照图3,为依照本申请实施例另一种实现方式的消息转发方法的示例的流程图,该方法可由作为目的节点的任一通信节点执行。如3所示的,该方法可包括步骤:
S320.获取至少一广播消息,所述广播消息为一源节点通过广播的方式发送的,且所述广播消息中包括与所述广播消息关联的路由信息,所述路由信息包括:源节点地址、目的节点地址、以及跳数计数。
S340.通过广播的方式向所述源节点发送应答消息,所述应答消息中包括对应的广播消息的路由信息以及用于标识所述应答消息的第二消息标识;
其中,所述跳数计数配置为由转发所述广播消息的转发节点修改,且所述跳数计数不超过预设值时,所述广播消息被配置为由转发节点在第一预定延迟后转发。
为了避免应答消息与目的节点信号范围内还未停止的广播消息的信号冲突,在步骤S340中对应答消息的广播也可延迟一定的时间。具体地,在步骤S340中在第二预定延迟后,通过广播的方式转发所述应答消息。
此外,如参照图1所描述的,对于任一目的节点,其可能接收到来自多条路径的同一广播消息,因此,需要根据广播消息对应的第一消息标识丢弃重复接收到的广播消息。具体地,本申请实施例的方法还可包括:
S332.根据所述第一消息标识,判断是否接收过所述广播消息;
S334.响应于接收过所述广播消息,丢弃所述广播消息。
需要说明的是,在参照图2和图3所做的描述中,为避免赘述,对与结合图1所做的描述中已经记载的部分相同或相应的特征未作描述,这样的相同或相应的技术特征可参照图1所做的描述。
如4所示,本申请实施例还提供了一种通信方法,该方法包括:
S420.以第一预设功率,发送与通信路径建立相关联的消息,这样的信息如结合图1-3描述的广播消息、应答消息以及确认消息。
S440.响应于通信路径的建立,以第二预设功率发送通信数据,也即通信路径建立后,源节点和目的节点之间沿该路径所传输的数据。
其中,所述第一预设功率小于所述第二预设功率。在一种可能的实现方式中,第一预设功率不超过对应的通信节点的预设功率(例如,用户设定的功率)的80%,第二预设功率为通信节点的预设功率的100%。
与此同时,如图10所示,本申请实施例还提供了一种消息应答方法,包括:
S510,获取至少一广播消息,所述广播消息为一源节点通过广播的方式发出的,且所述广播消息中包括与所述广播消息关联的路由信息,所述路由信息包括:源节点地址和目的节点地址;
S520,响应于所述广播消息的路由信息中目的节点地址与本地节点地址相同,通过广播的方式向所述源节点发送应答消息;
S530,接收所述源节点响应于所述应答消息的至少一确认消息,所述确认消息中包括所述源节点到本地节点的通信路径信息;
S540,按照所述通信路径向所述源节点发送所述确认消息的确认响应消息。
可选地,所述方法还包括:
在接收到所述通信路径之外的第一节点发来所述确认消息时,修改所述通信路径以加入所述第一节点地址;
按照所述修改后的通信路径向所述源节点发送所述确认消息的确认响应消息,其中,所述确认响应消息中包括所述修改后的通信路径信息。
通过该方法,目的节点对源节点发出的路由建立消息进行多次应答,以保证两者之间建立起可靠的通信路径。在此情况下,当出现部分节点路由失败时,本申请实施例的方案也可快速发现问题并进行调整。
比如,在网络中的部分转发节点处,本申请实施例还提供了一种消息转发方法,包括:
接收至少一广播消息,所述广播消息为一源节点通过广播的方式发出的;
通过广播的方式向一目的节点转发所述广播消息;
侦听所述目的节点响应于所述广播消息的至少一应答消息;
侦听所述源节点响应于所述应答消息的至少一确认消息,所述确认消息用于确定所述源节点到本地的上一跳节点地址关联的路径为所述源节点到所述目的节点的通信路径,在所述通信路径不包括本地节点时,启动一定时器;
响应于所述定时器超时且没有侦听到所述目的节点响应于所述确认消息的至少一确认响应消息,按照所述通信路径向所述目的节点转发所述至少一确认消息。
可选地,所述方法还包括:
接收所述目的节点响应于所述确认消息的至少一确认响应消息,所述确认响应消息中,所述通信路径被修改为在所述上一跳节点地址之后加入本地节点地址。
或者,可选地,所述方法还包括:
在转发所述至少一确认消息时,将所述确认消息中的所述通信路径修改为在所述上一跳节点地址之后加入本地节点地址。
可以看出,通过在转发节点对目的节点的响应消息进行侦听(无线网络中节点实际可接收到周边节点发送的信号,只是在发觉内容与本地无关时丢弃),可快速发现相关路径建立过程出现的错误,并针对该错误可高效且可靠地进行修正,从而保证了路径建立的效率和可靠性。
本领域技术人员可以理解,在本申请具体实施方式的上述方法中,各步骤的序号大小并不意味着执行顺序的先后,各步骤的执行顺序应以其功能和内在逻辑确定,而不应对本申请具体实施方式的实施过程构成任何限定。
此外,在本申请的再一种可能的实施方式中,还提供一种通信装置,包括:
广播消息获取单元,用于获取至少一广播消息,所述广播消息为一源节点通过广播的方式发出的,且所述广播消息中包括与所述广播消息关联的路由信息,所述路由信息包括:源节点地址和目的节点地址;
应答单元,用于响应于所述广播消息的路由信息中目的节点地址与本地节点地址相同,通过广播的方式向所述源节点发送应答消息;
确认消息接收单元,用于接收所述源节点响应于所述应答消息的至少一确认消息,所述确认消息中包括所述源节点到本地节点的通信路径信息;
确认响应单元,用于按照所述通信路径向所述源节点发送所述确认消息的确认响应消息。
可选地,所述装置还包括:
通信路径修改单元,用于在接收到所述通信路径之外的第一节点发来所述确认消息时,修改所述通信路径以加入所述第一节点地址;
所述确认响应单元按照所述修改后的通信路径向所述源节点发送所述确认消息的确认响应消息,其中,所述确认响应消息中包括所述修改后的通信路径信息。
可选地,所述装置中,各节点以不超过本地节点一预设功率的发射功率转发或发送消息。
在本申请的又一种可能的实施方式中,还提供一种通信装置,包括:
广播消息接收单元,用于接收至少一广播消息,所述广播消息为一源节点通过广播的方式发出的;
广播消息转发单元,用于通过广播的方式向一目的节点转发所述广播消息;
应答侦听单元,用于侦听所述目的节点响应于所述广播消息的至少一应答消息;
确认侦听单元,用于侦听所述源节点响应于所述应答消息的至少一确认消息,所述确认消息用于确定所述源节点到本地的上一跳节点地址关联的路径为所述源节点到所述目的节点的通信路径,在所述通信路径不包括本地节点时,启动一定时器;
确认转发单元,用于响应于所述定时器超时且没有侦听到所述目的节点响应于所述确认消息的至少一确认响应消息,按照所述通信路径向所述目的节点转发所述至少一确认消息。
可选地,所述广播消息中包括路由信息,所述路由信息包括:跳数计数;
所述装置还包括:
延迟转发单元,用于在所述跳数计数不超过第一预设值时,将所述跳数计数增加1,并在第一预定延迟后再转发所述广播消息。
可选地,所述装置还包括:
响应接收单元,用于接收所述目的节点响应于所述确认消息的至少一确认响应消息,所述确认响应消息中,所述通信路径被修改为在所述上一跳节点地址之后加入本地节点地址。
可选地,所述装置还包括:
路径修改单元,用于在转发所述至少一确认消息时,将所述确认消息中的所述通信路径修改为在所述上一跳节点地址之后加入本地节点地址。
可选地,所述装置中,各节点以不超过本地节点一预设功率的发射功率转发或发送消息。
可选地,所述上一跳节点地址由所述广播消息中的路由信息得到,或由本地记录的本地到所述源节点的路由路径得到。
可选地,所述广播消息中包括路由信息,所述路由信息包括:用于标识所述广播消息的第一消息标识;
所述装置还包括:
消息识别单元,用于根据所述第一消息标识,判断是否接收过所述广播消息;
丢弃单元,用于响应于接收过所述路径建立消息,丢弃所述广播消息。
此外,本申请实施例还提供了一种存储设备,例如,计算机可读介质,包括在被执行时进行以下操作的计算机可读指令:执行上述图1中所示实施方式中的方法的各步骤的操作。
此外,本申请实施例还提供了一种存储设备,例如,计算机可读介质,包括在被执行时进行以下操作的计算机可读指令:执行上述图2中所示实施方式中的方法的各步骤的操作。
此外,本申请实施例还提供了一种存储设备,例如,计算机可读介质,包括在被执行时进行以下操作的计算机可读指令:执行上述图3中所示实施方式中的方法的各步骤的操作。
此外,本申请实施例还提供了一种存储设备,例如,计算机可读介质,包括在被执行时进行以下操作的计算机可读指令:执行上述图4中所示实施方式中的方法的各步骤的操作。
下面通过具体示例进一步说明本申请各实施例的技术方案。
参照图5,为依照本申请各示例的方法建立通信节点(源节点)A到通信节点(目的节点)S的通信路径的过程示意图。
如图5所示,当节点A期望与节点S进行通信时,如果节点A中存储了到达节点S经过的下一跳节点的物理地址,则表明在网络中已经存在节点A与节点S之间的通信路径(如图5中的A→C→I→J→S)。节点A根据存储的节点C的物理地址将数据发送给节点C,节点C根据存储的节点I的物理地址继续将数据发送给节点I,直到此数据传输给节点S,通信任务完成。
如果节点A中没有存储到达节点S经过的下一跳的物理地址,则依照本申请各实施例的技术方案,通过如下步骤建立通信路径。
1、节点A通过广播的方式发出路径建立消息,该消息中包含:消息ID(区分每一次广播)、源节点地址、目的地址、跳数计数(当前为零)、上一跳的转发节点地址。
2、假设整个网络中节点B、C、D收到了这一路径建立消息:
首先各节点B、C、D记录如下路由信息:广播的消息ID、上一跳节点地址、源节点地址、目的节点地址。
然后,各节点B、C、D各自随机延迟一段时间,并将路径建立消息中包含的跳数计数加1,然后二次广播,二次广播的路径建立消息中的跳数计数为1。
3、接着,网络中的节点E、F收到了来自节点D的广播,而节点G收到了来自节点B的广播。虽然节点G也能收到来自节点C的广播,但是由于节点对同一ID广播消息不重复接收,之前的广播由节点B、C、D转发时进行了随机延迟,因此节点C的消息到达较晚,所以被丢弃(图4中虚线箭头所示为被丢弃的消息对应的传递路径)。
收到消息的节点E、F、G同样记录如下信息:路径建立请求消息ID、上一跳节点地址、源节点地址、目的节点地址。然后,节点E、F、G不再进行延迟,直接将广播消息中包含的跳数计数再次加1,然后三次广播(此时跳数计数为2)。
4、最终,直到节点S收到首个广播的路径建立消息(节点S同样对于同一ID的消息不重复接收),之后节点S延迟一跳传播所需要的时间,启动最佳通讯路径确认过程,以有助于节点A寻找最佳路径、同时排除无线收发性能不对等造成的消息无法回传。
最佳通讯路径确认过程如下:
1、节点S广播路径建立应答请求,该广播消息中包含:路径建立应答请求消息ID、路径建立请求消息ID、源节点地址、目的节点地址、总跳数(节点S收到对应的路径建立消息时的跳数计数),启动反向通信路径发现过程。
2、假设节点N、J、Q收到了这一广播消息。
首先节点N、J、Q各自查询是否记录过到达节点A的上一跳节点的物理地址,如果记录过,则可随机延迟一段时间后,直接向记录中的上一级节点发送S给A的应答消息;
如果节点N、J、Q查询后没有记录过去往节点A的上一跳地址,则可随机延迟一段时间后,根据路径建立请求消息对应的路由消息中的上一跳节点地址,向上一跳节点发送给A的应答消息。
3、假设上一跳节点包括节点L、K、I、H,节点L、K、I、H收到这个点对点应答消息后,同样按照上述步骤,首先查询自己是否记录过到达A的上一跳地址记录,如果没有,则继续向路径建立请求消息对应的上一跳节点发送给A的应答消息。
4、以此类推,直到节点A首次收到节点S发来的应答消息(图4中由粗箭头示意),则不再处理其他节点发来应答消息(如图4中由D到A以及由B到A的粗虚线箭头所示),并启动最终路径确认。
5、节点A向收到的路径建立应答消息的上一跳节点C发送去往节点S的路径建立确认信息,节点C将之前临时记录的去往节点S的上一跳地址及下一条地址保存到自己的路由表中,然后向下一节点I继续发送路径建立确认消息,节点I也将之前的临时记录进行最终确认保存,直到节点S收到路径建立确认消息,整个路径建立过程完成。
说明,在整个路径建立过程汇总,所有的节点使用用户设定的发射功率的80%进行发射,防止未来由于天气等环境因素造成的无线性能差异,导致通讯不稳定。节点A向节点S发出路径建立消息、及节点S向节点A进行路径建立应答、以及节点A向节点S发送路径建立确认消息,都有超时机制,如果指定时间内没有相应,则可重新启动路径建立过程。
路径建立成功后,节点A向节点S发送数据时,直接向下一跳节点发送数据,节点S收到后进行确认应答,以确保通讯可靠,这里如果超时没有收到回应,则重新启动路径发现过程。
在某些情况下,有可能出现节点间通信的两个方向发射功率不对等导致路由失败的情况。假设现在有ABCD四个节点,发起路由请求时:A发出的消息只有B能收到,B发的只有C可以收到,C发的目的节点D收到。返回路由请求时:由于功率不对等问题,D发送的B和C都收到了,然后B会先把消息发给A,这是A进行路径确认时路径就变成了A→B→D,而实际上B到D是无法通讯的,最终导致D收不到消息,路由失败。为解决这个问题,采用了更一步的方案。根据进一步的方案,在上述情况中,当D发送广播返回路由请求时,B和C侦听D返回的路由请求,并可以做一个记录。当A发送路由确认消息的时候,B收到发给D的时候,C侦听该确认消息,并启动一定时器。启动定时器后,C侦听到响应于所述确认消息的至少一确认相应信息。该确认相应信息由目的节点发出。若定时器到期后,C如果没有收到D给A的确认相应消息,则C会发送一个确认消息给D,D将路由确认相应消息,会先给C,然后C继续给B,再给A,并依据此方式,将路径修改为A→B→C→D,使得A与D之间可以建立起一个实际可用的路径,而不用重新进行路由的发现和建立过程。
图6为本申请实施例的通信节点的又一种示例的结构示意图,本申请具体实施例并不对通信节点的具体实现做限定。如图6所示,该通信节点600可以包括:
处理器(processor)610、通信接口(Communications Interface)620、存储器(memory)630、以及通信总线640。其中:
处理器610、通信接口620、以及存储器630通过通信总线640完成相互间的通信。
通信接口620,用于与比如客户端等的网元通信。
处理器610,用于执行程序632,具体可以执行上述方法实施例中的相关步骤。
具体地,程序632可以包括程序代码,所述程序代码包括计算机操作指令。
处理器610可能是一个中央处理器CPU,或者是特定集成电路ASIC(ApplicationSpecific Integrated Circuit),或者是被配置成实施本申请实施例的一个或多个集成电路。
存储器630,用于存放程序632。存储器630可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。程序632具体可以用于使得所述通信节点600执行以下步骤:
获取至少一广播消息,所述广播消息中包括与所述广播消息关联的路由信息,所述路由信息包括:跳数计数;
至少响应于所述跳数计数不超过一预设值,将所述跳数计数增加1,并在第一预定延迟后,通过广播的方式转发所述广播消息。
程序632中各步骤的具体实现可以参见上述实施例中的相应步骤和单元中对应的描述,在此不赘述。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的设备和模块的具体工作过程,可以参考前述方法实施例中的对应过程描述,在此不再赘述。
图7为本申请实施例的通信节点的又一种示例的结构示意图,本申请具体实施例并不对通信节点的具体实现做限定。如图7所示,该通信节点700可以包括:
处理器(processor)710、通信接口(Communications Interface)720、存储器(memory)730、以及通信总线740。其中:
处理器710、通信接口720、以及存储器730通过通信总线740完成相互间的通信。
通信接口720,用于与比如客户端等的网元通信。
处理器710,用于执行程序732,具体可以执行上述方法实施例中的相关步骤。
具体地,程序732可以包括程序代码,所述程序代码包括计算机操作指令。
处理器710可能是一个中央处理器CPU,或者是特定集成电路ASIC(ApplicationSpecific Integrated Circuit),或者是被配置成实施本申请实施例的一个或多个集成电路。
存储器730,用于存放程序732。存储器730可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。程序732具体可以用于使得所述通信节点700执行以下步骤:
通过广播的方式向一目的节点发送广播消息,所述广播消息中包括与所述广播消息关联的路由信息,所述路由信息包括:跳数计数;
获取响应于所述广播消息的至少一应答消息,所述应答消息为一目的节点通过广播的方式发送的,且所述应答消息中包括对应的广播消息的路由信息以及用于标识所述应答消息的第二消息标识;
根据所述至少一应答消息的上一跳节点地址,发送到所述目的节点的确认消息;
其中,所述跳数计数配置为由转发所述广播消息的转发节点修改,且所述跳数计数不超过一预设值时,所述广播消息被配置为由转发节点在第一预定延迟后转发。
程序732中各步骤的具体实现可以参见上述实施例中的相应步骤和单元中对应的描述,在此不赘述。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的设备和模块的具体工作过程,可以参考前述方法实施例中的对应过程描述,在此不再赘述。
图8为本申请实施例的通信节点的又一种示例的结构示意图,本申请具体实施例并不对通信节点的具体实现做限定。如图8所示,该通信节点800可以包括:
处理器(processor)810、通信接口(Communications Interface)820、存储器(memory)830、以及通信总线840。其中:
处理器810、通信接口820、以及存储器830通过通信总线840完成相互间的通信。
通信接口820,用于与比如客户端等的网元通信。
处理器810,用于执行程序832,具体可以执行上述方法实施例中的相关步骤。
具体地,程序832可以包括程序代码,所述程序代码包括计算机操作指令。
处理器810可能是一个中央处理器CPU,或者是特定集成电路ASIC(ApplicationSpecific Integrated Circuit),或者是被配置成实施本申请实施例的一个或多个集成电路。
存储器830,用于存放程序832。存储器830可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。程序832具体可以用于使得所述通信节点800执行以下步骤:
获取至少一广播消息,所述广播消息为一源节点通过广播的方式发送的,且所述广播消息中包括与所述广播消息关联的路由信息,所述路由信息包括:跳数计数;
通过广播的方式向所述源节点发送应答消息,所述应答消息中包括对应的广播消息的路由信息以及用于标识所述应答消息的第二消息标识;
其中,所述跳数计数配置为由转发所述广播消息的转发节点修改,且所述跳数计数不超过预设值时,所述广播消息被配置为由转发节点在第一预定延迟后转发。
程序832中各步骤的具体实现可以参见上述实施例中的相应步骤和单元中对应的描述,在此不赘述。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的设备和模块的具体工作过程,可以参考前述方法实施例中的对应过程描述,在此不再赘述。
图9为本申请实施例的通信节点的又一种示例的结构示意图,本申请具体实施例并不对通信节点的具体实现做限定。如图9所示,该通信节点900可以包括:
处理器(processor)910、通信接口(Communications Interface)920、存储器(memory)930、以及通信总线940。其中:
处理器910、通信接口920、以及存储器930通过通信总线940完成相互间的通信。
通信接口920,用于与比如客户端等的网元通信。
处理器910,用于执行程序932,具体可以执行上述方法实施例中的相关步骤。
具体地,程序932可以包括程序代码,所述程序代码包括计算机操作指令。
处理器910可能是一个中央处理器CPU,或者是特定集成电路ASIC(ApplicationSpecific Integrated Circuit),或者是被配置成实施本申请实施例的一个或多个集成电路。
存储器930,用于存放程序932。存储器930可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。程序932具体可以用于使得所述通信节点900执行以下步骤:
以第一预设功率,发送与通信路径建立相关联的消息;
响应于通信路径的建立,以第二预设功率发送通信数据;
其中,所述第一预设功率小于所述第二预设功率。
程序932中各步骤的具体实现可以参见上述实施例中的相应步骤和单元中对应的描述,在此不赘述。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的设备和模块的具体工作过程,可以参考前述方法实施例中的对应过程描述,在此不再赘述。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的设备和模块的具体工作过程,可以参考前述装置实施例中的对应描述,在此不再赘述。
尽管此处所述的主题是在结合操作系统和应用程序在计算机系统上的执行而执行的一般上下文中提供的,但本领域技术人员可以认识到,还可结合其他类型的程序模块来执行其他实现。一般而言,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、组件、数据结构和其他类型的结构。本领域技术人员可以理解,此处所述的本主题可以使用其他计算机系统配置来实践,包括手持式设备、多处理器系统、基于微处理器或可编程消费电子产品、小型计算机、大型计算机等,也可使用在其中任务由通过通信网络连接的远程处理设备执行的分布式计算环境中。在分布式计算环境中,程序模块可位于本地和远程存储器存储设备的两者中。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及方法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对原有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的计算机可读取存储介质包括以存储如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方式或技术来实现的物理易失性和非易失性、可移动和不可因东介质。计算机可读取存储介质具体包括,但不限于,U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、可擦除可编程只读存储器(EPROM)、电可擦可编程只读存储器(EEPROM)、闪存或其他固态存储器技术、CD-ROM、数字多功能盘(DVD)、HD-DVD、蓝光(Blue-Ray)或其他光存储设备、磁带、磁盘存储或其他磁性存储设备、或能用于存储所需信息且可以由计算机访问的任何其他介质。
以上实施方式仅用于说明本发明,而并非对本发明的限制,有关技术领域的普通技术人员,在不脱离本发明的精神和范围的情况下,还可以做出各种变化和变型,因此所有等同的技术方案也属于本发明的范畴,本发明的专利保护范围应由权利要求限定。
Claims (10)
1.一种消息应答方法,其特征在于,所述方法包括:
获取至少一广播消息,所述广播消息为一源节点通过广播的方式发出的,且所述广播消息中包括与所述广播消息关联的路由信息,所述路由信息包括:源节点地址和目的节点地址;
响应于所述广播消息的路由信息中目的节点地址与本地节点地址相同,通过广播的方式向所述源节点发送应答消息;
接收所述源节点响应于所述应答消息的至少一确认消息,所述确认消息中包括所述源节点到本地节点的通信路径信息;
按照所述通信路径向所述源节点发送所述确认消息的确认响应消息。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在接收到所述通信路径之外的第一节点发来所述确认消息时,修改所述通信路径以加入所述第一节点地址;
按照所述修改后的通信路径向所述源节点发送所述确认消息的确认响应消息,其中,所述确认响应消息中包括所述修改后的通信路径信息。
3.一种消息转发方法,其特征在于,所述方法包括:
接收至少一广播消息,所述广播消息为一源节点通过广播的方式发出的;
通过广播的方式向一目的节点转发所述广播消息;
侦听所述目的节点响应于所述广播消息的至少一应答消息;
侦听所述源节点响应于所述应答消息的至少一确认消息,所述确认消息用于确定所述源节点到本地的上一跳节点地址关联的路径为所述源节点到所述目的节点的通信路径,在所述通信路径不包括本地节点时,启动一定时器;
响应于所述定时器超时且没有侦听到所述目的节点响应于所述确认消息的至少一确认响应消息,按照所述通信路径向所述目的节点转发所述至少一确认消息。
4.根据权利要求3所述的方法,其特征在于,所述广播消息中包括路由信息,所述路由信息包括:跳数计数;
所述方法还包括:
在所述跳数计数不超过第一预设值时,将所述跳数计数增加1,并在第一预定延迟后再转发所述广播消息。
5.根据权利要求3或4所述的方法,其特征在于,所述方法还包括:
接收所述目的节点响应于所述确认消息的至少一确认响应消息,所述确认响应消息中,所述通信路径被修改为在所述上一跳节点地址之后加入本地节点地址。
6.根据权利要求3或4所述的方法,其特征在于,所述方法还包括:
在转发所述至少一确认消息时,将所述确认消息中的所述通信路径修改为在所述上一跳节点地址之后加入本地节点地址。
7.一种通信装置,其特征在于,所述装置包括:
广播消息获取单元,用于获取至少一广播消息,所述广播消息为一源节点通过广播的方式发出的,且所述广播消息中包括与所述广播消息关联的路由信息,所述路由信息包括:源节点地址和目的节点地址;
应答单元,用于响应于所述广播消息的路由信息中目的节点地址与本地节点地址相同,通过广播的方式向所述源节点发送应答消息;
确认消息接收单元,用于接收所述源节点响应于所述应答消息的至少一确认消息,所述确认消息中包括所述源节点到本地节点的通信路径信息;
确认响应单元,用于按照所述通信路径向所述源节点发送所述确认消息的确认响应消息。
8.根据权利要求7所述的装置,其特征在于,所述装置还包括:
通信路径修改单元,用于在接收到所述通信路径之外的第一节点发来所述确认消息时,修改所述通信路径以加入所述第一节点地址;
所述确认响应单元按照所述修改后的通信路径向所述源节点发送所述确认消息的确认响应消息,其中,所述确认响应消息中包括所述修改后的通信路径信息。
9.一种通信装置,其特征在于,所述装置包括:
广播消息接收单元,用于接收至少一广播消息,所述广播消息为一源节点通过广播的方式发出的;
广播消息转发单元,用于通过广播的方式向一目的节点转发所述广播消息;
应答侦听单元,用于侦听所述目的节点响应于所述广播消息的至少一应答消息;
确认侦听单元,用于侦听所述源节点响应于所述应答消息的至少一确认消息,所述确认消息用于确定所述源节点到本地的上一跳节点地址关联的路径为所述源节点到所述目的节点的通信路径,在所述通信路径不包括本地节点时,启动一定时器;
确认转发单元,用于响应于所述定时器超时且没有侦听到所述目的节点响应于所述确认消息的至少一确认响应消息,按照所述通信路径向所述目的节点转发所述至少一确认消息。
10.一种通信设备,其特征在于,包括:
存储器以及一个或多个处理器;
其中,所述存储器与所述一个或多个处理器通信连接,所述存储器中存储有可被所述一个或多个处理器执行的指令,所述指令被所述一个或多个处理器执行,以使所述一个或多个处理器能够实现如权利要求1-10中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710591784.3A CN107453996A (zh) | 2017-07-19 | 2017-07-19 | 消息应答方法、消息转发方法及通信装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710591784.3A CN107453996A (zh) | 2017-07-19 | 2017-07-19 | 消息应答方法、消息转发方法及通信装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107453996A true CN107453996A (zh) | 2017-12-08 |
Family
ID=60487444
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710591784.3A Pending CN107453996A (zh) | 2017-07-19 | 2017-07-19 | 消息应答方法、消息转发方法及通信装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107453996A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109729557A (zh) * | 2018-12-28 | 2019-05-07 | 上海昭宁信息科技有限公司 | 一种无线组网的方法和终端 |
CN110278547A (zh) * | 2018-03-13 | 2019-09-24 | 博通集成电路(上海)股份有限公司 | 用于建立低功耗蓝牙网状网络的装置和方法 |
CN112565349A (zh) * | 2020-11-18 | 2021-03-26 | 华帝股份有限公司 | 一种基于中央油烟机的无线通信方法及相关设备 |
CN112822098A (zh) * | 2020-12-25 | 2021-05-18 | 河南卓正电子科技有限公司 | 物联网的路由选择方法、装置及存储介质 |
CN114079994A (zh) * | 2020-08-11 | 2022-02-22 | 东芝泰格有限公司 | 通信系统、通信装置和通信方法 |
CN115460126A (zh) * | 2019-09-27 | 2022-12-09 | 瞻博网络公司 | 自治系统间跟踪路由消息 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020137459A1 (en) * | 2001-03-21 | 2002-09-26 | Koichi Ebata | Network and method for transmitting messages on a common wireless resource without causing broadcast storm |
US20070097945A1 (en) * | 2005-10-27 | 2007-05-03 | Wang Guo Q | Methods and systems for a wireless routing architecture and protocol |
US20080117885A1 (en) * | 2006-11-21 | 2008-05-22 | Samsung Electronics Co., Ltd. | Control message processing method in wireless mesh network and control message processing apparatus using the method |
CN101212495A (zh) * | 2006-12-26 | 2008-07-02 | 株式会社Ntt都科摩 | 无线多跳网路中的定位方法及装置 |
CN101489276A (zh) * | 2009-01-06 | 2009-07-22 | 北京交通大学 | 一种移动Ad Hoc网络多播路由方法 |
CN101626303A (zh) * | 2008-07-09 | 2010-01-13 | 华为技术有限公司 | 一种数据的发送方法、系统和设备 |
CN101873273A (zh) * | 2010-07-08 | 2010-10-27 | 华为技术有限公司 | 路由转发方法、路由节点及无线通信网络 |
CN102821437A (zh) * | 2012-08-13 | 2012-12-12 | 东南大学 | 一种无线自组网按需距离矢量路由方法 |
CN105681028A (zh) * | 2015-12-28 | 2016-06-15 | 华南师范大学 | 足球烯结构的多用户网络系统及其量子密钥分发方法 |
-
2017
- 2017-07-19 CN CN201710591784.3A patent/CN107453996A/zh active Pending
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020137459A1 (en) * | 2001-03-21 | 2002-09-26 | Koichi Ebata | Network and method for transmitting messages on a common wireless resource without causing broadcast storm |
US20070097945A1 (en) * | 2005-10-27 | 2007-05-03 | Wang Guo Q | Methods and systems for a wireless routing architecture and protocol |
US20080117885A1 (en) * | 2006-11-21 | 2008-05-22 | Samsung Electronics Co., Ltd. | Control message processing method in wireless mesh network and control message processing apparatus using the method |
CN101212495A (zh) * | 2006-12-26 | 2008-07-02 | 株式会社Ntt都科摩 | 无线多跳网路中的定位方法及装置 |
CN101626303A (zh) * | 2008-07-09 | 2010-01-13 | 华为技术有限公司 | 一种数据的发送方法、系统和设备 |
CN101489276A (zh) * | 2009-01-06 | 2009-07-22 | 北京交通大学 | 一种移动Ad Hoc网络多播路由方法 |
CN101873273A (zh) * | 2010-07-08 | 2010-10-27 | 华为技术有限公司 | 路由转发方法、路由节点及无线通信网络 |
CN102821437A (zh) * | 2012-08-13 | 2012-12-12 | 东南大学 | 一种无线自组网按需距离矢量路由方法 |
CN105681028A (zh) * | 2015-12-28 | 2016-06-15 | 华南师范大学 | 足球烯结构的多用户网络系统及其量子密钥分发方法 |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110278547A (zh) * | 2018-03-13 | 2019-09-24 | 博通集成电路(上海)股份有限公司 | 用于建立低功耗蓝牙网状网络的装置和方法 |
CN110278547B (zh) * | 2018-03-13 | 2022-04-08 | 博通集成电路(上海)股份有限公司 | 用于建立低功耗蓝牙网状网络的装置和方法 |
CN109729557A (zh) * | 2018-12-28 | 2019-05-07 | 上海昭宁信息科技有限公司 | 一种无线组网的方法和终端 |
CN115460126A (zh) * | 2019-09-27 | 2022-12-09 | 瞻博网络公司 | 自治系统间跟踪路由消息 |
CN115460126B (zh) * | 2019-09-27 | 2024-05-17 | 瞻博网络公司 | 自治系统间跟踪路由消息 |
CN114079994A (zh) * | 2020-08-11 | 2022-02-22 | 东芝泰格有限公司 | 通信系统、通信装置和通信方法 |
CN112565349A (zh) * | 2020-11-18 | 2021-03-26 | 华帝股份有限公司 | 一种基于中央油烟机的无线通信方法及相关设备 |
CN112822098A (zh) * | 2020-12-25 | 2021-05-18 | 河南卓正电子科技有限公司 | 物联网的路由选择方法、装置及存储介质 |
CN112822098B (zh) * | 2020-12-25 | 2023-04-07 | 河南卓正电子科技有限公司 | 物联网的路由选择方法、装置及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107453996A (zh) | 消息应答方法、消息转发方法及通信装置 | |
CN107196859A (zh) | 消息转发方法、广播方法、消息应答方法及通信设备 | |
Huang et al. | Green data gathering under delay differentiated services constraint for internet of things | |
Lu et al. | Teamphone: Networking smartphones for disaster recovery | |
Goto et al. | Data gathering using mobile agents for reducing traffic in dense mobile wireless sensor networks | |
Jabbar et al. | Analysis of factors affecting energy aware routing in wireless sensor network | |
Labiod | Wireless ad hoc and Sensor Networks | |
JP4203997B2 (ja) | センサネットワークにおけるアドレス割当方法 | |
WO2018098750A1 (zh) | 分布式网络的消息传输方法及节点 | |
CN103813364A (zh) | 一种基于区域感知的移动自组织网络中断数据的恢复方法 | |
Kundaliya et al. | Routing algorithms for wireless sensor networks: Analysed and compared | |
CN105072657A (zh) | 基于数据命名为中心的无线传感器网络异步休眠调度方法 | |
Guo et al. | A new solution based on optimal link-state routing for named data MANET | |
Yilmaz et al. | Localization-free and energy-efficient hole bypassing techniques for fault-tolerant sensor networks | |
Crepaldi et al. | Quicksilver: Application-driven inter-and intra-cluster communication in vanets | |
Fazio et al. | IP address autoconfiguration in ad hoc networks: Design, implementation and measurements | |
Rambabu et al. | Multipath cluster-based hybrid MAC protocol for wireless sensor networks | |
CN107248955A (zh) | 通信方法及通信装置 | |
WO2018098748A1 (zh) | 分布式网络的通信方法、节点及系统 | |
Gonçalves et al. | A mobility solution for low power and lossy networks using the LOADng protocol | |
Cornejo et al. | Neighbor discovery in mobile ad hoc networks using an abstract MAC layer | |
Friedman et al. | A density-driven publish subscribe service for mobile ad-hoc networks | |
Bellavista et al. | The trap coverage area protocol for scalable vehicular target tracking | |
Menchaca-Mendez et al. | Opportunistic mobile sensing in the fog | |
Kasraoui et al. | Zbr-M: A New Zigbee Routing Protocol. |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20171208 |
|
RJ01 | Rejection of invention patent application after publication |