一种基于RapidIO网络的路由表生成方法

文档序号:1470062 发布日期:2020-02-21 浏览:10次 >En<

阅读说明:本技术 一种基于RapidIO网络的路由表生成方法 (Method for generating routing table based on RapidIO network ) 是由 彭文攀 朱会柱 王洋 段冰冰 吴敏 吴亦航 于 2019-12-10 设计创作,主要内容包括:本发明提供一种基于RapidIO网络的路由表生成方法,是一种针对板级RapidIO系统网络的查找及路由分配策略,该查找分配策略优化了网络深度查找算法,使用树状重定义递归查找策略,加入网络监控实时的路由延迟权值算法,提升了网络的传输能力及降低网络平均延迟方差,适用于航空数据总线传输协议开发领域,提升航空电子系统内部RapidIO网络通信性能,能实时的查找更新网络拓扑结构,提升网络通信吞吐量,降低网络拥堵概率,降低网络传输延迟,提升网络查找通信的可靠性。(The invention provides a routing table generation method based on a RapidIO network, which is a searching and routing distribution strategy aiming at a board-level RapidIO system network, wherein the searching and distribution strategy optimizes a network depth searching algorithm, uses a tree redefinition recursion searching strategy, adds a real-time routing delay weight algorithm for network monitoring, improves the transmission capability of the network and reduces the average delay variance of the network, is suitable for the field of aviation data bus transmission protocol development, improves the RapidIO network communication performance in an aviation electronic system, can search and update a network topology structure in real time, improves the network communication throughput, reduces the network congestion probability, reduces the network transmission delay and improves the reliability of network searching communication.)

一种基于RapidIO网络的路由表生成方法

技术领域

本发明涉及航空电子信息综合网络总线技术领域,尤其涉及一种基于RapidIO网络的路由表生成方法。

背景技术

航空光RapidIO网络协议是一种国际通用化嵌入式系统的互连标准,该标准提供了可靠的传输性能,支持点对点,点对多点的传输方式。在硬件方面,使用较少的引脚数,并基于数据包交换的互联互通的连接结构,满足了嵌入式系统的低时延的要求,支持芯片到芯片之间的传输。

RapidIO网络协议由三层协议组成,包含逻辑层、传输层和物理层,三层协议主要描述了协议帧的格式,数据包传输通道的必要信息、流量控制及电特性和低级错误管理策略等。

现有RapidIO网络在生成路由表时,通常采用深度直线型查找算法,但是RapidIO网络拓扑结构复杂,采用深度直线型查找算法存在无法充分发挥RapidIO网络低时延的协议优势的问题。

发明内容

本发明实施例提供一种基于RapidIO网络的路由表生成方法,可快速可靠的查找RapidIO网络节点。

本发明实施例提供一种基于RapidIO网络的路由表生成方法,所述RapidIO网络包括至少一个交换芯片和至少一个节点,每个节点连接在一个交换芯片上;所述路由表生成方法包括:

步骤一、令维护hop跳数的取值为0,令i的取值为1;

步骤二、将主控根节点所连接的交换芯片加入到交换设备列表中,确定第i交换芯片的遍历状态为未遍历状态;所述第i交换芯片为第i个加入所述交换设备列表的交换芯片;

步骤三、将所述第i交换芯片的遍历状态设置为正在遍历状态;

步骤四、遍历第i交换芯片的所有端口,将连接在第i交换芯片的端口上的终端设备添加在所述第i交换芯片的邻设备列表中;确定连接在第i交换芯片的端口上的交换芯片的遍历状态,在遍历状态为未遍历状态时,将所述连接在第i交换芯片的端口上的交换芯片加入到交换设备列表中和所述第i交换芯片的邻设备列表中;在遍历状态为已遍历状态时,将所述连接在第i交换芯片的端口上的交换芯片加入到所述第i交换芯片的邻设备列表中;将所述第i交换芯片的遍历状态设置为已遍历状态;

步骤五、判断所述交换设备列表中是否存在未遍历状态的交换芯片;若是,则执行步骤六;若否则执行步骤九;

步骤六、将维护hop跳数加1,确定查找路由跳数N;所述N为所述交换设备列表中的未遍历状态的交换芯片的数目;N的取值为正整数;

步骤七、令i的取值加1,执行所述步骤三和步骤四;

步骤八、判断i的取值是否达到N;若是,则执行步骤五;若否,则执行步骤七;

步骤九、根据所述交换设备列表和各交换芯片的邻设备列表生成路由表。

可选的,所述根据所述交换设备列表和各交换芯片的邻设备列表生成路由表,包括:

按照加入所述交换设备列表的从后到前的顺序,并根据各交换芯片的邻设备列表,生成至少一个虚拟网络;

根据各所述虚拟网络的连接关系,生成路由表。

可选的,所述路由表生成方法还包括:

根据各虚拟网络发送和接收到的维护数据包,生成各虚拟网络的权值;

根据各虚拟网络的权值,修正所述路由表。

可选的,所述根据各虚拟网络的权重,修正所述路由表,包括:

在存在虚拟网络的权值异常时,将最后加入权值异常的虚拟网络的交换芯片从所述权值异常的虚拟网络中删除,得到修正后的虚拟网络;

根据所述修正后的虚拟网络,生成路由表。

可选的,所述根据各虚拟网络发送和接收到的维护数据包,生成各虚拟网络的权值,包括:

根据各虚拟网络与各自的邻近虚拟网络间发送和接收到的维护数据包,确定各虚拟网络与各自的邻近虚拟网络间的带宽m和平均时延t;

根据各虚拟网络的内部节点数目n,以及各虚拟网络与各自的邻近虚拟网络的带宽m、平均时延t和跳数h,生成各虚拟网络的权值

Figure BDA0002310266750000031

K为虚拟网络的邻近网络数目,j的取值为从1至K的正整数。

可选的,所述按照加入所述交换设备列表的从后到前的顺序,并根据各交换芯片的邻设备列表,生成至少一个虚拟网络,包括:

确定第一交换芯片的邻交换芯片数目是否为1;所述第一交换芯片为未加入到虚拟网络中,且最后加入所述交换设备列表的交换芯片;

若第一交换芯片的邻交换芯片数目为1,则建立所述第一交换芯片对应的第一虚拟网络,将所述第一交换芯片和第二交换芯片加入所述第一虚拟网络,进一步判断所述第二交换芯片的邻交换芯片数目是否为1,若是,则将第三交换芯片加入所述第一虚拟网络,进一步判断所述第三交换芯片的邻交换芯片数目是否为1,直至碰到邻交换芯片数目不为1的交换芯片;第二交换芯片为所述第一交换芯片的邻交换芯片;第三交换芯片为所述第二交换芯片的邻交换芯片。

可选的,所述路由表生成方法中的步骤三还包括:

将所述第i交换芯片锁定,锁定的交换芯片的路由表不能被更改。

可选的,所述路由表生成方法还包括:

在初始化时,所述RapidIO网络包括的各交换芯片的遍历状态为未遍历状态。

本发明提供的基于RapidIO网络的路由表生成方法,采用树状重定义递归查找分配算法,可快速可靠检测出整体网络的拓扑交换结构,并通过建立适当的虚拟交互网络,提升网络通信质量,降低网络通信时延。同时,还采用实时监控权值策略,适应网络的动态业务数据流变化,通过改变虚拟内部网络边缘子节点数量,及热点交换路由分配,降低网络时延平均方差。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为本发明一实施例提供的基于RapidIO网络的路由表生成方法的流程示意图;

图2为本发明一实施例提供的RapidIO网络的结构示意图;

图3为本发明一实施例提供的虚拟网络建立示意图;

图4为本发明一实施例提供的维护帧的结构示意图。

具体实施方式

图1为本发明一实施例提供的基于RapidIO网络的路由表生成方法的流程示意图,图2为本发明一实施例提供的RapidIO网络的结构示意图。如图1和2所示,本发明实施例提供的基于RapidIO网络的路由表生成方法的执行主体可以为基于RapidIO网络的路由表生成装置,该装置可以集成在RapidIO网络中的主控根节点上,也可以直接采用主控根节点上的控制模块。图2中示例性的以RapidIO网络包括6个子节点为例对本发明提供的基于RapidIO网络的路由表生成方法进行说明。图2中的RapidIO网络中的每个节点连接在一个交换芯片上,每个交换芯片包括6个端口。可以理解的是,每个交换芯片上可以连接多个节点。

基于RapidIO网络的路由表生成方法包括:

步骤一、令维护hop跳数的取值为0,令i的取值为1;

步骤二、将主控根节点所连接的交换芯片加入到交换设备列表中,确定第i交换芯片的遍历状态为未遍历状态;第i交换芯片为第i个加入交换设备列表的交换芯片;

步骤三、将第i交换芯片的遍历状态设置为正在遍历状态;

步骤四、遍历第i交换芯片的所有端口,将连接在第i交换芯片的端口上的终端设备添加在第i交换芯片的邻设备列表中;确定连接在第i交换芯片的端口上的交换芯片的遍历状态,在遍历状态为未遍历状态时,将连接在第i交换芯片的端口上的交换芯片加入到交换设备列表中和第i交换芯片的邻设备列表中;在遍历状态为已遍历状态时,将连接在第i交换芯片的端口上的交换芯片加入到第i交换芯片的邻设备列表中;将第i交换芯片的遍历状态设置为已遍历状态;

其中,交换设备列表中增加的交换设备是第i交换芯片的子树,可以独立成立维护簇,以第i交换芯片为簇首。

步骤五、判断交换设备列表中是否存在未遍历状态的交换芯片;若是,则执行步骤六;若否则执行步骤九;

步骤六、将维护hop跳数加1,确定查找路由跳数N;N为交换设备列表中的未遍历状态的交换芯片的数目;N的取值为正整数;

步骤七、令i的取值加1,执行步骤三和步骤四;

