(57)【要約】【課題】  異なるパケット種別間の連携処理を実施すること。【解決手段】  選択装置ＩＦ６がパケット毎に適切な通信装置ＧＷ２を選択する際に、各ＧＷ２における処理負荷の均一性、かつ同一ユーザまたは同一セッションに属するパケットに対する同一通信装置ＧＷ２の選択、かつ選択装置ＩＦ６が保持できる転送テーブルのエントリ数の制限の要件を全て満たし、さらに、異なるパケット種別間の連携処理を可能とする。【選択図】図１
2015061155.tif 000002
【特許請求の範囲】
【請求項１】
通信装置であって、
記憶部と処理部を有し、パケットを転送する選択装置から前記パケットを受信し、
前記記憶部は、
前記選択装置が記憶している、前記パケットを転送する際に用いる前記パケットの転送先の通信装置に対応した転送先識別子と転送先の通信装置を対応付けた第一の情報、を記憶し、
前記処理部は、
前記選択装置が、前記第一の情報と第一のパケットの転送先識別子とを用いて転送する前記第一のパケットの送信端末と同じ端末、または前記第一のパケットのセッションと同じセッションに属する第二のパケットを転送する際に、前記第二のパケットに前記転送先識別子が割り当てられていない場合、
前記第一のパケットと、前記第二のパケットの転送先が同じ通信装置となるように、前記記憶部に記憶した前記第一の情報を用いて前記第二のパケットの転送先識別子を割当てること、
を特徴とする通信装置。
【請求項２】
請求項１に記載の通信装置であって、
前記処理部は、
前記第二のパケットに前記転送先識別子が割り当てられている場合、
前記選択装置が記憶している前記第一の情報と前記第二のパケットの転送先識別子とを用いて前記選択装置が選択した前記第二のパケットの転送先の通信装置を、前記第一の情報を用いて特定すること、
を特徴とする通信装置。
【請求項３】
請求項１に記載された通信装置において、
前記記憶部は、
前記第一の情報のうち転送先の通信装置が自通信装置となっているエントリが抽出された情報を第二の情報として記憶し、
前記処理部は、
転送された前記第１のパケットが前記第二のパケットの転送先識別子の割り当て要求を示すパケットである場合、前記第二の情報を参照して、前記割り当てた前記第二のパケットの転送先識別子を含む、前記第二のパケットの転送先識別子の割り当て結果通知を示す第三のパケットを作成し、前記選択装置へ該第三のパケットを送信する
ことを特徴とする通信装置。
【請求項４】
請求項２に記載された通信装置において、
前記記憶部は、
前記第一の情報のうち転送先の通信装置が自通信装置であるエントリが削除された情報を前記第三の情報として記憶し、前記処理部は、
ある端末またはセッションに対するパケット種別毎の端末またはセッションの識別子を記憶し、複数のパケット種別で連携する処理のためにパケット種別間の端末またはセッションの識別子を紐づける第四の情報、
をさらに備え、
ある端末またはセッションについて、パケット種別Ａと連携するパケット種別Ｃの処理のために必要な関連情報を保持する第二の通信装置との通信要求が発生または前記通信要求を受信した場合、
前記通信装置は、前記第四の情報を参照して、前記通信要求から得たまたは既に取得しているパケット種別Ａと、端末またはセッションの転送先識別子とに基づいて、対応するパケット種別Ｃの端末またはセッションの転送先識別子を求め、該パケット種別Ｃの端末またはセッションの識別子の処理のために必要な関連情報を保持しているか検索し、
前記検索した結果、前記関連情報を保持していなかった場合、前記第三の情報を参照し、前記パケット種別Ｃのパケットの転送先となる第二の通信装置を求め、前記第二の通信装置を宛先に含む、該端末またはセッションのパケット種別Ｃの情報を保持する前記第二の通信装置との通信要求を示すパケットを作成し、前記第二の通信装置へ該パケットを送信する
ことを特徴とする通信装置。
【請求項５】
請求項１または２に記載された通信装置において、
前記選択装置により、パケットが受信された場合、受信パケットのヘッダ解析の結果に基づいて前記通信装置宛てに該パケットを転送する必要があるか否かが判定され、
前記通信装置宛てにパケットを転送する必要がないと判定された場合、前記選択装置により、受信パケットの種別および設定内容に基づいて、パケットの適切な転送先が選択され、選択された転送先にパケットを転送して処理が終了され、
一方、前記通信装置宛てにパケットを転送する必要があると判定された場合、前記選択装置により、受信パケットのパケット種別の判定結果と、パケットに設定されたＭＳまたはセッションの識別子の値に基づいて、第一の情報が検索され、パケットの転送先となる前記通信装置が決定され、決定されたパケットの転送先となる前記通信装置宛てにパケットが送信され、
前記通信装置が、前記パケットを受信する
ことを特徴とする通信装置。
【請求項６】
請求項１に記載された通信装置において、
前記通信装置は、
パケット種別に対して、ＭＳまたはセッションの識別子と、ＭＳまたはセッションの識別子の値の割り当て済みフラグとが記憶される第五の情報
を備え、
前記通信装置は、受信パケットがＭＳまたはセッションの識別子の割り当て要求を示すパケットであると判定した場合、第五の情報のエントリの中で、他のＭＳまたはセッションに割り当て済みでない識別子の値を示すエントリを検索し、該エントリに対応する識別子の値を割り当て値として決定し、
前記通信装置は、決定した識別子の割り当て値を含む、識別子の割当通知を示すパケットを作成し、該パケットを送信する
ことを特徴とする通信装置。
【請求項７】
請求項２に記載された通信装置において、
前記通信装置は、前記通信装置間転送の要求が発生した場合、該要求に基づき、要求された前記通信装置間転送における転送先前記通信装置の決定に用いられるパケット種別Ｃと、該パケット種別Ｃにおいて転送先前記通信装置の決定に用いられるＭＳまたはセッションの識別子の情報を取得し、
前記通信装置は、取得した前記パケット種別Ｃと前記識別子とに基づいて自通信装置のメモリ部を検索し、要求された前記パケット種別Ｃと前記識別子の値に対応するＭＳまたはセッションの処理のために必要な関連情報を自通信装置で保持しているか否か判定し、
対応する前記関連情報を自通信装置のメモリ部で保持していた場合、前記通信装置は、前記通信装置間転送処理は不要と判定し、前記要求に基づいた処理を実施し、
一方、対応する前記関連情報を自通信装置のメモリ部で保持していなかった場合、前記通信装置は、取得した、前記パケット種別Ｃと前記識別子とに基づいて、第三の情報を検索し、パケットの転送先となる前記通信装置を決定する
ことを特徴とする通信装置。
【請求項８】
請求項２に記載された通信装置において、
前記通信装置は、ＭＳまたはセッションの識別子の値の新規割り当て、または既存割り当て値の更新、既存割り当て値の解放、その他の変更要求が発生した場合、前記変更要求の対象となるＭＳまたはセッションの識別子と、同じＭＳまたはセッションに対応するエントリを第四の情報から検索し、該エントリの中で識別子が割り当てられているパケット種別とその識別子を全て抽出する。
前記通信装置は、抽出した各パケット種別とその識別子に対して、前記変更要求の対象となるパケット種別と識別子の値に対応するＭＳまたはセッションの情報を自通信装置で保持していないか判定し、該検索の結果として対応する情報を自通信装置のメモリ部で保持していた場合には、該検索でヒットした情報と、前記要求内容に基づいた処理を実施し、
一方、該検索の結果として対応する情報を自通信装置のメモリ部で保持していなかった場合には、取得した、前記通信装置間転送における転送先前記通信装置の決定に用いられるパケット種別と、該パケット種別において転送先前記通信装置の決定に用いられるＭＳまたはセッションの識別子の値に基づいて、第三の情報を検索して、パケットの転送先となる前記通信装置を決定し、決定したパケットの転送先となる前記通信装置宛てのパケットを送信し、
前記通信装置は、前記変更要求に従い、第四の情報を更新する
ことを特徴とする通信装置。
【請求項９】
通信システムであって、
パケットを転送する選択装置から前記パケットを受信する通信装置を備え、
前記通信装置は、
記憶部と処理部を有し、
前記記憶部は、
前記選択装置が記憶している、前記パケットを転送する際に用いる前記パケットの転送先の通信装置に対応した転送先識別子と転送先の通信装置を対応付けた第一の情報、を記憶し、
前記処理部は、
前記選択装置が、前記第一の情報と第一のパケットの転送先識別子とを用いて転送する前記第一のパケットの送信端末と同じ端末、または前記第一のパケットのセッションと同じセッションに属する第二のパケットを転送する際に、前記第二のパケットに前記転送先識別子が割り当てられていない場合、
前記第一のパケットと、前記第二のパケットの転送先が同じ通信装置となるように、前記記憶部に記憶した前記第一の情報を用いて前記第二のパケットの転送先識別子を割当てること、
を特徴とする通信システム。
【請求項１０】
請求項９に記載の通信システムであって、
前記処理部は、
前記第二のパケットに前記転送先識別子が割り当てられている場合、
前記選択装置が記憶している前記第一の情報と前記第二のパケットの転送先識別子とを用いて前記選択装置が選択した前記第二のパケットの転送先の通信装置を、前記第一の情報を用いて特定すること、
を特徴とする通信システム。
【請求項１１】
請求項９に記載された通信システムにおいて、
第一の情報と同項目のデータを記憶した第一のＥＭ情報と、
第二の情報と同項目のデータを記憶した第二のＥＭ情報
を有し、各情報の内容を前記選択装置、および／または、前記ひとつまたは複数の前記通信装置に提供する保守管理装置（ＥＭ）
をさらに備え、
ＥＭは、第一のＥＭ情報のエントリの中で、ある通信装置＃１に対して、該前記通信装置＃１を転送先とするパケット種別とその識別子の組を抽出し、
ＥＭは、抽出した前記通信装置＃１を転送先とするパケット種別とその識別子の組の情報に基づいて、該前記通信装置＃１における自通信装置が選択されるＭＳまたはセッションの識別子を記憶する第二のＥＭ情報を作成する
ことを特徴とする通信システム。
【請求項１２】
請求項１０に記載された通信システムにおいて、
第一の情報と同項目のデータを記憶した第一のＥＭ情報と、
第三の情報と同項目のデータを記憶した第三のＥＭ情報
を有し、各情報の内容を前記選択装置、および／または、前記ひとつまたは複数の前記通信装置に提供する保守管理装置（ＥＭ）
をさらに備え、
ＥＭは、第一のＥＭ情報のエントリの中で、ある通信装置＃１に対して、該前記通信装置＃１を転送先とするエントリを抽出し、
ＥＭは、第一のＥＭ情報の全エントリのうち、抽出した前記通信装置を転送先とするエントリのみを削除した情報を作成し、該前記通信装置＃１における第三のＥＭ情報とする
ことを特徴とする通信システム。
【請求項１３】
請求項９に記載された通信システムにおいて、
第一の情報と同項目のデータを記憶した第一のＥＭ情報と、
第二の情報と同項目のデータを記憶した第二のＥＭ情報と
を有し、前記情報の内容を前記選択装置、および／または、前記ひとつまたは複数の前記通信装置に提供する保守管理装置（ＥＭ）
をさらに備え、
ＥＭは、第一のＥＭ情報の設定更新の要求が発生した場合、第一のＥＭ情報の更新後の設定内容に基づいて、前記通信装置毎に第二のＥＭ情報を作成した場合、
ＥＭは、第一のＥＭ情報の設定更新内容を含む設定更新通知パケットを作成し、前記選択装置へ送信し、
前記選択装置は、受信した第一のＥＭ情報の設定更新内容に基づいて、第一の情報の設定を更新し、
ＥＭは、第二のＥＭ情報の更新対象とした前記通信装置毎に、第二のＥＭ情報の設定更新内容を含む設定更新通知パケットを作成し、該パケットの対象となる前記通信装置へ送信し、
前記通信装置は、受信したパケットに含まれる第二のＥＭ情報の設定更新内容に基づいて、第二の情報の設定を更新する
ことを特徴とする通信システム。
【請求項１４】
請求項１０に記載された通信システムにおいて、
第一の情報と同項目のデータを記憶した第一のＥＭ情報と、
第三の情報と同項目のデータを記憶した第三のＥＭ情報と、
を有し、前記情報の内容を前記選択装置、および／または、前記ひとつまたは複数の前記通信装置に提供する保守管理装置（ＥＭ）
をさらに備え、
ＥＭは、第一のＥＭ情報の設定更新の要求が発生した場合、第一のＥＭ情報の更新後の設定内容に基づいて、前記通信装置毎に第三のＥＭ情報を作成した場合、
ＥＭは、第一のＥＭ情報の設定更新内容を含む設定更新通知パケットを作成し、前記選択装置へ送信し、
前記選択装置は、受信した第一のＥＭ情報の設定更新内容に基づいて、第一の情報の設定を更新し、
ＥＭは、第三のＥＭ情報の更新対象とした前記通信装置毎に、第三のＥＭ情報の設定更新内容を含む設定更新通知パケットを作成し、該パケットの対象となる前記通信装置へ送信し、
前記通信装置は、受信した第三のＥＭ情報の設定更新内容に基づいて、第三の情報の設定を更新する
ことを特徴とする通信システム。
【請求項１５】
通信装置における通信制御方法であって、
前記通信装置は、
記憶部と処理部を有し、パケットを転送する選択装置から前記パケットを受信し、
前記記憶部は、
前記選択装置が記憶している、前記パケットを転送する際に用いる前記パケットの転送先の通信装置に対応した転送先識別子と転送先の通信装置を対応付けた第一の情報、を記憶し、
前記処理部は、
前記選択装置が、前記第一の情報と第一のパケットの転送先識別子とを用いて転送する前記第一のパケットの送信端末と同じ端末、または前記第一のパケットのセッションと同じセッションに属する第二のパケットを転送する際に、前記第二のパケットに前記転送先識別子が割り当てられていない場合、
前記第一のパケットと、前記第二のパケットの転送先が同じ通信装置となるように、前記記憶部に記憶した前記第一の情報を用いて前記第二のパケットの転送先識別子を割当てること、
を特徴とする通信制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信装置、通信システムおよび通信制御方法に係り、特に、端末とサービス提供サーバとの間で送受信されるパケットに対して処理装置を選択する技術に関する。
【背景技術】
【０００２】
移動体無線通信のさらなる高速化、高品質化を実現する方式として、近年、第３．９世代移動通信システムおよび第４世代移動通信システムの研究、標準化活動が進められている。第３．９世代移動通信システムの一つであるＬＴＥ（Ｌｏｎｇ  Ｔｅｒｍ  Ｅｖｏｌｕｔｉｏｎ）、および第４世代移動通信システムの一つであるＬＴＥ  Ａｄｖａｎｃｅｄの標準規定を策定している標準化団体３ＧＰＰ（３ｒｄ  Ｇｅｎｅｒａｔｉｏｎ  Ｐａｒｔｎｅｒｓｈｉｐ  Ｐｒｏｊｅｃｔ）は、上述の規格の仕様としてＴＳ（Ｔｅｃｈｎｉｃａｌ  Ｓｐｅｃｉｆｉｃａｔｉｏｎ）を策定している。
【０００３】
３ＧＰＰのＴＳにおけるゲートウェイの一つであるＰ−ＧＷ（ＰＤＮ  Ｇａｔｅｗａｙ、ＰＤＮはＰａｃｋｅｔ  Ｄａｔａ  Ｎｅｔｗｏｒｋの略）は、複数の装置との間にインタフェースを有することが可能で、Ｃ−Ｐｌａｎｅ（Ｃｏｎｔｒｏｌ  Ｐｌａｎｅ）の制御パケットの受信および送信、Ｕ−Ｐｌａｎｅ（Ｕｓｅｒ  Ｐｌａｎｅ）のデータパケットの受信および送信を行う。Ｕ−Ｐｌａｎｅのデータパケットは、ＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）ネットワークに属するサービス提供サーバから端末宛てに送信されたダウンリンク（ＤＬ）方向のパケット（以下、ＤＬパケット）、および端末からサービス提供サーバ宛てに送信されたアップリンク（ＵＬ）方向のパケット（以下、ＵＬパケット）に分類することができる。３ＧＰＰのＴＳでは、Ｐ−ＧＷが、受信したＤＬパケット、ＵＬパケットのそれぞれに対して、各パケットが属する端末やセッションやベアラ等を識別し、その結果に基づいて課金や統計のための送信バイト数、送信パケット数等をカウントしたり、送信パケットに適切なシーケンス番号等を付与したりするための仕様が規定されている。
【０００４】
非特許文献１では、Ｐ−ＧＷの動作に関する要件、および、新規呼の接続や呼の切断に関する仕様が規定されている。
また、特許文献１では、Ｕ−Ｐｌａｎｅ受信パケットの解析およびＵ−Ｐｌａｎｅ送信パケットの生成を行うＡＧＷ（Ａｃｃｅｓｓ  Ｇａｔｅｗａｙ）が複数存在する場合に、受信したＵ−Ｐｌａｎｅパケットの転送先として適切なＡＧＷを選択する技術が開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００９−２５３６７８号公報
【非特許文献】
【０００６】
【非特許文献１】３ＧＰＰ  ＴＳ２３．４０１  Ｖ１１．１．０、（２０１２−３）、Ｔｅｃｈｎｉｃａｌ  Ｓｐｅｃｉｆｉｃａｔｉｏｎ
【発明の概要】
【発明が解決しようとする課題】
【０００７】
近年、通信ネットワークでは、急激なトラフィックの増加等に伴い、上述した３ＧＰＰのＴＳおよび特許文献１と同様のＰ−ＧＷなどの通信装置の輻輳等による通信性能の低下や通信障害が発生する場合が想定され、通信装置のパケット転送スループットの高速化に対する要求が高まっている。このため、従来のＵ−Ｐｌａｎｅ／Ｃ−Ｐｌａｎｅの各処理性能が固定化された通信装置では、処理性能のマージンを考慮した設備投入によるオペレータの運用コストの増大が懸念される。
【０００８】
また、通信ネットワークに接続する端末の種類や提供されるサービスの種類は年々多様化しており、例えば、端末数は多いが個々のデータトラフィックは少ないＭ２Ｍ（Ｍａｃｈｉｎｅ−Ｔｏ−Ｍａｃｈｉｎｅ）端末と、動画視聴等による大量のデータトラフィック処理を要するスマートフォンでは、通信装置に要求されるＵ−Ｐｌａｎｅ／Ｃ−Ｐｌａｎｅの各処理性能の要件も大きく異なる。
【０００９】
したがって、通信装置では、トラフィック量や端末数等のネットワーク環境の変化に応じて柔軟にＵ−Ｐｌａｎｅ／Ｃ−Ｐｌａｎｅの各処理性能を変化させられる、性能調整の自由度が要求される。
【００１０】
通信装置のＵ−Ｐｌａｎｅ／Ｃ−Ｐｌａｎｅの処理性能の調整自由度を向上させる方法として、通信装置の受信パケットの解析および送信パケットの生成を行うハードウェアカードであるＧＷ（Ｇａｔｅｗａｙ）を１枚以上設置し、ハードウェアカードをモバイルオペレータが要求する性能に見合った枚数だけ挿入することで、最小限の運用コストで性能要件を満たすことが考えられる。なお、ＧＷは、Ｃ−Ｐｌａｎｅ受信パケットの解析およびＣ−Ｐｌａｎｅ送信パケットの生成を行うハードウェアであるＣＧＷ（Ｃ−ｐｌａｎｅ  Ｇａｔｅｗａｙ）と、Ｕ−Ｐｌａｎｅ受信パケットの解析およびＵ−Ｐｌａｎｅ送信パケットの生成を行うハードウェアであるＵＧＷ（Ｕ−ｐｌａｎｅ  Ｇａｔｅｗａｙ）をそれぞれ個別のハードウェアカードで実現し、それぞれ複数設置する構成にしてもよい。この構成では、通信装置のパケット送受信部であるＩＦ（Ｉｎｔｅｒｆａｃｅ）において、通信装置が受信したＵ−Ｐｌａｎｅ／Ｃ−Ｐｌａｎｅのパケットを処理するＧＷを、複数のＧＷの中からパケット毎に選択し、適切なＧＷへパケットを転送する機能が要求される。上述した非特許文献１に記載されているＰ−ＧＷなどの通信装置は、あくまで論理的なエンティティであり、物理的には複数のハードウェアの集合体として構成されていてもよく、上記の複数ＧＷとＩＦからなる構成も許容される。
【００１１】
通信装置が複数のＧＷとＩＦから構成されている場合、ＩＦが、複数のＧＷの中から受信パケットの転送先となるＧＷを選択する転送先ＧＷ選択機能として、以下の３つの要件を満たすことが要求される。
第一の要件として、各ＧＷにおける処理負荷の均一性を考慮する必要がある。
通信装置を構成するＧＷが２枚以上の場合、ＩＦのＧＷ選択方法に依っては、選択結果が一部のＧＷに偏ってしまう可能性がある。このとき、選択結果が集中した一部のＧＷにおいて輻輳による遅延が生じ、通信装置全体としてＧＷの枚数に応じた性能が達成できないことが懸念される。したがって、ＩＦでは、各ＧＷの処理負荷が均等に分散するようにＧＷを選択することが要求される。
【００１２】
第二の要件として、同一ユーザまたは同一セッションに属するパケットに対する同一ＧＷの選択を考慮する必要がある。
通信装置を構成するＧＷが２枚以上の場合、ＩＦのＧＷ選択方法に依っては、同じユーザまたは同じセッションに属するパケットに対して異なるＧＷが選択されてしまう可能性がある。このとき、例えば、セッション単位のシーケンス番号の付与や、帯域制限等のＱｏＳ制御、課金カウント等の処理を複数のＧＷ間で連携して実施する必要があり、遅延等の転送処理性能の低下が懸念される。したがって、ＩＦは、同じユーザまたは同じセッションに属する受信パケットに対しては、原則として同じＧＷを選択することが要求される。特に、ＧＷの増減設によるＭＡＣアドレスやＩＰアドレス等のアドレスの再設定等によるルーティングテーブルの再設定等の外部装置への影響をなくすために、各ＧＷが外部装置に見せるアドレスを共通化している場合、ＩＦは受信パケットの宛先アドレス情報だけでは転送先のＧＷを決定することができないため、受信パケットに設定されたユーザ識別子またはセッション識別子を意識して、転送先ＧＷを選択する必要がある。
【００１３】
第三の要件として、ＩＦが保持できる転送テーブルのエントリ数の制限を考慮する必要がある。
非特許文献１におけるＰ−ＧＷのように、高速かつ大容量のパケット転送を実施する通信装置のＩＦでは、ソフトウェアによる転送では要求性能を満たすことが困難であり、高速なパケット転送処理に最適化されたハードウェアチップを用いたハードウェア転送が望ましい。しかし、前記のハードウェアチップを用いたハードウェア転送では、一般に、ＩＦにおけるパケット転送条件を示す転送テーブルのエントリ数が増加するにつれて、検索に要する時間が非常に長くなる傾向がある。したがって、ＩＦに要求される転送性能を満たすためには、ＩＦが保持する転送テーブルのエントリ数を最低限に抑えることが要求される。仮に、パケットに設定されるユーザ識別子またはセッション識別子について、それぞれ対応する転送先ＧＷを示す転送テーブルをＩＦで保持した場合、転送テーブルにユーザ数またはセッション数と同じ数のエントリ数が必要となるが、一般的な通信オペレータを考慮した場合、通信装置１台当たりに収容すべきユーザ数またはセッション数は、ＩＦに要求される転送性能を満たすことができる転送テーブルのエントリ数を大きく上回るため、ＩＦの転送テーブルのエントリ数を低減できる方法を考案しない限り、ＩＦの転送性能要求を満たすことができないことが想定される。
【００１４】
上記の第一〜第三の要求を同時に満たすための方式として、ＩＦでは、ユーザ識別子またはセッション識別子を入力値としたハッシュ計算に基づいて転送先ＧＷを選択するハッシュベースＧＷ選択方式が考えられる。
ハッシュベースＧＷ選択方式では、ＩＦが、外部装置から受信したパケットのユーザ識別子やセッション識別子の種類を特定し、パケットに設定されているユーザ識別子（例：非特許文献１に記載のＩＭＳＩ（Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｍｏｂｉｌｅ  Ｓｕｂｓｃｒｉｂｅｒ  Ｉｄｅｎｔｉｔｙ））またはセッション識別子（例：非特許文献１に記載のＧＴＰ（Ｇｅｎｅｒａｌ  Ｐａｃｋｅｔ  Ｒａｄｉｏ  Ｓｗｉｔｃｈｉｎｇ  Ｔｕｎｎｅｌｉｎｇ  Ｐｒｏｔｏｃｏｌ）におけるＴＥＩＤ（Ｔｕｎｎｅｌ  Ｅｎｄｐｏｉｎｔ  Ｉｄｅｎｔｉｆｉｅｒ））を入力値としたハッシュ計算をパケット毎に行い、ＩＦが保持しているハッシュ計算の出力値毎に対応するＧＷを示すテーブルを基に転送先ＧＷを選択する。
【００１５】
このハッシュベースＧＷ選択方式では、ハッシュ計算の出力値によって各ＧＷが選択される確率を、各ＧＷの処理負荷が均等になるようにハッシュ計算の出力値と対応するＧＷの紐づけテーブルを設定することで、ＧＷの処理負荷の偏りを低減することができるため、前記の第一の要求が満たされる。
また、ハッシュベースＧＷ選択方式では、パケットに設定されるユーザ識別子またはセッション識別子の種類が同じパケットに関しては、ハッシュ計算では同じ入力値に対して必ず同じ出力値が返されるため、同じユーザまたは同じセッションに属するパケットに対して同じＧＷを選択することができる。これにより、前記の第二の要求が満たされる。
【００１６】
さらに、ハッシュベースＧＷ選択方式では、ハッシュの出力結果毎に転送先ＧＷを規定するだけでＩＦがパケット毎の転送先ＧＷを決定できるため、ＩＦで保持すべき転送テーブルのエントリ数は、ハッシュ計算の出力結果のパターン数だけ保持すればよい。したがって、例えばハッシュ計算として「ＣＲＣ１６＋Ｍｏｄ２５６」を採用した場合、ＩＦの転送テーブルのエントリ数はパケット種別毎に２５６エントリのみまで削減することが可能となり、前記の第三の要求が満たされる。
しかしながら、ハッシュベースＧＷ選択方式を用いてＩＦにおけるＧＷ選択を実施する場合、以下のような課題がある。
【００１７】
パケット通信に用いられるプロトコルやメッセージの種別によって、パケットに設定されるユーザ識別子またはセッション識別子の種類が異なるケースがある。ここで、パケットに設定されるユーザ識別子またはセッション識別子の種類の違いを、パケット種別と呼ぶことにする。特に、モバイル通信では、同じユーザやセッションに対して多くのパケット種別が存在する。
【００１８】
例えば、非特許文献１に記載されている３ＧＰＰ規格におけるＰ−ＧＷでは、サーバ宛てのＵＬ（Ｕｐ  Ｌｉｎｋ）方向のＵ−Ｐｌａｎｅパケットには、転送プロトコル毎に「ＧＲＥ（Ｇｅｎｅｒｉｃ  Ｒｏｕｔｉｎｇ  Ｅｎｃａｐｓｕｌａｔｉｏｎ）  Ｋｅｙ」や「ＴＥＩＤ−Ｕ（ＴＥＩＤ  ｆｏｒ  Ｕ−Ｐｌａｎｅ）」等のセッション識別子が設定されるが、端末宛てのＤＬ（Ｄｏｗｎ  Ｌｉｎｋ）方向のＵ−Ｐｌａｎｅパケットにはユーザ識別子として「端末のＩＰアドレス」しか設定されない。また、Ｃ−Ｐｌａｎｅパケットについては、ＱｏＳ制御等の情報を管理するＰＣＲＦ（Ｐｏｌｉｃｙ  ａｎｄ  Ｃｈａｒｇｉｎｇ  Ｒｕｌｅｓ  Ｆｕｎｃｔｉｏｎ）からＤｉａｍｅｔｅｒプロトコルで受信するパケットには「Ｓｅｓｓｉｏｎ−Ｉｄ」、課金や認証の情報を管理するＡＡＡ（Ａｕｔｈｅｎｔｉｃａｔｉｏｎ、  Ａｕｔｈｏｒｉｚａｔｉｏｎ  ａｎｄ  Ａｃｃｏｕｎｔｉｎｇ）からＲＡＤＩＵＳ（Ｒｅｍｏｔｅ  Ａｕｔｈｅｎｔｉｃａｔｉｏｎ  Ｄｉａｌ  Ｉｎ  Ｕｓｅｒ  Ｓｅｒｖｉｃｅ）プロトコルで受信するパケットには「Ａｃｃｔ−Ｓｅｓｓｉｏｎ−ＩＤ」等、受信パケットに設定されるユーザ識別子またはセッション識別子の種類がプロトコル毎に異なるケースがある。また、同じプロトコルで受信したパケットでも、メッセージ種別毎に異なる識別子が設定されるケースもある。例えば、Ｓ−ＧＷ（Ｓｅｒｖｉｎｇ  Ｇａｔｅｗａｙ）からＧＴＰｖ２−Ｃプロトコルで受信するＣ−Ｐｌａｎｅパケットは、原則としてセッション識別子「ＴＥＩＤ−Ｃ（ＴＥＩＤ  ｆｏｒ  Ｃ−Ｐｌａｎｅ）」が設定されるが、ＧＴＰｖ２−Ｃセッションの新規接続を要求するＣ−Ｐｌａｎｅパケット「Ｃｒｅａｔｅ  Ｓｅｓｓｉｏｎ  Ｒｅｑｕｅｓｔ」や、特定セッションに紐づかないＧＴＰｖ２−Ｃ死活監視パケット「Ｅｃｈｏ  Ｒｅｑｕｅｓｔ」等の一部のパケットには「ＴＥＩＤ−Ｃ」が設定されないため、  例えば、「Ｃｒｅａｔｅ  Ｓｅｓｓｉｏｎ  Ｒｅｑｕｅｓｔ」ならば「ＩＭＳＩ」、「Ｅｃｈｏ  Ｒｅｑｕｅｓｔ」ならば「対向Ｓ−ＧＷのＩＰアドレス」等、メッセージ種別によって異なる識別子を用いる必要がある。
【００１９】
一方、通信装置のＧＷでは、パケット種別毎に紐づく情報を連携させて処理しなければならないケースがある。例えば、課金機能では、ＵＬ方向のＵ−ＰｌａｎｅパケットとＤＬ方向のＵ−Ｐｌａｎｅパケットの送信バイト数等の課金カウント情報をそれぞれＧＷで保持し、ＡＡＡからＲＡＤＩＵＳプロトコルのＣ−Ｐｌａｎｅパケットで指定された送信バイト数のＵＬ方向／ＤＬ方向それぞれの閾値等のＧＷが保持する課金設定情報に基づいて、ＵＬ方向またはＤＬ方向のＵ−Ｐｌａｎｅパケットのカウント結果が閾値に達した契機で、ＡＡＡから指定された課金設定情報に基づいて、両カウント結果等の課金情報を含むＲＡＤＩＵＳプロトコルのＣ−Ｐｌａｎｅパケットを作成し、指定されたＡＡＡへ送信することが要求される。
【００２０】
ここで、前記のハッシュベースＧＷ選択方式では、たとえ同じユーザまたは同じセッションに属するパケットであっても、パケット種別毎に入力値となるユーザまたはセッションの識別子の値が異なるため、ハッシュ計算の出力値は必ずしも一致しない。したがって、パケット種別毎にそれぞれ異なるＧＷへパケット転送されるおそれがあり、かつ、各ＧＷは別のパケット種別のパケットがそれぞれどのＧＷに転送されるかを知らないため、前記のハッシュベースＧＷ選択方式では、異なるパケット種別間の連携処理を実施できない点が課題となる。
【００２１】
本発明の目的は、以上の課題に鑑み、無線または有線の通信システムにおいて、異なるパケット種別間の連携処理を実現可能とする通信装置、通信システムおよび通信制御方法を提供することにある。
【課題を解決するための手段】
【００２２】
本発明の第１の解決手段によると、
通信装置であって、
記憶部と処理部を有し、パケットを転送する選択装置から前記パケットを受信し、
前記記憶部は、
前記選択装置が記憶している、前記パケットを転送する際に用いる前記パケットの転送先の通信装置に対応した転送先識別子と転送先の通信装置を対応付けた第一の情報、を記憶し、
前記処理部は、
前記選択装置が、前記第一の情報と第一のパケットの転送先識別子とを用いて転送する前記第一のパケットの送信端末と同じ端末、または前記第一のパケットのセッションと同じセッションに属する第二のパケットを転送する際に、前記第二のパケットに前記転送先識別子が割り当てられていない場合、
前記第一のパケットと、前記第二のパケットの転送先が同じ通信装置となるように、前記記憶部に記憶した前記第一の情報を用いて前記第二のパケットの転送先識別子を割当てること、
を特徴とする通信装置が提供される。
【００２３】
本発明の第２の解決手段によると、
通信システムであって、
パケットを転送する選択装置から前記パケットを受信する通信装置を備え、
前記通信装置は、
記憶部と処理部を有し、
前記記憶部は、
前記選択装置が記憶している、前記パケットを転送する際に用いる前記パケットの転送先の通信装置に対応した転送先識別子と転送先の通信装置を対応付けた第一の情報、を記憶し、
前記処理部は、
前記選択装置が、前記第一の情報と第一のパケットの転送先識別子とを用いて転送する前記第一のパケットの送信端末と同じ端末、または前記第一のパケットのセッションと同じセッションに属する第二のパケットを転送する際に、前記第二のパケットに前記転送先識別子が割り当てられていない場合、
前記第一のパケットと、前記第二のパケットの転送先が同じ通信装置となるように、前記記憶部に記憶した前記第一の情報を用いて前記第二のパケットの転送先識別子を割当てること、
を特徴とする通信システムが提供される。
【００２４】
本発明の第３の解決手段によると、
通信装置における通信制御方法であって、
前記通信装置は、
記憶部と処理部を有し、パケットを転送する選択装置から前記パケットを受信し、
前記記憶部は、
前記選択装置が記憶している、前記パケットを転送する際に用いる前記パケットの転送先の通信装置に対応した転送先識別子と転送先の通信装置を対応付けた第一の情報、を記憶し、
前記処理部は、
前記選択装置が、前記第一の情報と第一のパケットの転送先識別子とを用いて転送する前記第一のパケットの送信端末と同じ端末、または前記第一のパケットのセッションと同じセッションに属する第二のパケットを転送する際に、前記第二のパケットに前記転送先識別子が割り当てられていない場合、
前記第一のパケットと、前記第二のパケットの転送先が同じ通信装置となるように、前記記憶部に記憶した前記第一の情報を用いて前記第二のパケットの転送先識別子を割当てること、
を特徴とする通信制御方法が提供される。
【発明の効果】
【００２５】
本発明によると、無線または有線の通信システムにおいて、異なるパケット種別間の連携処理を実現可能とする通信装置、通信システムおよび通信制御方法を提供することができる。
【図面の簡単な説明】
【００２６】
【図１】本発明の実施例に係る、通信システムの第一の機能の機能構成を説明するための概念図である。
【図２】本発明の実施例に係る、通信システムの第二の機能の機能構成を説明するための概念図である。
【図３】第１の実施例に係る、通信システムの一構成例を示すブロック図である。
【図４】第１の実施例に係る、選択装置（ＩＦ）の一例を示す機能ブロック図である。
【図５】第１の実施例に係る、ＩＦのメモリ部のブロック図である。
【図６】第１の実施例に係る、パケット処理装置（ＧＷ）の一例を示す機能ブロック図である。
【図７】第１の実施例に係る、ＧＷのメモリ部のブロック図である。
【図８】第１の実施例に係る、保守管理装置（ＥＭ）の一例を示す機能ブロック図である。
【図９】第１の実施例に係る、ＥＭのメモリ部のブロック図である。
【図１０】第１の実施例に係る、ＩＦが受信したパケットの転送先となるＧＷを決定するための情報を示すテーブルの一例を示す図である。
【図１１】第１の実施例に係る、ＩＦが受信したパケットの転送先となる各ＧＷのアドレスを解決するための情報を示すテーブルの一例を示す図である。
【図１２】第１の実施例に係る、ＭＳまたはセッションの識別子の各値が、既に他のＭＳまたはセッションに割り当て済みか否かの情報を示すテーブルの一例を示す図である。
【図１３】第１の実施例に係る、あるＧＷにおいて、ＩＦが受信したパケットの転送先として自ＧＷが選択されるＭＳまたはセッションの識別子の値の情報を示すテーブルの一例を示す図である。
【図１４】第１の実施例に係る、あるＧＷにおいて、ＩＦが受信したパケットの転送先として自ＧＷが選択されるＭＳまたはセッションの識別子の値の情報を示すテーブルの一例を示す図である。
【図１５】第１の実施例に係る、ＭＳまたはセッションの識別子の各値が、既に他のＭＳまたはセッションに割り当て済みか否かの情報を示すテーブルの一例を示す図である。
【図１６】第１の実施例に係る、あるＧＷにおいて、ＩＦが受信したパケットの転送先として自ＧＷが選択されるＭＳまたはセッションの識別子の値の情報を示すテーブルの一例を示す図である。
【図１７】第１の実施例に係る、ＭＳまたはセッションの識別子の各値が、既に他のＭＳまたはセッションに割り当て済みか否かの情報を示すテーブルの一例を示す図である。
【図１８】第１の実施例に係る、各ＭＳまたは各セッションにおける、パケット種別毎の識別子の値の情報を示すテーブルの一例を示す図である。
【図１９】第１の実施例に係る、ＧＷ間通信パケットの転送先となるＧＷを決定するための情報を示すテーブルの一例を示す図である。
【図２０】第１の実施例に係る、ＧＷ間通信パケットの転送先となる各ＧＷのアドレスを解決するための情報を示すテーブルの一例を示す図である。
【図２１】第１の実施例に係る、各ＭＳまたは各セッションにおける、パケット種別毎の識別子の値の情報を示すテーブルの一例を示す図である。
【図２２】第１の実施例に係る、各ＧＷの処理スループットの情報を示すテーブルの一例を示す図である。
【図２３】第１の実施例に係る、各ＧＷが現在稼働中であるか否かの情報を示すテーブルの一例を示す図である。
【図２４】第１の実施例に係る、ＩＦにおける受信パケットの転送先ＧＷの選択処理の一例を示す図である。
【図２５】第１の実施例に係る、ＧＷにおけるＭＳまたはセッションの識別子の割り当て処理の一例を示す図である。
【図２６】第１の実施例に係る、ＧＷにおける自ＧＷが選択されるＭＳまたはセッションの識別子の値テーブル２４２（図１３）に基づくＭＳまたはセッションの識別子の割り当て済みフラグテーブル２４１（図１２）の作成処理の一例を示す図である。
【図２７】第１の実施例に係る、ＧＷにおけるＧＷ間転送の転送先ＧＷの決定処理の一例を示す図である。
【図２８】第１の実施例に係る、ＧＷにおけるテーブル２４３（図１８）の更新要求パケットの送信処理の一例を示す図である。
【図２９】第１の実施例に係る、ＧＷにおけるテーブル２４３（図１８）の更新要求パケットの受信処理の一例を示す図である。
【図３０】第１の実施例に係る、ＥＭにおける自ＧＷが選択されるＭＳまたはセッションの識別子の値テーブル３３４（図１３）の作成の処理の一例を示す図である。
【図３１】第１の実施例に係る、ＥＭにおけるＧＷ間転送先決定テーブル３３５（図１９）の作成の処理の一例を示す図である。
【図３２】第１の実施例に係る、ＥＭにおけるＧＷ間転送先アドレステーブル３３７（図２０）の作成の処理の一例を示す図である。
【図３３】第１の実施例に係る、本システムにおけるＩＦとＧＷの転送テーブルの初期設定の処理の一例を示す図である。
【図３４】第１の実施例に係る、本システムにおけるＩＦとＧＷの転送テーブルの設定更新の処理の一例を示す図である。
【発明を実施するための形態】
【００２７】
Ａ．概要
以下、本発明を実施するための形態を図面に従い説明する。各種の実施例について説明するに先立ち、その概要について説明する。
本発明の代表的な一実施例を示せば次の通りである。すなわち、ネットワークに接続されたサーバ装置と、前記ネットワークに接続され、前記サーバ装置との間でパケットを通信する端末装置と、前記パケットの通信を中継するパケット処理装置・パケット処理部（ＧＷ）と、前記パケットを適切なパケット処理装置を選択して転送する選択装置・選択部（ＩＦ）とを備える通信システムおよびその制御方法であって、前記選択装置は、パケット処理装置が複数存在する場合において、パケット毎に適切なパケット処理装置を選択する際に、前記の第一〜第三の要件を満たし、かつ、異なるパケット種別間の連携処理を実現することを特徴とする。
【００２８】
本発明の第１の解決手段によると、
前記ＩＦと前記ＧＷが共通の転送先決定ロジックを有し、ＩＦとＧＷでそれぞれ異なる処理を実施することを特徴とする通信システム、通信制御方法、および通信制御装置が提供される。
本発明の第２の解決手段によると、
前記第１の解決手段の特徴を有し、かつ、あるユーザまたはセッションの識別子をＧＷで割り当てる際に、ＩＦの転送先決定ロジックにおいて、該ユーザまたは該セッションにおける別のパケット種別のパケットの転送先ＧＷとして選択されるＧＷと共通のＧＷが選択されるように、ＧＷがユーザまたはセッションの識別子を割り当てることを特徴とする通信システム、通信制御方法、および通信制御装置が提供される。
本発明の第３の解決手段によると、
前記第１の解決手段の特徴を有し、かつ、あるユーザまたはセッションについてパケット種別毎に転送先ＧＷが異なる際に、該ユーザまたは該セッションにおける別のパケット種別の識別子の値と、ＩＦと共通の転送先決定ロジックに基づいて、ＧＷが該ユーザまたは該セッションにおける別のパケット種別のパケットの転送先ＧＷを特定できることを特徴とする通信システム、通信制御方法、および通信制御装置が提供される。
【００２９】
図１は、本発明の実施例の通信システムの第一の機能の概要を説明するための機能構成図である。ここで、第一の機能は、例えば、あるパケット種別（以下の例では「パケット種別Ｂ」）におけるＭＳ５またはセッションの識別子の割り当てを、パケット処理装置（ＧａｔｅＷａｙ、以下、ＧＷ）２が実施するケースにおいて適用される。
【００３０】
図１において、選択装置（ＩｎｔｅｒＦａｃｅ、以下、ＩＦ）６は、サービス提供サーバ（Ｓｅｒｖｉｃｅ  Ｓｅｒｖｅｒ、以下、ＳＳ）１、またはＧＷ２、または保守管理装置（Ｅｑｕｉｐｍｅｎｔ  Ｍａｎａｇｅｒ、以下、ＥＭ）３、または基地局（Ｂａｓｅ  Ｓｔａｔｉｏｎ、以下、ＢＳ）４、または端末（Ｍｏｂｉｌｅ  Ｓｔａｔｉｏｎ、以下、ＭＳ）５、またはその他の外部通信装置（Ｅｘｔｅｒｎａｌ  Ｅｎｔｉｔｙ、以下、ＥＥ）７からＣ−ＰｌａｎｅまたはＵ−Ｐｌａｎｅのパケットを受信する。この場合、図１の（１）に示すように、ＩＦ６は、例えば、ＳＳ１またはＢＳ４またはＭＳ５またはＥＥ７からパケット種別Ａのパケットを受信した場合、例えば図２４で示す処理例（詳細は後述する）にしたがって、受信したパケットのパケット種別の判定結果と、パケットに設定されたＭＳ５またはセッションの識別子（この例では、「Ａ」および「１」）に従い、転送先のＧＷ２を選択し、図１の（２）に示すように選択したＧＷ２へパケットを転送する（この例では「ＧＷ２＃１」）。このとき、パケット種別Ａのパケットに対する転送先のＧＷ２を選択するために用いる情報は、例えばＥＭ３における転送先ＧＷ２のテーブル作成の処理例（詳細は後述する）にしたがってＥＭ３で作成され、例えば図３３または図３４で示す処理例（詳細は後述する）にしたがってＥＭ３から配布された情報を用いる。ここで、例えば、ＩＦ６からＧＷ２へ転送したパケット種別Ａのパケットが、あるＭＳ５またはあるセッションのパケット種別Ｂの識別子の割り当て要求を示すパケットだった場合を想定する。ここで、パケット種別ＡとＭＳ５またはセッションの識別子の値は、この要求に含まれているか、または、ＧＷ２により把握されている。ＧＷ２は、例えば図２５で示す処理例（詳細は後述する）にしたがって、例えば図３３または図３４で示す処理例（詳細は後述する）にしたがってＥＭ３から配布された、自ＧＷ２が選択されるパケット種別Ｂの識別子の値の情報と、例えば図２６で示す処理例（詳細は後述する）にしたがってＧＷ２で作成された、各識別子の値が割り当て済みか否かを示す情報に基づいて、パケット種別Ｂの識別子の割り当て値を決定し（この例では、「Ｂ」および「１」）、決定した値を含む、パケット種別Ｂの該ＭＳ５またはあるセッションの識別子の割り当て結果通知を示すパケットを作成し、図１の（３）に示すようにＩＦ６へ該パケットを送信する。このとき、自ＧＷ２が選択されるパケット種別Ｂの識別子の値の情報は、ＩＦ６でパケット種別Ｂのパケットに対する転送先のＧＷ２を選択するために用いられている情報に基づいて、例えば図３０で示す処理例（詳細は後述する）にしたがってＥＭ３で作成され、例えば図３３または図３４で示す処理例（詳細は後述する）にしたがって、ＩＦ６とＧＷ２の情報が常に共通な状態が保たれるように管理される。ＩＦ６は、例えば、ＧＷ２からパケットを受信すると、受信したパケットのパケット種別の判定をする。ＩＦ６は、例えば、ＧＷ２からパケット種別Ｂの識別子の割り当て値の情報を含むパケットを受信した場合、例えば図２４で示す処理例（詳細は後述する）にしたがって、パケット種別の判定結果と、パケットに設定��れたＭＳ５またはセッションの識別子に従い、転送先のＳＳ１またはＢＳ４またはＭＳ５またはＥＥ７を選択し、図１の（４）に示すように該パケットをＳＳ１またはＢＳ４またはＭＳ５またはＥＥ７へ転送する。ＳＳ１またはＢＳ４またはＭＳ５またはＥＥ７は、例えば、ＩＦ６からパケット種別Ｂの識別子の割り当て値の情報を含むパケットを受信した場合、パケット種別ＢのパケットをＧＷ２へ送信する際に、該パケットに含まれる識別子にＧＷ２から割り当てられた値を設定して、図１の（５）に示すようにＩＦ６へ該パケットを送信する。ＩＦ６は、例えば、ＳＳ１またはＢＳ４またはＭＳ５またはＥＥ７からパケット種別Ｂのパケットを受信した場合、例えば図２４で示す処理例（詳細は後述する）にしたがって、パケット種別の判定結果と、パケットに設定されたＭＳ５またはセッションの識別子（この例では、「Ｂ」および「１」）に従い、転送先のＧＷ２を選択し、図１の（６）に示すように選択したＧＷ２へパケットを転送する（この例では、ＧＷ２＃１）。
【００３１】
図２は、本発明の実施例の通信システムの第二の機能の概要を説明するための機能構成図である。ここで、第二の機能は、例えば、あるパケット種別（以下の例では「パケット種別Ａ」および「パケット種別Ｃ」）におけるＭＳ５またはセッションの識別子の割り当てを、ＧＷ２以外の装置（例えばＳＳ１、ＢＳ４、ＭＳ５、ＥＥ７など）が実施するために、前記の第一の機能を適用することができないため、同じＭＳ５またはセッションに属するパケットに対して、ＩＦ６が転送先として選択するＧＷ２がパケット種別毎に異なる場合が発生するケースにおいて適用される。
【００３２】
図２において、ＩＦ６は、ＳＳ１、またはＧＷ２、またはＥＭ３、またはＢＳ４、またはＭＳ５、またはＥＥ７からＣ−ＰｌａｎｅまたはＵ−Ｐｌａｎｅのパケットを受信する。この場合、ＩＦ６は、例えば、ＳＳ１またはＢＳ４またはＭＳ５またはＥＥ７からパケット種別Ａのパケットを受信した場合、例えば図２４で示す処理例（詳細は後述する）にしたがって、受信したパケットのパケット種別の判定結果と、パケットに設定されたＭＳ５またはセッションの識別子（この例では、「Ａ」および「１」）に従い、転送先のＧＷ２を選択し、図２の（１）に示すように選択したＧＷ２へパケットを転送する（この例では、「ＧＷ２＃１」）。このとき、転送先のＧＷ２を選択するために用いる情報は、例えばＥＭ３における転送先ＧＷ２のテーブル作成の処理例（詳細は後述する）にしたがってＥＭ３で作成され、例えば図３３または図３４で示す処理例（詳細は後述する）にしたがってＥＭ３から配布された情報を用いる。また、ＩＦ６は、例えば、ＳＳ１またはＢＳ４またはＭＳ５またはＥＥ７からパケット種別Ｃの識別子割り当て済みパケットを受信した場合、例えば図２４で示す処理例（詳細は後述する）にしたがって、受信したパケットのパケット種別の判定結果と、パケットに設定されたＭＳ５またはセッションの識別子（この例では、「Ｃ」および「１０１」）に従い、転送先のＧＷ２を選択し、図２の（２）に示すように選択したＧＷ２へパケットを転送する（この例では、ＧＷ２＃２）。このとき、転送先のＧＷ２を選択するために用いる情報は、例えばＥＭ３における転送先ＧＷ２のテーブル作成の処理例（詳細は後述する）にしたがってＥＭ３で作成され、例えば図３３または図３４で示す処理例（詳細は後述する）にしたがってＥＭ３から配布された情報を用いる。
【００３３】
このような条件下にて、ＧＷ２において、例えば、図２の（３）に示すように、あるＭＳ５またはセッションについて、パケット種別Ａの処理のために必要な関連情報とパケット種別Ｃの情報の連携要求等の、パケット種別Ｃの情報を保持するＧＷ２との通信要求が発生または受信した場合を想定する。ここで、パケット種別ＡとＭＳ５またはセッションの識別子の値は、この要求に含まれているか、または、ＧＷ２により把握されている。ＧＷ２は、例えば図２７で示す処理例（詳細は後述する）にしたがって、例えば図２８または図２９で示す処理例（詳細は後述する）にしたがって作成されたパケット種別間の識別子紐づけ情報に基づいて、該ＭＳ５またはセッションのパケット種別Ｃの処理のために必要な関連情報を検索する。検索の結果、該パケット種別Ｃの処理のために必要な関連情報を保持していなかった場合、ＧＷ２は、例えば図２７で示す処理例（詳細は後述する）にしたがって、パケット種別Ｃのパケットに対する転送先ＧＷ２を決定するための情報に基づいて、該ＭＳ５またはセッションのパケット種別Ｃのパケットの転送先となるＧＷ２を決定し、決定したＧＷ２を宛先に含む、該ＭＳ５またはセッションのパケット種別Ｃの処理のために必要な関連情報を保持するＧＷ２との通信要求を示すパケットを作成し、図２の（４）に示すようにＧＷ２へ該パケットを送信する（この例では、「Ｃ」および「１０１」から「ＧＷ２＃２」）。このとき、パケット種別Ｃのパケットに対する転送先ＧＷ２を決定するための情報は、ＩＦ６でパケット種別Ｃのパケットの転送先のＧＷ２を選択するために用いられている情報に基づいて、例えば図３１で示す処理例（詳細は後述する）にしたがってＥＭ３で作成され、例えば図３３または図３４で示す処理例（詳細は後述する）にしたがって、ＩＦ６とＧＷ２の情報が常に共通な状態が保たれるように管理される。ＧＷ２（この例では「ＧＷ２＃２」）は、例えば、ＧＷ２（この例では「ＧＷ２＃１」）からあるＭＳ５またはセッションのパケット種別Ｃの処理のために必要な関連情報を保持するＧＷ２との通信要求を示すパケットを受信した場合、例えば図２７で示す処理例（詳細は後述する）にしたがって、受信したパケットのパケット種別の判定結果に従い、該ＭＳ５またはセッションのパケット種別Ｃの処理のために必要な関連情報を検索し、通信要求に対応した処理を実行する。
【００３４】
この通信システムによって、ＧＷ２が複数存在する場合において、ＩＦ６がパケット毎に適切なＧＷ２を選択する際に、前記の第一〜第三の要件を満たし、かつ、異なるパケット種別間の連携処理を実施することができる。
Ｂ．実施の形態
【実施例１】
【００３５】
以下、本発明の第１の実施例を図面に従い、順次説明する。
１．システムおよび装置
＜システム構成＞
図３は、第１の実施例の通信システムの一構成例を示す図である。第１の実施例の通信システムは、ＢＳ４と無線通信または有線通信を行うＭＳ５と、ＢＳ４を介してＭＳ５と通信するＩＦ６と、ＩＦ６と通信するひとつまたは複数のＧＷ２と、ＩＦ６と通信するＳＳ１と、ひとつまたは複数のＧＷ２とＩＦ６と通信するＥＭ３と、ＩＦ６と通信するＥＥ７と、を含む。
【００３６】
ここで、ＥＭ３およびひとつまたは複数のＧＷ２およびＩＦ６は、または、ひとつまたは複数のＧＷ２およびＩＦ６は、同じ装置に実装されてもよいし、それぞれ異なる装置として実装されてもよい。また、ＢＳ４は省略可能であり、その場合、ＭＳ５はＢＳ４を介さずにＩＦ６と通信し、ＩＦ６はＢＳ４を介さずにＭＳ５と通信する。また、ひとつまたは複数のＧＷ２とＥＭ３は、ＩＦ６を介して通信してもよいし、ＩＦ６を介さずに通信してもよい。また、あるＧＷ２と別の異なるＧＷ２は、ＩＦ６を介して通信してもよいし、ＩＦ６を介さずに通信してもよい。
【００３７】
また、図３には本実施例の通信システムの構成要素を一つずつ示したが、実際にはこれらの構成要素の数は任意である。例えば、本実施例の通信システムは、一つのＢＳ４と通信する複数のＭＳ５を含んでもよく、さらに複数のＢＳ４を含んでもよく、さらに複数のＥＭ３を含んでもよく、さらに複数のＳＳ１を含んでもよく、さらに複数のＩＦ６を含んでもよく、さらに複数のＥＥ７を含んでもよい。また、ＧＷ２は、ひとつのみ備えるようにしてもよい。
【００３８】
＜装置構成：ＩＦ６＞
図４に、本実施例で使用するＩＦ６の一構成例の機能ブロックを示す。ＩＦ６は、例えば、ＳＳインタフェース部６１と、ＢＳインタフェース部６２と、ＥＭインタフェース部６３と、ＧＷインタフェース部６４と、ＥＥインタフェース部６５と、メモリ部６６と、処理部６７とを有する。
ＳＳインタフェース部６１は、ＳＳ１とのインタフェースである。ＳＳインタフェース部６１を用いて、ＩＦ６はＳＳ１との間でパケットの送受信を行う。
ＢＳインタフェース部６２は、ＢＳ４とのインタフェースである。ＢＳインタフェース部６２を用いて、ＩＦ６はＢＳ４との間でパケットの送受信を行う。ＢＳ４が省略される通信システムの場合、ＢＳインタフェース部６２を用いて、ＩＦ６はＢＳ４を介さずに直接ＭＳ５との間でパケットの送受信を行う。
ＥＭインタフェース部６３は、ＥＭ３とのインタフェースである。ＥＭインタフェース部６３を用いて、ＩＦ６はＥＭ３との間でパケットの送受信を行う。
ＧＷインタフェース部６４は、ＧＷ２とのインタフェースである。ＧＷインタフェース部６４を用いて、ＩＦ６はＧＷ２との間でパケットの送受信を行う。
ＥＥインタフェース部６５は、ＥＥ７とのインタフェースである。ＥＥインタフェース部６５を用いて、ＩＦ６はＥＥ７との間でパケットの送受信を行う。
【００３９】
なお、以上に説明したＩＦ６におけるインタフェース部６１−６５を総称して、ＩＦ６のインタフェース部、またはネットワークインタフェース部と呼ぶ場合がある。これらのインタフェース部は、内部バス等によってメモリ部６６および処理部６７に接続されている。
メモリ部６６は、送受信するパケット、接続するＳＳ１、ＧＷ２、ＥＭ３、ＢＳ４、およびＥＥ７のアドレスなどの情報を、必要に応じて記憶・管理する。
処理部６７は、例えば中央処理部（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ：ＣＰＵ）で構成される。処理部６７は、メモリ部６６に保持される情報を管理し、さらに、メモリ部６６に記憶される各種のプログラムを実行することによって、各種の処理、例えば、パケットの構築または解析などのパケット送受信処理、パケット種別の判定、パケット転送先ＧＷ２の選択などを行う。
【００４０】
図５に、本実施例のＩＦ６のメモリ部の一構成例のブロック図を示す。
メモリ部６６は、例えば図５に示すように、テーブル６６１〜テーブル６６２を保持する。
テーブル６６１は、転送先ＧＷ２テーブルであり、ＩＦ６が受信したパケットの転送先となるＧＷ２を決定するための情報を示す。テーブル６６１を用いることによって、パケット種別、ＭＳ５またはセッションの識別子の値、および転送先ＧＷ２の識別子などの情報を管理することができる。なお、テーブル６６１の詳細は後述する（図１０参照）。
【００４１】
テーブル６６２は、転送先ＧＷ２アドレステーブルであり、ＩＦ６が受信したパケットの転送先となる各ＧＷ２のアドレスを解決するための情報を示す。テーブル６６２を用いることによって、転送先ＧＷ２の識別子、転送先ＧＷ２のＭＡＣアドレス、および転送先ＧＷ２のＩＰアドレスなどの情報を管理することができる。なお、テーブル６６２の詳細は後述する（図１１参照）。
【００４２】
＜ＩＦ６のメモリ部６６が保持する各テーブルの詳細＞
図１０に、本実施例のＩＦ６のメモリ部６６が保持する情報の一例として、テーブル６６１を示す。テーブル６６１は、ＩＦ６が受信したパケットの転送先となるＧＷ２を決定するための情報を示す。
テーブル６６１には、例えば、パケット種別、ＭＳ５またはセッションの識別子の値（識別子の値）、および転送先ＧＷ２の識別子（転送先ＧＷ２）が記憶される。
パケット種別は、パケットに設定されるＭＳ５またはセッションを識別するパラメータの種類を示すパラメータである。パケット種別は、例えば、ＧＴＰｖ２−ＣやＧＴＰｖ１−ＣやＧＴＰｖ１−ＵやＰＭＩＰ（Ｐｒｏｘｙ  Ｍｏｂｉｌｅ  Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）ｖ６やＧＲＥなどのパケットの通信プロトコル毎に設定されてもよいし、ＧＴＰｖ２−Ｃの「Ｃｒｅａｔｅ  Ｓｅｓｓｉｏｎ  Ｒｅｑｕｅｓｔ」や「Ｅｃｈｏ  Ｒｅｑｕｅｓｔ」や「Ｍｏｄｉｆｙ  Ｂｅａｒｅｒ  Ｒｅｑｕｅｓｔ」などの同じプロトコル内のメッセージタイプ毎に設定されてもよい。
【００４３】
ＭＳ５またはセッションの識別子の値は、ＭＳ５またはセッションを識別するパラメータである。ＭＳ５またはセッションの識別子の値は、例えば、ＭＳ５に割り当てられているＩＰｖ４アドレスとＩＰｖ６  Ｐｒｅｆｉｘの一方または双方や、ＩＭＳＩのようなユーザ単位の識別子でもよいし、ＧＴＰにおけるＴＥＩＤのようなセッション単位の識別子でもよいし、ＥＰＳ  Ｂｅａｒｅｒ  ＩＤ（ＥＰＳはＥｖｏｌｖｅｄ  Ｐａｃｋｅｔ  Ｓｙｓｔｅｍの略）のようなベアラ単位の識別子でもよいし、それらの複数の組み合わせで示されていてもよい。
転送先ＧＷ２の識別子は、各ＧＷ２を一意に識別するためのパラメータである。転送先ＧＷ２の識別子は、例えば、数値で管理されていてもよいし、任意の文字列で管理されていてもよい。
【００４４】
なお、テーブル６６１に含まれる情報の初期値は、ＩＦ６に予め設定されていてもよいし、ＥＭ３またはＧＷ２またはＢＳ４またはＭＳ５またはＳＳ１またはＥＥ７からＩＦ６が受信するパケットや、オペレータの投入するコマンドによって設定されてもよい。また、これらの情報は、ＥＭ３またはＧＷ２またはＢＳ４またはＭＳ５またはＳＳ１またはＥＥ７からＩＦ６が受信するパケットや、オペレータの投入するコマンドによって更新されてもよい。
【００４５】
図１１に、本実施例のＩＦ６のメモリ部６６が保持する情報の一例として、テーブル６６２を示す。テーブル６６２は、ＩＦ６が受信したパケットの転送先ＧＷ２として選択されたＧＷ２のアドレスを解決するための情報を示す。
テーブル６６２には、例えば、転送先ＧＷ２の識別子（ＧＷ２  ＩＤ）、転送先ＧＷ２のＭＡＣアドレス（ＧＷ２  ＭＡＣ）、および転送先ＧＷ２のＩＰアドレス（ＧＷ２  ＩＰ）などが記憶される。
【００４６】
転送先ＧＷ２の識別子は、各ＧＷ２を一意に識別するためのパラメータであり、例えば、前記テーブル６６１の「転送先ＧＷ２の識別子」と同様の方法で管理されてもよい。
転送先ＧＷ２のＭＡＣアドレスは、各ＧＷ２を宛先として転送するためのＭＡＣアドレスを示すパラメータである。
転送先ＧＷ２のＩＰアドレスは、各ＧＷ２を宛先として転送するためのＭＡＣアドレスを示すパラメータである。転送先ＧＷ２のＩＰアドレスは、例えば、ＩＰｖ４アドレスで管理されていてもよいし、ＩＰｖ６  Ｐｒｅｆｉｘで管理されていてもよいし、ＩＰｖ６フルアドレスで管理されていてもよい。なお、ＩＰｖ４とＩＰｖ６のアドレスが混在する場合、ＩＰバージョンを示すパラメータを本テーブルに別途設定して区別してもよい。
【００４７】
なお、テーブル６６２に含まれる情報の初期値は、ＩＦ６に予め設定されていてもよいし、ＥＭ３またはＧＷ２またはＢＳ４またはＭＳ５またはＳＳ１またはＥＥ７からＩＦ６が受信するパケットや、オペレータの投入するコマンドによって設定されてもよい。また、これらの情報は、ＥＭ３またはＧＷ２またはＢＳ４またはＭＳ５またはＳＳ１またはＥＥ７からＩＦ６が受信するパケットや、オペレータの投入するコマンドによって更新されてもよい。
【００４８】
＜装置構成：ＧＷ２＞
図６に、本実施例で使用するＧＷ２の一構成例の機能ブロックを示す。ＧＷ２は、例えば、ＩＦインタフェース部２１と、ＧＷインタフェース部２２と、ＥＭインタフェース部２３と、メモリ部２４と、処理部２５とを有する。
ＩＦインタフェース部２１は、ＩＦ６とのインタフェースである。ＩＦインタフェース部２１を用いて、ＧＷ２はＩＦ６との間でパケットの送受信を行う。
ＧＷインタフェース部２２は、ＧＷ２とのインタフェースである。ＧＷインタフェース部２２を用いて、ＧＷ２は別の異なるＧＷ２との間でパケットの送受信を行う。なお、あるＧＷ２と別の異なるＧＷ２との通信が必ずＩＦ６を介して通信される通信システムの場合、本インタフェース部は省略可能である。
ＥＭインタフェース部２３は、ＥＭ３とのインタフェースである。ＥＭインタフェース部３３を用いて、ＧＷ２はＥＭ３との間でパケットの送受信を行う。なお、ＧＷ２とＥＭ３との通信が必ずＩＦ６を介して通信される通信システムの場合、本インタフェース部は省略可能である。
【００４９】
なお、以上に説明したＧＷ２におけるインタフェース部２１−２３を総称して、ＥＭ３のインタフェース部、またはネットワークインタフェース部と呼ぶ場合がある。これらのインタフェース部は、内部バス等によってメモリ部２４および処理部２５に接続されている。
メモリ部２４は、送受信するパケット、接続するＩＦ６、ＧＷ２およびＥＭ３のアドレスなどの情報を、必要に応じて記憶・管理する。
処理部２５は、例えば中央処理部（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ：ＣＰＵ）で構成される。処理部２５は、メモリ部２４に保持される情報を管理し、さらに、メモリ部２４に記憶される各種のプログラムを実行することによって、各種の処理、例えば、パケットの構築または解析などのパケット送受信処理、パケット種別の判定などを行う。
【００５０】
図７に、本実施例のＧＷ２のメモリ部の一構成例のブロック図を示す。
メモリ部２４は、例えば図７に示すように、テーブル２４１〜テーブル２４５を保持する。
テーブル２４１は、ＭＳ５またはセッションの識別子の割り当て済みフラグテーブルであり、自ＧＷ２が割り当てる権限を有するＭＳ５またはセッションの識別子の各値が、既に存在するＭＳ５またはセッションに割り当て済みの値か否かを判定するための情報を示す。テーブル２４１を用いることによって、パケット種別、ＭＳ５またはセッションの識別子の値、およびＭＳ５またはセッションの識別子の値の割り当て済みフラグなどの情報を管理することができる。なお、テーブル２４１の詳細は後述する（図１２参照）。
テーブル２４２は、自ＧＷ２が選択されるＭＳ５またはセッションの識別子の値テーブルであり、ＩＦ６における転送先ＧＷ２決定ロジックにおいて、自ＧＷ２が転送先ＧＷ２として選択されるＭＳ５またはセッションの識別子の値の情報を示す。テーブル２４２を用いることによって、パケット種別、およびＭＳ５またはセッションの識別子の値などの情報を管理することができる。なお、テーブル２４２の詳細は後述する（図１３参照）。
テーブル２４３は、パケット種別間のＭＳ５またはセッションの識別子紐づけテーブルであり、あるＭＳ５またはセッションに対するパケット種別毎の識別子の値の情報を示す。テーブル２４３を用いることによって、エントリＩＤ、およびパケット種別とその識別子の値などの情報を管理することができる。なお、テーブル２４３の詳細は後述する（図１８参照）。
テーブル２４４は、ＧＷ２間転送先決定テーブルであり、ＧＷ２間転送パケットの転送先となるＧＷ２を決定するための情報を示す。テーブル２４４を用いることによって、パケット種別、ＭＳ５またはセッションの識別子の値、転送先ＧＷ２の識別子などの情報を管理することができる。なお、テーブル２４４の詳細は後述する（図１９参照）。
テーブル２４５は、ＧＷ２間転送先アドレステーブルであり、ＧＷ２間転送パケットの転送先となる各ＧＷ２のアドレスを解決するための情報を示す。テーブル２４５を用いることによって、転送先ＧＷ２の識別子、転送先ＧＷ２のＭＡＣアドレス、および転送先ＧＷ２のＩＰアドレスなどの情報を管理することができる。なお、テーブル２４５の詳細は後述する（図２０参照）。
【００５１】
＜ＧＷ２のメモリ部２４が保持する各テーブルの詳細＞
図１２に、本実施例のＧＷ２のメモリ部２４が保持する情報の一例として、テーブル２４１を示す。テーブル２４１は、自ＧＷ２が割り当てる権限を有するＭＳ５またはセッションの識別子の各値が、既に存在するＭＳ５またはセッションに割り当て済みの値か否かを判定するための情報を示す。
テーブル２４１には、例えば、パケット種別、ＭＳ５またはセッションの識別子の値（識別子の値）、およびＭＳ５またはセッションの識別子の値の割り当て済みフラグ（割り当て済みフラグ）などが記憶される。
パケット種別は、パケットに設定されるＭＳ５またはセッションを識別するパラメータの種類を示すパラメータであり、例えば、前記テーブル６６１の「パケット種別」と同様の方法で管理されてもよい。
ＭＳ５またはセッションの識別子の値は、ＭＳ５またはセッションを識別するパラメータであり、例えば、前記テーブル６６１の「ＭＳ５またはセッションの識別子の値」と同様の方法で管理されてもよい。
ＭＳ５またはセッションの識別子の値の割り当て済みフラグは、ＭＳ５またはセッションの識別子の各値が、既に存在するＭＳ５またはセッションに割り当て済みの値か否かを識別するためのパラメータである。ＭＳ５またはセッションの識別子の値の割り当て済みフラグは、例えば、「Ｙｅｓ／Ｎｏ」または「Ｔｒｕｅ／Ｆａｌｓｅ」のような２値の変数で管理されていてもよい。
なお、テーブル２４１に含まれる情報の初期値は、ＥＭ３に予め設定されていてもよいし、ＩＦ６またはＧＷ２またはＥＭ３からＧＷ２が受信するパケットや、オペレータの投入するコマンドによって設定されてもよい。また、これらの情報は、ＩＦ６またはＧＷ２またはＥＭ３からＧＷ２が受信するパケットや、オペレータの投入するコマンドによって更新されてもよい。
【００５２】
図１３に、本実施例のＧＷ２のメモリ部２４が保持する情報の一例として、テーブル２４２を示す。テーブル２４２は、ＩＦ６における転送先ＧＷ２決定ロジックにおいて、自ＧＷ２が転送先ＧＷ２として選択されるＭＳ５またはセッションの識別子の値の情報を示す。
テーブル２４２には、例えば、パケット種別、およびＭＳ５またはセッションの識別子の値などが記憶される。
パケット種別は、パケットに設定されるＭＳ５またはセッションを識別するパラメータの種類を示すパラメータであり、例えば、前記テーブル６６１の「パケット種別」と同様の方法で管理されてもよい。
ＭＳ５またはセッションの識別子の値は、ＭＳ５またはセッションを識別するパラメータであり、例えば、前記テーブル６６１の「ＭＳ５またはセッションの識別子の値」と同様の方法で管理されてもよい。
なお、テーブル２４２に含まれる情報の初期値は、ＥＭ３に予め設定されていてもよいし、ＩＦ６またはＧＷ２またはＥＭ３からＧＷ２が受信するパケットや、オペレータの投入するコマンドによって設定されてもよい。また、これらの情報は、ＩＦ６またはＧＷ２またはＥＭ３からＧＷ２が受信するパケットや、オペレータの投入するコマンドによって更新されてもよい。
テーブル２４２には、テーブル６６１、転送先ＧＷが自ＧＷであるエントリが抽出されたデータであって、パケット種別に対してＭＳまたはセッションの識別子が記憶される（後述の図３０参照）。
【００５３】
図１８に、本実施例のＧＷ２のメモリ部２４が保持する情報の一例として、テーブル２４３を示す。テーブル２４３は、あるＭＳ５またはセッションに対するパケット種別毎の識別子の値の情報を示す。
テーブル２４３には、例えば、エントリＩＤ、およびパケット種別とその識別子の値などが記憶される。
エントリＩＤは、テーブル２４３の各エントリを一意に識別するためのパラメータである。エントリＩＤは、例えば、数値で管理されていてもよいし、任意の文字列で管理されていてもよい。
パケット種別とその識別子の値は、各エントリに対応するあるＭＳ５またはセッションに対して、パケット種別毎に割り当てられている識別子の値を示すためのパラメータである。なお、あるパケット種別の識別子が未割り当ての場合は、例えば、対応する箇所に「−」などの未割り当てを示す特定の文字列が設定されていることから識別されてもよいし、未割り当てを示す特定の数値が設定されていることから識別されてもよいし、該当箇所に設定値がないことから識別されてもよい。
なお、テーブル２４３に含まれる情報の初期値は、ＥＭ３に予め設定されていてもよいし、ＩＦ６またはＧＷ２またはＥＭ３からＧＷ２が受信するパケットや、オペレータの投入するコマンドによって設定されてもよい。また、これらの情報は、ＩＦ６またはＧＷ２またはＥＭ３からＧＷ２が受信するパケットや、オペレータの投入するコマンドによって更新されてもよい。
【００５４】
図１９に、本実施例のＧＷ２のメモリ部２４が保持する情報の一例として、テーブル２４４を示す。テーブル２４４は、ＧＷ２間転送パケットの転送先となるＧＷ２を決定するための情報を示す。
テーブル２４４には、例えば、パケット種別、ＭＳ５またはセッションの識別子の値（識別子の値）、および転送先ＧＷ２の識別子（転送先ＧＷ２）が記憶される。
パケット種別は、パケットに設定されるＭＳ５またはセッションを識別するパラメータの種類を示すパラメータであり、例えば、前記テーブル６６１の「パケット種別」と同様の方法で管理されてもよい。
ＭＳ５またはセッションの識別子の値は、ＭＳ５またはセッションを識別するパラメータであり、例えば、前記テーブル６６１の「ＭＳ５またはセッションの識別子の値」と同様の方法で管理されてもよい。
転送先ＧＷ２の識別子は、各ＧＷ２を一意に識別するためのパラメータであり、例えば、前記テーブル６６１の「転送先ＧＷ２の識別子」と同様の方法で管理されてもよい。
【００５５】
なお、テーブル２４４に含まれる情報の初期値は、ＥＭ３に予め設定されていてもよいし、ＩＦ６またはＧＷ２またはＥＭ３からＧＷ２が受信するパケットや、オペレータの投入するコマンドによって設定されてもよい。また、これらの情報は、ＩＦ６またはＧＷ２またはＥＭ３からＧＷ２が受信するパケットや、オペレータの投入するコマンドによって更新されてもよい。
テーブル２４４には、テーブル６６１、転送先ＧＷが自ＧＷであるエントリが削除されたデータであって、パケット種別に対して、ＭＳまたはセッションの識別子と、ＧＷ間転送パケットの転送先ＧＷの識別子とが記憶される（後述の図３１参照）。
【００５６】
図２０に、本実施例のＧＷ２のメモリ部２４が保持する情報の一例として、テーブル２４５を示す。テーブル２４５は、ＧＷ２間転送パケットの転送先となる各ＧＷ２のアドレスを解決するための情報を示す。
テーブル２４５には、例えば、転送先ＧＷ２の識別子（ＧＷ２  ＩＤ）、転送先ＧＷ２のＭＡＣアドレス（ＧＷ２  ＭＡＣ）、および転送先ＧＷ２のＩＰアドレス（ＧＷ２  ＩＰ）などが記憶される。
転送先ＧＷ２の識別子は、各ＧＷ２を一意に識別するためのパラメータであり、例えば、前記テーブル６６１の「転送先ＧＷ２の識別子」と同様の方法で管理されてもよい。
転送先ＧＷ２のＭＡＣアドレスは、各ＧＷ２を宛先として転送するためのＭＡＣアドレスを示すパラメータである。
転送先ＧＷ２のＩＰアドレスは、各ＧＷ２を宛先として転送するためのＭＡＣアドレスを示すパラメータであり、例えば、前記テーブル６６２の「転送先ＧＷ２のＩＰアドレス」と同様の方法で管理されてもよい。
なお、テーブル２４５に含まれる情報の初期値は、ＥＭ３に予め設定されていてもよいし、ＩＦ６またはＧＷ２またはＥＭ３からＧＷ２が受信するパケットや、オペレータの投入するコマンドによって設定されてもよい。また、これらの情報は、ＩＦ６またはＧＷ２またはＥＭ３からＧＷ２が受信するパケットや、オペレータの投入するコマンドによって更新されてもよい。
【００５７】
＜装置構成：ＥＭ３＞
図８に、本実施例で使用するＥＭ３の一構成例の機能ブロックを示す。ＥＭ３は、例えば、ＩＦインタフェース部３１と、ＧＷインタフェース部３２と、メモリ部３３と、処理部３４とを有する。
ＩＦインタフェース部３１は、ＩＦ６とのインタフェースである。ＩＦインタフェース部３１を用いて、ＥＭ３はＩＦ６との間でパケットの送受信を行う。
ＧＷインタフェース部３２は、ＧＷ２とのインタフェースである。ＧＷインタフェース部３２を用いて、ＥＭ３はＧＷ２との間でパケットの送受信を行う。
なお、以上に説明したＥＭ３におけるインタフェース部３１−３２を総称して、ＥＭ３のインタフェース部、またはネットワークインタフェース部と呼ぶ場合がある。これらのインタフェース部は、内部バス等によってメモリ部３３および処理部３４に接続されている。
メモリ部３３は、送受信するパケット、接続するＩＦ６、およびＧＷ２のアドレスなどの情報を、必要に応じて記憶・管理する。
処理部３４は、例えば中央処理部（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ：ＣＰＵ）で構成される。処理部３４は、メモリ部３３に保持される情報を管理し、さらに、メモリ部３３に記憶される各種のプログラムを実行することによって、各種の処理、例えば、パケットの構築または解析などのパケット送受信処理などを行う。
なお、詳細な内部構成の説明を省略するが、本実施例の通信システムを構成するＩＦ６、ＧＷ２およびＥＭ３以外の他の構成要素であるＳＳ１、ＢＳ４、ＭＳ５およびＥＥ７も同様にその内部にネットワークインタフェース部、メモリ部、処理部を備えている。それらの処理部もＩＦ６の処理部６７と同様にＣＰＵによって実現され、装置毎に設定された機能プログラムを実行、処理する。
【００５８】
図９に、本実施例のＥＭ３のメモリ部の一構成例のブロック図を示す。
メモリ部３３は、例えば図９に示すように、テーブル３３１〜テーブル３３７を保持する。
テーブル３３１は、転送先ＧＷ２テーブルであり、ＩＦ６が受信したパケットの転送先となるＧＷ２を決定するための情報を示す。テーブル３３１を用いることによって、パケット種別、ＭＳ５またはセッションの識別子の値、および転送先ＧＷ２の識別子などの情報を管理することができる。なお、テーブル３３１は、前記テーブル６６１と同様の方法で管理されてもよい（図１０参照）。
テーブル３３２は、ＧＷ２単位処理スループットテーブルであり、ＩＦ６が受信したパケットの転送先となる各ＧＷ２の処理スループットの情報を示す。テーブル３３２を用いることによって、転送先ＧＷ２の識別子、および転送先ＧＷ２の処理スループットなどの情報を管理することができる。なお、テーブル３３２の詳細は後述する（図２２参照）。
テーブル３３３は、稼働中ＧＷ２識別テーブルであり、ＩＦ６が受信したパケットの転送先となる各ＧＷ２が現在稼働中であるか否かの情報を示す。テーブル３３３を用いることによって、転送先ＧＷ２の識別子、および各ＧＷ２が現在稼働中か否かのフラグなどの情報を管理することができる。なお、テーブル３３３の詳細は後述する（図２３参照）。
テーブル３３４は、自ＧＷ２が選択されるＭＳ５またはセッションの識別子の値テーブルであり、ＩＦ６における転送先ＧＷ２決定ロジックにおいて、自ＧＷ２が転送先ＧＷ２として選択されるＭＳ５またはセッションの識別子の値の情報を示す。テーブル３３４を用いることによって、パケット種別、およびＭＳ５またはセッションの識別子の値などの情報を管理することができる。なお、テーブル３３４は、前記テーブル２４２と同様の方法で管理されてもよい（図１３参照）。
テーブル３３５は、ＧＷ２間転送先決定テーブルであり、ＧＷ２間転送パケットの転送先となるＧＷ２を決定するための情報を示す。テーブル２４４を用いることによって、パケット種別、ＭＳ５またはセッションの識別子の値、転送先ＧＷ２の識別子などの情報を管理することができる。なお、テーブル３３５は、前記テーブル２４４と同様の方法で管理されてもよい（図１９参照）。
テーブル３３６は、転送先ＧＷ２アドレステーブルであり、ＩＦ６が受信したパケットの転送先となる各ＧＷ２のアドレスを解決するための情報を示す。テーブル３３６を用いることによって、転送先ＧＷ２の識別子、転送先ＧＷ２のＭＡＣアドレス、および転送先ＧＷ２のＩＰアドレスなどの情報を管理することができる。なお、テーブル３３６は、前記テーブル６６２と同様の方法で管理されてもよい（図１１参照）。
テーブル３３７は、ＧＷ２間転送先アドレステーブルであり、ＧＷ２間転送パケットの転送先となる各ＧＷ２のアドレスを解決するための情報を示す。テーブル２４５を用いることによって、転送先ＧＷ２の識別子、転送先ＧＷ２のＭＡＣアドレス、および転送先ＧＷ２のＩＰアドレスなどの情報を管理することができる。なお、テーブル３３７は、前記テーブル２４５と同様の方法で管理されてもよい（図２０参照）。
【００５９】
＜ＥＭ３のメモリ部３３が保持する各テーブルの詳細＞
図１０に、本実施例のＥＭ３のメモリ部３３が保持する情報の一例として、テーブル３３１を示す。テーブル３３１は、前記テーブル６６１と同様の方法で管理されてもよい。
なお、テーブル３３１に含まれる情報の初期値は、ＥＭ３に予め設定されていてもよいし、ＩＦ６またはＧＷ２からＥＭ３が受信するパケットや、オペレータの投入するコマンドによって設定されてもよい。また、これらの情報は、ＩＦ６またはＧＷ２からＥＭ３が受信するパケットや、オペレータの投入するコマンドによって更新させることができる。
【００６０】
図２２に、本実施例のＥＭ３のメモリ部３３が保持する情報の一例として、テーブル３３２を示す。テーブル３３２は、ＩＦ６が受信したパケットの転送先となる各ＧＷ２の処理スループットの情報を示す。
テーブル３３２には、例えば、転送先ＧＷ２の識別子（ＧＷ２  ＩＤ）、および転送先ＧＷ２の処理スループット（Ｔｈｒｏｕｇｈｐｕｔ）などが記憶される。
転送先ＧＷ２の識別子は、各ＧＷ２を一意に識別するためのパラメータであり、例えば、前記テーブル６６１の「転送先ＧＷ２の識別子」と同様の方法で管理されてもよい。
転送先ＧＷ２の処理スループットは、転送先ＧＷ２の処理スループット性能を示すためのパラメータである。転送先ＧＷ２の処理スループット性能は、例えば、ＧＷ２のハードウェア性能に基づく静的な値でもよいし、ＧＷ２の現在の処理負荷として取得したＣＰＵ使用率や送信スループットのピーク値や平均値等の情報に基づく動的な値でもよい。また、ＥＭ３は、ＧＷ２の処理スループット性能を示すパラメータを、ＧＷ２から直接取得してもよいし、ＥＭ３で取得している統計情報を基にして算出してもよい。
なお、テーブル３３２に含まれる情報の初期値は、ＥＭ３に予め設定されていてもよいし、ＩＦ６またはＧＷ２からＥＭ３が受信するパケットや、オペレータの投入するコマンドによって設定されてもよい。また、これらの情報は、ＩＦ６またはＧＷ２からＥＭ３が受信するパケットや、オペレータの投入するコマンドによって更新させることができる。
【００６１】
図２３に、本実施例のＥＭ３のメモリ部３３が保持する情報の一例として、テーブル３３３を示す。テーブル３３３は、稼働中ＧＷ２識別テーブルであり、ＩＦ６が受信したパケットの転送先となる各ＧＷ２が現在稼働中であるか否かの情報を示す。
テーブル３３３には、例えば、転送先ＧＷ２の識別子（ＧＷ２  ＩＤ）、および各ＧＷ２が現在稼働中か否かのフラグ（Ｗｏｒｋｉｎｇ  Ｆｌａｇ）などが記憶される。
転送先ＧＷ２の識別子は、各ＧＷ２を一意に識別するためのパラメータであり、例えば、前記テーブル６６１の「転送先ＧＷ２の識別子」と同様の方法で管理されてもよい。
各ＧＷ２が現在稼働中か否かのフラグは、ＩＦ６が受信したパケットの転送先となる各ＧＷ２が稼働中か否かを示すためのパラメータである。例えば、ＥＭ３があるＧＷ２の故障を示す情報を通知された場合、本フラグの該ＧＷ２に対応する設定値は「ＮＯ」と設定され、ＥＭ３があるＧＷ２の故障からの復旧を示す情報を通知された場合、またはＥＭ３があるＧＷ２が正常を示す情報を通知された場合、本フラグの該ＧＷ２に対応する設定値は「ＹＥＳ」と設定される。
なお、テーブル３３３に含まれる情報の初期値は、ＥＭ３に予め設定されていてもよいし、ＩＦ６またはＧＷ２からＥＭ３が受信するパケットや、オペレータの投入するコマンドによって設定されてもよい。また、これらの情報は、ＩＦ６またはＧＷ２からＥＭ３が受信するパケットや、オペレータの投入するコマンドによって更新させることができる。
【００６２】
図１３に、本実施例のＥＭ３のメモリ部３３が保持する情報の一例として、テーブル３３４を示す。テーブル３３４は、前記テーブル２４２と同様の方法で管理されてもよい。
なお、テーブル３３４に含まれる情報の初期値は、ＥＭ３に予め設定されていてもよいし、ＩＦ６またはＧＷ２からＥＭ３が受信するパケットや、オペレータの投入するコマンドによって設定されてもよい。また、これらの情報は、ＩＦ６またはＧＷ２からＥＭ３が受信するパケットや、オペレータの投入するコマンドによって更新させることができる。
【００６３】
図１９に、本実施例のＥＭ３のメモリ部３３が保持する情報の一例として、テーブル３３５を示す。テーブル３３５は、前記テーブル２４４と同様の方法で管理されてもよい。
なお、テーブル３３５に含まれる情報の初期値は、ＥＭ３に予め設定されていてもよいし、ＩＦ６またはＧＷ２からＥＭ３が受信するパケットや、オペレータの投入するコマンドによって設定されてもよい。また、これらの情報は、ＩＦ６またはＧＷ２からＥＭ３が受信するパケットや、オペレータの投入するコマンドによって更新させることができる。
【００６４】
図１１に、本実施例のＥＭ３のメモリ部３３が保持する情報の一例として、テーブル３３６を示す。テーブル３３６は、前記テーブル６６２と同様の方法で管理されてもよい。
なお、テーブル３３６に含まれる情報の初期値は、ＥＭ３に予め設定されていてもよいし、ＩＦ６またはＧＷ２からＥＭ３が受信するパケットや、オペレータの投入するコマンドによって設定されてもよい。また、これらの情報は、ＩＦ６またはＧＷ２からＥＭ３が受信するパケットや、オペレータの投入するコマンドによって更新させることができる。
【００６５】
図２０に、本実施例のＥＭ３のメモリ部３３が保持する情報の一例として、テーブル３３７を示す。テーブル３３７は、前記テーブル２４５と同様の方法で管理されてもよい。
なお、テーブル３３７に含まれる情報の初期値は、ＥＭ３に予め設定されていてもよいし、ＩＦ６またはＧＷ２からＥＭ３が受信するパケットや、オペレータの投入するコマンドによって設定されてもよい。また、これらの情報は、ＩＦ６またはＧＷ２からＥＭ３が受信するパケットや、オペレータの投入するコマンドによって更新させることができる。
以上で、本実施例の装置構成の一例についての説明を終了する。
【００６６】
２．処理
続いて、本実施例の動作処理の一例を図２４〜図３４のフローチャートを用いて説明する。
＜動作処理：ＩＦ６における受信パケットの転送先ＧＷ２の選択＞
図２４に、本実施例のＩＦ６における受信パケットの転送先ＧＷ２の選択処理の一例を示す。
ＩＦ６の処理部６７は、ＳＳインタフェース部６１、またはＢＳインタフェース部６２、またはＥＭインタフェース部６３、またはＧＷインタフェース部６４、またはＥＥインタフェース部６５で、パケットを受信した場合、ステップＳ６０１において、受信パケットのヘッダ解析の結果等に基づいて、パケットのＣ−ＰｌａｎｅまたはＵ−Ｐｌａｎｅ、パケット種別およびパケットの送信元である対向装置の種類等から、ＧＷ２宛てに該パケットを転送する必要があるか否かを判定する。
ＧＷ２宛てにパケットを転送する必要がないと判定された場合、ステップＳ６０２Ｎにおいて、ＩＦ６の処理部６７は、受信パケットの種別および設定内容に基づいて、パケットの適切な転送先を選択し、選択した転送先にパケットを転送して処理を終了する。このとき、ＩＦ６の処理部６７は、ステップＳ６０１で受信したパケットをそのままＧＷ２へ転送してもよいし、ヘッダの挿入／削除、特定のフィールドの書き換え等のフォーマット変換を実施してからＧＷ２へ転送してもよい。例えば、ＩＦ６の処理部６７は、受信パケットの種別および設定内容から、受信パケットがパケット種別Ｂのパケットの識別子の割当結果通知を示すパケットであると判定した場合、パケットの宛先ＩＰアドレスまたは宛先ＭＡＣアドレスから対応するＳＳ１またはＢＳ４またはＭＳ５またはＥＥ７（あるＭＳまたはセッションのパケット種別Ｂの識別子の割り当て要求を示すパケットを送信したＳＳ１またはＢＳ４またはＭＳ５またはＥＥ７）へ、該パケットを転送してもよい。
【００６７】
ＧＷ２宛てにパケットを転送する必要があると判定された場合、ステップＳ６０３Ｙにおいて、ＩＦ６の処理部６７は、ステップＳ６０１における受信パケットのパケット種別判定結果と、パケットに設定されたＭＳ５またはセッションの識別子の値に基づいて、メモリ部６６に保持しているテーブル６６１を検索し、パケットの転送先となるＧＷ２を決定する。例えば、ＩＦ６のメモリ部６６に保持しているテーブル６６１が図１０のように管理されている場合、ＩＦ６の処理部６７は、ステップＳ６０１における受信パケットのパケット種別判定結果に基づいて、パケットに設定されたＭＳ５またはセッションの識別子の種類と設定位置を特定し、パケットに設定されたＭＳ５またはセッションの識別子の値を抽出し、該パケットのパケット種別と前記で抽出した識別子の値に基づいて、テーブル６６１の対応するエントリを検索し、対応する転送先ＧＷ２の識別子をテーブル６６１から抽出する。
【００６８】
ステップＳ６０４において、ＩＦ６の処理部６７は、ＧＷインタフェース部６４から、ステップＳ６０３Ｙで決定したパケットの転送先となるＧＷ２宛てのパケットを送信する。このとき、ＩＦ６の処理部６７は、ステップＳ６０１で受信したパケットをそのまま転送してもよいし、ヘッダの挿入／削除、特定のフィールドの書き換え等のフォーマット変換を実施してから転送してもよい。例えば、ＩＦ６のメモリ部６６に保持しているテーブル６６２が図１１のように管理されている場合、ＩＦ６の処理部６７は、ステップＳ６０３Ｙで転送先として決定したＧＷ２の識別子と対応する該ＧＷ２のＭＡＣアドレスおよびＩＰアドレスをテーブル６６２から検索し、ステップＳ６０１で受信したパケットのＥｔｈｅｒヘッダの宛先ＭＡＣアドレスにテーブル６６２から抽出したＧＷ２のＭＡＣアドレスを設定してもよい。さらに、ステップＳ６０１で受信したパケットのＩＰヘッダにテーブル６６２から抽出したＧＷ２のＩＰアドレスを設定するか、もしくはステップＳ６０１で受信したパケットのＥｔｈｅｒヘッダとＩＰヘッダの間に、テーブル６６２から抽出したＧＷ２のＩＰアドレスを宛先に設定したＯｕｔｅｒ  ＩＰヘッダを設定し、チェックサム等のフィールドの値を適切な値に更新してもよい。そして、該パケットをＧＷ２へ転送してもよい。
【００６９】
＜動作処理：ＧＷ２におけるＭＳ５またはセッションの識別子の割り当て＞
図２５に、本実施例のＧＷ２におけるＭＳ５またはセッションの識別子の割り当て処理の一例を示す。本処理は、例えば、３ＧＰＰ規格のＰ−ＧＷにおけるＧＴＰｖ２−Ｃプロトコルを用いた新規ＩＰ−ＣＡＮセッションの確立時のＧＴＰｖ２−ＣプロトコルのＴＥＩＤの割り当てや、無線規格の異なる網間のハンドオーバを契機としたＭＳ５の移動先の網で送受信されるパケットに設定されるＭＳ５またはセッションの識別子の新規割り当てなどのケースで、実施されてもよい。
ＧＷ２の処理部２５は、ＩＦインタフェース部２１でパケットを受信した場合、ステップＳ２０１において、受信パケットのヘッダ解析の結果等に基づいて、パケットのＣ−ＰｌａｎｅまたはＵ−Ｐｌａｎｅ、パケット種別およびパケットの送信元である対向装置の種類等から、該パケットがＭＳ５またはセッションの識別子の割り当て要求を示すパケットか否かを判定する。
ステップＳ２０１で該パケットがＭＳ５またはセッションの識別子の割り当て要求を示すパケットではないと判定された場合、ステップＳ２０２Ｎにおいて、ＧＷ２の処理部２５は、受信パケットの種別および設定内容に基づいて、個別に処理を実施する。
ステップＳ２０１で該パケットがＭＳ５またはセッションの識別子の割り当て要求を示すパケットであると判定された場合、ステップＳ２０３Ｙにおいて、ＧＷ２の処理部２５は、ＧＷ２のメモリ部２４に保持しているテーブル２４１に基づいて、テーブル２４１のエントリの中で、他のＭＳ５またはセッションに割り当て済みでない識別子の値を示すエントリを検索する。例えば、ＧＷ２のメモリ部２４に保持しているテーブル２４１が図１２のように管理されていて、かつステップＳ２０１でパケット種別Ｂのパケットの識別子の割当通知を示すパケットであると判定された場合、ＧＷ２の処理部２５は、割り当て済みフラグが「Ｎｏ」であることを条件として、テーブル２４１のパケット種別Ｂに対応するエントリを検索する。ここで、例えば、テーブル２４１は、ＧＷ２のメモリ部２４に保持しているテーブル２４２に基づいてＧＷ２の処理部２５で作成されてもよい。ＧＷ２の処理部２５における、テーブル２４２に基づくテーブル２４１の作成処理例については、別途図２６にて後述する。
【００７０】
ステップＳ２０３Ｙで条件に合致するエントリが一つもヒットしなかった場合、ステップＳ２０４Ｎにおいて、ＧＷ２の処理部２５は、該ケースに対応する処理を実施する。例えば、ＧＷ２の処理部２５は、割り当て可能な識別子が無いことを示すパケットを作成し、ＩＦインタフェース部２１から該パケットを送信してもよい。
ステップＳ２０３Ｙで条件に合致するエントリがヒットした場合、ステップＳ２０５Ｙにおいて、ＧＷ２の処理部２５は、条件に合致したエントリの中から一つを選択し、該エントリに対応する識別子の値を割り当て値として決定する。例えば、ＧＷ２のメモリ部２４に保持しているテーブル２４１が図１２のように管理されている場合、ＧＷ２の処理部２５は、その条件に合致するエントリの中で最初に検索にヒットしたエントリに対応する識別子の値を抽出し、該エントリに対応する識別子の値を割り当て値として決定してもよい。例えば、ステップＳ２０１でパケット種別Ｂのパケットの識別子の割当通知を示すパケットであると判定されていて、かつその条件に合致するエントリの中で最初に検索にヒットしたエントリに対応する識別子の値が「１」だった場合、ＧＷ２の処理部２５は、該パケットによって識別子の割り当ての要求が示されているＭＳ５またはセッションに対するパケット種別Ｂの識別子の値として「１」を割り当ててもよい。
ステップＳ２０６において、ＧＷ２の処理部２５は、ステップＳ２０５Ｙで決定した識別子の割り当て値を含む、識別子の割当通知を示すパケットを作成し、ＩＦインタフェース部２１から該パケットを送信する。例えば、ＧＷ２の処理部２５は、ステップＳ２０５Ｙで該パケットによって識別子の割り当ての要求が示されているＭＳ５またはセッションに対するパケット種別Ｂの識別子の値として「１」を割り当てた場合、識別子の割当通知を示すパケットの、パケット種別Ｂの識別子の割り当て値を示すフィールドに「１」を設定し、ステップＳ２０１で受信したパケットの送信元ＩＰアドレスまたは送信元ＭＡＣアドレスを抽出し、識別子の割当通知を示すパケットの宛先ＩＰアドレスまたは宛先ＭＡＣアドレスに設定して、ＩＦインタフェース部２１から該パケットを送信してもよい。また、このとき、ＧＷ２の処理部２５は、ステップＳ２０５Ｙで決定した識別子の割り当て値を含む、識別子の割当通知を示すパケットを、ＧＷインタフェース部２２、またはＥＭインタフェース部２３から送信してもよい。なお、該パケットには、ステップＳ２０５Ｙで決定した識別子の割り当て値さえ含まれていればよく、該パケットのフォーマットは、ＩＦインタフェース部２１へ送信される識別子の割当通知を示すパケットと同じでもよいし、異なっていてもよい。該パケットをＧＷ２へ送信する場合における、転送先ＧＷ２の決定処理例は、別途図２７にて後述する。
【００７１】
＜動作処理：ＧＷ２における自ＧＷ２が選択されるＭＳ５またはセッションの識別子の値テーブルに基づくＭＳ５またはセッションの識別子の割り当て済みフラグテーブルの作成＞
図２６に、ＧＷ２における自ＧＷ２が選択されるＭＳ５またはセッションの識別子の値テーブル２４２に基づくＭＳ５またはセッションの識別子の割り当て済みフラグテーブル２４１の作成処理の一例を示す。
ＧＷ２の処理部２５は、ＧＷインタフェース部２２、またはＥＭインタフェース部２３でパケットを受信した場合、ステップＳ２１１において、受信パケットのヘッダ解析の結果等に基づいて、パケットのＣ−ＰｌａｎｅまたはＵ−Ｐｌａｎｅ、パケット種別およびパケットの送信元である対向装置の種類等から、該パケットが、ＧＷ２のメモリ部２４に保持しているテーブル２４２の更新要求を示すパケットか否かを判定する。
ステップＳ２１１で、該パケットが、ＧＷ２のメモリ部２４に保持している２４２の更新要求を示すパケットであると判定された場合、ステップＳ２１２Ｙで、ＧＷ２の処理部２５は、該パケットが示すテーブル２４２の更新要求の内容に、テーブル２４２へのエントリ追加の要求が含まれるか否かを判定する。
ステップＳ２１２Ｙで、ステップＳ２１１で受信したパケットが示すテーブル２４２の更新要求の内容に、テーブル２４２へのエントリ追加の要求が含まれないと判定された場合、ＧＷ２の処理部２５は、ステップＳ２１４へ進む。
【００７２】
ステップＳ２１２Ｙで、ステップＳ２１１で受信したパケットが示すテーブル２４２の更新要求の内容に、テーブル２４２へのエントリ追加の要求が含まれると判定された場合、ＧＷ２の処理部２５は、ステップＳ２１３Ｙで、該パケットの更新要求の内容に基づいて、メモリ部２４に保持しているテーブル２４２に要求されたエントリを追加し、かつテーブル２４１に関連するエントリを追加し、ステップＳ２１４へ進む。例えば、ＧＷ２のメモリ部２４に保持しているテーブル２４１が図１２のように管理されていて、かつＧＷ２のメモリ部２４に保持しているテーブル２４２が図１３のように管理されていて、かつステップＳ２１１で受信したパケットが示すテーブル２４２の更新要求の内容に、パケット種別Ｂの識別子の割り当て候補値として「３０１〜４００」のエントリを追加する要求が含まれている場合、ＧＷ２の処理部２５は、例えば、テーブル２４２のパケット種別Ｂに対応するエントリとして、割り当て候補値が「３０１〜４００」のエントリを追加してテーブル２４２を図１４のように更新し、テーブル２４１のパケット種別Ｂに対応するエントリとして、割り当て候補値が「３０１〜４００」のエントリを追加してテーブル２４１を図１５のように更新する。ここで、例えば、テーブル２４１に追加された割り当て候補値が「３０１〜４００」の各エントリの割り当て済みフラグの値は、ステップＳ２１１で受信したパケットの要求内容に含まれる値をそれぞれ設定してもよいし、一律「Ｎｏ」と設定してもよい。
【００７３】
ステップＳ２１４で、ＧＷ２の処理部２５は、ステップＳ２１１で受信したパケットが示すテーブル２４２の更新要求の内容に、テーブル２４２へのエントリ削除の要求が含まれるか否かを判定する。
ステップＳ２１４で、ステップＳ２１１で受信したパケットが示すテーブル２４２の更新要求の内容に、テーブル２４２へのエントリ削除の要求が含まれないと判定された場合、ＧＷ２の処理部２５は、ステップＳ２１６へ進む。
ステップＳ２１４で、ステップＳ２１１で受信したパケットが示すテーブル２４２の更新要求の内容に、テーブル２４２へのエントリ削除の要求が含まれると判定された場合、ＧＷ２の処理部２５は、ステップＳ２１５Ｙで、該パケットの更新要求の内容に基づいて、ＧＷ２のメモリ部２４に保持しているテーブル２４２に要求されたエントリを削除し、かつテーブル２４１から削除されるエントリの内容をＥＭ３またはＧＷ２へ通知するための通知パケットを作成し、ＧＷインタフェース部２２、またはＥＭインタフェース部２３から該パケットを送信し、テーブル２４１の関連するエントリを削除し、ステップＳ２１６へ進む。例えば、ＧＷ２のメモリ部２４に保持しているテーブル２４１が図１５のように管理されていて、かつＧＷ２のメモリ部２４に保持しているテーブル２４２が図１４のように管理されていて、かつステップＳ２１１で受信したパケットが示すテーブル２４２の更新要求の内容に、パケット種別Ｂの識別子の割り当て候補値として「１〜１００」のエントリを削除する要求が含まれている場合、ＧＷ２の処理部２５は、例えば、テーブル２４２のパケット種別Ｂに対応するエントリとして、割り当て候補値が「１〜１００」のエントリを削除してテーブル２４２を図１６のように更新し、テーブル２４１のパケット種別Ｂに対応するエントリとして、割り当て候補値が「１〜１００」のエントリを削除してテーブル２４２を図１７のように更新する。ここで、例えば、テーブル２４１で削除される割り当て候補値が「１〜１００」の各エントリの割り当て済みフラグの値は、ＥＭ３またはＧＷ２へ通知するための通知パケットに設定されて、ＧＷインタフェース部２２、またはＥＭインタフェース部２３から該パケットを送信することで、ＧＷ２またはＥＭ３へ通知される。ＧＷ２へ通知パケットを送信する場合における、転送先ＧＷ２の決定処理例は、別途図２７にて後述する。
【００７４】
ステップＳ２１１で、該パケットがテーブル２４２の更新要求を示すパケットではないと判定された場合、ステップＳ２１７Ｎにおいて、ＧＷ２の処理部２５は、受信パケットのヘッダ解析の結果等に基づいて、パケットのＣ−ＰｌａｎｅまたはＵ−Ｐｌａｎｅ、パケット種別およびパケットの送信元である対向装置の種類等から、該パケットがＧＷ２のメモリ部２４に保持しているテーブル２４１の更新要求を示すパケットか否かを判定する。
ステップＳ２１７Ｎで該パケットがテーブル２４１の更新要求を示すパケットではないと判定された場合、ステップＳ２１８Ｎにおいて、ＧＷ２の処理部２５は、受信パケットの種別および設定内容に基づいて、個別に処理を実施する。
ステップＳ２１７Ｎで該パケットがテーブル２４１の更新要求を示すパケットであると判定された場合、ステップＳ２１９Ｙにおいて、ＧＷ２の処理部２５は、該パケットが示すＭＳ５またはセッションの識別子の割り当て済みフラグテーブル２４１の更新要求の内容に、テーブル２４１へのエントリ追加の要求が含まれるか否かを判定する。
ステップＳ２１９Ｙで、ステップＳ２１１で受信したパケットが示すテーブル２４１の更新要求の内容に、テーブル２４１へのエントリ追加の要求が含まれないと判定された場合、ＧＷ２の処理部２５は、ステップＳ２２１へ進む。
【００７５】
ステップＳ２１９Ｙで、ステップＳ２１１で受信したパケットが示すテーブル２４１の更新要求の内容に、テーブル２４１へのエントリ追加の要求が含まれると判定された場合、ＧＷ２の処理部２５は、ステップＳ２２０Ｙで、該パケットの更新要求の内容に基づいて、メモリ部２４に保持しているテーブル２４１に要求されたエントリを追加し、ステップＳ２２１へ進む。例えば、ＧＷ２のメモリ部２４に保持しているテーブル２４１が図１２のように管理されていて、かつステップＳ２１１で受信したパケットが示すテーブル２４１の更新要求の内容に、パケット種別Ｂの識別子の割り当て候補値として「３０１〜４００」のエントリを追加する要求が含まれている場合、ＧＷ２の処理部２５は、例えば、テーブル２４１のパケット種別Ｂに対応するエントリとして、割り当て候補値が「３０１〜４００」のエントリを追加してテーブル２４２を図１５のように更新する。ここで、例えば、テーブル２４１に追加された割り当て候補値が「３０１〜４００」の各エントリの割り当て済みフラグの値は、ステップＳ２１１で受信したパケットの要求内容に含まれる値をそれぞれ設定してもよいし、一律「Ｎｏ」と設定してもよい。
ステップＳ２２１で、ＧＷ２の処理部２５は、ステップＳ２１１で受信したパケットが示すテーブル２４１の更新要求の内容に、テーブル２４１へのエントリ削除の要求が含まれるか否かを判定する。
ステップＳ２２１で、ステップＳ２１１で受信したパケットが示すテーブル２４１の更新要求の内容に、テーブル２４１へのエントリ削除の要求が含まれないと判定された場合、ＧＷ２の処理部２５は、ステップＳ２１６へ進む。
【００７６】
ステップＳ２２１で、ステップＳ２１１で受信したパケットが示すテーブル２４１の更新要求の内容に、テーブル２４１へのエントリ削除の要求が含まれると判定された場合、ＧＷ２の処理部２５は、ステップＳ２２２Ｙで、該パケットの更新要求の内容に基づいて、テーブル２４１から削除されるエントリの内容をＥＭ３またはＧＷ２へ通知するための通知パケットを作成し、ＧＷインタフェース部２２、またはＥＭインタフェース部２３から該パケットを送信し、メモリ部２４に保持しているテーブル２４１の関連するエントリを削除し、ステップＳ２１６へ進む。例えば、ＧＷ２のメモリ部２４に保持しているテーブル２４１が図１５のように管理されていて、かつステップＳ２１１で受信したパケットが示すテーブル２４１の更新要求の内容に、パケット種別Ｂの識別子の割り当て候補値として「１〜１００」のエントリを削除する要求が含まれている場合、ＧＷ２の処理部２５は、例えば、テーブル２４１のパケット種別Ｂに対応するエントリとして、割り当て候補値が「１〜１００」のエントリを削除してテーブル２４２を図１７のように更新する。ここで、例えば、テーブル２４１で削除される割り当て候補値が「１〜１００」の各エントリの割り当て済みフラグの値は、ＥＭ３またはＧＷ２へ通知するための通知パケットに設定されて、ＧＷインタフェース部２２、またはＥＭインタフェース部２３から該パケットを送信することで、ＧＷ２またはＥＭ３へ通知される。ＧＷ２へ通知パケットを送信する場合における、転送先ＧＷ２の決定処理例は、別途図２７にて後述する。
ステップＳ２１６で、ＧＷ２の処理部２５は、本処理を終了する。ここで、ＧＷ２の処理部２５は、本処理でテーブル２４１またはテーブル２４２の一方または双方の更新結果を示すパケットを作成し、ＧＷインタフェース部２２、またはＥＭインタフェース部２３から該パケットを送信してもよい。
【００７７】
＜動作処理：ＧＷ２におけるＧＷ２間転送の転送先ＧＷ２の決定＞
図２７に、ＧＷ２におけるＧＷ２間転送の転送先ＧＷ２の決定処理の一例を示す。本処理は、例えば、無線規格の異なる網間のハンドオーバを契機として、ＭＳ５の移動前の網とＭＳ５の移動先の網であるＭＳ５またはセッションに属するパケットの転送先ＧＷ２が変化した場合における移動前の網のＧＷ２と移動後の網のＧＷ２とのＧＷ２間通信などのケースで、実施されてもよい。
ＧＷ２間転送の要求が発生した場合を想定する。ＧＷ２の処理部２５は、ステップＳ２３１において、要求されたＧＷ２間転送における転送先ＧＷ２の決定に用いられるパケット種別と、該パケット種別において転送先ＧＷ２の決定に用いられるＭＳ５またはセッションの識別子の値の情報を取得する。ここで、パケット種別ＡとＭＳ５またはセッションの識別子の値は、この要求に含まれているか、または、ＧＷ２により把握されている。
ここで、ＧＷ２間転送の要求発生の契機としては、例えば、ＩＦインタフェース部２１、またはＧＷインタフェース部２２、またはＥＭインタフェース部２３で受信したパケットのヘッダ解析の結果等からＧＷ２に要求される処理の中にＧＷ２間転送が含まれていることを契機としてもよいし、ＧＷ２の処理部２５が管理しているあるカウンタの閾値超過やあるタイマの満了等に対応して要求される処理の中にＧＷ２間転送が含まれていることを契機としてもよいし、前記図２５の処理例における識別子の割当通知を示すパケットが作成されたことを契機としてもよいし、前記図２６の処理例におけるテーブル２４１の各エントリの割り当て済みフラグ情報の通知パケットが作成されたことを契機としてもよい。
【００７８】
また、ステップＳ２３１で要求されたＧＷ２間転送における転送先ＧＷ２の決定に用いられるパケット種別と、該パケット種別において転送先ＧＷ２の決定に用いられるＭＳ５またはセッションの識別子の値の情報は、例えば、ＩＦインタフェース部２１、またはＧＷインタフェース部２２、またはＥＭインタフェース部２３で受信したパケットのヘッダ解析の結果等から取得してもよい。また、該情報取得の別の例として、前記図２５の処理例における識別子の割当通知を示すパケットの作成時に、ステップＳ２０１で受信したパケットに対して、前記図２４の処理例におけるステップＳ６０１のＩＦ６のパケット種別判定と同様のパケット種別判定をＧＷ２の処理部２５で実施することで、ＩＦ６で転送先ＧＷ２を決定するためのパケット種別と、該パケット種別において転送先ＧＷ２の決定に用いられるＭＳ５またはセッションの識別子の値を取得した情報としてもよい。また、該情報取得の別の例として、前記図２６の処理例におけるテーブル２４１の各エントリの割り当て済みフラグ情報の通知パケットの作成時に、テーブル２４１の削除したエントリに対応する、パケット種別と該パケット種別におけるＭＳ５またはセッションの識別子の値を取得した情報としてもよい。また、該情報取得の別の例として、異なるパケット種別間の連携処理を実施するために、ＧＷ２のメモリ部２４に保持しているテーブル２４３に基づいて、ステップＳ２３１で要求されたＧＷ２間転送における転送先ＧＷ２の決定に用いられるパケット種別と、該パケット種別において転送先ＧＷ２の決定に用いられるＭＳ５またはセッションの識別子の値を取得した情報としてもよい。例えば、ＧＷ２のメモリ部２４に保持しているテーブル２４３が図１８のように管理されていて、かつステップＳ２３１で要求されたＧＷ２間転送が「パケット種別Ａの識別子に『１』が割り当てられているセッションについて、該セッションにおけるパケット種別ＣのパケットをＩＦ６から転送先として選択されているＧＷ２に対するＧＷ２間転送」である場合、ＧＷ２の処理部２５は、パケット種別Ａの識別子の割り当て値が「１」であることを条件として、テーブル２４３を検索し、ヒットしたエントリ（図１８の例では、エントリＩＤが「＃１」のエントリ）のパケット種別Ｃの識別子の割り当て値を抽出することで、ＧＷ２間転送の転送先ＧＷ２を決定するためのパケット種別が「Ｃ」で、該パケット種別における識別子の割り当て値が「１０１」との情報を取得する。なお、ＧＷ２の処理部２５における、テーブル２４３の作成処理例については、別途図２８にて後述する。
【００７９】
ステップＳ２３２において、ＧＷ２の処理部２５は、ステップＳ２３１で取得した、ＧＷ２間転送における転送先ＧＷ２の決定に用いられるパケット種別と、該パケット種別において転送先ＧＷ２の決定に用いられるＭＳ５またはセッションの識別子の値に基づいてメモリ部２４を検索し、ステップＳ２３１で要求されたパケット種別と識別子の値に対応するＭＳ５またはセッションについての要求内容に基づいた処理のために必要な関連情報を自ＧＷで保持していないか判定する。なお、本ステップは、ステップＳ２３１の後に実施する代わりに、ステップＳ２３４Ｎにおけるテーブル２４４の検索の結果、対応するエントリがなかった場合、または転送先のＧＷ２として自ＧＷ２が選択された場合の処理として実施してもよい。例えば、ＧＷ２のメモリ部２４に保持しているテーブル２４３が図１８のように管理されていて、かつステップＳ２３１で要求されたＧＷ２間転送が「パケット種別Ａの識別子に『１』が割り当てられているセッションについて、該セッションにおけるパケット種別ＣのパケットをＩＦ６から転送先として選択されているＧＷ２に対するＧＷ２間転送」である場合、ＧＷ２の処理部２５は、ステップＳ２３１で取得した、ＧＷ２間転送の転送先ＧＷ２を決定するためのパケット種別「Ｃ」と、該パケット種別における識別子の割り当て値「１０１」に対応するＭＳ５またはセッションの情報を自ＧＷのメモリ部２４で保持していないか検索する。
【００８０】
ステップＳ２３２における検索の結果、対応する処理のために必要な関連情報を自ＧＷのメモリ部２４で保持していた場合、ＧＷ２の処理部２５は、ステップＳ２３３Ｙで、ＧＷ２間転送処理は不要と判定し、ステップＳ２３２の検索でヒットした情報と、ステップＳ２３１の要求内容に基づいた処理を実施する。ここで、ステップＳ２３１の要求内容に基づいた処理とは、例えば、ステップＳ２３１のＧＷ２間転送要求の発生契機がＩＦインタフェース部２１、またはＧＷインタフェース部２２、またはＥＭインタフェース部２３から受信したパケットのヘッダ解析の結果からＧＷ２に要求される処理に含まれていることだった場合、例えば、該パケットのヘッダ解析の結果等に基づいて、ＧＷ２に事前設定された判定ロジックにしたがって、パケットの作成および送信等の処理内容を決定してもよい。また、例えば、ステップＳ２３１のＧＷ２間転送要求の発生契機がＧＷ２の処理部２５が管理しているあるカウンタの閾値超過やあるタイマの満了等に対応して要求される処理の中にＧＷ２間転送が含まれていることだった場合、例えば、閾値超過したカウンタの種類や満了したタイマの種類等に基づいて、ＧＷ２に事前設定された判定ロジックにしたがって、パケットの作成および送信等の処理内容を決定してもよい。
【００８１】
ステップＳ２３２における検索の結果、対応する処理のために必要な関連情報を自ＧＷのメモリ部２４で保持していなかった場合、ＧＷ２の処理部２５は、ステップＳ２３４Ｎで、ステップＳ２３１で取得した、ＧＷ２間転送における転送先ＧＷ２の決定に用いられるパケット種別と、該パケット種別において転送先ＧＷ２の決定に用いられるＭＳ５またはセッションの識別子の値に基づいて、メモリ部２４に保持しているテーブル２４４を検索し、パケットの転送先となるＧＷ２を決定する。例えば、ＧＷ２のメモリ部２４に保持しているテーブル２４４が図１９のように管理されていて、かつステップＳ２３１で要求されたＧＷ２間転送が「パケット種別Ａの識別子に『１』が割り当てられているセッションについて、該セッションにおけるパケット種別ＣのパケットをＩＦ６から転送先として選択されているＧＷ２に対するＧＷ２間転送」である場合、ＧＷ２の処理部２５は、ステップＳ２３１で取得したＧＷ２間転送の転送先ＧＷ２を決定するためのパケット種別「Ｃ」と、該パケット種別における識別子の割り当て値「１０１」に基づいて、テーブル２４４を検索し、対応する転送先ＧＷ２の識別子「ＧＷ＃２」をテーブル２４４から抽出する。ここで、ステップＳ２３１で要求されたＧＷ２間転送が「パケット種別Ａの識別子に『１』が割り当てられているセッションについて、該セッションにおけるパケット種別ＣのパケットをＩＦ６から転送先として選択されているＧＷ２に対するＧＷ２間転送」であるか否かをＧＷ２の処理部２５が判定する方法としては、例えば、ステップＳ２３１のＧＷ２間転送要求の発生契機がＩＦインタフェース部２１、またはＧＷインタフェース部２２、またはＥＭインタフェース部２３から受信したパケットのヘッダ解析の結果からＧＷ２に要求される処理に含まれていることだった場合、例えば、該パケットのヘッダ解析の結果等に基づいて、ＧＷ２に事前設定された判定ロジックにしたがって判定してもよい。また、例えば、ステップＳ２３１のＧＷ２間転送要求の発生契機がＧＷ２の処理部２５が管理しているあるカウンタの閾値超過やあるタイマの満了等に対応して要求される処理の中にＧＷ２間転送が含まれていることだった場合、例えば、閾値超過したカウンタの種類や満了したタイマの種類等に基づいて、ＧＷ２に事前設定された判定ロジックにしたがって判定してもよい。
【００８２】
ステップＳ２３５において、ＧＷ２の処理部２５は、ＧＷインタフェース部２２から、ステップＳ２３４Ｎで決定したパケットの転送先となるＧＷ２宛てのパケットを送信する。このとき、ＧＷ２の処理部２５は、ステップＳ２３１で受信したパケットをそのまま転送してもよいし、ヘッダの挿入／削除、特定のフィールドの書き換え等のフォーマット変換を実施してから転送してもよいし、新規にパケットを作成してから転送してもよい。例えば、ＧＷ２のメモリ部２４に保持しているテーブル２４５が図２０のように管理されている場合、ＧＷ２の処理部２５は、ステップＳ２３４Ｎで転送先として決定したＧＷ２の識別子と対応する該ＧＷ２のＭＡＣアドレスおよびＩＰアドレスをテーブル２４５から検索し、送信するパケットのＥｔｈｅｒヘッダの宛先ＭＡＣアドレスにテーブル２４５から抽出したＧＷ２のＭＡＣアドレスを設定してもよい。さらに、送信するパケットのＩＰヘッダにテーブル２４５から抽出したＧＷ２のＩＰアドレスを設定するか、もしくは送信するパケットのＥｔｈｅｒヘッダとＩＰヘッダの間に、テーブル２４５から抽出したＧＷ２のＩＰアドレスを宛先に設定したＯｕｔｅｒ  ＩＰヘッダを設定し、チェックサム等のフィールドの値を適切な値に更新してもよい。また、例えば、ＧＷ２の処理部２５は、課金機能において、パケット種別毎に紐づく情報を連携させて処理させたい情報として、自身が保持するＵＬ方向のＵ−Ｐｌａｎｅパケットの送信バイト数等の課金カウントが閾値に達したことを示す情報と、転送先ＧＷ２に期待する処理「課金サーバへ課金カウント情報の通知」を示す情報を、転送先となるＧＷ２宛てのパケットに設定し、転送先となるＧＷ２が保持するＤＬ方向のＵ−Ｐｌａｎｅパケットの送信バイト数等の課金カウント情報と連携させて、転送先となるＧＷ２が、ＧＷ２間転送パケットで受信したＵＬ方向のＵ−Ｐｌａｎｅパケットの送信バイト数等の課金カウントと、転送先となるＧＷ２が保持するＤＬ方向のＵ−Ｐｌａｎｅパケットの送信バイト数等の課金カウント情報の双方を含む課金サーバへの送信パケットを生成して、課金サーバへ送信できるようにしてもよい。
【００８３】
＜動作処理：ＧＷ２におけるパケット種別間のＭＳ５またはセッションの識別子紐づけテーブルの作成＞
以下に、ＧＷ２におけるパケット種別間のＭＳ５またはセッションの識別子紐づけテーブル２４３の作成処理の一例を示す。
【００８４】
（テーブル２４３の更新要求パケットの送信側ＧＷ２の処理）
図２８に、ＧＷ２におけるテーブル２４３の更新要求パケットの送信処理の一例を示す。
ＧＷ２の処理部２５は、ＭＳ５またはセッションの識別子の値の新規割り当て、または既存割り当て値の更新、既存割り当て値の解放の要求が発生した場合、ステップＳ２４１において、前記の変更要求の対象となるＭＳ５またはセッションの識別子と、同じＭＳ５またはセッションに対応するエントリをテーブル２４３から検索し、該エントリの中で識別子が割り当てられているパケット種別とその識別子を全て抽出する。
ここで、ＭＳ５またはセッションの識別子の値の新規割り当て、または既存割り当て値の更新、既存割り当て値の解放の要求発生の契機としては、例えば、ＩＦインタフェース部２１、またはＧＷインタフェース部２２、またはＥＭインタフェース部２３で受信したパケットのヘッダ解析の結果等からＧＷ２に要求される処理の中にＭＳ５またはセッションの識別子の値の新規割り当て、または既存割り当て値の更新、既存割り当て値の解放が含まれていることを契機としてもよいし、ＧＷ２の処理部２５が管理しているあるカウンタの閾値超過やあるタイマの満了等に対応して要求される処理の中にＭＳ５またはセッションの識別子の値の新規割り当て、または既存割り当て値の更新、既存割り当て値の解放が含まれていることを契機としてもよい。
【００８５】
また、ステップＳ２４１で抽出する「該エントリの中で識別子が割り当てられているパケット種別とその識別子」とは、前記要求がＭＳ５またはセッションの識別子の値の新規割り当ての場合は該割り当て対象となるパケット種別とその識別子を含み、前記要求がＭＳ５またはセッションの識別子の値の既存割り当て値の更新の場合は該割り当て対象となるパケット種別とその更新後の識別子の値を含む。例えば、ＧＷ２のメモリ部２４に保持しているテーブル２４３が図１８のように管理されていて、かつＧＷ２の識別子が「ＧＷ２＃１」のＧＷ２において、パケット種別Ａの識別子に「１」が割り当てられているセッションに対してステップＳ２４１でパケット種別Ｄの識別子に「２」を新規に割り当てる要求が発生した場合、ＧＷ２の処理部２５は、パケット種別Ａの識別子に「１」が割り当てられているセッションに対応するエントリをテーブル２４３から検索し、該エントリ（図１８の例では、エントリＩＤが「＃１」のエントリ）からパケット種別Ａの識別子「１」、パケット種別Ｂの識別子「１」、パケット種別Ｃの識別子「１０１」等の、パケット種別とその識別子の値を抽出し、さらに、前記要求がＭＳ５またはセッションの識別子の値の新規割り当てであることから、該割り当て対象となるパケット種別とその更新後の識別子の値として、パケット種別Ｄの識別子「２」を前記要求から抽出する。
【００８６】
ステップＳ２４２において、ＧＷ２の処理部２５は、ステップＳ２４１で抽出した各パケット種別とその識別子に対して、それぞれ前記図２７の処理例におけるステップＳ２３２と同様の方法で、ステップＳ２４１で要求されたパケット種別と識別子の値に対応するＭＳ５またはセッションの情報を自ＧＷで保持していないか判定し、該検索の結果として対応する情報を自ＧＷのメモリ部２４で保持していた場合には、前記図２７の処理例におけるステップＳ２３３Ｙと同様の方法で、該検索でヒットした情報と、ステップＳ２４１の要求内容に基づいた処理を実施し、該検索の結果として対応する情報を自ＧＷのメモリ部２４で保持していなかった場合には、前記図２７の処理例におけるステップＳ２３４Ｎと同様の方法で、ステップＳ２４１で取得した、ＧＷ２間転送における転送先ＧＷ２の決定に用いられるパケット種別と、該パケット種別において転送先ＧＷ２の決定に用いられるＭＳ５またはセッションの識別子の値に基づいて、メモリ部２４に保持しているテーブル２４４を検索して、パケットの転送先となるＧＷ２を決定し、前記図２７の処理例におけるステップＳ２３５と同様の方法で、ＧＷインタフェース部２２から、決定したパケットの転送先となるＧＷ２宛てのパケットを送信する。なお、ＧＷ２宛てのパケットを送信する場合、ステップＳ２４１で抽出したパケット種別とその識別子の情報、およびＧＷ２間転送先のＧＷ２の決定に使用されたパケット種別の情報を含む、テーブル２４３の更新要求を示すパケットを作成して、転送先のＧＷ２へ送信する。例えば、ＧＷ２のメモリ部２４に保持しているテーブル２４３が図１８のように管理されていて、かつＧＷ２のメモリ部２４に保持しているテーブル２４４が図１９のように管理されていて、かつＧＷ２のメモリ部２４に保持しているテーブル２４５が図２０のように管理されていて、かつＧＷ２の識別子が「ＧＷ２＃１」のＧＷ２において、パケット種別Ａの識別子に「１」が割り当てられているセッションに対してステップＳ２４１でパケット種別Ｄの識別子に「２」を新規に割り当てる要求が発生した場合、ＧＷ２の処理部２５は、ステップＳ２４１で抽出されたパケット種別とその識別子の値のそれぞれに対してステップＳ２３２〜Ｓ２３５と同様の処理を適用することで、パケット種別Ａの識別子「１」と、パケット種別Ｂの識別子「１」の情報を自ＧＷ２のメモリ部２４で保持していることと、テーブル２４４の検索結果からパケット種別Ｃの識別子「１０１」と、パケット種別Ｄの識別子「２」の情報は、ＧＷ２の識別子が「ＧＷ＃２」のＧＷ２へＧＷ２間転送すべきであることを判定し、ステップＳ２４１で抽出したパケット種別とその識別子の情報、およびＧＷ２の識別子が「ＧＷ＃２」のＧＷ２をＧＷ２間転送先として決定する際に使用されたパケット種別の情報「Ｃ」または「Ｄ」を含む、テーブル２４３の更新要求を示すパケットを作成し、テーブル２４５からＧＷ２の識別子が「ＧＷ＃２」のＧＷ２のＭＡＣアドレスおよびＩＰアドレスを検索した結果を該テーブル２４３の更新要求を示すパケットに設定し、対応する転送先ＧＷ２へＧＷインタフェース部２２からパケットを送信する。
【００８７】
ステップＳ２４３において、ＧＷ２の処理部２５は、ステップＳ２４１で要求されたＭＳ５またはセッションの識別子の値の新規割り当て、または既存割り当て値の更新、既存割り当て値の解放に従い、ＧＷ２のメモリ部２４に保持しているテーブル２４３を更新する。例えば、ＧＷ２のメモリ部２４に保持しているテーブル２４３が図１８のように管理されていて、かつステップＳ２４１で受信したテーブル２４３の更新要求を示すパケットに、パケット種別Ａの識別子「１」、パケット種別Ｂの識別子「１」、パケット種別Ｃの識別子「１０１」、パケット種別Ｄの識別子「２」の情報が設定されている場合、ＧＷ２の処理部２５は、パケット種別Ａの識別子に「１」が割り当てられているエントリを検索し、該エントリのパケット種別Ｄの識別子に対応する箇所を「２」に更新することで、テーブル２４３を図２１のように更新する。
【００８８】
（テーブル２４３の更新要求パケットの受信側ＧＷ２の処理）
図２９に、ＧＷ２におけるテーブル２４３の更新要求パケットの受信処理の一例を示す。
ＧＷ２の処理部２５は、ＧＷインタフェース部２２、またはＥＭインタフェース部２３でパケットを受信した場合、ステップＳ２５１において、受信パケットのヘッダ解析の結果等に基づいて、パケットのＣ−ＰｌａｎｅまたはＵ−Ｐｌａｎｅ、パケット種別およびパケットの送信元である対向装置の種類等から、該パケットがテーブル２４３の更新要求を示すパケットか否かを判定する。
ステップＳ２５１で該パケットがテーブル２４３の更新要求を示すパケットではないと判定された場合、ステップＳ２５２Ｎにおいて、ＧＷ２の処理部２５は、受信パケットの種別および設定内容に基づいて、個別に処理を実施する。
ステップＳ２５１で該パケットがテーブル２４３の更新要求を示すパケットであると判定された場合、ステップＳ２５３Ｙにおいて、ＧＷ２の処理部２５は、該パケットの要求内容に従って、ＧＷ２のメモリ部２４に保持しているテーブル２４３を更新する。例えば、ＧＷ２のメモリ部２４に保持しているテーブル２４３が図１８のように管理されていて、かつステップＳ２５１で受信したテーブル２４３の更新要求を示すパケットに、パケット種別Ａの識別子「１」、パケット種別Ｂの識別子「１」、パケット種別Ｃの識別子「１０１」、パケット種別Ｄの識別子「２」、およびＧＷ２間転送先のＧＷ２の決定に使用されたパケット種別「Ｃ」の情報が含まれる場合、ＧＷ２の処理部２５は、ステップＳ２５１で受信したテーブル２４３の更新要求を示すパケットからＧＷ２間転送先のＧＷ２の決定に使用されたパケット種別が「Ｃ」であることと、該パケット種別「Ｃ」の識別子の値が「１０１」であることを、該パケットから抽出し、パケット種別Ｃの識別子「１０１」のエントリをテーブル２４３から検索し、ヒットしたエントリがあれば、該エントリの各パケット種別の識別子の値をテーブル２４３の更新要求を示すパケットに含まれる値にそれぞれ更新し、ヒットしたエントリがなければ、テーブル２４３に新規エントリを追加し、該エントリの各パケット種別の識別子の値にテーブル２４３の更新要求を示すパケットに含まれる値をそれぞれ設定する。
【００８９】
＜動作処理：ＥＭ３における転送先ＧＷ２テーブルの作成＞
以下に、ＥＭ３における転送先ＧＷ２テーブル３３１の作成の処理の一例を示す。
ＥＭ３の処理部３４は、通信事業者のポリシーに基づいて、各ＭＳ５や各セッションに対応する転送先ＧＷ２の識別子をＥＭ３のメモリ部３３に保持しているテーブル３３１に登録する。例えば、ＥＭ３は、現在稼働中のＧＷ２に対して、ＧＷ２の処理スループット性能と、ＭＳ５またはセッションの数との比が、なるべく均等になるように転送先ＧＷ２の識別子を設定してもよい。ここで、ＧＷ２の処理スループット性能とは、ＧＷ２のハードウェア性能に基づく静的な値でもよいし、ＧＷ２の現在の処理負荷として取得したＣＰＵ使用率や送信スループットのピーク値や平均値等の情報に基づく動的な値でもよい。また、ＥＭ３は、ＧＷ２の処理スループット性能を示すパラメータを、ＧＷ２から直接取得してもよいし、ＥＭ３で取得している統計情報を基に算出してもよい。
【００９０】
例えば、ＥＭ３のメモリ部３３に保持しているテーブル３３１が図１０のように管理されていて、かつＥＭ３のメモリ部３３に保持しているテーブル３３２が図２２のように管理されていて、かつＥＭ３のメモリ部３３に保持しているテーブル３３３が図２３のように管理されている場合、ＥＭ３の処理部３４は、テーブル３３３から現在稼働中のＧＷ２の識別子を抽出し、抽出した現在稼働中の各ＧＷ２に対して、テーブル３３２のＧＷ２の処理スループット性能を示す値と、テーブル３３１のＭＳ５またはセッションの識別子のうち該ＧＷ２を転送先とする値の数の総和から、
（該ＧＷ２を転送先とする識別子の値の数の総和）／（該ＧＷ２の処理スループット性能）
の値を計算し、その値が各ＧＷ２でなるべく均等になるように、転送先ＧＷ２の識別子を割り当ててもよい。
【００９１】
また、ＥＭ３は、ＥＭ３に設定された条件を満たした場合などを契機として、テーブル３３１に新たなＭＳ５またはセッションの識別子の条件や転送先ＧＷ２の情報を追加してもよいし、テーブル３３１に既に登録されているＭＳ５またはセッションの識別子の条件や転送先ＧＷ２の情報を更新してもよいし、テーブル３３１に既に登録されているＭＳ５またはセッションの識別子の条件や転送先ＧＷ２の情報を削除してもよい。例えば、ＥＭ３は、あるＧＷ２の障害または輻輳の発生または復旧を検出したことや、各ＧＷ２の処理負荷の最大値と最小値の差が閾値以上に達したことを検出したことや、ＧＷ２やＩＦ６からテーブル３３１の更新要求を示すパケットを受信したこと等を契機として、テーブル３３１に既に登録されている転送先ＧＷ２の情報を更新してもよい。
【００９２】
＜動作処理：ＥＭ３における自ＧＷ２が選択されるＭＳ５またはセッションの識別子の値を保持するテーブルの作成＞
図３０に、ＥＭ３における自ＧＷ２が選択されるＭＳ５またはセッションの識別子の値テーブル３３４の作成の処理の一例を示す。
ＥＭ３の処理部３４は、ステップＳ３０１において、ＥＭ３のメモリ部３３に保持しているテーブル３３１のエントリの中で、あるＧＷ２に対して、該ＧＷ２を転送先とするパケット種別とその識別子の組を抽出する。例えば、ＥＭ３のメモリ部３３に保持しているテーブル３３１が図１０のように管理されている場合、ＧＷ２の識別子が「ＧＷ２＃１」のＧＷ２に対して、ＧＷ２の識別子が「ＧＷ２＃１」であることを条件としてテーブル３３１を検索し、該条件にヒットしたエントリに含まれるパケット種別とその識別子の組として、パケット種別Ａの識別子の値「１〜１０」、パケット種別Ｂの識別子の値「１〜１００」、パケット種別Ｂの識別子の値「２０１〜３００」、パケット種別Ｃの識別子の値「１〜１００」等を抽出する。
ステップＳ３０２において、ＥＭ３の処理部３４は、ステップＳ３０１で抽出したＧＷ２を転送先とするパケット種別とその識別子の組の情報に基づいて、該ＧＷにおける自ＧＷ２が選択されるＭＳ５またはセッションの識別子の値を保持するテーブル３３４を作成する。例えば、ＥＭ３のメモリ部３３に保持しているテーブル３３１が図１０のように管理されている場合、ステップＳ３０１で抽出したパケット種別とその識別子の組をテーブル３３４のエントリとして設定し、図１３に示すＧＷ２の識別子が「ＧＷ２＃１」のＧＷ２に対するテーブル３３４を作成する。
【００９３】
＜動作処理：ＥＭ３におけるＧＷ２間転送先決定テーブルの作成＞
図３１に、ＥＭ３におけるＧＷ２間転送先決定テーブル３３５の作成の処理の一例を示す。
ＥＭ３の処理部３４は、ステップＳ３１１において、ＥＭ３のメモリ部３３に保持しているテーブル３３１のエントリの中で、あるＧＷ２に対して、該ＧＷ２を転送先とするエントリを抽出する。例えば、ＥＭ３のメモリ部３３に保持しているテーブル３３１が図１０のように管理されている場合、ＧＷ２の識別子が「ＧＷ２＃１」のＧＷ２に対して、ＧＷ２の識別子が「ＧＷ２＃１」であることを条件としてテーブル３３１を検索し、該条件にヒットしたエントリとして、パケット種別Ａの識別子の値「１〜１０」、パケット種別Ｂの識別子の値「１〜１００」、パケット種別Ｂの識別子の値「２０１〜３００」、パケット種別Ｃの識別子の値「１〜１００」等のエントリを抽出する。
ステップＳ３１２において、ＥＭ３の処理部３４は、ＥＭ３のメモリ部３３に保持しているテーブル３３１の全エントリのうち、ステップＳ３１１で抽出したＧＷ２を転送先とするエントリのみを削除したテーブルを作成し、該ＧＷにおけるテーブル３３５とする。例えば、ＥＭ３のメモリ部３３に保持しているテーブル３３１が図１０のように管理されている場合、テーブル３３１のエントリからステップＳ３１１で抽出したエントリを削除したテーブルとして、図１９に示すＧＷ２の識別子が「ＧＷ２＃１」のＧＷ２に対するテーブル３３５を作成する。
【００９４】
＜動作処理：ＥＭ３におけるＧＷ２間転送先アドレステーブルの作成＞
図３２に、ＥＭ３におけるＧＷ２間転送先アドレステーブル３３７の作成の処理の一例を示す。
ＥＭ３の処理部３４は、ステップＳ３２１において、ＥＭ３のメモリ部３３に保持しているテーブル３３６のエントリの中で、あるＧＷ２に対して、該ＧＷ２を転送先とするエントリを抽出する。例えば、ＥＭ３のメモリ部３３に保持しているテーブル３３６が図１１のように管理されている場合、ＧＷ２の識別子が「ＧＷ２＃１」のＧＷ２に対して、ＧＷ２の識別子が「ＧＷ２＃１」であることを条件としてテーブル３３６を検索し、該条件にヒットしたエントリとして、ＧＷ２のＭＡＣアドレスの値「Ｍ＃１」、ＧＷ２のＩＰアドレスの値「Ｉ＃１」等のエントリを抽出する。
ステップＳ３２２において、ＥＭ３の処理部３４は、ＥＭ３のメモリ部３３に保持しているテーブル３３６の全エントリのうち、ステップＳ３２１で抽出したＧＷ２を転送先とするエントリのみを削除したテーブルを作成し、該ＧＷにおけるテーブル３３７とする。例えば、ＥＭ３のメモリ部３３に保持しているテーブル３３６が図１１のように管理されている場合、テーブル３３６のエントリからステップＳ３２１で抽出したエントリを削除したテーブルとして、図２０に示すＧＷ２の識別子が「ＧＷ２＃１」のＧＷ２に対するテーブル３３７を作成する。
【００９５】
＜動作処理：本システムにおけるＩＦ６とＧＷ２の転送テーブル設定共通化＞
以下に、本システムにおけるＩＦ６とＧＷ２の転送テーブル設定共通化の処理の一例を示す。
（ＩＦ６とＧＷ２の転送テーブルの初期設定）
図３３に、本システムにおけるＩＦ６とＧＷ２の転送テーブルの初期設定の処理の一例を示す。本処理は、例えば、本システムの起動時等に実施される。
ＥＭ３の処理部３４は、ステップＳ３３１において、テーブル３３１を含むテーブル３３１の初期設定通知パケット、およびテーブル３３６を含むテーブル３３６の初期設定通知パケットを作成し、ＩＦインタフェース部３１からＩＦ６へ送信する。
ここで、テーブル３３１は、例えば、前記のＥＭ３における転送先ＧＷ２テーブル３３１の作成処理例にしたがって、ＥＭ３の処理部３４が作成してもよい。なお、該パケットを受信したＩＦ６は、受信したテーブル３３１をメモリ部６６のテーブル６６１として設定し、該テーブル６６１をパケット転送処理に適用する。
【００９６】
また、ここで、テーブル３３６は、例えば、前記の図３２の処理例にしたがって、ＥＭ３の処理部３４が作成してもよい。なお、該パケットを受信したＩＦ６は、受信したテーブル３３６をメモリ部６６のテーブル６６２として設定し、該テーブル６６２をパケット転送処理に適用する。例えば、ＥＭ３のメモリ部３３に保持しているテーブル３３６が図１１のように管理されている場合、テーブル３３６の初期設定通知パケットを受信したＩＦ６は、メモリ部６６のテーブル６６２を図１１のように設定し、該テーブル６６２をパケット転送処理に適用する。
なお、テーブル３３１の初期設定通知パケットと、テーブル３３６の初期設定通知パケットは、一つのパケットで兼用してもよい。
ステップＳ３３２において、ＥＭ３の処理部３４は、ＧＷ２毎に、テーブル３３４を含むテーブル３３４の初期設定通知パケット、およびテーブル３３５を含むテーブル３３５の初期設定通知パケット、およびテーブル３３７を含むテーブル３３７の初期設定通知パケットを作成し、ＧＷインタフェース部３２から該パケットの対象となるＧＷ２へ送信する。
【００９７】
ここで、テーブル３３４は、例えば、前記の図３０の処理例にしたがって、ＥＭ３の処理部３４が作成してもよい。また、テーブル３３４に関連する各識別子の割り当て済みフラグ情報をＥＭ３で保持している場合は、その情報も併せて該パケットに設定してＧＷ２へ通知してもよい。なお、該パケットを受信したＧＷ２は、受信したテーブル３３４をメモリ部２４のテーブル２４２として設定し、該テーブル２４２をパケット転送処理に適用する。例えば、ＥＭ３のメモリ部３３に保持しているテーブル３３４が図１３のように管理されている場合、テーブル３３４の初期設定通知パケットを受信したＧＷ２は、メモリ部２４のテーブル２４２を図１３のように設定し、該テーブル２４２をパケット転送処理に適用する。
ここで、テーブル３３５は、例えば、前記の図３１の処理例にしたがって、ＥＭ３の処理部３４が作成してもよい。なお、該パケットを受信したＧＷ２は、受信したテーブル３３５をメモリ部２４のテーブル２４４として設定し、該テーブル２４４をパケット転送処理に適用する。例えば、ＥＭ３のメモリ部３３に保持しているテーブル３３５が図１９のように管理されている場合、テーブル３３５の初期設定通知パケットを受信したＧＷ２は、メモリ部２４のテーブル２４４を図１９のように設定し、該テーブル２４４をパケット転送処理に適用する。なお、テーブル３３４の初期設定通知パケットと、テーブル３３５の初期設定通知パケットと、テーブル３３７の初期設定通知パケットは、一つのパケットで兼用してもよい。
ここで、テーブル３３７は、例えば、前記の図３２の処理例にしたがって、ＥＭ３の処理部３４が作成してもよい。なお、該パケットを受信したＧＷ２は、受信したテーブル３３７をメモリ部２４のテーブル２４５として設定し、該テーブル２４５をパケット転送処理に適用する。例えば、ＥＭ３のメモリ部３３に保持しているテーブル３３７が図２０のように管理されている場合、テーブル３３７の初期設定通知パケットを受信したＧＷ２は、メモリ部２４のテーブル２４５を図２０のように設定し、該テーブル２４５をパケット転送処理に適用する。
なお、テーブル３３４の初期設定通知パケットと、テーブル３３５の初期設定通知パケットと、テーブル３３７の初期設定通知パケットは、一つのパケットで兼用してもよい。
なお、本システムにおけるＩＦ６とＧＷ２の転送テーブルの初期設定の処理の別の例として、上記処理例の各ステップまたは各ステップ内の処理の順序を入れ替えて処理してもよいし、上記処理例の各ステップまたは各ステップ内の処理を並列で処理してもよい。
【００９８】
（ＩＦ６とＧＷ２の転送テーブルの設定更新）
図３４に、本システムにおけるＩＦ６とＧＷ２の転送テーブルの設定更新の処理の一例を示す。
ＥＭ３の処理部３４は、テーブル３３１の設定更新の要求が発生した場合、ステップＳ３４１において、テーブル３３１の更新後の設定内容に基づいて、ＧＷ２毎にテーブル３３４およびテーブル３３５を作成する。ここで、テーブル３３４は、例えば、前記の図３０の処理例にしたがって、ＥＭ３の処理部３４が作成してもよい。また、ここで、テーブル３３５は、例えば、前記の図３１の処理例にしたがって、ＥＭ３の処理部３４が作成してもよい。
また、ここで、テーブル３３１の設定更新の要求の契機としては、例えば、前記のＥＭ３における転送先ＧＷ２テーブル３３１の作成処理例に記載したように、ＥＭ３は、ＥＭ３に設定された条件を満たした場合などを契機として、転送先ＧＷ２テーブル３３１に新たなＭＳ５またはセッションの識別子の条件や転送先ＧＷ２の情報を追加してもよいし、転送先ＧＷ２テーブル３３１に既に登録されているＭＳ５またはセッションの識別子の条件や転送先ＧＷ２の情報を更新してもよいし、転送先ＧＷ２テーブル３３１に既に登録されているＭＳ５またはセッションの識別子の条件や転送先ＧＷ２の情報を削除してもよい。例えば、ＥＭ３は、あるＧＷ２の障害または輻輳の発生または復旧を検出したことや、各ＧＷ２の処理負荷の最大値と最小値の差が閾値以上に達したことを検出したことや、ＧＷ２やＩＦ６から転送先ＧＷ２テーブル３３１の更新要求を示すパケットを受信したこと等を契機として、転送先ＧＷ２テーブル３３１に既に登録されている転送先ＧＷ２の情報を更新してもよい。
【００９９】
なお、ステップＳ３４１で、テーブル３３４およびテーブル３３５の作成対象とするＧＷ２は、テーブル３３１の更新の影響を受けるＧＷ２だけとしてもよい。
また、ステップＳ３４１において、ＥＭ３の処理部３４は、テーブル３３６の設定更新の要求が発生した場合、テーブル３３６の更新後の設定内容に基づいて、ＧＷ２毎にテーブル３３７を作成する。ここで、テーブル３３７は、例えば、前記の図３２の処理例にしたがって、ＥＭ３の処理部３４が作成してもよい。
なお、ステップＳ３４１で、テーブル３３７の作成対象とするＧＷ２は、テーブル３３６の更新の影響を受けるＧＷ２だけとしてもよい。
ステップＳ３４２において、ＥＭ３の処理部３４は、テーブル３３１の設定更新内容を含むテーブル３３１の設定更新通知パケットを作成し、ＩＦインタフェース部３１からＩＦ６へ送信する。なお、該パケットを受信したＩＦ６は、受信したパケットに含まれるテーブル３３１の設定更新内容に基づいて、メモリ部６６のテーブル６６１の設定を更新し、該テーブル６６１をパケット転送処理に適用する。例えば、ＥＭ３のメモリ部３３に保持しているテーブル３３１が図１０のように設定更新された場合、テーブル３３１の設定更新通知パケットを受信したＩＦ６は、メモリ部６６のテーブル６６１を図１０のように設定更新し、該テーブル６６１をパケット転送処理に適用する。なお、本処理は、ステップＳ３４１で、テーブル３３１の設定が更新されない場合は省略してもよい。
【０１００】
また、ステップＳ３４２において、ＥＭ３の処理部３４は、テーブル３３６の設定更新内容を含むテーブル３３６の設定更新通知パケットを作成し、ＩＦインタフェース部３１からＩＦ６へ送信する。なお、該パケットを受信したＩＦ６は、受信したパケットに含まれるテーブル３３６の設定更新内容に基づいて、メモリ部６６のテーブル６６２の設定を更新し、該テーブル６６２をパケット転送処理に適用する。例えば、ＥＭ３のメモリ部３３に保持しているテーブル３３６が図１１のように設定更新された場合、テーブル３３６の設定更新通知パケットを受信したＩＦ６は、メモリ部６６のテーブル６６２を図１１のように設定更新し、該テーブル６６２をパケット転送処理に適用する。なお、本処理は、ステップＳ３４１で、テーブル３３６の設定が更新されない場合は省略してもよい。
なお、テーブル３３１の設定更新通知パケットと、テーブル３３６の設定更新通知パケットは、一つのパケットで兼用してもよい。
【０１０１】
ステップＳ３４３において、ＥＭ３の処理部３４は、ステップＳ３４１でテーブル３３４の更新対象としたＧＷ２毎に、テーブル３３４の設定更新内容を含むテーブル３３４の設定更新通知パケットを作成し、ＧＷインタフェース部３２から該パケットの対象となるＧＷ２へ送信する。また、テーブル３３４に関連する各識別子の割り当て済みフラグ情報をＥＭ３で保持している場合は、その情報も併せて該パケットに設定してＧＷ２へ通知してもよい。なお、該パケットを受信したＧＷ２は、受信したパケットに含まれるテーブル３３４の設定更新内容に基づいて、メモリ部２４のテーブル２４２の設定を更新し、該テーブル２４２をパケット転送処理に適用する。例えば、ＥＭ３のメモリ部３３に保持しているテーブル３３４が図１３のように設定更新された場合、テーブル３３４の設定更新通知パケットを受信したＧＷ２は、メモリ部２４のテーブル２４２を図１３のように設定更新し、該テーブル２４２をパケット転送処理に適用する。なお、本処理は、ステップＳ３４１で、テーブル３３４の設定が更新されない場合は省略してもよい。
【０１０２】
また、ステップＳ３４３において、ＥＭ３の処理部３４は、ステップＳ３４１でテーブル３３５の更新対象としたＧＷ２毎に、テーブル３３５の設定更新内容を含むテーブル３３５の設定更新通知パケットを作成し、ＧＷインタフェース部３２から該パケットの対象となるＧＷ２へ送信する。なお、該パケットを受信したＧＷ２は、受信したパケットに含まれるテーブル３３５の設定更新内容に基づいて、メモリ部２４のテーブル２４４の設定を更新し、該テーブル２４４をパケット転送処理に適用する。例えば、ＥＭ３のメモリ部３３に保持しているテーブル３３５が図１９のように設定更新された場合、テーブル３３５の設定更新通知パケットを受信したＧＷ２は、メモリ部２４のテーブル２４４を図１９のように設定し、該テーブル２４４をパケット転送処理に適用する。なお、本処理は、ステップＳ３４１で、テーブル３３５の設定が更新されない場合は省略してもよい。
【０１０３】
また、ステップＳ３４３において、ＥＭ３の処理部３４は、ステップＳ３４１でテーブル３３７の更新対象としたＧＷ２毎に、テーブル３３７の設定更新内容を含むテーブル３３７の設定更新通知パケットを作成し、ＧＷインタフェース部３２から該パケットの対象となるＧＷ２へ送信する。なお、該パケットを受信したＧＷ２は、受信したパケットに含まれるテーブル３３７の設定更新内容に基づいて、メモリ部２４のテーブル２４５の設定を更新し、該テーブル２４５をパケット転送処理に適用する。例えば、ＥＭ３のメモリ部３３に保持しているテーブル３３７が図２０のように設定更新された場合、テーブル３３７の設定更新通知パケットを受信したＧＷ２は、メモリ部２４のテーブル２４５を図２０のように設定し、該テーブル２４５をパケット転送処理に適用する。なお、本処理は、ステップＳ３４１で、テーブル３３７の設定が更新されない場合は省略してもよい。
なお、テーブル３３４の設定更新通知パケットと、テーブル３３５の設定更新通知パケットと、テーブル３３７の設定更新通知パケットは、一つのパケットで兼用してもよい。
なお、本システムにおけるＩＦ６とＧＷ２の転送テーブルの設定更新の処理の別の例として、上記処理例の各ステップの順序または各ステップ内の処理を入れ替えて処理してもよいし、上記処理例の各ステップまたは各ステップ内の処理を並列で処理してもよい。
【０１０４】
３．実施例の効果
上述の説明から明らかなように、本実施例の通信システムは、無線または有線の通信システムにおいて、パケット処理装置が複数存在する場合において、選択装置がパケット毎に適切なパケット処理装置を選択する際に、前記の第一〜第三の要件（各ＧＷ２における処理負荷の均一性、かつ、同一ユーザまたは同一セッションに属するパケットに対する同一通信装置ＧＷ２の選択、かつ、選択装置ＩＦ６が保持できる転送テーブルのエントリ数の制限の要件）を満たし、かつ、異なるパケット種別間の連携処理を実現可能とする通信システム、通信制御方法および通信制御装置を提供することができる。
【０１０５】
４．付記
なお、本発明は上述した実施例に限定されるものではなく、様々な変形例が含まれる。上記した実施例は本発明を分かりやすく説明するために詳細に説明したのであり、必ずしも説明の全ての構成を備えるものに限定されものではない。
また、上記の各構成、機能、処理部、処理手段等は、それらの一部または全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリ、ハードディスク、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）等の記憶装置、または、ＩＣカード、ＤＶＤ等の記録媒体に置くことができるし、必要に応じてネットワーク等を介してダウンロードし、各種の記憶装置にインストールすることも可能である。
また、本発明は、例えば、無線または有線端末と送受信するパケットに対して輻輳制御を実施する通信システムに利用可能であり、ＧＷ、ＥＭ、ＢＳ、ＭＳ、ＩＦ、ＥＥおよびＳＳ等の各種の通信装置に適用することができる。
【符号の説明】
【０１０６】
１  サービス提供サーバ（ＳＳ）
２  パケット処理装置（ＧＷ）
２１  ＩＦインタフェース部
２２  ＧＷインタフェース部
２３  ＥＭインタフェース部
２４  メモリ部
２４１〜２４５  テーブル
２５  処理部
３  保守管理装置（ＥＭ）
３１  ＩＦインタフェース部
３２  ＧＷインタフェース部
３３  メモリ部
３３１〜３３７  テーブル
３４  処理部
４  基地局（ＢＳ）
５  端末（ＭＳ）
６  選択装置（ＩＦ）
６１  ＳＳインタフェース部
６２  ＢＳインタフェース部
６３  ＥＭインタフェース部
６４  ＧＷインタフェース部
６５  ＥＥインタフェース部
６６  メモリ部
６６１〜６６２  テーブル
６７  処理部
７  外部通信装置（ＥＥ）
【図１】
2015061155.tif 000003
【図２】
2015061155.tif 000004
【図３】
2015061155.tif 000005
【図４】
2015061155.tif 000006
【図５】
2015061155.tif 000007
【図６】
2015061155.tif 000008
【図７】
2015061155.tif 000009
【図８】
2015061155.tif 000010
【図９】
2015061155.tif 000011
【図１０】
2015061155.tif 000012
【図１１】
2015061155.tif 000013
【図１２】
2015061155.tif 000014
【図１３】
2015061155.tif 000015
【図１４】
2015061155.tif 000016
【図１５】
2015061155.tif 000017
【図１６】
2015061155.tif 000018
【図１７】
2015061155.tif 000019
【図１８】
2015061155.tif 000020
【図１９】
2015061155.tif 000021
【図２０】
2015061155.tif 000022
【図２１】
2015061155.tif 000023
【図２２】
2015061155.tif 000024
【図２３】
2015061155.tif 000025
【図２４】
2015061155.tif 000026
【図２５】
2015061155.tif 000027
【図２６】
2015061155.tif 000028
【図２７】
2015061155.tif 000029
【図２８】
2015061155.tif 000030
【図２９】
2015061155.tif 000031
【図３０】
2015061155.tif 000032
【図３１】
2015061155.tif 000033
【図３２】
2015061155.tif 000034
【図３３】
2015061155.tif 000035
【図３４】
2015061155.tif 000036