(57)【特許請求の範囲】
【請求項１】
複数の呼処理装置から、呼に関する呼信号を処理する第１呼処理装置と、前記第１呼処理装置が前記呼信号の処理を停止した場合に前記呼信号を処理する第２呼処理装置とを、前記呼ごとに決定する決定部と、
前記決定部の決定に従って、前記呼信号を前記呼に応じた前記第１呼処理装置に送信し、前記第１呼処理装置から前記呼に応じた前記第２呼処理装置に前記呼信号の処理情報を送信させる呼信号処理部と、
前記第１呼処理装置が前記呼信号の処理を停止したことを検出する検出部と、
前記検出部が前記呼信号の処理の停止を検出したとき、前記第２呼処理装置に前記処理情報の処理を指示する指示部とを有し、
前記決定部は、前記複数の呼処理装置から前記第１呼処理装置を呼処理装置の識別子に従って順次に選択し、選択した前記第１呼処理装置が処理する呼ごとに前記第２呼処理装置を呼処理装置の識別子に従って順次に決定することを特徴とする呼制御装置。
【請求項２】
テーブルを記憶する記憶部を、さらに有し、
前記決定部は、決定に従って前記呼の識別子、前記第１呼処理装置の識別子、及び前記第２呼処理装置の識別子を互いに対応付けて前記テーブルに登録し、
前記呼信号処理部は、前記テーブルを参照することにより前記呼信号の送信先の前記第１呼処理装置及び前記呼信号の処理情報の送信先の前記第２呼処理装置を識別することを特徴とする請求項１に記載の呼制御装置。
【請求項３】
前記決定部は、前記検出部が前記呼信号の処理の停止を検出したとき、前記呼信号の処理を停止した前記第１呼処理装置に対応する前記第２呼処理装置を、前記呼信号を処理する第３呼処理装置として決定し、前記複数の呼処理装置から、前記第３呼処理装置が前記呼信号の処理を停止した場合に前記呼信号を処理する第４呼処理装置を決定することを特徴とする請求項１または２に記載の呼制御装置。
【請求項４】
前記呼信号処理部は、前記呼信号に前記第２呼処理装置のアドレスを付与して前記第１呼処理装置に送信し、前記第１呼処理装置に前記アドレスに基づいて前記呼信号の処理情報を前記第２呼処理装置に送信させることを特徴とする請求項１乃至３の何れかに記載の呼制御装置。
【請求項５】
呼制御装置と、複数の呼処理装置とを有し、
前記呼制御装置は、
前記複数の呼処理装置から、呼に関する呼信号を処理する第１呼処理装置と、前記第１呼処理装置が前記呼信号の処理を停止した場合に前記呼信号を処理する第２呼処理装置とを、前記呼ごとに決定し、
該決定に従って、前記呼信号を前記呼に応じた前記第１呼処理装置に送信し、前記第１呼処理装置から前記呼に応じた前記第２呼処理装置に前記呼信号の処理情報を送信させ、
前記第１呼処理装置における前記呼信号の処理の停止を検出したとき、前記第２呼処理装置に前記処理情報の処理を指示し、
前記第１呼処理装置は、前記呼信号を処理し、
前記第２呼処理装置は、前記呼制御装置からの指示に従い、前記第１呼処理装置から送信された前記処理情報を処理し、
前記呼制御装置は、前記第１呼処理装置及び前記第２呼処理装置を決定するとき、前記複数の呼処理装置から前記第１呼処理装置を呼処理装置の識別子に従って順次に選択し、選択した前記第１呼処理装置が処理する呼ごとに前記第２呼処理装置を呼処理装置の識別子に従って順次に決定することを特徴とする呼制御システム。
【請求項６】
複数の呼処理装置から、呼に関する呼信号を処理する第１呼処理装置と、前記第１呼処理装置が前記呼信号の処理を停止した場合に前記呼信号を処理する第２呼処理装置とを、前記呼ごとに決定し、
該決定に従って、前記呼信号を前記呼に応じた前記第１呼処理装置に送信し、前記第１呼処理装置から前記呼に応じた前記第２呼処理装置に前記呼信号の処理情報を送信させ、
前記第１呼処理装置における前記呼信号の処理の停止を検出したとき、前記第２呼処理装置に前記処理情報の処理を指示し、
前記第１呼処理装置及び前記第２呼処理装置を決定するとき、前記複数の呼処理装置から前記第１呼処理装置を呼処理装置の識別子に従って順次に選択し、選択した前記第１呼処理装置が処理する呼ごとに前記第２呼処理装置を呼処理装置の識別子に従って順次に決定することを特徴とする呼制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本件は、呼制御装置、呼制御システム、及び呼制御方法に関する。
【背景技術】
【０００２】
移動体通信システムにおいて、呼処理を行う呼処理装置は、障害発生時でも通信が継続されるように、運用系（ＡＣＴ）及び待機系（ＳＢＹ）により冗長構成されている（例えば特許文献１参照）。しかし、待機系の呼処理装置は、障害が発生していないときには呼処理を行わないため、設備コストを低減するためにＮ−ＡＣＴ構成が用いられる。
【０００３】
Ｎ−ＡＣＴ構成においては、障害に備えた待機系専用の呼処理装置が存在せず、各呼処理装置は、自装置に対応する他の呼処理装置に障害が発生した場合、その呼処理装置が行っていた全ての呼処理を引き継ぐことで、通信が継続される。このとき、各呼処理装置には、できるだけ負荷が均等になるように呼処理が割り当てられる。なお、負荷分散に関し、例えば特許文献２には、仮想サーバが提供するサービスに関する負荷の変化に応じて、仮想サーバを自動的にスケールアウトまたはスケールシュリンクする点が記載されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１３−２３２８６４号公報
【特許文献２】特開２０１２−３７９３５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかし、Ｎ−ＡＣＴ構成では、ある呼処理装置に障害が発生した場合、その呼処理装置が行っていた全ての呼処理が他の１台の呼処理装置に引き継がれるため、呼処理を引き継いだ呼処理装置が過負荷状態になるおそれがある。
【０００６】
そこで本件は上記の課題に鑑みてなされたものであり、負荷の集中を防止する呼制御装置、呼制御システム、及び呼制御方法を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本明細書に記載の呼制御装置は、複数の呼処理装置から、呼に関する呼信号を処理する第１呼処理装置と、前記第１呼処理装置が前記呼信号の処理を停止した場合に前記呼信号を処理する第２呼処理装置とを、前記呼ごとに決定する決定部と、前記決定部の決定に従って、前記呼信号を前記呼に応じた前記第１呼処理装置に送信し、前記第１呼処理装置から前記呼に応じた前記第２呼処理装置に前記呼信号の処理情報を送信させる呼信号処理部と、前記第１呼処理装置が前記呼信号の処理を停止したことを検出する検出部と、前記検出部が前記呼信号の処理の停止を検出したとき、前記第２呼処理装置に前記処理情報の処理を指示する指示部とを有し、前記決定部は、前記複数の呼処理装置から前記第１呼処理装置を呼処理装置の識別子に従って順次に選択し、選択した前記第１呼処理装置が処理する呼ごとに前記第２呼処理装置を呼処理装置の識別子に従って順次に決定する。
【０００８】
本明細書に記載の呼制御システムは、呼制御装置と、複数の呼処理装置とを有し、前記呼制御装置は、前記複数の呼処理装置から、呼に関する呼信号を処理する第１呼処理装置と、前記第１呼処理装置が前記呼信号の処理を停止した場合に前記呼信号を処理する第２呼処理装置とを、前記呼ごとに決定し、該決定に従って、前記呼信号を前記呼に応じた前記第１呼処理装置に送信し、前記第１呼処理装置から前記呼に応じた前記第２呼処理装置に前記呼信号の処理情報を送信させ、前記第１呼処理装置における前記呼信号の処理の停止を検出したとき、前記第２呼処理装置に前記呼信号の処理を指示し、前記第１呼処理装置は、前記呼信号を処理し、前記第２呼処理装置は、前記呼制御装置からの指示に従い、前記第１呼処理装置から送信された前記処理情報を処理し、前記呼制御装置は、前記第１呼処理装置及び前記第２呼処理装置を決定するとき、前記複数の呼処理装置から前記第１呼処理装置を呼処理装置の識別子に従って順次に選択し、選択した前記第１呼処理装置が処理する呼ごとに前記第２呼処理装置を呼処理装置の識別子に従って順次に決定する。
【０００９】
本明細書に記載の呼制御方法は、複数の呼処理装置から、呼に関する呼信号を処理する第１呼処理装置と、前記第１呼処理装置が前記呼信号の処理を停止した場合に前記呼信号を処理する第２呼処理装置とを、前記呼ごとに決定し、該決定に従って、前記呼信号を前記呼に応じた前記第１呼処理装置に送信し、前記第１呼処理装置から前記呼に応じた前記第２呼処理装置に前記呼信号の処理情報を送信し、前記第１呼処理装置における前記呼信号の処理の停止を検出したとき、前記第２呼処理装置に前記処理情報の処理を指示し、前記第１呼処理装置及び前記第２呼処理装置を決定するとき、前記複数の呼処理装置から前記第１呼処理装置を呼処理装置の識別子に従って順次に選択し、選択した前記第１呼処理装置が処理する呼ごとに前記第２呼処理装置を呼処理装置の識別子に従って順次に決定する方法である。
【発明の効果】
【００１０】
負荷の集中を防止できる。
【図面の簡単な説明】
【００１１】
【図１】無線通信システムの一例を示す構成図である。
【図２（ａ）】比較例の割当テーブルの一例を示す図である。
【図２（ｂ）】比較例の呼処理サーバの動作を示す図である。
【図３（ａ）】実施例の割当テーブルの一例を示す図である。
【図３（ｂ）】実施例の呼処理サーバの動作を示す図である。
【図４】呼制御装置の一例を示す構成図である。
【図５】サーバ管理テーブルの一例を示す図である。
【図６】呼信号の送信動作の一例を示す図である。
【図７（ａ）】呼信号（通常）の構成例を示す図である。
【図７（ｂ）】呼信号（ＩＰアドレス付与）の構成例を示す図である。
【図８】呼処理サーバの一例を示す構成図である。
【図９】呼情報管理テーブルの一例を示す図である。
【図１０】呼処理サーバの障害発生時の動作の一例を示す図である。
【図１１（ａ）】障害発生時の更新後のサーバ管理テーブルの一例を示す図である。
【図１１（ｂ）】障害発生時の更新後の割当テーブルの一例を示す図である。
【図１１（ｃ）】障害発生時の更新後の呼情報管理テーブルの一例を示す図である。
【図１２】呼制御装置の呼信号の処理の一例を示すフローチャートである。
【図１３】プライマリサーバの呼信号の処理の一例を示すフローチャートである。
【図１４】セカンダリサーバの呼情報の処理の一例を示すフローチャートである。
【図１５】呼制御装置における呼処理サーバの監視処理の一例を示すフローチャートである。
【図１６】呼処理サーバにおける障害通知の受信処理の一例を示すフローチャートである。
【図１７】交換機システムにおける呼処理の一例を示すシーケンス図（その１）である。
【図１８】交換機システムにおける呼処理の一例を示すシーケンス図（その２）である。
【図１９】障害発生時の交換機システムにおける呼処理の一例を示すシーケンス図である。
【発明を実施するための形態】
【００１２】
図１は、無線通信システムの一例を示す構成図である。無線通信システムは、複数の無線通信端末９０ａ，９０ｂ、複数の基地局９１ａ，９１ｂ、及び電話網ＮＷ内の複数の交換機システム９２ａ，９２ｂを含む。以下の説明では、無線通信端末９０ａ、基地局９１ａ、及び交換機システム９２ａを発呼側とし、無線通信端末９０ｂ、基地局９１ｂ、及び交換機システム９２ｂを着呼側とするが、発呼側と着呼側を反対とした場合でも同様の動作が行われる。
【００１３】
無線通信端末９０ａ，９０ｂとしては、スマートフォンや携帯電話機などが挙げられる。無線通信端末９０ａ，９０ｂは、所在のエリアに応じた基地局９１ａ，９１ｂと無線を介して、それぞれ回線接続される。複数の基地局９１ａは交換機システム９２ａに接続され、複数の基地局９１ｂは交換機システム９２ｂに接続されている。また、交換機システム９２ａ，９２ｂは電話網ＮＷ内でルータ（不図示）などを介して互いに接続されている。
【００１４】
発呼側の基地局９１ａと着呼側の基地局９１ｂの間では、交換機システム９２ａ，９２ｂを介して、呼に関する呼信号Ｓが送受信される。交換機システム９２ａ，９２ｂは、呼信号Ｓを処理して呼接続を行う。
【００１５】
交換機システム９２ａ，９２ｂは、呼制御システムの一例であり、呼制御装置１及び複数の呼処理サーバ（＃１，＃２，・・・，＃Ｍ，＃Ｎ（Ｍ，Ｎは３以上の整数））２とを有する。呼制御装置１及び複数の呼処理サーバ２は、バス３を介して通信する。呼制御装置１は、基地局９１ａ，９１ｂまたは交換機システム９２ａ，９２ｂから受信した呼信号Ｓを呼処理サーバ２に送信する。
【００１６】
各呼処理サーバ２は、呼処理装置の一例であり、呼制御装置１から受信した呼信号Ｓを処理して、基地局９１ａ，９１ｂまたは交換機システム９２ａ，９２ｂに送信する。つまり、呼処理サーバ２は、発呼側の無線通信端末９０ａと着呼側の無線通信端末９０ｂの間の通信セッションを処理する。
【００１７】
複数の呼処理サーバ２は、例えばＮ−ＡＣＴ構成で構成され、それぞれ、自装置に割り当てられた呼処理を行うだけでなく、他の呼処理サーバ２に障害が発生した場合、その障害の呼処理サーバ２が行っていた呼処理を引き継ぐ。つまり、呼処理サーバ２は、呼信号Ｓを処理するプライマリサーバ（第１呼処理装置）と、プライマリサーバが呼信号Ｓの処理を停止した場合に呼信号Ｓを処理するセカンダリサーバ（第２呼処理装置）として動作する。呼制御装置１は、複数の呼処理サーバ２からプライマリサーバ及びセカンダリサーバを決定して、以下に述べるように割当テーブルに呼処理サーバ２の識別子（＃１，＃２，・・・，＃Ｍ，＃Ｎ）を登録する。
【００１８】
図２（ａ）には、比較例の割当テーブルの一例が示されている。割当テーブルには、プライマリサーバの識別子であるプライマリＩＤと、セカンダリサーバの識別子であるセカンダリＩＤとが対応付けられて登録されている。本例では、プライマリＩＤ「＃１」とセカンダリＩＤ「＃Ｍ」とが対応付けられている。このため、呼処理サーバ（＃１）２に障害が発生した場合、呼処理サーバ（＃１）２が行っていた全ての呼処理を呼処理サーバ（＃Ｍ）２が引き継ぐ。
【００１９】
また、プライマリＩＤ「＃Ｍ」は、セカンダリＩＤ「＃Ｎ」と対応付けられている。このため、呼処理サーバ（＃Ｍ）２に障害が発生した場合、呼処理サーバ（＃Ｍ）２が行っていた全ての呼処理を呼処理サーバ（＃Ｎ）２が引き継ぐ。これと同様に、呼処理サーバ（＃Ｎ）２に障害が発生した場合、呼処理サーバ（＃Ｎ）２が行っていた全ての呼処理を呼処理サーバ（＃１）２が引き継ぐ。
【００２０】
図２（ｂ）には、比較例の呼処理サーバ２の動作が示されている。図２（ｂ）は、一例として、３つの呼処理サーバ（＃１，＃Ｍ，＃Ｎ）２からなるＮ−ＡＣＴ構成を示す。
【００２１】
呼処理サーバ（＃１，＃Ｍ，＃Ｎ）２は、呼制御装置１から受信した呼信号Ｓから、呼信号Ｓの処理情報である呼情報＃１，＃Ｍ，＃Ｎを生成して自装置内に格納する（「プライマリ」参照）。なお、呼制御装置１は、各呼処理サーバ２に、できるだけ負荷が均等になるように呼処理を割り当てる。
【００２２】
また、呼処理サーバ（＃１，＃Ｍ，＃Ｎ）２は、割当テーブルに従って、自装置に対応するセカンダリサーバに呼情報＃１，＃Ｍ，＃Ｎをコピーする（「セカンダリ」参照）。例えば、プライマリサーバである呼処理サーバ（＃１）は、セカンダリサーバである呼処理サーバ（＃Ｍ）に対応するため、呼処理サーバ（＃Ｍ）に呼情報＃１を送信することでコピーする。また、プライマリサーバである呼処理サーバ（＃Ｍ）は、セカンダリサーバである呼処理サーバ（＃Ｎ）に対応するため、呼処理サーバ（＃Ｎ）に呼情報＃Ｍを送信することでコピーする。さらに、プライマリサーバである呼処理サーバ（＃Ｎ）は、セカンダリサーバである呼処理サーバ（＃１）に対応するため、呼処理サーバ（＃１）に呼情報＃Ｎを送信することでコピーする。
【００２３】
これにより、何れの呼処理サーバ（＃１，＃Ｍ，＃Ｎ）２に障害が発生しても、障害の呼処理サーバ（＃１，＃Ｍ，＃Ｎ）２に対応する他の呼処理サーバ（＃１，＃Ｍ，＃Ｎ）２が、障害の呼処理サーバ（＃１，＃Ｍ，＃Ｎ）２が行っていた呼処理を引き継ぐことができる。例えば、呼処理サーバ（＃１）２に障害が発生した場合、呼処理サーバ（＃１）２に対応する呼処理サーバ（＃Ｍ）２が、障害の呼処理サーバ（＃１）２が行っていた呼処理を引き継ぐことができる。
【００２４】
しかし、この場合、呼処理サーバ（＃１）２が行っていた全ての呼処理が呼処理サーバ（＃Ｍ）２に引き継がれるため、呼処理サーバ（＃Ｍ）２が過負荷状態になるおそれがある。これと同様に、他の呼処理サーバ（＃１，＃Ｎ）２も、呼処理を引き継いだ場合、過負荷状態になるおそれがある。
【００２５】
そこで、実施例の呼制御装置１は、比較例とは異なり、複数の呼処理サーバ２からプライマリサーバ及びセカンダリサーバを呼ごとに決定する。これにより、１台のプライマリサーバの処理対象の複数の呼が複数台のセカンダリサーバに割り当てられるため、負荷の集中が防止される。
【００２６】
図３（ａ）には、実施例の割当テーブルの一例が示されている。割当テーブルには、呼の識別子であるＣａｌｌ−ＩＤ、プライマリＩＤ、及びセカンダリＩＤが対応付けられて登録されている。すなわち、割当テーブルには、呼ごとにプライマリＩＤ及びセカンダリＩＤが登録されている。なお、図３（ａ）では、簡単化のため、Ｃａｌｌ−ＩＤを「Ａ１」、「Ａ２」、「Ｂ１」、「Ｂ２」、「Ｃ１」、「Ｃ２」と記載している。
【００２７】
例えば、Ｃａｌｌ−ＩＤ「Ａ１」の呼には、プライマリサーバとして呼処理サーバ（＃１）２が割り当てられ、セカンダリサーバとして呼処理サーバ（＃Ｍ）２が割り当てられている。また、Ｃａｌｌ−ＩＤ「Ａ２」の呼には、プライマリサーバとして呼処理サーバ（＃１）２が割り当てられ、セカンダリサーバとして呼処理サーバ（＃Ｎ）２が割り当てられている。
【００２８】
このため、呼処理サーバ（＃１）２に障害が発生した場合、Ｃａｌｌ−ＩＤ「Ａ１」の呼に関する呼処理は呼処理サーバ（＃Ｍ）２に引き継がれ、Ｃａｌｌ−ＩＤ「Ａ２」の呼に関する呼処理は呼処理サーバ（＃Ｎ）２に引き継がれる。したがって、呼処理サーバ（＃１）２が行っていた呼処理の負荷が、２台の呼処理サーバ（＃Ｍ，＃Ｎ）２に分散されるため、負荷の集中が防止される。
【００２９】
他の例を挙げると、Ｃａｌｌ−ＩＤ「Ｂ１」の呼には、プライマリサーバとして呼処理サーバ（＃Ｍ）２が割り当てられ、セカンダリサーバとして呼処理サーバ（＃Ｎ）２が割り当てられている。また、Ｃａｌｌ−ＩＤ「Ｂ２」の呼には、プライマリサーバとして呼処理サーバ（＃Ｍ）２が割り当てられ、セカンダリサーバとして呼処理サーバ（＃１）２が割り当てられている。
【００３０】
このため、呼処理サーバ（＃Ｍ）２に障害が発生した場合、Ｃａｌｌ−ＩＤ「Ｂ１」の呼に関する呼処理は呼処理サーバ（＃Ｎ）２に引き継がれ、Ｃａｌｌ−ＩＤ「Ｂ２」の呼に関する呼処理は呼処理サーバ（＃１）２に引き継がれる。したがって、呼処理サーバ（＃Ｍ）２が行っていた呼処理の負荷が、２台の呼処理サーバ（＃１，＃Ｎ）２に分散されるため、負荷の集中が防止される。なお、これと同様に、呼処理サーバ（＃Ｎ）に障害が発生した場合も、他の２台の呼処理サーバ（＃１，＃Ｍ）２に負荷が分散される。
【００３１】
図３（ｂ）には、実施例の呼処理サーバ２の動作が示されている。図３（ｂ）は、一例として、３つの呼処理サーバ（＃１，＃Ｍ，＃Ｎ）２からなるＮ−ＡＣＴ構成を示す。
【００３２】
呼制御装置１は、図３（ａ）に示された割当テーブルに従って、呼信号Ｓを呼ごとに呼処理サーバ（＃１，＃Ｍ，＃Ｎ）２に分配する。呼処理サーバ（＃１，＃Ｍ，＃Ｎ）２は、呼制御装置１から受信した呼信号Ｓから、呼信号Ｓの処理情報である呼情報を生成して自装置内に格納する（「プライマリ」参照）。
【００３３】
呼処理サーバ（＃１）２は、Ｃａｌｌ−ＩＤ「Ａ１」及び「Ａ２」の呼に関する呼信号Ｓを受信して、その呼情報（Ａ１，Ａ２）を自装置内に格納する。また、呼処理サーバ（＃Ｍ）２は、Ｃａｌｌ−ＩＤ「Ｂ１」及び「Ｂ２」の呼に関する呼信号Ｓを受信して、その呼情報（Ｂ１，Ｂ２）を自装置内に格納する。呼処理サーバ（＃Ｎ）２は、Ｃａｌｌ−ＩＤ「Ｃ１」及び「Ｃ２」の呼に関する呼信号Ｓを受信して、その呼情報（Ｃ１，Ｃ２）を自装置内に格納する。
【００３４】
また、呼処理サーバ（＃１，＃Ｍ，＃Ｎ）２は、それぞれ、割当テーブルに従って、呼情報を呼ごとに、自装置に対応するセカンダリサーバである他の呼処理サーバ（＃１，＃Ｍ，＃Ｎ）２にコピーする（「セカンダリ」参照）。つまり、プライマリサーバの呼情報が、呼ごとにセカンダリサーバにバックアップされる。このため、呼処理サーバ（＃１，＃Ｍ，＃Ｎ）２は、セカンダリサーバとして、障害が発生した他の呼処理サーバ（＃１，＃Ｍ，＃Ｎ）２の呼処理を引き継ぐことができる。
【００３５】
例えば、呼処理サーバ（＃１）２は、Ｃａｌｌ−ＩＤ「Ａ１」の呼の呼情報（Ａ１）を呼処理サーバ（＃Ｍ）２に送信することでコピーし、Ｃａｌｌ−ＩＤ「Ａ２」の呼の呼情報（Ａ２）を呼処理サーバ（＃Ｎ）２に送信することでコピーする。このため、呼処理サーバ（＃１）２に障害が発生した場合、呼処理サーバ（＃Ｍ）２は、Ｃａｌｌ−ＩＤ「Ａ１」の呼に関する呼処理を引き継ぎ、呼処理サーバ（＃Ｎ）２は、Ｃａｌｌ−ＩＤ「Ａ２」の呼に関する呼処理を引き継ぐことができる。これにより、障害の呼処理サーバ（＃１）２が行っていた呼処理の負荷が、２台の呼処理サーバ（＃Ｍ，＃Ｎ）２に分散される。
【００３６】
次に、呼制御装置１の構成について説明する。図４は、呼制御装置１の一例を示す構成図である。呼制御装置１は、ＣＰＵ（Central Processing Unit）１０、ＲＯＭ（Read Only Memory）１１、ＲＡＭ（Random Access Memory）１２、ＨＤＤ（Hard Disk Drive）１３、複数の通信ポート１４、及びインターフェース部１５を有する。
【００３７】
ＣＰＵ１０は、互いに信号の入出力ができるように、ＲＯＭ１１、ＲＡＭ１２、ＨＤＤ１３、通信ポート１４、及びインターフェース部１５と、データバス１６を介して接続されている。ＲＯＭ１１は、ＣＰＵ１０を駆動するプログラムが格納されている。ＲＡＭ１２は、ＣＰＵ１０のワーキングメモリとして機能する。
【００３８】
インターフェース部１５は、交換機システム９２ａ，９２ｂ内のバス３と接続され、複数の呼処理サーバ２との通信を処理する。通信ポート１４は、例えばＰＨＹ（Physical layer）チップを含み、基地局９１ａ，９１ｂや他の交換機システム９２ａ，９２ｂとの間で呼信号Ｓを送受信する。なお、呼信号Ｓは、例えばＡＴＭ（Asynchronous Transfer Mode）セルやＩＰ（Internet Protocol）パケットなどの形態で構成されている。
【００３９】
ＨＤＤ１３は、記憶部の一例であり、テーブルの一例である割当テーブル１３０と、呼処理サーバ２に関するサーバ管理テーブル１３１とを記憶する。なお、割当テーブル１３０については、図３（ａ）を参照して述べた通りである。
【００４０】
図５には、サーバ管理テーブル１３１の一例が示されている。サーバ管理テーブル１３１には、呼処理サーバ２のサーバＩＤ（＃１，＃２，・・・，＃Ｍ，＃Ｎ）ごとに、呼処理サーバ２の状態及びＩＰアドレスが登録されている。呼処理サーバ２の状態は、呼処理を実行している運用状態である場合、「運用」を示し、障害が発生した場合、つまり呼処理を停止した状態である場合、「障害」を示す。サーバ管理テーブル１３１は、呼処理サーバ２のヘルスチェックの結果に応じて更新され、プライマリサーバ及びセカンダリサーバの決定や障害通知に用いられる。
【００４１】
ＣＰＵ１０は、ＲＯＭ１１からプログラムを読み込むと、機能として、呼処理割当部１００、呼信号処理部１０１、サーバ監視部１０２、及び障害通知部１０３が形成される。なお、呼制御装置１は、このようにソフトウェアで動作するものに限定されず、ハードウェアのみで動作するものであってもよい。
【００４２】
呼処理割当部１００は、各呼処理サーバ２に呼ごとに呼処理を割り当て、割り当て結果として割当テーブル１３０を生成する。つまり、呼処理割当部１００は、決定部の一例であり、複数の呼処理サーバ２からプライマリサーバ及びセカンダリサーバを呼ごとに決定する。呼処理割当部１００は、決定に従ってＣａｌｌ−ＩＤ、プライマリＩＤ、及びセカンダリＩＤを互いに対応付けて割当テーブル１３０に登録する。
【００４３】
このため、呼処理割当部１００は、図３（ａ）に示されるように、１台のプライマリサーバに対して複数台のセカンダリサーバを割り当てることができる。つまり、１台のプライマリサーバの処理対象の複数の呼が、複数台のセカンダリサーバに割り当てられる。したがって、プライマリサーバに障害が発生しても、そのプライマリサーバに対応する複数台のセカンダリサーバが、プライマリサーバが行っていた呼処理を呼ごとに分担することで、負荷を分散させることができる。これにより、負荷の集中が防止される。
【００４４】
呼処理割当部１００は、例えばラウンドロビン方式に従ってプライマリサーバ及びセカンダリサーバを決定する。つまり、呼処理割当部１００は、呼処理サーバ（＃１，＃２，・・・，＃Ｍ，＃Ｎ）２から所定の順番（例えばサーバＩＤの昇順）でプライマリサーバを選択し、プライマリサーバを除く呼処理サーバ（＃１，＃２，・・・，＃Ｍ，＃Ｎ）２から所定の順番でセカンダリサーバを決定する。これにより、複数の呼処理サーバ２に呼処理の負荷を容易に分散させることができる。
【００４５】
また、呼処理割当部１００は、呼処理サーバ２に障害が発生した場合、割当テーブル１３０を更新する。より具体的には、呼処理割当部１００は、障害の呼処理サーバ２に代えて、その呼処理サーバ２に対応するセカンダリサーバを新たなプライマリサーバに変更し、他の呼処理サーバ２からセカンダリサーバを決定しなおす。
【００４６】
すなわち、呼処理割当部１００は、呼処理サーバ２の障害が検出されたとき、障害のプライマリサーバに対応するセカンダリサーバを新たなプライマリサーバとして決定し、その新たなプライマリサーバに対応するセカンダリサーバを決定する。さらに、呼処理割当部１００は、障害の呼処理サーバ２に代えて、他の呼処理サーバ２を新たなセカンダリサーバとして決定しなおす。これにより、さらなる呼処理サーバ２の障害発生に備えることができる。
【００４７】
呼信号処理部１０１は、通信ポート１４を介して基地局９１ａ，９１ｂや他の交換機システム９２ａ，９２ｂから呼信号Ｓを受信し、インターフェース部１５を介し割当テーブル１３０に従って呼処理サーバ２に転送する。つまり、呼信号処理部１０１は、呼処理割当部１００の決定に従って、呼信号Ｓを呼に応じたプライマリサーバに送信する。図３（ａ）の割当テーブル１３０を例に挙げると、Ｃａｌｌ−ＩＤ「Ａ１」の呼信号Ｓは呼処理サーバ（＃１）２に送信され、Ｃａｌｌ−ＩＤ「Ｂ１」の呼信号Ｓは呼処理サーバ（＃Ｍ）２に送信される。
【００４８】
また、呼信号処理部１０１は、呼処理割当部１００の決定に従って、プライマリサーバから呼に応じたセカンダリサーバに呼信号Ｓの呼情報を送信させる。このため、プライマリサーバからセカンダリサーバに呼情報がコピーされる。図３（ｂ）の場合、Ｃａｌｌ−ＩＤ「Ａ１」の呼情報は、呼処理サーバ（＃１）２から呼処理サーバ（＃Ｍ）２に送信され、Ｃａｌｌ−ＩＤ「Ａ２」の呼情報は、呼処理サーバ（＃１）２から呼処理サーバ（＃Ｎ）２に送信される。
【００４９】
また、Ｃａｌｌ−ＩＤ「Ｂ１」の呼情報は、呼処理サーバ（＃Ｍ）２から呼処理サーバ（＃Ｎ）２に送信され、Ｃａｌｌ−ＩＤ「Ｂ２」の呼情報は、呼処理サーバ（＃Ｍ）２から呼処理サーバ（＃１）２に送信される。さらに、Ｃａｌｌ−ＩＤ「Ｃ１」の呼情報は、呼処理サーバ（＃Ｎ）２から呼処理サーバ（＃１）２に送信され、Ｃａｌｌ−ＩＤ「Ｃ２」の呼情報は、呼処理サーバ（＃Ｎ）２から呼処理サーバ（＃Ｍ）２に送信される。これにより、セカンダリサーバは、プライマリサーバの障害に備えて、そのプライマリサーバと同じ呼情報を保持しておくことができる。
【００５０】
より具体的には、呼信号処理部１０１は、呼信号ＳにセカンダリサーバのＩＰアドレスを付与してプライマリサーバに送信し、そのプライマリサーバにＩＰアドレスに基づいて呼信号Ｓの呼情報をセカンダリサーバに送信させる。以下に呼信号Ｓの送信動作を説明する。
【００５１】
図６には、呼信号Ｓの送信動作の一例が示されている。呼制御装置１は、Ｃａｌｌ−ＩＤ「Ａ１」の呼に関する呼信号Ｓを受信した場合、呼信号処理部１０１により、呼信号Ｓに、セカンダリサーバである呼処理サーバ（＃Ｍ）２のＩＰアドレスを付与して、プライマリサーバである呼処理サーバ（＃１）２に送信する。呼処理サーバ（＃１）２は、呼信号Ｓから呼情報（Ａ１）を生成または更新し、その呼情報を、呼信号Ｓに付与されたＩＰアドレスに基づいて呼処理サーバ（＃Ｍ）２に送信する。
【００５２】
このため、呼制御装置１は、呼処理サーバ（＃１）２から呼情報を取得することなく、呼処理サーバ（＃１）２から呼処理サーバ（＃Ｍ）２に呼情報をコピーさせることができるため、呼制御装置１の処理の負荷が低減される。もっとも、呼制御装置１は、呼処理サーバ（＃１）２から呼情報を取得して、呼処理サーバ（＃Ｍ）２に転送してもよい。なお、呼信号Ｓに付与されるＩＰアドレスはアドレスの一例であり、これに代えて、例えばＭＡＣ（Media Access Control）アドレスが付与されてもよい。
【００５３】
また、呼信号処理部１０１は、割当テーブル１３０を参照することにより呼信号Ｓの送信先のプライマリサーバ及び呼情報の送信先のセカンダリサーバを識別する。このため、呼信号処理部１０１は、呼に応じたプライマリサーバ及びセカンダリサーバを容易に検索することができる。
【００５４】
図７（ａ）には呼信号Ｓ（通常）の構成例が示され、図７（ｂ）には呼信号Ｓ（ＩＰアドレス付与）の構成例が示されている。呼信号Ｓは、スタートライン（リクエストライン）、ヘッダ、及びボディを含む。
【００５５】
スタートラインは、発呼側の無線通信端末９０ａから着呼側の無線通信端末９０ｂへの呼び出しを示す「ＩＮＶＩＴＥ」、及び無線通信端末９０ａ，９０ｂ間の通信終了の要求を示す「ＢＹＥ」などの呼の状態に関するコードが格納されている。
【００５６】
ヘッダには「Ｆｒｏｍ」領域、「Ｔｏ」領域、「Ｖｉａ」領域、「Ｃａｌｌ−ＩＤ」領域、及び「Ｃｓｅｑ」領域などが含まれる。また、呼信号Ｓに付与されたＩＰアドレスは、ヘッダに格納される。
【００５７】
「Ｆｒｏｍ」領域には発呼側の無線通信端末９０ａの識別情報（例えば電話番号）が格納され、「Ｔｏ」領域には着呼側の無線通信端末９０ｂの識別情報（例えば電話番号）が格納される。「Ｖｉａ」領域には、リクエスト信号の呼信号Ｓが経由した通信経路の情報が格納される。レスポンス信号の呼信号Ｓは、「Ｖｉａ」領域の情報が示す通信経路に沿って返信される。
【００５８】
「Ｃａｌｌ−ＩＤ」領域には呼信号ＳのＣａｌｌ−ＩＤが格納される。呼制御装置１及び呼処理サーバ２は、「Ｃａｌｌ−ＩＤ」領域からＣａｌｌ−ＩＤを取得する。
【００５９】
「Ｃｓｅｑ」領域には呼信号Ｓのトランザンクション番号が格納される。なお、呼情報には上記のヘッダの各領域の内容が含まれる。また、ボディには、マルチメディアセッションに関するＳＤＰ（Session Description Protocol）のパラメータなどが格納されている。
【００６０】
再び図４を参照すると、サーバ監視部１０２は、複数の呼処理サーバ２の状態を監視し、監視結果に応じてサーバ管理テーブル１３１を更新する。より具体的には、サーバ監視部１０２は、各呼処理サーバ２のヘルスチェックを行う。ヘルスチェックは、例えば、サーバ監視部１０２から各呼処理サーバ２にチェック信号を送信し、呼処理サーバ２から応答の有無を判定することにより行われる。
【００６１】
サーバ監視部１０２は、応答信号を受信した場合、呼処理サーバ２が正常であると判定し、サーバ管理テーブル１３１の該当サーバＩＤの状態を「運用」とする。一方、応答信号を受信できない場合、サーバ監視部１０２は、サーバ管理テーブル１３１の該当サーバＩＤの状態を「障害」とする。図５の例では、呼処理サーバ（＃２）２の応答信号がないために、サーバＩＤ「＃２」の状態が「障害」となっている。
【００６２】
もっとも、サーバ監視部１０２は、障害に限らず、呼処理サーバ２が呼処理を停止した状態であることを検出してもよい。このような状態としては、例えば、呼処理サーバ２の設置時の初期状態や設定変更時のメンテナンス状態が挙げられる。このように、サーバ監視部１０２は、検出部の一例として、プライマリサーバが呼信号Ｓの処理を停止したことを検出する。
【００６３】
障害通知部１０３は、呼処理サーバ２に障害が発生したとき、他の呼処理サーバ２に障害の発生を通知する。より具体的には、障害通知部１０３は、例えば、周期的にサーバ管理テーブル１３１を参照し、障害状態の呼処理サーバ２のＩＰアドレスを検出する。そして、障害通知部１０３は、検出したＩＰアドレスを含む障害通知を生成して、インターフェース部１５を介し、生成した障害通知を障害の呼処理サーバ２以外の全ての呼処理サーバ２に送信する。これにより、障害のプライマリサーバに対応する全てのセカンダリサーバに障害の発生が通知される。
【００６４】
各呼処理サーバ２は、後述するように、障害通知を受信すると、セカンダリサーバとして、障害通知が示すＩＰアドレスのプライマリサーバの呼処理を引き継ぐ。もっとも、障害通知部１０３は、障害に限らず、プライマリサーバが呼処理を停止した状態であることを通知してもよい。このように、障害通知部１０３は、指示部の一例として、サーバ監視部１０２が呼信号Ｓの処理の停止を検出したとき、セカンダリサーバに、プライマリサーバから送信された呼情報の処理を指示する。セカンダリサーバは、呼制御装置１からの指示に従い、プライマリサーバから送信された呼情報を処理する。
【００６５】
次に、呼処理サーバ２の構成を説明する。図８は、呼処理サーバ２の一例を示す構成図である。呼処理サーバ２は、ＣＰＵ２０、ＲＯＭ２１、ＲＡＭ２２、ＨＤＤ２３、複数の通信ポート２４、及びインターフェース部２５を有する。
【００６６】
ＣＰＵ２０は、互いに信号の入出力ができるように、ＲＯＭ２１、ＲＡＭ２２、ＨＤＤ２３、通信ポート２４、及びインターフェース部２５と、データバス２６を介して接続されている。ＲＯＭ２１は、ＣＰＵ２０を駆動するプログラムが格納されている。ＲＡＭ２２は、ＣＰＵ２０のワーキングメモリとして機能する。
【００６７】
インターフェース部２５は、交換機システム９２ａ，９２ｂ内のバス３と接続され、呼制御装置１との通信を処理する。通信ポート２４は、例えばＰＨＹチップを含み、基地局９１ａ，９１ｂや他の交換機システム９２ａ，９２ｂとの間で呼信号Ｓを送受信する。
【００６８】
ＨＤＤ２３には、第１呼情報データベース（ＤＢ）２３０、第２呼情報データベース（ＤＢ）２３１、及び呼情報管理テーブル２３２が記憶されている。第１呼情報ＤＢ２３０には、プライマリサーバとして呼信号Ｓを処理することで生成した呼情報が呼ごとに格納されており、第２呼情報ＤＢ２３１には、セカンダリサーバとして他のプライマリサーバから受信した呼情報が呼ごとに格納されている。
【００６９】
呼情報管理テーブル２３２には、第２呼情報ＤＢ２３１に格納された呼情報のＣａｌｌ−ＩＤとプライマリサーバの対応関係が登録されている。図９には、呼情報管理テーブル２３２の一例が示されている。本例では、図３（ｂ）の呼処理サーバ（＃Ｍ）２の呼情報管理テーブル２３２が挙げられている。
【００７０】
呼情報管理テーブル２３２は、自装置に対応するプライマリサーバから受信した呼情報を管理するための情報が格納されている。呼情報管理テーブル２３２には、プライマリサーバのＩＰアドレス及び１以上のＣａｌｌ−ＩＤが対応付けられて登録されている。呼処理サーバ２は、プライマリサーバから受信した呼情報からＩＰアドレス及びＣａｌｌ−ＩＤを抽出して呼情報管理テーブル２３２に登録する。
【００７１】
例えば、プライマリサーバである呼処理サーバ（＃１）２のＩＰアドレス「192.168.1.10」に対しては、Ｃａｌｌ−ＩＤ「Ａ１」，「Ａ４」，・・・が登録されている。このため、呼処理サーバ２は、呼処理サーバ（＃１）２に障害が発生した旨の障害通知を受けると、セカンダリサーバとして、呼処理サーバ（＃１）２が処理していたＣａｌｌ−ＩＤ「Ａ１」，「Ａ４」，・・・の呼処理を引き継ぐ。
【００７２】
また、プライマリサーバである呼処理サーバ（＃Ｎ）２のＩＰアドレス「192.168.1.32」に対しては、Ｃａｌｌ−ＩＤ「Ｃ２」，「Ｃ５」，・・・が登録されている。このため、呼処理サーバ２は、呼処理サーバ（＃Ｎ）２に障害が発生した旨の障害通知を受けると、セカンダリサーバとして、呼処理サーバ（＃Ｎ）２が処理していたＣａｌｌ−ＩＤ「Ｃ２」，「Ｃ５」，・・・の呼処理を引き継ぐ。
【００７３】
ＣＰＵ２０は、ＲＯＭ２１からプログラムを読み込むと、機能として、呼処理部２００、呼情報管理部２０１、監視応答部２０２、及び障害通知処理部２０３が形成される。なお、呼処理サーバ２は、このようにソフトウェアで動作するものに限定されず、ハードウェアのみで動作するものであってもよい。
【００７４】
呼処理部２００は、呼制御装置１からインターフェース部２５を介して、呼信号Ｓを受信して処理する。呼処理部２００は、新規の呼の場合、呼信号Ｓに基づいて呼情報を生成して第１呼情報ＤＢ２３０に格納し、既登録の呼の場合、呼信号Ｓに基づいて第１呼情報ＤＢ２３０の呼情報を更新する。なお、呼処理部２００は、呼情報の生成時、呼情報からインスタンスと呼ばれるデータ群を生成し、インスタンスに呼情報の格納アドレスを対応付けておく。
【００７５】
また、呼処理部２００は、呼制御装置１から受信した呼信号Ｓを処理した後、通信ポート２４を介して、基地局９１ａ，９１ｂまたは他の交換機システム９２ａ，９２ｂに呼信号Ｓを送信する。
【００７６】
呼情報管理部２０１は、呼制御装置１から受信した呼信号Ｓに付与されたＩＰアドレスを取得し、取得したＩＰアドレスに基づいて、該当する呼情報をセカンダリサーバに送信する。つまり、呼情報管理部２０１は、呼信号Ｓに付与されたＩＰアドレスを宛先として、インターフェース部２５を介して呼情報を送信することで、呼情報をセカンダリサーバにコピーする。
【００７７】
図６の例の場合、呼情報管理部２０１は、呼信号Ｓから呼処理サーバ（＃Ｍ）２のＩＰアドレスを取得して、呼処理サーバ（＃Ｍ）２に呼情報を送信する。これにより、プライマリサーバである呼処理サーバ（＃１）２の呼処理情報が、呼処理サーバ（＃Ｍ）２にコピーされる。
【００７８】
また、呼情報管理部２０１は、インターフェース部２５を介して、他の呼処理サーバ２から呼情報を受信し、呼情報からＩＰアドレス及びＣａｌｌ−ＩＤを抽出して呼情報管理テーブル２３２に登録する。つまり、呼情報管理部２０１は、プライマリサーバから受信した呼情報に基づき、ＩＰアドレス及びＣａｌｌ−ＩＤを呼情報管理テーブル２３２に登録する。
【００７９】
監視応答部２０２は、呼処理サーバ２に異常がない場合、呼制御装置１のヘルスチェックに応答する。より具体的には、監視応答部２０２は、インターフェース部２５を介して、呼制御装置１からチェック信号を受信し、異常がなければ、呼制御装置１に応答を返す。
【００８０】
障害通知処理部２０３は、プライマリサーバに障害が発生した場合、プライマリサーバからの呼処理の引き継ぎ処理を行う。より具体的には、障害通知処理部２０３は、インターフェース部２５を介して、呼制御装置１から障害通知を受信した場合、呼情報管理テーブル２３２から、障害のプライマリサーバに対応する全てのＣａｌｌ−ＩＤを検索する。
【００８１】
障害通知処理部２０３は、検索された各Ｃａｌｌ−ＩＤの呼情報を第２呼情報ＤＢ２３１から取り出して、第１呼情報ＤＢ２３０に格納する。つまり、障害通知処理部２０３は、障害のプライマリサーバの呼情報を第２呼情報ＤＢ２３１から第１呼情報ＤＢ２３０に移動させる。これにより、呼処理部２００は、障害のプライマリサーバが行っていた呼処理を継続できる。つまり、セカンダリサーバは、呼制御装置１からの指示に従い、プライマリサーバから送信され呼情報を処理する。
【００８２】
また、障害通知処理部２０３は、呼情報管理テーブル２３２から障害のプライマリサーバに関するＣａｌｌ−ＩＤの登録を抹消する。
【００８３】
図１０には、呼処理サーバの障害発生時の動作の一例が示されている。呼制御装置１のサーバ監視部１０２は、呼処理サーバ（＃１）２にチェック信号ＣＨＫを送信し、応答がない場合（「ＮＧ」参照）、呼処理サーバ（＃１）２の障害を検出する。サーバ監視部１０２は、障害の検出結果に応じてサーバ管理テーブル１３１を更新する。
【００８４】
図１１（ａ）は、障害発生時の更新後のサーバ管理テーブル１３１の一例を示す。サーバ監視部１０２は、呼処理サーバ（＃１）２の障害を検出した場合、サーバＩＤ「＃１」の状態を「運用」から「障害」に変更する。
【００８５】
また、呼制御装置１の呼処理割当部１００は、呼処理サーバ（＃１）２の障害の検出に応じて割当テーブル１３０を更新する。図１１（ｂ）には、障害発生時の更新後の割当テーブル１３０の一例を示す。
【００８６】
呼処理割当部１００は、障害の呼処理サーバ（＃１）２の処理対象であったＣａｌｌ−ＩＤ「Ａ１」，「Ａ２」のプライマリＩＤ及びセカンダリＩＤを更新する。呼処理割当部１００は、Ｃａｌｌ−ＩＤ「Ａ１」のプライマリＩＤを「＃１」から「＃Ｍ」に変更し、Ｃａｌｌ−ＩＤ「Ａ２」のプライマリＩＤを「＃１」から「＃Ｎ」に変更する。つまり、呼処理割当部１００は、Ｃａｌｌ−ＩＤ「Ａ１」，「Ａ２」について、セカンダリサーバを新たなプライマリサーバに決定する。
【００８７】
また、呼処理割当部１００は、Ｃａｌｌ−ＩＤ「Ａ１」のセカンダリＩＤを「＃Ｍ」から「＃Ｊ」（Ｊ：正の整数）に変更し、Ｃａｌｌ−ＩＤ「Ａ２」のプライマリＩＤを「＃Ｎ」から「＃Ｊ」に変更する。つまり、呼処理割当部１００は、Ｃａｌｌ−ＩＤ「Ａ１」，「Ａ２」について、呼処理サーバ（＃Ｊ）２（不図示）を新たなセカンダリサーバに決定する。
【００８８】
呼制御装置１の障害通知部１０３は、更新後のサーバ管理テーブル１３１に基づき、呼処理サーバ（＃１）２のＩＰアドレスを含む障害通知ＮＴＦを他の呼処理サーバ（＃Ｍ，＃Ｎ）２に送信する。呼処理サーバ（＃Ｍ，＃Ｎ）２は、障害通知ＮＴＦを受信すると、障害の呼処理サーバ（＃１）２が行っていた呼処理を引き継ぐ。
【００８９】
より具体的には、呼処理サーバ（＃Ｍ）２の呼情報管理部２０１は、Ｃａｌｌ−ＩＤ「Ａ１」の呼情報を第２呼情報ＤＢ２３１から第１呼情報ＤＢ２３０に移動させ、Ｃａｌｌ−ＩＤ「Ａ２」の呼情報を第２呼情報ＤＢ２３１から第１呼情報ＤＢ２３０に移動させる。また、呼情報管理部２０１は、障害通知ＮＴＦに応じて呼情報管理テーブル２３２を更新する。
【００９０】
図１１（ｃ）は、障害発生時の更新後の呼情報管理テーブル２３２の一例である。呼情報管理部２０１は、呼情報管理テーブル２３２から、障害通知ＮＴＦが示す障害の呼処理サーバ（＃１）２のＩＰアドレスの登録を抹消する。
【００９１】
次に、呼制御装置１及び呼処理サーバ２の動作をフローチャートにより説明する。図１２は、呼制御装置１の呼信号Ｓの処理の一例を示すフローチャートである。なお、本処理は、例えば周期的に繰り返し実行される。
【００９２】
まず、呼処理割当部１００は、基地局９１ａ，９１ｂ及び他の交換機システム９２ａ，９２ｂから呼信号Ｓを受信したか否かを判定する（ステップＳｔ１）。呼信号Ｓを受信していない場合（ステップＳｔ１のＮｏ）、処理は終了する。
【００９３】
呼処理割当部１００は、呼信号Ｓを受信している場合（ステップＳｔ１のＹｅｓ）、受信した呼信号Ｓが新規の呼に関するものであるか否かを判定する（ステップＳｔ２）。より具体的には、呼処理割当部１００は、例えば、呼信号Ｓに含まれるスタートライン（図７（ａ）参照）が「ＩＮＶＩＴＥ」である場合、新規の呼に関する呼信号Ｓであると判定する。なお、呼処理割当部１００は、受信した呼信号ＳのＣａｌｌ−ＩＤを割当テーブル１３０から検索し、該当するＣａｌｌ−ＩＤが無い場合に新規の呼に関する呼信号Ｓであると判定してもよい。
【００９４】
新規の呼に関する呼信号Ｓである場合（ステップＳｔ２のＹｅｓ）、呼処理割当部１００は、例えばラウンドロビン方式に従ってプライマリサーバを決定する（ステップＳｔ３）。次に、呼処理割当部１００は、例えばラウンドロビン方式に従ってセカンダリサーバを決定する（ステップＳｔ４）。
【００９５】
次に、呼処理割当部１００は、決定されたプライマリサーバ及びセカンダリサーバに応じたプライマリＩＤ及びセカンダリＩＤを割当テーブル１３０に登録する（ステップＳｔ５）。次に、呼信号処理部１０１は、図７（ｂ）に示されるように、決定されたセカンダリサーバのＩＰアドレスを呼信号Ｓに付与する（ステップＳｔ６）。次に、呼信号処理部１０１は、ＩＰアドレスが付与された呼信号Ｓを、決定されたプライマリサーバに送信して（ステップＳｔ７）、処理を終了する。
【００９６】
一方、新規の呼に関する呼信号Ｓではない場合（ステップＳｔ２のＮｏ）、呼処理割当部１００は、割当テーブル１３０から呼信号ＳのＣａｌｌ−ＩＤに応じたプライマリＩＤ及びセカンダリＩＤを検索する（ステップＳｔ８）。次に、呼信号処理部１０１は、検索したセカンダリＩＤが示すセカンダリサーバのＩＰアドレスを呼信号Ｓに付与する（ステップＳｔ９）。次に、呼信号処理部１０１は、ＩＰアドレスが付与された呼信号Ｓを、検索したプライマリＩＤが示すプライマリサーバに送信する（ステップＳｔ１０）。
【００９７】
次に、呼処理割当部１００は、受信した呼信号Ｓに基づいて、通信が終了するか否かを判定する（ステップＳｔ１１）。より具体的には、呼処理割当部１００は、例えば、呼信号Ｓに含まれるスタートライン（図７（ａ）参照）が「２００」である場合、通信が終了すると判定する。
【００９８】
通信が継続すると判定された場合（ステップＳｔ１１のＮｏ）、処理は終了する。また、通信が終了すると判定された場合（ステップＳｔ１１のＹｅｓ）、呼処理割当部１００は、割当テーブル１３０から呼信号ＳのＣａｌｌ−ＩＤに応じたプライマリＩＤ及びセカンダリＩＤの登録を抹消して（ステップＳｔ１２）、処理を終了する。このようにして、呼制御装置１は呼信号Ｓを処理する。
【００９９】
図１３は、プライマリサーバの呼信号の処理の一例を示すフローチャートである。なお、本処理は、例えば周期的に繰り返し実行される。
【０１００】
まず、呼処理部２００は、呼制御装置１から呼信号Ｓを受信したか否かを判定する（ステップＳｔ２１）。呼信号Ｓを受信していない場合（ステップＳｔ２１のＮｏ）、処理は終了する。
【０１０１】
呼処理部２００は、呼信号Ｓを受信している場合（ステップＳｔ２１のＹｅｓ）、受信した呼信号Ｓが新規の呼に関するものであるか否かを判定する（ステップＳｔ２２）。より具体的には、呼処理部２００は、例えば、呼信号Ｓに含まれるスタートライン（図７（ａ）参照）が「ＩＮＶＩＴＥ」である場合、新規の呼に関する呼信号Ｓであると判定する。なお、呼処理部２００は、受信した呼信号ＳのＣａｌｌ−ＩＤを第１呼情報ＤＢ２３０から検索し、該当するＣａｌｌ−ＩＤが無い場合に新規の呼に関する呼信号Ｓであると判定してもよい。
【０１０２】
新規の呼に関する呼信号Ｓである場合（ステップＳｔ２２のＹｅｓ）、呼処理部２００は、受信した呼信号Ｓから呼情報を生成する（ステップＳｔ２３）。生成された呼情報は、第１呼情報ＤＢ２３０に格納される。このとき、呼処理部２００は、呼情報からインスタンスを生成し、インスタンスに呼情報のアドレスを対応付ける。
【０１０３】
次に、呼処理部２００は、呼情報に基づいて呼処理を行う（ステップＳｔ２４）。次に、呼処理部２００は、通信ポート２４を介して呼信号Ｓを基地局９１ａ，９１ｂまたは他の交換機システム９２ａ，９２ｂに送信する（ステップＳｔ２５）。
【０１０４】
次に、呼情報管理部２０１は、生成した呼情報を自装置に対応するセカンダリサーバにコピーして（ステップＳｔ２６）、処理を終了する。より具体的には、呼情報管理部２０１は、呼信号Ｓに付与されたＩＰアドレスを宛先として呼情報を送信する。
【０１０５】
一方、新規の呼に関する呼信号Ｓではない場合（ステップＳｔ２２のＮｏ）、呼処理部２００は、呼情報に基づいて呼処理を行う（ステップＳｔ２７）。このとき、呼処理部２００は、該当するインスタンスを特定して、第１呼情報ＤＢ２３０内の呼情報にアクセスする。次に、呼処理部２００は、呼信号Ｓに基づいて呼情報を更新する（ステップＳｔ２８）。次に、呼処理部２００は、通信ポート２４を介して呼信号Ｓを基地局９１ａ，９１ｂまたは他の交換機システム９２ａ，９２ｂに送信する（ステップＳｔ２９）。
【０１０６】
次に、呼情報管理部２０１は、受信した呼信号Ｓに基づいて、通信が終了するか否かを判定する（ステップＳｔ３０）。より具体的には呼情報管理部２０１は、例えば、呼信号Ｓに含まれるスタートライン（図７（ａ）参照）が「２００」である場合、通信が終了すると判定する。
【０１０７】
呼情報管理部２０１は、通信が継続すると判定された場合（ステップＳｔ３０のＮｏ）、該当する呼情報を自装置に対応するセカンダリサーバにコピーして（ステップＳｔ３１）、処理を終了する。また、呼情報管理部２０１は、通信が終了すると判定された場合（ステップＳｔ３０のＹｅｓ）、自装置に対応するセカンダリサーバに呼情報の削除を要求する（ステップＳｔ３２）。次に、呼情報管理部２０１は、第１呼情報ＤＢ２３０から該当する呼情報を削除し（ステップＳｔ３３）、処理を終了する。このようにして、プライマリサーバは呼信号Ｓの処理を行う。
【０１０８】
図１４は、セカンダリサーバの呼情報の処理の一例を示すフローチャートである。なお、本処理は、例えば周期的に繰り返し実行される。
【０１０９】
まず、呼情報管理部２０１は、自装置に対応するプライマリサーバから呼情報を受信したか否かを判定する（ステップＳｔ４１）。呼情報管理部２０１は、呼情報を受信した場合（ステップＳｔ４１のＹｅｓ）、受信した呼情報が新規の呼に関するものであるか否かを判定する（ステップＳｔ４２）。呼情報管理部２０１は、受信した呼情報が新規の呼に関するものではない場合（ステップＳｔ４２のＮｏ）、第２呼情報ＤＢ２３１に格納された当該呼情報を更新して（ステップＳｔ４８）、処理を終了する。
【０１１０】
また、受信した呼情報が新規の呼に関するものである場合（ステップＳｔ４３のＹｅｓ）、呼情報管理部２０１は、呼情報を第２呼情報ＤＢ２３１に格納する（ステップＳｔ４３）。次に、呼情報管理部２０１は、該当するＣａｌｌ−ＩＤを送信元のプライマリサーバのＩＰアドレスに対応付けて呼情報管理テーブル２３２に登録して（ステップＳｔ４４）、処理を終了する。
【０１１１】
一方、呼情報管理部２０１は、呼情報を受信していない場合（ステップＳｔ４１のＮｏ）、プライマリサーバから呼情報の削除を要求されたか否かを判定する（ステップＳｔ４５）。要求が無い場合（ステップＳｔ４５のＮｏ）、処理は終了する。要求が有る場合（ステップＳｔ４５のＹｅｓ）、呼情報管理部２０１は、第１呼情報ＤＢ２３０から呼情報を削除する（ステップＳｔ４６）。次に、呼情報管理部２０１は、呼情報管理テーブル２３２から、該当するＣａｌｌ−ＩＤの登録を抹消し（ステップＳｔ４７）、処理を終了する。このようにして、セカンダリサーバは呼情報を処理する。
【０１１２】
図１５は、呼制御装置１における呼処理サーバの監視処理の一例を示すフローチャートである。なお、本処理は、例えば周期的に繰り返し実行される。
【０１１３】
まず、サーバ監視部１０２は、呼処理サーバ２にチェック信号ＣＨＫを送信する（ステップＳｔ５１）。チェック信号ＣＨＫの送信先の呼処理サーバ２は、例えばラウンドロビン方式に従って選択される。
【０１１４】
次に、サーバ監視部１０２は、送信先の呼処理サーバ２からの応答の有無を判定する（ステップＳｔ５２）。サーバ監視部１０２は、例えば、所定時間内に呼処理サーバ２から応答信号が受信されない場合、応答がないと判定する。
【０１１５】
サーバ監視部１０２は、応答があった場合（ステップＳｔ５２のＹｅｓ）、処理を終了する。また、サーバ監視部１０２は、応答がない場合（ステップＳｔ５２のＮｏ）、送信先の呼処理サーバ２において障害が発生したことを検出する（ステップＳｔ５３）。次に、サーバ監視部１０２は、図１１（ａ）に例示されるように、検出結果に応じてサーバ管理テーブル１３１を更新する（ステップＳｔ５４）。
【０１１６】
次に、障害通知部１０３は、障害発生が検出された呼処理サーバ２のＩＰアドレスを含む障害通知を生成して他の各呼処理サーバ２に送信する（ステップＳｔ５５）。次に、呼処理割当部１００は、図１１（ｂ）に例示されるように、割当テーブル１３０を更新し（ステップＳｔ５６）、処理を終了する。このようにして、呼制御装置１は、呼処理サーバ２の監視処理を行う。
【０１１７】
図１６は、呼処理サーバ２における障害通知ＮＴＦの受信処理の一例を示すフローチャートである。なお、本処理は、例えば周期的に繰り返し実行される。
【０１１８】
まず、障害通知処理部２０３は、障害通知ＮＴＦを受信したか否かを判定する（ステップＳｔ６１）。障害通知ＮＴＦが受信されていない場合（ステップＳｔ６１のＮｏ）、処理は終了する。障害通知処理部２０３は、障害通知ＮＴＦを受信した場合（ステップＳｔ６１のＹｅｓ）、呼情報管理テーブル２３２から、障害通知ＮＴＦが示すＩＰアドレスに該当する全てのＣａｌｌ−ＩＤを検索する（ステップＳｔ６２）。
【０１１９】
次に、障害通知処理部２０３は、検索された全てのＣａｌｌ−ＩＤの呼情報を第１呼情報ＤＢ２３０から第２呼情報ＤＢ２３１へ移動させる（ステップＳｔ６３）。より具体的には、障害通知処理部２０３は、例えば、該当する呼情報を第１呼情報ＤＢ２３０から第２呼情報ＤＢ２３１にコピーし、コピー元の呼情報を第１呼情報ＤＢ２３０から削除する。また、障害通知処理部２０３は、該当する呼情報に基づいてインスタンスを生成する。
【０１２０】
次に、呼情報管理部２０１は、呼情報管理テーブル２３２から、該当するＣａｌｌ−ＩＤの登録を抹消し（ステップＳｔ６４）、処理を終了する。このようにして、呼処理サーバ２は、障害通知ＮＴＦの受信処理を行う。
【０１２１】
次に、交換機システム９２ａ，９２ｂの動作をシーケンス図により説明する。図１７及び図１８は、交換機システム９２ａにおける呼処理の一例を示すシーケンス図である。本例では、発呼側の交換機システム９２ａが、発呼側の基地局９１ａと着呼側の交換機システム９２ｂの間で呼信号Ｓを送受信する場合の動作を挙げるが、着呼側の交換機システム９２ｂについても同様の動作が行われる。また、本例では、図３（ａ）及び図３（ｂ）と同様の条件下でＣａｌｌ−ＩＤ「Ａ１」の呼に関する呼信号Ｓを処理する場合を挙げる。
【０１２２】
図１７及び図１８は、発呼から通信終了までの一連のシーケンスを示す。まず、図１７を参照して説明する。
【０１２３】
発呼側の基地局９１ａは、スタートライン（図７（ａ）参照）に「ＩＮＶＩＴＥ」が格納された呼信号Ｓを呼制御装置１に送信する。呼信号ＳのＣａｌｌ−ＩＤは、一例として「Ａ１」とする。
【０１２４】
次に、呼制御装置１の呼処理割当部１００は、複数の呼処理サーバ２からＣａｌｌ−ＩＤ「Ａ１」についてのプライマリサーバ及びセカンダリサーバを決定する（符号ＳＱ１参照）。プライマリサーバ及びセカンダリサーバの決定は、複数の呼処理サーバ２間で負荷が容易に分散されるように、例えばラウンドロビン方式に従って行われる。本例では、呼処理サーバ（＃１）２がプライマリサーバに決定され、呼処理サーバ（＃Ｍ）２がセカンダリサーバに決定される。
【０１２５】
次に、呼処理割当部１００は、図３（ａ）に示されるように、決定したプライマリサーバのプライマリＩＤ（「＃１」）及び決定したセカンダリサーバのセカンダリＩＤ（「＃Ｍ」）をＣａｌｌ−ＩＤ「Ａ１」に対応付けて割当テーブル１３０に登録する（符号ＳＱ２参照）。つまり、呼処理割当部１００は、決定に従ってＣａｌｌ−ＩＤ「Ａ１」、プライマリＩＤ、及びセカンダリＩＤを互いに対応付けて割当テーブル１３０に登録する。
【０１２６】
次に、呼信号処理部１０１は、受信した呼信号Ｓに、決定したセカンダリサーバのＩＰアドレス「192.168.1.31」を付与して、プライマリサーバである呼処理サーバ（＃１）２に送信する。次に、呼信号処理部１０１は、スタートラインに「１００ｔｒｙｉｎｇ」が格納された呼信号Ｓを基地局９１ａに送信する。
【０１２７】
呼処理サーバ（＃１）２の呼処理部２００は、呼制御装置１から受信した呼信号Ｓから呼情報を生成する（符号ＳＱ３参照）。生成された呼情報は、第１呼情報ＤＢ２３０に格納される。また、呼処理部２００は、呼情報からインスタンスを生成する。
【０１２８】
次に、呼処理部２００は、受信した呼信号Ｓを着呼側の交換機システム９２ｂに送信する。次に、呼情報管理部２０１は、呼信号Ｓに付与されたＩＰアドレスを宛先として呼情報を送信する。つまり、呼情報管理部２０１は、呼情報をセカンダリサーバである呼処理サーバ（＃Ｍ）２にコピーする。セカンダリサーバである呼処理サーバ（＃Ｍ）２において、呼情報管理部２０１は、受信した呼情報を第２呼情報ＤＢ２３１に格納し、呼情報管理テーブルにＣａｌｌ−ＩＤ「Ａ１」を、呼情報の送信元（プライマリサーバ）のＩＰアドレスに対応付けて登録する（符号ＳＱ４参照）。
【０１２９】
このように、呼信号処理部１０１は、呼処理割当部１００の決定に従って、呼信号Ｓを呼に応じたプライマリサーバに送信し、プライマリサーバから呼に応じたセカンダリサーバに呼情報を送信させる。これにより、セカンダリサーバは、プライマリサーバの障害に備えて、そのプライマリサーバと同じ呼情報を保持しておくことができる。
【０１３０】
また、呼信号処理部１０１は、呼信号ＳにセカンダリサーバのＩＰアドレスを付与してプライマリサーバに送信し、そのプライマリサーバにＩＰアドレスに基づいて呼情報をセカンダリサーバに送信させる。このため、呼制御装置１は、プライマリサーバから呼情報を取得することなく、プライマリサーバからセカンダリサーバに呼情報をコピーさせることができるため、呼制御装置１の処理の負荷が低減される。
【０１３１】
次に、着呼側の交換機システム９２ｂは、スタートラインに「２００」が格納された呼信号Ｓを呼制御装置１に送信する。呼処理割当部１００は、呼信号ＳのＣａｌｌ−ＩＤ「Ａ１」に基づいて、割当テーブル１３０からプライマリＩＤ及びセカンダリＩＤを検索する（符号ＳＱ５参照）。次に、呼信号処理部１０１は、受信した呼信号Ｓに、検索されたセカンダリＩＤに対応するセカンダリサーバのＩＰアドレス「192.168.1.31」を付与して、検索されたプライマリＩＤに対応するプライマリサーバである呼処理サーバ（＃１）２に送信する。
【０１３２】
このように、呼信号処理部１０１は、割当テーブル１３０を参照することにより呼信号Ｓの送信先のプライマリサーバ及び呼情報の送信先のセカンダリサーバを識別する。このため、呼信号処理部１０１は、Ｃａｌｌ−ＩＤ「Ａ１」の呼に応じたプライマリサーバ及びセカンダリサーバを容易に検索することができる。
【０１３３】
プライマリサーバである呼処理サーバ（＃１）２では、呼処理部２００が、受信した呼信号Ｓに基づいて、Ｃａｌｌ−ＩＤ「Ａ１」に応じた呼情報を更新する（符号ＳＱ６参照）。次に、呼処理部２００は、受信した呼信号Ｓを発呼側の基地局９１ａに送信する。次に、呼情報管理部２０１は、呼信号Ｓに付与されたＩＰアドレスを宛先として、更新後の呼情報を送信する。つまり、呼情報管理部２０１は、更新後の呼情報をセカンダリサーバである呼処理サーバ（＃Ｍ）２にコピーする。
【０１３４】
セカンダリサーバである呼処理サーバ（＃Ｍ）２では、呼情報管理部２０１が、受信した呼情報に基づいて、Ｃａｌｌ−ＩＤ「Ａ１」に応じた呼情報を更新する（符号ＳＱ７参照）。このため、セカンダリサーバに格納された呼情報は、最新の状態に維持される。
【０１３５】
次に、発呼側の基地局９１ａは、スタートラインに「ＡＣＫ」が格納された呼信号Ｓを呼制御装置１に送信する。呼処理割当部１００は、呼信号ＳのＣａｌｌ−ＩＤ「Ａ１」に基づいて、割当テーブル１３０からプライマリＩＤ及びセカンダリＩＤを検索する（符号ＳＱ８参照）。次に、呼信号処理部１０１は、受信した呼信号Ｓに、検索されたセカンダリＩＤに対応するセカンダリサーバのＩＰアドレス「192.168.1.31」を付与して、検索されたプライマリＩＤに対応するプライマリサーバである呼処理サーバ（＃１）２に送信する。
【０１３６】
呼処理サーバ（＃１）２では、呼処理部２００が、受信した呼信号Ｓに基づいて、Ｃａｌｌ−ＩＤ「Ａ１」に応じた呼情報を更新する（符号ＳＱ９参照）。次に、呼処理部２００は、受信した呼信号Ｓを着呼側の交換機システム９２ｂに送信する。次に、呼情報管理部２０１は、呼信号Ｓに付与されたＩＰアドレスを宛先として、更新後の呼情報を送信する。つまり、呼情報管理部２０１は、更新後の呼情報をセカンダリサーバである呼処理サーバ（＃Ｍ）２にコピーする。
【０１３７】
セカンダリサーバである呼処理サーバ（＃Ｍ）２では、呼情報管理部２０１が、受信した呼情報に基づいて、Ｃａｌｌ−ＩＤ「Ａ１」に応じた呼情報を更新する（符号ＳＱ１０参照）。ここまでのシーケンスによって、発呼側の無線通信端末９０ａと着呼側の無線通信端末９０ｂの間で通信（通話）が開始される。
【０１３８】
次に、図１８を参照して説明する。図１８には、通信終了の要求（「ＢＹＥ」）が行われた場合のシーケンスが示されている。
【０１３９】
発呼側の基地局９１ａは、スタートラインに「ＢＹＥ」が格納された呼信号Ｓを呼制御装置１に送信する。呼処理割当部１００は、呼信号ＳのＣａｌｌ−ＩＤ「Ａ１」に基づいて、割当テーブル１３０からプライマリＩＤ及びセカンダリＩＤを検索する（符号ＳＱ１１参照）。次に、呼信号処理部１０１は、受信した呼信号Ｓに、検索されたセカンダリＩＤに対応するセカンダリサーバのＩＰアドレス「192.168.1.31」を付与して、検索されたプライマリＩＤに対応するプライマリサーバである呼処理サーバ（＃１）２に送信する。
【０１４０】
呼処理サーバ（＃１）２では、呼処理部２００が、受信した呼信号Ｓに基づいて、Ｃａｌｌ−ＩＤ「Ａ１」に応じた呼情報を更新する（符号ＳＱ１２参照）。次に、呼処理部２００は、受信した呼信号Ｓを着呼側の交換機システム９２ｂに送信する。次に、呼情報管理部２０１は、呼信号Ｓに付与されたＩＰアドレスを宛先として、更新後の呼情報を送信する。つまり、呼情報管理部２０１は、更新後の呼情報をセカンダリサーバである呼処理サーバ（＃Ｍ）２にコピーする。
【０１４１】
セカンダリサーバである呼処理サーバ（＃Ｍ）２では、呼情報管理部２０１が、受信した呼情報に基づいて、Ｃａｌｌ−ＩＤ「Ａ１」に応じた呼情報を更新する（符号ＳＱ１３参照）。
【０１４２】
次に、着呼側の交換機システム９２ｂは、スタートラインに「２００」が格納された呼信号Ｓを呼制御装置１に送信する。呼処理割当部１００は、呼信号ＳのＣａｌｌ−ＩＤ「Ａ１」に基づいて、割当テーブル１３０からプライマリＩＤ及びセカンダリＩＤを検索する（符号ＳＱ１４参照）。次に、呼信号処理部１０１は、受信した呼信号Ｓに、検索されたセカンダリＩＤに対応するセカンダリサーバのＩＰアドレス「192.168.1.31」を付与して、検索されたプライマリＩＤに対応するプライマリサーバである呼処理サーバ（＃１）２に送信する。
【０１４３】
次に、呼処理割当部１００は、通信終了に伴い、割当テーブル１３０からプライマリＩＤ及びセカンダリＩＤの登録を抹消する（符号ＳＱ１６参照）。これにより、割当テーブル１３０からＣａｌｌ−ＩＤ「Ａ１」に関する登録が抹消される。
【０１４４】
プライマリサーバである呼処理サーバ（＃１）２では、呼処理部２００が、受信した呼信号Ｓに基づいて、Ｃａｌｌ−ＩＤ「Ａ１」に応じた呼情報を更新する（符号ＳＱ１５参照）。次に、呼処理部２００は、受信した呼信号Ｓを発呼側の基地局９１ａに送信する。次に、呼情報管理部２０１は、呼信号Ｓに付与されたＩＰアドレスを宛先として、呼情報の削除要求を送信する。つまり、呼情報管理部２０１は、通信終了に伴って、セカンダリサーバである呼処理サーバ（＃Ｍ）２に呼情報の削除を要求する。次に、呼情報管理部２０１は、第１呼情報ＤＢ２３０から呼情報を削除する（符号ＳＱ１７参照）。
【０１４５】
セカンダリサーバである呼処理サーバ（＃Ｍ）２では、呼情報管理部２０１が、呼情報の削除要求に応じて、第２呼情報ＤＢ２３１から呼情報を削除する（符号ＳＱ１８参照）。次に、呼情報管理部２０１は、呼情報管理テーブル２３２からＣａｌｌ−ＩＤ「Ａ１」の登録を抹消する（符号ＳＱ１９参照）。このようにして、交換機システム９２ａにおける呼処理のシーケンスは実行される。
【０１４６】
次に、上述したシーケンスにおいて、プライマリサーバである呼処理サーバ（＃１）２に障害が発生した場合の処理について説明する。
【０１４７】
図１９は、障害発生時の交換機システム９２ａにおける呼処理の一例を示すシーケンス図である。本例では、プライマリサーバが呼信号Ｓの処理を停止する場合の一例として障害の発生を挙げるが、保守などの他の要因により呼信号Ｓの処理が停止する場合も本例と同様のシーケンスが実行される。
【０１４８】
呼処理サーバ（＃１）２において障害が発生する（符号ＳＱ２１参照）。なお、障害は、図１７のシーケンスにおいて、スタートラインに「２００」が格納された呼信号Ｓが呼処理サーバ（＃１）２から送信され、さらに、呼情報が呼処理サーバ（＃１）２から呼処理サーバ（＃Ｍ）２に送信された後に発生したものとする。
【０１４９】
呼制御装置１のサーバ監視部１０２は、呼処理サーバ（＃１）２にチェック信号ＣＨＫを送信する。しかし、呼処理サーバ（＃１）２は、障害状態であるために応答できないので、サーバ監視部１０２は、呼処理サーバ（＃１）２の障害を検出する（符号ＳＱ２２参照）。これにより、呼処理サーバ（＃１）２への呼信号Ｓの送信は停止する。
【０１５０】
次に、サーバ監視部１０２は、図１１（ａ）に示されるようにサーバ管理テーブル１３１を更新し、障害の呼処理サーバ（＃１）２のＩＰアドレス「192.168.1.10」を含む障害通知ＮＴＦを他の呼処理サーバ（＃Ｍ，＃Ｎ）２に送信する。次に、呼処理割当部１００は、図１１（ｂ）に示されるように割当テーブル１３０を更新する（符号ＳＱ２３参照）。
【０１５１】
より具体的には、呼処理割当部１００は、Ｃａｌｌ−ＩＤ「Ａ１」について、障害の呼処理サーバ（＃１）２に対応するセカンダリサーバである呼処理サーバ（＃Ｍ）２を新たなプライマリサーバとして決定する。また、呼処理割当部１００は、その新たなプライマリサーバに対応するセカンダリサーバとして、他の呼処理サーバ（＃Ｊ）２を選択する。これにより、さらなる呼処理サーバ２の障害発生に備えることができる。
【０１５２】
呼処理サーバ（＃Ｍ，＃Ｎ）２の障害通知処理部２０３は、障害通知ＮＴＦを受信すると、呼情報管理テーブル２３２から、障害通知ＮＴＦが示すＩＰアドレスに対応する全てのＣａｌｌ−ＩＤを検索する（符号ＳＱ２４，ＳＱ２５参照）。検索されたＣａｌｌ−ＩＤには「Ａ１」が含まれる（図９参照）。
【０１５３】
次に、障害通知処理部２０３は、検索されたＣａｌｌ−ＩＤの呼情報を第２呼情報ＤＢ２３１から第１呼情報ＤＢ２３０に移動させる（符号ＳＱ２６，ＳＱ２７参照）。これにより、呼処理サーバ（＃Ｍ）２では、Ｃａｌｌ−ＩＤ「Ａ１」の呼情報が第１呼情報ＤＢ２３０に格納され、呼処理サーバ（＃Ｎ）２では、Ｃａｌｌ−ＩＤ「Ａ２」の呼情報が第１呼情報ＤＢ２３０に格納される。また、呼情報管理部２０１は、Ｃａｌｌ−ＩＤ「Ａ１」，「Ａ２」の呼情報に基づいてインスタンスを生成する。
【０１５４】
次に、障害通知処理部２０３は、図１１（ｃ）に示されるように呼情報管理テーブル２３２を更新する（符号ＳＱ２８，ＳＱ２９参照）。より具体的には、呼情報管理テーブル２３２から、障害通知ＮＴＦが示すＩＰアドレス「192.168.1.10」の登録が抹消される。
【０１５５】
以上のシーケンスにより、Ｃａｌｌ−ＩＤ「Ａ１」の呼について、プライマリサーバが呼処理サーバ（＃１）２から呼処理サーバ（＃Ｍ）２に切り替えられ、セカンダリサーバが呼処理サーバ（＃Ｍ）２から呼処理サーバ（＃Ｊ）２に切り替えられる。また、Ｃａｌｌ−ＩＤ「Ａ２」の呼について、プライマリサーバが呼処理サーバ（＃１）２から呼処理サーバ（＃Ｎ）２に切り替えられ、セカンダリサーバが呼処理サーバ（＃Ｎ）２から呼処理サーバ（＃Ｊ）２に切り替えられる。このため、各Ｃａｌｌ−ＩＤ「Ａ１」，「Ａ２」の呼信号Ｓは、以下のシーケンスで処理される。
【０１５６】
発呼側の基地局９１ａは、スタートラインに「ＡＣＫ」が格納された呼信号Ｓ（Ｃａｌｌ−ＩＤ「Ａ１」）を呼制御装置１に送信する。呼処理割当部１００は、呼信号ＳのＣａｌｌ−ＩＤ「Ａ１」に基づいて、割当テーブル１３０からプライマリＩＤ及びセカンダリＩＤを検索する（符号ＳＱ３０参照）。これにより、プライマリＩＤ「＃Ｍ」及びセカンダリＩＤ「＃Ｊ」が検索される。
【０１５７】
次に、呼信号処理部１０１は、受信した呼信号Ｓに、セカンダリサーバである呼処理サーバ（＃Ｊ）２のＩＰアドレスを付与して、プライマリサーバである呼処理サーバ（＃Ｍ）２に送信する。
【０１５８】
呼処理サーバ（＃Ｍ）２では、呼処理部２００が、受信した呼信号Ｓに基づいて、Ｃａｌｌ−ＩＤ「Ａ１」に応じた呼情報を更新する（符号ＳＱ３１参照）。次に、呼処理部２００は、受信した呼信号Ｓを着呼側の交換機システム９２ｂに送信する。次に、呼情報管理部２０１は、呼信号Ｓに付与されたＩＰアドレスを宛先として、更新後の呼情報を送信する。つまり、呼情報管理部２０１は、更新後の呼情報をセカンダリサーバである呼処理サーバ（＃Ｊ）２にコピーする。なお、Ｃａｌｌ−ＩＤ「Ａ１」に関し、以降の呼信号Ｓも同様のシーケンスで処理される。
【０１５９】
また、発呼側の基地局９１ａは、スタートラインに「ＡＣＫ」が格納された呼信号Ｓ（Ｃａｌｌ−ＩＤ「Ａ２」）を呼制御装置１に送信する。呼処理割当部１００は、呼信号ＳのＣａｌｌ−ＩＤ「Ａ２」に基づいて、割当テーブル１３０からプライマリＩＤ及びセカンダリＩＤを検索する（符号ＳＱ３２参照）。これにより、プライマリＩＤ「＃Ｎ」及びセカンダリＩＤ「＃Ｊ」が検索される。
【０１６０】
呼処理サーバ（＃Ｎ）２では、呼処理部２００が、受信した呼信号Ｓに基づいて、Ｃａｌｌ−ＩＤ「Ａ２」に応じた呼情報を更新する（符号ＳＱ３３参照）。次に、呼処理部２００は、受信した呼信号Ｓを着呼側の交換機システム９２ｂに送信する。次に、呼情報管理部２０１は、呼信号Ｓに付与されたＩＰアドレスを宛先として、更新後の呼情報を送信する。つまり、呼情報管理部２０１は、更新後の呼情報をセカンダリサーバである呼処理サーバ（＃Ｊ）２にコピーする。なお、Ｃａｌｌ−ＩＤ「Ａ２」に関し、以降の呼信号Ｓも同様のシーケンスで処理される。
【０１６１】
このように、Ｃａｌｌ−ＩＤ「Ａ１」，「Ａ２」の呼信号Ｓを処理する呼処理サーバ（＃１）２に障害が発生した場合、呼処理サーバ（＃Ｍ）２がＣａｌｌ−ＩＤ「Ａ１」の呼信号Ｓを処理し、呼処理サーバ（＃Ｎ）２がＣａｌｌ−ＩＤ「Ａ２」の呼信号Ｓを処理する。つまり、障害の呼処理サーバ（＃１）２が行っていた呼処理は、２台の呼処理サーバ（＃Ｍ，＃Ｎ）２に引き継がれる。このため、負荷の集中が防止される。
【０１６２】
これまで述べたように、実施例に係る呼制御装置１は、呼処理割当部１００と、呼信号処理部１０１と、サーバ監視部１０２と、障害通知部１０３とを有する。呼処理割当部１００は、複数の呼処理サーバ２から、呼に関する呼信号Ｓを処理するプライマリサーバと、プライマリサーバが呼信号Ｓの処理を停止した場合に呼信号Ｓを処理するセカンダリサーバとを、呼ごとに決定する。
【０１６３】
呼信号処理部１０１は、呼処理割当部１００の決定に従って、呼信号Ｓを呼に応じたプライマリサーバに送信し、プライマリサーバから呼に応じたセカンダリサーバに呼信号Ｓの呼情報を送信させる。サーバ監視部１０２は、プライマリサーバが呼信号Ｓの処理を停止したことを検出する。障害通知部１０３は、サーバ監視部１０２が呼信号Ｓの処理の停止を検出したとき、セカンダリサーバに呼情報の処理を指示する。
【０１６４】
上記の構成によると、呼処理割当部１００は、プライマリサーバ及びセカンダリサーバを呼ごとに決定するため、１台のプライマリサーバに対して複数台のセカンダリサーバを割り当てることができる。つまり、１台のプライマリサーバの処理対象の複数の呼が、複数台のセカンダリサーバに割り当てられる。
【０１６５】
また、呼信号処理部１０１は、呼処理割当部１００の決定に従って、呼に応じ、呼信号Ｓをプライマリサーバに送信し、そのプライマリサーバの呼情報をセカンダリサーバに送信させる。そして、障害通知部１０３は、サーバ監視部１０２が呼信号Ｓの処理の停止を検出したとき、セカンダリサーバに呼情報の処理を指示する。このため、プライマリサーバに障害が発生すると、そのプライマリサーバに対応する複数台のセカンダリサーバが呼信号Ｓの処理を引き継ぐことができる。
【０１６６】
したがって、プライマリサーバに障害が発生しても、そのプライマリサーバに対応する複数台のセカンダリサーバが、プライマリサーバが行っていた呼処理を呼ごとに分担することで、負荷を分散させることができる。これにより、負荷の集中が防止される。
【０１６７】
また、実施例に係る呼制御システムは、呼制御装置１と、複数の呼処理サーバ２とを有する。呼制御装置１は、複数の呼処理サーバ２から、呼に関する呼信号Ｓを処理するプライマリサーバと、プライマリサーバが呼信号Ｓの処理を停止した場合に呼信号Ｓを処理するセカンダリサーバとを、呼ごとに決定する。
【０１６８】
呼制御装置１は、その決定に従って、呼信号Ｓを呼に応じたプライマリサーバに送信し、プライマリサーバから呼に応じたセカンダリサーバに呼信号Ｓの呼情報を送信させる。呼制御装置１は、プライマリサーバにおける呼信号Ｓの処理の停止を検出したとき、セカンダリサーバに呼情報の処理を指示する。
【０１６９】
プライマリサーバは、呼信号Ｓを処理し、セカンダリサーバは、呼制御装置１からの指示に従い、プライマリサーバから送信された呼情報を処理する。
【０１７０】
実施例に係る呼制御システムは、上記の呼制御装置１と同様の構成を含むため、上述した内容と同様の作用効果を奏する。
【０１７１】
また、実施例に係る呼制御方法は、以下のステップを含む。
ステップ（１）：複数の呼処理サーバ２から、呼に関する呼信号Ｓを処理するプライマリサーバと、プライマリサーバが呼信号Ｓの処理を停止した場合に呼信号Ｓを処理するセカンダリサーバとを、呼ごとに決定する。
ステップ（２）：該決定に従って、呼信号Ｓを呼に応じたプライマリサーバに送信し、プライマリサーバから呼に応じたセカンダリサーバに呼信号Ｓの呼情報を送信する。
ステップ（３）：プライマリサーバにおける呼信号Ｓの処理の停止を検出したとき、セカンダリサーバに呼情報の処理を指示する。
【０１７２】
実施例に係る呼制御方法は、上記の呼制御装置１と同様の構成を含むため、上述した内容と同様の作用効果を奏する。
【０１７３】
上述した実施形態は本発明の好適な実施の例である。但し、これに限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変形実施可能である。
【０１７４】
なお、以上の説明に関して更に以下の付記を開示する。
（付記１）  複数の呼処理装置から、呼に関する呼信号を処理する第１呼処理装置と、前記第１呼処理装置が前記呼信号の処理を停止した場合に前記呼信号を処理する第２呼処理装置とを、前記呼ごとに決定する決定部と、
前記決定部の決定に従って、前記呼信号を前記呼に応じた前記第１呼処理装置に送信し、前記第１呼処理装置から前記呼に応じた前記第２呼処理装置に前記呼信号の処理情報を送信させる呼信号処理部と、
前記第１呼処理装置が前記呼信号の処理を停止したことを検出する検出部と、
前記検出部が前記呼信号の処理の停止を検出したとき、前記第２呼処理装置に前記処理情報の処理を指示する指示部とを有することを特徴とする呼制御装置。
（付記２）  テーブルを記憶する記憶部を、さらに有し、
前記決定部は、決定に従って前記呼の識別子、前記第１呼処理装置の識別子、及び前記第２呼処理装置の識別子を互いに対応付けて前記テーブルに登録し、
前記呼信号処理部は、前記テーブルを参照することにより前記呼信号の送信先の前記第１呼処理装置及び前記呼信号の処理情報の送信先の前記第２呼処理装置を識別することを特徴とする付記１に記載の呼制御装置。
（付記３）  前記決定部は、ラウンドロビン方式に従って前記複数の呼処理装置から前記第２呼処理装置を決定することを特徴とする付記１または２に記載の呼制御装置。
（付記４）  前記決定部は、前記検出部が前記呼信号の処理の停止を検出したとき、前記呼信号の処理を停止した前記第１呼処理装置に対応する前記第２呼処理装置を新たな前記第１呼処理装置として決定し、前記複数の呼処理装置から、該新たな前記第１呼処理装置に対応する前記第２呼処理装置を決定することを特徴とする付記１乃至３の何れかに記載の呼制御装置。
（付記５）  前記呼信号処理部は、前記呼信号に前記第２呼処理装置のアドレスを付与して前記第１呼処理装置に送信し、前記第１呼処理装置に前記アドレスに基づいて前記呼信号の処理情報を前記第２呼処理装置に送信させることを特徴とする付記１乃至４の何れかに記載の呼制御装置。
（付記６）  呼制御装置と、複数の呼処理装置とを有し、
前記呼制御装置は、
前記複数の呼処理装置から、呼に関する呼信号を処理する第１呼処理装置と、前記第１呼処理装置が前記呼信号の処理を停止した場合に前記呼信号を処理する第２呼処理装置とを、前記呼ごとに決定し、
該決定に従って、前記呼信号を前記呼に応じた前記第１呼処理装置に送信し、前記第１呼処理装置から前記呼に応じた前記第２呼処理装置に前記呼信号の処理情報を送信させ、
前記第１呼処理装置における前記呼信号の処理の停止を検出したとき、前記第２呼処理装置に前記処理情報の処理を指示し、
前記第１呼処理装置は、前記呼信号を処理し、
前記第２呼処理装置は、前記呼制御装置からの指示に従い、前記第１呼処理装置から送信された前記処理情報を処理することを特徴とする呼制御システム。
（付記７）  前記呼制御装置は、
前記決定に従って前記呼の識別子、前記第１呼処理装置の識別子、及び前記第２呼処理装置の識別子を互いに対応付けてテーブルに登録し、
前記テーブルを参照することにより前記呼信号の送信先の前記第１呼処理装置及び前記呼信号の処理情報の送信先の前記第２呼処理装置を識別することを特徴とする付記６に記載の呼制御システム。
（付記８）  前記呼制御装置は、ラウンドロビン方式に従って前記複数の呼処理装置から前記第２呼処理装置を決定することを特徴とする付記６または７に記載の呼制御システム。
（付記９）  前記呼制御装置は、前記第１呼処理装置における前記呼信号の処理の停止を検出したとき、前記呼信号の処理を停止した前記第１呼処理装置に対応する前記第２呼処理装置を新たな前記第１呼処理装置として決定し、前記複数の呼処理装置から、該新たな前記第１呼処理装置に対応する前記第２呼処理装置を決定することを特徴とする付記６乃至８の何れかに記載の呼制御システム。
（付記１０）  前記呼制御装置は、前記呼信号に前記第２呼処理装置のアドレスを付与して前記第１呼処理装置に送信し、前記第１呼処理装置に前記アドレスに基づいて前記呼信号の処理情報を前記第２呼処理装置に送信させることを特徴とする付記６乃至９の何れかに記載の呼制御システム。
（付記１１）  複数の呼処理装置から、呼に関する呼信号を処理する第１呼処理装置と、前記第１呼処理装置が前記呼信号の処理を停止した場合に前記呼信号を処理する第２呼処理装置とを、前記呼ごとに決定し、
該決定に従って、前記呼信号を前記呼に応じた前記第１呼処理装置に送信し、前記第１呼処理装置から前記呼に応じた前記第２呼処理装置に前記呼信号の処理情報を送信し、
前記第１呼処理装置における前記呼信号の処理の停止を検出したとき、前記第２呼処理装置に前記処理情報の処理を指示することを特徴とする呼制御方法。
（付記１２）  前記決定に従って前記呼の識別子、前記第１呼処理装置の識別子、及び前記第２呼処理装置の識別子を互いに対応付けてテーブルに登録し、
前記テーブルを参照することにより前記呼信号の送信先の前記第１呼処理装置及び前記呼信号の処理情報の送信先の前記第２呼処理装置を識別することを特徴とする付記１１に記載の呼制御方法。
（付記１３）  ラウンドロビン方式に従って前記複数の呼処理装置から前記第２呼処理装置を決定することを特徴とする付記１１または１２に記載の呼制御方法。
（付記１４）  前記第１呼処理装置における前記呼信号の処理の停止を検出したとき、前記呼信号の処理を停止した前記第１呼処理装置に対応する前記第２呼処理装置を新たな前記第１呼処理装置として決定し、前記複数の呼処理装置から、該新たな前記第１呼処理装置に対応する前記第２呼処理装置を決定することを特徴とする付記１１乃至１３の何れかに記載の呼制御方法。
（付記１５）  前記呼信号に前記第２呼処理装置のアドレスを付与して前記第１呼処理装置に送信し、前記第１呼処理装置に前記アドレスに基づいて前記呼信号の処理情報を前記第２呼処理装置に送信させることを特徴とする付記１１乃至１４の何れかに記載の呼制御方法。
【符号の説明】
【０１７５】
１      呼制御装置
２      呼処理サーバ
１００     呼処理割当部
１０１     呼信号処理部
１０２     サーバ監視部
１０３     障害通知部
【図１】
0006492789.tif 000002
【図２】
0006492789.tif 000003
【図３】
0006492789.tif 000004
【図４】
0006492789.tif 000005
【図５】
0006492789.tif 000006
【図６】
0006492789.tif 000007
【図７】
0006492789.tif 000008
【図８】
0006492789.tif 000009
【図９】
0006492789.tif 000010
【図１０】
0006492789.tif 000011
【図１１】
0006492789.tif 000012
【図１２】
0006492789.tif 000013
【図１３】
0006492789.tif 000014
【図１４】
0006492789.tif 000015
【図１５】
0006492789.tif 000016
【図１６】
0006492789.tif 000017
【図１７】
0006492789.tif 000018
【図１８】
0006492789.tif 000019
【図１９】
0006492789.tif 000020