(57)【特許請求の範囲】
【請求項１】
第１の処理装置と第２の処理装置とを備え、接続先装置と通信可能に接続されるクラスタシステムにおいて、前記第２の処理装置に備えられるネットワーク制御装置であって、
前記接続先装置との通信相手が、前記第２の処理装置から前記第１の処理装置へ切り替わった際に、
仮想通信インタフェースを設定する仮想通信インタフェース設定部と、
送信元が前記接続先装置であると擬似的に認識させるダミーパケットを前記仮想通信インタフェースに処理させることで、前記第２の処理装置における前記接続先装置との通信進捗状態を表す通信進捗情報を取得する通信進捗情報取得部と、
取得した前記通信進捗情報を用いて、前記通信進捗情報を含むリセットパケットを生成するリセットパケット生成部と、
前記リセットパケットに基づき、前記第２の処理装置に記憶された前記接続先装置との間における接続記録情報を削除する削除処理部と
を備えることを特徴とする、ネットワーク制御装置。
【請求項２】
前記通信進捗情報が通信の進捗を表すシーケンシャル番号であり、
前記通信進捗情報取得部が、
パラメータとして付与されたシーケンシャル番号を設定した前記ダミーパケットを出力するダミーパケット作成部と、
前記ダミーパケットに対して、前記第２の処理装置において管理する前記通信進捗情報を含む応答パケットを出力する応答出力部と
を備え、
前記リセットパケット生成部が、前記応答パケットに含まれる前記通信進捗情報を用いて、前記リセットパケットを生成する
ことを特徴とする、請求項１記載のネットワーク制御装置。
【請求項３】
前記ダミーパケット作成部が、２つの前記ダミーパケットを出力し、
前記２つのダミーパケットにそれぞれ設定された、前記パラメータとして付与されたシーケンシャル番号が互いに異なっている
ことを特徴とする、請求項２記載のネットワーク制御装置。
【請求項４】
第１の処理装置と第２の処理装置とを備え、接続先装置と通信可能に接続されるクラスタシステムにおいて、
前記接続先装置との通信相手が、前記第２の処理装置から前記第１の処理装置へ切り替わった際に、前記第２の処理装置において、
仮想通信インタフェースを設定する仮想通信インタフェース設定部と、
送信元が前記接続先装置であると擬似的に認識させるダミーパケットを前記仮想通信インタフェースに処理させることで、前記第２の処理装置における前記接続先装置との通信進捗状態を表す通信進捗情報を取得する通信進捗情報取得部と、
取得した前記通信進捗情報を用いて、前記通信進捗情報を含むリセットパケットを生成するリセットパケット生成部と、
前記リセットパケットに基づき、前記第２の処理装置に記憶された前記接続先装置との間における接続記録情報を削除する削除処理部と
を備えることを特徴とする、クラスタシステム。
【請求項５】
第１の処理装置と第２の処理装置とを備え、接続先装置と通信可能に接続されるクラスタシステムにおいて、前記第２の処理装置のプロセッサに、
前記接続先装置との通信相手が、前記第２の処理装置から前記第１の処理装置へ切り替わった際に、
仮想通信インタフェースを設定し、
送信元が前記接続先装置であると擬似的に認識させるダミーパケットを前記仮想通信インタフェースに処理させることで、前記第２の処理装置における前記接続先装置との通信進捗状態を表す通信進捗情報を取得し、
取得した前記通信進捗情報を用いて、前記通信進捗情報を含むリセットパケットを生成し、
前記リセットパケットに基づき、前記第２の処理装置に記憶された前記接続先装置との間における接続記録情報を削除する
処理を実行させることを特徴とする、制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワーク制御装置、クラスタシステムおよび制御プログラムに関する。
【背景技術】
【０００２】
図１０〜図１９は従来のクラスタシステム５００の動作を説明するための図である。
図１０に示すクラスタシステム５００は、クラスタ５０３とイーサスイッチ（Ether Switch）５０２とクライアント５０１とを備え、クライアント５０１は、イーサスイッチ５０２を介してクラスタ５０３に接続されている。
クラスタ５０３は装置５０４と装置５０５とをクラスタ構成として備えている。以下、装置５０４を装置＃１といい、装置５０５を装置＃２という場合がある。クライアント５０１と装置＃１，＃２とはＬＡＮ（Local Area Network）で接続され、このＬＡＮ上にイーサスイッチ５０２が配置されている。
【０００３】
イーサスイッチ５０２はクライアント５０１に対する、これらの装置＃１，＃２の接続を切り換える。すなわち、イーサスイッチ５０２は、クライアント５０１に対して、装置＃１，＃２を選択的に接続する切り換えを行なうものであり、例えば、装置＃１，＃２の一方がダウンすると、他方への切り替えを行なう。
図１０に示す例においては、クライアント５０１のＩＰアドレスが“192.168.0.128”であり、装置＃１，＃２の各ＩＰアドレスが、それぞれ“192.168.0.1”，“192.168.0.2”である。
【０００４】
図１０に示す状態においては、クライアント５０１は装置＃１と接続され、ＴＣＰ（Transmission Control Protocol）通信することでジョブを処理しているものとする。
この状態において、装置＃１がダウンすると、図１１に示すように、装置＃２に装置＃１のＩＰアドレスが追加され（符号Ｐ１参照）、クライアント５０１は、装置＃２と接続される。装置＃１で実施中であったジョブは装置＃２に引き継がれ、クライアント５０１は装置＃２との間でＴＣＰ通信を行ない、処理を続行する。
【０００５】
この際、装置＃２においては、クライアント５０１との間で行なったＴＣＰ通信についての接続記録（ＴＣＰ接続情報）が記憶される（符号Ｐ２参照）。
ＴＣＰにおいては、通信データの管理にシーケンシャル番号と呼ばれる通し番号が用いられており、ＴＣＰ接続情報には、このシーケンシャル番号が含まれる（符号Ｐ３参照）。シーケンシャル番号は、ジョブによって用いられる場合もある。
【０００６】
装置＃１が復旧すると、図１２に示すように、装置＃２が代行していた装置＃１のジョブは装置＃１へ戻される。クライアント５０１は、装置＃１と接続され、この装置＃１との間でＴＣＰ通信を行ない、処理を続行する。
このとき、装置＃２が代行していたジョブが使用していたＴＣＰ接続情報は装置＃２内に残ったままになる（符号Ｐ４参照）。ＴＣＰ接続情報は、ＯＳ（Operating System）内部の管理情報で、外部アプリケーションから変更できないからである。
【０００７】
一方、装置＃１においては、クライアント５０１との通信が再開されることにより、図１３に示すように、クライアント５０１との間の通信が“Sequential no. B”まで進む（符号Ｐ５参照）。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００２−３４４４５０号公報
【特許文献２】特開２００６−２１５６３５号公報
【特許文献３】特表２０１１−５１８４８６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
図１３に示した状態において、装置＃１が、再度、ダウンすると、図１４に示すように、装置＃２は装置＃１で実施中であったジョブを引き継ぐ。
このとき、クラスタ５０３を利用していたクライアント５０１は、装置＃１がダウンする前のＴＣＰ接続情報をそのまま使って装置＃２にアクセスする。なお、このアクセスにおいては、クライアント５０１からのアクセスに用いられるＴＣＰポート番号が、装置＃２に残っているＴＣＰ接続情報と合致する。
【００１０】
ここで、ＴＣＰ通信を行なうクライアント５０１と装置＃２との間において、シーケンシャル番号の齟齬が生じると、ＴＣＰＡＣＫ（acknowledgement）の輻輳が発生する。
前述の如く、ＴＣＰでは通信データの管理にシーケンシャル番号を用いているが、このシーケンシャル番号が期待値と異なった場合に、送信元に対して、期待した番号を持つデータを送信するよう応答（ＡＣＫ）する。
【００１１】
このＡＣＫを受け取った側がそのデータを用意できない場合、自分の管理しているシーケンシャル番号を応答（ＡＣＫ）する。つまり、互いに自分の期待するシーケンシャルを応答し合うことになる。
図１４および図１５に示した例においては、クライアント５０１においては、装置＃１との間で、“Sequential no. B”まで通信が進んでいるので、“B”の次である、“B+1”を付して送信を行なう。
【００１２】
これに対して、装置＃２には、前回、クライアント５０１と通信を行なった際のＴＣＰ接続情報（“Sequential no. A”）が残っているので（図１４の符号Ｐ６参照）、“A”の次である、“A+1”を期待している。
このように、クライアント５０１と装置＃２との間で期待するシーケンス番号に齟齬が生じる。装置＃２はクライアント５０１にSequential no. が“A+1”のデータを送るようＡＣＫ応答を行なう。このＡＣＫを受信したクライアント５０１はその情報を用意できないために、自身の次のSequential no.が“B+1”であることをＡＣＫ送信する。
【００１３】
これらの相互のＡＣＫ応答の繰り返し（輻輳）はＴＣＰの通信タイムアウト（３０秒以上）まで行なわれ、クラスタ切り替えの遅延要因となる。
なお、ＴＣＰ接続情報は、ＯＳのカーネルによって管理される情報であり、容易に削除することはできない。
なお、この遅延はクラスタ構成されたＮＦＳ（Network File System）サーバでは一般的なものである。
【００１４】
また、上述した相互のＡＣＫ応答の繰り返しによる輻輳は、リンクダウン（Link down）を要因とするクラスタ切り替えにおいても発生する。
図１５に示すクラスタシステムにおいては、クライアント５０１が装置＃１と通信しており、“Sequential no. X”まで通信が進んでいる状態を示している（符号Ｐ７参照）。なお、装置＃１は図示しない他のＬＡＮを介して他のクライアント等と接続されており、この他のクライアントからのジョブも処理している。
【００１５】
ここで、図１６に示すように、イーサスイッチ５０２と装置＃１とを接続するＬＡＮがリンクダウンしたとする（符号Ｐ８参照）。なお、装置＃１と他のクライアント（図示省略）とを接続する他のＬＡＮ（図示省略）については異常が生じていないので、装置＃１は、この他のクライアントからのジョブを処理する装置として運用が続行されるものとする。
【００１６】
クラスタ５０３においては、図１７に示すように、装置＃１で使えなくなったＬＡＮのＩＰアドレスが装置＃２に追加され（符号Ｐ９参照）、装置＃１で実施中であったジョブは装置＃２に引き継がれる。これにより、装置＃２においては、クライアント５０１との間の通信が“Sequential no. Y”まで進む（符号Ｐ１０参照）。
その後、図１８に示すように、装置＃１とクライアント５０１とを接続するＬＡＮがリンクアップすると（符号Ｐ１１参照）、装置＃２に設定されていた装置＃１のＩＰアドレスが装置＃１に戻され（符号Ｐ１２参照）、装置＃１による運用が再開される。
【００１７】
このとき、装置＃２が代行していたジョブが使用していたＴＣＰ接続情報は装置＃２内に残ったままになる（符号Ｐ１３参照）。
ここで、クラスタ５０３を利用していたクライアント５０１においては、装置＃２との間で、“Sequential no. Y”まで通信が進んでいるので、TCP Sequential no.として“Y”の次である、“Y+1”を付して送信を行なう。
【００１８】
これに対して、図１９に示すように、装置＃１には、前回、クライアント５０１と通信を行なった際のＴＣＰ接続情報（“Sequential no. = X”）が残っているので（符号Ｐ１４参照）、TCP Sequential no.として、“X”の次である、“X+1”を期待している。
従って、ＴＣＰ通信を行なうクライアント５０１と装置＃１との間において、シーケンシャル番号の齟齬が生じ、ＴＣＰＡＣＫの輻輳が発生する。
【００１９】
このように、従来のクラスタシステムにおいては、クラスタ５０３を構成する装置＃１，＃２とクライアント５０１との間で、通信再開時のシーケンシャル番号の不一致によりＴＣＰＡＣＫの輻輳が発生するという課題がある。
１つの側面では、クラスタシステムにおける処理装置の切り替え時に輻輳の発生を抑止できるようにすることを目的とする。
【課題を解決するための手段】
【００２０】
このため、このネットワーク制御装置は、第１の処理装置と第２の処理装置とを備え、接続先装置と通信可能に接続されるクラスタシステムにおいて、前記第２の処理装置に備えられるネットワーク制御装置であって、前記接続先装置との通信相手が、前記第２の処理装置から前記第１の処理装置へ切り替わった際に、仮想通信インタフェースを設定する仮想通信インタフェース設定部と、送信元が前記接続先装置であると擬似的に認識させるダミーパケットを前記仮想通信インタフェースに処理させることで、前記第２の処理装置における前記接続先装置との通信進捗状態を表す通信進捗情報を取得する通信進捗情報取得部と、取得した前記通信進捗情報を用いて、前記通信進捗情報を含むリセットパケットを生成するリセットパケット生成部と、前記リセットパケットに基づき、前記第２の処理装置に記憶された前記接続先装置との間における接続記録情報を削除する削除処理部とを備える。
【発明の効果】
【００２１】
一実施形態によれば、クラスタシステムにおける処理装置の切り替え時に輻輳の発生を抑止できるようにする。
【図面の簡単な説明】
【００２２】
【図１】実施形態の一例としてのストレージシステムのハードウェア構成を示す図である。
【図２】実施形態の一例としてのストレージシステムの機能構成を示す図である。
【図３】実施形態の一例としてのストレージシステムにおける仮想ＮＩＣによるパケットの出力時の処理を説明するためのフローチャートである。
【図４】実施形態の一例としてのストレージシステムにおけるＴＣＰ接続情報削除に関する常駐処理を説明するためのフローチャートである。
【図５】実施形態の一例としてのストレージシステムにおけるＴＣＰ接続情報削除に関する常駐処理を説明するためのフローチャートである。
【図６】実施形態の一例としてのストレージシステムにおけるＴＣＰ接続情報削除処理を説明するためのフローチャートである。
【図７】実施形態の一例としてのストレージシステムにおけるＴＣＰ接続情報削除サブルーチンによる処理を説明するためのフローチャートである。
【図８】実施形態の一例としてのストレージシステムにおけるカーネルのパケット登録処理（１）を説明するためのフローチャートである。
【図９】実施形態の一例としてのストレージシステムにおけるカーネルのパケット登録処理（２）を説明するためのフローチャートである。
【図１０】従来のクラスタシステムの動作を説明するための図である。
【図１１】従来のクラスタシステムの動作を説明するための図である。
【図１２】従来のクラスタシステムの動作を説明するための図である。
【図１３】従来のクラスタシステムの動作を説明するための図である。
【図１４】従来のクラスタシステムの動作を説明するための図である。
【図１５】従来のクラスタシステムの動作を説明するための図である。
【図１６】従来のクラスタシステムの動作を説明するための図である。
【図１７】従来のクラスタシステムの動作を説明するための図である。
【図１８】従来のクラスタシステムの動作を説明するための図である。
【図１９】従来のクラスタシステムの動作を説明するための図である。
【発明を実施するための形態】
【００２３】
以下、図面を参照して本ネットワーク制御装置、クラスタシステムおよび制御プログラムに係る実施の形態を説明する。ただし、以下に示す実施形態はあくまでも例示に過ぎず、実施形態で明示しない種々の変形例や技術の適用を排除する意図はない。すなわち、本実施形態を、その趣旨を逸脱しない範囲で種々変形して実施することができる。又、各図は、図中に示す構成要素のみを備えるという趣旨ではなく、他の機能等を含むことができる。
【００２４】
（Ａ）構成
図１は実施形態の一例としてのストレージシステム１のハードウェア構成を示す図、図２はその機能構成を示す図である。
実施形態の一例としてのストレージシステム１は、図１に示すように、通信線５０を介して複数（図１に示す例では２つ）のストレージ装置１０−１，１０−２が通信可能に接続されている。これらの、ストレージ装置１０−１，１０−２は地理的に離れた場所に配置されていてもよい。
【００２５】
これらのストレージ装置１０−１，１０−２は同様の構成を備える。以下、ストレージ装置を示す符号としては、複数のストレージ装置のうち１つを特定する必要があるときには符号１０−１，１０−２を用いるが、任意のストレージ装置を指すときには符号１０を用いる。
そして、これらのストレージ装置１０−１，１０−２はクラスタシステムを構成している。すなわち、ストレージ装置１０−１，１０−２は二重化されており、一方になんらかの異常が生じた場合に、他方がその動作を引き継ぐことでダウンタイムを短くして信頼性を向上させている。
【００２６】
ストレージ装置１０−１，１０−２には、それぞれイーサスイッチ３を介してクライアント２が接続されている。
クライアント２は、接続されたストレージ装置１０−１，１０−２のボリューム（論理ボリューム，仮想ボリューム）にデータの書き込みや読み出しを行なう機能を備える。
クライアント２は、情報処理装置であり、例えば、図示しない、ＣＰＵ（Central Processing Unit）やメモリ等を備えたコンピュータである。
【００２７】
イーサスイッチ３はクライアント２に対する、これらのストレージ装置１０−１，１０−２の接続を切り換える。すなわち、イーサスイッチ３は、クライアント２に対して、装置１０−１，１０−２を選択的に接続する切り換えを行なうものであり、例えば、一方のストレージ装置１０がダウンすると、他方のストレージ装置１０への切り替えを行なう。
ストレージ装置１０−１，１０−２は、例えば、ＮＡＳボリュームを管理し、クライアント２に対して記憶領域を提供する。
【００２８】
各ストレージ装置１０は、それぞれ１以上（本実施形態では１つ）のＣＭ（情報処理装置）１１１を備える。
通信線５０は、データを通信可能に接続する通信回線であって、例えばＴＣＰ／ＩＰ（Internet Protocol）等の規格に基づきデータ転送を実現する。
各ストレージ装置１０は、図１に示すように、ＣＭ（Controller Module）１１１及びディスクエンクロージャ１３０を備える。
【００２９】
ＣＭ１１１はストレージ装置１０における種々の制御を行なうものであり、クライアント２からのストレージアクセス要求（アクセス制御信号）に従って、ディスクエンクロージャ１３０のディスク装置１３１へのアクセス制御等、各種制御を行なう。各ＣＭ１１１は互いに同様のハードウェア構成を有する。
ディスクエンクロージャ１３０は、１以上のディスク装置１３１を備える。ディスク装置１３１は、例えば、ＨＤＤ（Hard Disk Drive）やＳＳＤ（Solid State Drive）である。ストレージ装置１０においては、このＨＤＤ１３１の記憶領域が論理ボリュームに対して割り当てられる。また、複数のＨＤＤ１３１を用いてＲＡＩＤ（Redundant Arrays of Inexpensive Disks）を構成してもよい。
【００３０】
ＣＭ１１１は、図１に示すように、ＣＡ（Communication Adapter）１２４，ＲＡ（Remote Adapter）１２５，ＣＰＵ１１０，ＤＡ（Device Adapter）１２６及びメモリ１２７を備える。なお、図１に示す例においては、各ストレージ装置１０に１つのＣＭ１１１が備えられているが、これに限定されるものではなく、それぞれ２つ以上のＣＭ１１１を備えてもよい。
【００３１】
ＣＡ１２４は、クライアント２と通信可能に接続するインタフェースコントローラであり、例えば、ＬＡＮインタフェースのＮＩＣ（Network Interface Card）を備える。ＣＭ１１１は、このＣＡ１２４によりＬＡＮを介してクライアント２等と接続され、ＩＯコマンドの受信やデータの送受信等を行なう。
ＲＡ１２５は、通信回線５０を介して他のストレージ装置１０と通信可能に接続（リモート接続）するインタフェースコントローラである。通信線５０は、例えば、ＰＣＩｅ（Peripheral Component Interconnect Express）バスであり、ＲＡ１２５は、ＰＣＩｅバスアダプタである。
【００３２】
すなわち、ストレージ装置１０−１のＣＭ１１１とストレージ装置１０−２のＣＭ１１１とは、通信線５０を介して通信可能に接続され。これらのＣＭ１１１，１１１および通信線５０により、通信システムが構成されている。
ＤＡ１２６は、ディスクエンクロージャ１３０と通信可能に接続するインタフェースコントローラであり、例えば、ファイバチャネルアダプタである。
【００３３】
メモリ１２７はＲＯＭ（Read Only Memory）及びＲＡＭ（Random Access Memory）を含む記憶装置である。メモリ１２７のＲＯＭには、後述するＴＣＰ接続情報削除処理に係るソフトウェアプログラム（制御プログラム）やこのプログラム用のデータ類が書き込まれている。メモリ１２７上のソフトウェアプログラムは、ＣＰＵ１１０に適宜読み込まれて実行される。又、メモリ１２７のＲＡＭは、一次記憶メモリあるいはワーキングメモリとして利用される。
【００３４】
また、メモリ（ＲＡＭ）１２７における所定の領域には、後述するＴＣＰ接続情報６０，ルーティングテーブル２２およびＡＲＰテーブル２３が格納される。
メモリ１２７のＲＯＭには、ＣＰＵ１１０が実行するプログラムや種々のデータが格納されている。
ＣＰＵ１１０は、種々の制御や演算を行なう処理装置であり、メモリ１２７等に格納されたプログラムを実行することにより、種々の機能を実現する。
【００３５】
そして、ストレージ装置１０のＣＰＵ１１０は、図２に示すように、ＴＣＰ接続情報削除処理部１１として機能する。
なお、ＴＣＰ接続情報削除処理部１１としての機能を実現するためのプログラム（制御プログラム）は、例えばフレキシブルディスク，ＣＤ（ＣＤ−ＲＯＭ，ＣＤ−Ｒ，ＣＤ−ＲＷ等），ＤＶＤ（ＤＶＤ−ＲＯＭ，ＤＶＤ−ＲＡＭ，ＤＶＤ−Ｒ，ＤＶＤ＋Ｒ，ＤＶＤ−ＲＷ，ＤＶＤ＋ＲＷ，ＨＤ  ＤＶＤ等），ブルーレイディスク，磁気ディスク，光ディスク，光磁気ディスク等の、コンピュータ読取可能な記録媒体に記録された形態で提供される。そして、コンピュータはその記録媒体から図示しない読取装置を介してプログラムを読み取って、内部記憶装置または外部記憶装置に転送し格納して用いる。又、そのプログラムを、例えば磁気ディスク，光ディスク，光磁気ディスク等の記憶装置（記録媒体）に記録しておき、その記憶装置から通信経路を介してコンピュータに提供するようにしてもよい。
【００３６】
ＴＣＰ接続情報削除処理部１１としての機能を実現する際には、内部記憶装置（本実施形態ではメモリ１２７）に格納されたプログラム（制御プログラム）がコンピュータのマイクロプロセッサ（本実施形態ではＣＰＵ１１０）によって実行される。このとき、記録媒体に記録されたプログラムをコンピュータが読み取って実行するようにしてもよい。
なお、以下、ＯＳがＬｉｎｕｘ（登録商標）である例について示す。
【００３７】
ＴＣＰ接続情報削除処理部１１は、クラスタ切り替えによってＩＰアドレスが他ストレージ装置１０に移行するイベントが発生した場合に、移行元（切り替え元）のストレージ装置１０において、不要となったＴＣＰ接続情報６０を削除する処理を実現する。
なお、最初に一方のストレージ装置１０（例えば、ストレージ装置１０−１）から、他のストレージ装置１０（例えば、ストレージ装置１０−２）へ切り替えが発生する場合等においては、ＡＣＫ輻輳は発生しない。ストレージ装置１０にＴＣＰ接続情報が残っていないからである。
【００３８】
ＡＣＫ輻輳が発生するためには、ＴＣＰ接続情報が残る必要があり、かつ、そのＴＣＰ接続情報と新しいＴＣＰ通信においてＩＰアドレスおよびＴＣＰポート番号が合致する必要がある。通常のＴＣＰ通信ではクライアント２側のポート番号は多数のプールから選択されるため、合致する確率は低い。しかし、ＮＦＳクライアントの場合、クライアント側ポート番号は数個のプールの範囲で選択されるため、合致する可能性が高い。
【００３９】
ＡＣＫ輻輳が発生しないケースであっても、ＴＣＰ接続情報は同一ＩＰアドレス、同一ポート番号の新しいＴＣＰ接続要求が発生するまで残り続けることがある(一定時間経過で消えるケースは注意４参照)。これは、システムのメモリ資源を占有することを意味する。
ＴＣＰ接続情報６０は、外部装置（本実施形態においてはクライアント２）との間で行なわれた通信に関する接続記録情報である。ＴＣＰ接続情報６０は、図１１等に示したように、通信先のクライアント２のＩＰアドレスおよびポート番号と、自身（自ＣＭ１１１のクライアント２との通信に用いられたＣＡ１２４）のＩＰアドレスおよびポート（port）番号との組み合わせに対して、その通信の進捗を表すシーケンシャル番号（通信進捗情報）を関連付けることにより構成されている。
【００４０】
ＴＣＰ接続情報６０は、例えばＬｉｎｕｘのnetstatコマンドを実行することにより参照できる情報を備える。
すなわち、ＴＣＰ接続情報６０は、ＴＣＰによる通信が行なわれる装置（例えば、クライアント２とストレージ装置１０）の組み合わせ毎に備えられる。
ＴＣＰ接続情報削除処理部１１は、図２に示すように、仮想ＮＩＣ（Network Interface Card）設定部１２，テーブル編集部１３，ダミーパケット作成部１４，リセットパケット出力部２０，ダミーパケット受信処理部１６，ＴＣＰ接続情報照合部１７，シーケンシャル番号確認部１８，ＡＣＫパケット出力部１９およびＲＳＴパケット処理部２１としての機能を備える。
【００４１】
仮想ＮＩＣ設定部（仮想通信インタフェース設定部）１２は、仮想ＮＩＣ（仮想通信インタフェース）を一つ用意する。仮想ＮＩＣは仮想的に設けられたＮＩＣであり、仮想ＮＩＣはＯＳに対してＮＩＣがあるように振る舞う。
仮想ＮＩＣは、実際には存在しないＮＩＣである。そのため、ハードウェア的にはデータの送信も受信も不可能である。以下、仮想ＮＩＣを仮想ＮＩＣドライバという場合がある。
【００４２】
本ストレージシステム１においては、この仮想ＮＩＣドライバを使うことで、ＯＳのカーネル１５（図２参照）に対するパケット操作を可能とし、カーネル１５が管理するＴＣＰ接続情報６０の削除を実現する。
ダミーパケット作成部１４は、送信元がクライアント２であると擬似的に認識させるダミーのＴＣＰパケット（ダミーパケット）を作成して、前述した仮想ＮＩＣに受信（処理）させる。
【００４３】
ダミーパケットの作成には、自身（自ＣＭ１１１のクライアント２との通信に用いられているＣＡ１２４）のＩＰアドレスおよびポート番号、接続先であるクライアント２のＩＰアドレスとポート番号、および２種類のシーケンシャル番号をパラメータとして用いる。
ダミーパケット作成部１４は、値が大きく異なる（例えば、桁数が異なる）２種類のシーケンシャル番号を用いて、シーケンシャル番号が大きく異なる２つのダミーパケット（第１のダミーパケット，第２のダミーパケット）を作成する。
【００４４】
例えば、第１のダミーパケットには、シーケンシャル番号として“0x0”を設定し、第２のダミーパケットには、シーケンシャル番号として“0x80000000”を設定する。
ダミーパケットには、以下（ａ）〜（ｈ）の設定をパラメータとして用いる。これにより、接続先であるクライアント２からＴＣＰ ＡＣＫパケットが届いたかのように見えるダミーパケット（第１のダミーパケットおよび第２のダミーパケット）が作成される。
【００４５】
（ａ）送信元ＭＡＣ（Media Access Control）アドレスには、仮想ＮＩＣのＭＡＣアドレスに１を加えた値
（ｂ）送信先ＭＡＣアドレスには、仮想ＮＩＣのＭＡＣアドレス
（ｃ）送信先ポート番号には、自身のポート番号
（ｄ）送信先ＩＰアドレスには、自身のＩＰアドレス
（ｅ）送信元ＩＰアドレスには、接続先ＩＰアドレス
（ｆ）送信元ポート番号には、接続先ポート番号
（ｇ）TCP Flagは、ACKのみ
（ｈ）シーケンシャル番号には、パラメータとして与えられたシーケンシャル番号
ダミーパケット作成部１４は、作成した２種類のダミーパケットを、仮想ＮＩＣのioctl I/F（InterFace）を用いてカーネル１５に登録させる（仮想ＮＩＣの入力Ｉ／Ｆ処理）。
【００４６】
標準的なＬｉｎｕｘのカーネル１５の機能では、任意のパケットをＮＩＣが受信したように見せることはできない。
そこで、カーネル１５が持つ、ＮＩＣドライバのioctl I/Fを利用して、ioctl経由でパケットをカーネル１５に登録する処理を仮想ＮＩＣドライバへ追加する。これにより、任意のパケットを仮想ＮＩＣ経由で受信したように、カーネル１５に処理させることが可能になる。
【００４７】
カーネル１５の処理により、何らかのパケットをＮＩＣが受信したように見せるためにも、カーネル１５が作成したパケットが、後述する「カーネル１５のパケット登録処理」に送られる。
テーブル編集部１３は、ダミーパケット作成部１４によって作成されたダミーパケットを仮想ＮＩＣに受信させるために、ルーティングテーブル２２およびＡＲＰ（Address Resolution Protocol）テーブル２３を編集する。なお、これらのルーティングテーブル２２およびＡＲＰテーブル２３としての情報は、例えば、メモリ１２７の所定の領域に格納されており、カーネル１５によって管理される。
ルーティングテーブル２２は、パケットの送り先等を管理する情報である。テーブル編集部１３は、接続先であるクライアント２のＩＰアドレス宛のパケットが仮想ＮＩＣを通過するように、ルーティングテーブル２２へルーティング情報を追加する。
【００４８】
このルーティングテーブル２２の編集を行なわない場合には、仮想ＮＩＣを通る通信は「接続先ＩＰアドレスが仮想ＮＩＣに割り当てたサブネットアドレスの範囲内」に限定されることになる。その場合、サブネットアドレス外の接続先の場合、仮想ＮＩＣの出力処理を通らず、その結果、仮想ＮＩＣからの出力処理において、後述するリセットパケット出力部２０によるＴＣＰ  ＲＳＴパケットの出力が行なわれなくなってしまう。すなわち、ＴＣＰ接続情報削除処理を実現することができない。
【００４９】
ＡＲＰテーブル２３は、ＩＰアドレスとＭＡＣアドレスとの対応関係を示す情報である。
テーブル編集部１３は、このＡＲＰテーブル２３に、接続先、すなわちクライアント２のＩＰアドレス宛のパケットが、仮想ＮＩＣを通るように設定を行なう。
具体的には、テーブル編集部１３は、ＡＲＰテーブル２３に、仮想ＮＩＣのＭＡＣアドレスとして、ユニークな任意のＭＡＣアドレス（ダミーのＭＡＣアドレス）を追加登録する。また、テーブル編集部１３は、接続先であるクライアント２のＩＰアドレスに対して、仮想ＮＩＣのＭＡＣアドレスに１を加えた値を対応付ける。
【００５０】
カーネル１５はどのＮＩＣから通すかの判断にＡＲＰテーブル２３を参照するので、本ストレージシステム１においては、パケットが仮想ＮＩＣを通るようにするために、このようなＡＲＰテーブル２３の編集が必要とされるのである。
本実施形態においては、ＡＲＰテーブル２３に設定するＭＡＣアドレスは仮想ＮＩＣのＭＡＣアドレスに１を加えたものとしているが、これに限定されるものではなく、適宜変更して実施することができる。
【００５１】
ダミーパケット受信処理部１６は、ダミーパケット作成部１４によって出力されるダミーパケットを受信する。
ＴＣＰ接続情報照合部１７は、ダミーパケット受信処理部１６が受信したダミーパケットについて、カーネル１５が管理しているＴＣＰ接続情報６０と照合する。
例えば、ＴＣＰ接続情報照合部１７は、ダミーパケットの送信元ＩＰアドレスおよびポート番号や、送信先ＩＰアドレスおよびポート番号を、ＴＣＰ接続情報６０に登録されている情報と照合する。
【００５２】
なお、ダミーパケットの情報がＴＣＰ接続情報照合部１７に登録されていないものである場合には、当該パケットは無視される。
前述の如く、ダミーパケットは、クライアント２から送信されたかのように認識されるものであるので、正しく作成されたダミーパケットについては無視されることはない。
シーケンシャル番号確認部１８は、ダミーパケット受信処理部１６が受信したダミーパケットのシーケンシャル番号を、カーネル１５が管理している前回処理時のシーケンシャル番号と比較する。
【００５３】
シーケンシャル番号確認部１８は、受信したダミーパケットのシーケンシャル番号を抽出し、メモリ１２７等の所定の領域に記憶する。そして、シーケンシャル番号確認部１８は、受信したダミーパケット（第２のダミーパケット）のシーケンシャル番号を、記憶している先に受信したダミーパケット（第１のダミーパケット）のシーケンシャル番号と比較する。
【００５４】
本ストレージシステム１においては、前述の如く、ダミーパケット作成部１４により、シーケンシャル番号が大きく異なる２つのダミーパケットが作成され、これらのダミーパケットが連続して送信される。従って、少なくとも、ダミーパケット受信処理部１６が連続して受信した２つのダミーパケットにおいて、シーケンシャル番号が一致することはない。
【００５５】
ＡＣＫパケット出力部１９は、シーケンシャル番号確認部１８による確認の結果、ダミーパケット（第２のダミーパケット）のシーケンシャル番号が、前回処理したダミーパケット（第１のダミーパケット）のシーケンシャル番号と不一致である場合に、正しいシーケンシャル番号を付加したＡＣＫパケットを仮想ＮＩＣから出力する。
なお、ダミーパケットのシーケンシャル番号が前回処理時のシーケンシャル番号と一致する場合には、ＡＣＫパケットの送信処理は行なわれない。
【００５６】
ここで、ダミーパケット受信処理部１６が受信したダミーパケットのシーケンシャル番号が、先に受信したパケットのシーケンシャル番号と偶然に一致する場合が考えられる。しかしながら、前述の如く、少なくとも、ダミーパケット受信処理部１６が連続して受信した２つのダミーパケット（第１のダミーパケット，第２のダミーパケット）において、シーケンシャル番号が一致することはないので、２つのダミーパケットを受信することで、シーケンシャル番号の不一致が必ず検出されることとなる。従って、ＡＣＫパケット出力部１９は、正しいシーケンシャル番号を付加したＡＣＫパケットを確実に出力することになる。
【００５７】
従って、前述したダミーパケット作成部１４は、送信元がクライアント２であると擬似的に認識させるダミーパケットを作成し、仮想ＮＩＣに受信させることで、ストレージ装置１０−２におけるクライアント２との通信進捗状態を表すシーケンシャル情報（通信進捗情報）を取得する通信進捗情報取得部として機能する。
リセットパケット出力部２０は、ＡＣＫパケット出力部１９によって出力されたＡＣＫパケットから、シーケンシャル番号を抽出する。そして、このシーケンシャル番号と、自身のＩＰアドレス（local）および接続先であるクライアント２のＩＰアドレス（foreign）を含むＴＣＰ  ＲＳＴパケット（リセットパケット）を作成し、ＮＩＣの受信処理に渡す。
【００５８】
ＴＣＰ  ＲＳＴパケットは、ＯＳのカーネル１５に対してＴＣＰ接続情報６０における削除対象を通知する。すなわち、ＴＣＰ  ＲＳＴパケットに含まれる、シーケンシャル番号およびＩＰアドレス（local，foreign）にが、ＴＣＰ接続情報６０における削除対象を表す。
カーネル１５（ＲＳＴパケット処理部２１）は、ＴＣＰ  ＲＳＴパケットを受信すると、ＴＣＰ  ＲＳＴパケットによって通知される削除対象のＴＣＰ接続情報６０を削除する。
【００５９】
従って、上述したリセットパケット出力部２０は、取得したシーケンシャル番号（通信進捗情報）を用いて、このシーケンシャル番号を含むＴＣＰ  ＲＳＴパケット（リセットパケット）を生成するリセットパケット生成部として機能する。
ＲＳＴパケット処理部２１は、リセットパケット出力部２０から出力されるＴＣＰ  ＲＳＴパケットに基づき、通信ペア毎に備えられた複数のＴＣＰ接続情報６０の中から、ＴＣＰ  ＲＳＴパケットに含まれる、シーケンシャル番号およびＩＰアドレス（local，foreign）によって特定されるＴＣＰ接続情報６０を削除する（ＲＳＴパケット処理）。
【００６０】
すなわち、ＲＳＴパケット処理部２１は、ＴＣＰ  ＲＳＴパケットに含まれるシーケンシャル番号およびＩＰアドレスをＴＣＰ接続情報６０と照合し、これらのシーケンシャル番号およびＩＰアドレスが一致するＴＣＰ接続情報６０を削除する。
なお、上述した、ダミーパケット受信処理部１６，ＴＣＰ接続情報照合部１７，シーケンシャル番号確認部１８，ＡＣＫパケット出力部１９およびＲＳＴパケット処理部２１としての機能は、ＯＳのカーネル１５に備えられる機能により実現される。
【００６１】
すなわち、カーネル１５における、ダミーパケット受信処理部１６，ＴＣＰ接続情報照合部１７，シーケンシャル番号確認部１８，ＡＣＫパケット出力部１９およびＲＳＴパケット処理部２１としての機能が、ダミーパケット作成部１４から出力されるダミーパケットについての登録処理〔カーネル１５のパケット（ダミーパケット）登録処理〕を実現する。なお、カーネル１５のパケット（ダミーパケット）登録処理についての詳細は、図８および図９を用いて後述する。
【００６２】
すなわち、ＲＳＴパケット処理部２１は、リセットパケット出力部２０から出力されるリセットパケットに基づき、ストレージ装置１０−２に記憶されたクライアント２との間におけるＴＣＰ接続情報６０（接続記録情報）を削除する削除処理部として機能する。
（Ｂ）動作
先ず、上述の如く構成された実施形態の一例としてのストレージシステム１における仮想ＮＩＣによるパケットの出力時の処理（仮想ＮＩＣ出力処理）を、図３に示すフローチャート（ステップＡ１〜Ａ４）に従って説明する。
【００６３】
本処理は、ストレージ装置１０の起動後に常駐して実施されるものであり、仮想ＮＩＣの送信処理を通るパケットの全てに対して実行される。
仮想ＮＩＣのパケット出力が行なわれると（ステップＡ１）、仮想ＮＩＣのドライバが、パケットがＴＣＰパケットであるかを確認する（ステップＡ２）。パケットがＴＣＰパケットでない場合には（ステップＡ２のＮＯルート参照）、当該パケットは破棄され（ステップＡ４）、処理を終了する。
【００６４】
パケットがＴＣＰパケットである場合には（ステップＡ２のＹＥＳルート参照）、ステップＡ３に移行する。ステップＡ３においては、リセットパケット出力部２０が、パケットから抽出したシーケンシャル番号を用いてＴＣＰ  ＲＳＴパケットを作成し、ＮＩＣの受信処理へ渡す。その後、ステップＡ４に移行する。
次に、実施形態の一例としてのストレージシステム１におけるＴＣＰ接続情報削除に関する常駐処理を、図４および図５に示すフローチャート（ステップＢ１〜Ｂ１１）に従って説明する。なお、図４はステップＢ１〜Ｂ４を、図５はステップＢ５〜Ｂ１１を示す。
【００６５】
本処理はＴＣＰ接続情報削除処理部１１によって実行されるものであり、変数として削除リトライカウントが用いられる。
ＴＣＰ接続情報削除処理に関する常駐処理が開始されると（図４のステップＢ１）、図４のステップＢ２において、クラスタ切り替えによりＩＰアドレスが他のストレージ装置１０に移行するイベントが発生するまで待ち合わせる。
【００６６】
クラスタ切り替えによりＩＰアドレスが他のストレージ装置１０に移行した場合に、その移行元のストレージ装置１０において、以下の処理が行なわれる。
すなわち、クラスタ切り替えによりＩＰアドレスが他のストレージ装置１０に移行すると、その移行元のストレージ装置１０のＣＭ１１１において、今までクライアント２と通信していたＮＩＣから、ＩＰアドレスを削除する（図４のステップＢ３）。以下、この移行されるＩＰアドレスが“192.168.1.1”である例について示す。
【００６７】
仮想ＮＩＣ設定部１２が仮想ＮＩＣを設定し、この設定した仮想ＮＩＣに対して、ステップＢ３で削除したＩＰアドレス（192.168.1.1）を設定する（図４のステップＢ４）。
次に、削除リトライカウントに“０”を設定することで初期化する（図５のステップＢ５）。
ＯＳ上のネットワーク管理テーブル（netstat）を検索して、ステップＢ３において削除したＩＰアドレス（192.168.1.1）を含むＴＣＰ接続情報を抽出する。抽出されたＴＣＰ接続情報を“接続リスト”に登録する（図５のステップＢ６）。なお、この接続リストの情報は、例えばメモリ１２７の所定の領域に格納される。
【００６８】
接続リストに登録されているＴＣＰ接続情報の数を確認する（図５のステップＢ７）。接続リストに登録がない場合、すなわち、登録個数が０個である場合には（ステップＢ７の“０個である”ルート参照）、ステップＢ２に戻る。
接続リストの登録個数が１個以上である場合には（ステップＢ７の“１個以上である”ルート参照）、削除リトライカウントの値をインクリメントする（１増やす）（図５のステップＢ８）。
【００６９】
次に、削除リトライカウントの値が予め設定された制限値（閾値）を超えたかを確認する。削除リトライカウントの値が制限値を超えた場合には（ステップＢ９の“超えた”ルート参照）、ステップＢ２に戻る。すなわち、念のために、ステップＢ２〜Ｂ７の処理を所定回数（制限値以上）繰り返し実行することで、信頼性を向上させることができる。制限値は例えば３回である。
【００７０】
一方、削除リトライカウントの値が制限値を超えていない場合には（ステップＢ９の“超えていない”ルート参照）、図５のステップＢ１０に移行する。
ステップＢ１０において、ＴＣＰ接続情報削除処理部１１は、接続リストからＴＣＰ接続情報を１つずつ取り出して、図６に後述するＴＣＰ接続情報削除処理を実行する。
ＴＣＰ接続情報削除処理部１１は、接続リストの全てのＴＣＰ接続情報に対して、ステップＢ１０の処理が行なわれたかを確認する（図５のステップＢ１１）。確認の結果、接続リストに未処理のＴＣＰ接続情報が残っている場合には（ステップＢ１１の“残っている”ルート参照）、ステップＢ１０に戻る。
【００７１】
接続リストに未処理のＴＣＰ接続情報が残っていない場合、すなわち、接続リストの全てのＴＣＰ接続情報に対してＴＣＰ接続情報削除処理が行なわれた場合には（ステップＢ１１の“すべて処理した”ルート参照）、ステップＢ６に戻る。
次に、実施形態の一例としてのストレージシステム１におけるＴＣＰ接続情報削除処理を、図６に示すフローチャート（ステップＣ１〜Ｃ４）に従って説明する。
【００７２】
ステップＣ１において、接続先（クライアント２）のＩＰアドレス宛の通信は、仮想ＮＩＣを通るように、テーブル編集部１３がルーティングテーブル２２およびＡＲＰテーブル２３を変更する。
ステップＣ２において、ＴＣＰ接続情報削除処理部１１は、ＴＣＰ接続情報削除サブルーチンを呼び出す。ＴＣＰ接続情報削除サブルーチンを実行するに際して、自身のＩＰアドレスのＩＰアドレスとポート番号，接続先のクライアント２のＩＰアドレスとポート番号、およびシーケンシャル番号として“0x0”が、パラメータとして渡される。
【００７３】
なお、ＴＣＰ接続情報削除サブルーチンについては図７を用いて後述する。
ステップＣ３において、ＴＣＰ接続情報削除処理部１１は、ＴＣＰ接続情報削除サブルーチンを呼び出す。ステップＣ２と同様に、ＴＣＰ接続情報削除サブルーチンを実行するに際して、自身のＩＰアドレスのＩＰアドレスとポート番号，接続先のクライアント２のＩＰアドレスとポート番号が、パラメータとして渡される。また、本ステップにおいては、シーケンシャル番号として、ステップＣ２とは大きく異なる“0x80000000” がパラメータとして渡される。
【００７４】
ステップＣ４において、テーブル編集部１３は、ステップＣ１において変更したルーティングテーブル２２およびＡＲＰテーブル２３を変更前の状態に戻した後、処理を終了する。
次に、実施形態の一例としてのストレージシステム１におけるＴＣＰ接続情報削除サブルーチンによる処理を、図７に示すフローチャート（ステップＤ１〜Ｄ２）に従って説明する。
【００７５】
ステップＤ１において、ダミーパケット作成部１４が、ダミーパケット（ＴＣＰパケット）を作成する。
なお、ダミーパケットには、以下（ａ）〜（ｈ）の設定がパレメータとして用いられる。
（ａ）送信元ＭＡＣアドレスには、仮想ＮＩＣのＭＡＣアドレスに１を加えた値
（ｂ）送信先ＭＡＣアドレスには、仮想ＮＩＣのＭＡＣアドレス
（ｃ）送信先port番号には、自身のport番号
（ｄ）送信先ＩＰアドレスには、自身のＩＰアドレス
（ｅ）送信元ＩＰアドレスには、接続先ＩＰアドレス
（ｆ）送信元port番号には、接続先port番号
（ｇ）TCP Flagは、ACKのみ
（ｈ）シーケンシャル番号には、パラメータとして与えられたシーケンシャル番号
ステップＤ２において、ダミーパケット作成部１４は、ステップＤ１において作成したダミーパケットを、ioctlを用いて仮想ＮＩＣに受信（処理）させる。その結果、図８を用いて後述するカーネル１５のパケット登録処理（１）にパケットが渡される。
【００７６】
その後、処理を終了する。
なお、この図７に示す処理は、異なる２つのシーケンシャル番号をそれぞれ用いて２回実行される。これにより異なるシーケンシャル番号を有する２つのダミーパケット（第１のダミーパケットおよび第２のダミーパケット）が作成される。
すなわち、第１のダミーパケットには、図６のフローチャートのステップＣ２においてパラメータとして用意された“0x0”がシーケンシャル番号として設定される。また、第２のダミーパケットには、図６のフローチャートのステップＣ３においてパラメータとして用意された“0x80000000”が設定される。
【００７７】
次に、実施形態の一例としてのストレージシステム１におけるカーネル１５のパケット登録処理（１）を、図８に示すフローチャート（ステップＥ１〜Ｅ４）に従って説明する。
ダミーパケット作成部１４が作成したダミーパケットをダミーパケット受信処理部１６が受信する。
【００７８】
ステップＥ１において、ＴＣＰ接続情報照合部１７は、ダミーパケット受信処理部１６が受信したダミーパケットについて、カーネル１５が管理しているＴＣＰ接続情報６０と照合する。
なお、ダミーパケットの情報がＴＣＰ接続情報照合部１７に登録されていないものである場合には、当該パケットは無視される。
【００７９】
ステップＥ２において、シーケンシャル番号確認部１８が、ダミーパケット受信処理部１６が受信したダミーパケットのシーケンシャル番号を、カーネル１５が管理している前回処理時のシーケンシャル番号と比較する。
ＡＣＫパケット出力部１９は、シーケンシャル番号確認部１８による確認の結果、ダミーパケット（第２のダミーパケット）のシーケンシャル番号が、前回処理したダミーパケット（第１のダミーパケット）のシーケンシャル番号と不一致である場合に、正しいシーケンシャル番号を付加したＡＣＫパケットを仮想ＮＩＣから出力する。
【００８０】
ステップＥ３において、図３に示した仮想ＮＩＣ出力処理が呼ばれる。この仮想ＮＩＣ出力処理においては、ＴＣＰ  ＲＳＴパケットが生成される。これにより、後述するカーネル１５のパケット登録処理（２）にパケットが渡り（ステップＥ４）、カーネル１５のパケット登録処理（１）が終了する。
次に、実施形態の一例としてのストレージシステム１におけるカーネル１５のパケット登録処理（２）を、図９に示すフローチャート（ステップＦ１）に従って説明する。
【００８１】
カーネル１５のパケット登録処理（２）においては、ステップＦ１において、ＲＳＴパケット処理部２１によるＲＳＴパケット処理ルーチンが呼ばれる。ＲＳＴパケット処理が開始される。
すなわち、ＲＳＴパケット処理部２１は、リセットパケット出力部２０から出力されるＴＣＰ  ＲＳＴパケットに基づき、このＴＣＰ  ＲＳＴパケットに含まれるシーケンシャル番号およびＩＰアドレスを複数のＴＣＰ接続情報６０と照合する。ＲＳＴパケット処理部２１は、複数のＴＣＰ接続情報６０から、ＴＣＰ  ＲＳＴパケットに含まれる、シーケンシャル番号およびＩＰアドレス（local，foreign）によって特定されるＴＣＰ接続情報６０を削除して、処理を終了する。
【００８２】
（Ｃ）効果
このように、実施形態の一例としてのストレージシステム１によれば、仮想ＮＩＣ設定部１２が仮想ＮＩＣを設定し、ダミーパケット作成部１４が、クライアント２から送信されたかのように擬似的に認識させるダミーパケットを作成し、仮想ＮＩＣに処理させる。
【００８３】
シーケンシャル番号確認部１８が、受信したダミーパケットのシーケンシャル番号を、カーネル１５が管理している前回処理時のシーケンシャル番号と比較し、不一致である場合に、ＡＣＫパケット出力部１９が正しいシーケンシャル番号を付加したＡＣＫパケットを仮想ＮＩＣから出力する。
その後、この正しいシーケンシャル番号を含むＴＣＰ  ＲＳＴパケットを生成し、ＲＳＴパケット処理部２１が、このＴＣＰ  ＲＳＴパケットに基づき、複数のＴＣＰ接続情報６０の中から、クラスタ切り替えにより削除されたＩＰアドレスに関する、不要なＴＣＰ接続情報６０を削除する。
【００８４】
これにより、クラスタ切り替えにより、切り替え元のストレージ装置１０において発生する不要なＴＣＰ接続情報６０を削除することができる。
そして、不要なＴＣＰ接続情報６０を削除することにより、クラスタ内のメモリ１２７の領域が解放される。また、ＴＣＰ ＡＣＫ輻輳を抑止し、ネットワークの有効利用が可能になる。さらに、ＴＣＰ ＡＣＫ輻輳によるクラスタ切り替えの遅延を抑止することもできる。
【００８５】
また、ダミーパケット作成部１４が、シーケンシャル番号が大きく異なる２つのダミーパケットを作成して送信することで、シーケンシャル番号確認部１８によるシーケンシャル番号の不一致を確実に検出させることができる。
仮想ＮＩＣ設定部１２が仮想ＮＩＣを設定することで、上述したＴＣＰ接続情報削除処理がＣＡ１２４等の通信機器に影響を与えることがなく、利便性が高い。
【００８６】
（Ｄ）その他
そして、開示の技術は上述した実施形態に限定されるものではなく、本実施形態の趣旨を逸脱しない範囲で種々変形して実施することができる。本実施形態の各構成及び各処理は、必要に応じて取捨選択することができ、あるいは適宜組み合わせてもよい。
例えば、上述した実施形態においては、各ＣＭ１１１のＣＰＵ１１０が実行するＯＳがＬｉｎｕｘである例について示しているが、これに限定されるものではなく、種々変形して実施することができる。
【００８７】
また、上述した実施形態においては、ダミーパケット受信処理部１６，ＴＣＰ接続情報照合部１７，シーケンシャル番号確認部１８，ＡＣＫパケット出力部１９およびＲＳＴパケット処理部２１としての機能をカーネル１５が備えているが、これらのうち少なくとも一部の機能をカーネル１５の外部に持たせてもよい。
また、上述した開示により本実施形態を当業者によって実施・製造することが可能である。
【００８８】
（Ｅ）付記
（付記１）
第１の処理装置と第２の処理装置とを備え、接続先装置と通信可能に接続されるクラスタシステムにおいて、前記第２の処理装置に備えられるネットワーク制御装置であって、
前記接続先装置との通信相手が、前記第２の処理装置から前記第１の処理装置へ切り替わった際に、
仮想通信インタフェースを設定する仮想通信インタフェース設定部と、
送信元が前記接続先装置であると擬似的に認識させるダミーパケットを前記仮想通信インタフェースに処理させることで、前記第２の処理装置における前記接続先装置との通信進捗状態を表す通信進捗情報を取得する通信進捗情報取得部と、
取得した前記通信進捗情報を用いて、前記通信進捗情報を含むリセットパケットを生成するリセットパケット生成部と、
前記リセットパケットに基づき、前記第２の処理装置に記憶された前記接続先装置との間における接続記録情報を削除する削除処理部と
を備えることを特徴とする、ネットワーク制御装置。
【００８９】
（付記２）
前記通信進捗情報取得部が、
仮通信進捗情報を設定した前記ダミーパケットを出力するダミーパケット作成部と、
前記ダミーパケットに対して、前記第２の処理装置において管理する前記通信進捗情報を含む応答パケットを出力する応答出力部と
を備え、
前記リセットパケット生成部が、前記応答パケットに含まれる前記通信進捗情報を用いて、前記リセットパケットを生成する
ことを特徴とする、付記１記載のネットワーク制御装置。
【００９０】
（付記３）
前記ダミーパケット作成部が、互いに異なる仮通信進捗情報を設定した２つの前記ダミーパケットを出力する
ことを特徴とする、付記２記載のネットワーク制御装置。
（付記４）
第１の処理装置と第２の処理装置とを備え、接続先装置と通信可能に接続されるクラスタシステムにおいて、
前記接続先装置との通信相手が、前記第２の処理装置から前記第１の処理装置へ切り替わった際に、前記第２の処理装置において、
仮想通信インタフェースを設定する仮想通信インタフェース設定部と、
送信元が前記接続先装置であると擬似的に認識させるダミーパケットを前記仮想通信インタフェースに処理させることで、前記第２の処理装置における前記接続先装置との通信進捗状態を表す通信進捗情報を取得する通信進捗情報取得部と、
取得した前記通信進捗情報を用いて、前記通信進捗情報を含むリセットパケットを生成するリセットパケット生成部と、
前記リセットパケットに基づき、前記第２の処理装置に記憶された前記接続先装置との間における接続記録情報を削除する削除処理部と
を備えることを特徴とする、クラスタシステム。
【００９１】
（付記５）
前記通信進捗情報取得部が、
仮通信進捗情報を設定した前記ダミーパケットを出力するダミーパケット作成部と、
前記ダミーパケットに対して、前記第２の処理装置において管理する前記通信進捗情報を含む応答パケットを出力する応答出力部と
を備え、
前記リセットパケット生成部が、前記応答パケットに含まれる前記通信進捗情報を用いて、前記リセットパケットを生成する
ことを特徴とする、付記４記載のクラスタシステム。
【００９２】
（付記６）
前記ダミーパケット作成部が、互いに異なる仮通信進捗情報を設定した２つの前記ダミーパケットを出力する
ことを特徴とする、付記５記載のクラスタシステム。
（付記７）
第１の処理装置と第２の処理装置とを備え、接続先装置と通信可能に接続されるクラスタシステムにおいて、前記第２の処理装置のプロセッサに、
前記接続先装置との通信相手が、前記第２の処理装置から前記第１の処理装置へ切り替わった際に、
仮想通信インタフェースを設定し、
送信元が前記接続先装置であると擬似的に認識させるダミーパケットを前記仮想通信インタフェースに処理させることで、前記第２の処理装置における前記接続先装置との通信進捗状態を表す通信進捗情報を取得し、
取得した前記通信進捗情報を用いて、前記通信進捗情報を含むリセットパケットを生成し、
前記リセットパケットに基づき、前記第２の処理装置に記憶された前記接続先装置との間における接続記録情報を削除する
処理を実行させることを特徴とする、制御プログラム。
【００９３】
（付記８）
仮通信進捗情報を設定した前記ダミーパケットを出力し、
前記ダミーパケットに対して、前記第２の処理装置において管理する前記通信進捗情報を含む応答パケットを出力し、
前記応答パケットに含まれる前記通信進捗情報を用いて、前記リセットパケットを生成する
処理を、前記プロセッサに実行させることを特徴とする、付記７記載の制御プログラム。
【００９４】
（付記９）
互いに異なる仮通信進捗情報を設定した２つの前記ダミーパケットを出力する
処理を、前記プロセッサに実行させることを特徴とする、付記８記載の制御プログラム。
【符号の説明】
【００９５】
１    ストレージシステム
２    クライアント
３    イーサスイッチ
１０−１，１０−２，１０    ストレージ装置
１１０    ＣＰＵ
１１    ＴＣＰ接続情報削除処理部
１２    仮想ＮＩＣ設定部
１３    テーブル編集部
１４    ダミーパケット作成部
１５    カーネル
１６    ダミーパケット受信処理部
１７    ＴＣＰ接続情報照合部
１８    シーケンシャル番号確認部
１９    ＡＣＫパケット出力部
２０    リセットパケット出力部  
２１    ＲＳＴパケット処理部
２２    ルーティングテーブル
２３    ＡＲＰテーブル
１１１    ＣＭ
１２４    ＣＡ
１２５    ＲＡ
１２６    ＤＡ
１２７    メモリ
１３０    ディスクエンクロージャ
１３１    ディスク装置
５０    通信線
６０    ＴＣＰ接続情報
【図１】
0006575318.tif 000002
【図２】
0006575318.tif 000003
【図３】
0006575318.tif 000004
【図４】
0006575318.tif 000005
【図５】
0006575318.tif 000006
【図６】
0006575318.tif 000007
【図７】
0006575318.tif 000008
【図８】
0006575318.tif 000009
【図９】
0006575318.tif 000010
【図１０】
0006575318.tif 000011
【図１１】
0006575318.tif 000012
【図１２】
0006575318.tif 000013
【図１３】
0006575318.tif 000014
【図１４】
0006575318.tif 000015
【図１５】
0006575318.tif 000016
【図１６】
0006575318.tif 000017
【図１７】
0006575318.tif 000018
【図１８】
0006575318.tif 000019
【図１９】
0006575318.tif 000020