CN102591838B - 一种确定性sas发现和配置的方法 - Google Patents

一种确定性sas发现和配置的方法 Download PDF

Info

Publication number
CN102591838B
CN102591838B CN201110349628.9A CN201110349628A CN102591838B CN 102591838 B CN102591838 B CN 102591838B CN 201110349628 A CN201110349628 A CN 201110349628A CN 102591838 B CN102591838 B CN 102591838B
Authority
CN
China
Prior art keywords
sas
extender
bcr
node
change
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.)
Expired - Fee Related
Application number
CN201110349628.9A
Other languages
English (en)
Other versions
CN102591838A (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.)
Avago Technologies General IP Singapore Pte Ltd
Original Assignee
Infineon Technologies North America Corp
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 Infineon Technologies North America Corp filed Critical Infineon Technologies North America Corp
Publication of CN102591838A publication Critical patent/CN102591838A/zh
Application granted granted Critical
Publication of CN102591838B publication Critical patent/CN102591838B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4221Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being an input/output bus, e.g. ISA bus, EISA bus, PCI bus, SCSI bus
    • 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/0028Serial attached SCSI [SAS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Systems (AREA)
  • Computer And Data Communications (AREA)
  • Bus Control (AREA)

Abstract

本发明涉及一种确定性SAS发现和配置的方法。该方法包括将SMPDISCOVER请求从SAS域的节点传送到该SAS域的每一个扩展器。该方法进一步包括在该节点接收来自被包括在该SAS域的每一个扩展器的SMP DISCOVER响应。该方法进一步包括将在该接收到SMP DISCOVER响应的每一个中所提供BCR数与已存储的BCR数比较,所述已存储的BCR数在所述SMP DISCOVER请求的所述传送之前已经由该节点记录和存储。该方法进一步包括基于所述接收到的BCR数更新该已存储的BCR数。该方法进一步包括从该节点选择性地将第二SMPDISCOVER请求传送到该SAS域的至少一个,但非所有扩展器。

Description

一种确定性SAS发现和配置的方法
技术领域
本发明涉及通过数据存储***的数据管理领域,特别地,涉及一种确定性串行连接小型计算机***接口(SAS)发现和配置的方法。
背景技术
当前可获得的在SAS域中提供SAS发现的方法可能未提供所期望的性能等级。
因此,可期望的是提供一种在SAS域中提供SAS发现的方法,其处理当前可获得方案的上面提到的缺点。
发明内容
相应地,本发明的实施方案针对一种在SAS域中实施SAS发现的方法,所述方法包括:将SMP DISCOVER请求从该SAS域的节点传送到被包括在该SAS域的多个扩展器中的每一个扩展器;在该节点接收来自被包括在该SAS域的多个扩展器中每一个扩展器的SMP DISCOVER响应,所述SMP DISCOVER响应响应于所述SMPDISCOVER请求;将接收到的SMP DISCOVER响应的每一个中所提供的BCR数与已存储的BCR数比较,所述已存储的BCR数在所述SMP DISCOVER请求的所述传送之前已经由该节点记录和存储;基于所述接收到的BCR数更新该已存储的BCR数;基于所述比较优化SAS发现算法;基于所述比较,绕过被包括在该多个扩展器中的一第一扩展器;基于所述比较,将第二SMP DISCOVER请求从该节点传送到被包括在该多个扩展器中的一第二扩展器,其中所述节点是下列之一:启动器和自配置扩展器,其中在该接收到的SMP DISCOVER响应中所提供的BCR数指示由这些扩展器的每一个PHY所接收的BROADCAST(CHANGE)基元数量,其中每一个扩展器在接收到来自该SAS域的一远程装置的BROADCAST(CHANGE)基元后增加该扩展器的BCR数。
本发明的另一实施方案针对一种非暂时性,计算机可读介质,具有计算机可执行指令以实施在SAS域中SAS发现的方法,所述方法包括:将SMP DISCOVER请求从该SAS域的节点传送到被包括在该SAS域的多个扩展器中的每一个扩展器;在该节点接收来自被包括在该SAS域的多个扩展器中的每一个扩展器的SMPDISCOVER响应,所述SMP DISCOVER响应响应于所述SMP DISCOVER请求;将在接收到的SMP DISCOVER响应的每一个中所提供的BCR数与已存储的BCR数比较,所述已存储的BCR数在所述SMP DISCOVER请求的所述传送之前已经由该节点记录和存储;基于所述接收到的BCR数更新该已存储的BCR数;基于所述比较优化SAS发现算法;基于所述比较,绕过被包括在该多个扩展器中的一第一扩展器;基于所述比较,将第二SMP DISCOVER请求从该节点传送到被包括在该多个扩展器中的一第二扩展器,其中所述节点是下列之一:启动器和自配置扩展器,其中在该接收到的SMP DISCOVER响应中所提供的BCR数指示由这些扩展器的每一个PHY所接收的BROADCAST(CHANGE)基元数量,其中每一个扩展器在接收到来自该SAS域的一远程装置的BROADCAST(CHANGE)基元后增加该扩展器的BCR数。
本发明的又一实施方案针对SAS域的SAS发现启动节点,所述节点包括:接口,构形用以通信地将该节点耦合该SAS域的多个扩展器;存储器,所述存储器被构形用以存储多个BCR数;和微处理器,所述微处理器连接到该存储器和该接口,所述微控制器被构形用以当该节点接收来自被包括在该SAS域的多个扩展器中的一个扩展器的BROADCAST(CHANGE)基元时,使该节点将第一串行管理协议(SMP)DISCOVER请求传送到被包括在该SAS域的多个扩展器中的每一个扩展器,所述节点进一步被构形用以通过该接口接收多个SMP DISCOVER响应,将所述多个SMPDISCOVER响应从该SAS域的多个扩展器发送,所述SMP DISCOVER响应响应于所述第一SMP DISCOVER请求,所述节点进一步被构形用以将在该接收到SMPDISCOVER响应的每一个中所提供的BCR数与已存储的BCR数比较,所述已存储的BCR数在所述第一SMP DISCOVER请求的所述传送之前已经由该节点记录和存储,其中所述节点基于所述接收到的BCR数更新该已存储的BCR数,其中所述节点被构形用以基于该接收到BCR数与该先前记录BCR数的所述比较优化该节点的SAS发现算法,其中,基于所述比较,所述节点被构形用以绕过被包括在该多个扩展器中的一第一扩展器,其中,基于所述比较,配置所述节点将第二SMP DISCOVER请求传送到被包括在该多个扩展器中的一第二扩展器,其中所述节点是下列之一:启动器和自配置扩展器,其中在该接收到的SMP DISCOVER响应中所提供的BCR数指示由这些扩展器的每一个PHY所接收的BROADCAST(CHANGE)基元数量,其中每一个扩展器在接收到来自该SAS域的一远程装置的BROADCAST(CHANGE)基元后增加其BCR数。
本发明的另一实施方案针对一种SAS扩展器,所述SAS扩展器包括:接口,将所述接口配置用来将该扩展器连接到SAS域的多个SAS装置,所述接口包括多个SAS PHY;存储器,将所述存储器配置用来存储该SAS扩展器的多个BCR计数器,被包括在该多个BCR计数器中的每一个BCR计数器对应于被包括在该多个SASPHY中的SAS PHY,配置每一个BCR计数器用来指示由其对应SAS PHY所接收的BROADCAST(CHANGE)基元数;和微处理器,所述微处理器连接该存储器和连接该接口,所述微处理器被构形用以在由被包括在该SAS扩展器的多个SAS PHY中的一SAS PHY接收BROADCAST(CHANGE)基元时进行监视,所述微处理器进一步被构形用以在该多个BCR计数器中记录由该SAS扩展器的对应的SAS PHY的每一个所接收的BROADCAST(CHANGE)基元数量,所述微处理器使得所述计数器对于由他们对应的PHY所接收的每一个BROADCAST(CHANGE)基元增加一个,所述微处理器被构形用以通过该接口接收由被包括在该SAS域的多个SAS装置中的SAS发现启动节点所传送的串行管理协议(SMP)DISCOVER请求,所述微处理器进一步被构形用以使该SAS扩展器通过该接口将响应于所述SMPDISCOVER请求的SMP DISCOVER响应传送到该SAS发现启动节点,其中所述SMP DISCOVER响应包括该SAS扩展器的BCR计数器每一个的BCR数。
应当理解,上述概述和以下具体说明都仅仅是示范性和说明性的且不是对所请求发明的必要限制。并入且构成本说明书一部分的附图,描述了本发明的实施方案并与该概述一起用来解释本发明的原理。
附图说明
通过参照这些附图,本领域技术人员可能更好地理解本发明的众多优点,其中:
图1是SAS域的方框图描述,通过其可实施本发明的SAS发现方法,依照本发明的示范性实施方案;
图2是图1所示的SAS域的方框图描述,其中将第一SMP DISCOVER请求显示为从该SAS域的SAS发现启动节点处沿着该SAS域的多个通道的每一个传送到该SAS域的每一个扩展器,依照本发明的示范性实施方案;
图3是图1所示的SAS域的方框图描述,其中将后续(第二)SMP DISCOVER请求显示为从该SAS发现启动节点处仅沿着该多个通道之一传送,选择性地传送所述第二SMP DISCOVER请求,基于由该SAS发现启动节点的已存储的BCR数与响应于该第一SMP DISCOVER请求的SMP DISCOVER响应中其所接收BCR数(例如,BCR数信息,BCR数数据)之间的比较;
图4是描述在SAS域中实施SAS发现的方法的流程图,如图1所示的SAS域,依照本发明的示范性实施方案;
图5是配置用来实施在SAS域中的SAS扩展器的方框图描述,如图1所示的SAS域,依照本发明的示范性实施方案;和
图6是配置用来实施在SAS域中的SAS发现启动节点的方框图描述,如图1所示的SAS域,依照本发明的示范性实施方案。
具体实施方式
现在将具体地对本发明的先前优选实施方案做出标记,其实施例在附图中被描述。
串行连接小型计算机***接口(SAS)发现基于扩展器正发送的BROADCAST(CHANGE)基元,当每次该扩展器的SAS PHY或SAS链路的状态改变时。这些SAS PHY状态改变和/或SAS链路状态改变可能发生在对终端装置或扩展器上电时,在增加/移除终端装置或扩展器时,和/或在链路速率改变时。当为SAS域的扩展器发生SAS PHY状态改变和SAS链路状态改变时,可由该扩展器将BROADCAST(CHANGE)基元发送到该SAS域内的每一个启动器并发送到该SAS域内的每一个其他扩展器。当该SAS域的任意启动器和/或自配置扩展器接收到该BROADCAST(CHANGE)基元时,发现过程(例如,-SAS发现)的过程可能开始于已经进行了状态改变的SAS域内的PHY的寻找尝试中。基于该发现过程的结果,该启动器和自配置扩展器可能相应地调制他们自己的配置。例如,该自配置扩展器可能更新他们自身的路由表,而该启动器可能通知他们的操作***计数器或这些状态改变的RAID栈主机副本。
当前,在启动器或自配置扩展器接收到BROADCAST(CHANGE)基元时,SAS发现需要每一个启动器和自配置扩展器检查该SAS域内的所有扩展器(或自配置扩展器的情况中,所有其他扩展器)用于可能已经发生的任意和所有改变(例如,-状态变化,PHY变化,链路变化)。例如,该启动器和自配置扩展器可通过将串行管理协议(SMP)DISCOVER请求发送到这些扩展器来检查该SAS域内的扩展器。使用当前SAS发现方法(和当前SAS发现算法),可为这些状态改变检查该SAS域的所有通道。这可能是非常无效率的,因为该SAS域可能具有许多通道但仅仅这些通道的小的子集可能实际为该变化所影响。在较大的SAS域中,放大了当前SAS发现方法的上述无效和不必要的SAS发现开销,且可能导致***问题和扰乱的等待时间。本发明的实施方按描述了SAS发现方法,其中可在以下之际交换信息(例如,-SMP请求和/或SMP响应):1)该SAS域的启动器和扩展器;和/或2)该SAS域内的自配置扩展器和其他扩展器(例如,-目标扩展器)之间,在指定接收了一个或多个BROADCAST(CHANGE)基元的该SAS域内所有扩展器的PHY的发现操作期间,其能够用来确定该BROADCAST(CHANGE)基元的指定通道和起源,据此消除任意不必要通道发现操作(例如,-可消除针对不受该状态改变所影响的通道的发现操作)。
参照图1,示出了依照本发明示范性实施方按的SAS***(例如,-SAS域,SAS拓扑)。在本发明的示范性实施方按中,该SAS***100可包括一个或多个SAS启动节点102。例如,该SAS发现启动节点102可以是启动器102或自配置扩展器102。在本发明的另一实施方案中,该SAS***100可包括多个扩展器104,所述多个扩展器104连接到(例如,-通信地耦合于)该节点102。在本发明的又一实施方案中,该SAS***100可包括多个目标装置106(例如,-SAS目标装置106),该多个目标装置106连接到(例如,-通信地耦合于)该多个扩展器104,该多个目标装置106也通过该多个扩展器104连接到(例如,-通信地耦合于)该节点102(例如,-启动器102)。
在本发明的另一实施方案中,该节点102,该多个扩展器104和该目标装置106可通过多个链路108(例如,-L1,L2,L3,L4,L5,L6,L7,L8,L9和L10,如图1所示)通信地耦合。例如,该多个链路108(例如,-线路)可以是由SAS缆线所提供的点对点串行连接。在本发明的又一实施方案中,被包括在该多个目标装置106中的每一个目标装置106,被包括在该多个扩展器104中的每一个扩展器104,和每一个节点102可包括一个或多个PHY 110(例如,-一个或多个SAS PHY 110)。在本发明的示范性实施方案中,每一个PHY 110可包含发射器装置和接收器装置其用作由链路108所连接的点对点连接中的终点。例如,可配置每一个PHY 110用来电性接入链路108以与所述链路108的对立端处另一PHY 110进行通信。在本发明的另一实施方案中,每一个链路108可包括两个差分信号对,每一个处于各自方向中。如上所述,每一个目标装置106,每一个扩展器104和每一个发现启动节点102可包括一个或多个PHY 110。在本发明的又一实施方案中,每一个SAS装置(例如,-目标装置106,扩展器104和/或发现启动节点102)可包括一个或多个端口,所述一个或多个端口每一个包括一个或多个该SAS装置的PHY 110(例如,-SAS PHY110)。
在本发明的当前示范性实施方案中,该目标装置106可以是存储装置,如磁盘驱动器,其被配置用来接收来自发现启动节点102处的命令。在本发明的另一实施方案中,该发现启动节点102可以是在主计算机中的SAS主机总线适配器,或在廉价磁盘冗余阵列(RAID)控制器中的SAS输入/输出(I/O)控制器。在本发明的又一实施方案中,该扩展器104(例如,-SAS扩展器104)可被配置用来实施该多个目标装置106到单个发现启动节点102的连接(如图1所示)。例如,可配置该SAS扩展器104用来实施类似开关功能,如路由,以使得SAS启动器102和目标装置106通过该SAS点对点连接(例如,-SAS链路108)进行通信。在本发明的另一实施方案中,该扩展器104的一个或多个可以是自配置扩展器104。
在本发明的示范性实施方案中,可配置每一个扩展器104用来检测,当改变(例如,-状态改变)发生于该扩展器104的SAS PHY 110和/或SAS链路108时。例如,这些SAS PHY状态改变和/或SAS链路状态改变可能发生在对该SAS域100的终端装置(例如,-目标装置106)或该SAS域100的扩展器104上电时,在将扩展器104的终端装置增加到/移除于该SAS域处时,和/或在链路速率改变时。在本发明的示范性实施方案中,当该多个扩展器104的第一扩展器104检测到其SAS PHY110或SAS链路108之一的上述状态改变时,可配置该第一扩展器104用来将BROADCAST(CHANGE)基元传送到被包括在该多个扩展器104中的其他扩展器104的每一个,且同样传送到该SAS发现启动节点102。当SAS发现启动节点102,如启动器102或自配置扩展器102,接收到该BROADCAST(CHANGE)基元时,该SAS发现启动节点102可将发现过程(例如,-SAS发现过程)启动于进行了该状态改变的SAS域100内SAS PHY 110和/或SAS链路108的寻址尝试中。基于该发现过程的结果,该SAS发现启动节点102(例如,-启动器102,自配置扩展器102,可被配置用来相应地调制他们自己的配置。例如,该自配置扩展器102可能更新他们自身的路由表,而该启动器102可能通知他们的操作***计数器或这些状态改变的RAID栈主机副本。
图4是描述通过图1所示的SAS***100(例如,-SAS域100)实施SAS发现的方法的流程图,依照本发明的示范性实施方案。该方法400包括将SMPDISCOVER请求从该SAS域的节点传送到被包括在该SAS域的多个扩展器中的每一个扩展器的步骤402。如上所述,在检测到其自己SAS PHY 110或SAS链路108的一个或多个的状态改变之后,可配置被包括在该多个扩展器104中的第一扩展器104用来将BROADCAST(CHANGE)基元传送到被包括在该多个扩展器104中的其他扩展器104的每一个,且也传送到该SAS发现启动节点102。在该示范性描述的实施方案中,如图1-3所示,该第一扩展器104(示为该图1-3中的“扩展器3”)可检测已经发生在其SAS PHY 110和/或SAS链路的一个或多个内的状态改变且可以将BROADCAST(CHANGE)基元传送到被包括在该多个扩展器104中的其他扩展器104的每一个,且也传送到该SAS发现启动节点102(示为该图1-3中的“启动器”)。如上所述,在接收到该BROADCAST(CHANGE)基元之后,该SAS发现启动节点102可启动SAS发现过程于寻找哪一个SAS PHY 110和/或SAS链路108已进行所述状态改变的尝试中。该SAS发现启动节点102可通过将SMP DISCOVER请求传送到被包括在该SAS域100的多个扩展器104中每一个扩展器104来实现这些。
在本发明的另一实施方案中,该方法400可进一步包括在该节点接收来自被包括在该SAS域的多个扩展器中的每一个扩展器的SMP DISCOVER响应,所述SMPDISCOVER响应响应于所述SMP DISCOVER请求的步骤404。例如,在从该SAS发现节点102接收到该SMP DISCOVER请求之后,被包括在该多个扩展器104中的每一个扩展器104可将其自己唯一SMP DISCOVER响应传送到该SAS发现启动节点102,所述SAS发现启动节点102被配置用来接收所述SMP DISCOVER响应,所述SMP DISCOVER响应响应于所述SMP DISCOVER请求。如上所述,在检测其自己SAS PHY 110或SAS链路108的一个或多个的状态改变之后,可配置被包括在该多个扩展器104内的第一扩展器104用来将BROADCAST(CHANGE)基元传送到被包括在该多个扩展器104中的其他扩展器104的每一个,且也传送到该SAS发现启动节点102。如上所述,在该示范性描述的实施方案中,如图1-3所示,该第一扩展器(示为该图1-3中的“扩展器3”)可检测已经发生在其SAS PHY 110和/或SAS链路的一个或多个内的状态改变且可以将BROADCAST(CHANGE)基元传送到被包括在该多个扩展器104中的其他扩展器104的每一个,且也传送到该SAS发现启动节点102(示为该图1-3中的“启动器”)。可配置被包括在该多个扩展器104中的每一个扩展器104用来跟踪和记录:a)何时其从该SAS域的远程装置/其他装置(例如,-其他扩展器104)处接收到BROADCAST(CHANGE)基元;b)从所述远程装置处接收到的BROADCAST(CHANGE)基元的数量;和c)其PHY 110的哪一个已从所述远程装置处接收到该BROADCAST(CHANGE)基元。在另一实施方案中,每一个扩展器104可实施一个或多个计数器(例如,-包装计数器),其可被称为BROADCAST(CHANGE)RECEIVED(BCR)计数器用来记录和跟踪,在先前PHY基础上,与BROADCAST(CHANGE)基元相关的上述信息。例如,每一个扩展器104可包括其PHY 110每一个的独立计数器用来跟踪与BROADCAST(CHANGE)基元有关的上述信息。在又一实施方案中,每一个扩展器104增加(例如,-为接收到的每一个BROADCAST(CHANGE)基元加1)其自己BCR计数器,当该扩展器104的PHY 110之一从该SAS域100的远程装置(例如,-另一个扩展器104)处接收到BROADCAST(CHANGE)基元时,但不增加其BCR计数器,当其PHY 110的第一个接收到从其PHY 110的第二个处已经推送到的BROADCAST(CHANGE)基元。在所述实施方案中,由于“扩展器3”是传送到该域100的所有其他扩展器104的BROADCAST(CHANGE)基元的源(例如,-起源),其未接收到该BROADCAST(CHANGE)基元,“扩展器3”将在该例子中不增加其计数器。然而,该域100的其他扩展器104的每一个将增加其计数器。在本发明的另一实施方案中,该计数器可以是16位或32位计数器。
如上所述,在从该SAS发现启动节点102处接收到该SMP DISCOVER请求之后,被包括在该多个扩展器104中的每一个扩展器104可将其自己唯一SMPDISCOVER响应传送到该SAS发现启动节点102,所述SMP DISCOVER响应响应于所述SMP DISCOVER请求。在本发明的示范性实施方案中,每一个扩展器104可将其自己唯一SMP DISCOVER响应、其BCR计数器、BCR计数器信息和/或BCR数信息(例如,-BCR数)包括在内。该BCR数信息(例如,-BCR数)可指出该扩展器104的哪一个PHY 110已经接收到BROADCAST(CHANGE)基元和/或由该扩展器104的每一个PHY 110已经接收到多少BROADCAST(CHANGE)基元。进一步地,如上所述,配置所述SAS发现启动节点102用来接收所述SMP DISCOVER响应,包括该域100的每一个扩展器104的BCR数。在本发明的又一实施方案中,配置每一个SAS发现启动节点102用来记录、跟踪和/或监视该SAS域100的每一个PHY 110的BCR数。
在本发明的示范性实施方案中,该方法400可进一步包括将在该接收到SMPDISCOVER响应的每一个中所提供的BCR数与已存储的BCR数比较,所述已存储的BCR数在所述SMPDISCOVER请求的所述传送之前已经由该节点记录和存储的步骤406。例如,当该SAS发现启动节点102从该域100的扩展器104每一个接收到该SMP DISCOVER响应时,该SAS发现节点102可将该扩展器104的BCR数(其在该SMP DISCOVER响应中接收到)与该扩展器104的先前已记录BCR数(该扩展器104的所述先前已存储的BCR数已经先前由该SAS发现启动节点102记录和/或存储)进行比较。基于该比较,可配置该SAS发现启动节点102用来快速确定哪一个扩展器104的哪一个PHY接收到已传送的BROADCAST(CHANGE)基元。例如,在该所述实施方案中,由于“扩展器3”是传送到该域100的所有其他扩展器104的BROADCAST(CHANGE)基元的源(例如,-起源),且未接收到该BROADCAST(CHANGE)基元,该SAS发现启动节点102将能够通过所述比较确定“扩展器3”的BCR数将不会已经变化,由于该“扩展器3”的最后BCR数由该发现启动节点102所记录。因而,该发现启动节点102将能够确定该“扩展器3”尚未接收到该最仅传送的BROADCAST(CHANGE)基元。使用所述信息,该发现启动节点102能够确定性地(例如,-选择性地)发送或针对进一步或后续SAS发现事务(后续SMP DISCOVER请求),通过该域的选择的通道(例如,-到选择的扩展器104,沿着选择的通道108)用于更有效地确定哪一个PHY 110,扩展器104和/或通道已经由该最近状态改变所影响。这允许SAS发现事务的减少,使得不是将附加或后续SAS发现请求指向该扩展器104每一个和/或沿着该域100所有通道(112,114,116),该SAS发现启动节点102可将这样事务发送到该域100的选择的扩展器104,据此缓和和/或阻止与当前SAS域相关的潜在的等待时间问题。图2中的所述实施方案示出了针对该域的所有扩展器104的初始SMP DISCOVER请求(例如,-沿着三个独立的通道)。如上所述,使用来自所述BCR数比较的信息,该SAS发现启动节点102(例如,-启动器102,自配置扩展器102)可确定该状态改变已经影响了“扩展器3”,因而,该SAS发现启动节点102可聚焦、缩窄和/或选择性地针对后续SAS发现事务(例如,-后续SMP DISCOVER请求),沿着将所述后续SMPDISCOVER请求提供给“扩展器3”的单个(例如,-第一个)通道112(如图3所示)。例如,可将后续SAS发现事务提供给(例如,-路由到)“扩展器3”,通过“扩展器1”和“扩展器2”,沿着链路L1,L2和L3。
在本发明的另一实施方案中,该方法400进一步包括基于所述接收到的BCR数更新该已存储的BCR数的步骤408。如上所述,可配置每一个SAS发现启动节点102用来跟踪和/或记录该SAS域100的每一个PHY 110的BCR数。基于为该SAS域100的PHY 110的该最新接收到BCR数与其先前记录BCR数的比较,配置该SAS发现启动节点102用来更新其已存储的BCR数(例如,-已存储的BCR数表),基于所述与该最新接收BCR数的比较。
在本发明的示范性实施方案中,该方法400可进一步包括基于所述比较来优化该节点的SAS发现算法的步骤410。在进一步实施方案中,该方法400可进一步包括基于所述比较,绕过被包括在该多个扩展器中的第一扩展器的步骤412。在示范性实施方案中,在将该最新接收到BCR数与该先前已存储的BCR数的比较之后,可配置该SAS发现启动节点102用来再选择或绕过该域100的一个或多个扩展器104。如上所述,在该所述实施方案中,可配置该SAS发现启动节点102用来基于所述比较来确定该最近状态改变已经影响到“扩展器3”而不是该域100的任意其他扩展器104,且该后续SMP DISCOVER请求需要仅沿着该域100的第一通道112指向“扩展器3”,而不是沿着该域的第二和第三通道(114,116)。随后该SAS发现启动节点102相应地优化其SAS发现算法。通过做出该后续SMP DISCOVER请求未沿着该第二和第三通道(114,116)进行指向的确定,该SAS发现启动节点102有效地绕过沿着这些通道(114,116)定位的该域100的扩展器104。
在本发明的另一实施方案中,该方法400可进一步包括基于所述比较,将第二SMP DISCOVER请求从该节点传送到被包括在该多个扩展器中的第二扩展器的步骤414。如上所述,基于所述比较,可配置该SAS发现启动节点102用来确定将后续(例如,-跟随)SAP DISCOVER请求传送到被包括在该多个扩展器104中一个或多个选择的扩展器104处以获得与该最近状态改变相关的更多信息。例如,如图3所示,在基于所述比较确定该最近状态改变已经影响到“扩展器3”而不是该域100的任意其他扩展器104之后,该后续SMP DISCOVER请求可仅沿着该域100的第一通道112指向(由该SAS发现启动节点102所传送)“扩展器3”。
图5描述了SAS扩展器104,依照本发明的示范实施方案。该SAS扩展器104可包括接口125,配置所述接口125用来将该扩展器连接到SAS域的多个SAS装置,所述接口125包括多个SAS PHY 110。该SAS扩展器104可进一步包括存储器118,配置所述存储器118用来存储该SAS扩展器104的多个BCR计数器120,被包括在该多个BCR计数器120中的每一个BCR计数器120对应于被包括在该多个SAS PHY110中的SAS PHY 110,配置每一个BCR计数器120用来指示由其对应SAS PHY 110所接收的BROADCAST(CHANGE)基元数量。该SAS扩展器104可进一步包括微处理器122。该微处理器122可连接到该存储器118且连接到该接口125,配置所述微处理器122用来在由被包括在该SAS扩展器104的多个SAS PHY 110中的SASPHY 110接收BROADCAST(CHANGE)基元时进行监视,进一步配置所述微处理器122用来在该多个BCR计数器中记录由该SAS扩展器104的对应SAS PHY 110的每一个所接收的BROADCAST(CHANGE)基元数量。在本发明的进一步实施方案中,该微处理器122可使得该计数器120加一,对于由他们对应PHY 110所接收的每一个BROADCAST(CHANGE)基元。在又一实施方案中,配置所述微处理器122用来通过该接口125从被包括在该SAS域100的SAS发现启动节点102处接收SMP DISCOVER请求。在另一实施方案中,配置所述微处理器122用来使得该SAS扩展器104通过该接口125将SMP DISCOVER响应传送到该SAS发现启动节点102,所述SMP DISCOVER响应响应于该SMP DISCOVER请求,所述SMP DISCOVER响应包括该SAS扩展器的BCR计数器每一个的BCR数。
图6描述了该SAS发现启动节点102(例如,-启动器102,自配置扩展器102),依照本发明的示范性实施方案。该SAS发现启动节点102可包括接口130,配置所述接口130用来通信地将该节点102耦合到该SAS域100的多个扩展器104。该SAS发现启动节点102可进一步包括存储器132,配置所述存储器132用来为该SAS域100的每一个扩展器104的每一个PHY 110存储多个BCR数。该SAS发现启动节点102可进一步包括微处理器134,所述微处理器134连接到该存储器132和该接口130。配置该微处理器134用来使得该节点102将第一SMP DISCOVER请求传送到被包括在该SAS域100的多个扩展器104中的每一个扩展器104,当该节点102从被包括在该SAS域100的多个扩展器104中的扩展器104处接收到BROADCAST(CHANGE)基元。进一步配置该节点102用来通过该接口130接收多个SMPDISCOVER响应,所述多个SMP DISCOVER响应从该SAS域100的每一个扩展器104处被传送,所述SMP DISCOVER响应响应于所述第一SMP DISCOVER请求。进一步配置该节点102用来将在该接收到SMP DISCOVER响应的每一个中提供的BCR数与该已存储的BCR数进行比较,所述已存储的BCR数在所述第一SMPDISCOVER请求的所述传送之前已经由该节点102所记录和存储。进一步地,可配置该节点102用来基于所述接收到的BCR数对该已存储的BCR数更新。在另一实施方案中,配置该节点102用来基于该接收BCR数与先前已记录BCR数的所述比较来优化该节点102的SAS发现算法。进一步地,基于所述比较,配置所述节点102用来绕过被包括在该多个扩展器104中的第一扩展器104。进一步地,基于所述比较,配置所述节点102用来选择性地将第二SMP DISCOVER请求传送到被包括在该多个扩展器104中的第二扩展器104。
此处所公开的方法允许在SAS域缩放到非常大的域时可促进改善的可靠性和性能的通道预测。这对于在增加和/或移除SAS终端装置和发生错误时***剩余部分的通知是重要的。进一步地,此处所公开的方法可最小化在该***剩余部分上的坏(例如,-故障)的装置的影响,其属于服务攻击的拒绝。
应当注意,可使用根据本说明书的教导所编程的常规通用数字计算机常规地实施根据本发明的上述实施方案,如该计算机领域中技术人员将显而易见的一样。基于本发明的教导,熟练的程序员可轻松地准备合适的软件编码,如该软件领域中技术人员将显而易见的一样。
应当理解,可以软件包的形式常规地实施本发明。这样的软件包可以是使用了包括用来对计算机编程以实施本发明公开功能和过程的已存储计算机代码的计算机可读存储介质的计算机编程产品。该计算机可读介质/计算机可读存储介质可包括,但不限于,任意类型的常规软盘、光盘、CD-ROM、磁盘、硬盘驱动器、磁光盘、ROM、RAM、EPROM、EEPROM、磁或光卡或任意其他用来存储电子指令的合适媒体。
应当理解,在上述公开方法中步骤的指定顺序或等级是示范性方式的实施例。基于设计偏好,应当理解,能够重新设置在该方法中的步骤的指定顺序或等级而保留在本发明的范围内。该附属方法权利要求展现了在样本顺序中各个步骤的元件,并不意味者限定于所展现的指定顺序或等级。
应当相信,本发明和许多其伴随优点将通过上述说明进行理解。同样应当相信,将明显的是,可对其组件的形式、结果和设置做出各种变化而不背离本发明的范围和精神或不牺牲所有其实质优点。在描述之前此处的形式仅仅是其示范性实施方案,打算的是后续权利要求包含和包括这样的变化。

Claims (9)

1.一种在SAS域中实施串行连接小型计算机***SAS(Small Computer System)接口发现的方法,所述方法包括:
将串行管理协议SMP(Serial Management Protocol)DISCOVER请求从该SAS域的节点传送到被包括在该SAS域的多个扩展器中每一个扩展器;
在该节点接收来自被包括在该SAS域的多个扩展器中每一个扩展器的SMP DISCOVER响应,所述SMP DISCOVER响应响应于所述SMPDISCOVER请求;
将接收到的SMP DISCOVER响应的每一个中所提供BROADCAST(CHANGE)RECEIVED,即BCR数与已存储的BCR数比较,所述已存储的BCR数在所述SMP DISCOVER请求的所述传送之前已经由该节点记录和存储,其中所述BCR数指示所述扩展器的每一PHY所接收的BROADCAST(CHANGE)基元的数目;
基于所述接收到的BCR数更新该已存储的BCR数;
基于所述比较,确定哪个扩展器的那个PHY接收到传送的BROADCAST(CHANGE)基元,以确定包括在多个未被最近状态改变所影响的扩展器中的第一扩展器;和
在后续SAS发现操作中绕过所述第一扩展器。
2.如权利要求1所述的实施SAS接口发现的方法,所述方法进一步包括:
基于所述比较,将第二SMP DISCOVER请求从该节点处传送到被包括在该多个扩展器中的一第二扩展器。
3.如权利要求1所述的实施SAS接口发现的方法,其中所述节点是下列之一:一启动器和一自配置扩展器。
4.如权利要求1所述的实施SAS接口发现的方法,其中在接收到的SMPDISCOVER响应中提供的BCR数指示由该多个扩展器的每一个PHY接收的BROADCAST(CHANGE)基元的数量。
5.如权利要求1所述的实施SAS接口发现的方法,其中每一个扩展器在接收到来自该SAS域的一远程装置的BROADCAST(CHANGE)基元后增加该扩展器的BCR数。
6.一种SAS域的串行连接小型计算机***SAS(Small Computer System)接口发现的启动节点,所述节点包括:
一接口,该接口被配置以通信地将该节点耦合该SAS域的多个扩展器;
一存储器,所述存储器被配置以存储多个BROADCAST(CHANGE)RECEIVED,即BCR数,其中所述BCR数指示所述扩展器的每一PHY所接收的BROADCAST(CHANGE)基元的数目;和
一微处理器,所述微处理器连接到该存储器和该接口,所述微处理器被配置以当该节点接收来自被包括在该SAS域的多个扩展器中的一个扩展器的BROADCAST(CHANGE)基元时,使该节点将第一串行管理协议SMP(Serial Management Protocol)DISCOVER请求传送到被包括在该SAS域的多个扩展器中的每一个扩展器,所述节点进一步被配置以通过该接口接收多个SMP DISCOVER响应,将所述多个SMP DISCOVER响应从该SAS域的多个扩展器发送,所述SMP DISCOVER响应响应于所述第一SMPDISCOVER请求,所述节点进一步被配置以将在该接收到SMP DISCOVER响应的每一个中所提供的BCR数与已存储的BCR数比较,所述已存储的BCR数在所述第一SMP DISCOVER请求的所述传送之前已经由该节点记录和存储,
其中所述节点基于所述接收到的BCR数更新该已存储的BCR数,且其中所述节点进一步经配置以:基于所述比较来确定哪个扩展器的那个PHY接收到传送的BROADCAST(CHANGE)基元,以确定包括在多个未被最近状态改变所影响的扩展器中的第一扩展器;和在后续SAS发现操作中绕过所述第一扩展器。
7.如权利要求6所述的SAS域的SAS接口发现的启动节点,其中,基于所述比较,所述节点被配置以将第二SMP DISCOVER请求传送到被包括在该多个扩展器中的一第二扩展器。
8.如权利要求6所述的SAS域的SAS接口发现的启动节点,其中所述节点是下列之一:一启动器和一自配置扩展器。
9.如权利要求6所述的SAS域的SAS接口发现的启动节点,其中每一个扩展器在接收到来自该SAS域的一远程装置的BROADCAST(CHANGE)基元后增加其BCR数。
CN201110349628.9A 2010-11-15 2011-11-08 一种确定性sas发现和配置的方法 Expired - Fee Related CN102591838B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/946,231 2010-11-15
US12/946,231 US8200872B2 (en) 2010-11-15 2010-11-15 Method for deterministic SAS discovery and configuration

Publications (2)

Publication Number Publication Date
CN102591838A CN102591838A (zh) 2012-07-18
CN102591838B true CN102591838B (zh) 2015-04-08

Family

ID=44992809

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110349628.9A Expired - Fee Related CN102591838B (zh) 2010-11-15 2011-11-08 一种确定性sas发现和配置的方法

Country Status (6)

Country Link
US (1) US8200872B2 (zh)
EP (1) EP2453364B1 (zh)
JP (1) JP5144799B2 (zh)
KR (1) KR101196547B1 (zh)
CN (1) CN102591838B (zh)
TW (1) TWI375153B (zh)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012108794A (ja) * 2010-11-18 2012-06-07 Fujitsu Ltd 中継装置、中継方法およびデバイス管理装置
US8626981B1 (en) * 2011-03-24 2014-01-07 Maxim Integrated Products, Inc. SAS expander with non-blocking virtual PHY architecture
TW201303333A (zh) * 2011-07-06 2013-01-16 Hon Hai Prec Ind Co Ltd Sas信號完整性分析系統及方法
TW201324163A (zh) * 2011-12-02 2013-06-16 Hon Hai Prec Ind Co Ltd 籍由記憶體介面擴展器連接設備的電子裝置及其連接方法
US8626974B2 (en) * 2012-01-19 2014-01-07 Lsi Corporation Methods and systems for reduced signal path count for interconnect signals within a storage system expander
US9081818B2 (en) * 2012-03-13 2015-07-14 Hewlett-Packard Development Company, L.P. SAS fabric discovery
US11474704B2 (en) 2012-05-18 2022-10-18 Atto Technology, Inc. Target path selection for storage controllers
US8972618B2 (en) 2012-07-31 2015-03-03 Hewlett-Packard Develpment Company, L.P. Staged discovery in a data storage fabric
US9135198B2 (en) * 2012-10-31 2015-09-15 Avago Technologies General Ip (Singapore) Pte Ltd Methods and structure for serial attached SCSI expanders that self-configure by setting routing attributes of their ports based on SMP requests
US8793406B2 (en) * 2012-11-16 2014-07-29 Hewlett-Packard Development Company, L.P. SAS switch that supports bulk discovery wherein the bulk discovery is either on a push basis or pull basis
US9026713B2 (en) * 2012-12-13 2015-05-05 Avago Technologies General Ip (Singapore) Pte Ltd Expander for loop architectures
US8990448B2 (en) 2013-03-08 2015-03-24 Lsi Corporation Smart discovery model in a serial attached small computer system topology
CN103729321B (zh) * 2013-12-27 2017-01-18 华为技术有限公司 一种管理设备和多扩展器芯片管理方法
CN107273055B (zh) * 2017-06-29 2020-10-23 苏州浪潮智能科技有限公司 一种jbod级联***及方法
CN109508200A (zh) * 2018-11-02 2019-03-22 郑州云海信息技术有限公司 一种服务器Expander卡固件升级方法及***
CN110515540B (zh) * 2019-07-26 2022-07-22 苏州浪潮智能科技有限公司 一种拓扑硬盘的方法及装置
CN111159080B (zh) * 2019-12-31 2021-11-12 加弘科技咨询(上海)有限公司 机箱管理***及管理方法
CN114415957B (zh) * 2022-01-20 2022-11-29 无锡众星微***技术有限公司 一种级联expander自动配置方法和装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101515871A (zh) * 2009-03-27 2009-08-26 杭州华三通信技术有限公司 一种sas链路状态变化抑制方法和监控实体
CN101534304A (zh) * 2009-04-23 2009-09-16 杭州华三通信技术有限公司 Sas域变化非全遍历发现过程的方法和***

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050138221A1 (en) * 2003-12-23 2005-06-23 Intel Corporation Handling redundant paths among devices
US7738397B2 (en) * 2004-02-19 2010-06-15 Intel Corporation Generating topology information identifying devices in a network topology
US8089902B1 (en) * 2005-01-07 2012-01-03 Pmc-Sierra Us, Inc. Serial attached SCSI broadcast primitive processor filtering for loop architectures
US7401171B2 (en) * 2005-10-31 2008-07-15 Lsi Corporation Methods and structure for SAS expander initiating communication to a SAS initiator to identify changes in the SAS domain
WO2007146515A2 (en) * 2006-06-08 2007-12-21 Dot Hill Systems Corporation Fault-isolating sas expander
US7673185B2 (en) 2006-06-08 2010-03-02 Dot Hill Systems Corporation Adaptive SAS PHY configuration
US8051436B2 (en) * 2007-06-29 2011-11-01 Emulex Design & Manufacturing Corporation SAS expander-side optimization for the re-discovery process
US7787452B2 (en) * 2007-06-29 2010-08-31 Emulex Design & Manufacturing Corporation Isolation of unverified devices in a SAS expander
US7917665B1 (en) * 2008-04-25 2011-03-29 Netapp, Inc. Method and system for minimizing unnecessary topology discovery operations by managing physical layer state change notifcations in storage systems
US8402196B2 (en) * 2010-03-04 2013-03-19 Xyratex Technology Limited Storage assembly, a physical expander and a method

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101515871A (zh) * 2009-03-27 2009-08-26 杭州华三通信技术有限公司 一种sas链路状态变化抑制方法和监控实体
CN101534304A (zh) * 2009-04-23 2009-09-16 杭州华三通信技术有限公司 Sas域变化非全遍历发现过程的方法和***

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Robert C Elliott."American National Standard for Information Technology Serial Attached SCSI-2(SAS-2)".《Working Draft American National Standard Project T10/1760-D》.http://hackipedia.org/Hardware/SCSI/Serial%20Attached%20Storage/Serial%20Attached%20SCSI%20-%202.pdf,2008,第4.7节,7.12节,10.4.3.4节,10.4.3.9-10节,第819页和821页,附录2-3,表273-274,图45. *

Also Published As

Publication number Publication date
TW201220065A (en) 2012-05-16
EP2453364B1 (en) 2016-05-25
CN102591838A (zh) 2012-07-18
KR101196547B1 (ko) 2012-11-01
US20120124256A1 (en) 2012-05-17
JP2012108905A (ja) 2012-06-07
KR20120052158A (ko) 2012-05-23
TWI375153B (en) 2012-10-21
US8200872B2 (en) 2012-06-12
EP2453364A1 (en) 2012-05-16
JP5144799B2 (ja) 2013-02-13

Similar Documents

Publication Publication Date Title
CN102591838B (zh) 一种确定性sas发现和配置的方法
US7882509B2 (en) Expander-based solution to the dynamic STP address problem
US8051436B2 (en) SAS expander-side optimization for the re-discovery process
US7787452B2 (en) Isolation of unverified devices in a SAS expander
EP1697850B1 (en) Managing transmissions between devices
JP4836118B2 (ja) 複数の種類のストレージ装置を管理するための装置と方法
TWI444833B (zh) Sas擴充器之資料預取
US10387239B2 (en) Detecting memory failures in the runtime environment
US7444445B2 (en) Selectively adjusting signal compensation parameters and data rate for transmission of data through a smart cable
CN109240951B (zh) 提供安全的机载网络附加存储节点的***和方法
WO2012106388A1 (en) System and method for managing and detecting server power connections
US20120059991A1 (en) System and method for representation of target devices in a storage router
CN101535979B (zh) 存储资源装置的管理
EP3444715A1 (en) Method to locate sas jbod cable routing
CN102457403A (zh) 一种网络连接的故障检测方法及装置
EP2671156A1 (en) Diagnostic information logging
CN103164171A (zh) 存储装置和命令执行控制方法
US20170192851A1 (en) System and method of using performance-maintaining commands for generating a backup of unsupported file systems
CN106371942A (zh) 存储器错误处理方法和相关装置和***
US8898514B2 (en) SAS storage device drive system with failure information table
CN103858091A (zh) 一种存储设备的管理方法及设备
JP6938364B2 (ja) 通信システム、通信制御装置、及び通信制御方法
CN107430490A (zh) 处理用于封闭服务的数据存储命令
AU2016201734B2 (en) Alarm assembly and programming key
CN112020019B (zh) 数据传输方法、装置、终端设备及存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20160721

Address after: Singapore Singapore

Patentee after: Avago Technologies General IP (Singapore) Pte. Ltd.

Address before: Milpitas, California, USA

Patentee before: LSI Corp.

TR01 Transfer of patent right

Effective date of registration: 20181022

Address after: Singapore Singapore

Patentee after: Avago Technologies General IP (Singapore) Pte. Ltd.

Address before: Singapore Singapore

Patentee before: Avago Technologies General IP (Singapore) Pte. Ltd.

TR01 Transfer of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20150408

Termination date: 20181108

CF01 Termination of patent right due to non-payment of annual fee