KR100719285B1 - Distributed File Management System and File Management Method of Web Storage - Google Patents
Distributed File Management System and File Management Method of Web Storage Download PDFInfo
- Publication number
- KR100719285B1 KR100719285B1 KR1020050026357A KR20050026357A KR100719285B1 KR 100719285 B1 KR100719285 B1 KR 100719285B1 KR 1020050026357 A KR1020050026357 A KR 1020050026357A KR 20050026357 A KR20050026357 A KR 20050026357A KR 100719285 B1 KR100719285 B1 KR 100719285B1
- Authority
- KR
- South Korea
- Prior art keywords
- file
- stored
- user terminal
- checksum
- bandwidth
- Prior art date
- Legal status (The legal status 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 status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63C—SKATES; SKIS; ROLLER SKATES; DESIGN OR LAYOUT OF COURTS, RINKS OR THE LIKE
- A63C5/00—Skis or snowboards
- A63C5/06—Skis or snowboards with special devices thereon, e.g. steering devices
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B62—LAND VEHICLES FOR TRAVELLING OTHERWISE THAN ON RAILS
- B62B—HAND-PROPELLED VEHICLES, e.g. HAND CARTS OR PERAMBULATORS; SLEDGES
- B62B17/00—Accessories or details of sledges
- B62B17/06—Superstructures; Attachments therefor
- B62B17/061—Handles
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B62—LAND VEHICLES FOR TRAVELLING OTHERWISE THAN ON RAILS
- B62B—HAND-PROPELLED VEHICLES, e.g. HAND CARTS OR PERAMBULATORS; SLEDGES
- B62B19/00—Runners for carrying wheeled vehicles to facilitate travel on ice or snow
- B62B19/02—Runners for carrying wheeled vehicles to facilitate travel on ice or snow attachable to wheels
Landscapes
- Engineering & Computer Science (AREA)
- Chemical & Material Sciences (AREA)
- Combustion & Propulsion (AREA)
- Transportation (AREA)
- Mechanical Engineering (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
Abstract
본 발명은 웹 스토리지의 분산 파일관리시스템 및 파일관리방법에 관한 것으로서, 보다 상세하게는 인터넷을 통하여 파일을 업로드 하거나 다운로드 할 수 있는 웹 스토리지에서 대역폭의 여유가 있는 파일서버에 파일을 분산하여 저장함으로써 파일의 송수신 속도를 최적화할 수 있도록 하는 웹 스토리지의 분산 파일관리시스템 및 파일관리방법에 관한 것이다.The present invention relates to a distributed file management system and a file management method of a web storage, and more particularly, by distributing and storing files in a file server having a bandwidth allowance in a web storage capable of uploading or downloading files through the Internet. The present invention relates to a distributed file management system and a file management method of web storage for optimizing a file transmission / reception speed.
본 발명에 따르면 인터넷을 통한 웹 스토리지 시스템에 있어서 다수의 파일서버의 대역폭을 측정하여 가장 송수신 속도가 좋은 파일서버에 파일을 업로드시킬 수 있으며, 또한 특정 파일이 저장된 파일서버의 속도가 낮을 경우 속도가 더 높은 다른 파일서버에 파일을 복사한 후 다운로드를 시켜줌으로써 파일 송수신 속도를 향상시킬 수 있는 효과가 있다.According to the present invention, in a web storage system via the Internet, the bandwidth of a plurality of file servers can be measured and the files can be uploaded to the file server having the best transmission and reception speed. By copying the file to another higher file server and downloading it, the file transfer speed can be improved.
웹 스토리지, 파일 분산 저장, 다운로드, 업로드, 대역폭, 체크섬 Web Storage, File Distributed Storage, Download, Upload, Bandwidth, Checksum
Description
도1은 본 발명의 실시예에 따른 파일관리시스템의 연결상태를 나타낸 구성도.1 is a block diagram showing a connection state of the file management system according to an embodiment of the present invention.
도2는 파일관리시스템의 구성요소를 나타낸 구조도.2 is a structural diagram showing components of a file management system;
도3은 본 발명의 다른 실시예에 따른 파일 업로드 방법을 나타낸 순서도.Figure 3 is a flow chart showing a file upload method according to another embodiment of the present invention.
도4는 본 발명의 다른 실시예에 따른 파일 다운로드 방법을 나타낸 순서도.Figure 4 is a flow chart illustrating a file download method according to another embodiment of the present invention.
본 발명은 웹 스토리지의 분산 파일관리시스템 및 파일관리방법에 관한 것으로서, 보다 상세하게는 인터넷을 통하여 파일을 업로드 하거나 다운로드 할 수 있는 웹 스토리지에서 대역폭의 여유가 있는 파일서버에 파일을 분산하여 저장함으로써 파일의 송수신 속도를 최적화할 수 있도록 하는 웹 스토리지의 분산 파일관리시스템 및 파일관리방법에 관한 것이다.The present invention relates to a distributed file management system and a file management method of a web storage, and more particularly, by distributing and storing files in a file server having a bandwidth allowance in a web storage capable of uploading or downloading files through the Internet. The present invention relates to a distributed file management system and a file management method of web storage for optimizing a file transmission / reception speed.
컴퓨터와 인터넷 기술의 발달로 인하여 가정이나 사무실, 관공서 등에서 대용량의 데이터를 저장하거나 송수신하여야 하는 경우가 빈번히 발생하고 있다. 통 상적으로는 자신의 단말기 내부에 구비된 저장장치(디스켓, 하드디스크)에 데이터 파일을 저장하거나, 이동저장장치를 이용하여 간단한 파일들을 이동시킬 수 있는 기술이 개시되어 있다.Due to the development of computer and internet technology, it is frequently required to store or transmit large amounts of data in homes, offices, and public offices. Generally, a technology for storing a data file in a storage device (diskette, a hard disk) provided inside a terminal of the user or using a mobile storage device to move a simple file is disclosed.
이러한 고정장치 또는 이동장치에 의한 저장방식은 해당 단말기 또는 저장장치가 반드시 존재하여야 저장된 파일을 사용할 수 있으므로, 여행중이나 기타 사무실이 아닌 곳 등에서는 이를 이용할 수 없는 단점이 있었다.The storage method by the fixed device or the mobile device can use the stored file only if the corresponding terminal or the storage device must exist, there was a disadvantage that can not be used in travel or other offices.
이러한 단점을 해결하기 위하여 웹 기반의 스토리지 기술들이 많이 개발되고 있는데, 웹 저장장치 사용자는 웹 저장장치를 마치 개인 컴퓨터의 저장장치에 접근하는 방법과 유사한 방법을 통해 접근하기 때문에, 사용이 쉽고 간결하며 웹브라우저나 독립 소프트웨어 없이 웹 저장장치에 접근할 수 있다는 장점이 있다.To solve these shortcomings, many web-based storage technologies are being developed. Since the web storage user accesses the web storage device in a similar way to the storage device of a personal computer, it is easy and simple to use. The advantage is that you can access web storage without a web browser or independent software.
그러나 게임프로그램, 멀티미디어 파일 등과 같이 대용량의 파일 송수신이 빈번히 일어나면서 데이터 전송량이 급격히 커지고 있으며, 동시 접속자가 폭발적으로 증가하는 경우가 자주 발생하기 때문에, 데이터의 업로드 및 다운로드 과정에서 전송지연이 쉽게 발생하여 전송속도가 늦고, 경우에 따라 데이터의 업로드 및 다운로드 과정에서 데이터가 유실되는 경우가 발생하는 단점이 있다.,However, as the transmission and reception of large files such as game programs and multimedia files frequently occur, the data transmission volume is rapidly increasing, and the number of concurrent users frequently increases explosively, so that transmission delay is easily generated during data upload and download. There is a disadvantage that the transmission speed is slow, and in some cases, data is lost during the upload and download process.
또한 동일한 웹 스토리지에 다수의 사용자가 파일을 업로드하기 때문에 동일한 파일이 다른 사용자 계정에 중복하여 저장되는 경우가 생길 수 있는데, 이는 웹 스토리지의 저장용량을 감소시키는 원인이 될 수 있으므로 동일한 파일의 중복적이 업로드를 방지할 필요성이 생기게 된다.Also, because multiple users upload files to the same web storage, the same file can be duplicated in different user accounts, which can reduce the storage on the web storage. There is a need to prevent uploads.
본 발명은 이러한 문제점을 해결하기 위하여 안출된 것으로서, 사용자 단말기로부터 파일 업로드 또는 다운로드 요청신호가 입력되면, 파일을 저장하는 파일서버의 전송 네트워크 대역폭을 검사하여 가장 여유있는 파일서버를 이용하도록 함으로써 파일 송수신 속도를 향상시킬 수 있는 웹 스토리지의 분산 파일관리시스템 및 파일관리방법을 제공하는 것을 목적으로 한다.The present invention has been made to solve this problem, and when a file upload or download request signal is input from the user terminal, by checking the transmission network bandwidth of the file server for storing the file to use the most comfortable file server to send and receive files It aims to provide distributed file management system and file management method of web storage which can improve speed.
또한 본 발명은 사용자가 업로드를 요청할 때 파일서버에 동일한 파일이 저장되어 있는지를 검사하고, 동일한 파일이 이미 저장되어 있는 경우에는 실제로 파일을 업로드하지 않고 이미 저장된 파일의 위치에 대한 정보만을 사용자 단말기에 전송함으로써 파일 송수신 속도를 향상시킬 수 있는 웹 스토리지의 분산 파일관리시스템 및 파일관리방법을 제공하는 것을 목적으로 한다.In addition, the present invention checks whether the same file is stored in the file server when the user requests an upload, and if the same file is already stored, only the information on the location of the already stored file is uploaded to the user terminal without actually uploading the file. The purpose of the present invention is to provide a distributed file management system and file management method of web storage that can improve file transmission and reception speed by transmitting.
또한 본 발명은 사용자가 파일 다운로드를 요청할 때 파일이 저장된 파일서버의 대역폭을 검사하고, 대역폭의 여유가 없는 경우에는 파일을 복사하여 대역폭의 여유가 있는 다른 파일서버에 저장한 후, 사용자 단말기를 복사한 파일이 있는 파일서버에 접속하게 함으로써 파일 다운로드 속도를 향상시킬 수 있는 웹 스토리지의 분산 파일관리시스템 및 파일관리방법을 제공하는 것을 목적으로 한다.In addition, when the user requests a file download, the present invention checks the bandwidth of the file server where the file is stored, and if the bandwidth is not available, copies the file and stores the file in another file server having the bandwidth. It aims to provide a distributed file management system and file management method of web storage that can improve the file download speed by connecting to a file server with one file.
전술한 문제점을 해결하기 위하여 안출된 본 발명은 인터넷을 통하여 다수의 사용자 단말기와 접속하여 파일을 전송받거나 전송하는 시스템으로서, 상기 사용자 단말기에 전송할 파일 또는 상기 사용자 단말기로부터 전송되는 파일을 저장하는 다수의 파일서버와; 상기 파일서버에 저장된 파일의 목록을 생성하는 파일목록 관 리모듈과; 상기 파일의 목록을 저장하는 파일목록DB와; 상기 파일서버에 저장된 파일 또는 상기 사용자 단말기로부터 업로드 요청된 파일의 일부분을 일정한 단위로 추출하는 MD5(Message Digest 5) 알고리즘을 이용하여 상기 파일의 체크섬(checksum)을 생성하는 체크섬 생성모듈과; 상기 체크섬을 저장하는 체크섬DB와; 상기 사용자 단말기와 상기 파일서버 사이의 전송 네트워크의 대역폭을 감시하는 대역폭 감시모듈과; 상기 사용자 단말기로부터 파일 업로드 요청신호가 입력되면, 상기 체크섬DB를 검색하여 상기 업로드 대상이 되는 파일의 체크섬과 동일한 체크섬이 저장되어 있는지를 판단하고, 동일한 체크섬이 저장되어 있지 않는 경우 상기 사용자 단말기로부터 상기 파일을 전송받아 상기 파일서버에 저장하도록 제어하는 중앙처리장치;를 포함한다.The present invention has been made in order to solve the above-mentioned problems is a system for connecting to a plurality of user terminals via the Internet to receive or transmit files, a plurality of files for transmitting to the user terminal or a file transmitted from the user terminal A file server; A file list management module for generating a list of files stored in the file server; A file list DB for storing a list of the files; A checksum generation module configured to generate a checksum of the file using an MD5 (Message Digest 5) algorithm that extracts a file stored in the file server or a portion of a file requested to be uploaded from the user terminal in a predetermined unit; A checksum DB for storing the checksum; A bandwidth monitoring module for monitoring a bandwidth of a transmission network between the user terminal and the file server; When a file upload request signal is input from the user terminal, the checksum DB is searched to determine whether the same checksum as the checksum of the file to be uploaded is stored. If the same checksum is not stored, the user terminal determines whether the checksum DB is stored. And a central processing unit that receives the file and stores the file in the file server.
상기 중앙처리장치는 동일한 체크섬이 저장되어 있는 경우 상기 사용자 단말기로부터 상기 파일을 전송받지 않고, 상기 동일한 체크섬을 가진 파일이 저장된 파일서버의 위치에 대한 정보를 상기 사용자 단말기에 전송하는 것을 특징으로 한다.When the same checksum is stored, the CPU does not receive the file from the user terminal, and transmits information on the location of the file server in which the file having the same checksum is stored to the user terminal.
상기 파일서버는 상기 파일서버에 저장될 파일의 입력과 출력을 관리하는 파일관리모듈과; 상기 파일을 저장하는 파일DB;를 포함한다.The file server includes a file management module that manages input and output of files to be stored in the file server; And a file DB for storing the file.
상기 사용자 단말기로부터 파일 다운로드 요청신호가 입력되면, 상기 사용자 단말기와 상기 파일서버 사이의 전송 네트워크의 대역폭이 여유가 있는지를 판단하고, 상기 대역폭의 여유가 없는 경우 대역폭의 여유가 있는 파일서버에 상기 다운로드 대상이 되는 파일을 복사하여 저장하는 파일분산 저장모듈;을 추가로 포함하 며, 상기 중앙처리장치는 상기 복사된 파일이 저장된 파일서버의 IP주소(Internet Protocol Address))를 상기 사용자 단말기에 전송하여 다운로드 받을 수 있게 하는 것을 특징으로 한다.When a file download request signal is input from the user terminal, it is determined whether the bandwidth of the transmission network between the user terminal and the file server is sufficient. If the bandwidth is not available, the download is performed to the file server having the bandwidth. And a file distribution storage module for copying and storing a target file, wherein the CPU transmits an IP address (Internet Protocol address) of a file server in which the copied file is stored to the user terminal. Characterized in that it can be downloaded.
또 다른 실시예에 따른 본 발명은 인터넷을 통하여 다수의 사용자 단말기와 접속하여 파일을 전송받거나 전송하는 방법으로서, 파일서버에 저장된 파일의 목록을 생성하여 저장하는 단계와; 상기 파일서버에 저장된 파일의 일부분을 일정한 단위로 추출하는 MD5 알고리즘을 이용하여 상기 파일의 체크섬을 생성하여 저장하는 단계와; 상기 사용자 단말기로부터 파일 업로드 요청신호가 입력되면, 상기 업로드 대상이 되는 파일의 체크섬을 생성하는 단계와; 상기 업로드 대상이 되는 파일의 체크섬과 상기 저장된 파일의 체크섬을 서로 비교하여 동일한 체크섬이 저장되어 있는지를 판단하는 단계와; 동일한 체크섬이 저장되어 있지 않는 경우 상기 사용자 단말기로부터 상기 파일을 전송받아 상기 파일서버에 저장하는 단계와; 상기 저장된 파일의 목록을 갱신하는 단계;를 포함한다.According to another embodiment of the present invention, there is provided a method of receiving or transmitting a file by accessing a plurality of user terminals through the Internet, comprising: generating and storing a list of files stored in a file server; Generating and storing a checksum of the file using an MD5 algorithm that extracts a portion of the file stored in the file server in a predetermined unit; Generating a checksum of the file to be uploaded when a file upload request signal is input from the user terminal; Comparing the checksum of the file to be uploaded with the checksum of the stored file to determine whether the same checksum is stored; If the same checksum is not stored, receiving the file from the user terminal and storing the file in the file server; And updating the list of stored files.
한편 또 다른 실시예에 따른 본 발명은 인터넷을 통하여 다수의 사용자 단말기와 접속하여 파일을 전송받거나 전송하는 방법으로서, 파일서버에 저장된 파일의 목록을 생성하여 저장하는 단계와; 상기 파일서버에 저장된 파일의 일부분을 일정한 단위로 추출하는 MD5 알고리즘을 이용하여 상기 파일의 체크섬을 생성하여 저장하는 단계와; 상기 사용자 단말기로부터 파일 업로드 요청신호가 입력되면, 상기 업로드 대상이 되는 파일의 체크섬을 생성하는 단계와; 상기 업로드 대상이 되는 파일의 체크섬과 상기 저장된 파일의 체크섬을 서로 비교하여 동일한 체크섬이 저 장되어 있는지를 판단하는 단계와; 동일한 체크섬이 저장되어 있는 경우 상기 사용자 단말기로부터 상기 파일을 전송받지 않고, 상기 동일한 체크섬을 가진 파일이 저장된 파일서버의 위치에 대한 정보를 상기 사용자 단말기에 전송하는 단계;를 추가로 포함한다.On the other hand, according to another embodiment of the present invention is a method for receiving or transmitting a file by connecting to a plurality of user terminals via the Internet, comprising: generating and storing a list of files stored in a file server; Generating and storing a checksum of the file using an MD5 algorithm that extracts a portion of the file stored in the file server in a predetermined unit; Generating a checksum of the file to be uploaded when a file upload request signal is input from the user terminal; Comparing the checksum of the file to be uploaded with the checksum of the stored file to determine whether the same checksum is stored; And if the same checksum is stored, not transmitting the file from the user terminal, and transmitting information on a location of a file server in which the file having the same checksum is stored, to the user terminal.
상기 사용자 단말기로부터 파일 다운로드 요청신호가 입력되면, 상기 사용자 단말기와 상기 파일서버 사이의 전송 네트워크의 대역폭이 여유가 있는지를 판단하는 단계와; 상기 대역폭의 여유가 있는 경우 상기 파일서버의 IP주소를 상기 사용자 단말기에 전송하여 다운로드 받을 수 있게 하는 단계;를 추가로 포함한다.Determining whether a bandwidth of a transmission network between the user terminal and the file server is sufficient when a file download request signal is input from the user terminal; And transmitting the IP address of the file server to the user terminal to download the file server if the bandwidth is sufficient.
상기 사용자 단말기로부터 파일 다운로드 요청신호가 입력되면, 상기 사용자 단말기와 상기 파일서버 사이의 전송 네트워크의 대역폭이 여유가 있는지를 판단하는 단계와; 상기 대역폭의 여유가 없는 경우 대역폭의 여유가 있는 파일서버에 상기 다운로드 대상이 되는 파일을 복사하여 저장하는 단계와; 상기 복사된 파일이 저장된 파일서버의 IP주소를 상기 사용자 단말기에 전송하여 다운로드 받을 수 있게 하는 단계;를 추가로 포함한다.Determining whether a bandwidth of a transmission network between the user terminal and the file server is sufficient when a file download request signal is input from the user terminal; Copying and storing the file to be downloaded to a file server having a bandwidth, when the bandwidth is not available; And transmitting the IP address of the file server in which the copied file is stored to the user terminal to download the file.
이하 도면을 참조하여 설명한다.It will be described below with reference to the drawings.
도1은 본 발명의 실시예에 따른 웹 스토리지의 분산 파일관리시스템(이하, '파일관리시스템'이라 함)의 연결상태를 나타낸 구성도이며, 도2는 파일관리시스템의 구성요소를 나타낸 구조도이다. 도1 내지 도2를 참조하여 본 발명의 파일관리시스템을 설명한다.1 is a configuration diagram showing a connection state of a distributed file management system (hereinafter, referred to as a "file management system") of the web storage according to an embodiment of the present invention, Figure 2 is a structural diagram showing the components of the file management system . A file management system of the present invention will be described with reference to FIGS.
파일관리시스템(100)은 언터넷(300)을 통하여 다수의 사용자 단말기(200)와 연결된다. 기본적으로 파일관리시스템(100)은 인터넷을 통한 데이타 저장 서비스를 제공하는 시스템으로서 웹하드, 인터넷하드 등의 용어로 통칭되고 있는 시스템이다. 따라서 사용자 단말기(200)와 접속하여 사용자 인증을 하고, 데이터의 저장과 관리, 비용결제 등을 처리할 수 있는 구성요소를 포함하고 있으나, 이러한 구성요소는 종래 개시된 기술에 사용되는 것과 동일한 것이며 본 발명의 핵심은 아니므로 이에 대한 자세한 설명은 생략한다.The
파일관리시스템(100)은 중앙처리장치(102), 파일목록 관리모듈(104), 파일목록DB(106), 체크섬 생성모듈(108), 체크섬DB(110), 대역폭검사모듈(112), 파일분산 저장모듈(114), 제1파일서버(120), 제2파일서버(130)를 포함하고 있다.The
여기서는 설명의 편의를 위하여 파일서버를 두개로 하여 설명하지만, 실제로는 그 이상으로 이루어지는 것이 바람직하다.Although two file servers are described here for the sake of convenience of explanation, it is preferable that they be made in more than that.
중앙처리장치(102)는 파일관리시스템(100)에 포함된 각종 구성요소를 제어하며, 네트워크 대역폭을 비교하여 가장 상태가 좋은 파일서버를 선택하는 역할을 한다.The
파일목록 관리모듈(104)은 파일서버(120, 130)에 저장된 파일의 목록을 생성하고, 파일목록DB(106)는 생성된 파일목록을 저장한다. 즉, 사용자 단말기(200)로부터 업로드 되어 파일서버(120, 130)에 저장되는 파일의 위치를 디렉토리의 형태로 표시하도록 하는데, 파일목록을 저장하는 수단을 실제 파일을 저장하는 파일서버(120, 130)로부터 독립하여 설치하는 것이 바람직하다. 또한 파일목록 관리모듈 (104)은 기본적으로 MMDBMS(Main Memory DataBase Management System) 플랫폼 안에서 동작한다. MMDBMS는 매우 향상된 DB 처리 속도를 보장하여, 기존의 파일서버(120, 130)에서 파일목록을 열람하기 위해 발생되었던 부하를 최소화할 수 있게 된다. 파일목록 관리모듈(104)은 주기적으로 파일서버(120, 130)에 저장된 파일의 목록을 갱신하고, 최종적으로 파일서버(120, 130)와의 동기화를 맞춘다.The file
체크섬 생성모듈(108)은 파일서버(120, 130)에 저장되어 있는 파일 또는 사용자 단말기(200)로부터 업로드 요청된 파일의 일부분을 일정한 단위로 추출하는 MD5(Message Digest 5) 알고리즘을 이용하여 상기 파일의 체크섬(checksum)을 생성하여 체크섬DB(110)에 저장한다.The
MD5는 길이에 상관없는 하나의 데이터 파일로부터 128비트 메시지 축약을 만들어 데이터 파일의 무결성을 검증하는데 사용되는 알고리즘이다. MD5에 의하면 두개의 데이터 파일의 메시지 축약이 동일한 경우 두개의 파일이 일치하지 않는 경우는 거의 발생하지 않으며, 하나의 파일에서 서로 다른 메시지 축약이 생성되는 경우도 거의 발생하지 않는 것으로 알려져 있다. 따라서 하나의 파일에서 MD5 알고리즘을 통해 생성된 체크섬을 다른 체크섬과 비교함으로써 두개의 체크섬이 각각 생성된 원본 파일이 서로 동일한 것인지를 99.9% 파악할 수 있게 된다.MD5 is an algorithm used to verify the integrity of a data file by creating a 128-bit message abbreviation from one data file of any length. According to MD5, when two data files have the same message abbreviation, the two files rarely coincide, and different message abbreviations are rarely generated in one file. Therefore, by comparing the checksums generated by the MD5 algorithm in one file with the other checksums, it is possible to determine whether 99.9% of the two original checksums are identical to each other.
통상적인 MD5는 파일 전체 내용을 다 스캔해야 하므로 시간이 오래 걸리는 단점이 있지만, 본 발명에서는 수정된 MD5를 사용한다. 즉 파일의 일부분을 추출하여 그 부분에 대해서만 MD5 알고리즘을 적용시켜 체크섬을 생성하는 것이다. 이때에도 파일의 크기에 따라 얼마만큼의 데이터를 가져올지가 다르게 되는데, 파일 의 크기가 작다면 전체 내용을 다 읽어 오겠지만 크다면 듬성듬성 읽어 오게 된다.Conventional MD5 has a disadvantage in that it takes a long time because the entire contents of the file must be scanned, but the modified MD5 is used in the present invention. In other words, a part of the file is extracted and the MD5 algorithm is applied to only that part to generate a checksum. In this case, how much data to import depends on the file size. If the file size is small, the entire contents will be read, but if the file size is large, the data will be read.
체크섬 생성모듈(108)은 데이타 파일이 파일서버(120, 130)에 저장됨과 동시에 저장된 파일의 체크섬을 생성하며, 사용자 단말기(200)로부터 파일의 업로드 요청이 입력될 때에도 업로드 대상이 되는 파일의 체크섬을 생성한다. 혹은 사용자 단말기(200)에서 파일을 업로드할 때 해당 파일의 체크섬을 파일관리시스템(100)으로 전송하도록 설정할 수도 있을 것이다.The
대역폭 검사모듈(112)은 사용자 단말기(200)와 연결된 파일서버(120, 130) 사이의 전송 네트워크 대역폭을 감시한다. 즉 사용자가 다운로드 받는 파일마다 이 파일에 접근하고 있는 사용자의 수를 카운트한다. 만약 특정 파일에 많은 사용자가 다운로드 요청을 하고 있고, 파일서버(120, 130)가 처리할 수 있는 전송양을 초과하게 되어 네트워크 트래픽이 많이 발생하는지를 감시한다.The
파일분산 저장모듈(114)은 사용자 단말기(200)로부터 파일 다운로드 요청신호가 입력되면, 사용자 단말기(200)와 파일서버(120, 130) 사이의 전송 네트워크의 대역폭이 여유가 있는지를 판단하고, 대역폭의 여유가 없는 경우 대역폭의 여유가 있는 파일서버(120, 130)에 다운로드 대상이 되는 파일을 복사하여 저장한다.When the file download request signal is input from the
즉, 제1파일서버(120)에 저장된 파일 중에서 어느 하나를 사용자가 선택하여 다운로드를 요청한 경우에, 제1파일서버(120)에 접속하여 파일을 다운로드하는 사용자가 많아서 여유 대역폭이 많지 않으면 파일분산 저장모듈(114)은 대역폭의 여유가 있는 제2파일서버(130)에 해당 파일을 복사하여 저장한다. That is, when a user selects one of the files stored in the
중앙처리장치(102)는 사용자 단말기(200)에 복사된 파일이 존재하는 제2파일 서버(130)의 위치를 알려주고, 사용자 단말기(200)는 제2파일서버(130)로부터 자신이 원하는 파일을 다운로드 받을 수 있게 되는 것이다. 만약 제2파일서버(130)의 대역폭에 여유가 없다면, 제3, 제4, 제5파일서버(도면 미도시)와 같이 파일관리시스템(100)에 포함된 나머지 파일서버의 대역폭을 검사하여 가장 적합한 파일서버를 선정하게 된다. 이때 파일서버의 대역폭과 함께 여유 스토리지의 크기도 함께 고려하여 복사를 위한 파일서버를 선정하는 것이 바람직하다.The
여유 대역폭을 감시하는 것은 파일관리시스템(100)에 독립적으로 설치된 대역폭 검사모듈(112)이 할 수도 있고, 각각의 파일서버에 별도의 측정장치를 구비하여 개별적으로 자신의 대역폭을 검사하도록 할 수도 있을 것이다. 각각의 파일서버에 측정장치가 개별적으로 설치된 경우에는 중앙처리장치(102)가 모든 대역폭 정보를 취합하여 가장 적합한 파일서버를 선정하도록 할 수 있을 것이다.Monitoring the free bandwidth may be performed by the
제1파일서버(120)와 제2파일서버(130)에는 저장할 파일을 기록하는 제1파일관리모듈(122)과 제2파일관리모듈(132), 파일을 저장하는 제1파일DB(124)와 제2파일DB(134)를 각각 구비한다.The
전술한 바와 같이 제1파일서버(120)와 제2파일서버(130)는 자신의 대역폭을 검사할 수 있는 측정장치가 구비될 수 있다. 또한 파일서버의 갯수는 저장용량, 사용자의 수, 시스템의 상태 등에 따라 다양하게 변화될 수 있다.As described above, the
도3은 본 발명의 다른 실시예에 따른 파일 업로드 방법을 나타낸 순서도이며, 도3을 참조하여 설명한다.3 is a flowchart illustrating a file upload method according to another embodiment of the present invention, which will be described with reference to FIG. 3.
먼저 인터넷(300)을 통하여 접속한 사용자 단말기(200)로부터 파일의 업로드 요청신호가 입력되는지를 판단한다.(S102)First, it is determined whether a file upload request signal is input from the
파일 업로드 요청신호가 입력되면, 업로드 대상이 되는 파일의 체크섬을 생성하여 저장한다.(S104) 이때 사용자 단말기(200)에 생성된 해당 파일의 체크섬을 전송하도록 요청할 수도 있을 것이다.When the file upload request signal is input, a checksum of a file to be uploaded is generated and stored (S104). The
해당 파일의 체크섬이 생성되면, 중앙처리장치(102)는 체크섬DB(110)에 저장된 정보를 호출하여 업로드 대상파일의 체크섬과 비교하여 동일한 체크섬을 가진 파일이 파일관리시스템(100)에 저장되어 있는지를 판단한다.(S106)When the checksum of the file is generated, the
만약 동일한 파일이 저장되어 있지 않다면 대역폭 검사모듈(112)은 파일서버의 네트워크 대역폭을 각각 검사한다.(S108)If the same file is not stored, the
중앙처리장치(102)는 다수의 파일서버 중에서 대역폭의 여유가 가장 큰 파일서버를 선택하여 해당 파일서버의 IP 주소를 추출한다.(S110) 그리고 추출된 IP 주소를 인터넷(300)을 통하여 사용자 단말기(200)에 전송한다.(S112)The
사용자 단말기(200)는 전송된 IP 주소에 해당하는 파일서버에 접속하여 자신이 원하는 파일을 업로드 한다.(S114)The
파일관리모듈(122, 132)은 파일DB(124, 134)에 전송된 파일을 저장하고, 파일목록 관리모듈(104)은 업로드된 파일의 목록을 생성하여 파일목록DB(106)에 저장한다.The file management modules 122 and 132 store files transmitted to the
그리고 파일이 저장된 파일서버의 위치에 대한 정보를 링크시키고, 사용자 단말기(200)에 링크정보를 전송한다.(S118)Then, the information on the location of the file server where the file is stored is linked, and the link information is transmitted to the user terminal 200 (S118).
만약 중앙처리장치(102)의 판단 결과 동일한 데이타 파일이 이미 파일관리시스템(100)에 저장되어 있는 것으로 나타날 경우, 중앙처리장치(102)는 사용자 단말기(200)로부터 파일을 업로드하지 않고, 현재 저장되어 있는 파일서버의 위치에 대한 정보를 사용자 단말기(200)에 전송한다. 따라서 동일한 파일을 중복하여 파일관리시스템(100)에 업로드함으로써 송수신 속도를 저하시키거나 저장용량을 낭비하는 일을 미리 예방할 수 있게 된다.If the
도4는 본 발명의 다른 실시예에 따른 파일 다운로드 방법을 나타낸 순서도이며, 도4를 참조하여 설명한다.4 is a flowchart illustrating a file download method according to another embodiment of the present invention, which will be described with reference to FIG.
먼저 인터넷(300)을 통하여 접속한 사용자 단말기(200)로부터 파일의 다운로드 요청신호가 입력되는지를 판단한다.(S202)First, it is determined whether a file download request signal is input from the
사용자 단말기(200)로부터 파일의 다운로드 요청신호가 입력되면, 중앙처리장치(102)는 파일목록DB(106)에 저장된 파일목록을 호출하여 해당 파일이 어느 파일서버에 저장되어 있는지를 확인한다.(S204)When a file download request signal is input from the
대역폭 검사모듈(112)은 파일이 저장된 파일서버(120, 130)의 대역폭을 검사하고(S206), 중앙처리장치(102)는 검사결과를 바탕으로 파일이 저장된 파일서버(120, 130)의 대역폭이 충분한지를 판단한다.(S208)
만약 대역폭이 충분하지 않아서 파일 전송에 많은 시간이 걸릴 것으로 판단되면, 나머지 파일서버들의 대역폭과 여유 스토리지를 검사한다.(S210)If it is determined that the file transfer takes a long time due to insufficient bandwidth, the bandwidth and free storage of the remaining file servers are checked (S210).
중앙처리장치(102)는 검사결과를 바탕으로 대역폭과 스토리지의 측면에서 가장 여유가 있는 파일서버를 선택하고(S212), 선택된 파일서버에 다운로드 대상이 되는 파일을 복사하여 저장한다.(S214)The
그리고 중앙처리장치(102)는 파일이 복사된 파일서버의 IP 주소를 추출하여 사용자 단말기(200)에 전송한다.(S216, S218)The
사용자 단말기(200)는 전송된 IP 주소를 이용하여 복사된 파일이 저장된 파일서버에 접속하고, 자신이 원하는 파일을 다운로드 받을 수 있게 된다.(S220)The
이상에서 본 발명의 실시예에 따른 웹 스토리지의 분산 파일관리시스템 및 파일관리방법을 설명하였으나 본 발명의 권리범위는 이러한 실시예에 제한되지 않으며, 당업자가 용이하게 변형할 수 있는 범위에도 권리가 미친다.In the above description, the distributed file management system and file management method of the web storage according to the embodiment of the present invention have been described, but the scope of the present invention is not limited to such an embodiment, and a right can be easily modified by those skilled in the art. .
본 발명에 따르면 인터넷을 통한 웹 스토리지 시스템에 있어서 다수의 파일서버의 대역폭을 측정하여 가장 송수신 속도가 좋은 파일서버에 파일을 업로드시킬 수 있으며, 또한 특정 파일이 저장된 파일서버의 속도가 낮을 경우 속도가 더 높은 다른 파일서버에 파일을 복사한 후 다운로드를 시켜줌으로써 파일 송수신 속도를 향상시킬 수 있는 효과가 있다.According to the present invention, in a web storage system via the Internet, the bandwidth of a plurality of file servers can be measured and the files can be uploaded to the file server having the best transmission and reception speed. By copying the file to another higher file server and downloading it, the file transfer speed can be improved.
또한 본 발명에 따르면 파일서버에 저장된 파일의 체크섬을 생성하여 저장하고, 사용자가 업로드하려는 파일과 동일한 파일이 이미 저장되어 있는지를 판단하여 중복된 업로드를 방지하는 효과가 있다.In addition, according to the present invention, it is possible to generate and store a checksum of a file stored in a file server, and determine whether the same file as the file to be uploaded by the user is already stored, thereby preventing duplicate uploads.
Claims (8)
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| KR1020050026357A KR100719285B1 (en) | 2005-03-30 | 2005-03-30 | Distributed File Management System and File Management Method of Web Storage |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| KR1020050026357A KR100719285B1 (en) | 2005-03-30 | 2005-03-30 | Distributed File Management System and File Management Method of Web Storage |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| KR20060104310A KR20060104310A (en) | 2006-10-09 |
| KR100719285B1 true KR100719285B1 (en) | 2007-05-17 |
Family
ID=37634375
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| KR1020050026357A Expired - Fee Related KR100719285B1 (en) | 2005-03-30 | 2005-03-30 | Distributed File Management System and File Management Method of Web Storage |
Country Status (1)
| Country | Link |
|---|---|
| KR (1) | KR100719285B1 (en) |
Cited By (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2012148067A1 (en) * | 2011-04-25 | 2012-11-01 | (주)케이티 | Method and apparatus for distributing and storing a plurality of copies in a cloud storage system |
| US8495013B2 (en) | 2010-12-24 | 2013-07-23 | Kt Corporation | Distributed storage system and method for storing objects based on locations |
| 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 |
| KR101473628B1 (en) | 2013-05-14 | 2014-12-17 | 농협은행(주) | Business files management apparatus |
| US9052962B2 (en) | 2011-03-31 | 2015-06-09 | Kt Corporation | Distributed storage of data in a 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 |
Families Citing this family (10)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR100905694B1 (en) * | 2007-08-02 | 2009-07-03 | 동국대학교 경주캠퍼스 산학협력단 | Vehicle Information Safety Management System |
| WO2009032710A2 (en) | 2007-08-29 | 2009-03-12 | Nirvanix, Inc. | Filing system and method for data files stored in a distributed communications network |
| KR100932645B1 (en) * | 2007-11-23 | 2009-12-21 | 포항공과대학교 산학협력단 | How to Manage Data on a Web Hard System |
| KR101227591B1 (en) * | 2010-12-24 | 2013-02-04 | 뉴21커뮤니티(주) | System for uploading ang downloading mass files |
| CN102624605A (en) * | 2011-04-01 | 2012-08-01 | 北京小米科技有限责任公司 | Data transmission method |
| CN102546836A (en) * | 2012-03-09 | 2012-07-04 | 腾讯科技(深圳)有限公司 | Method, terminal, server and system for uploading files |
| CN103581272A (en) * | 2012-08-08 | 2014-02-12 | 腾讯科技(深圳)有限公司 | File transfer method and device |
| CN103002029B (en) * | 2012-11-26 | 2016-12-21 | 北京百度网讯科技有限公司 | The management method of upper transmitting file, system and client |
| KR102025080B1 (en) | 2013-01-02 | 2019-09-25 | 삼성전자 주식회사 | Storage system and method for adjusting spare area in storage system |
| KR102297477B1 (en) * | 2015-02-17 | 2021-09-02 | 삼성전자주식회사 | Method and apparatus of downloading file |
Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20030204529A1 (en) | 2002-04-24 | 2003-10-30 | Hertling William Edward | File caching method and apparatus |
-
2005
- 2005-03-30 KR KR1020050026357A patent/KR100719285B1/en not_active Expired - Fee Related
Patent Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20030204529A1 (en) | 2002-04-24 | 2003-10-30 | Hertling William Edward | File caching method and apparatus |
Cited By (8)
| 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 |
| US9052962B2 (en) | 2011-03-31 | 2015-06-09 | Kt Corporation | Distributed storage of data in a cloud storage system |
| US8849756B2 (en) | 2011-04-13 | 2014-09-30 | Kt Corporation | Selecting data nodes in distributed storage system |
| WO2012148067A1 (en) * | 2011-04-25 | 2012-11-01 | (주)케이티 | Method and apparatus for distributing and storing a plurality of copies in a cloud storage system |
| US9158460B2 (en) | 2011-04-25 | 2015-10-13 | Kt Corporation | Selecting data nodes using multiple storage policies in cloud storage system |
| KR101473628B1 (en) | 2013-05-14 | 2014-12-17 | 농협은행(주) | Business files management apparatus |
Also Published As
| Publication number | Publication date |
|---|---|
| KR20060104310A (en) | 2006-10-09 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| KR100719285B1 (en) | Distributed File Management System and File Management Method of Web Storage | |
| US11044335B2 (en) | Method and apparatus for reducing network resource transmission size using delta compression | |
| JP5970541B2 (en) | Information processing system, management server group, and server management program | |
| US8447831B1 (en) | Incentive driven content delivery | |
| US6253234B1 (en) | Shared web page caching at browsers for an intranet | |
| US8060613B2 (en) | Resource invalidation in a content delivery network | |
| CN104615666B (en) | Contribute to the client and server of reduction network communication | |
| US6654807B2 (en) | Internet content delivery network | |
| EP2567327B1 (en) | Dynamic binding for use in content distribution | |
| US7085954B2 (en) | Storage system performing remote copying bypassing controller | |
| EP2263208B1 (en) | Content delivery in a network | |
| US20060212542A1 (en) | Method and computer-readable medium for file downloading in a peer-to-peer network | |
| US20040044731A1 (en) | System and method for optimizing internet applications | |
| US11841910B2 (en) | Token-based authentication for a proxy web scraping service | |
| US20030046357A1 (en) | Intelligent content placement in a distributed computing network | |
| CN104714965A (en) | Static resource weight removing method, and static resource management method and device | |
| US20020133597A1 (en) | Global storage system | |
| EP4227828A1 (en) | Web scraping through use of proxies, and applications thereof | |
| US20230018983A1 (en) | Traffic counting for proxy web scraping | |
| CA2970526A1 (en) | Caching in a content delivery framework | |
| EP2164231A1 (en) | Mobile phone optimized online communication | |
| CN105850142A (en) | Content distribution device, content distribution system, content distribution method, and program | |
| Pang et al. | Defragmenting DHT-based distributed file systems | |
| WO2003083612A2 (en) | System and method for optimizing internet applications | |
| Yuan et al. | Web caching performance: How much is lost unwarily? |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A201 | Request for examination | ||
| PA0109 | Patent application |
St.27 status event code: A-0-1-A10-A12-nap-PA0109 |
|
| PA0201 | Request for examination |
St.27 status event code: A-1-2-D10-D11-exm-PA0201 |
|
| E902 | Notification of reason for refusal | ||
| PE0902 | Notice of grounds for rejection |
St.27 status event code: A-1-2-D10-D21-exm-PE0902 |
|
| PG1501 | Laying open of application |
St.27 status event code: A-1-1-Q10-Q12-nap-PG1501 |
|
| T11-X000 | Administrative time limit extension requested |
St.27 status event code: U-3-3-T10-T11-oth-X000 |
|
| R17-X000 | Change to representative recorded |
St.27 status event code: A-3-3-R10-R17-oth-X000 |
|
| T11-X000 | Administrative time limit extension requested |
St.27 status event code: U-3-3-T10-T11-oth-X000 |
|
| E13-X000 | Pre-grant limitation requested |
St.27 status event code: A-2-3-E10-E13-lim-X000 |
|
| P11-X000 | Amendment of application requested |
St.27 status event code: A-2-2-P10-P11-nap-X000 |
|
| P13-X000 | Application amended |
St.27 status event code: A-2-2-P10-P13-nap-X000 |
|
| E701 | Decision to grant or registration of patent right | ||
| PE0701 | Decision of registration |
St.27 status event code: A-1-2-D10-D22-exm-PE0701 |
|
| GRNT | Written decision to grant | ||
| PR0701 | Registration of establishment |
St.27 status event code: A-2-4-F10-F11-exm-PR0701 |
|
| PR1002 | Payment of registration fee |
St.27 status event code: A-2-2-U10-U11-oth-PR1002 Fee payment year number: 1 |
|
| R18-X000 | Changes to party contact information recorded |
St.27 status event code: A-5-5-R10-R18-oth-X000 |
|
| PG1601 | Publication of registration |
St.27 status event code: A-4-4-Q10-Q13-nap-PG1601 |
|
| PN2301 | Change of applicant |
St.27 status event code: A-5-5-R10-R13-asn-PN2301 St.27 status event code: A-5-5-R10-R11-asn-PN2301 |
|
| R18-X000 | Changes to party contact information recorded |
St.27 status event code: A-5-5-R10-R18-oth-X000 |
|
| FPAY | Annual fee payment |
Payment date: 20100225 Year of fee payment: 8 |
|
| PR1001 | Payment of annual fee |
St.27 status event code: A-4-4-U10-U11-oth-PR1001 Fee payment year number: 4 |
|
| R18-X000 | Changes to party contact information recorded |
St.27 status event code: A-5-5-R10-R18-oth-X000 |
|
| R18-X000 | Changes to party contact information recorded |
St.27 status event code: A-5-5-R10-R18-oth-X000 |
|
| R18-X000 | Changes to party contact information recorded |
St.27 status event code: A-5-5-R10-R18-oth-X000 |
|
| PN2301 | Change of applicant |
St.27 status event code: A-5-5-R10-R13-asn-PN2301 St.27 status event code: A-5-5-R10-R11-asn-PN2301 |
|
| FPAY | Annual fee payment |
Payment date: 20150430 Year of fee payment: 12 |
|
| PR1001 | Payment of annual fee |
St.27 status event code: A-4-4-U10-U11-oth-PR1001 Fee payment year number: 9 |
|
| P22-X000 | Classification modified |
St.27 status event code: A-4-4-P10-P22-nap-X000 |
|
| P22-X000 | Classification modified |
St.27 status event code: A-4-4-P10-P22-nap-X000 |
|
| LAPS | Lapse due to unpaid annual fee | ||
| PC1903 | Unpaid annual fee |
St.27 status event code: A-4-4-U10-U13-oth-PC1903 Not in force date: 20190512 Payment event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE |
|
| PC1903 | Unpaid annual fee |
St.27 status event code: N-4-6-H10-H13-oth-PC1903 Ip right cessation event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE Not in force date: 20190512 |
|
| R18-X000 | Changes to party contact information recorded |
St.27 status event code: A-5-5-R10-R18-oth-X000 |