説明

SIP生残り可能な構成においてSIPメッセージを使用したフェイルオーバ・トリガ/フェイルバック・トリガ

【課題】SIP生残り可能なネットワークを維持するための方法、デバイス、およびシステムを提供すること。
【解決手段】本発明は、SIPネットワークの決定された状態に基づいて、様々なネットワーク構成要素がフェイルオーバまたはフェイルバックするようにトリガするために、SIP通知メッセージなどのメッセージを利用することが可能である。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、一般に通信ネットワークに関し、より詳細には、生残り可能な(survivable)セッション開始プロトコル(SIP)の生残り可能なネットワークに関する。
【背景技術】
【0002】
セッション開始プロトコル(SIP)は、多くの種類のリアルタイム通信セッションを確立するための開放型シグナリング・プロトコル(open signaling protocol)である。SIPを使用して確立され得る通信セッションのタイプの例は、音声、ビデオ、ゲーム、適用業務、および/またはインスタント・メッセージングを含む。これらの通信セッションは、パーソナル・コンピュータ、ラップトップ・コンピュータ、携帯情報端末(PDA)、セルラ電話、IMクライアント、IP電話、伝統的な電話、サーバ適用業務、適用業務の集約、デスクトップ適用業務など、任意のタイプの通信デバイス上で実行され得る。
【0003】
SIPの1つの重要な特徴は、最終利用者、適用業務、およびサービス・プロバイダ・ネットワークに対するすべての通信に関する単一の統一公用アドレスとしてアドレス・オブ・レコード(Address of Record)(AOR)を使用するその能力である。これにより、SIP拡張された通信の世界では、ユーザのAORは、ユーザをユーザに関連する通信デバイスのすべてと連結するユーザの単一のアドレスになる。このAORを使用して、発呼側は、独自のデバイスアドレスまたは独自の電話番号のそれぞれを知る必要なく、ユーザ・エージェント(UA)とも呼ばれる、ユーザの通信デバイスのうちのいずれかに連絡することが可能である。
【0004】
多くのSIPアプリケーションサーバは、SIP環境において通信適用業務を可能にする目的で、かつUAにとっての発信プロキシとして機能し、それによりそれらのデバイスがネットワークに接続するために使用するプロキシを通じてその複雑さを隠すと同時に、複雑なネットワークが構築されることを可能するために存在する。かかる通信適用業務のための主な領域のうちの1つは、SIP UAの呼制御である。生残り可能なSIPネットワーク構成を提供する問題の解決策は現在ほとんど存在しない。過去に生残り可能性が提供された1つの方法は、SIPシグナリングに対する応答が存在しない場合に用いられるSIPプロキシの使用を介してであった。プロキシは、ネットワーク内の1つまたは複数の代替経路を経由してシグナリングを経路指定するために使用されることが可能である。生残り可能性を提供するために呼コントローラすなわちゲートウェイ以外の追加のネットワーク要素が要求されるため、別々のプロキシの使用は高額になる可能性がある。
【0005】
その他のネットワークサーバ製品は、ゲートウェイがネットワークサーバの高い利用可能性に起因するネットワークサーバ障害に遭遇する可能性が低いように、地理的冗長性構成を提供する。プロキシの使用と同様に、利用可能性の高いサーバを購入してネットワークの全体にわたって分散する必要があるため、この特定の解決策は比較的高額である。知られている現在の解決策のさらなる欠点は、主なSIPシグナリング経路が利用可能でない場合、ネットワーク要素(例えば、ゲートウェイ)は代替の経路を使用することが許可されない;かかる解決策は、サーバの全域でのデータの複写を用いたホットスタンバイ構成を要求する;かかる解決策は一次呼コントローラおよび二次呼コントローラがまさしく同じSIPバージョンを使用して、SIP終点にSIP特徴のまさしく同じセットを提供することを要求するという事実を含む。
【発明の開示】
【課題を解決するための手段】
【0006】
これらの欠点に加えて、ネットワーク障害がいつ発生したかを決定するための論理は、伝統的に様々なネットワーク要素が適切に動作しているかどうかを決定するためにネットワークのIP層を検査する能力を有するルータ内に配置されている。この障害/フェイルバック検出論理は、ネットワーク構成要素の残りの部分への処理負担を取り除くためにルータ内に配置されている。この特定の構成の1つの主な欠点は、ルータはSIPアプリケーションレベルでサーバまたはその他のネットワーク要素が動作可能であるかどうかを検出することが不可能であるという点である。サーバはIP層レベルで動作可能であるが、SIPコントローラが動作可能でない多くの事例が存在し得る。先行技術のルータおよびその他のネットワーク要素は、これまでかかる障害状態を識別することが不可能であり、かかるサーバを動作可能と登録することになる。
【0007】
これらの必要性およびその他の必要性は、本発明の様々な実施形態および構成によって対処される。本発明は、一般に、通信ネットワークの一部またはすべての利用可能性を解析するためのシステム、デバイス、および方法に関する。方法は一般に、
通信システム内の構成要素の状態が第1の状態(例えば、動作可能な状態)から第2の状態(例えば、非動作可能な状態)に変更したことを決定することと、
構成要素の決定された第2の状態に関係する情報を備えるメッセージを生成することと、
メッセージを構成要素に関連するユーザ・エージェントに送信することとを備える。
【0008】
本発明の少なくともいくつかの実施形態によれば、構成要素の状態は自己監視され得る。すなわち、構成要素は、構成要素が第1の状態(例えば、動作可能)または第2の状態(例えば、非動作可能)のどちらで動作しているかを決定するために、自己に関して保守検査を実行することが可能である。次いで、構成要素が可能である場合、構成要素はその状態を報告するメッセージをユーザ・エージェントに送信することができる。構成要素はそのSIPアプリケーション層の状態を監視していることができるため、これは可能である。例えば、構成要素は、そのSIPコントローラの状態を監視するように適合されることが可能であり、コントローラが、現在、SIPユーザ・エージェントにサービス提供することが可能であるかどうかを決定することが可能である。
【0009】
代替の実施形態によれば、報告している構成要素は、通信システム内のその他の構成要素の動作可能状態を監視および報告するように適合され得る。監視を実行している構成要素は、その他の構成要素のSIPアプリケーション層の状態を検査して、その結果について報告することが依然として可能である。しかし、この特定のタイプの監視活動は、管理メッセージを送信して、応答を予想することによって実行され得る。
【0010】
本発明の少なくともいくつかの実施形態によれば、監視を実行している構成要素が、構成要素(例えば、自己またはもう1つの構成要素)の状態が変更したことを決定した場合、監視している構成要素はかかる変更を監視されている構成要素に関連するユーザ・エージェントに報告するように適合され得る。監視されている構成要素は、その構成要素内に含まれたコントローラを介してユーザ・エージェントと関連づけられることが可能である。より詳細には、ユーザ・エージェントは、構成要素内に含まれたコントローラに登録され得る。
【0011】
ユーザ・エージェントが監視されている構成要素の状態変更を報告するメッセージを受信する場合、ユーザ・エージェントは、いくつかの異なる方法で反応することが可能である。ユーザ・エージェントが通信システム内の構成要素の状態(例えば、SIP状態)も監視することが可能でない場合、ユーザ・エージェントは、受信されたメッセージ内に含まれた情報に基づいて、その動作可能なパラメータを単に変更することが可能である。例えば、メッセージがユーザ・エージェントの一次コントローラが失敗したことを表示する場合、ユーザ・エージェントは、さらなる問合せなしにそのバックアップ・コントローラすなわち二次コントローラに単にフェイルオーバすることができる。あるいは、ユーザ・エージェントが、通信システム内の1つまたは複数の構成要素の状態を監視することが可能である場合、ユーザ・エージェントは、構成要素の状態を検査するためのプロンプトとして、受信された通知を処理することができる。かかる実施形態では、ユーザ・エージェントは、コントローラおよびその対応する構成要素の状態に関して自己決定を行うために、コントローラとの再登録を試みるように適合され得る。これは、ユーザ・エージェントがフェイルオーバ・モードで動作し始める前に、構成要素の状態が変更したことを確認するための能力をユーザ・エージェントに提供する。したがって、ユーザ・エージェントは、その動作に関してより多くの制御と、意思決定能力とを有する。
【0012】
本明細書で使用される場合「監視すること」は、監視されている要素もしくは要素のグループの動作または状態に影響がない手段を用いて観察すること、記録すること、または検出することに関係する任意のタイプの機能を含む。
【0013】
本明細書で使用される場合、「少なくとも1つ」、「1つまたは複数」、ならびに「および/または」は、動作において接続的および離接的の両方である自由な表現である。例えば、各表現「A、BおよびCのうちの少なくとも1つ」、「A、BまたはCのうちの少なくとも1つ」、「A、BおよびCのうちの1つまたは複数」、「A、BまたはCのうちの1つまたは複数」、「A、B、および/またはC」は、Aだけ、Bだけ、Cだけ、AおよびBが共に、AおよびCが共に、BおよびCが共に、またはA、BおよびCが共にを意味する。
【0014】
用語「1つの(a)」または「1つの(an)」の実体は、その実体の1つまたは複数を指す。したがって、用語「1つの(a)」(または「1つの(an)」)、「1つまたは複数」および「少なくとも1つ」は、本明細書で交換可能に使用され得る。用語「備える」、「含む」、および「有する」は交換可能に使用され得る点にも留意されたい。
【0015】
本明細書で使用される場合、用語「自動的」およびその改変形態は、プロセスまたは動作が実行される場合、物質的な人間の入力なしに行われる任意のプロセスまたは動作を指す。しかし、プロセスまたは動作の実行が、プロセスまたは動作の実行の前に受信された、物質的であれ非物質的であれ、人間の入力を使用する場合でさえ、プロセスまたは動作は自動的であり得る。人間の入力がプロセスまたは動作がどのように実行されることになるかに影響を与える場合、かかる入力は物質的と見なされる。プロセスまたは動作の実行を承認する人間の入力は「物質的」と見なされない。
【0016】
本明細書で使用される場合、用語「コンピュータ可読媒体」は、実行のためにプロセッサに命令を提供する際に関与する任意の有形記憶装置および/または伝送媒体を指す。コンピュータ可読媒体は、IPネットワーク(例えば、SOAP)上のネットワーク伝送内で符号化された命令の直列化されたセットであり得る。かかる媒体は、不揮発性媒体、揮発性媒体、および伝送媒体を含むがこれらに限定されない、多くの形態を取ることが可能である。不揮発性媒体は、例えば、NVRAM、または磁気ディスクもしくは光ディスクを含む。揮発性媒体は、主記憶装置などのダイナミック・メモリ(例えば、RAM)を含む。コンピュータ可読媒体の一般的な形態は、例えば、フロッピー(登録商標)ディスク、フレキシブルディスク、ハードディスク、磁気テープ、または任意のその他の磁気媒体、光磁気媒体、CD−ROM、任意のその他の光媒体、パンチカード、ペーパーテープ、正孔のパターンを有する任意のその他の物理媒体、RAM、PROM、EPROM、フラッシュEPROM、メモリカードなどの固体媒体、任意のその他のメモリチップもしくはカートリッジ、以下で説明されるような搬送波、あるいはそこからコンピュータが読み取ることが可能な任意のその他の媒体を含む。電子メールへのデジタル添付ファイルまたはその他の内蔵型の情報アーカイブもしくはアーカイブのセットは、有形記憶媒体と同等の配布媒体と考えられる。コンピュータ可読媒体がデータベースとして構成される場合、データベースは、関係のあるデータベース、階層的なデータベース、オブジェクト指向のデータベース、および/または類似のデータベースなど、任意のタイプのデータベースであり得ると理解されたい。したがって、本発明は有形記憶媒体または配布媒体ならびに先行技術で認識された均等物および本発明のソフトウェア実装が記憶される後続の媒体を含むと考えられる。
【0017】
本明細書で使用される場合、用語「決定する」、「計算する」および「演算する」ならびにそれらの改変形態は交換可能に使用され、任意のタイプの方法論、プロセス、数学的演算または数学的技術を含む。より詳細には、かかる用語はBPELなどの解釈されたルールまたは論理はハードコードされ(hard coded)ないが、読み込まれ、解釈され、編集され、実行されることが可能なルールファイル内に表現されるルール言語を含み得る。
【0018】
本明細書で使用される場合、用語「モジュール」または「ツール」は、任意の知られているもしくは後で開発されるハードウェア、ソフトウェア、ファームウェア、人工知能、ファジー理論、またはその要素に関連する機能性を実行することが可能なハードウェアおよびソフトウェアの組合せを指す。また、本発明は例示的な実施形態の点から説明されるものの、本発明の個々の態様は別々に特許請求され得る点を理解されたい。
【0019】
前記は、本発明のいくつかの態様の理解をもたらすための本発明の簡素化された概要である。この問題を解決するための手段は、本発明およびその様々な実施形態の広範囲な概要ではなく、または網羅的な概要でもない。この問題を解決するための手段は、本発明の主な要素もしくは重要な要素を識別することまたは本発明の範囲を描写することが意図されず、下で提示されるより詳細に説明される説明の手引きとして本発明の選択された概念を簡素化された形態で提示することが意図される。理解されるように、上に記載された特徴または下で説明される特徴のうちの1つまたは複数を単独でまたは組み合わせて利用する、本発明のその他の実施形態が可能である。
【発明を実施するための最良の形態】
【0020】
本発明は、例示的な通信システムに関して下で説明される。例えば、(1つまたは複数の)サーバおよび/(1つまたは複数の)データベースを使用するシステムを用いた使用に大変適しているものの、本発明は任意の特定のタイプの通信システムまたはシステム要素の構成を用いた使用に限定されない。さらに、本明細書で使用される場合、用語「データベース」は関係データベース・システムだけでなく、ハードウェアと、RAM内のソフトウェアまたはハードディスク上のソフトウェアの両方で利用可能な任意のコンピュータ記憶機構を含み得る。当業者は、開示された技術は、SIP生残り可能なネットワークを維持することが望まれる任意の通信適用業務において使用され得る点を理解されよう。
【0021】
本発明の例示的なシステムおよび方法は、解析ソフトウェア、モジュール、および関連する解析ハードウェアに関しても説明される。しかし、本発明を不必要にあいまいにすることを避けるために、以下の説明は、ブロック図の形態で示される場合がある、よく知られている、またはそうでない場合は要約されるよく知られている構造、構成要素およびデバイスを省略する。かかるよく知られている構造の例は、IPインフラストラクチャ、レイヤ2スイッチ、レイヤIPルータ、IPレベルのファイアウォール、ネットワーク・アドレス変換(NAT)デバイス、SIPセッション・ボーダー・コントローラ(SIP Session Border Controller)(SBC)を制限なく含む。
【0022】
説明の目的で、様々な詳細は本発明の完全な理解をもたらすために記載される。しかし、本発明は、本明細書に記載された特定の詳細を超える様々な方法で実施され得る点を理解されたい。
【0023】
初めに図1を参照すると、本発明の少なくともいくつかの実施形態による例示的な通信システム100のアーキテクチャが説明される。通信システム100は、SIPユーザ・エージェント(UA)108などの終点をいくつかのその他の通信デバイスに接続する第1のネットワーク104を備える。UA108は、やはり第1のネットワーク104に接続された終点ならびに第1のネットワーク104に対して外側にあるその他の終点と通信するように適合され得る。例えば、UA108は、第2のネットワーク152に接続された外部の終点156と通信するように適合され得る。
【0024】
第1のネットワーク104および第2のネットワーク152は、任意のタイプの知られている通信ネットワークまたは通信機器の収集物に対応し得る。第1のネットワーク104は、ローカエル・エリア・ネットワーク(LAN)、広域ネットワーク(WAN)、またはOSIモデルによって定義されるような任意のその他のタイプのレイヤ3ネットワークおよびレイヤ4ネットワークを備え得る。
【0025】
第2のネットワーク152は、任意のタイプの情報トランスポーテーション媒体(information transportation medium)を備えることが可能であり、終点間でメッセージをトランスポートするために任意のタイプのプロトコルを使用することが可能である。インターネットは、多くのコンピュータと、多くの電話システムおよびその他の手段を介して接続された、世界中に配置されたその他の通信デバイスとからなるIPネットワークを構成する通信ネットワーク104の例である。第2のネットワーク152のその他の例は、標準の一般電話システム(Plain Old Telephone System)(POTS)、統合サービス・デジタル・ネットワーク(ISDN)、公衆交換電話網(PSTN)、LAN、WAN、セルラ通信ネットワーク、および当技術分野で知られている任意のその他のタイプのパケット交換ネットワークまたは回線交換ネットワークを制限なく含む。両方の通信ネットワーク104、152は、有線通信技術および/または無線通信技術を含み得る。
【0026】
UA108のSIP機能は、やはり第1のネットワーク104に接続される1つまたは複数のサーバ136によって提供され得る。UA108は、第1のネットワーク104の外部のその他のサーバまたは通信デバイスによって制御されることも可能である。例えば、第1のネットワーク104を第2のネットワーク152と接続するゲートウェイ148は、UA108にSIP制御能力を提供するように適合されることも可能である。
【0027】
SIP機能を提供することに加えて、サーバ136は、音声呼出しソフトウェア(例えば、VoIPソフトウェア)、ビデオ呼出しソフトウェア、IMソフトウェア、音声メッセージング・ソフトウェア(例えば、音声メッセージングおよびビデオ・メッセージング、IMメッセージングなどのマルチメディア・メッセージング)、記録ソフトウェア、IP音声サーバ、ファックスサーバ、ウェブサーバ、電子メールサーバ、(1つまたは複数の)コールセンター適用業務などを含み得る。
【0028】
本発明の実施形態によれば、サーバ136は、軽量ディレクトリ・アクセス・プロトコル(Lightweight Directory Access Protorol)(LDAP)、H.248、H.323、簡易メール転送プロトコル(Simple Mail Transfer Protocol)(SMTP)、インターネット・メッセージ・アクセス・プロトコル4(IMAP4)、統合サービス・デジタル・ネットワーク(ISDN)、E1/T1、HTTP、SOAP、XCAP、STUN、およびアナログ回線またはアナログ・トランクなど、様々なその他のプロトコルに関するインターフェースを含み得る。
【0029】
サーバ136は、PBX、自動呼出し分配(Automatic Call Distribution)(ACD)、企業スイッチ(enterprise switch)、またはその他のタイプの通信システム・スイッチ(例えば、ダイヤルされた電話番号に従って、それぞれが加入者電話に接続されている2つ以上の回路を一緒に接続することによって機能する中央交換内の複合機械(または、一連の複合機械)など、1つの電話からもう1つの電話に呼出しを経路指定することが可能な任意のデバイス)もしくはサーバ、ならびにメディア・サーバ、コンピュータ、付属物など、その他のタイプのプロセッサ・ベースの通信制御デバイスを含んでもよい。
【0030】
ゲートウェイ148は、PSTN;次世代ネットワーク;2G、2.5Gおよび3Gの無線アクセス・ネットワーク;またはPBXなど、異なる電気通信ネットワークの間で変換ユニットとして機能するために提供される。ゲートウェイ148の機能のうちの1つは、様々なネットワークのために異なる伝送技術および符号化技術を変換することである。エコー除去、DTMF、およびトーン送信機などのメディア・ストリーミング機能もゲートウェイ148によってサポートされ得る。ゲートウェイ148は、信号/メッセージを1つのネットワーク動作可能なパラダイム(例えば、伝送プロトコル)からもう1つのネットワーク動作可能なパラダイムにさらに変換する。
【0031】
UA108にSIP機能性を提供するために、サーバ136および/またはゲートウェイ148は、1つまたは複数のコントローラ140a−Nを備え得る。UA108は、一度に1つまたは複数のコントローラ140a−Nに登録するように適合され得る。本明細書で使用される場合、用語「登録する」および「登録」は、SIPレジスタ・メッセージの送信および肯定応答を含むがこれに限定されない、SIP登録およびネットワーク接続方法ならびにプロセスを指し、加入のための加入メッセージ、オプション・メッセージを使用したクエリ、ならびにSTUNプロトコル、HTTPクエリなどを使用したファイアウォール検出およびNAT検出などのその他の非SIP機構など、その他の機構を含み得る。
【0032】
コントローラ140a−Nは、サーバ136上に常駐している適用業務またはファームウェアに対応することが可能であり、コントローラ140a−Nは、制御されたUA108に向けられたSIPメッセージおよび制御されたUA108から受信されたSIPメッセージを処理するために使用され得る。コントローラ140a−Nによって処理されるSIPメッセージは、もう1つの終点156に向けられたUA108によって発生する発信SIPメッセージまたはもう1つの終点156によって発生し、UA108に向けられた着信SIPメッセージに対応し得る。コントローラ140a−Nは、通信システム100のアプリケーション層で動作することが可能である。
【0033】
本発明の少なくとも1つの実施形態によれば、UA108は2つ以上のコントローラ140a−Nに同時に登録することが可能であり得る。UA108が同時に登録されたコントローラ140のそれぞれは、異なる属性を備えることが可能であり、したがって、UA108に異なるSIP機能を提供することが可能であり得る。例えば、UA108は、拡張された拡張機能(すなわち、最新特徴セット)を使用する第1のコントローラ140aと、RFC3261を含むがこれに限定されない、SIPプロトコル上の1つまたは複数のIETF RFCに従った呼出し処理に関する標準のインターネット・エンジニアリング・タスク・フォース(IETF)に準拠するSIP拡張機能を使用する第2のコントローラ140bとに同時に登録することが可能である。
【0034】
同時登録構成では、UA108は、アクティブ・アクティブ登録またはアクティブ・スタンバイ登録のいずれかが可能であり得る。アクティブ・アクティブ登録では、UA108は、メッセージが一次コントローラ140から送信されているかまたは一次コントローラ140から着信しているかを決定せずに、いずれかのコントローラ140からSIPメッセージを受け取り、SIPメッセージをいずれかのコントローラ140に送信することが可能である。しかし、アクティブ・スタンバイ登録構成では、アクティブなコントローラ140が動作不能にならない限り、UA108はSIPシグナリングの目的でアクティブなコントローラ140だけを使用することが可能である。かかる構成では、メッセージがスタンバイ・コントローラ140から受信され、UA108が一次コントローラ140は動作可能であると確信する場合、UA108は一次コントローラ140を介して再度経路指定のためにSIPメッセージをスタンバイ・コントローラ140に送信し戻すことが可能である。
【0035】
本発明の別の実施形態によれば、UA108はコントローラ140a−Nとの優先順位登録を実行することが可能であり、それにより、UA108が第1のコントローラ140aが休止中であること、またはそうでない場合、SIP機能を提供するために利用不可能である(その場合、UA108は第2のコントローラ140bに登録することが可能である)ことを決定しない限り、UA108は第1のコントローラ140aに登録される。
【0036】
本発明のさらに別の実施形態によれば、同位層間(Peer−to−Peer)SIPネットワーク構成が用いられることが可能であり、その場合、UA108はもう1つの終点上または複数の終点上でコントローラ140に登録することが可能である。
【0037】
UA108は、メモリ112と、メモリ112内に記憶されたルーチンを実行するためならびに着信/発信SIPメッセージおよび媒体を処理するためのプロセッサ124とを備え得る。メモリ112は、発見モジュール116とコントローラのリスト120とを含み得る。発見モジュール116は、UA108を制御することが可能なコントローラ140を備える、システム100内のデバイスを発見するために用いられることが可能である。本発明の少なくともいくつかの実施形態によれば、発見モジュール116は、任意の利用可能なコントローラ140が応答し得る発見要求を送信するように適合され得る。コントローラ140から受信された(1つまたは複数の)応答(またはその欠如)に基づいて、発見モジュール116は、いくつかのコントローラ140を用いてリスト120を生成することが可能である。発見モジュール116は、次いで、それらのそれぞれの属性132に基づいて、コントローラ140の優先順位リストを備える順序付けされたリスト128を作成することが可能であり得る。UA108は、次いで、順序付けされたリスト128内のコントローラ140の順序に基づいて、どの(1つまたは複数の)コントローラ140に登録するかを決定することができる。
【0038】
コントローラ140の間で発見および裁定するための能力を提供することに加えて、発見モジュール116は、何らかの現在のネットワーク104の障害、サーバ136の障害、ゲートウェイ148の障害、またはUA108とその(1つまたは複数の)コントローラ140の間の関係に影響を与える可能性のある任意のその他のタイプの障害が存在するかどうかを決定するために、通信システム100の状態を監視するようにさらに適合され得る。本明細書でさらに詳細に議論されるように、発見モジュール116は、システム100およびその構成要素の状態を積極的にかつ反応的に管理するように適合され得る。システム100の状態を積極的に監視すると同時に、発見モジュール116は、システム100の状態を決定するよう、所定の論理と共に非対話型(non−dialog)SIPメッセージを用いることが可能である。UA108は、システム100の状態を反応的に監視し始めるために、もう1つのシステム100の構成要素(例えば、ゲートウェイ148)によってさらにプロンプト表示される(prompted)ことが可能である。UA108にシステム100の状態を監視するための能力を提供することは、処理負担をルータなど、もう1つの構成要素に委ねるのではなく、UA108の論理が使用される先行技術のネットワーク監視技術からの逸脱である。これは、各UA108がシステム100の状態を独立して管理することを可能にする驚くべき利点を提供し、システム100のより多くの観察(view)を提供し、各UA108がそのコントローラ140に関してその個人記録を維持することを可能にする。すなわち、UA108およびシステム100内のその他の構成要素(例えば、ゲートウェイ148および/またはサーバ136)からの情報の組合せを使用することによって、システム100の状態のより正確かつ最新の状況が取得され得る。UA108が、(例えば、システム100の全域でIPパケットを送信することによって)ネットワーク層の動作可能性を、(例えば、システム100の全域でSIPメッセージを送信することによって)SIPアプリケーション層の動作可能性を、そしてそれら2つの集約の動作可能性を点検することを可能にすることは、システムの健全さの状況の精度をさらに増大し得る。
【0039】
サーバ136およびゲートウェイ148は、システム100の状態を評価するために発見モジュール144も備え得る。より詳細には、各発見モジュール144は、様々な同位構成要素(例えば、発見モジュール144を備えるデバイスに隣接するシステム100の構成要素)ならびに遠端構成要素(例えば、発見モジュール144を備えるデバイスに隣接しないシステム100の構成要素)の状態を独立して監視するために使用されることが可能である。各発見モジュール144は、システム100およびその中の構成要素の状態を独立して評価するために使用され得る。
【0040】
本発明の少なくともいくつかの実施形態によれば、発見モジュール144は、クラスタ化された方法で(すなわち、複数のサーバ136が「どのコントローラを使用するか」を問う終点からの質問に回答することが可能であり得る)またはシングルトン(singleton)として、ユーザ・エージェント108またはその他の終点156によってアクセスされていることが可能なソフトウェア・モジュールを備え得る。発見モジュール144は、多数のプロトコルを使用して実施されることが可能であり、一度に複数のプロトコルをさらにサポートすることが可能である。より詳細には、各発見モジュール144は、SOAP/HTTP、SXAP(SOAPのようなHTTP標準に関するもう1つのXML)のうちの1つまたは複数および(例えば、SIPメッセージの本体内にコントローラ140のリストを提供することによって)SIPさえサポートするように適合され得る。
【0041】
発見モジュール144は、ルール処理により、所与のユーザ・エージェント108に関する(発見モジュール144が要求に応じてユーザ・エージェント108に最終的に提供することが可能な)コントローラの独自のリストを決定するように適合され得る。ルール処理は、ハードコードされること(例えば、Java(登録商標)コード)が可能であり、またはXMLなどのスクリプトを取るルールエンジンを備えることが可能であり、それを解析して、コントローラのリストを要求しているユーザ・エージェント108にとってどれが最も適切なコントローラ140であるかを決定することを望む場合、それを実行するルールエンジンを備えることが可能である。アルゴリズム内に含まれ得るルールのタイプは、以下を含むが、これらに限定されない。
(1)ユーザ・エージェント108にとって最も適切なコントローラ140を決定するために(例えば、ネットワークを介して送信されたIPパケットを解析することによって)未処理のネットワーク・トポロジーを解析するネットワーク・ローカリティ(network locality)検査。かかるルールセットは、発見モジュール144が要求しているユーザ・エージェント108のIPを検査し、次いで、最良の利用可能な帯域幅を列挙する帯域幅記憶装置に対してルックアップを行い、次いで、ユーザ・エージェント108にとって最良の整合コントローラ140を選択する帯域幅管理機能を含み得る。この場合、最良の整合帯域幅は、ユーザ・エージェント108に対する近接性において最も近く、利用可能な帯域幅を有するコントローラ140を備えるサーバ136に対応する可能性があろう。
(2)ユーザ・エージェント108がセキュリティ目的で特定のサーバ136/コントローラ140に接続すべき一定の事例が存在し得るため、セキュリティ検査アルゴリズム。例えば、CEOの電話は、絶えず監視されて、数秒内にパッチされる、最高に保護されたサーバだけに接続することを望む可能性がある。他方で、技術サポートの電話は、セキュリティ・パッチが24時間以内に処理される、サーバ・ファームを形成するサーバ136のセットのうちの任意の1つに接続することが可能にされ得る。
(3)発見モジュール144が、特定のユーザにサービスを提供することができる(1つまたは複数の)サーバ136のマッピングを検査することが可能なユーザ割当てアルゴリズム。地理的冗長性構成においてなど、複数のサーバが存在する場合、複数のコントローラ140が応答の際に戻されることが可能である。
(4)発見モジュール144がスクリプト内に、すべての販売員が1つのサーバ136を使用し、すべての技術サポート員がもう1つのサーバを使用することを示す、カスタマ提供されたフックを有し得る事業規則アルゴリズム。
(5)要求しているユーザ・エージェント108が、コントローラ140を探すときにそのモード(例えば、音声、インスタント・メッセージング(IM)、ビデオなど)を示した場合に開始され得るデバイス・モーダリティ・アルゴリズム。このアルゴリズムを用いる場合、発見モジュール144はユーザにほとんどのタイプのモードを提供する最良のコントローラ140を選択するために内部能力割当てを調べることが可能である。例えば、音声およびIMを行うことができるユーザ・エージェント108は、音声サーバだけでなく、これらの機能の両方をサポートすることが可能なサーバ136を好むであろう。
(6)要求しているユーザ・エージェント108が、そのユーザ・エージェント108が特定のプロトコル・セットをサポートすることを識別する場合に開始され得るプロトコル互換性アルゴルズム。SIPは多数のプロトコル拡張機能であるため、これは特にSIPにおいて有用である。要求しているユーザ・エージェント108がコントローラ140を要求する場合、そのユーザ・エージェント108は自らがサポートするプロトコル特徴(例えば、プレゼンス加入または一般的な加入)を示すことが可能であり、サーバはそのタイプのユーザ・エージェント108に関する最良の整合を発見することが可能である。
【0042】
次に図2を参照すると、本発明の少なくともいくつかの実施形態によるSIPコントローラ140の発見および登録方法が説明される。方法は、通信システム100内のUA108などの終点によって実行され得る。通信システム内の各UA108は、異なるコントローラ140を発見して、それらに登録するように適合され得る。方法は、終点が発見メッセージを送信する(ステップ204)場合、開始される。本発明の少なくとも一実施形態によれば、発見メッセージは、システム100内の1つまたは複数のその他の構成要素のSIP機能性を試験する/問い合わせるために、システム内の1つまたは複数のその他の構成要素に送信され得るSIPメッセージ(例えば、オプション・メッセージ、通知メッセージ、または加入メッセージ)を含む任意の知られているタイプの発見メッセージを備える。
【0043】
発見メッセージが、コントローラ140を備えるシステム100内のその他の構成要素(例えば、サーバ136および/またはゲートウェイ148)によって受信された場合、構成要素は応答メッセージを用いて発見メッセージに応答する。あるいは、発見メッセージに応答するために、現在、構成要素が利用可能でない場合、開始している終点に応答メッセージは送信されない。(1つまたは複数の)コントローラ140の応答メッセージは、次いで、開始している終点で受信される(ステップ208)。終点がこれらの応答を受信すると、または発見メッセージに向けられた応答がない場合、終点はコントローラのリスト120を生成するためにその発見モジュール116を用いることになる。
【0044】
応答メッセージは、それぞれの応答しているコントローラ140の属性132も含み得る。応答メッセージ内に含まれた属性情報の例は、対応するサーバ136またはゲートウェイ148の処理能力、コントローラ140によって提供されるSIP拡張機能(すなわち、SIP機能)、コントローラ140に現在登録されているUAの数、終点に対するコントローラ140の近接性(すなわち、終点と対応するデバイスの間のホップ数)などを制限なく含む。終点の発見モジュール116は、順序付けされたリスト128内のコントローラ140の順序を裁定するために属性情報を利用することが可能である(ステップ212)。発見モジュール116は、コントローラ140の順序を決定するために任意のタイプの知られている裁定アルゴリズムを用いることが可能である。例えば、発見モジュール116はすべてのコントローラ140に関して列挙された属性のすべての最適化を試みることが可能である。あるいは、発見モジュール116は、終点のニーズに最も適している選択された属性を有するコントローラ140を順序付けされたリスト128内の最高に配置することができる。
【0045】
終点の発見モジュール116がコントローラの順序付けされたリスト128を生成した後で、発見モジュール116は、終点が登録することになる1つまたは複数のコントローラ140を選択する(ステップ216)。コントローラ140は、コントローラの順序付けされたリスト128内のそれぞれの順序に基づいて選択され得る。本発明の少なくとも一実施形態によれば、発見モジュール116は、同時に登録するために、サーバ136からコントローラ140を選択して、ゲートウェイ148からコントローラ140を選択することが可能である。アクティブ・スタンバイ構成では、終点は、一次コントローラとしてサーバ136のコントローラ140を選択して、二次コントローラすなわちバックアップ・コントローラとしてゲートウェイ148のコントローラ140を選択することが可能である。
【0046】
(1つまたは複数の)コントローラ140の選択に続いて、終点は選択された(1つまたは複数の)コントローラ140に登録することが可能にされる(ステップ220)。本発明の少なくともいくつかの実施形態によれば、終点は異なる能力と異なるSIP特徴とを有するコントローラ140に登録するように適合され得る。例えば、終点は、拡張されたSIP拡張機能を使用して第1のコントローラ140と、かつ標準のSIP拡張を使用して第2のコントローラ140と同時に登録することが可能にされ得る。拡張されたSIP拡張機能は、第2のコントローラ140を介して達成可能でない追加の特徴を提供するために第1のコントローラ140によって使用されることが可能である。
【0047】
SIPレジスタ・メッセージ、加入メッセージ、もしくはオプション・メッセージ、またはその他のSIPシグナリングは、一次コントローラ140が依然としてオンラインであり、SIPメッセージングを円滑にするために利用可能であるかどうかを検出するために送信されることが可能である。例えば、SIPレジスタ・メッセージは、登録プロセスを開始するために、終点によって、選択された(1つまたは複数の)コントローラ140に送信され得る。終点にその(1つまたは複数の)コントローラ140と登録する能力を提供することに加えて、SIPレジスタ・メッセージは、コントローラ140に関するハートビートとして使用されることも可能である。SIPレジスタ・メッセージの伝送の頻度は、システム要求に基づいてユーザ構成可能であり得る。すなわち、終点は終点が登録された任意のコントローラ140にリフレッシュ登録を送信することができる。
【0048】
アクティブ・スタンバイ構成およびアクティブ・アクティブ構成の両方で、終点は、その選択されたコントローラ140のすべてに同時に登録することが可能である。その動作の間、終点は(後続のSIPレジスタ・メッセージの定期的な伝送を介して)コントローラ140との同時アクティブ登録の維持を試みることが可能である。アクティブ・アクティブ構成では、終点は終点が登録されたコントローラ140のうちのいずれかにSIPメッセージを送信することおよび/または終点が登録されたコントローラ140のうちのいずれかからSIPメッセージを受信することが可能にされ得る。かかる構成では、終点は2つ以上のコントローラ140と同時に登録されることになる。この二重登録は、終点が登録されたコントローラ140のうちの任意の1つ(例えば、第1のコントローラ140a、第2のコントローラ140b、第3のコントローラ140cなど)からの着信SIP要求(例えば、SIP要請メッセージ)を可能にすることになる。終点がアクティブ・アクティブ・コントローラ・モデルを使用する方針を用いて構成される場合、終点は予め失敗したコントローラ140からの着信呼出しを、それがサービス中のコントローラ140から来たものであるかのように見なす可能性がある。これが発生する場合、終点は、失敗したサーバがサービスに戻ったかどうかを検出するためにアルゴリズムを再度試みることができる。終点は、任意のコントロール140からのかかるSIPメッセージの受信を可能にするように構成されることになる。本発明の少なくともいくつかの実施形態によれば、終点は複数の登録を独立した登録として扱い、それぞれを本明細書で議論される登録論理を用いて維持することになる。より詳細には、終点は同じAORを各コントローラに登録することが可能にされることになるが、終点の実装は異なるAORに対応するためにフレキシブルであり得る。これはまたアクティブ・スタンバイ構成に関しても当てはまる。
【0049】
他方で、アクティブ・スタンバイ構成では、終点は、発信呼出しを経路指定して、その一次コントローラ140から着信呼出しを受信することだけが可能にされ得る。動作可能である間、この一次コントローラ140は、アクティブな呼出しコントローラ140と呼ばれる場合もある。終点が登録されたその他の(1つまたは複数の)コントローラ140は、非アクティブなコントローラまたはスタンバイ・コントローラと呼ばれる場合がある。
【0050】
アクティブ・スタンバイ構成では、終点がその一次モードにある(すなわち、終点が一次コントローラ140はアクティブであると確信する)間に終点が二次コントローラ140すなわちスタンバイ・コントローラ140から着信呼出しを受信する場合、終点は、
(1)100試みメッセージを用いて二次コントローラ140に応答する、
(2)一次コントローラが依然としてオンラインであり、SIPメッセージを円滑にするために利用可能であるかどうかを判断するために、一次コントローラ140に登録リフレッシュを送信する、
(3)一次コントローラ140が依然としてオンラインである場合、終点は305リダイレクト応答(すなわち、使用プロキシ)を二次コントローラ140に送信することになる。305リダイレクト応答は、二次呼出しコントローラを介して呼出しを拒否して、一次コントローラ140を介して二次コントローラ140がシグナリングを再経路指定することを要求することになる。そして
(4)一次コントローラがもはやオンランでない場合、終点は受信された呼出しに標準の呼出し処理を提供することになる。このプロセスの一環として、終点は一次コントローラ140から二次コントローラ140にフェイルオーバして、二次コントローラ140とのその登録をリフレッシュすることになる。
【0051】
アクティブ・スタンバイ構成では、終点がフェイルオーバ・モードで動作している間に(すなわち、その一次コントローラ140の状態が休止中であり、アクティブなコントローラとして二次コントローラ140を使用しているという仮定の下で)終点がその一次コントローラ140から着信呼出しを受信した場合、呼出しは拒否され得る。
【0052】
障害状態の間または終点がシステム100の構成要素は休止中であると確信する任意のその他の時点で、終点は一次コントローラ140とのリアルタイムの通信セッションの確立を試みないことになる。加えて、終点はコントローラの順序付けされたリスト128上の二次コントローラ140すなわち次のコントローラ140にフェイルオーバすることになる。生残り可能な(すなわち、二次、三次、またはバックアップ)コントローラ140を介して経路指定された呼出しシグナリングは、障害の期間中、終点のユーザが新しい呼出しを行い、その呼出しを受信することを可能にすることになる。
【0053】
下でさらに詳細に説明されるフェイルオーバ/フェイルバック・プロセスの一環として、終点はアクティブなコントローラ140に関するアドレスを識別して、コントローラ140によってサポートされる属性および関連する特徴をさらに導き出すことになる。すなわち、終点は終点が登録されたコントローラ140が、例えば、「拡張されたSIP/専有権のあるSIP」として指定されるかまたは「基本的なSIP」として指定されるかを指定するように適合され得る。終点の発見モジュール116は、以下の論理を使用して、コントローラが拡張されたSIPを使用するかまたは基本的なSIPを使用するかを発見するように適合され得る。
(1)フェイルオーバ時またはフェイルバック時に、終点は各コントローラ140とのその登録をリフレッシュまたは更新することになる、
(2)そのプロセスの一環として、終点は二次コントローラ140を用いてすべての一次コントローラ140の特徴パッケージへの再加入を試みることになる、
(3)終点が加入要求を二次コントローラ140に送信する場合、二次コントローラが基本的なSIP動作だけをサポートするならば、二次コントローラは特徴加入要求を認識しないことになる、
(4)簡易二次コントローラ140は、「クライアント誤り405方法は可能にされない」を用いて応答することになる。
【0054】
終点は標準のIETF SIPに準拠するコントローラ140として二次コントローラ140を識別するためにこの情報を使用することが可能である。終点は、次いで、フェイルオーバ・モードで動作する間、そのユーザ・インターフェース(UI)上に基本的なSIP特徴だけを表示することになる。(例えば、アクティブなコントローラ140が加入要求に適切に応答したため)アクティブなコントローラ140が「拡張されたSIP」と指定される場合、終点は、呼出しおよび特徴処理のために拡張された拡張機能を有するSIPを使用して、互換性のあるUIを表示することになる。
【0055】
アクティブ・スタンバイ構成で提供され得る追加の特徴は、制限なく以下を含む。
(1)終点は非アクティブなコントローラ140に発信呼出しを決して経路指定しないことになる、
(2)終点がアクティブなコントローラ140からスタンバイ・コントローラ140にフェイルオーバする場合、予めアクティブなコントローラ140は非アクティブと指定されることになり、予め非アクティブなコントローラはアクティブと指定されることになる、
(3)終点は、指定されたコントローラ140にフェイルオーバする前にすべてのアクティブな呼出しが完了するまで待つことになる。すなわち、(1つまたは複数の)アクティブな呼出しが完了するまで(すなわち、終点が(1つまたは複数の)アクティブな呼出しに関してネットワーク104からバイ(BYE)メッセージを受信するまで、または発呼側が呼出しを中止するまで)、新しい着信呼出しは、新しく指定されたアクティブなコントローラ140から終点によって受け入れられないことになる。同様に、フェイルオーバが完了するまで、新しい送信呼出しは可能にされないことになる。そして、
(4)終点が二次コントローラ140を使用している間、終点が休止中の一次コントローラ140から任意のシグナリング・メッセージを受信する場合、休止中と印された一次コントローラ140からのシグナリング・メッセージは無視されることになる。しかし、このルールには1つの例外が存在し得る。すなわち、終点が終点に再登録するように伝える通知メッセージをその一次コントローラ140から受信した場合、終点はその登録のリフレッシュを開始することになるか、またはリフレッシュを試みることになる。この場合、終点は、上で説明された標準のSIP処理を使用して通知に応答することになる。
【0056】
終点がそのそれぞれの(1つまたは複数の)コントローラ140に登録した後、方法は終了する(ステップ224)。
【0057】
次に図3を参照すると、本発明の少なくともいくつかの実施形態による通信システム100の状態決定方法が説明される。生残り可能な構成では、ゲートウェイ148が一次シグナリング経路または二次シグナリング経路を介していつ呼出しシグナリングを経路指定するかを検出するように備えられることが重要であり得る。方法は、ゲートウェイ148が通信システム100内のもう1つの構成要素にSIPオプション・メッセージを送信する(ステップ304)場合、開始される。かかる構成要素は、SIP対応構成要素に対応し得る。構成要素は同位構成要素(すなわち、ゲートウェイ148に隣接する構成要素)および/または遠端構成要素(すなわち、構成要素とゲートウェイ148の間に少なくとも1つの中間構成要素を有する構成要素)にさらに対応し得る。本発明の少なくともいくつかの実施形態によれば、SIP遠端構成要素の積極的な監視は、通常、システム100の管理者が、中間構成要素が中間構成要素の同位を監視することができないことを知る場合だけ、慎重に実行されるべきである。本発明の実施形態によれば、ゲートウェイ148は、「最大−転送=0」設定を用いてSIPオプション・メッセージを送信することが可能であり、それにより、オプション・メッセージが単一のホップを超えるホップを横断し(traverse)ない(すなわち、オプション・メッセージは同位構成要素を対象とする)ことを確実にする。
【0058】
当業者に理解され得るように、SIPオプション・メッセージを用いる監視技術が本明細書で説明されるが、通信システム100およびその中の構成要素の状態を監視するために任意のその他のタイプの非対話型SIPトランザクションが使用され得る。より詳細には、一般的なSIPメッセージ(例えば、情報方法、メッセージ方法、または無効SIPメッセージすら)は、任意タイプのSIPベースの応答を起動するために送信されることが可能である。ゲートウェイ148によって送信されたSIPメッセージは、メッセージ受信者によって実行されることになる命令を含んでもよい。例えば、SIPメッセージは、ゲートウェイ148および、同位構成要素など、ゲートウェイ148によって監視される任意のその他の構成要素の健全さ、ならびにゲートウェイ148の報告された健全さに基づいて受信者によって講じられることになる処置を報告する拡張可能マークアップ言語(XML)メッセージを備えて生成され得る。
【0059】
ゲートウェイ148がSIPオプション・メッセージを送信した後で、ゲートウェイ148は、応答の受信を待つ(ステップ308および312)。ゲートウェイ148が応答の受信を待つ期間は、システム100の特性に応じて異なってよい。本発明の少なくとも一実施形態によれば、ゲートウェイ148が待つ時間の長さは、要求が送信された後でSIP応答が所定の秒数内に受信されない場合、(SIP要請メッセージなど)SIPシグナリング・トランザクションを取り消すSIPタイマBまたはSIPタイマF(SIPタイマBおよびFは、そのコンテンツ全体がこの参照により本明細書に組み込まれているRFC3261で定義される標準のSIPタイマである)などのSIPタイマ機能を実施することによって決定され得る。任意のSIP応答(100試みすら)が受信された場合、タイマBまたはタイマFは取り消されるか、または短絡される。しかし、タイマBが始動した場合、ゲートウェイ148は有害な(offending)SIPトランザクションを取り消して、代替の経路を使用して要求の経路指定を試みることを要求される可能性がある。本発明の少なくともいくつかの実施形態によれば、ゲートウェイ148によって知られているすべての経路指定アドレスが使い果たされている場合、SIPゲートウェイ148は、408要求タイムアウトを用いて、元のSIPシグナリング・トランザクションに応答することができる。
【0060】
(例えば、実際の応答としてまたは応答は所定の期間内に受信されなかったという決定として)応答が受信されると、方法は、ゲートウェイ148が応答は障害状態に対応するかどうかを決定する(ステップ316)ために発見モジュール144を用いることにより継続する。応答は、以下の条件のうちのいずれかが満たされる場合、ネットワーク104またはシステム100の構成要素が失敗したことを表示することが可能である。
(1)オプション監視要求はタイムアウトにより失敗する、
(2)トランザクション・タイムアウトおよび/または(要請トランザクションに関する)SIPタイマBタイムアウトにより所定の数の(例えば、5つの)連続SIP要求トランザクション障害が発生する、または
(3)監視が終端間(すなわち、最大−転送>1)ではなくホップ・バイ・ホップ(すなわち、最大−転送=1)で実行されており、加えて、アドレスが少なくとも「後で再度試みる」ヘッダ内で特定された期間に対して「過負荷」と印されている場合およびその場合に限り、オプション監視要求に対して「後で再度試みる(Retry−After)」ヘッダを用いて任意の400クラス応答または500クラス応答が受信される。
【0061】
条件(3)に関して、アドレスのIPアドレスを含む既存の対話は、障害が発生するまでそのアドレスを引き続き使用すべきであるが、終点はそのアドレスが回復されるまで、新しい対話に関してそのアドレスを使用すべきではない。既存の対話がIPアドレスの代わりにホスト名を使用している場合、各トランザクションに関するそのホスト名の分解(resoltion)が行われることになり、戻されたアドレスは利用可能な最高の優先順位のアドレスになる。ホスト名が単一のIPアドレスだけに分解し、そのアドレスが「過負荷」と印される場合、要求が送信されるべきである。条件(3)の最終的な影響は、ゲートウェイ148の発見モジュール144は3つの状態、すなわち、利用可能、休止中、および過負荷を認識すべきであるというものである。過負荷と印されたアドレスは、引き続き対話内で後続の要求を受信するが、新しい対話要求は受信しない。
【0062】
オプション・メッセージに対する応答に基づいて、ゲートウェイ148の発見モジュール144が、障害状態は存在せず、システム100は通常の動作状態にあることを決定する場合、発見モジュール144は、命令が応答内に含まれるかどうかを決定すること(ステップ320)によって継続することになる。発見モジュール144は、応答内に含まれたまたは応答に添付された(すなわち、メッセージのヘッダ内もしくはフッタ内の)実行可能命令に対する応答を解析することが可能である。命令が応答内に含まれる場合、命令は実行される(ステップ324)。その後、または応答が命令を含まなかった場合、発見モジュール144は、サーバ136など、応答している構成要素の動作を反映するために、システム100の状態に関してその記録を更新すること(ステップ328)によって継続する。ネットワークの状態が更新されると、方法は発見モジュール144が新しいメッセージを送信する時間かどうかを決定すること(ステップ332)により継続する。より詳細には、ゲートウェイ148は、その他のSIPサーバ136がアクティブであるか否かを決定するためのハートビート機構として、その他のSIPサーバ136に対してSIPオプション・メッセージの定期的な伝送を使用することができる。オプション・メッセージは、所定の間隔でシステム100のその他の構成要素に送信され得る。所定の間隔の長さは、SIPタイマBまたはその改変形態を実施することによって決定され得る。より詳細には、オプションの監視は、ゲートウェイ148が障害状態を検出するか否かに応じて、異なる間隔で実行されてよい。
【0063】
本発明の少なくともいくつかの実施形態によれば、SIPオプション・メッセージに関する積極的な監視間隔は、約60秒から約100,000秒の範囲内で構成可能であり得、後続の監視の試みの間で構成された値の75%から125%の均一のランダム時間を使用すべきである。例えば、積極的な監視間隔が60秒に設定される場合、オプション・メッセージの伝送間の実際の間隔は、45秒から75秒の間で均一に分散され得る。積極的な監視プロセスにおけるこの意図的なジッタの導入は、要求が依然として非同期化されることを可能にし、それにより監視される構成要素(すなわち、サーバ136)上の負荷を経時的に一様に拡散させる。一実施形態では、積極的な監視間隔は、約900秒または15分に構成されることが可能である。
【0064】
本発明の少なくともいくつかの実施形態によれば、SIPオプション・メッセージに関する反応的な監視間隔は、約10秒から約3,600秒の範囲内で構成可能であり得、後続の監視の試みの間で構成された値の75%から125%の均一のランダム時間を有することも可能である。(積極的な監視と対照的に)反応的な監視に対する個別のタイマの提供は、ゲートウェイ148が、監視されている現在休止中の構成要素がいつ再度利用可能になるかをより迅速に検出することを可能にする。一実施形態では、反応的な監視間隔は約120秒に構成され得る。
【0065】
本発明の例示的な実施形態はSIPタイマBの使用に関して説明されているものの、任意の範囲の値は、その値の均一のランダム時間変更の有無にかかわらず、本発明の原理から逸脱せずに実施され得る。加えて、監視間隔は、外部の事業論理フックに基づいて変更され得る。例えば、監視機構が帯域幅管理システムにフックされる(hooked)場合、監視システムは、ネットワーク内の利用可能な帯域幅を表すいくつかの係数によって監視間隔をさらに調整することが可能である。
【0066】
ステップ316を再び参照すると、発見モジュール144が応答は障害状態に対応することを決定する場合、発見モジュール144は障害を反映するために、システム100の状態のその記録を更新することになる(ステップ336)。この構成要素の障害を検出する結果として、特に、失敗した構成要素が一次通信経路内に常駐する場合、ゲートウェイ148はフェイルオーバして、フェイルオーバ状態で動作を開始することになる。
【0067】
ゲートウェイ148の発見モジュール144のフェイルオーバの間、発見モジュール144は、休止中として識別された構成要素にオプション・メッセージを引き続き送信することによって、システム100内の構成要素を反応的に監視し始めることになる(ステップ340)。この反応的な監視は、ゲートウェイ148の発見モジュール144が、構成要素がいつオンラインに戻るかを検出することを可能にする。反応的な監視が始まると、ゲートウェイ148は構成要素を積極的に監視することを中断して、反応的な監視ルールを適用し始めることになる。より詳細には、反応的な監視の間、ゲートウェイ148の発見モジュール144は、監視された構成要素が利用可能であるかまたは休止中であるかを決定するために保守試験を開始することが可能である(ステップ344)。保守試験は、積極的な監視アルゴリズムに類似した監視アルゴリズムを用いてよい。ゲートウェイ148の発見モジュール144は、フェイルバックまで(すなわち、構成要素の状態が休止中から利用可能に変更するまで)(ステップ348)この保守試験を引き続き適用することになる。保守試験の間、ゲートウェイ148は、現在、休止中と印された構成要素に任意のタイプのSIP要求(例えば、要請、加入、通知など)を送信することが可能である。以下の状態のうちの1つまたは複数が適用される場合、ゲートウェイ148の発見モジュール144は、その構成要素を引き続き休止中と印すことになる。
(1)要請メッセージが送信された後にSIPタイマBが始動する、
(2)ゲートウェイ148が408要求タイムアウト応答を受信する、
(3)SIP要求トランザクションがタイムアウトになる、または
(4)要求の送信を試みる間、ネットワーク104またはトランスポート層の誤りが発生する。
【0068】
保守試験の間に、上記の状態のうちのいずれも適用されない場合、ゲートウェイ148の発見モジュール144は、フェイルバックが発生したと決定することになり、方法はステップ328に進むことになる。本発明の少なくともいくつかの実施形態によれば、反応的な監視および保守試験は、監視されている構成要素が、503「サービス利用不可能」を除く任意のSIP応答を用いて2つの連続するオプション要求の試みに応答するまで、引き続き適用されることになる。これらの状態が満たされると、ゲートウェイ148は、構成要素がサービス中に戻ったと見なすことができ、積極的な監視アルゴリズムに戻ることが可能であり、適切な簡易ネットワーク管理プロトコル(SNMP)事象を生成して、適用可能である場合、現在アクティブな構成要素を利用し始めることが可能である。
【0069】
当業者によって理解され得るように、ゲートウェイ148は、経路の再割当て情報を維持することが可能な唯一のシステム100の構成要素ではない。むしろ、いかなるSIPネットワーク要素も経路の再割当て情報などを含むように適合され得る。例えば、UA108などの終点は、いくつかの構成要素が休止中として識別される場合に使用され得る通信経路を列挙する経路の再割当て表を維持することも可能である。
【0070】
次に図4を参照すると、本発明の少なくともいくつかの実施形態による反応的な監視方法が説明される。方法は、ゲートウェイ148がサーバ136または類似のシステム100の構成要素から要求を受信する(ステップ404)場合に開始する。ゲートウェイ148は、受信された要求を通常の形で処理する(ステップ408)。より詳細には、ゲートウェイ148は、送信している構成要素が実際にサービス中であるかどうかをまず決定せずに、その構成要素がサービス中であるかのように要求を処理することが可能である。
【0071】
その後、ゲートウェイ148は、その当初維持された状態表に基づいて、送信している構成要素が実際に休止中と印されているかどうかを決定する(ステップ412)。構成要素が休止と印されていない場合、方法は終了する(ステップ424)。そうでない場合、ゲートウェイ148は、構成要素にSIPオプション・メッセージを送信することによって、その保守試験を開始することになる(ステップ416)。ゲートウェイ148は、次いで、構成要素の状態のその記録を更新することが可能である(ステップ420)。この保守試験プロセスおよび状態の更新プロセスは、その時点で方法が終了する(ステップ424)、構成要素がサービス中に戻ったと決定されるまで繰り返される。
【0072】
図5を参照すると、本発明の少なくともいくつかの実施形態による、フェイルオーバ状態およびフェイルバック状態の間のゲートウェイ148の動作が説明される。この特定の方法では、ゲートウェイ148に関連するコントローラ140は、生残り可能な終点に関する二次コントローラ140すなわちバックアップ・コントローラ140に対応し得る。方法は、ゲートウェイ148が生残り可能な終点に関する着信呼出しを受信する(ステップ504)場合に開始される。ゲートウェイ148は、次いで、一次シグナリング経路が使用のために利用可能であるかどうかを決定する(ステップ508)。本発明の少なくともいくつかの実施形態によれば、ゲートウェイ148は、このステップの間、その内部構成要素状態表を参照することが可能である。
【0073】
一次シグナリング経路が動作可能であると決定された場合、ゲートウェイ148は、一次経路を介して目標終点に受信された信号を経路指定し(ステップ512)、その後、方法は終了する(ステップ536)。しかし、ゲートウェイ148が、一次シグナリング経路が何らかの理由で利用不可能である(例えば、ネットワーク104、サーバ136、または一次シグナリング経路上のその他の構成要素が休止中である)ことを決定した場合、方法は、ゲートウェイ148が二次シグナリング経路を介して目標終点に信号を送信することにより継続する(ステップ516)。この特定のステップは、二次シグナリング経路も利用不可能でないという仮定に基づいて実行される。ゲートウェイが二次シグナリング経路も利用不可能であることを決定する場合、失敗した(1つまたは複数の)構成要素を迂回するもう1つのバックアップ・シグナリング経路が選択されて、終点に信号を送信するために使用される。
【0074】
呼出し信号が二次シグナリング経路を介して目標終点に送信された後、ゲートウェイ148は、305リダイレクト応答(使用プロキシ)メッセージが終点から受信されたかどうかを決定するのを待つ(ステップ520)。アクティブ・スタンバイ構成では、終点が一次シグナリング経路は動作可能であると確信する場合、二次経路を介して呼出し信号を受信している終点は、305リダイレクト応答を送信することが可能である。この確信は、ゲートウェイ148ではなく、終点で実行される状態監視動作に基づくことになる。これにより、システム100の異なる見通しに基づいて、終点はシステム100内の1つまたは複数の構成要素に関して印された異なる状態を有することが可能である。したがって、305リダイレクト応答が、呼出し信号のそのリダイレクトに基づいて、二次経路を介してゲートウェイ148によって受信された場合、ゲートウェイ148は一次シグナリング経路を介して呼出し信号にリダイレクトを試みることになる(ステップ524)。呼出し信号の成功裏の伝送により一次シグナリング経路が利用可能であると決定される場合(ステップ528)、方法はステップ536で終了する。呼出しが一次シグナリング経路の利用不可能性により拒否された場合、呼出しは拒否されるかまたは二次シグナリング経路を介して送信し戻されることが可能である(ステップ532)。加えて、ゲートウェイ148は、一次シグナリング経路の状態のその観察を再検査するよう目標終点に命令する通知メッセージを目標終点に送信することが可能である。その後、またはリダイレクト応答メッセージが終点から受信されない場合、方法は終了する(ステップ536)。
【0075】
次に図6を参照すると、本発明の少なくともいくつかの実施形態による、システム100の状態決定の終点方法が説明される。当初、終点(例えば、生残り可能なUA108)は通常の状態で動作する(ステップ604)。終点は、次いで、ネットワーク障害が検出されたかどうかを決定するためにその発見モジュール116の論理を用いる(ステップ608)。生残り可能な構成では、終点がいつフェイルオーバまたはフェイルバックするかを検出することが可能であることが有用である。本発明の少なくともいくつかの実施形態によれば、終点によって使用される発見モジュール116の論理は、以下の事象のうちの1つまたは複数が発生する場合、ネットワーク障害が発生したことを決定することになる。
(1)終点は、終点が登録しようと試みているすべてのコントローラ140(例えば、その一次コントローラおよび二次コントローラ140)からのハートビートとしてSIPレジスタ・メッセージに対する応答を受信しない、
(2)終点はSIP要請メッセージに対する応答を受信せず、SIP要請メッセージは、発信呼出しを設定することを試みる通常のプロセスにおいて送信されている可能性がある、
(3)終点は、新しいSIP対話変更または中間対話変更の通常の作成のために送信された任意のSIPシグナリング・メッセージに対する応答を受信しない、
(4)終点は、その(1つまたは複数の)構成サーバからの(TCP/IP、HTTP、XML、もしくはSOAPなど、異なるタイプのプロトコルによって運ばれ得る)重要な要求、または障害に関係するデータを取り出すために使用されるデータ・サービスなど、任意のその他の帯域外の非通信サービスに対する成功裏の応答を受信しない。
【0076】
終点が自ら障害を検出しない場合、方法は、終点が障害を通知されたかどうかを決定することにより継続する(ステップ612)。通知は、終点で、ゲートウェイ148、サーバ136、またはシステム100の状態を監視することが可能なシステム100のいくつかのその他の構成要素から送信されたSIP通知メッセージの形で受信され得る。SIP通知メッセージは、終点がそのコントローラ140のすべてとのその登録をフェイルオーバ、再ブート、またはリフレッシュ/更新すべきであることを表示することが可能である(それにより、終点の論理を回避する)。通知が受信されない場合、方法はステップ604に戻る。
【0077】
しかし、(例えば、SIP通知メッセージの受信によって)終点がシステム100内の障害を通知された場合、終点は、障害通知が正確かどうかを決定する(ステップ616)。より詳細には、終点は、コントローラ140のうちのいずれかが非アクティブ、またはそうでない場合は、休止中と印されているかどうかを決定するために、その内部に維持されたコントローラのリスト120、128を検査することが可能である。ほとんどの場合、終点は単に通知メッセージの指示に準拠することになる。しかし、一定の環境下で、終点は、そのシステム100の観察が正確な観察であることを決定することが可能であり、リダイレクト応答メッセージを用いて通知メッセージに応答することが可能である(ステップ620)。このリダイレクト応答は、通知メッセージの開始している構成要素にシステム100のその観察の検査をさせることが可能である。方法は、次いで、ステップ604に戻る。
【0078】
終点が障害通知は正確であると決定する場合または通知メッセージの指令に準拠することを決定する場合、終点は、通知メッセージが命令を含んだかどうかを決定する(ステップ624)。命令は、すべてのコントローラ140との再登録を試みるなど、比較的に一般的な命令であってよい。あるいは、命令は、終点が特定のコントローラ140を試して、再登録することを要求する命令セットを備えてよい。終点は、長期的または短期的な間隔のいずれかでコントローラ140をリフレッシュするようまたはコントローラ140に登録するよう試みることが可能である。リフレッシュ/登録の間隔の長さは、命令セット内の命令またはその他の要因に応じて異なってよい。命令は、通知メッセージを送信した構成要素によって認識されたように、システム100全体に関する健全さ情報を含んでもよい。メッセージが命令を含まない場合、終点は命令を実行することになる(ステップ628)。
【0079】
命令が終点によって実行された後で、またはメッセージが命令を含まない場合、方法は、終点がバックアップ状態で動作し始める(ステップ632)ように、終点がフェイルオーバを実行することにより継続する。このステップはまた、終点が自らシステム100の障害を検出した場合にも実行される。フェイルオーバ・モードでの動作の間、終点は、そのバックアップ・コントローラ140を利用しかつ/または二次シグナリング経路を利用することになる。フェイルオーバ・モードで動作することに加えて、終点はシステム100のフェイルバックに関して監視することが可能である(ステップ636)。発見モジュール116が、アクティブなコントローラとしてその役割を再開するためにその一次コントローラ140が利用可能であることを検出した場合、終点はフェイルバックが発生したことを決定することになる。この内部終点論理は、コントローラ140が任意の所与の時点でアクティブであるか否かに関係なく、終点が登録されたすべてのコントローラ140に定期的に送信されるハートビート/SIPレジスタ・メッセージによって支配され得る。
【0080】
終点がそれ自体でフェイルバックを検出しない場合、方法は、(例えば、ゲートウェイ148、サーバ136などから通知メッセージを受信することによって)終点がもう1つの構成要素によってフェイルバックを通知されているかどうかを決定することにより(ステップ640)継続する。終点がフェイルバックを通知されない場合、方法はステップ632に戻る。しかし、終点がフェイルバックを表示する通知メッセージを受信した場合、方法は、通知メッセージが終点による実行のための命令を含んだかどうかを決定すること(ステップ644)によって継続する。命令が通知メッセージ内に含まれる場合、命令は終点によって実行される(ステップ648)。命令の実行後、命令が存在しなかった場合、またはフェイルバックが終点自体によって検出された場合、方法はステップ604に戻る。
【0081】
本発明の少なくともいくつかの実施形態によれば、発見モジュール116は、一次コントローラまたは二次コントローラ140からのフェイルオーバまたはフェイルバックが自動化された終点検出によってトリガされたか、または(すなわち、SIP通知メッセージの受信によって)単に手動でトリガされたかを支配する構成可能なパラメータを備え得る。発見モジュール116によって用いられるハートビート監視機構は、終点が障害状態を検出するか否かに応じて、異なる間隔で実行され得る。
【0082】
次に図7を参照すると、本発明の少なくともいくつかの実施形態による状態通知方法が説明される。方法は、システム100の構成要素(例えば、サーバ136、ゲートウェイ148、または発見モジュール144を備える任意のその他のデバイス)が、UA108などの終点にシステム100に関して通知すべきかどうかを決定すること(ステップ704)から開始する。典型的には、構成要素は、通知メッセージを終点に送信し、システム100状態のうちのいくつかの側面が変更したことを終点に知らせることになる。例えば、通知メッセージは、システム内の構成要素が休止中として登録されていることを終点に知らせることが可能である。あるいは、通知メッセージは、送信している構成要素の健全さを終点に知らせることが可能である。
【0083】
通知メッセージが終点に送信されるべきであることが決定されるまで、方法はステップ704にとどまる。かかる決定を行った後で、方法は、構成要素がメッセージ(例えば、通知メッセージ)を生成すること(ステップ708)により継続する。しかし、理解され得るように、終点に通知するために、任意のその他のタイプのSIPメッセージまたは非SIPメッセージが構成要素によって用いられてよい。通知は、構成要素が、終点がシステム100の障害状態または回復状態においてフェイルオーバまたはフェイルバックするようにトリガすることを可能にし得る。終点はコントローラの順序付けされたリスト128を維持することが可能であり、終点はこれらのコントローラのすべてとのアクティブ登録を維持する能力を有するため、システム100の構成要素は、終点がシステム100の障害状態を検出した場合、終点が処置を講じるようにトリガすることが可能である。処置は、例えば、標準の通知メッセージ(例えば、標準のSIP IETFに準拠する通知メッセージ)または特定の命令セットを含む拡張されたメッセージのいずれかを送信することによってトリガされ得る。したがって、方法は、構成要素が通知メッセージはその中に命令を含むかどうかを決定することにより継続する(ステップ712)。
【0084】
特定の命令が必要であると決定された場合、構成要素は、コントローラの順序付けされたリスト128内のコントローラ140のすべてと再登録するよう終点に伝え、終点に一般的な通知メッセージを送信することが可能である(ステップ720)。これにより、かかる通知を受信するいかなる終点もそのリスト上のすべてのコントローラ140との再登録を試みることになる。この試みられた再登録の成功に基づいて、終点はどのコントローラ140が(例えば、着信SIP呼出しおよび発信SIP呼出しをサポートする)SIPトランザクションを処理するために利用可能であるかを導き出すことが可能になる。終点は、次いで、その一次コントローラとして、コントローラの順序付けされたリスト128上の最高優先順位のコントローラ140を使用して、この自己決定情報に従って動作することが可能である。この特定の機構は、標準のSIP IETFに準拠する通知メッセージを使用することが可能である。メッセージは、通知パラメータ「event」=「probation」を有する通知メッセージに関するSIP標準に従ってよい。かかる通知メッセージの例は下で提供される。
【0085】
【数1】

【0086】
しかし、構成要素が、特定の命令が通知メッセージ内に含まれるべきであることを決定する場合、メッセージを終点に送信する(ステップ720)のに先立って、構成要素は1つまたは複数の命令セットをメッセージに加えることが可能である(ステップ716)。通知メッセージ内に命令を組み込むことによって、構成要素は、終点のコントローラ140リスト120上の特定のコントローラ140を使用して開始するよう終点に伝えることができる。かかるシナリオでは、終点は、どのコントローラ140が使用されるべきであるかを伝えるために、その独自の情報に依存するのではなく、構成要素に依存する。この特定の機構は、拡張された拡張機能を有する標準のSIP通知メッセージを使用することが可能である。通知メッセージは、通常、通知メッセージに関するSIP標準に従うことになる。加えて、終点がフェイルオーバまたはフェイルバックすべきである場合、通知メッセージは、<eventName>changeServer</eventName>などの事象名を有する例示的なプロファイル事象パッケージ・フォーマットを使用することが可能である。メッセージは、タイムスタンプおよび、終点がフェイルオーバまたはフェイルバックすべき特定のコントローラ140を含むサーバ136のアドレスも含み得る。かかる拡張されたSIP通知メッセージの例は、XML命令セットを用いて下で提供される。
【0087】
【数2】

【0088】
当業者によって理解され得るように、命令はXML命令セット以外の多くの異なる形式を取り得る。例えば、命令は終点のメモリ112内にすでに記憶されたアルゴリズムまたは適用業務に対応し、かつそのアルゴリズムまたは適用業務を実行させる所定のトリガを備え得る。加えて、上の例示的な通知メッセージは、メッセージの本体内にその命令セットを含んだが、命令セットは、通知メッセージのヘッダ内または終端部(trailer)内に配置されることも可能である。これは、用いられる通知メッセージのタイプに応じて異なってよい。命令は、送信している構成要素に関する健全さ情報ならびにシステム100の残りの部分に関するその状態情報を伝えると同様に特定のタスクを実行する目的で終点をトリガするなど、いくつかの異なる動作を達成するために使用されることが可能である。
【0089】
上述の流れ図は特定の一連の事象に関して議論されているものの、このシーケンスの変更は、本発明の動作に実質的に影響を与えずに行うことが可能である点を理解されたい。加えて、事象の正確なシーケンスは、例示的な実施形態に記載されるように行われなくてよい。本明細書に示された例示的な技術は、具体的に例示された実施形態に限定されず、その他の例示的な実施形態を用いて利用されることも可能であり、説明されたそれぞれの特徴は個々にかつ別々に特許請求可能である。
【0090】
本発明のシステム、方法およびプロトコルは、説明された通信機器、またはプログラムされたマイクロプロセッサもしくはマイクロコントローラおよび(1つまたは複数の)周辺集積回路要素、ASICもしくはその他の集積回路、デジタル信号プロセッサ、配線(hard−wired)電子回路もしくは離散的なエレメント回路などの論理回路、PLD、PLA、FPGA、PALなどのプログラム可能な論理素子、サーバなどの通信デバイス、パーソナル・コンピュータ、任意の比較可能な手段などに加えてまたはそれらの代わりに専用コンピュータ上で実施されることが可能である。一般に、本明細書で例示される方法論を実施することができる状態機械を実施することが可能な任意のデバイスは、本発明による様々な通信方法、プロトコルおよび技術を実施するために使用され得る。
【0091】
さらに、開示された方法は、様々なコンピュータ・プラットフォーム上またはワークステーション・プラットフォーム上で使用され得る携帯ソース・コードを提供する手続き的なソフトウェア開発環境またはオブジェクト指向のソフトウェア開発環境を使用してソフトウェア内で容易に実施され得る。あるいは、開示されたシステムは、標準の論理回路またはVLSI設計を使用してハードウェア内で部分的にまたは完全に実施されることが可能である。本発明に従ってシステムを実施するためにソフトウェアが使用されるかまたはハードウェアが使用されるかは、システムの速度および/または効率性要件、特定の機能、ならびに利用されている特定のソフトウェア・システムもしくはハードウェア・システムまたはマイクロプロセッサ・システムもしくはマイクロコンピュータ・システムに依存する。本明細書で例示される解析システム、解析方法および解析プロトコルは、本明細書で提供される機能的な説明から、かつ通信技術の一般的な基本的知識を用いて、当業者によって任意の知られているまたは当業者によって後で開発されるシステムもしくは構造、デバイスおよび/またはソフトウェアを使用して、ハードウェアおよび/またはソフトウェア内で容易に実施され得る。
【0092】
さらに、開示された方法は、記憶媒体上に記憶され、コントローラおよびメモリと協働してプログラムされた汎用コンピュータ、専用コンピュータ、マイクロプロセッサなどの上で実行されることが可能なソフトウェア内で容易に実施され得る。これらの場合、本発明のシステムおよび方法は、アプレット、JAVA(登録商標)またはCGIスクリプトなどのパーソナル・コンピュータに組み込まれたプログラムとして、サーバ上またはコンピュータ・ワークステーション上に常駐するリソースとして、専用の通信システム内または専用のシステム構成要素内に組み込まれたルーチンなどとして実施され得る。システムはまた、システムおよび/または方法を、通信デバイスまたは通信システムのハードウェア・システムおよびソフトウェア・システムなどのソフトウェア・システムおよび/またはハードウェア・システム内に物理的に組み込むことによって実施されることも可能である。
【0093】
したがって、本発明により、SIP生残り可能なネットワークおよびネットワーク構成要素を維持するためのシステム、装置および方法が提供されていることは明らかである。本発明はいくつかの実施形態に関して説明されているものの、多くの代替形態、変更形態および改変形態は当業者に明らかになるであろうこと、またはこれらが当業者に明らかなことは明白である。したがって、本発明の精神および範囲内のすべてのかかる代替形態、変更形態、均等物および改変形態を包括することが意図される。
【図面の簡単な説明】
【0094】
【図1】本発明の少なくともいくつかの実施形態による通信システムを示すブロック図である。
【図2】本発明の少なくともいくつかの実施形態によるSIPコントローラ発見および登録方法を示す流れ図である。
【図3】本発明の少なくともいくつかの実施形態による状態決定方法を示す流れ図である。
【図4】本発明の少なくともいくつかの実施形態による反応的な状態決定方法を示す流れ図である。
【図5】本発明の少なくともいくつかの実施形態によるゲートウェイ動作方法を示す流れ図である。
【図6】本発明の少なくともいくつかの実施形態による終点に関する状態決定方法を示す流れ図である。
【図7】本発明の少なくともいくつかの実施形態による状態通知方法を示す流れ図である。

【特許請求の範囲】
【請求項1】
通信デバイスによって、通信システム内の構成要素の状態が第1の状態から第2の状態に変更したことを決定することと、
前記通信デバイスで、前記構成要素の前記決定された第2の状態に関係する情報を備えるメッセージを生成することと、
前記メッセージを前記構成要素に関連するユーザ・エージェントに送信することと
を備える方法。
【請求項2】
通信システム内の構成要素の状態が第1の状態から第2の状態に変更したことを決定して、前記構成要素の前記決定された第2の状態に関係する情報を備えるメッセージを生成し、前記メッセージを前記構成要素に関連するユーザ・エージェントに送信するために動作可能な通信デバイス。
【請求項3】
前記構成要素が、前記ユーザ・エージェントに関する第1のセッション開始プロトコル(SIP)コントローラを備え、前記第1の状態が動作可能なSIP状態を備え、前記第2の状態が失敗したSIP状態を備える、請求項1または2のいずれか1項に記載の発明。
【請求項4】
前記メッセージが、前記第1のSIPコントローラとの再登録を試みるように前記ユーザ・エージェントにプロンプト表示する、請求項1乃至3のいずれか1項に記載の発明。
【請求項5】
前記第1のコントローラが、前記ユーザ・エージェントの一次コントローラを備える、請求項1乃至4のいずれか1項に記載の発明。
【請求項6】
前記通信デバイスが、前記ユーザ・エージェントによる実行のための命令を生成して、前記メッセージ内に前記命令を組み込むためにさらに動作可能である、請求項1乃至5のいずれか1項に記載の発明。
【請求項7】
前記命令が、前記ユーザ・エージェントが再登録を試みることになるSIPコントローラとして、前記ユーザ・エージェントが前記第1のSIPコントローラを識別するために、内部で維持されたSIPコントローラのリストを参照することが可能なように、前記第1のSIPコントローラを識別する、請求項6に記載の発明。
【請求項8】
前記メッセージが、前記ユーザ・エージェントにその内部で維持されたSIPコントローラのリスト内のすべてのコントローラとの再登録を試みさせる標準のSIP通知メッセージを備え、前記内部で維持されたコントローラのリストが前記第1のSIPコントローラを備える、請求項1乃至7のいずれか1項に記載の発明。
【請求項9】
前記通信デバイスが、前記ユーザ・エージェントが前記構成要素は前記第1の状態にあることを確信することを表示する応答メッセージを前記ユーザ・エージェントから受信して、前記応答メッセージを受信することに応答して、前記構成要素の前記状態を再検査するためにさらに動作可能である、請求項1乃至8のいずれか1項に記載の発明。
【請求項10】
実行された場合、請求項1に記載の方法を実行するために動作可能なプロセッサ実行可能命令を備えたコンピュータ可読媒体。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate


【公開番号】特開2009−239891(P2009−239891A)
【公開日】平成21年10月15日(2009.10.15)
【国際特許分類】
【出願番号】特願2008−323027(P2008−323027)
【出願日】平成20年12月19日(2008.12.19)
【出願人】(500310339)アバイア インコーポレーテッド (35)
【Fターム(参考)】