KR20100117651A - 동시 다중 연결을 위한 대칭형 네트워크 주소 변환기 통과 방법 - Google Patents

동시 다중 연결을 위한 대칭형 네트워크 주소 변환기 통과 방법 Download PDF

Info

Publication number
KR20100117651A
KR20100117651A KR20107019848A KR20107019848A KR20100117651A KR 20100117651 A KR20100117651 A KR 20100117651A KR 20107019848 A KR20107019848 A KR 20107019848A KR 20107019848 A KR20107019848 A KR 20107019848A KR 20100117651 A KR20100117651 A KR 20100117651A
Authority
KR
South Korea
Prior art keywords
node
port
nat
addresses
list
Prior art date
Application number
KR20107019848A
Other languages
English (en)
Other versions
KR101139675B1 (ko
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 KR20100117651A publication Critical patent/KR20100117651A/ko
Application granted granted Critical
Publication of KR101139675B1 publication Critical patent/KR101139675B1/ko

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)

Abstract

NAT 통과 시, 대칭형 NAT 뒤에 있는 노드의 다중 연결을 다루는 방법이 개시된다. 포트 추측과정 후, 임계 시간창들을 직렬화시킴으로써, 대칭형 NAT 통과 시 발생하는 연결 실패 가능성을 낮출 수 있다. 제 1 연결의 포트 추측 과정이 시작되면, 잇따른 연결을 위한 포트 추측은 제 1 연결의 연결성 체크가 시작할 때 까지 지연될 수 있다. 이러한 과정은 다른 노드들로의 동시 다중 연결을 위한 NAT 통과를 다루도록 다시 수행된다.

Description

동시 다중 연결을 위한 대칭형 네트워크 주소 변환기 통과 방법 {Traversal of symmetric network address translator for multiple simultaneous connections}
본 발명의 실시예들은 컴퓨터 네트워크와 관련된 것이고, 특히 컴퓨터 네트워크들 상의 대칭형 네트워크 주소 변환기들을 가로지르는 피어 투 피어 통신에 관한 것이다.
NAT(Network Address Translation) 특성을 가진 라우터를 사용하면 외부 네트워크(external network)에서 내부 네트워크(internal network)를 접속하는데 있어서 방해가 될 수 있다. 특히, 이것은 인터넷 전화(voice communication over the Internet(VoIP) 및/또는 온라인 게임 등과 같은 피어 투 피어 응용프로그램들에게 문제가 될 수 있다. NAT는 근거리 통신망(local area network; LAN)이 내부 소통(traffic)을 위한 한 세트의 사설 IP 주소들과 외부 소통(traffic)을 위한 제 2 세트의 전역 IP 주소들(global IP addresses)을 사용하도록 하는 인터넷 표준 방식이다. NAT 기능(NAT capability)을 구비하는 노드는 주로 "NAT 박스"로 불린다.
NAT는 두 개의 네트워크들 사이 네트워크 (IP) 주소를 변환한다. 네트워크 주소 포트 변환기(Network Address port Translation; NAPT)는 IP 주소 뿐만 아니라, 전송 계층(transport layer) 프로토콜의 포트 번호들도 변환한다. NAT 또는 NAPT는 좋은 특성들을 가지고 있지만, 중요한 부수 효과(side effect)를 가지고 있다. IP 주소(그리고 포트 번호)가 동적으로 변환할 경우, 외부 네트워크에 있는 노드들은 내부 네트워크에 있는 노드와 통신하기 위한 NAT에 있는 IP 주소 (그리고 포트 번호)를 미리 알 수 없게 된다. 안타깝게도, 현재 시장에 출시된 일반 가정 또는 SOHO 라우터들에 있는 NAT의 가장 공통된 문제점이 이것이다.
NAT는 일반적으로 풀 콘(Full Cone), 제한적 콘(Restricted Cone), 포트 제한적 콘(Port Restricted Cone), 및 대칭형 (Symmetrical)으로 분류될 수 있다. 풀 콘 NAT는 같은 내부 IP 주소 및 포트에서 온 모든 요청들을 같은 외부 IP 주소 및 포트에 매핑한다. 나아가, 외부 호스트(external host)는 매핑된 외부 주소에 패킷을 전송하여 풀 콘 NAT를 통해 내부 호스트(internal host)로 패킷을 송신할 수 있다. 제한적 콘 NAT는 같은 내부 IP 주소 및 포트로부터 수신한 모든 요청들을 같은 외부 IP 주소 및 포트에 매핑한다. 한편, 풀 콘 NAT와는 달리, 'X'라는 IP 주소를 가진 외부 호스트는 내부 호스트가 예전에 'X'라는 IP 주소로 패킷을 송신했던 경우에만, 내부 호스트에게 패킷을 보낼 수 있다. 포트 제한적 콘 NAT는 제한적 콘 NAT와 유사하지만, 추가적으로 포트 번호들을 사용해서 제한한다. 자세하게는, 내부 호스트가 IP 주소 'X'와 포트 번호 'P'로 예전에 패킷을 보낸 경우에만, 발신지 IP 주소 'X'와 발신지 포트 번호 'P'를 가진 외부 호스트가 내부 호스트에게 패킷을 보낼 수 있다.
대칭형 NAT에 있어서, 같은 내부 IP 주소 및 포트에서 특정 목적지 IP 주소 및 포트로 향하는 모든 요청들은 같은 외부 IP 주소 및 포트에 매핑된다. 같은 호스트가 같은 발신지 주소 및 포트를 가진 패킷을 다른 목적지로 송신하면, 다른 매핑이 사용된다. 나아가, 패킷을 수신한 외부 호스트만이 UDP 패킷을 내부 호스트에게로 보낼 수 있다. 대칭형 NAT는 통과하는데(traverse) 가장 문제가 되는 NAT 종류이다. 대칭형 NAT를 통과하는 기술인 '포트 예측(Port Prediction)' 기술은 본 명세서에 참조로 포함된 미국 특허 공개 공보 20070076729A1에 상세히 서술되었다. 이러한 종류의 대칭형 NAT 통과 방법에서 제 1 노드는 대칭형인 제 1 NAT 뒤에 있고, 제 2 노드는 제 2 NAT 뒤에 있다. 제 1 노드는 제 1 NAT에 있는 예측된 전송 주소들 리스트를 구성하고, 예측된 전송 주소들 리스트를 포함하는 메시지를 제 2 노드로 전송한다. 제 2 노드와의 연결성(connectivity) 체크는 예측된 전송 주소들을 사용해서 체크할 수 있다.
예측된 바로는 NAT들 중 18%가 대칭형이며, 포트 예측법을 사용하지 않으면, 연결 실패율이 10% 이상으로 추측된다. NAT 통과를 요구하는 응용프로그램들은 64 개의 동시 연결을 필요로 할 수 있다. 포트 예측 기술이 이러한 응용프로그램들에게 유용할 지는 명확하지 않다.
본 발명의 실시예들은 이러한 맥락 속에서 발명되었다.
본 출원은 2008년 3월 5일에 출원되고 본 출원인에게 양도된 미국 특허 출원 12/043,080을 기초로 우선권 주장을 하는 출원이다. 이 우선권 주장 기초 출원의 기재 내용 전부는 본 명세서에 참조로서 기재되어 있는 것으로 한다.
본 발명의 설명은 하기 상세한 설명과 첨부된 도면들과 함께 고려될 때 빠르게 이해될 수 있을 것이다.
도 1a 및 1b은 포트 추측벅을 사용한 NAT 통과 방법을 도시하는 메시지 순차도;
도 2는 본 발명의 실시예에 따른 변형된 포트 추측 기술을 도시하는 타이밍도(timing diagram);
도 3은 본 발명의 실시예에 따른 두 개의 노드들 사이의 NAT 통과를 위한 시스템을 도시하는 개략적 구성도;
도 4는 본 발명의 실시예에 따른 두 개의 노드들 사이의 NAT 통과방법을 도시하는 흐름도;
도 5는 동시 추측 문제를 도시하고 네트워크를 통해 통신하는 세 개의 노드들의 개략적 구성도; 및
도 6은 본 발명의 실시예에 따른 포트 추측 기술 실행을 위해 구성된 노드의 개략적 구성도이다.
아래 상세한 설명이 이해를 돕기 위해 다수의 특정 예들을 서술하였지만, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명의 기술적 사상 내에서 많은 변형예들을 인지할 것이다. 따라서, 하기 서술된 본 발명의 실시예들은 청구된 발명에 대해 어떠한 일반성을 잃지 않고, 청구된 발명을 한정시키지 않으며 개진된다.
포트 추측 기술은 대칭형 NAT를 통과(traverse)하기 위해 사용된다. 대칭형 NAT 뒤에 있는 노드가 다수의 원격 노드들과의 연결을 단번에 시도할 경우, 추측이 실패할 확률이 높다. 본 발명의 실시예들은 이전 요청이 연결성 체크 단계에 이를 때까지 새로운 요청들을 보류해서, 동시에 포트가 추측됨으로써 연결이 실패되지 않게 한다. 이는 노드가 포트 추측에는 아무런 지장을 주지 않고, 대칭형 NAT를 통해 다수의 동시 연결을 갖도록 한다.
하기 전술된 용어들은 하기 표 1에 서술된 의미로 본 명세서에서 사용된다.
NAT된 노드(natted node) NAT 뒤에 있는 노드
클라이언트 서버 모든 클라이언트들이 중앙 서버에 연결된 네트워크 구조 모델 (예. 웹 (HTTP) 서비스, 등)
피어 투 피어 중앙 서버에 의지하지 않는 네트워크 구조. 각각의 클라이언트(피어)는 직접적으로 다른 피어들에 연결된다. (예. DHT, VoIP, 파일 공유 시스템, 등)
전송 주소 IP 주소 및 포트 번호 세트
인터넷 전화(Voice over IP;VoIP) 인터넷 또는 다른 IP 네트워크를 통해 대화가 전달되는 것을 가능케 하는 기술
하기 전술된 약어들은 하기 표 2에 서술된 의미를 가진다.
DHT 분산 해쉬 테이블(distributed hash table) (예. 코드 (Chord))
HTTP 하이퍼텍스트 전송 프로토콜 (Hyper Text Transfer Protocol)
IETF 인터넷 엔지니어링 테스크 포스 (Internet Engineering Task Force)
LAN 근거리 통신망(Local Area Network)
NAT 네트워크 주소 변환기 (Network Address Translator)(RFC 3022)
NAPT 네트워크 주소 포트 변환기 (Network Address Port Translation)(RFC 3022)
SIP 세션 초기화 프로토콜 (Session Initiation Protocol)(RFC 3261)
SSP 세션 설정 프로토콜 (Session Setup Protocol)
SOHO 소규모 사무실 및 홈 오피스 (Small Office and Home Office)
STUN NAT를 위한 세션 통과 유틸리티 (Session Traversal Utility for NAT) (예전에는 "UDP의 NAT 단순 통과(Simple Traversal of UDP through NAT)"로 알려짐
TURN 중계 NAT를 사용하는 통과 방법 (Traversal Using Relay NAT)
VoIP 인터넷 전화(Voice over IP)
포트 추측 실패의 근본적인 문제는 도 1a 및 도 1b를 참조하여 이해될 수 있다. 도 1a는 제 1 노드(2)가 대칭형 NAT(미도시) 뒤에 있을 때의 NAT 통과 방법을 도시하는 기본적 흐름도이다. 제 2 노드(4)와 통신을 시작하기 위해서, 제 1 노드(2)는 STUN 서버(6)에 바인딩 요청(binding request)(10)을 송신한다. 이에 응하여, STUN 서버(6)는 대칭형 NAT로부터의 주소 정보(12)를 제 1 노드(2)로 보낸다. 제 1 노드(2)는 주소 정보(12)를 사용하고 포트를 추측해서 포트 번호들을 포함하는 후보 주소들(candidate addresses)의 리스트를 구성한다. 제 1 노드(2)는 리스트와 함께 연결 요청(14)을 신호 서버(signaling server)(8)를 통해 제 2 노드(4)에게 전달 할 수 있다. 제 2 노드(4) 또한 STUN 서버(6)에게 바인딩 요청(16)을 송신하고 이에 응하여 주소 정보(18)를 수신할 수 있다. 제 2 노드(4)는 주소 정보(18)를 사용해서 제 2 노드(4)의 후보 주소들 리스트를 생성하고 제 1 노드(2)에게 리스트를 송신할 수 있다. 제 1 및 제 2 노드들은 체크 패킷들(22, 24)을 송신해서 연결성 체크들을 수행할 수 있다.
임계 시간창(critical time window)(TC1)은 제 1 노드(2)의 바인딩 요청(10)을 송신할 때부터 제 1의 체크 패킷들(22)을 전송할 때까지 존재한다. 이 시간 동안, 제 1 노드(2)는 바인딩 요청(10)에 응해서 STUN 서버(4)로부터 수신한 주소 정보(12)에 근거하여 포트를 추측한다. 임계 시간동안 주소 정보가 바뀌게 되면, 포트를 추측하는데 실패할 수 있다. 제 1 노드(2)가 제 3 노드(미도시)와의 통신을 위한 다른 바인딩 요청을 시작하면, 주소 정보가 바뀔 수 있다. 제 2 노드(4)의 임계 시간창(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)은 노드 A와의 연결을 시도하는 제 1 세션(32)을 시작할 수 있다. 제 1 세션(32)은 먼저 바인딩 요청을 시작으로 연결을 시도(negotiates)하고, 임시 응답을 수신하고 난 후, 연결성 체크를 한다. 그러나, 임계 시간창(TC) 내에서 응용프로그램(30)이 노드 B와 통신을 시도하는 제 2 세션(34)을 시작한다고 가정한다. 제 2 세션(34)을 위한 연결 시도(negotiation)의 일부로, 새로운 NAT 바인딩 요청이 STUN 서버로 송신될 것이다. 이는 NAT의 지정된 포트(port assignment)가 바뀌게한다. 한편, 제 1 세션(32)은 노드 A와의 통신을 위해 포트를 추측하는데 있어서, 이전에 지정된 포트에 의지하고 있다. 그러므로, 제 1 세션(32)을 위해 포트를 추측하는데 실패할 수 있고, 제 1 세션은 소정의 미리 정해진 타임아웃(timeout) 시간이 지나면 종료될 것이다. 종래의 포트 추측 방법들이 두드러지게 포트를 추측하는데 실패했지만, 상기 전술된 그 문제의 본성은 일반적으로 인지되지 못했다.
본 발명의 실시예들은 단번에 다수의 연결을 성립하면서, NAT 통과 시도(negotiation) 단계 동안, '임계 창들'을 직렬화(serializing)시켜서, 다수의 포트 추측 과정에 있는 문제들을 극복한다. 멀티 플레이어 온라인 게임 응용프로그램들 같은 특정의 응용프로그램들은 성립된 다중 피어 투 피어 연결들을 지원할 수 있다.
본 발명의 실시예에 따르면, 임계 시간창을 직렬화시키는 것은 네트워크를 통해 두 개 이상의 다른 노드들과의 피어 투 피어 연결의 시작을 시도하는 대칭형 NAT 뒤에 있는 노드에서 실행될 수 있다. 특히, 제 1 노드는 제 2 노드와의 통신 세션을 시작하기 위해 포트를 추측하는 과정을 수행하고, 대칭형 NAT에 있는 추측된 전송 주소들의 리스트를 구성하고, 그 다음 추측된 전송 주소들의 리스트를 포함하는 연결 요청 메시지를 제 2 노드에게 전송할 수 있다. 연결 요청 메시지에 대한 임시 응답을 수신하고, 제 1 노드는 예를 들어 테스트 패킷들을 전송함으로써, 추측된 전송 주소들을 사용해서 제 1 노드 및 제 2 노드 사이의 연결성을 체크할 수 있다. 연결성 체크가 시작되기 전까지 제 1 노드는 제 1 노드와 제 3 노드 사이의 통신을 위해 포트를 추측하는 과정을 연기해서, 임계 시간창을 직렬화시킬 수 있다.
유사한 방식으로 임계 시간창을 직렬화시키는 단계는 한 개 이상의 다른 노드들과 NAT 통과를 시도하는 동안 네트워크를 통해 피어 투 피어 연결을 시작하는 연결 요청을 수신한 대칭형 NAT 뒤에 있는 노드에서 실행될 수 있다. 이러한 노드가 다른 노드에게서 연결 요청 메시지를 수신하면, 포트 추측 과정을 실행하고, 추측된 주소들의 리스트와 함께 연결 요청 메시지에 대한 임시 응답을 전송하고, 연결성을 체크할 수 있다. 추가적인 노드와의 통신을 위해 포트를 추측하는 과정은 연결성 체크가 시작될 때까지 지연될 것이다.
구체적으로, 도 2의 타이밍도에 도시된 바와 같이, 제 1 노드(2)는 동일한 시간에 N 개의 연결 요청들(R1, R2,..., RN)을 생성하거나 수신할 수 있다. 제 1 요청(R1)은 도 1a를 참조하여 상기에 설명된 바와 같이 처리될 수 있다. 그러나, 추후 요청들(subsequent requests)(R2,..., RN)은 생성되거나 수신된 순서에 따라 직렬 방식으로 대기한다(queued). 구체적으로, 이후의 요청들 각각은 포트 추측 과정을 시작하기 전에 이전 요청 각각의 임계 시간창(TC)이 끝날 때까지 기다린다.
상기에 서술된 바와 같이, 연결이 타임아웃 기간(TO) 내에 성립될 수 없으면, 연결 실패를 초래할 수 있다. 따라서, 타임아웃 기간(TO)은 모든 N 개의 연결들이 성립될 수 있는 만큼 충분히 긴 것이 바람직하다. 예를 들어, 모든 연결들의 임계 시간창(TC)들의 합이 소정의 최다 연결의 임계 시간창들의 합보다 작은 것으로 가정하다면, 타임아웃 시간(TO)은 NmaxTC+TCONN 미만이어야 한다(TCONN: 연결성 체크 시간; Nmax: 최대 동시 연결수).
도 3에 도시된 바와 같이, 제 1 노드(102)는 제 1 NAT(103)을 통해 공중망(public network;PNW)(예. 인터넷)에 물리적으로 접속된 제 1 사설망(NW1)에 있다. 제 2 노드(104) 또한 유사하게 제 2 사설망(NW2)에 있으며, 제 2 NAT(105)를 통해 동일한 공중망(PNW)에 접속할 수 있다. 사설망들(NW1, NW2) 각각은 제 1 노드(102)와 제 2 노드(104) 및 제 1 NAT(103)와 제 2 NAT(105)들 이외에도 다른 노드들과 NAT들을 포함 할 수 있다. 다른 사설망들 또한 공중망(PNW)에 연결될 수 있다. 공중망(PNW)은 SIP 프록시 서버(proxy server)(100) 및 STUN 서버(101)를 포함한다. 제 1 노드(102)는 제 1 NAT(103) 뒤에 있는 제 1 사설망(NW1) 내에서만 유효한 사설 IP 주소를 가지고 있다. 제 1 노드(102)는 전역에서(globally) 사용될 수 있는 유일하고 라우팅이 가능한 IP 주소를 가지고 있으며, 제 1 NAT(103)은 공중망과 사설망 사이에서 IP 주소와 포트를 변환한다. 이와 비슷하게, 제 2 노드(104) 또한 제 2 NAT(105) 뒤에 있는 제 2 사설망(NW2) 내에서만 유효한 사설 IP 주소를 가지고 있다. 제 2 노드(104)는 전역에서 사용되는 유일하고 라우팅 가능한 IP 주소를 가지며, 제 2 NAT(105)는 공중망과 사설망 사이에서 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의 존재 유무 및 그 NAT의 종류를 발견할 수 있다. 제 2 노드(104)도 제 2 노드(104)와 STUN 서버(101) 사이 NAT의 존재 유무 및 그 NAT의 종류를 알 수 있다.
본 발명의 실시예들에 따른 NAT 통과 방법은 도 3의 블록도와 도 4의 흐름도를 참조함으로써 이해될 수 있다. 먼저, 각각의 노드(102, 104)는 도 4의 202 및 204 과정에 나타난 봐와 같이, STUN 프로토콜을 사용해서 NAT를 발견할 수 있다. 도시된 예에서는 제 1 노드(102)가 대칭형인 제 1 NAT(103) 뒤에 있는 것을 발견한다. 제 2 노드(104) 또한 제 2 노드가 포트 제한적 콘인 제 2 NAT(105) 뒤에 있는 것을 발견한다. 그 후, 노드들(102, 104) 둘 다 206 및 208 과정에 도시된 바와 같이, 네트워크에 연결되기 위해 SIP 프록시 서버(100)로 등록(register)할 수 있다. 이는 SIP 프록시 서버(100)로의 제 1 신호 경로(signaling path)(116) 및 제 2 신호 경로(117)를 수립한다. 신호 경로들이 수립되면, SIP 프록시 서버(100)는 제 1 노드(102) 및 제 2 노드(104)에게 각각 제 1 신호 경로(116) 및 제 2 신호 경로(117)를 통해 메시지들을 전달 할 수 있다.
예를 들어, 제 1 노드(102)는 제 2 노드(104)와의 피어 투 피어 연결을 성립하고 싶어할 수 있다. 제 1 노드(102)는 로컬 포트(local port)(107)를 상기 새로운 피어 투 피어 세션을 위한 포트로 할당 할 수 있다. 다음으로, 제 1 노드(102)는 로컬 포트(107)에서 STUN 서버(101)로 바인딩 요청(118)을 송신함으로써 외부 포트(112)를 얻을 수 있다. 바인딩 요청을 송신하는 과정은 제 1 노드(102)의 임계 시간창이 시작되게 한다. 제 1 노드(102)가 제 1 NAT(103)가 존재하고 있고, 그 종류는 대칭형인 것을 인지하고 있기 때문에, 210 과정에 도시된 바와 같이 포트 추측 과정을 수행하고, 전송 주소들(107, 112, 113, 114)의 리스트를 구성할 수 있다. 리스트는 새로운 연결 요청 메시지에 포함될 수 있다. 바람직한 실시예에서는, 제 1 노드(102)가 제 1 NAT(103)에 대한 아무런 정보도 보내지 않을 수 있다. 나아가서는, 제 2 노드(104)가 아닌, 제 1 노드(102)가 포트 추측과정을 수행할 수 있다. 또한, 전송 주소들을 포함하는 연결 요청 메시지들을 송신하는 과정은 현재의 ICE 방법론에서도 사용 가능하다.
다른 노드와의 연결을 위한 추후의 바인딩 요청이 포트 추측 과정을 방해하는 것을 방지하기 위해, 제 1 노드(102)는 209과정에 도시된 바와 같이, 바인딩 요청(118)을 송신하면서 대기 시간(wait period)을 개시할 수 있다. 대기 시간 동안에, 다른 노드들과의 통신을 위한 새로운 바인딩 요청들은 생성된 순서에 따라 임시로 대기해야할 수 있다.
212 과정에서는 제 1 노드(102)가 로컬 포트(106)를 사용하고, 이미 성립된 경로(116)를 통해 SIP 프록시 서버(100)에게로 전송 주소들 리스트를 포함하는 연결 요청 메시지를 송신한다. SIP 프록시 서버(100)는 메시지의 마지막 목적지가 제 2 노드(104)인 것을 확인하고, 이미 성립된 경로(117)를 사용하고, 포트(111)를 통해서 메시지를 전달한다. 결국, 메시지는 제 2 노드(104)의 로컬 포트(108)에 도달한다. 연결 요청을 수신한 제 2 노드(104)는 로컬 포트(109)를 향후 피어 투 피어 세션을 위해 할당해놓고, 상기 로컬 포트(109)에서 STUN 서버(101)에게 바인딩 요청(119)을 송신함으로써, 외부 포트(115)를 획득할 수 있다. 다른 노드와의 연결을 위한 추후 바인딩 요청이 포트 추측과정을 방해하는 것을 막기 위해, 제 2 노드(104)는 211 과정에 도시된 바와 같이 연결 요청 메시지를 수신하면서부터 대기 시간을 개시할 수 있다. 대기 시간 동안에, 제 2 노드(104)는 다른 노드들과의 통신을 위한 새로운 바인딩 요청들을 생성된 순서에 따라 임시로 대기시킬 수 있다. 자세하게는, 제 1 노드(102)가 X 노드(125)로부터의 요청(217)을 수신된 순서에 따라 대기시킬 수 있다. 제 2 노드(104) 또한 유사하게 Y 노드(127)로부터의 요청(219)을 대기시킬 수 있다.
제 2 노드(104)가 제 2 NAT(105)가 대칭형이 아닌 것을 인식하고 있기 때문에, 제 2 노드(104)는 214 과정에서 로컬 포트(109)와 외부 포트(115)를 사용해서 새로운 임시 응답 메시지를 제 1 신호 경로(116)과 제 2 신호 경로(117)를 따라 SIP 프록시 서버(100)를 통해 제 1 노드(102)에게로 송신한다. 임시 응답을 전달함으로써, 전송 교환 단계가 종료하고, 연결성 체크 단계가 시작한다. 이 때, 제 1 및 제 2 노드들(102, 104)은 다른 노드들과의 통신을 위한 새로운 바인딩 요청들을 안전하게 시작할 수 있다. 따라서, 213 및 215 과정들 각각에서와 같이 제 1 및 제 2 노드들(102, 104)의 대기시간이 종료한다.
연결성을 체크하기 위해, 두 노드들(102, 104)은 그들의 로컬 포트들(107, 109)에서 216 및 218 과정에서 획득한 전송 주소들로 STUN 패킷들을 송신하기 시작할 수 있다. 제 1 노드(102)가 STUN 패킷(120)을 송신할 때, 제 1 NAT(103)은 새로운 외부 포트(113)를 할당해놓고, 이에 제 2 NAT(105)에 있는 외부 포트(115)에 패킷(120)이 도달한다. 제 2 NAT(105)가 포트 제한적 콘의 NAT이고, 제 2 노드(104)가 아직 로컬 포트(109)에서 제 1 NAT(103)에 있는 로컬 포트(113)로 패킷을 송신하지 않았을 수도 있기 때문에, 먼저 외부 포트(115)에 도달한 소수의 패킷들은 폐기될 수 있다. 제 2 노드(104) 또한 STUN 패킷들(121, 122, 123)을 획득한 전송 주소들(112, 113, 114)로 송신할 수 있다. 포트(112)에 도착한 패킷(121)은 제 1 NAT(103)가 대칭형 NAT이고, 상기 포트(112)가 전적으로 STUN 서버(101)로의 세션을 위해서만 할당되어있기 때문에 폐기될 수 있다. 포트(114)에 도달한 STUN 패킷(123) 또한 제 1 NAT(103)에 의해 할당된 외부 포트가 없기 때문에 폐기될 수 있다. 포트(113)에 도달한 STUN 패킷(122)은 제 1 NAT(103)에 의해 로컬 포트(107)로 전달된다. 이 후, 제 1 노드(102)는 제 2 노드(104)에게 응답을 송신하고 제 2 노드(104)는 응답을 수신함으로써 포트(113)와 연결이 성립되었음을 인식한다. 제 1 노드(102)에 있는 로컬 포트(107)에서 제 2 NAT(105)에 있는 외부 포트(115)로 송신된 STUN 패킷은 결국 제 2 노드(104)의 로컬 포트(109)로 수신된다. 제 2 노드(104)는 제 1 노드(102)로 응답을 보낸다.
상기 응답 메시지를 수신한 제 1 노드(102)는 220 과정에서 제 1 노드(102)와 외부 포트(115)가 연결되었음을 알리는 업데이트 메시지를 SIP 프록시 서버(100)를 통해 제 2 노드(104)에게 송신한다. 이는 제 2 노드(104)가 222 과정에서 연결 성립 과정을 마무리 짓는 마지막 응답 메시지를 제 1 노드(102)로 송신하게 한다.
NAT의 종류를 메시지에 포함시키고, 제 2 노드(104)가 추측하도록 하는 대신, 제 1 노드(102)가 추측하고, 추측한 외부 포트들(113, 114)과 STUN 서버(101)로부터 획득한 외부 포트(112)를 새로운 연결 요청 메시지에 포함시킬 수 있다. 따라서, 제 1 노드(102)는 제 2 노드(104)에게 제 1 NAT(103)에 대해 아무 정보도 제공할 필요가 없다. 이러한 ICE 방법은 (미국 특허 2004/0139228에 기재된) 종래기술에서와 같은 '브레이크-아웃(break-out)' 패킷들의 복잡한 NAT 연합 로직(combination logic)을 전혀 사용하지 않는다. 이에 비해, 본 발명의 실시예들은 '브레이크-아웃 패킷'과 본질적으로 같은 연결성 체크를 수행함으로써, 같은 결과를 성취할 수 있다. 그러므로, 본 발명의 실시예들은 이미 ICE 방법론을 사용하고 있는 시스템에 단순히 연결성 체크 리스트에 추측된 전송 주소들을 추가함으로써, 대칭형 NAT 통과 성능을 더해질 수 있도록 한다.
상기 서술된 바와 같이, 제 1 노드(102), 즉, 제 2 노드(104)와의 통신을 시작하려고 시도하는 노드가 포트 추측 과정을 수행하고, 추측된 포트들을 연결 요청 메시지에 포함시킨다. 포트 추측과정에는 여러 방법이 있다. 예를 들어, 하기 테스트를 사용하는 포트 할당 규칙 발견 과정(port allocation rule discovery process)을 사용해서 포트 추측과정이 구현될 수 있다. 제 1 노드(102)는 변경 요청(CHANGE-REQUEST) 속성에 어떠한 플래그(flag)도 설정하지 않고, 응답 주소 속성도 포함하지않고, STUN 바인딩 요청을 STUN 서버(101)로 송신한다. 이는 STUN 서버(101)가 요청을 수신해 온 주소 및 포트로 응답을 보내도록 한다. NAT(103)의 포트 할당 특성(port allocation characteristic)들을 알아내기 위해 IP 주소들과 포트들의 여러 조합들을 사용하는 이러한 테스트를 할 수 있다. 하기 표 3에 도시된 바와 같이 STUN 서버(101)은 두 개의 상이한 IP 주소들, CA와 DA, 및 두 개의 상이한 포트들 CP와 DP를 사용한다.
목적지
IP 주소 포트
제 1 시도 DA DP
제 2 시도 DA CP
제 3 시도 CA DP
제 4 시도 CA CP
표 3에서 볼 수 있듯이, 이번 예에서 테스트는 로컬 포트 하나 당 네 번씩(예. 제 1 시도 내지 제 4 시도) 구현된다. 모든 테스트들은 같은 로컬 포트에서 구현되야 한다. 제 1 노드(102)는 네 개의 매핑된 주소들을 응답들에서 얻는다. 이러한 네 개의 매핑된 주소들은 포트 할당 규칙과 포트 증분값(increment value)(△P)을 판단하고, 일관성을 평가하기 위해 분석된다. 일관성을 확인하기 위해서는, 상기 과정이 바람직하게는 NAT 바인딩과 연관되지 않은 다른 로컬 포트를 사용해서, 여러번 실시될 수 있다. 포트 할당 규칙은 매핑된 주소들에서 포트 번호들을 통해 판단될 수 있다. 다른 포트 번호를 가지고, 연속적으로 잇따르는 목적지들(successive destinations)의 포트 번호들 모두가 일정 값만큼씩 증가한다면, 포트 할당 규칙이 '포트에 민감한(sensitive)' 규칙이라고 할 수 있다. 같은 IP 주소를 가지고, 연속적으로 잇따르는 목적지들이 가진 포트 번호의 차가 '제로'이지만(예. 제 1 시도에서 제 2 시도; 제 3 시도에서 제 4 시도), 다른 IP 주소들을 가지고, 연속적으로 잇따르는 목적지들의 포트 값의 증분값(increment size)이 '제로'가 아니면, 포트 할당 규칙이 '주소에 민감한' 규칙이라고 할 수 있다. 매핑된 주소들에서 얻은 모든 포트 번호들이 같으면, NAT(103)은 '콘 NAT'이다.
△P 값은 하기에 설명된 바와 같이 확인될 수 있다. 주소 민감형 할당 방식에서는, △P 값은 다른 목적지 포트(destination port)를 가진 연속적인 시도들 사이에서의 포트 증분값과 일치한다(예. 제 2 시도, 제 3 시도). 표 4에 도시되었듯이, 이러한 과정은 다른 로컬 포트에서도 반복될 수 있다. 이번 예에서는 제 1 시도에서 제 4 시도까지는 표 3과 같고, 제 5 시도에서 제 8 시도는 표 3의 목적지 IP 주소들과 포트 번호들에서의 패턴을 따른다.
목적지
매핑된 주소 △P
제 1 시도 67.105.12.10:49152
제 2 시도 67.105.12.10:49152 0
제 3 시도 67.105.12.10:49154 2
제 4 시도 67.105.12.10:49154 0
제 5 시도 67.105.12.10:49156 2
제 6 시도 67.105.12.10:49156 0
제 7 시도 67.105.12.10:49158 2
제 8 시도 67.105.12.10:49158 0
표 4를 참조하면, 동일한 목적지 IP 주소를 가진 연속적인 시도들에서는 해당 매핑된 주소들의 포트 번호들 또한 동일하다. 여기서, 포트 할당 규칙이 '주소에 민감한' 규칙임을 알 수 있다. 나아가, △P 값은 제 2 시도와 제 3 시도 사이의 포트 증분값과 동일하고, 또한 제 4 시도와 제 5 시도 및 제 6 시도와 제 7 시도 사이의 포트 증가량과 동일하다.
포트 민감형 할당 방식에서 △P 값은 제 [N+1] 시도와 제 [N] 시도를 테스트할 때 획득한 매핑된 주소들의 인접한 포트 번호들 사이의 차이 값이다. 제 1 노드(102)가 목적지들에서 증분 값, △P의 일관성을 찾지 못하는 경우를 위해, 응용프로그램은 통계적 관찰에 근거한 △P 값을 판단하거나 유효 △P 값 획득을 포기하도록 결정하는 알고리즘을 포함할 수 있다. 제 2 NAT(105)가 대칭형이 아니면, NAT 발견 과정(202)의 일부로 제 1 노드(102)만을 위해서 포트 추측 과정을 수행하는 것으로도 충분할 수 있다. 제 2 NAT(105) 또한 대칭형 NAT인 경우에는, NAT 발견 과정(204)의 일부로 제 2 노드(104)가 포트 추측 과정을 수행할 수 있다.
본 발명의 실시예들에 있어서, 노드는 다른 노드들과 다중 연결되기 위해 NAT를 통과하기 위한 임계 시간창들을 직렬화시키도록 구성될 수 있다. 전술된 바와 같이 임계 시간창들을 직렬화 시키는 과정은 본 명세서에 대칭형 노드 연결 루프라고 지칭된 문제에 부딧칠 수 있다. 임계 시간창들을 직렬화시키기 위해 대기하는 연결 요청들은 일반적으로 대칭형 NAT 뒤에 있지 않은 노드에게는 불필요하다. 한편, 임계 시간창의 직렬화가 각각 대칭형 NAT 뒤에 있는 세 개 이상의 노드들에서 구현되면 갇힘(lockup) 상태에 빠질 수 있다. 이러한 문제는 도 5를 참조하여 설명할 수 있다. 도 5에 도시된 A 노드, B 노드, 및 C 노드 모두는 대칭형 NAT들 뒤에 있는 것으로 가정한다. B 노드가 C 노드와 접속하려는 동안 A 노드가 B 노드와의 연결을 시도하면, 세 노드들 사이에 접속 시도 종속성 루프(initiation dependency loop)가 생성될 수 있다. 이러한 루프는 어떠한 노드도 피어 투 피어 통신을 성공적으로 시작할 수 없는 갇힘 상태를 초래한다.
도 5에 도시된 예에서는 예를 들어, 도 2를 참조하여 전술된 바와 같이 세 개의 모든 노드들이 직렬화된 임계 시간창들을 구현하도록 구성되면, A 노드가 B 노드가 C 노드와 시작하기를 기다리는 동안, B 노드는 C 노드가 A 노드와 시작하기를 기다리고, C 노드는 A 노드가 B 노드와 시작 하기를 기다리게 될 수 있다. 이러한 경우, 세 노드들 모두 같은 시간에 기다리고 있을 수 있는 갇힘 상황이 만들어 질 수 있다. 이러한 문제를 해소하기 위해, 시작 트랜잭션(initiate transaction) 타임아웃이 구현될 수 있다.
예를 들어, C 노드가 '대기된(QUEUED)' 메시지(Q)를 B 노드에 송신할 수 있다. 대기된 메시지(Q)는 C 노드가 대칭형 NAT 뒤에 있고, 다른 노드와의 연결을 기다리고 있는 것을 표시한다. B 노드는 미리 정해진 대기 시간(TW) 동안 대기하다가 C 노드와의 연결 시도를 취소하고, 그 후, A 노드로부터의 연결 요청을 처리하고 나서, 다시 C 노드와의 연결을 시도할 수 있다. 대기 시간(TW)은 '제로' 이상이고, B 노드가 C 노드와의 통신을 포기하기 전에 보통 기다리는 타임아웃 시간 미만이다. 더 구체적으로는, C 노드가 C 노드 자신은 대칭형 NAT 뒤에 있고, 요청이 바로 처리되지 않고 대기 중인 것을 알기 때문에, '대기된' 메시지(Q)를 B 노드에게 송신한다. B 노드는 '대기된' 메시지를 수신하고 비교적으로 짧은 시간(예. 3초 정도)을 기다렸다가, C 노드와의 연결 과정을 취소하고, 대기 중인 다른 요청들을 처리하고, 결국에는 다시 C 노드와의 통신을 시도할 수 있다. B 노드는 C 노드와의 연결을 끊임없이 다시 시도하는 것을 방지하기 위해, 같은 노드와의 연결 재시도가 예를 들어 세 번 까지로 한정될 수 있고, 그런 후에야 B 노드가 완전히 포기할 수 있다. B 노드에서 실행되는 응용프로그램은 이러한 경우 연결 에러를 수신 할 수 있다.
갇힘 상태에 대한 다른 해결책으로서, 상기 전술된 기술은 아래와 같이 변경될 수 있다. 임계 시간창들은 발신 연결(outgoing connection) 요청들만을 위해 직렬화될 수 있고, 약간 더 깊이 있는 포트 추측 과정들이 수행될 수 있다. 예를 들면, 포트 증분값(△P)에 근거해서 추측한 포트를 생성하는 대신, 증분값들 2△P, 3△P, ..., M△P(M은 정수이고, 추측의 '깊이'임)에 근거한 추가적 포트 추측들을 생성할 수 있다. 예를 들어, 특정의 대칭형 NAT의 포트 증분값(△P)이 '1'로 판단 된 것으로 가정한다. 상기의 증분값(△P)과, 포트 추측 깊이(M) '1'을 가진 후보 리스트는 아래와 같다:
후보 1: 타입=STUN, 202.10.9.20:9021(추측됨)
후보 2: 타입=로컬, 192.168.1.2:3658
깊이(M)를 '1'에서 '3'으로 바꾸면 아래와 같은 후보 리스트를 생산한다:
후보 1:타입=STUN, 202.10.9.20:9021(추측됨)
후보 2:타입=STUN, 202.10.9.20:9022(추측됨)
후보 3:타입=STUN, 202.10.9.20:9023(추측됨)
후보 4:타입=로컬, 192.168.1.2:3658
'대기된' 신호 메시지(signaling message)의 사용과는 달리, 후술된 해결책은 모든 갇힘 상황들을 다루지는 않지만, 더 간단하게 구현될 수 있다. 나아가, 연결 과정들이 호출하는 쪽에서도 발생할 경우가 많기 때문에, 착신 연결(incoming connection)들 말고, 발신 연결들을 직렬화시킴으로써, 대체로 갇히는 상황들을 피할 수 있을 것이다. 착신 연결들을 위한 임계 시간창들이 직렬화되지 않았기 때문에, 포트 추측 과정이 실패할 수 있다. 포트 추측 깊이를 예를 들어, M=+1에서 M=+3으로 증가시키면, 추측된 후보들의 수가 늘고, 이에 포트 추측 실패율도 줄어든다.
도 3과 도 4에 도시된 하기 예들은 SIP 프로토콜을 사용한 (세션 초기화 프로토콜 (Session Initiation Protocol);RFC 3261) 피어 투 피어 UDP 세션 성립과정에 속한다. 한편, 본 발명의 실시예들은 피어 투 피어 직접 연결(direct connection) 성립 과정 전에, 피어가 공중망에 있는 프록시 서버를 통해 다른 피어와 신호를 송수신하도록 하는 다른 어떠한 신호 프로토콜들에도 적용 될 수 있다. 이러한 신호 프로토콜들은 이에 제한되지는 않지만, H.323, MGCP, HTTP, XMPP, 등이 될 수 있다.
NAT 통과 알고리즘은 소프트웨어나 하드웨어 또는 둘의 연합으로 구현될 수 있다. 예를 들면, 도 6은 이러한 알고리즘을 구현하기위한 컴퓨터 장치(400)를 도시한다. 장치(400)는 프로세서 모듈(401) 및 메모리(402)를 포함할 수 있다. 프로세서 모듈(401)은 단일의 프로세서 또는 다중 프로세서들을 포함할 수 있다. 단일 프로세서의 예로, 프로세서 모듈(401)이 인텔(Intel)의 펜티엄® 마이크로프로세서 또는 유사한 인텔 호환성 마이크로 프로세서를 포함할 수 있다. 다중 프로세서 모들의 예로, 프로세서 모듈(401)이 셀 프로세서를 포함할 수 있다.
메모리(402)는 일례로, RAM, DRAM, ROM, 등과 같이 집적 회로 형태를 가질 수 있다. 메모리(402)는 주 메모리 또는 셀 프로세서의 시너지 프로세서(synergistic processor) 구성 요소인 로컬 스토어(local store)가 될 수 있다. 전술된 프레임 재구성(reconstruction) 알고리즘을 포함하는 컴퓨터 프로그램(403)은 프로세서 모둘(401)에서 실행될 수 있는 프로세서 판독 가능한(readable) 명령어들 형태로 메모리(402)에 저장될 수 있다. 프로세서 모듈(401)은 프로그램(403)에서의 명령들이 저장될 수 있는 하나 이상의 레지스터들(registers)(405)을 포함할 수 있다. 프로그램(403)의 명령어들은 예를 들어 도 2 내지 도 4를 참조하여 전술된 네트워크 상에서의 피어 투 피어 연결 방법의 과정들을 포함할 수 있다. 구체적으로는 프로그램(403)이 전술된 바와 같이, 다수의 연결 시도들로 인해 포트 추측 과정이 방해되는 것을 방지하기 위해 다른 노드들과의 연결을 위한 요청들을 대기시킬 수 있다. 프로그램(403)은 메모리(402)에 저장된 연결 큐(queue)(407)를 생성할 수 있다. 연결 큐(407)은 테이블 또는 다른 데이터 구조로 구현될 수 있다. 연결 큐(407)는 특정 연결이 시도된 시간을 저장해서, 이전에 시작된 큐에대한 임계 시간창이 지난 후 큐(407)에서 연결 요청들이 배출되게 할 수 있다.
프로그램(403)은 C, C++, JAVA, Assembly, MATLAB, FORTRAN 및 다른 언어들과 같은 적절한 프로세서 판독가능 언어로 작성될 수 있다. 장치는 잘 알려진 입출력(I/O) 구성 요소들(411), 전력 공급부들(P/S)(412), 클럭(CLK)(413), 및 캐시(414)와 같은 지원 기능부들(410)을 포함할 수 있다. 또한 장치(400)는 선택적으로 디스크 드라이브, CD-ROM 드라이브, 테이프 드라이브, 또는 이와 유사한 프로그램들 및/또는 데이터 저장부와 같은 대용량 저장 장치(415)를 포함할 수 있다. 장치(400)는 선택적으로 표시부(416) 및 기기와 사용자 사이의 상호작용을 용이하게 하는 사용자 인터페이스부를 포함할 수 있다. 표시부(416)는 문자, 숫자, 그래픽 기호 또는 이미지를 표시하는 음극선관(CRT) 또는 플랫 패널 스크린의 형태일 수 있다. 표시부(416)는 가청음(audible sounds)을 생산하는 스피커나 다른 오디오 변환기를 포함할 수 있다. 사용자 인터페이스부(418)는 키보드, 마우스, 조이스틱, 라이트펜(light pen), 마이크, 또는 다른 그래픽 사용자 인터페이스(GUI)와 함께 사용될 수 있는 장치를 포함할 수 있다. 장치(400)는 또한 인터넷과 같은 네트워크를 통해 다른 기기들과 통신을 가능케하는 네트워크 인터페이스(420)을 포함할 수 있다. 이러한 구성 요소들은 하드웨어, 소프트웨어, 펌웨어, 또는 전술된 것들의 두 개 이상의 조합으로 구현될 수 있다.
본 발명의 실시예는 NAT 통과 특징들을 구현하는 피어 투 피어 라이브러리(library)와 함께 피어 투 피어 라이브러리 위에서 실행되는 단순한 연결성 체크 도구를 사용해서 테스트되었다. 연결의 양 단말에 있는 노드들은 대칭형 NAT들 뒤에 있었다. 플레이스테이션 3 개발 스테이션에 구현된 피어 투 피어 라이브러리 노드는 리눅스(Linux) PC에서 실행되는 64 개의 다른 노드들과 연결을 시도했다. 발신 및 착신 연결들의 임계 시간창들이 직렬화되었고, 모든 64 개의 연결들이 성공적으로 성립되었다.
상기의 상세한 설명은 본 발명의 바람직한 실시예의 온전한 설명이지만, 다른 균등물과 변형들이 사용될 수 있다. 그러므로, 본 발명의 범위는 상기 설명을 참조하여 판단되지 말아야 하며, 대신, 첨부된 청구항들과 그 균등물들의 모든 범위를 함께 참조해서 판단되어야한다. 본 명세서에 서술된 어떠한 기술적 특징도, 본 명세서에 서술된 다른 어떠한 기술적 특징과 바람직하게든 아니든 결합될 수 있다. 첨부된 청구항들은 "~을 위한 수단(means for)"의 기재가 명시적으로 사용되지 않은 이상, 기능적 기재 형태(means-plus-function limitations)로 해석되어서는 안 된다.

Claims (20)

  1. 제 1 대칭형 네트워크 주소 변환기(network address translator; NAT) 뒤에 있는 제 1 노드 및 두 개 이상의 다른 노드들 사이에서의 네트워크를 통한 피어 투 피어 연결 방법에 있어서,
    a) 제 1 노드로 상기 제 1 노드 및 제 2 노드 사이의 통신 세션을 시작하기 위한 포트를 추측하고, 상기 제 1 NAT에 있는 추측된 전송 주소들의 리스트를 구성하는 과정;
    b) 상기 제 1 노드에서 제 2 노드로 상기 추측된 전송 주소들을 포함하는 연결 요청 메시지를 송신하는 과정;
    c) 상기 제 1 노드에서 상기 연결 요청 메시지에 대한 임시 응답(provisional response)을 수신하는 과정;
    d) 상기 추측된 전송 주소들을 사용해서 상기 제 1 노드 및 상기 제 2 노드 사이의 연결성을 체크하는 과정; 및
    e) 상기 d) 과정이 시작될 때까지 상기 제 1 노드 및 제 3 노드 사이의 통신을 위한 포트 추측을 연기하는 과정을 포함하는 것을 특징으로 하는 피어 투 피어 연결 방법.
  2. 제 1 항에 있어서,
    f) 상기 e) 과정 이 후에, 상기 제 1 노드 및 제 3 노드 사이의 통신을 위해 포트를 추측하고, 상기 제 1 노드는 상기 제 1 NAT에 있는 추측된 전송 주소들의 리스트를 구성하는 과정;
    g) 상기 제 1 노드에서 제 3 노드까지 추측된 전송 주소들의 상기 리스트를 포함하는 연결 요청 메시지를 송신하는 과정;
    h) 상기 추측된 전송 주소들을 사용해서 상기 제 1 노드 및 상기 제 3 노드 사이의 연결성을 체크하는 과정을 포함하는 것을 특징으로 하는 피어 투 피어 연결 방법.
  3. 제 2 항에 있어서,
    i) 상기 g) 과정 후까지 상기 제 1 노드 및 제 4 노드 사이의 통신을 위한 포트 추측을 지연하는 과정을 더 포함하는 것을 특징으로 하는 피어 투 피어 연결 방법.
  4. 제 1 항에 있어서,
    상기 연결성 체크 과정은
    STUN 패킷들을 상기 제 2 노드에서부터 상기 제 1 노드에 의해 상기 연결 요청 메시지에서 제공된 상기 하나 이상의 전송 주소들로 송신하는 과정을 포함하는 것을 특징으로 하는 피어 투 피어 연결 방법.
  5. 제 4 항에 있어서,
    상기 연결성 체크 과정은
    상기 제 1 노드에서 상기 제 2 노드로 STUN 패킷 응답을 송신하는 과정을 더 포함하는데,
    상기 STUN 패킷 응답은
    상기 제 2 노드에서 송신한 상기 STUN 패킷들 중 어느 하나가 상기 제 1 노드에 도달할 때 통과하는 상기 제 1 NAT에 있는 외부 포트의 전송 주소를 포함하는 것을 특징으로 하는 피어 투 피어 연결 방법.
  6. 제 1 항에 있어서,
    상기 a) 과정은
    상기 제 1 NAT를 위한 포트 증분값(△P)을 판단하는 과정과,
    상기 증분값(△P)을 사용해서 추측된 전송 주소들의 상기 리스트를 생성하는 과정을 포함하는 것을 특징으로 하는 피어 투 피어 연결 방법.
  7. 제 1 항에 있어서,
    상기 a) 과정은
    상기 제 1 NAT를 위한 포트 증분값(△P)을 판단하는 과정과,
    상기 포트 증분값(△P) 및 '1' 보다 크거나 같은 양의 정수(positive integer)인 깊이(M)만큼 차이나는 다른 하나 이상의 추가적 포트 증분값들을 사용해서 추측된 전송 주소들의 상기 리스트를 생성하는 과정을 포함하는 것을 특징으로 하는 피어 투 피어 연결 방법.
  8. 제 7 항에 있어서,
    상기 깊이(M)는 '3'인 것을 특징으로 하는 피어 투 피어 연결 방법.
  9. 제 1 항에 있어서,
    상기 제 2 노드가 다른 노드와의 연결을 위해 대기중인 것을 나타내는 상기 제 2 노드로부터의 메시지에 응하여, 상기 b) 과정 이후, 및 상기 c) 과정 이전에 대기 시간(TW)만큼 기다리는 과정과,
    상기 a), b), c), d), 및 e) 과정들을 다시 수행하는 과정을 더 포함하고,
    상기 대기 시간(TW)은 '제로' 이상이고, 상기 제 1 노드 및 상기 제 2 노드 사이의 연결 실패 타임아웃 시간 미만인 것을 특징으로 하는 피어 투 피어 연결 방법.
  10. 제 1 항에 있어서,
    상기 d) 과정은
    추측된 전송 주소들의 상기 리스트에서의 전송 주소를 사용해서 상기 제 1 노드에서 상기 제 2 노드로 하나 이상의 테스트 패킷들을 전송하는 과정을 포함하는 것을 특징으로 하는 피어 투 피어 연결 방법.
  11. 제 10 항에 있어서,
    상기 e) 과정은
    상기 하나 이상의 테스트 패킷들 중 제 1 테스트 패킷이 송신될 때까지 상기 제 1 노드와 상기 제 3 노드 사이의 통신을 위한 포트 추측을 지연시키는 과정을 포함하는 것을 특징으로 하는 피어 투 피어 연결 방법.
  12. 제 1 대칭형 네트워크 주소 변환기(network address translator; NAT) 뒤에 있는 제 1 노드 및 두 개 이상의 다른 노드들 사이에서의 네트워크를 통한 피어 투 피어 연결 방법에 있어서,
    a) 상기 제 1 노드에서 제 2 노드로부터 추측된 전송 주소들의 제 1 리스트를 포함하는 연결 요청 메시지를 수신하는 과정;
    b) 상기 제 1 노드로 상기 제 1 노드 및 상기 제 2 노드 사이의 통신 세션을 시작하기 위한 포트를 추측하고, 상기 제 1 NAT에 있는 추측된 전송 주소들의 리스트를 구성하는 과정;
    c) 상기 제 2 노드에서 상기 제 1 노드로 상기 연결 요청 메시지에 대한 임시 응답을 수신하는 과정;
    d) 상기 연결 요청 메시지에 있는 상기 추측된 전송 주소들을 사용해서 상기 제 1 노드와 상기 제 2 노드 사이의 연결성을 체크하는 과정; 및
    e) 상기 d) 과정이 시작될 때까지 상기 제 1 노드 및 제 3 노드 사이의 통신을 위한 포트 추측을 연기하는 과정을 포함하는 것을 특징으로 하는 피어 투 피어 연결 방법.
  13. 제 12 항에 있어서,
    상기 연결성 체크과정은
    상기 제 2 노드에서 상기 제 1 노드에 의해 제공된 상기 연결 요청 메시지에 있는 상기 하나 이상의 전송 주소들로 STUN 패킷들을 송신하는 과정을 포함하는 것을 특징으로 하는 피어 투 피어 연결 방법.
  14. 제 13 항에 있어서,
    상기 연결성 체크과정은
    상기 제 1 노드에서 상기 제 2 노드로 STUN 패킷 응답을 송신하는 과정을 더 포함하는데,
    상기 STUN 패킷 응답은
    상기 제 2 노드에서 송신한 상기 STUN 패킷들 중 하나가 상기 제 1 노드에 도달할 때 통과하는 상기 제 1 NAT에 있는 외부 포트의 전송 주소를 포함하는 것을 특징으로 하는 피어 투 피어 연결 방법.
  15. 제 12 항에 있어서,
    상기 b) 과정은
    상기 제 1 NAT를 위한 증분값(△P)을 포함하는 과정과,
    상기 증분값(△P)을 사용해서 추측된 전송 주소들의 상기 리스트를 생성하는 과정을 포함하는 것을 특징으로 하는 피어 투 피어 연결 방법.
  16. 제 12 항에 있어서,
    상기 b) 과정은
    상기 제 1 NAT를 위한 포트 증분값(△P)를 판단하는 과정과,
    상기 포트 증분값(△P) 및 '1' 보다 크거나 같은 양의 정수(positive integer)인 깊이(M)만큼 차이나는 다른 하나 이상의 추가적 포트 증분값들을 사용해서 추측된 전송 주소들의 상기 리스트를 생성하는 과정을 포함하는 것을 특징으로 하는 피어 투 피어 연결 방법.
  17. 제 16 항에 있어서,
    상기 깊이(M)은 '3'인 것을 특징으로 하는 피어 투 피어 연결 방법.
  18. 제 12 항에 있어서,
    상기 d) 과정은
    추측된 전송 주소들의 상기 리스트에서의 전송 주소를 사용해서 상기 제 1 노드에서 상기 제 2 노드로 하나 이상의 테스트 패킷들을 송신하는 과정을 포함하는 것을 특징으로 하는 피어 투 피어 연결 방법.
  19. 제 18 항에 있어서,
    상기 e) 과정은
    상기 하나 이상의 테스트 패킷들 중 제 1 테스트 패킷이 송신될 때까지 상기 제 1 노드와 상기 제 3 노드 사이의 통신을 위한 포트 추측을 지연시키는 과정을 포함하는 것을 특징으로 하는 피어 투 피어 연결 방법.
  20. 프로세서;
    메모리;
    네트워크 인터페이스; 및
    상기 메모리에 저장되고, 상기 프로세서에서 실행되도록 구성된 명령어들을 포함하는 노드에 있어서,
    상기 명령어들은
    A) 실행 시 상기 노드가:
    i) 제 1 노드로 상기 제 1 노드와 제 2 노드 사이의 통신 세션을 시작하기위해 포트를 추측하고, 제 1 NAT에 있는 추측된 전송 주소들의 리스트를 구성하고;
    ii) 상기 제 1 노드에서 상기 제 2 노드로 추측된 전송 주소들의 상기 리스트를 포함하는 연결 요청 메시지를 송신하고;
    iii) 상기 제 1 노드에서 상기 연결 요청 메시지에 대한 임시 응답을 수신하고;
    iv) 상기 추측된 전송 주소들을 사용해서 상기 제 1 노드와 상기 제 2 노드 사이의 연결성을 체크하고;
    v) 상기 iv) 과정이 시작하기 전까지 상기 제 1 노드와 제 3 노드 사이의 통신을 위한 포트 추측을 지연시키도록 하는 명령어들 세트; 또는
    B) 실행 시 노드가:
    i) 상기 제 1 노드에서 제 2 노드로부터의 추측된 전송 주소들의 제 1 리스트를 포함하는 연결 요청 메시지를 수신하고;
    ii) 상기 제 1 노드로 상기 제 1 노드와 상기 제 2 노드 사이의 통신 세션을 시작하기위해 포트 추측을 하고, 제 1 NAT에 있는 추측된 전송 주소들의 리스트를 구성하고;
    iii) 상기 제 1 노드에서 상기 제 2 노드로 상기 연결 요청 메시지에 대한 임시 응답을 전송하고;
    iv) 상기 연결 요청 메시지에 있는 상기 추측된 전송 주소들을 사용해서 상기 제 1 노드와 상기 제 2 노드 사이의 연결성을 체크하고;
    v) 상기 d)과정이 시작될 때까지 상기 제 1 노드와 제 3 노드 사이의 통신을 위한 포트 추측을 지연시키도록 하는 명령어들 세트인 것을 특징으로 하는 노드.
