CN118192904A - 扩展器的sas地址配置方法、设备、产品及介质 - Google Patents
扩展器的sas地址配置方法、设备、产品及介质 Download PDFInfo
- Publication number
- CN118192904A CN118192904A CN202410592682.3A CN202410592682A CN118192904A CN 118192904 A CN118192904 A CN 118192904A CN 202410592682 A CN202410592682 A CN 202410592682A CN 118192904 A CN118192904 A CN 118192904A
- Authority
- CN
- China
- Prior art keywords
- expander
- sas address
- controller
- seed
- sas
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 79
- 238000003860 storage Methods 0.000 claims abstract description 142
- 238000004590 computer program Methods 0.000 claims description 25
- 230000001360 synchronised effect Effects 0.000 claims description 12
- 230000005856 abnormality Effects 0.000 claims description 5
- 108010028984 3-isopropylmalate dehydratase Proteins 0.000 claims 1
- 238000007726 management method Methods 0.000 description 44
- 238000010586 diagram Methods 0.000 description 16
- 230000008569 process Effects 0.000 description 12
- 238000004364 calculation method Methods 0.000 description 11
- 238000009826 distribution Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 230000002159 abnormal effect Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013523 data management Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
Landscapes
- Storage Device Security (AREA)
Abstract
本申请提供一种扩展器的SAS地址配置方法、设备、产品及介质,涉及存储设备技术领域,包括:针对存储设备中多个控制器的多个扩展器,对各个扩展器分配与扩展器对应的SAS地址种子;在扩展器执行初始化时,读取SAS地址种子和扩展器所在的控制器的ID;根据SAS地址种子和扩展器所在的控制器的ID,得到扩展器的SAS地址,能够提高生成唯一的SAS地址的准确度。
Description
技术领域
本申请设计存储设备技术领域,特别是涉及一种扩展器的SAS地址配置方法、设备、产品及介质。
背景技术
存储设备的主要功能是提供一套安全可靠的数据管理系统,一般需要通过扩展器(Expander)去进行SAS协议(Serial Attached SCSI,串行连接SCSI接口)下的硬盘管理,监测硬盘的状态信息,并将信息提供到CPU上的大系统(即CPU中运行的管理系统),以供大系统根据硬盘的实时状态作出响应的处理,维护整个存储系统的安全运行。
而SAS地址对于扩展器(Expander,一种机箱管理小系统)的意义就相当于某台电脑的IP,需要准确访问到该扩展器才能当需要确定哪个扩展器(Expander)的硬盘故障,对于结构较为复杂的存储设备,难以保证扩展器的SAS地址的唯一性。
发明内容
有鉴于此,本申请实施例提供一种扩展器的SAS地址配置方法、设备、产品及介质,以便克服上述问题或者至少部分地解决上述问题。
本申请实施例第一方面提供了一种扩展器的SAS地址配置方法,所述方法包括:
针对存储设备中多个控制器的多个扩展器,对各个扩展器分配与所述扩展器对应的SAS地址种子;
在所述扩展器执行初始化时,读取所述SAS地址种子和所述扩展器所在的控制器的ID;
根据所述SAS地址种子和所述扩展器所在的控制器的ID,得到所述扩展器的SAS地址。
可选地,所述方法还包括:
确定所述存储设备的扩展器是否存在下一级扩展器;
当所述存储设备的扩展器存在下一级扩展器时,获取所述下一级扩展器的托盘ID;
所述根据所述SAS地址种子和所述扩展器所在的控制器的ID,得到所述扩展器的SAS地址,包括:
当所述存储设备的扩展器不存在下一级扩展器时,对所述SAS地址种子和所述扩展器所在的控制器的ID进行综合相加,得到所述扩展器的SAS地址;
当所述存储设备的扩展器存在下一级扩展器时,针对所述SAS地址种子和所述扩展器所在的控制器的ID进行综合相加,得到所述扩展器的SAS地址;针对所述SAS地址种子、所述扩展器所在的控制器的ID以及所述下一级扩展器的托盘ID进行综合相加,得到所述下一级扩展器的SAS地址。
可选地,所述针对存储设备中多个控制器的多个扩展器,对各个扩展器分配与所述扩展器对应的SAS地址种子,包括:
针对所述存储设备中多个控制器的多个扩展器,在所述存储设备的控制框中的背板上,对各个扩展器分配与所述扩展器对应的带电可擦可编程只读存储器中;
基于所述存储设备的机型,对各个扩展器分配唯一的SAS地址种子;
将各个所述SAS地址种子写入在与所述扩展器对应的带电可擦可编程只读存储器中。
可选地,所述将各个所述SAS地址种子写入在与所述扩展器对应的带电可擦可编程只读存储器中,包括:
当所述存储设备不包括基板管理控制器的情况下,在所述存储设备生产时,通过所述存储设备对应的存储系统的SCSI Generic指令工具,将所述SAS地址种子发送给扩展器;
在所述扩展器接收所述SAS地址种子之后,基于IIC协议,将所述SAS地址种子写入与所述扩展器对应的带电可擦可编程只读存储器。
可选地,所述将各个所述SAS地址种子写入在与所述扩展器对应的带电可擦可编程只读存储器中,包括:
当所述存储设备包括基板管理控制器的情况下,在所述存储设备生产时,通过所述存储设备对应的存储系统的IPMI指令工具,将所述SAS地址种子发送给所述基板管理控制器;
所述基板管理控制器基于IIC协议将所述SAS地址种子发送给所述扩展器;
所述扩展器在接收到所述基板管理控制器发送的SAS地址种子之后,基于IIC协议,将所述SAS地址种子写入与所述扩展器对应的带电可擦可编程只读存储器。
可选地,所述将各个所述SAS地址种子写入在与所述扩展器对应的带电可擦可编程只读存储器中,包括:
当所述存储设备的扩展器存在下一级扩展器时,在所述扩展器接收到SAS地址种子之后,判断所述SAS地址种子归属的扩展器;
基于所述SAS地址种子归属的扩展器,确定所述扩展器的下一级扩展器,将所述SAS地址种子分发给所述下一级扩展器,以使所述下一级扩展器将所述SAS地址种子写入与所述下一级扩展器对应的带电可擦可编程只读存储器。
可选地,所述在所述扩展器执行初始化时,读取所述SAS地址种子,包括:
当所述存储设备的控制器上电之后,在预设IIC重试次数内,所述扩展器的多个扩展器基于IIC协议,访问所述扩展器对应的带电可擦可编程只读存储器,读取与所述扩展器对应的SAS地址种子;
在所述读取与所述扩展器对应的SAS地址种子之后,将所述SAS地址种子放入缓存中备用。
可选地,所述在所述扩展器执行初始化时,读取所述扩展器所在的控制器的ID,包括:
通过GPIO获取所述扩展器所在的控制器的ID,其中,所述控制器的ID是基于所述GPIO的高低电平确定得到的;
在获取到所述控制器的ID之后,将所述控制器的ID放入缓存中备用。
可选地,在所述针对存储设备中多个控制器的多个扩展器,对各个扩展器分配与所述扩展器对应的SAS地址种子之前,还包括:
当所述存储设备初始上电时,针对所述存储设备中的各个控制器,在所述扩展器的固件中,写入默认SAS地址种子,其中,每个扩展器所对应的默认SAS地址种子相同;
所述方法还包括:
针对所述扩展器的默认SAS地址种子、所述扩展器所在的控制器的ID以及所述扩展器的ID进行综合相加,得到所述扩展器在所述存储设备初始上电时的SAS地址。
可选地,在所述对所述SAS地址种子和所述扩展器所在的控制器的ID进行综合相加,得到所述扩展器的SAS地址之后,还包括:
基于综合相加得到的所述SAS地址,对所述扩展器的初始化配置文件中存储的所述扩展器在所述存储设备初始上电时的SAS地址进行替换。
可选地,所述方法还包括:
当存在第一扩展器和第二扩展器均属于第一控制器时,通过同步链路对所述第一扩展器的带电可擦可编程只读存储器中写入的第一SAS地址种子和所述第二扩展器的带电可擦可编程只读存储器中写入的第二SAS地址种子进行异常判断;
在确定所述第一SAS地址种子和所述第二SAS地址种子相同时,基于所述第一SAS地址种子、所述第一控制器的ID以及所述第一扩展器的ID,确定所述第一扩展器的SAS地址;基于所述第二SAS地址种子、所述第一控制器的ID以及所述第二扩展器的ID,确定所述第二扩展器的SAS地址。
可选地,所述方法还包括:
当存在第一扩展器属于第一控制器且第二扩展器属于第二控制器时,通过同步链路对所述第一扩展器的带电可擦可编程只读存储器中写入的第一SAS地址种子和所述第二扩展器的带电可擦可编程只读存储器中写入的第二SAS地址种子进行异常判断;
在确定所述第一SAS地址种子和所述第二SAS地址种子相同时,基于所述第一SAS地址种子和所述第一控制器的ID确定所述第一扩展器的SAS地址;基于所述第二SAS地址种子和所述第二控制器的ID确定所述第二扩展器的SAS地址。
本申请实施例第二方面提供了一种扩展器的SAS地址配置装置,所述装置包括:
分配模块,用于针对存储设备中多个控制器的多个扩展器,对各个扩展器分配与所述扩展器对应的SAS地址种子;
读取模块,用于在所述扩展器执行初始化时,读取所述SAS地址种子和所述扩展器所在的控制器的ID;
获取模块,用于根据所述SAS地址种子和所述扩展器所在的控制器的ID,得到所述扩展器的SAS地址。
本申请实施例第三方面,提供一种电子设备,包括存储器、处理器以及存储在存储器上的计算机程序,其中,所述处理器执行所述计算机程序以实现如第一方面所述的扩展器的SAS地址配置方法。
本申请实施例第四方面,提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现如第一方面所述的扩展器的SAS地址配置方法。
本申请实施例第五方面,提供一种计算机可读介质,其上存储有计算机程序,其中,所述计算机程序被处理器执行时实现如第一方面所述的扩展器的SAS地址配置方法。
本申请的有益效果:
本申请实施例提供一种扩展器的SAS地址配置方法、设备、产品及介质,包括:
针对存储设备中多个控制器的多个扩展器,对各个扩展器分配与扩展器对应的SAS地址种子;在扩展器执行初始化时,读取SAS地址种子和扩展器所在的控制器的ID;根据SAS地址种子和扩展器所在的控制器的ID,得到扩展器的SAS地址。
能够为在存储设备中包含多个控制器且多个控制器内又包含多个扩展器的复杂情况下,为每一个扩展器分配唯一对应的SAS地址种子,并在需要生成扩展器的SAS地址时,根据SAS地址种子和扩展器所在的控制器的ID,得到扩展器的SAS地址,使得最终生成的扩展器的SAS地址具有唯一性,不会出现同一个SAS地址对应多个扩展器的情况,并且,基于SAS地址种子和控制器的ID的综合计算,提高了生成唯一的SAS地址的准确度。
附图说明
构成本申请的一部分的附图用来提供对本申请的进一步理解,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。
为了更清楚地说明本申请的技术方案,下面将对本申请的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请一实施例提供的一种扩展器的SAS地址配置方法的流程图;
图2是本申请一实施例提供的一种扩展器的SAS地址配置方法中的分配SAS地址种子的示意图;
图3是本申请一实施例提供的一种扩展器的SAS地址配置方法中不包括基板管理控制器扩展器挂载下一级扩展器的示意图;
图4是本申请一实施例提供的一种扩展器的SAS地址配置方法中包括基板管理控制器扩展器挂载下一级扩展器的示意图;
图5本申请一实施例提供的一种扩展器的SAS地址配置方法中分发SAS地址种子的示意图;
图6是本申请一实施例提供的一种扩展器的SAS地址配置装置的框架示意图。
具体实施方式
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
图1是本申请一实施例提供的一种扩展器的SAS地址配置方法的流程图,图2是本申请一实施例提供的一种扩展器的SAS地址配置方法中的分配SAS地址种子的示意图,如图1和图2所示,本申请实施例提供一种扩展器的SAS地址配置方法,所述方法包括:
在步骤S101中,针对存储设备中多个控制器的多个扩展器,对各个扩展器分配与所述扩展器对应的SAS地址种子;
在步骤S102中,在所述扩展器执行初始化时,读取所述SAS地址种子和所述扩展器所在的控制器的ID;
在步骤S103中,根据所述SAS地址种子和所述扩展器所在的控制器的ID,得到所述扩展器的SAS地址。
首先,在步骤S101中,针对存储设备中多个控制器的多个扩展器,对各个扩展器分配与所述扩展器对应的SAS地址种子。
相关技术中,SAS地址对于扩展器(Expander)的意义相当于某台电脑的IP一样,具有唯一性,通过SAS地址,才能够准确地访问到与该SAS地址对应的扩展器。对于存储设备中包含多个控制器,而多个控制器内又包含多个扩展器的复杂情况,为每一个扩展器直接分配SAS地址是不合适的,原因是:分配SAS地址的过程增大了产线员工的工作量,并且极大概率会存在同一个SAS地址被分配给不同控制器上的扩展器,使得同一个SAS地址对应多个扩展器。
因此,在这种存储设备中包含多个控制器且多个控制器内又包含多个扩展器的复杂情况下,本申请实施例采用分配SAS地址种子的方式,如图2所示,对各个扩展器分配与该扩展器所对应的SAS地址种子。
进一步,在步骤S102中,在所述扩展器执行初始化时,读取所述SAS地址种子和所述扩展器所在的控制器的ID。
在本申请实施例中,当控制器上电时,该控制器内的扩展器开始执行初始化的流程,在初始化的流程中,扩展器将访问并读取存储设备中写入的扩展器的SAS地址种子和扩展器所在的控制器的ID。
最后,在步骤S103中,根据所述SAS地址种子和所述扩展器所在的控制器的ID,得到所述扩展器的SAS地址。
在本申请实施例中,当扩展器读取到扩展器的SAS地址种子和扩展器所在的控制器的ID之后,根据读取到的扩展器的SAS地址种子和扩展器所在的控制器的ID进行计算,最终得到与该扩展器唯一对应的SAS地址。
其中,扩展器的SAS地址的计算方式,包括以下几种:
计算方式1(直接相加):将扩展器的SAS地址种子和扩展器所在的控制器的ID直接相加,即SAS地址种子+控制器的ID,得到的相加结果作为控制器对应的SAS地址。
计算方式2(加权相加):对扩展器的SAS地址种子和扩展器所在的控制器的ID分配不同的权重,然后按照权重进行相加。即SAS地址种子* w1 +控制器的ID* w2,得到的相加结果作为控制器对应的SAS地址,其中,w1和w2 分别为SAS地址种子和控制器的ID的权重。
计算方式3(位运算):可以将SAS地址种子和扩展器所在的控制器的ID进行位运算,例如,按位异或(^)、按位与(&)、按位或(|)等方式进行相加,得到的相加结果作为控制器对应的SAS地址。
计算方式4(字符串拼接):如果SAS地址种子和控制器的ID是字符串类型,可以将它们进行拼接操作,例如SAS地址种子 + 控制器的ID,得到的相加结果作为控制器对应的SAS地址。
计算方式5(其他运算):根据实际计算量,还可以使用其他算术运算符或逻辑运算符来对SAS地址种子和控制器的ID进行综合相加,例如取模运算、逻辑运算等,得到的相加结果作为控制器对应的SAS地址。
通过上述实施例,能够为在存储设备中包含多个控制器且多个控制器内又包含多个扩展器的复杂情况下,为每一个扩展器分配唯一对应的SAS地址种子,并在需要生成扩展器的SAS地址时,根据SAS地址种子和扩展器所在的控制器的ID,得到扩展器的SAS地址,使得最终生成的扩展器的SAS地址具有唯一性,不会出现同一个SAS地址对应多个扩展器的情况,并且,基于SAS地址种子和控制器的ID的综合计算,提高了生成唯一的SAS地址的准确度。
图3是本申请一实施例提供的一种扩展器的SAS地址配置方法中不包括基板管理控制器扩展器挂载下一级扩展器的示意图;图4是本申请一实施例提供的一种扩展器的SAS地址配置方法中包括基板管理控制器扩展器挂载下一级扩展器的示意图。
可选地,所述方法还包括:
确定所述存储设备的扩展器是否存在下一级扩展器;
当所述存储设备的扩展器存在下一级扩展器时,获取所述下一级扩展器的托盘ID;
所述根据所述SAS地址种子和所述扩展器所在的控制器的ID,得到所述扩展器的SAS地址,包括:
当所述存储设备的扩展器不存在下一级扩展器时,对所述SAS地址种子和所述扩展器所在的控制器的ID进行综合相加,得到所述扩展器的SAS地址;
当所述存储设备的扩展器存在下一级扩展器时,针对所述SAS地址种子和所述扩展器所在的控制器的ID进行综合相加,得到所述扩展器的SAS地址;针对所述SAS地址种子、所述扩展器所在的控制器的ID以及所述下一级扩展器的托盘ID进行综合相加,得到所述下一级扩展器的SAS地址。
在本申请实施例中,在需要生成扩展器的SAS地址之前,需要先判断存储设备的扩展器(即一级扩展器)是否存在下一级扩展器(二级扩展器、三级扩展器等),其中,下一级扩展器指的是扩展器下直接或间接挂载的子扩展器,当存在直接或间接挂载的子扩展器时,由于扩展器和下一级扩展器均归属于同一个控制器,即所在的控制器的ID是相同的,若直接通过SAS地址种子和控制器的ID计算得到的SAS地址可能是相同的,因此,需要进行进一步操作以得到与扩展器唯一对应的SAS地址。
具体的,如图3所示,当不包含基板管理控制器(BMC)时,存储设备的控制框包括中央处理器、控制器1和控制器2,中央处理器通过PCIE协议与控制器1和控制器2通信,控制器1包含扩展器1和扩展器2,控制器2包含扩展器3和扩展器4,扩展器1下挂载有下一级扩展器11和下一级扩展器12,扩展器2下挂载有下一级扩展器11和下一级扩展器22,扩展器3下挂载有下一级扩展器31和下一级扩展器32,扩展器4下挂载有下一级扩展器41和下一级扩展器42,扩展器1、下一级扩展器11和下一级扩展器12对应硬盘1,扩展器2、下一级扩展器21和下一级扩展器22对应硬盘2,扩展器3、下一级扩展器31和下一级扩展器32对应硬盘3,扩展器4、下一级扩展器41和下一级扩展器42对应硬盘4。
如图4所示,当包含基板管理控制器(BMC)时,基板管理控制器作为控制器,存储设备的控制框包括中央处理器、基板管理控制器1和基板管理控制器2,中央处理器通过IPMI协议与基板管理控制器1和基板管理控制器2通信,中央处理器通过PCIE协议与基板管理控制器1和基板管理控制器2通信,基板管理控制器1包含扩展器1和扩展器2,基板管理控制器2包含扩展器3和扩展器4,扩展器1下挂载有下一级扩展器11和下一级扩展器12,扩展器2下挂载有下一级扩展器11和下一级扩展器22,扩展器3下挂载有下一级扩展器31和下一级扩展器32,扩展器4下挂载有下一级扩展器41和下一级扩展器42,扩展器1、下一级扩展器11和下一级扩展器12对应硬盘1,扩展器2、下一级扩展器21和下一级扩展器22对应硬盘2,扩展器3、下一级扩展器31和下一级扩展器32对应硬盘3,扩展器4、下一级扩展器41和下一级扩展器42对应硬盘4。
应当理解,在本文中,当存在基板管理控制器时,控制器的ID指的是基板管理控制器的ID。
当确定出存储设备的扩展器存在下一级扩展器时,在读取扩展器对应的SAS地址种子和扩展器所在的控制器的ID时,需要同时读取下一级扩展器的托盘ID,托盘ID为安装有下一级扩展器的托盘的ID,托盘的ID与托盘上方安装的下一级扩展器是对应的。
因此,当存储设备的扩展器不存在下一级扩展器时,则无需托盘ID,直接通过对SAS地址种子和扩展器所在的控制器的ID进行综合相加,得到扩展器(这里指的是一级扩展器,若无挂载的下一级扩展器,则直接称为扩展器,若存在挂载的下一级扩展器,则称为一级扩展器)的SAS地址;
对于存储设备的扩展器存在下一级扩展器的情况,针对SAS地址种子和扩展器所在的控制器的ID进行综合相加,能够得到扩展器(这里指的是一级扩展器)的SAS地址;针对SAS地址种子、扩展器所在的控制器的ID以及下一级扩展器的托盘ID进行综合相加,得到下一级扩展器(二级扩展器、三级扩展器等)的SAS地址。
通过上述实施例,能够针对扩展器(一级扩展器)是否挂载有下一级扩展器的情况,进一步通过托盘ID来生成SAS地址,使得扩展器都能生成唯一对应的SAS地址。
可选地,所述步骤S101,包括:
针对所述存储设备中多个控制器的多个扩展器,在所述存储设备的控制框中的背板上,对各个扩展器分配与所述扩展器对应的带电可擦可编程只读存储器中;
基于所述存储设备的机型,对各个扩展器分配唯一的SAS地址种子;
将各个所述SAS地址种子写入在与所述扩展器对应的带电可擦可编程只读存储器中。
具体的,如图2所示,在本申请实施例中,在对扩展器分配SAS地址种子的过程中,首先是针对各个扩展器,在存储设备的控制框中的背板上分配与各个扩展器对应的带电可擦可编程只读存储器(EEPROM),并针对述存储设备的机型,按照一定规则,对存储设备中包含的各个扩展器分配SAS地址种子,即每一个SAS地址种子都是唯一不重复的,并将各个分配的SAS地址种子写入在与各个SAS地址种子所唯一标识的扩展器对应的带电可擦可编程只读存储器(EEPROM)中,从而完成SAS地址种子的分配和永久保存。
以图2为例,存储设备的控制框包括控制器1和控制器2,控制器1包含扩展器1和扩展器2,控制器2包含扩展器3和扩展器4,背板上存放有与扩展器1、扩展器2、扩展器3和扩展器4各自对应的扩展器1的SAS地址种子、扩展器2的SAS地址种子、扩展器3的SAS地址种子和扩展器4的SAS地址种子,以及控制器1的ID和控制器2的ID。
通过上述实施例,为每个扩展器分配对应的带电可擦可编程只读存储器(EEPROM)来存放扩展器唯一对应的SAS地址种子,可以确保各个扩展器之间的唯一标识,有助于管理和识别,并避免冲突和混淆,提高存储设备的可靠性和可管理性。
可选地,所述将各个所述SAS地址种子写入在与所述扩展器对应的带电可擦可编程只读存储器中,包括:
当所述存储设备不包括基板管理控制器的情况下,在所述存储设备生产时,通过所述存储设备对应的存储系统的SCSI Generic指令工具,将所述SAS地址种子发送给扩展器;
在所述扩展器接收所述SAS地址种子之后,基于IIC协议,将所述SAS地址种子写入与所述扩展器对应的带电可擦可编程只读存储器。
具体的,在本申请实施例中,当存储设备不包括基板管理控制器的情况下,在存储设备生产时,工程师可以通过存储设备对应的存储系统的SCSI Generic指令工具,将SAS地址种子发送给扩展器,当扩展器接收SAS地址种子之后,基于IIC协议,将接收到的SAS地址种子写入与扩展器对应的带电可擦可编程只读存储器,实现SAS地址种子的分配和永久保存。
通过上述实施例,能够在存储设备中不包含基板管理控制器的情况下,基于SCSIGeneric指令工具完成SAS地址种子的发送和存放。
图5本申请一实施例提供的一种扩展器的SAS地址配置方法中分发SAS地址种子的示意图。
可选地,所述将各个所述SAS地址种子写入在与所述扩展器对应的带电可擦可编程只读存储器中,包括:
当所述存储设备包括基板管理控制器的情况下,在所述存储设备生产时,通过所述存储设备对应的存储系统的IPMI指令工具,将所述SAS地址种子发送给所述基板管理控制器;
所述基板管理控制器基于IIC协议将所述SAS地址种子发送给所述扩展器;
所述扩展器在接收到所述基板管理控制器发送的SAS地址种子之后,基于IIC协议,将所述SAS地址种子写入与所述扩展器对应的带电可擦可编程只读存储器。
具体的,如图5所示,在本申请实施例中,当存储设备包括基板管理控制器(BMC,Baseboard Management Controller)的情况下需要写入SAS地址种子时,工程师可以在存储设备生产时,通过存储设备对应的存储系统的IPMI(Intelligent Platform ManagementInterface,智能平台管理接口)指令工具,将分配的SAS地址种子发送给基板管理控制器中,通过基板管理控制器基于IIC(Inter-Integrated Circui,串行通信总线协议)协议,将SAS地址种子发送给用于通过该SAS地址种子标识的扩展器,扩展器在接收到基板管理控制器发送的SAS地址种子之后,基于IIC协议,将SAS地址种子写入与扩展器对应的带电可擦可编程只读存储器,实现SAS地址种子的分配和永久保存。
通过上述实施例,能够在存储设备中包含基板管理控制器的情况下,基于IPMI指令工具完成SAS地址种子的发送和存放。
可选地,所述将各个所述SAS地址种子写入在与所述扩展器对应的带电可擦可编程只读存储器中,包括:
当所述存储设备的扩展器存在下一级扩展器时,在所述扩展器接收到SAS地址种子之后,判断所述SAS地址种子归属的扩展器;
基于所述SAS地址种子归属的扩展器,确定所述扩展器的下一级扩展器,将所述SAS地址种子分发给所述下一级扩展器,以使所述下一级扩展器将所述SAS地址种子写入与所述下一级扩展器对应的带电可擦可编程只读存储器。
在本申请实施例中,在将SAS地址种子存放在扩展器对应的带电可擦可编程只读存储器中时,需要针对存在挂载的下一级扩展器进行SAS地址种子的分发和存放。
具体的,当存储设备的扩展器存在下一级扩展器时,在扩展器接收到SAS地址种子之后,接收到SAS地址种子的扩展器(即一级扩展器)首先判断接收到的SAS地址种子归属的扩展器,也就是说,一级扩展器能够接收到一级扩展器本身所对应的SAS地址种子以及与一级扩展器挂载的下一级扩展器所对应的SAS地址种子,一级扩展器需要针对接收到的SAS地址种子确定出SAS地址种子归属的扩展器(即下一级扩展器)。将接收到的SAS地址种子分发给归属的下一级扩展器,以使下一级扩展器将下一级扩展器所对应的SAS地址种子写入与下一级扩展器对应的带电可擦可编程只读存储器中,完成SAS地址种子在存在下一级扩展器的情况下的分发和存放。
通过上述实施例,能够在存储设备的扩展器存在下一级扩展器的情况下,完成SAS地址种子的分发和存放,提高SAS地址种子的分配效率以及分配的准确性。
可选地,所述步骤S102,包括:
当所述存储设备的控制器上电之后,在预设IIC重试次数内,所述扩展器的多个扩展器基于IIC协议,访问所述扩展器对应的带电可擦可编程只读存储器,读取与所述扩展器对应的SAS地址种子;
在所述读取与所述扩展器对应的SAS地址种子之后,将所述SAS地址种子放入缓存中备用。
具体的,在本申请实施例中,当控制器上电时,该控制器内的扩展器开始执行初始化的流程,在初始化的流程中,扩展器将基于IIC协议,访问并读取存储设备中写入的扩展器的SAS地址种子和扩展器所在的控制器的ID,在访问的过程中,可能因通信异常、读取失败或不存在SAS地址种子的情况,导致访问失败,因此,本申请实施例设置了预设IIC重试次数,即扩展器将基于IIC协议,访问并读取带电可擦可编程只读存储器中写入的扩展器的SAS地址种子的失败次数控制在预设IIC重试次数内,当超出预设IIC重试次数仍未获取到扩展器的SAS地址种子时,不再继续访问,而是直接反馈访问异常信息,当在预设IIC重试次数内,成功访问并读取得到扩展器的SAS地址种子时,则直接将SAS地址种子放入缓存中备用。
通过上述实施例,能够通过设置预设IIC重试次数来控制扩展器的SAS地址种子的访问次数,避免访问失败的情况下的多次频繁访问,或出现访问失败不继续重试访问的情况。
可选地,所述步骤S102,包括:
通过GPIO获取所述扩展器所在的控制器的ID,其中,所述控制器的ID是基于所述GPIO的高低电平确定得到的;
在获取到所述控制器的ID之后,将所述控制器的ID放入缓存中备用。
具体的,在本申请实施例中,在扩展器初始化的流程中,是通过GPIO(通用输入/输出,General Purpose Input/Output)获取到扩展器所在的控制器的ID,控制器的ID是基于GPIO引脚的高低电平确定得到的,在获取到控制器的ID之后,将控制器的ID存放在于存放SAS地址种子相同的缓存中备用。
例如,控制器A的ID为低电平,控制器B的ID为高电平。可以通过读取连接到控制器A的GPIO引脚的电平状态来确定控制器A的存在,通过读取连接到控制器B的GPIO引脚的电平状态来确定控制器B的存在。
通过上述实施例,能够通过检测GPIO引脚上的高低电平来获取控制器的ID,从而无需额外的通信协议或接口即可快速、准确获取控制器的ID。
可选地,在所述步骤S101之前,还包括:
当所述存储设备初始上电时,针对所述存储设备中的各个控制器,在所述扩展器的固件中,写入默认SAS地址种子,其中,每个扩展器所对应的默认SAS地址种子相同;
所述方法还包括:
针对所述扩展器的默认SAS地址种子、所述扩展器所在的控制器的ID以及所述扩展器的ID进行综合相加,得到所述扩展器在所述存储设备初始上电时的SAS地址。
具体的,在本申请实施例中,由于存储设备初次上电时,并没有为存储设备中包含的各个扩展器分配的SAS地址种子,即带电可擦可编程只读存储器中还未写入SAS地址种子,为了避免读取SAS地址种子失败,此时,可以在扩展器的固件中,写入默认SAS地址种子,每个扩展器所对应的默认SAS地址种子是相同的。
由于默认SAS地址种子是相同的,若仅基于默认SAS地址种子和控制器的ID得到SAS地址,则会使得同一个控制器内的多个扩展器所对应的SAS地址是相同的,因此,在为分配SAS地址种子之前,当需要生成扩展器的SAS地址时,需要对扩展器的默认SAS地址种子、扩展器所在的控制器的ID以及扩展器的ID进行综合相加,得到扩展器在存储设备初始上电时的唯一的SAS地址,并将该SAS地址存储在初始化配置文件中。
其中,本文中提到的综合相加得到SAS地址的计算方式均可以类比上述计算方式1~计算方式5,再次不在赘述。
通过上述实施例,能够在存储设备初次上电时,通过写入默认SAS地址种子,避免SAS地址种子的访问失败,以及当在分配SAS地址种子之前,每个扩展器都具有相同的默认SAS地址种子,并需要生成扩展器的SAS地址的情况下,能够生成唯一的SAS地址。
可选地,在所述对所述SAS地址种子和所述扩展器所在的控制器的ID进行综合相加,得到所述扩展器的SAS地址之后,还包括:
基于综合相加得到的所述SAS地址,对所述扩展器的初始化配置文件中存储的所述扩展器在所述存储设备初始上电时的SAS地址进行替换。
具体的,在本申请实施例中,在分配SAS地址种子之后计算得到SAS地址之后,需要将基于扩展器的默认SAS地址种子、扩展器所在的控制器的ID以及扩展器的ID得到基于综合相加得到的存储在初始化配置文件中的SAS地址进行替换,即对扩展器的初始化配置文件中存储的扩展器在存储设备初始上电时的SAS地址进行替换,使得扩展器具备唯一的SAS地址。
通过上述实施例,能够在分配了SAS地址种子之后,将基于分配后的SAS地址种子生成的SAS地址对初始化配置文件中存储的扩展器在存储设备初始上电时的SAS地址进行替换,保证SAS地址的唯一性。
可选地,所述方法还包括:
当存在第一扩展器和第二扩展器均属于第一控制器时,通过同步链路对所述第一扩展器的带电可擦可编程只读存储器中写入的第一SAS地址种子和所述第二扩展器的带电可擦可编程只读存储器中写入的第二SAS地址种子进行异常判断;
在确定所述第一SAS地址种子和所述第二SAS地址种子相同时,基于所述第一SAS地址种子、所述第一控制器的ID以及所述第一扩展器的ID,确定所述第一扩展器的SAS地址;基于所述第二SAS地址种子、所述第一控制器的ID以及所述第二扩展器的ID,确定所述第二扩展器的SAS地址。
具体的,在本申请实施例中,为了进一步确定SAS地址的唯一性,当存在两个控制器(即第一扩展器和第二扩展器)均属于第一控制器时,需要通过同步链路对第一扩展器的带电可擦可编程只读存储器中写入的第一SAS地址种子和第二扩展器的带电可擦可编程只读存储器中写入的第二SAS地址种子进行异常判断,判断第一SAS地址种子和第二SAS地址种子是否为相同的SAS地址种子,相同表示分配错误,此时若直接按照相同的SAS地址种子和相同的控制器的ID进行SAS地址的生成,则会导致第一扩展器和第二扩展器对应同一个SAS地址,使得SAS地址不唯一。
因此,在这种SAS地址种子分配错误的情况下,需要通过扩展器的ID来生成SAS地址,即基于第一SAS地址种子、第一控制器的ID以及第一扩展器的ID,确定第一扩展器的SAS地址,基于第二SAS地址种子、第一控制器的ID以及第二扩展器的ID,确定第二扩展器的SAS地址。
通过上述实施例,能够保证在同一个控制器下的多个扩展器都被分配相同的SAS地址种子的情况下,基于不同的扩展器的ID来生成不同的SAS地址,保证SAS地址的唯一性。
可选地,所述方法还包括:
当存在第一扩展器属于第一控制器且第二扩展器属于第二控制器时,通过同步链路对所述第一扩展器的带电可擦可编程只读存储器中写入的第一SAS地址种子和所述第二扩展器的带电可擦可编程只读存储器中写入的第二SAS地址种子进行异常判断;
在确定所述第一SAS地址种子和所述第二SAS地址种子相同时,基于所述第一SAS地址种子和所述第一控制器的ID确定所述第一扩展器的SAS地址;基于所述第二SAS地址种子和所述第二控制器的ID确定所述第二扩展器的SAS地址。
具体的,在本申请实施例中,存在两个扩展器归属于不同的控制器时,即第一扩展器属于第一控制器且第二扩展器属于第二控制器时,当通过同步链路对第一扩展器的带电可擦可编程只读存储器中写入的第一SAS地址种子和第二扩展器的带电可擦可编程只读存储器中写入的第二SAS地址种子进行异常判断,在这种情况下,若归属于不同的控制器的两个扩展器的SAS地址种子相同时,则能够基于不同的控制器的ID来确定不同的扩展器唯一对应的SAS地址,即基于第一SAS地址种子和第一控制器的ID确定第一扩展器的SAS地址;基于第二SAS地址种子和第二控制器的ID确定第二扩展器的SAS地址。
通过上述实施例,能够在计算SAS地址之前进行SAS地址种子的判断,当两个扩展器归属于不同的控制器时,基于不同的控制器的ID即可确定出扩展器唯一对应的SAS地址。
图6是本申请一实施例提供的一种扩展器的SAS地址配置装置的框架示意图,如图6所示,本申请实施例提供一种扩展器的SAS地址配置装置,所述装置包括:
分配模块11,用于针对存储设备中多个控制器的多个扩展器,对各个扩展器分配与所述扩展器对应的SAS地址种子;
读取模块12,用于在所述扩展器执行初始化时,读取所述SAS地址种子和所述扩展器所在的控制器的ID;
获取模块13,用于根据所述SAS地址种子和所述扩展器所在的控制器的ID,得到所述扩展器的SAS地址。
可选地,所述装置还包括:
确定模块,用于确定所述存储设备的扩展器是否存在下一级扩展器;
下一级扩展器的托盘ID获取模块,用于当所述存储设备的扩展器存在下一级扩展器时,获取所述下一级扩展器的托盘ID;
获取模块13,包括:
第一综合相加单元,用于当所述存储设备的扩展器不存在下一级扩展器时,对所述SAS地址种子和所述扩展器所在的控制器的ID进行综合相加,得到所述扩展器的SAS地址;
第二综合相加单元,用于当所述存储设备的扩展器存在下一级扩展器时,针对所述SAS地址种子和所述扩展器所在的控制器的ID进行综合相加,得到所述扩展器的SAS地址;针对所述SAS地址种子、所述扩展器所在的控制器的ID以及所述下一级扩展器的托盘ID进行综合相加,得到所述下一级扩展器的SAS地址。
可选地,所述分配模块11,包括:
第一分配单元,用于针对所述存储设备中多个控制器的多个扩展器,在所述存储设备的控制框中的背板上,对各个扩展器分配与所述扩展器对应的带电可擦可编程只读存储器中;
第二分配单元,用于基于所述存储设备的机型,对各个扩展器分配唯一的SAS地址种子;
写入单元,用于将各个所述SAS地址种子写入在与所述扩展器对应的带电可擦可编程只读存储器中。
可选地,所述写入单元,包括:
第一发送单元,用于当所述存储设备包括基板管理控制器的情况下,在所述存储设备生产时,通过所述存储设备对应的存储系统的IPMI指令工具,将所述SAS地址种子发送给所述基板管理控制器;
第二发送单元,用于所述基板管理控制器基于IIC协议将所述SAS地址种子发送给所述扩展器;
写入子单元,用于所述扩展器在接收到所述基板管理控制器发送的SAS地址种子之后,基于IIC协议,将所述SAS地址种子写入与所述扩展器对应的带电可擦可编程只读存储器。
可选地,所述写入单元,包括:
判断单元,用于当所述存储设备的扩展器存在下一级扩展器时,在所述扩展器接收到SAS地址种子之后,判断所述SAS地址种子归属的扩展器;
确定单元,用于基于所述SAS地址种子归属的扩展器,确定所述扩展器的下一级扩展器,将所述SAS地址种子分发给所述下一级扩展器,以使所述下一级扩展器将所述SAS地址种子写入与所述下一级扩展器对应的带电可擦可编程只读存储器。
可选地,所述读取模块12,包括:
读取单元,用于当所述存储设备的控制器上电之后,在预设IIC重试次数内,所述扩展器的多个扩展器基于IIC协议,访问所述扩展器对应的带电可擦可编程只读存储器,读取与所述扩展器对应的SAS地址种子;
存放单元,用于在所述读取与所述扩展器对应的SAS地址种子之后,将所述SAS地址种子放入缓存中备用。
可选地,所述读取模块12,包括:
控制器的ID获取单元,用于通过GPIO获取所述扩展器所在的控制器的ID,其中,所述控制器的ID是基于所述GPIO的高低电平确定得到的;
控制器的ID存放单元,用于在获取到所述控制器的ID之后,将所述控制器的ID放入缓存中备用。
可选地,所述装置还包括:
默认SAS地址种子写入模块,用于在所述针对存储设备中多个控制器的多个扩展器,对各个扩展器分配与所述扩展器对应的SAS地址种子之前,当所述存储设备初始上电时,针对所述存储设备中的各个控制器,在所述扩展器的固件中,写入默认SAS地址种子,其中,每个扩展器所对应的默认SAS地址种子相同;
所述装置还包括:
第一综合相加模块,用于针对所述扩展器的默认SAS地址种子、所述扩展器所在的控制器的ID以及所述扩展器的ID进行综合相加,得到所述扩展器在所述存储设备初始上电时的SAS地址。
可选地,所述装置还包括:
第二综合相加模块,用于在所述对所述SAS地址种子和所述扩展器所在的控制器的ID进行综合相加,得到所述扩展器的SAS地址之后,基于综合相加得到的所述SAS地址,对所述扩展器的初始化配置文件中存储的所述扩展器在所述存储设备初始上电时的SAS地址进行替换。
可选地,所述装置还包括:
第一同步写入模块,用于当存在第一扩展器和第二扩展器均属于第一控制器时,通过同步链路对所述第一扩展器的带电可擦可编程只读存储器中写入的第一SAS地址种子和所述第二扩展器的带电可擦可编程只读存储器中写入的第二SAS地址种子进行异常判断;
第一同步确定模块,用于在确定所述第一SAS地址种子和所述第二SAS地址种子相同时,基于所述第一SAS地址种子、所述第一控制器的ID以及所述第一扩展器的ID,确定所述第一扩展器的SAS地址;基于所述第二SAS地址种子、所述第一控制器的ID以及所述第二扩展器的ID,确定所述第二扩展器的SAS地址。
可选地,所述装置还包括:
第二同步写入模块,用于当存在第一扩展器属于第一控制器且第二扩展器属于第二控制器时,通过同步链路对所述第一扩展器的带电可擦可编程只读存储器中写入的第一SAS地址种子和所述第二扩展器的带电可擦可编程只读存储器中写入的第二SAS地址种子进行异常判断;
第二同步确定模块,用于在确定所述第一SAS地址种子和所述第二SAS地址种子相同时,基于所述第一SAS地址种子和所述第一控制器的ID确定所述第一扩展器的SAS地址;基于所述第二SAS地址种子和所述第二控制器的ID确定所述第二扩展器的SAS地址。
基于同一发明构思,本申请另一实施例还提供了一种电子设备,包括存储器、处理器以及存储在存储器上的计算机程序,其中,所述处理器执行所述计算机程序以实现如上述任一实施例所述的扩展器的SAS地址配置方法。
基于同一发明构思,本申请另一实施例还提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行如上述任一实施例所述的扩展器的SAS地址配置方法。
基于同一发明构思,本申请另一实施例还提供了一种计算机可读介质,其上存储有计算机程序,其中,所述程序被处理器执行时实现如上述任一实施例所述的扩展器的SAS地址配置方法。
对于装置而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本申请实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本申请实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请实施例是参照根据本申请实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本申请所提供的一种扩展器的SAS地址配置方法、设备、产品及介质,进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上,本说明书内容不应理解为对本申请的限制。
Claims (15)
1.一种扩展器的SAS地址配置方法,其特征在于,所述方法包括:
针对存储设备中多个控制器的多个扩展器,对各个扩展器分配与所述扩展器对应的SAS地址种子;
在所述扩展器执行初始化时,读取所述SAS地址种子和所述扩展器所在的控制器的ID;
根据所述SAS地址种子和所述扩展器所在的控制器的ID,得到所述扩展器的SAS地址。
2.根据权利要求1所述的扩展器的SAS地址配置方法,其特征在于,所述方法还包括:
确定所述存储设备的扩展器是否存在下一级扩展器;
当所述存储设备的扩展器存在下一级扩展器时,获取所述下一级扩展器的托盘ID;
所述根据所述SAS地址种子和所述扩展器所在的控制器的ID,得到所述扩展器的SAS地址,包括:
当所述存储设备的扩展器不存在下一级扩展器时,对所述SAS地址种子和所述扩展器所在的控制器的ID进行综合相加,得到所述扩展器的SAS地址;
当所述存储设备的扩展器存在下一级扩展器时,针对所述SAS地址种子和所述扩展器所在的控制器的ID进行综合相加,得到所述扩展器的SAS地址;针对所述SAS地址种子、所述扩展器所在的控制器的ID以及所述下一级扩展器的托盘ID进行综合相加,得到所述下一级扩展器的SAS地址。
3.根据权利要求1所述的扩展器的SAS地址配置方法,其特征在于,所述针对存储设备中多个控制器的多个扩展器,对各个扩展器分配与所述扩展器对应的SAS地址种子,包括:
针对所述存储设备中多个控制器的多个扩展器,在所述存储设备的控制框中的背板上,对各个扩展器分配与所述扩展器对应的带电可擦可编程只读存储器中;
基于所述存储设备的机型,对各个扩展器分配唯一的SAS地址种子;
将各个所述SAS地址种子写入在与所述扩展器对应的带电可擦可编程只读存储器中。
4.根据权利要求3所述的扩展器的SAS地址配置方法,其特征在于,所述将各个所述SAS地址种子写入在与所述扩展器对应的带电可擦可编程只读存储器中,包括:
当所述存储设备不包括基板管理控制器的情况下,在所述存储设备生产时,通过所述存储设备对应的存储系统的SCSI Generic指令工具,将所述SAS地址种子发送给扩展器;
在所述扩展器接收所述SAS地址种子之后,基于IIC协议,将所述SAS地址种子写入与所述扩展器对应的带电可擦可编程只读存储器。
5.根据权利要求3所述的扩展器的SAS地址配置方法,其特征在于,所述将各个所述SAS地址种子写入在与所述扩展器对应的带电可擦可编程只读存储器中,包括:
当所述存储设备包括基板管理控制器的情况下,在所述存储设备生产时,通过所述存储设备对应的存储系统的IPMI指令工具,将所述SAS地址种子发送给所述基板管理控制器;
所述基板管理控制器基于IIC协议将所述SAS地址种子发送给所述扩展器;
所述扩展器在接收到所述基板管理控制器发送的SAS地址种子之后,基于IIC协议,将所述SAS地址种子写入与所述扩展器对应的带电可擦可编程只读存储器。
6.根据权利要求3所述的扩展器的SAS地址配置方法,其特征在于,所述将各个所述SAS地址种子写入在与所述扩展器对应的带电可擦可编程只读存储器中,包括:
当所述存储设备的扩展器存在下一级扩展器时,在所述扩展器接收到SAS地址种子之后,判断所述SAS地址种子归属的扩展器;
基于所述SAS地址种子归属的扩展器,确定所述扩展器的下一级扩展器,将所述SAS地址种子分发给所述下一级扩展器,以使所述下一级扩展器将所述SAS地址种子写入与所述下一级扩展器对应的带电可擦可编程只读存储器。
7.根据权利要求1所述的扩展器的SAS地址配置方法,其特征在于,所述在所述扩展器执行初始化时,读取所述SAS地址种子,包括:
当所述存储设备的控制器上电之后,在预设IIC重试次数内,所述扩展器的多个扩展器基于IIC协议,访问所述扩展器对应的带电可擦可编程只读存储器,读取与所述扩展器对应的SAS地址种子;
在所述读取与所述扩展器对应的SAS地址种子之后,将所述SAS地址种子放入缓存中备用。
8.根据权利要求1所述的扩展器的SAS地址配置方法,其特征在于,所述在所述扩展器执行初始化时,读取所述扩展器所在的控制器的ID,包括:
通过GPIO获取所述扩展器所在的控制器的ID,其中,所述控制器的ID是基于所述GPIO的高低电平确定得到的;
在获取到所述控制器的ID之后,将所述控制器的ID放入缓存中备用。
9.根据权利要求2所述的扩展器的SAS地址配置方法,其特征在于,在所述针对存储设备中多个控制器的多个扩展器,对各个扩展器分配与所述扩展器对应的SAS地址种子之前,还包括:
当所述存储设备初始上电时,针对所述存储设备中的各个控制器,在所述扩展器的固件中,写入默认SAS地址种子,其中,每个扩展器所对应的默认SAS地址种子相同;
所述方法还包括:
针对所述扩展器的默认SAS地址种子、所述扩展器所在的控制器的ID以及所述扩展器的ID进行综合相加,得到所述扩展器在所述存储设备初始上电时的SAS地址。
10.根据权利要求9所述的扩展器的SAS地址配置方法,其特征在于,在所述对所述SAS地址种子和所述扩展器所在的控制器的ID进行综合相加,得到所述扩展器的SAS地址之后,还包括:
基于综合相加得到的所述SAS地址,对所述扩展器的初始化配置文件中存储的所述扩展器在所述存储设备初始上电时的SAS地址进行替换。
11.根据权利要求1所述的扩展器的SAS地址配置方法,其特征在于,所述方法还包括:
当存在第一扩展器和第二扩展器均属于第一控制器时,通过同步链路对所述第一扩展器的带电可擦可编程只读存储器中写入的第一SAS地址种子和所述第二扩展器的带电可擦可编程只读存储器中写入的第二SAS地址种子进行异常判断;
在确定所述第一SAS地址种子和所述第二SAS地址种子相同时,基于所述第一SAS地址种子、所述第一控制器的ID以及所述第一扩展器的ID,确定所述第一扩展器的SAS地址;基于所述第二SAS地址种子、所述第一控制器的ID以及所述第二扩展器的ID,确定所述第二扩展器的SAS地址。
12.根据权利要求1所述的扩展器的SAS地址配置方法,其特征在于,所述方法还包括:
当存在第一扩展器属于第一控制器且第二扩展器属于第二控制器时,通过同步链路对所述第一扩展器的带电可擦可编程只读存储器中写入的第一SAS地址种子和所述第二扩展器的带电可擦可编程只读存储器中写入的第二SAS地址种子进行异常判断;
在确定所述第一SAS地址种子和所述第二SAS地址种子相同时,基于所述第一SAS地址种子和所述第一控制器的ID确定所述第一扩展器的SAS地址;基于所述第二SAS地址种子和所述第二控制器的ID确定所述第二扩展器的SAS地址。
13.一种电子设备,其特征在于,包括存储器、处理器以及存储在存储器上的计算机程序,其中,所述处理器执行所述计算机程序以实现如权利要求1-12中任一项所述的扩展器的SAS地址配置方法。
14.一种计算机可读介质,其特征在于,其上存储有计算机程序,其中,所述计算机程序被处理器执行时实现如权利要求1-12中任一项所述的扩展器的SAS地址配置方法。
15.一种计算机程序产品,包括计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求1-12中任一项所述的扩展器的SAS地址配置方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410592682.3A CN118192904A (zh) | 2024-05-14 | 2024-05-14 | 扩展器的sas地址配置方法、设备、产品及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410592682.3A CN118192904A (zh) | 2024-05-14 | 2024-05-14 | 扩展器的sas地址配置方法、设备、产品及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN118192904A true CN118192904A (zh) | 2024-06-14 |
Family
ID=91404394
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410592682.3A Pending CN118192904A (zh) | 2024-05-14 | 2024-05-14 | 扩展器的sas地址配置方法、设备、产品及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN118192904A (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110107002A1 (en) * | 2009-11-05 | 2011-05-05 | Emulex Design & Manufacturing Corporation | SAS Expander-Based SAS/SATA Bridging |
US20170168730A1 (en) * | 2015-12-15 | 2017-06-15 | Quanta Computer Inc. | System and method for storage area network management using serial attached scsi expander |
CN115454335A (zh) * | 2022-08-31 | 2022-12-09 | 苏州浪潮智能科技有限公司 | 一种地址生成方法、装置、设备和存储介质 |
CN115686374A (zh) * | 2022-11-10 | 2023-02-03 | 阿里巴巴(中国)有限公司 | 信息获取方法、装置、存储系统、设备及介质 |
CN116627861A (zh) * | 2023-07-25 | 2023-08-22 | 苏州浪潮智能科技有限公司 | 基于扩展器的数据处理方法、系统、电子设备及存储介质 |
-
2024
- 2024-05-14 CN CN202410592682.3A patent/CN118192904A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110107002A1 (en) * | 2009-11-05 | 2011-05-05 | Emulex Design & Manufacturing Corporation | SAS Expander-Based SAS/SATA Bridging |
US20170168730A1 (en) * | 2015-12-15 | 2017-06-15 | Quanta Computer Inc. | System and method for storage area network management using serial attached scsi expander |
CN115454335A (zh) * | 2022-08-31 | 2022-12-09 | 苏州浪潮智能科技有限公司 | 一种地址生成方法、装置、设备和存储介质 |
CN115686374A (zh) * | 2022-11-10 | 2023-02-03 | 阿里巴巴(中国)有限公司 | 信息获取方法、装置、存储系统、设备及介质 |
CN116627861A (zh) * | 2023-07-25 | 2023-08-22 | 苏州浪潮智能科技有限公司 | 基于扩展器的数据处理方法、系统、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6850997B1 (en) | System, method, and program for determining the availability of paths to a device | |
US10175973B2 (en) | Microcode upgrade in a storage system | |
TWI595364B (zh) | 自動修復映像檔的方法及伺服器系統 | |
GB2507604A (en) | Rack and method thereof for simultaneously updating basic input output systems | |
CN110083494A (zh) | 在多核心环境中管理硬件错误的方法和装置 | |
US8868793B2 (en) | SAS expander system and method for dynamically allocating SAS addresses to SAS expander devices | |
CN110580235B (zh) | 一种sas扩展器通信方法及装置 | |
CN103176913B (zh) | 硬盘动态映射方法与应用其的服务器 | |
JP2019175424A (ja) | ケーブルのエラーをチェックする方法及びシステム | |
CN115242752A (zh) | 电池管理系统的地址分配方法、装置、设备及介质 | |
CN111343300A (zh) | 地址自动分配的方法及通讯系统 | |
TW201327162A (zh) | 硬碟動態映射方法與應用其之伺服器 | |
CN112422704B (zh) | 用于多设备的地址分配方法、装置及存储介质 | |
CN110618828B (zh) | 一种数据更新方法及装置 | |
US9870234B2 (en) | Automatic identification of returned merchandise in a data center | |
CN117687695A (zh) | 信息处理方法、装置、电子设备及存储介质 | |
CN118192904A (zh) | 扩展器的sas地址配置方法、设备、产品及介质 | |
CN104951254B (zh) | 一种管理存储设备的方法及装置 | |
CN115865866A (zh) | 地址分配方法及装置 | |
CN104678292A (zh) | 一种复杂可编程逻辑器件cpld测试方法和装置 | |
CN103488505A (zh) | 补丁方法、设备及系统 | |
CN114637551A (zh) | 设备驱动方法、系统及存储介质 | |
CN109144788B (zh) | 一种重建osd的方法、装置及系统 | |
US20170111224A1 (en) | Managing component changes for improved node performance | |
JP4798351B2 (ja) | コンピュータシステム、インタフェース割付方法およびプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination |