特許第5841262号(P5841262)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ アルカテル−ルーセントの特許一覧

<>
  • 特許5841262-SIPプロキシ・フェイルオーバ方法 図000002
  • 特許5841262-SIPプロキシ・フェイルオーバ方法 図000003
  • 特許5841262-SIPプロキシ・フェイルオーバ方法 図000004
  • 特許5841262-SIPプロキシ・フェイルオーバ方法 図000005
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】5841262
(24)【登録日】2015年11月20日
(45)【発行日】2016年1月13日
(54)【発明の名称】SIPプロキシ・フェイルオーバ方法
(51)【国際特許分類】
   H04L 12/713 20130101AFI20151217BHJP
   H04L 12/70 20130101ALI20151217BHJP
【FI】
   H04L12/713
   H04L12/70 A
   H04L12/70 B
【請求項の数】7
【全頁数】10
(21)【出願番号】特願2014-537549(P2014-537549)
(86)(22)【出願日】2012年10月8日
(65)【公表番号】特表2014-535209(P2014-535209A)
(43)【公表日】2014年12月25日
(86)【国際出願番号】EP2012069823
(87)【国際公開番号】WO2013060567
(87)【国際公開日】20130502
【審査請求日】2014年6月3日
(31)【優先権主張番号】11306371.3
(32)【優先日】2011年10月24日
(33)【優先権主張国】EP
(73)【特許権者】
【識別番号】391030332
【氏名又は名称】アルカテル−ルーセント
(74)【代理人】
【識別番号】100094112
【弁理士】
【氏名又は名称】岡部 讓
(74)【代理人】
【識別番号】100106183
【弁理士】
【氏名又は名称】吉澤 弘司
(74)【代理人】
【識別番号】100170601
【弁理士】
【氏名又は名称】川崎 孝
(72)【発明者】
【氏名】カイユー,クリスチャン
【審査官】 阿部 弘
(56)【参考文献】
【文献】 特開2002−111713(JP,A)
【文献】 特開2000−196677(JP,A)
【文献】 特表2009−506680(JP,A)
【文献】 特開2009−159627(JP,A)
【文献】 米国特許出願公開第2008/0247381(US,A1)
【文献】 久保田 浩,インテリジェントDNSサービス,日経NETWORK,日本,日経BP社,2008年 5月28日,第98号,P. 071
(58)【調査した分野】(Int.Cl.,DB名)
H04L 12
(57)【特許請求の範囲】
【請求項1】
複数のSIPプロキシ(P1、P2)と、ドメイン・ネーム・サーバ(DNSR)とを備えるSIP電気通信ネットワーク(SIPN)におけるSIPプロキシ・フェイルオーバ方法であって、
−前記ドメイン・ネーム・サーバ(DNSR)に、稼働中の前記SIPプロキシのアドレスを記憶するステップと、
−第1のSIPプロキシ(P1)がシャットダウンすると、前記ドメイン・ネーム・サーバ(DNSR)に該第1のSIPプロキシがシャットダウンしたことを通知するステップ(42)と、
−次いで、ユーザ・エージェント(SIPUA1)が前記ドメイン・ネーム・サーバ(DNSR)にドメイン・ネーム・システム要求(43)を送信すると、前記ドメイン・ネーム・サーバ(DNSR)から該ユーザ・エージェントに、稼働中のSIPプロキシ(P2)のそれぞれのアドレスのみを含む応答を送信するステップ(44)と、
−次いで、前記ユーザ・エージェントが自身を、前記ドメイン・ネーム・サーバ(DNSR)からの前記応答に含まれているアドレスのSIPプロキシ(P2)に登録するステップとを含む方法。
【請求項2】
−SIPプロキシ(P1)がシャットダウンすると、前記SIPプロキシからドメイン・ネーム・サーバ(DNSR)に、該SIPプロキシがシャットダウンしたことを示すメッセージを送信し(42)、
−前記SIPプロキシが起動すると、前記SIPプロキシから前記ドメイン・ネーム・サーバ(DNSR)に、該SIPプロキシが起動したことを示すメッセージを送信する(40)手段を含む、SIPプロキシ(P1)。
【請求項3】
コンピュータ上でプログラムが実行されるときに方法を遂行するためのコンピュータ実行可能命令を含むコンピュータ・プログラムであって、前記方法は、
−SIPプロキシ(P1)がシャットダウンすると、前記SIPプロキシからドメイン・ネーム・サーバ(DNSR)に、該SIPプロキシがシャットダウンしたことを示すメッセージを送信するステップ(42)と、
−前記SIPプロキシが起動すると、前記SIPプロキシから前記ドメイン・ネーム・サーバ(DNSR)に、該SIPプロキシが起動したことを示すメッセージを送信するステップ(40)とを含む、コンピュータ・プログラム。
【請求項4】
ドメインのためのドメイン・ネーム・サーバ(DNSR)であって、
−SIPプロキシ(P1)から、前記SIPプロキシが起動したことを示すメッセージを受信すると、前記ドメインのすべての記録に対して該SIPプロキシの名前を有効にする手段と、
−SIPプロキシ(P1)から、前記SIPプロキシがシャットダウンしたことを示すメッセージを受信する(42)と、前記ドメインのすべての記録に対して前記SIPプロキシの名前を無効にする手段とを含む、ドメイン・ネーム・サーバ(DNSR)。
【請求項5】
コンピュータ上でプログラムが実行されるときに方法を遂行するためのコンピュータ実行可能命令を含むコンピュータ・プログラムであって、前記方法は、
−SIPプロキシ(P1)がシャットダウンしたことを示すメッセージを受信すると、前記ドメインのすべての記録に対して前記SIPプロキシの名前を無効にするステップと、
−SIPプロキシ(P1)が稼働中であることを示すメッセージを受信すると、前記ドメインのすべての記録に対して該SIPプロキシの名前を有効にするステップとを含む、コンピュータ・プログラム。
【請求項6】
−ドメイン・ネーム・サーバ(DNSR)にドメイン・ネーム要求を送信し(43)、
−次いで、少なくとも1つのSIPプロキシのアドレスを含む応答を受信し(44)、
−次いで、前記応答に含まれる前記SIPプロキシのアドレスから1つのSIPプロキシのアドレスを選択し、
−次いで、前記選択されたSIPプロキシのアドレス(P2)が、該ユーザ・エージェントが現在登録されているSIPプロキシのアドレス(P1)と一致しない場合、前記選択されたSIPプロキシのアドレス(P2)に登録要求を送信する手段を含む、SIPユーザ・エージェント(SIPUA1)。
【請求項7】
コンピュータ上でプログラムが実行されるときに方法を遂行するためのコンピュータ実行可能命令を含むコンピュータ・プログラムであって、前記方法は、
−ドメイン・ネーム・サーバ(DNSR)にドメイン・ネーム要求を送信するステップ(43)と、
−次いで、少なくとも1つのSIPプロキシのアドレスを含む応答を受信するステップ(44)と、
−次いで、前記応答に含まれる前記SIPプロキシのアドレスから1つのSIPプロキシのアドレスを選択するステップと、
−次いで、前記選択されたSIPプロキシのアドレス(P2)が、該ユーザ・エージェントが現在登録されているSIPプロキシのアドレス(P1)と一致しない場合、前記選択されたSIPプロキシのアドレス(P2)に登録要求を送信するステップとを含む、コンピュータ・プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、一般にSIP(セッション開始プロトコル)通信ネットワークにおけるSIPプロキシ・フェイルオーバ方法に関する。
【背景技術】
【0002】
図1は、2つのプロキシP1、P2と、ドメイン・ネーム・サーバDNSRとを備える従来のSIP電気通信ネットワークSIPNの一例を概略的に示している。電話端末はそれぞれ、ユーザ・エージェントSIPUA1、SIPUA2等を含み、イーサネット・リンクを介してこのSIPネットワークに接続されている。
【0003】
すべてのSIPユーザ・エージェントSIPUA1、SIPUA2等は、規格RFC3261およびRFC3263、特にドメイン・ネーム・システム(DNS)解決法によって規定されている手順を用いて、同一のSIPドメインに登録されている。例えば、ユーザ・エージェントSIPUA1はプロキシP1に登録され、ユーザ・エージェントSIPUA2はプロキシP2に登録されている。プロキシに登録するためには、ユーザ・エージェントはDNSサーバに「DNS要求」を出して、優先順位の付いたプロキシ・アドレスのリストを取得し、次にこのリストで最も優先順位の高いプロキシのアドレスを選択し、そのプロキシに登録する。登録が完了すると、ユーザ・エージェントは、(DNSサーバの構成に変更がなければ)そのプロキシに、続けて要求を送信する。特に、ユーザ・エージェントは、呼を確立するための要求を送信する。
【0004】
SIPドメインは通常、一連のプロキシによって管理されているが、これらのプロキシは重複しているため、各プロキシは、別のプロキシが(例えばメンテナンスのために)シャットダウンした場合のフェイルオーバ機能を提供している。例えば、プロキシP1がメンテナンスのためにシャットダウンすると、SIPユーザ・エージェントSIPUA1がバックアップのプロキシP2に切り替えることになっている。しかし、SIPユーザ・エージェントSIPUA1は、プロキシP1がシャットダウンしたことをSIPプロトコル手段によってすぐには知らされない。
【0005】
図2は、この例示のSIP電気通信ネットワークSIPNにおけるプロキシP1からプロキシP2のフェイルオーバを示している。プロキシP1がシャットダウンしているとき、プロキシP2が引き継いでドメイン内のすべてのユーザ・エージェントに対応している。ユーザが自身のSIP電話を作動させると、この電話のSIPユーザ・エージェントSIPUA1は以下のステップを実行する。
−ステップ20:SIPユーザ・エージェントSIPUA1は、ドメイン・ネームを解決するために、規格RFC3263に基づいて、DNSサーバDNSRにDNS要求を送信する。
−ステップ21:DNSサーバDNSRは、それぞれが第一優先であるプロキシP1、および第二優先であるプロキシP2を示すプロキシ・アドレスを含むDNS応答を返す。
−ステップ22:しばらくして、プロキシP1がシャットダウンする。
−ステップ23:しばらくして、この電話のユーザが別の電話ユーザに電話をかける。ユーザ・エージェントSIPUA1が、ドメイン・ネームを解決するために、RFC3263規格に基づいて、再びDNSサーバDNSRにDNS要求を送信する。
−ステップ24:DNSサーバDNSRは、プロキシP1がシャットダウンしたことを知らされていないため、それぞれが第一優先であるプロキシP1、および第二優先であるプロキシP2を示すプロキシ・アドレスを含むDNS応答を返す。
−ステップ25:そこで、ユーザ・エージェントSIPUA1は、プロキシP1が第一優先順位にあるために、プロキシP1にメッセージ「INVITEsip:bob@example.com」を送信する。プロキシP1はシャットダウンしているため、セッションを確立できない。よって、プロキシP1はまったく応答しない。電話端末は、応答待ちの状態にある。
−ステップ26:ユーザ・エージェントSIPUA1において、タイマB(要求タイムアウト、RFC3261のタイマの記述を参照)が、所定の時間後に時間切れとなる。
−ステップ27:次いでユーザ・エージェントSIPUA1は、ドメイン・ネーム・サーバDNSRから受信したプロキシ・アドレスのリストで第二優先順位にあるプロキシP2に、メッセージ「INVITEsip:bob@example.com」を送信する。
−ステップ28:ユーザ・エージェントSIPUA1はプロキシP2に登録されていないため、プロキシP2は、メッセージ「403禁止」を返す。
−ステップ29:ユーザ・エージェントSIPUA1は、プロキシP2に肯定応答メッセージ「ACK」を送信する。
【0006】
SIPユーザ・エージェントSIPUA1がプロキシP2に登録されていないため、通話の確立は不可能であった。この登録は、(RFC3261の登録リフレッシュに基づいて)後の登録リフレッシュ時に行われることになる。このリフレッシュ時間の後に呼び出しは可能となるが、この際の遅延は長くなる可能性がある(数分間)。
【0007】
現行の最善の解決方法が、RFC3261、RFC3263およびRFC5626、第4.5節に次のように記載されている。
− RFC3261は、SIPユーザ・エージェントが同一のプロキシに再登録を試みるリフレッシュ時間(「時間切れ」と指定される)を規定している。
− RFC5626は、プロキシにつながらない場合に復帰を促進するためのアルゴリズムを規定している。
− RFC3263は、バックアップのプロキシのリストを伝達するための「DNS SRV」メッセージを送信する。SIPユーザ・エージェントは、この(優先順位の付いた)プロキシのリストを用いて復帰プロキシに切り替えるものとする。
【0008】
この既知の解決方法は、復帰時間が長すぎるため不十分であり、この時間をできるだけ短くする必要がある。以下に、この復帰時間を概算する。
− INVITEメッセージがプロキシP1に送信されると、タイマBが作動し、シャットダウンが検出される前に時間切れとなる。デフォルト設定では、タイマBは32秒間動作する(RFC3261参照)。
− 第2のINVITEメッセージがプロキシP2に送信されると、プロキシP2に登録されていないために拒否される。再登録を行うために、最悪の場合、非常に長いことがある時間切れまでの間、継続する可能性がある(数分間)。
【0009】
図3に示すもう1つの既知の解決方法は、共通データベースCDBを備えており、ドメインのすべてのプロキシP1、P2は、すべてのユーザ・エージェントの登録アドレスを記憶している。しかし、SIPユーザ・エージェント、例えばSIPUA3が、ネットワーク・アドレス変換器(通常、「NAT」と略称される)を含むルータRの後方にある場合、この解決方法はもはや機能しない。実際には、あるメッセージがプロキシP2に転送され、かつあるメッセージがプロキシP1に転送されたとき、ネットワーク・アドレス変換器は、2つの異なる転送アドレス(IPアドレス+ポート)、例えば、10.0.0.1:3333および10.0.01:2222をそれぞれに割り当てる。そこで、プロキシP2への接続に使用される登録アドレス(10.0.0.1:3333)は、共通データベースDBに登録されているにもかかわらず、プロキシP2に障害があった場合、プロキシP1への接続には再使用できない。
【0010】
そこで、迅速なSIPプロキシ・フェイルオーバを行うための技術的な解決方法を提供する必要がある。特に、ユーザが緊急の電話がつながるのを待っている場合、そのような解決方法は重要である。
【0011】
この問題は、本発明に係る方法を適用することで解決できる。
【発明の概要】
【発明が解決しようとする課題】
【0012】
本発明の目的は、複数のプロキシと、ドメイン・ネーム・サーバとを備えるSIP電気通信ネットワークにおけるSIPプロキシ・フェイルオーバ方法であって、該方法は、
− ドメイン・ネーム・サーバに、稼働中のプロキシのアドレスを記憶するステップと、
− 第1のプロキシがシャットダウンした場合、ドメイン・ネーム・サーバに第1のプロキシがシャットダウンしたことを通知するステップと、
− 次いで、ユーザ・エージェントがドメイン・ネーム・サーバにドメイン・ネーム・システム要求を送信した場合、ドメイン・ネーム・サーバからこのユーザ・エージェントに、稼働中のプロキシのそれぞれのアドレスのみを含む応答を送信するステップと、
− 次いで、前記ユーザ・エージェントが自身を、ドメイン・ネーム・サーバからの応答に含まれているアドレスのプロキシに登録するステップとを含む。
【0013】
本方法によれば、あるSIPプロキシをシャットダウンするとき、ドメイン・ネーム・サーバが更新されて、該プロキシが利用不可であることを記憶する。ユーザ・エージェントがプロキシにメッセージを送信する必要があるとき、ドメイン・ネーム・サーバはユーザ・エージェントに少なくとも1つの稼働中のプロキシのアドレスを提供する。そのため、ユーザ・エージェントは、もはや利用不可となったプロキシにメッセージを送信することはない。この方法によって、SIPプロキシ・フェイルオーバが実行されるときのユーザの待ち時間が著しく短縮される。
【0014】
本発明の他の目的は、前記方法を実現するためのSIPプロキシ、ドメイン・ネーム・サーバ、およびSIPユーザ・エージェントである。前記SIPプロキシ、前記DNSサーバ、および前記SIPユーザ・エージェントにはアルゴリズムが配布される。
【0015】
本発明の他の特徴および効果は、添付の図面とともに、本発明の実施形態の以下の詳細な説明からさらに明らかになるであろう。
【0016】
本発明の実施形態の特徴と効果を詳細に説明するため、以下の説明は添付の図面を参照している。可能な限り、その図面および説明全体を通して、同一または同様の符号は、同一または同様の構成要素を表す。
【図面の簡単な説明】
【0017】
図1】上述したように、従来のSIP電気通信ネットワークの一例を示す概略図である。
図2】上述したように、第1の既知の方法をプロキシ・フェイルオーバに適用した一例の信号伝達フローを示す図である。
図3】上述したように、第2の既知の方法をプロキシ・フェイルオーバに適用した一例の信号伝達フローを示す図である。
図4】本発明に係る方法をプロキシ・フェイルオーバに適用した一例の信号伝達フローを示す図である。
【発明を実施するための形態】
【0018】
本発明に係る方法は、プロキシ、DNSサーバ、およびSIPユーザ・エージェントにおいて、それぞれ以下のアルゴリズムを実行することで適用される。
【0019】
プロキシのアルゴリズムは以下の通りである。
− プロキシが起動すると、該プロキシは、DNSサーバに、このプロキシが起動したことをDNSサーバに通知するメッセージを送信する。このメッセージは、「domain name:proxy name:proxy IP address:UP」である。
− 本発明によれば、プロキシがシャットダウンすると、該プロキシは、このプロキシが起動したことをドメイン・ネーム・サーバに通知するメッセージをDNSサーバに送信する。このメッセージは、「domain name:proxy name:proxy IP address:DOWN」である。
− プロキシが再起動すると、該プロキシは、DNSサーバに、このプロキシが再稼働していることをDNSサーバに通知するメッセージを送信する。このメッセージは、「domain name:proxy name:proxy IP address:UP」である。
【0020】
DNSサーバのアルゴリズムは以下の通りである。
−DNSサーバはプロキシからのメッセージを待っている。
−DNSサーバはプロキシからメッセージを受信すると、
−−メッセージのタイプが「UP」であれば、そのドメインに関して送信することになるいずれのDNS応答においても前記プロキシの名前を有効にする。
−−メッセージのタイプが「DOWN」であれば、そのドメインに関して送信することになるいずれのDNS応答においても前記プロキシの名前を無効にする。
【0021】
そこで、ユーザ・エージェントがドメイン・ネーム・サーバにドメイン・ネーム・システム要求を送信すると、ドメイン・ネーム・サーバはユーザ・エージェントに、稼働中のプロキシのそれぞれのアドレスのみを含む応答を送信する。
【0022】
SIPユーザ・エージェントがプロキシにメッセージを送信する必要があるとき、そのアルゴリズムは以下の通りである。
−ユーザ・エージェントは、DNSサーバにDNS要求を送信する。
−ユーザ・エージェントは、あるプロキシのアドレスまたは優先順位の付いた複数のプロキシのアドレス・リストを含むDNS応答を受信する。
−ユーザ・エージェントは、(RFC3263の規定にあるように)DNS応答から対象プロキシのアドレスを選択し、SIPメッセージを送信する。
−本発明によれば、ユーザ・エージェントは、選択された対象プロキシのアドレスを、現在登録されているプロキシのアドレスと照合する。
−−現在登録されているプロキシのアドレスが、選択された対象プロキシのアドレスと一致する場合、ユーザ・エージェントは該選択された対象プロキシのアドレスにメッセージを送信することができる。
−−現在登録されているプロキシのアドレスが、選択された対象プロキシのアドレスと一致しない場合、ユーザ・エージェントは、該選択された対象プロキシのアドレスにメッセージを送信する前に、レジスタ・トランザクションによりそのアドレスへの登録を開始する。
【0023】
例えば、2つのプロキシP1、P2とドメイン・ネーム・サーバDNSRとを備えるSIP電気通信ネットワークSIPNを検討する。電話端末はそれぞれ、SIPUA1等のユーザ・エージェントを含み、ユーザ・エージェントはイーサネット・リンクを介してこのSIPネットワークに接続されている。
【0024】
図4は、本発明に係る方法を、プロキシP1からプロキシP2へのフェイルオーバに適用した、例示の電気通信ネットワークの信号伝達フローを示す。考慮されている時点では、プロキシP1およびプロキシP2は稼働中である。ドメイン・ネーム・サーバDNSRは、プロキシP1のアドレスおよびプロキシP2のアドレスを(図示しない)データベースに記憶している。そして、ドメイン・ネーム・サーバDNSRは、DNS要求を受信すると、優先順位の付いたプロキシP1のアドレスおよびプロキシP2のアドレスを含むDNS応答を返す。本例では、プロキシP1が最も高い優先順位にある。例えば、ユーザ・エージェントSIPUA1は、先に電話をかけたため(この先立つイベントは図示されていない)、プロキシP1に登録されている。
−ステップ42:ここで、プロキシP1がシャットダウンする。プロキシP1は、DNSサーバDNSRにメッセージ「example.com:P1:DOWN”」を送信してこのイベントを通知する。DNSサーバDNSRはここで、プロキシP1に接続不能であることを認識する。DNSサーバDNSRは、自身のデータベースからプロキシP1のアドレスを削除する。そのため、今後ドメイン・ネーム・サーバDNSRが送信することになるいずれのDNS応答にもプロキシP1のアドレスは含まれなくなる。
−ステップ43:しばらくして、ユーザ・エージェントSIPUA1のユーザがボブに電話をかけたいと考える。SIPユーザ・エージェントSIPUA1がDNSサーバDNSRにDNS要求を送信する。
−ステップ44:DNSサーバDNSRは、プロキシP2のアドレスのみを含むDNS応答を返す。
−ステップ45:ユーザ・エージェントSIPUA1は、RFC3263の規定に基づいてプロキシを選択する。本例では、DNSサーバから提供されたリストにあるプロキシは、プロキシP2のみである。そこで、ユーザ・エージェントSIPUA1は、プロキシP2を選択する。本発明によれば、ユーザ・エージェントSIPUA1は、プロキシP2のアドレスを、現在登録されているプロキシ、すなわち、プロキシP1のアドレスと照合する。プロキシP2のアドレスはプロキシP1のアドレスと異なるため、ユーザ・エージェントSIPUA1は、プロキシP2にメッセージ「REGISTERsip:p2」を送信して、プロキシP2に登録する。このプロキシP2がプロキシP1に取って代わる。
−ステップ46:プロキシP2は、ユーザ・エージェントSIPUA1に肯定応答メッセージ「ACK」を送信する。
−ステップ47:次いで、ユーザ・エージェントSIPUA1は、プロキシP2にメッセージ「INVITEsip:bob@example.com」を送信する。
−ステップ48:プロキシP2は、接続先の端末が呼び出し中であることを示すメッセージ「180呼び出し」を返して応答する。
−ステップ49:次いでプロキシP2は、ユーザ・エージェントSIPUA1にメッセージ「200OK」を送信する。
−ステップ50:ユーザ・エージェントSIPUA1は、プロキシP2に肯定応答メッセージ「ACK」を送信する。
【0025】
次に、例えばSIPユーザ・エージェントSIPUA1の切り替え遅延時間を概算する。
【0026】
DNSサーバDNSRとプロキシP1、P2との往復時間を50ミリ秒と想定する。
−DNSのやり取り(要求+応答)は50ミリ秒継続する。
−レジスタのやり取り(レジスタ+200OK)は50ミリ秒継続する。
合計の遅延時間は、50+50=100ミリ秒である。
【0027】
これは、既存の解決方法(上述の概算値32秒を参照)に比べて大幅な改善である。このため、本発明の解決方法は、従来技術よりもはるかに優れている。本発明に係る方法は、ユーザに対して、SIPプロキシがシャットダウンしたときの遅延を大幅に減少させることができる。例えば、この方法をIMS(IPマルチメディア・サブシステム)に適用した場合、利用不能時間が著しく改善されることになるため、通信事業者は、はるかに高品質のサービスをユーザに提供できるようになる。
【0028】
この解決方法は、この方法がトリガする新規の登録によって新規のプロキシに対するコンタクト情報が更新されることになるため、アドレス変換器(NAT)を含むルータにも対応できる。図4の例では、ユーザ・エージェントSIPUA1とメインのプロキシP1との通信にNATバインドが用いられる場合、バックアップのプロキシP2はユーザ・エージェントとメインのプロキシP1との通信に用いられる前記NATバインドを使用せず、新規の登録によって生成された新規の専用NATバインドを使用することになる。
図1
図2
図3
図4