JPH1185710A - サーバ装置およびファイル管理方法 - Google Patents

サーバ装置およびファイル管理方法

Info

Publication number
JPH1185710A
JPH1185710A JP9250249A JP25024997A JPH1185710A JP H1185710 A JPH1185710 A JP H1185710A JP 9250249 A JP9250249 A JP 9250249A JP 25024997 A JP25024997 A JP 25024997A JP H1185710 A JPH1185710 A JP H1185710A
Authority
JP
Japan
Prior art keywords
data
devices
processor
storage means
storage
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.)
Pending
Application number
JP9250249A
Other languages
English (en)
Inventor
Shigehiro Asano
滋博 浅野
Tatsunori Kanai
達徳 金井
Shinichi Sugano
伸一 菅野
Seiji Maeda
誠司 前田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP9250249A priority Critical patent/JPH1185710A/ja
Priority to US09/154,031 priority patent/US6327614B1/en
Publication of JPH1185710A publication Critical patent/JPH1185710A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0658Controller construction arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/2895Intermediate processing functionally located close to the data provider application, e.g. reverse proxies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/563Data redirection of data network streams

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)
  • Multi Processors (AREA)
  • Computer And Data Communications (AREA)

Abstract

(57)【要約】 【解決課題】 本発明は、管理が簡単でかつコストパフ
ォーマンスに優れたサーバを提供することを目的とする
とともに、階層キャッシュシステムにおける効率のよい
ファイル管理方法をも提供することを目的とする。 【解決手段】 本発明は、少なくとも第1のプロセッサ
及び第1の記憶手段を有する複数の第1の装置(11)
と、前記複数の第1の装置と転送手段(12)を介して
接続される、少なくとも第2のプロセッサ及び第2の記
憶手段を有する複数の第2の装置(13)と、前記複数
の第2の装置の各々に接続された第3の記憶手段(1
4)とを具備し、前記第1の装置に対して与えられるネ
ットワークからの要求に基づく処理を、所定の条件に応
じて、前記第1の記憶手段、前記第2の記憶手段または
前記第3の記憶手段のうちのいずれかの記憶手段に対し
て行うことを特徴とするサーバ装置である。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、サーバ装置および
ファイル管理方法に関するものである。
【0002】
【従来の技術】インターネットの発達により情報の流通
の速度が飛躍的に高まり、ますます多くの人がインター
ネットにアクセスするようになっている。情報を提供す
る手段としてはWorld Wide Web(以下「Web 」という)
によるものが一般的であり、プロトコルはHTTPおよ
びTCP/IPが使用される。情報を多くの人に提供す
るためには、ネットワークのバンド幅の拡大だけでな
く、情報を蓄積したサーバがネットワークに送り出す能
力の拡大も同時に必要である。
【0003】サーバに必要な機能は、主として、ストレ
ージデバイスに蓄積された情報をネットワークに送り出
す機能であるが、ストレージデバイスに蓄積された情報
のフォーマットとネットワークに送り出す情報のフォー
マットが異なるために、フォーマットの変換を行わなけ
ればならない。また、HTTPやTCP/IPで通信す
るためにプロトコルを実行する必要がある。
【0004】従って、これらの処理を1台のプロセッサ
で行っていたのではプロセッサにかかる負荷が増大し、
性能向上のボトルネックとなる。また、前述したフォー
マット変換のためにプロセッサがメモリ内で情報をコピ
ーすることが頻繁に起こるので大きなメモリバンド幅が
必要になる。
【0005】これらのボトルネックを緩和するためにプ
ロセッサおよびメモリを複数結合するマルチプロセッサ
方式のサーバが知られている。例えば、分散PC方式
は、パフォーマンスを向上させるために、ネットワーク
上に複数のWebサーバを設置したものである。しかし
ながら、この分散PC方式では、複数のWebサーバの
それぞれにファイルを分割するためファイル管理が煩雑
であるとともに、どのWebサーバにアクセスするかと
いう制御が必要であり、このため複雑な管理が必要にな
る。また、あるWebサーバに蓄積されているファイル
にアクセスが偏ると、そのWebサーバの負荷が増えて
しまうという問題もあった。
【0006】また、共有メモリマルチプロセッサ方式に
おいては、CPUのキャッシュメモリにある程度のヒッ
ト率が見込まれることを前提に、それにあわせたバスお
よびメモリのバンド幅を用意する。しかしながら、共有
メモリマルチプロセッサをWebサーバに使用した場合
には、CPUのキャッシュにはほとんどヒットしないの
でこれがボトルネックとなり、高価で高速なCPUの能
力は有効に活用することができなかった。
【0007】さらに、フロントエンド+ファイルサーバ
方式は、フロントエンドでHTTPを実行し、必要なフ
ァイルをバックエンドネットワークを経由してファイル
サーバに要求するというものである("Application of
NFS Servers to Strategic Internet/ Intranet Websit
e Design " Technical Report 13,Version 1.0,July199
6, Auspex Systems, Inc. Santa Clara, California
)。
【0008】しかしながら、この方式では、フロントエ
ンドとファイルサーバの間の通信がバックエンドネット
ワークに委ねられている。そのため、バックエンドネッ
トワークは、一般にNFSなど標準の通信規約により行
われ、この通信を行うためにフロントエンド、ファイル
サーバともにCPUの負荷が増大することが問題とな
る。
【0009】また、機能分散マルチプロセッサ方式は、
ネットワークコントローラ、ファイルコントローラおよ
びストレージコントローラが、共有バス上でシステムメ
モリを共有する構造を有しているものである(USP
5,355,453)。
【0010】しかしながら、この方式では、複数のネッ
トワークコントローラの読み出しが、全てシステムメモ
リに集中するので、共有バスおよびシステムメモリのボ
トルネックになりやすいという問題があった。
【0011】また、疎結合マルチプロセッサ方式は、ハ
イパーキューブ等で結合されたプロセッサ間結合網を持
った疎結合のマルチプロセッサをWebサーバとして使
用する("A Scalable and Highly Available Web Serve
r" Proceedings of the IEEE Computer Conference (C
OMPCON), Santa Clara, March, 1996.)。
【0012】しかしながら、この方式では、プロセッサ
間結合網のコストが非常に高いことからシステム全体の
価格を押し上げるという問題があった。ところで、TC
P/IPは、ネットワークに広く使用されているプロト
コルであるが、TCP/IPのパケットをネットワーク
に送り出す場合は、パケットに対してパリティを計算
し、ヘッダ部に付加する必要がある。しかるに、従来
は、パリティの計算はCPUによって送り出すデータを
読み出して計算を行っていたが、この計算はメモリバン
ド幅にもCPUにも負荷をかけるので望ましくない。
【0013】また、複数のキャッシュ階層の管理におい
ては、第1のキャッシュメモリの内容を第2のキャッシ
ュメモリが全て包含するというマルチレベルインクルー
ジョンという性質が満たされているのが一般的であっ
た。この方法は、第1のキャッシュメモリの速度より第
2のキャッシュメモリの速度が遅く、第2のキャッシュ
メモリはビット単価が安いので容量が大きいという前提
において効率的である。
【0014】しかしながら、第1のキャッシュメモリ手
段、第2のキャッシュメモリ手段の速度の差は大きくな
いような構成において、キャッシュミスした場合、ディ
スクアクセスにより多大な遅延時間をともなう。この場
合、キャッシュの実効的な容量を増大させるのが重要で
あるにもかかわらず、従来のキャッシュ管理方式におい
ては、第1のキャッシュ手段と、第2のキャッシュ手段
とに同じ内容が入っているのでメモリ容量にむだが生じ
ることになっていた。
【0015】
【発明が解決しようとする課題】上記従来のサーバの構
成では、その管理が煩雑であったり、コストパフォーマ
ンスが低いという問題があった。また、パリティの計算
はCPUによって送り出すデータを読み出して計算を行
っていたが、このような計算はメモリバンド幅にもCP
Uにも負荷をかけるので望ましくないかった。
【0016】さらに、従来のキャッシュ管理方式におい
ては、第1のキャッシュ手段と、第2のキャッシュ手段
とに同じ内容が入っているのでメモリ容量にむだが生じ
ることになっていた。
【0017】そこで、本発明は、管理が簡単でかつコス
トパフォーマンスに優れたサーバを提供することを目的
とする。また、本発明は、効率のよいネットワークへの
送出手段を提供することをも目的とする。さらに、本発
明は、階層キャッシュシステムにおける効率のよい記憶
領域管理方式をも提供することを目的とする。
【0018】
【課題を解決するための手段】請求項1に係る発明は、
少なくとも第1のプロセッサ及び第1の記憶手段を有す
る複数の第1の装置(ネットワークインターフェースプ
ロセッサ)と、前記複数の第1の装置と転送手段(内部
バス)を介して接続される、少なくとも第2のプロセッ
サ及び第2の記憶手段を有する複数の第2の装置(ディ
スクインターフェースプロセッサ)と、前記複数の第2
の装置の各々に接続された第3の記憶手段(ストレージ
デバイス)とを具備し、前記第1の装置に対して与えら
れるネットワークからの要求に基づく処理を、所定の条
件に応じて、前記第1の記憶手段、前記第2の記憶手段
または前記第3の記憶手段のうちのいずれかの記憶手段
に対して行うことを特徴とするサーバ装置である。
【0019】また、請求項2に係る発明は、ネットワー
クから要求を与えられる前記第1の装置は、該要求に関
連する所定の情報に基づいて、前記第2の装置を選択す
ることを特徴とする。
【0020】さらに、請求項3に係る発明は、前記第3
の記憶手段から前記第1の装置に所定のデータが送出さ
れる際に、所定のパリティ計算を行い、該得られた計算
結果を該所定のデータとともに、前記第1の記憶手段に
記憶することを特徴とする。
【0021】また、請求項4に係る発明は、少なくとも
第1のプロセッサ及び第1の記憶手段を有する複数の第
1の装置と、前記複数の第1の装置と転送手段を介して
接続される、少なくとも第2のプロセッサ及び第2の記
憶手段を有する複数の第2の装置と、前記複数の第2の
装置の各々に接続された第3の記憶手段とを具備し、前
記第1の記憶手段に第1のデータが記憶され、前記第2
の記憶手段に該第1のデータに対応する第2のデータが
記憶されている場合に、前記第1の記憶手段から該第1
のデータが追い出される(実際に追い出す場合のほか、
データへのアクセスの無効化等を含む。)ときは、前記
第2の記憶手段に記憶された第2のデータの追い出し順
位を他のデータの追い出し順位よりも低く設定するため
の処理を行うことを特徴とするサーバ装置である。
【0022】また、請求項5に係る発明は、少なくとも
第1のプロセッサ及び第1の記憶手段を有する複数の第
1の装置と、前記複数の第1の装置と転送手段を介して
接続される、少なくとも第2のプロセッサ及び第2の記
憶手段を有する複数の第2の装置と、前記複数の第2の
装置の各々に接続された第3の記憶手段とを具備するサ
ーバ装置におけるファイル管理方法であって、前記第1
の装置に対して与えられるネットワークからの要求に基
づく処理を、所定の条件に応じて、前記第1の記憶手
段、前記第2の記憶手段または前記第3の記憶手段のう
ちのいずれかの記憶手段に対して行うことを特徴とする
ファイル管理方法である。
【0023】さらに、請求項6に係る発明は、少なくと
も第1のプロセッサ及び第1の記憶手段を有する複数の
第1の装置と、前記複数の第1の装置と転送手段を介し
て接続される、少なくとも第2のプロセッサ及び第2の
記憶手段を有する複数の第2の装置と、前記複数の第2
の装置の各々に接続された第3の記憶手段とを具備する
サーバ装置におけるファイル管理方法であって、前記第
1の記憶手段に第1のデータが記憶され、前記第2の記
憶手段に該第1のデータに対応する第2のデータが記憶
されている場合に、前記第1の記憶手段から該第1のデ
ータが追い出されるときは、前記第2の記憶手段に記憶
された第2のデータの追い出し順位を他のデータの追い
出し順位よりも低く設定するための処理を行うことを特
徴とするファイル管理方法である。
【0024】本発明によれば、複数用意されたNIP間
で通信プロトコルの処理を分散して行うことにより高い
性能を得ることができる。また、NIPに用意された第
1のバッファメモリ手段をキャッシュとして使用するこ
とによりサーバの内部バスのトラフィックを減少させる
ことができ、スケーラビリティが得られるとともに通信
のレーテンシを減少させる効果がある。DIPを複数用
意することにより、DIPの負荷を分散し、ファイルシ
ステムの処理能力を高めている。また、DIPに用意さ
れた第2のバッファメモリ手段がキャッシュとして働く
ことによりストレージデバイスへの負荷を低減してい
る。
【0025】また、本発明のパリティ計算手段を用いれ
ばCPUに負荷をかけずにネットワークにデータを送り
出すことが可能となる。さらに、本発明のキャッシュメ
モリ管理方式を用いれば、キャッシュメモリをより効率
的に使えるので、少ないメモリ容量でパフォーマンスの
増加が見込まれる。以上のように、本発明によれば、コ
ストパフォーマンスがよく、スケーラブルなWeb等の
サーバを構成することができる。
【0026】
【発明の実施の形態】以下、図面を参照しながら本発明
の実施例を説明する。図1(a)は、本発明の実施形態
に係るサーバ装置を用いたシステムの概略構成を示す図
である。同図に示すように、本発明に係るサーバ装置1
は、ネットワーク2を介してホストマシン3と接続され
ている。なお、同図において、ホストマシン3は1つの
み接続されているが、特にこれにこだわる必要はなく、
複数存在していてもよい。
【0027】サーバ装置1は、後述するように、ファイ
ルから読み出したデータをネットワークに送出する機能
が実現される。また、サーバ装置1は、ホストプロセッ
サ(図示せず)が設けられており、当該ホストプロセッ
サが処理すべきものは、当該ホストプロセッサによって
処理される。例えば、WebサーバにおけるCGIの実
行は、ホストプロセッサが処理する。
【0028】本実施形態においては、ホストプロセッサ
とサーバ装置との関係を明確にするために、CGI実行
を他のファイルからのアクセスと区別する方法について
説明する。一般に、CGI実行は、サーバ装置の所定の
ディレクトリ下で行われる。CGI実行が行われるディ
レクトリを予めサーバ装置に設定しておき、このディレ
クトリの下にあるアクセスに対しては、ホストプロセッ
サにリダイレクトされるように設定しておく。このよう
な設定は、例えば、環境ファイル等により行うことがで
きる。
【0029】図1(b)は、本発明の実施形態に係るサ
ーバ装置の構成を示す図である。同図に示すように、サ
ーバ装置1は、ネットワーク2に接続されるネットワー
クインターフェースプロセッサ21(NIP:Network
Interface Processor 、以下「NIP」ということもあ
る。)が複数設けられている。ネットワークは、例え
ば、Ethernetが考えられるが、ATM等、他のネットワ
ークでもかまわない。
【0030】各NIP21は、サーバ装置1の内部伝送
路(例えば、いわゆる内部バス)であるパラレルリンク
12に接続されている。この内部バスは、パラレルリン
クに限るものではなく、例えば、シリアルリンク、スイ
ッチ等があげられる。また、このパラレルリンク12に
は、ディスクインターフェースプロセッサ13(DI
P:Disk Interface Processor、以下「D IP」という
こともある。)が少なくとも1つ以上接続されており、
このDIPにはストレージデバイス14が設けられてい
る。ストレージデバイス14は、例えば、磁気ディスク
ドライブやディスクドライブ等により実現される。
【0031】図2は、ネットワークインターフェースの
構成を示す図である。同図に示すように、NIP11
は、プロセッサ21、NIPローカルメモリ23、コー
ド用のROM23、ネットワークコントローラ24およ
びパラレルリンクインタフェース25から構成される。
【0032】プロセッサ21が実行するプログラムコー
ドは、あらかじめROMに書込まれている。一般に、R
OMのアクセス速度は低速であるので、ROMの内容は
ブートストラッププログラムによりNIPローカルメモ
リ23にコピーされる。
【0033】NIP11内の上記各ユニットは、例え
ば、PCIバス26等の標準バスにより接続されてい
る。なお、NIPの構成は、同図に限られるものではな
く、プロセッサ21、NIPローカルメモリ22および
PCIバスがブリッジチップ(図示せず)と呼ばれるA
SICにより接続されるようにしてもよい。NIPのブ
リッジチップはプロセッサ内のキャッシュメモリ(NI
Pローカルメモリ内のキャッシュとは異なる。)をスヌ
ープする機能を持つ。スヌープ機構によってDMA転送
がプロセッサのキャッシュメモリを更新し、一貫性を保
つことができる。
【0034】次に、NIP11の動作について、さらに
詳細に説明する。ネットワークからのサーバ装置1に対
する要求は、NIP11に伝えられる。プロトコルは、
TCP/IPおよびHTTPが使用されるのが一般的で
あるがこれにこだわるものではない。この要求は、NI
P11内のプロセッサ21が所定のプログラム命令を実
行することによって、解釈される。
【0035】NIP11内のプロセッサ21は、この要
求がホストプロセッサにより実行されるべきものか否か
を判断し、ホストプロセッサにより実行されるものであ
ると判断した場合には、該要求をホストプロセッサにリ
ダイレクトする。
【0036】一方、サーバ装置1が実行すべき要求だと
判断した場合には、要求されたデータがNIP11内の
キャッシュメモリに存在するか否かの判断を行う。本実
施形態においては、ローカルメモリ22がキャッシュメ
モリとして機能するが、例えば、プロセッサ21内に設
けられる1次キャッシュメモリを含むものであってもよ
い。
【0037】ここで、所定のデータがキャッシュメモリ
内に存在するか否か、すなわち、キャッシュメモリの検
索について説明する。図3は、キャッシュエントリの構
造を示す図である。同図に示すように、ローカルメモリ
内に展開されているキャッシュの内容は、タグ部31と
データ部32とからなる各エントリが、LRUポインタ
311によってリンクされており、LRULAST31
2が最も古くにアクセスされたエントリを、LRUTO
P313は最も新しくアクセスされたエントリを示して
いる。このリンク構造は、アクセスがあるごとに更新さ
れる。ファイル名フィールド312は、エントリが保持
しているデータ(ファイル)のファイル名を保持し、タ
グとして用いらる。TTL(Time To Live)フィールド
315は、キュッシュされたデータの有効時間を示す。
すなわち、もし、TTLフィールド315の値(TTL
値)が現在の時刻と比較して有効期限がきれていると判
断される場合には、たとえキャッシュにヒットしてもそ
のキャッシュの内容は有効でないとみなされる。このT
TLフィールド315は、ファイルの属性として付加さ
れれており、DIP13からNIPに転送される際に、
TTL値も同時に転送される。データ長フィールド31
6は、エントリのデータの長さを示し、データへのポイ
ンタフィールド317は、データの先頭アドレスを示
す。
【0038】データ部32は、一定の長さの領域(例え
ば4Kbyte )に分割されたデータがポインタでリンクさ
れた構造をしており、データ領域はフリーリストで管理
される。これは、キャッシュされるデータは可変長なの
で、データ領域の管理を容易にするためである。
【0039】以上のように、ローカルメモリ22内に展
開されたキャッシュの検索は、LRULAST312か
ら順にLRUポインタ311をたどりながらLRUを比
較していくことによって行われる。検索を高速化する手
法としては、ハッシング等が知られているが、これに限
るものではない。
【0040】なお、キャッシュメモリの容量には限界が
あるので、キャッシュに新しい内容をいれるときにはキ
ャッシュ内の内容を追い出す必要がある。これにはLR
Uアルゴリズム等を使用して、追い出すべきエントリー
を決定することができる。追い出すエントリーが決定さ
れると、NIP11はDIP13に対して、どのエント
リーが追い出されるかを通知する。以上がキャッシュの
検索の説明である。
【0041】プロセッサ21が、要求されたデータをロ
ーカルメモリ22のキャッシュから転送可能であると判
断した場合には、プロセッサ21は、ネットワーク送出
に必要なヘッダ等の情報を構成し、ローカルメモリ22
内に書き込む。さらにプロセッサ21は、ネットワーク
コントローラ24のDMA(図示せず)をセットしてロ
ーカルメモリ22からネットワークコントローラ24に
転送し、ネットワークコントローラ24が当該情報をネ
ットワークに送出する。
【0042】構成されるヘッダ等の情報は、Webサー
バの場合、HTTPプロトコルのヘッダ、TCPのヘッ
ダおよびIPのヘッダが含まれる。ネットワークコント
ローラは、例えば、DEC社のDEC21140等があ
げられる。このチップは、PCIインタフェースとDM
Aコントローラを備えている。
【0043】プロセッサ21が、要求されたデータをロ
ーカルメモリ22から供給できないと判断した場合に
は、プロセッサ21は、DIP13に対して要求を行
う。要求は、内部バス(パラレルリンク)12を介して
電送される。要求は、必要なファイル情報の他、DIP
13からNIP11にデータを転送する際のNIP11
側のバッファメモリのアドレスが含まれる。
【0044】NIP11のプロセッサ21は、該要求を
複数のDIPのうちのどのDIPに送出するかを決定す
る。本実施形態においては、ファイル名に基づいてハッ
シュ値を求め、該ハッシュ値に基づいて決定される。例
えば、DIP13が3個設けられている場合、ハッシュ
関数としてファイル名のキャラクタコードの和のmod
3をとったものが使用される。NIP11からDIP
13への要求の他、上述したようなどのエントリーを追
い出したかという情報をNIP11からDIP13に通
知する場合にも、同様の方法でDIP13を決定する。
【0045】図4は、パラレルリンクインタフェース2
5の構成を示す図である。同図に示すように、パラレル
リンクインターフェース25は、パラレルリンク制御部
41、パリティ計算部42、Receiveパリティバ
ッファ43、Receiveバッファ44、Sendバ
ッファ45、ReceiveDMA46、SendDM
A47およびPCIインタフェース48より構成され
る。
【0046】パラレルリンク制御部41は、DIPから
の通信のうち、宛先が該当するNIPに対する通信(メ
ッセージ)のみを通過させ、パリティ計算部42に送出
する。パリティ計算部42は、パリティの計算を行い、
一定のワード数ごとにその結果をReceiveパリテ
ィバッファ43に書き込む。Receiveパリティバ
ッファ43は、例えば、256ワードに1回の書き込み
では256ワード転送毎に書き込まれる。ここでのワー
ドは、TCPのパリティの形式にあわせて16ビットで
1ワードとする。
【0047】ReceiveDMA46は、Recei
veパリティバッファ43に書込まれたデータを、NI
Pローカルメモリ22に転送する。TCPパケットをN
IP11のプロセッサ21が作成する場合、Recei
veパリティバッファ43から転送されたパリティデー
タを使用する。例えば、TCPパケットが1024ワー
ドのとき、その1024ワードに対応する4ワードのパ
リティデータからパケットのパリティを作成する。10
24ワードがパリティデータの256ワードのアライメ
ントにあわない場合には、アライメントにあわない端数
部分のパリティを計算する必要がある。Receive
パリティバッファ43を設けることによって、NIP1
1のプロセッサ21によるパリティ計算の負荷を著しく
減少することができるようになる。また、256ワード
毎にパリティを付加することにより、TCPパケットの
サイズに柔軟に対応することができる。
【0048】DIPに対する要求は、NIP11のプロ
セッサ21によりコマンドが構成され、SendDMA
47によりSendバッファ45に転送され、さらにパ
ラレルリンク12に送出される。
【0049】図5は、NIP11にネットワークから要
求がきた場合の処理を説明するための図である。同図に
おいて、まず、ネットワークコントローラ24を介して
ネットワークから要求を受け付けると(STEP5
1)、CGIか否かが判断される(STEP52)。要
求がCGIであると判断された場合には、NIP11の
プロセッサ21は、CGIを実行するように設定されて
いないため、ホストマシンに処理を要求する(STEP
53)。一方、CGIでないと判断された場合には、次
に、NFSであるか否かが判断される(STEP5
4)。
【0050】NFSであると判断された場合には、要求
を送出するDIPを決定し(STEP55)、該決定さ
れたDIPにNFSを要求する(STEP56)。一
方、NFSでないと判断された場合には、上述のキャッ
シュの検索を行う(STEP57)。キャッシュを検索
することによりヒットした場合には、TTLをチェック
し(STEP58、59)、有効期限内か否かを判断す
る(STEP510)。TTL値が有効期限内であると
判断された場合には、NIP11のNIPローカルメモ
リ22からデータをネットワークに送出する(STEP
511)。一方、有効期限内でないと判断された場合に
は、要求を送るDIPを決定し(STEP512)、該
決定されたDIPに要求を送出する。
【0051】図6は、NIP11がDIP13からの応
答を受け付けた場合の処理を説明するための図である。
同図において、DIPから応答を受け付けると(STE
P61)、NFSからの応答である否かが判断される
(STEP62)。NFSからの応答であると判断され
た場合には、そのままネットワークに応答を返す(ST
EP63)。NFSからの応答でない場合に、要求した
データが帰ってきた場合には、NIP11は、NIPロ
ーカルメモリ22内のキャッシュがいっぱいであるか否
かを判断する(STEP64)。キャッシュがいっぱい
である場合には、追い出すべきエントリを決定し、該エ
ントリを追い出すとともに(STEP65)、追い出し
たエントリをDIPに通知する(STEP66)。キャ
ッシュがいっぱいでないと判断された場合、またはエン
トリの追い出し処理を行った後、NIP11は、キャッ
シュに該送られてきたデータをキャッシュに書き込むと
ともに、ネットワークに送出する(STEP67)。
【0052】次に、DIP13の詳細について説明す
る。図7は、DIP13の構成を示す図である。同図に
示すように、DIP13は、プロセッサ71、DIPロ
ーカルメモリ72、コード用ROM73、SCSIイン
タフェース74、パラレルリンクインタフェース75お
よびファイルバッファメモリ(図示せず)から構成され
る。
【0053】DIP13内の上記各ユニットは、PCI
バス等の標準バスにより接続されている。なお、図7に
示す接続方法のほか、プロセッサ71とDIPローカル
メモリ73およびPCIバス11を接続するために、ブ
リッジチップと呼ばれるASICを用いてもよい。
【0054】図8は、DIP13のパラレルリンクイン
タフェース75の構成を示す図である。同図に示すよう
に、パラレルリンクインターフェース75は、パラレル
リンク制御部81、Receiveバッファ82、Se
ndバッファ83、ReceiveDMA84、Sen
dDMA85およびPCIインタフェース86より構成
される。
【0055】パラレルリンク制御部41は、NIP11
からの通信のうち、宛先が該当するDIPに対する通信
(メッセージ)のみを通過させ、Receiveバッフ
ァ82に送出する。
【0056】ReceiveDMA84は、Recei
veバッファ42に書込まれたデータを、PCIインタ
ーフェース86を介して、DIPローカルメモリ72に
転送する。
【0057】NIP11に対する応答は、DIP12の
プロセッサ71によりコマンドが構成され、SendD
MA85によりSendバッファ83に転送され、さら
にパラレルリンク81に送出される。
【0058】DIP13は、パラレルリンクインタフェ
ース75を介して、NIP11からのデータの要求また
はキャッシュエントリの追い出し通知を受け取る。DI
P13は、NIP11からのデータ要求を受け取ると、
DIPローカルメモリ72に該要求されたデータが存在
するか否かを調べる。DIPローカルメモリもおいて
も、図3に示したNIPローカルメモリと同様に、キャ
ッシュとして機能させるための各種フィールドを有す
る。
【0059】図9は、DIPの動作を説明するための図
である。同図において、DIP13は、いづれかのNI
P11から通知を受け取ると(STEP91)、該通知
が追い出し通知であるか否かを判断する(STEP9
2)。該通知が追い出し通知であると判断された場合に
は、キャッシュに該当するエントリを検索する(STE
P93)。検索の結果、該当するエントリがあるか否か
を判断し(STEP94)、ないと判断された場合に
は、特になにも行わない。一方、該当するエントリがあ
ると判断された場合には、該当するエントリをLRUT
OPにつなぎ直す(STEP95)。これは、DIPロ
ーカルメモリ72のキャッシュのエントリを追い出す場
合に、NIPローカルメモリのキャッシュから追い出さ
れたエントリであるか否かを考慮するものである。
【0060】すなわち、NIPローカルメモリのあるエ
ントリが追い出し通知を受けた場合に、そのエントリの
コピーがDIPローカルメモリに存在する場合には、D
IPローカルメモリの対応するエントリの追い出しの優
先順序を低く、換言すれば、追い出されにくくなるよう
に設定する。これによって、NIPローカルメモリにあ
るエントリとDIPローカルメモリにあるエントリの重
複が起こる確率を少なくすることができる。なお、どの
エントリを追い出すかを決定するには一般にLRUアル
ゴリズムが使用される。
【0061】STEP92において、追い出し通知でな
いと判断された場合、NFS要求であるか否かが判断さ
れ(STEP96)、NFS要求である場合にはNFS
(Network File System )処理を行う(STEP9
7)。一方、NFSでないと判断された場合には、DI
Pローカルメモリのキャッシュを検索し(STEP9
8)、ヒットしたか否かを判断する(STEP99)。
ここで、ヒットした場合には、TTLのチェックを行い
(STEP910)、有効期限内であれば(STEP9
11)、キャッシュからデータを読み出して、要求もと
のNIPに応答する(STEP912)。
【0062】キャッシュの検索がヒットしなかった場
合、または有効期限内でないと判断された場合には、キ
ャッシュから追い出すエントリを決定し、キャッシュエ
ントリを空け(STEP913)、ストレージデバイス
14より読み出して(STEP914)、該空いたエン
トリに読み出されたデータを書き込むとともに、要求も
とのNIPにデータを送出する(STEP915)。
【0063】このように、ファイル(データ)をネット
ワークに送出する場合は、NIP11およびDIP13
が協調して動作し、第1のバッファメモリ手段であるN
IPローカルメモリ22および第2のバッファメモリ手
段であるDIPローカルメモリ72をそれぞれキャッシ
ュとして利用し、該キャッシュにデータが存在しない場
合には、ストレージデバイス14からデータを読み出し
ている。なお、ストレージデバイス14からの読み出し
は、DIPのファイルシステム(例えば、プロセッサ7
1によるプログラムの実行により実現される)によって
行われる。
【0064】次に、本発明に係るサーバへの書き込み動
作について説明する。書き込みは、ネットワークから行
われる。ネットワークからの書き込み要求は、NIP1
1が適切なDIP13に要求を転送する。適切なDIP
を選択するのはNIP11が上述したファイル名による
ハッシングを利用して行われる。NIPから要求を与え
られたDIP13は、ストレージデバイスに対して要求
されたデータの書き込みを行う。また、ネットワークか
らDIP13に接続されたストレージデバイス14には
NFSで読み出し、書き込みができるようにしておく。
この機能を実現するために、NIP11は、ネットワー
クからのNFS通信をDIP13に中継する処理が行わ
れる。
【0065】ネットワークからNFSでDIP13に接
続されたストレージデバイス14に読み書きができるこ
とで、ネットワーク上のホストマシンから見てサーバ装
置のストレージデバイス14がリモートファイルシステ
ムとして実現される。ホストマシンからリモートファイ
ルシステムとしてみえることで、ホストマシン上にある
従来のソフトウェアを有効に活用することが可能であ
る。本実施例ではNFSをファイル書き込みのプロトコ
ルとして説明したが、他のネットワークプロトコルを使
用してもよい。
【0066】
【発明の効果】以上説明したように、本発明によれば、
ストレージデバイスに蓄積されたファイルを効率よくネ
ットワークに送り出すことができる。また、階層化され
たキャッシュ管理方式により、高いヒット率を得ること
ができる。さらに、データをネットワークに送出すると
き必要になるパリティ計算をデータの転送中に行うこと
でプロセッサの負荷を減らすことができる。
【図面の簡単な説明】
【図1】 本発明の実施形態に係るシステムの概略構成
およびサーバ装置の構成を示す図。
【図2】 ネットワークインターフェースの構成を示す
図。
【図3】 キャッシュエントリの構造を示す図。
【図4】 NIPのパラレルリンクインタフェースの構
成を示す図。
【図5】 NIPにネットワークから要求がきた場合の
処理を説明するための図。
【図6】 NIPがDIPからの応答を受け付けた場合
の処理を説明するための図。
【図7】 DIPの構成を示す図。
【図8】 DIPのパラレルリンクインタフェースの構
成を示す図。
【図9】 DIPの動作を説明するための図。
【符号の説明】
1…サーバ装置 2…ネットワーク 3…ホストマシン 11…ネットワークインターフェースプロセッサ(NI
P) 12…パラレルリンク(バス) 13…ディスクインターフェースプロセッサ(DIP) 14…ストレージデバイス
───────────────────────────────────────────────────── フロントページの続き (72)発明者 前田 誠司 神奈川県川崎市幸区小向東芝町1番地 株 式会社東芝研究開発センター内

Claims (6)

    【特許請求の範囲】
  1. 【請求項1】 少なくとも第1のプロセッサ及び第1の
    記憶手段を有する複数の第1の装置と、 前記複数の第1の装置と転送手段を介して接続される、
    少なくとも第2のプロセッサ及び第2の記憶手段を有す
    る複数の第2の装置と、 前記複数の第2の装置の各々に接続された第3の記憶手
    段とを具備し、 前記第1の装置に対して与えられるネットワークからの
    要求に基づく処理を、所定の条件に応じて、前記第1の
    記憶手段、前記第2の記憶手段または前記第3の記憶手
    段のうちのいずれかの記憶手段に対して行うことを特徴
    とするサーバ装置。
  2. 【請求項2】 ネットワークから要求を与えられる前記
    第1の装置は、該要求に関連する所定の情報に基づい
    て、前記第2の装置を選択することを特徴とする請求項
    1記載のサーバ装置。
  3. 【請求項3】 前記第3の記憶手段から前記第1の装置
    に所定のデータが送出される際に、所定の計算を行い、
    該得られた計算結果を該所定のデータとともに、前記第
    1の記憶手段に記憶することを特徴とする請求項1記載
    のサーバ装置。
  4. 【請求項4】 少なくとも第1のプロセッサ及び第1の
    記憶手段を有する複数の第1の装置と、 前記複数の第1の装置と転送手段を介して接続される、
    少なくとも第2のプロセッサ及び第2の記憶手段を有す
    る複数の第2の装置と、 前記複数の第2の装置の各々に接続された第3の記憶手
    段とを具備し、 前記第1の記憶手段に第1のデータが記憶され、前記第
    2の記憶手段に該第1のデータに対応する第2のデータ
    が記憶されている場合に、前記第1の記憶手段から該第
    1のデータが追い出されるときは、前記第2の記憶手段
    に記憶された第2のデータの追い出し順位を他のデータ
    の追い出し順位よりも低く設定するための処理を行うこ
    とを特徴とするサーバ装置。
  5. 【請求項5】 少なくとも第1のプロセッサ及び第1の
    記憶手段を有する複数の第1の装置と、 前記複数の第1の装置と転送手段を介して接続される、
    少なくとも第2のプロセッサ及び第2の記憶手段を有す
    る複数の第2の装置と、 前記複数の第2の装置の各々に接続された第3の記憶手
    段とを具備するサーバ装置におけるファイル管理方法で
    あって、 前記第1の装置に対して与えられるネットワークからの
    要求に基づく処理を、所定の条件に応じて、前記第1の
    記憶手段、前記第2の記憶手段または前記第3の記憶手
    段のうちのいずれかの記憶手段に対して行うことを特徴
    とするファイル管理方法。
  6. 【請求項6】 少なくとも第1のプロセッサ及び第1の
    記憶手段を有する複数の第1の装置と、 前記複数の第1の装置と転送手段を介して接続される、
    少なくとも第2のプロセッサ及び第2の記憶手段を有す
    る複数の第2の装置と、 前記複数の第2の装置の各々に接続された第3の記憶手
    段とを具備するサーバ装置におけるファイル管理方法で
    あって、 前記第1の記憶手段に第1のデータが記憶され、前記第
    2の記憶手段に該第1のデータに対応する第2のデータ
    が記憶されている場合に、前記第1の記憶手段から該第
    1のデータが追い出されるときは、前記第2の記憶手段
    に記憶された第2のデータの追い出し順位を他のデータ
    の追い出し順位よりも低く設定するための処理を行うこ
    とを特徴とするファイル管理方法。
JP9250249A 1997-09-16 1997-09-16 サーバ装置およびファイル管理方法 Pending JPH1185710A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP9250249A JPH1185710A (ja) 1997-09-16 1997-09-16 サーバ装置およびファイル管理方法
US09/154,031 US6327614B1 (en) 1997-09-16 1998-09-16 Network server device and file management system using cache associated with network interface processors for redirecting requested information between connection networks

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9250249A JPH1185710A (ja) 1997-09-16 1997-09-16 サーバ装置およびファイル管理方法

Publications (1)

Publication Number Publication Date
JPH1185710A true JPH1185710A (ja) 1999-03-30

Family

ID=17205075

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9250249A Pending JPH1185710A (ja) 1997-09-16 1997-09-16 サーバ装置およびファイル管理方法

Country Status (2)

Country Link
US (1) US6327614B1 (ja)
JP (1) JPH1185710A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7369570B2 (en) 2003-03-03 2008-05-06 Nec Corporation iSCSI apparatus and communication control method for the same

Families Citing this family (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6192408B1 (en) * 1997-09-26 2001-02-20 Emc Corporation Network file server sharing local caches of file access information in data processors assigned to respective file systems
US6553408B1 (en) * 1999-03-25 2003-04-22 Dell Products L.P. Virtual device architecture having memory for storing lists of driver modules
US6640278B1 (en) * 1999-03-25 2003-10-28 Dell Products L.P. Method for configuration and management of storage resources in a storage network
US6944654B1 (en) * 1999-11-01 2005-09-13 Emc Corporation Multiple storage array control
US7529799B2 (en) 1999-11-08 2009-05-05 International Business Machines Corporation Method and apparatus for transaction tag assignment and maintenance in a distributed symmetric multiprocessor system
US7082530B1 (en) * 1999-12-31 2006-07-25 Intel Corporation Method and apparatus for accelerating hardware encryption with multiple networking interfaces
US6718372B1 (en) * 2000-01-07 2004-04-06 Emc Corporation Methods and apparatus for providing access by a first computing system to data stored in a shared storage device managed by a second computing system
US7203731B1 (en) 2000-03-03 2007-04-10 Intel Corporation Dynamic replication of files in a network storage system
US7281168B1 (en) 2000-03-03 2007-10-09 Intel Corporation Failover architecture for local devices that access remote storage
US7266555B1 (en) * 2000-03-03 2007-09-04 Intel Corporation Methods and apparatus for accessing remote storage through use of a local device
US7428540B1 (en) 2000-03-03 2008-09-23 Intel Corporation Network storage system
US6952737B1 (en) * 2000-03-03 2005-10-04 Intel Corporation Method and apparatus for accessing remote storage in a distributed storage cluster architecture
US7506034B2 (en) * 2000-03-03 2009-03-17 Intel Corporation Methods and apparatus for off loading content servers through direct file transfer from a storage center to an end-user
US7013394B1 (en) * 2000-04-18 2006-03-14 International Business Machines Corporation Data flow pattern recognition and manipulation
US7099932B1 (en) * 2000-08-16 2006-08-29 Cisco Technology, Inc. Method and apparatus for retrieving network quality of service policy information from a directory in a quality of service policy management system
US7266556B1 (en) 2000-12-29 2007-09-04 Intel Corporation Failover architecture for a distributed storage system
US7124293B2 (en) * 2001-06-29 2006-10-17 Intel Corporation Intelligently determining which traffic streams to offload efficiently
FR2831741B1 (fr) * 2001-10-26 2003-12-19 Thales Sa Procedes et systemes d'enregistrement et lecture synchronisee de donnes provenant d'une pluralite d'equipements terminaux
US7444393B2 (en) * 2001-10-30 2008-10-28 Keicy K. Chung Read-only storage device having network interface, a system including the device, and a method of distributing files over a network
JP3966459B2 (ja) * 2002-05-23 2007-08-29 株式会社日立製作所 ストレージ機器管理方法、システム、およびプログラム
US7774466B2 (en) * 2002-10-17 2010-08-10 Intel Corporation Methods and apparatus for load balancing storage nodes in a distributed storage area network system
DE10307548A1 (de) * 2003-02-21 2004-09-09 Infineon Technologies Ag Synchrones Speichersystem sowie Verfahren und Protokoll zur Kommunikation in einem synchronen Speichersystem
JP4322031B2 (ja) * 2003-03-27 2009-08-26 株式会社日立製作所 記憶装置
US7069351B2 (en) * 2003-06-02 2006-06-27 Chung Keicy K Computer storage device having network interface
US7500055B1 (en) * 2003-06-27 2009-03-03 Beach Unlimited Llc Adaptable cache for dynamic digital media
US7912954B1 (en) * 2003-06-27 2011-03-22 Oesterreicher Richard T System and method for digital media server load balancing
US20040267919A1 (en) * 2003-06-30 2004-12-30 International Business Machines Corporation Method and system for providing server management peripheral caching using a shared bus
JP2005056200A (ja) * 2003-08-05 2005-03-03 Hitachi Ltd データ管理方法、ディスク記憶装置およびディスク記憶システム
US7765405B2 (en) * 2005-02-25 2010-07-27 Microsoft Corporation Receive side scaling with cryptographically secure hashing
US8805950B1 (en) * 2007-09-12 2014-08-12 Aol Inc. Client web cache
US8769185B2 (en) 2007-10-23 2014-07-01 Keicy Chung Computer storage device having separate read-only space and read-write space, removable media component, system management interface, and network interface
US8171205B2 (en) * 2008-05-05 2012-05-01 Intel Corporation Wrap-around sequence numbers for recovering from power-fall in non-volatile memory
JP7081403B2 (ja) * 2018-09-10 2022-06-07 富士フイルムビジネスイノベーション株式会社 情報処理装置及びプログラム

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5163131A (en) * 1989-09-08 1992-11-10 Auspex Systems, Inc. Parallel i/o network file server architecture
CA2086691C (en) * 1992-03-30 1997-04-08 David A. Elko Communicating messages between processors and a coupling facility
US5995708A (en) * 1993-03-31 1999-11-30 Mediaone Group, Inc. Method and system for delivering audio and video information
US5864554A (en) * 1993-10-20 1999-01-26 Lsi Logic Corporation Multi-port network adapter
US5537585A (en) * 1994-02-25 1996-07-16 Avail Systems Corporation Data storage management for network interconnected processors
EP0716370A3 (en) * 1994-12-06 2005-02-16 International Business Machines Corporation A disk access method for delivering multimedia and video information on demand over wide area networks
US5933603A (en) * 1995-10-27 1999-08-03 Emc Corporation Video file server maintaining sliding windows of a video data set in random access memories of stream server computers for immediate video-on-demand service beginning at any specified location
US5848293A (en) * 1995-11-03 1998-12-08 Sun Microsystems, Inc. Method and apparatus for transmission and processing of virtual commands
JPH09204403A (ja) * 1996-01-26 1997-08-05 Hitachi Ltd 並列計算機
US6275953B1 (en) * 1997-09-26 2001-08-14 Emc Corporation Recovery from failure of a data processor in a network server
US6081883A (en) * 1997-12-05 2000-06-27 Auspex Systems, Incorporated Processing system with dynamically allocatable buffer memory

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7369570B2 (en) 2003-03-03 2008-05-06 Nec Corporation iSCSI apparatus and communication control method for the same

Also Published As

Publication number Publication date
US6327614B1 (en) 2001-12-04

Similar Documents

Publication Publication Date Title
JPH1185710A (ja) サーバ装置およびファイル管理方法
US5941969A (en) Bridge for direct data storage device access
US8843706B2 (en) Memory management among levels of cache in a memory hierarchy
JP3987162B2 (ja) 読取り−共有トランザクションのための強化ブロッキング・メカニズムを含むマルチプロセス・システム
EP1316019B1 (en) Managing replacement of data in a cache on a node based on caches of other nodes
US7386680B2 (en) Apparatus and method of controlling data sharing on a shared memory computer system
US20120324159A1 (en) Method and apparatus for implementing high-performance, scaleable data processing and storage systems
JP3481054B2 (ja) ゲートウェイ装置、クライアント計算機およびそれらを接続した分散ファイルシステム
US6587926B2 (en) Incremental tag build for hierarchical memory architecture
CZ20012153A3 (cs) Elektronický deník s ověřením pro prodejní místo a způsoby jeho použití
JPH10143482A (ja) エフィシェントな書込み動作を実行するマルチプロセッサ・システム
JPH10149342A (ja) プリフェッチ動作を実行するマルチプロセス・システム
JPH10143483A (ja) ミグラトリ・データ・アクセス・パターンを検出し、効果的に提供するように構成されたマルチプロセスシステム
JPH10187470A (ja) スピンロック動作を最適化する装置を含むマルチプロセス・システム
JPH10171710A (ja) 効果的なブロック・コピー動作を実行するマルチプロセス・システム
JPH10133917A (ja) コヒーレンシー関連エラー・ロッジング能力を有するマルチプロセス・システム
JPH10134014A (ja) 3ホップ通信プロトコルを用いたマルチプロセス・システム
JP4478321B2 (ja) ストレージシステム
JP2001519565A (ja) キャッシュコヒーレンス共用ディスクコンピュータシステムにおけるi/o転送
US6587924B2 (en) Scarfing within a hierarchical memory architecture
US20040148279A1 (en) Scalable distributed hierarchical cache
EP1224553B1 (en) Multi-processor system and method of accessing data therein
US20050198438A1 (en) Shared-memory multiprocessor
US7725660B2 (en) Directory for multi-node coherent bus
US7669013B2 (en) Directory for multi-node coherent bus