(58)【調査した分野】(Int.Cl.,DB名)
【背景技術】
【0002】
電話網で発生した呼の要求に対し、電話網のリソースを割り当てる処理(呼処理)に呼処理装置が利用されている。呼処理装置には、ACT/SBY運用される制御部を複数有する二重化構成とし、各制御部を運用系(ACT系)又は待機系(SBY系)に定期的に切り替えて安定して呼の要求に対してリソースを割り当てるものがある。このような二重化構成の呼処理装置では、運用系に設定された制御部がリソースの割り当て等の呼の要求に対する接続の処理を実行している。また、待機系に設定された制御部が後に運用系に切り替えられるのに備えて、運用系の制御部が利用している各リソースの接続に関するデータを同期して保持する必要がある(例えば、非特許文献1参照)。
【0003】
非特許文献1にも記載されているように、待機系の制御部が運用系の制御部と接続データを同期する方法として、「周期一括型同期」と「イベントドリブン型同期」とが考えられている。具体的には、周期一括型同期は、一定周期毎に変化したデータを運用系と待機系の制御部間で受け渡して同期する方法であり、通常の処理負荷を軽減できる利点がある。一方、周期一括型同期の場合、同期処理の際に受け渡しされるデータ量が多くなり、周期毎の同期処理の時間が長くなる傾向がある。また、制御部の運用系と待機系の切替時には、前回の周期で受け渡しされた後に変化したデータを同期する必要があり、切替処理の時間も長くなる傾向にある。
【0004】
一方、イベントドリブン型同期は、リソースの状態が変化する毎に運用系と待機系の制御部間で接続データを同期する方法であり、運用系と待機系の切替処理に要する時間を短くできる利点がある。一方、イベントドリブン型同期の場合、通常の処理時にデータを受け渡すため、通常の処理負荷が大きくなる傾向がある。
【0005】
近年、装置の処理能力の向上が進んでいることから、制御部の運用系と待機系の切替時に受け渡しするデータ量を少なくして切替処理に要する時間を短縮するため、同期周期を短くしてイベントドリブン型同期が利用される傾向にある。
【0006】
ここで、切替処理の開始から終了までの過渡期にリソースの状態が変化した場合、この変化を接続データに反映させる必要がある。具体的には、このような過渡期においては、呼処理装置において運用系と待機系とが確定していないため、呼処理装置は、新たな呼の要求に対してリソースが割り当てることはない。一方、すでに割り当てられているリソースに関しては使用を継続することは可能であり、また、リソースが解放されることもある。
【0007】
過渡期に接続データを処理する方法として、電話網の実際の回線状態と呼処理装置で管理するデータの一致のために再び運用系となる制御部が接続データをリセットし、これを新たな接続データとする処理と、再び運用系となる制御部が切替処理の時点で保持していた接続データを再び利用する処理とがある。
【0008】
前者の場合、切替処理の前後に渡って使用が継続されているリソースがある場合、新たな接続データにおいてこのリソースの状態が反映されない問題がある。一方、後者の場合、使用中のリソースの状態は反映されるが、過渡期に解放されたリソースがある場合、このリソースの解放が反映されない問題がある。
【発明を実施するための形態】
【0015】
以下に、図面を用いて本発明の実施形態に係る呼処理装置について説明する。なお、以下の説明において、同一の構成については同一の符号を付して説明を省略する。
【0016】
実施形態に係る呼処理装置は、呼の要求に応じてリソースを割り当てて複数の端末間の通話を成立させる装置である。ここで、リソースとは、端末間での通話を成立するために使用される回線等のことである。
図1に示すように、実施形態に係る呼処理装置1は、複数の端末2a〜2eが接続される電話網3に配置されており、これら端末2a〜2e間の通話を成立させる装置である。端末2a〜2eは、電話機であるが、種類は限定せず、固定電話でも携帯電話でもよく、また、IP電話であってもよい。
【0017】
呼処理装置1は、同一の処理を実行可能な第1制御部1A及び第2制御部1Bを有し、一方の制御部が運用系(ACT系)に設定されているとき、他方の制御部が待機系(SBY系)に設定され、運用系に設定されている制御部が呼の要求に応じてリソースを割り当てて端末2a〜2e間での通話を成立させる。各制御部1A,1Bは、
図2に示すように、呼処理部11、切替処理部12、リソースデータ更新部13、接続データ更新部14、送受信部15、解放データ更新部16及び反映処理部17を備えている。また、各制御部1A,1Bは、記憶装置20において、リソースデータD1、接続データD2及び解放データD3を記憶している。
【0018】
ここでは、第1制御部1Aの各処理部11〜17について説明するが、第2制御部1Bも同様の処理を実行する処理部11〜17を備える構成である。また、第1制御部1Aと第2制御部1Bは、それぞれ記憶装置20を有し、各制御部1A,1Bの記憶装置20で記憶されるデータD1〜D3は、それぞれ所定のタイミングで同期される。さらに、ここでは呼処理装置1が2つの制御部1A,1Bを有する例で説明するが、複数の制御部を有しており、いずれかの制御部が運用系として設定されているときには他の制御部が待機系として設定される構成であれば、呼処理装置が有する制御部の数は限定されない。
【0019】
リソースデータD1は、リソースの使用状態に関するデータであって、
図3(a)に一例を示すように、電話網3において端末2a〜2e間での通話のために割り当てられるリソースの識別子である「リソースID」とこの識別子で識別されるリソースの「使用状態」とを含むレコードを有している。
図3(a)に示す例では、リソースID「001」及び「004」のリソースは使用中であり、リソースID「002」及び「003」のリソースは未使用であることが分かる。
【0020】
接続データD2は、リソースの使用状態及びリソースの接続情報に関するデータであって、
図3(b)に一例を示すように、リソースの識別子である「リソースID」とこのリソースの「使用状態」とこのリソースの接続に関する「接続情報」とを関連付けるレコードを含んでいる。例えば、「接続情報」は、接続されている端末の識別子、一般呼と緊急呼との分類、同時接続数割り当ての多寡、輻輳時の接続優先度等の情報である。
【0021】
呼処理部11は、第1制御部1Aが運用系に設定されている際に、電話網3においていずれかの端末2a〜2eから呼の要求を受けると、リソースデータD1及び接続データD2を利用してリソースを割り当てて要求された端末との通話を実現させる。例えば、呼処理部11は、使用状態が「未使用」であって、割り当て数の条件を満たすリソースを割り当てる。呼処理部11は、通話が成立している際には、リソースの接続に関する接続情報を有している。また、呼処理部11は、リソースを割り当てた端末間の通話が終了すると、リソースを解放する。呼処理部11における処理や呼処理部11が使用するデータについては、従来の呼処理装置と同様であるため、詳細な説明は省略する。
【0022】
切替処理部12は、所定のタイミングで、第1制御部1Aの運用系から待機系への切替処理又は待機系から運用系への切替処理を実行する。切替処理部12は、切替処理を開始又は終了する際、切替処理の開始通知又は終了通知を各処理部11,13〜17に出力する。また、切替処理部12は、切戻し処理を開始又は終了する際、切戻し処理の開始通知又は終了通知を出力する。切戻し処理とは、切替処理にエラーが発生し、運用系から待機系に切り替える予定であった処理部を再び運用系とし、待機系から運用系に切り替える予定であった処理部を再び待機系とする処理である。各処理部11,13〜17では、切替処理部12が出力する開始通知及び終了通知に応じて運用系又は待機系に設定されたり、切替処理や切戻し処理の開始や終了のタイミングを検知することができる。
【0023】
例えば、呼処理装置1では、所定時間毎(例えば、一日毎)のタイミングで切替処理を実行する。なお、切替処理を実行中には、呼処理部11による呼処理を実行することができない。したがって、切替処理の開始後、切替終了までの間(過渡期)には呼処理装置1は、端末からの新たな呼の要求に対してリソースを与えることはできないが、切替処理の開始の時点でリソースが割り当てられている端末間では切替処理の間であっても通話を継続することができる。
【0024】
リソースデータ更新部13は、第1制御部1Aが運用系に設定されている際に、リソースの使用状態の変更に応じてリソースデータD1を更新する。具体的には、リソースデータ更新部13は、呼処理部11によって呼の要求に対してリソースが割り当てられると、リソースデータD1において、割り当てられたリソースの使用状態を「未使用」から「使用中」に更新する。また、リソースデータ更新部13は、呼処理部11で端末に割り当てられていたリソースが解放されると、リソースデータD1において、解放されたリソースの使用状態を「使用中」から「未使用」に更新する。
【0025】
接続データ更新部14は、第1制御部1Aが運用系に設定されている際に、任意のタイミングで、接続データD2を更新する。例えば、第1制御部1Aの処理負荷が所定の値より低くなったタイミングで、接続データD2を更新する。
【0026】
具体的には、接続データ更新部14は、リソースデータD1から前回接続データD2を更新した後に更新されたレコードを抽出し、抽出したレコードに含まれる使用状態が「使用中」であるとき、抽出したレコードに含まれるリソースIDで識別されるリソースの接続情報を呼処理部11から取得する。その後、接続データ更新部14は、抽出したレコードに含まれる「リソースID」及び「使用状態」と、取得した「接続情報」とを含むレコードを生成し、接続データD2において当該リソースIDを含むレコードを更新する。
【0027】
一方、接続データ更新部14は、リソースデータD1から抽出したレコードに含まれる使用状態が「未使用」であるとき、抽出したレコードに含まれる「リソースID」及び「使用状態」を含み、「接続状態」の実データを含まないレコードを生成し、接続データD2において当該リソースIDを含むレコードを更新する。
【0028】
送受信部15は、第2制御部1Bとの間で種々のデータの送受信を実行する。具体的には、第1制御部1Aが運用系に設定されている際に、リソースデータD1又は接続データD2が更新されると、更新されたレコードのデータを待機系の第2制御部1Bに送信する。
【0029】
また、送受信部15は、第1制御部1Aが運用系に設定されている際に、切替処理が開始すると、前回送信後に変更されたレコードのデータを接続データD2から抽出し、抽出したデータを第2制御部1Bに送信する。このデータを送信後に第2制御部1Bから切替の完了通知を受信した送受信部15は、完了通知を切替処理部12に出力する。一方、切替処理においてデータを送信後に第2制御部1Bから切替の完了通知を受信できないとき、送受信部15は、切替エラーの通知を切替処理部12に出力する。
【0030】
さらに、送受信部15は、第1制御部1Aが運用系から待機系に変更されると、運用系となった第2制御部1Bに解放データD3を送信する。
【0031】
送受信部15は、第1制御部1Aが待機系に設定されている際に、運用系の第2制御部1Bが送信したリソースデータD1のレコードのデータを受信すると、受信したデータでリソースデータD1を更新する。また、送受信部15は、第1制御部1Aが待機系に設定されている際に、第2制御部1Bから送信された接続データD2のレコードのデータを受信すると、受信したデータで接続データD2を更新する。
【0032】
送受信部15は、第1制御部1Aが待機系に設定されている際に、切替処理が開始し、その後に第2制御部1Bから接続データD2のレコードのデータを受信すると、受信したデータで接続データD2を更新する。また、送受信部15は、切替処理で受信したデータで接続データD2の更新が完了すると、待機系の第2制御部1Bに切替の完了通知を送信する。さらに、送受信部15は、切替処理で待機系から運用系に切り替えられた後に、第2制御部1Bから解放データを受信すると、受信したデータで記憶装置20の解放データD3を更新する。
【0033】
解放データ更新部16は、切替処理部12によって第1制御部1Aが運用系から待機系に切り替えられる切替処理が開始後、切替処理が終了までの間にリソースが解放されると、解放されたリソースを識別するリソースIDを追加して解放データD3を更新する。また、解放データ更新部16は、切戻し処理が開始後、切戻し処理が終了までの間にリソースが解放されると、解放されたリソースを識別するリソースIDを追加して解放データを追加する。
【0034】
なお、解放データ更新部16は、第1制御部1Aで切替処理又は切戻し処理が終了すると、解放データD3に含まれるリソースIDを削除して解放データD3をリセットする。具体的には、切替処理が終了して第1制御部1Aが運用系から待機系にされた場合、解放データ更新部16は、送受信部15が解放データD3を新たに運用系となった第2制御部1Bに送信後に、解放データD3をリセットする。一方、第1制御部1Aが運用系から待機系へ切り替えられずに再び運用系となった場合、解放データ更新部16は、反映処理部17がリソースデータD1を更新された後、解放データD3をリセットする。
【0035】
反映処理部17は、リソースデータD1において、解放データD3が含むリソースIDと関連付けられる使用状態を「使用中」から「未使用」に変更してリソースデータD1を更新する。具体的には、第1制御部1Aが待機系から運用系に切り替えられた際に、送受信部15が第2制御部1Bから受信したデータで解放データD3を更新されたタイミングで、解放データD3を利用してリソースデータD1を更新する。一方、反映処理部17は、第1制御部1Aが、運用系から待機系へ切り替えられずに切戻し処理によって再び運用系となったタイミングで、解放データ更新部16によって更新された解放データD3を利用してリソースデータD1を更新する。
【0036】
続いて、
図4を用いて運用系として設定されている第1制御部1Aの通常の呼処理の際のデータの更新及び送信について説明する。まず、
図4(a)は、リソースデータD1の更新とデータの送信に関する処理を示すフローチャートである。
【0037】
図4(a)に示すように、運用系として設定された第1制御部1Aにおいて呼の要求が発生すると(S01)、呼処理部11が発生した呼の要求に対してリソースを割り当てる(S02)。
【0038】
続いて、リソースデータ更新部13は、呼の要求に対して割り当てられたリソースの使用状態を使用中に変更してリソースデータD1の該当するレコードを更新する(S03)。また、送受信部15は、更新されたリソースデータD1のレコードのデータを待機系の第2制御部1Bに送信する(S04)。
【0039】
その後、リソースが解放されると(S05でYES)、解放されたリソースの使用状態を未使用に変更してリソースデータD1の該当するレコードを更新する(S06)。また、送受信部15は、更新されたリソースデータD1のレコードのデータを待機系の第2制御部1Bに送信する(S07)。
【0040】
このように、第1制御部1Aは、呼処理を終了するまで(S08でYES)、ステップS01〜S07の処理を繰り返す。具体的には、第1制御部1Aは、運用系に設定されている間、ステップS01〜S07の処理を繰り返す。
【0041】
図4(b)は、接続データD2の更新とデータの送信に関する処理を示すフローチャートである。
図4(b)に示すように、運用系として設定された第1制御部1Aにおいて処理負荷が所定の値よりも低くなると(S11でYES)、接続データ更新部14は、リソースデータD1から前回接続データD2を更新後に変更されたレコードを抽出し、抽出したレコードのデータに合わせて接続データD2を更新する(S12)。また、送受信部15は、更新された接続データD2のレコードのデータを待機系の第2制御部1Bに送信する(S13)。
【0042】
このように、第1制御部1Aは、呼処理を終了するまで(S14でYES)、ステップS11〜S13の処理を繰り返す。具体的には、第1制御部1Aは、運用系に設定されている間、ステップS11〜S14の処理を繰り返す。
【0043】
次に、
図5に示すシーケンス図を用いて、呼処理装置1における処理の流れを説明する。
図5では、始めに、第1制御部1Aが運用系、第2制御部1Bが待機系として設定され、後に第1制御部1Aが待機系、第2制御部1Bが運用系に切り替えられる場合の処理の一例を示している。
【0044】
まず、通常の呼処理(通常処理)として、第1制御部1Aの呼処理部11において呼の要求によるリソースやリソースの解放によりリソースが変更されると(S21)、リソースデータ更新部13は、リソースデータD1を更新する(S22)。続いて、送受信部15は、リソースデータD1の更新したレコードのデータを第2制御部1Bに送信する(S23)。
【0045】
データを受信した第2制御部1Bの送受信部15は、受信したデータでリソースデータD1を更新することで、第1制御部1Aと第2制御部1BのリソースデータD1を同期させる(S24)。
【0046】
その後、低負荷になったタイミングで、第1制御部1Aの接続データ更新部14は、接続データD2を更新する(S25)。続いて、送受信部15は、接続データD2の更新したレコードのデータを第2制御部1Bに送信する(S26)。
【0047】
データを受信した第2制御部1Bの送受信部15は、受信したデータでリソースデータD1を更新することで、第1制御部1Aと第2制御部1Bの接続データD2を同期させる(S27)。なお、リソースの変更、リソースデータの更新と送信及び接続データの更新と送信の処理(S21〜S27)は繰り返されるが、これらの処理の繰り返しについては
図5のシーケンス図では省略している。
【0048】
第1制御部1A及び第2制御部1Bにおいて切替処理部12が切替処理の開始信号を各処理部11,13〜17に出力して切替処理が開始すると(S28)、第1制御部1Aの送受信部15が前回更新後に変更された接続データD2のレコードを抽出し、抽出したレコードのデータを第2制御部1Bに送信する(S29)。この切替処理においては、第1制御部1Aが旧運用系となり、第2制御部1Bが旧待機系と設定される。
【0049】
データを受信した第2制御部1Bの送受信部15は、受信したデータで接続データD2を更新することで、第1制御部1Aと第2制御部1Bの接続データD2を同期させる(S30)。
【0050】
その後、第2制御部1Bの送受信部15が第1制御部1Aに完了通知を送信すると、切替処理が終了する(S31)。これにより、第1制御部1Aは待機系と設定され、第2制御部1Bは運用系と設定される。また、切替処理の間にリソースが解放されると(S32)、解放データ更新部16は、リソースの解放の度に解放データD3を更新する(S33)。
【0051】
続いて、待機系となった第1制御部1Aの送受信部15が運用系の第2制御部1Bに解放データD3を送信する(S34)。解放データを受信した第2制御部1Bのリソースデータ更新部13は、解放データD3によってリソースデータD1を更新した後(S35)、呼の受付が開始され、呼処理装置1では通常の呼処理を開始する(S36)。なお、
図5では省略しているが、第2制御部1BがリソースデータD1を更新すると、更新されたレコードのデータは、待機系の第1制御部1Aに送信される。
【0052】
例えば、
図3(a)に示すようなリソースデータD1であった場合に、解放データD3にリソースID「004」が記憶されていたとき、反映処理部17は、リソースデータD1を
図7(a)に示すように更新する。また、その後リソースデータD1が
図7(a)の状態の場合に第1制御部1Aの処理負荷が所定の値以下になったときに、
図7(a)に示すリソースデータD1に応じて、接続データD2が
図7(b)に示すように更新される。
【0053】
一方、呼処理装置1のようにリソースデータD1、接続データD2及び解放データD3を使用する方法ではなく、従来のように、単に
図8(a)に示すような接続データのみを利用しており、
図8(a)に示す状態で切替処理が開始され、切替処理が実行される間にリソースID「004」のリソースが解放された場合を例にあげる。ここで、切替処理後に接続データにおいて使用状態を全てキャンセルする場合、
図8(b)のように、全てのリソースの使用状態が「未使用」とされる。したがって、リソースID「001」のリソースは現在も使用中であっても、未使用とされるため、正確な情報を反映することができなくなる。
【0054】
一方、従来のように、切替処理の終了後に呼処理を再開する際に使用する接続データを切替処理の開始時点の接続データを継続して使用する場合、
図8(c)のように、切替処理開始時点で使用中であったリソースは全て「使用中」とされる。したがって、リソースID「004」のリソースは未使用となった場合でも、使用中とされるため、正確な情報を反映することができなくなる。
【0055】
続いて、
図6に示すシーケンス図を用いて、切替処理においてエラーが発生した場合の呼処理装置1における処理の流れを説明する。
図6において、切替処理においてエラーが発生するまでのステップS21〜S29,S32,S33の処理については、
図5と同様である。
【0056】
旧待機系の第2制御部1BにおいてリソースデータD1と接続データD2の同期ができず、第2制御部1Bから第1制御部1Aに完了通知が送信されないとき、旧運用系である第1制御部1Aの切替処理部12は切戻し処理を開始する(S41)。
【0057】
切戻し処理の開始後にリソースが解放されると(S42)、解放データ更新部16は、解放されたリソースの識別子を追加して解放データD3を更新する(S43)。なお、ステップS42のリソース解放が複数回行われる場合には、ステップS43の解放データ更新も合わせて複数回行われる。
【0058】
切戻し処理が終了すると、旧運用系の第1制御部1Aは再び運用系に設定され、旧待機系の第2制御部1Bは再び待機系に設定される。再び運用系に設定された第1制御部1Aの反映処理部17は、解放データD3を利用してリソースデータD1を更新する(S35)。
【0059】
その後、第1制御部1Aでは、通常の呼の処理を開始する(S45)。また、通常処理に戻った第1制御部1A及び第2制御部1Bでは、ステップS21〜S27と同様の処理が繰り返される。なお、このように切替エラーが発生して切戻しを行った場合、呼処理装置1では、外部の管理装置等にエラーの発生を通知するようにしてもよい。
【0060】
上述したように、本発明の実施形態に係る呼処理装置1では、処理負荷の小さい少なくともリソースIDと使用状態を含むリソースデータD1のみをイベントドリブン型同期とし、処理負荷が大きくなる接続情報を含む接続データD2については、周期一括型同期とすることで、データの同期によって通常の呼処理に与える影響を低減することができる。
【0061】
また、実施形態に係る呼処理装置1では、運用系と待機系とを切り替える過渡期においては、リソースの解放のみを解放データD3として保持し、切替処理又は切戻し処理の終了後に過渡期に変更(解放)されたリソースのリストである解放データD3を利用してリソースデータD1を更新することができる。したがって、過渡期に発生した変化についても、正確にデータとして反映することができる。
【0062】
以上、実施形態を用いて本発明を詳細に説明したが、本発明は本明細書中に説明した実施形態に限定されるものではない。本発明の範囲は、特許請求の範囲の記載及び特許請求の範囲の記載と均等の範囲により決定されるものである。