以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
図1は、本実施形態に係る電話システム10の一例を概略的に示す。電話システム10は、ターミナルアダプタ200及び電話機300に対してIP電話サービスを提供する。ターミナルアダプタ200は通信装置の一例であってよい。電話システム10は、NGN(NEXT GENERATION NETWORK)110、NGN120、接続事業者網130、IP電話サービス網140、及びPSTN(Public Switched Telephone Network)150を備える。
NGN110は、NNI112を介して接続事業者網130に接続されている。NGN120は、NNI122を介して接続事業者網130に接続されている。NGN110、120を区別せずに説明するときに単にNGNと呼ぶ場合がある。また、NNI112、122を区別せずに説明するときに単にNNIと呼ぶ場合がある。接続事業者網130は、IP電話サービス網140に接続されている。IP電話サービス網140は、PSTN150に接続されている。
ターミナルアダプタ202及び電話機302のユーザと、ターミナルアダプタ204及び電話機304のユーザとは、NGN110を提供する事業者と契約を結ぶことによって、NGN110を介した通信を利用する権利を取得してよい。また、ターミナルアダプタ206及び電話機306のユーザと、ターミナルアダプタ208及び電話機308のユーザとは、NGN120を提供する事業者と契約を結ぶことによって、NGN120を介した通信を利用する権利を取得してよい。また、電話機302、304、306、308のそれぞれのユーザは、IP電話サービス網140を提供する事業者と契約を結ぶことによって、IP電話サービスを利用する権利を取得してよい。
IP電話サービス網140は、SIPサーバ142を含む。SIPサーバ142は、電話機300の電話番号とIPアドレスとの対応テーブルを保持し、SIPメッセージの処理を実行する。例えば、電話機302が電話機306と通話を確立しようとする場合、ターミナルアダプタ202は、NGN110、NNI112、及び接続事業者網130を介してSIPサーバ142にSIPメッセージを送信する。SIPサーバ142の仲介により通話を確立した電話機302及び電話機306は、NGN110、NNI112、接続事業者網130、NNI122、及びNGN120を介して音声データを送受信する。
また、電話機302が、PSTN150に接続された固定電話152又は携帯電話154と通話を確立しようとする場合、ターミナルアダプタ202は、NGN110、NNI112、及び接続事業者網130を介してSIPサーバ142にSIPメッセージを送信する。SIPサーバ142の仲介により通話を確立した電話機302と、固定電話152又は携帯電話154とは、NGN110、NNI112、接続事業者網130、IP電話サービス網140、及びPSTN150を介して音声データを送受信する。
このように、電話機300は、NGN110、120と、NNI112、122と、接続事業者網130とを介して通話を実現できる。しかし、NGN110及びNGN120はベストエフォート型であることから、十分な通信品質を保てない場合がある。特に、0AB−JのIP電話サービスを提供しようとした場合、例えばパケット損失率が0.1%を下回らなければならないなど高い通話品質が求められるが、その条件を満たせない場合がある。
そこで、本実施形態に係る電話システム10は、NGN110、120と、NNI112、122と、接続事業者網130とを経由する通信経路の通信品質が低下した場合に、迂回を可能にするための迂回経路を備える。ここでは、電話システム10が、NGN110からの迂回経路164、166、168と、NGN120からの迂回経路174、176、178とを備える場合を例に挙げて説明する。迂回経路の数は例示であり、他の数であってもよい。迂回経路164、166、168、174、176、178をまとめて単に迂回経路と呼ぶ場合がある。
迂回経路164は、UNI114と、中継アダプタ414と、SBC(Session Border Controller)514とにより構成されてよい。中継アダプタ414は、UNI114を介してNGN110に接続されている。SBC514は、中継アダプタ414IP電話サービス網140に接続されている。
中継アダプタ414は、例えば、IP電話サービス網140を提供する事業者が、NGN110を提供する事業者と契約することによってNGN110に接続される。SBC514とIP電話サービス網140とは、例えばイーサネット(登録商標)によって接続されている。SBC514は、IP電話サービス網140を提供する事業者によって管理されてよい。SBC514は、IP電話サービス網140と、NGN110側のネットワークとの間においてIP変換を実行することにより、中継アダプタ414を介したルーティングを実現する。
例えば、SBC514は、中継アダプタ414がUNI114を介して受信した、ターミナルアダプタ202により送信されたSIPサーバ142宛のパケットを一旦終端させる。そして、SBC514は、IP電話サービス網140と、NGN110側のネットワークとの間におけるIPアドレスにアドレス変換して、パケットをSIPサーバ142に送信する。これにより、IPネットワークの終端として取り扱われるUNI114を介したルーティングを実現する。
迂回経路166は、迂回経路164と同一の構成を有してよく、UNI116、中継アダプタ416、及びSBC516により構成されてよい。迂回経路168も、迂回経路164と同一の構成を有してよく、UNI118、中継アダプタ418、及びSBC518により構成されてよい。図1では、迂回経路164、迂回経路166、迂回経路168を別々の経路として図示しているが、物理的な1つの経路上にVLAN(Virtual LAN)として実現されてもよい。
迂回経路174、176、178は、迂回経路164、166、168と同一の構成を有してよく、それぞれ、UNI124、126、128と、中継アダプタ424、426、428と、SBC524、526、528とにより構成されてよい。
なお、UNI114、116、118、124、126、128を区別せずに説明するときに単にUNIと呼ぶ場合がある。中継アダプタ414、416、418、424、426、428を区別せずに説明するときに単に中継アダプタと呼ぶ場合がある。SBC514、516、518、524、526、528を区別せずに説明するときに単にSBCと呼ぶ場合がある。
ターミナルアダプタ200は、NNIを経由する経路(NNI経路と呼ぶ場合がある。)及びUNIを経由する経路(UNI経路と呼ぶ場合がある)のそれぞれの経路品質を測定する。NNI経路は第1通信経路の一例であってよい。UNI経路は第2通信経路の一例であってよい。
例えば、ターミナルアダプタ200は、NGN、NNI、及び接続事業者網130を経由するNNI経路を介して品質測定サーバ144に品質測定パケットを送信することにより、NNI経路の経路品質を測定する。また、例えば、ターミナルアダプタ200は、NGN、UNI、及び中継アダプタを経由するUNI経路を介して品質測定サーバ144に品質測定パケットを送信することによりUNI経路の経路品質を測定する。
そして、ターミナルアダプタ200は、NNI経路の経路品質が予め定められた基準を超えていないと判定した場合、UNI経路のうち、予め定められた基準を満たすUNI経路を迂回経路として選択し、選択したUNI経路を介して通信を実行する。これにより、NNI経路に輻輳などが発生して、経路品質が予め定められた基準を満たせない場合であっても、迂回経路を介して通信することによって、基準を満たす通信品質を確保することができる。
図2は、ターミナルアダプタ200の機能構成の一例を概略的に示す。ターミナルアダプタ200は、通信部210、経路品質測定部218、履歴格納部220、平均時間算出部222、輻輳状態判定部224、及び経路品質判定部226を備える。通信部210は、オフフック検出部212、品質測定パケット送信部214、応答受信部216、経路選択部228、発呼部230、着呼部232、通話部234、及び経路登録部236を有する。
オフフック検出部212は、電話機300のオフフックを検出する。品質測定パケット送信部214は、オフフックの検出に応じて品質測定パケットを送信してよい。品質測定パケット送信部214は、オフフックの検出に応じて、NNI経路及びUNI経路のそれぞれを介して品質測定サーバ144に品質測定パケットを送信してよい。このとき、品質測定パケット送信部214は、複数のUNI経路のうち一のUNI経路に品質測定パケットを送信してよく、また、複数のUNI経路に品質測定パケットを送信してもよい。
また、品質測定パケット送信部214は、電話機300が待ち受け状態のときに品質測定パケットを送信してよい。品質測定パケット送信部214は、電話機300が待ち受け状態のときに、選択中の通信経路を介して品質測定サーバ144に品質測定パケットを送信してよい。すなわち、品質測定パケット送信部214は、NNI経路が選択されている場合、NNI経路を介して品質測定サーバ144に品質測定パケットを送信してよく、UNI経路が選択されている場合、UNI経路を介して品質測定サーバ144に品質測定パケットを送信してよい。
この場合、品質測定パケット送信部214は、品質測定パケットを定期的に送信してよい。例えば、品質測定パケット送信部214は、1秒毎に品質測定パケットを送信する。なお、ここでは、品質測定パケット送信部214が品質測定サーバ144に対して品質測定パケットを送信する場合を主に例に挙げて説明するが、これに限らず、品質測定パケット送信部214は、NNI経路及びUNI経路の経路品質を測定できれば、他の通信装置に品質測定パケットを送信してもよい。応答受信部216は、品質測定サーバ144からの応答を受信する。
経路品質測定部218は、応答受信部216が受信した応答に基づいて、経路品質を測定する。経路品質測定部218は、品質測定パケット送信部214が品質測定パケットを送信してから、応答受信部216が応答を受信するまでの遅延時間を測定してよい。遅延時間は、応答時間の一例であってよい。経路品質測定部218は、遅延時間によって経路品質を測定してよい。また、経路品質測定部218は、品質測定パケット送信部214が送信した品質測定パケットのパケットロス率を測定してよい。そして、経路品質測定部218は、パケットロス率によって経路品質を測定してよい。
履歴格納部220は、経路品質測定部218が測定した遅延時間の履歴を格納する。履歴格納部220は、通信経路毎に識別して、遅延時間の履歴を格納してよい。平均時間算出部222は、通信経路毎に、遅延時間の平均である平均遅延時間を算出する。
輻輳状態判定部224は、通信経路の輻輳状態を判定する。例えば、輻輳状態判定部224は、経路品質測定部218が測定した経路品質に基づいて通信経路の輻輳状態を判定する。輻輳状態判定部224は、通信経路毎に、輻輳が発生しそうな状態であるか否かを判定してよい。例えば、輻輳状態判定部224は、測定されたパケットロス率が予め定められた閾値を超えている場合に輻輳が発生しそうな状態であると判定する。また、例えば、輻輳状態判定部224は、平均時間算出部222によって算出された平均遅延時間と、経路品質測定部218が新たに測定した遅延時間とに基づいて、通信経路の輻輳状態を判定する。
経路品質判定部226は、経路品質測定部218が測定した経路品質が予め定められた基準を超えているか否かを判定する。例えば、経路品質判定部226は、パケットロス率が、0.1%を上回っているか否かを判定する。また、経路品質判定部226は、輻輳状態判定部224が判定した輻輳状態が予め定められた基準を満たしているか否かを判定する。
経路選択部228は、経路品質判定部226による判定の結果に基づいて、通信経路を選択する。例えば、経路選択部228は、経路品質判定部226によって、NNI経路の経路品質が予め定められた基準を超えていると判定された場合、通信経路としてNNI経路を選択する。また、例えば、経路選択部228は、経路品質判定部226によって、NNI経路の経路品質が予め定められた基準を超えていないと判定され、UNI経路の経路品質が予め定められた基準を超えていると判定された場合、通信経路としてUNI経路を選択する。
発呼部230は、ユーザによる発呼指示に従って、発呼処理を実行する。発呼部230は、経路選択部228によって選択された通信経路を介して、SIPメッセージをSIPサーバ142に送信してよい。着呼部232は、着呼処理を実行する。例えば、着呼部232は、SIPサーバ142からINVEITEメッセージを受信して、呼出し処理を実行する。通話部234は、発呼部230による発呼処理又は着呼部232による着呼処理に応じて、通話を確立させる。
通話部234による通話が実行されている間、経路品質測定部218は、通話データに基づいて通信経路の経路品質を測定してよい。経路品質測定部218は、例えば、RTCP−XR(RTP Control Protocol Extended Reports)を用いることによって、通信経路の経路品質を測定する。通話データに基づく経路品質の測定を実呼測定と呼ぶ場合がある。
経路登録部236は、通信経路をSIPサーバ142に登録する。経路登録部236は、REGISTERメッセージをSIPサーバ142に送信することにより、通信経路を登録してよい。例えば、電話機300が待ち受け状態である間に測定されたNNI経路の経路品質が予め定められた基準を超えていない場合、経路登録部236は、基準を超えているUNI回路を通信経路としてSIPサーバ142に登録する。これにより、ターミナルアダプタ200が着信する場合において、経路品質が基準を満たさないNNI経路を迂回して、基準を満たすUNI回路を選択することができる。
図3は、品質測定パケット送信部214による品質測定パケット送信のタイミングを概略的に示す。図3において、横軸は時間の経過を表す。また、縦軸方向には、上から順に電話機300の通話状態、品質測定パケット送信部214により送信される品質測定パケットの状態、及び経路品質測定部218による実呼測定の状態を整列させている。
電話機300が待ち受け状態である間、品質測定パケット送信部214は定期的に品質測定パケットを品質測定サーバ144に送信する。品質測定パケット送信部214は、電話機300が待ち受け状態である間、選択中の通信経路を介して品質測定サーバ144に品質測定パケットを送信してよい。
電話機300のオフフックを検出したのに応じて、品質測定パケット送信部214は品質測定パケットを品質測定サーバ144に送信する。品質測定パケット送信部214は、NNI経路及び複数のUNI経路に品質測定パケットを送信してよい。品質測定パケット送信部214は、発信通話中及び着信通話中には、品質測定パケットを送信しない。発信通話中及び着信通話中には、経路品質測定部218が実呼測定を実行する。
図4は、ターミナルアダプタ200による処理フローの一例を概略的に示す。図4に示す処理フローは、ターミナルアダプタ200及び電話機300に電源が投入されて、ターミナルアダプタ200及び電話機300が待ち受け状態となったときに開始してよい。
ステップ402(ステップをSと省略して表記する場合がある。)では、品質測定パケット送信部214が、品質測定サーバ144に対して品質測定パケットを送信する。品質測定パケット送信部214は、NNI経路が選択されている場合、NNI経路を介して品質測定サーバ144にPINを送信する。品質測定パケット送信部214は、UNI経路が選択されている場合、すなわち、迂回中である場合、選択されているUNI経路及びNNI経路のそれぞれを介して、品質測定サーバ144に品質測定パケットを送信してよい。
S404では、経路品質測定部218が経路品質を測定する。経路品質測定部218は、迂回中でない場合、NNI経路の経路品質を測定してよい。経路品質測定部218は、迂回中である場合、UNI経路及びNNI経路の経路品質を測定してよい。
迂回中でない場合(S406:NO)、経路品質判定部226が、S404で測定したNNI経路の経路品質が予め定められた基準を超えているか否かを判定する(S408)。NNI経路の経路品質が予め定められた基準を超えていない場合(S408:NO)、経路選択部228が迂回経路を選択して、経路登録部236が迂回経路を登録する(S410)。経路選択部228は、複数のUNI経路のうちの一のUNI経路を迂回経路として選択してよい。この場合、経路選択部228は、複数のUNI経路のうち、経路品質が予め定められた基準を超えているUNI経路を選択してよい。NNI経路の経路品質が予め定められた基準を超えている場合(S408:YES)、通信経路はNNI経路のままとなる。
迂回中である場合(S406:YES)、S404で測定されたNNI経路の経路品質が予め定められた基準を超えているか否かを、経路品質判定部226が判定する(S412)。NNI経路の経路品質が予め定められた基準を超えていない場合(S412:NO)、S408に進み、経路品質判定部226が、選択中のUNI経路の経路品質が予め定められた基準を超えているか否かを判定する。
NNI経路の経路品質が予め定められた基準を超えている場合(S412:YES)、経路登録部236が切戻し処理を実行する。すなわち、経路登録部236は、通信経路として、UNI経路に代えてNNI経路を登録する。これにより、迂回後にNNI経路の経路品質が回復した場合に、速やかに選択通信経路をNNI経路に戻すことができる。
続いて、着呼部232が着呼した場合(S416:YES)、S426に進み、着呼していない場合(S416:NO)、S418に進む。S418では、オフフック検出部212が、電話機300のオフフックを検出した場合(S418:YES)、S420に進む。S420では、品質測定パケット送信部214が、NNI経路及び複数のUNI経路のそれぞれを介して、品質測定サーバ144に品質測定パケットを送信する。
S422では、経路品質測定部218が、NNI経路及び複数のUNI経路のそれぞれの経路品質を測定する。S424では、経路選択部228が、SIPメッセージを送信するための通信経路を選択する。経路選択部228は、NNI経路の経路品質が予め定められた基準を超えている場合、NNI経路を選択する。経路選択部228は、NNI経路の経路品質が予め定められた基準を超えていない場合、基準を超えているUNI経路を選択する。経路選択部228は、基準を超えているNNI経路及びUNI経路がない場合には、発呼を行わないようにエラー処理を実行してよい。なお、基準を超えているNNI経路及びUNI経路がない場合であっても、発呼が緊急呼である場合には、NNI経路を介した発呼処理を実行してよい。
S416で、着呼部232が着呼した場合、S426に進む。S426で、通話が終了した場合(S426:YES)、S428に進む。S428でオンフックされた場合、S430に進む。S434で、ターミナルアダプタ200の電源がオフにされるなどによってターミナルアダプタ200による待ち受け状態が解除された場合、処理が終了し、そうでない場合、S402に戻る。上述したように、発信時に、NNI経路及びUNI経路の経路品質を測定することにより、適切な通信経路を選択して発呼処理を実行できる。また、電話機300が待ち受け状態の間、選択中の通信経路を監視して、経路品質が予め定められた基準を下回った場合に、他の経路を登録することによって、電話機300が着信する場合にも、適切な通信経路を選択した上で着呼処理を実行できる。
図5は、輻輳状態判定部224による輻輳状態の判定について説明するための概念図である。図において、横軸は時間の経過を表す。縦軸は、経路品質測定部218により測定された遅延時間を表す。複数の矢印502は、それぞれ経路品質測定部218が遅延時間を測定したタイミングを示す。図は、n−1までは略一定の遅延時間を示し、nから遅延時間が増加する場合の一例を示している。通信経路に輻輳が発生する場合、輻輳の兆候として、図に示すような遅延時間の増加が見られる。
そこで、本実施形態に係る輻輳状態判定部224は、遅延時間の増加量が予め定められた範囲を超えた場合に、輻輳の前兆と判定する。輻輳状態判定部224は、式(1)及び式(2)によって、通信経路が輻輳の前兆を示す輻輳状態であるか、通常状態であるかを判定してよい。
PDは測定された遅延時間、ADは平均遅延時間、αは重み付け係数を示す。重み付け係数αは、例えば0.1〜1.0に設定される。
CDは経路品質測定部218が新たに測定した遅延時間、Δは増加量閾値を示す。増加量閾値Δは、例えば1msなどの単位で設定される。増加量閾値Δは、遅延時間と輻輳状態との実験結果によってその数値が設定されてよい。
上述したように、輻輳状態判定部224は、履歴格納部220に格納された複数の遅延時間の平均である平均遅延時間と、経路品質測定部218が新たに測定した遅延時間とに基づいて、輻輳状態を判定する。特に、輻輳状態判定部224は、輻輳状態判定部224が新たに測定した遅延時間が、平均応答時間に対して予め定められた時間より長い場合に、輻輳が発生する前兆であると判定する。
なお、本実施形態では、NNI経路が選択されている場合であって、電話機300が待ち受け状態の間、品質測定パケット送信部214が、NNI経路を介して品質測定サーバ144に品質測定パケットを定期的に送信する例を挙げて説明した。このときさらに、品質測定パケット送信部214は、UNI経路を介して品質測定サーバ144に品質測定パケットを定期的に送信してもよい。これにより、輻輳状態判定部224がUNI経路の輻輳状態を判定する場合に、平均遅延時間を算出する上で、十分な数の遅延時間を確保しておくことができる。
また、例えば、経路品質測定部218が、一日単位などのある一定期間の通信に対して0.1%単位でパケットロス率を算出する場合、1000個の品質測定パケットの結果が必要となるが、発信時及び迂回時のみしかUNI経路を介した品質測定パケット送信をしていない場合、品質測定パケットの数が十分でない場合がある。それに対して、電話機300が待ち受け状態の間、UNI経路を介しても、品質測定サーバ144に品質測定パケットを送信しておくことにより、少なくとも、数日分の結果を集めることによって、必要な数の品質測定パケットの結果を確保することができる。
なお、品質測定パケット送信部214は、NNI経路を介して品質測定サーバ144に品質測定パケットを送信する頻度よりも低い頻度で、UNI経路を介して品質測定サーバ144に品質測定パケットを送信してよい。これにより、NNI経路を介して品質測定サーバ144に品質測定パケットを送信する頻度と同程度の頻度で送信するのに比べて、品質測定パケット送信に対する処理負荷及び通信経路に与える通信負荷を低減することができる。
図6及び図7は、ターミナルアダプタ202による処理の一例を概略的に示す。ここでは、ターミナルアダプタ202が、NNI経路を介してターミナルアダプタ204との通話を確立させた後、NNI経路に輻輳が発生した場合を例に挙げて説明する。
図6は、通信経路としてNNI経路が選択されている場合を示す。監視ルート192は、ターミナルアダプタ202及びターミナルアダプタ204が経路品質を監視するルートを示す。ターミナルアダプタ202は、NGN110が有する収容装置182、中継ルータ184、GWルータ(Gatewayルータ)186を介して、NNI経路の経路品質を測定する。ターミナルアダプタ204は、収容装置188、中継ルータ184、GWルータ186を介して、NNI経路の経路品質を測定する。
通話パス194は、ターミナルアダプタ202とターミナルアダプタ204との通話の経路を示す。ターミナルアダプタ202とターミナルアダプタ204とは、収容装置182及び収容装置188を介して通話を実行する。ここで、図に示すように、監視ルート192と通話パス194とは一致しない。そのため、通話パス194において輻輳が発生したとしても、監視ルート192上における経路品質の監視では、当該輻輳を発見できない。
ここで、ターミナルアダプタ202が有する経路品質測定部218は、通話パス194のようにNNI及びUNIを介さない通信経路を介して通話を実行する場合、通話中のデータにより、通話中又は通話終了後に、当該通信経路の経路品質を測定してよい。経路品質測定部218は、例えば、RTCP−XRを用いることにより経路品質を測定する。NNI及びUNIを介さない当該通信経路は、第3通信経路の一例であってよい。
そして、経路品質判定部226が、測定された経路品質が予め定められた基準を超えているか否かを判定する。予め定められた基準を超えていないと判定した場合、経路選択部228が、基準を超えているUNI回路を選択する。そして、経路登録部236が、通信経路としてUNI経路を登録する。これにより、例えば、登録後にターミナルアダプタ202がターミナルアダプタ204から着信する場合、NNI経路を介してではなく、UNI経路を介して通話が確立されるので、輻輳を回避することができる。
図7は、経路登録部236によってUNI経路が選択された後の監視ルート192及び通話パス194を例示する。図7において、ターミナルアダプタ202は、収容装置182、中継ルータ184、収容装置188を介してUNI経路に品質測定パケットを送信する。また、ターミナルアダプタ204は、収容装置188を介してUNI経路に品質測定パケットを送信する。また、ターミナルアダプタ202及びターミナルアダプタ204は、UNI経路を介して通話を実行する。このように、監視ルート192と通話パス194とを一致させることができる。
図8は、ターミナルアダプタ200、SIPサーバ142、及び品質測定サーバ144の処理の流れの一例を概略的に示す。ここでは、ターミナルアダプタ200が通信経路としてNNI経路をSIPサーバ142に登録した状態で、ターミナルアダプタ200がNNI経路に品質測定パケットを送信したときに輻輳が発生した場合の処理の流れを説明する。
経路登録部236は、NNI経路を介してREGSTERメッセージをSIPサーバ142に送信する(S802)。SIPサーバ142は、ターミナルアダプタ200の通信経路としてNNI経路を登録する。品質測定パケット送信部214は、NNI経路を介して、品質測定サーバ144に品質測定パケットを送信する(S804)。これにより、経路品質測定部218は、NNI経路御経路品質を測定する。図に示す例において、この時点ではNNI経路に輻輳は発生していない。
次に、SIPサーバ142が、INVITE(着信要求)メッセージをターミナルアダプタ200に対して送信する(S806)。そして、ターミナルアダプタ200は、INVITE(着信要求)メッセージを受信し、INVITE(要求応答)メッセージをSIPサーバ142に送信する(S808)。S810では、通話が開始され、終話する。なお、図示を省略しているが、S806において、SIPサーバ142は、他のターミナルアダプタ200から受信したINVITE(着信要求)メッセージをターミナルアダプタ200に送信する。また、S808において、SIPサーバ142は、ターミナルアダプタ200から受信したINVITE(要求応答)メッセージを、当該他のターミナルアダプタ200に送信する。そして、S810では、SIPサーバ142は、ターミナルアダプタ200と当該他のターミナルアダプタ200との間の通話を開始させ、終話を検出する。
S812では、品質測定パケット送信部214がNNI経路を介して送信した品質測定パケットによって、経路品質測定部218がNNI経路の輻輳を検出する。品質測定パケット送信部214は、NNI経路の輻輳を検出したのに応じて、UNI経路を介して、品質測定サーバ144に品質測定パケットを送信する(S814)。ここでは、UNI経路に輻輳がなく、品質測定パケットが品質測定サーバ144に到達した場合を例に挙げて説明するが、仮に、UNI経路に輻輳が発生していた場合には、品質測定パケット送信部214は、他のUNI経路に品質測定パケットを送信してよい。
S814において送信した品質測定パケットによって、UNI経路に輻輳が発生していないと経路品質判定部226が判定したのに応じて、235が、当該UNI経路を登録するべくREGISTERメッセージをSIPサーバ142に送信する(S816)。SIPサーバ142は、REGISTERメッセージを受信することにより、ターミナルアダプタ200の通信経路として、UNI経路を登録する。
ターミナルアダプタ200の通信経路としてUNI経路が登録されたことにより、SIPサーバ142は、INVITE(着信要求)メッセージを、UNI経路を介してターミナルアダプタ200に送信する(S818)。ターミナルアダプタ200は、INVITE(着信要求)メッセージを受信し、INVITE(要求応答)メッセージをSIPサーバ142に送信する(S820)。そして、S812では、通話が開始され、終話する。
なお、図示を省略しているが、S818において、SIPサーバ142は、他のターミナルアダプタ200からINVITE(発信要求)メッセージを受信したのに応じて、INVITE(着信要求)メッセージをターミナルアダプタ200に送信する。また、S820において、SIPサーバ142は、ターミナルアダプタ200から受信したINVITE(要求応答)メッセージを、当該他のターミナルアダプタ200に送信する。そして、S822では、SIPサーバ142は、ターミナルアダプタ200と当該他のターミナルアダプタ200との間の通話を開始させ、終話を検出する。
上述したように、ターミナルアダプタ200が、NNI経路上の輻輳を検出した場合に、UNI経路を登録することによって、仮に、SIPサーバ142がINVEITEメッセージを送信するときにNNI経路に輻輳が発生している状態が続いていたとしても、通話を確立させることができる。なお、品質測定パケット送信部214は、INVITE着信要求)メッセージを受信したのに応じて、品質測定パケットを選択中の経路を介して品質測定サーバ144に送信してもよい。
図9は、ターミナルアダプタ200、SIPサーバ142、及び品質測定サーバ144の処理の流れの一例を概略的に示す。ここでは、ターミナルアダプタ200が通信経路としてNNI経路をSIPサーバ142に登録した状態で、SIPサーバ142がINVITEメッセージをターミナルアダプタ200に送信しようとしたときに輻輳が発生した場合の処理の流れを説明する。
経路登録部236は、NNI経路を介してREGISTERメッセージをSIPサーバ142に送信する(S902)。SIPサーバ142は、ターミナルアダプタ200の通信経路としてNNI経路を登録する。品質測定パケット送信部214は、NNI経路を介して、品質測定サーバ144に品質測定パケットを送信する(S904)。これにより、経路品質測定部218は、NNI経路の経路品質を測定する。図に示す例において、この時点ではNNI経路に輻輳は発生していない。
次に、SIPサーバ142が、INVITEメッセージをターミナルアダプタ200に対して送信する(S906)。ここでは、NNI経路に輻輳が発生したために、INVITEメッセージがターミナルアダプタ200に到達しない例を示す。SIPサーバ142は、INVITEメッセージの送信を定期的に繰り返す再送処理900の実行を開始する。
品質測定パケット送信部214は、電話機300が待ち受け状態であることから、定期的に品質測定パケットの送信を継続する。S908では、品質測定パケット送信部214が送信した品質測定パケットによって、経路品質測定部218が、NNI経路の輻輳を検出する。
品質測定パケット送信部214は、NNI経路の輻輳を検出したのに応じて、UNI経路を介して、品質測定サーバ144に品質測定パケットを送信する(S910)。ここでは、UNI経路に輻輳がなく、品質測定パケットが品質測定サーバ144に到達した場合を例に挙げて説明するが、仮に、UNI経路に輻輳が発生していた場合には、品質測定パケット送信部214は、他のUNI経路に品質測定パケットを送信してよい。この場合、品質測定パケット送信部214は、経路品質が基準を満たすUNI経路が検出されるまで、複数のUNI経路に順次品質測定パケットを送信してよい。また、品質測定パケット送信部214は、複数のUNI経路に一斉に品質測定パケットを送信してもよい。
S910において送信した品質測定パケットによって、UNI経路に輻輳が発生していないと経路品質判定部226が判定したのに応じて、経路登録部236が、当該UNI経路を登録するべくREGISTERメッセージをSIPサーバ142に送信する(S912)。SIPサーバ142は、REGISTERメッセージを受信することにより、ターミナルアダプタ200の通信経路として、UNI経路を登録する。そして、SIPサーバ142は、UNI経路を介して、INVEITEメッセージを再送する(S914)。これにより、INVEITEメッセージは、ターミナルアダプタ200に到達する。そして、通話が確立される(S916)。
なお、図9では、S906でSIPサーバ142がターミナルアダプタ200に対して送信したINVITE(着信要求)メッセージが、ターミナルアダプタ200に到達しない例を挙げて説明したが、到達した場合、その到達に応じて、品質測定パケット送信部214が、NNI経路を介して品質測定パケットを品質測定サーバ144に送信してよい。この場合、送信した品質測定パケットによって、経路品質測定部218が、NNI経路の輻輳を検出することになり、品質測定パケット送信部214は、検出したのに応じて、UNI経路を介して、品質測定サーバ144に品質測定パケットを送信してよい。以降の処理は、S912以降と同様であってよい。
このように、ターミナルアダプタ200が、NNI経路上の輻輳を検出した場合に、UNI経路を登録することによって、SIPサーバ142がINVEITEメッセージを送信するときにNNI経路に輻輳が発生していても、通話を確立させることができる。なお、SIPサーバ142は、ターミナルアダプタ200が品質測定パケットを送信する時間間隔よりも長い時間、再送処理を繰り返してよい。これにより、ターミナルアダプタ200がNNI経路から、UNI経路に切り替えるまで再送処理を繰り返すことができ、通話が確立する前に、再送処理を終了してしまうことを防止できる。
以上の説明において、ターミナルアダプタ200の各部は、ハードウエアにより実現されてもよく、ソフトウエアにより実現されてもよい。また、ハードウエアとソフトウエアとの組み合わせにより実現されてもよい。例えば、ターミナルアダプタ200上でプログラムが実行されることにより、コンピュータが、ターミナルアダプタ200の一部として機能してもよい。プログラムは、コンピュータ読み取り可能な媒体に記憶されていてもよく、ネットワークに接続された記憶装置に記憶されていてもよい。CPU、ROM、RAM、通信インターフェース等を有するデータ処理装置と、入力装置と、出力装置と、記憶装置とを備えた一般的な構成の情報処理装置において、ターミナルアダプタ200の各部の動作を規定したソフトウエア又はプログラムを起動することにより、ターミナルアダプタ200が実現されてよい。
コンピュータにインストールされ、コンピュータを本実施形態に係るターミナルアダプタ200の一部として機能させるプログラムは、ターミナルアダプタ200の各部の動作を規定したモジュールを備える。これらのプログラム又はモジュールは、CPU等に働きかけて、コンピュータを、ターミナルアダプタ200の各部としてそれぞれ機能させる。これらのプログラムに記述された情報処理は、コンピュータに読込まれることにより、ソフトウエアと上述した各種のハードウエア資源とが協働した具体的手段として機能する。そして、これらの具体的手段によって、本実施形態におけるコンピュータの使用目的に応じた情報の演算又は加工を実現することにより、使用目的に応じた特有の測定装置を構築することができる。
また、SIPサーバ142及び品質測定サーバ144は、CPU、ROM、RAM、通信インターフェースなどを有するデータユニットと、キーボード、タッチパネル、マイクなどの入力ユニットと、ディスプレイ、スピーカなどの出力ユニットと、メモリ、HDDなどの記憶ユニットとを備えた一般的な構成の情報処理装置において、SIPサーバ142及び品質測定サーバ144の各部の動作を規定したソフトウェア又はプログラムを起動することにより実現されてよい。
本実施形態では、ターミナルアダプタ200と電話機300とを別体として説明したが、これに限らない。ターミナルアダプタ200と電話機300とは一体であってもよい。すなわち、ターミナルアダプタ200と電話機300の機能を備えるIP電話機であってもよい。
また、本実施形態では、経路品質の測定に品質測定パケットを用いる場合を主に説明したが、これに限らない。経路品質測定部218は、経路品質を測定できる他の手法によって、経路品質を測定してよい。
また、本実施形態では、IP電話サービスを対象とする場合を例に挙げて説明したが、これに限らず、NNI及びUNIを介した通信を実行する他の通信サービスを対象としてもよい。
また、本実施形態では、ユーザによる発呼処理又は着呼による通話が実行されている場合に、経路品質測定部218が実呼測定を行う場合を例に挙げて説明したが、これに限らない。例えば、予め定められた通信相手に対して、定期的に実呼測定を実行してもよい。例えば、通信網の状況を監視するべく、他の県に設置された通信相手に対して、定期的に実呼測定を実行してもよい。このとき、例えば、電話機302と、固定電話152との間の実呼測定の結果に基づいて、ターミナルアダプタ202が、迂回経路を登録してもよい。具体的に、ターミナルアダプタ202は、NNI経路を介した固定電話152との通話に対して実呼測定を実行し、経路品質が予め定められた基準を超えない場合に、UNI経路を迂回経路として登録してよい。
また、本実施形態では、通信装置の一例として、ターミナルアダプタ200を挙げて説明したが、これに限らず、SIPサーバ142又は品質測定サーバ144が通信装置の一例であってもよい。例えば、SIPサーバ142は、経路品質測定部218と、輻輳状態判定部224とを備える。この場合、SIPサーバ142は、ターミナルアダプタ200に対してNNI経路及びUNI経路を介して品質測定パケットを送信することによって、NNI経路及びUNI経路の経路品質を測定してよく、輻輳状態を判定してよい。そして、SIPサーバ142は、NNI経路の経路品質が予め定められた基準を超えていると判定された場合、NNI経路を介してターミナルアダプタ200と通信し、NNI経路の経路品質が予め定められた基準を超えていない場合、UNI経路を介して通信してよい。
また、通信装置は、ターミナルアダプタ200及びSIPサーバ142と通信可能な他の装置であってもよい。当該他の装置は、経路品質測定部218、経路品質判定部226、及びターミナルアダプタ200とSIPサーバ142との通信を制御する通信制御部とを備えてよい。また、さらに、当該他の装置は、通信部210、履歴格納部220、平均時間算出部222、及び輻輳状態判定部224を備えてもよい。この場合、ターミナルアダプタ200は通信端末の一例であってよい。また、SIPサーバ142はサーバの一例であってよい。
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。その様な変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
特許請求の範囲、明細書、および図面中において示した装置、システム、プログラム、および方法における動作、手順、ステップ、および段階などの各処理の実行順序は、特段「より前に」、「先立って」などと明示しておらず、また、前の処理の出力を後の処理で用いるのでない限り、任意の順序で実現しうることに留意すべきである。特許請求の範囲、明細書、および図面中の動作フローに関して、便宜上「まず、」、「次に、」などを用いて説明したとしても、この順で実施することが必須であることを意味するものではない。