JP2010226459A - Sipサーバ、及びセッションタイマ起動方法 - Google Patents

Sipサーバ、及びセッションタイマ起動方法 Download PDF

Info

Publication number
JP2010226459A
JP2010226459A JP2009071964A JP2009071964A JP2010226459A JP 2010226459 A JP2010226459 A JP 2010226459A JP 2009071964 A JP2009071964 A JP 2009071964A JP 2009071964 A JP2009071964 A JP 2009071964A JP 2010226459 A JP2010226459 A JP 2010226459A
Authority
JP
Japan
Prior art keywords
session
sip
timer
sip server
request
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.)
Granted
Application number
JP2009071964A
Other languages
English (en)
Other versions
JP5299006B2 (ja
Inventor
Isao Ito
功夫 伊藤
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.)
Oki Networks Co Ltd
Original Assignee
Oki Networks Co Ltd
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 Oki Networks Co Ltd filed Critical Oki Networks Co Ltd
Priority to JP2009071964A priority Critical patent/JP5299006B2/ja
Publication of JP2010226459A publication Critical patent/JP2010226459A/ja
Application granted granted Critical
Publication of JP5299006B2 publication Critical patent/JP5299006B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Telephonic Communication Services (AREA)

Abstract

【課題】SIPサーバに接続されるSIP端末が、セッションタイマ機能を実装していない場合であっても、SIPサーバとSIP端末との間のセッションのヘルスチェックを実行する。
【解決手段】B2BUAとして動作し、送受信部を備えたSIPサーバにおいて、セッションタイマを無条件に起動するか否かを規定する無条件起動フラグ211、及び前記セッションタイマを無条件に起動するときに前記送受信部が送信するセッションリフレッシュリクエストに使用するリフレッシュリクエストメソッド214を含むSIP端末情報2を、収容するSIP端末ごとに有することを特徴とする。
【選択図】図3

Description

本発明は、B2BUA(Back-To-Back User Agent)として動作するSIPサーバ、及びセッションタイマ起動方法に関する。
呼(セッション)の状態を管理するSIP(Session Initiation Protocol)サーバにおいては、セッション終了時に接続先のユーザエージェントであるSIP端末がBYEリクエストの送信に失敗した場合や、ネットワークの問題でBYEリクエスト信号が紛失した場合に、セッションの終了契機を検出できず、不要となったコールステート等のリソース情報を保持し続けてしまうという問題があった。この問題の対策として、RFC4028(Request for comments 4028)にセッションタイマ機能が規定された。
セッションタイマ機能は、セッション確立後に、一方のユーザエージェントから他方のユーザエージェントに対してセッションリフレッシュリクエストとしてre−INVITEリクエスト又はUPDATEリクエストを送信し、リクエストを受信したユーザエージェントからレスポンスを返却することにより、セッションのヘルスチェックが実行される。
セッションリフレッシュリクエストの送信側(リフレッシャ)と受信側(非リフレッシャ)とは、セッション確立の際、及びセッションリフレッシュを含めたセッション変更が実行されるごとに、ユーザエージェント間のネゴシエーションによって決定される。また、このネゴシエーションのセッションリフレッシュ間隔も決定される。
リフレッシャとなったユーザエージェントは、決定されたセッションリフレッシュ間隔の2分の1の時間毎にセッションリフレッシュリクエストを送信して、非リフレッシャからのレスポンスの有無によって、非リフレッシャであるユーザエージェントとのセッションの死活を確認する。
一方、非リフレッシャであるユーザエージェントは、セッションリフレッシュ間隔から若干の値(10秒程度)を引いた時間分、リフレッシャからセッションリフレッシャリクエストの受信を監視することによって、リフレッシャであるユーザエージェントとのセッションの死活を確認する。
リフレッシャ及び非リフレッシャは、セッションの死活確認においてセッションが活性化していないことを確認した場合、切断信号(BYEリクエスト)を送信してセッションを解放する。
B2BUAとして動作するSIPサーバは、サーバ内にユーザエージェントが存在するため、ユーザエージェント単位にセッションタイマ機能を適用し、SIPサーバとSIP端末との間のセッションのヘルスチェックを実行することが可能である。
J.Rosenberg外、"RFC 3261 SIP:Session Initiation Protocol"、[online]、June 2002、IETF、[平成21年3月9日検索]、インターネット<URL:http://www.ietf.org/rfc/rfc3261.txt> J.Rosenberg外、"RFC 3311 The Session Initiation Protocol(SIP) UPDATE Method"、[online]、September 2002、IETF、[平成21年3月9日検索]、インターネット<http://www.ietf.org/rfc/rfc3311.txt> S. Donovan外、"RFC 4028 Session Timers in the Initiation Protocol(SIP)"、[online]、April 2005、IETF、[平成21年3月9日検索]、インターネット<http://www.ietf.org/rfc/rfc4028.txt>
しかしながら、SIPサーバに接続されるSIP端末において、セッションタイマ機能を実装していない場合、RFC4028の規定に従ったSIPサーバとSIP端末との間のセッションのヘルスチェックを実行することができないという問題があった。
本発明は前記問題に鑑みてなされたものであり、SIPサーバに接続されるSIP端末が、セッションタイマ機能を実装していない場合であっても、セッションタイマを無条件に起動することにより、SIPサーバとSIP端末との間のセッションの死活を確認することができるSIPサーバ、及びセッションタイマ起動方法を提供することを課題とする。
前記課題を解決するため、本発明に係るSIPサーバは、B2BUAとして動作し、送受信部を備えたSIPサーバにおいて、セッションタイマを無条件に起動するか否かを規定する無条件起動フラグ、及び前記セッションタイマを無条件に起動するときに前記送受信部が送信するセッションリフレッシュリクエストに使用するリフレッシュリクエストメソッドを含むSIP端末情報を、収容するSIP端末ごとに有することを特徴とする。
前記課題を解決するため、本発明に係るSIPサーバのセッションタイマ起動方法は、B2BUAとして動作し、セッションタイマを無条件に起動するか否かを規定する無条件起動フラグを含むSIP端末情報を、収容するSIP端末ごとに有するSIPサーバのセッションタイマ起動方法において、前記SIPサーバが、前記無条件起動フラグの値を確認するステップと、前記SIPサーバが、所定の時間間隔後に前記セッションタイマを起動するステップと、を有することを特徴とする。
このように、本発明に係るSIPサーバは、セッションタイマを無条件に起動することにより、SIPサーバとSIP端末との間のセッションの死活を確認することができる。
本発明の実施の形態に係るB2BUAで動作するSIPサーバとSIP端末とで構成される、通信システムの構成図である。 本発明の実施の形態に係るSIPサーバの内部構成を示すブロック図である。 本発明の実施の形態に係るSIP端末情報のデータ構成例を示す図である。 本発明の第1実施形態におけるSIP端末発信時のセッションタイマ無条件起動の動作例を示すシーケンスチャートである。 本発明の第1実施形態におけるSIP端末着信時のセッションタイマ無条件起動の動作例を示すシーケンスチャートである。
(第1実施形態)
図1は、本発明の第1実施形態におけるB2BUAで動作するSIPサーバとそれに収容されるSIP端末とで構成される通信システムの構成図である。この通信システムは、SIPサーバ1と複数のSIP端末3a、3b、・・・3x(以下「SIP端末3a、3b、・・・3x」を総合して「SIP端末3」という場合もある)とがネットワークN1を介して接続され、SIPサーバ1とSIPサーバ101とがネットワークN2を介して接続され、SIPサーバ101とSIP端末103とがネットワークN3を介して接続されている。複数のSIP端末3a、3b、・・・3xは、SIPサーバ1に収容されている。また、SIPサーバ1は、その内部に複数のSIP端末情報2a、2b、・・・2x(以下「SIP端末情報2a、2b、・・・2x」を総合して「SIP端末情報2」という場合もある)を保持する。個々のSIP端末情報2は、接続されるSIP端末3に対応している。
図2は、本発明の第1実施形態におけるB2BUAで動作するSIPサーバ1の内部構成を示すブロック図である。SIPサーバ1は、呼制御部4、フラグ判定部5、タイマ6、送信部7、受信部8、及び記憶部9を備えて構成される。
フラグ判定部5は、SIP端末情報2内に備えられる無条件起動フラグ211の“ON”又は“OFF”を判定する。無条件起動フラグ211の詳細は後記する。タイマ6は、無条件起動フラグ211が“ON”に設定されているときに、セッションタイマを無条件に起動する時間が設定される。タイマ6に設定した時間に達したら、タイマ6は、呼制御部4に連絡する。呼制御部4は、タイマ6からの連絡を受けると、セッションタイマを無条件に起動する処理を実行する。無条件に起動されるセッションタイマの処理は、SIPサーバ1が送信部7からSIP端末3に送信するセッションリフレッシュリクエストに対して、SIP端末3からの返信を受信部8が受信したか否かにより行われる。SIP端末3からの返信を受信したか否かの情報は呼制御部4に連絡される。呼制御部4は、SIP端末3からの返信を受信できた場合は、セッションが活性状態であると判定し、返信を受信できなかった場合は、セッションが非活性状態であると判定し、それに応じた処理を行う。
図3は、本発明の第1実施形態におけるSIPサーバ1が備えるSIP端末情報2のデータ構成例である。SIP端末情報2は、検索時のキー情報としての電話番号又はSIP−URI(Session Initiation Protocol-Uniform Resource Identifier)201、セッションタイマの機能にて使用するセッションタイマ情報210、その他のデータ220から構成されている。本実施形態では、セッションタイマ情報210の構成についてさらに詳しく説明する。なお、その他のデータ220としては、図示しないREGISTERにて通知されるSIP端末3側のリクエスト受信アドレスが示されるバインディングアドレス等が存在するが、本実施形態とは直接関係しないために説明を省略する。
セッションタイマ情報210は、無条件起動フラグ211、セッションリフレッシュ間隔212、最小限セッションリフレッシュ間隔213、リフレッシュリクエストメソッド214から構成される。
なお、無条件起動フラグ211は、本実施形態特有の項目であるが、セッションリフレッシュ間隔212、最小限セッションリフレッシュ間隔213、リフレッシュリクエストメソッド214については、従来のRFC4028に対応するSIPサーバが項目として備えている。
(無条件起動フラグ211)
無条件起動フラグ211は、接続先のSIP端末3がRFC4028で規定されるセッションタイマ機能を実装していない場合に、SIPサーバ1がRFC4028で規定されるセッションタイマをRFC4028に規定される起動条件とは関係なく無条件に起動(以下「セッションタイマ無条件起動」という)するかどうかを選択するフラグである。設定値は“ON”又は“OFF”であり、それぞれ“起動する”又は“起動しない”という意味を持つ。RFC3261では「セッションパラメータが変更されていないre−INVITEリクエストを受信した場合、特に何もせず正常応答としてステータスコード2xxを返却してもよい」という許容事項の規定がある。このため、RFC4028で規定されるセッションタイマ機能を実装していないが前記のRFC3261に規定される許容事項をサポートしているSIP端末3に対して、SIPサーバ1は、無条件起動フラグ211を“ON”に設定し、SIPサーバ1からセッションパラメータが変更されていないセッションリフレッシュリクエストを、RFC4028に規定されるセッションリフレッシュリクエストの送信条件とは関係なく無条件に送信することにより、SIPサーバ1とSIP端末3との間のセッションのヘルスチェックを実行する。
ここで、SIPサーバ1がセッションタイマ無条件起動で起動するセッションタイマは、RFC4028に規定されるセッションタイマと起動条件以外は同じである。その為、セッションタイマ無条件起動で起動するセッションタイマで送信するセッションリクエストと、RFC4028で規定されるセッションタイマで送信するセッションリクエストとは、フィールド項目及び内容は共に同じである。
なお、前記のRFC3261に規定される許容事項をサポートしていないSIP端末3に対して、SIPサーバ1が、セッションパラメータを変更していないセッションリフレッシュリクエストを送信してしまうと、エラーとして処理され、SIPサーバ1とSIP端末3との間のセッションが解放されてしまう可能性がある。その為、この場合は、無条件起動フラグ211を“OFF”とすることにより、SIPサーバ1は、セッションリフレッシュリクエストを送信しないようにする。
(セッションリフレッシュ間隔212)
セッションリフレッシュ間隔212は、RFC4028で規定されるセッションタイマ起動時、及び本実施形態におけるセッションタイマ無条件起動時に、接続先のSIP端末3から指定されなかった場合における、SIPサーバ1が適用するセッションリフレッシュの時間間隔であり、設定範囲は60〜600秒である。
SIPサーバ1がセッションタイマ無条件起動を実行する場合に、SIPサーバ1は、このセッションリフレッシュ間隔212の半分の値の時間待機した後に、セッションパラメータを変更していないセッションリフレッシュリクエストを送信する。
なお、セッションリフレッシュ間隔212は、セッションタイマ起動時及びセッションタイマ無条件起動時に、セッションリフレッシュリクエストのSession−Expiresヘッダのdelta−secondsパラメータに設定する値としてSIPサーバ1が参照する。
(最小限セッションリフレッシュ間隔213)
最小限セッションリフレッシュ間隔213は、SIPサーバ1側の条件として設定されるセッションリフレッシュ間隔の最小限の値である。最小限セッションリフレッシュ間隔213は、セッションタイマ起動時及びセッションタイマ無条件起動時に、セッションリフレッシュリクエストのMin−SEヘッダにSIPサーバ1により設定され、接続先のSIP端末3に対して通知される。
(リフレッシュリクエストメソッド214)
リフレッシュリクエストメソッド214は、RFC4028で規定されるセッションタイマ起動時、及び本実施形態におけるセッションタイマ無条件起動時に、SIPサーバ1が送信するセッションリフレッシュリクエストに使用するメソッドである。設定値は“INVITE”又は“UPDATE”である。
なお、本実施形態におけるセッションタイマ無条件起動時において、接続先のSIP端末3よりAllowヘッダにてUPDATEの受信が許容できないことが通知された場合には、SIPサーバ1は、セッションリフレッシュリクエストに本データの設定とは関係なく一律INVITEメソッドを使用する。
(第1実施形態におけるSIPサーバの動作)
図4及び図5に示すシーケンスチャートを用いて、第1実施形態におけるセッションタイマ無条件起動の動作について説明する。
図4は、SIP端末3aからB2BUAで動作するSIPサーバ1にリクエストを発信した場合のセッションタイマ無条件起動の動作例である。以下、SIPサーバ1とSIP端末3aとの間の関係について記述する。
SIP端末3aは、RFC4028に規定されるセッションタイマ機能を実装していないが、セッションパラメータの変更のないre−INVITEリクエストを受信した場合に、RFC3261に規定される許容事項である「特に何もせず正常応答としてステータスコード2xxを返却する機能」を実装している。また、SIP端末3aは、UPDATEメソッドを扱うことができない。
SIPサーバ1は、SIP端末3aに対応するSIP端末情報2aを保持している。SIPサーバ1の保守者(オペレータ)は、事前にSIP端末3aが有する機能を判断して、SIP端末3aの機能をSIP端末情報2aとしてSIPサーバ1に登録を行っている。具体的には、SIP端末情報2aのセッションタイマ情報210aの、無条件起動フラグ211aに“ON”、セッションリフレッシュ間隔212aに180秒、最小限セッションリフレッシュ間隔213aに180秒、リフレッシュリクエストメソッド214aにUPDATEが設定されている。
続いて、図4に示す各ステップについて説明する。
(ステップS1)
SIPサーバ1は、SIP端末3aからイニシャルINVITEリクエストを受信する。このとき、SIPサーバ1は、イニシャルINVITEリクエストのSupportedヘッダ又はRequireヘッダにtimerタグが設定されていないことにより、SIP端末3aがセッションタイマ機能を実装していないことを判断する。なお、SIPサーバ1は、Supportedヘッダ又はRequireヘッダにtimerタグが設定されていた場合は、SIP端末3aがRFC4028で規定されるセッションタイマ機能を実装していると判断し、SIPサーバ1は、RFC4028に規定される条件に従ってセッションタイマを起動する。また、SIPサーバ1は、AllowヘッダにUPDATEが設定されていないことにより、SIP端末3aがUPDATEメソッドを扱えないことを判断する。
(ステップS2)
SIPサーバ1は、セッションの確立を検出する。SIPサーバ1は、ステップS1においてSIP端末3aがセッションタイマ機能を実装していないと判断しているため、SIP端末情報2aのセッションタイマ情報の無条件起動フラグ211aを確認し、ONとなっている場合は、セッションタイマを無条件に起動する。なお、OFFとなっている場合は、セッションタイマを起動しない。本実施形態では、SIPサーバ1は、無条件起動フラグ211aがONとなっているためにRFC4028で規定されるセッションタイマを無条件に起動する。
SIPサーバ1は、セッションタイマを無条件に起動する場合に、SIP端末3aからのイニシャルINVITEリクエストへの応答である200OKレスポンスを、以下のように編集する。SIPサーバ1は、自身がRFC4028に規定されるセッションタイマ機能を実装しているため、Supportedヘッダにtimerタグを設定する。SIPサーバ1は、SIP端末情報2aのセッションタイマ情報210aのセッションリフレッシュ間隔212aを確認し180秒となっているため、Session−Expiresヘッダのdelta−secondsパラメータに180を設定し、SIPサーバ1がリフレッシャとなるためSession−Expiresヘッダのrefresherパラメータにはuasを設定し、最小限セッションリフレッシュ間隔213aを確認し180秒となっているため、Min−SEヘッダに180を設定する。また、SIPサーバ1は、200OKレスポンスにセッション確立時に通知された着信側のセッションパラメータを設定する。そして、SIPサーバ1は、前記の通り編集した200OKレスポンスを、SIP端末3aに対して送信する。
送信後、SIPサーバ1は、SIP端末情報2aのセッションタイマ情報210a(図3)のセッションリフレッシュ間隔212aを参照し、180秒となっているため、2分の1の値である90秒でタイマ6に登録して、タイマ6が起動する。
(ステップS3)
タイマに登録された90秒が経過するとタイムアップとなり、タイマ6は呼制御部4に連絡する。SIPサーバ1は、セッションタイマを起動し、セッションリフレッシュリクエスト送信処理を開始する。
SIPサーバ1は、ステップS1においてSIP端末3aがUPDATEメソッドを扱えないことを判断しているため、セッションリフレッシュリクエストにINVITEメソッドを使用する。SIPサーバ1は、自身がセッションタイマ機能を実装しているためSupportedヘッダにtimerタグを設定する。SIPサーバ1は、SIP端末情報2aのセッションタイマ情報210aのセッションリフレッシュ間隔212aを確認し180秒となっているため、Session−Expiresヘッダのdelta−secondsパラメータに180を設定し、SIPサーバ1がリフレッシャとなるためSession−Expiresヘッダのrefresherパラメータにはuacを設定し、最小限セッションリフレッシュ間隔213aを確認し180秒となっているため、Min−SEヘッダに180を設定する。また、SIPサーバ1は、ステップS2において200OKレスポンスに設定した着信側のセッションパラメータを変更しないままで設定する。セッションパラメータを変更しないままで設定するのは、RFC3261に規定される許容事項である「特に何もせず正常応答としてステータスコード2xxを返却する機能」を使うためである。SIPサーバ1は、前記の通り編集したre−INVITEリクエストを、セッションリフレッシュリクエストとしてSIP端末3aに対して送信する。
(ステップS4)
SIPサーバ1は、SIP端末3aから、セッションリフレッシュリクエストであるre−INVITEリクエストに対する200OKレスポンスを受信することにより、このセッションが活性状態であると判定し、セッションを継続する。このとき、SIPサーバ1は、200OKレスポンスのSupportedヘッダ又はRequireヘッダにtimerタグが設定されていないことにより、SIP端末3aがセッションタイマ機能を実装していないことを判断する。また、SIPサーバ1は、200OKレスポンスのAllowヘッダにUPDATEが設定されていないことによりSIP端末3aがUPDATEメソッドを扱えないことを判断する。続いて、SIPサーバ1は、SIP端末3aがセッションタイマ機能を実装していないため、SIP端末情報2aのセッションタイマ情報の無条件起動フラグ211aを確認し、ONとなっている場合は、セッションタイマを無条件に起動する。なお、OFFとなっている場合は、セッションタイマを起動しない。本実施形態では、SIPサーバ1は、無条件起動フラグ211aがONとなっているためにRFC4028で規定されるセッションタイマを無条件に起動する。
SIPサーバ1は、セッションタイマを無条件に起動する場合に、SIP端末情報2aのセッションタイマ情報210aのセッションリフレッシュ間隔212aを確認し180秒となっているため、その2分の1の値である90秒でタイマ6に登録して、タイマ6が起動する。また、SIPサーバは、200OKレスポンスに対するACKリクエストをSIP端末3aに対して返信する。
なお、Supportedヘッダ又はRequireヘッダにtimerタグが設定されていないことの判断や、AllowヘッダにUPDATEが設定されていないことの判断を、ステップS1と重複して行っているようにも見える。この理由は、RFC4028に、セッションリフレッシュリクエスト毎に、リフレッシャ/非リフレッシャの関係や、セッションリフレッシュ間隔を再度ネゴシエーションしてもよいことが規定されているため、可能性として、Supportedヘッダにtimerタグを付与しなかったSIP端末3aが、次のセッションリフレッシュにおいて、timerタグを付与して、セッションタイマのサポートを通知してくるケースを考慮しているものである。
(ステップS5)
ステップS5の処理の概要は、ステップS3と同じである。
タイマに登録された90秒が経過するとタイムアップとなり、タイマ6は呼制御部4に連絡する。SIPサーバ1は、セッションタイマを起動し、セッションリフレッシュリクエスト送信処理を開始する。
SIPサーバ1は、ステップS4においてSIP端末3aがUPDATEメソッドを扱えないことを判断しているため、セッションリフレッシュリクエストにINVITEメソッドを使用する。SIPサーバ1は、自身がセッションタイマ機能を実装しているためSupportedヘッダにtimerタグを設定する。SIPサーバ1は、SIP端末情報2aのセッションタイマ情報210aのセッションリフレッシュ間隔212aを確認し180秒となっているため、Session−Expiresヘッダのdelta−secondsパラメータに180を設定し、SIPサーバ1がリフレッシャとなるためSession−Expiresヘッダのrefresherパラメータにはuacを設定し、最小限セッションリフレッシュ間隔213aを確認し180秒となっているため、Min−SEヘッダに180を設定する。また、SIPサーバ1は、ステップS2において200OKレスポンスに設定した着信側のセッションパラメータを変更しないままで設定する。セッションパラメータを変更しないままで設定するのは、RFC3261に規定される許容事項である「特に何もせず正常応答としてステータスコード2xxを返却する機能」を使うためである。SIPサーバ1は、前記の通り編集したre−INVITEリクエストを、セッションリフレッシュリクエストとしてSIP端末3aに対して送信する。
(ステップS6)
SIPサーバ1は、SIP端末3aからセッションリフレッシュリクエストであるre−INVITEリクエストに対する200OKレスポンスを受信できなかった場合、このセッションが非活性状態であると判定し、セッション解放処理を開始する。セッションの解放では、SIPサーバ1は、SIP端末3aに対してBYEリクエストを送信する。
次に、図5は、B2BUAで動作するSIPサーバ1からSIP端末3bに着信した場合のセッションタイマ無条件起動の動作例である。以下、SIPサーバ1とSIP端末3bとの間の関係について記述する。
SIP端末3bは、RFC4028に規定されるセッションタイマ機能を実装していないが、セッションパラメータの変更のないre−INVITEリクエストを受信した場合に、RFC3261に規定される許容事項である「特に何もせず正常応答としてステータスコード2xxを返却する機能」を実装している。また、SIP端末3bは、UPDATEメソッドを扱うことが可能であり、セッションパラメータが付与されていないUPDATEリクエストを受信した場合に、RFC3261に規定される「特に何もせず正常応答としてステータスコード2xxを返却する機能」を実装している。
SIPサーバ1は、SIP端末3bに対応するSIP端末情報2bを保持している。SIPサーバ1の保守者(オペレータ)は、事前にSIP端末3bが有する機能を判断して、SIP端末3bの機能をSIP端末情報2bとしてSIPサーバ1に登録を行っている。具体的には、SIP端末情報2bのセッションタイマ情報210bの、無条件起動フラグ211bに“ON”、セッションリフレッシュ間隔212bに300秒、最小限セッションリフレッシュ間隔213bに180秒、リフレッシュリクエストメソッド214bにUPDATEが設定されている。
続いて、図5に示す各動作ステップについて説明する。
(ステップS11)
SIPサーバ1は、SIP端末3bに着信があったことを検出する。
SIPサーバ1は、SIP端末3bに対して送信するイニシャルINVITEを以下のように編集する。SIPサーバ1は、自身がRFC4028に規定されるセッションタイマ機能を実装しているため、Supportedヘッダにtimerタグを設定する。SIPサーバ1は、SIP端末情報2bのセッションタイマ情報210bのセッションリフレッシュ間隔212bを確認し300秒となっているため、Session−Expiresヘッダのdelta−secondsパラメータに300を設定し、SIPサーバ1がリフレッシャとなるためSession−Expiresヘッダのrefresherパラメータにはuacを設定し、最小限セッションリフレッシュ間隔213bを確認し180秒となっているため、Min−SEヘッダに180を設定する。また、SIPサーバ1は、着信検出時に通知された発信側のセッションパラメータを設定する。そして、SIPサーバ1は、前記の通り編集したイニシャルINVITEリクエストを、SIP端末3bに対して送信する。
(ステップS12)
SIPサーバ1は、SIP端末3bから、イニシャルINVITEリクエストに対する200OKレスポンスを受信する。このとき、SIPサーバ1は、200OKレスポンスのSupportedヘッダ又はRequireヘッダにtimerタグが設定されていないことにより、SIP端末3bがセッションタイマ機能を実装していないことを判断する。なお、SIPサーバ1は、Supportedヘッダ又はRequireヘッダにtimerタグが設定されていた場合は、SIP端末3bがRFC4028で規定されるセッションタイマ機能を実装していると判断し、SIPサーバ1はRFC4028に記載される条件に従ってセッションタイマを起動する。
また、SIPサーバ1は、イニシャルINVITEリクエストに対する200OKレスポンスのAllowヘッダにUPDATEが設定されていることによりSIP端末3bがUPDATEメソッドを扱えることを判断する。続けて、SIPサーバ1は、SIP端末3bがセッションタイマ機能を実装していないため、SIP端末情報2bのセッションタイマ情報の無条件起動フラグ211bを確認し、ONとなっている場合は、セッションタイマを無条件に起動する。なお、OFFとなっている場合は、セッションタイマを起動しない。本実施形態では、SIPサーバ1は、無条件起動フラグ211bがONとなっているためにRFC4028で規定されるセッションタイマを無条件に起動する。
SIPサーバ1は、セッションタイマを無条件に起動する場合に、SIP端末情報2bのセッションタイマ情報210bのセッションリフレッシュ間隔212bを確認し、300秒となっているため、その2分の1の値である150秒でタイマ6に登録して、タイマ6が起動する。また、SIPサーバ1は、200OKレスポンスに対するACKリクエストをSIP端末3bに対して返信する。
(ステップS13)
タイマに登録された150秒が経過するとタイムアップとなり、タイマ6は呼制御部4に連絡する。SIPサーバ1は、セッションタイマを起動し、セッションリフレッシュリクエスト送信処理を開始する。
SIPサーバ1は、ステップS12においてSIP端末3bがUPDATEメソッドを扱えることを判断しているため、さらに、SIP端末情報2bのセッションタイマ情報210bのリフレッシュリクエストメソッド214bを確認し、UPDATEとなっているため、セッションリフレッシュリクエストにUPDATEメソッドを使用する。なお、リフレッシュリクエストメソッド214bがINVITEとなっている場合は、セッションリフレッシュリクエストにINVITEを使用する。SIPサーバ1は、自身がセッションタイマ機能を実装しているためSupportedヘッダにtimerタグを設定する。SIPサーバ1は、SIP端末情報2bのセッションタイマ情報210bのセッションリフレッシュ間隔212bを確認し300秒となっているため、Session−Expiresヘッダのdelta−secondsパラメータに300を設定し、SIPサーバ1がリフレッシャとなるためSession−Expiresヘッダのrefresherパラメータにはuacを設定し、最小限セッションリフレッシュ間隔213bを確認し180秒となっているため、Min−SEヘッダに180を設定する。ここで、SIPサーバ1は、ステップS11のイニシャルINVITEリクエストに付与した発信側のセッションパラメータは設定しない。SIPサーバ1は、前記の通り編集したUPDATEリクエストをセッションリフレッシュリクエストとしてSIP端末3bに対して送信する。
(ステップS14)
SIPサーバ1は、SIP端末3bから、セッションリフレッシュリクエストであるUPDATEリクエストに対する200OKレスポンスを受信することにより、このセッションが活性状態であると判定し、セッションを継続する。このとき、SIPサーバ1は、200OKレスポンスのSupportedヘッダ又はRequireヘッダにtimerタグが設定されていないことにより、SIP端末3bがセッションタイマ機能を実装していないことを判断する。また、SIPサーバ1は、200OKレスポンスのAllowヘッダにUPDATEが設定されていることによりSIP端末3bがUPDATEメソッドを扱えることを判断する。続いて、SIPサーバ1は、SIP端末3bがセッションタイマ機能を実装していないため、SIP端末情報2bのセッションタイマ情報の無条件起動フラグ211bを確認し、ONとなっている場合は、セッションタイマを無条件に起動する。本実施形態では、SIPサーバ1は、無条件起動フラグ211bがONとなっているためにRFC4028で規定されるセッションタイマを無条件に起動する。
SIPサーバ1は、セッションタイマを無条件に起動する場合に、SIP端末情報2bのセッションタイマ情報210bのセッションリフレッシュ間隔212bを確認し300秒となっているため、その2分の1の値である150秒でタイマ6に登録して、タイマ6が起動する。
なお、Supportedヘッダ又はRequireヘッダにtimerタグが設定されていないことの判断や、AllowヘッダにUPDATEが設定されていないことの判断を、ステップS12と重複して行っているようにも見える。この理由は、RFC4028に、セッションリフレッシュリクエスト毎に、リフレッシャ/非リフレッシャの関係や、セッションリフレッシュ間隔を再度ネゴシエーションしてもよいことが規定されているため、可能性として、Supportedヘッダにtimerタグを付与しなかったSIP端末3bが、次のセッションリフレッシュにおいて、timerタグを付与して、セッションタイマのサポートを通知してくるケースを考慮しているものである。
(ステップS15)
ステップS15の処理の概要は、ステップS13と同じである。
タイマに登録された150秒が経過するとタイムアップとなり、タイマ6は呼制御部4に連絡する。SIPサーバ1は、セッションタイマを起動し、セッションリフレッシュリクエスト送信処理を開始する。
SIPサーバ1は、ステップS14においてSIP端末3bがUPDATEメソッドを扱えることを判断しているため、さらに、SIP端末情報2bのセッションタイマ情報210bのリフレッシュリクエストメソッド214bを確認し、UPDATEとなっているため、セッションリフレッシュリクエストにUPDATEメソッドを使用する。なお、リフレッシュリクエストメソッドがINVITEとなっている場合はセッションリフレッシュリクエストにINVITEメソッドを使用する。SIPサーバ1は、自身がセッションタイマ機能を実装しているためSupportedヘッダにtimerタグを設定する。SIPサーバ1は、SIP端末情報2bのセッションタイマ情報210b(図3)のセッションリフレッシュ間隔212bを確認し300秒となっているため、Session−Expiresヘッダのdelta−secondsパラメータに300を設定し、SIPサーバ1がリフレッシャとなるためSession−Expiresヘッダのrefresherパラメータにはuacを設定し、最小限セッションリフレッシュ間隔213bを確認し180秒となっているため、Min−SEヘッダに180を設定する。ここで、SIPサーバ1は、ステップS11のイニシャルINVITEリクエストに付与した発信側のセッションパラメータは設定しない。SIPサーバ1は、前記の通り編集したUPDATEリクエストを、セッションリフレッシュリクエストとしてSIP端末3bに対して送信する。
(ステップS16)
SIPサーバ1は、SIP端末3bからセッションリフレッシュリクエストであるUPDATEリクエストに対する200OKレスポンスを受信できなかった場合、このセッションが非活性状態であると判定し、セッション解放処理を開始する。セッションの解放では、SIPサーバ1は、SIP端末3bに対してBYEリクエストを送信する。
(変形例)
第1実施形態では、B2BUAとして動作するSIPサーバ1が、接続しているSIP端末3に対するセッションタイマの無条件起動動作について、セッションタイマを無条件に起動するか否かのフラグ等で構成されるセッションタイマ情報を、SIP端末情報2に保持することで適用した例を説明した。図1に示すように、B2BUAとして動作するSIPサーバ1において、ネットワークN2を介して対向するSIPサーバ101ごとに保持されるSIPサーバ情報102に、前記セッションタイマを無条件に起動するか否かのフラグ等で構成されるセッションタイマ情報を保持させることにすれば、対向するSIPサーバ101とのセッションに対してもセッションタイマ無条件起動を実行することが可能になる。
また、第1の実施形態では、セッションリフレッシュリクエストに対して、レスポンスが送信されなかった場合にセッションを解放する動作を説明したが、セッションリフレッシュリクエストに対してエラーレスポンスが返信された場合でも、ステータスコードの意味によって、セッションを解放する動作を適用することも可能である。例えば、図4のステップS5又は図5のステップS15において、SIPサーバ1から送信されたリフレッシュリクエストに対して、SIP端末3a又は3bの電源がOFFされたり、端末やネットワーク機器などが故障したりした等により、SIP端末3a又は3bからの応答信号(200OK)がSIPサーバ1に届かない場合である。
以上のように、第1実施形態によれば、B2BUAで動作するSIPサーバにセッションタイマを無条件に起動するかどうかのフラグを持つことにより、セッションタイマ機能を実装していないがセッションパラメータの変更のないre-INVITEリクエストやセッションパラメータが付与されていないUPDATEリクエストに対して何もせずに正常応答としてステータスコード2xxを返却する機能を実装するSIP端末に対して、セッション確立後に無条件にセッションリフレッシュリクエストを送信することで、セッションのヘルスチェックを実現することが可能となる。
1 SIPサーバ
2(2a,2b,・・,2x) SIP端末情報
3(3a,3b,・・,3x) SIP端末
4 呼制御部
5 フラグ判定部
6 タイマ
7 送信部
8 受信部
9 記憶部
101 SIPサーバ
102 SIPサーバ情報
103 SIP端末
210,210a,210b セッションタイマ情報
211,211a,211b 無条件起動フラグ
212,212a,212b セッションリフレッシュ間隔
213,213a,213b 最小限セッションリフレッシュ間隔
214,214a,214b リフレッシュリクエストメソッド

Claims (12)

  1. B2BUAとして動作し、送受信部を備えたSIPサーバにおいて、
    セッションタイマを無条件に起動するか否かを規定する無条件起動フラグ、及び前記セッションタイマを無条件に起動するときに前記送受信部が送信するセッションリフレッシュリクエストに使用するリフレッシュリクエストメソッドを含むSIP端末情報を、収容するSIP端末ごとに有することを特徴とするSIPサーバ。
  2. 前記セッションタイマを起動するための時間間隔の基準となるセッションリフレッシュ間隔のデータを前記SIP端末情報に有し、
    前記時間間隔で前記セッションタイマを起動させるタイマをさらに有する
    ことを特徴とする請求項1に記載のSIPサーバ。
  3. 前記SIP端末は、セッションタイマ機能を実装せず、セッションパラメータの変更のない前記セッションリフレッシュリクエストに対して何もせず正常応答としてステータスコード2xxを返信することを特徴とする請求項1又は請求項2に記載のSIPサーバ。
  4. 前記セッションリフレッシュリクエストは、re-INVITEリクエスト、又はセッションパラメータのないUPDATEリクエストであることを特徴とする請求項3に記載のSIPサーバ。
  5. イニシャルINVITEリクエストの受信、又はイニシャルINVITEリクエストの送信に対する200OKレスポンスの受信によるセッションの確立の際に、前記無条件起動フラグを確認し、この無条件起動フラグに応じて前記セッションリフレッシュ間隔の2分の1の時間で前記タイマを登録し、登録したタイマの時間の経過に伴いセッションタイマを無条件に起動することを特徴とする請求項4に記載のSIPサーバ。
  6. 前記200OKレスポンスは、Supportedヘッダ、又はRequireヘッダにtimerタグが付与されていないことを特徴とする請求項5に記載のSIPサーバ。
  7. 前記タイマが起動した場合に、前記セッションリフレッシュリクエストを編集し、送信を開始することを特徴とする請求項5又は請求項6に記載のSIPサーバ。
  8. 前記セッションリフレッシュリクエストに対して、200OKレスポンスを受信できなかった場合に、セッション解放処理を開始してBYEリクエストを送信することを特徴とする請求項7に記載のSIPサーバ。
  9. 前記セッションリフレッシュリクエストに対して、200OKレスポンスを受信できた場合に、セッションを継続するとともに、受信した200OKレスポンスでのtimerタグの有無と、このSIP端末に対応するSIP端末情報のセッションタイマ情報の前記無条件起動フラグの値を確認することによってセッションタイマの起動条件を再確認することを特徴とする請求項7に記載のSIPサーバ。
  10. 前記セッションリフレッシュリクエストに使用するメソッドは、前記SIP端末から通知されたAllowヘッダでのUPDATEが設定されていなかった場合にはINVITEとして決定され、UPDATEが設定されていた場合にはUPDATEであることを確認すると共に、このSIP端末に対応するSIP端末情報のセッションタイマ情報のリフレッシュリクエストメソッドとして決定されることを特徴とする請求項7から請求項9のうちのいずれか1項に記載のSIPサーバ。
  11. 前記SIP端末情報は、さらに最小限セッションリフレッシュ間隔の情報を含んでおり、
    前記セッションリフレッシュリクエストを編集する際に、Session−Expiresヘッダのdelta−secondsパラメータに前記SIP端末に対応するSIP端末情報のセッションタイマ情報のセッションリフレッシュ間隔を、refresherパラメータにuacを設定し、Min−SEヘッダにはこのSIP端末に対応するSIP端末情報のセッションタイマ情報の最小限セッションリフレッシュ間隔を設定することを特徴とする請求項5から請求項8のうちのいずれか1項に記載のSIPサーバ。
  12. B2BUAとして動作し、セッションタイマを無条件に起動するか否かを規定する無条件起動フラグを含むSIP端末情報を、収容するSIP端末ごとに有するSIPサーバのセッションタイマ起動方法において、
    前記SIPサーバが、前記無条件起動フラグの値を確認するステップと、
    前記SIPサーバが、所定の時間間隔後に前記セッションタイマを起動するステップと、
    を有することを特徴とするSIPサーバのセッションタイマ起動方法。
JP2009071964A 2009-03-24 2009-03-24 セッションタイマ起動方法、及びsipサーバ Active JP5299006B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009071964A JP5299006B2 (ja) 2009-03-24 2009-03-24 セッションタイマ起動方法、及びsipサーバ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009071964A JP5299006B2 (ja) 2009-03-24 2009-03-24 セッションタイマ起動方法、及びsipサーバ

Publications (2)

Publication Number Publication Date
JP2010226459A true JP2010226459A (ja) 2010-10-07
JP5299006B2 JP5299006B2 (ja) 2013-09-25

Family

ID=43043157

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009071964A Active JP5299006B2 (ja) 2009-03-24 2009-03-24 セッションタイマ起動方法、及びsipサーバ

Country Status (1)

Country Link
JP (1) JP5299006B2 (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012175550A (ja) * 2011-02-23 2012-09-10 Nippon Telegr & Teleph Corp <Ntt> 呼処理制御装置および呼処理制御方法
JP2012178659A (ja) * 2011-02-25 2012-09-13 Nippon Telegr & Teleph Corp <Ntt> 呼制御システムおよび呼制御に利用する情報の冗長化方法
JP2012178707A (ja) * 2011-02-25 2012-09-13 Nippon Telegr & Teleph Corp <Ntt> 呼制御システムおよび呼制御に利用する情報の冗長化方法
JP2012209785A (ja) * 2011-03-30 2012-10-25 Brother Ind Ltd 通信制御装置、通信システム、及び通信方法
JP2012209784A (ja) * 2011-03-30 2012-10-25 Brother Ind Ltd 通信制御装置、通信システム、及び通信方法
JP2013038582A (ja) * 2011-08-08 2013-02-21 Nippon Telegr & Teleph Corp <Ntt> 呼制御システムおよび呼制御に利用する情報の冗長化方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006166018A (ja) * 2004-12-07 2006-06-22 Toshiba Corp ネットワーク電話システム及びこのネットワーク電話システムの主装置及び電話端末
JP2006222667A (ja) * 2005-02-09 2006-08-24 Sanyo Electric Co Ltd SIPサーバ及びVoIP電話システム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006166018A (ja) * 2004-12-07 2006-06-22 Toshiba Corp ネットワーク電話システム及びこのネットワーク電話システムの主装置及び電話端末
JP2006222667A (ja) * 2005-02-09 2006-08-24 Sanyo Electric Co Ltd SIPサーバ及びVoIP電話システム

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012175550A (ja) * 2011-02-23 2012-09-10 Nippon Telegr & Teleph Corp <Ntt> 呼処理制御装置および呼処理制御方法
JP2012178659A (ja) * 2011-02-25 2012-09-13 Nippon Telegr & Teleph Corp <Ntt> 呼制御システムおよび呼制御に利用する情報の冗長化方法
JP2012178707A (ja) * 2011-02-25 2012-09-13 Nippon Telegr & Teleph Corp <Ntt> 呼制御システムおよび呼制御に利用する情報の冗長化方法
JP2012209785A (ja) * 2011-03-30 2012-10-25 Brother Ind Ltd 通信制御装置、通信システム、及び通信方法
JP2012209784A (ja) * 2011-03-30 2012-10-25 Brother Ind Ltd 通信制御装置、通信システム、及び通信方法
JP2013038582A (ja) * 2011-08-08 2013-02-21 Nippon Telegr & Teleph Corp <Ntt> 呼制御システムおよび呼制御に利用する情報の冗長化方法

Also Published As

Publication number Publication date
JP5299006B2 (ja) 2013-09-25

Similar Documents

Publication Publication Date Title
JP5299006B2 (ja) セッションタイマ起動方法、及びsipサーバ
US20150023251A1 (en) Method, device, and system for connecting to a communication device
US20080086566A1 (en) Refreshing a session initiation protocol (SIP) session
US8599834B2 (en) Systems, methods, and computer program products for providing a manual ring-down communication line using session initiation protocol
JP2009296138A (ja) 通信システム
RU2441332C2 (ru) Вспомогательное периферийное устройство для предупреждения компьютера о входящем вызове
US9509778B2 (en) SIP-based method, apparatus and system for secure communication between MTC devices
CN101997850B (zh) 用于ip多媒体子系统的呼叫管理方法及装置
US10230801B2 (en) Session reconstruction using proactive redirect
US7822858B2 (en) Techniques for bulk refresh of sessions in IP networks
JP2008153782A (ja) 呼管理方法、呼管理システム、およびメッセージ処理サーバシステム
EP2027673B1 (en) Enhanced refresh in a sip network
JP2006345231A (ja) Sip−alg方法
JP2010212825A (ja) 通信システム、sipサーバ、sip端末、及びセキュリティ通信方法
JP5102153B2 (ja) Sipシグナリングにおけるコマンドシーケンス番号の制御方法、サーバ及びプログラム
JP2008099168A (ja) Sip端末装置におけるピアツーピア接続の接続規制方法
JP6234272B2 (ja) アーリーメディアの送信タイミングを制御するセッション制御方法、sipサーバ及びプログラム
CN102594781A (zh) Sip防火墙软件中的主备同步机制
JP6663879B2 (ja) 呼出音提供補助装置、呼出音提供補助方法及び呼出音提供補助プログラム
WO2013117215A1 (en) Session persistent data and method of use thereof
JP2011082868A (ja) 呼救済システム、呼救済サーバ、呼救済サーバの呼救済プログラム
JP2009290500A (ja) Ip電話システム及びip電話機
WO2008080334A1 (fr) Agent d&#39;utilisateur dos à dos et procédé de transmission d&#39;informations associé
JP5780655B2 (ja) 通信システム、通信方法、及び通信サーバ
KR100636279B1 (ko) 브이오아이피 시스템의 자원정보를 이용한 호제어 시스템및 그 방법

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110217

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20111027

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20120813

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130308

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130312

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130426

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130521

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130603

R150 Certificate of patent or registration of utility model

Ref document number: 5299006

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150