以下に図面を参照して、本発明にかかる経路選択装置、経路選択方法および通信システムの実施の形態を詳細に説明する。
(実施の形態1)
図1は、実施の形態1にかかる通信システムの一例を示す図である。図1に示すように、実施の形態1にかかる通信システム100は、移動端末101,102と、経路選択装置111,112と、通信先121,122と、を含む。
移動端末101は、たとえば基地局との間で無線通信を行うことにより、通信先121との間で通信を行う。経路選択装置111は、移動端末101と通信先121との間の通信を中継するとともに、移動端末101と通信先121との間の通信の中継経路を、経路選択装置111に接続された第一経路および第二経路から選択して切り替える。
具体的には、経路選択装置111は、第一経路のトラヒック量が所定量以上になると、以降の通信要求による移動端末101と通信先121との間の通信について第二経路を選択する。これにより、第一経路のトラヒック量が低減される。
移動端末102は、たとえば基地局との間で無線通信を行うことにより、通信先122との間で通信を行う。通信先122は、通信先121と同じ通信装置であってもよいし、通信先121と異なる通信装置であってもよい。
経路選択装置112は、移動端末102と通信先122との間の通信を中継するとともに、移動端末102と通信先122との間の通信の中継経路を、経路選択装置112に接続された第一経路および第二経路から選択して切り替える。
経路選択装置112に接続された第一経路は、経路選択装置111に接続された第一経路と同一の経路であってもよいし、経路選択装置111に接続された第一経路と異なる経路であってもよい。また、経路選択装置112に接続された第二経路は、経路選択装置111に接続された第二経路と同一の経路であってもよいし、経路選択装置111に接続された第二経路と異なる経路であってもよい。
経路選択装置112は、経路選択装置111と同様に、第一経路のトラヒック量が所定量以上になると、以降の通信要求による移動端末102と通信先122との間の通信について第二経路を選択する。これにより、第一経路のトラヒック量が低減される。
図1に示す例では、たとえば移動端末101が移動し、移動端末101と無線通信を行う基地局が切り替わることにより、移動端末101の通信を中継する装置が経路選択装置111から経路選択装置112へ切り替わる場合について説明する。このとき、経路選択装置111が移動端末101の通信について選択していた中継経路(第一経路または第二経路)は、経路選択装置112に引き継がれる。
具体的には、経路選択装置111が移動端末101の通信について第一経路を選択している状態で移動端末101がハンドオーバした場合は、ハンドオーバ先の経路選択装置112も、移動端末101の通信について第一経路を選択する。また、経路選択装置111が移動端末101の通信について第二経路を選択している状態で移動端末101がハンドオーバした場合は、ハンドオーバ先の経路選択装置112も、移動端末101の通信について第二経路を選択する。
経路選択装置111は、取得部131と、選択部132と、を備える。取得部131は、経路選択装置111(自装置)が中継中の移動端末101と通信先121との間の通信のハンドオーバ対象となる経路選択装置112(他の経路選択装置)における、中継経路(第一経路および第二経路)の選択状態を取得する。そして、取得部131は、取得した選択状態を選択部132へ通知する。
選択部132は、取得部131から通知された選択状態に応じて、第一経路のトラヒック量が所定量未満であっても、経路選択装置111(自装置)が中継中の移動端末101と通信先121との間の通信について第二経路を選択する。たとえば、選択部132は、経路選択装置112において第二経路が選択されている場合は、経路選択装置111の第一経路のトラヒック量が所定量未満であっても、移動端末101の通信について第二経路を選択する。
これにより、ハンドオーバ先の経路選択装置112が第一経路の輻輳により第二経路を選択している状態においては、ハンドオーバ元の経路選択装置111において第二経路を選択してからハンドオーバすることができる。これにより、経路選択装置112における第一経路をさらに輻輳させることを防止することができる。
(実施の形態2)
図2は、実施の形態2にかかるネットワークシステムの一例を示す図である。図2に示すように、実施の形態2にかかるネットワークシステム200は、LTE網210と、EPC網220と、IMS網230と、ISP網240(Internet)と、オフロードネットワーク251,252と、を含む。図2は、モバイル端末である移動端末261とISP網240のWebサーバ241との通信において、移動端末261が通信を維持した状態で基地局211のセルから基地局214のセルへ移動する場合の通信経路の変化の様子を示している。
LTE網210は無線アクセス網である。LTE網210は、基地局211〜214を含む。基地局211〜214のそれぞれは、たとえば“eNodeB(evolved Node B)”と呼ばれるLTE準拠の無線基地局装置である。
EPC網220はコア網である。EPC網220は、たとえば、第2世代(2G)、第3世代(3G)、第3.5世代などの3GPPによる無線アクセス網を収容することができる。第2世代の無線アクセス網には、たとえばGSM(Global System for Mobile communications)を適用することができる。なお、GSMは登録商標である。第3世代の無線アクセス網には、たとえばW−CDMA(Wideband Code Division Multiple Access)を適用することができる。第3.5世代の無線アクセス網には、たとえばHSPA(High Speed Packet Access)を適用することができる。
また、EPC網220は、CDMA2000、WiMAX(Wideband interoperability for Microwave Access)など非3GPPの無線アクセス網を収容することもできる。なお、WiMAXは登録商標である。
EPC網220は、P−GW221と、S−GW222,223と、MME224,225と、オフロードGW226〜228と、を含む。EPC網220はさらにPCRFなどのノードを含んでもよい。
P−GW221は、たとえば、ISP網240などのパケット網に対する接続ポイントとなる。P−GW221は、たとえば、移動端末261へのIPアドレスの払い出しやユーザ認証などを行う。また、P−GW221は、たとえば、PCRFの指示に従うQoS(Quality of Service)制御や課金データ生成などを行い、DHCP(Dynamic Host Configuration Protocol)サーバの機能を有してもよい。
S−GW222,223は、たとえば、ユーザデータなどのUプレーン(User Plane)のデータを扱う。また、S−GW222,223は、たとえば、3GPPの無線アクセス網のアンカポイントとして機能し、P−GW221との間でパケットデータの中継処理を行う。
MME224,225は、たとえば、ネットワーク制御に関するCプレーン(Control Plane)のデータを扱う。また、MME224,225は、たとえば、ベアラの確立および解放、移動端末261の位置登録、ハンドオーバなどの移動制御などを行う。さらに、MME224,225は、たとえば、加入者情報が登録されたHSS(Home Subscriber Server)と連携して移動端末261の認証を行う。
オフロードGW226〜228のそれぞれは、たとえば、オフロードトラヒックを制御するノードとして機能する。EPC網220では、1以上のオフロード装置が備えられている。オフロードGW226〜228は、たとえば、基地局211〜214とS−GW222,223との間に配置され、その数は適宜設定可能であり、基地局211〜214のそれぞれに設置することも可能である。
オフロードGW226〜228は、基地局211〜214とS−GW222,223との間で送受信されるCプレーンのパケットを傍受する。そして、オフロードGW226〜228は、基地局211〜214とS−GW222,223との間で送受信されるUプレーンのトラヒックのうち、オフロード対象のトラヒック(以下、「オフロードトラヒック」と称する場合がある)を決定する。
オフロードGW226〜228は、オフロード対象のトラヒックを決定した後、たとえば以下のようにしてオフロードトラヒックを送受信する。すなわち、オフロードGW226〜228は、移動端末261から送信されたアップリンク通信におけるオフロードトラヒックのUプレーンデータ(ユーザパケット)を分岐して、オフロードネットワーク251,252(図2ではオフロードネットワーク251)に転送する。
オフロードネットワーク251,252に転送されたトラヒックは、EPC網220を経由せずにISP網240に送信され、目的の通信相手(たとえばWebサーバ241)に到達する。一方、オフロードGW226〜228は、目的の通信相手から送信されたダウンリンク通信のオフロードトラヒックを、S−GW222,223から基地局211〜214へのトラヒックに合流させる。オフロードGW226〜228の構成例などについては後述する。
ISP網240には、Webサイト#aを提供するWebサーバ241とWebサイト#bを提供するWebサーバ242とが接続される。Webサーバ241,242は、移動端末261の通信相手(Correspondence Node)の例示であり、たとえば、TCP通信を行うものであれば端末装置であってもよい。
基地局211〜214は、オフロードGW226〜228を介してWebサーバ241,242からのデータを無線信号に変換して、移動端末261に送信する。また、基地局211〜214は、移動端末261から送信された無線信号をデータなどに変換してオフロードGW226〜228を介してWebサーバ241,242に送信する。
また、基地局211〜214は、オフロードGW226〜228を介して“S1−MMEインタフェース”と呼ばれるUプレーンのインタフェースによってMME224,225と接続される。また、基地局211〜214は、“S1−Uインタフェース”と呼ばれるインタフェースによってS−GW222,223と接続される。他方、S−GW222,223とMME224,225は“S11インタフェース”と呼ばれるCプレーンのインタフェースで接続される。また、S−GW222,223とP−GW221は“S5”と呼ばれるインタフェースによって接続される。さらに、基地局211〜214間は、“X2インタフェース”と呼ばれるインタフェースで接続される。
移動端末261は、たとえば、接続先の基地局を基地局211から基地局212、さらに基地局213へと順次切り替えることができる。移動端末261が接続先の基地局211〜214を切り替えることを、たとえば、ハンドオーバと称する場合がある。
なお、ハンドオーバには、異なるMME224,225間に跨って行われるS1ベースハンドオーバと、MME224,225のうちの同一のMMEの管理範囲内で行われるX2ベースハンドオーバがある。後述する動作においては、この2つのハンドオーバについて説明する。このようなハンドオーバによって、移動端末261から送信されるオフロードトラヒックを受信するオフロードGW226〜228も変更される。図2の例では、移動端末261は、接続先の基地局211〜214を基地局211から基地局212〜214に変更すると、オフロードGW226〜228もオフロードGW226からオフロードGW227,228に変更される。
図3は、ハンドオーバによる通信品質の一例を示す図である。図3において、図2に示した部分と同様の部分については同一の符号を付して説明を省略する。図3に示す例では、移動端末261は基地局214に接続している。図3に示す移動端末262,263は、移動端末261と異なる移動端末である。移動端末262は基地局212に接続している。移動端末263は基地局213に接続している。
オフロードGW226は、第一経路を通過する移動端末262,263のトラヒックのQoE(Quality of Experience:体感品質)を保証するために、移動端末262,263の新規セッションを第二経路へ迂回させている。
第一経路は、たとえばEPC網220を経由してISP網240へ接続する経路である。第二経路は、オフロードネットワーク251,252のいずれかを経由することにより、EPC網220を経由せずにISP網240へ接続する経路である。
一方、オフロードGW228は、第一経路が空いており、移動端末261のトラヒックが全て第一経路を経由している。この状態において、移動端末261が、オフロードGW226の配下の基地局211へハンドオーバしたとする。この場合は、移動端末261のトラヒックの経路がオフロードGW226においても第一経路となり、オフロードGW226の第一経路を通過する移動端末262,263のトラヒックおよび移動端末261のトラヒックのQoEを保証できなくなる場合がある。
図4は、地理的位置関係による経路切り替えの判断の一例を示す図である。図4は、移動端末261などのモバイル端末の所在位置(地理的位置関係)による経路切り替えの判断を示している。区域401は、第一経路のまま運用を継続するのが妥当であると判断できる区域である。区域402(βX)は、第一経路のままが良いか第二経路に切り替えるべきか判断に迷う区域である。区域403は、第一経路が輻輳し、第二経路へ切り替えた区域である。区域404(αX)は、第一経路の輻輳が確実と予想され、第二経路への切り替えが妥当と判断できる区域である。
たとえば、区域402において第一経路を使用している移動端末261が区域403へ移動すると、ハンドオーバによって区域403における第一経路のトラヒックが増加する。図4に示すように、モバイル網においては近隣の装置の輻輳状態がハンドオーバにより波及する。このため、地理的位置関係により、移動端末261の移動に伴う影響を考慮しての経路切り替えには多くの装置が関わる。
(各オフロードGWの構成)
つぎに、各オフロードGWの構成について説明する。
図5は、オフロードGWのハードウェア構成の一例を示す図である。オフロードGW226〜228のそれぞれは、たとえば図5に示すオフロードGW500(oGW)によって実現することができる。
オフロードGW500は、回線インタフェース501と、パケット転送制御部502、CPU503(Central Processing Unit:中央処理装置)と、記憶部504(メモリ)と、を備える。なお、図1に示した取得部131および選択部132は、たとえば回線インタフェース501、パケット転送制御部502およびCPU503によって実現することができる。
回線インタフェース501は、たとえば、オフロードGW226〜228と基地局211〜214およびオフロードGW226〜228とS−GW222,223を結ぶ各回線を収容する。また、回線インタフェース501は、たとえば、オフロードGW226〜228とMME224,225およびオフロードGW226〜228とオフロードネットワーク251,252を結ぶ各回線を収容する。
オフロードGW226〜228は、収容する回線数に応じた1以上の回線インタフェース501を備えている。なお、回線インタフェース501は、たとえば、汎用または専用の半導体回路で形成される。回線インタフェース501に適用する半導体回路には、たとえば、LSI(Large Scale Integration)やASIC(Application Specific Integrated Circuit)などを用いることができる。
パケット転送制御部502は、回線インタフェース501、CPU503および記憶部504と接続され、パケット転送処理を行う。パケット転送制御部502は、たとえば、ルーティングテーブルを有し、パケットの宛先アドレスに対応する出力ポートをルーティングテーブルから割り出し、出力ポートへ向けてパケットを出力する。
なお、パケット転送制御部502は、たとえば汎用または専用の半導体回路が搭載された回路チップとして形成することができる。パケット転送制御部502に適用する半導体回路には、たとえば、LSI、ASIC、PLD(Programmable Logic Device)またはDSP(Digital Signal Processor)などを用いることができる。
CPU503は、たとえば、パケット転送制御部502の制御を通じてオフロードGW226〜228全体の動作を制御する。CPU503は、コントローラ(制御部)の一例であり、プロセッサの一例でもある。なお、CPU503の機能を司るコントローラは、たとえば、専用または汎用のハードウェアチップの適用により実現される。
記憶部504は、たとえば、ROM(Read Only Memory)、RAM(Random Access Memory)、EEPROM(Electrically Erasable Programmable ROM)などの半導体メモリによって形成される。記憶部504は、CPU503の作業領域、CPU503によって実行される各種プログラムなどの格納領域などを提供する。
図6は、オフロードGWの機能的構成の一例を示す図である。図6に示すオフロードGW500(oGW)の各機能ブロックは、たとえば、CPU503が記憶部504に記憶されたプログラムを実行することにより実現される機能を示している。また、図6に示す各機能ブロックがハードウェアとしてオフロードGW500に備わっていてもよい。
図5に示したCPU503は、たとえば、振分ポイント600として機能する。振分ポイント600は、S1AP傍受部601と、X2AP傍受部602と、振分部603と、トラヒック制御部604と、トラヒック計測部605と、を含む。また、振分ポイント600は、ベアラ状態管理データ606と、オフロード条件データ607と、通信経路条件データ608と、周辺装置経路条件データ609と、自トラヒック経路条件データ610と、を含む。
図5に示した記憶部504には、ベアラ状態管理データ606、オフロード条件データ607、通信経路条件データ608、周辺装置経路条件データ609および自トラヒック経路条件データ610が記憶される。
図1に示した取得部131は、たとえば回線インタフェース501、パケット転送制御部502、S1AP傍受部601およびX2AP傍受部602によって実現することができる。図1に示した選択部132は、たとえば回線インタフェース501、パケット転送制御部502、振分部603、トラヒック制御部604およびトラヒック計測部605によって実現することができる。
図7は、オフロードGWにおける各部の動作の一例を示す図(その1)である。図7に示す例では、移動端末261が基地局214から基地局211へハンドオーバする場合(たとえば図3参照)について説明する。この場合は、基地局214がハンドオーバ元のソース基地局となり、基地局211がハンドオーバ先のターゲット基地局となる。
ハンドオーバに伴い、移動端末261の回線を収容するオフロードGWは、オフロードGW228からオフロードGW226へ変更される。この場合は、オフロードGW228がハンドオーバ元のソースオフロードGW(Source oGW)となり、オフロードGW226がハンドオーバ先のターゲットオフロードGW(Target oGW)となる。オフロードGW228とオフロードGW226の各構成は、図5および図6に示すオフロードGW500と同様である。
オフロードGW228のS1AP傍受部601は、基地局214とMME225の間のS1AP(S1 Application Protocol)に基づく制御パケットを傍受する。図7に示す例では、オフロードGW228のS1AP傍受部601は、対象となる移動端末261に対する通信回線の割り付けおよびハンドオーバの契機を検出する。
なお、S1APは、たとえば、基地局211〜214(eUTRAN:evolved Universal Terrestrial Radio Access Network)とMME224,225との間のシグナリングサービスを提供するCプレーンのプロトコルである。基地局211〜214やMME224,225は、S1APによって、たとえばベアラの確立、変更および解放、ハンドオーバ制御、待ち受け移動端末に対する着信制御などを実行することができる。
オフロードGW228のX2AP傍受部602は、たとえば、基地局211〜214の間で送受信されるX2AP(X2 Application Protocol)に基づく制御パケットを傍受する。図7に示す例では、オフロードGW228のX2AP傍受部602は、対象となる移動端末261に対する通信回線の割り付けおよびハンドオーバの契機を検出する。
なお、X2APは、たとえば、X2インタフェース上の基地局211〜214の間におけるCプレーンのプロトコルである。基地局211〜214は、X2APにより、基地局間の負荷管理、ハンドオーバ制御などを実行することができる。
このように、ハンドオーバ元となるオフロードGW228は、S1APおよびX2APを傍受することによって、ハンドオーバ先の基地局211やオフロードGW226を特定する。
オフロードGW228の振分部603は、たとえば、対象となる移動端末261の通信回線の割り付けに従って、当該通信回線を利用してWebサーバ241,242に送信されるデータを当該通信回線より抜き出して、オフロードネットワーク252へ送出する。これにより、オフロードGW228の振分部603は、オフロードトラヒックをオフロードネットワーク252に分岐させることができる。この場合、オフロードGW228の振分部603は、オフロード適用条件に合致したトラヒックを分岐させることができる。
なお、図7の例では、移動端末261から送信されたトラヒックは、GTP−u(GPRS Tunneling Protocol for User Plane)トンネルを流れている。GTP−uは、たとえば、基地局211〜214とS−GW222,223との間のIP伝送用のプロトコルである。アップリンク通信用だけでなく、ダウンリンク通信用のトラヒックも、基地局211〜214とS−GW222,223との間に確立されたベアラ(GTP−uトンネル)を流れることになる。
移動端末261が基地局214から基地局211へハンドオーバすると、移動端末261についてのオフロード条件データ607がオフロードGW228からオフロードGW226へコピーされる。そして、オフロードGW226は、コピーされたオフロード条件データ607に基づいて、移動端末261のセッションの経路を制御する。
また、オフロードGW226は、自トラヒック経路条件を経路状態パケットに乗せてマルチキャスト配信する。なおオフロードGW228も同様に自トラヒック経路条件を経路状態パケットに乗せてマルチキャスト配信するが、図7においては図示を省略している。
オフロードGW228のトラヒック制御部604は、オフロードGW226によるマルチキャスト配信に受信参加し、オフロードGW226からマルチキャスト配信されたオフロードGW226の自トラヒック経路条件を受信する。そして、オフロードGW228のトラヒック制御部604は、受信したオフロードGW226の自トラヒック経路条件を周辺装置経路条件データ609として記憶し、周辺装置経路条件データ609に基づいて、移動端末261のセッションの経路を制御する。
これにより、たとえば、オフロードGW226において第二経路が選択されている場合は、オフロードGW228のトラヒック制御部604は、移動端末261の経路を第二経路に切り替える。これにより、移動端末261が基地局214から基地局211へハンドオーバした場合に、オフロードGW226における第一経路の輻輳を抑えることができる。
図8は、オフロードGWにおける各部の動作の一例を示す図(その2)である。図8において、図7に示した部分と同様の部分については同一の符号を付して説明を省略する。図8においても、図7と同様に、移動端末261が基地局214から基地局211へハンドオーバする場合(たとえば図3参照)について説明する。移動端末264は、基地局211に接続している移動端末である。
図8に示す例では、オフロードGW228に記憶される周辺装置経路条件データ609には、オフロードGW226,227,229の自トラヒック経路条件が含まれている。周辺装置経路条件データ609の周辺装置IDは、それぞれオフロードGW226,227,229を示している。図8に示す例では、オフロードGW226(A)は第一経路を選択し、オフロードGW227,229(B,C)は第二経路を選択している。
オフロードGW228は、周辺装置経路条件データ609に基づいて、移動端末261の経路を選択する。たとえば、オフロードGW228は、移動端末261のハンドオーバ対象となるオフロードGW227,229において第二経路を選択しているため、移動端末261の経路を第二経路とする。これにより、たとえば移動端末261がオフロードGW227,229の配下の基地局へハンドオーバしても、ハンドオーバ先での第一経路の輻輳を抑えることができる。
(各オフロードGWにおけるデータ構造)
つぎに、各オフロードGWにおけるデータ構造について説明する。
図9は、通信経路条件データの一例を示す図である。オフロードGW500は、たとえば図9に示す通信経路条件データ608を記憶部504に記憶する。図9に示すように、通信経路条件データ608は、新規セッションを通過させる通信経路(「通信経路条件」)を示す。たとえば、通信経路条件データ608は、第一経路または第二経路のいずれかを示す。第一経路はEPC網220を経由する経路であり、第二経路はオフロードネットワーク251,252のうちのオフロードGW500に接続されたオフロードネットワークを経由する経路である。
図9に示す例では、通信経路条件データ608は、第一経路を示している。このため、オフロードGW500は、新規セッションが発生すると、発生した新規セッションを第一経路に通過させる。
図10は、自トラヒック経路条件データの一例を示す図である。オフロードGW500は、たとえば図10に示す自トラヒック経路条件データ610を記憶部504に記憶する。図10に示すように、自トラヒック経路条件データ610は、「経路条件」と、「変更時刻」と、を含む。「経路条件」は、オフロードGW500におけるトラヒックの計測結果に基づいて決定した、新セッションを通過させる経路を示す。たとえば、「経路条件」は、第一経路または第二経路のいずれかを示す。「変更時刻」は、「経路条件」を更新した時刻を示す。
オフロードGW500は、自トラヒック経路条件データ610を周辺の他のオフロードGW500へマルチキャスト配信する。
図11は、周辺装置経路条件データの一例を示す図である。オフロードGW500は、たとえば図11に示す周辺装置経路条件データ609を記憶部504に記憶する。図11に示すように、周辺装置経路条件データ609は、「周辺装置ID」と、「最終ハンドオーバ時刻」と、「経路条件」と、「経路条件変更時刻」と、を含む。
「周辺装置ID」は、周辺のオフロードGW(「経路条件」の配信元オフロードGW)のIDを示す。「最終ハンドオーバ時刻」は、「周辺装置ID」が示すオフロードGWへハンドオーバした最新の時刻を示す。
「経路条件」は、「周辺装置ID」が示すオフロードGWから通知された最新の経路条件を示す。「経路条件変更時刻」は、「周辺装置ID」が示すオフロードGWから通知された最新の経路条件変更時刻を示す。「経路条件」および「経路条件変更時刻」は、他のオフロードGW500からマルチキャスト配信された自トラヒック経路条件データ610に基づく情報である。
図12は、周辺装置トラヒック経路条件通信経路切り替え閾値の一例を示す図である。オフロードGW500は、たとえば図12に示す周辺装置トラヒック経路条件通信経路切り替え閾値1200を記憶部504に記憶する。周辺装置トラヒック経路条件通信経路切り替え閾値1200は、「経路切り替え閾値」と、「切り戻し閾値」と、を含む。
周辺装置トラヒック経路条件通信経路切り替え閾値1200の「経路切り替え閾値」および「切り戻し閾値」は、周辺装置トラヒック経路条件の個数(割合でもよい)と比較するための閾値を示す。
たとえば、周辺装置トラヒック経路条件の個数が「経路切り替え閾値」を上回ると通信経路条件データ608の「通信経路条件」が迂回経路(第二経路)へ切り替えられる。また、周辺装置トラヒック経路条件の個数(割合でもよい)が「切り戻し閾値」を下回った場合に通信経路条件データ608の「通信経路条件」が通常経路(第一経路)へ切り替えられる。
図13は、周辺装置トラヒック経路状態通知離脱閾値の一例を示す図である。オフロードGW500は、たとえば図13に示す周辺装置トラヒック経路状態通知離脱閾値1300を記憶部504に記憶する。周辺装置トラヒック経路状態通知離脱閾値1300は、最終のハンドオーバ時刻からの経過時間が当該閾値を上回った場合にハンドオーバ先オフロードGWからの経路状態通知パケットの受信を止めるための閾値である。
図14は、自トラヒック経路条件切り替え閾値の一例を示す図である。図14に示す自トラヒック経路条件切り替え閾値1400は、オフロードGW500に記憶される自トラヒック経路条件切り替え閾値である。自トラヒック経路条件切り替え閾値1400は、「切り替え閾値」と、「切り戻し閾値」と、を含む。自トラヒック経路条件切り替え閾値1400の「切り替え閾値」および「切り戻し閾値」は、通常経路(第一経路)のトラヒック計測値と比較するための閾値を示す。
たとえば、通常経路(第一経路)のトラヒック計測値が「切り替え閾値」を上回った場合に自トラヒック経路条件データ610の「経路条件」が迂回経路(第二経路)へ切り替えられる。また、通常経路(第一経路)のトラヒック計測値が「切り戻し閾値」を下回った場合に自トラヒック経路条件データ610の「経路条件」が通常経路(第一経路)へ切り替えられる。
図15は、eNBを収容するオフロードGW情報の一例を示す図である。オフロードGW500は、たとえば図15に示すオフロードGW情報1500(eNB収容表)を記憶部504に記憶する。オフロードGW情報1500は、基地局211〜214を収容するオフロードGWを示す情報である。
オフロードGW情報1500は、「eNB識別子」と、「eNB Address情報」と、収容oGW情報と、を含む。「eNB識別子」は基地局の識別子であり、eNB#1〜eNB#4はそれぞれ基地局211〜214を示す。「eNB Address情報」は、「eNB識別子」が示す基地局のアドレスを示す。「収容oGW情報」は、「eNB識別子」が示す基地局を収容するオフロードGWを示す。「収容oGW情報」のoGW#1,#2は、たとえばそれぞれオフロードGW226,228を示す。
オフロードGW500は、オフロードGW情報1500を参照して、基地局211〜214を収容するオフロードGWを検索することができる。オフロードGW情報1500は、たとえば、オフロードGW226〜228において移動端末261のハンドオーバにより振り分けポイントとなるオフロードGWを特定するために使用される。
図16A〜図16Cは、オフロード条件データの一例を示す図である。オフロード条件データ607は、たとえば、図16Aに示す利用者回線毎ホームアドレス登録テーブル1610と、図16Bに示す利用者回線毎通信先登録テーブル1620と、図16Cに示す利用者回線毎アドレスポート変換テーブル1630と、を含む。オフロードGW500は、たとえば、オフロード条件データ607に基づいて、オフロードパケットをオフロードネットワーク251,252に送信する。
図16Aに示す利用者回線毎ホームアドレス登録テーブル1610は、「oGW内UE識別子」と、「利用者回線識別子」と、「ホームアドレス情報」と、を含む。「oGW内UE識別子」は、たとえば、オフロードGW500において収容している移動端末を一意に識別する情報を示す。
「利用者回線識別子」は、たとえば、移動端末内での利用者回線を一意に識別する情報を示す。「利用者回線識別子」は、移動端末での回線識別子であるE−RAB(E−UTRAN Radio Access Bearer)IDと同期する。「ホームアドレス情報」は、移動端末のホームアドレス(Home Address)を示す。
オフロードGW500は、利用者回線毎ホームアドレス登録テーブル1610により、「ホームアドレス情報」と、「oGW内UE識別子」および「利用者回線識別子」の対応付けを行うことができる。なお「ホームアドレス情報」に記憶されるホームアドレスは、当該利用者回線が切断されるまで、仮想UEのホームアドレスとして同一値を保持する。
図16Bに示す利用者回線毎通信先登録テーブル1620は、さらに、「通信先情報」の項目を含む。「通信先情報」は、たとえば、移動端末261の通信先のアドレス(たとえばWebサーバ241,242のアドレス)を示す。オフロードGW500は、利用者回線毎通信先登録テーブル1620により、移動端末の通信先のアドレスと、「oGW内UE識別子」および「利用者回線識別子」の対応付けを行うことができる。
図16Cに示す利用者回線毎アドレスポート変換テーブル1630は、さらに、「実UEコネクション情報」と、「セッション状態」と、「仮想UEコネクション情報」と、の項目を含む。「実UEコネクション情報」は、たとえば、実UE(または移動端末261)と通信相手(またはWebサーバ241,242)との通信のうち、オフロード対象のTCP通信のコネクション情報を示す。実UEは、たとえば、P−GW221により払い出されたIPアドレスにより識別される移動端末である。「実UEコネクション情報」は、図16Cの例では、移動端末の識別子、IPアドレス、TCPポート番号を含む。
「セッション状態」は、たとえば、当該通信回線の状態を示す。通信回線の状態には、たとえば、「接続中」、「UL切断待ち」、「DL切断待ち」などがある。「仮想UEコネクション情報」は、仮想UEのTCPコネクション情報を示す。仮想UEは、たとえば、ホームアドレスにより識別される移動端末のことである。図16Cの例では、「仮想UEコネクション情報」は、移動端末の識別子、ホームアドレス、TCPポート番号を含む。
オフロードGW500は、利用者回線毎アドレスポート変換テーブル1630により、実UEと仮想UEの各TCPコネクション情報における相互の状況が把握でき、各コネクション情報が「oGW内UE識別子」と「利用者回線識別子」に対応付けられる。
図17A〜図17Cは、ベアラ利用加入者特定テーブルの一例を示す図である。ベアラ状態管理データ606は、たとえば、図17A,図17Bに示すベアラ利用加入者特定テーブル1710,1720と、図17Cに示すベアラテーブル1730と、を含む。図17A,図17Bに示すベアラ利用加入者特定テーブル1710,1720は一連のテーブルである。ベアラ利用加入者特定テーブル1720の「oGW内UE識別子」はベアラ利用加入者特定テーブル1710の「oGW内UE識別子」と同値であり、同一レコードであることを明示するために記載されている。
「oGW内UE識別子」は、たとえば、オフロードGW500で移動端末を一意に識別する情報を示す。「MME装置識別子」は、たとえば、MME224,225のうちの「oGW内UE識別子」を移動端末に付与したMMEの識別子を示す。「eNB内UE識別子(S1AP)」は、たとえば、基地局211〜214で付与された移動端末の識別子(eNB UE S1AP ID)を示す。「eNB内UE識別子(X2AP)」は、たとえば、基地局211〜214で付与された移動端末の識別子(eNB UE X2AP ID)を示す。「eNB装置識別子」は、たとえば、基地局211〜214のうちの「eNB内UE識別子(S1AP)」および 「eNB内UE識別子(X2AP)」を移動端末に付与した基地局の識別子を示す。
また、「T−Targetセル識別情報」は、たとえば、オフロードGW226〜228のうちのハンドオーバ先のオフロードGW500で受信されたハンドオーバ元の基地局が選択したハンドオーバ先セル識別情報を示す。
「T−C−セル内UE識別情報」は、たとえば、ハンドオーバ先のオフロードGW500で受信した移動端末の識別情報であって、ハンドオーバ先の基地局が選択したハンドオーバ先セル内の移動端末の識別情報を示す。
「Target ID」は、たとえば、ハンドオーバ元のオフロードGW500で受信した移動端末の識別情報であって、ハンドオーバ元の基地局が選択したハンドオーバ先セル内の移動端末の識別情報を示す。
「S−Targetセル識別情報」は、ハンドオーバ元のオフロードGW500で受信したハンドオーバ元の基地局が選択したハンドオーバ先のセル識別情報を示す。また、「S−C−セル内UE識別情報」は、ハンドオーバ元のオフロードGW500で受信したハンドオーバ先の基地局が選択したハンドオーバ先セル内のUE識別情報を示す。
図17Cに示すベアラテーブル1730は、「oGW内UE識別子」と、「利用者回線識別子」と、「uplink回線割り付け情報」と、「downlink回線割り付け情報」と、「オフロード通信用アドレス」と、を含む。
「oGW内UE識別子」は、オフロードGW500で移動端末を一意に識別する情報を示す。同一の移動端末に関して、ベアラテーブル1730とベアラ利用加入者特定テーブル1710の「oGW内UE識別子」は同一の識別子を示す。「利用者回線識別子」は、移動端末内での利用者回線を一意に識別する情報が記憶され、移動端末での回線識別子(E RAB ID)と同期する。
「uplink回線割り付け情報」は、たとえば、利用者回線識別子に対するS−GW222,223へ向かうアップリンクパケットの宛先情報を示す。「downlink回線割り付け情報」は、たとえば、利用者回線識別子に対する基地局211〜214へ向かうダウンリンクパケットの宛先情報を示す。
「オフロード通信用アドレス」は、たとえば、オフロードネットワーク251,252経由のパケットを仮想UE対応に授受するためのアドレスを示す。「オフロード通信用アドレス」は、たとえば、オフロードGW500に収容されるリンクで送受信に利用できるアドレスでもある。図17Cの例では、ホームアドレスまたはケアオブアドレスが、対応する移動端末の識別子とともに記憶される。
(ネットワークシステムにおいて送受信されるデータ)
つぎに、ネットワークシステム200において送受信されるデータについて説明する。
図18は、経路状態通知受信参加パケットの一例を示す図である。オフロードGW500は、たとえば図18に示す経路状態通知受信参加パケット1800を送信する。
図19は、経路状態通知受信離脱パケットの一例を示す図である。オフロードGW500は、たとえば図19に示す経路状態通知受信離脱パケット1900を送信する。
図20は、経路状態通知パケットの一例を示す図である。オフロードGW500は、たとえば図20に示す経路状態通知パケット2000を送信する。
図21は、Handover Requiredの一例を示す図である。図21に示すHandover Required2100は、たとえば移動端末261において基地局214から基地局211へのS1ベースのハンドオーバが行われる場合に、移動端末261からMME225(ソースMME)へ送信される。
図22は、Uplink GTP−uパケットの一例を示す図である。図22に示すUplinkのGTP−uパケット2200は、基地局211〜214からS−GW222,223へのアップリンクのGTP−uパケット(Uplink GTP−uパケット)である。GTP−uパケット2200は、ユーザデータ、TCPヘッダ、IPヘッダ、GTP−uヘッダ、UDP_Gヘッダ、IP_Gヘッダ、L2(レイヤ2)ヘッダ、L1(レイヤ1)ヘッダを含む。
GTP−uパケット2200は、ユーザデータ、TCPヘッダおよびIPヘッダを有するIPパケットが、GTP−uヘッダ、UDP_GヘッダおよびIP_Gヘッダでカプセル化され、さらにL2ヘッダおよびL1ヘッダが付与されたパケットである。
図22に示す例では、GTP−uパケット2200のIPパケットの宛て先アドレスとしてWebサーバ241またはWebサーバ242のIPアドレスが設定され、送信元のIPアドレスには移動端末261のIPアドレスが設定されている。一方、IP_Gヘッダの宛先IPアドレスはS−GW222,223のIPアドレスであり、送信元IPアドレスは基地局211のIPアドレスとなっている。TEIDは、GTPトンネルの終端点に位置するS−GW222を示す値となっている。
図23は、オフロードネットワーク経由でのオフロードGWからWebサーバへのパケットの一例を示す図である。図23に示すパケット2300は、オフロードGW500からオフロードネットワーク251,252を介してWebサーバ241,242に送信されるオフロードパケットである。パケット2300は、GTP−uパケット2200(図22)と比較して、IPヘッダの送信元IPアドレスがケアオブアドレスであり、さらにホームアドレスオプションとしてホームアドレスが付加される。
図24は、X2APでのHandover Requestの一例を示す図である。図24に示すHandover Request2400は、X2APのハンドオーバにおいて、ハンドオーバ元の基地局からオフロードGW226〜228を経由してハンドオーバ先の基地局へ転送されるHandover Requestである。
(各オフロードGWの処理手順)
つぎに、各オフロードGWの処理手順について説明する。
図25Aおよび図25Bは、S−GW宛のUplink GTP−uパケット受信時の処理の一例を示すフローチャートである。オフロードGW500は、S−GW222,223を宛先とするUplink GTP−uパケット2200(以下、受信パケットと称する。)を受信すると、たとえばCPU503によって図25A,図25Bに示す各ステップを実行する。
まず、オフロードGW500は、ベアラテーブル1730の「uplink回線割り付け情報」が、受信パケットのTEIDに一致するベアラテーブル1730のレコードを取り出す。そして、オフロードGW500は、取り出したレコードの「oGW内UE識別子」および「利用者回線識別子」を特定する(ステップS2501)。
つぎに、オフロードGW500は、ステップS2501においてTEIDに一致するレコードがあったか否かを判断する(ステップS2502)。レコードがなかった場合(ステップS2502:No)は、オフロードGW500は、受信パケットをS−GW222,223へ中継し(ステップS2503)、一連の処理を終了する。
ステップS2502において、レコードがあった場合(ステップS2502:Yes)は、オフロードGW500は、ステップS2504へ移行する。すなわち、オフロードGW500は、利用者回線毎アドレスポート変換テーブル1630から所定のレコードを取り出す(ステップS2504)。所定のレコードは、ステップS2501において特定された「oGW内UE識別子」、「利用者回線識別子」に対応し、かつTCPコネクション情報が受信パケットのTCPコネクション情報と一致するレコードである。TCPコネクション情報は、たとえばソースIPアドレス(SA)およびソースポート番号(src port)である。
つぎに、オフロードGW500は、ステップS2504においてTCPコネクション情報と一致するレコードがあったか否かを判断する(ステップS2505)。ステップS2504においてTCPコネクション情報と一致するレコードがあった場合(ステップS2505:Yes)は、オフロードGW500は、受信パケットがTCPの切断要求(flag=fin)であるか否かを判断する(ステップS2506)。
ステップS2506において、受信パケットがTCPの切断要求以外である場合(ステップS2506:No)は、オフロードGW500は、ステップS2514へ移行する。受信パケットがTCPの切断要求である場合(ステップS2506:Yes)は、オフロードGW500は、ステップS2504において取り出したレコードの「セッション状態」がUL切断待ちであるか否かを判断する(ステップS2507)。
ステップS2507において、「セッション状態」がUL切断待ちである場合(ステップS2507:Yes)は、オフロードGW500は、利用者回線毎アドレスポート変換テーブル1630の取り出したレコードを削除し(ステップS2508)、ステップS2514へ移行する。「セッション状態」がUL切断待ちでない場合(ステップS2507:No)は、オフロードGW500は、利用者回線毎アドレスポート変換テーブル1630の取り出したレコードの「セッション状態」にDL切断待ちを設定し(ステップS2509)、ステップS2514へ移行する。
ステップS2505において、ステップS2504においてTCPコネクション情報と一致するレコードがなかった場合(ステップS2505:No)は、オフロードGW500は、受信パケットがTCPの接続要求(flag=syn)であるか否かを判断する(ステップS2510)。
ステップS2510において、受信パケットがTCPの接続要求以外である場合(ステップS2510:No)は、オフロードGW500は、ステップS2503へ移行する。受信パケットがTCPの接続要求である場合(ステップS2510:Yes)は、オフロードGW500は、通信経路条件データ608が示す通信経路条件が第一経路か否かを判断する(ステップS2511)。
ステップS2511において、通信経路条件が第一経路である場合(ステップS2511:Yes)は、オフロードGW500は、ステップS2503へ移行する。通信経路条件が第二経路である場合(ステップS2511:No)は、オフロードGW500は、利用者回線対応での利用portを捕捉し、仮想UE−Port情報とする(ステップS2512)。
つぎに、オフロードGW500は、受信パケットのTCPコネクション情報(SA,scr port)および仮想UE−Port情報を利用者回線毎アドレスポート変換テーブル1630のレコードに追加する(ステップS2513)。具体的には、オフロードGW500は、「oGW内UE識別子」、「利用者回線識別子」に対応する利用者回線毎アドレスポート変換テーブル1630の「実UEコネクション情報」および「仮想UEコネクション情報」としてレコードに追加する。
これにより、たとえば、利用者回線毎アドレスポート変換テーブル1630において、「oGW内UE識別子」および「利用者回線識別子」に対応するレコードにおいて、「実UEコネクション情報」と「仮想UEコネクション情報」とが追加される。
つぎに、オフロードGW500は、受信パケットのGTP−uカプセルからGTP−uユーザデータを取り出し、TCP/IPパケットとする。そして、オフロードGW500は、利用者回線毎アドレスポート変換テーブル1630の「仮想UEコネクション情報」でTCP/IPパケットの送信側のTCP Connection情報を書き換える(ステップS2514)。
これにより、たとえば、オフロードGW500は利用者回線毎アドレスポート変換テーブル1630に基づいて、受信パケットのTCPヘッダとIPヘッダを変更することができる。たとえば、オフロードGW500は受信パケットのTCPヘッダの送信元ポート番号を実UEに対応するポート番号から仮想UEに対応するポート番号に書き換える。また、オフロードGW500は、たとえば、受信パケットのIPヘッダの送信元IPアドレスを、実UEに対応するIPアドレス(または移動端末261のIPアドレス)から仮想UEに対応するホームアドレスに書き換える。
つぎに、オフロードGW500は、仮想UEの位置がHome−linkにあるか否かを判断する(ステップS2515)。たとえば、オフロードGW500は、利用者回線毎ホームアドレス登録テーブル1610の「ホームアドレス情報」を取得する。また、オフロードGW500は、取得した「ホームアドレス情報」の「oGW内UE識別子」および「利用者回線識別子」に対応するベアラテーブル1730の「オフロード通信用アドレス」を取得する。そして、オフロードGW500は、取得した「ホームアドレス情報」と「オフロード通信用アドレス」とを比較する。たとえば、オフロードGW500は2つのアドレスが一致しているときは、仮想UEはHome−linkにあると判断でき、一致しないときは、仮想UEはHome−linkにないと判断できる。
ステップS2515において、仮想UEの位置がHome−linkにない場合(ステップS2515:No)は、ホームアドレスなどの情報がオフロードGW226からオフロードGW228に送信された場合である。この場合は、オフロードGW500は、ステップS2517へ移行する。
ステップS2515において、仮想UEの位置がHome−linkにある場合(ステップS2515:Yes)は、オフロードGW500は、ステップS2516へ移行する。すなわち、オフロードGW500は、TCP/IPパケットのSAを元にしてHome Address optionを追加し、SAをベアラテーブル1730の「オフロード通信用アドレス」で書き換える(ステップS2516)。つぎに、オフロードGW500は、TCP/IPパケットをオフロードネットワーク251,252のうちの自装置に接続されたオフロードネットワークに送信し(ステップS2517)、一連の処理を終了する。
図26は、Handover Required傍受時の処理の一例を示すフローチャートである。オフロードGW500は、Handover Required2100(たとえば図21参照)を傍受すると、たとえばCPU503によって図26に示す各ステップを実行する。
まず、オフロードGW500は、Handover Required2100の「MME UE S1AP ID」でベアラ利用加入者特定テーブル1710の「MME内UE識別子」を検索し、対応するレコードを確定する(ステップS2601)。
つぎに、オフロードGW500は、Handover Required2100の「Target ID」、「Source to Target Transparent Container」内のセル識別情報を取得する。そして、オフロードGW500は、取得したセル識別情報をベアラ利用加入者特定テーブル1720の対応レコードへ設定する(ステップS2602)。すなわち、オフロードGW500は、対応レコードの「Target ID」、「S−Targetセル識別情報」へ設定する。
つぎに、オフロードGW500は、Handover Required2100の「Target ID」より、ハンドオーバ先oGW(オフロードゲートウェイ)を特定する(ステップS2603)。
つぎに、オフロードGW500は、ステップS2603によって特定したハンドオーバ先oGWが、周辺装置経路条件データ609に登録済か否かを判断する(ステップS2604)。周辺装置経路条件データ609に登録済でない場合(ステップS2604:No)は、オフロードGW500は、周辺装置経路条件データ609にハンドオーバ先oGWを登録し、「最終ハンドオーバ時刻」に現在時刻を設定する(ステップS2605)。つぎに、オフロードGW500は、ハンドオーバ先oGWへ経路状態通知受信参加パケット1800を送信し(ステップS2606)、一連の処理を終了する。
ステップS2604において、周辺装置経路条件データ609に登録済である場合(ステップS2604:Yes)は、オフロードGW228は、周辺装置経路条件データ609の「最終ハンドオーバ時刻」を現在時刻に更新し(ステップS2607)、一連の処理を終了する。
図27Aおよび図27Bは、X2APでのHandover Request受信時の処理の一例を示すフローチャートである。X2ベースのハンドオーバが行われる場合に、オフロードGW500は、たとえばCPU503のX2AP傍受部602によって図27A,図27Bに示す各ステップを実行する。
まず、オフロードGW500は、Handover Request2400の送信元の基地局(送信元eNB)が、自装置(当oGW)の収容する基地局(eNB)か否かを判定する(ステップS2701)。自装置の収容する基地局でない場合(ステップS2701:No)は、オフロードGW500は、oGW内UE識別子を捕捉する(ステップS2702)。
つぎに、オフロードGW500は、Handover Request2400の「MME UE S1AP ID」をoGW内UE識別子に対応させ、ベアラ管理状態のベアラ利用加入者特定テーブル1710,1720の「MME内UE識別子」として登録する(ステップS2703)。
つぎに、オフロードGW500は、Handover Request2400の「uplink回線割付情報」を取得する。そして、オフロードGW500は、取得した「uplink回線割付情報」を「oGW内UE識別子」に対応させ、「利用者回線識別子」(ERAB ID)ごとにベアラテーブル1730の「uplink回線割付情報」へ登録する(ステップS2704)。ベアラテーブル1730は、ベアラ状態管理データ606に含まれるベアラテーブル1730である。
つぎに、オフロードGW500は、オフロード通信用アドレスを捕捉する処理を行う(ステップS2705)。これにより、たとえば、オフロードGW500はケアオブアドレスを生成することができる。なお、ホームアドレスは、たとえば、X2ベースのハンドオーバが行われる前において、オフロードGW500(X2ベースのハンドオーバが行われる場合)がInitial Context Setup Requestを受信したときに生成する。ステップS2705におけるオフロード通信用アドレスを捕捉する処理については後述する(たとえば図28参照)。
つぎに、オフロードGW500は、Handover Request2400の送信元の基地局(送信元eNB)を収容する他のオフロードGW500(Source oGW)を特定する(ステップS2706)。
つぎに、オフロードGW500は、ベアラ利用加入者特定テーブル1710,1720の「MME内UE識別子」を取得する。そして、オフロードGW500は、取得した「MME内UE識別子」と、特定した他のオフロードGW500のベアラ利用加入者特定テーブル1710,1720の「MME内UE識別子」が一致するレコードを確定する。これにより、オフロードGW500は、ハンドオーバ元(Source)の「oGW内UE識別子」を確定する(ステップS2707)。
つぎに、オフロードGW500は、ハンドオーバ元のオフロードGW500(Source oGW)の「oGW内UE識別子」に対応するオフロード条件データ607の各テーブルの各レコードを取得する。そして、オフロードGW500は、取得した各レコードを、ハンドオーバ先のオフロードGW500の「oGW内UE識別子」に対応するオフロード条件データ607の各テーブルのレコードとしてそれぞれ追加する(ステップS2708)。オフロード条件データ607の各テーブルは、利用者回線毎ホームアドレス登録テーブル1610、利用者回線毎通信先登録テーブル1620および利用者回線毎アドレスポート変換テーブル1630である。
つぎに、オフロードGW500は、はBinding Update処理を行い(ステップS2709)、一連の処理を終了する。これにより、たとえば、ハンドオーバ元のオフロードGW500はWebサーバ241,242にホームアドレスとホームアドレスに対応するケアオブアドレスとを送信できる。また、たとえば、ハンドオーバ元のオフロードGW500は、ハンドオーバ先のオフロードGW500にホームアドレスとケアオブアドレスを送信できる。ステップS2709におけるBinding Update処理については後述する(たとえば図29参照)。
ステップS2701において、自装置の収容する基地局である場合(ステップS2701:Yes)は、オフロードGW500は、ステップS2710へ移行する。すなわち、オフロードGW500は、Handover Request2400の「MME UE S1AP ID」で、ベアラ利用加入者特定テーブル1710,1720の「MME内UE識別子」を検索し、対応するレコードを確定する(ステップS2710)。
つぎに、オフロードGW500は、Handover Request2400の「Old eNB UE X2AP ID」情報を、ベアラ管理状態のベアラ利用加入者特定テーブル1710,1720の「eNB内UE識別子(X2AP)」に記録する(ステップS2711)。
つぎに、オフロードGW500は、Handover Request2400の送信先の基地局(送信先eNB)が、自装置(当oGW)の収容する基地局(eNB)か否かを判定する(ステップS2712)。自装置の収容する基地局である場合(ステップS2712:Yes)は、オフロードGW500は、一連の処理を終了する。
ステップS2712において、自装置の収容する基地局でない場合(ステップS2712:No)は、オフロードGW500は、ハンドオーバ先のオフロードGW500(oGW)が、周辺装置経路条件データ609に登録済か否かを判断する(ステップS2713)。周辺装置経路条件データ609に登録済でない場合(ステップS2713:No)は、オフロードGW500は、周辺装置経路条件データ609にハンドオーバ先oGWを登録し、「最終ハンドオーバ時刻」に現在時刻を設定する(ステップS2714)。つぎに、オフロードGW500は、ハンドオーバ先oGWへ経路状態通知受信参加パケット1800を送信し(ステップS2715)、一連の処理を終了する。
ステップS2713において、周辺装置経路条件データ609に登録済である場合(ステップS2713:Yes)は、オフロードGW228は、周辺装置経路条件データ609の「最終ハンドオーバ時刻」を現在時刻に更新し(ステップS2716)、一連の処理を終了する。
図28は、オフロード通信用アドレス捕捉処理の一例を示すフローチャートである。図27A,図27BのステップS2705において、オフロードGW500は、オフロード通信用アドレス捕捉処理としてたとえば図28に示す各ステップを実行する。オフロードGW500は、利用者のオフロード対象の利用者回線識別子(E−RAB ID)について以下のステップS2801〜S2803の処理を繰り返す。
まず、オフロードGW500は、オフロード通信用アドレスを捕捉する(ステップS2801)。たとえば、オフロードGW500は、DHCPサーバやホームサーバなどに対してケアオブアドレスの要求を行い、ケアオブアドレスの候補を複数受け取り、他の利用者回線識別子で使用するケアオブアドレスと重複しないようにケアオブアドレスを選択する。また、オフロードGW500は、たとえば、ホームアドレスと重複しないようにケアオブアドレスを選択する。本処理におけるオフロード通信用アドレスは、たとえば、ケアオブアドレスである。
つぎに、オフロードGW500は、オフロード通信用アドレスをベアラテーブル1730の「利用者回線識別子」(E−RAB ID)対応の「オフロード通信用アドレス」に設定する(ステップS2802)。たとえば、オフロードGW500は、選択したケアオブアドレスをベアラテーブル1730の対応する「オフロード通信用アドレス」に登録する。
つぎに、オフロードGW500は、オフロード通信用アドレスを「oGW内UE識別子」、「利用者回線識別子」に対応させ、利用者回線毎ホームアドレス登録テーブル1610の「ホームアドレス情報」に設定する(ステップS2803)。
図29は、Binding Update処理の一例を示すフローチャートである。図27A,図27Bに示したステップS2709において、オフロードGW500は、Binding Update処理としてたとえば図29に示す各ステップを実行する。オフロードGW500は、ハンドオーバ先のオフロードGW500(Target oGW)のUE対応の利用者回線毎ホームアドレス登録テーブル1610の全レコードについて以下のステップS2901〜S2903を繰り返す。
まず、オフロードGW500は、ハンドオーバ先のオフロードGW500(Target oGW)のベアラテーブル1730から、対象移動端末(UE)への「利用者回線識別子」に対応するオフロード通信用アドレス(たとえばケアオブアドレス)を取り出す(ステップS2901)。
つぎに、オフロードGW500(Target oGW)からホームエージェントへ、Binding Updateを送信する(ステップS2902)。ホームエージェントは、たとえばハンドオーバ元のオフロードGW500に設けられている。つぎに、オフロードGW500(Target oGW)から利用者回線対応の全ての通信先へBinding Updateを送信する(ステップS2903)。
これにより、たとえば、オフロードGW500(Target oGW)は、ハンドオーバ元のオフロードGW500とWebサーバ241に、ホームアドレスと、ホームアドレスに対応するケアオブアドレスとを送信することができる。
図30は、自トラヒック計測処理の一例を示すフローチャートである。ハンドオーバ先となるオフロードGW500(たとえばオフロードGW226)は、たとえば図30に示す自トラヒック計測処理を周期的に実行する。まず、オフロードGW500は、自装置における第一経路の現在利用率を読み出す(ステップS3001)。現在利用率は、たとえば、現在のトラヒック量の最大トラヒック量に対する割合である。
つぎに、オフロードGW500は、自トラヒック経路条件データ610(たとえば図10参照)が示す自トラヒック経路条件が第一経路であるか否かを判断する(ステップS3002)。自トラヒック経路条件が第一経路でない場合(ステップS3002:No)は、オフロードGW500は、ステップS3003へ移行する。すなわち、オフロードGW500は、第一経路の現在利用率が、自トラヒック経路条件切り替え閾値1400(たとえば図14参照)が示す切り替え閾値を超過しているか否かを判断する(ステップS3003)。現在利用率が切り替え閾値を超過していない場合(ステップS3003:No)は、オフロードGW500は、ステップS3007へ移行する。
ステップS3003において、現在利用率が切り替え閾値を超過している場合(ステップS3003:Yes)は、オフロードGW500は、ステップS3004へ移行する。すなわち、オフロードGW500は、自トラヒック経路条件データ610(たとえば図10参照)が示す自トラヒック経路条件の経路条件を第二経路へ変更し、変更時刻に現在時刻を設定する(ステップS3004)。
ステップS3002において、自トラヒック経路条件が第一経路である場合(ステップS3002:Yes)は、オフロードGW500は、ステップS3005へ移行する。すなわち、オフロードGW500は、第一経路の現在利用率が、自トラヒック経路条件切り替え閾値1400(たとえば図14参照)が示す切り戻し閾値を下回っているか否かを判断する(ステップS3005)。現在利用率が切り戻し閾値を下回っていない場合(ステップS3005:No)は、オフロードGW500は、ステップS3007へ移行する。
ステップS3005において、現在利用率が切り戻し閾値を下回っている場合(ステップS3005:Yes)は、オフロードGW500は、ステップS3006へ移行する。すなわち、オフロードGW500は、自トラヒック経路条件データ610(たとえば図10参照)が示す自トラヒック経路条件の経路条件を第一経路へ変更し、変更時刻に現在時刻を設定する(ステップS3006)。
つぎに、オフロードGW500は、自トラヒック経路条件の経路条件および変更時刻を設定した経路状態通知パケット2000(たとえば図20参照)をマルチキャストにより送信する(ステップS3007)。たとえば、オフロードGW500は、経路状態通知パケット2000の選択経路に自トラヒック経路条件の経路条件を設定し、経路状態通知パケット2000のtimestampに自トラヒック経路条件の変更時刻を設定する。
つぎに、オフロードGW500は、所定の経路切り替え処理を実行し(ステップS3008)、一連の自トラヒック計測処理を終了する。ステップS3008の経路切り替え処理については後述する(たとえば図32)。
以上の各ステップにより、第一経路のトラヒックの測定結果と閾値の比較結果に基づいて自トラヒック経路条件が決定される。そして、自トラヒック経路条件の決定結果を示す経路状態通知パケット2000がマルチキャストによって配信される。
図31は、経路状態通知パケット受信時の処理の一例を示すフローチャートである。オフロードGW500は、他のオフロードGW500からの経路状態通知パケット2000の受信時に、たとえば図31に示す各ステップを実行する。まず、オフロードGW500は、受信した経路状態通知パケット2000の送信元のオフロードGW(送信元oGW)を特定する(ステップS3101)。つぎに、オフロードGW500は、周辺装置経路条件データ609(たとえば図11参照)の、ステップS3101によって特定した送信元oGWに対応するレコードを特定する(ステップS3102)。
つぎに、オフロードGW500は、受信した経路状態通知パケット2000のtimestampが、ステップS3102によって特定したレコードの経路条件変更時刻より新しいか否かを判断する(ステップS3103)。timestampが経路条件変更時刻より古い場合(ステップS3103:No)は、オフロードGW500は、経路状態通知パケット2000の受信時の一連の処理を終了する。
ステップS3103において、timestampが経路条件変更時刻より新しい場合(ステップS3103:Yes)は、オフロードGW500は、ステップS3104へ移行する。すなわち、オフロードGW500は、周辺装置経路条件データ609のステップS3102によって特定したレコードを、受信した経路状態通知パケット2000に基づいて書き換える(ステップS3104)。具体的には、オフロードGW500は、レコードの経路条件を受信した経路状態通知パケット2000の選択経路によって書き換え、レコードの経路条件変更時刻を受信した経路状態通知パケット2000のtimestampによって書き換える。
つぎに、オフロードGW500は、所定の経路切り替え処理を実行し(ステップS3105)、経路状態通知パケット受信時の一連の処理を終了する。ステップS3105の経路切り替え処理については後述する(たとえば図32)。
図32は、経路切り替え処理の一例を示すフローチャートである。図30に示したステップS3008や図31に示したステップS3105において、オフロードGW500は、経路切り替え処理としてたとえば以下の各ステップを実行する。
まず、オフロードGW500は、通信経路条件データ608(たとえば図9参照)が示す通信経路条件が第一経路か否かを判断する(ステップS3201)。通信経路条件が第一経路である場合(ステップS3201:Yes)は、オフロードGW500は、自トラヒック経路条件データ610(たとえば図10参照)が示す自トラヒック経路条件が第一経路か否かを判断する(ステップS3202)。
ステップS3202において、自トラヒック経路条件が第一経路である場合(ステップS3202:Yes)は、オフロードGW500は、ステップS3203へ移行する。すなわち、オフロードGW500は、周辺装置経路条件データ609(たとえば図11参照)の経路条件が第二経路のレコード数を計数する(ステップS3203)。
つぎに、オフロードGW500は、ステップS3202による計数結果が、周辺装置トラヒック経路条件通信経路切り替え閾値1200(たとえば図12参照)が示す経路切り替え閾値を超過しているか否かを判断する(ステップS3204)。経路切り替え閾値を超過していない場合(ステップS3204:No)は、オフロードGW500は、一連の処理を終了する。
ステップS3204において、経路切り替え閾値を超過している場合(ステップS3204:Yes)は、オフロードGW500は、通信経路条件データ608の通信経路条件を第二経路へ変更し(ステップS3205)、一連の処理を終了する。
ステップS3202において、自トラヒック経路条件が第一経路でない場合(ステップS3202:No)は、オフロードGW500は、通信経路条件データ608の通信経路条件を第二経路へ変更し(ステップS3206)、一連の処理を終了する。
ステップS3201において、通信経路条件が第一経路でない場合(ステップS3201:No)は、オフロードGW500は、自トラヒック経路条件データ610が示す自トラヒック経路条件が第一経路か否かを判断する(ステップS3207)。
ステップS3207において、自トラヒック経路条件が第一経路である場合(ステップS3207:Yes)は、オフロードGW500は、周辺装置経路条件データ609の経路条件が第二経路のレコード数を計数する(ステップS3208)。
つぎに、オフロードGW500は、ステップS3202による計数結果が、周辺装置トラヒック経路条件通信経路切り替え閾値1200が示す切り戻し閾値を下回っているか否かを判断する(ステップS3209)。切り戻し閾値を下回っていない場合(ステップS3209:No)は、オフロードGW500は、一連の処理を終了する。
ステップS3209において、切り戻し閾値を下回っている場合(ステップS3209:Yes)は、オフロードGW500は、通信経路条件データ608の通信経路条件を第一経路へ変更し(ステップS3210)、一連の処理を終了する。
ステップS3207において、自トラヒック経路条件が第一経路でない場合(ステップS3207:No)は、オフロードGW500は、一連の処理を終了する。
以上の各ステップにより、たとえば、ハンドオーバ対象となる複数のオフロードGW500(経路選択装置)のうちの第二経路を取得しているオフロードGW500の数に応じて、中継中の通信について第二経路を選択することができる。
図33は、経路状態受信離脱処理の一例を示すフローチャートである。オフロードGW500は、たとえば定期的に、図33に示す各ステップを実行する。具体的には、オフロードGW500は、周辺装置経路条件データ609の全レコードについて、以下のステップS3301〜S3303を繰り返す。
まず、オフロードGW500は、対象のレコードの最終ハンドオーバ時刻から現在時刻までの経過時間を算出する(ステップS3301)。つぎに、オフロードGW500は、ステップS3301によって算出した経過時間が周辺装置トラヒック経路状態通知離脱閾値1300(たとえば図13参照)を超過したか否かを判断する(ステップS3302)。算出した経過時間が周辺装置トラヒック経路状態通知離脱閾値1300を超過していない場合(ステップS3302:No)は、オフロードGW500は、対象のレコードについての処理を終了する。
ステップS3302において、算出した経過時間が周辺装置トラヒック経路状態通知離脱閾値1300を超過した場合(ステップS3302:Yes)は、オフロードGW500は、ステップS3303へ移行する。すなわち、オフロードGW500は、経路状態通知受信離脱パケット1900(たとえば図19参照)を送信し、対象のレコードを周辺装置経路条件データ609から削除し(ステップS3303)、対象のレコードについての処理を終了する。
(ネットワークシステムの動作例)
つぎに、ネットワークシステム200の動作例について説明する。
図34Aおよび図34Bは、TCP通信がオフロードされる場合のネットワークシステムの動作の一例を示すシーケンス図である。図34A,図34Bにおいては、移動端末261(UE)が起動して、オフロード対象のTCP通信がオフロードされるまでの動作について説明する。
まず、移動端末261が起動すると、移動端末261が基地局214(eNB)に対して接続手順を行う。すなわち、移動端末261はAttach Request(接続要求メッセージ)を基地局214に送信する(ステップS3401)。ステップS3401によって送信されたAttach Requestは、基地局214を経由してMME224へ送信される。
つぎに、MME224が、Create Session RequestをS−GW223へ送信する(ステップS3402)。つぎに、S−GW223が、MME224へCreate Session Responseを送信する(ステップS3403)。
つぎに、MME224が、Initial Context Setup Requestを生成して基地局214へ送信する(ステップS3404)。また、オフロードGW228は、ステップS3404によって送信されるInitial Context Setup Requestを傍受する。そして、オフロードGW228は、ベアラ利用加入者特定テーブル1710,1720およびベアラテーブル1730に対して傍受内容に基づく登録を行う。
つぎに、基地局214が、Initial Context Setup ResponseをMME224へ送信する(ステップS3405)。また、オフロードGW228は、ステップS3405によって送信されるInitial Context Setup Responseを傍受する。そして、オフロードGW228は、ベアラテーブル1730に対して傍受内容に基づく登録を行う。
つぎに、移動端末261が、P−GW221を介してWebサーバ241との接続を開始する(ステップS3406)。つぎに、基地局214が、GTP−uパケット(たとえば図22参照)をS−GW222に向けて送信する(ステップS3407)。オフロードGW228は、基地局214から送信されるGTP−uパケットを受信し、図25A,図25Bに示した処理を行う。
つぎに、オフロードパケット(TCP/IPパケット)がオフロードネットワーク252を経由してWebサーバ241に到達する(ステップS3408)。つぎに、Webサーバ241からオフロードネットワーク252を経由して、ダウンリンクのオフロードパケットがオフロードGW228へ到達する(ステップS3409)。
つぎに、オフロードGW228が、Downlink GTP−uパケットを基地局214に向けて送信する(ステップS3410)。これにより、オフロードネットワーク252経由でのTCP通信が確立する。
ステップS3407〜S3410は、接続要求に関するデータのシーケンス例について説明した。つぎに、接続要求以外のユーザデータが送信される場合について説明する。まず、移動端末261からWebサーバ242へ向かうアップリンクデータは、たとえば、以下のように送信される。
すなわち、基地局214が、移動端末261から送信されたアップリンクデータを受信する(ステップS3411)。つぎに、基地局214が、S−GW223へのGTP−uパケットを送信する(ステップS3412)。オフロードGW228は、基地局214によって送信されたGTP−uパケットを受信し、図25A,図25Bに示した処理を行い、オフロードパケットをオフロードネットワーク252経由でWebサーバ241へ送信する(ステップS3413)。
つぎに、Webサーバ241から移動端末261へ向かうダウンリンクデータについて説明する。ダウンリンクデータは、たとえば、以下のようにして送信される。
すなわち、オフロードGW228が、オフロードネットワーク252を経由してオフロードパケットを受信する(ステップS3414)。つぎに、オフロードGW228は、GTP−uパケットを基地局214へ送信する(ステップS3415)。つぎに、基地局214が、ダウンリンクデータを移動端末261に送信する(ステップS3416)。
図35Aおよび図35Bは、S1ベースのハンドオーバ処理の一例を示すシーケンス図である。図35A,図35Bにおいては、S1ベースのハンドオーバでのオフロード条件データ607の引き継ぎの例について説明する。
移動端末261(UE)の移動に伴い、ハンドオーバ元の基地局214(source eNB)がS1ベースのハンドオーバを開始したとする。この場合は、基地局214が、ハンドオーバ元のオフロードGW228(source oGW)の中継によりHandover Required(たとえば図21参照)をMME225(source MME)へ送信する(ステップS3501)。
また、ステップS3501において、オフロードGW228は、Handover Requiredを傍受し、図26に示した処理を行う。そして、オフロードGW228は、経路状態通知受信参加パケット1800をハンドオーバ先のオフロードGW226(target oGW)へ送信する(ステップS3502)。
つぎに、MME225が、ハンドオーバ先のMME224(target MME)へ、Forward Relocation Requestを送信する(ステップS3503)。つぎに、MME224は、ハンドオーバ先の基地局211(target eNB)へ、オフロードGW226(target oGW)を介して、Handover Requestを送信する(ステップS3504)。つぎに、基地局211が、Handover Request Ack.を、オフロードGW226を介してMME224へ送信する(ステップS3505)。
つぎに、MME224が、Forward Relocation ResponseをMME225へ送信する(ステップS3506)。つぎに、MME225が、Handover Commandを基地局214へ送信する(ステップS3507)。
つぎに、オフロードGW228が、ステップS3507によって送信されたHandover Commandを傍受し、オフロード条件データ607のオフロードGW226への引き継ぎを行う(ステップS3508)。
つぎに、オフロードGW226が、オフロード対象のトラヒックごとにホームアドレス情報を知る。そして、オフロードGW226は、ホームアドレスを管理するオフロードGW228のホームエージェント3501と通信先のWebサーバ241(オフロードネットワーク251)へBinding Updateを送信する(ステップS3509)。
移動端末261のダウンリンクデータは、S−GW223からの経路と、オフロードネットワーク251からの経路と、がオフロードGW228において合流し、基地局214およびオフロードGW226を介して基地局211へ転送される経路となる(ステップS3510)。
また、移動端末261のアップリンクデータは、基地局211からオフロードGW226へ転送され、オフロードGW226から、S−GW222を経由する経路とオフロードネットワーク251を経由する経路とに分岐する(ステップS3511)。
また、ハンドオーバ先の基地局211は、Handover Requestに対する処理を終了すると、完了メッセージであるHandover NotifyをMME224へ送信する(ステップS3512)。これにより、ダウンリンクデータの宛先が基地局214から基地局211に切り替わる。
このときのダウンリンクのオフロードパケットの伝送動作について説明する。Webサーバ241は、ケアオブアドレス宛にオフロードパケットを送信する(ステップS3513)。つぎに、オフロードGW226が、Webサーバ241からのオフロードパケットを受信すると、GTP−uパケットを基地局211へ送信する(ステップS3514)。つぎに、基地局211が、移動端末261へダウンリンクデータを送信する(ステップS3515)。このときの移動端末261のアップリンクデータの伝送動作についてはステップS3511と同様である(ステップS3516)。
つぎに、MME225が、基地局214へ、移動端末261のために確保したリソースを解放するため、UE Context Release Commandを送信する(ステップS3517)。つぎに、基地局214が、UE Context Release CompleteをMME225へ送信する(ステップS3518)。
図36Aおよび図36Bは、X2ベースのハンドオーバ処理の一例を示すシーケンス図である。図36A,図36Bにおいては、X2ベースのハンドオーバでのオフロード条件データ607の引き継ぎの例について説明する。移動端末261(UE)の移動に伴い、ハンドオーバ元の基地局214がX2ベースのハンドオーバを開始したとする。
この場合は、基地局214が、ハンドオーバ先の基地局211へ、X2APのHandover Request(たとえば図24参照)を送信する(ステップS3601)。ステップS3601によって送信されたHandover Requestは、オフロードGW228およびオフロードGW226を経由して基地局211によって受信される。
また、オフロードGW228は、ステップS3601によって送信されたHandover Requestを傍受し、図27A,図27Bに示した処理を行う。これにより、オフロードGW228からオフロードGW226へ経路状態通知受信参加パケット1800(たとえば図18参照)が送信される(ステップS3602)。
つぎに、基地局211が、ハンドオーバ元の基地局214へ、X2APのHandover Request Ack.を送信する(ステップS3603)。ステップS3603によって送信されたHandover Request Ack.は、オフロードGW226およびオフロードGW228を介して基地局214によって受信される。
つぎに、オフロードGW228が、ステップS3603によって送信されたHandover Request Ack.を傍受し、オフロード条件データ607のオフロードGW226への引き継ぎを行う(ステップS3604)。
つぎに、オフロードGW226が、オフロード対象のトラヒックごとにホームアドレス情報を知る。そして、オフロードGW226は、ホームアドレスを管理するオフロードGW228のホームエージェント3501と通信先のWebサーバ241(オフロードネットワーク251)へBinding Updateを送信する(ステップS3605)。
その後、オフロードネットワーク251とP−GW221からのダウンリンクデータは、基地局214、オフロードGW228、オフロードGW226、基地局211を経由して、移動端末261に到達する(ステップS3606)。また、移動端末261からのアップリンクデータは、基地局211、オフロードGW226を経由してオフロードネットワーク251およびP−GW221へ送信される(ステップS3607)。
つぎに、基地局211が、オフロードGW226を介して、Path Switch RequestをMME224に向けて送信する(ステップS3608)。
このとき、ダウンリンクデータが、S−GW223、オフロードGW228、基地局214、オフロードGW228、オフロードGW226、基地局211の順に伝送される経路が形成される(ステップS3609)。
また、移動端末261のダウンリンクデータは、S−GW222からの経路と、オフロードネットワーク251からの経路と、がオフロードGW226において合流し、基地局211へ転送される経路となる(ステップS3610)。
また、MME224は、オフロードGW226を介して、Path Switch Request Ack.を基地局211へ送信する(ステップS3611)。オフロードGW226は、Path Switch Request Ack.を傍受し、オフロードGW226のoGW内UE識別子対応のベアラテーブル1730の「uplink回線割付情報」を切り替える。
移動端末261のアップリンクデータは、基地局211からオフロードGW226へ転送され、オフロードGW226から、S−GW222を経由する経路とオフロードネットワーク251を経由する経路とに分岐する(ステップS3612)。
(ハンドオーバ元とハンドオーバ先のオフロードGWにおける状態遷移)
つぎに、ハンドオーバ元のオフロードGW228と、ハンドオーバ先のオフロードGW226と、における周辺装置経路条件データ609、自トラヒック経路条件データ610および通信経路条件データ608の状態遷移の例について説明する。
図37は、初回のハンドオーバ前の状態の一例を示す図である。図37に示す例では、オフロードGW228(Source oGW)およびオフロードGW226(Target oGW)ともに、自トラヒック経路条件データ610の経路条件および通信経路条件データ608が第一経路であるとする。
図37に示した状態において、移動端末261の移動にともなって基地局214が図35A,図35Bに示したS1ベースのハンドオーバ処理を開始すると、基地局214からMME225へHandover Required(たとえば図21参照)が送信される。そして、オフロードGW228が、基地局214からMME225へ送信されるHandover Requiredを傍受し、図26に示した処理を行う。
図38は、初回のハンドオーバ後の状態の一例を示す図である。図26に示した処理により、オフロードGW228は、図38に示すように、周辺装置経路条件データ609にオフロードGW226(oGW#2)を登録し、最終ハンドオーバ時刻を設定する。そして、オフロードGW228は、経路状態通知受信参加パケット1800(たとえば図18参照)を送信する。
また、オフロードGW226からの経路状態通知パケット2000をオフロードGW228が受信すると、オフロードGW228は、図31に示した処理を行う。これにより、オフロードGW228は、図38に示すように、周辺装置経路条件データ609のオフロードGW226に対応するレコードに、経路状態通知パケット2000に基づく経路条件および経路条件変更時刻を設定する。
図37および図38において、基地局214が図35A,図35Bに示したS1ベースのハンドオーバ処理を開始した場合について説明したが、基地局214が図36A,図36Bに示したX2ベースのハンドオーバ処理を開始した場合も同様である。
すなわち、図37に示した状態において、移動端末261の移動にともなって基地局214がX2ベースのハンドオーバ処理を開始すると、基地局214から基地局211へX2APのHandover Request(たとえば図24参照)が送信される。そして、オフロードGW228が、基地局214から基地局211へ送信されるX2APのHandover Requestを傍受し、図27A,図27Bに示した処理を行う。
図27A,図27Bに示した処理により、オフロードGW228は、図38に示すように、周辺装置経路条件データ609にオフロードGW226(oGW#2)を登録し、最終ハンドオーバ時刻を設定する。そして、オフロードGW228は、経路状態通知受信参加パケット1800(たとえば図18参照)を送信する。
また、オフロードGW226からの経路状態通知パケット2000をオフロードGW228が受信すると、オフロードGW228は、図31に示した処理を行う。これにより、オフロードGW228は、図38に示すように、周辺装置経路条件データ609のオフロードGW226に対応するレコードに、経路状態通知パケット2000に基づく経路条件および経路条件変更時刻を設定する。
図39は、ハンドオーバ先のオフロードGWでの第一経路のトラヒックによる経路切り替え後の状態の一例を示す図である。ハンドオーバ先のオフロードGW226は、周期的に図30の処理を行い、第一経路のトラヒック利用率と経路切り替え閾値(たとえば図14参照)とを比較する。
そして、オフロードGW226は、第一経路のトラヒック利用率が経路切り替え閾値を上回ると、図39に示すように自トラヒック経路条件データ610の経路条件および通信経路条件データ608を第二経路とする。また、オフロードGW226は、自トラヒック経路条件データ610にしたがって経路状態通知パケット2000(たとえば図20参照)を生成して送信する。
オフロードGW228は、オフロードGW226からの経路状態通知パケット2000を受信すると、図31および図32に示した各処理を行うことにより、図39に示すように、周辺装置経路条件データ609を書き換える。また、オフロードGW228は、周辺装置経路条件データ609のうちの経路条件が第二経路であるレコードの数が経路切り替え閾値(たとえば図12)を上回ると、図39に示すように通信経路条件データ608の通信経路条件を第二経路に切り替える。
図40は、ハンドオーバ先のオフロードGWでの第一経路のトラヒックによる経路切り戻し後の状態の一例を示す図である。ハンドオーバ先のオフロードGW226は、周期的に図30の処理を行い、第一経路のトラヒック利用率と切り戻し閾値(たとえば図14参照)とを比較する。
そして、オフロードGW226は、第一経路のトラヒック利用率が切り戻し閾値を下回ると、図40に示すように自トラヒック経路条件データ610の経路条件および通信経路条件データ608を第一経路とする。また、オフロードGW226は、自トラヒック経路条件データ610にしたがって経路状態通知パケット2000(たとえば図20参照)を生成して送信する。
オフロードGW228は、オフロードGW226からの経路状態通知パケット2000を受信すると、図31および図32に示した各処理を行うことにより、図40に示すように、周辺装置経路条件データ609を書き換える。
図41は、周辺装置での第一経路のトラヒックによる経路切り戻し後の状態の一例を示す図である。図40に示した状態において、オフロードGW228の周辺のオフロードGW500(たとえばオフロードGW227)は、周期的に図30の処理を行い、第一経路のトラヒック利用率と切り戻し閾値(たとえば図14参照)とを比較する。
そして、周辺のオフロードGW500は、第一経路のトラヒック利用率が切り戻し閾値を下回ると、自トラヒック経路条件データ610にしたがって経路状態通知パケット2000(たとえば図20参照)を生成して送信する。
オフロードGW228は、周辺のオフロードGW500からの経路状態通知パケット2000を受信すると、図31および図32に示した各処理を行うことにより、図41に示すように、周辺装置経路条件データ609を書き換える。また、オフロードGW228は、周辺装置経路条件データ609のうちの経路条件が第二経路であるレコードの数が切り戻し閾値(たとえば図12)を下回ると、図41に示すように通信経路条件データ608の通信経路条件を第一経路に切り替える。
図42は、最終ハンドオーバ時刻から所定時間が経過した状態の一例を示す図である。図41に示した状態において、オフロードGW228は、周期的に図33の処理を行う。そして、オフロードGW228は、オフロードGW226についての最終ハンドオーバ時刻からの経過時間が、周辺装置トラヒック経路状態通知離脱閾値1300(たとえば図13参照)を上回ったとする。
この場合は、オフロードGW228は、図42に示すように、周辺装置経路条件データ609からオフロードGW226のレコードを削除する。また、オフロードGW228は、経路状態通知受信離脱パケット1900(たとえば図19参照)を生成して送信する。
以上説明したように、経路選択装置、経路選択方法および通信システムによれば、ハンドオーバ先での輻輳を抑えることができる。
上述した各実施の形態に関し、さらに以下の付記を開示する。
(付記1)移動端末と通信先との間の通信の中継経路を第一経路および第二経路から選択し、前記第一経路のトラヒック量が所定量以上になると以降の通信要求による通信について前記第二経路を選択する複数の経路選択装置に含まれる経路選択装置であって、
自装置が中継中の通信のハンドオーバ対象となる、前記複数の経路選択装置に含まれる他の経路選択装置における前記中継経路の選択状態を取得する取得部と、
前記取得部によって取得された選択状態に応じて、前記第一経路のトラヒック量が前記所定量未満であっても前記中継中の通信について前記第二経路を選択する選択部と、
を備えることを特徴とする経路選択装置。
(付記2)前記取得部は、前記他の経路選択装置によってマルチキャスト配信される前記選択状態を受信することを特徴とする付記1に記載の経路選択装置。
(付記3)前記選択部は、前記他の経路選択装置において前記第二経路が選択されている場合に前記中継中の通信について前記第二経路を選択することを特徴とする付記1または2に記載の経路選択装置。
(付記4)前記取得部は、前記複数の経路選択装置のうちのハンドオーバ対象となる複数の経路選択装置について前記選択状態を取得し、
前記選択部は、前記ハンドオーバ対象となる複数の経路選択装置のうちの前記第二経路を選択している経路選択装置の数に応じて前記第二経路を選択する、
ことを特徴とする付記1〜3のいずれか一つに記載の経路選択装置。
(付記5)前記選択部は、前記第二経路を選択している経路選択装置の数が所定数を超えると前記第二経路を選択することを特徴とする付記4に記載の経路選択装置。
(付記6)前記選択部は、前記第二経路を選択している経路選択装置の数が所定数未満となり、かつ前記第一経路のトラヒック量が前記所定量未満となると前記第一経路を選択することを特徴とする付記4または5に記載の経路選択装置。
(付記7)移動端末と通信先との間の通信の中継経路を第一経路および第二経路から選択し、前記第一経路のトラヒック量が所定量以上になると以降の通信要求による通信について前記第二経路を選択する複数の経路選択装置に含まれる第一経路選択装置における経路選択方法であって、
前記第一経路選択装置が中継中の通信のハンドオーバ対象となる、前記複数の経路選択装置のうちの第二経路選択装置における前記中継経路の選択状態を取得し、
取得した前記選択状態に応じて、前記第一経路のトラヒック量が前記所定量未満であっても前記中継中の通信について前記第二経路を選択する、
ことを特徴とする経路選択方法。
(付記8)移動端末と通信先との間の通信の中継経路を第一経路および第二経路から選択し、前記第一経路のトラヒック量が所定量以上になると以降の通信要求による通信について前記第二経路を選択する複数の経路選択装置を含む通信システムであって、
前記複数の経路選択装置のそれぞれは、
自装置が中継中の通信のハンドオーバ対象となる、前記複数の経路選択装置に含まれる他の経路選択装置における前記中継経路の選択状態を取得し、
取得した前記選択状態に応じて、前記第一経路のトラヒック量が前記所定量未満であっても前記中継中の通信について前記第二経路を選択する、
ことを特徴とする通信システム。