JP2009206657A - 端末装置、nat越え方法、及びプログラム - Google Patents

端末装置、nat越え方法、及びプログラム Download PDF

Info

Publication number
JP2009206657A
JP2009206657A JP2008045109A JP2008045109A JP2009206657A JP 2009206657 A JP2009206657 A JP 2009206657A JP 2008045109 A JP2008045109 A JP 2008045109A JP 2008045109 A JP2008045109 A JP 2008045109A JP 2009206657 A JP2009206657 A JP 2009206657A
Authority
JP
Japan
Prior art keywords
terminal device
http
communication
message
address
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
JP2008045109A
Other languages
English (en)
Other versions
JP4961368B2 (ja
Inventor
Tomohiro Nishitani
智広 西谷
Kazuhiro Arai
和博 荒井
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.)
NTT Communications Corp
Original Assignee
NTT Communications Corp
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 NTT Communications Corp filed Critical NTT Communications Corp
Priority to JP2008045109A priority Critical patent/JP4961368B2/ja
Publication of JP2009206657A publication Critical patent/JP2009206657A/ja
Application granted granted Critical
Publication of JP4961368B2 publication Critical patent/JP4961368B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

【課題】SIP等のNAT越え方式としてHTTPトンネルを必要に応じて選択することを可能とする。
【解決手段】NAT装置の配下に備えられる端末装置において、前記NAT装置の外部の通信ネットワークに接続された所定の装置に向けてUDP透過判定メッセージを送信し、前記UDP透過判定メッセージに対する前記所定の装置からの応答メッセージを受信するか否かを判定するUDP透過判定手段と、前記UDP透過判定手段により、前記所定の装置からの応答メッセージを受信しなかったと判定された場合に、前記NAT装置の外部の通信ネットワークに接続されたHTTPトンネリング装置との間にHTTPトンネルを設定するHTTPトンネル設定手段と、前記HTTPトンネルを経由して、他の端末装置との間でメディア通信のためのシグナリングメッセージの送受信を行うシグナリングメッセージ通信手段とを備える。
【選択図】図2

Description

本発明は、NAT(Network Address Translation)装置の配下にある端末装置が、NAT装置を通過して他の端末装置と通信を行うNAT越え技術に関するものである。
プライベートIPアドレスとグローバルIPアドレスとを相互に変換することにより、プライベートIPアドレスが割り当てられた端末からインターネットへのアクセスを可能とするNAT装置(NATルータ等)が普及している。
さて、VoIP技術等を利用したIPメディア通信サービスが普及しているが、家庭内網や社内網等のプライベートネットワークの中にある端末装置は一般にNAT装置の配下にあるため、そのような端末装置はNAT装置を介して外部の端末装置と通信を行うことになる。なお、本明細書及び特許請求の範囲において、NATはNAPT(Network Address Port Translation)を含む意味で使用している。
ここで、現在普及しているVoIP技術を利用したメディア通信サービスでは一般的にシグナリングプロトコルとしてSIP(Session Initiation Protocol)が使われる。しかし、SIPでは、SIPメッセージ送受信に使用するアドレスや、メディア通信に使用するアドレスをSIPメッセージの内部に書き込んでいるため、IPパケットのアドレスがNAT装置により変換されても、SIPメッセージ内部のアドレスが変換されないことから、NAT装置を介して端末装置同士でSIPに基づくメディア通信を行うことは通常は困難である。なお、SIPメッセージの送受信、及びメディアの送受信はUDP(User Datagram Protocol)により行われる。
NAT装置を経由してSIPを利用した通信を可能とするための主な技術として、STUN-bis(Session Traversal Utilities for NAT、非特許文献1)、TURN(Traversal Using Relays around NAT、非特許文献2)、HTTPトンネリング等がある。以下、STUN-bisは単にSTUNと記載することにする。
STUNは、端末装置がNAT装置の外側のグローバルIPアドレスとポート番号を取得することを可能にする技術であり、これにより、端末装置は、通信の相手にグローバルIPアドレスとポート番号を伝えることができる。
TURNは、メディア(UDPデータ)を中継するためのTURNサーバをグローバルネットワーク側に配置し、NAT装置配下の端末装置と、外部の端末装置とがTURNサーバを経由して通信可能とする技術である。
HTTPトンネリングは、メディア(UDPデータ)を中継するためのHTTPトンネリングサーバをグローバルネットワーク側に配置し、実際に通信したいデータ(UDPデータ等)をHTTPヘッダでカプセリングすることにより、NAT装置配下の端末装置と、外部の端末装置とがHTTPトンネリングサーバを経由して通信可能とする技術である。NAT装置からは通常のHTTP通信のように見せかけて通信を行うことになる。
また、上記以外にも例えば、NAT装置配下に存在する各端末装置が内部からUDPパケットを送信し、NAT装置に穴を開けて、NAT装置配下に存在する端末装置同士が第三者を介さずにUDP通信を行うためのUDP Hole Punchingという技術がある。
しかし、STUNやUDP Hole Punchingでは、UDPパケットを透過させないNAT装置、及びシンメトリックNAT装置に適用できない。また、TURNはシンメトリックNAT装置には適用できるがUDPパケットを透過させないNAT装置には適用できない。HTTPトンネリングは一般にどのようなNAT装置にも適用できる。
一方、HTTPトンネリング技術は、通信データをサーバを中継させる処理、及び、カプセリング/デカプセリング処理が必要となるため、直接端末装置間でメディア通信を行うことが可能なSTUN-bisやUDP Hole Punchingよりも遅延が大きくなる。また、TURNについても、通信データをサーバを中継させる処理の分、STUN-bisやUDP Hole Punchingよりも遅延が大きくなる。また、TURNやHTTPトンネリングではサーバに負荷がかかり、当該サーバにアクセスが集中する場合は、遅延が更に大きくなる。なお、NAT越えの方式としてUPnP(Universal Plug and Play)と呼ばれる技術もあるが、当該機能を実装していないあるいは出荷時に当該機能がデフォルト停止している機器が多く、SIPのNAT越えの方式としては一般的でない。
特開2005-198181号公報 RFC3489bis 平成20年2月24日検索、インターネット、<URL: http://tools.ietf.org/html/draft-ietf-behave-turn-06> 平成20年2月24日検索、インターネット、<URL: http://tools.ietf.org/html/draft-ietf-mmusic-ice-19
上記の背景技術から、NAT装置の種類等に応じて、適切なNAT越えの方式を選択することが必要である。NAT越えの方式のうちTURNとSTUNに関しては、これらのうち最適なものを選択することが可能なICE(Interactive Connectivity Establishment、非特許文献3)と呼ばれる技術が存在する。
ICEでは、SIP機能を備えた端末装置が、通信を開始する前に、STUNやTURNで利用可能なアドレス情報を取得し、得られたアドレス情報及び自身のアドレス情報をSIPメッセージの中に含めて送信し、そのメッセージを受け取ったICEをサポートする相手端末装置が、どのアドレスと通信可能かを調べ、所定のルールに基づき通信可能なアドレスのうち最も効率的なアドレスを選択して通信を行う。通信の効率から考えて、選択の優先順位は、自身のアドレスが最も高く(つまりNAT装置を介さないローカル通信を行う場合)、次にSTUNのアドレス、その次にTURNのアドレスとなるのが一般的である。
しかしながら、従来技術では、NAT越え方式の選択肢としてHTTPトンネリングは考慮されていない。従って、従来技術では、HTTPトンネリングが基本的にどのようなNAT装置配下でも通信を可能としてくれることを理由に、他の方式の利用可能性にかかわらず、HTTPトンネリング方式のみを利用する方式としてしまうことがあり得る。しかし、前述したように、HTTPトンネリング方式はサーバへの負荷や通信遅延が大きくなる方式であり、IP電話等のリアルタイムのメディア通信への使用は、他のより遅延の小さい方式でメディア通信が可能であるのであればできるだけ避けたほうが望ましい。
本発明は上記の点に鑑みてなされたものであり、SIPに基づくVoIP等のメディア通信をNAT装置を介して端末装置間で行う場合において、NAT越え方式としてHTTPトンネリングを必要に応じて選択することを可能とする技術を提供することを目的とする。
上記の課題を解決するために、本発明は、NAT装置の配下に備えられる端末装置であって、前記NAT装置の外部の通信ネットワークに接続された所定の装置に向けてUDP透過判定メッセージを送信し、前記UDP透過判定メッセージに対する前記所定の装置からの応答メッセージを受信するか否かを判定するUDP透過判定手段と、前記UDP透過判定手段により、前記所定の装置からの応答メッセージを受信しなかったと判定された場合に、前記NAT装置の外部の通信ネットワークに接続されたHTTPトンネリング装置との間にHTTPトンネルを設定するHTTPトンネル設定手段と、前記HTTPトンネルを経由して、他の端末装置との間でメディア通信のためのシグナリングメッセージの送受信を行うシグナリングメッセージ通信手段とを備えたことを特徴とする端末装置として構成される。
前記端末装置は、前記端末装置において前記シグナリングメッセージを用いる機能の動作が終了したことを検知した場合に、前記HTTPトンネルを終了させる手段を有することとしてもよい。
また、前記端末装置は、前記NAT装置の外部の通信ネットワークに接続された外部装置と通信を行うための外部通信用アドレスの割り当てを前記HTTPトンネリング装置に要求するアドレス割り当て要求手段を有し、前記端末装置は、前記外部装置から前記端末装置への通信のための宛先アドレスとして、前記HTTPトンネリング装置により割り当てられた前記外部通信用アドレスを前記シグナリングメッセージの内部に含めることとしてもよい。
また、前記HTTPトンネル設定手段は、前記HTTPトンネリング装置との間にメディア通信用のHTTPトンネルを設定する手段を有し、前記端末装置は、前記他の端末装置からメディア通信データを受信するための候補となるアドレスとして、少なくとも前記端末装置自身のアドレスと、前記HTTPトンネリング装置において前記端末装置のメディア通信用に割り当てられた外部通信用アドレスとを前記他の端末装置に対して送信する送信手段と、ICE機能を有する前記他の端末装置において、前記メディア通信用の外部通信用アドレスが前記端末装置へのメディア送信用のアドレスとして選択されなかった場合に、前記メディア通信用のHTTPトンネルを終了させる手段とを有することとしてもよい。
また、本発明は、上記端末装置が実行するNAT越え方法として構成することができ、上記端末装置における各手段をコンピュータに実現させるためのプログラムとして構成することもできる。
本発明によれば、UDP透過判定手段によりUDP非透過であると判定した場合にHTTPトンネルを設定し、当該HTTPトンネルを経由して、他の端末装置との間でメディア通信のためのシグナリングメッセージの送受信を行うこととしたため、NAT越え方式としてHTTPトンネリングを必要に応じて選択することが可能となる。
以下、図面を参照して、本発明の実施の形態について説明する。なお、以下の説明において、特に断らない限り、アドレスとはIPアドレスのことであり、ポートとはポート番号のことである。
(システム構成)
図1に、本実施の形態におけるシステムの全体構成を示す。図1に示すように、本実施の形態のシステムは、NAT装置N1、NAT装置N1配下にある端末装置T1、NAT装置N2、NAT装置N2配下にある端末装置T2、SIPサーバS1、STUNサーバST1、HTTPトンネリングサーバHP1(TURNサーバを兼ねる)、及びHTTPトンネリングサーバHP2(TURNサーバを兼ねる)を有する。SIPサーバS1とSTUNサーバST1は同一装置内に設けることとしてもよい。また、HTTPトンネリングサーバの機能を持たないTURNサーバを備えることとしてもよい。
本システムにおいて、NAT装置N1は、グローバルネットワークであるインターネット6に接続されるとともに、プライベートネットワーク7に接続される。また、端末装置T1はプライベートネットワーク7に接続される。NAT装置N2は、インターネット6に接続されるとともに、プライベートネットワーク8に接続される。また、端末装置T2はプライベートネットワーク8に接続される。
また、HTTPトンネリングサーバHP1は、端末装置T1側にサービスを提供するものとし、HTTPトンネリングサーバHP2は、端末装置T2側にサービスを提供するものとする。
本システムにおけるSIPサーバS1は、SIPの中継処理を行うサーバである。STUNサーバST1は、STUNの仕様に準拠した機能を有するサーバであり、端末装置からの要求に基づき、NAT装置外部のアドレス情報を返す機能等を有するサーバである。HTTPトンネリングサーバHP1は、端末装置T1との間でHTTPトンネルを形成する機能と、TURNの仕様に準拠して、端末装置からの要求に基づき、データ中継用のアドレス情報を割り当て、それを端末装置に返す機能、アドレスのバインディング情報を保持し、データの中継を行う機能等を有するサーバである。HTTPトンネリングサーバHP2もHTTPトンネリングサーバH1と同様の機能を有する。つまり、HTTPトンネリングサーバHP1、HP2はそれぞれ、HTTPトンネリングサーバ機能とTURNサーバ機能を有している。
図2に、端末装置T1の機能構成図を示す。なお、端末装置T2も端末装置T1と全く同じ構成であるため、端末装置T1のみについて説明する。図2に示すように、端末装置T1は、通信インタフェース部11、制御部12、HTTPトンネリング機能部13、メディア通信部14、SIP機能部15、STUN機能部16、TURN機能部17、ICE機能部18を有する。通信インタフェース部11は、外部装置と通信ネットワークを介してデータ通信を行うための機能部である。制御部12は、UDP透過判定機能、SIP通信終了判定機能、HTTPトンネル終了判定機能等を含み、各機能部の動作を制御したり、各機能部間の連携をとるための機能部である。HTTPトンネリング機能部13は、HTTPトンネリングサーバHP1との間にHTTPトンネルを構築し、当該HTTPトンネルを用いてデータ通信を行うための機能部である。メディア通信部14は、他の端末装置との間で音声通信等のメディア通信を行うための機能部である。SIP機能部15は、SIPの仕様における端末側の機能を有する機能部である。STUN機能部16は、STUNの仕様における端末側の機能を有する機能部である。TURN機能部17は、TURNの仕様における端末側の機能を有する機能部である。ICE機能部18は、ICEの仕様に従った動作をする機能部である。また、図示していないが、端末装置T1には、SIPを利用するアプリケーションが搭載されているものとする。
端末装置T1は、CPU、記憶装置等を有するコンピュータに上記の各機能を実現するためのプログラムを実行させることにより実現できる。当該プログラムは可搬メモリ等の記録媒体からコンピュータにインストールすることとしてもよいし、ネットワーク上のサーバからダウンロードすることとしてもよい。
(動作の概要)
次に、本実施の形態における端末装置T1の動作概要を、図3を参照して説明する。なお、端末装置T2についても同じ動作を行うので、端末装置T1のみについて説明する。前提として、端末装置T1のユーザは端末装置T1を用いて、他の端末装置と音声通信等のメディア通信を行おうとしているものとする。
ユーザからの操作に基づき、まず、端末装置T1は、NAT装置N1を介して外部の装置とUDPデータの送受信が可能かどうかの試験を行う。つまり、端末装置T1は、NAT装置N1がUDPデータを透過するかどうかの判定を行う(ステップ1)。
NAT装置N1がUDP透過である場合(ステップ2におけるYes)、端末装置T1は、従来と同様にしてSIPメッセージ(シグナリングメッセージ)を用いて呼接続処理を行って、他の装置とメディア通信を行う(ステップ3)。ステップ3の中では、適宜ICE機能に基づく処理が行われ、端末装置T1は、決定されたNAT越え方式に基づくアドレス及びポートを用いて上記他の装置とメディア通信を行うことになる。
ステップ2における判定結果がUDP非透過である場合(ステップ2におけるNo)、端末装置T1は、SIPメッセージの送受信等のUDP通信を行うためのHTTPトンネルをHTTPトンネリングサーバHP1との間に構築する(ステップ4)。HTTPトンネリング通信は、実際に通信したいデータにHTTPヘッダを付加して通信するものであり、HTTPトンネルを構築(設定)するとは、そのようなHTTPトンネリング通信を行うための準備を行うことである。例えば、HTTPトンネリング通信用のプログラムモジュール(HTTPトンネリング機能部13に相当)を起動し、HTTPトンネリングサーバHP1にアクセスしてHTTPトンネル構築を要求すること等が含まれる。なお、HTTPトンネリング技術自体は既存技術である。
そして、端末装置T1は、ステップ4で構築したHTTPトンネルを用いて他の装置との間でSIPメッセージの交換を行って、メディア通信を行う(ステップ5)。ステップ5の中で、ICE機能に基づく処理が実行される。また、ステップ5の中では、メディア通信用のHTTPトンネルがHTTPトンネリングサーバHP1との間に構築されるが、ICEの機能によりHTTPトンネルを使用しない経路がメディア通信用に選択されたり、メディア通信が終了(通話が終了)した場合にはメディア通信用のHTTPトンネルは終了される。HTTPトンネルを終了するとは、例えば、端末装置T1がHTTPトンネリングサーバHP1にHTTPトンネルを終了する旨の要求を送り、HTTPトンネリングサーバHP1が、HTTPトンネルのための設定を解除したり、リソースを解放したりすることである。
そして、端末装置T1は、制御部12においてSIPを利用するアプリケーションの終了を検知した場合等、SIPメッセージの送受信動作が終了したと判定した場合に(ステップ6のYes)、ステップ4で構築したHTTPトンネルを終了させる(ステップ7)。
(動作の詳細)
以下、端末装置T1の動作をより詳細に説明する。
<UDP透過判定処理>
まず、UDP透過判定処理について図4のフローチャートを参照して説明する。まず、端末装置T1は、制御部13の機能により、STUNに基づくアドレス要求メッセージ(UDPデータ)をSTUNサーバST1に対して送信する(ステップ11)。もしくは、SIPに基づくRegisterメッセージ又はINVITEメッセージ(いずれもUDPデータ)をSIPサーバS1に送信する(ステップ11)。なお、これらのメッセージをUDP透過判定メッセージと呼ぶ。そして、端末装置T1は、送信したメッセージに対する応答があるか否かを判定し(ステップ12)、応答があればNAT装置N1はUDP透過であると判断し(ステップ13)、送信したメッセージに対する応答がなければNAT装置N1はUDP非透過であると判定する(ステップ14)。
図5に、上記の処理の一例を示すシーケンスチャートを示す。図5に示すシーケンスチャート、及び以降のシーケンスチャートにおいて、システムの構成は図1に示したとおりのものとする。また、以下の各シーケンスチャートでは、SIPサーバS1とSTUNサーバST1のアドレス及びポートが同一であり、また、端末装置T1、T2のそれぞれにおいてSIPメッセージ、STUNメッセージを送受信するポートは同一であるものとする。従って、シーケンスチャートにおいてSTUNサーバST1のアドレスはS1、ポートはSP1と記載してある。
また、各シーケンスチャートにおいて、メッセージの下側に記載されたA:B=>C:Dは、該当メッセージの送信元アドレスがA、送信元ポートがB、送信先アドレスがC、送信先ポートがDであることを示している。また、装置の参照符号がその装置のアドレスを示す。例えば、端末装置T1のアドレスはT1と標記される。そして、当該参照符号にPと括弧を付したものはポートを示す。例えば、TP(SIP)1は、端末装置T1におけるSIP通信のために用いるポートであることを示している。ただし、上記のとおり、STUNサーバST1のアドレスはS1、ポートはSP1である。
図5(a)に示す例では、STUNのアドレス要求メッセージであるBinding RequestをSTUNサーバに送信し(ステップ21)、その応答であるBinding Responseが端末装置T1に返されている(ステップ22)。図5(a)に示すとおり、Binding Requestメッセージの送信元アドレス及びポートは、NAT装置N1を通過するときにNAT装置N1のアドレス及びポートに変換されている。
図5(a)に示す場合は応答が返されているので、端末装置T1は、自身が存在するネットワーク(つまりNAT装置N1)はUDP透過であると判定する。図5(b)はSTUNサーバから応答が返されなかった場合の例を示す。この場合、端末装置T1は、NAT装置N1はUDP非透過であると判定する。
<HTTPトンネル構築、アドレス割り当て等>
図6に、HTTPトンネル構築、アドレス割り当て等に関するシーケンスチャートを示す。UDPが非透過である場合、前述したように端末装置T1とHTTPトンネリングサーバHP1との間にHTTPトンネルが構築される。ここでは、端末装置T1がHTTPトンネリングサーバHP1にトンネル接続要求を送り(ステップ24)、HTTPトンネリングサーバHP1においてHTTPトンネル通信に必要な設定がなされ、トンネル接続応答が返される(ステップ25)。
その後、端末装置T1は、HTTPトンネリングサーバHP1を経由してSIPサーバ等の他の装置とSIP通信を行うことを可能とするために、HTTPトンネリングサーバHP1に対してアドレス割り当て要求を送信し(ステップ26)、応答を受ける(ステップ27)。このアドレス割り当て要求を行い、アドレスの割り当てを受けることは、TURNにおいてTURNサーバにアドレス割当要求を行い、アドレスの割り当てを受けることと全く同様である。つまり、このアドレス要求、割り当て動作は、端末装置T1のTURN機能部17及びHTTPトンネリングサーバHP1におけるTURN機能により行われる。
図6のステップ27においてHTTPトンネリングサーバHP1から返されるメッセージの内部には、SIP通信用にHTTPトンネリングサーバHP1において割り当てられた端末装置T1の外部通信用のアドレス(AT(SIP)1)と、ポート(ATP(SIP)1)が含まれる。なお、プロトコルX用にHTTPトンネリングサーバHP1で割り当てた外部通信用のアドレス及びポートをそれぞれAT(X)1、ATP(X)1と標記するものとする。
このアドレス割り当ての概念を図7に示す。図7に示すように、HTTPトンネリングサーバHP1にAT(SIP)1、ATP(SIP)1が割り当てられるとともに、外部装置(SIPサーバ等)は、端末装置T1と通信を行う際には、送信先アドレスとしてAT(SIP)1、ATP(SIP)1を指定する。また、HTTPトンネルサーバHP1内には、少なくとも割り当てたアドレス/ポート(AT(SIP)1:ATP(SIP)1)と、HTTP通信におけるNAT装置N1の外側のアドレス/ポート(N1:NP(HTTP)1)と、端末装置T1のアドレス/ポート(T1:TP(SIP)1)とが対応付けられ、記憶装置に保持される。
図6において、続いてSIP通信を行おうとする端末装置T1は、HTTPトンネルを利用してREGISTERメッセージをSIPサーバS1に送信し(ステップ28、29)、SIPサーバS1においては端末装置T1のものとしてのアドレス(AT(SIP)1:ATP(SIP)1)の登録がなされ、その応答が端末装置T1に返される(ステップ30、31)。
図6に示すように、端末装置T1から送出されるREGISTERメッセージの送信先アドレス/ポートはHTTPトンネリングサーバHP1のアドレス/ポートである。また、REGISTERメッセージにはcontact及びviaの値としてHTTPトンネリングサーバHP1により割り当てられたアドレス/ポートが設定される。なお、contactにおけるA@AT(SIP)1:ATP(SIP)1における"A"はユーザ名を示す。これにより、SIPサーバS1は、応答メッセージ(200 OK)をHTTPトンネリングサーバHP1のAT(SIP)1:ATP(SIP)1宛に返し、HTTPトンネリングサーバHP1はHTTPトンネルを利用して応答メッセージ(200 OK)を端末装置T1に返す。
<SIP通信についての詳細処理>
図3に示したステップ2においてUDP透過であると判定された場合は、ICE処理を含むSIP通信処理が行われる。
以下では、UDP非透過であると判定された場合におけるICE処理を含むSIPメッセージ通信処理について、図8のフローチャート、及び図9〜14のシーケンスチャートを用いて説明する。
図8において、例えば、端末装置T1においてREGISTERが終了し、IP電話機能の使用を開始する操作を検知したことを契機に、もしくは、他の通信相手端末からINVITEを受信したことを契機にICE機能が起動される(ステップ41)。ICE機能を起動するとは、ICE機能を実現するためのソフトウェアモジュールを起動することを意味する。
また、端末装置T1は、メディア通信用のHTTPトンネルをHTTPトンネリングサーバHP1との間に構築しておく(ステップ42)。なお、ここでHTTPトンネルを構築せずに、既に構築してあるSIP用のHTTPトンネルをメディア通信用に使用することとしてもよい。既に構築してあるSIP用のHTTPトンネルをメディア通信用に使う場合でも、メディア通信はSIP通信に比べて大きな帯域を使用するので、メディア通信用に帯域を割り当てる旨の要求を端末装置T1からHTTPトンネリングサーバHP1の送り、その要求を受けてHTTPトンネリングサーバHP1がHTTPトンネルにおけるメディア通信用の帯域を割り当ててもよい。なお、このように帯域を割り当てることもメディア通信用にHTTPトンネルを構築(設定)することに含まれるものとする。
その後、図3のステップ4で構築したSIP通信用のHTTPトンネル、及びHTTPトンネリングサーバHP1に割り当てられた外部通信用のアドレス/ポートを利用して、メディア通信を行うための前提となるSIPメッセージの交換がなされるとともに、その中でICEに基づき複数候補のうちどのアドレスを使用してメディア通信を行うかの判断が行われる(ステップ43)。
ここで、ICEの機能により、端末装置T1が、HTTPトンネリングを利用したメディア通信を行わないと判断した場合(ステップ43のNo)、メディア通信用に構築したHTTPトンネルを終了する(ステップ44)。メディア通信用に構築したHTTPトンネルを終了するとは、メディア通信用にSIP用とは別にHTTPトンネルを構築した場合はそれを終了させることであり、SIP用のHTTPトンネルをメディア通信用にも使用している場合は、例えば当該HTTPトンネルにおいてメディア通信用に割り当てられた帯域を解放することである。メディア通信用に構築したHTTPトンネルを終了させるためには、例えば端末装置T1が当該HTTPトンネルを終了させるための要求をHTTPトンネリングサーバHP1に送信し、HTTPトンネリングサーバHP1では帯域の解放、設定の解除等を行って、応答を端末装置T1に返す。
HTTPトンネリングを利用したメディア通信を行うと判定した場合(ステップ43のYes)、HTTPトンネリングを利用したメディア通信(通話)を行い、メディア通信が終了すれば(ステップ45のYes)、メディア通信用のHTTPトンネルを終了する(ステップ46)。なお、メディア通信が終了したことは、例えば、端末装置T1の制御部12においてメディア通信の終了を通知するメッセージ(Bye等)を検知(自分で送信、もしくは受信)することにより判定できる。
次に、図1のシステムにおいてNAT装置N1がUDP非透過であり、NAT装置N2がUDP透過である場合におけるINVITEメッセージ送信及びその応答受信に係るシーケンスチャートを図9〜図11に示す。なお、端末装置T2も端末装置T1と同様の機能を備えており、端末装置T2側においてUDP透過であればSIP通信用のHTTPトンネルをHTTPトンネリングサーバHP2との間に構築せず、UDP非透過であればSIP通信用のHTTPトンネルをHTTPトンネリングサーバHP2との間に構築しているものとする。なお、以下の説明におけるUDP非透過の側にある端末装置とHTTPトンネリングサーバ間のメッセージ送受信はHTTPトンネルを用いてなされている。
また、図9〜11においては、UDP透過である端末装置T2側では、TURNサーバTUが用いられているが、このTURNサーバTUは、HTTPトンネリングサーバHP2と同一装置でもよい。
図9において、端末装置T1は、ICEの制御に基づきTURN機能を用いて、メディア通信用の外部通信用アドレスの割り当てをHTTPトンネリングサーバHP1に対して要求する(ステップ61)。当該要求には、端末装置T1におけるメディア通信用のアドレス/ポート(T1:TP(RTP)1)が含まれる。HTTPトンネリングサーバHP1は、当該要求に対してメディア通信用の外部通信用アドレス(AT(RTP)1:ATP(RTP)1)を割り当て、それを、端末装置T1におけるメディア通信用のアドレス(T1:TP(RTP)1)と、HTTPトンネル通信におけるNAT装置N1の外部アドレス(N1:NP(HTTP)1)とともに保持しておく。
そして、HTTPトンネリングサーバHP1は、割り当てたアドレス/ポート(AT(RTP)1:ATP(RTP)1)を含む割り当て応答を端末装置T1に返す(ステップ62)。
その後、端末装置T1は、INVITEメッセージをHTTPトンネルを用いて送信する(ステップ63、64)。このINVITEメッセージには、REGISTERメッセージと同様に、contact及びviaの値としてSIP通信用の外部通信用アドレス/ポートが設定される。
また、ICEの機能により、INVITEメッセージの内部に、host candidateアドレスとして端末装置T1のメディア通信用の(T1:TP(RTP)1)が含められ、relayed candidateアドレスとしてHTTPトンネリングサーバHP1に割り当てられたメディア用の外部通信用アドレスが含められる。
ここで、一般的なICEの機能について説明する。図15に示す構成において、ICE機能をサポートする端末装置10は端末装置10自身のアドレス/ポート、NAT装置30の外側のアドレス/ポート(STUNを使用して取得)、TURNサーバ50において割り当てられる外部通信用のアドレス/ポートを取得し、それを相手側の端末装置20にSIPメッセージを用いて通知する。ICE機能をサポートする端末装置20も端末装置20自身のアドレス/ポート、NAT装置40の外側のアドレス/ポート(STUNを使用して取得)、TURNサーバ50において割り当てられる外部通信用のアドレス/ポートを取得し、それを相手側の端末装置10に通知する。そして、相手側についてのアドレス情報を受け取った各端末装置は、受け取ったアドレスに対する通信を試み、通信が可能であるアドレスのうち優先度の高いアドレスに対してメディア通信を行うこととしている。ここで、端末装置自身のアドレスをHost Candidateと呼び、NAT装置の外側のアドレスをServer Reflexive candidate と呼び、TURNサーバで割り当てられた外部通信用のアドレスをRelayed Candidateと呼んでいる。
図9に示すUDP非透過におけるINVITE送信においては、Server Reflexive candidateを含めていないが、それはUDP非透過の場合はそもそもServer Reflexive candidateを用いた通信を行うことはできないからである。
端末装置T1から送信されたINVITEメッセージは、HTTPトンネリングサーバHP1を経由してSIPサーバS1に送られる(ステップ64)。SIPサーバS1は、当該INVITEメッセージを端末装置T2に向けて送信する(ステップ65)。なお、端末装置T2側ではUDP透過であるため、SIPサーバS1は、端末装置T2へのメッセージ送信先としてNAT装置N2の外部アドレスを保持しているものとする。
INVITEメッセージを受信した端末装置T2は、ICE機能に基づく制御により、Server Reflexive candidateを取得し(図10のステップ66、67)、更にRelayed Candidateを取得する(ステップ68、69)。そして、host candidate、Server Reflexive candidate、Relayed Candidateを含む200 OKメッセージをSIPサーバS1に向けて送信する(図11のステップ70)。SIPサーバS1は、当該200 OKメッセージを、端末装置T1の外部通信用のアドレス宛に送信する(ステップ71)。そして、HTTPトンネリングサーバHP1は、HTTPトンネルを用いて、200 OKメッセージを端末装置T1に対して送信する(ステップ72)。200 OKメッセージを受信した端末装置T1は、ACKを返す(ステップ73〜75)。
その後、ICEの仕様に基づき、最適なアドレスが決定される。つまり、ICEに規定されたNominationによって通信経路が決定される。なお、ここでは、HTTPトンネリングサーバHP1に割り当てられた端末装置T1用の外部通信アドレスは、ICEに規定されているTURNサーバでの外部通信用のアドレス(Relayed Candidate)と同じ位置付けでICEに規定された選択処理が行われる。ここで、HTTPトンネリングサーバHP1と端末装置TP1間のHTTPトンネルを使う経路が選択された場合には、当該HTTPトンネルが継続して使用される。また、例えば、端末装置T1と端末装置T2のhost candidate間での通信が可能である場合には、HTTPトンネルを使う経路は選択されないので、メディア通信用のHTTPトンネルは終了される。例えば、端末装置T1は、HTTPトンネルを使う経路が選択されなかったことを、端末装置T2からHTTPトンネルを使う経路を用いた(relayed candidateを用いた)通信確認メッセージを受信しなかったことで判断できる。
次に、端末装置T1側、端末装置T2側の両方がUDP非透過である場合におけるINVITEメッセージ送信、応答受信のシーケンスを図12〜14に示す。この場合、端末装置T2側では、端末装置T1側と同様にして、SIP通信用のHTTPトンネルがHTTPトンネリングサーバHP2との間で構築され、REGISTERも済んでいるものとする。
図12に示すシーケンスのステップ81〜ステップ84は図9のステップ61〜ステップ64と同じである。図12のステップ85、86においては、図9の場合と異なり、SIPサーバS1から送信されたINVITEメッセージは、HTTPトンネリングサーバHP2を介してHTTPトンネル経由で端末装置T2に送信される。その後の端末装置T2は、図13のステップ87、88において端末装置T1がINVITEを送信するときと同様にしてrelayed candidateの割り当てを受け、host candidateとrelayed candidateを含む200 OKメッセージをHTTPトンネルを介して送信する(図14のステップ89、90)。
200 OKメッセージを受信したSIPサーバS1は、図11の場合と同様にして200 OKメッセージを端末装置T1側に送信する(ステップ91、92)。そして、端末装置T1からACKが返される(ステップ93〜96)。
この場合も、その後、通信経路の選択処理が行われ、HTTPトンネリングサーバHP1と端末装置T1間のHTTPトンネルを使う経路が選択された場合には、端末装置T1の側において当該HTTPトンネルが継続して使用される。また、HTTPトンネリングサーバHP2と端末装置T2間のHTTPトンネルを使う経路が選択された場合には、端末装置T2の側において当該HTTPトンネルが継続して使用される。また、端末装置T1の側、端末装置TP1の側、のそれぞれにおいて、HTTPトンネルを使う経路が選択されない場合には、メディア通信用のHTTPトンネルは終了する。
上述したように、本実施の形態のシステムによれば、SIPに基づくVoIP等のメディア通信をNAT装置を介して端末装置間で行う場合において、NAT越え方式としてHTTPトンネリングを必要に応じて選択することを可能とする技術を提供することが可能となる。また、本実施の形態によれば、常にHTTPトンネルを張ることはなくなり、HTTPトンネルを利用する時間が抑制され、HTTPトンネリングサーバのコスト負担を抑えられる。
本発明は、上記の実施の形態に限定されることなく、特許請求の範囲内において、種々変更・応用が可能である。
本発明の実施の形態におけるシステムの全体構成図である。 端末装置の機能構成図である。 端末装置の動作の概要を説明するためのフローチャートである。 UDP透過判定処理を説明するためのフローチャートである。 UDP透過判定処理を説明するためのシーケンスチャートである。 HTTPトンネル構築、アドレス割り当て等に関するシーケンスチャートである。 外部通信用アドレス割り当ての概念を示す図である。 UDP非透過であると判定された場合の処理を説明するためのフローチャートである。 メッセージ通信処理を説明するためのシーケンスチャート(1)である。 メッセージ通信処理を説明するためのシーケンスチャート(2)である。 メッセージ通信処理を説明するためのシーケンスチャート(3)である。 メッセージ通信処理を説明するためのシーケンスチャート(4)である。 メッセージ通信処理を説明するためのシーケンスチャート(5)である。 メッセージ通信処理を説明するためのシーケンスチャート(6)である。 ICEの機能を説明するための図である。
符号の説明
N1、N2、30、40 NAT装置
T1、T2、10、20 端末装置
S1 SIPサーバ
ST1 STUNサーバ
HP1、HP2 HTTPトンネリングサーバ
6 インターネット
7、8 プライベートネットワーク
11 通信インタフェース部
12 制御部
13 HTTPトンネリング機能部
14 メディア通信部
15 SIP機能部
16 STUN機能部
17 TURN機能部
18 ICE機能部
50 TURNサーバ

Claims (6)

  1. NAT装置の配下に備えられる端末装置であって、
    前記NAT装置の外部の通信ネットワークに接続された所定の装置に向けてUDP透過判定メッセージを送信し、前記UDP透過判定メッセージに対する前記所定の装置からの応答メッセージを受信するか否かを判定するUDP透過判定手段と、
    前記UDP透過判定手段により、前記所定の装置からの応答メッセージを受信しなかったと判定された場合に、前記NAT装置の外部の通信ネットワークに接続されたHTTPトンネリング装置との間にHTTPトンネルを設定するHTTPトンネル設定手段と、
    前記HTTPトンネルを経由して、他の端末装置との間でメディア通信のためのシグナリングメッセージの送受信を行うシグナリングメッセージ通信手段と
    を備えたことを特徴とする端末装置。
  2. 前記端末装置は、前記端末装置において前記シグナリングメッセージを用いる機能の動作が終了したことを検知した場合に、前記HTTPトンネルを終了させる手段を有することを特徴とする請求項1に記載の端末装置。
  3. 前記端末装置は、前記NAT装置の外部の通信ネットワークに接続された外部装置と通信を行うための外部通信用アドレスの割り当てを前記HTTPトンネリング装置に要求するアドレス割り当て要求手段を有し、
    前記端末装置は、前記外部装置から前記端末装置への通信のための宛先アドレスとして、前記HTTPトンネリング装置により割り当てられた前記外部通信用アドレスを前記シグナリングメッセージの内部に含めることを特徴とする請求項1又は2に記載の端末装置。
  4. 前記HTTPトンネル設定手段は、前記HTTPトンネリング装置との間にメディア通信用のHTTPトンネルを設定する手段を有し、
    前記端末装置は、
    前記他の端末装置からメディア通信データを受信するための候補となるアドレスとして、少なくとも前記端末装置自身のアドレスと、前記HTTPトンネリング装置において前記端末装置のメディア通信用に割り当てられた外部通信用アドレスとを前記他の端末装置に対して送信する送信手段と、
    ICE機能を有する前記他の端末装置において、前記メディア通信用の外部通信用アドレスが前記端末装置へのメディア送信用のアドレスとして選択されなかった場合に、前記メディア通信用のHTTPトンネルを終了させる手段と
    を有することを特徴とする請求項1ないし3のうちいずれか1項に記載の端末装置。
  5. NAT装置の配下に備えられる端末装置が実行するNAT越え方法であって、
    前記NAT装置の外部の通信ネットワークに接続された所定の装置に向けてUDP透過判定メッセージを送信し、前記UDP透過判定メッセージに対する前記所定の装置からの応答メッセージを受信するか否かを判定するUDP透過判定ステップと、
    前記UDP透過判定手段により、前記所定の装置からの応答メッセージを受信しなかったと判定された場合に、前記NAT装置の外部の通信ネットワークに接続されたHTTPトンネリング装置との間にHTTPトンネルを設定するHTTPトンネル設定ステップと、
    前記HTTPトンネルを経由して、他の端末装置との間でメディア通信のためのシグナリングメッセージの送受信を行うシグナリングメッセージ通信ステップと
    を備えたことを特徴とするNAT越え方法。
  6. コンピュータを、NAT装置の配下に備えられる端末装置として機能させるプログラムであって、前記コンピュータを、
    前記NAT装置の外部の通信ネットワークに接続された所定の装置に向けてUDP透過判定メッセージを送信し、前記UDP透過判定メッセージに対する前記所定の装置からの応答メッセージを受信するか否かを判定するUDP透過判定手段、
    前記UDP透過判定手段により、前記所定の装置からの応答メッセージを受信しなかったと判定された場合に、前記NAT装置の外部の通信ネットワークに接続されたHTTPトンネリング装置との間にHTTPトンネルを設定するHTTPトンネル設定手段、
    前記HTTPトンネルを経由して、他の端末装置との間でメディア通信のためのシグナリングメッセージの送受信を行うシグナリングメッセージ通信手段、
    として機能させるためのプログラム。
JP2008045109A 2008-02-26 2008-02-26 端末装置、nat越え方法、及びプログラム Expired - Fee Related JP4961368B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008045109A JP4961368B2 (ja) 2008-02-26 2008-02-26 端末装置、nat越え方法、及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008045109A JP4961368B2 (ja) 2008-02-26 2008-02-26 端末装置、nat越え方法、及びプログラム

Publications (2)

Publication Number Publication Date
JP2009206657A true JP2009206657A (ja) 2009-09-10
JP4961368B2 JP4961368B2 (ja) 2012-06-27

Family

ID=41148521

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008045109A Expired - Fee Related JP4961368B2 (ja) 2008-02-26 2008-02-26 端末装置、nat越え方法、及びプログラム

Country Status (1)

Country Link
JP (1) JP4961368B2 (ja)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010206388A (ja) * 2009-03-02 2010-09-16 Konami Digital Entertainment Co Ltd 確認システム、通信システム、確認サーバ装置、確認方法、ならびに、プログラム
JP2011049977A (ja) * 2009-08-28 2011-03-10 Ntt Communications Kk 端末装置、通信方法、及びプログラム
CN102571814A (zh) * 2012-02-10 2012-07-11 浙江宇视科技有限公司 一种ip监控系统中穿越隔离设备的方法及代理设备
JP2013021524A (ja) * 2011-07-12 2013-01-31 Saxa Inc 通信端末および通信制御方法
JP2013021523A (ja) * 2011-07-12 2013-01-31 Saxa Inc 通信端末および通信制御方法
JP2013524727A (ja) * 2010-04-15 2013-06-17 マイクロソフト コーポレーション Httpを介した信頼性のあるプロトコルトンネリングのための方法およびシステム
CN103347099A (zh) * 2013-05-29 2013-10-09 华为技术有限公司 一种数据交互的方法、装置及系统
JP2015505217A (ja) * 2012-01-17 2015-02-16 テレフオンアクチーボラゲット エル エム エリクソン(パブル) Iceベースnatトラバーサル
JP2016152506A (ja) * 2015-02-17 2016-08-22 日本電信電話株式会社 通信システム、通信方法およびプログラム
US9432330B2 (en) 2013-05-29 2016-08-30 Huawei Technologies Co., Ltd. Data interaction method, apparatus, and system
JP2018142805A (ja) * 2017-02-27 2018-09-13 キヤノン株式会社 情報処理システム、画像形成装置とその制御方法、及びプログラム

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005260715A (ja) * 2004-03-12 2005-09-22 Ntt Communications Kk パケットのnat透過機能を有する端末装置及びそのプログラム
JP2007166423A (ja) * 2005-12-15 2007-06-28 Toshiba Corp 通信装置、通信方法および通信プログラム
JP2008515246A (ja) * 2004-08-13 2008-05-08 キワン・イー・ベ パケット化音声伝送を支援するドメイン間の横断を提供するための方法、及びシステム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005260715A (ja) * 2004-03-12 2005-09-22 Ntt Communications Kk パケットのnat透過機能を有する端末装置及びそのプログラム
JP2008515246A (ja) * 2004-08-13 2008-05-08 キワン・イー・ベ パケット化音声伝送を支援するドメイン間の横断を提供するための方法、及びシステム
JP2007166423A (ja) * 2005-12-15 2007-06-28 Toshiba Corp 通信装置、通信方法および通信プログラム

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010206388A (ja) * 2009-03-02 2010-09-16 Konami Digital Entertainment Co Ltd 確認システム、通信システム、確認サーバ装置、確認方法、ならびに、プログラム
JP4681659B2 (ja) * 2009-03-02 2011-05-11 株式会社コナミデジタルエンタテインメント 確認システム、通信システム、確認サーバ装置、確認方法、ならびに、プログラム
JP2011049977A (ja) * 2009-08-28 2011-03-10 Ntt Communications Kk 端末装置、通信方法、及びプログラム
JP2013524727A (ja) * 2010-04-15 2013-06-17 マイクロソフト コーポレーション Httpを介した信頼性のあるプロトコルトンネリングのための方法およびシステム
JP2013021524A (ja) * 2011-07-12 2013-01-31 Saxa Inc 通信端末および通信制御方法
JP2013021523A (ja) * 2011-07-12 2013-01-31 Saxa Inc 通信端末および通信制御方法
JP2015505217A (ja) * 2012-01-17 2015-02-16 テレフオンアクチーボラゲット エル エム エリクソン(パブル) Iceベースnatトラバーサル
CN102571814A (zh) * 2012-02-10 2012-07-11 浙江宇视科技有限公司 一种ip监控系统中穿越隔离设备的方法及代理设备
EP2822256A1 (en) * 2013-05-29 2015-01-07 Huawei Technologies Co., Ltd. Data interaction method, apparatus and system
EP2822256A4 (en) * 2013-05-29 2015-01-21 Huawei Tech Co Ltd METHOD, APPARATUS AND SYSTEM FOR DATA INTERACTION
CN103347099A (zh) * 2013-05-29 2013-10-09 华为技术有限公司 一种数据交互的方法、装置及系统
CN103347099B (zh) * 2013-05-29 2016-08-10 华为技术有限公司 一种数据交互的方法、装置及系统
US9432330B2 (en) 2013-05-29 2016-08-30 Huawei Technologies Co., Ltd. Data interaction method, apparatus, and system
KR101776648B1 (ko) 2013-05-29 2017-09-08 후아웨이 테크놀러지 컴퍼니 리미티드 데이터 상호작용 방법, 장치, 및 시스템
JP2016152506A (ja) * 2015-02-17 2016-08-22 日本電信電話株式会社 通信システム、通信方法およびプログラム
JP2018142805A (ja) * 2017-02-27 2018-09-13 キヤノン株式会社 情報処理システム、画像形成装置とその制御方法、及びプログラム

Also Published As

Publication number Publication date
JP4961368B2 (ja) 2012-06-27

Similar Documents

Publication Publication Date Title
JP4961368B2 (ja) 端末装置、nat越え方法、及びプログラム
US9515995B2 (en) Method and apparatus for network address translation and firewall traversal
US8082324B2 (en) Method of establishing a tunnel between network terminal devices passing through firewall
JP4411332B2 (ja) Ip通信装置及びip通信システム並びにこれらのip通信方法
US9137200B2 (en) Ice based NAT traversal
US9699237B2 (en) Managed media relay selection for real-time communications
EP2018756B1 (en) Address translation in a communication system
JP2005236824A (ja) IPv6/IPv4トランスレータ
JP2008072203A (ja) 中継サーバ
JP5988407B1 (ja) 通信経路制御装置、通信経路制御システム、通信経路制御方法及び通信経路制御プログラム
CN103107983A (zh) 网络系统的数据管理方法及其相关系统
WO2011071190A2 (en) Networking method of communication apparatus, communication apparatus and storage medium
Tseng et al. Can: A context-aware NAT traversal scheme
JP5303403B2 (ja) 端末装置、通信方法、及びプログラム
JP2008205676A (ja) 情報処理システム、情報処理装置、情報処理方法、及び情報処理プログラム
US11356296B1 (en) System and method for independent binding of virtual networks overlay using a physical network topology
US10819755B1 (en) Communications apparatus, systems, and methods for preventing and/or minimizing session data clipping
JP6293902B2 (ja) ブラウザ発信プロシージャのためのモバイルデバイスベースのプロキシ
JP4648436B2 (ja) パケット振り分け装置、通信システム、パケット処理方法、及びプログラム
JP6898120B2 (ja) ネットワークシステム、ネットワークシステムのアドレス解決方法、および、拠点側接続装置
JP2013175938A (ja) 通信装置、通信方法、及びプログラム
JP5289345B2 (ja) アドレス変換装置、通信システム、メッセージ通信方法、及びプログラム
JP5084716B2 (ja) Vpn接続装置、dnsパケット制御方法、及びプログラム
JP2010157857A (ja) Vpn接続装置、パケット制御方法、及びプログラム
WO2015093158A1 (ja) 通信システム、端末装置及びサーバ

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100812

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111213

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120210

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: 20120306

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120326

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150330

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 4961368

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees