CN103347098A - RapidIO总线互联系统的网络枚举方法 - Google Patents

RapidIO总线互联系统的网络枚举方法 Download PDF

Info

Publication number
CN103347098A
CN103347098A CN201310201583XA CN201310201583A CN103347098A CN 103347098 A CN103347098 A CN 103347098A CN 201310201583X A CN201310201583X A CN 201310201583XA CN 201310201583 A CN201310201583 A CN 201310201583A CN 103347098 A CN103347098 A CN 103347098A
Authority
CN
China
Prior art keywords
network
node
enumeration
address
template
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
Application number
CN201310201583XA
Other languages
English (en)
Inventor
潘灵
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
CETC 10 Research Institute
Original Assignee
CETC 10 Research Institute
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by CETC 10 Research Institute filed Critical CETC 10 Research Institute
Priority to CN201310201583XA priority Critical patent/CN103347098A/zh
Publication of CN103347098A publication Critical patent/CN103347098A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)

Abstract

本发明提出的一种RapidIO总线互联系统的网络枚举方法,旨在提供一种只与主机节点相关,能够适应网络规模变化,物理地址与网络地址固定映射的枚举方法。本发明通过下述技术方案予以实现:在以RapidIO总线作为互连架构的系统中,构造一个连通图G0(V,E),作为网络模板存储于主机节点,V为描述网络节点的顶点集合,顶点集合V中的每个顶点v包含了每个节点预先分配的网络地址和物理地址;在含有网络枚举主函数和节点设置子函数的网络枚举算法中,加入网络模板预定义地址的分配策略,对于每个新发现的网络节点,以被枚举端口的网络地址、端口编号为关键字,在G0中查找匹配节点为新节点分配地址,在网络枚举算法中,节点设置函数作为子函数被枚举函数调用。

Description

RapidIO总线互联系统的网络枚举方法
技术领域
本发明涉及一种用于通过RapidIO总线互联的系统在网络初始化及热插入事件引起网络拓扑变化时的网络枚举方法。
背景技术
RapidIO总线技术是一种基于包交换的高速串行总线技术,与万兆以太网、PCIe相比有着更高的传输效率,其高性能、低延迟、高可靠性能满足未来强实时嵌入式系统的应用需求。在以RapidIO总线互联的高速信号信息处理系统中,网络中的节点具有物理地址和网络地址两类地址。物理地址标识了网络节点在系统中的物理位置,通常包含机箱号、板卡号、节点序列号几个层次,如错误!未找到引用源。所示。网络地址指主机节点在枚举网络过程中,为网络节点分配的RapidIO地址。单一采用深度优先或是广度优先的枚举算法,网络地址的分配与网络拓扑存在关联关系,会产生因网络拓扑变化引起同一节点分配到不同网络地址的现象,这就使得物理地址与网络地址的映射随网络拓扑动态变化。
为了使物理地址与网络地址具有固定的映射关系,易于系统的维护和管理,可采用网络节点自定位策略,网络节点预先将位置信息写入主机节点能够通过维护操作访问的寄存器(通常是CT寄存器),主机节点在枚举的过程中,首先读取物理地址,再根据预定义的映射规则分配网络地址。
网络节点自定位策略虽然能够解决地址映射动态变化的问题,但存在两个方面的缺陷:一是网络节点获取本地物理地址需要硬件提供支持,实现复杂且不具备通用性;二是网络地址的分配与网络中的所有节点均存在关联,单个节点的故障可能影响到整个系统,降低了系统的可靠性。
发明内容
为了实现物理地址与网络地址固定映射,同时克服网络节点自定位策略的缺陷,本发明提供了一种预先定义物理地址与网络地址的枚举方法,该枚举方法只与主机节点相关,降低了耦合性,易于操作。
本发明采用的技术方案是:在以RapidIO总线作为互连架构的系统中,构造一个描述系统网络拓扑的连通图G0(V,E),作为网络模板存储于主机节点,且G0中的每个顶点V包含了每个节点预先分配的网络地址和物理地址;在主机节点进行网络枚举的过程中,节点分配的地址从网络模板中获取,若每次网络枚举形成的连通图为Gx(V,E),则
Figure BDA00003256900300021
其次在含有节点设置和网络枚举两个主要函数的网络枚举算法中,加入网络模板预定义地址的分配策略,节点设置函数作为子函数被枚举函数调用。
本发明相比于现有技术具有如下有益效果。
采用本发明在RapidIO总线作为互连架构的系统中进行网络枚举,在网络规模发生变化时,分配给每个节点的网络地址保持不变,能够与节点物理位置形成固定的映射关系。有效解决了在网络规模发生改变的系统中,难于通过传统枚举算法分配的网络地址定位节点物理位置的问题。
本发明描述了存储系统拓扑的网络模板、结合网络模板进行网络枚举的深入优先算法,该算法在单一的深度优先枚举算法中,增加了网络地址预定义的网络地址分配策略,只与主机节点相关,降低了耦合性,易于操作,具有很强的工程应用价值。
附图说明
下面结合附图和实施例对本专利进一步说明。
图1是RapidIO硬件网络示意图。
图2是本发明网络模板的存储格式示意图。
具体实施方式
在以RapidIO总线作为互连架构的系统中,针对每个以RapidIO互联的系统,以其最大规模构造一个连通图G0(V,E),作为网络模板存储于主机节点,其中,V为描述网络节点的顶点集合,且顶点集合V中的每个顶点v包含了网络地址和物理地址两个基本属性,物理地址包含了机箱号、板卡号、节点序列号等位置信息;E为描述节点连接关系的边集合。图1是一个网络模板描述的网络拓扑,包含了1个机箱(box)、7个板卡(slot)、20个节点以及20条物理链路。图2是网络模板的存储结构,由节点信息区和连接信息区组成,节点信息区包括节点数目(node sum)和节点列表(node list)两个部分,其中,节点数目占用4字节,节点列表占用字节数为节点数目×节点属性宽度;连接信息区包括连接数目(link sum)和连接列表(link list)两个部分,其中,连接数目占用4字节,连接列表占用字节数为连接数目×连接属性宽度。网络模板可首先通过图1所示的图形化方式进行描述,再转换为图2中以节点属性列表和邻接表描述的存储结构。
基于模板的网络枚举采用递归算法,对于每个新发现的网络节点,以被枚举端口的网络地址、端口编号为关键字,在网络模板G0中找到匹配节点为新节点分配地址,根据系统内部互联的结构和电气特性,如同一类板卡只能安装于固定的机箱插槽,若每次网络枚举形成的连通图为Gx(V,E),必有
Figure BDA00003256900300031
,对于任意的v∈GX,存在唯一的v′∈GO与之对应。当定义的网络模板包含了实际网络拓扑时,枚举后的网络为实际网络,当网络模板定义为实际网络的一个子集时,能够将枚举网络规模限定在该子集内。
基于模板的网络枚举算法包括节点设置(scanSetupDevice)子函数和网络枚举(scanSubEnumPort)主函数两个主要函数,其中,节点设置子函数作为子函数被网络枚举主函数调用。节点设置子函数主要负责根据模板预定义的地址配置新发现的网络节点,并将新发现节点加入到节点对象链表LIST(V)中;网络枚举主函数主要负责通过节点设置函数配置新发现节点,并递归枚举交换节点的每个激活端口,配置主机节点与递归输出的节点集合之间的路由,完成网络枚举操作。枚举后的网络拓扑通过节点对象链表LIST(V)保存,其中,节点V包括节点属性P与邻接表N两部分,表示为V(P,N)。
基于网络模板的网络枚举同时支持从主机节点开始的枚举和从非主机节点开始的枚举。从主机节点开始的枚举,通常发生在系统初始化阶段,首先配置主机节点,并将主机节点加入节点列表LIST(V),再调用网络枚举函数scanSubEnumPort进行枚举;对于从非主机节点开始的枚举,通常由热插入事件引起,需首先配置主机节点通过地址0xFF访问被枚举节点的双向路径,然后,调用网络枚举函数scanSubEnumPort进行枚举,得到输出节点列表;最后,配置主机节点至输出节点列表中所有节点的单向路径。
节点设置函数scanSetupDevice执行过程为:首先,以被枚举端口的节点地址、端口号为关键字,搜索网络模板获取邻接节点Vi;然后,遍历节点对象链表LIST(V)搜索节点Vi,若Vi∈LIST(V),则更新被枚举节点与节点Vi两个节点对象的邻接表,若则需通过维护操作配置节点Vi,构造Vi节点对象加入节点对象链表LIST(V),再更新被枚举节点与节点Vi两个节点对象的邻接表,最后,输出节点对象Vi以及该节点是否新发现的状态标识,函数执行结束。
网络枚举函数scanSubEnumPort执行过程为:首先,根据被枚举节点和被枚举端口调用节点设置函数scanSetupDevice,得到输出节点Vi;然后,判断节点Vi是否为新发现的节点,若不是新发现节点,则网络枚举函数scanSubEnumPort输出一个空节点列表,函数执行结束。若节点Vi是新发现的节点,则保存节点Vi到节点列表FindNodeArray中,再判断节点Vi类型,若节点Vi为终端节点,则输出节点数组FindNodeArray,函数执行结束;若节点Vi为交换节点,则配置节点Vi至主机节点的单向路由,然后遍历节点Vi的端口列表,对于每个激活端口,在配置该端口枚举的单向路由后,递归调用网络枚举函数scanSubEnumPort,将每次递归调用输出的节点列表subFindNodeArray加入到节点列表FindNodeArray中,并配置节点列表subFindNodeArray中所有节点至主机节点的双向路由,在交换节点端口列表遍历结束后,输出节点列表FindNodeArray,函数执行结束。

Claims (10)

1.一种RapidIO总线互联系统的网络枚举方法,其特征在于包括如下步骤,在以RapidIO总线作为互连架构的系统中,构造一个描述系统网络拓扑的连通图G0(V,E),作为网络模板存储于主机节点,且G0中的每个顶点V包含了每个节点预先分配的网络地址和物理地址;在主机节点进行网络枚举的过程中,节点分配的地址从网络模板中获取,若每次网络枚举形成的连通图为Gx(V,E),则
Figure FDA00003256900200011
;其次,在含有节点设置和网络枚举两个主要函数的网络枚举算法中,加入网络模板预定义地址的分配策略,节点设置函数作为子函数被枚举函数调用。
2.按权利要求1所述的RapidIO总线互联系统的网络枚举方法,其特征在于:网络模板首先通过图形化方式进行描述,再转换为以节点属性列表和邻接表描述的存储结构。
3.按权利要求1所述的RapidIO总线互联系统的网络枚举方法,其特征在于:网络枚举采用递归枚举算法,为节点分配的网络地址从模板中匹配节点的属性中获取,匹配节点通过以被枚举端口的网络地址、端口号为关键字遍历邻接表查找。
4.按权利要求1所述的RapidIO总线互联系统的网络枚举方法,其特征在于:当定义的网络模板包含了实际网络拓扑时,枚举后的网络为实际网络,当网络模板定义为实际网络的一个子集时,能够将枚举网络规模限定在该子集内。
5.按权利要求1所述的RapidIO总线互联系统的网络枚举方法,其特征在于:以节点对象链表LIST(V)存储枚举后得到的网络,节点V包括节点属性P与邻接表N两部分,表示为V(P,N)。
6.按权利要求1所述的RapidIO总线互联系统的网络枚举方法,其特征在于:在节点设置函数和网络枚举函数两个主要函数中,节点设置函数根据模板预定义的地址配置新发现的网络节点,将新发现节点加入到节点对象链表LIST(V)中;网络枚举主函数通过节点设置函数配置新发现节点,并递归枚举交换节点的每个激活端口,配置主机节点与递归输出的节点集合之间的路由,完成网络枚举操作。
7.按权利要求1所述的RapidIO总线互联系统的网络枚举方法,其特征在于:网络模板的存储结构由节点信息区和连接信息区组成,节点信息区包括节点数目和节点列表两个部分,其中,节点数目占用4字节,节点列表占用字节数为节点数目×节点属性宽度;连接信息区包括连接数目和连接列表两个部分,其中,连接数目占用4字节,连接列表占用字节数为连接数目×连接属性宽度。
8.按权利要求1所述的RapidIO总线互联系统的网络枚举方法,其特征在于:基于网络模板的网络枚举同时支持从主机节点开始的枚举和从非主机节点开始的枚举。
9.按权利要求1所述的RapidIO总线互联系统的网络枚举方法,其特征在于:从主机节点开始的枚举,通常发生在系统初始化阶段,在配置主机节点以后,直接调用网络枚举函数完成网络枚举;对于从非主机节点开始的枚举,由热插入事件引起,先配置主机节点通过地址0xFF访问被枚举节点的双向路径,然后,调用网络枚举函数进行枚举,得到输出节点列表;最后,配置主机节点至输出节点列表中所有节点的单向路径。
10.按权利要求1所述的RapidIO总线互联系统的网络枚举方法,其特征在于:网络模板存储的网络节点包括,以机箱号、板卡号、节点序列号为标识的物理地址和RapidIO网络地址。
CN201310201583XA 2013-05-28 2013-05-28 RapidIO总线互联系统的网络枚举方法 Pending CN103347098A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310201583XA CN103347098A (zh) 2013-05-28 2013-05-28 RapidIO总线互联系统的网络枚举方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310201583XA CN103347098A (zh) 2013-05-28 2013-05-28 RapidIO总线互联系统的网络枚举方法

Publications (1)

Publication Number Publication Date
CN103347098A true CN103347098A (zh) 2013-10-09

Family

ID=49281872

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310201583XA Pending CN103347098A (zh) 2013-05-28 2013-05-28 RapidIO总线互联系统的网络枚举方法

Country Status (1)

Country Link
CN (1) CN103347098A (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104363169A (zh) * 2014-11-24 2015-02-18 中国电子科技集团公司第二十九研究所 一种基于RapidIO消息模式的数据动态路由系统及方法
CN109039780A (zh) * 2018-09-21 2018-12-18 中国航空无线电电子研究所 自动搜索以及自动配置交换机路由的程序
CN109218231A (zh) * 2018-09-21 2019-01-15 中国航空无线电电子研究所 一种RapidIO交换网络
CN113055298A (zh) * 2021-02-25 2021-06-29 华东计算技术研究所(中国电子科技集团公司第三十二研究所) 一种RapidIO网络的多次枚举方法及系统
CN113688091A (zh) * 2021-07-21 2021-11-23 华东计算技术研究所(中国电子科技集团公司第三十二研究所) 基于Tsi721的RapidIO动态枚举过程的实现方法及系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060236011A1 (en) * 2005-04-15 2006-10-19 Charles Narad Ring management
CN101331465A (zh) * 2005-12-21 2008-12-24 英特尔公司 分区的共享高速缓存

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060236011A1 (en) * 2005-04-15 2006-10-19 Charles Narad Ring management
CN101331465A (zh) * 2005-12-21 2008-12-24 英特尔公司 分区的共享高速缓存

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
石炜等: "基于RapidIo高速信号处理系统的网络枚举技术", 《电子设计工程》, vol. 21, no. 4, 28 February 2013 (2013-02-28) *

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104363169A (zh) * 2014-11-24 2015-02-18 中国电子科技集团公司第二十九研究所 一种基于RapidIO消息模式的数据动态路由系统及方法
CN104363169B (zh) * 2014-11-24 2017-05-31 中国电子科技集团公司第二十九研究所 一种基于RapidIO消息模式的数据动态路由系统的数据动态路由方法
CN109039780A (zh) * 2018-09-21 2018-12-18 中国航空无线电电子研究所 自动搜索以及自动配置交换机路由的程序
CN109218231A (zh) * 2018-09-21 2019-01-15 中国航空无线电电子研究所 一种RapidIO交换网络
CN109039780B (zh) * 2018-09-21 2021-04-23 中国航空无线电电子研究所 自动搜索以及自动配置交换机路由的方法
CN113055298A (zh) * 2021-02-25 2021-06-29 华东计算技术研究所(中国电子科技集团公司第三十二研究所) 一种RapidIO网络的多次枚举方法及系统
CN113055298B (zh) * 2021-02-25 2023-03-24 华东计算技术研究所(中国电子科技集团公司第三十二研究所) 一种RapidIO网络的多次枚举方法及系统
CN113688091A (zh) * 2021-07-21 2021-11-23 华东计算技术研究所(中国电子科技集团公司第三十二研究所) 基于Tsi721的RapidIO动态枚举过程的实现方法及系统
CN113688091B (zh) * 2021-07-21 2023-01-24 华东计算技术研究所(中国电子科技集团公司第三十二研究所) 基于Tsi721的RapidIO动态枚举过程的实现方法及系统

Similar Documents

Publication Publication Date Title
US9032143B2 (en) Enhanced memory savings in routing memory structures of serial attached SCSI expanders
CN103117929B (zh) 一种基于PCIe数据交换的通信方法及系统
CN108400880B (zh) 片上网络、数据传输方法和第一交换节点
CN103347098A (zh) RapidIO总线互联系统的网络枚举方法
CN113011591A (zh) 一种用于多比特量子反馈控制的量子测控系统
CN1323362C (zh) 网络设备及其外围器件互连资源的分配方法
CN108173691B (zh) 一种跨设备聚合的方法及装置
US20090016355A1 (en) Communication network initialization using graph isomorphism
US10198396B2 (en) Master control board that switches transmission channel to local commissioning serial port of the master control board
CN108234264B (zh) 一种基于PCIe信号接口扩展的数据包转发方法及装置
CN104077138A (zh) 一种集成网络路由器的众核处理器系统及其集成方法和实现方法
CN103346982B (zh) 星形结构RapidIO互连系统及其交换机配置方法
CN103500148A (zh) 一种主控卡读取业务线卡类型的装置和方法
CN103475584A (zh) 三态内容寻址存储器(tcam)查询方法和装置
US9892042B2 (en) Method and system for implementing directory structure of host system
WO2021244168A1 (zh) 片上系统、数据传送方法及广播模块
CN105677605A (zh) 一种高效的可配置片上互联系统及其实现方法、装置
CN108270877B (zh) 分布式网络节点数据共享系统
CN104408069A (zh) 一种基于布隆过滤器思想的一致性目录设计方法
US11983481B2 (en) Software-defined wafer-level switching system design method and apparatus
CN104954439A (zh) 一种云服务器及其节点互联方法、云服务器系统
CN110347343A (zh) 数据管理方法和装置
CN106027423A (zh) PCIe设备共享网络及其数据传输方法
CN112764666B (zh) 用于存储管理的方法、设备和计算机程序产品
WO2023143061A1 (zh) 一种数据访问方法及其数据访问系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20131009