Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP5089701B2 - アドレス情報の冗長構成によるsipプロトコルシグナリングメッセージのnatアドレス変換設備の通過 - Google Patents
[go: Go Back, main page]

JP5089701B2 - アドレス情報の冗長構成によるsipプロトコルシグナリングメッセージのnatアドレス変換設備の通過 - Google Patents

アドレス情報の冗長構成によるsipプロトコルシグナリングメッセージのnatアドレス変換設備の通過 Download PDF

Info

Publication number
JP5089701B2
JP5089701B2 JP2009533773A JP2009533773A JP5089701B2 JP 5089701 B2 JP5089701 B2 JP 5089701B2 JP 2009533773 A JP2009533773 A JP 2009533773A JP 2009533773 A JP2009533773 A JP 2009533773A JP 5089701 B2 JP5089701 B2 JP 5089701B2
Authority
JP
Japan
Prior art keywords
address
signaling message
communication client
communication
physical 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.)
Expired - Fee Related
Application number
JP2009533773A
Other languages
English (en)
Other versions
JP2010507949A (ja
Inventor
ヒリバーレン,ヴィンセント
レヴィ,トーマス
Original Assignee
アルカテル−ルーセント
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 アルカテル−ルーセント filed Critical アルカテル−ルーセント
Publication of JP2010507949A publication Critical patent/JP2010507949A/ja
Application granted granted Critical
Publication of JP5089701B2 publication Critical patent/JP5089701B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • 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
    • H04L2101/00Indexing scheme associated with group H04L61/00
    • H04L2101/60Types of network addresses
    • H04L2101/604Address structures or formats

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Multimedia (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)
  • Telephonic Communication Services (AREA)

Description

本発明は通信ネットワークに関する。より詳しくは、本発明は「NAT」などのアドレス変換装置を介したシグナリングメッセージの伝送の問題に関する。
現在の通信ネットワークはH.323、MGCP(Media Gateway Control Protocol)、又はSIP(セッション確立プロトコル:Session Initiation Protocol)及びSDP(セッション記述プロトコル:Session Description Protocol)などの信号プロトコルを使用して通信セッションの確立を可能にしている。
このSIPプロトコルはIETF(インターネット技術タスクフォース:Internet Engineering Task Force)発表のRFC 3261に定義されており、その2つの目的は以下のとおりである。
− 2人の当業者の交信を可能にする。
− SDPプロトコルを介して確立されるセッションの特性(ビデオビットレート、エンコーダの種類(使用するCODECなど)についてのネゴシエーションを可能にする。
別の当業者に発信することを望む発呼側当業者は、発呼側当業者の個人アドレス、その端末(又は、より一般的に言えばクライアント)の物理アドレス、及び被呼側当業者の個人アドレスを含むシグナリングメッセージ(「Invite」)を、「プロキシ」として知られているシグナリング要素に送信することができる。シグナリング要素は、被呼側当業者の個人アドレスを対応する端末の物理アドレスと照合する手段(「レジストラ」)を有する。この照合によって、シグナリングメッセージが発呼側当業者にルーティングされることが可能になる。
その当業者は、発信を受け入れた場合、端末又はクライアントの物理アドレスを含む新しいシグナリングメッセージで応答する。このように、両方の端末が他方の当業者の物理アドレスを知っているので、両者はデータ(音声、ビデオなど)を伝送するためのIP(Internet Protocol)接続を確立することができる。
しかし、RFC 1631、「The IP Network Address Translator」、及びRFC 3022、「Traditional IP Network Address Translator (Traditional NAT)」で定義されている、NAT(「ネットワークアドレス変換:Network Address Translation」)装置又はNAPT(「ネットワークアドレスポート変換:Network Address Port Translation」)装置として知られているアドレス変換装置では、ある問題が生じる。これらの装置はサブネットワーク(典型的にはプライベートネットワーク)をパブリックインターネットネットワークに接続するためのものである。サブネットワークの装置(端末)はその物理IPアドレスの妥当性がサブネットワークに限定されている。それらの装置(端末)がサブネットワークの外に位置する装置との通信をセットアップしようとするとき、アドレス変換装置はパブリックネットワークに対して有効な一時的なパブリックアドレスをそれらに割り当て、クライアントのプライベートアドレスとその一時的なパブリックアドレスとの間の関連を記憶する。
従って、NATアドレス変換装置は、
− 発信メッセージ、言い換えればプライベートネットワークからパブリックネットワークに行くメッセージのIPヘッダ中で端末のプライベートアドレスをパブリックアドレスに変換することにより、及び
− 着信メッセージ、言い換えればパブリックネットワークからプライベートネットワークに行くメッセージのIPヘッダ中で端末のパブリックアドレスをプライベートアドレスに変換することにより、
プライベートネットワークとパブリックネットワークとの間で伝送されるメッセージをオンザフライで修正する。
従って、SIP/SDPシグナリングメッセージ(若しくはH.323又は他のもの)がアドレス変換装置を通過するとき、問題が生じる。この問題は「NAT通過(NAT traversal)」として知られている。
この問題は、とりわけ公開の百科事典「Wikipedia」のアドレス「http://en.wikipedia.org/wiki/NAT_traversal」に記載されており、IETFのRFC 3235、表題「Network Address Translation(NAT)-Friendly Application Design Guidelines」に言及されている。
SIP及びSDPなどの信号プロトコルはアプリケーションプロトコルとみなされる。例えば、SIP/SDPプロトコルはTCP又はUDPプロトコルを介して伝送されることもあり、TCP又はUDPプロトコル自体はプロトコルスタックでIPの上に配置されている。従って、SIPメッセージは実際にはTCP又はUDPメッセージ中にカプセル化された一連のパラメータであり、TCP又はUDPメッセージ自体がIPメッセージ中にカプセル化されている。
NATアドレス変換装置はIP層内にあるパラメータを編集するのみで、より上の層内にあるパラメータについては元のままにしておく。
言い換えれば、SIP及びSDPメッセージ中に含まれる物理アドレスは、IPヘッダに含まれるアドレスとは異なり、アドレス変換装置によって編集されない。
その結果、シグナリングメッセージの受信者(被呼側クライアント)は発呼側クライアントのプライベートアドレスを知るだけである。しかし、これはプライベートネットワークでしか意味がないので通信セッションをセットアップすることはできない。
この問題はよく知られているので、それを解決するために数々の解決策が進められてきた。この問題を解決するために、2つの主要なアプローチ、即ち、発呼側クライアントベースのアプローチ、及び通信ネットワークのサーバ又は装置ベースのアプローチがある。
最初のカテゴリには、RFC 3489に記載されているSTUN(「Simple Traversal of UDP through NAT」)機構が含まれる。この機構は、クライアント(又は端末)がそのパブリックアドレスを得ることを可能にする。従って、メッセージがパブリックネットワークへ放出される前に、発呼側クライアントはこのパブリックネットワーク中に位置するSTUNサーバに要求を送信する。このサーバは、クライアントがそこで「見える」アドレス(及びポート)、言い換えればそのパブリックアドレスを含むメッセージで応答する。
従ってクライアントは、このパブリックアドレスを使用して、SDPプロトコルを介して応答をそこで受信したいと望むアドレスを示すことができる。
しかし多くのNATが「対称的」であると言われ、1つのパブリックアドレスを1対の当業者に関連付けるので、この解決策は重要な限界がある。従って、NATによりクライアントに割り当てられるパブリックアドレスは、STUNサーバとの通信と、セットアップされる他方の当業者とのセッションとで異なることがある。この場合、クライアントと他方の当業者との間の通信は確立することができない。
同じ原則に基づき、この状況を改善するために、TURN(「Traversal Using Relay NAT」)機構などの他の提案がなされてきた。TURN機構は「draft-rosenberg-midcom-turn-09.txt」文書、2006年3月発表、IETFサイトに記載されている。
しかし、STUN機構又はTURN機構のどちらもSIPプロトコルには適していない。
従って、新しい機構であるICE(「双方向接続性確立:Interactive Connectivity Establishment」)が、SIPシグナリングメッセージを通過に適したものにするために提案されている。ICEはSTUN及びTURN機構に基づき、それらを手直ししたものである。ICE機構も、IETFサイト、2006年6月発表、「draft-ietf-mmusic-ice-09.txt」文書、表題「Interactive Connectivity Establishment: A Methodology for Network Address Translator (NAT) Traversal for Multimedia Session Establishment Protocols」に記載されている。
解決策の第2のカテゴリは通信ネットワーク内の装置を利用するものである。初期の解決策ではネットワーク内にサーバ(例えば、STUNサーバ)を実装したが、クライアントがイニシアチブをもっていたことに留意されたい。しかし、この第2の系統の解決策では、NAT通過解決策のイニシアチブも実装もネットワーク装置の責任である。
例えば、この系統に属する第1の解決策はアプリケーションゲートウェイをNATアドレス変換装置に結合するものである。この機構は「Application Layer Gateway」又は「Application-Level Gateway」の略であるALGとして知られており、RFC 2663の段落2.9、表題「IP Network Address Translator(NAT) Terminology and Considerations」、1999年8月発表に定義されている。
このゲートウェイ(又はこのようなゲートウェイと同じ機能を有するNAT装置)は、メッセージによって使用されるアプリケーションプロトコルを理解する手段を有する。具体的には、それは、シグナリングメッセージの内容を理解することができ、当業者が自分のパブリックアドレスを交換し、自分のプライベートアドレスは交換しないように、SDPメッセージに含まれる物理アドレスを変換することができ、それにより、通信セッションをセットアップすることを可能にする。
この解決策の1つの変形は、シグナリングメッセージのパスに沿って配置されるセッションコントローラ又はSBC(「Session Border Controller」)を使用することからなる。このタイプの製品は、両方のネットワーク間での通信セッション及びシグナリングメッセージの伝送を制御することを可能にする。より正確には、SBCは、Megacoなどのプロトコルを介してメディアを伝送する手段(「メディアプロキシ」)を制御することができるSIP「プロキシ」シグナリング要素の役割を果たすことができ、その結果、通信セッションを当業者間で適切に確立することができる。
これらの大きなカテゴリのそれぞれにさらなる解決策が存在し、それらのどれも他より決定的に優越してはいない。
従って、単一の通信ネットワークで、複数の解決策を同時に実装することができる。通信クライアントは、先験的に、それが関連付けられているネットワークが通過の解決策を実装しているかどうかを知らない。その場合、ネットワークがALG又はSBCタイプの解決策を実装するのに対し、通信クライアントはICEタイプの解決策を実装することもある。
2つの解決策を配備することは冗長であり、リソースの損失をもたらすが、さらにそれらの解決策が相互に破壊的になり、通信ネットワークの間違った動作をもたらすことがある。即ち、SIP/SDPシグナリングメッセージに含まれるアドレスが、ALG若しくはSBC装置により、不適切に、又は変更が必要でないときに、変更されることがある。結局、通信セッションをセットアップすることができない。
この問題は今までに生じていないようである。
提案され得る1つの解決策は、SIPクライアント(ICE、STUN、TURNなど)が、クライアント自身がSBC又はALGゲートウェイに接続されていることを知っているとき、このクライアントによって実装される機構を手動でディスエーブルすることである。
しかし、このような処理は実装するには複雑である。クライアントが、それがALGゲートウェイ又はSBCに接続されていることを知るには、クライアントがそのアクセスプロバイダのネットワークのトポロジーを知っていなければならない。加えて、クライアントが新しいネットワークに接続されるたびにその構成が手動で変更されなければならない。
さらに、このアプローチは、ALGゲートウェイ又はSBCベースの解決策が配備されると、それがクライアントベースの解決策よりも構築の点で好まれるので最適ではない。しかし、この後者の解決策は、クライアントが通信セッションのセットアップを制御することを可能にし、SBC又はALG解決策のようなメディアリレーを実装しないので、一般に最適なのはこの後者の解決策である。
IETF(インターネット技術タスクフォース:Internet Engineering Task Force)発表のRFC 3261 RFC 1631、「The IP Network Address Translator」 RFC 3022、「Traditional IP Network Address Translator (Traditional NAT)」 公開の百科事典「Wikipedia」のアドレス「http://en.wikipedia.org/wiki/NAT_traversal」 IETFのRFC 3235、表題「Network Address Translation(NAT)-Friendly Application Design Guidelines」 RFC 3489 「draft-rosenberg-midcom-turn-09.txt」文書、2006年3月発表、IETFサイト IETFサイト、2006年6月発表、「draft-ietf-mmusic-ice-09.txt」文書、表題「Interactive Connectivity Establishment:A Methodology for Network Address Translator (NAT) Traversal for Multimedia Session Establishment Protocols」 RFC 2663の段落2.9、表題「IP Network Address Translator(NAT) Terminology and Considerations」、1999年8月発表 IETFのRFC 2327、表題「SDP:Session Description Protocol」 IETF(Internet Engineering Task Force)のRFC 3548
本発明の狙いは、クライアントベースの解決策と通信ネットワーク(ALG、SBCなど)ベースの解決策の最適な共存のための方法を提案することにより、これらの欠点を克服することである。
このことを行うために、本発明の第1の目的は、少なくとも1つのアドレス変換装置(NAT、NAPT、SBC、...)を含む通信ネットワークを介して、発呼側通信クライアントと被呼側通信クライアントとの間の通信セッションをセットアップする方法である。
それ自体公知のように、この方法は、シグナリングメッセージを伝送する段階、アドレス変換装置を通過する段階、及び通信セッションをセットアップするために通信クライアントの物理アドレスの交換を可能にする段階を含む。
本発明による方法は、革新的であり、少なくとも1つのクライアントが、
− 第1の位置にある物理アドレス、及び
− 異なる第2の位置にあり、この同じ物理アドレスを含むエンコード済み情報
を含む、少なくとも1つのシグナリングメッセージを送信することを特徴とする。
物理アドレスを含む情報は、エンコードされているので、アドレス変換装置(NAT、NAPT、SBCなど)によって変更できない。この場合、シグナリングメッセージの受信側通信クライアントは、送信側クライアントの未変更の物理アドレスを有する。変更されていないことが保証されているこのアドレスを使用することが好ましいことがある。
さらに、エンコードされていないアドレスを削除せずに、エンコードされたアドレスが冗長的に追加されることにより、IETF及び様々なアドレス変換装置の現在の仕様に適合しているままであることが可能になる。
この物理アドレスは、前述の通信クライアントによって実装されるアドレス変換装置通過解決策を介して取得することができる。この解決策は、例えば、STUN機構でよい。
従って、本発明は、ICE又はSTUNなどのアドレス変換装置通過機構を使用するアーキテクチャが直面する技術的問題を解決する。
本発明の一変形形態によれば、シグナリングメッセージはまた、
− 第1のポート位置にあるポート番号、及び
− 異なるポートの第2の位置にあり、前記ポート番号を含むエンコードされた情報の1つ又は複数の項目
も含む。
本発明の諸実装形態によれば、これらの異なる位置は、IETFのRFC 2327によって定義されるSDPプロトコルのフィールドである。第2の位置(アドレス用、及び必要ならポート番号用)は、このSDPプロトコルの属性フィールド、言い換えればRFC 2327の段落6で定義されている「a」フィールドである。
本発明はまた、少なくとも1つの他の通信クライアントとの通信セッションをセットアップするためのシグナリングメッセージを送信する手段、及びアドレス変換装置を通過する手段を有する通信クライアントを目的とする。
このクライアントは、シグナリングメッセージを送信する前にこのメッセージ内に、これらのアドレス変換装置通過手段によって取得される物理アドレスを含むエンコードされた情報を付加する手段を有することを特徴とする。
これらの手段はポート番号を含むエンコードされた情報を付加するのに適したものでもよい。
このエンコードされた情報は、SIPプロトコルに準拠しているシグナリングメッセージの、SDPプロトコルに準拠している部分のフィールド、特に属性フィールド「a」に付加されてよい。
本発明はまた、先に説明した通信クライアントを実装している通信ネットワーク、及び前述の方法を実装しているソフトウェア製品を提供することも目的とする。
本発明は添付の図とともに以下に記載する実装形態の説明からより明らかになるであろう。
本発明を実装できる通信ネットワークを示す図である。
図1のこの例では、通信ネットワークは、2つのアドレス変換装置NAT及びNATによって接続された3つのネットワークSN、SN及びSNから構成される。これは各通信クライアントC及びCがそれぞれプライベートサブネットワークSN及びSNに接続されている標準的なシナリオである。これらのプライベートサブネットワークのそれぞれは、アドレス変換装置NAT及びNATをそれぞれ使用して、パブリックネットワークSNに接続されている。
しかし、他のシナリオも可能である。例えば、単一のNATアドレス変換装置が、ある会社の2人の当業者に属する2つのプライベートサブネットワークの間に配備されてもよい。2つのクライアントの一方がNATを使用せずにプライベートサブネットワークに接続されている状況も考えることができる。この場合、他方のプライベートサブネットワークとパブリックサブネットワークとの間で、1つのNATアドレス変換装置だけが使用される。
通信ネットワーク(主にSNパブリックネットワーク)は少なくとも1つの装置を含む。これらの装置は、ルータなどのIP伝送ノードでよいか、サーバ、シグナリング要素、SIPプロキシ、コールサーバなどでもよい。図1には、わかりやすいように、NAT及びNATアドレス変換装置のみがコールサーバCSとともに示されている。
このコールサーバCSは以下では最も一般的な意味でみなされ、従って「SIPプロキシ」シグナリング要素、ソフトスイッチ、コールコントローラ、IMS(IP Multimedia Subsystem)アーキテクチャにおけるCSCF(呼セッション制御機能:Call Session Control Function)などをカバーする。
通信セッションのセットアップは専門家によく知られている、現在の最新技術の一部をなす。図では、それは2つの通信クライアントCとCの間でシグナリングメッセージを伝送する段階からなる。この信号フローfsはパブリックネットワークSNに位置するコールサーバCSによって送信される。前述のようにシグナリングメッセージのこうした伝送により、通信クライアントC及びCの物理アドレスの交換が可能になり、それにより2つの通信クライアントの間で通信セッションfmをセットアップすることが可能になる。次いで、メディアフロー(音声、データ、ビデオなど)fmは、2つのクライアントの間でこれらの交換された物理アドレスを使用して送信することができる。
シグナリングメッセージはアドレス変換装置NAT及びNATを通過する。従って、2つの通信クライアントC及びCはそれぞれ、それが結合されているアドレス変換装置によって割り当てられ、そのプライベート物理アドレスとは異なるパブリック物理アドレスを(セッション中に)有する。
通信セッションfmの確立を可能にするために、2つのクライアントはそれらのパブリック物理アドレス(それらのプライベート物理アドレスではない)を交換しなければならない。
図1の例で、発呼側通信クライアントCはアドレス変換装置通過解決策(「NAT通過:NAT Traversal」)を実装しているものと想定する。「実装」という用語は、クライアントがアドレス変換装置を通過する手段を有することだけでなく、これらの手段がイネーブルされることをも意味する。実際、これらの手段が様々な理由から(失敗する、ユーザがこれらの手段が性能不足であると考えたため手動で構成から外すなどで)ディスエーブルされる状況を想像することができる。
これらの通過手段は、既存の及び将来の最新技術で利用可能で、通信クライアントベースの様々な解決策に従うものでよい。前述のSTUN、TURN又はICEと同じ機構をここであげることができる。
シグナリングメッセージを送信する前に、発呼側通信クライアントCはこのメッセージに
− その物理アドレス、特にアドレス変換装置通過解決策を介して取得されたものでよい、そのパブリック物理アドレス、及び
− この物理アドレスを含むエンコードされた情報
を付加する。
従って、本発明の1つの特徴は、受信側当業者向けのシグナリングメッセージの物理アドレスに対応する、エンコードされた冗長な情報を付加することにある。
SIPプロトコルを使用する実装という状況では、このシグナリングメッセージは通常「INVITE」メッセージである。この「INVITE」シグナリングメッセージは、SDPプロトコルに準拠し、通信セッションの記述を実装することを可能にする部分を含む。SDPプロトコルはIETFのRFC 2327、表題「SDP:Session Description Protocol」に記載されている。
通信クライアントCは、このSDP部分に(あるいは、複数のSDP部分を含むシグナリングメッセージの場合はSDP部分のうちの別の部分に)そのパブリック物理アドレスと、必要ならばポート番号を、この目的のためにプロトコルで意図されている位置に付加する。
SDPプロトコルでは実際、それぞれがサブフィールドを含むことができるいくつかのフィールドを計画している。これらのフィールドは、以下の2つのカテゴリに分けることができる。
実装されるセッションの記述を目的とするフィールドは、以下のとおりである。
v プロトコルのバージョン
o セッションの所有者/作成者及び識別
s セッション名称
i セッション情報
u 記述のURI
e URL(eメール)
p 電話番号
c 接続情報
b 帯域幅情報
t セッションの有効性の継続期間
r 繰返し周波数
z 時間帯調整
k 暗号キー
a 属性
第2のフィールドカテゴリにはメディアの記述に関するフィールドが含まれ、それらは以下のとおりである。
m メディアの名称及び移送アドレス
i メディアのタイトル
c 接続情報
b 帯域幅情報
k 暗号キー
a 属性
SDPプロトコルの仕様によれば、これらのフィールドは、通信クライアントのプロトコルインターフェースによる読取りがより速くより効率的になるように配列される。
あるフィールドは通信クライアントが物理アドレスを付加してもよい、又は付加すべき位置を含む。他の位置は複数のポートを含むように計画される。
従って、「o」フィールドは、RFC 2327に明記されているように次のサブフィールド:<ユーザ名>、<セッションID>、<バージョン>、<ネットワークタイプ>、<アドレスタイプ>、<アドレス>を含む。
<アドレス>サブフィールドは通信クライアントCの物理アドレスを含む。通信クライアントCが利用可能な複数の物理アドレスを有する場合、対象の物理アドレスは通信クライアントCが通信セッションをそこでセットアップしたいと望む物理アドレスである。これは、好ましくは、そのパブリック物理アドレス、言い換えれば、知られておりSN通信ネットワーク内で使用できるパブリック物理アドレスであるべきである。
「m」フィールドは、サブフィールド<メディア>、<ポート>、<移送>、<fmtlist>を含んでよい。従って、第2のサブフィールドはポート番号を含んでよい。
「c」フィールドは、サブフィールド<ネットワークタイプ>、<アドレスタイプ>、<接続アドレス>を含んでよい。
属性フィールド「a」は<属性>及び<値>の2つのサブフィールドを含み、オープンフィールドである。これは物理アドレスも含んでよい。
本発明によれば、通信クライアントは第1の位置とは異なる第2の位置に物理アドレスを含むエンコードされた情報を付加する。言い換えれば、物理アドレスを、第1の位置(エンコードされていない形式で)、及び第2の位置(エンコードされた形式で)の両方に含んでよい。
この第2の位置は属性フィールド「a」でよい。これは、選択された任意の、しかし通信セッションにおける当業者となる可能性のある全通信クライアントに知られている属性名を含んでよい。次の例では、この属性名は「rdd」である。
SDPプロトコルのフィールドの順序が指定されていることによって生じる問題を念頭において、第2の位置を次に可能な位置に付加してよい。物理アドレス又はポート番号が「o」、「c」又は「m」フィールドである第1の位置に含まれる場合、第2の位置は後続の最初の「a」フィールドである。第1の位置が「a」フィールドの場合、第2の位置は、すぐ次の「a」フィールドである。
これらの規則は、シグナリングメッセージを受信する通信クライアントCのプロトコルインターフェースの設計を容易にするために使用される。
物理アドレス及びポート番号のこの冗長な付加は、シグナリングメッセージに含まれる全ての物理アドレス及び全てのポート番号に対して行っても、それらの一部分だけに対して行ってもよい。
本発明の一実施形態によれば、アドレス及びポート番号は個別にエンコードされる。フィールド(言い換えれば「行」)が物理アドレスを含むときは、物理アドレスのみがエンコードされ、このフィールドに対応する第2の位置に付加される。
別の実施形態によれば、フィールドの全体がエンコードされ、第2の位置に付加される。このように、単一のフィールドがポート番号及び物理アドレスの両方を含む場合、エンコードは1回だけ要求され、情報の全てを単一の第2の位置(言い換えれば単一の「a」フィールド)に容易に付加することができる。
言い換えれば、エンコード済み情報は(エンコード済み)物理アドレス又は(エンコード済み)ポート番号のみを含んでもよく、他の情報を含んでもよい(特にポート番号及び物理アドレスの両方を含んでよい)。
本発明のこの第2の実施形態によるSIPシグナリングメッセージのSDP部分の例は、以下のとおりである。
v=0
o=mhandley 2890844526 2890842807 IN IP4 126.16.64.4
i=A Seminar on the session description protocol
c=IN IP4 224.2.17.12/127
a=rdd:bz1taGFuZGxleSAyODkwODQ0NTI2IDI4OTA4NDI4MDcgSU4gSVA0IDEyNi4xNi42NC40
a=rdd:Yz1JTiBJUDQgMjl0LjluMTcuMTIvMTI3
m=audio 49170 RTP/AVP 0
a=rdd:bT1hdWRpbyA0OTE3MCBSVFAvQVZQIDA=
a=rtcp:53020
a=rdd:YT1ydGNwOjUzMDIw
a=rtpmap:96 L8/8000
a=rtpmap:97 L16/8000
m=application 32416 udp wb
a=rdd:bT1hcHBsaWNhdGlvbiAzMjQxNiB1ZHAgd2l=
前述の規則によれば、最初の「a」フィールドは、「o」フィールド中に含まれるアドレスに対する第2の位置である。第2の「a」フィールドは、「c」フィールド中に含まれる物理アドレスに対する第2の位置である。第3の「a」フィールドは、第1の「m」フィールド中に含まれるポート番号(49170)に対する第2の位置である。第5の「a」フィールドは、第4の「a」フィールド中に含まれるポート番号(53020)に対する第2の位置である。最後に、最後の「a」フィールドは、直前の「m」フィールド中に含まれるポート番号(32416)に対する第2の位置である。
しかし、これらの全てのフィールドで、エンコードされるのは物理アドレス又はポート番号を含む行全体である。言い換えれば、エンコードされるのは物理アドレス及び/又はポート番号を含むフィールドであり、物理アドレス又はポート番号は個別にエンコードされない。
従って、エンコード済み情報の「rdd:bz1taGFuZGxleSAyODkwODQ0NTI2IDI4OTA4NDI4MDcgSU4gSVA0IDEyNi4xNi42NC40」は、物理アドレス「126.16.64.4」だけでなく、フィールド「o=mhandley 2890844526 2890842807 IN IP4 126.16.64.4」中に存在する他のデータも含む。
この例では、物理アドレス及びポート番号はbase 64でエンコードされる。このタイプのエンコードは、例えばIETF(Internet Engineering Task Force)のRFC 3548に記載されているが、別の変形形態も存在する。
しかし、全てのタイプのエンコードが可能である。とはいえ、様々な部分が、使用されるエンコードのタイプ(及び必要ならばそのキー)に関する知識を共有すること、及びそれらがポート番号及び/又は物理アドレスであることをネットワーク装置(NAPT、NAT、SBCなど)が認識できないことが必要である。
ある場合では、より高度な暗号化技術を実装することが重要になることもある。
シグナリングメッセージ内で、エンコードのタイプ、及び必要ならばキーに関係する情報、又は受信側のC通信クライアントによるデコードを可能にする同じ性質の他の情報を搬送することを計画することもできる。
物理アドレス及びポート番号のみがエンコードされる実施形態では、これらは通信ネットワーク装置をだますために簡単に変更されてもよい。
物理IPアドレスについて、単にドットをスラッシュに変換する場合もあり得る。従って、アドレス「126.16.64.4」は、「126/16/64/4」となる。物理アドレスの各数字を対応するランクの文字に変換することも可能である。従って、この例のアドレスは「abf.af.fd.d」となる。
シグナリングメッセージは、一度送信されると、アドレス変換装置NATに伝送され、次いでパブリックネットワークSNの他の装置にも伝送される。必要ならば、アドレス変換装置NATに到達する前に、シグナリングメッセージはプライベートサブネットワークSNの装置も通過していてよい。
これらの装置のいくつかは、アドレス変換装置を通過する手段を有していてよい。これらの手段は前述の解決策に従うものでよい。これはALGゲートウェイ(Application Layer Gateway)又はSBCサーバ(Session Border Controller)でよい。
従って、これらの装置はSIPシグナリングメッセージのSDP部分に含まれる物理アドレス及びポート番号を変更することができる。従って、「m」、「c」及び「o」フィールドに含まれるアドレスは通信クライアントCに到着する前に変更されることがある。ある「a」フィールドが、例の第4の「a」フィールドの場合のように、エンコードされていないポート番号又は物理アドレスを含むときは、その「a」フィールドも変更されることがある。
しかし、「a」フィールドに含まれるポート番号及び物理アドレスはエンコードされているので、「a」フィールドに含まれるポート番号及び物理アドレスはこれらの装置では変更することができない。それらが通信クライアントCに変更されずに到着し、このクライアントが、変更された可能性のある他方のフィールドに含まれる物理アドレス及びポート番号の代わりにそれらを使用できることが好ましい。
同様に、他のシグナリングメッセージもまた、それらが通信クライアントCによって送信されたメッセージであれ、又は通信クライアントCによって送信されたメッセージであれ、エンコード済み物理アドレス及びポート番号を含んでいてよい。従って、信号フローfs全体が上述のことに従っていてよい。
物理アドレス及びポート番号をこのように構成することによって、それらが変更されていないことが保証され、2つの通信クライアントが通信セッション、及び1つ(又は複数)のメディアフローfmをセットアップすることができる。

Claims (10)

  1. 少なくとも1つのアドレス変換装置(NAT、NAT)を含む通信ネットワーク(SN、SN、SN)を介して、発呼側通信クライアント(C)と被呼側通信クライアント(C)との間の通信セッション(fm)をセットアップする方法であって、
    シグナリングメッセージ(fs)を伝送する段階、前記少なくとも1つのアドレス変換装置を通過する段階、及び前記通信セッションをセットアップするために前記通信クライアントのパブリック物理アドレスの交換を可能にする段階からなり、
    少なくとも1つの通信クライアントが第1の位置にパブリック物理アドレスを含む少なくとも1つのシグナリングメッセージを送信し、前記パブリック物理アドレスアドレス変換装置通過手段によって事前に取得されており、
    前記通信クライアントが、前記シグナリングメッセージを伝送する前に前記パブリック物理アドレスに対応する情報をエンコードし、異なる第2の位置に前記パブリック物理アドレスに対応する冗長な前記エンコード済み情報を付加することを特徴とする方法。
  2. 請求項1記載の方法において、前記パブリック物理アドレスが、前記少なくとも1つの通信クライアントによって実装されているアドレス変換装置通過解決策を介して取得される方法。
  3. 請求項1乃至2いずれか1項に記載の方法において、前記少なくとも1つのシグナリングメッセージがまた、1以上のポート番号を第1のポート位置に、前記ポート番号を含む1以上のエンコード済み情報項目を異なる第2のポート位置に含む方法。
  4. 請求項1乃至3いずれか1項に記載の方法において、前記位置が前記シグナリングメッセージのSDPプロトコルに準拠している部分のフィールドであり、前記シグナリングメッセージがSIPプロトコルに準拠している方法。
  5. 前記第2の位置が前記SDPプロトコルの属性フィールドである請求項4記載の方法。
  6. 少なくとも1つの他の通信クライアント(C)との通信セッション(fm)をセットアップするためにシグナリングメッセージ(fs)を送信する手段、及びアドレス変換装置を通過する手段を有する通信クライアント(C)であって、
    前記シグナリングメッセージが、第1の位置に前記通信クライアントのパブリック物理アドレスを含み、前記パブリック物理アドレスは、前記アドレス変換装置を通過する手段によって事前に取得されており、
    前記通信クライアント(C)が、前記シグナリングメッセージを送信する前に、前記パブリック物理アドレスに対応する情報をエンコードし、前記シグナリングメッセージの異なる第2の位置に前記パブリック物理アドレスに対応する冗長な前記エンコード済み情報を付加する手段を有することを特徴とする通信クライアント(C)。
  7. 請求項6記載の通信クライアントにおいて、前記手段が、ポート番号を含むエンコード済み情報を付加することにも適している通信クライアント。
  8. 請求項6記載の通信クライアントにおいて、前記エンコード済み情報が、SIPプロトコルに準拠しているシグナリングメッセージの、SDPプロトコルに準拠している部分のフィールドに付加される通信クライアント。
  9. 請求項6乃至8いずれか1項に記載の通信クライアントを含む通信ネットワーク。
  10. 請求項1乃至5いずれか1項に記載の方法をコンピュータに実行させるためのコンピュータプログラム
JP2009533773A 2006-10-26 2007-10-05 アドレス情報の冗長構成によるsipプロトコルシグナリングメッセージのnatアドレス変換設備の通過 Expired - Fee Related JP5089701B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
FR06/54544 2006-10-26
FR0654544A FR2908001B1 (fr) 2006-10-26 2006-10-26 Traversee d'un equipement de traduction d'adresse nat pour messages de signalisation conformes au protocole sip par redondance d'informations d'adresses.
PCT/EP2007/060575 WO2008049717A1 (fr) 2006-10-26 2007-10-05 Traversee d'un equipement de traduction d'adresse nat pour messages de signalisation conformes au protocole sip par redondance d'informations d'adresses

Publications (2)

Publication Number Publication Date
JP2010507949A JP2010507949A (ja) 2010-03-11
JP5089701B2 true JP5089701B2 (ja) 2012-12-05

Family

ID=38055101

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009533773A Expired - Fee Related JP5089701B2 (ja) 2006-10-26 2007-10-05 アドレス情報の冗長構成によるsipプロトコルシグナリングメッセージのnatアドレス変換設備の通過

Country Status (6)

Country Link
US (1) US8233484B2 (ja)
EP (1) EP1916825A1 (ja)
JP (1) JP5089701B2 (ja)
CN (1) CN101170556A (ja)
FR (1) FR2908001B1 (ja)
WO (1) WO2008049717A1 (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6661799B1 (en) 2000-09-13 2003-12-09 Alcatel Usa Sourcing, L.P. Method and apparatus for facilitating peer-to-peer application communication
TW200924439A (en) * 2007-11-23 2009-06-01 D Link Corp Portable ICE relay server and its method thereof
JP4920021B2 (ja) * 2008-09-29 2012-04-18 Kddi株式会社 移動体通信システムにおける通信経路設定方法、無線基地局装置及び無線端末装置
CN101998516B (zh) * 2009-08-27 2014-03-12 中兴通讯股份有限公司 一种大容量会话边界控制器sbc及其实现方法
CN103369061B (zh) * 2012-04-01 2016-08-24 华为终端有限公司 一种穿越两级nat的方法及nat设备
CN102664948B (zh) * 2012-04-18 2015-05-27 杭州海康威视数字技术股份有限公司 一种跨网关数据存储的系统及方法
US8601144B1 (en) 2012-11-27 2013-12-03 Sansay, Inc. Systems and methods for automatic ICE relay candidate creation
WO2014201600A1 (zh) * 2013-06-17 2014-12-24 华为技术有限公司 一种会话管理方法、地址管理方法及相关装置
CN104580543A (zh) * 2013-10-16 2015-04-29 福达新创通讯科技(厦门)有限公司 数据传输方法、系统及其记录媒体
US10805361B2 (en) 2018-12-21 2020-10-13 Sansay, Inc. Communication session preservation in geographically redundant cloud-based systems

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6006253A (en) * 1997-10-31 1999-12-21 Intel Corporation Method and apparatus to provide a backchannel for receiver terminals in a loosely-coupled conference
US6981278B1 (en) * 2000-09-05 2005-12-27 Sterling Commerce, Inc. System and method for secure dual channel communication through a firewall
JP4349766B2 (ja) * 2001-12-07 2009-10-21 株式会社日立製作所 アドレス変換装置
US7509425B1 (en) * 2002-01-15 2009-03-24 Dynamicsoft, Inc. Establishing and modifying network signaling protocols
US8019889B1 (en) * 2002-05-31 2011-09-13 Cisco Technology, Inc. Method and apparatus for making end-host network address translation (NAT) global address and port ranges aware
US7302496B1 (en) * 2002-11-12 2007-11-27 Cisco Technology, Inc. Arrangement for discovering a localized IP address realm between two endpoints
CN102355355B (zh) * 2003-06-19 2014-07-16 日本电信电话株式会社 会话控制服务器、通信装置、通信系统与通信方法
US7257837B2 (en) * 2003-07-26 2007-08-14 Innomedia Pte Firewall penetration system and method for real time media communications
TWI245192B (en) * 2003-12-11 2005-12-11 Inst Information Industry Method, system and storage medium for passing through network address translation device
US20060072569A1 (en) * 2004-10-04 2006-04-06 Wizzysoft Corporation Network address translation protocol for transmission control protocol connections
US7646775B2 (en) * 2005-03-08 2010-01-12 Leaf Networks, Llc Protocol and system for firewall and NAT traversal for TCP connections
US8432896B2 (en) * 2005-07-22 2013-04-30 Cisco Technology, Inc. System and method for optimizing communications between session border controllers and endpoints in a network environment
EP1753199B1 (en) * 2005-08-11 2015-10-28 Swisscom AG Method and system for subscribing a user to a service
US8635450B2 (en) * 2005-12-28 2014-01-21 Intel Corporation IP encapsulation with exposed classifiers
US20070186281A1 (en) * 2006-01-06 2007-08-09 Mcalister Donald K Securing network traffic using distributed key generation and dissemination over secure tunnels
US7606191B1 (en) * 2006-05-01 2009-10-20 Sprint Spectrum L.P. Methods and systems for secure mobile-IP traffic traversing network address translation
TW200805968A (en) * 2006-07-11 2008-01-16 Shaw-Hwa Hwang Improved SIP communication method capable of traversing NAT firewall

Also Published As

Publication number Publication date
EP1916825A1 (fr) 2008-04-30
CN101170556A (zh) 2008-04-30
JP2010507949A (ja) 2010-03-11
FR2908001A1 (fr) 2008-05-02
US20080101389A1 (en) 2008-05-01
US8233484B2 (en) 2012-07-31
FR2908001B1 (fr) 2009-04-10
WO2008049717A1 (fr) 2008-05-02

Similar Documents

Publication Publication Date Title
JP5089701B2 (ja) アドレス情報の冗長構成によるsipプロトコルシグナリングメッセージのnatアドレス変換設備の通過
Johnston SIP: understanding the session initiation protocol
Hautakorpi et al. Requirements from Session Initiation Protocol (SIP) Session Border Control (SBC) Deployments
US9036645B2 (en) Traversing of NAT address translation equipment for signaling messages compliant with SIP protocol
EP2805476B1 (en) Ice based nat traversal
US9137027B2 (en) Bootstrapping in peer-to-peer networks with network address translators
JP5437255B2 (ja) Tcpトランスポートプロトコルの一時使用によってsip信号メッセージ用アドレス変換装置を通過する方法
US20020120760A1 (en) Communications protocol
JP2004531110A (ja) Sipのユーザエージェントの機能をプロキシにアウトソーシングするシステムおよび方法
KR20060090291A (ko) Ip 어드레스 바인딩들에 기초한 멀티미디어 트래픽의필터링 방법 및 시스템
KR101368615B1 (ko) 단대단 콜의 구현 방법, 단대단 콜 터미널 및 시스템
US20160308930A1 (en) Method and System to Add Video Capability to any Voice over Internet Protocol (Vo/IP) Session Initiation Protocol (SIP) Phone
CN101013937A (zh) 一种防止媒体代理受黑客攻击的方法和装置
Boulton et al. Nat traversal practices for client-server sip
CN101485179A (zh) 通过转换网络地址的nat网络节点来管理通信连接的方法
KR100601124B1 (ko) Sip 서비스 기반의 tcp채널 제공 방법
Boulton et al. RFC 6314: NAT Traversal Practices for Client-Server SIP
Nurmela Session initiation protocol
Gaylani NAT traversal and mobility in VOIP applications
Packet et al. Internet Engineering Task Force (IETF) J. Hautakorpi, Ed. Request for Comments: 5853 G. Camarillo Category: Informational Ericsson
Wisely et al. SIP—THE SESSION INITIATION PROTOCOL
JP2010200069A (ja) ホームゲートウェイによって異なる経路の複数のセッションを確立する方法及びシステム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100810

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110809

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120514

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120528

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120725

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

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

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

Free format text: PAYMENT UNTIL: 20150921

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 5089701

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

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

LAPS Cancellation because of no payment of annual fees