KR102015188B1 - Method for probabilistic file optial recovering in helper nodes with limited cache memory and distributed storage method and apparatus - Google Patents

Method for probabilistic file optial recovering in helper nodes with limited cache memory and distributed storage method and apparatus Download PDF

Info

Publication number
KR102015188B1
KR102015188B1 KR1020170167291A KR20170167291A KR102015188B1 KR 102015188 B1 KR102015188 B1 KR 102015188B1 KR 1020170167291 A KR1020170167291 A KR 1020170167291A KR 20170167291 A KR20170167291 A KR 20170167291A KR 102015188 B1 KR102015188 B1 KR 102015188B1
Authority
KR
South Korea
Prior art keywords
file
probability
divided
determined
fragments
Prior art date
Application number
KR1020170167291A
Other languages
Korean (ko)
Other versions
KR20190067394A (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 KR1020170167291A priority Critical patent/KR102015188B1/en
Publication of KR20190067394A publication Critical patent/KR20190067394A/en
Application granted granted Critical
Publication of KR102015188B1 publication Critical patent/KR102015188B1/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/13File access structures, e.g. distributed indices

Abstract

제한된 메모리를 갖는 보조 노드에서 확률적 파일 최적 복구 방법, 그리고 파일 분산 저장 방법 및 장치가 개시된다. 클러스터(cluster)에 속하는 복수의 보조 노드(help node)에 파일을 분산 저장하는 방법에 있어서, 복수개의 파일 조각으로 분할하고자 하는 특정 파일을 대상으로, 보조 노드 별 제한된 메모리 크기 및 성공 전송 확률(successful transmission probability)에 기초하여 분할하고자 하는 개수를 결정하는 단계, 결정된 상기 개수에 기초하여 상기 특정 파일을 MDS(Maximum Distance Separable) 코딩에 기초하여 복수개의 파일 조각으로 분할하는 단계, 및 분할된 파일 조각을 상기 복수의 보조 노드에 분산 저장하는 단계를 포함할 수 있다.A stochastic file optimal recovery method and a file distributed storage method and apparatus in a secondary node having limited memory are disclosed. In a method for distributing and storing files in a plurality of help nodes belonging to a cluster, a limited memory size and success transfer probability for each specific node are targeted to a specific file to be divided into a plurality of file pieces. determining a number to be divided based on a transmission probability, dividing the specific file into a plurality of file pieces based on maximum distance separation (MDS) coding based on the determined number, and dividing the divided file pieces The method may include distributedly storing the plurality of secondary nodes.

Figure R1020170167291
Figure R1020170167291

Description

제한된 메모리를 갖는 보조 노드에서 확률적 파일 최적 복구 방법, 그리고 파일 분산 저장 방법 및 장치{METHOD FOR PROBABILISTIC FILE OPTIAL RECOVERING IN HELPER NODES WITH LIMITED CACHE MEMORY AND DISTRIBUTED STORAGE METHOD AND APPARATUS}TECHNICAL FOR PROBABILISTIC FILE OPTIAL RECOVERING IN HELPER NODES WITH LIMITED CACHE MEMORY AND DISTRIBUTED STORAGE METHOD AND APPARATUS}

본 발명은 클러스터(cluster)에 속하는 복조 노드들 간 협력 전송을 기반으로 클러스터에 속하는 사용자 단말에서 요청한 파일을 제공하는 기술에 관한 것이다. 더욱 상세하게는, 제한된 크기의 캐시 메모리(cache memory)를 구비한 여러 개의 보조 노드들(helper nodes)과 상기 보조 노드들로부터 파일을 제공받는 사용자 단말(User Equipment), 기지국(Base Station)으로 구성된 무선 통신 환경에서, 협력 전송 시 전송 이득을 최대화하기 위해, 보조 노드들로 특정 파일을 몇 개의 조각으로 분할하여 분산 저장하면 되는지를 결정하는 기술에 관한 것이다.The present invention relates to a technique for providing a file requested by a user terminal belonging to a cluster based on cooperative transmission between demodulation nodes belonging to a cluster. More specifically, it is composed of a plurality of helper nodes having a limited size of cache memory, a user equipment (UE) and a base station (UE) receiving files from the auxiliary nodes. In a wireless communication environment, the present invention relates to a technique for deciding how many pieces of a particular file should be divided and distributed to secondary nodes in order to maximize transmission gain in cooperative transmission.

최근 사물인터넷(IOT), 빅데이터 시대에 접어들면서 모바일 영상에 대한 소비가 폭발적으로 급증하고 있고, 모바일 영상에 대한 지속적인 수요는 멈출 것으로 보이지 않는다. 시스코(Cisco)에 따르면 2016년 말, 세계적 모바일 데이터 양이 7.2 엑사바이트(Exabyte, EB)에 이르렀고 이러한 추세로 미루어 봤을 때 2016~2021년 사이에는 700% 이상의 트래픽 증가가 기대됨에 따라 연간 제타바이트(zetabyte) 시대에 도래가 머지 않았음을 보여주고 있다. 빠르게 증가하는 모바일 트래픽에 기인하여 자주 사용될 만한 컨텐츠를 미리 가져와 메모리를 지니는 디바이스에 적재하는 캐싱(caching)이라는 기법이 각광받고 있다. Recently, as the Internet of Things (IOT) and big data era enter, the consumption of mobile video is exploding, and the demand for mobile video is not expected to stop. According to Cisco, global mobile data volume reached 7.2 exabytes (EB) at the end of 2016, and from these trends, more than 700% of traffic is expected between 2016-2021, resulting in more than 700% of zettabytes per year. zetabyte) shows that the arrival is not long. Due to the rapidly growing mobile traffic, a technique called caching is being used to prefetch frequently used contents and load them into a device having a memory.

캐싱(caching) 기법은 상위 계층의 기지국으로부터 연결되는 백홀 링크의 부하를 완화시킬 수 있으며 나노(nano)나 피코(pico) 단위의 하위 계층 기지국으로부터 사용자로부터 요구될 만한 데이터를 미리 적재하여 지연시간에 있어서도 향상을 기대하게 만든다. Caching can alleviate the load on the backhaul link from the upper base station, and preload data that may be required from the user from the lower layer base station in nano or pico units. It is also expected to improve.

하지만 급증하는 데이터의 양에 비해 메모리 장치의 성능이나 품질의 향상이 가격과 같은 사회적 요인이나 기술적 요인으로 인해 용이하지 않다. 그에 따라 제한된 메모리 사이즈 내에서, 데이터를 효율적으로 적재시키는 방법에 대한 연구가 필요해지고 있다. 뿐만 아니라, 사용자에게 가장 가까운 단일 노드가 해당 사용자에 대한 서비스를 홀로 책임지는 방식보다는 여러 보조 노드간의 협력을 통해 보다 안정적으로 원하는 데이터나 파일을 전송할 수 있는 방법 또한 연구되고 있다. However, it is not easy to improve the performance or quality of the memory device due to soaring data volume due to social or technical factors such as price. Accordingly, research on how to efficiently load data within a limited memory size is required. In addition, a method for more reliably transmitting desired data or files through cooperation between multiple auxiliary nodes is being studied, rather than a single node closest to a user being solely responsible for the service for the user.

무선 캐싱 방법에 있어서, 파일 자체를 그대로 저장하는 uncoded caching을 시초로 기지국마다 같은 방식으로 파일을 저장하는 기법인 same file caching이 먼저 주목 받았으나, same file caching 방식은 엔드 유저(end user)를 서비스 할 수 있는 여러 기지국으로부터 다양한 파일을 전송받지 못하고 불필요하게 중복된 파일을 여러 번 전송 받을 수 있다는 단점이 존재한다. 이러한 단점을 극복하고자 기지국마다 다른 파일을 적재하는 different file caching 방법이 개발되었다. 아래의 비특허 문헌 [1] J. Y. Song, H. J. Song and W. Choi , "Optimal content placement for wireless femto -caching network," in IEEE Transactions on Wireless Communications, vol. 16, no. 7, pp. 4433-4444, Jul . 2017.에 제시된 different file caching 방법에 따르면, 기존의 채널 다양성 뿐만 아니라 파일 다양성 까지 고려하여 그 둘 간의 트레이드오프(tradeoff) 관계를 고려하여 BER(bit error rate)을 최소화할 수 있다. 이외에, 아래의 비특허 문헌 [2] S. H. Chae , W. Choi , "Caching placement in stochastic wireless caching helper networks : channel selection diversity via caching," in IEEE Transactions on Wireless Communications, vol. 15, no. 10, pp. 6626-6637, Oct. 2016.에 제시된 확률적 캐싱 방법(probabilistic caching)은 제한된 메모리 내에서 확률적으로 서로 다른 파일을 저장하는 기법으로서, 기존의 기법에 비해 나은 성능을 보였다.In the wireless caching method, same file caching, which is a technique of storing a file in the same manner for each base station, was first noticed with uncoded caching, which stores the file itself as it is, but the same file caching method may serve an end user. There is a disadvantage in that various files may not be transmitted from various base stations, and unnecessary files may be repeatedly transmitted several times. To overcome this drawback, different file caching methods have been developed to load different files for each base station. [1] JY Song, HJ Song and W. Choi , "Optimal content placement for wireless femto- caching network," in IEEE Transactions on Wireless Communications, vol. 16, no. 7, pp. 4433-4444, Jul . According to the different file caching method presented in 2017 , the bit error rate (BER) can be minimized in consideration of the tradeoff relationship between the channel diversity as well as the file diversity. In addition, non-patent literature [2] SH Chae , W. Choi , "Caching placement in stochastic wireless caching helper networks: channel selection diversity via caching," in IEEE Transactions on Wireless Communications, vol. 15, no. 10, pp. 6626-6637, Oct. The probabilistic caching method proposed in 2016. is a technique that stores stochastic different files in limited memory, and shows better performance than the existing method.

그러나, 파일을 통째로 저장하는 uncoded caching 기법보다 보조 노드가 파일의 일부를 부분적으로 저장하여 파일의 중복을 피하면서 안정적으로 사용자에게 파일을 제공하는 coded caching이 개발되었다. 예를 들어, coded caching 기법 중 구현이 용이한 MDS(Maximum Distance Separable) code는 파일 자체를 여러 개의 파일 조각으로 나누고, 나누어진 조각을 기반으로 인코딩(encoding)을 하여 일정 수 이상의 파일 조각이 사용자 단말에서 수신되면, 해당 파일을 복구하는 코딩 기법이다. 아래의 비특허 문헌 [3] X. Xu and M. Tao, "Modeling, Analsis , and optimization of coded caching in small-cell networks," in IEEE Transactios on Communications, vol. 65, no.8, pp. 3415-3428, May.2017.에서는 여러 보조 노드들이 같은 파일의 서로 다른 패킷을 저장하여 협력 전송하는 same file coded caching 기법을 제시하고 있으며, same file coded caching 기법이 uncoded caching 기법에 비해 엔드 유저(end user)를 효율적으로 서비스할 수 있음을 제시하고 있다.However, rather than uncoded caching, which saves the whole file, coded caching has been developed in which a secondary node partially stores a part of the file so that the file is stably provided to the user while avoiding duplication of the file. For example, MDS (Maximum Distance Separable) code, which is easy to implement among coded caching techniques, divides the file itself into several file fragments and encodes based on the divided fragments so that a certain number of file fragments are transmitted to the user terminal. When received from, it is a coding technique to recover the file. [3] X. Xu and M. Tao, "Modeling, Analsis , and optimization of coded caching in small-cell networks," in IEEE Transactios on Communications, vol. 65, no. 8, pp. 3415-3428, May 2017. In this paper, we propose the same file coded caching technique where several auxiliary nodes store different packets of the same file and cooperatively transmit it.The same file coded caching technique can serve the end user more efficiently than the uncoded caching technique. Suggests that there is.

기존의 uncoded caching 기법에서, different file caching 기법이 same file caching 기법에 비해 파일 다양성의 이득을 통해 우수한 성능을 보였듯이, 파일 다양성 이득을 더 지니는 coded caching 기법에서도 마찬가지로, coded different file caching 기법이 coded same file caching 기법에 비해 우수할 수 있음을 예상할 수 있다. In the existing uncoded caching technique, coded different file caching technique is similar to coded caching technique with more file diversity gain than other file caching technique. It can be expected to be superior to the file caching technique.

따라서, coded different file caching 기법에서 엔드 유저(end user)를 최적으로 서비스 할 수 있는 기술이 요구된다. Therefore, there is a need for a technology capable of optimally serving end users in coded different file caching techniques.

한국공개특허 10-2010-00048130호는 클러스터 기반의 분산형 스토리지 시스템 및 동작 방법에 관한 것으로, 캐시에 데이터를 분산 저장한 후 클러스터로 멀티캐스팅하는 기술을 기재하고 있다. Korean Patent Laid-Open Publication No. 10-2010-00048130 relates to a cluster-based distributed storage system and a method of operation thereof, and describes a technique of multicasting a cluster after distributing and storing data in a cache.

[1] J. Y. Song, H. J. Song and W. Choi, "Optimal content placement for wireless femto-caching network," in IEEE Transactions on Wireless Communications, vol. 16, no. 7, pp. 4433-4444, Jul. 2017.[1] J. Y. Song, H. J. Song and W. Choi, "Optimal content placement for wireless femto-caching network," in IEEE Transactions on Wireless Communications, vol. 16, no. 7, pp. 4433-4444, Jul. 2017. [2] S. H. Chae, W. Choi, "Caching placement in stochastic wireless caching helper networks : channel selection diversity via caching," in IEEE Transactions on Wireless Communications, vol. 15, no. 10, pp. 6626-6637, Oct. 2016.[2] S. H. Chae, W. Choi, "Caching placement in stochastic wireless caching helper networks: channel selection diversity via caching," in IEEE Transactions on Wireless Communications, vol. 15, no. 10, pp. 6626-6637, Oct. 2016. [3] X. Xu and M. Tao, "Modeling, Analsis, and optimization of coded caching in small-cell networks," in IEEE Transactios on Communications, vol. 65, no.8, pp. 3415-3428, May.2017.[3] X. Xu and M. Tao, "Modeling, Analsis, and optimization of coded caching in small-cell networks," in IEEE Transactios on Communications, vol. 65, no. 8, pp. 3415-3428, May 2017.