步骤八、判断i的取值是否达到N;若是,则执行步骤五;若否,则执行步骤七;

步骤九、根据交换设备列表和各交换芯片的邻设备列表生成路由表。

本方法采用树状递归查找,通过维护端口进行网络节点查找,为了避免出现环路网络产生的路由查找失衡。

基于RapidIO网络的路由表生成装置还可以包括:节点重定义虚拟子网络分配模块。

节点重定义虚拟子网络分配模块用于,按照加入交换设备列表的从后到前的顺序,并根据各交换芯片的邻设备列表,生成至少一个虚拟网络;根据各虚拟网络的连接关系,生成路由表。

图3为本发明一实施例提供的虚拟网络建立示意图,如图3所示,节点重定义虚拟网络分配模块是为了降低网络拥堵及网络传输延迟。交换芯片重定义数量与节点邻近交换芯片数量有关,每个网络上的交换芯片至少有一个重定义身份。

例如,节点重定义虚拟子网络分配模块确定第一交换芯片的邻交换芯片数目是否为1;第一交换芯片为未加入到虚拟网络中,且最后加入交换设备列表的交换芯片;

若第一交换芯片的邻交换芯片数目为1,则建立第一交换芯片对应的第一虚拟网络,将第一交换芯片和第二交换芯片加入第一虚拟网络,进一步判断第二交换芯片的邻交换芯片数目是否为1,若是,则将第三交换芯片加入第一虚拟网络,进一步判断第三交换芯片的邻交换芯片数目是否为1,直至碰到邻交换芯片数目不为1的交换芯片;第二交换芯片为第一交换芯片的邻交换芯片;第三交换芯片为第二交换芯片的邻交换芯片。

如图3交换芯片Ⅳ中只有一个邻近交换芯片Ⅱ,将交换芯片Ⅳ,重定义为Ⅳ1终端设备到交换芯片Ⅱ中。同时,交换芯片Ⅱ,只有一个邻近交换芯片Ⅲ,因此将交换芯片Ⅱ重定义为终端设备Ⅱ1到交换芯片Ⅲ中,因此建立起虚拟网络1。图2中给出了交换芯片Ⅰ、交换芯片Ⅴ、虚拟网络1间通信的路由端口。

示例性的,若第一交换芯片的邻交换芯片数目不为1,或者碰到邻交换芯片数目不为1的交换芯片时,根据该交换芯片的邻交换芯片的数目P,虚拟出P个重分身节点,将P个重分身节点分别加入P个虚拟网络。

例如交换芯片Ⅴ,存在两个邻交换芯片,为交换芯片Ⅴ虚拟出两个重分身节点,一个分身节点加入虚拟网络1,另一个分身节点与相邻的交换芯片Ⅰ构成虚拟网络2,如图3所示。示例性的,进一步判断虚拟网络2的邻交换芯片中是否存在仍不属于任何虚拟网络的交换芯片,在存在时,判断该交换芯片的邻交换芯片数目,根据邻交换芯片数目是否为1将交换芯片加入至合适的虚拟网络。

图3中任一虚拟网络的邻近虚拟网络数量为k,各虚拟网络内部子节点数量为n,虚拟网络对外交换数据流带宽为m,虚拟网络对外交换数据的平均时延为t,虚拟网络的内部跳数为h。例如,虚拟网络1和2的邻近虚拟网络数据均为1,虚拟网络1的内部子节点数量为4,虚拟网络2的内部子节点数量为2,虚拟网络1到虚拟网络2的内部跳数为h,h=(0+0+1+2)/4+1。可以理解,当虚拟网络1还存在通过其他交换芯片连接的其他邻虚拟网络,则需以用于连接的交换芯片为跳数0,计算虚拟网络1到其他邻虚拟网络的跳数。虚拟网络的权值

Figure BDA0002310266750000071

mj表示当前虚拟网络到第j个邻虚拟网络的带宽,hj表示当前虚拟网络到第j个邻虚拟网络的跳数,tj表示当前虚拟网络到第j个邻虚拟网络的平均时延。

基于RapidIO网络的路由表生成装置还可以包括:监控权值环路模块。

建立虚拟子网络内部权值监控状态,通过维护接口观察虚拟包的具体时延和数据带宽,计算整个虚拟网络内部权值,图4为本发明一实施例提供的维护帧的结构示意图,如图4所示,可根据虚拟网络间发送接收的维护帧确定虚拟网络权值。

示例性的,可通过增加或减少虚拟网络内部边缘交换芯片数量来改变虚拟网络权值,如果某个虚拟网络由于内部流量过大,数据包时延加大,计算出权值远远大于邻近虚拟网络,那么将相同重节点划分给邻居节点,减少内部网络数据流量。其中,边缘交换芯片为与其他虚拟网络直接连接的交换芯片。在减少边缘交换芯片时,可以选择最后加入虚拟网络的边缘交换芯片。

10页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:通信系统中用于数据检测的方法、装置和计算机存储介质

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!