(57)【特許請求の範囲】
【請求項１】
発呼情報を受信して、前記発呼情報に基づいて発信元と接続先とを接続するための呼処理を実行し、前記接続先に当該発呼情報を伝達する呼処理並列化システムであって、
前記発呼情報を受信し、その発呼情報に格納されている接続先の情報を抽出し、前記接続先と前記発呼情報の転送先となる発側呼処理制御部を識別する識別情報および着側呼処理制御部を識別する識別情報とを関連付けて記憶している転送先情報を参照して、前記発呼情報の転送先となる前記発側呼処理制御部および前記着側呼処理制御部を決定し、当該発呼情報を、その発呼情報の転送先として決定した前記発側呼処理制御部および前記着側呼処理制御部に転送する信号転送部と、
前記信号転送部から受信した前記発呼情報から発信元を抽出し、前記発信元と前記呼処理に用いる情報とを関連付けて記憶している加入者情報を参照して、当該発信元に対応する前記呼処理に用いる情報を取得し、当該呼処理に用いる情報に基づいて前記発信元に対応する前記呼処理を実行し、前記呼処理完了後に当該発呼情報を発側着側処理完了確認部に送信する前記発側呼処理制御部と、
前記信号転送部から受信した前記発呼情報から接続先を抽出し、前記接続先と前記呼処理に用いる情報とを関連付けて記憶している前記加入者情報を参照して、当該接続先に対応する前記呼処理に用いる情報を取得し、当該呼処理に用いる情報に基づいて前記接続先に対応する前記呼処理を実行し、前記呼処理完了後に当該発呼情報を前記発側着側処理完了確認部に送信する前記着側呼処理制御部と、
前記発側呼処理制御部および前記着側呼処理制御部の双方から受信した前記発呼情報を比較して、受信した双方の前記発呼情報に格納されている情報が同じと判定した場合、当該発呼情報を前記接続先へ送信する前記発側着側処理完了確認部と
を備えることを特徴とする呼処理並列化システム。
【請求項２】
前記発側呼処理制御部および前記着側呼処理制御部は、
受信した前記発呼情報のメッセージを分割したメッセージ片に記述されている文字列を構文解析を用いて識別子として抽出し、前記識別子と前記呼処理の一連の処理を処理目的別に分けた処理ブロックとを関連付けて記憶している処理ブロック対応情報を参照して、前記抽出した識別子を含む前記メッセージ片を、当該識別子に関連付けられている並列処理部の前記処理ブロックに引き渡す処理振分部と、
処理の順番に依存関係のある前記処理ブロックについては逐次処理を実行し、依存関係のない前記処理ブロック間では並列処理を実行し、その処理が正常に完了した場合に、前記逐次処理の最後の処理ブロックおよび前記並列処理される依存関係のない処理ブロックから前記引き渡されたメッセージ片を並列処理確認部へ出力する前記並列処理部と、
前記逐次処理の最後の処理ブロックおよび前記並列処理される依存関係のない処理ブロックから前記メッセージ片を受信した場合、前記並列処理が正常に完了したと判断し、前記受信したメッセージ片を組み立て直して、前記処理振分部が受信したのと同じ発呼情報を生成し、前記発側着側処理完了確認部へ当該発呼情報を送信する並列処理確認部と
を備えることを特徴とする請求項１に記載の呼処理並列化システム。
【請求項３】
発呼情報を受信して、前記発呼情報に基づいて発信元と接続先とを接続するための呼処理を実行し、前記接続先に当該発呼情報を伝達する呼処理並列化システムにおいて用いられる呼処理並列化方法であって、
前記呼処理並列化システムは、
信号転送部、発側呼処理制御部、着側呼処理制御部、および発側着側処理完了確認部を備え、
前記信号転送部は、前記発呼情報を受信し、その発呼情報に格納されている接続先の情報を抽出し、前記接続先と前記発呼情報の転送先となる発側呼処理制御部を識別する識別情報および着側呼処理制御部を識別する識別情報とを関連付けて記憶している転送先情報を参照して、前記発呼情報の転送先となる前記発側呼処理制御部および前記着側呼処理制御部を決定し、当該発呼情報を、その発呼情報の転送先として決定した前記発側呼処理制御部および前記着側呼処理制御部に転送し、
前記発側呼処理制御部は、前記信号転送部から受信した前記発呼情報から発信元を抽出し、前記発信元と前記呼処理に用いる情報とを関連付けて記憶している加入者情報を参照して、当該発信元に対応する前記呼処理に用いる情報を取得し、当該呼処理に用いる情報に基づいて前記発信元に対応する前記呼処理を実行し、前記呼処理完了後に当該発呼情報を発側着側処理完了確認部に送信し、
前記着側呼処理制御部は、前記信号転送部から受信した前記発呼情報から接続先を抽出し、前記接続先と前記呼処理に用いる情報とを関連付けて記憶している前記加入者情報を参照して、当該接続先に対応する前記呼処理に用いる情報を取得し、当該呼処理に用いる情報に基づいて前記接続先に対応する前記呼処理を実行し、前記呼処理完了後に当該発呼情報を発側着側処理完了確認部に送信し、
前記発側着側処理完了確認部は、前記発側呼処理制御部および前記着側呼処理制御部の双方から受信した前記発呼情報を比較して、受信した双方の前記発呼情報に格納されている情報が同じと判定した場合、当該発呼情報を前記接続先へ送信する
ことを特徴とする呼処理並列化方法。
【請求項４】
前記発側呼処理制御部および前記着側呼処理制御部は、
受信した前記発呼情報のメッセージを分割したメッセージ片に記述されている文字列を構文解析を用いて識別子として抽出し、前記識別子と前記呼処理の一連の処理を処理目的別に分けた処理ブロックとを関連付けて記憶している処理ブロック対応情報を参照して、前記抽出した識別子を含む前記メッセージ片を、当該識別子に関連付けられている並列処理ステップの前記処理ブロックに引き渡す処理振分ステップと、
処理の順番に依存関係のある前記処理ブロックについては逐次処理を実行し、依存関係のない前記処理ブロック間では並列処理を実行し、その処理が正常に完了した場合に、前記逐次処理の最後の処理ブロックおよび前記並列処理される依存関係のない処理ブロックから前記引き渡されたメッセージ片を並列処理確認ステップへ出力する前記並列処理ステップと、
前記逐次処理の最後の処理ブロックおよび前記並列処理される依存関係のない処理ブロックから前記メッセージ片を受信した場合、前記並列処理が正常に完了したと判断し、前記受信したメッセージ片を組み立て直して、前記処理振分ステップが受信したのと同じ発呼情報を生成し、前記発側着側処理完了確認ステップへ当該発呼情報を送信する前記並列処理確認ステップと
を実行することを特徴とする請求項３に記載の呼処理並列化方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、セッション制御サーバにおける呼処理の並列化技術に関する。
【背景技術】
【０００２】
近年、次世代ネットワーク（ＮＧＮ；Next Generation Network）（非特許文献１）では、アクセス網に依存せずに種々のマルチメディアサービスを提供するプラットフォームとして、ＩＭＳ（IP Multimedia Subsystem）（非特許文献２）を導入する検討が進められている。ＩＭＳでは、２以上のクライアント端末間でセッションを確立するプロトコルとしてＳＩＰ（Session Initiation Protocol）（非特許文献３）が用いられる。そして、ＩＭＳにおいて、呼処理制御を実行するセッション制御サーバは、ＣＳＣＦ（Call State Control Function）と呼ばれる。なお、このＣＳＣＦは、設備維持コストの低減を目的として、従来の交換機のような専用ハードウェアではなく、汎用サーバによって実現されることが一般的となっている。
【０００３】
前記したＣＳＣＦにおける呼処理フローは、受け付けた呼に対する一連の処理を処理目的別に分けたブロック（処理ブロック）を、逐次的に実行していくものである。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】J.Rosenberg，et.al，“SIP: Session Initiation Protocol”，RFC3261，IETF，2002.6
【非特許文献２】原広明、“第17回  IMS（IP multimedia subsystem）（前編） ユビキタス・サービスを実現”、［online］、平成１９年９月１８日、［平成２２年７月２７日検索］、インターネット＜URL ：http://itpro.nikkeibp.co.jp/article/COLUMN/20070903/281033/?ST=network＞
【非特許文献３】ITU-T Recommendation Y.2012，“Functional requirements and architecture of the NGN”，2006
【発明の概要】
【発明が解決しようとする課題】
【０００５】
既存のＣＳＣＦにおける呼処理では、逐次処理を行っていたため、処理ブロック間に依存関係がない箇所であっても逐次的な処理が実行されていた。したがって、全体の呼処理に時間がかかるという問題があった。
そこで、本発明は、呼処理の時間を短縮する技術を提供することを課題とする。
【課題を解決するための手段】
【０００６】
本発明は、発呼情報を受信して、前記発呼情報に基づいて発信元と接続先とを接続するための呼処理を実行し、前記接続先に当該発呼情報を伝達する呼処理並列化システムであって、前記発呼情報を受信し、その発呼情報に格納されている接続先の情報を抽出し、前記接続先と前記発呼情報の転送先となる発側呼処理制御部を識別する識別情報および着側呼処理制御部を識別する識別情報とを関連付けて記憶している転送先情報を参照して、前記発呼情報の転送先となる前記発側呼処理制御部および前記着側呼処理制御部を決定し、当該発呼情報を、その発呼情報の転送先として決定した前記発側呼処理制御部および前記着側呼処理制御部に転送する信号転送部と、前記信号転送部から受信した前記発呼情報から発信元を抽出し、前記発信元と前記呼処理に用いる情報とを関連付けて記憶している加入者情報を参照して、当該発信元に対応する前記呼処理に用いる情報を取得し、当該呼処理に用いる情報に基づいて前記発信元に対応する前記呼処理を実行し、前記呼処理完了後に当該発呼情報を発側着側処理完了確認部に送信する前記発側呼処理制御部と、前記信号転送部から受信した前記発呼情報から接続先を抽出し、前記接続先と前記呼処理に用いる情報とを関連付けて記憶している前記加入者情報を参照して、当該接続先に対応する前記呼処理に用いる情報を取得し、当該呼処理に用いる情報に基づいて前記接続先に対応する前記呼処理を実行し、前記呼処理完了後に当該発呼情報を前記発側着側処理完了確認部に送信する前記着側呼処理制御部と、前記発側呼処理制御部および前記着側呼処理制御部の双方から受信した前記発呼情報を比較して、受信した双方の前記発呼情報に格納されている情報が同じと判定した場合、当該発呼情報を前記接続先へ送信する前記発側着側処理完了確認部とを備えることを特徴とする。
【０００７】
本発明は、発呼情報を受信して、前記発呼情報に基づいて発信元と接続先とを接続するための呼処理を実行し、前記接続先に当該発呼情報を伝達する呼処理並列化システムにおいて用いられる呼処理並列化方法であって、前記呼処理並列化システムが、信号転送部、発側呼処理制御部、着側呼処理制御部、および発側着側処理完了確認部を備え、前記信号転送部が、前記発呼情報を受信し、その発呼情報に格納されている接続先の情報を抽出し、前記接続先と前記発呼情報の転送先となる発側呼処理制御部を識別する識別情報および着側呼処理制御部を識別する識別情報とを関連付けて記憶している転送先情報を参照して、前記発呼情報の転送先となる前記発側呼処理制御部および前記着側呼処理制御部を決定し、当該発呼情報を、その発呼情報の転送先として決定した前記発側呼処理制御部および前記着側呼処理制御部に転送し、前記発側呼処理制御部が、前記信号転送部から受信した前記発呼情報から発信元を抽出し、前記発信元と前記呼処理に用いる情報とを関連付けて記憶している加入者情報を参照して、当該発信元に対応する前記呼処理に用いる情報を取得し、当該呼処理に用いる情報に基づいて前記発信元に対応する前記呼処理を実行し、前記呼処理完了後に当該発呼情報を発側着側処理完了確認部に送信し、前記着側呼処理制御部が、前記信号転送部から受信した前記発呼情報から接続先を抽出し、前記接続先と前記呼処理に用いる情報とを関連付けて記憶している前記加入者情報を参照して、当該接続先に対応する前記呼処理に用いる情報を取得し、当該呼処理に用いる情報に基づいて前記接続先に対応する前記呼処理を実行し、前記呼処理完了後に当該発呼情報を発側着側処理完了確認部に送信し、前記発側着側処理完了確認部が、前記発側呼処理制御部および前記着側呼処理制御部の双方から受信した前記発呼情報を比較して、受信した双方の前記発呼情報に格納されている情報が同じと判定した場合、当該発呼情報を前記接続先へ送信することを特徴とする。
【０００８】
このような構成によれば、呼処理並列化システムの信号転送部は、受信した発呼情報を、発側呼処理制御部および着側呼処理制御部に送信する。発側呼処理制御部および着側呼処理制御部は、それぞれ、発信元および接続先について呼処理を並列に実行し、処理が完了した場合、発呼情報を発側着側処理完了確認部に送信する。そして、発側着側処理完了確認部が、発側呼処理制御部および着側呼処理制御部の双方から、同じ発呼情報を受信したと判定した場合、当該発呼情報を前記接続先へ送信する。したがって、従来の呼処理では、発側呼処理制御部の呼処理を終えてから着側呼処理制御部の呼処理を逐次的に行っていたのに対して、本発明では、発側呼処理制御部および着側呼処理制御部の呼処理を並列処理化することができ、そのため、呼処理の時間を短縮することができる。
【０００９】
本発明は、前記発側呼処理制御部および前記着側呼処理制御部が、受信した前記発呼情報のメッセージを分割したメッセージ片に記述されている文字列を構文解析を用いて識別子として抽出し、前記識別子と前記呼処理の一連の処理を処理目的別に分けた処理ブロックとを関連付けて記憶している処理ブロック対応情報を参照して、前記抽出した識別子を含む前記メッセージ片を、当該識別子に関連付けられている並列処理部の前記処理ブロックに引き渡す処理振分部と、処理の順番に依存関係のある前記処理ブロックについては逐次処理を実行し、依存関係のない前記処理ブロック間では並列処理を実行し、その処理が正常に完了した場合に、前記逐次処理の最後の処理ブロックおよび前記並列処理される依存関係のない処理ブロックから前記引き渡されたメッセージ片を並列処理確認部へ出力する前記並列処理部と、前記逐次処理の最後の処理ブロックおよび前記並列処理される依存関係のない処理ブロックから前記メッセージ片を受信した場合、前記並列処理が正常に完了したと判断し、前記受信したメッセージ片を組み立て直して、前記処理振分部が受信したのと同じ発呼情報を生成し、前記発側着側処理完了確認部へ当該発呼情報を送信する並列処理確認部とを備えることを特徴とする。
【００１０】
本発明は、前記発側呼処理制御部および前記着側呼処理制御部が、受信した前記発呼情報のメッセージを分割したメッセージ片に記述されている文字列を構文解析を用いて識別子として抽出し、前記識別子と前記呼処理の一連の処理を処理目的別に分けた処理ブロックとを関連付けて記憶している処理ブロック対応情報を参照して、前記抽出した識別子を含む前記メッセージ片を、当該識別子に関連付けられている並列処理ステップの前記処理ブロックに引き渡す処理振分ステップと、処理の順番に依存関係のある前記処理ブロックについては逐次処理を実行し、依存関係のない前記処理ブロック間では並列処理を実行し、その処理が正常に完了した場合に、前記逐次処理の最後の処理ブロックおよび前記並列処理される依存関係のない処理ブロックから前記引き渡されたメッセージ片を並列処理確認ステップへ出力する前記並列処理ステップと、前記逐次処理の最後の処理ブロックおよび前記並列処理される依存関係のない処理ブロックから前記メッセージ片を受信した場合、前記並列処理が正常に完了したと判断し、前記受信したメッセージ片を組み立て直して、前記処理振分ステップが受信したのと同じ発呼情報を生成し、前記発側着側処理完了確認ステップへ当該発呼情報を送信する前記並列処理確認ステップとを実行することを特徴とする。
【００１１】
このような構成によれば、発側呼処理制御部および着側呼処理制御部の処理振分部は、受信した発呼情報のメッセージ片に記述されている文字列を構文解析を用いて識別子を抽出し、抽出した識別子を含むメッセージ片を、当該識別子に関連付けられている処理ブロックに引き渡す。そして、並列処理部の処理ブロックは、依存関係のある処理ブロックについては逐次処理を実行し、依存関係のない処理ブロック間では並列処理を実行し、処理が正常に完了した場合に、メッセージ片を並列処理確認部へ出力する。並列処理確認部は、並列処理部の処理ブロックからメッセージ片を受信して、並列処理が正常に完了したと判断し、受信したメッセージ片を組み立て直して、処理振分部が受信したのと同じ発呼情報を生成し、発側着側処理完了確認装置へ当該発呼情報を送信する。したがって、従来の呼処理では、発側呼処理制御部および着側呼処理制御部の各内部での呼処理を逐次的に行っていたのに対して、本発明では、発側呼処理制御部および着側呼処理制御部の呼処理を並列処理化することができ、呼処理の時間を短縮することができる。
【発明の効果】
【００１２】
本発明によれば、呼処理の時間を短縮する技術を提供することができる。
【図面の簡単な説明】
【００１３】
【図１】本実施形態における呼処理並列化システムの構成例を示す図である。
【図２】呼処理並列化システムにおける信号転送装置の構成例を示す図である。
【図３】呼処理並列化システムにおける発側着側処理完了確認装置の構成例を示す図である。
【図４】本実施形態における発側ＣＳＣＦおよび着側ＣＳＣＦの構成例を示す図である。
【図５】本実施形態における発側ＣＳＣＦの呼処理の流れを示す図である。
【図６】本実施形態における着側ＣＳＣＦの呼処理の流れを示す図である。
【図７】比較例における既存のＩＭＳにおける呼の経路の構成例を示す図である。
【図８】比較例における発側ＣＳＣＦの逐次呼処理の例を示す図である。
【図９】比較例における着側ＣＳＣＦの逐次呼処理の例を示す図である。
【発明を実施するための形態】
【００１４】
本発明を実施するための形態（以降、「本実施形態」と称す。）について、適宜図面を参照しながら詳細に説明する。はじめに、比較例として、ＩＭＳをベースとした、呼処理を実行するセッション制御サーバ（Ｓ−ＣＳＣＦ）における逐次呼処理の概要について説明する。
【００１５】
（比較例）
まず、図７には、既存のＩＭＳにおける、呼の経路の構成例を示す。ただし、呼処理（発信元と接続先とを通信可能に接続するための呼の処理）に必要な加入者情報等を管理するＨＳＳ（Home Subscriber Server）や各種サービスを提供するアプリケーションサーバは、図示を省略している。加入者情報は、例えば、加入者に設定された電話番号、ＩＰアドレス、享受するサービス種別等の加入者プロファイルを格納している。
図７に示すように、ＩＭＳは、Ｐ−ＣＳＣＦ（Proxy Call Session Control Function）１１（１１Ａ，１１Ｂ）およびＳ−ＣＳＣＦ（Serving Call Session Control Function）４０（４０Ａ，４０Ｂ）によって構成される。便宜上、ＰＣ（Personal Computer）等の端末２０Ａから発呼を受け付けるネットワーク（例えば、ＩＰ（Internet Protocol）ネットワーク）を発側ネットワーク３０と呼び、着信先の端末２０Ｂに呼を伝達するネットワーク（例えば、ＩＰネットワーク）を着側ネットワーク３１と呼ぶ。発側ネットワーク３０および着側ネットワーク３１には、それぞれＰ−ＣＳＣＦ１１およびＳ−ＣＳＣＦ４０が配置される。
【００１６】
Ｐ−ＣＳＣＦ１１は、端末２０との間で送受信するＳＩＰ信号の仲介を行う。Ｓ−ＣＳＣＦ４０は、ＨＳＳ（不図示）から取得した加入者情報に基づいて、呼処理を行う。以降の説明では、便宜的に、発側ネットワーク３０に配置されているＳ−ＣＳＣＦを発側ＣＳＣＦ４０Ａと呼び、着側ネットワーク３１に配置されているＳ−ＣＳＣＦを着側ＣＳＣＦ４０Ｂと呼ぶ。
【００１７】
図７では、端末２０Ａから発呼されたＳＩＰ信号（ＩＮＶＩＴＥリクエスト）は、Ｐ−ＣＳＣＦ１１Ａを経由して発側ＣＳＣＦ４０Ａで呼処理が行われ、着側ＣＳＣＦ４０Ｂに処理のリクエスト（ＩＮＶＩＴＥリクエスト）を送信する。着側ＣＳＣＦ４０Ｂは、発側ＣＳＣＦ４０Ａからリクエストを受信すると、着信先についての呼処理を実行し、Ｐ−ＣＳＣＦ１１Ｂを経由して着信先の端末２０Ｂに対してＳＩＰ信号（ＩＮＶＩＴＥリクエスト）を送信する。
【００１８】
次に、既存の発側ＣＳＣＦ４０Ａおよび着側ＣＳＣＦ４０Ｂにおける、呼処理の大まかな流れ（ただし、順序関係を限定するものではない）について、それぞれ図８および図９を用いて説明する（適宜、図７参照）。なお、図８，９に示す、加入者情報ＤＢ（Data Base）、加入者端末単位カウント情報ＤＢ、および番号翻訳用データＤＢは、ＩＭＳモデルにおけるＨＳＳ（不図示）に記憶してもよい。ただし、記憶場所を限定するのもではない。
【００１９】
図８には、発側ＣＳＣＦ４０Ａにおける逐次呼処理の流れを、処理ブロックの連続で表している。処理ブロックは、受け付けた呼に対する呼処理の一連の処理を処理目的別に分けたときにできるブロックであって、処理ブロックごとに実行可能なようにプログラム化されているものとする。
まず、図８に示すように、発側ＣＳＣＦ４０Ａは、端末２０ＡからＰ−ＣＳＣＦ１１Ａを経由して、ＩＮＶＩＴＥリクエスト（発呼情報）を受信する。
機種分析の処理ブロックでは、受信したＩＮＶＩＴＥリクエストから、発信元の加入者情報（発信元アドレス、発信元電話番号等）を取得する。そして、取得した加入者情報を、加入者情報ＤＢに登録済みの情報と比較して、サービスに加入している正規ユーザであるか否かを認証する。
信号分析の処理ブロックでは、ＩＮＶＩＴＥリクエストのヘッダ情報を分析し、ヘッダのエラーチェックを行う。
発加入者情報収集の処理ブロックでは、ＩＮＶＩＴＥリクエストに格納されていた発信元の加入者情報を用いて、加入者情報ＤＢを参照し、発加入者（発信元の加入者）が他に契約しているサービスがある場合には、そのサービス情報を取得する。なお、発加入者情報収集の処理ブロックは、信号分析の処理ブロックの実行後に実行されなければならないという関係にある。このような関係を依存関係があるという。
【００２０】
次に、発加入者リソースチェックの処理ブロックでは、加入者端末単位カウント情報ＤＢを参照して、空きセッション、チャネルリソースがあるかをチェックし、その加入者端末単位カウント情報ＤＢを更新する。
番号分析の処理ブロックでは、番号翻訳用データＤＢを参照して、Request-URI（Uniform Resource Identifier）の番号を分析する。
帯域予約の処理ブロックでは、呼接続のための帯域を帯域予約サーバに予約し、着側ＣＳＣＦにＩＮＶＩＴＥリクエストを送信する。この帯域予約の処理ブロックは、機種分析の処理ブロックの実行後に実行されなければならないという依存関係にある。
なお、機種分析の処理ブロックの実行前に、現在の処理状態を管理するコールデータに対して、処理状態の生成または取得を実行する。そして、帯域予約の処理ブロックの実行後に、コールデータに対して現在の処理状態について更新する。
【００２１】
図９には、着側ＣＳＣＦ４０Ｂにおける逐次呼処理の流れを、処理ブロックの連続で表している。
まず、着側ＣＳＣＦ４０Ｂは、発側ＣＳＣＦ４０Ａから、ＩＮＶＩＴＥリクエスト（発呼情報）を受信する。
そして、着側ＣＳＣＦ４０Ｂは、発側ＣＳＣＦ４０Ａと同様に、コールデータに対して処理状態の生成および取得を行う。
着加入者情報収集の処理ブロックでは、加入者情報ＤＢを参照して、着加入者（接続先の加入者）の加入者情報を取得する。
着サービス分析の処理ブロックでは、取得した加入者情報に基づいて、加入者端末単位カウント情報ＤＢを参照して、端末データ情報を取得し、着加入者が他に契約している着サービスがないかを分析する。
【００２２】
着リソースチェックの処理ブロックでは、加入者端末単位カウント情報ＤＢを参照して、着側のリソース情報をチェックするとともに、その加入者端末単位カウント情報ＤＢを更新する。
帯域予約の処理ブロックでは、着側の帯域を帯域予約サーバに予約する。なお、着加入者情報収集の処理ブロック、着サービス分析の処理ブロック、着リソースチェックの処理ブロック、および帯域予約の処理ブロックは、依存関係にある。
発番号インタワークの処理ブロックでは、ＩＰアドレス等のインタワークを行う。
そして、着側ＣＳＣＦ４０Ｂは、帯域予約の処理ブロックの実行後に、コールデータに対して現在の処理状態について更新し、着側端末２０Ｂに対してＩＮＶＩＴＥリクエストを送信する。
【００２３】
以上説明したように、比較例では、発側ＣＳＣＦ４０Ａおよび着側ＣＳＣＦ４０Ｂともに、処理ブロック間に依存関係がない箇所も逐次的に処理している。そのため、比較例における呼処理に費やされる時間には、短縮可能な処理時間が含まれていると考えられる。
【００２４】
（本実施形態における呼処理並列化システム）
次に、比較例で示した逐次的呼処理に対して、並列処理で実行する発側ＣＳＣＦ１０Ａおよび着側ＣＳＣＦ１０Ｂを備える、呼処理並列化システムの構成例について、図１を用いて説明する。図１の構成が比較例（図７）の構成と異なる点は、信号転送装置１２および発側着側処理確認装置１３が新たに設けられ、発側ＣＳＣＦ１０Ａおよび着側ＣＳＣＦ１０Ｂが処理ブロックの並列処理を実行することである。なお、図１において、図７と同じ構成については、同じ符号を付し、説明を省略する。また、図１には、発側ＣＳＣＦ１０Ａおよび着側ＣＳＣＦ１０Ｂを１台ずつしか記載していないが、それぞれ２台以上であっても構わない。
【００２５】
図１に示すように、呼処理並列化システム１は、発側ＣＳＣＦ１０Ａ、着側ＣＳＣＦ１０Ｂ、信号転送装置１２、および発側着側処理完了確認装置１３によって構成される。
端末２０Ａから発呼されたＩＮＶＩＴＥリクエスト（発呼情報）は、Ｐ−ＣＳＣＦ１１Ａを経由して信号転送装置１２で受信される。信号転送装置１２は、受信したＩＮＶＩＴＥリクエストを複製して、発側ＣＳＣＦ１０Ａおよび着側ＣＳＣＦ１０Ｂにそれぞれ送信する。発側ＣＳＣＦ１０Ａおよび着側ＣＳＣＦ１０Ｂは、受信したＩＮＶＩＴＥリクエストに対して、それぞれ並列処理（後記）を実行し、並列処理の完了後に、ＩＮＶＩＴＥリクエストを発側着側処理完了確認装置１３に送信する。そして、発側着側処理完了確認装置１３は、発側ＣＳＣＦ１０Ａおよび着側ＣＳＣＦ１０ＢのそれぞれからＩＮＶＩＴＥリクエストを受信した場合、Ｐ−ＣＳＣＦ１１Ｂを介して着側の端末２０Ｂに向けてＩＮＶＩＴＥリクエストを送信する。
すなわち、呼処理並列化システム１は、発側ＣＳＣＦ１０Ａと着側ＣＳＣＦ１０Ｂとの並列処理と、それぞれの発側ＣＳＣＦ１０Ａおよび着側ＣＳＣＦ１０Ｂ内での並列処理とを実現することができる。
【００２６】
（信号転送装置）
信号転送装置１２の構成例について、図２を用いて説明する。図２に示すように、信号転送装置１２は、処理部１２１、記憶部１２２、および通信部１２３を備える。処理部１２１は、図示しないＣＰＵおよびメインメモリによって構成され、アプリケーションプログラム等を記憶する記憶部１２２に記憶されているアプリケーションプログラムをメインメモリに展開して、転送先決定部１２１１を具現化する。また、記憶部１２２は、転送先情報１２２１を記憶している。通信部１２３は、通信用インタフェースであり、ＳＩＰ信号を送受信する。
【００２７】
転送先情報１２２１は、ＩＮＶＩＴＥリクエストに格納されている接続先情報（接続先の情報）と、そのＩＮＶＩＴＥリクエストの転送先の情報（発側ＣＳＣＦ１０Ａを識別する識別情報および着側ＣＳＣＦ１０Ｂを識別する識別情報）とを関連付けて記憶している。
転送先決定部１２１１は、通信部１２３を介して受信したＩＮＶＩＴＥリクエスト（発呼情報）に格納されている接続先の情報を抽出し、転送先情報１２２１を参照し、当該接続先の情報に関連付けられた転送先の発側ＣＳＣＦ１０Ａおよび着側ＣＳＣＦ１０Ｂを決定する。そして、転送先決定部１２１１は、受信したＩＮＶＩＴＥリクエストを複製して、決定した転送先に送信する。
【００２８】
（発側着側処理完了確認装置）
発側着側処理完了確認装置１３の構成例について、図３を用いて説明する。図３に示すように、発側着側処理完了確認装置１３は、処理部１３１、記憶部１３２、および通信部１３３を備える。処理部１３１は、図示しないＣＰＵおよびメインメモリによって構成され、アプリケーションプログラム等を記憶する記憶部１３２に記憶されているアプリケーションプログラムをメインメモリに展開して、発着処理確認部１３１１を具現化する。通信部１３３は、通信用インタフェースであり、ＳＩＰ信号を送受信する。
【００２９】
発着処理確認部１３１１は、通信部１３３を介して、発側ＣＳＣＦ１０Ａおよび着側ＣＳＣＦ１０ＢからそれぞれＩＮＶＩＴＥリクエストを受信する。次に、発着処理確認部１３１１は、受信した双方のＩＮＶＩＴＥリクエストを比較し、それらのＩＮＶＩＴＥリクエストに格納されている情報が同じか否かを判定する。そして、発着処理確認部１３１１は、同じと判定した場合、発側ＣＳＣＦ１０Ａおよび着側ＣＳＣＦ１０Ｂのそれぞれの処理完了と判断して、着側の端末２０Ｂに対してＩＮＶＩＴＥリクエストを送信する。
【００３０】
（発側ＣＳＣＦおよび着側ＣＳＣＦ）
発側ＣＳＣＦ１０Ａおよび着側ＣＳＣＦ１０Ｂの構成例について、図４を用いて説明する。なお、発側ＣＳＣＦ１０Ａと着側ＣＳＣＦ１０Ｂとは、同じ構成を備えている。そこで、発側ＣＳＣＦ１０Ａの場合を代表させて説明する。
図４に示すように、発側ＣＳＣＦ１０Ａは、処理部１０１、記憶部１０２、および通信部１０３を備える。処理部１０１は、図示しないＣＰＵおよびメインメモリによって構成され、アプリケーションプログラム等を記憶する記憶部１０２に記憶されているアプリケーションプログラムをメインメモリに展開して、処理振分部１４、並列処理部１５、および並列処理確認部１６を具現化する。また、記憶部１０２は、処理ブロック対応情報１０２１を記憶している。通信部１０３は、通信用インタフェースであり、ＳＩＰ信号を送受信する。
【００３１】
処理ブロック対応情報１０２１は、ＩＮＶＩＴＥリクエストのメッセージ内部に記述されている文字列等を識別子として、その識別子と、その識別子が示す処理を実行する処理ブロックを識別する処理ブロック識別情報とを関連付けて記憶している。例えば、識別子は、処理ブロックの処理に入力される情報となる文字列である。なお、処理ブロック識別情報は、処理ブロックのプログラムが格納されているメモリアドレスであっても構わない。
処理振分部１４は、通信部１０３を介して受信したＩＮＶＩＴＥリクエストに格納されているメッセージを分割したメッセージ片に記述されている文字列を構文解析を用いて識別子として抽出する。次に、処理振分部１４は、抽出した識別子を用いて、処理ブロック対応情報１０２１を参照して、その抽出した識別子を含むメッセージ片を、当該識別子に関連付けられている処理ブロックに引き渡す。
並列処理部１５は、処理の順番に依存関係のある処理ブロックについては逐次処理を実行し、依存関係のない処理ブロック間では並列処理を実行する。そして、逐次処理の最後の処理ブロックおよび並列処理される依存関係のない処理ブロックは、自身の処理を完了した場合、入力されたメッセージ片を並列処理確認部１６へ出力する。
並列処理確認部１６は、並列処理部１５からメッセージ片を受信した場合、並列処理が正常に完了したと判断し、受信したメッセージ片を組み立て直して、処理振分部１４が受信したのと同様のＩＮＶＩＴＥリクエストを生成する。そして、並列処理確認部１６は、通信部１０３を介して、発側着側処理完了確認装置１３へ、ＩＮＶＩＴＥリクエストを送信する。
【００３２】
次に、本実施形態における発側ＣＳＣＦ１０Ａの呼処理の流れについて、図５を用いて説明する。
ステップＳ１では、処理振分部１４が、受信したＩＮＶＩＴＥリクエストに格納されているメッセージを分割したメッセージ片に記述されている文字列を構文解析を用いて識別子として抽出し、その抽出した識別子を含むメッセージ片を、当該識別子に関連付けられている処理ブロックに引き渡す。
ステップＳ２では、並列処理部１５が、処理振分部１４からメッセージ片を取得して、そのメッセージ片を入力とする処理ブロックを起動し、処理を実行する。なお、並列処理部１５は、依存関係のある機種分析および帯域予約と、依存関係のある信号分析および発加入者情報収集と、発加入者リソースチェックと、番号分析とを並列に実行する。また、帯域予約、発加入者情報収集、発加入者リソースチェック、および番号分析の各ブロックは、処理が正常に完了した場合に、入力されたメッセージ片を並列処理確認部１６へ出力する。なお、当該メッセージ片に処理完了を示す処理完了情報を付加して出力してもよい。
【００３３】
そして、ステップＳ３では、並列処理確認部１６が、並列処理部１５から、メッセージ片をすべて受信した場合に、並列処理が正常に完了したと判断する。なお、メッセージ片に処理完了情報が付加されている場合には、処理完了情報をすべて受信したときに、並列処理が正常に完了したと判断する。そして、並列処理確認部１６は、受信したメッセージ片を組み立て直して、処理振分部１４が受信したのと同様のＩＮＶＩＴＥリクエストを生成して、発側着側処理完了確認装置１３へ当該ＩＮＶＩＴＥリクエストを送信する。
【００３４】
なお、図５に示す、加入者情報ＤＢ、加入者端末単位カウント情報ＤＢ、および番号翻訳用データＤＢは、図４の記憶部１０２に記憶してあっても、発側ＣＳＣＦ１０Ａに接続される外部のＨＤＤ（Hard Disc Drive）やデータベースサーバ等に記憶してあっても構わない。また、各処理ブロックは、いずれかのＤＢの情報に対して読み出し（参照）を行う場合、参照する情報にロックをかけずに参照し、更新が発生する書き込み時のみロックをかけて実行する楽観的ロックの手法を用いる。このことで、同じ情報へのアクセス競合のための参照待ち合わせを防止できることになるので、処理時間の短縮化が見込める。また、楽観的ロックの手法を用いることで、将来、新しい処理ブロックの追加が発生した場合であっても、処理ブロックの処理の順番の組み換えに対して、その組み換えに対応したロックの順番の見直しを行う必要が少なくなる。なお、更新発生時のロックについては、情報を更新するためにＤＢへアクセスする際に、キャッシュを用いて、キャッシュに記憶されている情報と更新情報との相違を判定し、相違があった場合にのみ更新処理を行う等の手法をとっても良い。
【００３５】
なお、図５には記載していないが、コールデータに対して、処理部１０１は、ステップＳ２の並列処理の処理開始前に処理状態の生成および取得を行い、ステップＳ３の並列処理確認において、並列処理が正常に完了したことを確認した後に、現在の処理状態を更新する。
【００３６】
次に、本実施形態における着側ＣＳＣＦ１０Ｂの呼処理の流れについて、図６を用いて説明する。
ステップＳ４では、処理振分部１４が、受信したＩＮＶＩＴＥリクエストに格納されているメッセージを分割したメッセージ片に記述されている文字列を構文解析を用いて識別子として抽出し、その抽出した識別子を含むメッセージ片を、当該識別子に関連付けられている処理ブロックに引き渡す。
ステップＳ５では、並列処理部１５が、処理振分部１４からメッセージ片を取得して、そのメッセージ片を入力とする処理ブロックを起動し、処理を実行する。なお、並列処理部１５は、依存関係のある着加入者情報収集、着サービス分析、着リソースチェック、および帯域予約と、発番号インタワークとを並列に実行する。また、帯域予約および発番号インタワークの各ブロックは、処理が正常に完了した場合に、入力されたメッセージ片を並列処理確認部１６へ出力する。なお、当該メッセージ片に処理完了を示す処理完了情報を付加して出力してもよい。
【００３７】
そして、ステップＳ６では、並列処理確認部１６が、並列処理部１５から、メッセージ片をすべて受信した場合に、並列処理が正常に完了したと判断する。なお、メッセージ片に処理完了情報が付加されている場合には、処理完了情報をすべて受信した場合に、並列処理が正常に完了したと判断する。そして、並列処理確認部１６は、受信したメッセージ片を組み立て直して、処理振分部１４が受信したのと同様のＩＮＶＩＴＥリクエストを生成して、発側着側処理完了確認装置１３へ当該ＩＮＶＩＴＥリクエストを送信する。
【００３８】
なお、図６に示す、加入者情報ＤＢおよび加入者端末単位カウント情報ＤＢは、図４の記憶部１０２に記憶してあっても、発側ＣＳＣＦ１０Ａおよび着側ＣＳＣＦ１０Ｂに接続される外部のＨＤＤやデータベースサーバ等に記憶してあっても構わない。また、各処理ブロックは、いずれかのＤＢの情報に対して読み出し（参照）を行う場合、楽観的ロックの手法を用いる。また、更新発生時のロックについては、情報を更新するためにＤＢへアクセスする際に、キャッシュを用いて、キャッシュに記憶されている情報と更新情報との相違を判定し、相違があった場合にのみ更新処理を行う等の手法をとっても良い。
【００３９】
なお、図６には記載していないが、コールデータに対して、処理部１０１は、ステップＳ５の並列処理の処理開始前に処理状態の生成および取得を行い、ステップＳ６の並列処理確認において、並列処理が正常に完了したことを確認した後に、現在の処理状態を更新する。
【００４０】
以上、本実施形態で説明した呼処理並列化システム１は、発側ＣＳＣＦ１０Ａ、着側ＣＳＣＦ１０Ｂ、信号転送装置１２、および発側着側処理完了確認装置１３によって構成される。信号転送装置１２は、端末２０Ａから受信したＩＮＶＩＴＥリクエストを複製して、発側ＣＳＣＦ１０Ａおよび着側ＣＳＣＦ１０Ｂにそれぞれ送信する。発側ＣＳＣＦ１０Ａおよび着側ＣＳＣＦ１０Ｂは、受信したＩＮＶＩＴＥリクエストに対して、それぞれ並列処理を実行し、並列処理の完了後に、ＩＮＶＩＴＥリクエストを発側着側処理完了確認装置１３に送信する。そして、発側着側処理完了確認装置１３は、発側ＣＳＣＦ１０Ａおよび着側ＣＳＣＦ１０ＢのそれぞれからＩＮＶＩＴＥリクエストを受信した場合、Ｐ−ＣＳＣＦ１１Ｂを介して着側の端末２０Ｂに向けてＩＮＶＩＴＥリクエストを送信する。
すなわち、呼処理並列化システム１は、発側ＣＳＣＦ１０Ａと着側ＣＳＣＦ１０Ｂとの並列処理と、それぞれの発側ＣＳＣＦ１０Ａおよび着側ＣＳＣＦ１０Ｂ内での並列処理とを実現することができる。
このような構成を備えているため、呼処理並列化システム１は、呼処理シーケンスの並列化処理によって、呼処理の時間を短縮することが可能となる。
【００４１】
また、本実施形態では、ＳＩＰのＩＮＶＩＴＥリクエストを用いた場合を例として説明したが、これに限られることはなく、他のプロトコルを用いた呼処理の場合にも適用可能である。
【符号の説明】
【００４２】
１    呼処理並列化システム
１０Ａ  発側ＣＳＣＦ（発側呼処理制御部）
１０Ｂ  着側ＣＳＣＦ（着側呼処理制御部）
１２  信号転送装置（信号転送部）
１３  発側着側処理完了確認装置（発側着側処理完了確認部）
１４  処理振分部
１５  並列処理部
１６  並列処理確認部
２０  端末
１０１，１２１，１３１  処理部
１０２，１２２，１３２  記憶部
１０２１  処理ブロック識別情報
１２１１  転送先決定部
１２２１  転送先情報
１３１１  発着処理確認部
【図１】
0005364055.tif 000002
【図２】
0005364055.tif 000003
【図３】
0005364055.tif 000004
【図４】
0005364055.tif 000005
【図５】
0005364055.tif 000006
【図６】
0005364055.tif 000007
【図７】
0005364055.tif 000008
【図８】
0005364055.tif 000009
【図９】
0005364055.tif 000010