[go: up one dir, main page]

KR100694079B1 - 유무선 통합 네트워크에서 p2p 서비스를 위한 데이터다운로드 방법 및 그 노드 - Google Patents

유무선 통합 네트워크에서 p2p 서비스를 위한 데이터다운로드 방법 및 그 노드 Download PDF

Info

Publication number
KR100694079B1
KR100694079B1 KR1020050001954A KR20050001954A KR100694079B1 KR 100694079 B1 KR100694079 B1 KR 100694079B1 KR 1020050001954 A KR1020050001954 A KR 1020050001954A KR 20050001954 A KR20050001954 A KR 20050001954A KR 100694079 B1 KR100694079 B1 KR 100694079B1
Authority
KR
South Korea
Prior art keywords
node
predetermined data
wired
holder
information
Prior art date
Application number
KR1020050001954A
Other languages
English (en)
Other versions
KR20060081302A (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 KR1020050001954A priority Critical patent/KR100694079B1/ko
Priority to US11/256,162 priority patent/US7821945B2/en
Publication of KR20060081302A publication Critical patent/KR20060081302A/ko
Application granted granted Critical
Publication of KR100694079B1 publication Critical patent/KR100694079B1/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
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • 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
    • H04L67/1074Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
    • H04L67/1078Resource delivery mechanisms
    • H04L67/1085Resource delivery mechanisms involving dynamic management of active down- or uploading connections

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

유무선 통합 네트워크에서 P2P 서비스를 위한 데이터 다운로드 방법 및 그 노드가 개시된다. 본 발명의 일 실시예에 따른, 유무선 통합 네트워크에서 P2P 서비스를 위한 데이터 다운로드 방법은, 소정 데이터를 요청한 요청자 노드와 상기 소정 데이터를 보유한 홀더 노드 간의 다운로드 경로 상에 존재하는 다수의 노드들 중에서 유선 노드들만을 통해 상기 소정 데이터를 상기 요청자 노드로 다운로드하는 단계를 포함하는 것을 특징으로 한다. 본 발명에 따르면, P2P 방식에 따른 검색 성공률의 저하없이 파일 다운로드 속도를 향상시킬 수 있으며 각 노드의 데이터 저장 공간을 절약할 수 있는 효과를 제공한다.
유무선 통합 네트워크, P2P, 다운로드, 캐싱

Description

유무선 통합 네트워크에서 P2P 서비스를 위한 데이터 다운로드 방법 및 그 노드{Method of data downloading for P2P service in integrated wire and wireless networks, and node therefor}
도 1은 종래 기술의 일 예에 따라 P2P 서비스를 위한 파일 검색 및 다운로드 과정을 설명하기 위한 참고도,
도 2는 본 발명의 일 실시예에 따른 P2P 서비스를 위한 데이터 다운로드 방법을 설명하기 위한 참고도,
도 3은 본 발명의 다른 실시예에 따른 P2P 서비스를 위한 데이터 다운로드 방법을 설명하기 위한 참고도,
도 4는 본 발명의 또 다른 실시예에 따른 P2P 서비스를 위한 데이터 다운로드 방법을 설명하기 위한 참고도,
도 5는 본 발명의 일 실시예에 따른 노드의 블록도,
도 6은 본 발명의 일 실시예에 따른 홀더 노드의 동작을 설명하기 위한 흐름도,
도 7은 본 발명의 일 실시예에 따른 무선 노드의 동작을 설명하기 위한 흐름도,
도 8은 본 발명의 또 다른 실시예에 따른 P2P 서비스를 위한 데이터 다운로 드 방법을 설명하기 위한 참고도면이다.
본 발명은 네트워크 상에서의 데이터 다운로드에 관한 것으로, 보다 상세하게는 유무선 통합 네트워크에서 P2P 서비스를 위한 데이터 다운로드 방법 및 그 노드에 관한 것이다.
최근, 인터넷 상에서의 정보 교환을 위해 P2P(Peer-To-Peer) 방식이 널리 이용되고 있다. P2P(Peer-To-Peer) 방식은 P2P 네트워크에 참여한 노드들이 보유한 파일을 상호 공유한다. P2P 방식에 따른 파일 공유와 검색을 위해 여러 가지 방식이 존재한다. 그 중 대표적인 방식으로는 검색 메시지를 모든 주변 노드에 브로드캐스팅 하는 방식, 공유한 파일들에 대한 식별키를 갖고 그 키 값에 따라 검색하는 방식 및 일정한 토폴로지(topology)를 형성하고 서로에 대한 토폴로지 및 데이터 정보를 공유하고 파일을 검색하는 방식 등이 있다.
도 1은 종래 기술의 일 예에 따라 P2P 네트워크에 참여한 노드들이 공유한 파일을 검색하고 다운로드받는 과정을 나타내는 도면이다. 노드들(110 내지 160)은 공유한 파일이 위치한 로컬 파일 저장소와 파일에 대한 정보만 캐싱(caching)하고 있는 라우팅 테이블을 갖고 있다. 라우팅 테이블에는 각각의 노드를 식별할 수 있는 식별키와 파일을 갖고 있는 노드, 그 노드로 접근하기 위한 다음 노드에 관한 정보를 담고 있다.
특정 파일을 검색하여 다운로드받고자 하는 요청자 노드(requester node)(110)는 자신의 라우팅 테이블에서 검색하고자 하는 파일의 키 값과 가장 가까운 키 값을 갖고 있는 노드인 노드A(120)로 검색 메시지를 보낸다. 노드A(120)는 자신의 로컬 저장소에 요청된 파일이 존재하는지 확인하고, 그 파일이 없으면 자신의 라우팅 테이블에 캐싱된 파일정보들 가운데서 요청된 파일의 키 값과 가장 가까운 키 값을 갖고 있는 노드인 노드B(130)로 검색 메시지를 전송한다.
노드B(130)는 자신의 로컬 저장소에 그 파일이 존재하는지 확인하고, 그 파일이 없으면 백트래킹(backtracking) 방식으로 다시 노드A(120)에게 검색 실패 메시지를 넘겨준다. 노드B(130)의 경우처럼, 검색 방향으로 더 이상 검색 메시지를 전송할 노드가 없거나, 루핑(looping)이 발생하면 항상 백트래킹(backtracking) 방식으로 검색이 진행된다.
노드A(120)는 요청된 파일의 키 값과 두 번째로 가까운 키 값을 갖고 있는 노드C(140)로 검색 메시지를 전송한다. 노드C(140)는 다시 노드D(150)로, 노드D(150)는 노드A(120)로 검색 메시지를 보낸다. 노드A(120)는 검색 메시지의 GUID(Global Unique Identifier)에 의해 이 메시지가 루핑이 생긴 메시지임을 알 수 있다. 노드A(120)는 검색 실패 메시지를 백트래킹 방식으로 노드D(150)를 거쳐 노드C(140)로 전달한다. 노드C(140)는 요청된 파일의 키 값과 두 번째로 가까운 키 값을 갖고 있는 노드E(160)로 검색 메시지를 전송한다.
노드E(160)는 요청자 노드(110)가 요청한 파일을 갖고 있으므로 검색 요청을 해왔던 경로인 노드C(140)-노드A(120)를 통하여 그 파일을 요청자 노드(110)로 다 운로드한다. 이 때 다운로드 경로상의 노드인 노드C(140)와 노드A(120)는 그 파일을 자신의 로컬 저장소에 저장한다. 만약, 로컬 저장소가 가득 차면 LRU(Least Recently Used) 규칙에 따라 방문한지 가장 오래된 파일을 지우고 대신 라우팅 테이블에 그 파일에 대한 정보를 캐싱한다.
파일을 전송할 때는 TTL(Time-To-Live) 값에 근거하여 파일 검색 범위를 제한하고 검색에 걸린 홉수(hop count)는 depth-to-live라는 값을 이용하여 설정한다. 프로토콜은 패킷 지향 프로토콜이고 모든 메시지는 랜덤하게 생성된 64비트의 transaction ID, hops-to-live limit 및 depth counter 등 세 가지를 기본으로 갖고 있다. 여러 가지 종류의 프로토콜 메시지가 있는데 그 중 파일을 검색할 때 메시지는 Request.data, 검색이 중간에 실패했을 때 보내는 메시지는 Request.failed, 검색된 파일을 요청자한테 보내줄 때 사용하는 메시지는 Send.data 가 있다. 전술한 검색 방식은 검색 성공률이 높고 트래픽이 적은 장점을 갖고 있다.
전술한 종래 P2P 네트워크 상에서의 데이터 검색 및 다운로드 방식은 유선 환경을 기반으로 고안된 것으로서, 파일을 다운로드 받을 때 다운로드 경로상의 모든 노드들에 파일을 저장한다. 따라서 각 노드의 링크에서 비교적 높은 대역폭이 허용되어야 하고 각 노드는 많은 파일을 저장할 수 있는 저장 능력이 요구된다.
한편, 유선 네트워크와 무선 네트워크가 통합된 통합 네트워크가 개발 및 보급되고 있고, 무선 인터넷 기능을 구비한 고성능의 무선 노드들도 보급되고 있다. P2P 서비스 또한 유무선 통합 네트워크을 통해 제공된다. 그러나 무선 노드들은 일 반적으로 저장용량이 작고 무선 채널도 제한된 대역폭을 제공한다. 그러므로 종래의 유선 네트워크 및 유선 노드들에 기반한 P2P 방식에 따른 데이터 다운로드 방식을 그대로 유무선 통합 환경에 적용하기에는 문제가 있다.
본 발명이 이루고자 하는 기술적 과제는 유무선 통합 환경에 적합한 P2P 서비스를 위한 데이터 다운로드 방법 및 이를 위한 노드를 제공하는데 있다.
본 발명이 이루고자 하는 다른 기술적 과제는 유무선 통합 환경에서 P2P 서비스하는 경우, 무선 채널의 제한된 대역폭을 고려하여 보다 빠르게 데이터를 다운로드할 수 있는 방법 및 이를 위한 노드를 제공하는데 있다.
본 발명이 이루고자 하는 또 다른 기술적 과제는 유무선 통합 환경에서 P2P 서비스하는 경우, 노드의 제한된 데이터 저장 능력을 고려하여 선택적으로 데이터를 캐싱하면서 데이터를 다운로드하는 방법 및 이를 위한 노드를 제공하는데 있다.
본 발명이 이루고자 하는 또 다른 기술적 과제는 유무선 통합 환경에 적합한 데이터 다운로드 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공하는데 있다.
본 발명이 이루고자 하는 또 다른 기술적 과제는 유무선 통합 환경에서 P2P 서비스하는 경우, 무선 채널의 제한된 대역폭을 고려하여 보다 빠르게 데이터를 다운로드할 수 있는 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공하는데 있다.
본 발명이 이루고자 하는 또 다른 기술적 과제는 유무선 통합 환경에서 P2P 서비스하는 경우, 노드의 제한된 데이터 저장 능력을 고려하여 선택적으로 데이터를 캐싱하면서 데이터를 다운로드하는 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공하는데 있다.
상기 과제를 이루기 위한 본 발명의 일 측면에 의한 데이터 다운로드 방법은,
유무선 통합 네트워크에서 P2P 서비스를 위한 데이터 다운로드 방법에 있어서, 소정 데이터를 요청한 요청자 노드와 상기 소정 데이터를 보유한 홀더 노드 간의 다운로드 경로 상에 존재하는 다수의 노드들 중에서 유선 노드들만을 통해 상기 소정 데이터를 상기 요청자 노드로 다운로드하는 단계를 포함하는 것을 특징으로 한다.
상기 소정 데이터를 상기 요청자 노드로 다운로드하는 단계는, 상기 다운로드 경로 상에서 상기 홀더 노드의 다음 노드인 제1 노드가 무선 노드이면, 상기 홀더 노드는 상기 소정 데이터에 관한 정보를 포함하는 제1 정보 메시지를 상기 제1 노드로 전송하는 단계; 상기 제1 노드는 상기 제1 정보 메시지에 응답하여, 상기 제1 노드의 다음 노드인 제2 노드가 유선 노드이면, 상기 제2 노드의 주소를 포함하는 제1 응답 메시지를 상기 홀더 노드로 전송하는 단계; 및 상기 제1 응답 메시지에 따라, 상기 홀더 노드는 상기 소정 데이터를 상기 제2 노드로 전송하는 단계;를 포함하는 것이 바람직하다.
또한, 상기 소정 데이터를 상기 요청자 노드로 다운로드하는 단계는,
상기 제2 노드가 무선 노드이면, 상기 제1 노드는 상기 소정 데이터에 관한 정보를 포함하는 제2 정보 메시지를 상기 제2 노드로 전송하는 단계; 상기 제2 노드는 상기 제2 정보 메시지에 응답하여, 상기 제2 노드의 다음 노드인 제3 노드가 유선 노드이면, 상기 제3 노드의 주소를 포함하는 제2 응답 메시지를 상기 제1 노드를 통해 상기 홀더 노드로 전송하는 단계; 및 상기 제2 응답 메시지에 따라, 상기 홀더 노드는 상기 소정 데이터를 상기 제3 노드로 전송하는 단계;를 포함한다.
또한, 상기 소정 데이터를 상기 요청자 노드로 다운로드하는 단계는, 상기 다운로드 경로 상에 존재하는 상기 유선 노드들에 상기 소정 데이터를 저장하는 단계를 포함하는 것이 바람직하다.
또한, 상기 소정 데이터를 상기 요청자 노드로 다운로드하는 단계는, 상기 다운로드 경로 상에 존재하는 상기 유선 노드들 중에서 선택적으로 상기 소정 데이터를 저장하는 단계를 포함하는 것이 바람직하다.
또한, 상기 소정 데이터를 상기 요청자 노드로 다운로드하는 단계는, 상기 다운로드 경로 상에 존재하는 상기 유선 노드들 중에서 소정 간격의 유선 노드들에만 상기 소정 데이터를 저장하는 단계를 포함한다.
상기 과제를 이루기 위한 본 발명의 다른 측면에 의한 데이터 다운로드 방법은,
유무선 통합 P2P 네트워크에 연결된 노드로서, 요청자 노드가 요청한 소정 데이터를 보유한 홀더 노드를 이용한 데이터 다운로드 방법에 있어서, 상기 요청자 노드와 상기 홀더 노드 간의 다운로드 경로 상에서 상기 홀더 노드의 다음 노드가 유선 노드인지 무선 노드인지를 판단하는 단계; 상기 다음 노드가 무선 노드이면, 상기 소정 데이터에 관한 정보를 포함하는 정보 메시지를 상기 다음 노드로 전송하는 단계; 상기 다음 노드로부터 상기 소정 데이터를 전송할 유선 노드의 주소를 포함하는 응답 메시지를 수신하는 단계; 및 상기 응답 메시지에 따라, 상기 소정 데이터를 상기 유선 노드로 전송하는 단계;를 포함한다.
또한, 상기 소정 데이터를 전송할 상기 유선 노드는, 상기 다운로드 경로 상에서 상기 다음 노드의 다음에 위치한 노드들 중에서 첫 번째 유선 노드인 것을 특징으로 한다.
또한, 상기 정보 메시지는 상기 소정 데이터를 나타내는 키 값과 상기 소정 데이터가 저장된 상기 홀더 노드에 관한 정보를 포함하는 것이 바람직하다.
또한, 상기 응답 메시지는 상기 소정 데이터를 나타내는 키 값을 더 포함하는 것이 바람직하다.
상기 과제를 이루기 위한 본 발명의 일 측면에 의한 노드는,
유무선 통합 P2P 네트워크에 연결된 노드로서, 요청자 노드가 요청한 소정 데이터를 보유한 홀더 노드에 있어서, 상기 P2P 네트워크를 통해 상기 P2P 네트워크에 접속된 다른 노드들과의 통신을 수행하는 통신부; 상기 요청자 노드가 요청한 소정 데이터를 저장하는 데이터 저장부; 및 상기 요청자 노드와 상기 홀더 노드 간의 다운로드 경로 상에서 상기 홀더 노드의 다음 노드가 유선 노드인지 무선 노드인지를 판단하고, 상기 다음 노드가 무선 노드이면, 상기 소정 데이터에 관한 정보를 포함하는 정보 메시지를 생성한 후 상기 정보 메시지를 상기 다음 노드로 전송 하도록 상기 통신부를 제어하고, 상기 다음 노드로부터 수신한, 상기 소정 데이터를 전송할 유선 노드의 주소를 포함하는 응답 메시지에 따라, 상기 소정 데이터를 상기 유선 노드로 전송하도록 상기 통신부를 제어하는 제어부;를 포함하는 것을 특징으로 한다.
또한, 상기 소정 데이터를 전송할 상기 유선 노드는, 상기 다운로드 경로 상에서 상기 다음 노드의 다음에 위치한 노드들 중에서 첫 번째 유선 노드인 것이 바람직하다.
상기 과제를 이루기 위한 본 발명의 다른 측면에 의한 데이터 다운로드 방법은,
유무선 통합 P2P 네트워크에 연결된 노드로서, 요청자 노드가 요청한 소정 데이터를 보유한 홀더 노드와 상기 요청자 노드 간의 다운로드 경로 상에 위치한 무선 노드를 이용한 데이터 다운로드 방법에 있어서, 이전 노드로부터 상기 소정 데이터에 관한 정보를 포함하는 제1 정보 메시지를 수신하는 단계; 다음 노드가 유선 노드인지 무선 노드인지를 판단하는 단계; 및 상기 다음 노드가 유선 노드이면, 상기 다음 노드의 주소를 포함하는 제1 응답 메시지를 상기 이전 노드로 전송하는 단계;를 포함하는 것을 특징으로 한다.
또한, 상기 다음 노드가 무선 노드이면, 상기 소정 데이터에 관한 정보를 포함하는 제2 정보 메시지를 상기 다음 노드로 전송하는 단계; 상기 다음 노드의 다음 노드가 유선 노드인 경우, 상기 다음 노드의 다음 노드의 주소를 포함하는 제2 응답 메시지를 상기 다음 노드로부터 수신하는 단계; 및 상기 이전 노드로 상기 다 음 노드의 다음 노드의 주소를 포함하는 제3 응답 메시지를 전송하는 단계;를 더 포함하는 것이 바람직하다.
상기 과제를 이루기 위한 본 발명의 다른 측면에 의한 노드는,
유무선 통합 P2P 네트워크에 연결된 노드로서, 요청자 노드가 요청한 소정 데이터를 보유한 홀더 노드와 상기 요청자 노드 간의 다운로드 경로 상에 위치한 무선 노드에 있어서, 상기 P2P 네트워크를 통해 이전 노드가 전송한, 상기 소정 데이터에 관한 정보를 포함하는 제1 정보 메시지를 수신하는 통신부; 및 상기 제1 정보 메시지에 응답하여 다음 노드가 유선 노드인지 무선 노드인지를 판단하고, 상기 다음 노드가 유선 노드이면, 상기 다음 노드의 주소를 포함하는 제1 응답 메시지를 생성한 후 상기 제1 응답 메시지를 상기 이전 노드로 전송하도록 상기 통신부를 제어하는 제어부;를 포함하는 것을 특징으로 한다.
또한, 상기 제어부는 상기 다음 노드가 무선 노드이면, 상기 소정 데이터에 관한 정보를 포함하는 제2 정보 메시지를 생성한 후 상기 제2 정보 메시지를 상기 다음 노드로 전송하도록 상기 통신부를 제어하고, 상기 다음 노드의 다음 노드가 유선 노드인 경우, 상기 다음 노드의 다음 노드의 주소를 포함하는 제2 응답 메시지를 상기 다음 노드로부터 수신하고, 상기 제2 응답 메시지로부터 추출된 상기 다음 노드의 다음 노드의 주소를 포함하는 제3 응답 메시지를 상기 이전 노드로 전송하도록 상기 통신부를 제어한다.
상기 과제를 이루기 위한 본 발명의 다른 측면에 의한 데이터 다운로드 방법은, 유무선 통합 네트워크에서 P2P 서비스를 위한 데이터 다운로드 방법에 있어서, 소정 데이터를 요청한 요청자 노드와 상기 소정 데이터를 보유한 홀더 노드 간의 다운로드 경로 상에 존재하는 다수의 노드들 중에서 소정 간격의 노드들인 제1 노드 내지 제N 노드(N은 1이상 정수)만을 통해 상기 소정 데이터를 상기 요청자 노드로 다운로드하는 단계; 및 상기 소정 간격의 노드들에 상기 소정 데이터를 캐싱하는 단계를 포함하는 것을 특징으로 한다.
또한, 상기 소정 데이터를 상기 요청자 노드로 다운로드하는 단계는, 상기 제1 노드 내지 제N 노드의 각 노드의 이전 노드는 상기 소정 데이터를 캐싱하고 있는 노드로, 다음 노드의 주소 정보를 포함하는 메시지를 전송하는 단계; 및 상기 메시지에 포함된 상기 다음 노드의 주소 정보에 따라, 상기 소정 데이터를 캐싱하고 있는 노드는 상기 소정 데이터를 전송하는 단계;를 포함하는 것이 바람직하다.
상기 과제를 이루기 위한 본 발명의 일 측면에 의한 기록매체는,
유무선 통합 네트워크에서 P2P 서비스를 위한 데이터 다운로드 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체이고, 상기 데이터 다운로드 방법은, 소정 데이터를 요청한 요청자 노드와 상기 소정 데이터를 보유한 홀더 노드 간의 다운로드 경로 상에 존재하는 다수의 노드들 중에서 유선 노드들만을 통해 상기 소정 데이터를 상기 요청자 노드로 다운로드하는 단계;를 포함하는 것을 특징으로 한다.
상기 과제를 이루기 위한 본 발명의 다른 측면에 의한 기록매체는,
유무선 통합 P2P 네트워크에 연결된 노드로서, 요청자 노드가 요청한 소정 데이터를 보유한 홀더 노드를 이용한 데이터 다운로드 방법을 실현시키기 위한 프 로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체이고, 상기 데이터 다운로드 방법은, 상기 요청자 노드와 상기 홀더 노드 간의 다운로드 경로 상에서 상기 홀더 노드의 다음 노드가 유선 노드인지 무선 노드인지를 판단하는 단계; 상기 다음 노드가 무선 노드이면, 상기 소정 데이터에 관한 정보를 포함하는 정보 메시지를 상기 다음 노드로 전송하는 단계; 상기 다음 노드로부터 상기 소정 데이터를 전송할 유선 노드의 주소를 포함하는 응답 메시지를 수신하는 단계; 및 상기 응답 메시지에 따라, 상기 소정 데이터를 상기 유선 노드로 전송하는 단계;를 포함하는 것을 특징으로 하는 한다.
상기 과제를 이루기 위한 본 발명의 다른 측면에 의한 기록매체는,
유무선 통합 P2P 네트워크에 연결된 노드로서, 요청자 노드가 요청한 소정 데이터를 보유한 홀더 노드와 상기 요청자 노드 간의 다운로드 경로 상에 위치한 무선 노드를 이용한 데이터 다운로드 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체이고, 상기 데이터 다운로드 방법은, 이전 노드로부터 상기 소정 데이터에 관한 정보를 포함하는 제1 정보 메시지를 수신하는 단계; 다음 노드가 유선 노드인지 무선 노드인지를 판단하는 단계; 및 상기 다음 노드가 유선 노드이면, 상기 다음 노드의 주소를 포함하는 제1 응답 메시지를 상기 이전 노드로 전송하는 단계;를 포함하는 것을 특징으로 한다.
상기 과제를 이루기 위한 본 발명의 다른 측면에 의한 기록매체는,
유무선 통합 네트워크에서 P2P 서비스를 위한 데이터 다운로드 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체이고, 상기 데이터 다운로드 방법은, 소정 데이터를 요청한 요청자 노드와 상기 소정 데이터를 보유한 홀더 노드 간의 다운로드 경로 상에 존재하는 다수의 노드들 중에서 소정 간격의 노드들인 제1 노드 내지 제N 노드(N은 1이상 정수)만을 통해 상기 소정 데이터를 상기 요청자 노드로 다운로드하는 단계; 및 상기 소정 간격의 노드들에 상기 소정 데이터를 캐싱하는 단계를 포함하는 것을 특징으로 한다.
이하, 첨부한 도면을 참조하면서 본 발명에 따른 실시예들을 상세하게 설명한다. 각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 한해서는 비록 다른 도면상에 표시되더라도 동일한 부호로 표기한다.
도 2는 본 발명의 일 실시예에 따른 데이터 다운로드 방법을 설명하기 위한 참고도면이다. 도 2를 참조하면, 특정 파일을 검색하여 다운로드받고자 하는 요청자 노드(requester node)(210)와 그 파일을 보유하고 있는 홀더 노드(holder node)(260) 간에 노드(220), 노드(230), 노드(240) 및 노드(250)의 순서대로 다운로드 경로를 형성하고 있다. 노드(230) 및 노드(250)는 무선 노드이고 그 외 노드들은 유선 노드이다.
노드들(210 내지 260)은 공유한 파일이 위치한 로컬 파일 저장소와 파일에 대한 정보만 캐싱하고 있는 라우팅 테이블을 갖고 있다. 나아가 라우팅 테이블에는 각각의 노드를 식별할 수 있는 식별키와 파일을 갖고 있는 노드, 그 노드로 접근하기 위한 다음 노드에 관한 정보 및 자신에게 접근한 이전 노드에 관한 정보가 기록되어있다.
본 실시예에서 특정 파일을 보유한 홀더 노드(260)를 찾기 위한 과정은 종래 기술에 따른다. 본 실시예에 따르면, 파일을 갖고 있는 노드가 파일 요청자 노드(210)로 파일을 전송할 때, 만약 다운로드 경로상의 다음 노드가 무선 노드이면 그 무선 노드로 파일을 전송하지 않고 그 파일에 대한 캐싱(caching) 정보만 전송한다. 캐싱 정보는 그 파일을 나타내는 키 값 및 그 파일이 저장된 노드의 주소 등의 정보를 포함한다. 그 무선 노드는 그 캐싱 정보를 받아 캐싱한 후 그 파일을 전송할 유선 노드의 주소 정보를 파일을 갖고 있는 노드로 전송한다. 따라서 본 실시예에 따르면, 요청자 노드(210)에 의해 요청된 파일은 다운로드 경로 상에 존재하는 노드들 중에서 오직 유선 노드들만을 통해 요청자 노드(210)로 전달된다. 또한, 후술하겠으나, 다운로드 경로 상에 존재하는 모든 유선 노드들에 요청된 파일을 캐싱할 수도 있으며, 그 유선 노드들 중에서 선택적으로 요청된 파일을 캐싱하거나 소정 간격의 유선 노드들에만 캐싱할 수도 있다.
다시 도 2를 참조하여 도 2에 도시된 실시예를 상세하게 설명한다. 홀더 노드(260)는 자신의 라우팅 테이블을 참조하여, 다운로드 경로 상에서 홀더 노드(260)의 다음 노드인 노드(250)가 무선 노드임을 안다. 홀더 노드(260)는 요청된 파일을 전송하지 않고 요청된 파일의 키 값, 홀더 노드(260)의 주소 등의 정보를 담은 정보 메시지 SEND.INFO 를 노드(250)로 전송한다. 노드(250)는 그 정보 메시지에 포함된 정보를 자신의 라우팅 테이블에 캐싱한 후 다음 노드인 노드(240)에 관한 정보를 응답 메시지 REPLY.INFO에 담아 홀더 노드(260)로 전송한다. 홀더 노드(260)는 노드(240)가 유선 노드임을 알고 요청된 파일을 노드(240)에게 전송한다. 마찬가지 방법으로 노드(240)는 무선 노드인 노드(230)로 SEND.INFO 를 전송하 고, 노드(230)는 다음 노드인 노드(220)에 관한 정보를 응답 메시지 REPLY.INFO에 담아 노드(240)로 전송한다. 노드(240)는 노드(240)가 유선 노드임을 알고 요청된 파일을 노드(220)에게 전송한다. 마지막으로 요청된 파일은 노드(220)에 의해 요청자 노드(210)로 전달된다.
여기서 SEND.INFO 메시지 및 REPLY.INFO 메시지는 요청된 파일의 키 값 및 데이터 소스 외에 transaction id, hops-to-live, depth counter 정보를 포함한다. hops-to-live는 메시지가 무한대로 전달되는 것을 방지하기 위하여 메시지가 전달되는 노드의 수를 나타내는 변수이다. depth counter도 이와 유사한 변수로서 메시지가 하나의 노드를 거칠 때마다 값이 1씩 증가하되 미리 설정된 소정의 최대값에 도달하면 그 메시지는 더 이상 전송되지 않는다.
무선 노드인 제2 노드(230) 및 제4 노드(250)는 수신한 SEND.INFO 메시지로부터 요청된 파일에 대한 정보를 추출하여 자신들의 라우팅 테이블에 캐싱한다. 캐싱되는 정보는 그 파일을 나타내는 키 값 및 그 파일이 저장된 노드의 주소를 포함한다.
도 3은 본 발명의 다른 실시예에 따른 데이터 다운로드 방법을 설명하기 위한 참고도면이다. 도 3을 참조하면, 특정 파일을 검색하여 다운로드받고자 하는 요청자 노드(310)와 그 파일을 보유하고 있는 홀더 노드(360) 간에 노드(320), 노드(330), 노드(340) 및 노드(350)의 순서대로 다운로드 경로를 형성하고 있다. 노드(340) 및 노드(350)는 무선 노드이고 그 외 노드들은 유선 노드이다.
도 3을 참조하면, 무선 노드인 노드(340) 및 노드(350)이 다운로드 경로 상 에서 연속하여 존재한다. 홀더 노드(360)는 자신의 라우팅 테이블을 참조하여, 다운로드 경로 상에서 홀더 노드(360)의 다음 노드인 노드(350)가 무선 노드임을 안다. 홀더 노드(260)는 정보 메시지 SEND.INFO를 노드(350)로 전송한다. 노드(350)는 그 정보 메시지에 포함된, 요청된 파일에 대한 정보를 자신의 라우팅 테이블에 캐싱한다. 그 후 다음 노드인 노드(340)이 무선 노드이므로 정보 메시지 SEND.INFO를 다시 노드(340)으로 전송한다.
노드(340)은 그 정보 메시지에 포함된, 요청된 파일에 대한 정보를 자신의 라우팅 테이블에 캐싱한다. 그 후 자신의 다음 노드인 노드(330)이 유선 노드임을 알고 있으므로 노드(330)의 주소 정보가 포함된 응답 메시지 REPLY.INFO를 노드(350)으로 전송한다. 노드(350)은 응답 메시지 REPLY.INFO를 다시 노드(360)으로 전송한다. 홀더 노드(260)는 응답 메시지 REPLY.INFO로부터 노드(330)의 주소 정보를 추출한 후 노드(330)으로 요청된 파일을 전송한다. 그 후 요청된 파일은 노드(320)을 거쳐 요청자 노드(310)로 전달된다.
전술한 실시예들에서는 다운로드 경로 상에 존재하는 모든 유선 노드들에 요청된 파일을 캐싱하였다. 그러나 다운로드 경로 상에 존재하는 모든 유선 노드들에 요청된 파일을 캐싱하지 않고 선택적으로 일부 유선 노드들에 요청된 파일을 캐싱하거나 소정 간격의 유선 노드들에만 캐싱할 수도 있다. 도 4를 참조하여 다운로드 경로 상에 존재하는 유선 노드들의 일부에 요청된 파일을 캐싱하는 실시예를 설명한다.
도 4를 참조하면, 특정 파일을 검색하여 다운로드받고자 하는 요청자 노드 (410)와 그 파일을 보유하고 있는 홀더 노드(470) 간에 노드(420), 노드(430), 노드(440), 노드(450) 및 노드(460)의 순서대로 다운로드 경로를 형성하고 있다. 노드(430) 및 노드(460)는 무선 노드이고 그 외 노드들은 유선 노드이다. 다운로드 경로 상의 노드들 중 유선노드만을 통해 요청된 파일이 다운로드되므로 요청된 파일은 노드(450), 노드(440) 및 노드(420)을 거쳐 요청자 노드(410)로 전달된다. 본 실시예에서는 요청된 파일은 하나의 노드씩 건너 뛰면서 저장된다. 즉, 노드(450) 및 노드(420)에는 요청된 파일을 저장하지 않고, 노드(440)에만 요청된 파일을 저장한다. 노드(450) 및 노드(420)는 요청된 파일에 대한 정보만을 자신들의 라우팅 테이블에 캐싱한다. 한편, 본 실시예에서 요청된 파일이 저장되는 노드들의 간격은 1이 된다. 그러나 필요에 따라 그 간격을 2이상으로 할 수 있음은 물론이다.
도 5는 본 발명의 일 실시예에 따른 노드의 블록도이다. 도 5를 참조하면 노드는 통신부(510), 제어부(530) 및 데이터 저장부(550)의 기능적 구성 요소들을 포함한다. 통신부(510)는 제어부(530)의 제어에 따라 유무선 통합 네트워크를 통하여 데이터를 수신하거나 그 네트워크를 통해 다른 노드로 데이터를 송신한다. 데이터 저장부(550)는 라우팅 테이블(도시되지 않음)을 저장한다.
제어부(350)는 본 발명에 따른 데이터 다운로드 방법을 수행하고, 통신부(510) 및 데이터 저장부(550)를 제어한다. 도 5에 도시된 노드는 무선 노드 또는 유선 노드이다. 무선 노드인지 또는 유선 노드인지에 따라 통신부(510), 제어부(530) 및 데이터 저장부(550)의 내부 구조는 달라질 수 있다. 그러나 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자라면 도 5에 도시된 노드를 용이하게 구 현할 수 있을 것이다.
도 5에 도시된 노드의 구조에 기초하여 본 발명에 따른 홀더 노드의 동작을 도 6을 참조하여 부연 설명한다.
도 6은 본 발명의 일 실시예에 따른 홀더 노드의 동작을 설명하기 위한 흐름도이다. 홀더 노드는 도 2, 도 4 또는 도 6에 도시된 홀더 노드이다.
홀더 노드는 도 2, 도 4 또는 도 6에 도시된 바와 같은 경로를 통해 요청자 노드로부터 소정 데이터의 전송을 요청하는 메시지를 통신부(510)를 통해 수신한다(S610). 소정 데이터는 요청자 노드가 다운로드 받기를 원하는 특정 파일을 말한다.
통신부(510)로부터 수신된 메시지를 전달받은 제어부(530)는 그 메시지로부터 요청된 파일의 키 값 및 홀더 노드의 주소를 라우팅 테이블에 캐싱한다. 그 후 제어부(530)는 라우팅 테이블을 참조하여, 다음 노드가 유선 노드인지 무선 노드인지를 판단한다(S630). 만약, 그 다음 노드가 무선 노드이면, 제어부(530)는 요청자 노드가 요청한 파일 대신에 그 파일의 키 값, 홀더 노드의 주소 등의 정보를 담은 정보 메시지 SEND.INFO를 생성한다. 생성된 SEND.INFO 메시지는 제어부(530)의 제어에 따라 통신부(510)에 의해 그 다음 노드로 전송된다(S650).
그 다음 노드는 그 정보 메시지에 포함된 정보를 자신의 라우팅 테이블에 캐싱한 후 자신의 다음 노드가 유선 노드이면 그 다음 노드의 주소가 포함된 응답 메시지 REPLY.INFO를 홀더 노드로 전송한다. 그러나 도 3에 도시한 바와 같이 다음 노드(350)의 다음 노드(340)도 무선 노드이면, 노드(350)은 노드(340)로 다시 SEND.INFO 메시지를 전송한 후 노드(340)으로부터 유선 노드인 노드(330)의 주소가 포함된 REPLY.INFO를 수신한다. 노드(350)은 그 REPLY.INFO를 다시 홀더 노드(360)로 전송한다.
홀더 노드의 제어부(530)는 다음 노드로부터 요청된 소정 데이터(파일)를 전송할 유선 노드의 주소를 포함하는 응답 메시지 REPLY.INFO를 수신한 후(S670), 그 응답 메시지에 포함된 유선 노드의 주소에 따라 그 유선 노드로 요청된 소정 데이터를 전송한다(S690).
이하에서는, 본 발명의 일 실시예에 따른 무선 노드의 동작을 부연 설명한다.
도 7은 본 발명의 일 실시예에 따른 무선 노드의 동작을 설명하기 위한 흐름도이다. 본 발명의 일 실시예에 따른 무선 노드가 도 5에 도시된 구조를 가지는 무선 노드로서 도 3에 도시된 노드(350)라고 가정하여 노드(350)의 동작을 부연 설명한다.
노드(350)은 이전 노드인 홀더 노드(360)로부터 정보 메시지 SEND.INFO를 통신부(510)를 통해 수신한다(S710). 통신부(510)로부터 수신된 메시지를 전달받은 제어부(530)는 그 메시지로부터 요청된 파일의 키 값 및 홀더 노드의 주소를 라우팅 테이블에 캐싱한다. 그 후 제어부(530)는 라우팅 테이블을 참조하여, 다음 노드인 노드(340)이 유선 노드인지 무선 노드인지를 판단한다(S720). 다음 노드인 노드(340)이 무선 노드이므로, 제어부(530)는 다시 정보 메시지 SEND.INFO를 생성한 후 그 메시지를 노드(340)으로 전송한다(S740). 노드(340)은 다음 노드인 노드 (330)이 유선 노드이므로 노드(330)의 주소가 포함된 응답 메시지 REPLY.INFO를 노드(350)으로 전송한다. 노드(350)은 응답 메시지 REPLY.INFO를 노드(340)으로부터 수신한 후(S750) 유선 노드인 노드(330)의 주소가 포함된 응답 메시지 REPLY.INFO를 생성하고 홀더 노드(360)으로 전송한다(S760).
만약, 노드(350)의 제어부(530)는 다음 노드인 노드(340)이 유선 노드라면, 유선 노드인 노드(340)의 주소가 포함된 응답 메시지 REPLY.INFO를 생성한 후 홀더 노드(360)로 전송한다(S730).
전술한 실시예들에서는 다운로드 경로 상에 존재하는 유선 노드들만을 통해 요청된 파일을 요청자 노드로 다운로드하였다. 도 8을 참조하여 본 발명의 또 다른 실시예를 설명한다. 도 8에 도시된 실시예에서는 다운로드 경로 상에 존재하는 노드가 유선 노드인지 무선 노드인지를 구별하지 않고 소정 간격의 노드들을 거쳐 요청된 파일이 요청자 노드로 다운로드된다.
도 8을 참조하면, 특정 파일을 검색하여 다운로드받고자 하는 요청자 노드(810)와 그 파일을 보유하고 있는 홀더 노드(870) 간에 노드(820), 노드(830), 노드(840), 노드(850) 및 노드(860)의 순서대로 다운로드 경로를 형성하고 있다. 본 실시예에서는 요청된 파일은 하나의 노드씩 건너 뛰면서 전송된다. 즉, 요청된 파일은은 노드(830) 및 노드(850)을 거쳐 요청자 노드(810)로 전송된다. 이를 위해 홀더 노드(870)와 노드(860) 사이, 노드(840)과 노드(850) 사이 및 노드(820)과 노드(830) 사이에, 전술한 SEND.INFO 및 REPLY.INFO 메시지가 교환된다. 노드(820), 노드(840) 및 노드(860)는 요청된 파일에 대한 정보만을 자신들의 라우팅 테이블에 캐싱한다. 한편, 본 실시예에서 요청된 파일이 저장되는 노드들의 간격은 1이 된다. 그러나 필요에 따라 그 간격을 2이상으로 할 수 있음은 물론이다.
이상 설명한 본 발명에 따른 실시예들은 유무선 통합 네트워크 상에서 데이터를 다운로드하고 그 데이터를 캐싱하는 경우에 적용할 수 있으며 네트워크 프로토콜에 제한을 받지 않는다. 즉, 인터넷 프로토콜 버전 4(Internet Protocol Version 4) 기반의 네트워크이든 인터넷 프로토콜 버전 6(Internet Protocol Version 6)이든 양자가 병존하는 네트워크이든 무관하게 적용될 수 있다.
이상 설명한, 본 발명에 따른 데이터 다운로드 방법은 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 유형의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는, ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광데이터 저장 장치 등이 있으며, 또한 캐리어 웨이브(예를 들어, 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드로 저장되고 실행될 수 있다.
이제까지 본 발명에 대하여 그 바람직한 실시예들을 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석 되어야 할 것이다.
이상에서 설명한 바와 같이, 본 발명에 따르면, 유무선 통합 환경에서 P2P 서비스하는 경우, 무선 채널의 제한된 대역폭을 고려하여 보다 빠르게 데이터를 다운로드할 수 있다. 또한, 무선 노드에는 아예 다운로드되는 파일을 캐싱하지 않거나 유선 노드일지라도 선택적으로 파일을 캐싱함으로써 노드의 데이터 저장 공간을 절약할 수 있다. 따라서 본 발명은 P2P 방식에 따른 파일 검색 성공률의 저하없이 파일 다운로드 속도를 향상시킬 수 있으며 네트워크의 부하 균형을 이루는 효과를 제공한다.

Claims (33)

  1. 유무선 통합 네트워크에서 P2P 서비스를 위한 데이터 다운로드 방법에 있어서,
    소정 데이터를 요청한 요청자 노드와 상기 소정 데이터를 보유한 홀더 노드 간의 다운로드 경로 상에 존재하는 다수의 노드들 중에서 유선 노드들만을 통해 상기 소정 데이터를 상기 홀더 노드로부터 상기 요청자 노드로 다운로드하는 단계를 포함하는 것을 특징으로 하는 방법.
  2. 제1 항에 있어서,
    상기 소정 데이터를 상기 요청자 노드로 다운로드하는 단계는,
    상기 다운로드 경로 상에서 상기 홀더 노드의 다음 노드인 제1 노드가 무선 노드이면, 상기 홀더 노드는 상기 소정 데이터에 관한 정보를 포함하는 제1 정보 메시지를 상기 제1 노드로 전송하는 단계;
    상기 제1 노드는 상기 제1 정보 메시지에 응답하여, 상기 제1 노드의 다음 노드인 제2 노드가 유선 노드이면, 상기 제2 노드의 주소를 포함하는 제1 응답 메시지를 상기 홀더 노드로 전송하는 단계; 및
    상기 제1 응답 메시지에 따라, 상기 홀더 노드는 상기 소정 데이터를 상기 제2 노드로 전송하는 단계;를 포함하는 것을 특징으로 하는 방법.
  3. 제2 항에 있어서,
    상기 소정 데이터를 상기 요청자 노드로 다운로드하는 단계는,
    상기 제2 노드가 무선 노드이면, 상기 제1 노드는 상기 소정 데이터에 관한 정보를 포함하는 제2 정보 메시지를 상기 제2 노드로 전송하는 단계;
    상기 제2 노드는 상기 제2 정보 메시지에 응답하여, 상기 제2 노드의 다음 노드인 제3 노드가 유선 노드이면, 상기 제3 노드의 주소를 포함하는 제2 응답 메시지를 상기 제1 노드를 통해 상기 홀더 노드로 전송하는 단계; 및
    상기 제2 응답 메시지에 따라, 상기 홀더 노드는 상기 소정 데이터를 상기 제3 노드로 전송하는 단계;를 포함하는 것을 특징으로 하는 방법.
  4. 제2 항에 있어서,
    상기 제1 정보 메시지는 상기 소정 데이터를 나타내는 키 값과 상기 소정 데이터가 저장된 상기 홀더 노드에 관한 정보를 포함하는 것을 특징으로 하는 방법.
  5. 제2 항에 있어서,
    상기 제1 응답 메시지는 상기 소정 데이터를 나타내는 키 값을 더 포함하는 것을 특징으로 하는 방법.
  6. 제1 항에 있어서,
    상기 소정 데이터를 상기 요청자 노드로 다운로드하는 단계는,
    상기 다운로드 경로 상에 존재하는 상기 유선 노드들에 상기 소정 데이터를 저장하는 단계를 포함하는 것을 특징으로 하는 방법.
  7. 제1 항에 있어서,
    상기 소정 데이터를 상기 요청자 노드로 다운로드하는 단계는,
    상기 다운로드 경로 상에 존재하는 상기 유선 노드들 중에서 선택적으로 상기 소정 데이터를 저장하는 단계를 포함하는 것을 특징으로 하는 방법.
  8. 제1 항에 있어서,
    상기 소정 데이터를 상기 요청자 노드로 다운로드하는 단계는,
    상기 다운로드 경로 상에 존재하는 상기 유선 노드들 중에서 소정 간격의 유 선 노드들에만 상기 소정 데이터를 저장하는 단계를 포함하는 것을 특징으로 하는 방법.
  9. 유무선 통합 P2P 네트워크에 연결된 노드로서, 요청자 노드가 요청한 소정 데이터를 보유한 홀더 노드를 이용한 데이터 다운로드 방법에 있어서,
    상기 요청자 노드와 상기 홀더 노드 간의 다운로드 경로 상에서 상기 홀더 노드의 다음 노드가 유선 노드인지 무선 노드인지를 판단하는 단계;
    상기 다음 노드가 무선 노드이면, 상기 소정 데이터에 관한 정보를 포함하는 정보 메시지를 상기 다음 노드로 전송하는 단계;
    상기 다음 노드로부터 상기 소정 데이터를 전송할 유선 노드의 주소를 포함하는 응답 메시지를 수신하는 단계; 및
    상기 응답 메시지에 따라, 상기 소정 데이터를 상기 유선 노드로 전송하는 단계;를 포함하는 것을 특징으로 하는 방법.
  10. 제9 항에 있어서,
    상기 소정 데이터를 전송할 상기 유선 노드는, 상기 다운로드 경로 상에서 상기 다음 노드의 다음에 위치한 노드들 중에서 첫 번째 유선 노드인 것을 특징으로 하는 방법.
  11. 제9 항에 있어서,
    상기 정보 메시지는 상기 소정 데이터를 나타내는 키 값과 상기 소정 데이터가 저장된 상기 홀더 노드에 관한 정보를 포함하는 것을 특징으로 하는 방법.
  12. 제9 항에 있어서,
    상기 응답 메시지는 상기 소정 데이터를 나타내는 키 값을 더 포함하는 것을 특징으로 하는 방법.
  13. 제9 항에 있어서,
    상기 다음 노드가 유선 노드이면, 상기 소정 데이터를 상기 다음 노드로 전송하는 단계;를 더 포함하는 것을 특징으로 하는 방법.
  14. 유무선 통합 P2P 네트워크에 연결된 노드로서, 요청자 노드가 요청한 소정 데이터를 보유한 홀더 노드에 있어서,
    상기 P2P 네트워크를 통해 상기 P2P 네트워크에 접속된 다른 노드들과의 통신을 수행하는 통신부;
    상기 요청자 노드가 요청한 소정 데이터를 저장하는 데이터 저장부; 및
    상기 요청자 노드와 상기 홀더 노드 간의 다운로드 경로 상에서 상기 홀더 노드의 다음 노드가 유선 노드인지 무선 노드인지를 판단하고, 상기 다음 노드가 무선 노드이면, 상기 소정 데이터에 관한 정보를 포함하는 정보 메시지를 생성한 후 상기 정보 메시지를 상기 다음 노드로 전송하도록 상기 통신부를 제어하고, 상 기 다음 노드로부터 수신한, 상기 소정 데이터를 전송할 유선 노드의 주소를 포함하는 응답 메시지에 따라, 상기 소정 데이터를 상기 유선 노드로 전송하도록 상기 통신부를 제어하는 제어부;를 포함하는 것을 특징으로 하는 홀더 노드.
  15. 제14 항에 있어서,
    상기 소정 데이터를 전송할 상기 유선 노드는, 상기 다운로드 경로 상에서 상기 다음 노드의 다음에 위치한 노드들 중에서 첫 번째 유선 노드인 것을 특징으로 하는 홀더 노드.
  16. 제14 항에 있어서,
    상기 정보 메시지는 상기 소정 데이터를 나타내는 키 값과 상기 소정 데이터가 저장된 상기 홀더 노드에 관한 정보를 포함하는 것을 특징으로 하는 홀더 노드.
  17. 제14 항에 있어서,
    상기 응답 메시지는 상기 소정 데이터를 나타내는 키 값을 더 포함하는 것을 특징으로 하는 홀더 노드.
  18. 제14 항에 있어서,
    상기 제어부는 상기 다음 노드가 유선 노드이면, 상기 소정 데이터를 상기 다음 노드로 전송하도록 상기 통신부를 제어하는 것을 특징으로 하는 홀더 노드.
  19. 유무선 통합 P2P 네트워크에 연결된 노드로서, 요청자 노드가 요청한 소정 데이터를 보유한 홀더 노드와 상기 요청자 노드 간의 다운로드 경로 상에 위치한 무선 노드를 이용한 데이터 다운로드 방법에 있어서,
    이전 노드로부터 상기 소정 데이터에 관한 정보를 포함하는 제1 정보 메시지를 수신하는 단계;
    다음 노드가 유선 노드인지 무선 노드인지를 판단하는 단계; 및
    상기 다음 노드가 유선 노드이면, 상기 다음 노드의 주소를 포함하는 제1 응답 메시지를 상기 이전 노드로 전송하는 단계;를 포함하는 것을 특징으로 하는 방법.
  20. 제19 항에 있어서,
    상기 다음 노드가 무선 노드이면, 상기 소정 데이터에 관한 정보를 포함하는 제2 정보 메시지를 상기 다음 노드로 전송하는 단계;
    상기 다음 노드의 다음 노드가 유선 노드인 경우, 상기 다음 노드의 다음 노드의 주소를 포함하는 제2 응답 메시지를 상기 다음 노드로부터 수신하는 단계; 및
    상기 이전 노드로 상기 다음 노드의 다음 노드의 주소를 포함하는 제3 응답 메시지를 전송하는 단계;를 더 포함하는 것을 특징으로 하는 방법.
  21. 제20 항에 있어서,
    상기 제1 정보 메시지 및 상기 제2 정보 메시지는 상기 소정 데이터를 나타내는 키 값과 상기 소정 데이터가 저장된 상기 홀더 노드에 관한 정보를 포함하는 것을 특징으로 하는 방법.
  22. 제20 항에 있어서,
    상기 제1 내지 제3 응답 메시지는 상기 소정 데이터를 나타내는 키 값을 포함하는 것을 특징으로 하는 방법.
  23. 유무선 통합 P2P 네트워크에 연결된 노드로서, 요청자 노드가 요청한 소정 데이터를 보유한 홀더 노드와 상기 요청자 노드 간의 다운로드 경로 상에 위치한 무선 노드에 있어서,
    상기 P2P 네트워크를 통해 이전 노드가 전송한, 상기 소정 데이터에 관한 정보를 포함하는 제1 정보 메시지를 수신하는 통신부; 및
    상기 제1 정보 메시지에 응답하여 다음 노드가 유선 노드인지 무선 노드인지를 판단하고, 상기 다음 노드가 유선 노드이면, 상기 다음 노드의 주소를 포함하는 제1 응답 메시지를 생성한 후 상기 제1 응답 메시지를 상기 이전 노드로 전송하도록 상기 통신부를 제어하는 제어부;를 포함하는 것을 특징으로 하는 무선 노드.
  24. 제23 항에 있어서,
    상기 제어부는 상기 다음 노드가 무선 노드이면, 상기 소정 데이터에 관한 정보를 포함하는 제2 정보 메시지를 생성한 후 상기 제2 정보 메시지를 상기 다음 노드로 전송하도록 상기 통신부를 제어하고, 상기 다음 노드의 다음 노드가 유선 노드인 경우, 상기 다음 노드의 다음 노드의 주소를 포함하는 제2 응답 메시지를 상기 다음 노드로부터 수신하고, 상기 제2 응답 메시지로부터 추출된 상기 다음 노드의 다음 노드의 주소를 포함하는 제3 응답 메시지를 상기 이전 노드로 전송하도록 상기 통신부를 제어하는 것을 특징으로 하는 무선 노드.
  25. 제24 항에 있어서,
    상기 제1 정보 메시지 및 상기 제2 정보 메시지는 상기 소정 데이터를 나타내는 키 값과 상기 소정 데이터가 저장된 상기 홀더 노드에 관한 정보를 포함하는 것을 특징으로 하는 무선 노드.
  26. 제24 항에 있어서,
    상기 제1 내지 제3 응답 메시지는 상기 소정 데이터를 나타내는 키 값을 포함하는 것을 특징으로 하는 무선 노드.
  27. 제24 항에 있어서,
    상기 제1 정보 메시지에 포함된 상기 소정 데이터에 관한 정보를 저장하는 데이터 저장부;를 더 포함하는 것을 특징으로 하는 무선 노드.
  28. 유무선 통합 네트워크에서 P2P 서비스를 위한 데이터 다운로드 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체에 있어서,
    상기 데이터 다운로드 방법은,
    소정 데이터를 요청한 요청자 노드와 상기 소정 데이터를 보유한 홀더 노드 간의 다운로드 경로 상에 존재하는 다수의 노드들 중에서 유선 노드들만을 통해 상기 소정 데이터를 상기 홀더 노드로부터 상기 요청자 노드로 다운로드하는 단계;를 포함하는 것을 특징으로 하는 기록매체.
  29. 유무선 통합 P2P 네트워크에 연결된 노드로서, 요청자 노드가 요청한 소정 데이터를 보유한 홀더 노드를 이용한 데이터 다운로드 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체에 있어서,
    상기 데이터 다운로드 방법은,
    상기 요청자 노드와 상기 홀더 노드 간의 다운로드 경로 상에서 상기 홀더 노드의 다음 노드가 유선 노드인지 무선 노드인지를 판단하는 단계;
    상기 다음 노드가 무선 노드이면, 상기 소정 데이터에 관한 정보를 포함하는 정보 메시지를 상기 다음 노드로 전송하는 단계;
    상기 다음 노드로부터 상기 소정 데이터를 전송할 유선 노드의 주소를 포함하는 응답 메시지를 수신하는 단계; 및
    상기 응답 메시지에 따라, 상기 소정 데이터를 상기 유선 노드로 전송하는 단계;를 포함하는 것을 특징으로 하는 기록매체.
  30. 유무선 통합 P2P 네트워크에 연결된 노드로서, 요청자 노드가 요청한 소정 데이터를 보유한 홀더 노드와 상기 요청자 노드 간의 다운로드 경로 상에 위치한 무선 노드를 이용한 데이터 다운로드 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체에 있어서,
    상기 데이터 다운로드 방법은,
    이전 노드로부터 상기 소정 데이터에 관한 정보를 포함하는 제1 정보 메시지를 수신하는 단계;
    다음 노드가 유선 노드인지 무선 노드인지를 판단하는 단계; 및
    상기 다음 노드가 유선 노드이면, 상기 다음 노드의 주소를 포함하는 제1 응답 메시지를 상기 이전 노드로 전송하는 단계;를 포함하는 것을 특징으로 하는 기록매체.
  31. 유무선 통합 네트워크에서 P2P 서비스를 위한 데이터 다운로드 방법에 있어서,
    소정 데이터를 요청한 요청자 노드와 상기 소정 데이터를 보유한 홀더 노드 간의 다운로드 경로 상에 존재하는 다수의 노드들 중에서 소정 간격의 노드들인 제1 노드 내지 제N 노드(N은 1이상 정수)만을 통해 상기 소정 데이터를 상기 요청자 노드로 다운로드하는 단계; 및
    상기 소정 간격의 노드들에 상기 소정 데이터를 캐싱하는 단계를 포함하는 것을 특징으로 하는 방법.
  32. 제31 항에 있어서,
    상기 소정 데이터를 상기 요청자 노드로 다운로드하는 단계는,
    상기 제1 노드 내지 제N 노드의 각 노드의 이전 노드는 상기 소정 데이터를 캐싱하고 있는 노드로, 다음 노드의 주소 정보를 포함하는 메시지를 전송하는 단계; 및
    상기 메시지에 포함된 상기 다음 노드의 주소 정보에 따라, 상기 소정 데이터를 캐싱하고 있는 노드는 상기 소정 데이터를 전송하는 단계;를 포함하는 것을 특징으로 하는 방법.
  33. 유무선 통합 네트워크에서 P2P 서비스를 위한 데이터 다운로드 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체에 있어서,
    상기 데이터 다운로드 방법은,
    소정 데이터를 요청한 요청자 노드와 상기 소정 데이터를 보유한 홀더 노드 간의 다운로드 경로 상에 존재하는 다수의 노드들 중에서 소정 간격의 노드들인 제1 노드 내지 제N 노드(N은 1이상 정수)만을 통해 상기 소정 데이터를 상기 요청자 노드로 다운로드하는 단계; 및
    상기 소정 간격의 노드들에 상기 소정 데이터를 캐싱하는 단계를 포함하는 것을 특징으로 하는 기록매체.
KR1020050001954A 2005-01-08 2005-01-08 유무선 통합 네트워크에서 p2p 서비스를 위한 데이터다운로드 방법 및 그 노드 KR100694079B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020050001954A KR100694079B1 (ko) 2005-01-08 2005-01-08 유무선 통합 네트워크에서 p2p 서비스를 위한 데이터다운로드 방법 및 그 노드
US11/256,162 US7821945B2 (en) 2005-01-08 2005-10-24 Method of downloading data in peer-to-peer service of wired and wireless integrated network and node therefor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020050001954A KR100694079B1 (ko) 2005-01-08 2005-01-08 유무선 통합 네트워크에서 p2p 서비스를 위한 데이터다운로드 방법 및 그 노드

Publications (2)

Publication Number Publication Date
KR20060081302A KR20060081302A (ko) 2006-07-12
KR100694079B1 true KR100694079B1 (ko) 2007-03-12

Family

ID=36653118

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050001954A KR100694079B1 (ko) 2005-01-08 2005-01-08 유무선 통합 네트워크에서 p2p 서비스를 위한 데이터다운로드 방법 및 그 노드

Country Status (2)

Country Link
US (1) US7821945B2 (ko)
KR (1) KR100694079B1 (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8726260B2 (en) * 2007-11-26 2014-05-13 Lenovo (Singapore) Pte Ltd Techniques for providing software patches to a computer system
US8775817B2 (en) * 2008-05-12 2014-07-08 Microsoft Corporation Application-configurable distributed hash table framework
US8626854B2 (en) * 2011-01-17 2014-01-07 Alcatel Lucent Traffic localization in peer-to-peer networks
US9456037B2 (en) * 2013-09-30 2016-09-27 Sonos, Inc. Identifying a useful wired connection
CN107660293B (zh) * 2015-04-20 2022-04-26 欧吉达克斯公司 物权电子凭证(edt)的分布式管理方法及其系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR960006394A (ko) * 1994-07-29 1996-02-23 윌리암 티.엘리스 네트워크내의 통신을 위한 노드 및 방법
KR20010079045A (ko) * 2001-06-08 2001-08-22 김동홍 피투피 기반의 유무선 연동 전자상거래 방법

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA1317283C (en) 1986-11-05 1993-05-04 Douglas Alan Livingston Steroidal 17–-silyl ethers and process to corticoids and progesterones
KR200178821Y1 (ko) 1999-11-26 2000-04-15 박종호 방향제를 차량에 고정시키기 위한 장치
KR100538924B1 (ko) 2001-04-06 2005-12-26 니트젠테크놀러지스 주식회사 개인 컴퓨터를 서비스 서버로 구동한 다수의 서버/클라이언트들 구조를 이용한 피어투피어 방식의 웹 서비스, 원격 스토리지 서비스, 원격 제어 서비스 제공방법
KR100397673B1 (ko) 2001-05-11 2003-09-13 주식회사 비즈모델라인 씨디엔을 이용한 클라이언트간 직접 데이터 통신 방법
KR20030043080A (ko) 2001-11-26 2003-06-02 박승도 신뢰된 사용자간의 퍼스널 네트워크 구축 및 검색리스트작성을 통한 검색방법과 시스템
US7574488B2 (en) 2002-05-31 2009-08-11 Hitachi, Ltd. Method and apparatus for peer-to-peer file sharing
JP2004127074A (ja) 2002-10-04 2004-04-22 Nippon Telegr & Teleph Corp <Ntt> P2pネットワークにおけるファイル検索方法、端末、プログラム、および記録媒体
JP4357827B2 (ja) 2002-11-07 2009-11-04 大日本印刷株式会社 ピアツーピア型文書共有ネットワークシステム
US7430747B2 (en) 2002-12-04 2008-09-30 Microsoft Corporation Peer-to peer graphing interfaces and methods
JP4233328B2 (ja) 2003-01-08 2009-03-04 日立ソフトウエアエンジニアリング株式会社 ピアツーピア技術を用いたファイルダウンロード方法及びシステム
US7774495B2 (en) 2003-02-13 2010-08-10 Oracle America, Inc, Infrastructure for accessing a peer-to-peer network environment
KR20040094245A (ko) 2003-05-02 2004-11-09 위즈정보기술주식회사 아이피브이6 주소 할당 피투피기반의 스트리밍 디지탈음원 검색 및 재생용 임베디드 장치
US7627644B2 (en) * 2003-11-28 2009-12-01 Canon Kabushiki Kaisha Recipient-centred proactive caching in a peer-to-peer system
KR200343080Y1 (ko) 2003-12-10 2004-02-25 이진태 방수시트용 앵커볼트
US7260383B1 (en) * 2004-02-20 2007-08-21 Sprint Spectrum L.P. Method and system for wireline response to wireless message notification
US7242923B2 (en) * 2004-03-23 2007-07-10 Motorola, Inc. System and method for authenticating wireless device with fixed station
US7436838B2 (en) * 2004-12-29 2008-10-14 Cisco Technology, Inc. Automatic prioritization of BGP next-hop in IGP

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR960006394A (ko) * 1994-07-29 1996-02-23 윌리암 티.엘리스 네트워크내의 통신을 위한 노드 및 방법
KR20010079045A (ko) * 2001-06-08 2001-08-22 김동홍 피투피 기반의 유무선 연동 전자상거래 방법

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
1019960006394 *
1020010079045 *

Also Published As

Publication number Publication date
KR20060081302A (ko) 2006-07-12
US20060153082A1 (en) 2006-07-13
US7821945B2 (en) 2010-10-26

Similar Documents

Publication Publication Date Title
US8805932B2 (en) Sharing of digital contents in P2P networks exploiting localization data
KR20030051429A (ko) 네트워크 어드레싱 시스템
JP4755683B2 (ja) ピア・ツー・ピア(p2p)・ネットワークを効率的に拡張するための方法、装置、およびプログラム
KR20130008325A (ko) 컨텐츠 중심 네트워크에서 컨텐츠 요청자, 중간 노드 및 컨텐츠 소유자의 통신 방법
US8838690B2 (en) Caching of digital contents in P2P networks
US20080235321A1 (en) Distributed contents storing system, copied data acquiring method, node device, and program processed in node
KR20140067881A (ko) 컨텐츠 중심 네트워크에서 컨텐츠 소유자 및 노드의 패킷 전송 방법
KR20030051430A (ko) 선택적 라우팅
JP6601784B2 (ja) 情報指向ネットワークにおいてコンテキスト認識型コンテンツ要求をサポートするための方法、ネットワークコンポーネント、およびプログラム
US7343395B2 (en) Facilitating resource access using prioritized multicast responses to a discovery request
KR100694079B1 (ko) 유무선 통합 네트워크에서 p2p 서비스를 위한 데이터다운로드 방법 및 그 노드
CN103107944A (zh) 一种内容定位方法和路由设备
RU2483457C2 (ru) Платформа маршрутизации сообщений
JP4472001B2 (ja) ゾーンベースのピアツーピア通信
US7483949B2 (en) E-mail caching system and method
Ben Brahim et al. Performance evaluation and comparison study of adaptive MANET service location and discovery protocols for highly dynamic environments
JP2008522464A (ja) 端末要求をエージェントがリダイレクトする方法及びシステム
Gulati et al. Software-defined content dissemination scheme for Internet of healthcare vehicles in COVID-like scenarios
JP5832970B2 (ja) Dnsサーバクライアントシステム及びdnsクエリ応答制御方法
KR101773716B1 (ko) 콘텐츠 중심 네트워크에서 콘텐츠를 공유하는 방법 및 콘텐츠를 공유하는 콘텐츠 중심 네트워크의 라우터
JP2005159911A (ja) 情報検索方法、情報検索装置、および情報検索プログラム
KR20140007953A (ko) 분석에 의한 라우팅
JP3265242B2 (ja) 連続データアクセス方法
KR20130033252A (ko) 서비스 오버레이 네트워크에서 종단간 QoS 보장형 콘텐츠 전달 방법 및 그 시스템
JP2001125830A (ja) キャッシュ管理装置及びネットワークシステム並びにプログラムを記録したコンピュータ読み取り可能な記録媒体

Legal Events

Date Code Title Description
A201 Request for examination
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 20050108

PA0201 Request for examination
PG1501 Laying open of application
E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20060921

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

GRNT Written decision to grant
PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 20070306

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 20070307

End annual number: 3

Start annual number: 1

PG1601 Publication of registration
PR1001 Payment of annual fee

Payment date: 20100225

Start annual number: 4

End annual number: 4

PR1001 Payment of annual fee

Payment date: 20110225

Start annual number: 5

End annual number: 5

PR1001 Payment of annual fee

Payment date: 20120228

Start annual number: 6

End annual number: 6

FPAY Annual fee payment

Payment date: 20130227

Year of fee payment: 7

PR1001 Payment of annual fee

Payment date: 20130227

Start annual number: 7

End annual number: 7

FPAY Annual fee payment

Payment date: 20140227

Year of fee payment: 8

PR1001 Payment of annual fee

Payment date: 20140227

Start annual number: 8

End annual number: 8

FPAY Annual fee payment

Payment date: 20150226

Year of fee payment: 9

PR1001 Payment of annual fee

Payment date: 20150226

Start annual number: 9

End annual number: 9

FPAY Annual fee payment

Payment date: 20160226

Year of fee payment: 10

PR1001 Payment of annual fee

Payment date: 20160226

Start annual number: 10

End annual number: 10

FPAY Annual fee payment

Payment date: 20170224

Year of fee payment: 11

PR1001 Payment of annual fee

Payment date: 20170224

Start annual number: 11

End annual number: 11

FPAY Annual fee payment

Payment date: 20180227

Year of fee payment: 12

PR1001 Payment of annual fee

Payment date: 20180227

Start annual number: 12

End annual number: 12

FPAY Annual fee payment

Payment date: 20190227

Year of fee payment: 13

PR1001 Payment of annual fee

Payment date: 20190227

Start annual number: 13

End annual number: 13

FPAY Annual fee payment

Payment date: 20200227

Year of fee payment: 14

PR1001 Payment of annual fee

Payment date: 20200227

Start annual number: 14

End annual number: 14

PC1903 Unpaid annual fee

Termination category: Default of registration fee

Termination date: 20211217