본 발명은 coded different file caching 기법에서 파일을 몇 개로 분할하여 협력 전송해야 할 때 엔드 유저(end user)를 최적으로 서비스 할 수 있는지를 결정하는 기술에 관한 것이다. 즉, 확률적 캐싱(probabilistic caching) 방법을 통해 확률적으로 서로 다른 파일의 MDS coded 패킷(즉, MDS(Maximum Distance Separable) 코딩에 기초하여 분할된 파일 조각)을 저장한 보조 노드들에 한해서 파일을 몇 개의 조각으로 분할하여 협력 전송할 때 전송이득이 최대화되는지를 결정하는 기술에 관한 것이다.The present invention relates to a technique for determining whether an end user can be optimally serviced when a file is divided into several files and cooperatively transmitted in a coded different file caching technique. In other words, files are stored only on secondary nodes that store MDS coded packets (ie, fragmented file fragments based on Maximum Distance Separable (MDS) coding) of different files through probabilistic caching. The present invention relates to a technique for determining whether a transmission gain is maximized when cooperating transmission by dividing into several pieces.

클러스터(cluster)에 속하는 복수의 보조 노드(help node)에 파일을 분산 저장하는 방법에 있어서, 복수개의 파일 조각으로 분할하고자 하는 특정 파일을 대상으로, 보조 노드 별 제한된 메모리 크기 및 성공 전송 확률(successful transmission probability)에 기초하여 분할하고자 하는 개수를 결정하는 단계, 결정된 상기 개수에 기초하여 상기 특정 파일을 MDS(Maximum Distance Separable) 코딩에 기초하여 복수개의 파일 조각으로 분할하는 단계, 및 분할된 파일 조각을 상기 복수의 보조 노드에 분산 저장하는 단계를 포함할 수 있다.In a method for distributing and storing files in a plurality of help nodes belonging to a cluster, a limited memory size and success transfer probability for each specific node are targeted to a specific file to be divided into a plurality of file pieces. determining a number to be divided based on a transmission probability, dividing the specific file into a plurality of file pieces based on maximum distance separation (MDS) coding based on the determined number, and dividing the divided file pieces The method may include distributedly storing the plurality of secondary nodes.

일측면에 따르면, 상기 보조 노드 별 제한된 메모리 크기는 상기 특정 파일의 크기보다 작을 수 있다.According to one aspect, the limited memory size for each secondary node may be smaller than the size of the specific file.

다른 측면에 따르면, 상기 분할하고자 하는 개수를 결정하는 단계는, 상기 클러스터에 속하는 사용자 단말에서 요청될 상기 특정 파일의 파일 조각을 저장 가능한 보조 노드의 개수에 기초하여 상기 분할하고자 하는 개수를 결정할 수 있다.According to another aspect, the determining of the number to be split may determine the number to be split based on the number of auxiliary nodes capable of storing the file fragment of the specific file to be requested in the user terminal belonging to the cluster. .

또 다른 측면에 따르면, 상기 분할하고자 하는 개수를 결정하는 단계는, 상기 특정 파일의 파일 조각을 저장 가능한 보조 노드의 개수가 분할될 파일조각의 개수보다 적은 경우, 상기 특정 파일을 분할하지 않고 특정 파일 전체를 보조 노드에 분산 저장하는 것으로 결정하는 단계를 포함할 수 있다.According to another aspect, the determining of the number to be divided, if the number of auxiliary nodes that can store the file fragments of the specific file is less than the number of pieces of files to be divided, the specific file without partitioning the specific file And determining to distribute the entirety to the secondary node.

또 다른 측면에 따르면, 상기 분할하고자 하는 개수를 결정하는 단계는, 상기 특정 파일이 복수개의 파일 조각으로 분할 시, 분할될 파일 조각 개수 별 성공 전송 확률(successive transmission probability)을 계산하는 단계, 계산된 성공 전송 확률들 중 최대값으로 최대 성공 전송 확률을 갱신하는 단계, 상기 특정 파일이 분할할수록 변화하는 상기 클러스터 내부의 파일 존재확률(hitting probability)을 대상으로, 상기 최대 성공 전송 확률에 해당하는 파일 존재확률을 결정하는 단계, 및 결정된 파일 존재확률에 대응하는 분할될 파일 조각 개수를 결정하는 단계를 포함할 수 있다.According to another aspect, the determining of the number to be divided comprises: calculating successive transmission probability for each number of file fragments to be divided when the specific file is divided into a plurality of file fragments, the calculated Updating a maximum success transfer probability to a maximum value among success transfer probabilities, and targeting a file hitting probability in the cluster that changes as the specific file is divided, and has a file corresponding to the maximum success transfer probability Determining the probability, and determining the number of file fragments to be divided corresponding to the determined file existence probability.

또 다른 측면에 따르면, 상기 분할하고자 하는 개수를 결정하는 단계는, 상기 파일 조각 개수가 1일 때부터 상기 결정된 파일 존재확률에 대응하는 분할될 파일 조각 개수까지의 범위로 검색 범위를 특정하는 단계, 및 특정된 상기 검색 범위 내에서 성공 전송 확률이 최대인 파일 조각 개수를 상기 분할하고자 하는 개수로 최종 결정하는 단계를 더 포함할 수 있다.According to another aspect, the determining of the number to be divided includes: specifying a search range in a range from when the number of file fragments is 1 to the number of file fragments to be divided corresponding to the determined file existence probability; And finally determining the number of file fragments having a maximum transmission probability within the specified search range as the number to be divided.

또 다른 측면에 따르면, 상기 클러스터에 속하는 복수의 보조 노드의 캐시(cache)에 상기 특정 파일 또는 특정 파일의 일부가 저장되어 있을 확률을 나타내는 상기 파일 존재확률(hitting probability)은, 상기 특정 파일을 대상으로 분할된 파일 조각의 개수가 많아질수록 상대적으로 감소할 수 있다.According to another aspect, the file hitting probability indicating the probability that the specific file or a part of the specific file is stored in a cache of a plurality of secondary nodes belonging to the cluster is a target of the specific file. As the number of divided file fragments increases, the size of the file fragments can be relatively reduced.

또 다른 측면에 따르면, 상기 분할하고자 하는 개수를 결정하는 단계는, 상기 특정 파일의 파일 조각을 저장 가능한 보조 노드의 개수가 분할될 파일조각의 개수 이상인 경우, 미리 지정된 최대 확률 범위 내에서 상기 특정 파일을 분할 가능한 최대 개수를 상기 분할하고자 하는 개수로 결정할 수 있다.According to another aspect, the determining of the number to be divided may include: when the number of auxiliary nodes capable of storing file fragments of the specific file is equal to or greater than the number of file fragments to be divided, the specific file within a predetermined maximum probability range. May be determined as the number to be divided.

또 다른 측면에 따르면, 상기 클러스터에 속하는 사용자 단말에서 상기 특정 파일의 제공이 요청됨에 따라, 상기 특정 파일이 분할된 파일 조각을 저장하고 있는 상기 복수의 보조 노드 간 협력 전송을 기반으로 상기 특정 파일이 상기 사용자 단말로 제공될 수 있다.According to another aspect, as the request for providing the specific file is requested from a user terminal belonging to the cluster, the specific file is based on the cooperative transmission between the plurality of auxiliary nodes storing the file fragment in which the specific file is divided. It may be provided to the user terminal.

클러스터(cluster)에 속하는 복수의 보조 노드(help node)에 파일을 분산 저장하는 파일 분산 저장 장치에 있어서, 복수개의 파일 조각으로 분할하고자 하는 특정 파일을 대상으로, 보조 노드 별 제한된 메모리 크기 및 성공 전송 확률(successful transmission probability)에 기초하여 분할하고자 하는 개수를 결정하는 결정부, 결정된 상기 개수에 기초하여 상기 특정 파일을 MDS(Maximum Distance Separable) 코딩에 기초하여 복수개의 파일 조각으로 분할하는 파일 분할부, 및 분할된 파일 조각을 상기 복수의 보조 노드에 분산 저장하는 저장 제어부를 포함할 수 있다.In a file distributed storage device for distributing and storing files in a plurality of help nodes belonging to a cluster, a limited memory size and success transfer for each specific node are directed to a specific file to be divided into a plurality of file fragments. A determination unit for determining a number to be divided based on a successive transmission probability, a file division unit for dividing the specific file into a plurality of file pieces based on MDS (Maximum Distance Separable) coding based on the determined number; And a storage controller configured to distribute and store the divided file fragments in the plurality of auxiliary nodes.

일측면에 따르면, 상기 보조 노드 별 제한된 메모리 크기는 상기 특정 파일의 크기보다 작을 수 있다.According to one aspect, the limited memory size for each secondary node may be smaller than the size of the specific file.

다른 측면에 따르면, 상기 결정부는, 상기 클러스터에 속하는 사용자 단말에서 요청될 상기 특정 파일의 파일 조각을 저장 가능한 보조 노드의 개수에 기초하여 상기 분할하고자 하는 개수를 결정할 수 있다.According to another aspect, the determination unit may determine the number to be divided based on the number of auxiliary nodes capable of storing the file fragment of the specific file to be requested in the user terminal belonging to the cluster.

또 다른 측면에 따르면, 상기 결정부는, 상기 특정 파일의 파일 조각을 저장 가능한 보조 노드의 개수가 분할될 파일조각의 개수보다 적은 경우, 상기 특정 파일을 분할하지 않고 특정 파일 전체를 보조 노드에 분산 저장할 수 있다.According to another aspect, when the number of auxiliary nodes capable of storing file fragments of the specific file is smaller than the number of file fragments to be divided, the determining unit may store and store the entire specific file in the auxiliary node without dividing the specific file. Can be.

또 다른 측면에 따르면, 상기 결정부는, 상기 특정 파일이 복수개의 파일 조각으로 분할 시, 분할될 파일 조각 개수 별 성공 전송 확률(successive transmission probability)을 계산하고, 계산된 성공 전송 확률들 중 최대값으로 최대 성공 전송 확률을 갱신하고, 상기 특정 파일이 분할할수록 변화하는 상기 클러스터 내부의 파일 존재확률(hitting probability)을 대상으로, 상기 최대 성공 전송 확률에 해당하는 파일 존재확률을 결정하고, 결정된 파일 존재확률에 대응하는 분할될 파일 조각 개수를 결정할 수 있다.According to another aspect, the determining unit, when the specific file is divided into a plurality of file fragments, calculates a successful transmission probability for each number of file fragments to be divided, and as a maximum value of the calculated successful transmission probability Update a maximum success transfer probability, determine a file existence probability corresponding to the maximum success transfer probability, and target a file hitting probability in the cluster that changes as the specific file is divided, and determine the determined file existence probability The number of file fragments to be divided corresponding to may be determined.

또 다른 측면에 따르면, 상기 결정부는, 상기 파일 조각 개수가 1일 때부터 상기 결정된 파일 존재확률에 대응하는 분할될 파일 조각 개수까지의 범위로 검색 범위를 특정하고, 특정된 상기 검색 범위 내에서 성공 전송 확률이 최대인 파일 조각 개수를 상기 분할하고자 하는 개수로 최종 결정할 수 있다.According to another aspect, the determining unit specifies a search range in a range from when the number of file fragments is 1 to the number of file fragments to be divided corresponding to the determined file existence probability, and succeeds within the specified search range. The number of file fragments having the maximum transmission probability may be finally determined as the number to be divided.

또 다른 측면에 따르면, 상기 클러스터에 속하는 복수의 보조 노드의 캐시(cache)에 상기 특정 파일 또는 특정 파일의 일부가 저장되어 있을 확률을 나타내는 상기 파일 존재확률(hitting probability)은, 상기 특정 파일을 대상으로 분할된 파일 조각의 개수가 많아질수록 상대적으로 감소할 수 있다.According to another aspect, the file hitting probability indicating the probability that the specific file or a part of the specific file is stored in a cache of a plurality of secondary nodes belonging to the cluster is a target of the specific file. As the number of divided file fragments increases, the size of the file fragments can be relatively reduced.

또 다른 측면에 따르면, 상기 결정부는, 상기 특정 파일의 파일 조각을 저장 가능한 보조 노드의 개수가 분할될 파일조각의 개수 이상인 경우, 미리 지정된 최대 확률 범위 내에서 상기 특정 파일을 분할 가능한 최대 개수를 상기 분할하고자 하는 개수로 결정할 수 있다.According to another aspect, the determining unit, when the number of auxiliary nodes capable of storing the file fragments of the specific file is equal to or greater than the number of file fragments to be divided, the determination unit may determine the maximum number of possible division of the specific file within a predetermined maximum probability range. It can be determined by the number to be divided.

또 다른 측면에 따르면, 상기 클러스터에 속하는 사용자 단말에서 상기 특정 파일의 제공이 요청됨에 따라, 상기 특정 파일이 분할된 파일 조각을 저장하고 있는 상기 복수의 보조 노드 간 협력 전송을 기반으로 상기 특정 파일이 상기 사용자 단말로 제공될 수 있다.According to another aspect, as the request for providing the specific file is requested from a user terminal belonging to the cluster, the specific file is based on the cooperative transmission between the plurality of auxiliary nodes storing the file fragment in which the specific file is divided. It may be provided to the user terminal.

