KR101586058B1 - Nat환경을 고려한 피투피 통신 연결 장치 및 이를 이용한 피투피 통신 연결 방법 - Google Patents
Nat환경을 고려한 피투피 통신 연결 장치 및 이를 이용한 피투피 통신 연결 방법 Download PDFInfo
- Publication number
- KR101586058B1 KR101586058B1 KR1020140177838A KR20140177838A KR101586058B1 KR 101586058 B1 KR101586058 B1 KR 101586058B1 KR 1020140177838 A KR1020140177838 A KR 1020140177838A KR 20140177838 A KR20140177838 A KR 20140177838A KR 101586058 B1 KR101586058 B1 KR 101586058B1
- Authority
- KR
- South Korea
- Prior art keywords
- client
- node
- type
- public
- network address
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
도 2는 단말들이 속한 노드들의 NAT 유형에 따른 피투피 연결 기술을 도시한 도면이다.
도 3는 본 발명의 한 실시예에 따라 피투피 통신 연결 장치가 NAT 유형을 탐색하는 과정을 간략히 도시한 흐름도이다.
도 4는 본 발명의 한 실시예에 따라 피투피 통신 연결 장치가 피투피 연결을 수립하는 과정을 간략히 도시한 흐름도이다.
도 5는 본 발명과 종래기술의 NAT 유형 탐색시 걸리는 시간에 대한 기대값을 비교한 도면이다.
도 6은 본 발명과 종래기술의 NAT 유형 탐색시 사용되는 메시지 량에 대한 기대값을 비교한 도면이다.
도 7은 본 발명과 종래기술의 피투피 연결시 각 시나리오에 대한 사용 메시지 기대값을 비교한 도면이다.
도 8은 본 발명의 한 실시예에 따른 피투피 연결시 각 시나리오에 대한 사용 메시지 기대값을 비교한 도면이다.
Claims (11)
- 피투피 통신 연결 장치가 네트워크 주소 변환기(Network Address Translator, NAT) 환경에서 피투피 통신을 연결하는 방법에서,
네트워크 주소 변환기의 분포를 고려해서 클라이언트들이 속한 네트워크 주소 변환기의 유형을 탐색하는 단계, 그리고
P2P 통신을 수행하고자 하는 클라이언트들이 속한 노드의 네트워크 주소 변환기의 유형에 따라 P2P 연결을 수립하며, 상기 클라이언트들이 속한 노드의 정보 유무에 따라 P2P 연결 알고리즘을 적용해 P2P 연결을 수행하는 단계를 포함하며,
상기 P2P 연결을 수행하는 단계는,
제1 클라이언트가 연결된 노드의 정보만 알고 있는 경우에는, 상기 제1 클라이언트가 연결된 노드가 속한 네트워크 주소 변환기의 유형이 공공망인 경우에 P2P 연결을 수립하도록 제어하는 단계,
상기 제1 클라이언트가 연결된 노드의 유형이 풀 콘 네트워크 주소 변환기(full cone NAT) 또는 제한 콘 네트워크 주소 변환기(Restricted Cone NAT)인 경우에 P2P 연결을 수립하도록 제어하는 단계,
상기 제1 클라이언트가 연결된 노드의 유형이 포트 제한 콘 주소 변환기(Port Restricted Cone NAT)이나 제2 클라이언트가 연결된 노드가 대칭 네트워크 주소 변환기(Symmetric NAT)가 아닌 경우에 P2P 연결을 수립하도록 제어하는 단계, 그리고
상기 제1 클라이언트가 연결된 노드의 유형이 포트 제한 콘 주소 변환기(Port Restricted Cone NAT)이고 상기 제2 클라이언트가 연결된 노드의 유형이 대칭 네트워크 주소 변환기(Symmetric NAT)인 경우에 P2P 연결을 수립하도록 제어하는 단계
를 포함하는 피투피 통신 연결 방법. - 제1항에서,
상기 네트워크 주소 변환기의 유형을 탐색하는 단계는,
적어도 두 개 이상의 서버로 메시지를 보내는 단계, 그리고
각각의 서버에서 추출한 공공 IP 주소 및 포트 번호를 수신하고, 수신된 공공 IP 주소 및 포트 번호를 비교하는 단계를 포함하며,
상기 비교하는 단계는,
각각의 서버에서 추출한 상기 공공 IP 주소와 상기 포트 번호가 다르다면, 상기 노드가 속한 네트워크 주소 변화기의 유형을 대칭 네트워크 주소 변환기(Symmetric NAT)로 판단하는 단계, 그리고
상기 공공 IP 주소가 사설 IP 주소와 같다면, 상기 노드가 속한 네트워크 주소 변환기의 유형이 공공망(public domain)에 포함되는 것으로 판단하고, 상기 노드의 클라이언트가 방화벽에 막혀있는지 확인하는 단계
를 포함하는 피투피 통신 연결 방법. - 제2항에서,
상기 비교하는 단계는,
각각의 서버에서 추출한 상기 공공 IP 주소와 상기 포트 번호가 같거나 상기 공공 IP 주소와 상기 사설 IP 주소와 같지 않다면, 어느 한 서버에서 노드로 포트 번호를 바꿔서 메시지를 전송하고 응답 여부를 확인하는 단계를 더 포함하며,
상기 응답 여부를 확인하는 단계는,
상기 노드에서 응답이 있는 경우, 상기 노드가 속한 네트워크 주소 변화기 유형을 풀 콘 네트워크 주소 변환기(full cone NAT) 또는 제한 콘 네트워크 주소 변환기(Restricted Cone NAT)로 판단하는 단계, 그리고
상기 노드에서 응답이 없는 경우, 상기 노드가 속한 네트워크 주소 변화기 유형을 포트 제한 콘 주소 변환기(Port Restricted Cone NAT)로 판단하는 단계
를 포함하는 피투피 통신 연결 방법. - 제3항에서,
상기 P2P 연결을 수행하는 단계는,
클라이언트들이 연결된 노드들의 네트워크 주소 변환기 유형을 파악하는 단계,
제1 클라이언트가 연결된 노드가 속한 네트워크 주소 변환기의 유형이 공공망인 경우, 제2 클라이언트에게 공공 IP 주소 및 포트 번호를 전송해 P2P 연결을 수립하는 단계, 그리고
상기 제1 클라이언트가 연결된 노드의 유형이 풀 콘 네트워크 주소 변환기(full cone NAT) 또는 제한 콘 네트워크 주소 변환기(Restricted Cone NAT)인 경우, 상기 제1 클라이언트 및 상기 제2 클라이언트 모두에게 공공 IP 주소 및 포트 번호를 전송해 홀 펀칭(Hole Punching)을 수행하는 단계
를 포함하는 피투피 통신 연결 방법. - 제4항에서,
상기 P2P 연결을 수행하는 단계는,
상기 제1 클라이언트가 연결된 노드의 유형이 포트 제한 콘 주소 변환기(Port Restricted Cone NAT)인 경우, 상기 제2 클라이언트가 연결된 노드의 네트워크 주소 변환기의 유형을 탐색하는 단계,
탐색 결과, 상기 제2 클라이언트가 연결된 노드가 대칭 네트워크 주소 변환기(Symmetric NAT)가 아니라면, 상기 제1 클라이언트 및 상기 제2 클라이언트 모두에게 공공 IP 주소 및 포트 번호를 전송해 홀 펀칭(Hole Punching)을 수행하는 단계, 그리고
상기 제2 클라이언트가 연결된 노드의 유형이 대칭 네트워크 주소 변환기(Symmetric NAT)라면, 별도의 중계 서버를 통해서 P2P 연결을 수립하는 단계
를 더 포함하는 피투피 통신 연결 방법. - 적어도 하나 이상의 클라이언트 및 노드와 메시지를 송수신하는 송수신부,
송수신된 메시지를 이용해서 클라이언트가 연결된 노드의 네트워크 주소 변환기(Network Address Translator, NAT)의 유형을 탐색하는 탐색부, 그리고
클라이언트들이 속한 노드들의 네트워크 주소 변환기의 유형에 따라 P2P 연결을 수립하며, 적어도 하나의 노드에 대한 네트워크 주소 변환기의 정보만 가지고 있는 경우, P2P 연결 알고리즘을 적용해 P2P 연결을 수행하도록 제어하는 피투피 연결부
를 포함하며,
상기 피투피 연결부는,
제1 클라이언트가 연결된 노드가 속한 네트워크 주소 변환기의 유형이 공공망인 경우, 제2 클라이언트에게 공공 IP 주소 및 포트 번호를 전송해 P2P 연결을 수립하도록 제어하고, 상기 제1 클라이언트가 연결된 노드의 유형이 풀 콘 네트워크 주소 변환기(full cone NAT) 또는 제한 콘 네트워크 주소 변환기(Restricted Cone NAT)인 경우, 상기 제1 클라이언트 및 상기 제2 클라이언트 모두에게 공공 IP 주소 및 포트 번호를 전송해 홀 펀칭(Hole Punching)을 수행하도록 제어하며,
상기 제1 클라이언트가 연결된 노드의 유형이 포트 제한 콘 주소 변환기(Port Restricted Cone NAT)인 경우, 상기 제2 클라이언트가 연결된 노드의 네트워크 주소 변환기의 유형을 탐색하고, 탐색 결과, 상기 제2 클라이언트가 연결된 노드가 대칭 네트워크 주소 변환기(Symmetric NAT)가 아니라면 제1 클라이언트 및 제2 클라이언트 모두에게 공공 IP 주소 및 포트 번호를 전송해 홀 펀칭(Hole Punching)을 수행하도록 제어하고, 상기 제2 클라이언트가 연결된 노드의 유형이 대칭 네트워크 주소 변환기(Symmetric NAT)라면, 별도의 중계 서버를 통해서 P2P 연결을 수립하도록 제어하는 피투피 통신 연결 장치. - 제6항에서,
상기 네트워크 주소 변환기의 유형은,
공공망(public domain), 풀 콘 네트워크 주소 변환기 (full cone NAT), 제한 콘 네트워크 주소 변환기(Restricted Cone NAT), 포트 제한 콘 주소 변환기(Port Restricted Cone NAT) 또는 대칭 네트워크 주소 변환기(Symmetric NAT) 중 적어도 하나 이상을 포함하는 피투피 통신 연결 장치. - 제6항에서,
상기 탐색부는,
적어도 두개 이상의 서버에서 추출한 공공 IP 주소 및 포트 번호를 비교하는 비교부, 그리고
각각의 서버에서 추출한 상기 공공 IP 주소와 상기 포트 번호가 다르다면, 상기 노드가 속한 네트워크 주소 변화기의 유형을 대칭 네트워크 주소 변환기(Symmetric NAT)로 판단하고, 상기 공공 IP 주소가 사설 IP 주소와 같다면, 상기 노드가 속한 네트워크 주소 변환기의 유형을 공공망(public domain)으로 판단하는 판단부
를 포함하는 피투피 통신 연결 장치. - 제8항에서,
상기 판단부는,
상기 공공 IP 주소와 상기 포트 번호가 같거나 상기 공공 IP 주소와 상기 사설 IP 주소와 같지 않은 경우, 어느 한 서버에서 노드로 포트 번호를 바꿔서 전송한 메시지에 응답을 하는 경우, 상기 노드가 속한 유형이 풀 콘 네트워크 주소 변환기(full cone NAT) 또는 제한 콘 네트워크 주소 변환기(Restricted Cone NAT)로 판단하고, 응답이 없는 경우, 상기 포트 제한 콘 주소 변환기(Port Restricted Cone NAT)로 판단하는 피투피 통신 연결 장치. - 삭제
- 삭제
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020140177838A KR101586058B1 (ko) | 2014-12-10 | 2014-12-10 | Nat환경을 고려한 피투피 통신 연결 장치 및 이를 이용한 피투피 통신 연결 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020140177838A KR101586058B1 (ko) | 2014-12-10 | 2014-12-10 | Nat환경을 고려한 피투피 통신 연결 장치 및 이를 이용한 피투피 통신 연결 방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR101586058B1 true KR101586058B1 (ko) | 2016-01-22 |
Family
ID=55309024
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020140177838A Active KR101586058B1 (ko) | 2014-12-10 | 2014-12-10 | Nat환경을 고려한 피투피 통신 연결 장치 및 이를 이용한 피투피 통신 연결 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101586058B1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114900502A (zh) * | 2022-05-17 | 2022-08-12 | 北京奇艺世纪科技有限公司 | 网络注册方法、装置、电子设备及可读存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20120073489A (ko) * | 2010-12-27 | 2012-07-05 | 삼성에스디에스 주식회사 | 릴레이 서버를 이용한 데이터 전송 시스템 및 방법 |
CN102739815A (zh) * | 2011-06-03 | 2012-10-17 | 北京天地互连信息技术有限公司 | 减小视频会议系统网络地址转换穿越的系统时延的方法 |
KR20140121520A (ko) * | 2013-04-05 | 2014-10-16 | 삼성에스디에스 주식회사 | 모바일 환경에서의 p2p 접속 시스템 및 단말과 이를 이용한 p2p 접속 방법 |
-
2014
- 2014-12-10 KR KR1020140177838A patent/KR101586058B1/ko active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20120073489A (ko) * | 2010-12-27 | 2012-07-05 | 삼성에스디에스 주식회사 | 릴레이 서버를 이용한 데이터 전송 시스템 및 방법 |
CN102739815A (zh) * | 2011-06-03 | 2012-10-17 | 北京天地互连信息技术有限公司 | 减小视频会议系统网络地址转换穿越的系统时延的方法 |
KR20140121520A (ko) * | 2013-04-05 | 2014-10-16 | 삼성에스디에스 주식회사 | 모바일 환경에서의 p2p 접속 시스템 및 단말과 이를 이용한 p2p 접속 방법 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114900502A (zh) * | 2022-05-17 | 2022-08-12 | 北京奇艺世纪科技有限公司 | 网络注册方法、装置、电子设备及可读存储介质 |
CN114900502B (zh) * | 2022-05-17 | 2024-02-27 | 北京奇艺世纪科技有限公司 | 网络注册方法、装置、电子设备及可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10079803B2 (en) | Peer-to-peer connection establishment using TURN | |
US8457014B2 (en) | Method for configuring control tunnel and direct tunnel in IPv4 network-based IPv6 service providing system | |
US9515995B2 (en) | Method and apparatus for network address translation and firewall traversal | |
EP1892887B1 (en) | Communication method between communication devices and communication apparatus | |
RU2543304C2 (ru) | Способ и устройство, для ретрансляции пакетов | |
EP3219087B1 (en) | Methods, systems, and computer readable media for facilitating the resolving of endpoint hostnames in test environments with firewalls, network address translators(nats), or clouds | |
US20110055392A1 (en) | Network traversal method and network communication system | |
WO2020248963A1 (zh) | 一种建立端到端网络连接的方法、装置及网络系统 | |
US11388138B2 (en) | Communication system, address notification apparatus, communication control apparatus, terminal, communication method, and program | |
TWI599201B (zh) | 網路系統及建立資料連線的方法 | |
KR20130052240A (ko) | 네트워크 주소 변환기 통과 기법을 프로비저닝하기 위한 방법 및 장치 | |
US11637874B2 (en) | Communications apparatus, systems, and methods for preventing and/or minimizing session data clipping | |
RU2373654C1 (ru) | Способ установления однорангового соединения и предназначенная для этого система | |
JP2023542398A (ja) | データ処理方法、装置、関連機器及び記憶媒体 | |
US9350606B2 (en) | System and method for assigning server to terminal and efficiently delivering messages to the terminal | |
Liang et al. | Implementing NAT Hole Punching with QUIC | |
KR101586058B1 (ko) | Nat환경을 고려한 피투피 통신 연결 장치 및 이를 이용한 피투피 통신 연결 방법 | |
CN114598532B (zh) | 连接建立方法、装置、电子设备和存储介质 | |
JP2006203575A (ja) | 通信方法 | |
US9369523B2 (en) | Method for exchanging network messages in distributed manner | |
US9516575B2 (en) | Mobile device based proxy for browser-originated procedures | |
JP5840575B2 (ja) | マルチホーム通信方法およびシステム | |
WO2008069504A1 (en) | Method for configuring control tunnel and direct tunnel in ipv4 network-based ipv6 service providing system | |
CN112019641A (zh) | 数据传输方法和装置 | |
US20170311135A1 (en) | Control Signaling Transmission Method in MCPTT Architecture and Related Device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 20141210 |
|
PA0201 | Request for examination | ||
PE0902 | Notice of grounds for rejection |
Comment text: Notification of reason for refusal Patent event date: 20150720 Patent event code: PE09021S01D |
|
E701 | Decision to grant or registration of patent right | ||
PE0701 | Decision of registration |
Patent event code: PE07011S01D Comment text: Decision to Grant Registration Patent event date: 20151230 |
|
GRNT | Written decision to grant | ||
PR0701 | Registration of establishment |
Comment text: Registration of Establishment Patent event date: 20160111 Patent event code: PR07011E01D |
|
PR1002 | Payment of registration fee |
Payment date: 20160111 End annual number: 3 Start annual number: 1 |
|
PG1601 | Publication of registration | ||
FPAY | Annual fee payment |
Payment date: 20190109 Year of fee payment: 4 |
|
PR1001 | Payment of annual fee |
Payment date: 20190109 Start annual number: 4 End annual number: 4 |
|
FPAY | Annual fee payment |
Payment date: 20191205 Year of fee payment: 5 |
|
PR1001 | Payment of annual fee |
Payment date: 20191205 Start annual number: 5 End annual number: 5 |
|
PR1001 | Payment of annual fee |
Payment date: 20221110 Start annual number: 8 End annual number: 8 |
|
PR1001 | Payment of annual fee |
Payment date: 20231212 Start annual number: 9 End annual number: 9 |