JP4918163B2 - 複数同時接続のためのシンメトリックnatの通過 - Google Patents

複数同時接続のためのシンメトリックnatの通過 Download PDF

Info

Publication number
JP4918163B2
JP4918163B2 JP2010549721A JP2010549721A JP4918163B2 JP 4918163 B2 JP4918163 B2 JP 4918163B2 JP 2010549721 A JP2010549721 A JP 2010549721A JP 2010549721 A JP2010549721 A JP 2010549721A JP 4918163 B2 JP4918163 B2 JP 4918163B2
Authority
JP
Japan
Prior art keywords
node
port
nat
predicted
list
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.)
Active
Application number
JP2010549721A
Other languages
English (en)
Other versions
JP2011514100A5 (ja
JP2011514100A (ja
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.)
Sony Interactive Entertainment Inc
Original Assignee
Sony Interactive Entertainment Inc
Sony Computer Entertainment 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 Sony Interactive Entertainment Inc, Sony Computer Entertainment Inc filed Critical Sony Interactive Entertainment Inc
Publication of JP2011514100A publication Critical patent/JP2011514100A/ja
Publication of JP2011514100A5 publication Critical patent/JP2011514100A5/ja
Application granted granted Critical
Publication of JP4918163B2 publication Critical patent/JP4918163B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0805Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
    • H04L43/0811Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking connectivity
    • 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
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/256NAT traversal
    • H04L61/2575NAT traversal using address mapping retrieval, e.g. simple traversal of user datagram protocol through session traversal utilities for NAT [STUN]
    • 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
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/256NAT traversal
    • H04L61/2578NAT traversal without involvement of the NAT server
    • 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/668Internet protocol [IP] address subnets
    • 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
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/256NAT traversal
    • H04L61/2564NAT traversal for a higher-layer protocol, e.g. for session initiation protocol [SIP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Environmental & Geological Engineering (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

本出願は、2008年3月5日に出願された米国出願第12/043,080号の優先権を主張し、開示内容全体を参照によりここに完全に組み入れる。
本発明の実施の形態はコンピュータネットワークに関し、より具体的には、コンピュータネットワーク上のNAT(network address translator)を横断するピアツーピア通信に関する。
NAT機能付きルータの使用は、外部ネットワークから内部ネットワークへのアクセスを妨げることがありうる。このことは、VoIP(voice communication over the Internet)として知られるインターネットを通じた音声通信やオンラインゲーム等のピアツーピアのアプリケーションで特有の問題となりうる。NATは、LAN(local area network)がプライベートIPアドレスのセットを内部トラフィックに利用し、グローバルIPアドレスを外部トラフィックに利用することを可能にするインターネットの標準である。NAT機能を持ったノードは、しばしば「NATボックス(NAT box)」と呼ばれる。
NATは(文字どおり)、ふたつのネットワーク間のネットワーク(IP)アドレスを翻訳する。NAPT(Network Address Port Translation)はIPアドレスのみならず、転送レイヤのプロトコルのポート番号も翻訳する。NAT/NAPTはよい特性を持っているが、重大な副作用も存在する。もし翻訳が動的に実行されると、外部ネットワークのノードは、内部ネットワーク内のノードに連絡するためのNAT条のIPアドレス(およびポート番号)を前もって知るすべがない。都合の悪いことに、これは現在の市場に展開されている住宅およびSOHOのルータの最も日常的な振る舞いである。
NATは一般的に、フルコーン、制限付きコーン、ポート制限付きコーン、またはシンメトリックに分類することができる。フルコーンNATは、同じ内部IPアドレスおよびポートからのすべてのリクエストを同じ外部IPアドレスおよびポートにマップする。さらに、任意の外部ホストは、マップされた外部アドレスにパケットを送ることにより、フルコーンNATを通して内部ホストにパケットを送ることができる。制限付きコーンNATでは、同じ内部IPアドレスおよびポートからのすべてのリクエストは同じ外部IPアドレスおよびポートにマップされる。フルコーンNATとは違って、IPアドレスがXである外部ホストが内部ホストにパケットを送ることができるのは、内部ホストがそのIPアドレスがXである外部ホストにパケットを以前送ったことがある場合に限られる。ポート制限付きコーンNATは制限付きコーンと似ているが、制限はポート番号も含む。具体的には、IPアドレスXかつポート番号Pの外部ホストが、ある内部ホストにパケットを送ることができるのは、内部ホストが以前IPアドレスXかつポート番号Pにパケットを送ったことがある場合に限られる。
シンメトリックNATでは、同じ内部IPアドレスおよびポートから特定の宛先IPアドレスおよびポートへのすべてのリクエストは、同じ外部IPアドレスおよびポートにマップされる。もし、同じ内部ホストが、同じ送信元アドレスおよびポートをもつが宛先が異なるパケットを送信するなら、異なるマッピングが使われる。さらに、パケットを受信する外部ホストだけがUDPパケットを内部ホストに送り返すことができる。シンメトリックNATは、通過において最も問題のある種類のNATとなる傾向がある。シンメトリックNAT通過のためのひとつの技術は、「ポート予測」として知られている。これは米国特許出願公開20070076729A1に詳細に記載されており、参照によりここに組み入れる。この種類のシンメトリックNATの通過では、第1のノードはシンメトリックである第1のNATの背後にあり、第2のノードは第2のNATの背後にある。第1のノードは第1のNAT上における予測された転送アドレスのリストを構築する。予測された転送アドレスを用いて、第2のノードで接続性チェックが実行される。
NATの18%がシンメトリックであると推定され、また接続の失敗率のうち10%以上は、ポート予測なしと予測されている。NAT通過を含むいくつかのアプリケーションでは、最大で64個の同時接続が要求されることもあり得る。ポート予測がそのようなアプリケーションで確実に動作するか否かは明確でない。
本発明の実施の形態はこのような文脈の中で生じた。
上記課題を解決するために、本発明のある態様は、第1のシンメトリックNAT(network address translator)の後ろに位置している第1のノードと、2またはそれ以上の他のノードとの間をネットワークを通じてピアツーピア接続するための方法である。この方法は、a)前記第1のノードと第2のノードとの間でコミュニケーションセッションを開始し、および前記第1のノードのある前記第1のNAT上における予測された転送アドレスのリストを構築するためにポート予測を実行し、b)予測された転送アドレスのリストを含む接続リクエストメッセージを前記第1のノードから第2のノードへ送信し、c)前記第1のノードにおいて前記接続リクエストメッセージの暫定応答を受信し、d)前記予測された転送アドレスを使って前記第1のノードと前記第2のノードとの間の接続性チェックを実行し、e)d)が始まるまで、前記第1のノードと第3のノードとの間のコミュニケーションのためのポート予測を遅延する。
本発明の実施の形態は、添付の図面と併せて、以下の詳細な説明を考慮することによって容易に理解される。
図1Aと図1Bとはポート予測を用いたNAT通過を示すメッセージの流れの図である。 本発明の実施の形態に係る修正されたポート予測を示すタイミング図である。 本発明の実施の形態に係るふたつのノード間のNAT通過のためのシステムを示す概略図である。 本発明の実施の形態に係るふたつのノード間のNAT通過の方法を示すフロー図である。 同時予測の問題を示すネットワークを通じて通信する3つのノードの概略図である。 本発明の実施の形態に係るポート予測を実行するように構成されたノードの概略図である。
以下の詳細な説明には、説明のための多くの具体的な詳細事項が含まれるが、それらに対する多くの変更や修正も本発明の技術範囲に含まれることは、当業者であれば誰でも理解するであろう。したがって、以下に説明する本発明の例示的な実施の形態は、クレームされた発明の一般性をなんら損なうことなく、また限定も行うことなく記載されている。
II.概要
ポート予測の技術はシンメトリックNAT(Network Address Translator)を通過するために用いられる。もしシンメトリックNATの背後にあるノードが、多くの遠隔のノードに同時に接続することを試みると、高い確率で予測は失敗する。本発明の実施の形態は、同時にポート予測する場合に生じる接続の失敗を、前の要求が接続性チェックの段階に到達するまで新しい要求を保留することによって回避する。これにより、ポート予測の問題を引き起こすことなく、ひとつのノードがシンメトリックNATを通して複数の同時接続することを可能にする。
III.用語
本明細書において、下記の用語は表1に示された意味を持つ。
Figure 0004918163
略語
本明細書において、下記の略語は表2に示された意味を持つ。
Figure 0004918163
IV.問題分析
ポート予測の失敗の基本的な問題は、図1Aおよび図1Bとを参照して理解されよう。図1Aは、第1のノード2がシンメトリックNAT(図示せず)の背後にあるときのNAT通過の基本的な流れを示す。第2のノード4と通信を開始するために、第1のノード2はSTUNサーバ6にバインディングリクエスト10を送信する。その応答として、STUNサーバ6はシンメトリックNATからのアドレス情報12を送り返す。アドレス情報12とポート予測とを用いることで、第1のノード2はポート番号を含む候補となるアドレスのリストを構築することができる。第1のノード2は、リスト付きの接続リクエストを、シグナリングサーバ8を経由してノード4に送信することができる。第2のノード4もバインディングリクエスト16をSTUNサーバ6に送信し、その応答としてアドレス情報を受信してもよい。アドレス情報18を用いて、第2のノード4はそれ自身の候補のリストを生成し、暫定応答20内でそのリストを第1のノード2に送信してもよい。その後、第1および第2のノードはチェックパケット22、24を送信することで接続性チェックを実行してもよい。
クリティカルタイムウィンドウTC1は、第1のノード2のために、バインディングリクエスト10の送信と1番目のチェックパケット22の送信との間に存在することに留意する。この間、第1のノードによって実行されるポート予測は、バインディングリクエスト10に対する応答としてSTUNサーバ4によって送信されたアドレス情報12に基づく。もしこのクリティカルタイムの間にアドレス情報が変化すると、ポート予測は失敗するかも知れない。もし第1のノード2が第3のノード(図示せず)との通信のために別のバインディングリクエストを開始すると、アドレス情報が変化しうる。同様のクリティカルタイムウィンドウTC2が、第2のノード4用に、第1のノード2からの接続要求14への応答と1番目のチェックパケット24の送信との間に存在する。
一般に、NAT通過のためのクリティカルタイムウィンドウは、1番目の接続性チェックのパケットのセットが送信されたときに終了する。図1Aを参照すると、第1のノード2用のクリティカルタイムウィンドウTC1は、1番目のチェックパケット22のセットが送信されたときに終了する。第2のノード4用のクリティカルタイムウィンドウTC2は、1番目のチェックパケット24のセットが送信されたときに終了する。
図1Aに関して記載されたシンメトリックNATの通過は一般に、あるひとつのノードと他のノードとの間の通信には非常によく機能する。もしあるノードが他の複数のノードに多数同時に接続することを試みると、予期せぬ問題が発生しうる。そのような状況は、例えばマルチプレイヤのオンラインゲームで生じうる。図1Bは、シンメトリックNATの背後にあるノード上で動いている単一のアプリケーション30による多数の通信セッションにおける問題を示す。例として、アプリケーション30は1番目のセッション32を開始する。1番目のセッション32の中で、アプリケーション30はノードAへの接続を試みる。1番目のセッション32はバインディングリクエストから接続の交渉を開始し、暫定応答の受信に続いて接続性チェックを始める。しかし、クリティカルタイムウィンドウTC1の途中で、アプリケーション30がノードBとの通信を試みる2番目のセッション34を開始したとする。2番目のセッション34用の交渉の一部として、新しいNATバインディングリクエストがSTUNサーバに送信されることになる。これはNAT上のポートの割り当てを変更する。都合の悪いことに、1番目のセッション32は、ノードAとの通信用のポート予測のための、前のポート割り当てに依存している。この結果、1番目のセッション32のためのポート予測は失敗し、所定のタイムアウト期間が経過した後に1番目のセッションはタイムアウトとなる。従来のポート予測スキームは、上述した顕著なポート予測の不具合に陥りやすい、問題となる特有な性質にもかかわらず、一般的には認識されていない。
IV.解決手法
本発明の実施の形態は、複数のポート予測における問題を、同時に多数の接続を確立しているNAT通過の交渉段階の間、「クリティカルウィンドウ」を直列化することによって克服する。マルチプレイヤのオンラインゲームのようなある種のアプリケーションが複数のピアツーピア接続の確立をサポートできるようになる点に留意する。
本発明のある実施の形態では、クリティカルタイムウィンドウの直列化が、2またはそれ以上のノードについてネットワークを経由してピアツーピア接続を開始しようとする、シンメトリックNATの後ろに位置しているノード上に実装されてもよい。具体的には、第1のノードと第2のノードとの間でコミュニケーションセッションを開始し、シンメトリックNAT上における予測された転送アドレスのリストを構築し、その後第1のノードから第2のノードへの予測された転送アドレスのリストを含む接続リクエストメッセージを送信してもよい。接続リクエストメッセージに対する暫定応答を受信したとき、第1のノードは、予測された転送アドレスを使って、例えばパケットを送信する等、第1のノードと第2のノードとの間の接続性チェックを実行してもよい。第1のノードは、接続性チェックが始まるまで第1のノードと第3のノードとの間のコミュニケーションのためのポート予測を遅延することにより、クリティカルタイムウィンドウを直列化してもよい。
同様に、クリティカルタイムウィンドウの直列化は、1またはそれ以上のノードとNAT通過の交渉をしている間にネットワークを経由してピアツーピア接続を開始するための接続リクエストを受信するシンメトリックNATの背後にあるノード上で実装されてもよい。そのようなノードが他のノードから接続リクエストメッセージを受信するとき、ポート予測を実行し、予測されたアドレスのリストを含む接続リクエストメッセージに対する暫定応答を送信し、接続性チェックを実行してもよい。追加ノードとのコミュニケーションのためのポート予測は、接続性チェックが始まるまで遅延されてもよい。
具体的に、図2のタイミング図に示すように、第1のノード2はN個の接続リクエストR、R、・・・、Rを同時に生成または受信してもよい。1番目のリクエストRは図1Aに関して上述したように処理されてもよい。しかしながら、それに続くリクエストR、・・・、Rは、生成または受信した順番で直列的に並べられる。特に、それに続くリクエストそれぞれは、ポート予測を始める前に、その前にあるリクエストそれぞれのクリティカルタイムウィンドウTが経過するまで待機する。
上述したように、タイムアウト期間T内に接続か確立できない場合、接続は失敗しうる。したがって、タイムアウト期間TはN個全ての接続が確立できるように十分に長いことが望ましい。例えば、接続用の全てのクリティカルタイムウィンドウTであり、ある接続の最大数を仮定すると、タイムアウト期間TはNmax+Tconn未満とすべきである。ここで、Tconnは接続性チェックのための時間であり、Nmaxは同時接続しうる最大の数である。
図3に示すように、第1のノード102は、第1のNAT103を経由してパブリックネットワークPNW(例えばインターネット)と物理的に接続している第1のプライベートネットワークNW1内に属する。同様に、第2のノード104は第2のプライベートネットワークNW2内に属し、第2のNAT105を経由して同じパブリックネットワークにアクセスすることができる。プライベートネットワークNW1とNW2はそれぞれ第1および第2のノード102、104や第1および第2のNAT103、105に加えて、他のノードやNATを含んでもよい。他のプライベートネットワークもまた、パブリックネットワークPNWと接続されていてもよい。パブリックネットワークPNWはSIPプロキシサーバ100とSTUNサーバ101とを含む。第1のノード102は、第1のNAT103の背後にある第1のプライベートネットワークNW1の中でのみ有効なプライベートIPアドレスを持っている。第1のノード102は、グローバルにただひとつのルーティング可能なIPアドレスをもっており、第1のNAT103は、パブリックネットワークとプライベートネットワークとの間のIPアドレスおよびポートの翻訳を実行する。同様に、第2のノード104は第2のNAT105の背後にある第2のプライベートネットワークNW2の中でのみ有効なプライベートIPアドレスを持っている。第2のノード104はグローバルにだだひとつの、ルーティング可能なIPアドレスを持っており、第2のNAT105は、パブリックネットワークとプライベートネットワークとの間のIPアドレスおよびポートの翻訳を実行する。
ノード102、104は、例えばオーディオ/ビデオ(A/V)チャット、マルティメディアストリーミング装置、ファイル共有ノード、オンラインゲームモジュール等をホストするサーバとすることができる。ノード102、104それぞれは、図6の方法のステップを実装するための命令等の命令を実行するときに特定の目的のコンピュータとなる、汎用的な目的のコンピュータであってもよい。例としては、ノード102および104はSIPユーザエージェントであり、SIPプロキシサーバ100を通して各々でメッセージを送受信できるものであってもよい。ノード102および104はSTUNクライアントでもある。それ故、第1のノード102は、STUNプロトコルを使ってSTUNサーバ101と通信することにより第1のノード102とSTUNサーバ101との間の通信経路内にあるNATの存在とその種類とを見出すことができる。第2のノード104も同様に、第2のノード104とSTUNサーバ101との間にあるNATの存在とその種類とを見出すことができる。
本発明の実施の形態に係るNAT通過の方法は、図3のブロック図と図4のフロー図とを同時に参照することによって理解されよう。はじめに、ノード102、104それぞれは、図4の202、204に示すようにSTUNプロトコルを使ってNAT探索を実行する。図に示す例では、第1のノード102は、第1のNAT103の背後にあってその種類はシンメトリックであることを探知する。第2のノード104もまた、第2のNAT105の背後にあってその種類は、例えばポート制限コーンであることを探知する。続いて、206、208に示すように、ノード102と104とはともに、ネットワークに参加するために自身をSIPプロキシサーバ100に登録する。これはSIPプロキシサーバ100に向かう第1および第2の信号経路116、117を確立する。ひとたび確立されると、SIPプロキシサーバ100は、第1および第2の信号経路116、117を通して第1および第2のノード102、104それぞれにメッセージを転送することができる。
例として、第1のノード102が第2のノード104とピアツーピアの接続を確立したいとする。第1のノード102は新しいピアツーピア接続のためのローカルポート107を割り当てる。続いて第1のノード102はローカルポート107からSTUNサーバ101にバインディングリクエスト118を送信することによって外部ポート112を取得する。バインディングリクエストの送信は、第1のノード102用のクリティカルタイムウィンドウを開始する。第1のノード102は第1のNAT103の存在とその種類がシンメトリックであることを知っているので、210に示すようにポート予測を実行し、転送アドレス107、112、113、および114のリストを構築する。そのリストは接続リクエストメッセージの中に入れられてもよい。好適な実施の形態では、第1のノード102は第1のNAT103に関する情報を送信しなくてもよい。さらに、第2のノード104ではなく、第1のノード102が、ポート予測を行ってもよい。加えて、転送アドレスを含む接続リクエストメッセージの送信は、現存するICEの手順と完全互換である。
209に示すように、他のノードへ接続するために後に行われるバインディングリクエストがポート予測に干渉することを避けるために、第1のノード102は、バインディングリクエスト118を送信するときに待機期間を開始する。待機期間の間、他のノードとの通信のためのバインディングリクエストは、一時的に延期され、生成された順番で待ち行列に入れられる。
ステップ212において、第1のノード102は、ローカルポート106と既に確立された通信経路116とを通して、転送アドレスのリスト付きの接続リクエストメッセージをSIPプロキシサーバ100に送信する。SIPプロキシサーバ100は、最終目的地が第2のノード104であるというメッセージを見つけ出し、既に確立された通信経路117とポート111とを通して接続リクエストメッセージを転送し、メッセージは最終的にローカルポート108上の第2のノード104に到達する。接続リクエストを受信すると、第2のノード104は、将来のピアツーピアセッションのためにローカルポート109を割り当てる。その後第2のノード104は、ローカルポート109からSTUNサーバ101にバインディングリクエスト119を送信することによって外部ポート115を取得する。211に示すように、他のノードへ接続するために後に行われるバインディングリクエストがポート予測に干渉することを避けるために、第2のノード104は、接続要求リクエストメッセージを受信するときに待機期間を開始する。待機期間の間、第2のノード104は、他のノードとの通信のためのバインディングリクエストは、一時的に延期され、生成された順番で待ち行列に入れられる。具体的には、第1のノード102はノードX(符号125)からの要求217を、リクエストが受信された順序で待ち行列に入れる。第2のノード104も同様に、ノードY(符号127)からのリクエスト219を待ち行列に入れる。
第2のノード104は第2のNAT105がシンメトリックでないことを知っているので、ローカルポート109と外部ポート115とを新たな暫定応答メッセージに入れて、そのメッセージをSIPプロキシサーバ100と第1および第2の信号経路116、117とを経由して第1のノード102に送り返す。暫定応答の送信は、転送交換フェーズを停止し、接続性チェックのフェーズを開始する。このステージでは、第1および第2のノード102、104は、他のノードとの通信のための新しいバインディングリクエストを安全に開始しうる。その結果、213、215それぞれに示すように、第1および第2のノード102、104用の待機期間が終了する。
接続性を確認するために、ノード102と104との両ノードは、ステップ216、218において他のノードから取得した転送アドレスに、ローカルポート107、109からSTUNパケットの送信を開始する。第1のノード102がSTUNパケット120を送信するとき、第1のNAT103は新たな外部ポート113を割り当て、その後パケット120は第2のNAT105上の外部ポート115に到達する。第2のNAT105はポート制限コーンNATであり第2のノード104はまだローカルポート109から第1のNAT103上のローカルポート113にパケットを送信していないかも知れないので、少量の第1のパケットは外部ポート115において捨てられることもあり得る。第2のノード104はまた、STUNパケット121、122、123を取得した転送アドレス112、113、および114に送信する。第1のNAT103はシンメトリックNATであり、ポート112はSTUNサーバ101とのセッションのために排他的に割り当てられているため、ポート112に到達したパケット121は捨てられる。第1のNAT103によって割り当てられた外部ポートにポート114は存在しないため、ポート114に到達したSTUNパケット123もまた捨てられる。ポート113に到達したSTUNパケット122は第1のNAT103によってローカルポート107に転送される。第1のノード102はその後第2のノード104に応答を送信し、その応答を受信したとき第2のノード104はポート113との接続性を持つことを見出す。第1のノード102上のローカルポート107から第2のNAT105上の外部ポート115へ送信されたSTUNパケットは、最終的に第2のノード104のローカルポート109で受信される。第2のノード104はその後、第1のノード102に応答を返信する。
ステップ220において、応答メッセージを受信したとき、第1のノード102は、第2のノード104に対して第1のノード102は外部ポート115への接続性を見つけた旨を伝えるためにSIPプロキシサーバ100を経由して第2のノード104にアップデートメッセージを送信する。これは、ステップ222において、第2のノード104が第1のノード102に接続確率処理を終了させるための最終応答メッセージを送信する契機となる。
NATの種類をメッセージに入れたり第2のノード104に予測させたりする代わりに、第1のノード102が予測を行い、STUNサーバ101から取得した外部ポート112とともに予測した外部ポート113、114を新たな接続要求リクエストメッセージに入れる。これにより、第1のノード102は第1のNAT103に関する何の情報も第2のノード104に提供しない。そのようなICEメソッドの利用が、先行技術(米国特許出願公開2004−139228)に開示されるような、「ブレイクアウト(break-out)」パケットのための複雑なNAT組み合わせロジックを完全に排除する。その代わり、本発明の実施の形態は、「ブレイクアウトパケット」と本質的に等価である接続性チェックを実行することによって同じ結果を達成することができる。このように、本発明の実施の形態によれば、予測された転送アドレスを接続性チェックリストに単に加えることで、既にICEの手順を利用しているシステムにシンメトリックNATの通過能力を追加することができる。
上述したように、例えば第2のノード104との通信を開始しようとしているノードである第1のノード102がポート予測を実行して予測されたポートを接続リクエストメッセージに入れる。ポート予測のための技術は多数存在する。例えば、ポート予測は次に述べる検査を用いるポート割り当てルール発見処理を用いて実装されてもよい。第1のノード102は、リクエスト変更(CHANGE-REQUEST)属性やアドレス応答(RESPONSE-ADDRESS)属性にあるフラグセットを付けることなくSTUNバインディングリクエストをSTUNサーバ101に送信する。これにより、STUNサーバ101はリクエストが来たアドレスおよびポートに応答を返信することになる。この検査は、NAT103のポート割り当て特性を把握するために、IPアドレスとポートとの異なる組み合わせに適用される。STUNサーバ101は、下記の表3に示すふたつの異なるIPアドレスCおよびDと、ふたつの異なるポートCおよびDを用いる。
Figure 0004918163
表3に見られるように、この例ではひとつのポート毎に検査が4回(例えば試行1から試行4まで)行われる。同一のローカルポートについて全ての検査が実行されなければならない。第1のノード102は応答から4つのマッピングされたアドレスを取得する。これら4つのマッピングされたアドレスは、ポート割り当てルール、ポート増加量ΔP、および評価の一貫性を決定するために解析される。一貫性を探すために処理が複数回実行され、好ましくは異なるローカルポートであってそれと関連したNATバインディングを持っていないポートを用いるのがよい。ポート割り当てルールは、マッピングされたアドレスから取得されたポート番号を探すことによって決定できる。もし全てのポート番号が、異なるポート番号を持つ連続する宛先のために増加される場合、ポート割り当てルールは「ポートセンシティブ(port sensitive)」と呼ばれる。もし同じIPアドレスを持つ連続する宛先からのポート増加量(例えば、試行1から試行2、および試行3から試行4)が常に0で、かつ異なるIPアドレスを持つ連続する宛先からのポート増加量(例えば試行2から試行3)が0でない場合、ポート割り当てルールは「アドレスセンシティブ(address sensitive)」と呼ばれる。もし獲得したマッピングされたアドレスの全てのポート番号が同じ場合、NAT103は「コーンNAT」である。
ΔPの値は次のよう決定されてもよい。すなわち、アドレスセンシティブ割り当て用に、ΔPの値は、例えば試行2と試行3のような宛先ポートが異なる連続する試行間のポート増加量と等しい。表4に示すように処理は他のローカルポートから繰り返される。この例では、試行1から試行4は表3と同様で、試行5から試行8は表3の宛先IPアドレスとポート番号とのパターンを継続する。
Figure 0004918163
表4より、連続する試行について宛先IPアドレスが同じ場所は、対応するマッピングされたアドレスのポート番号も同じであることが分かることに留意する。これより、ポート割り当てルールは「アドレスセンシティブ」であることが決定できる。さらに、ΔPの値は試行2と試行3との間、試行4と試行5との間、および試行6と試行7との間のポート増加量と等しい。
ポートセンシティブ割り当てでは、試行[N+1]と試行[N]との検査から得られたマッピングされたアドレスにおける隣接するポート番号間でΔPの値は異なる。第1のノード102がΔP決定のためのポート増加量の一貫性を決定できないような状況に関し、アプリケーションは統計的な観察に基づくΔPの値を決定したり、有効なΔPの取得をあきらめる決定をしたりするアルゴリズムを含んでいてもよい。
もし第2のNAT105がシンメトリックでない場合、例えば第1のノード102だけのためのNAT探索ステップ202の一部としてNATポート予測を実行するので十分であろう。第2のNAT105もシンメトリックNATである場合、第2のノード104はNAT探索フェーズ204の一部として同様のポート予測を実行してもよい。
本発明の実施の形態では、NAT通過のためのクリティカルタイムウィンドウを直列化するように構成されたノードは他の複数のノードとの複数の接続のために直列化されてもよいことに留意する。上述のクリティカルタイムウィンドウの直列化は、ここではシンメトリックノード接続ループ(Symmetric Node Connection Loop)として参照される、落とし穴を潜在的に引き起こす可能性がある。クリティカルタイムウィンドウを直列化するために接続リクエストを待ち行列に入れることは、シンメトリックNATの背後にないノードには一般的には必要とされないことに留意する。しかしながら、3またはそれ以上のノードであってそれぞれがシンメトリックNATの背後にあるノード用にクリティカルタイムウィンドウの直列化が実装される場合には、ロックアップ(lockup)が発生しうる。この落とし穴の性質は、3つのノードが全てシンメトリックNATの背後にあることが示される図5を参照して理解されるであろう。もしノードBがノードAと接触を試みる間にノードAがノードBに接触を試みると開始依存性ループが3つのノード間で生成され、いずれのノードもピアツーピア通信を首尾よく開始できないというロックアップとなってしまうという結果となりうる。
図5に示される例では、もし3つのノード全てが、図2に関して上述したような直列化されたクリティカルタイムウィンドウを実装するように構成されていれば、ノードCがノードAと開始するのをノードBが待つ間、およびノードAがノードBと開始するのをノードCが待つ間に、ノードAはノードBがノードCと開始するのを待つ。このような状況では、3つのノード全ては同じ時間待つことになり、これはロックアップの状況を生成する。この問題を克服するために、新規転送タイムアウトを実装してもよい。
例として、ノードCは「待ち行列に入れられた(QUEUED)」というメッセージQをノードBに送信してもよい。待ち行列に入れられたというメッセージQは、ノードCはシンメトリックNATの背後にあり、他のノードとの接続を待っているということを示す。ノードBは所定の待ち時間T待機し、その後ノードCとの開始を中止する。続いてノードAからの接続リクエストを処理した後、再びCと開始する。待ち時間Tは0以上で、かつノードBがノードCとの通信をあきらめる前に待機する通常のタイムアウト時間未満であってもよい。もう少し具体的には、以下の理由から、Cは「待ち行列に入れられた」というメッセージQをBに送信する。すなわち、CがシンメトリックNATの背後にあること、およびリクエストはすぐに処理されずに待ち行列に入れられたということをCは知っているからである。ノードBは、その「待ち行列に入れられた」というメッセージに応じて比較的短い期間(例えば3秒間)待機し、ノードCとの接続処理を中止(延期)し、待ち行列内の他のリクエストを処理して、最終的に再びCと開始する。ノードBが永久にノードCとノードCと開始しようとすることを防ぐために、同一ノードとの再試行の回数は制限され(例えば3回まで)、その後ノードBは完全にあきらめる。そのような場合、ノードB上で実行しているアプリケーションは接続エラーを受信する。
ロックアップの別の解決手法としては、上述の手法を下記のように修正してもよい。クリティカルタイムウィンドウは外部接続リクエストのみ直列化し、やや深めのポート予測を実行してもよい。例えば、ポート増加量ΔPに基づいてポート予測を生成するのではなく、2ΔP、3ΔP、・・・、MΔPに基づくさらなるポート予測を生成してもよい。ここでMは整数であり、予測の「深さ(depth)」と称する。例として、特定のシンメトリックNAT用にポート増加量ΔP=1と決定されたと仮定する。このΔPの値に基づいてポート予測の深さM=1をもとにした候補リストは以下のようになる。
候補1:種類=STUN、202.10.9.20:9021(予測済み)
候補2:種類=ローカル、192.168.1.2:3658
M=1からM=3まで予測を深くすると以下の候補リストが生成される。
候補1:種類=STUN、202.10.9.20:9021(予測済み)
候補2:種類=STUN、202.10.9.20:9022(予測済み)
候補3:種類=STUN、202.10.9.20:9023(予測済み)
候補2:種類=ローカル、192.168.1.2:3658
「待ち行列に入れられた」という信号メッセージを用いる場合と異なり、前述の解決手法は全ての考えられるロックアップの状況に対処しうるものではないが、実装を単純化しうる。さらに、接続処理は呼ぶ側においてより並列に起こりやすいので、内部接続ではなく外部接続を直列化することは、ほとんどの起こりやすいロックアップ状況を回避することができる。内部接続用のクリティカルタイムウィンドウは直列化されないので、ポート予測は失敗しうる。ポート予測の深さを、例えばM=+1からM=+3まで増加する予測された候補の数が増加し、これはポート予測の失敗の確率を減少させる。
図3と図4とともに以上に説明された例は、SIP(Session Initiation Protocol; RFC 3261)プロトコルを用いるピアツーピアのUDPセッションの確立と関連する。しかしながら、本発明の実施の形態は、直接的な接続の確立の前にパブリックネットワーク上のプロキシサーバを経由して他のピアに信号を送受信することを可能とする任意の他の信号プロトコルに適用することができる。そのような信号プロトコルはH.323、MGCP、HTTP、XMPP等を含みうるがこれに限定されるものではない。
NAT通過アルゴリズムはソフトウェアまたはハードウェア、あるいは両者の組み合わせによって実装してもよい。例として、図6はそのようなアルゴリズムを実装するコンピュータ装置を示す。装置400はプロセッサモジュール401とメモリ402とを含む。プロセッサモジュール401はシングルプロセッサまたはマルチプロセッサを含む。シングルプロセッサの一例として、プロセッサモジュール401はインテル社のPentium(登録商標)マイクロプロセッサや同様のIntel互換のマイクロプロセッサを含んでもよい。マルチプロセッサの一例として、プロセッサモジュール401はセルプロセッサを含んでもよい。
メモリ402は、集積回路(例えばRAM、DRAM、ROM、など)の形態をとる。メモリ402はメインメモリまたはセルプロセッサのシナジスティックプロセッサエレメント(synergistic processor element)のローカルストアでもよい。コンピュータプログラム403は、プロセッサモジュール401上で実行することができるインストラクションの形で、メモリ402に格納される。プロセッサモジュール401は、プログラム403命令を格納する1またはそれ以上のレジスタ405を含んでもよい。プログラム403の命令は、例えば図2、図3、および図4に関して上述したようなネットワークを経由したピアツーピア接続方法のステップを含んでもよい。具体的には、プログラム403は、多数の接続の試みがポート予測に干渉することを防ぐために、上述したような他のノードへの接続のための要求を待ち行列に入れる。プログラムはメモリ402に格納される接続キュー407を生成してもよい。接続キュー407はテーブルかまたは別のデータ構造で実装してもよい。接続キュー407は、前の他の開始キュー用のクリティカルタイムウィンドウが経過した後にキュー407から接続が解放されるために、ある特定の接続が開始された時間を格納する。
プログラム403は、C、C++、JAVA(登録商標)、アセンブリ言語、MATLAB、FORTRAN、あるいはその他の数多くの言語のような、プロセッサに読み取り可能な適切な言語で書かれてもよい。装置は、入出力(I/O)エレメント411、電源(P/S)412、クロック(CLK)413、およびキャッシュ414のようなよく知られた補助機能410を含んでもよい。装置400は、ディスクドライブ、CD−ROMドライブ、テープドライブ等のようなプログラムおよび/またはデータを格納するため大容量ストレージを随意に含んでもよい。装置400は、デバイスとユーザとの間のやり取りを手助けするためのディスプレイユニット416とユーザインタフェースユニットとを随意に含んでもよい。ディスプレイユニット416は、テキスト、数字、グラフィカルな記号や画像を表示するCRT(cathode ray tube)や他のフラットパネルスクリーンの形態としてもよい。ディスプレイユニット416は、聞き取り可能な音声を出力するスピーカや他の音声変換器を含んでもよい。ユーザインタフェース418は、GUI(graphical user interface)とともに用いられるキーボード、マウス、ジョイスティック、光学ペン、マイクロフォン、または他のデバイスを含んでもよい。装置400は、インターネットのようなネットワークを介して他のデバイスと通信を可能とするためのネットワークインタフェース420を含んでもよい。これらの構成要素はハードウェア、ソフトウェア、またはファームウェア、あるいはこれらのうちの2または3個の組み合わせによって実装されてもよい。
V.結果
本発明の実施の形態は、NAT通過機能を実装するピアツーピアライブラリで、そのピアツーピアライブラリ上で動作する簡単な接続性チェックツールを用いてテストした。接続の両端のノードはシンメトリックNATの背後にある。PlayStation3の開発ステーション上に実装されたピアツーピアライブラリのノードは、Linux PC上で動作している64個の他のノードに接続を試みた。外部および内部への接続用のクリティカルタイムウィンドウはともに直列化された。64個全ての接続は首尾よく確立できた。
本発明の好ましい実施の形態を完全な形で説明してきたが、いろいろな代替物、変形、等価物を用いることができる。したがって、本発明の範囲は、上記の説明を参照して決められるものではなく、請求項により決められるべきであり、均等物の全範囲も含まれる。ここで述べた特徴はいずれも、好ましいかどうかを問わず、他の特徴と組み合わせてもよい。請求項において、明示的に断らない限り、各項目は1またはそれ以上の数量である。請求項において「〜のための手段」のような語句を用いて明示的に記載する場合を除いて、請求項がミーンズ・プラス・ファンクションの限定を含むものと解してはならない。

