KR100518085B1 - 파일을 병렬로 다운로드받는 장치 및 방법 - Google Patents

파일을 병렬로 다운로드받는 장치 및 방법 Download PDF

Info

Publication number
KR100518085B1
KR100518085B1 KR10-2003-0020482A KR20030020482A KR100518085B1 KR 100518085 B1 KR100518085 B1 KR 100518085B1 KR 20030020482 A KR20030020482 A KR 20030020482A KR 100518085 B1 KR100518085 B1 KR 100518085B1
Authority
KR
South Korea
Prior art keywords
blocks
servers
file
client computer
predetermined
Prior art date
Application number
KR10-2003-0020482A
Other languages
English (en)
Other versions
KR20040085692A (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 KR10-2003-0020482A priority Critical patent/KR100518085B1/ko
Publication of KR20040085692A publication Critical patent/KR20040085692A/ko
Application granted granted Critical
Publication of KR100518085B1 publication Critical patent/KR100518085B1/ko

Links

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/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • 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/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]

Landscapes

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

Abstract

본 발명은 파일을 병렬로 다운로드받는 장치 및 방법에 관한 것으로서, 그 방법은 클라이언트 컴퓨터와 서로 다른 복수개의 통신망들을 통하여 연결된 복수개의 서버들을 구비하며, 상기 클라이언트 컴퓨터가 상기 복수개의 서버들로부터 파일을 병렬로 다운로드받는 방법에 있어서, (a) 상기 복수개의 서버들에게 소정 파일을 공통으로 저장하는 단계; (b) 상기 소정 파일의 URL을 제공받는 단계; (c) 상기 소정 파일을 일정한 크기의 블록들로 분할하고 상기 복수개의 서버들에게 상기 분할된 블록들 중 서로 다른 블록을 전송하도록 요청하는 단계; 및 (d) 상기 요청된 블록들을 수신하며, 상기 요청된 블록의 전송을 완료한 서버들에게 블록 전송을 완료한 순서대로 남아있는 블록들의 전송을 요청하는 단계를 포함함으로써 파일을 보다 빠르게 다운로드받을 수 있다.

Description

파일을 병렬로 다운로드받는 장치 및 방법{Device and method for parallel down-loading file}
본 발명은 파일을 다운로드받는 장치 및 방법에 관한 것으로서, 특히 파일을 보다 빠르게 다운로드받기 위하여 분산 서버들을 이용하여 파일을 병렬로 다운로드받는 장치 및 방법에 관한 것이다.
최근, 인터넷의 발달로 많은 정보를 손쉽게 얻을 수 있게 되었다. 인터넷을 통해 얻을 수 있는 정보들은 초기에는 텍스트로 이루어진 데이터가 대부분이었으나, 지금은 컴퓨터와 통신 기술의 발달로 동영상이나 음성과 같은 멀티미디어 데이터가 그 대부분을 차지하고 있다.
멀티미디어 데이터는 대개 텍스트 데이터에 비해 그 크기가 훨씬 크기 때문에 멀티미디어 데이터를 전송하는데 걸리는 시간은 텍스트 데이터를 전송하는데 걸리는 시간보다 훨씬 길다. 따라서, 멀티미디어 데이터를 전송하고 수신한 데이터를 재생하기 위한 새로운 방법이 개발되고 있다.
인터넷을 통해 정보를 전송하기 위해 가장 많이 사용되는 방법은 다운로드 방식이다. 이 방법은 텍스트 데이터를 전송하던 당시부터 널리 사용되어왔으며, 멀티미디어 데이터에 대해서도 적용할 수가 있다. 실제로 스트리밍을 지원하지 않는 파일 포맷, 즉 AVI나 DIVX와 같은 포맷의 데이터를 스트리밍 서버를 사용하지 않고 서비스하는 경우에는 다운로드 방식을 사용할 수밖에 없다. 그러나, 이런 경우에 사용자는 데이터 파일 전체가 수신된 다음에야 멀티미디어를 재생할 수 있으므로 사용자는 데이터의 수신이 완료될 때까지 오랜 시간동안 기다려야 한다.
도 1은 종래의 파일 다운로드 방법을 설명하기 위한 블록도이다. 도 1을 참조하면, 클라이언트 컴퓨터(121)가 파일을 다운로드받기 위해서는 인터넷을 통해 연결된 서버(111)에 다운로드를 요청하며, 이에 따라 서버(111)는 저장된 파일을 클라이언트 컴퓨터(121)로 전송한다.
이와 같이, 종래에는 하나의 서버(111)로부터 하나의 통신망을 통하여 파일을 다운로드받았다. 따라서, 상기 통신망이 끊어질 경우에는 더 이상 파일을 다운로드받지 못하고 통신망이 연결될 때까지 기다렸다가 파일을 다운로드받아야 하는 불편함이 있고, 또한, 통신망의 전송 속도가 낮을 경우에는 파일을 다운로드받는데 많은 시간이 소요되는 문제점이 있다.
본 발명이 이루고자하는 기술적 과제는 상기 종래 기술의 문제점을 해결하기 위하여 안출된 것으로서, 파일을 안전하고 보다 빠르게 다운로드받는 장치를 제공하는 것이다.
본 발명이 이루고자하는 다른 기술적 과제는 상기 장치를 이용하여 파일을 안전하고 보다 빠르게 다운로드받는 방법을 제공하는 것이다.
상기 기술적 과제를 이루기 위하여 본 발명은,
복수개의 통신망들; 상기 복수개의 통신망들에 하나씩 연결되며, 소정 파일을 공통으로 저장하는 복수개의 서버들; 상기 복수개의 통신망들에 연결되며, 상기 소정 파일을 다수개의 블록들로 분할하며, 상기 분할된 블록들 중 서로 다른 블록들을 상기 복수개의 서버들로부터 병렬로 다운로드받는 클라이언트 컴퓨터; 및 상기 클라이언트 컴퓨터에 연결되며, 상기 소정 파일의 URL들을 인지하고 있으며, 상기 클라이언트 컴퓨터의 요청에 따라 상기 URL들을 제공하는 리라이터 서버를 구비하는 것을 특징으로 하는 파일을 병렬로 다운로드받는 장치를 제공한다.
상기 다른 기술적 과제를 이루기 위하여 본 발명은,
클라이언트 컴퓨터와 서로 다른 복수개의 통신망들을 통하여 연결된 복수개의 서버들을 구비하며, 상기 클라이언트 컴퓨터가 상기 복수개의 서버들로부터 파일을 병렬로 다운로드받는 방법에 있어서, (a) 상기 복수개의 서버들에게 소정 파일을 공통으로 저장하는 단계; (b) 상기 소정 파일의 URL을 제공받는 단계; (c) 상기 소정 파일을 일정한 크기의 블록들로 분할하고, 상기 복수개의 서버들에게 상기 분할된 블록들 중 서로 다른 블록을 전송하도록 요청하는 단계; 및 (d) 상기 요청된 블록들을 수신하며, 상기 요청된 블록의 전송을 완료한 서버들에게 블록 전송을 완료한 순서대로 남아있는 블록들의 전송을 요청하는 단계를 포함하는 것을 특징으로 하는 파일을 병렬로 다운로드받는 방법을 제공한다.
상기 다른 기술적 과제를 이루기 위하여 본 발명은 또한,
클라이언트 컴퓨터와 서로 다른 복수개의 통신망들을 통하여 연결된 복수개의 서버들을 구비하며, 상기 클라이언트 컴퓨터가 상기 복수개의 서버들로부터 파일을 병렬로 다운로드받는 방법에 있어서, (a) 상기 복수개의 서버들에게 소정 파일을 공통으로 저장하는 단계; (b) 상기 소정 파일의 URL을 제공받는 단계; (c) 상기 소정 파일을 일정한 크기의 블록들로 분할하는 단계; (d) 상기 블록들을 각각 소정 개수의 서브 블록들로 분할하는 단계; (e) 상기 복수개의 서버들에게 서로 다른 블록들의 서브 블록들의 전송을 요청하는 단계; 및 (f) 상기 요청된 서브 블록들을 수신하며, 상기 요청된 블록의 서브 블록들의 전송을 모두 완료한 서버에게 남아있는 블록의 서브 블록들의 전송을 요청하는 단계를 포함하는 것을 특징으로 하는 파일을 병렬로 다운로드받는 방법을 제공한다.
본 발명과 본 발명의 동작상의 이점 및 본 발명의 실시에 의하여 달성되는 목적을 충분히 이해하기 위해서는 본 발명의 바람직한 실시예를 예시하는 첨부 도면 및 첨부 도면에 기재된 내용을 참조하여야만 한다.
이하, 첨부한 도면을 참조하여 본 발명의 바람직한 실시예를 설명함으로써, 본 발명을 상세히 설명한다. 각 도면에 제시된 동일한 참조부호는 동일한 부재를 나타낸다.
도 2는 본 발명에 따른 파일을 병렬로 다운로드받는 장치의 블록도이다. 도 2를 참조하면, 본 발명의 장치(201)는 클라이언트 컴퓨터(221), 복수개의 통신망들(241a∼241c)), 복수개의 서버들(211a∼211c) 및 리라이터 서버(Rewriter Server)(231)를 구비한다.
클라이언트 컴퓨터(221)는 PC(Personal Computer)와 같이 클라이언트가 사용하는 컴퓨터이다.
통신망들(241a∼241c)은 서로 다른 회사에서 운영하는 통신망들이며, 그 예로서, 하나로 네트워크, 신비로 네트워크, KT 네트워크, 데이콤 네트워크, 유선케이블 네트워크 등 모든 종류의 통신망을 포함한다.
복수개의 서버들(211a∼211n)은 각각 서로 다른 통신망을 통하여 클라이언트 컴퓨터(221)에 연결된다. 서버들(211a∼211n)로는 CDN(Contents Delivery Network) 서비스에서 운영하고 있는 서버들을 활용할 수 있다. 서버들(211a∼211n)에는 클라이언트 컴퓨터(221)에 다운로드할 파일이 공통으로 저장된다. 클라이언트 컴퓨터(221)는 서버들(211a∼211n)에 공통으로 저장된 파일을 다수개의 블록들로 분할하며, 서버들(211a∼211n)로부터 상기 분할된 블록들 중 서로 다른 블록들을 통신망들(241a∼241n)을 통하여 병렬로 다운로드받는다. 클라이언트 컴퓨터(221)는 예컨대, HTTP(Hyper Text Transfer Protocol)/1.1의 레인지 리퀘스트(Range Request) 기능을 이용하여 서버들에게 서로 다른 블록들의 전송을 요청할 수 있다.
예컨대, 클라이언트 컴퓨터(221)에 의해 서버들(211a∼211c)에 저장된 파일들이 모두 3개의 블록들(A,B,C)로 분할되면, 클라이언트 컴퓨터(221)는 서버(211a)로부터 A 블록 전송을 요청하고, 서버(211b)로부터 B 블록 전송을 요청하며, 서버(211c)로부터 C 블록 전송을 요청한다. 즉, 3개의 블록들(A,B,C)은 3개의 서버들(211a∼211c)로부터 클라이언트 컴퓨터(221)로 병렬로 다운로드된다. 따라서, 파일을 빠르게 다운로드받을 수 있으며, 통신망들(241a∼241n) 중 일부가 단절되더라도 클라이언트 컴퓨터(221)는 단절되지 않은 통신망을 통하여 파일을 안전하게 다운로드받을 수 있다. 클라이언트 컴퓨터(221)는 3개의 블록들(A,B,C)을 받아서 이들을 결합하여 상기 파일을 재생한다.
또한, 클라이언트 컴퓨터(221)는 3개의 블록들(A,B,C)을 각각 소정 개수, 예컨대 5개의 서브 블록들로 분할한 후 서버들(211a∼211n)에게 이들을 전송하도록 요청한다. 그러면, 서버들(211a∼211n)은 각각 5개의 서브 블록들을 클라이언트 컴퓨터(221)로 전송한다. 이 때, 서버들(211a∼211n)은 적정한 수의 포트들을 열어서 서브 블록들을 병렬로 클라이언트 컴퓨터(221)에 전달한다. 이와 같이, 블록 하나를 통째로 전달하는 것보다 블록을 다수개의 서브 블록들로 분할하여 전송함으로써 대역폭을 최대한 활용하게 되어 파일을 보다 빠른 속도로 다운로드받을 수 있다.
리라이터 서버(231)는 클라이언트 컴퓨터(221)에 연결되며, 서버들(211a∼211n)에 저장된 파일의 URL들을 인지하고 있다. 따라서, 클라이언트 컴퓨터(221)가 파일을 다운로드받기 위해 URL들을 요청하면 이를 제공한다. 리라이터 서버(231)에 저장된 URL들은 리라이터 서버(231)를 운영하는 운영자가 직접 리라이터 서버(231)에 입력할 수도 있고, 서버들(211a∼211n)에게 요청하여 서버들(211a∼211n)로부터 전달받을 수도 있다.
도 3은 본 발명의 제1 실시예에 따른 파일 병렬 다운로드받는 방법의 흐름도이다. 도 2를 참조하여 도 3에 도시된 파일을 병렬로 다운로드받는 방법을 설명하기로 한다. 파일을 병렬로 다운로드받는 방법은 제1 내지 제6 단계를 포함한다.
제1 단계(311)는 복수개의 서버들(211a∼211n)에게 소정 파일을 공통으로 저장하는 단계이다.
제2 단계(321)는 리라이터 서버(231)가 상기 소정 파일의 URL들을 서버들(211a∼211n)로부터 전송받아서 저장하거나 아니면 사용자가 직접 상기 소정 파일의 URL들을 리라이터 서버(231)에 오프라인 상으로 저장하는 단계이다.
제3 단계(331)는 클라이언트 컴퓨터(221)가 리라이터 서버(231)에게 상기 소정 파일의 URL들을 요청하고 이를 수신하는 단계이다. 예컨대, 클라이언트 컴퓨터(221)가 리라이터 서버(231)에게 "http://test.wdb.co.kr/test.exe" 라는 메시지를 전송하면, 리라이터 서버(231)는 "http://211.44.63.150/test.exe", "http://211.44.63.151/test.exe" 및 "http://211.44.63.152/test.exe"라는 메시지를 클라이언트 컴퓨터(221)로 전송한다. 이 때, 서버는 모두 3개인 경우이다.
제4 단계(341)는 클라이언트 컴퓨터(221)가 상기 소정 파일을 일정한 크기의 블록들로 분할하는 단계이다.
제5 단계(351)는 클라이언트 컴퓨터(221)가 서버들(211a∼211n)에게 상기 분할된 블록들 중 각각 다른 블록을 하나씩 전송하도록 요청하는 단계이다.
제6 단계로서 클라이언트 컴퓨터(221)가 상기 요청된 블록들을 수신하여 자신의 메모리 또는 타겟 파일에 저장하며(361), 모든 블록들의 전송이 완료되었는지를 확인하고(371), 모든 블록들의 전송이 완료되지 않은 경우에는 상기 요청된 블록의 전송을 완료한 서버(들)에게 블록 전송을 완료한 순서대로 남아있는 블록(들)의 전송을 요청한다(375).
만일, 블록 전송 도중 연결이 끊어진 서버가 있으면 클라이언트 컴퓨터(221)는 연결이 끊어진 서버에는 소정 시간동안 블록 전송을 요청하지 않다가 상기 소정 시간이 경과된 후에 블록 전송을 재요청한다.
도 4a는 4개의 블록으로 분할된 파일의 크기를 보여주고, 도 4b는 클라이언트 컴퓨터(221)가 2개의 서버들(211a,211b)로부터 4개의 블록들(1,2,3,4)로 분할된 파일을 다운로드받는 방법을 보여준다.
먼저, 클라이언트 컴퓨터(221)는 제1 서버(211a)에 1번 블록을, 제2 서버(211b)에는 2번 블록 전송을 요청한다. 그러다가 1번 블록이 수신되면, 클라이언트 컴퓨터(221)는 3번 블록 전송을 제1 서버(211a)에 요청한다. 이어서, 2번 블록이 제2 서버(211b)로부터 수신되면, 클라이언트 컴퓨터(221)는 4번 블록의 전송을 제2 서버(211b)에 요청한다. 이후, 4번 블록이 수신되지 않은 상태에서 3번 블록이 수신되면, 클라이언트 컴퓨터(221)는 4번 블록의 전송을 제1 서버(211a)에 요청한다. 그리고 나서, 제1 서버(211a)로부터 전송된 4번 블록이 수신되면 클라이언트 컴퓨터(221)는 제2 서버(211b)와의 연결을 끊어버리고, 수신된 블록들을 결합하여 상기 소정 파일을 재생한다.
도 5는 본 발명의 제2 실시예에 따른 파일을 병렬로 다운로드받는 방법의 흐름도이다. 도 2를 참조하여 도 5에 도시된 파일 병렬 다운로드받는 방법을 설명하기로 한다. 도 5를 참조하면, 파일을 병렬로 다운로드받는 방법은 제1 내지 제8 단계를 포함한다.
제1 단계(511)는 복수개의 서버들(211a∼211n)에게 소정 파일을 공통으로 저장하는 단계이다.
제2 단계(521)는 리라이터 서버(231)가 상기 소정 파일의 URL들을 서버들(211a∼211n)로부터 전송받아서 저장하거나 아니면 사용자가 직접 상기 소정 파일의 URL들을 리라이터 서버(231)에 오프라인 상으로 저장하는 단계이다.
제3 단계(531)는 클라이언트 컴퓨터(221)가 리라이터 서버(231)에게 상기 소정 파일의 URL들을 요청하고 이를 수신하는 단계이다.
제4 단계(541)는 클라이언트 컴퓨터(221)가 상기 소정 파일을 일정한 크기의 블록들로 분할하는 단계이다.
제5 단계(551)는 클라이언트 컴퓨터(221)가 상기 분할된 블록들을 다시 소정 개수의 서브 블록들로 분할하는 단계이다. 서브 블록의 수는 상황에 따라 적절하게 조정한다. 왜냐하면, 서브 블록의 수가 너무 많으면 서버들(211a∼211n)이 과부하에 걸릴 수가 있으며, 오버헤드의 크기가 지나치게 커져서 전송효율을 저하시킬 수가 있기 때문이다. 이 때, 서버들(211a∼211n)은 다수개의 포트들을 열어서 서브 블록들을 클라이언트 컴퓨터(221)로 병렬로 전송한다. 이렇게 함으로써, 대역폭을 최대한 활용하게 되어 파일을 빠르게 다운로드받을 수 있다.
제6 단계(561)는 클라이언트 컴퓨터(221)가 서버들(211a∼211n)에게 상기 분할된 블록들 중 각각 다른 블록을 하나씩 전송하도록 요청하는 단계이다.
제7 단계로서 클라이언트 컴퓨터(221)가 상기 요청된 블록들을 수신하여 자신의 메모리 또는 타겟 파일에 저장하며(571), 모든 블록들의 전송이 완료되었는지를 확인하고(581), 모든 블록들의 전송이 완료되지 않은 경우에는 상기 요청된 블록의 전송을 완료한 서버들에게 블록 전송을 완료한 순서대로 남아있는 블록들의 전송을 요청한다(585).
제6 및 제7 단계(561∼585)는 도 3에 도시된 제5 및 제6 단계(351∼375)와 동일한 방법으로 진행된다.
도 6은 도 5에 도시된 서브 블록들을 전송할 때 서버의 포트 수를 조정하여 블록 전송 효율을 높이는 방법을 설명하기 위한 도면이다. 도 6을 참조하면, 처음에는 서버의 포트를 2개만 열어서 제1 타임 구간(T1)동안 서브 블록들을 전송하다가 제2 타임 구간(T2)동안 3번 포트를 더 열어서 서브 블록들을 전송한다. 이 때 전송량이 증가하면 제3 타임 구간(T3)동안 4번 포트를 더 열어서 서브 블록들을 전송한다. 그런데, 제3 타임 구간(T3)에서는 전송량이 제2 타임 구간에 비해 감소되었다. 그러면, 제4 타임 구간(T4) 동안에는 4번 포트를 닫는다.
상기 과정을 반복하면서 클라이언트 컴퓨터(221)는 동일한 시간에 블록 전송량이 가장 많은 방법을 찾아서 파일을 다운로드받는다.
이와 같이, 서버들(211a∼211n)은 서브 블록들을 클라이언트 컴퓨터(221)로 병렬로 전송함으로써 대역폭을 최대한 활용하게 되어 파일을 다운로드받는 속도가 빨라질 수가 있다.
도면과 명세서에서 최적 실시예들이 개시되었다. 여기서 특정한 용어들이 사용되었으나, 이는 단지 본 발명을 설명하기 위한 목적에서 사용된 것이지 의미한정이나 특허청구범위에 기재된 본 발명의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.
상술한 바와 본 발명에 따르면, 분산 서버들(211a∼211n)에 동일한 파일이 저장되고, 상기 파일은 클라이언트 컴퓨터(221)에 의하여 복수개의 블록들로 분할되며 상기 분할된 블록들은 각각 복수개의 서브 블록들로 분할된 후 클라이언트 컴퓨터(221)의 요청에 따라 분산 서버들(211a∼211n)로부터 클라이언트 컴퓨터(221)로 병렬로 전송됨으로써 대역폭을 최대한 활용하여, 파일을 안전하고 보다 빠르게 다운로드받을 수 있다.
본 발명의 상세한 설명에서 인용되는 도면을 보다 충분히 이해하기 위하여 각 도면의 간단한 설명이 제공된다.
도 1은 종래의 파일 다운로드 방법을 설명하기 위한 블록도이다.
도 2는 본 발명에 따른 파일을 병렬로 다운로드받는 장치의 블록도이다.
도 3은 본 발명의 제1 실시예에 따른 파일 병렬 다운로드받는 방법의 흐름도이다.
도 4a는 4개의 블록으로 분할된 파일의 크기를 보여주고, 도 4b는 도 2에 도시된 클라이언트 컴퓨터가 도 2에 도시된 2개의 서버들로부터 도 4a에 도시된 파일을 다운로드받는 방법을 보여준다.
도 5는 본 발명의 제2 실시예에 따른 파일 병렬 다운로드받는 방법의 흐름도이다.
도 6은 도 5에 도시된 서브 블록들을 전송할 때 서버의 포트 수를 조정하여 블록 전송 효율을 높이는 방법을 설명하기 위한 도면이다.

Claims (9)

  1. 복수개의 통신망들;
    상기 복수개의 통신망들에 하나씩 연결되며, 소정 파일을 공통으로 저장하는 복수개의 서버들;
    상기 복수개의 통신망들에 연결되며, 상기 소정 파일을 다수개의 블록들로 분할하며, 상기 분할된 블록들 중 서로 다른 블록들을 상기 복수개의 서버들로부터 병렬로 다운로드받는 클라이언트 컴퓨터; 및
    상기 클라이언트 컴퓨터에 연결되며, 상기 소정 파일의 URL들을 인지하고 있으며, 상기 클라이언트 컴퓨터의 요청에 따라 상기 URL들을 제공하는 리라이터 서버를 구비하는 것을 특징으로 하는 파일을 병렬로 다운로드받는 장치.
  2. 제1항에 있어서, 상기 복수개의 통신망들은 서로 다른 회사에서 운영하는 통신망들인 것을 특징으로 하는 파일을 병렬로 다운로드받는 장치.
  3. 클라이언트 컴퓨터와 서로 다른 복수개의 통신망들을 통하여 연결된 복수개의 서버들을 구비하며, 상기 클라이언트 컴퓨터가 상기 복수개의 서버들로부터 파일을 병렬로 다운로드받는 방법에 있어서,
    (a) 상기 복수개의 서버들에게 소정 파일을 공통으로 저장하는 단계;
    (b) 상기 소정 파일의 URL을 제공받는 단계;
    (c) 상기 소정 파일을 일정한 크기의 블록들로 분할하고, 상기 복수개의 서버들에게 상기 분할된 블록들 중 서로 다른 블록을 전송하도록 요청하는 단계; 및
    (d) 상기 요청된 블록들을 수신하며, 상기 요청된 블록의 전송을 완료한 서버들에게 블록 전송을 완료한 순서대로 남아있는 블록들의 전송을 요청하는 단계를 포함하는 것을 특징으로 하는 파일을 병렬로 다운로드받는 방법.
  4. 제3항에 있어서, 상기 (b) 단계는
    (b-1) 상기 소정 파일의 URL들이 리라이터 서버에게 통지되는 단계;
    (b-2) 상기 리라이터 서버에게 상기 소정 파일의 URL을 요청하는 단계; 및
    (b-3) 상기 리라이터 서버로부터 상기 소정 파일의 URL들을 수신하는 단계를 포함하는 것을 특징으로 하는 파일을 병렬로 다운로드받는 방법.
  5. 제3항에 있어서, 상기 복수개의 통신망들은 서로 다른 회사에서 운영하는 통신망들인 것을 특징으로 하는 파일을 병렬로 다운로드받는 방법.
  6. 제3항에 있어서, 상기 (d) 단계에서 연결이 끊어진 서버에는 소정 시간동안 블록 전송 요청을 하지 않다가 상기 소정 시간이 경과된 후에 블록 전송을 재요청하는 것을 특징으로 하는 파일을 병렬로 다운로드받는 방법.
  7. 제3항에 있어서, 상기 (d) 단계에서 마지막 블록들에 대해서는 다른 서버들에 중복해서 전송을 요청하는 것을 특징으로 하는 파일을 병렬로 다운로드받는 방법.
  8. 제3항에 있어서, 상기 클라이언트 컴퓨터는 수신된 블록들을 자신의 메모리 또는 타겟파일에 저장하고, 상기 저장된 블록들을 결합하여 상기 소정 파일을 재생하는 것을 특징으로 하는 파일을 병렬로 다운로드받는 방법.
  9. 클라이언트 컴퓨터와 서로 다른 복수개의 통신망들을 통하여 연결된 복수개의 서버들을 구비하며, 상기 클라이언트 컴퓨터가 상기 복수개의 서버들로부터 파일을 병렬로 다운로드받는 방법에 있어서,
    (a) 상기 복수개의 서버들에게 소정 파일을 공통으로 저장하는 단계;
    (b) 상기 소정 파일의 URL을 제공받는 단계;
    (c) 상기 소정 파일을 일정한 크기의 블록들로 분할하는 단계;
    (d) 상기 블록들을 각각 소정 개수의 서브 블록들로 분할하는 단계;
    (e) 상기 복수개의 서버들에게 서로 다른 블록들의 서브 블록들의 전송을 요청하는 단계; 및
    (f) 상기 요청된 서브 블록들을 수신하며, 상기 요청된 블록의 서브 블록들의 전송을 모두 완료한 서버에게 남아있는 블록의 서브 블록들의 전송을 요청하는 단계를 포함하는 것을 특징으로 하는 파일을 병렬로 다운로드받는 방법.
