一种主动式路由的方法及装置的制造方法

文档序号:9250947阅读:260来源:国知局
一种主动式路由的方法及装置的制造方法
【技术领域】
[0001]本发明涉及电力线载波通信领域中路由技术领域,具体地,涉及一种主动式路由的方法及装置。
【背景技术】
[0002]电力线载波通信(Power Line Communicat1ns, PLC)技术作为电力行业特有的通信技术,拥有覆盖范围广、成本低的巨大优势,在电力用户用电信息采集系统、智能家居等领域得到广泛应用。PLC技术可以分为窄带PLC和宽带PLC。其中,宽带电力线通信(Broadband Power Line Communicat1n),简称 BPLC,是指带宽限定在 2 ?30MHz 之间、通信速率通常在IMbps以上的电力线载波通信。与窄带电力载波(PLC)技术相比,宽带电力载波技术具有高速、抗噪音、传输距离长、覆盖率高等诸多优点,是近几年才开始商用的一种新兴电力载波技术,也是将来智能电网的主要承载技术。
[0003]但是电力线媒介设计的初衷是为了完成电能而非数据的传输,对数据通信而言,其信道特性并不理想,具体表现为噪声显著且信号衰减非常严重,大大降低了 PLC的通信可靠性。提高电力线通信可靠性可以从物理层角度来考虑,例如信道估计与选择、滤波设计、功率分配等方面,还可以从电力线通信的组网方式、路由技术等角度来考虑。
[0004]在基于电力线载波通信的电力通信应用中,由于电力线载波通信的传输距离有限,需要通过中继方式保证覆盖范围;在通信节点低密度的情况下,难以做到全覆盖,实施难度很大。在信道环境恶劣的情况下,BPLC通信节点之间的链路特性受到恶劣信道的影响往往复杂多变,极大影响了 BPLC网络的稳定性。而现有的PLC路由技术尚未充分考虑和解决信道恶劣严重影响PLC网络节点及路由机制的问题,为了进一步提高BPLC的通信质量,迫切需要可靠稳定高效的路由技术。

【发明内容】

