JP4123386B2 - Communication path redundancy system, communication path redundancy method, and load distribution program - Google Patents

Communication path redundancy system, communication path redundancy method, and load distribution program Download PDF

Info

Publication number
JP4123386B2
JP4123386B2 JP2004313152A JP2004313152A JP4123386B2 JP 4123386 B2 JP4123386 B2 JP 4123386B2 JP 2004313152 A JP2004313152 A JP 2004313152A JP 2004313152 A JP2004313152 A JP 2004313152A JP 4123386 B2 JP4123386 B2 JP 4123386B2
Authority
JP
Japan
Prior art keywords
request
server
communication path
information
storage device
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2004313152A
Other languages
Japanese (ja)
Other versions
JP2006128955A (en
Inventor
祐 坂本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP2004313152A priority Critical patent/JP4123386B2/en
Publication of JP2006128955A publication Critical patent/JP2006128955A/en
Application granted granted Critical
Publication of JP4123386B2 publication Critical patent/JP4123386B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

本発明は、通信パス冗長化システム及び通信パスの冗長化方法に関し、特に複数サーバ間における、外部記憶装置への通信パス冗長化システム及び通信パスの冗長化方法に関する。   The present invention relates to a communication path redundancy system and a communication path redundancy method, and more particularly to a communication path redundancy system and a communication path redundancy method for a plurality of servers to an external storage device.

従来、サーバからストレージネットワークを介して外部記憶装置への通信パスを確保し、外部記憶装置へのデータの書き込みや読み込みを行なう入出力(以下、I/Oと呼ぶ)を実行するI/Oシステムがある。このI/Oシステムは、1つのサーバからの外部記憶装置に対する通信パスが全て使用できない状態になると、そのサーバはその外部記憶装置に対するI/Oの手段がなくなるという問題があった。   Conventionally, an I / O system that secures a communication path from a server to an external storage device via a storage network and executes input / output (hereinafter referred to as I / O) for writing and reading data to and from the external storage device There is. This I / O system has a problem that when all communication paths from one server to the external storage device cannot be used, the server has no I / O means for the external storage device.

又、1つのサーバからの外部記憶装置に対するパスのみを使用して、I/Oの負荷分散を行っていたため、他のサーバからのその外部記憶装置に対するパスを用いての負荷分散を行えないという問題点があった(特許文献1参照)。
特開2003−099384号公報
Also, because I / O load distribution is performed using only the path from one server to the external storage device, load distribution cannot be performed using the path from another server to the external storage device. There was a problem (see Patent Document 1).
JP 2003-099384 A

本発明の目的は、複数のサーバでストレージネットワークを介して共通接続される外部記憶装置に対する通信パスを冗長化してI/Oの負荷分散を可能にする通信パスの冗長化システムを提供することにある。   SUMMARY OF THE INVENTION An object of the present invention is to provide a communication path redundancy system in which communication paths for external storage devices commonly connected via a storage network by a plurality of servers are made redundant to allow load distribution of I / O. is there.

本発明の他の目的は、1つのサーバから外部記憶装置に対する通信パスが全て使用できない場合でも、外部記憶装置ヘのI/Oを実行可能な通信パスの冗長化システムを提供することにある。   Another object of the present invention is to provide a communication path redundancy system capable of executing I / O to an external storage device even when all communication paths from one server to the external storage device cannot be used.

本発明の更に他の目的は、複数のサーバから接続される複数の通信パスから、より望ましい通信パスを選択してI/Oを実行可能な通信パスの冗長化システムを提供することにある。   Still another object of the present invention is to provide a communication path redundancy system capable of executing I / O by selecting a more desirable communication path from a plurality of communication paths connected from a plurality of servers.

以下に、[発明を実施するための最良の形態]で使用される番号・符号を括弧付きで用いて、[課題を解決するための手段]を説明する。この番号・符号は、[特許請求の範囲]の記載と[発明を実施するための最良の形態]の記載との対応関係を明らかにするために付加されたものであるが、[特許請求の範囲]に記載されている発明の技術的範囲の解釈に用いてはならない。   [Means for Solving the Problems] will be described below using the numbers and symbols used in [Best Mode for Carrying Out the Invention] in parentheses. This number / symbol is added to clarify the correspondence between the description of [Claims] and the description of the best mode for carrying out the invention. It should not be used for interpreting the technical scope of the invention described in [Scope].

本発明による通信パスの冗長化システムは、ネットワーク(100)と、ネットワーク(100)にそれぞれ接続される複数のサーバ(101)と、複数のサーバ(101)に接続されるストレージネットワーク(107)と、複数のサーバ(101)とストレージネットワーク(107)を介して共有接続される外部記憶装置(108)とを備える。複数のサーバ(101)は、第1のサーバ(101−1)は、ネットワーク(100)を介して複数のサーバのいずれか1つのサーバ(101)を制御して、サーバ(101)から前ストレージネットワーク(107)を経由し、外部記憶装置(108)に接続する通信経路である通信パスを確保させ、外部記憶装置(108)への入出力を実行する。   A communication path redundancy system according to the present invention includes a network (100), a plurality of servers (101) connected to the network (100), and a storage network (107) connected to the plurality of servers (101). A plurality of servers (101) and an external storage device (108) connected in a shared manner via a storage network (107). The plurality of servers (101) is configured such that the first server (101-1) controls any one of the plurality of servers (101) via the network (100), and stores the previous storage from the server (101). A communication path which is a communication path connected to the external storage device (108) is secured via the network (107), and input / output to the external storage device (108) is executed.

第1のサーバ8101−1)は、入出力を実行するためのI/O要求(RQ)を発行し、I/O要求(RQ)は、通信パスの情報であるパス情報(803)を含み、第1のサーバ(101−1)は、I/O要求(RQ)の複数のパス情報(803)を参照して、最適な通信パスを選択し、最適な通信パスを確保して外部記憶装置(108)との入出力を実行する。   The first server 8101-1) issues an I / O request (RQ) for executing input / output, and the I / O request (RQ) includes path information (803) that is communication path information. The first server (101-1) refers to the plurality of path information (803) of the I / O request (RQ), selects the optimum communication path, secures the optimum communication path, and stores the information externally. I / O with the device (108) is executed.

第1のサーバ(101−1)は、最適な通信パスとして第2のサーバ(101−2)と外部記憶装置(108)との間の通信パスを選択し、第2のサーバ(101−2)に入出力を実行させるための情報であるI/O情報(AD)をI/O要求(RQ)から抽出し、I/O情報(AD)をネットワーク(100)を介して第2のサーバ(101−2)に送信し、第2のサーバ(101−2)は、I/O情報(AD)から入出力を実行するためのI/O要求(RQ)を発行し、I/O要求(RQ)に含まれる複数のパス情報(303)を参照して、第2のサーバ(101−2)と外部記憶装置(108)との間の最適な通信パスを選択し、最適な通信パスを確保して入出力を実行する。   The first server (101-1) selects the communication path between the second server (101-2) and the external storage device (108) as the optimum communication path, and the second server (101-2) ) Is extracted from the I / O request (RQ), and the I / O information (AD) is extracted via the network (100) to the second server. (101-2), the second server (101-2) issues an I / O request (RQ) for executing input / output from the I / O information (AD), and the I / O request The optimum communication path is selected by referring to the plurality of path information (303) included in (RQ) and selecting the optimum communication path between the second server (101-2) and the external storage device (108). Secures and executes input / output.

I/O要求(RQ)がWrite要求である場合、第1のサーバ(101−1)は、I/O要求(RQ)に基づくWriteデータを第2のサーバ(101−2)に送信し、第2のサーバ(101−2)は、入出力を実行する際、Writeデータを、I/O情報(AD)に対応する外部記憶装置(108)のアドレス上に書き込む。   When the I / O request (RQ) is a write request, the first server (101-1) transmits write data based on the I / O request (RQ) to the second server (101-2). When executing the input / output, the second server (101-2) writes the write data on the address of the external storage device (108) corresponding to the I / O information (AD).

I/O要求(RQ)がWrite要求以外の要求である場合、第2のサーバ(101−2)は、入出力を実行する際、I/O要求(RQ)に基づくReadデータを、I/O情報(AD)に対応する外部記憶装置(108)のアドレス上から読み取り、第1のサーバ(101−1)に送信する。   When the I / O request (RQ) is a request other than the Write request, the second server (101-2), when executing input / output, reads Read data based on the I / O request (RQ) as I / O. Read from the address of the external storage device (108) corresponding to the O information (AD) and send it to the first server (101-1).

入出力が終了すると第2のサーバ(101−2)は、ネットワーク(100)を介して第1のサーバ(101−1)に入出力が終了したことを示すI/O完了通知(NC)を送信する。   When the input / output is completed, the second server (101-2) sends an I / O completion notification (NC) indicating that the input / output is completed to the first server (101-1) via the network (100). Send.

入出力が完了せず、エラーとなる場合、第2のサーバ(101−2)はI/O要求(RQ)のパス情報(803)を更新する。通信パスを変更することでエラーを回避できると判断すると、第2のサーバ(101−2)は、I/O要求(RQ)に基づいて、第2のサーバ(101−2)と外部記憶装置(108)との間の最適な通信パスを選択し、その最適な通信パスを確保して入出力を実行する。第2のサーバ(101−2)は、最適な通信パスを選択できない場合、入出力の結果がエラーであることを示すI/Oエラー通知(NE)をネットワーク(100)を介して第1のサーバ(101−1)に送信する。   When the input / output is not completed and an error occurs, the second server (101-2) updates the path information (803) of the I / O request (RQ). If it is determined that the error can be avoided by changing the communication path, the second server (101-2), based on the I / O request (RQ), the second server (101-2) and the external storage device (108) is selected, the optimum communication path is secured, and input / output is executed. When the second server (101-2) cannot select an optimum communication path, the second server (101-2) sends an I / O error notification (NE) indicating that an input / output result is an error via the network (100). It transmits to the server (101-1).

又、入出力が完了せず、エラーとなる場合、第2のサーバ(101−2)はI/O要求(RQ)のパス情報(803)を更新し、通信パスを変更することでエラーを回避できない場合、第2のサーバ(101−2)は、ネットワーク(100)を介して入出力の結果がエラーであることを示すI/Oエラー通知(NE)を第1のサーバ(101−1)に送信する。   If the input / output is not completed and an error occurs, the second server (101-2) updates the path information (803) of the I / O request (RQ) and changes the communication path to indicate the error. If it cannot be avoided, the second server (101-2) sends an I / O error notification (NE) indicating that the input / output result is an error via the network (100) to the first server (101-1). ).

第1のサーバ(101−1)は、I/Oエラー通知(NE)を受信すると、I/O要求(RQ)のパス情報(803)を更新し、I/O要求(RQ)に基づいて第1のサーバ(101−1)と外部記憶装置(108)との間の通信パスを選択し、この通信パスを確保して前記入出力を実行する。   Upon receiving the I / O error notification (NE), the first server (101-1) updates the path information (803) of the I / O request (RQ), and based on the I / O request (RQ) A communication path between the first server (101-1) and the external storage device (108) is selected, the communication path is secured, and the input / output is executed.

以上のように、サーバ(101−1)から外部記憶装置(108)に対する入出力を実施する際、サーバ(101−1)からの通信パスが使用できない時、又は、最適な通信パスが他のサーバ(101−2)からの通信パスである時、サーバ(101−1)は、ネットワーク(100)を通じてサーバ(101−2)とI/O要求(RQ)のために必要な情報をやり取りし、サーバ(101−2)に通信パスを選択及び確保させ、入出力を実行させることができる。このようにして、複数サーバ(101)間において、外部記憶装置(108)への通信パスを冗長化することができる。   As described above, when the input / output from the server (101-1) to the external storage device (108) is performed, when the communication path from the server (101-1) cannot be used, or the optimum communication path is another When the communication path is from the server (101-2), the server (101-1) exchanges information necessary for the I / O request (RQ) with the server (101-2) through the network (100). The server (101-2) can select and secure a communication path and execute input / output. In this manner, the communication path to the external storage device (108) can be made redundant among the plurality of servers (101).

本発明による通信パスの冗長化システム及び通信パスの冗長化方法によれば、複数のサーバでストレージネットワークを介して共通接続される外部記憶装置に対する通信パスを冗長化して入出力の負荷分散を可能にすることにある。   According to the communication path redundancy system and the communication path redundancy method according to the present invention, it is possible to make a communication path redundantly connected to an external storage device commonly connected via a storage network with a plurality of servers, thereby distributing input / output loads. Is to make it.

又、1つのサーバから外部記憶装置に対する通信パスが全て使用できない場合でも、外部記憶装置ヘの入出力を実行することにある。   Further, even when all communication paths from one server to the external storage device cannot be used, the input / output to the external storage device is executed.

更に、複数のサーバから接続する複数の通信パスから、より望ましい通信パスを選択して入出力を実行することにある。   In addition, a more desirable communication path is selected from a plurality of communication paths connected from a plurality of servers, and input / output is executed.

以下、添付図面を参照して、本発明による認証システムの実施の形態を説明する。   Embodiments of an authentication system according to the present invention will be described below with reference to the accompanying drawings.

図1に本発明による通信パス冗長化システムの実施の形態における構成を示す。   FIG. 1 shows a configuration of an embodiment of a communication path redundancy system according to the present invention.

本発明による通信パス冗長化システムは、ネットワーク100と、複数のサーバ101−1・・101−nと、ストレージネットワーク107と、複数の外部記憶装置108−1・・108−nを具備している。   The communication path redundancy system according to the present invention includes a network 100, a plurality of servers 101-1,... 101-n, a storage network 107, and a plurality of external storage devices 108-1,. .

複数のサーバ101−1・・101−nは、ネットワーク100を介し相互に接続され、ストレージネットワーク107を介して、外部記憶装置108−1・・108−nと共有接続されている。   The plurality of servers 101-1 to 101 -n are connected to each other via the network 100 and are connected to the external storage devices 108-1 to 108 -n via the storage network 107.

本発明による通信パスの冗長化システムに使用されるネットワーク100は、外部記憶装置108ヘのI/Oを実施したいサーバが、選択した通信パス上の他のサーバ101のアドレスを指定して、そのサーバにI/Oを実行させるためのI/O情報ADを送信するため、TCP/IPのようなマルチキャストのネットワークである必要がなく、ユニキャストのネットワークや、不特定多数のサーバに対しデータを送信するブロードキャストのネットワークでも使用することができる。   In the network 100 used in the communication path redundancy system according to the present invention, the server that wants to perform I / O to the external storage device 108 specifies the address of another server 101 on the selected communication path, and Since I / O information AD for causing the server to execute I / O is transmitted, there is no need for a multicast network such as TCP / IP, and data is transmitted to a unicast network or an unspecified number of servers. It can also be used in a broadcast network for transmission.

サーバ101は、I/O要求部102、ネットワークドライバ103、負荷分散モジュール105、ディスクドライバ106を具備している。   The server 101 includes an I / O request unit 102, a network driver 103, a load distribution module 105, and a disk driver 106.

I/O要求部102、ネットワークドライバ103、負荷分散モジュール105、ディスクドライバ106は相互に接続され、ネットワークドライバ103はネットワーク100を介して、他のサーバ101のネットワークドライバ103に接続されている。又、ディスクドライバ106は、ストレージネットワーク107を介して外部記憶装置108に接続されている。   The I / O request unit 102, the network driver 103, the load distribution module 105, and the disk driver 106 are connected to each other. The network driver 103 is connected to the network driver 103 of another server 101 via the network 100. The disk driver 106 is connected to the external storage device 108 via the storage network 107.

ストレージネットワーク107は、SAN(Strage Area Network)に代表される外部記憶装置108間及び外部記憶装置108とサーバ102の間を結ぶ高速なネットワークである。大容量の外部記憶装置108は複数のサーバ108で共有される。サーバ108のディスクドライバ108は、ストレージネットワーク107を介した通信パスを確保して外部記憶装置108に対しデータの書き込みや、読み取りのI/O処理を実行する。ここで、通信パスとはサーバ101のディスクドライバ106からストレージネットワーク107を経由し、外部記憶装置108に接続する通信経路を示す。   The storage network 107 is a high-speed network that connects between the external storage devices 108 represented by SAN (Storage Area Network) and between the external storage device 108 and the server 102. The large-capacity external storage device 108 is shared by a plurality of servers 108. The disk driver 108 of the server 108 secures a communication path via the storage network 107 and executes data writing and reading I / O processing to the external storage device 108. Here, the communication path indicates a communication path connecting from the disk driver 106 of the server 101 to the external storage device 108 via the storage network 107.

サーバ101のI/O要求部102は、外部記憶装置108に対するI/Oを要求するためのI/O要求RQを発行するアプリケーション102Aと、サーバ101のキャッシュメモリを効率的に利用し、アクセス速度の遅い外部記憶装置108に対して非同期書き込みを行ない、大容量の外部記憶装置を効率的に管理し、利用するための基本的なOSのサービスであるファイルシステム102Bを含む。この際、ファイルシステム102Bは、他のサーバと同一のサーバである必要はない。   The I / O request unit 102 of the server 101 efficiently uses the application 102A that issues an I / O request RQ for requesting I / O to the external storage device 108 and the cache memory of the server 101, and accesses an access speed. A file system 102B, which is a basic OS service for performing asynchronous writing to a slow external storage device 108 and efficiently managing and using a large capacity external storage device, is included. At this time, the file system 102B does not have to be the same server as other servers.

アプリケーション102Aが発行するI/O要求RQは、I/Oの対象となる外部記憶装置108ヘの通信パスのパス情報、I/O要求RQの内容(Write要求やRead要求等)、I/Oアドレス800等を含んだI/Oを実施するためのI/O情報ADを含んだ要求コマンドであり、このI/O要求RQによって、ディスクドライバ106を制御し、ストレージネットワーク107を介して外部記憶装置108との間のI/Oを実行する。I/O要求部102は、外部記憶装置108へのI/Oを実行する際、負荷分散モジュール105に対しI/O要求RQを発行する。   The I / O request RQ issued by the application 102A includes the path information of the communication path to the external storage device 108 that is the target of I / O, the contents of the I / O request RQ (Write request, Read request, etc.), I / O This is a request command including I / O information AD for executing I / O including the address 800 and the like. The disk driver 106 is controlled by this I / O request RQ, and external storage is performed via the storage network 107. I / O with the device 108 is executed. The I / O request unit 102 issues an I / O request RQ to the load distribution module 105 when executing I / O to the external storage device 108.

ネットワークドライバ103は、ネットワーク100を介して他のサーバ101に対するデータ及び各種信号の送受信を制御する。負荷分散モジュール105から発行されるI/O要求RQに含まれるI/O情報ADの送付要求や、Wite要求の場合はWriteデータの送付要求を受け取り、他のサーバ101に対しI/O情報AD、又は、I/O情報AD及びWriteデータを送信する。この際、送信先のノード101のオペレーティングシステムが異なる場合、送信先のオペレーティングシステムに適した形式に変換して送信する。又、他のサーバ101からI/O情報ADを受信すると、I/O要求RQを発行させるためのI/O発行要求MRQを負荷分散モジュール105に対し発行する。更に、他ノード101受信するReadデータを受信し、サーバ101の記憶部に送信する。   The network driver 103 controls transmission and reception of data and various signals to other servers 101 via the network 100. A request for sending I / O information AD included in the I / O request RQ issued from the load distribution module 105, or a request for sending write data in the case of a write request is received, and the I / O information AD is sent to another server 101. Or, I / O information AD and Write data are transmitted. At this time, if the operating system of the transmission destination node 101 is different, it is converted into a format suitable for the transmission destination operating system and transmitted. When receiving I / O information AD from another server 101, it issues an I / O issue request MRQ for issuing an I / O request RQ to the load distribution module 105. Furthermore, Read data received by the other node 101 is received and transmitted to the storage unit of the server 101.

ディスクモジュール106は、負荷分散モジュールから発行されるI/O要求RQに基づき、外部記憶装置108に対しI/O処理を実行する。この際、I/O要求RQにI/O情報ADを参照し、負荷モジュールで選択された通信パスを確保し、I/Oの対象である外部記憶装置108へのWriteデータの書き込みや、Readデータの読み取りを実行する。   The disk module 106 executes I / O processing for the external storage device 108 based on the I / O request RQ issued from the load distribution module. At this time, the I / O information AD is referred to the I / O request RQ, the communication path selected by the load module is secured, the write data is written to the external storage device 108 that is the target of I / O, and Read Read data.

負荷分散モジュール105は、I/O要求部102から発行されるI/O要求RQに基づいてI/Oに使用する最適の通信パスを選択し、パス情報を付加したI/O要求RQを発行する。   The load distribution module 105 selects an optimum communication path to be used for I / O based on the I / O request RQ issued from the I / O request unit 102, and issues an I / O request RQ with path information added thereto. To do.

負荷分散105モジュールは、自サーバ101からの通信パスを選択した場合、ディスクドライバ106に、I/O要求RQを発行する。又、他のサーバ101からの通信パスを選択した場合は、ネットワークドライバ103にI/O要求RQに含まれるI/O情報ADの送付要求を発行する。この際、I/O要求RQがWrite要求の場合は、Writeデータの送付要求も併せて発行する。   When the communication path from the own server 101 is selected, the load distribution 105 module issues an I / O request RQ to the disk driver 106. When a communication path from another server 101 is selected, a request for sending the I / O information AD included in the I / O request RQ is issued to the network driver 103. At this time, if the I / O request RQ is a write request, a request for sending write data is also issued.

図2に負荷分散モジュール105の構成を示す。負荷分散モジュール105は、I/O要求受付部201、I/O完了通知受付部202、I/O完了部203、I/O発行部204を具備し、それぞれ相互に接続されている。又、I/O要求受付部201、I/O完了通知受付部202、I/O完了部203は、ネットワークドライバ103に接続され、I/O発行部204は、ディスクドライバ106に接続されている。   FIG. 2 shows the configuration of the load distribution module 105. The load distribution module 105 includes an I / O request reception unit 201, an I / O completion notification reception unit 202, an I / O completion unit 203, and an I / O issue unit 204, which are connected to each other. Further, the I / O request receiving unit 201, the I / O completion notification receiving unit 202, and the I / O completion unit 203 are connected to the network driver 103, and the I / O issuing unit 204 is connected to the disk driver 106. .

I/O要求受付部201は、他のサーバ101からI/O情報ADを受信した時にネットワークドライバ103が発行するI/O発行要求MRQを受け付けると、I/O発行要求MRQに基づいたI/O要求RQをI/O発行部204に発行する。この際、Write要求の場合はI/O要求RQをI/O発行部204に発行する。   When receiving the I / O issue request MRQ issued by the network driver 103 when receiving the I / O information AD from the other server 101, the I / O request accepting unit 201 receives the I / O issue request MRQ based on the I / O issue request MRQ. An O request RQ is issued to the I / O issuing unit 204. At this time, in the case of a Write request, an I / O request RQ is issued to the I / O issuing unit 204.

I/O完了通知受付部202は、他のサーバ101に要請しているI/Oが完了したことを示すI/O完了通知NCを、ネットワークドライバ103を経由して他のサーバ101から受け付ける。I/Oの要求がWrite要求でない場合は、I/O完了通知NCとともに、他のサーバ101が外部記憶装置108から読み取ったReadデータを受信する。I/O完了通知NCを受け付けるとI/O完了通知受付部202はI/O完了通知NCをI/O完了部203に発行する。又、他のサーバ101に要請しているI/O処理の結果がエラーであった場合は、ネットワークドライバ103を経由して他のサーバ101が発行するI/Oエラー通知NEを受け付ける。I/Oエラー通知NEを受け付けると、通信パスの変更によってI/Oエラーを回避できるかを判断し、可能である場合はI/O発行部204に対してI/O要求RQを発行する。エラー回避が不可能である場合は、ネットワークドライバ103を経由して上位のサーバ101に対しI/Oエラー通知NEを発行する。   The I / O completion notification receiving unit 202 receives an I / O completion notification NC indicating that the I / O requested to the other server 101 is completed from the other server 101 via the network driver 103. When the I / O request is not a write request, the read data read by the other server 101 from the external storage device 108 is received together with the I / O completion notification NC. When receiving the I / O completion notification NC, the I / O completion notification receiving unit 202 issues an I / O completion notification NC to the I / O completion unit 203. If the result of the I / O processing requested to the other server 101 is an error, an I / O error notification NE issued by the other server 101 is accepted via the network driver 103. When the I / O error notification NE is received, it is determined whether the I / O error can be avoided by changing the communication path. If possible, the I / O request RQ is issued to the I / O issuing unit 204. If error avoidance is impossible, an I / O error notification NE is issued to the upper server 101 via the network driver 103.

I/O完了部203は、ディスクドライバ106又はI/O完了通知受付部202からI/O完了通知NCやI/Oエラー通知NEを受け付ける。他のサーバ101から要請されたI/O要求RQに対するI/O完了通知NCをディスクドライバ106から受け付けた場合、I/O完了部203は、ネットワークドライバ103に対してI/O完了通知NCの送付要求を発行する。この際、他のサーバ101からのI/O要求RQがWrite要求の場合はReadデータの送付要求も発行する。I/O要求RQが自サーバ101からの要求の場合は、上位のI/O要求部102にI/O完了通知NCを発行する。   The I / O completion unit 203 receives the I / O completion notification NC and the I / O error notification NE from the disk driver 106 or the I / O completion notification reception unit 202. When the I / O completion notification NC for the I / O request RQ requested from the other server 101 is received from the disk driver 106, the I / O completion unit 203 notifies the network driver 103 of the I / O completion notification NC. Issue a send request. At this time, if the I / O request RQ from the other server 101 is a Write request, a request for sending Read data is also issued. When the I / O request RQ is a request from the own server 101, an I / O completion notification NC is issued to the host I / O request unit 102.

I/O完了部203はI/Oエラー通知NEを受け付けた場合、I/O要求RQが自サーバ101からの要求であれば、パスの変更によってI/Oエラーを回避できるかを判断し、回避可能である場合はI/O発行部204に対してI/O要求RQを発行する。回避が不可能である場合は上位のI/O要求部102にI/Oエラー通知NEを発行する。他のサーバ101からの要請によるI/O要求RQの場合は、ネットワークドライバ103に対してI/Oエラー通知NEの送付要求を発行する。   When receiving the I / O error notification NE, the I / O completion unit 203 determines whether the I / O error can be avoided by changing the path if the I / O request RQ is a request from the local server 101, If it can be avoided, an I / O request RQ is issued to the I / O issuing unit 204. If the avoidance is impossible, an I / O error notification NE is issued to the upper I / O request unit 102. In the case of an I / O request RQ requested by another server 101, a request for sending an I / O error notification NE is issued to the network driver 103.

I/O発行部204は上位のI/O要求部102、I/O要求受付部201、I/O完了通知受付部202、I/O完了部203からのI/O要求RQにより、最適な通信パスを選択し、選択したパス情報を含むI/O要求RQを発行する。選択した通信パスが自サーバ101からの通信パスである場合は、ディスクドライバ106にI/O要求RQを発行する。この際、I/O要求RQがWrite要求の場合はWriteデータも併せてディスクドライバ106に送信する。   The I / O issuing unit 204 is optimized by the I / O request RQ from the host I / O request unit 102, the I / O request receiving unit 201, the I / O completion notification receiving unit 202, and the I / O completion unit 203. A communication path is selected, and an I / O request RQ including the selected path information is issued. If the selected communication path is a communication path from the own server 101, an I / O request RQ is issued to the disk driver 106. At this time, if the I / O request RQ is a write request, write data is also transmitted to the disk driver 106.

又、選択した通信パスが他のサーバ101からの通信パスである場合は、ネットワークドライバ103に対して、選択した通信パスを有するサーバ101にI/O要求RQを発行させるため、I/O要求RQに含まれるI/O情報ADの送付要求を発行する。この際、I/O要求RQがWrite要求の場合はWriteデータの送付要求も併せて発行する。   If the selected communication path is a communication path from another server 101, the network driver 103 causes the server 101 having the selected communication path to issue an I / O request RQ. A request for sending the I / O information AD included in the RQ is issued. At this time, if the I / O request RQ is a write request, a request for sending write data is also issued.

又、他のサーバ101からI/O要求RQの要請を受け付けた場合において、自サーバ101から選択可能な通信パスがない時は、I/Oエラー通知NEの送付要求をネットワークドライバ103に発行する。自サーバ101におけるI/O要求RQの場合においては、上位のI/O要求部102にI/Oエラー通知NEを発行する。   When a request for an I / O request RQ is received from another server 101 and there is no selectable communication path from the own server 101, a request for sending an I / O error notification NE is issued to the network driver 103. . In the case of an I / O request RQ in the own server 101, an I / O error notification NE is issued to the upper I / O request unit 102.

I/O発行部204における通信パスの選択は、I/Oアドレス情報800、マッピングテーブル801、パスグループテーブル802及びパス情報803を用いて行なう。図8にI/Oアドレス情報800、マッピングテーブル801、パスグループテーブル802、パス情報803の概念図を示す。   The communication path is selected by the I / O issuing unit 204 using the I / O address information 800, the mapping table 801, the path group table 802, and the path information 803. FIG. 8 shows a conceptual diagram of the I / O address information 800, the mapping table 801, the path group table 802, and the path information 803.

マッピングテーブル802は、どのサーバ101においてもI/Oアドレス情報800をキーとすることにより、一意にパスグループテーブル802を特定する。パスグループテーブル802は同一外部記憶装置108に対する通信パスの集まりであり、同一外部記憶装置108に接続する通信パスである。ネットワーク100によってその通信パスを有するサーバ101と通信が可能であれば、異なるサーバ101との通信パスであっても、登録可能である。パス情報803にはI/O発行要求MRQに必要な情報のほかに、通信パスの経路情報、通信パスを有するサーバ101の情報、そのサーバ101までのネットワーク100の情報等を有する。   The mapping table 802 uniquely specifies the path group table 802 by using the I / O address information 800 as a key in any server 101. The path group table 802 is a collection of communication paths to the same external storage device 108 and is a communication path connected to the same external storage device 108. If communication with the server 101 having the communication path is possible via the network 100, registration is possible even with a communication path with a different server 101. In addition to the information necessary for the I / O issuance request MRQ, the path information 803 includes communication path route information, information on the server 101 having the communication path, information on the network 100 to the server 101, and the like.

通信パスの選択処理では、I/Oの対象となる外部記憶装置108に対応するパスグループテーブル802とパス情報803を参照して通信パスを選択する。通信パスを選択するパス選択方法については、最も負荷が小さい通信パスを選択する、ラウンドロビンで通信パスを選択する等、使用するシステムにおいて、最適な方法で通信パスを選択する。   In the communication path selection process, a communication path is selected with reference to the path group table 802 and path information 803 corresponding to the external storage device 108 that is the target of I / O. As for a path selection method for selecting a communication path, a communication path is selected by an optimum method in a system to be used, such as selecting a communication path with the smallest load or selecting a communication path by round robin.

ディスクドライバ106は、I/O発行部204で発行されるI/O要求RQに含まれるパス情報803に基づき、負荷分散モジュール105で選択された通信パスを確保し、ストレージネットワーク107を経由して外部記憶装置108にアクセスし、データのI/O処理を実行する。I/O要求RQがWrite要求の場合、I/O要求RQに含まれるI/O情報ADを参照し、I/Oの対象となる外部記憶装置108のI/Oアドレス上にWriteデータを書き込み、Write要求以外の要求である場合、要求元サーバ101のI/Oアドレス上のデータをReadデータとして抽出する。I/O要求RQが他のサーバ101から要請である場合、ディスクドライバ106は、抽出したReadデータの送付要求をネットワークドライバ104に発行する。   The disk driver 106 secures the communication path selected by the load distribution module 105 based on the path information 803 included in the I / O request RQ issued by the I / O issuing unit 204, and passes through the storage network 107. The external storage device 108 is accessed and data I / O processing is executed. When the I / O request RQ is a write request, the I / O information AD included in the I / O request RQ is referred to, and write data is written on the I / O address of the external storage device 108 that is the target of the I / O. In the case of a request other than the Write request, data on the I / O address of the request source server 101 is extracted as Read data. When the I / O request RQ is a request from another server 101, the disk driver 106 issues a request for sending the extracted Read data to the network driver 104.

ディスクドライバ106はI/O処理が完了すると、I/O完了通知NCをI/O完了部203に発行する。I/O処理が失敗した場合はI/Oエラー通知NEを発行する。I/Oエラー通知NEには、通信パスの障害等のエラー内容が含まれており、I/O完了部は、これを参照してI/Oエラーを回避可能かどうか判断する。   When the I / O processing is completed, the disk driver 106 issues an I / O completion notification NC to the I / O completion unit 203. When the I / O processing fails, an I / O error notification NE is issued. The I / O error notification NE includes error contents such as a communication path failure, and the I / O completion unit refers to this to determine whether the I / O error can be avoided.

図3から図7を参照して、本発明による通信パス冗長化システムの動作を説明する。   The operation of the communication path redundancy system according to the present invention will be described with reference to FIGS.

図3に、I/O発行部204の動作の流れ図を示す。I/O発行部204はI/O要求RQを待ちうけ(ステップ300)、I/O要求RQを受け付けるとI/Oアドレス情報800、マッピングテーブル801を参照して、パスグループテーブル802を選択する(ステップ301)。続いて、通信パスを選択するためのパス選択処理を行なう(ステップ302)。   FIG. 3 shows a flowchart of the operation of the I / O issuing unit 204. The I / O issuing unit 204 waits for the I / O request RQ (step 300), and upon receiving the I / O request RQ, refers to the I / O address information 800 and the mapping table 801 and selects the path group table 802. (Step 301). Subsequently, a path selection process for selecting a communication path is performed (step 302).

I/O発行部204は、ステップ302のパス選択処理において通信パスを選択すると、選択した通信パスのパス情報803を選択した通信パスとして更新する(ステップ304)。選択した通信パスが自サーバ101からの通信パスであれば、ディスクドライバ106に対しパス情報803を含むI/O要求RQを発行し、ステップ300に戻る。(ステップ306)。   When the communication path is selected in the path selection process in step 302, the I / O issuing unit 204 updates the path information 803 of the selected communication path as the selected communication path (step 304). If the selected communication path is a communication path from the own server 101, an I / O request RQ including path information 803 is issued to the disk driver 106, and the process returns to step 300. (Step 306).

選択した通信パスが他サーバ101からの通信パスであれば、そのI/O要求RQがWrite要求であるかを確認し(ステップ307)、Write要求である場合、選択した他サーバ101がI/O発行要求MRQを発行するために使用するI/O情報AD及びWriteデータの送付要求をネットワークドライバ103に発行し、ステップ300に戻る。(ステップ308)。又、Write要求でない場合、選択した他サーバ101がI/O発行要求MRQを発行するためのI/O情報ADの送付要求をネットワークドライバ103に発行し、ステップ300に戻る。(ステップ309)。   If the selected communication path is a communication path from another server 101, it is confirmed whether the I / O request RQ is a write request (step 307). If the selected communication path is a write request, the selected other server 101 is connected to the I / O request RQ. A request for sending I / O information AD and Write data used for issuing the O issue request MRQ is issued to the network driver 103, and the process returns to Step 300. (Step 308). If the request is not a write request, the selected other server 101 issues a request to send the I / O information AD for issuing the I / O issue request MRQ to the network driver 103 and returns to step 300. (Step 309).

パス選択処理において通信パスを選択できない場合において、I/O発行部204が受け付けたI/O要求RQが他のサーバ101から要請された要求であれば、I/Oエラー通知NEの送付要求をネットワークドライバ103に発行し、ステップ300に戻る。I/O要求RQが自サーバ101からの要求であれば、上位のI/O要求部102にI/Oエラー通知NEを発行し、ステップ300に戻る。   If the communication path cannot be selected in the path selection process and the I / O request RQ accepted by the I / O issuing unit 204 is a request requested from another server 101, a request for sending an I / O error notification NE is sent. Issue to the network driver 103 and return to step 300. If the I / O request RQ is a request from the own server 101, the I / O error notification NE is issued to the upper I / O request unit 102, and the process returns to Step 300.

ステップ302における、パス選択処理の動作の詳細を図4に示す。パス選択処理の際、I/O発行部204は、受信するI/O要求RQが他のサーバ101からの要請かどうかを確認し(ステップ400)、他のサーバ101からの要請によるI/O要求RQである場合、選択したパスグループ802及びパス情報803を参照して自サーバ101からの通信パスを選択する(ステップ401)。この際、全ての通信パスが使用されている、もしくは、障害等で選択可能な通信パスがない場合は、I/Oエラー通知NEの送付要求をネットワークドライバ103に発行する(ステップ405)。ステップ400において、I/O要求RQが自サーバ101からの要求である場合、選択したパスグループ802及びパス情報803を参照して、通信パスを選択する(ステップ402)。この際、全ての通信パスが使用されている、もしくは、障害等で選択可能な通信パスがない場合は、I/Oエラー通知NEを上位のI/O要求部102に送信する(ステップ404)。   Details of the operation of the path selection process in step 302 are shown in FIG. During the path selection process, the I / O issuing unit 204 confirms whether or not the received I / O request RQ is a request from another server 101 (step 400), and the I / O according to the request from the other server 101. If it is a request RQ, the communication path from the local server 101 is selected with reference to the selected path group 802 and path information 803 (step 401). At this time, if all communication paths are used or there is no communication path that can be selected due to a failure or the like, a request for sending an I / O error notification NE is issued to the network driver 103 (step 405). In step 400, when the I / O request RQ is a request from the own server 101, a communication path is selected with reference to the selected path group 802 and path information 803 (step 402). At this time, if all communication paths are used or there is no communication path that can be selected due to a failure or the like, an I / O error notification NE is transmitted to the upper I / O request unit 102 (step 404). .

図5にI/O要求受付部201の動作の流れ図を示す。I/O要求受付部201は、他のサーバ101からのI/O発行要求MRQを待ち受ける(ステップ500)。他のサーバ101から受信されるI/O情報ADを基にネットワークドライバ103が発行するI/O発行要求MRQを受け付けると、I/O要求受付部201は、そのI/O発行要求MRQに基づいたI/O要求RQをI/O発行部に発行する(ステップ501)。   FIG. 5 shows a flowchart of the operation of the I / O request accepting unit 201. The I / O request accepting unit 201 waits for an I / O issue request MRQ from another server 101 (step 500). When receiving the I / O issue request MRQ issued by the network driver 103 based on the I / O information AD received from the other server 101, the I / O request accepting unit 201 is based on the I / O issue request MRQ. The I / O request RQ is issued to the I / O issuing unit (step 501).

図6に、I/O完了部203の動作の流れ図を示す。I/O完了部203は、I/O完了通知NCを待ち受け(ステップ600)、I/O完了通知NCを受け付けると、I/Oに使用した通信パスのパス情報803を更新し、選択を解除する(ステップ601)。次にI/Oの対象である外部記憶装置108ヘのI/Oが成功したかを確認し(ステップ602)、I/Oが成功した場合、そのI/O要求RQが自サーバ101からの要求である時は、上位のI/O要求部102に対しI/O完了通知NCを発行する。一方、そのI/O要求RQが他のサーバ101からの要請による要求である時、I/OによってWrite動作が完了した場合は、I/O完了通知NCの送付要求をネットワークドライバ103へ発行する(ステップ606)。又、Write動作が完了していない場合は、I/O完了通知NCとReadデータの送付要求をネットワークドライバ103へ発行する(ステップ607)。   FIG. 6 shows a flowchart of the operation of the I / O completion unit 203. The I / O completion unit 203 waits for the I / O completion notification NC (step 600). When the I / O completion notification NC is received, the path information 803 of the communication path used for I / O is updated and the selection is canceled. (Step 601). Next, it is confirmed whether or not the I / O to the external storage device 108 that is the target of I / O is successful (step 602). If the I / O is successful, the I / O request RQ is received from the local server 101. When the request is a request, an I / O completion notification NC is issued to the upper I / O request unit 102. On the other hand, when the I / O request RQ is a request based on a request from another server 101, if the write operation is completed by I / O, a request for sending an I / O completion notification NC is issued to the network driver 103. (Step 606). If the write operation is not completed, an I / O completion notification NC and a read data sending request are issued to the network driver 103 (step 607).

I/O完了部203は、ステップ602においてI/Oが成功しない場合、受信するI/Oエラー通知NEを参照してエラー内容を確認する(ステップ608)。確認したI/Oエラーがパス障害によるエラーでない場合、他サーバ101からの要請によるI/O要求RQであればI/Oエラー通知NEの送付要求をネットワークドライバ103に発行し(ステップ610)、自サーバ301からのI/O要求RQであれば、上位のI/O要求部102にI/Oエラー通知NEを発行する(ステップ612)。ステップ608においてI/Oエラーがパス障害によるエラーであり、パスの変更によりエラーの回避が可能と判断する場合は、I/O発行部204にI/O要求RQを再発行する(ステップ611)。   If the I / O is not successful in step 602, the I / O completion unit 203 refers to the received I / O error notification NE and confirms the error content (step 608). If the confirmed I / O error is not an error due to a path failure, if the I / O request RQ is a request from another server 101, a request for sending an I / O error notification NE is issued to the network driver 103 (step 610). If it is an I / O request RQ from the own server 301, an I / O error notification NE is issued to the upper I / O request unit 102 (step 612). If it is determined in step 608 that the I / O error is an error due to a path failure and the error can be avoided by changing the path, the I / O request RQ is reissued to the I / O issuing unit 204 (step 611). .

図7に、I/O完了通知受付部202の動作の流れ図を示す。I/O完了通知受付部202は、他のサーバ101から送られるI/O処理が完了したことを告げるI/O完了通知NC又はI/Oエラー通知NEを待ち受け(ステップ700)、他のサーバ101からのI/O完了通知NC又はI/Oエラー通知NEを受け付けると、そのI/O完了通知NC又はI/Oエラー通知NEを参照し、I/Oが成功したか否かを確認する(ステップ701)。I/Oエラー通知NEを受信すると、I/Oエラー通知NEを参照して障害内容を確認する(ステップ702)。I/Oエラーがパス障害によるエラー又は通信パスの変更によって障害を回避できる場合、I/Oに使用した通信パスのパス情報803を更新し、選択を解除する(ステップ704)。次に、新たな通信パスを選択するため、I/O発行部204にI/O要求RQを発行する(ステップ705)。ステップ702において、I/Oエラーがパス障害によるエラー場合は、上位のI/O要求部102にI/Oエラー通知NEを発行する(ステップ706)。   FIG. 7 shows a flowchart of the operation of the I / O completion notification accepting unit 202. The I / O completion notification reception unit 202 waits for an I / O completion notification NC or an I / O error notification NE to notify that the I / O processing sent from the other server 101 is completed (step 700), and the other server Upon receipt of the I / O completion notification NC or I / O error notification NE from 101, the I / O completion notification NC or I / O error notification NE is referenced to check whether the I / O has succeeded. (Step 701). When the I / O error notification NE is received, the failure content is confirmed with reference to the I / O error notification NE (step 702). If the I / O error can be avoided by an error due to a path failure or a change in the communication path, the path information 803 of the communication path used for I / O is updated and the selection is canceled (step 704). Next, in order to select a new communication path, an I / O request RQ is issued to the I / O issuing unit 204 (step 705). In step 702, if the I / O error is an error due to a path failure, an I / O error notification NE is issued to the host I / O request unit 102 (step 706).

図3から図8を参照して、本発明による通信パス冗長化システムのI/O動作を説明する。本実施の形態においては、ネットワーク100を介し相互に接続されたサーバA101−1とサーバB101−2、及び、ストレージネットワーク107を介して、それぞれのサーバ101と共有接続される外部記憶装置108−1・・108−nを備える通信パス冗長化システムについて説明する。この際、外部記憶装置108−1に対してI/Oを要求するサーバ101をサーバA101−1、外部記憶装置108−1に対する通信パスを冗長化するサーバ101をサーバB101−2とする。   The I / O operation of the communication path redundancy system according to the present invention will be described with reference to FIGS. In the present embodiment, server A 101-1 and server B 101-2 connected to each other via network 100, and external storage device 108-1 connected to each server 101 via storage network 107 are shared. A communication path redundancy system including 108-n will be described. At this time, the server 101 that requests I / O to the external storage device 108-1 is the server A 101-1, and the server 101 that makes the communication path redundant to the external storage device 108-1 is the server B 101-2.

サーバA101−1から外部記憶装置108−1へのI/O要求RQにおいて、サーバAからの通信パスを選択してI/Oを実行する場合について説明する。   A case where a communication path from the server A is selected and I / O is executed in the I / O request RQ from the server A 101-1 to the external storage device 108-1 will be described.

サーバA101−1のI/O要求部102−1は、外部記憶装置108−1に対するI/O要求RQを負荷分散モジュール105−1のI/O発行部204−1に発行する。I/O発行部204−1では、I/O要求RQに含まれるI/O情報ADに対応するI/Oアドレス情報800とマッピングテーブル801を参照して、I/Oの対象となる外部記憶装置108−1に対応するパスグループ802−1を選択する(ステップ301)。   The I / O request unit 102-1 of the server A 101-1 issues an I / O request RQ for the external storage device 108-1 to the I / O issue unit 204-1 of the load distribution module 105-1. The I / O issuing unit 204-1 refers to the I / O address information 800 corresponding to the I / O information AD included in the I / O request RQ and the mapping table 801 and refers to the external storage that is the target of I / O. The path group 802-1 corresponding to the device 108-1 is selected (step 301).

パス選択処理(ステップ302)において、I/O発行部204−1は、ステップ301で選択したパスグループテーブル802−1のパス情報803を参照し、サーバA101−1からの通信パス(パス情報803−1に対応)を選択する(ステップ400からステップ404)。この際、選択可能で且つ最適な通信パスが、サーバA101−1からの通信パス(パス情報803−1に対応)とする。全ての通信パスが使用中、又は、障害の発生等で使用可能な通信パスがない場合、上位のI/O要求部102−1にI/Oエラー通知NEを発行する(ステップ406)。   In the path selection process (step 302), the I / O issuing unit 204-1 refers to the path information 803 of the path group table 802-1 selected in step 301, and the communication path (path information 803) from the server A 101-1. -1) is selected (from step 400 to step 404). At this time, the optimum communication path that can be selected is a communication path from the server A 101-1 (corresponding to the path information 803-1). If all communication paths are in use or there is no communication path that can be used due to the occurrence of a failure or the like, an I / O error notification NE is issued to the higher-level I / O request unit 102-1 (step 406).

通信パスを選択した場合、I/O発行部204−1は、選択した通信パスのパス情報をパス情報803−1に更新し、ディスクドライバ106−1にI/O要求RQを発行する(ステップ304からステップ306)。ディスクドライバ106−1はI/O要求RQのパス情報803−1に基づいた通信パスを使用し、I/O情報ADに含まれるI/O情報ADを参照して外部記憶装置108−1ヘのWriteデータ書き込みや、外部記憶装置108−1からのReadデータの読み込み等のI/O処理を実行する。ディスクドライバ106−1は、I/O処理が完了すると、I/O完了部203−1にI/O完了通知NCを発行する。   When the communication path is selected, the I / O issuing unit 204-1 updates the path information of the selected communication path to the path information 803-1, and issues an I / O request RQ to the disk driver 106-1 (Step S1). 304 to step 306). The disk driver 106-1 uses a communication path based on the path information 803-1 of the I / O request RQ and refers to the I / O information AD included in the I / O information AD to the external storage device 108-1. I / O processing such as writing the write data and reading the read data from the external storage device 108-1 is executed. When the I / O processing is completed, the disk driver 106-1 issues an I / O completion notification NC to the I / O completion unit 203-1.

I/O完了部203−1は、I/O完了通知NCに基づきI/Oに使用した通信パスのパス情報803−1を更新する(ステップ600、601)。I/O処理が成功であると、上位のI/O要求部102−1にI/O完了通知NCを発行する(ステップ602からステップ604)。   The I / O completion unit 203-1 updates the path information 803-1 of the communication path used for I / O based on the I / O completion notification NC (steps 600 and 601). If the I / O processing is successful, an I / O completion notification NC is issued to the upper I / O request unit 102-1 (from step 602 to step 604).

以上のように、サーバA101−1から外部記憶装置108−1に対してI/O要求RQを実施する際、サーバA101−1からの通信パスを選択すると、サーバA101−1は、サーバA101−1からストレージネットワーク107を経由して外部記憶装置108−1まで接続する通信パスを確保してI/Oを実行することができる。   As described above, when performing the I / O request RQ from the server A 101-1 to the external storage device 108-1, if the communication path from the server A 101-1 is selected, the server A 101-1 A communication path connecting from 1 to the external storage device 108-1 via the storage network 107 can be secured and I / O can be executed.

サーバA101−1から外部記憶装置108−1へのI/Oにおいて、サーバB101−2からの通信パスを選択してI/Oを実行する場合について説明する。   In the I / O from the server A 101-1 to the external storage device 108-1, a case where the communication path from the server B 101-2 is selected and the I / O is executed will be described.

サーバA101−1のI/O要求部102−1は、外部記憶装置108−1に対するI/O要求RQを負荷分散モジュール105−1のI/O発行部204−1に発行する。I/O発行部204−1では、I/O要求RQに含まれるI/O情報ADに対応するI/Oアドレス情報800とマッピングテーブル801を参照して、I/Oの対象となる外部記憶装置108−1に対応するパスグループ802−1を選択する(ステップ301)。   The I / O request unit 102-1 of the server A 101-1 issues an I / O request RQ for the external storage device 108-1 to the I / O issue unit 204-1 of the load distribution module 105-1. The I / O issuing unit 204-1 refers to the I / O address information 800 corresponding to the I / O information AD included in the I / O request RQ and the mapping table 801 and refers to the external storage that is the target of I / O. The path group 802-1 corresponding to the device 108-1 is selected (step 301).

パス選択処理(ステップ302)において、I/O発行部204−1は、ステップ301で選択したパスグループテーブル802−1のパス情報803を参照し、サーバB101−2からの通信パス(パス情報803−2に対応)を選択する(ステップ400からステップ404)。この際、選択可能で且つ最適な通信パスが、サーバB101−2からの通信パス(パス情報803−2に対応)とする。   In the path selection process (step 302), the I / O issuing unit 204-1 refers to the path information 803 of the path group table 802-1 selected in step 301, and the communication path (path information 803) from the server B 101-2. -2) is selected (from step 400 to step 404). At this time, the optimum communication path that can be selected is the communication path from the server B 101-2 (corresponding to the path information 803-2).

I/O発行部204−1は、選択した通信パスのパス情報をパス情報803−2に更新する(ステップ304)。I/O要求RQがWrite要求の場合は、ネットワークドライバ103−1に対し、サーバB101−2へI/O要求RQを要請するため、I/O情報AD及びWriteデータの送付要求を発行する(ステップ305からステップ308)。I/O要求RQがWrite要求でない場合は、ネットワークドライバ103−1にサーバBへI/O要求RQを要請するため、I/O情報ADの送付要求を発行する(ステップ309)。   The I / O issuing unit 204-1 updates the path information of the selected communication path to the path information 803-2 (step 304). When the I / O request RQ is a write request, a request for sending the I / O information AD and the write data is issued to the network driver 103-1 in order to request the server B 101-2 for the I / O request RQ ( Step 305 to Step 308). If the I / O request RQ is not a write request, a request for sending I / O information AD is issued to request the network driver 103-1 for the I / O request RQ to the server B (step 309).

ネットワークドライバ103−1は、送信先のオペレーティングシステムが異なる場合、送信先のオペレーティングシステムに適した形式にI/O情報ADを変換し、ネットワーク100を介してサーバB101−2に送信する。この際、I/O要求RQがWrite要求の場合はWriteデータとともにサーバB101−2に送信する。   When the transmission destination operating system is different, the network driver 103-1 converts the I / O information AD into a format suitable for the transmission destination operating system, and transmits it to the server B 101-2 via the network 100. At this time, if the I / O request RQ is a write request, it is transmitted to the server B 101-2 together with the write data.

サーバB101−2のネットワークドライバ103−2は、サーバA101−1から受信するI/O情報ADに基づいたI/O発行要求MRQをI/O要求受付部201−2に発行する。この時、I/O要求RQがWrite要求の場合はWriteデータとともに送信する。   The network driver 103-2 of the server B 101-2 issues an I / O issue request MRQ based on the I / O information AD received from the server A 101-1 to the I / O request reception unit 201-2. At this time, if the I / O request RQ is a write request, it is transmitted together with the write data.

I/O要求受付部201−2は、ネットワークドライバ103−2から受信したI/O発行要求MRQに基づいたI/O要求RQを、I/O発行部204−2に発行する(ステップ501)。I/O発行部204−2では、I/O要求RQのアドレス情報800、マッピングテーブル801を参照して、I/Oの対象となる外部記憶装置108−1に対応するパスグループ802−1を選択する(ステップ301)。   The I / O request reception unit 201-2 issues an I / O request RQ based on the I / O issue request MRQ received from the network driver 103-2 to the I / O issue unit 204-2 (step 501). . The I / O issuing unit 204-2 refers to the address information 800 of the I / O request RQ and the mapping table 801, and creates a path group 802-1 corresponding to the external storage device 108-1 that is the target of I / O. Select (step 301).

パス選択処理(ステップ302)において、I/O発行部204−2は、ステップ301で選択したパスグループテーブル802−1のパス情報803を参照し、サーバB101−2からの通信パス(パス情報803−2に対応)を選択する(ステップ400からステップ404)。この際、選択可能で且つ最適な通信パスが、サーバB101−2からの通信パス(パス情報803−2に対応)とする。   In the path selection process (step 302), the I / O issuing unit 204-2 refers to the path information 803 of the path group table 802-1 selected in step 301, and the communication path (path information 803) from the server B 101-2. -2) is selected (from step 400 to step 404). At this time, the optimum communication path that can be selected is the communication path from the server B 101-2 (corresponding to the path information 803-2).

