JP2010504045A - 通信セッション管理におけるトランザクションタイムアウト処理 - Google Patents

通信セッション管理におけるトランザクションタイムアウト処理 Download PDF

Info

Publication number
JP2010504045A
JP2010504045A JP2009528459A JP2009528459A JP2010504045A JP 2010504045 A JP2010504045 A JP 2010504045A JP 2009528459 A JP2009528459 A JP 2009528459A JP 2009528459 A JP2009528459 A JP 2009528459A JP 2010504045 A JP2010504045 A JP 2010504045A
Authority
JP
Japan
Prior art keywords
transaction
message
signaling
timeout
control
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
JP2009528459A
Other languages
English (en)
Inventor
ギンデ、サミア・ビジャイ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Qualcomm Inc filed Critical Qualcomm Inc
Publication of JP2010504045A publication Critical patent/JP2010504045A/ja
Ceased legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/66Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1101Session protocols
    • H04L65/1104Session initiation protocol [SIP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/143Termination or inactivation of sessions, e.g. event-controlled end of session
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/143Termination or inactivation of sessions, e.g. event-controlled end of session
    • H04L67/145Termination or inactivation of sessions, e.g. event-controlled end of session avoiding end of session, e.g. keep-alive, heartbeats, resumption message or wake-up for inactive or interrupted session
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/04Protocols for data compression, e.g. ROHC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/40Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass for recovering from a failure of a protocol instance or entity, e.g. service redundancy protocols, protocol state redundancy or protocol service redirection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W80/00Wireless network protocols or protocol adaptations to wireless operation
    • H04W80/08Upper layer protocols
    • H04W80/10Upper layer protocols adapted for application session management, e.g. SIP [Session Initiation Protocol]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/28Timers or timing mechanisms used in protocols

Abstract

この開示は、通信セッションの設定及び管理の間、トランザクションタイムアウトを処理する技術を説明する。特に通信デバイスは、トランザクションタイムアウトの起きたシグナリング及び制御メッセージのタイプに基づきトランザクションタイムアウトに対し異なる処理を行う。一側面において、通信デバイスは、登録トランザクションの間に起きたトランザクションタイムアウトに対し、非登録トランザクションの間に起きたトランザクションタイムアウトとは異なる処理を行う。例えば、トランザクションを開始した通信デバイス(14A)は、非登録トランザクションにトランザクションタイムアウトが起きたとき、現在のプロキシサーバと少なくとも1つの後続のトランザクションを開始する。連続するトランザクションタイムアウトの回数が閾値になった後、又は失敗継続時間タイマの時間切れの後、又は登録トランザクションに関連するトランザクションタイムアウトの後、該通信デバイスは現在の通信セッションをキャンセルし、新たなプロキシサーバへ登録メッセージを送信する。
【選択図】図2

Description

優先権の主張
この出願は、2006年9月12日出願の米国仮出願第60/825,307及び2007年9月11日出願の米国出願第11/853,605の利益を主張し、これらの全内容は、ここに、参照により組み込まれる。
この開示は、通信デバイス間における通信セッションの確立に関する。
デバイス間の通信セッションの確立及び管理のために、シグナリング及び制御プロトコルが用いられる。特に、これらシグナリング及び制御プロトコルは、通信セッションの設定、変更及び終了に対し、いくつかの機能を与える。いくつかのシグナリング及び制御プロトコルは、HTTPのようなリクエスト及びレスポンストランザクションモデルに基づく。特定の期間内に、リクエストに対するレスポンスが受信されないとき、トランザクションはタイムアウトが発生したとみなされる。
そのようなシグナリング及び制御プロトコルの1つであるSIP(Session Initiation Protocol)は、パケットベースのネットワークにおいてインターネットプロトコル(IP)ベースの電話通信サービスの配信を確立及び管理するアプリケーションレイヤのシグナリング及び制御プロトコルである。SIPは、オーディオ、テレビ会議、テキストメッセージ、双方向型のゲーム、及び自動転送のような種々の通信サービスをサポートするために用いることができる。SIPプロトコルは、2002年に発行され、IETF(Internet Engineering Task Force)により整備され、RFC(Request for Commence)3261に説明されている。SIPはエンドユーザへの完全なIPベースの電話通信サービスを提供することができるマルチメディアアーキテクチャを構築する他のプロトコルと互換性がある。例えば、SIPは、UDP(User Datagram Protocol)やTCP(Transmission Control Protocol)のような任意のトランスポートレイヤ上で動作することができる。
一側面において、方法は、第1のデバイスからの応答メッセージを受信しないときに、非登録シグナリング及び制御トランザクションについてトランザクションタイムアウトを検出すること、前記非登録トランザクションについてトランザクションタイムアウトを検出した後、特定の期間、前記第1のデバイスとの少なくとも1つの後続のシグナリング及び制御トランザクションを開始すること、及び、前記少なくとも1つの後続のシグナリング及び制御トランザクションについて応答メッセージが受信されないとき、前記特定期間の後、第2のデバイスとの登録シグナリング及び制御トランザクションを開始すること、を含む。
他の側面において、装置は、信号を送信する送信回路と、第1のデバイスからの応答メッセージを受信しないときに、非登録シグナリング及び制御トランザクションについてトランザクションタイムアウトを検出するトランザクション管理モジュールと、を含む。トランザクション管理モジュールは、前記非登録シグナリング及び制御トランザクションについてトランザクションタイムアウトを検出した後、特定の期間、送信回路を介して、前記第1のデバイスとの少なくとも1つの後続のシグナリング及び制御トランザクションを開始し、前記少なくとも1つの後続のシグナリング及び制御トランザクションについて応答メッセージが受信されないとき、前記特定期間の後、前記送信回路を介して、第2のデバイスとのシグナリング及び制御トランザクションを開始する。
他の側面において、第1のデバイスからの応答メッセージを受信しないときに、非登録シグナリング及び制御トランザクションについてトランザクションタイムアウトを検出するコード、前記非登録トランザクションについてトランザクションタイムアウトを検出した後、特定の期間、前記第1のデバイスとの少なくとも1つの後続のシグナリング及び制御トランザクションを開始するコード、及び、前記少なくとも1つの後続のシグナリング及び制御トランザクションについて応答メッセージが受信されないとき、前記特定期間の後、第2のデバイスとのシグナリング及び制御トランザクションを開始するコードを含む命令を有するコンピュータ読み取り可能な媒体を含むコンピュータプログラム製品。
他の実施形態において、装置は、第1のデバイスからの応答メッセージを受信しないときに、非登録シグナリング及び制御トランザクションについてトランザクションタイムアウトを検出する手段、及び、前記非登録シグナリング及び制御トランザクションに対しトランザクションタイムアウトを検出した後、特定の期間、前記第1のデバイスとの少なくとも1つの後続のシグナリング及び制御トランザクションを開始する手段を含み、前記開始する手段は、前記少なくとも1つの後続のシグナリング及び制御トランザクションについて応答メッセージが受信されないとき、前記特定期間の後、第2のデバイスとのシグナリング及び制御トランザクションを開始する。
この開示に説明された技術は、ハードウェア、ソフトウェア、ファームウェア、あるいはこれらの任意の組合せで、通信装置に実装され得る。ソフトウェアは、当初、命令、プログラムコード、あるいはこれらと同種のものとして記憶されることがある。従って、この開示は、コンピュータ読み取り可能な媒体からなる通信セッションの確立及び管理のためのコンピュータプログラム製品も意図するものであり、コンピュータ読み取り可能な媒体は、コンピュータに、この開示に従った技術及び機能を実行されるコードを含む。
この開示の技術の1または複数の例の詳細は、添付の図面及び以下の記述に説明されている。この開示の他の特徴、対象、及び利点は、当該記述及び図面、さらに請求の範囲とは明らかであろう。
シグナリング及び制御プロトコルを用いる2つまたはそれより多い通信デバイス間の通信セッションを管理するシステムを説明するブロック図。 図1の複数の通信デバイスのうちの1つをさらに詳細に説明するブロック図。 この開示の技術に従ってトランザクションタイムアウトを処理する通信デバイスの動作例を説明するフロー図。 基礎となるトランスポートレイヤプロトコルとしてUDPを用いたとき、再送スケジュールに従って、プロキシサーバへのメッセージ送信及びメッセージ再送を行うトランザクション管理モジュールの動作例を説明するフロー図。 基礎となるトランスポートレイヤプロトコルとしてTCPを用いたとき、再送スケジュールに従って、プロキシサーバへのメッセージ送信及びメッセージ再送を行うトランザクション管理モジュールの動作例を説明するフロー図。
一般に、この開示は、通信デバイス間の通信セッションの確立に関する。例えば、通信デバイスは、デバイス間の通信セッションの確立及び管理のためにシグナリング及び制御プロトコルを用いることがある。SIP(Session Initiation Protocol)のようないくつかのシグナリング及び制御プロトコルは、HTTPのようなリクエスト及びレスポンストランザクションモデルに基づく。ここで用いられるように、“トランザクション”という用語はメッセージ交換のことを言う。特に、各トランザクションは、複数の通信デバイスのうちの第1通信デバイスから第2通信デバイス(またはプロキシサーバ)へ送信される第1メッセージと、該第2通信デバイス(またはプロキシサーバ)から該第1通信デバイスへの応答として受信される第2メッセージとの少なくとも2つのメッセージからなる。例として、トランザクションは、特定のセッション管理機能を起動するリクエストメッセージと、少なくとも1つのレスポンスメッセージとからなることがある。いくつかの場合において、トランザクションは少なくとも1つの肯定応答メッセージも含むことがある。いずれかの場合、特定の期間内に、トランザクションの第1メッセージについて応答が受信されないとき、当該トランザクションはタイムアウトとみなされる。トランザクションという用語は、“呼制御トランザクション”“シグナリングトランザクション”“呼設定トランザクション”あるいはこれと同等なものと、交換可能に使用される。
この開示は、通信セッションの設定及び管理の間トランザクションタイムアウトからの回避及び回復のための技術を説明する。特に、通信デバイスは、トランザクションタイムアウトとなったシグナリング及び制御メッセージのタイプに基づき、トランザクションタイムアウトに対し、異なる処理を行う。一側面において、通信デバイスは、登録トランザクションでのトランザクションタイムアウトに対し、非登録トランザクションでのトランザクションタイムアウトとは異なる処理を行うことがある。“登録(register)トランザクション”は、送信元デバイスへデータを送信するロケーションの追加または削除を要求するメッセージの交換をいう。SIPプロトコルにおいて、例えば登録トランザクションのメッセージは、登録開始(initial REGISTER)メッセージ、再登録(re-REGISTER)メッセージ、及び登録解除(de-REGISTER)メッセージを含む。“非登録(non-register)トランザクション”は、登録トランザクションではないトランザクションをいう。SIPプロトコルにおいて、非登録トランザクションのメッセージの例には、SUBSCRIBEメッセージ、INVITEメッセージ、CANCELメッセージ、PRACKメッセージ、UPDATEメッセージ、BYEメッセージ、ACKメッセージ、及びこれらと同様のものが含まれる。
この開示の技術に従うと、トランザクションを開始した通信デバイスは、ここでは、クライアントデバイスあるいは送信元デバイスというが、この通信デバイスは、トランザクションタイムアウトとなったトランザクションが非登録トランザクションであるとき、少なくとも1つの後続のメッセージの送信を試みることがある。送信元デバイスは、例えば、連続するタイムアウトの回数が閾値になるまで、あるいはタイマ切れとなるまで、あるいは登録メッセージに関連するトランザクションタイムアウトが起こるまで、後続するメッセージの送信を続けることがある。連続するタイムアウトの回数が閾値になった後、あるいはタイマ切れとなった後、あるいは登録メッセージに関連するトランザクションタイムアウトが起きた後、送信元デバイスは、現在の通信セッションをキャンセルし、新たなプロキシサーバへの登録メッセージの送信を送ることがある。非登録トランザクションによりトランザクションタイムアウトが起きた後、1または複数の後続メッセージの送信が可能であるので、トランザクションタイムアウトの原因が一時的であるとき、通信デバイスが、継続中の通信セッションを不必要に切断するのを避けることができる。
図1は、シグナリング及び制御プロトコルを用いる2つまたはそれより多い通信デバイス間の通信セッションを管理するシステム10を説明するブロック図である。図1に示す例において、システム10は、通信デバイス14A及び14B(まとめて“通信デバイス14”)を含む。システム10は、SIPネットワーク12のようなシグナリングネットワークも含み、これは、インターネットプロトコル(IP)ネットワーク(図示せず)のようなパケットベース通信ネットワークに組み込まれているか、あるいは接続されている。図1の例において、通信デバイス14は、SIPネットワーク12により管理運営されているSIP通信セッションを用いる他の通信デバイスと通信する。多くの場合、通信デバイス14は、1または複数の通信デバイスと通信することがある。説明の簡単のため、図1には、2つの通信デバイス14のみの間の通信を描いている。
通信デバイス14は、有線または無線通信能力を備えていることがある。例えば、通信デバイス14のうちの1つまたは両方が、セルラー電話、衛星電話、無線電話、PDA(personal digital assistant)、いわゆるSIP電話、ソフトフォン、WiFiハンドセット、IP電話、あるいは無線通信能力を有する他の任意のデバイスでもよい。あるいは、通信デバイス14のうちの1つまたは両方が、デスクトップコンピュータ、ラップトップコンピュータ、固定電話、メディアゲートウェイ、アプリケーションサーバ、あるいは有線通信能力を有する他の任意のデバイスでもよい。この開示において、通信デバイス14は、VoIP(Voice-over-Internet-Protocol)電話及び音声会議、電話及びテレビ会議、テキストメッセージイング、オンラインゲーム、及び他のパケットベース電話通信アプリケーションのような種々のアプリケーションのうちの1つまたは複数に対するSIPシグナリングプロトコルをサポートするように説明される。しかし、ここに説明される技術は、ITU−T(International Telecommunication Union Telecommunication Standardization Sector)により作成されたH.323標準のような、他のシグナリングプロトコルを用いるために拡張することができる。
複数の通信デバイス14は、アクセスネットワーク18A及び18B(まとめて“アクセスネットワーク18”)を介して、それぞれSIPネットワーク12に接続される。特に、通信デバイス14Aは、アクセスネットワーク18Aを介してSIPネットワーク12に接続され、通信デバイス14Bは、アクセスネットワーク18Bを介してSIPネットワーク12に接続される。アクセスネットワーク18A及び18Bは、有線ネットワークでもよいし、無線ネットワークあるいはこれらの組合せでもよい。無線という状況においては、通信デバイス14は、GPRS(General Packet Radio Service)、CDMA(Code Division Multiple Access)、CDMA2000、W−CDMA(Wideband-CDMA)、1xEV−Do(1x Evolution-Data Optimized)などのような種々の無線アクセス技術(RAT:wireless radio access technologies)のうちのいずれかに従ってアクセスネットワーク18を介して通信する。
複数の通信デバイス14は、同じアクセス技術を用いて、あるいは異なるアクセス技術を用いて、アクセスネットワーク18を介して通信することがある。この代わりに、あるいは、さらに、複数の通信デバイス14は、種々のIEEE802.11標準により定義されているプロトコルのような無線ローカルエリアネットワーク(WLAN)プロトコルに従って通信することができるようになっている。アクセスネットワーク18は、無線信号を通信デバイスと交換する複数の無線基地局及び複数のアクセスポイントを含むことがあり、また、インターネット、WAN(wide area network)、LAN(local area network)、及びまたはPSTN(public switched telephone network)のようなグローバルなパケットベースのコアネットワークを介して、他のネットワーククライアントまたはサーバへのコネクションを提供する。
SIPネットワーク12は、通信デバイス14のために動作して、1または複数のSIPメッセージのような複数のシグナリングメッセージを交換することにより通信セッションの確立を容易にするプロキシサーバ20A及び20B(まとめて“プロキシサーバ20”)を含む。通信デバイス14及びプロキシサーバ20は、通信デバイス14間の1または複数の通信セッションの設定及び管理のためのSIPメッセージを交換する。SIPセッションが確立されると、オーディオ、ビデオ、あるいはこれら両方のマルチメシアコンテンツが、リアルタイムトランスポートプロトコル(RTP)のようなメディアトランスポートプロトコルに従って、通信デバイス14間で交換される。
送信元デバイス、例えば通信デバイス14Aのユーザが、該デバイス上で確立すべき通信セッションの要求を実行するアプリケーションと相互に情報をやりとりするとき、送信元デバイスは、送信元デバイスと終端デバイスである例えば通信デバイス14Bとの間の通信セッションの確立を容易にするためにプロキシサーバ20と通信する。この開示で用いられる“送信元デバイス”という用語は、複数の通信デバイス14のうち、セッションの確立、例えば発呼の試みを開始した、1つの通信デバイスをいう。この開示で用いられる“終端デバイス”は、複数の通信デバイス14のうち、送信元デバイスが通信セッションの確立を試みようとしている相手である1つの通信デバイスをいう。例示的な説明のために、通信デバイス14Aは送信デバイス、通信デバイス14Bは終端デバイスとして説明される。しかし、これらデバイスのいずれも、特定のセッションにおいて、送信元デバイスや終端デバイスとして機能することができる。言い換えれば、あるセッションにおける送信元デバイスあるいは終端デバイスは、セッションが進行中の間、トランザクションを開始することができる。さらに、上述したように、送信元デバイスは、多くの場合、複数の終端デバイスと通信することがある。
通信デバイス14及びプロキシサーバ20は、通信セッションの設定及び管理のために、多くのSIPメッセージを交換することがある。テレビ電話の場合、例えば、通信デバイス14及びプロキシサーバ20は、VoIPセッションを確立するための多くのSIPメッセージを交換することがある。通信セッションの確立は、1または複数のトランザクションを必要とする。特に、通信デバイス14Aは、プロキシサーバ20Aへ、例えばSIPリクエスト及びレスポンスといった複数のメッセージを送信する。プロキシサーバ20Aは、該複数のメッセージを処理し、該複数のメッセージを、最終的に、通信デバイス14Bに関連するプロキシサーバ20Bへ転送する。プロキシサーバ20Bは、該複数のメッセージを通信デバイス14Bへ転送する。通信デバイス14Aは、通信デバイス14A上で実行する異なる複数のアプリケーションのために、同時に複数のトランザクションに参加することがある。
通信デバイス14Aで開始された該複数のトランザクションのそれぞれに対し、通信デバイス14Aは応答を待つ。通信デバイス14Aは、例えば、送信されたリクエストメッセージのそれぞれに対する応答であるレスポンスメッセージを待つ。他の例として、通信デバイス14Aは、送信されたリクエストメッセージのそれぞれに対する応答である肯定応答(acknowledgement)メッセージを待つことがある。応答が受信されない場合、通信デバイス14Aは、メッセージに対する応答が受信されるまで、あるいはトランザクションタイムアウトが発生するまで、再送スケジュールに従ってメッセージを再送することがある。個々で用いられるように、“トランザクションタイムアウト”は、シーケンス中の最初のメッセージが送信されたときから計測された特定の時間(期間)内に応答が受信されない状態をいう。
SIPトランザクションは多くの原因のいずれかの理由で、タイムアウトとなる。SIPトランザクションは、例えば、エアインタフェース上の無線周波数(RF)外れ(outage)、またはIPコアネットワーク上の大量のトラフィックの輻輳により起こるネットワークパケット損失が原因となって、タイムアウトとなることがある。他の例として、インテグリティチェックの失敗のような、IPセキュリティ(IPsec)エラーが発生したときにもタイムアウトとなることがある。SIPトランザクションタイムアウトの他の原因は、プロキシサーバ20または到達できないプロキシサーバ20での回答失敗を含む。
トランザクションタイムアウトの原因は、原因のタイプに依存して、長さに違いがあることがある。より詳細には、トランザクションタイムアウトのいくつかの原因は、一時的なRF外れ、あるいはトラフィック輻輳のような、単なる一時的なものであることがある。他のトランザクションタイムアウトは、例えば、到達できないプロキシサーバ20の場合には、永続的な原因であることがある。従って、トランザクションタイムアウトの全ての原因に同じ方法で対処することは、しばしば、通信セッションの進行を不必要に切断することになる。この開示は、中心セッションの管理において、トランザクションタイムアウトを処理するための技術を提供する。この技術は、一時的な状態によりタイムアウトが起きたとき、進行中の通信セッションを不必要に切断をすることを低減することができる。さらに、該技術は、トランザクションタイムアウトを避けることも試みることができる。
特に、通信デバイス14は、トランザクションタイムアウトの起きたシグナリング及び制御トランザクションのタイプに基づき、トランザクションタイムアウトに対し異なる処理を行う。一側面において、通信デバイス14は、登録トランザクションの間に起きたトランザクションタイムアウトに対し、非登録トランザクションの間に起きたトランザクションタイムアウトとは異なる処理を行う。上述したように、“登録トランザクション”は、登録メッセージを送信する通信デバイスに対するロケーション情報でロケーションサーバを更新するメッセージ交換のことをいう。登録メッセージは、例えば、通信デバイス14AのURI(Uniform Resource Identifier)及びまたは通信デバイス14AのIPアドレスを含むことがある。SIPプロトコルにおいて、登録メッセージは、登録開始(initial REGISTER)メッセージ、再登録(re-REGISTER)メッセージ、及び登録解除(de-REGISTER)メッセージを含むことがある。より詳細には、登録開始メッセージは、SIP通信デバイスにより用いられ、以前、該デバイスのコンタクトアドレスとその登録されたアドレスのレコードとの関連付けがないとき、該デバイスのコンタクトアドレスを、その登録されたアドレスのレコードに関連付ける。再登録メッセージは、通信デバイスの関連付けのライフタイムをリフレッシュする。登録解除メッセージは、関連付けを解除する。“非登録トランザクション”は、登録メッセージではないメッセージの交換を言う。SIPプロトコルにおいて、例えば、非登録メッセージは、SUBSCRIBEメッセージ、INVITEメッセージ、CANCELメッセージ、PRACKメッセージ、UPDATEメッセージ、BYEメッセージ、ACKメッセージ、及びこれらと同様のものを含む。これら非登録メッセージは、ほとんど、通信デバイス14間の通信セッションの生成、維持、及び終了のために用いられる。ネットワーク内のあるイベントについての情報を得るために、他の非登録メッセージが用いられることがある。上記例はSIPプロトコルに特有である。この開示の技術は、拡張することにより、他のシグナリング及び制御プロトコルにも適用可能である。
この開示の技術に従うと、トランザクションを開始する通信デバイス、例えばこの例における通信デバイス14Aは、トランザクションタイムアウトの起きた前回のトランザクションが非登録トランザクションであるとき、現在のプロキシサーバ20Aへ、少なくとも1つの後続のトランザクションを開始することがある。通信デバイス14Aは、トランザクションタイムアウトの後、特定の期間、プロキシサーバ20Aへ1つまたは複数のメッセージを送信することにより、後続の複数のトランザクションの開始を続けることがある。通信デバイス14Aは、例えば、連続するタイムアウトの回数が閾値になるまで、プロキシサーバ20Aとの後続の複数のトランザクションの開始を続けてもよい。あるいは、通信デバイス14Aは、最初のタイムアウトの発生から計測する失敗続期間タイマがきるまで、プロキシサーバ20Aとの後続の複数のトランザクションの開始を続けてもよい。通信デバイス14Aは、登録メッセージに関連するトランザクションタイムアウトが起きるまで、プロキシサーバ20Aとの後続の複数のトランザクションの開始を続けてもよい。
いくつかの場合において、連続するタイムアウトの回数の閾値、あるいはトランザクションタイムアウトが発生して計測される継続時間の閾値は、トランザクション失敗の原因あるいはトランザクションのタイプに基づき異なることがある。言い換えれば、失敗継続時間タイマの継続時間及びまたは連続するタイムアウトの回数の閾値は、ある事実によりすばやく達するように調整されることがあり、これにより、後続の試みたトランザクショントランザクションの最中に失う着呼の数を低減することができる。失敗継続時間タイマの継続時間及びまたは連続するタイムアウトの回数の閾値は、例えば、呼着信統計値に基づき予め設定されるか、あるいは動的に選択される。呼着信統計値は、SIPリクエストが到着すると推定されるレートのことをいう。SIPリクエストの大部分は、電話セッションの確立や、インスタントメッセージの配信を予期する。トランザクションタイムアウトの原因も通信デバイスへ送信されるメッセージに影響を与えることもある。これは、連続してタイムアウトが閾値の回数発生するまで、着信するセッションに対し応答できないことを意味する。応答できない着信セッションの耐え得る最大数を、着信セッションが到着する平均レートで除すると、ブロッキングが可能な継続時間が得られる。この期間内に開始されたトランザクションは、タイムアウトを連続して起こすことがある。見逃された着信セッションとは異なり、失敗した発信セッションは、通信デバイスのユーザに直ちに認識される。トランザクションタイムアウトに対する閾値は、そのような失敗したセッションの許容可能な数を表す。いくつかの場合において、継続時間は、呼着信レート統計値に基づき予め設定することができる。
トランザクションが、例えば、連続するトランザクションタイムアウトが閾値の回数起きるまで、または失敗継続時間タイマが切れるまで、または登録メッセージに関連するトランザクションタイムアウトが起きるまでの特定の期間の間、連続してタイムアウトした後、通信デバイス14Aは、現在の通信セッションをキャンセルし、新たなプロキシサーバとの登録トランザクションを開始する。非登録トランザクションにより起きたトランザクションタイムアウトの後、1または複数の後続のメッセージを送信できることは、トランザクションタイムアウトの原因が、永続的、長期的、または持続的であるのとは対称的に、単に一時的なものであるとき、通信デバイス14Aが、進行中の通信セッションを不必要に切断することを避けることができる。
図1の例において、システム10は、2つのプロキシサーバ20と、2つの終点通SoPにデバイス14を含む。さらに、システム10は、1または複数のレジスタサーバ及びロケーションサーバのような、図1には示されていないさらなるエレメントを含むことがある。この開示に説明されているトランザクションタイムアウトを処理する技術は、リクエスト−レスポンスパターンを用いる通信デバイスにより実行されることがあり、損失の大きい通信メディアで動作するデバイスに特に関連する。従って、図1に示したようなSIPネットワーク12は、単なる例であって、この開示に広範にわたって説明されたような技術を制限するものとみなしてはならない。従って、この開示の技術は、同様なシグナリング及び制御プロトコルにも等しく適用可能である。
図2は、図1の通信デバイス14Aをさらに詳細に説明するブロック図である。図1の通信デバイス14Bには、図2の通信デバイス14Aに説明されたものと同様の構成部が含まれていてもよい。通信デバイス14Aは、アンテナ22、トランシーバ24、プロセッサ26、及びメモリ28を含む。トランシーバ24は、信号を送信及び受信する送信回路及び受信回路(図示せず)を含む。図2に説明された例において、トランシーバはアンテナ22を介して信号を送受信する。トランシーバ24は、例えば、増幅器、フィルタ、周波数変換器、変調器、復調器、アナログ/デジタル変換回路、デジタル/アナログ変換回路、及びデジタルモデム回路のような、適切なアナログ及びまたはデジタル回路コンポーネントを含む。動作において、アンテナ22は、通信デバイス14A二よりサポートされている無線周波数帯域で無線信号を送受信する。トランシーバ24は、この開示で説明されるプロトコルのような、任意の所望の無線アクセス技術(RAT)、あるいは任意のWLANプロトコルをサポートするように構成されてもよい。しかし、いくつかの場合において、送信及び受信回路は別個のトランスミッタコンポーネント及びレシーバコンポーネントにより構成されてもよい。図2に説明された通信デバイスの例は、無線通信デバイスであるが、この技術は、有線通信デバイスにも等しく適用可能である。
プロセッサ26は、トランシーバ24が信号を送信し、トランシーバ24で受信された信号を処理するように、トランシーバ24を制御する。プロセッサ26は、アプリケーションモジュール32A−32N(まとめて“アプリケーションモジュール32”)の複数の通信セッションの管理を司る。特に、トランザクション管理モジュール30及びアプリケーション32は、通信セッションの設定、変更及び終了を行う。アプリケーションモジュール32(それぞれは、図2において“APP”とラベル付けされている)は、プロセッサ26で実行し、SIPのようなシグナリング及び制御プロトコルを用いて確立された通信セッションを用いるアプリケーションである。アプリケーションモジュール32は、例えば電話キーパッドのようなユーザインタフェースを介して、ユーザとやりとりする。アプリケーションモジュール32は、ユーザからの入力に応じて、シグナリング及び制御メッセージを生成し、トランザクションを開始する。例えば、ユーザがVoIP電話の呼び出しを行おうとする場合、VoIP電話アプリケーションは、INVITEトランザクションを生成する。アプリケーションモジュール32は、例えば、VoIPテレビ電話及び会議アプリケーション、テレビ電話及び会議アプリケーション、テキストメッセージアプリケーション、インスタントメッセージ、オンラインゲームアプリケーション、プレゼンスアプリケーション、ビデオ共有アプリケーション、プッシュ・ツー・トーク(push-to-talk)及びまたは他のパケットベースの電話通信アプリケーションのうちの1つまたは複数のSIPベースのアプリケーションモジュールでもよい。
トランザクション管理モジュール30は、アプリケーションモジュール32のトランザクションを管理する。言い換えれば、トランザクション管理モジュール30は、シグナリング及び制御プロトコルのトランザクションレイヤを実装する。トランザクション管理モジュール30は、トランザクションタイムアウトを監視し、この開示の技術に従って、トランザクションタイムアウトを処理する。SIPは、リクエスト/レスポンストランザクションモデル上で動作するので、トランザクション管理モジュール30は、各トランザクションにおいて、例えば、レスポンスメッセージあるいは肯定応答メッセージといった応答を待つ。応答が受信されなかった場合、トランザクション管理モジュール30は、再送スケジュールに従って、メッセージを再送することがある。いくつかの側面において、再送スケジュールは、メッセージのタイプに基づき異なることがある。次のテーブル1は、UDPトランスポートにおけるSIPリクエストメッセージのいくつかの異なるタイプについての再送スケジュールの例を示している。
Figure 2010504045
テーブル1は、INVITEメッセージ、非INVITEメッセージ(ACK以外)、及びACKの3つのタイプのリクエストに対し、トランザクションタイムアウトが起こるまでの時間を、ここでは、トランザクションタイムアウトタイマとして示している。INVITEメッセージ、非INVITEメッセージ(ACKメッセージ以外)、及び2xxレスポンスメッセージに対し送信されたACKメッセージに対し、トランザクションタイムアウトは、64*T1である。T1は、往復時間(RTT : round-trip time)の推定値であり、SIPプロトコルの場合、T1は500ミリ秒のデフォルト値をもつ。3xx−6xxレスポンスメッセージの肯定応答で送信されるACKメッセージの場合、トランザクションタイムアウトタイマは、SIPプロトコルに従えば32秒である。トランザクションタイムアウトタイマの例は、T1の関数であるが、他のシグナリング及び制御プロトコルは、特定のトランザクションタイムアウトタイマ(例えば、他の変数の関数として)を設定することもできる。
応答が受信されないとき、トランザクション管理モジュール30及びまたはアプリケーション32は、テーブル1のそれぞれの再送スケジュールに従ったトランザクションの開始メッセージを再送することがある。例えば、トランザクション管理モジュール30は、INVITEトランザクションがトランザクションタイムアウトを発生する前に、INVITEメッセージを7回再送する。INVITEメッセージに対する再送スケジュールの例は、テーブル1の第1行目に示されている。特に、INVITEメッセージは、T1―500msの場合において、応答が受信されないとき、または受信されるまで、最初の送信リクエストに対し、0.5秒(sec)、1.5sec、3.5sec、7.5sec、15.5sec、31.3secの間隔で、送信される。非INVITEメッセージに対する再送スケジュールの例は、テーブル1の第2行目に示されている。トランザクション管理モジュール30は、トランザクションがタイムアウトを発生する前に、メッセージを11回再送する。ACKメッセージの場合、再送スケジュールは、いつレスポンスメッセージを受信したかに依存するが、トランザクションがタイムアウトを発生する前に、合計11回の再送が送信される。
テーブル2は、レスポンスメッセージを必要とするサーバトランザクションにおける、同様の再送スケジュールを示している。リクエストメッセージに対する上記説明と同様に、通信デバイス14Aは、トランザクションがタイムアウトを発生するまで、あるいは、レスポンスメッセージに対する応答として肯定応答メッセージを受信するまで、再送スケジュールに従って、応答メッセージを再送する。非INVITEトランザクションに対するレスポンスは、リクエストの再送が受信される度に再送される。
Figure 2010504045
トランザクションのシグナリングメッセージは、シグナリング待ち時間を低減するために圧縮される。IETFにより開発され、IETF RFC320で説明されているようなシグナリング圧縮(SigComp)プロトコルは、SIPメッセージを含むシグナリングメッセージを圧縮及び解凍をサポートするアーキテクチャを確立する。圧縮は、メッセージから冗長な情報を取り除き、解凍は、解凍されたメッセ−ジが可能な限りオリジナルのメッセージと類似するように、冗長な情報を復元する。圧縮されたメッセージをその圧縮前の形に復元することに失敗することを、解凍の失敗という。どの圧縮のスキームも互換性のある圧縮アルゴリズムを実行するためにコンプレッサとデコンプレッサとが必要となる。SigCompでは、この要求は、コンプレッサに、互換性のある解凍アルゴリズムを、解凍を行う終端に送信するよう命じることで満たされる。このアルゴリズムの表現は、SigComp専用用語で“バイトコード”と呼ばれる。一連のシグナリングメッセージに共通する冗長は、しばしば存在し、より効果的な圧縮を達成するために利用される。以前送信されたメッセージの全部または一部は、後続のメッセージを圧縮するためのステート情報を構成する。前回保存されたメッセージとの比較でメッセージを圧縮することは、動的圧縮と呼ばれる。静的ステートアイテムとの比較で圧縮することも可能である。そのようなアイテムは、しばしば、シグナリングメッセージ中に検出される共通のキーワードの辞書である。この開示中の圧縮に関する記述は、SigCompプロトコルの使用を示唆するが、シグナリングメッセージの可逆圧縮を実行するための他のメカニズムも容易に適用できる。
トランザクション管理モジュール30及びまたはアプリケーション32は、現在のトランザクションより前に起きたトランザクションタイムアウトの数に基づき、少数の送信に適用される圧縮手法とは異なる圧縮手法を、その後のリクエストの再送に適用することができる。さらに、トランザクション管理モジュール30は、基礎となるトランスポートレイヤプロトコルに基づき、イニシャルメッセージ及び任意のメッセージの再送に、異なる圧縮手法を用いることもできる。特に、トランザクション管理モジュール30は、前回トランザクションタイムアウトが起きなかったとき、イニシャルメッセージと、存在する動的ステート情報を用いて圧縮されたメッセージの1または複数の再送を送信することがある。
基礎となるトランスポートレイヤプロトコルはUDP(User Datagram Protocol)である場合、トランザクション管理モジュール30は、トランザクションのイニシャルメッセージと、存在する動的ステート情報を用いて圧縮されたメッセージの最初のN回の再送とを送信することがある。イニシャルメッセージまたは最初のN回の再送に対し応答が受信されなかった場合、トランザクション管理モジュール30は、メッセージの残りの再送を、異なる圧縮手法を用いて、あるいは圧縮せずに送信することがある。例えば、トランザクション管理モジュール30は、動的ステート情報を用いずに圧縮されたメッセージの残りの再送を送信することがある。ステート情報を用いずにデータを圧縮することは、例えば、上述の例における通信デバイス14Bのような終端デバイスでの解凍失敗の可能性を低減する。例えば、終端デバイスがステート情報を失った場合、ステート情報を用いて圧縮されたメッセージをうまく解凍することができない。従って、ステート情報を用いずに圧縮されたメッセージの再送を行うことは、当該メッセージに対する応答を受信する可能性が高くなる。より前の送信にバイトコードが含まれている場合、トランザクション管理モジュール30は、再送にバイトコードを含めることを続けることができる。メッセージのサイズが、例えば1300バイトといった閾値を越えるとき、トランザクション管理モジュール30は、通信デバイスとプロキシとの間のTCP(Transmission Control Protocol)コネクションを開き、残りの再送を行う。
しかし、基礎となるプロトコルがTCPである場合、トランザクション管理モジュール30は、存在する動的ステート情報を用いて圧縮された全てのトランザクションを送信する。言い換えれば、圧縮手法は、全再送スケジュールの間も同じである。これは、TCPは、プロトコルに従って自動的に再送を実行し、再送の間圧縮手法を調整することが許容されていないからである。
以前1または複数回のタイムアウトが起きたとき、トランザクション管理モジュール30は、イニシャルメッセージの送信と、動的ステート情報を用いずに、バイトコードで圧縮されたメッセージの必要な再送を行う。これも、終端デバイスにおける解凍の失敗の可能性を低減する。トランザクション管理モジュール30は、イニシャルメッセージの送信と、基礎となるトランスポートレイヤのプロトコルに関わりなく単一の圧縮手法を用いる全ての再送を行う。基礎となるトランスポートレイヤのプロトコルがTCPである場合、トランザクション管理モジュール30は、イニシャルメッセージの送信と、任意の必要な再送を行う前に、新たなTCPコネクションを開くことがある。トランザクション管理モジュール30は、いくつかの場合、同じポート番号を用いて、新たなTCPコネクションを開く。再送技術は、トランザクション管理モジュール30により制御されると説明されているが、再送は、アプリケーション32により、またはトランザクション管理モジュール30とアプリケーション32との連携で制御されてもよい。
いくつかの側面において、トランザクション管理モジュール30は、解凍の失敗の原因とともに、解凍の失敗を検出するメカニズムを含むことがある。これらの場合、トランザクション管理モジュール30は、解凍の失敗の原因に基づき、後続の種々のメッセージの再送に用いる圧縮手法を変更することがある。例えば、SigCompプロトコルのようないくつかのプロトコルは、解凍の失敗を検出するメカニズムをもつ。一般的に、解凍の失敗は、メッセージの最初の送信の後に直ちに検出されなければならない。メッセージがUDPトランスポートを通じて送信され、解凍の失敗の原因が検出された場合、次のリクエストの送信は、当該失敗の原因を回避する変更された圧縮手法を用いることができる。TCPの場合、現在のTCPコネクションは閉じられ、新たなTCPコネクションを開いて、適切な変更を行って同じリクエストを送信することを再度試みる。
例えば、IETF RFC 4077は、SigCompに単純な否定応答(NACK:Negative Acknowledgement)メカニズムを定義し、受信者に失敗の発生した送信者と通信することを許容する。このNACKは、失敗の特徴を通信する理由(reason)コードを含む。あるタイプの失敗の場合、NACKは、該失敗から回復するために有用な追加的な詳細も含むことがある。アクセス試行が、圧縮を行う終端で削除されたステートでなされたとき、共通の失敗が発生する。STATE_NOT_FOUNDという理由コードと、ステート識別子とを含むSigComp NACKメッセージは、失われたステートをアクセスすることをしない後続の送信を行わせることができる。圧縮スキームに、不可逆フローを示す他の理由コードは、非圧縮動作への切替をもたらすことがある。
他の側面において、トランザクション管理モジュール30は、トランザクションタイムアウトの原因を検出するためにIETF RFC 3263で推奨されているように、ICMP(Internet Control Message Protocol)エラーメッセージを用いることがある。例えば、トランザクション管理モジュール30は、関連あるコードフィールドをもつ宛先到達不能(Destination Unreachable)メッセージのような、重大なICMPエラーメッセージを受信した場合、UDPトランスポートを用いているのなら、メッセージのさらなる再送を中止し、このエラーメッセージを登録リクエストのトランザクションタイムアウトのように取り扱うことができる。
リクエストが受信されたことを示すレスポンスが、割り当てられた時間(例えば、テーブル1及び2に示されたほとんどの場合において64*T1)内に受信されたとき、トランザクション管理モジュール30は、タイムアウトカウンタ34をゼロに設定する。さらに、トランザクション管理モジュール30は、失敗継続時間タイマ36もリセットしてもよい。受信されたレスポンスが、プロキシサーバ20Aが到達不能であることを示す。さらに、トランザクション管理モジュール30は、例えば、以下に説明するように、送信メッセージに対するトランザクションタイムアウトが発生したとき、動的圧縮を無効にする。
イニシャルメッセージに対する応答が受信できなかったとき、あるいはトランザクションタイムアウトタイマの継続時間の間、メッセージの再送に対し応答が受信できなかったとき、該トランザクションはタイムアウトが起きる。上述したように、トランザクション管理モジュール30は、トランザクションタイムアウトに対し、該トランザクションタイムアウトの起きたシグナリング及び制御トランザクションのタイプに基づき、異なる処理を行う。一面において、トランザクション管理モジュール30は、登録トランザクションで起きたトランザクションタイムアウトは、非登録トランザクションで起きたトランザクションタイムアウトとは異なる処理を行う。
トランザクションタイムアウトの起きたトランザクションが登録トランザクションである場合、トランザクション管理モジュール30は、異なるプロキシサーバと新たな登録トランザクションを開始する。特に、トランザクション管理モジュール30は、現在の通信セッションを切断し、そのセッションに対応するアプリケーション32へ通知する。アプリケーション32は、トランザクション管理モジュール30からの通知を受け取ると、現在のリソースを解放し、キャンセルされた通信セッションを用いるダイアログを中断する。アプリケーション32のうちの1つのアプリケーションとトランザクション管理モジュール32とは連携して、新たなプロキシサーバ20を選択し、該新たなプロキシサーバ20とのイニシャル登録を実行する。上述したように、登録メッセージは、登録開始(initial register)メッセージ、再登録(re-register)メッセージ、及び登録解除(de-register)メッセージを含む。トランザクションタイムアウトの起きたトランザクションが、割当解除メッセージを含む場合には、トランザクション管理モジュール30は、通信デバイス14Aを登録解除するための登録解除手続きをさらに開始してもよい。
トランザクションタイムアウトの起きたトランザクションが非登録トランザクションである場合、トランザクション管理モジュール30は、通常、当該トランザクションに関連するアプリケーション32のうちの1つに通知する。従って、特定のトランザクションタイムアウトを処理することが、アプリケーション32に委ねられる。テーブル3は、トランザクション管理モジュール30及びアプリケーション32による、特定のリクエストトランザクションタイムアウトの処理例の詳細を与える。特定のトランザクションタイムアウトの処理は、タイムアウトトランザクションのリクエストメッセージのタイプに基づき異なる。
Figure 2010504045
Figure 2010504045
テーブル3に示したように、トランザクション管理モジュール30は、通常、失敗したトランザクションで起きた特定のトランザクションタイムアウトに対し、アプリケーション32のうちの対応するアプリケーションに通知する以外は、何もしない。トランザクション管理モジュール30は、一般に、繰り返し起こるタイムアウトを、特定のトランザクションタイムアウトに応えたアクションを行う代わりに、進行中の通信セッションを不必要に切断することを避けるような処理を行う。しかし、テーブル3は、トランザクション管理モジュール30がアクションを実行する1つの特定のリクエストメッセージ、すなわち、SUBSCRIBE(購読)メッセージを説明している。SUBSCRIBEメッセージの場合、トランザクション管理モジュール30は、SUBSCRIBEメッセージが“登録(reg)”イベントパッケージの一部ではないとき、トランザクション管理モジュール30は何もせず、対応するアプリケーションに、タイムアウトトランザクションを処理するために通知する。SUBSCRIBEメッセージが“登録(reg)”イベントパッケージの一部であり、かつ通信デバイス14Aがまだ登録されているとき、トランザクション管理モジュール30は、試行回数が最大数になるまで、またはサブスクリプション(subscription)が期限切れとなるまで、SUBSCRIBEメッセージを周期的に再送する。これが不成功であるとき、または登録されていないとき、トランザクション管理モジュール30は、新たなプロキシサーバ20に登録する。SUBSCRIBEメッセージにより起きたトランザクションタイムアウトの処理は、イベントパッケージが登録(reg)イベントパッケージでないとき、代わって、アプリケーション32に委ねられる。同様に、他のリクエストメッセージのトランザクションタイムアウトの処理は、トランザクション管理モジュール30に委ねられることがある。
テーブル4は、トランザクション管理モジュール30及びアプリケーション32による、特定のサーバトランザクションタイムアウトの処理例の詳細を与える。特定のトランザクションタイムアウトの処理は、タイムアウトしたトランザクションのレスポンスメッセージのタイプと、切断のタイプ(INVITE、または非INVITE)とに基づき異なる。
Figure 2010504045
クライアントトランザクションの間に起きたトランザクションタイムアウトの場合と同様、トランザクション管理モジュール30は、通常、サーバトランザクションの間に起きたトランザクションタイムアウトに応えて何もしない。代わりに、トランザクション管理モジュールは、アプリケーション32のうちの対応する1つのアプリケーションに通知を行い、アプリケーション32は、該特定のトランザクションタイムアウトを処理する。しかし、上述したように、レスポンストランザクションにおけるトランザクションタイムアウトの処理の少なくとも一部は、アプリケーション32からトランザクション管理モジュール30に委ねられることがある。
トランザクション管理モジュール30及びまたはアプリケーション32による、現在のトランザクションタイムアウトの処理に関わらず、トランザクション管理モジュール30は、特定の時間、プロキシサーバ20Aと後続のトランザクションの開始の試みを続けてもよい。トランザクション管理モジュール30は、タイムアウトカウンタ34が閾値より小さく、しかもトランザクションタイムアウトが起きたトランザクションが非登録トランザクションであるとき、同じプロキシサーバ、すなわちプロキシサーバ20Aと他のトランザクションの開始を試みてもよい。言い換えれば、トランザクション管理モジュール30は、新たなプロキシサーバを介して登録する前に、同じプロキシサーバへ、少なくとも1または複数のメッセージの送信を試みてもよい。トランザクション管理モジュール30は、特定の時間、例えば連続するトランザクションタイムアウトの回数が閾値となるまで、または失敗継続時間タイマ36が時間切れするまで、またはトランザクションタイムアウトが登録トランザクションで起きるまで、プロキシサーバ20Aへのメッセージの送信を続けてもよい。
トランザクションタイムアウトの後、トランザクション管理モジュール30は、メモリ28内に記憶されるタイムアウトカウンタ34をインクリメントする。タイムアウトカウンタ34は、非登録トランザクションにより起きたトランザクションタイムアウトの数を監視する。タイムアウトカウンタ34がトランザクションタイムアウトの回数の閾値を越えるとき、トランザクション管理モジュール30は、現在の通信セッションをキャンセルし、通信セッションのキャンセルされた当該アプリケーション32に通知する。
あるいは、あたは、これに加えて、トランザクション管理モジュール30は、失敗継続時間タイマ36の時間切れを受けて、現在の通信セッションをキャンセルしてもよい。失敗継続時間タイマ36は、最初のタイムアウトが起きたときからの経過時間を監視する。失敗継続時間タイマ36は、最初のトランザクションが開始された後、特定の時間期間、現在の通信セッションをオープンにしておくために用いられる。失敗継続時間タイマ36は、最初のトランザクションタイムアウト後に起きたトランザクションタイムアウトの数とは無関係である。
アプリケーション36は、トランザクション管理モジュール30から、通信セッションがキャンセルされたという通知を受け取ると、現在のリソースを解放し、ダイアログを中断する。アプリケーション32のうちの1つは、トランザクション管理モジュール30と連携して、新たなプロキシサーバ20とイニシャル登録を実行する。トランザクション管理モジュール30は、タイムアウトカウンタ34及びまたは失敗継続時間タイマ36もリセットする。トランザクションタイムアウトの後、1または複数の後続の非登録トランザクションを開始できることにより、タイムアウトの原因が一時的であるとき、トランザクション管理モジュール30が、進行中の通信セッションを不必要に切断することを回避できる。しかし、トランザクション管理モジュール30は、いくつかの連続するトランザクションタイムアウトが起きた場合、当該プロキシサーバは到達不能と決定する。
ある環境において、トランザクション管理モジュール30は、トランザクションタイムアウトが起きないとき、現在の通信セッションをキャンセルし、新たなプロキシサーバを介して登録してもよい。例えば、トランザクション管理モジュール30は、ターミナルIPsec失敗イベントを検出した後、現在の通信セッションをキャンセルし、新たなプロキシサーバを介して登録する。通信バイスまたはプロキシでセキュリティアソシエーションを削除すること、セキュリティアソシエーションにマッチしない送信メッセージ、または到達不能プロキシの検出は、イニシャル登録プロシジャを起動するターミナルIPsecエラーメッセージの例である。
図2に示された種々のコンポーネントは、ハードウェア、ソフトウェア、ファームウェア、あるいはこれらの組合せで実現することができる。いくつかのコンポーネントは、プロセッサまたは1または複数のマイクロプロセッサで実行されるモジュール、またはDSP(digital signal processor)、1または複数のASIC(application specific integrated circuit)、1または複数のFPGA(field programmable gate array)、または、他の同等の集積またはディスクリート論理回路で実現することもできる。モジュールとしての異なる特徴の叙述は、通信デバイス14Aの機能的に異なる側面を明らかにする意図であり、そのようなモジュールは、別個のハードウェア及びまたソフトウェアコンポーネントにより実現すべきであることを必ずしも意味するものではない。どちらかというと、1または複数のモジュールに関連する機能は、共通のまたは別個のハードウェア及びまたはソフトウェアコンポーネント内に統合されていてもよい。従って、この開示は、通信デバイス14Aの例に限定すべきではない。
ソフトウェアで実装されるとき、この開示で説明されたシステム及びデバイスに属する機能は、例えば、RAM(random access memory)、ROM(read-only memory)、不揮発性RAM(NVRAM)、EEPROM(electrically erasable programmable read-only memory)、FLASHメモリ、などで構成されるメモリ34のような、コンピュータ読み取り可能な媒体上の命令として組み込まれていてもよい。命令は実行されると、この開示に説明された機能の1または複数の側面をサポートする。
図3は、通信デバイス14Aのような、この開示の技術に従ってトランザクションタイムアウトを処理する通信デバイスの動作例を説明するフロー図である。トランザクション管理モジュール30は、タイムアウトカウンタ34及びまたは失敗継続時間タイマ36をゼロに等しくなるように設定する(40)。これは、どのトランザクションもトランザクションタイムアウトが起きていないことを示す。トランザクション管理モジュール30は、トランザクションが成功裏に、すなわち、タイムアウトが起きずに終了した後、タイムアウトカウンタ34及びまたは失敗継続時間タイマ36をゼロに設定してもよい。あるいは、トランザクション管理モジュール30は、新たなプロキシサーバ20に新たな登録がなされたときに、タイムアウトカウンタ34及びまたは失敗継続時間タイマ36をゼロに設定してもよい。
トランザクション管理モジュールは、新たなトランザクションを待つ(41)。新たなトランザクションがないとき、トランザクション管理モジュール30は、新たなトランザクションを待ち続ける。新たなトランザクションがあると、トランザクション管理モジュール30は、新たなトランザクションのメッセージを、対応のプロキシサーバ20へ送信する(42)。メッセージを送信することは、イニシャルメッセージを送信するだけでなく、再送スケジュールに従って任意のメッセージの再送を行うことも含む。上述したように、トランザクション管理モジュール30及びまたはアプリケーション32は、タイムアウトカウンタ34の値に基づき、異なる圧縮手法を用いて、メッセージの送信及びまたはメッセージの再送を行う。タイムアウトカウンタ34がゼロに等しいとき、例えば、トランザクション管理モジュール30は、ステート情報を用いて圧縮された、イニシャルメッセージの送信、及びメッセージの再送の少なくとも一部を行う。しかし、タイムアウトカウンタ34がゼロよりも大きいとき、トランザクション管理モジュール30は、ステート情報ではなくバイトコードを用いて圧縮された、トランザクションのイニシャルメッセージの送信、及びまたは、メッセージの再送を行う。さらに、トランザクション管理モジュール30は、基礎となるとランポートレイヤプロトコルに基づき、メッセージ及び又はメッセージの再送のための特定の圧縮手法を選択してもよい。
さらに、上記に詳述したように、トランザクション管理モジュール30は、NACKのように、解凍失敗の原因をとともに、解凍失敗を検出するためのメカニズムを含むことがある。これらの場合、トランザクション管理モジュール30は、解凍失敗の原因に基づき、後続バージョンのメッセージの再送に用いる圧縮手法を変更してもよい。他の側面において、トランザクション管理モジュール30は、さらなるメッセージの再送を中止するためにICMPエラーメッセージを用い、このエラーメッセージの受信を登録リクエストのトランザクションタイムアウトのように扱うこともできる。
トランザクション管理モジュール30は、トランザクションにトランザクションタイムアウトが起きたかどうかを決定する(44)。トランザクション管理モジュール30は、特定の時間内に、例えば上述したトランザクションタイムアウトタイマの値以内に、イニシャルメッセージまたはメッセージのいずれかの再送に応えて、対応するプロキシサーバ20からの応答が受信されなかったとき、トランザクションタイムアウトが起きたと決定する。トランザクションタイムアウトタイマ値は、メッセージのタイプに基づき異なることがある。SIPの場合、例えばトランザクションタイムアウトタイマ値は、往復時間(RTT)の64倍に等しい。通常、RTTは、0.5秒と見なせるから、トランザクションタイムアウトタイマ値は、32秒である。
プロキシサーバから応答を受信したとき(すなわち、トランザクションタイムアウトが起きない)、トランザクション管理モジュール30は、タイムアウトカウンタ34及びまたは失敗継続時間タイマ36をゼロに等しくなるように設定する。トランザクションタイムアウトタイマ値以内に、対応のプロキシサーバからの応答が受信されなかったとき(すなわち、トランザクションタイムアウトが発生した)、トランザクション管理モジュール30は、アプリケーション32のうち、失敗したトランザクションに関連する1つのアプリケーションに通知する(46)。関連するアプリケーション32は、当該特定のメッセージに対するトランザクションタイムアウトを処理する。テーブル3及び4は、特定の複数のタイプのトランザクションのトランザクションタイムアウトに対しアプリケーション32が行う処理の例を説明する。
トランザクション管理モジュール30は、トランザクションタイムアウトの起きたトランザクションが登録トランザクションであるかどうかを決定する(48)。登録トランザクションは、登録開始メッセージ、再登録メッセージ、または登録解除メッセージを含む。トランザクションタイムアウトの起きたトランザクションが登録トランザクションでるとき、トランザクション管理モジュール30は、現在のどの通信セッションも切断し、新たなプロキシサーバ20へ登録開始メッセージを送信する(50)。
トランザクションタイムアウトの起きたトランザクションが非登録トランザクションであるとき、トランザクション管理モジュール30は、タイムアウトカウンタ34をインクリメントし、失敗継続時間タイマ36を(それが開始されていない場合)開始する(52)。トランザクション管理モジュール30は、タイムアウトカウンタ34の値と、閾値とを比較する(54)。タイムアウトカウンタ34が閾値以上であるとき、トランザクション管理モジュール30は、現在のどの通信セッションも切断し、新たなプロキシサーバ20へ登録開始メッセージを送信する(50)。
タイムアウトカウンタ34が閾値より小さいとき、トランザクション管理モジュール30は、失敗継続時間タイマ36が時間切れとなったかどうかを決定する(56)。失敗継続時間タイマ36が時間切れでないとき、トランザクション管理モジュール30は、新たなトランザクション、すなわち、後続のトランザクションを待ち、新たなトランザクションを検出したとき、対応するプロキシサーバへ後続のメッセージを送信する(41,42)。言い換えれば、トランザクション管理モジュール30は、直ちに、通信セッションを切断したり、プロキシサーバ20のうちの新たな1つへ登録したりすることはない。
失敗継続時間タイマ36が時間切れであるとき、トランザクション管理モジュール30は、現在のどの通信セッションも切断し,新たなプロキシサーバ20へ登録開始メッセージを送信する(50)。非登録トランザクションで起きたトランザクションタイムアウトの後、同じプロキシサーバに、1または複数のこうぞくの後続のメッセージを送信できるので、トランザクションタイムアウトの原因が一時的なものであるとき、トランザクション管理モジュール30が、進行中の通信セッションを不必要に切断することを回避することができる。トランザクション管理モジュール30は、いくつかの連続するタイムアウトが起きたとき、当該プロキシサーバは到達不能と判断する。
図3に説明した例において、トランザクション管理モジュール30は、タイムアウトカウンタ34と失敗継続時間タイマ36とを互いに連携して用いている。しかし、これらのうちのいずれか一方は、トランザクションタイムアウトのタイプに基づき、静的あるいは動的に調整されてもよい。例えば、失敗継続時間タイマ36は、後続の試行されるトランザクションの間に喪失されることがある着信呼の数を低減するために、ある環境に、素早く到達するように調整されてもよい。しかし、他の側面において、トランザクション管理モジュール30は、タイムアウトカウンタ34と失敗継続時間タイマ36のうちの一方のみを他方とは独立に用いることができる。言い換えれば、トランザクション管理モジュール30は、失敗継続時間タイマ36を用いず、タイムアウトカウンタ34と閾値との比較に基づき、通信セッションを切断するかどうかを決定することができる。同様に、トランザクション管理モジュール30は、タイムアウトカウンタ34に関わらず、失敗継続時間タイマ36が時間切れであるかどうかに基づき、通信セッションを切断するかどうかを決定することができる。
図4は、メッセージを送信し、必要があれば、再送スケジュールに従ってプロキシサーバへメッセージの再送を行う、トランザクション管理モジュール30の動作例を説明するフロー図である。最初に、トランザクション管理モジュール30は、アプリケーション32のうちの1つから、UDPを用いて、リクエストを受信する(60)。トランザクション管理モジュール30は、タイムアウトカウンタ34の値がゼロに等しいかどうかを決定する(62)。
タイムアウトカウンタ34がゼロに等しいとき、トランザクション管理モジュール30は、動的ステート情報を用いて圧縮されたイニシャルメッセージの送信及び最初の部分のメッセージの再送を行う(64)。最初の部分のメッセージの再送は、例えば、最初の2つまたは最初の3つのメッセージの再送が含まれていてもよい。最初のいくつかのメッセージの再送の後、応答が受信されない場合には、トランザクション管理モジュール30は、動的ステート情報を用いずに、バイトコードで圧縮された残りのメッセージの再送を行う(66)。
タイムアウトカウンタ34がゼロより大きいとき、トランザクション管理モジュール30は、動的ステート情報を用いずに、バイトコードで圧縮されたイニシャルメッセージの送信及び任意のメッセージの再送を行う(68)。このようにして、トランザクション監視モジュール30は、トランザクションタイムアウトが既に発生した後、解凍の失敗が起きるリスクを低減する。
図5は、再送スケジュールに従ってプロキシサーバへ、メッセージの送信と、必要があればメッセージの再送とを行うフロー図を示す。最初に、トランザクション管理モジュール30は、TCPを用いて、アプリケーション32のうちの1つからの要求を受信する(70)。トランザクション管理モジュール30は、タイムアウトカウンタ34の値がゼロに等しいかどうかを決定する(72)。タイムアウトカウンタ34の値がゼロに等しいと決定したとき、トランザクション管理モジュール30は、メッセージを、存在する動的ステート情報を用いて圧縮した後、TCPレイヤへ渡す(74)。TCPは、プロキシへのメッセージの信頼できる配信を保証するという責任を担う。
タイムアウトカウンタ34がゼロより大きいとき、新たなTCPコネクションを開く(76)。一側面において、トランザクション管理モジュール30は、同じポート番号を用いて、通信デバイスとプロキシサーバとの間に新たなTCPコネクションを開くことがある。トランザクション管理モジュール30は、動的ステート情報を用いずにメッセージを圧縮した後、該メッセージをバイトコードとともにTCPレイヤへ渡す(78)。この場合もやはり、TCPは、プロキシへのメッセージの信頼できる配信を保証するという責任を担う。
ここに説明された教えに基づき、ここに開示された側面は、他の任意の複数の側面と独立して実装されることがあり、また、これら複数の側面のうちの1つまたは複数と種々の方法で組み合わせ得ることも、明らかであるに違いない。ここに説明された技術は、ハードウェア、ソフトウェア、またはこれらの任意の組合せで実装されてもよい。ハードウェアで実装される場合、当該技術は、デジタルハードウェア、アナログハードウェア、あるいはこれらの組合せにより実現することができる。ソフトウェアで実装される場合、当該技術は、少なくとも一部は、1または複数の命令またはコードが記憶されているコンピュータ読み取り可能な媒体を含むコンピュータプログラム製品により実現することができる。
例として、また、これに限定するものではないが、そのようなコンピュータ読み取り可能な媒体は、シンクロナスDRAM(SDRAM:synchronous dynamic random access memory)のようなRAM、ROM(read-only memory)、不揮発性RAM(NVRAM:non-volatile random access memory)、ROM、EEPROM(electrically erasable programmable read-only memory)、EPROM(erasable programmable read-only memory)、フラッシュメモリ、CDROMあるいは他の光ディスク記憶装置、磁気ディスク記憶装置あるいは他の磁気記憶デバイス、あるいは所望のプログラムコードを命令またはデータ構造の形で搬送または記憶するために用いられ、しかもコンピュータによりアクセス可能な他の任意の現実的な媒体からなる。
コンピュータプログラム製品のコンピュータ読み取り可能な媒体に関連する命令あるいはコードは、コンピュータにより、例えば、1または複数のDSP(digital signal processor)、汎用マイクロプロセッサ、ASIC、FPGF、あるいは他の同等な集積またはディスクリート論理回路のような1または複数のプロセッサにより実行される。
多くの側面及び例が説明された。しかし、これらの例の種々の変形は可能であり、ここに与えられた原理は、他の側面においても適用することができる。これら及び他の側面は、次に示す請求の範囲内にある。

Claims (64)

  1. 第1のデバイスから応答メッセージを受信しないときに、非登録シグナリング及び制御トランザクションについてトランザクションタイムアウトを検出すること、
    前記非登録トランザクションについて、トランザクションタイムアウトを検出した後、特定の期間、前記第1のデバイスとの少なくとも1つの後続のシグナリング及び制御トランザクションを開始すること、及び、
    前記少なくとも1つの後続のシグナリング及び制御トランザクションについて応答メッセージが受信されないとき、前記特定期間の後、第2のデバイスとの登録シグナリング及び制御トランザクションを開始すること、
    を含む方法。
  2. 前記非登録シグナリング及び制御トランザクションについてトランザクションタイムアウトを検出したとき、タイムアウトカウンタをインクリメントすること、をさらに含み、
    前記少なくとも1つの後続のシグナリング及び制御トランザクションを開始することは、前記タイムアウトカウンタの値が閾値より小さいとき、前記少なくとも1つの後続のシグナリング及び制御トランザクションを開始することを含む請求項1記載の方法。
  3. 前記少なくとも1つの後続のシグナリング及び制御トランザクションについて応答メッセージを受信すること、及び
    前記応答メッセージを受信したとき、前記タイムアウトカウンタをリセットすること、
    をさらに含む請求項2記載の方法。
  4. 前記非登録シグナリング及び制御トランザクションについてトランザクションタイムアウトを検出したとき、タイムアウトカウンタをインクリメントすること、をさらに含み、
    前記登録シグナリング及び制御トランザクションを開始することは、前記タイムアウトカウンタの値が閾値以上のとき、前記第2のデバイスと前記登録シグナリング及び制御トランザクションを開始することを含む請求項1記載の方法。
  5. 呼着信統計値に基づき、前記閾値を動的に決定すること、をさらに含む請求項4記載の方法。
  6. 前記非登録シグナリング及び制御トランザクションについてトランザクションタイムアウトを検出したとき、タイマを起動すること、をさらに含み、
    前記登録シグナリング及び制御トランザクションを開始することは、前記タイマが時間切れしたとき、前記第2のデバイスと前記登録シグナリング及び制御トランザクションを開始すること、を含む請求項1記載の方法。
  7. 前記第1のデバイスから、第1の登録シグナリング及び制御トランザクションについて応答を受信しないとき、前記第1の登録シグナリング及び制御トランザクションについてトランザクションタイムアウトを検出すること、
    前記第1の登録シグナリング及び制御トランザクションについて前記トランザクションタイムアウトを検出したとき、前記第2のデバイスと、第2の登録シグナリング及び制御トランザクションを開始すること、
    をさらに含む請求項1記載の方法。
  8. 前記少なくとも1つの後続のシグナリング及び制御トランザクションを開始することは、
    再送スケジュールに従って、前記後続のシグナリング及び制御トランザクションについてのイニシャルメッセージと、前記メッセージの1又は複数の再送とを送信すること、を含む請求項1記載の方法。
  9. 前記イニシャルメッセージと、前記メッセージの1又は複数の再送とを送信することは、少なくとも1つのトランザクションタイムアウトが起きたとき、動的ステート情報を用いずにバイトコードを用いて圧縮された、前記後続のシグナリング及び制御トランザクションのイニシャルメッセージと、前記メッセージの1又は複数の再送を送信すること、を含む請求項8記載の方法。
  10. 前記後続の非登録シグナリング及び制御トランザクションのイニシャルメッセージと、前記メッセージの1又は複数の再送とを送信すること、をさらに含み、
    前記非登録シグナリング及び制御トランザクションのイニシャルメッセージと、前記メッセージ再送の第1部分は、第1の圧縮手法を用いて送信され、前記メッセージ再送の第2部分は、第2の圧縮手法を用いて送信される請求項1記載の方法。
  11. 前記メッセージ再送の第2部分は、圧縮せずに送信される請求項10記載の方法。
  12. 前記非登録シグナリング及び制御トランザクションのイニシャルメッセージと、前記メッセージ再送の第1部分は、動的ステート情報を用いて圧縮されて送信され、前記メッセージ再送の第2部分は、動的ステート情報を用いずに圧縮されて送信される請求項10記載の方法。
  13. 解凍失敗を検出すること、
    検出された解凍失敗の原因を識別すること、及び
    前記解凍失敗の原因に基づき、前記再送の第2部分に対する前記第2の圧縮手法を選択すること、
    をさらに含む請求項10記載の方法。
  14. ICMP(Internet Control Message Protocol)エラーメッセージを受信すること、
    前記ICMPエラーメッセージを受信したとき、さらなるメッセージ再送は中止すること、及び
    前記第2のデバイスと前記登録シグナリング及び制御トランザクションメッセージを開始すること、
    をさらに含む請求項10記載の方法。
  15. ターミナルIPsec(Internet Protocol security)失敗イベントを検出すること、及び
    ターミナルIPsec失敗イベントに応答して、前記第2のデバイスと前記登録シグナリング及び制御トランザクションメッセージを開始すること、
    をさらに含む請求項1の方法。
  16. 前記トランザクションタイムアウトを検出することは、トランザクションタイムアウトタイマが時間切れする前に、前記第1のデバイスから、前記非登録シグナリング及び制御トランザクションについての応答メッセージを受信しないとき、前記トランザクションタイムアウトを検出することを含む請求項1記載の方法。
  17. 信号を送信する送信回路と、
    第1のデバイスから応答メッセージを受信しないとき、非登録シグナリング及び制御トランザクションについてのトランザクションタイムアウトを検出し、
    前記非登録シグナリング及び制御トランザクションに対しトランザクションタイムアウトを検出した後、特定の期間、前記送信回路を介して、前記第1のデバイスとの少なくとも1つの後続のシグナリング及び制御トランザクションを開始し、
    前記少なくとも1つの後続のシグナリング及び制御トランザクションに対する応答メッセージを受信しないとき、前記特定期間の後、前記送信回路を介して、第2のデバイスとのシグナリング及び制御トランザクションを開始する、トランザクション管理モジュールと、
    を含む装置。
  18. トランザクションタイムアウトの回数を監視するタイムアウトカウンタをさらに含み、
    前記トランザクション管理モジュールは、前記非登録シグナリング及び制御トランザクションについて前記トランザクションタイムアウトを検出すると、前記タイムアウトカウンタをインクリメントし、前記タイムアウトカウンタの値が閾値より小さいとき、少なくとも1つの後続のシグナリング及び制御トランザクションを開始する、請求項17記載の装置。
  19. 前記トランザクション管理モジュールは、前記少なくとも1つの後続のシグナリング及び制御トランザクションについて応答メッセージを受信し、前記応答メッセージを受信すると、前記タイムアウトカウンタをリセットする、請求項18記載の装置。
  20. トランザクションタイムアウトの回数を監視するタイムアウトカウンタをさらに含み、
    前記トランザクション管理モジュールは、前記非登録シグナリング及び制御トランザクションについて前記トランザクションタイムアウトを検出すると、前記タイムアウトカウンタをインクリメントし、前記タイムアウトカウンタの値が閾値以上のとき、前記第2のデバイスと、前記登録シグナリング及び制御トランザクションを開始する、請求項17記載の装置。
  21. 前記トランザクション管理モジュールは、呼着信統計値に基づき前記閾値を動的に決定する請求項20記載の装置。
  22. 前記非登録シグナリング及び制御トランザクションについてのタイムアウトからの経過時間を監視するタイマをさらに含み、
    前記トランザクション管理モジュールは、前記タイマが時間切れしたとき、前記第2のデバイスと、前記登録シグナリング及び制御トランザクションを開始する請求項17記載の装置。
  23. 前記トランザクション管理モジュールは、前記第1のデバイスから、第1の登録シグナリング及び制御トランザクションについての応答メッセージを受信しないとき、前記第1の登録シグナリング及び制御トランザクションについてのタイムアウトを検出し、前記第1の登録シグナリング及び制御トランザクションについてのタイムアウトを検出したとき、前記第2のデバイスと、第2の登録シグナリング及び制御トランザクションを開始する、請求項17記載の装置。
  24. 前記トランザクション管理モジュールは、再送スケジュールに従って、前記後続のシグナリング及び制御トランザクションについてのイニシャルメッセージの送信と、1または複数のメッセージの再送を行う、請求項17記載の装置。
  25. 前記トランザクション管理モジュールは、少なくとも1回トランザクションタイムアウトがあったとき、動的ステート情報を用いずに、バイトコードを用いて圧縮された、前記後続のシグナリング及び制御トランザクションについてのイニシャルメッセージの送信と、1または複数のメッセージの再送を行う、請求項24記載の装置。
  26. 前記トランザクション管理モジュールは、前記後続の非登録シグナリング及び制御トランザクションについてのイニシャルメッセージの送信と、1または複数のメッセージの再送を行い、前記イニシャルメッセージ及びメッセージ再送の第1部分は、第1の圧縮手法を用いて送信され、メッセージ再送の第2部分は、第2の圧縮手法を用いて送信される請求項17記載の装置。
  27. 前記第2の圧縮手法は、非圧縮を含む請求項26記載の装置。
  28. 前記非登録シグナリング及び制御トランザクションについての前記イニシャルメッセージと、前記メッセージ再送の第1部分は、動的ステート情報を用いて圧縮されて送信され、前記メッセージ再送の第2部分は、動的ステート情報を用いずに圧縮されて送信される、請求項26記載の装置。
  29. 前記トランザクション管理モジュールは、解凍失敗を検出し、検出された解凍失敗の原因を識別し、前記解凍失敗の前記原因に基づき、前記メッセージ再送の第2部分に用いる前記第2の圧縮手法を選択する、請求項26記載の装置。
  30. 前記トランザクション管理モジュールは、ICMP(Internet Control Message Protocol)エラーメッセージを受信し、前記ICMPエラーメッセージを受信したとき、さらなるメッセージ再送は中止し、前記第2のデバイスと前記登録シグナリング及び制御トランザクションメッセージを開始する、請求項26記載の装置。
  31. 前記トランザクション管理モジュールは、トランザクションタイムアウトタイマが時間切れする前に、前記第1のデバイスから、前記非登録シグナリング及び制御トランザクションについて応答メッセージを受信しないとき、前記トランザクションタイムアウトを検出する請求項17記載の装置。
  32. 前記トランザクション管理モジュールは、ターミナルIPsec(Internet Protocol security)失敗イベントを検出し、前記IPsec失敗イベントの検出に応答して、前記第2のデバイスと前記登録シグナリング及び制御トランザクションメッセージを開始する請求項17記載の装置。
  33. 複数の命令を有するコンピュータ読み取り可能な媒体を含むコンピュータプログラム製品であって、前記複数の命令は、
    非登録シグナリング及び制御トランザクションについて、第1のデバイスから応答メッセージを受信しないとき、トランザクションタイムアウトを検出するコード、
    前記非登録トランザクションについてトランザクションタイムアウトを検出した後、特定の期間、前記第1のデバイスとの少なくとも1つの後続のシグナリング及び制御トランザクションを開始するコード、及び、
    前記少なくとも1つの後続のシグナリング及び制御トランザクションについて応答メッセージが受信されないとき、前記特定期間の後、第2のデバイスと登録シグナリング及び制御トランザクションを開始するコード
    を含むコンピュータプログラム製品。
  34. 前記非登録シグナリング及び制御トランザクションについて前記トランザクションタイムアウトを検出したとき、タイムアウトカウンタをインクリメントするコードをさらに含み、
    前記少なくとも1つの後続のシグナリング及び制御トランザクションを開始するコードは、前記タイムアウトカウンタの値が閾値より小さいとき、前記少なくとも1つの後続のシグナリング及び制御トランザクションを開始するコードを含む請求項33記載のコンピュータプログラム製品。
  35. 前記少なくとも1つの後続のシグナリング及び制御トランザクションについて応答メッセージを受信するコード、及び
    前記応答メッセージを受信したとき、前記タイムアウトカウンタをリセットするコード
    を含む請求項34記載のコンピュータプログラム製品。
  36. 前記非登録シグナリング及び制御トランザクションについて前記タイムアウトを検出したとき、タイムアウトカウンタをインクリメントするコードをさらに含み、
    前記登録シグナリング及び制御トランザクションを開始するコードは、前記タイムアウトカウンタの値が閾値以上のとき、前記第2のデバイスと前記登録シグナリング及び制御トランザクションを開始するコードを含む請求項33記載のコンピュータプログラム製品。
  37. 呼着信統計値に基づき、前記閾値を動的に決定するコードをさらに含む請求項36記載のコンピュータプログラム製品。
  38. 前記非登録シグナリング及び制御トランザクションについてトランザクションタイムアウトを検出したとき、タイマを起動するコードをさらに含み、
    前記登録シグナリング及び制御トランザクションを開始するコードは、前記タイマが時間切れしたとき、前記第2のデバイスと前記登録シグナリング及び制御トランザクションを開始するコードを含む請求項33記載のコンピュータプログラム製品。
  39. 前記第1のデバイスから、第1の登録シグナリング及び制御トランザクションについて応答を受信しないとき、前記第1の登録シグナリング及び制御トランザクションについてタイムアウトを検出するコード、
    前記第1の登録シグナリング及び制御トランザクションについて前記トランザクションタイムアウトを検出したとき、前記第2のデバイスと第2の登録シグナリング及び制御トランザクションを開始するコード、
    をさらに含む請求項33記載のコンピュータプログラム製品。
  40. 前記少なくとも1つの後続のシグナリング及び制御トランザクションを開始するコードは、再送スケジュールに従って、前記後続のシグナリング及び制御トランザクションについてイニシャルメッセージと、前記メッセージの1または複数の再送を送信するコードを含む請求項33記載のコンピュータプログラム製品。
  41. 前記イニシャルメッセージと、前記メッセージの1または複数の再送を送信するコードは、少なくとも1回トランザクションタイムがあるとき、動的ステート情報ではなくバイトコードで圧縮された、前記後続のシグナリング及び制御トランザクションのイニシャルメッセージと、前記メッセージの1または複数の再送とを送信するコードを含む請求項40記載のコンピュータプログラム製品。
  42. 前記後続の非登録シグナリング及び制御トランザクションについてのイニシャルメッセージと、前記メッセージの1または複数の再送を送信するコードをさらに含み、
    前記非登録シグナリング及び制御トランザクションについての前記イニシャルメッセージと、前記メッセージの再送の第1部分は、第1の圧縮手法を用いて送信され、前記メッセージの再送の第2部分は、第2の圧縮手法を用いて送信される請求項33記載のコンピュータプログラム製品。
  43. 前記メッセージの再送の第2部分は、非圧縮で送信される請求項42記載のコンピュータプログラム製品。
  44. 前記非登録シグナリング及び制御トランザクションについてのイニシャルメッセージと、前記メッセージの再送の第1部分とは、動的ステート情報を用いて圧縮されて送信され、前記メッセージの再送の第2部分は、動的ステート情報を用いずに圧縮されて送信される請求項42記載のコンピュータプログラム製品。
  45. 解凍失敗を検出するコード、
    前記検出された解凍失敗の原因を識別するコード、及び
    前記解凍失敗の原因に基づき、前記再送の前記第2部分に対する前記第2の圧縮手法を選択するコード
    をさらに含む請求項42記載のコンピュータプログラム製品。
  46. ICMP(Internet Control Message Protocol)エラーメッセージを受信するコード、
    前記ICMPエラーメッセージを受信したとき、さらなるメッセージ再送を中止するコード、及び
    前記第2のデバイスと前記登録シグナリング及び制御トランザクションメッセージを開始するコード、
    をさらに含む請求項42記載のコンピュータプログラム製品。
  47. 前記トランザクションタイムアウトを検出するコードは、トランザクションタイムアウトカウンタが時間切れする前に、前記第1のデバイスから、前記非登録シグナリング及び制御トランザクションについて応答メッセージを受信しないとき、前記トランザクションタイムを検出するコードを含む請求項33記載のコンピュータプログラム製品。
  48. ターミナルIPsec(Internet Protocol security)失敗イベントを検出するコード、及び、
    ターミナルIPsec失敗イベントに応答して、前記第2のデバイスと前記登録シグナリング及び制御トランザクションメッセージを開始するコード、
    をさらに含む請求項33記載のコンピュータプログラム製品。
  49. 第1のデバイスから応答メッセージを受信しないときに、非登録シグナリング及び制御トランザクションについてトランザクションタイムアウトを検出する手段と、
    前記非登録トランザクションについて、トランザクションタイムアウトを検出した後、特定の期間、前記第1のデバイスと、少なくとも1つの後続のシグナリング及び制御トランザクションを開始する手段と、
    を含み、
    前記開始する手段は、前記少なくとも1つの後続のシグナリング及び制御トランザクションについて応答メッセージが受信されないとき、前記特定期間の後、第2のデバイスと登録シグナリング及び制御トランザクションを開始する装置。
  50. 前記非登録シグナリング及び制御トランザクションについてトランザクションタイムアウトを検出したとき、タイムアウトカウンタをインクリメントする手段をさらに含み、
    前記開始する手段は、前記タイムアウトカウンタの値が閾値より小さいとき、前記少なくとも1つの後続のシグナリング及び制御トランザクションを開始する請求項49記載の装置。
  51. 前記少なくとも1つの後続のシグナリング及び制御トランザクションについて応答メッセージを受信する手段と、
    前記応答メッセージを受信したとき、前記タイムアウトカウンタをリセットする手段と、
    をさらに含む請求項50記載の装置。
  52. 前記非登録シグナリング及び制御トランザクションについてトランザクションタイムアウトを検出したとき、タイムアウトカウンタをインクリメントする手段をさらに含み、
    前記開始する手段は、前記タイムアウトカウンタの値が閾値以上のとき、前記第2のデバイスと前記登録シグナリング及び制御トランザクションを開始する請求項49記載の装置。
  53. 呼着信統計値に基づき、前記閾値を動的に決定する手段をさらに含む請求項52記載の装置。
  54. 前記非登録シグナリング及び制御トランザクションについてトランザクションタイムアウトを検出したとき、タイマを起動する手段をさらに含み、
    前記開始する手段は、前記タイマが時間切れしたとき、前記第2のデバイスと前記登録シグナリング及び制御トランザクションを開始する請求項49記載の装置。
  55. 前記第1のデバイスから、第1の登録シグナリング及び制御トランザクションについて応答を受信しないとき、前記第1の登録シグナリング及び制御トランザクションについてトランザクションタイムアウトを検出する手段と、
    前記第1の登録シグナリング及び制御トランザクションについて前記トランザクションタイムアウトを検出したとき、前記第2のデバイスと、第2の登録シグナリング及び制御トランザクションを開始する手段と、
    をさらに含む請求項49記載の装置。
  56. 前記開始する手段は、再送スケジュールに従って、前記後続のシグナリング及び制御トランザクションについてのイニシャルメッセージの送信と、前記メッセージの1又は複数の再送を開始する請求項49記載の装置。
  57. 前記開始する手段は、
    少なくとも1つのトランザクションタイムアウトが起きたとき、動的ステート情報を用いずにバイトコードを用いて圧縮された、前記後続のシグナリング及び制御トランザクションのイニシャルメッセージと、前記メッセージの1又は複数の再送とを開始する請求項56記載の装置。
  58. 前記開始する手段は、前記後続の非登録シグナリング及び制御トランザクションのイニシャルメッセージと、前記メッセージの1又は複数の再送とを開始し、
    前記後続の非登録シグナリング及び制御トランザクションのイニシャルメッセージと、前記メッセージ再送の第1部分は、第1の圧縮手法を用いて送信され、前記メッセージ再送の第2部分は、第2の圧縮手法を用いて送信される請求項49記載の装置。
  59. 前記第2の圧縮手法は、非圧縮を含む請求項58記載の装置。
  60. 前記非登録シグナリング及び制御トランザクションのイニシャルメッセージと、前記メッセージ再送の第1部分は、動的ステート情報を用いて圧縮されて送信され、前記メッセージ再送の第2部分は、動的ステート情報を用いずに圧縮されて送信される請求項58記載の装置。
  61. 解凍失敗を検出し、検出された解凍失敗の原因を識別する手段と、
    前記解凍失敗の原因に基づき、前記再送の第2部分に対する前記第2の圧縮手法を選択する手段と、
    をさらに含む請求項58記載の装置。
  62. 前記開始する手段は、
    ICMP(Internet Control Message Protocol)エラーメッセージを受信し、
    前記ICMPエラーメッセージを受信したとき、さらなるメッセージ再送を中止し、及び
    前記第2のデバイスと前記登録シグナリング及び制御トランザクションメッセージを開始する請求項58記載の装置。
  63. 前記検出する手段は、トランザクションタイムアウトタイマが時間切れする前に、前記第1のデバイスから、前記非登録シグナリング及び制御トランザクションについて応答メッセージを受信しないとき、前記トランザクションタイムアウトを検出する請求項49記載の装置。
  64. ターミナルIPsec(Internet Protocol security)失敗イベントを検出する手段をさらに含み、
    前記開始する手段は、前記ターミナルIPsec失敗イベントに応答して、前記第2のデバイスと前記登録シグナリング及び制御トランザクションメッセージを開始する請求項49記載の装置。
JP2009528459A 2006-09-12 2007-09-12 通信セッション管理におけるトランザクションタイムアウト処理 Ceased JP2010504045A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US82530706P 2006-09-12 2006-09-12
US11/853,605 US8213295B2 (en) 2006-09-12 2007-09-11 Transaction timeout handling in communication session management
PCT/US2007/078320 WO2008033959A2 (en) 2006-09-12 2007-09-12 Transaction timeout handling in communication session management

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2013019449A Division JP5684301B2 (ja) 2006-09-12 2013-02-04 通信セッション管理におけるトランザクションタイムアウト処理

Publications (1)

Publication Number Publication Date
JP2010504045A true JP2010504045A (ja) 2010-02-04

Family

ID=39169529

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2009528459A Ceased JP2010504045A (ja) 2006-09-12 2007-09-12 通信セッション管理におけるトランザクションタイムアウト処理
JP2013019449A Expired - Fee Related JP5684301B2 (ja) 2006-09-12 2013-02-04 通信セッション管理におけるトランザクションタイムアウト処理

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2013019449A Expired - Fee Related JP5684301B2 (ja) 2006-09-12 2013-02-04 通信セッション管理におけるトランザクションタイムアウト処理

Country Status (7)

Country Link
US (1) US8213295B2 (ja)
EP (1) EP2087708B1 (ja)
JP (2) JP2010504045A (ja)
KR (1) KR101025121B1 (ja)
CN (1) CN101513016B (ja)
TW (1) TW200822658A (ja)
WO (1) WO2008033959A2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012096369A1 (ja) * 2011-01-14 2012-07-19 株式会社エヌ・ティ・ティ・ドコモ 移動通信方法、sipサーバ及び移動局

Families Citing this family (58)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8644314B2 (en) * 2006-09-07 2014-02-04 Kyocera Corporation Protocol and method of VIA field compression in session initiation protocol signaling for 3G wireless networks
US7787450B1 (en) * 2006-10-11 2010-08-31 Itt Manufacturing Enterprises, Inc Method and system for efficient network formation and maintenance of node routing databases in a mobile ad-hoc network
KR100791305B1 (ko) * 2006-10-24 2008-01-04 삼성전자주식회사 메신저를 이용한 컨텐츠 공유 시스템 및 방법
US20080101412A1 (en) * 2006-10-30 2008-05-01 Infineon Technologies Ag Method and apparatus for generating a message in a communication system
US8179894B2 (en) * 2007-01-26 2012-05-15 Cellco Partnership Method, apparatus, and computer program product for reducing session setup latency
US8089886B1 (en) * 2007-05-22 2012-01-03 At&T Intellectual Property Ii, L.P. Method and apparatus for detecting and reporting timeout events
US8271663B2 (en) * 2007-07-31 2012-09-18 Cisco Technology, Inc. System and method for multiple address of record registration using a single implicit SIP request
US7949767B2 (en) * 2007-07-31 2011-05-24 Cisco Technology, Inc. System and method for multiple address of record registration using a single explicit SIP request
US9094422B2 (en) * 2007-07-31 2015-07-28 Cisco Technology, Inc. System and method for multiple address of record deregistration using a single SIP request
US9083722B2 (en) * 2007-10-05 2015-07-14 Qualcomm Incorporated Session initiation protocol registration with ping
CN101577884B (zh) * 2008-09-19 2012-06-13 中兴通讯股份有限公司 一种ip多媒体链路的媒体协商方法
US8639821B2 (en) 2008-10-06 2014-01-28 Verizon Patent And Licensing Inc. Method and system for providing a setup timer in a sip-based network
US8468566B2 (en) * 2009-04-10 2013-06-18 Echostar Technologies L.L.C. Control message feedback in a satellite broadcast communication system
JP2010258787A (ja) * 2009-04-24 2010-11-11 Mitsubishi Electric Corp シグナリング圧縮装置、シグナリング伸長装置およびシグナリング圧縮伸長装置
US20100284284A1 (en) * 2009-05-08 2010-11-11 Qualcomm Incorporated VOICE OVER INTERNET PROTOCOL (VoIP) ACCESS TERMINAL
US8396961B2 (en) * 2009-08-31 2013-03-12 Red Hat, Inc. Dynamic control of transaction timeout periods
US8203939B2 (en) * 2009-09-12 2012-06-19 At&T Intellectual Property I, L.P. Method and apparatus for providing a window based overload control
EP2320601B1 (en) * 2009-11-05 2017-01-04 Amadeus S.A.S. Method and system for adapting a session timeout period
CN101727648B (zh) * 2009-12-01 2012-07-25 中国建设银行股份有限公司 服务系统中的超时控制方法及服务系统
US9015330B2 (en) * 2010-01-11 2015-04-21 Microsoft Technology Licensing, Llc Intercepting file transfers in multi-node topologies
US9417906B2 (en) 2010-04-01 2016-08-16 Red Hat, Inc. Transaction participant registration with caveats
US9100459B2 (en) * 2010-04-30 2015-08-04 Qualcomm Incorporated Exchanging data associated with a communication session within a communications system
EP2501120B1 (en) * 2011-03-15 2013-08-07 Alcatel Lucent A backup SIP server for the survivability of an enterprise network using SIP
WO2012148424A1 (en) * 2011-04-29 2012-11-01 1/2Nii Holdings, Inc. Method for setting up a communication connection
CN102263797B (zh) * 2011-08-30 2014-09-10 大唐移动通信设备有限公司 一种会话控制的方法及装置
CN102548025B (zh) * 2012-03-16 2015-04-29 北京工业大学 一种降低移动VoIP呼叫建立时延方法
US10936591B2 (en) 2012-05-15 2021-03-02 Microsoft Technology Licensing, Llc Idempotent command execution
US9239868B2 (en) 2012-06-19 2016-01-19 Microsoft Technology Licensing, Llc Virtual session management and reestablishment
US9251194B2 (en) 2012-07-26 2016-02-02 Microsoft Technology Licensing, Llc Automatic data request recovery after session failure
US8898109B2 (en) 2012-07-27 2014-11-25 Microsoft Corporation Automatic transaction retry after session failure
US8966487B1 (en) * 2012-10-16 2015-02-24 Sprint Communications Company L.P. Application transaction wait time dynamic adjustment
US9235464B2 (en) 2012-10-16 2016-01-12 Microsoft Technology Licensing, Llc Smart error recovery for database applications
US10102028B2 (en) * 2013-03-12 2018-10-16 Sas Institute Inc. Delivery acknowledgment in event stream processing
US9201919B2 (en) 2013-05-07 2015-12-01 Red Hat, Inc. Bandwidth optimized two-phase commit protocol for distributed transactions
US20140351417A1 (en) * 2013-05-21 2014-11-27 Tsz Fung Chan Session timeout method for dhtmlx interface control library
US20140364118A1 (en) * 2013-06-10 2014-12-11 Broadcom Corporation Method and Apparatus for Incoming Call Detection in a Dual SIM Single RF Communication Device
DE102014212911A1 (de) 2013-07-12 2015-01-15 Semiconductor Energy Laboratory Co., Ltd. Datenverarbeitungsvorrichtung und Datenverarbeitungssystem
CN104767716B (zh) * 2014-01-03 2018-05-25 腾讯科技(深圳)有限公司 业务请求处理方法及装置
US9433030B2 (en) 2014-01-14 2016-08-30 Qualcomm Incorporated Volte call setup
US9658917B2 (en) 2014-02-07 2017-05-23 AppDynamics, Inc. Server performance correction using remote server actions
US9122651B1 (en) 2014-06-06 2015-09-01 Sas Institute Inc. Computer system to support failover in an event stream processing system
US9652752B2 (en) * 2014-07-31 2017-05-16 Ncr Corporation Dynamic network timeout tuning
US10171532B2 (en) * 2014-09-30 2019-01-01 Citrix Systems, Inc. Methods and systems for detection and classification of multimedia content in secured transactions
CN105790903A (zh) * 2014-12-23 2016-07-20 中兴通讯股份有限公司 一种终端及终端呼叫软切换的方法
US9756106B2 (en) 2015-02-13 2017-09-05 Citrix Systems, Inc. Methods and systems for estimating quality of experience (QoE) parameters of secured transactions
US10021221B2 (en) 2015-02-24 2018-07-10 Citrix Systems, Inc. Methods and systems for detection and classification of multimedia content in secured transactions using pattern matching
PT3678349T (pt) * 2015-03-25 2021-06-17 Ericsson Telefon Ab L M Configuração de verificação de estado com utilização de mensagens de troca de chaves de internet
US9710302B2 (en) * 2015-11-24 2017-07-18 International Business Machines Corporation Dynamic timeout period adjustment of service requests
CN105631743A (zh) * 2016-03-14 2016-06-01 中国银行股份有限公司 一种atm交易实时流量控制方法及系统
FR3066872A1 (fr) * 2017-05-23 2018-11-30 Orange Procede de controle d' une communication comprenant des transactions multiples
US10592322B1 (en) * 2017-06-27 2020-03-17 Amazon Technologies, Inc. Adaptive timeout mechanism
US10673801B2 (en) * 2017-11-29 2020-06-02 International Business Machines Corporation Dynamic communication session management
US11354164B1 (en) * 2018-04-20 2022-06-07 Automation Anywhere, Inc. Robotic process automation system with quality of service based automation
US10908950B1 (en) 2018-04-20 2021-02-02 Automation Anywhere, Inc. Robotic process automation system with queue orchestration and task prioritization
US11117484B2 (en) * 2018-05-09 2021-09-14 Byton Limited Safe and secure charging of a vehicle
JP7061929B2 (ja) * 2018-05-30 2022-05-02 株式会社Nttドコモ 呼制御システム
US11317325B2 (en) * 2018-05-31 2022-04-26 Apple Inc. Call setup time in loaded IMS networks
US10979896B2 (en) 2018-11-20 2021-04-13 International Business Machines Corporation Managing dynamic lockouts on mobile computing devices

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09205438A (ja) * 1996-01-26 1997-08-05 Fujitsu Ltd Atm交換局における回線インタフェース装置
JP2000349856A (ja) * 1999-06-04 2000-12-15 Canon Inc 通信装置及び通信方法並びに記憶媒体
JP2003515969A (ja) * 1999-11-08 2003-05-07 エムシーアイ・ワールドコム・インコーポレーテッド Ip電話ネットワークにおける動的ゲートウェイ選択のための方法およびシステム
JP2004179764A (ja) * 2002-11-25 2004-06-24 Nec Commun Syst Ltd Ip網におけるsipサーバ障害検出方式
JP2006180275A (ja) * 2004-12-22 2006-07-06 Ntt Communications Kk ゲートウェイ装置及びVoIPネットワークシステム
WO2006077734A1 (ja) * 2005-01-20 2006-07-27 Sharp Kabushiki Kaisha 情報処理装置及び情報処理プログラム
JP2006237950A (ja) * 2005-02-24 2006-09-07 Saxa Inc Ip電話端末およびプログラム
JP2008517556A (ja) * 2004-10-18 2008-05-22 オーディオコーズ テキサス,インコーポレーテッド ファイアウォール越えのための装置および方法

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3619411B2 (ja) * 1999-12-03 2005-02-09 富士通株式会社 パケット中継装置
CN1198406C (zh) * 2000-09-02 2005-04-20 中兴通讯股份有限公司 通讯系统备份方法和设备
US6992974B1 (en) * 2000-10-10 2006-01-31 3Com Corporation System and method for providing fault tolerance in a network telephony system
JP3934901B2 (ja) * 2001-09-28 2007-06-20 サクサ株式会社 VoIPシステムにおける障害対策方法、VoIPシステムおよびVoIPシステム用通信交換管理装置
US6970909B2 (en) * 2001-10-11 2005-11-29 The Trustees Of Columbia University In The City Of New York Multi-protocol data communication system supporting wireless telephony and content delivery
US7103674B2 (en) * 2002-03-28 2006-09-05 International Business Machines Corporation Apparatus and method of reducing dataflow distruption when detecting path maximum transmission unit (PMTU)
US20030210649A1 (en) * 2002-05-03 2003-11-13 Bondi Andre B. Managing network loading by control of retry processing at proximate switches associated with unresponsive targets
US7154907B2 (en) * 2002-05-10 2006-12-26 Nokia Corporation Method and system for resetting nodes in communication systems
SE0300973D0 (sv) * 2003-04-01 2003-04-01 Ericsson Telefon Ab L M Improvements in or relating to compression of messages in telecommunication services
GB0329857D0 (en) * 2003-12-23 2004-01-28 Nokia Corp User registration in a communication system
US7627692B2 (en) * 2004-01-30 2009-12-01 Nokia Corporation Multiplexing of compressed control and user-plane messages
JP3944182B2 (ja) * 2004-03-31 2007-07-11 キヤノン株式会社 セキュリティ通信方法
US7873738B2 (en) * 2004-04-23 2011-01-18 Motorola Mobility, Inc. Session initiation protocol system timeout timer method
JP4688566B2 (ja) * 2005-05-10 2011-05-25 富士通東芝モバイルコミュニケーションズ株式会社 送信機及び受信機
US7668100B2 (en) * 2005-06-28 2010-02-23 Avaya Inc. Efficient load balancing and heartbeat mechanism for telecommunication endpoints

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09205438A (ja) * 1996-01-26 1997-08-05 Fujitsu Ltd Atm交換局における回線インタフェース装置
JP2000349856A (ja) * 1999-06-04 2000-12-15 Canon Inc 通信装置及び通信方法並びに記憶媒体
JP2003515969A (ja) * 1999-11-08 2003-05-07 エムシーアイ・ワールドコム・インコーポレーテッド Ip電話ネットワークにおける動的ゲートウェイ選択のための方法およびシステム
JP2004179764A (ja) * 2002-11-25 2004-06-24 Nec Commun Syst Ltd Ip網におけるsipサーバ障害検出方式
JP2008517556A (ja) * 2004-10-18 2008-05-22 オーディオコーズ テキサス,インコーポレーテッド ファイアウォール越えのための装置および方法
JP2006180275A (ja) * 2004-12-22 2006-07-06 Ntt Communications Kk ゲートウェイ装置及びVoIPネットワークシステム
WO2006077734A1 (ja) * 2005-01-20 2006-07-27 Sharp Kabushiki Kaisha 情報処理装置及び情報処理プログラム
JP2006237950A (ja) * 2005-02-24 2006-09-07 Saxa Inc Ip電話端末およびプログラム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012096369A1 (ja) * 2011-01-14 2012-07-19 株式会社エヌ・ティ・ティ・ドコモ 移動通信方法、sipサーバ及び移動局
JP2012151524A (ja) * 2011-01-14 2012-08-09 Ntt Docomo Inc 移動通信方法、sipサーバ及び移動局

Also Published As

Publication number Publication date
US8213295B2 (en) 2012-07-03
KR20090055629A (ko) 2009-06-02
TW200822658A (en) 2008-05-16
US20080062863A1 (en) 2008-03-13
JP2013146068A (ja) 2013-07-25
JP5684301B2 (ja) 2015-03-11
EP2087708A2 (en) 2009-08-12
KR101025121B1 (ko) 2011-03-25
CN101513016B (zh) 2014-03-19
WO2008033959A3 (en) 2008-09-04
CN101513016A (zh) 2009-08-19
WO2008033959A2 (en) 2008-03-20
EP2087708B1 (en) 2015-10-21

Similar Documents

Publication Publication Date Title
JP5684301B2 (ja) 通信セッション管理におけるトランザクションタイムアウト処理
US7031273B2 (en) Session initiation protocol retransmission method
US8666386B2 (en) Method and system for self-terminating a media service due to an out-of-coverage condition
US7707286B2 (en) Methods for managing presence information in a real-time communications network
EP2122990B1 (en) Dynamic adjustment of inactivity timer threshold for call control transactions
JP4653585B2 (ja) サービス陰影地域における同期化のためのpttサービスシステム及び方法
US20070280256A1 (en) Systems and methods for providing a heartbeat in a communications network
US20080259870A1 (en) Method and apparatus for media independent handover
US20060111099A1 (en) Method and system for self-terminating a media service due to an out-of-coverage condition
US20060089131A1 (en) Delay timers for managing internal state changes and messages in user equipment for real-time multimedia applications
US20050193134A1 (en) Method for logging a user out of a service
US8391457B2 (en) Systems and methods of timing DTMF tones for telephony control
KR20070039666A (ko) Sip 단말장치의 세션 제어 방법 및 장치
EP1659815A1 (en) Out-of-coverage service termination using proxy
CA2525170C (en) Method and system for self-terminating a media service due to an out-of-coverage condition
CN109196836B (zh) 用于改进处置用户装备的因特网多媒体子系统ims对话服务的方法、系统和存储介质
CN115842900A (zh) 一种无线信道下的音视频通信优化方法
CN115884374A (zh) 消息处理的方法、通信装置、存储介质和产品
JP2015111780A (ja) 輻輳時に要求メッセージを再送回数に応じて破棄するノード装置、端末、プログラム及び方法

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110728

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110823

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20111124

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20111201

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20111226

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20120106

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120223

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20121002

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130204

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20130212

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130226

A045 Written measure of dismissal of application [lapsed due to lack of payment]

Free format text: JAPANESE INTERMEDIATE CODE: A045

Effective date: 20130625