[0005]本发明是为了克服现有技术中路由技术受恶劣信道的影响较大导致网络稳定性差的缺陷,根据本发明的一个方面,提出一种主动式路由的方法。
[0006]本发明实施例提供的一种主动式路由的方法,包括:
[0007]向邻居节点广播第一问候消息,第一问候消息包括本地节点的地址标识;同时接收邻居节点广播的包括邻居节点的地址标识的第二问候消息;
[0008]记录邻居节点的地址标识,并更新本地节点的邻居节点表;
[0009]向邻居节点广播拓扑子树信息,拓扑子树信息包括本地节点到所有邻居节点的链路和第一邻居节点到第二邻居节点的最短路径,第一邻居节点和第二邻居节点为本地节点的邻居节点中两个互不相同的邻居节点;
[0010]路由收敛后,更新拓扑表,并确定本地路由表,本地路由表包括以本地节点为根、到网络中任意其他节点的最短路由;
[0011]在接收到数据包时,提取目的节点,根据本地路由表确定目的节点最短路径;将数据包转发至下一跳节点,并指示下一跳节点根据目的节点最短路径继续转发数据包,直至数据包到达目的节点。
[0012]在上述技术方案中,确定本地路由表,包括:
[0013]根据本地节点的拓扑表中存储的拓扑信息确定本地节点的源节点树,源节点树包括本地节点到其余节点的最短路径;
[0014]根据源节点树计算本地节点到其余节点的路由,并更新本地路由表。
[0015]在上述技术方案中,确定本地节点的源节点树,包括:
[0016]根据路由算法确定本地节点的源节点树,路由算法包括Dijkstra算法、链路状态路由算法、距离向量路由算法中的一项或多项。
[0017]在上述技术方案中,当第一邻居节点到第二邻居节点的最短路径经过本地节点时,拓扑子树信息还包括第二邻居节点;
[0018]当本地节点沿任一链路到其他节点时,若本地节点的下一跳节点属于拓扑子树信息中的节点,将其他节点和本地节点到其他节点的每条链路添加到拓扑子树信息中,其他节点为拓扑表中除本地节点以外的节点。
[0019]在上述技术方案中,还包括:
[0020]扫描拓扑表,分别确定节点过期时间和链路过期时间;
[0021]在节点过期时间小于当前时间时,删除拓扑表中相应的节点;在链路过期时间小于当前时间时,删除拓扑表中相应的链路;
[0022]根据改变的拓扑表重新确定以本地节点为根的新源节点树,并根据新源节点树重新计算本地节点到其余节点的路由,并更新本地路由表。
[0023]在上述技术方案中,还包括:
[0024]判断全部更新时间间隔是否到期;
[0025]当全部更新时间间隔到期时,对每个节点组织全部更新消息;当全部更新时间间隔没有到期时,根据当前的拓扑子树信息与前次报告的拓扑子树信息之间的差别确定添加更新消息或删除更新消息。
[0026]本发明实施例提供的一种主动式路由的装置,包括:
[0027]第一广播模块,用于向邻居节点广播第一问候消息,第一问候消息包括本地节点的地址标识;同时接收邻居节点广播的包括邻居节点的地址标识的第二问候消息;
[0028]记录模块,用于记录邻居节点的地址标识,并更新本地节点的邻居节点表;
[0029]第二广播模块,用于向邻居节点广播拓扑子树信息,拓扑子树信息包括本地节点到所有邻居节点的链路和第一邻居节点到第二邻居节点的最短路径,第一邻居节点和第二邻居节点为本地节点的邻居节点中两个互不相同的邻居节点;
[0030]第一更新模块,用于路由收敛后,更新拓扑表,并确定本地路由表,本地路由表包括以本地节点为根、到网络中任意其他节点的最短路由;
[0031]转发模块,用于在接收到数据包时,提取目的节点,根据本地路由表确定目的节点最短路径;将数据包转发至下一跳节点,并指示下一跳节点根据目的节点最短路径继续转发数据包,直至数据包到达目的节点。
[0032]在上述技术方案中,第一更新模块包括:
[0033]确定单元,用于根据本地节点的拓扑表中存储的拓扑信息确定本地节点的源节点树,源节点树包括本地节点到其余节点的最短路径;
[0034]更新单元,用于根据源节点树计算本地节点到其余节点的路由,并更新本地路由表。
[0035]在上述技术方案中,确定单元具体用于:根据路由算法确定本地节点的源节点树,路由算法包括Dijkstra算法、链路状态路由算法、距尚向量路由算法中的一项或多项。
[0036]在上述技术方案中,当第一邻居节点到第二邻居节点的最短路径经过本地节点时,拓扑子树信息还包括第二邻居节点;
[0037]当本地节点沿任一链路到其他节点时,若本地节点的下一跳节点属于拓扑子树信息中的节点,将其他节点和本地节点到其他节点的每条链路添加到拓扑子树信息中,其他节点为拓扑表中除本地节点以外的节点。
[0038]在上述技术方案中,该装置还包括:
[0039]扫描模块,用于扫描拓扑表,分别确定节点过期时间和链路过期时间;
[0040]删除模块,用于在节点过期时间小于当前时间时,删除拓扑表中相应的节点;在链路过期时间小于当前时间时,删除拓扑表中相应的链路;
[0041]第二更新模块,用于根据改变的拓扑表重新确定以本地节点为根的新源节点树,并根据新源节点树重新计算本地节点到其余节点的路由,并更新本地路由表。
[0042]在上述技术方案中,该装置还包括:
[0043]判断模块,用于判断全部更新时间间隔是否到期;
[0044]处理模块,用于当全部更新时间间隔到期时,对每个节点
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1