在分布式处理器节点系统中处理节点地址故障的制作方法

文档序号:7855091阅读:211来源:国知局
专利名称:在分布式处理器节点系统中处理节点地址故障的制作方法
技术领域
本发明涉及分布式处理器节点系统,以及更具体地说,涉及处理器节点系统的网络中的节点寻址。分布式处理器节点系统的一个例子构成用于操作自动数据存储库的处理器。
背景技术
分布式处理器节点系统,也称为“嵌入式”处理器系统,正用在多个应用中,而且在数量上正日益增加。在分布式处理器节点系统中,例如,在控制系统中,整个系统控制分布在系统或产品的两个或多个处理器节点中。
这种系统的优点在于简化问题诊断和修理,因为功能被隔离到系统的不同区。另外,通过增加部件和处理器节点,能扩展这些系统,而不替换整个系统。分布式控制系统的节点通常与一个或多个通信网络互连,在此称为“网络”。
包括分布式处理器节点系统的控制系统的一个例子包括自动数据存储库,诸如IBM 3584超级扩展磁带库。3584库的处理器嵌有各种库元件,在总线网络上通信,以及操作这些部件,由此操作库。在2003年12月3日公开的美国专利No.6,356,803中提供了具有分布式处理器节点系统的自动数据存储库的论述。用于这些系统的修理动作包括替换单个元件、处理器节点或节点处的处理器。库由一个或多个“框架(frame)”组成,每个包括库部件集或子集,诸如用于存储数据存储媒体的存储架(storage shelves)、用于读取和/或写入有关该数据存储媒体的数据的一个或多个数据驱动器、用于在存储架和数据存储驱动器之间传送数据存储媒体的机器人存取器和用于操作该库的多个处理器节点。通过增加一个或多个框架和/或一个或多个存取器或其他节点,可以扩展该库。
包括分布式处理器节点系统的控制系统的另一例子包括自动多处理器网络。
为在网络上通信,如本领域的技术人员所公知的,部件和/或处理器节点必须具有节点地址,诸如CAN总线或Ethernet网络所采用的。当增加框架时,增加到网络上的处理器节点没有节点地址,或具有部分节点地址,以及必须将节点地址提供给新处理器节点。当用新部件等等替换单个部件、处理器节点,或节点处的处理器,或调换另一节点等等时,处理器节点可能不具有节点地址,或如果调换的话,可以采用其在前节点地址。另外,对所有部件,可以互换处理器节点卡,允许零件易于处理以及简化诊断和修理,但防止使用对每个节点地址有单独的零件号的静态寻址,或防止节点地址永久地固定在每个处理器节点卡上。
一种提供新节点地址的方法是操作员或修理人员分配节点地址。在一个复杂的节点地址的例子中,部件可以具有编入卡中的地址的功能部分,以及将框架号提供到处理器节点,以及使功能地址(functionaddress)和框架号组合以计算节点地址。另外,可以采用提供新节点地址的自动模式。例如,电缆被设计使用系得高或低的线来提供可以用来计算节点地址的二进制数。如另一例子,如在2001年5月14日提交的、美国专利申请序列号No.09/854,865中所公开的,脉冲发生器和延迟信号发生器可以提供自动框架计数(frame count),其可以结合功能地址来计算节点地址。如另一例子,服务器可以采用动态主机配置协议(DHCP)来提供处理器节点的IP地址。
在手动或自动模式中,故障是潜在的。例如,操作员会错误地判断处理器节点的位置或功能。在自动模式中,二进制电缆(binarycable)会损坏、误插,或可能使用错误的电缆。如另一例子,框架计数器电路会损坏,或电缆连接会误插。
在这种情况下,元件可能会不具有网络上的节点地址,或可能会具有错误的地址,或可能会出现网络上另一部件的副本的地址。当一个处理器节点处于将复制功能执行为另一部件的部件上,以及误读取框架编号,以及在地址中采用错误框架编号时,重复地址是可能的。另外,可以将处理器节点从一个系统调换到另一个,并且处于新系统的不同位置。寻址错误,诸如出现未知部件或网络上的副本,会使整个或部分系统不可操作,以及要求维护动作。
当系统和客户期望接近连续可用性的概念,诸如非常公知的“24×7×365”可用性时,产品故障变得更不可容忍。
例如,自动数据存储库提供用于在不是永久地安装在数据存储设备上以及以可容易地从存储架上获得的形式存储的数据存储介质上存储大量数据的装置。一个或多个机器人存取器从存储架检索所选择的数据存储介质以及将它们提供到数据存储驱动器。典型地,只要请求,急切需要存储在自动数据存储库的数据存储介质上的数据。因此,期望尽可能在连续的基础上,在可操作条件下维护自动数据存储库。
自动数据存储库可以包括可通过一起工作的多个处理器操作的系统,诸如通过外部接口与主机系统连接,以及在库内提供数据存储介质的位置和内容的经常更新的清单的中央控制器,以及识别数据存储驱动器和存储架的精确位置,以及计算机器人存取器的最佳操作以便在各种数据存储架和数据存储驱动器之间有效地运送数据存储介质的机器人控制系统。大多数部件是冗余的,使处理器节点发生故障,以及仍然具有整体系统操作,但均由适当的网络寻址结构而定以便一起操作。
全局寻址是公知的,例如,美国专利No.5,987,506所示,用于通过仔细地分段地址,在多个“云(cloud)”上分配地址,以及不允许在不止一个云上分配相同的地址,但没有提供处理寻址故障的方法。
有许多寻址中冲突的例子。例如,美国专利No.5,386,515通过将硬件适配器的地址空间转变到下一顺序地址空间,忽略冲突地址空间来解决冲突。然而,该系统停机并且不操作直到解决冲突为止。IBM技术公开公告Vol.41,No.01,1998年1月,pp.703-705响应发送者和接收者IP地址的复制,迫使主机响应,以便复制主机关闭其接口,以及张贴警告消息。应答主机可以使用IP地址保持直到手动校正它为止,降低对应答主机的破坏。当节点登录时,网络上所有主机将接收复制IP地址,因此,所有地址可以通过应答过程。只要在复制主机接收应答并关闭其接口后,应答主机才能与发端IP地址所有者通信。

发明内容
根据本发明,提供了用于处理节点系统寻址故障的诸如自动数据存储库的分布式处理器节点系统、系统的处理器节点、方法和计算机可读程序代码。
在一个实施例中,提供网络中的分布式处理器节点系统,其中处理器节点包括至少一个处理器和至少一个到该网络的接口。处理器节点的至少一个在检测到网络处理器节点的节点地址故障后,诸如在处理器节点接口检测到缺少节点地址、为错误地址的名义地址,或包括复制地址,则从网络禁用处理器节点。通过从网络禁用处理器节点或其名义地址,仅暂时使处理器节点及其元件失效,从而系统保持操作。节点地址用于在启用网络中的处理器节点后,寻址网络中的处理器节点。
在另一实施例中,处理器节点还包括非易失存储器,以及将处理器节点的备用节点地址保持在非易失存储器中。另外,备用节点地址可以包括节点寻址的最后一次成功检测的节点地址。该处理器节点在检测到节点地址故障后,例如通过检测冲突,或如另一例子,通过尝试从外部确定其自己的节点地址,以及不能将任何可用节点地址确定为其自己的节点地址,通过选择非易失存储器中的备用节点地址,选择避免节点地址故障的节点地址。
在另一实施例中,处理器节点将名义节点地址初始化确定为其自己的节点地址,检测网络其它处理器节点的节点地址,以及将所检测到的其他处理器节点的节点地址与名义节点地址进行比较。如果处理器节点确定在所检测到的其他处理器节点的节点地址之一与名义节点地址之间存在任何冲突,则存在的冲突包括网络处理器节点的节点地址故障,以及从网络禁用该处理器节点。
在另一实施例中,网络的处理器节点的至少两个进行复位,以及包括至少一个处理器、至少一个到网络的接口,以及定时器,该定时器保持从已经复位处理器节点以来的时间指示。如上,在所检测到的其他处理器节点的节点地址的至少一个与处理器节点的指定节点地址之间存在任何冲突时,确定节点地址故障。
具有冲突节点地址的处理器节点比较定时器,以确定是否具有从复位以来的更新时间。如果处理器节点具有更新时间,那么从网络禁用其名义地址。
在另一实施例中,通过保持与节点相关的一个或多个元件的指定信息的处理器节点,可以确定错误节点地址。在一个例子中,耦合到处理器节点的数据存储驱动器具有唯一序列号,以及处理器节点将序列号存储为指定信息。当节点确定名义节点地址时,检测相关元件的当前指定信息,以及将当前指定信息与所保持的指定信息进行比较。确定匹配故障为处理器节点的节点地址故障,导致从网络禁用处理器节点的名义地址。
通过从网络禁用具有地址故障的处理器节点,仅使部件暂时无效,以及系统仍然可操作。采用避免地址故障的备用节点地址进一步防止对系统的任何破坏,以及避免用于处理器节点或部件的任何立即修理动作。
为更全面地理解本发明,参考结合附图的下述详细描述。


图1是根据本发明,可以实现多个处理器节点的自动数据存储库的等视图;图2是表示根据本发明,采用多个处理器节点的图1的自动数据存储库的实施例的框图;图3是表示图2的多个处理器节点的框图;以及图4是描述用于处理图2和3的处理器节点的寻址故障的本发明方法的实施例的流程图。
具体实施例方式
在下面的说明书中,将参考附图,在优选实施例中描述本发明,其中相同的标记表示相同或相似的元件。尽管根据用于实现本发明目的的最佳方式来描述本发明,但本领域的技术人员将意识到根据这些教导,在不背离本发明的精神或范围的情况下,可以实现各种改变。
图1示例说明根据本发明的自动数据存储库10的实施例,可以实现多个处理器节点。配置库,用于响应来自至少一个外部主机系统的命令,存取数据存储介质14,以及所述库包括多个存储架16,用于存储数据存储介质;至少一个数据存储驱动器,用于相对于数据存储介质,读和/或写数据;以及至少一个机器人存取器18,用于在多个存储架16和数据存储驱动器之间传送数据存储介质。所述库还可以包括操作员面板23或其他用户接口,诸如基于web的接口,其允许用户与库交互作用。库10可以包括一个或多个框架11-13,每个具有可由机器人存取器18存取的存储架16。机器人存取器18包括用于抓紧一个或多个数据存储介质14的抓爪组件20,以及可以包括安装在抓爪20上的条形码扫描仪或读取系统,诸如智能卡阅读器或类似的系统,以便“读取”有关数据存储介质14的识别信息。
图2示例说明根据本发明采用多个处理器节点的图1的数据存储库10的实施例。可以实现本发明的数据存储库的例子是IBM 3584超级扩展磁带库。所述库包括基本框架11,可以另外包括一个或多个扩展框架12,以及可以包括高可用性框架13。
库10的基本框架13包括一个或多个数据存储驱动器15,以及机器人存取器18。如上所述,机器人存取器18包括抓爪组件20以及可以包括读取系统22以便“读取”与数据存储介质14有关的识别信息。数据存储驱动器15例如可以是光盘驱动器或磁带驱动器,以及数据存储介质14可以分别包括光学或磁带介质,或可以是任何其他可移动介质及相关的驱动器。例如,数据存储驱动器可以包括IBM LTOUltrium驱动器,可以包括DLT 8000驱动器等等。另外,可以提供控制端口,用来在主机和库之间进行通信,例如,从主机接收命令,以及将命令转发给库,但其不是数据存储驱动器。
扩展框架12包括另外的存储架,以及可以包括另外的数据存储驱动器15。高可用性框架13还可以包括另外的存储架以及数据存储驱动器15,以及包括第二机器人存取器28,所述存取器包括抓爪组件30,以及可以包括条形码扫描仪或其他读取设备,以及操作员面板280或其他用户接口。在机器人存取器18或其抓爪20等等故障或其不可用性的情况下,可以使用第二机器人存取器28。
在示例性库中,机器人存取器18、28的每一个在至少两个方向,称为水平“X”方向和垂直“Y”方向中移动其抓爪,以便检索和抓住、或递送和释放存储架16上的数据存储介质14,以及将数据存储介质加载和卸载到数据存储驱动器15上。
参考图2和3,库10从一个或多个主机系统40、41或42接收命令。主机系统,诸如主机服务器在路径80上,通过一个或多个控制端口(未示出),或通过一个或多个数据存储驱动器15直接与库通信,提供命令以存取特定的数据存储介质以及在例如存储架和数据存储驱动器之间移动介质。命令通常是识别介质和/或用于存取介质的逻辑位置的逻辑命令。
典型的库受从主机接收逻辑命令、确定所需动作以及将动作转换成机器人存取器18、28的物理运动的分布式控制系统控制。
在示例性库中,分布式控制系统包括多个处理器节点,每个节点具有一个或多个处理器。在一个分布式控制系统的例子中,通信处理器节点50可以位于基础框架11中。通信处理器节点提供用于经例如耦合到线路80的至少一个外部接口,直接或通过驱动器15接收主机命令的通信链路。通信处理器节点50可以另外提供通信链路70,用于与数据存储驱动器15通信。
通信处理器节点50可以位于框架11中,接近数据存储驱动器15。另外,在分布式处理器系统的例子中,提供一个或多个另外的工作处理器节点,可以包括例如位于机器人存取器18处并经网络60耦合到通信处理器节点50的工作处理器节点52。每个工作处理器可以响应从任何通信处理器节点广播到工作处理器节点的接收命令,以及工作处理器节点也可以控制机器人存取器的操作,提供移动命令。可以提供XY处理器节点55以及所述节点可以位于机器人存取器18的XY系统处。XY处理器节点55耦合到网络60,以及响应移动命令,操作XY系统来定位抓爪20。
同时,可以在操作员面板23上提供操作员面板处理器节点59,用于提供在操作员面板和通信处理器节点50、工作处理器节点52和XY处理器节点55之间通信的接口。
提供包括公用总线60的网络,与各个处理器节点耦合。公用总线可以包括坚固布线网络(robust wiring network),诸如商业上可获得的“CAN”总线系统,其是具有标准存取协议和布线标准的多点网络,例如德国的CiA、自动化协会中的CAN、Am Weich Selgarten 26、D-90158 Erlangen所定义的。如本领域的技术人员所公知的,在库中也可以采用其他类似的总线网络,诸如Ethernet,或无线网络系统,诸如RF或红外。在节点接口126a、b、c和d,可以将处理器节点,诸如图3的节点50、52、55和59耦合到网络60。其中,术语“网络”包括采用节点寻址的处理器节点之间的任何通信装置。
参考图2,通信处理器节点50经线路70耦合到基本框架11的数据存储驱动器15的每一个上,与驱动器和主机系统40、41和42通信。另外,主机系统在输入80可以直接耦合到通信处理器节点50,或耦合到使用与驱动器/库接口类似的库接口将库连接到一个或多个主机系统的控制端口设备(未示出)上。如本领域的技术人员所公知的,可以采用各种通信配置,用于与主机和数据存储驱动器通信。在图2的例子中,主机连接80和81是SCSI总线。总线82包括为高速串行数据接口的判优光纤信道回路(fibre channel arbitrated loop),允许在比SCSI总线系统更远的距离上传输。
数据存储驱动器15可以与通信处理器节点50极接近,以及可以采用短距离通信方案,诸如SCSI,或串行连接,诸如RS-422。因此,数据存储驱动器15通过线路70单独地与通信处理器节点50耦合。
可以提供扩展框架12,以及所述扩展框架12可以通过扩展公用总线152耦合到网络152,60。与图3的通信处理器节点50类似的另一通信处理器节点155可以位于扩展框架中,以及可以与例如在输入156处的主机,以及扩展框架12中的数据存储驱动器15,经例如线路170通信。通信处理器节点155在与图3的节点接口126a类似的节点接口处耦合到网络152、60,通信处理器节点155向网络152、60提供用于命令的通信链路,以便将命令链接到基础框架工作处理器节点52。
通信处理器节点155可以安装在扩展框架12中,与扩展框架12的耦合的数据存储驱动器15极相邻,与驱动器和所连的主机系统通信。数据存储驱动器15还通过线路170单独地耦合到通信处理器节点155。
可以提供具有相同的通信处理器节点155、存储架16、数据存储驱动器15以及扩展总线152的另外的扩展框架,以及每个扩展框架耦合到相邻的扩展框架。
另外,数据存储库10可以在例如高可用性框架13中另外包括另一机器人存取器28。机器人存取器28可以包括用于存取数据存储介质的抓爪30,以及用于移动机器人存取器的XY系统255。高可用性框架可以与扩展框架12相邻,或与基础框架11相邻,以及机器人存取器28可以在与机器人存取器18相同的水平机械路径上,或在相邻的路径上运行。示例性的控制系统另外包括形成耦合到扩展框架的网络152或基础框架的网络60的网络的扩展公用总线200。可以提供另一通信处理器节点250,其也与通信处理器节点50类似,以及可以位于高可用性框架13中,用于在输入256处直接、或通过控制端口(未示出)、或例如在256,通过数据存储驱动器15和线路270,从主机接收命令。通信处理器节点250耦合到高可用性框架网络200以及在例如与图3的接口126a类似的节点接口处,提供到网络的通信链路。
可以与高可用性框架13的耦合的数据存储驱动器15极相邻地安装通信处理器节点250,该通信处理器节点250与驱动器和所连的主机系统通信。数据存储驱动器15还通过线路270,以及使用接口,诸如RS-422单独地与通信处理器节点250耦合。
参考图2,可以在一个处理器节点处,例如在工作处理器52,或可选地,在处理器50、处理器155或处理器250处提供实现本发明的计算机程序,或可以在多个或全部处理器节点中实现本发明的计算机程序。
包括分布式处理器节点系统的控制系统的另一例子包括自动多处理器网络。
参考图3,处理器节点50、52、55和59包括处理器122a、b、c和d,其可以包括本领域公知的任何微型处理器设备,处理器122a、b、c和d在程序代码,通常称为“固件”的控制下操作,因为该代码与构成库的硬件有关,如上所述。固件是处理器操作系统的部件,例如节点硬件132、134、136和138。固件通常保持在非易失可编程存储器124a、b、c和d中。非易失存储器124a、b、c和d可以包括本领域公知的任何非易失存储器设备,诸如闪存、只读存储器(ROM)、电可擦可编程只读存储器(EEPROM)、电池备用RAM、硬盘驱动器等等。另外,非易失存储器124a、b、c和d可以分别位于处理器122a、b、c和d中。
固件程序代码图像对所有处理器节点可以是相同的,具有公用代码和用于各种功能的每一个的特定代码,但特定代码仅由特定功能的处理器使用。另外,对每个处理器节点,可以提供不同的代码图像,具体地包括仅由特定功能的处理器所需的代码。
为在网络上通信,处理器节点具有节点地址。如上所述,节点地址,诸如CAN总线或Ethernet网络所采用的,均是本领域的技术人员所公知的。在库的例子中,当增加框架时,增加到网络上的处理器节点可以不具有节点地址,以及必须向新处理器节点提供节点地址。另外,当用新部件等等替换单个部件、处理器节点,或节点处的处理器,或当调换另一部件等等时,处理器节点可以不具有节点地址,或可以采用来自另一节点位置或另一库的其在前的节点地址。通过比较所保存的库或框架唯一信息,可以检测不正确的节点寻址,如下文所述。
一种提供新节点地址的方法是操作员分配节点地址。在复杂节点地址的一个例子中,部件可以具有编码到卡中的地址的功能部分,以及将框架号提供到处理器节点,以及结合功能地址和框架号来计算节点地址。例如,可以连续地,如“01”、“02”等等编号框架,以及每个功能可以指定不同的编号。例如,标明用十六进制的“C”,以及框架号“2”的通信处理器节点可以具有“xC2”的地址。另外,可以采用提供新节点地址的自动模式。例如,电缆设计有系得或高或低的某些线以便提供可以用来计算节点地址的二进制编号。例如,如2001年5月14日提交的美国专利申请序列号No.09/854,865中所公开的,脉冲发生器和延迟信号发生器可以提供自动框架计数,以确定框架的编号,诸如上述的“01”和“02”。自动框架计数可以与功能地址一起使用来计算节点地址。如另一例子,服务器可以采用动态主机配置协议(DHCP)来为处理器节点提供地址。
如上所述,故障是潜在的。例如,操作员会错误地判断处理器节点的放置或功能。在自动模式中,二进制电缆会变得有缺陷、误插,或可能使用错误的缆线。如另一例子,框架计数器电路会变得有缺陷,或电缆连接会被误插。
在这种情况下,部件可能会不具有网络上的节点地址,或可能会具有错误的地址,或可能会出现网络上另一部件的副本的地址。当一个处理器节点处于将复制功能执行为另一部件的部件上,以及误读取框架编号,以及在地址中采用错误框架编号时,重复地址是可能的。另外,可以将处理器节点从一个系统调换到另一个,并且处于新系统的不同位置。寻址错误,诸如出现未知部件,或带有错误地址的部件,或网络上的副本,会使整个或部分系统不可操作,以及要求维护动作。
另外参考图4,在一个实施例中,在检测到用于网络的处理器节点的节点地址故障后,诸如缺少节点地址,或存在重复地址,例如在处理器节点接口、处理器节点,或系统处所检测到的(1)从网络禁用处理器节点,和/或(2)选择避免节点地址故障的节点地址。所选择的节点地址是在网络中启用处理器节点时,用于在网络中寻址处理器节点。
过程在步骤190开始。在步骤201,处理器节点,诸如图2和3的处理器节点50在节点接口126a处检测网络,例如网络60。例如,可以使电处理器节点加电、调换到增加到网络中的框架中的位置,或复位,例如,因为可以更新节点的处理器122a和/或备用部件。例如,处理器节点包含启动启用处理器节点的过程的固件或硬件上电计数器。只要实施某些内部方面,处理器节点实施步骤201。或者,一旦处理器节点靠近,在无破坏的基础上,通过例如线路上的信号,向主节点提供信号,以及主节点实施用于处理器节点,例如处理器节点50的步骤201。
在步骤201中包括用于处理器节点,例如处理器节点50的节点地址的校验。如上所述,可以通过编码电缆、通过接收手动生成或自动指示等等表示地址,以及直接用来或结合内部信息来确定节点地址。
步骤203包括根据检测网络的结果,确定能否生成任何可用节点地址。例如,不可用地址可以是变得有缺陷以及具有丢失位,呈现不完全地址的二进制电缆的结果,或可以具有交叉位,呈现错误或无效地址。另外,可能误插电缆,或可能使用错误的电缆。如另一例子,框架计数器电路可能变得有缺陷,或误插电缆连接。因此,不可用地址可以包括无地址信号。
因此,不可用地址,如在此采用的术语,可以包括不完整地址、错误或无效地址,或无地址信息。可能的冲突地址不能用在网络,在下文具体描述。如果生成不可用地址,在步骤205,处理器节点50尝试内部确定其节点地址。如一个例子,将地址的功能部分编码在卡中,以及编码在非易失存储器中的地址的剩余部分例如包括最后一个已成功知道的地址。根据本发明,在步骤206中,从其非易失存储器124a读取备用节点地址,如下文中参考步骤220详细所述。另外,可以提供预定的节点地址。
在步骤205,确定是否能内部确定节点地址。如果不能,则不存在名义节点地址,以及存在节点地址故障,如步骤207所示,以及在步骤208,从网络禁用处理器节点。
通过从网络禁用具有地址故障的处理器节点,仅暂时停止部件,因此,系统仍然可操作。
另外,如果步骤205和206生成节点地址,可以省略步骤207,以及,例如在稍后所述的步骤222捕获具有内部生成的地址的任何问题。另外,可以省略步骤205,206和207。在这种情况下,步骤203的“否”回答直接导致到步骤208。
如果如用步骤203或步骤205所示能够确定用于处理器节点的节点地址,则在步骤210初始确定地址,在此将所述地址称为“名义”节点地址。这是为了区分初始确定的节点地址与校验有效性或任何冲突时实际使用的节点地址。在下文论述其他类型的寻址故障。可以通过处理器节点本身实施每个处理步骤,或系统可以通过例如主节点实现该过程。
在步骤207,可选地,确定名义节点地址可能有效还是可能错误。例如,名义节点地址可以是完整的,以及处于具有看起来正确的编号的框架或网络位置,但处于框架内的不同位置和/或执行不同功能,或处于不同库或网络中。
根据本发明的实施例,用于有效节点地址的测试可以包括查询具有唯一识别信息,诸如能由节点存取的序列号的相关元件,或多个元件,诸如节点硬件,以及将它与保存在节点的本地非易失存储器中的唯一识别信息的拷贝进行比较。
其中,与处理器节点有关的信息识别、定义或指定硬件或其他元件称为相关元件等等的“指定信息”。
因此,在具有分配到节点的框架的数据存储驱动器的库的例子中,已知框架包含一个或多个驱动器,每个具有指定的唯一序列号,用于“指定信息”比较。
例如,参考图2,通信处理节点50能查询线路70上的一个或多个数据存储驱动器15以及获得一个或多个序列号,以及将它(它们)与存储在非易失存储器中的序列号进行比较。如果完全匹配,则假定名义节点地址有效。更具体地说,节点包含所存储的节点地址和所存储的指定信息间的关联。由于还能调换驱动器15,不能完全匹配可能不表示无效节点地址。因此,用于与节点有关的部件的所有部件标识符可以存储在节点非易失存储器中作为指定信息,以及用来确定是否进行了充分的比较以构成匹配的表决方案。
另外,节点本身可以包含可通过固件读取的指定信息,诸如“MAC”地址,或广域名(WWN),或与节点卡有关的卡序列号。
如果无匹配,步骤207确定有节点地址故障,以及处理进行到步骤22以及在处理器节点接口,从网络禁用处理器节点的名义节点地址。
如果名义节点地址看起来有效,则在步骤212中检测网络,例如图2的网络60、152、200的其他处理器节点的节点地址,例如通过备用的通信装置,诸如RS-232连接,或通过网络广播。特别地,节点可以广播“I am′C2′,is anyone else”,以及将接收是否有冲突的响应。然后,在步骤215,将所检测到的其他处理器节点的节点地址与名义节点地址比较。如果在步骤216中,未发现冲突,将名义节点地址将用作处理器节点的节点地址,以及过程进入步骤240,如下文所述。
相反,如果在步骤216,处理器节点或系统确定在其他处理器节点的所检测到的节点地址的至少一个与名义节点地址之间存在任何冲突,则存在的冲突可以包括用于网络的处理器节点的节点地址故障。在步骤221,例如通过网络广播等等,可以可选地改变具有冲突节点地址的处理器节点,或多个处理器节点。
作为根据本发明的另一实施例,在节点地址冲突的情况下,可以实施另一测试,如参考步骤235所述;否则,如果未实现另一测试,则在可选步骤222中表示节点地址故障,以及从网络禁用处理器节点。
在另一实施例中,网络的至少两个处理器节点复位,以及包括至少一个处理器、至少一个到网络的接口,以及定时器,定时器维持自复位处理器节点以来的时间表示。定时器不仅表示为处理器,例如处理器节点50、52、55和59的各个处理器122a、b、c和d的处理器的固件定时器,而且可以另外包括固件定时器,如上所述。定时器可以包括在处理器节点加电时启动或复位的加电计数器。因此,定时器提供已经启动处理器节点的时间表示。定时器可以包括不可能绕回到0值的大值计数器,或只要达到最大值,则停止计数,因为很可能在接近处理器节点的一个的复位时间时执行校验。定时器的分辨率不太重要,因为它们仅用于识别显著不同。另外,定时器可以不在上电时开始计数,而是在确定处理器节点具有非冲突地址时才复位,这将在下文描述。在这种情况下,在新复位处理器节点处,定时器将为零,直到解决任何冲突为止。因此,具有更近时间的处理器节点很可能最近复位过,以及具有新的冲突名义地址,以及不具有更近时间的处理器节点很可能在正在冲突的地址处成功操作。如上,在其他处理器节点的所检测到的节点地址的至少一个与处理器节点的名义节点地址之间出现任何冲突时,确定节点地址故障。可选地,在步骤221中,确定节点地址故障的处理节点通过广播等等,可以修改具有冲突的所检测到的节点地址的其他处理器节点,如上所述。
步骤221是可选的,因为新复位节点很可能具有更近的时间,因此很可能请求冲突消息。具有冲突地址的备用节点很可能已成功地操作,以及可以仅提供它具有所请求的地址的响应,以及不需要知道有冲突。然而,响应节点也可以将它的定时器值提供为响应的一部分。因此,请求节点将具有从其确定存在地址冲突的响应,而且还将具有用于比较的定时器值。另外,可以先提供响应,以及仅在请求节点确定有冲突时,节点单独地请求定时器值。
处理器节点以及具有冲突节点地址的其他处理器节点,如步骤225所示,或系统,在步骤227中比较定时器的时间,以便在步骤228中确定处理器节点具有从复位以来的更新时间。宽的时间带被视为一个约束缚(tie)并且不能解决冲突,因为如果复位两个节点以及发现冲突名义地址,“竞态”状况会不正确地解决冲突。因此,存在错误情况以及要求外部检查来解决。因此,其中“更新时间”包括约束。
另外,可以省略步骤221和225。响应于分配地址的广播意图,可以执行步骤227和228。另外,仅通过还没有分配节点地址的节点执行步骤227和228,因为这一校验用来消除稍后出现的冲突节点。已经成功操作的节点可以不考虑地址改变的可能性。
如果在步骤228中,确定处理器节点不具有更新时间,将由处理器节点使用的指定节点地址或多个节点地址用作处理器节点的节点地址,以及过程进入将描述的步骤240。
根据步骤228确定的具有更新时间的处理器节点可以表示步骤222中的节点地址故障,导致从网络禁用该处理器节点。
在本发明的另一实施例中,处理器节点,例如图3的处理器节点50另外包括非易失存储器124a,以及将处理器节点的备用节点地址保持在该非易失存储器中。例如,备用节点地址可以包括节点寻址的最后一次成功检测的节点地址,将根据步骤220进行描述。另外,系统维护已知位置处,例如主节点处的非易失存储器124c,诸如主节点55的非易失存储器124c。
步骤222可以是暂时禁用处理器节点同时实施剩余步骤,或者,可以省略步骤222,以及先实施剩余步骤,以及在步骤208实施任何节点地址故障,如下文所述。
因此,在检测到节点地址故障后,例如,在步骤228,或直接根据冲突的结果,例如,在步骤216中,在步骤235中读取非易失存储器中的备用节点地址。备用节点地址包括很可能避免冲突的地址,诸如在步骤220中所确定的。步骤235的非易失存储器可以与步骤206的非易失存储器相同或不同,以及备用节点地址可以不同于步骤206的节点地址。如果提供备用节点地址,如上所述,通过使用其他节点标识信息,可以选择该节点。
在步骤220中,步骤235的备用节点地址,或者如下文所述,如果在步骤240中有效的话,变为步骤206的名义节点地址的备用地址包括节点寻址的最后一次成功检测的节点地址。例如,当处理器节点经历复位处理以及发现具有通过网络的任何处理器节点,避免冲突的节点地址时,所述节点地址至少在那个点上被认为是好的节点地址。因此,在步骤220,将认为好的节点地址存储在处理器节点的非易失存储器中。
如果调换处理器节点等等,则在新环境中,曾经好的节点地址会发生冲突。因此,在步骤237,将步骤212的其他处理器节点所检测到的节点地址与非易失存储器的备用节点地址进行比较。另外,可以重复步骤212和215,或采用类似的步骤。如果在步骤238中,备用节点地址通过步骤215的其他处理器节点的所检测到的节点地址避免冲突,和/或通过步骤207的指定信息匹配测试,备用节点地址避免节点地址故障,以及将非易失存储器的备用节点地址选择为处理器节点的节点地址,以及过程进入步骤240。
然而,如果冲突依然,或仍然存在,处理器节点向网络显示地址故障,以及在步骤208中,从网络禁用所述处理器节点。
通过从网络禁用具有地址故障的处理器节点,仅使部件暂时停机,以及系统仍然可操作。采用避免地址故障的备用节点地址进一步防止系统的任何损坏,以及避免处理器节点或部件的立即修理动作。
在步骤240,通过看起来有效且无冲突的地址,在网络中启用处理器节点。在步骤220,将所述节点地址存储在非易失存储器中,作为备用节点地址,以及可以复位定时器。
合成名义节点地址或备用节点地址,尽管看起来有效且无冲突,但仍然可能是不正确的。因此,在进一步验证例如配置等等后,会发生步骤220的存储操作。因此,更加确保存储在非易失存储器中作为备份的地址是已知的“好”节点地址。
在步骤220,除将现在的“好”节点地址存储在非易失存储器中,作为备用节点地址外,在那时可以复位定时器,如上所述,如果定时器不是加电定时器的话。
作为备选方案,在步骤220后,可以实施步骤240,以便通过无冲突节点地址,在网络中禁用处理器节点,以及步骤240不包括另外的验证。
本领域的技术人员将理解到可以按从图4所示的步骤的顺序修改和/或改变上述步骤。本领域的技术人员来将理解到其他等效元件可以替换图1-3所示的元件,以及可以在除图1和2的库以外的环境中,根据图3实现本发明的一个包括自动多处理器网络的处理器节点的例子。
尽管详细地示例说明本发明的优选实施例,在不背离如在下述权利要求中所述的本发明的范围的情况下,本领域的技术人员可以想到对那些实施例的修改和适应是很显然的。
权利要求
1.一种分布式处理器节点系统,包括网络;以及多个处理器节点,包括所述网络的节点,所述多个处理器节点的每一个包括至少一个处理器以及到所述网络的至少一个接口;所述多个处理器节点的至少一个在检测到用于所述网络的所述处理器节点的节点地址故障后,在所述至少一个接口,从所述网络禁用所述处理器节点。
2.如权利要求1所述的分布式处理器节点系统,其中,所述至少一个处理器节点另外包括非易失存储器;将所述处理器节点的备用节点地址保持在所述非易失存储器中;通过尝试确定其自己的节点地址来检测所述节点地址故障;以及不将任何可用节点地址确定为其自己的节点地址,选择所述非易失存储器中的所述备用节点地址。
3.如权利要求1所述的分布式处理器节点系统,其中,所述至少一个处理器节点通过在所述至少一个接口检测所述网络,检测所述节点地址故障。
4.一种分布式处理器节点系统,包括网络;以及多个处理器节点,包括所述网络的节点,所述多个处理器节点的每一个包括至少一个处理器以及到所述网络的至少一个接口;所述多个处理器节点的至少一个将名义节点地址确定为其自己的节点地址;检测所述网络的其他处理器节点的节点地址;将其他处理器节点的所述所检测到的节点地址与所述名义节点地址进行比较;确定在其他处理器节点的所述所检测到的节点地址的至少一个与所述名义节点地址间存在任何冲突,所述存在的冲突包括用于所述网络的所述处理器节点的节点地址故障;以及在检测到用于所述网络的所述处理器节点的所述节点地址故障后,在所述至少一个接口,从所述网络禁用所述处理器节点名义的节点地址。
5.如权利要求4所述的分布式处理器节点系统,其中,所述至少一个处理器节点在检测到用于所述网络的所述处理器节点的所述节点地址故障后,另外选择避免所述节点地址故障的节点地址,在所述网络中启用所述处理器节点后,所述所选择的节点地址用于在所述至少一个接口寻址所述网络中的所述处理器节点。
6.如权利要求5所述的分布式处理器节点系统,其中,所述至少一个处理器节点另外包括非易失存储器;将所述处理器节点的备用节点地址保持在所述非易失存储器中;在所述确定冲突和检测到用于所述网络的所述处理器节点的所述节点地址故障后,进一步将所述非易失存储器的所述备用节点地址与所述其他处理器节点的所述所检测到的节点地址进行比较;以及如果所述备用节点地址避免与所述其他处理器节点的所述检测到的节点地址冲突,通过选择所述非易失存储器的所述备用节点地址,选择避免所述节点地址故障的所述节点地址。
7.一种分布式处理器节点系统,包括网络;以及多个处理器节点,包括所述网络的节点,所述多个处理器节点的至少两个进行复位,以及包括至少一个处理器,至少一个到所述网络的接口,以及定时器,所述定时器维持从已经复位所述处理器节点以来的时间指示;(I)所述多个处理器节点的至少一个将名义节点地址确定为其自己的节点地址;检测所述网络的其他处理器节点的节点地址;将其他处理器节点的所述所检测到的节点地址与所述名义节点地址进行比较;确定在所述其他处理器节点的所述所检测到的节点地址的至少一个与所述名义节点地址间存在任何冲突,所述存在的冲突包括所述网络中的节点地址故障;以及(II)具有所述冲突的所检测到的节点地址的所述处理器节点将所述处理器节点的所述定时器的时间与具有所述冲突的所检测到的节点地址的所述其他处理器节点的所述定时器的时间进行比较,以确定具有所述定时器的更新时间的处理器节点;以及如果所述处理器节点具有所述更新时间,在所述至少一个接口,从所述网络禁用所述处理器节点的名义节点地址。
8.如权利要求7所述的分布式处理器节点系统,其中,具有所述更新时间的所述处理器节点另外选择避免所述节点地址故障的节点地址,在所述网络中启用所述处理器节点后,所述所选择的节点地址用于在所述网络中寻址具有所述更新时间的所述处理器节点。
9.如权利要求8所述的分布式处理器节点系统,其中,具有所述更新时间的所述处理器节点另外包括非易失存储器;将所述处理器节点的备用节点地址保持在所述非易失存储器中;进一步将所述非易失存储器的所述备用节点地址与所述其他处理器节点的所述所检测到的节点地址进行比较;以及如果所述另备用节点地址避免与所述其他处理器节点的所述所检测到的节点地址冲突,通过选择所述非易失存储器的所述备用节点地址,选择避免所述节点地址故障的所述节点地址。
10.一种用于分布式处理器节点系统的处理器节点,所述系统包括网络和多个处理器节点,所述处理器节点包括至少一个到所述网络的接口;以及至少一个处理器,所述至少一个处理器在检测到用于所述网络的所述处理器节点的节点地址故障后,在所述至少一个接口,从所述网络禁用所述处理器节点。
11.如权利要求10所述的处理器节点,另外包括非易失存储器;以及其中所述至少一个处理器将所述处理器节点的备用节点地址保持在所述非易失存储器中;通过尝试确定其自己的节点地址来检测所述节点地址故障;以及在不能将任何可用节点地址确定为其自己的节点地址后,选择所述非易失存储器中的所述备用节点地址。
12.如权利要求10所述的处理器节点,其中,所述至少一个处理器节点通过在所述至少一个接口检测所述网络,检测所述节点地址故障。
13.一种用于分布式处理器节点系统的处理器节点,所述系统包括网络以及多个处理器节点,所述处理器节点包括至少一个到所述网络的接口;以及至少一个处理器,所述至少一个处理器将名义节点地址确定为其自己的节点地址;检测所述网络的其他处理器节点的节点地址;将其他处理器节点的所述所检测到的节点地址与所述名义节点地址进行比较;确定在其他处理器节点的所述所检测到的节点地址的至少一个与所述名义节点地址之间存在任何冲突,所述存在的冲突包括用于所述网络的所述处理器节点的节点地址故障;以及在检测到用于所述网络的所述处理器节点的所述节点地址故障后,在所述至少一个接口,从所述网络禁用所述处理器节点的名义节点地址。
14.如权利要求13所述的处理器节点,其中,所述至少一个处理器在检测到用于所述网络的所述处理器节点的所述节点地址故障后,另外选择避免所述节点地址故障的节点地址,在所述网络中启用所述处理器节点后,所述所选择的节点地址用于在所述至少一个接口寻址所述网络中的所述处理器节点。
15.如权利要求14所述的处理器节点,另外包括非易失存储器;以及其中,所述至少一个处理器将所述处理器节点的备用节点地址保持在所述非易失存储器中;在所述确定冲突和检测到用于所述网络的所述处理器节点的所述节点地址故障后,进一步将所述非易失存储器的所述备用节点地址与所述其他处理器节点的所述所检测到的节点地址进行比较;以及如果所述备用节点地址避免与所述其他处理器节点的所述所检测到的节点地址冲突,通过选择所述非易失存储器的所述备用节点地址,选择避免所述节点地址故障的所述节点地址。
16.一种用于分布式处理器节点系统的处理器节点,所述系统包括网络和多个处理器节点,所述多个处理器节点的至少两个进行复位,包括所述多个处理器节点之一的所述处理器节点进行复位至少一个到所述网络的接口;定时器,所述定时器维持从已经复位所述处理器节点以来的时间表示;以及至少一个处理器,所述至少一个处理器将名义节点地址确定为其自己的节点地址;检测所述网络的其他处理器节点的节点地址;将其他处理器节点的所述所检测到的节点地址与所述名义节点地址进行比较;确定在其他处理器节点的所述所检测到的节点地址的至少一个与所述名义节点地址之间存在任何冲突,所述存在的冲突包括所述网络中的节点地址故障;以及将所述处理器节点的所述定时器的时间与具有所述冲突的所检测到的节点地址的所述其他处理器节点的所述定时器的时间进行比较,以确定具有所述定时器的更新时间的处理器节点;以及如果所述处理器节点具有所述更新时间,在所述至少一个接口,从所述网络禁用所述处理器节点的名义节点地址。
17.如权利要求16所述的处理器节点,其中,所述至少一个处理器,在所述处理器节点具有所述更新时间时另外选择避免所述节点地址故障的节点地址,在所述网络中启用所述处理器节点后,所述所选择的节点地址用于在所述网络中寻址具有所述更新时间的所述处理器节点。
18.如权利要求17所述的处理器节点,另外包括非易失存储器;以及其中,所述至少一个处理器将所述处理器节点的备用节点地址保持在所述非易失存储器中;在所述处理器节点具有所述更新时间后,进一步将所述非易失存储器的所述备用节点地址与所述其他处理器节点的所述所检测到的节点地址进行比较;以及如果所述备用节点地址避免与所述其他处理器节点的所述所检测到的节点地址冲突,通过选择所述非易失存储器的所述备用节点地址,选择避免所述节点地址故障的所述节点地址。
19.一种自动数据存储库,包括多个存储架,用于存储数据存储介质;至少一个数据存储驱动器,用于相对于所述数据存储介质,读和/或写数据;至少一个机器人存取器,用于在所述多个存储架和所述至少一个数据存储驱动器之间传送所述数据存储介质;网络;以及用于操作所述自动数据存储库的多个处理器节点,所述多个处理器节点包括所述网络的节点,所述多个处理器节点的每一个包括至少一个处理器以及至少一个到所述网络的接口;所述多个处理器节点的至少一个在检测到用于所述网络的所述处理器节点的节点地址故障后,在所述至少一个接口,从所述网络禁用所述处理器节点。
20.如权利要求19所述的自动数据存储库,其中,所述至少一个处理器节点另外包括非易失存储器;将所述处理器节点的备用节点地址保持在所述非易失存储器中;通过尝试确定其自己的节点地址来检测所述节点地址故障;以及在不能将任何可用节点地址确定为其自己的节点地址后,选择所述非易失存储器中的所述备用节点地址。
21.如权利要求19所述的自动数据存储库,其中,所述至少一个处理器节点通过在所述处理器节点接口检测所述网络,检测所述节点地址故障。
22.一种自动数据存储库,包括多个存储架,用于存储数据存储介质;至少一个数据存储驱动器,用于相对于所述数据存储介质,读和/或写数据;至少一个机器人存取器,用于在所述多个存储架和所述至少一个数据存储驱动器之间传送所述数据存储介质;网络;以及用于操作所述自动数据存储库的多个处理器节点,所述多个处理器节点包括所述网络的节点,所述多个处理器节点的每一个包括至少一个处理器以及至少一个到所述网络的接口;所述多个处理器节点的至少一个将名义节点地址确定为其自己的节点地址;检测所述网络的其他处理器节点的节点地址;将其他处理器节点的所述所检测到的节点地址与所述名义节点地址进行比较;确定在其他处理器节点的所述所检测到的节点地址的至少一个与所述名义节点地址之间存在任何冲突,所述存在的冲突包括用于所述网络的所述处理器节点的节点地址故障;以及在检测到用于所述网络的所述处理器节点的所述节点地址故障后,在所述至少一个接口,从所述网络禁用所述处理器节点的名义节点地址。
23.如权利要求22所述的自动数据存储库,其中,所述至少一个处理器节点在检测到用于所述网络的所述处理器节点的所述节点地址故障后,另外选择避免所述节点地址故障的节点地址,在所述网络中启用所述处理器节点后,所述所选择的节点地址用于在所述至少一个接口寻址所述网络中的所述处理器节点。
24.如权利要求23所述的自动数据存储库,其中,所述至少一个处理器节点另外包括非易失存储器;将所述处理器节点的备用节点地址保持在所述非易失存储器中;在所述确定冲突和检测到用于所述网络的所述处理器节点的所述节点地址故障后,进一步将所述非易失存储器的所述备用节点地址与所述其他处理器节点的所述所检测到的节点地址进行比较;以及如果所述备用节点地址避免与所述其他处理器节点的所述所检测到的节点地址冲突,通过选择所述非易失存储器的所述备用节点地址,选择避免所述节点地址故障的所述节点地址。
25.一种自动数据存储库,包括多个存储架,用于存储数据存储介质;至少一个数据存储驱动器,用于相对于所述数据存储介质,读和/或写数据;至少一个机器人存取器,用于在所述多个存储架和所述至少一个数据存储驱动器之间传送所述数据存储介质;网络;以及用于操作所述自动数据存储库的多个处理器节点,所述多个处理器节点包括所述网络的节点,所述多个处理器节点的至少两个进行复位,以及包括至少一个处理器,至少一个到所述网络的接口,以及定时器,所述定时器维持从已经复位所述处理器节点以来的时间指示;(I)所述多个处理器节点的至少一个将名义节点地址确定为其自己的节点地址;检测所述网络的其他处理器节点的节点地址;将其他处理器节点的所述所检测到的节点地址与所述名义节点地址进行比较;确定在所述其他处理器节点的所述所检测到的节点地址的至少一个与所述名义节点地址之间存在任何冲突,所述存在的冲突包括所述网络中的节点地址故障;以及(II)具有所述冲突的所检测到的节点地址的所述处理器节点将所述处理器节点的所述定时器的时间与具有所述冲突的所检测到的节点地址的所述其他处理器节点的所述定时器的时间进行比较,确定具有所述定时器的更新时间的处理器节点;以及如果所述处理器节点具有所述更新时间,在所述至少一个接口,从所述网络禁用所述处理器节点的名义节点地址。
26.如权利要求25所述的自动数据存储库,其中,具有所述更新时间的所述处理器节点另外选择避免所述节点地址故障的节点地址,在所述网络中启用所述处理器节点后,所述所选择的节点地址用于在所述网络中寻址具有所述更新时间的所述处理器节点。
27.如权利要求26所述的自动数据存储库,其中,所述具有所述更新时间的所述处理器节点另外包括非易失存储器;将所述处理器节点的备用节点地址保持在所述非易失存储器中;进一步将所述非易失存储器的所述备用节点地址与所述其他处理器节点的所述所检测到的节点地址进行比较;以及如果所述备用节点地址避免与所述其他处理器节点的所述所检测到的节点地址冲突,通过选择所述非易失存储器的所述备用节点地址,选择避免所述节点地址故障的所述节点地址。
28.一种处理自动数据存储库的网络的寻址故障的方法,所述自动数据存储库用于存取数据存储介质,所述自动数据存储库包括用于存储数据存储介质的多个存储架;至少一个数据存储驱动器,用于相对于所述数据存储介质,读和/或写数据;至少一个机器人存取器,用于在所述多个存储架和所述至少一个数据存储驱动器之间传送所述数据存储介质;网络;以及用于操作所述自动数据存储库的多个处理器节点,所述多个处理器节点包括所述网络的节点,所述多个处理器节点的每一个包括至少一个处理器以及至少一个到所述网络的接口;所述方法包括以下步骤检测用于所述网络的所述多个处理器节点之一的节点地址故障;以及在检测到所述节点地址故障后,在所述至少一个接口,从所述网络禁用具有所述节点地址故障的所述处理器节点。
29.如权利要求28所述的方法,其中,所述至少一个处理器节点另外包括非易失存储器;所述方法另外包括以下步骤将所述处理器节点的备用节点地址保持在所述非易失存储器中;通过尝试确定用于所述处理器节点的节点地址来检测所述节点地址故障;以及在不能确定用于所述处理器节点的任何可用节点地址后,选择所述非易失存储器中的所述备用节点地址用于具有所述节点地址故障的所述处理器节点。
30.如权利要求28所述的方法,其中,所述检测所述节点地址故障的步骤包括所述至少一个处理器节点在所述处理器节点接口检测所述网络。
31.一种用于处理自动数据存储库的网络的寻址故障的方法,所述自动数据存储库用于存取数据存储介质,所述自动数据存储库包括用于存储数据存储介质的多个存储架;至少一个数据存储驱动器,用于相对于所述数据存储介质,读和/或写数据;至少一个机器人存取器,用于在所述多个存储架和所述至少一个数据存储驱动器之间传送所述数据存储介质;网络;以及用于操作所述自动数据存储库的多个处理器节点,所述多个处理器节点包括所述网络的节点,所述多个处理器节点的每一个包括至少一个处理器以及至少一个到所述网络的接口;所述方法包括以下步骤确定所述多个处理器节点的至少一个的名义节点地址;检测所述网络的其他处理器节点的节点地址;将其他处理器节点的所述所检测到的节点地址与所述名义节点地址进行比较;确定在所述其他处理器节点的所检测到的节点地址的至少一个与所述名义节点地址之间存在任何冲突,所述存在的冲突包括用于所述网络的所述处理器节点的节点地址故障;以及在检测到用于所述网络的所述处理器节点的所述节点地址故障后,在所述至少一个接口,从所述网络禁用具有所述节点地址故障的所述处理器节点的名义节点地址。
32.如权利要求31所述的方法,另外包括以下步骤在检测到用于所述网络的所述处理器节点的所述节点地址故障后,选择避免所述节点地址故障的节点地址,在所述网络中启用所述处理器节点后,所述所选择的节点地址用于在所述网络中寻址具有所述节点地址故障的所述处理器节点。
33.如权利要求32所述的方法,其中,所述至少一个处理器节点另外包括非易失存储器;所述方法另外包括以下步骤将所述至少一个处理器节点的备用节点地址保持在所述非易失存储器中;在所述确定冲突和检测到用于所述网络的所述至少一个处理器节点的所述节点地址故障后,进一步将所述非易失存储器的所述备用节点地址与所述其他处理器节点的所述所检测到的节点地址进行比较;以及如果所述备用节点地址避免与所述其他处理器节点的所述所检测到的节点地址冲突,通过选择所述非易失存储器的所述备用节点地址,选择避免所述节点地址故障的所述节点地址。
34.一种用于处理自动数据存储库的网络的寻址故障的方法,所述自动数据存储库用于存取数据存储介质,所述自动数据存储库包括用于存储数据存储介质的多个存储架;至少一个数据存储驱动器,用于相对于所述数据存储介质,读和/或写数据;至少一个机器人存取器,用于在所述多个存储架和所述至少一个数据存储驱动器之间传送所述数据存储介质;网络;以及用于操作所述自动数据存储库的多个处理器节点,所述多个处理器节点包括所述网络的节点,所述多个处理器节点的至少两个进行复位,以及包括至少一个处理器,至少一个到所述网络的接口,以及定时器,所述定时器维持从已经复位所述处理器节点以来的时间指示;所述方法包括以下步骤确定所述多个处理器节点的至少一个的名义节点地址;检测所述网络的其他处理器节点的节点地址;将其他处理器节点的所述所检测到的节点地址与所述至少一个处理器节点的所述名义节点地址进行比较;确定在其他处理器节点的所述所检测到的节点地址的至少一个与所述至少一个处理器节点的所述名义节点地址之间存在任何冲突,所述存在的冲突包括所述网络中的节点地址故障;将具有所述名义节点地址的所述处理器节点的所述定时器的时间与具有所述冲突的所检测到的节点地址的所述其他处理器节点的所述定时器的时间进行比较,以确定具有所述定时器的更新时间的处理器节点;以及如果具有所述名义节点地址的所述处理器节点具有所述更新时间,在所述至少一个接口,从所述网络禁用所述处理器节点的名义节点地址。
35.如权利要求34的方法,另外包括以下步骤为具有所述更新时间的所述处理器节点选择避免所述节点地址故障的节点地址,在所述网络中启用所述节点地址后,所述所选择的节点地址用于在所述网络中寻址具有所述更新时间的所述处理器节点。
36.如权利要求35的方法,其中,所述自动数据存储库另外包括非易失存储器,以及其中,所述方法另外包括以下步骤将备用节点地址保持在所述非易失存储器中;进一步将用于具有所述更新时间的所述处理器节点的所述非易失存储器的所述备用节点地址与所述其他处理器节点的所述所检测到的节点地址进行比较;以及如果所述备用节点地址避免与所述其他处理器节点的所述所检测到的节点地址冲突,通过选择所述非易失存储器的所述备用节点地址,选择避免所述节点地址故障的所述节点地址。
37.一种可与可编程计算机一起使用的计算机可读介质的计算机程序产品,所述计算机程序产品具有嵌入其中的计算机可读程序代码,用于处理处理器的节点系统的寻址故障,所述节点系统包括网络;以及包括所述网络的节点的多个处理器节点,所述多个处理器节点的每一个包括至少一个处理器以及至少一个到所述网络的接口;所述计算机程序产品包括使所述处理器节点的至少一个的所述至少一个处理器检测用于所述网络的所述处理器节点的节点地址故障的计算机可读程序代码;以及使所述处理器节点的所述至少一个处理器在检测到所述节点地址故障后,在所述至少一个接口,从所述网络禁用所述处理器节点的计算机可读程序代码。
38.如权利要求37所述的计算机程序产品,其中,所述处理器节点另外包括非易失存储器;以及其中,所述计算机程序产品另外包括使所述处理器节点的所述至少一个处理器将所述处理器节点的备用节点地址保持在所述非易失存储器中的计算机可读程序代码;使所述处理器节点的所述至少一个处理器检测所述节点地址故障的所述计算机可读程序代码,包括使所述处理器节点的所述至少一个处理器尝试确定其自己的节点地址;以及使所述处理器节点的所述至少一个处理器在不能将任何可用节点地址确定为其自己的节点地址后选择所述非易失存储器中的所述备用节点地址的所述计算机可读程序代码。
39.如权利要求37所述的计算机程序产品,其中,使所述处理器节点的所述至少一个处理器检测所述节点地址故障的所述计算机程序代码包括使所述处理器节点的所述至少一个处理器在所述处理器节点接口检测所述网络。
40.一种可与可编程计算机一起使用的计算机可读介质的计算机程序产品,所述计算机程序产品具有嵌入其中的计算机可读程序代码,用于处理处理器节点系统的寻址故障,所述节点系统包括网络;以及包括所述网络的节点的多个处理器节点,所述多个处理器节点的每一个包括至少一个处理器以及至少一个到所述网络的接口;所述计算机程序产品包括使所述处理器节点的至少一个的所述至少一个处理器将名义节点地址确定为其自己的节点地址的计算机可读程序代码;使所述处理器节点的所述至少一个处理器检测所述网络的其他处理器节点的节点地址的计算机可读程序代码;使所述处理器节点的所述至少一个处理器将其他处理器节点的所述所检测到的节点地址与所述名义节点地址进行比较的计算机可读程序代码;使所述处理器节点的所述至少一个处理器确定在其他处理器节点的所述所检测到的节点地址的至少一个与所述名义节点地址之间存在任何冲突的计算机可读程序代码,所述存在的冲突包括用于所述网络的所述处理器节点的节点地址故障;以及使所述处理器节点的所述至少一个处理器在检测到用于所述网络的所述处理器节点的所述节点地址故障后,在所述至少一个接口,从所述网络禁用所述处理器节点的名义节点地址的计算机可读程序代码。
41.如权利要求40所述的计算机程序产品,其中,所述计算机程序产品另外包括使所述处理器节点的所述至少一个处理器在检测到用于所述网络的所述处理器节点的所述节点地址故障后,选择避免所述节点地址故障的节点地址的计算机可读程序代码,在所述网络中启用所述处理器节点后,所述所选择的节点地址用于在所述网络中寻址所述处理器节点。
42.如权利要求41所述的计算机程序产品,其中,所述处理器节点另外包括非易失存储器;以及所述计算机程序产品另外包括使所述处理器节点的所述至少一个处理器将所述处理器节点的备用节点地址保持在所述非易失存储器中的计算机可读程序代码;使所述处理器节点的所述至少一个处理器选择避免所述节点地址故障的节点地址的所述计算机可读程序代码包括使所述处理器节点的所述至少一个处理器将所述非易失存储器的所述备用节点地址与所述其他处理器节点的所述所检测到的节点地址进行比较;以及如果所述备用节点地址避免与所述其他处理器节点的所述所检测到的节点地址冲突,通过选择所述非易失存储器的所述备用节点地址,选择避免所述节点地址故障的所述节点地址。
43.一种可与可编程计算机一起使用的计算机可读介质的计算机程序产品,所述计算机程序产品具有嵌入其中的计算机可读程序代码,用于处理处理器节点系统的寻址故障,所述节点系统包括网络;以及包括所述网络的节点的多个处理器节点,所述多个处理器节点的至少两个进行复位,以及包括至少一个处理器,至少一个到所述网络的接口,以及定时器,所述定时器维持从已经复位所述处理器节点以来的时间指示;所述计算机程序产品包括使所述处理器节点的至少一个的所述至少一个处理器确定所述处理器节点的名义节点地址的计算机可读程序代码;使所述处理器节点的所述至少一个处理器检测所述网络的其他处理器节点的节点地址的计算机可读程序代码;使所述处理器节点的所述至少一个处理器将其他处理器节点的所述所检测到的节点地址与所述处理器节点的所述名义节点地址进行比较的计算机可读程序代码;使所述处理器节点的所述至少一个处理器确定在其他处理器节点的所述所检测到的节点地址的至少一个与所述处理器节点的所述名义节点地址之间存在任何冲突的计算机可读程序代码,所述存在的冲突包括所述网络中的节点地址故障;以及使所述处理器节点的所述至少一个处理器将具有所述名义节点地址的所述处理器节点的所述定时器的时间与具有所述冲突的所述所检测到的节点地址的所述其他处理器节点的所述定时器的时间进行比较,以确定具有所述定时器的更新时间的处理器节点的计算机可读程序代码;以及如果确定所述处理器点具有所述定时器的所述更新时间,使所述处理器节点的所述至少一个处理器在所述至少一个接口,从所述网络禁用所述处理器节点的名义节点地址的计算机可读程序代码。
44.如权利要求43所述的计算机程序产品,其中,所述计算机程序产品另外包括如果确定所述处理器节点具有所述定时器的所述更新时间,使所述处理器节点的所述至少一个处理器选择避免所述节点地址故障的节点地址的计算机可读程序代码,在所述网络中启用所述处理器节点后,所述所选择的节点地址用于在所述网络中寻址所述处理器节点。
45.如权利要求44所述的计算机程序产品,其中,所述处理器节点另外包括非易失存储器;以及所述计算机程序产品另外包括使所述处理器节点的所述至少一个处理器将所述处理器节点的备用节点地址保持在所述非易失存储器中的计算机可读程序代码;使具有所述更新时间的所述处理器节点的所述至少一个处理器选择避免所述节点地址故障的节点地址的所述计算机可读程序代码包括使所述处理器节点的所述至少一个处理器进一步将所述非易失存储器的所述备用节点地址与所述其他处理器节点的所述所检测到的节点地址进行比较;以及如果所述备用节点地址避免与所述其他处理器节点的所述所检测到的节点地址冲突,通过选择所述非易失存储器的所述备用节点地址,选择避免所述节点地址故障的所述节点地址。
46.一种自动数据存储库,包括用于存储数据存储介质的多个存储架;至少一个数据存储驱动器,用于相对于所述数据存储介质,读和/或写数据;至少一个机器人存取器,用于在所述多个存储架和所述至少一个数据存储驱动器间传送所述数据存储介质;网络;以及多个处理器节点,用于操作所述自动数据存储库,所述多个处理器节点包括所述网络的节点,所述多个处理器节点的每一个包括至少一个处理器和至少一个到所述网络的接口;以及所述多个处理器节点的至少一个与所述库的至少一个元件相关,所述处理器节点保持与所述处理器节点相关的所述至少一个元件的指定信息;将名义节点地址确定为用于所述网络的其自己的节点地址;检测与所述处理器节点相关的至少一个元件的当前指定信息;将所述当前指定信息与所述保持的指定信息进行比较;确定所述比较的所述当前指定信息和所述保持的指定信息之间是否匹配,所述匹配的故障包括用于所述网络的所述处理器节点的节点地址故障;以及在用于所述网络的所述处理器节点的所述节点地址故障后,在所述至少一个接口,从所述网络禁用所述处理器节点的名义节点地址。
47.一种用于分布式处理器节点系统的处理器节点,所述系统包括网络和多个处理器节点,所述处理器节点与至少一个元件相关,所述处理器节点包括至少一个到所述网络的接口;以及至少一个处理器,所述至少一个处理器保持与所述处理器节点相关的所述至少一个元件的指定信息;将名义节点地址确定为用于所述网络的所述处理器节点的地址;检测与所述处理器节点相关的至少一个元件的当前指定信息;将所述当前指定信息与所述保持的指定信息进行比较;确定所述比较的所述当前指定信息和所述保持的指定信息之间是否匹配,所述匹配的故障包括用于所述网络的所述处理器节点的节点地址故障;以及在用于所述网络的所述处理器节点的所述节点地址故障后,在所述至少一个接口,从所述网络禁用所述处理器节点的名义节点地址。
48.一种用于确定和处理分布式处理器节点系统的处理器节点的寻址故障的方法,所述系统包括网络和多个处理器节点,所述多个处理器节点的至少一个与至少一个元件相关,所述至少一个处理器节点包括至少一个处理器和至少一个到所述网络的接口;所述方法包括以下步骤保持与所述处理器节点相关的所述至少一个元件的指定信息;将名义节点地址确定为用于所述网络的所述处理器节点的地址;检测与所述处理器节点相关的至少一个元件的当前指定信息;将所述当前指定信息与所述保持的指定信息进行比较;确定所述比较的所述当前指定信息和所述保持的指定信息之间是否匹配,所述匹配的故障包括用于所述网络的所述处理器节点的节点地址故障;以及在用于所述网络的所述处理器节点的所述节点地址故障后,在所述至少一个接口,从所述网络禁用所述处理器节点的名义节点地址。
49.一种可与可编程计算机一起使用的计算机可读介质的计算机程序产品,所述计算机程序产品具有嵌入其中的计算机可读程序代码,用于确定和处理处理器节点系统的寻址故障,所述节点系统包括网络;以及包括所述网络的节点的多个处理器节点,所述多个处理器节点的至少一个与至少一个元件相关,所述至少一个处理器节点包括至少一个处理器和至少一个到所述网络的接口,所述计算机程序产品包括使所述处理器节点的所述至少一个处理器保持与所述处理器节点相关的所述至少一个元件的指定信息的计算机可读程序代码;使所述处理器节点的所述至少一个处理器将名义节点地址确定为用于所述网络的所述处理器节点的地址的计算机可读程序代码;使所述处理器节点的所述至少一个处理器检测与所述处理器节点有关的至少一个元件的当前指定信息的计算机可读程序代码;使所述处理器节点的所述至少一个处理器将所述当前指定信息与所述保持的指定信息进行比较的计算机可读程序代码;使所述处理器节点的所述至少一个处理器确定所述比较的所述当前指定信息和所述保持的指定信息之间是否匹配的计算机可读程序代码,所述匹配的故障包括用于所述网络的所述处理器节点的节点地址故障;以及使所述处理器节点的所述至少一个处理器在用于所述网络的所述处理器节点的所述节点地址故障后,在所述至少一个接口,从所述网络禁用所述处理器节点的名义节点地址的计算机可读程序代码。
全文摘要
本发明涉及在处理器节点的节点系统中处理寻址故障,该处理器节点系统包括至少一个处理器和至少一个到网络的接口。在检测到用于网络的处理器节点的节点地址故障后,诸如缺少节点地址或存在复制地址,则从网络禁用处理器节点,从而暂时使处理器节点故障,以便系统仍然操作。可以选择存储在非易失存储器中、避免节点地址故障的备用节点地址。
文档编号H04L29/06GK1656777SQ03812391
公开日2005年8月17日 申请日期2003年6月13日 优先权日2002年6月26日
发明者布赖恩·格拉德·古德曼, 小罗纳德·法耶·希尔, 莱昂纳德·乔治·杰希奥诺夫斯基, 雷蒙德·雅迪 申请人:国际商业机器公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1