JP2006285811A - ストレージシステム及びデータ処理方法 - Google Patents
ストレージシステム及びデータ処理方法 Download PDFInfo
- Publication number
- JP2006285811A JP2006285811A JP2005107033A JP2005107033A JP2006285811A JP 2006285811 A JP2006285811 A JP 2006285811A JP 2005107033 A JP2005107033 A JP 2005107033A JP 2005107033 A JP2005107033 A JP 2005107033A JP 2006285811 A JP2006285811 A JP 2006285811A
- Authority
- JP
- Japan
- Prior art keywords
- processing
- priority
- packet
- packets
- data
- 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
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 12
- 238000012545 processing Methods 0.000 claims abstract description 302
- 238000000034 method Methods 0.000 claims abstract description 118
- 238000006243 chemical reaction Methods 0.000 claims description 17
- 238000004891 communication Methods 0.000 claims description 9
- 238000004148 unit process Methods 0.000 claims 1
- 238000012546 transfer Methods 0.000 abstract description 14
- 238000007726 management method Methods 0.000 description 62
- 101100459772 Caenorhabditis elegans nas-10 gene Proteins 0.000 description 26
- 230000006870 function Effects 0.000 description 24
- 230000005540 biological transmission Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- 230000003111 delayed effect Effects 0.000 description 5
- 238000012805 post-processing Methods 0.000 description 4
- 238000007796 conventional method Methods 0.000 description 3
- 238000001514 detection method Methods 0.000 description 3
- 239000000835 fiber Substances 0.000 description 3
- 241001362551 Samba Species 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 101100365087 Arabidopsis thaliana SCRA gene Proteins 0.000 description 1
- 101100293603 Caenorhabditis elegans nas-7 gene Proteins 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000013523 data management Methods 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 210000000707 wrist Anatomy 0.000 description 1
Images
Classifications
-
- 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/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
- G06F11/1464—Management of the backup or restore process for networked environments
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
- H04L47/2408—Traffic characterised by specific attributes, e.g. priority or QoS for supporting different services, e.g. a differentiated services [DiffServ] type of service
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
- H04L47/2425—Traffic characterised by specific attributes, e.g. priority or QoS for supporting services specification, e.g. SLA
- H04L47/2433—Allocation of priorities to traffic types
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
- H04L49/9084—Reactions to storage capacity overflow
- H04L49/9089—Reactions to storage capacity overflow replacing packets in a storage arrangement, e.g. pushout
- H04L49/9094—Arrangements for simultaneous transmit and receive, e.g. simultaneous reading/writing from/to the storage element
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/43—Assembling or disassembling of packets, e.g. segmentation and reassembly [SAR]
- H04L47/431—Assembling or disassembling of packets, e.g. segmentation and reassembly [SAR] using padding or de-padding
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
【課題】
重要なデータやリアルタイム性を有するデータの転送遅延や損失を有効に防止し得るストレージシステム及びデータ処理方法を提案する。
【解決手段】
上位装置から送信される各パケットにそれぞれ設定された優先度を検出し、各パケットを処理し、これら処理結果をそのパケットに設定された優先度と同じ優先度を設定したパケットにパケット化して上位装置に送信するようにした。この結果、高い優先度が設定された上位装置からのパケットについての処理結果を同じ優先度で当該上位装置に送信することができるため、重要なデータやリアルタイム性を有するデータの転送遅延や損失を有効に防止することができる。
【選択図】 図7
重要なデータやリアルタイム性を有するデータの転送遅延や損失を有効に防止し得るストレージシステム及びデータ処理方法を提案する。
【解決手段】
上位装置から送信される各パケットにそれぞれ設定された優先度を検出し、各パケットを処理し、これら処理結果をそのパケットに設定された優先度と同じ優先度を設定したパケットにパケット化して上位装置に送信するようにした。この結果、高い優先度が設定された上位装置からのパケットについての処理結果を同じ優先度で当該上位装置に送信することができるため、重要なデータやリアルタイム性を有するデータの転送遅延や損失を有効に防止することができる。
【選択図】 図7
Description
本発明は、ストレージシステム及びデータ処理方法に関し、例えばNAS(Network Attached Storage)に適用して好適なものである。
NASを使用したファイル共有サービスのニーズは年々高まっている。また、かかるファイル共有サービスを提供するネットワークシステムでは、共有されるファイルの容量の増大に伴ってNASへのアクセスも増加の傾向にある。このような状況のもとでは、重要なデータやリアルタイム性を有するデータの処理が遅延し、最悪の場合にはかかるデータが損失したり、リアルタイム性を確保できないという事態が発生するおそれもある。
そこで、従来、重要なデータやリアルタイム性を有するデータを他のデータに優先して送信する方法として、周辺ネットワークのルータのQoS(Quality of Service)機能を利用した方法などが用いられている。ここで、ルータのQoS機能とは、ルータに送信元アドレスや、送信先アドレス、ポート等の属性を個別に設定したり、後述のようにパケットに優先度を設定することで、ルータがその属性を有するパケットや優先度が設定されたパケットを他のパケットに優先して転送処理する機能をいう。なお、IPパケットに優先度を設定する技術については、下記非特許文献1に記載されている。
RFC791、[online]、[平成17年3月26日検索]、インターネット<URL:http://www.faqs.org/rfcs/rfc791.html>
ところがこのようなルータのQoS機能等を用いた従来の方法によると、ネットワーク上においてパケットが優先的に転送されるのは例えばクライアント端末からNASまでの一方向でしかなく、そのパケットについて処理結果(応答)が格納されたパケットがNASからクライアント端末に転送される段階においてデータの転送遅延や損失が発生する問題があった。
また、かかる従来の方法によると、パケットを処理するNAS内部では受信したパケットの重要度の区別がないために、NAS内部において、高負荷時に重要なデータやリアルタイム性を有するデータに対する処理が遅延したり、重要なデータが消失するおそれがあった。
さらに、かかる従来の方法によると、優先的に転送処理すべきパケットの属性の設定が送信元や宛先アドレス、又はポート単位等のIPレベルでの設定となるため、ユーザ単位などのきめ細かい設定を行い得ない問題があった。
本発明は以上の点を考慮してなされたものであり、重要なデータやリアルタイム性を有するデータの転送遅延や損失を有効に防止し得るデータ処理装置及び方法を提案しようとするものである。
かかる課題を解決するため本発明は、上位装置との間で情報をパケット化して送受するストレージシステムにおいて、前記上位装置から送信される各パケットにそれぞれ設定された優先度を検出する第1の処理部と、各前記パケットを処理する第2の処理部と、各前記パケットについての処理結果を、当該パケットに設定された前記優先度と同じ優先度を設定したパケットにパケット化して前記上位装置に送信する通信部とを備えることを特徴とする。
また本発明は、上位装置との間で情報をパケット化して送受するストレージシステムでのデータ処理方法において、前記上位装置から送信される各パケットにそれぞれ設定された優先度を検出する第1のステップと、各前記パケットを処理する第2のステップと、各前記パケットについての処理結果を、当該パケットに設定された前記優先度と同じ優先度を設定したパケットにパケット化して前記上位装置に送信する第3のステップとを備えることを特徴とする。
本発明によれば、高い優先度が設定された上位装置からのパケットについての処理結果が同じ優先度で当該上位装置に送信されるため、重要なデータやリアルタイム性を有するデータの転送遅延や損失を有効に防止することができる。
以下図面について、本発明の一実施の形態を詳述する。
(1)第1の実施の形態
(1−1)本実施の形態によるネットワークシステムの構成
図1は、ファイル共有サービスを提供する本実施の形態によるネットワークシステム1を示す。このネットワークシステム1は、複数の上位装置としてのクライアント端末2が第1のルータ5A、第1のネットワーク6A、第2のルータ5B及び第2のネットワーク6Bを順次介してNAS7と接続されると共に、同じく上位装置としての管理端末3及びバックアップサーバ4が第3のルータ5C、第3のネットワーク6C、第2のルータ5B及び第2のネットワーク6Bを順次介してストレージシステム7と接続されることにより構成されている。
(1−1)本実施の形態によるネットワークシステムの構成
図1は、ファイル共有サービスを提供する本実施の形態によるネットワークシステム1を示す。このネットワークシステム1は、複数の上位装置としてのクライアント端末2が第1のルータ5A、第1のネットワーク6A、第2のルータ5B及び第2のネットワーク6Bを順次介してNAS7と接続されると共に、同じく上位装置としての管理端末3及びバックアップサーバ4が第3のルータ5C、第3のネットワーク6C、第2のルータ5B及び第2のネットワーク6Bを順次介してストレージシステム7と接続されることにより構成されている。
各クライアント端末2は、それぞれCPU(Central Processing Unit)やメモリを備えたコンピュータである。クライアント端末2が備えるCPUにより各種プログラムが実行されることによって、様々な機能が実現される。クライアント端末2は、例えばパーソナルコンピュータ、ワークステーション、メインフレームコンピュータ等により構成される。
管理端末3も同様に、CPUやメモリを備えたコンピュータである。管理端末3が備えるCPUにより各種プログラムが実行されることによって、様々な機能が実現される。この管理端末3は、例えばストレージシステム7へのアクセス権の設定や、新たなファイルシステムの作成指示など、ストレージシステム7の保守管理のために用いられる。この管理端末3も、例えばパーソナルコンピュータ、ワークステーション、メインフレームコンピュータ等により構成される。
バックアップサーバ4は、例えばディスクアレイ装置の大容量の記憶装置から構成される。バックアップサーバ4が備えるCPUにより各種プログラムが実行されることにより自動的なバックアップを含む様々な機能が実現される。
第1〜第3のルータ5A〜5Cは、受信したパケットのIPヘッダに含まれる送信先アドレスに基づいてそのパケットをその送信先に向けて転送するデータ転送機能を備える。クライアント端末2から出力されるデータの入出力要求又は書込み対象のデータのパケットや、管理端末3及びバックアップサーバ4から出力される各種コマンドのパケットは、これら第1〜第3のルータ5A〜5Cのデータ転送機能により、第1〜第3のネットワーク6A〜6Cを経てストレージシステム7に転送される。またこれとは逆に、ストレージシステム7から出力される各種コマンドやストレージシステム7から読み出されたデータのパケットは、これら第1〜第3のルータ5A〜5Cのデータ転送機能により、第3〜第1のネットワーク5C〜5Aを経て対応するクライアント端末2、管理端末3又はバックアップサーバ4に転送される。
また第1〜第3のルータ5A〜5Cは、後述のようにパケットのIPヘッダに設定された優先度(後述の「precedence」)に基づいて、優先度の高いパケットを優先的に転送処理するQoS機能を備える。これによりこのネットワークシステム1では、クライアント端末2、管理端末3又はバックアップサーバ4からストレージシステム7に送信されるパケットや、ストレージシステム7からクライアント端末2、管理端末3又はバックアップサーバ4に送信されるパケットに優先度を設定することで、そのパケットを他のパケットよりも優先的にストレージシステム7や、クライアント端末2、管理端末3又はバックアップサーバ4に送信することができる。
第1〜第3のネットワーク6A〜6Cは、LAN(Local Area Network)、SAN(Storage Area Network)、インターネット、専用回線又は公衆回線等により構成される。LANを介するデータ通信は、例えばTCP/IP(Transmission Control Protocol/Internet Protocol)プロトコルに従って行われる。またSANを介する通信は、ファイバチャネルプロトコルに従って行われる。第1〜第3のネットワーク6A〜6CがLANである場合、クライアント端末2、管理端末3及びバックアップサーバ4は、ファイル名を指定したファイル単位でのデータ入出力要求をストレージシステム7に送信する。一方、第1〜第3のネットワーク6A〜6CがSANである場合、クライアント端末2、管理端末3及びバックアップサーバ4は、ファイバチャネルプロトコルに従ってブロック単位でのデータ入出力要求をストレージシステム7に送信する。ここでいうブロックとは、ストレージシステム7内の記憶領域におけるデータの管理単位のことである。なお、以下においては、第1〜第3のネットワーク6A〜6CがLANであり、各クライアント端末2、管理端末3又はバックアップサーバ4と、ストレージシステム7との間の通信がTCP/IPプロトコルに従って行われるものとする。
ストレージシステム7は、ファイルシステム機能が搭載されたNAS10と、このNAS10に第4のネットワーク12を介して接続された複数のディスクサブシステム11とから構成される。
NAS10は、第3のネットワーク6Bに接続されたネットワークインタフェース20と、例えば不揮発性メモリからなるローカルメモリ21と、NAS10全体の制御を司るCPU22と、例えばハードディスク装置からなるローカルディスク23と、第4のネットワーク12を介して各ディスクサブシステム11と通信を行うためのインタフェースとしてのアダプタ24とを備えて構成される。
ローカルディスク23には、各種プログラムや、各ディスクサブシステム11が提供する記憶領域及びかかる記憶領域に格納されたデータを管理するための管理情報と、後述のTOS(Type of Service)変換表45(図6)及び優先度リスト64(図10)の各データとなどが格納されている。CPU22は、これらローカルディスク23に格納されたプログラムを読み出してローカルメモリ21に格納する。そしてCPU22は、このローカルメモリ21に格納されたプログラムを実行することにより、クライアント端末2、管理端末3又はバックアップサーバ4からの要求に応じた様々な処理を行う。
例えばCPU22は、クライアント端末2からのデータ入出力要求をネットワークインタフェース20を介して受信すると、これに応じたデータ入出力要求を生成し、これをアダプタ24及び第4のネットワーク12を介して対応するディスクサブシステム11に送信する。またCPU22は、クライアント端末2からのデータ入出力要求が書込み要求であった場合には、このデータ入出力要求と共にそのクライアント端末2から送信される書込み対象のデータを、対応するディスクサブシステム11に送信する。さらにCPU22は、クライアント端末2からのデータ入出力要求が読み出し要求であった場合には、対応するディスクサブシステム11から読み出されたデータを、ネットワークインタフェース20を介して対応するクライアント端末2に送信する。
またCPU22は、管理端末3からの各種コマンドをネットワークインタフェース20を介して受信すると、このコマンドに応じた各種設定などの対応する処理を実行する。さらにCPU22は、バックアップサーバ4からのバックアップ用のデータの転送要求をネットワークインタフェース20を介して受信したときには、アダプタ24を介して対応するディスクサブシステム11にデータ入出力要求(読出し要求)を送信し、この結果として得られたバックアップ用のデータをネットワークインタフェース20を介してバックアップサーバ4に送信する。
第4のネットワーク12は、例えばSANから構成される。ただし、これに限定されるものではなく、LANや専用回線なども適用することができる。第4のネットワーク12がSANである場合、この第4のネットワーク12を介したNAS10及び各ディスクサブシステム11間の通信は、ファイバチャネルプロトコルに従って行われる。また第4のネットワーク12がLANである場合、この第4のネットワーク12を介したNAS10及び各ディスクサブシステム11間の通信は、TCP/IPプロトコルに従って行われる。
各ディスクサブシステム11は、CPUやメモリを備えたコンピュータ構成のディスクコントローラ25と、複数の記憶デバイス26(例えばハードディスク)と、これら記憶デバイス26及びNAS10間で転送されるデータを一時的に記憶するキャッシュメモリ27とを備えて構成される。ディスクコントローラ25は、記憶デバイス26をRAID(Redundant Arrays of Inexpensive Disks)方式で管理しており、NAS10から与えられるデータ入出力要求に応じて、データを対応する記憶デバイス26に記憶させたり、指定されたデータを記憶デバイス26から読み出してNAS10に送信する。
(1−2)パケットのデータフォーマット
図2は、クライアント端末2、管理端末3又はバックアップサーバ4と、ストレージシステム7との間で送受されるパケットのデータフォーマットを示すものである。図2(A)からも明らかなように、かかるパケットは、ストレージシステム7内の記憶デバイス26に読み書きするデータやデータ入出力要求等の各種コマンドでなる可変長データ33の先頭に20バイトのTCPヘッダ32、20バイトのIPヘッダ31及び14バイトのイーサネット(登録商標)ヘッダ30が順次付加されると共に、可変長データ33の後側に誤り検出用のデータである4バイトのFCS(Frame Check Sequence)データ34が付加されることにより構成されている。パケットの大きさは、64バイト〜1518バイトの範囲に規定されており、これを超えるデータ(可変長データ33のフィールドに格納されるデータ)については複数のフレームに分割し、各フレームをそれぞれ同様にパケット化する。
図2は、クライアント端末2、管理端末3又はバックアップサーバ4と、ストレージシステム7との間で送受されるパケットのデータフォーマットを示すものである。図2(A)からも明らかなように、かかるパケットは、ストレージシステム7内の記憶デバイス26に読み書きするデータやデータ入出力要求等の各種コマンドでなる可変長データ33の先頭に20バイトのTCPヘッダ32、20バイトのIPヘッダ31及び14バイトのイーサネット(登録商標)ヘッダ30が順次付加されると共に、可変長データ33の後側に誤り検出用のデータである4バイトのFCS(Frame Check Sequence)データ34が付加されることにより構成されている。パケットの大きさは、64バイト〜1518バイトの範囲に規定されており、これを超えるデータ(可変長データ33のフィールドに格納されるデータ)については複数のフレームに分割し、各フレームをそれぞれ同様にパケット化する。
IPヘッダ31は、図2(B)に示すようなデータフォーマットを有する。このうちバージョンフィールド(Version)、ヘッダ長フィールド(IHL)、TOSフィールド(Type of Service)及びパケット長フィールド(Total Length)には、それぞれIPプロトコルのバージョン(通常は「4」)、IPヘッダ31の4〔byte〕単位での長さ(通常は「5」)、そのIPパケット(IPヘッダ31、TCPヘッダ32及び可変長データ33により構成される部分)の要求するサービス内容、IPヘッダ31及びTCPヘッダ32を含めたIPパケット全体の長さが格納される。また識別番号フィールド(Identification)、フラグフィールド(Flags)及びフラグメントオフセットフィールド(Flagment Offset)には、それぞれ複数のフレームに分割された元のデータに固有の識別番号、そのIPパケットに格納されたフレームが元のデータの最後のフレームであるか否かを表すフラグ、そのIPパケットに格納されたフレームが元のデータのどの位置のものであるかを表すデータがそれぞれ格納される。
TTLフィールド(Time to Live)、プロトコルフィールド(Protocol)及びヘッダチェックサムフィールド(Header Checksum)には、それぞれそのIPパケットの生存期間、そのIPパケットをカプセル化している上位プロトコルのポート番号、又はIPヘッダ31の誤り検出用のデータが格納される。また送信元IPアドレスフィールド(Source Address)及び送信先IPアドレスフィールド(Destination Address)には、それぞれそのIPパケットの送信元のアドレス又は送信先のアドレスが格納される。さらにオプションフィールド(Option)及びパディングフィールド(Padding)には、それぞれ特殊な処理の指示などのオプションデータ又はオプションを使用したときにIPヘッダ31のヘッダ長を32ビットの整数倍にするための調整用のダミーデータが格納される。
このようなヘッダ構造を有するIPプロトコルでは、TOSフィールド(Type of Service)に8ビットが割り当てられており、このうち上位3ビットを用いてそのIPパケットの優先度(precedence)を設定できることが規定されている。この場合、そのIPパケットの優先度は、かかる上位3ビットの値が大きければ大きいほど高くなる。
かくしてQoS機能が搭載された上述の第1〜第3のルータ5A〜5C(図1)は、このパケット30を受信するごとに、そのパケット30のTOSフィールドの上位3ビットの値、つまりそのパケット30に設定された優先度(0〜7)に基づいて、この優先度が大きいパケット30ほど優先的に転送処理するようになされている。
(2−3)NAS10における優先処理機能及び優先度設定機能
次に、本実施の形態によるNAS10に搭載された優先処理機能及び優先度設定機能について説明する。上述した本実施の形態によるNAS10には、各パケットのIPヘッダ31のTOSフィールド(図2(B)の「Type of Service」)に格納された優先度(precedence)が大きいパケットほどより優先的に処理する優先処理機能と、その処理結果をクライアント端末2、管理端末3又はバックアップサーバ4に送信する際に、その処理依頼のパケットに設定されていた優先度(precedence)と同じ優先度を、その処理結果を格納したパケットに設定する優先度設定機能とが搭載されている。
次に、本実施の形態によるNAS10に搭載された優先処理機能及び優先度設定機能について説明する。上述した本実施の形態によるNAS10には、各パケットのIPヘッダ31のTOSフィールド(図2(B)の「Type of Service」)に格納された優先度(precedence)が大きいパケットほどより優先的に処理する優先処理機能と、その処理結果をクライアント端末2、管理端末3又はバックアップサーバ4に送信する際に、その処理依頼のパケットに設定されていた優先度(precedence)と同じ優先度を、その処理結果を格納したパケットに設定する優先度設定機能とが搭載されている。
図3は、このような優先処理機能及び優先度設定機能に関するNAS10の処理内容を機能的に分類したものである。この図3において、ネットワーク処理部40は、ネットワークインタフェース20(図1)がその内部メモリに格納されたプログラムを実行することにより発生するタスクである。また処理プロセス41A〜41Cは、NAS10のCPU22(図1)が、ローカルディスク23(図1)に格納された対応するプログラムを読み出し、ローカルメモリ21(図1)に展開して実行することにより発生するプロセスである。この処理プロセス41A〜41Cは、HTTP(Hypertext Transfer Protocol)、FTP(File Transfer Protocol)及びTelnet(Telecommunication network)など、このNAS10が対応可能な各上位プロトコルにそれぞれ対応して存在する。スケジューラ42及びプロセス処理部43も、CPU22が、ローカルディスク23に格納された対応するプログラムを読み出し、ローカルメモリ21に展開して実行することにより発生するタスクである。
そして本実施の形態によるNAS10では、これらネットワーク処理部40、各処理プロセス41A〜41C、スケジューラ42及びプロセス処理部43が、それぞれ図4に示す処理手順に従って必要な処理を実行することによって、NAS10全体として上述の優先処理機能及び優先度設定機能を発揮し得るようになされている。
すなわち、このNAS10の場合、ネットワーク処理部40は、クライアント端末2、管理端末3又はバックアップサーバ4から送信されるデータ入出力要求や、書込み対象のデータ、各種コマンドなどのパケットを受信すると、そのパケットの可変長データ33(図2(A))内に含まれるプロトコル情報に基づいて上位プロトコルの種類を検出し、この検出結果に基づいてそのパケットを対応する処理プロセス41A〜41Cに振り分ける(図4のSP1)。
処理プロセス41A〜41Cは、それぞれ図5に示すようなセッション管理表44をローカルメモリ21(図1)上に作成して保持している。このセッション管理表44は、自己に振り分けられたセッションを管理するための表であり、「処理プロセス名」欄44A、「セッション番号」欄44B、「送信元アドレス」欄44C、「ユーザ名」欄44D、「優先度(precedence)」欄44E及び「処理優先度」44Fから構成される。
そして処理プロセス41A〜41Cは、ネットワーク処理部40から新たなセッションのパケットが与えられると、自己と対応付けられたHTTP,NFSなどの上位プロトコルのプロトコル名を「処理プロセス名」欄44Aに格納する。また処理プロセス41A〜41Cは、セッション管理表44の「セッション番号」欄44Bに通し番号を格納する。さらに処理プロセス41A〜41Cは、そのパケットのIPヘッダ31(図2(A))の送信元アドレスフィールド(図2(B)の「Source Address」)から送信元のアドレスを読み出すと共に、そのパケットの可変長データ33にユーザ名が格納されているときにはこれを読み出し、これらをそれぞれセッション管理表44の「送信元アドレス」欄44C及び「ユーザ名」欄44Dに格納する。このようにして処理プロセス41A〜41Cは、そのセッションをセッション管理表44に登録する。
また各処理プロセス41A〜41Cは、それぞれローカルディスク23(図1)から読み出されてローカルメモリ21(図1)に格納された図6に示すようなTOS変換表45を有している。このTOS変換表45は、そのパケットに含まれる上述したIPヘッダ31のTOSフィールド(図2(B)の「Type of Service」)の上位3ビットを用いて設定されたそのパケットの優先度(precedence)に対して、そのパケットをNAS10の内部においてどのような優先度で処理するかを対応付けたテーブルである。
例えばこの図6の例では、パケットに優先度(precedence)として「0」、「3」、「5」しか設定できないものとして、そのパケットに設定された優先度(precedence)が「0」、(つまり優先度(precedence)が設定されていない)であったときには、そのパケットに対するNAS10内部での処理の優先度(以下、これを処理優先度と呼ぶ)として「0」が対応付けられている。またこの図6の例では、そのパケットに設定された優先度(precedence)が「3」であったときには、そのパケットに対するNAS10内部での処理優先度として「1」が対応付けられ、そのパケットに設定された優先度(precedence)が「5」であったときには、そのパケットに対するNAS10内部での処理優先度として「2」が対応付けられている。
そして処理プロセス41A〜41Cは、上述のようにしてセッション管理表44に新たなセッションを登録すると、その後その新たなセッションにおいて受信したパケット内のIPヘッダ31のTOSフィールドに格納されたデータの上位3ビットの値に基づいて、そのパケットについて設定されている優先度(precedence)を検出する。また処理プロセス41A〜41Cは、この検出した優先度(precedence)を、TOS変換表45を用いてそのパケットに対する処理優先度に変換する。そして処理プロセス41A〜41Cは、これらそのパケットに設定されていた優先度及びこれに基づき得られた処理優先度を、それぞれセッション管理表44の「優先度(precedence)」欄44E及び「処理優先度」44Fに格納するようにして、そのパケットに設定する(図4のSP2)。
図7は、このような優先度及び処理優先度の設定処理の具体的な処理手順を示すものである。処理プロセス41A〜41Cは、新たなセッションについてのセッション番号、送信元のアドレス及びユーザ名をセッション管理表44に格納し終えると、この図7に示す優先度及び処理優先度設定処理手順RT1に従って、まず、そのセッションにおいて受信したパケットに優先度(precedence)が設定されているか否かを判断する(SP10)。
そして処理プロセス41A〜41Cは、この判断において肯定結果を得た場合には(SP10:YES)、この優先度(precedence)をTOS変換表45(図6)を用いて処理優先度に変換し、この変換結果をセッション管理表44(図5)の「処理優先度」欄44Fに設定する。また、これと共に処理プロセス41A〜41Cは、そのパケットに設定されている優先度(precedence)をそのままセッション管理表44の「優先度(precedence)」欄44Eに設定する(SP11)。
これに対して処理プロセス41A〜41Cは、かかる判断において否定結果を得た場合には(SP10:NO)、セッション管理表44の「処理優先度」欄44F及び「優先度(precedence)」欄44Eの双方にそれぞれ「0」を設定する(SP12)。
さらに処理プロセス41A〜41Cは、このようにしてかかる優先度及び処理優先度の設定処理を終えると、この後セッション管理表44の「処理プロセス名」欄44A、「セッション番号」欄44B及び「処理優先度」欄44Fにそれぞれ格納された処理プロセス名、セッション番号及び処理優先度を、そのパケットの処理依頼と共にそれぞれスケジューラ42(図3)に送出する(図4のSP3)。
スケジューラ42は、各プロセス処理部41A〜41Cからそれぞれ与えられる各パケットの処理依頼について、これらパケットに対してそれぞれ設定された処理優先度に応じた順番で処理するようにスケジュールする(図4のSP4)。
具体的には、スケジューラ42は、図8に示すように、処理優先度ごとの処理キュー50A〜50Cを有している。そしてスケジューラ42は、処理プロセス41A〜41Cからパケットの処理依頼を受けると、そのパケットに設定された処理優先度に基づいて、その処理依頼を対応する処理キュー50A〜50Cに振り分ける。
またスケジューラ42は、この振分け処理と並行して、図9に示すスケジューリング処理手順RT2に従って、対応する処理キュー50A〜50Cに処理依頼が振り分けられた各パケットの処理をプロセス処理部43に依頼する。すなわちスケジューラ42は、まずこの実施の形態において処理優先度が最も大きい「2」の処理キュー50Aに振り分けられた各処理依頼の中から、受付け順に例えば最大5つの処理依頼を選択し、これらをプロセス処理部43に送出する(SP20)。
またスケジューラ42は、この後処理優先度が「1」の処理キュー50Bに振り分けられた各処理依頼の中から受付け順に例えば最大3つの処理依頼を選択し、これらをプロセス処理部43に送出する(SP21)。さらにスケジューラ42は、この後処理優先度が「0」の処理キュー50Cに振り分けられた各処理依頼の中から受付け順に例えば最大1つの処理依頼を選択し、これらをプロセス処理部43に送出する(SP22)。そしてスケジューラ42は、同様の処理を繰り返す(SP20〜SP22−SP20)。このようにしてスケジューラ42は、処理依頼を受けた各パケットについて、そのパケットに設定された処理優先度に応じた順番でプロセス処理部43に処理を依頼する。
一方、プロセス処理部43は、スケジューラ42から与えられる各処理依頼について、当該処理依頼と一緒に与えられる処理プロセス名及びセッション番号に基づいて、対応する処理プロセス41A〜41Cに処理内容を問い合わせ、指定された処理(例えばディスクサブシステム11(図1)へのデータの入出力処理など)を実行する(図4のSP5)。またプロセス処理部43は、この処理結果(例えば完了通知であり、処理がデータの読出し要求であった場合には読み出したデータを含む)を対応する処理プロセス41A〜41Cに送出する(図4のSP6)。
処理プロセス41A〜41Cは、かかる処理結果がプロセス処理部43から与えられると、この処理結果をセッション管理表44に格納されているそのパケットの優先度(precedence)と共にネットワーク処理部40に送出する(図4のSP7)。
ネットワーク処理部40は、この処理プロセス41A〜41Cから与えられるそのパケットの処理結果をパケット化する。この際、ネットワーク処理部40は、かかる処理結果が格納されたパケットのIPヘッダ31(図2(A))のTOSフィールド(図2(B)の「Type of Service」)に、この処理結果と共に処理プロセス41A〜41Cから与えられた優先度(precedence)を設定する。そしてネットワーク処理部40は、このようにして得られたその処理結果のパケットを、対応するクライアント端末2、管理端末3又はバックアップサーバ4に送信する(図4のSP8)。
このように本実施の形態によるネットワークシステム1では、クライアント端末2や管理端末3又はバックアップサーバ4からNAS10に送信されるパケットに対する処理を、そのパケットに設定された優先度(precedence)に基づいてスケジューリングして行うため、NAS10内部においても各パケットについて設定された優先度(precedence)で処理を行うことができる。またこのネットワークシステム1では、かかるパケットに対する処理の処理結果を、当該パケットに設定された優先度(precedence)と同じ優先度(precedence)を設定したパケットにパケット化して、対応するクライアント端末2、管理端末3又はバックアップサーバ4に送信するようにしているため、優先度の高いパケットの処理結果を第1〜第3のルータ5A〜5Cにおいて優先的に転送処理させることができる。
従って、このネットワークシステム1では、優先的に処理すべきパケットについて、クライアント端末2等からNAS10への転送時、NAS10内部における処理時、及びNAS10からそのクライアント端末2等への転送時のいずれにおいても優先的に処理することができる。よって、このネットワークシステム1では、重要なデータに対する処理の遅延やこれに起因するそのデータの損失等の発生を未然かつ有効に防止することができ、この結果、ネットワークシステムとして高い信頼性を得ることができる。
(2)第2の実施の形態
図1の60は、第2の実施の形態によるネットワークシステムを示す。このネットワークシステム60は、優先度(precedence)が設定されていないパケットについて、NAS61の内部における処理優先度を任意に設定でき、またそのパケットに対する処理結果を、この処理優先度に応じた優先度が設定されたパケットにパケット化してNAS61から対応するクライアント端末2等に送信し得るようになされた点を除いて第1の実施の形態によるネットワークシステムと同様に構成されている。
図1の60は、第2の実施の形態によるネットワークシステムを示す。このネットワークシステム60は、優先度(precedence)が設定されていないパケットについて、NAS61の内部における処理優先度を任意に設定でき、またそのパケットに対する処理結果を、この処理優先度に応じた優先度が設定されたパケットにパケット化してNAS61から対応するクライアント端末2等に送信し得るようになされた点を除いて第1の実施の形態によるネットワークシステムと同様に構成されている。
実際上、このネットワークシステム60の場合、NAS61のローカルディスク62には、図10に示すような優先度リスト64のデータが格納されている。この優先度リスト64は、NAS61に対して、優先的に処理すべきパケットの属性を設定するためのリストである。この実施の形態では、かかる属性として「ユーザ名」、「送信元のアドレス」、「プロトコルの種類」及び「プロセスの種類」を設定できるようになされており、優先度リスト64には、これらの属性にそれぞれ対応させて「ユーザ」欄64A、「送信元アドレス」欄64B、「プロトコル」欄64C、「プロセス」欄64D及び「処理優先度」欄64Eが設けられている。
そして、この優先度リスト64では、予め管理端末3(図1)を用いてストレージシステム7(図1)の管理者により設定された優先的に処理すべきパケットの属性(「ユーザ名」、「送信元のアドレス」、「プロトコルの種類」又は「プロセスの種類」)が、それぞれ対応する「ユーザ」欄64A、「送信元アドレス」欄64B、「プロトコル」欄64C又は「プロセス」欄64Dに記述される。また優先度リスト64では、かかる管理者により設定された、その属性のパケットに対する処理優先度が対応する「処理優先度」欄64Eに記述される。
例えば図10の例では、優先度リスト64の1つ目の設定(「♯1」)として、送信元のアドレスが「192.168.1.0/24」であるパケットについては、「1」の処理優先度で処理すべきことが設定され、優先度リストの2つ目の設定(「♯2」)として、ユーザ名が「ユーザA」であるパケットについては、「2」の処理優先度で処理すべきことが設定されている。またこの例では、優先度リストの3つ目の設定(「♯3」)として、上位プロトコルが「NFS」であるパケットについては、「1」の優先度で処理すべきことが設定され、優先度リストの4つ目の設定(「♯4」)として、送信元アドレスが「192.168.2.0/24」であり、かつプロセスが「samba」であるパケットについては、「2」の処理優先度で処理すべきことが設定されている。なお、例えばバックアップサーバ4からのバックアップデータの転送要求等の緊急性を要しないものについては、処理優先度を低く設定することによって、他の重要なデータやリアルタイム性を有するデータの処理遅延や損失が発生するのをより有効に防止することができる。
そしてNAS61では、起動時にこの優先度リスト64のデータが図6について上述したTOS変換表45等のデータと一緒にローカルディスク62(図1)から読み出されてローカルメモリ21に格納される。そして図3について上述した処理プロセス41A〜41Cと同様のこの第2の実施の形態による各処理プロセス63A〜63C(図3)は、クライアント端末2、管理端末3又はバックアップサーバ4から送信されてきたパケットをネットワーク処理部40から受け取ると、図4のステップSP2について上述したセッション管理表44への優先度(precedence)及び処理優先度の設定処理を、この優先度リスト64を用いて、図11に示す優先度及び処理優先度設定処理手順RT3に従って実行する。
すなわち各処理プロセス63A〜63Cは、かかるパケットをネットワーク処理部40から受け取ると、まず、そのパケットのIPヘッダ31(図2(A))のTOSフィールドに格納されたデータの上位3ビットの値に基づいて、そのパケットに優先度(precedence)が設定されているか否かを判断する(SP30)。
そして処理プロセス63A〜63Cは、この判断において肯定結果を得た場合には(SP30:YES)、この優先度(precedence)をTOS変換表45(図6)を用いて処理優先度に変換し、この変換結果を図5について上述したセッション管理表44の「処理優先度」欄44Fに設定する。また、これと共に処理プロセス63A〜63Cは、そのパケットに設定されている優先度(precedence)をそのままセッション管理表44の「precedence」欄に設定する(SP31)。
これに対して処理プロセス63A〜63Cは、かかる判断において否定結果を得た場合には(SP30:NO)、そのパケットの可変長データ33(図2(A))からユーザ名と、そのセッションのプロセスの種類(例えば「samba」など)を抽出する。また処理プロセス63A〜63Cは、これと共に、そのパケットのIPヘッダ31(図2(A))の送信元IPアドレスフィールド(図2(B)の「Source Address」)からそのパケットの送信元のアドレスを抽出し、さらにそのIPヘッダ31のプロトコルフィールド(図2(B)の「Protocol」)に格納されたポート番号から上位プロトコルの種類(HTTP,FTP,Telnetなど)を抽出する。
次いで処理プロセス63A〜63Cは、優先度リスト64を参照して、そのパケットから抽出したこれらユーザ名、プロセスの種類、送信元のアドレス及び上位プロトコルの種類のいずれかの属性が優先度リスト64に登録されているか否かを判断する。そして処理プロセス63A〜63Cは、これら属性のいずれかが優先度リスト64に登録されていない場合には、セッション管理表44(図5)の「処理優先度」欄44F及び「優先度(precedence)」欄44Eにそれぞれ「0」を格納する。
これに対して、処理プロセス63A〜63Cは、これら属性のいずれかが優先度リスト64に登録されている場合には、優先度リスト64の対応する「処理優先度」欄64Eからその属性について予め設定された処理優先度を読み出す。この際、これら属性には予め優先順位が定められており、処理プロセス63A〜63Cは、パケットの属性が重複した場合には、優先順位の高い方の属性について予め設定されている処理優先度を読み出す。
そして処理プロセス63A〜63Cは、このようにして優先度リスト64から対応する処理優先度を読み出すと、これをセッション管理表44の「処理優先度」欄44Fに格納する。また処理プロセス63A〜63Cは、この後かかる優先度リスト64から読み出したそのパケットの処理優先度をTOS変換表45(図6)を用いて優先度(precedence)に変換し、変換結果をセッション管理表44の「優先度(precedence)」欄44Eに格納する(SP32)。
この後処理プロセス63A〜63Cは、かかるセッション管理表44に対する優先度(precedence)及び処理優先度の設定処理(図4のSP2)を終了し、この後セッション管理表44の「セッション番号」欄44A、「プロセス」欄44B及び「処理優先度」欄44Fにそれぞれ格納された、そのパケットのセッション番号、プロセスの種類及び処理優先度を、そのパケットの処理依頼と共にスケジューラ42(図3)に送出する(図4のSP3)。
従って、クライアント端末2等からNAS61に送信されたパケットに優先度(precedence)が設定されていないときであっても、そのパケットが優先度リスト64に登録されている属性(「ユーザ名」、「送信元のアドレス」、「プロトコルの種類」及び「プロセスの種類」)を有する場合には、その属性について優先度リスト64に格納された処理優先度がスケジューラ42に与えられるため、そのパケットがその処理優先度でプロトコル処理部43(図3)において処理されることとなる。
また処理プロセス63A〜63Cは、この後このパケットに対する処理結果がプロセス処理部43から与えられると、その処理結果を、セッション管理表44のそのパケットの「優先度(precedence)」欄44Eに記述されている優先度(precedence)と共にネットワーク処理部40(図3)に送信する(図4のSP7)。
かくしてネットワーク処理部40は、この処理プロセス63A〜63Cから与えられるそのセッションの処理結果をパケット化する。この際、ネットワーク処理部40は、かかる処理結果のパケットのIPヘッダ31(図2(A))のTOSフィールド(図2(B)の「Type of Service」)の上位3ビットに、この処理結果と共に処理プロセス63A〜63Cから与えられた優先度(precedence)を設定する。そしてネットワーク処理部40は、このようにして得られたその処理結果のパケットを、対応するクライアント端末2、管理端末3又はバックアップサーバ4に順次送信する(図4のSP8)。
このように本実施の形態によるネットワークシステム60では、NAS61の優先度リスト64に所望の属性(「ユーザ名」、「送信元のアドレス」、「プロトコルの種類」及び「プロセスの種類」)及び処理優先度を登録することによって、その属性を有するパケットに対するNAS61内部での処理をその設定された処理優先度で行わせることができる。従って、このネットワークシステム60では、第1の実施の形態のネットワークシステム1に比べて、NAS61内部における処理の優先順位をきめ細やかに設定することができる。
またこのネットワークシステム61では、優先度が設定されていないが、優先度リスト64に登録された属性を有するパケットについての処理結果をNAS61から処理結果を対応するクライアント端末2等に送信する際に、そのパケットに、優先度リスト64に登録された処理優先度に応じた優先度(precedence)を設定するようにしているため、このパケットを第1〜第3のルータ5A〜5Cにおいて優先的に転送処理させることができる。かくするにつき、予め登録されたユーザ等のデータがNAS61からそのクライアント端末2等に配信される際にそのデータの送信が遅れたり、又はそのデータが損失するのを未然かつ有効に防止することができる。
(3)第3の実施の形態
図1において、70は全体として第3の実施の形態によるネットワークシステムを示す。このネットワークシステム70は、クライアント端末2、管理端末3又はバックアップサーバ4からNAS71に送信されるパケットに優先度(precedence)が設定されている場合においても、NAS71の内部において、当該NAS71が保持する優先度リスト64(図10)に従ってそのパケットに対する処理優先度を設定するようになされた点を除いて第2の実施の形態によるネットワークシステム60と同様に構成されている。
図1において、70は全体として第3の実施の形態によるネットワークシステムを示す。このネットワークシステム70は、クライアント端末2、管理端末3又はバックアップサーバ4からNAS71に送信されるパケットに優先度(precedence)が設定されている場合においても、NAS71の内部において、当該NAS71が保持する優先度リスト64(図10)に従ってそのパケットに対する処理優先度を設定するようになされた点を除いて第2の実施の形態によるネットワークシステム60と同様に構成されている。
実際上、このネットワークシステム70の場合、NAS71は、図10について上述した優先度リスト64のデータをローカルディスク72(図1)に保持している。この優先度リスト64のデータは、NAS71の起動時にTOS変換表45(図6)のデータ等と共にローカルディスク72から読み出されてローカルメモリ21(図1)に格納される。
そして図3について上述した処理プロセス41A〜41Cと同様のこの第3の実施の形態による各処理プロセス73A〜73C(図3)は、クライアント端末2、管理端末3又はバックアップサーバ4から送信されてきたパケットをネットワーク処理部40から受け取ると、図4のステップSP2について上述したセッション管理表44への優先度(precedence)及び処理優先度の設定処理を、この優先度リスト64を用いて、図12に示す優先度及び処理優先度設定処理手順RT4に従って実行する。
すなわち各処理プロセス73A〜73Cは、かかるパケットをネットワーク処理部40から受け取ると、図11のステップSP32と同様にして、そのパケット(セッション)についての処理優先度及び優先度をセッション管理表44の「処理優先度」欄44F及び「優先度(precedence)」欄44Eにそれぞれ格納する(SP40)。
この後処理プロセス73A〜73Cは、かかるセッション管理表44に対する優先度(precedence)及び処理優先度の設定処理(図4のSP2)を終了し、この後セッション管理表44の「セッション番号」欄44A、「プロセス」欄44B及び「処理優先度」欄44Fにそれぞれ格納された、そのパケットのセッション番号、プロセスの種類及び処理優先度を、そのパケットの処理依頼と共にスケジューラ42(図3)に送出する(図4のSP3)。
従って、クライアント端末2等からNAS71に送信されたパケットに優先度(precedence)が設定されていたときであっても、そのパケットが優先度リストに登録されている属性(「ユーザ名」、「送信元のアドレス」、「プロトコルの種類」及び「プロセスの種類」)を有する場合には、その属性について優先度リスト64に登録された処理優先度がスケジューラ42に与えられるため、そのパケットがその処理優先度でプロトコル処理部43(図3)において処理されることとなる。
また処理プロセス73A〜73Cは、この後このパケットに対する処理結果がプロセス処理部43から与えられると、その処理結果を、セッション管理表44のそのパケットの「優先度(precedence)」欄44Eに記述されている優先度(precedence)と共にネットワーク処理部40(図3)に送信する(図4のSP7)。
かくしてネットワーク処理部40は、この処理プロセス73A〜73Cから与えられるそのパケットの処理結果をパケット化する。この際、ネットワーク処理部40は、かかる処理結果のパケットのIPヘッダ31(図2(A))のTOSフィールド(図2(B)の「Type of Service」)の上位3ビットに、この処理結果と一緒に処理プロセス73A〜73Cから与えられた優先度(precedence)を設定する。そしてネットワーク処理部40は、このようにして得られたその処理結果のパケットを、対応するクライアント端末2、管理端末3又はバックアップサーバ4に順次送信する(図4のSP8)。
このように本実施の形態によるネットワークシステム70では、パケットに優先度(precedence)が設定されている場合においても、そのパケットがNAS71の優先度リスト64に登録されている属性(「ユーザ名」、「送信元のアドレス」、「プロトコルの種類」及び「プロセスの種類」)を有する場合には、優先度リスト64に設定された処理優先度でNAS71内部において処理される。従って、このネットワークシステム70では、例えば高い優先度(precedence)が設定されているが、優先度リスト64に登録されていない属性を有するパケットがNAS71に与えられた場合においても、優先度リスト64に登録された属性を有するパケットをNAS71内部において優先的に処理することができる。かくするにつき、高い優先度(precedence)が設定されているが、優先度リスト64に登録されていない属性を有するパケットが大量にNAS71に与えられた場合においても、特定のパケットの処理が遅延したり、かかるパケットに格納されたデータの損失を確実に防止することができる。
またこのネットワークシステム70では、優先度リスト64に登録された属性を有するパケットについての処理結果をNAS71から処理結果を対応するクライアント端末2等に送信する際に、そのパケットに、優先度リスト64に登録された処理優先度に応じた優先度(precedence)を設定するようにしているため、このパケットを第1〜第3のルータ5A〜5Cにおいて優先的に転送処理させることができる。かくするにつき、予め登録されたユーザ等のデータがNAS71からそのクライアント端末2等に配信される際にそのデータの送信が遅れたり、又はそのデータが損失するのを未然かつ有効に防止することができる。
(4)他の実施の形態
なお上述の第1〜第3の実施の形態においては、本発明を、NASに構成するようにした場合について述べたが、本発明はこれに限らず、例えばストレージサブシステム11にNASとしての機能を搭載し、このストレージサブシステム11に本発明を適用するようにしても良い。
なお上述の第1〜第3の実施の形態においては、本発明を、NASに構成するようにした場合について述べたが、本発明はこれに限らず、例えばストレージサブシステム11にNASとしての機能を搭載し、このストレージサブシステム11に本発明を適用するようにしても良い。
また上述の第2及び第3の実施の形態においては、優先度リストに登録できるパケットの属性として「ユーザ名」、「送信元のアドレス」、「プロトコルの種類」及び「プロセスの種類」の4つを適用するようにした場合について述べたが、本発明はこれに限らず、これら以外の属性を適用するようにしても良い。
本発明はNASのほか、種々のストレージシステムに広く適用することができる。
1,60,70……ネットワークシステム、2……クライアント端末、3……管理端末、4……バックアップサーバ、5A〜5C……ルータ、6A〜6C,12……ネットワーク、10,61,71……NAS、22……CPU、20……ネットワークインタフェース、23,62,72……ローカルディスク、31……IPヘッダ、40……ネットワーク処理部、41A〜41C,63A〜63C,73A〜73C……処理プロセス、42……スケジューラ、43……プロセス処理部、44……セッション管理表、45……TOS変換表、64……優先度リスト。
Claims (16)
- 上位装置との間で情報をパケット化して送受するストレージシステムにおいて、
前記上位装置から送信される各パケットにそれぞれ設定された優先度を検出する第1の処理部と、
各前記パケットを処理する第2の処理部と、
各前記パケットについての処理結果を、当該パケットに設定された前記優先度と同じ優先度を設定したパケットにパケット化して前記上位装置に送信する通信部と
を備えることを特徴とするストレージシステム。 - 各上位プロトコルにそれぞれ対応させて前記第1の処理部が設けられ、
前記通信部は、
前記上位装置から送信される各前記パケットを、それぞれ対応する前記第1の処理部に振り分ける
ことを特徴とする請求項1に記載のストレージシステム。 - 前記第1の処理部は、
前記パケットに設定された前記優先度と処理優先度とを予め対応付けた変換表を備え、
当該変換表を用いて、前記上位装置から送信される各前記パケットに設定された前記優先度を前記処理優先度に変換し、変換した前記処理優先度を当該パケットに対して設定する
ことを特徴とする請求項1に記載のストレージシステム。 - 前記第1の処理部は、検出した前記パケットの前記優先度に基づいて当該パケットに対する処理優先度を設定し、
各前記パケットにそれぞれ設定された前記処理優先度に基づいて、前記パケットの処理順番をスケジュールするスケジュール部を備え、
前記第2の処理部は、前記スケジュール部によりスケジュールされた前記処理順番に従って各前記パケットをそれぞれ処理する
ことを特徴とする請求項1に記載のストレージシステム。 - 前記スケジュール部は、
各前記パケットにそれぞれ設定された前記処理優先度に基づいて、各前記パケットの処理依頼を、前記処理優先度毎に設けられた処理キューのうちの対応する前記処理キューに振り分け、前記処理依頼が前記処理優先度の高い前記処理キューに属する前記パケットを優先的に処理するようにスケジュールする
ことを特徴とする請求項4に記載のストレージシステム。 - 前記第1の処理部は、
所望の属性を有する前記パケットの前記処理優先度を予め規定した優先度リストを備え、
前記上位装置から与えられる前記パケットが前記優先度リストに登録された前記属性を有するときには、当該優先度リストに従ってそのパケットに対する前記処理優先度を設定する
ことを特徴とする請求項4に記載のストレージシステム。 - 前記第1の処理部は、
前記上位装置から送信された前記パケットに前記優先度が設定されていないときであって、かつ当該パケットが前記優先度リストに登録された前記属性を有するときには、当該優先度リストに従ってそのパケットに対する前記処理優先度を設定する
ことを特徴とする請求項6に記載のストレージシステム。 - 前記第1の処理部は、
前記上位装置から送信された前記パケットに前記優先度が設定されているときであっても、当該パケットが前記優先度リストに登録された前記属性を有するときには、当該優先度リストに従ってそのパケットに対する前記処理優先度を設定する
ことを特徴とする請求項6に記載のストレージシステム。 - 上位装置との間で情報をパケット化して送受するストレージシステムでのデータ処理方法において、
前記上位装置から送信される各パケットにそれぞれ設定された優先度を検出する第1のステップと、
各前記パケットを処理する第2のステップと、
各前記パケットについての処理結果を、当該パケットに設定された前記優先度と同じ優先度を設定したパケットにパケット化して前記上位装置に送信する第3のステップと
を備えることを特徴とするデータ処理方法。 - 前記第1のステップでは、
前記上位装置から送信される各パケットを、それぞれ各上位プロトコルにそれぞれ対応させた処理系に振り分けて、各前記処理系ごとに前記パケットに設定された前記優先度を検出する
ことを特徴とする請求項9に記載のデータ処理方法。 - 前記第1のステップでは、
前記パケットに設定された前記優先度と前記処理優先度とを予め対応付けた変換表を用いて、前記上位装置から送信される各前記パケットに設定された前記優先度を前記処理優先度に変換し、変換した前記処理優先度を当該パケットに対して設定する
ことを特徴とする請求項9に記載のデータ処理方法。 - 前記第1のステップでは、
検出した前記パケットの前記優先度に基づいて当該パケットに対する処理優先度を設定し、
前記第2のステップは、
各前記パケットにそれぞれ設定された前記処理優先度に基づいて、前記パケットの処理順番をスケジュールするスケジュールステップと、
スケジュールした前記処理順番に従って各前記パケットをそれぞれ処理する処理ステップとを備える
ことを特徴とする請求項9に記載のデータ処理方法。 - 前記スケジュールステップでは、
各前記パケットにそれぞれ設定された前記処理優先度に基づいて、各前記パケットの処理依頼を、前記処理優先度毎に設けられた処理キューのうちの対応する前記処理キューに振り分け、前記処理依頼が前記処理優先度の高い前記処理キューに属する前記パケットを優先的に処理するようにスケジュールする
ことを特徴とする請求項12に記載のデータ処理方法。 - 前記第1のステップでは、
所望の属性を有する前記パケットの前記処理優先度を予め規定した優先度リストを用いて、前記上位装置から与えられる前記パケットが、前記優先度リストに登録された前記属性を有するときには、当該優先度リストに従ってそのパケットに対する前記処理優先度を設定する
ことを特徴とする請求項12に記載のデータ処理方法。 - 前記第1のステップでは、
前記上位装置から送信された前記パケットに前記優先度が設定されていないときであって、かつ当該パケットが前記優先度リストに登録された前記属性を有するときには、当該優先度リストに従ってそのパケットに対する前記処理優先度を設定する
ことを特徴とする請求項14に記載のデータ処理方法。 - 前記第1のステップでは、
前記上位装置から送信された前記パケットに前記優先度が設定されているときであっても、当該パケットが前記優先度リストに登録された前記属性を有するときには、当該優先度リストに従ってそのパケットに対する前記処理優先度を設定する
ことを特徴とする請求項14に記載のデータ処理方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005107033A JP2006285811A (ja) | 2005-04-04 | 2005-04-04 | ストレージシステム及びデータ処理方法 |
US11/144,667 US20060221824A1 (en) | 2005-04-04 | 2005-06-06 | Storage system and data processing method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005107033A JP2006285811A (ja) | 2005-04-04 | 2005-04-04 | ストレージシステム及びデータ処理方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2006285811A true JP2006285811A (ja) | 2006-10-19 |
Family
ID=37070284
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005107033A Pending JP2006285811A (ja) | 2005-04-04 | 2005-04-04 | ストレージシステム及びデータ処理方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20060221824A1 (ja) |
JP (1) | JP2006285811A (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011232967A (ja) * | 2010-04-28 | 2011-11-17 | Nec Corp | ストレージシステム及びストレージシステムのディスクアクセス優先度制御方法 |
JP2013084022A (ja) * | 2011-10-06 | 2013-05-09 | Hitachi Ltd | ディザスタリカバリ方法およびシステム |
JP2014142940A (ja) * | 2008-09-19 | 2014-08-07 | Oracle Internatl Corp | 記憶側記憶要求管理 |
JP6149172B1 (ja) * | 2016-07-14 | 2017-06-14 | かもめエンジニアリング株式会社 | 処理方法および処理システム |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4740763B2 (ja) * | 2006-02-15 | 2011-08-03 | 株式会社日立製作所 | ストレージシステム及びストレージコントローラ |
JP2007310772A (ja) * | 2006-05-22 | 2007-11-29 | Hitachi Ltd | ストレージシステム及び通信制御方法 |
US8559310B2 (en) * | 2007-09-04 | 2013-10-15 | Ca, Inc. | System and method for bandwidth control |
US8271748B2 (en) * | 2008-08-12 | 2012-09-18 | Intel Corporation | Generating and/or receiving, at least one data access request |
US8917735B2 (en) * | 2010-06-22 | 2014-12-23 | At&T Mobility Ii Llc | Arrangement for controlling access to data network |
US8918559B2 (en) * | 2011-06-06 | 2014-12-23 | International Business Machines Corporation | Partitioning of a variable length scatter gather list |
CN102594710B (zh) * | 2012-03-28 | 2015-07-22 | 福建星网锐捷网络有限公司 | 一种堆叠链路防丢包方法、装置及堆叠交换机 |
CN102821042B (zh) * | 2012-07-27 | 2015-05-06 | 华为技术有限公司 | 数据处理方法、装置和系统 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4899335A (en) * | 1988-12-21 | 1990-02-06 | American Telephone And Telegraph Company, At&T Bell Laboratories | Self routing packet switching network architecture |
JPH03201641A (ja) * | 1989-12-27 | 1991-09-03 | Toshiba Corp | 通信パケットの優先制御方式 |
GB9721947D0 (en) * | 1997-10-16 | 1997-12-17 | Thomson Consumer Electronics | Intelligent IP packet scheduler algorithm |
US6757284B1 (en) * | 2000-03-07 | 2004-06-29 | Cisco Technology, Inc. | Method and apparatus for pipeline sorting of ordered streams of data items |
GB2369526B (en) * | 2000-11-24 | 2003-07-09 | 3Com Corp | TCP Control packet differential service |
JP2003152544A (ja) * | 2001-11-12 | 2003-05-23 | Sony Corp | データ通信システム、データ送信装置、データ受信装置、および方法、並びにコンピュータ・プログラム |
JP3639556B2 (ja) * | 2001-12-12 | 2005-04-20 | 富士通株式会社 | VoIPネットワークの輻輳制御システム |
JP2003209573A (ja) * | 2002-01-10 | 2003-07-25 | Fujitsu Ltd | 通信装置及び中継装置 |
JP2003316521A (ja) * | 2002-04-23 | 2003-11-07 | Hitachi Ltd | 記憶制御装置 |
JP4219633B2 (ja) * | 2002-07-25 | 2009-02-04 | 株式会社日立製作所 | 記憶装置システムのデステージ方法、ディスク制御装置、記憶装置システム、及びプログラム |
TWI333353B (en) * | 2003-01-21 | 2010-11-11 | Panasonic Corp | System and method for communications with reservation of network resources, and terminal therefore |
-
2005
- 2005-04-04 JP JP2005107033A patent/JP2006285811A/ja active Pending
- 2005-06-06 US US11/144,667 patent/US20060221824A1/en not_active Abandoned
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014142940A (ja) * | 2008-09-19 | 2014-08-07 | Oracle Internatl Corp | 記憶側記憶要求管理 |
JP2011232967A (ja) * | 2010-04-28 | 2011-11-17 | Nec Corp | ストレージシステム及びストレージシステムのディスクアクセス優先度制御方法 |
JP2013084022A (ja) * | 2011-10-06 | 2013-05-09 | Hitachi Ltd | ディザスタリカバリ方法およびシステム |
JP6149172B1 (ja) * | 2016-07-14 | 2017-06-14 | かもめエンジニアリング株式会社 | 処理方法および処理システム |
WO2018011943A1 (ja) * | 2016-07-14 | 2018-01-18 | かもめエンジニアリング株式会社 | 処理方法および処理システム |
US10061803B2 (en) | 2016-07-14 | 2018-08-28 | Kamome Engineering, Inc. | Processing method and processing system |
Also Published As
Publication number | Publication date |
---|---|
US20060221824A1 (en) | 2006-10-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4886685B2 (ja) | ネットワーク・プロトコル処理のオフロードにおいてメモリ管理をサポートする装置および方法 | |
JP4577853B2 (ja) | ネットワーク・プロトコル処理のオフロードにおいて接続確立をサポートする装置および方法 | |
US6370583B1 (en) | Method and apparatus for portraying a cluster of computer systems as having a single internet protocol image | |
TWI239732B (en) | A method, computer readable medium and system for providing QoS for an iSCSI environment | |
JP2006285811A (ja) | ストレージシステム及びデータ処理方法 | |
JP4398354B2 (ja) | 中継システム | |
WO2003052617A1 (en) | A system and method for efficient handling of network data | |
US7499463B1 (en) | Method and apparatus for enforcing bandwidth utilization of a virtual serialization queue | |
US20070291782A1 (en) | Acknowledgement filtering | |
US20030110154A1 (en) | Multi-processor, content-based traffic management system and a content-based traffic management system for handling both HTTP and non-HTTP data | |
US20110270976A1 (en) | Network protocol processing system and network protocol processing method | |
CN114866477A (zh) | 一种网络设备拥塞控制机制的测试方法、系统及设备 | |
JP4658546B2 (ja) | フェイルオーバーイベントをサポートするネットワーク状態オブジェクトの多重オフロード | |
JP5673057B2 (ja) | 輻輳制御プログラム、情報処理装置および輻輳制御方法 | |
JP4729549B2 (ja) | 負荷制御方法及び装置及びプログラム | |
JP3469501B2 (ja) | ネットワーク機器制御装置及び通信システム | |
WO2008121690A2 (en) | Data and control plane architecture for network application traffic management device | |
US20050198007A1 (en) | Method, system and algorithm for dynamically managing a connection context database | |
US7616653B1 (en) | Network interface card aggregation framework | |
US7593404B1 (en) | Dynamic hardware classification engine updating for a network interface | |
JP4915345B2 (ja) | 試験装置測定システム | |
US7675920B1 (en) | Method and apparatus for processing network traffic associated with specific protocols | |
JP3879754B2 (ja) | 帯域制御装置およびプログラム | |
US7839875B1 (en) | Method and system for an efficient transport loopback mechanism for TCP/IP sockets | |
JP2003143222A (ja) | ネットワーク制御システム |