发明内容
鉴于以上所述现有技术的缺点,本发明的目的在于提供一种路径选择方法及节点设备,用于解决现有技术中利用移动节点协作传输时无法在转发消息时提供具有QoS的路径的问题。
为实现上述目的及其他相关目的,本发明提供一种路径选择方法,应用于包含移动节点的网络,其包括:节点A不断更新包含可通信范围内的所有通信节点的路由表,其中,所述通信节点包含移动节点;所述节点A接收包含路径信息的转发消息;所述节点A从当前路由表中确认所述路径信息中的节点B仍存在、并且所述节点A根据与所述节点B之间的第一链路信息确定所述转发消息需要协助转发时,根据预先所确定的第二链路的和第三链路的链路信息来确定协作节点,并将所述转发消息通过所述协作节点转发至所述节点B,其中,所述节点B为所述路径信息中节点A之后待转发所述转发消息的节点,所述第二链路为所述节点A与除节点B之外的各通信节点的链路,所述第三链路为所述节点B与除节点A之外的各通信节点的链路。
优选地,所述链路信息包括:信干噪比、可用传输时隙、和可用带宽中的至少一种或多种的组合。
优选地,若确认所述节点B不存在,则所述节点A将所述转发消息更改为以所述路径信息中的目的节点为目标、且包含源节点至所述节点A部分的路径的广播消息,并予以发送。
优选地,所述方法还包括:所述目的节点在接收到来自多条路径的所述广播消息时,采用选择性接收或最大比合并技术来确定一条接收所述广播消息的路径。
优选地,在所述节点A接收包含路径信息的消息之前,所述方法还包括:所述节点A根据当前所述路由表中可通信范围内各通信节点,定时测量所述节点A和各所述通信节点之间的单侧链路信息;所述节点A向可通信范围内的各所述通信节点发送自身测量到的单侧链路信息,并接收所有所述通信节点发送的各自测量到的单侧链路信息;所述节点A根据自身测量到的单侧链路信息和接收到的单侧链路信息,分别确定所述第一链路的链路信息、所述第二链路的链路信息和所述第三链路的链路信息。
优选地,所述节点A利用Hello消息或Link消息将所测量的单侧链路信息发送给一跳和/或二跳范围内的通信节点。
优选地,所述节点B为所述节点A的下一跳节点,或后续多跳的节点。
优选地,当有源节点S通过所述网络广播路由请求RREQ消息至目的节点D,以便目的节点D发现一条路径时,所述方法还包括:所述节点A接收到来自节点E的所述RREQ消息;所述节点A通过分析预先确定的第四链路的、所述第五链路的和所述第六链路的链路信息来确定所述第四链路需要进行协作传输时,所述节点A确定所述第四链路上的协作节点,并将自身的IP和所述第四链路的协作传输的链路信息增加到所述RREQ消息中,并将所述RREQ消息予以发送;其中,所述第四链路为所述节点A和节点E之间的链路,所述第五链路为节点A与除节点E之外的通信节点之间的链路,所述第六链路为所述节点E与除节点A之外的通信节点之间的链路。
优选地,所述方法还包括:所述节点A将所述协作节点和所述RREQ消息予以保存。
优选地,当所述RREQ消息发送至目的节点D,且所述目的节点D选择包含所述节点A和节点E的路径反馈RREP消息时,所述方法还包括:当所述节点A接收到所述RREP消息时,所述节点A通过查询当前路由表确定所述协作节点和节点E仍在存在,则通过所述协作节点转发所述节点A至节点E的所述RREP消息。
优选地,所述协作传输的链路信息包括:可用带宽、可用传输时隙、信干噪比中的至少一种或多种的组合。
优选地,所述协作节点中包含移动节点。
基于上述目的,本发明还提供一种节点设备,包括:路由表更新单元,用于不断更新包含可通信范围内的所有通信节点的路由表,其中,所述通信节点包含移动节点;第一消息收发单元,用于接收包含路径信息的转发消息;转发处理单元,用于从当前路由表中确认所述路径信息中的节点B仍存在、并且根据自身与所述节点B之间的第一链路信息确定所述转发消息需要协助转发时,根据预先所确定的第二链路的和第三链路的链路信息来确定协作节点,并将所述转发消息通过所述协作节点转发至所述节点B,其中,所述节点B为所述路径信息中待转发所述转发消息的节点,所述第二链路为自身与除节点B之外的各通信节点的链路,所述第三链路为所述节点B与除自身之外的各通信节点的链路。
优选地,所述链路信息包括:信干噪比、可用传输时隙、和可用带宽中的至少一种或多种的组合。
优选地,所述转发处理单元还用于若确认所述节点B不存在,则将所述转发消息更改为以所述路径信息中的目的节点为目标、且包含源节点至所述节点A部分的路径的广播消息,并予以发送。
优选地,若所述节点设备为目的节点,则所述节点设备还包括:广播消息处理单元,用于在接收到来自多条路径的所述广播消息时,采用选择性接收或最大比合并技术来确定一条接收所述广播消息的路径。
优选地,所述节点设备还包括:测量单元,用于根据当前所述路由表中各通信节点,定时测量自身和与自身连接的所述通信节点之间的单侧链路信息;第二消息收发单元,用于向所有所述通信节点发送自身测量到的单侧链路信息,并接收所有所述通信节点发送的各自测量到的单侧链路信息;链路信息确定单元,用于根据自身测量到的单侧链路信息和接收到的单侧链路信息,分别确定所述第一链路的链路信息、所述第二链路的链路信息和所述第三链路的链路信息。
优选地,所述第二消息收发单元利用Hello消息或Link消息将所测量的单侧链路信息发送给一跳和/或二跳范围内的通信节点。
优选地,所述节点B为自身的下一跳节点,或后续的多跳的节点。
优选地,当有源节点S通过所述网络广播路由请求RREQ消息至目的节点D,以便目的节点D发现一条路径时,所述第一消息收发单元还用于接收到来自节点E的所述RREQ消息;所述转发处理单元还用于通过分析预先确定的第四链路的、所述第五链路的和所述第六链路的链路信息来确定所述第四链路需要进行协作传输时,确定所述第四链路上的协作节点,并将自身的IP和所述第四链路的协作传输的链路信息增加到所述RREQ消息中,并将所述RREQ消息予以发送;其中,所述第四链路为自身和节点E之间的链路,所述第五链路为自身与除节点E之外的通信节点之间的链路,所述第六链路为所述节点E与除自身之外的通信节点之间的链路。
优选地,所述转发处理单元还用于将所述协作节点和所述RREQ消息予以保存。
优选地,当所述RREQ消息发送至目的节点D,且所述目的节点D选择包含自身和节点E的路径反馈RREP消息时,所述转发处理单元还用于当接收到所述RREP消息时,通过查询当前路由表确定所述协作节点和节点E仍在存在,则通过所述协作节点转发至节点E的所述RREP消息。
优选地,所述协作传输的链路信息包括:可用带宽、可用传输时隙、信干噪比中的至少一种或多种的组合。
优选地,所述协作节点中包含移动节点。
优选地,所述节点设备安装在车辆中。
如上所述,本发明的路径选择方法及节点设备,具有以下有益效果:特别针对包含如车载网等协同网络中网络节点不稳定的情况,提供了一种新的更为灵活的路径处理方案。通过不断地更新路由表能够及时获取最新的连接节点,以有效防止因节点失效而转发消息失败等问题的发生;同时,若当前链路情况无法正常转发消息时,所述节点设备还能够利用路由表中的可通信的其他节点来协助转发,如此有效提高了消息转发的成功率,为车载网络中的用户提供了更为稳定的网络支持。
具体实施方式
以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
实施例一
请参阅图1,本发明提供一种路径选择方法,应用于包含移动节点的网络。其中,所述移动节点任何可移动的路由器、网管等。例如,所述移动节点包括但不限于:车载路由器等。所述网络可以全部由所述移动节点构成,也可以由部分移动节点和部分固定节点构成。所述固定节点包括但不限于:基站、固设的无线路由器等。
在所述网络中,各节点不断更新自身的路由表,以应对网络中的移动节点已离开或有新的移动节点加入的情况。其中,各所述节点可以在各节点接收到移动节点发送的Hello消息、Link消息或广播消息时进行更新路由表。各所述节点还可以按照预定时长主动广播消息,并根据反馈消息更新自身的路由表。其中,所述路由表中包含可通信范围内的所有通信节点。所述通信节点包括移动节点。例如,所述通信节点可以全部为移动节点,也可以包含移动节点和固定节点。其中,对于移动节点来说可通信范围通常为一跳或二跳范围内的节点。
当源节点利用所述网络中的各节点向目的节点发送消息时,所述网络中的节点A将执行如下步骤,以便将消息及时发送。其中,所述节点A可以为移动节点或固定节点。
在步骤S11中,所述节点A接收包含路径信息的转发消息。其中,所述转发消息为转发消息,其包含从源节点到目的节点之间各节点所构成的路径信息。例如,所述转发消息为RREP消息、或其他转发消息等。所述节点A为其中一个节点。所述节点A可以为固定节点或移动节点。
在步骤S12中,所述节点A从当前所述路由表中确认所述路径信息中的节点B是否存在,其中,所述节点B为所述路径信息中节点A之后待转发所述转发消息的节点。其中,所述节点B可以为移动节点或固定节点。
具体地,由于所述节点A的路由表中包含移动节点,因此,其并不能确保按照所述路径信息一定可以转发该转发消息。故,所述节点A从最近一次更新后的路由表中查找述路径信息中的所述节点B是否存在。其中,所述节点B可以为所述路径信息中所述节点A的下一跳节点,也可以为所述节点A的下多跳节点,其中,若所述节点A为移动节点,则查找路由表中一跳或两跳范围内是否存在节点B。若存在,则执行步骤S13,反之,则执行步骤S14。
在步骤S13中,所述节点A进一步根据与所述节点B之间的第一链路信息确定是否需要协助转发所述转发消息。其中,所述第一链路信息包括但不限于:节点A和节点B当前的可用带宽、节点A和节点B当前的信干噪比、节点A和节点B当前的可传输时隙中的至少一种或多种的组合。
具体地,所述节点A可根据第一链路信息中所提供的内容和使用协助转发的规则来确定是否需要协助转发,当确认需要协助转发时,所述节点A执行步骤S15,反之,执行步骤S16。
例如,当所述节点A通过分析确定节点A和节点B当前的可传输时隙低于预设可传输时隙阈值,则认定需要协助转发,反之,则认定不需要协助转发。
又如,上述节点A通过分析确定节点A和节点B之间链路的可用带宽低于节点A-节点C1-节点B所构成的链路的可用带宽,则认定需要协助转发,反之,则认定不需要协助转发,其中,节点C1为协作节点。其中,协作节点的确定如下步骤S15所描述。
在步骤S15中,所述节点A根据预先所确定的第二链路的和第三链路的链路信息来确定协作节点,并将所述转发消息通过所述协作节点转发至所述节点B,其中,所述第二链路为所述节点A与除节点B之外的各通信节点的链路,所述第三链路为所述节点B与除节点A之外的各通信节点的链路。其中,所述协作节点的数量可以是一个或多个,所述协作节点与所述节点A和节点B构成一条链路,优选地,所述协作节点包含移动节点。
具体地,所述节点A通过与所述路由表中各通信节点之间的信息交互,获取其与各通信节点之间的链路信息,并根据这些链路信息选择能与节点A和节点B构成链路的协作节点,并将所述转发消息通过所述协作节点发送至节点B。
例如,如图2所示,节点A与节点C1之间的第二链路的链路信息包含可用传输时隙ATF1,节点A与节点C2之间的第二链路的链路信息包含可用传输时隙ATF2;节点B与节点C1之间的第三链路的链路信息包含可用传输时隙ATF3,节点B与节点C2之间的第三链路的链路信息包含可用传输时隙ATF4,其中,ATF1<ATF3<ATF4<ATF2,则所述节点A获取并分析上述四个链路信息,选择节点A与节点B之间可用传输时隙尽量大的一条链路上的节点(即节点C2)作为协作节点,并将所接收的消息通过节点C2转发至节点B。
需要说明的是,上述链路信息中所包含的参数仅为举例,在实际传输中,链路信息中还可以包含信干噪比、干扰情况等。上述协作链路中仅包含一个协作节点C2,实际上,上述协作链路可以包含多个协作节点。
其中,所述链路信息是在所述节点接收到所述转发消息之前确定的,具体确定所述链路消息的方式包括步骤S21、S22、S23。如图3所示。
在步骤S21中,所述节点A根据当前所述路由表中各通信节点,定时测量所述节点A和与所述节点A连接的所述通信节点之间的单侧链路信息。其中,所述单侧链路信息包括所述节点A至各所述通信节点之间的可用传输时隙、信干噪比等。其中,所述可用传输时隙和信干噪比的测量方式为现有技术,在此不再详述。
例如,所述节点A利用CSMA机制周期性的监听所述节点A和与所述节点A连接的所述通信节点之间的可用传输时隙。其中,所述可用传输时隙ATF的计算方式为:
在步骤S22中,所述节点A向所有所述通信节点发送自身测量到的单侧链路信息,并接收所有所述通信节点发送的各自测量到的单侧链路信息。
具体地,所述节点A利用CQ-routing协议中的Hello消息或Link消息将所测量的单侧链路信息发送给所有所述通信节点,其中,所述通信节点通常为一跳或二跳节点;再由接收到所述Hello消息或Link消息的各通信节点将自身所测量的单侧链路信息反馈给所述节点A。
需要说明的是,所述节点A和各所述通信节点所测量的单侧链路信息可以相同也可以不用相同。
在步骤S23中,所述节点A根据自身测量到的单侧链路信息和接收到的单侧链路信息,分别确定所述第一链路的链路信息、所述第二链路的链路信息和所述第三链路的链路信息。
具体地,所述节点A可利用预设的公式将所得到的各单侧链路信息中的参数进行计算,以便得到所述第一链路的、所述第二链路的和所述第三链路的链路信息。其中,具体计算方式为现有技术,在此不再详述。
其中,所述第一链路的链路信息、所述第二链路的链路信息和所述第三链路的链路信息中所包含的内容可以相同或不相同。例如,所述第一链路的链路信息中包含链路的可用时隙,其中,所述链路的可用时隙被定义为除去周围链路及其自己所占用的时隙后剩下的时隙。
在步骤S16中,所述节点A按照所述路径信息将所接收的消息转发至节点B。
在步骤S14中,所述节点A无法从当前的路由表中查到所述节点B,则确认所述节点B已离开所述网络,则所述节点A将所述转发消息更改为以所述路径信息中的目的节点为目标、且包含所述路径信息中源节点至所述节点A部分的路径的广播消息,并予以发送。
具体地,所述节点A确认节点B不存在的情况包括:例如,若所述节点B安装在车辆中,当车辆移出所述节点A所能通信的范围,则所述节点A无法与节点B建立连接,此时,所述节点A更新路由表包括:例如将其路由表中删除与节点B的链路。所述节点A一方面将所述转发消息更改为广播消息,同时还从所述路径信息中取得所述节点A和之前已转发的节点,并加入所述广播消息中,再将所述路径信息中的目的节点设为所述广播消息的目的节点,然后将所述广播消息予以发送,以供接收所述广播消息的节点按照广播消息予以转发,直至发送至所述目的节点处。
优选地,所述路径选择方法还包括步骤S17(未予图示)。
在步骤S17中,所述目的节点在接收到来自多条路径的所述广播消息时,采用选择性接收或最大比合并技术来确定一条接收所述广播消息的路径。其中,所述目的节点可以为移动节点或固定节点。
具体地,所述目的节点预设选择条件,例如,所述目的节点可以选择最先接收到的所述广播消息的路径作为转发所述广播消息的路径,并忽略来自其他路径的所述广播消息。又如,所述目的节点选择信噪比最高的路径作为转发是广播消息的路径,并忽略来自其他路径的所述广播消息,以便利用是选择的路径来反馈响应消息。
所述目的节点还可以采用最大比合并技术来确定一条接收所述广播消息的路径。其中,所述最大比合并技术的原理是各条路径加权系数与该支路信噪比成正比。信噪比越大,加权系数越大,对合并后信号贡献也越大。所述目的节点根据各条路径的信噪比对所接收的各条路径的所述广播消息进行加权合并,以得到更为清晰的所述广播消息,再对合并后的所述广播消息进行后续的解析处理,若需要反馈相应的响应消息,则所述目的节点还可以通过各条路径的信噪比等链路信息来确定一条路径,将所述响应消息予以转发。
实施例二
在实施例一的基础上,当一源节点S通过所述网络广播路由请求RREQ消息至目的节点D,以便目的节点D发现一条路径时,所述方法还包括步骤S31、S32、S33、S34。如图4所示。
在步骤S31中,所述节点A接收到来自节点E的所述RREQ消息。其中,所述RREQ消息中包含源节点S至节点E的路径、源节点S至节点E的可用带宽等信息。需要说明的是,所述节点E可以为源节点S,也可以为一中间节点。所述节点E可以为固定节点或移动节点。其中,所述节点E、S可以为移动节点或固定节点。
在步骤S32中,所述节点A通过分析预先确定的第四链路的、所述第五链路的和所述第六链路的链路信息,确定所述第四链路是否需要进行协作传输,若是则执行步骤S33,反之,则执行步骤S34。其中,所述第四链路为所述节点A和节点E之间的链路,所述第五链路为节点A根据自身当前路由表中所确定的所述节点A与除节点E之外的通信节点之间的链路,所述第六链路为所述节点E根据自身当前路由表中所确定的所述节点E与除节点A之外的通信节点之间的链路。其中,所述链路信息包括但不限于:可用传输时隙、信干噪比、可用带宽中的至少一种或多种的组合等。其中,所述第四链路的、所述第五链路的和所述第六链路的链路信息中的内容可以相同或不同。
需要说明的是,所述第四链路的、所述第五链路的和所述第六链路的链路信息的确定方式可参照实施例一中的步骤S21-S23来得到,在此不再详述。
例如,所述节点A根据所述第四链路的链路信息确定所述第四链路的可用带宽W1,所述节点A还根据所述第五链路的和所述第六链路的链路信息确定所述节点A通过第五链路和第六链路中的通信节点C4与节点E所构成的链路的可用带宽为W2,当所述节点A分析得到可用带宽W1<W2,则确定所述第四链路并非可用带宽最宽的优选链路,则确定需要进行协作传输。
在步骤S33中,所述节点A确定出所述第四链路上的协作节点,并将自身的IP和所述第四链路的协作传输的链路信息增加到所述RREQ消息中,并将所述RREQ消息予以发送,以便使目的节点根据所述更新后的RREQ消息选择所述源节点与所述目的节点之间的路由。其中,所述协作传输的链路信息包括但不限于:可用带宽、可用传输时隙、信干噪比等。
继续步骤S32中的实例,所述节点A确定节点C4为协作节点,并将节点A-C4-E所构成的协作链路的可用带宽和所述节点A的IP地址增加到所述RREQ消息中,并将所述RREQ消息予以发送。
优选地,所述节点A将所述协作节点和所述RREQ消息予以保存,当所述节点接收到对应所述RREQ消息的反馈消息RREP消息时,所述节点A通过查询当前路由表确定所述协作节点和节点E仍在存在,则通过所述协作节点转发所述节点A至节点E的所述RREP消息。
继续步骤S33中的实例,所述节点A通过分析所述RREP消息,确定该RREP消息为所保存的RREQ消息的反馈消息,查询当前路由表中与所述节点A连接的各通信节点中是否包含所述协作节点C4和节点E,若存在,则通过所述协作节点C4将所述RREP消息转发至节点E,若协作节点C4不存在,则采用实施例一中的步骤S3来将所述RREP消息转发至所述节点E,若所述节点E不存在,则采用实施例一中的步骤S4将所述RREP广播发送。
在步骤S34中,所述节点A将自身IP地址和所述第四链路的链路信息增加到所述RREQ消息中,并将所述RREQ消息予以发送。当目的节点D接收到所述RREQ消息时,可以根据自身的选择机制来选择一条可用带宽最宽或者干扰最小的路径反馈RREP消息,由此,建立一条从源节点S至目的节点D的路径。
实施例三
如图5所示,本发明还提供一种节点设备,其中,所述节点设备可以为移动节点或固定节点。例如,所述节点设备1可以安装在车辆中,并随车辆行驶时随时接入或离开3G网络或有移动节点加入或离开的其他无线网络。所述节点设备1也可以为固定基站。
以下将所述节点设备1称为节点A。所述节点A包含路由表更新单元11。所述路由表更新单元11不断更新自身的路由表,以应对网络中的移动节点已离开或有新的移动节点加入的情况。
所述路由表更新单元11可以在接收到可通信范围内的各通信节点发送的Hello消息、LINK消息或广播消息时进行更新路由表。所述节点A还可以按照预定时长主动广播消息,并根据反馈消息更新自身的路由表。其中,所述路由表中包含可通信范围内的所有通信节点。所述通信节点包括移动节点。例如,所述通信节点可以全部为移动节点,也可以包含移动节点和固定节点。其中,对于移动节点来说可通信范围通常为一跳或二跳范围内的节点。
当源节点利用所述网络中的各节点向目的节点发送消息时,所述网络中的所述节点A将运行如下单元,以便将消息及时发送。所述节点A还包括:第一消息收发单元12、转发处理单元13。
所述第一消息收发单元12用于接收包含路径信息的转发消息。其中,所述转发消息为转发消息,其包含从源节点到目的节点之间各节点所构成的路径信息。例如,所述转发消息为RREP消息、或其他转发消息等。
所述转发处理单元13用于从当前路由表中确认所述路径信息中的节点B仍存在、并且根据自身与所述节点B之间的第一链路信息确定所述转发消息需要协助转发时,根据预先所确定的第二链路的和第三链路的链路信息来确定协作节点,并将所述转发消息通过所述协作节点转发至所述节点B,其中,所述节点B为所述路径信息中待转发所述转发消息的节点,所述第二链路为自身与除节点B之外的各通信节点的链路,所述第三链路为所述节点B与除自身之外的各通信节点的链路。所述节点B可以为移动节点或固定节点。
具体地,由于所述节点A的路由表中包含移动节点,因此,其并不能确保按照所述路径信息一定可以转发该转发消息。故,所述转发处理单元13从最近一次更新后的路由表中查找述路径信息中的所述节点B是否存在。其中,所述节点B可以为所述路径信息中自身的下一跳节点,也可以为自身的下多跳节点,其中,若所述节点A为移动节点,则查找路由表中一跳或两跳范围内是否存在节点B。
若节点B存在,则所述转发处理单元13进一步根据与所述节点B之间的第一链路信息确定是否需要协助转发所述转发消息。其中,所述第一链路信息包括但不限于:自身和节点B当前的可用带宽、当前的信干噪比、当前的可传输时隙中的至少一种或多种的组合。
所述转发处理单元13可根据第一链路信息中所提供的内容和使用协助转发的规则来确定是否需要协助转发;例如,当所述转发处理单元13通过分析确定自身和节点B当前的可传输时隙低于预设可传输时隙阈值,则认定需要协助转发,反之,则认定不需要协助转发。
当确认需要协助转发时,所述转发处理单元13根据预先所确定的第二链路的和第三链路的链路信息来确定协作节点,并将所述转发消息通过所述协作节点转发至所述节点B,其中,所述第二链路为所述节点A与除节点B之外的各通信节点的链路,所述第三链路为所述节点B与除节点A之外的各通信节点的链路。其中,所述协作节点的数量可以是一个或多个,所述协作节点与所述节点A和节点B构成一条链路,优选地,所述协作节点包含移动节点。
具体地,所述转发处理单元13通过与所述路由表中各通信节点之间的信息交互,获取其与各通信节点之间的链路信息,并根据这些链路信息选择能与节点A和节点B构成链路的协作节点,并将所述转发消息通过所述协作节点发送至节点B。
例如,如图2所示,所述转发处理单元13确定自身与节点C1之间的第二链路的链路信息包含可用传输时隙ATF1,自身与节点C2之间的第二链路的链路信息包含可用传输时隙ATF2;节点B与节点C1之间的第三链路的链路信息包含可用传输时隙ATF3,节点B与节点C2之间的第三链路的链路信息包含可用传输时隙ATF4,并确定ATF1<ATF3<ATF4<ATF2,则所述转发处理单元13分析上述四个链路信息,选择自身与节点B之间可用传输时隙尽量大的一条链路上的节点(即节点C2)作为协作节点,并将所接收的消息通过节点C2转发至节点B。其中,所述节点C1和C2可以为移动节点或固定节点中的任一种。
需要说明的是,上述链路信息中所包含的参数仅为举例,在实际传输中,链路信息中还可以包含信干噪比、干扰情况等。
其中,所述链路信息是在所述节点接收到所述转发消息之前确定的,所述节点A还包括:测量单元14、第二消息收发单元15、链路信息确定单元16。如图6所示。
所述测量单元14用于根据当前所述路由表中各通信节点,定时测量自身和与自身连接的所述通信节点之间的单侧链路信息。其中,所述单侧链路信息包括自身至各所述通信节点之间的可用传输时隙、信干噪比等。其中,所述可用传输时隙和信干噪比的测量方式为现有技术,在此不再详述。
例如,所述测量单元14利用CSMA机制周期性的监听自身和与自身连接的所述通信节点之间的可用传输时隙。其中,所述可用传输时隙ATF的计算方式为:
所述第二消息收发单元15用于向所有所述通信节点发送自身测量到的单侧链路信息,并接收所有所述通信节点发送的各自测量到的单侧链路信息。
具体地,所述第二消息收发单元15利用CQ-routing协议中的Hello消息或Link消息将所测量的单侧链路信息发送给所有所述通信节点,其中,所述通信节点通常为一跳或二跳节点;再由接收到所述Hello消息或Link消息的各通信节点将自身所测量的单侧链路信息反馈给所述第二消息收发单元15。
需要说明的是,所述测量单元14和各所述通信节点所测量的单侧链路信息可以相同也可以不用相同。
所述链路信息确定单元16用于根据自身测量到的单侧链路信息和接收到的单侧链路信息,分别确定所述第一链路的链路信息、所述第二链路的链路信息和所述第三链路的链路信息。
具体地,所述链路信息确定单元16可利用预设的公式将所得到的各单侧链路信息中的参数进行计算,以便得到所述第一链路的、所述第二链路的和所述第三链路的链路信息。其中,具体计算方式为现有技术,在此不再详述。
其中,所述第一链路的链路信息、所述第二链路的链路信息和所述第三链路的链路信息中所包含的内容可以相同或不相同。例如,所述第一链路的链路信息中包含链路的可用时隙,其中,所述链路的可用时隙被定义为除去周围链路及其自己所占用的时隙后剩下的时隙。
当确认不需要协助转发时,所述转发处理模块按照所述路径信息将所接收的消息转发至节点B。
当所述转发处理单元13无法从当前的路由表中查到所述节点B,则确认所述节点B已离开所述网络,则将所述转发消息更改为以所述路径信息中的目的节点为目标、且包含源节点至所述节点A部分的路径的广播消息,并予以发送。
具体地,所述转发处理单元13一方面将所述转发消息更改为广播消息,同时还从所述路径信息中取得自身和之前已转发的节点,并加入所述广播消息中,再将所述路径信息中的目的节点设为所述广播消息的目的节点,然后将所述广播消息予以发送,以供接收所述广播消息的节点按照广播消息予以转发,直至发送至所述目的节点处。
若所述节点设备为目的节点,则所述节点设备还包括:与所述第一消息收发单元相连的广播消息处理单元(未予图示)。
所述广播消息处理单元用于在接收到来自多条路径的所述广播消息时,采用选择性接收或最大比合并技术来确定一条接收所述广播消息的路径。
具体地,所述广播消息处理单元预设选择条件,例如,所述广播消息处理单元可以选择最先接收到的所述广播消息的路径作为转发所述广播消息的路径,并忽略来自其他路径的所述广播消息。又如,所述广播消息处理单元选择信噪比最高的路径作为转发是广播消息的路径,并忽略来自其他路径的所述广播消息,以便利用是选择的路径来反馈响应消息。
所述广播消息处理单元还可以采用最大比合并技术来确定一条接收所述广播消息的路径。其中,所述最大比合并技术的原理是各条路径加权系数与该支路信噪比成正比。信噪比越大,加权系数越大,对合并后信号贡献也越大。所述广播消息处理单元根据各条路径的信噪比对所接收的各条路径的所述广播消息进行加权合并,以得到更为清晰的所述广播消息,再对合并后的所述广播消息进行后续的解析处理,若需要反馈相应的响应消息,则所述广播消息处理单元还可以通过各条路径的信噪比等链路信息来确定一条路径,将所述响应消息予以转发。
实施例四
在实施例三的基础上,当一源节点S通过所述网络广播路由请求RREQ消息至目的节点D,以便目的节点D发现一条路径时,所述节点A中的第一消息收发单元12还用于接收到来自节点E的所述RREQ消息。其中,所述RREQ消息中包含源节点S至节点E的路径、源节点S至节点E的可用带宽等信息。需要说明的是,所述节点E可以为源节点S,也可以为一中间节点。所述节点E可以为固定节点或移动节点。
所述转发处理单元13还用于通过分析预先确定的第四链路的、所述第五链路的和所述第六链路的链路信息来确定所述第四链路需要进行协作传输时,确定所述第四链路上的协作节点,并将自身的IP和所述第四链路的协作传输的链路信息增加到所述RREQ消息中,并将所述RREQ消息予以发送;其中,所述第四链路为自身和节点E之间的链路,所述第五链路为自身与除节点E之外的通信节点之间的链路,所述第六链路为所述节点E与除自身之外的通信节点之间的链路。其中,所述链路信息包括但不限于:可用传输时隙、信干噪比、可用带宽中的至少一种或多种的组合等。其中,所述第四链路的、所述第五链路的和所述第六链路的链路信息中的内容可以相同或不同。
需要说明的是,所述第四链路的、所述第五链路的和所述第六链路的链路信息的确定方式可参照实施例三中的测量单元14、第二消息收发单元15、链路信息确定单元16来得到,在此不再详述。
接着,所述转发处理单元13确定出所述第四链路上的协作节点,并将自身的IP和所述第四链路的协作传输的链路信息增加到所述RREQ消息中,并将所述RREQ消息予以发送,以便使目的节点根据所述更新后的RREQ消息选择所述源节点与所述目的节点之间的路由。其中,所述协作传输的链路信息包括但不限于:可用带宽、可用传输时隙、信干噪比等。
例如,所述转发处理单元13根据所述第四链路的链路信息确定所述第四链路的可用带宽W1,所述转发处理单元13还根据所述第五链路的和所述第六链路的链路信息确定自身通过第五链路和第六链路中的通信节点C4与节点E所构成的链路的可用带宽为W2,当所述转发处理单元13分析得到可用带宽W1<W2,则确定所述第四链路并非可用带宽最宽的优选链路,则确定需要进行协作传输。所述转发处理单元13确定节点C4为协作节点,并将自身-C4-E所构成的协作链路的可用带宽和自身的IP地址增加到所述RREQ消息中,并将所述RREQ消息予以发送。
优选地,所述转发处理单元13还用于将所述协作节点和所述RREQ消息予以保存,当所述节点接收到对应所述RREQ消息的反馈消息RREP消息时,所述转发处理单元13通过查询当前路由表确定所述协作节点和节点E仍在存在,则通过所述协作节点转发自身至节点E的所述RREP消息。
继续上述实例,所述转发处理单元13通过分析所述RREP消息,确定该RREP消息为所保存的RREQ消息的反馈消息,查询当前路由表中与自身连接的各通信节点中是否包含所述协作节点C4和节点E,若存在,则通过所述协作节点C4将所述RREP消息转发至节点E,若协作节点C4不存在,则采用实施例三中的进一步根据与所述节点B之间的第一链路信息确定是否需要协助转发所述转发消息的方式来将所述RREP消息转发至所述节点E,若所述节点E不存在,则采用实施例三中的将所述转发消息更改为以所述路径信息中的目的节点为目标、且包含源节点至所述节点A部分的路径的广播消息的方式,将所述RREP广播发送。
接着,所述转发处理单元13将自身IP地址和所述第四链路的链路信息增加到所述RREQ消息中,并将所述RREQ消息予以发送。当目的节点D接收到所述RREQ消息时,可以根据自身的选择机制来选择一条可用带宽最宽或者干扰最小的路径反馈RREP消息,由此,建立一条从源节点S至目的节点D的路径。
综上所述,本发明的路径选择方法及节点设备,特别针对包含如车载网等协同网络中网络节点不稳定的情况,提供了一种新的更为灵活的路径处理方案。通过不断地更新路由表能够及时获取最新的连接节点,以有效防止因节点失效而转发消息失败等问题的发生;同时,若当前链路情况无法正常转发消息时,所述节点设备还能够利用路由表中的可通信的其他节点来协助转发,如此有效提高了消息转发的成功率,为车载网络中的用户提供了更为稳定的网络支持;另外,当转发消息中路径上的某一节点已移出当前网络,则其上一节点将改转发消息更改为广播消息,如此来确保消息的继续传输,有效防止了路径的中断;此外,对于广播消息,本发明中的节点设备还利用当前路由表中所连接的其他节点来选择一条可用带宽最宽或干扰最小的链路,以便帮助源节点和目的节点建立更为优化的路径。所以,本发明有效克服了现有技术中的种种缺点而具高度产业利用价值。
上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。