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