본 발명의 실시예들에 따르면, 성공 전송 확률(successive transmission probability)을 고려하여 특정 파일을 분할할 파일 조각의 개수를 결정하고, 결정된 개수를 기반으로 분할된 특정 파일의 파일 조각(예컨대, MDS 코드)을 보조 노드들로 분산 저장하고, 해당 파일을 요청한 사용자 단말을 대상으로 보조 노드들간 협력 전송을 통해 해당 파일을 사용자 단말로 제공함으로써, 전송 이득을 최대화할 수 있다.According to embodiments of the present invention, the number of file fragments for dividing a specific file is determined in consideration of the successive transmission probability, and the file fragments (eg, MDS codes) of the specific file are divided based on the determined number. ) Is distributed to secondary nodes, and by providing the corresponding file to the user terminal through cooperative transmission between the auxiliary nodes to the user terminal requesting the file, the transmission gain can be maximized.

도 1은 본 발명의 일실시예에 있어서, 제한된 메모리를 지닌 보조 노드 간의 협력 전송을 수행하는 무선 통신 환경을 도시한 도면이다.
도 2는 본 발명의 일실시예에 있어서, 기지국, 보조 노드 및 사용자 단말 간의 파일 분산 저장을 위한 관계를 도시한 흐름도이다.
도 3은 본 발명의 일실시예에 있어서, 성공 전송 확률에 기초하여 특정 파일의 파일 조각을 결정하는 방법을 도시한 흐름도이다.
도 4는 본 발명의 일실시예에 있어서, 파일 분산 저장 장치의 내부 구성을 도시한 블록도이다.
도 5는 본 발명의 일실시예에 있어서, 파일 존재 확률과 성공 전송 확률의 그래프를 도시한 도면이다.
도 6은 본 발명의 일실시예에 있어서, 맥 캐패시티 영역(MAC capacity region)을 도시한 그래프이다.
1 is a diagram for a wireless communication environment for performing cooperative transmission between secondary nodes with limited memory according to an embodiment of the present invention.
2 is a flowchart illustrating a relationship for file distribution storage between a base station, an auxiliary node, and a user terminal according to an embodiment of the present invention.
3 is a flowchart illustrating a method of determining a file fragment of a specific file based on a successful transmission probability according to an embodiment of the present invention.
4 is a block diagram illustrating an internal configuration of a file distributed storage device according to an embodiment of the present invention.
5 is a diagram illustrating a graph of a file existence probability and a successful transmission probability according to one embodiment of the present invention.
6 is a graph illustrating a MAC capacity region according to an embodiment of the present invention.

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

본 발명은 제한된 메모리 크기를 갖는 두 개 이상의 보조 노드들과 단일 사용자 단말이 하나의 통신 클러스터를 형성하는 무선 통신 환경에서, 보조 노드들 간의 협력 전송을 통해 한번의 전송으로써 성공적으로 사용자 단말이 요청한 파일을 제공받을 수 있도록 파일을 분산 저장, 복구하는 기술에 관한 것이다. 특히, 본 발명은 파일을 몇 개의 조각으로 분할하여 보조 노드들에 분산 저장 시, 보조 노드들 간 협력 전송을 통해 전송 이득이 최대화되는 파일 조각의 개수(즉, MDS 코드 길이)를 결정하는 기술에 관한 것이다.According to the present invention, in a wireless communication environment in which two or more auxiliary nodes having a limited memory size and a single user terminal form a communication cluster, a file successfully requested by the user terminal by one transmission through cooperative transmission between the auxiliary nodes is provided. It relates to a technique for distributing, storing and recovering files so that they can be provided. In particular, the present invention relates to a technique for determining the number of file fragments (ie, MDS code length) in which the transmission gain is maximized through cooperative transmission between secondary nodes when the file is divided into several fragments and distributed to the secondary nodes. It is about.

예를 들어, 본 발명은 기지국에서 저장하고 있는 복수의 파일들 중 적어도 하나의 파일을 기지국에 속하는 클러스터들 중 특정 클러스터에 해당하는 복수의 보조 노드들로 분산 저장하기 위해 MDS(Maximum Distance Separable) 코딩을 이용할 수 있다. 그리고, 본 발명은 MDS 코딩을 통해 분할된 파일 조각(즉, MDS 코드)를 제한된 캐시(cache) 메모리를 갖는 복수의 보조 노드들 각각에 분산 저장 시, 파일 조각의 개수, 즉, MDS 코드의 길이/크기를 구하는 기술에 관한 것이다.For example, the present invention provides MDS (Maximum Distance Separable) coding to distribute and store at least one file among a plurality of files stored in a base station to a plurality of secondary nodes corresponding to a specific cluster among clusters belonging to the base station. Can be used. In addition, the present invention is the number of file fragments, that is, the length of the MDS code when distributed storage of the file fragments (that is, MDS code) divided by the MDS coding in each of a plurality of secondary nodes having a limited cache memory It is about the technique of obtaining size.

본 실시예들에서, 송신 노드는 기지국을 나타내고, 보조 노드(helper node)는 기지국과 사용자 단말(user equipment) 사이에 존재하는 게이트웨이 등의 중계장치로서, 기지국이 데이터를 수신 노드로 제공함에 따른 부담을 덜어주기 위한 보조 기능을 수행하기 위해 이용될 수 있다. 예컨대, 송신 노드는 파일 분산 저장 장치로 표현될 수 있다. 그리고, 수신 노드는 해당 클러스터가 속하는 송신 노드(즉, 기지국) 및 해당 클러스터에 속하는 보조 노드들 중 적어도 하나로부터 요청 파일에 해당하는 패킷(즉, 파일 조각)을 수신하는 사용자 단말(UE)을 나타낼 수 있다. 예컨대, 수신 노드는 스마트폰, 태블릿 PC, 노트북 등이 포함될 수 있다.In the present embodiments, a transmitting node represents a base station, and a helper node is a relay device such as a gateway existing between the base station and user equipment, and the burden of providing data to the receiving node by the base station. It can be used to perform an auxiliary function to relieve the problem. For example, the transmitting node may be represented as a file distributed storage device. The receiving node indicates a user terminal (UE) that receives a packet corresponding to a request file (ie, a file fragment) from at least one of a transmitting node (ie, a base station) belonging to the cluster and auxiliary nodes belonging to the cluster. Can be. For example, the receiving node may include a smartphone, a tablet PC, a notebook, and the like.

또한, 보조 노드는 캐시(cache) 메모리를 구비하고 있으며, 보조 노드가 속하는 클러스터에 해당하는 기지국(Base Station), 즉, 송신 노드로부터 사용자 단말(User Equipment, UE)에서 자주 요청하는 파일들을 미리 저장하고 있을 수 있다. 예컨대, 상기 파일들은 일반적인 파일 시스템에서 저장되는 데이터 파일, 비디오, 음악 등의 멀티미디어 데이터, 통신 시스템의 연결 등을 위한 제어 데이터 등을 포함할 수 있다.In addition, the secondary node has a cache memory and stores in advance files frequently requested by a user station (UE) from a base station corresponding to a cluster to which the secondary node belongs, that is, a transmitting node. You may be doing For example, the files may include data files stored in a general file system, multimedia data such as video and music, control data for connection of a communication system, and the like.

본 실시예들에서, 파일 존재확률(hitting probability)은 보조 노드의 캐시(cache)에 사용자 단말(UE)에서 요청한 파일 전체 또는 파일의 일부가 존재할(즉, 저장되어 있을) 확률을 나타낼 수 있다.In the present embodiments, the file hitting probability may indicate a probability that the entire file or a part of the file requested by the user terminal (UE) is present (ie, stored) in the secondary node's cache.

본 실시예들에서, 보조 노드는 제한된 캐시(cache) 메모리를 구비하였으며, 제한된 캐시 메모리는 보조 노드에 특정 파일 또는 특정 파일의 일부를 저장하기 위해 할당된 메모리 공간의 크기가 해당 파일의 전체 크기보다 작은 메모리를 나타낼 수 있다.In the present embodiments, the secondary node has limited cache memory, wherein the limited cache memory has a larger amount of memory space allocated for storing a particular file or portion of a particular file on the secondary node than the total size of the file. It can represent a small memory.

본 실시예들에서, 클러스터는 사용자 단말(UE)을 중심으로 미리 지정된 최대 반경

Figure 112017121962272-pat00001
이내에 해당하는 영역을 나타낼 수 있다. In the present embodiments, the cluster is a predetermined maximum radius around the user terminal (UE)
Figure 112017121962272-pat00001
The corresponding area can be indicated within the range.

도 1은 본 발명의 일실시예에 있어서, 제한된 메모리를 지닌 보조 노드 간의 협력 전송을 수행하는 무선 통신 환경을 도시한 도면이다.1 is a diagram for a wireless communication environment for performing cooperative transmission between secondary nodes with limited memory according to an embodiment of the present invention.

즉, 도 1은 사용자 단말(UE)로 서비스할 수 있는(즉, 단말이 요청한 파일을 제공할 수 있는 최대 반경을

Figure 112017121962272-pat00002
라고 할 때, 해당 반경 내에 속하는 보조 노드, 즉, 클러스터에 속하는 보조 노드 간 협력 전송을 수행하는 무선 통신 환경을 도시한 도면이다.That is, FIG. 1 shows a maximum radius that can serve a UE (ie, provide a file requested by the UE).
Figure 112017121962272-pat00002
In this case, it is a diagram showing a wireless communication environment for performing cooperative transmission between secondary nodes belonging to the radius, that is, secondary nodes belonging to the cluster.

도 1에 따르면, 클러스터(cluster)에 속하는 보조 노드의 개수에 따라 보조 노드 간 협력 전송 시 단말이 요청한 파일을 복구 가능한 상태가 구분될 수 있다.According to FIG. 1, a state capable of recovering a file requested by a terminal during cooperative transmission between auxiliary nodes may be divided according to the number of auxiliary nodes belonging to a cluster.

도 1에서는 특정 파일이 4개의 동등한 크기로 분할된 경우를 가정하기로 한다. 예를 들어, MDS 코딩을 통해 XOR 등의 논리 연산을 이용하여 중복없이 수 많은 파일 조각(즉, 패킷)들이 생성될 수 있으며, 생성된 파일 조각(즉, 패킷) 중 동일 파일을 구성하는 서로 다른 종류의 패킷을 4개 이상 단말에서 수신해야 하나의 파일을 복구할 수 있다.In FIG. 1, it is assumed that a specific file is divided into four equal sizes. For example, MDS coding can generate a large number of file fragments (i.e., packets) without duplication using logical operations such as XOR. Four or more types of packets must be received by the terminal to recover a file.

110을 참고하면, 특정 파일이 4개의 동등한 크기로 분할된 경우, 클러스터(즉, 반경

Figure 112017121962272-pat00003
)에 속하는 보조 노드의 개수가 4개 미만인 경우, 단말(114)이 요청한 파일을 복구 가능한 상태가 not hit에 해당할 수 있다. 즉, not hit는 상기 보조 노드들(111, 112, 113) 간의 협력 전송을 통해서 하나의 특정 파일을 복구할 수 없는 경우에 해당할 수 있다.Referring to 110, if a particular file is divided into four equal sizes, the cluster (i.e. radius)
Figure 112017121962272-pat00003
If the number of auxiliary nodes belonging to the subordinate) is less than four, the state in which the terminal 114 may recover the requested file may correspond to not hit. That is, not hit may correspond to a case in which one specific file cannot be recovered through cooperative transmission between the auxiliary nodes 111, 112, and 113.

이때, 120과 같이, 클러스터(즉, 반경

Figure 112017121962272-pat00004
) 내에 속하는 보조 노드(121,122,123,124)의 개수가 분할된 파일 조각의 개수인 4개 이상인 경우, 해당 파일이 복구될 수 있다. 이에 따라, 보조 노드의 개수가 분할된 파일 조각의 개수 이상인 경우는 해당 파일을 복구 할 수 있는 전제 조건으로서 히팅 이벤트(hitting event)로 정의될 수 있다.At this time, as in 120, the cluster (i.e. radius
Figure 112017121962272-pat00004
If the number of subnodes 121, 122, 123, and 124 belonging to the subframe is 4 or more, that is, the number of divided file fragments, the corresponding file may be recovered. Accordingly, when the number of auxiliary nodes is equal to or greater than the number of split file fragments, the auxiliary node may be defined as a heating event as a precondition for recovering the corresponding file.

무선 통신 환경에서는 경로 손실(path loss) 및 페이딩(fading) 영향, 보조 노드들 간의 동시 전송으로 인한 간섭 등으로 인해 보조 노드들로부터 사용자 단말로의 파워(power)가 전송에 필요한 일정 기준치 이상을 만족하지 못하는 경우가 발생할 수 있다. 그러면, 130과 같이, 클러스터(즉, 반경

Figure 112017121962272-pat00005
) 내에 4개 이상의 보조 노드들(131, 132, 133, 134)이 존재하더라도, 경로 손실, 페이딩, 간섭 등의 채널 조건으로 인해 4개가 아닌 3개 이하의 일부 보조 노드만이 전송 가능한 상황이 발생할 수 있다. 이처럼, 클러스터에 속하는 보조 노드의 개수는 분할된 파일 조각의 개수(예컨대, 4개) 이상이지만, 채널 조건으로 인해 일부 보조 노드만(즉, 분할된 파일 조각의 개수 미만의 보조 노드만)이 실제 전송이 가능한 상황인 경우를 비성공 전송 이벤트(not successful transmission event)로 나타낼 수 있다. In the wireless communication environment, power from the secondary nodes to the user terminal meets a certain threshold or more necessary for transmission due to path loss and fading effects and interference due to simultaneous transmission between the auxiliary nodes. Failure to do so may occur. Then, as 130, the cluster (i.e. radius
Figure 112017121962272-pat00005
Even if there are four or more secondary nodes 131, 132, 133, and 134 within the channel), a channel condition such as path loss, fading, or interference may cause only some of the secondary nodes, not four, to transmit. Can be. As such, the number of secondary nodes that belong to the cluster is greater than the number of split file fragments (for example, four), but due to channel conditions, only some secondary nodes (i.e., less than the smaller number of split file fragments) are actually due to channel conditions. A case in which transmission is possible may be represented as a not successful transmission event.

그리고, 130과 같이, 클러스터(즉, 반경

Figure 112017121962272-pat00006
) 내에 4개 이상의 보조 노드들(131, 132, 133, 134)이 존재하고, 채널 상태를 고려해도 4개 이상의 보조 노드가 실제 전송이 가능인 상황(예컨대, 130에서 4개의 보조 노드 모두가 전송 가능한 상황)을 성공 전송 이벤트(successful transmission event)로 정의할 수 있다. And, like 130, the cluster (i.e. radius
Figure 112017121962272-pat00006
) 4 or more secondary nodes 131, 132, 133, and 134 exist within the network, and even if the channel state is considered, 4 or more secondary nodes can actually transmit (for example, all of the 130 to 4 secondary nodes transmit). Possible situation) can be defined as a successful transmission event.

도 2는 본 발명의 일실시예에 있어서, 기지국, 보조 노드 및 사용자 단말 간의 파일 분산 저장을 위한 관계를 도시한 흐름도이다.2 is a flowchart illustrating a relationship for file distribution storage between a base station, an auxiliary node, and a user terminal according to an embodiment of the present invention.

210 단계에서, 송신 노드인 기지국(201)은 보조 노드들의 캐시에 저장하고자 하는 복수의 파일들 중 특정 파일을 대상으로, 보조 노드 별 제한된 메모리 크기와 성공 전송 확률(successful transmission probability)에 기초하여 분할하고자 하는 파일 조각의 개수를 결정할 수 있다. 즉, MDS 코딩에 기초하여 특정 파일을 복수개의 파일 조각(MDS 코드)으로 분할하려는 경우, MDS 코드의 크기/길이를 결정할 수 있다.In step 210, the base station 201, which is a transmitting node, splits a specific file among a plurality of files to be stored in the cache of the secondary nodes based on the limited memory size and successive transmission probability for each secondary node. You can decide how many file fragments you want. That is, when a particular file is to be divided into a plurality of file fragments (MDS codes) based on MDS coding, the size / length of the MDS codes may be determined.

220 단계에서, 기지국(201)은 결정된 개수(즉, MDS 코드의 크기)에 기초하여 MDS 코딩을 수행하여 특정 파일을 복수개의 파일 조각으로 분할할 수 있다. In step 220, the base station 201 may divide the specific file into a plurality of file pieces by performing MDS coding based on the determined number (ie, the size of the MDS code).

230 단계에서, 기지국(201)은 분할된 복수의 파일 조각을 복수의 보조 노드들의 캐시에 분산 저장하도록 제어할 수 있다. 예컨대, 기지국(201)은 분할된 복수의 파일 조각(즉, 복수의 MDS 코드들)을 복수의 보조 노드들로 브로드캐스트(broadcast)할 수 있다.In operation 230, the base station 201 may control to divide and store the plurality of divided file pieces in a cache of the plurality of auxiliary nodes. For example, the base station 201 may broadcast the divided plurality of file fragments (ie, the plurality of MDS codes) to the plurality of secondary nodes.

240 단계에서, 보조 노드들 각각(202)은 기지국(201)으로부터 제공받은 파일 조각(즉, MDS 코드)를 자신의 캐시(cache)에 저장할 수 있다.In operation 240, each of the secondary nodes 202 may store a file fragment (ie, MDS code) provided from the base station 201 in its cache.

250 단계에서, 사용자 단말(203)이 특정 파일을 전송받고자 하는 경우(즉, 음악, 영화 등의 특정 서비스를 제공받기 위해 요청한 경우), 보조 노드(202)는 특정 파일의 전송 요청을 사용자 단말(203)로부터 수신할 수 있다.In operation 250, when the user terminal 203 wants to receive a specific file (that is, when a request is made to provide a specific service such as music or a movie), the auxiliary node 202 requests a transmission of the specific file from the user terminal ( 203).

260 단계에서, 사용자 단말(203)로부터 요청된 파일의 일부인 파일 조각(즉, MDS 코드)가 보조 노드(202)의 캐시에 미리 저장되어 있음에 따라, 보조 노드(202)는 요청된 파일에 해당하는 파일 조각(즉, MDS 코드)을 별도로 기지국(201)으로 요청하지 않고 바로 사용자 단말(203)로 제공할 수 있다.In step 260, as the file fragment (that is, the MDS code) which is part of the file requested from the user terminal 203 is previously stored in the cache of the secondary node 202, the secondary node 202 corresponds to the requested file. The file fragment (that is, MDS code) may be provided directly to the user terminal 203 without separately requesting the base station 201.

이하에서는, 제한된 메모리의 크기를 갖는 보조 노드들을 대상으로 성공 전송 확률(successful transmission probability)를 최대화하는 방법에 대해 설명하기로 한다. 즉, 130과 같이, 성공 전송 확률을 최대화하기 위해, 특정 파일을 대상으로 MDS 코딩 시, 몇 개의 파일 조각으로 분할하면 최적인지를 결정하는 방법에 대해 설명하기로 한다.Hereinafter, a method of maximizing successful transmission probability for secondary nodes having a limited memory size will be described. That is, as shown in 130, in order to maximize the probability of successful transmission, a method of determining whether it is optimal to divide into several file fragments when MDS coding a specific file will be described.

먼저, 제한된 메모리를 갖는 보조 노드들은 2D 환경에서 푸아송 포인트 프로세스(passion point process)에 따라 평균적으로 단위 면적 당

Figure 112017121962272-pat00007
개 존재함을 가정할 수 있다. 이때, 파일의 크기를 1이라고 하면, 복수의 보조 노드들 각각은 1보다 작은 동등한 메모리 크기를 가질 수 있다. 즉, 보조 노드의 캐시 메모리의 크기는 분할하고자 하는 특정 파일의 전체 크기(예컨대, 1)보다 작으며, 각 보조 노드의 캐시 메모리의 크기는 동일할 수 있다.First, secondary nodes with limited memory are on average per unit area according to the Poisson point process in a 2D environment.
Figure 112017121962272-pat00007
It can be assumed that there are dogs. At this time, if the size of the file is 1, each of the plurality of auxiliary nodes may have an equivalent memory size of less than one. That is, the size of the cache memory of the secondary node is smaller than the total size (eg, 1) of the specific file to be split, and the size of the cache memory of each secondary node may be the same.

확률적 방법을 이용하는 경우, 확률 캐싱은

Figure 112017121962272-pat00008
(
Figure 112017121962272-pat00009
: i번째 파일을 저장할 확률, T: 보조 노드의 메모리 크기, F: 파일의 총 개수)을 제한 조건으로 할 수도 있고, 파일의 분할 조건까지 고려하여 제한 조건을 규정할 수도 있다. 예를 들어, 파일의 분할 조건까지 고려한 경우,
Figure 112017121962272-pat00010
는 파일의 크기가
Figure 112017121962272-pat00011
인 파일
Figure 112017121962272-pat00012
Figure 112017121962272-pat00013
Figure 112017121962272-pat00014
로 저장할 확률로 정의할 수 있다. 그러면, 보조 노드의 메모리 제약 조건은
Figure 112017121962272-pat00015
로 규정/정의될 수 있다. 여기서,
Figure 112017121962272-pat00016
는 i번째 파일을 나눈 개수(즉, 분할된 파일 조각의 개수)를 나타낼 수 있다.When using probabilistic methods, probability caching
Figure 112017121962272-pat00008
(
Figure 112017121962272-pat00009
: the probability of storing the i-th file, T: the memory size of the auxiliary node, F: the total number of files, or the like may be defined in consideration of the partitioning condition of the file. For example, if you consider split conditions for files,
Figure 112017121962272-pat00010
Is the size of the file
Figure 112017121962272-pat00011
File
Figure 112017121962272-pat00012
Figure 112017121962272-pat00013
To
Figure 112017121962272-pat00014
It can be defined as the probability to store as. Then, the memory constraints of the secondary node are
Figure 112017121962272-pat00015
It can be defined / defined as here,
Figure 112017121962272-pat00016
May represent the number of i-th files divided (that is, the number of divided file fragments).

레일레이(Rayleigh) 채널 환경에서 경로 손실(pathloss)을 α라고 하면, α는 자유 공간 상태인 2보다 크다고 가정할 수 있다. 그러면, 레일레이 채널환경에서, 사용자 단말(target user)이 성공적으로 i번째 파일을 전송받을 확률은 아래의 수학식 1과 같이 표현될 수 있다.If pathloss is α in a Rayleigh channel environment, it may be assumed that α is greater than 2, which is a free space state. Then, in the Rayleigh channel environment, the probability that the target user receives the i-th file successfully may be expressed as in Equation 1 below.

[수학식 1][Equation 1]

Figure 112017121962272-pat00017
Figure 112017121962272-pat00017

수학식 1에서,

Figure 112017121962272-pat00018
는 파일 i의 인기도를 나타내고, 집 분포(zipf distribution)를 따름을 가정할 수 있다. 여기서,
Figure 112017121962272-pat00019
이고, 사용자 단말이 클러스터(즉, 반경
Figure 112017121962272-pat00020
)의 중심(origin)에 존재하는 경우,
Figure 112017121962272-pat00021
는 해당 클러스터 내에 j개의 보조 노드가 존재할 확률을 나타내고,
Figure 112017121962272-pat00022
는 j개의 SINR 값 중에서
Figure 112017121962272-pat00023
번째까지 가장 큰 SINR 값을 가지는 값들의 집합을 나타낼 수 있다. 그러면,
Figure 112017121962272-pat00024
는 대칭적 맥 레이트(symmetric mac rate)
Figure 112017121962272-pat00025
로 전송하는 경우, 사용자 단말에서 i번째 파일을 성공적으로 전송받을 확률, 즉, 성공 전송 확률을 나타낼 수 있다. 이때, 도 1의 120과 같이, 히팅 이벤트(hitting event)가 가능하기 위해서는, 해당 클러스터(즉, 반경
Figure 112017121962272-pat00026
) 내에
Figure 112017121962272-pat00027
개 이상의 보조 노드들이 존재해야 할 수 있다. 이에 따라, 수학식 1에서 sum 형태가
Figure 112017121962272-pat00028
부터 무한대까지 되어야 할 수 있다. 그리고, 모든 파일 인덱스(index)에 따라 인기도를 고려하는 경우, 평균 합(average sum)으로서, 평균 전송 확률을 고려할 수 있다.In Equation 1,
Figure 112017121962272-pat00018
Denotes the popularity of file i and can be assumed to follow a zipf distribution. here,
Figure 112017121962272-pat00019
Where the user terminal is a cluster (i.e. radius
Figure 112017121962272-pat00020
In the center of the
Figure 112017121962272-pat00021
Denotes the probability that there are j secondary nodes in the cluster,
Figure 112017121962272-pat00022
Is the j SINR value
Figure 112017121962272-pat00023
It can represent the set of values having the largest SINR value to the first. then,
Figure 112017121962272-pat00024
Is the symmetric mac rate
Figure 112017121962272-pat00025
In this case, the i-th file may be successfully transmitted from the user terminal, that is, the success transmission probability may be indicated. In this case, as shown in 120 of FIG. 1, in order to enable a heating event, a corresponding cluster (ie, a radius) may be used.
Figure 112017121962272-pat00026
Within)
Figure 112017121962272-pat00027
There may be more than one secondary node. Accordingly, the sum form in Equation 1
Figure 112017121962272-pat00028
May have to be infinity. In addition, when considering popularity according to all file indexes, as an average sum, an average transmission probability may be considered.

이때, 파일 간 개별 합(individual sum)으로 제약 조건(constraint)과 목적 함수(objective function)가 표현되고, 파일의 인기도가 클 파일일수록

Figure 112017121962272-pat00029
가 클 때 평균 전송 확률이 큰 값을 가질 수 있다. 이에 따라,
Figure 112017121962272-pat00030
이 클 때 성공 전송 확률(successful transmission probability) 값이 커질 수 있다. 본 발명에서는 파일 간 인기도에 따른
Figure 112017121962272-pat00031
의 변화가 아닌, 파일 하나가 존재하는 경우에 해당 파일을 몇 개로 분할 시 성공 전송 확률(successful transmission probability)이 최대가 되는지를 결정하고자 한다. 이처럼, 특정 파일을 대상으로 몇 조각으로 분할 시 성공 전송 확률이 최대인지를 결정하기 위해, 상기 수학식 1에 표현된 문제는 아래의 수학식 2와 같이 단순화될 수 있다. 수학식 2는 하나의 파일에 대해서
Figure 112017121962272-pat00032
이 고정된 경우에 성공 전송 확률(successful transmission probability)을 최대화하는
Figure 112017121962272-pat00033
(즉, 분할하고자 하는 파일 조각의 개수)를 구하기 위해 이용될 수 있다.In this case, the constraint and the objective function are expressed as individual sums between files, and the more popular files are
Figure 112017121962272-pat00029
When is large, the average transmission probability may have a large value. Accordingly,
Figure 112017121962272-pat00030
When this value is large, a successful transmission probability value may increase. In the present invention according to the popularity between files
Figure 112017121962272-pat00031
In the case of a single file, the successive transmission probability is determined when the file is divided into several files. As such, the problem represented by Equation 1 above may be simplified as shown in Equation 2 below to determine whether the maximum probability of successful transmission when splitting into a number of pieces of a specific file is maximum. Equation 2 is for one file
Figure 112017121962272-pat00032
To maximize the successive transmission probability
Figure 112017121962272-pat00033
(Ie, the number of file fragments to be split).

[수학식 2][Equation 2]

Figure 112017121962272-pat00034
Figure 112017121962272-pat00034

위의 수학식 2에서 표현된 문제(즉, 수학식 1의 문제를 단순화한 문제)는 확률적 캐싱 방법을 이용하여, 파일

Figure 112017121962272-pat00035
Figure 112017121962272-pat00036
에 대해서 보조 노드의 캐시 메모리가
Figure 112017121962272-pat00037
로 할당된 경우, 파일
Figure 112017121962272-pat00038
Figure 112017121962272-pat00039
을 몇 개로 분할 시 성공 전송 확률이 최대화할 수 있으며, 성공 전송 확률이 최대일 때의 저장 확률
Figure 112017121962272-pat00040
이 무엇인지를 풀고자 하는 문제를 나타낼 수 있다.The problem represented by Equation 2 above (ie, the problem of simplifying the problem of Equation 1) can be solved using a stochastic caching method.
Figure 112017121962272-pat00035
Figure 112017121962272-pat00036
The secondary node's cache memory
Figure 112017121962272-pat00037
File, if assigned
Figure 112017121962272-pat00038
Figure 112017121962272-pat00039
Can be maximized to maximize the probability of successful transmission, and the storage probability when the probability of successful transmission is maximum.
Figure 112017121962272-pat00040
This may indicate a problem to solve.

도 3은 본 발명의 일실시예에 있어서, 성공 전송 확률에 기초하여 특정 파일의 파일 조각을 결정하는 방법을 도시한 흐름도이고, 도 4는 본 발명의 일실시예에 있어서, 파일 분산 저장 장치의 내부 구성을 도시한 블록도이다.3 is a flowchart illustrating a method of determining a file fragment of a specific file based on a success transfer probability according to an embodiment of the present invention. FIG. 4 is a flowchart illustrating a file distribution storage device according to an embodiment of the present invention. It is a block diagram which shows the internal structure.

도 4에서, 파일 분산 저장 장치(400)는 결정부(410), 파일 분할부(420) 및 저장 제어부(430)를 포함할 수 있다. 그리고, 도 3의 각 단계들(310 내지 320 단계)은 결정부(410), 파일 분할부(420) 및 저장 제어부(430)에 의해 수행될 수 있다.In FIG. 4, the file distributed storage device 400 may include a determiner 410, a file divider 420, and a storage controller 430. 3 may be performed by the determination unit 410, the file division unit 420, and the storage control unit 430.

310 단계에서, 결정부(410)는 클러스터에 속하는 복수의 보조 노드들의 제한된 메모리 크기와 성공 전송 확률을 고려하여, 클러스터에 속하는 사용자 단말에서 요청될 상기 특정 파일의 파일 조각을 저장 가능한 보조 노드의 개수에 기초하여 분할하고자 하는 개수

Figure 112017121962272-pat00041
를 결정할 수 있다.In operation 310, the determining unit 410 may determine the number of auxiliary nodes capable of storing the file fragment of the specific file to be requested by the user terminal belonging to the cluster, in consideration of the limited memory size and the success transmission probability of the plurality of auxiliary nodes belonging to the cluster. The number to split based on
Figure 112017121962272-pat00041
Can be determined.

이때, 결정부(410)는 비대칭 맥 캐패시티(symmetric mac capacity)

Figure 112017121962272-pat00042
와 확률론적 지오메트리 툴(stochastic geometry tool)을 이용하여 성공 전송 확률의 상계(upper bound) 및 하계(lower bound)를 결정할 수 있다. 그리고, 결정부(410)는 결정된 성공 전송 확률의 상계 내지 하계 점위에서 성공 전송 확률을 최대로 하는 상기 분할하고자 하는 개수
Figure 112017121962272-pat00043
를 결정할 수 있다.At this time, the determination unit 410 is asymmetric mac capacity (symmetric mac capacity)
Figure 112017121962272-pat00042
And the stochastic geometry tool can be used to determine the upper bound and lower bound of the success transfer probability. And, the determination unit 410 is the number to be divided to maximize the success transmission probability in the upper or lower points of the determined success transmission probability
Figure 112017121962272-pat00043
Can be determined.

일례로, 위의 수학식 2에서, 비대칭 맥 캐패시티(symmetric mac capacity)는

Figure 112017121962272-pat00044
개 이상의 랜덤 변수(random variable)로 이루어진 다변수(multi variable) 문제에 해당할 수 있다. 이에 따라, 도 6을 참고하면, 맥 캐패시티 영역(mac capacity region, 610) 중 비대칭 맥 캐패시티(symmetric mac capacity)
Figure 112017121962272-pat00045
(620)의 타이트한 상계(upper bound)에 해당하는 최소 개별 레이트(minimum individual rate)인
Figure 112017121962272-pat00046
(630)과 하계(lower bound)인
Figure 112017121962272-pat00047
(640)을 사용하여 상기 다변수 문제를 동일한 개별 레이트(individual rate)로 생각할 수 있으며, 아래의 수학식 3과 같이 표현될 수 있다. 여기서,
Figure 112017121962272-pat00048
Figure 112017121962272-pat00049
중 최소 SINR 값을 나타낼 수 있다.For example, in Equation 2 above, the asymmetric mac capacity is
Figure 112017121962272-pat00044
This may correspond to a multivariable problem consisting of more than one random variable. Accordingly, referring to FIG. 6, asymmetric mac capacity of the mac capacity region 610 is shown.
Figure 112017121962272-pat00045
The minimum individual rate corresponding to the tight upper bound of (620)
Figure 112017121962272-pat00046
(630) and lower bound
Figure 112017121962272-pat00047
Using 640, the multivariate problem may be considered at the same individual rate, and may be expressed as Equation 3 below. here,
Figure 112017121962272-pat00048
Is
Figure 112017121962272-pat00049
It may represent the minimum SINR value.

[수학식 3][Equation 3]

Figure 112017121962272-pat00050
Figure 112017121962272-pat00050

수학식 3로부터 확률론적 지오메트리 툴(stochastic geometry tool)을 이용하여 성공 전송 확률의 상계(upper bound)가 유도될 수 있으며, 유도된 상계(upper bound) 는 아래의 표 1과 같을 수 있다.From Equation 3, an upper bound of success transmission probability may be derived using a stochastic geometry tool, and the derived upper bound may be as shown in Table 1 below.

Figure 112017121962272-pat00051
Figure 112017121962272-pat00051

표 1의 정리 1(theorem 1)과 유사한 방식으로 성공 전송 확률의 하계(lower bound)를 구할 수 있다. 예컨대, 표 1의

Figure 112017121962272-pat00052
대신에
Figure 112017121962272-pat00053
을 대체함으로써, 성공 전송 확률의 하계(lower bound)를 구할 수 있다. 이때, 표 1의 부등식의 Pr[] 안의 우변 값이
Figure 112017121962272-pat00054
에서
Figure 112017121962272-pat00055
로 대체될 수 있다. 그러면, SINR 값의 dB 파워(power)가 -15dB로부터 5dB를 고려한 상황에서
Figure 112017121962272-pat00056
값은 작은 값을 갖게 되어 상계(upper bound)와 하계(lower bound)의 차이(gap)가 작아질 수 있다.The lower bound of the success transmission probability can be obtained in a manner similar to theorem 1 of Table 1. For example, in Table 1
Figure 112017121962272-pat00052
Instead of
Figure 112017121962272-pat00053
By substituting, the lower bound of the success transmission probability can be obtained. At this time, the right side value in Pr [] of the inequality of Table 1
Figure 112017121962272-pat00054
in
Figure 112017121962272-pat00055
Can be replaced with Then, in a situation where the dB power of the SINR value is taken into account from -15 dB to 5 dB
Figure 112017121962272-pat00056
The value may be small so that the gap between upper bound and lower bound may be small.

이때, 결정된 상계 내지 하계 범위 내에 해당하는 모든

Figure 112017121962272-pat00057
을 대상으로(즉, 하나의 파일을 대상으로 최대 확률 범위 내에서 분할 가능한 최대 개수를 대상으로) 1차원 검색(search)을 하여 성공 전송 확률이 최대인 파일 조각 개수
Figure 112017121962272-pat00058
를 결정할 수도 있으나, 계산 복잡도(complexity)를 줄이기 위해 분할 가능한 모든 개수(예컨대, 10개까지 분할 가능한 경우 1내지 10)가 아닌 일부 개수를 포함하도록 검색 범위를 특정할 수 있다. 클러스터 내에 사용자 단말에서 요청한 파일
Figure 112017121962272-pat00059
Figure 112017121962272-pat00060
을 저장 가능한 보조 노드의 수와 분할될 파일 조각의 개수에 기초하여, 상기 검색 범위는 특정될 수 있다.At this time, all of the fall within the determined upper and lower ranges
Figure 112017121962272-pat00057
The number of file fragments with the highest probability of successful transmission by performing a one-dimensional search on the target file (ie, the maximum number of files that can be split within the maximum probability range for one file).
Figure 112017121962272-pat00058
However, in order to reduce the computational complexity, the search range may be specified to include some numbers other than all the dividable numbers (eg, 1 to 10 when dividing up to 10). File requested by user terminal in cluster
Figure 112017121962272-pat00059
Figure 112017121962272-pat00060
The search range may be specified based on the number of secondary nodes capable of storing the number and the number of file fragments to be divided.

320 단계에서, 결정부(410)는 클러스터 내에 사용자 단말에서 요청한 파일

Figure 112017121962272-pat00061
Figure 112017121962272-pat00062
을 저장 가능한 보조 노드의 수와 분할될 파일 조각의 개수에 기초하여, 상기 검색 범위를 특정할 수 있다. 예컨대, 결정부(410)는
Figure 112017121962272-pat00063
이 1보다 클 때와 1보다 작을 때, 히팅 이벤트(hitting event)를 고려하여 1차원 상에서 검색해야 되는 분할될 파일 조각의 개수를 줄이는 방향으로 검색 범위를 특정할 수 있다. 파일 분할부(420)는 특정 검색 범위 내에서 결정된 분할하고자 하는 개수에 기초하여 파일을 복수개의 파일 조각(즉, MDS 코드들)으로 분할할 수 있으며, 저장 제어부(430)는 분할된 파일 조각을 클러스터 내에 속하는 복수의 보조 노드들의 캐시 메모리에 저장할 수 있다. 예컨대, 동일 파일에 해당하는 서로 다른 파일 조각이 보조 노드들로 브로드캐스됨에 따라, 보조 노드들 각각의 캐시 메모리에 파일 조각이 저장될 수 있다.In operation 320, the determination unit 410 may request a file requested by a user terminal in a cluster.
Figure 112017121962272-pat00061
Figure 112017121962272-pat00062
The search range may be specified based on the number of secondary nodes that can be stored and the number of file fragments to be divided. For example, the determination unit 410 is
Figure 112017121962272-pat00063
When larger than 1 and smaller than 1, the search range may be specified in a direction of reducing the number of file fragments to be divided in one dimension in consideration of a heating event. The file dividing unit 420 may divide a file into a plurality of file fragments (that is, MDS codes) based on the number of segments to be determined within a specific search range, and the storage control unit 430 divides the divided file fragments. It may be stored in the cache memory of a plurality of secondary nodes belonging to the cluster. For example, as different file fragments corresponding to the same file are broadcast to the secondary nodes, the file fragments may be stored in the cache memory of each of the secondary nodes.

이때, 상기 히팅 이벤트(hitting event)에 해당하는 경우(즉, 반경이

Figure 112017121962272-pat00064
인 클러스터에 속하는 보조 노드의 개수가 특정 파일을 대상으로 분할하고자 하는 개수와 동일한 경우),
Figure 112017121962272-pat00065
이 0으로 간주되어 사용자 단말이 모든 보조 노드들로부터 해당 파일의 파일 조각을 제공받을 수 있는 상황이 되므로 아래의 표 2와 같이 푸아송 분포의 정규 분포 근사를 기반으로 M값이 고정되어 있을 때,
Figure 112017121962272-pat00066
에 따른 경향성으로부터 아래의 표 3과 같은 정리(theorem) 2가 유도될 수 있다. 여기서,
Figure 112017121962272-pat00067
Figure 112017121962272-pat00068
로 분할된 패킷을 전송 영역
Figure 112017121962272-pat00069
안의 클러스터 내에서 평균적으로 저장하고 있는 양을 나타낼 수 있다. 이에 따라, M이 1보다 큰 경우(M>1)는
Figure 112017121962272-pat00070
로 바꾸어 표현될 수 있으며, 전송 영역 안에 파일 l을 평균적으로 저장한 양이 파일을 분할한 개수
Figure 112017121962272-pat00071
개 보다 클 경우를 나타낼 수 있다. M이 1보다 작거나 같은 경우(M
Figure 112017121962272-pat00072
Figure 112017121962272-pat00073
1인 경우)는
Figure 112017121962272-pat00074
로 바꾸어 표현될 수 있으며, 전송 영역
Figure 112017121962272-pat00075
안의 파일 l을 평균적으로 저장한 양이 파일을 분할한 개수
Figure 112017121962272-pat00076
개 보다 적은 경우를 나타낼 수 있다.At this time, when the heating event (hitting event) (that is, the radius is
Figure 112017121962272-pat00064
If the number of secondary nodes belonging to the cluster is equal to the number you want to split into specific files),
Figure 112017121962272-pat00065
Since this is considered to be 0 and the UE can receive the file fragment of the corresponding file from all secondary nodes, when the M value is fixed based on the normal distribution approximation of the Poisson distribution as shown in Table 2 below,
Figure 112017121962272-pat00066
Theorem 2 as shown in Table 3 can be derived from the tendency according to. here,
Figure 112017121962272-pat00067
silver
Figure 112017121962272-pat00068
Divided packet into transmission area
Figure 112017121962272-pat00069
It can show how much you are storing on average within a cluster. Accordingly, when M is greater than 1 (M> 1)
Figure 112017121962272-pat00070
The number of files divided by the average amount of files stored in the transmission area.
Figure 112017121962272-pat00071
Can be larger than If M is less than or equal to 1 (M
Figure 112017121962272-pat00072
Figure 112017121962272-pat00073
1)
Figure 112017121962272-pat00074
Can be expressed as
Figure 112017121962272-pat00075
The average number of files l stored inside divided the number of files
Figure 112017121962272-pat00076
Fewer cases than may appear.

Figure 112017121962272-pat00077
Figure 112017121962272-pat00077

Figure 112017121962272-pat00078
Figure 112017121962272-pat00078

표 3의 정리 2에서,

Figure 112017121962272-pat00079
Figure 112017121962272-pat00080
을 변수로 하면서 최대화하고자 하는 목적함수를 의미할 수 있다. 그리고,
Figure 112017121962272-pat00081
Figure 112017121962272-pat00082
Figure 112017121962272-pat00083
일 때 다른 경향성을 보이는 것으로 위의 정리 2가 증명될 수 있다. In theorem 2 of Table 3,
Figure 112017121962272-pat00079
silver
Figure 112017121962272-pat00080
Can be used to mean the objective function to maximize. And,
Figure 112017121962272-pat00081
silver
Figure 112017121962272-pat00082
Wow
Figure 112017121962272-pat00083
Theorem
2 can be proved to show a different tendency when

위의 표 3의 정리 2에 따르면, 특정 파일

Figure 112017121962272-pat00084
의 파일 조각을 저장 가능한 보조 노드의 개수가 분할될 파일조각의 개수보다 적은(
Figure 112017121962272-pat00085
) 경우, 결정부(410) 특정 파일
Figure 112017121962272-pat00086
을 분할하지 않고 특정 파일 전체를 통째로 저장하는 것으로 결정할 수 있다. 이처럼, 통째로 파일을 저장하는 것이 최적이지만, 특정 파일의 파일 조각을 저장 가능한 보조 노드의 개수가 분할될 파일조각의 개수 이상(
Figure 112017121962272-pat00087
)인 경우, 결정부(410)는 미리 지정된 최대 확률 범위 내에서 특정 파일을 분할 가능한 최대 개수를 분할하고자 하는 개수로 결정할 수 있다. 즉, 위의 정리 2에 따르면, 파일을 통째로 보조 노드에 저장하는 것뿐만 아니라, 최대 확률 범위 내에서 분할할 수 있는 만큼 해당 파일을 분할하는 것이 최적일 수 있다(즉, 사용자 단말에서 요청한 파일을 보조 노드 간 협력 전송을 통해 정상적으로 복구하는 것에 해당할 수 있다). According to theorem 2 of Table 3 above, certain files
Figure 112017121962272-pat00084
The number of secondary nodes that can store a file fragment of is less than the number of file fragments to be split (
Figure 112017121962272-pat00085
), The decision unit 410 specific file
Figure 112017121962272-pat00086
You can decide to save the entire specific file without splitting it. As such, although it is optimal to save a file as a whole, the number of secondary nodes capable of storing file fragments of a specific file is equal to or greater than the number of pieces of files to be divided (
Figure 112017121962272-pat00087
), The determination unit 410 may determine that the maximum number of possible division of a specific file within a predetermined maximum probability range is desired. That is, according to theorem 2, it may be optimal not only to store the file entirely on the secondary node, but also to divide the file as much as possible so that the file can be split within the maximum probability range (ie, a file requested by the user terminal). It may correspond to normal recovery through cooperative transmission between secondary nodes).

