JP5528243B2 - マルチパスを制御するシステム及び方法 - Google Patents

マルチパスを制御するシステム及び方法 Download PDF

Info

Publication number
JP5528243B2
JP5528243B2 JP2010165540A JP2010165540A JP5528243B2 JP 5528243 B2 JP5528243 B2 JP 5528243B2 JP 2010165540 A JP2010165540 A JP 2010165540A JP 2010165540 A JP2010165540 A JP 2010165540A JP 5528243 B2 JP5528243 B2 JP 5528243B2
Authority
JP
Japan
Prior art keywords
sas
port
address
target
expander
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
JP2010165540A
Other languages
English (en)
Other versions
JP2012027680A (ja
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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Priority to JP2010165540A priority Critical patent/JP5528243B2/ja
Priority to US13/189,253 priority patent/US20120023278A1/en
Publication of JP2012027680A publication Critical patent/JP2012027680A/ja
Priority to US13/592,529 priority patent/US8694708B2/en
Priority to US14/200,281 priority patent/US9250989B2/en
Application granted granted Critical
Publication of JP5528243B2 publication Critical patent/JP5528243B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0727Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a storage system, e.g. in a DASD or network based storage system
    • 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/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4027Coupling between buses using bus bridges
    • G06F13/4045Coupling between buses using bus bridges where the bus bridge performs an extender function
    • 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/0605Improving or facilitating administration, e.g. storage management by facilitating the interaction with a user or administrator
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0635Configuration or reconfiguration of storage systems by changing the path, e.g. traffic rerouting, path reconfiguration
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • 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/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4027Coupling between buses using bus bridges
    • G06F13/404Coupling between buses using bus bridges with address mapping
    • 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]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/12Discovery or management of network topologies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/12Discovery or management of network topologies
    • H04L41/122Discovery or management of network topologies of virtualised topologies, e.g. software-defined networks [SDN] or network function virtualisation [NFV]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Hardware Design (AREA)
  • Signal Processing (AREA)
  • Quality & Reliability (AREA)
  • Small-Scale Networks (AREA)
  • Information Transfer Systems (AREA)

Description

本発明は、マルチパスを制御するシステム及び方法に関する。特に、本発明は、SAS(Serial Attached SCSI)ネットワークにおけるマルチパスを制御するシステム及び方法に関する。
多くのストレージネットワークは、ホストからストレージまでのパスを二重化した冗長構成であるマルチパス構成を有している。例えば、SASストレージネットワークにおけるマルチパス構成では、ホストが2つのSASイニシエータポートを有し、ストレージが2つのSASターゲットポートを有し、ストレージの2つのSASターゲットポートからの2つの冗長SASリンクをそれぞれホストのSASイニシエータポートに接続している。そして、1つのSASイニシエータポートからは2つのSASターゲットポートのうちの一方のみにアクセスできるようになっている。このマルチパス構成は、一方のパスに障害が発生しても、他方のパスでホストがストレージにアクセスできるようにするものであり、ストレージの信頼性を高めるためには必要な構成である。
ところが、このようなマルチパス構成を構築しただけでは、同じストレージがホストからは別のストレージとして見えてしまう。また、一方のパスの障害時に他方のパスに自動的に切り替えることもできない。
そこで、通常、ホストに、マルチパスを制御するソフトウェア(以下、「マルチパスドライバ」という)をインストールする。マルチパスドライバは、ホストから見えるストレージの数の制御や、パスの障害の検知及びパス障害時のパスの切り替えを行う。即ち、マルチパスドライバは、ホストのアプリケーションからマルチパスを意識させないようにするものである。
尚、従来から、ストレージネットワークにおける冗長構成に関する技術は知られている(例えば、特許文献1、2参照)。
特許文献1では、ホストコンピュータとストレージデバイスとが複数のアクセスパスで接続されているストレージデバイスのマルチパスシステムにおけるホストコンピュータが、すべてのアクセスパスを検出し、検出された各アクセスパスに対して所定の時間間隔で検査I/Oを発行して各アクセスパスの障害発生状況を監視し、各アクセスパスの障害発生状況から、障害が発生していると推定される構成要素をまとめた障害箇所情報を作成する。
特許文献2では、複数の記憶装置を接続するネットワークを有するストレージ装置において、ネットワークからデータを入出力するデータ入出力部と、データ入出力部及び記憶装置間を接続する接続部との間、又は、接続部と接続部との間でデータを入出力するための複数の物理的なリンクのうち、少なくとも1つ以上の物理的なリンクを、少なくとも1
つ以上の論理的なリンクに分割して、1つの物理的なリンクに複数の論理的なリンクを設定し、複数の論理的なリンクに、データを同時に多重化転送すると共に、物理的なリンクにデータを転送する。
特開2008−158666号公報 特開2008−250631号公報
先に述べた通り、ストレージネットワークでマルチパス構成を構築する場合、通常、ホストにマルチパスドライバをインストールしていた。
しかしながら、現状では、ストレージネットワークのインターフェイスによって、異なるマルチパスドライバをインストールすることが必要である。また、ストレージネットワークのインターフェイスが同一であったとしても、ホストのOSが異なる場合、異なるベンダのストレージ製品やスイッチ製品をホストに接続する場合等には、異なるマルチパスドライバをインストールしなければならないことがある。従って、マルチパス構成を導入するのに手間がかかり、しかも、マルチパスドライバの組み合わせによっては予期しない動作が行われることがあるため、システム運用前に入念に組み合わせ検証を行うことが必要となっている。
尚、特許文献1、2の技術は、ストレージネットワークにおける冗長構成に関する技術ではあるが、ホストにマルチパスドライバをインストールする場合のこのような課題を解決するものではない。
本発明の目的は、SASネットワークにおけるマルチパスを、ホストにマルチパスドライバをインストールする必要なく制御可能とすることにある。
本発明の他の目的は、SASネットワークにおけるマルチパスを、スイッチ及びストレージサブシステム側で制御可能とすることにある。
かかる目的のもと、本発明は、SAS(Serial Attached SCSI)ネットワークにおけるマルチパスを制御するシステムであって、SASイニシエータと、第1のポート及び第2のポートを有するSASターゲットと、SASイニシエータと、SASターゲットの第1のポートとを接続することにより、第1のパスを形成する第1のSASエクスパンダと、SASイニシエータと、SASターゲットの第2のポートとを接続することにより、第2のパスを形成する第2のSASエクスパンダとを含み、第1のSASエクスパンダは、自身のSASアドレスに代えて、自身及び第2のSASエクスパンダが共通に有する一の仮想的なSASアドレスである仮想エクスパンダアドレスをSASイニシエータに通知し、少なくとも第1のポートのSASアドレスに代えて、SASターゲットの一の仮想的なポートのSASアドレスである仮想ターゲットポートアドレスをSASイニシエータに通知し、第2のSASエクスパンダは、自身のSASアドレスに代えて、仮想エクスパンダアドレスをSASイニシエータに通知し、少なくとも第2のポートのSASアドレスに代えて、仮想ターゲットポートアドレスをSASイニシエータに通知し、SASイニシエータは、第1のSASエクスパンダ及び第2のSASエクスパンダにより仮想エクスパンダアドレスが通知されると、一のSASエクスパンダが自身の一のワイドポートに接続されていると認識し、第1のSASエクスパンダ及び第2のSASエクスパンダにより仮想ターゲットポートアドレスが通知されると、SASターゲットが一のポートを介して一のSASエクスパンダに接続されていると認識する、システムを提供する。
ここで、第1のSASエクスパンダ及び第2のSASエクスパンダの各々は、仮想ターゲットポートアドレスを宛先とするデータをSASイニシエータから受信すると、第1のポート及び第2のポートのうちの仮想ターゲットポートアドレスに対応付けられた使用中ポートのSASアドレスを宛先として、データをSASターゲットに送信する、ものであってよい。
また、第1のSASエクスパンダ及び第2のSASエクスパンダの各々は、第1のポート及び第2のポートのうちの特定のポートまでのパスの障害を検知すると、仮想ターゲットポートアドレスに対応付けられた使用中ポートのSASアドレスを、第1のポート及び第2のポートのうちの特定のポート以外のポートのSASアドレスに切り替える、ものであってよい。
また、本発明は、SASイニシエータとSASターゲットとを接続するSASエクスパンダとして機能する装置であって、SASエクスパンダとして機能する自装置及び他の装置がSASイニシエータに接続されている構成を、SASエクスパンダとして機能する一の装置がSASイニシエータの一のワイドポートに接続されている構成としてSASイニシエータに認識させる処理であって、自装置のSASアドレスに代えて、自装置及び他の装置が共通に有する一の仮想的なSASアドレスである仮想エクスパンダアドレスをSASイニシエータに通知する処理を行う第1の通知部と、SASターゲットの第1のポートが自装置に接続され、SASターゲットの第2のポートが他の装置に接続されている構成を、SASターゲットの一のポートが一の装置に接続されている構成としてSASイニシエータに認識させる処理であって、少なくとも第1のポートのSASアドレスに代えて、SASターゲットの一の仮想的なポートのSASアドレスである仮想ターゲットポートアドレスをSASイニシエータに通知する処理を行う第2の通知部とを含む、装置も提供する。
ここで、本発明は、仮想ターゲットポートアドレスと、第1のポート及び第2のポートのうちの使用中ポートのSASアドレスとを対応付けた対応情報を記憶する記憶部と、仮想ターゲットポートアドレスを宛先とするデータをSASイニシエータから受信する受信部と、対応情報にて仮想ターゲットポートアドレスに対応付けられた使用中ポートのSASアドレスを、受信部により受信されたデータの宛先として決定する決定部と、受信部により受信されたデータを、決定部により決定された使用中ポートのSASアドレスを宛先として送信する送信部とを更に含む、ものであってよい。
また、本発明は、第1のポート及び第2のポートのうちの特定のポートまでのパスの障害を検知する検知部と、検知部により特定のポートまでのパスの障害が検知されると、対応情報における使用中ポートのSASアドレスを、第1のポート及び第2のポートのうちの特定のポート以外のポートのSASアドレスに切り替える切り替え部とを更に含む、ものであってよい。
また、本発明は、SASイニシエータとSASターゲットとを接続するSASエクスパンダとして機能する装置であって、SASエクスパンダとして機能する自装置及び他の装置がSASイニシエータに接続されている構成を、SASエクスパンダとして機能する一の装置がSASイニシエータの一のワイドポートに接続されている構成としてSASイニシエータに認識させる処理であって、自装置のSASアドレスに代えて、自装置及び他の装置が共通に有する一の仮想的なSASアドレスである仮想エクスパンダアドレスをSASイニシエータに通知する処理を行う第1の通知部と、SASターゲットの第1のポートが自装置に接続され、SASターゲットの第2のポートが他の装置に接続されている構成を、SASターゲットの一のポートが一の装置に接続されている構成としてSASイニシエータに認識させる処理であって、少なくとも第1のポートのSASアドレスに代えて、SASターゲットの一の仮想的なポートのSASアドレスである仮想ターゲットポートアドレスをSASイニシエータに通知する処理を行う第2の通知部と、第1のポートのSASアドレスと、第2のポートのSASアドレスと、仮想ターゲットポートアドレスと、第1のポート及び第2のポートのうちの優先ポートのSASアドレスと、第1のポート及び第2のポートのうちの使用中ポートのSASアドレスとを対応付けた対応情報を記憶する記憶部と、第1のポート及び第2のポートのうちの特定のポートまでのパスの障害を検知する検知部と、検知部により特定のポートまでのパスの障害が検知されない場合には、対応情報における使用中ポートのSASアドレスとして優先ポートのSASアドレスを設定し、検知部により特定のポートまでのパスの障害が検知された場合には、対応情報における使用中ポートのSASアドレスとして第1のポート及び第2のポートのうちの特定のポート以外のポートのSASアドレスを設定する設定部と、仮想ターゲットポートアドレスを宛先とするデータをSASイニシエータから受信する受信部と、対応情報にて仮想ターゲットポートアドレスに対応付けられた使用中ポートのSASアドレスを、受信部により受信されたデータの宛先として決定する決定部と、受信部により受信されたデータを、決定部により決定された使用中ポートのSASアドレスを宛先として送信する送信部とを含む、装置も提供する。
更に、本発明は、SASイニシエータとSASターゲットと第1のSASエクスパンダと第2のSASエクスパンダとを含むSASネットワークにおけるマルチパスを制御する方法であって、第1のSASエクスパンダは、SASイニシエータと、SASターゲットの第1のポートとを接続することにより、第1のパスを形成し、自身のSASアドレスに代えて、自身及び第2のSASエクスパンダが共通に有する一の仮想的なSASアドレスである仮想エクスパンダアドレスをSASイニシエータに通知し、少なくとも第1のポートのSASアドレスに代えて、SASターゲットの一の仮想的なポートのSASアドレスである仮想ターゲットポートアドレスをSASイニシエータに通知し、第2のSASエクスパンダは、SASイニシエータと、SASターゲットの第2のポートとを接続することにより、第2のパスを形成し、自身のSASアドレスに代えて、仮想エクスパンダアドレスをSASイニシエータに通知し、少なくとも第2のポートのSASアドレスに代えて、仮想ターゲットポートアドレスをSASイニシエータに通知し、SASイニシエータは、第1のSASエクスパンダ及び第2のSASエクスパンダにより仮想エクスパンダアドレスが通知されると、一のSASエクスパンダが自身の一のワイドポートに接続されていると認識し、第1のSASエクスパンダ及び第2のSASエクスパンダにより仮想ターゲットポートアドレスが通知されると、SASターゲットが一のポートを介して一のSASエクスパンダに接続されていると認識する、方法も提供する。
更にまた、本発明は、SASイニシエータとSASターゲットとを接続するSASエクスパンダとしてコンピュータ装置を機能させるプログラムであって、コンピュータ装置を、SASエクスパンダとして機能する自装置及び他の装置がSASイニシエータに接続されている構成を、SASエクスパンダとして機能する一の装置がSASイニシエータの一のワイドポートに接続されている構成としてSASイニシエータに認識させる処理であって、自装置のSASアドレスに代えて、自装置及び他の装置が共通に有する一の仮想的なSASアドレスである仮想エクスパンダアドレスをSASイニシエータに通知する処理を行う第1の通知部と、SASターゲットの第1のポートが自装置に接続され、SASターゲットの第2のポートが他の装置に接続されている構成を、SASターゲットの一のポートが一の装置に接続されている構成としてSASイニシエータに認識させる処理であって、少なくとも第1のポートのSASアドレスに代えて、SASターゲットの一の仮想的なポートのSASアドレスである仮想ターゲットポートアドレスをSASイニシエータに通知する処理を行う第2の通知部として機能させる、プログラムも提供する。
本発明によれば、SASネットワークにおけるマルチパスを、ホストにマルチパスドライバをインストールする必要なく制御可能となる。
本発明の実施の形態におけるSASストレージネットワークの構成例を示したブロック図である。 本発明の実施の形態におけるSASエクスパンダの構成例を示したブロック図である。 本発明の実施の形態で用いられるターゲットポート構成テーブルの一例を示した図である。 本発明の実施の形態におけるSASエクスパンダの仮想トポロジ報告時の動作例を示したフローチャートである。 本発明の実施の形態におけるSASエクスパンダの仮想トポロジ生成時の動作例を示したフローチャートである。 本発明の実施の形態におけるSASエクスパンダの仮想トポロジ報告時の動作例を示したフローチャートである。 本発明の実施の形態のSASエクスパンダによる仮想トポロジ報告後のSASホストからの各装置の見え方を示した図である。 本発明の実施の形態におけるSASエクスパンダのSASフレーム受信時の動作例を示したフローチャートである。 本発明の実施の形態におけるSASエクスパンダのパス障害検知時の動作例を示したフローチャートである。
以下、添付図面を参照して、本発明の実施の形態について詳細に説明する。
まず、本発明の実施の形態の概要を説明する。
SASストレージネットワークは、SASエクスパンダを用いて、複数のSASデバイス(SASイニシエータ及びSASターゲット)を接続することにより構成される。
このようなSASストレージネットワークにおいて、本実施の形態では、SASの標準を逸脱することなく、SASの特徴を利用し、マルチパス構成のために用いるSASエクスパンダにマルチパス制御機能を搭載する。具体的には、SASの特徴のうち、マルチレーン接続と、SMP(SAS Management Protocol)によるSASトポロジのディスカバリプロセスとに注目し、SASエクスパンダに対して、各ホストにそのホスト固有の仮想的なSASトポロジを報告する機能と、SASアドレス変換機能とを追加する。
こうすることで、特別なHBA(Host Bus Adapter)やストレージ装置を必要とせず、また、マルチパスドライバ等の特別なソフトウェアをホストにインストールすることなく、ホストに対して、あたかも信頼性の高い1つのSASストレージがマルチレーンポートで接続されているように見せることを可能とする。
図1は、本実施の形態におけるSASストレージネットワーク1の構成例を示したブロック図である。
図示するように、本実施の形態におけるSASストレージネットワーク1は、SASホスト10と、SASスイッチ20a,20bと、SASストレージサブシステム30とを備えている。
SASホスト10は、SASスイッチ20a,20bを介してSASストレージサブシステム30にアクセスするコンピュータであり、単に「ホスト」ということもある。例えば、SASストレージネットワーク1がブレードサーバシステムであるとすると、SASホスト10は、マイクロプロセッサ、メモリ、ネットワークコントローラ等のコンポーネントを1枚に収めたブレードサーバである。
また、SASホスト10は、SASイニシエータ11として機能する部分を含む。ここで、SASイニシエータ11として機能する部分とは、例えばHBAである。
更に、本実施の形態では、後述するように、SASイニシエータ11が、1つのSASイニシエータポート(以下、単に「イニシエータポート」という)として、SASイニシエータ11内に黒の塗り潰しで示したワイドポートを有するように構成される。そして、SASエクスパンダ21a,21bからの冗長なリンク41a,41bがマルチレーンとしてまとめられ、このワイドポートに接続される。従って、ワイドポートには1つのSASアドレスが割り当てられる。以下では、このSASアドレスをHとする。尚、SASはマルチレーンによるワイドポート機能を標準でサポートしているので、特別なソフトウェアを必要とせずにこのような構成とすることができる。
SASスイッチ20a,20bは、それぞれ、SASホスト10とSASストレージサブシステム30とを接続することにより、複数のパスを形成するスイッチモジュールである。
また、SASスイッチ20a,20bは、それぞれ、SASエクスパンダ21a,21bとして機能する部分を含む。本実施の形態では、第1のSASエクスパンダの一例として、SASエクスパンダ21aを設けており、第2のSASエクスパンダの一例として、SASエクスパンダ21bを設けている。
更に、SASストレージサブシステム30からのリンク42aはSASエクスパンダ21aに接続され、SASストレージサブシステム30からのリンク42bはSASエクスパンダ21bに接続される。そして、SASエクスパンダ21aとSASエクスパンダ21bも互いに接続され、ブリッジ43を構成している。
尚、図では、SASエクスパンダ21a,21bを示したが、これらを区別する必要がない場合は、単にSASエクスパンダ21とも称する。また、ここでは2つのSASエクスパンダ21を示したが、SASエクスパンダ21の数は2つには限らない。
SASストレージサブシステム30は、SASホスト10から受信したデータを記憶したり、記憶していたデータをSASホスト10に送信したりするサブシステムである。
また、SASストレージサブシステム30は、SASエクスパンダ31a,31bとして機能する部分と、SASターゲット32a,32b,32cとして機能する部分とを含む。ここで、SASエクスパンダ31a,31bとして機能する部分とは、例えばSASストレージを制御するSASストレージコントローラである。また、SASターゲット32a,32b,32cとして機能する部分とは、例えばデュアルポートのSASストレージであり、それぞれが2つのSASターゲットポート(以下、単に「ターゲットポート」という)を有している。そして、この2つのターゲットポートのそれぞれがSASアドレスを有している。以下、SASターゲット32a,32b,32cの2つのターゲットポートのSASアドレスのうち、SASエクスパンダ31a側のターゲットポートのSASアドレスをD1A,D2A,D3Aとし、SASエクスパンダ31b側のターゲットポートのSASアドレスをD1B,D2B,D3Bとする。本実施の形態では、第1のポートの一例として、SASエクスパンダ31a側のターゲットポートを用いており、第2のポートの一例として、SASエクスパンダ31b側のターゲットポートを用いている。
尚、図では、SASターゲット32a,32b,32cを示したが、これらを区別する必要がない場合は、単にSASターゲット32とも称する。また、ここでは3つのSASターゲット32を示したが、SASターゲット32の数は3つには限らない。
このような構成において、SASホスト10からSASターゲット32への物理的なパスには、以下の4通りがある(x=1,2,3)。
(A)イニシエータポートH→リンク41a→リンク42a→ターゲットポートDxA
(B)イニシエータポートH→リンク41a→ブリッジ43→リンク42b→ターゲットポートDxB
(C)イニシエータポートH→リンク41b→リンク42b→ターゲットポートDxB
(D)イニシエータポートH→リンク41b→ブリッジ43→リンク42a→ターゲットポートDxA
本実施の形態では、第1のパスの一例として、パスA及びパスDを用いており、第2のパスの一例として、パスB及びパスCを用いている。
ところで、本実施の形態では、前述の通り、SASホスト10にマルチパスドライバ等の特別なソフトウェアをインストールしない。
しかしながら、図1に示した構成のまま、SASホスト10にマルチパスドライバ等をインストールしなかったとすると、SASホスト10は、SASターゲット32の2つのターゲットポートに別々のパスでアクセスすることができるので、1つのSASターゲット32が複数のSASターゲット32として見えてしまう。
そこで、SASホスト10から見えるSASターゲット32の数の制御及びSASターゲット32へのアクセスパスの制御のために、SASホスト10に直接接続されているSASエクスパンダ21a,21bに対して、以下の機能を搭載する。
(1)ターゲットポート構成テーブル
(2)各ホストにそのホスト固有の仮想的なSASトポロジを報告する機能
(3)ターゲットポートのSASアドレスの変換によるパス制御機能
次に、これらの機能が搭載されたSASエクスパンダ21の機能構成について説明する。尚、SASエクスパンダ21aとSASエクスパンダ21bの機能構成は同様であるので、ここでは、SASエクスパンダ21の機能構成として説明する。
図2は、SASエクスパンダ21の機能構成例を示したブロック図である。
図示するように、SASエクスパンダ21は、受信部22と、テーブル記憶部23と、装置情報管理部24と、トポロジ管理部25と、宛先変更部26と、テーブル更新部27と、送信部29とを備えている。
受信部22は、SASイニシエータ11が初期化時に送信したIDENTIFY ADDRESSフレームを受信する。また、SASイニシエータ11がSASディスカバリプロセスの実行時に送信したSASトポロジの要求や、自装置がSASディスカバリプロセス実行時に送信したSASトポロジの要求に対する応答を受信する。更に、SASイニシエータ11が送信したSASフレームを受信する。更にまた、パスの障害を検知するための情報を受信する。本実施の形態では、データを受信する受信部、特定のポートまでのパスの障害を検知する検知部の一例として、受信部22を設けている。
テーブル記憶部23は、SASイニシエータ11がアクセスすべきターゲットポート等を定義したターゲットポート構成テーブルを記憶する。このターゲットポート構成テーブルについては後で詳しく述べる。本実施の形態では、対応情報を記憶する記憶部の一例として、テーブル記憶部23を設けている。
装置情報管理部24は、自装置の装置種別がSASエクスパンダであることと、自装置の仮想的なSASアドレス(以下、「仮想エクスパンダアドレス」という)とを含む装置情報を管理する。
トポロジ管理部25は、SASトポロジを知るためのプロセス(SASディスカバリプロセス)を自装置が実行するための情報を管理すると共に、SASディスカバリプロセスを自装置が実行することによって取得したSASトポロジに基づいて仮想的なSASトポロジ(以下、「仮想トポロジ」という)を生成する。特に、この仮想トポロジには、SASターゲット32の仮想的なターゲットポートのSASアドレス(以下、「仮想ターゲットポートアドレス」という)が含まれる。
宛先変更部26は、受信部22が受信したSASフレームの宛先を、ターゲットポート構成テーブルを参照して変更する。本実施の形態では、使用中ポートのSASアドレスをデータの宛先として決定する決定部の一例として、宛先変更部26を設けている。
テーブル更新部27は、受信部22が受信した情報に基づいてパスの障害を検知した場合に、SASイニシエータ11がアクセスすべきターゲットポートが切り替わるように、テーブル記憶部23に記憶されたターゲットポート構成テーブルを更新する。本実施の形態では、使用中ポートのSASアドレスを特定のポート以外のポートのSASアドレスに切り替える切り替え部、使用中ポートのSASアドレスとして特定のポート以外のポートのSASアドレスを設定する設定部の一例として、テーブル更新部27を設けている。
送信部29は、SASイニシエータ11からIDENTIFY ADDRESSフレームを受信した場合には、自装置の装置種別がSASエクスパンダであることと、自装置の仮想エクスパンダアドレスとをSASイニシエータ11に送信する。また、リンクリセット検知時及び変更ブロードキャスト受信時には、他の装置にSASトポロジの要求を送信する。そして、SASイニシエータ11からのSASトポロジの要求に対して、仮想トポロジを送信する。更に、SASフレームをSASターゲット32に送信する。本実施の形態では、仮想エクスパンダアドレスをSASイニシエータに通知する第1の通知部、仮想ターゲットポートアドレスをSASイニシエータに通知する第2の通知部、データを送信する送信部の一例として、送信部29を設けている。
以下、SASエクスパンダ21に搭載する機能(1)〜(3)について説明する。
(1)ターゲットポート構成テーブル
図3は、SASエクスパンダ21のテーブル記憶部23に記憶させるターゲットポート構成テーブルの一例を示した図である。
図示するように、ターゲットポート構成テーブルは、SASホスト10に提供するストレージの数だけエントリを持つ。図1ではSASターゲット32a,32b,32cを示したので、図3では、これらのSASターゲット32にそれぞれ対応するエントリ#1,#2,#3を設けている。
また、各エントリに対して、以下の項目ごとに値を設定している。
第一に、そのSASターゲット32のSASエクスパンダ31a側のターゲットポート(図では「ターゲットポートA」と表記)のSASアドレスである。ここでは、図1での説明に従い、エントリ#1,#2,#3に対して、それぞれ、SASアドレスD1A,D2A,D3Aを記憶している。
第二に、そのSASターゲット32のSASエクスパンダ31b側のターゲットポート(図では「ターゲットポートB」と表記)のSASアドレスである。ここでは、図1での説明に従い、エントリ#1,#2,#3に対して、それぞれ、SASアドレスD1B,D2B,D3Bを記憶している。
第三に、そのSASターゲット32の仮想ターゲットポートアドレスである。ここでは、D1A及びD1Bに対する仮想ターゲットポートアドレスをD1、D2A及びD2Bに対する仮想ターゲットポートアドレスをD2、D3A及びD3Bに対する仮想ターゲットポートアドレスをD3としている。
第四に、そのSASターゲット32の2つのターゲットポートのうちアクセスに優先的に使用すべきターゲットポート(以下、「優先ターゲットポート」という)のSASアドレスである。ここでは、SASエクスパンダ31a側のターゲットポートを優先ターゲットポートとしている。
第五に、そのSASターゲット32の2つのターゲットポートのうちアクセスに現在使用中のターゲットポート(以下、「カレントアクセスポート」という)のSASアドレスである。初期状態では、優先ターゲットポートをカレントアクセスポートとするので、図では、そのときの状態を示している。
尚、このターゲットポート構成テーブルは、SASホスト10やその他のSAS管理用サーバからSMPにてSASエクスパンダ21に送信するとよい。或いは、ウェブ等の管理ユーザインターフェイスから通信回線を介して設定してもよい。
また、ターゲットポート構成テーブルに設定する仮想ターゲットポートアドレスとしては、図3のように新たなSASアドレスを生成してもよいし、SASターゲット32が既に仮想のSASアドレス(例えば、SASデバイス名等)を持っていればそれを使用してもよい。
ここで、ターゲットポート構成テーブルは、SASエクスパンダ21a,21bの両方に持たせる必要がある。そして、SASエクスパンダ21aが持つターゲットポート構成テーブルとSASエクスパンダ21bが持つターゲットポート構成テーブルとの間で同期をとることも必要である。
(2)各ホストにそのホスト固有の仮想的なSASトポロジを報告する機能
SASイニシエータ11は、SASのポートの初期化時に、自身のイニシエータポートの接続先を特定する。具体的には、IDENTIFY ADDRESSフレームにより、自身のPHYに接続されている装置の装置種別とSASアドレスとを特定する。本実施の形態において、SASイニシエータ11は、IDENTIFY ADDRESSフレームを、SASエクスパンダ21a,21bの両方に送信する。
これに対し、SASエクスパンダ21は、自身の実SASアドレスに代えて、1つの仮想エクスパンダアドレスをSASイニシエータ11に通知する。
図4は、このときのSASエクスパンダ21の動作例を示したフローチャートである。
SASエクスパンダ21(SASエクスパンダ21a,21b)では、まず、受信部22が、SASイニシエータ11からIDENTIFY ADDRESSフレームを受信する(ステップ201)。
すると、装置情報管理部24が、自身の装置種別として、SASエクスパンダである旨の情報を取得すると共に、自身のSASアドレスとして、SASエクスパンダ21a,21bに共通に与えられた仮想エクスパンダアドレスを取得する(ステップ202)。ここで、仮想エクスパンダアドレスは、SASエクスパンダ21内の図示しないメモリに予め記憶しておけばよい。
そして、送信部29は、装置情報管理部24が取得した装置種別及びSASアドレスをSASイニシエータ11に送信する(ステップ203)。
その結果、SASホスト10のHBAは、自身の2つのPHYが同じSASエクスパンダに接続されていると判断し、1つの2レーンポートを構成させる。HBAは、複数のPHYが同一のSASエクスパンダに接続した場合、SASの標準の機能により、ワイドポートを形成し、複数のPHYを1つのポートとして機能させるからである。
その後、SASイニシエータ11は、SASトポロジを知るためのプロセス(SASディスカバリプロセス)を実行する。SASディスカバリプロセスを実行した装置は、SASドメインに存在する全ての装置について、装置種別、SASアドレス、サポートするプロトコル、どのSASエクスパンダに接続されているかを知ることができる。SASイニシエータ11はこれを実行し、接続可能なSASアドレスの特定や、コネクションレートの特定に利用する。
また、通常、SASエクスパンダ21は、SASフレームのルーティングのためにルーティングテーブルを構築する必要があるが、自身のルーティングテーブルを構築する方法には、以下の2つの方法がある。
・SASエクスパンダ21がSASディスカバリプロセスを実行して情報を取得することによりルーティングテーブルを構築するセルフコンフィグレーション
・外部装置(例えばSASイニシエータ11)がSMPによってSASエクスパンダ21にルーティングテーブルを設定する外部コンフィグレーション
本実施の形態では、このうち、セルフコンフィグレーションのみをサポートする。つまり、SASエクスパンダ21も、自身のルーティングテーブルを構築するためにSASディスカバリプロセスを実行する。
さて、上述したように、SASイニシエータ11は、SASディスカバリプロセスを実行することにより、SASエクスパンダ21にSASトポロジを要求する。
これに対し、SASエクスパンダ21は、SASターゲット32のターゲットポートの実SASアドレスを含む実際のSASトポロジに代えて、1つの仮想ターゲットポートアドレスを含む仮想的なSASトポロジ(仮想トポロジ)をSASイニシエータ11に通知する。
図5−1及び図5−2は、このときのSASエクスパンダ21の動作例を示したフローチャートである。このうち、図5−1は、SASエクスパンダ21がSASディスカバリプロセスを実行する場合の動作例を示したものであり、図5−2は、SASイニシエータ11がSASディスカバリプロセスを実行する場合の動作例を示したものである。
まず、SASエクスパンダ21がSASディスカバリプロセスを実行する場合について説明する。
SASエクスパンダ21では、図5−1に示すように、まず、受信部22が、リンクリセットの検知又は変更ブロードキャストの受信を行う(ステップ221)。
すると、トポロジ管理部25が、SASトポロジを知るためのSASディスカバリプロセスの実行を開始する(ステップ222)。
そして、送信部29が、他の装置にSASトポロジを要求する(ステップ223)。具体的には、まず、PHYの接続先の装置に対してSASトポロジを要求する。そして、その接続先が更にSASエクスパンダであれば、そのSASエクスパンダについても同様の処理を行う。
これにより、受信部22が、SASドメインに存在する全ての装置について、装置種別、SASアドレス、サポートするプロトコル、どのSASエクスパンダに接続されているかを示すSASトポロジを受信する(ステップ224)。
すると、トポロジ管理部25が、受信部22が受信したSASトポロジに基づいて仮想トポロジを生成する(ステップ225)。ここで、仮想トポロジは、HBAがアクセス可能な装置のみがあたかもSASエクスパンダに直接接続されているかのように見せるためのものである。従って、この仮想トポロジを生成する処理は、ターゲットポート構成テーブルを参照して実際のターゲットポートのSASアドレスを仮想ターゲットポートアドレスに変換する処理や、仮想エクスパンダアドレスを有するSASエクスパンダにこの仮想のターゲットポートが接続された状態を表すように変換する処理等を含んでいる。或いは、受信部22が受信したSASトポロジがターゲットポート構成テーブルの定義と矛盾していれば、エラー情報を生成してもよい。尚、仮想トポロジやエラー情報は、SASエクスパンダ21内の図示しないメモリに記憶すればよい。
次に、SASイニシエータ11がSASディスカバリプロセスを実行する場合について説明する。
SASイニシエータ11は、リンクリセットの検知又は変更ブロードキャストの受信に応じて、SASディスカバリプロセスを実行する。即ち、SASエクスパンダ21にSASトポロジを要求する。
これにより、SASエクスパンダ21では、図5−2に示すように、まず、受信部22が、SASイニシエータ11からSASトポロジの要求を受信する(ステップ241)。
すると、トポロジ管理部25が、図示しないメモリに記憶された仮想トポロジを取り出す(ステップ242)。
そして、送信部29が、この取りだされた仮想トポロジをSASイニシエータ11に送信する(ステップ243)。尚、このとき、図示しないメモリにエラー情報が記憶されていれば、エラーメッセージをSASイニシエータ11に送信してもよい。
図6は、図4、図5−1、図5−2の処理を行った結果、SASホスト10からの各装置の見え方がどのようになるかを示したものである。
まず、SASホスト10は、SASイニシエータ11として機能する部分も含めて、図1に示した実際の構成と同じである。
一方、図1のSASスイッチ20a,20bは、SASホスト10からは、1つのSASスイッチとして認識される。これを、図では仮想SASスイッチ50として示している。そして、SASホスト10からは、自身のHBAの2つのPHYが1つのSASエクスパンダに接続されているように見える。これを、図では仮想SASエクスパンダ51として示している。
また、SASホスト10からは、アクセスするSASターゲットが直接SASエクスパンダに接続されているように見える。これを、図では、仮想SASターゲット62a,62b,62cとして示している。そして、これらの仮想SASターゲット62を含むSASストレージサブシステムも、図では、仮想SASストレージサブシステム60として示している。
これにより、複数のコネクションを同時に張ることができ、高いパフォーマンスを実現できるようになる。
また、同一の装置が複数の装置として認識されることがなくなる。
(3)ターゲットポートのSASアドレスの変換によるパス制御機能
(1)で述べたように、SASエクスパンダ21は、内部にターゲットポート構成テーブルを持つ。そして、仮想ターゲットポートアドレスを実ターゲットポートアドレスに変換し、ルーティングを行う。
図7は、このときのSASエクスパンダ21の動作例を示したフローチャートである。
SASエクスパンダ21では、まず、受信部22が、仮想ターゲットポートアドレスが宛先に設定されたSASフレームを受信する(ステップ251)。
すると、宛先変更部26が、宛先に設定された仮想ターゲットポートアドレスを、テーブル記憶部23に記憶されたターゲットポート構成テーブル内のカレントアクセスポートのSASアドレスの値に変更する(ステップ252)。
そして、送信部29が、その変更後のSASアドレスに対してSASフレームを転送する(ステップ253)。通常は、カレントアクセスポートのSASアドレスに優先ターゲットポートのSASアドレスの値をセットすることで、SASフレームは優先ターゲットポートへのパスに転送される。
このようなパス制御を行いつつ、本実施の形態では、一方のパスに障害が起こった場合に他方のパスに切り替える制御も行う。
図8は、このときのSASエクスパンダ21の動作例を示したフローチャートである。
SASエクスパンダ21では、まず、受信部22が、直接のリンクダウンの検知や、ネットワークの先にあるSASエクスパンダからのブロードキャストにより、パスの障害を検知する(ステップ271)。
すると、テーブル更新部27が、テーブル記憶部23に記憶されたターゲットポート構成テーブル内のカレントアクセスポートのSASアドレスの値を、他方のターゲットポートのSASアドレスの値に書き換える(ステップ272)。
これにより、SASホスト10から特別なアクションを必要とせずに、パスを切り替えることができる。例えば、図1で、パスA(イニシエータポートH→リンク41a→リンク42a→ターゲットポートDxA)が優先パスである場合において、リンク42aに障害が発生したとする。すると、カレントアクセスポートのSASアドレスの値をDxAからDxBに変更することにより、アクセスに用いるパスが、パスB(イニシエータポートH→リンク41a→ブリッジ43→リンク42b→ターゲットポートDxB)に切り替わる。
このように、本実施の形態では、SASエクスパンダ21に上記機能(1)〜(3)を搭載した。
これにより、SASドメインにおいてマルチパスの制御をスイッチ及びストレージサブシステム側で吸収できるようになった。その結果、SASホスト10にマルチパスドライバをインストールすることなく、マルチパスの制御を行うことが可能となった。そして、SASホスト10にマルチパスドライバをインストールする必要がなくなったことから、SASホスト10のOSやストレージサブシステム及びスイッチに依存することなく、マルチパスの制御を行うことが可能となった。
また、SASエクスパンダ21に簡単な機能を追加するだけでマルチパスの制御を行えるようになった。
更に、SASの標準を逸脱しないので、汎用的にSASのネットワークに用いることが可能である。
尚、本実施の形態は、複数のSASホスト10及び複数のSASターゲット32に対しても適応可能である。また、マルチパス構成を1つ又は3つ以上のSASエクスパンダを用いて構築したとしても、本実施の形態は適用可能である。
また、本実施の形態では、SASエクスパンダ21間の情報の同期の自動化を容易にすること、及び、マルチパスの経路を増やすことを目的として、ブリッジ43を設け、SASエクスパンダ21が、SASターゲット32の2つのターゲットポートのSASアドレスを取得できることを前提とした。そして、SASエクスパンダ21は、2つのターゲットポートのSASアドレスに代えて、仮想ターゲットポートアドレスをSASイニシエータ11に通知するものとした。しかしながら、ブリッジ43を設けず、SASエクスパンダ21aはSASターゲット32のSASエクスパンダ31a側のターゲットポートのSASアドレスのみを、SASエクスパンダ21bはSASターゲット32のSASエクスパンダ31b側のターゲットポートのSASアドレスのみを取得できることを前提としてもよい。この場合、SASエクスパンダ21aはSASエクスパンダ31a側のターゲットポートのSASアドレスに代えて仮想ターゲットポートアドレスをSASイニシエータ11に通知し、SASエクスパンダ21bはSASエクスパンダ31b側のターゲットポートのSASアドレスに代えて仮想ターゲットポートアドレスをSASイニシエータ11に通知することとなる。
ここで、本発明は、全てハードウェアで実現してもよいし、全てソフトウェアで実現してもよい。また、ハードウェア及びソフトウェアの両方により実現することも可能である。また、本発明は、コンピュータ、データ処理システム、コンピュータプログラムとして実現することができる。このコンピュータプログラムは、コンピュータにより読取り可能な媒体に記憶され、提供され得る。ここで、媒体としては、電子的、磁気的、光学的、電磁的、赤外線又は半導体システム(装置又は機器)、或いは、伝搬媒体が考えられる。また、コンピュータにより読取り可能な媒体としては、半導体、ソリッドステート記憶装置、磁気テープ、取り外し可能なコンピュータディスケット、ランダムアクセスメモリ(RAM)、リードオンリーメモリ(ROM)、リジッド磁気ディスク、及び光ディスクが例示される。現時点における光ディスクの例には、コンパクトディスク−リードオンリーメモリ(CD−ROM)、コンパクトディスク−リード/ライト(CD−R/W)及びDVDが含まれる。
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態には限定されない。本発明の精神及び範囲から逸脱することなく様々に変更したり代替態様を採用したりすることが可能なことは、当業者に明らかである。
10…SASホスト、11…SASイニシエータ、20…SASスイッチ、21,31…SASエクスパンダ、22…受信部、23…テーブル記憶部、24…装置情報管理部、25…トポロジ管理部、26…宛先変更部、27…テーブル更新部、29…送信部、30…SASストレージサブシステム、32…SASターゲット、41,42…リンク、43…ブリッジ

Claims (9)

  1. SAS(Serial Attached SCSI)ネットワークにおけるマルチパスを制御するシステムであって、
    SASイニシエータと、SASターゲット第1のポートとを接続することにより、第1のパスを形成する第1のSASエクスパンダと、
    前記SASイニシエータと、前記SASターゲットの第2のポートとを接続することにより、第2のパスを形成する第2のSASエクスパンダと
    を含み、
    前記第1のSASエクスパンダは、自身のSASアドレスに代えて、自身及び前記第2のSASエクスパンダが共通に有する一の仮想的なSASアドレスである仮想エクスパンダアドレスを前記SASイニシエータに通知し、前記第1のポートのSASアドレス及び前記第2のポートのSASアドレスに代えて、前記SASターゲットの一の仮想的なポートのSASアドレスである仮想ターゲットポートアドレスを前記SASイニシエータに通知し、
    前記第2のSASエクスパンダは、自身のSASアドレスに代えて、前記仮想エクスパンダアドレスを前記SASイニシエータに通知し、前記第1のポートのSASアドレス及び前記第2のポートのSASアドレスに代えて、前記仮想ターゲットポートアドレスを前記SASイニシエータに通知する、システム。
  2. 前記第1のSASエクスパンダ及び前記第2のSASエクスパンダの各々は、前記仮想ターゲットポートアドレスを宛先とするデータを前記SASイニシエータから受信すると、前記第1のポート及び前記第2のポートのうちの当該仮想ターゲットポートアドレスに対応付けられた使用中ポートのSASアドレスを宛先として、当該データを前記SASターゲットに送信する、請求項1のシステム。
  3. 前記第1のSASエクスパンダ及び前記第2のSASエクスパンダの各々は、前記第1のポート及び前記第2のポートのうちの特定のポートまでのパスの障害を検知すると、前記仮想ターゲットポートアドレスに対応付けられた前記使用中ポートのSASアドレスを、前記第1のポート及び前記第2のポートのうちの当該特定のポート以外のポートのSASアドレスに切り替える、請求項2のシステム。
  4. SASイニシエータとSASターゲットとを接続するSASエクスパンダとして機能する装置であって、
    SASエクスパンダとして機能する自装置及び他の装置が前記SASイニシエータに接続されている構成を、SASエクスパンダとして機能する一の装置が前記SASイニシエータの一のワイドポートに接続されている構成として前記SASイニシエータに認識させる処理であって、自装置のSASアドレスに代えて、自装置及び当該他の装置が共通に有する一の仮想的なSASアドレスである仮想エクスパンダアドレスを前記SASイニシエータに通知する処理を行う第1の通知部と、
    前記SASターゲットの第1のポートが自装置に接続され、前記SASターゲットの第2のポートが前記他の装置に接続されている構成を、前記SASターゲットの一のポートが前記一の装置に接続されている構成として前記SASイニシエータに認識させる処理であって、前記第1のポートのSASアドレス及び前記第2のポートのSASアドレスに代えて、前記SASターゲットの一の仮想的なポートのSASアドレスである仮想ターゲットポートアドレスを前記SASイニシエータに通知する処理を行う第2の通知部と
    を含む、装置。
  5. 前記仮想ターゲットポートアドレスと、前記第1のポート及び前記第2のポートのうちの使用中ポートのSASアドレスとを対応付けた対応情報を記憶する記憶部と、
    前記仮想ターゲットポートアドレスを宛先とするデータを前記SASイニシエータから受信する受信部と、
    前記対応情報にて前記仮想ターゲットポートアドレスに対応付けられた前記使用中ポートのSASアドレスを、前記受信部により受信された前記データの宛先として決定する決定部と、
    前記受信部により受信された前記データを、前記決定部により決定された前記使用中ポートのSASアドレスを宛先として送信する送信部と
    を更に含む、請求項4の装置。
  6. 前記第1のポート及び前記第2のポートのうちの特定のポートまでのパスの障害を検知する検知部と、
    前記検知部により前記特定のポートまでのパスの障害が検知されると、前記対応情報における前記使用中ポートのSASアドレスを、前記第1のポート及び前記第2のポートのうちの当該特定のポート以外のポートのSASアドレスに切り替える切り替え部と
    を更に含む、請求項5の装置。
  7. SASイニシエータとSASターゲットとを接続するSASエクスパンダとして機能する装置であって、
    SASエクスパンダとして機能する自装置及び他の装置が前記SASイニシエータに接続されている構成を、SASエクスパンダとして機能する一の装置が前記SASイニシエータの一のワイドポートに接続されている構成として前記SASイニシエータに認識させる処理であって、自装置のSASアドレスに代えて、自装置及び当該他の装置が共通に有する一の仮想的なSASアドレスである仮想エクスパンダアドレスを前記SASイニシエータに通知する処理を行う第1の通知部と、
    前記SASターゲットの第1のポートが自装置に接続され、前記SASターゲットの第2のポートが前記他の装置に接続されている構成を、前記SASターゲットの一のポートが前記一の装置に接続されている構成として前記SASイニシエータに認識させる処理であって、前記第1のポートのSASアドレス及び前記第2のポートのSASアドレスに代えて、前記SASターゲットの一の仮想的なポートのSASアドレスである仮想ターゲットポートアドレスを前記SASイニシエータに通知する処理を行う第2の通知部と、
    前記第1のポートのSASアドレスと、前記第2のポートのSASアドレスと、前記仮想ターゲットポートアドレスと、前記第1のポート及び前記第2のポートのうちの優先ポートのSASアドレスと、前記第1のポート及び前記第2のポートのうちの使用中ポートのSASアドレスとを対応付けた対応情報を記憶する記憶部と、
    前記第1のポート及び前記第2のポートのうちの特定のポートまでのパスの障害を検知する検知部と、
    前記検知部により前記特定のポートまでのパスの障害が検知されない場合には、前記対応情報における前記使用中ポートのSASアドレスとして前記優先ポートのSASアドレスを設定し、前記検知部により前記特定のポートまでのパスの障害が検知された場合には、前記対応情報における前記使用中ポートのSASアドレスとして前記第1のポート及び前記第2のポートのうちの当該特定のポート以外のポートのSASアドレスを設定する設定部と、
    前記仮想ターゲットポートアドレスを宛先とするデータを前記SASイニシエータから受信する受信部と、
    前記対応情報にて前記仮想ターゲットポートアドレスに対応付けられた前記使用中ポートのSASアドレスを、前記受信部により受信された前記データの宛先として決定する決定部と、
    前記受信部により受信された前記データを、前記決定部により決定された前記使用中ポートのSASアドレスを宛先として送信する送信部と
    を含む、装置。
  8. SASイニシエータとSASターゲットと第1のSASエクスパンダと第2のSASエクスパンダとを含むSASネットワークにおけるマルチパスを制御する方法であって、
    前記第1のSASエクスパンダは、前記SASイニシエータと、前記SASターゲットの第1のポートとを接続することにより、第1のパスを形成し、
    前記第2のSASエクスパンダは、前記SASイニシエータと、前記SASターゲットの第2のポートとを接続することにより、第2のパスを形成し、
    自身のSASアドレスに代えて、自身及び前記第2のSASエクスパンダが共通に有する一の仮想的なSASアドレスである仮想エクスパンダアドレスを前記SASイニシエータに通知し、
    前記第1のポートのSASアドレス及び前記第2のポートのSASアドレスに代えて、前記SASターゲットの一の仮想的なポートのSASアドレスである仮想ターゲットポートアドレスを前記SASイニシエータに通知し、
    自身のSASアドレスに代えて、前記仮想エクスパンダアドレスを前記SASイニシエータに通知し、
    前記第1のポートのSASアドレス及び前記第2のポートのSASアドレスに代えて、前記仮想ターゲットポートアドレスを前記SASイニシエータに通知する、方法。
  9. SASイニシエータとSASターゲットとを接続するSASエクスパンダとしてコンピュータ装置を機能させるプログラムであって、
    前記コンピュータ装置を、
    SASエクスパンダとして機能する自装置及び他の装置が前記SASイニシエータに接続されている構成を、SASエクスパンダとして機能する一の装置が前記SASイニシエータの一のワイドポートに接続されている構成として前記SASイニシエータに認識させる処理であって、自装置のSASアドレスに代えて、自装置及び当該他の装置が共通に有する一の仮想的なSASアドレスである仮想エクスパンダアドレスを前記SASイニシエータに通知する処理を行う第1の通知部と、
    前記SASターゲットの第1のポートが自装置に接続され、前記SASターゲットの第2のポートが前記他の装置に接続されている構成を、前記SASターゲットの一のポートが前記一の装置に接続されている構成として前記SASイニシエータに認識させる処理であって、前記第1のポートのSASアドレス及び前記第2のポートのSASアドレスに代えて、前記SASターゲットの一の仮想的なポートのSASアドレスである仮想ターゲットポートアドレスを前記SASイニシエータに通知する処理を行う第2の通知部と
    して機能させる、プログラム。
JP2010165540A 2010-07-23 2010-07-23 マルチパスを制御するシステム及び方法 Expired - Fee Related JP5528243B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2010165540A JP5528243B2 (ja) 2010-07-23 2010-07-23 マルチパスを制御するシステム及び方法
US13/189,253 US20120023278A1 (en) 2010-07-23 2011-07-22 Expander to control multipaths in a storage network
US13/592,529 US8694708B2 (en) 2010-07-23 2012-08-23 Expander to control multipaths in a storage network
US14/200,281 US9250989B2 (en) 2010-07-23 2014-03-07 Expander to control multipaths in a storage network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010165540A JP5528243B2 (ja) 2010-07-23 2010-07-23 マルチパスを制御するシステム及び方法

Publications (2)

Publication Number Publication Date
JP2012027680A JP2012027680A (ja) 2012-02-09
JP5528243B2 true JP5528243B2 (ja) 2014-06-25

Family

ID=45494495

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010165540A Expired - Fee Related JP5528243B2 (ja) 2010-07-23 2010-07-23 マルチパスを制御するシステム及び方法

Country Status (2)

Country Link
US (3) US20120023278A1 (ja)
JP (1) JP5528243B2 (ja)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5528243B2 (ja) 2010-07-23 2014-06-25 インターナショナル・ビジネス・マシーンズ・コーポレーション マルチパスを制御するシステム及び方法
JP5920114B2 (ja) 2012-08-29 2016-05-18 富士通株式会社 ストレージ装置、ストレージ装置の制御方法及び制御プログラム
US9336171B2 (en) * 2012-11-06 2016-05-10 Avago Technologies General Ip (Singapore) Pte. Ltd. Connection rate management in wide ports
EP2951963B1 (en) 2013-01-30 2019-04-24 Hewlett-Packard Enterprise Development LP Failover in response to failure of a port
US9298566B2 (en) 2013-04-17 2016-03-29 Hewlett Packard Enterprise Development Lp Automatic cluster-based failover handling
WO2015047229A1 (en) * 2013-09-24 2015-04-02 Hewlett-Packard Development Company, L.P. Sas configuration management
US9542349B2 (en) * 2013-12-04 2017-01-10 Avago Technologies General Ip (Singapore) Pte. Ltd. Wide port emulation at serial attached SCSI expanders using virtual physical links
US9582455B2 (en) 2013-12-06 2017-02-28 Concurrent Ventures, LLC System and method for abstracting SATA and/or SAS storage media devices via a full duplex queued command interface to increase performance, lower host overhead, and simplify scaling storage media devices and systems
US9529767B2 (en) 2013-12-06 2016-12-27 Concurrent Ventures, LLC System and method for abstracting SATA and/or SAS storage media devices via a full duplex queued command interface to increase performance, lower host overhead, and simplify scaling storage media devices and systems
EP3077915A4 (en) * 2013-12-06 2017-08-16 Concurrent Ventures LLC A system and method for abstracting storage media devices via a full duplex queued command interface
JP6269163B2 (ja) * 2014-02-27 2018-01-31 富士通株式会社 中継装置、ストレージ装置、および中継プログラム
CN104252429B (zh) * 2014-09-03 2017-05-17 英业达科技有限公司 存储控制装置与供其调用其地址的方法
CN105808158B (zh) 2014-12-30 2020-03-24 美国美高森美存储方案有限公司 用于对多个sas扩展器进行分组以形成单个内聚sas扩展器的方法和装置
US9841904B2 (en) * 2015-03-02 2017-12-12 Samsung Electronics Co., Ltd. Scalable and configurable non-volatile memory module array
US9959233B2 (en) * 2015-04-28 2018-05-01 Red Hat Israel, Ltd. NUMA-aware root bus selection
US10061662B2 (en) * 2016-05-10 2018-08-28 International Business Machines Corporation Routing data streams around faults in strands
US20180224859A1 (en) * 2017-02-08 2018-08-09 Ford Global Technologies, Llc Tornado Detection Systems And Methods
JP7537137B2 (ja) 2020-06-18 2024-08-21 富士通株式会社 中継装置、情報処理プログラム、情報処理方法及びストレージシステム
CN115639969B (zh) * 2022-11-17 2023-05-09 广州粤芯半导体技术有限公司 一种存储盘主备切换方法、装置、计算机设备

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4220887B2 (ja) * 2003-11-17 2009-02-04 株式会社日立製作所 ディスク装置及びその制御方法
US7668925B1 (en) * 2005-01-28 2010-02-23 Pmc-Sierra, Inc. Method and apparatus for routing in SAS using logical zones
JP2007072571A (ja) * 2005-09-05 2007-03-22 Hitachi Ltd 計算機システム及び管理計算機ならびにアクセスパス管理方法
US7519854B2 (en) * 2005-10-14 2009-04-14 International Business Machines Corporation Internal failover path for SAS disk drive enclosure
TWI307034B (en) * 2005-11-23 2009-03-01 Infortrend Technology Inc Storage virtualization subsystem and system with host-side redundancy via sas connectivity
JP5058582B2 (ja) 2006-12-21 2012-10-24 日本電気株式会社 ストレージデバイスのマルチパスシステム、その障害箇所特定方法及びプログラム
US7624223B2 (en) * 2006-12-29 2009-11-24 Lsi Corporation Apparatus and methods for multiple unidirectional virtual connections among SAS devices
JP5175483B2 (ja) 2007-03-30 2013-04-03 株式会社日立製作所 ストレージ装置及びその制御方法
US8099532B2 (en) * 2007-06-14 2012-01-17 International Business Machines Corporation Intelligent dynamic multi-zone single expander connecting dual ported drives
US7836332B2 (en) * 2007-07-18 2010-11-16 Hitachi, Ltd. Method and apparatus for managing virtual ports on storage systems
US7882281B2 (en) * 2007-12-10 2011-02-01 Emulex Design & Manufacturing Corporation SAS reference Phys for virtualization and traffic isolation
JP2009146106A (ja) * 2007-12-13 2009-07-02 Hitachi Ltd 物理的な通信ポートに付加される仮想的な通信ポートを移行する機能を有したストレージシステム
US8244948B2 (en) * 2008-09-05 2012-08-14 Lsi Corporation Method and system for combining multiple SAS expanders into a SAS switch
US8077605B2 (en) * 2008-09-05 2011-12-13 Lsi Corporation Method for providing path failover for multiple SAS expanders operating as a single SAS expander
US7849248B2 (en) * 2008-09-05 2010-12-07 Lsi Corporation Method and system for combining multiple serial attached small computer system interface (SAS) expanders
US7913023B2 (en) * 2008-09-05 2011-03-22 Lsi Corporation Specifying lanes for SAS wide port connections
US8321596B2 (en) * 2008-09-05 2012-11-27 Lsi Corporation SAS paired subtractive routing
US20100153612A1 (en) * 2008-12-15 2010-06-17 Lsi Corporation Transport agnostic scsi i/o referrals
US8260986B2 (en) * 2009-09-29 2012-09-04 Hitachi, Ltd. Methods and apparatus for managing virtual ports and logical units on storage systems
JP5528243B2 (ja) 2010-07-23 2014-06-25 インターナショナル・ビジネス・マシーンズ・コーポレーション マルチパスを制御するシステム及び方法
US8171176B2 (en) * 2010-08-31 2012-05-01 Lsi Corporation Method for selective replication of physical devices on a virtual self-configuring zoning expander
US8312177B2 (en) * 2010-09-24 2012-11-13 Dell Products L.P. System and method for dynamically configuring a target device

Also Published As

Publication number Publication date
JP2012027680A (ja) 2012-02-09
US20140189418A1 (en) 2014-07-03
US20120324137A1 (en) 2012-12-20
US9250989B2 (en) 2016-02-02
US8694708B2 (en) 2014-04-08
US20120023278A1 (en) 2012-01-26

Similar Documents

Publication Publication Date Title
JP5528243B2 (ja) マルチパスを制御するシステム及び方法
JP5593184B2 (ja) マルチパスを使用するシステム及び方法
US10810151B2 (en) Switching device, peripheral component interconnect express system, and method for initializing peripheral component interconnect express system
JP5796139B2 (ja) Pcieスイッチベースのサーバ・システム、スイッチング方法、及びデバイス
US9917767B2 (en) Maintaining a communication path from a host to a storage subsystem in a network
TWI454088B (zh) 用於偵測一交換器故障及管理一乙太網路光纖通道網路中之交換器故障後移轉之方法、系統及電腦可讀媒體
US11544001B2 (en) Method and apparatus for transmitting data processing request
US7672226B2 (en) Method, apparatus and program storage device for verifying existence of a redundant fibre channel path
US9298566B2 (en) Automatic cluster-based failover handling
CN105808158B (zh) 用于对多个sas扩展器进行分组以形成单个内聚sas扩展器的方法和装置
US20120284435A1 (en) Zone group manager virtual phy
JP2008065561A (ja) ストレージシステムおよびストレージシステムの制御方法
JP2006127201A (ja) ストレージシステムおよび導通確認方法
US10819628B1 (en) Virtual link trunking control of virtual router redundancy protocol master designation
JP5736971B2 (ja) 通信制御方法および管理装置
US9143435B1 (en) Management of paths of switches of distributed computing systems
US7895300B1 (en) Systems and methods for testing device ports in a storage area network
CN116661688B (zh) 一种sas存储系统的业务响应方法和装置
JP6573046B1 (ja) 情報処理装置、情報処理システムおよび情報処理プログラム
EP2648101B1 (en) Storage system and device and connection configuration method thereof
JP2011107858A (ja) 通信インタフェースの種類が異なる複数の入出力装置に複数の計算機が通信可能に接続される計算機システム
JP2020119325A (ja) ストレージシステム、及びストレージ制御装置
WO2015111206A1 (ja) 計算機システム、サーバモジュール及びストレージモジュール
US10498624B2 (en) Systems and methods for adaptive router failover in Linux-based computing systems
WO2013108351A1 (ja) 計算機システム及び論理記憶領域管理方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130402

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131210

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20131210

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140220

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140401

RD14 Notification of resignation of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7434

Effective date: 20140401

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140415

R150 Certificate of patent or registration of utility model

Ref document number: 5528243

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees