发明内容
发明人发现,在相关技术中,如果组建自组网,则在自组网中,各个节点无法知晓其他节点的连接关系,如果一个关键节点断线则会导致无法进行有效的通信。
本发明实施例提供了一种组网通信方法、系统、节点设备、存储介质和电子设备,以至少解决组网通信过程中各个节点设备无法知晓其他节点设备的连接关系从而无法有效通信的技术问题。
根据本发明实施例的第一方面,提供了一种组网通信方法,应用于第一节点设备,包括:在向同一组网中的第二节点设备发送消息时,将所述第一节点设备的本地路由表中的节点信息填入到所述消息中;根据所述第一节点设备的本地路由表中的节点信息确定接收节点设备,并将所述消息发送给所述接收节点设备,以使所述接收节点设备执行如下操作,直到所述接收节点设备为所述第二节点设备:在所述接收节点设备为同一组网中第三节点设备时,将所述接收节点设备的本地路由表中的节点信息补充到所述消息中,并根据所述接收节点设备的本地路由表中的节点信息确定下一个节点设备,将更新后的所述消息发送给所述下一个节点设备,并将所述下一个节点设备确定为新的接收节点设备。
作为一种可选的示例,所述节点信息包括相邻节点设备及对应的跳数值,所述跳数值为所述相邻节点设备到达所述第二节点设备的跳数,所述根据所述第一节点设备的本地路由表中的节点信息确定接收节点设备包括:从所述第一节点设备的相邻节点设备中确定出所述跳数值最小的节点设备;从所述跳数值最小的节点设备中确定出信号强度最大的节点设备;将确定出的所述信号强度最大的节点设备确定为所述接收节点设备。
作为一种可选的示例,将所述第一节点设备的节点信息填入到所述消息或者将所述接收节点设备的节点信息补充到所述消息中包括:将所述节点信息写入到所述消息的节点信息标志位中。
作为一种可选的示例,所述消息为GPS短消息,所述GPS短消息中的源地址标志位和目标地址标志位各占1个字节,所述节点信息标志位至多占8个字节。
作为一种可选的示例,所述方法还包括:将所述第一节点设备的节点地址填入到所述消息的发送地址标志位中,以使所述接收节点设备在接收到所述消息后将所述接收节点设备的节点地址填入到所述消息的接收地址集标志位中,以形成所述消息的传输路径信息。
作为一种可选的示例,所述组网的组网方式为窄带通信自组网。
作为一种可选的示例,所述窄带通信自组网包括至少两个节点设备,每一个节点设备依次发送广播令牌,由接收到所述广播令牌的节点设备将所述广播令牌中的源地址信息和跳数值保存到本地路由表中,其中,所述跳数值为发送所述广播令牌的节点设备到达所述第二节点设备的跳数。
根据本发明实施例的第二方面,提供了一种组网通信方法,应用于接收节点设备,包括:接收同一组网中的第一节点设备发送的消息;所述消息为所述第一节点设备向同一组网中的第二节点设备发送的,所述消息包括所述第一节点设备的本地路由表中的节点信息;对所述接收节点设备执行如下操作,直到所述接收节点设备为所述第二节点设备:在所述接收节点设备为同一组网中第三节点设备时,将所述接收节点设备的本地路由表中的节点信息补充到所述消息中,并根据所述接收节点设备的本地路由表中的节点信息确定下一个节点设备,将更新后的所述消息发送给所述下一个节点设备,以使所述下一个节点设备确定为新的接收节点设备。
作为一种可选的示例,所述节点信息包括相邻节点的跳数值,所述跳数值为所述相邻节点设备到达所述第二节点设备的跳数,所述根据所述接收节点设备的本地路由表中的节点信息确定下一个节点设备,包括:从所述接收节点设备的相邻节点设备中确定出所述跳数值最小的节点设备;从所述跳数值最小的节点设备中确定出信号强度最大的节点设备;将确定出的所述信号强度最大的节点设备确定为所述接收节点设备。
作为一种可选的示例,将所述接收节点设备的本地路由表中的节点信息补充到所述消息中包括:将所述节点信息写入到所述消息的节点信息标志位中。
作为一种可选的示例,所述消息为GPS短消息,所述GPS短消息中的源地址标志位和目标地址标志位各占1个字节,所述节点信息标志位至多占8个字节。
作为一种可选的示例,所述消息还包括在发送地址标志位中的所述第一节点设备的节点地址;所述方法还包括:在接收到所述消息后,将所述接收节点设备的节点地址填入到所述消息的接收地址集标志位中,以形成所述消息的传输路径信息。
作为一种可选的示例,所述组网的组网方式为窄带通信自组网。
作为一种可选的示例,所述窄带通信自组网包括至少两个节点设备,每一个节点设备依次发送广播令牌,由接收到所述广播令牌的节点设备将所述广播令牌中的源地址信息和跳数值保存到本地路由表中,其中,所述跳数值为发送所述广播令牌的节点设备到达所述第二节点设备的跳数。
根据本发明实施例的第三方面,还提供了一种第一节点设备,包括:第一填入单元,用于在向同一组网中的第二节点设备发送消息时,将所述第一节点设备的本地路由表中的节点信息填入到所述消息中;确定单元,用于根据所述第一节点设备的本地路由表中的节点信息确定接收节点设备,并将所述消息发送给所述接收节点设备,以使所述接收节点设备执行如下操作,直到所述接收节点设备为所述第二节点设备:在所述接收节点设备为同一组网中第三节点设备时,将所述接收节点设备的本地路由表中的节点信息补充到所述消息中,并根据所述接收节点设备的本地路由表中的节点信息确定下一个节点设备,将更新后的所述消息发送给所述下一个节点设备,并将所述下一个节点设备确定为新的接收节点设备。
作为一种可选的示例,所述节点信息包括相邻节点设备及对应的跳数值,所述跳数值为所述相邻节点设备到达所述第二节点设备的跳数,所述确定单元包括:第一确定模块,用于从所述第一节点设备的相邻节点设备中确定出所述跳数值最小的节点设备;第二确定模块,用于从所述跳数值最小的节点设备中确定出信号强度最大的节点设备;第三确定模块,用于将确定出的所述信号强度最大的节点设备确定为所述接收节点设备。
作为一种可选的示例,所述第一节点设备还用于:在将所述第一节点设备的节点信息填入到所述消息或者将所述接收节点设备的节点信息补充到所述消息时,将所述节点信息写入到所述消息的节点信息标志位中。
作为一种可选的示例,所述消息为GPS短消息,所述GPS短消息中的源地址标志位和目标地址标志位各占1个字节,所述节点信息标志位至多占8个字节。
作为一种可选的示例,所述第一节点设备还包括:第二填入单元,用于将所述第一节点的节点地址填入到所述消息的发送地址标志位中,以使所述接收节点在接收到所述消息后将所述接收节点的节点地址填入到所述消息的接收地址集标志位中,以形成所述消息的传输路径信息。
作为一种可选的示例,所述组网的组网方式为窄带通信自组网。
作为一种可选的示例,所述窄带通信自组网包括至少两个节点,每一个节点依次发送广播令牌,由接收到所述广播令牌的节点将所述广播令牌中的源地址信息和跳数值保存到本地路由表中,其中,所述跳数值为发送所述广播令牌的节点到达所述第二节点的跳数。
根据本发明实施例的第四方面,还提供了一种接收节点设备,包括:接收单元,用于接收同一组网中的第一节点设备发送的消息;所述消息为所述第一节点设备向同一组网中的第二节点设备发送的,所述消息包括所述第一节点设备的本地路由表中的节点信息;处理单元,用于对所述接收节点设备执行如下操作,直到所述接收节点设备为所述第二节点设备:在所述接收节点设备为同一组网中第三节点设备时,将所述接收节点设备的本地路由表中的节点信息补充到所述消息中,并根据所述接收节点设备的本地路由表中的节点信息确定下一个节点设备,将更新后的所述消息发送给所述下一个节点设备,以使所述下一个节点设备确定为新的接收节点设备。
作为一种可选的实施方式,所述节点信息包括相邻节点的跳数值,所述跳数值为所述相邻节点设备到达所述第二节点设备的跳数,所述处理单元包括:第一确定模块,用于从所述接收节点设备的相邻节点设备中确定出所述跳数值最小的节点设备;第二确定模块,用于从所述跳数值最小的节点设备中确定出信号强度最大的节点设备;第三确定模块,用于将确定出的所述信号强度最大的节点设备确定为所述接收节点设备。
作为一种可选的实施方式,所述处理单元包括:写入模块,用于将所述节点信息写入到所述消息的节点信息标志位中。
作为一种可选的实施方式,所述消息为GPS短消息,所述GPS短消息中的源地址标志位和目标地址标志位各占1个字节,所述节点信息标志位至多占8个字节。
作为一种可选的实施方式,所述消息还包括在发送地址标志位中的所述第一节点的节点地址;所述装置还包括:填入单元,用于在接收到所述消息后,将所述接收节点的节点地址填入到所述消息的接收地址集标志位中,以形成所述消息的传输路径信息。
作为一种可选的实施方式,所述组网的组网方式为窄带通信自组网。
作为一种可选的实施方式,所述窄带通信自组网包括至少两个节点,每一个节点依次发送广播令牌,由接收到所述广播令牌的节点将所述广播令牌中的源地址信息和跳数值保存到本地路由表中,其中,所述跳数值为发送所述广播令牌的节点到达所述第二节点的跳数。
根据本发明实施例的第五方面,还提供了一种存储介质,该存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述组网通信方法。
根据本发明实施例的第六方面,还提供了一种电子设备,包括存储器和处理器,上述存储器中存储有计算机程序,上述处理器被设置为通过所述计算机程序执行上述的组网通信方法。
根据本发明实施例的第七方面,还提供了一种组网通信系统,包括上述第三方面的第一节点设备和第四方面的接收节点设备。
在本发明实施例中,采用了在向同一组网中的第二节点设备发送消息时,将所述第一节点设备的本地路由表中的节点信息填入到所述消息中;根据所述第一节点设备的本地路由表中的节点信息确定接收节点设备,并将所述消息发送给所述接收节点设备,以使所述接收节点设备执行如下操作,直到所述接收节点设备为所述第二节点设备:在所述接收节点设备为同一组网中第三节点设备时,将所述接收节点设备的本地路由表中的节点信息补充到所述消息中,并根据所述接收节点设备的本地路由表中的节点信息确定下一个节点设备,将更新后的所述消息发送给所述下一个节点设备,并将所述下一个节点设备确定为新的接收节点设备的方法,由于在上述方法中,在同一组网中的节点设备之间发送消息时,会将接收节点设备的节点信息写入到消息中,以及根据本地路由表中的节点信息确定接收节点设备,从而实现了在各个节点设备之间准确进行通信的目的,进而解决了组网通信过程中各个节点设备无法知晓其他节点设备的连接关系从而无法有效通信的技术问题。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
根据本发明实施例的第一方面,提供了一种组网通信方法,应用于第一节点设备,可选地,如图1所示,上述方法包括:
S102,在向同一组网中的第二节点设备发送消息时,将所述第一节点设备的本地路由表中的节点信息填入到所述消息中;
S104,根据所述第一节点设备的本地路由表中的节点信息确定接收节点设备,并将所述消息发送给所述接收节点设备,以使所述接收节点设备执行如下操作,直到所述接收节点设备为所述第二节点设备:在所述接收节点设备为同一组网中第三节点设备时,将所述接收节点设备的本地路由表中的节点信息补充到所述消息中,并根据所述接收节点设备的本地路由表中的节点信息确定下一个节点设备,将更新后的所述消息发送给所述下一个节点设备,并将所述下一个节点设备确定为新的接收节点设备。
可选地,本实施例中,同一组网可以为多个移动通信终端组成的网络。多个移动通信终端中每一个移动通信终端可以作为一个节点,位置可以移动。移动通信终端可以为手机、平板电脑、对讲机等。移动通信终端的通信距离有限,例如,两个移动通信终端的距离太远,超出直接通信距离(例如对讲机的直接通信距离为5千米),则可以通过组建同一组网的方式进行通信。可以理解的是,当第一节点设备可直接将所述消息发送给第二节点设备时,第二节点设备接收所述消息,并获取所述消息中的节点信息。
需要说明的是,第一节点设备区别于第二节点设备,第三节点设备为区别于第一节点设备和第二节点设备,即第一节点设备、第二节点设备及第三节点设备分别为不同的节点设备。
例如,以A到F共6个对讲机为例,如图2所示。图2为一种可选的网络拓扑图。图2中,节点设备假设为对讲机,圆圈为对讲机的覆盖范围,也就是有效的直接通信距离。B、C、D在A的覆盖范围内,A、D、E在C的覆盖范围内,C、D、F在E的覆盖范围内,E在F的覆盖范围内,E、F在A的覆盖范围之外。C和D之间可连通(图中未示),C和E之间可连通(图中未示)。A和F之间的距离太远,超出了直接通信距离,因此,可以通过自组网实现A和F之间的通信。
图3为一种按照时序传输广播令牌的示意图。图3中,SLOT1为时隙1,SLOT2为时隙2。A节点在时隙1广播数据,在时隙2发送A的广播令牌,B、C、D、E、F均在时隙2发送广播令牌。节点A到F在不同的时隙2发送广播令牌,各发送一次为一个周期,以此方式实现组网。
图4为一种可选的A节点设备在时隙1广播GPS短消息的示意图。图4中,在不同帧的时隙1,依次广播PRE_CSBK1、PRE_CSBK2、GPS DATA_HEADER、GPS DATA_BLOCK 和GPS DATA_Lastblock。
本实施例中,消息可以为GPS短消息,进一步为DMR协议中的GPS短消息。可以理解的是,消息也可以为除GPS短消息以外的其他消息。
可选地,本实施例中,第一节点设备和第二节点设备之间进行通信时,第一节点设备可以通过接收节点设备向第二节点设备发送通信数据。例如,第一节点设备可以向第二节点设备发送第一节点设备的位置信息。在发送位置信息时,可以将第一节点设备的节点信息填入到地址信息中,将消息发送给接收节点设备。接收节点设备将接收节点设备的节点信息填入到位置信息中。接收节点设备可以有多个,任意一个接收节点设备可以被用于转发第一节点设备的位置信息。将接收节点设备的节点地址填入到位置信息中,可以选择任意一个接收节点设备转发位置信息。由接收节点设备将位置信息转发给第二节点设备。
通过本实施例,通过上述方法,从而可以保证各个节点设备在通信过程中可以有效的通信,避免出现各个节点设备无法知晓其他节点的连接关系从而无法有效通信的问题。
作为一种可选的示例,所述节点信息包括相邻节点设备及对应的跳数值,所述跳数值为所述相邻节点设备到达所述第二节点设备的跳数。如图5所示,所述根据所述第一节点设备的本地路由表中的节点信息确定接收节点设备包括:
S502,从所述第一节点设备的相邻节点设备中确定出所述跳数值最小的节点设备;
S504,从所述跳数值最小的节点设备中确定出信号强度最大的节点设备;
S506,将确定出的所述信号强度最大的节点设备确定为所述接收节点设备。
可选地,本实施例中,由于第一节点设备的相邻节点设备可以有多个,因此,可以先确定出跳数值最小的节点设备,然后从中确定出信号强度最大的节点设备作为第一节点设备的接收节点设备。上述的跳数值表示相邻节点设备到达所述第二节点设备的跳数。而跳数指一个节点设备到达第二节点设备所需要的转发节点设备的数量。例如,节点设备F到节点设备A需要经过节点设备E、D的转发,则节点设备F到节点设备A的跳数为2。可选地,跳数值表示相邻节设备到达第二节点设备的最少跳数。可以理解的是,相邻节点设备为某一节点设备的通信覆盖范围内的其他节点设备,以图2的示例为例,节点设备A的相邻节点设备为节点设备A覆盖范围内的节点设备B、C、D,即节点设备B、C、D为节点设备A的相邻节点设备。通过将相邻节点设备中的跳数值最小及信号强度最大的节点设备作为接收节点设备,相当于选择了消息传输的最优路径,实现了快速可靠地传输消息。
作为一种可选的示例,将所述第一节点设备的节点信息填入到所述消息或者将所述接收节点设备的节点信息补充到所述消息中包括:将所述节点信息写入到所述消息的节点信息标志位中。
作为一种可选的示例,所述消息为GPS短消息,所述GPS短消息中的源地址标志位和目标地址标志位各占1个字节,所述节点信息标志位至多占8个字节。
可选地,在本实施例中,在将节点地址填入到GPS短消息中时,GPS短消息中包括有源地址标志位和目标地址标志位,本实施例中的源地址标志位和目标地址标志位的大小各占GPS短消息的一个字节,而节点的节点信息标志位至多占GPS短消息的8个字节。例如,现有的GPS短消息中,在GPS短消息的PRE_CSBK1中源地址标志位和目标地址标志位各占3个字节,本实施例中源地址标志位和目标地址标志位各占1个字节,在GPS短消息的PRE_CSBK1中源地址标志位和目标地址标志位各占3个字节,本实施例中源地址标志位和目标地址标志位各占1个字节,而其余8个字节中可任意选取1个或多个字节用于记录节点信息,即作为节点信息标志位。具体实现时,可充分利用8个字节,并以2字节为一组,分别记录对应跳数值下信号强度最大的两个相邻节点设备的节点地址,比如将PRE_CSBK1中前2字节作为跳数为1的的两个信号强度大的节点设备的节点地址标志位,将PRE_CSBK1中后2字节作为跳数为2的两个信号强度大的节点设备的节点地址标志位,共占4个字节;将GPS短消息中PRE_CSBK2中的前2字节作为跳数为3的的两个信号强度大的节点设备的节点地址标志位,将PRE_CSBK2中后2字节作为跳数为4的两个信号强度大的节点设备的节点地址标志位,共占4个字节。通过以上方法,实现了节点信息的记录,在传输GPS短消息时,可获取上一节点设备(发送节点设备)的路由信息。
作为一种可选的示例,如图6所示,上述方法还包括:
S602,将所述第一节点设备的节点地址填入到所述消息的发送地址标志位中,以使所述接收节点设备在接收到所述消息后将所述接收节点设备的节点地址填入到所述消息的接收地址集标志位中,以形成所述消息的传输路径信息。
可选地,本实施例中,可以将第一节点设备的节点地址填入到消息的发送地址标志位中,将接收节点设备的节点地址填入到消息的接收地址集标志位中。被填入到消息的接收地址集标志位中的地址信息形成了消息的传输路径信息。作为一种可选的示例,所述组网的组网方式为窄带通信自组网。
可选地,本实施例中,通过窄带通信自组网实现对讲机之间的通信。
作为一种可选的示例,所述窄带通信自组网包括至少两个节点设备,每一个节点设备依次发送广播令牌,由接收到所述广播令牌的节点设备将所述广播令牌中的源地址信息和跳数值保存到本地路由表中,其中,所述跳数值为发送所述广播令牌的节点设备到达所述第二节点设备的跳数。
结合上述图2的网络拓扑进行说明。例如,A到F六个节点组成自组网。六个节点中A节点可以和E节点、F节点进行通信。由于A与E或者A与F的距离太远,超出了直接通信距离,因此,可以通过其他节点进行转发。本实施例中,通信信息可以为全球定位系统(GlobalPositioning System,简称为GPS)短消息。利用传递GPS短消息时定义PRE_CSBK帧传递本地路由。本实施例定义第一个PRE_CSBK帧(PRE_CSBK_1),包括了Target address(目标地址)、Source address(源地址)、Jump 1(跳数值为1的节点的节点地址)、Jump 2(跳数值为2的节点的节点地址),定义第二个PRE_CSBK帧(PRE_CSBK_2),包括了Target address(目标地址)、Source address(源地址)、Jump 3(跳数值为3的节点的节点地址)、Jump 4(跳数值为4的节点的节点地址)。在DMR协议中Target address和 Source address长度都是3个字节,本实施例中改为只有一个字节(将群组内的节点数控制在<256),空出来的4个字节用于填写Jump地址。此外,利用传递GPS短消息时,本实施例定义DATA_HEADER来传递转发关系。本实施例定义DATA_HEADER中Forward Num字段位置为转发次数;定义Destination(目标地址)和 Source address(源地址)长度都是一个字节(将群组内的节点数控制在<256),空出来的4个字节用于填写Jump地址,在一种具体的实施方式中,该4个字节用于依次记录转发的接收节点的节点地址。
表1是本实施例配置PRE_CSBK_1的表。如表1中,将目标地址Target address和源地址Source address的长度为一个字节,即8位,其后4个字节分别填入第一跳Jump1的两个信号强度最大的节点的节点地址和第二跳Jump2的两个信号强度最大的节点的节点地址。此处以源地址为F为例。
表1
表2是本实施例配置PRE_CSBK_2的表。如表2中,将目标地址Target address和源地址Source address的长度为一个字节,即8位,其余4个字节分别填入第一跳Jump3的两个信号强度最大的节点的节点地址和第二跳Jump3的两个信号强度最大的节点的节点地址。此处以源地址为F为例。
表2
表3到表5分别为本实施例配置节点F、节点E和节点D的DATA_HEADER的表,本示例以源地址为F为例,表示节点F的消息依次经过节点E和节点D进行转发。如表3所示,将Destination和Source分别为1个字节,其余4个字节分别记录第一跳到第四跳的节点的节点地址。在F向A发送位置信息时,表4中,第一跳记录为E的节点地址,表5中,第一跳记录为E的节点地址,第二跳记录为D的节点地址。
表3
表4
表5
在本实施例中,节点A到节点F建立如图2所示的网络拓扑,各个节点如图3所示的时序发送广播令牌建立连接,各个节点发送GPS位置信息。在PRE_CSBK中携带各个节点的路由信息,DATA_HEADER携带转发信息,随着全网传播,各节点之间都获知到了其他节点的位置及其连接关系,在转发消息时自动识别最优路径。
如以节点F为例,节点F将路由信息、转发信息配置到PRE_CSBK、DATA_HEADER中的步骤如下:
1.获取F本地路由信息和转发信息;
2.在PRE_CSBK_1、PRE_CSBK_2、DATA_HEADER配置节点F的本地路由信息和转发信息,配置后信息如图7所示;
3.确定在时隙1发送PRE_CSBK_1、PRE_CSBK_2、DATA_HEADER、DATA_Block、DATA_Lastblock,即发送GPS短消息。
如以节点E为例,接收到节点F的GPS位置信息后的处理步骤如下:
1.接收节点F发送的GPS短消息,解析GPS位置信息,得到节点F的本地路由信息和转发信息;
2.将节点F的本地路由信息和转发信息记录到节点E的本地路由表,并根据节点E的本地路由表,在在PRE_CSBK_1、PRE_CSBK_2、DATA_HEADER配置节点E的本地路由信息和转发信息;
3.确定在时隙1将修改后的节点F发送的GPS短消息发给节点D。
当某一个节点消失后会重新根据各个节点路由动态调整路径,例如:F->E->D->A,当节点D由于某些原因掉线了之后,节点E会重新选择路径,F->E->C->A,保证了可靠通讯。
如节点E循环周期内没有接收到节点D的心跳波,则判断无法通过节点D进行转发。节点E重新选择路径的步骤如下:节点E查路由表,发现节点C经过0跳可到达节点A;E发送广播令牌(心跳波)给节点C,请求转发;节点E将节点F的GPS位置信息发送给节点C。
以F->E->D->A的转发路径数据填充如表1-5,在发送过程中就把F的路由和转发路径全网节点都获取到了。其中如节点D的本地路由表可记录如图8所示。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
根据本申请实施例的第二方面,还提供了一种组网通信方法,应用在接收节点设备,如图9所示,包括:
S902,接收同一组网中的第一节点设备发送的消息;所述消息为所述第一节点设备向同一组网中的第二节点设备发送的,所述消息包括所述第一节点设备的本地路由表中的节点信息;
S904,对所述接收节点设备执行如下操作,直到所述接收节点设备为所述第二节点设备:在所述接收节点设备为同一组网中第三节点设备时,将所述接收节点设备的本地路由表中的节点信息补充到所述消息中,并根据所述接收节点设备的本地路由表中的节点信息确定下一个节点设备,将更新后的所述消息发送给所述下一个节点设备,以使所述下一个节点设备确定为新的接收节点设备。
可选地,本实施例中,同一组网可以为多个移动通信终端组成的网络。多个移动通信终端中每一个移动通信终端可以作为一个节点,位置可以移动。移动通信终端可以为手机、平板电脑、对讲机等。移动通信终端的通信距离有限,例如,两个移动通信终端的距离太远,超出直接通信距离(例如对讲机的直接通信距离为5千米),则可以通过组建同一组网的方式进行通信。可以理解的是,当第一节点设备可直接将所述消息发送给第二节点设备时,第二节点设备接收所述消息,并获取所述消息中的节点信息。
例如,以A到F共6个对讲机为例,如图2所示。图2为一种可选的网络拓扑图。图2中,节点设备假设为对讲机,圆圈为对讲机的覆盖范围,也就是有效的直接通信距离。B、C、D在A的覆盖范围内,A、D、E在C的覆盖范围内,C、D、F在E的覆盖范围内,E在F的覆盖范围内,E、F在A的覆盖范围之外。C和D之间可连通(图中未示),C和E之间可连通(图中未示)。A和F之间的距离太远,超出了直接通信距离,因此,可以通过自组网实现A和F之间的通信。
图3为一种按照时序传输广播令牌的示意图。图3中,SLOT1为时隙1,SLOT2为时隙2。A节点在时隙1广播数据,在时隙2发送A的广播令牌,B、C、D、E、F均在时隙2发送广播令牌。节点A到F在不同的时隙2发送广播令牌,各发送一次为一个周期,以此方式实现组网。
图4为一种可选的A节点设备在时隙1广播GPS短消息的示意图。图4中,在不同帧的时隙1,依次广播PRE_CSBK1、PRE_CSBK2、GPS DATA_HEADER、GPS DATA_BLOCK 和GPS DATA_Lastblock。
本实施例中,消息可以为GPS短消息,进一步为DMR协议中的GPS短消息。可以理解的是,消息也可以为除GPS短消息以外的其他消息。
可选地,本实施例中,第一节点设备和第二节点设备之间进行通信时,第一节点设备可以通过接收节点设备向第二节点设备发送通信数据。例如,第一节点设备可以向第二节点设备发送第一节点设备的位置信息。在发送位置信息时,可以将第一节点设备的节点信息填入到地址信息中,将消息发送给接收节点设备。接收节点设备将接收节点设备的节点信息填入到位置信息中。接收节点设备可以有多个,任意一个接收节点设备可以被用于转发第一节点设备的位置信息。将接收节点设备的节点地址填入到位置信息中,可以选择任意一个接收节点设备转发位置信息。由接收节点设备将位置信息转发给第二节点设备。
通过本实施例,通过上述方法,从而可以保证各个节点设备在通信过程中可以有效的通信,避免出现各个节点设备无法知晓其他节点的连接关系从而无法有效通信的问题。
本实施例的其他示例请参见上述示例,在此不在赘述。
根据本发明实施例的第三方面,还提供了一种用于实施上述组网通信方法的第一节点设备,如图10所示,该第一节点设备包括:
第一填入单元1002,用于在向同一组网中的第二节点设备发送消息时,将所述第一节点设备的本地路由表中的节点信息填入到所述消息中;
确定单元1004,用于根据所述第一节点设备的本地路由表中的节点信息确定接收节点设备,并将所述消息发送给所述接收节点设备,以使所述接收节点设备执行如下操作,直到所述接收节点设备为所述第二节点设备:在所述接收节点设备为同一组网中第三节点设备时,将所述接收节点设备的本地路由表中的节点信息补充到所述消息中,并根据所述接收节点设备的本地路由表中的节点信息确定下一个节点设备,将更新后的所述消息发送给所述下一个节点设备,并将所述下一个节点设备确定为新的接收节点设备。
本实施例的其他示例请参见上述示例,在此不在赘述。
根据本发明实施例的第四方面,还提供了一种用于实施上述组网通信方法的接收节点设备。如图11所示,该装置包括:
接收单元1102,用于接收同一组网中的第一节点设备发送的消息;所述消息为所述第一节点设备向同一组网中的第二节点设备发送的,所述消息包括所述第一节点设备的本地路由表中的节点信息;
处理单元1104,用于对所述接收节点设备执行如下操作,直到所述接收节点设备为所述第二节点设备:在所述接收节点设备为同一组网中第三节点设备时,将所述接收节点设备的本地路由表中的节点信息补充到所述消息中,并根据所述接收节点设备的本地路由表中的节点信息确定下一个节点设备,将更新后的所述消息发送给所述下一个节点设备,以使所述下一个节点设备确定为新的接收节点设备。
本实施例的其他示例请参见上述示例,在此不在赘述。
根据本发明实施例的第五方面,还提供了一种用于实施上述组网通信方法的电子设备,该电子设备可以包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为通过计算机程序执行上述上述第一方面的组网通信方法或上述第二方面的组网通信方法实施例中的步骤。
根据本发明的实施例的第六方面,还提供了一种计算机可读的存储介质,该计算机可读的存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述第一方面和第二方面的组网通信方法实施例中的步骤。
根据本发明实施例的第七方面,还提供了一种组网通信系统,包括上述的第三方面的第一节点设备和第四方面的接收节点设备。
可选地,在本实施例中,本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(Read-Only Memory,ROM)、随机存取器(Random Access Memory,RAM)、磁盘或光盘等。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。