KR101058275B1 - 통신 단말기 및 그 제어방법과, p2p 서버 시스템 및 그 제어방법 - Google Patents

통신 단말기 및 그 제어방법과, p2p 서버 시스템 및 그 제어방법 Download PDF

Info

Publication number
KR101058275B1
KR101058275B1 KR1020090074054A KR20090074054A KR101058275B1 KR 101058275 B1 KR101058275 B1 KR 101058275B1 KR 1020090074054 A KR1020090074054 A KR 1020090074054A KR 20090074054 A KR20090074054 A KR 20090074054A KR 101058275 B1 KR101058275 B1 KR 101058275B1
Authority
KR
South Korea
Prior art keywords
communication terminal
communication
connection
relay
destination
Prior art date
Application number
KR1020090074054A
Other languages
English (en)
Other versions
KR20110016525A (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 주식회사 엘지유플러스
Priority to KR1020090074054A priority Critical patent/KR101058275B1/ko
Publication of KR20110016525A publication Critical patent/KR20110016525A/ko
Application granted granted Critical
Publication of KR101058275B1 publication Critical patent/KR101058275B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W76/00Connection management
    • H04W76/10Connection setup
    • H04W76/14Direct-mode setup

Landscapes

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

Abstract

본 발명은 통신 단말기 및 그 제어방법과, P2P 서버 시스템 및 그 제어방법에 관한 것이다. 본 발명에 따른 P2P(Peer-To-Peer) 통신을 수행하는 다수의 통신 단말기들 간의 연결을 제어하는 P2P 서버 시스템의 제어방법은, 상기 다수의 통신 단말기들 중 각 통신 단말기와 최초로 연결되는 시점에 해당 통신 단말기로부터 전송되는 통신 단말기 정보를 저장하는 단계와; 상기 다수의 통신 단말기들 중 소정의 요청 통신 단말기로부터 소정의 목적지 통신 단말기로의 연결 요청을 수신한 경우, 기 저장된 목적지 통신 단말기 정보에 따라 상기 요청 통신 단말기 및 상기 목적지 통신 단말기 간의 연결이 직접 연결과 소정의 중계 처리를 통한 간접 연결 중 어느 하나의 방식에 의해 이루어지도록 제어하는 단계를 포함하는 것을 특징으로 한다.

Description

통신 단말기 및 그 제어방법과, P2P 서버 시스템 및 그 제어방법{COMMUNICATION APPARATUS AND CONTROL METHOD THEREOF, P2P SERVER SYSTEM AND CONTROL METHOD THEREOF}
본 발명은 통신 단말기 및 그 제어방법과, P2P 서버 시스템 및 그 제어방법에 관한 것으로, 보다 상세하게는 실행 시점에 판단된 네트워크 상태 정보를 P2P 서버 시스템에 등록하는 통신 단말기 및 그 제어방법과, 통신 단말기들 간의 P2P 통신을 지원하는 서버들로 이루어진 P2P 서버 시스템 및 그 제어방법에 관한 것이다.
일반적으로 통신 단말기들은 상대 통신 단말기와 다양한 방식으로 통신 채널을 형성하여 소정의 데이터를 송수신하고 있는데, 그 중 널리 이용되는 방식이 P2P(PEER-TO-PEER) 통신 방식이다.
즉, 소정의 데이터들이 하나의 서버 시스템에 집중되어 관리되는 것은 네트워크 부하 및 장비 운용면에서 많은 비효율성을 초래하고 있기 때문에 데이터들을 각각의 통신 단말기에 분산 배치해 두고서, 각각의 통신 단말기들이 상대 통신 단말기에서 직접 데이터를 전송 받을 수 있도록 한 것이 P2P 통신 방식이다.
이를 위해 각각의 통신 단말기들의 네트워크상의 주소는 P2P 서버 시스템에서 관리하면 되고, 각 통신 단말기들은 다른 통신 단말기에서 소정의 데이터를 전송받기 위해 해당 P2P 서버 시스템에서 상대 통신 단말기의 네트워크 주소를 확인하고 그 확인된 네트워크 주소를 이용하여 상대 통신 단말기에 연결하여 데이터의 전송을 요청할 수 있게 된다.
이는 최초의 연결 과정에서 P2P 서버 시스템이 개입을 하고, 실제 데이터가 송수신되는 과정은 각 통신 단말기들 간에 이루어짐으로써 네트워크 부하가 분산되고, 자원 효율성이 증가되는 장점이 있다.
그런데 통신 단말기의 사정에 따라 통신 단말기 간에 직접 연결이 이루어질 수 없는 경우도 발생한다. 예를 들어 어느 특정 통신 단말기가 사설 아이피를 가지고 있고, 그 통신 단말기가 속한 네트워크가 외부로부터의 접속을 해당 통신 단말기에 포트 포워딩 해주지 않는 경우에는 그 사설 아이피를 가지고 있는 통신 단말기가 다른 통신 단말기와 직접 연결되어 소정의 자료를 제공할 수 없게 되는 것이다.
이를 위해 P2P 서버 시스템에서는 소정의 중계 서버를 두고, 예를 들어 사설 아이피를 가지고 통신 단말기들 간에도 연결이 형성되고 상호간 데이터를 송수신 할 수 있도록 하고 있다.
이처럼 중계 서버를 거쳐 통신 단말기들간 통신하는 경우도 실제로 데이터가 통신 단말기들 간에 송수신되는 결과를 발생시키므로 P2P 통신이라 할 수 있다.
그러나 중계 서버 역시 자원이 제한될 수밖에 없는데 해당 중계 서버를 통한 통신 단말기들 간의 연결이 과도하게 발생하는 경우 제대로 각 통신 단말기들 간의 P2P 통신 중계가 이루어지지 않는 문제점이 발생해왔다.
한편, 상술한 바와 같이 중계 서버를 통한 통신 단말기들간의 통신 연결을 제어하는 경우에 그 판단, 즉, 통신 단말기들간 직접 연결을 제어할지 또는 중계 서버를 통한 간접 연결을 제어할지를 결정하는 판단은 P2P 서버 시스템에 의해서만 이루어져왔다. 그러나 이러한 단순한 기능도 동시에 많은 통신 단말기들의 접속 요청이 있는 경우에는 P2P 서버 시스템에 큰 부하를 발생시킬 수 있는 것이어서 그 개선이 요망되고 있다.
본 발명은 상기한 종래의 문제점을 해결하고 종래의 요망에 부응하기 위해 안출 것으로서, 그 목적은 각 통신 단말기 간 중계 서버를 통한 P2P 연결이 이루어지는 경우 각 통신 단말기와 중계 서버간의 연결을 네트워크 상황에 따라 능동적으로 변환시킬 수 있도록 하는 중계 서버를 포함하는 P2P 서버 시스템 및 그 제어방법을 제공하는 것이다.
본 발명의 다른 목적은 각 통신 단말기들이 다른 통신 단말기들과 P2P 통신을 함에 있어서 상대 통신 단말기와 직접 연결될 수 있는지 혹은 소정의 중계 서버를 통해서 연결될 수 있는지를 미리 자체적으로 확인하여 P2P 서버 시스템에 등록하도록 하는 통신 단말기 및 그 제어방법을 제공하는 것이다.
상기한 목적을 달성하기 위해 본 발명에 따른 P2P(Peer-To-Peer) 통신을 수행하는 다수의 통신 단말기들 간의 연결을 제어하는 P2P 서버 시스템의 제어방법은, 상기 다수의 통신 단말기들 중 각 통신 단말기와 최초로 연결되는 시점에 해당 통신 단말기로부터 전송되는 통신 단말기 정보를 저장하는 단계와; 상기 다수의 통신 단말기들 중 소정의 요청 통신 단말기로부터 소정의 목적지 통신 단말기로의 연결 요청을 수신한 경우, 기 저장된 목적지 통신 단말기 정보에 따라 상기 요청 통신 단말기 및 상기 목적지 통신 단말기 간의 연결이 직접 연결과 소정의 중계 처리를 통한 간접 연결 중 어느 하나의 방식에 의해 이루어지도록 제어하는 단계를 포함하여 이루어진다.
또, 상기한 목적을 달성하기 위해 본 발명에 따른 중계 서버를 거치거나 거치지 않는 방법으로 다른 통신 단말기와 P2P(peer-to-peer) 통신을 수행하기 위해 P2P(peer-to-peer) 서버 시스템에 자신의 정보를 등록하는 통신 단말기의 제어방법은, 네트워크 관련 설정 데이터를 저장하는 단계와; 통신 연결 형태를 정하기 위한 연결 형태 선정 기준을 저장하는 단계와; 다른 통신 단말기와 P2P 통신을 수행하는 P2P 통신 기능을 활성화시키는 단계와; 상기 P2P 통신 기능이 활성화되는 시점에, 상기 저장된 네트워크 관련 설정 데이터와 상기 저장부에 저장된 연결 형태 선정 기준을 비교하여 상기 다른 통신 단말기와 P2P 통신을 수행할 때 직접 통신이 가능한지 상기 중계 서버를 거쳐 통신을 해야 하는지 여부를 판단하는 단계와; 상기 판단된 판단 결과를 포함하는 통신 단말기 정보를 상기 P2P 서버 시스템에 등록하는 단계를 포함하여 이루어진다.
또, 상기한 목적을 달성하기 위해 본 발명에 따른 P2P(Peer-To-Peer) 통신을 수행하는 다수의 통신 단말기들 간의 연결을 제어하는 P2P 서버 시스템은, 상기 다수의 통신 단말기들 간의 P2P 통신을 중계하는 중계 서버와; 다수의 통신 단말기들 중 각 통신 단말기와 최초로 연결되는 시점에 상기 각 통신 단말기로부터 전송되는 통신 단말기 정보를 저장하고, 상기 다수의 통신 단말기들 중 소정의 요청 통신 단말기로부터 소정의 목적지 통신 단말기로의 연결 요청을 수신한 경우, 기 저장된 목적지 통신 단말기 정보에 따라 상기 요청 통신 단말기 및 상기 목적지 통신 단말기 간의 연결이 직접 연결과 소정의 중계 처리를 통한 간접 연결 중 어느 하나의 방식에 의해 이루어지도록 제어하는 통신 단말기 관리 서버를 포함하여 구성된다.
또, 상기한 목적을 달성하기 위해 본 발명에 따른 중계 서버를 거치거나 거치지 않는 방법으로 다른 통신 단말기와 P2P(peer-to-peer) 통신을 수행하기 위해 P2P(peer-to-peer) 서버 시스템에 자신의 정보를 등록하는 통신 단말기는, 네트워크 관련 설정 데이터가 저장되는 설정 저장부와; 외부 통신 단말기와 P2P 통신을 수행하는 P2P 통신부와; 상기 P2P 통신부를 실행시키는 실행 제어부를 포함하여 구성되고, 상기 P2P 통신부는, 통신 연결 형태를 정하기 위한 연결 형태 선정 기준이 저장된 저장부와; 상기 실행 제어부에 의해 상기 P2P 통신부가 실행되는 시점에, 상기 설정 저장부에 저장된 네트워크 관련 설정 데이터와 상기 저장부에 저장된 연결 형태 선정 기준을 비교하여, 다른 통신 단말기와 P2P 통신을 수행할 때 직접 통신이 가능한지 상기 중계 서버를 거쳐 통신을 해야 하는지 여부를 판단하는 통신 방식 판단부와; 상기 통신 방식 판단부에서 판단된 판단 결과를 포함하는 통신 단 말기 정보를 상기 P2P 서버 시스템에 등록하는 단말 정보 등록부를 포함하여 구성된다.
이상 설명한 바와 같이 본 발명에 따르면, 통신 단말기들 간의 P2P 통신을 위해 직접 연결 가능한지 혹은 소정의 중계 서버를 통한 간접 연결이 가능한지를 각 통신 단말기들이 미리 파악하여 P2P 서버 시스템에 등록해 놓음으로써, 통신 단말기로부터 다른 통신 단말기로의 연결 요청이 있는 경우 P2P 서버 시스템의 그 연결 방법 판단을 위한 부하를 경감시킴과 동시에 해당 연결이 신속히 이루어질 수 있다.
또한, 중계 서버를 통해 통신 단말기들 간의 P2P 통신이 이루어지는 경우, 네트워크 상황에 따라서 중계 서버와 각 통신 단말기들간의 연결 방식이 능동적으로 변경될 수 있어, 빠른 연결에 따른 사용자의 만족과 서버 자원 활용의 극대화를 꾀할 수 있다.
즉, 중계 서버의 부하가 적은 경우에는 중계 서버와 각 통신 단말기들간의 연결을 계속 유지하여 어느 통신 단말기로부터 다른 통신 단말기로의 접속 요청이 있는 경우 그 계속 유지된 연결을 통해 신속히 통신 단말기들 간 통신이 이루어질 수 있도록 하여 빠른 연결에 따른 사용자 만족도를 상승시키고, 중계 서버의 부하가 큰 경우에는 일부 또는 모든 통신 단말기들과 중계 서버간의 연결이 비지속적 즉, 간헐적으로만 연결될 수 있도록 하여 보다 많은 통신 단말기들이 중계 서버를 거쳐 다른 통신 단말기와 연결될 수 있도록 할 수 있다.
특히 중계 서버와 각 통신 단말기 간의 연결이 지속적인지 간헐적인지에 대한 판단은 각 단말기 및 해당 단말기의 사용자의 P2P 통신 사용량을 고려하여 이루어짐으로써, P2P 통신 사용량이 많은 고객에게 실질적인 혜택이 돌아갈 수 있도록 할 수 있다.
이하에서는 첨부도면을 참조하여 본 발명에 대해 상세히 설명한다.
본 발명의 일 실시예에 따른 P2P 통신 시스템은 도 1에 도시된 바와 같이 각 통신 단말기(200)와 P2P 서버 시스템(100)으로 이루어져 있다.
통신 단말기(200)는 상대 통신 단말기(200)와 P2P 통신을 수행하는 단말기로서, 각 통신 단말기(200)는 컴퓨터는 물론 휴대폰, PDA(Personal Digital Assistants) 등 개인용 휴대 무선 통신장치, 소정의 디스플레이장치와 연결되는 셋탑박스 등을 모두 포함한다.
본 실시예에서 통신 단말기(200)는 편의상 요청 통신 단말기(200')와 목적지 통신 단말기(200")로 구분한다.
요청 통신 단말기(200')는 P2P 통신을 통해 상대 통신 단말기(200)로부터 소정의 데이터를 요청하는 단말기이고, 목적지 통신 단말기(200")는 그 요청 통신 단말기(200')가 데이터를 요청하는 대상이 되는 단말기이다.
통신 단말기(200)는 상대 통신 단말기(200)와 직접 또는 후술하는 바와 같이 중계 서버(130)를 통해 P2P 통신을 수행할 수 있고, 더 나아가 다른 통신 단말기들(200) 간의 P2P 통신의 중계 처리를 수행할 수도 있다. 물론, 다른 통신 단말기들(200) 간의 P2P 통신 중계 처리를 위해서는 해당 통신 단말기(200)는 공인 아이피 주소를 갖고 있어야 함이 바람직하다.
이러한 통신 단말기들(200)은 상대 통신 단말기(200)와 P2P 통신을 하기 위해서 P2P 서버 시스템(100)에 접속하여 상대 통신 단말기(200)의 정보를 요청해야 하는데, 이를 위해 각 통신 단말기들(200)은 각각 P2P 서버 시스템(100)에 먼저 자신의 정보를 등록해 놓아야한다. 그래야 다른 통신 단말기들(200)이 자신에게 접속할 수 있기 때문이다.
본 실시예에서 요청 통신 단말기(200')는 휴대폰 등의 무선 통신 장치인 것으로, 목적지 통신 단말기(200")는 컴퓨터로 구성된 것을 일 예로 하였지만 이러한 통신 단말기들(200)이 이에 한정되는 것은 아니다.
통신 단말기(200)의 기능 블록의 일 예가 도 2에 도시되었다.
동 도면에 도시된 바와 같이 통신 단말기(200)는 설정 저장부(220), P2P 통신부(230), 실행 제어부(210)를 포함하여 구성된다.
설정 저장부(220)는 네트워크 관련 설정 데이터가 저장되는 것으로서, 예를 들어 네트워크 통신을 위해 필수적인 기 할당된 아이피 주소가 네트워크 관련 설정 데이터에 포함될 수 있다.
P2P 통신부(230)는 외부의 다른 통신 단말기와 P2P 통신을 수행하는 기능을 수행한다. 즉, 통신 단말기(200)에는 여러 가지 기능들이 포함될 수 있는데, P2P 통신부(230)는 그 중 외부 통신 단말기와의 P2P 통신을 수행하는 기능을 수행한다.
예를 들어 통신 단말기(200)가 이동통신 단말기(200)인 경우 P2P 통신부(230)는 사용자의 메뉴 선택에 따라 특정 P2P 서버 시스템(100)과 연결하는 기능과, P2P 서버 시스템(100)으로부터 수신되는 상대 통신 단말기(200)의 정보에 기초하여 해당 상대 통신 단말기(200)와 연결하는 기능을 모두 수행할 수 있다.
실행 제어부(210)는 앞서 설명한 P2P 통신부(230)를 실행시키는 기능을 수행 한다.
예를 들어 P2P 통신을 원하는 사용자가 입력부(미 도시함)를 통해 P2P 통신 명령을 입력하면, 실행 제어부(210)는 P2P 통신부(230)를 실행시키는데 이때 소정의 P2P 서버 시스템(100)의 주소를 P2P 통신부(230)에 전달할 수 있다.
P2P 통신부(230)는 저장부(231), 통신 방식 판단부(233), 단말 정보 등록부(235)를 포함하여 구성될 수 있다.
여기서 저장부(231)에는 통신 연결 형태를 정하기 위한 연결 형태 선정 기준이 저장되어 있다.
통신 방식 판단부(233)는 실행 제어부(210)에 의해 P2P 통신부(230)가 실행되는 시점에, 설정 저장부(220)에 저장된 네트워크 관련 설정 데이터와 저장부(231)에 저장된 연결 형태 선정 기준을 비교하여, 다른 단말기와 P2P 통신을 수행할 때 직접 통신이 가능한지 중계 서버(130)를 거쳐 통신을 해야 하는지 여부를 판단한다.
예를 들어 저장부(231)에 저장된 연결 형태 선정 기준에 아이피 주소 대역별 구분 정보가 포함되어 있고, 설정 저장부(220)에는 사설 아이피 대역에 해당하는 아이피 주소가 등록 저장되어 있는 경우, 통신 방식 판단부(233)는 다른 단말기와 통신할 때 중계 서버(130)를 거쳐 통신을 해야 한다고 판단할 수 있다.
단말 정보 등록부(235)는 통신 방식 판단부(233)에서 판단된 판단 결과를 포함하는 단말기 정보를 P2P 서버 시스템(100)에 전송하여 등록하는 기능을 수행한다. 여기서 단말기 정보에는 통신 방식 판단부(233)에서 판단된 판단 결과뿐만 아 니라 통신 단말기(200)에 할당된 아이피 주소 및 게이트웨이 주소 등이 더 포함될 수 있다.
이와 같은 구성에 의해, 예를 들어 통신 단말기(200)에 전원이 공급된 후 처음으로 P2P 서버에 접속하는 경우, 통신 단말기(200)는 자신이 직접 판단한 다른 통신 단말기(200)와의 통신 연결 방식을 P2P 서버 시스템(100)에 미리 등록해 놓을 수 있고, 이는 P2P 서버 시스템(100)이 각 통신 단말기(200)가 다른 통신 단말기와 직접 연결이 가능한지 여부를 판단할 필요가 없어 P2P 서버 시스템(100)의 부하를 경감시킬 수 있고, 더 나아가 통신 단말기들(200) 간의 P2P 통신을 위한 연결이 신속히 이루어질 수 있다. 이에 관한 보다 상세한 설명은 후술토록 한다.
한편, P2P 서버 시스템(100)은 통신 단말기 관리 서버(110), 메타 정보 생성 서버(120), 중계 서버(130)를 포함하여 구성될 수 있다.
통신 단말기 관리 서버(110)는 각 통신 단말기(200)와 연결되는 시점에 해당 통신 단말기(200)로부터 전송되는 단말기 정보를 저장하고, 어느 하나의 통신 단말기로부터 다른 통신 단말기로의 연결 요청을 수신한 경우, 상기 저장된 단말기 정보에 따라 해당 단말기들(200) 간의 연결이 직접 연결과 중계 서버(130)를 통한 간접 연결 중 어느 하나에 의해 이루어지도록 제어하는 기능을 수행한다.
즉, 각 통신 단말기(200)로부터 수신된 단말기 정보에는 해당 통신 단말기(200)가 다른 통신 단말기와 직접 연결될 수 있을지 또는 중계 서버(130)를 통해 간접 연결될 수 있을지에 대한 판단 정보가 들어 있을 수 있고, 이러한 판단 정보에 따라 통신 단말기 관리 서버(110)는 각 통신 단말기들(200) 간의 P2P 통신에 있 어서의 연결 방식을 제어할 수 있는 것이다.
다른 예로써 각 통신 단말기(200)로부터 수신된 단말기 정보에 각 통신 단말기들(200)의 아이피 주소 정보 등만이 포함되어 있고 상기한 예에서와 같은 판단 정보(즉, 직접 연결 또는 간접 연결 여부에 대한 판단)가 포함되어 있지 않은 경우에는, 통신 단말기 관리 서버(110)는 통신 단말기(200)의 아이피 주소로 더미(dummy) 커넥션 신호를 전송하고, 해당 더미 커넥션 신호에 대한 통신 단말기(200)의 응답에 따라 해당 통신 단말기(200)가 P2P 통신 시 다른 통신 단말기(200)와의 직접 연결이 가능한지 여부를 판단하고, 판단 결과를 해당 통신 단말기(200)의 통신 단말기 정보에 포함시켜 저장할 수도 있다.
여기서 더미 커넥션 신호는 통신 단말기(200)가 다른 통신 단말기(200)의 요청에 직접 응답할 수 있는지를 미리 확인하기 위해 전송하는 신호이고, 이러한 더미 커넥션 신호에 대해 해당 통신 단말기(200)가 응답이 없는 경우 통신 단말기 관리 서버(110)는 그 통신 단말기(200)가 목적이 단말기로써 다른 통신 단말기(200)와 직접 연결될 수는 없고 중계 서버(130)를 통해 간접 연결될 수밖에 없다고 판단하는 것이다.
이러한 판단 결과가 통신 단말기 정보에 함께 포함되어 저장되고, 통신 단말기 관리 서버(110)는 이 저장된 통신 단말기 정보를 이용하여 직접 연결 또는 중계 서버(130)를 통한 간접 연결 중 어느 하나의 방식으로 통신 단말기들(200) 간의 통신 연결을 제어하는 것이다.
물론, 상기한 실시예에서는 통신 단말기(200)로부터 수신되는 통신 단말기 정보에 직접 연결과 간접 연결에 대한 판단 정보가 포함되어 있지 않은 경우에만 통신 단말기 관리 서버(110)가 각 통신 단말기(200)에 더미 커넥션을 전송하는 것을 일 예로 하였지만, 통신 단말기 정보에 P2P 통신 연결과 관련한 판단 정보가 포함되어 있는 경우에도 통신 단말기 관리 서버(110)는 확인을 위해 더미 커넥션 신호를 각 통신 단말기(200)로 전송할 수도 있음은 물론이다.
메타 정보 생성 서버(120)는 중계 서버(130)와 각 통신 단말기들(200) 간의 통신 연결 정책을 설정하기 위한 룰 정보를 저장하고 있고, 각 통신 단말기들(200)의 P2P 통신 로그를 수집하여 수집된 통신 로그를 기초로 각 통신 단말기(200)에 대한 사용자 등급을 포함하는 메타 정보를 생성하는 기능을 수행한다.
여기서 통신 연결 정책은 각 통신 단말기(200)가 중계 서버(130)와 어떻게 연결될 것인지를 정하기 위해 필요한 것으로서, 후술하는 바와 같이 중계 서버(130)는 설정된 통신 연결 정책에 따라 각 통신 단말기(200)와의 통신 연결 형태를 설정하게 된다. 이에 대한 보다 상세한 설명은 후술토록 한다.
이러한 통신 연결 정책을 설정하기 위한 데이터가 포함된 룰 정보는 관리자에 의해 설정되어 메타 정보 생성 서버(120)에 저장될 수 있다. 이를 위해 메타 정보 생성 서버(120)는 관리자의 입력을 수신할 수 있는 인터페이스를 구비할 수 있다.
메타 정보 생성 서버(120)가 수집하는 P2P 통신 로그는 각 통신 단말기(200) 또는 해당 통신 단말기(200) 사용자가 얼마나 자주 P2P 통신을 이용하였는지, 소정의 자료를 얼마나 다른 통신 단말기(200)에 제공하였는지, 소정의 자료를 얼마나 많이 다른 통신 단말기(200)에 요청하였는지에 관한 정보들을 포함할 수 있다. 이를 위해 메타 정보 생성 서버(120)는 본 실시예에 포함된 각종 장치들로부터 필요한 정보들을 수신할 수 있다.
메타 정보 생성 서버(120)는 이렇게 수집된 P2P 통신 로그를 이용하여 메타 정보를 생성하는데, 메타 정보에는 예를 들어 각 사용자(또는 단말기) 별 P2P 통신 사용량에 따른 등급을 포함하는 것이다.
이러한 메타 정보에 의해 후술하는 바와 같이 P2P 통신을 수행하는 사용자(또는 단말기)에 대해서 우량 고객에 따라 차등 혜택(연결 방법에 대한 혜택)을 줄 수 있다. 이에 대한 보다 상세한 설명은 후술토록 한다.
한편, 중계 서버(130)는 통신 단말기들(200) 간의 P2P 통신을 중계하는 기능을 수행하는 것으로서, 예를 들어 통신 단말기들(200) 간에 직접 연결이 불가능하거나 어려운 경우 중계 서버(130)는 해당 통신 단말기들(200) 간에 P2P 통신이 가능하도록 신호를 중계한다.
이때 중계 서버(130)와 각 통신 단말기(200)는 다양한 방식으로 연결 형태를 유지할 수 있는데, 이러한 연결 형태에는 통신 단말기(200)와 중계 서버(130)가 지속적으로 연결을 유지하는 연속 연결 형태와, 통신 단말기(200)가 중계 서버(130)에 주기적으로 폴링 신호를 전송함으로써 간헐적으로 연결을 유지하는 주기 연결 형태가 포함될 수 있다.
즉, 중계 서버(130)는 소정의 통신 단말기(200)와는 한번 연결된 정보를 저장하여 그 연결 상태를 계속 유지할 수 있고(예를 들어 해당 연결에 대한 소켓 정 보를 계속 저장하고 있음), 다른 통신 단말기(200)와는 해당 통신 단말기(200)가 주기적으로 연결을 확인하는 폴링 신호를 전송할 때만 그 연결을 유지할 수 있다.
이처럼 중계 서버(130)가 각 통신 단말기(200)와 어떠한 방식으로 연결 형태를 유지할지는 중계 서버(130)에서 소정의 통신 연결 정책에 의해 결정된다.
이하 통신 연결 정책이 설정되고 그에 따라 통신 연결 형태가 결정되는 과정을 살펴보면 다음과 같다.
중계 서버(130)는 메타 정보 생성 서버(120)로부터 룰 정보와 메타 정보를 수신하는데, 통신 단말기들(200) 간의 중계 서버(130)의 부하 상태 즉, 중계 서버(130)를 통한 P2P 통신 현황에 대응되는 통신 연결 정책을 그 수신된 룰 정보에서 추출하여 설정하고, 그 수신된 메타 정보에 포함된 각 통신 단말기(200)의 사용자 등급과 상기 설정된 통신 연결 정책을 기초로 각 통신 단말기(200)와의 통신 연결 형태를 설정한다.
즉, 앞서 설명한 바와 같이 룰 정보에는 중계 서버(130)의 처리 부하 즉, 중계 서버(130)에서 처리하는 통신 단말기들(200) 간의 중계 처리량에 따른 통신 연결 정책들이 복수 개 포함되어 있을 수 있고, 중계 서버(130)는 자신의 중계 처리 부하에 대응되는 통신 연결 정책을 룰 정보에서 추출하여 설정하고, 그 설정된 통신 연결 정책에 따라 각 통신 단말기(200)와의 연결 형태를 결정하는 것이다.
여기서, 룰 정보에 포함된 각 통신 연결 정책에는 사용자 등급에 따른 연결 형태가 정의되어 있다.
따라서 중계 서버(130)는 메타 정보 생성 서버(120)로부터 수신된 메타 정보 에서 각 통신 단말기(200)(또는 그 사용자)에 대한 사용자 등급을 추출하고, 그 추출된 등급에 따라 각 통신 단말기(200)에 대해서 룰 정보에서 추출되어 설정된 통신 연결 정책을 기초로 통신 연결 형태를 결정하는 것이다.
그런데 상술한 바와 같이 중계 서버(130)의 부하(즉, 처리량)의 변동에 따라 중계 서버(130)는 다른 통신 연결 정책을 설정할 수 있고, 다른 통신 연결 정책이 설정됨에 따라 중계 서버(130)와 각 통신 단말기(200)와의 통신 연결 형태는 변경될 수 있다.
중계 서버(130)가 통신 연결 형태에 따라 통신 단말기들(200) 간의 P2P 통신 연결을 수행하는 과정은 다음과 같다.
우선, 중계 서버(130)와 목적지 통신 단말기(200")가 연속 연결 형태를 유지하고 있다고 가정하면 중계 서버(130)는 목적지 통신 단말기(200")와의 통신 연결 정보를 저장하여 보관하고 있고, 이 상태에서 요청 통신 단말기(200')가 그 목적지 통신 단말기(200")로의 접속 요청 신호를 중계 서버(130)에 전송하면, 중계 서버(130)는 요청 통신 단말기(200')의 접속 요청을 이미 연속 연결 형태를 유지하고 있는 목적지 통신 단말기(200")와의 통신 채널을 이용하여 전송한다.
즉, 중계 서버(130)는 저장/보관하고 있는 목적지 통신 단말기(200")의 통신 연결 정보(예를 들어 소켓 정보)와 요청 통신 단말기(200')의 접속 정보(예를 들어 소켓 정보)를 이용하여 세션 매핑과정을 통해 상호 연결시키고, 요청 통신 단말기(200')와 목적지 통신 단말기(200") 간의 P2P 통신을 중계처리 한다.
다른 예로써, 중계 서버(130)와 목적지 통신 단말기(200")가 주기 연결 형태 를 유지하고 있다고 가정하면 중계 서버(130)는 목적지 통신 단말기(200")가 폴링 신호를 간헐적으로 전송할 때만 해당 목적지 통신 단말기(200")와 통신 상태를 유지하게 되므로 미리 목적지 통신 단말기(200")의 통신 연결 정보를 저장하고 있지 않다.
이 상태에서 요청 통신 단말기(200')가 그 목적지 통신 단말기(200")로의 접속 요청 신호를 중계 서버(130)에 전송하면, 중계 서버(130)는 요청 통신 단말기(200')와의 연결을 유지한 채로 목적지 통신 단말기(200")로부터 폴링 신호가 수신되기를 기다린다.
폴링 신호가 수신되면 중계 서버(130)는 요청 통신 단말기(200')와 목적지 통신 단말기(200")를 세션 매핑 과정을 통해 상호 연결시키고 요청 통신 단말기(200')와 목적지 통신 단말기(200") 간의 P2P 통신을 중계한다.
상술한 설명에서는 중계 서버(130)가 단일 형태로 구비되는 것을 일 예로 하였지만, 중계 서버(130)에는 각각 통신 단말기(200) 간의 P2P 통신에 대한 중계 처리를 수행할 수 있는 복수 개의 중계 모듈들이 구비될 수 있고, 이 경우 중계 서버(130)는 각각의 통신 단말기(200)로부터의 P2P 연결 요청에 대해 특정 중계 모듈을 할당(이때 중계 모듈 간의 부하가 균등하도록 할당할 수 있음)하여 처리하도록 할 수 있다. 이때 중계 서버(130)는 할당된 중계 모듈의 아이피 주소 등을 통신 단말기(200)로 전송하여 알려주면 된다.
상기한 경우에 대해 보다 구체적인 예를 들어 설명하면 다음과 같다.
즉, 중계 서버(130)에는 각 통신 단말기(200)들에 대한 정보와 중계 처리와 관련한 정보들을 포함하는 일종의 메모리 맵이 저장되어 있는데 메모리 맵에는 특히 각 통신 단말기(200)들이 어떠한 중계 모듈을 통해 연결되고 있는지 등에 대한 정보가 포함되어 있다.
이 상태에서 요청 통신 단말기(200')가 목적지 통신 단말기(200")로의 접속을 요청하면, 중계 서버(130)는 요청 통신 단말기(200')에 특정 중계 모듈로 연결하라는 명령을 전송함과 동시에 메모리맵에 요청 통신 단말기(200')가 특정 중계 모듈에서 대기중이라는 정보를 저장해 놓는다.
중계 서버(130)로부터 명령을 받은 요청 통신 단말기(200')는 해당 중계 모듈과 연속 연결 형태를 유지하며 목적지 통신 단말기(200")와 통신할 수 있을 때까지 대기한다.
한편, 중계 서버(130)는 주기 연결 형태를 유지하고 있던 목적지 통신 단말기(200")가 해당 주기에 도달하여 접속하는 경우 메모리맵 정보를 기초로 요청 통신 단말기(200')가 소정의 중계 모듈과 접속하여 대기하고 있음을 알린다.
목적지 통신 단말기(200")는 중계 서버(130)로부터 수신되는 정보를 기초로 요청 통신 단말기(200')가 이미 접속해 있는 중계 모듈로 접속하고, 해당 중계 모듈은 세션 매핑을 통해 요청 통신 단말기(200')와 목적지 통신 단말기(200") 간에 P2P 통신이 이루어지도록 중계 처리한다. 이 경우 목적지 통신 단말기(200")는 해당 중계 모듈과 주기 연결 형태로 연결을 유지할 수 있다.
이처럼 중계 서버(130)에 복수 개의 중계 모듈이 구비되어 있는 경우에는 각 중계 모듈 간의 통신 처리 부하를 균등하게 조정할 부하 조정부(미 도시함)가 중계 서버에 포함되어 있을 수 있다.
한편, 중계 서버(130)는 중계 처리를 다른 통신 단말기(200)에서 수행하도록 하는 제어신호를 전송할 수도 있다. 상술한 바와 같이 각 통신 단말기(200) 특히, 공인 아이피 주소를 갖고 있는 통신 단말기(200)는 다른 통신 단말기들(200) 간의 P2P 통신에 대한 중계 처리 기능을 수행할 수 있고, 이 경우 중계 처리를 위해 필요한 정보들-각 통신 단말기에 관한 정보, 통신 연결 정책에 관한 정보, 메타 정보 등-은 필요시 중계 서버(130)로부터 전송받을 수 있다.
이처럼 다른 통신 단말기가 중계 처리 기능을 수행하는 것은 후술하는 예와 같이 통신 연결 정책 중에서도 제4 정책에 해당하는 것으로 제일 마지막으로 선택될 가능성이 있는 방식에 해당한다.
그 과정을 보다 구체적으로 설명하면 다음과 같다.
우선, 목적지 통신 단말기(200")가 중계 서버(130)에 주기적으로 폴링 신호를 전송하는 상태라고 가정한다. 이러한 상태에서 요청 통신 단말기(200')가 중계 서버(130)에 접속하면, 중계 서버(130)는 상술한 바와 같이 소정의 중계 모듈을 그 요청 통신 단말기(200')에 할당하여야 하는데, 예를 들어 모든 중계 모듈들이 과부하 상태로서 추가적인 중계 처리를 할 수 없는 상태인 경우에는 중계 서버(130)는 외부의 다른 통신 단말기가 중계 처리를 수행할 수 있도록 제어한다.
즉, 외부의 통신 단말기로 하여금 일종의 중계 모듈로써 기능토록 하는 것이다.
여기서, 중계 처리를 수행할 외부 통신 단말기를 산정하기 위해 중계 서 버(130)는 상술한 메모리맵의 정보를 이용할 수 있다. 즉, 메모리맵에는 각 통신 단말기들에 대한 정보가 저장되어 있는데, 중계 서버(130)는 메모리맵을 검토하여 중계 서버(130)로 사용될 수 있는 통신 단말기를 선정하게 된다.
예를 들어 중계 서버(130)는 공인 아이피를 가지고 있으면서 외부의 장치로부터 접속이 가능한 통신 단말기를 중계 모듈로써 선정할 수 있다. 이때 중계 서버(130)는 메모리맵에 저장되어 있는 정보를 기초로 해당 통신 단말기가 중계 처리를 하기에 적당한 하드웨어 및 운영체제를 갖고 있는 것인지를 추가적으로 판단할 수도 있다.
이렇게 중계 모듈로 이용할 통신 단말기가 선정되면 중계 서버(130)는 그 선정된 통신 단말기의 아이피 주소 등의 정보를 요청 통신 단말기(200')에 전송하고, 요청 통신 단말기(200')는 중계 모듈 즉, 중계 처리를 수행하는 통신 단말기에 접속하여 대기한다.
이때, 중계 서버(130)는 이러한 요청 통신 단말기(200')의 상태를 메모리맵에 저장한다.
그리고 중계 서버(130)는 목적지 통신 단말기(200")에서 폴링 신호를 수신하면, 메모리맵을 참조하여 목적지 통신 단말기(200")에 요청 통신 단말기(200')의 상태 정보를 전송한다. 즉, 중계 서버(130)는 요청 통신 단말기(200')가 현재 접속하여 대기 중인 외부의 통신 단말기 아이피 주소 등의 정보를 목적지 통신 단말기(200")에 전송한다.
그러면 목적지 통신 단말기(200")는 중계 처리를 수행하는 통신 단말기에 접 속하게 되고, 중계 처리를 수행하는 통신 단말기는 요청 통신 단말기(200')와 목적지 통신 단말기(200") 간의 세션 매핑 과정을 통해 상호간 P2P 통신이 가능하도록 중계 처리를 수행한다.
이때 요청 통신 단말기(200')와 목적지 통신 단말기(200")는 모두 중계 처리를 수행하는 통신 단말기에 연속 연결 형태로 그 연결 상태를 유지할 수도 있다.
그런데, 이처럼 외부의 통신 단말기가 일종의 중계 모듈로써 기능하는 경우에, 그 중계 모듈로써 기능하는 통신 단말기가 사용자의 명령 또는 기타 다른 이유로 인해 셧 다운 되거나 하여 중계 처리를 수행하지 못하는 경우가 발생할 수 있다.
이 경우, 요청 통신 단말기(200') 및 목적지 통신 단말기(200")는 에러 검출 기능을 내장하여 예를 들어 일정 시간 P2P 통신의 중계 처리가 이루어지지 않는 경우에는 이를 감지하고, 중계 서버(130)에 소정의 에러 메시지를 전송할 수도 있다.
요청 통신 단말기(200') 또는 목적지 통신 단말기(200")로부터 에러 메시지를 수신한 중계 서버(130)는 중계 모듈로써 기능하는 통신 단말기의 상태를 확인하고, 해당 통신 단말기에 문제가 발생하였다고 판단하는 경우에는 다른 외부의 통신 단말기, 즉 중계 처리를 수행할 수 있는 또 다른 통신 단말기의 정보를 요청 통신 단말기(200') 및 목적지 통신 단말기(200")에 전송하여 상호간 P2P 통신을 수행할 수 있도록 하거나, 자체 중계 모듈에 중계 처리의 여유가 있는 경우에는 해당 중계 모듈을 요청 통신 단말기(200') 및 목적지 통신 단말기(200")에 할당할 수도 있다.
이하에서는 도 3a 내지 도 6b를 참조하여 본 발명의 일 실시예에 따른 P2P 서버 시스템(100) 및 그 P2P 서버 시스템(100)과 통신하는 통신 단말기(200) 간의 각 제어흐름에 대해 상세히 설명한다.
우선 도 3a를 참조하여 통신 단말기(200)의 단말 정보가 통신 단말기 관리 서버(110)에 등록 저장되는 과정에 대해서 설명한다.
우선, 통신 단말기(200)는 통신 단말기(200) 사용자의 명령 등에 의해 다른 통신 단말기(200)와 P2P 통신을 수행하는 P2P 통신부(230)를 실행시킨다(단계 S1). P2P 통신부(230)는 자신의 아이피 주소를 포함하는 단말 정보를 추출 또는 생성하여(단계 S3) 통신 단말기 관리 서버(110)에 전송하며 그 등록을 요청한다(단계 S5).
통신 단말기 관리 서버(110)는 수신된 아이피 주소에 대한 더미 커넥션 신호를 생성하여(단계 S7) 통신 단말기(200)로 전송한다(단계 S9).
통신 단말기(200)의 P2P 통신부(230)는 이러한 통신 단말기 관리 서버(110)의 더미커넥션 신호에 대해 자신의 네트워크 상황에 따라 응답할 수도 있고, 응답하지 못할 수도 있다.
예를 들어 방화벽으로 막혀 있거나, 사설 아이피가 할당된 상태에서 포트 포워딩 기능이 방화벽 등에 구비되어 있지 않은 경우에는 P2P 통신부(230)는 통신 단말기 관리 서버(110)의 더미 커넥션 신호를 수신하지 못할 수도 있는 것이다.
통신 단말기 관리 서버(110)는 통신 단말기(200)로부터의 더미 커넥션 신호에 대한 응답이 수신된 경우에는(단계 S11) 해당 통신 단말기(200)가 다른 통신 단말기(200)와 직접 연결이 가능하다고 판단하고(단계 S13), 더미 커넥션 신호가 수 신되지 않은 경우에는 중계 서버(130)를 통해 간접 연결이 가능하다고 판단하고(단계 S15), 그 판단된 정보를 포함하는 단말 정보를 등록한다(단계 S17).
여기서 직접 연결이 가능한 경우에는 각 통신 단말기(200)가 P2P 통신을 직접 수행할 수 있는 것을 의미하고, 간접 연결이 가능한 경우에는 중계 서버(130)를 통해서 상호간 P2P 통신을 수행할 수 있는 것을 의미한다.
본 발명 중 P2P 서버 시스템(100)은 특히 중계 서버(130)를 이용하는 경우에 각 통신 단말기(200)와 중계 서버(130) 간의 연결 형태의 변화에 관한 것을 그 주요 특징으로 한다.
한편, 도 3b에는 통신 단말기(200)가 다른 통신 단말기(200)와 직접 연결이 가능한지 여부를 스스로 판단하여 통신 단말기 관리 서버(110)에 등록하는 과정이 나타나 있다.
즉, 통신 단말기(200)는 P2P 통신부(230)가 실행되는 시점에(단계 S21) 다른 통신 단말기(200)와 직접 연결 가능한지를 자체 네트워크 정보 등을 고려하여 판단한다(단계 S23).
예를 들어 자신에게 할당된 아이피 주소가 사설 아이피인지, 또는 통신 단말기(200) 자체에 방화벽이 활성화되어 있는지 해당 방화벽의 설정이 변경 가능한지 여부 등을 고려하여 다른 통신 단말기(200)가 직접 자신(즉, P2P 통신부(230))에게 접속 가능한 것인지를 판단하는 것이다.
이렇게 판단된 정보와 아이피 주소 등을 포함하는 단말 정보를 추출 및 생성하여(단계 S25) 통신 단말기(200)의 P2P 통신부(230)는 통신 단말기 관리 서 버(110)에 단말 정보를 전송하며 그 등록을 요청한다(단계 S27).
여기서 단말 정보의 추출은 기 저장되어 있던 아이피 주소를 추출하는 것을 의미하고, 단말 정보의 생성은 다른 단말기와 직접 연결이 가능한지에 대한 판단 정보를 생성하는 것을 의미한다.
이에 통신 단말기(200)는 통신 단말기(200)의 단말 정보를 등록하고(단계 S29), 그 등록된 단말 정보에 따라 통신 단말기들(200) 간에 P2P 통신시 직접 연결 또는 중계 서버(130)를 이용한 간접 연결을 제어하게 된다.
물론, 도 3b에서도 도 3a의 경우에 언급된 더미 커넥션 신호를 통신 단말기 관리 서버(110)가 추가적인 확인을 위해 통신 단말기(200)에 전송할 수도 있다.
이하에서는 도 4를 참조하여 본 발명의 일 실시예에 따른 P2P 서버 시스템(100)의 각 구성 요소들 간에 통신 흐름 및 그 각 구성 요소들의 제어 과정에 대해서 설명한다.
우선, 앞선 도 3a 및 도 3b에 도시된 바와 같이 통신 단말기 관리 서버(110)는 단말 정보를 등록해 놓고 있다(단계 S31).
한편, 메타 정보 생성 서버(120)는 관리자 등의 입력에 따라 각 통신 단말기들(200) 간의 통신 연결 정책을 설정하기 위한 소정의 룰 정보를 등록 저장하고 있다(단계 S33).
룰 정보는 크게 사용자 등급을 결정하는 룰 정보와 중계 서버(130)의 서비스 형태를 구분하는 룰 정보로 구분될 수 있다.
사용자 등급을 결정하는 룰 정보는 예를 들어 일 평균 접속률을 기준으로 상 위 10%에 해당하는 사용자를 1등급 유저, 그 외 고객을 2등급 유저 즉, 일반 유저로 구분할 수 있다. 물론 일반 유저는 더 세부적 기준으로 구분될 수도 있다.
중계 서버(130)의 서비스 형태를 구분하는 룰 정보는 예를 들어 다음과 같이 구분된 통신 연결 정책 정보를 포함할 수 있다.
1. 연속 연결 형태 유지 정책 : 즉, 중계 서버(130)를 이용하는 통신 단말기(200)가 접속할 때, 그 접속한 통신 단말기(200)와 중계 서버(130)간 영구 TCP(Transmission Control Protocol) 세션을 유지하는 정책이다. 예를 들어 목적지 통신 단말기(200")가 대기상태일 경우에도 중계 서버(130)는 해당 통신 단말기(200")와의 세션을 지속적으로 유지하며, 요청 통신 단말기(200')가 접속할 때 목적지 통신 단말기(200")와 즉시 세션 매핑을 수행하여 요청 통신 단말기(200')와 목적지 통신 단말기(200")가 상호간 P2P 통신을 할 수 있도록 하는 정책(이하 제1 정책 이라 함)이다.
2. 연속 연결 및 주기 연결 형태 혼합 정책 : 예를 들어 제1 정책 하에서 운영되다 중계 서버(130)를 이용하는 통신 단말기(200) 수가 증가하는 경우 1 등급 유저의 통신 단말기에게는 제1 정책과 같이 연속 연결 형태가 유지되도록 하고, 2 등급 유저에 해당하는 통신 단말기에는 해당 통신 단말기가 주기적으로 폴링 신호를 중계 서버(130)에 전송하는 시점에만 통신 단말기와 중계 서버(130)가 연결되도록 하는 정책(이하 제2 정책 이라 함)이다.
3. 주기 연결 형태 정책 : 모든 유저 즉, 모든 통신 단말기(200)에 대해서 해당 통신 단말기(200)의 주기적 폴링 신호 전송에 의해서 통신 단말기(200)와 중 계 서버(130)가 연결을 유지할 수 있도록 하되 1등급 유저는 2등급 유저보다 더 빠른 주기로 폴링 신호를 중계 서버(130)에 전송하도록 하는 정책(이하 제3 정책 이라 함)이다.
4. 외부 목적지 통신 단말기(200") 이용 정책 : 제일 낮은 등급의 유저부터 순차적으로 외부 목적지 통신 단말기(200")를 통해 중계 되도록 제어하는 정책(이하 제4 정책이라 함)이다. 특히 이 제4 정책은 중계 서버(130)에서 중계 처리를 위한 리소스 부족 발생 시 이용될 수 있는 유용한 방법이다. 이때 중계 서버(130) 소정의 중계 기능 전환 신호를 전송하여 특정 통신 단말기들 간의 P2P 중계 처리를 수행하도록 제어한다.
룰 정보에는 상기한 각각의 정책에 필요한 각 정책별 및 각 등급별 폴링 주기 정보가 포함될 수 있다.
통신 단말기 관리 서버(110)와 메타 정보 생성 서버(120), 중계 서버(130)는 서로 정보 공유를 위한 각종 신호들을 송수신 한다(단계 S35). 예를 들어 통신 단말기 관리 서버(110) 및 중계 서버(130)는 소정의 통신 처리에 따른 각종 로그를 메타 정보 생성 서버(120)로 전송하여 메타 정보 생성 서버(120)가 메타 정보를 생성할 수 있도록 한다(단계 S37).
즉, 메타 정보 생성 서버(120)는 각 통신 단말기들(200)에 대한 P2P 통신 로그를 기초로 각 통신 단말기(200)에 대한 사용자 등급을 포함하는 메타 정보를 생성한다.
예를 들어 메타 정보 생성 서버(120)는 P2P 통신을 많이 한 통신 단말 기(200) 또는 보다 많은 데이터를 다른 통신 단말기(200)에 제공한 통신 단말기(200)에 대해서는 사용자 등급을 높게 설정한 메타 정보를 생성할 수 있다.
메타 정보 생성 서버(120)는 이렇게 생성한 메타 정보와 기 등록된 룰 정보를 중계 서버(130)에 전송한다(단계 S39).
룰 정보와 메타 정보는 이처럼 메타 정보 생성 서버(120)가 직접 중계 서버(130)에 전송할 수도 있지만, 소정의 공유 저장 공간(미 도시함)이 있는 경우 해당 공유 저장 공간을 통해 메타 정보 생성 서버(120)와 중계 서버(130)의 각종 데이터들(메타 정보 및 룰 정보 포함)이 공유될 수도 있음은 물론이다.
중계 서버(130)는 자신의 P2P 통신 중계 처리와 관련된 부하 상태 즉, P2P 통신 중계 현황에 대응되는 통신 연결 정책을 룰 정보에서 추출하여 설정한다(단계 S41).
여기서 P2P 통신 중계 현황은 통신 중계 처리 부하가 얼마나 되는지 등에 대한 정보는 나타내는 것으로서, P2P 통신 중계 처리를 많이 하고 있는 경우와 P2P 통신 중계 처리를 많이 하고 있지 않은 경우, 또는 각 통신 단말기(200)와의 연결 형태는 얼마나 어떻게 구성하고 있는지에 관한 정보를 모두 포함할 수 있다.
예를 들어 중계 서버(130)는 통신량이 적은 경우에는 통신 연결 정책을 제1 정책으로 설정할 수 있고, 통신량이 증가함에 따라 순서대로 제2 정책, 제3 정책, 제4 정책으로 변경 설정할 수 있다.
중계 서버(130)는 설정된 통신 연결 정책에 기초하여 요청 통신 단말기(200')의 사용자 등급과 목적지 통신 단말기(200")의 사용자 등급 중 적어도 어 느 하나에 따라 해당 통신 단말기(200)와의 통신 연결 형태를 결정한다(단계 S43).
예를 들어 현재 설정된 통신 연결 정책이 제2 정책인 경우 중계 서버(130)는 '1등급 유저'의 통신 단말기(200)는 중계 서버(130)와 연속 연결 형태를 유지하도록 하고, '2등급 유저'의 통신 단말기(200)는 중계 서버(130)와 주기 연결 형태를 유지하도록 할 수 있다.
다른 예로써 중계 서버(130)은 설정된 통신 연결 정책과 요청 통신 단말기(200')의 사용자 등급에 기초하여 목적지 통신 단말기(200")의 중계 서버(130)와의 연결 형태를 변경시킬 수도 있다.
중계 서버(130)에서 설정된 각 통신 단말기들(200)과의 통신 연결 형태는 중계 서버(130)를 통한 P2P 통신 현황의 변화와 메타 정보 서버로부터 수신되는 룰 정보 및 메타 정보의 변경에 따라 주기적 또는 비 주기적으로 변경될 수 있다.
이처럼 중계 서버(130)는 각 통신 단말기들(200)과 등급별 각기 다른 방식으로 연결하여 중계 처리를 수행한다(단계 S45).
이하에서는 도 5를 참조하여 통신 단말기(200)가 통신 단말기 관리 서버(110)를 거쳐 중계 서버(130)와 연결되는 과정을 설명한다.
우선, 통신 단말기(200)가 통신 단말기 관리 서버(110)에 P2P 통신 연결을 요청하면(단계 S51), 통신 단말기 관리 서버(110)는 그 요청한 통신 단말기(200)의 정보를 추출하고(단계 S53), 추출한 단말기 정보에 따라 직접 연결 가능한지 여부를 판단한다(단계 S55).
예를 들어 통신 단말기(200)가 다른 통신 단말기(200)와 직접 연결 가능한 경우에는 해당 통신 단말기(200)의 정보 예를 들어 공인 아이피 주소를 저장 관리하여 다른 통신 단말기(200)의 요청이 있는 경우 직접 연결 되도록 처리한다(단계 S57).
만일 판단결과 해당 통신 단말기(200)가 사설 아이피 주소를 가지고 있는 등 다른 통신 단말기(200)와 직접 연결이 불가능한 경우에는 통신 단말기 관리 서버(110)는 해당 통신 단말기(200)에 중계 서버(130)로의 연결을 명령한다(단계 S59). 이때 통신 단말기 관리 서버(110)는 통신 단말기(200)에 연결할 중계 서버(130)의 아이피 주소를 알려준다.
이에 따라 통신 단말기(200)는 P2P 통신을 위한 연결 요청 신호를 중계 서버(130)에 전송한다(단계 S63).
한편, 중계 서버(130)는 도 4를 참조하여 설명한 바와 같이 통신 연결 정책을 설정하고(단계 S61), 메타 정보를 수신하여 저장하고 있는데(단계 S62), 저장된 메타 정보에서 통신 요청한 통신 단말기(200)의 사용자 등급을 추출한다(단계 S65).
그리고 중계 서버(130)는 추출한 사용자 등급과 설정된 통신 연결 정책에 따라 해당 통신 단말기(200)의 통신 연결 형태를 판단한다(단계 S67). 판단된 통신 연결 형태는 예를 들어 연속 연결 형태 또는 주기 연결 형태일 수 있다.
중계 서버(130)는 판단된 통신 연결 형태 정보를 통신 단말기(200)에 전송하고(단계 S69), 통신 단말기(200)는 자신에게 할당된 통신 연결 형태가 연속 연결 형태인 경우에는(단계 S71) 중계 서버(130)와 통신 연결을 지속적으로 유지하고(단 계 S73), 주기 연결 형태인 경우에는 주기적으로 중계 서버(130)에 폴링 신호를 전송하여 간헐적으로 통신 상태를 유지한다(단계 S75).
여기서 통신 단말기(200)가 중계 서버(130)에 폴링 신호를 전송하는 주기는 중계 서버(130)로부터 전송된 제어 신호에 따라 변경될 수 있다.
이하에서는 도 6a를 참조하여 목적지 통신 단말기(200")가 중계 서버(130)와 연속 연결 형태를 유지한 상태에서 요청 통신 단말기(200')와 연결되는 과정에 대해서 설명한다.
우선, 목적지 통신 단말기(200")는 중계 서버(130)의 제어에 따라 연속 연결 형태를 유지하고 있다(단계 S81).
이 상태에서 요청 통신 단말기(200')가 목적지 통신 단말기(200")로의 연결을 중계 서버(130)에 요청하면(단계 S83), 중계 서버(130)는 이미 목적지 통신 단말기(200")와 연결을 유지하고 있으므로 즉, 해당 목적지 통신 단말기(200")의 TCP 세션 정보를 보관/ 관리하고 있으므로 곧바로 요청 통신 단말기(200')와 목적지 통신 단말기(200")가 세션 매핑을 수행할 수 있다(단계 S85).
세션 매핑이 수행된 이후 중계 서버(130)는 P2P 통신 연결 확립 신호를 요청 통신 단말기(200')와 목적지 통신 단말기(200")에 전송하여(단계 S87) 요청 통신 단말기(200')와 목적지 통신 단말기(200")가 상호간 P2P 통신을 수행할 수 있도록 한다(단계 S89).
물론, 요청 통신 단말기(200')와 목적지 통신 단말기(200") 간의 통신은 중계 서버(130)의 세션 매핑에 의해 데이터 바이패스(중계)를 통해 이루어질 수 있는 것이지 양 통신 단말기(200) 간에 직접적으로 통신이 이루어지는 것은 아니다.
이하에서는 도 6b를 참조하여 목적지 통신 단말기(200")가 중계 서버(130)와 주기 연결 형태를 유지한 상태에서 요청 통신 단말기(200')와 연결되는 과정에 대해서 설명한다.
요청 통신 단말기(200')가 중계 서버(130)에 목적지 통신 단말기(200")로의 연결을 요청하면(단계 S91), 중계 서버(130)는 우선 요청 통신 단말기(200')와의 연결을 유지한 상태에서 목적지 통신 단말기(200")로부터 폴링 신호가 수신될 때까지 대기한다(단계 S92).
본 실시예에서 목적지 통신 단말기(200")는 중계 서버(130)와 주기 연결 형태를 유지하고 있으므로 주기적으로 중계 서버(130)의 제어에 따른 주기 간격으로 폴링 신호를 전송한다(단계 S93).
목적지 통신 단말기(200")로부터 폴링 신호가 수신되면 중계 서버(130)는 연결을 유지하고 있던 요청 통신 단말기(200')의 연결 정보가 폴링 신호에 의해 연결된 목적지 통신 단말기(200")의 연결 정보를 이용하여 세션 매핑을 수행한다(단계 S95).
이렇게 세션 매핑이 이루어진 후, 중계 서버(130)는 요청 통신 단말기(200')와 목적지 통신 단말기(200")로 P2P 통신 연결 확립 신호를 전송하고(단계 S96,S97), 요청 통신 단말기(200')와 목적지 통신 단말기(200") 간에 P2P 통신이 이루어지도록 한다(단계 S99).
한편, 본 발명은 상기한 특정 실시예에 한정되는 것이 아니라 본 발명의 요 지를 벗어나지 않는 범위 내에서 여러 가지로 변형 및 수정하여 실시할 수 있는 것이다. 이러한 변형 및 수정이 첨부되는 특허청구범위에 속한다면 본 발명에 포함된다는 것은 자명할 것이다.
도 1은 본 발명의 일 실시예에 따른 P2P 서버 시스템과 통신 단말기를 포함하는 전체 구성도이고,
도 2는 도 1의 통신 단말기의 기능 블록도이고,
도 3a 내지 도 6b는 본 발명의 일 실시예에 따른 P2P 서버 시스템과 통신 단말기간의 통신 제어 흐름도이다.
* 도면의 주요 부분에 대한 부호의 설명
100 : P2P 통신 서버 시스템 200 : 통신 단말기
200' : 요청 통신 단말기 200" : 목적지 통신 단말기
110 : 통신 단말기 관리 서버 120 : 메타 정보 생성 서버
130 : 중계 서버 210 : 실행 제어부
220 : 설정 저장부 230 : P2P 통신부
231 : 저장부 233 : 통신 방식 판단부
235 : 단말 정보 등록부

Claims (20)

  1. P2P(Peer-To-Peer) 통신을 수행하는 다수의 통신 단말기들 간의 연결을 제어하는 P2P 서버 시스템의 제어방법에 있어서,
    (a) 상기 다수의 통신 단말기들 중 각 통신 단말기와 최초로 연결되는 시점에 해당 통신 단말기로부터 전송되는 통신 단말기 정보를 저장하고, 상기 통신 단말기 정보를 기초로 해당 통신 단말기의 다른 통신 단말기와의 연결 방식을 판단하는 단계와;
    (b) 상기 다수의 통신 단말기들 중 소정의 요청 통신 단말기로부터 소정의 목적지 통신 단말기로의 연결 요청을 수신한 경우, 상기 (a) 단계에서 판단된 상기 목적지 통신 단말기에 대한 연결 방식에 따라 상기 요청 통신 단말기 및 상기 목적지 통신 단말기 간의 연결이 직접 연결과 소정의 중계 처리를 통한 간접 연결 중 어느 하나의 방식에 의해 이루어지도록 제어하는 단계를 포함하는 것을 특징으로 하는 P2P 서버 시스템의 제어방법.
  2. 제1항에 있어서,
    상기 다수의 통신 단말기들 중 각 통신 단말기와의 통신 연결 정책을 설정하기 위한 룰 정보를 저장하는 단계와;
    상기 (b) 단계에서 상기 요청 통신 단말기와 상기 목적지 통신 단말기 간의 연결이 중계 처리를 통한 간접 연결에 의해 이루어지는 경우,
    (b1) 상기 중계 처리를 함에 있어서의 부하 상태에 대응되는 통신 연결 정책을 상기 저장된 룰 정보에서 추출하여 설정하는 단계와;
    (b2) 상기 설정된 통신 연결 정책을 기초로, 중계 처리를 위한 상기 각 요청 통신 단말기 및 목적지 통신 단말기와의 통신 연결 형태를 설정하는 단계를 포함하는 것을 특징으로 하는 P2P 서버 시스템의 제어방법.
  3. 제1항에 있어서,
    상기 다수의 통신 단말기들 중 각 통신 단말기와의 통신 연결 정책을 설정하기 위한 룰 정보를 저장하는 단계와;
    상기 각 통신 단말기의 P2P 통신에 따른 로그를 기초로 상기 각 통신 단말기에 대한 사용자 등급을 포함하는 메타 정보를 생성하는 단계를 더 포함하고,
    상기 (b) 단계에서 상기 요청 통신 단말기와 상기 목적지 통신 단말기 간의 연결이 중계 처리를 통한 간접 연결에 의해 이루어지는 경우,
    (b1) 상기 중계 처리를 함에 있어서의 부하 상태에 대응되는 통신 연결 정책을 상기 저장된 룰 정보에서 추출하여 설정하는 단계와;
    (b2) 상기 메타 정보에 포함된 상기 요청 통신 단말기의 사용자 등급과 상기 목적지 통신 단말기의 사용자 등급 중 적어도 어느 하나와 상기 설정된 통신 연결 정책을 기초로, 중계 처리를 위한 상기 각 요청 통신 단말기 및 목적지 통신 단말기와의 통신 연결 형태를 설정하는 단계를 포함하는 것을 특징으로 하는 P2P 서버 시스템의 제어방법.
  4. 제3항에 있어서,
    상기 (b2) 단계에서 설정되는 상기 각 요청 통신 단말기 및 목적지 통신 단 말기와의 통신 연결 형태는 상기 중계 처리 부하 상태, 상기 저장되는 룰 정보, 및 상기 생성되는 메타 정보 중 적어도 어느 하나가 변경됨에 따라 함께 변경 설정되는 것을 특징으로 하는 P2P 서버 시스템의 제어방법.
  5. 제3항에 있어서,
    상기 (b2) 단계에서 설정되는 상기 각 요청 통신 단말기 및 목적지 통신 단말기와의 통신 연결 형태는 통신 단말기와 지속적으로 연결을 유지하는 연속 연결 형태와, 통신 단말기의 주기적 폴링 신호에 의해 해당 통신 단말기와 간헐적으로 연결을 유지하는 주기 연결 형태 중 적어도 어느 하나를 포함하는 것을 특징으로 하는 P2P 서버 시스템의 제어방법.
  6. 제5항에 있어서,
    상기 (b2) 단계에서 상기 목적지 통신 단말기와의 통신 연결 형태가 설정된 상태에서, 중계 처리를 함에 있어서의 부하 상태 변화에 의한 통신 연결 정책 변화에 따라 기 접속된 상기 목적지 통신 단말기에 통신 연결 형태의 변경을 위한 제어신호를 전송하는 단계를 더 포함하는 것을 특징으로 하는 P2P 서버 시스템의 제어방법.
  7. 제5항에 있어서,
    상기 (b) 단계는, 상기 목적지 통신 단말기와 상기 연속 연결 형태로 연결된 상태에서 상기 요청 통신 단말기로부터 상기 목적지 통신 단말기로의 접속 요청이 수신된 경우, 즉시 상기 요청 통신 단말기와 상기 목적지 통신 단말기를 세션 매핑 과정을 통해 상호 연결시키고 상기 요청 통신 단말기와 상기 목적지 통신 단말기간의 P2P 통신을 중계하는 단계를 더 포함하는 것을 특징으로 하는 P2P 서버 시스템의 제어방법.
  8. 제5항에 있어서,
    상기 (b) 단계는,
    (b3) 상기 목적지 통신 단말기와 상기 주기 연결 형태로 연결된 상태에서 상기 요청 통신 단말기로부터 상기 목적지 통신 단말기로의 접속 요청이 수신된 경우, 상기 목적지 통신 단말기로부터 폴링 신호가 수신되는 시점까지 대기하는 단계와;
    (b4) 상기 요청 통신 단말기와 상기 목적지 통신 단말기를 세션 매핑 과정을 통해 상호 연결시키고 상기 요청 통신 단말기와 상기 목적지 통신 단말기 간의 P2P 통신을 중계하는 단계를 더 포함하는 것을 특징으로 하는 P2P 서버 시스템의 제어방법.
  9. 제1항 내지 제8항 중 어느 한 항에 있어서,
    상기 다수의 통신 단말기들 간의 중계 처리를 위한 리소스 부족 발생 시 상기 저장된 통신 단말기 정보를 기초로 중계 기능 제공이 가능한 통신 단말기를 선 택하는 단계와;
    상기 선택된 통신 단말기에 중계 기능 전환 신호를 전송하여 특정 통신 단말기들 간의 P2P 중계 처리를 수행하도록 제어하는 단계를 더 포함하는 것을 특징으로 하는 P2P 서버 시스템의 제어방법.
  10. 중계 서버를 거치거나 거치지 않는 방법으로 다른 통신 단말기와 P2P(peer-to-peer) 통신을 수행하기 위해 P2P(peer-to-peer) 서버 시스템에 자신의 정보를 등록하는 통신 단말기의 제어방법에 있어서,
    네트워크 관련 설정 데이터를 저장하는 단계와;
    통신 연결 형태를 정하기 위한 연결 형태 선정 기준을 저장하는 단계와;
    다른 통신 단말기와 P2P 통신을 수행하는 P2P 통신 기능을 활성화시키는 단계와;
    상기 P2P 통신 기능이 활성화되는 시점에, 상기 저장된 네트워크 관련 설정 데이터와 상기 저장된 연결 형태 선정 기준을 비교하여 상기 다른 통신 단말기와 P2P 통신을 수행할 때 직접 통신이 가능한지 중계 처리를 거쳐 통신을 해야 하는지 여부를 판단하는 단계와;
    상기 판단된 판단 결과를 포함하는 통신 단말기 정보를 상기 P2P 서버 시스템에 등록하는 단계를 포함하는 것을 특징으로 하는 실행 시점에 판단된 통신 방식 정보를 P2P 서버 시스템에 등록하는 통신 단말기의 제어방법.
  11. P2P(Peer-To-Peer) 통신을 수행하는 다수의 통신 단말기들 간의 연결을 제어하는 P2P 서버 시스템에 있어서,
    상기 다수의 통신 단말기들 간의 P2P 통신을 중계하는 중계 서버와;
    다수의 통신 단말기들 중 각 통신 단말기와 최초로 연결되는 시점에 상기 각 통신 단말기로부터 전송되는 통신 단말기 정보를 저장하고, 상기 통신 단말기 정보를 기초로 해당 통신 단말기의 다른 통신 단말기와의 연결 방식을 판단하며, 상기 다수의 통신 단말기들 중 소정의 요청 통신 단말기로부터 소정의 목적지 통신 단말기로의 연결 요청을 수신한 경우, 상기 판단된 목적지 통신 단말기에 대한 연결 방식에 따라 상기 요청 통신 단말기 및 상기 목적지 통신 단말기 간의 연결이 직접 연결과 소정의 중계 처리를 통한 간접 연결 중 어느 하나의 방식에 의해 이루어지도록 제어하는 통신 단말기 관리 서버를 포함하여 구성되는 것을 특징으로 하는 P2P 서버 시스템.
  12. 제11항에 있어서,
    상기 중계 서버와 상기 각 통신 단말기 간의 통신 연결 정책을 설정하기 위한 룰 정보를 저장하고, 상기 저장된 룰 정보를 상기 중계 서버에 전송하는 메타 정보 생성 서버를 더 포함하고,
    상기 중계 서버는 상기 각 통신 단말기 간의 P2P 통신을 위한 중계 처리를 함에 있어서의 부하 상태에 대응되는 통신 연결 정책을 상기 수신되는 룰 정보에서 추출하여 설정하고, 상기 설정된 통신 연결 정책을 기초로 상기 각 통신 단말기와의 통신 연결 형태를 설정하는 것을 특징으로 하는 P2P 서버 시스템.
  13. 제11항에 있어서,
    상기 중계 서버와 상기 각 통신 단말기 간의 통신 연결 정책을 설정하기 위한 룰 정보를 저장하고, 상기 각 통신 단말기의 P2P 통신 로그를 기초로 상기 각 통신 단말기에 대한 사용자 등급을 포함하는 메타 정보를 생성하며, 상기 저장된 룰 정보와 상기 생성된 메타 정보를 상기 중계 서버에 전송하는 메타 정보 생성 서버를 더 포함하고,
    상기 중계 서버는 상기 각 통신 단말기 간의 P2P 통신을 위한 중계 처리를 함에 있어서의 부하 상태에 대응되는 통신 연결 정책을 상기 수신되는 룰 정보에서 추출하여 설정하고, 상기 수신되는 메타 정보에 포함된 각 통신 단말기의 사용자 등급과 상기 설정된 통신 연결 정책을 기초로 상기 각 통신 단말기와의 통신 연결 형태를 설정하는 것을 특징으로 하는 P2P 서버 시스템.
  14. 제13항에 있어서,
    상기 중계 서버에서 설정되는 상기 각 통신 단말기와의 통신 연결 형태는 상기 중계 서버에서의 중계 처리에 따른 부하 상태, 상기 수신되는 룰 정보, 및 상기 수신되는 메타 정보 중 적어도 어느 하나가 변경됨에 따라 함께 변경 설정되는 것을 특징으로 하는 P2P 서버 시스템.
  15. 제13항에 있어서,
    상기 중계 서버가 설정하는 통신 연결 형태는 소정의 통신 단말기와 지속적으로 연결을 유지하는 연속 연결 형태와, 소정의 통신 단말기의 상기 중계 서버에 대한 주기적 폴링 신호에 의해 해당 통신 단말기와 간헐적으로 연결을 유지하는 주기 연결 형태 중 적어도 어느 하나를 포함하는 것을 특징으로 하는 P2P 서버 시스템.
  16. 제15항에 있어서,
    상기 중계 서버는 상기 목적지 통신 단말기와 상기 연속 연결 형태로 연결된 상태에서 상기 요청 통신 단말기로부터 상기 목적지 통신 단말기로의 접속 요청이 수신된 경우, 즉시 상기 요청 통신 단말기와 상기 목적지 통신 단말기를 세션 매핑 과정을 통해 상호 연결시키고 상기 요청 통신 단말기와 상기 목적지 통신 단말기간의 P2P 통신을 중계하는 것을 특징으로 하는 P2P 서버 시스템.
  17. 제15항에 있어서,
    상기 중계 서버는 상기 목적지 통신 단말기와 상기 주기 연결 형태로 연결된 상태에서 상기 요청 통신 단말기로부터 상기 목적지 통신 단말기로의 접속 요청이 수신된 경우, 상기 목적지 통신 단말기로부터 폴링 신호가 수신되는 시점까지 기다린 후 상기 요청 통신 단말기와 상기 목적지 통신 단말기를 세션 매핑 과정을 통해 상호 연결시키고 상기 요청 통신 단말기와 상기 목적지 통신 단말기 간의 P2P 통신을 중계하는 것을 특징으로 하는 P2P 서버 시스템.
  18. 제11항 내지 제17항 중 어느 한 항에 있어서,
    상기 중계 서버는 상기 통신 단말기 관리 서버로부터 상기 각 통신 단말기의 통신 단말기 정보를 수신하고, 상기 각 통신 단말기 간의 중계 처리를 위한 리소스 부족 발생 시 상기 수신된 통신 단말기 정보를 기초로 중계 기능 제공이 가능한 통신 단말기를 선택하고, 선택된 통신 단말기에 중계 기능 전환 신호를 전송하여 특정 통신 단말기들 간의 P2P 중계 처리를 수행하도록 제어하는 것을 특징으로 하는 P2P 서버 시스템.
  19. 중계 서버를 거치거나 거치지 않는 방법으로 다른 통신 단말기와 P2P(peer-to-peer) 통신을 수행하기 위해 P2P(peer-to-peer) 서버 시스템에 자신의 정보를 등록하는 통신 단말기에 있어서,
    네트워크 관련 설정 데이터가 저장되는 설정 저장부와;
    외부 통신 단말기와 P2P 통신을 수행하는 P2P 통신부와;
    상기 P2P 통신부를 실행시키는 실행 제어부를 포함하여 구성되고,
    상기 P2P 통신부는,
    통신 연결 형태를 정하기 위한 연결 형태 선정 기준이 저장된 저장부와;
    상기 실행 제어부에 의해 상기 P2P 통신부가 실행되는 시점에, 상기 설정 저장부에 저장된 네트워크 관련 설정 데이터와 상기 저장부에 저장된 연결 형태 선정 기준을 비교하여, 다른 통신 단말기와 P2P 통신을 수행할 때 직접 통신이 가능한지 상기 중계 서버를 거쳐 통신을 해야 하는지 여부를 판단하는 통신 방식 판단부와;
    상기 통신 방식 판단부에서 판단된 판단 결과를 포함하는 통신 단말기 정보 를 상기 P2P 서버 시스템에 등록하는 단말 정보 등록부를 포함하여 구성되는 것을 특징으로 하는 실행 시점에 판단된 통신 방식 정보를 P2P 서버 시스템에 등록하는 통신 단말기.
  20. 제19항에 있어서,
    상기 통신 방식 판단부는 상기 설정 저장부에 저장된 네트워크 관련 설정 데이터에 포함된 아이피 주소가 사설 아이피 주소인 경우에 다른 통신 단말기와 P2P 통신을 수행할 때 상기 중계 서버를 거쳐 통신을 해야 한다고 판단하는 것을 특징으로 하는 실행 시점에 판단된 통신 방식 정보를 P2P 서버 시스템에 등록하는 통신 단말기.
KR1020090074054A 2009-08-12 2009-08-12 통신 단말기 및 그 제어방법과, p2p 서버 시스템 및 그 제어방법 KR101058275B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020090074054A KR101058275B1 (ko) 2009-08-12 2009-08-12 통신 단말기 및 그 제어방법과, p2p 서버 시스템 및 그 제어방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090074054A KR101058275B1 (ko) 2009-08-12 2009-08-12 통신 단말기 및 그 제어방법과, p2p 서버 시스템 및 그 제어방법

Publications (2)

Publication Number Publication Date
KR20110016525A KR20110016525A (ko) 2011-02-18
KR101058275B1 true KR101058275B1 (ko) 2011-08-22

Family

ID=43774841

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090074054A KR101058275B1 (ko) 2009-08-12 2009-08-12 통신 단말기 및 그 제어방법과, p2p 서버 시스템 및 그 제어방법

Country Status (1)

Country Link
KR (1) KR101058275B1 (ko)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130089925A (ko) * 2012-01-13 2013-08-13 에스케이플래닛 주식회사 메타 클라우드 컴퓨팅 기반의 데이터 관리 시스템, 이를 위한 방법 및 장치
KR101518853B1 (ko) * 2014-02-12 2015-05-21 정성윤 M2m 기반의 자동차 제어장치 및 방법
TWI551100B (zh) * 2014-06-13 2016-09-21 物聯智慧科技(深圳)有限公司 用以進行點對點連接的方法、伺服器與裝置
KR102405694B1 (ko) * 2015-12-23 2022-06-07 삼성전자주식회사 전자 장치의 동작 방법과 중계 장치와 이의 동작 방법

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070195807A1 (en) 2001-12-17 2007-08-23 Microsoft Corporation Methods and Systems for Establishing Communications Through Firewalls and Network Address Translators

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070195807A1 (en) 2001-12-17 2007-08-23 Microsoft Corporation Methods and Systems for Establishing Communications Through Firewalls and Network Address Translators

Also Published As

Publication number Publication date
KR20110016525A (ko) 2011-02-18

Similar Documents

Publication Publication Date Title
EP2645636B1 (en) Home gateway, cloud server, and method for communication therebetween
US7260599B2 (en) Supporting the exchange of data by distributed applications
US8537709B2 (en) Network device, and multi-wide area network interface selection module and method
KR101602760B1 (ko) p2p 연결을 이용한 클라우드 서비스 트래픽의 절감 방법 및 그 장치
US9609587B2 (en) System and method for host and OS agnostic management of connected devices through network controlled state alteration
JP6072132B2 (ja) モバイル端末の中継サーバー能動接続を用いた通信路の開設方法
CN110557327A (zh) 利用近程通信技术可直接与用户终端联动的独立型IoT网关
CN102893556A (zh) 用于源对等体基于容量的Diameter负载共享的方法、系统和计算机可读介质
CN104683435B (zh) 网络系统、保持连接方法、电子设备、服务器
KR101058275B1 (ko) 통신 단말기 및 그 제어방법과, p2p 서버 시스템 및 그 제어방법
CN110505712A (zh) 一种传输文件的方法及终端
JPWO2007039942A1 (ja) 端末装置及びサーバ装置及び指令装置
CN106657259A (zh) 一种用于服务器集群的路由服务器及路由服务方法
KR102001103B1 (ko) 전자장치, 서버 및 시스템의 제어방법
CN111193778B (zh) 一种web服务负载均衡的方法及装置
CN105072148B (zh) 与终端建立连接的方法及装置
CN112134744B (zh) 一种分布式管理系统中节点的管理方法
CN102067516A (zh) 请求组播、处理组播请求及对其进行辅助的方法和装置
CN108632355B (zh) 一种家电网络选路方法、控制终端、可读存储介质及设备
JP2005182702A (ja) Ipネットワークにおけるアクセス制御方式
CN101227378B (zh) 基于网络存储的通信业务建立方法及存储设备
CN109983734A (zh) 具有中继设备的远程计算设备的子组
EP2905999B1 (en) Data transmission method, multi-medium access point and multi-medium client
CN106533802B (zh) 网络工作模式切换方法及装置
US11310310B2 (en) Communication device for peer-to-peer communication and a communication network using the same

Legal Events

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

Payment date: 20140724

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20170705

Year of fee payment: 9