KR1020107019848A 2008-03-05 2009-02-23 동시 다중 연결을 위한 대칭형 네트워크 주소 변환기 통과 방법 KR101139675B1 (ko)

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 (2)

Publication Number Publication Date
KR20100117651A true KR20100117651A (ko) 2010-11-03
KR101139675B1 KR101139675B1 (ko) 2012-05-21

Family

ID=41054752

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020107019848A KR101139675B1 (ko) 2008-03-05 2009-02-23 동시 다중 연결을 위한 대칭형 네트워크 주소 변환기 통과 방법

Country Status (6)

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

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
JP4918163B2 (ja) 2012-04-18
CN102984290A (zh) 2013-03-20
EP2255497A4 (en) 2012-03-28
US8015300B2 (en) 2011-09-06
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
KR101139675B1 (ko) 동시 다중 연결을 위한 대칭형 네트워크 주소 변환기 통과 방법
US8224985B2 (en) Peer-to-peer communication traversing symmetric network address translators
Rosenberg Interactive connectivity establishment (ICE): A protocol for network address translator (NAT) traversal for offer/answer protocols
USRE47566E1 (en) NAT traversal for mobile network devices
US9497168B2 (en) Method and apparatus for supporting communications between a computing device within a network and an external computing device
US20130308628A1 (en) Nat traversal for voip
CN100521663C (zh) 点对点通信中穿越网络地址转换的方法
JP4961368B2 (ja) 端末装置、nat越え方法、及びプログラム
CN101904155A (zh) 促进到中间盒后面的主机的ip连接的方法
JP6387605B2 (ja) 通信システム及び通信方法
Tseng et al. Can: A context-aware NAT traversal scheme
JP2005117587A (ja) 通信方法
CN114598532B (zh) 连接建立方法、装置、电子设备和存储介质
Phuoc et al. NAT traversal techniques in peer-to-peer networks
JP2008205676A (ja) 情報処理システム、情報処理装置、情報処理方法、及び情報処理プログラム
EP2608488B1 (en) Dialog establishment over a peer-to-peer architecture
JP2006261867A (ja) ネットワーク、ルータ装置及びそれらに用いるプライベートアドレス間通信方法並びにそのプログラム
Jensen Design of a Hardware Network Address Translation Unit for a Single Chip High-Speed Ethernet Router
TW201616845A (zh) 點對點連線穿越對稱式網路地址轉換之網路通信系統

Legal Events

Date Code Title Description
A201 Request for examination
A302 Request for accelerated examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20160407

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20170410

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20180404

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20190409

Year of fee payment: 8