KR20130033557A - File system for n-screen service - Google Patents

File system for n-screen service Download PDF

Info

Publication number
KR20130033557A
KR20130033557A KR1020110097277A KR20110097277A KR20130033557A KR 20130033557 A KR20130033557 A KR 20130033557A KR 1020110097277 A KR1020110097277 A KR 1020110097277A KR 20110097277 A KR20110097277 A KR 20110097277A KR 20130033557 A KR20130033557 A KR 20130033557A
Authority
KR
South Korea
Prior art keywords
area
data
cluster
file system
file
Prior art date
Application number
KR1020110097277A
Other languages
Korean (ko)
Other versions
KR101319465B1 (en
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 KR1020110097277A priority Critical patent/KR101319465B1/en
Publication of KR20130033557A publication Critical patent/KR20130033557A/en
Application granted granted Critical
Publication of KR101319465B1 publication Critical patent/KR101319465B1/en

Links

Images

Classifications

    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Storage Device Security (AREA)

Abstract

PURPOSE: An N-screen file system is provided to reduce traffic according to file synchronization by having a file structure converted by a hash function by cluster. CONSTITUTION: An N-screen file system includes a PBR(Partition Boot Record) area, an FAT(File Allocation Table) area, an root directory area, and a data cluster area. The PBR area stores user account information and a hash value generated by converting data of the PBR area into a hash function by cluster. The FAT area, the root directory area, and the data cluster are encoded and stored by a cluster unit. An encode key value is generated from user information including a disk ID and a User UUID(Universally Unique IDentifier) of the PBR area. The FAT area includes a filed storing application data, a filed storing general data, and filed storing synchronization priority information.

Description

엔스크린용 파일 시스템 {FILE SYSTEM FOR N-SCREEN SERVICE}N-screen file system {FILE SYSTEM FOR N-SCREEN SERVICE}

본 발명은 N-Screen을 구현하는 클라우드 컴퓨팅 환경에서 서버가 이용 단말의 데이터를 동기화함에 있어 최적화된 파일 시스템의 구조에 관한 것이다.
The present invention relates to a structure of a file system optimized for synchronizing data of a user terminal with a server in a cloud computing environment implementing N-Screen.

N-Screen 이란 TV, PC, 태블릿PC, 스마트폰 등 다양한 기기에서 하나의 콘텐츠를 끊김 없이 이용할 수 있게 해주는 서비스를 말한다. 이러한 N-Screen 환경은 콘텐츠를 서버에 저장하고 이용하는 클라우드 컴퓨팅 환경 하에서 구현되는 것이 일반적이고, 이와 같은 N-Screen 서비스를 구현하기 위해서는 각종 단말기와 서버 사이에 많은 동기화 과정이 수반되어야 한다.N-Screen is a service that allows users to seamlessly use a single content on various devices such as TVs, PCs, tablet PCs, and smartphones. Such an N-Screen environment is generally implemented under a cloud computing environment in which content is stored and used in a server. In order to implement such an N-Screen service, many synchronization processes must be involved between various terminals and servers.

그 일 예로, 대한민국 공개특허 10-2010-0003116호에는 위젯 애플리케이션을 N-Screen 서비스에 적용하기 위하여 이기종 단말기 간의 데이터를 동기화하는 방법이 개시되어 있다.As an example, Korean Patent Laid-Open No. 10-2010-0003116 discloses a method of synchronizing data between heterogeneous terminals in order to apply a widget application to an N-Screen service.

그러나, 이와 같은 이기종 단말 간의 데이터 동기화 방법에는 동기화 회수가 증가하여 동기화에 따른 통신량이 많아지는 문제점이 있었다.However, such a data synchronization method between heterogeneous terminals has a problem in that the number of synchronization increases and the amount of communication due to synchronization increases.

이에 따라 본 발명에서는 데이터를 동기화함에 있어 해쉬함수가 적용된 파일시스템을 이용하는바 이하에서는 종래기술의 파일시스템에 대하여 설명하기로 한다.Accordingly, the present invention uses a file system to which a hash function is applied in synchronizing data. Hereinafter, the file system of the related art will be described.

파일시스템(file system)이란, 컴퓨터에서 파일이나 자료를 쉽게 발견 및 접근할 수 있도록 보관 또는 조직하는 체제를 가리키는 것으로, 일반적으로 널리 사용되는 FAT 파일시스템의 구조가 도 1에 도시되어 있다.The file system refers to a system for archiving or organizing files or data on a computer so that they can be easily found and accessed. A structure of a FAT file system which is generally used is illustrated in FIG. 1.

이에 도시된 바와 같이, 종래 File System은 PBR, Reserved, FAT, Root Directory, Data Cluster로 나누어진다.As shown in the drawing, the conventional file system is divided into PBR, Reserved, FAT, Root Directory, and Data Cluster.

이때, PBR은 해당 File System의 Header의 역할을 하며, Disk의 사이즈, Cluster 사이즈, 볼륨명, Cluster의 개수 등의 전체 시스템과 관련된 기본정보를 저장한다.At this time, PBR serves as a header of the corresponding file system and stores basic information related to the entire system such as disk size, cluster size, volume name, and number of clusters.

그리고 Reserved 영역은 Disk 하드웨어의 성능을 위하여 유보된 영역이다.The reserved area is reserved for the performance of the disk hardware.

또한, FAT 영역은 Cluster가 할당되었을 때, 빈 공간과 할당된 공간을 구분하고, 파일이 하나의 Cluster 이상을 점유할 때, 연결된 다음 Cluster의 번호를 기록한다.In addition, the FAT area distinguishes free space from allocated space when a cluster is allocated, and records the number of the next connected cluster when a file occupies more than one cluster.

그리고 Root Directory 영역은 Root Directory에 저장되는 파일의 Entry(파일/Sub Directory 포함)가 저장되며, 보통 고정사이즈로 제공되기 때문에, Root Directory에 저장할 수 있는 파일의 개수에 제한된다.In the Root Directory area, entries (including files / sub directories) of files stored in the Root Directory are stored, and since they are usually provided in a fixed size, the number of files that can be stored in the Root Directory is limited.

또한, Data Cluster 영역은 실제 File Data가 저장되는 영역으로, Cluster 단위로 할당된다. Sub Directory의 정보 또한 Data Cluster영역에 저장된다.In addition, the data cluster area is an area where actual file data is stored and is allocated in a cluster unit. Sub Directory information is also stored in the Data Cluster area.

한편, 도 3A에는 종래의 파일시스템을 이용하여 파일을 검색하는 방법이 흐름도로 도시되어 있고, 도 3B에는 종래 기술에서 파일을 동기화하는 방법이 흐름도로 도시되어 있다.On the other hand, Fig. 3A is a flowchart showing a method for searching for a file using a conventional file system, and Fig. 3B is a flowchart showing a method for synchronizing a file in the prior art.

도 3A에 도시된 바와 같이, 종래 파일시스템에 의한 파일 검색은 모든 File 접근이 PBR 스캔된다(S11).As shown in FIG. 3A, in the file search by the conventional file system, all file accesses are PBR scanned (S11).

그리고 RootDir과 SubDir의 탐색을 통해 파일을 검색한다(S13, S15).The file is searched through the search of RootDir and SubDir (S13, S15).

다음으로, FAT스캔을 통한 Cluster로 접근하고(S17, S19), Cluster가 연견되었는지 여부를 판별하여 파일을 읽는다(S21).Next, access to the cluster through FAT scan (S17, S19), and determines whether the cluster is linked to read the file (S21).

한편, 도 3B에 도시된 바와 같이, 파일을 동기화하는 경우, 전술한 바와 같은 파일 읽기 과정(S11 내지 S21)을 통해 파일의 변경내용을 추적한다(S31). 즉, 파일의 변경을 RootDir과 SubDir의 탐색으로 마지막 변경시각, 파일사이즈 등을 통하여 인지한다.On the other hand, as shown in Figure 3B, when the file is synchronized, changes of the file are tracked through the file reading process (S11 to S21) as described above (S31). That is, the change of the file is recognized through the last modification time, the file size, etc. by searching for RootDir and SubDir.

이후, 추적된 변경사항은 서버로 전송되고(S33), 서버의 전송 경로에 대응하는 경로의 파일을 동일한 파일 읽기/쓰기의 과정으로 동기화한다(S35).Then, the tracked change is transmitted to the server (S33), and the file of the path corresponding to the transmission path of the server is synchronized in the process of the same file read / write (S35).

그리고 위와 같은 동기화 과정을 동기화할 파일이 모두 동기화될 때까지 반복 수행한다(S37).Then, the above synchronization process is repeated until all the files to be synchronized are synchronized (S37).

한편, 대한민국 공개특허 10-2008-0006558에는 파일시스템을 동기화하는 방법이 기재되어 있으나, 이는 파일시스템 자체를 동기화하는 것이고, 파일시스템을 이용하여 저장된 파일을 동기화하는 것이 아니므로, 이를 N-Screen 환경에서 단말기의 파일을 동기화하는데 적용할 수는 없다.On the other hand, Korean Patent Publication No. 10-2008-0006558 discloses a method of synchronizing a file system, which is to synchronize the file system itself, and not to synchronize the stored file using the file system, this is the N-Screen environment Is not applicable for synchronizing files on a terminal.

또한, 종래 기술에서도 데이터를 해쉬함수로 변환하거나 암호화하여 사용하는 기술은 널리적용되고 있으나, 이들 종래기술은 File 단위로 변환 또는 암호화가 적용되므로 N-Screen 환경에 사용 데이터량을 줄이거나 보안을 강화하는 효과를 낼 수 없다.In addition, in the prior art, a technique of converting or encrypting a data into a hash function or encrypting the data is widely applied. However, since the conventional technology converts or encrypts data in units of files, the amount of used data is reduced or security is enhanced in the N-screen environment. Can not make the effect.

기존 File System을 N-Screen 플랫폼에 차용하여 사용하거나, 단말에 기포함된 File System을 직접 사용할 시에는 다음의 문제점을 가진다.When using an existing file system by using the N-Screen platform or directly using a file system included in the terminal, the following problems are encountered.

RootDir, SubDir의 탐색을 통한 변경파일의 검색 과정은 전체 File System을 대상으로 하기 때문에, 검색시간이 길다. 또한, 파일 변경을 검사하기 위하여 해쉬값을 직접 산출하는 데 걸리는 시간은 파일사이즈에 비례하기 때문에 처리 지연을 유발한다.The search process of modified files by searching RootDir and SubDir targets the entire file system, so the search time is long. In addition, the time taken to directly calculate the hash value to check for file changes causes a processing delay because it is proportional to the file size.

단말에 기포함된 File System을 직접 사용할 시에는 사용자 데이터를 외부의 불법적인 접근으로부터 보호할 수 없다. 파일별로 그 내용을 암호화하더라도, 파일명과 설치된 프로그램들의 목록이 드러나게 된다.
When using the file system included in the terminal directly, user data cannot be protected from illegal access. Even if the contents are encrypted by file, the file name and the list of installed programs are revealed.

대한민국 공개특허 10-2010-0003116호Republic of Korea Patent Publication No. 10-2010-0003116 대한민국 공개특허 10-2008-0006558호Republic of Korea Patent Publication No. 10-2008-0006558

본 발명은 전술한 바와 같은 문제점을 해결하기 위한 것으로, 효과적인 N-Screen 환경을 구현하기 위하여, 단말기의 데이터가 주기적으로 동기화됨에 있어 데이터 량을 줄이고 보안이 강화된 파일 시스템을 제공하는 것이다.
The present invention is to solve the problems described above, to provide an effective N-Screen environment, to provide a file system with a reduced data amount and enhanced security in the data of the terminal is periodically synchronized.

이와 같은 본 발명은 다수의 단말기와 서버를 포함하여 구성되어, 상기 단말기 중 어느 하나에서 실행된 애플리케이션의 데이터를 서버에 저장하고, 다른 단말기에서 동일 애플리케이션을 실행하는 경우, 상기 서버에 저장된 데이터를 상기 다른 단말기에 제공하여, 다수의 단말기를 하나의 단말기와 같이 사용할 수 있도록, 단말기와 서버 간의 데이터를 동기화하는 방법 적용되는 파일 시스템에 있어, PBR 영역, FAT 영역, Root Directory 영역 및 Data Cluster 영역을 포함하여 구성되고: 상기 PBR 영역에는, 사용자 계정정보 및 상기 PBR 영역의 데이터를 클러스터 별로 해쉬 함수로 변환한 해쉬값이 포함되어 저장된다.As described above, the present invention includes a plurality of terminals and a server, and stores data of an application executed in any one of the terminals in a server, and when the same application is executed in another terminal, the data stored in the server. A method of synchronizing data between a terminal and a server to be provided to another terminal so that a plurality of terminals can be used as one terminal, the file system being applied includes a PBR area, a FAT area, a root directory area, and a data cluster area. The PBR area includes a hash value obtained by converting user account information and data of the PBR area into a hash function for each cluster.

이때, 상기 FAT 영역, Root Directory 영역 및 Data Cluster 영역은, 클러스터 단위로 암호화되어 저장될 수도 있다.In this case, the FAT area, the root directory area and the data cluster area may be encrypted and stored in cluster units.

또한, 상기 암호화 키 값은, PBR 영역의 UserUUID 와 DiskID를 포함하는 사용자 정보로부터 생성된 값일 수도 있다.In addition, the encryption key value may be a value generated from user information including UserUUID and DiskID of the PBR area.

그리고 상기 FAT 영역은, 애플리케이션 데이터가 저장되는 필드, 일반 데이터가 저장되는 필드 그리고 동기화 우선순위 정보를 저장하는 필드를 포함하여 구성될 수도 있다.The FAT area may include a field storing application data, a field storing general data, and a field storing synchronization priority information.

또한, 상기 FAT 영역 및 Root Directory 영역에는, 상기 FAT 영역 및 Root Directory 영역에 저장된 클러스터별 데이터를 해쉬 함수로 변환한 해쉬값이 포함되어 저장될 수도 있다.In addition, the FAT area and the root directory area may include a hash value obtained by converting cluster-specific data stored in the FAT area and the root directory area into a hash function.

그리고 상기 FAT영역에는, Data Cluster 영역의 데이터를 클러스터 별로 해쉬함수를 이용하여 변환한 해쉬값이 저장될 수도 있다.In the FAT area, a hash value obtained by converting data in the Data Cluster area by using a hash function for each cluster may be stored.

본 발명에 의하면, 단말기의 데이터가 주기적으로 동기화되도록 하여, 단말기의 무선통신 가능 여부가 N-Screen 구현에 미치는 영향을 최소화할 수 있는 엔스크린용 파일 시스템을 제공하면서도, 클러스터 별로 해시함수에 의해 변환된 파일 구조를 가지므로 N-Screen 시스템 구현에 있어 파일 동기화에 따른 통신량이 줄어드는 효과가 있다.According to the present invention, the data of the terminal is periodically synchronized to provide a screen system for the N-screen that can minimize the effect of whether or not the wireless communication of the terminal on the N-Screen implementation, while converting by the hash function for each cluster Since the file structure is reduced, the traffic volume due to file synchronization is reduced in N-Screen system implementation.

또한, 본 발명은 데이터가 사용자 계정별로 각기 다른 키 값으로 암호화되어 저장되므로 보안이 강화된 엔스크린용 파일 시스템을 제공하는 효과가 있다.
In addition, the present invention has the effect of providing a security enhanced N-screen file system because the data is encrypted and stored with a different key value for each user account.

도 1은 종래 일반적인 파일시스템의 구조를 도시한 개념도.
도 2a 내지 도 2b는 종래 파일 시스템을 이용하여 파일을 검색하고 동기화 하는 방법을 도시한 흐름도.
도 3은 본 발명에 의한 파일시스템의 구체적인 실시예의 구조를 도시한 개념도.
도 4는 본 발명에 의한 파일 동기화 방법의 구체적인 실시예를 도시한 흐름도.
1 is a conceptual diagram showing the structure of a conventional general file system.
2A-2B are flow diagrams illustrating a method for searching and synchronizing files using a conventional file system.
3 is a conceptual diagram showing the structure of a specific embodiment of a file system according to the present invention;
4 is a flowchart illustrating a specific embodiment of a file synchronization method according to the present invention.

이하에서는 먼저 N-Screen 환경의 특징을 살피고, 본 발명에 의한 파일 동기화 방법의 구체적인 실시예를 첨부된 도면을 참조하여 상세하게 설명하기로 한다.Hereinafter, the characteristics of the N-Screen environment will be described first, and a specific embodiment of a file synchronization method according to the present invention will be described in detail with reference to the accompanying drawings.

N-Screen 플래폼 소프트웨어는 사용자의 단말이동에 대비하여 빠르게 서버 데이터와 주기적으로 동기화를 처리해야 한다.N-Screen platform software must handle synchronization with server data quickly in preparation for user's mobile device.

또한, 동기화 수행과정에서 발생되는 많은 파일의 생성은 예외 상황처리를 복잡하게 만든다.Also, the creation of many files generated during synchronization complicates exception handling.

그리고 다량의 파일생성 및 삭제로 인한 처리 성능이 저하된다.In addition, processing performance decreases due to the creation and deletion of a large amount of files.

한편, N-Screen의 어플리케이션은 사용자에 따른 ID를 갖고 이에 따라 서버에 저장된 데이터를 이용하여 복원 능력을 갖는다.On the other hand, the application of N-Screen has an ID according to the user and thus has a restoration capability using the data stored in the server.

그리고 하나의 애플리케이션은 등록된 Market에 따라 고유한 ID를 부여받고 네트워크를 통해 언제든지 복원할 수 있다.And one application is given a unique ID according to the registered market and can be restored at any time through the network.

또한, 애플리케이션 데이터는 변경되지 않으므로 동기화시 클라이언트가 서버로 애플리케이션 데이터를 전송할 필요가 없다.In addition, the application data does not change, so the client does not need to send the application data to the server during synchronization.

그리고 N-Screen 초기화면에서 애플리케이션 이름/아이콘/간략한 설명만을 필요로한다.Only the application name / icon / short description is required on the N-Screen initial screen.

또한, 실제 설치된 애플리케이션 중 대부분은 빈번히 수행되지 않는 사용상의 특징을 갖는다.In addition, most of the actually installed applications have a usage feature that is not frequently performed.

이미 대부분의 데이터는 서버에 존재하고, 사용자에게 유용한 대부분의 데이터는 주로 클라우드 환경이나 기타 서버에 저장된다.Already most of the data resides on servers, and most of the data that is useful to users is stored primarily in cloud environments or other servers.

로컬에 저장된 적은 양의 데이터만이 실제 동기화 대상이 된다.Only a small amount of data stored locally can be the target of actual synchronization.

이하에서는 본 발명에 의한 파일 동기화 방법의 구체적인 실시예를 첨부된 도면을 참조하여 상세하게 설명하기로 한다.Hereinafter, a specific embodiment of a file synchronization method according to the present invention will be described in detail with reference to the accompanying drawings.

본 발명에 의한 파일 시스템은, 도 4에 도시된 바와 같이, 일반적인 파일시스템과 같이 PBR, FAT, Root Directory, Data Cluster 영역을 포함하여 구성된다.As illustrated in FIG. 4, the file system according to the present invention includes a PBR, a FAT, a root directory, and a data cluster region as in a general file system.

PBR 영역은 해당 File System의 Header의 역할을 하며, Disk의 사이즈, Cluster 사이즈, 볼륨명, Cluster의 개수 등의 전체 시스템과 관련된 기본정보를 저장한다.The PBR area acts as a header of the file system and stores basic information related to the entire system such as disk size, cluster size, volume name, and number of clusters.

이에 더하여, 본 발명에 의한 PBR영역에는 사용자 계정정보(암호화 키의 씨드값) 및 상기 PBR 영역을 구성하는 각 클러스터에 대한 해쉬값이 저장된다. In addition, the PBR area according to the present invention stores user account information (seed value of the encryption key) and hash values for each cluster constituting the PBR area.

한편, FAT 영역은 애플리케이션과 일반 데이터를 구분할 수 있는 필드 및 동기화 우선순위를 구분하는 필드를 포함하여 구성된다.On the other hand, the FAT area includes a field for distinguishing applications and general data and a field for distinguishing synchronization priority.

애플리케이션은 데이터가 거의 변하지 않기 때문에 UUID(Universally unique identifier)만을 교환함으로써 데이터의 비교 및 서버로부터의 재다운로드를 처리할 수 있다. Applications can handle comparisons of data and re-downloads from the server by exchanging only universally unique identifiers (UUIDs) because the data rarely changes.

한편, 일반 Data의 경우에는 해쉬 함수를 변환되어 저장되고, 이에 따라 동기화 시점에 별도의 해쉬 처리를 할 필요가 없어진다. On the other hand, in the case of general data, the hash function is converted and stored, thereby eliminating the need for a separate hash process at the time of synchronization.

그리고 상기 동기화 우선순위 필드에는 동기화 우선순위가 저장되는데, 초기 동기화 시 필요한 부분과 사용자 요구에 따라 동기화할 수 있는 요소를 구분함으로써 동기화 시간을 분산시켜 보다 빠른 동기화를 가능하게 한다.In addition, the synchronization priority field stores synchronization priority. The synchronization priority field is divided into elements that can be synchronized according to a user's request and necessary parts for initial synchronization, thereby distributing synchronization time to enable faster synchronization.

한편, 상기 Root Directory 영역, 상기 FAT 영역 및 Data Cluster 영역은 클러스터 단위로 암호화되어 저장된다.Meanwhile, the root directory area, the FAT area, and the data cluster area are encrypted and stored in cluster units.

즉, 상기 Root Directory 영역, 상기 FAT 영역 및 Data Cluster 영역의 데이터는 클러스터 단위로 암호화되어 저장된 후, 상기 Root Directory 영역 및 상기 FAT 영역에는 암호화된 상기 Root Directory 영역 및 상기 FAT 영역의 데이터에 대한 해쉬값이 각각 저장된다.That is, the data of the root directory area, the FAT area, and the data cluster area are encrypted and stored in cluster units, and then hash values of the encrypted root directory area and the FAT area data are stored in the root directory area and the FAT area. Are stored respectively.

그리고 상기 FAT 영역에는 암호화된 상기 Data Cluster 영역의 각 클러스터에 대한 해쉬값이 저장된다.In the FAT area, a hash value for each cluster of the encrypted Data Cluster area is stored.

이때, 상기 암호화에 사용되는 키 값은 씨드값을 사용자 계정정보와 관련된 값을 갖도록 설정된다. 즉, PBR의 UserUUID 와 DiskID 를 시스템 내부에서 산술적 가공을 거쳐 암호화 키로 사용된다.At this time, the key value used for encryption is set to have the seed value associated with the user account information. That is, UserUUID and DiskID of PBR are used as encryption key after performing arithmetic processing in system.

또한. 상기 암호화의 방식은 대칭형 암호화방식이 적용되는 것이 바람직하다. Also. The encryption method is preferably a symmetric encryption method.

이하에서는 본 발명에 의한 도 6을 참조하여 본 발명에 의한 데이터 동기화의 구체적인 실행과정을 상세히 설명하기로 한다.Hereinafter, a detailed execution process of data synchronization according to the present invention will be described in detail with reference to FIG. 6 according to the present invention.

먼저, 본 발명에 의해 파일을 생성하는 과정을 살펴보면, 동기화과정은 두 가지 이벤트에 의해 발생된다.First, referring to the process of generating a file according to the present invention, the synchronization process is generated by two events.

첫 번째는 사용자의 파일 요청에 의한 경우이고, 두 번째는 서버와 단말기 간에 주기적으로 실행되는 동기화 과정이다. The first is a case of a file request from a user, and the second is a synchronization process that is periodically executed between a server and a terminal.

물론, 본 발명의 주요한 동기화 과정은 두 번째인 서버와 단말기 간의 주기적인 동기화 과정이다.Of course, the main synchronization process of the present invention is the second synchronization process between the server and the terminal.

먼저, 사용자의 파일 요청에 의한 경우를 살펴보면, 사용자로부터 요청된 파일이 이미 저장된 파일과 동일한지를 확인하고, 저장되지 않은 경우에 동기화 과정을 수행한다(S110).First, referring to the case by the file request of the user, it is checked whether the requested file from the user is the same as a file already stored, and performs a synchronization process if not stored (S110).

이후, 요청된 파일 데이터가 애플리케이션인지 여부를 판별한다(S120).Thereafter, it is determined whether the requested file data is an application (S120).

그리고 상기 요청된 파일이 애플리케이션인 경우, 상기 애플리케이션의 UUID를 서버로 전송하여, 해당 애플리케이션 데이터를 전송받아 동기화를 수행한다(S130).When the requested file is an application, the UUID of the application is transmitted to a server, and the corresponding application data is received to perform synchronization (S130).

한편, 상기 120 단계의 판단결과 상기 요청된 파일이 애플리케이션이 아닌 경우, 서버는 동기화 순서를 확인하고(S150), 동기화 순서가 선 순위인 경우 해당 클러스터 데이터를 단말기로 전송하여 동기화를 수행한다(S160).On the other hand, if the requested file is not an application as a result of the determination of step 120, the server checks the synchronization order (S150), and if the synchronization order is a priority, transmits the corresponding cluster data to the terminal to perform synchronization (S160). ).

이때, 파일 동기화에 있어, 하나의 클러스터단위를 기록한 이후에는 해쉬값을 생성하여 FAT 영역에 기록한다.At this time, in file synchronization, after recording one cluster unit, a hash value is generated and recorded in the FAT area.

이후, 상기 제 130 단계, 제 140 단계 및 제 150 단계를 수행한 이후에는 단말기의 주기적인 동기화 과정을 수행한다.Thereafter, after performing steps 130, 140, and 150, a periodic synchronization process of the terminal is performed.

이하에서는 서버와 단말기 간에 주기적으로 실행되는 동기화 과정을 설명하도록 한다.Hereinafter, a synchronization process that is periodically executed between the server and the terminal will be described.

서버와 단말기 간에 주기적인 동기화는, 먼저 단말기에 저장된 파일의 PBR 영역의 해쉬함수로 변환되어 저장된 파일 시스템의 기본정보를 독출하여 서버로 전송하고 상기 서버는 이를 비교하여 파일의 변경 여부를 판별한다(S210). 이에 따라 전체적인 파일 시스템의 기본정보를 적은 데이터량으로 빠르게 독출할 수 있다.Periodic synchronization between the server and the terminal is first converted into a hash function of the PBR area of the file stored in the terminal to read the basic information of the stored file system and transmitted to the server and the server compares it to determine whether the file has changed ( S210). Accordingly, basic information of the entire file system can be quickly read with a small amount of data.

이후, 상기 파일이 변경되지 않은 경우, 파일 동기화 과정을 종료하고, 상기 파일이 변경된 경우, 상기 FAT 영역의 클러스터별로 1개씩 존재하는 해쉬 변환 데이터를 서버로 전송한다(S220).Thereafter, if the file is not changed, the file synchronization process is terminated, and if the file is changed, hash conversion data existing for each cluster of the FAT area is transmitted to the server (S220).

이후, 서버는 전송된 클러스터별 해쉬함수 변환데이터를 비교하여 변경된 클러스터를 판별한다(S240). Thereafter, the server compares the transmitted hash function conversion data for each cluster to determine the changed cluster (S240).

이에 따라 전체 파일의 변경 여부 및 변경된 부분을 짧은 시간 안에 적은 통신량으로 판별할 수 있다. 즉, 한번에 204개의 클러스터 단위로 변경여부를 추적할 수 있다.Accordingly, whether or not the entire file has been changed and the changed part can be determined with a small amount of communication in a short time. That is, it is possible to track whether or not changes are made in units of 204 clusters at a time.

이후, 해쉬 변환 데이터가 상이한 부분이 있다면, 전술한 제 120 단계 내지 제 150 단계를 통해 동기화 과정을 수행한다.Thereafter, if there are different portions of the hash transform data, the synchronization process is performed through the above-described steps 120 to 150.

즉, 변경된 데이터를 파악하여, 변경된 데이터가 애플리케이션인 경우, UUID를 전송하여 서버로부터 애플리케이션을 재다운로드 받고, 일반 데이터인 경우 클러스터 단위의 전송을 통해 동기화를 수행한다.That is, the changed data is identified, and when the changed data is an application, the UUID is transmitted to download the application again from the server, and in the case of general data, synchronization is performed through cluster units.

그리고 이와 같은 동기화 과정을 동기화 대상 클러스터 모두에 대하여 반복하여 수행한다(S250).The synchronization process is repeated for all the synchronization target clusters (S250).

한편, 초기 동기화에서 제외되는 애플리케이션과 우선순위가 낮은 데이터의 경우에는 사용자의 해당 파일 요청시 실시간으로 동기화를 진행하게 된다. On the other hand, applications that are excluded from the initial synchronization and low-priority data are synchronized in real time when a user requests a corresponding file.

본 발명의 권리는 위에서 설명된 실시예에 한정되지 않고 청구범위에 기재된 바에 의해 정의되며, 본 발명의 분야에서 통상의 지식을 가진 자가 청구범위에 기재된 권리범위 내에서 다양한 변형과 개작을 할 수 있다는 것은 자명하다.The rights of the present invention are not limited to the embodiments described above, but are defined by the claims, and those skilled in the art can make various modifications and adaptations within the scope of the claims. It is self-evident.

본 발명은 N-Screen을 구현하는 클라우드 컴퓨팅 환경에서 서버가 이용 단말의 데이터를 동기화하는 방법에 관한 것으로, 본 발명에 의하면, 단말기의 데이터가 주기적으로 동기화되도록 하여, 단말기의 무선통신 가능 여부가 N-Screen 구현에 미치는 영향을 최소화할 수 있는 엔스크린용 파일 시스템을 제공할 수 있다.
The present invention relates to a method in which a server synchronizes data of a using terminal in a cloud computing environment implementing N-Screen. According to the present invention, the data of the terminal is periodically synchronized so that wireless communication of the terminal is possible. It is possible to provide an en-screen file system that can minimize the impact on the screen implementation.

Claims (6)

다수의 단말기와 서버를 포함하여 구성되어, 상기 단말기 중 어느 하나에서 실행된 애플리케이션의 데이터를 서버에 저장하고, 다른 단말기에서 동일 애플리케이션을 실행하는 경우, 상기 서버에 저장된 데이터를 상기 다른 단말기에 제공하여, 다수의 단말기를 하나의 단말기와 같이 사용할 수 있도록, 단말기와 서버 간의 데이터를 동기화하는 방법 적용되는 파일 시스템에 있어,
PBR 영역, FAT 영역, Root Directory 영역 및 Data Cluster 영역을 포함하여 구성되고:
상기 PBR 영역에는, 사용자 계정정보 및 상기 PBR 영역의 데이터를 클러스터 별로 해쉬 함수로 변환한 해쉬값이 포함되어 저장됨을 특징으로 하는 엔스크린용 파일 시스템.
Comprising a plurality of terminals and servers, and stores the data of the application executed in any one of the terminals in the server, and when the same application is executed in another terminal, by providing the data stored in the server to the other terminal In a file system applied to a method for synchronizing data between a terminal and a server so that a plurality of terminals can be used as one terminal,
It consists of a PBR zone, a FAT zone, a root directory zone, and a data cluster zone:
The NBR file system of claim 1, wherein the PBR area includes a user value and a hash value obtained by converting data of the PBR area into a hash function for each cluster.
제 1 항에 있어서,
상기 FAT 영역, Root Directory 영역 및 Data Cluster 영역은,
클러스터 단위로 암호화되어 저장됨을 특징으로 하는 엔스크린용 파일 시스템.
The method of claim 1,
The FAT area, the root directory area and the data cluster area are
En Screen file system, characterized in that the cluster is encrypted in units.
제 2 항에 있어서,
상기 암호화 키 값은,
PBR 영역의 UserUUID 와 DiskID를 포함하는 사용자 정보로부터 생성된 값임을 특징으로 하는 엔스크린용 파일 시스템.
The method of claim 2,
The encryption key value is,
N-Screen file system which is a value generated from user information including UserUUID and DiskID of PBR area.
제 3 항에 있어서,
상기 FAT 영역은,
애플리케이션 데이터가 저장되는 필드, 일반 데이터가 저장되는 필드 그리고 동기화 우선순위 정보를 저장하는 필드를 포함하여 구성됨을 특징으로 하는 엔스크린용 파일 시스템.
The method of claim 3, wherein
The FAT area is
And a field for storing application data, a field for storing general data, and a field for storing synchronization priority information.
제 4 항에 있어서,
상기 FAT 영역 및 Root Directory 영역에는,
상기 FAT 영역 및 Root Directory 영역에 저장된 클러스터별 데이터를 해쉬 함수로 변환한 해쉬값이 포함되어 저장됨을 특징으로 하는
The method of claim 4, wherein
In the FAT area and the Root Directory area,
And a hash value obtained by converting cluster-specific data stored in the FAT area and the root directory area into a hash function.
제 5 항에 있어서,
상기 FAT영역에는,
Data Cluster 영역의 데이터를 클러스터 별로 해쉬함수를 이용하여 변환한 해쉬값이 저장됨을 특징으로 하는 엔스크린용 파일 시스템.
The method of claim 5, wherein
In the FAT area,
N-Screen file system, characterized in that the hash value obtained by converting the data in the Data Cluster area by using the hash function for each cluster.
KR1020110097277A 2011-09-27 2011-09-27 File providing system for n-screen service KR101319465B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020110097277A KR101319465B1 (en) 2011-09-27 2011-09-27 File providing system for n-screen service

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110097277A KR101319465B1 (en) 2011-09-27 2011-09-27 File providing system for n-screen service

Publications (2)

Publication Number Publication Date
KR20130033557A true KR20130033557A (en) 2013-04-04
KR101319465B1 KR101319465B1 (en) 2013-10-17

Family

ID=48435900

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110097277A KR101319465B1 (en) 2011-09-27 2011-09-27 File providing system for n-screen service

Country Status (1)

Country Link
KR (1) KR101319465B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113806803A (en) * 2021-09-17 2021-12-17 厦门服云信息科技有限公司 Data storage method, system, terminal equipment and storage medium

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7634514B2 (en) * 2005-05-09 2009-12-15 Microsoft Corporation Synchronizing file system directories
KR20100003116A (en) * 2008-06-30 2010-01-07 주식회사 케이티 Method of synchronizing data among widget terminals
KR101175505B1 (en) 2011-10-06 2012-08-20 한화에스앤씨주식회사 System for providing user data storage enviroment using network based file system in n-screen

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113806803A (en) * 2021-09-17 2021-12-17 厦门服云信息科技有限公司 Data storage method, system, terminal equipment and storage medium

Also Published As

Publication number Publication date
KR101319465B1 (en) 2013-10-17

Similar Documents

Publication Publication Date Title
US10715314B2 (en) Cloud file system
US10333975B2 (en) Enhanced computing system security using a secure browser
US11372990B2 (en) Restricting access to content
US9052962B2 (en) Distributed storage of data in a cloud storage system
US7865537B2 (en) File sharing system and file sharing method
US8621196B2 (en) Booting from an encrypted ISO image
US20150134796A1 (en) Dynamic partitioning techniques for data streams
JP2018537740A (en) Synchronization protocol for multi-premises hosting of digital content items
JP2017501515A (en) Data stream ingestion and persistence policy
US10346618B1 (en) Data encryption for virtual workspaces
US9930063B2 (en) Random identifier generation for offline database
US11063922B2 (en) Virtual content repository
US20090327303A1 (en) Intelligent allocation of file server resources
KR101386161B1 (en) Apparatus and method for managing compressed image file in cloud computing system
US9432238B2 (en) Communicating large amounts of data over a network with improved efficiency
CN110046510B (en) Cross-cloud data migration method, device and system
KR101319465B1 (en) File providing system for n-screen service
KR101319466B1 (en) Method of synchronizing data of terminals using hash function
US11656892B1 (en) Sequential execution of user-submitted code and native functions
KR20190015817A (en) Method, Apparatus and System for Monitoring Using Middleware
US11157454B2 (en) Event-based synchronization in a file sharing environment
Levitski Building Distributed File Systems on Commercial Cloud Storage Services

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20160927

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee