(57)【要約】【課題】フレームを中継する中継装置の隠蔽化を図ること。【解決手段】中継装置は、第１装置と第２装置との間で通信されるフレームを、前記第１装置と前記第２装置との間の中継先装置に中継する中継装置であり、前記第１装置と前記フレームを送受信する第１ポートと、前記第２装置と前記フレームを送受信する第２ポートと、前記中継先装置と前記フレームを送受信する中継ポートと、前記フレームが受信される受信ポートと前記受信ポートで受信された前記フレームを送信すべき送信ポートとを対応付けた対応情報を記憶する記憶部と、前記対応情報にしたがって、前記送信ポートを決定し、前記フレームのヘッダに含まれるネットワーク情報を変更せずに、決定した前記送信ポートから前記フレームを送信する中継部と、を有する。【選択図】図２
2017208639.tif 000002
【特許請求の範囲】
【請求項１】
第１装置と第２装置との間で通信されるフレームを、前記第１装置と前記第２装置との間の中継先装置に中継する中継装置であって、
前記第１装置と前記フレームを送受信する第１ポートと、
前記第２装置と前記フレームを送受信する第２ポートと、
前記中継先装置と前記フレームを送受信する中継ポートと、
前記フレームが受信される受信ポートと前記受信ポートで受信された前記フレームを送信すべき送信ポートとを対応付けた対応情報を記憶する記憶部と、
前記対応情報にしたがって、前記送信ポートを決定し、前記フレームのヘッダに含まれるネットワーク情報を変更せずに、決定した前記送信ポートから前記フレームを送信する中継部と、
を有することを特徴とする中継装置。
【請求項２】
請求項１に記載の中継装置であって、
前記対応情報は、
前記受信ポートが前記第１ポートまたは前記第２ポートである場合、前記送信ポートを前記中継ポートとし、前記受信ポートが前記中継ポートである場合、前記送信ポートを前記第１ポートまたは前記第２ポートとする定義を含み、
前記中継部は、
前記対応情報にしたがって、前記フレームが前記第１ポートから受信されると前記送信ポートを前記中継ポートに決定して、前記フレームを前記中継ポートから送信し、前記フレームが前記第２ポートから受信されると前記送信ポートを前記中継ポートに決定して、前記フレームを前記中継ポートから送信し、前記第２ポートから受信された前記フレームが前記中継ポートから受信されると前記送信ポートを前記第１ポートに決定して、前記フレームを前記第１ポートから送信し、前記第１ポートから受信された前記フレームが前記中継ポートから受信されると前記送信ポートを前記第２ポートに決定して、前記フレームを前記第２ポートから送信することを特徴とする中継装置。
【請求項３】
請求項２に記載の中継装置であって、
前記中継ポートとして、第１中継ポートと第２中継ポートとを含み、
前記対応情報は、
前記受信ポートが前記第１ポートである場合、前記送信ポートを前記第１中継ポートとし、前記受信ポートが前記第２ポートである場合、前記送信ポートを前記第２中継ポートとし、前記受信ポートが前記第１中継ポートである場合、前記送信ポートを前記第１ポートとし、前記受信ポートが前記第２中継ポートである場合、前記送信ポートを前記第２ポートとする定義を含み、
前記中継部は、
前記対応情報にしたがって、前記フレームが前記第１ポートから受信されると前記送信ポートを前記第１中継ポートに決定して、前記フレームを前記第１中継ポートから送信し、前記フレームが前記第２ポートから受信されると前記送信ポートを前記第２中継ポートに決定して、前記フレームを前記第２中継ポートから送信し、前記フレームが前記第１中継ポートから受信されると前記送信ポートを前記第１ポートに決定して、前記フレームを前記第１ポートから送信し、前記フレームが前記第２中継ポートから受信されると前記送信ポートを前記第２ポートに決定して、前記フレームを前記第２ポートから送信することを特徴とする中継装置。
【請求項４】
請求項２に記載の中継装置であって、
前記中継部は、
前記フレームが前記第１ポートから受信されると、前記第１装置から前記第２装置への通信方向であることを示す識別子を付与し、かつ、前記対応情報にしたがって、前記送信ポートを前記中継ポートに決定して、前記識別子が付与された前記フレームを前記中継ポートから送信し、
前記識別子が付与された前記フレームが前記中継ポートから受信されると、前記識別子を消去し、かつ、前記対応情報にしたがって、前記送信ポートを前記第２ポートに決定して、前記識別子が消去された前記フレームを前記第２ポートから送信し、
前記識別子が付与されていない前記フレームが前記中継ポートから受信されると、前記送信ポートを前記第１ポートに決定して、前記識別子が付与されていない前記フレームを前記第１ポートから送信することを特徴とする中継装置。
【請求項５】
請求項２に記載の中継装置であって、
前記中継ポートとして、第１中継ポートと第２中継ポートとを含み、
前記第１中継ポートと前記中継先装置とを接続する第１リンクと、前記第２中継ポートと前記中継先装置とを接続する第２リンクと、により、リンクアグリゲーションが構成されており、
前記対応情報は、
前記受信ポートが前記第１ポートまたは前記第２ポートである場合、前記送信ポートを、前記リンクアグリゲーションを構成するいずれかの中継ポートとし、前記受信ポートが前記リンクアグリゲーションを構成するいずれかの中継ポートである場合、前記送信ポートを前記第１ポートまたは前記第２ポートとする定義を含み、
前記中継部は、
前記フレームが前記第１ポートから受信されると、前記第１装置から前記第２装置へのフレームであることを示す識別子を付与し、かつ、前記対応情報にしたがって、前記送信ポートを前記リンクアグリゲーションに決定して、前記識別子が付与された前記フレームを前記リンクアグリゲーションから送信し、
前記識別子が付与された前記フレームが前記リンクアグリゲーションから受信されると、前記識別子を消去し、かつ、前記対応情報にしたがって、前記送信ポートを前記第２ポートに決定して、前記識別子が消去された前記フレームを前記第２ポートから送信し、
前記フレームが前記第２ポートから受信されると、前記対応情報にしたがって、前記送信ポートを、前記リンクアグリゲーションを構成するいずれかの中継ポートに決定して、前記フレームを送信し、
前記識別子が付与されていない前記フレームが前記リンクアグリゲーションから受信されると、前記対応情報にしたがって、前記送信ポートを前記第１ポートに決定して、前記フレームを前記第１ポートから送信することを特徴とする中継装置。
【請求項６】
請求項１に記載の中継装置であって、
前記対応情報は、
前記フレームが受信される受信ポート、前記フレームに含まれる前記フレームのレイヤ４の送信元ポート番号、および前記フレームに含まれる前記フレームのレイヤ４の宛先ポート番号と、前記受信ポートで受信された前記フレームを送信すべき送信ポートとを対応付けた情報であり、
前記中継部は、
前記対応情報にしたがって、前記送信ポートを決定して、前記フレームを前記送信ポートから送信することを特徴とする中継装置。
【請求項７】
請求項３に記載の中継装置であって、
前記中継先装置は、同一機能の複数の中継先装置であり、
前記第１中継ポートは、前記複数の中継先装置に対応して複数設けられ、
前記第２中継ポートは、前記複数の中継先装置に対応して複数設けられ、
前記各第１中継ポートと前記各中継先装置とを接続する複数の第１リンクにより第１リンクアグリゲーションが構成され、
前記各第２中継ポートと前記各中継先装置とを接続する複数の第２リンクにより第２リンクアグリゲーションが構成され、
前記対応情報は、
前記受信ポートが前記第１ポートである場合、前記送信ポートを前記第１リンクアグリゲーションとし、前記受信ポートが前記第２ポートである場合、前記送信ポートを前記第２リンクアグリゲーションとし、前記受信ポートが前記第１リンクアグリゲーションである場合、前記送信ポートを前記第１ポートとし、前記受信ポートが前記第２リンクアグリゲーションである場合、前記送信ポートを前記第２ポートとする定義を含み、
前記中継部は、
前記第１装置から前記第２装置への第１フレームが前記第１ポートから受信されると、前記対応情報にしたがって、前記送信ポートを、前記第１リンクアグリゲーションを構成するいずれかの第１中継ポートに決定して、前記第１フレームを送信し、
前記第１フレームが前記第２リンクアグリゲーションから受信されると、前記対応情報にしたがって、前記送信ポートを前記第２ポートに決定して、前記第１フレームを前記第２ポートから送信し、
前記第２装置から前記第１装置への第２フレームが前記第２ポートから受信されると、前記対応情報にしたがって、前記送信ポートを、前記第２リンクアグリゲーションを構成するいずれかの第２中継ポートに決定して、前記第２フレームを送信し、
前記第２フレームが前記第１リンクアグリゲーションから受信されると、前記対応情報にしたがって、前記送信ポートを前記第１ポートに決定して、前記第２フレームを前記第１ポートから送信することを特徴とする中継装置。
【請求項８】
請求項７に記載の中継装置であって、
第１振分部と、第２振分部と、を有し、
前記第１振分部は、
前記第１リンクアグリゲーションから送信される前記第１フレームを、前記第１フレーム内の第１特徴情報から得られる固有情報に基づいて、前記第１リンクアグリゲーション内の特定の第１中継ポートから特定の中継先装置に送信し、
前記第２振分部は、
前記第２リンクアグリゲーションから送信される前記第２フレームを、前記第２フレーム内の第２特徴情報から得られる前記固有情報に基づいて、前記第２リンクアグリゲーション内の特定の第２中継ポートから前記特定の中継先装置に送信し、
前記第１装置から前記第２装置へ中継されるフレームの前記第１特徴情報と、前記第２装置から前記第１装置へ中継されるフレームの前記第１特徴情報とが、双方向の通信において同一の値になるように特徴情報を選択することを特徴とする中継装置。
【請求項９】
請求項２に記載の中継装置であって、
前記中継先装置は、同一機能の複数の中継先装置であり、
前記中継ポートは、前記複数の中継先装置に対応して複数設けられ、
前記各中継ポートと前記各中継先装置とを接続する複数のリンクにより第１リンクアグリゲーションが構成され、
前記各中継ポートと前記各中継先装置とを接続する複数のリンクにより第２リンクアグリゲーションが構成され、
前記対応情報は、
前記受信ポートが前記第１ポートである場合、前記送信ポートを前記第１リンクアグリゲーションとし、前記受信ポートが前記第２ポートである場合、前記送信ポートを前記第２リンクアグリゲーションとし、前記受信ポートが前記第１リンクアグリゲーションまたは前記第２リンクアグリゲーションである場合、前記送信ポートを前記第１ポートまたは前記第２ポートとする定義を含み、
前記中継部は、
前記第１装置から前記第２装置への第１フレームが前記第１ポートから受信されると、前記第１装置から前記第２装置への通信方向であることを示す識別子を付与し、かつ、前記対応情報にしたがって、前記送信ポートを、前記第１リンクアグリゲーションを構成するいずれかの中継ポートに決定して、前記識別子が付与された前記第１フレームをいずれかの前記中継先装置に送信し、
前記第２装置から前記第１装置への第２フレームが前記第２ポートから受信されると、前記対応情報にしたがって、前記送信ポートを、前記第２リンクアグリゲーションを構成するいずれかの中継ポートに決定して、前記第２フレームをいずれかの前記中継先装置に送信し、
前記識別子が付与された前記第１フレームが前記第１リンクアグリゲーションまたは前記第２リンクアグリゲーションを構成するいずれかの中継ポートから受信されると、前記識別子を消去し、かつ、前記対応情報にしたがって、前記送信ポートを前記第２ポートに決定して、前記識別子が消去された前記第１フレームを前記第２ポートから送信し、
前記識別子が付与されていない前記第２フレームが前記第１リンクアグリゲーションまたは前記第２リンクアグリゲーションから受信されると、前記対応情報にしたがって、前記送信ポートを前記第１ポートに決定して、前記第２フレームを前記第１ポートから送信することを特徴とする中継装置。
【請求項１０】
請求項９に記載の中継装置であって、
振分部を有し、
前記振分部は、
前記第１リンクアグリゲーションから送信される前記識別子が付与された前記第１フレームを、当該第１フレーム内の第１特徴情報から得られる固有情報に基づいて、前記第１リンクアグリゲーション内の特定の中継ポートから特定の中継先装置に送信し、
前記第２リンクアグリゲーションから送信される前記第２フレームを、前記第２フレーム内の第２特徴情報から得られる前記固有情報に基づいて、前記第２リンクアグリゲーション内の前記特定の中継ポートから前記特定の中継先装置に送信し、
前記第１装置から前記第２装置へ中継されるフレームの前記第１特徴情報と、前記第２装置から前記第１装置へ中継されるフレームの前記第２特徴情報とが、双方向の通信において同一の値になるように特徴情報を選択することを特徴とする中継装置。
【請求項１１】
請求項３に記載の中継装置であって、
前記中継先装置は、同一機能の複数の中継先装置であり、
前記第１中継ポートおよび前記第２中継ポートは、前記複数の中継先装置の各々に対応して複数組設けられ、
前記各第１中継ポートと前記各中継先装置とを接続する複数の第１リンクと、前記各第２中継ポートと前記各中継先装置とを接続する複数の第２リンクと、により、第１リンクアグリゲーションが構成され、
前記複数組の前記第１中継ポートおよび前記第２中継ポートと前記中継先装置とを接続する前記第１リンクおよび前記第２リンクの組により、複数の第２リンクアグリゲーションが構成され、
前記対応情報は、
前記受信ポートが前記第１ポートおよび前記第２ポートである場合、前記送信ポートを前記第１リンクアグリゲーションとし、前記受信ポートが前記第２リンクアグリゲーションである場合、前記送信ポートを前記第１ポートまたは前記第２ポートとする定義を含み、
前記中継部は、
前記第１装置から前記第２装置への第１フレームが前記第１ポートから受信されると、前記第１装置から前記第２装置への通信方向であることを示す識別子を付与し、かつ、前記対応情報にしたがって、前記送信ポートを、前記第１リンクアグリゲーションを構成するいずれかの中継ポートに決定して、前記識別子が付与された前記第１フレームを前記第１リンクアグリゲーションからいずれかの前記中継先装置に送信し、
前記第２装置から前記第１装置への第２フレームが前記第２ポートから受信されると、前記対応情報にしたがって、前記送信ポートを、前記第１リンクアグリゲーションを構成するいずれかの中継ポートに決定して、前記第２フレームを前記第１リンクアグリゲーションからいずれかの前記中継先装置に送信し、
前記識別子が付与された前記第１フレームがいずれかの前記第２リンクアグリゲーションから受信されると、前記識別子を消去し、かつ、前記対応情報にしたがって、前記送信ポートを前記第２ポートに決定して、前記識別子が消去された前記第１フレームを前記第２ポートから送信し、
前記第２フレームがいずれかの前記第２リンクアグリゲーションから受信されると、前記対応情報にしたがって、前記送信ポートを前記第１ポートに決定して、前記第２フレームを前記第１ポートから送信することを特徴とする中継装置。
【請求項１２】
請求項１１に記載の中継装置であって、
振分部を有し、
前記振分部は、
前記第１リンクアグリゲーションから送信される前記識別子が付与された前記第１フレームを、当該第１フレーム内の第１特徴情報から得られる固有情報に基づいて、前記第１リンクアグリゲーション内の特定の中継ポートから特定の中継先装置に送信し、
前記第１リンクアグリゲーションから送信される前記第２フレームを、前記第２フレーム内の第２特徴情報から得られる前記固有情報に基づいて、前記第２リンクアグリゲーション内の前記特定の中継ポートから前記特定の中継先装置に送信し、
前記第１装置から前記第２装置へ中継されるフレームの前記第１特徴情報と、前記第２装置から前記第１装置へ中継されるフレームの前記第２特徴情報とが、双方向の通信において同一の値になるように特徴情報を選択することを特徴とする中継装置。
【請求項１３】
請求項１に記載の中継装置であって、
プログラムを実行するプロセッサと、前記プログラムを記憶する記憶デバイスと、を有し、
前記プロセッサは、
前記中継先装置に送信した所定期間における前記フレームの数の増加量である送信フレーム数増加量から、前記中継先装置から受信した前記所定期間における前記フレームの数の増加量である受信フレーム数増加量を減算することにより、前記所定期間において廃棄されたフレームの増加量であるフレーム廃棄増加量を算出し、前記フレーム廃棄増加量を前記送信フレーム数増加量で除算することにより、前記所定期間において廃棄されたフレームの割合を示すフレーム廃棄率を算出し、
前記フレーム廃棄率としきい値とを比較することにより、前記中継先装置が正常であるか否かを判定し、
前記中継先装置が正常でないと判定された場合、警報情報を出力する、
ことを特徴とする中継装置。
【請求項１４】
請求項１３に記載の中継装置であって、
前記警報情報は、前記フレーム廃棄率が異常な値であることを示す情報であることを特徴とする中継装置。
【請求項１５】
請求項１３に記載の中継装置であって、
前記警報情報は、前記中継装置から前記中継先装置を切り離すことを促す情報であることを特徴とする中継装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信経路を切り替えるスイッチに関する。
【背景技術】
【０００２】
非特許文献１は、クライアントとサーバとの間に置いて、通信経路を、アプライアンス装置を通るように切り替えるスイッチを開示する。また、非特許文献２は、クライアントとサーバとの間の通信経路を複数のアプライアンス装置に順番に通す方式を開示する。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】Mouli Vytla, Samar Sharma, Rajendra Thirumurthi, “ITD  Overview”, [online], 2010年, Cisco社, [2016年4月25日検索], インターネット, <http://blogs.cisco.com/wp-content/uploads/ITD_feature_overview_rev_19.ppt>
【非特許文献２】rfc7665,“Service Function Chaining (SFC) Architecture” [2016年4月25日検索], インターネット, <http://www.rfc-editor.org/rfc/rfc7665.txt>
【発明の概要】
【発明が解決しようとする課題】
【０００４】
非特許文献１および非特許文献２の技術は、元々存在しなかったアプライアンススイッチをクライアントとサーバとの間に配置する場合に、配置前後で周辺の接続先装置のレイヤ３アドレス、ＶＬＡＮ番号のようなネットワーク情報の変更を必要とする。また、非特許文献１および非特許文献２の技術は、ネットワークに繋がる攻撃者からアプライアンススイッチの存在を確認できるため、アプライアンススイッチは攻撃対象となる場合がある。
【０００５】
本発明は、フレームを中継する中継装置の隠蔽化を図ることを目的とする。
【課題を解決するための手段】
【０００６】
本願において開示される発明の一側面となる中継装置は、第１装置と第２装置との間で通信されるフレームを、前記第１装置と前記第２装置との間の中継先装置に中継する中継装置であって、前記第１装置と前記フレームを送受信する第１ポートと、前記第２装置と前記フレームを送受信する第２ポートと、前記中継先装置と前記フレームを送受信する中継ポートと、前記フレームが受信される受信ポートと前記受信ポートで受信された前記フレームを送信すべき送信ポートとを対応付けた対応情報を記憶する記憶部と、前記対応情報にしたがって、前記送信ポートを決定し、前記フレームのヘッダに含まれるネットワーク情報を変更せずに、決定した前記送信ポートから前記フレームを送信する中継部と、を有することを特徴とする。
【発明の効果】
【０００７】
本発明の代表的な実施の形態によれば、フレームを中継する中継装置の隠蔽化を図ることができる。前述した以外の課題、構成および効果は、以下の実施例の説明により明らかにされる。
【図面の簡単な説明】
【０００８】
【図１】図１は、サーバとクライアントとの間の通信経路を示す説明図である。
【図２】図２は、サーバとネットワークとの間にアプライアンススイッチおよびアプライアンス装置を接続した場合の通信経路例１を示す説明図である。
【図３】図３は、サーバとネットワークとの間にアプライアンススイッチおよびアプライアンス装置を接続した場合の通信経路例２を示す説明図である。
【図４】図４は、サーバとネットワークとの間にアプライアンススイッチおよびアプライアンス装置を接続した場合の通信経路例３を示す説明図である。
【図５】図５は、サーバとネットワークとの間にアプライアンススイッチおよびアプライアンス装置を接続した場合の通信経路例４を示す説明図である。
【図６】図６は、サーバとネットワークとの間にアプライアンススイッチおよび複数のアプライアンス装置を接続した場合の通信経路例１を示す説明図である。
【図７】図７は、図６のアプライアンススイッチのＰＢＳが保持するＰＢＳ対応テーブルの記憶内容例を示す説明図である。
【図８】図８は、サーバとネットワークとの間にアプライアンススイッチおよび複数のアプライアンス装置を接続した場合の通信経路例２を示す説明図である。
【図９】図９は、サーバとネットワークとの間にアプライアンススイッチおよび複数のアプライアンス装置を接続した場合の通信経路例３を示す説明図である。
【図１０】図１０は、サーバとネットワークとの間にアプライアンススイッチおよび複数のアプライアンス装置を接続した場合の通信経路例４を示す説明図である。
【図１１】図１１は、サーバとネットワークとの間にアプライアンススイッチおよび複数のアプライアンス装置を接続した場合の通信経路例５を示す説明図である。
【図１２】図１２は、サーバとネットワークとの間にアプライアンススイッチおよび複数のアプライアンス装置を接続した場合の通信経路例６を示す説明図である。
【図１３】図１３は、アプライアンススイッチにおける統計値の収集例１を示す説明図である。
【図１４】図１４は、アプライアンススイッチにおける統計値の収集例２を示す説明図である。
【図１５】図１５は、プロセッサによる判定処理手順例を示すフローチャート（前半）である。
【図１６】図１６は、プロセッサによる判定処理手順例を示すフローチャート（後半）である。
【発明を実施するための形態】
【０００９】
本実施例では、第１装置と第２装置との間で通信されるフレームを、第１装置と第２装置との間の中継先装置に中継する中継装置について説明する。第１装置とは、たとえば、サーバ（またはクライアント）であり、第２装置とは、たとえば、クライアント（またはサーバ、他の中継先装置）である。中継先装置は、たとえば、アプライアンス装置である。中継装置とは、たとえば、アプライアンススイッチである。
【００１０】
また、本実施例の中継装置は、自身のアドレス情報（たとえば、ＩＰアドレスやＭＡＣアドレス）を有していない、または、有していても、当該アドレス情報は、管理用に使用されるのみである。そして、本実施例の中継装置は、中継装置内において、受信フレームの受信物理ポート、受信ＶＬＡＮ番号、およびフレームヘッダを条件として送信先を決めることにより、レイヤ２で受信フレームを中継する。すなわち、周辺の接続先装置のレイヤ３アドレス、レイヤ２アドレスおよびＶＬＡＮ番号のようなネットワーク情報の変更が不要となる。したがって、中継装置のアドレス情報をフレームのヘッダに設定されることもない。また、中継装置のアドレス情報自体が存在しない場合は、フレームのヘッダに設定されることもない。
【００１１】
したがって、フレームが漏洩したとしても、ネットワークに繋がる攻撃者から中継装置を発見されることはない。すなわち、攻撃者は、中継装置のアドレス情報を取得できないため、中継装置を攻撃対象とすることができない。このように、中継装置の存在を隠蔽し、セキュリティ性の向上を図ることができる。また、ネットワーク情報を変更しないため、すなわち、変更処理やそれに伴う処理が不要となるため、中継処理の高速化を図ることができる。
【００１２】
以下の説明では、図上、サーバを下方に配置し、クライアントを上方に配置しているが、サーバからクライアント方向の通信を下り、クライアントからサーバ方向への通信を上り、と表現している。また、図上、各装置の物理ポート間を接続する物理回線を描き、各物理ポートを特定する符号を、その物理ポートに接続される物理回線に付けることにより、各物理ポートを特定するようにしている。
【００１３】
図１は、サーバとクライアントとの間の通信経路を示す説明図である。サーバ１とクライアント３は、一般的には離れた場所に配置され、ネットワーク２経由で接続される。サーバ１とクライアント３が近接配置され、ネットワーク２を介さずに直接接続されてもよい。
【００１４】
図２は、サーバ１とネットワーク２との間にアプライアンススイッチおよびアプライアンス装置を接続した場合の通信経路例１を示す説明図である。アプライアンススイッチ４０１は、例として、４個の物理ポート１ｐ，２ｐ，５ｐ１，５ｐ２と、ポリシー・ベース・スイッチング（ＰＢＳ：Ｐｏｌｉｃｙ  Ｂａｓｅｄ  Ｓｗｉｔｃｈｉｎｇ）４０と、を有する。
【００１５】
物理ポート１ｐは、サーバ１に接続される。物理ポート２ｐは、ネットワーク２（具体的には、たとえば、ネットワーク２の境界でアプライアンススイッチ４０１に隣接するスイッチ（不図示））に接続される。物理ポート５ｐ１，５ｐ２は、アプライアンス装置５に接続される。アプライアンス装置５は、アプライアンススイッチ４０１の物理ポート５ｐ１，５ｐ２を用いて、サーバ１とクライアント３との間のデータを中継する。
【００１６】
ＰＢＳ４０は、ポリシーと呼ばれる特定の規則にしたがって、フレームのヘッダに含まれるネットワーク情報を変更せずに、経路を切り替える機能を有する中継部である。ＰＢＳ４０は、各物理ポート１ｐ，２ｐ，５ｐ１，５ｐ２に接続される。具体的には、たとえば、ＰＢＳ４０は、受信物理ポート、受信ＶＬＡＮ、およびレイヤ２〜レイヤ４ヘッダのようなネットワーク情報を検索キーとして、検索結果として送信先の物理ポートまたは送信先のＬＡＧ（Ｌｉｎｋ  ＡＧｇｒｅｇａｔｉｏｎ）、送信先のＶＬＡＮを決定し、決定した送信先にフレームをレイヤ２中継する。ここで、受信ＶＬＡＮは、ポートＶＬＡＮ、Ｔａｇ  ＶＬＡＮ、プロトコルＶＬＡＮなどのＶＬＡＮ種別により決まるネットワーク情報である。
【００１７】
たとえば、受信ＶＬＡＮのＶＬＡＮ種別がポートＶＬＡＮの場合、送信先のＶＬＡＮは、受信物理ポートから決まる。Ｔａｇ  ＶＬＡＮの場合、送信先のＶＬＡＮは、受信フレームにＩＥＥＥ８０２．１Ｑで規定されるＶＬＡＮ  Ｔａｇが付いていた場合にＶＬＡＮ  Ｔａｇ内ＶＩＤの値から決まる。プロトコルＶＬＡＮの場合、送信先のＶＬＡＮは、受信フレームのプロトコル種別から決まる。
【００１８】
ＰＢＳ４０は、フロー条件とアクションとを対応づけて物理ポート間の経路を規定するＰＢＳ対応テーブル２００にアクセスする。ＰＢＳ対応テーブル２００は、上述したポリシーを規定する情報である。ＰＢＳ対応テーブル２００は、ＰＢＳエントリ番号２０１と、フロー条件２０２である受信物理ポートと、アクション２０３である送信物理ポートと、を対応付けた対応情報である。図２の場合、ＰＢＳ４０は、フロー条件２０２である受信物理ポートを検索キーとして、検索結果として、アクション２０３である送信物理ポートを出力する。ＰＢＳ対応テーブル２００（後述する他のＰＢＳ対応テーブルも同様）は、ＰＢＳ４０内の記憶部（メモリ）に格納されていてもよく、アプライアンススイッチ４０１内で、かつ、ＰＢＳ４０外の記憶部（メモリ）に格納されていてもよい。
【００１９】
このように、ＰＢＳ４０は、たとえば、Ｌ２スイッチが有するＭＡＣ（Ｍｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ）アドレステーブル、および、ルータが有するＡＲＰ（Ａｄｄｒｅｓｓ  Ｒｅｓｏｌｕｔｉｏｎ  Ｐｒｏｔｏｃｏｌ）テーブルに従うのではなく、ＰＢＳ対応テーブル２００を用いる。すなわち、ＰＢＳ４０は、フレーム内のＭＡＣアドレスやＴＴＬ（Ｔｉｍｅ  Ｔｏ  Ｌｉｖｅ）、ＩＰアドレスなどのネットワーク情報を書き換えない。これにより、ＰＢＳ４０は、受信したフレームをそのまま、アプライアンス装置にフレームを転送したり、アプライアンス装置からのフレームをサーバまたはクライアントに転送したりすることができる。したがって、中継処理の高速化を図ることができる。
【００２０】
アプライアンススイッチ４０１は、図１に示す既存の通信経路の間に配置される。この場合、配置前後でレイヤ３のアドレス、ＶＬＡＮ番号のようなネットワーク情報を変えないようにする必要がある。そのため、アプライアンススイッチ４０１は、アプライアンススイッチ４０１内において、レイヤ２でデータを通信する。
【００２１】
アプライアンススイッチ４０１は、サーバ１とクライアント３との間で通信されるデータをアプライアンス装置５に中継するため、アプライアンススイッチ４０１内において、フレームを複数回経由させる。このため、アプライアンススイッチ４０１は、ＰＢＳ４０を用いて、経由する各回毎に出力先を変える。より具体的には、たとえば、ＰＢＳ４０は、ＰＢＳ対応テーブル２００を参照して、出力先を決定する。
【００２２】
たとえば、図２では、サーバ１からクライアント３への下りの通信経路の場合、フレームは、アプライアンススイッチ４０１内で２回経由する。具体的には、たとえば、サーバ１からのフレームは、物理ポート１ｐで受信され、物理ポート５ｐ１からアプライアンス装置５に送信される。また、アプライアンス装置５からのフレームは、物理ポート５ｐ２で受信され、物理ポート２ｐからネットワーク２経由でクライアント３に送信される。
【００２３】
クライアント３からサーバ１への上りの通信経路の場合、フレームは、アプライアンススイッチ４０１内で２回経由する。具体的には、たとえば、クライアント３からのフレームは、物理ポート２ｐで受信され、物理ポート５ｐ２からアプライアンス装置５に送信される。また、アプライアンス装置５からのフレームは、物理ポート５ｐ１で受信され、物理ポート１ｐからサーバ１に送信される。
【００２４】
このように、アプライアンススイッチ４０１は、サーバ１とクライアント３の間の通信において、アプライアンススイッチ４０１内を、フレーム内のネットワーク情報を書き換えることなく、当該フレームをレイヤ２中継する。アプライアンススイッチ４０１は、中継したフレームをサーバ１やクライアント３には送信するが、アプライアンススイッチ４０１を送信元とするフレームを送信しない。したがって、アプライアンススイッチ４０１は、サーバ１上の不正プログラム、クライアント３上の不正プログラム、およびネットワーク２に接続された攻撃者から発見されることはない。
【００２５】
また、アプライアンススイッチ４０１のアドレス情報は、フレームに含まれることはないため、サーバ１、クライアント３、およびネットワーク２に接続された攻撃者に発見されない。アプライアンススイッチ４０１は、サーバ１、クライアント３、およびネットワーク２に接続された攻撃者からアプライアンススイッチ４０１を宛先とするフレームを受信することもない。したがって、アプライアンススイッチ４０１は、サーバ１上の不正プログラム、クライアント３上の不正プログラム、およびネットワーク２に接続された攻撃者から攻撃されることもない。
【００２６】
このように、アプライアンススイッチ４０１の存在を隠蔽し、セキュリティ性の向上を図ることができる。また、ネットワーク情報を変更しないため、すなわち、変更処理やそれに伴う処理が不要となるため、中継処理の高速化を図ることができる。
【００２７】
図３は、サーバ１とネットワーク２との間にアプライアンススイッチおよびアプライアンス装置を接続した場合の通信経路例２を示す説明図である。アプライアンススイッチ４０２は、例として、４個の物理ポート１ｐ，２ｐ，５ｐ１，５ｐ２を有する。物理ポート１ｐ，２ｐ，５ｐ１，５ｐ２と周辺装置（サーバ１、ネットワーク２、アプライアンス装置５）との接続関係は、図２と同様である。図３のアプライアンススイッチ４０２は、ＰＢＳ４０の代わりに、第１ＶＬＡＮ４１および第２ＶＬＡＮ４２を構築する。第１ＶＬＡＮ４１は、物理ポート１ｐと物理ポート５ｐ１との間でフレームを中継する仮想ネットワークであり、第２ＶＬＡＮ４２は、物理ポート２ｐと物理ポート５ｐ２との間でフレームを中継する仮想ネットワークである。第１ＶＬＡＮ４１は、第１学習テーブル３０１を有し、受信したフレームの送信元ＭＡＣアドレスと受信物理ポートとにより、第１ＶＬＡＮ４１のエントリを生成する。第２ＶＬＡＮ４２も、第２学習テーブル３０２を有し、受信したフレームの送信元ＭＡＣアドレスと受信物理ポートとにより、第２ＶＬＡＮ４２のエントリを生成する。
【００２８】
アプライアンススイッチ４０２は、図１に示す既存の通信経路の間に配置される。この場合、配置前後でレイヤ３のアドレス、ＶＬＡＮ番号のようなネットワーク情報を変えないようにする必要がある。そのため、アプライアンススイッチ４０２は、アプライアンススイッチ４０２内において、レイヤ２でデータを通信する。
【００２９】
アプライアンススイッチ４０２は、サーバ１とクライアント３との間で通信されるデータをアプライアンス装置５に中継するため、アプライアンススイッチ４０２内において、フレームを複数回経由させる。このため、アプライアンススイッチ４０２は、第１ＶＬＡＮ４１および第２ＶＬＡＮ４２を用いて、経由する各回毎に出力先を変える。より具体的には、たとえば、第１ＶＬＡＮ４１および第２ＶＬＡＮ４２は、第１学習テーブル３０１および第２学習テーブル３０２を参照して、出力先を決定する。
【００３０】
たとえば、図３では、サーバ１からクライアント３への下りの通信経路の場合、送信元ＭＡＣアドレスがサーバ１のＭＡＣアドレス、宛先アドレスがネットワーク２内の隣接スイッチのＭＡＣアドレスであるフレームは、アプライアンススイッチ４０２内で２回経由する。
【００３１】
具体的には、たとえば、サーバ１からのフレーム（宛先ＭＡＣアドレスがネットワーク２内の隣接スイッチのＭＡＣアドレス）が、物理ポート１ｐで受信されると、第１ＶＬＡＮ４１は、第１学習テーブル３０１を参照して物理ポート５ｐ１を選択する。したがって、当該フレームは、選択した物理ポート５ｐ１からアプライアンス装置５に送信される。また、当該フレームが、アプライアンス装置５から物理ポート５ｐ２で受信されると、第２ＶＬＡＮ４２は、第２学習テーブル３０２を参照して物理ポート２ｐを選択する。したがって、当該フレームは、選択した物理ポート２ｐからネットワーク２経由でクライアント３に送信される。
【００３２】
クライアント３からサーバ１への上りの通信経路の場合、送信元ＭＡＣアドレスがネットワーク２内の隣接スイッチのＭＡＣアドレス、宛先アドレスがサーバ１のＭＡＣアドレスであるフレームは、アプライアンススイッチ４０２内で２回経由する。
【００３３】
具体的には、たとえば、クライアント３から隣接スイッチを経由したフレーム（宛先ＭＡＣアドレスがサーバ１のＭＡＣアドレス）が、物理ポート２ｐで受信されると、第２ＶＬＡＮ４２は、第２学習テーブル３０２を参照して物理ポート５ｐ２を選択する。したがって、当該フレームは、選択した物理ポート５ｐ２からアプライアンス装置５に送信される。また、アプライアンス装置５からのフレームが、物理ポート５ｐ１で受信されると、第１ＶＬＡＮ４１は、第１学習テーブル３０１を参照して物理ポート１ｐを選択する。したがって、当該フレームは、選択した物理ポート１ｐからサーバ１に送信される。
【００３４】
このように、図３においても、アプライアンススイッチ４０２は、サーバ１とクライアント３の間の通信において、アプライアンススイッチ４０２内を、フレーム内のネットワーク情報を書き換えることなく、当該フレームをレイヤ２中継する。アプライアンススイッチ４０２は、中継したフレームをサーバ１やクライアント３には送信するが、アプライアンススイッチ４０２を送信元とするフレームを送信しない。したがって、アプライアンススイッチ４０２は、サーバ１上の不正プログラム、クライアント３上の不正プログラム、およびネットワーク２に接続された攻撃者から発見されることはない。
【００３５】
また、アプライアンススイッチ４０２のアドレス情報は、フレームに含まれることはないため、サーバ１、クライアント３、およびネットワーク２に接続された攻撃者に発見されない。アプライアンススイッチ４０２は、サーバ１、クライアント３、およびネットワーク２に接続された攻撃者からアプライアンススイッチ４０２を宛先とするフレームを受信することもない。したがって、アプライアンススイッチ４０２は、サーバ１上の不正プログラム、クライアント３上の不正プログラム、およびネットワーク２に接続された攻撃者から攻撃されることもない。
【００３６】
このように、アプライアンススイッチ４０２の存在を隠蔽し、セキュリティ性の向上を図ることができる。また、ネットワーク情報を変更しないため、すなわち、変更処理やそれに伴う処理が不要となるため、中継処理の高速化を図ることができる。
【００３７】
図４は、サーバ１とネットワーク２との間にアプライアンススイッチおよびアプライアンス装置を接続した場合の通信経路例３を示す説明図である。図４のアプライアンススイッチ４０３は、図２のアプライアンススイッチ４０１の物理ポート５ｐ１，５ｐ２を、物理ポート５ｐに置き換えた構成である。ＰＢＳ４０は、各物理ポート１ｐ，２ｐ，５ｐに接続される。ＰＢＳ４０は、ＰＢＳ対応テーブル４００を保持する。
【００３８】
アプライアンススイッチ４０３は、アプライアンススイッチ４０３内でＰＢＳ４０を用いて中継する。アプライアンススイッチ４０３とアプライアンス装置５とは、１つの物理ポート５ｐで接続されている。したがって、アプライアンススイッチ４０３は、物理ポート５ｐから戻ってきたフレームをサーバ１側の物理ポート１ｐに送るかクライアント３側の物理ポート２ｐに送るかを判定する必要がある。そのため、アプライアンススイッチ４０３からアプライアンス装置５にフレームを送る時点で、たとえば、ＰＢＳ４０は、サーバ１からクライアント３方向のフレームにだけフラグをＯＮ（付与）にしてアプライアンス装置５に送信する。フラグは、そのフレームの通信方向が、サーバ１からクライアント３への通信方向であることを示す識別子である。
【００３９】
ＰＢＳ４０は、物理ポート１ｐからフレームを受信した場合、ＰＢＳエントリｐ１００に条件一致し、アクションとして物理ポート５ｐにフレームを送信し、その際、当該フラグをＯＮにすることを指示する。一方、物理ポート２ｐからフレームを受信した場合、ＰＢＳエントリｐ４００に条件一致し、アクションとして物理ポート５ｐにフレームを送信し、その際、当該フラグの操作は行わないことを指示する。
【００４０】
ＰＢＳ４０は、物理ポート５ｐからフレームを受信し、かつ当該フラグがＯＮの場合、ＰＢＳエントリｐ９００に条件一致し、アクションとして物理ポート２ｐにフレームを送信し、その際、当該フラグをＯＦＦ（消去）にすることを指示する。一方、物理ポート５ｐからフレームを受信し、かつ当該フラグがＯＦＦの場合、ＰＢＳエントリｐ７００に条件一致し、アクションとして物理ポート１ｐにフレームを送信し、その際、当該フラグの操作は行わないことを指示する。
【００４１】
ここで、フラグの例としては、物理ポート５ｐがＩＥＥＥ８０２．１Ｑで規定されるＶＬＡＮ  Ｔａｇを付けるように構成定義された物理ポートの場合、たとえば、ＶＬＡＮ  Ｔａｇ内のＩＥＥＥ８０２．１ｐで規定されるＰｒｉｏｒｉｔｙ  Ｃｏｄｅ  Ｐｏｉｎｔフィールド内の１ビット、ＩＰｖ４ヘッダ内のＴＯＳフィールド内の１ビット、ＩＰｖ６ヘッダ内のＴＣフィールド内の１ビット、またはＩＰｖ６ヘッダ内のＦｌｏｗ  Ｌａｂｅｌフィールド内の１ビットが用いられる。
【００４２】
ここで、これらのフィールドは、他の用途で使用される場合もある。このような場合には、他の用途で使用されていないフィールドを、フラグとして使用できるように、アプライアンススイッチ４の構成定義で、フラグとして使用するフィールドをユーザが選択できるようにしてもよい。
【００４３】
なお、図４では、ＰＢＳ４０は、サーバ１からアプライアンス装置５を経由してクライアント３に送信されるフレームについてフラグをＯＮ／ＯＦＦする構成としたが、クライアント３からアプライアンス装置５を経由してサーバ１に送信されるフレームについてフラグをＯＮ／ＯＦＦする構成としてもよい。
【００４４】
このように、図４においても、アプライアンススイッチ４０３は、サーバ１とクライアント３の間の通信において、アプライアンススイッチ４０３内を、フレーム内のネットワーク情報を書き換えることなく、当該フレームをレイヤ２中継する。アプライアンススイッチ４０３は、中継したフレームをサーバ１やクライアント３には送信するが、アプライアンススイッチ４０３を送信元とするフレームを送信しない。したがって、アプライアンススイッチ４０３は、サーバ１上の不正プログラム、クライアント３上の不正プログラム、およびネットワーク２に接続された攻撃者から発見されることはない。
【００４５】
また、アプライアンススイッチ４０３のアドレス情報は、フレームに含まれることはないため、サーバ１、クライアント３、およびネットワーク２に接続された攻撃者に発見されない。アプライアンススイッチ４０３は、サーバ１、クライアント３、およびネットワーク２に接続された攻撃者からアプライアンススイッチ４０３を宛先とするフレームを受信することもない。したがって、アプライアンススイッチ４０３は、サーバ１上の不正プログラム、クライアント３上の不正プログラム、およびネットワーク２に接続された攻撃者から攻撃されることもない。
【００４６】
このように、アプライアンススイッチ４０３の存在を隠蔽し、セキュリティ性の向上を図ることができる。また、ネットワーク情報を変更しないため、すなわち、変更処理やそれに伴う処理が不要となるため、中継処理の高速化を図ることができる。
【００４７】
図５は、サーバ１とネットワーク２との間にアプライアンススイッチおよびアプライアンス装置を接続した場合の通信経路例４を示す説明図である。図５は、アプライアンススイッチ４０４とアプライアンス装置５との間をリンクアグリゲーション（ＬＡＧ：Ｌｉｎｋ  ＡＧｇｒｅｇａｔｉｏｎ）で接続した例である。図５は、図４の接続関係をＬＡＧ５ａに変更した例である。ＰＢＳ４０は、各物理ポート１ｐ，２ｐ，５ｐ１，５ｐ２に接続される。ＰＢＳ４０は、ＰＢＳ対応テーブル５００を保持する。また、アプライアンススイッチ４０４側のＬＡＧ５ａに対応し、当該物理ポートの組（５ｐ１，５ｐ２）に接続される物理回線の組は、アプライアンス装置５側でもＬＡＧ５１ａを構成する。
【００４８】
アプライアンススイッチ４０４は、アプライアンススイッチ４０４内でＰＢＳ４０を用いて中継する。アプライアンススイッチ４０４とアプライアンス装置５とは、２つの物理ポート５ｐ１，５ｐ２で接続されているが、ＬＡＧ５ａにより、フレームの中継動作としては、仮想的に１つの物理ポートで接続されているように扱う。アプライアンススイッチ４０４からＬＡＧ５ａへフレームを送信する時には、ＬＡＧ５ａに属する物理ポート５ｐ１,５ｐ２のどちらかにフレームを負荷分散して送信する。アプライアンススイッチ４０４がＬＡＧ５ａからフレームを送信した時には、ＬＡＧ５ａに属する物理ポート５ｐ１,５ｐ２のどちらから受信したフレームもＬＡＧ５ａから受信したフレームとして同等に扱う。アプライアンス装置５側のＬＡＧ５ａ１についても同様に、アプライアンス装置５はＬＡＧ５ａ１に属する２つの物理ポートを、仮想的に１つの物理ポートで接続されているように扱う。
【００４９】
したがって、アプライアンススイッチ４０４は、ＬＡＧ５ａから戻ってきたフレームをサーバ１側の物理ポート１ｐに送るかクライアント３側の物理ポート２ｐに送るかを判定する必要がある。そのため、アプライアンススイッチ４０４からアプライアンス装置５にフレームを送る時点で、たとえば、ＰＢＳ４０は、サーバ１からクライアント３方向のフレームにだけフラグをＯＮにしてアプライアンス装置５に送信する。
【００５０】
ＰＢＳ４０は、物理ポート１ｐからフレームを受信した場合、ＰＢＳエントリｐ１００に条件一致し、アクションとしてＬＡＧ５ａにフレームを送信し、その際、当該フラグをＯＮにすることを指示する。一方、物理ポート２ｐからフレームを受信した場合、ＰＢＳエントリｐ４００に条件一致し、アクションとしてＬＡＧ５ａにフレームを送信し、その際、当該フラグの操作は行わないことを指示する。
【００５１】
ＰＢＳ４０は、ＬＡＧ５ａからフレームを受信し、かつ当該フラグがＯＮの場合、ＰＢＳエントリｐ９００に条件一致し、アクションとして物理ポート２ｐにフレームを送信し、その際、当該フラグをＯＦＦ（消去）にすることを指示する。一方、ＰＢＳ４０は、ＬＡＧ５ａからフレームを受信し、かつ当該フラグがＯＦＦの場合、ＰＢＳエントリｐ７００に条件一致し、アクションとして物理ポート１ｐにフレームを送信し、その際、当該フラグの操作は行わないことを指示する。
【００５２】
アプライアンススイッチ４０４とアプライアンス装置５との間を、たとえば２つの物理ポート５ｐ１，５ｐ２で接続する場合、図２および図３に示す接続関係に比べ、図５に示す接続関係は、下記２つの効果を有する。一つ目は、ＬＡＧ５ａを構成する物理ポートの冗長化が可能という効果である。二つ目は、各物理ポート５ｐ１，５ｐ２の各方向のトラフィック量が偏る場合でも、両方向のトラフィックを同一のＬＡＧ５ａに流すことで偏りを無くすことができる。
【００５３】
また、図５においても、アプライアンススイッチ４０４は、サーバ１とクライアント３の間の通信において、アプライアンススイッチ４０４内を、フレーム内のネットワーク情報を書き換えることなく、当該フレームをレイヤ２中継する。
【００５４】
また、アプライアンススイッチ４０４は、中継したフレームをサーバ１やクライアント３には送信するが、アプライアンススイッチ４０４を送信元とするフレームを送信しない。したがって、アプライアンススイッチ４０４は、サーバ１上の不正プログラム、クライアント３上の不正プログラム、およびネットワーク２に接続された攻撃者から発見されることはない。
【００５５】
また、アプライアンススイッチ４０４のアドレス情報は、フレームに含まれることはないため、サーバ１、クライアント３、およびネットワーク２に接続された攻撃者に発見されない。アプライアンススイッチ４０４は、サーバ１、クライアント３、およびネットワーク２に接続された攻撃者からアプライアンススイッチ４０４を宛先とするフレームを受信することもない。したがって、アプライアンススイッチ４０４は、サーバ１上の不正プログラム、クライアント３上の不正プログラム、およびネットワーク２に接続された攻撃者から攻撃されることもない。
【００５６】
このように、アプライアンススイッチ４０４の存在を隠蔽し、セキュリティ性の向上を図ることができる。また、ネットワーク情報を変更しないため、すなわち、変更処理やそれに伴う処理が不要となるため、中継処理の高速化を図ることができる。
【００５７】
図６は、サーバ１とネットワーク２との間にアプライアンススイッチおよび複数のアプライアンス装置を接続した場合の通信経路例１を示す説明図である。図６では、プロトコル別にアプライアンス装置５１，５２を選択するためのＰＢＳ４０が設定する通信経路例を示す。ここで、適用されるプロトコルは、ｈｔｔｐ（ｈｙｐｅｒｔｅｘｔ  ｔｒａｎｓｆｅｒ  ｐｒｏｔｏｃｏｌ），ｔｅｌｎｅｔ（ｔｅｌｅｔｙｐｅ  ｎｅｔｗｏｒｋ），ｆｔｐ（ｆｉｌｅ  ｔｒａｎｓｆｅｒ  ｐｒｏｔｏｃｏｌ）の３種とする。
【００５８】
アプライアンススイッチ４１１は、物理ポート１ｈｐ，１ｔｐ，１ｆｐ，５１ｐ１，５１ｐ２，５２ｐ１，５２ｐ２，２ｐを有する。物理ポート１ｈｐは、ｈｔｔｐサーバ１ｈと接続する。物理ポート１ｔｐは、ｔｅｌｎｅｔサーバ１ｔと接続する。物理ポート１ｆｐは、ｆｔｐサーバ１ｆと接続する。物理ポート５１ｐ１，５１ｐ２は、アプライアンス装置５１と接続する。物理ポート５２ｐ１，５２ｐ２は、アプライアンス装置５２と接続する。物理ポート２ｐは、ネットワーク２を介してクライアント３と接続する。アプライアンススイッチ４１１は、ＰＢＳ４０を有する。ＰＢＳ４０は、各物理ポート１ｈｐ，１ｔｐ，１ｆｐ，５１ｐ１，５１ｐ２，５２ｐ１，５２ｐ２，２ｐに接続される。ＰＢＳ４０は、ＰＢＳ対応テーブルを保持する。
【００５９】
図７は、図６のアプライアンススイッチ４１１のＰＢＳ４０が保持するＰＢＳ対応テーブルの記憶内容例を示す説明図である。ＰＢＳ対応テーブル７００は、ＰＢＳエントリ番号２０１と、フロー条件２０２と、アクション（送信物理ポート）２０３と、を有する。送信物理ポートは、アプライアンススイッチ４１１がフレームを送信すべき物理ポートである。フロー条件２０２は、さらに、受信物理ポート７０１と、レイヤ４送信元ポート７０２と、レイヤ４宛先ポート７０３と、を有する。受信物理ポート７０１は、アプライアンススイッチ４１１がフレームを受信する物理ポートである。レイヤ４送信元ポート７０２は、フレームの送信元が当該フレームを送信したレイヤ４のポートである。レイヤ４宛先ポート７０３は、フレームの宛先が当該フレームを受信するレイヤ４のポートである。なお、「ａｎｙ」は、任意のレイヤ４のポートを意味する。
【００６０】
また、ｈｔｔｐおよびｆｔｐの通信経路は、アプライアンス装置５１を経由し、ｔｅｌｎｅｔおよびｆｔｐの通信経路は、アプライアンス装置５２を経由する。すなわち、ｆｔｐの通信経路のみ、アプライアンス装置５１，５２を経由する。アプライアンス装置５１は、たとえば、帯域制御装置であり、アプライアンス装置５２は、たとえば、ファイヤウォールである。
【００６１】
通信経路は、図７に示したＰＢＳ対応テーブル７００に従って設定される。ここでは、例として、ｆｔｐの通信経路について説明する。クライアント３からｆｔｐサーバ１ｆへの上りのフレームの通信経路は、以下の通りである。アプライアンススイッチ４１１は、クライアント３からのフレームを、クライアント３側の物理ポート２ｐで受信する。ＰＢＳ４０は、ＰＢＳ対応テーブル７００を参照し、フロー条件２０２の受信物理ポート７０１が「物理ポート２ｐ」で、レイヤ４宛先ポート７０３が「ｆｔｐ」であるＰＢＳエントリ番号２０１を特定する。この場合、ＰＢＳエントリ番号２０１は、「ｐ６」である。ｐ６におけるアクション２０３の送信物理ポートは「物理ポート５２ｐ２」である。したがって、当該フレームは、物理ポート５２ｐ２からアプライアンス装置５２に送信される。
【００６２】
アプライアンス装置５２は、受信したフレームをアプライアンススイッチ４１１に返す。アプライアンススイッチ４１１は、アプライアンス装置５２からのフレームを物理ポート５２ｐ１で受信する。ＰＢＳ４０は、ＰＢＳ対応テーブル７００を参照し、フロー条件２０２の受信物理ポート７０１が「物理ポート５２ｐ１」で、レイヤ４宛先ポート７０３が「ｆｔｐ」であるＰＢＳエントリ番号２０１を特定する。この場合、ＰＢＳエントリ番号２０１は、「ｐ１２」である。ｐ１２におけるアクション２０３の送信物理ポートは「物理ポート５１ｐ２」である。したがって、当該フレームは、物理ポート５１ｐ２からアプライアンス装置５１に送信される。
【００６３】
アプライアンス装置５１は、受信したフレームをアプライアンススイッチ４１１に返す。アプライアンススイッチ４１１は、アプライアンス装置５１からのフレームを物理ポート５１ｐ１で受信する。ＰＢＳ４０は、ＰＢＳ対応テーブル７００を参照し、フロー条件２０２の受信物理ポート７０１が「物理ポート５１ｐ１」で、レイヤ４宛先ポート７０３が「ｆｔｐ」であるＰＢＳエントリ番号２０１を特定する。この場合、ＰＢＳエントリ番号２０１は、「ｐ８」である。ｐ８におけるアクション２０３の送信物理ポートは「物理ポート１ｆｐ」である。したがって、当該フレームは、物理ポート１ｆｐからｆｔｐサーバに送信される。
【００６４】
ｆｔｐサーバ１ｆからクライアント３への下りのフレームの通信経路は、以下の通りである。アプライアンススイッチ４１１は、ｆｔｐサーバ１ｆからのフレームを、ｆｔｐサーバ１ｆ側の物理ポート１ｆｐで受信する。ＰＢＳ４０は、ＰＢＳ対応テーブル７００を参照し、フロー条件２０２の受信物理ポート７０１が「物理ポート１ｆｐ」で、レイヤ４送信元ポート７０２が「ｆｐｔ」であるＰＢＳエントリ番号２０１を特定する。この場合、ＰＢＳエントリ番号２０１は、「ｐ３」である。ｐ３におけるアクション２０３の送信物理ポートは「物理ポート５１ｐ１」である。したがって、当該フレームは、物理ポート５１ｐ１からアプライアンス装置５１に送信される。
【００６５】
アプライアンス装置５１は、受信したフレームをアプライアンススイッチ４１１に返す。アプライアンススイッチ４１１は、アプライアンス装置５１からのフレームを物理ポート５１ｐ２で受信する。ＰＢＳ４０は、ＰＢＳ対応テーブル７００を参照し、フロー条件２０２の受信物理ポート７０１が「物理ポート５１ｐ２」で、レイヤ４送信元ポート７０２が「ｆｔｐ」であるＰＢＳエントリ番号２０１を特定する。この場合、ＰＢＳエントリ番号２０１は、「ｐ１０」である。ｐ１０におけるアクションの送信物理ポートは「物理ポート５２ｐ１」である。したがって、当該フレームは、物理ポート５２ｐ１からアプライアンス装置５２に送信される。
【００６６】
アプライアンス装置５２は、受信したフレームをアプライアンススイッチ４１１に返す。アプライアンススイッチ４１１は、アプライアンス装置５２からのフレームを物理ポート５２ｐ２で受信する。ＰＢＳ４０は、ＰＢＳ対応テーブル７００を参照し、フロー条件２０２の受信物理ポート７０１が「物理ポート５２ｐ２」で、レイヤ４送信元ポート７０２が「ｆｔｐ」であるＰＢＳエントリ番号２０１を特定する。この場合、ＰＢＳエントリ番号２０１は、「ｐ１４」である。ｐ１４におけるアクション２０３の送信物理ポートは「物理ポート２ｐ」である。したがって、当該フレームは、物理ポート２ｐからネットワーク２を介してクライアント３に送信される。
【００６７】
このように、図６および図７においても、アプライアンススイッチ４１１は、サーバ１とクライアント３の間の通信において、アプライアンススイッチ４１１内を、フレーム内のネットワーク情報を書き換えることなく、当該フレームをレイヤ２中継する。アプライアンススイッチ４１１は、中継したフレームをサーバ１（１ｈ、１ｔ、１ｆ）やクライアント３には送信するが、アプライアンススイッチ４１１を送信元とするフレームを送信しない。したがって、アプライアンススイッチ４１１は、サーバ１上の不正プログラム、クライアント３上の不正プログラム、およびネットワーク２に接続された攻撃者から発見されることはない。
【００６８】
また、アプライアンススイッチ４１１のアドレス情報は、フレームに含まれることはないため、サーバ１、クライアント３、およびネットワーク２に接続された攻撃者に発見されない。アプライアンススイッチ４１１は、サーバ１、クライアント３、およびネットワーク２に接続された攻撃者からアプライアンススイッチ４１１を宛先とするフレームを受信することもない。したがって、アプライアンススイッチ４１１は、サーバ１上の不正プログラム、クライアント３上の不正プログラム、およびネットワーク２に接続された攻撃者から攻撃されることもない。
【００６９】
このように、アプライアンススイッチ４１１の存在を隠蔽し、セキュリティ性の向上を図ることができる。また、ネットワーク情報を変更しないため、すなわち、変更処理やそれに伴う処理が不要となるため、中継処理の高速化を図ることができる。
【００７０】
図８は、サーバ１とネットワーク２との間にアプライアンススイッチおよび複数のアプライアンス装置を接続した場合の通信経路例２を示す説明図である。図８の通信経路例２では、アプライアンススイッチ４１２は、アプライアンス装置群５０と接続する。アプライアンス装置群５０は、複数（本例では、４台）のアプライアンス装置５０１〜５０４である。アプライアンス装置５０１〜５０４は、同一機能である。アプライアンス装置群５０は、必要な処理性能を実現するため、同一機能のアプライアンス装置５０１〜５０４で負荷分散する。
【００７１】
アプライアンススイッチ４１２は、物理ポート５０１ｐ１，５０１ｐ２でアプライアンス装置５０１と通信可能に接続する。アプライアンススイッチ４１２は、物理ポート５０２ｐ１，５０２ｐ２でアプライアンス装置５０２と通信可能に接続する。アプライアンススイッチ４１２は、物理ポート５０３ｐ１，５０３ｐ２でアプライアンス装置５０３と通信可能に接続する。アプライアンススイッチ４１２は、物理ポート５０４ｐ１，５０４ｐ２でアプライアンス装置５０４と通信可能に接続する。各アプライアンス装置５０１〜５０４は、２つの物理ポートに対しアプライアンススイッチ４１２と通信する。アプライアンススイッチ４１２は、物理ポート５０１ｐ１〜５０４ｐ１により、アプライアンス装置群５０との間でＬＡＧ５ａ１を構築する。また、アプライアンススイッチ４１２は、物理ポート５０１ｐ２〜５０４ｐ２により、アプライアンス装置群５０との間でＬＡＧ５ａ２を構築する。
【００７２】
ＰＢＳ４０は、物理ポート１ｐ，２ｐに接続される。ＰＢＳ４０は、第１振分部４３を介して物理ポート５０１ｐ１〜５０４ｐ１に接続される。ＰＢＳ４０は、第２振分部４４を介して物理ポート５０１ｐ２〜５０４ｐ２に接続される。ＰＢＳ４０は、ＰＢＳ対応テーブル８００を有する。ＰＢＳ対応テーブル８００では、物理ポート１ｐとＬＡＧ５ａ１とが対応付けられ、物理ポート２ｐとＬＡＧ５ａ２とが対応付けられる。
【００７３】
また、アプライアンススイッチ４１２は、第１振分部４３と、第２振分部４４と、を有する。第１振分部４３および第２振分部４４はＰＢＳ４０に接続される。第１振分部４３は、物理ポート５０１ｐ１〜５０４ｐ１に接続される。第１振分部４３は、サーバ１からクライアント３への下りの通信経路について、サーバ１からのフレームをアプライアンス装置５０１〜５０４のいずれかのアプライアンス装置に振り分ける。具体的には、たとえば、第１振分部４３は、ハッシュ関数を有し、フレームに含まれる特徴情報をハッシュキーとしてハッシュ関数に与えることで得られるハッシュ値に応じた物理ポートを、物理ポート５０１ｐ１〜５０４ｐ１から選択する。そして、第１振分部４３は、選択した物理ポートからフレームを送信する。
【００７４】
第２振分部４４は、物理ポート５０１ｐ２〜５０４ｐ２に接続される。第２振分部４４も同様に、クライアントからサーバへの上りの通信経路について、クライアント３からのフレームをアプライアンス装置５０１〜５０４のいずれかのアプライアンス装置に振り分ける。具体的には、たとえば、第２振分部４４は、ハッシュ関数を有し、フレームに含まれる特徴情報をハッシュキーとしてハッシュ関数に与えることで得られるハッシュ値に応じた物理ポートを、物理ポート５０１ｐ２〜５０４ｐ２から選択する。そして、第２振分部４４は、選択した物理ポートからフレームを送信する。
【００７５】
なお、ハッシュキーとする特徴情報は、たとえば、レイヤ３、レイヤ４のヘッダ情報を使用することができる。たとえば、第１振分部４３および第２振分部４４は、送信元ＩＰアドレス、宛先ＩＰアドレス、ＴＣＰ、ＵＤＰなどのレイヤ４ヘッダの送信元ポート番号、宛先ポート番号を、振り分けアルゴリズムのハッシュキーとして使用する。そして、第１振分部４３および第２振分部４４は、たとえば、これらのフィールドを一定のビット数ずつ区切って足し合わせた結果から固有情報であるハッシュ値を作成し、ハッシュ値から振り分け先物理ポートを決定する。
【００７６】
通信経路は、ＰＢＳ対応テーブル８００に従って設定される。まず、サーバ１からクライアント３方向である下りの通信経路から説明する。まず、アプライアンススイッチ４１２が物理ポート１ｐでサーバ１からのフレームを受信し、ＰＢＳ４０に送る。ＰＢＳ４０は、ＰＢＳ対応テーブル８００を参照して、フロー条件２０２の受信物理ポートが「物理ポート１ｐ」であるＰＢＳエントリ番号２０１を特定する。この場合、ＰＢＳエントリ番号２０１は、「ｐ２１」である。ｐ２１におけるアクション２０３の送信物理ポートは「ＬＡＧ５ａ１」である。したがって、当該フレームは、物理ポート１ｐから第１振分部４３を介してＬＡＧ５ａ１に送信される。
【００７７】
第１振分部４３は、フレームの特徴情報を用いて物理ポート５０１ｐ１〜５０４ｐ１からいずれかの物理ポートを選択し、選択した物理ポートからフレームを送信する。ここでは、例として、物理ポート５０１ｐ１が選択されたとする。この場合、フレームは、物理ポート５０１ｐ１からアプライアンス装置５０１に送信される。
【００７８】
アプライアンス装置５０１は、受信したフレームを、アプライアンススイッチ４１２の物理ポート５０１ｐ２に送信する。アプライアンススイッチ４１２は、物理ポート５０１ｐ２から受信したフレームをＰＢＳ４０に送る。物理ポート５０１ｐ２はＬＡＧ５ａ２に属する物理ポートである。ＰＢＳ４０は、ＰＢＳ対応テーブル８００を参照して、フロー条件２０２の受信物理ポートが「ＬＡＧ５ａ２」であるＰＢＳエントリ番号２０１を特定する。この場合、ＰＢＳエントリ番号２０１は、「ｐ２４」である。ｐ２４におけるアクション２０３の送信物理ポートは「物理ポート２ｐ」である。したがって、当該フレームは、物理ポート２ｐからクライアント３に送信される。
【００７９】
つぎに、クライアント３からサーバ１方向である上りの通信経路について説明する。まず、アプライアンススイッチ４１２が物理ポート２ｐでクライアント３からのフレームを受信し、ＰＢＳ４０に送る。ＰＢＳ４０は、ＰＢＳ対応テーブル８００を参照して、フロー条件２０２の受信物理ポートが「物理ポート２ｐ」であるＰＢＳエントリ番号２０１を特定する。この場合、ＰＢＳエントリ番号２０１は、「ｐ２２」である。ｐ２２におけるアクション２０３の送信物理ポートは「ＬＡＧ５ａ２」である。したがって、当該フレームは、物理ポート２ｐから第２振分部４４を介してＬＡＧ５ａ２に送信される。
【００８０】
第２振分部４４は、フレームの特徴情報を用いて物理ポート５０１ｐ２〜５０４ｐ２からいずれかの物理ポートを選択し、選択した物理ポートからフレームを送信する。ここでは、例として、物理ポート５０１ｐ２が選択されたとする。この場合、フレームは、物理ポート５０１ｐ２からアプライアンス装置５０１に送信される。
【００８１】
アプライアンス装置５０１は、受信したフレームを、アプライアンススイッチ４１２の物理ポート５０１ｐ１に送信する。アプライアンススイッチ４１２は、物理ポート５０１ｐ１から受信したフレームをＰＢＳ４０に送る。物理ポート５０１ｐ１はＬＡＧ５ａ１に属する物理ポートである。ＰＢＳ４０は、ＰＢＳ対応テーブル８００を参照して、フロー条件の受信物理ポートが「ＬＡＧ５ａ１」であるＰＢＳエントリ番号２０１を特定する。この場合、ＰＢＳエントリ番号２０１は、「ｐ２３」である。ｐ２３におけるアクションの送信物理ポートは「物理ポート１ｐ」である。したがって、当該フレームは、物理ポート１ｐからクライアント３に送信される。
【００８２】
第１振分部４３および第２振分部４４による物理ポート選択方法は、ある一つのフローに属するフレームと、その反対方向のフローに属するフレームとを、同じアプライアンス装置に送るという条件を満たす必要がある。ある一つのフローに属するフレームと、その反対方向のフローに属するフレームは、送信元ＩＰアドレスと宛先ＩＰアドレスが互いに反対になり、レイヤ４の送信元ポート番号とレイヤ４の宛先ポート番号も反対になる。したがって、同じフローに属する双方向のフレームを同じアプライアンス装置に送るためには、ハッシュキーとして、以下のいずれかの方法１〜４が採用される。
【００８３】
方法１：第１振分部４３、第２振分部４４ともに、送信元ＩＰアドレスと宛先ＩＰアドレスの両方をハッシュキーに含める。
【００８４】
方法２：第１振分部４３には宛先ＩＰアドレスのみを含め、第２振分部４４には送信元ＩＰアドレスのみをハッシュキーに含める。
【００８５】
方法３：第１振分部４３、第２振分部４４ともに、送信元ＩＰアドレス、宛先ＩＰアドレス、レイヤ４の送信元ポート番号、レイヤ４の宛先ポート番号をハッシュキーに含める。
【００８６】
方法４：第１振分部４３には宛先ＩＰアドレスとレイヤ４の宛先ポート番号を含め、第２振分部４４には送信元ＩＰアドレスとレイヤ４の送信元ポート番号をハッシュキーに含める。
【００８７】
ここで、対象としているネットワーク２で、ＩＰフラグメントのように、レイヤ３の処理でレイヤ４以上の情報を分割して送る処理が発生する可能性がある場合を考える。この場合、分割された２番目以降のフレームではレイヤ４ヘッダ情報がない。このため、ハッシュキーにレイヤ４のポート番号を含めてしまうと、分割された先頭のフレームと２番目以降のフレームとで転送されるアプライアンス装置が異なる。
【００８８】
フラグメント処理により分割された一連のフレームは、すべて同一のアプライアンス装置に送る必要がある。したがって、分割処理が発生する可能性があるネットワーク２では、ハッシュキーにレイヤ４のポート番号を含めてはいけない。
【００８９】
また、アプライアンス装置がアドレス変換装置のようにＩＰアドレスを変換、またはＩＰアドレスおよびレイヤ４のポート番号を一組として変換する機能を持った装置の場合を考える。この場合、第１振分部４３および第２振分部４４がそれぞれ、変換される情報をハッシュキーに入れると、第１振分部４３と第２振分部４４とで転送されるアプライアンス装置が異なる。したがって、変換される情報はハッシュキーに含めてはいけない。
【００９０】
このように、ハッシュキーに含めることができる情報は、対象としているネットワーク２の条件により異なる。したがって、ハッシュキーに含める情報をユーザが構成定義で指定できるようにするのが好ましい。
【００９１】
ハッシュキーに含める情報をユーザが構成定義で指定する方法について説明する。たとえば、ＰＢＳ対応テーブル８００のエントリとして、アクション２０３で特定される送信ＬＡＧと、ハッシュキーに何を含めるかの情報とを、組で出力する方法が考えられる。また、別の方法として、アクション２０３で特定される送信ＬＡＧ毎に、ハッシュキーに何を含めるかの情報を指定する方法が考えられる。たとえば、アクションとして「ＬＡＧ５ａ１」が特定された場合、第１振分部４３がハッシュキーに宛先ＩＰアドレスを含めるように、ユーザが構成定義で指定する方法が考えられる。また、アクション２０３として「ＬＡＧ５ａ２」が特定された場合、第２振分部４４がハッシュキーに送信元ＩＰアドレスを含めるように、ユーザが構成定義で指定する方法が考えられる。
【００９２】
このように、図８においても、アプライアンススイッチ４１２は、サーバ１とクライアント３の間の通信において、アプライアンススイッチ４１２内を、フレーム内のネットワーク情報を書き換えることなく、当該フレームをレイヤ２中継する。アプライアンススイッチ４１２は、中継したフレームをサーバ１やクライアント３には送信するが、アプライアンススイッチ４１２を送信元とするフレームを送信しない。したがって、アプライアンススイッチ４１２は、サーバ１上の不正プログラム、クライアント３上の不正プログラム、およびネットワーク２に接続された攻撃者から発見されることはない。
【００９３】
また、アプライアンススイッチ４１２のアドレス情報は、フレームに含まれることはないため、サーバ１、クライアント３、およびネットワーク２に接続された攻撃者に発見されない。アプライアンススイッチ４１２は、サーバ１、クライアント３、およびネットワーク２に接続された攻撃者からアプライアンススイッチ４１２を宛先とするフレームを受信することもない。したがって、アプライアンススイッチ４１２は、サーバ１上の不正プログラム、クライアント３上の不正プログラム、およびネットワーク２に接続された攻撃者から攻撃されることもない。
【００９４】
このように、アプライアンススイッチ４１２の存在を隠蔽し、セキュリティ性の向上を図ることができる。また、ネットワーク情報を変更しないため、すなわち、変更処理やそれに伴う処理が不要となるため、中継処理の高速化を図ることができる。
【００９５】
また、アプライアンススイッチ４１２は、フレームのヘッダを参照することにより、当該フレームの宛先を、同一機能のアプライアンス装置５０１〜５０４に負荷分散することができる。したがって、アプライアンススイッチ４１２は、セッション管理をおこなう必要がないため、処理負荷の低減化や省メモリ化を図ることができる。
【００９６】
図９は、サーバ１とネットワーク２との間にアプライアンススイッチおよび複数のアプライアンス装置を接続した場合の通信経路例３を示す説明図である。図８の通信経路例２との相違を中心に、通信経路例３を説明する。図９の通信経路例３は、図４および図８を組み合わせた内容となる。
【００９７】
図８の通信経路例２では、１つのアプライアンス装置に繋がる２つの物理ポート間でフレームを中継していたが、図９の通信経路例３では、１つのアプライアンス装置に繋がる１つの物理ポートでフレームを折り返し中継する。具体的には、アプライアンススイッチ４１３は、物理ポート５０１ｐでアプライアンス装置５０１と通信可能に接続する。アプライアンススイッチ４１３は、物理ポート５０２ｐでアプライアンス装置５０２と通信可能に接続する。
【００９８】
また、アプライアンススイッチ４１３は、物理ポート５０１ｐ〜５０２ｐにより、アプライアンス装置群５０との間でＬＡＧ５ａを構築する。
【００９９】
次に、振分部４５でフレームの振り分けを行う為のハッシュ関数に与えるハッシュキーに含める情報を指定する方法について説明する。図９においても、たとえば、ＰＢＳ対応テーブル９００のエントリとして、アクション２０３で送信ＬＡＧと、ハッシュキーに何を含めるかの情報とを、組で出力する方法が考えられる。
【０１００】
たとえば、物理ポート１ｐから受信したフレームが、ＰＢＳ対応テーブル９００のエントリｐ３１に条件一致するようにフロー条件２０２を設定し、このエントリｐ３１のアクション２０３として送信物理ポート「ＬＡＧ５ａ」と同時にハッシュキーとして宛先ＩＰアドレス（ＤＩＰ）とレイヤ４の宛先ポート番号（ＤＰｏｒｔ）を出力するように、アクション２０３を設定する。また、物理ポート２ｐから受信したフレームが、ＰＢＳ対応テーブル９００のエントリｐ３２に条件一致するようにフロー条件２０２を設定し、このエントリｐ３２のアクション２０３として送信物理ポート「ＬＡＧ５ａ」と同時にハッシュキーとして送信元ＩＰアドレス（ＳＩＰ）とレイヤ４の送信元ポート番号（ＳＰｏｒｔ）を出力するように、アクション２０３を設定する。
【０１０１】
ＰＢＳ４０は、物理ポート１ｐ，２ｐに接続される。ＰＢＳ４０は、直接、および、振分部４５を介して物理ポート５０１ｐ〜５０２ｐに接続される。
【０１０２】
また、ＰＢＳ４０は、図４と同様に、フレーム内のフラグをＯＮ、ＯＦＦする。アプライアンススイッチ４１３と各アプライアンス装置５０１〜５０２とは、各々１つずつの物理ポート５０１ｐ〜５０２ｐで接続されている。したがって、アプライアンススイッチ４１３は、ＬＡＧ５ａから戻ってきたフレームをサーバ１側の物理ポート１ｐに送るかクライアント３側の物理ポート２ｐに送るかを判定する必要がある。そのため、アプライアンススイッチ４１３からアプライアンス装置群５０にフレームを送る時点で、たとえば、ＰＢＳ４０のアクションとしてフラグの操作（ＯＮ／ＯＦＦ／何もしない）も出力するようにし、例えばサーバ１からクライアント３方向のフレームにだけフラグをＯＮにしてアプライアンス装置群５０に送信する。
【０１０３】
ＰＢＳ４０は、外部からフレームを受信した場合、フラグの状態を参照する。フラグがＯＮの場合、ＰＢＳ４０は、当該フラグをＯＦＦにして、かつ、クライアント３側の物理ポート２ｐから当該フレームを送信する。一方、当該フラグがＯＦＦの場合、ＰＢＳ４０は、サーバ１側の物理ポート１ｐから当該フレームを送信する。
【０１０４】
通信経路は、ＰＢＳ対応テーブル９００に従って設定される。まず、サーバ１からクライアント３方向である下りの通信経路から説明する。まず、アプライアンススイッチ４１３が物理ポート１ｐでサーバ１からのフレームを受信し、ＰＢＳ４０に送る。ＰＢＳ４０は、ＰＢＳ対応テーブル９００を参照して、フロー条件２０２の受信物理ポートが「物理ポート１ｐ」であるＰＢＳエントリ番号２０１を特定する。この場合、ＰＢＳエントリ番号２０１は、「ｐ３１」である。ｐ３１におけるアクション２０３として、送信物理ポート「ＬＡＧ５ａ」、およびハッシュキーとして宛先ＩＰアドレス（ＤＩＰ），宛先レイヤ４ポート番号（ＤＰｏｒｔ）、及びフラグ操作として「ＯＮ］の操作を出力する。これにより、ＰＢＳ４０は、フレームのフラグをＯＮにして、フレームを振分部４５に送信する。
【０１０５】
振分部４５は、ＰＢＳ対応テーブル９００のアクションとして指定されたハッシュキーを用いて物理ポート５０１ｐ〜５０２ｐからいずれかの物理ポートを選択し、選択した物理ポートからフレームを送信する。ここでは、例として、物理ポート５０１ｐが選択されたとする。この場合、フレームは、物理ポート５０１ｐからアプライアンス装置５０１に送信される。
【０１０６】
アプライアンス装置５０１は、受信したフレームを、アプライアンススイッチ４１３の物理ポート５０１ｐ１に送信する。アプライアンススイッチ４１３は、物理ポート５０１ｐ１から受信したフレームをＰＢＳ４０に送る。物理ポート５０１ｐ１はＬＡＧ５ａに属する物理ポートである。また、サーバ１からクライアント３方向のフレームは、フラグの状態がＯＮになっている。ＰＢＳ４０は、ＰＢＳ対応テーブルを参照して、フロー条件２０２の受信物理ポートが「ＬＡＧ５ａ」で、かつ、フラグがＯＮであるＰＢＳエントリ番号２０１を特定する。この場合、ＰＢＳエントリ番号２０１は、ｐ３４である。ｐ３４におけるアクションの送信物理ポートは物理ポート２ｐであり、フラグ操作としてＯＦＦにするように指定されている。これにより、ＰＢＳ４０は、ＯＮにされたフラグをＯＦＦに戻して、フレームを物理ポート２ｐからクライアント３に送信する。
【０１０７】
つぎに、クライアント３からサーバ１方向である上りの通信経路について説明する。まず、アプライアンススイッチ４１３が物理ポート２ｐでクライアント３からのフレームを受信し、ＰＢＳ４０に送る。ＰＢＳ４０は、ＰＢＳ対応テーブル９００を参照して、フロー条件２０２の受信物理ポートが「物理ポート２ｐ」であるＰＢＳエントリ番号２０１を特定する。この場合、ＰＢＳエントリ番号２０１は、「ｐ３２」である。ｐ３２におけるアクション２０３として、送信物理ポート「ＬＡＧ５ａ」およびハッシュキーとして送信元ＩＰアドレス（ＳＩＰ），送信元レイヤ４ポート（ＳＰｏｒｔ）、及びフラグ操作として、「何もしない」という操作「−」を出力する。これにより、ＰＢＳ４０は、フラグの操作を行わず、フラグがＯＦＦのまま、フレームを振分部４５に送信する。
【０１０８】
振分部４５は、ＰＢＳ対応テーブル９００のアクションとして指定されたハッシュキーを用いて物理ポート５０１ｐ〜５０２ｐからいずれかの物理ポートを選択し、選択した物理ポートからフレームを送信する。ここでは、例として、物理ポート５０１ｐが選択されたとする。この場合、フレームは、物理ポート５０１ｐからアプライアンス装置５０１に送信される。
【０１０９】
アプライアンス装置５０１は、受信したフレームを、アプライアンススイッチ４１３の物理ポート５０１ｐに送信する。アプライアンススイッチ４１３は、物理ポート５０１ｐから受信したフレームをＰＢＳ４０に送る。物理ポート５０１ｐはＬＡＧ５ａに属する物理ポートである。また、クライアント３からサーバ１方向のフレームは、フラグの状態がＯＦＦになっている。ＰＢＳ４０は、ＰＢＳ対応テーブル９００を参照して、フロー条件２０２の受信物理ポートが「ＬＡＧ５ａ」で、かつ、フラグがＯＦＦであるＰＢＳエントリ番号２０１を特定する。この場合、ＰＢＳエントリ番号２０１は、ｐ３３である。ｐ３３におけるアクション２０３の送信物理ポートは物理ポート１ｐであり、フラグ操作として、「何もしない」という操作「−」が指定されている。これにより、ＰＢＳ４０は、フラグの操作を行わず、フラグがＯＦＦのまま、フレームを物理ポート１ｐからサーバ１に送信する。
【０１１０】
このように、図９においても、アプライアンススイッチ４１３は、サーバ１とクライアント３の間の通信において、アプライアンススイッチ４１３内を、フレーム内のネットワーク情報を書き換えることなく、当該フレームをレイヤ２中継する。
【０１１１】
また、アプライアンススイッチ４１３は、中継したフレームをサーバ１やクライアント３には送信するが、アプライアンススイッチ４１３を送信元とするフレームを送信しない。したがって、アプライアンススイッチ４１３は、サーバ１上の不正プログラム、クライアント３上の不正プログラム、およびネットワーク２に接続された攻撃者から発見されることはない。
【０１１２】
また、アプライアンススイッチ４１３のアドレス情報は、フレームに含まれることはないため、サーバ１、クライアント３、およびネットワーク２に接続された攻撃者に発見されない。アプライアンススイッチ４１３は、サーバ１、クライアント３、およびネットワーク２に接続された攻撃者からアプライアンススイッチ４１３を宛先とするフレームを受信することもない。したがって、アプライアンススイッチ４１３は、サーバ１上の不正プログラム、クライアント３上の不正プログラム、およびネットワーク２に接続された攻撃者から攻撃されることもない。
【０１１３】
このように、アプライアンススイッチ４１３の存在を隠蔽し、セキュリティ性の向上を図ることができる。また、ネットワーク情報を変更しないため、すなわち、変更処理やそれに伴う処理が不要となるため、中継処理の高速化を図ることができる。
【０１１４】
また、アプライアンススイッチ４１３は、フレームのヘッダを参照することにより、当該フレームの宛先を、同一機能のアプライアンス装置５０１〜５０２に負荷分散することができる。したがって、アプライアンススイッチ４１３は、セッション管理をおこなう必要がないため、処理負荷の低減化や省メモリ化を図ることができる。
【０１１５】
図１０は、サーバ１とネットワーク２との間にアプライアンススイッチおよび複数のアプライアンス装置を接続した場合の通信経路例４を示す説明図である。図９の通信経路例３との相違点を中心に、通信経路例４を説明する。
【０１１６】
通信経路例４のアプライアンススイッチ４１４と、その他の装置との接続形態は、図９の通信経路例３のアプライアンススイッチ４１３と、その他の装置との接続形態と同じである。以下、相違点を示す。
【０１１７】
図９のアプライアンススイッチ４１３は、物理ポート５０１ｐ〜５０２ｐにより、アプライアンス装置群５０との間でＬＡＧ５ａの１つのＬＡＧを構築していたが、図１０のアプライアンススイッチ４１４は、物理ポート５０１ｐ〜５０２ｐにより、アプライアンス装置群５０との間でＬＡＧ５ａ１，及びＬＡＧ５ａ２の２つのＬＡＧを重複して構築する。
【０１１８】
ここで注意すべき事項として、アプライアンス装置群５０からアプライアンススイッチ４１４への通信の場合、アプライアンススイッチ４１４は、フレームを受信した物理ポート５０１ｐ〜５０４ｐは判るが、受信したＬＡＧがＬＡＧ５ａ１，ＬＡＧ５ａ２のどちらかを決める情報は無いので、代表としてどちらか、例えばＬＡＧ５ａ１から受信した、と判断するようにする。そして、ＰＢＳ対応テーブル（図９の９００、図１０の１０００）内で、アプライアンス装置群５０から受信したフレームを条件一致とするフロー条件ｐ３３，ｐ３４の受信物理ポートとして、図９のＰＢＳ対応テーブル９００では、ＬＡＧ５ａを設定していたが、図１０のＰＢＳ対応テーブル１０００では、ＬＡＧ５ａ１を設定するようにする。
【０１１９】
また、振分部４５でフレームの振り分けを行う為のハッシュ関数に与えるハッシュキーに何を含めるかの情報を、図９のアプライアンススイッチ４１３はＰＢＳ対応テーブル９００のアクションとして出力していたが、図１０のアプライアンススイッチ４１４は、ＰＢＳ対応テーブル１０００のアクションとしては出力せず、ＬＡＧの識別子をインデックスとして、ハッシュキーに何を含めるかの情報を出力するテーブル１００１を設けて、このテーブル１００１から出力する。
【０１２０】
たとえば、物理ポート１ｐから受信したフレームが、ＰＢＳ対応テーブル１０００のエントリｐ３１に条件一致するようにフロー条件２０２が設定され、ＰＢＳ４０は、このエントリｐ３１のアクション２０３の送信物理ポートとして、ＬＡＧ識別子である「ＬＡＧ５ａ１」を出力する。ＰＢＳ４０は、ＬＡＧ識別子「ＬＡＧ５ａ１」をインデックスとしてテーブル１００１を参照し、ハッシュキーとして宛先ＩＰアドレス（ＤＩＰ）とレイヤ４の宛先ポート番号（ＤＰｏｒｔ）を出力する。
【０１２１】
また、物理ポート２ｐから受信したフレームがＰＢＳ対応テーブル１０００のエントリｐ３２に条件一致するようにフロー条件２０２が設定され、ＰＢＳ４０は、このエントリｐ３２のアクション２０３の送信物理ポートとして、ＬＡＧ識別子である「ＬＡＧ５ａ２」を出力する。ＰＢＳ４０は、ＬＡＧ識別子「ＬＡＧ５ａ２」をインデックスとしてテーブル１００１を参照し、ハッシュキーとして送信元ＩＰアドレス（ＳＩＰ）とレイヤ４の送信元ポート番号（ＳＰｏｒｔ）を出力する。以上が図９の通信経路例３と図１０の通信経路例４の相違点である。
【０１２２】
図１１は、サーバ１とネットワーク２との間にアプライアンススイッチおよび複数のアプライアンス装置を接続した場合の通信経路例５を示す説明図である。図９の通信経路例３との相違を中心に、通信経路例５を説明する。図９では、ＬＡＧ５ａで物理ポート５０１ｐ〜５０２ｐを共有する構成とした。図１１の通信経路例では、アプライアンススイッチ４１５は、４個の物理ポート５０１ｐ１，５０１ｐ２，５０２ｐ１，５０２ｐ２がアプライアンス装置群５０と接続する４本のリンクを一つのＬＡＧ５ａとする。これにより、アプライアンススイッチ４１５からアプライアンス装置群５０方向への転送の振り分けが行われる。
【０１２３】
ＰＢＳ４０は、物理ポート１ｐ，２ｐに接続される。ＰＢＳ４０は、直接、および、振分部４５を介して物理ポート５０１ｐ１，５０１ｐ２，５０２ｐ１，５０２ｐ２に接続される。
【０１２４】
アプライアンス装置群５０は、対となる２個の物理ポートに接続される２本のリンクを一つのＬＡＧとして、２個のＬＡＧ５１１ａ〜５１２ａを構築して、アプライアンススイッチに接続する。これにより、各アプライアンス装置５０１〜５０２からアプライアンススイッチ４１５方向の転送の振り分けが行われる。すなわち、アプライアンススイッチ４１５からアプライアンス装置群５０にフレームを送信する場合は、アプライアンススイッチ４１５はＬＡＧ５ａでフレームを送信する。一方、各アプライアンス装置５０１〜５０２がアプライアンススイッチ４１５にフレームを送信する場合は、各々対応するＬＡＧ５１１ａ〜５１２ａでフレームを送信する。これにより、各アプライアンス装置５０１〜５０２は、ＬＡＧ５１１ａ〜５１２ａにより負荷分散を実現し、耐障害性の向上を図ることができる。
【０１２５】
また、図１１においても、アプライアンススイッチ４１５は、サーバ１とクライアント３の間の通信において、アプライアンススイッチ４１５内を、フレーム内のネットワーク情報を書き換えることなく、当該フレームをレイヤ２中継する。アプライアンススイッチ４１５は、中継したフレームをサーバ１やクライアント３には送信するが、アプライアンススイッチ４１５を送信元とするフレームを送信しない。したがって、アプライアンススイッチ４１５は、サーバ１上の不正プログラム、クライアント３上の不正プログラム、およびネットワーク２に接続された攻撃者から発見されることはない。
【０１２６】
また、アプライアンススイッチ４１５のアドレス情報は、フレームに含まれることはないため、サーバ１、クライアント３、およびネットワーク２に接続された攻撃者に発見されない。アプライアンススイッチ４１５は、サーバ１、クライアント３、およびネットワーク２に接続された攻撃者からアプライアンススイッチ４１５を宛先とするフレームを受信することもない。したがって、アプライアンススイッチ４１５は、サーバ１上の不正プログラム、クライアント３上の不正プログラム、およびネットワーク２に接続された攻撃者から攻撃されることもない。
【０１２７】
このように、アプライアンススイッチ４１５の存在を隠蔽し、セキュリティ性の向上を図ることができる。また、ネットワーク情報を変更しないため、すなわち、変更処理やそれに伴う処理が不要となるため、中継処理の高速化を図ることができる。
【０１２８】
また、アプライアンススイッチ４１５は、フレームのヘッダを参照することにより、当該フレームの宛先を、同一機能のアプライアンス装置５０１〜５０４に負荷分散することができる。したがって、アプライアンススイッチ４１５は、セッション管理をおこなう必要がないため、処理負荷の低減化や省メモリ化を図ることができる。
【０１２９】
図１２は、サーバ１とネットワーク２との間にアプライアンススイッチ４および複数のアプライアンス装置５を接続した場合の通信経路例６を示す説明図である。図１２の通信経路例６では、アプライアンススイッチ４１６は、図６に示したように、２つのアプライアンス装置５１，５２と接続するとともに、アプライアンス装置群５０と接続する。アプライアンス装置群５０は、複数（本例では、４台）のアプライアンス装置５０１〜５０４である。アプライアンス装置５０１〜５０４は、同一機能である。アプライアンス装置群５０は、必要な処理性能を実現するため、同一機能のアプライアンス装置５０１〜５０４で負荷分散する。ＰＢＳ４０およびＰＢＳ対応テーブルは、図６に示した構成と、図８〜図１１のいずれかに示した構成とを組み合わせた構成にすればよい。
【０１３０】
一般的にアプライアンス装置を負荷分散するアプライアンススイッチ４への要求事項として、１方向のフローを振り分けたアプライアンス装置には、反対方向のフローも振り分けられることが要求される。ここで、フローとは、通信のエンド−エンド間、この例では一つのサーバ１とクライアント３の間で通信される一連のフレームである。
【０１３１】
アプライアンススイッチ４１６は、通信するアプライアンス装置をフローごとに変えることも要求される機能の１つである。たとえば、サーバ１にアクセスされたときの危険性が高いプロトコル（たとえば、ｔｅｌｎｅｔやｆｔｐ）のアプリケーションを用いる場合、アプライアンススイッチ４１６は、フローがファイヤウォール機能を有するアプライアンス装置を経由するように通信経路を設定するのが好ましい。また、トラフィック量が多くなるプロトコル（たとえば、ｆｔｐ）のアプリケーションを用いる場合、アプライアンススイッチ４１６は、帯域制御機能を有するアプライアンス装置を経由するように通信経路を設定するのが好ましい。
【０１３２】
このような場合、アプリケーションは、たとえば、ｔｃｐ（ｔｒａｎｓｍｉｓｓｉｏｎ  ｃｏｎｔｒｏｌ  ｐｒｏｔｏｃｏｌ）、ｕｄｐ（ｕｓｅｒ  ｄａｔａｇｒａｍ  ｐｒｏｔｏｃｏｌ）のポート番号のようなレイヤ４のネットワーク情報で識別することができる。したがって、ＰＢＳ４０は、ｔｃｐ、ｕｄｐのポート番号を検索キーとすることで、それぞれのアプリケーション毎に、通信相手となるアプライアンス装置を変更することができる。
【０１３３】
また、信頼できるサイトからのアクセスはファイヤウォールを通さないようにしたい、という場合も考えられる。このような場合、アプリケーションは、信頼できるサイトからのアクセスかどうかを、たとえば、ＩＰアドレスのようなレイヤ３のアドレスで識別することができる。したがって、ＰＢＳ４０は、ＩＰアドレスをＰＢＳ４０の検索キーとすることで、信頼できるサイト以外からのアクセスを、ファイヤウォール機能を有するアプライアンス装置に送信することができる。
【０１３４】
このように、図１２においても、アプライアンススイッチ４１６は、サーバ１とクライアント３の間の通信において、アプライアンススイッチ４１６内を、フレーム内のネットワーク情報を書き換えることなく、当該フレームをレイヤ２中継する。アプライアンススイッチ４１６は、中継したフレームをサーバ１やクライアント３には送信するが、アプライアンススイッチ４１６を送信元とするフレームを送信しない。したがって、アプライアンススイッチ４１６は、サーバ１上の不正プログラム、クライアント３上の不正プログラム、およびネットワーク２に接続された攻撃者から発見されることはない。
【０１３５】
また、アプライアンススイッチ４１６のアドレス情報は、フレームに含まれることはないため、サーバ１、クライアント３、およびネットワーク２に接続された攻撃者に発見されない。アプライアンススイッチ４１６は、サーバ１、クライアント３、およびネットワーク２に接続された攻撃者からアプライアンススイッチ４１６を宛先とするフレームを受信することもない。したがって、アプライアンススイッチ４１６は、サーバ１上の不正プログラム、クライアント３上の不正プログラム、およびネットワーク２に接続された攻撃者から攻撃されることもない。
【０１３６】
このように、アプライアンススイッチ４１６の存在を隠蔽し、セキュリティ性の向上を図ることができる。また、ネットワーク情報を変更しないため、すなわち、変更処理やそれに伴う処理が不要となるため、中継処理の高速化を図ることができる。
【０１３７】
また、アプライアンススイッチ４１６は、フレームのヘッダを参照することにより、当該フレームの宛先を、同一機能のアプライアンス装置５０１〜５０４に負荷分散することができる。したがって、アプライアンススイッチ４１６は、セッション管理をおこなう必要がないため、処理負荷の低減化や省メモリ化を図ることができる。
【０１３８】
図１３は、アプライアンススイッチにおける統計値の収集例１を示す説明図である。図１３では、アプライアンススイッチ４（４０１〜４０４，４１１〜４１６）とアプライアンス装置５との間の通信において、アプライアンススイッチ４のフレームを送信した物理ポートと、同一フローでフレームを受信する物理ポートとが異なる場合の収集例である。アプライアンススイッチ４は、アプライアンス装置５と接続される物理ポート毎の送受信フレームの統計値を定期的に読み出す。これにより、アプライアンススイッチ４は、アプライアンス装置５の正常性を確認する。図１３の収集例１は、図２、図３、図６、図８、図１２に適用可能である。図１３では、一例として、図２に適用した場合を例に挙げて説明する。
【０１３９】
アプライアンススイッチ４は、プログラムを実行するプロセッサ１２００と、プログラムを記憶する記憶デバイス１２１０と、第１上り統計値計数部１２０１と、第２上り統計値計数部１２０２と、第１下り統計値計数部１２１１と、第２下り統計値計数部１２１２と、を有する。第１上り統計値計数部１２０１、第２上り統計値計数部１２０２、第１下り統計値計数部１２１１、および第２下り統計値計数部１２１２は、ハードウェアで構成されてもよく、記憶デバイス１２１０に記憶されたプログラムとして実装されてもよい。
【０１４０】
第１上り統計値計数部１２０１は、アプライアンス装置５側の物理ポート５ｐ１からサーバ１側の物理ポート１ｐへ送られる受信フレーム数や受信オクテット数を計数する。
【０１４１】
第２上り統計値計数部１２０２は、クライアント３側の物理ポート２ｐからアプライアンス装置５側の物理ポート５ｐ２へ送られる送信フレーム数や送信オクテット数を計数する。
【０１４２】
第１下り統計値計数部１２１１は、サーバ１側の物理ポート１ｐからアプライアンス装置５側の物理ポート５ｐ１へ送られる送信フレーム数や送信オクテット数を計数する。
【０１４３】
第２下り統計値計数部１２１２は、アプライアンス装置５側の物理ポート５ｐ２からクライアント側の物理ポート２ｐへ送られる受信フレーム数や受信オクテット数を計数する。
【０１４４】
プロセッサは、第１上り統計値計数部１２０１、第２上り統計値計数部１２０２、第１下り統計値計数部１２１１、および第２下り統計値計数部１２１２から、繰り返し（たとえば１０秒毎に）フレーム数やオクテット数を収集する。プロセッサ１２００は、収集したフレーム数およびオクテット数を用いて、アプライアンス装置５の正常性を確認する。そして、プロセッサ１２００は、異常がある場合にワーニングメッセージを出力する。
【０１４５】
図１４は、アプライアンススイッチにおける統計値の収集例２を示す説明図である。図１４では、アプライアンススイッチ４とアプライアンス装置５との間の通信において、アプライアンススイッチ４のフレームを送信した物理ポートと、同一フローでフレームを受信する物理ポートとが同じ場合の収集例である。アプライアンススイッチ４は、アプライアンス装置５と接続される物理ポート毎の送受信フレームの統計値を定期的に読み出す。これにより、アプライアンススイッチ４は、アプライアンス装置５の正常性を確認する。図１４の収集例２は、図４、図９、図１０、図１２に適用可能である。図１４では、一例として、図４に適用した場合を例に挙げて説明する。
【０１４６】
アプライアンススイッチ４は、プログラムを実行するプロセッサ１２００と、プログラムを記憶する記憶デバイス１２１０と、第１統計値計数部１３０１と、第２統計値計数部１３０２と、を有する。第１統計値計数部１３０１および第２統計値計数部１３０２は、ハードウェアで構成されてもよく、記憶デバイス１２１０に記憶されたプログラムとして実装されてもよい。
【０１４７】
第１統計値計数部１３０１は、アプライアンス装置５側の物理ポート５ｐからサーバ側の物理ポート１ｐへ送られる受信フレーム数や受信オクテット数、及び、アプライアンス装置５側の物理ポート５ｐからクライアント３側の物理ポート２ｐへ送られる受信フレーム数や受信オクテット数を計数する。
【０１４８】
第２統計値計数部１３０２は、クライアント３側の物理ポート２ｐからアプライアンス装置５側の物理ポート５ｐへ送られる送信フレーム数や送信オクテット数、及び、サーバ１側の物理ポート１ｐからアプライアンス装置５側の物理ポート５ｐへ送られる送信フレーム数や送信オクテット数を計数する。
【０１４９】
プロセッサ１２００は、第１統計値計数部１３０１、および第２統計値計数部１３０２から、繰り返し（たとえば１０秒毎に）フレーム数やオクテット数を収集する。プロセッサ１２００は、収集したフレーム数およびオクテット数を用いて、アプライアンス装置の正常性を確認する。そして、プロセッサ１２００は、異常がある場合にワーニングメッセージを出力する。
【０１５０】
図１３および図１４において、プロセッサ１２００は、収集した統計値の増加量を送信フレーム数と受信フレーム数とで比較することで、アプライアンス装置でフレームが廃棄されたか否かを判定する。具体的には、たとえば、プロセッサ１２００は、送信フレーム数の増加量から、受信フレーム数の増加量を減算する。減算結果は、アプライアンス装置５でのフレーム廃棄増加量にほぼ一致する。ただし、フレームは常に流れているので、アプライアンス装置５でフレーム廃棄が無い場合でも、送信フレーム数の増加量と受信フレーム数の増加量が完全に一致するとは限らない。
【０１５１】
また、図５および図１１に示すように、アプライアンス装置５側でリンクアグリゲーションを構築している場合、このアプライアンス装置５側の一つのリンクアグリゲーションに属する複数の物理ポート間で通信が混じる。したがって、アプライアンススイッチ４は、アプライアンス装置５の一つのリンクアグリゲーションに属する全物理ポートの送信の統計値の合計値と、受信の統計値の合計値を用いて、アプライアンス装置の正常性を確認する。たとえば、図１１で、アプライアンススイッチ４１５の物理ポート５０１ｐ１と５０１ｐ２は、アプライアンス装置５０１側でリンクアグリゲーション５１１ａを組んでいる。したがって、アプライアンススイッチ４１５は、物理ポート５０１ｐ１と５０１ｐ２の送信の統計値の合計値と、受信の統計値の合計値を用いて、アプライアンス装置５０１の正常性を確認する。
【０１５２】
送信フレーム数の増加量から受信フレーム数の増加量を減算した値を、「フレーム廃棄増加量」と称す。フレーム廃棄増加量の、送信フレーム数の増加量に対する比率を、「フレーム廃棄率」と称す。プロセッサ１２００は、フレーム廃棄率が廃棄率閾値（たとえば、１％）未満であれば、アプライアンス装置は正常にフレームを処理していると判定する。
【０１５３】
また、プロセッサ１２００は、アプライアンス装置でのフレーム廃棄率が廃棄率閾値以上になる事象が連続で発生した回数（連続発生回数）を計数する。プロセッサ１２００は、当該計数した回数が連続発生回数閾値（たとえば、３回）に達した場合、ワーニングメッセージを出力する。
【０１５４】
また、アプライアンス装置が負荷分散されていた場合、プロセッサ１２００は、フレーム廃棄が発生しているアプライアンス装置５を自動的に切り離し、残余のアプライアンス装置５にトラフィックを振り分けるようにしてもよい。
【０１５５】
また、廃棄率閾値および連続発生回数閾値は、それぞれワーニングメッセージを出力する場合と、アプライアンス装置５を切り離す場合とで異なる値に設定されてもよい。また、廃棄率閾値および連続発生回数閾値は、構成定義でユーザに指定されてもよい。
【０１５６】
たとえば、ワーニングメッセージを出力する場合、廃棄率閾値を１％とし、連続発生回数閾値を２回とする。また、アプライアンス装置５を切り離す場合、廃棄率閾値を５％とし、連続発生回数閾値を５回とする。そして、プロセッサ１２００は、それぞれ独立に判定する。
【０１５７】
また、アプライアンス装置５がファイヤウォールのようにフレームを廃棄する機能を有する装置である場合は、たとえば、次のようになる。フレーム廃棄率が廃棄率閾値以上になった場合、その原因は、アプライアンス装置５の性能不足と、不正フレームの受信と、が考えられる。この場合、ワーニングメッセージを出力するだけにすべきである。したがって、この場合は、ユーザは、構成定義でアプライアンス装置５を切り離す処理を行わないように指定する。
【０１５８】
図１５は、プロセッサ１２００による判定処理手順例を示すフローチャート（前半）である。図１６は、プロセッサ１２００による判定処理手順例を示すフローチャート（後半）である。具体的には、たとえば、プロセッサ１２００が、物理ポート毎の送受信統計を定期的に収集して、アプライアンス装置５がフレームを廃棄させている状態が継続していたときに、ワーニングメッセージを出力する処理手順例を示す。
【０１５９】
まず、プロセッサ１２００は処理を開始する（ステップＳ１５０１）。プロセッサ１２００は、変数の初期化をおこなう（ステップＳ１５０２、Ｓ１５０３）。ステップＳ１５０２において、変数「最初の読み出し」は、処理開始時の最初に統計値を読み出した状態であるか否かを示す変数である。この変数は、統計値の前回の値との差分を求めるときに、最初は前回の値が無いので、差分を求める処理をスキップするために使用される。
【０１６０】
変数「回数閾値超え状態」は、フレーム廃棄率が廃棄率閾値以上になる状態が連続して、連続発生回数閾値以上発生した状態を示す変数である。この状態変数は、連続発生回数閾値未満の状態から連続発生回数に到達した状態に遷移したときにだけワーニングメッセージを出力するために使用される。なお、連続発生回数閾値は、１以上の整数とする。
【０１６１】
変数「連続発生回数」は、フレーム廃棄率が連続して廃棄率閾値以上となった回数を示し、「連続発生回数」が連続発生回数閾値に達したら「回数閾値超え状態」が０から１に遷移し、プロセッサ１２００は、「連続発生回数」のインクリメントを停止する。
【０１６２】
ステップＳ１５０３は、変数に保持している統計値の読み出し値（送信フレーム数、送信オクテット数、受信フレーム数、受信オクテット数）を最初にゼロにする処理である。
【０１６３】
プロセッサ１２００は、ステップＳ１５０４のループ処理を繰り返し実行する。ループ処理（ステップＳ１５０４）の詳細は、ステップＳ１５０５〜１５０９、Ｓ１６０１〜Ｓ１６１２で説明する。
【０１６４】
ループ処理（ステップＳ１５０４）において、プロセッサ１２００は、まず、前回のループ処理（ステップＳ１５０４）で読んだ統計値（送信フレーム数、送信オクテット数、受信フレーム数、受信オクテット数）を、前回の統計値（前回送信フレーム数、前回送信オクテット数、前回受信フレーム数、前回受信オクテット数）に代入する（ステップＳ１５０５）。
【０１６５】
つぎに、プロセッサ１２００は、今回のループ処理（ステップＳ１５０４）の統計値（送信フレーム数リード値、送信オクテット数リード値、受信フレームリード値、受信オクテット数リード値）を取得して、統計値（送信フレーム数、送信オクテット数、受信フレーム数、受信オクテット数）に設定する（ステップＳ１５０６）。
【０１６６】
具体的には、たとえば、図１３の構成の場合、上りの通信経路と下りの通信経路とに分けて計数する必要があるため、プロセッサ１２００は、第１上り統計値計数部１２０１から受信フレーム数および受信オクテット数を取得し、第２上り統計値計数部１２０２から送信フレーム数および送信オクテット数を取得する。
【０１６７】
また、プロセッサ１２００は、第１下り統計値計数部１２１１から送信フレーム数および送信オクテット数を取得し、第２下り統計値計数部１２１２から受信フレーム数および受信オクテット数を取得する。このように、図１３の場合は、プロセッサ１２００は、統計値（送信フレーム数、送信オクテット数、受信フレーム数、受信オクテット数のリード値）を２組取得して、各々統計値（送信フレーム数、送信オクテット数、受信フレーム数、受信オクテット数）設定する。このように、統計値が２組ある場合、プロセッサ１２００は、以降のステップＳ１５０７〜Ｓ１５０９、Ｓ１６０１〜Ｓ１６１２を組ごとに実行する。
【０１６８】
また、図１４の構成の場合、プロセッサ１２００は、１組の統計値（送信フレーム数、送信オクテット数、受信フレーム数、受信オクテット数のリード値）を取得して、統計値（送信フレーム数、送信オクテット数、受信フレーム数、受信オクテット数）に設定する。
【０１６９】
つぎに、プロセッサ１２００は、今回が最初の読出しであるか否かを判定する（ステップＳ１５０７）。具体的には、たとえば、プロセッサ１２００は、ステップＳ１５０２で設定した変数「最初の読み出し」の値が「１」であるか否かを判定する。
【０１７０】
最初の読出しである場合（ステップＳ１５０７：Ｙｅｓ）、すなわち、変数「最初の読み出し」の値が「１」である場合、プロセッサ１２００は、変数「最初の読み出し」の値を「０」にし（ステップＳ１５０８）、図１６のステップＳ１６１２に移行する。ステップＳ１６１２では、プロセッサ１２００は、読み出し間隔の時間分待機し（ステップＳ１６１２）、ループ処理（ステップＳ１５０４）の先頭に戻る。
【０１７１】
一方、ステップＳ１５０７において、最初の読出しでない場合（ステップＳ１５０７：Ｎｏ）、すなわち、変数「最初の読み出し」の値が「０」である場合、プロセッサ１２００は、前回の統計値から今回の統計値までの増加量を算出し（ステップＳ１５０９）、図１６のステップＳ１６０１に移行する。
【０１７２】
前回の統計値とは、ステップＳ１５０５で設定された前回送信フレーム数、前回送信オクテット数、前回受信フレーム数、前回受信オクテット数である。今回の統計値とは、ステップＳ１５０６で設定された送信フレーム数、送信オクテット数、受信フレーム数、受信オクテット数である。
【０１７３】
プロセッサ１２００が算出する増加量は、４種類ある。送信フレーム数増加量は、送信フレーム数から前回送信フレーム数を減算した値である。送信オクテット数増加量は、送信オクテット数から前回送信オクテット数を減算した値である。受信フレーム数増加量は、受信フレーム数から前回受信フレーム数を減算した値である。受信オクテット数増加量は、受信オクテット数から前回受信オクテット数を減算した値である。
【０１７４】
図１６に移り、プロセッサ１２００は、フレーム廃棄増加量とフレーム廃棄率とを算出する（ステップＳ１６０１）。フレーム廃棄増加量は、ステップＳ１５０９で算出された送信フレーム数増加量から受信フレーム数増加量を減算した値である。フレーム廃棄率は、所定期間（ステップＳ１６１２の読み出し間隔）において廃棄されたフレームの割合を示す値であり、フレーム廃棄増加量を、ステップＳ１５０９で算出された送信フレーム数増加量で除算した値である。
【０１７５】
そして、プロセッサ１２００は、ステップＳ１６０１で算出されたフレーム廃棄率が廃棄率閾値以上であるか否かを判定する（ステップＳ１６０２）。フレーム廃棄率が廃棄率閾値以上である場合（ステップＳ１６０２：Ｙｅｓ）、プロセッサ１２００は、ステップＳ１６０３〜Ｓ１６０７を実行する。一方、フレーム廃棄率が廃棄率閾値以上でない場合（ステップＳ１６０２：Ｎｏ）、プロセッサ１２００は、ステップＳ１６０８〜Ｓ１６１１を実行する。まず、ステップＳ１６０３〜Ｓ１６０７について説明する。
【０１７６】
フレーム廃棄率が廃棄率閾値以上である場合（ステップＳ１６０２：Ｙｅｓ）、プロセッサ１２００は、ステップＳ１５０２で設定された変数「回数閾値超え状態」の値が「０」か否かを判定する（ステップＳ１６０３）。「０」でない場合（ステップＳ１６０３：Ｎｏ）、連続発生回数が連続発生回数閾値に達していることを意味する。すなわち、フレーム廃棄率が廃棄率閾値以上になる状態が連続して、連続発生回数閾値以上発生したことを意味する。この場合、プロセッサ１２００は、読み出し間隔の時間（たとえば、１０秒）分待機し（ステップＳ１６１２）、ループ処理（ステップＳ１５０４）の先頭に戻る。
【０１７７】
変数「回数閾値超え状態」の値が「０」である場合（ステップＳ１６０３：Ｙｅｓ）、連続発生回数が連続発生回数閾値に達していないことを意味する。すなわち、フレーム廃棄率が廃棄率閾値以上になる状態が連続して、連続発生回数閾値以上発生していないことを意味する。この場合、プロセッサ１２００は、変数「廃棄率閾値超え回数」をインクリメントする（ステップＳ１６０４）。
【０１７８】
つぎに、プロセッサ１２００は、変数「連続発生回数」が連続発生回数閾値以上であるか否かを判定する（ステップＳ１６０５）。連続発生回数閾値以上でない場合（ステップＳ１６０５：Ｎｏ）、プロセッサ１２００は、読み出し間隔の時間分待機し（ステップＳ１６１２）、ループ処理（ステップＳ１５０４）の先頭に戻る。
【０１７９】
連続発生回数以上である場合（ステップＳ１６０５：Ｙｅｓ）、プロセッサ１２００は、変数「回数閾値超え状態」の値を「０」から「１」に更新する（ステップＳ１６０６）。すなわち、連続発生回数が連続発生回数閾値に達したことを意味する。したがって、プロセッサ１２００は、廃棄率閾値超えのワーニングメッセージを出力し（ステップＳ１６０７）、読み出し間隔の時間分待機し（ステップＳ１６１２）、ループ処理（ステップＳ１５０４）の先頭に戻る。ワーニングメッセージは、アプライアンス装置５が正常でないことを示す警報情報である。
【０１８０】
つぎに、ステップＳ１６０８〜Ｓ１６１１について説明する。ステップＳ１６０２で「フレーム廃棄率」が「廃棄率閾値」以上でない場合（ステップＳ１６０２：Ｎｏ）、プロセッサ１２００は、「連続発生回数」を「０」にリセットする（ステップＳ１６０８）。つぎに、プロセッサ１２００は、変数「回数閾値超え状態」の値が「１」か否かを判定する（ステップＳ１６０９）。変数「回数閾値超え状態」の値が「１」でない場合（ステップＳ１６０９：Ｎｏ）、連続発生回数が連続発生回数閾値に達していないことを意味する。すなわち、フレーム廃棄率が廃棄率閾値以上になる状態が連続して、連続発生回数閾値以上発生していないことを意味する。この場合、プロセッサ１２００は、読み出し間隔の時間分待機し（ステップＳ１６１２）、ループ処理（ステップＳ１５０４）の先頭に戻る。
【０１８１】
一方、変数「回数閾値超え状態」の値が「１」である場合（ステップＳ１６０９：Ｙｅｓ）、連続発生回数が連続発生回数閾値に達していることを意味する。すなわち、フレーム廃棄率が廃棄率閾値以上になる状態が連続して、連続発生回数閾値以上発生したことを意味する。この場合、プロセッサ１２００は、変数「回数閾値超え状態」の値を「１」から「０」にリセットする（ステップＳ１６１０）。そして、プロセッサ１２００は、廃棄率閾値超え復旧メッセージを出力し（ステップＳ１６１１）、読み出し間隔の時間分待機し（ステップＳ１６１２）、ループ処理（ステップＳ１５０４）の先頭に戻る。
【０１８２】
以上が、ワーニングメッセージおよび復旧メッセージを出力する処理を示すフローチャートである。アプライアンス装置５を切り離す処理の場合は、廃棄率閾値超えワーニング表示処理（ステップＳ１６０７）を、アプライアンス装置の切り離しを促す警報情報を出力する出力処理に置き換え、かつ、その後は、ステップＳ１６１２を実行せずに処理を終了させる。このあと、ユーザが、切り離されたアプライアンス装置５の正常性を確認後、当該切り離されたアプライアンス装置５をユーザの操作により復帰させることになる。すなわち、復旧表示（ステップＳ１６１１）のように自動で復旧はさせない。
【０１８３】
また、プロセッサ１２００は、送信オクテット数増加量を送信フレーム数増加量で除算することで、平均送信フレーム長を求めることができる。同様に、プロセッサ１２００は、受信オクテット数増加量を受信フレーム数増加量で除算することで、平均受信フレーム長を求めることができる。
【０１８４】
ステップＳ１６０７において、ワーニングメッセージの出力処理やアプライアンス装置５の切り離しを示すメッセージ出力処理をする場合に、プロセッサ１２００は、送信フレーム数増加量、受信フレーム数増加量、送信オクテット数増加量、受信オクテット増加量、平均送信フレーム長、および平均受信フレーム長を表示してもよい。これにより、ユーザは、平均送信フレーム長および平均受信フレーム長を知ることができ、フレーム廃棄の原因が以下のいずれに該当するのかという分析に適用することができる。
【０１８５】
・平均送信フレーム長または平均受信フレーム長が短く、アプライアンス装置５のフレーム処理性能が足りていないのか。
・平均送信フレーム長または平均受信フレーム長が長く、アプライアンス装置５のフレーム処理性能は足りているがトラフィック処理性能が足りていないのか。
・他の原因でアプライアンス装置５の処理性能が低下しているのか。
【０１８６】
以上説明したように、本実施例にかかるアプライアンススイッチは、サーバ１とクライアント３の間の通信において、アプライアンススイッチ内を、フレーム内のネットワーク情報を書き換えることなく、当該フレームをレイヤ２中継する。アプライアンススイッチ４は、中継したフレームをサーバ１やクライアント３には送信するが、アプライアンススイッチ４を送信元とするフレームを送信しない。したがって、アプライアンススイッチ４は、サーバ１上の不正プログラム、クライアント３上の不正プログラム、およびネットワーク２に接続された攻撃者から発見されることはない。
【０１８７】
また、アプライアンススイッチ４のアドレス情報は、フレームに含まれることはないため、サーバ１、クライアント３、およびネットワーク２に接続された攻撃者に発見されない。アプライアンススイッチ４は、サーバ１、クライアント３、およびネットワーク２に接続された攻撃者からアプライアンススイッチ４を宛先とするフレームを受信することもない。したがって、アプライアンススイッチ４は、サーバ１上の不正プログラム、クライアント３上の不正プログラム、およびネットワーク２に接続された攻撃者から攻撃されることもない。
【０１８８】
このように、アプライアンススイッチの存在を隠蔽し、セキュリティ性の向上を図ることができる。また、ネットワーク情報を変更しないため、すなわち、変更処理やそれに伴う処理が不要となるため、中継処理の高速化を図ることができる。
【０１８９】
また、アプライアンススイッチ４を同一機能を有する複数のアプライアンス装置と接続することにより、アプライアンス装置の負荷分散を図ることができる。また、アプライアンススイッチ４とアプライアンス装置との間をリンクアグリゲーションで構成することにより、耐障害性の向上を図ることができる。また、アプライアンス装置のフレーム廃棄率を監視することにより、アプライアンス装置の異常を検出することができる。
【０１９０】
なお、上述した実施例では、サーバから１以上のアプライアンス装置を経由してクライアントにフレームを送信する下り方向の通信経路と、クライアントから１以上のアプライアンス装置を経由してサーバにフレームを送信する上り方向の通信経路と、について説明したが、通信経路は、サーバから１以上のアプライアンス装置を経由して元のサーバに戻る通信経路や、クライアントから１以上のアプライアンス装置を経由して元のクライアントに戻る通信経路でもよい。
【０１９１】
なお、本発明は前述した実施例に限定されるものではなく、添付した特許請求の範囲の趣旨内における様々な変形例及び同等の構成が含まれる。例えば、前述した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに本発明は限定されない。また、ある実施例の構成の一部を他の実施例の構成に置き換えてもよい。また、ある実施例の構成に他の実施例の構成を加えてもよい。また、各実施例の構成の一部について、他の構成の追加、削除、または置換をしてもよい。
【０１９２】
また、前述した各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等により、ハードウェアで実現してもよく、プロセッサ１２００がそれぞれの機能を実現するプログラムを解釈し実行することにより、ソフトウェアで実現してもよい。
【０１９３】
各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリ、ハードディスク、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）等の記憶装置、又は、ＩＣ（Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）カード、ＳＤカード、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ）の記録媒体に格納することができる。
【０１９４】
また、制御線や情報線は説明上必要と考えられるものを示しており、実装上必要な全ての制御線や情報線を示しているとは限らない。実際には、ほとんど全ての構成が相互に接続されていると考えてよい。
【符号の説明】
【０１９５】
１  サーバ
２  ネットワーク
３  クライアント
４  アプライアンススイッチ
５  アプライアンス装置
４０  ＰＢＳ
２００，４００，５００，７００，８００，９００，１０００，１１００  ＰＢＳ対応テーブル
【図１】
2017208639.tif 000003
【図２】
2017208639.tif 000004
【図３】
2017208639.tif 000005
【図４】
2017208639.tif 000006
【図５】
2017208639.tif 000007
【図６】
2017208639.tif 000008
【図７】
2017208639.tif 000009
【図８】
2017208639.tif 000010
【図９】
2017208639.tif 000011
【図１０】
2017208639.tif 000012
【図１１】
2017208639.tif 000013
【図１２】
2017208639.tif 000014
【図１３】
2017208639.tif 000015
【図１４】
2017208639.tif 000016
【図１５】
2017208639.tif 000017
【図１６】
2017208639.tif 000018