그러면, 위의 정리 2에 의해

Figure 112017121962272-pat00088
인 경우, 파일이 분할될 수록(즉, 많은 조각으로 분할될 수록), 해당 파일에 대한 파일 존재 확률(hitting probability)은 계속해서 감소할 수 있다. 또한, 성공 전송 확률(STP)은 상기 파일 존재 확률에 무선 채널 환경까지 반영한 것이므로, 항상 파일 존재 확률의 하계(lower bound)와 관련될 수 있다.Then, by theorem 2 above
Figure 112017121962272-pat00088
If the file is split (i.e., split into many pieces), the file hitting probability for that file may continue to decrease. Also, since the success transmission probability (STP) reflects the radio channel environment in the file existence probability, it may always be related to the lower bound of the file existence probability.

도 5는 본 발명의 일실시예에 있어서, 파일 존재 확률과 성공 전송 확률의 그래프를 도시한 도면이다.5 is a diagram illustrating a graph of a file existence probability and a successful transmission probability according to one embodiment of the present invention.

도 5를 참고하면, 특정 파일

Figure 112017121962272-pat00089
의 파일 조각을 저장 가능한 보조 노드의 개수가 분할될 파일조각의 개수보다 적은 경우(
Figure 112017121962272-pat00090
), 결정부(410)는 특정 파일을 분할하는 경우에 성공 전송 확률(STP)을 최대화하는 분할될 파일 조각 개수를 결정할 수 있다.Referring to Figure 5, a specific file
Figure 112017121962272-pat00089
If the number of secondary nodes that can store a file fragment of is less than the number of file fragments to be split (
Figure 112017121962272-pat00090
The determination unit 410 may determine the number of file fragments to be divided to maximize the success transmission probability (STP) when the specific file is divided.

일례로, 결정부(410)는 특정 파일

Figure 112017121962272-pat00091
을 대상으로
Figure 112017121962272-pat00092
을 시작으로 2, 3, 4 등으로 계속 파일을 분할하면서, 분할될 각 파일 조각 개수 별 성공 전송 확률(STP)을 계산할 수 있다. 즉, 성공 전송 확률(STP)이 최대가 되는 지점(즉, 성공 전송 확률의 최대값)을 파일을 분할함에 따라, 분할될 파일 조각 개수에 해당하는 성공 전송 확률의 값으로 계속하여 갱신할 수 있다. 즉, 최대 성공 전송 확률을 갱신할 수 있다. 도 4에서는
Figure 112017121962272-pat00093
일 때 성공 전송 확률(STP)이 최대값을 가질 수 있다. 이때, 결정부(410)는 파일을 분할할수록 변화하는 해당 파일
Figure 112017121962272-pat00094
의 파일 존재 확률(hitting probability)을 대상으로, 해당 파일의 성공 전송 확률의 최대값(
Figure 112017121962272-pat00095
, 501)과 동일해 지는 지점(502)에 해당하는 파일 존재 확률을 결정할 수 있다. 그리고, 결정부(410)는 결정된 파일 존재 확률(502)에 해당하는 파일 조각의 개수(503, 즉, 63개)를 결정할 수 있다. 결정부(410)는 파일을 분할하지 않을 때(
Figure 112017121962272-pat00096
)부터 결정된 상기 파일 조각의 개수(503,
Figure 112017121962272-pat00097
)까지를 검색 범위로 특정할 수 있다. 즉, 결정부(410)는 최대 확률 범위 내에서 분할 가능한 파일 조각의 개수인 120개 모두를 대상으로 성공 전송 확률을 구하지 않고,
Figure 112017121962272-pat00098
내지
Figure 112017121962272-pat00099
의 범위 내에서 성공 전송 확률을 계산하고, 계산된 성공 전송 확률 중 최대값(예컨대, 0.325)에 해당하는 파일 조각의 개수(
Figure 112017121962272-pat00100
, 501)를 특정 파일
Figure 112017121962272-pat00101
을 대상으로 분할하고자 하는 최종 파일 조각의 개수로 결정할 수 있다.In one example, the determination unit 410 is a specific file
Figure 112017121962272-pat00091
To target
Figure 112017121962272-pat00092
By starting to divide the file into 2, 3, 4, etc., the success transfer probability (STP) for each number of file fragments to be split can be calculated. That is, by dividing the file at a point where the success transfer probability STP becomes the maximum (that is, the maximum value of the success transfer probability), the success transfer probability corresponding to the number of file fragments to be split may be continuously updated. . That is, the maximum successful transmission probability can be updated. In Figure 4
Figure 112017121962272-pat00093
When the success transmission probability (STP) may have a maximum value. In this case, the determination unit 410 changes the corresponding file as the file is divided.
Figure 112017121962272-pat00094
For the file hitting probability of, the maximum value of the success transfer probability of the file (
Figure 112017121962272-pat00095
, 501 may determine the file existence probability corresponding to the point (502). The determination unit 410 may determine the number of file fragments 503 (ie, 63) corresponding to the determined file existence probability 502. When the determination unit 410 does not divide the file (
Figure 112017121962272-pat00096
The number of the file fragments determined from
Figure 112017121962272-pat00097
) Can be specified as a search range. That is, the determination unit 410 does not calculate the success transfer probability for all 120 pieces of file fragments that can be split within the maximum probability range.
Figure 112017121962272-pat00098
To
Figure 112017121962272-pat00099
Calculate the success transfer probability within the range of, and determine the number of file fragments corresponding to the maximum value of the calculated success transfer probability (eg, 0.325)
Figure 112017121962272-pat00100
501 specific files
Figure 112017121962272-pat00101
This can be determined by the number of final file fragments to be split into.

이처럼, 파일 존재 확률(hitting probability)이 해당 파일의 최대 성공 전송 확률과 동일해지는 지점(즉, 도 5의

Figure 112017121962272-pat00102
)까지 분할될 파일 조각의 개수를 검색하는 경우, 성공 전송 확률(STP)은 파일 존재 확률에 lower bound되어 있으므로 더 이상 성공 전송 확률을 크게 하는
Figure 112017121962272-pat00103
값이 존재할 수 없다. 이에 따라, 결정부(410)는 검색 범위를
Figure 112017121962272-pat00104
내지
Figure 112017121962272-pat00105
로 특정하고, 해당 범위 내에서 해당 파일을 대상으로 분할하고자 하는 파일 조각의 개수를 최종적으로 결정할 수 있다. 즉,
Figure 112017121962272-pat00106
내지
Figure 112017121962272-pat00107
중 어느 하나를 분할하고자 하는 파일 조각의 개수로 최종 결정할 수 있다. 예컨대, 성공 전송 확률을 최대화하는
Figure 112017121962272-pat00108
을 파일 조각의 개수로 최종 결정할 수 있다. 이외에, 파일의 인기도 등의 추가 파라미터를 고려하여 상기
Figure 112017121962272-pat00109
내지
Figure 112017121962272-pat00110
Figure 112017121962272-pat00111
이 아닌 다른 값을 최종 파일 조각의 개수로 결정할 수도 있다. 이처럼,
Figure 112017121962272-pat00112
내지
Figure 112017121962272-pat00113
까지만 검색함에 따라, 120까지 검색할 때 대비 상대적으로 복잡도가 절반으로 감소할 수 있다. 이때, 도 5의 510을 참고하면, 성공 전송 확률의 하계(lower bound)와 상계(upper bound)가 많이 타이트(tight)해서 구별이 안될 수 있으며, 이 경우, 성공 전송 확률의 하계(lower bound) 및 상계(upper bound) 중 어느 것을 선택해도 문제가 되지 않을 수 있다.As such, the point at which the file hitting probability becomes equal to the maximum successful transfer probability of the file (ie, FIG. 5).
Figure 112017121962272-pat00102
When searching for the number of file fragments to be divided up to), the success transfer probability (STP) is lower bound to the file existence probability, so
Figure 112017121962272-pat00103
The value cannot exist. Accordingly, the determination unit 410 determines the search range.
Figure 112017121962272-pat00104
To
Figure 112017121962272-pat00105
In this example, the number of file fragments to be split into the corresponding file within the corresponding range may be finally determined. In other words,
Figure 112017121962272-pat00106
To
Figure 112017121962272-pat00107
One can finally determine the number of file fragments to be split. For example, to maximize the probability of successful transmission
Figure 112017121962272-pat00108
Can be determined by the number of file fragments. In addition, considering the additional parameters such as the popularity of the file
Figure 112017121962272-pat00109
To
Figure 112017121962272-pat00110
medium
Figure 112017121962272-pat00111
You can also determine a value other than the number of final file fragments. Likewise,
Figure 112017121962272-pat00112
To
Figure 112017121962272-pat00113
As far as searching only, the complexity may be reduced by half compared to when searching up to 120. In this case, referring to 510 of FIG. 5, the lower bound and the upper bound of the success transmission probability may be indistinguishable from each other and in this case, the lower bound of the success transmission probability may be indistinguishable. And either upper bound may not be a problem.

도 5에서 설명한

Figure 112017121962272-pat00114
인 경우, 즉, 클러스터 내에서 특정 파일
Figure 112017121962272-pat00115
또는 특정 파일
Figure 112017121962272-pat00116
의 파일 조각을 저장하고 있는 평균 보조 노드의 개수가 분할된 파일 조각의 개수 이하인 경우, 계산 복잡도를 줄이면서 성공 전송 확률(STP)을 최대화하는 알고리즘은 아래의 표 4와 같을 수 있다.5 described
Figure 112017121962272-pat00114
That is, specific files within the cluster
Figure 112017121962272-pat00115
Or specific files
Figure 112017121962272-pat00116
If the average number of secondary nodes that store the file fragments is equal to or less than the number of fragmented file fragments, an algorithm for maximizing the success transmission probability (STP) while reducing the computational complexity may be as shown in Table 4 below.

Figure 112017121962272-pat00117
Figure 112017121962272-pat00117

다시 위의 표 1을 참고하면,

Figure 112017121962272-pat00118
인 경우(즉, 클러스터 내에서 특정 파일
Figure 112017121962272-pat00119
또는 특정 파일
Figure 112017121962272-pat00120
의 파일 조각을 저장하고 있는 평균 보조 노드의 개수가 분할된 파일 조각의 개수보다 많은 경우), 표 1의 정리 1의 상계(upper bound)를 전개하면 아래의 수학식 4와 같을 수 있다.Referring back to Table 1 above,
Figure 112017121962272-pat00118
(That is, specific files within the cluster
Figure 112017121962272-pat00119
Or specific files
Figure 112017121962272-pat00120
If the average number of secondary nodes that store the file fragments of is larger than the number of fragmented file fragments), the upper bound of theorem 1 of Table 1 may be expanded as shown in Equation 4 below.

[수학식 4][Equation 4]

Figure 112017121962272-pat00121
Figure 112017121962272-pat00121

위의 수학식 2에서 최적화하려는 목적함수는

Figure 112017121962272-pat00122
이 0일 경우에
Figure 112017121962272-pat00123
=1이 되고, 결과적으로 히팅 목적 함수(hitting objective function)가 파일 존재 확률(hitting probability)로 정의될 수 있다. 그러면, 파일 존재 확률(hitting probability)은
Figure 112017121962272-pat00124
와 같이 표현될 수 있으며, 채널 환경을 반영한 경우인 위의 수학식 4를 전개해서 풀어쓰면
Figure 112017121962272-pat00125
와 같이 표현될 수 있다. 즉, 위의 표 2 에서 보완 히팅 확률(complementary hitting probability)(=1-hitting probability)인
Figure 112017121962272-pat00126
와 유사한 형태로 반영되어 있음을 알 수 있다. 다시 말해, 위의 수학식 4는
Figure 112017121962272-pat00127
의 형태와 유사하며,
Figure 112017121962272-pat00128
Figure 112017121962272-pat00129
로 대체하고 정규 근사(normal approximation)를 이용하면 위의 수학식 4로부터 아래의 수학식 5가 도출될 수 있다.The objective function to optimize in Equation 2 above
Figure 112017121962272-pat00122
If is 0
Figure 112017121962272-pat00123
= 1, and as a result, a heating objective function may be defined as a file hitting probability. Then the file hitting probability is
Figure 112017121962272-pat00124
It can be expressed as, and if you expand the equation (4) above to reflect the channel environment
Figure 112017121962272-pat00125
It can be expressed as That is, in Table 2, the complementary hitting probability (= 1-hitting probability)
Figure 112017121962272-pat00126
It can be seen that it is reflected in the form similar to. In other words, Equation 4 above
Figure 112017121962272-pat00127
Similar to the form of,
Figure 112017121962272-pat00128
of
Figure 112017121962272-pat00129
By substituting for and using normal approximation, Equation 5 below can be derived from Equation 4 above.

[수학식 5][Equation 5]

Figure 112017121962272-pat00130
Figure 112017121962272-pat00130

수학식 5에서, N이 커질수록

Figure 112017121962272-pat00131
에 근사하게 되고, 결국,
Figure 112017121962272-pat00132
에 대해서
Figure 112017121962272-pat00133
를 만족하는
Figure 112017121962272-pat00134
이 존재할 수 있다.
Figure 112017121962272-pat00135
를 잘 결정하면, 위의 수학식 5는 아래의 수학식 6 및 수학식 7과 같이 표현될 수 있다. 즉,
Figure 112017121962272-pat00136
에 대해
Figure 112017121962272-pat00137
이 1에 수렴하도록
Figure 112017121962272-pat00138
를 미리 지정된 기준값 이하의 상당히 작은 값으로 만들면 위의 수학식 5는 아래의 수학식 6 및 7과 같이 표현될 수 있다. 예컨대,
Figure 112017121962272-pat00139
Figure 112017121962272-pat00140
에 반비례하는 함수에 해당할 수 있다.In Equation 5, as N increases
Figure 112017121962272-pat00131
To be cool, eventually,
Figure 112017121962272-pat00132
about
Figure 112017121962272-pat00133
To satisfy
Figure 112017121962272-pat00134
This may exist.
Figure 112017121962272-pat00135
When well determined, Equation 5 above may be expressed as Equation 6 and Equation 7 below. In other words,
Figure 112017121962272-pat00136
About
Figure 112017121962272-pat00137
To converge on this one
Figure 112017121962272-pat00138
When E is made to be a significantly smaller value below a predetermined reference value, Equation 5 above may be expressed as Equations 6 and 7 below. for example,
Figure 112017121962272-pat00139
Is
Figure 112017121962272-pat00140
This may correspond to a function inversely proportional to.

또한, 파일 존재 확률(hitting probability)은

Figure 112017121962272-pat00141
에서
Figure 112017121962272-pat00142
이 되므로,
Figure 112017121962272-pat00143
에서 증가할 수 있다. 이에 따라,
Figure 112017121962272-pat00144
로부터
Figure 112017121962272-pat00145
인 경우에 성공 전송 확률(STP)가 증가할 수 있다. 이때,
Figure 112017121962272-pat00146
에 해당할 수 있다. 이처럼,
Figure 112017121962272-pat00147
인 경우에도
Figure 112017121962272-pat00148
일 때와 마찬가지로 모든 가능한 범위를 대상으로
Figure 112017121962272-pat00149
에 대해서 검색을 하는 것이 아니라,
Figure 112017121962272-pat00150
의 집합 내에서 검색이 수행될 수 있다. 즉, 결정부(410)는
Figure 112017121962272-pat00151
인 경우, 검색 범위를
Figure 112017121962272-pat00152
로 특정할 수 있다. 여기서, NF는 가능한 확률범위 내에서 분할 가능한 최대 개수(즉, 최대 분할의 수)를 나타낼 수 있다.
Figure 112017121962272-pat00153
인 경우에도 특정 파일을 여러 조각으로 분할 시 전체가 아닌 검색 범위를
Figure 112017121962272-pat00154
로 특정하고, 특정된 검색 범위 내에서 최종적으로 분할에 적용할 파일 조각의 개수를 결정함으로써, 계산 복잡도는 낮추면서 STP를 최대화하는
Figure 112017121962272-pat00155
을 찾을 수 있다. Also, the file hitting probability is
Figure 112017121962272-pat00141
in
Figure 112017121962272-pat00142
This becomes
Figure 112017121962272-pat00143
Can increase from Accordingly,
Figure 112017121962272-pat00144
from
Figure 112017121962272-pat00145
In this case, the success transmission probability (STP) may increase. At this time,
Figure 112017121962272-pat00146
It may correspond to. Likewise,
Figure 112017121962272-pat00147
Even if
Figure 112017121962272-pat00148
To all possible ranges
Figure 112017121962272-pat00149
Rather than searching for,
Figure 112017121962272-pat00150
The search may be performed within the set of. That is, the determination unit 410 is
Figure 112017121962272-pat00151
If, the search scope
Figure 112017121962272-pat00152
Can be specified as Here, N F may represent the maximum number of possible divisions (ie, the maximum number of divisions) within a possible probability range.
Figure 112017121962272-pat00153
Even if you split a specific file into pieces,
Figure 112017121962272-pat00154
By determining the number of file fragments to be finally applied to the partition within the specified search range, we maximize STP while reducing computational complexity.
Figure 112017121962272-pat00155
Can be found.

구체적으로,

Figure 112017121962272-pat00156
Figure 112017121962272-pat00157
에 대해
Figure 112017121962272-pat00158
값이 0에 가까운 값으로 고정된 경우,
Figure 112017121962272-pat00159
을 만족하는 값에 해당할 수 있다. 예컨대,
Figure 112017121962272-pat00160
이지만,
Figure 112017121962272-pat00161
인 상황을 나타낼 수 있다. 그리고,
Figure 112017121962272-pat00162
는 파일 존재 확률(hitting probability)의 극값을 0으로 만드는 값으로서,
Figure 112017121962272-pat00163
일 때
Figure 112017121962272-pat00164
인 경우에 파일 존재 확률(hitting probability)은 감소하고,
Figure 112017121962272-pat00165
인 경우에 파일 존재 확률(hitting probability)은 증가할 수 있다. 그리고, M이 커질 경우
Figure 112017121962272-pat00166
는 작아질 수 있다. 이에 따라 파일 l을 분할한 개수
Figure 112017121962272-pat00167
(단,
Figure 112017121962272-pat00168
)에 대해서 STP가 계속적으로 증가하게 되고, 결과적으로
Figure 112017121962272-pat00169
범위만 검색(search)을 하여 복잡도를 낮추면서 STP를 최대화하는 파일 l의 분할
Figure 112017121962272-pat00170
을 찾을 수 있다.Specifically,
Figure 112017121962272-pat00156
silver
Figure 112017121962272-pat00157
About
Figure 112017121962272-pat00158
If the value is fixed to near zero,
Figure 112017121962272-pat00159
It may correspond to a value satisfying. for example,
Figure 112017121962272-pat00160
as,
Figure 112017121962272-pat00161
May indicate a situation. And,
Figure 112017121962272-pat00162
Is the value that makes the extreme value of the file hitting probability zero.
Figure 112017121962272-pat00163
when
Figure 112017121962272-pat00164
If the file hitting probability decreases,
Figure 112017121962272-pat00165
If the file hitting probability (Hitting probability) may increase. And if M becomes large
Figure 112017121962272-pat00166
Can be made smaller. The number of files l divided accordingly
Figure 112017121962272-pat00167
(only,
Figure 112017121962272-pat00168
), The STP will continue to increase
Figure 112017121962272-pat00169
Partitioning of files l to maximize STP while reducing complexity by searching only ranges
Figure 112017121962272-pat00170
Can be found.

이상에서 설명한 바와 같이, MDS 코딩을 기반으로 파일을 여러 조각으로 분할함에 있어서, 파일 다양성을 고려하여 성공 전송 확률(STP)를 최대화하는 분할 개수를 결정하기 위해

Figure 112017121962272-pat00171
일 때(즉, 사용자 단말에서 요청한 파일을 서비스할 수 있는 반경 내에서 해당 파일(예컨대, 파일 l)을 저장하고 있는 평균 보조 노드의 수가 분할된 파일의 개수보다 적을 경우)와
Figure 112017121962272-pat00172
경우(사용자 단말에서 요청한 파일을 서비스할 수 있는 반경 내에서 해당 파일(예컨대, 파일 1)을 저장하고 있는 평균 보조 노드의 수가 분할된 파일의 개수보다 많을 경우)로 구분하여 검색 범위가 특정될 수 있다. 그리고, 특정된 검색 범위 내에서 성공 전송 확률(STP)을 최대화하는 해당 파일을 분할할 파일 조각의 개수 최종 결정함으로써, 검색 범위를 특정하기 이전보다 상대적으로 계산 복잡도는 감소시키면서 성공 전송 확률을 최대화하는 파일 조각의 개수를 찾을 수 있다. 즉, 계산 복잡도는 줄이면서 단말에서는 요청한 파일을 보조 노드들 간의 협력 전송을 통해 성공적으로 복구할 수 있다.As described above, in dividing a file into pieces based on MDS coding, in order to determine the number of partitions to maximize the success transmission probability (STP) in consideration of file diversity.
Figure 112017121962272-pat00171
(I.e., if the average number of secondary nodes storing the file (eg, file l) is smaller than the number of partitioned files within a radius that can service the file requested by the user terminal).
Figure 112017121962272-pat00172
The search range can be specified by dividing into cases (when the average number of secondary nodes storing the file (eg, file 1) is larger than the number of divided files within a radius in which the file requested by the user terminal can be serviced). have. By finally determining the number of file fragments for dividing the corresponding file maximizing the success transfer probability (STP) within the specified search range, maximizing the success transfer probability while reducing the computational complexity relative to before specifying the search range. Find the number of file fragments. That is, while reducing the computational complexity, the terminal can successfully recover the requested file through cooperative transmission between secondary nodes.

실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. The method according to the embodiment may be embodied in the form of program instructions that can be executed by various computer means and recorded in a computer readable medium. The computer readable medium may include program instructions, data files, data structures, etc. alone or in combination. The program instructions recorded on the media may be those specially designed and constructed for the purposes of the embodiments, or they may be of the kind well-known and available to those having skill in the computer software arts. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tape, optical media such as CD-ROMs, DVDs, and magnetic disks, such as floppy disks. Magneto-optical media, and hardware devices specifically configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like. Examples of program instructions include not only machine code generated by a compiler, but also high-level language code that can be executed by a computer using an interpreter or the like.

이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.Although the embodiments have been described by the limited embodiments and the drawings as described above, various modifications and variations are possible to those skilled in the art from the above description. For example, the described techniques may be performed in a different order than the described method, and / or components of the described systems, structures, devices, circuits, etc. may be combined or combined in a different form than the described method, or other components. Or even if replaced or substituted by equivalents, an appropriate result can be achieved.

그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.Therefore, other implementations, other embodiments, and equivalents to the claims are within the scope of the claims that follow.

Claims (18)

파일 분산 저장 장치가 클러스터(cluster)에 속하는 복수의 보조 노드(help node)에 파일을 분산 저장하는 방법에 있어서,
상기 파일을 대상으로, 보조 노드 별 제한된 메모리 크기 및 성공 전송 확률(successful transmission probability)에 기초하여, 상기 복수의 보조 노드 중 적어도 어느 하나를 결정하는 단계;
상기 결정된 보조 노드의 개수 및 상기 제한된 메모리 크기에 기초하여, 상기 파일을 분할하고자 하는 개수를 결정하는 단계;
상기 파일을 MDS(Maximum Distance Separable) 코딩에 기초하여, 상기 결정된 개수에 상응하는 파일 조각으로 분할하는 단계; 및
상기 결정된 보조 노드 각각이 상기 제한된 메모리 크기에 따라 상기 파일 조각 중 적어도 어느 하나를 저장하도록, 상기 파일 조각을 상기 결정된 보조 노드에 분산 저장하는 단계
를 포함하는 파일 분산 저장 방법.
In the method in which the file distributed storage device distributed the file to a plurality of help nodes belonging to a cluster (cluster),
Determining at least one of the plurality of secondary nodes based on the limited memory size and successive transmission probability for each secondary node for the file;
Determining the number of files to be divided based on the determined number of auxiliary nodes and the limited memory size;
Dividing the file into file fragments corresponding to the determined number based on Maximum Distance Separable (MDS) coding; And
Distributing and storing the file fragments in the determined secondary node such that each of the determined secondary nodes stores at least one of the file fragments in accordance with the limited memory size.
Distributed storage method comprising a.
제1항에 있어서,
상기 제한된 메모리 크기는 상기 파일의 크기보다 작은 파일 분산 저장 방법.
The method of claim 1,
And the limited memory size is less than the size of the file.
삭제delete 제1항에 있어서,
상기 결정된 보조 노드의 개수가 1이면, 상기 파일을 분할하지 않고 상기 결정된 보조 노드에 저장하는 단계
를 더 포함하는 파일 분산 저장 방법.
The method of claim 1,
If the determined number of secondary nodes is 1, storing the file in the determined secondary node without dividing the file
Distributed storage method comprising more.
제1항에 있어서,
상기 분할하고자 하는 개수를 결정하는 단계는,
분할될 파일 조각 개수 별 성공 전송 확률(successive transmission probability)을 계산하는 단계;
계산된 성공 전송 확률들 중 최대값으로 최대 성공 전송 확률을 갱신하는 단계;
파일을 분할할수록 변화하는 상기 클러스터 내부의 파일 존재확률(hitting probability)을 대상으로, 상기 최대 성공 전송 확률에 해당하는 파일 존재확률을 결정하는 단계; 및
상기 결정된 파일 존재확률에 대응하여, 상기 분할하고자 하는 개수를 결정하는 단계
를 포함하는 파일 분산 저장 방법.
The method of claim 1,
Determining the number to be divided,
Calculating a successive transmission probability for each number of file fragments to be divided;
Updating the maximum success transmission probability to the maximum of the calculated success transmission probabilities;
Determining a file existence probability corresponding to the maximum successful transmission probability based on a file hitting probability within the cluster that changes as a file is divided; And
Determining the number to be divided according to the determined file existence probability
Distributed storage method comprising a.
제5항에 있어서,
상기 분할하고자 하는 개수를 결정하는 단계는,
파일 조각 개수가 1일 때부터 상기 결정된 파일 존재확률에 대응하는 분할될 파일 조각 개수까지의 범위로 검색 범위를 특정하는 단계; 및
상기 검색 범위 내에서 성공 전송 확률이 최대인 파일 조각 개수를 상기 분할하고자 하는 개수로 최종 결정하는 단계
를 더 포함하는 파일 분산 저장 방법.
The method of claim 5,
Determining the number to be divided,
Specifying a search range in a range from when the number of file fragments is 1 to the number of file fragments to be divided corresponding to the determined file existence probability; And
Finally determining the number of file fragments having a maximum transmission probability within the search range as the number to be divided
Distributed storage method comprising more.
제5항에 있어서,
상기 복수의 보조 노드에 상기 파일 또는 상기 파일의 일부가 저장되어 있을 확률을 나타내는 상기 파일 존재확률(hitting probability)은, 상기 파일을 대상으로 분할된 파일 조각의 개수가 많아질수록 상대적으로 감소하는 파일 분산 저장 방법.
The method of claim 5,
The file hitting probability, which indicates the probability that the file or a part of the file is stored in the plurality of auxiliary nodes, is a file that decreases as the number of file fragments divided for the file increases. Distributed storage method.
제1항에 있어서,
상기 분할하고자 하는 개수를 결정하는 단계는,
상기 결정된 보조 노드의 개수가 분할될 파일조각의 개수 이상인 경우, 미리 지정된 최대 확률 범위 내에서 상기 파일을 분할 가능한 최대 개수를 상기 분할하고자 하는 개수로 결정하는 파일 분산 저장 방법.
The method of claim 1,
Determining the number to be divided,
If the determined number of auxiliary nodes is equal to or greater than the number of file fragments to be divided, determining the maximum number of possible file divisions within a predetermined maximum probability range as the number to be divided.
제1항에 있어서,
상기 클러스터에 속하는 사용자 단말에서 상기 파일의 제공이 요청됨에 따라, 상기 결정된 보조 노드 간 협력 전송을 기반으로 상기 파일이 상기 사용자 단말로 제공되는 파일 분산 저장 방법.
The method of claim 1,
When the file is requested from a user terminal belonging to the cluster, the file is distributed to the user terminal based on cooperative transmission between the determined secondary nodes.
클러스터(cluster)에 속하는 복수의 보조 노드(help node)에 파일을 분산 저장하는 파일 분산 저장 장치에 있어서,
상기 파일을 대상으로, 보조 노드 별 제한된 메모리 크기 및 성공 전송 확률(successful transmission probability)에 기초하여, 상기 복수의 보조 노드 중 적어도 어느 하나를 결정하고, 상기 결정된 보조 노드의 개수 및 상기 제한된 메모리 크기에 기초하여, 상기 파일을 분할하고자 하는 개수를 결정하는 결정부;
상기 파일을 MDS(Maximum Distance Separable) 코딩에 기초하여, 상기 결정된 개수에 상응하는 파일 조각으로 분할하는 파일 분할부; 및
상기 결정된 보조 노드 각각이 상기 제한된 메모리 크기에 따라 상기 파일 조각 중 적어도 어느 하나를 저장하도록, 상기 파일 조각을 상기 결정된 보조 노드에 분산 저장하는 저장 제어부
를 포함하는 파일 분산 저장 장치.
A file distributed storage device for distributing and storing files in a plurality of help nodes belonging to a cluster,
Based on the limited memory size and successive transmission probability of each secondary node for the file, at least one of the plurality of secondary nodes is determined, and the determined number of secondary nodes and the limited memory size are determined. A determining unit determining a number of files to be divided;
A file division unit for dividing the file into file fragments corresponding to the determined number based on MDS (Maximum Distance Separable) coding; And
A storage controller configured to distribute and store the file fragments in the determined secondary node such that each of the determined secondary nodes stores at least one of the file fragments according to the limited memory size
Distributed storage device including a.
제10항에 있어서,
상기 제한된 메모리 크기는 상기 파일의 크기보다 작은 파일 분산 저장 장치.
The method of claim 10,
And the limited memory size is less than the size of the file.
삭제delete 제10항에 있어서,
상기 결정부는,
상기 결정된 보조 노드의 개수가 1이면, 상기 파일을 분할하지 않고 상기 결정된 보조 노드에 저장하는 파일 분산 저장 장치.
The method of claim 10,
The determination unit,
If the determined number of secondary nodes is 1, the file distribution storage device for storing the determined secondary node without dividing the file.
제10항에 있어서,
상기 결정부는,
분할될 파일 조각 개수 별 성공 전송 확률(successive transmission probability)을 계산하고, 계산된 성공 전송 확률들 중 최대값으로 최대 성공 전송 확률을 갱신하고, 파일을 분할할수록 변화하는 상기 클러스터 내부의 파일 존재확률(hitting probability)을 대상으로, 상기 최대 성공 전송 확률에 해당하는 파일 존재확률을 결정하고, 상기 결정된 파일 존재확률에 대응하여, 상기 분할하고자 하는 개수를 결정하는 파일 분산 저장 장치.
The method of claim 10,
The determination unit,
Calculate the successive transmission probability for each number of file fragments to be split, update the maximum successful transmission probability to the maximum of the calculated successive transmission probabilities, and change the file existence probability in the cluster as the file is divided. and determining a file existence probability corresponding to the maximum successful transmission probability, and determining the number to be divided according to the determined file existence probability.
제14항에 있어서,
상기 결정부는,
파일 조각 개수가 1일 때부터 상기 결정된 파일 존재확률에 대응하는 분할될 파일 조각 개수까지의 범위로 검색 범위를 특정하고, 상기 검색 범위 내에서 성공 전송 확률이 최대인 파일 조각 개수를 상기 분할하고자 하는 개수로 최종 결정하는 파일 분산 저장 장치.
The method of claim 14,
The determination unit,
To specify the search range from the time when the number of file fragments is 1 to the number of file fragments to be divided corresponding to the determined file existence probability, and to divide the number of file fragments having the maximum success transfer probability within the search range. File distributed storage that ultimately determines by count.
제14항에 있어서,
상기 복수의 보조 노드에 상기 파일 또는 상기 파일의 일부가 저장되어 있을 확률을 나타내는 상기 파일 존재확률(hitting probability)은, 상기 파일을 대상으로 분할된 파일 조각의 개수가 많아질수록 상대적으로 감소하는 파일 분산 저장 장치.
The method of claim 14,
The file hitting probability, which indicates the probability that the file or a part of the file is stored in the plurality of auxiliary nodes, is a file that decreases as the number of file fragments divided for the file increases. Distributed storage.
제10항에 있어서,
상기 결정부는,
상기 결정된 보조 노드의 개수가 분할될 파일조각의 개수 이상인 경우, 미리 지정된 최대 확률 범위 내에서 상기 파일을 분할 가능한 최대 개수를 상기 분할하고자 하는 개수로 결정하는 파일 분산 저장 장치.
The method of claim 10,
The determination unit,
And when the determined number of auxiliary nodes is equal to or greater than the number of file fragments to be divided, determining the maximum number of possible file divisions within a predetermined maximum probability range as the number to be divided.
제10항에 있어서,
상기 클러스터에 속하는 사용자 단말에서 상기 파일의 제공이 요청됨에 따라, 상기 결정된 보조 노드 간 협력 전송을 기반으로 상기 파일이 상기 사용자 단말로 제공되는 파일 분산 저장 장치.

The method of claim 10,
When the file is requested from a user terminal belonging to the cluster, the file is distributed to the user terminal based on the determined cooperative transmission between the auxiliary nodes.

KR1020170167291A 2017-12-07 2017-12-07 Method for probabilistic file optial recovering in helper nodes with limited cache memory and distributed storage method and apparatus KR102015188B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020170167291A KR102015188B1 (en) 2017-12-07 2017-12-07 Method for probabilistic file optial recovering in helper nodes with limited cache memory and distributed storage method and apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170167291A KR102015188B1 (en) 2017-12-07 2017-12-07 Method for probabilistic file optial recovering in helper nodes with limited cache memory and distributed storage method and apparatus

Publications (2)

Publication Number Publication Date
KR20190067394A KR20190067394A (en) 2019-06-17
KR102015188B1 true KR102015188B1 (en) 2019-08-27

Family

ID=67064886

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170167291A KR102015188B1 (en) 2017-12-07 2017-12-07 Method for probabilistic file optial recovering in helper nodes with limited cache memory and distributed storage method and apparatus

Country Status (1)

Country Link
KR (1) KR102015188B1 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101432314B1 (en) 2006-02-22 2014-08-20 마이크로소프트 코포레이션 Reliable, efficient peer-to-peer storage

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101924691B1 (en) * 2016-03-17 2018-12-03 한국과학기술원 Distributed storage method and apparatus based on cache memory in the wireless communication

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101432314B1 (en) 2006-02-22 2014-08-20 마이크로소프트 코포레이션 Reliable, efficient peer-to-peer storage

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Seong Ho Chae 등, "Caching Placement in Stochastic Wireless Caching Helper Networks: Channel Selection Diversity via Caching", IEEE Transactions on Wireless Communications, pp 1~12 (2016.06.29.) 1부.*

Also Published As

Publication number Publication date
KR20190067394A (en) 2019-06-17

Similar Documents

Publication Publication Date Title
KR101785221B1 (en) Method and apparatus for determing caching probability based on transmissing success probability of the file in the wireless communication
KR101541259B1 (en) Method and apparatus for synchronizing popularity value of cache data and method, apparatus, and system for distributed caching
CN109194763B (en) Caching method based on small base station self-organizing cooperation in ultra-dense network
CN108432337B (en) Base station and method for managing distribution of multiple files to user equipment
CN109673018B (en) Novel content cache distribution optimization method in wireless heterogeneous network
CN107295619B (en) Base station dormancy method based on user connection matrix in edge cache network
CN112788139B (en) Block chain storage capacity optimization method and system
CN108600998B (en) Cache optimization decision method for ultra-density cellular and D2D heterogeneous converged network
CN103781115B (en) Distributed base station buffer replacing method based on transmission cost in a kind of cellular network
KR101924691B1 (en) Distributed storage method and apparatus based on cache memory in the wireless communication
Tran et al. Mobee: Mobility-aware energy-efficient coded caching in cloud radio access networks
CN108541025B (en) Wireless heterogeneous network-oriented base station and D2D common caching method
CN111698732B (en) Time delay oriented cooperative cache optimization method in micro-cellular wireless network
KR102120660B1 (en) Content cachhing mehtod using mobile cache
CN110602722A (en) Design method for joint content pushing and transmission based on NOMA
CN111314349B (en) Code caching method based on joint maximum distance code division and cluster cooperation in fog wireless access network
KR102015188B1 (en) Method for probabilistic file optial recovering in helper nodes with limited cache memory and distributed storage method and apparatus
KR101907786B1 (en) Distributed storage method and apparatus for cooperation between multiple helper nodes with cached memory
WO2017108070A1 (en) A micro base station comprising a cache-memory to provide files to a user-equipment
CN111556531A (en) Cooperative cache optimization method in micro-cellular wireless network
KR101966588B1 (en) Method and apparatus for receiving video contents
KR102151314B1 (en) Optimization method and system of random content caching in heterogeneous small cell networks
KR101979099B1 (en) Method and apparatus for group transmitting based on cached memory of user equipment
Kollias et al. Joint consideration of content popularity and size in device-to-device caching scenarios
CN109327848B (en) Wireless cache resource optimization method adopting zero-forcing beamforming

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