KR10-2003-0020482A 2003-04-01 2003-04-01 파일을 병렬로 다운로드받는 장치 및 방법 KR100518085B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR10-2003-0020482A KR100518085B1 (ko) 2003-04-01 2003-04-01 파일을 병렬로 다운로드받는 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2003-0020482A KR100518085B1 (ko) 2003-04-01 2003-04-01 파일을 병렬로 다운로드받는 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20040085692A KR20040085692A (ko) 2004-10-08
KR100518085B1 true KR100518085B1 (ko) 2005-09-29

Family

ID=37368638

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2003-0020482A KR100518085B1 (ko) 2003-04-01 2003-04-01 파일을 병렬로 다운로드받는 장치 및 방법

Country Status (1)

Country Link
KR (1) KR100518085B1 (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100715496B1 (ko) * 2005-07-29 2007-05-04 (주)컴패스 미디어 파일 분할 전송 방법 및 그 장치
CN100411341C (zh) 2005-08-10 2008-08-13 华为技术有限公司 一种并行下载方法和终端
KR100724260B1 (ko) * 2005-12-15 2007-05-31 에스케이 텔레콤주식회사 휴대폰에서의 콘텐츠 분할 다운로드 방법
KR100929031B1 (ko) 2007-09-17 2009-11-26 (주)씨디네트웍스 파일 병렬 다운로드에서의 블록 선택 방법, 이를 이용한파일 병렬 다운로드 방법 및 이를 구현하기 위한프로그램을 기록한 기록매체
KR101006539B1 (ko) * 2009-02-06 2011-01-07 (주)씨디네트웍스 파일 병렬 다운로드에서의 최대 빈도 블록 우선 선택 방법,이를 이용한 파일 병렬 다운로드 방법 및 이를 구현하기 위한 프로그램을 기록한 기록매체

Also Published As

Publication number Publication date
KR20040085692A (ko) 2004-10-08

Similar Documents

Publication Publication Date Title
US9124674B2 (en) Systems and methods for connection pooling for video streaming in content delivery networks
CN1897588B (zh) 一种混合模式的网络文件传输方法及系统
US7814483B2 (en) Cache server at hotspots for downloading services
US20040249965A1 (en) Node caching system for streaming media applications
US20020116533A1 (en) System for providing a multimedia peer-to-peer computing platform
US20130219441A1 (en) Method, server and terminal for audio and video on demand
EP1625706A2 (en) System for doing service location management taking into account the node and network characteristics
JP2006155602A (ja) トランスコーダーを備える分散型マルチメディア伝送ネットワークのトランスコーディング装置及びトランスコーディング方法
CN102055718B (zh) 一种在http streaming系统中实现分层请求内容的方法,装置和系统
CN102067094A (zh) 高速缓存优化
CN102271165B (zh) 互联网搜索资源的分享管理装置及方法
US20050060370A1 (en) Version based content distribution and synchronization system and method
KR980004094A (ko) 분산 전산망의 문서의 프락상 및 트랜스코딩 제공방법 및 장치
US20070180079A1 (en) Method and system for peer-to-peer stream
JP2010020782A (ja) 情報転送方法
WO2014015789A1 (zh) 数字电视终端、视频文件播放方法及视频文件播放系统
CN104410660A (zh) 多媒体资源的下载方法、装置、路由器及服务器
US20180041611A1 (en) Content-based redirection
CN101002202A (zh) 用于传输内容的系统和方法
CN101997822A (zh) 一种流媒体内容分发方法、系统和设备
US11128733B2 (en) Server-side resource prioritization
WO2017202373A1 (zh) 流媒体快速启动方法、装置和系统
CN103905516B (zh) 分享数据的方法及相应服务器和终端
KR100518085B1 (ko) 파일을 병렬로 다운로드받는 장치 및 방법
JP4245986B2 (ja) ネットワークシステム、該ネットワークシステムにおける端末切替時のデータ・ダウンロード継続方法及びそのプログラム

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

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee