CN110515540A - 一种拓扑硬盘的方法及装置 - Google Patents

一种拓扑硬盘的方法及装置 Download PDF

Info

Publication number
CN110515540A
CN110515540A CN201910684024.6A CN201910684024A CN110515540A CN 110515540 A CN110515540 A CN 110515540A CN 201910684024 A CN201910684024 A CN 201910684024A CN 110515540 A CN110515540 A CN 110515540A
Authority
CN
China
Prior art keywords
hard disk
phy
expander
information
port
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
Application number
CN201910684024.6A
Other languages
English (en)
Other versions
CN110515540B (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 Wave Intelligent Technology Co Ltd
Original Assignee
Suzhou Wave 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 Wave Intelligent Technology Co Ltd filed Critical Suzhou Wave Intelligent Technology Co Ltd
Priority to CN201910684024.6A priority Critical patent/CN110515540B/zh
Publication of CN110515540A publication Critical patent/CN110515540A/zh
Application granted granted Critical
Publication of CN110515540B publication Critical patent/CN110515540B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0607Improving or facilitating administration, e.g. storage management by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device
    • 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/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • 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

Landscapes

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

Abstract

本发明提供一种拓扑硬盘的方法及装置,该方法为:使能SAS卡上的每个port和PHY;在PHY全部启动的情况下,记录每一PHY的启动信息,将每个port设置为有效;向SAS卡注册与所有port连接的Expander;获取与Expander连接的硬盘个数和硬盘信息;若网络存储主机支持每个硬盘,记录每个硬盘的读写速率,将每个硬盘注册到SAS卡,以及将Expander和每个硬盘信息的对应关系添加至预设的组织架构中。本方案中,先使能每个port和PHY,启动每个port和PHY。在网络存储主机支持每个硬盘的情况下,将SAS卡、硬盘和扩展器的对应关系添加至组织架构,完成对硬盘的拓扑,提高硬盘利用率。

Description

一种拓扑硬盘的方法及装置
技术领域
本发明涉及云计算数据中心技术领域,具体涉及一种拓扑硬盘的方法及装置。
背景技术
随着互联网技术的发展,网络数据呈爆炸性增长,通常利用网络存储主机对网络数据进行管理。
网络存储主机通过外接多个硬盘实现网络数据的读写,网络存储主机与多个硬盘的连接关系为:网络存储主机外接串行SCSI(Serial Attached SCSI,SAS)卡,SAS卡中的每个端口(port)通过多根物理接口(PortPhysical Layer,PHY)与扩展器(Expander)连接,Expander外接多个硬盘。但是,构建网络存储主机与多个硬盘的连接关系之后未对硬盘进行管理,造成硬盘利用率较低。
因此,构建网络存储主机与多个硬盘的连接关系之后,亟需一种拓扑硬盘的方法。
发明内容
有鉴于此,本发明实施例提供一种拓扑硬盘的方法及装置,以解决目前构建网络存储主机与多个硬盘的连接关系之后未对硬盘进行管理,造成硬盘利用率较低等问题。
为实现上述目的,本发明实施例提供如下技术方案:
本发明实施例第一方面公开一种拓扑硬盘的方法,所述方法包括:
使能SAS卡上的每个port和每个PHY,每一所述port对应多个所述PHY;
在所有PHY全部启动的情况下,记录每一所述PHY的启动信息,并将所述每个port的状态设置为有效状态;
向所述SAS卡注册与所有port连接的Expander;
获取与所述Expander连接的硬盘个数和每个硬盘对应的硬盘信息,所述硬盘信息至少包括硬盘类型和读写速率;
基于每个所述硬盘对应的硬盘信息,确定网络存储主机是否支持每个所述硬盘;
若是,记录每个所述硬盘的读写速率,将每个所述硬盘注册到所述SAS卡中,以及将所述Expander和每个所述硬盘信息的对应关系添加至预设的组织架构中。
优选的,所述在所有PHY全部启动的情况下,记录每一所述PHY的启动信息,并将所述每个port的状态设置为有效状态,包括:
基于所述SAS卡反馈的ACK信息,确定所述PHY的启动个数,每一ACK信息用于指示一个PHY已启动,所述ACK信息携带有对应PHY的运行状态;
若所有所述PHY全部启动,基于每个所述ACK信息,判断各个所述ACK信息对应的所述PHY的运行状态是否正常;
若是,记录各个所述ACK信息对应的所述PHY的启动信息,以及将所述每个port的状态设置为有效状态。
优选的,所述使能每个port和每个PHY之前,还包括:
配置每个PHY的SASWWID和WWNN。
优选的,所述向所述SAS卡注册与所有port连接的Expander,包括:
构建用于注册Expander的第一SMP命令;
将所述第一SMP命令发送给所述SAS卡,注册与所有port连接的Expander。
优选的,所述获取与所述Expander连接的硬盘个数和每个硬盘对应的硬盘信息,包括:
构建用于获取Expander制造商信息的第二SMP命令;
将所述第二SMP命令发送给所述Expander,得到所述Expander的制造商信息;
基于所述制造商信息,构建用于获取所述Expander的一般信息的第三SMP命令,所述一般信息至少包括:所述Expander支持的SAS协议版本、包含的PHY个数和Expander内enclosure信息;
将所述第三SMP命令发送给所述Expander,得到所述一般信息;
基于所述一般信息,构建用于获取与所述Expander连接的硬盘个数和每个硬盘对应的硬盘信息的第四SMP命令;
将所述第四SMP命令发送给所述Expander,获得与所述Expander连接的硬盘个数和每个硬盘对应的硬盘信息。
优选的,所述将每个所述硬盘注册到所述SAS卡中,包括:
构建用于注册硬盘的第五SMP命令;
将每个所述硬盘对应的第五SMP命令发送至所述SAS卡,注册每个所述硬盘。
本发明实施例第二方面公开一种拓扑硬盘的装置,所述装置包括:
使能单元,用于使能SAS卡上的每个port和每个PHY,每一所述port对应多个所述PHY;
第一处理单元,用于在所有PHY全部启动的情况下,记录每一所述PHY的启动信息,并将所述每个port的状态设置为有效状态;
注册单元,用于向所述SAS卡注册与所有port连接的Expander;
获取单元,用于获取与所述Expander连接的硬盘个数和每个硬盘对应的硬盘信息,所述硬盘信息至少包括硬盘类型和读写速率;
确定单元,用于基于每个所述硬盘对应的硬盘信息,确定网络存储主机是否支持每个所述硬盘,若是,执行第二处理单元;
所述第二处理单元,用于记录每个所述硬盘的读写速率,将每个所述硬盘注册到所述SAS卡中,以及将所述Expander和每个所述硬盘信息的对应关系添加至预设的组织架构中。
优选的,所述第一处理单元包括:
确定模块,用于基于所述SAS卡反馈的ACK信息,确定所述PHY的启动个数,若所有所述PHY全部启动,执行判断模块,每一ACK信息用于指示一个PHY已启动,所述ACK信息携带有对应PHY的运行状态;
所述判断模块,用于基于每个所述ACK信息,判断各个所述ACK信息对应的所述PHY的运行状态是否正常,若是,执行处理模块;
所述处理模块,用于记录各个所述ACK信息对应的所述PHY的启动信息,以及将所述每个port的状态设置为有效状态。
优选的,所述装置还包括:
配置单元,用于配置每个PHY的SASWWID和WWNN。
优选的,所述注册单元具体用于:构建用于注册Expander的第一SMP命令,将所述第一SMP命令发送给所述SAS卡,注册与所有port连接的Expander。
基于上述本发明实施例提供的一种拓扑硬盘的方法及装置,该方法为:使能SAS卡上的每个port和PHY;在PHY全部启动的情况下,记录每一PHY的启动信息,将每个port的状态设置为有效;向SAS卡注册与所有port连接的Expander;获取与Expander连接的硬盘个数和每个硬盘对应的硬盘信息;基于每个硬盘对应的硬盘信息,确定网络存储主机是否支持每个硬盘;若是,记录每个硬盘的读写速率,将每个硬盘注册到SAS卡,以及将Expander和每个硬盘信息的对应关系添加至预设的组织架构中。本方案中,先使能每个port和PHY,启动每个port和PHY。在网络存储主机支持每个硬盘的情况下,将SAS卡、硬盘和Expander的对应关系添加至组织架构,完成对硬盘的拓扑并对硬盘进行管理,提高硬盘利用率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例提供的网络存储主机与多个硬盘的连接关系示意图;
图2为本发明实施例提供的一种拓扑硬盘的方法流程图;
图3为本发明实施例提供的获取与Expander连接的硬盘个数和硬盘信息的流程图;
图4为本发明实施例提供的使能阶段的流程示意图;
图5为本发明实施例提供的拓扑阶段的流程示意图;
图6为本发明实施例提供的一种拓扑硬盘的装置的结构框图;
图7为本发明实施例提供的另一种拓扑硬盘的装置的结构框图;
图8为本发明实施例提供的又一种拓扑硬盘的装置的结构框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本申请中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
由背景技术可知,目前在构建网络存储主机与多个硬盘的连接关系之后,没有对硬盘进行管理,造成硬盘利用率较低。
因此,本发明实施例提供一种拓扑硬盘的方法及装置,先使能每个port和PHY,启动每个port和PHY。在网络存储主机支持每个硬盘的情况下,将SAS卡、硬盘和扩展器的对应关系添加至组织架构,完成对硬盘的拓扑,以实现硬盘管理和提高硬盘利用率。
本发明实施例中涉及的英文缩写的中英文互译如以下详细说明:
PCIE:高速串行计算机扩展总线标准(peripheral component interconnectexpress,PCIE)。
SAS:串行SCSI(Serial attached SCSI,SAS)。
WWID:全球唯一标识ID(worldwide ID,WWID)。
WWNN:全球唯一节点号(worldwide node number,WWNN)。
SMP:SAS管理协议(SASManagementProtocol,SMP)。
Uninitialized:未初始化的。
Initializing:正在初始化。
Manufacturer:生产厂家。
Discovery:拓扑。
ACK:确认(Acknowledgement)。
为更好解释本发明实施例中涉及的网络存储主机与多个硬盘的连接关系,参见图1,示出了本发明实施例提供的网络存储主机与多个硬盘的连接关系示意图。在所述图1中,网络存储主机100通过PCIE与SAS转接卡200连接。所述SAS转接卡中包括两个port,每个port通过4根PHY与Expander 300连接。所述Expander300外接多个硬盘。
需要说明的是,上述图1中示出的内容仅适用于举例说明,网络存储主机与多个硬盘的连接关系包括但不仅限于图1中示出的内容,在本发明实施例中就不一一举例说明。
参见图2,示出了本发明实施例提供的一种拓扑硬盘的方法流程图,所述方法包括以下步骤:
步骤S201:使能SAS卡上的每个port和每个PHY。
需要说明的是,在使能每个port和每个PHY之前,配置每个PHY的SASWWID和WWNN。
在具体实现步骤S101的过程中,由图1中示出的内容可知,每一所述port对应多个所述PHY。利用Port配置状态机使能每个所述port,利用PHY状态机使能每个PHY,以及利用所述PHY状态机将网络存储主机系统中的每个PHY的状态设置为可用状态,所述PHY状态机将每个PHY的状态上报至使用SAS卡功能的软件。
步骤S202:在所有PHY全部启动的情况下,记录每一所述PHY的启动信息,并将所述每个port的状态设置为有效状态。
需要说明的是,所述SAS卡反馈每一ACK信息用于指示一个PHY已启动,每一ACK信息中,包含与之对应的PHY的速率、改变次数和运行状态,例如:一ACK信息中,包含与之对应的PHY的速率为12Gb/s、改变次数为1和运行状态为0K,当运行状态为0K时指示所述PHY的运行状态正常。
在具体实现步骤S202的过程中,基于所述SAS卡反馈的ACK信息,确定所述PHY的启动个数。若所有所述PHY全部启动,基于每个所述ACK信息,判断各个所述ACK信息对应的所述PHY的运行状态是否正常。若是,记录各个所述ACK信息对应的所述PHY的启动信息,以及将所述每个port的状态设置为有效状态。
在进一步的实现中,所述PHY状态机在启动每个PHY后,所述SAS卡会向所述Port配置状态机反馈用于指示PHY已启动的ACK信息。所述Port配置状态机通知所述PHY状态机记录PHY的启动个数。当所述PHY状态机确定所有PHY已全部启动时,所述PHY状态机通知所述Port配置状态机判断各个所述ACK信息对应的所述PHY的运行状态是否正常。若所有所述PHY的运行状态正常,所述Port配置状态机通知Port状况状态机记录每个所述PHY的启动信息,以及将所述每个port的状态设置为有效状态。例如:记录每个PHY的速率,记录与PHY连接的设备是否为所述Expander。
步骤S203:向所述SAS卡注册与所有port连接的Expander。
在具体实现步骤S203的过程中,构建用于注册Expander的第一SMP命令,将所述第一SMP命令发送给所述SAS卡,注册与所有port连接的Expander。
在进一步的实现中,利用Expander管理状态机构建所述第一SMP命令,并通过所述Expander管理状态机将所述第一SMP命令发送给所述SAS卡,向所述SAS卡注册与所有port连接的Expander。
步骤S204:获取与所述Expander连接的硬盘个数和每个硬盘对应的硬盘信息。
在具体实现步骤S204的过程中,所述硬盘信息至少包括硬盘类型和读写速率。构建用于获取硬盘个数和每个硬盘对应的硬盘信息的SMP命令并发送给所述Expander,从而获取与所述Expander连接的硬盘个数和每个硬盘对应的硬盘信息。
在进一步的实现中,利用Expander Discovery状态机构建用于获取硬盘个数和每个硬盘对应的硬盘信息的SMP命令,通过所述SAS卡将该SMP命令发送给所述Expander。
步骤S205:基于每个所述硬盘对应的硬盘信息,确定网络存储主机是否支持每个所述硬盘,若是,执行步骤S206,若否,反馈用于指示存在不支持的硬盘的指示消息。
在具体实现步骤S205的过程中,根据每个所述硬盘的硬盘类型,确定所述网络存储主机是否支持每个所述硬盘。
在进一步实现中,利用Domain管理状态机根据获取的每个所述硬盘的硬盘信息,确定所述网络存储主机是否支持每个所述硬盘。
步骤S206:记录每个所述硬盘的读写速率,将每个所述硬盘注册到所述SAS卡中,以及将所述Expander和每个所述硬盘信息的对应关系添加至预设的组织架构中。
在具体实现步骤S206的过程中,构建用于注册硬盘的第五SMP命令,将每个所述硬盘对应的第五SMP命令发送至所述SAS卡,注册每个所述硬盘。将所述Expander和每个所述硬盘信息的对应关系添加至预设的组织架构中。例如:基于所述Expander和每个所述硬盘信息的父子关系,将所述Expander和每个所述硬盘信息添加至预设的树形数据结构中,完成硬盘的拓扑。
在进一步的实现中,利用所述Domain管理状态机记录每个所述硬盘的读写速率。并通过所述Domain管理状态机构建每个硬盘对应的所述第五SMP命令,并将每个所述硬盘对应的所述第五SMP命令发送给所述SAS卡中完成每个硬盘的注册。
在本发明实施例中,使能SAS卡上的每个port和PHY,在PHY全部启动的情况下,记录每一PHY的启动信息,将每个port的状态设置为有效。向SAS卡注册与所有port连接的Expander,获取与Expander连接的硬盘个数和每个硬盘对应的硬盘信息。若网络存储主机支持每个硬盘,记录每个硬盘的读写速率,将每个硬盘注册到SAS卡,以及将Expander和每个硬盘信息的对应关系添加至预设的组织架构中,完成对硬盘的拓扑并对硬盘进行管理,提高硬盘利用率。
上述本发明实施例图2步骤S202中涉及的获取与Expander连接的硬盘个数和硬盘信息的过程,参见图3,示出了本发明实施例提供的获取与Expander连接的硬盘个数和硬盘信息的流程图,包括以下步骤:
步骤S301:构建用于获取Expander制造商信息的第二SMP命令。
需要说明的是,所述Expander制造商信息至少包括:所述Expander的制造商和所述Expander的编号。
在具体实现步骤S301的过程中,利用所述ExpanderDiscovery状态机构建所述第二SMP命令,所述Expander Discovery状态机通过所述SAS卡将所述第二SMP命令发送给所述Expander。
步骤S302:将所述第二SMP命令发送给所述Expander,得到所述Expander的制造商信息。
在具体实现步骤S302的过程中,所述ExpanderDiscovery状态机通过所述SAS卡将所述第二SMP命令发送给所述Expander后,所述Expander利用SMP协议,将所述Expander制造商信息通过所述SAS卡反馈至所述网络存储主机系统。
步骤S303:基于所述制造商信息,构建用于获取所述Expander的一般信息的第三SMP命令。
需要说明的是,所述一般信息至少包括:所述Expander支持的SAS协议版本、包含的PHY个数和Expander内enclosure信息。
在具体实现步骤S303的过程中,利用所述ExpanderDiscovery状态机构建所述第三SMP命令,所述Expander Discovery状态机通过所述SAS卡将所述第三SMP命令发送给所述Expander。
步骤S304:将所述第三SMP命令发送给所述Expander,得到所述一般信息。
在具体实现步骤S304的过程中,所述ExpanderDiscovery状态机通过所述SAS卡将所述第三SMP命令发送给所述Expander之后,所述Expander利用SMP协议,通过所述SAS卡将所述一般信息反馈给所述网络存储主机系统。
步骤S305:基于所述一般信息,构建用于获取与所述Expander连接的硬盘个数和每个硬盘对应的硬盘信息的第四SMP命令。
在具体实现步骤S305的过程中,利用所述ExpanderDiscovery状态机构建所述第四SMP命令,所述Expander Discovery状态机通过SAS卡将所述第四SMP命令发送给所述Expander。
步骤S306:将所述第四SMP命令发送给所述Expander,获得与所述Expander连接的硬盘个数和每个硬盘对应的硬盘信息
在具体实现步骤S306的过程中,所述Expander接收到所述第四SMP命令之后,所述Expander通过所述SAS卡,分多次将所述硬盘个数和每个硬盘对应的硬盘信息反馈给所述网络存储主机系统。
在本发明实施例中,构建获取硬盘个数和硬盘信息的SMP命令,通过SAS卡将该SMP命令发送给Expander,获取与Expander连接的硬盘个数和每个硬盘对应的硬盘信息。利用硬盘个数和硬盘信息完成硬盘的拓扑,并对硬盘进行管理,提高硬盘利用率。
为更好解释上述本发明实施例图2和图3中涉及的各个状态机的执行过程,通过图4和图5示出的内容进行举例说明。需要说明的是,图4和图5中的英文表示各个状态机的运行状态,各个运行状态的执行原理详见如下内容:
参见图4,示出了本发明实施例提供的使能阶段的流程示意图,包括以下步骤:
步骤S401:利用所述Port配置状态机的Port Uninitialized状态,配置每个PHY的SASWWID和WWNN。
步骤S402:利用所述Port配置状态机的Port Initializing状态,启动所述PHY状态机,并使能每个所述port。
步骤S403:利用所述PHY状态机的PHY Uninitialized状态,使能每个所述PHY。
步骤S404:利用所述PHY状态机的PHY Starting状态,将网络存储主机系统中的每个PHY的状态设置为可用状态,并将每个PHY的状态上传至应用层。
步骤S405:利用所述Port配置状态机的PortWait状态,接收所述SAS卡反馈的各个ACK信息,并调用所述PHY状态机的PHY UP状态。
步骤S406:利用所述PHY状态机的PHY UP状态,记录每个所述port对应的PHY,以及记录所述PHY的启动个数。若所述PHY没有全部启动,返回执行步骤S405。若所述PHY全部启动,启动所述Port配置状态机的Port Operation状态。
步骤S407:利用所述Port配置状态机的Port Operation状态,判断每个所述PHY的状态是否正常,若是,启动所述Port状况状态机。
步骤S408:利用所述Port状况状态机的Port State Down状态,记录每个所述PHY的启动信息。
步骤S409:利用所述Port状况状态机的Port State Active状态,将每个port的状态设置为有效状态。
参见图5,示出了本发明实施例提供的拓扑阶段的流程示意图,包括以下步骤:
步骤S501:利用所述Domain管理状态机的Domain Null状态,启动所述Expander管理状态机。
步骤S502:利用所述Expander管理状态机的Initialize状态,构建所述第一SMP命令发送给所述SAS卡,注册与所有port连接的Expander。
步骤S503:利用所述Expander管理状态机的Found状态,启动所述ExpanderDiscovery状态机。
步骤S504:利用所述ExpanderDiscovery状态机的Initialize状态,构建所述第二SMP命令,并通过所述SAS卡将所述第二SMP命令发送给所述Expander。
步骤S505:利用所述Expander Discovery状态机的Report Manufacturer状态,使所述网络存储主机系统获取所述Expander的制造商信息。构建所述第三SMP命令,并通过所述SAS卡将所述第三SMP命令发送给所述Expander。
步骤S506:利用所述ExpanderDiscovery状态机的Report General状态,使所述网络存储主机系统获取所述一般信息。构建所述第四SMP命令,并通过所述SAS卡将所述第四SMP命令发送给所述Expander。
步骤S507:利用所述ExpanderDiscovery状态机的Discovery状态,使所述网络存储主机系统获取所述硬盘个数和每个硬盘对应的硬盘信息,启动所述Domain管理状态机的Discovery状态。
步骤S508:利用所述Domain管理状态机的Discovery状态,记录每个所述硬盘的读写速率,将每个所述硬盘注册到所述SAS卡中,以及将所述Expander和每个所述硬盘信息的对应关系添加至预设的组织架构中。
在本发明实施例中,利用Port配置状态机、PHY状态机和Port状态机完成各个port和PHY的使能阶段。利用Domain管理状态机、Expander管理状态机和Expander Discovery状态机,完成所有硬盘的拓扑。将Expander和每个硬盘信息的对应关系添加至预设的组织架构中,对硬盘进行管理,提高硬盘利用率。
与上述本发明实施例提供的一种拓扑硬盘的方法相对应,参见图6,本发明实施例还提供一种拓扑硬盘的装置的结构框图,所述装置包括:使能单元601、第一处理单元602、注册单元603、获取单元604、确定单元605和第二处理单元606;
使能单元601,用于使能SAS卡上的每个port和每个PHY,每一所述port对应多个所述PHY。使能每个port和PHY的过程参见上述本发明实施例图2步骤S201中相对应的内容。
第一处理单元602,用于在所有PHY全部启动的情况下,记录每一所述PHY的启动信息,并将所述每个port的状态设置为有效状态。记录过程和设置过程,参见上述本发明实施例图2步骤S202中相对应的内容。
注册单元603,用于向所述SAS卡注册与所有port连接的Expander。
在具体实现中,所述注册单元603具体用于:构建用于注册Expander的第一SMP命令,将所述第一SMP命令发送给所述SAS卡,注册与所有port连接的Expander。
获取单元604,用于获取与所述Expander连接的硬盘个数和每个硬盘对应的硬盘信息,所述硬盘信息至少包括硬盘类型和读写速率。
确定单元605,用于基于每个所述硬盘对应的硬盘信息,确定网络存储主机是否支持每个所述硬盘,若是,执行第二处理单元606。
所述第二处理单元606,用于记录每个所述硬盘的读写速率,将每个所述硬盘注册到所述SAS卡中,以及将所述Expander和每个所述硬盘信息的对应关系添加至预设的组织架构中。
在具体实现中,所述第二处理单元606具体用于:构建用于注册硬盘的第五SMP命令,将每个所述硬盘对应的第五SMP命令发送至所述SAS卡,注册每个所述硬盘。
在本发明实施例中,使能SAS卡上的每个port和PHY,在PHY全部启动的情况下,记录每一PHY的启动信息,将每个port的状态设置为有效。向SAS卡注册与所有port连接的Expander,获取与Expander连接的硬盘个数和每个硬盘对应的硬盘信息。若网络存储主机支持每个硬盘,记录每个硬盘的读写速率,将每个硬盘注册到SAS卡,以及将Expander和每个硬盘信息的对应关系添加至预设的组织架构中,完成对硬盘的拓扑并对硬盘进行管理,提高硬盘利用率。
优选的,结合图6,参见图7,示出了本发明实施例提供的一种拓扑硬盘的装置的结构框图,所述第一处理单元602包括:确定模块6021、判断模块6022和处理模块6023;
确定模块6021,用于基于所述SAS卡反馈的ACK信息,确定所述PHY的启动个数,若所有所述PHY全部启动,执行判断模块6022,每一ACK信息用于指示一个PHY已启动,所述ACK信息携带有对应PHY的运行状态。
所述判断模块6022,用于基于每个所述ACK信息,判断各个所述ACK信息对应的所述PHY的运行状态是否正常,若是,执行处理模块6023。
所述处理模块6023,用于记录各个所述ACK信息对应的所述PHY的启动信息,以及将所述每个port的状态设置为有效状态。
在本发明实施例中,利用SAS卡反馈的ACK信息,确定是否所有PHY都已经启动。若所有PHY已经全部启动,判断每个PHY的运行状态是否正常,若正常,记录各个PHY的启动信息,以及将每个port的状态设置为有效状态,完成对硬盘进行拓扑过程中的使能阶段。完成对硬盘进行拓扑过程中的使能阶段后,对硬盘进行拓扑阶段,将每个硬盘注册到SAS卡,以及将Expander和每个硬盘信息的对应关系添加至预设的组织架构中,完成对硬盘的拓扑并对硬盘进行管理,提高硬盘利用率。
优选的,结合图6,参见图8,示出了本发明实施例提供的一种拓扑硬盘的装置的结构框图,所述装置还包括:
配置单元607,用于配置每个PHY的SASWWID和WWNN。
优选的,结合图6,所述获取单元604包括:第一构建模块、第一发送模块、第二构建模块、第二发送模块、第三构建模块和第三发送模块。
第一构建模块,用于构建用于获取Expander制造商信息的第二SMP命令。构建第二SMP命令的过程,参见上述本发明实施例图3步骤S301中相对应的内容。
第一发送模块,用于将所述第二SMP命令发送给所述Expander,得到所述Expander的制造商信息。获取制造商信息的过程参见上述本发明实施例图3步骤S302中相对应的内容。
第二构建模块,用于基于所述制造商信息,构建用于获取所述Expander的一般信息的第三SMP命令,所述一般信息至少包括:所述Expander支持的SAS协议版本、包含的PHY个数和Expander内enclosure信息。构建第三SMP命令的过程,参见上述本发明实施例图3步骤S303中相对应的内容。
第二发送模块,用于将所述第三SMP命令发送给所述Expander,得到所述一般信息。获取一般信息的过程参见上述本发明实施例图3步骤S304中相对应的内容。
第三构建模块,用于基于所述一般信息,构建用于获取与所述Expander连接的硬盘个数和每个硬盘对应的硬盘信息的第四SMP命令。构建第四SMP命令的过程,参见上述本发明实施例图3步骤S305中相对应的内容。
第三发送模块,用于将所述第四SMP命令发送给所述Expander,获得与所述Expander连接的硬盘个数和每个硬盘对应的硬盘信息。获取硬盘个数和硬盘信息的过程,参见上述本发明实施例图3步骤S306中相对应的内容。
在本发明实施例中,构建获取硬盘个数和硬盘信息的SMP命令,通过SAS卡将该SMP命令发送给Expander,获取与Expander连接的硬盘个数和每个硬盘对应的硬盘信息。利用硬盘个数和硬盘信息完成硬盘的拓扑,并对硬盘进行管理,提高硬盘利用率。
综上所述,本发明实施例提供一种拓扑硬盘的方法及装置,该方法为:使能SAS卡上的每个port和PHY;在PHY全部启动的情况下,记录每一PHY的启动信息,将每个port的状态设置为有效;向SAS卡注册与所有port连接的Expander;获取与Expander连接的硬盘个数和每个硬盘对应的硬盘信息;基于每个硬盘对应的硬盘信息,确定网络存储主机是否支持每个硬盘;若是,记录每个硬盘的读写速率,将每个硬盘注册到SAS卡,以及将Expander和每个硬盘信息的对应关系添加至预设的组织架构中。本方案中,先使能每个port和PHY,启动每个port和PHY。在网络存储主机支持每个硬盘的情况下,将SAS卡、硬盘和Expander的对应关系添加至组织架构,完成对硬盘的拓扑并对硬盘进行管理,提高硬盘利用率。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的系统及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (10)

1.一种拓扑硬盘的方法,其特征在于,所述方法包括:
使能SAS卡上的每个端口port和每个物理接口PHY,每一所述port对应多个所述PHY;
在所有PHY全部启动的情况下,记录每一所述PHY的启动信息,并将所述每个port的状态设置为有效状态;
向所述SAS卡注册与所有port连接的扩展器Expander;
获取与所述Expander连接的硬盘个数和每个硬盘对应的硬盘信息,所述硬盘信息至少包括硬盘类型和读写速率;
基于每个所述硬盘对应的硬盘信息,确定网络存储主机是否支持每个所述硬盘;
若是,记录每个所述硬盘的读写速率,将每个所述硬盘注册到所述SAS卡中,以及将所述Expander和每个所述硬盘信息的对应关系添加至预设的组织架构中。
2.根据权利要求1所述的方法,其特征在于,所述在所有PHY全部启动的情况下,记录每一所述PHY的启动信息,并将所述每个port的状态设置为有效状态,包括:
基于所述SAS卡反馈的确认ACK信息,确定所述PHY的启动个数,每一ACK信息用于指示一个PHY已启动,所述ACK信息携带有对应PHY的运行状态;
若所有所述PHY全部启动,基于每个所述ACK信息,判断各个所述ACK信息对应的所述PHY的运行状态是否正常;
若是,记录各个所述ACK信息对应的所述PHY的启动信息,以及将所述每个port的状态设置为有效状态。
3.根据权利要求1所述的方法,其特征在于,所述使能每个端口port和每个物理接口PHY之前,还包括:
配置每个PHY的SASWWID和全球唯一节点号WWNN。
4.根据权利要求1所述的方法,其特征在于,所述向所述SAS卡注册与所有port连接的扩展器Expander,包括:
构建用于注册Expander的第一SMP命令;
将所述第一SMP命令发送给所述SAS卡,注册与所有port连接的Expander。
5.根据权利要求1所述的方法,其特征在于,所述获取与所述Expander连接的硬盘个数和每个硬盘对应的硬盘信息,包括:
构建用于获取Expander制造商信息的第二SMP命令;
将所述第二SMP命令发送给所述Expander,得到所述Expander的制造商信息;
基于所述制造商信息,构建用于获取所述Expander的一般信息的第三SMP命令,所述一般信息至少包括:所述Expander支持的SAS协议版本、包含的PHY个数和Expander内enclosure信息;
将所述第三SMP命令发送给所述Expander,得到所述一般信息;
基于所述一般信息,构建用于获取与所述Expander连接的硬盘个数和每个硬盘对应的硬盘信息的第四SMP命令;
将所述第四SMP命令发送给所述Expander,获得与所述Expander连接的硬盘个数和每个硬盘对应的硬盘信息。
6.根据权利要求1所述的方法,其特征在于,所述将每个所述硬盘注册到所述SAS卡中,包括:
构建用于注册硬盘的第五SMP命令;
将每个所述硬盘对应的第五SMP命令发送至所述SAS卡,注册每个所述硬盘。
7.一种拓扑硬盘的装置,其特征在于,所述装置包括:
使能单元,用于使能SAS卡上的每个端口port和每个物理接口PHY,每一所述port对应多个所述PHY;
第一处理单元,用于在所有PHY全部启动的情况下,记录每一所述PHY的启动信息,并将所述每个port的状态设置为有效状态;
注册单元,用于向所述SAS卡注册与所有port连接的扩展器Expander;
获取单元,用于获取与所述Expander连接的硬盘个数和每个硬盘对应的硬盘信息,所述硬盘信息至少包括硬盘类型和读写速率;
确定单元,用于基于每个所述硬盘对应的硬盘信息,确定网络存储主机是否支持每个所述硬盘,若是,执行第二处理单元;
所述第二处理单元,用于记录每个所述硬盘的读写速率,将每个所述硬盘注册到所述SAS卡中,以及将所述Expander和每个所述硬盘信息的对应关系添加至预设的组织架构中。
8.根据权利要求7所述的装置,其特征在于,所述第一处理单元包括:
确定模块,用于基于所述SAS卡反馈的确认ACK信息,确定所述PHY的启动个数,若所有所述PHY全部启动,执行判断模块,每一ACK信息用于指示一个PHY已启动,所述ACK信息携带有对应PHY的运行状态;
所述判断模块,用于基于每个所述ACK信息,判断各个所述ACK信息对应的所述PHY的运行状态是否正常,若是,执行处理模块;
所述处理模块,用于记录各个所述ACK信息对应的所述PHY的启动信息,以及将所述每个port的状态设置为有效状态。
9.根据权利要求7所述的装置,其特征在于,所述装置还包括:
配置单元,用于配置每个PHY的SASWWID和全球唯一节点号WWNN。
10.根据权利要求7所述的装置,其特征在于,所述注册单元具体用于:构建用于注册Expander的第一SMP命令,将所述第一SMP命令发送给所述SAS卡,注册与所有port连接的Expander。
CN201910684024.6A 2019-07-26 2019-07-26 一种拓扑硬盘的方法及装置 Active CN110515540B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910684024.6A CN110515540B (zh) 2019-07-26 2019-07-26 一种拓扑硬盘的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910684024.6A CN110515540B (zh) 2019-07-26 2019-07-26 一种拓扑硬盘的方法及装置

Publications (2)

Publication Number Publication Date
CN110515540A true CN110515540A (zh) 2019-11-29
CN110515540B CN110515540B (zh) 2022-07-22

Family

ID=68624162

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910684024.6A Active CN110515540B (zh) 2019-07-26 2019-07-26 一种拓扑硬盘的方法及装置

Country Status (1)

Country Link
CN (1) CN110515540B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111352585A (zh) * 2020-02-23 2020-06-30 苏州浪潮智能科技有限公司 一种基于扩展器提升多硬盘性能的方法和装置
CN113867810A (zh) * 2021-08-30 2021-12-31 苏州浪潮智能科技有限公司 一种查看服务器硬盘拓扑的方法、装置、终端及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102591838A (zh) * 2010-11-15 2012-07-18 Lsi公司 一种确定性sas发现和配置的方法
CN106325761A (zh) * 2015-06-29 2017-01-11 中兴通讯股份有限公司 一种存储资源管理的系统及方法
CN109597582A (zh) * 2018-12-03 2019-04-09 郑州云海信息技术有限公司 一种数据处理方法及相关设备

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102591838A (zh) * 2010-11-15 2012-07-18 Lsi公司 一种确定性sas发现和配置的方法
CN106325761A (zh) * 2015-06-29 2017-01-11 中兴通讯股份有限公司 一种存储资源管理的系统及方法
CN109597582A (zh) * 2018-12-03 2019-04-09 郑州云海信息技术有限公司 一种数据处理方法及相关设备

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111352585A (zh) * 2020-02-23 2020-06-30 苏州浪潮智能科技有限公司 一种基于扩展器提升多硬盘性能的方法和装置
CN113867810A (zh) * 2021-08-30 2021-12-31 苏州浪潮智能科技有限公司 一种查看服务器硬盘拓扑的方法、装置、终端及存储介质
CN113867810B (zh) * 2021-08-30 2023-07-14 苏州浪潮智能科技有限公司 一种查看服务器硬盘拓扑的方法、装置、终端及存储介质

Also Published As

Publication number Publication date
CN110515540B (zh) 2022-07-22

Similar Documents

Publication Publication Date Title
CN104040529B (zh) 用于云迁移中的配置管理的装置和方法
CN110032462A (zh) 远端系统恢复的方法
TWI334543B (en) Method of scheduling tasks in computer systems architectures, apparatus for implementing task scheduling, and computing system
CN107423169A (zh) 用于测试高速外围设备互连设备的方法和系统
CN105718785B (zh) 用于免认证组态的计算机实施方式与系统
CN109558157A (zh) 于固件更新期间保存固件设置
JP2003515813A (ja) 記憶ネットワーク内の定足数資源アービタ
TW200925878A (en) System and method for management of an IOV adapter through a virtual intermediary in an IOV management partition
CN106406847A (zh) 远端系统配置管理方法、系统及非暂态可读式存储多媒体
CN110515540A (zh) 一种拓扑硬盘的方法及装置
CN106059783A (zh) 用于配线连接的方法及配线连接系统
CN107368426B (zh) 一种测试方法及测试装置
US8918571B2 (en) Exposing expanders in a data storage fabric
CN103176913B (zh) 硬盘动态映射方法与应用其的服务器
CN109542708A (zh) 一种记录背板物理槽位和系统盘符对应关系的方法
CN112306581B (zh) 一种基板管理控制器管理bios配置的方法及介质
CN107958166A (zh) 一种数据检测方法及检测设备
CN108228099B (zh) 一种数据存储的方法及装置
CN105634635B (zh) 一种共享rtc的方法、装置和系统
CN107122138B (zh) 一种配置磁盘阵列的设备及方法
CN109213453A (zh) 一种磁盘管理方法及相关装置
CN103795857B (zh) 信息处理方法及电子设备
CN108696559A (zh) 流处理方法及装置
CN110188528A (zh) 一种基于固件安全认证usb存储设备的方法
CN109358813A (zh) 一种分布式存储系统的扩容方法及装置

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