KR20100122197A - Cloud computing network system and file distrubuting method of the same - Google Patents

Cloud computing network system and file distrubuting method of the same Download PDF

Info

Publication number
KR20100122197A
KR20100122197A KR1020090041122A KR20090041122A KR20100122197A KR 20100122197 A KR20100122197 A KR 20100122197A KR 1020090041122 A KR1020090041122 A KR 1020090041122A KR 20090041122 A KR20090041122 A KR 20090041122A KR 20100122197 A KR20100122197 A KR 20100122197A
Authority
KR
South Korea
Prior art keywords
file
requested
client
hot
cloud
Prior art date
Application number
KR1020090041122A
Other languages
Korean (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 KR1020090041122A priority Critical patent/KR20100122197A/en
Publication of KR20100122197A publication Critical patent/KR20100122197A/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/161Computing infrastructure, e.g. computer clusters, blade chassis or hardware partitioning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4494Execution paradigms, e.g. implementations of programming paradigms data driven
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • G06F9/453Help systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Human Computer Interaction (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

PURPOSE: A cloud computing network system and its file distribution method are provided to supply a service to clients by distributing the files stored in a file storage to the cloud members. CONSTITUTION: Clients request files through network to a main server(110). A storage server(120) stores files offered to the clients. Cloud members offer the file requested from the clients. When the file requested from the client is a hot file, the main server transmits the file stored in the storage server to the cloud member and transmits the information about the cloud members to the client.

Description

클라우드 컴퓨팅 네트워크 시스템 및 그것의 파일 분산 방법{CLOUD COMPUTING NETWORK SYSTEM AND FILE DISTRUBUTING METHOD OF THE SAME}CLOUD COMPUTING NETWORK SYSTEM AND FILE DISTRUBUTING METHOD OF THE SAME

본 발명은 분산 처리가 가능한 클라우드 컴퓨팅 네트워크 시스템에 관한 것이다.The present invention relates to a cloud computing network system capable of distributed processing.

일반적으로 임의의 네트워크를 통해 전자화된 정보를 전달받기 위해서는 소정의 정보를 요구하는 컴퓨터(이하 클라이언트라 칭함)와, 클라이언트로부터 요구된 정보를 제공하는 컴퓨터(이하 서버라 칭함) 그리고 이들 간의 정보 전달 경로를 구성하는 네트워크가 존재해야 한다. 이 중 서버와 네트워크는 하나의 클라이언트에게만 서비스되는 자원이 아니므로, 복수의 서로 다른 클라이언트들의 요구에 응답할 때 과중한 부하가 걸리게 된다. 그 결과, 서버에 동시에 접속할 수 있는 클라이언트의 수는 제한되어야 하고 정보를 요구하는 클라이언트는 자신에게 할당된 대역폭 중의 일부만을 사용할 수 밖에 없다.In general, a computer (hereinafter referred to as a client) requesting predetermined information in order to receive electronicized information through an arbitrary network, a computer (hereinafter referred to as a server) providing the requested information from the client, and an information transmission path between them The network constituting the network must exist. Among them, the server and the network are not resources that are serviced by only one client. Therefore, a heavy load is applied when responding to requests from a plurality of different clients. As a result, the number of clients that can connect to the server at the same time should be limited, and clients requesting information can only use a portion of the bandwidth allocated to them.

이와 같은 문제점을 해결하기 위해서 인터넷을 통해 정보를 판매하는 콘텐츠 제공자(contents provider)들은 사용자/고객의 수를 늘이고 서비스의 품질을 향상시키기 위해서 서버의 역할을 할 수 있는 대용량의 고가 컴퓨터를 다수 구입하거 나, 네트워크의 대역폭을 증가시키는 등의 막대한 투자를 해야한다. 콘텐츠 제공자들은 정보 제공 서비스를 안정적으로 제공하기 위하여 최대 클라이언트 수를 예측하고 그에 대비한 자원을 준비하여야 하는데, 예측한 최대 클라이언트 수만큼의 정보 요구가 발생하지 않은 경우에는 자원 낭비가 초래되고, 예측한 최대 클라이언트 수보다 정보를 요구하는 클라이언트의 수가 많은 경우에는 정상적인 서비스 제공이 어려운 문제는 여전히 존재한다.To solve this problem, content providers who sell information through the Internet purchase large numbers of expensive computers that can act as servers to increase the number of users / customers and improve the quality of service. I have to invest heavily in increasing the bandwidth of the network. Content providers should estimate the maximum number of clients and prepare resources for the stable provision of information services. If the information demand does not occur as the maximum number of clients, the content providers will be wasted. If there are more clients requesting information than the maximum number of clients, the problem of providing a normal service still remains.

따라서 본 발명의 목적은 한정된 자원을 가지고 많은 클라이언트들에게 서비스를 제공할 수 있는 클라우드 컴퓨팅 네트워크 시스템을 제공하는 데 있다.Accordingly, an object of the present invention is to provide a cloud computing network system capable of providing a service to many clients with limited resources.

본 발명의 다른 목적은 클라우딩 컴퓨팅 네트워크 시스템에서 효율적으로 파일을 분산하는 방법을 제공하는 데 있다.Another object of the present invention is to provide a method for efficiently distributing files in a cloud computing network system.

상기와 같은 목적을 달성하기 위한 본 발명의 일 특징에 의하면, 클라우드 컴퓨팅 네트워크 시스템의 파일 분산 방법은: 클라이언트로부터 파일 요청을 수신하는 단계와, 요청된 파일이 핫파일인 지를 판별하는 단계와, 상기 요청된 파일이 핫파일일 때 스토리지 서버로부터 파일을 다운로드하는 단계와, 다운로드된 파일을 분산할 클라우드 멤버들을 선정하는 단계와, 선정된 클라우드 멤버들에게 상기 다운로드된 파일을 전송하는 단계, 그리고 상기 클라이언트에게 상기 파일을 저정하고 있는 클라우드 멤버 정보를 전송하는 단계를 포함한다.According to an aspect of the present invention for achieving the above object, a file distribution method of a cloud computing network system includes: receiving a file request from a client, determining whether the requested file is a hot file, and Downloading a file from a storage server when the requested file is a hot file, selecting cloud members to distribute the downloaded file, sending the downloaded file to selected cloud members, and the client And sending the cloud member information storing the file to the user.

이 실시예에 있어서, 상기 요청된 파일이 핫파일일 때, 상기 요청된 파일이 상기 클라우드 멤버들에 저장되어 있는 지를 판별하는 단계를 더 포함하며, 상기 요청된 파일이 상기 클라우드 멤버들에 저장되어 있을 때 상기 클라우드 멤버 정보를 전송한다.In this embodiment, when the requested file is a hot file, the method may further include determining whether the requested file is stored in the cloud members, wherein the requested file is stored in the cloud members. The cloud member information is transmitted when there is.

이 실시예에 있어서, 상기 요청된 파일이 상기 핫파일인 지를 판별하는 단계는, 소정 시간동안 상기 파일을 요청하는 클라이언트들의 수가 제1 기준값보다 많 을 때 상기 요청된 파일을 상기 핫파일로 간주하는 단계를 포함한다.In this embodiment, the step of determining whether the requested file is the hot file is to consider the requested file as the hot file when the number of clients requesting the file for a predetermined time is greater than a first reference value. Steps.

이 실시예에 있어서, 상기 요청된 파일이 상기 핫파일인 지를 판별하는 단계는, 소정 시간동안 상기 파일을 다운로드한 클라이언트들의 수가 제2 기준값보다 많을 때 상기 요청된 파일을 상기 핫파일로 간주한다.In this embodiment, the step of determining whether the requested file is the hot file considers the requested file as the hot file when the number of clients who have downloaded the file for a predetermined time is greater than a second reference value.

이 실시예에 있어서, 상기 요청된 파일이 상기 핫파일인 지를 판별하는 단계는, 상기 파일에 대한 트래픽이 제3 기준값보다 클 때 상기 요청된 파일을 상기 핫파일로 간주한다.In this embodiment, determining whether the requested file is the hot file considers the requested file as the hot file when the traffic for the file is greater than a third reference value.

이 실시예에 있어서, 상기 요청된 파일이 상기 핫파일인 지를 판별하는 단계는, 상기 요청된 파일이 초기에 핫파일로 정의된 파일인 지를 판별하는 단계를 포함한다.In this embodiment, determining whether the requested file is the hot file comprises determining whether the requested file is a file initially defined as a hot file.

이 실시예에 있어서, 상기 요청된 파일이 상기 핫파일인 지를 판별하는 단계는, 상기 요청된 파일이 상기 핫파일로 최초 설정된 후 소정 시간이 경과하기 전까지 상기 요청된 파일은 한 파일로 간주된다.In this embodiment, the step of determining whether the requested file is the hot file, the requested file is regarded as one file until a predetermined time elapses after the requested file is initially set as the hot file.

이 실시예에 있어서, 상기 클라이언트로부터 요청된 파일은, 어플리케이션 프로그램 파일, 텍스트 데이터 파일, 문서 파일, 그림 파일, 음악 파일, 동영상 파일 및 바코드 파일 중 어느 하나이다.In this embodiment, the file requested from the client is any one of an application program file, a text data file, a document file, a picture file, a music file, a video file, and a barcode file.

본 발명의 다른 특징에 의하면, 클라우드 컴퓨팅 네트워크 시스템은: 메인 서버와, 네트워크를 통하여 상기 메인 서버로 파일을 요청하는 클라이언트와, 상기 클라이언트들에게 제공될 파일들을 저장하는 스토리지 서버, 그리고 상기 클라이언트들로부터 요청된 파일을 제공하기 위한 클라우드 멤버를 포함한다. 상기 메인 서버는 상기 클라이언트로부터 요청된 파일이 핫파일일 때 상기 스토리지 서버에 저장된 파일을 상기 클라우드 멤버에게 전송하고, 그리고 상기 클라이언트에게 상기 클라우드 멤버들에 대한 정보를 전송한다.According to another aspect of the invention, a cloud computing network system comprises: a main server, a client requesting a file to the main server via a network, a storage server storing files to be provided to the clients, and from the clients It includes a cloud member to provide the requested file. The main server transmits a file stored in the storage server to the cloud member when the file requested from the client is a hot file, and transmits information about the cloud members to the client.

이 실시예에 있어서, 상기 메인 서버는, 상기 클라이언트를 관리하며, 상기 클라이언트로부터 요청된 파일이 핫파일인 지를 판별하는 클라이언트 서버와, 상기 클라우드 멤버들을 관리하는 멤버 관리자, 그리고 상기 클라이언트로부터 요청된 파일이 상기 핫 파일일 때 상기 스토리지 서버로부터 상기 파일을 다운로드하는 파일 분산 관리자를 포함한다. 상기 멤버 관리자는 상기 핫 파일을 저장가능한 클라우드 멤버 정보를 상기 파일 분산 관리자로 제공하며, 상기 파일 분산 관리자는 상기 클라우드 멤버 정보를 참조하여 상기 다운로드된 파일을 상기 클라우드 멤버들로 전송한다.In this embodiment, the main server, the client server for managing the client, and determines whether the file requested from the client is a hot file, a member manager for managing the cloud members, and the file requested from the client And a file distribution manager for downloading the file from the storage server when the hot file is the hot file. The member manager provides cloud member information capable of storing the hot file to the file distribution manager, and the file distribution manager transmits the downloaded file to the cloud members with reference to the cloud member information.

이 실시예에 있어서, 상기 메인 서버는 상기 클라이언트 서버로부터 요청된 파일이 상기 핫파일이 아닐 때 상기 스토리지 서버에 저장된 파일이 상기 클라이언트에게 전송되도록 제어한다.In this embodiment, the main server controls the file stored in the storage server to be transmitted to the client when the file requested from the client server is not the hot file.

이 실시예에 있어서, 상기 클라이언트는, 클라우드 멤버들로부터 파일을 다운로드하기 위해서 필요한 클라이언트 소프트웨어 프로그램을 저장하는 메모리, 그리고 상기 클라이언트 소프트웨 프로그램을 실행하는 프로세서를 포함한다.In this embodiment, the client includes a memory for storing a client software program necessary for downloading a file from cloud members, and a processor for executing the client software program.

이 실시예에 있어서, 상기 메인 서버는, 소정 시간동안 상기 파일을 요청하는 클라이언트들의 수가 제1 기준값보다 많거나, 소정 시간동안 상기 파일을 다운로드한 클라이언트들의 수가 제2 기준값보다 많거나 또는 상기 파일에 대한 트래픽 이 제3 기준값보다 클 때 상기 요청된 파일을 상기 핫파일로 간주한다.In this embodiment, the main server, the number of clients requesting the file for a predetermined time is greater than the first reference value, the number of clients downloading the file for a predetermined time is greater than the second reference value or the file The requested file is regarded as the hot file when the traffic is greater than a third reference value.

이 실시예에 있어서, 상기 메인 서버는, 상기 클라우드 멤버들에 분산 저장된 파일이 소정 시간 동안 유지되도록 제어한다.In this embodiment, the main server controls to maintain a file stored distributed to the cloud members for a predetermined time.

이 실시예에 있어서, 상기 메인 서버는, 상기 요청된 파일이 초기에 핫파일로 정의된 파일일 때 상기 요청된 파일을 상기 핫파일로 간주한다.In this embodiment, the main server considers the requested file as the hot file when the requested file is initially a file defined as a hot file.

이 실시예에 있어서, 상기 클라이언트에 의해서 요청된 파일은 어플리케이션 프로그램 파일, 게임 프로그램 파일, 텍스트 데이터 파일, 문서 파일, 그림 파일, 음악 파일 및 동영상 파일 중 어느 하나이다.In this embodiment, the file requested by the client is any one of an application program file, a game program file, a text data file, a document file, a picture file, a music file, and a video file.

이와 같은 본 발명의 클라우딩 컴퓨팅 네트워크 시스템은 파일 스토리지에 저장된 파일들을 클라우드 멤버들에게 분산시킴으로써 한정된 자원을 가지고 많은 클라이언트들에게 서비스를 제공할 수 있다.Such a cloud computing network system of the present invention can provide services to many clients with limited resources by distributing files stored in file storage to cloud members.

이하 본 발명의 바람직한 실시예를 첨부된 도면들을 참조하여 상세히 설명한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.

클라우드 컴퓨팅 네트워크(Cloud Computing Network, CCN)란 네트워크 및 스토리지 자원의 가상화를 통해 사용자에게 각종 소프트웨어와 보안 솔루션, 컴퓨팅 능력까지 온디맨드(on-demend) 방식으로 제공하기 위한 네트워크 서비스이다. 이러한 CCN 서비스는 네트워크 효율성을 향상시키고, 트래픽 집중 시에도 속도 저하가 발생하지 않으므로 고품질의 서비스 제공이 가능해진다. 본 발명은 이와 같은 CCN을 적용한 시스템 및 그것의 파일 분산 방법을 제공한다.Cloud Computing Network (CCN) is a network service designed to provide users with software, security solutions and computing power on-demand through virtualization of network and storage resources. The CCN service improves network efficiency, and does not cause a slowdown even when concentrating traffic, thereby providing high quality service. The present invention provides a system applying the CCN and a file distribution method thereof.

도 1은 본 발명의 바람직한 실시예에 따른 클라우딩 컴퓨팅 네트워크 시스템을 보여주는 도면이다.1 illustrates a cloud computing network system in accordance with a preferred embodiment of the present invention.

도 1을 참조하면, 클라우딩 컴퓨팅 네트워크 시스템(100)은 메인 서버(110), 스토리지 서버(120), 네트워크(130), 클라이언트들(141-143) 그리고 클라우드 멤버들(151-153)을 포함한다. 메인 서버(110), 스토리지 서버(120), 클라이언트들(141-143) 및 클라우드 멤버들(151-153)은 인터넷과 같은 통신 회선인 네트워크(130)를 통해 상호 연결된다. 메인 서버(110)와 클라이언트들(141-143) 사이에 연결된 인터넷 회선은 유한한 자원이며, 회선의 용량을 늘리기 위해서 메인 서버(110)를 운영하는 사업자는 IDC(internet data center) 또는 ISP(internet service provider)에게 더 많은 회선 사용 비용을 지불해야만 한다. 그러므로 메인 서버(110)를 운영하는 사업자는 한정된 회선을 가지고 효율적으로 클라이언트들(141-143)에게 서비스를 제공하기 위한 노력이 요구된다.Referring to FIG. 1, the cloud computing network system 100 includes a main server 110, a storage server 120, a network 130, clients 141-143 and cloud members 151-153. do. The main server 110, the storage server 120, the clients 141-143, and the cloud members 151-153 are interconnected via a network 130, which is a communication line such as the Internet. The internet line connected between the main server 110 and the clients 141-143 is a finite resource, and the operator operating the main server 110 to increase the capacity of the line is an internet data center (IDC) or an ISP (internet). You have to pay the service provider more lines. Therefore, an operator operating the main server 110 requires an effort to efficiently provide services to the clients 141 to 143 with a limited line.

스토리지 서버(120)는 어플리케이션 프로그램 파일, 게임 프로그램 파일, 텍스트 데이터 파일, 문서 파일, 그림 파일, 음악 파일, 동영상 파일 및 바코드 파일 등과 같은 대용량 데이터를 제공하는 사업자(콘텐츠 제공자)로부터 제공된 파일들을 저장한다. 스토리지 서버(120)에 저장된 파일들은 메인 서버(110)의 제어에 의해서 클라이언트들(141-143)로 제공될 수 있다.The storage server 120 stores files provided by an operator (content provider) that provides a large amount of data such as an application program file, a game program file, a text data file, a document file, a picture file, a music file, a video file, a barcode file, and the like. . Files stored in the storage server 120 may be provided to the clients 141 to 143 under the control of the main server 110.

메인 서버(110)는 클라이언트들(141-143)의 파일 요청에 응답해서 스토리지 서버(120)에 저장된 파일들이 클라이언트들(141-143)에게 제공되도록 제어한다. 메인 서버(110)는, 네트워크(130)의 한정된 자원을 효율적으로 이용하기 위하여, 스토리지 서버(120)에 저장된 파일들을 클라우드 멤버들(151-153)에게 분산 저장하고, 클라이언트들(141-143)이 스토리지 서버(120) 대신 클라우드 멤버들(151-153)로부터 파일을 다운로드하도록 제어한다.The main server 110 controls the files stored in the storage server 120 to be provided to the clients 141-143 in response to the file request of the clients 141-143. The main server 110 distributes and stores the files stored in the storage server 120 to the cloud members 151-153 in order to efficiently use the limited resources of the network 130, and the clients 141-143. Instead of the storage server 120 controls to download files from the cloud members (151-153).

클라이언트들(141-143)은 퍼스널 컴퓨터를 이용하여 네트워크(130)를 통해 메인 서버(110)에 접속한다. 클라이언트들(141-143)은 메인 서버(110)가 제공 가능한 파일들 중 일부에 대한 다운로드를 요청하고, 메인 서버(110)의 제어에 따라서 스토리지 서버(120) 또는 클라우드 멤버들(151-153)로부터 원하는 파일을 다운로드한다. 클라이언트들(141-143)은 데스크탑 컴퓨터, 노트북과 같은 퍼스널 컴퓨터 뿐만 아니라 PDA(personal digital assistant), 휴대폰 등과 같이 무선 인터넷이 가능한 다양한 휴대용 단말기들(handheld terminal)이 될 수 있다.Clients 141-143 connect to main server 110 via network 130 using a personal computer. The clients 141-143 request download of some of the files that the main server 110 can provide, and under the control of the main server 110, the storage server 120 or the cloud members 151-153. Download the desired file from. The clients 141-143 may be various handheld terminals capable of wireless Internet such as a personal digital assistant (PDA), a mobile phone, etc., as well as a personal computer such as a desktop computer and a notebook.

네트워크(130)를 통하여 메인 서버(110)와 연결되는 클라이언트들(141-143)은 클라우드 멤버들(151-153)로부터 파일을 다운로드하기 위해서 필요한 클라이언트 소프트웨어 프로그램을 저장하는 메모리(미 도시됨)를 포함하며, 상기 클라이언트 소프트웨어 프로그램은 프로세서(미 도시됨)에 의해서 실행된다.Clients 141-143, which are connected to main server 110 via network 130, have a memory (not shown) that stores client software programs necessary for downloading files from cloud members 151-153. And the client software program is executed by a processor (not shown).

클라우드 멤버들(151-153)은 퍼스널 컴퓨터를 이용하여 네트워크(130)를 통해 메인 서버(110)와 연결된다. 클라우드 멤버들(151-153)은 메인 서버(110)의 제어에 따라서 스토리지 서버(120)에 저장된 파일을 다운로드하고, 클라이언트들(141-143)에게 파일을 전송한다.The cloud members 151-153 are connected to the main server 110 via the network 130 using a personal computer. The cloud members 151-153 download a file stored in the storage server 120 under the control of the main server 110, and transmit the file to the clients 141-143.

도 2는 도 1에 도시된 메인 서버(110)의 구성을 보여주는 도면이다.2 is a diagram illustrating a configuration of the main server 110 illustrated in FIG. 1.

도 2를 참조하면, 메인 서버(110)는 클라이언트 관리자(111), 마스터 관리자(112), 멤버 관리자(113) 그리고 파일 분산 관리자(114)를 포함한다. 클라이언트 관리자(110)는, 스토리지 서버(120)에 저장되어 있으며 클라이언트들에게 제공 가능한 파일 리스트를 웹 브라우저(web browser)에 개시한다. 클라이언트들(141-143)은 웹 브라우저의 파일 리스트에 포함된 파일들에 대한 다운로드를 요청한다. 클라이언트 관리자(111)는 파일을 요청하는 클라이언트들(141-143)에 대한 관리를 담당한다. 즉, 클라이언트 관리자(111)는 동일한 파일을 요청하는 클라이언트들의 수, 소정 시간동안 동일한 파일을 다운로드한 클라이언트들의 수 및 파일에 대한 트래픽 등에 따라서 클라이언트들(141-143)로부터 요청된 파일이 핫파일인 지를 판별한다. 클라이언트 관리자(110)는 클라이언트들(141-143)에 의해서 요청된 파일이 핫파일이 아니면 요청된 파일이 스토리지 서버(120)에서 클라이언트들(141-143)로 전송되도록 제어한다. 클라이언트 관리자(110)는 클라이언트들(141-143)로부터 요청된 파일이 핫파일이면 스토리지 서버(120)에 저장된 파일이 클라우드 멤버들(151-153)에게 분산 저장되도록 마스터 관리자(112) 및 멤버 관리자(113)를 제어한다.Referring to FIG. 2, the main server 110 includes a client manager 111, a master manager 112, a member manager 113, and a file distribution manager 114. The client manager 110 discloses a list of files stored in the storage server 120 and available to the clients in a web browser. The clients 141-143 request the download of the files included in the file list of the web browser. The client manager 111 is responsible for managing the clients 141-143 requesting files. That is, the client manager 111 determines that the file requested from the clients 141-143 is a hot file according to the number of clients requesting the same file, the number of clients downloading the same file for a predetermined time, the traffic for the file, and the like. Determine whether The client manager 110 controls the requested file to be transferred from the storage server 120 to the clients 141-143 if the file requested by the clients 141-143 is not a hot file. The client manager 110 stores the master manager 112 and the member manager such that the file stored in the storage server 120 is distributed to the cloud members 151-153 if the file requested from the clients 141-143 is a hot file. Control 113.

멤버 관리자(113)는 클라우드 멤버들(151-153)을 관리한다. 즉, 클라우드 멤버들(151-153) 중 파워 온 상태이고, 네트워크(130)에 접속한 상태이며, 파일을 다운로드 가능한 클라우드 멤버들에 대한 정보를 주기적으로 수집한다. 멤버 관리자(113)는 수집된 클라우드 멤버에 대한 정보를 파일 분산 관리자(114)에 제공한다.The member manager 113 manages cloud members 151-153. That is, the cloud members 151-153 are in a power-on state, connected to the network 130, and periodically collect information on cloud members that can download a file. The member manager 113 provides the file distribution manager 114 with information about the collected cloud members.

파일 분산 관리자(114)는 마스터 관리자(112)의 제어에 따라서 스토리지 서버(120)로부터 핫파일을 다운로드하여 저장하고, 저장된 핫파일을 클라우드 멤버들(151-153)로 분산 전송한다.The file distribution manager 114 downloads and stores a hot file from the storage server 120 under the control of the master manager 112, and distributes the stored hot file to the cloud members 151-153.

마스터 관리자(112)는, 파일 분산 관리자(114)가 스토리지 서버(120)로부터 핫파일을 다운로드하도록 제어하고, 파일 분산 관리자(114)에 의해서 다운로드된 핫파일의 오류 여부를 검사한다.The master manager 112 controls the file distribution manager 114 to download the hot file from the storage server 120, and checks whether the hot file downloaded by the file distribution manager 114 is in error.

메인 서버(110)에 포함된 클라이언트 관리자(111), 마스터 관리자(112), 멤버 관리자(113) 및 파일 분산 관리자(114)는 단일의 관리자로 통합 구성될 수 있다. 또한 클라이언트 관리자(111), 마스터 관리자(112), 멤버 관리자(113) 및 파일 분산 관리자(114) 각각은 소정의 기능을 수행하기 위한 소프트웨어 프로그램을 내장한 컴퓨터로 구성될 수 있으며 서버(server)로 불리울 수 있다.The client manager 111, the master manager 112, the member manager 113, and the file distribution manager 114 included in the main server 110 may be integrated into a single manager. In addition, each of the client manager 111, the master manager 112, the member manager 113, and the file distribution manager 114 may be configured as a computer in which a software program for performing a predetermined function is embedded. May be called.

도 3은 본 발명의 바람직한 실시예에 따른 클라우드 컴퓨팅 네트워크 시스템의 메인 서버에서 파일을 분산하는 방법을 보여주는 플로우차트이다.3 is a flowchart illustrating a method of distributing files in a main server of a cloud computing network system according to a preferred embodiment of the present invention.

도 3을 참조하면, 메인 서버(110)는 클라이언트들(141-143)로부터 파일 요청을 수신한다(310). 이 실시예에서는 클라이언트(141)가 메인 서버(110)에게 스토리지 서버(120)에 저장된 파일(F1)에 대한 다운로드를 요청한 것으로 설명한다.Referring to FIG. 3, the main server 110 receives a file request from the clients 141-143 (310). In this exemplary embodiment, the client 141 requests the main server 110 to download the file F1 stored in the storage server 120.

메인 서버(110)의 클라언트 관리자(111)는 클라이언트(141)에 의해서 요청된 파일(F1)이 핫파일(hot-file)인 지의 여부를 판별한다(312). 핫파일이란 많은 수의 클라이언트들로부터 파일 다운로드 요청이 있었거나 또는 현재 다운로드되고 있는 인기있는 파일을 칭한다. 예를 들어, 클라이언트 관리자(111)는, 5분동안 100 명의 클라이언트들이 파일(F1)에 대한 다운로드를 요청했거나, 20명의 클라이언트들에게 동시에 파일(F1)이 다운로드되고 있는 중일 때 또는 트래픽이 10GB 이상이면 파일(F1)을 핫파일로 분류할 수 있다. 클라이언트(131)로부터 요청된 파일(F1)이 핫파일인 지의 여부를 판별하는 방법은 추후 상세히 설명한다.The client manager 111 of the main server 110 determines whether the file F1 requested by the client 141 is a hot file (312). Hotfiles are popular files that have been file download requests from a large number of clients or are currently being downloaded. For example, the client manager 111 may request that 100 clients request a download of the file F1 for 5 minutes, or that the file F1 is being downloaded to 20 clients at the same time, or the traffic is 10 GB or more. In this case, the file F1 can be classified as a hot file. A method of determining whether the file F1 requested from the client 131 is a hot file will be described in detail later.

클라이언트 관리자(111)는 클라이언트(141)에 의해서 요청된 파일(F1)이 이미 핫파일로 분류되어서 클라우드 멤버들에 분산 저장된 상태이더라도, 클라이언트(141) 뿐만 아니라 다수의 클라이언트들에 의해서 파일(F1)의 다운로드 요청이 급격히 증가하면 파일(F1)을 다른 클라우드 멤버들에게 추가적으로 더 분산 저장한다. 예컨대, 20명의 클라우드 멤버들이 파일(F1)을 저장하고 있는 상태에서, 클라이언트들로부터 파일(F1)에 대한 요청이 급격히 증가하면 추가로 30명의 클라우드 멤버들에게 파일(F1)을 분산 저장할 수 있다. 이와 같은 본 발명에 의하면 클라이언트들은 보다 안정적이고 빠른 속도로 원하는 파일에 대한 다운로드 서비스를 제공받을 수 있다.The client manager 111 stores the file F1 not only by the client 141 but also by a plurality of clients even if the file F1 requested by the client 141 is already classified as a hot file and stored in the cloud members. If the download request increases rapidly, the file F1 is further distributed and stored to other cloud members. For example, while 20 cloud members are storing the file F1, if the request for the file F1 increases rapidly from the clients, the file F1 may be distributed and stored to an additional 30 cloud members. According to the present invention, the clients can be provided with a download service for a desired file at a more stable and faster speed.

클라이언트 관리자(111)는 클라이언트(141)에 의해서 요청된 파일(F1)이 핫파일이 아니면 스토리지 서버(120)에 저장된 파일(F1)이 클라이언트(141)에게 전송되도록 제어한다(324).If the file F1 requested by the client 141 is not a hot file, the client manager 111 controls the file F1 stored in the storage server 120 to be transmitted to the client 141 (324).

클라이언트 관리자(111)는 클라이언트(141)에 의해서 요청된 파일(F1)이 핫파일인 것으로 판별되면, 파일(F1)이 클라우드 멤버들(151-153)에 분산 저장되어 있는 지의 여부를 판별한다(314). 만일 핫파일이 클라우드 멤버들(151-153)에 분산 저장되어 있다면, 클라우드 관리자(111)는 클라이언트(141)에게 파일(F1)이 분산 저장된 클라우드 멤버에 대한 정보를 전송한다(322). 클라우드 멤버에 대한 정보는 멤버 관리자(113)로부터 제공된 것이다. 클라이언트(141)는 클라이언트 관리자(111)로부터 수신된 클라우드 멤버 정보를 참조하여 클라우드 멤버들로부터 원하는 파일(F1)을 다운로드 한다.If the client manager 111 determines that the file F1 requested by the client 141 is a hot file, the client manager 111 determines whether the file F1 is distributed and stored in the cloud members 151-153 ( 314). If the hot file is distributed and stored in the cloud members 151-153, the cloud manager 111 transmits information about the cloud member in which the file F1 is distributed and stored to the client 141 (322). Information about the cloud member is provided from the member manager 113. The client 141 refers to the cloud member information received from the client manager 111 to download a desired file F1 from the cloud members.

만일 파일(F1)이 클라우드 멤버들(151-153)에 분산 저장되어 있지 않다면, 즉, 파일(F1)이 새롭게 핫파일로 분류되었다면, 클라이언트 관리자(111)는 마스터 관리자(112), 멤버 관리자(113) 및 파일 분산 관리자(114)에게 파일(F1)에 대한 분산 저장을 요청한다(316). 멤버 관리자(113)는 클라우드 멤버들(151-153)에 대한 정보를 수집하고, 수집된 정보에 따라서 파일을 전송 가능한 클라우드 멤버들에 대한 정보를 파일 분산 관리자(114)에게 제공한다(318).If the file F1 is not distributed to the cloud members 151-153, that is, if the file F1 is newly classified as a hot file, the client manager 111 is a master manager 112, a member manager ( 113 and the file distribution manager 114 request distributed storage for the file F1 (316). The member manager 113 collects information about the cloud members 151-153, and provides the file distribution manager 114 with information about cloud members capable of transmitting a file according to the collected information (318).

파일 분산 관리자(114)는 스토리지 서버(120)로부터 파일(F1)을 다운로드하고, 파일(F1)을 복수의 블록들로 분할한다. 파일 분산 관리자(114)는 분할된 파일 블록들을 클라우드 멤버들(151-153)로 각각 전송된다. 파일 분산 관리자(114)는 멤버 관리자(113)로부터 제공된 클라우드 멤버 정보에 따라서 파일이 분산 저장될 클라우드 멤버들에게 파일 블록들을 전송한다(320). 이때, 파일(F1)의 크기 및 파일(F1)의 요구도에 따라서 파일(F1)은 복수의 블록들로 분할되지 않고 단일의 파일로 유지되거나 또는 복수의 블록들로 분할될 수 있다. 또한 파일(F1) 또는 파일 블록들은 특정 클라우드 멤버에게만 전송되거나 또는 복수의 클라우드 멤버들(151-153)에게 분산되어 저장될 수 있다. 예컨대, 파일(F1)에 대한 요구도가 높으면 더 많은 수의 클라이언트 멤버들에게 분산 저장되고, 파일(F1)에 대한 요구도가 낮으 면 적은 수의 클라이언트 멤버들에게만 분산 저장될 수 있다.The file distribution manager 114 downloads the file F1 from the storage server 120 and divides the file F1 into a plurality of blocks. The file distribution manager 114 sends the divided file blocks to the cloud members 151-153, respectively. The file distribution manager 114 transmits the file blocks to the cloud members whose files are to be distributed and stored according to the cloud member information provided from the member manager 113 (320). In this case, the file F1 may be maintained as a single file or divided into a plurality of blocks, depending on the size of the file F1 and the degree of demand of the file F1. In addition, the file F1 or the file blocks may be transmitted only to a specific cloud member or distributed and stored in the plurality of cloud members 151-153. For example, if the demand for file F1 is high, it may be distributed to a larger number of client members. If the demand for file F1 is low, it may be distributed to a smaller number of client members.

파일 분산 관리자(114)에 의해서 클라우드 멤버들(151-153)에게 파일 전송이 완료되면, 클라이언트 관리자(111)는 클라이언트(141)에게 파일(F1)이 저장된 클라우드 멤버들에 대한 정보를 전송한다(322). 클라이언트(141)는 클라이언트 관리자(111)로부터 제공된 클라우드 멤버 정보에 따라서 네트워크(130)를 통하여 클라우드 멤버에게 접속하여 원하는 파일(F1)을 다운로드한다. 클라이언트(141)는 클라우드 멤버들(151-153)로부터 파일을 다운로드하기 위해서 필요한 클라이언트 소프트웨어 프로그램을 보유하고 있어야 한다. 클라이언트 소프트웨어 프로그램은 사전에 클라이언트 관리자(111)에 의해서 클라이언트(141)에게 제공될 수 있다.When the file transfer is completed by the file distribution manager 114 to the cloud members 151-153, the client manager 111 transmits information about the cloud members in which the file F1 is stored to the client 141 ( 322). The client 141 downloads the desired file F1 by connecting to the cloud member through the network 130 according to the cloud member information provided from the client manager 111. Client 141 must have a client software program necessary to download files from cloud members 151-153. The client software program may be provided to the client 141 by the client manager 111 in advance.

도 4는 도 3에 도시된 핫파일 판별 방법을 예시적으로 보여주는 플로우차트이다.4 is a flowchart exemplarily illustrating the hot file determination method of FIG. 3.

도 4를 참조하면, 클라이언트 관리자(111)는 클라이언트(141)에 의해서 요청된 파일(F1)이 핫파일로 미리 설정된 파일인 지의 여부를 판별한다(410). 클라이언트 관리자(111)는 특정 일자의 미리 설정된 시간 대에 많은 수의 클라이언트들로부터 요청될 것으로 예상되는 파일들 각각을 핫파일로 미리 설정해 놓을 수 있다. 예를 들어, TV 방송의 특정 드라마는 방영이 종료된 후 가장 많은 다운로드 요청이 수신될 것이라고 예측될 수 있다. 또는 게임 소프트업체에서 새로운 게임 프로그램에 대한 출시를 앞두고 사용자들에게 테스트 버전의 게임 프로그램을 무료 배포하는 경우 사전에 그러한 파일들을 핫파일로 설정해서 미리 클라우드 멤버들(151-153)에게 분산 저장해 놓을 수 있다. 이러한 경우 클라이언트(141)로부터 요청된 파일(F1)은 핫파일로 분류한다(422).Referring to FIG. 4, the client manager 111 determines whether the file F1 requested by the client 141 is a file previously set as a hot file (410). The client manager 111 may preset each of the files expected to be requested from a large number of clients in a preset time zone of a specific date as a hot file. For example, a particular drama of a TV broadcast may be expected to receive the most download requests after the broadcast ends. Alternatively, if a game software company distributes a test version of a game program to users for free before a new game program is released, such files may be set as hot files in advance and distributed to cloud members 151-153 in advance. have. In this case, the file F1 requested from the client 141 is classified as a hot file (422).

클라이언트 관리자(111)는 클라이언트(141)에 의해서 요청된 파일(F1)이 많은 사용자들에 의해서 동시에 요청되고 있는 지를 판별한다(412). 예컨대, 5분 동안 100명의 클라이언트들이 파일(F1)에 대한 다운로드를 요청했다면 파일(F1)은 다수의 클라이언트들에 의해서 지속적으로 요청될 확률이 높은 것으로 판단해서 파일(F1)을 핫파일로 분류한다(422).The client manager 111 determines whether the file F1 requested by the client 141 is being requested by many users at the same time (412). For example, if 100 clients request a download of the file F1 for 5 minutes, the file F1 is classified as a hot file by determining that the file F1 is likely to be continuously requested by a plurality of clients. (422).

또한 클라이언트 관리자(111)는 클라이언트(141)에 의해서 요청된 파일(F1)이 스토리지 서버(120)로부터 동시에 서로 다른 20명의 클라이언트들에게 다운로드되고 있는 중이면(414) 파일(F1)을 핫파일로 분류한다(422). 클라이언트들로부터 요청된 파일이 스토리지 서버(120)로부터 클라이언트들에게 완전하게 다운로드되는 데에는 짧게는 수 초에서 길게는 수 십분까지 소요될 수 있다. 스토리지 서버(120)로부터 동시에 서로 다른 20명의 클라이언트들에게 다운로드되고 있는 중이면 파일(F1)은 핫파일로 분류된다.In addition, the client manager 111 stores the file F1 as a hot file if the file F1 requested by the client 141 is being downloaded from the storage server 120 to 20 different clients at the same time (414). Classify (422). It may take from a few seconds up to tens of minutes for a file requested from clients to be completely downloaded from the storage server 120 to the clients. The file F1 is classified as a hot file if it is being downloaded from the storage server 120 to 20 different clients at the same time.

한편 클라이언트(141)에 의해서 요청된 파일(F1)에 대한 트래픽이 소정의 기준값보다 크면(416), 파일(F1)은 핫파일로 분류된다(422). 네트워크(130)에서의 트래픽은 전송 속도 * 사용 회선으로 계산된다. 예컨대, 100MB의 속도로 10명의 클라이언트들에게 전송되는 트래픽과 10MB의 속도로 100명의 클라이언트들에게 전송되는 트래픽은 동일하다. 즉, 클라이언트들의 수 뿐만 아니라 네트워크의 데이터 전송 속도에 비례해서 트래픽은 상승한다. 그러므로 파일(F1)에 대한 트래픽이 소정의 기준값보다 크면 파일(F1)은 핫파일로 분류된다.On the other hand, if the traffic for the file F1 requested by the client 141 is greater than the predetermined reference value (416), the file F1 is classified as a hot file (422). Traffic in the network 130 is calculated as the transmission rate * use line. For example, the traffic sent to 10 clients at 100 MB is the same as the traffic sent to 100 clients at 10 MB. That is, the traffic rises in proportion to the number of clients as well as the data transmission speed of the network. Therefore, if the traffic to file F1 is larger than a predetermined reference value, file F1 is classified as a hot file.

만일 앞선 판별 조건들(410-416)을 모두 만족하지 않으면 클라이언트(141)에 의해서 요청된 파일(F1)은 노말 파일로 분류된다(420). 그러므로 클라이언트(141)는 스토리지 서버(120)로부터 파일(F1)을 다운로드받게 된다.If all of the foregoing determination conditions 410-416 are not satisfied, the file F1 requested by the client 141 is classified as a normal file (420). Therefore, the client 141 downloads the file F1 from the storage server 120.

판별 조건들(412, 414, 416) 중 어느 하나에 부합해서 파일(F1)이 핫파일로 분류되었더라도 소정 시간이 경과하면 파일(F1)에 대한 클라이언트들(141-143)의 요청이 감소할 수 있다. 즉, 파일(F1)이 판별 조건들(410, 414, 420)을 모두 만족하지 않는 상태로 되더라도 파일(F1)이 소정시간(예를 들면, 3시간)이 경과할 때까지 파일(F1)은 핫파일로 유지되는 것이 바람직하다. 이러한 경우 클라이언트 관리자(111)는 파일이(F1)이 클라우드 멤버에 분산 저장된 상태일 때(418) 요청될 파일(F1)을 핫파일로 분류한다(422).Even if the file F1 is classified as a hot file in accordance with any of the determination conditions 412, 414, 416, the request of the clients 141-143 to the file F1 may decrease after a predetermined time elapses. have. That is, even if the file F1 does not satisfy all of the determination conditions 410, 414, and 420, the file F1 is not used until the predetermined time (for example, three hours) has elapsed. It is desirable to be kept hot. In this case, the client manager 111 classifies the file F1 to be requested as a hot file when the file F1 is stored in a cloud member (418) (422).

클라이언트 관리자(111)는 파일(F1)이 판별 조건들(410, 414, 420)을 모두 만족하지 않는 상태로 소정 시간이 경과하면 클라우드 멤버들(151-153)에 저장된 파일(F1)을 무효화함으로써 추후 클라이언트들(141-143)에 의해서 파일(F1)이 요청되더라도 파일(F1)이 핫파일로 분류되지 않도록 한다.The client manager 111 invalidates the file F1 stored in the cloud members 151-153 when a predetermined time elapses while the file F1 does not satisfy all of the determination conditions 410, 414, and 420. Even if the file F1 is requested by the clients 141-143 later, the file F1 is not classified as a hot file.

이와 같은 본 발명에 의하면, 클라이언트들(141-143)에 의한 다운로드 요청이 많은 파일을 클라우드 멤버들(151-153)에게 분산해서 저장하고, 클라이언트들(141-143)로부터 파일 다운로드 요청이 있을 때 스토리지 서버(120) 대신 클라우드 멤버들(151-153)을 통하여 파일을 제공함으로써, 한정된 네트워크(130) 자원을 효율적으로 사용할 수 있다. 또한 메인 서버(110) 또는 스토리지 서버(120)의 일부 기능 장애가 발생하더라도 서비스 제공 장애를 최소화할 수 있다.According to the present invention as described above, when a file having a large number of download requests by the clients 141-143 is distributed to the cloud members 151-153 and stored therein, and there is a file download request from the clients 141-143. By providing files through the cloud members 151-153 instead of the storage server 120, the limited network 130 resources can be efficiently used. In addition, even if some functional failure of the main server 110 or the storage server 120 may minimize the service providing failure.

본 발명은 TV 방송, 케이블 방송, 영화, 인터넷 강의, 상품 광고, 성인 방송과 같은 동영상 방송, 인터넷 노래방 중계, 이미지캐싱, 실시간 음악듣기, 온라인 게임 다운로드 뿐만 아니라 소프트웨어의 버그 패치와 업그레이드와 같이 단기간에 폭발적으로 이용자의 수가 증가하는 분야에서 파일의 다운로드 품질을 향상시키는데 이용될 수 있다. 이와 같은 본 발명에 의하면, 기업의 비용부담을 최소화하고, 다양한 컨텐츠 및 파일을 장애 없이 신속하게 전달함으로써 산업 발달에 도움이 될 것이다.The present invention can be used for short periods of time, such as bug patches and upgrades of software, as well as TV broadcasting, cable broadcasting, movies, internet lectures, product advertisements, video broadcasting such as adult broadcasting, internet karaoke broadcasting, image caching, real-time music listening, and online game downloads. It can be used to improve the download quality of files in the field where the number of users explosively increases. According to the present invention as described above, it will be helpful to the industrial development by minimizing the cost burden of the enterprise and quickly delivering various contents and files without obstacles.

도 1은 본 발명의 바람직한 실시예에 따른 클라우딩 컴퓨팅 네트워크 시스템을 보여주는 도면이다.1 illustrates a cloud computing network system in accordance with a preferred embodiment of the present invention.

도 2는 도 1에 도시된 메인 서버의 구성을 보여주는 도면이다FIG. 2 is a diagram illustrating a configuration of the main server shown in FIG. 1.

도 3은 본 발명의 바람직한 실시예에 따른 클라우드 컴퓨팅 네트워크 시스템의 메인 서버에서 파일을 분산하는 방법을 보여주는 플로우차트이다.3 is a flowchart illustrating a method of distributing files in a main server of a cloud computing network system according to a preferred embodiment of the present invention.

도 4는 도 3에 도시된 핫파일 판별 방법을 예시적으로 보여주는 플로우차트이다.4 is a flowchart exemplarily illustrating the hot file determination method of FIG. 3.

Claims (16)

클라이언트로부터 파일 요청을 수신하는 단계와;Receiving a file request from a client; 요청된 파일이 핫파일인 지를 판별하는 단계와;Determining whether the requested file is a hot file; 상기 요청된 파일이 핫파일일 때 스토리지 서버에 저장된 파일을 분산할 클라우드 멤버들을 선정하는 단계와;Selecting cloud members to distribute files stored in a storage server when the requested file is a hot file; 선정된 클라우드 멤버들에게 상기 스토리지 서버에 저장된 파일을 전송하는 단계; 그리고Transmitting a file stored in the storage server to selected cloud members; And 상기 클라이언트에게 상기 선정된 클라우드 멤버 정보를 전송하는 단계를 포함하는 것을 특징으로 하는 클라우드 컴퓨팅 네트워크 시스템의 파일 분산 방법.And transmitting the selected cloud member information to the client. 제 1 항에 있어서,The method of claim 1, 상기 요청된 파일이 핫파일일 때, 상기 요청된 파일이 상기 클라우드 멤버들에 저장되어 있는 지를 판별하는 단계를 더 포함하며;When the requested file is a hot file, determining whether the requested file is stored in the cloud members; 상기 요청된 파일을 저장하고 있는 클라우드 멤버 정보를 상기 클라이언트에게 전송하는 것을 특징으로 하는 클라우드 컴퓨팅 네트워크 시스템의 파일 분산 방법.And distributing the cloud member information storing the requested file to the client. 제 1 항에 있어서,The method of claim 1, 상기 요청된 파일이 상기 핫파일인 지를 판별하는 단계는,Determining whether the requested file is the hot file, 소정 시간동안 상기 파일을 요청하는 클라이언트들의 수가 제1 기준값보다 많을 때 상기 요청된 파일을 상기 핫파일로 간주하는 단계를 포함하는 것을 특징으로 하는 클라우드 컴퓨팅 네트워크 시스템의 파일 분산 방법.And considering the requested file as the hot file when the number of clients requesting the file for a predetermined time is greater than a first reference value. 제 1 항에 있어서,The method of claim 1, 상기 요청된 파일이 상기 핫파일인 지를 판별하는 단계는,Determining whether the requested file is the hot file, 소정 시간동안 상기 파일을 다운로드한 클라이언트들의 수가 제2 기준값보다 많을 때 상기 요청된 파일을 상기 핫파일로 간주하는 단계를 포함하는 것을 특징으로 하는 클라우드 컴퓨팅 네트워크 시스템의 파일 분산 방법.And considering the requested file as the hot file when the number of clients downloading the file for a predetermined time is greater than a second reference value. 제 1 항에 있어서,The method of claim 1, 상기 요청된 파일이 상기 핫파일인 지를 판별하는 단계는,Determining whether the requested file is the hot file, 상기 파일에 대한 트래픽이 제3 기준값보다 클 때 상기 요청된 파일을 상기 핫파일로 간주하는 단계를 포함하는 것을 특징으로 하는 클라우드 컴퓨팅 네트워크 시스템의 파일 분산 방법.And considering the requested file as the hot file when the traffic for the file is greater than a third reference value. 제 1 항에 있어서,The method of claim 1, 상기 요청된 파일이 상기 핫파일인 지를 판별하는 단계는,Determining whether the requested file is the hot file, 상기 요청된 파일이 초기에 핫파일로 정의된 파일인 지를 판별하는 단계를 포함하는 것을 특징으로 하는 클라우드 컴퓨팅 네트워크 시스템의 파일 분산 방법.Determining whether the requested file is a file initially defined as a hot file. 제 1 항에 있어서,The method of claim 1, 상기 요청된 파일이 상기 핫파일인 지를 판별하는 단계는,Determining whether the requested file is the hot file, 상기 요청된 파일이 상기 핫파일로 최초 설정된 후 소정 시간이 경과하기 전까지 상기 요청된 파일은 한 파일로 간주되는 것을 특징으로 하는 클라우드 컴퓨팅 네트워크 시스템의 파일 분산 방법.The file distribution method of the cloud computing network system, characterized in that the requested file is considered as one file until a predetermined time elapses after the requested file is initially set as the hot file. 제 1 항에 있어서,The method of claim 1, 상기 클라이언트로부터 요청된 파일은,The file requested from the client, 어플리케이션 프로그램 파일, 텍스트 데이터 파일, 문서 파일, 그림 파일, 음악 파일, 동영상 파일 및 바코드 파일 중 어느 하나인 것을 특징으로 하는 클라우드 컴퓨팅 네트워크 시스템의 파일 분산 방법.A file distribution method of a cloud computing network system, characterized in that any one of an application program file, text data file, document file, picture file, music file, video file and barcode file. 메인 서버와;A main server; 네트워크를 통하여 상기 메인 서버로 파일을 요청하는 클라이언트와;A client requesting a file to the main server through a network; 상기 클라이언트들에게 제공될 파일들을 저장하는 스토리지 서버; 그리고A storage server for storing files to be provided to the clients; And 상기 클라이언트들로부터 요청된 파일을 제공하기 위한 클라우드 멤버를 포함하되;A cloud member for providing a file requested from said clients; 상기 메인 서버는 상기 클라이언트로부터 요청된 파일이 핫파일일 때 상기 스토리지 서버에 저장된 파일을 상기 클라우드 멤버에게 전송하고, 그리고 상기 클 라이언트에게 상기 클라우드 멤버들에 대한 정보를 전송하는 것을 특징으로 하는 클라우드 컴퓨팅 네트워크 시스템.The main server transmits a file stored in the storage server to the cloud member when the file requested from the client is a hot file, and transmits information about the cloud members to the client. Network system. 제 9 항에 있어서,The method of claim 9, 상기 메인 서버는,The main server, 상기 클라이언트를 관리하며, 상기 클라이언트로부터 요청된 파일이 핫파일인 지를 판별하는 클라이언트 서버와;A client server that manages the client and determines whether a file requested from the client is a hot file; 상기 클라우드 멤버들을 관리하는 멤버 관리자; 그리고 A member manager managing the cloud members; And 상기 클라이언트로부터 요청된 파일이 상기 핫 파일일 때 상기 스토리지 서버로부터 상기 파일을 다운로드하는 파일 분산 관리자를 포함하되;A file distribution manager for downloading the file from the storage server when the file requested from the client is the hot file; 상기 멤버 관리자는 상기 핫 파일을 저장가능한 클라우드 멤버 정보를 상기 파일 분산 관리자로 제공하며;The member manager provides cloud member information capable of storing the hot file to the file distribution manager; 상기 파일 분산 관리자는 상기 클라우드 멤버 정보를 참조하여 상기 다운로드된 파일을 상기 클라우드 멤버들로 전송하는 것을 특징으로 하는 클라우드 컴퓨팅 네트워크 시스템.The file distribution manager transmits the downloaded file to the cloud members with reference to the cloud member information. 제 9 항에 있어서,The method of claim 9, 상기 메인 서버는 상기 클라이언트 서버로부터 요청된 파일이 상기 핫파일이 아닐 때 상기 스토리지 서버에 저장된 파일이 상기 클라이언트에게 전송되도록 제어하는 것을 특징으로 하는 클라우드 컴퓨팅 네트워크 시스템.And the main server controls the file stored in the storage server to be transmitted to the client when the file requested from the client server is not the hot file. 제 9 항에 있어서,The method of claim 9, 상기 클라이언트는,The client, 클라우드 멤버들로부터 파일을 다운로드하기 위해서 필요한 클라이언트 소프트웨어 프로그램을 저장하는 메모리; 그리고Memory for storing client software programs necessary for downloading files from cloud members; And 상기 클라이언트 소프트웨 프로그램을 실행하는 프로세서를 포함하는 것을 특징으로 하는 클라우드 컴퓨팅 네트워크 시스템.And a processor executing said client software program. 제 9 항에 있어서,The method of claim 9, 상기 메인 서버는,The main server, 소정 시간동안 상기 파일을 요청하는 클라이언트들의 수가 제1 기준값보다 많거나, 소정 시간동안 상기 파일을 다운로드한 클라이언트들의 수가 제2 기준값보다 많거나 또는 상기 파일에 대한 트래픽이 제3 기준값보다 클 때 상기 요청된 파일을 상기 핫파일로 간주하는 것을 특징으로 하는 클라우드 컴퓨팅 네트워크 시스템.The request when the number of clients requesting the file for a predetermined time is greater than a first reference value, the number of clients downloading the file for a predetermined time is greater than a second reference value, or the traffic for the file is greater than a third reference value. And a treated file as said hot file. 제 13 항에 있어서,The method of claim 13, 상기 메인 서버는,The main server, 상기 클라우드 멤버들에 분산 저장된 파일이 소정 시간 동안 유지되도록 제어하는 것을 특징으로 하는 클라우드 컴퓨팅 네트워크 시스템.The cloud computing network system, characterized in that for controlling to maintain a file stored distributed in the cloud members for a predetermined time. 제 9 항에 있어서,The method of claim 9, 상기 메인 서버는,The main server, 상기 요청된 파일이 초기에 핫파일로 정의된 파일일 때 상기 요청된 파일을 상기 핫파일로 간주하는 것을 특징으로 하는 클라우드 컴퓨팅 네트워크 시스템.And when the requested file is initially defined as a hot file, consider the requested file as the hot file. 제 9 항에 있어서,The method of claim 9, 상기 클라이언트에 의해서 요청된 파일은 어플리케이션 프로그램 파일, 게임 프로그램 파일, 텍스트 데이터 파일, 문서 파일, 그림 파일, 음악 파일 및 동영상 파일 중 어느 하나인 것을 특징으로 하는 클라우드 컴퓨팅 네트워크 시스템.The file requested by the client is any one of an application program file, a game program file, a text data file, a document file, a picture file, a music file and a video file.
KR1020090041122A 2009-05-12 2009-05-12 Cloud computing network system and file distrubuting method of the same KR20100122197A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020090041122A KR20100122197A (en) 2009-05-12 2009-05-12 Cloud computing network system and file distrubuting method of the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090041122A KR20100122197A (en) 2009-05-12 2009-05-12 Cloud computing network system and file distrubuting method of the same

Publications (1)

Publication Number Publication Date
KR20100122197A true KR20100122197A (en) 2010-11-22

Family

ID=43407177

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090041122A KR20100122197A (en) 2009-05-12 2009-05-12 Cloud computing network system and file distrubuting method of the same

Country Status (1)

Country Link
KR (1) KR20100122197A (en)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012134017A1 (en) * 2011-03-31 2012-10-04 (주)케이티 Method and device for distributing data in consideration of resource in cloud storage system
WO2012138296A1 (en) * 2011-04-04 2012-10-11 Nanyang Polytechnic Method and system for storing data in a cloud network
WO2013022173A1 (en) * 2011-08-05 2013-02-14 Neowiz Games Corporation Method for distributing patch file and device thereof
US8495013B2 (en) 2010-12-24 2013-07-23 Kt Corporation Distributed storage system and method for storing objects based on locations
KR101379848B1 (en) * 2013-02-15 2014-04-04 서울대학교산학협력단 Method and apparatus for managing distribution of file to recover original file with at least pre-determined number file shares
US8775870B2 (en) 2010-12-22 2014-07-08 Kt Corporation Method and apparatus for recovering errors in a storage system
US8849756B2 (en) 2011-04-13 2014-09-30 Kt Corporation Selecting data nodes in distributed storage system
KR20140136155A (en) 2013-05-20 2014-11-28 에스케이플래닛 주식회사 Method and apparatus for based information sharing on location in cloud service system system
US8984085B2 (en) 2011-02-14 2015-03-17 Kt Corporation Apparatus and method for controlling distributed memory cluster
US9158460B2 (en) 2011-04-25 2015-10-13 Kt Corporation Selecting data nodes using multiple storage policies in cloud storage system
US9888062B2 (en) 2010-12-24 2018-02-06 Kt Corporation Distributed storage system including a plurality of proxy servers and method for managing objects
WO2020111525A1 (en) * 2018-11-26 2020-06-04 한국과학기술정보연구원 Device and method for sdn and distributed cloud orchestration based on location and load

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8775870B2 (en) 2010-12-22 2014-07-08 Kt Corporation Method and apparatus for recovering errors in a storage system
US8495013B2 (en) 2010-12-24 2013-07-23 Kt Corporation Distributed storage system and method for storing objects based on locations
US9888062B2 (en) 2010-12-24 2018-02-06 Kt Corporation Distributed storage system including a plurality of proxy servers and method for managing objects
US8984085B2 (en) 2011-02-14 2015-03-17 Kt Corporation Apparatus and method for controlling distributed memory cluster
KR101483127B1 (en) * 2011-03-31 2015-01-22 주식회사 케이티 Method and apparatus for data distribution reflecting the resources of cloud storage system
WO2012134017A1 (en) * 2011-03-31 2012-10-04 (주)케이티 Method and device for distributing data in consideration of resource in cloud storage system
US9052962B2 (en) 2011-03-31 2015-06-09 Kt Corporation Distributed storage of data in a cloud storage system
WO2012138296A1 (en) * 2011-04-04 2012-10-11 Nanyang Polytechnic Method and system for storing data in a cloud network
US8849756B2 (en) 2011-04-13 2014-09-30 Kt Corporation Selecting data nodes in distributed storage system
US9158460B2 (en) 2011-04-25 2015-10-13 Kt Corporation Selecting data nodes using multiple storage policies in cloud storage system
WO2013022173A1 (en) * 2011-08-05 2013-02-14 Neowiz Games Corporation Method for distributing patch file and device thereof
KR101379848B1 (en) * 2013-02-15 2014-04-04 서울대학교산학협력단 Method and apparatus for managing distribution of file to recover original file with at least pre-determined number file shares
KR20140136155A (en) 2013-05-20 2014-11-28 에스케이플래닛 주식회사 Method and apparatus for based information sharing on location in cloud service system system
WO2020111525A1 (en) * 2018-11-26 2020-06-04 한국과학기술정보연구원 Device and method for sdn and distributed cloud orchestration based on location and load

Similar Documents

Publication Publication Date Title
KR20100122197A (en) Cloud computing network system and file distrubuting method of the same
US20210144423A1 (en) Dynamic binding for use in content distribution
KR101120572B1 (en) Cloud computing network system and file download method of the same
US8402139B2 (en) Methods and systems for matching resource requests with cloud computing environments
US9876833B2 (en) Cloud-based video delivery
KR101033813B1 (en) Cloud computing network system and file distrubuting method of the same
US20070061282A1 (en) Data network information distribution
TW200404439A (en) Remote dynamic configuration of a web server to facilitate capacity on demand
JP2010020782A (en) Method for transferring information
KR101089509B1 (en) Cloud computing network system and file distrubuting method of the same
JP6301413B2 (en) Data transmission control method and apparatus
KR101195123B1 (en) Cloud computing network system and file distrubuting method of the same
US20200320154A1 (en) A webpage loading method, webpage loading system and server
US11750690B2 (en) Predictive load mitigation and control in a content delivery network (CDN)
US20090222890A1 (en) Method and apparatus for providing streaming service based on p2p and streaming service system using the same
Chen et al. Complexity of cloud-based transcoding platform for scalable and effective video streaming services
KR20110109610A (en) Cloud computing network system and file distribution method of the same
US20100250502A1 (en) Method and apparatus for contents de-duplication
WO2010058215A1 (en) Method and system for content handling
KR20200101502A (en) Cloud computing network system and file distrubuting method of the same
KR101047844B1 (en) Grid system and its operation method using grid dedicated device
KR100969989B1 (en) Method and apparatus for distributing application programs in network
Prasanna et al. An Effective Cloud Downloading Service Using Adaptive Mode Selection Algorithm
Sandhya et al. Dynamic load balancing for video processing system in cloud
CN102165429B (en) Multimedia album publication to media server

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application