KR101420108B1 - 순차적 p2p 다운로드 시스템 및 방법 - Google Patents

순차적 p2p 다운로드 시스템 및 방법 Download PDF

Info

Publication number
KR101420108B1
KR101420108B1 KR1020120058414A KR20120058414A KR101420108B1 KR 101420108 B1 KR101420108 B1 KR 101420108B1 KR 1020120058414 A KR1020120058414 A KR 1020120058414A KR 20120058414 A KR20120058414 A KR 20120058414A KR 101420108 B1 KR101420108 B1 KR 101420108B1
Authority
KR
South Korea
Prior art keywords
nodes
node
information request
file information
transfer
Prior art date
Application number
KR1020120058414A
Other languages
English (en)
Other versions
KR20130134705A (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 KR1020120058414A priority Critical patent/KR101420108B1/ko
Publication of KR20130134705A publication Critical patent/KR20130134705A/ko
Application granted granted Critical
Publication of KR101420108B1 publication Critical patent/KR101420108B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/18Service support devices; Network management devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/0289Congestion control

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

P2P 다운로드의 총 소요시간을 줄이는 순차적 P2P 다운로드 시스템이 개시된다. 복수의 P2P 클라이언트 노드로부터 특정 파일을 다운로드 받기 위한 다운로드 파일 정보 요청 메시지를 수신하고, 상기 다운로드 파일 정보 요청 메시지에 대한 응답으로 상기 복수의 P2P 클라이언트 노드 각각에 대해 상기 파일의 전송 대기 여부를 포함하는 응답 메시지를 상기 복수의 P2P 클라이언트 노드에 전송하는 트랙커 서버를 포함하며, 상기 트랙커 서버는 상기 P2P 클라이언트 노드 각각에 대한 전송 대기 여부를 최대 동시 전송가능 노드수 범위 내에서 제어하여, 상기 복수의 P2P 클라이언트 노드 중 전송 대기 노드 또는 신규 다운로드 파일정보 요청 노드의 전부 또는 일부를 선택적으로 전송 가능 노드 또는 전송 대기 노드로 설정한다.

Description

순차적 P2P 다운로드 시스템 및 방법{SYSTEM AND METHOD FOR PERFORMING P2P DOWNLOAD SUCCESSIVELY}
본 발명은 무선망 하에서 특정 파일을 동시에 다수의 사용자가 순차적으로 P2P 다운로드하는 기술에 관한 것이다.
무선망 하에서 고속으로 파일을 전송하기 위한 일반적인 방식으로는 네트워크 최적화 방식과 캐싱(caching) 및 데이터 중복 제거(Deduplication)를 활용한 방식을 들 수 있다.
네트워크 최적화 방식의 경우 가용 밴드위스(bandwidth)를 최대한 채워서 파일을 전송함으로써 일련의 고속 전송효과를 얻을 수 있다. 하지만 동시 사용자가 많은 경우 가용 밴드위스 자체가 줄어들므로 이 경우 고속 전송 효과를 기대하기 어렵다. 또한 캐싱은 사용자의 요청이 많은 콘텐츠를 별도 서버에 저장해 데이터를 전송하는 방식이고, 데이터 중복 제거 또한 파일의 중복 여부를 체크하여 중복되는 파일은 전송하지 않는 방식을 취하므로, 원본파일 자체가 줄어들어 동시 사용자 상황에서 네트워크 최적화 방안에 비해 좀 더 나은 고속 전송효과를 기대할 수 있다. 그러나, 캐싱과 데이터 중복 제거는 그 전제조건이 이미 파일을 전송하고 2번째로 다시 전송하는 경우에만 해당하므로 적용영역이 좁고 학교수업과 같이 교육자료나 문서전송 등과 같은 파일 전송이 1번밖에 일어나지 않는 환경에서는 오히려 일반 파일 전송에 비해 파일 전송속도가 느려지는 단점이 있다
따라서, 다수의 동시 사용자 상황에서도 고속으로 파일을 전송할 수 있는 동시에 첫 번째 파일 전송 또한 고속으로 전송할 수 있는 방법이 요구된다.
대한민국 공개특허공보 제10-2004-0084421호(2004.10.06. 공개)
본 발명의 실시예들은 동시 사용자 상황에서 P2P 기반 파일 다운로드 시 총 소요시간 줄이는 시스템 및 방법을 제공하는데 그 목적이 있다.
또한, 본 발명의 실시예들은 파일 조각(Piece) 들이 이미 여러 클라이언트 또는 서버로 분산되어 있는 상황이 아닌 파일 조각들이 여러 노드(클라이언트 또는 서버) 에 다운로드 되어 있지 않은 상황에서, 즉, 최초 다운로드 상황에서 고속파일 다운로드를 가능하기 위한 시스템 및 방법을 제공하는데 그 목적이 있다.
상기 과제를 해결하기 위한 본 발명의 일 실시예에 따른 순차적 P2P 다운로드 시스템에서 복수의 클라이언트 노드의 전송 대기 여부를 제어하는 트랙커 서버는, 복수의 P2P 클라이언트 노드로부터 특정 파일을 다운로드 받기 위한 다운로드 파일 정보 요청 메시지를 수신하고, 상기 다운로드 파일 정보 요청 메시지에 대한 응답으로 상기 복수의 P2P 클라이언트 노드 각각에 대해 상기 파일의 전송 대기 여부를 포함하는 응답 메시지를 상기 복수의 P2P 클라이언트 노드에 전송하는 트랙커 서버를 포함하며, 상기 트랙커 서버는 상기 P2P 클라이언트 노드 각각에 대한 전송 대기 여부를 최대 동시 전송가능 노드수 범위 내에서 제어하여, 상기 복수의 P2P 클라이언트 노드 중 전송 대기 노드 또는 신규 다운로드 파일정보 요청 노드의 전부 또는 일부를 선택적으로 전송 가능 노드로 설정한다.
또한, 본 발명의 일 실시예에 따라 복수의 클라이언트 노드로부터 수신한 다운로드 파일정보 요청에 대해 각 노드별 전송대기 상태를 포함하는 응답 메시지를 전송하는 트랙커 서버를 포함하는 순차적 P2P 다운로드 시스템에서, 상기 트랙커 서버가 상기 복수의 클라이언트 노드의 전송 상태를 제어하는 방법은, 신규 다운로드 파일정보 요청 노드수(R) + 전송대기 노드수(W) ≤ 최대 동시 전송 가능 노드수(M) - 현재 전송 노드 수(C)의 여부를 판단하는 단계; 및 신규 다운로드 파일정보 요청 노드수(R) + 전송대기 노드수(W) ≤ 최대 동시 전송 가능 노드수(M) - 현재 전송 노드 수(C)인 경우, 신규 다운로드 파일정보 요청 노드 및 전송 대기 노드 중 R+W개 이하의 전송 대기 여부를 전송가능으로 설정하는 단계를 포함한다.
본 발명의 일 실시예에 따라 순차적 P2P 다운로드 시스템에서 복수의 클라이언트 노드의 전송 대기 여부를 제어하는 트랙커 서버는, 신규 다운로드 파일정보 요청 노드수(R) + 전송대기 노드수(W) ≤ 최대 동시 전송 가능 노드수(M) - 현재 전송 노드 수(C)의 여부를 판단하는 단계; 및 신규 다운로드 파일정보 요청 노드수(R) + 전송대기 노드수(W) ≤ 최대 동시 전송 가능 노드수(M) - 현재 전송 노드 수(C)인 경우, 신규 다운로드 파일정보 요청 노드 및 전송 대기 노드 중 R+W 개 이하의 전송 대기 여부를 전송가능으로 설정하는 단계를 수행하도록 구성된 프로세서를 포함한다.
본 발명에 따르면, 다수의 클라이언트가 동시에 파일 다운로드를 요청하더라도 최대 동시 전송가능 노드수의 범위 안에서 전송가능 노드를 선택하여 순차적으로 다운로드를 완료함으로써 네트워크 트래픽 오버헤드를 발생시키지 않으므로, 일반적인 P2P 상황에서 동시 다운로드 시 가용 대역폭 이상으로 네트워크 트래픽을 포화시킴에 따른 전송 속도 저하를 방지할 수 있다.
또한, 본 발명에 따르면, 기존의 전송 대상 파일들이 각 P2P 노드에 이미 분산되지 않은 상황에서 파일을 동시 다운로드 요청 시 동시 사용자의 전체 다운로드 완료 시간을 향상할 수 있다.
또한, 본 발명에 따르면, 순차적 P2P 동시 다운로드 방식을 사용하게 되므로, 다운로드의 차수를 거침에 따라 기 다운로드 완료를 마무리 한 노드들의 경우 Seeder 상태로 전환됨에 따라 다운로드 차수가 진행되면서 좀더 많은 수의 Seeder 상태 노드들을 가지고 파일 다운로드를 진행하여 좀 더 빠른 파일 고속 전송을 기대할 수 있다.
도 1은 본 발명의 일 실시예에 따른 P2P 다운로드 시스템을 도시한 블록도이다.
도 2는 본 발명의 일 실시예에 따른 트랙커 서버의 구성을 도시한 블록도이다.
도 3은 본 발명의 일 실시예에 따라 P2P 클라이언트의 다운로드 파일 정보 요청 메시지에 대한 트랙커 서버의 응답 메시지의 구조를 도시한 블록도이다.
도 4는 본 발명의 일 실시예에 따른 P2P 클라이언트의 구성을 도시한 블록도이다.
도 5는 본 발명의 일 실시예에 따라 트랙커 서버에서의 순차적 P2P 파일 다운로드 제어 방법을 도시한 순서도이다.
이하, 도면을 참조하여 본 발명의 구체적인 실시형태를 설명하기로 한다. 그러나 이는 예시에 불과하며 본 발명은 이에 제한되지 않는다.
본 발명을 설명함에 있어서, 본 발명과 관련된 공지기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략하기로 한다. 그리고, 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
본 발명의 기술적 사상은 청구범위에 의해 결정되며, 이하의 실시예는 본 발명의 기술적 사상을 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 효율적으로 설명하기 위한 일 수단일 뿐이다.
도 1은 본 발명의 일 실시예에 따른 P2P 다운로드 시스템을 도시한 블록도이다.
P2P 다운로드 시스템(100)은 복수의 P2P 클라이언트(101, 102,..., 109), 트랙커(tracker) 서버(120) 및 초기 P2P 클라이언트(130)를 포함하며, 본 발명의 일시예에 따른 시스템은 특정 원본 파일을 초기 P2P 클라이언트(130)만이 가지고 있는 상태에서 복수의 P2P 클라이언트(101, 102,..., 109)가 순차적으로 원본 파일을 다운로드 받는 상태를 도시하고 있다. 한편, 일반적으로 P2P 클라이언트는 다운로드 파일조각들을 얼마나 가지고 있느냐에 따라 Seeder 상태, 즉 모든 파일을 다운로드 받아서 노드가 파일을 공유하여 전달할 수 있는 상태, 그리고 Leecher 상태, 즉 모든 파일을 가지고 있지는 않지만 파일 조각들을 가지고 있어서 노드가 가지고 있는 파일 조각들을 다른 노드에 공유하면서 동시에 남은 파일 조각을 받을 수 있는 상태, 그리고 No Piece 상태, 즉 파일 다운로드 요청은 했으나 아직 파일을 다운로드 받지 못한 상태의 3가지 상태로 나뉜다. 본 시스템의 경우, 최초에는 초기 P2P 클라이언트(130)만이 원본 파일을 가지고 있고, 다른 P2P 노드에는 해당 파일이 분산되어 있지 않은 상태였으므로, 처음에는 초기 P2P 클라이언트(130)만이 해당 파일에 대해 Seeder 상태에 있었고, 복수의 P2P 클라이언트(101, 102,..., 109)는 해당 파일에 대해 No Piece 상태에 있었을 것이다. 이후, 복수의 P2P 클라이언트(101, 102,..., 109)가 초기 P2P 클라이언트(130)로부터 해당 파일의 다운로드를 진행함에 따라 복수의 P2P 클라이언트(101, 102,..., 109) 각각은 도 1에 도시된 바와 같이, 원본 파일의 다운로드 정도에 따라 Seeder 상태, Leecher 상태, 그리고 No Piece 중 어느 한 상태에 있음을 알 수 있다.
복수의 P2P 클라이언트(101, 102,..., 109)는 신규로 특정 파일을 다운로드 받고자 하는 경우, 먼저 해당 파일을 어느 P2P 노드로부터 다운로드 받아야 하는지를 알기 위해서 트랙커 서버(120)에 해당 파일에 대한 다운로드 파일 정보 요청 메시지를 전달하며, 트랙커 서버(120)는 다운로드 파일 정보 요청 메시지에 응답하여 다운로드 파일 정보 요청 처리 메시지를 복수의 P2P 클라이언트(101, 102,..., 109)에게 보낸다. 다운로드 파일 정보 요청 메시지는 현재 파일을 다운로드 받고 있는 P2P 노드의 수, 현재 파일 다운로드를 완료한 P2P 노드의 수, 현재 파일 다운로드, 공유에 참여, 및 대기 중에 있는 P2P 노드의 아이디, IP, 포트 등을 포함한다. 따라서, 복수의 P2P 클라이언트(101, 102,..., 109)는 트랙커 서버(120)로부터 수신한 다운로드 파일 정보 요청 메시지로부터 해당 파일을 초기 P2P 클라이언트(130)가 가지고 있음을 알고, 초기 P2P 클라이언트(130)에게 파일 전송 요청 메시지를 전달하여 해당 파일을 전송받고자 할 것이다. 그러나, 본 발명에 따른 시스템에서는 트랙커 서버(120)으로부터 파일 다운로드가 허가된 노드만 파일 전송에 참여할 수 있도록 파일 전송 요청에 대한 응답 메시지 내에 추가 메시지 구조를 가져간다. 즉, 각 노드의 다운로드 파일 정보 요청 메시지에 대한 응답으로 트랙커 서버(120)가 각 노드에 응답하는 다운로드 파일 정보 요청 메시지에는 추가적인 기능으로서 각 노드의 파일 전송을 제한하는 메시지를 포함한다.
도 1을 참조하면, 트랙커 서버(120)에 의해 최대 동시 파일 전송이 가능한 노드가 3개로 설정된 경우로서, 순차적으로 3개의 P2P 클라이언트(101, 102, 103)의 1차 다운로드가 완료되면, 다음으로 3 개의 P2P 클라이언트(104, 105, 106)의 2 차 다운로드, 다음으로 3 개의 P2P 클라이언트(107, 108, 109)의 3 차 다운로드를 거치면서 전체 파일 다운로드를 완료한다. 즉, 본 발명에 따른 시스템에서는 예를 들어, 9 개의 P2P 클라이언트(101, 102,..., 109)가 동시에 해당 파일의 전송을 요청하더라도, 트랙커 서버(120)에 최대 동시 전송 가능 노드수가 3개로 설정된 경우에는, 3개의 P2P 클라이언트별로 순차적으로 파일 다운로드가 진행되는 것이다. 한편, 최대 동시 전송 가능 노드수가 3개이더라도, 경우에 따라서는 3 개 미만의 노드만을 전송 가능 노드로 설정할 수 있다.
여기서, 최대 동시 전송가능 노드수 만큼 통신에 사용되는 대역폭은 데이터 전송 속도가 저하되지 않는 범위 내에서 파일 전송에 참여하는 총 노드들이 공유하고 있는 무선 링크의 전체 가용 대역폭의 일부만을 사용하게 된다. 예를 들면, 노드들이 공유하고 있는 무선 링크의 대역폭이 100Mbps 이고 실제로 데이터 전송 속도가 30Mbps 이상의 경우 떨어지는 현상이 나타난다고 하면 100Mbps 대역폭을 쓰고 있는 라인에 10개의 노드가 통신을 하려고 한다면 1개의 노드당 10Mbps 를 사용할 수 있게 되고 이 경우 노드 3개가 전송가능 노드이고, 7개가 전송 대기 노드가 된다.
이와 같이, 본 발명에 따른 순차적 P2P 동시 다운로드 방식의 장점은 특히 기존의 전송 대상 파일들이 각 P2P 노드에 이미 분산되지 않은 상황에서 파일을 동시 다운로드 요청 시 동시 사용자의 전체 다운로드 완료 시간을 향상시킬 수 있는 방법이다. 순차적 P2P 동시 다운로드 방식을 쓰게 되면 동시 P2P 전송을 제한함으로써 무선망 링크 상에서의 가용 대역폭 이상으로 네트워크 트래픽을 발생시키지 않음에 따라 일반적인 P2P 상황에서 동시 다운로드 시 가용 대역폭 이상으로 네트워크 트래픽을 포화시킴에 따른 전송 속도 저하를 방지할 수 있다. 또한 순차적 P2P 동시 다운로드 방식을 사용하게 되면 차수를 거침에 따라 기 다운로드 완료를 마무리 한 노드들의 경우 Seeder 상태로 전환됨에 따라 다운로드 차수가 진행되면서 좀더 많은 수의 Seeder 상태 노드들을 가지고 파일 다운로드를 진행하여 좀 더 빠른 파일 고속 전송을 기대할 수 있다. 예를 들어, 도 1의 경우 3차 다운로드 시에는 1차 다운로드 후 3개의 Seeder를 확보하게 되고 2차 다운로드 후 6개의 Seeder 가 확보되게 됨에 따라 6개의 Seeder를 가지고 3차 다운로드를 진행할 수 있게 된다. 단, 공유되는 Seeder 의 개수는 트랙커 서버(120)에서 조절을 할 수 있다. 즉, 공유되는 Seeder 가 네트워크 트래픽 오버헤드를 유발할 수 있다고 판단되는 경우, 트랙커 서버(120)는 전송 가능한 Seeder 의 개수를 조절할 수 있다.
이와 같이 본 발명에 따른 순차적 P2P 다운로드 시스템에서는 최대 동시 전송가능 노드수의 범위에서 선택적으로 일부 노드는 전송 가능 상태에 있고, 나머지 노드들은 전송 대기 상태에 있으며, 전송 가능 상태의 노드들이 전송이 완료되면, 전송 대기 상태의 노드들이 순차적으로 전송 가능 노드로 바뀌면서 파일을 전송하게 된다. 이에 따라 무선망 상에서 P2P 방식을 통해 파일 다운로드를 받는 경우 동시 사용자 상황, 예를 들어 10명 이상에서 총 다운로드 소요시간 (모든 동시에 파일을 요청한 사용자가 다운로드 완료를 하는데 소요되는 총 시간)을 줄일 수 있다.
도 2는 본 발명의 일 실시예에 따른 트랙커 서버의 구성을 도시한 블록도이다.
트랙커 서버(120)는 파일 정보 요청 처리기(202), 노드 상태 업데이트 모듈(204), 순차 파일 다운로드 제어기(206), 및 파일 수신 정보 저장 모듈(208)을 포함한다.
파일 정보 요청 처리기(202)는 P2P 클라이언트로부터 HTTP로 다운로드 파일 정보 요청 메시지를 받는 경우, 이에 대한 응답으로 예를 들어, 현재 파일을 다운로드 받고 있는 P2P 노드의 수, 현재 파일 다운로드를 완료한 P2P 노드의 수, 현재 파일 다운로드, 공유에 참여, 및 대기 중에 있는 P2P 노드의 아이디, IP, 포트, 그리고 전송 대기 여부를 포함하는 응답 메시지를 전달한다. 파일 정보 요청 처리기(202)는 P2P 클라이언트로부터 다운로드 파일 정보 요청 메시지를 주기적으로 받는다. P2P 클라이언트로부터 파일 정보 요청 처리기(202)로 다운로드 파일 정보를 요청하는 주기는 노드의 변경이 없을 경우(노드 추가 및 삭제) 주기 간격이 늘어나고 반대로 노드의 변경이 많을 경우 주기 간격이 짧아진다. 파일 정보 요청 처리기(202)의 응답 메시지는 Seeder 상태, Leecher상태, no Piece 상태인 모든 P2P 클라이언트 노드에 응답으로 전달된다.
노드 상태 업데이트 모듈(204)은 Seeder 상태, Leecher 상태, 전송 대기 상태에 있는 노드 개수를 업데이트 하여 저장해 둔다.
순차 파일 다운로드 제어기(206)는 노드 상태 업데이트 모듈(204)로부터 현재의 Seeder 개수, Leecher 개수, 전송 대기 노드 개수를 가져 와서 이를 통해 전송 대기 노드 또는 신규 다운로드 파일 요청 노드를 전송 가능 노드로 설정할지 여부를 판단한다. 전송 가능 노드를 선택하는 방법으로는 최대 동시 전송가능 노드수의 범위 내에서 1) P2P 클라이언트로부터 파일 전송 요청을 받는 선착순 기준 2) 각 P2P 클라이언트가 물리적으로 가까이 있는 즉, 패킷 교환망에서 하나의 라우터에서 다른 라우터로 데이터 패킷이 이동한 길을 의미하는 홉 수가 작은 기준 3) 각 P2P 클라이언트의 데이터 전송 처리율(throughput) 기준 등과 같은 방식으로 노드를 선택하여 전송 가능 노드로 결정할 수 있다.
순차 파일 다운로드 제어기(206)는 노드 상태 업데이트 모듈(204)로부터 획득한 각 노드의 상태 정보를 파악하여 전송 대기 노드를 전송 가능 노드로 변경할지 여부를 판단한다. 예를 들어, 현재 전송 노드수(C)가 최대 동시 전송가능 노드수(M)보다 작은 경우에는 동시 전송가능 노드수에 여유가 있는 상태이므로, 현재 전송 대기 노드 또는 신규 파일 다운로드 요청 노드의 일부 또는 전부는 전송가능 노드로 설정될 수 있다. 만약, 신규 다운로드 파일정보 요청 노드수(R) 및 전송대기 노드수(C)의 합이 최대 동시 전송가능 노드수(M)과 현재 전송 노드수(C)의 차보다 같거나 작은 경우, 즉, R+W ≤ M-C 인 경우, 순차파일 다운로드 제어기(206)는 신규 다운로드 파일정보 요청 노드 및 전송 대기 노드 모두를 전송 가능 노드로 선택할 수 있다. 한편, 경우에 따라서 트랙커 서버(120)는 신규 다운로드 파일정보 요청 노드 및 전송 대기 노드 모두를 전송 가능 노드로 설정하지 않고 그 일부만을 전송 가능 노드로 설정할 수 있다. 즉, 순차다운로드 제어기(206)는 R+W 개 이하의 범위 내에서 신규 다운로드 파일정보 요청 노드 및 전송 대기 노드 중 선택적으로 전송 가능 노드로 설정할 수 있다.
또한, 현재 전송 가능 노드수(C)가 최대 동시 전송가능 노드수(M)과 같은 경우에는, 즉, M = C 인 경우, 동시 전송가능 노드수에 여유가 없는 상태이므로, 전송 대기 노드는 계속해서 대기 상태를 유지하게 된다. 그리고, 신규 다운로드 파일정보 요청 노드 또한 전송 대기 상태로 설정된다.
또한, 신규 다운로드 파일정보 요청 노드수(R) 및 전송대기 노드수(C)의 합이 최대 동시 전송가능 노드수(M)과 현재 전송 노드수(C)의 차보다 큰 경우, 즉 R+W > M-C > 0인 경우, M-C 개수만큼 동시 전송가능 노드수에 여유가 있으므로, P2P 클라이언트의 다운로드 파일정보 요청 메시지에 대한 응답 메시지에서 기존의 전송 대기 노드 및 신규 다운로드 파일정보 요청 노드 중 M-C 개 이하의 노드는 전송 가능 노드로 설정될 수 있고, 나머지 노드는 전송 대기 상태가 된다.
한편, P2P 클라이언트는 주기적으로 다운로드 파일 정보 요청 메시지를 트랙커 서버(120)로 보내게 되고, 이때마다 순차 파일 다운로드 제어기(206)는 주기적으로 전송 대기 노드 또는 신규 다운로드 파일정보 요청 노드의 상태를 전송 가능 노드로 설정할지를 판단한다. 이 때, 파일 정보 요청 처리기(202)는 순차 파일 다운로드 제어기(206)에 의해 판단된 각 노드별 전송 대기 여부 결과를 다운 로드 파일정보 요청에 대한 응답 메시지에 반영하여 다운로드 파일 정보 요청 메시지를 요청한 클라이언트에게 전송한다.
파일 수신 정보 저장 모듈(208)은 전송에 사용될 파일의 hash 정보(파일명, 파일 사이즈, 조각파일 사이즈), 노드별 다운로드 받은 바이트 수, 업로드 한 바이트 수, 전송받을 바이트 수 등을 저장하는 일종의 데이터 베이스 역할을 한다.
도 3은 본 발명의 일 실시예에 따라 P2P 클라이언트의 다운로드 파일 정보 요청 메시지에 대한 트랙커 서버의 응답 메시지(300)의 구조를 도시한 블록도이다.
Seeder 수(301)는 현재 다운로드 되는 파일에 대한 파일 업로드 역할을 하고 있는 노드 수를 나타내고, Leecher 수(302)는 현재 파일 조각을 가지고 파일 업로드와 다운로드를 병행하는 노드 수를 나타낸다. 그리고 파일 전송에 참여, 및 대기하고 있는 노드들에 대한 정보인 전송대기 여부(303), 노드 ID(304), 노드 IP(305), 노드 Port(306)은 노드별로 메시지에 포함되어 다운로드 파일정보 요청 메시지를 요청한 P2P 클라이언트에게 전달된다. 전송대기 여부(303)의 값이 N 인 경우에는 실제로 전송 가능한 노드로서 파일 전송을 행하게 된다. 상기 응답 메시지는 Seeder 상태, Leecher 상태, No Piece 상태인 다운로드 파일정보 요청 메시지를 요청한 P2P 클라이언트에 전달된다.
도 4는 본 발명의 일 실시예에 따른 P2P 클라이언트의 구성을 도시한 블록도이다.
P2P 클라이언트(400)는 다운로드 파일 정보 요청 모듈(402), 소켓 연결 핸들러(404), 메시지 핸들러(406) 및 조각파일 처리 모듈(408)을 포함한다.
다운로드 파일 정보 요청 모듈(402)은 P2P 클라이언트가 다운로드 받고자 하는 파일에 대한 hash 정보(파일명, 파일 사이즈, 조각파일 사이즈)를 포함하는 다운로드 파일 정보 메시지를 생성하여 HTTP로 트랙커 서버(120)에 전송한다.
소켓 연결 핸들러(404)는 트랙커 서버(120), 및 실제로 파일 조각을 업로드 및 다운로드 할 P2P 클라이언트와의 네트워크 연결을 담당하며, 파일 업로드 및 다운로드 모두에 사용된다.
메시지 핸들러(406)는 실제로 트랙커 서버(120) 및 파일 조각 업로드 및 다운로드를 하는 P2P 클라어언트와 주고받는 메시지를 해석하고 이에 따른 동작을 담당한다. 메시지 교환을 위한 프로토콜은 Bittorrent 프로토콜 메시지 구조를 따르며, 클라이언트가 각 P2P 노드들에게 보내는 메시지는 choke, unchoke, Interested, not interested, have, bitfield, request 등이 있다.
조각파일 처리 모듈(408)은 P2P 클라이언트로부터 다운로드 받은 파일 조각들을 조각의 사이즈 오프셋에 따라 연결해서 원본 파일을 만드는 작업을 한다.
도 5는 본 발명의 일 실시예에 따라 트랙커 서버에서의 순차적 P2P 파일 다운로드 제어 방법을 도시한 순서도이다.
먼저, 트랙커 서버(120)는 신규 다운로드 파일정보 요청 노드수(R) + 전송대기 노드수(W) ≤ 최대 동시 전송 가능 노드수(M) - 현재 전송 노드 수(C)의 여부를 판단한다(단계 501). 즉, 현재 전송 노드수(C)가 최대 동시 전송가능 노드수(M)를 넘지 않을 경우에는 예를 들어, 파일 전송을 요청한 순서에 따라 전송대기 노드를 전송 가능 노드로 변경해서 최대 동시 전송가능 노드수(M)를 넘지 않는 범위 내에서 전송 요청 및 전송 대기 노드를 전송가능 노드로 변경하고자 하는 것이다.
먼저, 단계 501에서, R+W ≤ M-C를 만족하는 경우에는 신규 다운로드 파일정보를 요청하는 노드 및 전송 대기 노드를 모두 전송 가능 노드로 변경하더라도, 트랙커 서버(120)가 설정한 최대 동시 전송 가능 노드수(M)를 넘어서지 않는다. 한편, 경우에 따라서 트랙커 서버(120)는 신규 다운로드 파일정보 요청 노드 및 전송 대기 노드 모두를 전송 가능 노드로 설정하지 않고 그 일부만을 전송 가능 노드로 설정할 수 있다. 따라서, R+W ≤ M-C를 만족하는 경우에는, 트랙커 서버(120)는 P2P 클라이언트의 다운로드 파일정보 요청 메시지에 대한 응답 메시지에서 신규 다운로드 파일정보 요청 노드 및 전송 대기 노드 중 R+W 이하의 전송 대기 여부를 "N"으로 설정한 후, 응답 메시지를 파일 정보 요청 메시지에 대한 응답으로 전송한다(단계 502). 즉, 다시 도 3을 참조하면, 다운로드 파일 정보 요청에 대한 응답 메시지 구조에서 신규 다운로드 파일정보 요청 노드 및 전송 대기 노드 중 R+W 개 이하의 전송 대기 여부(303)를 "N"으로 설정하여 응답 메시지를 전송하는 것이다. 다음으로, 다운로드 파일 정보 요청에 대한 응답으로 전송 대기 여부= "N"으로 설정된 응답 메시지를 수신한 신규 다운 로드 파일정보 요청 노드 및 기존의 전송 대기 노드, 즉 R+W 개 이하의 노드는 전송 가능 노드로 변경이 되면서 전송 가능한 노드들과 파일을 주고 받는다(단계 503). 다음으로, 모든 노드의 파일 전송이 완료되었는지를 판단하여(단계 504), 완료된 경우 파일 전송을 종료하고, 완료가 되지 않은 경우에는 다시 단계 501로 돌아간다.
한편, 주기적으로 P2P 클라이언트는 다운로드 파일 정보 요청 메시지를 트랙커 서버(120)로 보내게 되고 트랙커 서버는 단계 501의 조건 여부에 대해서 검사를 반복한다.
이후, 단계 501에서, R+W ≤ M-C를 만족하지 않는 경우에는, M-C > 0 인지 여부를 판단한다(단계 505).
단계 505에서, M-C > 0 를 만족하지 않는 경우는(즉, M=C 인 경우), 현재 전송 노드수(C)가 최대 동시 전송 가능 노드수(M)에 도달한 경우이므로, 동시 전송 가능 노드수에 여유가 있을 때까지 신규 다운로드 파일정보 요청 노드 및 기존의 전송대기 노드는 모두 현재 전송 노드들이 전송을 완료할 때까지 전송대기 상태를 유지한다. 즉, M-C > 0 를 만족하지 않는 경우는, 트랙커 서버(120)는 P2P 클라이언트의 다운로드 파일정보 요청 메시지에 대한 응답 메시지에서 신규 다운로드 파일정보 요청 노드의 전송 대기 여부를 모두 "Y"로 설정하고, 기존의 전송 대기 노드의 전송 대기 여부 또한 "Y"로 유지하는 응답 메시지를 전송한다(단계 506). 즉, 다시 도 3을 참조하면, 다운로드 파일 정보 요청에 대한 응답 메시지 구조에서 신규 다운로드 파일정보 요청 노드 및 기존의 전송 대기 노드의 전송 대기 여부(303)를 "Y"로 설정하여 응답 메시지를 전송하는 것이다. 다음으로, 모든 노드의 파일 전송이 완료되었는지를 판단하여(단계 508), 완료된 경우 파일 전송을 종료하고, 완료가 되지 않은 경우에는 다시 단계 501로 돌아간다.
한편, 단계 505에서, M-C > 0 를 만족하는 경우에는, 즉, R+W > M-C > 0 인 경우에는, M-C 의 개수 차이만큼 동시 전송가능 노드수에 여유가 있다는 것을 의미한다. 따라서, R+W > M-C >0 인 경우에는, 트랙커 서버(120)는 P2P 클라이언트의 다운로드 파일정보 요청 메시지에 대한 응답 메시지에서 기존의 전송 대기 노드 및 신규 다운로드 파일정보 요청 노드 중 M-C 개 이하의 노드의 전송 대기 여부를 "N"으로 설정한 후 응답 메시지를 전송한다(단계 507). 즉, 다시 도 3을 참조하면, 다운로드 파일 정보 요청에 대한 응답 메시지 구조에서 M-C 개 이하의 노드의 전송 대기 여부(303)를 새롭게 "N"으로 설정하여 응답 메시지를 전송하는 것이다. 다음으로, 다운로드 파일 정보 요청에 대한 응답으로 전송 대기 여부= "N"으로 설정된 응답 메시지를 수신한 M-C 개 이하의 신규 다운로드 파일정보 요청 노드 및 전송 대기 노드는 전송 가능 노드로 변경이 되면서 전송 가능한 노드들과 파일을 주고 받는다(단계 508). 다음으로, 모든 노드의 파일 전송이 완료되었는지를 판단하여(단계 504), 완료된 경우 파일 전송을 종료하고, 완료가 되지 않은 경우에는 다시 단계 501로 돌아간다.
한편, 본 발명의 실시예는 본 명세서에서 기술한 방법들을 컴퓨터상에서 수행하기 위한 프로그램을 포함하는 컴퓨터 판독 가능 기록매체를 포함할 수 있다. 상기 컴퓨터 판독 가능 기록매체는 프로그램 명령, 로컬 데이터 파일, 로컬 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체는 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 분야에서 통상의 지식을 가진 자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD와 같은 광 기록 매체, 플로피 디스크와 같은 자기-광 매체, 및 롬, 램, 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함할 수 있다.
이상에서 대표적인 실시예를 통하여 본 발명에 대하여 상세하게 설명하였으나, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 상술한 실시예에 대하여 본 발명의 범주에서 벗어나지 않는 한도 내에서 다양한 변형이 가능함을 이해할 것이다.
그러므로 본 발명의 권리범위는 설명된 실시예에 국한되어 정해져서는 안 되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.
101, 102, ..., 109: P2P 클라이언트
120: 트랙커 서버
130: 초기 P2P 클라이언트
202: 파일 정보 요청 처리기
204: 노드 상태 업데이트 모듈
206: 순차 파일 다운로드 제어기
208: 파일 수신 정보 저장 모듈

Claims (16)

  1. 순차적 P2P 다운로드 시스템에서 복수의 클라이언트 노드의 전송 대기 여부를 제어하는 트랙커 서버에 있어서,
    복수의 P2P 클라이언트 노드로부터 특정 파일을 다운로드 받기 위한 다운로드 파일 정보 요청 메시지를 수신하고, 상기 다운로드 파일 정보 요청 메시지에 대한 응답으로 상기 복수의 P2P 클라이언트 노드 각각에 대해 상기 파일의 전송 대기 여부를 포함하는 응답 메시지를 상기 복수의 P2P 클라이언트 노드에 전송하는 트랙커 서버를 포함하며,
    상기 트랙커 서버는 상기 P2P 클라이언트 노드 각각에 대한 전송 대기 여부를 최대 동시 전송가능 노드수 범위 내에서 제어하여, 상기 복수의 P2P 클라이언트 노드 중 전송 대기 노드 또는 신규 다운로드 파일정보 요청 노드의 전부 또는 일부를 선택적으로 전송 가능 노드 또는 전송 대기 노드로 설정하며,
    상기 트랙커 서버는,
    상기 복수의 클라이언트 노드의 노드 상태를 업데이트하는 노드 상태 업데이트 모듈;
    상기 노드 상태에 기초하여 상기 복수의 클라이언트 노드 중 전송 대기 노드 또는 신규 다운로드 파일 정보 요청 노드를 전송 가능 노드로 설정할지 여부를 판단하는 순차 파일 다운로드 제어기; 및
    상기 복수의 클라이언트 노드로부터 수신한 다운로드 파일 정보 요청에 대하여 상기 순차 파일 다운로드 제어기의 판단 결과를 포함하는 응답 메시지를 상기 복수의 클라이언트 노드에 전송하는 파일 정보요청 처리기를 포함하는, 트랙커 서버.
  2. 제 1 항에 있어서,
    상기 응답 메시지는 상기 파일 전송에 참여하고 있는 Seeder 수 및 Leecher 수, 및 상기 복수의 P2P 클라이언트 노드 각각에 대한 전송 대기 여부, 노드 ID, 노드 IP, 노드 Port에 관한 정보를 포함하는, 트랙커 서버.
  3. 제 1 항에 있어서,
    상기 전송 대기 중인 클라이언트 노드를 선택적으로 전송 가능 노드로 변경하는 것은, 각 P2P 클라이언트로부터 파일 전송 요청을 받는 선착순 기준, 각 P2P 클라이언트가 물리적으로 가까이 있는 순서 기준, 또는 각 P2P 클라이언트의 데이터 전송 처리율(throughput) 기준에 의해 결정되는, 트랙커 서버.
  4. 제 1 항에 있어서,
    상기 트랙커 서버는, 최대 동시 전송가능 노드수(M) - 현재 전송 노드수(C) ≥ 신규 다운로드 파일정보 요청 노드수(R) + 전송 대기 노드수(W) 여부를 판단하여, 전송 대기 노드 또는 신규 다운로드 파일정보 요청 노드를 전송 가능 노드로 설정할지 여부를 결정하는, 트랙커 서버.
  5. 제 4 항에 있어서,
    최대 동시 전송가능 노드수(M) - 현재 전송 노드수(C) ≥ 신규 다운로드 파일정보 요청 노드수(R) + 전송 대기 노드수(W)인 경우, 상기 트랙커 서버는 신규 다운로드 파일정보 요청 노드 및 전송 대기 노드 중 R+W개 이하의 노드를 전송 가능 노드로 설정하고,
    0 < 최대 동시 전송가능 노드수(M) - 현재 전송 노드수(C) < 신규 다운로드 파일정보 요청 노드수(R) + 전송 대기 노드수(W)인 경우, 상기 트랙커 서버는 전송 대기 노드 및 신규 다운로드 파일정보 요청 노드 중 선택적으로 M-C 개 이하의 노드를 전송 가능 노드로 설정하는, 트랙커 서버.
  6. 제 4 항에 있어서,
    최대 동시 전송가능 노드수(M) = 현재 전송 노드수(C) 인 경우, 상기 트랙커 서버는 신규 다운로드 파일정보 요청 노드 및 전송 대기 노드를 전송 대기 상태로 유지하는, 트랙커 서버.
  7. 제 1 항에 있어서,
    상기 최대 동시 전송가능 노드수에 대응되는 대역폭은 상기 복수의 클라이언트 노드가 공유하는 무선 링크의 전체 가용 대역폭의 일부인, 트랙커 서버.
  8. 삭제
  9. 제 1 항에 있어서,
    상기 순차 파일 다운로드 제어기는, 최대 동시 전송가능 노드수의 범위 내에서 전송 대기 노드 또는 신규 다운로드 파일 정보 요청 노드를 선택적으로 전송 가능 노드로 설정할지 여부를 결정하는, 트랙커 서버.
  10. 제 9 항에 있어서,
    상기 노드 상태는 Seeder 상태, Leecher 상태, 전송 대기 상태를 포함하는, 트랙커 서버.
  11. 복수의 클라이언트 노드로부터 수신한 다운로드 파일정보 요청에 대해 각 노드별 전송대기 상태를 포함하는 응답 메시지를 전송하는 트랙커 서버를 포함하는 순차적 P2P 다운로드 시스템에서, 상기 트랙커 서버가 상기 복수의 클라이언트 노드의 전송 상태를 제어하는 방법은,
    신규 다운로드 파일정보 요청 노드수(R) + 전송대기 노드수(W) ≤ 최대 동시 전송 가능 노드수(M) - 현재 전송 노드 수(C)의 여부를 판단하는 단계; 및
    신규 다운로드 파일정보 요청 노드수(R) + 전송대기 노드수(W) ≤ 최대 동시 전송 가능 노드수(M) - 현재 전송 노드 수(C)인 경우, 신규 다운로드 파일정보 요청 노드 및 전송 대기 노드 중 R+W개 이하의 전송 대기 여부를 전송가능으로 설정하는 단계를 포함하는, 복수의 클라이언트 노드의 전송 상태를 제어하는 방법.
  12. 제 11 항에 있어서,
    신규 다운로드 파일정보 요청 노드수(R) + 전송대기 노드수(W) > 최대 동시 전송 가능 노드수(M) - 현재 전송 노드 수(C)이고, 최대 동시 전송 가능 노드수(M) = 현재 전송 노드 수(C) 인 경우,
    신규 다운로드 파일정보 요청 노드 및 전송대기 노드의 전송 상태를 전송대기로 설정하는 단계를 더 포함하는, 복수의 클라이언트 노드의 전송 상태를 제어하는 방법.
  13. 제 12 항에 있어서,
    신규 다운로드 파일정보 요청 노드수(R) + 전송대기 노드수(W) > 최대 동시 전송 가능 노드수(M) - 현재 전송 노드 수(C)이고, 최대 동시 전송 가능 노드수(M) - 현재 전송 노드 수(C) > 0 인 경우,
    전송 대기 노드 및 신규 다운로드 파일정보 요청 노드 중 선택적으로 M-C 개 이하의 노드의 전송 상태를 전송가능으로 설정하는 단계를 더 포함하는, 복수의 클라이언트 노드의 전송 상태를 제어하는 방법.
  14. 순차적 P2P 다운로드 시스템에서 복수의 클라이언트 노드의 전송 대기 여부를 제어하는 트랙커 서버에 있어서,
    상기 트랙커 서버는,
    신규 다운로드 파일정보 요청 노드수(R) + 전송대기 노드수(W)≤최대 동시 전송 가능 노드수(M) - 현재 전송 노드 수(C)의 여부를 판단하는 단계; 및
    신규 다운로드 파일정보 요청 노드수(R) + 전송대기 노드수(W)≤최대 동시 전송 가능 노드수(M) - 현재 전송 노드 수(C)인 경우, 신규 다운로드 파일정보 요청 노드 및 전송 대기 노드 중 R+W개 이하의 전송 대기 여부를 전송가능으로 설정하는 단계를 수행하도록 구성된 프로세서를 포함하는, 트랙커 서버.
  15. 제 14 항에 있어서,
    상기 프로세서는,
    신규 다운로드 파일정보 요청 노드수(R) + 전송대기 노드수(W) > 최대 동시 전송 가능 노드수(M) - 현재 전송 노드 수(C)이고, 최대 동시 전송 가능 노드수(M) = 현재 전송 노드 수(C) 인 경우, 신규 다운로드 파일정보 요청 노드 및 전송대기 노드의 전송 상태를 전송대기로 설정하는 단계를 더 수행하는, 트랙커 서버.
  16. 제 15 항에 있어서,
    상기 프로세서는,
    신규 다운로드 파일정보 요청 노드수(R) + 전송대기 노드수(W) > 최대 동시 전송 가능 노드수(M) - 현재 전송 노드 수(C)이고, 최대 동시 전송 가능 노드수(M) - 현재 전송 노드 수(C) > 0 인 경우, 전송 대기 노드 및 신규 다운로드 파일정보 요청 노드 중 선택적으로 M-C 개 이하의 노드의 전송 상태를 전송가능으로 설정하는 단계를 더 수행하는, 트랙커 서버.
KR1020120058414A 2012-05-31 2012-05-31 순차적 p2p 다운로드 시스템 및 방법 KR101420108B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020120058414A KR101420108B1 (ko) 2012-05-31 2012-05-31 순차적 p2p 다운로드 시스템 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020120058414A KR101420108B1 (ko) 2012-05-31 2012-05-31 순차적 p2p 다운로드 시스템 및 방법

Publications (2)

Publication Number Publication Date
KR20130134705A KR20130134705A (ko) 2013-12-10
KR101420108B1 true KR101420108B1 (ko) 2014-07-16

Family

ID=49982290

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120058414A KR101420108B1 (ko) 2012-05-31 2012-05-31 순차적 p2p 다운로드 시스템 및 방법

Country Status (1)

Country Link
KR (1) KR101420108B1 (ko)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040084421A (ko) * 2003-03-28 2004-10-06 주식회사 프리챌 P2p서비스 방법
KR100516917B1 (ko) * 2005-03-23 2005-09-26 펌킨넷코리아 (주) 네트워크 상에서 사용자 세션수 제어를 통한 서버 폭주제어시스템 및 그 방법
US7379967B2 (en) 2005-01-28 2008-05-27 Grid Solutions, Inc. Download method for file by bit torrent protocol

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040084421A (ko) * 2003-03-28 2004-10-06 주식회사 프리챌 P2p서비스 방법
US7379967B2 (en) 2005-01-28 2008-05-27 Grid Solutions, Inc. Download method for file by bit torrent protocol
KR100516917B1 (ko) * 2005-03-23 2005-09-26 펌킨넷코리아 (주) 네트워크 상에서 사용자 세션수 제어를 통한 서버 폭주제어시스템 및 그 방법

Also Published As

Publication number Publication date
KR20130134705A (ko) 2013-12-10

Similar Documents

Publication Publication Date Title
JP5640649B2 (ja) データ通信方法及び情報処理装置
JP4696089B2 (ja) 分散ストレージシステム
EP2181539B1 (en) Methods and apparatus for cooperative file distribution with target data delivery rate
US9124674B2 (en) Systems and methods for connection pooling for video streaming in content delivery networks
CN103493449B (zh) 分组交换网络中的有效电路
EP2901806B1 (en) Methods and systems for dynamic media content output for mobile devices
EP3242463B1 (en) Content distribution method and system for mobile terminal application
US20090172157A1 (en) Method and Device for Content Transmission on P2P Network
WO2018076765A1 (zh) 云计算系统的内容分发方法及装置、计算节点及系统
CN101406060A (zh) 应用对等(p2p)内容分发网络延时下载视频服务
US20150271226A1 (en) Transport accelerator implementing a multiple interface architecture
US8250171B2 (en) Content delivery apparatus, content delivery method, and content delivery program
CN111200622B (zh) 一种资源传输方法及装置、存储介质
US20130138780A1 (en) Data communications networks, systems, methods and apparatus
US20150032798A1 (en) Method And Apparatus For Providing Redundant Data Access
CN106059936B (zh) 云系统组播文件的方法及装置
US20150006622A1 (en) Web contents transmission method and apparatus
US8775456B2 (en) System and method for scheduled and collaborative distribution of software and data to many thousands of clients over a network using dynamic virtual proxies
WO2014185167A1 (ja) データ配信システム、データ配信のためのデータ通信装置およびプログラム
KR101420108B1 (ko) 순차적 p2p 다운로드 시스템 및 방법
JP2009009297A (ja) データ配信方法およびデータ配信システム
JP2007272540A (ja) データ配信方法及びデータ配信システム
KR100637703B1 (ko) 홈 네트워크 환경에서 데이터 분배를 위한 서버,클라이언트, 데이터 분배 시스템 및 그 방법
Zheng et al. Algorithms and stability analysis for content distribution over multiple multicast trees
KR20180089752A (ko) 공동 편집 문서를 공유하는 방법 및 장치

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20170629

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20180625

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20190701

Year of fee payment: 6