WO2010090459A2 - 파일 병렬 다운로드에서의 최대 빈도 블록 우선 선택 방법, 이를 이용한 파일 병렬 다운로드 방법 및 이를 구현하기 위한 프로그램을 기록한 기록매체 - Google Patents

파일 병렬 다운로드에서의 최대 빈도 블록 우선 선택 방법, 이를 이용한 파일 병렬 다운로드 방법 및 이를 구현하기 위한 프로그램을 기록한 기록매체 Download PDF

Info

Publication number
WO2010090459A2
WO2010090459A2 PCT/KR2010/000689 KR2010000689W WO2010090459A2 WO 2010090459 A2 WO2010090459 A2 WO 2010090459A2 KR 2010000689 W KR2010000689 W KR 2010000689W WO 2010090459 A2 WO2010090459 A2 WO 2010090459A2
Authority
WO
WIPO (PCT)
Prior art keywords
file
blocks
block
node
parallel download
Prior art date
Application number
PCT/KR2010/000689
Other languages
English (en)
French (fr)
Other versions
WO2010090459A3 (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 주식회사 씨디네트웍스
Publication of WO2010090459A2 publication Critical patent/WO2010090459A2/ko
Publication of WO2010090459A3 publication Critical patent/WO2010090459A3/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
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • 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
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/14Multichannel or multilink protocols

Definitions

  • the present invention relates to a block selection method for file parallel download, a file parallel download method using the same, and a recording medium recording a program for implementing the same. More specifically, the file to be downloaded is divided into a plurality of blocks, In the file parallel download method that is downloaded from different servers or computers of different users, the maximum frequency block priority selection method in file parallel download, which enables faster file download, the file parallel download method using the same, and the implementation thereof
  • the present invention relates to a recording medium having recorded thereon a program.
  • File parallel download divides a file into multiple blocks and divides the download of blocks when the file to be downloaded by the client exists in servers or other clients that are nodes connected through a network. By simultaneously requesting the server or clients, the file download time is reduced.
  • the file parallel download method is widely used in peer-to-peer and grid computing because file download time can be reduced with the development of a communication network.
  • methods such as sequential selection, random selection, and least frequency first selection are used.
  • the sequential selection method is to select blocks constituting the file in order from the front and request the node having the block to download the blocks.
  • the sequential selection method assuming that a plurality of nodes download the same file, the number of later blocks of the file is less than the number of copies of the previous blocks until all nodes have completed downloading.
  • the random selection method is a method of arbitrarily selecting one of the blocks constituting the file and requesting a download from a node having the block.
  • the random selection method has a problem that it is not possible to guarantee that the number of copies of each block remains the same for the file being downloaded.
  • Rarest First Selection is a method of requesting a download from the block having the smallest number of replicas by calculating the number of blocks of nodes connected through a communication network for the file being downloaded.
  • the minimum frequency first selection method has the advantage of ensuring that the number of blocks being downloaded remains the same, but because the operating ratios of the nodes owning the blocks are different, the probability of accessing nodes with each block constituting the file is determined. There is a problem that does not keep the same.
  • the present invention can be a file that can increase the data sharing rate because each node can own all the blocks constituting the file regardless of the location of the file and the block constituting the file
  • a method of selecting a maximum frequency block first in parallel download, a file parallel download method using the same, and a recording medium recording a program for implementing the same are proposed.
  • an ad-hoc network such as a P2P network including a server having a file in a P2P or grid computing technology
  • a method of selecting a maximum frequency block in a file parallel download that can further increase the data sharing rate, and a file using the same are proposed.
  • a block selection method in file parallel download is provided.
  • any node in a file parallel download system consisting of a plurality of nodes (node) in a method for selecting a block constituting the file to download a file, any node comprises the file (A) calculating the number of blocks owned by nodes other than the node among the blocks; And (b) selecting a block having the largest number of blocks owned by other nodes except for the arbitrary node.
  • the file parallel download system may further include a server having all of the blocks constituting the file, and blocks other than the block selected in the step (b) may be selected to be received from the server.
  • the block selected to be received from the server may be a block sequentially selected from the front of the blocks constituting the file.
  • the block selected to be received from the server may be a block arbitrarily selected among blocks constituting the file.
  • the block selected to be received from the server may be a block having the smallest number of blocks owned by other nodes except for the arbitrary node.
  • a file parallel download method is provided.
  • a node downloads a file in a file parallel download system including a plurality of nodes, except for the node among the blocks constituting the file Calculating a number of blocks owned by other nodes (a); (B) selecting a block having the largest number of blocks owned by other nodes except the node; And downloading (c) the selected block from the node having the selected block.
  • the file parallel download system may further include a server having all the blocks constituting the file, and other blocks except for the block selected in the step (b) may be downloaded from the server.
  • the block selected to be received from the server may be a block sequentially selected from the front of the blocks constituting the file.
  • the block selected to be received from the server may be a block arbitrarily selected among blocks constituting the file.
  • the block selected to be received from the server may be a block having the smallest number of blocks owned by other nodes except for the arbitrary node.
  • a recording medium recording a program for implementing the block selection method in file parallel download.
  • a program for implementing a method for selecting a block constituting the file for a node to download the file is recorded.
  • the file parallel download system may further include a server having all of the blocks constituting the file, and blocks other than the block selected in the step (b) may be selected to be received from the server.
  • the block selected to be received from the server may be a block sequentially selected from the front of the blocks constituting the file.
  • the block selected to be received from the server may be a block arbitrarily selected among blocks constituting the file.
  • the block selected to be received from the server may be a block having the smallest number of blocks owned by other nodes except for the arbitrary node.
  • a recording medium recording a program for implementing the file parallel download method.
  • a file parallel download system consisting of a plurality of nodes (node) in a recording medium recording a program for implementing a method for downloading a file by any node, comprising the file (A) counting the number of blocks owned by nodes other than the node among the blocks; (B) selecting a block having the largest number of blocks owned by other nodes except the node; And (c) downloading the selected block from the node having the selected block.
  • a recording medium having recorded thereon a program for implementing a file parallel download method is provided.
  • the file parallel download system may further include a server having all the blocks constituting the file, and other blocks except for the block selected in the step (b) may be downloaded from the server.
  • the block selected to be received from the server may be a block sequentially selected from the front of the blocks constituting the file.
  • the block selected to be received from the server may be a block arbitrarily selected among blocks constituting the file.
  • the block selected to be received from the server may be a block having the smallest number of blocks owned by other nodes except for the arbitrary node.
  • each node can own all the blocks that make up a file, which increases the data sharing rate.
  • FIG 1 illustrates an example file parallel download system in which file parallel download can be performed in accordance with one preferred embodiment of the present invention.
  • FIG. 2 illustrates another example of a file parallel download system in which file parallel download may be performed according to an exemplary embodiment of the present invention.
  • FIG. 3 is an exemplary diagram for illustrating a block selection method according to an exemplary embodiment of the present invention implemented in the file parallel download system illustrated in FIG. 1.
  • FIG. 4 is an exemplary diagram for illustrating a block selection method according to an embodiment of the present invention implemented in the file parallel download system illustrated in FIG. 2.
  • FIG. 5 is a flow chart showing the order in which the file parallel download method according to an embodiment of the present invention is implemented.
  • first and second may be used to describe various components, but the components should not be limited by the terms. The terms are used only for the purpose of distinguishing one component from another.
  • the first component may be referred to as the second component, and similarly, the second component may also be referred to as the first component.
  • FIGS. 1 and 2 First, a file parallel download system in which file parallel download according to an exemplary embodiment of the present invention may be performed will be described with reference to FIGS. 1 and 2.
  • FIG. 1 and 2 illustrate a file parallel download system in which file parallel download can be performed according to an exemplary embodiment of the present invention.
  • FIG. 1 illustrates a case where the file parallel download system is configured only with each of the nodes 100a, 100b, 1000c, 100d, ... 100n. However, as shown in FIG. 2, a complete file consisting of a plurality of blocks is preferable. It is an example of a case including a server having a (called P2P server 200 in Figure 2).
  • the file parallel download system When the file parallel download system is configured as shown in FIG. 1, the file parallel download system may be configured without an administrator or an operator of a separate file parallel download system. However, when a failure of the communication network 110 occurs It can be difficult to respond.
  • CDN content delivery network
  • the file parallel download system in which file parallel download according to an exemplary embodiment of the present invention of FIGS. 1 and 2 may be performed is only an example, and the present invention may be applied to a file parallel download system having a different configuration.
  • the file parallel download system is a node 1 (100a), node 2 (100b), node 3 (100c), node 4 (100d). It may include a plurality of nodes 100, such as node n (100n).
  • the node 100 is a computer connected to the communication network 110, and has a communication function, so long as the node 100 is connected to the communication network 110 and connected to another node 100.
  • the node 100 is, for example, a server that is a computing device for providing services to other terminals as well as wireless terminals such as user personal computers (PCs), cellular phones, and personal digital assistants (PDAs). Etc. are possible.
  • PCs personal computers
  • PDAs personal digital assistants
  • Each node 100 is connected via a communication network 110
  • the communication network 110 includes not only the Internet and the mobile communication network, but also the Internet is a TCP / IP protocol and a number of services present in the upper layer, that is, HTTP Worldwide offering Hyper Text Transfer Protocol, Telnet, File Transfer Protocol (FTP), Domain Name System (DNS), Simple Mail Transfer Protocol (SMTP), Simple Network Management Protocol (SNMP), Network File Service (NFS), and more. It includes all open network architectures.
  • the mobile communication network also includes an access gateway that enables transmission and reception of wireless packet data in addition to a base station (BS), a mobile telephone switching office (MTSO), and a home location register (HLR). It further includes components such as a gateway, a packet data serving node (PDSN), and the like.
  • BS base station
  • MTSO mobile telephone switching office
  • HLR home location register
  • PDSN packet data serving node
  • the P2P server 200 illustrated in FIG. 2 is a device having a complete copy of a file composed of a plurality of blocks as described above, and is connected to the nodes 100 through the communication network 110 to the nodes 100.
  • the file more preferably the blocks constituting the file, can be sent to the nodes 100.
  • the P2P server 200 when the P2P server 200 does not have a failure in the communication network 110, the P2P server 200 does not operate by downloading a file only through communication between the nodes 100, but when a failure occurs in the communication network 110. It is also possible to set to operate only to transfer the file to the node (100).
  • the operation of the P2P server 200 can be set in various ways, and there is no limitation as long as it owns a file and can transmit a block constituting the file to the nodes 100.
  • the P2P server 200 not only transmits the blocks to the nodes 100, but also collects the information of the blocks of the respective nodes 100 and provides them to the respective nodes 100.
  • 100 may be provided to provide a file more quickly and accurately, but is not limited thereto.
  • a processing unit is first set to a block constituting a file rather than a file for a file being downloaded in parallel.
  • Each node 100 calculates the number of blocks each of the other nodes 100 connected through the communication network 110 with respect to the file being downloaded, and requests the download from the block having the largest number of copies.
  • the file is composed of four blocks a, b, c, and d
  • node 1 (100a) has a, b, and c blocks
  • node 2 (100b) is b.
  • node 3 (100c) has a, c, d blocks
  • node 4 (100d) has a, d blocks.
  • Node 2 selects a block, which is the block that most other nodes (100a, 100c, 100d) among the blocks constituting the file currently have a, d blocks.
  • the d block which is the block that most nodes 100a, 100c, and 100d have most, is selected.
  • the other nodes 100a, 100c, and 100d have the highest frequency selection method.
  • the block b is downloaded from the node 1 (100a) or the node 2 (100b) having the b block which does not currently have among the blocks constituting the file of the node 3 (100c).
  • a block c is selected, which is the block most owned by the other nodes 100a, 100b, and 100c among the blocks b and c not currently present.
  • the c block is downloaded from one of the node 1 (100a), the node 2 (100b) and the node 3 (100c) having a c block.
  • selecting a node to download the block selected by each node for example, in the above example, if node 1 (100a) downloads the d block from node 3 (100c) or node 4 (100d) node 3 Selecting one of the nodes (100c) or node 4 (100d) is the network 110 state between node 3 (100c) and node 1 (100a) of node 4 (100d), node 3 (100c) and node 4 It may be selected in consideration of various factors such as the operation state of (100d), there is no limitation in the selection method.
  • This maximum frequency first selection method has each node 100 as soon as possible even for one block.
  • the probability that each node 100 may have all the blocks may be increased.
  • such a maximum frequency priority selection may increase the probability that each node 100 may have all blocks, thereby increasing the data sharing rate of the nodes 100 constituting the communication network 110.
  • FIG. 4 illustrates a block selection method in a file parallel download according to an exemplary embodiment of the present invention in a file parallel download system including a P2P server 200.
  • the file is composed of four blocks, a, b, c, and d, as shown in FIG. 3, and node 1 (100a) has a, b, and c blocks, and node 2 (100b) has a block of b, c. It is assumed that the node 3 (100c) has a, c, d blocks, the node 4 (100d) has a, d blocks, the P2P server 200 is a, b, c, d Assume that we have a file consisting of four blocks.
  • node 1 is a node 3 (100c) or a node having a d block that does not currently have among the blocks constituting the file as shown in FIG. D blocks are downloaded from 4 (100d).
  • the node 2 (100b) selects a block, which is the block that most other nodes 100a, 100c, and 100d have among the blocks a and d which do not currently have among the blocks constituting the file as shown in FIG.
  • the unselected d blocks may be downloaded from the P2P server 200.
  • At least one of the blocks that are not selected by the node 2 100b may be downloaded from the P2P server 200.
  • the method for downloading at least one of the unselected blocks from the P2P server 200 may select a block by using at least one of the above-described sequential selection, random selection, and minimum frequency priority selection method, and download the selected block. It is possible to receive, but is not limited thereto.
  • Node 3 (100c) downloads the b block from node 1 (100a) or node 2 (100b) having a b block that does not currently have among the blocks constituting the file as shown in FIG.
  • a block c is selected, which is the block most owned by the other nodes 100a, 100b, and 100c among the blocks b and c not currently present.
  • the c block is downloaded from one node among the node 1 (100a), the node 2 (100b), and the node 3 (100c) having the c block.
  • the unselected b block may be downloaded from the P2P server 200.
  • the P2P server 200 downloads the selected blocks by selecting the blocks by at least one of conventional sequential selection, random selection, and minimum frequency priority selection methods. It is also possible as described above.
  • the content delivery network is configured to store content provided by a content provider in a plurality of servers in a communication network and deliver the content to the user when requested by the user.
  • the content delivery network can improve the transmission speed and prevent the loss of data by moving the content closer to the user in advance.
  • the file parallel download method according to an exemplary embodiment of the present invention is applied in a content transmission network, the data sharing rate is increased, thereby enabling more efficient content transmission.
  • FIG. 5 illustrates the order in which the file parallel download method according to an exemplary embodiment of the present invention is implemented when the P2P server 200 is included in the file parallel download system as shown in FIG. 2.
  • the file parallel download method according to the preferred embodiment of the present invention may be implemented in the file parallel download system as shown in FIG. 1.
  • the node that has the largest number of blocks among the unreceived unreceived blocks, that is, the maximum number of blocks, is downloaded from another node (S502).
  • the least owned blocks that is, blocks having the minimum number, are downloaded from the P2P server 200 (S504).
  • the P2P server 200 downloads a block having the minimum number in step 504, but the method of selecting at least one of the unselected blocks to download from the P2P server 200 has no limitation.
  • the selection of blocks to be downloaded from the P2P server 200 may download the selected blocks by selecting the blocks by at least one of sequential selection, random selection, and minimum frequency priority selection.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Computer And Data Communications (AREA)

Abstract

파일 병렬 다운로드에서의 최대 빈도 블록 우선 선택 방법, 이를 이용한 파일 병렬 다운로드 방법 및 이를 구현하기 위한 프로그램을 기록한 기록매체가 개시된다. 본 발명의 바람직한 일 실시예에 따르면, 파일을 구성하는 블록들 중 임의의 노드를 제외한 다른 노드들이 가진 블록의 개수를 계산하고, 임의의 노드를 제외한 다른 노드들이 가진 블록의 개수가 가장 많은 블록을 선택한다. 본 발명에 따르면, 파일의 다운로드가 보다 정확하고 신속하게 이루어질 수 있고, P2P나 그리드 컴퓨팅 기술에서 파일을 가지는 서버를 포함하여 P2P 네트워크와 같은 ad-hoc 네트워크를 구성하는 경우 데이터 공유률을 높일 수 있는 장점이 있다.

Description

파일 병렬 다운로드에서의 최대 빈도 블록 우선 선택 방법, 이를 이용한 파일 병렬 다운로드 방법 및 이를 구현하기 위한 프로그램을 기록한 기록매체
본 발명은 파일 병렬 다운로드에서의 블록 선택 방법, 이를 이용한 파일 병렬 다운로드 방법 및 이를 구현하기 위한 프로그램을 기록한 기록매체에 관한 것으로서, 보다 상세하게는 다운로드 할 파일을 다수의 블록으로 분할하고 여러 개의 블록들을 서로 다른 서버나 다른 사용자의 컴퓨터 등으로부터 다운로드 받는 파일 병렬 다운로드 방법에서 파일의 다운로드가 보다 신속하게 이루어질 수 있도록 하는 파일 병렬 다운로드에서의 최대 빈도 블록 우선 선택 방법, 이를 이용한 파일 병렬 다운로드 방법 및 이를 구현하기 위한 프로그램을 기록한 기록매체에 관한 것이다.
현재 인터넷뿐만 아니라 이동 통신망 등의 다양한 통신망을 통한 다양한 방법으로 파일의 전송이 수행되고 있다.
파일 병렬 다운로드(parallel download)는 클라이언트(client)가 다운로드 할 파일이 통신망을 통해 연결된 노드(node)들인 서버들이나 다른 클라이언트들에 존재할 때, 파일을 다수의 블록들로 분할하고, 블록들의 다운로드를 여러 서버 또는 클라이언트들에게 동시에 요청함으로써 파일의 다운로드 시간을 줄이는 방식이다.
이러한 파일 병렬 다운로드 방식은 통신망의 발달과 함께 파일 다운로드 시간을 줄일 수 있어 P2P(Peer To Peer), 그리드 컴퓨팅(Grid Computing) 등에서 널리 활용되고 있다.
이러한 파일 병렬 다운로드 방식을 수행하기 위한 종래의 블록을 선택하여 다운로드 받는 방법은 크게 순차 선택(Sequential Selection), 임의 선택(Random Selection) 및 최소 빈도 우선 선택(Rarest First Selection) 등의 방법이 이용되었다.
순차 선택(Sequential Selection) 방법은 파일을 구성하는 블록들을 앞에서부터 차례로 선택하여 블록을 가진 노드에게 블록의 다운로드를 요청하는 방법이다.
순차 선택 방법에 의하면 다수의 노드들이 동일한 파일을 다운로드 한다고 가정하면, 모든 노드들의 다운로드가 완료되기 전까지 통신망 상에서 파일의 뒷부분 블록들이 복제된 개수는 앞부분의 블록들의 복제된 개수보다 적어지게 된다.
따라서 파일의 뒷부분의 블록들의 다운로드가 어려운 문제점이 있다.
임의 선택(Random Selection) 방법은 파일을 구성하는 블록들 중 하나를 임의로 선택하여 블록을 가진 노드에게 다운로드를 요청하는 방법이다.
임의 선택 방법에 의하면 동일한 파일을 다운로드 중인 모든 노드들의 동작률을 같다고 가정하면, 각 블록들의 복제 수는 동일할 것이라고 예상될 수 있다.
그러나 P2P 네트워크와 같은 ad-hoc 네트워크에서 노드들의 동작률은 상이하고 독립적이므로 임의 선택 방법은 다운로드 중인 파일에 대해 각 블록들의 복제 수가 동일하게 유지되는 것을 보장할 수 없는 문제점이 있다.
최소 빈도 우선 선택(Rarest First Selection) 방법은 다운로드 중인 파일에 대해 통신망을 통해 연결된 노드들이 가진 각 블록들의 개수를 계산하여, 가장 작은 수의 복제를 갖는 블록부터 다운로드를 요청하는 방법이다.
최소 빈도 우선 선택 방법은 다운로드 중인 블록들의 수가 동일하게 유지되는 것을 보장하는 이점은 있으나 블록을 소유한 노드들의 동작률이 상이하기 때문에 파일을 구성하는 각 블록을 가진 노드들에 접근할 수 있는 확률을 동일하게 유지하지는 못하는 문제점이 있다.
이러한 문제점으로 인하여 특히, 최근 P2P나 그리드 컴퓨팅 기술에서 파일을 가지는 서버를 포함하여 P2P 네트워크와 같은 ad-hoc 네트워크를 구성하는 경우 종래의 파일 병렬 다운로드 방식들은 오히려 파일을 구성하는 각 블록이 네트워크상에 존재하는 확률인 데이터 공유률이 더 낮아지는 문제점이 있다.
상기한 바와 같은 종래의 문제점을 해결하기 위해, 본 발명은 파일과 파일을 구성하는 블록의 위치에 상관없이 파일을 구성하는 블록을 각각의 노드들이 모두 소유할 수 있어 데이터 공유률을 높일 수 있는 파일 병렬 다운로드에서의 최대 빈도 블록 우선 선택 방법, 이를 이용한 파일 병렬 다운로드 방법 및 이를 구현하기 위한 프로그램을 기록한 기록매체를 제안하는 것이다.
또한, 데이터 공유률을 높임으로써 파일의 다운로드가 보다 정확하고 신속하게 이루어질 수 있는 파일 병렬 다운로드에서의 최대 빈도 블록 우선 선택 방법, 이를 이용한 파일 병렬 다운로드 방법 및 이를 구현하기 위한 프로그램을 기록한 기록매체를 제안하는 것이다.
특히, P2P나 그리드 컴퓨팅 기술에서 파일을 가지는 서버를 포함하여 P2P 네트워크와 같은 ad-hoc 네트워크를 구성하는 경우 데이터 공유률을 더욱 높일 수 있는 파일 병렬 다운로드에서의 최대 빈도 블록 우선 선택 방법, 이를 이용한 파일 병렬 다운로드 방법 및 이를 구현하기 위한 프로그램을 기록한 기록매체를 제안하는 것이다.
본 발명의 또 다른 목적들은 이하의 실시예에 대한 설명을 통해 쉽게 이해될 수 있을 것이다.
상기한 바와 같은 목적을 달성하기 위해, 본 발명의 일 측면에 의하면, 파일 병렬 다운로드에서의 블록 선택 방법이 제공된다.
본 발명의 바람직한 일 실시예에 따르면, 복수개의 노드(node)로 구성되는 파일 병렬 다운로드 시스템에서 임의의 노드가 파일을 다운로드 받기 위해 상기 파일을 구성하는 블록을 선택하는 방법에 있어서, 상기 파일을 구성하는 블록들 중 상기 임의의 노드를 제외한 다른 노드들이 가진 블록의 개수를 계산하는 단계 (a); 및 상기 임의의 노드를 제외한 다른 노드들이 가진 블록의 개수가 가장 많은 블록을 선택하는 단계(b)를 포함하는 것을 특징으로 하는 블록 선택 방법이 제공된다.
상기 파일 병렬 다운로드 시스템은 상기 파일을 구성하는 블록을 모두 가지는 서버를 더 포함하고, 상기 단계(b)에서 선택된 블록을 제외한 다른 블록은 상기 서버로부터 수신하도록 선택될 수 있다.
또한, 상기 서버로부터 수신하도록 선택되는 블록은 상기 파일을 구성하는 블록들 중 앞에서부터 차례로 선택하여진 블록일 수 있다.
그리고, 상기 서버로부터 수신하도록 선택되는 블록은 상기 파일을 구성하는 블록들 중 임의로 선택하여진 블록일 수 있다.
또한, 상기 서버로부터 수신하도록 선택되는 블록은 상기 임의의 노드를 제외한 다른 노드들이 가진 블록의 개수가 가장 적은 블록일 수 있다.
본 발명의 다른 일 측면에 의하면, 파일 병렬 다운로드 방법이 제공된다.
본 발명의 바람직한 일 실시예에 따르면, 복수개의 노드(node)로 구성되는 파일 병렬 다운로드 시스템에서 임의의 노드가 파일을 다운로드 받는 방법에 있어서, 상기 파일을 구성하는 블록들 중 상기 임의의 노드를 제외한 다른 노드들이 가진 블록의 개수를 계산하는 단계 (a); 상기 임의의 노드를 제외한 다른 노드들이 가진 블록의 개수가 가장 많은 블록을 선택하는 단계(b); 및 상기 선택된 블록을 가진 노드로부터 상기 선택된 블록을 다운로드 받는 단계(c)를 포함하는 것을 특징으로 하는 파일 병렬 다운로드 방법이 제공된다.
상기 파일 병렬 다운로드 시스템은 상기 파일을 구성하는 블록을 모두 가지는 서버를 더 포함하고, 상기 단계(b)에서 선택된 블록을 제외한 다른 블록은 상기 서버로부터 다운로드 받을 수 있다.
또한, 상기 서버로부터 수신하도록 선택되는 블록은 상기 파일을 구성하는 블록들 중 앞에서부터 차례로 선택하여진 블록일 수 있다.
그리고, 상기 서버로부터 수신하도록 선택되는 블록은 상기 파일을 구성하는 블록들 중 임의로 선택하여진 블록일 수 있다.
또한, 상기 서버로부터 수신하도록 선택되는 블록은 상기 임의의 노드를 제외한 다른 노드들이 가진 블록의 개수가 가장 적은 블록일 수 있다.
본 발명의 다른 측면에 의하면, 파일 병렬 다운로드에서의 블록 선택 방법을 구현하기 위한 프로그램을 기록한 기록매체가 제공된다.
본 발명의 바람직한 일 실시예에 따르면, 복수개의 노드(node)로 구성되는 파일 병렬 다운로드 시스템에서 임의의 노드가 파일을 다운로드 받기 위해 상기 파일을 구성하는 블록을 선택하는 방법을 구현하기 위한 프로그램을 기록한 기록매체에 있어서, 상기 파일을 구성하는 블록들 중 상기 임의의 노드를 제외한 다른 노드들이 가진 블록의 개수를 계산하는 단계 (a); 및 상기 임의의 노드를 제외한 다른 노드들이 가진 블록의 개수가 가장 많은 블록을 선택하는 단계(b)를 포함하는 것을 특징으로 하는 블록 선택 방법을 구현하기 위한 프로그램을 기록한 기록매체가 제공된다.
상기 파일 병렬 다운로드 시스템은 상기 파일을 구성하는 블록을 모두 가지는 서버를 더 포함하고, 상기 단계(b)에서 선택된 블록을 제외한 다른 블록은 상기 서버로부터 수신하도록 선택될 수 있다.
또한, 상기 서버로부터 수신하도록 선택되는 블록은 상기 파일을 구성하는 블록들 중 앞에서부터 차례로 선택하여진 블록일 수 있다.
그리고, 상기 서버로부터 수신하도록 선택되는 블록은 상기 파일을 구성하는 블록들 중 임의로 선택하여진 블록일 수 있다.
또한, 상기 서버로부터 수신하도록 선택되는 블록은 상기 임의의 노드를 제외한 다른 노드들이 가진 블록의 개수가 가장 적은 블록일 수 있다.
본 발명의 다른 측면에 의하면, 파일 병렬 다운로드 방법을 구현하기 위한 프로그램을 기록한 기록매체가 제공된다.
본 발명의 바람직한 일 실시예에 따르면, 복수개의 노드(node)로 구성되는 파일 병렬 다운로드 시스템에서 임의의 노드가 파일을 다운로드 받는 방법을 구현하기 위한 프로그램을 기록한 기록매체에 있어서, 상기 파일을 구성하는 블록들 중 상기 임의의 노드를 제외한 다른 노드들이 가진 블록의 개수를 계산하는 단계 (a); 및 상기 임의의 노드를 제외한 다른 노드들이 가진 블록의 개수가 가장 많은 블록을 선택하는 단계(b); 및 상기 선택된 블록을 가진 노드로부터 상기 선택된 블록을 다운로드 받는 단계(c)를 포함하는 것을 특징으로 하는 파일 병렬 다운로드 방법을 구현하기 위한 프로그램을 기록한 기록매체가 제공된다.
상기 파일 병렬 다운로드 시스템은 상기 파일을 구성하는 블록을 모두 가지는 서버를 더 포함하고, 상기 단계(b)에서 선택된 블록을 제외한 다른 블록은 상기 서버로부터 다운로드 받을 수 있다.
또한, 상기 서버로부터 수신하도록 선택되는 블록은 상기 파일을 구성하는 블록들 중 앞에서부터 차례로 선택하여진 블록일 수 있다.
그리고, 상기 서버로부터 수신하도록 선택되는 블록은 상기 파일을 구성하는 블록들 중 임의로 선택하여진 블록일 수 있다.
또한, 상기 서버로부터 수신하도록 선택되는 블록은 상기 임의의 노드를 제외한 다른 노드들이 가진 블록의 개수가 가장 적은 블록일 수 있다.
이상에서 설명한 바와 같이, 본 발명에 의한 파일 병렬 다운로드에서의 최대 빈도 블록 우선 선택 방법, 이를 이용한 파일 병렬 다운로드 방법 및 이를 구현하기 위한 프로그램을 기록한 기록매체에 의하면, 파일과 파일을 구성하는 블록의 위치에 상관없이 파일을 구성하는 블록을 각각의 노드들이 모두 소유할 수 있어 데이터 공유률을 높일 수 있는 장점이 있다.
또한, 데이터 공유률을 높임으로써 파일의 다운로드가 보다 정확하고 신속하게 이루어질 수 있는 장점이 있다.
그리고 P2P나 그리드 컴퓨팅 기술에서 파일을 가지는 서버를 포함하여 P2P 네트워크와 같은 ad-hoc 네트워크를 구성하는 경우 데이터 공유률을 더욱 높일 수 있는 장점이 있다.
도 1은 본 발명의 바람직한 일 실시예에 따른 파일 병렬 다운로드가 수행될 수 있는 파일 병렬 다운로드 시스템의 예시를 도시한 도면.
도 2는 본 발명의 바람직한 일 실시예에 따른 파일 병렬 다운로드가 수행될 수 있는 파일 병렬 다운로드 시스템의 또 다른 예시를 도시한 도면.
도 3은 본 발명의 바람직한 일 실시예에 따른 블록 선택 방법이 도 1에서 예시한 파일 병렬 다운로드 시스템에서 구현되는 예시를 위한 예시도.
도 4은 본 발명의 바람직한 일 실시예에 따른 블록 선택 방법이 도 2에서 예시한 파일 병렬 다운로드 시스템에서 구현되는 예시를 위한 예시도.
도 5는 본 발명의 바람직한 일 실시예에 따른 파일 병렬 다운로드 방법이 구현되는 순서를 도시한 순서도.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다. 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
제1, 제2 등의 용어는 다양한 구성 요소들을 설명하는데 사용될 수 있지만, 상기 구성 요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.
예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다.
및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다.
반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다.
일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 실시예를 상세히 설명하되, 도면 부호에 관계없이 동일하거나 대응하는 구성 요소는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다.
먼저 도 1과 도 2를 참조하여 본 발명의 바람직한 일 실시예에 따른 파일 병렬 다운로드가 수행될 수 있는 파일 병렬 다운로드 시스템에 대하여 살펴보기로 한다.
도 1과 도2는 본 발명의 바람직한 일 실시예에 따른 파일 병렬 다운로드가 수행될 수 있는 파일 병렬 다운로드 시스템을 예시하여 도시한 도면이다.
도 1에서는 각각의 노드들(100a, 100b, 1000c, 100d, … 100n)로만 파일 병렬 다운로드 시스템을 구성하는 경우를 예시한 것이나, 도 2와 같이 파일 보다 바람직하게는 다수의 블록으로 구성되는 완전한 파일을 가지고 있는 서버(도 2에서 P2P서버(200)라 칭함)를 포함하는 경우를 예시한 것이다.
도 1과 같이 파일 병렬 다운로드 시스템을 구성하는 경우 별도의 파일 병렬 다운로드 시스템의 관리자 또는 운영자 없이 파일 병렬 다운로드 시스템이 구성될 수 있는 등의 이점이 있으나, 통신망(110)의 장애 등이 발생하는 경우 적극적으로 대응하기 어려울 수 있다.
반면 도 2와 같이 파일 병렬 다운로드 시스템을 구성하는 경우 별도의 파일 병렬 다운로드 시스템의 관리자 또는 운영자가 반드시 필요하게 된다.
그러나, 통신망(110)의 장애 등이 발생하는 경우 등에도 관리가 용이하고, 파일 병렬 다운로드 시스템을 컨텐츠 전송망(CDN: Contents Delivery Network) 등과 같은 다양한 용도로 이용하는 것이 가능할 수 있게 된다.
한편, 도 1과 도 2의 본 발명의 바람직한 일 실시예에 따른 파일 병렬 다운로드가 수행될 수 있는 파일 병렬 다운로드 시스템은 예시에 불과하며 다른 구성을 가지는 파일 병렬 다운로드 시스템에도 본 발명이 적용될 수 있음은 자명하다.
먼저 도 1과 도 2에 도시된 바와 같이, 본 발명의 바람직한 일 실시예에 따른 파일 병렬 다운로드 시스템은 노드1(100a), 노드2(100b), 노드3(100c), 노드4(100d)… 노드n(100n) 등 복수 개의 노드(100)를 포함할 수 있다.
노드(node)(100)는 통신망(110)에 연결된 컴퓨터로서 통신 기능을 구비하여 통신망(110)에 접속하여 다른 노드(100)와 연결될 수 있는 장치이면 아무런 제한이 없다.
노드(100)는 예를 들면, 사용자 퍼스널 컴퓨터(PC)와 휴대 전화, 개인 휴대 단말기(PDA: Personal Digital Assistant) 등의 무선 단말기뿐만 아니라 다른 단말로 서비스를 제공하기 위한 컴퓨팅 장치인 서버(server) 등이 가능하다.
각각의 노드(100)들은 통신망(110)을 통해 연결되어 있으며, 통신망(110)은 인터넷 및 이동 통신망을 포함할 뿐만 아니라, 인터넷은 TCP/IP 프로토콜 및 그 상위 계층에 존재하는 여러 서비스, 즉 HTTP(Hyper Text Transfer Protocol), Telnet, FTP(File Transfer Protocol), DNS(Domain Name System), SMTP(Simple Mail Transfer Protocol), SNMP(Simple Network Management Protocol), NFS(Network File Service) 등을 제공하는 전세계적인 개방형 네트워크 구조를 모두 포함한다.
또한, 이동 통신망은 기지국(BS: Base Station), 이동전화 교환국(MTSO: Mobile Telephone Switching Office), 홈 위치 등록기(HLR: Home Location Register) 이외에, 무선 패킷 데이터의 송수신을 가능하게 하는 액세스 게이트웨이(Access Gateway), PDSN(Packet Data Serving Node) 등과 같은 구성 요소를 추가로 포함한다.
도 2에서 도시한 P2P 서버(200)는 전술한 바와 같이 다수의 블록으로 구성되는 파일의 완전본을 가지고 있는 장치로서 노드(100)들과 통신망(110)을 통해 연결되어 노드(100)들로 파일, 보다 바람직하게는 파일을 구성하는 블록들을 노드(100)들로 전송할 수 있다.
이러한 P2P 서버(200)는 예를 들면, 통신망(110)에 장애가 없는 경우에는 노드(100)들 사이의 통신만을 통해 파일의 다운로드가 이루어지도록 하여 동작하지 않다가 통신망(110)에 장애가 발생하는 경우에만 노드(100)들로 파일을 전송하도록 동작되게 설정하는 것도 가능하다.
이러한 P2P 서버(200)의 동작은 다양한 방법으로 설정될 수 있으며 파일을 소유하고 있고 노드(100)들로 파일을 구성하는 블록을 전송할 수 있는 경우라면 아무런 제한이 없다.
한편, P2P 서버(200)는 노드(100)들로 블록들을 전송하는 것뿐만 아니라 각각의 노드들(100)이 가진 블록의 정보를 수집하여 각각의 노드들(100)에 제공함으로써 각각의 노드들(100)이 보다 빠르고 정확하게 파일을 제공받을 수 있도록 할 수 있으나 이에 한정되는 것은 아니다.
이러한 파일 병렬 다운로드 시스템에서 본 발명에 의한 파일 병렬 다운로드가 수행되기 위해서는 먼저 병렬 다운로드 중인 파일에 대하여 처리 단위가 파일(file)이 아닌 파일을 구성하는 블록(block)으로 설정된다.
그리고 각각의 노드(100)에서는 다운로드 중인 파일에 대해 통신망(110)을 통해 연결된 다른 노드(100)들이 가진 각 블록들의 개수를 계산하여, 가장 많은 수의 복제를 갖는 블록부터 다운로드를 요청한다.
예를 들면, 도 3에 도시된 바와 같이 파일이 a, b, c, d라는 4개의 블록으로 구성되고, 노드 1(100a)이 a, b, c블록을 가지고, 노드 2(100b)가 b, c블록을 가지며, 노드 3(100c)이 a, c, d블록을 가지며, 노드 4(100d)가 a, d블록을 가지는 경우를 가정하자.
이러한 파일 병렬 다운로드 시스템에서 본 발명에 의한 파일 병렬 다운로드가 이루어지는 것을 살펴보면, 노드 1(100a)은 파일을 구성하는 블록 중 현재 갖고 있지 않은 d블록을 가진 노드 3(100c) 또는 노드 4(100d)로부터 d블록을 다운로드 받는다.
노드 2(100b)는 파일을 구성하는 블록 중 현재 갖고 있지 않은 a, d블록 중 다른 노드들(100a, 100c, 100d)이 가장 많이 가진 블록인 a블록을 선택한다.
종래의 최소 빈도 우선 선택 방식에 의하면 다른 노드들(100a, 100c, 100d)이 가장 많이 가진 블록인 d블록을 선택하게 된다.
그러나 본 발명에서는 다른 노드들(100a, 100c, 100d)이 가장 많이 가진 즉 최대 빈도 우선 선택 방식을 선택하는 것이다.
노드 3(100c)의 파일을 구성하는 블록 중 현재 갖고 있지 않은 b블록을 가진 노드 1(100a) 또는 노드 2(100b)로부터 b블록을 다운로드 받는다.
노드 4(100d)의 경우에는 파일을 구성하는 블록 중 현재 갖고 있지 않은 b, c블록 중 다른 노드들(100a, 100b, 100c)이 가장 많이 가진 블록인 c블록을 선택한다.
그리고 c블록을 가진 노드 1(100a), 노드 2(100b) 및 노드 3(100c) 중 하나의 노드로부터 c블록을 다운로드받는다.
한편, 각각의 노드가 선택한 블록을 다운로드 받을 노드를 선택하는 것은, 예를 들면 전술한 예시에서 노드 1(100a)이 노드 3(100c) 또는 노드 4(100d)로부터 d블록을 다운로드 받는 경우 노드 3(100c) 또는 노드 4(100d) 중 하나의 노드들 선택하는 것은 노드 3(100c)과 노드 4(100d)의 노드 1(100a)과의 통신망(110) 상태, 노드 3(100c)과 노드 4(100d)의 동작 상태 등 다양한 요소를 고려하여 선택될 수 있으며, 그 선택 방법에는 아무런 제한이 없다.
이러한 최대 빈도 우선 선택 방법은 각각의 노드들(100) 모두가 하나의 블록에 대해서라도 일단 최대한 빨리 가지게 된다.
따라서 파일 병렬 다운로드에서 노드(100) 자신이 가진 블록에 대해서는 다른 노드들로 다운로드 요청을 하지 않으므로 오히려 각각의 노드들(100)이 모든 블록을 가질 수 있는 확률을 높일 수 있게 된다.
특히, 이러한 최대 빈도 우선 선택은 각각의 노드들(100)이 모든 블록을 가질 수 있는 확률을 높일 수 있게 되어 통신망(110)을 구성하는 노드들(100)의 데이터 공유률을 높일 수 있게 된다.
한편, 이러한 데이터 공유률의 증가는 도 2와 같이 P2P 서버(200)와 같이 전체 파일을 소유하는 장치를 포함하는 경우 더욱 효과적일 수 있다.
도 4의 예시를 통해 P2P 서버(200)를 포함하는 파일 병렬 다운로드 시스템에서 본 발명의 바람직한 일 실시예에 따른 파일 병렬 다운로드에서의 블록 선택 방법을 살펴본다.
도 4의 예시는 도 3과 같이 파일이 a, b, c, d라는 4개의 블록으로 구성되고, 노드 1(100a)이 a, b, c블록을 가지고, 노드 2(100b)가 b, c블록을 가지며, 노드 3(100c)이 a, c, d블록을 가지며, 노드 4(100d)가 a, d블록을 가지는 경우를 가정한 것이며, P2P 서버(200)가 a, b, c, d라는 4개의 블록으로 구성된 파일을 가지는 것으로 가정한다.
이러한 파일 병렬 다운로드 시스템에서 본 발명에 의한 파일 병렬 다운로드가 이루어지는 것을 살펴보면, 노드 1(100a)은 도 3에서와 같이 파일을 구성하는 블록 중 현재 갖고 있지 않은 d블록을 가진 노드 3(100c) 또는 노드 4(100d)로부터 d블록을 다운로드 받는다.
노드 2(100b)는 도 3과 같이 파일을 구성하는 블록 중 현재 갖고 있지 않은 a, d블록 중 다른 노드(100a, 100c, 100d)들이 가장 많이 가진 블록인 a블록을 선택한다.
한편, 선택되지 않은 d블록은 P2P 서버(200)로부터 다운로드 받을 수 있다.
만약 도 4의 예시와 달리 선택되지 않은 블록이 복수개인 경우 P2P 서버(200)로부터 노드 2(100b)가 선택되지 않은 블록 중 적어도 하나를 다운로드 받을 수 있다.
그리고 선택되지 않은 블록 중 적어도 하나를 P2P 서버(200)로부터 다운로드 받는 방법은, 예를 들면 전술한 순차 선택, 임의 선택 및 최소 빈도 우선 선택 방법 중 적어도 하나의 방법으로 블록을 선택하여 선택된 블록을 다운로드 받는 것도 가능하나 이에 한정되는 것은 아니다.
노드 3(100c)은 도 3과 같이 파일을 구성하는 블록 중 현재 갖고 있지 않은 b블록을 가진 노드 1(100a) 또는 노드 2(100b)로부터 b블록을 다운로드 받는다.
노드 4(100d)의 경우에는 파일을 구성하는 블록 중 현재 갖고 있지 않은 b, c블록 중 다른 노드들(100a, 100b, 100c)이 가장 많이 가진 블록인 c블록을 선택한다.
그리고 c블록을 가진 노드 1(100a), 노드 2(100b) 및 노드 3(100c) 중 하나의 노드로부터 c블록을 다운로드 받는다.
한편, 선택되지 않은 b블록은 P2P 서버(200)로부터 다운로드 받을 수 있다.
만약 도 4의 예시와 달리 선택되지 않은 블록이 복수개인 경우 P2P 서버(200)로부터는 종래의 순차 선택, 임의 선택 및 최소 빈도 우선 선택 방법 중 적어도 하나의 방법으로 블록을 선택하여 선택된 블록을 다운로드 받는 것도 가능함은 전술한 바와 같다.
한편, 본 발명의 바람직한 일 실시예에 따른 파일 병렬 다운로드에서의 최대 빈도 블록 우선 선택 방법은 특히 도 4의 예시와 같이 P2P 서버(200)를 더 포함하는 경우 각각의 노드들(100)이 파일을 구성하는 블록을 더욱 빨리 모두 가지게 할 수 있으며, 전술한 바와 같이 통신망(110)을 구성하는 노드들(100)의 데이터 공유률은 더욱 높일 수 있게 된다.
특히, 데이터 공유률이 높아지는 경우 예를 들어, 파일 병렬 다운로드 시스템을 콘텐츠 전송망(CDN: Contents Delivery Network)의 콘텐츠 전송을 위한 용도로 이용하는 경우 보다 효율적인 콘텐츠의 전송이 이루어질 수 있게 할 수 있다.
콘텐츠 전송망은 통신망에서 콘텐츠 제공자 제공하는 콘텐츠를 복수개의 서버에 저장하여 사용자의 요청이 있는 경우 그 콘텐츠를 사용자에게 전달하는 구성을 가진다.
콘텐츠 전송망은 콘텐츠를 사용자에게 가까이 미리 옮겨 놓음으로써 전송 속도를 향상시키고 데이터의 손실을 막을 수 있다.
이러한 콘텐츠 전송망에서 콘텐츠를 사용자에게 보다 신속하고 정확하게 전달하기 위해서는 각각의 노드들(100)이 데이터를 공유하는 정도인 데이터 공유율이 높을수록 유리하다.
본 발명의 바람직한 일 실시예에 따른 파일 병렬 다운로드 방법을 콘텐츠 전송망에서 적용하는 경우 데이터 공유율이 높아지므로 보다 효율적인 콘텐츠의 전송이 이루어질 수 있게 되는 것이다.
본 발명의 바람직한 일 실시예에 따른 파일 병렬 다운로드 방법이 구현되는 순서를 도 5를 참조하여 살펴보기로 한다.
도 5는 전술한 예시에서 도 2와 같이 파일 병렬 다운로드 시스템에 P2P 서버(200)를 포함하는 경우 본 발명의 바람직한 일 실시예에 따른 파일 병렬 다운로드 방법이 구현되는 순서를 도시한 것이다.
도 1과 같은 파일 병렬 다운로드 시스템에서 본 발명의 바람직한 일 실시예에 따른 파일 병렬 다운로드 방법이 구현될 수 있음은 전술한 바와 같다.
도 5에 도시된 바와 같이, 먼저 병렬 다운로드가 시작되면, 먼저 파일을 구성하는 모든 블록들의 수신이 완료되었는지 여부를 확인한다(S500)
만약 다운로드 받지 못한 미수신 블록이 존재한다면, 다운로드 받지 못한 미수신 블록 중 노드들이 가장 많이 소유한 블록 즉 최대 개수가 존재하는 블록을 다른 노드에서 다운로드 받는다(S502).
그리고 다운로드 받지 못한 미수신 블록 중 노드들이 가장 적게 소유한 블록 즉 최소 개수가 존재하는 블록은 P2P 서버(200)에서 다운로드 받는다(S504).
한편, 도 5에서는 단계 504에서 P2P 서버(200)에서 최소 개수가 존재하는 블록을 다운로드 받는 것으로 예시하였으나, 선택되지 않은 블록 중 적어도 하나를 선택하여 P2P 서버(200)로부터 다운로드 받는 방법은 아무런 제한이 없으며, 이 경우 P2P 서버(200)에서 다운로드 받을 블록의 선택은 순차 선택, 임의 선택 및 최소 빈도 우선 선택 방법 중 적어도 하나의 방법으로 블록을 선택하여 선택된 블록을 다운로드 받는 것도 가능함은 전술한 바와 같다.
상기한 본 발명의 바람직한 실시예는 예시의 목적을 위해 개시된 것이고, 본 발명에 대해 통상의 지식을 가진 당업자라면 본 발명의 사상과 범위 안에서 다양한 수정, 변경, 부가가 가능할 것이며, 이러한 수정, 변경 및 부가는 하기의 특허청구범위에 속하는 것으로 보아야 할 것이다.

Claims (9)

  1. 복수개의 노드(node)로 구성되는 파일 병렬 다운로드 시스템에서 임의의 노드가 파일을 다운로드 받기 위해 상기 파일을 구성하는 블록을 선택하는 방법에 있어서,
    상기 파일을 구성하는 블록들 중 상기 임의의 노드를 제외한 다른 노드들이 가진 블록의 개수를 계산하는 단계 (a); 및
    상기 임의의 노드를 제외한 다른 노드들이 가진 블록의 개수가 가장 많은 블록을 선택하는 단계(b)를 포함하는 것을 특징으로 하는 블록 선택 방법.
  2. 제1항에 있어서,
    상기 파일 병렬 다운로드 시스템은 상기 파일을 구성하는 블록을 모두 가지는 서버를 더 포함하고,
    상기 단계(b)에서 선택된 블록을 제외한 다른 블록 중 적어나 하나는 상기 서버로부터 수신하도록 선택되는 것을 특징으로 하는 블록 선택 방법.
  3. 제2항에 있어서,
    상기 서버로부터 수신하도록 선택되는 블록은 상기 파일을 구성하는 블록들 중 앞에서부터 차례로 선택하여진 블록인 것을 특징으로 하는 블록 선택 방법.
  4. 제2항에 있어서,
    상기 서버로부터 수신하도록 선택되는 블록은 상기 파일을 구성하는 블록들 중 임의로 선택하여진 블록인 것을 특징으로 하는 블록 선택 방법.
  5. 제2항에 있어서,
    상기 서버로부터 수신하도록 선택되는 블록은 상기 임의의 노드를 제외한 다른 노드들이 가진 블록의 개수가 가장 적은 블록인 것을 특징으로 하는 블록 선택 방법.
  6. 복수개의 노드(node)로 구성되는 파일 병렬 다운로드 시스템에서 임의의 노드가 파일을 다운로드 받는 방법에 있어서,
    상기 파일을 구성하는 블록들 중 상기 임의의 노드를 제외한 다른 노드들이 가진 블록의 개수를 계산하는 단계 (a); 및
    상기 임의의 노드를 제외한 다른 노드들이 가진 블록의 개수가 가장 많은 블록을 선택하는 단계(b); 및
    상기 선택된 블록을 가진 노드로부터 상기 선택된 블록을 다운로드 받는 단계(c)를 포함하는 것을 특징으로 하는 파일 병렬 다운로드 방법.
  7. 제6항에 있어서,
    상기 파일 병렬 다운로드 시스템은 상기 파일을 구성하는 블록을 모두 가지는 서버를 더 포함하고,
    상기 단계(b)에서 선택된 블록을 제외한 다른 블록은 상기 서버로부터 다운로드 받는 것을 특징으로 하는 파일 병렬 다운로드 방법.
  8. 복수개의 노드(node)로 구성되는 파일 병렬 다운로드 시스템에서 임의의 노드가 파일을 다운로드 받기 위해 상기 파일을 구성하는 블록을 선택하는 방법을 구현하기 위한 프로그램을 기록한 기록매체에 있어서,
    상기 파일을 구성하는 블록들 중 상기 임의의 노드를 제외한 다른 노드들이 가진 블록의 개수를 계산하는 단계 (a); 및
    상기 임의의 노드를 제외한 다른 노드들이 가진 블록의 개수가 가장 많은 블록을 선택하는 단계(b)를 포함하는 것을 특징으로 하는 블록 선택 방법을 구현하기 위한 프로그램을 기록한 기록매체.
  9. 복수개의 노드(node)로 구성되는 파일 병렬 다운로드 시스템에서 임의의 노드가 파일을 다운로드 받는 방법을 구현하기 위한 프로그램을 기록한 기록매체에 있어서,
    상기 파일을 구성하는 블록들 중 상기 임의의 노드를 제외한 다른 노드들이 가진 블록의 개수를 계산하는 단계 (a); 및
    상기 임의의 노드를 제외한 다른 노드들이 가진 블록의 개수가 가장 많은 블록을 선택하는 단계(b); 및
    상기 선택된 블록을 가진 노드로부터 상기 선택된 블록을 다운로드 받는 단계(c)를 포함하는 것을 특징으로 하는 파일 병렬 다운로드 방법을 구현하기 위한 프로그램을 기록한 기록매체.
PCT/KR2010/000689 2009-02-06 2010-02-04 파일 병렬 다운로드에서의 최대 빈도 블록 우선 선택 방법, 이를 이용한 파일 병렬 다운로드 방법 및 이를 구현하기 위한 프로그램을 기록한 기록매체 WO2010090459A2 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2009-0009957 2009-02-06
KR1020090009957A KR101006539B1 (ko) 2009-02-06 2009-02-06 파일 병렬 다운로드에서의 최대 빈도 블록 우선 선택 방법,이를 이용한 파일 병렬 다운로드 방법 및 이를 구현하기 위한 프로그램을 기록한 기록매체

Publications (2)

Publication Number Publication Date
WO2010090459A2 true WO2010090459A2 (ko) 2010-08-12
WO2010090459A3 WO2010090459A3 (ko) 2010-10-28

Family

ID=42542516

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2010/000689 WO2010090459A2 (ko) 2009-02-06 2010-02-04 파일 병렬 다운로드에서의 최대 빈도 블록 우선 선택 방법, 이를 이용한 파일 병렬 다운로드 방법 및 이를 구현하기 위한 프로그램을 기록한 기록매체

Country Status (2)

Country Link
KR (1) KR101006539B1 (ko)
WO (1) WO2010090459A2 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9008696B1 (en) 2013-10-21 2015-04-14 At&T Intellectual Property I, Lp Method and apparatus for distributing services and data

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040085692A (ko) * 2003-04-01 2004-10-08 주식회사 인츠커뮤니티 파일을 병렬로 다운로드받는 장치 및 방법
KR20070029727A (ko) * 2004-06-08 2007-03-14 인터내셔널 비지네스 머신즈 코포레이션 그리드 컴퓨팅 환경 내의 최적의 동시 데이터 다운로드

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100521361B1 (ko) * 2001-09-14 2005-10-14 박영찬 네트워크 환경에서의 파일 공동 전송 방법
KR20060117149A (ko) * 2005-05-13 2006-11-16 주식회사 프리챌 P2p기술을 이용한 파일 배포 방법 및 시스템
KR20090001571A (ko) * 2007-04-27 2009-01-09 주식회사 나우콤 컨텐츠를 블록 단위로 병렬적이고 랜덤하게 배포하는컨텐츠 배포 시스템 및 방법

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040085692A (ko) * 2003-04-01 2004-10-08 주식회사 인츠커뮤니티 파일을 병렬로 다운로드받는 장치 및 방법
KR20070029727A (ko) * 2004-06-08 2007-03-14 인터내셔널 비지네스 머신즈 코포레이션 그리드 컴퓨팅 환경 내의 최적의 동시 데이터 다운로드

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
KIM, HEUNG-JUN ET AL.: 'Block Selection Strategy for P2P Streaming' THE JOURNAL OF THE KOREAN INSTITUTE OF MARITIME INFORMATION AND COMMUNICATION SCIENCES vol. 12, no. 12, 31 December 2008, pages 2179 - 2187 *
SUSITAIVAL, RIIKKA ET AL.: 'Next Generation Internet Networks, 3rd EuroNGI Conference on. Print ISBN 1-4244-0857-1', 23 May 2007 article 'Analyzing the file availability and download time in a P2P file sharing system.', pages 88 - 95 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9008696B1 (en) 2013-10-21 2015-04-14 At&T Intellectual Property I, Lp Method and apparatus for distributing services and data
US9516463B2 (en) 2013-10-21 2016-12-06 At&T Intellectual Property I, L.P. Method and apparatus for distributing services and data
US9973962B2 (en) 2013-10-21 2018-05-15 At&T Intellectual Property I, L.P. Method and apparatus for distributing services and data
US10397822B2 (en) 2013-10-21 2019-08-27 At&T Intellectual Property I, L.P. Method and apparatus for distributing services and data
US10813153B2 (en) 2013-10-21 2020-10-20 At&T Intellectual Property I, L.P. Method and apparatus for distributing services and data

Also Published As

Publication number Publication date
KR101006539B1 (ko) 2011-01-07
WO2010090459A3 (ko) 2010-10-28
KR20100090594A (ko) 2010-08-16

Similar Documents

Publication Publication Date Title
RU2270531C2 (ru) Система и способ использования ip-адреса как идентификатора беспроводного устройства
CN102238226A (zh) 在以内容为中心的网络上的会话迁移
US9253148B2 (en) System and method for logging communications
EP2647161A1 (en) Terminal and intermediate node in content oriented networking environment and communication method of terminal and intermediate node
CN1649351A (zh) 分组网络中端点地址的改变
WO2018186718A1 (en) A method and apparatus for reducing latency of network protocols
WO2012050293A1 (en) Method and apparatus for sharing contents using information of group change in content oriented network environment
WO2010143910A2 (ko) 최적의 전송 프로토콜 선택 방법 및 그 장치
WO2021085984A1 (ko) 복수의 upf 인스턴스들을 포함하는 upf 노드가 qos 모니터링을 수행하는 방법 및 상기 방법을 수행하는 upf 노드
WO2017051941A1 (ko) P2p 연결을 이용한 클라우드 서비스 트래픽의 절감 방법 및 그 장치
WO2013008994A1 (ko) 디바이스 디스커버리 방법 및 콘텐트 다운로드 방법
WO2020231116A1 (en) Method and edge enabler server for providing dynamic information to edge enabler client running in ue
WO2015056833A1 (en) Web-based real time data pushing method and system thereof
CN102438331B (zh) 一种移动终端通过手机上网的方法及系统
WO2015199271A1 (en) Method and system for sharing files over p2p
WO2014163254A1 (ko) 모바일 환경에서의 p2p 접속 시스템 및 단말과 이를 이용한 p2p 접속 방법
WO2011144077A2 (zh) 点对点文件传输的方法及装置
WO2013147421A1 (ko) 단말의 접속 차단 자원으로의 접근을 관리하는 서버 및 방법, 그리고 단말
WO2015126219A1 (ko) 피투피 기반 파일 전송 제어 방법 및 이를 위한 피투피 통신 제어 장치
WO2019182377A1 (ko) 블록체인 기반 암호화폐의 트랜잭션에 이용되는 주소 정보 생성 방법, 전자 장치 및 컴퓨터 판독 가능한 기록 매체
WO2016108509A1 (en) Method and apparatus for allocating server in wireless communication system
WO2010090459A2 (ko) 파일 병렬 다운로드에서의 최대 빈도 블록 우선 선택 방법, 이를 이용한 파일 병렬 다운로드 방법 및 이를 구현하기 위한 프로그램을 기록한 기록매체
WO2020226349A1 (ko) 호 처리를 위한 릴레이 장치, 릴레이 장치에 의해 수행되는 호 처리 방법 및 호 처리 방법을 실행하는 프로그램이 기록된 기록매체
WO2010098527A1 (ko) Cpns 환경에서 종단 단말기가 다수의 이동통신 단말기에 연결되어 서비스를 제공받기 위한 방법 및 시스템과 이를 위한 cpns 서버 및 종단 단말기
CN111448778A (zh) 安全的下一跳通信

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 10738743

Country of ref document: EP

Kind code of ref document: A2

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 10738743

Country of ref document: EP

Kind code of ref document: A2