[第1実施形態]
本発明の第1実施形態について図面を参照して詳細に説明する。図1には、IMSネットワークシステムの構成例が示されている。IPネットワーク1000は、IMSネットワークシステムとして、IMSサーバ1200aと、IMSサーバ1300aとを備える。なお、IPネットワーク1000は、さらに多くのIMSサーバを備えてもよい。
IMSサーバ1200a及びIMSサーバ1300aは、同じドメイン1100に属し、ネットワークオペレータ100により運用されている。以下、IMSサーバ1200aは、複雑な課金システム及びアプリケーションサーバ(図1には不図示)との連携など、IMSの多数の標準化仕様に準拠しており、高品質なサービスを提供することができる高品質なIMSサーバであるとする。一方、IMSサーバ1300aは、通話に必要な機能は備えるものの、通話品質が保障されない低品質なIMSサーバであるとする。
端末(User Equipment:UE)2000−1及び端末2000−2は、IMSサーバ1200a又はIMSサーバ1300aに通信接続することで互いに通信する。例えば、低品質なIMSサーバ1200aに通信接続しているために高品質な通信やアプリケーションサーバを利用できない場合、端末2000−1又は端末2000−2は、IMSネットワークシステムによる制御に基づいて、ユーザ及びその通信相手に意識させることなく、高品質なIMSサーバ1300aに通信接続先を切り替える。
まず、IMSネットワークシステムの構成例を説明する。
図2には、IMSサーバを含むIMSネットワークシステムの構成例が、ブロック図により示されている。IPネットワーク1000(図1を参照)は、IMSサーバ1200aと、IMSサーバ1300aと、アプリケーションサーバ3000a(Application Server:AS)と、ホーム加入者サーバ4000a(Home Subscriber Server:HSS)とを備える。
端末2000−1は、IMSネットワークシステムに対して、SIPメッセージを送受信する。例えば、端末2000−1は、SIPメッセージを用いて、自端末の登録処理を実行する。また、端末2000−1は、アプリケーションサーバ3000aから指定されたIMSサーバ1200a又はIMSサーバ1300aを介して、端末2000−2と通信する。
端末2000−1は、通信部2100−1を備える。
通信部2100−1は、IMSネットワークシステムに対して、SIPメッセージを送受信することにより、自端末の登録処理を実行する。ここで、通信部2100−1は、IMSサーバ1200aのP−CSCFサーバ1210(後述)を介して、SIPメッセージを送受信する。
端末2000−1は、切替部2200−1を更に備える。
切替部2200−1は、アプリケーションサーバ3000aの通知部3300(後述)から指定されたCSCFサーバに対して、自端末の再登録を実行する。また、切替部2200−1は、自端末が発呼中である場合、発呼処理を再実行する。
端末2000−2は、IMSネットワークシステムに対して、SIPメッセージを送受信する。例えば、端末2000−2は、SIPメッセージを用いて、自端末の登録処理を実行する。また、端末2000−2は、アプリケーションサーバ3000aから指定されたIMSサーバ1200a又はIMSサーバ1300aを介して、端末2000−1と通信する。
端末2000−2は、通信部2100−2を備える。通信部2100−2は、IMSネットワークシステムに対して、SIPメッセージを送受信することにより、自端末の登録処理を実行する。ここで、通信部2100−2は、IMSサーバ1300aのP−CSCFサーバ1310(後述)を介して、SIPメッセージを送受信する。
端末2000−2は、切替部2200−2を更に備える。切替部2200−2は、アプリケーションサーバ3000aの通知部3300(後述)から指定されたCSCFサーバに対して、自端末の再登録を実行する。また、切替部2200−2は、自端末が発呼中である場合、発呼処理を再実行する。
IMSサーバ1200aは、ドメイン1100(図1を参照)に予め定められたグループ1に属するIMSサーバである。IMSサーバ1200aは、SIP処理を実行するノードとして、P−CSCF(Proxy−Call Session Control Function)サーバ1210と、I−CSCF(Interrogating−CSCF)サーバ1220と、S−CSCF(Serving−CSCF)サーバ1230aとを備える。
以下、端末2000−1及び端末2000−2に共通する事項については、符号を略して、「端末2000」と表記する。P−CSCFサーバ1210は、端末2000から直接的に通信接続されるノードであり、暗号化、及びメッセージのフィルタリング等を実行する。P−CSCFサーバ1210は、P−CSCF部1211を備える。P−CSCF部1211は、IMSネットワークシステムに端末2000が通信接続する際の接点となる機能ブロックである。
P−CSCF部1211は、端末2000から送信されたSIPメッセージを、I−CSCFサーバ1220又はS−CSCFサーバ1230aに転送する。また、I−CSCFサーバ1220又はS−CSCFサーバ1230aから端末2000に送信されるSIPメッセージを、送信先の端末2000に転送する。
I−CSCFサーバ1220は、I−CSCF部1221を備える。I−CSCF部1221は、SIPメッセージのルーティングを実行する際、転送先の識別情報(例えば、IPアドレス)の解決、及び他ドメインにSIPメッセージを転送する処理を実行する。
また、I−CSCF部1221は、端末2000が登録処理を実行した(登録要求メッセージを送信した)場合、どのS−CSCFサーバに登録すべきかを、ホーム加入者サーバ4000aのデータベース部4100(後述)に問い合わせ、問い合わせの応答としてホーム加入者サーバ4000aから指定されたS−CSCFサーバに、端末2000からの登録要求メッセージを転送する。
また、I−CSCF部1221は、端末2000にSIPメッセージを送信する際、その端末2000がどのS−CSCFサーバに登録されているかを、ホーム加入者サーバ4000aのデータベース部4100(後述)に問い合わせ、問い合わせの応答としてホーム加入者サーバ4000aから指定されたS−CSCFサーバに、端末2000宛てのSIPメッセージを転送する。
S−CSCFサーバ1230aは、S−CSCF部1231を備える。S−CSCF部1231は、端末2000の登録処理、アプリケーションサーバ3000aのアプリケーション部3100(後述)との連携、及び通信相手の端末の識別情報(例えば、IPアドレス)の解決等、SIPの主要な機能を実行する。
S−CSCF部1231は、端末2000の登録処理、及びその端末2000が送受信するSIPメッセージの制御を実行する。S−CSCF部1231は、端末2000から登録要求メッセージを受信した場合、該当端末2000の認証情報をホーム加入者サーバ4000aのデータベース部4100(後述)に問い合わせ、端末2000を認証し、登録要求メッセージを送信した端末2000の識別情報(例えば、IPアドレス)を保持する。
また、S−CSCF部1231は、その端末2000がS−CSCF部1231に登録されていることを、ホーム加入者サーバ4000aのデータベース部4100(後述)に登録する。これにより、端末2000宛に送信されるSIPメッセージは、まずS−CSCF部1231に転送され、S−CSCF部1231が端末2000の識別情報を確認することで、送信先の端末2000に転送される。また、その端末2000が送信したSIPメッセージも、S−CSCF部1231を経由する。
なお、初期フィルタ基準(initial Filter Criteria:iFC)で指定された条件に該当する通知及びSIPメッセージは、端末2000の登録処理、及びメッセージの転送処理の際、iFCにより指定されたアプリケーションサーバ3000aに転送される。
IMSサーバ1300aは、ドメイン1100(図1を参照)に予め定められたグループ2に属するIMSサーバである。IMSサーバ1300aは、SIP処理を実行するノードとして、P−CSCFサーバ1310と、I−CSCFサーバ1320と、S−CSCFサーバ1330aとを備える。
P−CSCFサーバ1310は、端末2000から直接的に通信接続されるノードであり、暗号化、及びメッセージのフィルタリング等を実行する。P−CSCFサーバ1310は、P−CSCF部1311を備える。P−CSCF部1311は、IMSネットワークシステムに端末2000が通信接続する際の接点となる機能ブロックである。
P−CSCF部1311は、端末2000から送信されたSIPメッセージを、I−CSCFサーバ1320又はS−CSCFサーバ1330aに転送する。また、I−CSCFサーバ1320又はS−CSCFサーバ1330aから端末2000に送信されるSIPメッセージを、送信先の端末2000に転送する。
I−CSCFサーバ1320は、I−CSCF部1321を備える。I−CSCF部1321は、SIPメッセージのルーティングを実行する際、転送先の識別情報(例えば、IPアドレス)の解決、及び他ドメインにSIPメッセージを転送する処理を実行する。
また、I−CSCF部1321は、端末2000が登録処理を実行した(登録要求メッセージを送信した)場合、どのS−CSCFサーバに登録すべきかを、ホーム加入者サーバ4000aのデータベース部4100(後述)に問い合わせ、問い合わせの応答としてホーム加入者サーバ4000aから指定されたS−CSCFサーバに、端末2000からの登録要求メッセージを転送する。
また、I−CSCF部1321は、端末2000にSIPメッセージを送信する際、その端末2000がどのS−CSCFサーバに登録されているかを、ホーム加入者サーバ4000aのデータベース部4100(後述)に問い合わせ、問い合わせの応答としてホーム加入者サーバ4000aから指定されたS−CSCFサーバに、端末2000宛てのSIPメッセージを転送する。
S−CSCFサーバ1330aは、S−CSCF部1331を備える。S−CSCF部1331は、端末2000の登録、アプリケーションサーバ3000aのアプリケーション部3100(後述)との連携、及び通信相手の端末に接続するための識別情報の解決等、SIPの主要な機能を実行する。
S−CSCF部1331は、端末2000の登録処理、及びその端末2000が送受信するSIPメッセージの制御を実行する。S−CSCF部1331は、端末2000から登録要求メッセージを受信した場合、該当端末2000の認証情報をホーム加入者サーバ4000aのデータベース部4100(後述)に問い合わせ、端末2000を認証し、登録要求メッセージを送信した端末2000の識別情報(例えば、IPアドレス)を保持する。
また、S−CSCF部1331は、その端末2000がS−CSCF部1331に登録されていることを、ホーム加入者サーバ4000aのデータベース部4100(後述)に登録する。これにより、端末2000宛に送信されるSIPメッセージは、まずS−CSCF部1331に転送され、S−CSCF部1331が端末2000の識別情報を確認することで、送信先の端末2000に転送される。また、その端末2000が送信したSIPメッセージも、S−CSCF部1331を経由する。
アプリケーションサーバ3000aは、アプリケーション部3100を備える。アプリケーション部3100は、SIPに基づいて、S−CSCF部1231又はS−CSCF部1331を介して、端末2000と通信する。アプリケーション部3100は、端末2000が登録処理を実行した(登録要求メッセージを送信した)場合、iFCに基づいて登録要求メッセージを受信し、SIPメッセージ「INVITE」に基づいて発呼処理を実行する。
アプリケーションサーバ3000aは、保留部3200と、通知部3300と、ポリシー管理部3400と、取得部3500とを更に備える。保留部3200は、端末2000が接続先のIMSサーバ(グループ)を切り替える必要がある場合、発呼処理の実行を保留する。
また、保留部3200は、端末2000が接続先のIMSサーバ(グループ)を切り替え、新たなIMSサーバ(グループ)に接続した場合、保留中の処理を再開させる。また、保留部3200は、必要に応じて、発呼元の端末2000にエラーメッセージを返し、呼処理を中断させ、のちにSIPメッセージ「REFER」を送信することで、発呼処理を再開させる。
通知部3300は、端末2000が接続先のIMSサーバ(グループ)を切り替える必要がある場合、接続先のIMSサーバ(グループ)を切り替えるためのSIPメッセージを、その端末2000に送信する。
ポリシー管理部3400は、端末2000(発側及び着側)の機能、及び通信に利用される機能の少なくとも一方に基づいて、接続先のIMSサーバ(グループ)の切り替えが必要か否かを判定する。すなわち、ポリシー管理部3400は、IMSサーバ1200aとIMSサーバ1300aとの互換性(品質、機能)、及びネットワークオペレータ100(図1を参照)の運用ポリシーの少なくとも一方に基づいて、端末2000が属するグループの切り替えの要否(要求された通信に問題が生じるか否か)を判定する。
取得部3500は、端末2000が属するグループを、ホーム加入者サーバ4000aのグループ管理部4200(後述)に問い合わせる。
ホーム加入者サーバ4000aは、データベース部4100を備える。データベース部4100は、端末2000(UE)の認証情報、及び端末2000がどのS−CSCFサーバに登録されているか等を示す情報(以下、「加入者情報」という)を記憶する。
また、データベース部4100は、I−CSCF部1221、I−CSCF部1321、S−CSCF部1231、及びS−CSCF部1331から、加入者情報の問い合わせがあった場合、その問い合わせに対して応答する。また、データベース部4100は、加入者情報を更新するよう要求された場合、加入者情報を更新する。
ホーム加入者サーバ4000aは、グループ管理部4200を更に備える。グループ管理部4200は、各IMSサーバ(各CSCFサーバ)が属しているグループを管理する。また、グループ管理部4200は、端末2000の接続先のIMSサーバ(CSCFサーバ)が属するグループを、その端末2000が属するグループと定める。
また、端末2000を割り振る(登録する)S−CSCFサーバを決定する際、グループ管理部4200は、異なるグループに属する複数のIMSサーバ(CSCFサーバ)が一つの端末2000から利用されないようにする。具体的には、グループ管理部4200は、ホーム加入者サーバ4000aから指定されたCSCFサーバと同じグループに属するS−CSCFサーバの識別情報(端末2000が属するグループを示す情報)を、問い合わせの応答として、I−CSCFサーバ1220又はI−CSCFサーバ1320に送信する。
また、グループ管理部4200は、アプリケーションサーバ3000aの取得部3500からの問い合わせに対し、端末2000が属するグループを示す情報を返信する。
なお、第1実施形態では、ホーム加入者サーバ4000aは、端末2000−1及び端末2000−2から、共通に利用される。これは、IMSネットワークシステムが輻輳している場合でも、ホーム加入者サーバ4000aの負荷が大幅に増えないためである。また、全ての端末2100の登録情報を記憶するホーム加入者サーバを、全てのグループにそれぞれ配備することは、効率的でないためである。
次に、IMSネットワークシステムの動作手順を説明する。
図3は、登録フローを示すシーケンス図である。IMSネットワークシステムを利用するため、全ての端末2000は、この登録フローを実行する。以下、この登録フローを実行することにより、端末2000−1は、グループ1に属するIMSサーバ1200aのP−CSCFサーバ1210に接続したことで、初期状態では、グループ1に属しているものとする。一方、端末2000−2(図2を参照)は、グループ2に属するIMSサーバ1300aのP−CSCFサーバ1310に接続したことで、初期状態では、グループ2に属しているものとする。
なお、P−CSCFサーバ1210及びP−CSCFサーバ1310の識別情報は、IMS以外の仕組み(例えば、DHCP(Dynamic Host Configuration Protocol))により、端末2000に事前通知されているものとする。
端末2000−1は、IMS標準に準拠した登録動作として、SIPメッセージ「REGISTER」を送信する(ステップS1)。P−CSCFサーバ1210は、端末2000−1からSIPメッセージ「REGISTER」を受信し、受信したSIPメッセージ「REGISTER」を、I−CSCFサーバ1220に転送する(ステップS2)。
I−CSCFサーバ1220は、端末2000−1を割り振るS−CSCFサーバ1230aの識別情報を、Diameterプロトコルにより、ホーム加入者サーバ4000aに問い合わせる(User−Authorization−Request:UAR)。
ホーム加入者サーバ4000aは、I−CSCFサーバ1220と同じグループに属するS−CSCFサーバを列挙する(グループ管理機能)。ここで、ホーム加入者サーバ4000aは、I−CSCFサーバ1220の識別情報(例えば、IPアドレス)に基づいて、S−CSCFサーバを列挙してもよいし、Diameterプロトコルに拡張ヘッダを指定して、指定した拡張ヘッダにI−CSCFサーバ名などの情報を付与することにより、S−CSCFサーバを列挙してもよい(ステップS3)。
ホーム加入者サーバ4000aは、列挙したS−CSCFサーバのうちから、端末2000−1を割り振るS−CSCFサーバ1230aを選択し、選択したS−CSCFサーバ1230aの識別情報を、I−CSCFサーバ1220に通知する(User−Authorization−Answer:UAA)(ステップS4)。
I−CSCFサーバ1220は、ホーム加入者サーバ4000aから通知された識別情報が示すS−CSCFサーバ1230aに、端末2000−1から受信したSIPメッセージ「REGISTER」を転送する(ステップS5)。
S−CSCFサーバ1230aは、端末2000−1の認証情報を、ホーム加入者サーバ4000aに問い合わせる(Multimedia−Auth−Request:MAR)(ステップS6)。ホーム加入者サーバ4000aは、端末2000−1の認証情報を、S−CSCFサーバ1230aに通知する(Multimedia−Auth−Answer:MAA)(ステップS7)。
S−CSCFサーバ1230aは、端末2000−1の認証情報に基づいて、認証キー及び暗号化キーを作成し、SIPメッセージ「401 Unauthorized」を、I−CSCFサーバ1220に送信する(ステップS8)。I−CSCFサーバ1220は、SIPメッセージ「401 Unauthorized」を、そのViaヘッダに基づいて、P−CSCFサーバ1210に転送する(ステップS9)。
P−CSCFサーバ1210は、SIPメッセージ「401 Unauthorized」を、そのViaヘッダに基づいて、端末2000−1に転送する(ステップS10)。端末2000−1は、SIPメッセージ「401 Unauthorized」及び自端末の情報に基づいて、認証応答メッセージとしてSIPメッセージ「REGISTER」を作成し、SIPメッセージ「REGISTER」を、P−CSCFサーバ1210に再送信する(ステップS11)。
P−CSCFサーバ1210は、端末2000−1からSIPメッセージ「REGISTER」を受信し、受信したSIPメッセージを、I−CSCFサーバ1220に転送する(ステップS12)。I−CSCFサーバ1220は、SIPメッセージ「REGISTER」を、S−CSCFサーバ1230aに転送する(ステップS13)。
S−CSCFサーバ1230aは、SIPメッセージ「REGISTER」(認証応答メッセージ)を確認し、端末2000−1が確認できた場合、加入者情報の更新をホーム加入者サーバ4000aに依頼する(Server−Assignment−Request:SAR)(ステップS14)。ホーム加入者サーバ4000aは、加入者情報を更新し、更新結果をS−CSCFサーバ1230aに通知する(Server−Assignment−Answer:SAA)(ステップS15)。
S−CSCFサーバ1230aは、登録完了を示すSIPメッセージ「200OK」を、I−CSCFサーバ1220に送信する(ステップS16)。I−CSCFサーバ1220は、SIPメッセージ「200OK」を、P−CSCFサーバ1210に転送する(ステップS17)。P−CSCFサーバ1210は、SIPメッセージ「200OK」を、端末2000−1に転送する(ステップS18)。
一方、ホーム加入者サーバ4000aは、iFCに基づいて、SIPメッセージ「REGISTER」を、アプリケーションサーバ3000aに送信する。アプリケーションサーバ3000aは、SIPメッセージ「REGISTER」に基づいて、サードパーティ(3rd party)登録処理を実行する。このサードパーティ登録は、端末2000aの登録状態の監視に用いられる(ステップS19)。アプリケーションサーバ3000aは、SIPメッセージ「200OK」を、ホーム加入者サーバ4000aに応答として返信する(ステップS20)。
このようにして、端末2000−1は、グループ1に属するIMSサーバ1200aのS−CSCFサーバ1230aに割り振られる(登録される)。なお、端末2000−2は、グループ1とグループ2の違いはあるが、同様の登録フローにより、グループ2に属するIMSサーバ1300aのS−CSCFサーバ1330aに割り振られる(登録される)。
図4は、発呼フローを示すシーケンス図である。ここでは、発呼する側(発側)の端末を、端末2000−1であるとして説明するが、発側の端末を端末2000−2とした場合も、グループ1とグループ2の違いを除いて、同様のフローとなる。
端末2000−1は、発呼のため、SIPメッセージ「INVITE」を、P−CSCFサーバ1210に送信する(ステップSa1)。P−CSCFサーバ1210は、端末2000−1が割り振られているS−CSCFサーバ1230aに、SIPメッセージ「INVITE」を転送する(ステップSa2)。S−CSCFサーバ1230aは、SIPメッセージ「INVITE」を、iFCに基づいて、アプリケーションサーバ3000aに送信する(ステップSa3)。
アプリケーションサーバ3000aは、端末2000−1が属しているグループと、端末2000−2が属しているグループとを、ホーム加入者サーバ4000aに問い合わせる。
問い合わせの結果、端末2000−1及び端末2000−2が同じグループに属している等、接続性に問題が無い(要求された通信に問題が生じない)場合、アプリケーションサーバ3000aは、所定の通常処理として、ステップSa20(後述)に処理を進める。
一方、端末2000−1及び端末2000−2が異なるグループに属している場合、アプリケーションサーバ3000aは、IMSサーバ1200aとIMSサーバ1300aとの互換性、及び予め定められた運用ポリシーの少なくとも一方に基づいて、端末2000が属するグループの切り替えの要否(要求された通信に問題が生じるか否か)を判定する。
例えば、IMSサーバ1200a(グループ1)では対応していない機能を使う必要がある等、接続性に問題がある(要求された通信に問題が生じる)場合、アプリケーションサーバ3000aは、端末2000−1が接続するIMSサーバを、IMSサーバ1300a(グループ2)に切り替えると判定する。一方、IMSサーバ1200aでは対応していない機能を使う必要がない等、接続性に問題が無い(要求された通信に問題が生じない)場合、アプリケーションサーバ3000aは、所定の通常処理として、ステップSa20(後述)に処理を進める(ステップSa4)。
なお、端末2000−1と端末2000−2とが同じグループに属している場合であっても、アプリケーションサーバ3000aは、要求された通信及び機能に応じて、IMSサーバ(グループ)を切り替えさせてもよい。
アプリケーションサーバ3000aは、判定結果に基づいて、発側である端末2000−1が割り振られているIMSサーバ1200a(グループ1)から、IMSサーバ1300a(グループ2)に割り振りを切り替える場合、接続先をIMSサーバ1300a(グループ2)に切り替える指示を、S−CSCFサーバ1230aを介して端末2000−1に通知する。
ここで、アプリケーションサーバ3000aは、新たな接続先のP−CSCFサーバ1310を示す識別情報を、SIPメッセージ「MESSAGE」、「NOTIFY」、又は、ドメイン1100(図1を参照)に属さない装置が有する機能(例えば、ショートメッセージサービス(Short Message Service:SMS))に含めて、再登録通知として送信してもよい(ステップSa5)。
なお、新たな接続先のP−CSCFサーバ1310を示す識別情報(再登録通知)は、DHCPを用いて通知されてもよい。この場合、アプリケーションサーバ3000aは、新たな接続先のP−CSCFサーバ1310を示す識別情報を、再登録通知を行う前にDHCPサーバに予め与えておく。
S−CSCFサーバ1230aは、アプリケーションサーバ3000aから通知されたSIPメッセージを、P−CSCFサーバ1210に転送する(ステップSa6)。P−CSCFサーバ1210は、S−CSCFサーバ1230aから通知されたSIPメッセージを、端末2000−1に転送する(ステップSa7)。
端末2000−1は、再登録の完了を示すSIPメッセージ「200OK」を、P−CSCFサーバ1210に送信する(ステップSa8)。P−CSCFサーバ1210は、SIPメッセージ「200OK」を、S−CSCFサーバ1230aに転送する(ステップSa9)。S−CSCFサーバ1230aは、SIPメッセージ「200OK」を、アプリケーションサーバ3000aに転送する(ステップSa10)。
一方、端末2000−1は、登録解除を示すSIPメッセージ「DE−REGISGER」を、P−CSCFサーバ1210に送信する(ステップSa11)。P−CSCFサーバ1210は、SIPメッセージ「DE−REGISGER」を、S−CSCFサーバ1230aに転送する(ステップSa12)。S−CSCFサーバ1230aは、端末2000−1の登録を解除し、SIPメッセージ「200OK」を、P−CSCFサーバ1210に送信する。そして、P−CSCFサーバ1210は、SIPメッセージ「200OK」を、端末2000−1に転送する(ステップSa14)。
端末2000−1は、新たな接続先のP−CSCFサーバ1310を示す識別情報(再登録通知)に基づいて、グループ2に属するIMSサーバ1300aに対して、登録フロー(図3を参照)を実行する(ステップSa15)。
端末2000−1は、発呼のため、SIPメッセージ「INVITE」を、P−CSCFサーバ1310に送信する(ステップSa16)。なお、端末2000−1は、登録完了後に、SIPメッセージ「INVITE」を自発的に送信してもよい。また、アプリケーションサーバ3000aは、端末2000−1の登録状態をサードパーティ登録に基づいて検知し、SIPメッセージ「REFER」を、S−CSCFサーバ1230aを介して端末2000−1に送信することで、SIPメッセージ「INVITE」の送信を端末2000−1に促してもよい。
P−CSCFサーバ1310は、SIPメッセージ「INVITE」を、S−CSCFサーバ1330aに送信する(ステップSa17)。S−CSCFサーバ1330aは、SIPメッセージ「INVITE」を、iFCに基づいて、アプリケーションサーバ3000aに送信する(ステップSa18)。
アプリケーションサーバ3000aは、端末2000−1が属しているグループと、端末2000−2が属しているグループとを、ステップSa4と同様に、ホーム加入者サーバ4000aに問い合わせる(ステップSa19)。
アプリケーションサーバ3000aは、IMSサーバ1200aとIMSサーバ1300aとの互換性、及び予め定められた運用ポリシーの少なくとも一方に基づいて、端末2000−1と端末2000−2との接続性に問題が無いか否か(要求された通信に問題が生じないか否か)を判定する。
接続性に問題が無い(要求された通信に問題が生じない)場合、アプリケーションサーバ3000aは、SIPメッセージ「INVITE」を、S−CSCFサーバ1330aに転送する(ステップSa20)。S−CSCFサーバ1330aは、IMS標準に準拠した発呼処理により、SIPメッセージ「INVITE」を、着側の端末である端末2000−2に送信する(ステップSa21)。
図5は、着呼フローを示すシーケンス図である。ここでは、着呼される側(着側)の端末を、端末2000−2であるとして説明するが、着側の端末を端末2000−1とした場合も、グループ1とグループ2の違いを除いて、同様のフローとなる。以下、着側の端末である端末2000−2は、初期状態では、S−CSCFサーバ1330aに割り振られている(登録されている)ものとして説明を続ける。
S−CSCFサーバ1230aは、発側の端末である端末2000−1から送信されたSIPメッセージ「INVITE」を、S−CSCFサーバ1330aに送信する(ステップSc1)。S−CSCFサーバ1330aは、SIPメッセージ「INVITE」を、iFCに基づいて、アプリケーションサーバ3000aに送信する(ステップSc2)。
アプリケーションサーバ3000aは、端末2000−1が属しているグループと、端末2000−2が属しているグループとを、ホーム加入者サーバ4000aに問い合わせる(ステップSc3)。
問い合わせの結果、端末2000−1及び端末2000−2が同じグループに属している(要求された通信に問題が生じない)場合、アプリケーションサーバ3000aは、所定の通常処理として、ステップSc22(後述)に処理を進める。
一方、端末2000−1及び端末2000−2が異なるグループに属している場合、アプリケーションサーバ3000aは、IMSサーバ1200aとIMSサーバ1300aとの互換性、及び予め定められた運用ポリシーの少なくとも一方に基づいて、端末2000が割り振られているIMSサーバ(グループ)の切り替えの要否(要求された通信に問題が生じるか否か)を判定する。
そして、アプリケーションサーバ3000aは、判定結果に基づいて、着側である端末2000−2が割り振られているIMSサーバ1300a(グループ2)から、IMSサーバ1200a(グループ1)に割り振りを切り替えるとした場合、接続先をIMSサーバ1200a(グループ1)に切り替える指示として、SIPメッセージ「480 Temporarily Unavailable」などのエラーメッセージを、S−CSCFサーバ1330aを介して端末2000−2に通知する(ステップSc4)。
なお、アプリケーションサーバ3000aは、このエラーメッセージに「Retry−Afterヘッダ」を付け、さらに、一定時間後にSIPメッセージ「INVITE」を再送信してもよい。この場合、後述するステップSc17における、SIPメッセージ「REFER」の送信は不要である。
S−CSCFサーバ1330aは、SIPメッセージ「480 Temporarily Unavailable」を、発側の端末である端末2000−1に転送する(ステップSc5)。
アプリケーションサーバ3000aは、判定結果に基づいて、着側の端末である端末2000−2が割り振られているIMSサーバ1300a(グループ2)から、IMSサーバ1200a(グループ1)に割り振りを切り替える場合、IMSサーバ1200a(グループ1)のP−CSCFサーバ1210に切り替える指示を、S−CSCFサーバ1330aを介して端末2000−1に通知する(ステップSc6)。
ステップSc7〜ステップSc16は、図4に示す発呼フローのステップSa6〜ステップSa15と、それぞれ同様である。
アプリケーションサーバ3000aは、端末2000−2の再登録をサードパーティ登録に基づいて検知し、SIPメッセージ「REFER」を、S−CSCFサーバ1230aに送信する(ステップSc17)。S−CSCFサーバ1230aは、SIPメッセージ「REFER」を、端末2000−1に転送する(ステップSc18)。
そして、S−CSCFサーバ1230aは、端末2000−1から再送信されたSIPメッセージ「INVITE」を受信する(ステップSc19)。なお、上記で説明したように、SIPメッセージ「INVITE」は、一定時間後にアプリケーションサーバ3000aから再送信されてもよい。
S−CSCFサーバ1230aは、再送信されたSIPメッセージ「INVITE」を、アプリケーションサーバ3000aに転送する(ステップSc20)。アプリケーションサーバ3000aは、端末2000−1が属しているグループと、端末2000−2が属しているグループとを、ホーム加入者サーバ4000aに問い合わせる(ステップSc21)。
問い合わせの結果、端末2000−1及び端末2000−2が同じグループに属している(要求された通信に問題が生じない)場合、アプリケーションサーバ3000aは、SIPメッセージ「INVITE」を、S−CSCFサーバ1230aに送信する(ステップSc22)。
S−CSCFサーバ1230aは、SIPメッセージ「INVITE」を、P−CSCFサーバ1210に送信する(ステップSc23)。P−CSCFサーバ1210は、着側の端末である端末2000−2に、SIPメッセージ「INVITE」を転送する(ステップSc24)。以降の処理は、IMS標準に準拠する処理と同様である。
以上のように、ホーム加入者サーバと、アプリケーションサーバと、複数のCSCFサーバ(IMSサーバ)と、を備えるIMSネットワークシステムにおいて、IMSネットワークシステムは、発呼する側の発呼端末(端末2000−1)及び着呼される側の着呼端末(端末2000−2)を、同じドメイン1100のグループに属するCSCFサーバ、すなわち、グループ1のIMSサーバ1200a、及びグループ2のIMSサーバ1300aに、前記グループを区別して登録させるホーム加入者サーバ4000aと、前記発呼端末(端末2000−1)が登録されているCSCFサーバ(IMSサーバ1200a)、及び、前記着呼端末(端末2000−2)が登録されているCSCFサーバ(IMSサーバ1300a)の間で通信に問題が生じるか否かを、前記発呼端末(端末2000−1)が発呼処理を開始(SIPメッセージを送信)した際に判定し、通信に問題が生じると判定した場合、前記発呼処理を保留し、通信相手の端末と同じグループに属するCSCFサーバ(IMSサーバ1200a又はIMSサーバ1300a)に前記発呼端末(端末2000−1)又は前記着呼端末(端末2000−2)を再登録させ、再登録後に前記発呼処理を再開させるアプリケーションサーバ3000aと、を備える。
この構成により、アプリケーションサーバは、通信に問題が生じると判定した場合、発呼処理を保留し、通信相手の端末と同じグループに属するCSCFサーバに発呼端末又は着呼端末を再登録させ、再登録後に発呼処理を再開させる。これにより、複数のIMSサーバ(CSCFサーバ)が同じドメインに属しているIMSネットワークシステムにおいて、IMSネットワークシステムでは、異なる品質のシステムをユーザ及びその通信相手が意識して使い分けることなく、ユーザ及びその通信相手に通信させることができる。
また、必要な収容量が災害などにより一時的に増加した場合でも、ネットワークオペレータは、高品質で高価なIMSサーバを、IMSネットワークシステムに新たに導入する必要がない。つまり、高品質で高価なIMSサーバと低品質で廉価なIMSサーバとがIMSネットワークシステムに混在しても、ユーザ及びその通信相手は、IMSサーバ毎に異なる識別情報(SIP URI等)を用いることなく、IMSサーバ間で同一の電番又はIDを利用して透過的に通信することができる。この場合、通話品質は、ばらつくことがない。
また、IMSネットワークシステムは、機能の組み合わせ(システムの互換性)及び運用ポリシーの少なくとも一方に応じて、どのIMSサーバを用いるかを制御することができる。また、収容量(処理能力)の増大を急に求められた場合、IMSネットワークシステムは、新たにIMSサーバを稼働し、その新たに稼働したIMSサーバを、すでに稼働していた他のIMSサーバに接続することができる。
また、アプリケーションサーバ3000a(ポリシー管理部3400)は、前記発呼端末(端末2000−1)が登録されているCSCFサーバ(IMSサーバ1200a)と、前記着呼端末(端末2000−2)が登録されているCSCFサーバ(IMSサーバ1300a)との互換性、及び予め定められた運用ポリシーの少なくとも一方に基づいて、通信に問題が生じるか否かを判定する。
また、アプリケーションサーバ3000a(ポリシー管理部3400)は、前記発呼端末(端末2000−1)が登録されているCSCFサーバ(IMSサーバ1200a)と、前記着呼端末(端末2000−2)が登録されているCSCFサーバ(IMSサーバ1300a)とのうち、少なくとも一方のCSCFサーバ(IMSサーバ)が対応していない機能を使う必要がある場合、前記互換性が無いことにより通信に問題が生じると判定する。
また、前記発呼端末(端末2000−1)は、前記再登録後に前記発呼処理を自発的に再開させる。
また、ホーム加入者サーバ4000a(グループ管理部4200)は、前記発呼端末(端末2000−1)が登録されているCSCFサーバ(IMSサーバ1200aのS−CSCFサーバ1230a)の識別情報(例えば、IPアドレス)と、前記着呼端末(端末2000−2)が登録されているCSCFサーバ(IMSサーバ1300aのS−CSCFサーバ1330a)の識別情報とを、前記アプリケーションサーバに通知する。
[第2実施形態]
第2実施形態では、アプリケーションサーバが用いられず、S−CSCFサーバに機能ブロックが追加される点が、第1実施形態と相違する。以下では、第1実施形態との相違点についてのみ説明する。
まず、IMSネットワークシステムの構成例を説明する。
図6には、IMSサーバを含むIMSネットワークシステムの構成例が、ブロック図により示されている。IMSサーバ1200b及びIMSサーバ1300bは、同じドメイン1100に属し、ネットワークオペレータ100(図1を参照)により運用されている。
IMSサーバ1200bは、第1実施形態におけるIMSサーバ1200aに相当する。IMSサーバ1200bは、P−CSCFサーバ1210と、I−CSCFサーバ1220と、S−CSCFサーバ1230bとを備える。
S−CSCFサーバ1230bは、S−CSCF部1231を備える。また、S−CSCFサーバ1230bは、保留部1232と、通知部1233と、ポリシー管理部1234と、取得部1235とを更に備える。
保留部1232は、端末2000が接続先のIMSサーバ(グループ)を切り替える必要がある場合、発呼処理の実行を保留する。また、保留部1232は、端末2000が接続先のIMSサーバ(グループ)を切り替え、新たなIMSサーバ(グループ)に接続した場合、保留中の処理を再開させる。また、保留部1232は、必要に応じて、発呼元の端末2000にエラーメッセージを返し、発呼処理を中断させ、のちにSIPメッセージ「REFER」を送信することで、発呼処理を再開させる。
通知部1233は、端末2000が接続先のIMSサーバ(グループ)を切り替える必要がある場合、接続先のIMSサーバ(グループ)を切り替えるためのSIPメッセージを、その端末2000に送信する。
ポリシー管理部1234は、端末2000(発側及び着側)の機能、及び通信に利用される機能の少なくとも一方に基づいて、接続先のIMSサーバ(グループ)の切り替えが必要か否かを判定する。すなわち、ポリシー管理部1234は、IMSサーバ1200bとIMSサーバ1300bとの互換性(品質、機能)、及びネットワークオペレータ100(図1を参照)の運用ポリシーの少なくとも一方に基づいて、端末2000が属するグループの切り替えの要否(要求された通信に問題が生じるか否か)を判定する。
取得部1235は、端末2000が属するグループを、ホーム加入者サーバ4000aのグループ管理部4200に問い合わせる。
IMSサーバ1300bは、第1実施形態におけるIMSサーバ1300aに相当する。IMSサーバ1300bは、P−CSCFサーバ1310と、I−CSCFサーバ1320と、S−CSCFサーバ1330bとを備える。
S−CSCFサーバ1330bは、S−CSCF部1331を備える。また、S−CSCFサーバ1330bは、保留部1332と、通知部1333と、ポリシー管理部1334と、取得部1335とを更に備える。
保留部1332は、端末2000が接続先のIMSサーバ(グループ)を切り替える必要がある場合、発呼処理の実行を保留する。また、保留部1332は、端末2000が接続先のIMSサーバ(グループ)を切り替え、新たなIMSサーバ(グループ)に接続した場合、保留中の処理を再開させる。また、保留部1332は、必要に応じて、発呼元の端末2000にエラーメッセージを返し、発呼処理を中断させ、のちにSIPメッセージ「REFER」を送信することで、発呼処理を再開させる。
通知部1333は、端末2000が接続先のIMSサーバ(グループ)を切り替える必要がある場合、接続先のIMSサーバ(グループ)を切り替えるためのSIPメッセージを、その端末2000に送信する。
ポリシー管理部1334は、端末2000(発側及び着側)の機能、及び通信に利用される機能の少なくとも一方に基づいて、接続先のIMSサーバ(グループ)の切り替えが必要か否かを判定する。すなわち、ポリシー管理部1334は、IMSサーバ1200bとIMSサーバ1300bとの互換性(品質、機能)、及びネットワークオペレータ100(図1を参照)の運用ポリシーの少なくとも一方に基づいて、端末2000が属するグループの切り替えの要否(要求された通信に問題が生じるか否か)を判定する。
取得部1335は、端末2000が属するグループを、ホーム加入者サーバ4000aのグループ管理部4200に問い合わせる。
次に、IMSネットワークシステムの動作手順を説明する。
図7は、登録フローを示すシーケンス図である。ここで、サードパーティ登録(例えば、図3のステップS19)を実行しない点以外は、図3に示す登録フローと同様である。
図8は、発呼フローを示すシーケンス図である。ここでは、発呼する側(発側)の端末を、端末2000−1であるとして説明するが、発側の端末を端末2000−2とした場合も、グループ1とグループ2の違いを除いて、同様のフローとなる。
また、第2実施形態では、端末2000は、再登録したことを検知させるためのSIPメッセージである、登録解除を示すSIPメッセージ「DE−REGISGER」を送信しない。その代わり、S−CSCFサーバ1230bは、端末2000−1の登録が解除された旨の通知(以下、「登録解除通知」という)を、ホーム加入者サーバ4000aから受信する。具体的には、次のような動作手順となる。
端末2000−1は、発呼のため、SIPメッセージ「INVITE」を、P−CSCFサーバ1210に送信する(ステップSe1)。P−CSCFサーバ1210は、端末2000−1が割り振られているS−CSCFサーバ1230bに、SIPメッセージ「INVITE」を転送する(ステップSe2)。
S−CSCFサーバ1230bは、端末2000−1が属しているグループと、端末2000−2が属しているグループとを、ホーム加入者サーバ4000aに問い合わせる。問い合わせの結果、端末2000−1及び端末2000−2が同じグループに属している(要求された通信に問題が生じない)場合、S−CSCFサーバ1230bは、所定の通常処理として、ステップSe13(後述)に処理を進める。
一方、端末2000−1及び端末2000−2が異なるグループに属している場合、S−CSCFサーバ1230bは、IMSサーバ1200bとIMSサーバ1300bとの互換性、及び予め定められた運用ポリシーの少なくとも一方に基づいて、端末2000が属するグループの切り替えの要否(要求された通信に問題が生じるか否か)を判定する。
例えば、IMSサーバ1300b(グループ2)では対応していない機能を使う必要がある等、接続性に問題がある(要求された通信に問題が生じる)場合、S−CSCFサーバ1230bは、端末2000−2が接続するIMSサーバを、IMSサーバ1200b(グループ1)に切り替えると判定する。一方、IMSサーバ1300bでは対応していない機能を使う必要がない等、接続性に問題が無い(要求された通信に問題が生じない)場合、S−CSCFサーバ1230bは、所定の通常処理として、ステップSe13(後述)に処理を進める(ステップSe3)。
なお、端末2000−1と端末2000−2とが同じグループに属している場合であっても、S−CSCFサーバ1230bは、要求された通信及び機能に応じて、IMSサーバ(グループ)を切り替えさせてもよい。
S−CSCFサーバ1230bは、判定結果に基づいて、発側である端末2000−1が割り振られているIMSサーバ1200b(グループ1)から、IMSサーバ1300b(グループ2)に割り振りを切り替える場合、接続先をIMSサーバ1300b(グループ2)に切り替える指示を、端末2000−1に通知する。
ここで、S−CSCFサーバ1230bは、新たな接続先のP−CSCFサーバ1310を示す識別情報を、SIPメッセージ「MESSAGE」、「SUBSCRIBE」、「NOTIFY」、又は、ドメイン1100(図1を参照)に属さない装置が有する機能(例えば、ショートメッセージサービス)に含めて、再登録通知として送信してもよい(ステップSe4)。
なお、新たな接続先のP−CSCFサーバ1310を示す識別情報(例えば、IPアドレス)は、DHCPを用いて通知されてもよい。この場合、S−CSCFサーバ1230bは、新たな接続先のP−CSCFサーバ1310を示す識別情報を、再登録通知を行う前にDHCPサーバに予め与えておく。
P−CSCFサーバ1210は、S−CSCFサーバ1230bから通知されたSIPメッセージを、端末2000−1に転送する(ステップSe5)。端末2000−1は、再登録の完了を示すSIPメッセージ「200OK」を、P−CSCFサーバ1210に送信する(ステップSe6)。P−CSCFサーバ1210は、SIPメッセージ「200OK」を、S−CSCFサーバ1230bに転送する(ステップSe7)。
端末2000−1は、新たな接続先のP−CSCFサーバ1310を示す識別情報に基づいて、グループ2に属するIMSサーバ1300bに対して、登録フロー(図7を参照)を実行する(ステップSe8)。
そして、登録解除を示すSIPメッセージ「DE−REGISGER」が、端末2000−1から送信されていないため、S−CSCFサーバ1230bは、登録解除通知をホーム加入者サーバ4000aから受信する(ステップSe9)。
端末2000−1は、発呼のため、SIPメッセージ「INVITE」を、P−CSCFサーバ1310に送信する(ステップSe10)。なお、端末2000−1は、登録完了後に、SIPメッセージ「INVITE」を自発的に送信してもよい。また、S−CSCFサーバ1230bは、登録解除通知により端末2000−1の登録を検知し(ステップSe9を参照)、SIPメッセージ「REFER」を、S−CSCFサーバ1230aを介して端末2000−1に送信することで、SIPメッセージ「INVITE」の送信を端末2000−1に促してもよい。
P−CSCFサーバ1310は、SIPメッセージ「INVITE」を、S−CSCFサーバ1330bに送信する(ステップSe11)。S−CSCFサーバ1230bは、端末2000−1が属しているグループと、端末2000−2が属しているグループとを、ステップSe3と同様に、ホーム加入者サーバ4000aに問い合わせる(ステップSe12)。
S−CSCFサーバ1230bは、IMSサーバ1200bとIMSサーバ1300bとの互換性、及び予め定められた運用ポリシーの少なくとも一方に基づいて、端末2000−1と端末2000−2との接続性に問題が無いか否か(要求された通信に問題が生じないか否か)を判定する。
接続性に問題が無い(要求された通信に問題が生じない)場合、S−CSCFサーバ1230bは、SIPメッセージ「INVITE」を、着側の端末である端末2000−2に送信する(ステップSe13)。以降は、IMS標準に準拠した処理が実行される。
図9は、着呼フローを示すシーケンス図である。ここでは、着呼される側(着側)の端末を、端末2000−2であるとして説明するが、着側の端末を端末2000−1とした場合も、グループ1とグループ2の違いを除いて、同様のフローとなる。以下、着側の端末である端末2000−2は、初期状態では、S−CSCFサーバ1330bに割り振られている(登録されている)ものとして説明を続ける。
S−CSCFサーバ1230bは、発側の端末である端末2000−1から送信されたSIPメッセージ「INVITE」を、S−CSCFサーバ1330bに送信する(ステップSf1)。S−CSCFサーバ1330bは、端末2000−1が属しているグループと、端末2000−2が属しているグループとを、ホーム加入者サーバ4000aに問い合わせる(ステップSf2)。
問い合わせの結果、端末2000−1及び端末2000−2が同じグループに属している(要求された通信に問題が生じない)場合、ホーム加入者サーバ4000aは、所定の通常処理として、ステップSf13(後述)に処理を進める。
一方、端末2000−1及び端末2000−2が異なるグループに属している場合、S−CSCFサーバ1230bは、IMSサーバ1200bとIMSサーバ1300bとの互換性、及び予め定められた運用ポリシーの少なくとも一方に基づいて、端末2000が割り振られているIMSサーバ(グループ)の切り替えの要否(要求された通信に問題が生じるか否か)を判定する。
そして、S−CSCFサーバ1230bは、判定結果に基づいて、着側である端末2000−2が割り振られているIMSサーバ1300b(グループ2)から、IMSサーバ1200b(グループ1)に割り振りを切り替える場合、接続先IMSサーバ1200b(グループ1)に切り替える指示として、SIPメッセージ「480 Temporarily Unavailable」などのエラーメッセージを、端末2000−2に通知する(ステップSf3)。
なお、S−CSCFサーバ1230bは、このエラーメッセージに「Retry−Afterヘッダ」を付け、さらに、一定時間後にSIPメッセージ「INVITE」を再送信してもよい。この場合、後述するステップSf10における、SIPメッセージ「INVITE」の送信は不要である。
S−CSCFサーバ1230bは、P−CSCFサーバ1210に再登録するよう、着側の端末である端末2000−2に促すためのSIPメッセージを送信する。この処理は、図8に示す発呼フローのステップSe4と同様である(ステップSf4)。
ステップSf5〜ステップSf9は、図8に示す発呼フローのステップSe5〜ステップSe9と、それぞれ同様である。
S−CSCFサーバ1330bは、ホーム加入者サーバ4000aから受信した登録解除通知により、着側の端末である端末2000−2の再登録を検知し、SIPメッセージ「REFER」を、S−CSCFサーバ1230aを介して端末2000−1に送信する(ステップSf10)。
発側の端末である端末2000−1は、SIPメッセージ「REFER」を受信し、SIPメッセージ「INVITE」を、S−CSCFサーバ1230bに再送信する(ステップSf11)。なお、端末2000−1は、SIPメッセージ「INVITE」を、一定時間後に自発的に再送信してもよい。
S−CSCFサーバ1230bは、端末2000−1が属しているグループと、端末2000−2が属しているグループとを、ホーム加入者サーバ4000aに問い合わせる(ステップSf12)。
問い合わせの結果、端末2000−1及び端末2000−2が同じグループに属している(要求された通信に問題が生じない)場合、S−CSCFサーバ1230bは、所定の通常処理を継続する。
一方、端末2000−1及び端末2000−2が異なるグループに属している場合、S−CSCFサーバ1230bは、IMSサーバ1200aとIMSサーバ1300aとの互換性、及び予め定められた運用ポリシーの少なくとも一方に基づいて、端末2000が属するグループの切り替えの要否(要求された通信に問題が生じるか否か)を判定する。
IMSサーバ1200aでは対応していない機能を使う必要がない等、接続性に問題が無い(要求された通信に問題が生じない)場合、S−CSCFサーバ1230bは、SIPメッセージ「INVITE」を、P−CSCFサーバ1210に送信する(ステップSf13)。
なお、端末2000−1と端末2000−2とが同じグループに属している場合であっても、S−CSCFサーバ1230bは、要求された通信及び機能に応じて、IMSサーバ(グループ)を切り替えさせてもよい。
P−CSCFサーバ1210は、着側の端末である端末2000−2に、SIPメッセージ「INVITE」を転送する(ステップSf14)。以降の処理は、IMS標準に準拠する処理と同様である。
以上のように、ホーム加入者サーバと、複数のCSCFサーバ(IMSサーバ)と、を備えるIMSネットワークシステムにおいて、IMSネットワークシステムは、発呼する側の発呼端末(端末2000−1)及び着呼される側の着呼端末(端末2000−2)を、同じドメイン1100のグループに属するCSCFサーバ、すなわち、グループ1のIMSサーバ1200b、及びグループ2のIMSサーバ1300bに、前記グループを区別して登録させるホーム加入者サーバ4000aと、前記発呼端末(端末2000−1)が登録されているCSCFサーバ(IMSサーバ1200b)、及び、前記着呼端末(端末2000−2)が登録されているCSCFサーバ(IMSサーバ1300b)の間で通信に問題が生じるか否かを、前記発呼端末(端末2000−1)が発呼処理を開始(SIPメッセージを送信)した際に判定し、通信に問題が生じると判定した場合、前記発呼処理を保留し、通信相手の端末と同じグループに属するCSCFサーバ(IMSサーバ1200b又はIMSサーバ1300b)に前記発呼端末(端末2000−1)又は前記着呼端末(端末2000−2)を再登録させ、再登録後に前記発呼処理を再開させるCSCFサーバ(IMSサーバ1200b及びIMSサーバ1300b)と、を備える。
この構成により、CSCFサーバは、通信に問題が生じると判定した場合、発呼処理を保留し、通信相手の端末と同じグループに属するCSCFサーバに前記発呼端末又は前記着呼端末を再登録させ、再登録後に前記発呼処理を再開させる。これにより、複数のIMSサーバ(CSCFサーバ)が同じドメインに属しているIMSネットワークシステムにおいて、IMSネットワークシステムは、第1実施形態と同様の効果を得ることができる。
また、CSCFサーバ(ポリシー管理部1234、及びポリシー管理部1334)は、前記発呼端末(端末2000−1)が登録されているCSCFサーバ(IMSサーバ1200b)と、前記着呼端末(端末2000−2)が登録されているCSCFサーバ(IMSサーバ1300b)との互換性、及び予め定められた運用ポリシーの少なくとも一方に基づいて、通信に問題が生じるか否かを判定する。
また、CSCFサーバ(ポリシー管理部1234、及びポリシー管理部1334)は、前記発呼端末(端末2000−1)が登録されているCSCFサーバ(IMSサーバ1200b)と、前記着呼端末(端末2000−2)が登録されているCSCFサーバ(IMSサーバ1300b)とのうち、少なくとも一方のCSCFサーバ(IMSサーバ)が対応していない機能を使う必要がある場合、前記互換性が無いことにより通信に問題が生じると判定する。
また、前記発呼端末(端末2000−1)は、前記再登録後に前記発呼処理を自発的に再開させる。
また、ホーム加入者サーバ4000a(グループ管理部4200)は、前記着呼端末(端末2000−2)が登録されているCSCFサーバ(IMSサーバ1300bのS−CSCFサーバ1330b)の識別情報(例えば、IPアドレス)を、前記発呼端末(端末2000−1)が登録されているCSCFサーバ(IMSサーバ1200bのS−CSCFサーバ1230b)に通知する。
[第3実施形態]
第3実施形態では、ホーム加入者サーバがグループ毎に配備されている点が、第1及び第2実施形態と相違する。以下では、第1実施形態との相違点についてのみ説明する。
ホーム加入者サーバ4000がグループ毎に配備され、且つ、端末2000−1と端末2000−2とが異なるグループに登録されている場合、自端末が属するグループには、通信相手の端末2000が未登録の状態となる。このため、IMSサーバは、他のグループにSIPメッセージを転送する場合、転送先のS−CSCFサーバが判らない。したがって、IMSネットワークシステムには、I−CSCFサーバを経由してSIPメッセージを転送する機能が必要である。
まず、IMSネットワークシステムの構成例を説明する。
図10は、IMSサーバを含むIMSネットワークシステムの構成例を示すブロック図である。ホーム加入者サーバ4000−1は、ドメイン1100(図1を参照)に予め定められたグループ1に属しているものとする。ホーム加入者サーバ4000−1は、データベース部4100−1を備える。データベース部4100−1は、S−CSCFサーバ1230aの識別情報(端末2000−1が属するグループを示す情報)を、アプリケーションサーバ3000bのグループ管理部3600(後述)に、問い合わせの応答として送信する。
一方、ホーム加入者サーバ4000−2は、ドメイン1100に予め定められたグループ2に属しているものとする。ホーム加入者サーバ4000−2は、データベース部4100−2を備える。データベース部4100−2は、S−CSCFサーバ1330aの識別情報(端末2000−2が属するグループを示す情報)を、アプリケーションサーバ3000bのグループ管理部3600(後述)に、問い合わせの応答として送信する。
アプリケーションサーバ3000bは、アプリケーション部3100と、保留部3200と、通知部3300と、ポリシー管理部3400とを備える。また、アプリケーションサーバ3000bは、グループ管理部3600と、指定部3700を更に備える。グループ管理部3600は、各IMSサーバ(各CSCFサーバ)が属しているグループを管理する。また、グループ管理部3600は、端末2000が通信接続しているIMSサーバ(CSCFサーバ)が属するグループを、端末2000が属するグループと定める。
グループ管理部3600は、端末2000−1が登録されているIMSサーバ1200aのS−CSCFサーバ1230aの識別情報(例えば、IPアドレス)を、ホーム加入者サーバ4100b−1に問い合わせることにより取得する。また、グループ管理部3600は、端末2000−2が登録されているIMSサーバ1300aのS−CSCFサーバ1330aの識別情報を、ホーム加入者サーバ4100b−2に問い合わせることにより取得する。
指定部3700は、端末2000−1及び端末2000−2が異なるグループに属している(登録されている)場合、送信先のIMSサーバのI−CSCFサーバにSIPメッセージを転送できるよう、SIPメッセージの通信経路を制御する。
次に、IMSネットワークシステムの動作手順を説明する。
図11は、登録フローを示すシーケンス図である。第3実施形態における登録フローは、IMS標準に準拠した登録動作を実行する。ステップSg1〜ステップSg3、ステップSg5〜ステップSg20は、図3に示す発呼フローのステップS1〜ステップS3、ステップS5〜ステップS20と、それぞれ同様である。
他のグループに属しているIMSサーバ(CSCFサーバ)をホーム加入者サーバ4000bが管理できないために、他のグループに属するCSCFサーバをホーム加入者サーバ4000bが、ステップSg4において列挙することができない点以外は、第1実施形態における登録フロー(図3を参照)と同様である。
図12は、発呼及び着呼フローを示すシーケンス図である。端末2000−1は、発呼のため、SIPメッセージ「INVITE」を、P−CSCFサーバ1210に送信する(ステップSh1)。P−CSCFサーバ1210は、端末2000−1が割り振られている(登録されている)S−CSCFサーバ1230aに、SIPメッセージ「INVITE」を転送する(ステップSh2)。S−CSCFサーバ1230aは、SIPメッセージ「INVITE」を、iFCに基づいて、アプリケーションサーバ3000bに送信する(ステップSh3)。
アプリケーションサーバ3000bは、端末2000−1が属しているグループを、ホーム加入者サーバ4000b−1に問い合わせる。また、アプリケーションサーバ3000bは、端末2000−2が属しているグループを、ホーム加入者サーバ4000b−2に問い合わせる。
問い合わせの結果、端末2000−1及び端末2000−2が同じグループに属している等、接続性に問題が無い(要求された通信に問題が生じない)場合、アプリケーションサーバ3000bは、第1実施形態(例えば、図4のステップSa20)と同様に、所定の通常処理を継続する。
一方、端末2000−1及び端末2000−2が異なるグループに属している場合、アプリケーションサーバ3000bは、IMSサーバ1200aとIMSサーバ1300aとの互換性、及び予め定められた運用ポリシーの少なくとも一方に基づいて、端末2000が属するグループの切り替えの要否(要求された通信に問題が生じるか否か)を、第1実施形態(例えば、図4のステップSa4)と同様に判定する(ステップSh4)。
なお、端末2000−1と端末2000−2とが同じグループに属している場合であっても、アプリケーションサーバ3000bは、要求された通信及び機能に応じて、IMSサーバ(グループ)を切り替えさせてもよい。
IMSサーバ1200aでは対応していない機能を使う必要がない等、接続性に問題が無い(要求された通信に問題が生じない)場合でも、アプリケーションサーバ3000bは、ルートヘッダ(Route−Header)に特定のI−CSCFサーバ(図12では、I−CSCFサーバ1230a)を指定して、指定したI−CSCFサーバにSIPメッセージを強制的に転送する。これは、グループ2に属している端末2000−2の識別情報等が、グループ1に属しているホーム加入者サーバ4000b−1には登録されていないためである。
また、グループ1に属しているホーム加入者サーバ4000b−1に、着側の端末である端末2000−2が登録されていない場合、アプリケーションサーバ3000bは、端末2000−2が属しているグループ2のI−CSCFサーバ1320を、ルートヘッダ(Route−Header)に指定した上で、SIPメッセージ「INVITE」をS−CSCFサーバ1230aに送信する(ステップSh5)。
S−CSCFサーバ1230aは、ルートヘッダに指定されたI−CSCFサーバ1320に、SIPメッセージ「INVITE」を転送する(ステップSh6)。I−CSCFサーバ1320は、端末2000−2が属しているグループ2のS−CSCFサーバ1330aの識別情報(例えば、IPアドレス)を、ホーム加入者サーバ4000b−2に問い合わせて解決し、S−CSCFサーバ1330aにSIPメッセージ「INVITE」を送信する(ステップSh7)。
S−CSCFサーバ1330aは、アプリケーションサーバ3000bに、SIPメッセージ「INVITE」を送信する(ステップSh8)。アプリケーションサーバ3000bは、端末2000−1が属しているグループを、ホーム加入者サーバ4000b−1に、ステップSh4と同様に問い合わせる。また、アプリケーションサーバ3000bは、端末2000−2が属しているグループを、ホーム加入者サーバ4000b−2に、ステップSh4と同様に問い合わせる。そして、アプリケーションサーバ3000bは、端末2000が属するグループの切り替えの要否を、ステップSh4と同様に判定する(ステップSh9)。
IMSサーバ1200aでは対応していない機能を使う必要がない等、接続性に問題が無い(要求された通信に問題が生じない)場合、アプリケーションサーバ3000aは、SIPメッセージ「INVITE」を、S−CSCFサーバ1330aに転送する(ステップSh10)。
S−CSCFサーバ1330aは、SIPメッセージ「INVITE」を、P−CSCFサーバ1310に転送する(ステップSh11)。P−CSCFサーバ1310は、SIPメッセージ「INVITE」を、端末2000−2に転送する(ステップSh12)。以降、端末2000−2は、SIPメッセージ「INVITE」の発呼処理を、IMS標準に準拠して進める。
なお、発側の端末である端末2000−1、又は着側の端末である端末2000−2が、IMSサーバ(グループ)の切り替える場合、発呼及び着呼フローは、第1実施形態における発呼フロー(図4を参照)及び着呼フロー(図5を参照)と同様である。
以上のように、複数のホーム加入者サーバと、アプリケーションサーバと、複数のCSCFサーバとを備えるIMSネットワークシステムにおいて、IMSネットワークシステムは、発呼する側の発呼端末(端末2000−1)及び着呼される側の着呼端末(端末2000−2)を、同じドメイン1100のグループに属するCSCFサーバ、すなわち、グループ1のIMSサーバ1200a、及びグループ2のIMSサーバ1300aに、前記グループを区別して登録させ、前記発呼端末(端末2000−1)が登録されているCSCFサーバ(IMSサーバ1200a)、及び、前記着呼端末が登録されているCSCFサーバ(IMSサーバ1300a)の間で通信に問題が生じるか否かを、前記発呼端末(端末2000−1)が発呼処理を開始(SIPメッセージを送信)した際に判定し、通信に問題が生じると判定した場合、前記発呼処理を保留し、通信相手の端末と同じグループに属するCSCFサーバ(IMSサーバ1200a又はIMSサーバ1300a)に前記発呼端末(端末2000−1)又は前記着呼端末(端末2000−2)を再登録させ、再登録後に前記発呼処理を再開させるアプリケーションサーバ3000b、を備える。
この構成により、アプリケーションサーバは、通信に問題が生じると判定した場合、発呼処理を保留し、通信相手の端末と同じグループに属するCSCFサーバに前記発呼端末又は前記着呼端末を再登録させ、再登録後に前記発呼処理を再開させる。これにより、複数のIMSサーバ(CSCFサーバ)が同じドメインに属しているIMSネットワークシステムにおいて、IMSネットワークシステムは、第1実施形態と同様の効果を得ることができる。
また、アプリケーションサーバ3000b(ポリシー管理部3400)は、前記発呼端末(端末2000−1)が登録されているCSCFサーバ(IMSサーバ1200a)と、前記着呼端末(端末2000−2)が登録されているCSCFサーバ(IMSサーバ1300a)との互換性、及び予め定められた運用ポリシーの少なくとも一方に基づいて、通信に問題が生じるか否かを判定する。
また、アプリケーションサーバ3000b(ポリシー管理部3400)は、前記発呼端末(端末2000−1)が登録されているCSCFサーバ(IMSサーバ1200a)と、前記着呼端末(端末2000−2)が登録されているCSCFサーバ(IMSサーバ1300a)とのうち、少なくとも一方のCSCFサーバ(IMSサーバ)が対応していない機能を使う必要がある場合、前記互換性が無いことにより通信に問題が生じると判定する。
また、アプリケーションサーバ3000b(グループ管理部3600)は、前記発呼端末(端末2000−1)が登録されているCSCFサーバ(IMSサーバ1200aのS−CSCFサーバ1230a)の識別情報(例えば、IPアドレス)、及び、前記着呼端末(端末2000−2)が登録されているCSCFサーバ(IMSサーバ1300aのS−CSCFサーバ1330a)の識別情報を、前記複数のホーム加入者サーバ(ホーム加入者サーバ4100b−1、及びホーム加入者サーバ4100b−2)に問い合わせることにより取得する。
また、アプリケーションサーバ3000b(指定部3700)は、前記発呼端末(端末2000−1)が前記発呼処理を開始した際、前記着呼端末(端末2000−2)が登録されているCSCFサーバ(IMSサーバ1300a)のI−CSCFサーバ1320を介して(通信経路を制御して)、前記着呼端末(端末2000−2)にSIPメッセージを送信する。
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
なお、以上に説明したIMSネットワークシステムの各構成を実現するためのプログラムを、コンピュータ読み取り可能な記録媒体に記録し、そのプログラムをコンピュータシステムに読み込ませて実行するようにしてもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ(RAM)のように、一定時間プログラムを保持しているものも含むものとする。また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)や電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。また、上記プログラムは、前述した機能の一部を実現するためのものであってもよい。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であってもよい。