Claims (20)

  1. 第1のシンメトリックNAT(network address translator)の後ろに位置している第1のノードと、2またはそれ以上の他のノードとの間をネットワークを通じてピアツーピア接続するための方法であって、
    a)前記第1のノードと第2のノードとの間でコミュニケーションセッションを開始するためにポート予測を実行し、および前記第1のノードのある前記第1のNAT上における予測された転送アドレスのリストを構築し
    b)予測された転送アドレスのリストを含む接続リクエストメッセージを前記第1のノードから第2のノードへ送信し、
    c)前記第1のノードにおいて前記接続リクエストメッセージの暫定応答を受信し、
    d)前記予測された転送アドレスを使って前記第1のノードと前記第2のノードとの間の接続性チェックを実行し、
    e)d)が始まるまで、前記第1のノードと第3のノードとの間のコミュニケーションのためのポート予測を遅延することを特徴とする方法。
  2. f)e)の後、前記第1のNAT上の予測された転送アドレスのリストを構築する前記第1のノードと、第3のノードとの間のコミュニケーションのためのポート予測を実行し、
    g)予測された転送アドレスのリストを含む接続リクエストメッセージを前記第1のノードから第3のノードへ送信し、
    h)前記予測された転送アドレスを使って前記第1のノードと前記第3のノードとの間の接続性チェックを実行することをさらに含むことを特徴とする請求項1に記載の方法。
  3. i)g)の後まで、前記第1のノードと第4のノードとの間のコミュニケーションのためのポート予測を遅延することをさらに含むことを特徴とする請求項2に記載の方法。
  4. 接続性チェックの実行は、前記接続リクエストメッセージ内の前記第1のノードによって提供された一またはそれ以上の予測された転送アドレスに、前記第2のノードからのSTUN(Session Traversal Utilitiy for NAT)パケットを送信することを含むことを特徴とする請求項1に記載の方法。
  5. 接続性チェックの実行は、STUNパケット応答を前記第1のノードから前記第2のノードに送信することをさらに含み、
    前記STUNパケット応答は、前記第2のノードから送信された前記STUNパケットのうち一つが前記第1のノードに到達するとき通った前記第1のNAT上の外部ポートの転送アドレスを含むことを特徴とする請求項4に記載の方法。
  6. a)は、前記第1のNAT用のポート増加量Δpを決定し、当該ポート増加量Δpを用いて前記予測された転送アドレスのリストを生成することを含むことを特徴とする請求項1に記載の方法。
  7. a)は、前記第1のNAT用のポート増加量Δpを決定し、当該ポート増加量Δpおよび1又はそれ以上の異なるポート増加量を用いて前記予測された転送アドレスのリストを生成することを含み、
    追加のポート増加量それぞれは、Δpと深さMだけ異なり、
    Mは1よりも大きい正の整数であることを特徴とする請求項1に記載の方法。
  8. Mは3と等しいことを特徴とする請求項7に記載の方法。
  9. b)の後一定期間TW待機するが、c)の前に、前記第2のノードが他のノードと接続するために待ち行列に入れられたことを示す前記第2のノードからのメッセージに応じて、前記第1のノードと前記第2のノードとの間のコミュニケーションセッションを中止し、
    a)、b)、c)、d)、およびe)を繰り返すことをさらに含み、
    前記TWは、0と同じかそれより大きく、かつ前記第1ノードと前記第2のノードの間の接続失敗用のタイムアウトよりは小さいことを特徴とする請求項1に記載の方法。
  10. d)は、前記予測された転送アドレスのリストからの転送アドレスを用いて、一又はそれ以上のテストパケットを前記第1のノードから前記第2のノードへ送信することを含むことを特徴とする請求項1に記載の方法。
  11. e)は、前記一又はそれ以上のテストパケットのうちのひとつが送信されるまで、前記第1のノードと前記第3のノードとの間のコミュニケーション用のポート予測を遅延することを含むことを特徴とする請求項10に記載の方法。
  12. 第1のシンメトリックNAT(network address translator)の後ろに位置している第1のノードと、2またはそれ以上の他のノードとの間をネットワークを通じてピアツーピア接続するための方法であって、
    a)前記第1のノードにおいて、第1の予測された転送アドレスのリストを含む接続リクエストメッセージを第2のノードから受信し、
    b)前記第1のノードと第2のノードとの間でコミュニケーションセッションを開始するためにポート予測を実行し、および前記第1のノードのある前記第1のNAT上における、予測された転送アドレスのリストを構築し
    c)前記第1のノードから前記第2のノードに前記接続リクエストメッセージの暫定応答を送信し、
    d)前記接続リクエストメッセージ内の前記予測された転送アドレスを使って前記第1のノードと前記第2のノードとの間の接続性チェックを実行し、
    e)d)が始まるまで、前記第1のノードと第3のノードとの間のコミュニケーションのためのポート予測を遅延することを特徴とする方法。
  13. 接続性チェックの実行は、前記接続リクエストメッセージ内の前記第1のノードによって提供された1またはそれ以上の予測された転送アドレスに、前記第2のノードからSTUNパケットを送信することを含むことを特徴とする請求項12に記載の方法。
  14. 接続性チェックの実行は、STUNパケット応答を前記第1のノードから前記第2のノードに送信することをさらに含み、
    前記STUNパケット応答は、前記第2のノードから送信された前記STUNパケットのうちのひとつが前記第1のノードに到達するとき通った前記第1のNAT上の外部ポート転送アドレスを含むことを特徴とする請求項13に記載の方法。
  15. b)は、前記第1のNAT用のポート増加量Δpを決定し、当該ポート増加量Δpを用いて前記予測された転送アドレスのリストを生成することを含むことを特徴とする請求項12に記載の方法。
  16. b)は、前記第1のNAT用のポート増加量Δpを決定し、当該ポート増加量Δpおよび1又はそれ以上の異なるポート増加量を用いて前記予測された転送アドレスのリストを生成することを含み、
    追加のポート増加量それぞれは、Δpと深さMだけ異なり、
    Mは1よりも大きい正の整数であることを特徴とする請求項12に記載の方法。
  17. Mは3と等しいことを特徴とする請求項16に記載の方法。
  18. d)は、前記予測された転送アドレスのリストからの転送アドレスを用いて、1又はそれ以上のテストパケットを前記第1のノードから前記第2のノードへ送信することを含むことを特徴とする請求項12に記載の方法。
  19. e)は、前記1又はそれ以上のテストパケットのうちのひとつが送信されるまで、前記第1のノードと前記第3のノードとの間のコミュニケーション用のポート予測を遅延することを含むことを特徴とする請求項18に記載の方法。
  20. プロセッサと、
    メモリと、
    ネットワークインタフェースと、
    前記メモリ内に具体化され、前記プロセッサで実行するように構成された命令を含むノードであって、前記命令は、
    A)命令セットであって、実行されたとき前記ノードに、
    i)前記ノードと第2のノードとの間でコミュニケーションセッションを開始するためにポート予測を実行し、および前記ノードのある前記第1のNAT上における予測された転送アドレスのリストを構築し
    ii)前記ノードから前記第2のノードへの、前記予測された転送アドレスのリストを含む接続リクエストメッセージを送信し、
    iii)前記ノードにおいて前記接続リクエストメッセージの暫定応答を受信し、
    iv)前記予測された転送アドレスを使って前記ノードと前記第2のノードとの間の接続性チェックを実行し、
    v)iv)が始まるまで、前記ノードと第3のノードとの間のコミュニケーションのためのポート予測を遅延することを前記ノードに実行させるか、または、
    B)命令セットであって、実行されたとき前記ノードに、
    i)前記ノードにおいて、第一の予測された転送アドレスのリストを含む接続リクエストメッセージを第2のノードから受信し、
    ii)前記ノードと第2のノードとの間でコミュニケーションセッションを開始するためにポート予測を実行し、および前記ノードのある前記第1のNAT上における予測された転送アドレスのリストを構築し、
    iii)前記ノードから前記第2のノードに前記接続リクエストメッセージの暫定応答を送信し、
    iv)前記接続リクエストメッセージ内の前記予測された転送アドレスを使って前記ノードと前記第2のノードとの間の接続性チェックを実行し、
    v)iv)が始まるまで、前記ノードと第3のノードとの間のコミュニケーションのためのポート予測を遅延することを前記ノードに実行させるかのいずれか一方の命令セットを含むことを特徴とするノード。
JP2010549721A 2008-03-05 2009-02-23 複数同時接続のためのシンメトリックnatの通過 Active JP4918163B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/043,080 US7856506B2 (en) 2008-03-05 2008-03-05 Traversal of symmetric network address translator for multiple simultaneous connections
US12/043,080 2008-03-05
PCT/US2009/034913 WO2009111205A2 (en) 2008-03-05 2009-02-23 Traversal of symmetric network address translator for multiple simultaneous connections

Publications (3)

Publication Number Publication Date
JP2011514100A JP2011514100A (ja) 2011-04-28
JP2011514100A5 JP2011514100A5 (ja) 2012-02-09
JP4918163B2 true JP4918163B2 (ja) 2012-04-18

Family

ID=41054752

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010549721A Active JP4918163B2 (ja) 2008-03-05 2009-02-23 複数同時接続のためのシンメトリックnatの通過

Country Status (6)

Country Link
US (4) US7856506B2 (ja)
EP (1) EP2255497B1 (ja)
JP (1) JP4918163B2 (ja)
KR (1) KR101139675B1 (ja)
CN (2) CN101965712B (ja)
WO (1) WO2009111205A2 (ja)

Families Citing this family (174)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8224985B2 (en) 2005-10-04 2012-07-17 Sony Computer Entertainment Inc. Peer-to-peer communication traversing symmetric network address translators
US8060626B2 (en) 2008-09-22 2011-11-15 Sony Computer Entertainment America Llc. Method for host selection based on discovered NAT type
US7995478B2 (en) 2007-05-30 2011-08-09 Sony Computer Entertainment Inc. Network communication with path MTU size discovery
US7856501B2 (en) 2007-12-04 2010-12-21 Sony Computer Entertainment Inc. Network traffic prioritization
US7856506B2 (en) 2008-03-05 2010-12-21 Sony Computer Entertainment Inc. Traversal of symmetric network address translator for multiple simultaneous connections
EP2250766B1 (en) * 2008-03-07 2019-01-30 Citrix Systems, Inc. Systems and methods for content injection
US9203928B2 (en) 2008-03-20 2015-12-01 Callahan Cellular L.L.C. Data storage and retrieval
US7636761B1 (en) 2008-09-29 2009-12-22 Gene Fein Measurement in data forwarding storage
US8458285B2 (en) 2008-03-20 2013-06-04 Post Dahl Co. Limited Liability Company Redundant data forwarding storage
US8452844B2 (en) 2008-05-07 2013-05-28 Tajitshu Transfer Limited Liability Company Deletion in data file forwarding framework
US9456054B2 (en) 2008-05-16 2016-09-27 Palo Alto Research Center Incorporated Controlling the spread of interests and content in a content centric network
US8599678B2 (en) * 2008-07-10 2013-12-03 Tajitshu Transfer Limited Liability Company Media delivery in data forwarding storage network
US9160794B2 (en) * 2008-12-04 2015-10-13 Microsoft Technology Licensing, Llc Network address translators (NAT) type detection techniques
US9014832B2 (en) * 2009-02-02 2015-04-21 Eloy Technology, Llc Augmenting media content in a media sharing group
TWI408936B (zh) * 2009-09-02 2013-09-11 Ind Tech Res Inst 網路穿透方法及網路通訊系統
CN102045409B (zh) * 2009-10-13 2013-05-01 财团法人工业技术研究院 网络穿透方法及网络通讯系统
US8923293B2 (en) 2009-10-21 2014-12-30 Palo Alto Research Center Incorporated Adaptive multi-interface use for content networking
US8386537B2 (en) * 2009-12-15 2013-02-26 Intel Corporation Method for trimming data on non-volatile flash media
US8478821B2 (en) * 2010-03-05 2013-07-02 Veetle, Inc. Network membership management for peer-to-peer networking
US8620986B2 (en) * 2010-03-24 2013-12-31 Blackberry Limited Peer-to-peer network connectivity status
CN101895590A (zh) * 2010-07-23 2010-11-24 华南理工大学 基于udt实现nat穿越的系统和方法
US9264459B2 (en) * 2010-12-16 2016-02-16 Palo Alto Research Center Incorporated SIP-based custodian routing in content-centric networks
JP2013038740A (ja) * 2011-08-11 2013-02-21 Funai Electric Co Ltd 通信システム及び通信方法
TWI484804B (zh) * 2011-11-09 2015-05-11 Quanta Comp Inc 網路系統之資料管理方法及其相關系統
US8984110B1 (en) * 2012-02-14 2015-03-17 Sonus Networks, Inc. Secure media address learning for endpoints behind NAPT devices
US9280546B2 (en) 2012-10-31 2016-03-08 Palo Alto Research Center Incorporated System and method for accessing digital content using a location-independent name
US9400800B2 (en) 2012-11-19 2016-07-26 Palo Alto Research Center Incorporated Data transport by named content synchronization
US10430839B2 (en) 2012-12-12 2019-10-01 Cisco Technology, Inc. Distributed advertisement insertion in content-centric networks
US9978025B2 (en) 2013-03-20 2018-05-22 Cisco Technology, Inc. Ordered-element naming for name-based packet forwarding
JP2014197774A (ja) * 2013-03-29 2014-10-16 ソニー株式会社 通信機器、通信システム、通信機器の制御方法およびプログラム
KR101497630B1 (ko) * 2013-04-05 2015-03-03 삼성에스디에스 주식회사 모바일 환경에서의 p2p 접속 시스템 및 단말과 이를 이용한 p2p 접속 방법
TWI493924B (zh) * 2013-04-10 2015-07-21 D Link Corp Through the two network devices to help complete the STUN technology network system and its methods
TWI524703B (zh) * 2013-04-24 2016-03-01 可取國際股份有限公司 網路應用裝置、網路連線方法與網路連線系統
US9935791B2 (en) 2013-05-20 2018-04-03 Cisco Technology, Inc. Method and system for name resolution across heterogeneous architectures
US9185120B2 (en) 2013-05-23 2015-11-10 Palo Alto Research Center Incorporated Method and system for mitigating interest flooding attacks in content-centric networks
US9444722B2 (en) 2013-08-01 2016-09-13 Palo Alto Research Center Incorporated Method and apparatus for configuring routing paths in a custodian-based routing architecture
US9826044B2 (en) * 2013-10-23 2017-11-21 Qualcomm Incorporated Peer-to-peer communication for symmetric NAT
US9407549B2 (en) 2013-10-29 2016-08-02 Palo Alto Research Center Incorporated System and method for hash-based forwarding of packets with hierarchically structured variable-length identifiers
US9276840B2 (en) 2013-10-30 2016-03-01 Palo Alto Research Center Incorporated Interest messages with a payload for a named data network
US9282050B2 (en) 2013-10-30 2016-03-08 Palo Alto Research Center Incorporated System and method for minimum path MTU discovery in content centric networks
US9401864B2 (en) 2013-10-31 2016-07-26 Palo Alto Research Center Incorporated Express header for packets with hierarchically structured variable-length identifiers
US10101801B2 (en) 2013-11-13 2018-10-16 Cisco Technology, Inc. Method and apparatus for prefetching content in a data stream
US10129365B2 (en) 2013-11-13 2018-11-13 Cisco Technology, Inc. Method and apparatus for pre-fetching remote content based on static and dynamic recommendations
US9311377B2 (en) 2013-11-13 2016-04-12 Palo Alto Research Center Incorporated Method and apparatus for performing server handoff in a name-based content distribution system
US10089655B2 (en) 2013-11-27 2018-10-02 Cisco Technology, Inc. Method and apparatus for scalable data broadcasting
US9503358B2 (en) 2013-12-05 2016-11-22 Palo Alto Research Center Incorporated Distance-based routing in an information-centric network
CN103699450B (zh) * 2013-12-20 2017-02-15 国云科技股份有限公司 一种Linux下的自适应组件间通信方法
US9379979B2 (en) 2014-01-14 2016-06-28 Palo Alto Research Center Incorporated Method and apparatus for establishing a virtual interface for a set of mutual-listener devices
US10098051B2 (en) 2014-01-22 2018-10-09 Cisco Technology, Inc. Gateways and routing in software-defined manets
US10172068B2 (en) 2014-01-22 2019-01-01 Cisco Technology, Inc. Service-oriented routing in software-defined MANETs
US9374304B2 (en) 2014-01-24 2016-06-21 Palo Alto Research Center Incorporated End-to end route tracing over a named-data network
US9531679B2 (en) 2014-02-06 2016-12-27 Palo Alto Research Center Incorporated Content-based transport security for distributed producers
US9954678B2 (en) 2014-02-06 2018-04-24 Cisco Technology, Inc. Content-based transport security
US9678998B2 (en) 2014-02-28 2017-06-13 Cisco Technology, Inc. Content name resolution for information centric networking
US10089651B2 (en) 2014-03-03 2018-10-02 Cisco Technology, Inc. Method and apparatus for streaming advertisements in a scalable data broadcasting system
US9836540B2 (en) 2014-03-04 2017-12-05 Cisco Technology, Inc. System and method for direct storage access in a content-centric network
US9391896B2 (en) 2014-03-10 2016-07-12 Palo Alto Research Center Incorporated System and method for packet forwarding using a conjunctive normal form strategy in a content-centric network
US9626413B2 (en) 2014-03-10 2017-04-18 Cisco Systems, Inc. System and method for ranking content popularity in a content-centric network
US9473405B2 (en) 2014-03-10 2016-10-18 Palo Alto Research Center Incorporated Concurrent hashes and sub-hashes on data streams
US9407432B2 (en) 2014-03-19 2016-08-02 Palo Alto Research Center Incorporated System and method for efficient and secure distribution of digital content
US9916601B2 (en) 2014-03-21 2018-03-13 Cisco Technology, Inc. Marketplace for presenting advertisements in a scalable data broadcasting system
US9363179B2 (en) 2014-03-26 2016-06-07 Palo Alto Research Center Incorporated Multi-publisher routing protocol for named data networks
US9363086B2 (en) 2014-03-31 2016-06-07 Palo Alto Research Center Incorporated Aggregate signing of data in content centric networking
US9716622B2 (en) 2014-04-01 2017-07-25 Cisco Technology, Inc. System and method for dynamic name configuration in content-centric networks
US10075521B2 (en) 2014-04-07 2018-09-11 Cisco Technology, Inc. Collection synchronization using equality matched network names
US9390289B2 (en) 2014-04-07 2016-07-12 Palo Alto Research Center Incorporated Secure collection synchronization using matched network names
US9473576B2 (en) 2014-04-07 2016-10-18 Palo Alto Research Center Incorporated Service discovery using collection synchronization with exact names
US9451032B2 (en) 2014-04-10 2016-09-20 Palo Alto Research Center Incorporated System and method for simple service discovery in content-centric networks
US9203885B2 (en) 2014-04-28 2015-12-01 Palo Alto Research Center Incorporated Method and apparatus for exchanging bidirectional streams over a content centric network
US9992281B2 (en) 2014-05-01 2018-06-05 Cisco Technology, Inc. Accountable content stores for information centric networks
US9609014B2 (en) 2014-05-22 2017-03-28 Cisco Systems, Inc. Method and apparatus for preventing insertion of malicious content at a named data network router
US9455835B2 (en) 2014-05-23 2016-09-27 Palo Alto Research Center Incorporated System and method for circular link resolution with hash-based names in content-centric networks
US9276751B2 (en) 2014-05-28 2016-03-01 Palo Alto Research Center Incorporated System and method for circular link resolution with computable hash-based names in content-centric networks
US9516144B2 (en) 2014-06-19 2016-12-06 Palo Alto Research Center Incorporated Cut-through forwarding of CCNx message fragments with IP encapsulation
US9537719B2 (en) 2014-06-19 2017-01-03 Palo Alto Research Center Incorporated Method and apparatus for deploying a minimal-cost CCN topology
US9467377B2 (en) 2014-06-19 2016-10-11 Palo Alto Research Center Incorporated Associating consumer states with interests in a content-centric network
US9426113B2 (en) 2014-06-30 2016-08-23 Palo Alto Research Center Incorporated System and method for managing devices over a content centric network
US9699198B2 (en) 2014-07-07 2017-07-04 Cisco Technology, Inc. System and method for parallel secure content bootstrapping in content-centric networks
US9959156B2 (en) 2014-07-17 2018-05-01 Cisco Technology, Inc. Interest return control message
US9621354B2 (en) 2014-07-17 2017-04-11 Cisco Systems, Inc. Reconstructable content objects
US9729616B2 (en) 2014-07-18 2017-08-08 Cisco Technology, Inc. Reputation-based strategy for forwarding and responding to interests over a content centric network
US9590887B2 (en) 2014-07-18 2017-03-07 Cisco Systems, Inc. Method and system for keeping interest alive in a content centric network
US9535968B2 (en) 2014-07-21 2017-01-03 Palo Alto Research Center Incorporated System for distributing nameless objects using self-certifying names
US9882964B2 (en) 2014-08-08 2018-01-30 Cisco Technology, Inc. Explicit strategy feedback in name-based forwarding
US9729662B2 (en) 2014-08-11 2017-08-08 Cisco Technology, Inc. Probabilistic lazy-forwarding technique without validation in a content centric network
US9503365B2 (en) 2014-08-11 2016-11-22 Palo Alto Research Center Incorporated Reputation-based instruction processing over an information centric network
US9391777B2 (en) 2014-08-15 2016-07-12 Palo Alto Research Center Incorporated System and method for performing key resolution over a content centric network
US9800637B2 (en) 2014-08-19 2017-10-24 Cisco Technology, Inc. System and method for all-in-one content stream in content-centric networks
US9467492B2 (en) 2014-08-19 2016-10-11 Palo Alto Research Center Incorporated System and method for reconstructable all-in-one content stream
US9497282B2 (en) 2014-08-27 2016-11-15 Palo Alto Research Center Incorporated Network coding for content-centric network
US10204013B2 (en) 2014-09-03 2019-02-12 Cisco Technology, Inc. System and method for maintaining a distributed and fault-tolerant state over an information centric network
US9553812B2 (en) 2014-09-09 2017-01-24 Palo Alto Research Center Incorporated Interest keep alives at intermediate routers in a CCN
US10069933B2 (en) 2014-10-23 2018-09-04 Cisco Technology, Inc. System and method for creating virtual interfaces based on network characteristics
US9590948B2 (en) 2014-12-15 2017-03-07 Cisco Systems, Inc. CCN routing using hardware-assisted hash tables
US9536059B2 (en) 2014-12-15 2017-01-03 Palo Alto Research Center Incorporated Method and system for verifying renamed content using manifests in a content centric network
US10237189B2 (en) 2014-12-16 2019-03-19 Cisco Technology, Inc. System and method for distance-based interest forwarding
US9846881B2 (en) 2014-12-19 2017-12-19 Palo Alto Research Center Incorporated Frugal user engagement help systems
US10003520B2 (en) 2014-12-22 2018-06-19 Cisco Technology, Inc. System and method for efficient name-based content routing using link-state information in information-centric networks
US9473475B2 (en) 2014-12-22 2016-10-18 Palo Alto Research Center Incorporated Low-cost authenticated signing delegation in content centric networking
US9660825B2 (en) 2014-12-24 2017-05-23 Cisco Technology, Inc. System and method for multi-source multicasting in content-centric networks
US9602596B2 (en) 2015-01-12 2017-03-21 Cisco Systems, Inc. Peer-to-peer sharing in a content centric network
US9832291B2 (en) 2015-01-12 2017-11-28 Cisco Technology, Inc. Auto-configurable transport stack
US9946743B2 (en) 2015-01-12 2018-04-17 Cisco Technology, Inc. Order encoded manifests in a content centric network
US9954795B2 (en) 2015-01-12 2018-04-24 Cisco Technology, Inc. Resource allocation using CCN manifests
US9916457B2 (en) 2015-01-12 2018-03-13 Cisco Technology, Inc. Decoupled name security binding for CCN objects
US9462006B2 (en) 2015-01-21 2016-10-04 Palo Alto Research Center Incorporated Network-layer application-specific trust model
US9552493B2 (en) 2015-02-03 2017-01-24 Palo Alto Research Center Incorporated Access control framework for information centric networking
US10333840B2 (en) 2015-02-06 2019-06-25 Cisco Technology, Inc. System and method for on-demand content exchange with adaptive naming in information-centric networks
US10075401B2 (en) 2015-03-18 2018-09-11 Cisco Technology, Inc. Pending interest table behavior
JP6525727B2 (ja) * 2015-05-21 2019-06-05 キヤノン株式会社 画像処理装置及び方法、及び撮像装置
US10116605B2 (en) 2015-06-22 2018-10-30 Cisco Technology, Inc. Transport stack name scheme and identity management
US10075402B2 (en) 2015-06-24 2018-09-11 Cisco Technology, Inc. Flexible command and control in content centric networks
US10701038B2 (en) 2015-07-27 2020-06-30 Cisco Technology, Inc. Content negotiation in a content centric network
US9986034B2 (en) 2015-08-03 2018-05-29 Cisco Technology, Inc. Transferring state in content centric network stacks
US10610144B2 (en) 2015-08-19 2020-04-07 Palo Alto Research Center Incorporated Interactive remote patient monitoring and condition management intervention system
CN105141711B (zh) * 2015-08-24 2019-03-26 北京息通网络技术有限公司 一种基于大数据分析的对称nat穿越方法及系统
US9832123B2 (en) 2015-09-11 2017-11-28 Cisco Technology, Inc. Network named fragments in a content centric network
US10355999B2 (en) 2015-09-23 2019-07-16 Cisco Technology, Inc. Flow control with network named fragments
US9977809B2 (en) 2015-09-24 2018-05-22 Cisco Technology, Inc. Information and data framework in a content centric network
US10313227B2 (en) 2015-09-24 2019-06-04 Cisco Technology, Inc. System and method for eliminating undetected interest looping in information-centric networks
US10454820B2 (en) 2015-09-29 2019-10-22 Cisco Technology, Inc. System and method for stateless information-centric networking
US10263965B2 (en) 2015-10-16 2019-04-16 Cisco Technology, Inc. Encrypted CCNx
US9794238B2 (en) 2015-10-29 2017-10-17 Cisco Technology, Inc. System for key exchange in a content centric network
US9807205B2 (en) 2015-11-02 2017-10-31 Cisco Technology, Inc. Header compression for CCN messages using dictionary
US10009446B2 (en) 2015-11-02 2018-06-26 Cisco Technology, Inc. Header compression for CCN messages using dictionary learning
US10021222B2 (en) 2015-11-04 2018-07-10 Cisco Technology, Inc. Bit-aligned header compression for CCN messages using dictionary
US10097521B2 (en) 2015-11-20 2018-10-09 Cisco Technology, Inc. Transparent encryption in a content centric network
US9912776B2 (en) 2015-12-02 2018-03-06 Cisco Technology, Inc. Explicit content deletion commands in a content centric network
US10097346B2 (en) 2015-12-09 2018-10-09 Cisco Technology, Inc. Key catalogs in a content centric network
US10078062B2 (en) 2015-12-15 2018-09-18 Palo Alto Research Center Incorporated Device health estimation by combining contextual information with sensor data
US10257271B2 (en) 2016-01-11 2019-04-09 Cisco Technology, Inc. Chandra-Toueg consensus in a content centric network
US9949301B2 (en) 2016-01-20 2018-04-17 Palo Alto Research Center Incorporated Methods for fast, secure and privacy-friendly internet connection discovery in wireless networks
US10305864B2 (en) 2016-01-25 2019-05-28 Cisco Technology, Inc. Method and system for interest encryption in a content centric network
US10043016B2 (en) 2016-02-29 2018-08-07 Cisco Technology, Inc. Method and system for name encryption agreement in a content centric network
US10051071B2 (en) 2016-03-04 2018-08-14 Cisco Technology, Inc. Method and system for collecting historical network information in a content centric network
US10742596B2 (en) 2016-03-04 2020-08-11 Cisco Technology, Inc. Method and system for reducing a collision probability of hash-based names using a publisher identifier
US10003507B2 (en) 2016-03-04 2018-06-19 Cisco Technology, Inc. Transport session state protocol
US10038633B2 (en) 2016-03-04 2018-07-31 Cisco Technology, Inc. Protocol to query for historical network information in a content centric network
US9832116B2 (en) 2016-03-14 2017-11-28 Cisco Technology, Inc. Adjusting entries in a forwarding information base in a content centric network
US10212196B2 (en) 2016-03-16 2019-02-19 Cisco Technology, Inc. Interface discovery and authentication in a name-based network
US10067948B2 (en) 2016-03-18 2018-09-04 Cisco Technology, Inc. Data deduping in content centric networking manifests
US11436656B2 (en) 2016-03-18 2022-09-06 Palo Alto Research Center Incorporated System and method for a real-time egocentric collaborative filter on large datasets
US10091330B2 (en) 2016-03-23 2018-10-02 Cisco Technology, Inc. Interest scheduling by an information and data framework in a content centric network
US10033639B2 (en) 2016-03-25 2018-07-24 Cisco Technology, Inc. System and method for routing packets in a content centric network using anonymous datagrams
US10320760B2 (en) 2016-04-01 2019-06-11 Cisco Technology, Inc. Method and system for mutating and caching content in a content centric network
US9930146B2 (en) 2016-04-04 2018-03-27 Cisco Technology, Inc. System and method for compressing content centric networking messages
US10425503B2 (en) 2016-04-07 2019-09-24 Cisco Technology, Inc. Shared pending interest table in a content centric network
US10027578B2 (en) 2016-04-11 2018-07-17 Cisco Technology, Inc. Method and system for routable prefix queries in a content centric network
US10404450B2 (en) 2016-05-02 2019-09-03 Cisco Technology, Inc. Schematized access control in a content centric network
US10320675B2 (en) 2016-05-04 2019-06-11 Cisco Technology, Inc. System and method for routing packets in a stateless content centric network
US10547589B2 (en) 2016-05-09 2020-01-28 Cisco Technology, Inc. System for implementing a small computer systems interface protocol over a content centric network
CN105827748B (zh) * 2016-05-12 2019-03-15 东莞市南星电子有限公司 一种基于ICE的SIP穿越Symmetric NAT设备的方法
US10084764B2 (en) 2016-05-13 2018-09-25 Cisco Technology, Inc. System for a secure encryption proxy in a content centric network
US10063414B2 (en) 2016-05-13 2018-08-28 Cisco Technology, Inc. Updating a transport stack in a content centric network
US10103989B2 (en) 2016-06-13 2018-10-16 Cisco Technology, Inc. Content object return messages in a content centric network
US10305865B2 (en) 2016-06-21 2019-05-28 Cisco Technology, Inc. Permutation-based content encryption with manifests in a content centric network
US10148572B2 (en) 2016-06-27 2018-12-04 Cisco Technology, Inc. Method and system for interest groups in a content centric network
US10009266B2 (en) 2016-07-05 2018-06-26 Cisco Technology, Inc. Method and system for reference counted pending interest tables in a content centric network
US9992097B2 (en) 2016-07-11 2018-06-05 Cisco Technology, Inc. System and method for piggybacking routing information in interests in a content centric network
US10122624B2 (en) 2016-07-25 2018-11-06 Cisco Technology, Inc. System and method for ephemeral entries in a forwarding information base in a content centric network
US10069729B2 (en) 2016-08-08 2018-09-04 Cisco Technology, Inc. System and method for throttling traffic based on a forwarding information base in a content centric network
US10956412B2 (en) 2016-08-09 2021-03-23 Cisco Technology, Inc. Method and system for conjunctive normal form attribute matching in a content centric network
US10033642B2 (en) 2016-09-19 2018-07-24 Cisco Technology, Inc. System and method for making optimal routing decisions based on device-specific parameters in a content centric network
US10212248B2 (en) 2016-10-03 2019-02-19 Cisco Technology, Inc. Cache management on high availability routers in a content centric network
US10447805B2 (en) 2016-10-10 2019-10-15 Cisco Technology, Inc. Distributed consensus in a content centric network
US10135948B2 (en) 2016-10-31 2018-11-20 Cisco Technology, Inc. System and method for process migration in a content centric network
US10243851B2 (en) 2016-11-21 2019-03-26 Cisco Technology, Inc. System and method for forwarder connection information in a content centric network
CN109218316A (zh) * 2018-09-20 2019-01-15 杭州智块网络科技有限公司 一种nat穿透方法、装置、设备及存储介质
CN109922156A (zh) * 2019-03-20 2019-06-21 深圳市网心科技有限公司 一种数据通信方法及其相关设备
CN112118207B (zh) * 2019-06-20 2021-12-28 华为技术有限公司 数据传输方法、服务器以及电子设备
CN112532757B (zh) * 2019-09-19 2023-11-14 华为技术有限公司 一种nat穿越的方法、设备和系统
CN111600968B (zh) * 2020-03-31 2022-07-05 普联技术有限公司 P2p网络中nat打洞方法、装置、设备及可读存储介质
US20210368360A1 (en) * 2020-05-22 2021-11-25 Qualcomm Incorporated Delayed reconfiguration in wireless systems
CN112637382B (zh) * 2021-01-06 2022-04-26 上海哔哩哔哩科技有限公司 数据发送方法及装置、建立p2p连接的方法及系统

Family Cites Families (244)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SE445786B (sv) * 1984-11-26 1986-07-14 Ericsson Telefon Ab L M Forfarande for att vid radiomottagning undvika att lagra ett meddelande mer en en gang samt mottagare for endamalet
US4843568A (en) * 1986-04-11 1989-06-27 Krueger Myron W Real time perception of and response to the actions of an unencumbered participant/user
US4787051A (en) 1986-05-16 1988-11-22 Tektronix, Inc. Inertial mouse system
US5701427A (en) 1989-09-19 1997-12-23 Digital Equipment Corp. Information transfer arrangement for distributed computer system
DE69130197T2 (de) * 1990-03-05 1999-02-11 Fujitsu Ltd Datenverarbeitungssystem zur nachrichtenübertragung
US5128671A (en) * 1990-04-12 1992-07-07 Ltv Aerospace And Defense Company Control device having multiple degrees of freedom
GB2272310A (en) * 1992-11-07 1994-05-11 Ibm Method of operating a computer in a network.
US5835726A (en) 1993-12-15 1998-11-10 Check Point Software Technologies Ltd. System for securing the flow of and selectively modifying packets in a computer network
US5544325A (en) * 1994-03-21 1996-08-06 International Business Machines Corporation System and method for generating messages for use in transaction networks
US5636216A (en) * 1994-04-08 1997-06-03 Metricom, Inc. Method for translating internet protocol addresses to other distributed network addressing schemes
AU2471995A (en) * 1994-05-05 1995-11-29 Catapult Entertainment, Inc. Network architecture for real-time video games
US5528265A (en) * 1994-07-18 1996-06-18 Harrison; Simon J. Orientation-operated cursor control device
CA2129197C (en) 1994-07-29 1999-11-09 Roger Y.M. Cheung Method and apparatus for connecting a wireless lan to a wired lan
CA2129199C (en) 1994-07-29 1999-07-20 Roger Y.M. Cheung Method and apparatus for bridging wireless lan to a wired lan
AU3461295A (en) * 1994-09-01 1996-03-22 Echelon Corporation Duplicate message detection method and apparatus
SE504846C2 (sv) 1994-09-28 1997-05-12 Jan G Faeger Styrutrustning med ett rörligt styrorgan
US5768531A (en) * 1995-03-27 1998-06-16 Toshiba America Information Systems Apparatus and method for using multiple communication paths in a wireless LAN
US5768382A (en) * 1995-11-22 1998-06-16 Walker Asset Management Limited Partnership Remote-auditing of computer generated outcomes and authenticated biling and access control system using cryptographic and other protocols
US5793763A (en) * 1995-11-03 1998-08-11 Cisco Technology, Inc. Security system for network address translation systems
EP0852034A1 (en) 1996-07-24 1998-07-08 Hewlett-Packard Company, A Delaware Corporation Ordered message reception in a distributed data processing system
US6069896A (en) * 1996-10-15 2000-05-30 Motorola, Inc. Capability addressable network and method therefor
US5898679A (en) * 1996-12-30 1999-04-27 Lucent Technologies Inc. Wireless relay with selective message repeat and method of operation thereof
US6152824A (en) 1997-03-06 2000-11-28 Mpath Interactive, Inc. Online gaming architecture
US5809016A (en) 1997-03-31 1998-09-15 Motorola, Inc. Selective call receiver and method of processing diversity messages
US5987376A (en) * 1997-07-16 1999-11-16 Microsoft Corporation System and method for the distribution and synchronization of data and state information between clients in a distributed processing system
JPH11122301A (ja) * 1997-10-20 1999-04-30 Fujitsu Ltd アドレス変換接続装置
EP0913965A1 (en) 1997-11-03 1999-05-06 Canon Kabushiki Kaisha Reduction of the message traffic in a distributed network
US6128624A (en) * 1997-11-12 2000-10-03 Ncr Corporation Collection and integration of internet and electronic commerce data in a database during web browsing
US6151601A (en) * 1997-11-12 2000-11-21 Ncr Corporation Computer architecture and method for collecting, analyzing and/or transforming internet and/or electronic commerce data for storage into a data storage area
US6151584A (en) * 1997-11-20 2000-11-21 Ncr Corporation Computer architecture and method for validating and collecting and metadata and data about the internet and electronic commerce environments (data discoverer)
FI105753B (fi) 1997-12-31 2000-09-29 Ssh Comm Security Oy Pakettien autentisointimenetelmä verkko-osoitemuutosten ja protokollamuunnosten läsnäollessa
SE513828C2 (sv) * 1998-07-02 2000-11-13 Effnet Group Ab Brandväggsapparat och metod för att kontrollera nätverksdatapakettrafik mellan interna och externa nätverk
US6208649B1 (en) * 1998-03-11 2001-03-27 Cisco Technology, Inc. Derived VLAN mapping technique
US6289358B1 (en) * 1998-04-15 2001-09-11 Inktomi Corporation Delivering alternate versions of objects from an object cache
US6128627A (en) * 1998-04-15 2000-10-03 Inktomi Corporation Consistent data storage in an object cache
US6292880B1 (en) * 1998-04-15 2001-09-18 Inktomi Corporation Alias-free content-indexed object cache
US6128623A (en) * 1998-04-15 2000-10-03 Inktomi Corporation High performance object cache
US6209003B1 (en) * 1998-04-15 2001-03-27 Inktomi Corporation Garbage collection in an object cache
US6012096A (en) * 1998-04-23 2000-01-04 Microsoft Corporation Method and system for peer-to-peer network latency measurement
US6058431A (en) * 1998-04-23 2000-05-02 Lucent Technologies Remote Access Business Unit System and method for network address translation as an external service in the access server of a service provider
US6371852B1 (en) * 1998-04-28 2002-04-16 Acres Gaming Incorporated Method for crediting a player of an electronic gaming device
US6212633B1 (en) * 1998-06-26 2001-04-03 Vlsi Technology, Inc. Secure data communication over a memory-mapped serial communications interface utilizing a distributed firewall
US6260120B1 (en) * 1998-06-29 2001-07-10 Emc Corporation Storage mapping and partitioning among multiple host processors in the presence of login state changes and host controller replacement
JP3145083B2 (ja) * 1998-08-04 2001-03-12 松下電器産業株式会社 伝送システム,帯域管理装置,および帯域管理方法
US6616531B1 (en) 1998-08-25 2003-09-09 Wayne L. Mullins Method and apparatus for playing one game and using elements from the one game to play at least another game
US6212565B1 (en) * 1998-08-26 2001-04-03 Sun Microsystems, Inc. Apparatus and method for improving performance of proxy server arrays that use persistent connections
US6487600B1 (en) 1998-09-12 2002-11-26 Thomas W. Lynch System and method for supporting multimedia communications upon a dynamically configured member network
US6487583B1 (en) 1998-09-15 2002-11-26 Ikimbo, Inc. System and method for information and application distribution
JP3859369B2 (ja) 1998-09-18 2006-12-20 株式会社東芝 メッセージ中継装置及び方法
US6138156A (en) 1998-10-05 2000-10-24 International Business Machines Corporation Selecting and applying content-reducing filters based on dynamic environmental factors
US6389462B1 (en) * 1998-12-16 2002-05-14 Lucent Technologies Inc. Method and apparatus for transparently directing requests for web objects to proxy caches
US6333931B1 (en) * 1998-12-28 2001-12-25 Cisco Technology, Inc. Method and apparatus for interconnecting a circuit-switched telephony network and a packet-switched data network, and applications thereof
US6535511B1 (en) * 1999-01-07 2003-03-18 Cisco Technology, Inc. Method and system for identifying embedded addressing information in a packet for translation between disparate addressing systems
US6667972B1 (en) 1999-01-08 2003-12-23 Cisco Technology, Inc. Method and apparatus providing multi-service connections within a data communications device
KR100937734B1 (ko) * 1999-01-28 2010-01-21 가부시키가이샤 세가 네트워크 게임 시스템
US6636898B1 (en) * 1999-01-29 2003-10-21 International Business Machines Corporation System and method for central management of connections in a virtual private network
US6405104B1 (en) * 1999-03-24 2002-06-11 General Electric Corporation Fault data synchronization via peer-to-peer communications network
US6393292B1 (en) * 1999-04-13 2002-05-21 Ching-Fang Lin Method of transmitting positions data via cellular communication system
EP1049307A1 (en) 1999-04-29 2000-11-02 International Business Machines Corporation Method and system for dispatching client sessions within a cluster of servers connected to the World Wide Web
DE19921589C2 (de) * 1999-05-05 2002-10-24 Siemens Ag Verfahren zum Betrieb eines Datenübertragungssystems
JP2000315198A (ja) 1999-05-06 2000-11-14 Hitachi Ltd 分散処理システム及びその性能モニタリング方法
US6668283B1 (en) 1999-05-21 2003-12-23 Cisco Technology, Inc. ISDN B-channel count limitation
US6393488B1 (en) * 1999-05-27 2002-05-21 3Com Corporation System and method for supporting internet protocol subnets with network address translators
US6978294B1 (en) 2000-03-20 2005-12-20 Invensys Systems, Inc. Peer-to-peer hosting of intelligent field devices
US6640241B1 (en) 1999-07-19 2003-10-28 Groove Networks, Inc. Method and apparatus for activity-based collaboration by a computer system equipped with a communications manager
EP1075112B1 (en) * 1999-08-06 2006-03-08 International Business Machines Corporation Address management in PNNI hierarchical networks
JP2001053901A (ja) 1999-08-11 2001-02-23 Sony Corp 情報通信システム、情報提供装置及び通信装置
US7457279B1 (en) 1999-09-10 2008-11-25 Vertical Communications Acquisition Corp. Method, system, and computer program product for managing routing servers and services
US6553515B1 (en) * 1999-09-10 2003-04-22 Comdial Corporation System, method and computer program product for diagnostic supervision of internet connections
US7123608B1 (en) 1999-09-10 2006-10-17 Array Telecom Corporation Method, system, and computer program product for managing database servers and service
US6375572B1 (en) * 1999-10-04 2002-04-23 Nintendo Co., Ltd. Portable game apparatus with acceleration sensor and information storage medium storing a game progam
US6349210B1 (en) * 1999-11-12 2002-02-19 Itt Manufacturing Enterprises, Inc. Method and apparatus for broadcasting messages in channel reservation communication systems
US6816703B1 (en) 1999-11-30 2004-11-09 Leapfrog Enterprises, Inc. Interactive communications appliance
US6581108B1 (en) * 1999-11-30 2003-06-17 Lucent Technologies Inc. Managing multiple private data networks using network and payload address translation
US7917628B2 (en) * 1999-12-02 2011-03-29 Western Digital Technologies, Inc. Managed peer-to-peer applications, systems and methods for distributed data access and storage
EP1107508A1 (en) * 1999-12-06 2001-06-13 Telefonaktiebolaget Lm Ericsson System, method and computer program product for sending broadcast messages
JP3587113B2 (ja) 2000-01-17 2004-11-10 ヤマハ株式会社 接続設定装置及び媒体
FI109950B (fi) * 2000-01-20 2002-10-31 Nokia Corp Osoitteen saanti
JP2001312484A (ja) * 2000-05-02 2001-11-09 Internatl Business Mach Corp <Ibm> 高速ウェブサーバ選択方法およびシステム
AU2001241605A1 (en) 2000-02-17 2001-09-12 Acclaim Entertainment, Inc. Multi-player computer game, system and method
US7240093B1 (en) * 2000-02-29 2007-07-03 Microsoft Corporation Use of online messaging to facilitate selection of participants in game play
JP4385489B2 (ja) 2000-03-03 2009-12-16 ソニー株式会社 通信システム、通信方法及び通信装置
US6779035B1 (en) * 2000-03-06 2004-08-17 Microsoft Corporation Application programming interface and generalized network address translator for translation of transport-layer sessions
US7043641B1 (en) * 2000-03-08 2006-05-09 Igt Encryption in a secure computerized gaming system
US6353891B1 (en) * 2000-03-20 2002-03-05 3Com Corporation Control channel security for realm specific internet protocol
US6789126B1 (en) * 2000-05-09 2004-09-07 Sun Microsystems, Inc. Addressing message gates in a distributed computing environment
US20020119821A1 (en) 2000-05-12 2002-08-29 Sanjoy Sen System and method for joining a broadband multi-user communication session
US6618757B1 (en) * 2000-05-17 2003-09-09 Nortel Networks Limited System and method for dynamic IP address management
WO2001097485A2 (en) 2000-06-14 2001-12-20 At & T Wireless Services, Inc. Method for providing transparent public addressed networks within private networks
JP2002010321A (ja) 2000-06-20 2002-01-11 Nec Commun Syst Ltd 移動体端末位置情報通知システムおよび位置情報通知方法
US20020002074A1 (en) * 2000-06-30 2002-01-03 Cyop Systems Method for an online player game payment system
WO2002003217A1 (en) 2000-06-30 2002-01-10 Net2Phone System, method, and computer program product for resolving addressing in a network including a network address translator
GB2364466B (en) * 2000-07-04 2002-09-18 Marconi Comm Ltd Communications System
US7103002B2 (en) * 2000-07-12 2006-09-05 Telefonktiebolaget Lm Ericsson (Publ) Communication management in networks having split control planes and user planes
US6701344B1 (en) * 2000-07-31 2004-03-02 The Boeing Company Distributed game environment
US6829634B1 (en) 2000-07-31 2004-12-07 The Boeing Company Broadcasting network
ATE325479T1 (de) 2000-07-31 2006-06-15 Boeing Co Rundsendenetz
US6661799B1 (en) 2000-09-13 2003-12-09 Alcatel Usa Sourcing, L.P. Method and apparatus for facilitating peer-to-peer application communication
US7403980B2 (en) * 2000-11-08 2008-07-22 Sri International Methods and apparatus for scalable, distributed management of virtual private networks
US6641481B1 (en) 2000-11-17 2003-11-04 Microsoft Corporation Simplified matchmaking
GB0028474D0 (en) * 2000-11-22 2001-01-10 Raekanet Ltd Improved computer network architecture and associated method and system
US20030177187A1 (en) 2000-11-27 2003-09-18 Butterfly.Net. Inc. Computing grid for massively multi-player online games and other multi-user immersive persistent-state and session-based applications
US20020107786A1 (en) 2000-11-28 2002-08-08 Truexchange, Inc. Peer-to-peer application for online goods trading
US7168089B2 (en) * 2000-12-07 2007-01-23 Igt Secured virtual network in a gaming environment
US20020075844A1 (en) * 2000-12-15 2002-06-20 Hagen W. Alexander Integrating public and private network resources for optimized broadband wireless access and method
US20020085097A1 (en) * 2000-12-22 2002-07-04 Colmenarez Antonio J. Computer vision-based wireless pointing system
FI110560B (fi) * 2000-12-27 2003-02-14 Nokia Corp Ryhmän muodostaminen langattomille kommunikaatiopäätelaitteille
US7155518B2 (en) * 2001-01-08 2006-12-26 Interactive People Unplugged Ab Extranet workgroup formation across multiple mobile virtual private networks
US7035911B2 (en) * 2001-01-12 2006-04-25 Epicrealm, Licensing Llc Method and system for community data caching
US20020097732A1 (en) * 2001-01-19 2002-07-25 Tom Worster Virtual private network protocol
WO2002057917A2 (en) * 2001-01-22 2002-07-25 Sun Microsystems, Inc. Peer-to-peer network computing platform
US7197565B2 (en) * 2001-01-22 2007-03-27 Sun Microsystems, Inc. System and method of using a pipe advertisement for a peer-to-peer network entity in peer-to-peer presence detection
US7668958B2 (en) * 2001-10-18 2010-02-23 Intel Corporation Method for discovery and routing using a priori knowledge in the form of application programme within mobile AD-HOC networks
US7155515B1 (en) 2001-02-06 2006-12-26 Microsoft Corporation Distributed load balancing for single entry-point systems
US20030115251A1 (en) 2001-02-23 2003-06-19 Fredrickson Jason A. Peer data protocol
US7203841B2 (en) * 2001-03-08 2007-04-10 Igt Encryption in a secure computerized gaming system
EP1374604A2 (en) 2001-03-20 2004-01-02 Koninklijke Philips Electronics N.V. Beacon infrastructure
US7539664B2 (en) 2001-03-26 2009-05-26 International Business Machines Corporation Method and system for operating a rating server based on usage and download patterns within a peer-to-peer network
JP3963690B2 (ja) * 2001-03-27 2007-08-22 富士通株式会社 パケット中継処理装置
US7272636B2 (en) 2001-04-24 2007-09-18 Sun Microsystems, Inc. Peer group name server
US7177950B2 (en) * 2001-04-26 2007-02-13 Microsoft Corporation Synchronization and recovery of peers in a peer to peer environment
WO2003003670A1 (en) * 2001-06-29 2003-01-09 British Telecommunications Public Limited Company Method and apparatus for routing data with support for changing mobility requirements
US7029394B2 (en) * 2001-07-13 2006-04-18 Gameaccount Limited System and method for generating statistics for a user of a gaming application
US7222187B2 (en) * 2001-07-31 2007-05-22 Sun Microsystems, Inc. Distributed trust mechanism for decentralized networks
US20030027634A1 (en) * 2001-08-03 2003-02-06 Matthews William F. Portable wireless game device and method for influencing an application executable from a fixed-location platform
US7120429B2 (en) 2001-08-13 2006-10-10 Qualcomm Inc. System and method for licensing applications on wireless devices over a wireless network
US7017138B2 (en) * 2001-08-15 2006-03-21 National Instruments Corporation Dynamically determining a route through one or more switch devices at program execution time
US6915305B2 (en) * 2001-08-15 2005-07-05 International Business Machines Corporation Restructuring view maintenance system and method
GB2378782B (en) * 2001-08-16 2005-04-13 Sun Microsystems Inc Message brokering
US8065394B2 (en) * 2001-08-20 2011-11-22 Bally Gaming, Inc. Local game-area network method
JP3497489B2 (ja) 2001-08-28 2004-02-16 株式会社スクウェア・エニックス オンラインシステム、オンラインシステムのサーバ装置、プレイヤ情報提供方法、プレイヤ情報提供プログラム、及び記録媒体
US20030051052A1 (en) * 2001-09-13 2003-03-13 Koninklijke Philips Electronics N.V. Addressing scheme for wireless mobile clients
US20030055978A1 (en) * 2001-09-18 2003-03-20 Microsoft Corporation Methods and systems for enabling outside-initiated traffic flows through a network address translator
US7493363B2 (en) * 2001-09-19 2009-02-17 Microsoft Corporation Peer-to-peer group management and method for maintaining peer-to-peer graphs
US7254709B1 (en) * 2001-10-23 2007-08-07 Avanza Technologies, Inc. Managed information transmission of electronic items in a network environment
JP4449288B2 (ja) * 2001-10-31 2010-04-14 ヤマハ株式会社 認証方法およびその装置
JP2003150529A (ja) * 2001-11-19 2003-05-23 Hitachi Ltd 情報交換方法、情報交換端末装置、情報交換サーバ装置、プログラム
US6839541B2 (en) * 2001-12-04 2005-01-04 Illinois Institute Of Technology Technique for establishing a virtual backbone in an ad hoc wireless network
US20030115258A1 (en) * 2001-12-13 2003-06-19 International Business Machines Corporation Time zone difference based locality estimation between web clients and E-business servers
SE522998C2 (sv) * 2001-12-14 2004-03-23 Hotsip Ab Förfarande, gateway och datorprogramprodukt för att sända ett snabbmeddelande mellan två användare
US20030217096A1 (en) 2001-12-14 2003-11-20 Mckelvie Samuel J. Agent based application using data synchronization
US6920501B2 (en) * 2001-12-17 2005-07-19 Ntt Docomo, Inc. Communication socket migration among different devices
JP2003249919A (ja) 2001-12-17 2003-09-05 Fujitsu Ltd 双方向通信方法
US7058718B2 (en) * 2002-01-15 2006-06-06 International Business Machines Corporation Blended SYN cookies
US7407434B2 (en) 2002-01-18 2008-08-05 Case Venture Management, Llc Method and apparatus for a secondary game played in conjunction with a primary game
US7133368B2 (en) * 2002-02-01 2006-11-07 Microsoft Corporation Peer-to-peer method of quality of service (QoS) probing and analysis and infrastructure employing same
US7127613B2 (en) 2002-02-25 2006-10-24 Sun Microsystems, Inc. Secured peer-to-peer network data exchange
US7950996B2 (en) * 2002-02-27 2011-05-31 Igt Methods and devices for gaming account management
US7398388B2 (en) * 2002-02-28 2008-07-08 Hewlett-Packard Development Company, L.P. Increasing peer privacy
US20030162556A1 (en) 2002-02-28 2003-08-28 Libes Michael A. Method and system for communication between two wireless-enabled devices
US7130921B2 (en) 2002-03-15 2006-10-31 International Business Machines Corporation Centrally enhanced peer-to-peer resource sharing method and apparatus
US20030182428A1 (en) 2002-03-19 2003-09-25 Jiang Li Peer-to-peer (P2P) communication system
JP2003281140A (ja) 2002-03-20 2003-10-03 Hitachi Ltd コンテンツ配信方法および配信システム
US7512649B2 (en) 2002-03-22 2009-03-31 Sun Microsytems, Inc. Distributed identities
US7174382B2 (en) * 2002-04-09 2007-02-06 Hewlett-Packard Development Company, L.P. Interest-based connections in peer-to-peer networks
US7676579B2 (en) * 2002-05-13 2010-03-09 Sony Computer Entertainment America Inc. Peer to peer network communication
US20030217135A1 (en) 2002-05-17 2003-11-20 Masayuki Chatani Dynamic player management
US20030227939A1 (en) 2002-06-05 2003-12-11 Satoru Yukie Establishing a connection using a hybrid receiver
EP1510083A1 (en) * 2002-06-06 2005-03-02 MOTOROLA INC., A Corporation of the state of Delaware Protocol and structure for mobile nodes in a self-organizing communication network
US7565537B2 (en) 2002-06-10 2009-07-21 Microsoft Corporation Secure key exchange with mutual authentication
US7370194B2 (en) 2002-06-10 2008-05-06 Microsoft Corporation Security gateway for online console-based gaming
US7803052B2 (en) 2002-06-28 2010-09-28 Microsoft Corporation Discovery and distribution of game session information
US20040007618A1 (en) * 2002-07-10 2004-01-15 Scott Oram Prepaid credit card method
US7111044B2 (en) * 2002-07-17 2006-09-19 Fastmobile, Inc. Method and system for displaying group chat sessions on wireless mobile terminals
US7188089B2 (en) 2002-07-26 2007-03-06 Way Systems, Inc. System and method for securely storing, generating, transferring and printing electronic prepaid vouchers
US9497168B2 (en) * 2002-07-30 2016-11-15 Avaya Inc. Method and apparatus for supporting communications between a computing device within a network and an external computing device
US8224985B2 (en) * 2005-10-04 2012-07-17 Sony Computer Entertainment Inc. Peer-to-peer communication traversing symmetric network address translators
US7016942B1 (en) * 2002-08-05 2006-03-21 Gary Odom Dynamic hosting
US7392375B2 (en) * 2002-09-18 2008-06-24 Colligo Networks, Inc. Peer-to-peer authentication for real-time collaboration
US7918734B2 (en) * 2002-09-30 2011-04-05 Time Warner Cable, A Division Of Time Warner Entertainment Company, L.P. Gaming server providing on demand quality of service
JP3824568B2 (ja) 2002-10-16 2006-09-20 任天堂株式会社 無線通信ゲームシステム
JP2004136009A (ja) * 2002-10-21 2004-05-13 Nintendo Co Ltd 無線通信ゲームシステム
JP3830442B2 (ja) 2002-10-22 2006-10-04 任天堂株式会社 無線通信ゲームシステム、ゲーム装置、情報記憶媒体、および、プログラム
US20040082383A1 (en) 2002-10-24 2004-04-29 Motorola, Inc Methodology and wireless device for interactive gaming
US6909721B2 (en) * 2002-10-31 2005-06-21 Nokia Corporation Device detection and service discovery system and method for a mobile ad hoc communications network
US7213047B2 (en) * 2002-10-31 2007-05-01 Sun Microsystems, Inc. Peer trust evaluation using mobile agents in peer-to-peer networks
US7263070B1 (en) 2002-11-05 2007-08-28 Sprint Spectrum L.P. Method and system for automating node configuration to facilitate peer-to-peer communication
US20040103179A1 (en) * 2002-11-26 2004-05-27 Alcatel Canada Inc. Topology management of dual ring network
US7216359B2 (en) * 2002-12-19 2007-05-08 International Business Machines Corporation Secure communication overlay using IP address hopping
US7292585B1 (en) 2002-12-20 2007-11-06 Symantec Operating Corporation System and method for storing and utilizing routing information in a computer network
US20040133631A1 (en) * 2003-01-06 2004-07-08 Hagen David A. Communication system
WO2004063843A2 (en) 2003-01-15 2004-07-29 Matsushita Electric Industrial Co., Ltd. PEER-TO-PEER (P2P) CONNECTION DESPITE NETWORK ADDRESS TRANSLATOR (NATs) AT BOTH ENDS
US7899932B2 (en) * 2003-01-15 2011-03-01 Panasonic Corporation Relayed network address translator (NAT) traversal
US7729946B2 (en) * 2003-01-24 2010-06-01 Massive Incorporated Online game advertising system
US7774495B2 (en) 2003-02-13 2010-08-10 Oracle America, Inc, Infrastructure for accessing a peer-to-peer network environment
US7096006B2 (en) 2003-03-24 2006-08-22 Inventec Appliances Corp. Method of playing instant game on wireless network terminal device
US6914700B2 (en) 2003-04-17 2005-07-05 Lexmark International, Inc. Method for reducing migrating residual error in error diffusion halftoning
US20040212589A1 (en) 2003-04-24 2004-10-28 Hall Deirdre M. System and method for fusing and displaying multiple degree of freedom positional input data from multiple input sources
US7426637B2 (en) 2003-05-21 2008-09-16 Music Public Broadcasting, Inc. Method and system for controlled media sharing in a network
US7577750B2 (en) 2003-05-23 2009-08-18 Microsoft Corporation Systems and methods for peer-to-peer collaboration to enhance multimedia streaming
US20040243665A1 (en) 2003-05-27 2004-12-02 Outi Markki System and method for services provision in a peer-to-peer environment
US20040254977A1 (en) 2003-06-13 2004-12-16 Microsoft Corporation Extensible peer-to-peer graphing messages
US7685288B2 (en) 2003-06-30 2010-03-23 Microsoft Corporation Ad-hoc service discovery protocol
US20050007964A1 (en) * 2003-07-01 2005-01-13 Vincent Falco Peer-to-peer network heartbeat server and associated methods
US20050015626A1 (en) * 2003-07-15 2005-01-20 Chasin C. Scott System and method for identifying and filtering junk e-mail messages or spam based on URL content
US7451490B2 (en) * 2003-08-01 2008-11-11 Microsoft Corporation Media data protection with secure installer
US7463886B2 (en) * 2003-09-16 2008-12-09 Spyder Navigations L.L.C. Method and system for supporting residual energy awareness in an ad hoc wireless communications network
US20050063409A1 (en) * 2003-09-18 2005-03-24 Nokia Corporation Method and apparatus for managing multicast delivery to mobile devices involving a plurality of different networks
US20050064939A1 (en) * 2003-09-19 2005-03-24 Mcsheffrey Brendan T. Electronic mail gaming system
US7325034B2 (en) * 2003-09-24 2008-01-29 International Business Machines Corporation Method and apparatus for scalable peer-to-peer inquiries in a network of untrusted parties
US20050080858A1 (en) * 2003-10-10 2005-04-14 Microsoft Corporation System and method for searching a peer-to-peer network
US8010633B2 (en) * 2003-10-20 2011-08-30 Sony Computer Entertainment America Llc Multiple peer-to-peer relay networks
US7596633B2 (en) * 2003-10-20 2009-09-29 Sony Computer Entertainment America Inc. Island recovery in a peer-to-peer relay network
US7610402B2 (en) * 2003-10-20 2009-10-27 Sony Computer Entertainment America Inc. Spectators in a peer-to-peer relay network
US7627678B2 (en) * 2003-10-20 2009-12-01 Sony Computer Entertainment America Inc. Connecting a peer in a peer-to-peer relay network
US7685301B2 (en) * 2003-10-20 2010-03-23 Sony Computer Entertainment America Inc. Redundancy lists in a peer-to-peer relay network
JP4389886B2 (ja) 2003-10-27 2009-12-24 パナソニック株式会社 通信システム、情報処理装置、サーバ、および通信方法
US8234383B2 (en) * 2003-11-07 2012-07-31 Panasonic Corporation Bubble packet port identification using detection packets
JP4269226B2 (ja) * 2003-11-14 2009-05-27 ソニー株式会社 情報通信システムおよび方法、情報処理装置および方法、プログラム並びに記録媒体
DE10353925B4 (de) * 2003-11-18 2009-12-24 Nec Europe Ltd. Verfahren zum Austausch von Daten zwischen zwei Hosts
US7649895B2 (en) * 2003-12-30 2010-01-19 Airwide Solutions Inc. Apparatus and method for routing multimedia messages between a user agent and multiple multimedia message service centers
JP2007526689A (ja) 2004-02-19 2007-09-13 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 第1のコンピュータ・ネットワークから第2のコンピュータ・ネットワークへの通信セッションの起動
WO2005084244A2 (en) 2004-03-01 2005-09-15 Modstream, Llc System and method for facilitating fund-raising through online digital media content sales
EP1723533A1 (en) 2004-03-09 2006-11-22 Clique Communications Llc System and method for peer-to-peer connection of clients behind symmetric firewalls
US7747279B2 (en) 2004-03-30 2010-06-29 Sony Corporation Interface negotiation
US20070213124A1 (en) 2004-04-07 2007-09-13 Walker Digital, Llc Methods, systems and apparatus for facilitating cashout options at a gaming device
US7536467B2 (en) * 2004-04-20 2009-05-19 Microsoft Corporation Peer-to-peer (P2P) mobility system, and method
US20060084504A1 (en) * 2004-04-30 2006-04-20 Chan Andy K Wireless communication systems
JP3761091B2 (ja) * 2004-05-07 2006-03-29 株式会社ソニー・コンピュータエンタテインメント アプリケーション実行方法、ファイルデータダウンロード方法、ファイルデータアップロード方法、通信方法および無線通信端末装置
JP4033302B2 (ja) 2004-05-07 2008-01-16 株式会社ソニー・コンピュータエンタテインメント 無線通信端末装置、無線インタフェース装置および無線ネットワーク参加方法
JP3698711B1 (ja) 2004-05-07 2005-09-21 株式会社ソニー・コンピュータエンタテインメント ネットワーク識別子設定方法、通信方法および無線通信端末装置
US7620033B2 (en) * 2004-05-21 2009-11-17 Alcatel-Lucent Usa Inc. Method for optimal path selection in traversal of packets through network address translators
JP4274050B2 (ja) 2004-06-03 2009-06-03 ソニー株式会社 情報処理装置および方法、記録媒体、並びにプログラム
US7778187B2 (en) * 2004-06-29 2010-08-17 Damaka, Inc. System and method for dynamic stability in a peer-to-peer hybrid communications network
WO2006031766A2 (en) * 2004-09-13 2006-03-23 Manzo Anthony V Gaming advertisement systems and methods
US7455586B2 (en) * 2004-09-21 2008-11-25 Igt Method and system for gaming and brand association
US7429215B2 (en) 2004-09-24 2008-09-30 Cryptologic Inc. System and method for providing side wagering in multi-player wager-based games
US7543064B2 (en) * 2004-09-30 2009-06-02 Logitech Europe S.A. Multiplayer peer-to-peer connection across firewalls and network address translators using a single local port on the local host
JP4480535B2 (ja) * 2004-09-30 2010-06-16 株式会社アドイン研究所 トンネル装置、中継装置、端末装置、呼制御システム、ip電話システム、会議装置、これらの制御方法及びプログラム
US8090845B2 (en) * 2004-10-18 2012-01-03 Audiocodes Texas, Inc. Apparatus and method for firewall traversal
US7558862B1 (en) * 2004-12-09 2009-07-07 LogMeln, Inc. Method and apparatus for remotely controlling a computer with peer-to-peer command and data transfer
JP4741964B2 (ja) * 2005-03-18 2011-08-10 パナソニック株式会社 通信装置、通信システム及び通信方法
US7522618B2 (en) * 2005-03-18 2009-04-21 Panasonic Corporation Communication apparatus, communication system and communication method
US20070061460A1 (en) * 2005-03-24 2007-03-15 Jumpnode Systems,Llc Remote access
US8019986B2 (en) * 2005-08-12 2011-09-13 Comcast Cable Holdings, Llc Method and system for booting, provisioning and activating hardware and software clients
JP4331154B2 (ja) * 2005-09-29 2009-09-16 パナソニック株式会社 情報処理システム、トンネル通信装置、及びトンネル通信方法
US20070091922A1 (en) 2005-10-21 2007-04-26 Steven Elliot Method and apparatus for adaptive bandwidth control with a bandwidth guarantee
US9047310B2 (en) * 2006-02-22 2015-06-02 Microsoft Technology Licensing, Llc Reliable, efficient peer-to-peer storage
US8347341B2 (en) * 2006-03-16 2013-01-01 Time Warner Cable Inc. Methods and apparatus for centralized content and data delivery
JP2008147738A (ja) 2006-12-06 2008-06-26 Toshiba Corp 通信方法、通信システム、機器、並びに端末
US8023432B2 (en) * 2007-03-12 2011-09-20 Microsoft Corporation Cost reduction of NAT connection state keep-alive
US7996543B2 (en) * 2007-08-16 2011-08-09 Xcastlabs Client-to-client direct RTP exchange in a managed client-server network
US7995475B2 (en) 2007-10-31 2011-08-09 Architecture Technology Corporation Reliable transport protocol providing receiver-based congestion control
US7856506B2 (en) 2008-03-05 2010-12-21 Sony Computer Entertainment Inc. Traversal of symmetric network address translator for multiple simultaneous connections

Also Published As

Publication number Publication date
US20090228593A1 (en) 2009-09-10
EP2255497B1 (en) 2013-10-02
WO2009111205A3 (en) 2009-11-12
US8930545B2 (en) 2015-01-06
US7856506B2 (en) 2010-12-21
KR101139675B1 (ko) 2012-05-21
CN101965712B (zh) 2014-03-05
US20110035501A1 (en) 2011-02-10
US20150120918A1 (en) 2015-04-30
CN102984290A (zh) 2013-03-20
EP2255497A4 (en) 2012-03-28
US8015300B2 (en) 2011-09-06
KR20100117651A (ko) 2010-11-03
WO2009111205A2 (en) 2009-09-11
CN101965712A (zh) 2011-02-02
US11140053B2 (en) 2021-10-05
US20110317705A1 (en) 2011-12-29
EP2255497A2 (en) 2010-12-01
CN102984290B (zh) 2015-08-19
JP2011514100A (ja) 2011-04-28

Similar Documents

Publication Publication Date Title
JP4918163B2 (ja) 複数同時接続のためのシンメトリックnatの通過
US8224985B2 (en) Peer-to-peer communication traversing symmetric network address translators
USRE47566E1 (en) NAT traversal for mobile network devices
US20130308628A1 (en) Nat traversal for voip
CN100521663C (zh) 点对点通信中穿越网络地址转换的方法
WO2020248963A1 (zh) 一种建立端到端网络连接的方法、装置及网络系统
TWI538449B (zh) 穿透網路位址轉換的方法、電腦可讀取媒體與連線中介系統
JP2009206657A (ja) 端末装置、nat越え方法、及びプログラム
JP6387605B2 (ja) 通信システム及び通信方法
US10673813B2 (en) Method for NAT traversal in VPN
Tseng et al. Can: A context-aware NAT traversal scheme
US9042376B2 (en) Traversal method for ICMP-sensitive NAT
CN114598532B (zh) 连接建立方法、装置、电子设备和存储介质
Jia PFQDN: SDN-and DNS-Assisted Transparent Communications among Behind-NAT Networks
JP2008205676A (ja) 情報処理システム、情報処理装置、情報処理方法、及び情報処理プログラム
CN112019641A (zh) 数据传输方法和装置
KR20100059739A (ko) IPv4/IPv6 연동 게이트웨이
JP2006261867A (ja) ネットワーク、ルータ装置及びそれらに用いるプライベートアドレス間通信方法並びにそのプログラム
TWI559719B (zh) Point-to-point connection through the symmetric network address translation of the network communication system
JP6331421B2 (ja) 通信システム及びサーバ

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111214

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20111214

TRDD Decision of grant or rejection written
A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20120104

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120117

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

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

Free format text: PAYMENT UNTIL: 20150203

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 4918163

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

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