(57)【特許請求の範囲】
【請求項１】
ＡＴＭネットワーク上でレイヤ３プロトコルを用いて通信を行うＭＰＯＡシステムにおいて、
各通信ノードにおいてデータパケットの宛先に対するショートカットＶＣＣを開設するために発信するアドレス解決要求パケットに、当該データパケットの送信元のレイヤ３アドレスのデータを付加して発信し、
同一の通信に対し、データパケットの宛先に対するショートカットＶＣＣを開設するために発信するアドレス解決要求パケットを複数の前記通信ノードから受け付けた場合に、当該宛先とネットワーク上最も遠い前記通信ノードと前記宛先との間のみに前記ショートカットＶＣＣを開設することを特徴とするＭＰＯＡシステム。
【請求項２】
各前記通信ノードから受け付けた前記アドレス解決要求パケットが同一の通信に対するものであるかどうかを、当該アドレス解決要求パケットにおいて示される当該送信元のレイヤ３アドレス、及び当該宛先のレイヤ３アドレスの各情報を基に判定することを特徴とする請求項１に記載のＭＰＯＡシステム。
【請求項３】
同一の通信に対するアドレス解決要求パケットを複数の前記通信ノードから受け付けた場合に、当該アドレス解決要求パケットにおいて示されるホップカウント値の情報を基に、当該宛先とネットワーク上最も遠い前記通信ノードを選択し、当該選択された通信ノードと前記宛先との間のみに前記ショートカットＶＣＣを開設することを特徴とする請求項２に記載のＭＰＯＡシステム。
【請求項４】
通信を中継する各前記通信ノードのＭＰＯＡクライアントは、
ショートカットさせたいデータパケットの前記アドレス解決要求パケットに、当該データパケットの送信元のレイヤ３アドレスの情報を付加し、当該アドレス解決要求パケットを、宛先ノードに向かう次ホップのＭＰＯＡサーバに送信し、
通信を中継する各前記通信ノードのＭＰＯＡサーバは、
各前記ＭＰＯＡクライアントから送信される前記アドレス解決要求パケットを受け付け、当該ＭＰＯＡサーバが当該宛先ノードに直接接続する通信ノードのＭＰＯＡサーバである出口ＭＰＯＡサーバである場合には、当該アドレス解決要求パケットにおいて示される当該送信元のレイヤ３アドレス、当該宛先のレイヤ３アドレスの各情報を基に、同一の通信に対して複数の前記ＭＰＯＡクライアントから発信されたアドレス解決要求パケットを検出し、
複数の前記ＭＰＯＡクライアントから同一の通信に対するアドレス解決要求パケットを受け付けた場合には、当該アドレス解決要求パケットにおいて示されるホップカウント値の情報を基に、当該宛先とネットワーク上最も遠い前記ＭＰＯＡクライアントからのアドレス解決要求を検出し、前記検出されたアドレス解決要求のみを有効とする制御を行うことを特徴とする請求項１から請求項３のいずれか１つに記載のＭＰＯＡシステム。
【請求項５】
前記データパケットのショートカットＶＣＣを開設するために発信する前記アドレス解決要求パケットに、ＭＰＯＡパケットのベンダプライベート拡張を用いて、当該データパケットの送信元のレイヤ３アドレスの情報を付加することを特徴とする請求項１から請求項４のいずれか１つに記載のＭＰＯＡシステム。
【請求項６】
前記データパケットのショートカットＶＣＣを開設するために発信する前記アドレス解決要求パケットに、ＭＰＯＡパケットの拡張部として「送信元レイヤ３アドレス拡張」を定義し、前記送信元レイヤ３アドレス拡張を用いて、当該データパケットの送信元のレイヤ３アドレスの情報を付加することを特徴とする請求項１から請求項４のいずれか１つに記載のＭＰＯＡシステム。
【請求項７】
ＭＰＯＡによる通信を行う通信装置において、
データパケットの宛先に対するショートカットＶＣＣを開設するために発信するアドレス解決要求パケットに、当該データパケットの送信元のレイヤ３アドレスのデータを付加して発信し、
同一の通信に対し、データパケットの宛先に対するショートカットＶＣＣを開設するために発信するアドレス解決要求パケットを複数の他の通信ノードから受け付けた場合に、当該宛先とネットワーク上最も遠い前記通信ノードと前記宛先との間のみに前記ショートカットＶＣＣを開設することを特徴とする通信装置。
【請求項８】
各前記通信ノードから受け付けた前記アドレス解決要求パケットが同一の通信に対するものであるかどうかを、当該アドレス解決要求パケットにおいて示される当該送信元のレイヤ３アドレス、及び当該宛先のレイヤ３アドレスの各情報を基に判定することを特徴とする請求項７に記載の通信装置。
【請求項９】
同一の通信に対するアドレス解決要求パケットを複数の前記通信ノードから受け付けた場合に、当該アドレス解決要求パケットにおいて示されるホップカウント値の情報を基に、当該宛先とネットワーク上最も遠い前記通信ノードを選択し、当該選択された通信ノードと前記宛先との間のみに前記ショートカットＶＣＣを開設することを特徴とする請求項８に記載の通信装置。
【請求項１０】
ＭＰＯＡクライアントとＭＰＯＡサーバを備え、
前記ＭＰＯＡクライアントは、
ショートカットさせたいデータパケットの前記アドレス解決要求パケットに、当該データパケットの送信元のレイヤ３アドレスの情報を付加し、当該アドレス解決要求パケットを、宛先ノードに向かう次ホップのＭＰＯＡサーバに送信し、
前記ＭＰＯＡサーバは、
各前記ＭＰＯＡクライアントから送信される前記アドレス解決要求パケットを受け付け、当該ＭＰＯＡサーバが当該宛先ノードに直接接続する前記通信ノードのＭＰＯＡサーバである出口ＭＰＯＡサーバである場合には、当該アドレス解決要求パケットにおいて示される当該送信元のレイヤ３アドレス、当該宛先のレイヤ３アドレスの各情報を基に、同一の通信に対して複数の前記ＭＰＯＡクライアントから発信されたアドレス解決要求パケットを検出し、
複数の前記ＭＰＯＡクライアントから同一の通信に対するアドレス解決要求パケットを受け付けた場合には、当該アドレス解決要求パケットにおいて示されるホップカウント値の情報を基に、当該宛先とネットワーク上最も遠い前記ＭＰＯＡクライアントからのアドレス解決要求を検出し、前記検出されたアドレス解決要求のみを有効とする制御を行うことを特徴とする請求項７から請求項９のいずれか１つに記載の通信装置。
【請求項１１】
前記データパケットのショートカットＶＣＣを開設するために発信する前記アドレス解決要求パケットに、ＭＰＯＡパケットのベンダプライベート拡張を用いて、当該データパケットの送信元のレイヤ３アドレスの情報を付加することを特徴とする請求項７から請求項１０のいずれか１つに記載の通信装置。
【請求項１２】
前記データパケットのショートカットＶＣＣを開設するために発信する前記アドレス解決要求パケットに、ＭＰＯＡパケットの拡張部として「送信元レイヤ３アドレス拡張」を定義し、前記送信元レイヤ３アドレス拡張を用いて、当該データパケットの送信元のレイヤ３アドレスの情報を付加することを特徴とする請求項７から請求項１０のいずれか１つに記載の通信装置。
【請求項１３】
ＭＰＯＡによる通信のショートカット通信制御方法において、
データパケットの宛先に対するショートカットＶＣＣを開設するために発信するアドレス解決要求パケットに、当該データパケットの送信元のレイヤ３アドレスのデータを付加して発信し、
同一の通信に対し、データパケットの宛先に対するショートカットＶＣＣを開設するために発信するアドレス解決要求パケットを複数の他の通信ノードから受け付けた場合に、当該宛先とネットワーク上最も遠い前記通信ノードと前記宛先との間のみに前記ショートカットＶＣＣを開設することを特徴とするショートカット通信制御方法。
【請求項１４】
各前記通信ノードから前記アドレス解決要求パケットを受け付け、当該アドレス解決要求パケットにおいて示される当該送信元のレイヤ３アドレス、及び当該宛先のレイヤ３アドレスの各情報を基に、各前記アドレス解決要求パケットが同一の通信に対するものであるかどうかを判定することを特徴とする請求項１３に記載のショートカット通信制御方法。
【請求項１５】
同一の通信に対するアドレス解決要求パケットを複数の前記通信ノードから受け付けた場合に、当該アドレス解決要求パケットにおいて示されるホップカウント値の情報を基に、当該宛先とネットワーク上最も遠い前記通信ノードを選択し、当該選択された通信ノードと前記宛先との間のみに前記ショートカットＶＣＣを開設することを特徴とする請求項１４に記載のショートカット通信制御方法。
【請求項１６】
通信を中継する各通信ノードのＭＰＯＡクライアントで、
ショートカットさせたいデータパケットの前記アドレス解決要求パケットに、当該データパケットの送信元のレイヤ３アドレスの情報を付加して、宛先ノードに向かう次ホップのＭＰＯＡサーバに送信し、
通信を中継する各通信ノードのＭＰＯＡサーバで、
各前記ＭＰＯＡクライアントから送信される前記アドレス解決要求パケットを受け付け、当該ＭＰＯＡサーバが当該宛先ノードに直接接続する前記通信ノードのＭＰＯＡサーバである出口ＭＰＯＡサーバである場合には、当該アドレス解決要求パケットにおいて示される当該送信元のレイヤ３アドレス、当該宛先のレイヤ３アドレスの各情報を基に、同一の通信に対して複数の前記ＭＰＯＡクライアントから発信されたアドレス解決要求パケットを検出し、
複数の前記ＭＰＯＡクライアントから同一の通信に対するアドレス解決要求パケットを受け付けた場合には、当該アドレス解決要求パケットにおいて示されるホップカウント値の情報を基に、当該宛先とネットワーク上最も遠い前記ＭＰＯＡクライアントからのアドレス解決要求を検出し、前記検出されたアドレス解決要求のみを有効とする制御を行うことを特徴とする請求項１３から請求項１５のいずれか１つに記載のショートカット通信制御方法。
【請求項１７】
前記データパケットのショートカットＶＣＣを開設するために発信する前記アドレス解決要求パケットに、ＭＰＯＡパケットのベンダプライベート拡張を用いて、当該データパケットの送信元のレイヤ３アドレスの情報を付加することを特徴とする請求項１３から請求項１６のいずれか１つに記載のショートカット通信制御方法。
【請求項１８】
前記データパケットのショートカットＶＣＣを開設するために発信する前記アドレス解決要求パケットに、ＭＰＯＡパケットの拡張部として「送信元レイヤ３アドレス拡張」を定義し、前記送信元レイヤ３アドレス拡張を用いて、当該データパケットの送信元のレイヤ３アドレスの情報を付加することを特徴とする請求項１３から請求項１６いずれか１つに記載のショートカット通信制御方法。
【請求項１９】
コンピュータを制御することにより、ＭＰＯＡによるショートカット通信を制御するショートカット通信制御プログラムにおいて、
データパケットの宛先に対するショートカットＶＣＣを開設するために発信するアドレス解決要求パケットに、当該データパケットの送信元のレイヤ３アドレスのデータを付加して発信する処理と、
同一の通信に対し、データパケットの宛先に対するショートカットＶＣＣを開設するために発信するアドレス解決要求パケットを複数の他の通信ノードから受け付けた場合に、当該宛先とネットワーク上最も遠い前記通信ノードと前記宛先との間のみに前記ショートカットＶＣＣを開設する処理を実行させることを特徴とするショートカット通信制御プログラム。
【請求項２０】
各前記通信ノードから前記アドレス解決要求パケットを受け付け、当該アドレス解決要求パケットにおいて示される当該送信元のレイヤ３アドレス、及び当該宛先のレイヤ３アドレスの各情報を基に、各前記アドレス解決要求パケットが同一の通信に対するものであるかどうかを判定する処理を実行させることを特徴とする請求項１９に記載のショートカット通信制御プログラム。
【請求項２１】
同一の通信に対するアドレス解決要求パケットを複数の前記通信ノードから受け付けた場合に、当該アドレス解決要求パケットにおいて示されるホップカウント値の情報を基に、当該宛先とネットワーク上最も遠い前記通信ノードを選択し、当該選択された通信ノードと前記宛先との間のみに前記ショートカットＶＣＣを開設する処理を実行させることを特徴とする請求項２０に記載のショートカット通信制御プログラム。
【請求項２２】
通信を中継する各通信ノードのＭＰＯＡクライアントにおいては、
ショートカットさせたいデータパケットの前記アドレス解決要求パケットに、当該データパケットの送信元のレイヤ３アドレスの情報を付加して、宛先ノードに向かう次ホップのＭＰＯＡサーバに送信し、
通信を中継する各通信ノードのＭＰＯＡサーバにおいては、
各前記ＭＰＯＡクライアントから送信される前記アドレス解決要求パケットを受け付け、当該ＭＰＯＡサーバが当該宛先ノードに直接接続する前記通信ノードのＭＰＯＡサーバである出口ＭＰＯＡサーバである場合には、当該アドレス解決要求パケットにおいて示される当該送信元のレイヤ３アドレス、当該宛先のレイヤ３アドレスの各情報を基に、同一の通信に対して複数の前記ＭＰＯＡクライアントから発信されたアドレス解決要求パケットを検出し、
複数の前記ＭＰＯＡクライアントから同一の通信に対するアドレス解決要求パケットを受け付けた場合には、当該アドレス解決要求パケットにおいて示されるホップカウント値の情報を基に、当該宛先とネットワーク上最も遠い前記ＭＰＯＡクライアントからのアドレス解決要求を検出し、前記検出されたアドレス解決要求のみを有効とする処理を実行させることを特徴とする請求項１９から請求項２１のいずれか１つに記載のショートカット通信制御プログラム。
【請求項２３】
前記データパケットのショートカットＶＣＣを開設するために発信する前記アドレス解決要求パケットに、ＭＰＯＡパケットのベンダプライベート拡張を用いて、当該データパケットの送信元のレイヤ３アドレスの情報を付加することを特徴とする請求項１９から請求項２２のいずれか１つに記載のショートカット通信制御プログラム。
【請求項２４】
前記データパケットのショートカットＶＣＣを開設するために発信する前記アドレス解決要求パケットに、ＭＰＯＡパケットの拡張部として「送信元レイヤ３アドレス拡張」を定義し、前記送信元レイヤ３アドレス拡張を用いて、当該データパケットの送信元のレイヤ３アドレスの情報を付加することを特徴とする請求項１９から請求項２２いずれか１つに記載のショートカット通信制御プログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ＭＰＯＡ（Ｍｕｌｔｉ−Ｐｒｏｔｏｃｏｌ  Ｏｖｅｒ  ＡＴＭ）による通信に関し、特に、ショートカット通信におけるドミノ効果（Ｄｏｍｉｎｏ  Ｅｆｆｅｃｔ）を回避するＭＰＯＡシステムとそのショートカット通信制御方法、及びショートカット通信制御プログラムに関する。
【０００２】
【従来の技術】
従来のＭｕｌｔｉ−Ｐｒｏｔｏｃｏｌ  Ｏｖｅｒ  ＡＴＭ（以下ＭＰＯＡ）は、非同期転送モード（Ａｓｙｎｃｈｒｏｎｏｕｓ  Ｔｒａｎｓｆｅｒ  Ｍｏｄｅ、以下ＡＴＭ）ネットワーク上でＩｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ（以下ＩＰ）、Ｉｎｔｅｒｎｅｔｗｏｒｋ  Ｐａｃｋｅｔ  Ｅｘｃｈａｎｇｅ（以下、ＩＰＸ）等の既存のレイヤ３（ネットワーク層）プロトコルを使った通信を行うものであり、その仕様は「ＡＦ−ＭＰＯＡ−００８７．０００、ＡＴＭ  Ｆｏｒｕｍ」で規定されている。
【０００３】
ＭＰＯＡの特徴は、データパケットの送信元ノードから見て宛先ノード（ターゲット）が送信元ノードとは異なるサブネットにあり、かつある一定以上のデータフロー（継続的なデータパケットの流れ）が検出された場合において、そのターゲットに向かってＡＴＭネットワーク内でショートカットＶｉｒｔｕａｌ  Ｃｈａｎｎｅｌ  Ｃｏｎｎｅｃｔｉｏｎ（以下、ＶＣＣ）を開設して、途中のルータを介することなく通信を行うことにある。
【０００４】
従来のＭＰＯＡシステムの動作を、図１３を参照して説明する。ＡＴＭネットワークを構成するＡＴＭスイッチは、図１３には図示されていないが、各ホストやルータを結ぶＶＣＣ（ショートカットＶＣＣを含む）を開設するのに問題ないよう配置、配線されているものとする。また、以下の説明では、便宜上レイヤ３プロトコルとしてＩＰを例に挙げて説明するが、これに限るものではない。
【０００５】
図１３において、ホスト６１０がホスト６５０に向かってＩＰパケットを継続的に送信し始めたとする。このＩＰパケットは、ルータ６２０、ルータ６３０、ルータ６４０を経由して、ホスト６５０に着する。この時、ホスト６１０のＭＰＯＡクライアント（以降ＭＰＣ）であるＭＰＣ６１１は、送信されるＩＰパケットのカウントを行う。このカウント値がある一定時間内にある一定値以上になった場合（例えば１秒間に１０パケット以上）に、「フローがある」と判断する。これをフロー検出という。
【０００６】
フローを検出したＭＰＣ６１１は、ホスト６５０へのショートカット通信を開始する。ここで、ショートカット通信を開始するためには、ホスト６５０へのショートカットＶＣＣを開設しなければならない。ショートカットＶＣＣを開設するためには、ホスト６５０のＡＴＭアドレスを知らなければならない。このような「ショートカット通信を行いたいＭＰＣがショートカット先のホストのＡＴＭアドレスを取得する動作」を「アドレス解決」という。言い換えると、フローを検出したＭＰＣ６１１は、ホスト６５０へのショートカット通信を開始するため、ホスト６５０のアドレス解決を開始する。
【０００７】
ＭＰＣ６１１は、ターゲットとしてホスト６５０のＩＰアドレスを指定して、ＭＰＯＡアドレス解決要求パケットを作成し、ＭＰＯＡサーバ（以降ＭＰＳ）ＭＰＳ６２２に送信する。
【０００８】
ＭＰＳ６２２は、当該ＭＰＯＡアドレス解決要求パケットを、ＩＰルーティングテーブルに従って、ターゲットへの次ホップであるルータ６３０のＭＰＳ６３２に送信する。ＭＰＳ６２２のようなＭＰＳを「入口ＭＰＳ」という。当該ＭＰＯＡアドレス解決要求パケットは、このようにＩＰルーティングテーブルに従って次々とターゲットに向かって転送される。
【０００９】
ＭＰＳ６４２は、当該ＭＰＯＡアドレス解決要求パケットから必要な情報を取り出し、ＭＰＯＡキャッシュ生成要求パケットを作成し、それをターゲットであるホスト６５０のＭＰＣ６５１に送信する。これは、ＭＰＣ５１１からショートカット通信により、ホスト６５０宛のＩＰパケットが送信されてきた場合に、そのＩＰパケットに付加するべきＭｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ（以下ＭＡＣ）ヘッダ情報をＭＰＣ６５１に通知するものである。この場合のＭＡＣヘッダ情報は、ＤＡ（Ｄｅｓｔｉｎａｔｉｏｎ  Ａｄｄｒｅｓｓ）としてホスト６５０のＭＡＣアドレス、ＳＡ（Ｓｏｕｒｃｅ  Ａｄｄｒｅｓｓ）としてルータ６４０のＭＡＣアドレスが含まれる。
【００１０】
ＭＰＣ６５１は、ＭＰＯＡキャッシュ生成応答パケットをＭＰＳ６４２に返送する。当該ＭＰＯＡキャッシュ生成応答パケットには、ＭＰＣ６５１がショートカットＶＣＣの開設を受け付けるためのＡＴＭアドレスが含まれる。
【００１１】
ＭＰＳ６４２は、当該ＭＰＯＡキャッシュ生成応答パケットから必要な情報を取り出し、ＭＰＯＡアドレス解決応答パケットを作成し、それを入口ＭＰＳであるＭＰＳ６２２に向かって返送する。ＭＰＳ６４２のようなＭＰＳを「出口ＭＰＳ」という。当該ＭＰＯＡアドレス解決応答パケットは、このようにＩＰルーティングテーブルに従って次々と入口ＭＰＳに向かって転送される。
【００１２】
ＭＰＳ６２２が当該ＭＰＯＡアドレス解決応答パケットを受信すると、これをＭＰＣ６１１に返送する。これにより、ＭＰＣ６１１はホスト６５０へのショートカットＶＣＣを開設するためのＡＴＭアドレスを知ることができる。なお、ＭＰＯＡアドレス解決要求／返答パケットやＭＰＯＡキャッシュ生成要求／返答パケット等をまとめて「ＭＰＯＡパケット」ということがある。
【００１３】
ＭＰＣ６１１は、当該ＡＴＭアドレスを用いてホスト６５０へのショートカットＶＣＣを開設し、以降のホスト６５０宛のＩＰパケットは当該ショートカットＶＣＣに転送する。ＭＰＣ６５１が当該ショートカットＶＣＣからＩＰパケットを受信すると、先にＭＰＳ６４２からＭＰＯＡキャッシュ生成要求パケットにより通知されたＭＡＣヘッダを、当該ＩＰパケットに付加してＭＡＣフレームを作成する。このようにして作成された当該ＭＡＣフレームは、あたかもルータ６４０からホスト６５０に送信されたＭＡＣフレームのように見える。
【００１４】
これによりホスト６５０の上位プロトコル処理は、ＭＰＯＡが導入されていない場合と同様に行うことができる。
【００１５】
【発明が解決しようとする課題】
上述した従来のＭＰＯＡシステムには、ドミノ効果（Ｄｏｍｉｎｏ  Ｅｆｆｅｃｔ）が発生するという問題点があった。
【００１６】
以下ドミノ効果について説明する。図１４において、ホスト７１０がホスト７５０に向かってＩＰパケットを継続的に送信し始めたとする。このＩＰパケットは、ルータ７２０、ルータ７３０、ルータ７４０を経由してホスト７５０に到着する。ホスト７５０へのフローを検出したＭＰＣ７１１は、ホスト７５０へのショートカット通信を開始すべく、ＭＰＯＡアドレス解決要求パケットをＭＰＳ７２２に送信する。
【００１７】
しかし、ＭＰＣ７１１がフローカウントするのとほぼ同時に、ルータ７２０、ルータ７３０のＭＰＣ７２１、ＭＰＣ７３１もフローカウントを行っている。従ってＭＰＣ７２１、ＭＰＣ７３１も、ＭＰＣ７１１とほぼ同時に、ホスト７５０へのフローを検出する。これにより、ＭＰＣ７２１、ＭＰＣ７３１も、ホスト７５０へのショートカット通信を開始すべく、ＭＰＯＡアドレス解決要求パケットをそれぞれＭＰＳ７３２、ＭＰＳ７４２に送信してしまう。これをＭＰＯＡシステムにおけるドミノ効果という。
【００１８】
ドミノ効果が発生すると、冗長なショートカットＶＣＣが開設されることになる。なぜなら、ＭＰＣ７２１、ＭＰＣ７３１からのＭＰＯＡアドレス解決要求パケット中の「送信元ＭＰＣのＡＴＭアドレス」が、いずれもＭＰＣ７１１のそれとは異なるので、出口ＭＰＳであるＭＰＳ７４２において、これらは全く別のフローと解釈され、ＭＰＳ７４２は、ＭＰＣ７１１からのＭＰＯＡアドレス解決要求パケットと同様に、ＭＰＣ７２１、ＭＰＣ７３１からのＭＰＯＡアドレス解決要求パケットを処理してしまうからである。
【００１９】
図１５は、ドミノ効果が発生した結果、冗長なショートカットＶＣＣが開設されてしまった様子を示す。本例では、ルータ７２０、ルータ７３０からホスト７５０に向けてショートカットＶＣＣが開設されているが、これらのショートカットＶＣＣは使われることはない。なぜなら、ホスト７１０からホスト７５０へのＩＰパケットは、全てホスト７１０においてホスト７５０へのショートカットＶＣＣ上に転送されてしまうからである。
【００２０】
このドミノ効果を回避するための従来の技術としては、「各ルータにおいて、ＡＴＭネットワークから入って来て再びＡＴＭネットワークに出て行くデータフローについては、ショートカットの対象にしない」という方法が考えられる。この技術は、ＭＰＯＡシステムがアドレス解決プロトコルとして採用しているＮＨＲＰ（ＲＦＣ２３３２、ＩＥＴＦ）の仕様で例示されているものである。
【００２１】
しかし、この従来の技術では、本来ショートカットの対象にしたいフローをショートカットの対象外にしてしまうことがあるという問題点があった。
【００２２】
本発明の第１の目的は、上記従来技術の欠点を解決し、本来ショートカットの対象にしたいフローをショートカットの対象外にしてしまうことなく、ドミノ効果を適切に回避するＭＰＯＡシステムとそのショートカット通信制御方法、及びショートカット通信制御プログラムを提供することである。
【００２３】
本発明の第２の目的は、上記従来技術の欠点を解決し、ＭＰＯＡクライアント（ＭＰＣ）において、ショートカットさせたいデータパケットの送信元レイヤ３アドレスを、ＭＰＯＡアドレス解決要求パケットの拡張部に含めてＭＰＳに送信し、ＭＰＯＡサーバ（ＭＰＳ）において、当該ＭＰＯＡアドレス解決要求パケットの「宛先レイヤ３アドレス」、「当該送信元レイヤ３アドレス」、及び「ホップカウント値」の各情報を基に、ネットワーク的に一番遠いＭＰＣからのアドレス解決要求のみを有効としそれ以外のＭＰＣからのアドレス解決要求を無効とする制御を行うことにより、ドミノ効果を適切に回避するＭＰＯＡシステムとそのショートカット通信制御方法、及びショートカット通信制御プログラムを提供することである。
【００２４】
【課題を解決するための手段】
上記目的を達成するため本発明のＭＰＯＡシステムは、ＡＴＭネットワーク上でレイヤ３プロトコルを用いて通信を行うＭＰＯＡシステムにおいて、各通信ノードにおいてデータパケットの宛先に対するショートカットＶＣＣを開設するために発信するアドレス解決要求パケットに、当該データパケットの送信元のレイヤ３アドレスのデータを付加して発信し、同一の通信に対し、データパケットの宛先に対するショートカットＶＣＣを開設するために発信するアドレス解決要求パケットを複数の前記通信ノードから受け付けた場合に、当該宛先とネットワーク上最も遠い前記通信ノードと前記宛先との間のみに前記ショートカットＶＣＣを開設することを特徴とする。
【００２５】
請求項２の本発明のＭＰＯＡシステムは、各前記通信ノードから受け付けた前記アドレス解決要求パケットが同一の通信に対するものであるかどうかを、当該アドレス解決要求パケットにおいて示される当該送信元のレイヤ３アドレス、及び当該宛先のレイヤ３アドレスの各情報を基に判定することを特徴とする。
【００２６】
請求項３の本発明のＭＰＯＡシステムは、同一の通信に対するアドレス解決要求パケットを複数の前記通信ノードから受け付けた場合に、当該アドレス解決要求パケットにおいて示されるホップカウント値の情報を基に、当該宛先とネットワーク上最も遠い前記通信ノードを選択し、当該選択された通信ノードと前記宛先との間のみに前記ショートカットＶＣＣを開設することを特徴とする。
【００２７】
請求項４の本発明のＭＰＯＡシステムは、通信を中継する各前記通信ノードのＭＰＯＡクライアントは、ショートカットさせたいデータパケットの前記アドレス解決要求パケットに、当該データパケットの送信元のレイヤ３アドレスの情報を付加し、当該アドレス解決要求パケットを、宛先ノードに向かう次ホップのＭＰＯＡサーバに送信し、通信を中継する各前記通信ノードのＭＰＯＡサーバは、各前記ＭＰＯＡクライアントから送信される前記アドレス解決要求パケットを受け付け、当該ＭＰＯＡサーバが当該宛先ノードに直接接続する前記通信ノードのＭＰＯＡサーバである出口ＭＰＯＡサーバである場合には、当該アドレス解決要求パケットにおいて示される当該送信元のレイヤ３アドレス、当該宛先のレイヤ３アドレスの各情報を基に、同一の通信に対して複数の前記ＭＰＯＡクライアントから発信されたアドレス解決要求パケットを検出し、複数の前記ＭＰＯＡクライアントから同一の通信に対するアドレス解決要求パケットを受け付けた場合には、当該アドレス解決要求パケットにおいて示されるホップカウント値の情報を基に、当該宛先とネットワーク上最も遠い前記ＭＰＯＡクライアントからのアドレス解決要求を検出し、前記検出されたアドレス解決要求のみを有効とする制御を行うことを特徴とする。
【００２８】
請求項５の本発明のＭＰＯＡシステムは、前記データパケットのショートカットＶＣＣを開設するために発信する前記アドレス解決要求パケットに、ＭＰＯＡパケットのベンダプライベート拡張を用いて、当該データパケットの送信元のレイヤ３アドレスの情報を付加することを特徴とする。
【００２９】
請求項６の本発明のＭＰＯＡシステムは、前記データパケットのショートカットＶＣＣを開設するために発信する前記アドレス解決要求パケットに、ＭＰＯＡパケットの拡張部として「送信元レイヤ３アドレス拡張」を定義し、前記送信元レイヤ３アドレス拡張を用いて、当該データパケットの送信元のレイヤ３アドレスの情報を付加することを特徴とする。
【００３０】
請求項７の本発明の通信装置は、ＭＰＯＡによる通信を行う通信装置において、データパケットの宛先に対するショートカットＶＣＣを開設するために発信するアドレス解決要求パケットに、当該データパケットの送信元のレイヤ３アドレスのデータを付加して発信し、同一の通信に対し、データパケットの宛先に対するショートカットＶＣＣを開設するために発信するアドレス解決要求パケットを複数の他の通信ノードから受け付けた場合に、当該宛先とネットワーク上最も遠い前記通信ノードと前記宛先との間のみに前記ショートカットＶＣＣを開設することを特徴とする。
【００３１】
請求項８の本発明の通信装置は、各前記通信ノードから受け付けた前記アドレス解決要求パケットが同一の通信に対するものであるかどうかを、当該アドレス解決要求パケットにおいて示される当該送信元のレイヤ３アドレス、及び当該宛先のレイヤ３アドレスの各情報を基に判定することを特徴とする。
【００３２】
請求項９の本発明の通信装置は、同一の通信に対するアドレス解決要求パケットを複数の前記通信ノードから受け付けた場合に、当該アドレス解決要求パケットにおいて示されるホップカウント値の情報を基に、当該宛先とネットワーク上最も遠い前記通信ノードを選択し、当該選択された通信ノードと前記宛先との間のみに前記ショートカットＶＣＣを開設することを特徴とする。
【００３３】
請求項１０の本発明の通信装置は、ＭＰＯＡクライアントとＭＰＯＡサーバを備え、前記ＭＰＯＡクライアントは、ショートカットさせたいデータパケットの前記アドレス解決要求パケットに、当該データパケットの送信元のレイヤ３アドレスの情報を付加し、当該アドレス解決要求パケットを、宛先ノードに向かう次ホップのＭＰＯＡサーバに送信し、前記ＭＰＯＡサーバは、各前記ＭＰＯＡクライアントから送信される前記アドレス解決要求パケットを受け付け、当該ＭＰＯＡサーバが当該宛先ノードに直接接続する前記通信ノードのＭＰＯＡサーバである出口ＭＰＯＡサーバである場合には、当該アドレス解決要求パケットにおいて示される当該送信元のレイヤ３アドレス、当該宛先のレイヤ３アドレスの各情報を基に、同一の通信に対して複数の前記ＭＰＯＡクライアントから発信されたアドレス解決要求パケットを検出し、複数の前記ＭＰＯＡクライアントから同一の通信に対するアドレス解決要求パケットを受け付けた場合には、当該アドレス解決要求パケットにおいて示されるホップカウント値の情報を基に、当該宛先とネットワーク上最も遠い前記ＭＰＯＡクライアントからのアドレス解決要求を検出し、前記検出されたアドレス解決要求のみを有効とする制御を行うことを特徴とする。
【００３４】
請求項１１の本発明の通信装置は、前記データパケットのショートカットＶＣＣを開設するために発信する前記アドレス解決要求パケットに、ＭＰＯＡパケットのベンダプライベート拡張を用いて、当該データパケットの送信元のレイヤ３アドレスの情報を付加することを特徴とする。
【００３５】
請求項１２の本発明の通信装置は、前記データパケットのショートカットＶＣＣを開設するために発信する前記アドレス解決要求パケットに、ＭＰＯＡパケットの拡張部として「送信元レイヤ３アドレス拡張」を定義し、前記送信元レイヤ３アドレス拡張を用いて、当該データパケットの送信元のレイヤ３アドレスの情報を付加することを特徴とする。
【００３６】
請求項１３の本発明のショートカット通信制御方法は、ＭＰＯＡによる通信のショートカット通信制御方法において、データパケットの宛先に対するショートカットＶＣＣを開設するために発信するアドレス解決要求パケットに、当該データパケットの送信元のレイヤ３アドレスのデータを付加して発信し、同一の通信に対し、データパケットの宛先に対するショートカットＶＣＣを開設するために発信するアドレス解決要求パケットを複数の他の通信ノードから受け付けた場合に、当該宛先とネットワーク上最も遠い前記通信ノードと前記宛先との間のみに前記ショートカットＶＣＣを開設することを特徴とする。
【００３７】
請求項１４の本発明のショートカット通信制御方法は、各前記通信ノードから前記アドレス解決要求パケットを受け付け、当該アドレス解決要求パケットにおいて示される当該送信元のレイヤ３アドレス、及び当該宛先のレイヤ３アドレスの各情報を基に、各前記アドレス解決要求パケットが同一の通信に対するものであるかどうかを判定することを特徴とする。
【００３８】
請求項１５の本発明のショートカット通信制御方法は、同一の通信に対するアドレス解決要求パケットを複数の前記通信ノードから受け付けた場合に、当該アドレス解決要求パケットにおいて示されるホップカウント値の情報を基に、当該宛先とネットワーク上最も遠い前記通信ノードを選択し、当該選択された通信ノードと前記宛先との間のみに前記ショートカットＶＣＣを開設することを特徴とする。
【００３９】
請求項１６の本発明のショートカット通信制御方法は、通信を中継する各通信ノードのＭＰＯＡクライアントで、ショートカットさせたいデータパケットの前記アドレス解決要求パケットに、当該データパケットの送信元のレイヤ３アドレスの情報を付加して、宛先ノードに向かう次ホップのＭＰＯＡサーバに送信し、通信を中継する各通信ノードのＭＰＯＡサーバで、各前記ＭＰＯＡクライアントから送信される前記アドレス解決要求パケットを受け付け、当該ＭＰＯＡサーバが当該宛先ノードに直接接続する前記通信ノードのＭＰＯＡサーバである出口ＭＰＯＡサーバである場合には、当該アドレス解決要求パケットにおいて示される当該送信元のレイヤ３アドレス、当該宛先のレイヤ３アドレスの各情報を基に、同一の通信に対して複数の前記ＭＰＯＡクライアントから発信されたアドレス解決要求パケットを検出し、複数の前記ＭＰＯＡクライアントから同一の通信に対するアドレス解決要求パケットを受け付けた場合には、当該アドレス解決要求パケットにおいて示されるホップカウント値の情報を基に、当該宛先とネットワーク上最も遠い前記ＭＰＯＡクライアントからのアドレス解決要求を検出し、前記検出されたアドレス解決要求のみを有効とする制御を行うことを特徴とする。
【００４０】
請求項１７の本発明のショートカット通信制御方法は、前記データパケットのショートカットＶＣＣを開設するために発信する前記アドレス解決要求パケットに、ＭＰＯＡパケットのベンダプライベート拡張を用いて、当該データパケットの送信元のレイヤ３アドレスの情報を付加することを特徴とする。
【００４１】
請求項１８の本発明のショートカット通信制御方法は、前記データパケットのショートカットＶＣＣを開設するために発信する前記アドレス解決要求パケットに、ＭＰＯＡパケットの拡張部として「送信元レイヤ３アドレス拡張」を定義し、前記送信元レイヤ３アドレス拡張を用いて、当該データパケットの送信元のレイヤ３アドレスの情報を付加することを特徴とする。
【００４２】
請求項１９の本発明のショートカット通信制御プログラムは、コンピュータを制御することにより、ＭＰＯＡによるショートカット通信を制御するショートカット通信制御プログラムにおいて、データパケットの宛先に対するショートカットＶＣＣを開設するために発信するアドレス解決要求パケットに、当該データパケットの送信元のレイヤ３アドレスのデータを付加して発信する処理と、同一の通信に対し、データパケットの宛先に対するショートカットＶＣＣを開設するために発信するアドレス解決要求パケットを複数の他の通信ノードから受け付けた場合に、当該宛先とネットワーク上最も遠い前記通信ノードと前記宛先との間のみに前記ショートカットＶＣＣを開設する処理を実行させることを特徴とする。
【００４３】
【発明の実施の形態】
以下、本発明の実施の形態について図面を参照して詳細に説明する。
【００４４】
本発明では、ＭＰＯＡによる通信において、本来ショートカットの対象にしたいフローをショートカットの対象外にしてしまうことなく、ドミノ効果の発生を適切に回避し解消するものである。このためＭＰＣにおいては、ショートカットさせたいデータパケットの送信元レイヤ３アドレスをＭＰＯＡアドレス解決要求パケットの拡張部に含めてＭＰＳに送信する機能を備え、ＭＰＳにおいては、当該ＭＰＯＡアドレス解決要求パケットの「宛先レイヤ３アドレス」、「当該送信元レイヤ３アドレス」、及び「ホップカウント値」の各情報を基に、ネットワーク的に一番遠いＭＰＣからのアドレス解決要求を検出してそのアドレス解決要求のみを有効とし、それ以外のＭＰＣからのアドレス解決要求を無効とする制御を行うことを特徴とする。
【００４５】
本発明の第１の実施の形態を説明する。図１は、本発明の第１の実施の形態によるＭＰＣ１０の構成を示すブロック図であり、図２は、本発明の第１の実施の形態によるＭＰＳ２０の構成を示すブロック図である。
【００４６】
図１を参照すると本実施の形態のＭＰＣ１０は、ショートカット通信制御部１１と、ＭＰＣ用ＭＰＯＡパケット処理部１２と、送信元レイヤ３アドレス拡張処理部１３と、ＭＰＣ用ＭＰＯＡパケット送信部１４を備える。ショートカット通信制御部１１と、送信元レイヤ３アドレス拡張処理部１３と、ＭＰＣ用ＭＰＯＡパケット送信部１４は、ＭＰＣ用ＭＰＯＡパケット処理部１２にそれぞれ接続される。ＭＰＣ用ＭＰＯＡパケット送信部１４は、外部にあるＡＴＭスイッチに接続される。
【００４７】
図２を参照すると本実施の形態のＭＰＳ２０は、ＭＰＳ用ＭＰＯＡパケット受信部２１と、ＭＰＳ用ＭＰＯＡパケット処理部２２と、管理情報保持部２３と、ＭＰＳ用ＭＰＯＡパケット送信部２４を備える。ＭＰＳ用ＭＰＯＡパケット受信部２１と、管理情報保持部２３と、ＭＰＳ用ＭＰＯＡパケット送信部２４は、ＭＰＳ用ＭＰＯＡパケット処理部２２にそれぞれ接続される。ＭＰＳ用ＭＰＯＡパケット受信部２１とＭＰＳ用ＭＰＯＡパケット送信部２４は、それぞれ外部にあるＡＴＭスイッチに接続される。
【００４８】
なお、図１及び図２は、本実施の形態の機能を実現する部分についてのみを図示したものであり、ＭＰＳ２０及びＭＰＣ１０を構成する他の機能部については省略している。
【００４９】
次に、本実施の形態の動作を図面を参照して詳細に説明する。図４は、本実施の形態によるＭＰＣ１０の動作を説明するためのフローチャートであり、図５は、本実施の形態によるＭＰＳ２０の動作を説明するためのフローチャートである。なお以下の説明では、便宜上レイヤ３プロトコルとしてＩＰを例に挙げて説明するが、本発明はこれに限るものではない。
【００５０】
図４を参照すると、本実施の形態のＭＰＣ１０の動作は、まず、ショートカット通信制御部１１が、フローを検出したのを契機に動作を開始し、ＭＰＣ用ＭＰＯＡパケット処理部１２に「ショートカット通信を開始せよ」という指示を送信する。これにはショートカット通信させたいデータの送信元ＩＰアドレスと、宛先ＩＰアドレスが含まれる（ステップ４０１）。
【００５１】
ＭＰＣ用ＭＰＯＡパケット処理部１２は、送信元レイヤ３アドレス拡張処理部１３に、当該送信元ＩＰアドレスを渡す。送信元レイヤ３アドレス拡張処理部１３は、当該送信元ＩＰアドレスを含むＭＰＯＡパケット拡張を作成し、ＭＰＣ用ＭＰＯＡパケット処理部１２に通知する（ステップ４０２）。
【００５２】
ＭＰＣ用ＭＰＯＡパケット処理部１２は、当該宛先ＩＰアドレスをもとに、ＭＰＯＡアドレス解決要求パケットを作成し、当該ＭＰＯＡパケット拡張を当該ＭＰＯＡアドレス解決要求パケットに付加し、ＭＰＣ用ＭＰＯＡパケット送信部１４に渡す（ステップ４０３）。
【００５３】
ＭＰＣ用ＭＰＯＡパケット送信部１４は、当該ＭＰＯＡアドレス解決要求パケットをＭＰＳに向かって送信し（ステップ４０４）、以上によりＭＰＣ１０による処理が終了する。
【００５４】
図３は、本実施の形態の送信元ＩＰアドレスを保持するためのＭＰＯＡパケット拡張のフォーマットの一例を示す図である。図３の例では、ＭＰＯＡパケットの「ベンダプライベート拡張」を用いている。以下各フィールドについて説明する。特に指定しない限り、値は１０進数である。
【００５５】
Ｃフィールド３０及びｕフィールド３１は、“０”を指定する。
Ｔｙｐｅフィールド３２は、これが「ベンダプライベート拡張」であることを示す“８”を指定する。
Ｌｅｎｇｔｈフィールド３３は、以下の、Ｖｅｎｄｏｒ  ＩＤフィールド３４からＤａｔａ  Ｓｏｕｒｃｅ  Ｐｒｏｔｏｃｏｌ  Ａｄｄｒｅｓｓフィールド３８までの長さをオクテット単位で指定する。
Ｖｅｎｄｏｒ  ＩＤフィールド３４は、このベンダプライベート拡張を定義したベンダを識別する番号を指定する。例えば、「日本電気株式会社」を表す“１１９”を指定する。
Ｓｕｂ  ＩＤフィールド３５は、同じベンダ内の異なるプロジェクトやモデルを識別するために、当該ベンダ内で適当な値を決めて指定する。
Ｓｕｂ  Ｔｙｐｅフィールド３６は、本ベンダプライベート拡張の機能を指定する。例えば、「送信元レイヤ３アドレス拡張」であることを示す値として“１”を指定する等とする。
ＤＳＰＡ  Ｌｅｎフィールド３７は、Ｄａｔａ  Ｓｏｕｒｃｅ  Ｐｒｏｔｏｃｏｌ  Ａｄｄｒｅｓｓフィールド３８に格納する送信元レイヤ３アドレスの長さをオクテット単位で指定する。
Ｄａｔａ  Ｓｏｕｒｃｅ  Ｐｒｏｔｏｃｏｌ  Ａｄｄｒｅｓｓフィールド３８は、送信元レイヤ３アドレスを指定する。
【００５６】
なお、本実施の形態のＭＰＣ１０は、以上説明した「ショートカット通信させたいデータの送信元ＩＰアドレスをＭＰＯＡアドレス解決要求パケットに付加する」という動作以外は、従来のＭＰＣと同様の動作を行う。
【００５７】
図５を参照すると、本実施の形態のＭＰＳ２０の動作は、まず、ＭＰＳ用ＭＰＯＡパケット受信部２１が、ＭＰＣ１０からＭＰＯＡパケットを受信したのを契機に動作を開始し、受信したＭＰＯＡパケットをＭＰＳ用ＭＰＯＡパケット処理部２２に渡す（ステップ５０１）。
【００５８】
ＭＰＳ用ＭＰＯＡパケット処理部２２は、当該ＭＰＯＡパケットの種類を判断する（ステップ５０２）。ここで、ＭＰＯＡパケットの種類が「ＭＰＯＡアドレス解決要求」でない場合には、従来のＭＰＳと同様の処理を行い（ステップ５１５）、処理を終える。
【００５９】
また、「ＭＰＯＡアドレス解決要求」の場合には、更に、ＭＰＳ用ＭＰＯＡパケット処理部２２が、自身が出口ＭＰＳとなるかどうかを判断する（ステップ５０３）。ここで、自身が出口ＭＰＳとならない場合には、従来のＭＰＳと同様の処理を行い（ステップ５１５）、ＭＰＳ２０の処理を終える。
【００６０】
また、自身が出口ＭＰＳとなる場合には、更に、ＭＰＳ用ＭＰＯＡパケット処理部２２が、当該ＭＰＯＡアドレス解決要求パケットに送信元レイヤ３アドレス拡張が付加されているかどうかを判断する（ステップ５０４）。ここで、送信元レイヤ３アドレス拡張が付加されていない場合には、従来のＭＰＳと同様の処理を行い（ステップ５１５）、ＭＰＳ２０の処理を終える。
【００６１】
また、ＭＰＯＡアドレス解決要求パケットに送信元レイヤ３アドレス拡張が付加されている場合には、更に、ＭＰＳ用ＭＰＯＡパケット処理部２２が、当該ＭＰＯＡアドレス解決要求パケットから、宛先ＩＰアドレス、送信元ＩＰアドレス、ＭＰＣのＡＴＭアドレス、ホップカウント値を取り出す（ステップ５０５）。
【００６２】
ＭＰＳ用ＭＰＯＡパケット処理部２２は、当該宛先ＩＰアドレス、当該送信元ＩＰアドレス、当該ＭＰＣのＡＴＭアドレスをキーに、管理情報保持部２３に保持されている管理情報を検索し（ステップ５０６）、当該宛先ＩＰアドレスにマッチするエントリが存在するかどうかを判断する（ステップ５０７）。ここで、当該宛先ＩＰアドレスにマッチするエントリが存在しない場合には、当該ＭＰＯＡアドレス解決要求パケットに対応する新規エントリを管理情報保持部２３内に作成し（ステップ５１２）、出口ＭＰＳとしての従来のＭＰＳの処理を行い（ステップ５１３）、ＭＰＳ２０の処理を終える。
【００６３】
また、当該宛先ＩＰアドレスにマッチするエントリが存在する場合には、更に、当該宛先ＩＰアドレスにマッチする当該エントリの内で、当該送信元ＩＰアドレスにマッチするエントリが存在するかどうかを判断する（ステップ５０８）。ここで、当該送信元ＩＰアドレスにマッチするエントリが存在しない場合には、当該ＭＰＯＡアドレス解決要求パケットに対応する新規エントリを管理情報保持部２３内に作成し（ステップ５１２）、出口ＭＰＳとしての従来のＭＰＳの処理を行い（ステップ５１３）、ＭＰＳ２０の処理を終える。
【００６４】
また、当該送信元ＩＰアドレスにマッチするエントリが存在する場合には、更に、当該宛先ＩＰアドレス及び当該送信元ＩＰアドレスにマッチする当該エントリが、当該ＭＰＣのＡＴＭアドレスにマッチするかどうかを判断する（ステップ５０９）。ここで、当該ＭＰＣのＡＴＭアドレスにマッチする場合には、当該エントリに対する出口ＭＰＳとしての従来のＭＰＳの処理を行い（ステップ５１３）、ＭＰＳ２０の処理を終える。
【００６５】
また、当該ＭＰＣのＡＴＭアドレスにマッチしない場合には、更に、当該ホップカウント値（以降ＨＣ−ａ）と、当該エントリに保持されているホップカウント値（以降ＨＣ−ｂ）を比較する（ステップ５１０）。ＭＰＯＡアドレス解決要求パケット中のホップカウント値は、各ＭＰＳにおいて次ホップのＭＰＳに転送される時に１つずつ減算されるので、より小さいホップカウント値を持つＭＰＯＡアドレス解決要求パケットの方が、より遠くから送信されて来たことになる。ここで、ＨＣ−ａがＨＣ−ｂよりも小さくない場合には、当該ＭＰＯＡアドレス解決要求パケットに対して「アドレス解決不可」の応答パケット（ＮＡＫ）をＭＰＣに返送し（ステップ５１４）、ＭＰＳ２０の処理を終える。
【００６６】
また、ＨＣ−ａがＨＣ−ｂよりも小さい場合には、更に、ＭＰＳ用ＭＰＯＡパケット処理部２２が、当該エントリを管理情報保持部２３から消去する処理を行う（ステップ５１１）。この消去処理は、従来の出口ＭＰＳの消去処理と同様であり、当該エントリの状態に応じて、当該エントリに対応するＭＰＣにＮＡＫ又はＭＰＯＡアドレス解決結果追い出し要求パケットを返送することが含まれる。
【００６７】
そして、ＭＰＳ用ＭＰＯＡパケット処理部２２が、当該ＭＰＯＡアドレス解決要求パケットに対応する新規エントリを管理情報保持部２３内に作成し（ステップ５１２）、出口ＭＰＳとしての従来のＭＰＳの処理を行い（ステップ５１３）、ＭＰＳ２０の処理を終える。
【００６８】
なお、本実施の形態のＭＰＳ２０は、以上説明した出口ＭＰＳとしての動作以外は、従来のＭＰＳと同様の動作を行う。
【００６９】
次に、本実施の形態のＭＰＯＡシステムが効果的に動作することを、従来のＭＰＯＡシステムと比較して、以下の各実施例を用いて説明する。
【００７０】
まず、図６、図７の実施例を説明する。本実施例では、ホスト５１０、ホスト５５０にＭＰＣが備えられ、ルータ５２０、ルータ５３０、ルータ５４０にＭＰＳとＭＰＣを備えている。
【００７１】
まず、図６において、ホスト５１０がホスト５５０に向かってＩＰパケットを継続的に送信し始めたとする。すると、ＭＰＣ５１１がホスト５５０へのフローを検出するので、ＭＰＣ５１１がホスト５５０へのショートカットＶＣＣを開設する動作を開始する。これとほぼ同時に、ＭＰＣ５２１、ＭＰＣ５３１もホスト５５０へのフローを検出するので、それぞれホスト５５０へのショートカットＶＣＣを開設する動作を開始する。
【００７２】
しかし、出口ＭＰＳであるＭＰＳ５４２にて、ＭＰＣ５１１からのＭＰＯＡアドレス解決要求パケットのホップカウント値が、他のＭＰＣからのＭＰＯＡアドレス解決要求パケットのホップカウント値より小さいので、ＭＰＣ５１１からのＭＰＯＡアドレス解決要求パケットだけが有効とみなされる。
【００７３】
従って、図７のように、ルータ５２０やルータ５３０からホスト５５０へはショートカットＶＣＣが開設されず、ホスト５１０からホスト５５０へのショートカットＶＣＣだけが開設されることになる。
【００７４】
本実施例の場合では、従来のＭＰＯＡシステムにおいては、ルータ５２０、ルータ５３０からホスト５５０への冗長なショートカットＶＣＣが開設されてしまうが、本実施の形態のＭＰＯＡシステムにおいては、必要なショートカットＶＣＣだけを開設することができる。
【００７５】
次に、図８、図９の実施例を説明する。本実施例では、ホスト５５０にＭＰＣが備えられ、ルータ５２０、ルータ５３０、ルータ５４０にＭＰＳとＭＰＣとを備えているが、ホスト５１０にはＭＰＣを備えていない。
【００７６】
まず、図８において、ホスト５１０がホスト５５０に向かってＩＰパケットを継続的に送信し始めたとする。すると、ホスト５１０にＭＰＣが存在しないので、ホスト５１０はショートカット動作を行わないが、その代わりＭＰＣ５２１がホスト５５０へのフローを検出するので、ＭＰＣ５２１がホスト５５０へのショートカットＶＣＣを開設する動作を開始する。これとほぼ同時に、ＭＰＣ５３１もホスト５５０へのフローを検出するので、ＭＰＣ５３１がホスト５５０へのショートカットＶＣＣを開設する動作を開始する。
【００７７】
しかし、出口ＭＰＳであるＭＰＳ５４２にて、ＭＰＣ５２１からのＭＰＯＡアドレス解決要求パケットのホップカウント値が他のＭＰＣからのＭＰＯＡアドレス解決要求パケットのホップカウント値より小さいので、ＭＰＣ５２１からのＭＰＯＡアドレス解決要求パケットだけが有効とみなされる。
【００７８】
従って、図９のように、ルータ５３０からホスト５５０へはショートカットＶＣＣが開設されず、ルータ５２０からホスト５５０へのショートカットＶＣＣだけが開設されることになる。
【００７９】
本実施例の場合では、従来のＭＰＯＡシステムにおいては、ルータ５３０からホスト５５０への冗長なショートカットＶＣＣが開設されてしまう。また更に、従来のＭＰＯＡシステムのドミノ効果の回避方法を用いたとしても、ルータ５３０からホスト５５０へのショートカットＶＣＣの開設が回避できるものの、ルータ５２０からホスト５５０へのショートカットＶＣＣが開設されなくなってしまう。
【００８０】
しかし、本実施の形態のＭＰＯＡシステムにおいては、必要なショートカットＶＣＣのみを開設することができ、適切にショートカット通信を制御することができる。
【００８１】
次に、図１０、図１１の実施例を説明する。本実施例では、ホスト５１０、ホスト５５０にＭＰＣを備え、ルータ５２０、ルータ５３０、ルータ５４０にＭＰＳとＭＰＣを備えているが、ホスト５６０にはＭＰＣを備えていない。
【００８２】
まず、図１０において、ホスト５１０がホスト５５０に向かってＩＰパケットを継続的に送信し始め、更に、これと並行して、ホスト５６０がホスト５５０に向かってデータを継続的に送信し始めたとする。ここで、ホスト５１０及びホスト５６０からのデータ送信は、必ずしも同時期でなくて良い。
【００８３】
すると、ＭＰＣ５１１がホスト５５０へのフローを検出するので、ＭＰＣ５１１がホスト５５０へのショートカットＶＣＣを開設する動作を開始する。これとほぼ同時にＭＰＣ５２１、ＭＰＣ５３１もホスト５５０へのフローを検出するので、それぞれホスト５５０へのショートカットＶＣＣを開設する動作を開始する。
【００８４】
これと並行して、図１０の実施例においては、ホスト５６０にＭＰＣが存在しないので、ホスト５６０はショートカット動作を行わないが、その代わりＭＰＣ５２１及びＭＰＣ５３１がホスト５５０へのフローを検出するので、それぞれホスト５５０へのショートカットＶＣＣを開設する動作を開始する。
【００８５】
しかし、出口ＭＰＳであるＭＰＳ５４２にて、ホスト５１０からホスト５５０へのフローについて、ＭＰＣ５１１からのＭＰＯＡアドレス解決要求パケットのホップカウント値が他のＭＰＣからのＭＰＯＡアドレス解決要求パケットのホップカウント値より小さいので、ＭＰＣ５１１からのＭＰＯＡアドレス解決要求パケットだけが有効とみなされる。
【００８６】
また、ホスト５６０からホスト５５０へのフローについて、ＭＰＣ５２１からのＭＰＯＡアドレス解決要求パケットのホップカウント値が他のＭＰＣからのＭＰＯＡアドレス解決要求パケットのホップカウント値より小さいので、ＭＰＣ５２１からのＭＰＯＡアドレス解決要求パケットだけが有効とみなされる。
【００８７】
従って、図１１のように、ホスト５１０からホスト５５０へのショートカットＶＣＣ及びルータ５２０からホスト５５０へのショートカットＶＣＣが両方とも開設されることになる。
【００８８】
本実施例の場合では、従来のＭＰＯＡシステムにおいては、ルータ５３０からホスト５５０への冗長なショートカットＶＣＣが開設されてしまう。また更に、従来のＭＰＯＡシステムのドミノ効果の回避方法を用いたとしても、ルータ５３０からホスト５５０へのショートカットＶＣＣの開設が回避できるものの、ホスト５６０からホスト５５０へのフローについて、ルータ５２０からホスト５５０へのショートカットＶＣＣも開設されなくなってしまう。
【００８９】
しかし、本実施の形態のＭＰＯＡシステムにおいては、必要なショートカットＶＣＣのみを開設することができ、適切にショートカット通信を制御することができる。
【００９０】
また、本実施の形態のＭＰＯＡシステムは、必ずしも通信ノードの全てに本実施の形態のＭＰＳやＭＰＣを備える必要はなく、通信ネットワーク内に従来のＭＰＳやＭＰＣが混在する場合においても実施することができる。つまり、本実施の形態のＭＰＳ、ＭＰＣは、従来のＭＰＳ、ＭＰＣに対して互換性を備えており、本実施の形態のＭＰＣから、送信元ＩＰアドレスを付加したＭＰＯＡアドレス解決要求パケットが従来のＭＰＳに送信された場合においても、その従来のＭＰＳは受信したＭＰＯＡアドレス解決要求パケットを問題なく処理することができる。
【００９１】
これは、本実施の形態のＭＰＯＡシステムでは、ＭＰＯＡパケットの拡張部において当該送信元ＩＰアドレスを保持する方式を採用したことにより、このＭＰＯＡパケットの拡張部を処理する機能を備えない従来のＭＰＳにおいては、その拡張部を無視して通常のＭＰＯＡパケットとして処理することができるからである（Ｃフィ―ルドは、“０”とする）。
【００９２】
また、通信経路上に本発明の機能を備えない従来のＭＰＳが混在する場合においては、従来と同様にドミノ効果の発生や、ショートカットＶＣＣの適切な開設に障害が発生する可能性があるものの、通信経路上における本発明の機能を備える各通信ノードにおいては、これらの障害を発生させないように適切に通信を処理するため、全ての通信ノードが本発明の機能を備えない従来のＭＰＯＡシステムよりも、これらの障害の発生する可能性や規模を抑えることができる。
【００９３】
次に、本発明の第２の実施の形態を説明する。
【００９４】
本発明のＭＰＣが、送信元ＩＰアドレスをＭＰＯＡアドレス解決要求パケットに付加するための方法として、第１の実施の形態においてはＭＰＯＡパケットの「ベンダプライベート拡張」を用いていたが、この方法に限定されるものではなく、例えば、ＭＰＯＡの正規の拡張部として新たに「送信元レイヤ３アドレス拡張」を定義することにより、送信元ＩＰアドレスをＭＰＯＡアドレス解決要求パケットに付加することができる。
【００９５】
図１２は、本実施の形態の、送信元ＩＰアドレスをＭＰＯＡアドレス解決要求パケットに付加するために、ＭＰＯＡの正規の拡張部として新たに「送信元レイヤ３アドレス拡張」を定義したフォーマットの一例を示す図である。以下、図１２の例の各フィールドについて説明する。特に指定しない限り、値は１０進数である。
【００９６】
Ｃフィールド４０及びｕフィールド４１は、“０”を指定する。
Ｔｙｐｅフィールド４２は、この拡張部が「送信元レイヤ３アドレス拡張」であることを示すための値を指定する（例えば１６進数で“１００Ｆ”）。
Ｌｅｎｇｔｈフィールド４３は、以下の、ＤＳＰＡ  Ｌｅｎフィールド４４からＤａｔａ  Ｓｏｕｒｃｅ  Ｐｒｏｔｏｃｏｌ  Ａｄｄｒｅｓｓフィールド４６までの長さをオクテット単位で指定する。
ＤＳＰＡ  Ｌｅｎフィールド４４は、Ｄａｔａ  Ｓｏｕｒｃｅ  Ｐｒｏｔｏｃｏｌ  Ａｄｄｒｅｓｓフィールド４６に格納する送信元レイヤ３アドレスの長さをオクテット単位で指定する。
ｕｎｕｓｅｄフィールド４５は、“０”を指定する。
Ｄａｔａ  Ｓｏｕｒｃｅ  Ｐｒｏｔｏｃｏｌ  Ａｄｄｒｅｓｓフィールド４６は、送信元レイヤ３アドレスを指定する。
【００９７】
またその他、本発明の上記各実施の形態やその実施例の説明において例示した値や、パケットのフィールド名は、これに限定されるものではなく他の値や名称を用いることも可能である。
【００９８】
なお、上記各実施の形態のＭＰＯＡシステムは、ＭＰＣ１０における、ショートカット通信制御部１１、ＭＰＣ用ＭＰＯＡパケット処理部１２、送信元レイヤ３アドレス拡張処理部１３、ＭＰＣ用ＭＰＯＡパケット送信部１４の機能や、ＭＰＳ２０におけるＭＰＳ用ＭＰＯＡパケット受信部２１、ＭＰＳ用ＭＰＯＡパケット処理部２２、管理情報保持部２３、ＭＰＳ用ＭＰＯＡパケット送信部２４の機能や、その他の機能をハードウェア的に実現することは勿論として、各機能を備えるコンピュータプログラムであるショートカット通信制御プログラムを、コンピュータ処理装置のメモリにロードされることで実現することができる。このショートカット通信制御プログラムは、磁気ディスク、半導体メモリその他の記録媒体８０、９０に格納される。そして、その記録媒体からコンピュータ処理装置にロードされ、コンピュータ処理装置の動作を制御することにより、上述した各機能を実現する。
【００９９】
このように、本発明の実施は、ソフトウェアやファームウェアで実現することも、ハードウェアで実現することもできる。
【０１００】
以上好ましい実施の形態及び実施例を挙げて本発明を説明したが、本発明は必ずしも上記実施の形態及び実施例に限定されるものではなく、その技術的思想の範囲内において様々に変形して実施することができる。
【０１０１】
【発明の効果】
以上説明したように本発明のＭＰＯＡシステムによれば、以下のような効果が達成される。
【０１０２】
第１に、本発明のＭＰＯＡシステムによれば、ＭＰＯＡシステムにおけるドミノ効果を回避することができる。その理由は、ＭＰＯＡアドレス解決要求パケットを送信するＭＰＣが、送信元レイヤ３アドレスを当該ＭＰＯＡアドレス解決要求パケットの拡張部に付加するので、出口ＭＰＳにおいてその送信元レイヤ３アドレスを知ることができ、同一の「送信元レイヤ３アドレス、宛先レイヤ３アドレス」の組み合わせに対する複数ノードからのアドレス解決要求を特定することができるからである。
【０１０３】
第２に、本発明のＭＰＯＡシステムによれば、本発明による機能を備えない従来のＭＰＯＡシステムによる通信と、その互換性を保つことができる。その理由は、本発明によるＭＰＯＡシステムのＭＰＣが送信するＭＰＯＡアドレス解決要求パケットに付加される送信元レイヤ３アドレスが、ＭＰＯＡパケットの拡張部に付加されるので、本発明による機能を持たない他のＭＰＯＡシステムのＭＰＣが当該ＭＰＯＡアドレス解決要求パケットを受信したとしても、何ら影響を与えないからである。
【図面の簡単な説明】
【図１】本発明の第１の実施の形態によるＭＰＯＡクライアント（ＭＰＣ）の構成を示すブロック図である。
【図２】本発明の第１の実施の形態によるＭＰＯＡサーバ（ＭＰＳ）の構成を示すブロック図である。
【図３】本発明の第１の実施の形態の送信元ＩＰアドレスを保持するためのＭＰＯＡパケット拡張のフォーマットの一例を示す図である。
【図４】本発明の第１の実施の形態によるＭＰＯＡクライアント（ＭＰＣ）の動作を説明するためのフローチャートである。
【図５】本発明の第１の実施の形態によるＭＰＯＡサーバ（ＭＰＳ）の動作を説明するためのフローチャートである。
【図６】本発明の第１の実施の形態によるＭＰＯＡシステムの動作を説明するための図である。
【図７】本発明の第１の実施の形態によるＭＰＯＡシステムの動作を説明するための図である。
【図８】本発明の第１の実施の形態によるＭＰＯＡシステムの動作を説明するための図である。
【図９】本発明の第１の実施の形態によるＭＰＯＡシステムの動作を説明するための図である。
【図１０】本発明の第１の実施の形態によるＭＰＯＡシステムの動作を説明するための図である。
【図１１】本発明の第１の実施の形態によるＭＰＯＡシステムの動作を説明するための図である。
【図１２】本発明の第２の実施の形態の送信元ＩＰアドレスをＭＰＯＡアドレス解決要求パケットに付加するために、ＭＰＯＡの正規の拡張部として新たに「送信元レイヤ３アドレス拡張」を定義したフォーマットの一例を示す図である。
【図１３】従来のＭＰＯＡシステムの動作を説明するための図である。
【図１４】従来のＭＰＯＡシステムのドミノ効果を説明するための図である。
【図１５】従来のＭＰＯＡシステムのドミノ効果を説明するための図である。
【符号の説明】
１０  ＭＰＯＡクライアント（ＭＰＣ）
１１  ショートカット通信制御部
１２  ＭＰＣ用ＭＰＯＡパケット処理部
１３  送信元レイヤ３アドレス拡張処理部
１４  ＭＰＣ用ＭＰＯＡパケット送信部
２０  ＭＰＯＡサーバ（ＭＰＳ）
２１  ＭＰＳ用ＭＰＯＡパケット受信部
２２  ＭＰＳ用ＭＰＯＡパケット処理部
２３  管理情報保持部
２４  ＭＰＳ用ＭＰＯＡパケット送信部
５１０、５５０、５６０  ホスト
５２０、５３０、５４０  ルータ
５１１、５２１、５３１、５４１、５５１  ＭＰＣ
５２２、５３２、５４２  ＭＰＳ
６１０、６５０  ホスト
６２０、６３０、６４０  ルータ
６１１、６２１、６３１、６４１、６５１  ＭＰＣ
６２２、６３２、６４２  ＭＰＳ
７１０、７５０  ホスト
７２０、７３０、７４０  ルータ
７１１、７２１、７３１、７４１、７５１  ＭＰＣ
７２２、７３２、７４２  ＭＰＳ
【図１】
0003602070.tif 000002
【図２】
0003602070.tif 000003
【図３】
0003602070.tif 000004
【図４】
0003602070.tif 000005
【図５】
0003602070.tif 000006
【図６】
0003602070.tif 000007
【図７】
0003602070.tif 000008
【図８】
0003602070.tif 000009
【図９】
0003602070.tif 000010
【図１０】
0003602070.tif 000011
【図１１】
0003602070.tif 000012
【図１２】
0003602070.tif 000013
【図１３】
0003602070.tif 000014
【図１４】
0003602070.tif 000015
【図１５】
0003602070.tif 000016