JP4264001B2 - 記憶ネットワーク中のサービスの品質の実行 - Google Patents

記憶ネットワーク中のサービスの品質の実行 Download PDF

Info

Publication number
JP4264001B2
JP4264001B2 JP2003538922A JP2003538922A JP4264001B2 JP 4264001 B2 JP4264001 B2 JP 4264001B2 JP 2003538922 A JP2003538922 A JP 2003538922A JP 2003538922 A JP2003538922 A JP 2003538922A JP 4264001 B2 JP4264001 B2 JP 4264001B2
Authority
JP
Japan
Prior art keywords
initiator
switch
storage
requests
bandwidth
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 - Lifetime
Application number
JP2003538922A
Other languages
English (en)
Other versions
JP2005507201A (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.)
EMC Corp
Original Assignee
EMC 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 EMC Corp filed Critical EMC Corp
Publication of JP2005507201A publication Critical patent/JP2005507201A/ja
Application granted granted Critical
Publication of JP4264001B2 publication Critical patent/JP4264001B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1008Server selection for load balancing based on parameters of servers, e.g. available memory or workload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/101Server selection for load balancing based on network conditions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/61Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources taking into account QoS or priority requirements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers

Description

関連出願
本願は、2001年9月28日出願の米国仮出願シリアル番号第60/325,704号、「記憶エリア・ネットワークのための記憶スイッチ」の優先権を主張する。ここに参照により組み込む。
また、本願は同時に出願された次の出願にも関係する。ここに参照により組み込む。
「記憶エリア・ネットワークのための記憶スイッチ」
米国シリアル番号第10/051,321号
「記憶システム内のプロトコル翻訳」
米国シリアル番号第10/051,415号
「サーバー無し記憶サービス」
米国シリアル番号第10/051,164号
「記憶システム内のパケット分類」
米国シリアル番号第10/051,093号
「記憶システムの仮想化」
米国シリアル番号第10/051,396号
「記憶ネットワーク内の記憶資源の供給とプーリング」
米国シリアル番号第10/050,974号
「記憶ネットワーク内の負荷平衡」
米国シリアル番号第10/051,053号
技術分野
本発明は、一般に、記憶エリア・ネットワークに関連する。
背景技術
データ集中アプリケーションの急激な成長は生データ記憶容量に対する需要を増加し続けている。企業がeコマース、オンライン取引、及びデータベースにより依存するにつれて、管理及び記憶する必要のある情報量が巨大となる。この結果、より多くの記憶を追加し、より多くのユーザにサービスし、そしてより多くのデータをバックアップの進行する必要性は、とても厄介な作業となる。
データのこの成長する需要を満たすために、記憶エリア・ネットワーク(SAN)の概念が人気を得ている。SANは、記憶ネットワーク産業協会(SNIA)により、コンピュータ・システムと記憶要素との間、及び記憶要素間のデータ転送を主要な目的とするネットワークとして定義される。記憶装置をサーバーに直接に、例えば、SCSI接続により接続するのとは異なり、イーサネット(登録商標)(例えば、NASシステム)等の伝統的なイーサネットによりLANに記憶装置を追加するのとは異なり、SANは、直接接続SCSI及びNASカウンタパートのように同じ帯域幅限界を持つ傾向がない本質的に独立なネットワークを形成し、また、増大した構成可能性とスケーラビリテイを提供する。
より詳細には、SAN環境では、記憶装置(例えば、テープ・ドライブ及びRAID配列)及びサーバーは、一般にさまざまなスイッチ及び装置を経由して相互接続される。普通、スイッチ及び装置への接続は、ファイバー・チャンネルである。一般に、この構造は、SAN上のいずれのサーバーもいずれの記憶装置に通信可能にし、また、この逆も可能にする。さらに、サーバーから記憶装置への代替的経路を提供する。換言すると、もし、特定のサーバーが遅い又は完全に利用不可能な場合、SAN上の別のサーバーが記憶装置へのアクセスを提供できる。また、SANは、複数のコピーを可能にするミラー・データを可能にし、従って、データの利用可能性の信頼性を高める。より多くの記憶が必要とされる場合、追加の記憶装置を特定のサーバーに接続する必要無くしてSANに追加でき、新規な装置を記憶ネットワークに単純に追加でき、いずれのポイントからもアクセスできる。
図1の機能ブロック図に、SANの一例がシステム100中に示されている。図示するように、1つ又は複数のサーバー102が存在する。これらのサーバー102は例示目的ためにのみ示す。サーバー102は、イーサネット接続を介してLAN106及び/又はルーター108へ接続され、そして、インターネットなどのWAN110に接続される。さらに、各サーバー102は、時々、SANの「ファブリック」と呼ばれる複数のファイバー・チャンネル・スイッチ112の各々にファイバー・チャンネル接続を介して接続されている。2つのスイッチ112が、説明目的のためにのみ示されている。そして、各スイッチ112が、複数のSAN装置114の各々に接続されている。2つの装置114は説明目的のためにのみ示されている。そして、各装置は、テープ・ドライブ、光ドライブ、又はRAID配列などの複数の記憶装置の各々に接続されている。さらに、各スイッチ112と装置114はルーター108に接続されたゲートウェイ118に接続されていて、最終的には、インターネットなどのワイド・エリア・ネットワーク(WAN)18へ接続されている。図1は、スイッチ112、装置114、記憶装置116、及びゲートウェイ118を含むSAN119の可能な構成の一例を示す。他の構成も可能である。例えば、1つの装置が全てのスイッチよりも少なく接続してもよい。
装置114は、SANの記憶管理を実行する。装置114がデータを受信すると、それは装置114内のメモリにデータを記憶する。そして、プロセッサ(また、装置内にある)により、データを正しい記憶装置へ転送するためにデータを解析して操作する。この、記憶そして転送プロセスは、典型的にデータ・アクセスの速度を低下する。
装置はあるスイッチングを実行するが、多数のサーバーが存在し(3つよりも多数)、各装置はわずかなポートを持つため(普通、2つ又は4つのみ)、スイッチ112が多くのサーバーを少ない装置へ接続するために必要とされる。それにもかかわらず、スイッチ112はほとんどビルトイン・インテリジェンスを持たず、単に、データを選択された装置114へ転送するだけである。装置の1つの限界は、多くの装置がしばしば制限された又は設定数のポートを持つという事実である。ポートを装置に追加することは可能であるが、典型的に大変に高価である。各1つ又は2つのポートは高価なCPU又はサーバー・カードによりサポートされている。従って、ポートを追加することは、全ファイル・カード(記憶及び転送機能と仮想化を実行する)を装置に追加しなければならず、普通は大変に高価である。代替的には、装置を単にSANに追加することである。しかし、これは大変に費用がかかる傾向を持つ。
さらに、SANは、普通、装置114内で「仮想化」として知られる機能を一般に実行する。仮想化は、1つ又は複数の物理的記憶装置の空間が特定のユーザに割当てられるが、その空間の物理的位置がユーザに未知のままに留まる時に発生する。例えば、ユーザはその会社の「エンジニアリング記憶空間」ENG:をアクセスすることができる。彼又は彼女が取付けられたディスク装置をアクセスして又は「見る」時、仮想空間ENG:にアクセスして「見る」。それにもかかわらず、ENG:空間は、いくつかの物理記憶装置上に分割でき、又は、単一記憶装置上で断片化さえできる。従って、サーバーが仮想装置(例えば、ENG:)及びブロック番号を要求する時、装置は、要求された仮想装置と物理的に相互に関連する記憶装置を決定し、それにデータを送らなければならない。
SANは、数年前に導入されたが、幅広い使用については、相互操作性問題、利用可能な熟練の欠如、及び高い導入コストが、大きな障害として残っている。例えば、現在のSANは、高い配備コストと高い管理コストを有する。再び、図1を参照すると、スイッチ、装置、及びゲートウェイの各々は典型的に異なる売り手からのものであり、売り手特有管理ツールの多用を生じ、標準的な管理の欠如を生む。この結果、SANを配備するために、装備を複数の売り手から購入しなければならない。図1に示すように,スイッチ、装置、ゲートウェイ、記憶装置、サーバー、及び、ルーターの各々は、管理ステーション120として示されるそれ自身の管理を有する。独立の物理的管理ステーションが示されているが、しばしば独立な管理は、互いに通信しない単一コンピュータ上の売り手特有の独立のソフトウェアの形式であることを理解する。この結果、SANの中央管理が存在せず、普通、多くの人による管理がしばしば必要な複数の管理ステーションが存在するため、その管理コストは高い。
さらに、SANのために仮想ターゲットを供給すること(又は、「生成する」こと)は、重荷になっている。新しい仮想ターゲットの生成が必要な時、人間の管理者は、性能、初期に必要な容量と潜在的な成長に必要な容量、データ利用可能性、及びデータ保護など、データについてのアプリケーション要求を最初に決定しなければならない。より詳細には、管理者は1つ又は複数の物理装置の一部又は全部を仮想ターゲットに割当て、そして最良の性能を作り及びデータ安全性のためのアクセス制御を作るためにこれらの装置を構成しなければならない。管理者はさらに、記憶ネットワークを通るルートが必要とされる利用可能性のレベルを持つことを確保し、そしてもし、1つの経路がダウンした時にターゲットへの別の経路が利用可能となるように、高い利用可能性が必要とされる場合は代替的な経路を導入しなければならない。さらに、管理者は仮想ターゲットがアクセス可能となる前に機能性を証明するために環境を試験しなければならない。全体に、このような仮想ターゲットを生成するために数日又は数週間を要して、この期間はSANのユーザにとってしばしば受け入れることができない。
発明の開示
本発明の1つの実施の形態によるシステムは、スイッチとの通信で自動的に記憶資源を発見して、それら資源の性質に関する情報を得る。1つの実施の形態では、性質が知られると、装置は予め定義されたポリシーに従って分類され、そして記憶プール中に置かれる。
プールから、仮想ターゲットが供給できる。1つの実施の形態では、仮想ターゲットはユーザ・ドメインに置かれる。また、イニシエーター接続が1つの実施の形態で供給される。仮想ターゲット、イニシエーター接続、及びユーザ・ドメインの全てが1つの実施の形態ではサービスの品質(QoS)ポリシーを定義するために機能する。
本発明の別の実施の形態によるシステムは、さらにイニシエーターとターゲットとの間の接続のためのサービスの品質を実行できる。1つの実施の形態では、サービスの品質は、イニシエーターからターゲットへ送ることのできる同時的要求を制御することにより実行される。
本発明のさらに別の実施の形態によるシステムは、負荷平衡を動的に供給できる。1つの実施の形態では、負荷平衡は選択された経路が最短の平均応答時間を有するターゲットへの複数の代替的経路の1つに要求を送ることにより実行される。別の実施の形態では、負荷平衡は最短の平均応答時間を持つミラーされたターゲットへ要求を送るミラーされたターゲット内で実行される。
以下に、本発明の特定の例示的な実施の形態を添付図面を参照して説明する。
実施の形態の説明
図2に示されるシステム200は本発明による記憶スイッチを含む。図示されるように、このようなシステムは既存のシステムを大幅に簡潔にする。1つの実施の形態では、システム200は複数のサーバー202を有する。説明目的のために、3つのサーバー202が示されるが、他の実施の形態ではより多い又は少ないサーバーも使用できる。図示しないが、サーバーはLANにも接続できる。図示するように、各サーバー202は記憶スイッチ204に接続される。しかし、別の実施の形態では、各サーバー202は存在する記憶スイッチ204の全てよりも少ないものに接続してよい。サーバーとスイッチとの間に形成される接続はどんなプロトコルを使用できるが、1つの実施の形態では、接続はファイバー・チャンネル又はギガビット・イーサネット(iSCSIプロトコルに従いパケットを運ぶ)のいずれかである。他の実施の形態は、インテル社により定義されるインフイニバンド・プロトコル、又は他のプロトコル又は接続を使用してもよい。
図示された実施の形態では、各スイッチ204は次に複数の記憶装置又はサブシステム206の各々に接続される。しかし、他の実施の形態では、各スイッチ204は全ての記憶装置又はサブシステム206よりは少ないものに接続できる。記憶スイッチ204と記憶装置206との間に形成される接続はどんなプロトコルも使用できるが、1つの実施の形態では、接続はファイバー・チャンネル又はギガビット・イーサネットのいずれかである。
いくつかの実施の形態では、1つ又は複数のスイッチ204の各々がメトロポリタン・エリア・ネットワーク又はインターネットなどのワイド・エリア・ネットワーク208に接続される。記憶スイッチ204とWAN208との間に形成される接続は一般に大部分の実施の形態ではインターネット・プロトコル(IP)を使用する。MAN/WAN208に直接的に接続しているように図示されるが、他の実施の形態ではスイッチ204とMAN/WAN208との間に中間にルーター(図示しない)を使用してよい。
さらに、それぞれの管理ステーション210が、各記憶スイッチ204へ、各サーバー202へ、及び各記憶装置206へ接続している。管理ステーションが別々のコンピュータとして示されているが、単一コンピュータへに集中された装置の各タイプを管理するためのソフトウェアであることが理解される。
図3は、本発明の代替的な実施の形態によるシステムを示す。このような実施の形態では、2つのSAN302、304が形成されて、各々が本発明の実施の形態により1つ又は記憶スイッチ204を使用する。SAN302及び304は、インターネットなどのWAN208を介してスイッチ208により接続されている。接続208はどんな標準又はプロトコルであることができ、しかし、1つの実施の形態では、ソネット上のパケット(PoS)又は10ギガビット・イーサネットである。
図4は、本発明のさらに別の実施の形態のシステムを示すもので、スイッチ204が互いに直接的に接続されている。図2又は3に示される実施の形態のいずれでも、もし、1つより多いスイッチが使用される場合、これらのスイッチは図4に示すように接続できる。
本発明による記憶スイッチは、広範囲に分布された非常に多数の管理ステーションと多数の熟練した管理用人員を持つ代りに、共有記憶プールとして使用できる広範囲に分布された記憶装置の集中管理を可能にする。このような記憶スイッチは、「インテリジェント」スイッチであり、図2と図1を比較することで理解できるように、スイッチ、装置、及びゲートウェイの機能は本発明の1つの実施の形態による記憶スイッチ204中に効率的に統一化されている。そのスイッチング機能に加えて、このような記憶スイッチ204は従来のアーキテクチャでは装置により典型的に提供される仮想化と記憶装置(例えば、ミラーリング)を提供し、またプロトコル翻訳を提供する。また、本発明のいくつかの実施の形態による記憶スイッチは追加の機能を実行する(例えば、仮想プライベート・ネットワークを介してのデータ・セキュリテイ)。このような追加の機能は、負荷平衡など伝統的にサーバーにより実行される従来システムでは他の装置により実行される機能、及び、記憶アクセスのためのサービスの品質など従来のシステムでは以前利用できなかった他の機能を含む。さらに、1つの実施の形態では、記憶アクセス機能のためのサービスの品質が「アプリケーション認識」、すなわち、提供されるサービスの品質は記憶ターゲットへの接続を開始するアプリケーションの性質により指定される。
さらに、本発明による実施の形態によれば記憶スイッチのインテリジェンスは各スイッチ・ポートへ配達される。この配達されたインテリジェンスは、システムのスケーラビリテイと利用可能性を可能にする。
さらに、配達されたインテリジェンスは本発明の1つの実施の形態によるスイッチがデータを「ワイヤ速度」、記憶スイッチ204が典型的なネットワーク・スイッチ(図1中のスイッチ112など)により導入されるもの以上の待ち時間をデータパケットに導入しないことを意味する、で処理することを可能にする。すなわち、スイッチに対する「ワイヤ速度」は特定のポートへの接続により測定される。従って、OC−48接続を有する1つの実施の形態では、記憶スイッチはOC−48速度(2.5ビットn秒)を達成できる。OC−48速度で移動する2キロバイト・パケット(10ビット・バイトを持つ)は、スイッチに入るのに8マイクロ秒の短い時間を要する。1キロパイト・パケットは、4マイクロ秒の短い時間を要する。100バイトの最小パケットは、単に400n秒だけを要する。しかし、言葉「ワイヤ速度」処理がここで使用される時、このような処理が100バイト・パケットを処理するために400n秒の短い時間を要することを意味するのではない。それは1つの実施の形態で記憶スイッチがOC−48速度で1500バイト(1バイトが10ビットであるように、10ビット符号化を持つ)の最大イーサネット・パケットを処理できること、すなわち、約6μ秒(キロバイト当たり4μ秒、又は、n秒当たり2.5ビット)で処理できることを意味する。1GBイーサネット・ポートを持つ実施の形態では、処理が一般にナノ秒当たり1ビットとして定義される場合、そのポートの「ワイヤ速度」データはキロバイト当たり10μ秒となり、スイッチがキロバイトを処理するために10μ秒までを有する。2GBファイバー・チャンネルを持つ実施の形態では、「ワイヤ速度」はキロバイト当たり5μ秒となる。さらに別の実施の形態は、10ギガバイト・イーサネット又はOC−192又はそれ以上でデータ処理をしてもよい。
ここで使用される「仮想化」は、本質的に、ユーザに与えられた仮想ターゲット空間を1つ又は複数の物理的記憶ターゲット装置上の空間へマッピングすることを意味する。「仮想」及び「仮想ターゲット」は、加入者毎に割当てられた記憶空間が記憶スイッチ204に接続する1つ又は複数の物理的記憶ターゲット装置のどこでも良いという事実から来る。物理的空間は、1つ又は複数の「論理単位」(LU)を含むことのできる「仮想ターゲット」として供給できる。各仮想ターゲットは、しばしば、iSCSI及びFCプロトコルで使用される1つ又は複数のLU番号(LUN)で識別される1つ又は複数のLUからなる。各論理単位は、一般に1つ又は複数のエクステント、物理的装置上の記憶空間の連続したスライス、を含む。すなわち、仮想ターゲットは記憶装置全体(1エクステント)、単一記憶装置の一部(1つ又は複数のエクステント)、又は、複数の記憶装置の部分(複数エクステント)を占めることができる。物理的装置、LU、エクステント数、及びそれらの正確な位置は加入者ユーザには重要ではなく、そして見ることができない。
記憶空間はいくつかの異なる記憶装置から来てもよいが、各仮想ターゲットは時々ここで「ドメイン」と呼ばれる1つ又は複数の「プール」に属している。同じドメインのユーザのみが彼等のドメイン中の仮想ターゲットを共有することを許される。また、ドメイン組がメンバーとしていくつかのドメインを含んで形成できる。ドメイン組の使用は複数ドメインのユーザの管理を容易にする。例えば、もし、1つの会社が5つのドメインを持つが、サービスを止めることを選択した場合、単に1つの動作がそのドメイン組を全体として使用不可能にするのに必要とされる。ドメイン組のメンバーは他のドメインのメンバーであることができる。
図5は、本発明の実施の形態による記憶スイッチ204の機能ブロック図である。1つの実施の形態では、記憶スイッチ204は複数のラインカード502、504及び506と、複数のファブリック・カード508と、2つのシステム制御カード510とを含む。以下に、各々を詳細に説明する。
システム制御カード
2つのシステム制御カード510の各々は、全てのラインカード502、504、506に接続している。1つの実施の形態では、このような接続は、SCCとのイーサネット接続を介して周知のI2C信号により形成される。SCCは、I2C接続により、電源投入の制御と、個別のラインカード及びファブリック・カードの監視をする。イーサネット接続を介してのカード内通信を使用して、SCCはさまざまな記憶サービス、例えば、仮出願番号第60/325,704号に記載されるスナップショップ及び複製、を開始する。
さらに、SCCは、スイッチに接続された物理的装置と、例えば、サーバー及び記憶装置と、全ての仮想ターゲットと、記憶スイッチとの構成情報を追跡するデータベース512を維持する。さらに、データベースは、使用、エラー、アクセス・データ、ユーザ、仮想ターゲットのドメイン組及び異なるドメインに関する情報を維持する。データベースのレコードは、ここでは「オブジェクト」と呼ばれる。イニシエーター(例えば、サーバー)及びターゲット(例えば、記憶装置)は、周知のワールド・ワイド・ユニーク識別子(WWUI)を持つ。データベースは、SCC内のメモリ装置内に維持される。1つの実施の形態では、メモリ装置はフラッシュ・メモリから形成されている。しかし、他のメモリ装置も満足である。
記憶スイッチ204は、管理ステーション210によりイーサネット接続を使用してSCC510を介して到達できる。従って、SCCは、管理ステーションに接続するために追加のイーサネット・ポートを含む。
2つのSCC510の内の1つは主動作SCCである。他は予備であり、記憶スイッチ中の動作に同期しているが、直接にはそれらを制御しない。SCCは、もし1つのSCCが故障したならば、他が主コントローラとなるという、高度の利用可能性モードで動作する。
ファブリック・カード
スイッチ204の1つの実施の形態では、3つのファブリック・カード508が存在する。他の実施の形態では、より多い又は少ないファブリック・カードを持つことができる。1つの実施の形態では、各ファブリック・カード508は、ラインカード502、504、及び506の各々に接続し、全てのラインカードを一緒に接続する役割を果たす。1つの実施の形態では、ファブリック・カード508の各々は、全てのラインカードが充たされている時、最大トラフイックを処理できる。各ラインカードにより処理されるこのようなトラフイック負荷は、1つの実施の形態で、160Gbpsまでである。他の実施の形態では、より高い又は低い最大トラフイック容積を処理できる。もし、1つのファブリック・カード508が故障した場合、2つの生き残ったカードは可能な最大スイッチ・トラフイック:1つの実施の形態では、各ラインカードは20Gbpsのトラフイック、10Gbps入場及び10Gbps出場を発生する、に対する十分な帯域幅をまだ持つ。しかし、通常の環境下では、3つの全てのファブリック・カードが同時に活動する。各ラインカードから、データ・トラフイックがデータを収容できる3つのファブリック・カードのいずれか1つに送信される。
ラインカード
ラインカードは、サーバー装置及び記憶装置への接続を形成する。1つの実施の形態では、記憶スイッチ204は、16ラインカードまで支援する。他の装置では異なる数を支援できる。さらに、1つの実施の形態では、3つのタイプのラインカードが使用される。ギガビット・イーサネット(GigE)カード502と、ファイバー・チャンネル(FC)カード504と、WANカード506とである。他の実施の形態はより多い又は少ないタイプのラインカードを含んでも良い。GigEカード502は、1つの実施の形態ではiSCSIサーバー又はiSCSI記憶装置(又は、他のイーサネット・ベース装置)のいずれかに接続する、イーサネット接続用である。FCカード504は、ファイバー・チャンネル・プロトコル(FCP)サーバー又はFCP記憶装置のいずれかに接続するファイバー・チャンネル接続用である。WANカード506は、MAN又はWANに接続するためである。
図6は、本発明の実施の形態による記憶スイッチ204に使用される一般的なラインカード600の機能ブロック図を示す。この図は、全てのタイプのラインカード、例えば、GigE502、FC504、又はWAN506、において共通なコンポーネントを示す。他の実施の形態では、ラインカードの他のタイプが、インフイニバンドなどの他のプロトコルを使用する装置へ接続するために使用できる。ラインカードの相異点は後で説明する。
ポート
各ラインカード600は、複数のポート602を含む。ポートは、サーバー又は記憶装置のいずれかへのラインカードの接続を形成する。図示された実施の形態では8つのポートが示されているが、他の実施の形態ではより多い又は少ないものが使用できる。例えば、1つの実施の形態では、各GigEカードは8つまでの1Gbイーサネット・ポートを支援でき、各FCカードは8つの1GbFCポート又は4つの2GbFCポートのいずれかまでを支援でき、各WANカードは4つのOC−48ポート又は2つのOC−192ポートのいずれかまでを支援できる。従って、1つの実施の形態では、最大の可能な接続は、スイッチ204当たり128ポートである。各ラインカードのポートは、フルデュプレックスであり、サーバー又は他のクライアントのいずれか、又は、記憶装置又はサブシステムへ接続する。
さらに、各ポート602は、付随メモリ603を持つ。単に1つのメモリ装置が1つのポートに接続されているのが示されているが、各メモリポートはそれ自身のメモリ装置を有してよく、また、全てのポートが単一のメモリ装置へ接続してもよい。説明の簡潔のため、単一のメモリ装置がここでは1つのポートに接続されているのが示されている。
記憶プロセッサ・ユニット
1つの実施の形態では、各ポートは記憶プロセッサ・ユニット(SPU)601と関連付けられる。1つの実施の形態では、SPUは、データ・トラフイックを高速に処理して、ワイヤ速度操作を可能にする。1つの実施の形態では、SPUはいくつかの要素:パケット集合及び分類エンジン(PACE)604、パケット処理ユニット(PPU)606、SRAM605、及びCAM607、を含む。他の実施の形態はより多い又は少ない要素を使用でき、また、同じ機能を得るために要素を結合できる。例えば、いくつかの実施の形態は、SPU内にPACE及びPPUを含むが、SPUはメモリ要素を他のSPUと共有することができる。
PACE
各ポートは、パケット集合及び分類エンジン(PACE)604に接続されている。図示されるように、PACE604は2つのポートを二倍の帯域幅を有する単一データ・チャンネルに集合する。例えば、PACE604は、2つの1Gbポートを単一の2Gbデータ・チャンネルに集合する。PACEは、仮出願番号第60/325,704号に記載されるように、各受信パケットを制御パケット又はデータパケットに分類する。制御パケットは処理のためにブリッジ616を経由してCPU614へ送られる。データパケットは以下に説明するパケット処理ユニット(PPU)606へ追加されたローカル・ヘッダと共に送信される。1つの実施の形態では、ローカル・ヘッダは、16バイトであり、64バイトのデータ「セル」を生ずる(16バイトのヘッダ及び48バイトのペイロード)。ローカル・ヘッダは、情報を運ぶために使用され、スイッチ204により内部的に使用される。ローカル・ヘッダは、パケットがスイッチを去る前に除去される。従って、ここで使用される「セル」はスイッチ内で局所的に使用される移送単位であり、ローカル・ヘッダとオリジナル・パケット(いくつかの実施の形態では、元のTCP/IPヘッダも元のパケットから除去される)を含む。しかし、本発明の全ての実施の形態がローカル・ヘッダを作成し、外部パケットとは異なる「内部パケット」(セル)を持つのではない。従って、ここで使用される言葉「パケット」は「内部」又は「外部」パケットのいずれかを指すことができる。
分類機能は、スイッチが、従来システムの記憶及び転送モデルを使用せずに、ワイヤ速度で記憶仮想化及びプロトコル翻訳機能を実行可能にすることを助ける。各PACEはPPU606への専用化経路を持つが、図示された実施の形態中の4つのPACEの全ては、CPU614への経路を共有する。これは、1つの実施の形態では、104MHz/32(3.2Gbps)ビット・データ経路である。
パケット処理ユニット(PPU)
PPU606は、オンザフライで仮想化及びプロトコル翻訳を実行する。これはセルは、仮出願番号第60,325704号に記載されるように、この処理のためにバッフアされないことを意味する。また、後述する他のスイッチ・ベース記憶サービス機能を実行する。1つの実施の形態では、PPUは、セルを入場と出場の両方向へ、OC−48速度又は2.5Gbpsで移動できる。他の実施の形態では、セルをOC−192速度又は10Gbpsで移動できる。1つの実施の形態では、PPUは、共に同時的に動作する入場PPU6061及び出場PPU6062を含む。入場PPU6061は、PACE604から入来するデータを受信して、データをトラフイック・マネージャ608iヘ送信する。出場PPU6062は、トラフイック・マネージャ608eからデータを受信して、データをPACE604へ送信する。図6に示されるただ1つのPPU606が入場PPU6061及び出場PPU6062を有するが、1つの実施の形態では全てのPPU606が入場及び出場PPUの両方を含むことが理解される。説明の簡潔さのため、図6に示されるただ1つのPPUのみが入場及び出場PPUの両方を備えている。
多数の記憶接続(例えば、サーバーから仮想ターゲット)が、各ポートで同時に確立できる。しかし、各接続は仮想ターゲットに対して独特であり、TCP制御ブロック・インデックス(iSCSI接続の場合)及びポート番号により独特に識別できる。接続が確立される時、ラインカード600のCPU614は、PPU606に活動仮想ターゲットをそれに接続ために仮想ターゲット記述子(VTD)を送信することにより知らせる。VTDは、PPUがデータについて適当に動作、例えば、仮想化、翻訳、及びさまざまな記憶サービスの実行、をするのに必要な仮想ターゲット及び接続とに関する全ての関連情報を含む。VTDは、SCCデータベース中のオブジェクトから導出され、普通、SCCデータベース中の関連オブジェクト中に記憶されている情報の小組を含む。図7aに本発明の1つの実施の形態のVTD中のフィールドの例が示される。しかし、本発明の他の実施の形態は、より多い、少ない又は異なるフィールドを持つことができる。
同様に、物理的ターゲット記述子(PTD)が、本発明の実施の形態で使用される。PTDは、現実の物理的装置、それらの個別のLU、又はそれらの個別のエクステント(全体LU又は連続する部分)を記述し、そしてVTDのそれと同様な情報を含む。また、VTDと同じく、PTDはSCCデータベース中のオブジェクトから導出される。図7bに本発明の1つの実施の形態のPTDのフィールドの例を示す。しかし、本発明の他の実施の形態は、より多い、少ない又は異なるフィールドを持つことができる。
VTD及びPTDを記憶してそれらに高速にアクセスするために、1つの実施の形態では、PPU606がSRAM605及びCAM607に接続されている。SRAM605は、VTD及びPTDデータベースを記憶する。また、VTD識別子(VTDID)又はアドレス、及びPTD識別子(PTDID)のリストが、VTDの高速アクセスのためにPPUCAM607中に維持される。VTDIDは、TCP制御ブロック・インデックス及びLUNを用いてインデックス(マップ)される。PTDIDは、VTDIDを使用してインデックスされる。さらに、IPルーテイング・サービスのために、CAM607は、経路が追加又は除去された時にCPUにより更新される経路テーブルを含む。
単に1つのCAM及びSRAが、1つのPPUに接続するように示されているが、これは図面の簡潔さを維持するためであることに注意する。さまざまの実施の形態では、各PPUはそれ自身のCAM及びSRAM装置に接続されるか、又は、PPUは単一のCAM及び/又はSRAMに全て接続される。
PPUへの各未決の要求については(例えば、読出し又は書込み)、要求の状態を追跡するためにタスク制御ブロックがPPUSRAM607中に設定される。入場PPU上の記憶スイッチにより受信された要求の状態を追跡する入場タスク制御ブロック(ITCB)及び出場PPU上の記憶スイッチにより送信される要求の状態を追跡する出場タスク制御ブロック(ETCB)が存在する。各仮想ターゲット接続については、多数の同時的要求が存在し得、従って、多くのタスク制御ブロックが存在し得る。タスク制御ブロックは要求が開始される時に割当てられ、要求が完了する時に解放される。
トラフイック・マネージャ
各ラインカード600上に2つのトラフイック・マネージャ(TM)608:入場トラフイックのための1つのTM608i及び出場トラフイックのための1つのTM608e、が存在する。1つの実施の形態では、入場TMは64バイト・データセルの形式のセルを全ての4つのSPUから受信する。このような実施の形態では、各データセルは、16バイトのローカル・ヘッダと48バイトのペイロードを持つ。ヘッダは、TMにセルの宛先ポートを知らせるフローIDを含む。いくつかの実施の形態では、SPUはまた、セルをTMへ転送する前にTMヘッダをセルに取付けてもよい。また、いくつかの実施の形態では、TM又はSPUのいずれかは、セルをファブリック・カードを通じての送信のためにより小さいセルに分割できる。
入場TMは、1つの実施の形態では、データセルを128ビット104Mhzインターフェイス610を経由してファブリック・カードへ送信する。他の実施の形態では、125Mhz又は他の速度で動作する。出場TMはファブリック・カードからデータセルを受信してそれらを4つのSPUへ配達する。
入場及び出場TMの両方は、配達のためにセルを待ち行列させるための大きなバッフア612を持つ。入場及び出場TMのための両バッフア612は、64MBであり、多数のパケットを待ち行列できる。SPUは、普通、ファブリック・カードの出力流れは入力流れと同じ程度に速いので、セルを入場TMへ素早く送信できる。従って、セルは素早く出場TMへ移動する。一方、出場TMは、出力ポートが渋滞又は複数の入場ラインカードにより供給されるため、バックアップされてよい。このような場合、操作を素早くするように出力SPUに知らせるため、出力セルのヘッダ中にフラグが設定される。また、出場TMは、以下に説明する記憶アクセスのためのサービスの品質を提供する際に使用される流れ制御機能を活性化するために、入場SPUへ要求を送信する。インターネット上の通信トラフイックとは異なり、記憶トラフイックに対しては、パケット又はセルを落とすことは許されないことに注意する。従って、バッフア中のセルの量が指定された閾値を越えると直ちに、SPUはバッフアのオーバーフローを避けるために入力トラフイックを遅くするためその流れ制御機能を活性化する。
ファブリック接続
ファブリック接続610は、TMの256ビット・パラレル信号(それぞれ、128ビット入場及び128ビット出場)を、160Gbpsのバックプレーンへの16ビット・シリアル・インターフェイス(8ビット入場及び8ビット出場)へ変換する。従って、バックプレーンは、16分の1のピンで16倍早い速度で動作している。この変換は、数千の接続ピンとワイヤを無しに合理的なコストで高い利用可能度のバックプレーンの構成を可能にする。さらに、1つの実施の形態では3つのファブリック・カードが存在するため、1つの実施の形態では各ラインカード上に3つの高速コネクタが存在し、これらコネクタの各々は8ビット信号を3つのファブリック・カードのそれぞれに接続する。もちろん、他の実施の形態は3つのファブリック・カード610を必要としないであろう。
CPU
各ラインカード上には、プロセッサ(CPU)614が存在する。1つの実施の形態では、プロセッサはパワーPC750Cxeである。1つの実施の形態では、CPU614は、バス・コントローラ615とブリッジ616とを経由して3.2Gbバスにより各PACEに接続する。さらに、CPU614は各PPU、CAM及びTMにも接続する。しかし、いくつかの実施の形態では、この接続はより遅い40Mbpsである。3.2Gb及び40Mbpsの両経路はCPUがラインカード中の大部分の装置と通信することを可能にし、そしてラインカード上の全ての装置の内部レジスタを読取り及び書込むことを可能にし、マイクロコードをダウンロードし、そして制御パケットを送信及び受信することを可能にする。
各ラインカード上のCPUは、電源投入時に各チップを初期化する責任を持ち、SPU及びマイクロコードが必要な各ポートへマイクロコードをダウンロードする。ラインカードが動作状態になると、CPUは制御トラフイックを処理する。仮想ターゲット接続を確立するのに必要な情報については、CPUはSCCから情報を要求し、次にSCCデータベース中の適当なオブジェクトから情報を得る。
ラインカード−ポートの区別
ラインカードの各タイプのポート、例えば、GigE、FC、又はWANは、1つの実施の形態では各ラインカードは1つのタイプのポートのみを支援するため、別個である。以下に1つの実施の形態のポートの各タイプについて説明する。もちろん、別の実施の形態では、インフイニバンドなどの他のプロトコルを支援するため、他のラインカード・ポートが設計できる。
GigEポート
ギガビット・イーサネット・ポートは、iSCSIサーバーと記憶装置に接続する。GigEポートは全ての種類のイーサネット・トラフイックを運ぶが、本発明の1つの実施の形態によるワイヤ速度で記憶スイッチ204により一般に処理されるネットワーク・トラフイックは、TCP/IPパケット中のiSCSIパケットデータユニット(PDU)だけである。しかし、他の実施の形態では、イーサネット上を運ばれる他のプロトコル(ネットワーク・ファイル・システム(NFS)のような)によるパケットが、GigEポートで受信されて、SPU及び/又はCPUにより処理されてよい。
GigEポートは、仮想ターゲット又はiSCSI装置のためにTCP/IPセグメントを送受信する。仮想ターゲットのためにTCP接続を確立するために、ラインカードCPU614とSCC510の両方が関与する。TCPパケットが受信される時、そして初期のハンドシェーキングが行われた後、TCP制御ブロックが生成されて、GigEポート・メモリ603中に格納される。また、接続を認証して仮想ターゲットの構成を理解する目的のため、VTDがSCCデータベースのオブジェクトから検索されて、CPUSDRAM605中に記憶される。TCP制御ブロックは、パケットが所属しそして1つの実施の形態ではTCPセグメント番号、状態、ウインドウ大きさ、及び接続に関する潜在的に他の情報を含む特定のTCPセッション又はiSCSI接続を識別する。さらに、TCP制御ブロックは、ここで「TCP制御ブロック・インデックス」と呼ばれるインデックスにより識別される。接続のためのVTDが作られて、SPURAM605中に記憶されなければならない。CPUは、そのSDRAM中に記憶されていて、元はSCCデータベースから得られたVTD情報を検索することにより、VTDを作成する。VTDIDが、VTDの素早い参照のためにSPUCAM607中のVTDIDのリスト中に設定される。VTDIDは、TCP制御ブロック・インデックスと合併され、そしてインデックスされる。
ポートが、iSCSIPDUを受信する時、本質的にその接続の終了点として機能するが、その後にスイッチがターゲットへの新しい接続を始める。入場側でパケットを受信した後、ポートは、特定のTCP接続を識別するTCP制御ブロック・インデックスによりPACEへiSCSIPDUを配達する。非TCPパケット又はiSCSIPDUを含まないTCPパケットについては、ポートは接続の終点として動作することなくパケットを受信しそして送信する。典型的に、ポート602は、iSCSIパケットがTCP制御ブロック・インデックスを使用して受信又は送信されるPACE604と通信する。パケットのTCP制御ブロック・インデックスが、−1の時、それは非iSCSIパケットを識別する。
FCポート
FCポートは、サーバー及びFC記憶装置に接続する。FCポートは、接続するサーバーにファイバー・チャンネル記憶サブシステム(すなわち、ターゲット)として見える。それはイニシエーター(例えば、サーバー)が接続を確立するために業界で知られているプロセス・ログイン(PLOGI又はPRLI)を実行することを可能にする仮想ターゲット装置の大きなプールを表すことを意味する。FCポートは、GID拡張リンクサービス(ELS)を受け取り、そしてそのイニシエーター(例えば、サーバー)によるアクセスのために利用可能なターゲット装置のリストを戻す。
ファイバー・チャンネル記憶装置に接続する時、ポートはファイバー・チャンネルFポートとして見え、記憶装置から業界で知られているファブリック・ログインを受け取り、そしてGID要求を受け取りそして処理することにより名前サービス機能を提供することを意味する。換言すれば、ポートは記憶装置にはイニシエーターとして見える。
さらに、FCポートは別の既存のSANネットワークに接続でき、このような例では他のネットワークには多くのLUを持つターゲットとして見える。
ポートの初期化では、ラインカードCPUはファブリック・ログイン、プロセス・ログイン、及びGIDを送信し、そして同じものを受信する両方を完了しなければならない。SCCは、FCELSをiSNS要求及び応答に変換するためのアプリケーションを支援する。この結果、SCC内の同じデータベースは、あたかもそれらがiSCSIイニシエーター及びターゲットであるかのように、FCイニシエーター(例えば、サーバー)及びターゲット(例えば、記憶装置)の両方を追跡する。
FC接続を確立する時、GigEポートとは異なり、FCポートはTCP制御ブロック又はその等価物を生成する必要がない。必要な全ての情報はFCヘッダから利用可能である。しかし、VTD(D_IDによりインデックスされる)はGigEポートについて説明したのと同様な態様で確立される必要がある。
FCポートは、1Gb又は2Gbとして構成できる。1Gbポートとして、図6に示すように、2つのポートが単一のPACEへ接続されるが、2Gbポートとして構成される1つの実施の形態では、ポート・トラフイック及びSPUにより収容可能なトラフイックは、SPUでの渋滞を避けるために一致すべきである。1つの実施の形態では、ポートはPOS/PHYインターフェイスによりPACEへ接続される。各ポートは別個に構成できる。すなわち、1つのPACEは2つの1Gbポートを持つことができ、そして別のPACEは単一の2Gbポートを持つ。
WANポート
WANラインカードを含む実施の形態では、WANラインカードは1つの実施の形態ではOC−48及びOC−192接続を支援する。従って、2つのタイプのWANポート:OC−48及びOC−192が存在する。OC−48については、各SPUに対して1つのポートが存在する。PACEには集合機能はないが、分類機能が存在する。WANポートはSONETに接続し、そしてそれはICMP、RIP、BPG、IP及びTCPなどのネットワーク・パケットを送信及び受信する時、GigEポートのように動作する。GigEポートとは異なり、WANポートは1つの実施の形態では、追加のハードウェア部品を必要とするIPSecとVPNによりネットワーク・セキュリテイを支援する。
OC−192はより高速のワイヤ速度を生ずるので、OC−192を支援する実施の形態ではより高速のSPUが必要とされる。
スイッチに基づいた記憶動作
本発明の実施の形態による記憶スイッチは、プーリング及び供給を含む、さまざまなスイッチに基づいた記憶動作を実行する。記憶アクセスのためのサービスの品質及び負荷平衡の各々について以下に説明する。
iSCSI及びFCプロトコルの一般的な知識は仮定される。iSCSIのさらなる情報に関しては、参照によりここに組み込まれた、インターネット・ドラフト及びインターネット・エンジニアリング・タスク・フォース(IETF)による、2001年11月19日の進行中の作業、“draft−ietf−ips−iSCSI−09.txt”を参照。ファイバー・チャンネル(FC)のさらなる情報に関しては、参照によりここに組み込まれた、“情報システム−SCSI用dpANSファイバー・チャンネル・プロトコル”Rev.012、1995年12月4日(アメリカン・ナショナル・スタンダードの提案草案)を参照。さらに、両方は仮出願番号第60/325,704号に記載されている。
記憶プール
図2の物理的な構成に示すように、本発明の実施の形態によるシステムは、1つ又は複数のサーバー202及び1つ又は複数の物理的装置206、すなわち、記憶装置又はサブシステム、に接続されたスイッチ204を含む。各物理的ターゲットは、1つ又は複数の論理的ユニット(LU)207を含む。仮想ターゲットが最終的に形成されるのはこれらLUからである。
しかし、仮想ターゲットが生成、又は「供給」できる前に、スイッチは取付けられた及び/又はそれによりアクセス可能な物理的記憶装置及びそれらの物理的記憶装置の特性を「知る」ことが必要である。従って、本発明の1つの実施の形態では、記憶装置又はイニシエーター装置がスイッチに接続又は登録される時、スイッチは新装置の性能特性について学ばなければならない。1つの実施の形態では、スイッチは記憶アクセス時間、データ転送速度、キャシュ支援、装置への代替経路の数、RAID支援、及び物理的装置のLUに対する許容最大命令を測定できるユーテイリテイ・プログラムを含む。いくつかの実施の形態では、一旦、装置がスイッチに接続されると、ユーテイリテイ・プログラムが自動的に装置を発見して、そして必要な情報をユーザ又は他の介在なしに自動的に集める。このような実施の形態では、スイッチはポートへの信号線のリセット又は撹乱がある時、装置の追加/削除を発見する。装置が発見されると、性能特性に関する情報を集めるために装置へさまざまな質問が送られる。例えば、読出し/書込み命令が転送速度を測定し又はアクセス時間を検査するために送信できる。代替的に、いくつかの実施の形態では、性能特性を得ることは、管理者が管理ステーション210で性能特性を入力することにより行うことができ、そして、特性はスイッチ204へ供給される。
全てにエンドユーザに対して一般に見えない、装置に関して集められた情報に基づき、本発明の1つの実施の形態では、スイッチはポリシーに基づき装置を分類する。例えば、最良特性を持つ装置はプラチナ装置として分類される。中間的な性能特性を持つ装置はゴールド又はシルバー装置として分類される。最低の性能特性を持つ装置はブロンズ装置として分類される。もちろん、定義されるタイプのポリシーは無限であり、本発明の実施の形態中で変化する。さらに、いくつかの実施の形態では、管理者は、例えば、プラチナ・ビルデイング1、プラチナ・ビルデイング2のようにポリシーを再分割でき、そしてこのように再分割されたポリシーへ資源を割当てる。しかし、本発明の1つの実施の形態に使用されるポリシーの一例を以下の表1に示す。
表1
Figure 0004264001
図8に示すように、一旦、ポリシーが記憶装置に対して決定されると、その装置のLUが、時々、「ドメイン」とここで呼ばれる、記憶プール802へ割当てられてられる。各記憶装置が1つ又は複数のLUを含むため、特定の記憶装置の全てのLUは同じプールに割当てられる。しかし、1つの実施の形態では、各LUはスイッチにより別個の記憶ノードとしてみなされ、そして各LUはSCCデータベース512内のLUオブジェクトにより記述される。従って、各プールはメンバーとしてLUを有する。1つの実施の形態では、プールへの割当ては物理的記憶装置が動作する、例えば、iSCSI又はファイバー・チャンネル、プロトコルとは独立に実行される。当業者には理解されるように、各プールはLUがそれに割当てられたプールに関するリストによりスイッチ中で定義され、そのリストは1つの実施の形態ではSCCデータベース512中に記憶される。このようなリストはLUオブジェクトへのポインタを含む。
一般に、各プールは、特定の性質を持つユーザのみによりアクセス可能である。例えば、記憶プールはビルデイング1にいるユーザのために設立でき、プールは「ビルデイング1共有ゴールド記憶プール」と命名される。別の例示的なプールは「エンジニアリング専用シルバー記憶プール」と命名されて、特定の会社のエンジニアリング・チームにより専用にアクセスされてよい。もちろん、プールの無限の変形が設定でき、ここに記載されて示されるものは例示のみである。
さらに、1つの実施の形態では、2つの特別なプールが存在する。「デフォルト・プール」と「ノー・プール」である。デフォルト・プールは、記憶ネットワークへアクセスするだれにもアクセスを許容する。これに対して、「ノー・プール」は、一般的にユーザにアクセス可能ではなく、スイッチ自身又はシステム管理者のみにアクセス可能である。一旦、プールに割当てられると、LUはスイッチ自身又はシステム管理者により異なるプールへ再割当てできる。例えば、LUは最初はノー・プール中に置かれて、テストされて、そして後で、デフォルト・プール又は他のプールへ移動される。
サービスの品質及びサービス・レベル・アグリメント
サービス・レベル・アグリメント(SLA)は、時々、ネットワーク通信中で使用されるが、記憶ネットワークの文脈で一般的には使用されておらず、サービスの品質(QoS)ポリシーと共に記憶ネットワーク中に使用されてはいない。SLA/QoSを提供することにより、ユーザはデータの記憶及び検索の条件を選択できる。1つの実施の形態では、QoSポリシーは、3つの要素:仮想ターゲットの供給、イニシエーター接続の供給、及びユーザ・ドメインの定義により定義される。以下に各々が説明される。しかし、いくつかの実施の形態は、QoSポリシーを定義するために3つの全ての定義を必要としない。例えば、いくつかの実施の形態は、仮想ターゲットの供給、及びイニシエーター接続の供給のみを必要とし、ユーザ・ドメインの定義を必要としない。他の実施の形態では、QoSポリシーを定義するために全く異なる要素を使用してよい。
仮想ターゲットの供給
物理的装置についてのLUがアクセス可能プールに存在すると、それらLUについて仮想ターゲットが生成できる。一旦、生成されると、図9に示すように、サーバー(及びそれらのそれぞれのユーザ)は、1つ又は複数の仮想ターゲット902を「見る」であろう。仮想ターゲットは各々が1つ又は複数のエクステント907からなるが、彼等は物理的装置206を必ずしも「見」ない。エクステントは、物理的装置から全体LU又はその隣接する部分である。図9の例に示すように、例示的仮想ターゲット902中の各エクステントは、いくつかの物理的装置からの全体LUにより形成されている。なお、「エクステント」は、ターゲットが「仮想」であることを自覚しないサーバーなどのイニシエーターからLUNにより参照できる。LUにより使用されるプロトコルを含む仮想ターゲットの構造は、サーバーとは関連性がない。しかし、図9に示すように、各仮想ターゲットは物理的装置206のLUへマップするエクステントからなる。
仮想ターゲットを供給するために、ユーザは本発明の1つの実施の形態において仮想ターゲットのためのいくつかの特性を選択する。特性は以下を含む。
・大きさ(例えば、ギガバイト単位)、
・記憶プール、1つの実施の形態では、ユーザはユーザがアクセスを許された記憶プールだけから選択するが、
・所望の利用可能性、例えば、常に利用可能(データが重要で、ダウンすること許されない)、普通の利用可能性等、
・仮想ターゲットのWWUI、
・バックアップ・プール、
・ユーザ認証データ、
・ミラーされたメンバー数、
・ミラーされたメンバーの場所(例えば、ローカル又は遠隔)
また、他の実施の形態では異なる、追加の、又はより少ない特性も選択できる。
その後、スイッチは仮想ターゲットが形成できるかどうかを決定するため、そして特にスイッチは仮想ターゲットについて必要の大きさに合うLU(又はLUの部分)の数が利用可能かどうかを決定するため、選択されたプールからの利用可能な資源を解析する。もし、そうであるならば、仮想ターゲットが1つ又は複数のエクステントにより生成される。そして、仮想ターゲット・オブジェクトが、仮想ターゲット、そのエクステント、及びその特性を識別するSCCデータベース内に形成される。以下の表2に4つの仮想ターゲットについてのユーザ選択特性の例が示されている。

































表2−仮想ターゲット
Figure 0004264001
新仮想ターゲットを供給するのに加えて、本発明の実施の形態によるスイッチは、既存のターゲットを新しい又は異なる情報により修正することもでき、又は、それらがもはや必要でなければ仮想ターゲットを削除できる。
イニシエーター接続の供給
サーバー又は他のイニシエーターがスイッチへ接続されてそしてイニシエーターがiSNS又はSLPを支援する時、1つの実施の形態では、イニシエーターはそれ自身をスイッチに登録して、イニシエーター・オブジェクトをSCSIデータベース内に記憶する。他の実施の形態では、スイッチはイニシエーター接続を生成し、更新し、又は削除するアクセス供給機能を含む。
アクセス接続−スイッチとイニシエーター(サーバーなど)との間の接続−を生成する際、ユーザは1つの実施の形態の表3に示されるさまざまなパラメータを指定する。
表3−イニシエーター接続
Figure 0004264001
上記の情報の全て又はいくつかが、SCCデータベース中に記憶されたイニシエーター・オブジェクト内に格納される。接続が除去される時、イニシエーター・オブジェクトが削除される。
そして、スイッチ、管理ステーション、又は他のネットワーク管理は仮想ターゲットを形成するためにイニシエーターに利用可能なLUを指定して、特定の接続のための記憶プールを生成する。
ユーザ・ドメイン
物理的装置と同様に、仮想ターゲットは指定された特性を持つもののみにアクセス可能なプールに割当てられることができる。すなわち、物理的装置と同様に、仮想ターゲットはユーザ指定ドメイン(時々、ここではユーザ・ドメインと呼ばれる)、デフォルト・ドメイン(だれにもアクセス可能)、又はノー・ドメインに割当てることができる。各ドメインは、1つの実施の形態では、その領域へ割当てられた全ての仮想ターゲットのリストを含むSCCデータベース中のオブジェクトにより識別される。仮想ターゲットについては、ノー・ドメインは予備仮想ターゲット、ミラーされた仮想ターゲットのメンバー、又は別のスイッチからの遠隔仮想ターゲットを含むことができる。本質的に、仮想ターゲット・ノー・ドメインは、或るタイプの仮想ターゲットためのパーキング場所である。説明の便宜のために、仮想ターゲットに言及する時、プールはここでは「ドメイン」と呼ばれる。しかし、物理的装置に言及する時、プールは「プール」と呼び続ける。しかし、概念的には「プール」と「ドメイン」とは本質的に同じものであることに理解すべきである。
一旦、上述したようにイニシエーター接続が供給されると、イニシエーターの要求に合った仮想ターゲットが供給され、イニシエーターのためのアクセス可能プール中に置かれるか、又は、前に供給された仮想ターゲットがイニシエーターに、例えば、ノー・ドメイン又はデフォルト・ドメインなどの別のドメインから仮想ターゲットをイニシエーターのユーザ・ドメインに移動することにより、アクセス可能とされる。(仮想ターゲット又はイニシエーター接続のいずれかが最初に供給できる。それが特定の順序で供給されるべき要求はない。)そして、一旦、イニシエーターが例えば読出し又は書込み要求を送信することにより、仮想ターゲットへのアクセスを要求すると、仮想ターゲット・オブジェクト及びイニシエーター・オブジェクトの両方がSCCデータベースから読み出され、そして、イニシエーター接続及び仮想ターゲットに関する情報が要求を処理する際に使用するために関連するラインカードに送られる。
仮想ターゲットを供給する例が、図10a−dを参照して与えられる。図10aを参照すると、スイッチに接続された全部で6つのLU―LU1、LU2、LU3、LU4、LU5、LU6―を有する物理的装置があり、全てが2つのイニシエーターX及びYにアクセス可能なプール「X−Yユーザ・プール」中に置かれていると仮定する。もし、イニシエーターXが2つの仮想ターゲットを要求すると、1つの状況では、LUは仮想ターゲットVT1及びVT2を形成するために供給される。ここでは、VT1はエクステントとしてLU1−3を含み、VT2はエクステントとしてLU4−6を含み、VT1及びVT2は共にサーバーXユーザ・ドメイン中に置かれて、図10bに示すようにサーバーXが両方の仮想ターゲットにアクセスすることを可能にする。サーバーYは、Yユーザ・ドメイン中に仮想ターゲットが置かれていないため、VT1又はVT2のいずれにもアクセスしない。代替的に、図10cを参照すると、もし、サーバーX及びサーバーYが共に1つの仮想ターゲットを要求すると、前と同様にVT1及びVT2が供給されるが、VT1がサーバーXのユーザ・ドメインに置かれ、一方、VT2がサーバーYのユーザ・ドメインに置かれる。
もし、代りに、Yがミラーされた仮想ターゲットMを要求すると、VT1及びVT2が仮想ターゲットMのメンバーとして生成される。VT1及びVT2はスイッチのノー・ドメイン中に置かれる。しかし、図10dに示すように、MはYにアクセス可能とされる。Mのメンバーとして、VT1及びVT2は独立にはアクセス可能ではない。
本発明のいくつかの実施の形態では、1つのスイッチへ結合された装置と仮想ターゲットがイニシエーターにアクセス可能であるだけでなく、別のスイッチに供給された仮想ターゲットも同様にアクセス可能である。図11を参照すると、サーバーXがスイッチAに結合され、そしてサーバーYがスイッチBに結合されている。VT1がスイッチA中のサーバーXのドメインの一部として供給され、VT2がスイッチB中のサーバーYのドメインの一部として供給される。さらに、スイッチBがスイッチAへのイニシエーターとして供給され、スイッチAがスイッチBへのイニシエーターとして供給される。このようにして、スイッチAはスイッチBを経由してVT2にアクセスでき、スイッチBはスイッチAを経由してVT1にアクセスできる。従って、スイッチBを経由してアクセスされるためここではVT1’として呼ばれるVT1をサーバーYの領域中に含むことができ、ここではVT2’として呼ばれるVT2をサーバーYの領域中に含むことができる(物理的装置のLUは一時に1つのプールのみに属することができるが、仮想ターゲットは一時に1つのドメインよりも多くに属することができる)。XがVT2にアクセスする時、スイッチBはスイッチAをイニシエーターとして見る。同様に、YがVT1にアクセスする時、スイッチAはスイッチBをイニシエーターとして見る。1つの実施の形態では、管理者はスイッチBの選択された資源を他のスイッチ、例えば、スイッチA、又はその逆、に利用可能としてもよい。
SLAの定義
本発明の1つの実施の形態では、イニシエーターによる仮想ターゲットへのアクセスが、ユーザにより選択されたQoSポリシーがその一部であるSLAに従って提供される。以下の表6に1つの実施の形態でユーザによりSLAのために選択できるいくつかのパラメータの例が示される。


表4
Figure 0004264001
ユーザがSLAと一致する時、ユーザはサービスの品質(QoS)ポリシーも選択する。上述したように、1つの実施の形態では、QoSポリシーは一般的に仮想ターゲット(供給されるような)、イニシエーター接続(供給されるような)、及びユーザ・ドメインにより定義される。従って、上の表4を再び参照し、表中の最初の3つの項目、「イニシエーターのID」、「仮想ターゲットのID」及び「ユーザ・ドメインのID」は、これらの項目が供給されるとイニシエーター接続及び仮想ターゲットの属性が定義されるため、本質的にQoSポリシーを記述する。例えば、イニシエーター接続のための最小及び最大帯域幅は、既に識別されている(表2及び3を参照)。ユーザ・ドメインはポリシーの定義を補助する。例えば、イニシエーター接続又は仮想ターゲット接続がより遅いかどうかを決定し、そして、QoSを2つの内のより遅い方へ強制する。もちろん、上述したように、ユーザ・ドメインは全ての実施の形態で必要でないであろう。同様に、他の実施の形態は上の表4に示されたものより多い、少ない、又は異なるパラメータを使用してSLAを定義してよい。
図12
図12は、1つの実施の形態で、QoSを提供できるように、仮想ターゲットと接続を供給するステップを要約する。図示されるように、本発明の1つの実施の形態によると、スイッチは、ステップ1202で、スイッチと関連した物理的装置の特性を発見して決定する。そして、スイッチは、ステップ1204で、これらの装置を分類して、これらの装置を特定の記憶プールに関連付ける。スイッチは、ステップ1208で、イニシエーター接続のための情報を受信して、ステップ1210で、接続を供給し、SCCデータベース中にオブジェクトを生成する。また、スイッチは、ステップ1212で、仮想ターゲットのためのパラメータを受信して、ステップ1214で、これらのパラメータに従い仮想ターゲットを供給し、もし、資源が利用可能ならば、SCCデータベース内にオブジェクトを生成する。ステップ1208−1214は、どんな順番でも実行でき、図12に示された順番は例示のみである。ステップ1216で、仮想ターゲットが供給された後、ユーザ・ドメインが生成されて、仮想ターゲットがユーザ・ドメインに置かれるか、又は、仮想ターゲットは既存のユーザ・ドメイン中に置かれる。また、ユーザは前に供給された仮想ターゲットにアクセスを試みることができる(従って、ステップ1214は全ての接続については必要ではないであろう)。最後に、ステップ1218で、本発明の実施の形態によると、スイッチは、SLA/QoSパラメータを受信する。
オブジェクト
上述したように、各仮想ターゲット、各イニシエーター接続、及び各物理的装置は、それぞれのエンティテイについてオブジェクト中に含まれた情報によりSCCデータベース内で識別される。各仮想ターゲット・オブジェクト及び物理的ターゲット・オブジェクトは、それを構成するLU又はエクステントのリストを含む。仮想ターゲット・オブジェクトの一例は、本発明の1つの実施の形態では、次の情報を含む。
・エンティテイ・タイプ
・エンティテイ識別子
・IPアドレス管理
・時間スタンプ及びフラグ
・ポート
・ドメイン情報
・SCNビットマップ
・容量と質問情報
・エクステントの数
・エクステントのリスト
・エクステント・ロケーター
・仮想モード・ページ
・サービスの品質のポリシー(例えば、表4の最初の3つの項目)
・統計−使用、エラー、及び特性データ
・SLA識別子
物理的ターゲット(又は、LU)オブジェクトは同様な情報を含んでよい。
オブジェクト中、「エンティテイ・タイプ」はエンティテイが仮想ターゲット又は物理的ターゲットかどうかを識別する。「エンティテイ識別子」は、1つの実施の形態では、WWUIであり、いくつかの実施の形態では、ユーザにより生成される。「IPアドレス管理」は、エンティテイ、例えば、管理ステーションがそれにより構成される装置のアドレスを示す。例えば、仮想ターゲットは、本発明の実施の形態ではSCCを通じてアクセスされる管理ステーションにより構成される。
「時間スタンプ及びフラグ」は仮想ターゲット又は他のエンティテイが生成され又は変更された時間などの事象を追跡するのに使用される。フラグは、仮想ターゲット中のデータのコピーなど、進行中の事象又はさまざまなサービスを指示するために使用される。「ポート」は、それを通じてLUがアクセスできるポートのリストを含み、ポート名とラインカード数、TCP/IPアドレス又はファイバ・チャンネル24ビット・アドレス、及び、ポートがエンティテイのための一次的又は二次的ポートであるかどうかに関する情報を含む。
「ドメイン情報」は仮想ターゲット又はエンティテイが属する記憶ドメイン又はプールを含む。「SCNビットマップ」は仮想ターゲットのためのシステム変更通知を指示する。「容量と質問情報」は仮想又は物理的ターゲットがどれだけ大きいかを指示し、及び、装置ベンダーにより通常提供される質問情報を含む。例えば、物理的装置についての質問情報はしばしばその製造者を識別する。仮想ターゲットについての質問情報はしばしばその仮想ターゲットを生成したスイッチを識別する。
物理的装置の各LUは、仮想ターゲットを形成するために使用されるエクステントと呼ばれる記憶空間の隣接した1つ又は複数の部分からなる。従って、「エクステントの数」はどれだけの数のエクステントが仮想ターゲットを形成するかを識別する。「エクステントのリスト」は、各エクステントを1つの実施の形態ではオフセット及び大きさにより識別する。例えば、3つのエクステントからなる10GB仮想ターゲットは、表5に示すように「エクステントのリスト」内でエクステントを識別してよい。
表5
Figure 0004264001
「エクステント・ロケーター」は、正確にエクステントがどこに位置するか、すなわち、どの物理的装置上にあるかを識別する。例えば、上記の10GB、3エクステント仮想ターゲットは以下のエクステント・ロケーターを持つてもよい。
表6
Figure 0004264001
表5及び表6の両方を使用したこの例では、仮想ターゲットの第1エクステントは、オフセット5GB(表6)で開始して2GB(表5)まで延びる物理的装置2(表6)にマップされていると決定できる。第2エクステント(表5)は、オフセット3GB(表6)で開始して5GB(表5)まで延びる物理的装置1(表6)にマップされている。最後に、第3エクステントは、オフセット15GB(表6)で開始して3GB(表5)まで延びる物理的装置3(表6)にマップされている。
もし、いくつかの実施の形態で、仮想ターゲットがミラーされると、ミラーされた仮想ターゲットの各メンバーは、エクステント・ロケーターは異なるが、同一のエクステント・リストを持つ。
「仮想モードページ」は、当業者には理解されるように、SCSI命令中にしばしば見られるモードページを識別する。この情報はブロック転送大きさ、直接データ支援、又はアプリケーション・ソフトウェアがSCSIモードページ命令により設定できそして検索できるどんな独特な情報を含む。
「サービスの品質のポリシー」は、仮想ターゲットのサービスの特性を決定し、仮想ターゲットが供給される時に選択される。1つの実施の形態では、サービスの品質のポリシーは、表4の最初の3つの項目中に見られる識別子を使用して定義される。
「統計」は、本発明の1つの実施の形態ではスイッチにより仮想ターゲットの実行時に収集される。これらは、本発明の1つの実施の形態では、使用、エラー。及び性能データを含み、以下にさらに説明される。
「SLA識別子」は、SLAに関する情報についてのSLAオブジェクトを識別する。
統計
本発明の実施の形態によるスイッチは統計も収集する。1つの実施の形態では、1つのイニシエーターから1つの仮想ターゲットへの各接続に対して、以下の情報がイニシエーターに接続するラインカードのSPUにより収集される。
1.全読み取りアクセス(読み取り要求数)
2.蓄積された読み取り転送バイト(記憶から読み取られた全バイト数)
3.蓄積された読み取り応答時間(要求の受け取りから応答を得るまでの時間)
4.全書込みアクセス(書込み要求数)
5.蓄積された書込み転送バイト
6.蓄積された書込み応答時間
7.蓄積された回復可能エラー
8.蓄積された回復不可能エラー
各ラインカード上のCPUは、周期的にSPUから統計を要求する。SPUはデータを戻すことにより応答する。そして、SPUはデータをゼロにリセットして収集を開始する。
収集されたデータに基づいて、CPUは以下の統計を維持する。
1.平均読み取りアクセス速度
2.最大読み取りアクセス速度
3.平均読み取り転送速度
4.最大読み取り転送速度
5.最小読み取り応答時間
6.平均読み取り応答時間
7.最大読み取り応答時間
8.平均書込みアクセス速度
9.最大書込みアクセス速度
10.平均書込み転送速度
11.最大書込み転送速度
12.最小書込み応答時間
13.平均書込み応答時間
14.最大書込み応答時間
15.十億の要求当たりの回復可能エラー
16.十億の要求当たりの回復不可能エラー
1つの実施の形態ではある所定の時間間隔後に、CPUはSCCへ統計を転送して、関連VTD(SPU内に記憶されている)を更新する。別の実施の形態では、SCCはCPUから統計を要求し、CPUはそれをSCCへ提供する。いくつかの実施の形態では、SCCはまた、データが正確で過剰に蓄積されないように、その統計を周期的、例えば、週単位でリセットする。
QoSの実行
1つの実施の形態では、イニシエーター接続帯域幅の最小パーセンテイジは、QoSにより保証される。従って、このような実施の形態で、複数のイニシエーターが単一のポート上で供給される時、全てのイニシエーターの全ての最小帯域幅の合計は100%に等しいか又はそれより少なければならない。対照的に、最大パーセンテイジは、同じ接続上で他の競合するユーザが存在しない時に接続の可能な使用を与える。従って、全てのイニシエーターの帯域幅の最大パーセンテイジの和は、接続の帯域幅100%を超えることができる。この場合、定義されたスイッチング優先度(表2参照)が、どのイニシエーターが予定の最初を獲得するかを決定する。
従来の接続ネットワークでは(記憶ネットワークとは反対に)、QoSはユーザが支払った接続のデータ帯域幅のパーセンテイジを獲得することを保証するために使用される。それはオーディオ及びビデオなどの時間敏感データが、送信前に予約されたデータ帯域幅を交渉するか又は時間敏感送信を渋滞した状況でより高い優先度を与えるかのいずれかにより、許容できる中断のみを経験することを可能にする。QoSは、パケットを落とす出費によってスイッチング・トラフイックを優先付けることでさえ実行される。
しかし、要求が1つ又は複数のパケットを含むことができる従来のネットワーク通信システムとは異なり、記憶システムの要求を落とすことは許容できない。1つの実施の形態では、要求が完了するまで、イニシエーターからターゲットへ送受信される全てのパケットを含む。例えば、iSCSI命令PDU、iSCSIR2T、iSCSI書込みデータPDU、及びiSCSI応答PDUは、単一の要求を形成する。本発明の実施の形態による記憶スイッチに対しては、1つの実施の形態では、データ帯域幅が秒当たりの要求数に要求の平均転送大きさを掛算して計算される。例えば、秒当たり1000要求で、平均転送大きさが8KBの場合、記憶装置の帯域幅は、8MB/秒(又は、80Mb/秒)である。しかし、スイッチは要求の平均転送大きさの制御を持たないため、記憶アクセスについてのQoSを実行することは秒当たり同時に許容される要求数を制御することになる。従って、もし、イニシエーターから多すぎる要求が送信されると、同時的要求の数は減少されなければならない。1つの実施の形態では、最悪のケースでは、一時に1つの要求のみがイニシエーターから送られることができる。
仮想ターゲットは、最大数の同時的要求を支援する。複数の仮想ターゲットをアクセスするイニシエーターは、それがアクセスしている全ての仮想ターゲットについての要求の最大数の和に等しい要求の最大数を送信できる。しかし、複数のイニシエーターが1つ又は複数の仮想ターゲットを共有する時、利用可能な要求の最大数は、帯域幅の最小パーセンテイジのそれぞれのQoSパラメータに従って比例配分されて、イニシエーター間で共有される。例えば、もし、2つのイニシエーターが100の同時的要求を収容できる仮想ターゲットへのアクセスを共有していて、そして、イニシエーター1が帯域幅の最小の70%を得て、イニシエーター2が帯域幅の最小の30%を得ている場合、最初は、イニシエーター1は70要求を送信でき、イニシエーター2は30要求を送信できる。しかし、各イニシエーターはそれ自身の要求大きさを持つから、大きな要求大きさはより大きな帯域幅を消費して、より小さな転送大きさの他のイニシエーターを締め出す。従って、以下に説明するように、1つの実施の形態では、帯域幅の範囲を保証するために各イニシエーターによる可能な要求の調節が実行される。
入場及び出場ラインカード内のトラフイック管理(TM)608(図6)は、異なる接続の転送帯域幅を監視する。また、TMは、QoSパラメータに基づいて配達を予定する。従って、TMは各共有された接続がその最小帯域幅を得て、最大帯域幅により制限されることを保証する。換言すると、TMは各接続が指定された範囲内にあることを保証する。そのようにするため、1つの実施の形態では、パケットがTMバッフア612内で蓄積される時、このような蓄積はイニシエーターがその限界に到達したことを指示する。TMは、違反したイニシエーターにその接続を遅くするように指示する制御メッセージをSPUへ送信する。このようなメッセージを受信した後、SPUは違反したイニシエーターへ許容される要求の数を減らして、一方、より少ない持分を受け取っているイニシエーターへ許容される要求の数を増加する。1つの実施の形態では、サーバーへの利用可能な要求の数の通知は、iSCSIPDU中のMaxCmdSNフィールドで行われる。
例えば、イニシエーターA及びイニシエーターBの両方が、それらの最小帯域幅50%として共有されたイニシエーター接続を持つ。100KBの転送大きさを使用して、イニシエーターAは秒当たり800要求を送信し、よって、接続上で秒当たり80MBの帯域幅を得ている。転送大きさ4Kを使用して、イニシエーターBは秒当たり2000要求を送信するが、たった秒当たり8MBの帯域幅を得る。従って、もし、イニシエーターAに許された最大帯域幅が秒当たり70MBである場合、スイッチは秒当たり70MBを得るためにイニシエーターAからの要求数を秒当たり700の要求に減少しなければならない。従って、入場トラフイック・マネージャ608iは、入場SPUに、イニシエーターAがその最大を超過して、パケットがバッフア612iに蓄積していることを報告する。SPUは、そのメッセージを受け取ると、Aへの可能な要求の数を減少してそしてBへのそれらを増加する。よって、イニシエーターBはより多くの要求を接続上に送信できる。イニシエーターがその最小パーセンテイジ帯域幅に到達してもその可能な要求の使用を最大化しない時、調節は必要でないことに注意する。さらに、イニシエーターBが現在、接続の50%を要求していないため、イニシエーターAはその最大の可能な帯域幅まで使用することが自由である(しかし、超過しない)。
同様に、もし、2つの異なる接続上の2つのイニシエーターが単一の仮想ターゲットを共有している場合、各イニシエーターに対して比例分割された要求数は、出場ラインカード上のTM608eが2つのイニシエーター間の不当な帯域幅の使用を検知する時、調節される。それはこのような不当な帯域幅使用を、違反したイニシエーターがパケットをバッフア612eに蓄積する時に発見する。
接続が共有されていないで、物理的記憶装置自身がビジーとなって渋滞を発生した時、出場TM608eはPPUにパケットがバッフア612eに蓄積していることを知らせる。再び、SPUはイニシエーターを遅くするために、可能な要求の数を減少する。
また、スイッチはイニシエーターと記憶装置との間の帯域幅を一致する。例えば、最小100%の1Gb接続を持つイニシエーターを支援するため、他の仮想ターゲットは記憶接続上に割当てることができない。しかし、イニシエーターが接続の50%帯域幅のみを要求する時、残りの50%は別の仮想ターゲットに割当てることができる。
最後に、他の全てが等しい時、接続の優先度が、どの命令がラインカードのスイッチ・トラフイック・マネージャにより最初に配達されかを決定する。
以下の表7が、1つの実施の形態についてここで説明されたQoS実行を要約する。
表7
Figure 0004264001
第1の状態において、イニシエーター入場ポートは共有されずそしてターゲット出場ポートは共有されない場合、渋滞はしばしばビジーな物理的ターゲット装置により発生されて一般に出場バッフア閾値が超過する時に検出される(出場バッフアは許容ポイント超えてバックアップされる)。従って、適当な動作はイニシエーターからの可能な要求数を減少することである。
第2の状態において、共有されたイニシエーター入場ポートは、ターゲット出場ポートが共有されないように、異なるポート上の異なるターゲットにアクセスするイニシエーターにより共有される。イニシエーターの1つにより使用される過剰な帯域幅は、閾値が超過されたかどうかを決定することにより入場バッフア内で検出されて、バッフアが許容ポイントを超えてバックアップするようにする。適当な動作は、違反イニシエーターからの可能な要求数を減少することである。
第3の状態において、イニシエーター入場ポートは共有されないが、ターゲット出場ポートは共有されて、同じターゲットが異なるポートから異なるイニシエーターによりアクセスされることを指示する。イニシエーターの1つによる過剰な要求数によって発生する過剰な帯域幅の使用は、出場バッフア内で検出される。適当な動作は、異なるイニシエーターからの可能な要求数を再分配することである。例えば、1つのイニシエーターの可能な要求数を減少し、一方、他のイニシエーターの要求数を増加する。
第4の状態において、イニシエーター入場ポートは共有されないが、ターゲット出場ポートは共有される。しかし、この場合、異なるターゲットは異なるイニシエーターにより同じ出場ポート上でアクセスされる。このような場合、過剰な帯域幅が各ターゲットが接続帯域幅のパーセンテイジを与えられている出場バッフア内で検出される。このような場合で取るべき適当な動作は、違反イニシエーターへの可能な要求数を減少することである。
最後に、第5の状態は共有されたイニシエーター入場ポート及び共有されたターゲット出場ポートを示す。このような状態では、二段階決定が存在する。第1は各仮想ターゲットが帯域幅のその割当てられたパーセンテイジを獲得することを保証し、そして、第2に異なるイニシエーターへ可能な要求数を比例配分することである。このような決定はバッフア閾値が超過したかどうか見ることにより、入場及び出場バッフアの両方で行われる。適当な動作は、上記の4つの状態で行われたように各仮想ターゲットを別個に取り扱い、必要により要求数を減少することである。
理解されるように、表7は説明のためであり、別の実施の形態では、QoSを実行するために別の動作を行うことができ、そして上述にない他の状態が発生できる。
負荷平衡
1つの実施の形態では、負荷平衡が使用され、ターゲット装置への複数の経路が利用可能な時、より速くターゲット装置に到達するために経路が動的に選択されることにより発生する。負荷平衡は、スイッチ内の各ポート上で、各要求に対して、各ポート上でのSPU処理パワーを使用することにより動的に実行される(固定された時間間隔で、静的にするのとは反対に)。
フェイルオーバーは負荷平衡の特別な場合であり、本発明のいくつかの実施の形態で使用される。フェイルオーバーはミラーされたターゲットの1つのメンバーが利用不可能になった時、又は、複数の経路によりアクセス可能なターゲットへの1つの経路が使用不可能になった時に発生し、いずれの場合、他のメンバーがアクセスされるか又は他の経路が利用される。
本発明の実施の形態によるスイッチにおいて、スイッチは負荷平衡に関して2つの異なるタイプの動作を実行する。
1.図13bを参照すると、もし、仮想ターゲットがミラーされている場合、スイッチはイニシエーターの読出し要求を、最短の平均応答時間を持つミラーされた仮想ターゲットのメンバーを選択することにより、ミラーされたメンバーの1つへ送る。
2.図13aを参照すると、もし、LUへ複数の経路が存在する場合、スイッチはLUへの要求を最短の平均応答時間を持つ経路に送信する。しかし、1つの実施の形態では、この負荷平衡は、他の実施の形態ではこのような要件は持たないが、複数の経路がターゲットLUから同じSPUへ接続されている時にのみ、実行される。
いくつかの実施の形態では、スイッチはまた、「通過」構成を支援する。このような実施の形態では、仮想ターゲットは物理的ターゲット自身であり、そして全ての命令は解釈無しに、例えば、仮想化又は翻訳無しに、スイッチを「通過」する。このような実施の形態では、全ての負荷平衡機能はサーバー自身により処理される。
さらに詳細には、負荷平衡について、上述したように収集された統計を使用して、本発明によるスイッチは、ミラーされた仮想ターゲットの各メンバーの応答時間を含む、各ターゲットの平均応答時間を追跡する。関連する統計は各VTDに記憶されて、CPUにより定期的に更新される。読取り操作の際、SPU(VTDを参照する)は最小の平均応答時間を持つ経路を選択してその経路上に要求を転送するか、又は、それは最小の平均応答時間を持つミラーされたメンバーを選択してそのメンバーへ要求を転送する。ミラーされたターゲットでは、書込みはミラーされた仮想ターゲットの全てのメンバーに対して行われるから、書込み操作に対してミラーされたメンバー間の選択は行われないことに注意する。1つの経路が他の経路に対して明確な利益がない時、又は、1つのミラーされたメンバーが他の経路に対して明確な利益がない時、命令は交互にさまざまな経路/メンバーへ送られる。
本発明の1つの実施の形態では、複数の同時的接続はiSCSI装置に対してのみ使用される。ファイバー・チャンネルは現在、このような複数の同時的接続を支援しない。しかし、他のプロトコルを使用する他の実施の形態もまた複数同時接続を支援する。
上述の特定の実施の形態は本発明の説明の目的ためのみであり、さまざまな修正が本発明の精神と範囲から逸脱することなく当業者にできる。従って、本発明の範囲は特許請求の範囲のみにより限定される。
従来技術システムによるSANの概略的な機能ブロック図。 本発明の1つの実施の形態による記憶スイッチを使用するSANシステムの概略的な機能ブロック図。 本発明の別の実施の形態による記憶スイッチを使用するシステムの概略的な機能ブロック図。 本発明のさらに別の実施の形態による記憶スイッチを使用するシステムの概略的な機能ブロック図。 本発明の実施の形態による記憶スイッチの概略的な機能ブロック図。 本発明の実施の形態による記憶スイッチに使用されるラインカードの概略的な機能ブロック図。 本発明の実施の形態による記憶スイッチに使用される仮想ターゲット記述子の概略的なブロック図。 本発明の実施の形態による記憶スイッチに使用される物理的ターゲット記述子の概略的なブロック図。 記憶プールを示す概略的なブロック図。 サーバーにより「見られる」仮想ターゲットを示す概略的な論理ブロック図。 物理的装置の例示的な記憶プールを示す概略的なブロック図。 さまざまな例示的仮想ターゲット記憶プールを示す概略的なブロック図。 さまざまな例示的仮想ターゲット記憶プールを示す概略的なブロック図。 さまざまな例示的仮想ターゲット記憶プールを示す概略的なブロック図。 第2スイッチに接続された記憶装置の第1スイッチからのアクセス可能性を示す概略的なブロック図。 本発明の実施の形態によるステップを示すフロー図。 負荷平衡を示す概略的なブロック図。 負荷平衡を示す概略的なブロック図。

Claims (34)

  1. 少なくとも1つのイニシエーターと少なくとも1つの記憶装置とを含む記憶ネットワークで使用される方法であって、
    記憶ネットワーク中の記憶装置にアクセスするためのサービスの品質をイニシエーターに提供することを含み、
    前記サービスの品質を提供するステップが、イニシエーターから記憶装置への要求数を制御する方法。
  2. 少なくとも1つのイニシエーターと少なくとも1つの記憶装置とを含む記憶ネットワークで使用される方法であって、
    記憶ネットワーク中の記憶装置にアクセスするためのサービスの品質をイニシエーターに提供することを含み、
    前記サービスの品質を提供するステップが、イニシエーターにより送信可能な同時的要求の数を調節する方法。
  3. 少なくとも1つのイニシエーターと少なくとも1つの記憶装置とを含む記憶ネットワークで使用される方法であって、
    記憶ネットワーク中の記憶装置にアクセスするためのサービスの品質をイニシエーターに提供することを含み、
    前記サービスの品質を提供するステップが、指定された範囲内にイニシエーターにより使用される帯域幅を維持するためにイニシエーターに可能な要求数を調節する方法。
  4. 前記記憶ネットワークが、さらにスイッチを含み、
    前記イニシエーターと前記記憶装置が共に前記スイッチと通信し、
    前記スイッチが前記記憶ネットワーク中のサービスの品質を提供するステップを実行することを含む請求項1〜3の何れか1項に記載の方法。
  5. 前記サービスの品質を提供するステップが、前記イニシエーターから前記記憶装置へのパケット数を制御することを含む請求項1〜3の何れか1項に記載の方法。
  6. 少なくとも1つのイニシエーターと少なくとも1つの記憶装置とを含む記憶ネットワークで使用される方法であって、
    (1) 記憶ネットワーク中の記憶装置にアクセスするためのサービスの品質をイニシエーターに提供するステップであって、
    イニシエーターが記憶装置へアクセスするための最小帯域幅を保証し、
    イニシエーターにより使用される実際の帯域幅を測定し、実際の帯域幅は秒当たりの要求数にイニシエーターからの要求の平均大きさを掛算することにより測定され、
    イニシエーターにより送信されることが可能な同時的要求の数を調節することを含む、当該ステップと、
    (2)記憶装置にアクセスするために最大帯域幅までイニシエーターに保証するステップとを含み、
    前記同時的要求の数を調節することが、実際の帯域幅が最大帯域幅を超過した時に、イニシエーターにより可能な同時的要求数を減少させる方法。
  7. 少なくとも1つのイニシエーターと、少なくとも1つの記憶装置と、少なくとも1つのスイッチとを含み、イニシエーターと記憶装置が共にスイッチと通信する記憶ネットワークで使用される方法であって、
    スイッチにより記憶ネットワーク内の記憶装置へアクセスするためにイニシエーターに最小帯域幅を保証し、
    スイッチにより、イニシエーターにより使用される実際の帯域幅を測定し、実際の帯域幅は秒当たりの要求数にイニシエーターからの要求の平均大きさを掛算することにより測定されることを含む方法。
  8. イニシエーターにより送信されることが可能な同時的要求の数を調節することをさらに含む請求項に記載の方法。
  9. 調節するステップが、
    イニシエーターにより送信することが可能な同時的要求の数を減少することを含む請求項に記載の方法。
  10. 調節するステップが、
    イニシエーターにより送信することが可能な同時的要求の数を増加することを含む請求項に記載の方法。
  11. スイッチにより、記憶装置にアクセスするためにイニシエーターに最大帯域幅まで保証することをさらに含む請求項に記載の方法。
  12. 実際の帯域幅が最大帯域幅を超過した時に、イニシエーターにより可能な同時的要求数を減少することをさらに含む請求項11に記載の方法。
  13. 実際の帯域幅を測定することが、バッフアが指定された閾値を超えたパケット数を含ん
    でいるかを決定することを含む請求項に記載の方法。
  14. 複数のイニシエーターと、複数のターゲットと、少なくとも1つのスイッチとを含む記憶ネットワークで使用される方法であって、
    スイッチにより、複数の接続の各々についてそれぞれ最小帯域幅を保証し、それぞれの接続の各々は記憶ネットワーク中でスイッチを経由してそれぞれのイニシエーターからそれぞれのターゲットへの接続であり、
    スイッチにより、各イニシエーターにより使用される実際の帯域幅を監視し、この実際の帯域幅はイニシエーターからの秒当たりの要求数にイニシエーターからの要求の平均大きさを掛算することにより測定され、
    1つのイニシエーターにより使用される実際の帯域幅が過剰かどうかを決定し、もし、過剰ならば、スイッチにより、少なくとも1つのイニシエーターに対する可能な同時的要求の数を調節することを含む方法。
  15. 実際の帯域幅を監視することが、バッフアが指定された閾値を超えたパケット数を含んでいるかどうかを決定することを含む請求項14に記載の方法。
  16. 可能な同時的要求の数を調節することが、過剰な帯域幅を使用している1つのイニシエーターへの可能な同時的要求の数を減少することを含む請求項14に記載の方法。
  17. 可能な同時的要求の数を調節することが、別のイニシエーターへの可能な同時的要求の数を増加することを含む請求項14に記載の方法。
  18. ターゲットが仮想ターゲットである請求項14に記載の方法。
  19. スイッチにより、複数の接続の各々に対してそれぞれ最大帯域幅まで保証することをさらに含み、1つのイニシエーターにより使用される実際の帯域幅が過剰かどうかを決定することが、1つのイニシエーターがその最大帯域幅を超えたかどうかを決定することを含む請求項14に記載の方法。
  20. 少なくとも1つのイニシエーターと、少なくとも1つの記憶装置と、少なくとも1つのスイッチとを含み、イニシエーターと記憶装置の両方がスイッチと通信する記憶システム内で使用される方法であって、
    記憶ネットワーク内でスイッチを経由してイニシエーターから記憶装置への接続を提供し、
    スイッチにより、イニシエーターにより使用される帯域幅を指定の範囲内に維持するためにイニシエーターに許容された要求数を調節することを含む方法。
  21. 帯域幅が、秒当たりのイニシエーターからの要求数とイニシエーターからの要求の平均の大きさとの掛算により定義される請求項20に記載の方法。
  22. イニシエーターに許容された要求数が、イニシエーターに許容された同時的要求数である請求項20記載の方法。
  23. 記憶ネットワーク内に使用されるスイッチであって、
    少なくとも1つのイニシエーター及び少なくとも1つの記憶装置を含む外部装置へ接続されるべきポートと、
    帯域幅コントローラと、
    を含み、
    前記帯域幅が、秒当たりの要求数と要求の平均大きさとの掛算により定義されるスイッチ。
  24. 要求コントローラを含む記憶プロセッサと、
    前記記憶プロセッサと通信するトラフイック・マネージャと、
    前記トラフイック・マネージャと通信するバッファとを含み、
    もし、前記バッファ内で指定された閾値に達した場合、前記トラフイック・マネージャが前記要求コントローラを活性化するように構成され、
    前記要求コントローラが、イニシエーターにより使用される帯域幅を指定された範囲内に維持するために、イニシエーターに許容される要求数を調節するように構成されているスイッチ。
  25. 要求コントローラを含む記憶プロセッサと、
    前記記憶プロセッサと通信するトラフイック・マネージャと、
    前記トラフイック・マネージャと通信するバッファとを含み、
    もし、前記バッファ内で指定された閾値に達した場合、前記トラフイック・マネージャが前記要求コントローラを活性化するように構成され、
    帯域幅が、秒当たりの要求数と要求の平均の大きさとの掛算により定義されるスイッチ。
  26. 記憶ネットワークに使用されるスイッチであって、
    少なくとも1つのイニシエーターと少なくとも1つの記憶装置とを含む外部装置に接続されるべきポートと、
    前記記憶ネットワーク内で、前記イニシエーターから前記記憶装置への接続についてサービスの品質を提供する手段と、を備え、
    前記サービスの品質を提供する手段が、
    イニシエーターに記憶装置へアクセスするための最小帯域幅を保証する手段と、
    イニシエーターにより使用される実際の帯域幅を監視する手段と、この実際の帯域幅は秒当たりの要求数に要求の平均大きさを掛算することにより測定され、
    イニシエーターにより使用される実際の帯域幅を、下側制限として最小帯域幅を持つ指定された範囲内に維持するため、イニシエーターにより送信されるべき可能な同時的要求の数を調節する手段と、
    を含むスイッチ。
  27. イニシエーターと、
    記憶装置と、
    イニシエーター及び記憶装置と通信するスイッチとを含み、
    スイッチはバッフアと通信するトラフイック・マネージャを含み、
    イニシエーターからのいくつかのパケットを含むバッフアが指定された閾値を超過した時、スイッチがイニシエーターに同時的要求の数を減少するために通知するように構成されている記憶ネットワーク。
  28. 記憶ネットワークのスイッチにより実行される時、スイッチに以下のステップを実行させる命令を記憶した機械的に読取り可能な媒体であって、
    スイッチにより、記憶ネットワーク内の記憶装置へアクセスするための最小帯域幅をイニシエーターに保証し、
    スイッチにより、イニシエーターにより使用される実際の帯域幅を測定し、この実際の帯域幅はイニシエーターからの秒当たりの要求数に要求の平均大きさを掛算することにより測定される、
    機械的に読取り可能な媒体。
  29. イニシエーターにより送信されるべき可能な同時的要求の数を調節するステップを実行するための命令をさらに含む、請求項28に記載の機械的に読取り可能な媒体。
  30. 調節するステップがさらに、
    イニシエーターにより送信することが可能な同時的要求の数を減少することを含む請求項29に記載の機械的に読取り可能な媒体。
  31. 調節するステップがさらに、
    イニシエーターにより送信することが可能な同時的要求の数を増加することを含む請求項29に記載の機械的に読取り可能な媒体。
  32. スイッチにより、記憶装置にアクセスするために最大帯域幅までイニシエーターに保証するステップを実行するための命令をさらに含む請求項28に記載の機械的に読取り可能な媒体。
  33. イニシエーターにより許容される同時的要求の数をその最大帯域幅を超過した時に減少するステップを実行するための命令をさらに含む請求項32に記載の機械的に読取り可能な媒体。
  34. 実際の帯域幅を測定することが、
    バッフアが指定された閾値を超えてパケット数を含むかどうかを決定することを含む請求項28に記載の機械的に読取り可能な媒体。
JP2003538922A 2001-09-28 2002-09-27 記憶ネットワーク中のサービスの品質の実行 Expired - Lifetime JP4264001B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US32570401P 2001-09-28 2001-09-28
US10/051,339 US7421509B2 (en) 2001-09-28 2002-01-18 Enforcing quality of service in a storage network
PCT/US2002/030889 WO2003036501A1 (en) 2001-09-28 2002-09-27 Enforcing quality of service in a storage network

Publications (2)

Publication Number Publication Date
JP2005507201A JP2005507201A (ja) 2005-03-10
JP4264001B2 true JP4264001B2 (ja) 2009-05-13

Family

ID=26729318

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003538922A Expired - Lifetime JP4264001B2 (ja) 2001-09-28 2002-09-27 記憶ネットワーク中のサービスの品質の実行

Country Status (4)

Country Link
US (1) US7421509B2 (ja)
EP (1) EP1438677A4 (ja)
JP (1) JP4264001B2 (ja)
WO (1) WO2003036501A1 (ja)

Families Citing this family (143)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW576061B (en) * 2001-08-13 2004-02-11 Via Tech Inc Device and method for load balancing of packet switching
US7864758B1 (en) * 2001-09-28 2011-01-04 Emc Corporation Virtualization in a storage system
US20030126280A1 (en) * 2001-12-31 2003-07-03 Maxxan Systems, Inc. XON/XOFF flow control for computer network
US7290277B1 (en) * 2002-01-24 2007-10-30 Avago Technologies General Ip Pte Ltd Control of authentication data residing in a network device
US20030145128A1 (en) * 2002-01-25 2003-07-31 Baird Roger T. Mapping managing devices to managed devices
US8260907B2 (en) * 2002-04-04 2012-09-04 Ca, Inc. Methods, systems and computer program products for triggered data collection and correlation of status and/or state in distributed data processing systems
JP4704659B2 (ja) * 2002-04-26 2011-06-15 株式会社日立製作所 記憶装置システムの制御方法および記憶制御装置
US20030208614A1 (en) * 2002-05-01 2003-11-06 John Wilkes System and method for enforcing system performance guarantees
JP3956786B2 (ja) * 2002-07-09 2007-08-08 株式会社日立製作所 記憶装置の帯域制御装置、方法及びプログラム
US7230929B2 (en) * 2002-07-22 2007-06-12 Qlogic, Corporation Method and system for dynamically assigning domain identification in a multi-module fibre channel switch
US7154886B2 (en) * 2002-07-22 2006-12-26 Qlogic Corporation Method and system for primary blade selection in a multi-module fiber channel switch
JP3869769B2 (ja) * 2002-07-24 2007-01-17 株式会社日立製作所 ストレージ・ネットワーク用のスイッチングノード装置および遠隔ストレージ装置のアクセス方法
US7474652B2 (en) * 2002-07-30 2009-01-06 Brocade Communications Systems, Inc. Caching remote switch information in a fibre channel switch
US8320241B2 (en) 2002-07-30 2012-11-27 Brocade Communications System, Inc. Fibre channel network employing registered state change notifications with enhanced payload
US20040054943A1 (en) * 2002-08-08 2004-03-18 International Business Machines Corporation Method and system for improving the availability of software processes utilizing configurable finite state tables
JP4206707B2 (ja) * 2002-08-27 2009-01-14 株式会社日立製作所 通信品質設定装置、方法及びプログラム
US6952757B2 (en) * 2002-08-29 2005-10-04 International Business Machines Corporation Method, system, and program for managing storage units in storage pools
US7397768B1 (en) 2002-09-11 2008-07-08 Qlogic, Corporation Zone management in a multi-module fibre channel switch
JP2004110367A (ja) * 2002-09-18 2004-04-08 Hitachi Ltd 記憶装置システムの制御方法、記憶制御装置、および記憶装置システム
US7640342B1 (en) * 2002-09-27 2009-12-29 Emc Corporation System and method for determining configuration of one or more data storage systems
US6886141B1 (en) * 2002-10-07 2005-04-26 Qlogic Corporation Method and system for reducing congestion in computer networks
US7263593B2 (en) 2002-11-25 2007-08-28 Hitachi, Ltd. Virtualization controller and data transfer control method
US7376082B2 (en) * 2002-12-31 2008-05-20 International Business Machines Corporation Quality of service for iSCSI
US20040199618A1 (en) * 2003-02-06 2004-10-07 Knight Gregory John Data replication solution
JP4651913B2 (ja) * 2003-02-17 2011-03-16 株式会社日立製作所 記憶装置システム
CA2463228C (en) 2003-04-04 2012-06-26 Evertz Microsystems Ltd. Apparatus, systems and methods for packet based transmission of multiple data signals
US7386616B1 (en) * 2003-05-09 2008-06-10 Google Inc. System and method for providing load balanced processing
US8560627B2 (en) * 2003-05-23 2013-10-15 Alcatel Lucent Virtual switch for use in fibre channel applications
JP4438457B2 (ja) * 2003-05-28 2010-03-24 株式会社日立製作所 記憶領域割当方法、システム及び仮想化装置
JP2005018193A (ja) * 2003-06-24 2005-01-20 Hitachi Ltd ディスク装置のインタフェースコマンド制御方法ならびに計算機システム
US7388843B2 (en) * 2003-07-16 2008-06-17 Qlogic, Corporation Method and apparatus for testing loop pathway integrity in a fibre channel arbitrated loop
US7453802B2 (en) * 2003-07-16 2008-11-18 Qlogic, Corporation Method and apparatus for detecting and removing orphaned primitives in a fibre channel network
US7525910B2 (en) * 2003-07-16 2009-04-28 Qlogic, Corporation Method and system for non-disruptive data capture in networks
US7471635B2 (en) * 2003-07-16 2008-12-30 Qlogic, Corporation Method and apparatus for test pattern generation
US7463646B2 (en) * 2003-07-16 2008-12-09 Qlogic Corporation Method and system for fibre channel arbitrated loop acceleration
US7355966B2 (en) * 2003-07-16 2008-04-08 Qlogic, Corporation Method and system for minimizing disruption in common-access networks
US7620059B2 (en) * 2003-07-16 2009-11-17 Qlogic, Corporation Method and apparatus for accelerating receive-modify-send frames in a fibre channel network
US7646767B2 (en) 2003-07-21 2010-01-12 Qlogic, Corporation Method and system for programmable data dependant network routing
US7525983B2 (en) * 2003-07-21 2009-04-28 Qlogic, Corporation Method and system for selecting virtual lanes in fibre channel switches
US7406092B2 (en) * 2003-07-21 2008-07-29 Qlogic, Corporation Programmable pseudo virtual lanes for fibre channel systems
US7583597B2 (en) * 2003-07-21 2009-09-01 Qlogic Corporation Method and system for improving bandwidth and reducing idles in fibre channel switches
US7477655B2 (en) * 2003-07-21 2009-01-13 Qlogic, Corporation Method and system for power control of fibre channel switches
US7447224B2 (en) * 2003-07-21 2008-11-04 Qlogic, Corporation Method and system for routing fibre channel frames
US7580354B2 (en) * 2003-07-21 2009-08-25 Qlogic, Corporation Multi-speed cut through operation in fibre channel switches
US7792115B2 (en) * 2003-07-21 2010-09-07 Qlogic, Corporation Method and system for routing and filtering network data packets in fibre channel systems
US7522529B2 (en) * 2003-07-21 2009-04-21 Qlogic, Corporation Method and system for detecting congestion and over subscription in a fibre channel network
US7630384B2 (en) * 2003-07-21 2009-12-08 Qlogic, Corporation Method and system for distributing credit in fibre channel systems
US7894348B2 (en) * 2003-07-21 2011-02-22 Qlogic, Corporation Method and system for congestion control in a fibre channel switch
US7512067B2 (en) * 2003-07-21 2009-03-31 Qlogic, Corporation Method and system for congestion control based on optimum bandwidth allocation in a fibre channel switch
US7684401B2 (en) 2003-07-21 2010-03-23 Qlogic, Corporation Method and system for using extended fabric features with fibre channel switch elements
US7522522B2 (en) * 2003-07-21 2009-04-21 Qlogic, Corporation Method and system for reducing latency and congestion in fibre channel switches
US7573909B2 (en) * 2003-07-21 2009-08-11 Qlogic, Corporation Method and system for programmable data dependant network routing
US7558281B2 (en) * 2003-07-21 2009-07-07 Qlogic, Corporation Method and system for configuring fibre channel ports
US7430175B2 (en) * 2003-07-21 2008-09-30 Qlogic, Corporation Method and system for managing traffic in fibre channel systems
US7466700B2 (en) * 2003-07-21 2008-12-16 Qlogic, Corporation LUN based hard zoning in fibre channel switches
US7688733B1 (en) * 2003-08-04 2010-03-30 Sprint Communications Company L.P. System and method for bandwidth selection in a communication network
JP4307202B2 (ja) * 2003-09-29 2009-08-05 株式会社日立製作所 記憶システム及び記憶制御装置
US9100120B1 (en) 2003-09-30 2015-08-04 Ciena Corporation Methods and apparatus for determining a path in a communications network
US7299378B2 (en) 2004-01-15 2007-11-20 Oracle International Corporation Geographically distributed clusters
US6859811B1 (en) * 2004-01-15 2005-02-22 Oracle International Corporation Cluster database with remote data mirroring
US7564789B2 (en) * 2004-02-05 2009-07-21 Qlogic, Corporation Method and system for reducing deadlock in fibre channel fabrics using virtual lanes
US7480293B2 (en) * 2004-02-05 2009-01-20 Qlogic, Corporation Method and system for preventing deadlock in fibre channel fabrics using frame priorities
JP4391265B2 (ja) 2004-02-26 2009-12-24 株式会社日立製作所 ストレージサブシステムおよび性能チューニング方法
US8046464B2 (en) * 2004-03-10 2011-10-25 The Boeing Company Quality of service resource management apparatus and method for middleware services
US7340167B2 (en) * 2004-04-23 2008-03-04 Qlogic, Corporation Fibre channel transparent switch for mixed switch fabrics
US7930377B2 (en) 2004-04-23 2011-04-19 Qlogic, Corporation Method and system for using boot servers in networks
US7529781B2 (en) * 2004-04-30 2009-05-05 Emc Corporation Online initial mirror synchronization and mirror synchronization verification in storage area networks
US7773521B2 (en) * 2004-04-30 2010-08-10 Emc Corporation Storage switch traffic bandwidth control
JP2005332236A (ja) * 2004-05-20 2005-12-02 Fujitsu Ltd I/oコマンド投入数の動的変換システム
US7733855B1 (en) 2004-06-08 2010-06-08 Oracle America, Inc. Community separation enforcement
US7602712B2 (en) * 2004-06-08 2009-10-13 Sun Microsystems, Inc. Switch method and apparatus with cut-through routing for use in a communications network
US7860096B2 (en) * 2004-06-08 2010-12-28 Oracle America, Inc. Switching method and apparatus for use in a communications network
US7639616B1 (en) * 2004-06-08 2009-12-29 Sun Microsystems, Inc. Adaptive cut-through algorithm
US8964547B1 (en) 2004-06-08 2015-02-24 Oracle America, Inc. Credit announcement
US7404020B2 (en) * 2004-07-20 2008-07-22 Qlogic, Corporation Integrated fibre channel fabric controller
JP4646574B2 (ja) 2004-08-30 2011-03-09 株式会社日立製作所 データ処理システム
JP4518887B2 (ja) * 2004-09-10 2010-08-04 株式会社日立製作所 ストレージエリアネットワーク管理システム及び管理装置とボリューム割当て方法並びにコンピュータ・ソフトウエア
US7593997B2 (en) * 2004-10-01 2009-09-22 Qlogic, Corporation Method and system for LUN remapping in fibre channel networks
US8295299B2 (en) * 2004-10-01 2012-10-23 Qlogic, Corporation High speed fibre channel switch element
US7411958B2 (en) * 2004-10-01 2008-08-12 Qlogic, Corporation Method and system for transferring data directly between storage devices in a storage area network
JP2006127028A (ja) * 2004-10-27 2006-05-18 Hitachi Ltd 記憶システム及び記憶制御装置
US7577805B2 (en) * 2004-11-01 2009-08-18 Hitachi, Ltd. Using bandwidth and capacity parameters to control remote copy operations in storage systems
EP2296085B1 (en) * 2004-11-30 2013-05-15 Fujitsu Limited Data storage system and capacity changing method
JP2006178811A (ja) * 2004-12-24 2006-07-06 Hitachi Ltd ストレージシステム及びストレージシステムのパス制御方法
US7844691B2 (en) * 2004-12-30 2010-11-30 Xstor Systems, Inc. Scalable distributed storage and delivery
US7653054B2 (en) * 2005-03-28 2010-01-26 Cisco Technology, Inc. Zone based quality of service in a fibre channel fabric
US20060230086A1 (en) * 2005-04-06 2006-10-12 International Business Machines Corporation QoS-enabled lifecycle management for file systems
JP5057656B2 (ja) * 2005-05-24 2012-10-24 株式会社日立製作所 ストレージシステム及びストレージシステムの運用方法
US8396981B1 (en) * 2005-06-07 2013-03-12 Oracle America, Inc. Gateway for connecting storage clients and storage servers
US7636801B1 (en) * 2005-06-20 2009-12-22 Symantec Operating Corporation Coordination of quality of service in a multi-layer virtualized storage environment
US7903557B1 (en) * 2005-09-21 2011-03-08 Qlogic, Corporation Multipathing using multiple endpoint addresses for load balancing in a network
US7738757B1 (en) * 2005-12-30 2010-06-15 Cisco Technology, Inc. Optical connection adaptors for a data communications device and methods of use
CN1859306A (zh) * 2006-02-21 2006-11-08 华为技术有限公司 一种提供QoS服务的方法和系统
FR2902594A1 (fr) * 2006-06-16 2007-12-21 France Telecom Unite et procede de definition d'une regle de session dans un reseau
JP5057366B2 (ja) 2006-10-30 2012-10-24 株式会社日立製作所 情報システム及び情報システムのデータ転送方法
US20080177881A1 (en) * 2007-01-19 2008-07-24 Dell Products, Lp System and Method for Applying Quality of Service (QoS) in iSCSI Through ISNS
US8203950B2 (en) * 2007-01-22 2012-06-19 Cisco Technology, Inc. Quality of service in a storage area network
JP2008204358A (ja) * 2007-02-22 2008-09-04 Hitachi Ltd 継続的データ保護方法および継続的データ保護システム
US8051419B2 (en) * 2007-02-26 2011-11-01 Inventec Corporation Method of dynamically adjusting number of task request
JP2009110218A (ja) 2007-10-30 2009-05-21 Fujitsu Ltd 仮想化スイッチおよびそれを用いたコンピュータシステム
JP5445138B2 (ja) * 2007-12-28 2014-03-19 日本電気株式会社 データ分散格納方法およびデータ分散格納システム
CN101222453B (zh) * 2008-01-22 2014-07-02 中兴通讯股份有限公司 一种家庭网关策略控制方法及系统
JP4674242B2 (ja) * 2008-02-05 2011-04-20 富士通株式会社 仮想化スイッチ、コンピュータシステムおよびデータコピー方法
JP4576449B2 (ja) * 2008-08-29 2010-11-10 富士通株式会社 スイッチ装置およびコピー制御方法
US20140372607A1 (en) * 2010-03-15 2014-12-18 Cleversafe, Inc. Adjusting allocation of dispersed storage network resources
US8848728B1 (en) * 2010-04-08 2014-09-30 Marvell Israel (M.I.S.L) Ltd. Dynamic load balancing switch architecture
US9495119B1 (en) 2010-07-08 2016-11-15 EMC IP Holding Company LLC Static load balancing for file systems in a multipath I/O environment
US8417867B2 (en) * 2010-11-17 2013-04-09 Xilinx, Inc. Multichip module for communications
US9032413B2 (en) 2011-09-01 2015-05-12 Microsoft Technology Licensing, Llc Decoupling background work and foreground work
US9063775B2 (en) 2011-09-01 2015-06-23 Microsoft Technology Licensing, Llc Event aggregation for background work execution
US8898271B2 (en) * 2011-09-29 2014-11-25 Oracle International Corporation System and method for supporting accurate load balancing in a transactional middleware machine environment
CA2890516C (en) 2011-11-07 2018-11-27 Nexgen Storage, Inc. Primary data storage system with quality of service
US9164803B2 (en) 2012-01-20 2015-10-20 Microsoft Technology Licensing, Llc Background task resource control
US9747293B2 (en) * 2012-02-28 2017-08-29 Deep Information Sciences, Inc. Method and system for storage and retrieval of information
US9760625B2 (en) 2012-03-21 2017-09-12 Deep Information Sciences, Inc. Method and system for indexing in datastores
JP2013196667A (ja) * 2012-03-23 2013-09-30 Ricoh Co Ltd 画像処理装置
US9712453B1 (en) * 2012-03-26 2017-07-18 Amazon Technologies, Inc. Adaptive throttling for shared resources
US20170017671A1 (en) * 2012-04-25 2017-01-19 International Business Machines Corporation Deleting data in a dispersed storage network
US9489236B2 (en) 2012-10-31 2016-11-08 Microsoft Technology Licensing, Llc Application prioritization
US20140173591A1 (en) * 2012-12-13 2014-06-19 Cisco Technology, Inc. Differentiated service levels in virtualized computing
US9582218B2 (en) * 2013-01-09 2017-02-28 Cisco Technology, Inc. Serial attached storage drive virtualization
US9654391B2 (en) 2013-10-02 2017-05-16 Evertz Microsystems Ltd. Video router
US9277002B2 (en) * 2014-01-09 2016-03-01 International Business Machines Corporation Physical resource management
US10116731B2 (en) * 2014-03-13 2018-10-30 Oncam Global, Inc. Method and systems for providing data to a remote site
US9537743B2 (en) * 2014-04-25 2017-01-03 International Business Machines Corporation Maximizing storage controller bandwidth utilization in heterogeneous storage area networks
US10001939B1 (en) * 2014-06-30 2018-06-19 EMC IP Holding Company LLC Method and apparatus for highly available storage management using storage providers
US9940073B1 (en) * 2014-06-30 2018-04-10 EMC IP Holding Company LLC Method and apparatus for automated selection of a storage group for storage tiering
US10241712B1 (en) * 2014-06-30 2019-03-26 EMC IP Holding Company LLC Method and apparatus for automated orchestration of long distance protection of virtualized storage
DE102015113603B4 (de) 2014-08-19 2024-04-04 Samsung Electronics Co., Ltd. Datenverwaltungsverfahren in virtualisierten Hyperscale-Umgebungen
US10437479B2 (en) * 2014-08-19 2019-10-08 Samsung Electronics Co., Ltd. Unified addressing and hierarchical heterogeneous storage and memory
US10282100B2 (en) * 2014-08-19 2019-05-07 Samsung Electronics Co., Ltd. Data management scheme in virtualized hyperscale environments
KR102395066B1 (ko) * 2014-08-19 2022-05-09 삼성전자주식회사 데이터 액세스를 위한 장치 및 그것의 동작 방법
US10594565B2 (en) * 2014-12-19 2020-03-17 Hewlett Packard Enterprise Development Lp Multicast advertisement message for a network switch in a storage area network
WO2016108718A1 (en) * 2014-12-30 2016-07-07 Emc Corporation Method and apparatus for it appliance control
US9917738B2 (en) * 2015-01-13 2018-03-13 Accenture Global Services Limited Intelligent device data router
US9733834B1 (en) * 2016-01-28 2017-08-15 Weka.IO Ltd. Congestion mitigation in a distributed storage system
CN107203328A (zh) * 2016-03-17 2017-09-26 伊姆西公司 存储管理方法和存储设备
US10432722B2 (en) * 2016-05-06 2019-10-01 Microsoft Technology Licensing, Llc Cloud storage platform providing performance-based service level agreements
US10432531B2 (en) * 2016-06-28 2019-10-01 Paypal, Inc. Tapping network data to perform load balancing
US10372347B2 (en) 2017-10-31 2019-08-06 EMC IP Holding Company LLC Selectively limiting throughput of test objects that share system resources with production objects
CN110294372B (zh) * 2018-03-23 2023-02-28 奥的斯电梯公司 一种无线信号装置、电梯服务请求系统和方法
CN111212141A (zh) * 2020-01-02 2020-05-29 中国科学院计算技术研究所 一种共享存储系统
CN114442910A (zh) 2020-11-06 2022-05-06 伊姆西Ip控股有限责任公司 管理存储系统的方法、电子设备和计算机程序产品

Family Cites Families (75)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5365526A (en) * 1992-12-18 1994-11-15 Amdahl Corporation Trace system for an I/O channel
EP0749663B1 (en) * 1994-03-08 1999-12-01 Excel Switching Corporation Telecommunications switch with improved redundancy
US5436886A (en) * 1994-07-14 1995-07-25 Northern Telecom Limited ATM switch in dual switch plane operation
CA2162200A1 (en) * 1994-11-23 1996-05-24 Gagan Lal Choudhury Efficiently providing multiple grades of service with protection against overloads in shared resources
US6097882A (en) * 1995-06-30 2000-08-01 Digital Equipment Corporation Method and apparatus of improving network performance and network availability in a client-server network by transparently replicating a network service
US6427185B1 (en) * 1995-09-29 2002-07-30 Nortel Networks Limited Method and apparatus for managing the flow of data within a switching device
GB9606834D0 (en) * 1996-03-30 1996-06-05 Int Computers Ltd Inter-processor communication
JP3419627B2 (ja) * 1996-06-11 2003-06-23 株式会社日立製作所 ルータ装置
US6185601B1 (en) * 1996-08-02 2001-02-06 Hewlett-Packard Company Dynamic load balancing of a network of client and server computers
JP2964957B2 (ja) * 1996-08-15 1999-10-18 日本電気株式会社 高速ルーティング制御方式
US5954799A (en) * 1996-11-07 1999-09-21 Northern Telecom Limited Access to telecommunications networks in a multi-service environment by mapping and exchanging control message between CPE adaptors and access server
US6052718A (en) * 1997-01-07 2000-04-18 Sightpath, Inc Replica routing
US6658526B2 (en) * 1997-03-12 2003-12-02 Storage Technology Corporation Network attached virtual data storage subsystem
US7389312B2 (en) * 1997-04-28 2008-06-17 Emc Corporation Mirroring network data to establish virtual storage area network
US6067545A (en) * 1997-08-01 2000-05-23 Hewlett-Packard Company Resource rebalancing in networked computer systems
US6101508A (en) * 1997-08-01 2000-08-08 Hewlett-Packard Company Clustered file management for network resources
US6023733A (en) * 1997-10-30 2000-02-08 Cisco Technology, Inc. Efficient path determination in a routed network
US6057863A (en) * 1997-10-31 2000-05-02 Compaq Computer Corporation Dual purpose apparatus, method and system for accelerated graphics port and fibre channel arbitrated loop interfaces
US6266335B1 (en) * 1997-12-19 2001-07-24 Cyberiq Systems Cross-platform server clustering using a network flow switch
US5941972A (en) * 1997-12-31 1999-08-24 Crossroads Systems, Inc. Storage router and method for providing virtual local storage
US6154787A (en) * 1998-01-21 2000-11-28 Unisys Corporation Grouping shared resources into one or more pools and automatically re-assigning shared resources from where they are not currently needed to where they are needed
US6272534B1 (en) * 1998-03-04 2001-08-07 Storage Technology Corporation Method and system for efficiently storing web pages for quick downloading at a remote device
US6199146B1 (en) * 1998-03-12 2001-03-06 International Business Machines Corporation Storage management system and method for increasing capacity utilization of nonvolatile storage devices using partially filled substitute storage devices for continuing write operations
US6157963A (en) * 1998-03-24 2000-12-05 Lsi Logic Corp. System controller with plurality of memory queues for prioritized scheduling of I/O requests from priority assigned clients
US6459682B1 (en) * 1998-04-07 2002-10-01 International Business Machines Corporation Architecture for supporting service level agreements in an IP network
US6209023B1 (en) * 1998-04-24 2001-03-27 Compaq Computer Corporation Supporting a SCSI device on a non-SCSI transport medium of a network
CA2295065A1 (en) 1998-04-29 1999-11-04 Shang-Tse Chuang Packet-switch system
US6304578B1 (en) * 1998-05-01 2001-10-16 Lucent Technologies Inc. Packet routing and queuing at the headend of shared data channel
US6434656B1 (en) * 1998-05-08 2002-08-13 International Business Machines Corporation Method for routing I/O data in a multiprocessor system having a non-uniform memory access architecture
US6115752A (en) * 1998-05-21 2000-09-05 Sun Microsystems, Inc. System and method for server selection for mirrored sites
US6195703B1 (en) * 1998-06-24 2001-02-27 Emc Corporation Dynamic routing for performance partitioning in a data processing network
US6438595B1 (en) * 1998-06-24 2002-08-20 Emc Corporation Load balancing using directory services in a data processing system
US6260120B1 (en) * 1998-06-29 2001-07-10 Emc Corporation Storage mapping and partitioning among multiple host processors in the presence of login state changes and host controller replacement
US7165152B2 (en) * 1998-06-30 2007-01-16 Emc Corporation Method and apparatus for managing access to storage devices in a storage system with access control
US6092178A (en) * 1998-09-03 2000-07-18 Sun Microsystems, Inc. System for responding to a resource request
US6324580B1 (en) * 1998-09-03 2001-11-27 Sun Microsystems, Inc. Load balancing for replicated services
US6199112B1 (en) * 1998-09-23 2001-03-06 Crossroads Systems, Inc. System and method for resolving fibre channel device addresses on a network using the device's fully qualified domain name
US6148414A (en) * 1998-09-24 2000-11-14 Seek Systems, Inc. Methods and systems for implementing shared disk array management functions
US6470013B1 (en) * 1998-10-13 2002-10-22 Cisco Technology, Inc. Use of enhanced ethernet link—loop packets to automate configuration of intelligent linecards attached to a router
US6212606B1 (en) * 1998-10-13 2001-04-03 Compaq Computer Corporation Computer system and method for establishing a standardized shared level for each storage unit
US6621818B1 (en) * 1998-10-19 2003-09-16 Texas Instruments Incorporated Ring configuration for network switches
US6493750B1 (en) * 1998-10-30 2002-12-10 Agilent Technologies, Inc. Command forwarding: a method for optimizing I/O latency and throughput in fibre channel client/server/target mass storage architectures
US6400730B1 (en) * 1999-03-10 2002-06-04 Nishan Systems, Inc. Method and apparatus for transferring data between IP network devices and SCSI and fibre channel devices over an IP network
US6952401B1 (en) * 1999-03-17 2005-10-04 Broadcom Corporation Method for load balancing in a network switch
IE20000203A1 (en) 1999-03-25 2001-02-21 Converge Net Technologies Inc Storage domain management system
US6389432B1 (en) * 1999-04-05 2002-05-14 Auspex Systems, Inc. Intelligent virtual volume access
US6247099B1 (en) * 1999-06-03 2001-06-12 International Business Machines Corporation System and method for maintaining cache coherency and data synchronization in a computer system having multiple active controllers
US6421723B1 (en) * 1999-06-11 2002-07-16 Dell Products L.P. Method and system for establishing a storage area network configuration
US6463454B1 (en) * 1999-06-17 2002-10-08 International Business Machines Corporation System and method for integrated load distribution and resource management on internet environment
US6466980B1 (en) * 1999-06-17 2002-10-15 International Business Machines Corporation System and method for capacity shaping in an internet environment
JP2001014147A (ja) 1999-06-28 2001-01-19 Hitachi Ltd セットアップ代行システム
WO2001006385A1 (en) 1999-07-16 2001-01-25 Netconvergence, Inc. A communication system for general connection interface machines
JP2001127766A (ja) * 1999-10-25 2001-05-11 Toshiba Corp ラインインターフェース装置、及び、パケット交換機
US6687247B1 (en) * 1999-10-27 2004-02-03 Cisco Technology, Inc. Architecture for high speed class of service enabled linecard
US6542972B2 (en) * 2000-01-31 2003-04-01 Commvault Systems, Inc. Logical view and access to physical storage in modular data and storage management system
US20020103889A1 (en) * 2000-02-11 2002-08-01 Thomas Markson Virtual storage layer approach for dynamically associating computer storage with processing hosts
EP1282861A4 (en) * 2000-04-18 2008-03-05 Storeage Networking Technologi VIRTUALIZATION OF STORAGE IN A STORAGE AREA NETWORK
US6574195B2 (en) * 2000-04-19 2003-06-03 Caspian Networks, Inc. Micro-flow management
US6745207B2 (en) * 2000-06-02 2004-06-01 Hewlett-Packard Development Company, L.P. System and method for managing virtual storage
USD442585S1 (en) * 2000-06-15 2001-05-22 Micro Net Technology, Inc. Disk subsystem for a storage area network
US6693906B1 (en) * 2000-07-17 2004-02-17 Advanced Micro Devices, Inc. Apparatus and method for buffer-free evaluation of packet data bytes with multiple min terms
US6831916B1 (en) * 2000-09-28 2004-12-14 Balaji Parthasarathy Host-fabric adapter and method of connecting a host system to a channel-based switched fabric in a data network
US7089293B2 (en) * 2000-11-02 2006-08-08 Sun Microsystems, Inc. Switching system method for discovering and accessing SCSI devices in response to query
US6725393B1 (en) * 2000-11-06 2004-04-20 Hewlett-Packard Development Company, L.P. System, machine, and method for maintenance of mirrored datasets through surrogate writes during storage-area network transients
US7027412B2 (en) * 2000-11-10 2006-04-11 Veritas Operating Corporation System for dynamic provisioning of secure, scalable, and extensible networked computer environments
US6880070B2 (en) * 2000-12-08 2005-04-12 Finisar Corporation Synchronous network traffic processor
US6795864B2 (en) * 2000-12-28 2004-09-21 Sun Microsystems, Inc. System using lookup service proxy object having code and request rate for managing rate at which client can request for services from server are transmitted
US6907457B2 (en) * 2001-01-25 2005-06-14 Dell Inc. Architecture for access to embedded files using a SAN intermediate device
JP2002222061A (ja) * 2001-01-25 2002-08-09 Hitachi Ltd 記憶領域を設定する方法、記憶装置およびプログラム記憶媒体
AU2002306495A1 (en) * 2001-02-13 2002-08-28 Candera, Inc. Storage virtualization and storage management to provide higher level storage services
US20020133539A1 (en) * 2001-03-14 2002-09-19 Imation Corp. Dynamic logical storage volumes
US20020194324A1 (en) * 2001-04-26 2002-12-19 Aloke Guha System for global and local data resource management for service guarantees
US7110394B1 (en) * 2001-06-25 2006-09-19 Sanera Systems, Inc. Packet switching apparatus including cascade ports and method for switching packets
US20030048792A1 (en) * 2001-09-04 2003-03-13 Qq Technology, Inc. Forwarding device for communication networks
US20030074473A1 (en) * 2001-10-12 2003-04-17 Duc Pham Scalable network gateway processor architecture

Also Published As

Publication number Publication date
JP2005507201A (ja) 2005-03-10
EP1438677A4 (en) 2007-05-23
US7421509B2 (en) 2008-09-02
EP1438677A1 (en) 2004-07-21
US20030079019A1 (en) 2003-04-24
WO2003036501A1 (en) 2003-05-01

Similar Documents

Publication Publication Date Title
JP4264001B2 (ja) 記憶ネットワーク中のサービスの品質の実行
US7539824B2 (en) Pooling and provisioning storage resources in a storage network
JP2005505814A (ja) 記憶ネットワーク中の負荷平衡
US7773521B2 (en) Storage switch traffic bandwidth control
US7529781B2 (en) Online initial mirror synchronization and mirror synchronization verification in storage area networks
US7617365B2 (en) Systems and methods to avoid deadlock and guarantee mirror consistency during online mirror synchronization and verification
US7185062B2 (en) Switch-based storage services
US7558264B1 (en) Packet classification in a storage system
US20030093541A1 (en) Protocol translation in a storage system
US20050246504A1 (en) Reactive deadlock management in storage area networks
WO2006026708A2 (en) Multi-chassis, multi-path storage solutions in storage area networks
US20060047928A1 (en) Storage switch asynchronous replication
US7792917B2 (en) Multiple network shared disk servers
US20050262309A1 (en) Proactive transfer ready resource management in storage area networks
Simitci et al. Evaluation of SCSI over TCP/IP and SCSI over fibre channel connections
WO2006026577A2 (en) Systems and methods for assigning tasks to derived timers of various resolutions in real-time systems to maximize timer usage
US20080101236A1 (en) Storage system and communication bandwidth control method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050927

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20051202

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20070731

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080218

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080519

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: 20090126

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090213

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120220

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4264001

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130220

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130220

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140220

Year of fee payment: 5

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term