JP2004523831A - シリコンベースのストレージ仮想化サーバ - Google Patents
シリコンベースのストレージ仮想化サーバ Download PDFInfo
- Publication number
- JP2004523831A JP2004523831A JP2002564745A JP2002564745A JP2004523831A JP 2004523831 A JP2004523831 A JP 2004523831A JP 2002564745 A JP2002564745 A JP 2002564745A JP 2002564745 A JP2002564745 A JP 2002564745A JP 2004523831 A JP2004523831 A JP 2004523831A
- Authority
- JP
- Japan
- Prior art keywords
- storage
- command
- frame
- data
- iocb
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
- G06F3/0605—Improving or facilitating administration, e.g. storage management by facilitating the interaction with a user or administrator
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/14—Protection against unauthorised use of memory or access to memory
- G06F12/1458—Protection against unauthorised use of memory or access to memory by checking the subject access rights
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error 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/0706—Error 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/0721—Error 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 within a central processing unit [CPU]
- G06F11/0724—Error 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 within a central processing unit [CPU] in a multiprocessor or a multi-core unit
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error 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/0706—Error 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/0727—Error 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error 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/0766—Error or fault reporting or storing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error 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/0793—Remedial or corrective actions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/202—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
- G06F11/2023—Failover techniques
- G06F11/2025—Failover techniques using centralised failover control functionality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2053—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
- G06F11/2089—Redundant storage control functionality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2053—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
- G06F11/2089—Redundant storage control functionality
- G06F11/2092—Techniques of failing over between control units
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2053—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
- G06F11/2094—Redundant storage or storage space
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
- G06F3/0607—Improving or facilitating administration, e.g. storage management by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0632—Configuration or reconfiguration of storage systems by initialisation or re-initialisation of storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0635—Configuration or reconfiguration of storage systems by changing the path, e.g. traffic rerouting, path reconfiguration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0662—Virtualisation aspects
- G06F3/0665—Virtualisation aspects at area level, e.g. provisioning of virtual or logical volumes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/35—Switches specially adapted for specific applications
- H04L49/356—Switches specially adapted for specific applications for storage area networks
- H04L49/357—Fibre channel switches
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols 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]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1479—Generic software techniques for error detection or fault masking
- G06F11/1482—Generic software techniques for error detection or fault masking by means of middleware or OS functionality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2002—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant
- G06F11/2007—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant using redundant communication media
- G06F11/201—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant using redundant communication media between storage system components
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2097—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements maintaining the standby controller/processing unit updated
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/815—Virtual
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Human Computer Interaction (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Hardware Redundancy (AREA)
- Storage Device Security (AREA)
- Exchange Systems With Centralized Control (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
【選択図】図1
Description
【0001】
(関連出願の相互参照)
本出願は、「Virtual Storage Systems」と題された、2001年2月13日に出願された米国仮出願第60/268,694号に対する優先権を主張し、この出願を本明細書中で参考として援用する。
【0002】
(連邦政府によって支援された研究または開発下でなされた発明に関する権利についての記載)
該当なし
(「シーケンスリスト」、テーブル、またはコンパクトディスクで提出されたコンピュータプログラムリスト添付物への参照)
該当なし
(発明の背景)
本発明は、ストレージエリアネットワーク(SAN)システムに関する。
【背景技術】
【0003】
ストレージエリアネットワークすなわちSANは、サーバに接続されたストレージサブシステムのネットワークである。SANの目的は、異なるオペレーティングシステム(Unix(R)、NT)の複数のサーバが1つの大きいデータレポジトリをそれぞれ「見る」ことを可能にすることである。SANは、直接取り付けられたストレージによって4つの重要な利点を提供する。その利点は、ローカルエリアネットワークの利用の減少(帯域幅の増加)、信頼性の増加、管理可能性、および拡張性である。
【0004】
SANの現在のトレンドは、ストレージ仮想化である。ストレージ仮想化は、単一のセットの特性を有する単一のストレージプールとして複数の別個の物理ストレージデバイスをユーザに提示するプロセスを説明する。例えば、ホストコンピュータをストレージデバイスに接続するストレージエリアネットワークにおいて、ユーザは、規定された信頼性を有するディスク空間(例えば、RAID1において100GB)の単一のブロックを認識するが、データが単一のRAID1ディスクアレイに格納されるか、または複数の別個のディスクを介して分割されるかどうかにかかわらず、RAID1において100GBが提供されるように、ユーザのホストコンピュータがストレージデバイスにアクセスするように構成される。
【発明の開示】
【発明が解決しようとする課題】
【0005】
SANを仮想化するために今日市場において利用可能なほとんどのソリューションは、ソフトウエアベースである。ホストベース、ストレージベース、およびSANベースのソリューションが存在する。ホストベースのソリューションに対して、各ホストコンピュータは、ストレージエリアネットワークに接続されたストレージデバイスに気付かなければならない。なぜなら、各ホストコンピュータは、そのユーザに提示されるストレージ仮想化を管理するためである。ストレージエリアネットワークに接続されたストレージデバイスが改変される場合(新しいデバイスが追加されるか、または既存のデバイスが除去される等)、各ホストコンピュータは、この改変に適応するように再構成されなければならない。このような再構成は、ネットワークアドミニストレータによる作業を含み、エラーの傾向がある。このストレージベースのソリューションは、同様の問題を有する。このSANベースのソリューションは、ホストおよびストレージベースのソリューションより良好であるが、拡張性および性能が欠如している。
【0006】
本発明は、この領域および他の領域における改良に関する。
【課題を解決するための手段】
【0007】
(発明の簡単な要旨)
本発明の一実施形態によると、ストレージエリアネットワークにおけるストレージサーバは、ホストコンピュータおよびストレージデバイスを接続する。このストレージサーバは、スイッチング回路によって相互接続されるストレージプロセッサを含む。ストレージサーバはまた、コマンドパケットに基づく2つのストレージプロセッサ間のパスを構成するプロセッサを含む。次いで、データは、多くの既存のシステムにおいてより迅速にパス上にルーティングされる。一実施形態では、ルーティングタグは、データパケットに関連付けられ、ストレージプロセッサは、全体のデータパケットが受信されるまで待つことなくルーティングタグを調査し、1つのストレージプロセッサは、全体のデータパケットを調査または受け取らせることなく、ルーティングタグに従って、データパケットを別のストレージプロセッサにルーティングする。
【0008】
本発明のより十分な理解は、以下の図面およびそれに関連して詳説された図面を参照することによって得られ得る。
【発明を実施するための最良の形態】
【0009】
(発明の詳細な説明)
詳細な説明は以下のように体系化される。第1に、概観が本発明をインプリメントする全体のシステムに与えられる。第2に、本発明の特徴の高レベルな説明が提供される。最後に、本発明の特徴をさらに詳説する低レベルな詳細の支援が提供される。
【0010】
(概観)
図1は、本発明の実施形態によるストレージサーバ100を示す。この図はまた、ストレージエリアネットワーク(SAN)102、複数の物理ストレージデバイス104、および複数のホストコンピュータ106を示す。
【0011】
ストレージサーバ100はまた、Virtual Storage Exchange(VSX)またはConfluence Virtual Storage Server(CVSS)と呼ばれ、図2Aにおいてさらに詳説される。このストレージサーバ100は、同種のおよび異種の環境においてサーバにストレージ仮想化を提供し、ネットワークストレージの領域における大規模データセンター(ISP、SSP、およびASP)にソリューションを提供する。
【0012】
SAN102は、コンピュータネットワークの任意のタイプであり得る。本出願では、SAN102は、ストレージエリアネットワークと呼ばれる。なぜなら、本発明の実施形態に関する関連機能であるためである。本発明の実施形態では、SAN102は、ファイバチャンネルネットワークであり、ホストコンピュータ106およびストレージデバイス102は、ファイバチャンネルネットワークと通信するように構成され、そしてストレージサーバ100はまた、ファイバチャンネルネットワークと通信するように構成される。従って、ストレージサーバ100は、既存のSANに容易に追加され得る。
【0013】
物理ストレージデバイス104は、テープドライブ、ディスクアレイ、JBOD(「just a bunch of disks」)、またはデータストレージデバイスの他のタイプを含む。物理ストレージデバイス104は、SAN102を介してホストコンピュータ106に直接的に接続されてもよいし、SAN102およびストレージサーバ100を介してホストコンピュータ106に間接的に接続されてもよい。発明の背景で上述したように、ストレージ仮想化の管理は、ストレージデバイス104がSAN102を介してホストコンピュータ106に直接的に接続される場合には、面倒になる。本発明は、ストレージサーバ100を用いて、ストレージデバイス104をホストコンピュータ106に間接的に接続することによってストレージ仮想化の管理を改善する。
【0014】
ホストコンピュータ106は、サーバであってもよいし、スタンドアロン型コンピュータであってもよい。このホストコンピュータ106は、SAN102に直接接続されてもよいし、スイッチ、ルータ、または他の通信リンクを介して間接的に接続されてもよい。
【0015】
図2Aは、本発明の実施形態に関連するハードウエアコンポーネントを示すストレージサーバ100のブロック図であり、このストレージサーバは、ストレージプロセッサ110、ラインカード112、仮想サーバカード114、およびスイッチファブリック116を含む。
【0016】
ストレージサーバ100は、1つ以上のストレージプロセッサ110を含み得る。このストレージプロセッサ110は、情報がホストコンピュータ106とストレージデバイス104との間を流れる場合、格納されるストレージデータコマンドおよびデータを処理する。1つ以上のストレージプロセッサ110は、各ラインカード112に含まれ得る。このストレージサーバ100は、多数のラインカード112のためのスペースを含むことにより、ストレージサーバ100の能力は、より多くのラインカード112またはより多くのプロセッサ110を追加することによってモジュラー式に増加され得る。各ストレージプロセッサ110は、ストレージサーバ100の1つ以上のポートに関連付けられる。
【0017】
ストレージサーバ100は、1つ以上の仮想サーバカード114を含み得る。仮想サーバカードは、ストレージサーバ100の動作を制御し、ラインカード112を制御し、ラインカード112は、コマンドおよびデータの転送の実際の作業を実行する。
【0018】
スイッチファブリック116は、ストレージプロセッサ110を接続する。このスイッチファブリックは、1つのポートにおいて受信された情報をストレージサーバ100の別のポートに切り替える。例えば、ホストコンピュータ106がストレージエリアネットワーク102上に格納されたデータを読み出すことを望む場合、そのリクエストは、ホストコンピュータ106に関連付けられたポートに関連付けられたストレージプロセッサ110によって処理される。このストレージプロセッサ110は、上流ストレージプロセッサ110と呼ばれる。この上流ストレージプロセッサ110は、ストレージデバイス104に関連付けられたポートに関連付けられた下流ストレージプロセッサ110と通信して、スイッチファブリック116を介して読み出されるべきデータを格納する。次いで、スイッチファブリック116は、下流および上流ストレージプロセッサ110を介して、ストレージデバイスから読み出されたデータをホストコンピュータ106に転送する。
【0019】
図2Bは、本発明の実施形態に関する機能性を示すストレージサーバ100のブロック図である。ストレージサーバ100の機能は、1つ以上のコンピュータプログラム、マイクロコードセグメント、ハードウエア構造、またはこれらの組み合わせに従って処理を実行する1つ以上のプロセッサによってインプリメントされ得る。本発明に関する機能は、メディアユニット(MU)マネージャ120、仮想論理ユニット数(仮想LUNまたはVLUN)マネージャ122、物理論理ユニット数(物理LUNまたはPLUN)マネージャ124である。ストレージサーバ100のさらなる詳細は、本発明の譲受人に譲受され、2002年2月13日に出願された、上記仮出願第60/268,694号からの利益を主張する他の出願において提供され、本明細書中で参考として援用する。この他の出願は、「Storage Virtualization and Storage Management to Provide Higher Level Storage Service」と題された代理人事件番号第20949P−000300US、「Method and Apparatus for Identifing Storage Device」と題された代理人事件番号第20949P−000500US、「System and Method for Policy Based Storage Provisioning and Management」と題された代理人事件番号第20949P−000600US、「Virtual Data Center」と題された代理人事件番号第20949P−000700US、「Failover Processing in a Storage System」と題された代理人事件番号第20949P−000800US、「RAID at Wire Speed」と題された代理人事件番号第20949P−000900US、および「Method for Device Security in a Heterogeneous Storage Network Environment」と題された代理人事件番号第20949P−001000USである。
【0020】
PLUNマネージャ124は、ストレージデバイス104におよびストレージデバイス104からデータおよびコマンド転送を管理する。各ストレージデバイス104は、各特定のストレージデバイス104を識別するために使用されるPLUNをそのデバイスに関連付け得る。
【0021】
VLUNマネージャ122は、ホストコンピュータ106におよびホストコンピュータ106からデータおよびコマンド転送を管理する。各ホストコンピュータ106は、1つ以上のVLUNに関連付けられ得る。各VLUNは、仮想アドレス空間(例えば、ストレージのギガバイト)を定義された属性(例えば、性能パラメータ、信頼性レベル等)を用いて表す。このように、各ホストコンピュータ106は、特定のVLUNを参照して、データおよびコマンドをストレージサーバ100と交換する。
【0022】
MUマネージャ120は、基本的にVLUNとPLUNとの間で移動する。MUマネージャ120は、ストレージサーバ100に接続されたストレージデバイス104(物理LUN)の全てのアドレス空間を管理することに責任がある。MUマネージャ120はまた、ストレージサーバ100内部で構築されたストレージ構成のアドレス空間を管理し、MUマネージャは、スライス、連結、RAID0(ストライプ)、およびRAID1(ミラー)を含む。
【0023】
MUマネージャ120は、下にあるストレージ構成または物理LUNにもかかわらず、アドレス空間が論理的な態様で処理されることを可能にする抽出ブロックストレージアドレシング技術を使用する。これらの論理アドレス空間は、より複雑かつ特徴的なストレージ構成と共に結合され得る。これらの論理アドレス空間はまた、抽出ブロックストレージアドレス空間として簡単に処理される。
【0024】
仮想LUNと共に使用されることによって、これらの論理アドレス空間は、マルチポートストレージデバイス上にLUNとして現れるように構成され得る。仮想デバイス上の論理アドレス空間として物理LUNを提示させるこのプロセスは、ストレージ仮想化と呼ばれる。
【0025】
抽出ブロックストレージアドレシングは、メディアユニット(MU)として公知のデータ構造を介して達成される。
【0026】
図3は、物理メディアユニットと他のサービスとの間の関係を示す。PLUNマネージャ124はPLUNを管理し、MUマネージャ120は、メディアユニットを管理し、そしてVLUNマネージャ122は、VLUNを管理する。
【0027】
さらに、図3は、PLUN、メディアユニット、およびVLUNとの間の関係を示す。一般的に、PLUNは、ストレージデバイス(ディスクまたはディスクアレイ等)に直接対応する。このような直接的一対一は、概して以下の図に示された関係である。しかし、PLUNはまた、ストレージデバイスの一部に関連付けられ得る。多重PLUNは、単一のストレージデバイスの異なる部分に関連付けられ得る。
【0028】
各物理メディアユニット(第1レベルのメディアユニット)は、概して単一の各PLUNに直接的に対応する。
【0029】
各VLUNは、概して単一の各メディアユニットに関連付けられる。
【0030】
以下のセクションは、本発明のいくつかの局面をさらに説明する。
【0031】
(高レベルな説明)
一実施形態によると、ストレージエリアネットワークは、ファイバチャンネルネットワークであり、ストレージサーバ100は、ストレージサーバ100による内部処理のための第2のフォーマットにファイバチャンネルフレームを変換する複数のファイバチャンネルASICを含む。これらのファイバチャンネルASICは、仮出願第60/317,817においてさらに説明される。
【0032】
図4は、上流および下流ストレージプロセッサ110およびファイバチャンネルASIC140を示すブロック図である。用語、「上流」は、ホストコンピュータ106に最も近いコンポーネントを指すために使用され、用語「下流」は、ストレージデバイス104に最も近いコンポーネントを指すために使用される。一実施形態によると、各ストレージプロセッサ110は、4つの1GB/sファイバチャンネルポートを接続するためにファイバチャンネルASICを使用する。
【0033】
図5は、本発明の実施形態による読み出しプロセス200のフローチャートである。概して、読み出しおよび書き込みトラフィックは、ストレージプロセッサ110によって処理される。ストレージプロセッサにおける専用ハードウエア(マイクロエンジンと呼ばれる)は、これらの処理ステップをインプリメントするために使用され得る。これらのストレージプロセッサは、一般的に仮想化エンジンと呼ばれる。読み出し/書き込みでないコマンドは、埋め込まれたCPUによって処理され得る。
【0034】
ステップ202では、ホストコンピュータ106は、ストレージエリアネットワーク102を介してストレージサーバ100に読み出しコマンドを送信する。この読み出しコマンドは、コマンドパケットの形態であり得る(コマンドフレームとも呼ばれる)。この読み出しコマンドは、ストレージサーバ100に到達し、上流ファイバチャンネルASICによって処理される。
【0035】
ステップ204では、コマンドは上流ストレージプロセッサに到達する。このコマンドは、コマンド処理として参照されるものを含む。この上流ストレージプロセッサは、ツリー検索エンジンを用いてコマンド処理からホストLUを検索する。ホストLUから、上流ストレージプロセッサは、仮想ユニットを見出し、このリクエストを物理ユニットに分解することを開始する。
【0036】
ツリー検索エンジンは、ルックアップテーブルにおけるホストLUを参照する。このルックアップテーブルは、仮想情報を含む。すなわちこの情報は、仮想ストレージ空間(ホストコンピュータが参照する)を物理ストレージ空間(複数の物理ディスクによって提供され得る)に関連付ける情報である。このルックアップテーブルは、構成コマンドを用いてVSC114(図2A参照)によってプログラムされる。
【0037】
ステップ206では、上流ストレージプロセッサは、話す(talk)ためのデバイスを識別するために、スイッチング回路を介してハンドルを下流ストレージプロセッサに送る。
【0038】
ステップ208では、ハンドルは下流ストレージプロセッサに到達する。
【0039】
ステップ210では、下流ストレージプロセッサは、送られたハンドルからコマンドを正しい物理ディスクに送信する。下流ストレージプロセッサは、ルーティングタグおよびストレージプロセッサコマンドハンドルと共にコマンドを送信する。このルーティングタグおよびSPコマンドハンドルは、データフレーム(またはデータパケット)が戻る場合に使用される。上記ステップ206〜210は、結局上流ストレージプロセッサと下流ストレージプロセッサとの間のパスを構成する。
【0040】
ステップ212では、物理ディスクは、ストレージエリアネットワークを介してデータフレーム(データパケット)をストレージサーバ100に戻すように送信する。
【0041】
ステップ214では、下流ファイバチャンネルASICは、データフレームを受信する。下流ファイバチャンルASICは、交換管理を実行し、コマンドコンテクストを参照する。
【0042】
ステップ216では、下流ファイバチャンネルASICは、ルーティングタグおよびSPコマンドハンドルと共にデータフレームを送信する。
【0043】
ステップ218では、下流ストレージプロセッサは、データフレームを受信する。このルーティングタグは、全パケットが到着する前であっても、下流ストレージプロセッサが
フレームを上流ストレージプロセッサに(スイッチング回路を介して)ルーティングすることを可能にする。一実施形態によると、最初の64バイトのデータフレームは、全体のペイロードが到着する前に検査される。
【0044】
ステップ220では、データパケットは、上流ストレージプロセッサに到着する(スイッチング回路を介して)。上流ストレージプロセッサは、データコンテクストを参照し、データフレームがコマンドコンテクストを獲得することを可能にするように、対応するファイバチャンネルASICコマンドハンドルと共にデータフレームを外部に送信する。
【0045】
ステップ222では、上流ファイバチャンネルASICは、交換管理(コマンドハンドルを用いて)を実行し、ストレージエリアネットワーク102を介してデータフレームをホストコンピュータ106に送信する。
【0046】
特に図4は、読み出しプロセスに関するが、書き込みプロセスは同様のステップを含む。
【0047】
別の実施形態によると、ストレージサーバ100は、コマンドを内部に生成し得る。データが1つのストレージデバイスから別のデバイスに転送される場合、またはデータが第2のストレージデバイス上で複製または再構成される場合、コマンドが内部で生成され得る。
【0048】
別の実施形態によると、ホストコンピュータおよびストレージデバイスは、同じストレージプロセッサに接続され得る。このような場合、上流および下流ストレージプロセッサは、同じストレージプロセッサである。
【0049】
これらの処理のより拡張的な詳細を以下に示す。
【0050】
(低レベルな詳細)
上述のように、ストレージサーバ100はまた、Virtual Storage Exchange(VSX)と呼ばれ、これは、冗長スイッチング回路によって内部接続された多重ストレージプロセッサ(SP)を含む。このVSXはまたこれらのSPの構成および管理のために少なくとも1つのCPUを有する。このCPUはまた、より高いレベルのストレージサービスを提供する。
【0051】
SCSI処理はSPによって処理される。各SPは、以下のコンポーネントを有する。
【0052】
1.読み出し/書き込みコマンドを処理する16マイクロエンジン
2.エラー復元を含む非読み出し/書き込みコマンドの全てを処理する埋め込まれたCPU
3.フレームタイプを識別するハードウエアクラシファイア(Classifier)
4.マイクロエンジンにおいて実行している正しいマイクロコードハンドラに対するフレームにキューを入れるためのディスパッチユニット
5.所与のパターンのためのリーフエントリを見出すためのツリー検索エンジン
6.統計収集(一実施形態では4Mカウンタまで)を可能にするコプロセッサであるカウンターエンジン
7.スイッチング回路(スイッチファブリックとも呼ばれる)にSPを接続させるスイッチインターフェース
読み出し/書き込みコマンドは、マイクロエンジンによって処理される。RD/WRコマンド処理は、以下にさらに説明される。
【0053】
コマンドが上流SPにおいて受信され、上流SPは、ほとんどのコマンドの処理を行う。上流SPは、コマンド/アクセス制御を認証し、コマンドを運ぶ場所を決定し、新しい開始論理ブロックアドレス(LBA)およびリクエストブロックを計算し、新しいコマンドデータブロック(CDB)を構築し、そしてそれを下流SPに運ぶ。ターゲットデバイスに到達する1つのみのパスが存在する場合、上流SPは完全なコマンドを構築し、次いで、下流SPおよびFC−ASICを介してターゲットデバイスに転送される。下流SPがターゲットデバイスに到達するいくつかのパスを有する場合、上流SPは、アクセス経路を選択するために下流デバイスまで離れる。この場合、下流SPは、アクセスパスに関する適切な情報で満たし、その情報をターゲットデバイスにFC−ASICを介して転送する。
【0054】
コマンドフレームがSPに入る場合、入来コマンドハンドラ(マイクロエンジンにおいて実行している)が呼び出される。このコマンドハンドラー(CmdHandler)は、IO制御ブロック(IoCB)構造を割り当て、コマンドコンテクストを格納し、コマンドのステータスを追跡する。コマンド情報から、CmdHandlerは、SPポート、FC−ASICデバイスハンドル、およびFC LUN(論理ユニット数)を含む検索キーを構成する。この検索キーは、SPツリー検索エンジン(TSE)に送られ、このコマンドに関連付けられたハードウエアLUN(HLUN)を検索する。この検索が失敗する場合、コマンドは存在しないLUNにより拒絶され、他の場合にはコマンド処理が継続する。HLUNはサーバおよび仮想LUN(VLUN)を結合する構造であり、それにより関連付けられたVLUN構造は、HLUN情報を介して取り出され得る。
【0055】
受信されたコマンドおよびVLUN情報においてリクエストされたブロックの開始LBA/数に基づいて、CmdHandlerは、受信されたコマンドを物理コマンドのセットに分解する(このセットは上記情報に依存する1つ以上のコマンドであり得る)。1つより多い物理コマンド(pCmd)が分解される場合、各pCmdは、pCmd自体のコマンドコンテクストを格納するために使用されるpCmd自体のIoCB(子IoCBまたはcIoCBと呼ばれる)を有する。これらのcIoCBは、元のIoCB(マスターIoCBまたはmIoCBと呼ばれる)にリンクされる。以後、CmdHandlerは、物理ターゲットデバイスにマッピングされる物理開始LBAおよび複数のブロックを用いるこれらのコマンドを構築する。次いでこれらのコマンドは、ターゲットデバイスに直接接続する下流SPに送信される。IoCBに対する参照はまた、このコマンドに関連付けられたIoCBを位置決定するために使用されるコマンドハンドル(上流コマンドハンドルおよび下流コマンドハンドル)として、上流SPと下流SPとの間に送られる。
【0056】
上述したように、下流SPは、ターゲットデバイスへの1つより多くのアクセスパスを有し得る。単一のアクセスパスが存在する場合、pDevPathキーが上流SPから下流SPに送られる。他の場合、pLUNキーが送られる。マルチパスシナリオでは、下流CmdHandlerは、物理LUN(PLUN)を検索し、アクセスパス(pDevPath)を選択する。これは別の検索を導く。単一のパスシナリオでは、下流CmdHandlerは、ターゲットデバイスにアクセスするための重要な情報を得るために直接pDevPathを検索する。
【0057】
図6は、読み出し/書き込みコマンド処理の高レベルなフローチャートを示す。上流パスでは、ツリー検索エンジン(TSE)は、HLUN、VLUN、PLUNnp、およびpDevPathを示す。
【0058】
下流パスでは、第1に、MPATH_BITがチェックされる。MPATH_BITが明らかである場合、下流PLUNは多重パスを有さない。次いでこの下流SPは、pDevPathテーブルへの検索を発行する。MPATH_BITが設定される場合、検索は、PLUNテーブル上でなされる。このPLUNリーフは、ストレージへの可能な経路の全てを有する。
【0059】
図7は、本発明の実施形態によるルーティング情報310(図8および図9も参照)のデータ図を示す。このルーティング情報310は、FC ASICとSPとの間で使用される。
【0060】
コマンドを受信すると、コマンドハンドラは、適切なアクセスパスを決定するために、コマンド情報およびプログラムされたVLUN情報に基づく。一旦、アクセスパスが決定されると、全ての以後のフレーム(転送準備中、データ、およびステータス)が同じパス上に転送される。すなわち、マイクロコードは、フレームルーティングプロセスをスピードアップするために使用されるルーティング情報フィールドを加える。このルーティング情報は、フレーム内に埋め込まれる。これは、SPマイクロコードがIoCB構造を最初に参照することなしで、受信されたフレームから直接ルーティング情報を獲得することを可能にする。ルーティング情報がフレームの最初の64バイト内にあるために、ピココード(picocode)がどのようにしてフレームをルーティングするかを調べることを開始し得る。これは、性能を改善する。
【0061】
ルーティング情報は、以下のアイテムを含む。
【0062】
1.ブレード数:ターゲットSPスイッチブレード数
2.QID:フレームをSPスポットにルーティングするためのSP ENQコプロセッサによって使用される暗号化された値
3.FCAポート:FC ASICポート数
4.DMU:フレームをSPポートにルーティングするためにSP ENQコプロセッサによって使用されるデータムーバユニット
5.DSU:フレームをSPポートにルーティングするためにSP ENQコプロセッサによって使用されるデータ格納ユニット
ルーティング情報フィールドはDSTおよびSRCの2つの部分からなる。FC ASICはこのルーティング情報を与え、FC ASICがデータ、ステータス、または制御フレームを送信する場合、この情報を改変されていないSPに戻す。
【0063】
SPは、DSTルーティング情報フィールドを調べて、フレームをルーティングするためにFCBページレジスタをプログラムする。
【0064】
ルーティング情報におけるフィールドのための省略は以下に示される。
【0065】
1.TBがターゲットブレードを識別する。これは、入来FCBページレジスタにプログラムされる。
【0066】
2.QIDが出力(Egress)FCBページQIDフィールドを満たす場合、QIDがターゲットSPにおいて使用される。
【0067】
3.FCAポートは、ターゲットSPにおけるFCASICポート識別子である。
【0068】
4.DMUは、ターゲットDMUを識別する。これは、入来FCBページレジスタにプログラムされる。
【0069】
5.DSUは、使用するためにターゲットDSUを識別する。これは、入来FCBページレジスタにプログラムされる。
【0070】
コマンドが上流SPに入る場合、SRCルーティング情報フィールドが満たされる。次いでこのコマンドは、下流SPに運ばれる。下流SPは、DSTルーティング情報フィールドで満たす。コマンドをFCASICに運ぶ前に、SRCおよびDSTルーティング情報フィールドが交換される。
【0071】
FCASICがデータ、制御、またはステータスと共に戻る場合、ルーティング情報は、このままで戻される。SPは、DSTルーティング情報を調べる。SRCおよびDSTが以前のステップで交換されるために、DSTルーティング情報は、ここで、上流SPを識別する。このフレームは、上流SPに直接ルーティングされ得る。
【0072】
上流SPにおいて、DSTルーティング情報からのフィールドは、フレームを外部に直接送信するために使用される。フレームを外部に送信する前に、SRCおよびDSTルーティング情報フィールドが交換される。
【0073】
このストレージプロセッサは、ピココードと呼ばれるプログラミングコードに従って動作する。以下の図および関連した説明は、ピココードおよび関連した本発明の実施形態を詳説する。
【0074】
図8は、PPPフォーマットで封入されたコマンドフレーム300を示す。これは、ピココードによって利用された一般的なフレームフォーマットである。SPを入力するFCフレームは、イーサネット(R)フレーム内に封入される。SPハードウエアクラシファイアは、どのルーチンを呼び出すかを決定するためにPROTOCOLフィールドを調べる。このサブタイプは、POSフレームタイプをさらに区別するためにマイクロコードによって使用される。
【0075】
図9は、TAGSフィールド302のフォーマットを示す。コマンドフレーム300におけるTAGSヘッダー302が、コマンドコンテクストを獲得するためにSP間の固有の識別子を運ぶために使用される。このTAGフィールド302は、以下のデータフィールドを含む。
【0076】
FCハンドル304は、そのコマンドハンドルを獲得するためにFC ASICによって使用されたハンドルである。
【0077】
SPクオリファイア306およびSPハンドル308は、FC ASICによって単一のハンドルとして解釈される。SPハンドル308は、そのコマンドコンテクストを獲得するためにSPによって使用される。
【0078】
routeinfoフィールド310は、SPによってRDY/ACKフレームにおけるFC ASICに送信される。FC ASICは、好ましくは、最新のフィールドを送信する。
【0079】
ctrlフィールド312は、汎用フィールドである。
【0080】
frameld314は、連続的に増加する数である。その使用は、単一のシーケンスにおけるSEQ_CNTと同様である。
【0081】
ポート316は、ポートを識別する。
【0082】
plSzFillBst(ペイロードサイズ/充填ビット)318は、FC ASICによって挿入される。フィールドは、フレームタイプに依存する異なる意味を有する。フレームを受信するために、このフィールドは、ペイロードの全バイトカウントを示す。フレームを送信するために、このフィールドは、どれくらいの数のビットが最後のデータワードに満たされたかを示す。
【0083】
relOffset320は、データペイロードに対して相対的なオフセットを示す。受信フレーム(SPの観点では)において有効であるのみである。
【0084】
ポートハンドル322は、SPがコマンド記述子を下流に(down)送信する場合、SPが話すことを望むデバイスを識別するために使用される。
【0085】
DevHandle324は、デバイスハンドルを格納するために使用される。これは、コマンドを特定のデバイスにマッピングするためにFC ASICによって使用される。その利用は、S_IDおよびD_IDと同様である。
【0086】
rsvdフィールド326は使用されない。
【0087】
本発明の実施形態によると、3つのタイプのデータフレーム(COMMAND、DATA、およびSTAUS)がある。イーサネット(R)ヘッダにおけるタイプフィールドは、3つのタイプを区別するために特別に定義されたコードに設定される。SPにおけるこのハードウエアクラシファイアは、正確なエントリポイントを呼び出すためにこのフィールドを使用する。
【0088】
SPピココードは、仮想化されたデバイスに対するRDおよびWRコマンドタイプを処理する。他のコマンドは、処理するためにSPに送信される。ネイティブデバイスの場合、SPピココードは、保存、放出コマンドを除いたデバイスに全てのコマンド/フレームを転送する。ピココードによって処理されたコマンドタイプの数は小さいが、トラフィックの大部分はRD/WRコマンドである。
【0089】
図4を参照して上述されたように、本明細書は、用語上流および下流を使用する。上流は、サーバに接続されるSPを説明するために使用される。これは、コマンドを参照するSPである。下流が、ターゲットデバイスに接続されるSPを説明するために使用される。上流SPデバイスは、コマンドを受け取り、それを処理し、そしてそれを下流SPに送信する。この下流SPは、コマンドを受け取り、それをターゲットデバイスに送信する。
【0090】
上流SPは、コマンドのほとんどの処理を行う。上流SPは、コマンドを運ぶ場所を決定し、新しい開始論理ブロックアドレス(LBA)およびリクエストされたブロックを計算し、新しいCDBを構築し、それを下流SPに運ぶ。下流SPは、FCヘッダーに注意を払い、どのポートがコマンドフレームを外部に送信するかを決定し、そしてターゲットデバイスへの順序管理を処理する。
【0091】
上流のコマンドフレームは、以下のように処理される。
【0092】
コマンドフレームがSPを入力する場合、入力コマンドハンドラが呼び出される。コマンドフレームは、新しいFC交換の一部である。IoCB構造は、新しいコマンドに割り当てられる。IoCB構造は、新しいコマンドの状態を追跡するために使用される。コマンドフレームのセクションは、順序管理を実行するためにIoCBに保存される。本発明の一実施形態によると、コマンドフレームは、典型的には82バイトである。
【0093】
FCPMソフトウエアモジュールは、IoCB割り当ておよびコマンドの保存を実行する。これはより多くのデータをI−DSから読み出す。なぜなら、64バイトのみがもたらされるためである。一旦これが行われると、コマンドの処理が開始され得る。
【0094】
SMソフトウエアモジュールが次に呼び出される。このモジュールは、コマンドのためのHLUNが存在するかどうかを決定する。HLUNは、サーバおよびVLUNを結合する構造である。このHLUNは、サーバおよびVLUNを結合する構造である。このSMは、FCBページ構造、FCLUN、およびメッセージヘッダからのDevHandleからソースポートを抽出し、これをツリー検索エンジン(TSE)に供給する。TSEがリーフを生成しない場合、HLUNが存在せず、コマンドが拒絶される。HLUNが存在する場合、コマンドの処理が継続する。このモジュールはまた、コマンドタイプを見積もる。RD/WRコマンドではない場合、このモジュールはフレームを処理のためにSPに送信する。SMは、開始LBAおよびCDBからのブロックの数を抽出し、物理開始LBA、複数のブロック、およびコマンドの物理的宛先を見積もるLMソフトウエアコンポーネントへの呼び出しを行う。
【0095】
LMは、TSRメモリにおけるHLUN検索結果を用いて呼び出される。HLUNから、LMはVLUNを検索する。VLUNを表す物理デバイスは、LBA0で開始しないかもしれないくつかのディスクであり得る。VLUNの後方にある各物理デバイスはスライスと呼ばれる。LMがスライスに進み、このIOリクエストのためにどのスライスが呼び出されているかを見積り、新しい開始LBAおよびリクエストされたブロックを計算する。リクエストがスライス境界を交差し得る。この場合、LMは子IoCBを割り当て、それらをマスターリクエストにリンクする。この計算が行われた後、LMは、ターゲット物理デバイスを検索する。LMは、FCBページにおいて宛先SP数、ターゲットDMU/DSUで満たし、イーサネット(R)ヘッダにおいて、ターゲットデバイスを検索するために下流SPによって使用されたplHandleで満たす。LMは、SM、物理ターゲットのFCLUN、開始LBA、および複数のフロックに再度戻す。
【0096】
この情報からのSMは、FCPコマンドペイロードを構築し、FCPMに再度戻す。このFCPMは、データプールからのフレームを再度書き込み、スイッチモジュールに対するフレームにキューを入れ、上流SP上のコマンド処理を終了する。
【0097】
下流のコマンドフレームは以下のように処理される。
【0098】
上流SPからのコマンドフレーム下流に送信されるようになる。イーサネット(R)封入ヘッダーでは、LLCフィールドは、2つの部分の重要な情報(上流ハンドルおよびpHandle)を含む。
【0099】
コマンドフレームを受信した後のFCPMモジュールは、コマンドに対するIoCBを割り当てる。下流SPが上流SPデータまたはそのコマンドに関連するステータスフレームを送信する必要がある場合、上流ハンドルが使用される。上流ハンドルは、データまたはステータスフレームと共に送信されることにより、上流SPは、フレームに対するコンテクストを見出すことを可能にする。このコマンドを受信した後、下流SPは、上流SPに下流ハンドルを含むACK/RDYフレームを送信する。上流および下流SPの両方のこの方法は、互いのハンドルを有する。各側がフレームのコマンドコンテクストを獲得することができるように、ピアハンドルが送信される。
【0100】
送られたこのpHandleは、PLUNまたはpDevpathルックアップのいずれかであり得る。これは、pHandle MCASTビットに依存する。MCASTビットが設定される場合、これは、デバイスへの多重パスが存在し得ることを意味する。クリアである場合、単一パスのみが存在する。PLUNがリーフから参照される場合、LMは、どのパスが取られるかを決定する。これは、pDevpathの別の検索を導く。単一パスでは、pDevpathが直接参照される。LMはmaxRxdataサイズおよびターゲットポートを抽出する。この情報は、FCPMに戻される。FCPMは、LMに戻された情報から新しいFCヘッダーを構成し、フレームを外部に運ぶ。
【0101】
上流データフレームは、以下の態様で処理される。
【0102】
上流データフレームは、複数の環境で発生し得る。例えば、サーバが書き込みデータを送信する場合、データフレームは、入力側で現れる。下流SPが読み出しデータに応答する場合、データフレームは、出力側で現れる。
【0103】
サーバ送信データの場合、FCPMは、メッセージヘッダにおける戻されたSPHandle(IOCBアドレス)を用いてIoCBを参照する。IoCBから、SPは、データフレームを運ぶべき場所を知っている。
【0104】
データフレームが出力側にある場合、FCPMは、イーサネット(R)LLCフィールドを介して送られたハンドルを用いてIoCBを検索する。これは、IoCBアドレスである。IoCBから、FCPMは、データをサーバに運ぶかどうか、またはより多くのデータを待たなければならないかを決定する。これは、ストライピング(データ無秩序に来得る)の場合に発生し得る。
【0105】
下流データフレームは、以下の態様で処理される。
【0106】
下流のデータフレームは、複数の環境で発生し得る。例えば、デバイスが読み出しデータに応答する場合、これらのフレームは、入力側で現れる。上流SPが書き込みデータを送信する場合、これらのフレームは、出力側で現れる。SPがIoCBを参照する態様は、上述と同じである。
【0107】
下流のステータスフレームは、以下の態様で処理される。
【0108】
下流のステータスフレームは、ターゲットデバイスから来る。リクエストされた動作が終了する場合または例外が発生する場合に、これが発生する。ステータスデータは、ステータスフレームと共に来る。
【0109】
FCPMは、メッセージヘッダにおいて戻されたSPHandle(IOCBアドレス)を用いてIoCBを検索する。上流コマンドハンドルは、イーサネット(R)封入ヘッダーに挿入される。ステータスフレームは、上流に運ばれ、IoCBが分解される。デバイスへの複数のパスが存在する場合、他のパスが試みられ得る。
【0110】
上流ステータスフレームは、以下の態様で処理される。
【0111】
上流ステータスフレームは、下流SPから来る。FCPMは、イーサネット(R)封入ヘッダーに送られたコマンドハンドルからIoCBを検索する。SMサブシステムが呼び出され、ステータスフレームが必要な場合に生成される。このステータスフレームは、仮想デバイスに関するリクエストのためにある。戻りステータスは、物理デバイスに由来し、同じコンテクストを有さなくてもよいし。従って、SMは、ステータスフレームを再生成し得る。FCPMが最終的に、フレームを再度サーバに転送するように呼び出される。これが発生した後、IoCBが分解される。
【0112】
図10は、読み出しコマンドにおける処理ステップのフローチャートである。読み出しデータフローは、上述の同じコマンド、データおよびステータスフェーズに進む。読み出しコマンドが受け取られる場合、SPは、仮想リクエストを物理リクエストに分解する。
【0113】
FCPプロトコルは、コマンドに対して必要とされた全てのバッファ空間が既にサーバ側に割り当てられたことを想定する。SPは、XFER_RDYを待つことなくサーバにデータを再度自由に送信する。フロー制御は、FC側上のBBクレジットメカニズムおよび」GbE側上のPAUSEフレームを用いてFCポートASICによって処理される。
【0114】
リクエストが単一の物理デバイスにマッピングする簡単な場合では、再順序付け(reordering)は必要ではない。デバイスへのパスが選ばれ、物理リクエストがデバイスに取り付けられたSPに送信される。ミラーリングの場合、上流SPは、どのメンバーが読み出されるかを決定する。連結またはストライプの場合、SPは、元のSPからさらなるリクエストを生成し得る。データが下流SPから再度来る場合、NPSIM分解の後でサーバに再度データを送信する前に、上流SPは順番にデータを再構築する。
【0115】
図11は、書き込みコマンドにおける処理ステップのフローチャートである。書き込みコマンドがサーバから受信される場合、SPは、物理デバイスへのパスを見積もる。XFER_RDYフレームがサーバに送信されるべきであるので、書き込みコマンドがより複雑化される。
【0116】
上流SPは、好ましくは、上流SPが下流SPから再度ハンドルを獲得するまでサーバにXFER_RDYを送信しない。下流SPは、好ましくは、下流SPがデバイスから再度XFER_RDY応答を獲得するまでハンドルを再送信しない。
【0117】
次いで上流SPは、下流SPから示された同じバイトカウントを有するサーバにXFER_RDYを送信することにより、サーバからデータフローを開始する。
【0118】
XFER_RDYは、データフレームがディスク境界を介して分割される必要がないことを確実にするためにさらに調整される。この改変は、上流SPによってなされ、プロセスは、リクエストが終了するまで継続する。
【0119】
最適化として、下流SPは、作成されたXFER_RDYを用いて上流SPに応答し得る。このレポートされたバイトカウントは、PLOGIプロセスの間に交渉される、デバイスが受信し得る最大受信サイズに設定される。上流SPは、XFER_RFYをサーバに送信する。これは、サーバからデータフローを開始する。
【0120】
ターゲットデバイスがXFER_RDYを用いて応答する場合、下流SPは、上流SPに調整されたバイトカウントを再度送信する。上流SPは、新しく調整されたバイトカウント値を用いてサーバにXFER_RDYを送信する。この方法が最適化され、以後考慮される。
【0121】
図12は、ピココードソフトウエアスタックを示す。正確な入力機能を呼び出すために、ハードウエアクラシファイアと共に動作させることによって、メッセージング層は、イーサネット(R)封入を解釈するために動作する。ファイバチャンネルプロトコル(FCP)マネージャは、シーケンス管理およびIoCB割り当て/分解を追跡する。このSCSIマネージャ(SM)層は、FCP層の内側のSCSIコマンドを解釈する。LUNマネージャ(LM)層は、サーバから入る仮想リクエストを取り、その仮想リクエストを物理リクエストに分解する。このユーティリティ層は、IoCBの割り当て/分解するための機能を有する。
【0122】
このセクションは、ピココードサブシステム(図12参照)におけるFCPマネージャコンポーネントを説明する。このピココードソフトウエアスタックでは、FCPは、ピココードサブシステムのフロントエンドとして考慮され得る。言い換えると、FCPマネージャは、全ての入来フレームを解釈するように設定される。SPハードウエアクラシファイア(HC)は、SP HC構成セクションにおいて議論されるディスパッチインジケータに基づいて適切なフレームハンドラへの入来フレームをディスパッチするように構成される。
【0123】
異なるフレームハンドラは、タスクを満たすために異なるセットのアクションを実行する。これらのハンドラーによって実行されたアクションの過程は、FCPパブリックインターフェースセクションにおいて説明される。
【0124】
SPハードウエアクラシファイア構成は、以下のようである。入来フレームのSPの到着側に依存して、SPハードウエアクラシファイア(HC)は、フレームをディスパッチするように異なるフィールドに鍵をかける。入力側上において、HCは、入来フレームをディスパッチするためにEタイプに基づく。さらに、それは、出力入来フレームをディスパッチするためにUC/MC、FHEF、およびVSHFに基づく。
【0125】
FC ASICおよびSPは、図8に示されるように、コマンド記述子(CD)フレーム300を介して通信する。FC ASICおよびSPの両方がCDフレームヘッダー(これは、図8におけるフィールドADDR、CTRL、PROTOCOL、およびTAGS302を含む)を調整する場合に確実にする必要がある所定の要求が存在する一方で、このセクションは、2つの主要なIOパス、読み出しおよび書き込みに関するCDフレームヘッダー操作を要約する。
【0126】
図13は、読み出しコマンド上のCDフレームヘッダー操作を表す。図14は、書き込みコマンドに関するCDフレームヘッダー操作を表す。
【0127】
ピココードの一部としてのFCPインターフェース(図12参照)は以下のものを含む。すなわち、入力コマンドハンドラ、出力コマンドハンドラ、入力データハンドラ、出力データハンドラ、入力ステータスハンドラ、出力ステータスハンドラ、入力Xferレディハンドラ、出力Xferレディハンドラ、入力送信コマンドハンドラ、出力送信良好ステータスハンドラ、出力送信不良ステータスハンドラ、出力送信新ステータスハンドラ、および放棄Iフレームハンドラである。
【0128】
入力コマンドハンドラ機能は、サーバからSP入力に送信されたコマンドフレームを処理するために使用される。エントリポイントは、fcp_cmd_iであり、パスは、UPSTREAM−INGRESS−COMMANDである。ハードウエアクラシファイアは、この機能に基づくVSXプログラム可能なEタイプ(CMD−1)を促進する。入力は、データプール(64バイト)におけるコマンドフレームの一部を含む。
【0129】
入力コマンドハンドラの機能は、IOCB_poolからのIOCB(util_iocb_alloc)をw20において送られるべき割り当てられたIOCBのIDに割り当てること、およびIOCBコンテンツをScratchMeml(4QWs)に読み出すことを含む。入力コマンドハンドラはまた、入来フレームのフレームIDをチェックし、予測されたインバウンド、アウトバウンド、内部フレームIDを初期化し、FCフレームからの重要な情報を抽出し、IOCB(SP;FC_Handle)に格納する。
【0130】
入力コマンドハンドラの他の機能は、SP_HandleおよびSP_Qualifierをフレームタグに設定すること、FCコマンドフレームをIOCBのステージング領域にコピーすること、IOCB情報を含む第2のI−DSバッファの識別をw22に格納すること、それ自体のハンドルをコマンドフレームに満たすことを含む。
【0131】
入力コマンドハンドラのさらなる機能は、IOCBを格納し、領域アドレスをw28およびw30それぞれにステージング(staging)すること、SCSIコマンド(sm_cmd_i)を処理するためにSCSIマネージャを呼び出すことを含む。ScratchMem1におけるIOCB画像が更新されるが、実際のIOCBのコンテンツではない(更新された情報がその機能から戻った後に流されるべきである)。
【0132】
送り情報は、データプール(96バイト)におけるコマンドフレーム、w28におけるIOCBアドレス、w30におけるIOCBステージング領域アドレス、ScratchMem1におけるIOCBのコンテンツ(64バイト−4QW)を含む。次いで、入力コマンドハンドラが終了し得る。
【0133】
出力コマンドハンドラ機能は、Initiator−RainierからSP−出力に送信されたコマンドフレームを処理するために使用される。このエントリポイントは、fcp_cmd_eであり、パスは、DOWNSTREAM−EGRESS−COMMANDである。
【0134】
ハードウエアクラシファイアは、{iUCnMC,FHE,およびFHF}に基づいてこの機能を促進する。入力は、データプール(64バイト)におけるコマンドフレームの一部を含み、R0は、フレームヘッダーの最初のバイトへのオフセットを含む。
【0135】
バッファサイズミスマッチにより、XFR_RDYがターゲットデバイスから受け取られるまで、「ローカルコマンドハンドル」を再度Initiator Rainierに送信しない。
【0136】
出力コマンドハンドラの機能は、入来E_frame(fcp_filter_fcp_efrm)を確証することおよび割り当てられたIOCBのIDがw20内にあることを確実にするIOCB_Alloc機能を有するIOCBをIOCB_pool(util_iocb_alloc)からTOCBを割り当てることを含む。
【0137】
さらに、出力コマンドハンドラは、IOCBコンテンツをScratchMem1(4QW)に読み出し、IOCBおよびステージ領域アドレスをw28およびw30にそれぞれ格納し、そして入来フレームのフレームIDをチェックし得る。出力コマンドハンドラの他の機能は、予測されたインバウンド、アウトバウンド、内部フレームIdsを初期化すること、peer_Handleおよびpeer_QualifierをIOCBに保存すること、ならびにFC_Handleを0xFFFFに初期化すること、制御フィールドをゼロ設定に初期化するこを含む。
【0138】
出力コマンドハンドラはまた、pLunルックアップを実行するためにLMを呼び出す(lm_cmd_e)。このlm_cmd_e機能は、IOCBにおけるターゲットポートおよびIOCBにおけるMaxRxDataを確実にする。
【0139】
出力コマンドハンドラは、コマンドフレームをターゲットデバイスに送信するためにFCPをさらに呼び出し(fcp_snd_cmd_e)、IOCBをポートアクティブキューにキューを入れる。次いでこの出力コマンドハンドラは、ScratchMem1からE−DSに、更新されたIOCB情報を放流し得、次いで終了する。
【0140】
入力データハンドラ機能は、サーバからSP−入力に送信されたデータフレームを処理するために使用される。エントリポイントは、fcp_data_iであり、パスは、UPSTREAM/DOWNSTREAM−INGRESS−DATAである。ハードウエアクラシファイアは、VSXプログラマブルE−タイプ(DATA−I)に基づくこの機能を促進する。入力は、データプール(32バイト)におけるコマンドフレームの一部を含む。
【0141】
入力データハンドラの機能は、IOCBアドレスを確証すること(受信されたフレームにおいて戻されたSP_Handle)、IOCBコンテンツをScratchMem1(8QW)に読み出すことを含む。この入力データハンドラは、以下のフィールドをチェックすることによってフレームコンテンツをIOCBコンテンツに整合し得る。そのフィールドは、SP_Qualifier、Frame_ID、FC_Handle(これが最初のデータフレームではない場合)、およびルーティング情報(fcp_val_ri_i)である。
【0142】
この入力データハンドラはまた、FC_HandleをIOCBに保存し(最初のデータフレーム上)、フレームID、peer_Handle、およびpeer_Qualifierを更新し、そしてデータフレームを他のRainier(Initiator/Taget−Rainier)に送信するためにFCPを呼び出し得る(fcp_snd_data_i)。この入力データハンドラは、ScratchMem1からE−DSに更新されたIOCB情報をさらに放流し得、次いで終了する。
【0143】
出力データハンドラ機能は、Initiator/Taget−RainierからSP−出力に送信されたデータフレームを処理するために使用される。このエントリポイントは、fcp_data_eであり、パスは、UPSTREAM/DOWNSTREAM−EGRESS−DATAである。
【0144】
ハードウエアクラシファイアは、{iUCnMC,FHE,およびFHF)に基づいてこの機能を促進する。入力は、データプール(32バイト)におけるデータフレームの一部を含む。
【0145】
出力データハンドラによって実行された機能は、IOCBアドレスを確証すること(受信されたフレームへの送りpeerOrPHandle)、およびIOCBコンテンツのScratchMem1(8QW)に読み出すことを含む。出力データハンドラはまた、以下のフィールドをチェックすることによってフレームコンテンツをIOCBコンテンツに整合し得る。そのフィールドは、Own_Qualifier、Frame_ID、Peer_Handle、およびPeer_Qualifier(これが最初のデータフレームではない場合)、およびルーティング情報(fcp_val_ri_e)(これが最初のデータフレームではない場合)である。
【0146】
この出力データハンドラはまた、Peer_Handle、Peer_Qualifier、および終了したルーティング情報をIOCBに保存し(最初のデータフレーム上に)、ソースおよび宛先ルーティング情報を交換し、そしてFC_Handle、SP_Handle、SP_Qualifier、frame_ID、port_Handle、およびport_Number、およびフレーム制御フィールドを更新し得る。
【0147】
この出力データハンドラは、データフレームを他の宛先デバイス(Initiator/Taget−Rainier)に送信するためにFCPを呼び出し(fcp_snd_data_e)、IOCBにおける実行バイトカウントフィールドを更新し、ScratchMem1からE−DSに、更新されたIOCB情報を放流し得、次いで終了する。
【0148】
入力ステータスハンドラの機能は、ターゲットデバイスからSP−入力に送信されたステータスフレームを処理するために使用される。エントリポイントは、fcp_status_iであり、パスは、DOWNSTREAM−INGRESS−STATUSである。このハードウエアクラシファイアは、VSXプログラム可能なEタイプ(STS−I)に基づいてこの機能を促進する。入力は、データプール(64バイト)におけるコマンドフレームの一部を含む。
【0149】
入力ステータスハンドラによって実行された機能は、IOCBアドレスを確証すること(受信されたフレームにおいて戻されたSP_Handle)、およびIOCBコンテンツをScratchMem1(8QW)に読み出すことを含む。フレームコンテンツは、以下のフィールドをチェックすることによってIOCBコンテンツに整合される。そのフィールドは、SP_Qualifier、Frame_ID、FC_Handle(これが最初のデータフレームではない場合)、およびルーティング情報(fcp_val_ri_i)である。
【0150】
この入力ステータスハンドラは、FC_HandleをIOCBにさらに保存し(最初のデータフレーム上に)、フレームID、peer_Handle、およびpeer_Qualifierを更新し、そしてステータスフレームをInitiator−Rainierに送信するためにFCPを呼び出す(fcp_snd_sts_i)。入力ステータスハンドラはまた、IOCBをポートアクティブキューから分解し(util_remove_this)、IOCBをフリーなIOCBプールに戻し、次いで終了する。
【0151】
出力ステータスハンドラの機能は、Initiator−Rainierからホストに送信されたステータスフレームを処理するために使用される。このエントリポイントは、fcp_status_eであり、パスは、UPSTREAM−EGRESS−STATUSである。
【0152】
ハードウエアクラシファイアは、{iUCnMC,FHE,およびFHF)に基づいてこの機能を促進する。入力は、データプール(32バイト)におけるコマンドフレームの一部を含む。SMは、ステータスペイロードを構築することに対して責任があることが想定される。
【0153】
出力ステータスハンドラの機能は、IOCBアドレスを確証すること(受信されたフレームへの送りpeerOrPHandle)、およびIOCBコンテンツをScratchMem1(8QW)に読み出すことを含む。このフレームコンテンツは、以下のフィールドをチェックすることによってIOCBコンテンツに整合され得る。そのフィールドは、own_Qualifier、Frame_ID、Peer_Handle、Peer_Qualifier(これが最初のデータフレームではない場合)、およびルーティング情報(fcp_val_ri_e)(これが最初のデータフレームではない場合)である。
【0154】
出力ステータスハンドラの他の機能は、peer_Handle、peer_Qualifier、およびIOCBへの終了されたルーティング情報を保存することを含む(最初のフレーム上で)。他の機能は、ソースおよび宛先ルーティング情報を交換すること、IOCBアドレスをw28に格納すること、およびIOステータスをログを取るようにSCSI管理を呼び出す(sm_status_e)ことを含む。
【0155】
送り情報は、データプール(32バイト)内のデータフレーム、w28におけるIOCBアドレス、およびScratchMem1におけるIOCBのコンテンツ(8QW)を含む。次いで、この出力ステータスハンドラが終了する。
【0156】
入力Xferレディハンドラ機能は、ターゲットデバイスからSP−入力に送信されたxferRdyフレームを処理するために使用される。エントリポイントは、fcp_xfr_rdy_iであり、パスは、DOWNSTREAM−INGRESS−XFER_READYである。この機能は、ターゲットデバイスからSP−入力に送信されたxferRdyフレームを処理するために使用される。
【0157】
ハードウエアクラシファイアは、VSXプログラム可能なEタイプ(XFRRDY−I)に基づいてこの機能を促進する。入力は、データプール(64バイト)におけるコマンドフレームの一部を含む。
【0158】
入力Xferレディハンドラ機能は、IOCBアドレスを確証すること(受信されたフレームにおいて戻されたSP_Handle)、およびIOCBコンテンツをScratchMem1(8QW)に読み出すために機能する。フレームコンテンツは、以下のフィールドをチェックすることによってIOCBコンテンツに整合される。そのフィールドは、SP_Qualifier、Frame_ID、FC_Handle(これが最初のデータフレームではない場合)、およびルーティング情報(fcp_val_ri_i)である。
【0159】
入力Xferレディハンドラは、Data_RO(XfrRdyペイロードにおける)が、IOCB runnning−byte−cntと同じであり、他の場合では、FCPエラーハンドラ(fcp_invalid_xfrdy)を呼び出すことをさらに確認する。入力Xferレディハンドラはまた、FC_HandleをIOCBに保存し(最初のデータフレーム上に)、IOCB xfrdyをBURST_LEN(XfrRdyペイロードにおける)を用いて更新し、そしてフレームID、peer_Handle、およびpeer_Qualifierを更新する。入力Xferレディハンドラは、xferRdyフレームを他のRainier(Initiator−Rainier)に送信するためにFCPを呼び出し(fcp_snd_xfr_rdy_i)、ScratchMem1からE−DSに、更新されたIOCB情報を放流し得、次いで終了する。
【0160】
出力Xferレディハンドラの機能は、ターゲットRainierからSP−入力に送信されたxferRdyフレームを処理するために使用される。エントリポイントは、fcp_xfr_rdy_eであり、パスは、UPSTREAM−EGRESS−XFER_READYである。このハードウエアクラシファイアは、{iUCnMC,FHE,およびFHF)に基づいたこの機能を促進する。入力は、データプール(32バイト)におけるデータフレームの一部を含む。
【0161】
出力Xferレディハンドラによって実行された機能は、IOCBアドレスを確証すること(受信されたフレームにおける送られるpeerOrPHandle)、およびIOCBコンテンツをScratchMem1(8QW)に読み出すことを含む。このフレームコンテンツは、以下のフィールドをチェックすることによってIOCBコンテンツに整合される。そのフィールドは、Own_Qualifier、Frame_ID、Peer_HandleおよびPeer_Qualifier(これが最初のデータフレームではない場合)、およびルーティング情報(これが最初のデータフレームではない場合)(fcp_val_ri_e)である。
【0162】
出力Xferレディハンドラはまた、Peer_Handle、Peer_Qualifier、およびIOCBへのソースルーティング情報(最初のデータフレーム上に)を保存し、ソースおよび宛先ルーティング情報を交換し、Data_RO(XfrRdyペイロードにおける)は、IOCB runnning−byte−cntと同じであり、他の場合では、FCPエラーハンドラ(fcp_invalid_xfrdy)を呼び出すことを確認する。出力Xferレディハンドラは、IOCB xfrdyをBURST_LEN(XfrRdyペイロードにおける)を用いて更新し、そしてFC_Handle、SP_Handle、SP_Qualifier、frame_ID、Port_Handle、Port_Number、およびフレーム制御フィールドを更新する。この出力Xferレディハンドラは、xferRdyフレームを初期化デバイスに送信するためにFCPを呼び出し(fcp_snd_xfr_rdy_e)、ScratchMem1からE−DSに、更新されたIOCB情報を放流し、次いで終了する。
【0163】
入力送信コマンドハンドラの機能は、更新されたフレームおよびIOCBのコンテンツをI−DSおよびE−DSそれぞれに放流するために使用される。次いで、I−EDSに対するこのフレームにキューを入れる。このエントリポイントは、fcp_snd_cmd_iであり、そのパスは、UPSTREAM−INGRESS−COMMANDである。呼び出し側は、SMである。
【0164】
入力は、データプール(有効な情報を含むQWの量は、予め定義されかつ補償されるべきである)におけるフレームのコンテンツ、ScratchMem1における更新されたIOCBのコンテンツ(有効な情報を含むQWの量は、予め定義されかつ補償されるべきである)を含み、構築されたEタイプ、コマンドペイロード、宛先情報を含む。他の入力は、IOCBを含む。TB0は、w28に格納され、w22に格納されたコマンドフレームを含む第2のI−DSバッファの識別は、w22に格納される。
【0165】
入力送信コマンドハンドラによって実行される機能は、データプールからI−DSへの更新された情報を放流すること、およびFCBページ{iUCnMC,FHF,FHE}を設定し、I−EDSに対するフレームにキューを入れるターゲットへのフレームを送信することを含む。この入力送信コマンドハンドラはまた、ScratchMem1からE−DSに、更新されたIOCB情報を放流する。
【0166】
出力送信良好ステータスハンドラ機能は、更新されたフレームをE−DSに放流し、E−EDSに対するフレームにキューを入れるために使用される。このエントリポイントは、fcp_snd_gdsts_eであり、そのパスは、UPSTREAM−EGRESS−STARUSである。呼び出し側は、SMである。入力はデータプール内のフレームのコンテンツを含み、そのステータスペイロードおよび宛先情報が構築されている。
【0167】
出力送信良好ステータスハンドラの機能は、FCフレーム(FC_Handle、SP_Handle、SP_Qualifier、frame_ID、FC_Port_Handle、およびPort_Number)の改変を含む。この機能は、ルーティング情報を交換する必要はない。なぜなら、fcp_val_ri_e()は、それをすでに行ったためである。出力送信良好ステータスハンドラはまた、更新された情報を、データプールからE−DSに放流する(データプールにおける第2のQWから開始する3QW)。このフレームは、FCBページ{QID}を設定し、E−EDSに対するフレームにキューを入れるためにInitiator/Hostに送信される。
【0168】
出力送信不良ステータスハンドラ機能は、更新されたフレームをE−DSに放流するために使用され、E−EDSに対するフレームにキューを入れる。エントリポイントは、fcp_snd_badsts_eであり、パスは、UPSTREAM−EGRESS−STARUSである。呼び出し側は、SMである。入力はデータプール内のフレームのコンテンツを含み、そのステータスペイロードおよび宛先情報が構築され、そしてバイトにおける応答ペイロードのサイズはw20を介して送られる。
【0169】
出力送信不良ステータスハンドラの機能は、FCフレーム(FC_Handle、SP_Handle、SP_Qualifier、frame_ID、FC_Port_Handle、およびPort Number)を改変することを含む。この機能が、ルーティング情報を交換する必要はない。なぜなら、fcp_val_ri_e()は、それをすでに行ったためである。更新された情報は、データプールからE−DSに放流される(データプールからE−DSに放流される必要があるQWの数を計算するために、SMによって送られた応答ペイロードのサイズに基づく)。フレームは、FCBページ{QID}を設定し、E−EDSに対するフレームにキューを入れるためにInitiator/Hostに送信される。
【0170】
出力送信新ステータスハンドラ機能は、新しいステータスフレームを構築するため、およびホストに送信するために使用される。エントリポイントは、fcp_snd_new_sts_eであり、パスは、UPSTREAM−EGRESS−STARUSである。呼び出し側は、SMである。
【0171】
入力は、データプール(有効な情報を含むQWの量は、予め定義されかつ補償されるべきである)におけるフレームのコンテンツを含み、そのステータスペイロードおよび宛先情報が構築され、バイトでの応答ペイロードのバイトのサイズがw20を介して送られる。
【0172】
出力送信新ステータスハンドラの機能は、FCフレーム(POS_Header、プロトコル、FC_Handle、SP_Handle、SP_Qualifier、frame_ID、FC_Port_Handle、およびPort Number)を改変すること、制御情報を設定すること、およびPOSトレーラを設定することを含む。他の機能は、ステータスフレームコンテンツを格納するために、新しいツインバッファを割り当ること、重要な情報を有する新FCBページを構築すること、およびデータプールからE−DSへの更新された情報を放流すること(データプールからE−DSに放流される必要があるQWの数を計算するために、SMによって送られた応答ペイロードのサイズに基づく)を含む。このフレームは、FCBページ{QID}を設定し、E−EDSに対するフレームにキューを入れるためにInitiator/Hostに送信される。
【0173】
放棄されたI−フレームハンドラ機能は、入力入来フレームを放棄するために使用される。このエントリポイントは、fcp_discard_iであり、パスは、XXX−INGRESS−XXXである。呼び出し側は、SMである。放棄されたフレーム情報は、アクティブFCBページに格納されることが想定される。放棄I−フレームハンドラの機能は、フレームに入力放棄キュー(すなわち、I−DDQ)に対するキューを入れることである。
【0174】
放棄E−フレームハンドラ機能は、出力入来フレームを放棄するために使用される。このエントリポイントは、fcp_discard_eであり、パスは、XXX−EGRESS−XXXである。呼び出し側は、FCPである。放棄されたフレーム情報は、アクティブFCBページに格納されることが想定される。放棄E−フレームハンドラは、フレームに入力出力放棄キュー(すなわち、E−DDQ)に対するキューを入れるために機能することである。
【0175】
以下は、ピココード(図12参照)によって実行されたFCP秘密インターフェースのリストである。これは、出力送信コマンドハンドラ、入力送信データハンドラ、出力送信データハンドラ、入力送信ステータスハンドラ、入力送信転送レディハンドラ、出力送信転送レディハンドラ、入力送信ハンドル応答、出力フィルタFCフレーム、出力無効チェックサム、入力有効フレームルーティング情報、出力有効フレームルーティング情報、入力無効FCフレーム情報、出力無効FCフレーム情報、および放棄E−フレームハンドラである。
【0176】
出力送信コマンドハンドラエントリポイント機能は、更新されたフレームをE−DSに放流し、E−EDSに対するフレームにキューを入れるために使用される。このエントリポイントは、fcp_snd_cmd_eであり、そのパスは、DOWNSTREAM−EGRESS−COMMANDである。呼び出し側は、FCPである。
【0177】
入力は、データプールにおいてフレームのコンテンツを含み、コマンドペイロードおよび宛先情報が構築される。LMがFCBページ、フレームルーティング情報、およびポートハンドルを準備することに対して責任があることが想定される。
【0178】
出力送信コマンドハンドラエントリポイントの機能は、ソースおよび宛先ルーティング情報を交換すること、出力フレームにおけるポート数を設定すること、およびデータプールからE−EDSに更新された情報を放流することを含む。このフレームは、FCBページ{QID}を設定し、フレームをE−EDSにキューを入れるためにターゲットデバイスに送信される。
【0179】
入力送信データハンドラ機能は、更新されたフレームをI−DSに放流し、I−EDSに対するフレームにキューを入れるために使用される。エントリポイントは、fcp_snd_data_iであり、そのエントリパスは、UPSTREAM/DOWNSTREAM−INGRESS−DATAである。呼び出し側は、FCPである。入力は、データプールにおけるフレームのコンテンツを含み、データペイロードおよび宛先情報が構築される。
【0180】
入力送信データハンドラの機能は、データプールからI−DSに更新された情報を放流すること、FCBページ{iUCMC,FHF,FHE,TB,TDMU,iDSU)を設定するため、およびI−EDSに対する更新されたフレームにキューを入れるために他のRainierへのフレームを送信することを含む。
【0181】
出力送信データハンドラ機能は、E−DSに更新されたフレームを放流し、E−EDSに対するフレームにキューを入れるために使用される。エントリポイントは、fcp_snd_data_eであり、パスは、UPSTREAM/DOWNSTREAM−EGRESS−DATAである。呼び出し側は、FCPである。
【0182】
入力は、データプールにおいてフレームのコンテンツを含み、データペイロードおよび宛先情報が構築される。出力送信データハンドラの機能は、データプールからE−DSに更新された情報を放流すること、およびFCBページ{QID}を設定するため、およびE−EDSに対するフレームにキューを入れるためにIntiator−Rainierへのフレームの送信とを含む。
【0183】
入力送信ステータスハンドラ機能は、I−DSに更新されたフレームを放流し、I−EDSに対するフレームにキューを入れるために使用される。エントリポイントは、fcp_snd_sts_iであり、パスは、DOWNSTREAM−INGRESS−STATUSである。呼び出し側は、FCPである。
【0184】
入力は、データプールにおいてフレームのコンテンツを含み、ステータスペイロードおよび宛先情報が構築される。入力送信ステータスハンドラの機能は、データプールからI−DSに更新された情報を放流し、FCBページ{iUCMC,FHF,FHE,TB,TDMU,iDSU}を設定し、およびI−EDSに対するフレームにキューを入れるために、Intiator−Rainierへのフレームを送信することを含む。
【0185】
入力送信転送レディハンドラ機能は、更新されたフレームをI−DS放流するために使用され、I−EDSに対するフレームにキューを入れる。エントリポイントは、fcp_snd_xfr_rdy_iであり、パスは、DOWNSTREAM−INGRESS−XFER READYである。呼び出し側は、FCPである。入力は、データプールにおけるフレームのコンテンツである。入力送信転送レディハンドラは、データプールからI−DSに更新された情報を放流し、FCBページ{iUCMC,FHF,FHE,TB,TDMU,iDSU}を送信し、I−EDSに対するフレームにキューを入れるために機能する。
【0186】
出力送信転送レディハンドラ機能は、更新されたフレームをE−DSに放流し、E−EDSに対するフレームにキューを入れるために使用される。このエントリポイントは、fcp_snd_xfr_rdy_eであり、そのパスは、UPSTREAM−INGRESS−XFER READYである。呼び出し側は、FCPである。入力は、データプールにおけるフレームのコンテンツである。出力送信転送レディハンドラの機能は、データプールからE−DSに更新された情報の放流、およびFCBページ{QID}を設定し、E−EDSに対するフレームにキューを入れるために、Intiator−Rainierへのフレームの送信を含む。
【0187】
入力送信ハンドル応答機能は、再度Intiator Rainierにコマンドハンドルを送るためにターゲットRainierによって使用される。このエントリポイントは、fcp_snd_hndl_resp_iであり、そのパスは、DOWNSTREAM−INGRESS−COMMANDである。呼び出し側は、FCPである。入力は、データプールにおけるフレームのコンテンツである(6ワード)。
【0188】
入力送信ハンドル応答の機能は、I−DSバッファをリースすること、ハンドル応答フレームを構築すること、およびFCBページ2{iUCMC,FHF,FHE,TB,TDMU,WBC}を設定し、I−EDSに対するフレームにキューを入れるために、Intiator−Rainierへのフレームの送信を含む。
【0189】
出力フィルタFC−フレーム機能は、出力入来フレームを有効にするために使用される。このエントリポイントは、fcp_filter_fcp_efrmであり、そのパスは、XXX−EGRESS−XXXである。呼び出し側は、FCPである。この入力は、データプール(コマンドフレームに対して6QW/他のものに対して4QW)におけるフレームのコンテンツである。出力フィルタFCフレームの機能は、チェックサムを実行することを含み、全てがオーケーである場合呼び出し側に戻し、他の場合では、エラーイベントハンドラーを呼び出す(fcpInvalCheckSumEfrm)。
【0190】
出力無効チェックサム機能は、任意の出力フレーム上のチェックサムエラーを処理するために使用される。エントリポイントは、fcpInvalCheckSumEFrmである。呼び出し側はFCPである。出力無効チェックサムの機能は、エラーをログすること、およびフレームを放棄することを含む(すなわち、E−DDQに対するフレームにキューを入れる)。
【0191】
入力有効フレームルーティング情報機能は、フレームルーティング情報を有効にするために使用される。エントリポイントは、fcp_val_ri_iである。呼び出し側は、FCPである。入力は、データプールにおけるフレームのコンテンツおよびScratchMemlにおけるIOCBのコンテンツを含む。機能は、IOCBおよび入来フレーム内のルーティング情報を比較すること、ミスマッチがある場合、エラーを処理するためにcpInvallFrmInfoを呼び出すことを含む。
【0192】
出力有効フレームルーティング情報機能は、フレームルーティング情報を有効にするために使用される。エントリポイントは、fcp_val_ri_eである。呼び出し側は、FCPである。入力は、データプールにおけるフレームのコンテンツおよびScratchMeml内のIOCBのコンテンツを含む。機能は、IOCBおよび入来フレームにおけるルーティング情報を比較すること、ミスマッチがある場合には、エラーを処理するためにfcpInvalEFrmInfoの呼び出しと、他の場合は、フレームのルーティング情報を交換することを含む。
【0193】
入力無効FCフレーム情報機能は、IOCBとフレームコンテンツとの間のミスマッチ情報を処理するために使用される。エントリポイントは、fcpInvallFrmInfoであり、呼び出し側は、FCPである。機能は、エラーのログを取ることおよびフレームを放棄すること(すなわち、E−DDQに対するフレームをキューに入れる)を含む。
【0194】
出力無効FCフレーム情報機能は、IOCBとフレームコンテンツとの間のミスマッチ情報を処理するために使用される。このエントリポイントは、fcpInvallFrmInfoであり、呼び出し側は、FCPである。機能は、エラーのログを取ることおよびフレームを放棄すること(すなわち、I−DDQに対するフレームをキューに入れる)を含む。
【0195】
放棄E−フレームハンドラ機能は、出力入来フレームを放棄するために使用される。その機能は、入力放棄キュー(すなわち、E−DDQ)に対するフレームにキューを入れることを含む。
【0196】
このセクションは、ピココードサブシステムにおけるSCSIマネージャコンポーネント(SM)を説明する(図12参照)。SMの主な責任は、フレームからのSCSI特有情報を処理することである。サーバから入ってくる各コマンドフレームに対して、SMは、HLUNが存在するかどうかを決定する。キーを構築し、それをツリー検索エンジンに送信するために、FC−LUN、DevHandle、およびSPにおけるエントリポートを使用する。その検索が成功する場合、その結果を開始LBAおよびブロック数と共にLMに送る。他の場合は、コマンドを拒絶するか、またはそのコマンドを処理するためにSPにそのコマンドを送信するかのいずれかを試みる。
【0197】
LMは、パス、物理ターゲット、LBAを選択し、それらを再度送る。次いで、SMは、CDBにおけるLBAを改変し、コマンドをターゲットSPに送信するようにFCPにコマンドを送信する。
【0198】
SMは、動作コードクラシファイアテーブルを使用して、SCSIコマンド上でどのように動作するかを決定する。この動作コードクラシファイアテーブルは、制御ストアメモリから割り当てられる256エレメントのアレイである。各エレメントは、複数のフラグを含む。
【0199】
これらのフラグは以下のようである。Is−Read−Opcpdeは、設定された場合、動作コードが読み出すことを識別する(すなわちRead10)。Is−Write−Opcpdeは、設定された場合、動作コードが書き込むことを識別する(すなわちWrite10)。Is−Reserve−Opcpdeは、設定された場合、動作コードガ保存すること識別する(すなわちReserve6)。Is−Release−Opcpdeは、設定された場合、動作コードが分解することを識別する(すなわちRelease6)。Opcode−Is−Allowed−Without−HLUNは、設定された場合、動作コードLUNが存在するかどうかを可能にされるかどうかを識別する(すなわちReport LUNS)。Opcode−Is−Allowed−With−UA−Setは、設定された場合、動作コードがLUN上のユニット集中条件が設定されることを可能にすることを識別する(すなわちInqury)。Opcode−Is−Not−Affected−By−Reservationは、設定された場合、動作コードが保存衝突によって影響されないを識別する(すなわちRead Block Limits)。
【0200】
各エレメントにおけるフラグは、テーブル内のその位置に従って初期化される。SMは、このテーブルにインデックス付けするためにコマンドフレームからのSCSI動作コードを使用する。テーブルからのフラグに基づいて、SMは、どのコードパスを取るかを決定し得る。動作コードクラシファイアを参照する場合、以下の式が使用される。
【0201】
クラシファイアアドレス=クラシファイア−テーブル−アドレス+SCSI−動作コード
SMは、複数のパブリックインターフェースを特徴とする。1つは、上流入力コマンド(E−タイプ=CMD−I)である。エントリポイントは、入力側を介してサーバから入るコマンドフレームを処理する。エントリポイントは、Sm_cmd_iであり、FCPによって呼び出される。このパブリックインターフェースは、データプール(96バイト)におけるコマンドフレーム、w28におけるIOCBアドレス、w30におけるIOCBステージング領域アドレス、およびScratch1におけるIOCBを期待する。このパブリックインターフェースはまた、コマンドフレーム(上流ハンドル)において満たされるべき自己ハンドル、ならびにIOCBにおいて保存される自己およびピアFC−IDを期待する。
【0202】
上流入力コマンドによって取られたステップは、hlun(DevHandle、FCLUN、Port)の検索を開始およびコマンドフレームからの情報を翻訳することを含み、必要ならば、LBA、複数のブロック数、全体のバイトカウント、およびデータ方向を含むIOCBにこれらの情報を保存する。他のステップは、実行バイトカウントを初期化すること、検索結果(TSR0において予測された)を獲得すること、hlunが存在しない場合、sm_no_hlun_handlerを呼び出すこと、動作コードが読み出されず、または書き込まれない場合、sm_no_rdwr_handlerを呼び出すことを含む。LMに送られた値は、w24におけるVlun LBA、w16におけるR20 0=CommandがRead/Writeではないブロックの数、およびTSR0における検索結果を含む。
【0203】
選択された別のステップは、lm_cmd_iを含む。LMからの予測された戻り値は、w24におけるPlun LBA、w26におけるブロックの数、r20におけるステータスコード、r18におけるネイティブデバイス(0=ネイティブデバイス)フラグ、r21におけるターゲットデバイスFC−LUN、FCBページおよびIOCBにおいて満たされたターゲットブレード、ならびにコマンドフレームにおいて満たされたPlunHandleを含む。
【0204】
ネイティブデバイスでない場合、LBA、およびCDBにおけるブロックの数(データプールメモリ)が改変される。他のステップは、コマンドフレームにおいてターゲットデバイスFC−LUNで満たすこと、eタイプをCMD−Eに設定すること、ポートアクティブキューに対するIOCBにキューを入れること、そしてターゲットSPにコマンドを送信するためにfcp_snd_cmd_iを呼び出すことを含む。FCPは、データプールをI−DSに、およびスクラッチ1をCSに更新する。
【0205】
別のパブリックインターフェースは、下流SPを介して出力側から入るターゲットデバイスからステータスフレームを処理する上流出力ステータス(E−Type−Stat−E)である。このエントリポイントは、Sm_status_eであり、呼び出し側はFCPである。
【0206】
このインターフェースは、データプール(64バイト)におけるFC応答フレーム、w28におけるIOCBアドレス、スクラッチ1におけるIOCBを予測する。選択されたステップは、fcp_discard_eを呼び出し、ステータスが最後の子に由来しない場合に戻り、必要な場合、データプールにおいて応答コードを改変し、ポートアクティブキューからIOCBをキューから外し、サーバにステータスフレームを送信するためにfcp_snd_sts_eを呼び出し、IOCBをフリープールに戻すことを含む。
【0207】
以下のパブリックインターフェースは、SMを含まない。すなわち、下流出力コマンド(E−Type=CMD−E)、下流入力データ(E−Type=Data−I)、上流出力データ(E−Type=Data−E)、および下流入力読み出しステータス(E−Type=Stat−I)である。
【0208】
SCSIマネージャは、2つの内部インターフェースを有する。すなわち、sm_no_hlun_handlerおよびsm_no_rdwr_handlerである。
【0209】
sm_no_hlun_handlerエントリポイントは、現存しないhlunを目標とするコマンドフレームを処理し、これはSMによって呼び出される。このインターフェースは、データプール(96バイト)におけるコマンドフレーム、w28におけるIOCBアドレス、w30におけるIOCBステージング領域アドレス、およびスクラッチ1におけるIOCBを予測する。
【0210】
選択されたステップは、動作コードがE405によって処理される必要がある場合(すなわち、照会、レポートLUN)、sm_no_rdwr_handlerを呼び出すこと、I−DSバッファを放棄するためのfcp_discard_iを呼び出すこと、データプールにおけるステータスペイロードを構築すること、そしてfcp_snd_new_sts_eを呼び出すことを含む。なお、FCPは、新しいツインバッファを割り当て、新しいFCBページを構築し、そしてフレームをサーバに送信する。
【0211】
sm_no_rdwr_handlerエントリポイントは、読み出しまたは書き込み以外のコマンドフレームを処理し、SMによって呼び出される。このインターフェースは、データプール(96バイト)におけるコマンドフレーム、w28におけるIOCBアドレス、w30におけるIOCBステージング領域アドレス、およびスクラッチ1におけるIOCBを予測する。
【0212】
選択されたステップは、I−DSバッファを放棄するためにfcp_discard_iを呼び出すこと、ポートアクティブキューのためにIOCBにキューを入れること、およびコマンドを処理するためにSPに送信することを含む。
【0213】
このセクションは、ピココードシステム(図12を参照)におけるLun Managerコンポーネントを説明する。LMサブシステムは、仮想リクエストを物理リクエストに分解することを担っている。LMサブシステムは、サーバからのリクエストにおける開始LBAおよびブロックの数を参照し、デバイスがネイティブデバイスかまたは仮想デバイスかどうかを決定する。
【0214】
LMサブシステムはまた、開始LBAおよび物理リクエストのブロックの数を識別し、必要な場合、仮想リクエストをいくつかの物理IOに分解する。このLMサブシステムは、新しい物理リクエストが送信されるべき場所を決定する。
【0215】
e405/Ic440(仮想サーバカード)上のテーブルに保持された情報は、SP上でその全体において複製される必要はない。なぜならSPは、コマンドの小さいサブセットを処理するだけであり、TSE上のリーフサイズ制限のためである。多くのバイトフィールドおよびハーフワードフィールドは、このツリー検索メモリにアクセスする場合、サイクルを保存するために、32ビットワードにマージされている。次いで、このワードフィールドは、ピココードによって分解されなければならない。これは高速である。なぜなら、各パイコスレッドは、その自己レジスタセットを有するためである。TSメモリを用いると、他のスレッドからの競合が存在する。
【0216】
HLUN構造は、サーバとVLUNを結合する。このHLUNエントリは、VLUNkey、SERVERkeyを含む。ツリー検索ルックアップがリーフを生成しない場合、
これは、このサーバがリクエストされたLUNを見るように割り当てられないことを意味する。HLUNを生成するためにTSEに供給されたキーは、コマンドのソースポート、FCLUN、およびメッセージヘッダからのDevHandleである。
【0217】
HLUNはサーバLUNとVSX VLUNとの間の結合である。サーバpdevpathのためのキーは、サーバ構造を参照するために使用される。VLUNのためのキーは、VLUN構造を参照するために使用される。
【0218】
HLUNリーフ構造は、以下のように示される。
【0219】
【数1】
上記で示された構造は、SPツリーメモリにおけるリーフデータとして格納されるものである。このリーフは、DevHandleの検索、コマンドFCLUN、およびポート数を介して見出される。vlunKeyフィールドは、VLUNリーフを検索するためのキーとして使用される。initiatorKeyフィールドは、イニシエータPDEVPATHリーフを検索するためのキーとして使用される。フラグフィールドの意図が使用され、保存、ゾーニング、およびua29を示すために使用される。fcaPortNpPortフィールドは、リクエストが来た場所のソースFCASICポート識別子(上部2ビット)およびソースSPポート(DDppppにおける下部6ビット)フォーマットである。
【0220】
VLUNリーフは、その構成と共にVLUNに関する情報を含む。VLUNは、PLUNのセクションから構成され得る。このセクションは、スライスとして公知である。
【0221】
VLUNは、VLUNが構成されるものを説明する構造である。このVLUNは、以下の特徴を含む。LUNタイプは、仮想VSXデバイスであってもよいしネイティブデバイスであってもよい。状態は、VLUNの状態を示す。全体のブロックは、VLUNに関する複数のブロックの数を示す。ブロックサイズは、バイト/ブロックの数を示す。
【0222】
VLUNはまた、そのスライスに関する情報を含む。VLUNは、多くのPLUNを含み得る。各コンポーネントはスライスと呼ばれる。この保持されたスライス情報は、以下のものを含む。SLICE_ENDは、VLUNに関するスライスの末端である。SLICE_OFFSETは、PLUN内部のオフセットである。SLICE_BLKSは、スライス内部のブロックの数である。PLIN_KEYは、PLUNを検索するためのキーである。このキーは、スライスに関する。
【0223】
スライスは、VLUN構造の一部として保持される。このピココードは、IOがどのPLUNに行くのかを決定するためにスライスを介して移動する。これに関して、3つまでのスライスのみの余地があり得る。
【0224】
一旦、VLUNリーフがツリー検索から生成されると、ピココードが、どのスライスがリクエストに含まれるかを見るためにスライスを移動させる。一旦正確なスライスが識別されると、LMは、リクエストの新しい開始LBAを計算し、wksを更新するために、sliceOffsetを使用する。スライス境界を横切るリクエストが処理され得、LMはまた、リクエストされたブロックを計算し得る。
【0225】
同時に、PLUNに対する検索は、スライスにおけるpLunKeyを使用して開始される。これは、PLUNリーフを生成する。
【0226】
VLUNからスライスを分離するために、ローピングを有するLPM検索機構が使用され得る。スライスへの検索は、スライステーブルにおいてリーフを生成する、コマンド開始ブロックアドレスを有するVLUNキーを使用する。次いでピココードは、ローピングサービスによって提供されるリンクしながら、リーフ内の次のエレメントのアドレスを移動させることによって次のスライスに行き、リンクはローピングサービスにおいて提供される。
【0227】
VLUNリーフ構造は以下のとおりである。
【0228】
【数2】
上記で示された構造は、SPツリー検索メモリにおけるリーフデータとして格納されるものである。このリーフは、HLUNに見出されたvlunKeyから見出される。vTypeフィールドは、VLUNが、ネイティブデバイス、連結、区分、ミラーまたはストライプであるかどうかを識別する。scsiDevTypeは、デバイスがDISK、TAPE、SACL等であるかどうかを識別する。状態フィールドは、VLUNの状態を示し、0値は、それが動作的であることを識別する。totalBlksフィールドは、VLUNの全体の能力を特定し、このフィールドは、リクエストの束縛(bound)をチェックするためにピココードによって使用される。このblkSizeフィールドは、VLUNに対してバイト/ブロックであり、リクエストバイト数を計算するために使用され得る。
【0229】
VLUNにおいて3つのスライスが存在し、VLUNが3つの物理デバイスから構成されることを可能にする。単一のスライスにおけるフィールドは、以下のように示される。
【0230】
sliceEndフィールドは、スライスにおけるVLUNのブロック数を終了することである。sliceOffsetフィールドは、スライス中のPLUNへのオフセットである。sliceBlksフィールドは、スライス中のブロックの数である。plunKeyフィールドは、そのスライスが関連付けられるPLUNを検索するために使用される。
【0231】
PLUNupテーブルは、PLUNを検索するために上流SP上で使用される。下流SPによって使用されたPLUNdownテーブルが存在する。このPLUNdownテーブルは、より小さいリーフサイズを含む。
【0232】
PLUNリーフは、以下の情報を含む。LunNumberは、物理的lun数である。このブロックサイズは、物理LUNのためのバイト/ブロックである。ターゲットDMUは、どのDMUにこのリクエストを下流に送信するか、2つの出力データ格納が存在するために重要であるかを特定するフィールドである。DS0/1に関する限り、DS0は、DMU A/Bに接続され、DS1は、DMU C/Dに接続される。このターゲットDSフィールドは、出力側上のどのDSにリクエストを送信するかを特定する。このターゲットブレードフィールドは、リクエストのターゲットブレード数を特定する。
【0233】
PLUNリーフはまた、キーがPLUNまたはPDEVPATHの検索のために使用されるかどうかを特定する下流LIDを含む。下流LIDは、PLUNまたはPDEVPATHを検索するために下流SPにより用いられるキーである。MSBは、キーがPLUNまたはPDEVPATHを検索するために使用されるかどうかを特定する。下流SPは、デバイスに対する複数のパスを有する場合、このキーはPLUNを検索するために使用され、他の場合は、PDEVPATHを検索するために使用される。
【0234】
LMは、VLUNリーフにおけるplunKeyを用いてPLUNリーフを検索する。このリーフから、LMは、物理fclunフィールドを用いてレジスタを更新し、パスを選択した後、FCBページTBフィールドを更新し、FCBページターゲットDMU/DSUフィールドを更新し、そしてPathLIDを用いてイーサネット(R)封入ヘッダーを更新し得る。
【0235】
PLUNリーフ構造は、以下のようである。
【0236】
【数3】
lunNumフィールドは、ポートの後ろにあるLUのLU数である。totalBlksは、LUにおける全体のブロックである。blkSizeは、LUのブロックサイズである。prefPathフィールドは、どのパスを使用するかについてのインジケータであり、静的パスの選択である。パスが変更されることを必要とする場合、SMSは、フィールドを更新する。pathStフィールドは、パスの状態を示すために使用される。pathPortDmuDsuは、ターゲットブレードDMUおよびDSUを示すために使用され、FCBページレジスタをプログラムする場合に使用される。
【0237】
bladeQidフィールドは、ターゲットブレードおよびソースQIDの連結である。QIDは、ソースルーティング情報にプログラムされ、応答が出力側に戻る場合にFCBページにプログラムするために使用され得る。
【0238】
pathLidフィールドは、下流SPの検索として使用される。pathLidにおいて、MSbitは、デバイス下流に対する複数のパスが存在するかどうかを示す。MSbitがクリアである場合、単一パスのみが存在する。次いでこのpathLidは、pdevpath下流を検索するために使用される。MDbitが設定される場合、ルックアップは、PLUNを検索する。
【0239】
上流側では、LMは、イーサネット(R)封入ヘッダーのLLCフィールドを調べ、LIDを抽出する。このLIDは、PLUNdownリーフまたはpDevpathリーフのいずれかを直接検索するために使用され得る。下流SP上でPLUNに対する多重パスが存在する場合、LIDは、MPATHビットセットを有する。次いでこのLIDは、リーフに対するPLUNdownツリーを検索するためにTSEに対するキーとして使用される。MPATHビットがクリアである場合、単一パスのみが存在し、LIDは、pDevPathツリーを直接検索するために使用される。
【0240】
PLUNdownリーフは、以下を含む。prefPathは、使用するのに好ましいパスである。pathStateは、特定のパスの状態である。pathKeyは、pDevPathリーフを検索するために使用される。LMは、prefPathおよびpathStateフィールドを用いてパスを選択し、pDevPathツリー上の検索を開始する。
【0241】
PLUNdown構造は、以下のようである。
【0242】
【数4】
PLUNdown構造は、下流側上で使用される。prefPath構造は、PLUNに対する3つの可能なパスを選択するために使用される。pathStateフィールドは、パスの状態を示す。pathKeyは、pDevpathリーフを検索するためのキーとして使用される。
【0243】
pdevpathは、ストレージまたはサーバへの物理接続を表し得る構造であるが、物理ストレージの後ろのLUNを表さない。pdevpathは、以下のものを含む。
【0244】
FC_IDは、サーバまたはストレージFC idである。MaxRxDataフィールドは、ストレージ/サーバが受信し得る最大フレームサイズを示す。Bbcreditフィールドは、サーバ/ストレージがLOGINプロセスの間に与えられたBBクレジットの数である。ポートは、サーバ/ストレージが取り付けられるSP上のポート数である。
【0245】
pDevPathリーフは、ストレージデバイスに対するサーバまたはパスを表し得る。サーバpDevPathに対するキーは、HLUNリーフにおけるフィールドから来る。デバイスpDevPathに対するキーは、下流SP上のイーサネット(R)封入ヘッダーにおけるLIDから来る。
【0246】
pDevPathリーフ構造は以下のようである。
【0247】
【数5】
portHandleフィールドは、FCASICに対して公知である物理デバイスへのハンドルである。ピココードが物理デバイスに対するIOを実行する場合、そのハンドルがデバイスを識別するためにFCASICにこのハンドルを送る。このポートフィールドは、DDppppフォーマットにおけるSPポート数である。fcaPortフィールドは、FC ASICポートアイデンティティである。
【0248】
ポート構造は、それら自身のSPポートに関する情報を含む。ポート構造は、FCPコードによって使用されるFCID等の情報を含む。このポート構造は、ツリー検索メモリ内にある。SP上に少数のポートしかないために、参照は、ポートCBアドレスを見出すためのアレイへのインデックスを用いてなされる。これは、TSエンジンを用いるよりもより高速であるべきである。
【0249】
以下の段落は、どのようにしてTSE内部にあるLMテーブルが集められるかを示す。
【0250】
TSEにおけるLMテーブルは、仮想サーバカードにおけるLMから集められるようになる。VSCにおけるLMは、ピココードによって使用された構造にと類似の構造を有する。これらの間の差は、ピココード構造がよりコンパクトかつ集積されていることである。
【0251】
PDevPathリーフ(以下の構造を参照)は、SP上の物理デバイスのために存在し、そのデバイス上にそれが取り付けられることにより、pDevPathリーフは、ストレージデバイスまたはイニシエータが取り付けられるSP上にプログラムされる。
【0252】
リーフにおけるpDevPathフィールドは、VSCにおけるPDEVPATH構造から全体的に満たされる。
【0253】
【数6】
fcaDevHandleは、VSC(e405とも呼ばれる)pdevpath.fcaDevHandleから満たされる。このフィールドは、新しいデバイスがFC ASICによって見出された場合e405に与えられ、FC ASICによって使用されたデバイスへのハンドルである。
【0254】
npPortは、e405pdevpath.npPortから満たされる。このフィールドは、2つのエレメント(ポートおよびDMU)を有し、新しいデバイスが見出された場合、e405に与えられた。このnpPortフィールドは、どのDMUにデバイスが取り付けられるかを示す。SPがPOSフォーマットで動作しているため、ポート数は0である。
【0255】
fcaPortIdは、e405pdevpath.fcPortIdから満たされる。デバイスが発見されたFCASICポートのアイデンティティであり、「新しいデバイスレポート」が送信される場合、e405に与えられる。pdevpathリーフをプログラムするために使用されたキーは、pdevpath.pdHandleである。
【0256】
SP上のPLUNUPリーフ(以下の構造を参照)はSP上に存在し、SP上には、ホストに送信されたVLUNが存在し、フレームを下流に運ぶ場所を発見するためにSPによって使用される。lunNumは、e405plun.blukCountフィールドから直接的に満たされ、物理デバイスの後方にLU数がある。このtotalblkSizeは、e405plun.blkCountフィールドから満たされる。このblkSizeは、e405plun.blkSizeから満たされる。
【0257】
PLUNUPリーフは、下流SPへの3つのパスを含み、e405PLUN構造におけるpdevpathポインタのアレイと同様である。このprefPathフィールドは、特定のパスを使用するようにピココードに命令する。この構成swは、リーフ内に正確なインデックスで満たすためにplun.preferredパスを調べる。
【0258】
pathStフィールドは、パスの状態を示すために使用される。e405plun.path.状態フィールドから満たされる。e405は、このフィールドを獲得するためにPLUNからpdevpath構造を向かわせる。
【0259】
pathPortDmuDsuは、下流FCASIC portId、ターゲット下流DMU、およびDSUの組み合わせであり、plun.path.fcaPortIdおよびplun.path.bladePortフィールドから満たされる。構成ソフトウエアは、plun.path.bladePortフィールドからDSUを決定し得る。このDMU/DSUフィールドは前もって決定されなければならない。なぜなら、FCBページは、これらのターゲットパラメータで満たされるためである。
【0260】
bladeQidフィールドは、ターゲット下流ブレード数およびQIDパラメータの組み合わせである。このQIDパラメータはスケジューラのためにあり、plun.path.bladeIdから満たされる。このbladeLidフィールドは、PLUNDownまたはPDEVPATHリーフのいずれかを見出すために下流SP上のルックアップとして使用され、plun.path.bladeLdフィールドから満たされる。
【0261】
このリーフをプログラムするために使用されたキーは、plun.plHandleである。
【0262】
【数7】
VLUNリーフ(以下の構造を参照)は、SPにプログラムされ、そこでは、エクスポートされたVLUNを有するホストが存在する。vtypeフィールドは、e405vlun.devtypeフィールドから満たされる。この状態は、e405vlun.stateフィールドから満たされる。totalBlksおよびblkSizeは、e405vlun.totalBlksおよびvlun.blkSizeフィールドから満たされる。
【0263】
vlunは、3スライスの範囲外から作成され得る。このsliceEndフィールドは、スライスにおける終了仮想ブロックであり、e405vlun.slice.vlunEndから満たされる。sliceOffsetフィールドはPLUNへのオフセットであり、e405vlun.slice.plunOffsetから満たされる。sliceBlksフィールドは、スライス内部のブロックの数であり、e405vlun.slice.blkCountから満たされる。plunKeyフィールドは、PLUNを検索するためのキーとして使用され、e405vlun.slice.dev.handleから満たされる。
【0264】
このリーフをプログラムするために使用されたキーは、vlun.handleである。
【0265】
【数8】
HLUNリーフ(以下の構造を参照)は、SPにプログラムされ、そこでは、ホストにエクスポートされたVLUNが存在する。vlunKeyは、VLUNリーフを参照するために使用され、e405hlun.vLun.handleフィールドから満たされる。initiatorKeyは、ホストpdevpathリーフを参照するために使用され、e405hlun.src.pdHandleフィールドから満たされる。
【0266】
fcaPortDmuDsuは、ソースfcaPort、DMUおよびDSUフィールドとして使用され、DMUを示すhlun.src.fcaPortIdおよびhlun.npPortから取られる。このDSUフィールドは、DMUから見積もられる。
【0267】
eHandleフィールドは、e405HLUNへのハンドルであり、プロキシコマンドがHLUN構造に高速参照を提供するために入る場合、e405に再度送る。
【0268】
リーフをプログラムするために使用されたキーは、FCAPORTID、DevHandle、およびFCLUNに基づく。
【0269】
【数9】
PLUNDownリーフ(以下の構造を参照)は、SPにプログラムされ、そこでは、ストレージデバイスが接続される。prefPathフィールドは、フレームを外部に送信する場合にどのパスインデックスを使用するかを示すために使用され、plun.prefferedPathフィールドから満たされる。
【0270】
選択するために3つのパスが存在する。pathStateフィールドは、パスの状態を示すために使用される。これは、e405plun.path.stateから満たされる。pathKeyは、e405plun.path.pdHandleから満たされる。
【0271】
【数10】
ストレージサーバ100は、lm_cmd_iおよびlm_cmd_eを以下のように含む種々のパブリックインターフェースをインプリメントする。
【0272】
lm_cmd_iは、新しい開始LBAおよびリクエストのためのブロックの数を計算するためにVLUN構造を移動させる。PLUNが複数のパスを介して接続される場合のパスを選択する。このパスはUPSTREAM INGRESS COMMANDであり、それは、HLUNの存在をチェックするためにそのコマンドがTSEで開始した後、SM上流によって呼び出される。
【0273】
以下のデータが使用される。IoCBは、スクラッチ1に共有されたメモリであるべきである。HLUNに対するツリー検索結果は、TSR0領域にあるべきである。フレームはデータプールにあるべきである。W24は、LBAを有するべきであり、w26は、ブロックの数を有するべきである。
【0274】
R20は、RDWRフラグ、すなわち0=RDWR、1=NOT RDWRコマンドである。RDWRコマンドでない場合、LMは、startLBAおよびreqBlksを修正しない。
【0275】
以下のデータが修正される。Iocb.hpLunは、hlumのリーフアドレスを有する。PlunHandleは、下流のために使用され、参照がTAGSに挿入され、ポートハンドルフィールドw24は、物理LBAを有し、そしてW26は、ブロックの物理的な数を有する。FCBページTDMUレジスタが更新される。FCBページDSUレジスタが更新される。
【0276】
FCBページTBレジスタがターゲットブレードを用いて更新される。TAGS.src.TBは、このSPのTBを用いて改変される。TAGS.src.QIDは、上流側でキューを入れるために使用されたターゲットポートを用いて改変される。TAGS.src.FCAportは、上流FCASICポート識別子を用いて改変される。TAGS.src.DMUは、データをイニシエータに戻すために使用された上流DMUを用いて修正される。TAGS.src.DMUは、データをイニシエータに戻すために使用された上流ターゲットDSユニットを用いて修正される。
【0277】
IoCB.riTbladeは、ターゲットブレードで満たされる。IoCB.riTqidは、ターゲットOIDで満たされる。IoCB.riPortDmuDsuは、ターゲットポート、DMU、DSUで満たされる。
【0278】
復帰データは以下のようである。R20−vsxstat.incにおいて定義されたようなステータス、R21−FCLUN、R18−VLUNがネイティブである場合0、VLUNがNOTネイティブである場合1、W24−新しいstartLBA、およびW26−新しいReqBlksである。
【0279】
パケットLLCフィールドにおいて送られたplunHandleからなされる場合、lm_cmd_eは、物理デバイスへのパスを選択するために使用される。パスは、DOWNSTREAM EGRESS COMMANDであり、コマンドパケットを受信した後にFCP下流によって呼び出される。このコマンドは、スクラッチ1によって共有されたメモリに格納されたIoCBを含む種々の入力を使用する。
【0280】
修正されたデータは、宛先ターゲットブレードを用いて改変されたTAGS.dst.TB、知られている場合、下流側でキューを入れるために使用されたターゲットポートを用いて改変されたTAGS.dst.QIDを含む。他の改変されたデータは、下流FCASICポート識別子を用いて改変されたTAGS.dst.FCAport、公知の場合、宛先ターゲットDSUを用いて修正されたTAGS.dst.DMU、宛先ターゲットDSUを用いて改変されたTAGS.dst.DSUを含み、IoCB.tgtPortは、デバイスに接続されたSPポート数を有する。
【0281】
さらに改変されたデータは、IoCB.maxRxDataを含み、IoCB.maxRxDataは、デバイスが受信し得る最大データを有し、IoCB.hpLunは、plunのリーフアドレスを有し、そしてIoCB.prefPathは、選択された好適なパスを有する。
【0282】
復帰データは、R20−vsxstat.incにおいて定義されたようなステータス、R21−デバイスのmaxRxdata、およびR15[1]−出力ポートを含む。
【0283】
動作中では、コードは、イーサネット(R)LLCヘッダーフィールドにおける上流SPから送られたハンドルを抽出する。このハンドルがマルチパスビットセットを有する場合、ハンドルは、PLUNツリー内で検索するために使用される。PLUNリーフからパスが選択される。PLUNリーフ内の各パスはキーを有する。このキーは、PDEVPATHテーブルを介して検索するために使用される。このPDEVPATHリーフは、デバイス情報を有する。PDEVPATH内部では、ポートは、別のPDEVPATHリーフであるFCPORT構造を検索するために使用される。
【0284】
マルチパスビットがNOTセットである場合に、デバイスへの単一のパスのみが存在する。このキーは、PDEVPATHテーブルを直接調べるために使用される。これは、デバイスPDEVPATHリーフを提供する。FCPORT構造の検索がさらに実行される。
【0285】
上記説明が特定の実施形態に集中されてきたが、種々の代替および均等物が当業者の理解の範囲内にある。従って、本発明は、以下の特許請求の範囲およびその均等物に関して規定される。
【図面の簡単な説明】
【0286】
【図1】図1は、本発明の実施形態によるストレージサーバを含むストレージエリアネットワークのブロック図である。
【図2A】図2Aは、本発明の実施形態によるストレージサーバにおけるハードウエアコンポーネントのブロック図である。
【図2B】図2Bは、本発明の実施形態によるストレージサーバにおける管理機能のブロック図である。
【図3】図3は、本発明の実施形態による、PLUN、メディアユニット、およびVLUN間の関係を示す図である。
【図4】図4は、本発明の実施形態による上流および下流コンポーネントを示すブロック図である。
【図5】図5は、本発明の実施形態によるコマンドおよびデータ処理を示すフローチャートである。
【図6】図6は、本発明の実施形態によるツリー検索エンジンの処理を示すフローチャートである。
【図7】図7は、本発明の実施形態によるルーティング情報のデータ図である。
【図8】図8は、本発明の実施形態によるコマンドフレームのデータ図である。
【図9】図9は、本発明の実施形態によるコマンドフレームのタグフィールドのデータ図である。
【図10】図10は、本発明の実施形態による読み出しコマンド処理のフローチャートである。
【図11】図11は、本発明の実施形態による書き込みコマンド処理のフローチャートである。
【図12】図12は、本発明の実施形態によるピココードにおけるモジュールのブロック図である。
【図13】図13は、本発明の実施形態による読み出し動作におけるコマンドフレームヘッダー操作のフローチャートである。
【図14】図14は、本発明の実施形態による書き込み動作におけるコマンドフレームヘッダー操作のフローチャートである。
Claims (19)
- 複数のホストコンピュータおよび複数のストレージデバイスを接続するストレージエリアネットワークにおけるストレージサーバであって、
該複数のホストコンピュータおよび該複数のストレージデバイスに関連付けられた複数のストレージプロセッサであって、該複数のストレージプロセッサは、複数のコマンドパケットおよび複数のデータパケットを受信する、複数のストレージプロセッサと、
該複数のストレージプロセッサを接続するスイッチング回路と、
該スイッチング回路を介して、該複数のコマンドパケットのコマンドパケットに従って、該複数のストレージプロセッサの最初のストレージプロセッサと第2のストレージプロセッサとの間のパスを構成すること、
該データパケットを完全に受信する前に、該スイッチング回路を介して該最初のストレージプロセッサと該第2のストレージプロセッサとの間で、該パスを介して該複数のデータパケットのデータパケットをルーティングすること、
を含む処理を実行するように構成されたマイクロエンジンと
を含む、ストレージサーバ。 - 前記最初のストレージプロセッサは、1つ以上の仮想論理ユニット数(VLUN)を1つ以上の物理論理ユニット数(PLUN)と関連付けるルックアップテーブルを含み、該1つ以上のPLUNは、前記複数のストレージデバイスに関連付けられ、該1つ以上のVLUNは、該1つ以上のPLUNの仮想化である、請求項1に記載のストレージサーバ。
- 前記マイクロエンジンは、前記複数のストレージプロセッサの内の1つのコンポーネントである、請求項1に記載のストレージサーバ。
- 複数のマイクロエンジンであって、該複数のマイクロエンジンは、前記複数のストレージプロセッサのコンポーネントである、複数のマイクロエンジンをさらに含む、請求項1に記載のストレージサーバ。
- 前記複数のデータパケットは、前記複数のホストコンピュータの内の1つから受信される、請求項1に記載のストレージサーバ。
- 前記複数のデータパケットは、前記複数のストレージデバイスの内の1つから受信される、請求項1に記載のストレージサーバ。
- 前記複数のデータパケットは、前記複数のストレージデバイスの内の1より多くから受信される、請求項1に記載のストレージサーバ。
- 前記複数のデータパケットは、前記複数のホストコンピュータの内の1つにルーティングされる、請求項1に記載のストレージサーバ。
- 前記複数のデータパケットは、前記複数のストレージデバイスの内の1つにルーティングされる、請求項1に記載のストレージサーバ。
- 前記複数のデータパケットは、前記複数のストレージデバイスの内の1より多くルーティングされる、請求項1に記載のストレージサーバ。
- 前記マイクロエンジンは、前記コマンドパケットに従って複数のパスを構成することを含む処理を実行するようにさらに構成される、請求項1に記載のストレージサーバ。
- 前記最初のストレージプロセッサは、前記複数のホストコンピュータの内の1つから前記コマンドパケットを受信する、請求項1に記載のストレージサーバ。
- 前記最初のストレージプロセッサは、前記複数のストレージプロセッサの内の1つから前記コマンドパケットを受信する、請求項1に記載のストレージサーバ。
- 前記マイクロエンジンは、前記パスを構成するためにツリー検索を実行するために、前記コマンドパケットにおけるコマンドハンドルを使用する、請求項1に記載のストレージサーバ。
- 前記最初のストレージプロセッサは、ハンドルを前記第2のストレージプロセッサに送る、請求項1に記載のストレージサーバ。
- 前記最初のストレージプロセッサおよび前記第2のストレージプロセッサは、単一ストレージプロセッサである、請求項1に記載のストレージサーバ。
- 前記マイクロエンジンは、ルーティングタグに従って前記データパケットをルーティングする、請求項1に記載のストレージサーバ。
- 構成コマンドを介して前記複数のストレージプロセッサの内の1つにおけるルックアップテーブルをプログラムするように構成された仮想サーバコントローラをさらに含み、該ルックアップテーブルは、1つ以上の仮想倫理ユニット数(VLUN)を1つ以上の物理論理ユニット数(PLUN)に関連付ける、請求項1に記載のストレージサーバ。
- 複数のホストコンピュータと複数のストレージデバイスとの間のストレージサーバを接続するストレージエリアネットワークにおけるデータのルーティング方法であって、該ストレージサーバは、複数のストレージプロセッサおよびスイッチング回路を有し、該複数のストレージプロセッサは、複数のコマンドパケットおよび複数のデータパケットを受信し、
該スイッチング回路を介して、該複数のコマンドパケットのコマンドパケットに従って、該複数のストレージプロセッサの最初のストレージプロセッサと第2のストレージプロセッサとの間にパスを構成するステップと、
該データパケットを完全に受信する前に、該スイッチング回路を介して該最初のストレージプロセッサと該第2のストレージプロセッサとの間で該パスを介して該複数のデータパケットのデータパケットをルーティングするステップと
を含む、方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US26869401P | 2001-02-13 | 2001-02-13 | |
PCT/US2002/005504 WO2002065298A1 (en) | 2001-02-13 | 2002-02-13 | Silicon-based storage virtualization server |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004523831A true JP2004523831A (ja) | 2004-08-05 |
JP4457185B2 JP4457185B2 (ja) | 2010-04-28 |
Family
ID=23024069
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002564745A Expired - Lifetime JP4457185B2 (ja) | 2001-02-13 | 2002-02-13 | シリコンベースのストレージ仮想化サーバ |
JP2002564739A Expired - Lifetime JP4457184B2 (ja) | 2001-02-13 | 2002-02-13 | ストレージシステムにおけるフェイルオーバー処理 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002564739A Expired - Lifetime JP4457184B2 (ja) | 2001-02-13 | 2002-02-13 | ストレージシステムにおけるフェイルオーバー処理 |
Country Status (7)
Country | Link |
---|---|
US (7) | US7039827B2 (ja) |
EP (4) | EP1370945B1 (ja) |
JP (2) | JP4457185B2 (ja) |
AT (1) | ATE480822T1 (ja) |
AU (1) | AU2002306495A1 (ja) |
DE (1) | DE60237583D1 (ja) |
WO (4) | WO2002065309A1 (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006517699A (ja) * | 2003-01-13 | 2006-07-27 | シエラ・ロジック、インコーポレイテッド | 高可用性大容量ストレージデバイスシェルフ |
JP2006209727A (ja) * | 2005-01-25 | 2006-08-10 | Seagate Technology Llc | 書き込みリファレンスメッシュを構成する方法およびシステム |
JP2008529167A (ja) * | 2005-01-27 | 2008-07-31 | ネットワーク・アプライアンス・インコーポレイテッド | 協調的共用ストレージアーキテクチャ |
JP2013542476A (ja) * | 2010-08-20 | 2013-11-21 | インターナショナル・ビジネス・マシーンズ・コーポレーション | ファブリックに対する情報を集めるためにエージェントの等価サブセットを定める方法、およびそのシステム。 |
Families Citing this family (807)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5220974B2 (ja) * | 1999-10-14 | 2013-06-26 | ブルアーク ユーケー リミテッド | ハードウェア実行又はオペレーティングシステム機能の加速のための装置及び方法 |
US8219681B1 (en) * | 2004-03-26 | 2012-07-10 | Emc Corporation | System and method for managing provisioning of storage resources in a network with virtualization of resources in such a network |
DE60130665T2 (de) * | 2000-08-25 | 2008-06-26 | British Telecommunications P.L.C. | Audiodatenverarbeitung |
US7111072B1 (en) | 2000-09-13 | 2006-09-19 | Cosine Communications, Inc. | Packet routing system and method |
US6823477B1 (en) * | 2001-01-23 | 2004-11-23 | Adaptec, Inc. | Method and apparatus for a segregated interface for parameter configuration in a multi-path failover system |
US7203730B1 (en) | 2001-02-13 | 2007-04-10 | Network Appliance, Inc. | Method and apparatus for identifying storage devices |
WO2002065309A1 (en) * | 2001-02-13 | 2002-08-22 | Candera, Inc. | System and method for policy based storage provisioning and management |
US7200646B2 (en) | 2001-04-25 | 2007-04-03 | Sun Microsystems, Inc. | System and method for on-demand node creation for fabric devices |
US7171474B2 (en) * | 2001-04-25 | 2007-01-30 | Sun Microsystems, Inc. | Persistent repository for on-demand node creation for fabric devices |
US20020194407A1 (en) * | 2001-04-25 | 2002-12-19 | Kim Hyon T. | Maintaining fabric device configuration through dynamic reconfiguration |
US6766466B1 (en) * | 2001-05-15 | 2004-07-20 | Lsi Logic Corporation | System and method for isolating fibre channel failures in a SAN environment |
US7181547B1 (en) | 2001-06-28 | 2007-02-20 | Fortinet, Inc. | Identifying nodes in a ring network |
US7343410B2 (en) * | 2001-06-28 | 2008-03-11 | Finisar Corporation | Automated creation of application data paths in storage area networks |
US6654241B2 (en) * | 2001-06-29 | 2003-11-25 | Intel Corporation | High availability small foot-print server |
US7571215B2 (en) | 2001-07-16 | 2009-08-04 | Bea Systems, Inc. | Data replication protocol |
US6918013B2 (en) * | 2001-07-16 | 2005-07-12 | Bea Systems, Inc. | System and method for flushing bean cache |
US20030023898A1 (en) * | 2001-07-16 | 2003-01-30 | Jacobs Dean Bernard | Layered architecture for data replication |
US7409420B2 (en) | 2001-07-16 | 2008-08-05 | Bea Systems, Inc. | Method and apparatus for session replication and failover |
US7702791B2 (en) | 2001-07-16 | 2010-04-20 | Bea Systems, Inc. | Hardware load-balancing apparatus for session replication |
US6944785B2 (en) * | 2001-07-23 | 2005-09-13 | Network Appliance, Inc. | High-availability cluster virtual server system |
US7028030B2 (en) * | 2001-08-30 | 2006-04-11 | Bea Systems, Inc. | Cluster caching with concurrency checking |
US20030046230A1 (en) * | 2001-08-30 | 2003-03-06 | Jacobs Dean Bernard | Method for maintaining account consistency |
US7089245B1 (en) | 2001-08-31 | 2006-08-08 | Bmc Software, Inc. | Service desk data transfer interface |
US7113980B2 (en) * | 2001-09-06 | 2006-09-26 | Bea Systems, Inc. | Exactly once JMS communication |
US7472231B1 (en) | 2001-09-07 | 2008-12-30 | Netapp, Inc. | Storage area network data cache |
US7032136B1 (en) * | 2001-09-07 | 2006-04-18 | Network Appliance, Inc. | Auto regression test for network-based storage virtualization system |
US7171434B2 (en) * | 2001-09-07 | 2007-01-30 | Network Appliance, Inc. | Detecting unavailability of primary central processing element, each backup central processing element associated with a group of virtual logic units and quiescing I/O operations of the primary central processing element in a storage virtualization system |
US20030055932A1 (en) * | 2001-09-19 | 2003-03-20 | Dell Products L.P. | System and method for configuring a storage area network |
US7864758B1 (en) | 2001-09-28 | 2011-01-04 | Emc Corporation | Virtualization in a storage system |
US7707304B1 (en) | 2001-09-28 | 2010-04-27 | Emc Corporation | Storage switch for storage area network |
US7404000B2 (en) * | 2001-09-28 | 2008-07-22 | Emc Corporation | Protocol translation in a storage system |
US7185062B2 (en) * | 2001-09-28 | 2007-02-27 | Emc Corporation | Switch-based storage services |
US7421509B2 (en) * | 2001-09-28 | 2008-09-02 | Emc Corporation | Enforcing quality of service in a storage network |
US7558264B1 (en) | 2001-09-28 | 2009-07-07 | Emc Corporation | Packet classification in a storage system |
JP2005505819A (ja) * | 2001-09-28 | 2005-02-24 | マランティ ネットワークス インコーポレイテッド | 記憶システムにおけるパケットの分類 |
US6976134B1 (en) * | 2001-09-28 | 2005-12-13 | Emc Corporation | Pooling and provisioning storage resources in a storage network |
US20030067874A1 (en) * | 2001-10-10 | 2003-04-10 | See Michael B. | Central policy based traffic management |
US7043663B1 (en) * | 2001-11-15 | 2006-05-09 | Xiotech Corporation | System and method to monitor and isolate faults in a storage area network |
US7069468B1 (en) | 2001-11-15 | 2006-06-27 | Xiotech Corporation | System and method for re-allocating storage area network resources |
US7127633B1 (en) * | 2001-11-15 | 2006-10-24 | Xiotech Corporation | System and method to failover storage area network targets from one interface to another |
JP2005512190A (ja) * | 2001-11-30 | 2005-04-28 | オラクル・インターナショナル・コーポレイション | ネットワーク化システムにおけるリソースの高可用性をもたらす実複合オブジェクト |
US7730153B1 (en) * | 2001-12-04 | 2010-06-01 | Netapp, Inc. | Efficient use of NVRAM during takeover in a node cluster |
KR100408047B1 (ko) * | 2001-12-24 | 2003-12-01 | 엘지전자 주식회사 | 이동통신 시스템의 프로세서 보드 이중화 장치 및 방법 |
US7499410B2 (en) * | 2001-12-26 | 2009-03-03 | Cisco Technology, Inc. | Fibre channel switch that enables end devices in different fabrics to communicate with one another while retaining their unique fibre channel domain—IDs |
US7017023B1 (en) * | 2002-01-14 | 2006-03-21 | Veritas Operating Corporation | Generalized architecture for automatic storage configuration for diverse server applications |
US6898587B2 (en) * | 2002-01-18 | 2005-05-24 | Bea Systems, Inc. | System and method for performing commutative operations in data access systems |
US6978278B2 (en) * | 2002-01-18 | 2005-12-20 | Bea Systems, Inc. | System and method for heterogeneous caching |
US20030140128A1 (en) * | 2002-01-18 | 2003-07-24 | Dell Products L.P. | System and method for validating a network |
US7020684B2 (en) * | 2002-01-18 | 2006-03-28 | Bea Systems, Inc. | System and method for optimistic caching |
US7433299B2 (en) * | 2002-01-24 | 2008-10-07 | Brocade Communications Systems, Inc. | Fault-tolerant updates to a distributed fibre channel database |
US7290277B1 (en) * | 2002-01-24 | 2007-10-30 | Avago Technologies General Ip Pte Ltd | Control of authentication data residing in a network device |
US6963932B2 (en) * | 2002-01-30 | 2005-11-08 | Intel Corporation | Intermediate driver having a fail-over function for a virtual network interface card in a system utilizing Infiniband architecture |
US20030158920A1 (en) * | 2002-02-05 | 2003-08-21 | Sun Microsystems, Inc. | Method, system, and program for supporting a level of service for an application |
US7403996B2 (en) * | 2002-02-21 | 2008-07-22 | Bea Systems, Inc. | Systems and methods for migratable services |
AU2003216332A1 (en) * | 2002-02-21 | 2003-09-09 | Bea Systems, Inc. | System and method for message driven bean service migration |
US7152181B2 (en) * | 2002-02-22 | 2006-12-19 | Bea Systems, Inc. | Method for highly available transaction recovery for transaction processing systems |
US7178050B2 (en) * | 2002-02-22 | 2007-02-13 | Bea Systems, Inc. | System for highly available transaction recovery for transaction processing systems |
US7421478B1 (en) | 2002-03-07 | 2008-09-02 | Cisco Technology, Inc. | Method and apparatus for exchanging heartbeat messages and configuration information between nodes operating in a master-slave configuration |
US6954839B2 (en) * | 2002-03-13 | 2005-10-11 | Hitachi, Ltd. | Computer system |
CA2377649C (en) * | 2002-03-20 | 2009-02-03 | Ibm Canada Limited-Ibm Canada Limitee | Dynamic cluster database architecture |
GB0206604D0 (en) * | 2002-03-20 | 2002-05-01 | Global Continuity Plc | Improvements relating to overcoming data processing failures |
US20030187987A1 (en) * | 2002-03-29 | 2003-10-02 | Messick Randall E. | Storage area network with multiple pathways for command paths |
US7616637B1 (en) | 2002-04-01 | 2009-11-10 | Cisco Technology, Inc. | Label switching in fibre channel networks |
JP2003296205A (ja) * | 2002-04-04 | 2003-10-17 | Hitachi Ltd | ネットワーク構成機器特定方法及びその実施システム並びにその処理プログラム |
JP2003296037A (ja) * | 2002-04-05 | 2003-10-17 | Hitachi Ltd | 計算機システム |
US7200610B1 (en) | 2002-04-22 | 2007-04-03 | Cisco Technology, Inc. | System and method for configuring fibre-channel devices |
US7415535B1 (en) | 2002-04-22 | 2008-08-19 | Cisco Technology, Inc. | Virtual MAC address system and method |
US7188194B1 (en) | 2002-04-22 | 2007-03-06 | Cisco Technology, Inc. | Session-based target/LUN mapping for a storage area network and associated method |
US7165258B1 (en) | 2002-04-22 | 2007-01-16 | Cisco Technology, Inc. | SCSI-based storage area network having a SCSI router that routes traffic between SCSI and IP networks |
JP2003316616A (ja) * | 2002-04-24 | 2003-11-07 | Hitachi Ltd | 計算機システム |
JP4704659B2 (ja) * | 2002-04-26 | 2011-06-15 | 株式会社日立製作所 | 記憶装置システムの制御方法および記憶制御装置 |
US7385971B1 (en) | 2002-05-09 | 2008-06-10 | Cisco Technology, Inc. | Latency reduction in network data transfer operations |
US7509436B1 (en) | 2002-05-09 | 2009-03-24 | Cisco Technology, Inc. | System and method for increased virtual driver throughput |
US7240098B1 (en) | 2002-05-09 | 2007-07-03 | Cisco Technology, Inc. | System, method, and software for a virtual host bus adapter in a storage-area network |
US7447687B2 (en) * | 2002-05-10 | 2008-11-04 | International Business Machines Corporation | Methods to browse database query information |
US7315960B2 (en) * | 2002-05-31 | 2008-01-01 | Hitachi, Ltd. | Storage area network system |
US7376125B1 (en) | 2002-06-04 | 2008-05-20 | Fortinet, Inc. | Service processing switch |
US7206288B2 (en) * | 2002-06-12 | 2007-04-17 | Cisco Technology, Inc. | Methods and apparatus for characterizing a route in fibre channel fabric |
US20040015611A1 (en) * | 2002-06-25 | 2004-01-22 | Kim Hyon T. | Interfaces to multiple layers of device properties in a storage network |
US7092990B2 (en) * | 2002-06-26 | 2006-08-15 | International Business Machines Corporation | Handling node address failure in a distributed nodal system of processors |
US7353305B2 (en) * | 2002-06-28 | 2008-04-01 | Brocade Communications Systems, Inc. | Apparatus and method for data virtualization in a storage processing device |
US8200871B2 (en) * | 2002-06-28 | 2012-06-12 | Brocade Communications Systems, Inc. | Systems and methods for scalable distributed storage processing |
US7752361B2 (en) * | 2002-06-28 | 2010-07-06 | Brocade Communications Systems, Inc. | Apparatus and method for data migration in a storage processing device |
US20040006587A1 (en) * | 2002-07-02 | 2004-01-08 | Dell Products L.P. | Information handling system and method for clustering with internal cross coupled storage |
US7316016B2 (en) * | 2002-07-03 | 2008-01-01 | Tripwire, Inc. | Homogeneous monitoring of heterogeneous nodes |
US8140635B2 (en) | 2005-03-31 | 2012-03-20 | Tripwire, Inc. | Data processing environment change management methods and apparatuses |
US7805449B1 (en) | 2004-10-28 | 2010-09-28 | Stored IQ | System, method and apparatus for enterprise policy management |
US8417678B2 (en) * | 2002-07-30 | 2013-04-09 | Storediq, Inc. | System, method and apparatus for enterprise policy management |
AU2003265335A1 (en) * | 2002-07-30 | 2004-02-16 | Deepfile Corporation | Method and apparatus for managing file systems and file-based data storage |
US8612404B2 (en) * | 2002-07-30 | 2013-12-17 | Stored Iq, Inc. | Harvesting file system metsdata |
US6948044B1 (en) * | 2002-07-30 | 2005-09-20 | Cisco Systems, Inc. | Methods and apparatus for storage virtualization |
US7120728B2 (en) * | 2002-07-31 | 2006-10-10 | Brocade Communications Systems, Inc. | Hardware-based translating virtualization switch |
US7269168B2 (en) * | 2002-07-31 | 2007-09-11 | Brocade Communications Systems, Inc. | Host bus adaptor-based virtualization switch |
US8909976B2 (en) * | 2002-08-12 | 2014-12-09 | Sheng Tai (Ted) Tsao | Method and apparatus for web based storage on demand |
US7702786B2 (en) * | 2002-08-09 | 2010-04-20 | International Business Machines Corporation | Taking a resource offline in a storage network |
FI119407B (fi) * | 2002-08-28 | 2008-10-31 | Sap Ag | Korkean palvelutason ohjelmistopohjainen yhteyspalvelin |
JP3957065B2 (ja) * | 2002-08-28 | 2007-08-08 | 富士通株式会社 | ネットワーク計算機システムおよび管理装置 |
US7096383B2 (en) | 2002-08-29 | 2006-08-22 | Cosine Communications, Inc. | System and method for virtual router failover in a network routing system |
US7363346B2 (en) * | 2002-09-07 | 2008-04-22 | Appistry, Inc. | Reliably storing information across multiple computers such as in a hive of computers |
US7379959B2 (en) | 2002-09-07 | 2008-05-27 | Appistry, Inc. | Processing information using a hive of computing engines including request handlers and process handlers |
US7725568B2 (en) * | 2002-09-09 | 2010-05-25 | Netapp, Inc. | Method and apparatus for network storage flow control |
JP2004110367A (ja) * | 2002-09-18 | 2004-04-08 | Hitachi Ltd | 記憶装置システムの制御方法、記憶制御装置、および記憶装置システム |
US20040064461A1 (en) * | 2002-10-01 | 2004-04-01 | Subramaniyam Pooni | Method and arrangement for dynamic detection of SCSI devices on linux host |
US7409583B2 (en) | 2002-10-07 | 2008-08-05 | Hitachi, Ltd. | Volume and failure management method on a network having a storage device |
JP4130615B2 (ja) * | 2003-07-02 | 2008-08-06 | 株式会社日立製作所 | ストレージ装置を有するネットワークにおける障害情報管理方法及び管理サーバ |
US7707184B1 (en) * | 2002-10-09 | 2010-04-27 | Netapp, Inc. | System and method for snapshot full backup and hard recovery of a database |
US7752294B2 (en) * | 2002-10-28 | 2010-07-06 | Netapp, Inc. | Method and system for dynamic expansion and contraction of nodes in a storage area network |
US7080229B2 (en) * | 2002-10-28 | 2006-07-18 | Network Appliance Inc. | Method and system for strategy driven provisioning of storage in a storage area network |
US8041735B1 (en) | 2002-11-01 | 2011-10-18 | Bluearc Uk Limited | Distributed file system and method |
US7457822B1 (en) | 2002-11-01 | 2008-11-25 | Bluearc Uk Limited | Apparatus and method for hardware-based file system |
US7263593B2 (en) | 2002-11-25 | 2007-08-28 | Hitachi, Ltd. | Virtualization controller and data transfer control method |
US7433326B2 (en) * | 2002-11-27 | 2008-10-07 | Cisco Technology, Inc. | Methods and devices for exchanging peer parameters between network devices |
GB2395810B (en) * | 2002-11-29 | 2005-09-28 | Ibm | Multi-requester detection of potential logical unit thrashing and preemptive application of preventive or ameliorative measures |
US7583591B2 (en) * | 2002-12-08 | 2009-09-01 | Intel Corporation | Facilitating communications with clustered servers |
US7430513B2 (en) * | 2002-12-17 | 2008-09-30 | Baydel North America, Inc. | Data storage management driven by business objectives |
US7716167B2 (en) * | 2002-12-18 | 2010-05-11 | International Business Machines Corporation | System and method for automatically building an OLAP model in a relational database |
US7792797B2 (en) * | 2002-12-24 | 2010-09-07 | International Business Machines Corporation | Fail over resource manager access in a content management system |
US7469290B1 (en) * | 2002-12-31 | 2008-12-23 | Emc Corporation | Automatic system resource management |
US7334014B2 (en) * | 2003-01-03 | 2008-02-19 | Availigent, Inc. | Consistent time service for fault-tolerant distributed systems |
US7320084B2 (en) * | 2003-01-13 | 2008-01-15 | Sierra Logic | Management of error conditions in high-availability mass-storage-device shelves by storage-shelf routers |
US7953694B2 (en) | 2003-01-13 | 2011-05-31 | International Business Machines Corporation | Method, system, and program for specifying multidimensional calculations for a relational OLAP engine |
JP2004220216A (ja) | 2003-01-14 | 2004-08-05 | Hitachi Ltd | San/nas統合型ストレージ装置 |
WO2004063911A1 (en) * | 2003-01-16 | 2004-07-29 | Koninklijke Philips Electronics N.V. | Preventing distribution of modified or corrupted files |
JP2004220450A (ja) * | 2003-01-16 | 2004-08-05 | Hitachi Ltd | ストレージ装置、その導入方法、及びその導入プログラム |
US7181642B1 (en) * | 2003-01-17 | 2007-02-20 | Unisys Corporation | Method for distributing the processing among multiple synchronization paths in a computer system utilizing separate servers for redundancy |
JP4345313B2 (ja) * | 2003-01-24 | 2009-10-14 | 株式会社日立製作所 | ポリシーに基づいたストレージシステムの運用管理方法 |
US7606239B2 (en) * | 2003-01-31 | 2009-10-20 | Brocade Communications Systems, Inc. | Method and apparatus for providing virtual ports with attached virtual devices in a storage area network |
US8081642B2 (en) * | 2003-01-31 | 2011-12-20 | Brocade Communications Systems, Inc. | Method and apparatus for routing between fibre channel fabrics |
US20040199618A1 (en) * | 2003-02-06 | 2004-10-07 | Knight Gregory John | Data replication solution |
US7831736B1 (en) | 2003-02-27 | 2010-11-09 | Cisco Technology, Inc. | System and method for supporting VLANs in an iSCSI |
US20040181707A1 (en) * | 2003-03-11 | 2004-09-16 | Hitachi, Ltd. | Method and apparatus for seamless management for disaster recovery |
US7295572B1 (en) | 2003-03-26 | 2007-11-13 | Cisco Technology, Inc. | Storage router and method for routing IP datagrams between data path processors using a fibre channel switch |
US7433300B1 (en) | 2003-03-28 | 2008-10-07 | Cisco Technology, Inc. | Synchronization of configuration data in storage-area networks |
US7904599B1 (en) | 2003-03-28 | 2011-03-08 | Cisco Technology, Inc. | Synchronization and auditing of zone configuration data in storage-area networks |
JP4301849B2 (ja) * | 2003-03-31 | 2009-07-22 | 株式会社日立製作所 | 情報処理方法及びその実施システム並びにその処理プログラム並びにディザスタリカバリ方法およびシステム並びにその処理を実施する記憶装置およびその制御処理方法 |
AU2004227949B9 (en) * | 2003-04-03 | 2010-07-22 | Commvault Systems, Inc. | System and method for dynamically performing storage operations in a computer network |
US7895191B2 (en) | 2003-04-09 | 2011-02-22 | International Business Machines Corporation | Improving performance of database queries |
US7382776B1 (en) | 2003-04-15 | 2008-06-03 | Brocade Communication Systems, Inc. | Performing block storage virtualization at a switch |
US7460528B1 (en) | 2003-04-15 | 2008-12-02 | Brocade Communications Systems, Inc. | Processing data packets at a storage service module of a switch |
US7529981B2 (en) * | 2003-04-17 | 2009-05-05 | International Business Machines Corporation | System management infrastructure for corrective actions to servers with shared resources |
US7739543B1 (en) * | 2003-04-23 | 2010-06-15 | Netapp, Inc. | System and method for transport-level failover for loosely coupled iSCSI target devices |
US7260737B1 (en) * | 2003-04-23 | 2007-08-21 | Network Appliance, Inc. | System and method for transport-level failover of FCP devices in a cluster |
US20040215831A1 (en) * | 2003-04-25 | 2004-10-28 | Hitachi, Ltd. | Method for operating storage system |
US7668876B1 (en) * | 2003-04-25 | 2010-02-23 | Symantec Operating Corporation | Snapshot-based replication infrastructure for efficient logging with minimal performance effect |
US7107293B2 (en) * | 2003-04-30 | 2006-09-12 | International Business Machines Corporation | Nested recovery scope management for stateless recovery agents |
US7519008B2 (en) * | 2003-06-05 | 2009-04-14 | International Business Machines Corporation | Ineligible group member status |
US7136974B2 (en) * | 2003-06-19 | 2006-11-14 | Pillar Data Systems, Inc. | Systems and methods of data migration in snapshot operations |
JP4871729B2 (ja) * | 2003-06-23 | 2012-02-08 | エミュレックス デザイン アンド マニュファクチュアリング コーポレーション | ストレージシェルフ内で発生するエラー及びイベントをハンドリングする方法 |
JP2005018193A (ja) | 2003-06-24 | 2005-01-20 | Hitachi Ltd | ディスク装置のインタフェースコマンド制御方法ならびに計算機システム |
US8261037B2 (en) * | 2003-07-11 | 2012-09-04 | Ca, Inc. | Storage self-healing and capacity planning system and method |
US7428620B2 (en) * | 2003-08-19 | 2008-09-23 | International Business Machines Corporation | Method for switching data library managers |
US8776050B2 (en) * | 2003-08-20 | 2014-07-08 | Oracle International Corporation | Distributed virtual machine monitor for managing multiple virtual resources across multiple physical nodes |
US20050080982A1 (en) * | 2003-08-20 | 2005-04-14 | Vasilevsky Alexander D. | Virtual host bus adapter and method |
JP2005071196A (ja) * | 2003-08-27 | 2005-03-17 | Hitachi Ltd | ディスクアレイ装置、及びその障害情報の制御方法 |
JP4386694B2 (ja) * | 2003-09-16 | 2009-12-16 | 株式会社日立製作所 | 記憶システム及び記憶制御装置 |
US7219201B2 (en) | 2003-09-17 | 2007-05-15 | Hitachi, Ltd. | Remote storage disk control device and method for controlling the same |
JP4598387B2 (ja) * | 2003-09-17 | 2010-12-15 | 株式会社日立製作所 | 記憶システム |
US7839843B2 (en) | 2003-09-18 | 2010-11-23 | Cisco Technology, Inc. | Distributed forwarding in virtual network devices |
US7751416B2 (en) | 2003-09-18 | 2010-07-06 | Cisco Technology, Inc. | Virtual network device |
JP4307202B2 (ja) | 2003-09-29 | 2009-08-05 | 株式会社日立製作所 | 記憶システム及び記憶制御装置 |
US20050071709A1 (en) * | 2003-09-30 | 2005-03-31 | Rosenstock Harold N. | InfiniBand architecture subnet derived database elements |
US8892702B2 (en) * | 2003-09-30 | 2014-11-18 | International Business Machines Corporation | Policy driven autonomic computing-programmatic policy definitions |
US7451201B2 (en) * | 2003-09-30 | 2008-11-11 | International Business Machines Corporation | Policy driven autonomic computing-specifying relationships |
US7533173B2 (en) * | 2003-09-30 | 2009-05-12 | International Business Machines Corporation | Policy driven automation - specifying equivalent resources |
JP4492084B2 (ja) * | 2003-10-07 | 2010-06-30 | 株式会社日立製作所 | ストレージパス制御方法 |
US8526427B1 (en) | 2003-10-21 | 2013-09-03 | Cisco Technology, Inc. | Port-based loadsharing for a satellite switch |
US20050091426A1 (en) * | 2003-10-23 | 2005-04-28 | Horn Robert L. | Optimized port selection for command completion in a multi-ported storage controller system |
JP4420275B2 (ja) * | 2003-11-12 | 2010-02-24 | 株式会社日立製作所 | フェイルオーバクラスタシステム及びフェイルオーバクラスタシステムを用いたプログラムのインストール方法 |
US7418548B2 (en) * | 2003-11-18 | 2008-08-26 | Intel Corporation | Data migration from a non-raid volume to a raid volume |
US20050114465A1 (en) * | 2003-11-20 | 2005-05-26 | International Business Machines Corporation | Apparatus and method to control access to logical volumes using one or more copy services |
US7769861B2 (en) * | 2003-11-24 | 2010-08-03 | International Business Machines Corporation | Apparatus, system, and method for modeling for storage provisioning |
US20050114595A1 (en) * | 2003-11-26 | 2005-05-26 | Veritas Operating Corporation | System and method for emulating operating system metadata to provide cross-platform access to storage volumes |
JP4156499B2 (ja) | 2003-11-28 | 2008-09-24 | 株式会社日立製作所 | ディスクアレイ装置 |
US20050125557A1 (en) * | 2003-12-08 | 2005-06-09 | Dell Products L.P. | Transaction transfer during a failover of a cluster controller |
US7734561B2 (en) * | 2003-12-15 | 2010-06-08 | International Business Machines Corporation | System and method for providing autonomic management of a networked system using an action-centric approach |
US7921262B1 (en) | 2003-12-18 | 2011-04-05 | Symantec Operating Corporation | System and method for dynamic storage device expansion support in a storage virtualization environment |
US7734750B2 (en) * | 2003-12-19 | 2010-06-08 | International Business Machines Corporation | Real-time feedback for policies for computing system management |
US7966294B1 (en) * | 2004-01-08 | 2011-06-21 | Netapp, Inc. | User interface system for a clustered storage system |
JP4568502B2 (ja) * | 2004-01-09 | 2010-10-27 | 株式会社日立製作所 | 情報処理システムおよび管理装置 |
US7383463B2 (en) * | 2004-02-04 | 2008-06-03 | Emc Corporation | Internet protocol based disaster recovery of a server |
US20050193257A1 (en) * | 2004-02-06 | 2005-09-01 | Matsushita Avionics Systems Corporation | System and method for improving network reliability |
US8990430B2 (en) | 2004-02-19 | 2015-03-24 | Cisco Technology, Inc. | Interface bundles in virtual network devices |
JP2005234834A (ja) * | 2004-02-19 | 2005-09-02 | Hitachi Ltd | 論理ボリュームの再配置方法 |
JP4391265B2 (ja) | 2004-02-26 | 2009-12-24 | 株式会社日立製作所 | ストレージサブシステムおよび性能チューニング方法 |
US7533181B2 (en) * | 2004-02-26 | 2009-05-12 | International Business Machines Corporation | Apparatus, system, and method for data access management |
US7565568B1 (en) * | 2004-02-27 | 2009-07-21 | Veritas Operating Corporation | Method and system for virtualization switch failover |
JP3976324B2 (ja) * | 2004-02-27 | 2007-09-19 | 株式会社日立製作所 | セキュリティレベルに応じて記憶領域を計算機に割り当てるシステム |
US7949792B2 (en) * | 2004-02-27 | 2011-05-24 | Cisco Technology, Inc. | Encoding a TCP offload engine within FCP |
US8224937B2 (en) * | 2004-03-04 | 2012-07-17 | International Business Machines Corporation | Event ownership assigner with failover for multiple event server system |
US20050210041A1 (en) * | 2004-03-18 | 2005-09-22 | Hitachi, Ltd. | Management method for data retention |
JP4452533B2 (ja) | 2004-03-19 | 2010-04-21 | 株式会社日立製作所 | システムおよび記憶装置システム |
US20050216428A1 (en) * | 2004-03-24 | 2005-09-29 | Hitachi, Ltd. | Distributed data management system |
US7770059B1 (en) * | 2004-03-26 | 2010-08-03 | Emc Corporation | Failure protection in an environment including virtualization of networked storage resources |
TWI258661B (en) * | 2004-03-30 | 2006-07-21 | Infortrend Technology Inc | Efficient media scan operations for storage systems |
US8208370B1 (en) * | 2004-03-31 | 2012-06-26 | Cisco Technology, Inc. | Method and system for fast link failover |
US9178784B2 (en) | 2004-04-15 | 2015-11-03 | Raytheon Company | System and method for cluster management based on HPC architecture |
US8336040B2 (en) | 2004-04-15 | 2012-12-18 | Raytheon Company | System and method for topology-aware job scheduling and backfilling in an HPC environment |
US8335909B2 (en) | 2004-04-15 | 2012-12-18 | Raytheon Company | Coupling processors to each other for high performance computing (HPC) |
JP4382602B2 (ja) * | 2004-04-23 | 2009-12-16 | 株式会社日立製作所 | リモートコピーシステム |
US7437506B1 (en) * | 2004-04-26 | 2008-10-14 | Symantec Operating Corporation | Method and system for virtual storage element placement within a storage area network |
US7889733B2 (en) | 2004-04-28 | 2011-02-15 | Cisco Technology, Inc. | Intelligent adjunct network device |
US7546631B1 (en) * | 2004-04-30 | 2009-06-09 | Sun Microsystems, Inc. | Embedded management system for a physical device having virtual elements |
US20050262391A1 (en) * | 2004-05-10 | 2005-11-24 | Prashant Sethi | I/O configuration messaging within a link-based computing system |
JP4230410B2 (ja) * | 2004-05-11 | 2009-02-25 | 株式会社日立製作所 | 仮想ストレージの通信品質制御装置 |
US7823026B2 (en) * | 2004-10-07 | 2010-10-26 | Cisco Technology, Inc. | Automatic system for power and data redundancy in a wired data telecommunications network |
US7849351B2 (en) * | 2004-10-07 | 2010-12-07 | Cisco Technology, Inc. | Power and data redundancy in a single wiring closet |
US7793137B2 (en) * | 2004-10-07 | 2010-09-07 | Cisco Technology, Inc. | Redundant power and data in a wired data telecommunincations network |
US7523341B2 (en) * | 2004-05-13 | 2009-04-21 | International Business Machines Corporation | Methods, apparatus and computer programs for recovery from failures in a computing environment |
US7706364B2 (en) * | 2004-05-19 | 2010-04-27 | Cisco Technology, Inc. | Virtual network device clusters |
US7710957B2 (en) * | 2004-05-19 | 2010-05-04 | Cisco Technology, Inc. | System and method for implementing multiple spanning trees per network |
US7660824B2 (en) * | 2004-05-20 | 2010-02-09 | Bea Systems, Inc. | System and method for performing batch configuration changes |
JP4572581B2 (ja) * | 2004-05-28 | 2010-11-04 | 株式会社日立製作所 | データベース処理方法およびシステム並びにその処理プログラム |
US7509630B2 (en) * | 2004-06-14 | 2009-03-24 | Alcatel-Lucent Usa Inc. | Software component initialization in an ordered sequence |
US7707143B2 (en) * | 2004-06-14 | 2010-04-27 | International Business Machines Corporation | Systems, methods, and computer program products that automatically discover metadata objects and generate multidimensional models |
US7480663B2 (en) * | 2004-06-22 | 2009-01-20 | International Business Machines Corporation | Model based optimization with focus regions |
US20050283494A1 (en) * | 2004-06-22 | 2005-12-22 | International Business Machines Corporation | Visualizing and manipulating multidimensional OLAP models graphically |
US7436836B2 (en) | 2004-06-30 | 2008-10-14 | Cisco Technology, Inc. | Method and apparatus for detecting support for a protocol defining supplemental headers |
US7808983B2 (en) | 2004-07-08 | 2010-10-05 | Cisco Technology, Inc. | Network device architecture for centralized packet processing |
US7461101B2 (en) | 2004-07-13 | 2008-12-02 | International Business Machines Corporation | Method for reducing data loss and unavailability by integrating multiple levels of a storage hierarchy |
US20060031230A1 (en) * | 2004-07-21 | 2006-02-09 | Kumar Sinha M | Data storage systems |
US7466712B2 (en) * | 2004-07-30 | 2008-12-16 | Brocade Communications Systems, Inc. | System and method for providing proxy and translation domains in a fibre channel router |
US7936769B2 (en) | 2004-07-30 | 2011-05-03 | Brocade Communications System, Inc. | Multifabric zone device import and export |
US20060041559A1 (en) * | 2004-08-17 | 2006-02-23 | International Business Machines Corporation | Innovation for managing virtual storage area networks |
US8730976B2 (en) | 2004-08-17 | 2014-05-20 | Cisco Technology, Inc. | System and method for preventing erroneous link aggregation due to component relocation |
US20060045754A1 (en) * | 2004-08-27 | 2006-03-02 | Peter Lukens | Ion pump for cryogenic magnet apparatus |
US7395396B2 (en) | 2004-08-30 | 2008-07-01 | Hitachi, Ltd. | Storage system and data relocation control device |
US7096338B2 (en) * | 2004-08-30 | 2006-08-22 | Hitachi, Ltd. | Storage system and data relocation control device |
JP4646574B2 (ja) | 2004-08-30 | 2011-03-09 | 株式会社日立製作所 | データ処理システム |
US7657613B1 (en) | 2004-09-09 | 2010-02-02 | Sun Microsystems, Inc. | Host-centric storage provisioner in a managed SAN |
US7499419B2 (en) * | 2004-09-24 | 2009-03-03 | Fortinet, Inc. | Scalable IP-services enabled multicast forwarding with efficient resource utilization |
US7493300B2 (en) * | 2004-09-30 | 2009-02-17 | International Business Machines Corporation | Model and system for reasoning with N-step lookahead in policy-based system management |
US8259562B2 (en) * | 2004-10-07 | 2012-09-04 | Cisco Technology, Inc. | Wiring closet redundancy |
US7451347B2 (en) * | 2004-10-08 | 2008-11-11 | Microsoft Corporation | Failover scopes for nodes of a computer cluster |
US8046446B1 (en) | 2004-10-18 | 2011-10-25 | Symantec Operating Corporation | System and method for providing availability using volume server sets in a storage environment employing distributed block virtualization |
US7389393B1 (en) | 2004-10-21 | 2008-06-17 | Symantec Operating Corporation | System and method for write forwarding in a storage environment employing distributed virtualization |
US7602720B2 (en) * | 2004-10-22 | 2009-10-13 | Cisco Technology, Inc. | Active queue management methods and devices |
US7564869B2 (en) | 2004-10-22 | 2009-07-21 | Cisco Technology, Inc. | Fibre channel over ethernet |
CN101040489B (zh) * | 2004-10-22 | 2012-12-05 | 思科技术公司 | 用于统一输入/输出和降低延迟的网络设备体系结构 |
US7830793B2 (en) * | 2004-10-22 | 2010-11-09 | Cisco Technology, Inc. | Network device architecture for consolidating input/output and reducing latency |
US7801125B2 (en) * | 2004-10-22 | 2010-09-21 | Cisco Technology, Inc. | Forwarding table reduction and multipath network forwarding |
JP4377313B2 (ja) * | 2004-10-22 | 2009-12-02 | 株式会社日立製作所 | ネットワークシステムにおけるエラーリカバリレベルの最適化 |
US8238347B2 (en) * | 2004-10-22 | 2012-08-07 | Cisco Technology, Inc. | Fibre channel over ethernet |
US7969971B2 (en) * | 2004-10-22 | 2011-06-28 | Cisco Technology, Inc. | Ethernet extension for the data center |
US7593324B2 (en) * | 2004-10-25 | 2009-09-22 | Cisco Technology, Inc. | Graceful port shutdown protocol for fibre channel interfaces |
JP2006127028A (ja) | 2004-10-27 | 2006-05-18 | Hitachi Ltd | 記憶システム及び記憶制御装置 |
US7844582B1 (en) | 2004-10-28 | 2010-11-30 | Stored IQ | System and method for involving users in object management |
US8510331B1 (en) | 2004-10-28 | 2013-08-13 | Storediq, Inc. | System and method for a desktop agent for use in managing file systems |
US7916628B2 (en) * | 2004-11-01 | 2011-03-29 | Cisco Technology, Inc. | Trunking for fabric ports in fibre channel switches and attached devices |
US7765369B1 (en) | 2004-11-05 | 2010-07-27 | Commvault Systems, Inc. | Method and system for selectively deleting stored data |
US7409519B2 (en) * | 2004-11-12 | 2008-08-05 | International Business Machines Corporation | Synchronizing logical systems |
US7778984B2 (en) * | 2004-11-19 | 2010-08-17 | Microsoft Corporation | System and method for a distributed object store |
US7724650B2 (en) * | 2004-11-30 | 2010-05-25 | Cisco Technology, Inc. | Multi-station physical layer communication over TP cable |
US8156281B1 (en) * | 2004-12-07 | 2012-04-10 | Oracle America, Inc. | Data storage system and method using storage profiles to define and modify storage pools |
US20060129559A1 (en) * | 2004-12-15 | 2006-06-15 | Dell Products L.P. | Concurrent access to RAID data in shared storage |
JP4553723B2 (ja) * | 2004-12-24 | 2010-09-29 | 富士通株式会社 | 仮想ストレージ構成管理システム、仮想ストレージ構成のための情報処理装置、およびコンピュータ読み取り可能な記憶媒体 |
US7649844B2 (en) * | 2004-12-29 | 2010-01-19 | Cisco Technology, Inc. | In-order fibre channel packet delivery |
US20070168495A1 (en) * | 2005-01-11 | 2007-07-19 | Rothstein Richard S | Systems and methods for network data storage |
JP2006195821A (ja) * | 2005-01-14 | 2006-07-27 | Fujitsu Ltd | 情報処理システムの制御方法、情報処理システム、ダイレクトメモリアクセス制御装置、プログラム |
US8019842B1 (en) | 2005-01-27 | 2011-09-13 | Netapp, Inc. | System and method for distributing enclosure services data to coordinate shared storage |
US7826379B2 (en) * | 2005-02-07 | 2010-11-02 | International Business Machines Corporation | All-to-all sequenced fault detection system |
US7437595B2 (en) * | 2005-02-07 | 2008-10-14 | International Business Machines Corporation | Row fault detection system |
US7529963B2 (en) * | 2005-02-07 | 2009-05-05 | International Business Machines Corporation | Cell boundary fault detection system |
US7506197B2 (en) * | 2005-02-07 | 2009-03-17 | International Business Machines Corporation | Multi-directional fault detection system |
US7451342B2 (en) * | 2005-02-07 | 2008-11-11 | International Business Machines Corporation | Bisectional fault detection system |
US8495411B2 (en) * | 2005-02-07 | 2013-07-23 | International Business Machines Corporation | All row, planar fault detection system |
US7953703B2 (en) | 2005-02-17 | 2011-05-31 | International Business Machines Corporation | Creation of highly available pseudo-clone standby servers for rapid failover provisioning |
US8572431B2 (en) * | 2005-02-23 | 2013-10-29 | Barclays Capital Inc. | Disaster recovery framework |
US7523110B2 (en) * | 2005-03-03 | 2009-04-21 | Gravic, Inc. | High availability designated winner data replication |
US7583605B2 (en) * | 2005-03-10 | 2009-09-01 | At&T Intellectual Property I, L.P. | Method and system of evaluating survivability of ATM switches over SONET networks |
US7490205B2 (en) * | 2005-03-14 | 2009-02-10 | International Business Machines Corporation | Method for providing a triad copy of storage data |
JP4517923B2 (ja) * | 2005-03-31 | 2010-08-04 | 沖電気工業株式会社 | オブジェクト救済システム及び方法 |
US7343468B2 (en) * | 2005-04-14 | 2008-03-11 | International Business Machines Corporation | Method and apparatus for storage provisioning automation in a data center |
US20060236061A1 (en) * | 2005-04-18 | 2006-10-19 | Creek Path Systems | Systems and methods for adaptively deriving storage policy and configuration rules |
US7640292B1 (en) * | 2005-04-29 | 2009-12-29 | Netapp, Inc. | Physical server to virtual server migration |
US7581056B2 (en) * | 2005-05-11 | 2009-08-25 | Cisco Technology, Inc. | Load balancing using distributed front end and back end virtualization engines |
US7600083B2 (en) * | 2005-06-10 | 2009-10-06 | Network Appliance, Inc. | Method and system for automatic write request suspension |
US7933936B2 (en) * | 2005-06-10 | 2011-04-26 | Network Appliance, Inc. | Method and system for automatic management of storage space |
JP4831599B2 (ja) * | 2005-06-28 | 2011-12-07 | ルネサスエレクトロニクス株式会社 | 処理装置 |
US7363457B1 (en) * | 2005-07-21 | 2008-04-22 | Sun Microsystems, Inc. | Method and system for providing virtualization data services for legacy storage devices |
US7653682B2 (en) * | 2005-07-22 | 2010-01-26 | Netapp, Inc. | Client failure fencing mechanism for fencing network file system data in a host-cluster environment |
US20070027999A1 (en) * | 2005-07-29 | 2007-02-01 | Allen James P | Method for coordinated error tracking and reporting in distributed storage systems |
US8819202B1 (en) | 2005-08-01 | 2014-08-26 | Oracle America, Inc. | Service configuration and deployment engine for provisioning automation |
US7480816B1 (en) * | 2005-08-04 | 2009-01-20 | Sun Microsystems, Inc. | Failure chain detection and recovery in a group of cooperating systems |
US8176158B2 (en) | 2005-08-09 | 2012-05-08 | Tripwire, Inc. | Information technology governance and controls methods and apparatuses |
US10318894B2 (en) | 2005-08-16 | 2019-06-11 | Tripwire, Inc. | Conformance authority reconciliation |
CN101379490B (zh) * | 2005-09-26 | 2011-12-14 | 皇家飞利浦电子股份有限公司 | 为联网的便携式存储设备生成存储简档 |
US7509535B1 (en) * | 2005-09-29 | 2009-03-24 | Emc Corporation | System and method for managing failover in a data storage environment |
US7961621B2 (en) | 2005-10-11 | 2011-06-14 | Cisco Technology, Inc. | Methods and devices for backward congestion notification |
US7870173B2 (en) * | 2005-10-13 | 2011-01-11 | International Business Machines Corporation | Storing information in a common information store |
US7996608B1 (en) | 2005-10-20 | 2011-08-09 | American Megatrends, Inc. | Providing redundancy in a storage system |
US8010485B1 (en) | 2005-10-20 | 2011-08-30 | American Megatrends, Inc. | Background movement of data between nodes in a storage cluster |
US8010829B1 (en) | 2005-10-20 | 2011-08-30 | American Megatrends, Inc. | Distributed hot-spare storage in a storage cluster |
US7760717B2 (en) * | 2005-10-25 | 2010-07-20 | Brocade Communications Systems, Inc. | Interface switch for use with fibre channel fabrics in storage area networks |
US7475277B1 (en) | 2005-11-10 | 2009-01-06 | Storage Technology Corporation | Automated repair of damaged objects |
US7428602B2 (en) * | 2005-11-29 | 2008-09-23 | International Business Machines Corporation | Method for executing initialization code to configure connected devices and executing segments of configuration code from a failed segment |
US8087021B1 (en) | 2005-11-29 | 2011-12-27 | Oracle America, Inc. | Automated activity processing |
US7882079B2 (en) * | 2005-11-30 | 2011-02-01 | Oracle International Corporation | Database system configured for automatic failover with user-limited data loss |
US8255369B2 (en) | 2005-11-30 | 2012-08-28 | Oracle International Corporation | Automatic failover configuration with lightweight observer |
US7668879B2 (en) * | 2005-11-30 | 2010-02-23 | Oracle International Corporation | Database system configured for automatic failover with no data loss |
US7734596B2 (en) * | 2005-11-30 | 2010-06-08 | Stephen John Vivian | Automatic failover configuration with redundant abservers |
US7627584B2 (en) * | 2005-11-30 | 2009-12-01 | Oracle International Corporation | Database system configured for automatic failover with no data loss |
EP1798934A1 (en) * | 2005-12-13 | 2007-06-20 | Deutsche Thomson-Brandt Gmbh | Method and apparatus for organizing nodes in a network |
US7805565B1 (en) | 2005-12-23 | 2010-09-28 | Oracle America, Inc. | Virtualization metadata promotion |
US8266308B2 (en) * | 2006-02-21 | 2012-09-11 | Comtrol Corporation | System, method, and device for communicating between a field device, device controller, and enterprise application |
US20070214313A1 (en) * | 2006-02-21 | 2007-09-13 | Kalos Matthew J | Apparatus, system, and method for concurrent RAID array relocation |
JP2007226398A (ja) * | 2006-02-22 | 2007-09-06 | Hitachi Ltd | データベース接続管理方法及び計算機システム |
US20070233868A1 (en) * | 2006-03-31 | 2007-10-04 | Tyrrell John C | System and method for intelligent provisioning of storage across a plurality of storage systems |
US7849281B2 (en) * | 2006-04-03 | 2010-12-07 | Emc Corporation | Method and system for implementing hierarchical permission maps in a layered volume graph |
JP2007299213A (ja) * | 2006-04-28 | 2007-11-15 | Fujitsu Ltd | Raid制御装置および障害監視方法 |
JP2007299079A (ja) * | 2006-04-28 | 2007-11-15 | Fujitsu Ltd | ストレージ装置及びその障害回復方法 |
US8909758B2 (en) * | 2006-05-02 | 2014-12-09 | Cisco Technology, Inc. | Physical server discovery and correlation |
US7613742B2 (en) * | 2006-05-02 | 2009-11-03 | Mypoints.Com Inc. | System and method for providing three-way failover for a transactional database |
US8266472B2 (en) * | 2006-05-03 | 2012-09-11 | Cisco Technology, Inc. | Method and system to provide high availability of shared data |
US20070261045A1 (en) * | 2006-05-05 | 2007-11-08 | Dell Products L.P. | Method and system of configuring a directory service for installing software applications |
US8762418B1 (en) | 2006-05-31 | 2014-06-24 | Oracle America, Inc. | Metadata that allows refiltering and data reclassification without accessing the data |
US7657782B2 (en) * | 2006-06-08 | 2010-02-02 | International Business Machines Corporation | Creating and managing multiple virtualized remote mirroring session consistency groups |
US20070297338A1 (en) * | 2006-06-23 | 2007-12-27 | Yun Mou | Verification of path selection protocol in a multi-path storage area network |
US7849261B2 (en) * | 2006-06-29 | 2010-12-07 | Seagate Technology Llc | Temperature control to reduce cascade failures in a multi-device array |
US7661005B2 (en) * | 2006-06-30 | 2010-02-09 | Seagate Technology Llc | Individual storage device power control in a multi-device array |
US20080021865A1 (en) * | 2006-07-20 | 2008-01-24 | International Business Machines Corporation | Method, system, and computer program product for dynamically determining data placement |
US7664980B2 (en) * | 2006-07-28 | 2010-02-16 | Fujitsu Limited | Method and system for automatic attempted recovery of equipment from transient faults |
US20080052284A1 (en) * | 2006-08-05 | 2008-02-28 | Terry Stokes | System and Method for the Capture and Archival of Electronic Communications |
US8041985B2 (en) | 2006-08-11 | 2011-10-18 | Chicago Mercantile Exchange, Inc. | Match server for a financial exchange having fault tolerant operation |
US7434096B2 (en) * | 2006-08-11 | 2008-10-07 | Chicago Mercantile Exchange | Match server for a financial exchange having fault tolerant operation |
US7480827B2 (en) | 2006-08-11 | 2009-01-20 | Chicago Mercantile Exchange | Fault tolerance and failover using active copy-cat |
US7571349B2 (en) * | 2006-08-18 | 2009-08-04 | Microsoft Corporation | Configuration replication for system recovery and migration |
US7730029B2 (en) * | 2006-09-15 | 2010-06-01 | Alcatel Lucent | System and method of fault tolerant reconciliation for control card redundancy |
US7805633B2 (en) * | 2006-09-18 | 2010-09-28 | Lsi Corporation | Optimized reconstruction and copyback methodology for a disconnected drive in the presence of a global hot spare disk |
US20080126839A1 (en) * | 2006-09-19 | 2008-05-29 | Satish Sangapu | Optimized reconstruction and copyback methodology for a failed drive in the presence of a global hot spare disc |
CN101150792A (zh) * | 2006-09-20 | 2008-03-26 | 深圳富泰宏精密工业有限公司 | 恢复暂时失能用户识别卡操作功能的方法及移动通信装置 |
US7519741B2 (en) * | 2006-09-28 | 2009-04-14 | International Business Machines Corporation | Apparatus, system, and method for automating adapter replacement |
JP4949791B2 (ja) | 2006-09-29 | 2012-06-13 | 株式会社日立製作所 | ボリューム選択方法及び情報処理システム |
JP4930934B2 (ja) | 2006-09-29 | 2012-05-16 | 株式会社日立製作所 | データマイグレーション方法及び情報処理システム |
KR101273900B1 (ko) * | 2006-10-09 | 2013-07-31 | 샌디스크 아이엘 엘티디 | 애플리케이션 의존성 스토리지 제어 |
US8055726B1 (en) * | 2006-10-31 | 2011-11-08 | Qlogic, Corporation | Method and system for writing network data |
US7793145B2 (en) * | 2006-11-06 | 2010-09-07 | Dot Hill Systems Corporation | Method and apparatus for verifying fault tolerant configuration |
US8234384B2 (en) * | 2006-11-13 | 2012-07-31 | Jemmac Software Limited | Computer systems and methods for process control environments |
US8473460B2 (en) * | 2006-11-21 | 2013-06-25 | Microsoft Corporation | Driver model for replacing core system hardware |
US7934121B2 (en) * | 2006-11-21 | 2011-04-26 | Microsoft Corporation | Transparent replacement of a system processor |
US7877358B2 (en) | 2006-11-21 | 2011-01-25 | Microsoft Corporation | Replacing system hardware |
US20080126884A1 (en) * | 2006-11-28 | 2008-05-29 | Siemens Aktiengesellschaft | Method for providing detailed information and support regarding an event message |
US7613947B1 (en) | 2006-11-30 | 2009-11-03 | Netapp, Inc. | System and method for storage takeover |
US7711683B1 (en) | 2006-11-30 | 2010-05-04 | Netapp, Inc. | Method and system for maintaining disk location via homeness |
US7761612B2 (en) * | 2006-12-07 | 2010-07-20 | International Business Machines Corporation | Migrating domains from one physical data processing system to another |
US20080148270A1 (en) * | 2006-12-15 | 2008-06-19 | International Business Machines Corporation | Method and implementation for storage provisioning planning |
US8291120B2 (en) * | 2006-12-21 | 2012-10-16 | Verizon Services Corp. | Systems, methods, and computer program product for automatically verifying a standby site |
US20080162984A1 (en) * | 2006-12-28 | 2008-07-03 | Network Appliance, Inc. | Method and apparatus for hardware assisted takeover |
ATE492846T1 (de) * | 2007-01-03 | 2011-01-15 | Raytheon Co | Computerspeichersystem |
US7793148B2 (en) * | 2007-01-12 | 2010-09-07 | International Business Machines Corporation | Using virtual copies in a failover and failback environment |
US8046548B1 (en) | 2007-01-30 | 2011-10-25 | American Megatrends, Inc. | Maintaining data consistency in mirrored cluster storage systems using bitmap write-intent logging |
US7908448B1 (en) | 2007-01-30 | 2011-03-15 | American Megatrends, Inc. | Maintaining data consistency in mirrored cluster storage systems with write-back cache |
US8498967B1 (en) * | 2007-01-30 | 2013-07-30 | American Megatrends, Inc. | Two-node high availability cluster storage solution using an intelligent initiator to avoid split brain syndrome |
EP2115564A1 (en) * | 2007-01-31 | 2009-11-11 | International Business Machines Corporation | Apparatus and method for stored data protection and recovery |
US8259720B2 (en) | 2007-02-02 | 2012-09-04 | Cisco Technology, Inc. | Triple-tier anycast addressing |
US7590897B2 (en) * | 2007-02-06 | 2009-09-15 | International Business Machines Corporation | Device, method and computer program product for responding to error events |
US8086906B2 (en) * | 2007-02-15 | 2011-12-27 | Microsoft Corporation | Correlating hardware devices between local operating system and global management entity |
US8627029B2 (en) * | 2007-03-08 | 2014-01-07 | Sandisk Il Ltd. | Methods for managing files according to application |
US8458430B2 (en) * | 2007-03-26 | 2013-06-04 | Archion, Inc. | Configurable and scalable storage system |
JP4939271B2 (ja) | 2007-03-29 | 2012-05-23 | 株式会社日立製作所 | ストレージ保守・管理装置の冗長化方法、及びその方法を使用する装置 |
US8112593B2 (en) * | 2007-03-29 | 2012-02-07 | Netapp, Inc. | System and method for improving cluster performance |
US8146080B2 (en) * | 2007-03-30 | 2012-03-27 | Novell, Inc. | Tessellated virtual machines conditionally linked for common computing goals |
US20080256323A1 (en) * | 2007-04-09 | 2008-10-16 | Hewlett-Packard Development Company, L.P. | Reconfiguring a Storage Area Network |
US8209409B2 (en) * | 2007-04-09 | 2012-06-26 | Hewlett-Packard Development Company, L.P. | Diagnosis of a storage area network |
US20080256538A1 (en) * | 2007-04-10 | 2008-10-16 | Novell, Inc. | Storage configurations for tessellated virtual machines |
US20080256535A1 (en) * | 2007-04-10 | 2008-10-16 | Novell, Inc. | Tessellated virtual machines for common computing goals |
US7734947B1 (en) * | 2007-04-17 | 2010-06-08 | Netapp, Inc. | System and method for virtual interface failover within a cluster |
JP5050627B2 (ja) * | 2007-04-26 | 2012-10-17 | 日本電気株式会社 | リソース割当システム、リソース割当方法及びリソース割当プログラム |
US7774310B2 (en) * | 2007-04-27 | 2010-08-10 | Microsoft Corporation | Client-specific transformation of distributed data |
US7958385B1 (en) | 2007-04-30 | 2011-06-07 | Netapp, Inc. | System and method for verification and enforcement of virtual interface failover within a cluster |
US20080298276A1 (en) * | 2007-05-31 | 2008-12-04 | Microsoft Corporation | Analytical Framework for Multinode Storage Reliability Analysis |
US20080307415A1 (en) * | 2007-06-11 | 2008-12-11 | Novell, Inc. | Tessellated applications for user computing environments |
US7861111B2 (en) * | 2007-06-15 | 2010-12-28 | Savvis, Inc. | Shared data center disaster recovery systems and methods |
US8285758B1 (en) | 2007-06-30 | 2012-10-09 | Emc Corporation | Tiering storage between multiple classes of storage on the same container file system |
US7818535B1 (en) | 2007-06-30 | 2010-10-19 | Emc Corporation | Implicit container per version set |
US8149710B2 (en) | 2007-07-05 | 2012-04-03 | Cisco Technology, Inc. | Flexible and hierarchical dynamic buffer allocation |
US7669080B2 (en) * | 2007-08-16 | 2010-02-23 | International Business Machines Corporation | Reducing likelihood of data loss during failovers in high-availability systems |
US8910234B2 (en) * | 2007-08-21 | 2014-12-09 | Schneider Electric It Corporation | System and method for enforcing network device provisioning policy |
US8121038B2 (en) * | 2007-08-21 | 2012-02-21 | Cisco Technology, Inc. | Backward congestion notification |
US7987161B2 (en) * | 2007-08-23 | 2011-07-26 | Thomson Reuters (Markets) Llc | System and method for data compression using compression hardware |
US7813331B2 (en) * | 2007-08-28 | 2010-10-12 | International Business Machines Corporation | Apparatus, system, and method for implementing failover in a polling adapter without support from an application server |
US7730091B2 (en) * | 2007-08-31 | 2010-06-01 | International Business Machines Corporation | Systems, methods and computer products for database cluster modeling |
US20090063501A1 (en) * | 2007-08-31 | 2009-03-05 | International Business Machines Corporation | Systems, methods and computer products for generating policy based fail over configuration for darabase clusters |
US7743274B2 (en) * | 2007-09-12 | 2010-06-22 | International Business Machines Corporation | Administering correlated error logs in a computer system |
US8683033B2 (en) * | 2007-09-17 | 2014-03-25 | International Business Machines Corporation | Apparatus, system, and method for server failover to standby server during broadcast storm or denial-of-service attack |
US8892558B2 (en) * | 2007-09-26 | 2014-11-18 | International Business Machines Corporation | Inserting data into an in-memory distributed nodal database |
US8244671B2 (en) * | 2007-10-11 | 2012-08-14 | Microsoft Corporation | Replica placement and repair strategies in multinode storage systems |
US8930945B2 (en) * | 2007-11-15 | 2015-01-06 | Novell, Inc. | Environment managers via virtual machines |
US7793340B2 (en) * | 2007-11-21 | 2010-09-07 | Novell, Inc. | Cryptographic binding of authentication schemes |
US20090144545A1 (en) * | 2007-11-29 | 2009-06-04 | International Business Machines Corporation | Computer system security using file system access pattern heuristics |
US7782869B1 (en) * | 2007-11-29 | 2010-08-24 | Huawei Technologies Co., Ltd. | Network traffic control for virtual device interfaces |
US8027996B2 (en) * | 2007-11-29 | 2011-09-27 | International Business Machines Corporation | Commitment control for less than an entire record in an in-memory database in a parallel computer system |
WO2009077002A1 (en) * | 2007-12-17 | 2009-06-25 | Telefonaktiebolaget Lm Ericsson (Publ) | Mobile core network node redundancy |
US20090183255A1 (en) * | 2007-12-21 | 2009-07-16 | Kiester W Scott | Server services on client for disconnected authentication |
US8418072B1 (en) * | 2007-12-24 | 2013-04-09 | Emc Corporation | UI data model abstraction |
US8028062B1 (en) * | 2007-12-26 | 2011-09-27 | Emc Corporation | Non-disruptive data mobility using virtual storage area networks with split-path virtualization |
JP5192226B2 (ja) * | 2007-12-27 | 2013-05-08 | 株式会社日立製作所 | 待機系計算機の追加方法、計算機及び計算機システム |
US8082330B1 (en) * | 2007-12-28 | 2011-12-20 | Emc Corporation | Application aware automated storage pool provisioning |
US20090171703A1 (en) * | 2007-12-28 | 2009-07-02 | International Business Machines Corporation | Use of multi-level state assessment in computer business environments |
US20090172125A1 (en) * | 2007-12-28 | 2009-07-02 | Mrigank Shekhar | Method and system for migrating a computer environment across blade servers |
US8826077B2 (en) * | 2007-12-28 | 2014-09-02 | International Business Machines Corporation | Defining a computer recovery process that matches the scope of outage including determining a root cause and performing escalated recovery operations |
US9558459B2 (en) | 2007-12-28 | 2017-01-31 | International Business Machines Corporation | Dynamic selection of actions in an information technology environment |
US8763006B2 (en) * | 2007-12-28 | 2014-06-24 | International Business Machines Corporation | Dynamic generation of processes in computing environments |
US8751283B2 (en) * | 2007-12-28 | 2014-06-10 | International Business Machines Corporation | Defining and using templates in configuring information technology environments |
US8990810B2 (en) * | 2007-12-28 | 2015-03-24 | International Business Machines Corporation | Projecting an effect, using a pairing construct, of execution of a proposed action on a computing environment |
US8868441B2 (en) * | 2007-12-28 | 2014-10-21 | International Business Machines Corporation | Non-disruptively changing a computing environment |
US20090172149A1 (en) * | 2007-12-28 | 2009-07-02 | International Business Machines Corporation | Real-time information technology environments |
US20090171730A1 (en) * | 2007-12-28 | 2009-07-02 | International Business Machines Corporation | Non-disruptively changing scope of computer business applications based on detected changes in topology |
US8782662B2 (en) * | 2007-12-28 | 2014-07-15 | International Business Machines Corporation | Adaptive computer sequencing of actions |
US9047468B2 (en) | 2007-12-28 | 2015-06-02 | Intel Corporation | Migration of full-disk encrypted virtualized storage between blade servers |
US8321867B1 (en) | 2008-01-24 | 2012-11-27 | Network Appliance, Inc. | Request processing for stateless conformance engine |
US8166257B1 (en) * | 2008-01-24 | 2012-04-24 | Network Appliance, Inc. | Automated continuous provisioning of a data storage system |
US20090193247A1 (en) * | 2008-01-29 | 2009-07-30 | Kiester W Scott | Proprietary protocol tunneling over eap |
US20090195224A1 (en) * | 2008-01-31 | 2009-08-06 | Basler Electric Company | Digital Excitation Control System Utilizing Self-Tuning PID Gains and an Associated Method of Use |
JP5091704B2 (ja) * | 2008-02-06 | 2012-12-05 | 株式会社日立製作所 | ストレージ構成回復方法及びストレージ管理システム |
US9251899B2 (en) * | 2008-02-12 | 2016-02-02 | Virident Systems, Inc. | Methods for upgrading main memory in computer systems to two-dimensional memory modules and master memory controllers |
US8549654B2 (en) * | 2008-02-20 | 2013-10-01 | Bruce Backa | System and method for policy based control of NAS storage devices |
US8631470B2 (en) * | 2008-02-20 | 2014-01-14 | Bruce R. Backa | System and method for policy based control of NAS storage devices |
US7478264B1 (en) * | 2008-03-10 | 2009-01-13 | International Business Machines Corporation | Storage management server communication via storage device servers |
US9203928B2 (en) | 2008-03-20 | 2015-12-01 | Callahan Cellular L.L.C. | Data storage and retrieval |
US8458285B2 (en) | 2008-03-20 | 2013-06-04 | Post Dahl Co. Limited Liability Company | Redundant data forwarding storage |
JP5130997B2 (ja) * | 2008-03-31 | 2013-01-30 | 日本電気株式会社 | 分散リソース管理システム、分散リソース管理方法、及び分散リソース管理プログラム |
US8135838B2 (en) * | 2008-04-08 | 2012-03-13 | Geminare Incorporated | System and method for providing data and application continuity in a computer system |
US7877625B2 (en) * | 2008-04-16 | 2011-01-25 | Invensys Systems, Inc. | Efficient architecture for interfacing redundant devices to a distributed control system |
US20090276654A1 (en) * | 2008-05-02 | 2009-11-05 | International Business Machines Corporation | Systems and methods for implementing fault tolerant data processing services |
US9077628B2 (en) * | 2008-05-15 | 2015-07-07 | Hewlett-Packard Development Company, L.P. | Network device having a normal operational configuration and fail-safe configuration and method of operating the same |
GB2460841B (en) * | 2008-06-10 | 2012-01-11 | Virtensys Ltd | Methods of providing access to I/O devices |
US7844757B2 (en) * | 2008-06-12 | 2010-11-30 | International Machines Business Corporation | Method and system for providing multiple paths to user data stored on a SCSI disk |
US7840730B2 (en) | 2008-06-27 | 2010-11-23 | Microsoft Corporation | Cluster shared volumes |
US8370679B1 (en) * | 2008-06-30 | 2013-02-05 | Symantec Corporation | Method, apparatus and system for improving failover within a high availability disaster recovery environment |
US8914341B2 (en) | 2008-07-03 | 2014-12-16 | Tripwire, Inc. | Method and apparatus for continuous compliance assessment |
US8090907B2 (en) * | 2008-07-09 | 2012-01-03 | International Business Machines Corporation | Method for migration of synchronous remote copy service to a virtualization appliance |
US8015343B2 (en) | 2008-08-08 | 2011-09-06 | Amazon Technologies, Inc. | Providing executing programs with reliable access to non-local block data storage |
US8055734B2 (en) * | 2008-08-15 | 2011-11-08 | International Business Machines Corporation | Mapping of logical volumes to host clusters |
US8898418B2 (en) | 2008-08-26 | 2014-11-25 | International Business Machines Corporation | Method, apparatus and computer program for provisioning a storage volume to a virtual server |
US8775394B2 (en) * | 2008-09-11 | 2014-07-08 | Netapp, Inc. | Transactional failover of data sets |
US9256542B1 (en) * | 2008-09-17 | 2016-02-09 | Pmc-Sierra Us, Inc. | Adaptive intelligent storage controller and associated methods |
TW201028841A (en) * | 2008-10-02 | 2010-08-01 | Ibm | A method, apparatus or software for use in a computerised storage system comprising one or more replaceable units for managing testing of one or more replacement units |
JP5232602B2 (ja) * | 2008-10-30 | 2013-07-10 | 株式会社日立製作所 | ストレージ装置、及びストレージコントローラ内部ネットワークのデータ経路フェイルオーバー方法 |
KR101269669B1 (ko) | 2008-11-11 | 2013-05-30 | 한국전자통신연구원 | 디바이스 관리 장치, 홈 네트워크 시스템의 디바이스 관리 방법 |
US20100121906A1 (en) * | 2008-11-11 | 2010-05-13 | Electronics And Telecommunications Research Institute | Device management apparatus and method for home network system |
JP4648447B2 (ja) * | 2008-11-26 | 2011-03-09 | 株式会社日立製作所 | 障害復旧方法、プログラムおよび管理サーバ |
US8561052B2 (en) * | 2008-12-08 | 2013-10-15 | Harris Corporation | Communications device with a plurality of processors and compatibility synchronization module for processor upgrades and related method |
US20110208779A1 (en) * | 2008-12-23 | 2011-08-25 | Backa Bruce R | System and Method for Policy Based Control of NAS Storage Devices |
US10079723B2 (en) * | 2008-12-31 | 2018-09-18 | International Business Machines Corporation | Dynamic high availability policy creation based upon entries in a configuration management database (CMDB) and a best practices template |
US8448013B2 (en) * | 2009-01-19 | 2013-05-21 | International Business Machines Corporation | Failure-specific data collection and recovery for enterprise storage controllers |
US8086840B2 (en) * | 2009-01-28 | 2011-12-27 | Lenovo (Singapore) Pte. Ltd. | Apparatus, system, and method for improving user boot via a storage area network |
US8166264B2 (en) * | 2009-02-05 | 2012-04-24 | Hitachi, Ltd. | Method and apparatus for logical volume management |
US7971094B1 (en) * | 2009-03-03 | 2011-06-28 | Netapp, Inc. | Method, system and apparatus for creating and executing a failover plan on a computer network |
US8327186B2 (en) * | 2009-03-10 | 2012-12-04 | Netapp, Inc. | Takeover of a failed node of a cluster storage system on a per aggregate basis |
US8145838B1 (en) | 2009-03-10 | 2012-03-27 | Netapp, Inc. | Processing and distributing write logs of nodes of a cluster storage system |
US8291429B2 (en) | 2009-03-25 | 2012-10-16 | International Business Machines Corporation | Organization of heterogeneous entities into system resource groups for defining policy management framework in managed systems environment |
US8069366B1 (en) | 2009-04-29 | 2011-11-29 | Netapp, Inc. | Global write-log device for managing write logs of nodes of a cluster storage system |
EP2441229B1 (en) | 2009-06-11 | 2020-05-06 | Panasonic Avionics Corporation | System and method for providing security aboard a moving platform |
US8201169B2 (en) * | 2009-06-15 | 2012-06-12 | Vmware, Inc. | Virtual machine fault tolerance |
US8612439B2 (en) | 2009-06-30 | 2013-12-17 | Commvault Systems, Inc. | Performing data storage operations in a cloud storage environment, including searching, encryption and indexing |
US9569319B2 (en) * | 2009-09-18 | 2017-02-14 | Alcatel Lucent | Methods for improved server redundancy in dynamic networks |
CN102035862B (zh) | 2009-09-30 | 2013-11-06 | 国际商业机器公司 | Svc集群中配置节点的故障移交方法和系统 |
US8626888B2 (en) * | 2009-10-27 | 2014-01-07 | International Business Machines Corporation | Dynamic control of autonomic management of a data center |
US8260830B2 (en) * | 2009-11-09 | 2012-09-04 | Middlecamp William J | Adapting a timer bounded arbitration protocol |
US10133485B2 (en) * | 2009-11-30 | 2018-11-20 | Red Hat, Inc. | Integrating storage resources from storage area network in machine provisioning platform |
US8484259B1 (en) | 2009-12-08 | 2013-07-09 | Netapp, Inc. | Metadata subsystem for a distributed object store in a network storage system |
US20110137966A1 (en) * | 2009-12-08 | 2011-06-09 | Netapp, Inc. | Methods and systems for providing a unified namespace for multiple network protocols |
US9507799B1 (en) | 2009-12-08 | 2016-11-29 | Netapp, Inc. | Distributed object store for network-based content repository |
US8180813B1 (en) | 2009-12-08 | 2012-05-15 | Netapp, Inc. | Content repository implemented in a network storage server system |
US8688838B2 (en) * | 2009-12-14 | 2014-04-01 | Hewlett-Packard Development Company, L.P. | Profile management systems |
US9389895B2 (en) * | 2009-12-17 | 2016-07-12 | Microsoft Technology Licensing, Llc | Virtual storage target offload techniques |
US9015333B2 (en) | 2009-12-18 | 2015-04-21 | Cisco Technology, Inc. | Apparatus and methods for handling network file operations over a fibre channel network |
US9727266B2 (en) * | 2009-12-29 | 2017-08-08 | International Business Machines Corporation | Selecting storage units in a dispersed storage network |
US9098456B2 (en) * | 2010-01-13 | 2015-08-04 | International Business Machines Corporation | System and method for reducing latency time with cloud services |
JP5531625B2 (ja) * | 2010-01-13 | 2014-06-25 | 日本電気株式会社 | 通信システム及びその障害検出方法 |
EP2531921B1 (fr) * | 2010-02-01 | 2015-05-13 | Orange | Gestion du lieu de stockage de donnees dans un systeme de stockage distribue |
US8819208B2 (en) | 2010-03-05 | 2014-08-26 | Solidfire, Inc. | Data deletion in a distributed data storage system |
US8555105B2 (en) * | 2010-04-12 | 2013-10-08 | International Business Machines Corporation | Fallover policy management in high availability systems |
US8881134B2 (en) * | 2010-04-29 | 2014-11-04 | International Business Machines Corporation | Updating elements in data storage facility using predefined state machine over extended time period |
US8738724B2 (en) | 2010-05-25 | 2014-05-27 | Microsoft Corporation | Totally ordered log on appendable storage |
US8984241B2 (en) | 2010-07-07 | 2015-03-17 | Nexenta Systems, Inc. | Heterogeneous redundant storage array |
US8954669B2 (en) | 2010-07-07 | 2015-02-10 | Nexenta System, Inc | Method and system for heterogeneous data volume |
CA2807848C (en) | 2010-09-10 | 2019-10-01 | Panasonic Avionics Corporation | Integrated user interface system and method |
US11614893B2 (en) | 2010-09-15 | 2023-03-28 | Pure Storage, Inc. | Optimizing storage device access based on latency |
US8468318B2 (en) | 2010-09-15 | 2013-06-18 | Pure Storage Inc. | Scheduling of I/O writes in a storage environment |
US8732426B2 (en) | 2010-09-15 | 2014-05-20 | Pure Storage, Inc. | Scheduling of reactive I/O operations in a storage environment |
US8589625B2 (en) | 2010-09-15 | 2013-11-19 | Pure Storage, Inc. | Scheduling of reconstructive I/O read operations in a storage environment |
US11275509B1 (en) | 2010-09-15 | 2022-03-15 | Pure Storage, Inc. | Intelligently sizing high latency I/O requests in a storage environment |
US8589655B2 (en) | 2010-09-15 | 2013-11-19 | Pure Storage, Inc. | Scheduling of I/O in an SSD environment |
US8842518B2 (en) | 2010-09-17 | 2014-09-23 | Oracle International Corporation | System and method for supporting management network interface card port failover in a middleware machine environment |
US9244769B2 (en) | 2010-09-28 | 2016-01-26 | Pure Storage, Inc. | Offset protection data in a RAID array |
US8775868B2 (en) | 2010-09-28 | 2014-07-08 | Pure Storage, Inc. | Adaptive RAID for an SSD environment |
US8583611B2 (en) * | 2010-10-22 | 2013-11-12 | Hitachi, Ltd. | File server for migration of file and method for migrating file |
US9600315B2 (en) * | 2010-10-22 | 2017-03-21 | Netapp, Inc. | Seamless takeover of a stateful protocol session in a virtual machine environment |
US8335761B1 (en) * | 2010-12-02 | 2012-12-18 | Emc International Company | Replicating in a multi-copy environment |
US8874823B2 (en) | 2011-02-15 | 2014-10-28 | Intellectual Property Holdings 2 Llc | Systems and methods for managing data input/output operations |
US9003104B2 (en) | 2011-02-15 | 2015-04-07 | Intelligent Intellectual Property Holdings 2 Llc | Systems and methods for a file-level cache |
US8996807B2 (en) | 2011-02-15 | 2015-03-31 | Intelligent Intellectual Property Holdings 2 Llc | Systems and methods for a multi-level cache |
US9201677B2 (en) | 2011-05-23 | 2015-12-01 | Intelligent Intellectual Property Holdings 2 Llc | Managing data input/output operations |
US8745467B2 (en) * | 2011-02-16 | 2014-06-03 | Invensys Systems, Inc. | System and method for fault tolerant computing using generic hardware |
US8601085B1 (en) * | 2011-03-28 | 2013-12-03 | Emc Corporation | Techniques for preferred path determination |
US8782464B2 (en) * | 2011-03-31 | 2014-07-15 | International Business Machines Corporation | Method and system for using a standby server to improve redundancy in a dual-node data storage system |
US8812566B2 (en) | 2011-05-13 | 2014-08-19 | Nexenta Systems, Inc. | Scalable storage for virtual machines |
US9223798B2 (en) | 2011-05-17 | 2015-12-29 | Archion, Inc. | Virtualized workspaces for standardization of access to data |
JP5652333B2 (ja) * | 2011-05-31 | 2015-01-14 | 富士通株式会社 | 記憶装置、ストレージシステム及び記憶装置制御方法 |
US8713649B2 (en) | 2011-06-03 | 2014-04-29 | Oracle International Corporation | System and method for providing restrictions on the location of peer subnet manager (SM) instances in an infiniband (IB) network |
US9270650B2 (en) | 2011-06-03 | 2016-02-23 | Oracle International Corporation | System and method for providing secure subnet management agent (SMA) in an infiniband (IB) network |
US8719835B2 (en) * | 2011-06-07 | 2014-05-06 | Telefonaktiebolaget L M Ericsson (Publ) | Ranking service units to provide and protect highly available services using the Nway redundancy model |
US8707085B2 (en) * | 2011-06-30 | 2014-04-22 | International Business Machines Corporation | High availability data storage systems and methods |
US8788877B2 (en) * | 2011-08-03 | 2014-07-22 | International Business Machines Corporation | Acquiring a storage system into copy services management software |
US11636031B2 (en) | 2011-08-11 | 2023-04-25 | Pure Storage, Inc. | Optimized inline deduplication |
US8589640B2 (en) | 2011-10-14 | 2013-11-19 | Pure Storage, Inc. | Method for maintaining multiple fingerprint tables in a deduplicating storage system |
US8553532B2 (en) | 2011-08-23 | 2013-10-08 | Telefonaktiebolaget L M Ericsson (Publ) | Methods and apparatus for avoiding inter-chassis redundancy switchover to non-functional standby nodes |
US20130073704A1 (en) * | 2011-09-16 | 2013-03-21 | Tripwire, Inc. | Methods and apparatus for remediating policy test failures, including promoting changes for compliance review |
US8862941B2 (en) | 2011-09-16 | 2014-10-14 | Tripwire, Inc. | Methods and apparatus for remediation execution |
US8819491B2 (en) | 2011-09-16 | 2014-08-26 | Tripwire, Inc. | Methods and apparatus for remediation workflow |
CN102388358B (zh) * | 2011-09-30 | 2014-07-09 | 华为技术有限公司 | 在混合存储环境下配置存储设备的方法和系统 |
US8793379B2 (en) | 2011-11-01 | 2014-07-29 | Lsi Corporation | System or method to automatically provision a storage volume by having an app-aware based appliance in a storage cloud environment |
US9141609B2 (en) | 2011-12-01 | 2015-09-22 | Oracle International Corporation | Reducing sequence cache latch contention in a database system |
US9910893B2 (en) * | 2011-12-01 | 2018-03-06 | Oracle International Corporation | Failover and resume when using ordered sequences in a multi-instance database environment |
US9189295B2 (en) | 2011-12-01 | 2015-11-17 | Oracle International Corporation | Generating an ordered sequence in a database system using multiple interleaved caches |
US20130151888A1 (en) * | 2011-12-12 | 2013-06-13 | International Business Machines Corporation | Avoiding A Ping-Pong Effect On Active-Passive Storage |
US9741003B2 (en) * | 2011-12-19 | 2017-08-22 | Microsoft Technology Licensing, Llc | Method and system for providing centralized notifications to an administrator |
JP5556801B2 (ja) * | 2011-12-19 | 2014-07-23 | 株式会社デンソー | 車載電子制御装置および診断システム |
US9054992B2 (en) | 2011-12-27 | 2015-06-09 | Solidfire, Inc. | Quality of service policy sets |
US9838269B2 (en) | 2011-12-27 | 2017-12-05 | Netapp, Inc. | Proportional quality of service based on client usage and system metrics |
US9239786B2 (en) | 2012-01-18 | 2016-01-19 | Samsung Electronics Co., Ltd. | Reconfigurable storage device |
US8856583B1 (en) * | 2012-01-20 | 2014-10-07 | Google Inc. | Failover operation on a replicated distributed database system while maintaining access invariance |
US9116812B2 (en) | 2012-01-27 | 2015-08-25 | Intelligent Intellectual Property Holdings 2 Llc | Systems and methods for a de-duplication cache |
US8719540B1 (en) | 2012-03-15 | 2014-05-06 | Pure Storage, Inc. | Fractal layout of data blocks across multiple devices |
US8977825B1 (en) * | 2012-03-30 | 2015-03-10 | Emc Corporation | Techniques for abstract profile definition to support information hiding |
US9639295B1 (en) * | 2012-03-30 | 2017-05-02 | EMC IP Holding Company LLC | Method and apparatus for reducing splitter latency using parallel splitting |
US8950009B2 (en) | 2012-03-30 | 2015-02-03 | Commvault Systems, Inc. | Information management of data associated with multiple cloud services |
US9262496B2 (en) | 2012-03-30 | 2016-02-16 | Commvault Systems, Inc. | Unified access to personal data |
US8918672B2 (en) | 2012-05-31 | 2014-12-23 | International Business Machines Corporation | Maximizing use of storage in a data replication environment |
US20130326038A1 (en) * | 2012-06-05 | 2013-12-05 | Microsoft Corporation | Management of datacenters for fault tolerance and bandwidth |
WO2013188382A2 (en) * | 2012-06-12 | 2013-12-19 | Centurylink Intellectual Property Llc | High performance cloud storage |
US9229800B2 (en) | 2012-06-28 | 2016-01-05 | Microsoft Technology Licensing, Llc | Problem inference from support tickets |
US8949656B1 (en) * | 2012-06-29 | 2015-02-03 | Emc Corporation | Port matching for data storage system port failover |
US8626967B1 (en) * | 2012-06-29 | 2014-01-07 | Emc Corporation | Virtualization of a storage processor for port failover |
US9612966B2 (en) | 2012-07-03 | 2017-04-04 | Sandisk Technologies Llc | Systems, methods and apparatus for a virtual machine cache |
US10339056B2 (en) | 2012-07-03 | 2019-07-02 | Sandisk Technologies Llc | Systems, methods and apparatus for cache transfers |
US9104575B2 (en) | 2012-08-18 | 2015-08-11 | International Business Machines Corporation | Reduced-impact error recovery in multi-core storage-system components |
US9336094B1 (en) * | 2012-09-13 | 2016-05-10 | Emc International Company | Scaleout replication of an application |
US8745415B2 (en) | 2012-09-26 | 2014-06-03 | Pure Storage, Inc. | Multi-drive cooperation to generate an encryption key |
US11032259B1 (en) | 2012-09-26 | 2021-06-08 | Pure Storage, Inc. | Data protection in a storage system |
US8868604B2 (en) | 2012-09-26 | 2014-10-21 | Oracle International Corporation | Methods and apparatus for implementing Semi-distributed Lock Management |
US10623386B1 (en) | 2012-09-26 | 2020-04-14 | Pure Storage, Inc. | Secret sharing data protection in a storage system |
US9311330B1 (en) * | 2012-09-28 | 2016-04-12 | Emc Corporation | Method and system for performing full backup in a failover cluster |
US9325748B2 (en) * | 2012-11-15 | 2016-04-26 | Microsoft Technology Licensing, Llc | Characterizing service levels on an electronic network |
US9565080B2 (en) | 2012-11-15 | 2017-02-07 | Microsoft Technology Licensing, Llc | Evaluating electronic network devices in view of cost and service level considerations |
US9304875B2 (en) * | 2012-11-30 | 2016-04-05 | International Business Machines Corporation | Dynamically tracking logical units moving between input/output ports of a storage area network target |
US8769633B1 (en) | 2012-12-12 | 2014-07-01 | Bruce R. Backa | System and method for policy based control of NAS storage devices |
US20140181085A1 (en) | 2012-12-21 | 2014-06-26 | Commvault Systems, Inc. | Data storage system for analysis of data across heterogeneous information management systems |
US9021452B2 (en) | 2012-12-27 | 2015-04-28 | Commvault Systems, Inc. | Automatic identification of storage requirements, such as for use in selling data storage management solutions |
US10346259B2 (en) | 2012-12-28 | 2019-07-09 | Commvault Systems, Inc. | Data recovery using a cloud-based remote data recovery center |
TWI476581B (zh) * | 2012-12-28 | 2015-03-11 | Ibm | 主動式/使用中資訊設備叢集中提供高可用性的方法、裝置與電腦程式產品 |
US9063967B2 (en) | 2013-01-10 | 2015-06-23 | Pure Storage, Inc. | Performing copies in a storage system |
US11733908B2 (en) | 2013-01-10 | 2023-08-22 | Pure Storage, Inc. | Delaying deletion of a dataset |
US11768623B2 (en) | 2013-01-10 | 2023-09-26 | Pure Storage, Inc. | Optimizing generalized transfers between storage systems |
US10908835B1 (en) | 2013-01-10 | 2021-02-02 | Pure Storage, Inc. | Reversing deletion of a virtual machine |
WO2014132373A1 (ja) * | 2013-02-28 | 2014-09-04 | 株式会社 日立製作所 | ストレージシステム及び記憶デバイス障害回復方法 |
JP6056554B2 (ja) * | 2013-03-04 | 2017-01-11 | 日本電気株式会社 | クラスタシステム |
CN104838367A (zh) * | 2013-03-14 | 2015-08-12 | 株式会社日立制作所 | 灾难恢复虚拟化的方法和装置 |
US9842053B2 (en) | 2013-03-15 | 2017-12-12 | Sandisk Technologies Llc | Systems and methods for persistent cache logging |
WO2014144889A2 (en) * | 2013-03-15 | 2014-09-18 | Amazon Technologies, Inc. | Scalable analysis platform for semi-structured data |
CA2841685C (en) | 2013-03-15 | 2021-05-18 | Panasonic Avionics Corporation | System and method for providing multi-mode wireless data distribution |
US9940019B2 (en) | 2013-06-12 | 2018-04-10 | International Business Machines Corporation | Online migration of a logical volume between storage systems |
US9769062B2 (en) | 2013-06-12 | 2017-09-19 | International Business Machines Corporation | Load balancing input/output operations between two computers |
US9274916B2 (en) | 2013-06-12 | 2016-03-01 | International Business Machines Corporation | Unit attention processing in proxy and owner storage systems |
US9779003B2 (en) | 2013-06-12 | 2017-10-03 | International Business Machines Corporation | Safely mapping and unmapping host SCSI volumes |
US9274989B2 (en) | 2013-06-12 | 2016-03-01 | International Business Machines Corporation | Impersonating SCSI ports through an intermediate proxy |
US8819317B1 (en) | 2013-06-12 | 2014-08-26 | International Business Machines Corporation | Processing input/output requests using proxy and owner storage systems |
US9350601B2 (en) | 2013-06-21 | 2016-05-24 | Microsoft Technology Licensing, Llc | Network event processing and prioritization |
GB2515554A (en) | 2013-06-28 | 2014-12-31 | Ibm | Maintaining computer system operability |
US9887889B1 (en) * | 2013-07-15 | 2018-02-06 | Amazon Technologies, Inc. | State reconciliation using event tracking and polling |
US10148523B1 (en) * | 2013-09-16 | 2018-12-04 | Amazon Technologies, Inc. | Resetting computing resources in a service provider network |
US10263770B2 (en) | 2013-11-06 | 2019-04-16 | Pure Storage, Inc. | Data protection in a storage system using external secrets |
US11128448B1 (en) | 2013-11-06 | 2021-09-21 | Pure Storage, Inc. | Quorum-aware secret sharing |
US10365858B2 (en) | 2013-11-06 | 2019-07-30 | Pure Storage, Inc. | Thin provisioning in a storage device |
US10120617B2 (en) | 2013-11-12 | 2018-11-06 | International Business Machines Corporation | Using deterministic logical unit numbers to dynamically map data volumes |
US9323764B2 (en) | 2013-11-12 | 2016-04-26 | International Business Machines Corporation | Copying volumes between storage pools |
US9053002B2 (en) | 2013-11-12 | 2015-06-09 | International Business Machines Corporation | Thick and thin data volume management |
CN103617242B (zh) * | 2013-11-26 | 2017-05-10 | 曙光信息产业股份有限公司 | 一种分布式文件系统拓扑展示方法 |
US9626261B2 (en) * | 2013-11-27 | 2017-04-18 | Futurewei Technologies, Inc. | Failure recovery resolution in transplanting high performance data intensive algorithms from cluster to cloud |
US9170746B2 (en) * | 2014-01-07 | 2015-10-27 | Netapp, Inc. | Clustered raid assimilation management |
US9208086B1 (en) | 2014-01-09 | 2015-12-08 | Pure Storage, Inc. | Using frequency domain to prioritize storage of metadata in a cache |
US10033811B2 (en) | 2014-01-14 | 2018-07-24 | International Business Machines Corporation | Matching storage resource packs to storage services |
US9529552B2 (en) | 2014-01-14 | 2016-12-27 | International Business Machines Corporation | Storage resource pack management |
US9509771B2 (en) | 2014-01-14 | 2016-11-29 | International Business Machines Corporation | Prioritizing storage array management commands |
US10949382B2 (en) | 2014-01-15 | 2021-03-16 | Commvault Systems, Inc. | User-centric interfaces for information management systems |
JP6020476B2 (ja) * | 2014-01-20 | 2016-11-02 | 横河電機株式会社 | プロセス制御装置及びその更新方法 |
US10439996B2 (en) | 2014-02-11 | 2019-10-08 | Yaana Technologies, LLC | Method and system for metadata analysis and collection with privacy |
US10447503B2 (en) | 2014-02-21 | 2019-10-15 | Yaana Technologies, LLC | Method and system for data flow management of user equipment in a tunneling packet data network |
US20150244795A1 (en) | 2014-02-21 | 2015-08-27 | Solidfire, Inc. | Data syncing in a distributed system |
US9798596B2 (en) | 2014-02-27 | 2017-10-24 | Commvault Systems, Inc. | Automatic alert escalation for an information management system |
US10656864B2 (en) | 2014-03-20 | 2020-05-19 | Pure Storage, Inc. | Data replication within a flash storage array |
US9852034B2 (en) | 2014-03-24 | 2017-12-26 | International Business Machines Corporation | Efficient high availability for a SCSI target over a fibre channel |
JP6287495B2 (ja) | 2014-03-31 | 2018-03-07 | 富士通株式会社 | ストレージシステム、ストレージ装置 |
US10334037B2 (en) | 2014-03-31 | 2019-06-25 | Yaana Technologies, Inc. | Peer-to-peer rendezvous system for minimizing third party visibility and method thereof |
US20150293699A1 (en) | 2014-04-11 | 2015-10-15 | Graham Bromley | Network-attached storage enhancement appliance |
US9354992B2 (en) * | 2014-04-25 | 2016-05-31 | Netapp, Inc. | Interconnect path failover |
US9389968B2 (en) | 2014-04-30 | 2016-07-12 | Netapp, Inc. | Preventing non-detectable data loss during site switchover |
US9672165B1 (en) * | 2014-05-21 | 2017-06-06 | Veritas Technologies Llc | Data management tier coupling primary storage and secondary storage |
US9779268B1 (en) | 2014-06-03 | 2017-10-03 | Pure Storage, Inc. | Utilizing a non-repeating identifier to encrypt data |
US11399063B2 (en) | 2014-06-04 | 2022-07-26 | Pure Storage, Inc. | Network authentication for a storage system |
US9218244B1 (en) | 2014-06-04 | 2015-12-22 | Pure Storage, Inc. | Rebuilding data across storage nodes |
US9760446B2 (en) | 2014-06-11 | 2017-09-12 | Micron Technology, Inc. | Conveying value of implementing an integrated data management and protection system |
US9727409B2 (en) | 2014-06-17 | 2017-08-08 | Samsung Electronics Co., Ltd. | Device and system including adaptive repair circuit |
US10496556B1 (en) | 2014-06-25 | 2019-12-03 | Pure Storage, Inc. | Dynamic data protection within a flash storage system |
US9218407B1 (en) | 2014-06-25 | 2015-12-22 | Pure Storage, Inc. | Replication and intermediate read-write state for mediums |
US10333942B2 (en) * | 2014-07-08 | 2019-06-25 | International Business Machines Corporation | Encoding LDAP role and domain information in a fixed format |
US9798728B2 (en) | 2014-07-24 | 2017-10-24 | Netapp, Inc. | System performing data deduplication using a dense tree data structure |
US10296469B1 (en) * | 2014-07-24 | 2019-05-21 | Pure Storage, Inc. | Access control in a flash storage system |
US9495255B2 (en) | 2014-08-07 | 2016-11-15 | Pure Storage, Inc. | Error recovery in a storage cluster |
US9558069B2 (en) | 2014-08-07 | 2017-01-31 | Pure Storage, Inc. | Failure mapping in a storage array |
US9864761B1 (en) | 2014-08-08 | 2018-01-09 | Pure Storage, Inc. | Read optimization operations in a storage system |
US10430079B2 (en) | 2014-09-08 | 2019-10-01 | Pure Storage, Inc. | Adjusting storage capacity in a computing system |
TWI525449B (zh) * | 2014-09-10 | 2016-03-11 | 緯創資通股份有限公司 | 伺服器控制方法及機架控制器 |
US9671960B2 (en) | 2014-09-12 | 2017-06-06 | Netapp, Inc. | Rate matching technique for balancing segment cleaning and I/O workload |
US10133511B2 (en) | 2014-09-12 | 2018-11-20 | Netapp, Inc | Optimized segment cleaning technique |
US9836363B2 (en) | 2014-09-30 | 2017-12-05 | Microsoft Technology Licensing, Llc | Semi-automatic failover |
US10164841B2 (en) | 2014-10-02 | 2018-12-25 | Pure Storage, Inc. | Cloud assist for storage systems |
US10430282B2 (en) | 2014-10-07 | 2019-10-01 | Pure Storage, Inc. | Optimizing replication by distinguishing user and system write activity |
US9489132B2 (en) | 2014-10-07 | 2016-11-08 | Pure Storage, Inc. | Utilizing unmapped and unknown states in a replicated storage system |
US10285038B2 (en) | 2014-10-10 | 2019-05-07 | Yaana Technologies, Inc. | Method and system for discovering user equipment in a network |
US9507678B2 (en) | 2014-11-13 | 2016-11-29 | Netapp, Inc. | Non-disruptive controller replacement in a cross-cluster redundancy configuration |
US9836229B2 (en) | 2014-11-18 | 2017-12-05 | Netapp, Inc. | N-way merge technique for updating volume metadata in a storage I/O stack |
US10542426B2 (en) | 2014-11-21 | 2020-01-21 | Yaana Technologies, LLC | System and method for transmitting a secure message over a signaling network |
US9727485B1 (en) | 2014-11-24 | 2017-08-08 | Pure Storage, Inc. | Metadata rewrite and flatten optimization |
US9773007B1 (en) | 2014-12-01 | 2017-09-26 | Pure Storage, Inc. | Performance improvements in a storage system |
US20170235512A1 (en) * | 2014-12-11 | 2017-08-17 | Hitachi, Ltd. | Configuration of storage using profiles and templates |
US9552248B2 (en) | 2014-12-11 | 2017-01-24 | Pure Storage, Inc. | Cloud alert to replica |
US9588842B1 (en) | 2014-12-11 | 2017-03-07 | Pure Storage, Inc. | Drive rebuild |
US9864769B2 (en) | 2014-12-12 | 2018-01-09 | Pure Storage, Inc. | Storing data utilizing repeating pattern detection |
US10545987B2 (en) | 2014-12-19 | 2020-01-28 | Pure Storage, Inc. | Replication to the cloud |
US10296354B1 (en) | 2015-01-21 | 2019-05-21 | Pure Storage, Inc. | Optimized boot operations within a flash storage array |
US11947968B2 (en) | 2015-01-21 | 2024-04-02 | Pure Storage, Inc. | Efficient use of zone in a storage device |
US9720601B2 (en) | 2015-02-11 | 2017-08-01 | Netapp, Inc. | Load balancing technique for a storage array |
US9710165B1 (en) | 2015-02-18 | 2017-07-18 | Pure Storage, Inc. | Identifying volume candidates for space reclamation |
US10956299B2 (en) | 2015-02-27 | 2021-03-23 | Commvault Systems, Inc. | Diagnosing errors in data storage and archiving in a cloud or networking environment |
US9762460B2 (en) | 2015-03-24 | 2017-09-12 | Netapp, Inc. | Providing continuous context for operational information of a storage system |
US10082985B2 (en) | 2015-03-27 | 2018-09-25 | Pure Storage, Inc. | Data striping across storage nodes that are assigned to multiple logical arrays |
US9710317B2 (en) | 2015-03-30 | 2017-07-18 | Netapp, Inc. | Methods to identify, handle and recover from suspect SSDS in a clustered flash array |
US9996437B2 (en) * | 2015-03-31 | 2018-06-12 | EMC IP Holding Company LLC | Failover in a san environment |
US10178169B2 (en) | 2015-04-09 | 2019-01-08 | Pure Storage, Inc. | Point to point based backend communication layer for storage processing |
WO2016176661A1 (en) | 2015-04-29 | 2016-11-03 | Yaana Technologies, Inc. | Scalable and iterative deep packet inspection for communications networks |
JP6481489B2 (ja) * | 2015-04-30 | 2019-03-13 | 富士通株式会社 | 修正適用情報作成プログラム、修正適用情報作成装置及び修正適用情報作成方法 |
US10019168B2 (en) * | 2015-05-19 | 2018-07-10 | EMC IP Holding Company LLC | Method and system for multicasting data to persistent memory |
US10140149B1 (en) | 2015-05-19 | 2018-11-27 | Pure Storage, Inc. | Transactional commits with hardware assists in remote memory |
US10324914B2 (en) | 2015-05-20 | 2019-06-18 | Commvalut Systems, Inc. | Handling user queries against production and archive storage systems, such as for enterprise customers having large and/or numerous files |
US9813500B2 (en) | 2015-06-12 | 2017-11-07 | Cisco Technology, Inc. | Allocating cloud storage based on storage attributes |
US9547441B1 (en) | 2015-06-23 | 2017-01-17 | Pure Storage, Inc. | Exposing a geometry of a storage device |
US10310740B2 (en) | 2015-06-23 | 2019-06-04 | Pure Storage, Inc. | Aligning memory access operations to a geometry of a storage device |
US9817734B2 (en) * | 2015-06-29 | 2017-11-14 | Vmware, Inc. | Virtual machine recovery on non-shared storage in a single virtual infrastructure management instance |
US10785294B1 (en) * | 2015-07-30 | 2020-09-22 | EMC IP Holding Company LLC | Methods, systems, and computer readable mediums for managing fault tolerance of hardware storage nodes |
US9740566B2 (en) | 2015-07-31 | 2017-08-22 | Netapp, Inc. | Snapshot creation workflow |
US10353599B2 (en) | 2015-08-04 | 2019-07-16 | Toshiba Memory Corporation | Storage system that has a plurality of managers among which a master manager is switchable |
US11341136B2 (en) | 2015-09-04 | 2022-05-24 | Pure Storage, Inc. | Dynamically resizable structures for approximate membership queries |
US11269884B2 (en) | 2015-09-04 | 2022-03-08 | Pure Storage, Inc. | Dynamically resizable structures for approximate membership queries |
KR20170028825A (ko) | 2015-09-04 | 2017-03-14 | 퓨어 스토리지, 아이앤씨. | 압축된 인덱스들을 사용한 해시 테이블들에서의 메모리 효율적인 스토리지 및 탐색 |
US10320699B1 (en) * | 2015-10-22 | 2019-06-11 | VCE IP Holding Company LLC. | Computer implemented system and method, and a computer program product, for allocating virtualized resources across an enterprise |
US9843453B2 (en) | 2015-10-23 | 2017-12-12 | Pure Storage, Inc. | Authorizing I/O commands with I/O tokens |
US10135930B2 (en) | 2015-11-13 | 2018-11-20 | Yaana Technologies Llc | System and method for discovering internet protocol (IP) network address and port translation bindings |
US10235059B2 (en) | 2015-12-01 | 2019-03-19 | Netapp, Inc. | Technique for maintaining consistent I/O processing throughput in a storage system |
WO2017139705A1 (en) * | 2016-02-10 | 2017-08-17 | Yaana Technologies, Llc. | Dynamic elastic shadow service orchestrator |
US10162682B2 (en) * | 2016-02-16 | 2018-12-25 | Red Hat, Inc. | Automatically scaling up physical resources in a computing infrastructure |
WO2017171575A1 (en) * | 2016-03-30 | 2017-10-05 | Emc Corporation | Virtual machine storage management queue |
US10929022B2 (en) | 2016-04-25 | 2021-02-23 | Netapp. Inc. | Space savings reporting for storage system supporting snapshot and clones |
US10452297B1 (en) | 2016-05-02 | 2019-10-22 | Pure Storage, Inc. | Generating and optimizing summary index levels in a deduplication storage system |
US10133503B1 (en) | 2016-05-02 | 2018-11-20 | Pure Storage, Inc. | Selecting a deduplication process based on a difference between performance metrics |
US10528427B1 (en) * | 2016-06-09 | 2020-01-07 | Intuit, Inc. | Self-healing system for distributed services and applications |
WO2017214931A1 (en) * | 2016-06-16 | 2017-12-21 | Honeywell International Inc. | Hardware assist mechanisms for alive detection of redundant devices |
CN107526536B (zh) * | 2016-06-22 | 2020-11-27 | 伊姆西Ip控股有限责任公司 | 用于管理存储系统的方法和系统 |
US10996967B1 (en) * | 2016-06-24 | 2021-05-04 | EMC IP Holding Company LLC | Presenting virtual disks as dual ported drives to a virtual storage system |
US10203903B2 (en) | 2016-07-26 | 2019-02-12 | Pure Storage, Inc. | Geometry based, space aware shelf/writegroup evacuation |
US10467195B2 (en) | 2016-09-06 | 2019-11-05 | Samsung Electronics Co., Ltd. | Adaptive caching replacement manager with dynamic updating granulates and partitions for shared flash-based storage system |
US10455045B2 (en) | 2016-09-06 | 2019-10-22 | Samsung Electronics Co., Ltd. | Automatic data replica manager in distributed caching and data processing systems |
US10642763B2 (en) | 2016-09-20 | 2020-05-05 | Netapp, Inc. | Quality of service policy sets |
US10298442B2 (en) | 2016-09-27 | 2019-05-21 | International Business Machines Corporation | Error recovery process |
US10613974B2 (en) | 2016-10-04 | 2020-04-07 | Pure Storage, Inc. | Peer-to-peer non-volatile random-access memory |
US10162523B2 (en) | 2016-10-04 | 2018-12-25 | Pure Storage, Inc. | Migrating data between volumes using virtual copy operation |
US10191662B2 (en) | 2016-10-04 | 2019-01-29 | Pure Storage, Inc. | Dynamic allocation of segments in a flash storage system |
US10756816B1 (en) | 2016-10-04 | 2020-08-25 | Pure Storage, Inc. | Optimized fibre channel and non-volatile memory express access |
KR102576869B1 (ko) * | 2016-10-10 | 2023-09-11 | 한국전자통신연구원 | 소프트웨어 정의 네트워크 기반 서비스 기능 체인의 서비스 기능 경로 설정 장치 및 방법 |
US10481798B2 (en) | 2016-10-28 | 2019-11-19 | Pure Storage, Inc. | Efficient flash management for multiple controllers |
US10185505B1 (en) | 2016-10-28 | 2019-01-22 | Pure Storage, Inc. | Reading a portion of data to replicate a volume based on sequence numbers |
US10359942B2 (en) | 2016-10-31 | 2019-07-23 | Pure Storage, Inc. | Deduplication aware scalable content placement |
US11550481B2 (en) | 2016-12-19 | 2023-01-10 | Pure Storage, Inc. | Efficiently writing data in a zoned drive storage system |
US10452290B2 (en) | 2016-12-19 | 2019-10-22 | Pure Storage, Inc. | Block consolidation in a direct-mapped flash storage system |
US10768986B2 (en) * | 2017-01-06 | 2020-09-08 | International Business Machines Corporation | Management and utilization of storage capacities in a converged system |
US10824355B2 (en) | 2017-01-10 | 2020-11-03 | International Business Machines Corporation | Hierarchical management of storage capacity and data volumes in a converged system |
US10938901B2 (en) | 2017-01-11 | 2021-03-02 | International Business Machines Corporation | Management and utilization of data volumes in a converged system |
US11093146B2 (en) | 2017-01-12 | 2021-08-17 | Pure Storage, Inc. | Automatic load rebalancing of a write group |
US10430307B2 (en) * | 2017-02-05 | 2019-10-01 | International Business Machines Corporation | In-line announcement of impending critical events within a distributed storage environment |
US10949308B2 (en) | 2017-03-15 | 2021-03-16 | Commvault Systems, Inc. | Application aware backup of virtual machines |
US11032350B2 (en) | 2017-03-15 | 2021-06-08 | Commvault Systems, Inc. | Remote commands framework to control clients |
US11108858B2 (en) | 2017-03-28 | 2021-08-31 | Commvault Systems, Inc. | Archiving mail servers via a simple mail transfer protocol (SMTP) server |
US11074138B2 (en) | 2017-03-29 | 2021-07-27 | Commvault Systems, Inc. | Multi-streaming backup operations for mailboxes |
US10528488B1 (en) | 2017-03-30 | 2020-01-07 | Pure Storage, Inc. | Efficient name coding |
US10552294B2 (en) | 2017-03-31 | 2020-02-04 | Commvault Systems, Inc. | Management of internet of things devices |
US11010261B2 (en) | 2017-03-31 | 2021-05-18 | Commvault Systems, Inc. | Dynamically allocating streams during restoration of data |
US11221939B2 (en) | 2017-03-31 | 2022-01-11 | Commvault Systems, Inc. | Managing data from internet of things devices in a vehicle |
US11294786B2 (en) | 2017-03-31 | 2022-04-05 | Commvault Systems, Inc. | Management of internet of things devices |
US11403019B2 (en) | 2017-04-21 | 2022-08-02 | Pure Storage, Inc. | Deduplication-aware per-tenant encryption |
US10944671B2 (en) | 2017-04-27 | 2021-03-09 | Pure Storage, Inc. | Efficient data forwarding in a networked device |
US10146646B1 (en) | 2017-04-27 | 2018-12-04 | EMC IP Holding Company LLC | Synchronizing RAID configuration changes across storage processors |
US10402266B1 (en) | 2017-07-31 | 2019-09-03 | Pure Storage, Inc. | Redundant array of independent disks in a direct-mapped flash storage system |
CN110019502B (zh) | 2017-08-29 | 2023-03-21 | 阿里巴巴集团控股有限公司 | 在主数据库和备数据库之间的同步方法、数据库系统和设备 |
US10831935B2 (en) | 2017-08-31 | 2020-11-10 | Pure Storage, Inc. | Encryption management with host-side data reduction |
US10592293B2 (en) | 2017-08-31 | 2020-03-17 | Cisco Technology, Inc. | Tenant-specific policy generation and enforcement within containers |
US10776202B1 (en) | 2017-09-22 | 2020-09-15 | Pure Storage, Inc. | Drive, blade, or data shard decommission via RAID geometry shrinkage |
US10789211B1 (en) | 2017-10-04 | 2020-09-29 | Pure Storage, Inc. | Feature-based deduplication |
US10977274B2 (en) | 2017-10-05 | 2021-04-13 | Sungard Availability Services, Lp | Unified replication and recovery |
US10552452B2 (en) | 2017-10-16 | 2020-02-04 | Alteryx, Inc. | Asynchronously processing sequential data blocks |
US10884919B2 (en) | 2017-10-31 | 2021-01-05 | Pure Storage, Inc. | Memory management in a storage system |
US10860475B1 (en) | 2017-11-17 | 2020-12-08 | Pure Storage, Inc. | Hybrid flash translation layer |
US10664367B2 (en) * | 2017-11-30 | 2020-05-26 | International Business Machines Corporation | Shared storage parity on RAID |
US10970395B1 (en) | 2018-01-18 | 2021-04-06 | Pure Storage, Inc | Security threat monitoring for a storage system |
US11144638B1 (en) | 2018-01-18 | 2021-10-12 | Pure Storage, Inc. | Method for storage system detection and alerting on potential malicious action |
US11010233B1 (en) | 2018-01-18 | 2021-05-18 | Pure Storage, Inc | Hardware-based system monitoring |
US10467527B1 (en) | 2018-01-31 | 2019-11-05 | Pure Storage, Inc. | Method and apparatus for artificial intelligence acceleration |
US11036596B1 (en) | 2018-02-18 | 2021-06-15 | Pure Storage, Inc. | System for delaying acknowledgements on open NAND locations until durability has been confirmed |
US11494109B1 (en) | 2018-02-22 | 2022-11-08 | Pure Storage, Inc. | Erase block trimming for heterogenous flash memory storage devices |
US11934322B1 (en) | 2018-04-05 | 2024-03-19 | Pure Storage, Inc. | Multiple encryption keys on storage drives |
US11086738B2 (en) * | 2018-04-24 | 2021-08-10 | EMC IP Holding Company LLC | System and method to automate solution level contextual support |
US11385792B2 (en) | 2018-04-27 | 2022-07-12 | Pure Storage, Inc. | High availability controller pair transitioning |
US10678433B1 (en) | 2018-04-27 | 2020-06-09 | Pure Storage, Inc. | Resource-preserving system upgrade |
US10678436B1 (en) | 2018-05-29 | 2020-06-09 | Pure Storage, Inc. | Using a PID controller to opportunistically compress more data during garbage collection |
US11436023B2 (en) | 2018-05-31 | 2022-09-06 | Pure Storage, Inc. | Mechanism for updating host file system and flash translation layer based on underlying NAND technology |
US10776046B1 (en) | 2018-06-08 | 2020-09-15 | Pure Storage, Inc. | Optimized non-uniform memory access |
US11281577B1 (en) | 2018-06-19 | 2022-03-22 | Pure Storage, Inc. | Garbage collection tuning for low drive wear |
US10877844B2 (en) | 2018-07-11 | 2020-12-29 | Seagate Technology Llc | Using deletable user data storage space to recover from drive array failure |
US11869586B2 (en) | 2018-07-11 | 2024-01-09 | Pure Storage, Inc. | Increased data protection by recovering data from partially-failed solid-state devices |
US10891198B2 (en) | 2018-07-30 | 2021-01-12 | Commvault Systems, Inc. | Storing data to cloud libraries in cloud native formats |
CN109032849B (zh) * | 2018-08-30 | 2021-03-23 | 百度在线网络技术(北京)有限公司 | 热备份系统、热备份方法和计算机设备 |
US11133076B2 (en) | 2018-09-06 | 2021-09-28 | Pure Storage, Inc. | Efficient relocation of data between storage devices of a storage system |
US11194759B2 (en) | 2018-09-06 | 2021-12-07 | Pure Storage, Inc. | Optimizing local data relocation operations of a storage device of a storage system |
US11599422B2 (en) | 2018-10-16 | 2023-03-07 | EMC IP Holding Company LLC | System and method for device independent backup in distributed system |
US10846216B2 (en) | 2018-10-25 | 2020-11-24 | Pure Storage, Inc. | Scalable garbage collection |
US11113409B2 (en) | 2018-10-26 | 2021-09-07 | Pure Storage, Inc. | Efficient rekey in a transparent decrypting storage array |
US11194473B1 (en) | 2019-01-23 | 2021-12-07 | Pure Storage, Inc. | Programming frequently read data to low latency portions of a solid-state storage array |
US10768971B2 (en) | 2019-01-30 | 2020-09-08 | Commvault Systems, Inc. | Cross-hypervisor live mount of backed up virtual machine data |
US10951469B2 (en) * | 2019-01-31 | 2021-03-16 | EMC IP Holding Company LLC | Consumption-based elastic deployment and reconfiguration of hyper-converged software-defined storage |
US10708135B1 (en) | 2019-01-31 | 2020-07-07 | EMC IP Holding Company LLC | Unified and automated installation, deployment, configuration, and management of software-defined storage assets |
US11588633B1 (en) | 2019-03-15 | 2023-02-21 | Pure Storage, Inc. | Decommissioning keys in a decryption storage system |
US11194676B2 (en) * | 2019-03-26 | 2021-12-07 | International Business Machines Corporation | Data synchronization in high availability storage environments |
US11334254B2 (en) | 2019-03-29 | 2022-05-17 | Pure Storage, Inc. | Reliability based flash page sizing |
US11775189B2 (en) | 2019-04-03 | 2023-10-03 | Pure Storage, Inc. | Segment level heterogeneity |
US11397674B1 (en) | 2019-04-03 | 2022-07-26 | Pure Storage, Inc. | Optimizing garbage collection across heterogeneous flash devices |
US10990480B1 (en) | 2019-04-05 | 2021-04-27 | Pure Storage, Inc. | Performance of RAID rebuild operations by a storage group controller of a storage system |
US11099986B2 (en) | 2019-04-12 | 2021-08-24 | Pure Storage, Inc. | Efficient transfer of memory contents |
US10862761B2 (en) | 2019-04-29 | 2020-12-08 | EMC IP Holding Company LLC | System and method for management of distributed systems |
US11494273B2 (en) | 2019-04-30 | 2022-11-08 | Commvault Systems, Inc. | Holistically protecting serverless applications across one or more cloud computing environments |
US11487665B2 (en) | 2019-06-05 | 2022-11-01 | Pure Storage, Inc. | Tiered caching of data in a storage system |
US11461184B2 (en) | 2019-06-17 | 2022-10-04 | Commvault Systems, Inc. | Data storage management system for protecting cloud-based data including on-demand protection, recovery, and migration of databases-as-a-service and/or serverless database management systems |
US11281394B2 (en) | 2019-06-24 | 2022-03-22 | Pure Storage, Inc. | Replication across partitioning schemes in a distributed storage system |
US11269802B2 (en) | 2019-06-24 | 2022-03-08 | Western Digital Technologies, Inc. | Lightweight proxy for handling SCSI commands in an active array-standby array configuration |
US10929046B2 (en) | 2019-07-09 | 2021-02-23 | Pure Storage, Inc. | Identifying and relocating hot data to a cache determined with read velocity based on a threshold stored at a storage device |
US20210011816A1 (en) | 2019-07-10 | 2021-01-14 | Commvault Systems, Inc. | Preparing containerized applications for backup using a backup services container in a container-orchestration pod |
US11422751B2 (en) | 2019-07-18 | 2022-08-23 | Pure Storage, Inc. | Creating a virtual storage system |
US11301557B2 (en) | 2019-07-19 | 2022-04-12 | Dell Products L.P. | System and method for data processing device management |
US11086713B1 (en) | 2019-07-23 | 2021-08-10 | Pure Storage, Inc. | Optimized end-to-end integrity storage system |
US11307940B2 (en) | 2019-08-13 | 2022-04-19 | Kyndryl, Inc. | Cognitive data backup |
US11963321B2 (en) | 2019-09-11 | 2024-04-16 | Pure Storage, Inc. | Low profile latching mechanism |
US11003357B2 (en) * | 2019-09-13 | 2021-05-11 | EMC IP Holding Company LLC | Managing single path communication between a host and a storage system |
US11144374B2 (en) | 2019-09-20 | 2021-10-12 | Hewlett Packard Enterprise Development Lp | Data availability in a constrained deployment of a high-availability system in the presence of pending faults |
US11403043B2 (en) | 2019-10-15 | 2022-08-02 | Pure Storage, Inc. | Efficient data compression by grouping similar data within a data segment |
US11394782B2 (en) | 2019-11-17 | 2022-07-19 | Daniel Donahue | Flight management systems and methods |
US11755751B2 (en) | 2019-11-22 | 2023-09-12 | Pure Storage, Inc. | Modify access restrictions in response to a possible attack against data stored by a storage system |
US11720714B2 (en) | 2019-11-22 | 2023-08-08 | Pure Storage, Inc. | Inter-I/O relationship based detection of a security threat to a storage system |
US11645162B2 (en) | 2019-11-22 | 2023-05-09 | Pure Storage, Inc. | Recovery point determination for data restoration in a storage system |
US11675898B2 (en) | 2019-11-22 | 2023-06-13 | Pure Storage, Inc. | Recovery dataset management for security threat monitoring |
US11720692B2 (en) | 2019-11-22 | 2023-08-08 | Pure Storage, Inc. | Hardware token based management of recovery datasets for a storage system |
US11651075B2 (en) | 2019-11-22 | 2023-05-16 | Pure Storage, Inc. | Extensible attack monitoring by a storage system |
US11615185B2 (en) | 2019-11-22 | 2023-03-28 | Pure Storage, Inc. | Multi-layer security threat detection for a storage system |
US11520907B1 (en) | 2019-11-22 | 2022-12-06 | Pure Storage, Inc. | Storage system snapshot retention based on encrypted data |
US11341236B2 (en) | 2019-11-22 | 2022-05-24 | Pure Storage, Inc. | Traffic-based detection of a security threat to a storage system |
US11657155B2 (en) | 2019-11-22 | 2023-05-23 | Pure Storage, Inc | Snapshot delta metric based determination of a possible ransomware attack against data maintained by a storage system |
US11687418B2 (en) | 2019-11-22 | 2023-06-27 | Pure Storage, Inc. | Automatic generation of recovery plans specific to individual storage elements |
US11500788B2 (en) | 2019-11-22 | 2022-11-15 | Pure Storage, Inc. | Logical address based authorization of operations with respect to a storage system |
US11941116B2 (en) | 2019-11-22 | 2024-03-26 | Pure Storage, Inc. | Ransomware-based data protection parameter modification |
US11625481B2 (en) | 2019-11-22 | 2023-04-11 | Pure Storage, Inc. | Selective throttling of operations potentially related to a security threat to a storage system |
US11221785B2 (en) * | 2019-12-03 | 2022-01-11 | Western Digital Technologies, Inc. | Managing replication state for deleted objects |
US11467753B2 (en) | 2020-02-14 | 2022-10-11 | Commvault Systems, Inc. | On-demand restore of virtual machine data |
US11422900B2 (en) | 2020-03-02 | 2022-08-23 | Commvault Systems, Inc. | Platform-agnostic containerized application data protection |
US11321188B2 (en) | 2020-03-02 | 2022-05-03 | Commvault Systems, Inc. | Platform-agnostic containerized application data protection |
US11442768B2 (en) | 2020-03-12 | 2022-09-13 | Commvault Systems, Inc. | Cross-hypervisor live recovery of virtual machines |
US11500669B2 (en) | 2020-05-15 | 2022-11-15 | Commvault Systems, Inc. | Live recovery of virtual machines in a public cloud computing environment |
US11297006B1 (en) * | 2020-06-03 | 2022-04-05 | Cisco Technology, Inc. | Use of virtual lanes to solve credit stall on target ports in FC SAN |
CN111967062A (zh) * | 2020-08-21 | 2020-11-20 | 支付宝(杭州)信息技术有限公司 | 基于区块链的数据处理系统、方法及装置 |
US11314687B2 (en) | 2020-09-24 | 2022-04-26 | Commvault Systems, Inc. | Container data mover for migrating data between distributed data storage systems integrated with application orchestrators |
US11934875B2 (en) | 2020-12-09 | 2024-03-19 | Dell Products L.P. | Method and system for maintaining composed systems |
US20240061621A1 (en) * | 2020-12-15 | 2024-02-22 | Nebulon, Inc. | Allocation, distribution, and configuration of volumes in storage systems |
US11902089B2 (en) * | 2020-12-18 | 2024-02-13 | Dell Products L.P. | Automated networking device replacement system |
US20220237051A1 (en) * | 2021-01-28 | 2022-07-28 | Dell Products L.P. | Method and system for providing composable infrastructure capabilities |
US11604706B2 (en) | 2021-02-02 | 2023-03-14 | Commvault Systems, Inc. | Back up and restore related data on different cloud storage tiers |
US11294782B1 (en) * | 2021-03-22 | 2022-04-05 | EMC IP Holding Company LLC | Failover affinity rule modification based on node health information |
US11481139B1 (en) | 2021-03-31 | 2022-10-25 | Netapp, Inc. | Methods and systems to interface between a multi-site distributed storage system and an external mediator to efficiently process events related to continuity |
US11709743B2 (en) | 2021-03-31 | 2023-07-25 | Netapp, Inc. | Methods and systems for a non-disruptive automatic unplanned failover from a primary copy of data at a primary storage system to a mirror copy of the data at a cross-site secondary storage system |
US11360867B1 (en) | 2021-03-31 | 2022-06-14 | Netapp, Inc. | Re-aligning data replication configuration of primary and secondary data serving entities of a cross-site storage solution after a failover event |
US11934670B2 (en) | 2021-03-31 | 2024-03-19 | Netapp, Inc. | Performing various operations at the granularity of a consistency group within a cross-site storage solution |
US11550679B2 (en) | 2021-03-31 | 2023-01-10 | Netapp, Inc. | Methods and systems for a non-disruptive planned failover from a primary copy of data at a primary storage system to a mirror copy of the data at a cross-site secondary storage system |
US11740811B2 (en) | 2021-03-31 | 2023-08-29 | Netapp, Inc. | Reseeding a mediator of a cross-site storage solution |
US20220317898A1 (en) * | 2021-04-03 | 2022-10-06 | EMC IP Holding Company LLC | Managing Application Storage Resource Allocations Based on Application Specific Storage Policies |
US11803318B2 (en) * | 2021-04-21 | 2023-10-31 | EMC IP Holding Company LLC | Active-passive configuration for synchronous remote replication in an active-active metro cluster |
US11409622B1 (en) | 2021-04-23 | 2022-08-09 | Netapp, Inc. | Methods and systems for a non-disruptive planned failover from a primary copy of data at a primary storage system to a mirror copy of the data at a cross-site secondary storage system without using an external mediator |
US11928352B2 (en) | 2021-05-05 | 2024-03-12 | Netapp, Inc. | Maintaining the benefit of parallel splitting of ops between primary and secondary storage clusters in synchronous replication while adding support for op logging and early engagement of op logging |
US20220398520A1 (en) * | 2021-06-11 | 2022-12-15 | Dell Products L.P. | Infrastructure resource capacity management with intelligent expansion trigger computation |
US11593223B1 (en) | 2021-09-02 | 2023-02-28 | Commvault Systems, Inc. | Using resource pool administrative entities in a data storage management system to provide shared infrastructure to tenants |
US11892982B2 (en) | 2021-10-20 | 2024-02-06 | Netapp, Inc. | Facilitating immediate performance of volume resynchronization with the use of passive cache entries |
US11907562B2 (en) | 2022-07-11 | 2024-02-20 | Netapp, Inc. | Methods and storage nodes to decrease delay in resuming input output (I/O) operations after a non-disruptive event for a storage object of a distributed storage system by utilizing asynchronous inflight replay of the I/O operations |
Family Cites Families (115)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6A (en) * | 1836-08-10 | Thomas blanghard | ||
US4916608A (en) | 1986-05-30 | 1990-04-10 | International Business Machines Corporation | Provision of virtual storage resources to an operating system control program |
US5113515A (en) | 1989-02-03 | 1992-05-12 | Digital Equipment Corporation | Virtual instruction cache system using length responsive decoded instruction shifting and merging with prefetch buffer outputs to fill instruction buffer |
US5544347A (en) | 1990-09-24 | 1996-08-06 | Emc Corporation | Data storage system controlled remote data mirroring with respectively maintained data indices |
AU661680B2 (en) * | 1991-02-06 | 1995-08-03 | Storage Technology Corporation | Disk drive array memory system using nonuniform disk drives |
EP0522488B1 (en) * | 1991-07-10 | 2002-02-20 | Hitachi, Ltd. | Method of sorting on distributed database system and method of accessing thereto |
US5325505A (en) * | 1991-09-04 | 1994-06-28 | Storage Technology Corporation | Intelligent storage manager for data storage apparatus having simulation capability |
JP3160106B2 (ja) * | 1991-12-23 | 2001-04-23 | ヒュンダイ エレクトロニクス アメリカ | ディスクアレーの区分け方法 |
JP2839060B2 (ja) | 1992-03-02 | 1998-12-16 | インターナショナル・ビジネス・マシーンズ・コーポレイション | データ処理システムおよびデータ処理方法 |
US5394532A (en) * | 1992-04-15 | 1995-02-28 | Storage Technology Corporation | Disk drive array memory system having instant format capability |
US5493660A (en) | 1992-10-06 | 1996-02-20 | Hewlett-Packard Company | Software assisted hardware TLB miss handler |
US5455834A (en) | 1993-06-14 | 1995-10-03 | Hal Computer Systems, Inc. | Fault tolerant address translation method and system |
US5701462A (en) * | 1993-12-29 | 1997-12-23 | Microsoft Corporation | Distributed file system providing a unified name space with efficient name resolution |
US5729710A (en) * | 1994-06-22 | 1998-03-17 | International Business Machines Corporation | Method and apparatus for management of mapped and unmapped regions of memory in a microkernel data processing system |
DE69521101T2 (de) * | 1994-10-31 | 2001-10-18 | Ibm | Gemeinsam genutzte virtuelle Platten mit anwendungstransparenter Wiedergewinnung |
US5790773A (en) | 1995-12-29 | 1998-08-04 | Symbios, Inc. | Method and apparatus for generating snapshot copies for data backup in a raid subsystem |
US6104871A (en) * | 1996-04-30 | 2000-08-15 | International Business Machines Corporation | Utilizing batch requests to present membership changes to process groups |
US5704032A (en) * | 1996-04-30 | 1997-12-30 | International Business Machines Corporation | Method for group leader recovery in a distributed computing environment |
US6237009B1 (en) * | 1996-10-11 | 2001-05-22 | Sun Microsystems, Inc. | Lease renewal service |
US5909540A (en) * | 1996-11-22 | 1999-06-01 | Mangosoft Corporation | System and method for providing highly available data storage using globally addressable memory |
US7058696B1 (en) * | 1996-11-22 | 2006-06-06 | Mangosoft Corporation | Internet-based shared file service with native PC client access and semantics |
US5897661A (en) | 1997-02-25 | 1999-04-27 | International Business Machines Corporation | Logical volume manager and method having enhanced update capability with dynamic allocation of storage and minimal storage of metadata information |
US6067608A (en) | 1997-04-15 | 2000-05-23 | Bull Hn Information Systems Inc. | High performance mechanism for managing allocation of virtual memory buffers to virtual processes on a least recently used basis |
FR2762695B1 (fr) | 1997-04-29 | 1999-05-28 | Bull Sa | Procede et dispositif de connexion de l'unite centrale d'un systeme de traitement de donnees a un sous-systeme de stockage de donnees a redondance |
US6092061A (en) * | 1997-08-15 | 2000-07-18 | International Business Machines Corporation | Data partitioning by co-locating referenced and referencing records |
US6073220A (en) | 1997-09-03 | 2000-06-06 | Duocor, Inc. | Apparatus and method for providing a transparent disk drive back-up |
US5960451A (en) * | 1997-09-16 | 1999-09-28 | Hewlett-Packard Company | System and method for reporting available capacity in a data storage system with variable consumption characteristics |
US5996086A (en) | 1997-10-14 | 1999-11-30 | Lsi Logic Corporation | Context-based failover architecture for redundant servers |
US6202157B1 (en) | 1997-12-08 | 2001-03-13 | Entrust Technologies Limited | Computer network security system and method having unilateral enforceable security policy provision |
US6145028A (en) * | 1997-12-11 | 2000-11-07 | Ncr Corporation | Enhanced multi-pathing to an array of storage devices |
US6567889B1 (en) | 1997-12-19 | 2003-05-20 | Lsi Logic Corporation | Apparatus and method to provide virtual solid state disk in cache memory in a storage controller |
US6247077B1 (en) * | 1998-02-06 | 2001-06-12 | Ncr Corporation | Highly-scalable parallel processing computer system architecture |
US6185695B1 (en) * | 1998-04-09 | 2001-02-06 | Sun Microsystems, Inc. | Method and apparatus for transparent server failover for highly available objects |
US6101541A (en) * | 1998-04-21 | 2000-08-08 | International Business Machines Corporation | Active polling by network LDAP directory |
US6052720A (en) * | 1998-05-14 | 2000-04-18 | Sun Microsystems, Inc. | Generic schema for storing configuration information on a server computer |
US6625650B2 (en) | 1998-06-27 | 2003-09-23 | Intel Corporation | System for multi-layer broadband provisioning in computer networks |
US6421711B1 (en) * | 1998-06-29 | 2002-07-16 | Emc Corporation | Virtual ports for data transferring of a data storage system |
US6295575B1 (en) | 1998-06-29 | 2001-09-25 | Emc Corporation | Configuring vectors of logical storage units for data storage partitioning and sharing |
US6182142B1 (en) * | 1998-07-10 | 2001-01-30 | Encommerce, Inc. | Distributed access management of information resources |
EP1120787A4 (en) * | 1998-09-18 | 2008-08-27 | Toshiba Kk | INFORMATION RECORDING METHOD, INFORMATION RECORDING DEVICE, AND INFORMATION CARRIER |
US6148414A (en) * | 1998-09-24 | 2000-11-14 | Seek Systems, Inc. | Methods and systems for implementing shared disk array management functions |
JP4412685B2 (ja) * | 1998-09-28 | 2010-02-10 | 株式会社日立製作所 | 記憶制御装置及びこれを用いたデータ格納システムの取り扱い方法 |
US6332177B1 (en) | 1998-10-19 | 2001-12-18 | Lsi Logic Corporation | N-way raid 1 on M drives block mapping |
EP1131719A4 (en) * | 1998-11-14 | 2007-10-31 | Mti Tech Corp | ILLUSTRATION OF LOGICAL UNITS IN A STORAGE AREA NETWORK |
US6366931B1 (en) * | 1998-11-20 | 2002-04-02 | Hewlett-Packard Company | Apparatus for and method of non-linear constraint optimization in storage system configuration |
US6542961B1 (en) * | 1998-12-22 | 2003-04-01 | Hitachi, Ltd. | Disk storage system including a switch |
JP2000242434A (ja) | 1998-12-22 | 2000-09-08 | Hitachi Ltd | 記憶装置システム |
JP4400895B2 (ja) * | 1999-01-07 | 2010-01-20 | 株式会社日立製作所 | ディスクアレイ制御装置 |
US6442666B1 (en) | 1999-01-28 | 2002-08-27 | Infineon Technologies Ag | Techniques for improving memory access in a virtual memory system |
IL128814A (en) | 1999-03-03 | 2004-09-27 | Packet Technologies Ltd | Local network security |
US6484229B1 (en) * | 1999-03-05 | 2002-11-19 | Hitachi, Ltd. | Magnetic disk apparatus |
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 |
US6640278B1 (en) * | 1999-03-25 | 2003-10-28 | Dell Products L.P. | Method for configuration and management of storage resources in a storage network |
US6654830B1 (en) * | 1999-03-25 | 2003-11-25 | Dell Products L.P. | Method and system for managing data migration for a storage system |
IE20000203A1 (en) * | 1999-03-25 | 2001-02-21 | Converge Net Technologies Inc | Storage domain management system |
US6289376B1 (en) | 1999-03-31 | 2001-09-11 | Diva Systems Corp. | Tightly-coupled disk-to-CPU storage server |
US6275898B1 (en) * | 1999-05-13 | 2001-08-14 | Lsi Logic Corporation | Methods and structure for RAID level migration within a logical unit |
US6208543B1 (en) | 1999-05-18 | 2001-03-27 | Advanced Micro Devices, Inc. | Translation lookaside buffer (TLB) including fast hit signal generation circuitry |
US6453404B1 (en) | 1999-05-27 | 2002-09-17 | Microsoft Corporation | Distributed data cache with memory allocation model |
US6594671B1 (en) * | 1999-06-14 | 2003-07-15 | International Business Machines Corporation | Separating privileged functions from non-privileged functions in a server instance |
US6567818B1 (en) * | 1999-06-14 | 2003-05-20 | International Business Machines Corporation | Employing management policies to manage instances of objects |
US6587874B1 (en) * | 1999-06-29 | 2003-07-01 | Cisco Technology, Inc. | Directory assisted autoinstall of network devices |
JP3952640B2 (ja) * | 1999-09-07 | 2007-08-01 | 株式会社日立製作所 | データバックアップ方法、メインフレーム系ストレージシステムおよびメインフレームホストコンピュータ |
US6725307B1 (en) * | 1999-09-23 | 2004-04-20 | International Business Machines Corporation | Method and system for controlling data transfers with physical separation of data functionality from address and control functionality in a distributed multi-bus multiprocessor system |
US6671776B1 (en) * | 1999-10-28 | 2003-12-30 | Lsi Logic Corporation | Method and system for determining and displaying the topology of a storage array network having multiple hosts and computer readable medium for generating the topology |
US6714952B2 (en) | 1999-11-10 | 2004-03-30 | Emc Corporation | Method for backup and restore of a multi-lingual network file server |
US6490619B1 (en) * | 1999-12-07 | 2002-12-03 | International Business Machines Corporation | Method and system for managing multiple lightweight directory access protocol directory servers |
US6571354B1 (en) * | 1999-12-15 | 2003-05-27 | Dell Products, L.P. | Method and apparatus for storage unit replacement according to array priority |
US6742034B1 (en) * | 1999-12-16 | 2004-05-25 | Dell Products L.P. | Method for storage device masking in a storage area network and storage controller and storage subsystem for using such a method |
JP2003517682A (ja) * | 1999-12-17 | 2003-05-27 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | キャッシュを有するデータプロセッサ |
US7328233B2 (en) * | 2000-01-19 | 2008-02-05 | Corybant, Inc. | Method and apparatus for implementing an active information model |
US6526478B1 (en) | 2000-02-02 | 2003-02-25 | Lsi Logic Corporation | Raid LUN creation using proportional disk mapping |
US6766397B2 (en) * | 2000-02-07 | 2004-07-20 | Emc Corporation | Controlling access to a storage device |
US6636239B1 (en) * | 2000-02-24 | 2003-10-21 | Sanavigator, Inc. | Method of operating a graphical user interface to selectively enable and disable a datapath in a network |
US6810396B1 (en) * | 2000-03-09 | 2004-10-26 | Emc Corporation | Managed access of a backup storage system coupled to a network |
US6691244B1 (en) * | 2000-03-14 | 2004-02-10 | Sun Microsystems, Inc. | System and method for comprehensive availability management in a high-availability computer system |
US6671280B1 (en) * | 2000-03-29 | 2003-12-30 | International Business Machines Corporation | Network processor for multiprotocol data flows |
US6658590B1 (en) | 2000-03-30 | 2003-12-02 | Hewlett-Packard Development Company, L.P. | Controller-based transaction logging system for data recovery in a storage area network |
US6629264B1 (en) | 2000-03-30 | 2003-09-30 | Hewlett-Packard Development Company, L.P. | Controller-based remote copy system with logical unit grouping |
CA2405405C (en) | 2000-04-18 | 2011-03-22 | Nelson Nahum | Storage virtualization in a storage area network |
US6598174B1 (en) | 2000-04-26 | 2003-07-22 | Dell Products L.P. | Method and apparatus for storage unit replacement in non-redundant array |
AU2001261141A1 (en) * | 2000-05-02 | 2001-11-12 | Sun Microsystems, Inc. | Method and system for achieving high availability in a networked computer system |
US6971016B1 (en) * | 2000-05-31 | 2005-11-29 | International Business Machines Corporation | Authenticated access to storage area network |
US6718404B2 (en) * | 2000-06-02 | 2004-04-06 | Hewlett-Packard Development Company, L.P. | Data migration using parallel, distributed table driven I/O mapping |
JP2001350707A (ja) * | 2000-06-06 | 2001-12-21 | Hitachi Ltd | 情報処理システム、記憶装置の割り当て方法 |
EP1162795A3 (en) * | 2000-06-09 | 2007-12-26 | Broadcom Corporation | Gigabit switch supporting improved layer 3 switching |
US6779094B2 (en) * | 2000-06-19 | 2004-08-17 | Storage Technology Corporation | Apparatus and method for instant copy of data by writing new data to an additional physical storage area |
US6813686B1 (en) * | 2000-06-27 | 2004-11-02 | Emc Corporation | Method and apparatus for identifying logical volumes in multiple element computer storage domains |
US6625747B1 (en) | 2000-06-30 | 2003-09-23 | Dell Products L.P. | Computer storage system and failover method |
US7080077B2 (en) * | 2000-07-10 | 2006-07-18 | Oracle International Corporation | Localized access |
US8204999B2 (en) | 2000-07-10 | 2012-06-19 | Oracle International Corporation | Query string processing |
US6651154B1 (en) * | 2000-07-11 | 2003-11-18 | International Business Machines Corporation | Method, system, and program for expanding the storage space in an array of storage units |
US6618798B1 (en) * | 2000-07-11 | 2003-09-09 | International Business Machines Corporation | Method, system, program, and data structures for mapping logical units to a storage space comprises of at least one array of storage units |
US6775230B1 (en) * | 2000-07-18 | 2004-08-10 | Hitachi, Ltd. | Apparatus and method for transmitting frames via a switch in a storage area network |
CA2387550A1 (en) | 2000-08-07 | 2002-02-14 | Inrange Technologies Corporation | Fibre channel architecture |
US7330806B2 (en) * | 2000-08-08 | 2008-02-12 | Reohr Iii John | Virtualized network |
US6609213B1 (en) | 2000-08-10 | 2003-08-19 | Dell Products, L.P. | Cluster-based system and method of recovery from server failures |
US6952734B1 (en) * | 2000-08-21 | 2005-10-04 | Hewlett-Packard Development Company, L.P. | Method for recovery of paths between storage area network nodes with probationary period and desperation repair |
US6977927B1 (en) * | 2000-09-18 | 2005-12-20 | Hewlett-Packard Development Company, L.P. | Method and system of allocating storage resources in a storage area network |
US6804819B1 (en) * | 2000-09-18 | 2004-10-12 | Hewlett-Packard Development Company, L.P. | Method, system, and computer program product for a data propagation platform and applications of same |
US8949471B2 (en) | 2000-11-02 | 2015-02-03 | Oracle America, Inc. | TCP/UDP acceleration |
JP4073161B2 (ja) * | 2000-12-06 | 2008-04-09 | 株式会社日立製作所 | ディスクストレージのアクセスシステム |
US20020073257A1 (en) * | 2000-12-07 | 2002-06-13 | Ibm Corporation | Transferring foreign protocols across a system area network |
US7711818B2 (en) * | 2000-12-22 | 2010-05-04 | Oracle International Corporation | Support for multiple data stores |
US6871296B2 (en) * | 2000-12-29 | 2005-03-22 | International Business Machines Corporation | Highly available TCP systems with fail over connections |
US20020128815A1 (en) * | 2001-01-06 | 2002-09-12 | Merchant Arif A. | Automatic configuration of a data storage system |
US6857059B2 (en) | 2001-01-11 | 2005-02-15 | Yottayotta, Inc. | Storage virtualization system and methods |
US6968463B2 (en) * | 2001-01-17 | 2005-11-22 | Hewlett-Packard Development Company, L.P. | System for controlling access to resources in a storage area network |
US6769071B1 (en) * | 2001-01-23 | 2004-07-27 | Adaptec, Inc. | Method and apparatus for intelligent failover in a multi-path system |
US6594745B2 (en) * | 2001-01-31 | 2003-07-15 | Hewlett-Packard Development Company, L.P. | Mirroring agent accessible to remote host computers, and accessing remote data-storage devices, via a communcations medium |
US6880062B1 (en) | 2001-02-13 | 2005-04-12 | Candera, Inc. | Data mover mechanism to achieve SAN RAID at wire speed |
WO2002065309A1 (en) | 2001-02-13 | 2002-08-22 | Candera, Inc. | System and method for policy based storage provisioning and management |
US7415671B2 (en) * | 2001-06-08 | 2008-08-19 | Computer Associates Think, Inc. | Interactive hierarchical status display |
DE10134540C1 (de) * | 2001-07-16 | 2003-03-06 | Siemens Ag | Magnetresonanzgerät mit einem Erzeuger mechanischer Schwingungen |
US6920494B2 (en) * | 2001-10-05 | 2005-07-19 | International Business Machines Corporation | Storage area network methods and apparatus with virtual SAN recognition |
-
2002
- 2002-02-13 WO PCT/US2002/004510 patent/WO2002065309A1/en not_active Application Discontinuation
- 2002-02-13 DE DE60237583T patent/DE60237583D1/de not_active Expired - Lifetime
- 2002-02-13 JP JP2002564745A patent/JP4457185B2/ja not_active Expired - Lifetime
- 2002-02-13 US US10/076,906 patent/US7039827B2/en not_active Expired - Lifetime
- 2002-02-13 US US10/077,696 patent/US7594024B2/en active Active
- 2002-02-13 EP EP02709592A patent/EP1370945B1/en not_active Expired - Lifetime
- 2002-02-13 WO PCT/US2002/004472 patent/WO2002065249A2/en not_active Application Discontinuation
- 2002-02-13 EP EP02718983.6A patent/EP1370950B1/en not_active Expired - Lifetime
- 2002-02-13 JP JP2002564739A patent/JP4457184B2/ja not_active Expired - Lifetime
- 2002-02-13 EP EP02740113A patent/EP1368742A4/en not_active Ceased
- 2002-02-13 AU AU2002306495A patent/AU2002306495A1/en not_active Abandoned
- 2002-02-13 US US10/077,482 patent/US6801992B2/en not_active Expired - Lifetime
- 2002-02-13 AT AT02709592T patent/ATE480822T1/de not_active IP Right Cessation
- 2002-02-13 WO PCT/US2002/004908 patent/WO2002065290A1/en active Application Filing
- 2002-02-13 EP EP02707860A patent/EP1370947A4/en not_active Withdrawn
- 2002-02-13 WO PCT/US2002/005504 patent/WO2002065298A1/en active Application Filing
- 2002-02-13 US US10/076,855 patent/US7415506B2/en not_active Expired - Lifetime
-
2004
- 2004-08-26 US US10/928,081 patent/US7065616B2/en not_active Expired - Lifetime
-
2006
- 2006-01-03 US US11/325,578 patent/US7640451B2/en not_active Expired - Lifetime
-
2013
- 2013-04-26 US US13/871,718 patent/US20130297902A1/en not_active Abandoned
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006517699A (ja) * | 2003-01-13 | 2006-07-27 | シエラ・ロジック、インコーポレイテッド | 高可用性大容量ストレージデバイスシェルフ |
JP4690202B2 (ja) * | 2003-01-13 | 2011-06-01 | エミュレックス デザイン アンド マニュファクチュアリング コーポレーション | 高可用性大容量ストレージデバイスシェルフ |
JP2006209727A (ja) * | 2005-01-25 | 2006-08-10 | Seagate Technology Llc | 書き込みリファレンスメッシュを構成する方法およびシステム |
JP4679963B2 (ja) * | 2005-01-25 | 2011-05-11 | シーゲイト テクノロジー エルエルシー | 書き込みリファレンスメッシュを構成する方法およびシステム |
JP2008529167A (ja) * | 2005-01-27 | 2008-07-31 | ネットワーク・アプライアンス・インコーポレイテッド | 協調的共用ストレージアーキテクチャ |
JP2013542476A (ja) * | 2010-08-20 | 2013-11-21 | インターナショナル・ビジネス・マシーンズ・コーポレーション | ファブリックに対する情報を集めるためにエージェントの等価サブセットを定める方法、およびそのシステム。 |
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4457185B2 (ja) | シリコンベースのストレージ仮想化サーバ | |
TW583544B (en) | Infiniband work and completion queue management via head and tail circular buffers with indirect work queue entries | |
US7877545B2 (en) | Online restriping technique for distributed network based virtualization | |
US7529781B2 (en) | Online initial mirror synchronization and mirror synchronization verification in storage area networks | |
JP4372553B2 (ja) | 仮想エンクロージャを通してストレージエリアネットワーク内のストレージの仮想化を実現する方法および装置 | |
US7447197B2 (en) | System and method of providing network node services | |
US7752361B2 (en) | Apparatus and method for data migration in a storage processing device | |
US7353305B2 (en) | Apparatus and method for data virtualization in a storage processing device | |
US9804788B2 (en) | Method and apparatus for transferring information between different streaming protocols at wire speed | |
US8386685B2 (en) | Apparatus and method for packet based storage virtualization | |
US8200871B2 (en) | Systems and methods for scalable distributed storage processing | |
US7315914B1 (en) | Systems and methods for managing virtualized logical units using vendor specific storage array commands | |
US20050278465A1 (en) | Methods and structure for supporting persistent reservations in a multiple-path storage environment | |
US20060013222A1 (en) | Apparatus and method for internet protocol data processing in a storage processing device | |
US8782245B1 (en) | System and method for managing provisioning of storage resources in a network with virtualization of resources in such a network | |
JP2005525619A (ja) | ストレージ・エリア・ネットワーク内で記憶の仮想化を実施する方法及び装置 | |
WO2005099201A2 (en) | System and method of providing network node services | |
US20060047850A1 (en) | Multi-chassis, multi-path storage solutions in storage area networks | |
US20040141498A1 (en) | Apparatus and method for data snapshot processing in a storage processing device | |
US8131857B2 (en) | Fibre channel intelligent target management system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050210 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20070702 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070718 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20071017 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20071024 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20071116 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20071126 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20071218 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080811 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20081110 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20081117 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20081209 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20081216 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20090109 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20090119 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090212 |
|
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: 20090831 |
|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A711 Effective date: 20090915 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20090917 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20090915 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 Ref document number: 4457185 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130219 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130219 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140219 Year of fee payment: 4 |
|
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 |