I/O発行部204−2は、選択した通信パスのパス情報をパス情報803−2に更新し、ディスクドライバ106−2に対しI/O要求RQを発行する(ステップ304からステップ306)。ディスクドライバ106−2はI/O要求RQのパス情報803−2に基づいた通信パスを使用し、I/O情報ADを参照して外部記憶装置108−1ヘのWriteデータ書き込みや、外部記憶装置108−1からのReadデータの読み込み等のI/O処理を実行する。ディスクドライバ106−2は、I/O処理が完了すると、I/O完了部203−2にI/O完了通知NCを発行する。   The I / O issuing unit 204-2 updates the path information of the selected communication path to the path information 803-2, and issues an I / O request RQ to the disk driver 106-2 (from step 304 to step 306). The disk driver 106-2 uses a communication path based on the path information 803-2 of the I / O request RQ, refers to the I / O information AD, and writes the write data to the external storage device 108-1, or the external storage I / O processing such as reading of Read data from the device 108-1 is executed. When the I / O processing is completed, the disk driver 106-2 issues an I / O completion notification NC to the I / O completion unit 203-2.

I/O完了部203−2は、I/O完了通知NCに基づきI/Oに使用した通信パスのパス情報803−2を更新する(ステップ600、601)。実行したI/O要求RQがWrite要求である場合は、ネットワークドライバ103−2にサーバA101−1へのI/O完了通知NCの送付要求を発行する(ステップ602からステップ606)。Write要求でない場合は、ネットワークドライバ103−2に対し、サーバA101−1へのI/O完了通知NC及びReadデータの送付要求を発行する(ステップ602からステップ607)。   The I / O completion unit 203-2 updates the path information 803-2 of the communication path used for I / O based on the I / O completion notification NC (steps 600 and 601). If the executed I / O request RQ is a write request, a request for sending an I / O completion notification NC to the server A 101-1 is issued to the network driver 103-2 (steps 602 to 606). If it is not a write request, an I / O completion notification NC and read data sending request to the server A 101-1 is issued to the network driver 103-2 (steps 602 to 607).

ネットワークドライバ103−2は、ネットワーク経由でサーバA101−1のネットワークドライバ103−1へ、I/O完了通知NCもしくは、I/O完了通知NCとReadデータを送信する。ネットワークドライバ103−1は、受信するI/O完了通知NCもしくは、I/O完了通知NCとReadデータをI/O完了通知受付部202−1に送信する。   The network driver 103-2 transmits the I / O completion notification NC or the I / O completion notification NC and Read data to the network driver 103-1 of the server A 101-1 via the network. The network driver 103-1 transmits the received I / O completion notification NC or the I / O completion notification NC and Read data to the I / O completion notification reception unit 202-1.

I/O完了通知受付部202−1はI/O完了通知NCを受け取ると、I/O完了部203−1にI/O完了通知NCを発行し(ステップ700からステップ703)、使用した通信パスのパス情報803−2を更新する(ステップ600、601)。I/O処理が成功であると、上位のI/O要求部102−1にI/O完了通知NCを発行する(ステップ602からステップ604)。   Upon receiving the I / O completion notification NC, the I / O completion notification reception unit 202-1 issues an I / O completion notification NC to the I / O completion unit 203-1 (from step 700 to step 703), and used communication. The path information 803-2 of the path is updated (steps 600 and 601). If the I / O processing is successful, an I / O completion notification NC is issued to the upper I / O request unit 102-1 (from step 602 to step 604).

以上のように、サーバA101−1から外部記憶装置108−1に対してI/O要求を実施する際、最適な通信パスが他のサーバB101−2からの通信パスである時、サーバA101−1は、ネットワーク100を通じてサーバB101−2とI/O要求のために必要な情報をやり取りし、サーバB101−2に通信パスを選択及び確保させ、I/Oを実行させることができる。このため、サーバA101−1から外部記憶装置108−1へ通信パスを確保できない場合でも外部記憶装置108−1に共通接続されているサーバ101があれば、ネットワーク100を介して通信パスを冗長構成することができる。   As described above, when the server A 101-1 performs an I / O request to the external storage device 108-1, when the optimum communication path is a communication path from another server B 101-2, the server A 101- 1 exchanges information necessary for an I / O request with the server B 101-2 through the network 100, allows the server B 101-2 to select and secure a communication path, and execute I / O. Therefore, even if a communication path cannot be secured from the server A 101-1 to the external storage device 108-1, if there is the server 101 commonly connected to the external storage device 108-1, the communication path is configured redundantly via the network 100. can do.

サーバA101−1から外部記憶装置108−1へのI/Oにおいて、サーバA101−1からの通信パスを選択してI/Oを実行する際、パス障害によってI/Oエラーが返され、サーバA101−1の通信パスを再選択してI/O要求RQを再発行した場合について説明する。   In the I / O from the server A 101-1 to the external storage device 108-1, when executing the I / O by selecting the communication path from the server A 101-1, an I / O error is returned due to a path failure, and the server A case where the I / O request RQ is reissued by reselecting the communication path A101-1 will be described.

サーバA101−1のI/O要求部102−1は、外部記憶装置108−1に対するI/O要求RQを負荷分散モジュール105−1のI/O発行部204−1に発行する。I/O発行部204−1では、I/O要求RQに含まれるI/O情報ADに対応するI/Oアドレス情報800とマッピングテーブル801を参照して、I/Oの対象となる外部記憶装置108−1に対応するパスグループ802−1を選択する(ステップ301)。   The I / O request unit 102-1 of the server A 101-1 issues an I / O request RQ for the external storage device 108-1 to the I / O issue unit 204-1 of the load distribution module 105-1. The I / O issuing unit 204-1 refers to the I / O address information 800 corresponding to the I / O information AD included in the I / O request RQ and the mapping table 801 and refers to the external storage that is the target of I / O. The path group 802-1 corresponding to the device 108-1 is selected (step 301).

パス選択処理(ステップ302)において、I/O発行部204−1は、ステップ301で選択したパスグループテーブル802−1のパス情報803を参照し、サーバA101−1からの通信パス(パス情報803−1に対応)を選択する(ステップ400からステップ404)。この際、選択可能で且つ最適な通信パスが、サーバA101−1からの通信パス(パス情報803−1に対応)とする。   In the path selection process (step 302), the I / O issuing unit 204-1 refers to the path information 803 of the path group table 802-1 selected in step 301, and the communication path (path information 803) from the server A 101-1. -1) is selected (from step 400 to step 404). At this time, the optimum communication path that can be selected is a communication path from the server A 101-1 (corresponding to the path information 803-1).

I/O発行部204−1は、選択した通信パスのパス情報をパス情報803−1に更新し、ディスクドライバ106−1に対しI/O要求RQを発行する(ステップ304からステップ306)。ディスクドライバ106−1はI/O要求RQのパス情報803−1に基づいた通信パスを使用し、I/O情報ADを参照して外部記憶装置108−1ヘのWriteデータ書き込みや、外部記憶装置108−1からのReadデータの読み込み等のI/O処理を実行する。この際、パス障害等によりI/O処理ができない場合、ディスクドライバ106−1は、I/Oエラー通知NEをI/O完了部203−1に発行する。   The I / O issuing unit 204-1 updates the path information of the selected communication path to the path information 803-1, and issues an I / O request RQ to the disk driver 106-1 (from step 304 to step 306). The disk driver 106-1 uses a communication path based on the path information 803-1 of the I / O request RQ, refers to the I / O information AD, writes Write data to the external storage device 108-1, and stores the external data. I / O processing such as reading of Read data from the device 108-1 is executed. At this time, if the I / O processing cannot be performed due to a path failure or the like, the disk driver 106-1 issues an I / O error notification NE to the I / O completion unit 203-1.

I/O完了部203−1は、I/Oエラー通知NEからエラー内容を分析し、パス障害によるI/Oエラーである場合、I/O発行部204−1にI/O要求RQを再発行する(ステップ608、611)。又、パス障害以外の理由によるI/Oエラーの場合、上位のI/O要求部102−1にI/Oエラー通知NEを発行する(ステップ608からステップ612)。   The I / O completion unit 203-1 analyzes the error content from the I / O error notification NE, and if an I / O error due to a path failure, retransmits the I / O request RQ to the I / O issue unit 204-1. Issue (steps 608 and 611). In the case of an I / O error due to a reason other than a path failure, an I / O error notification NE is issued to the upper I / O request unit 102-1 (from step 608 to step 612).

ステップ611において、I/O完了部203−1からI/O要求RQを再発行されたI/O発行部204−1は、受信するI/O情報ADに対応するI/Oアドレス情報800とマッピングテーブル801を参照して、I/Oの対象となる外部記憶装置108−1に対応するパスグループ802−1を選択する(ステップ301)。   In step 611, the I / O issuing unit 204-1 to which the I / O request RQ has been reissued from the I / O completion unit 203-1, the I / O address information 800 corresponding to the received I / O information AD, and Referring to the mapping table 801, the path group 802-1 corresponding to the external storage device 108-1 that is the target of I / O is selected (step 301).

パス選択処理(ステップ302)において、I/O発行部204−1は、ステップ301で選択したパスグループテーブル802−1のパス情報803を参照し、サーバA101−1からの通信パス(パス情報803−3に対応)を選択する(ステップ400からステップ404)。この際、パス情報803−1が変更されたため、選択可能で且つ最適な通信パスが、サーバA101−1からの通信パス(パス情報803−3に対応)と変更されたとする。   In the path selection process (step 302), the I / O issuing unit 204-1 refers to the path information 803 of the path group table 802-1 selected in step 301, and the communication path (path information 803) from the server A 101-1. -3) is selected (from step 400 to step 404). At this time, since the path information 803-1 is changed, the selectable and optimum communication path is changed to the communication path from the server A 1011-1 (corresponding to the path information 803-3).

I/O発行部204−1は、選択した通信パスのパス情報をパス情報803−3に更新し、ディスクドライバ106−1に対しI/O要求RQを発行するとともにI/O情報ADを送信する(ステップ304からステップ306)。ディスクドライバ106−1はI/O要求RQのパス情報803−3に基づいた通信パスを使用し、I/O情報ADを参照して外部記憶装置108−1ヘのWriteデータ書き込みや外部記憶装置108−1からのReadデータの読み込み等のI/O処理を実行する。ディスクドライバ106−1は、I/O処理が完了すると、I/O完了部203−1にI/O完了通知NCを発行する。   The I / O issuing unit 204-1 updates the path information of the selected communication path to the path information 803-3, issues an I / O request RQ to the disk driver 106-1, and transmits the I / O information AD. (Step 304 to Step 306). The disk driver 106-1 uses a communication path based on the path information 803-3 of the I / O request RQ, refers to the I / O information AD, and writes the write data to the external storage device 108-1 or the external storage device. I / O processing such as reading of Read data from 108-1 is executed. When the I / O processing is completed, the disk driver 106-1 issues an I / O completion notification NC to the I / O completion unit 203-1.

I/O完了部203−1は、I/O完了通知NCに基づきI/Oに使用した通信パスのパス情報803−3を更新する(ステップ600、601)。I/O処理が成功であると、上位のI/O要求部102−1にI/O完了通知NCを発行する(ステップ602からステップ604)。   The I / O completion unit 203-1 updates the path information 803-3 of the communication path used for I / O based on the I / O completion notification NC (steps 600 and 601). If the I / O processing is successful, an I / O completion notification NC is issued to the upper I / O request unit 102-1 (from step 602 to step 604).

以上のように、サーバA101−1から外部記憶装置108−1に対してI/Oを実施する際、サーバA101−1からの通信パスを選択し、その通信パスを確保できない場合においても、サーバA101−1の負荷分散モジュール105は、新たな通信パス(ここではサーバA101−1からの通信パス)を選択し、I/O要求RQを再発行して外部記憶装置108−1とのI/Oを実行することができる。   As described above, when I / O is performed from the server A 101-1 to the external storage device 108-1, even when the communication path from the server A 101-1 is selected and the communication path cannot be secured, the server The load distribution module 105 of A 101-1 selects a new communication path (here, the communication path from the server A 101-1), reissues the I / O request RQ, and performs I / O with the external storage device 108-1. O can be executed.

サーバA101−1から外部記憶装置108−1へのI/Oにおいて、サーバA101−1からの通信パスを選択してI/Oを実行する際、パス障害によってI/Oエラーが返され、サーバB101−2の通信パスを再選択してI/O要求RQを再発行した場合について説明する。   In the I / O from the server A 101-1 to the external storage device 108-1, when executing the I / O by selecting the communication path from the server A 101-1, an I / O error is returned due to a path failure, and the server A case where the I / O request RQ is reissued by reselecting the communication path of B101-2 will be described.

サーバA101−1のI/O要求部102−1は、外部記憶装置108−1に対するI/O要求RQを負荷分散モジュール105−1のI/O発行部204−1に発行する。I/O発行部204−1では、I/O要求RQに含まれるI/O情報ADに対応するI/Oアドレス情報800とマッピングテーブル801を参照して、I/Oの対象となる外部記憶装置108−1に対応するパスグループ802−1を選択する(ステップ301)。   The I / O request unit 102-1 of the server A 101-1 issues an I / O request RQ for the external storage device 108-1 to the I / O issue unit 204-1 of the load distribution module 105-1. The I / O issuing unit 204-1 refers to the I / O address information 800 corresponding to the I / O information AD included in the I / O request RQ and the mapping table 801 and refers to the external storage that is the target of I / O. The path group 802-1 corresponding to the device 108-1 is selected (step 301).

パス選択処理(ステップ302)において、I/O発行部204−1は、ステップ301で選択したパスグループテーブル802−1のパス情報803を参照し、サーバA101−1からの通信パス(パス情報803−1に対応)を選択する(ステップ400からステップ404)。この際、選択可能で且つ最適な通信パスが、サーバA101−1からの通信パス(パス情報803−1に対応)とする。   In the path selection process (step 302), the I / O issuing unit 204-1 refers to the path information 803 of the path group table 802-1 selected in step 301, and the communication path (path information 803) from the server A 101-1. -1) is selected (from step 400 to step 404). At this time, the optimum communication path that can be selected is a communication path from the server A 101-1 (corresponding to the path information 803-1).

I/O発行部204−1は、選択した通信パスのパス情報をパス情報803−1に更新し、ディスクドライバ106−1に対しI/O要求RQを発行する(ステップ304からステップ306)。ディスクドライバ106−1はI/O要求RQのパス情報803−1に基づいた通信パスを使用し、I/O情報ADを参照して外部記憶装置108−1ヘのWriteデータ書き込みや、外部記憶装置108−1からのReadデータの読み込み等のI/O処理を実行する。この際、パス障害等によりI/O処理ができない場合、ディスクドライバ106−1は、I/Oエラー通知NEをI/O完了部203−1に発行する。   The I / O issuing unit 204-1 updates the path information of the selected communication path to the path information 803-1, and issues an I / O request RQ to the disk driver 106-1 (from step 304 to step 306). The disk driver 106-1 uses a communication path based on the path information 803-1 of the I / O request RQ, refers to the I / O information AD, writes Write data to the external storage device 108-1, and stores the external data. I / O processing such as reading of Read data from the device 108-1 is executed. At this time, if the I / O processing cannot be performed due to a path failure or the like, the disk driver 106-1 issues an I / O error notification NE to the I / O completion unit 203-1.

I/O完了部203−1は、I/Oエラー通知NEからエラー内容を分析し、パス障害によるI/Oエラーである場合、I/O発行部204−1にI/O要求RQを再発行する(ステップ608、611)。又、パス障害以外の理由によるI/Oエラーの場合、上位のI/O要求部102−1にI/Oエラー通知NEを発行する(ステップ608からステップ612)。   The I / O completion unit 203-1 analyzes the error content from the I / O error notification NE, and if an I / O error due to a path failure, retransmits the I / O request RQ to the I / O issue unit 204-1. Issue (steps 608 and 611). In the case of an I / O error due to a reason other than a path failure, an I / O error notification NE is issued to the upper I / O request unit 102-1 (from step 608 to step 612).

ステップ611において、I/O完了部203−1からI/O要求RQを再発行されたI/O発行部204−1は、受信するI/O情報ADに対応するI/Oアドレス情報800とマッピングテーブル801を参照して、I/Oの対象となる外部記憶装置108−1に対応するパスグループ802−1を選択する(ステップ301)。   In step 611, the I / O issuing unit 204-1 to which the I / O request RQ has been reissued from the I / O completion unit 203-1, the I / O address information 800 corresponding to the received I / O information AD, and Referring to the mapping table 801, the path group 802-1 corresponding to the external storage device 108-1 that is the target of I / O is selected (step 301).

パス選択処理(ステップ302)において、I/O発行部204−1は、ステップ301で選択したパスグループテーブル802−1のパス情報803を参照し、サーバB101−2からの通信パス(パス情報803−2に対応)を選択する(ステップ400からステップ404)。この際、パス情報803−1が変更されたため、選択可能で且つ最適な通信パスが、サーバB101−2からの通信パス(パス情報803−2に対応)と変更されたとする。   In the path selection process (step 302), the I / O issuing unit 204-1 refers to the path information 803 of the path group table 802-1 selected in step 301, and the communication path (path information 803) from the server B 101-2. -2) is selected (from step 400 to step 404). At this time, since the path information 803-1 is changed, the selectable and optimum communication path is changed to the communication path from the server B 101-2 (corresponding to the path information 803-2).

I/O発行部204−1は、選択した通信パスのパス情報をパス情報803−2に更新する(ステップ304)。I/O要求RQがWrite要求の場合は、サーバB101−2へI/O要求RQを要請するため、I/O情報ADとWriteデータの送付要求をネットワークドライバ103−1に発行する(ステップ305からステップ308)。I/O要求RQがWrite要求でない場合は、I/O情報ADの送付要求をネットワークドライバ103−1に発行する(ステップ309)。   The I / O issuing unit 204-1 updates the path information of the selected communication path to the path information 803-2 (step 304). If the I / O request RQ is a write request, a request for sending the I / O information AD and the write data is issued to the network driver 103-1 in order to request the server B 101-2 for the I / O request RQ (step 305). To step 308). If the I / O request RQ is not a write request, a request for sending the I / O information AD is issued to the network driver 103-1 (step 309).

ネットワークドライバ103−1は、送信先のオペレーティングシステムが異なる場合、送信先のオペレーティングシステムに適した形式にI/O情報ADを変換し、ネットワーク100を介してサーバB101−2に送信する。この際、I/O要求RQがWrite要求の場合はWriteデータとともにサーバB101−2に送信する。   When the transmission destination operating system is different, the network driver 103-1 converts the I / O information AD into a format suitable for the transmission destination operating system, and transmits it to the server B 101-2 via the network 100. At this time, if the I / O request RQ is a write request, it is transmitted to the server B 101-2 together with the write data.

サーバB101−2のネットワークドライバ103−2は、サーバA101−1から受信するI/O情報ADを基にしたI/O発行要求MRQを、I/O要求受付部201−2に発行する。又、要請されたI/O要求RQがWrite要求の場合はWriteデータとともに送信する。   The network driver 103-2 of the server B 101-2 issues an I / O issue request MRQ based on the I / O information AD received from the server A 101-1 to the I / O request reception unit 201-2. If the requested I / O request RQ is a write request, it is transmitted together with write data.

I/O要求受付部201−2は、ネットワークドライバ103−2から受信したI/O発行要求MRQに基づき、I/O発行部204−2にI/O要求RQを発行する。(501)I/O発行部では、I/O要求RQのアドレス情報800、マッピングテーブル801を参照して、I/Oの対象である外部記憶装置108−1に対応するパスグループ802−1を選択する(301)。   The I / O request reception unit 201-2 issues an I / O request RQ to the I / O issue unit 204-2 based on the I / O issue request MRQ received from the network driver 103-2. (501) The I / O issuing unit refers to the address information 800 of the I / O request RQ and the mapping table 801, and determines the path group 802-1 corresponding to the external storage device 108-1 that is the target of I / O. Select (301).

パス選択処理(ステップ302)において、I/O発行部204−2は、ステップ301で選択したパスグループテーブル802−1のパス情報803を参照し、サーバB101−2からの通信パス(パス情報803−2に対応)を選択する(ステップ400からステップ404)。この際、選択可能で且つ最適な通信パスが、サーバB101−2からの通信パス(パス情報803−2に対応)とする。   In the path selection process (step 302), the I / O issuing unit 204-2 refers to the path information 803 of the path group table 802-1 selected in step 301, and the communication path (path information 803) from the server B 101-2. -2) is selected (from step 400 to step 404). At this time, the optimum communication path that can be selected is the communication path from the server B 101-2 (corresponding to the path information 803-2).

I/O発行部204−2は、選択した通信パスのパス情報をパス情報803−2に更新し、ディスクドライバ106−2に対しI/O要求RQを発行する(ステップ304からステップ306)。ディスクドライバ106−2はI/O要求RQのパス情報803−2に基づいた通信パスを使用し、I/O情報ADを参照して外部記憶装置108−1ヘのWriteデータ書き込みや、外部記憶装置108−1からのReadデータの読み込み等のI/O処理を実行する。ディスクドライバ106−2は、I/O処理が完了すると、I/O完了部203−2にI/O完了通知NCを発行する。   The I / O issuing unit 204-2 updates the path information of the selected communication path to the path information 803-2, and issues an I / O request RQ to the disk driver 106-2 (from step 304 to step 306). The disk driver 106-2 uses a communication path based on the path information 803-2 of the I / O request RQ, refers to the I / O information AD, and writes the write data to the external storage device 108-1, or the external storage I / O processing such as reading of Read data from the device 108-1 is executed. When the I / O processing is completed, the disk driver 106-2 issues an I / O completion notification NC to the I / O completion unit 203-2.

I/O完了部203−2は、I/O完了通知NCに基づきI/Oに使用した通信パスのパス情報803−2を更新する(ステップ600、601)。実行したI/O要求RQがWrite要求である場合は、ネットワークドライバ103−2にサーバA101−1へのI/O完了通知NCの送付要求を発行する(ステップ602からステップ606)。Write要求でない場合は、ネットワークドライバ103−2に対し、サーバA101−1へのI/O完了通知NC及びReadデータの送付要求を発行する(ステップ602からステップ607)。   The I / O completion unit 203-2 updates the path information 803-2 of the communication path used for I / O based on the I / O completion notification NC (steps 600 and 601). If the executed I / O request RQ is a write request, a request for sending an I / O completion notification NC to the server A 101-1 is issued to the network driver 103-2 (steps 602 to 606). If it is not a write request, an I / O completion notification NC and read data sending request to the server A 101-1 is issued to the network driver 103-2 (steps 602 to 607).

ネットワークドライバ103−2は、ネットワーク経由でサーバA101−1のネットワークドライバ103−1へ、I/O完了通知NCもしくは、I/O完了通知NCとReadデータを送信する。ネットワークドライバ103−1は、受信するI/O完了通知NCもしくは、I/O完了通知NCとReadデータをI/O完了通知受付部202−1に送信する。   The network driver 103-2 transmits the I / O completion notification NC or the I / O completion notification NC and Read data to the network driver 103-1 of the server A 101-1 via the network. The network driver 103-1 transmits the received I / O completion notification NC or the I / O completion notification NC and Read data to the I / O completion notification reception unit 202-1.

I/O完了通知受付部202−1はI/O完了通知を受け取ると、I/O完了部203−1にI/O完了通知を発行し(ステップ700からステップ703)、使用した通信パスのパス情報803−2を更新する(ステップ600、601)。I/O処理が成功であると、上位のI/O要求部102−1にI/O完了通知を発行する(ステップ602からステップ604)。   Upon receipt of the I / O completion notification 202-1, the I / O completion notification reception unit 202-1 issues an I / O completion notification to the I / O completion unit 203-1 (from step 700 to step 703), and the used communication path. The path information 803-2 is updated (steps 600 and 601). If the I / O processing is successful, an I / O completion notification is issued to the higher-level I / O request unit 102-1 (from step 602 to step 604).

以上のように、サーバA101−1から外部記憶装置108−1に対してI/O要求を実施する際、サーバA101−1からの通信パスを選択し、その通信パスを確保できない場合においても、サーバA101−1の負荷分散モジュール105は、新たな通信パス(ここではサーバB101−2からの通信パス)を選択し、ネットワーク100を通じてサーバB101−2とI/O要求のために必要な情報をやり取りし、サーバB101−2に通信パスを選択及び確保させ、I/Oを実行させることができる。このため、サーバA101−1から外部記憶装置108−1へ通信パスを確保に失敗し、且つ、サーバA101−1からの通信パスが最適できない場合でも、外部記憶装置108−1に共通接続されているサーバ101があれば、ネットワーク100を介して通信パスを冗長構成することができる。   As described above, when performing an I / O request from the server A 101-1 to the external storage device 108-1, even when a communication path from the server A 101-1 is selected and the communication path cannot be secured, The load distribution module 105 of the server A 101-1 selects a new communication path (here, the communication path from the server B 101-2), and sends information necessary for an I / O request with the server B 101-2 through the network 100. The server B 101-2 can select and secure a communication path and execute I / O. For this reason, even if the communication path from the server A 101-1 to the external storage device 108-1 fails to be secured and the communication path from the server A 101-1 cannot be optimized, it is commonly connected to the external storage device 108-1. If there is a server 101, the communication path can be redundantly configured via the network 100.

サーバA101−1から外部記憶装置108−1へのI/Oにおいて、サーバB101−2からの通信パスを選択してI/Oを実行する際、パス障害によってI/Oエラーが返され、サーバB101−2において通信パスを再選択してI/O要求RQを再発行した場合について説明する。   In the I / O from the server A 101-1 to the external storage device 108-1, when selecting the communication path from the server B 101-2 and executing the I / O, an I / O error is returned due to a path failure, and the server A case where the communication path is reselected and the I / O request RQ is reissued in B101-2 will be described.

サーバA101−1のI/O要求部102−1は、外部記憶装置108−1に対するI/O要求RQを負荷分散モジュール105−1のI/O発行部204−1に発行する。I/O発行部204−1では、I/O要求RQに含まれるI/O情報ADに対応するI/Oアドレス情報800とマッピングテーブル801を参照してパスグループ802−1を選択する(ステップ301)。   The I / O request unit 102-1 of the server A 101-1 issues an I / O request RQ for the external storage device 108-1 to the I / O issue unit 204-1 of the load distribution module 105-1. The I / O issuing unit 204-1 selects the path group 802-1 with reference to the I / O address information 800 corresponding to the I / O information AD included in the I / O request RQ and the mapping table 801 (step S1). 301).

パス選択処理(ステップ302)において、I/O発行部204−1は、ステップ301で選択したパスグループテーブル802−1のパス情報803を参照し、サーバA101−1からの通信パス(パス情報803−2に対応)を選択する(ステップ400からステップ404)。この際、選択可能で且つ最適な通信パスが、サーバB101−2からの通信パス(パス情報803−2に対応)とする。   In the path selection process (step 302), the I / O issuing unit 204-1 refers to the path information 803 of the path group table 802-1 selected in step 301, and the communication path (path information 803) from the server A 101-1. -2) is selected (from step 400 to step 404). At this time, the optimum communication path that can be selected is the communication path from the server B 101-2 (corresponding to the path information 803-2).

I/O発行部204−1は、選択した通信パスのパス情報をパス情報803−2に更新する(ステップ304)。I/O要求RQがWrite要求の場合は、サーバB101−2へI/O要求RQを要請するため、I/O情報ADとWriteデータの送付要求をネットワークドライバ103−1に発行する(ステップ305からステップ308)。I/O要求RQがWrite要求でない場合は、I/O情報ADの送付要求をネットワークドライバ103−1に発行する(ステップ309)。   The I / O issuing unit 204-1 updates the path information of the selected communication path to the path information 803-2 (step 304). If the I / O request RQ is a write request, a request for sending the I / O information AD and the write data is issued to the network driver 103-1 in order to request the server B 101-2 for the I / O request RQ (step 305). To step 308). If the I / O request RQ is not a write request, a request for sending the I / O information AD is issued to the network driver 103-1 (step 309).

ネットワークドライバ103−1は、送信先のオペレーティングシステムが異なる場合、送信先のオペレーティングシステムに適した形式にI/O情報ADを変換し、ネットワーク100を介してサーバB101−2に送信する。この際、I/O要求RQがWrite要求の場合はWriteデータとともにサーバB101−2に送信する。   When the transmission destination operating system is different, the network driver 103-1 converts the I / O information AD into a format suitable for the transmission destination operating system, and transmits it to the server B 101-2 via the network 100. At this time, if the I / O request RQ is a write request, it is transmitted to the server B 101-2 together with the write data.

サーバB101−2のネットワークドライバ103−2は、サーバA101−1から受信するI/O情報ADに基づいたI/O発行要求MRQをI/O要求受付部201−2に発行する。又、I/O要求RQがWrite要求の場合はWriteデータとともに送信する。   The network driver 103-2 of the server B 101-2 issues an I / O issue request MRQ based on the I / O information AD received from the server A 101-1 to the I / O request reception unit 201-2. When the I / O request RQ is a write request, it is transmitted together with write data.

I/O要求受付部201−2は、ネットワークドライバ103−2から受信したI/O発行要求MRQに基づき、I/O発行部204−2にI/O要求RQを発行する。(501)I/O発行部では、I/O要求RQのアドレス情報800、マッピングテーブル801を参照して、I/Oの対象となる外部記憶装置108−1に対応するパスグループ802−1を選択する(301)。   The I / O request reception unit 201-2 issues an I / O request RQ to the I / O issue unit 204-2 based on the I / O issue request MRQ received from the network driver 103-2. (501) The I / O issuing unit refers to the address information 800 of the I / O request RQ and the mapping table 801, and creates a path group 802-1 corresponding to the external storage device 108-1 that is the target of I / O. Select (301).

パス選択処理(ステップ302)において、I/O発行部204−2は、ステップ301で選択したパスグループテーブル802−1のパス情報803を参照し、サーバB101−2からの通信パス(パス情報803−2に対応)を選択する(ステップ400からステップ404)。この際、選択可能で且つ最適な通信パスが、サーバB101−2からの通信パス(パス情報803−2に対応)とする。   In the path selection process (step 302), the I / O issuing unit 204-2 refers to the path information 803 of the path group table 802-1 selected in step 301, and the communication path (path information 803) from the server B 101-2. -2) is selected (from step 400 to step 404). At this time, the optimum communication path that can be selected is the communication path from the server B 101-2 (corresponding to the path information 803-2).

I/O発行部204−2は、選択した通信パスのパス情報をパス情報803−2に更新し、ディスクドライバ106−2に対しI/O要求RQを発行するとともにI/O情報ADを送信する(ステップ304からステップ306)。ディスクドライバ106−2はI/O要求RQのパス情報803−2に基づいた通信パスを使用し、I/O情報ADを参照して外部記憶装置108−1ヘのWriteデータ書き込みや、外部記憶装置108−1からのReadデータの読み込み等のI/O処理を実行する。この際、パス障害等によりI/O処理ができない場合、ディスクドライバ106−2は、I/Oエラー通知NEをI/O完了部203−2に発行する。   The I / O issuing unit 204-2 updates the path information of the selected communication path to the path information 803-2, issues an I / O request RQ to the disk driver 106-2, and transmits the I / O information AD. (Step 304 to Step 306). The disk driver 106-2 uses a communication path based on the path information 803-2 of the I / O request RQ, refers to the I / O information AD, and writes the write data to the external storage device 108-1, or the external storage I / O processing such as reading of Read data from the device 108-1 is executed. At this time, if the I / O processing cannot be performed due to a path failure or the like, the disk driver 106-2 issues an I / O error notification NE to the I / O completion unit 203-2.

I/O完了部203−2は、I/Oエラー通知NEからエラー内容を分析し、パス障害によるI/Oエラーである場合、I/O発行部204−2にI/O要求RQを再発行する(ステップ608、611)。又、パス障害以外の理由によるI/Oエラーの場合、他サーバA101−1からのI/Oの要求であるため、ネットワークドライバ103−2にI/Oエラー通知NEの送付要求を発行する(ステップ608からステップ610)。   The I / O completion unit 203-2 analyzes the error content from the I / O error notification NE, and if the I / O error is due to a path failure, the I / O request unit 204-2 retransmits the I / O request RQ. Issue (steps 608 and 611). In the case of an I / O error due to a reason other than a path failure, since it is an I / O request from another server A 101-1, a request for sending an I / O error notification NE is issued to the network driver 103-2 ( Step 608 to Step 610).

ステップ611において、I/O完了部203−2からI/O要求RQを再発行されたI/O発行部204−2は、受信するI/O情報ADに対応するI/Oアドレス情報800とマッピングテーブル801を参照してI/Oの対象となる外部記憶装置108−1に対応するパスグループ802−1を選択する(ステップ301)。   In step 611, the I / O issuing unit 204-2, to which the I / O request RQ is reissued from the I / O completion unit 203-2, and the I / O address information 800 corresponding to the received I / O information AD, By referring to the mapping table 801, the path group 802-1 corresponding to the external storage device 108-1 that is the target of I / O is selected (step 301).

パス選択処理(ステップ302)において、I/O発行部204−2は、ステップ301で選択したパスグループテーブル802−1のパス情報803を参照し、サーバB101−2からの通信パス(パス情報803−4に対応)を選択する(ステップ400からステップ404)。この際、パス情報803−2が変更されたため、選択可能で且つ最適な通信パスが、サーバB101−1からの通信パス(パス情報803−4に対応)と変更されたとする。   In the path selection process (step 302), the I / O issuing unit 204-2 refers to the path information 803 of the path group table 802-1 selected in step 301, and the communication path (path information 803) from the server B 101-2. (Corresponding to -4) is selected (from step 400 to step 404). At this time, since the path information 803-2 has been changed, it is assumed that the selectable and optimum communication path is changed to the communication path from the server B 101-1 (corresponding to the path information 803-4).

I/O発行部204−2は、選択した通信パスのパス情報をパス情報803−4に更新し、ディスクドライバ106−2に対しI/O要求RQを発行するとともにI/O情報ADを送信する(ステップ304からステップ306)。ディスクドライバ106−2はI/O要求RQのパス情報803−4に基づいた通信パスを使用し、I/O情報ADを参照して外部記憶装置108−1ヘのWriteデータ書き込みや、外部記憶装置108−1からのReadデータの読み込み等のI/O処理を実行する。ディスクドライバ106−2は、I/O処理が完了すると、I/O完了部203−2にI/O完了通知NCを発行する。   The I / O issuing unit 204-2 updates the path information of the selected communication path to the path information 803-4, issues an I / O request RQ to the disk driver 106-2, and transmits the I / O information AD. (Step 304 to Step 306). The disk driver 106-2 uses a communication path based on the path information 803-4 of the I / O request RQ, refers to the I / O information AD, and writes the write data to the external storage device 108-1, or the external storage I / O processing such as reading of Read data from the device 108-1 is executed. When the I / O processing is completed, the disk driver 106-2 issues an I / O completion notification NC to the I / O completion unit 203-2.

I/O完了部203−2は、I/O完了通知NCに基づきI/Oに使用した通信パスのパス情報803−2を更新する(ステップ600、601)。実行したI/O要求RQがWrite要求である場合は、ネットワークドライバ103−2にサーバA101−1へのI/O完了通知NCの送付要求を発行する(ステップ602からステップ606)。Write要求でない場合は、ネットワークドライバ103−2に対し、サーバA101−1へのI/O完了通知NC及びReadデータの送付要求を発行する(ステップ602からステップ607)。   The I / O completion unit 203-2 updates the path information 803-2 of the communication path used for I / O based on the I / O completion notification NC (steps 600 and 601). If the executed I / O request RQ is a write request, a request for sending an I / O completion notification NC to the server A 101-1 is issued to the network driver 103-2 (steps 602 to 606). If it is not a write request, an I / O completion notification NC and read data sending request to the server A 101-1 is issued to the network driver 103-2 (steps 602 to 607).

ネットワークドライバ103−2は、ネットワーク経由でサーバA101−1のネットワークドライバ103−1へ、I/O完了通知NCもしくは、I/O完了通知NCとReadデータを送信する。ネットワークドライバ103−1は、受信するI/O完了通知NCもしくは、I/O完了通知NCとReadデータをI/O完了通知受付部202−1に送信する。   The network driver 103-2 transmits the I / O completion notification NC or the I / O completion notification NC and Read data to the network driver 103-1 of the server A 101-1 via the network. The network driver 103-1 transmits the received I / O completion notification NC or the I / O completion notification NC and Read data to the I / O completion notification reception unit 202-1.

I/O完了通知受付部202−1はI/O完了通知NCを受け取ると、I/O完了部203−1にI/O完了通知NCを発行し(ステップ700からステップ703)、使用した通信パスのパス情報803−2を更新する(ステップ600、601)。I/O処理が成功であると、上位のI/O要求部102−1にI/O完了通知NCを発行する(ステップ602からステップ604)。   Upon receiving the I / O completion notification NC, the I / O completion notification reception unit 202-1 issues an I / O completion notification NC to the I / O completion unit 203-1 (from step 700 to step 703), and used communication. The path information 803-2 of the path is updated (steps 600 and 601). If the I / O processing is successful, an I / O completion notification NC is issued to the upper I / O request unit 102-1 (from step 602 to step 604).

サーバA101−1から外部記憶装置108−1に対してI/Oを実施する際、サーバA101−1は、ネットワーク100を通じてサーバB101−2に通信パスを確保させ、外部記憶装置108−1とのI/Oを実行させる。この時、サーバB101−2が選択した通信パスが障害等で使用できずI/Oエラーとなった場合、サーバA101−1までI/Oエラー通知NEを返さずにサーバB101−2で再び最適な通信パスを再選択してI/O要求RQを再発行することができる。この際、最適なな通信パスが別のサーバn101−nからの通信パスである場合、サーバn101−nからの通信パスを選択し、サーバn101−nへI/O情報ADを送信してI/Oを実行させる。   When performing I / O from the server A 101-1 to the external storage device 108-1, the server A 101-1 secures a communication path to the server B 101-2 through the network 100 and establishes a communication path with the external storage device 108-1. I / O is executed. At this time, if the communication path selected by the server B 101-2 cannot be used due to a failure or the like and an I / O error occurs, the server B 101-2 returns to the server A 101-1 without returning an I / O error notification NE, and is optimized again. An I / O request RQ can be reissued by reselecting a proper communication path. At this time, if the optimum communication path is a communication path from another server n101-n, the communication path from the server n101-n is selected, and the I / O information AD is transmitted to the server n101-n to obtain the I / O is executed.

サーバA101−1から外部記憶装置108−1へのI/Oにおいて、サーバB101−2からの通信パスを選択してI/Oを実行する際、パス障害によってI/Oエラーが返され、サーバB101−2において選択可能な通信パスなくなり、サーバA101−1においてI/O要求RQを再発行した場合について説明する。   In the I / O from the server A 101-1 to the external storage device 108-1, when selecting the communication path from the server B 101-2 and executing the I / O, an I / O error is returned due to a path failure, and the server A case where there is no communication path that can be selected in B101-2 and the server A101-1 reissues the I / O request RQ will be described.

サーバA101−1のI/O要求部102−1は、外部記憶装置108−1に対するI/O要求RQを負荷分散モジュール105−1のI/O発行部204−1に発行する。I/O発行部204−1では、I/O要求RQに含まれるI/O情報ADに対応するI/Oアドレス情報800とマッピングテーブル801を参照してパスグループ802−1を選択する(ステップ301)。   The I / O request unit 102-1 of the server A 101-1 issues an I / O request RQ for the external storage device 108-1 to the I / O issue unit 204-1 of the load distribution module 105-1. The I / O issuing unit 204-1 selects the path group 802-1 with reference to the I / O address information 800 corresponding to the I / O information AD included in the I / O request RQ and the mapping table 801 (step S1). 301).

パス選択処理(ステップ302)において、I/O発行部204−1は、ステップ301で選択したパスグループテーブル802−1のパス情報803を参照し、サーバA101−1からの通信パス(パス情報803−2に対応)を選択する(ステップ400からステップ404)。この際、選択可能で且つ最適な通信パスが、サーバB101−2からの通信パス(パス情報803−2に対応)とする。   In the path selection process (step 302), the I / O issuing unit 204-1 refers to the path information 803 of the path group table 802-1 selected in step 301, and the communication path (path information 803) from the server A 101-1. -2) is selected (from step 400 to step 404). At this time, the optimum communication path that can be selected is the communication path from the server B 101-2 (corresponding to the path information 803-2).

I/O発行部204−1は、選択した通信パスのパス情報をパス情報803−2に更新する(ステップ304)。I/O要求RQがWrite要求の場合は、サーバB101−2へI/O要求を要請するため、I/O情報ADとWriteデータの送付要求をネットワークドライバ103−1に発行する(ステップ305からステップ308)。I/O要求RQがWrite要求でない場合は、I/O情報ADの送付要求をネットワークドライバ103−1に発行する(ステップ309)。   The I / O issuing unit 204-1 updates the path information of the selected communication path to the path information 803-2 (step 304). If the I / O request RQ is a write request, a request for sending the I / O information AD and the write data is issued to the network driver 103-1 in order to request the server B 101-2 for the I / O request (from step 305). Step 308). If the I / O request RQ is not a write request, a request for sending the I / O information AD is issued to the network driver 103-1 (step 309).

ネットワークドライバ103−1は、送信先のオペレーティングシステムが異なる場合、送信先のオペレーティングシステムに適した形式にI/O情報ADを変換し、ネットワーク100を介してサーバB101−2に送信する。この際、I/O要求RQがWrite要求の場合はWriteデータとともにサーバB101−2に送信する。   When the transmission destination operating system is different, the network driver 103-1 converts the I / O information AD into a format suitable for the transmission destination operating system, and transmits it to the server B 101-2 via the network 100. At this time, if the I / O request RQ is a write request, it is transmitted to the server B 101-2 together with the write data.

サーバB101−2のネットワークドライバ103−2は、サーバA101−1から受信するI/O情報ADに基づいたI/O発行要求MRQをI/O要求受付部201−2に発行する。又、I/O要求RQがWrite要求の場合はWriteデータとともに送信する。   The network driver 103-2 of the server B 101-2 issues an I / O issue request MRQ based on the I / O information AD received from the server A 101-1 to the I / O request reception unit 201-2. When the I / O request RQ is a write request, it is transmitted together with write data.

I/O要求受付部201−2は、ネットワークドライバ103−2から受信したI/O発行要求MRQに基づき、I/O発行部204−2にI/O要求RQを発行する。(501)I/O発行部では、I/O要求RQのアドレス情報800、マッピングテーブル801を参照して、I/Oの対象となる外部記憶装置108−1に対応するパスグループ802−1を選択する(301)。   The I / O request reception unit 201-2 issues an I / O request RQ to the I / O issue unit 204-2 based on the I / O issue request MRQ received from the network driver 103-2. (501) The I / O issuing unit refers to the address information 800 of the I / O request RQ and the mapping table 801, and creates a path group 802-1 corresponding to the external storage device 108-1 that is the target of I / O. Select (301).

パス選択処理(ステップ302)において、I/O発行部204−2は、ステップ301で選択したパスグループテーブル802−1のパス情報803を参照し、サーバB101−2からの通信パス(パス情報803−2に対応)を選択する(ステップ400からステップ404)。この際、選択可能で且つ最適な通信パスが、サーバB101−2からの通信パス(パス情報803−2に対応)とする。   In the path selection process (step 302), the I / O issuing unit 204-2 refers to the path information 803 of the path group table 802-1 selected in step 301, and the communication path (path information 803) from the server B 101-2. -2) is selected (from step 400 to step 404). At this time, the optimum communication path that can be selected is the communication path from the server B 101-2 (corresponding to the path information 803-2).

I/O発行部204−2は、選択した通信パスのパス情報をパス情報803−2に更新し、ディスクドライバ106−2に対しI/O要求RQを発行するとともにI/O情報ADを送信する(ステップ304からステップ306)。ディスクドライバ106−2はI/O要求RQのパス情報803−2に基づいた通信パスを使用し、I/O情報ADを参照して外部記憶装置108−1ヘのWriteデータ書き込みや、外部記憶装置108−1からのReadデータの読み込み等のI/O処理を実行する。この際、パス障害等によりI/O処理ができない場合、ディスクドライバ106−2は、I/Oエラー通知NEをI/O完了部203−2に発行する。   The I / O issuing unit 204-2 updates the path information of the selected communication path to the path information 803-2, issues an I / O request RQ to the disk driver 106-2, and transmits the I / O information AD. (Step 304 to Step 306). The disk driver 106-2 uses a communication path based on the path information 803-2 of the I / O request RQ, refers to the I / O information AD, and writes the write data to the external storage device 108-1, or the external storage I / O processing such as reading of Read data from the device 108-1 is executed. At this time, if the I / O processing cannot be performed due to a path failure or the like, the disk driver 106-2 issues an I / O error notification NE to the I / O completion unit 203-2.

I/O完了部203−2は、I/Oエラー通知NEからエラー内容を分析し、パス障害によるI/Oエラーである場合、I/O発行部204−2に対しI/O要求RQを再発行する(ステップ608、611)。又、パス障害以外の理由によるI/Oエラーの場合は、I/Oの要求が他サーバA101−1から要請されたI/O要求であるため、I/Oエラー通知NEの送付要求をネットワークドライバ103−2に発行する(ステップ608からステップ610)。   The I / O completion unit 203-2 analyzes the error content from the I / O error notification NE, and if it is an I / O error due to a path failure, sends an I / O request RQ to the I / O issue unit 204-2. It is reissued (steps 608 and 611). In the case of an I / O error due to a reason other than a path failure, since the I / O request is an I / O request requested from the other server A 101-1, a request for sending the I / O error notification NE is sent to the network. It is issued to the driver 103-2 (step 608 to step 610).

ステップ611において、I/O完了部203−2からI/O要求RQを再発行されたI/O発行部204−2は、受信するI/O情報ADに対応するI/Oアドレス情報800とマッピングテーブル801を参照して、I/Oの対象となる外部記憶装置108−1に対応するパスグループ802−1を選択する(ステップ301)。   In step 611, the I / O issuing unit 204-2, to which the I / O request RQ is reissued from the I / O completion unit 203-2, and the I / O address information 800 corresponding to the received I / O information AD, Referring to the mapping table 801, the path group 802-1 corresponding to the external storage device 108-1 that is the target of I / O is selected (step 301).

パス選択処理(ステップ302)において、I/O発行部204−2は、ステップ301で選択したパスグループテーブル802−1のパス情報803を参照し、サーバB101−2からの通信パスを選択する(ステップ400からステップ404)。この際、全ての通信パスが使用中、又は、障害の発生等で使用可能な通信パスがない場合、I/Oエラー通知NEの送付要求をネットワークドライバ103−2へ発行する。(ステップ405)。ネットワークドライバ103−2は、I/Oエラー通知NEをネットワーク100を介してサーバA101−1のネットワークドライバ103−1に送信する。   In the path selection process (step 302), the I / O issuing unit 204-2 refers to the path information 803 of the path group table 802-1 selected in step 301, and selects a communication path from the server B 101-2 ( Step 400 to Step 404). At this time, if all communication paths are in use or there is no communication path that can be used due to the occurrence of a failure or the like, a request for sending an I / O error notification NE is issued to the network driver 103-2. (Step 405). The network driver 103-2 transmits an I / O error notification NE to the network driver 103-1 of the server A 101-1 via the network 100.

サーバA101−1のネットワークドライバ103−1は受信したI/Oエラー通知NEをI/O完了通知受付部202−1に発行する。I/O完了通知受付部202−1は、I/Oエラー通知NEを参照して障害内容を確認する(ステップ700からステップ702)。I/Oエラーがパス障害である場合、I/Oに使用した通信パスのパス情報803−2を更新する(ステップ704)。次に、I/O完了通知受付部202−1は、新たな通信パスを選択するため、I/O発行部204−1にI/O要求RQを再発行するとともにI/O情報ADを送信する(ステップ705)。   The network driver 103-1 of the server A 101-1 issues the received I / O error notification NE to the I / O completion notification reception unit 202-1. The I / O completion notification reception unit 202-1 refers to the I / O error notification NE and confirms the content of the failure (from step 700 to step 702). If the I / O error is a path failure, the path information 803-2 of the communication path used for I / O is updated (step 704). Next, the I / O completion notification receiving unit 202-1 reissues the I / O request RQ and transmits the I / O information AD to the I / O issuing unit 204-1 in order to select a new communication path. (Step 705).

I/O完了通知受付部202−1からI/O要求RQを再発行されたI/O発行部204−1は、I/O要求RQのI/Oアドレス情報800とマッピングテーブル801を参照して、I/Oの対象となる外部記憶装置108−1に対応するパスグループ802−1を選択する(ステップ301)。   The I / O issuing unit 204-1 that has been reissued the I / O request RQ from the I / O completion notification receiving unit 202-1 refers to the I / O address information 800 of the I / O request RQ and the mapping table 801. Then, the path group 802-1 corresponding to the external storage device 108-1 that is the target of the I / O is selected (step 301).

パス選択処理(ステップ302)において、I/O発行部204−1は、ステップ301で選択したパスグループテーブル802−1のパス情報803を参照し、サーバA101−1からの通信パス(パス情報803−3に対応)を選択する(ステップ400からステップ404)。この際、パス情報803−2が変更されたため、選択可能で且つ最適な通信パスが、サーバA101−1からの通信パス(パス情報803−3に対応)と変更されたとする。   In the path selection process (step 302), the I / O issuing unit 204-1 refers to the path information 803 of the path group table 802-1 selected in step 301, and the communication path (path information 803) from the server A 101-1. -3) is selected (from step 400 to step 404). At this time, since the path information 803-2 has been changed, it is assumed that the selectable and optimum communication path is changed to the communication path from the server A 101-1 (corresponding to the path information 803-3).

I/O発行部204−1は、選択した通信パスのパス情報をパス情報803−3に更新し、ディスクドライバ106−1に対しI/O要求RQを発行するとともにI/O情報ADを送信する(ステップ304からステップ306)。ディスクドライバ106−1はI/O要求RQのパス情報803−3に基づいた通信パスを使用し、I/O情報ADを参照して外部記憶装置108−1ヘのWriteデータ書き込みや外部記憶装置108−1からのReadデータの読み込み等のI/O処理を実行する。ディスクドライバ106−1は、I/O処理が完了すると、I/O完了部203−1にI/O完了通知NCを発行する。   The I / O issuing unit 204-1 updates the path information of the selected communication path to the path information 803-3, issues an I / O request RQ to the disk driver 106-1, and transmits the I / O information AD. (Step 304 to Step 306). The disk driver 106-1 uses a communication path based on the path information 803-3 of the I / O request RQ, refers to the I / O information AD, and writes the write data to the external storage device 108-1 or the external storage device. I / O processing such as reading of Read data from 108-1 is executed. When the I / O processing is completed, the disk driver 106-1 issues an I / O completion notification NC to the I / O completion unit 203-1.

I/O完了部203−1は、I/O完了通知NCに基づきI/Oに使用した通信パスのパス情報803−3を更新する(ステップ600、601)。I/O処理が成功であると、上位のI/O要求部102−1にI/O完了通知NCを発行する(ステップ602からステップ604)。   The I / O completion unit 203-1 updates the path information 803-3 of the communication path used for I / O based on the I / O completion notification NC (steps 600 and 601). If the I / O processing is successful, an I / O completion notification NC is issued to the upper I / O request unit 102-1 (from step 602 to step 604).

サーバA101−1から外部記憶装置108−1へのI/Oを実施する際、サーバB101−2に通信パスを確保させ、外部記憶装置108−1とのI/Oを実行させる。サーバB101−2が選択した通信パスが障害等で使用できずI/Oエラーとなり、且つ、サーバB101−1で再選択可能な通信パスが確保できない場合、サーバA101−1までI/Oエラー通知NEを返し、再びサーバA101−1からの通信パスを再選択してI/O要求を再発行することができる。この際、選択可能な最適な通信パスが別のサーバn101−nからの通信パスである場合、サーバn101−nからの通信パスを選択し、サーバn101−nへI/O情報ADを送信してI/Oを実行させる。   When performing I / O from the server A 101-1 to the external storage device 108-1, the server B 101-2 is secured with a communication path, and I / O with the external storage device 108-1 is executed. If the communication path selected by the server B 101-2 cannot be used due to a failure or the like and an I / O error occurs and a re-selectable communication path cannot be secured in the server B 101-1, an I / O error notification is sent to the server A 101-1. NE is returned, and the I / O request can be reissued by selecting again the communication path from the server A 101-1. At this time, when the optimum selectable communication path is a communication path from another server n101-n, the communication path from the server n101-n is selected and the I / O information AD is transmitted to the server n101-n. To execute I / O.

以上により、ネットワーク100で接続された複数サーバ101間でストレージネットワーク107を介して共通接続される外部記憶装置108に対する通信パスを冗長化し、I/Oの負荷分散を可能にすることができる。   As described above, the communication path to the external storage device 108 that is commonly connected via the storage network 107 between the plurality of servers 101 connected via the network 100 can be made redundant, and load distribution of I / O can be enabled.

又、1つのサーバ101から外部記憶装置108に対する通信パスが全て使用できない場合においても、ネットワーク100で接続された外部記憶装置108に接続しているサーバ101にI/O要求RQを送付することによって、外部記憶装置108に対するI/Oを継続することができる。   Even when all communication paths from one server 101 to the external storage device 108 cannot be used, by sending an I / O request RQ to the server 101 connected to the external storage device 108 connected via the network 100 The I / O for the external storage device 108 can be continued.

更に複数のサーバ101から外部記憶装置108に接続する複数の通信パスからI/Oに最適なパスを選択することにより、単一サーバ101からの通信パスのみでパスを選択するよりも、より望ましいパスを選択することができる。   Further, by selecting the optimum path for I / O from a plurality of communication paths connected to the external storage device 108 from a plurality of servers 101, it is more preferable than selecting a path only with a communication path from the single server 101. A path can be selected.

以上、本発明の実施の形態を詳述してきたが、具体的な構成は上記実施の形態に限られるものではなく、本発明の要旨を逸脱しない範囲の変更があっても本発明に含まれる。   The embodiment of the present invention has been described in detail above, but the specific configuration is not limited to the above-described embodiment, and changes within a scope not departing from the gist of the present invention are included in the present invention. .

図1は、本発明による通信パスの冗長化システムの実施の形態における構成図である。FIG. 1 is a configuration diagram of an embodiment of a communication path redundancy system according to the present invention. 図2は、本発明による負荷分散モジュールの構成図である。FIG. 2 is a configuration diagram of a load distribution module according to the present invention. 図3Aは、本発明によるI/O発行部における動作の流れ図である。FIG. 3A is a flowchart of the operation in the I / O issuing unit according to the present invention. 図3Bは、本発明によるI/O発行部における動作の流れ図である。FIG. 3B is a flowchart of the operation in the I / O issuing unit according to the present invention. 図4は、本発明による通信パスの冗長化システムにおけるパス選択処理の流れ図である。FIG. 4 is a flowchart of a path selection process in the communication path redundancy system according to the present invention. 図5は、本発明によるI/O要求受付部における動作の流れ図である。FIG. 5 is a flowchart of the operation in the I / O request accepting unit according to the present invention. 図6Aは、本発明によるI/O完了部における動作の流れ図である。FIG. 6A is a flowchart of the operation in the I / O completion unit according to the present invention. 図6Bは、本発明によるI/O完了部における動作の流れ図である。FIG. 6B is a flowchart of the operation in the I / O completion unit according to the present invention. 図7は、本発明によるI/O完了受付部における動作の流れ図である。FIG. 7 is a flowchart of the operation in the I / O completion acceptance unit according to the present invention. 図8は、本発明によるI/Oアドレス情報、マッピングテーブル、パスグループテーブル、パス情報の概念図である。FIG. 8 is a conceptual diagram of I / O address information, mapping table, path group table, and path information according to the present invention.

符号の説明Explanation of symbols

100: ネットワーク
101: サーバ
102: I/O要求部
102A: アプリケーション
102B: ファイルシステム
103: ネットワークドライバ
105: 負荷分散モジュール
106: ディスクドライバ
107: ストレージネットワーク
108: 外部記憶装置
201: I/O完了受付部
202: I/O完了通知受付部
203: I/O完了部
204: I/O発行部
RQ: I/O要求
MRQ: I/O発行要求MRQ
DT: I/O情報AD
NC: I/O完了通知
NE: I/Oエラー通知NE
DESCRIPTION OF SYMBOLS 100: Network 101: Server 102: I / O request part 102A: Application 102B: File system 103: Network driver 105: Load distribution module 106: Disk driver 107: Storage network 108: External storage device 201: I / O completion reception part 202: I / O completion notification receiving unit 203: I / O completion unit 204: I / O issuing unit RQ: I / O request MRQ: I / O issue request MRQ
DT: I / O information AD
NC: I / O completion notification NE: I / O error notification NE

Claims (33)

ネットワークと、
ネットワークにそれぞれ接続される複数のサーバと、
前記複数のサーバに接続されるストレージネットワークと、
前記複数のサーバと前記ストレージネットワークを介して共有接続される外部記憶装置とを備え、
前記複数のサーバの各々は、前記ストレージネットワークを介して前記外部記憶装置への入出力を実行し、
前記各サーバは、前記各サーバと前記外部記憶装置との間における負荷状態に応じて、前記ネットワークを介して前記複数のサーバにおける他のサーバのいずれかを制御して、前記他のサーバから前記ストレージネットワークを経由し、前記外部記憶装置に接続する通信経路である通信パスを確保させ、前記外部記憶装置への入出力を実行する
通信パスの冗長化システム。
Network,
Multiple servers each connected to the network;
A storage network connected to the plurality of servers;
An external storage device shared and connected via the storage network with the plurality of servers,
Each of the plurality of servers executes input / output to the external storage device via the storage network,
Each server in response to said load state between the respective servers and the external storage device, and controls one of the other servers in the plurality of servers over the previous SL network, from said another server A communication path redundancy system for securing a communication path as a communication path connected to the external storage device via the storage network and executing input / output to the external storage device.
ネットワークと、
ネットワークにそれぞれ接続される複数のサーバと、
前記複数のサーバに接続されるストレージネットワークと、
前記複数のサーバと前記ストレージネットワークを介して共有接続される外部記憶装置とを備え、
前記複数のサーバは、第1のサーバを含み、
前記第1のサーバは、前記ネットワークを介して前記複数のサーバのいずれか1つのサーバを制御して、前記サーバから前記ストレージネットワークを経由し、前記外部記憶装置に接続する通信経路である通信パスを確保させ、前記外部記憶装置への入出力を実行し、
前記第1のサーバは、前記入出力を実行するためのI/O要求を発行し、
前記I/O要求は、前記通信パスの情報であるパス情報を含み、
前記第1のサーバは、前記I/O要求の複数のパス情報を参照して、最適な通信パスを選択し、前記最適な通信パスを確保して前記外部記憶装置との入出力を実行する
通信パスの冗長化システム。
Network,
Multiple servers each connected to the network;
A storage network connected to the plurality of servers;
An external storage device shared and connected via the storage network with the plurality of servers,
The plurality of servers includes a first server;
The first server controls any one of the plurality of servers via the network, and is a communication path that is a communication path that connects the server to the external storage device via the storage network. And execute input / output to the external storage device,
The first server issues an I / O request for executing the input / output,
The I / O request includes path information that is information of the communication path,
The first server refers to a plurality of path information of the I / O request, selects an optimum communication path, secures the optimum communication path, and executes input / output with the external storage device Communication path redundancy system.
請求項2に記載の通信パスの冗長化システムにおいて、
前記複数のサーバは、第2のサーバを含み、
前記第1のサーバは、前記最適な通信パスとして前記第2のサーバと前記外部記憶装置との間の通信パスを選択し、前記第2のサーバに入出力を実行させるための情報であるI/O情報を前記I/O要求から抽出し、前記I/O情報を前記ネットワークを介して前記第2のサーバに送信し、
前記第2のサーバは、前記I/O情報から前記入出力を実行するためのI/O要求を発行し、前記I/O要求の複数のパス情報を参照して、前記第2のサーバと前記外部記憶装置との間の最適な通信パスを選択し、前記最適な通信パスを確保して前記入出力を実行する
通信パスの冗長化システム。
In the communication path redundancy system according to claim 2,
The plurality of servers includes a second server;
The first server is information for selecting a communication path between the second server and the external storage device as the optimal communication path, and causing the second server to perform input / output. / O information is extracted from the I / O request, and the I / O information is transmitted to the second server via the network;
The second server issues an I / O request for executing the input / output from the I / O information, refers to a plurality of path information of the I / O request, and A communication path redundancy system that selects an optimum communication path with the external storage device, secures the optimum communication path, and executes the input / output.
請求項3に記載の通信パスの冗長化システムにおいて、
前記I/O要求はWrite要求であり、前記第1のサーバは、前記I/O要求に基づくWriteデータを前記第2のサーバに送信し、
前記第2のサーバは、前記入出力において前記Writeデータを、前記I/O情報に対応する前記外部記憶装置のアドレス上に書き込む
通信パスの冗長化システム。
In the communication path redundancy system according to claim 3,
The I / O request is a write request, and the first server transmits write data based on the I / O request to the second server;
The communication path redundancy system, wherein the second server writes the write data on the input / output on the address of the external storage device corresponding to the I / O information.
請求項3に記載の通信パスの冗長化システムにおいて、
前記I/O要求はWrite要求以外の要求であり、
前記第2のサーバは、前記入出力において前記I/O要求に基づくReadデータを、前記I/O情報に対応する前記外部記憶装置のアドレス上から読み取り、前記第1のサーバに送信する
通信パスの冗長化システム。
In the communication path redundancy system according to claim 3,
The I / O request is a request other than the Write request,
The second server reads Read data based on the I / O request in the input / output from the address of the external storage device corresponding to the I / O information, and transmits the read data to the first server.
Communication path redundancy system.
請求項3から5いずれか1項に記載の通信パスの冗長化システムにおいて、
前記入出力が終了すると前記第2のサーバは、前記ネットワークを介して前記第1のサーバに入出力が終了したことを示すI/O完了通知を送信する
通信パスの冗長化システム。
In the communication path redundancy system according to any one of claims 3 to 5,
When the input / output is completed, the second server transmits an I / O completion notification indicating that the input / output is completed to the first server via the network.
請求項3から6いずれか1項に記載の通信パスの冗長化システムにおいて、
前記入出力が完了せず、エラーとなる場合、前記第2のサーバは前記I/O要求のパス情報を更新し、
通信パスを変更することでエラーを回避できると判断すると、前記第2のサーバは、前記I/O要求に基づいて、前記第2のサーバと前記外部記憶装置との間の最適な通信パスを選択し、前記最適な通信パスを確保して前記入出力を実行する
通信パスの冗長化システム。
In the communication path redundancy system according to any one of claims 3 to 6,
When the input / output is not completed and an error occurs, the second server updates the path information of the I / O request,
If it is determined that the error can be avoided by changing the communication path, the second server determines an optimum communication path between the second server and the external storage device based on the I / O request. A communication path redundancy system that selects and executes the input / output while securing the optimum communication path.
請求項7に記載の通信パスの冗長化システムにおいて、
前記第2のサーバは、前記最適な通信パスを選択できない場合、前記入出力の結果がエラーであることを示すI/Oエラー通知を、前記ネットワークを介して前記第1のサーバに送信する
通信パスの冗長化システム。
In the communication path redundancy system according to claim 7,
When the second server cannot select the optimum communication path, the second server transmits an I / O error notification indicating that the input / output result is an error to the first server via the network. Path redundancy system.
請求項7又は8に記載の通信パスの冗長化システムにおいて、
前記入出力が完了せず、エラーとなる場合、前記第2のサーバは前記I/O要求のパス情報を更新し、
通信パスを変更することでエラーを回避できない場合、前記第2のサーバは、前記ネットワークを介して前記入出力の結果がエラーであることを示すI/Oエラー通知を前記第1のサーバに送信する
通信パスの冗長化システム。
The communication path redundancy system according to claim 7 or 8,
When the input / output is not completed and an error occurs, the second server updates the path information of the I / O request,
If the error cannot be avoided by changing the communication path, the second server sends an I / O error notification indicating that the input / output result is an error to the first server via the network. Yes Communication path redundancy system.
請求項8又は9に記載の通信パスの冗長化システムにおいて、
前記第1のサーバは、前記I/Oエラー通知を受信すると、前記I/O要求のパス情報を更新し、前記I/O要求に基づいて、新たに前記複数のサーバのうちいずれか一つのサーバと前記外部記憶装置との間の最適な通信パスを選択し、前記通信パスを確保して前記入出力を実行する
通信パスの冗長化システム。
In the communication path redundancy system according to claim 8 or 9,
When the first server receives the I / O error notification, the first server updates path information of the I / O request, and based on the I / O request, newly adds one of the plurality of servers. A communication path redundancy system that selects an optimal communication path between a server and the external storage device, secures the communication path, and executes the input / output.
請求項10に記載の通信パスの冗長化システムにおいて、
前記第1のサーバは、前記最適な通信パスとして前記第1のサーバと前記外部記憶装置との間の通信パスを選択し、前記通信パスを確保して前記入出力を実行する
通信パスの冗長化システム。
In the communication path redundancy system according to claim 10,
The first server selects a communication path between the first server and the external storage device as the optimal communication path, secures the communication path, and executes the input / output. Communication path redundancy System.
請求項11に記載の通信パスの冗長化システムにおいて、
前記入出力が完了せず、エラーとなる場合、前記第1のサーバは前記I/O要求のパス情報を更新し、
通信パスを変更することでエラーを回避できる場合、前記第2のサーバは前記I/O要求に基づいて、前記第1のサーバと前記外部記憶装置との間の最適な通信パスを選択し、前記最適な通信パスを確保して前記入出力を実行する
通信パスの冗長化システム。
In the communication path redundancy system according to claim 11,
When the input / output is not completed and an error occurs, the first server updates the path information of the I / O request,
If the error can be avoided by changing the communication path, the second server selects an optimal communication path between the first server and the external storage device based on the I / O request, A communication path redundancy system that secures the optimum communication path and executes the input / output.
請求項12に記載の通信パスの冗長化システムにおいて、
前記第1のサーバは、前記最適な通信パスを選択できない場合、前記入出力を終了する
通信パスの冗長化システム。
The communication path redundancy system according to claim 12,
The communication path redundancy system, wherein the first server terminates the input / output when the optimum communication path cannot be selected.
ネットワークを介して他サーバに接続されるネットワークドライバと、
自サーバからストレージネットワークを介して外部記憶装置への入出力を実行するためのI/O要求を発行するI/O要求部と、
前記ネットワークドライバと前記I/O要求部とに接続される負荷分散モジュールとを備え、
前記負荷分散モジュールは、
前記I/O要求に基づき、前記外部記憶装置までの最適な通信パスを選択し、前記最適な通信パスのパス情報を更新したI/O要求を発行するI/O発行部を備え、
前記最適な通信パスが、前記他サーバと前記外部記憶装置との間の通信パスである場合、
前記I/O発行部は、前記他サーバに前記入出力を実行させるための情報であるI/O情報を前記I/O要求から抽出し、前記I/O情報を前記他サーバへ送付するための送付要求をネットワークドライバに対し発行し、
前記ネットワークドライバは、前記送付要求に基づき前記I/O情報を前記他サーバに送信して、前記他サーバに前記通信パスを確保させて前記入出力を実行する
サーバ。
A network driver connected to another server via the network;
An I / O request unit that issues an I / O request for executing input / output from the local server to the external storage device via the storage network;
A load distribution module connected to the network driver and the I / O request unit;
The load balancing module is
An I / O issuing unit that selects an optimum communication path to the external storage device based on the I / O request and issues an I / O request in which path information of the optimum communication path is updated;
When the optimum communication path is a communication path between the other server and the external storage device,
The I / O issuing unit extracts I / O information, which is information for causing the other server to execute the input / output, from the I / O request, and sends the I / O information to the other server. Issue a send request to the network driver,
The network driver transmits the I / O information to the other server based on the sending request, causes the other server to secure the communication path, and executes the input / output.
請求項14に記載のサーバにおいて、
前記ストレージネットワークを介して前記外部記憶装置に接続されるディスクドライバを備え、
前記負荷分散モジュールは、前記ネットワークと前記I/O発行部とに接続されるI/O要求受付部を備え、
前記ネットワークドライバは、前記ネットワークを経由して他サーバから受信する前記I/O情報を前記I/O要求受付部に送信し、
前記I/O要求受付部は、前記I/O情報に基づいたI/O要求を前記I/O発行部に発行し、
前記I/O発行部は、前記I/O要求のパス情報を参照し、自サーバと前記外部記憶装置との間の最適な通信パスを選択し、前記最適な通信パスのパス情報を更新したI/O要求を前記ディスクドライバに発行し、
前記ディスクドライバは、前記I/O要求に基づき前記最適な通信パスを確保して前記他サーバから前記外部記憶装置への入出力を実行する
サーバ。
The server according to claim 14, wherein
A disk driver connected to the external storage device via the storage network;
The load distribution module includes an I / O request accepting unit connected to the network and the I / O issuing unit,
The network driver transmits the I / O information received from another server via the network to the I / O request reception unit,
The I / O request accepting unit issues an I / O request based on the I / O information to the I / O issuing unit,
The I / O issuing unit refers to the path information of the I / O request, selects an optimal communication path between the server and the external storage device, and updates the path information of the optimal communication path Issue an I / O request to the disk driver;
The disk driver is a server that secures the optimum communication path based on the I / O request and executes input / output from the other server to the external storage device.
請求項15に記載のサーバにおいて、
負荷分散モジュールは、前記ディスクドライバが前記入出力を終了すると、入出力が終了したことを示すI/O完了通知を前記ネットワークドライバに対し発行するI/O完了部を更に備え、
前記ネットワークドライバは、前記他サーバに対し前記I/O完了通知を送信する
サーバ。
The server according to claim 15, wherein
The load distribution module further includes an I / O completion unit that issues an I / O completion notification indicating that the input / output is completed to the network driver when the disk driver completes the input / output,
The network driver is a server that transmits the I / O completion notification to the other server.
請求項15又は16に記載のサーバにおいて、
前記ディスクドライバは、前記入出力が完了せず、エラーである場合、前記エラーの内容を含むI/Oエラー通知を、前記I/O完了部に発行し、
前記I/O完了部は、前記I/Oエラー通知を参照し、通信パスを変更することでエラーを回避できると判定すると、前記ディスクドライバに発行されたI/O要求のパス情報を更新したI/O要求を前記I/O発行部に発行し、
前記I/O発行部は、前記I/O要求のパス情報を参照し、自サーバから前記外部記憶装置までの最適な通信パスを選択し、前記最適な通信パスのパス情報を更新したI/O要求を前記ディスクドライバに発行し、
前記ディスクドライバは、前記I/O要求に基づき前記最適な通信パスを確保し、前記他サーバから前記外部記憶装置への入出力を実行する
サーバ。
The server according to claim 15 or 16,
The disk driver issues an I / O error notification including the content of the error to the I / O completion unit when the input / output is not completed and is an error,
When the I / O completion unit refers to the I / O error notification and determines that the error can be avoided by changing the communication path, the I / O completion unit updates the path information of the I / O request issued to the disk driver. Issuing an I / O request to the I / O issuing unit,
The I / O issuing unit refers to the path information of the I / O request, selects an optimal communication path from the own server to the external storage device, and updates the path information of the optimal communication path. Issue an O request to the disk driver;
The disk driver secures the optimum communication path based on the I / O request, and executes input / output from the other server to the external storage device.
請求項15から17いずれか1項に記載のサーバにおいて、
前記I/O完了部は、前記I/Oエラー通知を参照し、通信パスを変更することでエラーを回避できないと判定すると、前記ネットワークドライバに前記I/Oエラー通知を発行し、
前記ネットワークドライバは、前記I/Oエラー通知を前記他サーバへ送信する
サーバ。
The server according to any one of claims 15 to 17,
When the I / O completion unit refers to the I / O error notification and determines that the error cannot be avoided by changing the communication path, the I / O completion unit issues the I / O error notification to the network driver,
The network driver is a server that transmits the I / O error notification to the other server.
請求項18に記載のサーバにおいて、
他サーバから受信する前記I/Oエラー通知を参照し、通信パスを変更することでエラーを回避できると判定すると、I/O要求の前記入出力に使用した通信パスのパス情報を更新したI/O要求をI/O発行部に発行し、
前記I/O発行部は、前記I/O要求のパス情報を参照し、自サーバから前記外部記憶装置までの最適な通信パスを選択し、前記最適な通信パスのパス情報を更新したI/O要求を前記ディスクドライバに発行し、
前記ディスクドライバは、前記I/O要求に基づき前記最適な通信パスを確保し、前記自サーバから前記外部記憶装置への入出力を実行する
サーバ。
The server according to claim 18,
If it is determined that the error can be avoided by referring to the I / O error notification received from another server and changing the communication path, the I / O request I / O request used for the input / output of the communication path is updated. Issue the / O request to the I / O issuing department,
The I / O issuing unit refers to the path information of the I / O request, selects an optimal communication path from the own server to the external storage device, and updates the path information of the optimal communication path. Issue an O request to the disk driver;
The disk driver secures the optimum communication path based on the I / O request and executes input / output from the own server to the external storage device.
請求項14に記載のサーバにおいて、
前記ストレージネットワークを介して前記外部記憶装置に接続されるディスクドライバを備え、
前記最適な通信パスが、自サーバと前記外部記憶装置との間の通信パスである場合、
前記I/O発行部は、前記最適な通信パスのパス情報を更新したI/O要求を前記ディスクドライバに発行し、
前記ディスクドライバは、前記I/O要求に基づき前記最適な通信パスを確保し、前記自サーバから前記外部記憶装置への入出力を実行する
サーバ。
The server according to claim 14, wherein
A disk driver connected to the external storage device via the storage network;
When the optimal communication path is a communication path between its own server and the external storage device,
The I / O issuing unit issues an I / O request with updated path information of the optimum communication path to the disk driver;
The disk driver secures the optimum communication path based on the I / O request, and executes input / output from the own server to the external storage device.
請求項20に記載のサーバにおいて、
前記ディスクドライバは、前記入出力が完了せず、エラーである場合、前記エラーの内容を含むI/Oエラー通知を、前記I/O完了部に発行し、
前記I/O完了部は、前記I/Oエラー通知を参照し、通信パスを変更することでエラーを回避できると判定すると、前記I/O要求のパス情報を更新したI/O要求を前記I/O発行部に発行し、
前記I/O発行部は、前記I/O要求のパス情報を参照し、自サーバから前記外部記憶装置までの最適な通信パスを選択し、前記最適な通信パスのパス情報を更新したI/O要求を前記ディスクドライバに発行し、
前記ディスクドライバは、前記I/O要求に基づき前記最適な通信パスを確保し、前記自サーバから前記外部記憶装置への入出力を実行する
サーバ。
The server according to claim 20,
The disk driver issues an I / O error notification including the content of the error to the I / O completion unit when the input / output is not completed and is an error,
When the I / O completion unit refers to the I / O error notification and determines that the error can be avoided by changing the communication path, the I / O completion unit updates the I / O request with updated I / O request path information. Issued to the I / O issuing department,
The I / O issuing unit refers to the path information of the I / O request, selects an optimal communication path from the own server to the external storage device, and updates the path information of the optimal communication path. Issue an O request to the disk driver;
The disk driver secures the optimum communication path based on the I / O request, and executes input / output from the own server to the external storage device.
請求項20に記載のサーバにおいて、
前記ディスクドライバは、前記入出力が完了せず、エラーである場合、前記エラーの内容を含むI/Oエラー通知を、前記I/O完了部に発行し、
前記I/O完了部は、前記I/O要求のパス情報を更新し、前記I/Oエラー通知を参照し、通信パスを変更することでエラーを回避できないと判定すると、前記I/Oエラー通知を前記I/O要求部に発行し、前記入出力を中止する
サーバ。
The server according to claim 20,
The disk driver issues an I / O error notification including the content of the error to the I / O completion unit when the input / output is not completed and is an error,
When the I / O completion unit updates the path information of the I / O request, refers to the I / O error notification, and determines that the error cannot be avoided by changing the communication path, the I / O error A server that issues a notification to the I / O request unit and stops the input / output.
サーバからストレージネットワークを介して外部記憶装置への入出力を実行するためのI/O要求を発行するステップと、
前記I/O要求を参照して他のサーバから前記外部記憶装置との間の通信パスを最適な通信パスとして選択するステップと、
前記他サーバに対し前記I/O要求を発行させるためのI/O情報をネットワークを介して前記他サーバに送信するステップと、
前記他サーバが前記I/O情報を用いてI/O要求を発行するステップと、
前記他サーバが前記I/O要求を基に前記他サーバから前記外部記憶装置の間の最適な通信パスを選択するステップと、
前記最適な通信パスを確保して前記入出力を実行するステップとを備える
通信パスの冗長化方法。
Issuing an I / O request for executing input / output from the server to the external storage device via the storage network;
Selecting a communication path between another server and the external storage device as an optimal communication path with reference to the I / O request;
Transmitting I / O information for causing the other server to issue the I / O request to the other server via a network;
The other server issuing an I / O request using the I / O information;
The other server selecting an optimum communication path from the other server to the external storage device based on the I / O request;
And securing the optimum communication path and executing the input / output.
請求項23に記載の通信パスの冗長方法において、
前記入出力が終了すると前記サーバへ前記入出力が終了したことを示すI/O終了通知を送信するステップを更に備える
通信パスの冗長化方法。
The communication path redundancy method according to claim 23,
A communication path redundancy method, further comprising a step of transmitting an I / O end notification indicating that the input / output has ended to the server when the input / output ends.
請求項23に記載の通信パスの冗長化方法において、
前記入出力が完了しない場合、前記入出力がエラーであることを示すI/Oエラー通知を発行するステップと、
前記I/Oエラー通知に基づき新たなI/O要求を発行するステップと、
前記I/O要求に基づき前記他サーバから前記外部記憶装置との間の新たな最適な通信パスを選択するステップと、
前記最適な通信パスを確保して前記入出力を実行するステップとを備える
通信パスの冗長化方法。
The communication path redundancy method according to claim 23,
If the input / output is not completed, issuing an I / O error notification indicating that the input / output is an error;
Issuing a new I / O request based on the I / O error notification;
Selecting a new optimal communication path from the other server to the external storage device based on the I / O request;
And securing the optimum communication path and executing the input / output.
請求項25に記載の通信パスの冗長化方法において、
前記入出力が完了しない場合、前記I/Oエラー通知を前記入出力の要求元のサーバに送信するステップと、
前記I/Oエラー通知を受信するステップと、
前記I/Oエラー通知に基づき前記外部記憶装置との間の最適な通信パスを選択するステップと、
前記最適な通信パスを確保して前記入出力を実行するステップとを備える
通信パスの冗長化方法。
The communication path redundancy method according to claim 25,
If the I / O is not complete, sending the I / O error notification to the server requesting the I / O;
Receiving the I / O error notification;
Selecting an optimal communication path with the external storage device based on the I / O error notification;
And securing the optimum communication path and executing the input / output.
複数のサーバの各々に搭載され、
ストレージネットワークを介して外部記憶装置への入出力を実行するステップと、
前記外部記憶装置との間における負荷状態に応じて前記外部記憶装置への入出力経路を変更するステップと、
をコンピュータに実行させる負荷分散プログラムにおいて、
前記入出力経路を変更するステップは、
前記外部記憶装置への入出力を実行するためのI/O要求に基づき、ストレージネットワークを介した前記外部記憶装置までの最適な通信パスを選択するステップと、
前記最適な通信パスのパス情報を更新したI/O要求を発行するステップと、
前記複数のサーバにおける他サーバのいずれかに前記入出力を実行させるための情報であるI/O情報を前記I/O要求から抽出し、前記I/O情報をネットワークを介して前記他サーバへ送付するための送付要求を発行するステップと、
前記送付要求に基づき前記I/O情報を前記他サーバに送信するステップと
を備える
負荷分散プログラム。
Mounted on each of multiple servers,
Executing input / output to / from an external storage device via a storage network;
Changing an input / output path to the external storage device according to a load state with the external storage device;
In a load balancing program that causes a computer to execute
The step of changing the input / output path includes:
And selecting the basis of the I / O request to perform input and output to an external storage device, the optimal communication path to the external storage device through the storage network,
Issuing an I / O request with updated path information of the optimum communication path;
The information in that I / O information for executing the input and output to any of the other servers in the plurality of servers is extracted from the I / O request, the I / O information to the other server via the network Issuing a sending request for sending;
Transmitting the I / O information to the other server based on the sending request ;
A load balancing program comprising:
外部記憶装置への入出力を実行するためのI/O要求に基づき、ストレージネットワークを介した前記外部記憶装置までの最適な通信パスを選択するステップと、
前記最適な通信パスのパス情報を更新したI/O要求を発行するステップと、
他サーバに前記入出力を実行させるための情報であるI/O情報を前記I/O要求から抽出し、前記I/O情報をネットワークを介して他サーバへ送付するための送付要求を発行するステップと、
前記送付要求に基づき前記I/O情報を前記他サーバに送信するステップと、
前記ネットワークを経由して前記他サーバから受信する前記I/O情報を基にI/O要求を発行するステップと
前記I/O要求のパス情報を参照し、自サーバと前記外部記憶装置との間の最適な通信パスを選択するステップと、
前記最適な通信パスのパス情報を更新したI/O要求を発行するステップと、
前記I/O要求に基づき前記最適な通信パスを確保して前記他サーバから前記外部記憶装置への入出力を実行するステップと、
をコンピュータに実行させる
負荷分散プログラム。
Selecting an optimal communication path to the external storage device via a storage network based on an I / O request for executing input / output to / from the external storage device;
Issuing an I / O request with updated path information of the optimum communication path;
I / O information, which is information for causing the other server to execute the input / output, is extracted from the I / O request, and a sending request for sending the I / O information to the other server via the network is issued. Steps,
Transmitting the I / O information to the other server based on the sending request;
And issuing an I / O request based on the I / O information received from the other server via the network,
Referring to path information of the I / O request and selecting an optimum communication path between the local server and the external storage device;
Issuing an I / O request with updated path information of the optimum communication path;
Securing the optimum communication path based on the I / O request and executing input / output from the other server to the external storage device;
A load balancing program that causes a computer to execute.
請求項28に記載の負荷分散プログラムにおいて、
前記入出力を終了すると、入出力が終了したことを示すI/O完了通知を前記入出力の要求元のサーバへ発行するステップとをコンピュータに実行させる
負荷分散プログラム。
The load balancing program according to claim 28,
When the input / output is completed, a load distribution program that causes the computer to execute an I / O completion notification indicating that the input / output has ended to the server that requested the input / output.
請求項28又は29に記載の負荷分散プログラムにおいて、
前記入出力が完了せず、エラーである場合、前記エラーの内容を含むI/Oエラー通知を、発行するステップと、
前記I/Oエラー通知を参照し、通信パスを変更することでエラーを回避できると判定するステップと、
エラーとなったI/O要求のパス情報を更新したI/O要求を発行するステップと、
前記I/O要求のパス情報を参照し、自サーバから前記外部記憶装置までの最適な通信パスを選択するステップと、
前記最適な通信パスのパス情報を更新したI/O要求を発行するステップと、
前記I/O要求に基づき前記最適な通信パスを確保し、前記他サーバから前記外部記憶装置への入出力を実行するステップとをコンピュータに実行させる
負荷分散プログラム。
The load distribution program according to claim 28 or 29,
If the input / output is not completed and there is an error, issuing an I / O error notification including the content of the error; and
A step of referring to the I / O error notification and determining that an error can be avoided by changing a communication path;
Issuing an I / O request with updated path information of an I / O request in error;
Referring to the path information of the I / O request and selecting an optimal communication path from the local server to the external storage device;
Issuing an I / O request with updated path information of the optimum communication path;
A load distribution program for causing a computer to execute the step of securing the optimal communication path based on the I / O request and executing input / output from the other server to the external storage device.
請求項28から30いずれか1項に記載の負荷分散プログラムにおいて、
前記I/Oエラー通知を参照し、通信パスを変更することでエラーを回避できないと判定するステップと、
前記I/Oエラー通知を前記他サーバへ送信するステップとをコンピュータに実行させる
負荷分散プログラム。
The load distribution program according to any one of claims 28 to 30,
Determining that the error cannot be avoided by referring to the I / O error notification and changing the communication path;
A load distribution program that causes a computer to execute the step of transmitting the I / O error notification to the other server.
請求項30又は31に記載の負荷分散プログラムにおいて、
前記他ノードから受信する前記I/Oエラー通知を参照し、通信パスを変更することでエラーを回避できると判定するステップと、前記入出力に使用した通信パスのパス情報を更新したI/O要求を発行するステップと、
前記I/O要求のパス情報を参照し、自サーバから前記外部記憶装置までの最適な通信パスを選択するステップと、
前記最適な通信パスのパス情報を更新したI/O要求を発行するステップと、
前記I/O要求に基づき前記最適な通信パスを確保し、前記自サーバから前記外部記憶装置への入出力を実行するステップとをコンピュータに実行させる
負荷分散プログラム。
The load distribution program according to claim 30 or 31,
A step of referring to the I / O error notification received from the other node and determining that an error can be avoided by changing the communication path, and an updated I / O of the path information of the communication path used for the input / output Issuing a request;
Referring to the path information of the I / O request and selecting an optimal communication path from the local server to the external storage device;
Issuing an I / O request with updated path information of the optimum communication path;
A load distribution program for causing the computer to execute the step of securing the optimum communication path based on the I / O request and executing input / output from the local server to the external storage device.
請求項30から32いずれか1項に記載の負荷分散プログラムにおいて、
前記他サーバから受信する前記I/Oエラー通知を参照し、通信パスを変更することでエラーを回避できないと判定するステップと、
I/Oエラー通知を上位に発行するステップとをコンピュータに実行させる
負荷分散プログラム。
The load distribution program according to any one of claims 30 to 32,
Determining that the error cannot be avoided by changing the communication path with reference to the I / O error notification received from the other server;
A load balancing program that causes a computer to execute a step of issuing an I / O error notification to a host.
JP2004313152A 2004-10-27 2004-10-27 Communication path redundancy system, communication path redundancy method, and load distribution program Expired - Fee Related JP4123386B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004313152A JP4123386B2 (en) 2004-10-27 2004-10-27 Communication path redundancy system, communication path redundancy method, and load distribution program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004313152A JP4123386B2 (en) 2004-10-27 2004-10-27 Communication path redundancy system, communication path redundancy method, and load distribution program

Publications (2)

Publication Number Publication Date
JP2006128955A JP2006128955A (en) 2006-05-18
JP4123386B2 true JP4123386B2 (en) 2008-07-23

Family

ID=36723178

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004313152A Expired - Fee Related JP4123386B2 (en) 2004-10-27 2004-10-27 Communication path redundancy system, communication path redundancy method, and load distribution program

Country Status (1)

Country Link
JP (1) JP4123386B2 (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009193106A (en) * 2008-02-12 2009-08-27 Nec Corp Network system, information processor, communication method, and program
JP2009245379A (en) 2008-03-31 2009-10-22 Hitachi Ltd Storage system and control method of storage system
US20130138884A1 (en) * 2011-11-30 2013-05-30 Hitachi, Ltd. Load distribution system
WO2013145293A1 (en) * 2012-03-30 2013-10-03 富士通株式会社 Data control device, data processing system, data control method, data processing method, data control program, data processing program, and recording medium
JP5445627B2 (en) * 2012-06-26 2014-03-19 日本電気株式会社 Network system, information processing apparatus, communication method, and program

Also Published As

Publication number Publication date
JP2006128955A (en) 2006-05-18

Similar Documents

Publication Publication Date Title
US7313636B2 (en) Methods and structure for supporting persistent reservations in a multiple-path storage environment
US6970972B2 (en) High-availability disk control device and failure processing method thereof and high-availability disk subsystem
JP6334643B2 (en) SMB2 scale out
US9134913B2 (en) Methods and structure for improved processing of I/O requests in fast path circuits of a storage controller in a clustered storage system
JP4297747B2 (en) Storage device
JP6734251B2 (en) System, control method thereof, and program
JP4810585B2 (en) Calculator that supports remote scan
US20050091426A1 (en) Optimized port selection for command completion in a multi-ported storage controller system
JP4786255B2 (en) Storage system and storage control method
US20130163593A1 (en) Method of processing data packets
JP4477437B2 (en) Storage device, inter-cluster data communication method, and cluster communication control program thereof
US9336093B2 (en) Information processing system and access control method
US11269802B2 (en) Lightweight proxy for handling SCSI commands in an active array-standby array configuration
JP4474356B2 (en) Computer system and storage virtualization apparatus
JP4123386B2 (en) Communication path redundancy system, communication path redundancy method, and load distribution program
JP5182162B2 (en) Computer system and I / O control method
JP6961045B2 (en) System and its control method and program
JP2006053896A (en) Software transparent expansion of number of fabrics covering multiple processing nodes in computer system
US7574529B2 (en) Addressing logical subsystems in a data storage system
US9746986B2 (en) Storage system and information processing method with storage devices assigning representative addresses to reduce cable requirements
JP4375121B2 (en) Processing agent method in database management system
JP6555029B2 (en) Storage system, storage apparatus and communication method
JP4478000B2 (en) Data mediation method and data mediation device
US20130132692A1 (en) Storage devices and storage systems
US20120079313A1 (en) Distributed memory array supporting random access and file storage operations

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20070918

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070927

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20071029

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

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080422

R150 Certificate of patent or registration of utility model

Ref document number: 4123386

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20110516

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20110516

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20120516

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20120516

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20130516

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20140516

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees