CN114564237B - 磁盘阵列卡连接链路扩展方法、系统、终端及存储介质 - Google Patents

磁盘阵列卡连接链路扩展方法、系统、终端及存储介质 Download PDF

Info

Publication number
CN114564237B
CN114564237B CN202210098180.6A CN202210098180A CN114564237B CN 114564237 B CN114564237 B CN 114564237B CN 202210098180 A CN202210098180 A CN 202210098180A CN 114564237 B CN114564237 B CN 114564237B
Authority
CN
China
Prior art keywords
link
equipment
information
type
disk array
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.)
Active
Application number
CN202210098180.6A
Other languages
English (en)
Other versions
CN114564237A (zh
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.)
Suzhou Inspur Intelligent Technology Co Ltd
Original Assignee
Suzhou Inspur Intelligent Technology Co Ltd
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 Suzhou Inspur Intelligent Technology Co Ltd filed Critical Suzhou Inspur Intelligent Technology Co Ltd
Priority to CN202210098180.6A priority Critical patent/CN114564237B/zh
Publication of CN114564237A publication Critical patent/CN114564237A/zh
Application granted granted Critical
Publication of CN114564237B publication Critical patent/CN114564237B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4411Configuring for operating with peripheral devices; Loading of device drivers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0689Disk arrays, e.g. RAID, JBOD
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0016Inter-integrated circuit (I2C)
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • Computer Security & Cryptography (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明涉及服务器技术领域,具体提供一种磁盘阵列卡连接链路扩展方法、系统、终端及存储介质,包括:创建第一进程,所述第一进程获取I2C链路的扩展链路上的第一类型设备信息,所述扩展链路为扩展芯片从I2C链路扩展出的链路;创建第二进程,所述第二进程获取I2C链路的扩展链路上的第二类型设备信息;通过套接字协议分别与第一进程和第二进程进行信息交互,信息交互内容包括获取第一类型设备信息或第二类型设备信息,发送对第一类型设备或第二类型设备的控制指令。本发明增强了磁盘阵列卡连接链路的适用性和可用性,较好的满足了客户同一条i2c链路上连接多张raid卡、多种设备的需求。

Description

磁盘阵列卡连接链路扩展方法、系统、终端及存储介质
技术领域
本发明涉及服务器技术领域,具体涉及一种磁盘阵列卡连接链路扩展方法、系统、终端及存储介质。
背景技术
BMC执行伺服器远端管理控制器,英文全称为Baseboard ManagementController,为板控制器。BMC可以实现服务器的相关控制、信息监督等功能,是直观呈现服务器信息的平台。服务器客户可以通过web、ipmitool、snmp工具等访问服务器BMC以获取服务器的信息。服务器一般会装配多个存储设备(硬盘),为保障数据存储安全、可靠,一般使用raid卡作为组raid设备。当前服务器组raid功能是由BMC实现的,BMC底层通过i2c链路或者pcie链路与raid卡交互,实现raid信息获取、组raid、删除raid功能。BMC上层采用storelib库的方式或者mctp协议方式与raid卡交互。当前常用的技术方案为storelib+i2c方式和mctp over pcie方式。
storelib+i2c不适用PMC raid卡(一种raid类型),mctp over pcie又有平台限制,当服务器CPU为AMD和Ampere时则因硬件链路不通而不适用mctp over pcie方式。当平台为AMD或Ampere,搭配PMCraid时则必须采用Mctp over i2c方式。
基于上述的技术限制,导致了当平台为AMD或Ampere,搭配PMC raid时则必须采用Mctp over i2c方式。而mctp over i2c方案仅支持一张raid卡,且同一i2c链路上不允许存在其他设备(如gpu、ocp网卡、ncsi网卡等),导致服务器链路混乱。
发明内容
针对现有技术存在的磁盘阵列的连接链路适用性差且无法支持多种设备,可用性差的问题,本发明提供一种磁盘阵列卡连接链路扩展方法、系统、终端及存储介质,以解决上述技术问题。
第一方面,本发明提供一种磁盘阵列卡连接链路扩展方法,包括:
创建第一进程,所述第一进程获取I2C链路的扩展链路上的第一类型设备信息,所述扩展链路为扩展芯片从I2C链路扩展出的链路;
创建第二进程,所述第二进程获取I2C链路的扩展链路上的第二类型设备信息;
通过套接字协议分别与第一进程和第二进程进行信息交互,信息交互内容包括获取第一类型设备信息或第二类型设备信息,发送对第一类型设备或第二类型设备的控制指令。
进一步的,所述第一进程获取I2C链路的扩展链路上的第一类型设备信息,所述扩展链路为扩展芯片从I2C链路扩展出的链路,包括:
通过在I2C链路的从端设置扩展芯片将I2C链路扩展出多条扩展链路,所述I2C链路的主端连接基板管理控制器;
所述第一进程轮询处于链路不通状态的扩展链路,以识别新增第一类型设备;
获取新增第一类型设备信息,并将所述新增第一类型设备信息保存至磁盘阵列设备链表,所述新增第一类型设备信息包括新增第一类型设备的存储设备序号、设备状态、磁盘阵列名、磁盘阵列等级、磁盘阵列带宽、物理驱动器信息和链路地址。
进一步的,所述第一进程轮询处于链路不通状态的扩展链路,以识别新增第一类型设备,包括:
第一进程将前次访问的处于链路不通状态的扩展链路标记为目标链路;
第一进程本次轮询所有目标链路,如果从所有目标链路中的一条扩展链路上识别到新增第一类型设备,则将连接有新增第一类型设备的目标链路的标记清除。
进一步的,通过套接字协议分别与第一进程和第二进程进行信息交互,信息交互内容包括获取第一类型设备信息或第二类型设备信息,发送对第一类型设备或第二类型设备的控制指令,包括:
分别为第一进程和第二进程创建第一套接字协议通道和第二套接字协议通道,将I2C链路底层驱动代码修改为对接第一套接字协议通道和第二套接字协议通道;
通过套接字协议从第一进程获取磁盘阵列设备链表,基于磁盘阵列设备链表中的设备序号和链路地址生成对目标设备的管理指令,并将管理指令通过套接字协议发送至第一进程,以使第一进程将所述管理指令转发至目标设备并更新磁盘阵列设备链表;
从第二进程获取第二类型设备信息或基于第二类型设备信息向第二进程发送针对第二类型设备的控制指令;
所述第一进程通过管理组件传输协议与第一类型设备通信,所述第二进程通过智能平台管理接口协议与第二类型设备通信。
第二方面,本发明提供一种磁盘阵列卡连接链路扩展系统,包括:
第一创建单元,用于创建第一进程,所述第一进程获取I2C链路的扩展链路上的第一类型设备信息,所述扩展链路为扩展芯片从I2C链路扩展出的链路;
第二创建单元,用于创建第二进程,所述第二进程获取I2C链路的扩展链路上的第二类型设备信息;
信息交互单元,用于通过套接字协议分别与第一进程和第二进程进行信息交互,信息交互内容包括获取第一类型设备信息或第二类型设备信息,发送对第一类型设备或第二类型设备的控制指令。
进一步的,所述第一创建单元包括:
链路扩展模块,用于通过在I2C链路的从端设置扩展芯片将I2C链路扩展出多条扩展链路,所述I2C链路的主端连接基板管理控制器;
链路轮询模块,用于所述第一进程轮询处于链路不通状态的扩展链路,以识别新增第一类型设备;
信息获取模块,用于获取新增第一类型设备信息,并将所述新增第一类型设备信息保存至磁盘阵列设备链表,所述新增第一类型设备信息包括新增第一类型设备的存储设备序号、设备状态、磁盘阵列名、磁盘阵列等级、磁盘阵列带宽、物理驱动器信息和链路地址。
进一步的,所述链路轮询模块包括:
链路标记子模块,用于第一进程将前次访问的处于链路不通状态的扩展链路标记为目标链路;
标记清除子模块,用于第一进程本次轮询所有目标链路,如果从所有目标链路中的一条扩展链路上识别到新增第一类型设备,则将连接有新增第一类型设备的目标链路的标记清除。
进一步的,所述信息交互单元包括:
通道监听模块,用于分别为第一进程和第二进程创建第一套接字协议通道和第二套接字协议通道,将I2C链路底层驱动代码修改为对接第一套接字协议通道和第二套接字协议通道;
第一交互模块,用于通过第一套接字协议通道从第一进程获取磁盘阵列设备链表,基于磁盘阵列设备链表中的设备序号和链路地址生成对目标设备的管理指令,并将管理指令通过第一套接字协议通道发送至第一进程,以使第一进程将所述管理指令转发至目标设备并更新磁盘阵列设备链表;
第二交互模块,用于从第二进程获取第二类型设备信息或基于第二类型设备信息向第二进程发送针对第二类型设备的控制指令;
协议限定模块,用于所述第一进程通过管理组件传输协议与第一类型设备通信,所述第二进程通过智能平台管理接口协议与第二类型设备通信。
第三方面,提供一种终端,包括:
处理器、存储器,其中,
该存储器用于存储计算机程序,
该处理器用于从存储器中调用并运行该计算机程序,使得终端执行上述的终端的方法。
第四方面,提供了一种计算机存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述各方面所述的方法。
本发明的有益效果在于,本发明提供的磁盘阵列卡连接链路扩展方法、系统、终端及存储介质,通过利用扩展芯片扩展I2C链路,扩展后的链路可以连接多个不同的设备,同时采用进程的方式实现了BMC与多个设备之间的通信。本发明增强了磁盘阵列卡连接链路的适用性和可用性,较好的满足了客户同一条i2c链路上连接多张raid卡、多种设备的需求。
此外,本发明设计原理可靠,结构简单,具有非常广泛的应用前景。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一个实施例的方法的示意性流程图。
图2是本发明一个实施例的系统的示意性框图。
图3为本发明实施例提供的一种终端的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明中的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
下面对本发明中出现的关键术语进行解释。
BMC,执行伺服器远端管理控制器,英文全称为Baseboard ManagementController.为基板管理控制器。它可以在机器未开机的状态下,对机器进行固件升级、查看机器设备、等一些操作。在BMC中完全实现IPMI功能需要一个功能强大的16位元或32位元微控制器以及用于数据储存的RAM、用于非挥发性数据储存的快闪记忆体和韧体,在安全远程重启、安全重新上电、LAN警告和系统健康监视方面能提供基本的远程可管理性。除了基本的IPMI功能和系统工作监视功能外,通过利用2个快闪记忆体之一储存以前的BIOS,mBMC还能实现BIOS快速元件的选择和保护。例如,在远程BIOS升级後系统不能启动时,远程管理人员可以切换回以前工作的BIOS映像来启动系统。一旦BIOS升级後,BIOS映像还能被锁住,可有效防止病毒对它的侵害。
I2C总线是由Philips公司开发的一种简单、双向二线制同步串行总线。它只需要两根线即可在连接于总线上的器件之间传送信息。主器件用于启动总线传送数据,并产生时钟以开放传送的器件,此时任何被寻址的器件均被认为是从器件.在总线上主和从、发和收的关系不是恒定的,而取决于此时数据传送方向。如果主机要发送数据给从器件,则主机首先寻址从器件,然后主动发送数据至从器件,最后由主机终止数据传送;如果主机要接收从器件的数据,首先由主器件寻址从器件.然后主机接收从器件发送的数据,最后由主机终止接收过程。在这种情况下.主机负责产生定时时钟和终止数据传送。
Raid,磁盘阵列(Redundant Arrays of Independent Disks,RAID),磁盘阵列是由很多块独立的磁盘,组合成一个容量巨大的磁盘组,利用个别磁盘提供数据所产生加成效果提升整个磁盘系统效能。RAID技术(1)通过对磁盘上的数据进行条带化,实现对数据成块存取,减少磁盘的机械寻道时间,提高了数据存取速度。(2)通过对一个阵列中的几块磁盘同时读取,减少了磁盘的机械寻道时间,提高数据存取速度。(3)通过镜像或者存储奇偶校验信息的方式,实现了对数据的冗余保护。
Raid卡,专门用于建立磁盘阵列(组raid)的设备,主要有两个厂商LSI和PMC制造。
MCTP,Management Component Transport Protocol,设备管理协议,方便服务器控制器(BMC)管理外围设备的协议。
MCTP over I2C,在I2C链路上运行MCTP协议;5.MCTP over pcie,通过PCIE链路运行MCTP协议。
图1是本发明一个实施例的方法的示意性流程图。其中,图1执行主体可以为一种磁盘阵列卡连接链路扩展系统。
如图1所示,该方法包括:
步骤110,创建第一进程,所述第一进程获取I2C链路的扩展链路上的第一类型设备信息,所述扩展链路为扩展芯片从I2C链路扩展出的链路;
步骤120,创建第二进程,所述第二进程获取I2C链路的扩展链路上的第二类型设备信息;
步骤130,通过套接字协议分别与第一进程和第二进程进行信息交互,信息交互内容包括获取第一类型设备信息或第二类型设备信息,发送对第一类型设备或第二类型设备的控制指令。
该方法通过创建第一进程管理多张RAID卡,通过第二进程管理除PCIE设备以外的其他设备,从而较好的满足了客户同一条i2c链路上多张raid卡、多种设备的需求。
为了便于对本发明的理解,下面以本发明磁盘阵列卡连接链路扩展方法的原理,结合实施例中对磁盘阵列卡连接链路进行扩展的过程,对本发明提供的磁盘阵列卡连接链路扩展方法做进一步的描述。
具体的,所述磁盘阵列卡连接链路扩展方法包括:
S1、创建第一进程,所述第一进程获取I2C链路的扩展链路上的第一类型设备信息,所述扩展链路为扩展芯片从I2C链路扩展出的链路。
通过在I2C链路的从端设置扩展芯片将I2C链路扩展出多条扩展链路,I2C链路的主端连接基板管理控制器。本实施方式中扩展芯片选用PCA9548芯片,PCA9548芯片可以拓展出8个channel,每个channel均为一条可连接设备的扩展链路。
第一进程(采用管理组件传输协议)轮询处于链路不通状态的扩展链路,以识别新增第一类型设备;获取新增第一类型设备信息,并将所述新增第一类型设备信息保存至磁盘阵列设备链表,所述新增第一类型设备信息包括新增第一类型设备的存储设备序号、设备状态、磁盘阵列名、磁盘阵列等级、磁盘阵列带宽、物理驱动器信息和链路地址。其中,具体的轮询方法包括:第一进程将前次访问的处于链路不通状态的扩展链路标记为目标链路;第一进程本次轮询所有目标链路,如果从所有目标链路中的一条扩展链路上识别到新增第一类型设备,则将连接有新增第一类型设备的目标链路的标记清除。
其中第一类型设备为PCIE设备(RAID卡),通过不断识别新增的PCIE设备并将识别到的信息维护至磁盘阵列设备链表,保证信息的真实性。同时仅轮询标记的扩展链路能够降低工作量,无需每次轮询全部链路,由于已被占用的链路的设备信息通常不会轻易变更,一旦变更的话BMC也会下发变更指令,因此无需进程去再次校验。
S2、创建第二进程,所述第二进程获取I2C链路的扩展链路上的第二类型设备信息。
第二进程主要用于管理除PCIE设备以外的其他设备,例如gpu、ocp卡,第二进程通过智能平台管理接口协议与第二类型设备通信。
第二进程也可采用轮询处于不通状态的扩展链路以识别其他设备。
S3、通过套接字协议分别与第一进程和第二进程进行信息交互,信息交互内容包括获取第一类型设备信息或第二类型设备信息,发送对第一类型设备或第二类型设备的控制指令。
分别为第一进程和第二进程创建第一套接字协议通道和第二套接字协议通道,将I2C链路底层驱动代码修改为对接第一套接字协议通道和第二套接字协议通道;通过套接字协议从第一进程获取磁盘阵列设备链表,基于磁盘阵列设备链表中的设备序号和链路地址生成对目标设备的管理指令,并将管理指令通过套接字协议发送至第一进程,以使第一进程将所述管理指令转发至目标设备并更新磁盘阵列设备链表;从第二进程获取第二类型设备信息或基于第二类型设备信息向第二进程发送针对第二类型设备的控制指令。
具体的,若采用mctp over i2c方式与PMC raid卡交互时,第一进程会一直占用i2c链路,导致使用相同i2c链路通信的其他设备与第二进程交互失败。为解决该问题,BMC中使用socket进程间通信方式与i2c链路通信,修改i2c底层驱动代码,接收来自不同进程的数据包。MCTP和IPMI进程分别创建不同的socket,i2c底层驱动通过socket监听来自两个进程的数据并判断信息来源进而返回给各进程,达到多进程分时复用i2c的目的。
如图2所示,该系统200包括:
第一创建单元210,用于创建第一进程,所述第一进程获取I2C链路的扩展链路上的第一类型设备信息,所述扩展链路为扩展芯片从I2C链路扩展出的链路;
第二创建单元220,用于创建第二进程,所述第二进程获取I2C链路的扩展链路上的第二类型设备信息;
信息交互单元230,用于通过套接字协议分别与第一进程和第二进程进行信息交互,信息交互内容包括获取第一类型设备信息或第二类型设备信息,发送对第一类型设备或第二类型设备的控制指令。
可选地,作为本发明一个实施例,所述第一创建单元包括:
链路扩展模块,用于通过在I2C链路的从端设置扩展芯片将I2C链路扩展出多条扩展链路,所述I2C链路的主端连接基板管理控制器;
链路轮询模块,用于所述第一进程轮询处于链路不通状态的扩展链路,以识别新增第一类型设备;
信息获取模块,用于获取新增第一类型设备信息,并将所述新增第一类型设备信息保存至磁盘阵列设备链表,所述新增第一类型设备信息包括新增第一类型设备的存储设备序号、设备状态、磁盘阵列名、磁盘阵列等级、磁盘阵列带宽、物理驱动器信息和链路地址。
可选地,作为本发明一个实施例,所述链路轮询模块包括:
链路标记子模块,用于第一进程将前次访问的处于链路不通状态的扩展链路标记为目标链路;
标记清除子模块,用于第一进程本次轮询所有目标链路,如果从所有目标链路中的一条扩展链路上识别到新增第一类型设备,则将连接有新增第一类型设备的目标链路的标记清除。
可选地,作为本发明一个实施例,所述信息交互单元包括:
通道监听模块,用于分别为第一进程和第二进程创建第一套接字协议通道和第二套接字协议通道,将I2C链路底层驱动代码修改为对接第一套接字协议通道和第二套接字协议通道;
第一交互模块,用于通过第一套接字协议通道从第一进程获取磁盘阵列设备链表,基于磁盘阵列设备链表中的设备序号和链路地址生成对目标设备的管理指令,并将管理指令通过第一套接字协议通道发送至第一进程,以使第一进程将所述管理指令转发至目标设备并更新磁盘阵列设备链表;
第二交互模块,用于从第二进程获取第二类型设备信息或基于第二类型设备信息向第二进程发送针对第二类型设备的控制指令;
协议限定模块,用于所述第一进程通过管理组件传输协议与第一类型设备通信,所述第二进程通过智能平台管理接口协议与第二类型设备通信。
图3为本发明实施例提供的一种终端300的结构示意图,该终端300可以用于执行本发明实施例提供的磁盘阵列卡连接链路扩展方法。
其中,该终端300可以包括:处理器310、存储器320及通信单元330。这些组件通过一条或多条总线进行通信,本领域技术人员可以理解,图中示出的服务器的结构并不构成对本发明的限定,它既可以是总线形结构,也可以是星型结构,还可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
其中,该存储器320可以用于存储处理器310的执行指令,存储器320可以由任何类型的易失性或非易失性存储终端或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。当存储器320中的执行指令由处理器310执行时,使得终端300能够执行以下上述方法实施例中的部分或全部步骤。
处理器310为存储终端的控制中心,利用各种接口和线路连接整个电子终端的各个部分,通过运行或执行存储在存储器320内的软件程序和/或模块,以及调用存储在存储器内的数据,以执行电子终端的各种功能和/或处理数据。所述处理器可以由集成电路(Integrated Circuit,简称IC)组成,例如可以由单颗封装的IC所组成,也可以由连接多颗相同功能或不同功能的封装IC而组成。举例来说,处理器310可以仅包括中央处理器(Central Processing Unit,简称CPU)。在本发明实施方式中,CPU可以是单运算核心,也可以包括多运算核心。
通信单元330,用于建立通信信道,从而使所述存储终端可以与其它终端进行通信。接收其他终端发送的用户数据或者向其他终端发送用户数据。
本发明还提供一种计算机存储介质,其中,该计算机存储介质可存储有程序,该程序执行时可包括本发明提供的各实施例中的部分或全部步骤。所述的存储介质可为磁碟、光盘、只读存储记忆体(英文:read-only memory,简称:ROM)或随机存储记忆体(英文:random access memory,简称:RAM)等。
因此,本发明通过利用扩展芯片扩展I2C链路,扩展后的链路可以连接多个不同的设备,同时采用进程的方式实现了BMC与多个设备之间的通信。本发明增强了磁盘阵列卡连接链路的适用性和可用性,较好的满足了客户同一条i2c链路上连接多张raid卡、多种设备的需求,本实施例所能达到的技术效果可以参见上文中的描述,此处不再赘述。
本领域的技术人员可以清楚地了解到本发明实施例中的技术可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明实施例中的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中如U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质,包括若干指令用以使得一台计算机终端(可以是个人计算机,服务器,或者第二终端、网络终端等)执行本发明各个实施例所述方法的全部或部分步骤。
本说明书中各个实施例之间相同相似的部分互相参见即可。尤其,对于终端实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例中的说明即可。
在本发明所提供的几个实施例中,应该理解到,所揭露的系统和方法,可以通过其它的方式实现。例如,以上所描述的系统实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,系统或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
尽管通过参考附图并结合优选实施例的方式对本发明进行了详细描述,但本发明并不限于此。在不脱离本发明的精神和实质的前提下,本领域普通技术人员可以对本发明的实施例进行各种等效的修改或替换,而这些修改或替换都应在本发明的涵盖范围内/任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

Claims (6)

1.一种磁盘阵列卡连接链路扩展方法,其特征在于,包括:
创建第一进程,所述第一进程获取I2C链路的扩展链路上的第一类型设备信息,所述扩展链路为扩展芯片从I2C链路扩展出的链路;
创建第二进程,所述第二进程获取I2C链路的扩展链路上的第二类型设备信息;
通过套接字协议分别与第一进程和第二进程进行信息交互,信息交互内容包括获取第一类型设备信息或第二类型设备信息,发送对第一类型设备或第二类型设备的控制指令;
创建第一进程,所述第一进程获取I2C链路的扩展链路上的第一类型设备信息,所述扩展链路为扩展芯片从I2C链路扩展出的链路,包括:
通过在I2C链路的从端设置扩展芯片将I2C链路扩展出多条扩展链路,所述I2C链路的主端连接基板管理控制器;
所述第一进程轮询处于链路不通状态的扩展链路,以识别新增第一类型设备;
获取新增第一类型设备信息,并将所述新增第一类型设备信息保存至磁盘阵列设备链表,所述新增第一类型设备信息包括新增第一类型设备的存储设备序号、设备状态、磁盘阵列名、磁盘阵列等级、磁盘阵列带宽、物理驱动器信息和链路地址;
通过套接字协议分别与第一进程和第二进程进行信息交互,信息交互内容包括获取第一类型设备信息或第二类型设备信息,发送对第一类型设备或第二类型设备的控制指令,包括:
分别为第一进程和第二进程创建第一套接字协议通道和第二套接字协议通道,将I2C链路底层驱动代码修改为对接第一套接字协议通道和第二套接字协议通道;
通过第一套接字协议通道从第一进程获取磁盘阵列设备链表,基于磁盘阵列设备链表中的设备序号和链路地址生成对目标设备的管理指令,并将管理指令通过第一套接字协议通道发送至第一进程,以使第一进程将所述管理指令转发至目标设备并更新磁盘阵列设备链表;
从第二进程获取第二类型设备信息或基于第二类型设备信息向第二进程发送针对第二类型设备的控制指令;
所述第一进程通过管理组件传输协议与第一类型设备通信,所述第二进程通过智能平台管理接口协议与第二类型设备通信。
2.根据权利要求1所述的方法,其特征在于,所述第一进程轮询处于链路不通状态的扩展链路,以识别新增第一类型设备,包括:
第一进程将前次访问的处于链路不通状态的扩展链路标记为目标链路;
第一进程本次轮询所有目标链路,如果从所有目标链路中的一条扩展链路上识别到新增第一类型设备,则将连接有新增第一类型设备的目标链路的标记清除。
3.一种磁盘阵列卡连接链路扩展系统,其特征在于,包括:
第一创建单元,用于创建第一进程,所述第一进程获取I2C链路的扩展链路上的第一类型设备信息,所述扩展链路为扩展芯片从I2C链路扩展出的链路;
第二创建单元,用于创建第二进程,所述第二进程获取I2C链路的扩展链路上的第二类型设备信息;
信息交互单元,用于通过套接字协议分别与第一进程和第二进程进行信息交互,信息交互内容包括获取第一类型设备信息或第二类型设备信息,发送对第一类型设备或第二类型设备的控制指令;
所述第一创建单元包括:
链路扩展模块,用于通过在I2C链路的从端设置扩展芯片将I2C链路扩展出多条扩展链路,所述I2C链路的主端连接基板管理控制器;
链路轮询模块,用于所述第一进程轮询处于链路不通状态的扩展链路,以识别新增第一类型设备;
信息获取模块,用于获取新增第一类型设备信息,并将所述新增第一类型设备信息保存至磁盘阵列设备链表,所述新增第一类型设备信息包括新增第一类型设备的存储设备序号、设备状态、磁盘阵列名、磁盘阵列等级、磁盘阵列带宽、物理驱动器信息和链路地址;
所述信息交互单元包括:
通道监听模块,用于分别为第一进程和第二进程创建第一套接字协议通道和第二套接字协议通道,将I2C链路底层驱动代码修改为对接第一套接字协议通道和第二套接字协议通道;
第一交互模块,用于通过第一套接字协议通道从第一进程获取磁盘阵列设备链表,基于磁盘阵列设备链表中的设备序号和链路地址生成对目标设备的管理指令,并将管理指令通过第一套接字协议通道发送至第一进程,以使第一进程将所述管理指令转发至目标设备并更新磁盘阵列设备链表;
第二交互模块,用于从第二进程获取第二类型设备信息或基于第二类型设备信息向第二进程发送针对第二类型设备的控制指令;
协议限定模块,用于所述第一进程通过管理组件传输协议与第一类型设备通信,所述第二进程通过智能平台管理接口协议与第二类型设备通信。
4.根据权利要求3所述的系统,其特征在于,所述链路轮询模块包括:
链路标记子模块,用于第一进程将前次访问的处于链路不通状态的扩展链路标记为目标链路;
标记清除子模块,用于第一进程本次轮询所有目标链路,如果从所有目标链路中的一条扩展链路上识别到新增第一类型设备,则将连接有新增第一类型设备的目标链路的标记清除。
5.一种终端,其特征在于,包括:
处理器;
用于存储处理器的执行指令的存储器;
其中,所述处理器被配置为执行权利要求1-2任一项所述的方法。
6.一种存储有计算机程序的计算机可读存储介质,其特征在于,该程序被处理器执行时实现如权利要求1-2中任一项所述的方法。
CN202210098180.6A 2022-01-27 2022-01-27 磁盘阵列卡连接链路扩展方法、系统、终端及存储介质 Active CN114564237B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210098180.6A CN114564237B (zh) 2022-01-27 2022-01-27 磁盘阵列卡连接链路扩展方法、系统、终端及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210098180.6A CN114564237B (zh) 2022-01-27 2022-01-27 磁盘阵列卡连接链路扩展方法、系统、终端及存储介质

Publications (2)

Publication Number Publication Date
CN114564237A CN114564237A (zh) 2022-05-31
CN114564237B true CN114564237B (zh) 2023-07-14

Family

ID=81713082

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210098180.6A Active CN114564237B (zh) 2022-01-27 2022-01-27 磁盘阵列卡连接链路扩展方法、系统、终端及存储介质

Country Status (1)

Country Link
CN (1) CN114564237B (zh)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1825833A (zh) * 2006-01-27 2006-08-30 杭州华为三康技术有限公司 iSCSI存储网络、磁盘阵列及其容量扩展方法
CN102880430A (zh) * 2012-09-18 2013-01-16 北京联创信安科技有限公司 一种独立冗余磁盘阵列的管理系统及方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1825833A (zh) * 2006-01-27 2006-08-30 杭州华为三康技术有限公司 iSCSI存储网络、磁盘阵列及其容量扩展方法
CN102880430A (zh) * 2012-09-18 2013-01-16 北京联创信安科技有限公司 一种独立冗余磁盘阵列的管理系统及方法

Also Published As

Publication number Publication date
CN114564237A (zh) 2022-05-31

Similar Documents

Publication Publication Date Title
US11983406B2 (en) Method for using BMC as proxy NVMeoF discovery controller to provide NVM subsystems to host
US11983129B2 (en) Self-configuring baseboard management controller (BMC)
US7930425B2 (en) Method of effectively establishing and maintaining communication linkages with a network interface controller
JP4086472B2 (ja) システム・コンフィギュレーションを決定するための方法、システム、及びプログラム
EP3458931A1 (en) Independent scaling of compute resources and storage resources in a storage system
US7472208B2 (en) Bus communication emulation
US20170220506A1 (en) Modular Software Defined Storage Technology
US10606784B1 (en) Software filtering of redundant sideband device management bus communications
CN1834912B (zh) 用于可扩展互联网引擎的iSCSI引导驱动系统及方法
CN114003445B (zh) Bmc的i2c监控功能测试方法、系统、终端及存储介质
CA2504170C (en) Clustering system and method having interconnect
WO2024022212A1 (zh) 配置信息的管理方法、装置及服务器
CN114564237B (zh) 磁盘阵列卡连接链路扩展方法、系统、终端及存储介质
CN211044232U (zh) 一种基于iic扩展方式的服务器数据监控装置及服务器
CN112579507A (zh) 宿主机与bmc通信的方法、bios、操作系统、bmc和服务器
CN114579381B (zh) 磁盘阵列远程调试方法、系统、终端及存储介质
WO2007077514A2 (en) Transparent intellectual network storage device
CN113835762B (zh) 硬盘背板默认配置更新方法及系统
CN114115955B (zh) 服务器资源盒子fpga固件升级方法、系统、终端及存储介质
CN114443150B (zh) 交换机出厂信息同步方法、系统、终端及存储介质
CN112486868B (zh) 基于cpld存储双控同步系统、方法、设备及存储介质
CN114201323A (zh) Bmc记录系统异常信息的方法、系统、终端及存储介质
CN115902710A (zh) 防呆检测方法及计算设备
CN114003296A (zh) Bmc固件批量刷新方法、系统、终端及存储介质
CN116151298A (zh) Raid卡监管装置、raid卡及raid卡监管方法

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