(57)【要約】【課題】制御装置上に新たなアプリケーションが起動した場合に、制御装置が中継装置との間のパケット転送規則を動的に設定することができ、もって、従来利用されてきたアプリケーションの改修をせずに、中継装置と制御装置を分離および統合できること。【解決手段】制御装置２００は、中継装置３００のアドレス情報に対応付けて設定された仮想ＩＦ２２２と、アプリケーション部２１０が仮想ＩＦ２２２にアクセスしたことを検知した場合に、ネットワークＩＦ３９０を用いて受信したパケットを制御装置２００に転送するパケット転送規則を設定するよう中継装置３００に要求し、中継装置３００から仮想ＩＦ２２２に対応付けて制御装置２００にパケットを転送し、中継装置３００は、制御装置２００によって要求されたパケット転送規則を設定する。【選択図】      図１
2004320694.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークインタフェースを用いてパケットを送受信する中継装置と、該中継装置との間で該パケットを転送するパケット転送規則に基づいてアプリケーションを用いて該パケットに応答する制御装置とを接続して構成されるパケット処理システムにおいて、
前記制御装置は、
前記中継装置のアドレス情報に対応付けて設定されたシンボル部と、
前記アプリケーションが前記シンボル部にアクセスしたことを検知した場合に、前記ネットワークインタフェースを用いて受信した前記パケットを前記制御装置に転送するパケット転送規則を設定するよう前記中継装置に要求し、該中継装置から該シンボル部に対応付けて該制御装置に該パケットを転送するパケット転送規則を設定する転送制御手段と、を備え、
前記中継装置は、
前記制御装置の転送制御手段によって要求されたパケット転送規則を設定する転送制御手段を備えたことを特徴とするパケット処理システム。
【請求項２】
前記制御装置は、
前記転送制御手段は、前記アプリケーションが前記シンボル部へアクセスする通信ポートを閉じたことを検出した場合に、前記ネットワークインタフェースを用いて受信した前記パケットを前記制御装置に転送するパケット転送規則を削除するよう前記中継装置に要求し、該中継装置から該シンボル部に対応付けて該制御装置に該パケットを転送するパケット転送規則を削除し、
前記中継装置は、
前記転送制御手段は、前記制御装置の転送制御手段によって要求されたパケット転送規則を削除することを特徴とする請求項１に記載のパケット処理システム。
【請求項３】
前記シンボル部は、前記ネットワークインタフェースに対応する仮想インタフェースであることを特徴とする請求項１または請求項２に記載のパケット処理システム。
【請求項４】
前記パケット転送規則は、前記パケットをトンネル識別子を含むようにカプセル化して前記制御装置と前記中継装置の間で転送することを特徴とする請求項１または請求項２に記載のパケット処理システム。
【請求項５】
前記トンネル識別子は、前記パケットを受信したネットワークインタフェースと、該ネットワークインタフェースに対応する仮想インタフェースと、前記制御装置のアドレスと、該制御装置のアプリケーションのプロトコルアドレスとに対応付けられた上りトンネル識別子と、該パケットを送信する送信仮想インタフェースと、前記中継装置のアドレスと、該送信仮想インタフェースに対応するネットワークインタフェースとに対応付けられた下りトンネル識別子とからなることを特徴とする請求項４に記載のパケット処理システム。
【請求項６】
前記シンボル部は、前記中継装置の保持するＩＰアドレスに対応する仮想ＩＰアドレスであることを特徴とする請求項１または請求項２に記載のパケット処理システム。
【請求項７】
前記パケット転送規則は、前記パケットのアドレス変換をして前記制御装置と前記中継装置の間でパケット転送することを特徴とする請求項１または請求項２に記載のパケット処理システム。
【請求項８】
前記アドレス変換は、前記中継装置において前記パケットの宛先アドレスを前記仮想ＩＰアドレスから前記制御装置のアドレスへ変換して、該制御装置に該パケットを転送した後に、該宛先アドレスを該制御装置のアドレスから該仮想ＩＰアドレスに変換する上りアドレス変換と、該制御装置において該パケットの送信元アドレスを該仮想ＩＰアドレスから該制御装置のアドレスに変換して、該中継装置に該パケットを転送した後に、該パケットの送信元アドレスを該制御装置のアドレスから該仮想ＩＰアドレス変換する下りアドレス変換とからなることを特徴とする請求項７に記載のパケット処理システム。
【請求項９】
前記アプリケーションは、ルータの経路制御プロセスであることを特徴とする請求項１または請求項２に記載のパケット処理システム。
【請求項１０】
前記制御装置と前記中継装置は、データリンク層のネットワークで相互に接続され、該データリンク層のプロトコルを使用してデータ交換を行うことを特徴とする請求項１または請求項２に記載のパケット処理システム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、中継装置と制御装置に分離および統合されたパケット処理システムに関し、特に、制御装置上に新たなアプリケーションが起動した場合に、制御装置が中継装置との間のパケット転送規則を動的に設定することができ、もって、従来利用されてきたアプリケーションの改修をせずに、中継装置と制御装置を分離および統合できるパケット処理システムに関するものである。
【０００２】
【従来の技術】
近年、インターネットの発展に伴い、ネットワークの大規模化、高速化、サービス要求の多様化が進み、ネットワークを構成する通信装置に対する制御処理能力やそれに必要なメモリなどの情報処理リソースの要求が急速に増大している。このような背景から、通信装置を中継装置と制御装置に分離し、急速に増大する情報処理リソースの要求に見合う制御装置を提供すると共に、ネットワークを統合するという取り組みが行われてきた。
【０００３】
例えば、非特許文献１では、ネットワークを統合するためにネットワークを構成する通信装置に関して中継機能と制御機能の定義と両者の間のインタフェースの規定についてＩＥＥＥのＰ１５２０ＷＧが検討した従来技術が開示されている。また、非特許文献２では、中継装置が中継装置上の仮想制御装置に対してネットワークノードからサービス要求を受けた場合に、予め設定された中継装置と制御装置の間のパケット転送規則に基づいて最適な制御装置にサービス要求を振分ける従来技術が開示されている。
【０００４】
【非特許文献１】
Ｐ１５２０  Ｒｅｆｅｒｅｎｃｅ  Ｍｏｄｅｌ［Ｇｉｌａｄ  Ｇｏｒｅｎ］（ｄｏｃ）、Ｄｏｃｕｍｅｎｔｓ，Ｆｏｉｌｓ  ａｎｄ  Ｍｉｎｕｔｅｓｏｆ  ｔｈｅ  Ｆｉｆｔｈ  ＷＧ  Ｍｅｅｔｉｎｇ、ｈｅｌｄ  ｉｎ  Ｐｒｉｎｃｅｔｏｎ（Ｊａｎ  １８−１９，１９９９）、［平成１５年４月１６日検索］インタネット＜ＵＲＬ：ｈｔｔｐ：／／ｗｗｗ．ｉｅｅｅ−ｐｉｎ．ｏｒｇ／＞
【非特許文献２】
上谷一，今野徹，“連載ロードバランサの本質，第１回パケットフローから負荷分散の基本を理解する“，「Ｍａｓｔｅｒ  ｏｆ  ＩＰＮｅｔｗｏｒｋ」フォーラム連載  ［成１５年５月２０日検索］インタネット＜ＵＲＬ：ｈｔｔｐ：／／ｗｗｗ．ａｔｍａｒｋｉｔ．ｃｏ．ｊｐ／ｆｎｅｔｗｏｒｋ／ｒｅｎｓａｉ／ｉｎｄｅｘ／ｉｎｄｅｘ−ｓｅｒｉａｌ．ｈｔｍｌ＃ｌｂ／
【０００５】
【発明が解決しようとする課題】
しかし、非特許文献１の従来技術では、ネットワークを統合するためにネットワークを構成する通信装置に関して中継機能と制御機能の定義と両者の間のインタフェースの規定について検討しているが、ネットワークおよびネットワークを構成する通信装置の中継機能と制御機能を分割した場合に生じる課題が残されていた。
【０００６】
例えば、非特許文献２の従来技術では、中継装置が中継装置上の仮想制御装置に対してネットワークノードからサービス要求を受けた場合に、予め設定された中継装置と制御装置の間のパケット転送規則に基づいて最適な制御装置にサービス要求を振分けることはできるが、制御装置上に新たなアプリケーションが起動した場合に、制御装置が中継装置との間のパケット転送規則を動的に設定することができないので、従来のアプリケーションを改修するか、またはパケット転送規則を手動で設定する必要があるという問題点があった。
【０００７】
そこで、この発明は、上述した従来技術による問題点を解消するためになされたものであり、制御装置上に新たなアプリケーションが起動した場合に、制御装置が中継装置との間のパケット転送規則を動的に設定することができ、もって、従来利用されてきたアプリケーションの改修をせずに、中継装置と制御装置を分離および統合できるパケット処理システムを提供することを目的とする。
【０００８】
【課題を解決するための手段】
上述した課題を解決し、目的を達成するため、請求項１の発明に係るパケット処理システムは、ネットワークインタフェースを用いてパケットを送受信する中継装置と、該中継装置との間で該パケットを転送するパケット転送規則に基づいてアプリケーションを用いて該パケットに応答する制御装置とを接続して構成されるパケット処理システムにおいて、前記制御装置は、前記中継装置のアドレス情報に対応付けて設定されたシンボル部と、前記アプリケーションが前記シンボル部にアクセスしたことを検知した場合に、前記ネットワークインタフェースを用いて受信した前記パケットを前記制御装置に転送するパケット転送規則を設定するよう前記中継装置に要求し、該中継装置から該シンボル部に対応付けて該制御装置に該パケットを転送するパケット転送規則を設定する転送制御手段と、を備え、前記中継装置は、前記制御装置の転送制御手段によって要求されたパケット転送規則を設定する転送制御手段を備えたことを特徴とする。
【０００９】
この請求項１の発明によれば、制御装置は、中継装置のアドレス情報に対応付けて設定されたシンボル部と、アプリケーションがシンボル部にアクセスしたことを検知した場合に、ネットワークインタフェースを用いて受信したパケットを制御装置に転送するパケット転送規則を設定するよう中継装置に要求し、中継装置からシンボル部に対応付けて制御装置に該パケットを転送するパケット転送規則を設定し、中継装置は、制御装置によって要求されたパケット転送規則を設定することとしたので、制御装置上に新たなアプリケーションが起動した場合に、制御装置が中継装置との間のパケット転送規則を動的に設定することができ、もって、従来利用されてきたアプリケーションの改修をせずに、中継装置と制御装置を分離および統合できる。
【００１０】
また、請求項２の発明に係るパケット処理システムは、請求項１の発明において、前記制御装置は、前記転送制御手段は、前記アプリケーションが前記シンボル部へアクセスする通信ポートを閉じたことを検出した場合に、前記ネットワークインタフェースを用いて受信した前記パケットを前記制御装置に転送するパケット転送規則を削除するよう前記中継装置に要求し、該中継装置から該シンボル部に対応付けて該制御装置に該パケットを転送するパケット転送規則を削除し、前記中継装置は、前記転送制御手段は、前記制御装置の転送制御手段によって要求されたパケット転送規則を削除することを特徴とする。
【００１１】
この請求項２の発明によれば、制御装置は、アプリケーションがシンボル部へアクセスする通信ポートを閉じたことを検出した場合に、ネットワークインタフェースを用いて受信したパケットを制御装置に転送するパケット転送規則を削除するよう中継装置に要求し、中継装置からシンボル部に対応付けて制御装置にパケットを転送するパケット転送規則を削除し、中継装置は、制御装置によって要求されたパケット転送規則を削除することとしたので、制御装置上でアプリケーションが停止した場合に、制御装置が中継装置との間のパケット転送規則を動的に削除することができ、もって、従来利用されてきたアプリケーションの改修をせずに、中継装置と制御装置を分離および統合できる。
【００１２】
また、請求項３の発明に係るパケット処理システムは、請求項１または請求項２の発明において、前記シンボル部は、前記ネットワークインタフェースに対応する仮想インタフェースであることを特徴とする。
【００１３】
この請求項３の発明によれば、シンボル部は、ネットワークインタフェースに対応する仮想インタフェースであることとしたので、ネットワークインタフェースに対応する仮想インタフェースを用いることにより、従来利用されてきたアプリケーションの動作環境と同等の動作環境を提供することができるので、従来利用されてきたアプリケーションの改修をせずに、中継装置と制御装置を分離および統合できる。
【００１４】
また、請求項４の発明に係るパケット処理システムは、請求項１または請求項２の発明において、前記パケット転送規則は、前記パケットをトンネル識別子を含むようにカプセル化して前記制御装置と前記中継装置の間で転送することを特徴とする。
【００１５】
この請求項４の発明によれば、パケット転送規則は、パケットをトンネル識別子を含むようにカプセル化して制御装置と中継装置の間で転送することとしたので、パケットを確実に宛先まで転送することができる。
【００１６】
また、請求項５の発明に係るパケット処理システムは、請求項４の発明において、前記トンネル識別子は、前記パケットを受信したネットワークインタフェースと、該ネットワークインタフェースに対応する仮想インタフェースと、前記制御装置のアドレスと、該制御装置のアプリケーションのプロトコルアドレスとに対応付けられた上りトンネル識別子と、該パケットを送信する送信仮想インタフェースと、前記中継装置のアドレスと、該送信仮想インタフェースに対応するネットワークインタフェースとに対応付けられた下りトンネル識別子とからなることを特徴とする。
【００１７】
この請求項５の発明によれば、トンネル識別子は、パケットを受信したネットワークインタフェースと、ネットワークインタフェースに対応する仮想インタフェースと、制御装置のアドレスと、制御装置のアプリケーションのプロトコルアドレスとに対応付けられた上りトンネル識別子と、パケットを送信する送信仮想インタフェースと、中継装置のアドレスと、送信仮想インタフェースに対応するネットワークインタフェースとに対応付けられた下りトンネル識別子とからなることを特徴とすることとしたので、上り下りの双方向のパケットを確実に宛先まで転送することができる。
【００１８】
また、請求項６の発明に係るパケット処理システムは、請求項１または請求項２の発明において、前記シンボル部は、前記中継装置の保持するＩＰアドレスに対応する仮想ＩＰアドレスであることを特徴とする。
【００１９】
この請求項６の発明によれば、シンボル部は、中継装置の保持するＩＰアドレスに対応する仮想ＩＰアドレスであることとしたので、仮想ＩＰアドレスを用いることにより、従来利用されてきたアプリケーションの動作環境と同等の動作環境を提供することができるので、従来利用されてきたアプリケーションの改修をせずに、中継装置と制御装置を分離および統合できる。
【００２０】
また、請求項７の発明に係るパケット処理システムは、請求項１または請求項２の発明において、前記パケット転送規則は、前記パケットのアドレス変換をして前記制御装置と前記中継装置の間でパケット転送することを特徴とする。
【００２１】
この請求項７の発明によれば、パケット転送規則は、パケットのアドレス変換をして制御装置と中継装置の間でパケット転送することとしたので、パケットを確実に宛先まで転送することができる。
【００２２】
また、請求項８の発明に係るパケット処理システムは、請求項７の発明において、前記アドレス変換は、前記中継装置において前記パケットの宛先アドレスを前記仮想ＩＰアドレスから前記制御装置のアドレスへ変換して、該制御装置に該パケットを転送した後に、該宛先アドレスを該制御装置のアドレスから該仮想ＩＰアドレスに変換する上りアドレス変換と、該制御装置において該パケットの送信元アドレスを該仮想ＩＰアドレスから該制御装置のアドレスに変換して、該中継装置に該パケットを転送した後に、該パケットの送信元アドレスを該制御装置のアドレスから該仮想ＩＰアドレス変換する下りアドレス変換とからなることを特徴とする。
【００２３】
この請求項８の発明によれば、アドレス変換は、中継装置においてパケットの宛先アドレスを仮想ＩＰアドレスから制御装置のアドレスへ変換して、制御装置にパケットを転送した後に、宛先アドレスを制御装置のアドレスから仮想ＩＰアドレスに変換する上りアドレス変換と、制御装置においてパケットの送信元アドレスを仮想ＩＰアドレスから制御装置のアドレスに変換して、中継装置にパケットを転送した後に、パケットの送信元アドレスを制御装置のアドレスから仮想ＩＰアドレス変換する下りアドレス変換とからなることとしたので、上り下りの双方向のパケットを確実に宛先まで転送することができる。
【００２４】
また、請求項９の発明に係るパケット処理システムは、請求項１または請求項２において、前記アプリケーションは、ルータの経路制御プロセスであることを特徴とする。
【００２５】
この請求項９の発明によれば、アプリケーションは、ルータの経路制御プロセスであることとしたので、従来利用されてきたアプリケーションの改修をせずに、ルータの中継機能と制御機能を分離および統合できる。
【００２６】
また、請求項１０の発明に係るパケット処理システムは、請求項１または請求項２の発明において、前記制御装置と前記中継装置は、データリンク層のネットワークで相互に接続され、該データリンク層のプロトコルを使用してデータ交換を行うことを特徴とする。
【００２７】
この請求項１０の発明によれば、制御装置と中継装置は、データリンク層のネットワークで相互に接続され、データリンク層のプロトコルを使用してデータ交換を行うこととしたので、制御装置と中継装置との間の通信に利用するインタフェースに関する上位レイヤの属性情報を変更した場合でも、通信が途絶えないようにすることができる。
【００２８】
【発明の実施の形態】
以下に添付図面を参照して、この発明に係るパケット処理システムの好適な実施の形態を詳細に説明する。なお、下記に示す実施の形態１では、本発明に係るパケット処理システムを仮想インタフェースを用いてサーバの負荷分散を行うロードバランサに適用する場合について説明し、実施の形態２では、本発明に係るパケット処理システムを仮想ＩＰアドレスを用いてサーバの負荷分散を行うロードバランサに適用する場合について説明し、本実施の形態３および４では、本発明に係るパケット処理システムを仮想インタフェースを用いて制御装置と中継装置に分離したルータに適用する場合について説明する。また、本実施の形態５では、本発明に係るパケット処理プログラムを実行するコンピュータシステムにについて説明することとする。最後に、他の実施の形態として種々の変形例を説明する。
【００２９】
（実施の形態１）
本実施の形態１では、本発明に係るパケット処理システムを仮想ＩＦを用いてサーバの負荷分散を行うロードバランサに適用する場合について説明する。ここでは、本実施の形態１に係るパケット処理システムの概要および特徴を説明した後に、このパケット処理システムの構成を説明し、最後に、このパケット処理システムの仮想ＩＦの登録手順、振分表の登録手順、データ受信手順、およびデータ送信手順などの種々の処理手順について説明する。
【００３０】
［概要および特徴］
最初に、本実施の形態１に係るパケット処理システムの概要および主たる特徴を説明する。図１は、本実施の形態１に係るパケット処理システムの構成を示す機能ブロック図である。
【００３１】
同図に示すパケット処理システムは、概略的には、ネットワークインタフェースを用いてパケットを送受信する中継装置と、中継装置との間でパケットを転送するパケット転送規則に基づいてアプリケーションを用いて該パケットに応答する制御装置とを接続して構成されるシステムであり、制御装置上に新たなアプリケーションが起動した場合に、制御装置が中継装置との間のパケット転送規則を動的に設定することができ、もって、従来利用されてきたアプリケーションの改修をせずに、中継装置と制御装置を分離および統合できるパケット処理システムに関するものである。
【００３２】
具体的には、本発明の請求項１に係るパケット処理システムは、サーバ２００は、ロードバランサ３００のアドレス情報に対応付けて設定された仮想ＩＦ２２２と、アプリケーション部２１０が仮想ＩＦ２２２にアクセスしたことを検知した場合に、ネットワークＩＦ３９０を用いて受信したパケットをサーバ２００に転送するパケット転送規則を設定するようロードバランサ３００に要求し、ロードバランサ３００から仮想ＩＦ２２２に対応付けてサーバ２００にパケットを転送するパケット転送規則を設定し、ロードバランサ３００は、サーバ２００によって要求されたパケット転送規則を設定することを特徴とする。したがって、サーバ上に新たなアプリケーション部２１０が起動した場合に、サーバ２００がロードバランサ３００との間のパケット転送規則を動的に設定することができ、もって、従来利用されてきたアプリケーション部２１０の改修をせずに、ロードバランサ３００とサーバ２００を分離および統合できる。
【００３３】
［パケット処理システムの構成］
実施の形態１に係るパケット処理システムの構成について説明する。同図に示すように、パケット処理システムは、制御装置２００と、中継装置３００と、通信端末装置４５０ａ〜４５０ｃと、制御装置２００と中継装置３００を接続するネットワーク４００と、中継装置３００と通信端末装置４５０ａ〜４５０ｃを接続するネットワーク４１０とからなる。
【００３４】
ネットワーク４００および４１０は、ＬＡＮ、専用回線または／およびインターネットなどＴＣＰ／ＩＰプロトコルによって通信するネットワークである。また、通信端末装置４５０ａ〜４５０ｃは、ネットワーク４１０を介して中継装置３００にインターネットサービスを要求する装置である。
【００３５】
制御装置２００は、中継装置３００のネットワークＩＦ３９０を介して通信端末装置からサービス要求を受け付けて、通信端末装置４５０ａ〜４５０ｃに種々のインターネットサービスを提供するサーバであり、具体的には、Ｗｅｂ（ＨＴＴＰ，ＨＴＴＰＳ）、ＦＴＰ、Ｅｍａｉｌ（ＳＭＴＰ，ＰＯＰ，ＩＭＡＰ）、ＤＮＳ、ＤＢ（Ｏｒａｃｌｅ，ＤＢ２）などのサービスを提供する。
【００３６】
制御装置２００は、アプリケーション部２１０と、シンボル作成部２２０と、仮想ＩＦ２２２と、転送登録要求部２３０と、転送制御部２４０と、受信表２４２と、送信表２４４と、振分部２５０と、データ受信処理部２６０と、データ送信処理部２７０と、ＩＦ２８０とからなる。
【００３７】
アプリケーション部２１０は、インターネットサービスを提供するプログラムであり、インターネットプロトコル、主としてＴＣＰ／ＵＤＰに基づいて通信端末装置４５０ａ〜４５０ｃと通信を行う。また、シンボル作成部２２０は、中継装置３００のネットワークＩＦ３９０に対応付けて制御装置２００のオペレーティングシステムのカーネル内に仮想ＩＦ２２２を設定し、登録する処理部である。
【００３８】
仮想ＩＦ２２２は、中継装置３００のネットワークＩＦ３９０に対応付けて制御装置２００のオペレーティングシステムのカーネル内にシンボル作成部２２０によって仮想的に設定されたネットワークＩＦである。具体的には、アプリケーション部２１０が、通信端末装置４５０ａ〜４５０ｃに対してパケットの送受信を行うための機能部であり、例えば、属性情報、パケット操作手順、統計情報を管理するデータ構造を有する。
【００３９】
転送登録要求部２３０は、アプリケーション部２１０が通信ポートを開設して仮想ＩＦ２２２にアクセスしたことを検出して、中継装置３００から制御装置２００へパケットを転送する上りトンネルを登録するよう要求する要求部であり、具体的には、転送削除要求部２３２と、仮想ＩＦアクセス判定部２３４とをさらに有する。
【００４０】
このうち、転送削除要求部２３２は、アプリケーション部２１０が仮想ＩＦ２２２へアクセスする通信ポートを閉じたことを検出して、仮想ＩＦ２２２に対応する上りトンネルを削除するよう要求する要求部である。また、仮想ＩＦアクセス判定部２３４は、アプリケーション部２１０が通信ポートを開設して仮想ＩＦ２２２にアクセスしたことを検出して、中継装置３００にパケットの転送を要求する要求部である。
【００４１】
転送制御部２４０は、シンボル作成部２２０から仮想ＩＦ２２２を設定したとの通知を受け付けて、中継装置３００へ下りトンネル作成依頼メッセージを送信する共に、中継装置３００からトンネル作成応答メッセージを受信すると仮想ＩＦ２２２と下りトンネルと中継装置３００とを対応付けて送信表２４４に登録する。また、転送登録要求部２３０からアプリケーション部２１０が仮想ＩＦ２２２に対し通信ポートを生成したとの通知を受け付けて、仮想ＩＦ２２２と上りトンネルとを対応付けて受信表２４２に登録し、中継装置３００に転送依頼メッセージを送信する。
【００４２】
ここで、転送登録要求部２３０が中継装置３００に送信するトンネル作成依頼メッセージ、中継装置３００から送信されるトンネル作成応答メッセージ、および転送登録要求部２３０が中継装置３００に送信する転送依頼メッセージについて説明する。図２は、図１に示すパケット処理システムのトンネル作成依頼メッセージの一例を示す図である。また、図３は、図１に示すパケット処理システムのトンネル作成応答メッセージの一例を示す図である。また、図４は、図１に示すパケット処理システムの転送依頼メッセージの一例を示す図である。
【００４３】
図２に示すように、トンネル作成依頼メッセージは、制御装置アドレスと仮想ＩＦ２２２とネットワークＩＦ３９０を対応付けたメッセージである。また、図３に示すように、トンネル作成応答メッセージは、中継装置アドレスと仮想ＩＦ２２２とネットワークＩＦ３９０に対応付けた下りトンネルＩＤを通知するメッセージである。また、図４に示すように、転送依頼メッセージは、制御装置アドレスとプロトコルアドレスと仮想ＩＦ２２２に対応付けた上りトンネルＩＤを通知するメッセージである。
【００４４】
受信表２４２は、仮想ＩＦ２２２と上りトンネルＩＤを対応付ける制御装置２００内の上りトンネルの管理表である。また、送信表２４４は、仮想ＩＦ２２２と下りトンネルＩＤと中継装置アドレスとを対応付ける制御装置２００内の下りトンネルの管理表である。なお、ここで、パケット処理システムの受信表２４２および送信表２４４の一例について説明する。図５は、図１に示すパケット処理システムの受信表２４２の一例を示す図であり、図６は、図１に示すパケット処理システムの送信表２４４の一例を示す図である。
【００４５】
受信表２４２は、中継装置３００から転送されてきたパケットの上りトンネルＩＤから送信すべき仮想ＩＦ２２２を検索する表である。また、送信表２４４は、アプリケーション部２１０がパケットを送信した仮想ＩＦ２２２から下りトンネルＩＤおよび中継装置３００のアドレスを検索する表である。
【００４６】
振分部２５０は、アプリケーション部２１０が送信したパケットを仮想ＩＦ２２２に対応付けて下り転送する処理部であり、具体的には、パケットの宛先アドレスにより仮想ＩＦ２２２を決定し、仮想ＩＦ２２２に対応するデータ送信処理部２７０に下り転送する。また、データ受信処理部２６０によって上り転送されたパケットを受信して、パケットのヘッダに基づいてアプリケーション部２１０へ上り転送する処理部である。
【００４７】
データ受信処理部２６０は、中継装置３００によって上り転送されたパケットを受信して、パケットと仮想ＩＦ２２２とを対応付ける受信表２４２を検索し、仮想ＩＦ２２２に対応付けて上り転送する処理部であり、具体的には、上りトンネルＩＤでカプセル化されたパケットを受信すると、上りトンネルＩＤをキーに受信表２４２から対応する仮想ＩＦ２２２を検索し、パケットをデカプセル化すると共に仮想ＩＦ２２２に対応付けて振分部２５０に上り転送する。
【００４８】
データ送信処理部２７０は、振分部２５０によって下り転送されたパケットを受信して、パケットを下りトンネルに対応付ける送信表２４４を検索し、中継装置３００に下り転送する処理部であり、具体的には、振分部２５０からパケットを受信すると、パケットに対応する仮想ＩＦ２２２をキーに送信表２４４から下りトンネルＩＤを検索し、パケットをカプセル化して中継装置３００へ下り転送する。また、ＩＦ２８０は、ネットワーク４００を介して中継装置３００と通信するためのインタフェースである。
【００４９】
中継装置３００は、ネットワーク４１０によって接続された通信端末装置４５０ａ〜４５０ｃからサービス要求を受け付けて、制御装置２００に中継し、また、通信端末装置からの要求に応答して制御装置２００から転送されたパケットを通信端末装置４５０ａ〜４５０ｃに中継するロードバランサである。
【００５０】
中継装置３００は、転送制御部３４０と、振分表３４２と、受信表３４４と、振分部３５０と、データ送信処理部３６０と、データ受信処理部３７０と、ＩＦ３８０と、ネットワークＩＦ３９０，３９２とからなる。転送制御部３４０は、制御装置２００からトンネル作成依頼メッセージを受信すると、トンネル作成応答メッセージを送信し、未使用の下りトンネルＩＤを制御装置２００へ通知すると共に、受信表３４４に下りトンネルを登録する。また、制御装置２００から転送依頼メッセージを受信すると、上りトンネルＩＤとアプリケーション部２１０のポート番号と宛先制御装置アドレスを振分表３４２に登録する。
【００５１】
振分表３４２は、ネットワークＩＦ３９０と、アプリケーション部２１０のポート番号と、上りトンネルＩＤと、宛先制御装置アドレスを対応付ける中継装置３００内の上りトンネルの管理表である。また、受信表３４４は、下りトンネルＩＤとネットワークＩＦ３９０を対応付ける中継装置３００内の下りトンネルの管理表である。なお、ここで、パケット処理システムの振分表３４２および受信表３４４の一例について説明する。図７は、図１に示すパケット処理システムの振分表３４２の一例を示す図であり、図８は、図１に示すパケット処理システムの受信表３４４の一例を示す図である。
【００５２】
振分表３４２は、ネットワークＩＦで受信したパケットの宛先アドレスから送信すべきアプリケーション部２１０を検索する表である。また、受信表３４４は、制御装置２００から転送されてきたパケットの下りトンネルＩＤから送信すべきネットワークＩＦ３９０を検索する表である。
【００５３】
振分部３５０は、ネットワークＩＦ３９０で受信したパケットをプロトコルアドレスに対応付ける振分表３４２を検索し、宛先が制御装置のアプリケ−ション部２１０である場合は、パケットを上り転送し、また、データ受信処理部３７０から受信したパケットを対応するネットワークＩＦ３９０に下り転送する処理部である。
【００５４】
データ送信処理部３６０は、振分部３５０によって上り転送されたパケットを受信して、パケットと制御装置２００を対応付ける振分表３４２を検索し、制御装置２００に上り転送する処理部であり、具体的には、振分部３５０からパケットを受信すると、パケットのプロトコルアドレスをキーに振分表３４２から上りトンネルＩＤと宛先制御装置アドレスを検索し、パケットをカプセル化して制御装置２００へ上り転送する。
【００５５】
データ受信処理部３７０は、制御装置２００によって下り転送されたパケットを受信して、パケットをネットワークＩＦ３９０に対応付ける受信表３４４を検索し、ネットワークＩＦ３９０に下り転送する処理部であり、具体的には、下りトンネルＩＤでカプセル化されたパケットを受信すると、下りトンネルＩＤをキーに受信表３４４から対応するネットワークＩＦ３９０を検索し、パケットをデカプセル化すると共にネットワークＩＦ３９０に対応付けて振分部３５０に下り転送する。
【００５６】
ネットワークＩＦ３９０，３９２は、ネットワーク４１０を介して中継装置３００と接続する通信端末装置４５０ａ〜４５０ｃとのインタフェースである。また、ＩＦ３８０は、ネットワーク４００を介して制御装置２００と通信するためのインタフェースである。
【００５７】
［パケット処理システムの仮想ＩＦの登録手順］
次に、図１に示すパケット処理システムにおける仮想ＩＦの登録手順について説明する。図９は、図１に示すパケット処理システムにおける仮想ＩＦの登録手順を示すフローチャートである。
【００５８】
まず、管理者はシンボル作成部２２０を用いて、仮想ＩＦ２２２の登録を指示する（ステップＳ８０１）。そして、シンボル作成部２２０は、ネットワークＩＦ３９０に対応付けて仮想ＩＦ２２２を制御装置２００に作成する（ステップＳ８０２）。さらに、シンボル作成部２２０は、転送制御部２４０に対し制御装置２００の仮想ＩＦ２２２から中継装置３００のネットワークＩＦ３９０の方向へパケットを転送する下りトンネルを作成するよう依頼する（ステップＳ８０３）。そして、制御装置２００の転送制御部２４０は、中継装置３００に図２に示すトンネル作成依頼メッセージを送信する（ステップＳ８０４）。
【００５９】
さらに、中継装置３００の転送制御部３４０は、未使用の下りトンネルＩＤを払い出し、図３に示すトンネル作成応答メッセージを制御装置２００に送信すると共に（ステップＳ８０５）、中継装置３００の受信表３４４に下りトンネルＩＤとネットワークＩＦ３９０を対応付けて登録する（ステップＳ８０６）。そして、制御装置２００の転送制御部２４０は、中継装置３００からトンネル作成応答メッセージを受信すると、送信表２４４に上りトンネルＩＤと仮想ＩＦ２２２を対応付けて登録する（ステップＳ８０７）。
【００６０】
［パケット処理システムの振分表の登録手順］
次に、図１に示すパケット処理システムにおける振分表の登録手順について説明する。図１０は、図１に示すパケット処理システムにおける振分表の登録手順を示すフローチャートである。
【００６１】
まず、アプリケーション部２１０は、通信を行うための通信ポートの開設をＯＳのカーネルに要求する（ステップＳ１００１）。そして、転送登録要求部２３０は、アプリケーション部２１０が仮想ＩＦ２２２経由のポートを開設するまで待ち（ステップＳ１００２）、仮想ＩＦ２２２経由のポートを開設した場合は、転送制御部２４０へデータ転送依頼を行う（ステップＳ１００３）。具体的には、中継装置３００から制御装置２００へパケットを上り転送することができるように振分表３４２を設定し、上りトンネルを生成するよう要求する。
【００６２】
そして、制御装置２００の転送制御部２４０は、未使用の上りトンネルＩＤを払い出すと共に、受信表２４２に上りトンネルＩＤと仮想ＩＦ２２２を対応付けて登録する（ステップＳ１００５）。さらに、図４に示す転送依頼メッセージを中継装置３００の転送制御部３４０に送信する（ステップＳ１００６）。
【００６３】
そして、中継装置３００の転送制御部３４０は、制御装置２００から転送依頼メッセージを受信して、転送依頼メッセージに含まれるプロトコルアドレスと、上りトンネルＩＤと、制御装置アドレスとを対応付けて振分表３４２に登録する（ステップＳ１００７）。
【００６４】
以上説明したように、制御装置２００は、中継装置３００のアドレス情報に対応付けて設定された仮想ＩＦ２２２と、アプリケーション部２１０が仮想ＩＦ２２２にアクセスしたことを検知した場合に、ネットワークＩＦ３９０を用いて受信したパケットを制御装置２００に転送するパケット転送規則を設定するよう中継装置３００に要求し、中継装置２００から仮想ＩＦ２２２に対応付けて制御装置２００にパケットを転送するパケット転送規則を設定し、中継装置３００は、制御装置２００によって要求されたパケット転送規則を設定することとしたので、制御装置２００上に新たなアプリケーションが起動した場合に、制御装置２００が中継装置３００との間のパケット転送規則を動的に設定することができ、もって、従来利用されてきたアプリケーションの改修をせずに、中継装置３００と制御装置２００を分離および統合できる。
【００６５】
また、制御装置２００は、プリケーション部２１０が仮想ＩＦ２２２へアクセスする通信ポートを閉じたことを検出した場合に、ネットワークＩＦ３９０を用いて受信したパケットを制御装置２００に転送するパケット転送規則を削除するよう中継装置３００に要求し、中継装置３００から仮想ＩＦ２２２に対応付けて制御装置２００にパケットを転送するパケット転送規則を削除し、中継装置３００は、制御装置２００によって要求されたパケット転送規則を削除することとしたので、制御装置２００上でアプリケーションが停止した場合に、制御装置２００が中継装置３００との間のパケット転送規則を動的に削除することができ、もって、従来利用されてきたアプリケーションの改修をせずに、中継装置３００と制御装置２００を分離および統合できる。
【００６６】
［パケット処理システムのデータ受信手順］
次に、図１に示すパケット処理システムにおけるデータ受信手順について説明する。図１１は、図１に示すパケット処理システムにおけるデータ受信手順を示すフローチャートである。
【００６７】
まず、中継装置３００は、通信端末装置からパケットを受信する（ステップＳ１１０１）。そして、中継装置３００の振分部３５０は、パケットのプロトコルアドレスに基づいて振分表３４２を検索し（ステップＳ１１０２）、プロトコルアドレスが制御装置２００のアプリケ−ション部２１０であるか否かを調べる（ステップＳ１１０３）。その結果、プロトコルアドレスが制御装置２００のアプリケ−ション部２１０でない場合は（ステップＳ１１０３否定）、パケットを破棄する（ステップ１１０４）。
【００６８】
一方、プロトコルアドレスが制御装置２００のアプリケ−ション部２１０である場合は（ステップＳ１１０３肯定）、パケットをデータ送信処理部３６０に転送する（ステップＳ１１０５）。さらに、データ送信処理部３６０は、振分表３４２からプロトコルアドレスに基づいて上りトンネルＩＤを検索し、パケットを上りトンネルＩＤでカプセル化して制御装置２００へ転送する（ステップＳ１１０６）。
【００６９】
そして、制御装置のデータ受信処理部２６０は、中継装置３００からカプセル化されたパケットを受信して（ステップＳ１１０７）、上りトンネルＩＤに基づいて受信表２４２を検索し、パケットをデカプセル化して仮想ＩＦ２２２に対応付けて振分部２５０に転送する（ステップＳ１１０８）。さらに、振分部２５０は、パケットのプロトコルアドレスからアプリケーション部２１０の通信ポートを特定し、アプリケーション部にパケットを送信する（ステップＳ１１０９）。
【００７０】
［パケット処理システムのデータ送信手順］
次に、図１に示すパケット処理システムにおけるデータ送信手順について説明する。図１２は、図１に示すパケット処理システムにおけるデータ送信手順を示すフローチャートである。
【００７１】
まず、アプリケーション部２１０は、通信端末装置４５０ａ〜４５０ｃにパケットを送信する（ステップＳ１２０１）。そして、振分部２５０は、宛先アドレスが仮想ＩＦ２２２であるパケットを待って（ステップＳ１２０２）、データ送信処理部２７０へ転送する（ステップＳ１２０３）。さらに、データ送信処理部２７０は、送信表２４４から仮想ＩＦ２２２に基づいて下りトンネルＩＤを検索し、パケットを下りトンネルＩＤでカプセル化して中継装置３００へ転送する（ステップＳ１２０４）。
【００７２】
そして、中継装置３００のデータ受信処理部３７０は、制御装置２００からカプセル化されたパケットを受信して（ステップＳ１２０５）、下りトンネルＩＤに基づいて受信表３４４を検索し、パケットをデカプセル化してネットワークＩＦ３９０に対応付けて振分部３５０に転送する（ステップＳ１２０６）。さらに、振分部３５０は、パケットをネットワークＩＦ３９０から通信端末装置４５０ａ〜４５０ｃに送信する（ステップＳ１２０７）。
【００７３】
（実施の形態２）
ところで、上記実施の形態１では、本発明に係るパケット処理システムを仮想ＩＦを用いてサーバの負荷分散を行うロードバランサに適用する場合について説明したが、本発明はこれに限られるものではなく、仮想ＩＰアドレスを用いてサーバの負荷分散を行うロードバランサに適用することもできる。従って、本実施の形態２では、本発明に係るパケット処理システムを仮想ＩＰアドレスを用いてサーバの負荷分散を行うロードバランサに適用する場合について説明する。ここでは、本実施の形態１に係るパケット処理システムの構成を説明した後、このパケット処理システムの仮想ＩＰアドレスの登録手順、振分表の登録手順、データ受信手順、およびデータ送信手順などの種々の処理手順について説明する。なお、上記実施の形態１と共通する部分については説明を省略し、相違する部分について主に説明する。
【００７４】
［パケット処理システムの構成］
本実施の形態２に係るパケット処理システムの構成について説明する。図１３は、本実施の形態２に係るパケット処理システムの構成を示す機能ブロック図である。同図に示すように、制御装置２００の仮想ＩＰアドレス２２３と、仮想ＩＰアドレスアクセス判定部２３５と、受信表２４３と、送信表２４５と、中継装置３００の振分表３４３と、受信表３４５とが実施の形態１と相違する。
【００７５】
仮想ＩＰアドレス２２３は、中継装置３００のＩＰアドレスに対応付けて制御装置２００のオペレーティングシステムのカーネル内にシンボル作成部２２０によって仮想的に設定されたＩＰアドレスである。具体的には、通信端末装置４５０ａ〜４５０ｃは、中継装置３００のＩＰアドレス宛にパケットを送信する。
【００７６】
仮想ＩＰアドレスアクセス判定部２３５は、アプリケーション部２１０が通信ポートを開設して仮想ＩＰアドレス２２３にアクセスしたことを検出して、中継装置３００にパケットの転送を要求する要求部である。
【００７７】
受信表２４３は、宛先ＩＰアドレスと、宛先ポート番号と、仮想ＩＰアドレス２２３を対応付ける制御装置２００内の上りアドレス変換の管理表である。また、送信表２４５は、仮想ＩＰアドレス２２３と、送信元ＩＰアドレスとを対応付ける制御装置２００内の下りアドレス変換の管理表である。なお、ここで、パケット処理システムの受信表２４３および送信表２４５の一例について説明する。図１４は、図１３に示すパケット処理システムの受信表２４３の一例を示す図であり、図１５は、図１３に示すパケット処理システムの送信表２４５の一例を示す図である。
【００７８】
受信表２４３は、中継装置３００から転送されてきたパケットの宛先ＩＰアドレスから送信すべき仮想ＩＰアドレス２２３に変換する表である。また、送信表２４５は、アプリケーション部２１０がパケットを送信した仮想ＩＰアドレス２２３から送信元ＩＰアドレスに変換する表である。
【００７９】
振分表３４３は、アプリケーション部２１０のポート番号と、宛先ＩＰアドレスを対応付ける中継装置３００内の上りアドレス変換の管理表である。また、受信表３４５は、仮想ＩＰアドレス２２３と送信ＩＰアドレスを対応付ける中継装置３００内の下りアドレス変換の管理表である。なお、ここで、パケット処理システムの振分表３４３および受信表３４５の一例について説明する。図１６は、図１３に示すパケット処理システムの振分表３４３の一例を示す図であり、図１７は、図１３に示すパケット処理システムの受信表３４５の一例を示す図である。
【００８０】
振分表３４３は、ネットワークＩＦで受信したパケットの宛先プロトコルアドレスから送信すべきアプリケーション部２１０のポート番号を検索する表である。また、受信表３４５は、制御装置２００から転送されてきたパケットの送信元ＩＰアドレスを仮想ＩＰアドレス２２３に変換する表である。
【００８１】
［パケット処理システムの仮想ＩＰアドレスの登録手順］
次に、図１３に示すパケット処理システムにおける仮想ＩＰアドレスの登録手順について説明する。図１８は、図１３に示すパケット処理システムにおける仮想ＩＰアドレスの登録手順を示すフローチャートである。
【００８２】
まず、管理者はシンボル作成部２２０を用いて、仮想ＩＰアドレス２２３の登録を指示する（ステップＳ１８０１）。そして、シンボル作成部２２０は、制御装置２００のＩＰアドレスに対応付けて仮想ＩＰアドレス２２３を制御装置３００に作成する（ステップＳ１８０２）。さらに、シンボル作成部２２０は、転送制御部２４０に対し仮想ＩＰアドレスと送信元ＩＰアドレスを登録するよう依頼する（ステップＳ１８０３）。そして、制御装置２００の転送制御部２４０は、中継装置３００に図１８に示すアドレス変換依頼メッセージを送信する（ステップＳ１８０４）。さらに、中継装置３００の転送制御部３４０は、中継装置３００の受信表３４４に仮想ＩＰアドレス２２３と送信元ＩＰアドレスを対応付けて登録する（ステップＳ１８０５）。なお、ここで、転送制御部２４０が送信するアドレス変換依頼メッセージについて説明する。図１９は、図１３に示すパケット処理システムのアドレス変換依頼メッセージの一例を示す図である。アドレス変換依頼メッセージは、仮想ＩＰアドレス２２３と送信元ＩＰアドレスを対応付けるメッセージである。
【００８３】
［パケット処理システムの振分表の登録手順］
次に、図１３に示すパケット処理システムにおける振分表の登録手順について説明する。図２０は、図１３に示すパケット処理システムにおける振分表の登録手順を示すフローチャートである。
【００８４】
まず、アプリケーション部２１０は、通信を行うための通信ポートの開設をＯＳのカーネルに要求する（ステップＳ２００１）。そして、転送パス登録要求部２３０は、アプリケーション部２１０が仮想ＩＰアドレス２２３経由のポートを開設するまで待ち（ステップＳ２００２）、転送制御部２４０へ転送依頼メッセージを送信するよう依頼する（ステップＳ２００３）。
【００８５】
そして、制御装置２００の転送制御部２４０は、受信表２４２に宛先ＩＰアドレスと仮想ＩＰアドレス２２３を対応付けて登録する（ステップＳ２００４）。さらに、図１９に示す転送依頼メッセージを中継装置３００の転送制御部３４０に送信する（ステップＳ２００５）。
【００８６】
そして、中継装置３００の転送制御部３４０は、制御装置２００から転送依頼メッセージを受信して、転送依頼メッセージに含まれるプロトコルアドレスと制御装置アドレスとを対応付けて振分表３４２に登録する（ステップ２００６）。なお、ここで、転送制御部２４０が送信する転送依頼メッセージについて説明する。図２１は、図１３に示すパケット処理システムの転送依頼メッセージの一例を示す図である。転送依頼メッセージは、受信ＩＰアドレスと仮想ＩＰアドレスをプロトコルアドレスと制御装置アドレスに対応付けるメッセージである。
【００８７】
以上説明したように、制御装置２００は、中継装置３００のアドレス情報に対応付けて設定された仮想ＩＰアドレス２２３と、アプリケーション部２１０が仮想ＩＰアドレス２２３にアクセスしたことを検知した場合に、ネットワークＩＦ３９０を用いて受信したパケットを制御装置２００に転送するパケット転送規則を設定するよう中継装置３００に要求し、中継装置２００から仮想ＩＰアドレス２２３に対応付けて制御装置２００にパケットを転送するパケット転送規則を設定し、中継装置３００は、制御装置２００によって要求されたパケット転送規則を設定することとしたので、制御装置２００上に新たなアプリケーションが起動した場合に、制御装置２００が中継装置３００との間のパケット転送規則を動的に設定することができ、もって、従来利用されてきたアプリケーションの改修をせずに、中継装置３００と制御装置２００を分離および統合できる。
【００８８】
また、制御装置２００は、プリケーション部２１０が仮想ＩＰアドレス２２３へアクセスする通信ポートを閉じたことを検出した場合に、ネットワークＩＦ３９０を用いて受信したパケットを制御装置２００に転送するパケット転送規則を削除するよう中継装置３００に要求し、中継装置３００から仮想ＩＰアドレス２２３に対応付けて制御装置２００にパケットを転送するパケット転送規則を削除し、中継装置３００は、制御装置２００によって要求されたパケット転送規則を削除することとしたので、制御装置２００上でアプリケーションが停止した場合に、制御装置２００が中継装置３００との間のパケット転送規則を動的に削除することができ、もって、従来利用されてきたアプリケーションの改修をせずに、中継装置３００と制御装置２００を分離および統合できる。
【００８９】
［パケット処理システムのデータ受信手順］
次に、図１３に示すパケット処理システムにおけるデータ受信手順について説明する。図２２は、図１３に示すパケット処理システムにおけるデータ受信手順を示すフローチャートである。
【００９０】
まず、中継装置３００は、通信端末装置からパケットを受信する（ステップＳ２２０１）。そして、中継装置３００の振分部３５０は、パケットのプロトコルアドレスに基づいて振分表３４３を検索し（ステップＳ２２０２）、プロトコルアドレスが制御装置２００のアプリケ−ション部２１０であるか否かを調べる（ステップＳ２２０３）。その結果、その結果、プロトコルアドレスが制御装置２００のアプリケ−ション部２１０でない場合は（ステップＳ２２０３否定）、パケットを破棄する（ステップ２２０４）。
【００９１】
一方、プロトコルアドレスが制御装置２００のアプリケ−ション部２１０である場合は（ステップＳ２２０３肯定）、パケットをデータ送信処理部３６０に転送する（ステップＳ２２０５）。さらに、データ送信処理部３６０は、振分表３４３からプロトコルアドレスに基づいて転送先制御装置アドレスを検索し、パケットのあて先アドレスを転送先制御装置２００に変換して制御装置２００へ転送する（ステップＳ２２０６）。
【００９２】
そして、制御装置のデータ受信処理部２６０は、中継装置３００からパケットを受信して（ステップＳ２２０７）、受信表２４２を参照し、宛先ＩＰアドレスを仮想ＩＰアドレス２２３に変換して振分部２５０に転送する（ステップＳ２２０８）。さらに、振分部２５０は、パケットのプロトコルアドレスからアプリケーション部２１０の通信ポートを特定し、アプリケーション部２１０にパケットを送信する（ステップＳ２２０９）。
【００９３】
［パケット処理システムのデータ送信手順］
次に、図１３に示すパケット処理システムにおけるデータ送信手順について説明する。図２３は、図１３に示すパケット処理システムにおけるデータ送信手順を示すフローチャートである。
【００９４】
まず、アプリケーション部２１０は、通信端末装置にパケットを送信する（ステップＳ２３０１）。そして、振分部２５０は、送信元アドレスが仮想ＩＰアドレス２２３であるパケットを待って（ステップＳ２３０２）、データ送信処理部２７０へ転送する（ステップＳ２３０３）。さらに、データ送信処理部２７０は、送信表２４５を参照し、パケットの送信元アドレスを制御装置２００のＩＰアドレスに変換して中継装置３００へ転送する（ステップＳ２３０４）。
【００９５】
そして、中継装置３００のデータ受信処理部３７０は、制御装置２００からパケットを受信して（ステップＳ２３０５）、送信元ＩＰアドレスに基づいて受信表３４５を検索し、パケットの送信元ＩＰアドレスを仮想ＩＰアドレス２２３に変換して振分部３５０に転送する（ステップＳ２３０６）。さらに、振分部３５０は、ネットワークＩＦ３９０からパケットを通信端末装置に送信する（ステップＳ２３０７）。
【００９６】
（実施の形態３）
ところで、上記実施の形態１および２では、本発明に係るパケット処理システムをロードバランサに適用する場合について説明したが、本発明はそれらに限られるものではなく、制御装置と中継装置に分離したルータに適用することができる。本実施の形態３では、本発明に係るパケット処理システムを制御装置と中継装置に分離したルータに適用する場合について説明する。ここでは、本実施の形態３に係るルータの構成を説明した後、このルータの制御装置の仮想ＩＦと中継装置のインタフェースの間の内部通信パスを生成する手順など種々の手順について説明する。
【００９７】
［パケット処理システムの構成］
本実施の形態３に係るパケット処理システムの構成を示す機能ブロック図を説明する。図２４に示すように、パケット処理システムは、制御装置１０と、中継装置５０と、ネットワーク８０、ネットワークノード９０とからなる。
【００９８】
ネットワーク８０は、データリンク層以上の通信プロトコルに従ってデータ交換を行うことが可能な通信ネットワークであり、専用回線またはインタ−ネットのいずれでもよい。例えば、ルータは、通常ネットワーク層の通信プロトコルに従ってデータパケットの経路制御および中継を行う。ネットワークノード９０はネットワーク８０に接続されたルータ等の通信装置であり、本実施の形態３では、制御装置１０が中継装置５０を経由して通信する装置である。
【００９９】
制御装置１０は、ルータの制御機能を分担する装置であり、入出力部２１と、経路制御部２２と、経路表取得送信部２３と、仮想ＩＦ受信設定部２４と、仮想ＩＦトンネル対応表生成部２５（付記２２の下流内部通信パス対応表生成手段に対応する。）と、仮想ＩＦソケット対応表生成部２７（付記２２の上流内部通信パス対応表生成手段に対応する。）と、トンネル転送部２８と、仮想ＩＦトンネル対応表２９（付記２２の下流内部通信パス対応表に対応する。）、仮想ＩＦソケット対応表３０（付記２２の上流内部通信パス対応表に対応する。）と、経路表３１と、カーネル処理部４０と、ＩＦ４５とからなる。なお、ＩＦは、インタフェースの略語であり、特に断らない限り、論理ＩＦおよび物理ＩＦを総称するものである。また、通常、論理ＩＦは物理ＩＦと対になっている。
【０１００】
入出力部２１は、ユーザがコマンドを入力し、制御装置１０および中継装置５０の動作状態、コマンドに対する応答などを出力する入出力装置であり、具体的には、キーボード、マウス、ＣＲＴや液晶ディスプレイなどの表示装置、プリンタである。
【０１０１】
経路制御部２２は、ネットワーク８０や中継装置５０を介してネットワーク上のネットワークノード９０と通信を行い、経路制御を行うアプリケーションプロセスであり、具体的には、ＲＩＰ（Ｒｏｕｔｉｎｇ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｐｒｏｔｏｃｏｌ）やＯＳＰＦ（Ｏｐｅｎ  Ｓｈｏｒｔｅｓｔ  Ｐａｔｈ  Ｆｉｒｓｔ）などの経路制御プロトコルに従ってネットワークノード９０から経路制御情報を収集し、経路制御情報にもとづいて経路計算を行い、経路表３１を生成する。
【０１０２】
経路表取得送信部２３は、経路制御プロセス部２２が生成した経路表３１を取得し、中継装置５０に送信する処理部である。具体的には、経路制御部２２がカーネル処理部４０に経路表３１の更新を通知すると、カーネル処理部４０は、経路表取得送信部２３に通知し、経路表取得送信部２３は、経路表３１を取得して、ＩＦ４５を経由して中継装置５０に送信する。
【０１０３】
仮想ＩＦ受信設定部２４は、ユーザから仮想ＩＦ設定コマンドを受け付けて、中継装置５０に対し論理ネットワークＩＦ７６の取得を要求し、利用可能な論理ネットワークＩＦ７６を中継装置５０から受信し、仮想ＩＦ４３を制御装置１０上に設定する処理部である。また、仮想ＩＦ４３の設定が完了したことをトンネル転送部２８に通知する。
【０１０４】
仮想ＩＦトンネル対応表生成部２５は、中継装置５０から受信したトンネル識別子に基づいて仮想ＩＦトンネル対応表２９を生成する処理部である。なお、ここでトンネルとは、制御装置１０と中継装置５０との間を接続する内部通信パスを意味する。この内部通信パスを転送されるデータパケットは、内部通信パスを識別する識別子によってカプセル化され、同時にデータパケットの宛先が指定される。
【０１０５】
仮想ＩＦソケット対応表生成部２７は、制御装置１０と中継装置５０との間を接続する内部通信パスの仮想ＩＦソケット対応表３０を生成する処理部である。具体的には、カーネル処理部４０は、経路制御部２２が開設したソケットの宛先が仮想ＩＦ４３に対して開いたことを知ると、仮想ＩＦソケット対応表生成部２７に通知する。仮想ＩＦソケット対応表生成部２７は、中継装置５０のＩＦソケット対応表生成部６５にソケットアドレス（付記２２の入出力ポート識別子に対応する。）、トンネル識別子を送信し、仮想ＩＦソケット対応表３０を生成する。
【０１０６】
トンネル転送部２８は、仮想ＩＦ受信設定部２４から仮想ＩＦ４３の設定が完了したという通知を受けて内部通信パスの接続を行い、また、内部通信パスの接続後は、仮想ＩＦトンネル対応表２９および仮想ＩＦソケット対応表３０に基づいて仮想ＩＦ４３から受け取ったデータパケットをカプセル化し、中継装置５０に送信すると共に、中継装置５０から受信したデータパケットをデカプセル化し、仮想ＩＦ４３に転送する処理部である。
【０１０７】
仮想ＩＦトンネル対応表２９は、仮想ＩＦ４３と中継装置ＩＰアドレス／トンネル識別子とを対応付ける表であり、具体的には、経路制御部２２から送信されたデータパケットが仮想ＩＦ４３から中継装置５０の方向に転送されるときに通る内部通信パスを決定する表である。また、仮想ＩＦソケット対応表３０は、トンネル識別子と仮想ＩＦ４３／経路制御部２２のソケットアドレス（ＩＰアドレス＋ポート番号）を対応付ける表であり、具体的には、中継装置５０で受信されたデータパケットが中継装置５０から仮想ＩＦ４３の方向へ転送されるときに通る内部通信パスから制御装置１０がデータパケットを受信する仮想ＩＦ４３を決定するための表である。
【０１０８】
経路表３１は、データパッケットの宛先のＩＰアドレスと次の中継先のＩＰアドレスを対応付けた表であり、言い換えると、経路制御プロセス部２２が経路制御を行った結果求められたデータパケットの宛先までの最短の通信パスを定義する表である。
【０１０９】
カーネル処理部４０は、オペレーティングシステムの核となる部分でファイル管理、メモリ管理、プロセス実行制御など行う処理部であり、具体的には、宛先判定部４１と、仮想ＩＦ管理部４２と、仮想ＩＦ４３とを少なくとも含む。宛先判定部４１は、プロセスがカーネル処理部４０に対してソケットを開設すると、仮想ＩＦソケット対応表生成部２７に対し通知する。
【０１１０】
仮想ＩＦ管理部４２は、仮想ＩＦ４３を管理する処理部である。また、仮想ＩＦ４３は、仮想ＩＦ受信設定部２４によって中継装置５０の論理ネットワークＩＦ７６から取得された論理ＩＦであり、物理ＩＦと分離して仮想的に設定されているので仮想ＩＦと呼んでいる。
【０１１１】
装置間通信用物理ＩＦ４５は、制御装置１０が中継装置５０と通信を行う為の物理ＩＦである。また、装置間通信用論理ＩＦ４６は、制御装置１０が中継装置５０とネットワーク８０を介してデータパケットの通信をする場合のＩＦである。具体的には、デバイスドライバを備えたイーサネット（Ｒ）１０ＢＡＳＥ−ＴやＲＳ−２３２Ｃなどの通信ＩＦである。
【０１１２】
中継装置５０は、ルータの中継機能を分担する装置であり、データ中継部６０と、経路表受信設定部６１と、提供先判定部６２と、ＩＦ取得送信部６３と、ＩＦトンネル対応表生成部６４（付記２２の下流内部通信パス対応表生成部に対応する。）と、ＩＦソケット対応表生成部６５（付記２２の上流内部通信パス対応表生成部に対応する。）と、トンネル転送部６６と、ＩＦ設定許可リスト５９と、ＩＦトンネル対応表６７（付記２２の下流内部通信パス対応表に対応する。）と、ＩＦソケット対応表６８（付記２２の上流内部通信パス対応表に対応する。）と、経路表６９と、カーネル処理部７０と、物理ネットワークＩＦ７３と、装置間通信用物理ＩＦ７４とからなる。
【０１１３】
データ中継部６０は、中継装置５０が受信したデータパケットを次の宛先に送信する処理部であり、具体的には、カーネル処理部７０の宛先判定部７１がデータパケットのヘッダから他の装置に転送すべきデータパケットであることを判定すると、データ中継部６０に通知し、データ中継部６０は、経路表６９に基づいて次の宛先に送信する。
【０１１４】
経路表受信設定部６１は、経路表取得送信部２３が送信してきた経路表３１を受信して、経路表６９に設定する処理部である。また、提供先判定部６２は、制御装置１０の仮想ＩＦ受信設定部２４から論理ネットワークＩＦ７６の利用要求があった場合に、論理ネットワークＩＦ７６を利用を許可するか否かをＩＦ設定許可リスト５９に基づいて判定する判定部である。また、ＩＦ取得送信部６３は、カーネル処理部７０のＩＦ情報取得部７２が管理している論理ネットワークＩＦ７６から論理ＩＦの属性情報を取得して制御装置１０の仮想ＩＦ受信設定部２４へ送信する処理部である。
【０１１５】
ＩＦトンネル対応表生成部６４は、制御装置１０の仮想ＩＦトンネル対応表生成部２５にトンネル識別子を送信すると共に、ＩＦトンネル対応表６７を生成する処理部である。また、ＩＦソケット対応表生成部６５は、制御装置１０の仮想ＩＦソケット対応表生成部２７からソケットアドレスとトンネル識別子を受信して、ＩＦソケット対応表６８を生成する。
【０１１６】
トンネル転送部６６は、ＩＦトンネル対応表６７とＩＦソケット対応表６８に基づいてデータパケットをカプセル化し、制御装置１０に送信すると共に、制御装置１０から受信したデータパケットをデカプセル化し、論理ネットワークＩＦ７６に転送する。
【０１１７】
ＩＦトンネル対応表６７は、経路制御部２２から送信されたデータパケットが制御装置１０から中継装置５０の方向に転送されるときに通る内部通信パスからパケットを出力する論理ＩＦ７６を決定するための表であり、具体的には、トンネル識別子と論理ネットワークＩＦ７６とを対応付ける表である。また、ＩＦソケット対応表６８は、物理ネットワークＩＦ７３で受信されたデータパケットが中継装置５０から制御装置１０の方向へ転送されるときに通る内部通信パスを決定するための表であり、具体的には、論理ネットワークＩＦ７６／ソケットアドレスとトンネル識別子とを対応付ける表である。
【０１１８】
経路表６９は、経路表受信設定部６１が経路表取得送信部２３から送信された経路表３１を受信して、設定した表であり、具体的には、データパッケットの宛先のＩＰアドレスと次のＩＰアドレスを対応付けた表である。また、ＩＦ設定許可リスト５９は、中継装置５０の論理ネットワークＩＦ７６を提供する提供先が予め設定された表であり、具体的には、論理ネットワークＩＦ７６と許可する制御装置ＩＰアドレスを対応付けた表である。
【０１１９】
カーネル処理部７０は、オペレーティングシステムの核となる部分でファイル管理、メモリ管理、プロセス実行制御など行う処理部であり、具体的には、宛先判定部７１と、ＩＦ情報取得部７２と、論理ネットワークＩＦ７６、装置間通信用ＩＦ７７を少なくとも含む。宛先判定部７１は、データパケットのヘッダからそのデータパケットの宛て先を判定し、必要な場合には関連する処理部に通知をする処理部であり、具体的には、データパケットのＩＰヘッダからＩＰアドレスを取得し、ＴＣＰヘッダから宛先ポート番号を読み取って、宛先を判定する。
【０１２０】
ＩＦ情報取得部７２は、論理ネットワークＩＦ７３を管理する処理部である。また、論理ネットワークＩＦ７６は、物理ネットワークＩＦ７３に対応する論理ＩＦであり、物理ネットワークＩＦ７３と対になってネットワークＩＦを形成する。
【０１２１】
物理ネットワークＩＦ７３は、中継装置５０がネットワーク８０を介してネットワークノード９０または制御装置１０と通信をする場合のＩＦであり、論理ネットワークＩＦ７６、または中継装置５０が制御装置１０とネットワーク８０を介してデータパケットの通信をする場合の装置間通信用ＩＦ７４である。具体的には、デバイスドライバを備えたイーサネット（Ｒ）１０ＢＡＳＥ−ＴやＲＳ−２３２Ｃなどの通信ＩＦである。
【０１２２】
［仮想ＩＦ設定および内部通信パス生成の処理手順］
次に、図２４に示すパケット処理システムの仮想ＩＦ設定および内部通信パス生成の処理手順について説明する。図２５は、図２４に示すパケット処理システムの仮想ＩＦ設定および内部通信パス生成の処理手順を示すフローチャートである。同図に示すように、処理手順は、ステップＳ２０１〜ステップＳ２０８の初期設定フェーズと、ステップＳ２０９〜ステップＳ２１４の仮想ＩＦ設定フェーズと、ステップＳ２１５〜ステップＳ２２６のトンネル生成フェーズとに大別できる。
【０１２３】
最初に、初期設定フェーズでは、制御装置１０および中継装置５０は、各処理部の立ち上げを行う。まず、制御装置１０が起動すると（ステップＳ２０１）、仮想ＩＦ受信設定部２４、トンネル転送部２８、仮想ＩＦソケット対応表生成部２７の順に立ち上がる。（ステップＳ２０２〜ステップＳ２０４）。これと同期して、トンネルを生成する為の内部通信パスの一部（仮想ＩＦ受信設定部２４＜−＞仮想ＩＦ管理部４２、仮想ＩＦソケット対応表生成部２７＜−＞宛先判定部４１）が生成される。
【０１２４】
同様に、中継装置５０が起動すると（ステップＳ２０５）、ＩＦ取得送信部６３、トンネル転送部６６、ＩＦソケット対応表生成部６５の順に立ち上がる。（ステップＳ２０６〜ステップＳ２０８）。これと同期して、トンネルを生成する為の内部通信パスの一部（ＩＦ取得送信部６３＜−＞ＩＦ情報取得部７２、ＩＦ取得送信部６３＜−＞装置間通信用ＩＦ７４、トンネル転送部６６＜−＞装置間通信用ＩＦ７４、トンネル転送部６６＜−＞宛先判定部７１、ＩＦソケット対応表生成部６５＜−＞ＩＦ７４）が生成される。
【０１２５】
初期設定フェーズが終わると、仮想ＩＦ設定フェーズが始まる。まず、仮想ＩＦ受信設定部２４は、仮想ＩＦ設定コマンドを受け付けて、内部通信パス（仮想ＩＦ受信設定部２４＜−＞装置間通信用ＩＦ４５）を設定し、中継装置５０のＩＦ取得送信部６３と通信を開始する（ステップＳ２０９〜ステップＳ２１０）。
【０１２６】
そして、中継装置５０の論理ネットワークＩＦ７６の利用を要求する（ステップＳ２１１）。論理ネットワークＩＦ７６の利用要求を受けた中継装置５０のＩＦ取得送信部６３は、提供先判定部６２に論理ネットワークＩＦ７６の利用を許可する否かを問い合わせる。さらに、提供先判定部６２は、予め設定されていたＩＦ設定許可リスト５９に基づいて論理ネットワークＩＦ７６を提供すべきか否かを判定し、ＩＦ取得送信部６３に回答する（ステップＳ２１２）。
【０１２７】
続いて、ＩＦ取得送信部６３は、回答に基づいて論理ネットワークＩＦ７６の属性情報を仮想ＩＦ受信設定部２４に送信する（ステップＳ２１３）。そして、仮想ＩＦ受信設定部２４は、受信した論理ネットワークＩＦ７６の属性情報をカーネル処理部４０の仮想ＩＦ管理部４２に転送して、仮想ＩＦ４３を設定すると共に、内部通信パス（宛先判定部４１＜−＞仮想ＩＦ４３）を設定する（ステップＳ２１４）。
【０１２８】
ここで、パケット処理システムの仮想ＩＦ設定フェーズにおける内部通信パスの一例を詳細に説明する。図２６は、図２４に示すパケット処理システムの仮想ＩＦ設定フェーズにおける内部通信パスの一例を示す図である。同図に示すように、仮想ＩＦ設定フェーズにおいては、仮想ＩＦ受信設定部２４とＩＦ取得送信部６３が中継装置上の論理ネットワークＩＦ７６と制御装置上の仮想ＩＦ４３との間を内部通信パスで接続し、仮想ＩＦ４３を設定する。
【０１２９】
そして、仮想ＩＦ受信設定部２４とＩＦ取得送信部６３はトンネル転送部２８，６６にそれぞれ仮想ＩＦトンネル対応表２９とＩＦトンネル対応表６７を通知する。なお、仮想ＩＦトンネル対応表２９とＩＦトンネル対応表６７は、次の内部通信パス生成フェーズにおいて生成される表である。また、ＩＦ設定許可リスト５９は、ユーザによって予め設定された表である。
【０１３０】
このように仮想ＩＦ設定フェーズが終わると、中継装置５０のＩＦトンネル対応表生成部６４は、制御装置１０から中継装置５０の方向へデータパケットを転送するトンネルのトンネル識別子を制御装置１０の仮想ＩＦトンネル対応表生成部２５に送信すると共に、ＩＦトンネル対応表６７を生成する（ステップＳ２１５）。一方、制御装置１０の仮想ＩＦ対応表生成部２５は、中継装置５０のＩＦトンネル対応表生成部６４から受信したトンネル識別子に基づいて仮想ＩＦトンネル対応表２９を生成する（ステップＳ２１６）。
【０１３１】
また、仮想ＩＦ受信設定部２４が仮想ＩＦ４３を設定すると、トンネル転送部２８に通知をする（ステップＳ２１７）。仮想ＩＦ受信設定部２４から通知を受けたトンネル転送部２８は、内部通信パスの一部（トンネル転送部２８＜−＞装置間通信用物理ＩＦ４５、トンネル転送部２８＜−＞仮想ＩＦ４３）を生成し、中継装置５０のトンネル転送部６６と接続する（ステップＳ２１８〜ステップＳ２１９）。
【０１３２】
そして、仮想ＩＦソケット対応表生成部２７は、内部通信パス（仮想ＩＦソケット対応表生成部２７＜−＞装置間通信用ＩＦ４５）を設定し、中継装置５０のＩＦソケット対応表生成部６５と通信を開始する（ステップＳ２２０〜ステップＳ２２１）。また、経路制御部２２が起動すると同時に、内部通信パス（経路制御部２２＜−＞宛先判定部４３）が生成される（ステップＳ２２２）。さらに、経路制御部２２が仮想ＩＦ４３に向けてソケットを開設すると、宛先判定部４１はソケットの開設を仮想ＩＦソケット対応表生成部２７に通知する（ステップＳ２２３）。
【０１３３】
続いて、仮想ＩＦソケット対応表生成部２７は、中継装置１０から制御装置５０の方向へデータパケットを転送するトンネルのトンネル識別子および経路制御部２２のソケットアドレスをＩＦソケット対応表生成部６５に送信し、仮想ＩＦソケット対応表３０を生成する（ステップＳ２２４〜ステップＳ２２５）。同時に、ＩＦソケット対応表生成部６５は、ＩＦソケット対応表６８を生成する（ステップＳ２２６）。
【０１３４】
ここで、パケット処理システムのトンネル生成フェーズにおける内部通信パスの一例を詳細に説明する。図２７は、図２４に示すパケット処理システムのトンネル生成フェーズにおける内部通信パスの一例を示す図である。同図に示すように、トンネル転送部２８，６６が中継装置５０上の論理ネットワークＩＦ７６と制御装置上の仮想ＩＦ４３との間を内部通信パスで接続し、制御装置上のプロセスと仮想ＩＦとの間の通信を中継装置の論理ネットワークＩＦ７６にまで敷延することにより、ネットワーク上のネットワークノード９０と通信を行うことができる。また、仮想ＩＦソケット対応表３０とＩＦソケット対応表６８は、中継装置５０から制御装置１０の方向へデータパケットが転送される内部通信パスを定義する表であり、仮想ＩＦソケット対応表生成部２７とＩＦソケット対応表生成部６５によって生成される。
【０１３５】
また、図２８は、図２４に示すパケット処理システムのトンネル生成フェーズにおける内部通信パスの別の例を示す図である。制御装置上の複数のプロセスごとにトンネルを生成しているが、内部通信パスの生成手順は変わらない。
【０１３６】
以上のように、制御装置１０は、プロセスが仮想ＩＦ４３と通信を開始するとの通知を受け付けて、宛先判定部４１は内部通信パスの生成を通知し、宛先判定部４１からの通知を受け付けて、仮想ＩＦソケット対応表生成部２７はプロセスのソケットアドレスとトンネル識別子を中継装置５０に送信し、トンネル識別子と仮想ＩＦ４３とソケットアドレスとを対応付ける仮想ＩＦソケット対応表３０を生成し、中継装置５０は、制御装置１０の仮想ＩＦソケット対応表生成部２７によって送信されたプロセスのソケットアドレスとトンネル識別子と論理ネットワークＩＦ７６を対応付けるＩＦソケット対応表６８を生成することとしたので、制御装置上の仮想ＩＦ４３と中継装置５０の論理ネットワークＩＦ７６の間に内部通信パスを生成し、少なくとも従来用いられていた経路制御プロトコルソフトウエアと互換性を有するパケット処理システムを提供することができる。
【０１３７】
［受信パケットの転送手順］
次に、図２４に示すパケット処理システムの受信パケットの転送手順について説明する。図２９は、図２４示すパケット処理システムの受信パケットの転送手順を示すフローチャートである。
【０１３８】
同図に示すように、中継装置の物理ネットワークＩＦ７３でネットワーク８０上のネットワークノード９０からデータパケットを受信すると（ステップＳ６０１）、宛先判定部７１は、データパケットのヘッダから宛先を判定し、さらに、中継装置で受信すべきデータパケットであるか否かを判定する（ステップＳ６０２）。そして、データパケットの宛先が中継装置でない場合は（ステップＳ６０２否定）、宛先判定部７１は、データ中継部６０に通知し、データ中継部６０は、データパケットの転送先を経路表６９から取得して転送する（ステップＳ６０３〜ステップＳ６０４）。
【０１３９】
これに対して、データパケットの宛先が中継装置である場合は（ステップＳ６０２肯定）、宛先判定部７１は、ＩＦソケット対応表６８を参照し、ＩＦソケット対応表に一致するか否かを判定する（ステップ６０５）。そして、ＩＦソケット対応表６８のいずれかのエントリに一致しない（本実施の形態では、経路制御部２２が開設したソケットのポート番号に一致しない）場合は（ステップＳ６０５否定）、データパケットを廃棄する（ステップＳ６０６）。これに対して、ＩＦソケット対応表６８のいずれかのエントリに一致する場合は（ステップＳ６０５肯定）、宛先判定部７１は、トンネル転送部６６にデータパケットの受信を通知する（ステップＳ６０７）。
【０１４０】
そして、トンネル転送部６６は、データパケットを論理ネットワークＩＦ７６から受け取って、ＩＦソケット対応表６８に基づいてデータパケットにトンネル識別子を付加してカプセル化する（ステップＳ６０８）。さらに、トンネル転送部６６は、このデータパケットを制御装置１０のトンネル転送部２８に転送する（ステップＳ６０９）。
【０１４１】
そして、トンネル転送部２８は、データパケットを受け取った後、トンネル識別子を除去して（ステップＳ６１０）、トンネル識別子と仮想ＩＦソケット対応表３０に基づいて仮想ＩＦ４３にデータパケットを転送する（ステップＳ６１１）。さらに、仮想ＩＦ４３が、データパケットを受け取ると、カーネル処理部４０は、データパケットのヘッダからポート番号を読み取って、経路制御部２２にデータパケットの到着を通知する（ステップＳ６１２）。そして、経路制御部２２は、仮想ＩＦ４３からデータパケットを受信する（ステップＳ６１３）。
【０１４２】
以上のように、中継装置５０は、ＩＦソケット対応表６８に基づいて論理ネットワークＩＦ７６から受け取ったデータパケットをカプセル化し、制御装置１０に送信し、制御装置１０は、トンネル転送部２８が仮想ＩＦソケット対応表３０に基づいて中継装置５０から受信したデータパケットをデカプセル化し、仮想ＩＦ４３に転送することとしたので、制御装置１０上の仮想ＩＦ４３と中継装置５０上の論理ネットワークＩＦ７６の間に内部通信パスを生成し、少なくとも従来用いられていた経路制御プロトコルソフトウエアと互換性を有するパケット処理システムを提供することができる。
【０１４３】
［送信パケットの転送手順］
次に、図２４に示すパケット処理システムの送信パケットの転送手順について説明する。図３０は、図２４示すパケット処理システムの送信パケットの転送手順を示すフローチャートである。
【０１４４】
同図に示すように、経路制御部２２がデータパケットを仮想ＩＦ４３に送信すると（ステップＳ７０１）、仮想ＩＦ４３はデータパケットを受信し、トンネル転送部２８にデータパケットを転送する（ステップＳ７０２）。
【０１４５】
そして、トンネル転送部２８は、仮想ＩＦトンネル対応表２９に基づいてトンネル識別子を付加し、カプセル化する（ステップＳ７０３）。さらに、トンネル転送部２８は、データパケットを中継装置５０のトンネル転送部６６に転送する（ステップＳ７０４）。そして、中継装置５０のトンネル転送部６６は、ＩＦトンネル対応表６７を参照し、データパケットを受け取って、トンネル識別子を除去する（ステップＳ７０５）。さらに、トンネル転送部６６は、データパケットをトンネル識別子に対応する物理ネットワークＩＦ７３から送信する（ステップＳ７０６）。
【０１４６】
以上のように、制御装置１０は、トンネル転送部２８が仮想ＩＦトンネル対応表２９に基づいて仮想ＩＦ４３から受け取ったデータパケットをカプセル化し、中継装置５０に送信し、中継装置５０は、トンネル転送部６６が制御装置１０から受信したデータパケットをデカプセル化し、論理ネットワークＩＦ７６に転送することとしたので、制御装置上の仮想ＩＦ４３と中継装置上の論理ネットワークＩＦ７６の間に内部通信パスを生成し、少なくとも従来用いられていた経路制御プロトコルソフトウエアと互換性を有するパケット処理システムを提供することができる。
【０１４７】
（実施の形態４）
ところで、上記実施の形態３では、本発明に係るパケット処理システムが通信を開始する場合の内部通信パスを生成する手順について説明したが、本発明はこれに限定されるものではなく、本発明に係るパケット処理システムが通信を終了する場合に内部通信パスを削除する手順に適用することができる。そこで、本実施の形態４では、本発明に係るパケット処理システムが通信を終了する場合に内部通信パスを削除する手順について説明する。なお、上記実施の形態３と同じ部分については説明を省略する。
【０１４８】
［パケット処理システムの構成］
図３１は、本実施の形態４に係るパケット処理システムの構成を示す機能ブロック図である。同図に示すように、実施の形態３の機能ブロック図に、制御装置のプロセスが終了した場合の内部通信パスの削除に必要な以下の処理部が追加されている。
【０１４９】
制御装置１０の仮想ＩＦソケット対応表削除部４７は、経路制御部２２が通信を終了し、ソケットを削除した場合において、宛先判定部４１が仮想ＩＦソケット対応表３０の該当個所を削除するよう通知したときに、仮想ＩＦソケット対応表３０の該当個所を削除する処理部である。また、中継装置５０のＩＦソケット対応表削除部７５は、仮想ＩＦソケット対応表削除部４７がＩＦソケット対応表６８の該当個所を削除するよう通知したときに、ＩＦソケット対応表６８の該当個所を削除する処理部である。なお、仮想ＩＦソケット対応表削除部４７とＩＦソケット対応表削除部７５は、仮想ＩＦソケット対応表生成部２７とＩＦソケット対応表生成部６５が内部通信パスを生成したのと全く同様な方法で、予め接続されているものとする。
【０１５０】
［内部通信パス削除の処理手順］
次に、パケット処理システムの内部通信パス削除の処理手順について説明する。図３２は、図２４に示すパケット処理システムの内部通信パス削除の処理手順を示すフローチャートである。同図に示すように、まず制御装置の経路制御部２２が通信を終了し、開いていたソケットを閉じる（ステップＳ９０１）。宛先判定部４１は、経路制御部２２がソケットを閉じたことを知って、仮想ＩＦソケット対応表削除部４７に該当するトンネルを削除することを通知する（ステップＳ９０２）。仮想ＩＦソケット対応表削除部４７は、宛先判定部４１の通知を受けると、さらに中継装置５０のＩＦソケット対応表削除部７５にＩＦソケット対応表６８の該当個所を削除するよう通知する（ステップＳ９０３）。
【０１５１】
そして、ＩＦソケット対応表削除部７５は、ＩＦソケット対応表６８の該当個所を削除する（ステップＳ９０４）。さらに、仮想ＩＦソケット対応表削除部４７は、仮想ＩＦソケット対応表３０の該当個所を削除する（ステップＳ９０５）。
【０１５２】
以上のように、制御装置１０は、プロセスが終了した場合は、宛先判定部４１においてプロセスがソケットを閉じたことを検出し、仮想ＩＦソケット対応表削除部４７がＩＦソケット対応表の該当個所を削除するよう中継装置５０に要求し、仮想ＩＦソケット対応表３０の該当個所を削除し、中継装置５０は、ＩＦソケット対応表削除部７５が制御装置によって要求されたＩＦソケット対応表６５の該当個所を削除することとしたので、制御装置上の仮想ＩＦ４３と中継装置の論理ネットワークＩＦ７６の間の内部通信パスを常に更新し、少なくとも従来用いられていた経路制御プロトコルソフトウエアと互換性を有するパケット処理システムを提供することができる。
【０１５３】
（実施の形態５）
ところで、上記実施の形態１〜４で説明したパケット処理システムおよびパケット処理方法は、あらかじめ用意されたプログラムをパーソナル・コンピュータやワークステーションなどのコンピュータシステムで実行することによって実現することができる。そこで、本実施の形態５では、上記実施の形態１〜４で説明したパケット処理システム（パケット処理方法）と同様の機能を有するパケット処理プログラムを実行するコンピュータシステムについて説明する。
【０１５４】
図３３は、本実施の形態５に係るコンピュータシステムの構成を示すシステム構成図であり、図３４は、このコンピュータシステムにおける本体部の構成を示すブロック図である。図３３に示すように、本実施の形態３に係るコンピュータシステム１００は、本体部１０１と、本体部１０１からの指示によって表示画面１０２ａに画像などの情報を表示するためのディスプレイ１０２と、このコンピュータシステム１００に種々の情報を入力するためのキーボード１０３と、ディスプレイ１０２の表示画面１０２ａ上の任意の位置を指定するためのマウス１０４とを備える。
【０１５５】
また、このコンピュータシステム１００における本体部１０１は、図３４に示すように、ＣＰＵ１２１と、ＲＡＭ１２２と、ＲＯＭ１２３と、ハードディスクドライブ（ＨＤＤ）１２４と、ＣＤ−ＲＯＭ１０９を受け入れるＣＤ−ＲＯＭドライブ１２５と、フレキシブルディスク（ＦＤ）１０８を受け入れるＦＤドライブ１２６と、ディスプレイ１０２、キーボード１０３並びにマウス１０４を接続するＩ／Ｏインターフェース１２７と、ローカルエリアネットワークまたは広域エリアネットワーク（ＬＡＮ／ＷＡＮ）１０６に接続するＬＡＮインターフェース１２８とを備える。
【０１５６】
さらに、このコンピュータシステム１００には、インターネットなどの公衆回線１０７に接続するためのモデム１０５が接続されるとともに、ＬＡＮインターフェース１２８およびＬＡＮ／ＷＡＮ１０６を介して、他のコンピュータシステム（ＰＣ）１１１、中継１１２並びにプリンタ１１３などが接続される。
【０１５７】
そして、このコンピュータシステム１００は、所定の記録媒体に記録されたパケット処理プログラムを読み出して実行することでパケット処理システム（パケット処理方法）を実現する。ここで、所定の記録媒体とは、フレキシブルディスク（ＦＤ）１０８、ＣＤ−ＲＯＭ１０９、ＭＯディスク、ＤＶＤディスク、光磁気ディスク、ＩＣカードなどの「可搬用の物理媒体」の他に、コンピュータシステム１００の内外に備えられるハードディスクドライブ（ＨＤＤ）１２４や、ＲＡＭ１２２、ＲＯＭ１２３などの「固定用の物理媒体」、さらに、モデム１０５を介して接続される公衆回線１０７や、他のコンピュータシステム１１１並びに中継１１２が接続されるＬＡＮ／ＷＡＮ１０６などのように、プログラムの送信に際して短期にプログラムを保持する「通信媒体」など、コンピュータシステム１００によって読み取り可能なパケット処理プログラムを記録する、あらゆる記録媒体を含むものである。
【０１５８】
すなわち、パケット処理プログラムは、上記した「可搬用の物理媒体」、「固定用の物理媒体」、「通信媒体」などの記録媒体に、コンピュータ読み取り可能に記録されるものであり、コンピュータシステム１００は、このような記録媒体からパケット処理プログラムを読み出して実行することでパケット処理システムおよびパケット処理方法を実現する。なお、パケット処理プログラムは、コンピュータシステム１００によって実行されることに限定されるものではなく、他のコンピュータシステム１１１または中継１１２がパケット処理プログラムを実行する場合や、これらが協働してパケット処理プログラムを実行するような場合にも、本発明を同様に適用することができる。
【０１５９】
（他の実施の形態）
さて、これまで本発明の実施の形態について説明したが、本発明は上述した実施の形態以外にも、上記特許請求の範囲に記載した技術的思想の範囲内において種々の異なる実施の形態にて実施されてもよいものである。
【０１６０】
例えば、本実施の形態３および４では、本発明は中継装置５０とネットワークノード９０が同じネットワークで接続された場合について説明したが、本発明はこれに限定されるものではなく、異なったネットワークに接続された場合に適用できる。
【０１６１】
また、本実施の形態３および４では、本発明はシンボル部を仮想ＩＦとした場合について説明したが、本発明はこれに限定されるものではなく、例えばファイルとした場合に適用できる。具体的には、中継装置のＩＦを制御装置上の特定のディレクトリのファイルに対応付けて、制御装置上のプロセスがこのファイルをオープンし、読み出し、書き込みを行うことにより、リモートＩＦを介しデータを送受信することができる。
【０１６２】
また、本実施の形態３および４では、本発明は制御装置上の複数のプロセスが中継装置上の論理ネットワークＩＦの一つと通信する場合について説明したが、本発明はこれに限定するものではなく、複数のプロセスがそれぞれ複数の論理ネットワークＩＦと通信する場合にも適用できる。
【０１６３】
また、本実施の形態３および４では、一つの制御装置と一つの中継装置が連携し、プロセスと制御装置上の仮想ＩＦの間の通信を中継装置上のＩＦの間にまで敷延する場合について説明したが、本発明はこれに限定されるものではなく、複数の制御装置と複数の中継装置が連携する場合にも適用できる。
【０１６４】
また、本実施の形態において説明した各処理のうち、自動的におこなわれるものとして説明した処理の全部または一部を手動的におこなうこともでき、あるいは、手動的におこなわれるものとして説明した処理の全部または一部を公知の方法で自動的におこなうこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
【０１６５】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、ＣＰＵおよび当該ＣＰＵにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
【０１６６】
（付記１）ネットワークインタフェースを用いてパケットを送受信する中継装置と、該中継装置との間で該パケットを転送するパケット転送規則に基づいてアプリケーションを用いて該パケットに応答する制御装置とを接続して構成されるパケット処理システムにおいて、
前記制御装置は、
前記中継装置のアドレス情報に対応付けて設定されたシンボル部と、
前記アプリケーションが前記シンボル部にアクセスしたことを検知した場合に、前記ネットワークインタフェースを用いて受信した前記パケットを前記制御装置に転送するパケット転送規則を設定するよう前記中継装置に要求し、該中継装置から該シンボル部に対応付けて該制御装置に該パケットを転送するパケット転送規則を設定する転送制御手段と、を備え、
前記中継装置は、
前記制御装置の転送制御手段によって要求されたパケット転送規則を設定する転送制御手段を備えたことを特徴とするパケット処理システム。
【０１６７】
（付記２）前記制御装置は、
前記転送制御手段は、前記アプリケーションが前記シンボル部へアクセスする通信ポートを閉じたことを検出した場合に、前記ネットワークインタフェースを用いて受信した前記パケットを前記制御装置に転送するパケット転送規則を削除するよう前記中継装置に要求し、該中継装置から該シンボル部に対応付けて該制御装置に該パケットを転送するパケット転送規則を削除し、
前記中継装置は、
前記転送制御手段は、前記制御装置の転送制御手段によって要求されたパケット転送規則を削除することを特徴とする付記１に記載のパケット処理システム。
【０１６８】
（付記３）前記シンボル部は、前記ネットワークインタフェースに対応する仮想インタフェースであることを特徴とする付記１または付記２に記載のパケット処理システム。
【０１６９】
（付記４）前記中継装置は、前記制御装置から前記ネットワークインタフェースの提供を要求された場合に、該制御装置に提供可能な前記ネットワークインタフェースを判定するＩＦ提供先判定部をさらに備えることを特徴とする付記３に記載のパケット処理システム。
【０１７０】
（付記５）前記パケット転送規則は、前記パケットをトンネル識別子を含むようにカプセル化して前記制御装置と前記中継装置の間で転送することを特徴とする付記１または付記２に記載のパケット処理システム。
【０１７１】
（付記６）前記トンネル識別子は、前記パケットを受信したネットワークインタフェースと、該ネットワークインタフェースに対応する仮想インタフェースと、前記制御装置のアドレスと、該制御装置のアプリケーションのプロトコルアドレスとに対応付けられた上りトンネル識別子と、該パケットを送信する送信仮想インタフェースと、前記中継装置のアドレスと、該送信仮想インタフェースに対応するネットワークインタフェースとに対応付けられた下りトンネル識別子とからなることを特徴とする付記５に記載のパケット処理システム。
【０１７２】
（付記７）前記シンボル部は、前記中継装置の保持するＩＰアドレスに対応する仮想ＩＰアドレスであることを特徴とする付記１または付記２に記載のパケット処理システム。
【０１７３】
（付記８）前記パケット転送規則は、前記パケットのアドレス変換をして前記制御装置と前記中継装置の間でパケット転送することを特徴とする付記１または付記２に記載のパケット処理システム。
【０１７４】
（付記９）前記アドレス変換は、前記中継装置において前記パケットの宛先アドレスを前記仮想ＩＰアドレスから前記制御装置のアドレスへ変換して、該制御装置に該パケットを転送した後に、該宛先アドレスを該制御装置のアドレスから該仮想ＩＰアドレスに変換する上りアドレス変換と、該制御装置において該パケットの送信元アドレスを該仮想ＩＰアドレスから該制御装置のアドレスに変換して、該中継装置に該パケットを転送した後に、該パケットの送信元アドレスを該制御装置のアドレスから該仮想ＩＰアドレス変換する下りアドレス変換とからなることを特徴とする付記８に記載のパケット処理システム。
【０１７５】
（付記１０）前記アプリケーションは、ルータの経路制御プロセスであることを特徴とする付記１または付記２に記載のパケット処理システム。
【０１７６】
（付記１１）前記制御装置と前記中継装置は、データリンク層のネットワークで相互に接続され、該データリンク層のプロトコルを使用してデータ交換を行うことを特徴とする付記１または付記２に記載のパケット処理システム。
【０１７７】
（付記１２）ネットワークインタフェースを用いてパケットを送受信する中継装置と、該中継装置との間で該パケットを転送するパケット転送規則に基づいてアプリケーションを用いて該パケットに応答する制御装置とを接続して構成されるパケット処理システムに用いられるパケット処理方法において、
前記制御装置は、
前記中継装置のアドレス情報に対応付けてシンボル部を設定するシンボル部設定工程と、
前記アプリケーションが前記シンボル部設定工程によって設定されたシンボル部にアクセスしたことを検知した場合に、前記ネットワークインタフェースを用いて受信した前記パケットを前記制御装置に転送するパケット転送規則を設定するよう前記中継装置に要求し、該中継装置から該シンボル部に対応付けて該制御装置に該パケットを転送するパケット転送規則を設定する転送制御工程と、を含み、
前記中継装置は、
前記制御装置の転送制御工程によって要求されたパケット転送規則を設定する転送制御工程を含んだことを特徴とするパケット処理方法。
【０１７８】
（付記１３）前記制御装置は、
前記転送制御工程は、前記アプリケーションが前記シンボル部へアクセスする通信ポートを閉じたことを検出した場合に、前記ネットワークインタフェースを用いて受信した前記パケットを前記制御装置に転送するパケット転送規則を削除するよう前記中継装置に要求し、該中継装置から該シンボル部に対応付けて該制御装置に該パケットを転送するパケット転送規則を削除し、
前記中継装置は、
前記転送制御工程は、前記制御装置の転送制御工程によって要求されたパケット転送規則を削除することを特徴とする付記１２に記載のパケット処理方法。
【０１７９】
（付記１４）前記シンボル部は、前記ネットワークインタフェースに対応する仮想インタフェースであることを特徴とする付記１２または付記１３に記載のパケット処理方法。
【０１８０】
（付記１５）前記パケット転送規則は、前記パケットをトンネル識別子を含むようにカプセル化して前記制御装置と前記中継装置の間で転送することを特徴とする付記１２または付記１３に記載のパケット制御方法。
【０１８１】
（付記１６）前記シンボル部は、前記中継装置の保持するＩＰアドレスに対応する仮想ＩＰアドレスであることを特徴とする付記１２または付記１３に記載のパケット処理方法。
【０１８２】
（付記１７）前記パケット転送規則は、前記パケットのアドレス変換をして前記制御装置と前記中継装置の間でパケット転送することを特徴とする付記１２または付記１３に記載のパケット処理方法。
【０１８３】
（付記１８）ネットワークインタフェースを用いてパケットを送受信する中継装置と、該中継装置との間で該パケットを転送するパケット転送規則に基づいてアプリケーションを用いて該パケットに応答する制御装置とを接続して構成されるパケット処理システムに用いられるパケット処理プログラムにおいて、
前記制御装置は、
前記中継装置のアドレス情報に対応付けてシンボル部を設定するシンボル部設定手順と、
前記アプリケーションが前記シンボル部設定手順によって設定されたシンボル部にアクセスしたことを検知した場合に、前記ネットワークインタフェースを用いて受信した前記パケットを前記制御装置に転送するパケット転送規則を設定するよう前記中継装置に要求し、該中継装置から該シンボル部に対応付けて該制御装置に該パケットを転送するパケット転送規則を設定する転送制御手順と、をコンピュータに実行させ、
前記中継装置は、
前記制御装置の転送制御手順によって要求されたパケット転送規則を設定する転送制御手順をコンピュータに実行させることを特徴とするパケット処理プログラム。
【０１８４】
（付記１９）前記制御装置は、
前記転送制御手順は、前記アプリケーションが前記シンボル部へアクセスする通信ポートを閉じたことを検出した場合に、前記ネットワークインタフェースを用いて受信した前記パケットを前記制御装置に転送するパケット転送規則を削除するよう前記中継装置に要求し、該中継装置から該シンボル部に対応付けて該制御装置に該パケットを転送するパケット転送規則を削除し、
前記中継装置は、
前記転送制御手順は、前記制御装置の転送制御手順によって要求されたパケット転送規則を削除することを特徴とする付記１８に記載のパケット処理プログラム。
【０１８５】
（付記２０）前記シンボル部は、前記ネットワークインタフェースに対応する仮想インタフェースであることを特徴とする付記１８または付記１９に記載のパケット処理プログラム。
【０１８６】
（付記２１）前記パケット転送規則は、前記パケットをトンネル識別子を含むようにカプセル化して前記制御装置と前記中継装置の間で転送することを特徴とする付記１８または付記１９に記載のパケット処理プログラム。
【０１８７】
（付記２２）前記シンボル部は、前記中継装置の保持するＩＰアドレスに対応する仮想ＩＰアドレスであることを特徴とする付記１８または付記１９に記載のパケット処理プログラム。
【０１８８】
（付記２３）前記パケット転送規則は、前記パケットのアドレス変換をして前記制御装置と前記中継装置の間でパケット転送することを特徴とする付記１８または付記１９に記載のパケット処理プログラム。
【０１８９】
（付記２４）制御装置上のプロセスと中継装置のネットワークインタフェースを内部通信パスで接続し、該ネットワークインタフェースを介してネットワークノードと通信を行うパケット処理システムにおいて、
前記制御装置は、
前記制御装置上のプロセスと通信を行うシンボル部を前記中継装置のインタフェースに対応付けて設定するシンボル情報受信設定手段と、
前記シンボル情報受信設定手段によって設定されたシンボル部から前記中継装置のインタフェースの方向へデータを転送する下流内部通信パスの下流内部通信パス識別子を前記中継装置から受信して、該下流内部通信パス識別子を該シンボル部と前記中継装置アドレスとに対応付ける下流内部通信パス対応表を生成する下流内部通信パス対応表生成手段と、
前記プロセスが前記シンボル部と通信を開始するとの通知を受け付けて、前記中継装置のインタフェースから該シンボル部の方向へデータを転送する上流内部通信パスの生成を通知する宛先判定手段と、
前記宛先判定手段からの通知を受け付けて、前記プロセスの入出力ポート識別子と上流内部通信パス識別子を前記中継装置に送信し、前記上内部通信パス識別子を前記シンボル部と前記入出力ポート識別子とに対応付ける上流内部通信パス対応表を生成する上流内部通信パス対応表生成手段と、を備え、
前記中継装置は、
前記下流内部通信パス識別子を前記中継装置のインタフェースに対応付ける下流内部通信パス対応表を生成する下流内部通信パス対応表生成手段と、
前記制御装置の内部通信パス対応表生成手段によって送信された前記プロセスの入出力ポート識別子と前記上流内部通信パス識別子と前記インタフェースを対応付ける上流内部通信パス対応表を生成する上流内部通信パス対応表生成手段と
を備えたことを特徴とするパケット処理システム。
【０１９０】
（付記２５）前記制御装置は、
前記プロセスが終了した場合は、前記宛先判定手段から該プロセスが終了したとの通知を受け付けて、前記内部通信パス対応表の該当個所を削除するよう前記中継装置に要求し、内部通信パス対応表の該当個所を削除する内部通信パス対応表削除手段を備え、
前記中継装置は、
前記制御装置によって要求された内部通信パス対応表の該当個所を削除する内部通信パス対応表削除手段をさらに備えたことを特徴とする付記２３に記載のパケット処理システム。
【０１９１】
（付記２６）前記中継装置は、前記制御装置からインタフェース利用要求を受信した場合、該制御装置に提供可能なインタフェースを判定する提供先判定手段をさらに備えたことを特徴とする付記２４のパケット処理システム。
【０１９２】
（付記２７）前記制御装置は、
前記内部通信パス対応表に基づいて前記シンボル部から受け取ったデータパケットをカプセル化し、該中継装置に送信すると共に、該中継装置から受信したデータパケットをデカプセル化し、前記シンボル部に転送する内部通信パス転送手段をさらに備え、
前記中継装置は、
前記内部通信パス対応表に基づいて前記インタフェースから受け取った前記データパケットをカプセル化し、該制御装置に送信すると共に、該制御装置から受信したデータパケットをデカプセル化し、前記インタフェースに転送する内部通信パス転送手段をさらに備えたことを特徴とする付記２４に記載のパケット処理システム。
【０１９３】
（付記２８）前記シンボル部は、前記中継装置のインタフェースを仮想的に設定した仮想インタフェースであることを特徴とする付記２４〜２７のいずれか一つに記載のパケット処理システム。
【０１９４】
（付記２９）前記制御装置のプロセスは、ルータの経路制御プロセスであることを特徴とする付記２８に記載のパケット処理システム。
【０１９５】
（付記３０）前記制御装置と前記中継装置は、データリンク層で到達可能なネットワークで相互に接続し、データリンクアドレスを用いてデータ交換を行うプロトコルを使用して該制御装置と該中継装置との間でデータ交換を行うことを特徴とする付記２４〜２７のいずれか一つに記載のパケット処理システム。
【０１９６】
（付記３１）制御装置上のプロセスと中継装置のネットワークインタフェースを内部通信パスで接続し、該ネットワークインタフェースを介してネットワークノードと通信を行うパケット処理システムに用いられるパケット処理方法において、
前記制御装置は、
前記制御装置上のプロセスと通信を行うシンボル部を前記中継装置のインタフェースに対応付けて設定するシンボル情報受信設定工程と、
前記シンボル情報受信設定工程によって設定されたシンボル部から前記中継装置のインタフェースの方向へデータを転送する下流内部通信パスの下流内部通信パス識別子を前記中継装置から受信して、該下流内部通信パス識別子を該シンボル部と前記中継装置アドレスとに対応付ける下流内部通信パス対応表を生成する下流内部通信パス対応表生成工程と、
前記プロセスが前記シンボル部と通信を開始するとの通知を受け付けて、前記中継装置のインタフェースから該シンボル部の方向へデータを転送する上流内部通信パスの生成を通知する宛先判定工程と、
前記宛先判定工程からの通知を受け付けて、前記プロセスの入出力ポート識別子と上流内部通信パス識別子を前記中継装置に送信し、前記上内部通信パス識別子を前記シンボル部と前記入出力ポート識別子とに対応付ける上流内部通信パス対応表を生成する上流内部通信パス対応表生成工程と、を含み、
前記中継装置は、
前記下流内部通信パス識別子を前記中継装置のインタフェースに対応付ける下流内部通信パス対応表を生成する下流内部通信パス対応表生成工程と、
前記制御装置の内部通信パス対応表生成工程によって送信された前記プロセスの入出力ポート識別子と前記上流内部通信パス識別子と前記インタフェースを対応付ける上流内部通信パス対応表を生成する上流内部通信パス対応表生成工程と
を含んだことを特徴とするパケット処理方法。
【０１９７】
（付記３２）前記制御装置は、
前記プロセスが終了した場合は、前記宛先判定工程から該プロセスが終了したとの通知を受け付けて、前記内部通信パス対応表の該当個所を削除するよう前記中継装置に要求し、内部通信パス対応表の該当個所を削除する内部通信パス対応表削除工程を含み、
前記中継装置は、
前記制御装置によって要求された内部通信パス対応表の該当個所を削除する内部通信パス対応表削除工程をさらに含んだことを特徴とする付記３１に記載のパケット処理方法。
【０１９８】
（付記３３）前記中継装置は、前記制御装置からインタフェース利用要求を受信した場合、該制御装置に提供可能なインタフェースを判定する提供先判定工程をさらに含んだことを特徴とする付記３１のパケット処理方法。
【０１９９】
（付記３４）前記制御装置は、
前記内部通信パス対応表に基づいて前記シンボル部から受け取ったデータパケットをカプセル化し、該中継装置に送信すると共に、該中継装置から受信したデータパケットをデカプセル化し、前記シンボル部に転送する内部通信パス転送工程をさらに含み、
前記中継装置は、
前記内部通信パス対応表に基づいて前記インタフェースから受け取った前記データパケットをカプセル化し、該制御装置に送信すると共に、該制御装置から受信したデータパケットをデカプセル化し、前記インタフェースに転送する内部通信パス転送工程をさらに含んだことを特徴とする付記３１に記載のパケット処理方法。
【０２００】
（付記３５）前記シンボル部は、前記中継装置のインタフェースを仮想的に設定した仮想インタフェースであることを特徴とする付記３１〜３４のいずれか一つに記載のパケット処理方法。
【０２０１】
（付記３６）前記制御装置のプロセスは、ルータの経路制御プロセスであることを特徴とする付記３５に記載のパケット処理方法。
【０２０２】
（付記３７）前記制御装置と前記中継装置は、データリンク層で到達可能なネットワークで相互に接続し、データリンクアドレスを用いてデータ交換を行うプロトコルを使用して該制御装置と該中継装置との間でデータ交換を行うことを特徴とする付記３１〜３４のいずれか一つに記載のパケット処理方法。
【０２０３】
（付記３８）制御装置上のプロセスと中継装置のネットワークインタフェースを内部通信パスで接続し、該ネットワークインタフェースを介してネットワークノードと通信を行うパケット処理システムに用いられるパケット処理プログラムにおいて、
前記制御装置は、
前記制御装置上のプロセスと通信を行うシンボル部を前記中継装置のインタフェースに対応付けて設定するシンボル情報受信設定手順と、
前記シンボル情報受信設定手順によって設定されたシンボル部から前記中継装置のインタフェースの方向へデータを転送する下流内部通信パスの下流内部通信パス識別子を前記中継装置から受信して、該下流内部通信パス識別子を該シンボル部と前記中継装置アドレスとに対応付ける下流内部通信パス対応表を生成する下流内部通信パス対応表生成手順と、
前記プロセスが前記シンボル部と通信を開始するとの通知を受け付けて、前記中継装置のインタフェースから該シンボル部の方向へデータを転送する上流内部通信パスの生成を通知する宛先判定手順と、
前記宛先判定手順からの通知を受け付けて、前記プロセスの入出力ポート識別子と上流内部通信パス識別子を前記中継装置に送信し、前記上内部通信パス識別子を前記シンボル部と前記入出力ポート識別子とに対応付ける上流内部通信パス対応表を生成する上流内部通信パス対応表生成手順と、をコンピュータに実行させ、
前記中継装置は、
前記下流内部通信パス識別子を前記中継装置のインタフェースに対応付ける下流内部通信パス対応表を生成する下流内部通信パス対応表生成手順と、
前記制御装置の内部通信パス対応表生成手順によって送信された前記プロセスの入出力ポート識別子と前記上流内部通信パス識別子と前記インタフェースを対応付ける上流内部通信パス対応表を生成する上流内部通信パス対応表生成手順と
をコンピュータに実行させることを特徴とするパケット処理プログラム。
【０２０４】
（付記３９）前記制御装置は、
前記プロセスが終了した場合は、前記宛先判定手順から該プロセスが終了したとの通知を受け付けて、前記内部通信パス対応表の該当個所を削除するよう前記中継装置に要求し、内部通信パス対応表の該当個所を削除する内部通信パス対応表削除手順を備え、
前記中継装置は、
前記制御装置によって要求された内部通信パス対応表の該当個所を削除する内部通信パス対応表削除手順をさらにコンピュータに実行させることを特徴とする付記３８に記載のパケット処理プログラム。
【０２０５】
（付記４０）前記中継装置は、前記制御装置からインタフェース利用要求を受信した場合、該制御装置に提供可能なインタフェースを判定する提供先判定手順をさらにコンピュータに実行させることを特徴とする付記３８に記載のパケット処理プログラム。
【０２０６】
（付記４１）前記制御装置は、
前記内部通信パス対応表に基づいて前記シンボル部から受け取ったデータパケットをカプセル化し、該中継装置に送信すると共に、該中継装置から受信したデータパケットをデカプセル化し、前記シンボル部に転送する内部通信パス転送手順をさらにコンピュータに実行させ、
前記中継装置は、
前記内部通信パス対応表に基づいて前記インタフェースから受け取った前記データパケットをカプセル化し、該制御装置に送信すると共に、該制御装置から受信したデータパケットをデカプセル化し、前記インタフェースに転送する内部通信パス転送手順をさらにコンピュータに実行させることを特徴とする付記３８に記載のパケット処理プログラム。
【０２０７】
（付記４２）前記シンボル部は、前記中継装置のインタフェースを仮想的に設定した仮想インタフェースであることを特徴とする付記３８〜４１のいずれか一つに記載のパケット処理プログラム。
【０２０８】
（付記４３）前記制御装置のプロセスは、ルータの経路制御プロセスであることを特徴とする付記４２に記載のパケット処理プログラム。
【０２０９】
（付記４４）前記制御装置と前記中継装置は、データリンク層で到達可能なネットワークで相互に接続し、データリンクアドレスを用いてデータ交換を行うプロトコルを使用して該制御装置と該中継装置との間でデータ交換を行うことを特徴とする付記３８〜４１のいずれか一つに記載のパケット処理プログラム。
【０２１０】
【発明の効果】
以上説明したように、請求項１の発明によれば、制御装置は、中継装置のアドレス情報に対応付けて設定されたシンボル部と、アプリケーションがシンボル部にアクセスしたことを検知した場合に、ネットワークインタフェースを用いて受信したパケットを制御装置に転送するパケット転送規則を設定するよう中継装置に要求し、中継装置から該シンボル部に対応付けて前記制御装置に該パケットを転送するパケット転送規則を設定し、中継装置は、制御装置によって要求されたパケット転送規則を設定するよう構成したので、制御装置上に新たなアプリケーションが起動した場合に、制御装置が中継装置との間のパケット転送規則を動的に設定することができ、もって、従来利用されてきたアプリケーションの改修をせずに、中継装置と制御装置を分離および統合できる。
【０２１１】
また、請求項２の発明によれば、制御装置は、アプリケーションが前記シンボル部へアクセスする通信ポートを閉じたことを検出した場合に、ネットワークインタフェースを用いて受信したパケットを制御装置に転送するパケット転送規則を削除するよう中継装置に要求し、中継装置から該シンボル部に対応付けて該制御装置に該パケットを転送するパケット転送規則を削除し、中継装置は、制御装置によって要求されたパケット転送規則を削除するよう構成したので、制御装置上でアプリケーションが停止した場合に、制御装置が中継装置との間のパケット転送規則を動的に削除することができ、もって、従来利用されてきたアプリケーションの改修をせずに、中継装置と制御装置を分離および統合できる。
【０２１２】
また、請求項３の発明によれば、シンボル部は、ネットワークインタフェースに対応する仮想インタフェースであるよう構成したので、ネットワークインタフェースに対応する仮想インタフェースを用いることにより、従来利用されてきたアプリケーションの動作環境と同等の動作環境を提供することができるので、従来利用されてきたアプリケーションの改修をせずに、中継装置と制御装置を分離および統合できる。
【０２１３】
また、請求項４の発明によれば、パケット転送規則は、パケットをトンネル識別子を含むようにカプセル化して制御装置と中継装置の間で転送するよう構成したので、パケットを確実に宛先まで転送することができる。
【０２１４】
また、請求項５の発明によれば、トンネル識別子は、パケットを受信したネットワークインタフェースと、ネットワークインタフェースに対応する仮想インタフェースと、制御装置のアドレスと、制御装置のアプリケーションのプロトコルアドレスとに対応付けられた上りトンネル識別子と、パケットを送信する送信仮想インタフェースと、中継装置のアドレスと、送信仮想インタフェースに対応するネットワークインタフェースとに対応付けられた下りトンネル識別子とからなることを特徴とするよう構成したので、上り下りの双方向のパケットを確実に宛先まで転送することができる。
【０２１５】
また、請求項６の発明によれば、シンボル部は、中継装置の保持するＩＰアドレスに対応する仮想ＩＰアドレスであるよう構成したので、仮想ＩＰアドレスを用いることにより、従来利用されてきたアプリケーションの動作環境と同等の動作環境を提供することができるので、従来利用されてきたアプリケーションの改修をせずに、中継装置と制御装置を分離および統合できる。
【０２１６】
また、請求項７の発明によれば、パケット転送規則は、パケットのアドレス変換をして制御装置と中継装置の間でパケット転送するよう構成したので、パケットを確実に宛先まで転送することができる。
【０２１７】
また、請求項８の発明によれば、アドレス変換は、中継装置においてパケットの宛先アドレスを仮想ＩＰアドレスから制御装置のアドレスへ変換して、制御装置にパケットを転送した後に、宛先アドレスを制御装置のアドレスから仮想ＩＰアドレスに変換する上りアドレス変換と、制御装置においてパケットの送信元アドレスを仮想ＩＰアドレスから制御装置のアドレスに変換して、中継装置にパケットを転送した後に、パケットの送信元アドレスを制御装置のアドレスから仮想ＩＰアドレス変換する下りアドレス変換とからなるよう構成したので、上り下りの双方向のパケットを確実に宛先まで転送することができる。
【０２１８】
また、請求項９の発明によれば、アプリケーションは、ルータの経路制御プロセスであるよう構成したので、従来利用されてきたアプリケーションの改修をせずに、ルータの中継機能と制御機能を分離および統合できる。
【０２１９】
また、請求項１０の発明によれば、制御装置と中継装置は、データリンク層のネットワークで相互に接続され、データリンク層のプロトコルを使用してデータ交換を行うよう構成したので、制御装置と中継装置との間の通信に利用するインタフェースに関する上位レイヤの属性情報を変更した場合でも、通信が途絶えないようにすることができる。
【図面の簡単な説明】
【図１】本実施の形態１におけるパケット処理システムの構成を示す機能ブロック図である。
【図２】図１に示すパケット処理システムのトンネル作成依頼メッセージの一例を示す図である。
【図３】図１に示すパケット処理システムのトンネル作成応答メッセージの一例を示す図である。
【図４】図１に示すパケット処理システムの転送依頼メッセージの一例を示す図である。
【図５】図１に示すパケット処理システムの制御装置受信表の一例を示す図である。
【図６】図１に示すパケット処理システムの制御装置送信表の一例を示す図である。
【図７】図１に示すパケット処理システムの中継装置振分表の一例を示す図である。
【図８】図１に示すパケット処理システムの中継装置受信表の一例を示す図である。
【図９】図１に示すパケット処理システムにおける仮想ＩＦの登録手順を示すフローチャートである。
【図１０】図１に示すパケット処理システムにおける振分表の登録手順を示すフローチャートである。
【図１１】図１に示すパケット処理システムにおけるデータ受信手順を示すフローチャートである。
【図１２】図１に示すパケット処理システムにおけるデータ送信手順を示すフローチャートである。
【図１３】本実施の形態２におけるパケット処理システムの構成を示す機能ブロック図である。
【図１４】図１３に示すパケット処理システムの制御装置受信表の一例を示す図である。
【図１５】図１３に示すパケット処理システムの制御装置送信表の一例を示す図である。
【図１６】図１３に示すパケット処理システムの中継装置振分表の一例を示す図である。
【図１７】図１３に示すパケット処理システムの中継装置受信表の一例を示す図である。
【図１８】図１３に示すパケット処理システムにおける仮想ＩＰアドレスの登録手順を示すフローチャートである。
【図１９】図１３に示すパケット処理システムのアドレス変換依頼メッセージの一例を示す図である。
【図２０】図１３に示すパケット処理システムにおける振分表の登録手順を示すフローチャートである。
【図２１】図１３に示すパケット処理システムの転送依頼メッセージの一例を示す図である。
【図２２】図１３に示すパケット処理システムにおけるデータ受信手順を示すフローチャートである。
【図２３】図１３に示すパケット処理システムにおけるデータ送信手順を示すフローチャートである。
【図２４】本実施の形態３に係るパケット処理システムの構成を示す機能ブロック図である。
【図２５】図２４に示すパケット処理システムの仮想ＩＦ設定および内部通信パス設定の処理手順を示すフローチャートである。
【図２６】図２４に示すパケット処理システムの仮想ＩＦ設定フェーズにおける内部通信パスの一例を示す図である。
【図２７】図２４に示すパケット処理システムのトンネル生成フェーズにおける内部通信パスの一例を示す図である。
【図２８】図２４に示すパケット処理システムのトンネルにおける内部通信パスの別の例を示す図である。
【図２９】図２４に示すパケット処理システムの受信パケットの転送手順を示すフローチャートである。
【図３０】図２４に示すパケット処理システムの送信パケットの転送手順を示すフローチャートである。
【図３１】本実施の形態４に係るパケット処理システムの構成を示す機能ブロック図である。
【図３２】図３１に示すパケット処理システムの内部通信パス削除の処理手順を示すフローチャートである。
【図３３】本実施の形態５に係るコンピュータシステムの構成を示すシステム構成図である。
【図３４】図３３に示したコンピュータシステムにおける本体部の構成を示すブロック図である。
【符号の説明】
１０、２００  制御装置
２１  入出力部
２２  経路制御部
２３  経路表取得送信部
２４  仮想ＩＦ受信設定部
２５  仮想ＩＦトンネル対応表生成部
２６  仮想ＩＦソケット対応表生成部
２７  トンネル転送部
２９  仮想ＩＦトンネル対応表
３０  仮想ＩＦソケット対応表
３１  経路表
４０，７０  カーネル処理部
４１，７１  宛先判定部
４２  仮想ＩＦ管理部
４３  仮想ＩＦ
４５  装置間通信用物理ＩＦ
４６  装置間通信用論理ＩＦ
４７  仮想ＩＦ対応表削除部
５０、３００  中継装置
５９  ＩＦ設定許可リスト
６０  データ中継部
６１  経路表設定部
６２  提供先判定部
６３  ＩＦ取得送信部
６４  ＩＦトンネル対応表
６５  ＩＦソケット対応表
６６  トンネル転送部
６７  ＩＦトンネル対応表
６８  ＩＦソケット対応表
６９  経路表
７２  ＩＦ情報取得部
７３  物理ネットワークＩＦ
７４  装置間通信用物理ＩＦ
７５  ＩＦソケット対応表削除部
７６  論理ネットワークＩＦ
７７  装置間通信用論理ＩＦ
８０  ネットワーク
９０  ネットワークノード
１００  コンピュータシステム
１０１  本体部
１０２  ディスプレイ
１０２ａ  表示画面
１０３  キーボード
１０４  マウス
１０５  モデム
１０６  ローカルエリアネットワークまたは広域エリアネットワーク（ＬＡＮ／ＷＡＮ）
１０７  公衆回線
１０８  フレキシブルディスク（ＦＤ）
１０９  ＣＤ−ＲＯＭ
１１１  他のコンピュータシステム（ＰＣ）
１１２  サーバ
１１３  プリンタ
１２１  ＣＰＵ
１２２  ＲＡＭ
１２３  ＲＯＭ
１２４  ハードディスクドライブ（ＨＤＤ）
１２５  ＣＤ−ＲＯＭドライブ
１２６  ＦＤドライブ
１２７  Ｉ／Ｏインターフェース
１２８  ＬＡＮインターフェース
２１０  アプリケーション部
２２０  シンボル作成部
２２２  仮想ＩＦ
２２３  仮想ＩＰアドレス
２３０  転送登録要求部
２３２  転送削除要求部
２３４  仮想ＩＦアクセス判定部
２３５  仮想ＩＰアドレスアクセス判定部
２４０、３４０  転送制御部
２４２、２４３、３４４、３４５  受信表
２４４、２４５  送信表
２５０、３５０  振分部
２６０、３７０  データ受信処理部
２７０、３６０  データ送信処理部
２８０、３８０  ＩＦ
３９０，３９２  ネットワークＩＦ
３４２、３４３  振分表
４００、４１０  ネットワーク
４５０ａ、４５０ｂ、４５０ｃ  通信端末装置
【図１】
2004320694.tif 000003
【図２】
2004320694.tif 000004
【図３】
2004320694.tif 000005
【図４】
2004320694.tif 000006
【図５】
2004320694.tif 000007
【図６】
2004320694.tif 000008
【図７】
2004320694.tif 000009
【図８】
2004320694.tif 000010
【図９】
2004320694.tif 000011
【図１０】
2004320694.tif 000012
【図１１】
2004320694.tif 000013
【図１２】
2004320694.tif 000014
【図１３】
2004320694.tif 000015
【図１４】
2004320694.tif 000016
【図１５】
2004320694.tif 000017
【図１６】
2004320694.tif 000018
【図１７】
2004320694.tif 000019
【図１８】
2004320694.tif 000020
【図１９】
2004320694.tif 000021
【図２０】
2004320694.tif 000022
【図２１】
2004320694.tif 000023
【図２２】
2004320694.tif 000024
【図２３】
2004320694.tif 000025
【図２４】
2004320694.tif 000026
【図２５】
2004320694.tif 000027
【図２６】
2004320694.tif 000028
【図２７】
2004320694.tif 000029
【図２８】
2004320694.tif 000030
【図２９】
2004320694.tif 000031
【図３０】
2004320694.tif 000032
【図３１】
2004320694.tif 000033
【図３２】
2004320694.tif 000034
【図３３】
2004320694.tif 000035
【図３４】
2004320694.tif 000036