CN111585821A - 一种高速互连网络拓扑发现方法,装置,介质及高性能计算系统 - Google Patents
一种高速互连网络拓扑发现方法,装置,介质及高性能计算系统 Download PDFInfo
- Publication number
- CN111585821A CN111585821A CN202010402677.3A CN202010402677A CN111585821A CN 111585821 A CN111585821 A CN 111585821A CN 202010402677 A CN202010402677 A CN 202010402677A CN 111585821 A CN111585821 A CN 111585821A
- Authority
- CN
- China
- Prior art keywords
- port
- mark information
- chip
- information
- network
- 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.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/12—Discovery or management of network topologies
Abstract
本发明公开了一种高速互连网络拓扑发现方法,装置,介质及高性能计算系统,其中拓扑发现方法的步骤包括从本节点的网络接口芯片开始读取对端标记信息并加入种子队列,针对种子队列逐步迭代寻找对端标记信息记入邻接表并构建指向该对端网络接口芯片的源路由表表项,最后将邻接表表达的实际拓扑结构和期望拓扑结构进行对比以发现错误的端口连接关系,本发明还公开前述高速互连网络拓扑发现方法对应的装置、介质及高性能计算系统。本发明支持快速实现网络拓扑结构发现、支持对实际拓扑结构和期望拓扑结构进行对比,以发现错误的端口连接关系,从而缩短互连网络调试时间、提高互连网络构建效率。
Description
技术领域
本发明主要涉及高性能计算系统高速互连网络领域,具体涉及一种高速互连网络拓扑发现方法,装置,介质及高性能计算系统。
背景技术
高性能计算系统的生命周期主要由三部分构成:一是计算系统的构建时间,包括各个子系统硬件和软件安装、配置、调试、测试等过程;二是计算系统正常运营时间,即计算系统能够为高性能计算应用提供服务的时间;三是系统的故障处理时间,某些轻微的系统故障可以在线诊断并处理,而个别严重故障需要应用下线后处理甚至停机维护。随着计算系统规模的增大,计算系统构建时间占其整个生命周期的比例通常也会增大。
高速互连网络是高性能计算系统全局性基础设施,通常由网络接口芯片(NetworkInterface Chip,简记为NIC)和网络交换芯片(Network Routing Chip,简记为NRC)连接而成。高速互连网络是构成计算系统并实现系统中各个计算节点协同工作的关键部件,其复杂性往往使得互连网络构建成为计算系统构建中最耗时间的过程。所以,互连网络子系统的构建时间通常会明显地影响整个计算系统的构建时间。互连网络构建的具体环节通常包括:物理布局设计、拓扑结构检查、网络参数配置和网络调试等。
当前,绝大部分高性能计算系统的互连网络采用光电混合互连技术,即第一层次是通过PCB(Printed Circuit Board)板内的金属导线实现部分交换芯片端口间的互连,以构成各种交换模块;第二层次是通过电背板实现交换模块上的交换芯片端口与计算主板网络接口间的连接,以及不同交换模块之间的短距离互连;第三层次是通过有源光纤AOC(Active Optical Cable)实现交换模块上部分网络芯片端口之间的长距离互连。与通过背板和PCB板上金属线实现交换芯片端口之间的固定连接关系不同,光纤连接在网络构建过程中往往由于人为因素(例如光纤标签贴错、光纤位置插错、光纤连接器未插紧、光纤损坏等)而可能偏离网络拓扑结构的设计预期,这是网络调试阶段必须首先排除的错误。一种高效的方法就是互连网络及其管理工具提供拓扑检查的功能,从而通过比较实际发现的拓扑与设计的拓扑之间的差异,以判断实际拓扑结构的正确性并纠正可能的错误端口连接关系。
目前,InfiniBand协议定义了一种互连网络拓扑发现的方法,其主要特征为:(1)支持单一的带内接口访问网络芯片的寄存器;(2)每个网络芯片具有标记芯片唯一性的GUID(Globally Unique Identifier,全球唯一的标记);(3)芯片的GUID标记由网络生产厂家写入,不支持被管理用户配置。由于每个网络芯片具有全球唯一的GUID标记和基于带内的芯片寄存器访问接口,高性能计算机系统搭建后,网络管理软件通过读取系统中网络芯片的GUID信息,可以获取高性能计算机系统的实际拓扑结构,因此,InfiniBand互连网络具备拓扑结构发现功能。但是,InfiniBand互连网络在拓扑结构检查功能方面存在的问题主要是:(1)由于标记网络芯片唯一性的GUID无法由管理用户根据网络拓扑结构分配并配置到网络芯片,无法获取高性能计算机系统搭建前的期望拓扑结构,因此无法实现拓扑结构检查;(2)由于网络芯片的端口不具备与对端网络芯片交换GUID信息功能,因此其拓扑发现过程无法简单地通过读取网络芯片本地端口寄存器而直接获得其对端网络芯片的GUID信息。因此,需要设计一种完善的互连网络拓扑结构检查装置和方法,既能便于在网络芯片硬件逻辑和网络管理软件实现拓扑结构检查,又能满足网络调测试人员快速检查网络拓扑结构的需求。
发明内容
本发明要解决的技术问题:针对现有高性能计算系统互连网络基于InfiniBand协议的互连网络拓扑发现技术无法进行互连网络拓扑结构检查的问题,提供一种高速互连网络拓扑发现方法,装置,介质及高性能计算系统,本发明支持快速实现网络拓扑结构发现,且支持对实际拓扑结构和期望拓扑结构进行对比以发现错误的端口连接关系,从而缩短互连网络调试时间、提高互连网络构建效率,既能便于在网络芯片硬件逻辑和网络管理软件实现拓扑结构检查,又能满足网络调测试人员快速检查网络拓扑结构的需求。
为了解决上述技术问题,本发明采用的技术方案为:
一种用于高性能计算系统的高速互连网络拓扑发现方法,实施步骤包括:
1)初始化种子队列和邻接表为空;
2)访问本节点的网络接口芯片中的对端标记信息,并将该对端标记信息中的记录的网络接口芯片加入种子队列;
3)构建指向该对端网络接口芯片的源路由表表项,所述源路由表为在管理服务器内存中分配的用来记录管理服务器与各个网络芯片间往返路由路径的数据结构;
4)将种子队列中的第一个网络交换芯片作为当前网络交换芯片并从种子队列中删除;
5)访问当前网络交换芯片所有端口的对端标记信息;
6)取出当前网络交换芯片一个未处理端口的对端标记信息,当该端口的对端标记信息指明该端口连接到的网络交换芯片为NRC芯片时,如果该端口连接到的网络交换芯片的编号CHIP_ID未记入邻接表,则将该端口连接到的网络交换芯片加入种子队列,并构建指向该交换芯片的源路由表表项;如果该端口连接到的网络交换芯片的编号CHIP_ID已记入邻接表,则无需处理;该端口连接到的网络交换芯片是否还有未处理端口,若有则执行步骤6);否则若有则执行步骤7);当该端口的对端标记信息指明该端口连接到的网络交换芯片为NIC芯片时,则将该端口连接到的网络交换芯片的CHIP_ID记录到邻接表;
7)判断种子队列是否为空,若种子队列非空,则跳转步骤4);若种子队列为空,则输出记录了所有可达网络芯片各端口的连接信息的邻接表;
8)将所述邻接表作为最终得到的实际拓扑结构,将实际拓扑结构和期望拓扑结构进行对比以发现错误的端口连接关系。
可选地,步骤8)的详细步骤包括:
8.1)载入用户指定的标准拓扑连接文件记为期望拓扑结构;
8.2)取出期望拓扑结构信息中未处理的端口连接信息X-Y,其中X和Y分别表示两个网络端口,具体包含<CHIP_TYPE,CHIP_ID,PORT_ID>三元组信息,根据其在实际拓扑结构中的状态分为以下情况:若实际拓扑结构中不存在与X的连接,说明端口X的实际连接断开,输出该错误说明信息;若实际拓扑结构中存在与X的连接,但是连接对方不是Y,说明连接关系错误,输出该错误说明信息;若实际拓扑中存在X-Y的连接,说明连接正确;
8.3)判断期望拓扑结构中是否有未处理的端口连接信息,若还有处理的端口连接信息,则跳转执行步骤8.2);否则,拓扑结构检查结束,退出。
此外,本发明还提供一种用于高性能计算系统的高速互连网络拓扑发现装置,包括计算机设备,该计算机设备被编程或配置以执行所述用于高性能计算系统的高速互连网络拓扑发现方法的步骤,或者该计算机设备的存储器上存储有被编程或配置以执行所述用于高性能计算系统的高速互连网络拓扑发现方法的计算机程序。
此外,本发明还提供一种计算机可读存储介质,该计算机可读存储介质上存储有被编程或配置以执行所述用于高性能计算系统的高速互连网络拓扑发现方法的计算机程序。
此外,本发明还提供一种用于应用前述用于高性能计算系统的高速互连网络拓扑发现方法的高性能计算系统,包括计算节点、交换节点、监控节点,所述计算节点、交换节点、监控节点均通过高速互连网络相连,任意相邻计算节点之间通过一个或多个交换节点相连,每一个计算节点、交换节点均对应有一个监控节点,所述计算节点和交换节点的网络接口芯片中均包含位于端口逻辑层的拓扑发现辅助装置,所述拓扑发现辅助装置包括:
端口标记信息存储模块,用于存储本端标记信息以及对端标记信息,所述本端标记信息包括本网络接口芯片的类型、编号及端口信息,所述对端标记信息包括连接到本网络接口芯片的某个端口的另一本网络接口芯片的类型、编号及端口信息;
端口标记信息控制模块,用于管理本端标记信息及对端标记信息的存储以及进行;
本端标记信息发送模块,用于从端口标记信息控制模块接收链路层控制报文,并根据链路状态启动报文发送至物理链路;
对端标记信息接收模块,用于从物理链路层接收链路层控制报文,并根据报文携带的对端标记信息更新端口标记信息存储模块中存储的对端标记信息的值;
带内访问接口模块,用于接收针对本网络芯片的带内访问的管理请求报文并返回管理响应报文;
带外访问接口模块,用于接收针对本网络芯片的带外访问的管理请求报文并返回管理响应报文;
所述端口标记信息控制模块分别与端口标记信息存储模块、本端标记信息发送模块、对端标记信息接收模块、带内访问接口模块、带外访问接口模块分别相连,所述本端标记信息发送模块、对端标记信息接收模块分别与物理链路相连,所述带内访问接口模块用于与软件层的带内管理服务器软件相连,所述带外访问接口模块用于与软件层的监控板管理软件相连。
可选地,所述端口标记信息存储模块包含本端标记信息配置寄存器REG_CFG_LOCAL和对端标记信息状态寄存器REG_STA_PEER,所述本端标记信息配置寄存器REG_CFG_LOCAL用来保存本端口的<CHIP_TYPE,CHIP_ID,PORT_ID>信息,所述对端标记信息状态寄存器REG_STA_PEER用来保存对端端口的<CHIP_TYPE,CHIP_ID,PORT_ID>信息,其中CHIP_TYPE表示为网络接口芯片类型为NIC芯片或NRC芯片,CHIP_ID为网络接口芯片的编号,PORT_ID为端口编号,所述端口标记信息控制模块用于从带内访问接口模块接收寄存器读写请求,如果是寄存器读请求,则端口标记信息控制模块从端口标记信息存储模块的读请求指定的本端标记信息配置寄存器REG_CFG_LOCAL或对端标记信息状态寄存器REG_STA_PEER,进而读取本端标记信息或对端标记信息,并将本端标记信息或对端标记信返回给带内访问接口模块;如果是寄存器写请求,则端口标记信息控制模块向端口标记信息存储模块中指定的本端标记信息配置寄存器REG_CFG_LOCAL或对端标记信息状态寄存器REG_STA_PEER的写入值,并写入本端标记信息或对端标记信息;所述端口标记信息控制模块还用于从带外访问接口模块接收寄存器读写请求,如果是寄存器读请求,则端口标记信息控制模块从端口标记信息存储模块11读取指定的本端标记信息配置寄存器REG_CFG_LOCAL或对端标记信息状态寄存器REG_STA_PEER,进而读取本端标记信息或对端标记信息,并将本端标记信息或对端标记信息返回给带外访问接口模块;如果是寄存器写请求,则端口标记信息控制模块向端口标记信息存储模块中指定的本端标记信息配置寄存器REG_CFG_LOCAL或对端标记信息状态寄存器REG_STA_PEER的写入值,并写入本端标记信息或对端标记信息;所述端口标记信息控制模块还用于从对端标记信息接收模块接收携带对端标记信息的链路层控制报文,提取链路层控制报文中的对端标记信息<CHIP_TYPE,CHIP_ID,PORT_ID>,并向端口标记信息存储模块写入对端标记信息;所述端口标记信息控制模块还用于周期性地从端口标记信息存储模块从本端标记信息配置寄存器REG_CFG_LOCAL读取本端标记信息,并将本端标记信息生成链路层控制报文后通过本端标记信息发送模块发送到物理链路上;所述端口标记信息控制模块还用于从对端标记信息接收模块接收携带对端标记信息的链路层控制报文,提取链路层控制报文中的对端标记信息<CHIP_TYPE,CHIP_ID,PORT_ID>;向端口标记信息存储模块11写入对端标记信息;所述端口标记信息控制模块包括访问寄存器请求仲裁器,所述访问寄存器请求仲裁器用于仲裁对本端标记信息配置寄存器REG_CFG_LOCAL和对端标记信息状态寄存器REG_STA_PEER的访问请求,且针对请求源进行仲裁的优先级从高到低的顺序为:带内访问接口模块、带外访问接口模块、对端标记信息接收模块、本端标记信息发送模块。
可选地,所述本端标记信息发送模块用于从端口标记信息控制模块接收链路层控制报文,并根据链路状态启动报文发送:如果本端口链路处于未握手成功状态,则丢弃该链路层控制报文;如果本端口链路握手成功且网络链路处于空闲状态,则直接发送该链路层控制报文到物理链路层;如果本端口链路握手成功且网络链路状态处于占用状态,则等待链路空闲后发送该链路层控制报文到物理链路层;如果有链路层控制报文处于等待链路空闲状态,则直接丢弃新到达的链路层控制报文。
可选地,所述对端标记信息接收模块用于从物理链路层接收链路层控制报文,从链路层控制报文中提取<CHIP_TYPE,CHIP_ID,PORT_ID>信息;向端口标记信息控制模块发送针对本端口标记信息存储模块寄存器的访问请求;如果访问请求获端口标记信息控制模块仲裁许可,则端口标记信息控制模块将<CHIP_TYPE,CHIP_ID,PORT_ID>信息写入端口标记信息存储模块的对端标记信息状态寄存器REG_STA_PEER,否则等待请求被仲裁许可。
可选地,所述带内访问接口模块用于将来自带内管理服务器软件的管理请求报文转换为访问端口标记信息存储模块内寄存器的请求,将寄存器请求提交给端口标记信息控制模块,并将端口标记信息控制模块返回的端口标记信息构造成管理响应报文返回给带内管理服务器软件,其中管理响应报文携带路由域信息直接来自于相应的管理请求报文,其中路由域信息格式为:<HopCnt,Hop1,Hop2,…,Hopn>,其中HopCnt为路由跳步数,表示管理报文达到目的网络芯片需要经过的交换芯片数目;其中Hopt为第t跳路由输出端口,表示从当前网络交换芯片编号为Hopt的端口输出管理报文,t为正整数,1≤t≤n,n为总跳步数。
可选地,所述带外访问接口模块用于将本节点对应的监控节点的带外控制信号转换为访问端口标记信息存储模块内寄存器的请求,将寄存器请求提交给端口标记信息控制模块,并将从端口标记信息控制模块获取的端口标记信息返回给监控节点。
和现有技术相比,本发明具有下述优点:
1、本发明采用带内外相结合的网络拓扑结构,原理简单、容易实现、实用性强,已获应用检验;
2、本发明通过为网络芯片设置管理芯片编号并实施对端信息交换,既能得出高性能计算机系统搭建前的期望拓扑结构,又能得到高性能计算机系统搭建后的实际拓扑结构,从而为网络拓扑结构发现提供支持,支持对实际拓扑结构和期望拓扑结构进行对比,以发现错误的端口连接关系,从而缩短互连网络调试时间、提高互连网络构建效率;
3、本发明采用带内外相结合方式,通过带外为网络芯片配置参数,并采用带内进行拓扑结构发现,不仅解决了参数配置与拓扑发现的彼此依赖问题,又提高了拓扑发现效率;本发明所设计的装置及其方法对于优化互连网络调试流程、加快互连网络调试进度具有重要作用。
综上所述,本发明支持快速实现网络拓扑结构发现,且支持对实际拓扑结构和期望拓扑结构进行对比以发现错误的端口连接关系,从而缩短互连网络调试时间、提高互连网络构建效率,既能便于在网络芯片硬件逻辑和网络管理软件实现拓扑结构检查,又能满足网络调测试人员快速检查网络拓扑结构的需求。
附图说明
图1为本发明实施例方法的基本流程示意图。
图2为本发明实施例中进行拓扑检查的流程示意图。
图3为本发明拓扑发现辅助装置的总体结构示意图。
图4为本发明实施例中的网络芯片对端信息交换过程示意图。
图5为本发明带内外相结合的互连网络拓扑结构检查方法流程图。
图6为本发明带内外相结合的互连网络拓扑结构检查方法监控板管理软件通过带外接口为芯片配置编号信息过程示意图。
具体实施方式
如图1,本实施例用于高性能计算系统的高速互连网络拓扑发现方法的实施步骤包括:
1)初始化种子队列和邻接表为空;
2)访问本节点的网络接口芯片中的对端标记信息,并将该对端标记信息中的记录的网络接口芯片加入种子队列;
3)构建指向该对端网络接口芯片的源路由表表项,源路由表为在管理服务器内存中分配的用来记录管理服务器与各个网络芯片间往返路由路径的数据结构;
4)将种子队列中的第一个网络交换芯片作为当前网络交换芯片并从种子队列中删除;
5)访问当前网络交换芯片所有端口的对端标记信息;
6)取出当前网络交换芯片一个未处理端口的对端标记信息,当该端口的对端标记信息指明该端口连接到的网络交换芯片为NRC芯片时,如果该端口连接到的网络交换芯片的编号CHIP_ID未记入邻接表,则将该端口连接到的网络交换芯片加入种子队列,并构建指向该交换芯片的源路由表表项;如果该端口连接到的网络交换芯片的编号CHIP_ID已记入邻接表,则无需处理;该端口连接到的网络交换芯片是否还有未处理端口,若有则执行步骤6);否则若有则执行步骤7);当该端口的对端标记信息指明该端口连接到的网络交换芯片为NIC芯片时,则将该端口连接到的网络交换芯片的CHIP_ID记录到邻接表;
7)判断种子队列是否为空,若种子队列非空,则跳转步骤4);若种子队列为空,则输出记录了所有可达网络芯片各端口的连接信息的邻接表;
8)将邻接表作为最终得到的实际拓扑结构,将实际拓扑结构和期望拓扑结构进行对比以发现错误的端口连接关系。
如图2所示,本实施例中步骤8)的详细步骤包括:
8.1)载入用户指定的标准拓扑连接文件记为期望拓扑结构;
8.2)取出期望拓扑结构信息中未处理的端口连接信息X-Y,其中X和Y分别表示两个网络端口,具体包含<CHIP_TYPE,CHIP_ID,PORT_ID>三元组信息,根据其在实际拓扑结构中的状态分为以下情况:若实际拓扑结构中不存在与X的连接,说明端口X的实际连接断开,输出该错误说明信息;若实际拓扑结构中存在与X的连接,但是连接对方不是Y,说明连接关系错误,输出该错误说明信息;若实际拓扑中存在X-Y的连接,说明连接正确;
8.3)判断期望拓扑结构中是否有未处理的端口连接信息,若还有处理的端口连接信息,则跳转执行步骤8.2);否则,拓扑结构检查结束,退出。
此外,本实施例还提供一种用于高性能计算系统的高速互连网络拓扑发现装置,包括计算机设备,该计算机设备被编程或配置以执行前述用于高性能计算系统的高速互连网络拓扑发现方法的步骤,或者该计算机设备的存储器上存储有被编程或配置以执行前述用于高性能计算系统的高速互连网络拓扑发现方法的计算机程序。
此外,本实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有被编程或配置以执行前述用于高性能计算系统的高速互连网络拓扑发现方法的计算机程序。
此外,本实施例还提供一种用于应用前述用于高性能计算系统的高速互连网络拓扑发现方法的高性能计算系统,包括计算节点(本实施例中具体为计算板)、交换节点(本实施例中具体为交换板)、监控节点(本实施例中具体为监控板),计算节点、交换节点、监控节点均通过高速互连网络相连,任意相邻计算节点之间通过一个或多个交换节点相连,每一个计算节点、交换节点均对应有一个监控节点,计算节点和交换节点的网络接口芯片中均包含位于端口逻辑层的拓扑发现辅助装置。该高性能计算系统高速互连网络拓扑发现需要结合网络芯片硬件逻辑和网络管理软件(带内管理服务器软件和监控板管理软件)实现,从上而下分别是软件层、端口逻辑层和物理链路层。软件层部署网络管理软件(带内管理服务器软件和监控板管理软件),用来实现与用户接口、配置和网络管理等。网络芯片硬件逻辑分端口逻辑层和物理链路层。端口逻辑层包含现有的网络芯片端口逻辑层核心逻辑,用来负责数据报文组织、路由等功能。物理链路层定义网络链路层核心逻辑,用来实现报文的可靠传输,并向下连接各种传输媒介(称为高速链路)实现报文的可靠传输。本实施例对现有系统的结构改进之处是在计算节点和交换节点的网络接口芯片中均包含位于端口逻辑层的拓扑发现辅助装置,如图3中端口逻辑层的右侧所示。如图3所示,该拓扑发现辅助装置包括:
端口标记信息存储模块11,用于存储本端标记信息以及对端标记信息,本端标记信息包括本网络接口芯片的类型、编号及端口信息,对端标记信息包括连接到本网络接口芯片的某个端口的另一本网络接口芯片的类型、编号及端口信息;
端口标记信息控制模块12,用于管理本端标记信息及对端标记信息的存储以及进行;
本端标记信息发送模块13,用于从端口标记信息控制模块12接收链路层控制报文,并根据链路状态启动报文发送至物理链路;
对端标记信息接收模块14,用于从物理链路层接收链路层控制报文,并根据报文携带的对端标记信息更新端口标记信息存储模块11中存储的对端标记信息的值;
带内访问接口模块15,用于接收针对本网络芯片的带内访问的管理请求报文并返回管理响应报文;
带外访问接口模块16,用于接收针对本网络芯片的带外访问的管理请求报文并返回管理响应报文;
端口标记信息控制模块12分别与端口标记信息存储模块11、本端标记信息发送模块13、对端标记信息接收模块14、带内访问接口模块15、带外访问接口模块16分别相连,本端标记信息发送模块13、对端标记信息接收模块14分别与物理链路相连,带内访问接口模块15用于与软件层的带内管理服务器软件相连,带外访问接口模块16用于与软件层的监控板管理软件相连。
为了实现网络拓扑结构发现,首先需要解决NIC和NRC两款网络芯片的全局唯一标记问题。本实施例中为NIC和NRC设置K(K为正整数)位的芯片编号(简称CHIP_ID)信息,K的取值依赖于互连网络系统规模,记互连网络中存在L(L为正整数)个网络芯片,则K取(表示上取整)即可。为了对两种网络芯片统一进行管理,适宜为两种网络芯片设置1位的类型信息(简称CHIP_TYPE)。为了对NRC的端口进行标记,每个网络芯片端口固有一个编号(简称PORT_ID),假设NRC共N个端口(N为自然数,和芯片设计有关),则适宜为网络芯片设置位端口编号信息,其各个端口分别编号为0、1、…、N-1。NIC只有一个端口,所以其端口编号为0。所以,互连网络中的任意一个网络芯片端口都可以由3元组信息<CHIP_TYPE,CHIP_ID,PORT_ID>进行标记。
本实施例中,端口标记信息存储模块11包含本端标记信息配置寄存器REG_CFG_LOCAL和对端标记信息状态寄存器REG_STA_PEER,本端标记信息配置寄存器REG_CFG_LOCAL用来保存本端口的<CHIP_TYPE,CHIP_ID,PORT_ID>信息,对端标记信息状态寄存器REG_STA_PEER用来保存对端端口的<CHIP_TYPE,CHIP_ID,PORT_ID>信息,其中CHIP_TYPE表示为网络接口芯片类型为NIC芯片(计算节点的网络接口芯片)或NRC芯片(交换节点的网络接口芯片),CHIP_ID为网络接口芯片的编号,PORT_ID为端口编号。本端标记信息配置寄存器REG_CFG_LOCAL和对端标记信息状态寄存器REG_STA_PEER都是可读寄存器,但只有本端标记信息配置寄存器REG_CFG_LOCA的CHIP_ID域可写寄存器中存储3元组信息<CHIP_TYPE,CHIP_ID,PORT_ID>。
本端标记信息配置寄存器REG_CFG_LOCAL用来保存本端口的<CHIP_TYPE,CHIP_ID,PORT_ID>信息。在芯片加电或复位时,该寄存器的值被初始化,其中CHIP_TYPE域和PORT_ID域的值被初始化为本芯片的类型和本端口编号,CHIP_ID域值被初始化为全1;在芯片加电或复位完成后,CHIP_TYPE域和PORT_ID域值保持不变,CHIP_ID域值可以被重新进行配置。
对端标记信息状态寄存器REG_STA_PEER用来保存该端口对端端口的<CHIP_TYPE,CHIP_ID,PORT_ID>信息,其3元组所有信息域值在芯片加电或复位时被直接配置为全1,在芯片加电或复位后可由端口标记信息控制模块12根据对端标记信息接收模块14提供的信息进行配置。所以,如果网络端口悬空(即未连接到其它端口或已连接端口链路状态异常),则该端口的对端标记信息状态寄存器REG_STA_PEER的各域的值会保持为全1状态。
端口标记信息存储模块11与端口标记信息控制模块12相连。端口标记信息控制模块12从端口标记信息存储模块11读取指定寄存器本端标记信息配置寄存器REG_CFG_LOCAL或者对端标记信息状态寄存器REG_STA_PEER)的值,进而读取端口标记信息;并向端口标记信息存储模块11中指定寄存器写入值,进而写入端口标记信息。
端口标记信息控制模块12是该拓扑发现辅助装置的控制核心,与端口标记信息存储模块11、带内访问接口模块15、带外访问接口模块16、本端标记信息发送模块13、对端标记信息接收模块14相连。
端口标记信息控制模块12用于从带内访问接口模块15接收寄存器读写请求,如果是寄存器读请求,则端口标记信息控制模块12从端口标记信息存储模块11的读请求指定的本端标记信息配置寄存器REG_CFG_LOCAL或对端标记信息状态寄存器REG_STA_PEER,进而读取本端标记信息或对端标记信息,并将本端标记信息或对端标记信返回给带内访问接口模块15;如果是寄存器写请求,则端口标记信息控制模块12向端口标记信息存储模块11中指定的本端标记信息配置寄存器REG_CFG_LOCAL或对端标记信息状态寄存器REG_STA_PEER的写入值,并写入本端标记信息或对端标记信息。
端口标记信息控制模块12还用于从带外访问接口模块16接收寄存器读写请求,如果是寄存器读请求,则端口标记信息控制模块12从端口标记信息存储模块11读取指定的本端标记信息配置寄存器REG_CFG_LOCAL或对端标记信息状态寄存器REG_STA_PEER,进而读取本端标记信息或对端标记信息,并将本端标记信息或对端标记信息返回给带外访问接口模块16;如果是寄存器写请求,则端口标记信息控制模块12向端口标记信息存储模块11中指定的本端标记信息配置寄存器REG_CFG_LOCAL或对端标记信息状态寄存器REG_STA_PEER的写入值,并写入本端标记信息或对端标记信息。
端口标记信息控制模块12还用于从对端标记信息接收模块14接收携带对端标记信息的链路层控制报文,提取链路层控制报文中的对端标记信息<CHIP_TYPE,CHIP_ID,PORT_ID>,并向端口标记信息存储模块11写入对端标记信息。
端口标记信息控制模块12还用于周期性地从端口标记信息存储模块11从本端标记信息配置寄存器REG_CFG_LOCAL读取本端标记信息,并将本端标记信息生成链路层控制报文后通过本端标记信息发送模块13发送到物理链路上。
端口标记信息控制模块12还用于从对端标记信息接收模块14接收携带对端标记信息的链路层控制报文,提取链路层控制报文中的对端标记信息<CHIP_TYPE,CHIP_ID,PORT_ID>;向端口标记信息存储模块11写入对端标记信息。
对端口标记信息存储模块11中的寄存器的访问请求会来自带内访问接口模块15、带外访问接口模块16、本端标记信息发送模块13、对端标记信息接收模块14。所以,控制模块还需要对同时到达的寄存器访问请求仲裁,本实施例中端口标记信息控制模块12包括访问寄存器请求仲裁器,访问寄存器请求仲裁器用于仲裁对本端标记信息配置寄存器REG_CFG_LOCAL和对端标记信息状态寄存器REG_STA_PEER的访问请求,且针对请求源进行仲裁的优先级从高到低的顺序为:带内访问接口模块15、带外访问接口模块16、对端标记信息接收模块14、本端标记信息发送模块13。仲裁逻辑根据请求的优先级选择请求进行处理。请求的优先级高低序设置为:带内访问请求>带外访问请求>对端标记信息接收模块14请求>本端标记信息发送模块13请求(X>Y表示X的优先级高于Y的优先级)。
端口标记信息控制模块12通过周期性地向对端发送携带本端标记信息的链路层控制报文实现的网络芯片对端信息交换。如图4所示,端口标记信息控制模块12发送处理过程的具体步骤包括:(a)从端口标记信息存储模块11读取本端标记信息;(b)构造携带本端标记信息的链路层控制报文;(c)启动本端标记信息发送模块13发送链路层控制报文。该过程以周期性方式启动,具体实现可以采用定时器触发实现。当对端接收到携带本端标记信息的链路层控制报文后,对端进入接收链路层控制报文的过程。端口标记信息控制模块12接收处理过程的具体步骤包括:(a')从对端标记信息接收模块14接收携带对端标记信息的链路层控制报文;(b')提取链路层控制报文中的对端标记信息;(c')向端口标记信息存储模块11写入对端标记信息。因此,每个网络端口都既主动周期性的发送携带本端标记信息的链路层控制报文,又被动周期性的接收到携带对端标记信息的链路层控制报文。从而实现相连接的两个网络端口实时保存了各自对方端口的标记信息。
本端标记信息发送模块13与端口标记信息控制模块12和物理链路层相连。本实施例中,本端标记信息发送模块13用于从端口标记信息控制模块12接收链路层控制报文,并根据链路状态启动报文发送:如果本端口链路处于未握手成功状态,则丢弃该链路层控制报文;如果本端口链路握手成功且网络链路处于空闲状态,则直接发送该链路层控制报文到物理链路层;如果本端口链路握手成功且网络链路状态处于占用状态,则等待链路空闲后发送该链路层控制报文到物理链路层;如果有链路层控制报文处于等待链路空闲状态,则直接丢弃新到达的链路层控制报文。
对端标记信息接收模块14与端口标记信息控制模块12和物理链路层相连。本实施例中,对端标记信息接收模块14用于从物理链路层接收链路层控制报文,从链路层控制报文中提取<CHIP_TYPE,CHIP_ID,PORT_ID>信息;向端口标记信息控制模块12发送针对本端口标记信息存储模块11寄存器的访问请求;如果访问请求获端口标记信息控制模块12仲裁许可,则端口标记信息控制模块12将<CHIP_TYPE,CHIP_ID,PORT_ID>信息写入端口标记信息存储模块11的对端标记信息状态寄存器REG_STA_PEER,否则等待请求被仲裁许可。
带内访问接口模块15与端口标记信息控制模块12和软件层的带内管理服务器软件相连。带内访问接口模块15用于将来自带内管理服务器软件的管理请求报文转换为访问端口标记信息存储模块11内寄存器的请求,将寄存器请求提交给端口标记信息控制模块12,并将端口标记信息控制模块12返回的端口标记信息构造成管理响应报文返回给带内管理服务器软件,其中管理响应报文携带路由域信息直接来自于相应的管理请求报文,其中路由域信息格式为:<HopCnt,Hop1,Hop2,…,Hopn>,其中HopCnt为路由跳步数,表示管理报文达到目的网络芯片需要经过的交换芯片数目;其中Hopt为第t跳路由输出端口,表示从当前网络交换芯片编号为Hopt的端口输出管理报文,t为正整数,1≤t≤n,n为总跳步数。带内访问接口模块15用于带内管理,带内管理是指网络芯片的参数配置和状态监控通过管理服务器向网络芯片发送管理报文进行,而管理报文直接通过网络的物理链路传输。带内管理采用源路由方式实现,其管理报文分为管理请求报文和管理响应报文两种。管理请求报文中不仅携带从管理服务器到达目标网络芯片的路由域信息,而且携带从目标网络芯片返回管理服务器的路由域信息。
带外访问接口模块16与端口标记信息控制模块12和软件层的监控板管理软件相连。本实施例中,带外访问接口模块16用于将本节点对应的监控节点的带外控制信号转换为访问端口标记信息存储模块11内寄存器的请求,将寄存器请求提交给端口标记信息控制模块12,并将从端口标记信息控制模块12获取的端口标记信息返回给监控节点。带外访问接口模块16用于带外管理,带外管理是指网络芯片的参数配置和状态监控通过I2C或JTAG等标准接口进行,且对接口的控制信号传输不依赖于网络自身。通常,高性能计算系统由多个机柜构成,每个机柜由多个机框构成,每个机框内的监控板通过I2C或JTAG带外访问接口对框内所有计算板和通信板进行监控(包括加切电、温度报警等)。每块监控板上设置一个以太网接口,计算系统中所有监控板通过以太网连接而成带外管理网络。接入到管理网络的管理服务器可以通过监控板访问系统中集成到计算板的NIC和集成到通信板的NRC。带外访问接口模块16将监控板的带外控制信号转换为访问端口标记信息存储模块11内寄存器的请求,将寄存器请求提交给端口标记信息控制模块12,并将从端口标记信息控制模块12获取的端口标记信息返回给监控板。监控板具有存储设备(例如EEPROM或FLASH等),可用来保存相关配置信息。
监控板管理软件与芯片编号规则文件和带外访问接口模块16相连。监控板管理软件是一个通过带外接口为芯片配置编号信息的软件,流程如下:监控板管理软件读取芯片编号规则文件;监控板管理软件将网络芯片编号信息写入监控板的存储设备。监控板管理软件根据芯片编号规则文件,获取高性能计算系统中各个监控板所要配置的网络芯片编号,然后将该信息推送到对应的监控板,并保存到监控板的存储设备;)监控板管理软件为NIC和NRC两款网络芯片配置编号信息。当管理用户通过监控板对计算板或通信板执行加电或复位操作时,监控板首先对其执行加电或复位操作,然后将保存在存储设备中的相关网络芯片编号信息通过带外访问接口模块16写入网络芯片REG_CFG_LOCAL寄存器的CHIP_ID域,监控板管理软件运行结束。
本实施例中,带内管理服务器软件与带内访问接口模块15相连。带内管理服务器软件用于执行前述用于高性能计算系统的高速互连网络拓扑发现方法的步骤,主要包括拓扑发现和拓扑比对两部分,首先通过带内访问接口模块15进行拓扑结构发现,得出高性能计算机系统实际拓扑结构,然后将实际拓扑结构与设计规划的期望拓扑结构进行对比,从而定位存在错误的网络端口连接关系,实现拓扑结构检查,本发明的网络拓扑结构检查装置采用带内外相结合技术,因此设计了带内访问接口和带外访问接口。尽管使用两种访问接口都可以访问端口标记信息存储模块11中的寄存器,但使用本发明的装置进行网络拓扑结构检查时,两者的任务分工是不同。带内管理服务器软件通过带内访问接口模块15进行拓扑结构发现。拓扑发现过程由带内管理服务器软件实现,拓扑发现采用宽度优先的搜索策略,将发现的网络芯片记录到邻接表(所述邻接表为在管理服务器内存中分配的用来记录网络芯片端口邻接关系的数据结构)。带内管理服务器软件对实际拓扑结构进行正确性检查。将当前发现的实际拓扑结构与设计规划的期望拓扑结构进行对比,从而定位存在错误的网络端口连接关系。
如图5所示,本实施例中高性能计算系统带内外相结合的互连网络拓扑结构检查的方法分为以下三个步骤:第一步:监控板管理软件通过带外接口为芯片配置编号信息;第二步:带内管理服务器软件通过带内访问接口模块15进行拓扑结构发现;第三步:带内管理服务器软件对实际拓扑结构进行正确性检查。
第一步,监控板管理软件通过带外接口为芯片配置编号信息。
如图6所示,详细步骤包括:监控板管理软件读取芯片编号规则文件;监控板管理软件将网络芯片编号信息写入监控板的存储设备。监控板管理软件根据芯片编号规则文件,获取高性能计算系统中各个监控板所要配置的网络芯片编号,然后将该信息推送到对应的监控板,并保存到监控板的存储设备;监控板管理软件为NIC和NRC两款网络芯片配置编号信息。当管理用户通过监控板对计算板或通信板执行加电或复位操作时,监控板首先对其执行加电或复位操作,然后将保存在存储设备中的相关网络芯片编号信息通过带外访问接口模块16写入网络芯片端口标记信息存储模块11的REG_CFG_LOCAL寄存器的CHIP_ID域。端口标记信息控制模块12通过周期性地向对端发送携带本端标记信息的链路层控制报文实现网络芯片对端信息交换。其中,芯片编号规则文件是由测试人员根据要调测试的高性能计算机系统制定的网络芯片编号规则文件,以文本文件的形式存在,芯片编号规则文件确定互连网络系统中网络芯片的编号规则。监控板管理软件通过读取芯片规则文件为高性能计算机系统中的网络芯片进行编号。网络芯片的编号规则分以下情况:(7.1)网络接口芯片编号。假设高性能计算系统中共有M(M为正整数)个计算节点,且每个计算节点通过一个NIC芯片接入互连网络,则NIC芯片编号为0,1,2,…,M-1,且将标记为x(x为正整数)的计算节点对应的网络接口芯片编号为x。(7.2)网络交换芯片编号。假设高性能计算系统互连网络中共有H(H为正整数)个网络交换芯片,则它们分别编号为0,1,2,…,H-1,编号顺序可采取先计算机柜后通信机柜且按照机柜号从小到大依次编号。
第二步,带内管理服务器软件通过带内访问接口模块15进行拓扑结构发现。拓扑发现过程由带内管理服务器软件实现,拓扑发现采用宽度优先的搜索策略,将发现的网络芯片记录到邻接表(所述邻接表为在管理服务器内存中分配的用来记录网络芯片端口邻接关系的数据结构)。带内管理服务器软件拓扑发现过程如图1所示。
第三步,带内管理服务器软件对实际拓扑结构进行正确性检查。将当前发现的实际拓扑结构与设计规划的期望拓扑结构进行对比,从而定位存在错误的网络端口连接关系。带内管理服务器软件对实际拓扑结构进行正确性检查过程如图2所示。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述仅是本发明的优选实施方式,本发明的保护范围并不仅局限于上述实施例,凡属于本发明思路下的技术方案均属于本发明的保护范围。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理前提下的若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (10)
1.一种用于高性能计算系统的高速互连网络拓扑发现方法,其特征在于实施步骤包括:
1)初始化种子队列和邻接表为空;
2)访问本节点的网络接口芯片中的对端标记信息,并将该对端标记信息中的记录的网络接口芯片加入种子队列;
3)构建指向该对端网络接口芯片的源路由表表项,所述源路由表为在管理服务器内存中分配的用来记录管理服务器与各个网络芯片间往返路由路径的数据结构;
4)将种子队列中的第一个网络交换芯片作为当前网络交换芯片并从种子队列中删除;
5)访问当前网络交换芯片所有端口的对端标记信息;
6)取出当前网络交换芯片一个未处理端口的对端标记信息,当该端口的对端标记信息指明该端口连接到的网络交换芯片为NRC芯片时,如果该端口连接到的网络交换芯片的编号CHIP_ID未记入邻接表,则将该端口连接到的网络交换芯片加入种子队列,并构建指向该交换芯片的源路由表表项;如果该端口连接到的网络交换芯片的编号CHIP_ID已记入邻接表,则无需处理;该端口连接到的网络交换芯片是否还有未处理端口,若有则执行步骤6);否则若有则执行步骤7);当该端口的对端标记信息指明该端口连接到的网络交换芯片为NIC芯片时,则将该端口连接到的网络交换芯片的CHIP_ID记录到邻接表;
7)判断种子队列是否为空,若种子队列非空,则跳转步骤4);若种子队列为空,则输出记录了所有可达网络芯片各端口的连接信息的邻接表;
8)将所述邻接表作为最终得到的实际拓扑结构,将实际拓扑结构和期望拓扑结构进行对比以发现错误的端口连接关系。
2.根据权利要求1所述的用于高性能计算系统的高速互连网络拓扑发现方法,其特征在于,步骤8)的详细步骤包括:
8.1)载入用户指定的标准拓扑连接文件记为期望拓扑结构;
8.2)取出期望拓扑结构信息中未处理的端口连接信息X-Y,其中X和Y分别表示两个网络端口,具体包含<CHIP_TYPE,CHIP_ID,PORT_ID>三元组信息,根据其在实际拓扑结构中的状态分为以下情况:若实际拓扑结构中不存在与X的连接,说明端口X的实际连接断开,输出该错误说明信息;若实际拓扑结构中存在与X的连接,但是连接对方不是Y,说明连接关系错误,输出该错误说明信息;若实际拓扑中存在X-Y的连接,说明连接正确;
8.3)判断期望拓扑结构中是否有未处理的端口连接信息,若还有处理的端口连接信息,则跳转执行步骤8.2);否则,拓扑结构检查结束,退出。
3.一种用于高性能计算系统的高速互连网络拓扑发现装置,包括计算机设备,其特征在于,该计算机设备被编程或配置以执行权利要求1或2所述用于高性能计算系统的高速互连网络拓扑发现方法的步骤,或者该计算机设备的存储器上存储有被编程或配置以执行权利要求1或2所述用于高性能计算系统的高速互连网络拓扑发现方法的计算机程序。
4.一种计算机可读存储介质,其特征在于,该计算机可读存储介质上存储有被编程或配置以执行权利要求1或2所述用于高性能计算系统的高速互连网络拓扑发现方法的计算机程序。
5.一种用于应用权利要求1或2所述用于高性能计算系统的高速互连网络拓扑发现方法的高性能计算系统,包括计算节点、交换节点、监控节点,所述计算节点、交换节点、监控节点均通过高速互连网络相连,任意相邻计算节点之间通过一个或多个交换节点相连,每一个计算节点、交换节点均对应有一个监控节点,其特征在于,所述计算节点和交换节点的网络接口芯片中均包含位于端口逻辑层的拓扑发现辅助装置,所述拓扑发现辅助装置包括:
端口标记信息存储模块(11),用于存储本端标记信息以及对端标记信息,所述本端标记信息包括本网络接口芯片的类型、编号及端口信息,所述对端标记信息包括连接到本网络接口芯片的某个端口的另一本网络接口芯片的类型、编号及端口信息;
端口标记信息控制模块(12),用于管理本端标记信息及对端标记信息的存储以及进行;
本端标记信息发送模块(13),用于从端口标记信息控制模块(12)接收链路层控制报文,并根据链路状态启动报文发送至物理链路;
对端标记信息接收模块(14),用于从物理链路层接收链路层控制报文,并根据报文携带的对端标记信息更新端口标记信息存储模块(11)中存储的对端标记信息的值;
带内访问接口模块(15),用于接收针对本网络芯片的带内访问的管理请求报文并返回管理响应报文;
带外访问接口模块(16),用于接收针对本网络芯片的带外访问的管理请求报文并返回管理响应报文;
所述端口标记信息控制模块(12)分别与端口标记信息存储模块(11)、本端标记信息发送模块(13)、对端标记信息接收模块(14)、带内访问接口模块(15)、带外访问接口模块(16)分别相连,所述本端标记信息发送模块(13)、对端标记信息接收模块(14)分别与物理链路相连,所述带内访问接口模块(15)用于与软件层的带内管理服务器软件相连,所述带外访问接口模块(16)用于与软件层的监控板管理软件相连。
6.根据权利要求5所述的高性能计算系统,其特征在于,所述端口标记信息存储模块(11)包含本端标记信息配置寄存器REG_CFG_LOCAL和对端标记信息状态寄存器REG_STA_PEER,所述本端标记信息配置寄存器REG_CFG_LOCAL用来保存本端口的<CHIP_TYPE,CHIP_ID,PORT_ID>信息,所述对端标记信息状态寄存器REG_STA_PEER用来保存对端端口的<CHIP_TYPE,CHIP_ID,PORT_ID>信息,其中CHIP_TYPE表示为网络接口芯片类型为NIC芯片或NRC芯片,CHIP_ID为网络接口芯片的编号,PORT_ID为端口编号,所述端口标记信息控制模块(12)用于从带内访问接口模块(15)接收寄存器读写请求,如果是寄存器读请求,则端口标记信息控制模块(12)从端口标记信息存储模块(11)的读请求指定的本端标记信息配置寄存器REG_CFG_LOCAL或对端标记信息状态寄存器REG_STA_PEER,进而读取本端标记信息或对端标记信息,并将本端标记信息或对端标记信返回给带内访问接口模块(15);如果是寄存器写请求,则端口标记信息控制模块(12)向端口标记信息存储模块(11)中指定的本端标记信息配置寄存器REG_CFG_LOCAL或对端标记信息状态寄存器REG_STA_PEER的写入值,并写入本端标记信息或对端标记信息;所述端口标记信息控制模块(12)还用于从带外访问接口模块(16)接收寄存器读写请求,如果是寄存器读请求,则端口标记信息控制模块(12)从端口标记信息存储模块11读取指定的本端标记信息配置寄存器REG_CFG_LOCAL或对端标记信息状态寄存器REG_STA_PEER,进而读取本端标记信息或对端标记信息,并将本端标记信息或对端标记信息返回给带外访问接口模块(16);如果是寄存器写请求,则端口标记信息控制模块(12)向端口标记信息存储模块(11)中指定的本端标记信息配置寄存器REG_CFG_LOCAL或对端标记信息状态寄存器REG_STA_PEER的写入值,并写入本端标记信息或对端标记信息;所述端口标记信息控制模块(12)还用于从对端标记信息接收模块(14)接收携带对端标记信息的链路层控制报文,提取链路层控制报文中的对端标记信息<CHIP_TYPE,CHIP_ID,PORT_ID>,并向端口标记信息存储模块(11)写入对端标记信息;所述端口标记信息控制模块(12)还用于周期性地从端口标记信息存储模块(11)从本端标记信息配置寄存器REG_CFG_LOCAL读取本端标记信息,并将本端标记信息生成链路层控制报文后通过本端标记信息发送模块(13)发送到物理链路上;所述端口标记信息控制模块(12)还用于从对端标记信息接收模块(14)接收携带对端标记信息的链路层控制报文,提取链路层控制报文中的对端标记信息<CHIP_TYPE,CHIP_ID,PORT_ID>;向端口标记信息存储模块11写入对端标记信息;所述端口标记信息控制模块(12)包括访问寄存器请求仲裁器,所述访问寄存器请求仲裁器用于仲裁对本端标记信息配置寄存器REG_CFG_LOCAL和对端标记信息状态寄存器REG_STA_PEER的访问请求,且针对请求源进行仲裁的优先级从高到低的顺序为:带内访问接口模块(15)、带外访问接口模块(16)、对端标记信息接收模块(14)、本端标记信息发送模块(13)。
7.根据权利要求6所述的高性能计算系统,其特征在于,所述本端标记信息发送模块(13)用于从端口标记信息控制模块(12)接收链路层控制报文,并根据链路状态启动报文发送:如果本端口链路处于未握手成功状态,则丢弃该链路层控制报文;如果本端口链路握手成功且网络链路处于空闲状态,则直接发送该链路层控制报文到物理链路层;如果本端口链路握手成功且网络链路状态处于占用状态,则等待链路空闲后发送该链路层控制报文到物理链路层;如果有链路层控制报文处于等待链路空闲状态,则直接丢弃新到达的链路层控制报文。
8.根据权利要求6所述的高性能计算系统,其特征在于,所述对端标记信息接收模块(14)用于从物理链路层接收链路层控制报文,从链路层控制报文中提取<CHIP_TYPE,CHIP_ID,PORT_ID>信息;向端口标记信息控制模块(12)发送针对本端口标记信息存储模块(11)寄存器的访问请求;如果访问请求获端口标记信息控制模块(12)仲裁许可,则端口标记信息控制模块(12)将<CHIP_TYPE,CHIP_ID,PORT_ID>信息写入端口标记信息存储模块(11)的对端标记信息状态寄存器REG_STA_PEER,否则等待请求被仲裁许可。
9.根据权利要求6所述的高性能计算系统,其特征在于,所述带内访问接口模块(15)用于将来自带内管理服务器软件的管理请求报文转换为访问端口标记信息存储模块(11)内寄存器的请求,将寄存器请求提交给端口标记信息控制模块(12),并将端口标记信息控制模块(12)返回的端口标记信息构造成管理响应报文返回给带内管理服务器软件,其中管理响应报文携带路由域信息直接来自于相应的管理请求报文,其中路由域信息格式为:<HopCnt,Hop1,Hop2,…,Hopn>,其中HopCnt为路由跳步数,表示管理报文达到目的网络芯片需要经过的交换芯片数目;其中Hopt为第t跳路由输出端口,表示从当前网络交换芯片编号为Hopt的端口输出管理报文,t为正整数,1≤t≤n,n为总跳步数。
10.根据权利要求6所述的高性能计算系统,其特征在于,所述带外访问接口模块(16)用于将本节点对应的监控节点的带外控制信号转换为访问端口标记信息存储模块(11)内寄存器的请求,将寄存器请求提交给端口标记信息控制模块(12),并将从端口标记信息控制模块(12)获取的端口标记信息返回给监控节点。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010402677.3A CN111585821B (zh) | 2020-05-13 | 2020-05-13 | 一种高速互连网络拓扑发现方法,装置,介质及高性能计算系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010402677.3A CN111585821B (zh) | 2020-05-13 | 2020-05-13 | 一种高速互连网络拓扑发现方法,装置,介质及高性能计算系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111585821A true CN111585821A (zh) | 2020-08-25 |
CN111585821B CN111585821B (zh) | 2022-07-19 |
Family
ID=72126620
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010402677.3A Active CN111585821B (zh) | 2020-05-13 | 2020-05-13 | 一种高速互连网络拓扑发现方法,装置,介质及高性能计算系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111585821B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115695341A (zh) * | 2022-08-23 | 2023-02-03 | 中国电子科技集团公司第十研究所 | 国产srio交换芯片端口恢复方法、设备及介质 |
CN117807017A (zh) * | 2024-03-01 | 2024-04-02 | 中国人民解放军国防科技大学 | 立方体超结点多平面互连的高性能计算机及其通信方法 |
CN117807017B (zh) * | 2024-03-01 | 2024-05-14 | 中国人民解放军国防科技大学 | 立方体超结点多平面互连的高性能计算机及其通信方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009057005A2 (en) * | 2007-11-01 | 2009-05-07 | Telefonaktiebolaget Lm Ericsson (Publ) | Topology discovery in heterogeneous networks |
WO2011140918A1 (zh) * | 2010-07-02 | 2011-11-17 | 华为技术有限公司 | 拓扑发现方法及装置 |
WO2014100248A1 (en) * | 2012-12-21 | 2014-06-26 | Brocade Communications Systems, Inc. | Device id assignment in a system of devices |
CN109167729A (zh) * | 2018-09-14 | 2019-01-08 | 迈普通信技术股份有限公司 | 拓扑发现方法、装置及多业务传输网络系统 |
CN110661629A (zh) * | 2018-06-28 | 2020-01-07 | 中兴通讯股份有限公司 | 一种网络拓扑发现方法和装置 |
-
2020
- 2020-05-13 CN CN202010402677.3A patent/CN111585821B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009057005A2 (en) * | 2007-11-01 | 2009-05-07 | Telefonaktiebolaget Lm Ericsson (Publ) | Topology discovery in heterogeneous networks |
WO2011140918A1 (zh) * | 2010-07-02 | 2011-11-17 | 华为技术有限公司 | 拓扑发现方法及装置 |
WO2014100248A1 (en) * | 2012-12-21 | 2014-06-26 | Brocade Communications Systems, Inc. | Device id assignment in a system of devices |
CN110661629A (zh) * | 2018-06-28 | 2020-01-07 | 中兴通讯股份有限公司 | 一种网络拓扑发现方法和装置 |
CN109167729A (zh) * | 2018-09-14 | 2019-01-08 | 迈普通信技术股份有限公司 | 拓扑发现方法、装置及多业务传输网络系统 |
Non-Patent Citations (3)
Title |
---|
JIJUN CAO等: "Efficient Management and Intelligent Fault Tolerance for HPC Interconnect Networks", 《2019 IEEE 25TH INTERNATIONAL CONFERENCE ON PARALLEL AND DISTRIBUTED SYSTEMS (ICPADS)》 * |
JIJUN CAO等: "The Efficient In-band Management for Interconnect Network in Tianhe-2 System", 《2016 24TH EUROMICRO INTERNATIONAL CONFERENCE ON PARALLEL, DISTRIBUTED, AND NETWORK-BASED PROCESSING (PDP)》 * |
MIN XIE等: "Tianhe-1A Interconnect and Message-Passing Services", 《IEEE MICRO》 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115695341A (zh) * | 2022-08-23 | 2023-02-03 | 中国电子科技集团公司第十研究所 | 国产srio交换芯片端口恢复方法、设备及介质 |
CN115695341B (zh) * | 2022-08-23 | 2024-04-09 | 中国电子科技集团公司第十研究所 | 国产srio交换芯片端口恢复方法、设备及介质 |
CN117807017A (zh) * | 2024-03-01 | 2024-04-02 | 中国人民解放军国防科技大学 | 立方体超结点多平面互连的高性能计算机及其通信方法 |
CN117807017B (zh) * | 2024-03-01 | 2024-05-14 | 中国人民解放军国防科技大学 | 立方体超结点多平面互连的高性能计算机及其通信方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111585821B (zh) | 2022-07-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100568211C (zh) | 用可编程器件实现访问多个i2c从器件的方法及装置 | |
US7827442B2 (en) | Shelf management controller with hardware/software implemented dual redundant configuration | |
US6282678B1 (en) | Generic test execution method and apparatus | |
CN103107960B (zh) | 通过开关卡减少交换结构中交换故障的影响的方法和系统 | |
US7453870B2 (en) | Backplane for switch fabric | |
CN107317695B (zh) | 用于调试联网故障的方法、系统和装置 | |
CN104753697B (zh) | 一种控制网络设备自动开局的方法、设备及系统 | |
CN111683014B (zh) | 一种高速互连网络的路由路径追踪方法及系统 | |
CN106685733A (zh) | 一种fc‑ae‑1553网络快速配置与自动化测试方法 | |
CN102662696B (zh) | 大规模并行计算机系统的快速启动方法及装置 | |
CN102710436A (zh) | 一种网络设备管理方法、装置、相关设备及系统 | |
CN112511370B (zh) | 一种phy模式自主切换的信号测试系统 | |
CN108897577A (zh) | 一种服务器背板cpld状态自适应系统及方法 | |
US9779037B2 (en) | Establishing connectivity of modular nodes in a pre-boot environment | |
CN111585821B (zh) | 一种高速互连网络拓扑发现方法,装置,介质及高性能计算系统 | |
CN112491047A (zh) | 一种变电站二次设备的故障定位方法、装置及设备 | |
CN116471165A (zh) | 识别链路中断原因的机制 | |
CN105379192A (zh) | 硬件管理通信协议 | |
US20060114923A1 (en) | Disaggregated star platform management bus architecture system | |
CN109120475A (zh) | 面向高密度模块的调试网络系统及方法 | |
CN105450432A (zh) | 一种用于定位端口连接错误的方法和相关设备 | |
US8929251B2 (en) | Selecting a master processor from an ambiguous peer group | |
CN116055347A (zh) | 运算系统及网络装置管理方法 | |
CN110213402A (zh) | 电子数据分配控制设备和用于运行这种控制设备的方法 | |
CN115129249A (zh) | Sas链路拓扑识别管理方法、系统、终端及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |