[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

KR20190065803A - Method and apparatus for coding index in user equipment with limited memori state information and wireless communication method - Google Patents

Method and apparatus for coding index in user equipment with limited memori state information and wireless communication method Download PDF

Info

Publication number
KR20190065803A
KR20190065803A KR1020170165330A KR20170165330A KR20190065803A KR 20190065803 A KR20190065803 A KR 20190065803A KR 1020170165330 A KR1020170165330 A KR 1020170165330A KR 20170165330 A KR20170165330 A KR 20170165330A KR 20190065803 A KR20190065803 A KR 20190065803A
Authority
KR
South Korea
Prior art keywords
index
index code
code
user terminal
optimal
Prior art date
Application number
KR1020170165330A
Other languages
Korean (ko)
Other versions
KR102043510B1 (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 KR1020170165330A priority Critical patent/KR102043510B1/en
Publication of KR20190065803A publication Critical patent/KR20190065803A/en
Application granted granted Critical
Publication of KR102043510B1 publication Critical patent/KR102043510B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0015Systems modifying transmission characteristics according to link quality, e.g. power backoff characterised by the adaptation strategy
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/185Arrangements for providing special services to substations for broadcast or conference, e.g. multicast with management of multicast group membership
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • H04L49/9063Intermediate storage in different physical parts of a node or terminal
    • H04L49/9078Intermediate storage in different physical parts of a node or terminal using an external memory or storage device

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Quality & Reliability (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

Disclosed are a method and an apparatus for index coding in an environment where memory storage information of a user terminal is limited, and a wireless communications method. The method for index coding for a plurality of user terminals belonging to a base station in a network environment where memory storage information of a user terminal changes over times, comprises the following steps of: determining an index code to be used for index coding based on memory storage information of a user terminal estimated by the base station, from an index code set including decodable index codes; selecting an index code different from the index code determined from the index code set; comparing the determined index code with the selected different index code to determine an optimal index code; and transmitting a file requested in a corresponding terminal to at least one user terminal corresponding to the determined optimal index code, wherein the index code may indicate a user group grouped based on the requested file among the user terminals.

Description

사용자 단말의 메모리 저장 정보가 제한된 환경에서의 인덱스 부호화 방법 및 장치, 그리고 무선 통신 방법{METHOD AND APPARATUS FOR CODING INDEX IN USER EQUIPMENT WITH LIMITED MEMORI STATE INFORMATION AND WIRELESS COMMUNICATION METHOD} BACKGROUND OF THE INVENTION 1. Field of the Invention [0001] The present invention relates to a method and apparatus for index encoding in an environment where memory storage information of a user terminal is limited, and a wireless communication method.

본 발명은 기지국이 사용자 단말의 메모리 저장 정보(Memory State Information, MSI)를 정확히 알지 못하는 네트워크 환경에서 인덱스 부호화에 기반한 멀티캐스트 전송을 제공하는 기술에 관한 것이다. The present invention relates to a technique for providing a multicast transmission based on index coding in a network environment in which a base station does not accurately know memory state information (MSI) of a user terminal.

무선 데이터 트래픽은 최근 몇 년 동안, 텍스트, 음성 메시지, 비디오 스트리밍 등으로 인해 폭발적으로 증가하고 있다. 이러한 증가 추세는 가상현실, 증강현실, 홀로그램 등과 같은 서비스로 인해 더욱더 커질 것으로 예상되고 있다. 무선 데이터 트래픽은 유명 컨텐츠에 대한 선호도, 예측 가능한 수요와 같은 독특한 특성을 가지고 있지만, 현재의 무선 통신 시스템은 상기 독특한 특성을 반영하지 않은 채 추가적인 무선 통신 자원을 통해 효율을 높여 왔다. 하지만 무선 통신 자원들을 활용하는 방법은 어느 정도 한계에 이르렀으며 새로운 기술이 필요한 상황이다. 새로운 기술 중 하나로서, 네트워크의 사용자가 메모리에 일부 비디오 데이터를 저장하는 캐싱(caching)이 등장하였다.Wireless data traffic has exploded in recent years due to text, voice messages, video streaming, and so on. Such an increase trend is expected to become even more serious due to services such as virtual reality, augmented reality, and hologram. While wireless data traffic has unique characteristics such as preference for popular content, predictable demand, current wireless communication systems have increased efficiency through additional wireless communication resources without reflecting the unique characteristics. However, the use of wireless communication resources has reached a certain limit and new technologies are needed. As one of the new technologies, caching has been introduced in which a user of the network stores some video data in memory.

캐싱(caching)은 전체 네트워크 트래픽을 상당히 줄일 수 있는 것으로 알려져 있다. 기존의 캐싱 알고리즘들은 캐시 메모리(cache memory)를 활용하여 사용자(즉, 사용자가 소지한 사용자 단말)들이 동일한 데이터를 받는 상황에서 요청한 데이터를 멀티캐스트(Multicast)로 처리한다. 그러나, 사용자가 서로 다른 데이터를 요구할 경우, 유니캐스트(Unicast) 방식으로 하나씩 해결할 수밖에 없다.Caching is known to significantly reduce overall network traffic. Conventional caching algorithms process the requested data in a multicast manner in a situation where a user (i.e., a user terminal carried by the user) receives the same data by utilizing a cache memory. However, when users request different data, they have to solve them one by one in a unicast manner.

아래의 비특허 문헌 [1] M. A. Maddah -Ali, and U. Niesen , Fundamental limits of caching. IEEE Transactions on Information Theory Vol.60, pg . 2856- 2867 (May. 2014), 및 [2] U.S . Appl . No. US9535837 B2, Decentralized online cache management for digital content conveyed over shared network connections based on cache fullness and cache eviction policies, filed 2013.11.19에서는 사용자들이 서로 다른 데이터를 요구할 경우에도 효과적으로 전송 시간을 줄일 수 있는 새로운 캐싱 알고리즘을 개시하고 있다. 즉, 인덱스 부호화(Index coding)를 활용한 멀티캐스트를 통해 여러 사용자의 데이터를 합쳐서 전송할 수 있어 전송 시간을 크게 줄이고 있다. 아래의 비특허 문헌 [3] K. R. Son, J. H. Lee and W. Choi, User-cache Aided Transmission with Index Coding for Minimum Outage Probability in K-User Downlink channels. IEEE Transactions on Wireless Communications. Submitted.에서는 무선 채널 페이딩, 상호 간섭 등의 무선 채널 특성이 반영된 네트워크 환경에서 사용자의 저장 정보를 활용한 인덱스 부호화 기반 전송 기법을 제시하고 있다.Non-Patent Document [1] MA Maddah- Alli, and U. Niesen , Fundamental limits of caching. IEEE Transactions on Information Theory Vol . 60, pg . 2856-2867 (May 2014) , and [2] US . Appl . No. US 9535837 B2, Decentralized online cache management for digital content conveyed over shared network connections based on cache fullness and cache eviction policies, filed 2013.11.19 introduces a new caching algorithm that effectively reduces transmission time when users request different data . That is, it is possible to combine data of a plurality of users through multicast using index coding, thereby reducing transmission time considerably. Non-Patent Document [3] KR Son, JH Lee and W. Choi, User-cache Aided Transmission with Index Coding for Minimum Outage Probability in K-User Downlink channels. IEEE Transactions on Wireless Communications. Submitted. Proposed an index encoding based transmission scheme that utilizes user 's stored information in a network environment that reflects radio channel characteristics such as radio channel fading and mutual interference.

그러나, 기존의 캐싱 방법은 모두 기지국이 사용자 단말의 모든 메모리 상태(즉, 메모리 저장 정보)를 알고 있는 비현실적인 상황을 가정하였다. 즉, 기지국이 사용자 단말의 캐시 메모리에 저장하고 있는 콘텐츠(즉, 메모리 저장 정보, MSI)를 정확히 알고 있음을 가정한다.However, the conventional caching method assumes an unrealistic situation in which the base station knows all memory states (i.e., memory storage information) of the user terminal. That is, it is assumed that the base station correctly knows the contents (i.e., memory storage information, MSI) stored in the cache memory of the user terminal.

그러나, 사용자의 요청 파일, 사용자의 메모리 저장 정보는 시시각각 변화기 때문에 실제로 기지국은 메모리 저장 정보를 정확히 알 수 없는 경우가 현실적이다. 이처럼, 실제 환경과 같이, 기지국에서 단말의 메모리 저장 정보를 정확히 알지 못하는 경우, 인덱스 부호화를 활용한 멀티캐스트 전송 시 오류가 발생하게 된다. However, since the user's request file and the memory storage information of the user change instantaneously, it is realistic that the base station can not accurately know the memory storage information. As described above, when the base station does not know the memory storage information of the terminal exactly like an actual environment, an error occurs in the multicast transmission using the index encoding.

이에 따라, 파일의 길이에 관계없이 사용자의 요구 파일이 정확하지 않은 경우에도 최적의 성능을 얻을 수 있는 인덱스 부호화 전송 기술이 요구된다. 즉, 시간에 따라 단말의 메모리 저장 정보가 변화하는 네트워크 환경에서, 기지국이 단말의 메모리 저장 정보를 정확히 모르더라도 최적의 성능을 얻을 수 있는 인덱스 부호화 전송 기술이 요구된다.Accordingly, there is a demand for an index encoding transmission technique capable of obtaining optimum performance even when the user's requested file is not accurate regardless of the file length. That is, in a network environment in which memory storage information of a terminal changes according to time, there is a need for an index encoding transmission technique capable of obtaining optimum performance even if the base station does not know the memory storage information of the terminal correctly.

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

[1] M. A. Maddah-Ali, and U. Niesen, Fundamental limits of caching. IEEE Transactions on Information Theory Vol.60, pg. 2856- 2867 (May. 2014). [1] M. A. Maddah-Ali, and U. Niesen, Fundamental limits of caching. IEEE Transactions on Information Theory Vol. 60, pg. 2856-2867 (May 2014). [2] U.S. Appl. No. US9535837 B2, Decentralized online cache management for digital content conveyed over shared network connections based on cache fullness and cache eviction policies, filed 2013.11.19.[2] U.S. Appl. No. US 9535837 B2, Decentralized online cache management for digital content conveyed over shared network connections based on cache fullness and cache eviction policies, filed 2013.11.19. [3] K. R. Son, J. H. Lee and W. Choi, User-cache Aided Transmission with Index Coding for Minimum Outage Probability in K-User Downlink channels. IEEE Transactions on Wireless Communications. Submitted.[3] K. R. Son, J. H. Lee and W. Choi, User-cache Aided Transmission with Index Coding for Minimum Outage Probability in K-User Downlink channels. IEEE Transactions on Wireless Communications. Submitted.

본 발명은 기지국에 속하는 사용자 단말의 요구 파일 및 메모리 저장 정보(Memory state information, MSI)가 시간에 따라 변화하는 네트워크 환경에서, 기지국이 사용자 단말의 메모리 저장 정보를 정확히 알지 못하는 경우에도 파일을 멀티캐스트 전송하기 위한 최적의 인덱스 부호화를 수행하는 기술에 관한 것이다. 즉, 부정확한 메모리 저장 정보(즉, 기지국이 추정한 단말의 메모리 저장 정보)를 이용하여 각 사용자 단말의 성공적인 전송량의 총합을 최대화하는 최적의 사용자 그룹을 결정하고자 한다.In a network environment in which a request file and memory state information (MSI) of a user terminal belonging to a base station change with time, even when the base station does not know the memory storage information of the user terminal accurately, The present invention relates to a technique for performing optimal index coding for transmission. That is, an optimal user group that maximizes the total sum of successful transmission of each user terminal is determined using incorrect memory storage information (i.e., memory storage information of the terminal estimated by the base station).

사용자 단말의 메모리 저장 정보가 시간에 따라 변화하는 네트워크 환경에서, 기지국에 속하는 복수의 사용자 단말들을 대상으로 인덱스 부호화(index coding) 하는 방법에 있어서, 복호화가 가능한(decodable) 인덱스 코드들을 포함하는 인덱스 코드 집합에서, 상기 기지국이 추정하고 있는 사용자 단말의 메모리 저장 정보에 기초하여 인덱스 부호화에 이용될 인덱스 코드를 결정하는 단계, 상기 인덱스 코드 집합에서 결정된 상기 인덱스 코드와는 다른 인덱스 코드를 선택하는 단계, 결정된 상기 인덱스 코드와 선택된 상기 다른 인덱스 코드를 비교하여 최적 인덱스 코드를 결정하는 단계, 및 결정된 상기 최적 인덱스 코드에 해당하는 적어도 하나의 사용자 단말을 대상으로 해당 단말에서 요청한 파일을 전송하는 단계를 포함하고, 상기 인덱스 코드는, 상기 복수의 사용자 단말들 중 요청된 파일에 기초하여 그룹화된 사용자 그룹을 나타낼 수 있다.1. A method for index coding a plurality of user terminals belonging to a base station in a network environment in which memory storage information of a user terminal changes with time, the method comprising the steps of: index code including index codes capable of being decodable; Determining, in the set, an index code to be used for index encoding based on memory storage information of a user terminal estimated by the base station; selecting an index code different from the index code determined in the index code set; Comparing the index code with the selected other index code to determine an optimal index code, and transmitting the requested file to the at least one user terminal corresponding to the determined optimal index code, The index code includes And may indicate a group of users grouped based on the requested one of the plurality of user terminals.

일측면에 따르면, 상기 최적 인덱스 코드로 결정하는 단계는, 상기 결정된 인덱스 코드와 상기 선택된 다른 인덱스 코드의 성공 전송량의 총합을 비교하는 단계, 상기 비교를 통해 성공 전송량의 총합이 큰 인덱스 코드를 상기 최적 인덱스코드로 설정하는 단계, 및 상기 인덱스 코드 집합에 포함된 모든 인덱스 코드들 중 상기 결정된 인덱스 코드와 상기 선택된 다른 인덱스 코드를 제외한 인덱스 코드들을 대상으로 선택된 어느 하나의 인덱스 코드의 성공 전송량의 총합과 설정된 최적 인덱스 코드의 성공 전송량의 총합을 비교하여 상기 최적 인덱스 코드를 갱신하는 단계를 포함할 수 있다.According to an aspect of the present invention, the determining with the optimal index code may include comparing a sum of the successive transmission amounts of the determined index code and the selected other index codes, And setting a sum of success transmission amounts of any one of the index codes selected for the index codes other than the determined index code and the selected other index codes among all the index codes included in the set of index codes, And updating the optimal index code by comparing the sum of success transmission amounts of the optimal index codes.

다른 측면에 따르면, 상기 파일을 전송하는 단계는, 갱신된 상기 최적 인덱스 코드에 해당하는 적어도 하나의 사용자 단말을 대상으로 파일을 전송할 수 있다.According to another aspect, the step of transmitting the file may transmit the file to at least one user terminal corresponding to the updated optimal index code.

또 다른 측면에 따르면, 상기 최적 인덱스 코드로 결정하는 단계는, 상기 인덱스 코드 집합에 포함된 모든 인덱스 코드들을 대상으로, 브루트-포스(Brute-Force) 알고리즘에 기초하여 성공 전송량의 총합이 최대인 인덱스 코드를 상기 최적 인덱스 코드를 결정할 수 있다.According to another aspect of the present invention, the step of determining with the optimum index code is a step of determining, based on a brute-force algorithm, all index codes included in the index code set, The index code can determine the optimal index code.

또 다른 측면에 따르면, 상기 최적 인덱스 코드는, 상기 기지국이 추정하고 있는 사용자 단말의 메모리 저장 정보와 해당 사용자 단말의 실제 메모리 정보 간의 상관성(correlation)에 기초하여 변경될 수 있다.According to another aspect, the optimal index code can be changed based on a correlation between memory storage information of a user terminal estimated by the base station and actual memory information of the corresponding user terminal.

또 다른 측면에 따르면, 상기 파일을 전송하는 단계는, 상기 상관성이 미리 정의된 제1 기준값 이하로 낮은 경우, 상기 최적 인덱스 코드에 해당하는 적어도 하나의 사용자 단말을 대상으로, 해당 단말에서 요청한 파일을 유니캐스트(unicast)로 전송하는 단계를 포함할 수 있다.According to another aspect of the present invention, the step of transmitting the file includes the step of, when the correlation is lower than a predefined first reference value, determining a file requested by the corresponding terminal to the at least one user terminal corresponding to the optimal index code To the unicast.

또 다른 측면에 따르면, 상기 파일을 전송하는 단계는, 상기 상관성이 미리 정의된 제2 기준값 이상으로 높은 경우, 상기 최적 인덱스 코드에 해당하는 적어도 하나의 사용자 단말을 대상으로, 해당 단말에서 요청한 파일을 멀티캐스트(multicast)로 전송하는 단계를 포함할 수 있다.According to another aspect of the present invention, the step of transmitting the file includes the step of, when the correlation is higher than a predetermined second reference value, the file requested by the corresponding terminal for at least one user terminal corresponding to the optimum index code And transmitting the multicast data to the mobile station.

또 다른 측면에 따르면, 상기 상관성은 상기 기지국과 사용자 단말 간의 주변 환경 정보 및 시간에 따라 변화할 수 있다.According to another aspect, the correlation may be changed according to the surrounding information and the time between the base station and the user terminal.

사용자 단말의 메모리 저장 정보가 시간에 따라 변화하는 네트워크 환경에서, 복수의 사용자 단말들을 대상으로 인덱스 부호화(index coding)하는 장치에 있어서, 복호화가 가능한(decodable) 인덱스 코드들을 포함하는 인덱스 코드 집합에서, 인덱스 부호화 장치가 추정하고 있는 사용자 단말의 메모리 저장 정보에 기초하여 인덱스 부호화에 이용될 인덱스 코드를 결정하는 인덱스 코드 결정부, 상기 인덱스 코드 집합에서 결정된 상기 인덱스 코드와는 다른 인덱스 코드를 선택하고, 결정된 상기 인덱스 코드와 선택된 상기 다른 인덱스 코드를 비교하여 최적 인덱스 코드를 결정하는 최적 인덱스 코드 결정부, 및 결정된 상기 최적 인덱스 코드에 해당하는 적어도 하나의 사용자 단말을 대상으로 해당 단말에서 요청한 파일을 전송하는 전송 제어부를 포함하고, 상기 인덱스 코드는, 상기 복수의 사용자 단말들 중 요청된 파일에 기초하여 그룹화된 사용자 그룹을 나타낼 수 있다.There is provided an apparatus for performing index coding on a plurality of user terminals in a network environment in which memory storage information of a user terminal varies with time. In an index code set including index codes that are decodable, An index code determination unit for determining an index code to be used for index encoding based on memory storage information of a user terminal estimated by the index encoding apparatus, an index code different from the index code determined in the index code set, An optimum index code determining unit for comparing the index code with the selected other index code to determine an optimal index code, and a transmission unit for transmitting the requested file to the at least one user terminal corresponding to the determined optimal index code, Including a control unit , The index code, and may refer to the group group of users based on a request file of the plurality of user terminals.

일측면에 따르면, 상기 최적 인덱스 코드 결정부는, 상기 결정된 인덱스 코드와 상기 선택된 다른 인덱스 코드의 성공 전송량의 총합을 비교하고, 상기 비교를 통해 성공 전송량의 총합이 큰 인덱스 코드를 상기 최적 인덱스코드로 설정하고, 상기 인덱스 코드 집합에 포함된 모든 인덱스 코드들 중 상기 결정된 인덱스 코드와 상기 선택된 다른 인덱스 코드를 제외한 인덱스 코드들을 대상으로 선택된 어느 하나의 인덱스 코드의 성공 전송량의 총합과 설정된 최적 인덱스 코드의 성공 전송량의 총합을 비교하여 상기 최적 인덱스 코드를 갱신할 수 있다.According to an aspect of the present invention, the optimum index code determination unit compares the sum of the successive transmission amounts of the determined index code and the selected other index codes, and sets an index code having a larger sum of success transmission amounts as the optimal index code The sum of the success transmission amounts of any one of the index codes selected for the index codes other than the determined index code and the selected other index codes among all the index codes included in the index code set, And the optimal index code can be updated.

다른 측면에 따르면, 상기 전송 제어부는, 갱신된 상기 최적 인덱스 코드에 해당하는 적어도 하나의 사용자 단말을 대상으로 파일을 전송할 수 있다.According to another aspect, the transmission control unit may transmit a file to at least one user terminal corresponding to the updated optimal index code.

또 다른 측면에 따르면, 상기 최적 인덱스 코드 결정부는, 상기 인덱스 코드 집합에 포함된 모든 인덱스 코드들을 대상으로, 브루트-포스(Brute-Force) 알고리즘에 기초하여 성공 전송량의 총합이 최대인 인덱스 코드를 상기 최적 인덱스 코드를 결정할 수 있다.According to another aspect of the present invention, the optimal index code determination unit may determine, based on a brute-force algorithm, all index codes included in the index code set, The optimal index code can be determined.

또 다른 측면에 따르면, 상기 최적 인덱스 코드는, 상기 인덱스 부호화 장치가 추정하고 있는 사용자 단말의 메모리 저장 정보와 해당 사용자 단말의 실제 메모리 정보 간의 상관성(correlation)에 기초하여 변경될 수 있다.According to another aspect, the optimal index code may be changed based on a correlation between memory storage information of a user terminal estimated by the index encoding device and actual memory information of the corresponding user terminal.

또 다른 측면에 따르면, 상기 전송 제어부는, 상기 상관성이 미리 정의된 제1 기준값 이하로 낮은 경우, 상기 최적 인덱스 코드에 해당하는 적어도 하나의 사용자 단말을 대상으로, 해당 단말에서 요청한 파일을 유니캐스트(unicast)로 전송할 수 있다.According to another aspect of the present invention, when the correlation is lower than a predefined first reference value, the transmission control unit transmits a file requested by the corresponding terminal to at least one user terminal corresponding to the optimal index code, unicast).

또 다른 측면에 따르면, 상기 전송 제어부는, 상기 상관성이 미리 정의된 제2 기준값 이상으로 높은 경우, 상기 최적 인덱스 코드에 해당하는 적어도 하나의 사용자 단말을 대상으로, 해당 단말에서 요청한 파일을 멀티캐스트(multicast)로 전송할 수 있다.According to another aspect of the present invention, when the correlation is higher than a predetermined second reference value, the transmission control unit multicasts a file requested by the corresponding terminal to at least one user terminal corresponding to the optimal index code multicast).

또 다른 측면에 따르면, 상기 상관성은 상기 기지국과 사용자 단말 간의 주변 환경 정보 및 시간에 따라 변화할 수 있다.According to another aspect, the correlation may be changed according to the surrounding information and the time between the base station and the user terminal.

본 발명의 실시예들에 따르면, 기지국이 추정한 사용자 단말의 메모리 저장 정보와 실제 사용자 단말의 메모리 저장 정보 간의 상관성(correlation)을 기반으로 인덱스 코드(index code)를 결정하고, 결정된 인덱스 코드에 해당하는 사용자 그룹을 대상으로 파일을 멀티캐스트 전송함으로써,각 사용자 단말의 성공 전송량의 총합을 최대화할 수 있다.According to embodiments of the present invention, an index code is determined based on a correlation between memory storage information of a user terminal estimated by a base station and memory storage information of an actual user terminal, The user can maximize the sum of success traffic of each user terminal by multicasting the file to the user group.

도 1은 본 발명의 일실시예에 있어서, 기지국에서 사용자 단말의 메모리 저장 정보를 정확히 알지 못하는 경우에 다운링크 모델을 도시한 도면이다.
도 2는 본 발명의 일시예에 있어서, 인덱스 부호화 방법을 도시한 흐름도이다.
도 3은 본 발명의 일실시예에 있어서, 인덱스 부호화 장치의 내부 구성을 도시한 블록도이다.
도 4는 본 발명의 일실시예에 있어서, 기지국에 속하는 사용자 단말이 4개인 경우의 메모리 저장 정보를 나타낸 도면이다.
도 5는 본 발명의 일실시예에 있어서, 상관성(p)에 따른 성능을 도시한 그래프이다.
1 is a diagram illustrating a downlink model in a case where the base station does not know the memory storage information of the user terminal accurately in an embodiment of the present invention.
2 is a flowchart showing an index encoding method in a temporal example of the present invention.
3 is a block diagram illustrating an internal structure of an index encoding apparatus according to an embodiment of the present invention.
4 is a diagram illustrating memory storage information in the case where there are four user terminals belonging to a base station in the embodiment of the present invention.
FIG. 5 is a graph showing performance according to correlation p in an embodiment of the present invention. FIG.

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

본 발명은 기지국에 속하는 사용자 단말의 캐시 메모리에 파일 또는 파일의 일부를 저장해두었다가 사용자 단말의 요청 시, 사용자 단말의 캐시 메모리에 저장된 파일을 기반으로 요청 파일을 제공하는 캐싱 기술에서, 기지국이 사용자 단말의 메모리 저장 정보를 정확히 알지 못하는 경우에 멀티캐스트 전송 시 오류를 최소화하는(즉, 성공적인 전송률을 최대화/높이는) 인덱스 부호화 전송 기술에 관한 것이다.In a caching technology for storing a file or a portion of a file in a cache memory of a user terminal belonging to a base station and providing a request file based on a file stored in a cache memory of the user terminal when the user terminal requests it, The present invention relates to an index encoding transmission technique that minimizes errors in multicast transmission (i.e., maximizes / increases a successful transmission rate) when the memory storage information of the multicast transmission is not known accurately.

본 실시예들에서, 인덱스 부호화 장치는 기지국(Base Station)을 나타내고, 사용자 단말(User Equipment)는 기지국에 해당하는 셀(cell) 내에 위치하는 것으로서, 기지국에 속하는 사용자 단말은, 스마트폰, 태블릿 PC, 노트북 등을 포함할 수 있다. 이외에, 사용자 단말은 기지국과 사용자 단말 간의 중계 역할을 하는 게이트웨이 등의 중계 장치를 포함할 수도 있으며, 각 사용자 단말은 캐시(cache) 메모리를 구비할 수 있다. 이때, 캐시 메모리의 크기는 제한될 수 있으며, 캐시 메모리는 기지국에 저장된 복수의 파일들 중 적어도 하나의 파일 또는 파일의 일부인 파일 조각(즉, 패킷)을 저장하고 있을 수 잇다. 예컨대, 사용자 단말에서 요청하는 하나의 파일 전체의 크기보다 작도록 제한될 수 있다. In the present embodiment, the index encoding apparatus represents a base station and the user equipment is located in a cell corresponding to the base station. The user terminal belonging to the base station may be a smart phone, a tablet PC , Notebooks, and the like. In addition, the user terminal may include a relay device such as a gateway acting as a relay between the base station and the user terminal, and each user terminal may have a cache memory. At this time, the size of the cache memory may be limited, and the cache memory may be storing at least one file among a plurality of files stored in the base station, or a file fragment (i.e., packet) that is a part of the file. For example, it may be limited to be less than the size of one file requested by the user terminal.

본 실시예들에서, "메모리 저장 정보(Memory State Information, MSI)"는 사용자 단말의 메모리 상태를 나타내는 것으로서, 사용자 단말의 캐시 메모리에 저장하고 있는 콘텐츠(즉, 파일, 파일 조각) 정보를 나타낼 수 있다. 예를 들어, 사용자 단말 1의 캐시 메모리에 파일 1의 첫 번째 파일 조각 및 파일 4의 두 번째 파일 조각이 저장되어 있는 경우, 사용자 단말 1의 메모리 저장 정보는 파일 1의 파일 조각 1, 파일 4의 파일 조각 2를 포함할 수 있다. 이에 따라, 사용자 단말 1에서 요청한 파일(즉, 요구 파일)을 기지국 및 다른 사용자 단말들, 또는 적어도 하나로부터 수신함에 따라, 캐시 메모리에 저장된 파일이 시간에 따라 누적 저장되어, 사용자 단말 1의 메모리 저장 정보는 시간에 따라 변화할 수 있으며, 본 발명은 메모리 저장 정보가 변화하더라도 최적의 성능을 얻을 수 있는 인덱스 부호화 전송 기술을 제공하고자 한다.In the present embodiment, "memory state information (MSI)" indicates the memory status of the user terminal, and it can indicate the contents (i.e., file, file fragment) information stored in the cache memory of the user terminal have. For example, if the first file fragment of the file 1 and the second file fragment of the file 4 are stored in the cache memory of the user terminal 1, the memory storage information of the user terminal 1 is stored in the file fragment 1, File fragment 2 can be included. Accordingly, as the file requested by the user terminal 1 (i.e., the request file) is received from the base station and the other user terminals or at least one of them, the files stored in the cache memory are cumulatively accumulated over time, The information may change with time, and the present invention is to provide an index encoding transmission technique capable of obtaining optimum performance even when memory storage information changes.

도 1은 본 발명의 일실시예에 있어서, 기지국에서 사용자 단말의 메모리 저장 정보를 정확히 알지 못하는 경우에 다운링크 모델을 도시한 도면이다.1 is a diagram illustrating a downlink model in a case where the base station does not know the memory storage information of the user terminal accurately in an embodiment of the present invention.

도 1에서는 기지국에 속하는 사용자 단말이 3개인 경우를 도시하였으나, 이는 실시예에 해당되며, 사용자 단말의 개수는 3개 미만일 수도 있고, 3개보다 많을 수도 있다.Although FIG. 1 shows a case where there are three user terminals belonging to the base station, this corresponds to the embodiment, and the number of user terminals may be less than three or more than three.

도 1에서, 기지국인 인덱스 부호화 장치(100)는 하나의 안테나를 가지며, 단일 안테나를 갖는 K개(예컨대, 3개)의 사용자 단말들(101, 102, 103)을 지원할 수 있다. 1, an index encoding apparatus 100 as a base station has one antenna and can support K (e.g., three) user terminals 101, 102, and 103 having a single antenna.

기지국인 인덱스 부호화 장치(100)는 N개의 파일을 라이브러리(Library)로 가지고 있을 수 있으며,

Figure pat00001
로 표현될 수 있다. 여기서, 각 파일의 크기
Figure pat00002
는 B bit일 수 있다.
Figure pat00003
는 k번째 사용자 단말에서 요청한 요구 파일을 나타내고,
Figure pat00004
는 k번째 사용자 단말의 캐시 메모리에 저장되어 있는 파일을 나타낼 수 있다. 이때, 사용자 단말들 각각은 자신의 캐시 메모리에 저장되어 있는 파일을 요청하지 않는 것을 가정한다(즉,
Figure pat00005
). 도 1 내지 도 5에서는 명확성을 위하여 채널과 잡음(noise)으로 인한 에러(error)가 없는 채널 환경(error-free)을 대상으로 인덱스 부호화하는 방법을 설명하나, 이는 실시예에 해당하며, 에러가 존재하는 채널 환경으로 인덱스 부호화를 확장할 수 있다.The index encoding apparatus 100, which is a base station, may have N files as a library,
Figure pat00001
. ≪ / RTI > Here, the size of each file
Figure pat00002
Can be a B bit.
Figure pat00003
Denotes a request file requested by the k-th user terminal,
Figure pat00004
May represent a file stored in the cache memory of the kth user terminal. At this time, it is assumed that each of the user terminals does not request a file stored in its cache memory (i.e.,
Figure pat00005
). In FIGS. 1 to 5, for clarity, a method of performing index encoding on a channel environment (error-free) that is free of errors due to a channel and noise is described. However, Index encoding can be extended to existing channel environments.

다시 도 1을 참고하면, 기지국인 인덱스 부호화 장치(100)는 K개의 사용자 단말들(101, 102, 103)에게 총 K개의 시간대(time slot)을 사용하여 파일을 멀티캐스트로 전송할 수 있다. 이때, 총 사용자 단말의 수 K는 총 파일 개수인 N보다 작을 수 있다. 이처럼, 멀티캐스트로 전송 시, K개의 서로 다른 사용자 집합은

Figure pat00006
로 정의될 수 있으며,
Figure pat00007
는 i번째 시간대(즉, 타임 슬롯)에 서비스할 사용자들의 집합을 나타낼 수 있다. 이때, 상기 사용자 집합들은
Figure pat00008
Figure pat00009
을 만족해야 할 수 있다. 그리고, 사용자 인덱스를 받았을 때 해당 사용자의 그룹 인덱스를 나타내는 그룹 인덱스 지표(group index indicator)
Figure pat00010
는 아래의 수학식 1과 같이 표현될 수 있다.Referring again to FIG. 1, the index encoding apparatus 100, which is a base station, can transmit a file in multicast using K time slots to K user terminals 101, 102, and 103. At this time, the total number K of user terminals may be smaller than the total number N of files. Thus, in multicast transmission, K different sets of users
Figure pat00006
, ≪ / RTI >
Figure pat00007
May represent a set of users to serve in the i < th > time zone (i.e., timeslot). At this time,
Figure pat00008
and
Figure pat00009
. ≪ / RTI > When a user index is received, a group index indicator indicating a group index of the corresponding user,
Figure pat00010
Can be expressed by the following equation (1).

[수학식 1][Equation 1]

Figure pat00011
Figure pat00011

수학식 1에서, 사용자 그룹이

Figure pat00012
(
Figure pat00013
로 표기)로 정의되어 있을 때, 인덱스 부호화 가정은 다음과 같을 수 있다. 기지국인 인덱스 부호화 장치(100)는 그룹
Figure pat00014
에 속해 있는 원소들을 인덱스로 가지는 파일들에 대해 배타적 논리합(exclusive or, XOR)을 수행하여 부호화된 파일을 생성할 수 있다. 그러면, n번째 파일에 해당하는 전송될 부호화된 파일
Figure pat00015
은 아래의 수학식 2와 같이 표현될 수 있다.In Equation (1), the user group
Figure pat00012
(
Figure pat00013
Quot;), the index encoding assumption may be as follows. The index encoding device 100, which is a base station,
Figure pat00014
(Exclusive or XOR) on files having indexes belonging to the indexed files to generate an encoded file. Then, the encoded file to be transmitted corresponding to the n-th file
Figure pat00015
Can be expressed by the following equation (2).

[수학식 2]&Quot; (2) "

Figure pat00016
Figure pat00016

수학식 2에서,

Figure pat00017
는 0으로만 구성된 B 비트 파일을 나타내고,
Figure pat00018
는 XOR 연산자를 나타낼 수 있다. In Equation (2)
Figure pat00017
Represents a B-bit file composed of only 0,
Figure pat00018
Can represent an XOR operator.

기지국인 인덱스 부호화 장치(100)가 위의 수학식 2와 같이 표현된 파일

Figure pat00019
을 K개의 타임 슬롯에 걸쳐 전송한 경우, k번째 사용자 단말은
Figure pat00020
번째 시간대에 자신이 요청한 파일(즉, 요구 파일)을 수신할 수 있다. 이때, 아래의 수학식 3과 같이, 사용자 단말이
Figure pat00021
에 속한 원소들의 파일을 자신의 캐시 메모리에 저장하고 있는 경우, 해당 사용자 단말은 아래의 수학식 4에 기초하여 자신이 요청한 파일을 복원할 수 있다.The index encoding apparatus 100, which is a base station, decodes a file represented by Equation (2)
Figure pat00019
Is transmitted over K time slots, the kth user terminal
Figure pat00020
(I.e., a request file) in the second time zone. At this time, as shown in Equation (3) below,
Figure pat00021
The user terminal can restore the file requested by the user based on Equation (4) below.

[수학식 3]&Quot; (3) "

Figure pat00022
Figure pat00022

[수학식 4]&Quot; (4) "

Figure pat00023
Figure pat00023

위의 수학식 1 내지 수학식 4와 같이 기지국이 전송한 파일, 기지국에 속하는 사용자 단말들의 캐시 메모리에 저장된 파일을 기반으로 특정 파일을 요청한 사용자 단말에서 자신이 요청한 파일(즉, 요구 파일)을 복원할 수 있는 시스템 환경에서, 요구 파일과 단말의 메모리 저장 정보(MSI)가 시간에 따라 변화하는 경우, 기지국은 기지국에서 추정한 메모리 저장 정보를 기반으로 인덱스 부호화를 수행할 수 있다. (I.e., a request file) requested by a user terminal requesting a specific file based on the file transmitted by the base station and the file stored in the cache memory of the user terminals belonging to the base station, as shown in Equations 1 through 4 above The BS can perform index coding based on the memory storage information estimated by the BS when the MSI of the request file and the MSI changes with time in the system environment.

이때, 기지국이 사용자 단말의 메모리 저장 정보를 명확히 알지 못하는 경우(즉, 부정확한 정보를 가지고 있는 경우), 추정된 메모리 저장 정보와 실제 메모리 저장 정보 간의 상관성(correlation)을 고려하여 인덱스 부호화를 수행함으로써, 최적의 성능(즉, 성공적인 전송률의 합을 최대화)을 얻을 수 있다. 즉, 도 1을 참고하면, 기지국(100)에 속하는 각 사용자 단말들(101, 102, 103)의 캐시 메모리에 저장된 파일과 기지국(100)이 알고 있는 각 사용자 단말들(101, 102, 103)의 캐시 메모리에 저장되어 있는 파일이 상이할 수 있다. 즉, 기지국(100)이 추정하고 있는 단말의 메모리 저장 정보(MSI)와 단말의 실제 메모리 저장 정보(MSI)가 다를 수 있다. 예컨대, 사용자 단말 1(101)의 캐시 메모리에는 파일 3 및 파일 7이 저장되어 있는데, 기지국(100)은 사용자 단말 1(101)의 메모리 저장 정보(MSI)를 파일 1 및 파일 4로 추정하고 있을 수 있다. 마찬가지로, 사용자 단말 2(102)의 실제 메모리 저장 정보(MSI)는 파일 1 및 파일 9를 포함하고 있는데, 기지국(100)은 사용자 단말 2(102)와 관련하여 MSI 정보가 파일 2 및 파일 4를 포함하고 있는 것으로 추정할 수 있다. 이러한 기지국(100)이 추정하고 있는 MSI 정보와 실제 MSI 정보 간의 상관성을 고려하여 인덱스 부호화를 수행함으로써, 최적의 성능을 얻을 수 있다. 이하에서는 도 2 내지 도 5를 참고하여, 상관성을 고려하여 인덱스 부호화를 하는 동작, 즉, 최적의 성능을 얻기 위한 인덱스 코드를 결정하고, 상관성을 고려하여 멀티캐스트(multicast) 또는 유니캐스트(unicast)로 전송하는 동작에 대해 설명하기로 한다. At this time, if the base station does not know the memory storage information of the user terminal clearly (that is, if it has incorrect information), index coding is performed considering the correlation between the estimated memory storage information and the actual memory storage information , It is possible to obtain optimal performance (i.e., maximize the sum of the successful bit rates). 1, a file stored in the cache memory of each of the user terminals 101, 102, 103 belonging to the base station 100 and the user terminals 101, 102, 103 known to the base station 100, The file stored in the cache memory of FIG. That is, the memory storage information (MSI) of the terminal estimated by the base station 100 may differ from the actual memory storage information (MSI) of the terminal. For example, the file 3 and the file 7 are stored in the cache memory of the user terminal 1 101. The base station 100 estimates the memory storage information (MSI) of the user terminal 1 101 as the file 1 and the file 4 . Similarly, the actual memory storage information (MSI) of user terminal 2 102 includes file 1 and file 9, where the MSI information is associated with file 2 and file 4 with respect to user terminal 2 (102) It can be assumed that it includes. By performing index coding considering the correlation between the MSI information estimated by the base station 100 and the actual MSI information, optimal performance can be obtained. Hereinafter, referring to FIG. 2 to FIG. 5, it is assumed that index coding is performed in consideration of correlation, that is, an index code for obtaining an optimal performance is determined, and multicast or unicast is performed considering the correlation. Will now be described.

도 2는 본 발명의 일시예에 있어서, 인덱스 부호화 방법을 도시한 흐름도이고, 도 3은 본 발명의 일실시예에 있어서, 인덱스 부호화 장치의 내부 구성을 도시한 블록도이다.FIG. 2 is a flowchart illustrating an index encoding method in a temporal example of the present invention, and FIG. 3 is a block diagram illustrating an internal configuration of an index encoding apparatus according to an embodiment of the present invention.

도 3을 참고하면, 기지국인 인덱스 부호화 장치(300)는 인덱스 코드 결정부(310), 최적 인덱스 코드 결정부(320), 및 전송 제어부(330)를 포함할 수 있다. 그리고, 도 2의 각 단계들(210 내지 240 단계)은 도 3의 인덱스 코드 결정부(310), 최적 인덱스 코드 결정부(320), 및 전송 제어부(330)에 의해 수행될 수 있다.3, the index encoding apparatus 300 as a base station may include an index code determining unit 310, an optimum index code determining unit 320, and a transmission controlling unit 330. [ 2 may be performed by the index code determination unit 310, the optimal index code determination unit 320, and the transmission control unit 330 of FIG. 3.

도 2 및 도 3에서, 기지국에 속하는 각 사용자 단말의 메모리 저장 정보는 시간에 따라 변화함에 따라, 기지국인 인덱스 부호화 장치(300)는 각 사용자 단말의 메모리 저장 정보(MSI)를 정확히 알지 못하는 네트워크 환경을 고려할 수 있다.2 and 3, as the memory storage information of each user terminal belonging to the base station changes with time, the index encoding device 300, which is a base station, transmits the memory storage information (MSI) of each user terminal to the network environment Can be considered.

210 단계에서, 인덱스 코드 결정부(310)는 사용자 단말에서 복호화가 가능한(decodable) 인덱스 코드들을 포함하는 인덱스 코드 집합에서, 기지국이 추정하고 있는 사용자 단말의 메모리 저장 정보(MSI)에 기초하여 인덱스 부호화에 이용될 인덱스 코드를 결정할 수 있다. 여기서, 인덱스 코드는 기지국에 속하는 복수의 사용자 단말들 중 요구 파일과 메모리 저장 정보에 기초하여 한번에 전송하기 위해 XOR 연산된 파일들의 집합으로서, 각 파일은 XOR하는 파일 인덱스들과 일대일 대응이므로 상기 인덱스 코드는 해당 파일 인덱스를 요구하는 사용자 그룹의 집합으로 표현될 수 있다. 즉, 인덱스 코드는 적어도 하나의 사용자 그룹을 포함할 수 있다. 예컨대, 사용자 A가 파일 XA를 요구하고 사용자 B가 XB를 요구하는 경우, 기존의 전송 방식에서는 총 2번(파일 XA와 파일 XB를 각각) 전송하여야 하지만, 사용자가 서로의 요구 파일을 메모리에 저장하고 있는 경우(사용자 A가 파일 XB를 메모리에 갖고 있고, 사용자 B가 파일 XA를 메모리에 갖고 있는 경우), 기지국에서 각 사용자가 메모리에 파일을 저장하고 있는 메모리 저장 정보(MSI)를 파악하여 파일 XA와 파일 XB를 XOR 연산으로 부호화한 파일(XAXB) 하나만 전송하면 각 사용자에서는 각자 가지고 있는 메모리를 활용하여 요구 파일을 복호화할 수 있다. 이때 파일 XA와 파일 XB를 하나의 그룹({A, B})으로 볼 수 있으며 인덱스 코드를 구성하는 하나의 원소로 볼 수 있다. In step 210, the index code determining unit 310 determines whether or not the index encoding is performed based on the memory storage information (MSI) of the user terminal, which is estimated by the base station, in the index code set including the index codes that can be decoded in the user terminal Can be determined. Here, the index code is a set of files XOR-operated to be transmitted at one time based on the request file and the memory storage information among a plurality of user terminals belonging to the base station, and each file corresponds one-to-one with file indexes to XOR, Can be represented as a set of user groups requiring the corresponding file index. That is, the index code may include at least one user group. For example, when the user A requests the file X A and the user B requests the X B , a total of 2 times (the files X A and X B respectively) must be transmitted in the existing transmission scheme. However, Is stored in the memory (when the user A has the file X B in the memory and the user B has the file X A in the memory), the base station stores the memory storage information MSI), and transferring only one file (X A X B ) obtained by XORing the file X A and the file X B , each user can decode the request file by utilizing the memory he owns. At this time, the file X A and the file X B can be regarded as one group ({A, B}) and can be regarded as one element constituting the index code.

220 단계에서, 최적 인덱스 코드 결정부(320)는 인덱스 코드 집합에서 상기 결정된 인덱스 코드와는 다른 인덱스 코드를 선택할 수 있다. 예컨대, 인덱스 코드 집합에 포함된 인덱스 코드들 중 상기 결정된 인덱스 코드를 제외한 인덱스 코드들 중에서 어느 하나의 인덱스 코드가 선택될 수 있다.In operation 220, the optimum index code determining unit 320 may select an index code different from the determined index code in the index code set. For example, any one of the index codes excluding the determined index code among the index codes included in the index code set can be selected.

230 단계에서, 최적 인덱스 코드 결정부(320)는 결정된 인덱스 코드와 상기 선택된 다른 인덱스 코드를 비교하여 최적 인덱스 코드를 결정할 수 있다. 예를 들어, 최적 인덱스 코드 결정부(320)는 상기 결정된 인덱스 코드의 성공 전송률의 총합과 상기 선택된 다른 인덱스 코드의 성공 전송률의 총합을 비교하여 최적 인덱스 코드를 결정할 수 있다. 이때, 최적 인덱스 코드 결정부(320)는 브루트-포스(Brute-Force) 알고리즘에 기초하여, 인덱스 코드 집합에 포함된 모든 인덱스 코드들을 대상으로 각 코드 별 성공 전송률의 총합을 비교함으로써, 최적 인덱스 코드를 설정할 수 있다. 그리고, 비교를 통해 마지막으로 설정된 최적 인덱스 코드를 최종적으로 최적 인덱스 코드로 결정할 수 있다.In operation 230, the optimal index code determiner 320 may determine an optimal index code by comparing the determined index code with the selected other index code. For example, the optimal index code determining unit 320 may determine an optimal index code by comparing the sum of the success rate of the determined index code and the success rate of the selected other index code. At this time, the optimum index code determining unit 320 compares the sum of the success rate of each code with respect to all the index codes included in the index code set based on the Brute-Force algorithm, You can set the code. Finally, the optimum index code set finally through the comparison can be finally determined as the optimum index code.

240 단계에서, 전송 제어부(330)는 결정된 최적 인덱스 코드에 해당하는 적어도 하나의 사용자 단말을 대상으로, 해당 단말에서 요청한 파일을 전송할 수 있다. 예컨대, 전송 제어부(330)는 최적 인덱스 코드에 해당하는 사용자 그룹에 속하는 사용자 단말들을 대상으로 요구 파일을 멀티캐스트 전송할 수 있다.In step 240, the transmission control unit 330 may transmit the requested file to the at least one user terminal corresponding to the determined optimal index code. For example, the transmission control unit 330 may multicast a request file to user terminals belonging to a user group corresponding to an optimal index code.

위의 210 단계에서, 기지국이 추정하고 있는 사용자 단말의 메모리 정보(MSI)는

Figure pat00024
로 표현될 수 있다. 즉,
Figure pat00025
는 k번째 사용자 단말의 캐시 메모리에 저장하고 있을 것으로 추정되는 파일 인덱스들의 집합을 나타낼 수 있다. 그리고, 복호화가 가능한(decodable) 모든 인덱스 코드들을 포함하는 인덱스 코드 집합은
Figure pat00026
로 표현될 수 있다. 상기 인덱스 코드 집합은 주어진 메모리 저장 정보(MSI)
Figure pat00027
(1번째부터 k번째 사용자 단말의 파일 인덱스를 한번에 표기한 것)에 따라 아래의 수학식 5와 같이 표현될 수 있다. In step 210, the memory information (MSI) of the user terminal estimated by the base station is
Figure pat00024
. ≪ / RTI > In other words,
Figure pat00025
May represent a set of file indexes that are presumed to be stored in the cache memory of the kth user terminal. And, the index code set containing all the index codes that can be decodable is
Figure pat00026
. ≪ / RTI > The set of index codes includes a given memory storage information (MSI)
Figure pat00027
(The index of the file index of the kth user terminal from the first one), as shown in Equation (5) below.

[수학식 5]&Quot; (5) "

Figure pat00028
Figure pat00028

기지국인 인덱스 부호화 장치(300)는 아래의 수학식 6과 같이, 자신이 추정하고 있는 사용자 단말의 메모리 저장 정보(MSI)

Figure pat00029
에 기초하여 전송 가능한 인덱스 코드(즉, 전송 가능한 사용자 그룹)을 결정할 수 있다. The index encoding apparatus 300, which is a base station, calculates the memory storage information MSI of the user terminal,
Figure pat00029
(I.e., a group of users that can be transferred) based on the index code.

[수학식 6]&Quot; (6) "

Figure pat00030
Figure pat00030

즉, 수학식 6에 따르면, 상기 추정하고 있는 사용자 단말의 메모리 저장 정보(MSI)

Figure pat00031
에 기초하여 K개의 타임 슬롯 별로 전송 가능한 인덱스 코드(즉, 전송 가능한 사용자 그룹)가 결정될 수 있다.That is, according to Equation (6), the memory storage information (MSI)
Figure pat00031
(I. E., A transmittable user group) can be determined for each K time slots.

이때, 사용자 단말의 메모리 저장 정보는 시간에 따라 변화하므로, 기지국인 인덱스 부호화 장치(300)가 추정하고 있는 메모리 저장 정보(MSI)와 실제 메모리 저장 정보가 상이할 수 있으며, 상기 추정하고 있는 메모리 저장 정보(MSI)와 실제 메모리 저장 정보 간의 상관성(correlation)은 아래의 수학식 7과 같이 표현될 수 있다.Since the memory storage information of the user terminal varies with time, the memory storage information (MSI) estimated by the index encoding apparatus 300, which is a base station, may differ from the actual memory storage information, The correlation between the MSI and the actual memory storage information can be expressed by Equation (7) below.

[수학식 7]&Quot; (7) "

Figure pat00032
Figure pat00032

수학식 7과 같이 표현되는 상기 상관성은 기지국과 사용자 단말의 주변 환경 정보(예컨대, 잡음, 페이딩 등의 채널 환경), 시간 등에 따라 값이 달라질 수 있다. 이에 따라, 문제의 명확성을 위해 위의 수학식 7과 같이 표현되는 상관성을 아래의 수학식 8과 같이 가정할 수 있다.The correlation expressed by Equation (7) may vary depending on the surrounding information of the base station and the user terminal (e.g., channel environment such as noise, fading, etc.), time, and the like. Accordingly, for the sake of clarity of the problem, the correlation represented by Equation (7) can be assumed as Equation (8) below.

[수학식 8]&Quot; (8) "

Figure pat00033
Figure pat00033

수학식 8에 따르면, p가 1인 경우 실제 메모리 정보와 추정한 메모리 정보가 동일할 수 있다. 이때, 사용자 단말들 각각은 상기 상관성에 해당하는 값을 미리 알고 있음을 가정할 수 있다. 그러면, 전송 제어부(330)는 상관성을 기반으로 결정된 사용자 그룹에 속하는 사용자 단말들을 대상으로 파일 전송을 제어할 수 있다.According to Equation (8), when p is 1, the actual memory information and the estimated memory information may be the same. At this time, it can be assumed that each of the user terminals knows a value corresponding to the correlation. Then, the transmission control unit 330 can control the file transmission to the user terminals belonging to the user group determined based on the correlation.

기지국에서,

Figure pat00034
의 사용자 그룹으로 인덱스 코드를 구성하여 전송하는 경우를 고려하면, 전송한 파일이 단위 파일로 크기가 1이라고 가정하면, i번째 그룹 내에 속하는 사용자 단말들 각각은 자신을 제외한 다른 사용자 단말들에 대해 명확한 메모리 저장 정보를 가지고 있는 경우에만 요구 파일을 제대로 수신할 수 있으므로,
Figure pat00035
만큼 수신할 수 있다. 이때, i번째 멀티캐스트 전송을 통해서 총
Figure pat00036
의 사용자 그룹에 속하는 사용자 단말들이 한 번에 파일을 수신할 수 있으므로,
Figure pat00037
만큼 파일을 수신하게 되고, 모든 사용자 그룹에 대해 합하게 되면 전송량의 총합은 아래의 수학식 9와 같을 수 있다.At the base station,
Figure pat00034
It is assumed that the transmitted file is a unit file having a size of 1, each of the user terminals belonging to the i-th group has a clear Since the request file can be received correctly only when it has memory storage information,
Figure pat00035
As shown in FIG. At this time, i
Figure pat00036
The user terminals belonging to the user group of the user terminal can receive the file at one time,
Figure pat00037
The sum of the transmission amounts may be expressed by Equation (9) below. &Quot; (9) "

[수학식 9]&Quot; (9) "

Figure pat00038
Figure pat00038

이때, 사용자 그룹이 공집합이 아닌 경우를 표현하기 위해,

Figure pat00039
에 대한 크기(cardinality) 함수를 아래의 수학식 10과 같이 표현할 수 있다. At this time, in order to express the case where the user group is not an empty set,
Figure pat00039
The cardinality function for the cardinality can be expressed as Equation 10 below.

[수학식 10]&Quot; (10) "

Figure pat00040
Figure pat00040

여기서, 함수

Figure pat00041
는 ()안의 값이 맞으면 1, 틀리면 0을 나타내는 함수에 해당할 수 있다. 이에 따라, 단위 시간당 전송 횟수는 아래의 수학식 11과 같이 표현될 수 있다.Here,
Figure pat00041
Can be a function representing 1 if the value in parentheses is correct, and 0 if it is wrong. Accordingly, the number of transmissions per unit time can be expressed by Equation (11) below.

[수학식 11]&Quot; (11) "

Figure pat00042
Figure pat00042

기지국이 각 사용자 단말의 메모리 저장 정보(MSI)를 정확히 알지 못하는 경우(즉, 기지국이 추정한 부정확한 메모리 저장 정보를 이용하는 경우), 각 사용자 단말의 성공적인 전송량의 총합을 최대화하는 최적의 사용자 그룹들(즉, 인덱스 코드)을 결정하는 문제(P1)는 아래의 수학식 12와 같이 표현될 수 있다.If the base station does not know exactly the memory storage information (MSI) of each user terminal (i.e., if it uses incorrect memory storage information estimated by the base station), the optimal user groups (I. E., The index code) can be expressed as < EMI ID = 12.0 >

[수학식 12]&Quot; (12) "

Figure pat00043
Figure pat00043

위의 수학식 12에서, 메모리 고정 정보(MSI)가 고정되어 있는 경우, 상관성(correlation)이 낮으면(즉, 위의 수학식 7의 p가 제1 기준값 이하로 낮으면), 멀티캐스트로 전송 시 특정 사용자 단말에 해당하는 파일과 다른 사용자 단말에 해당하는 파일이 섞여 있으므로, 특정 사용자 단말은 자신이 요청한 요구 파일을 제대로 수신하지 못하게 되어 성능 저하가 발생할 수 있다. 이에 따라, 기지국인 인덱스 부호화 장치(300)는 상관성이 제1 기준값 이하로 낮은 경우, 인덱스 코드를 변경하여 파일을 보낼 수 있다. 여기서, 인덱스 코드를 변경하는 것은 사용자 그룹뿐만 아니라 전송 방식도 변경하는 것을 나타낼 수 있다.In the above equation (12), when the memory fixing information MSI is fixed, if the correlation is low (that is, if p in the above equation (7) is lower than the first reference value) Since a file corresponding to a specific user terminal is mixed with a file corresponding to another user terminal, a specific user terminal can not properly receive a request file requested by the user terminal, and performance may be degraded. Accordingly, when the correlation is lower than the first reference value, the index encoding device 300, which is a base station, can transmit the file by changing the index code. Here, changing the index code may indicate that not only the user group but also the transmission scheme is changed.

즉, 1개의 인덱스 코드는 여러 개의 사용자 그룹을 포함하며, 각 사용자 그룹은 해당 그룹의 크기에 따라 멀티캐스트로 전송될 수도 있고, 유니캐스트로 전송될 수도 있다. 이에 따라, 하나의 인덱스 코드는 멀티캐스트와 유니캐스트 전송이 복합되어 포함하고 있으며, 인덱스 코드가 변경되면 사용자 그룹이 변경되고, 변경된 사용자 그룹에 해당하는 방식으로 전송 방식이 변경될 수 있다. 그러면, 모든 사용자 단말들이 하나의 그룹으로 멀티캐스트되는 경우가 성능이 가장 좋은 상황에 해당하고, 각 사용자 단말들이 서로 다른 그룹으로 되어 있어 각각 유니캐스트 전송하는 경우가 가장 안 좋은 상황에 해당할 수 있다.That is, one index code includes a plurality of user groups, and each user group may be transmitted in multicast or unicast according to the size of the group. Accordingly, one index code includes a combination of multicast and unicast transmission. When the index code is changed, the user group is changed and the transmission mode can be changed in a manner corresponding to the changed user group. In this case, all the UEs are multicasted into one group, which is the best situation, and each user terminal is in a different group, so that it is the worst case to perform each unicast transmission .

일례로, 사용자 단말이 6개이고, 각 사용자 단말들을 {1,2,3,4,5,6}으로 표현한 경우, {1,2,3}, {4,5}, {6}은 하나의 인덱스 코드에 포함되는 것으로 표현될 수 있다. 즉, 상기 인덱스 코드는 3번의 전송으로 모든 사용자 단말들을 지원할 수 있다. 예컨대, 사용자 그룹 {1,2,3}과 사용자 그룹 {4,5}는 멀티캐스트로 전송되고, 사용자 그룹{6}은 유니캐스트 전송으로 지원될 수 있다.For example, when there are six user terminals and each user terminal is expressed as {1,2,3,4,5,6}, {1,2,3}, {4,5}, and {6} It can be expressed as being included in the index code. That is, the index code can support all user terminals in three transmissions. For example, user group {1,2,3} and user group {4,5} can be transmitted in multicast, and user group {6} can be supported in unicast transmission.

이때, 상관성을 고려하여 기지국에서 인덱스 코드를 변경하여 파일을 전송하는 문제를 해결하는 알고리즘은 아래의 표 1과 같을 수 있다.In this case, considering the correlation, the algorithm for solving the problem of changing the index code and transmitting the file may be as shown in Table 1 below.

Figure pat00044
Figure pat00044

표 1에 나타난 인덱스 코드를 결정(즉, 검색)하는 알고리즘은 브루트-포스(Brute-force) 알고리즘에 기초하여 인덱스 코드 집합에 포함된 모든 인덱스 코드들을 대상으로 최적 인덱스 코드를 결정하는 알고리즘에 해당할 수 있다.The algorithm for determining (i.e., searching) the index code shown in Table 1 corresponds to an algorithm for determining the optimal index code for all the index codes included in the index code set based on the brute-force algorithm can do.

표 1에 따르면, 인덱스 코드 결정부(310)는 기지국이 추정하고 있는 사용자 단말의 MSI 정보에 기초하여 인덱스 코드 집합에 포함된 복호화 가능한(decodable) 인덱스 코드 중 어느 하나를 선택할 수 있다. According to Table 1, the index code determining unit 310 can select any one of the decodable index codes included in the index code set based on the MSI information of the user terminal estimated by the base station.

그러면, 최적 인덱스 코드 결정부(320)는 인덱스 코드 집합에 포함된 복호화 가능한 인덱스 코드들 중 상기 선택된 인덱스 코드를 제외한 인덱스 코드들 중에서, 어느 하나를 선택할 수 있다. 즉, 최적 인덱스 코드 결정부(320)는 상기 인덱스 코드 집합에서 상기 선택된 인덱스 코드와는 다른 인덱스 코드를 선택할 수 있다.Then, the optimum index code determining unit 320 can select any one of the index codes excluding the selected index code among the index codes capable of decoding included in the index code set. That is, the optimum index code determining unit 320 can select an index code different from the selected index code in the index code set.

일례로, 도 4를 참고하면, 도 4의 네트워크 환경은 사용자 단말의 개수가 4개이고, 요구 파일과 각 사용자 단말이 메모리에 저장하는 있는 정보가 나타나 있는(즉, MSI가 결정되어 있는) 하나의 상황을 나타낼 수 있다. 이때, 복호화 가능한 인덱스 코드는 여러가지 존재할 수 있는 데, 많은 경우의 수 중 2가지를 예로 들면, 복호화 가능한 인덱스 코드로서 ({1,2,3},{4}), ({1},{2},{3},{4})이 존재할 수 있다. 이때, ({1,2},{3,4})의 경우, 사용자 단말 3이 F[4]를 갖고 있지 않기 때문에 복호 가능한 인덱스 코드에 속하지 않을 수 있다. 이러한 방식으로, 가능한 모든 인덱스 부호 중에서 하나가 선택될 수 있다.For example, referring to FIG. 4, the network environment shown in FIG. 4 includes four user terminals, one request file and one user terminal storing information in memory (i.e., MSI is determined) It can indicate the situation. At this time, there are various types of index codes that can be decoded. For example, when two of the numbers are used, ({1,2,3}, {4}), { }, {3}, {4}. At this time, in the case of ({1,2}, {3,4}), since the user terminal 3 does not have F [4], it may not belong to a decodable index code. In this way, one of all possible index codes can be selected.

그리고, 최적 인덱스 코드 결정부(320)는 상기 선택된 인덱스 코드와 상기 다른 인덱스 코드의 성공 전송량의 총합을 비교할 수 있다. 예를 들어, 최적 인덱스 코드 결정부(320)는 위의 수학식 9에 기초하여 상기 인덱스 코드의 성공 전송량의 총합을 계산하고, 상기 다른 인덱스 코드의 성공 전송량의 총합을 계산할 수 있다. 그리고, 계산된 각 총합을 비교할 수 있다.Then, the optimum index code determining unit 320 may compare the sum of the successive transmission amounts of the selected index code and the other index codes. For example, the optimum index code determining unit 320 may calculate the sum of the succeeding transmission amounts of the index codes based on Equation (9) above, and calculate the sum of the succeeding transmission amounts of the other index codes. Then, the calculated totals can be compared.

이어, 최적 인덱스 코드 결정부(320)는 상기 비교를 통해 둘 중에 성공 전송량의 총합이 큰 인덱스 코드를 최적 인덱스 코드로 설정할 수 있다. 이처럼, 최적 인덱스 코드 결정부(320)는 인덱스 코드의 전송량의 총합을 계산하고, 계산된 총합을 상기 설정된 최적 인덱스 코드의 성공 전송량의 총합과 비교하는 동작을 인덱스 코드 집합에 포함된 복호화 가능한 모든 인덱스 코드들을 대상으로 수행할 수 있다. 그리고, 모든 복호화 가능한 인덱스 코드들을 대상으로 상기 총합을 비교하는 동작을 반복함으로써, 둘 중 상대적으로 더 큰 성공 전송량의 총합을 가진 인덱스 코드로 상기 최적 인덱스 코드는 갱신될 수 있다. 예컨대, 인덱스 코드 1이 최적 인덱스 코드로 설정된 상태에서, 인덱스 코드 3의 성공 전송량의 총합이 최적 인덱스 코드로 설정된 인덱스 코드 1의 성공 전송량의 총합보다 큰 경우, 최적 인덱스 코드는 인덱스 코드 3으로 설정이 갱신/변경될 수 있다. 그러면, 모든 복호화 가능한 인덱스 코드들을 대상으로 상기 총합을 비교하는 동작을 수행한 경우, 최적 인덱스 코드로 마지막에 설정된 인덱스 코드가 최종적으로 최적 인덱스 코드로 결정될 수 있다.Then, the optimum index code determiner 320 may set an index code having a larger total sum of the success transmission amounts as the optimal index code through the comparison. As described above, the optimum index code determining unit 320 calculates the sum of the transmission amounts of the index codes, and compares the calculated sum with the sum of the success transmission amounts of the optimal index codes, You can do this with code. Then, by repeating the operation of comparing the sum with all decodable index codes, the optimal index code can be updated with an index code having the sum of the relatively larger success transmission amount. For example, in a state where the index code 1 is set to the optimum index code, when the sum of the success transmission amounts of the index code 3 is larger than the sum of the success transmission amounts of the index code 1 set to the optimum index code, the optimum index code is set to the index code 3 Updated / changed. Then, when the operation of comparing the sum with all decodable index codes is performed, the last set index code with the optimum index code can be finally determined as the optimum index code.

도 4는 본 발명의 일실시예에 있어서, 기지국에 속하는 사용자 단말이 4개인 경우의 메모리 저장 정보를 나타낸 도면이고, 도 5는 본 발명의 일실시예에 있어서, 상관성(p)에 따른 성능을 도시한 그래프이다.FIG. 4 is a diagram illustrating memory storage information in the case where there are four user terminals belonging to a base station in an embodiment of the present invention. FIG. 5 is a diagram illustrating performance of the correlation p according to an embodiment of the present invention. FIG.

도 4의 네트워크 환경은 기지국인 인덱스 부호화 장치(400)에 속한 사용자 단말들(410, 420, 430, 440) 각각에서 파일 1(401), 파일 2(402), 파일 3(403), 및 파일 4(404)를 요청한 다운링크 모델을 나타낼 수 있다.The network environment shown in FIG. 4 includes a file 1 401, a file 2 402, a file 3 403, and a file 340 in each of the user terminals 410, 420, 430, and 440 belonging to the index- 4 404 in the downlink.

이때, 사용자 단말 1(410)의 캐시 메모리(cached memory)에는 파일 2 및 파일 3(

Figure pat00045
)이 저장되어 있고, 사용자 단말 2(420)의 캐시 메모리에는 파일 1 및 파일 3(
Figure pat00046
)이 저장되어 있고, 사용자 단말 3(430)의 캐시 메모리에는 파일 1 및 파일 2(
Figure pat00047
)가 저장되어 있고, 사용자 단말 4(440)의 캐시 메모리에는 파일 2 및 파일 3(
Figure pat00048
)이 저장되어 있을 수 있다. 즉, 각 사용자 단말은 자신의 캐시 메모리에 저장되어 있지 않은 파일을 기지국(400)으로 요청할 수 있다. 이때, 사용자 단말들 각각의 메모리 저장 정보(MSI)와 기지국(400)에서 추정하고 있는(즉, 알고 있는) 각 사용자 단말의 메모리 저장 정보(MSI)가 상이할 수 있다. 예컨대, 기지국(400)은 사용자 단말 1(410)의 캐시 메모리에 파일 4 및 파일 3이 저장되고, 사용자 단말 2(420)의 캐시 메모리에 파일 2 및 파일 3이 저장되어 있는 것으로 알고 있을 수 있다. 이처럼, 기지국(400)이 추정하고 있는 메모리 저장 정보와 사용자 단말의 실제 저장 정보 간의 관련도를 나타내는 상관성(correlation, p)을 고려하여 상기 결정된 최적 인덱스 코드에 해당하는 사용자 단말들을 대상으로 요구 파일을 전송할 수 있다.At this time, in the cached memory of the user terminal 1 (410), file 2 and file 3
Figure pat00045
, And the cache memory of the user terminal 2 (420) stores the file 1 and the file 3 (
Figure pat00046
), And the cache memory of the user terminal 3 (430) stores file 1 and file 2
Figure pat00047
, And the cache memory of the user terminal 4 (440) stores the file 2 and the file 3 (
Figure pat00048
May be stored. That is, each user terminal can request a file not stored in its own cache memory to the base station 400. At this time, the memory storage information (MSI) of each user terminal may be different from the memory storage information (MSI) of each user terminal estimated by the base station 400 (that is, known). For example, the base station 400 may know that files 4 and 3 are stored in the cache memory of the user terminal 1 (410), and files 2 and 3 are stored in the cache memory of the user terminal 2 (420) . In this way, considering the correlation (p, p) indicating the degree of association between the memory storage information estimated by the base station 400 and the actual stored information of the user terminal, the request file for the user terminals corresponding to the determined optimal index code Lt; / RTI >

일례로, 전송 제어부(330)는 상관성(p)이 미리 정의된 제1 기준값 이하로 낮은 경우, 최적 인덱스 코드에 해당하는 사용자 단말들을 대상으로, 요구 파일을 유니캐스트로 전송할 수 있다. 즉, 해당 사용자 그룹에 속하는 사용자 단말들 각각으로 각 단말에서 요청한 파일을 따로 전송할 수 있다. 예컨대, 도 5를 참고하면, 상관성(p)=0인 경우, 요구 파일을 사용자 단말들 각각으로 개별적으로 전송하는 유니캐스트 전송(510)이 멀티캐스트 전송보다 효율적임을 확인할 수 있다.For example, when the correlation p is lower than a predefined first reference value, the transmission control unit 330 may transmit the request file unicast to user terminals corresponding to the optimal index code. That is, each user terminal belonging to the corresponding user group can separately transmit a file requested by each terminal. For example, referring to FIG. 5, it can be seen that in case of correlation (p) = 0, unicast transmission 510, which individually transmits the request file to each of the user terminals, is more efficient than multicast transmission.

다른 예로, 전송 제어부(330)는 상관성(p)이 미리 정의된 제2 기준값 이상으로 높은 경우, 최적 인덱스 코드에 해당하는 사용자 단말들을 대상으로, 요구 파일을 멀티캐스트로 전송할 수 있다. 즉, 해당 사용자 그룹에 속하는 사용자 단말들이 요구한 파일을 동시에 사용자 단말들로 전송할 수 있다(이때, 사용자 단말들이 요구한 파일은 동일한 파일에 해당할 수 있다). 예컨대, 도 5를 참고하면, 상관성(p)=1인 경우, 사용자 그룹이 2개인 경우에 최적임을 확인할 수 있다. 즉, 표 1의 알고리즘 1에 기초하여 크기가 1과 3인 2개의 사용자 그룹 (1,3)과 크기가 2와 2인 2개의 사용자 그룹 (2,2) 중 어느 하나가 최적으로 선택될 수 있다. 결국, 상관성이 적을수록 유니캐스트로 전송하는 것이 멀티캐스트로 전송하는 것보다 상대적으로 성능(throughput)이 우수하고, 상관성이 높을수록 유니캐스트보다 멀티캐스트로 전송하는 것이 상대적으로 성능(throughput)이 우수함을 확인할 수 있다. 이때, 사용자 단말의 개수가 많아질수록,

Figure pat00049
의 개수가 많아지므로 최적 인덱스 코드를 결정(즉, 검색)하기 위한 계산 복잡도가 증가할 수 있다.As another example, when the correlation p is higher than a predetermined second reference value, the transmission control unit 330 may transmit the request file to the user terminals corresponding to the optimal index code by multicast. That is, the user terminals belonging to the user group can simultaneously transmit the requested file to the user terminals (the files requested by the user terminals may correspond to the same file). For example, referring to FIG. 5, it can be confirmed that the correlation (p) = 1 is optimal when there are two user groups. That is, based on the algorithm 1 of Table 1, it is possible to select either one of two user groups (1, 3) of size 1 and 3 and two user groups (2, 2) of size 2 and 2 have. As a result, the smaller the correlation, the higher the throughput than the multicast transmission, and the higher the correlation, the better the multicast transmission than the unicast. can confirm. At this time, as the number of user terminals increases,
Figure pat00049
The computational complexity for determining (i.e., searching) the optimal index code may increase.

도 5에서, (1,3), (2,2)과 같이 ( )안의 값이 의미하는 것은 각 사용자 그룹의 크기(cardinality)를 나타낼 수 있다. 즉, (1,3)은 하나의 인덱스 코드가 2개의 사용자 그룹으로 구성되어 있을 때, 각 사용자 그룹의 크기가 1과 3인 경우를 나타내고, (2, 1, 1)은 하나의 인덱스 코드가 3개의 사용자 그룹으로 구성되어 있을 때 각 사용자 그룹의 크기가 각각 2, 1, 1인 경우를 나타낼 수 있다. 도 5의 ( )의 값을 도 4와 매칭하여 설명하면, (1,3)은 도 4의 복호화 가능한 인덱스 코드 ({4},{1,2,3})에 해당할 수 있다. 그리고, 도 5의 (2,2)는 도 4에서는 복호화 가능한 인덱스 코드가 없으며, 다른 MSI인 경우, 인덱스 코드 ({1,2},{3,4})에 해당할 수 있다. 도 5의 (2,1,1)는 인덱스 코드 ({1,2},{3},{4}), ({1,2},{3},{4}), ({1,3},{2},{4})에 해당하고, 도 5의 (1,1,1,1)는 인덱스 코드 ({1},{2},{3},{4})에 해당할 수 있다.In FIG. 5, values in () such as (1,3) and (2,2) may indicate the cardinality of each user group. That is, (1, 3) represents a case where the size of each user group is 1 and 3 when one index code is composed of two user groups, and (2, 1, 1) When three user groups are composed, the size of each user group is 2, 1, and 1, respectively. The values of () in FIG. 5 are matched with those of FIG. 4, and (1, 3) can correspond to decodable index codes ({4}, {1,2,3}) in FIG. In FIG. 5 (2, 2), there is no decodable index code in FIG. 4, and in the case of another MSI, it corresponds to the index codes ({1,2}, {3,4}). 5, (2, 1, 1) in FIG. 5 shows the index codes ({1,2}, {3}, {4}), ({1,2}, {3} (1, 1, 1, 1) in FIG. 5 correspond to the index codes ({1}, {2}, {3}, and {4}). have.

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

이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is to be understood that the invention is not limited to the disclosed exemplary embodiments. For example, it is to be understood that the techniques described may be performed in a different order than the described methods, and / or that components of the described systems, structures, devices, circuits, Lt; / RTI > or equivalents, even if it is replaced or replaced.

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

Claims (16)

사용자 단말의 메모리 저장 정보가 시간에 따라 변화하는 네트워크 환경에서, 기지국에 속하는 복수의 사용자 단말들을 대상으로 인덱스 부호화(index coding) 하는 방법에 있어서,
복호화가 가능한(decodable) 인덱스 코드들을 포함하는 인덱스 코드 집합에서, 상기 기지국이 추정하고 있는 사용자 단말의 메모리 저장 정보에 기초하여 인덱스 부호화에 이용될 인덱스 코드를 결정하는 단계;
상기 인덱스 코드 집합에서 결정된 상기 인덱스 코드와는 다른 인덱스 코드를 선택하는 단계;
결정된 상기 인덱스 코드와 선택된 상기 다른 인덱스 코드를 비교하여 최적 인덱스 코드를 결정하는 단계; 및
결정된 상기 최적 인덱스 코드에 해당하는 적어도 하나의 사용자 단말을 대상으로 해당 단말에서 요청한 파일을 전송하는 단계
를 포함하고,
상기 인덱스 코드는, 상기 복수의 사용자 단말들 중 요청된 파일에 기초하여 그룹화된 사용자 그룹을 나타내는 것
을 특징으로 하는 인덱스 부호화 방법.
A method of performing index coding on a plurality of user terminals belonging to a base station in a network environment in which memory storage information of a user terminal changes with time,
Determining an index code to be used for index encoding based on memory storage information of a user terminal that the base station is estimating, in an index code set including index codes that are decodable;
Selecting an index code different from the index code determined in the index code set;
Comparing the determined index code with the selected other index code to determine an optimal index code; And
Transmitting a file requested by the corresponding terminal to at least one user terminal corresponding to the determined optimal index code
Lt; / RTI >
Wherein the index code indicates a group of users grouped based on a requested file among the plurality of user terminals
The index coding method comprising the steps of:
제1항에 있어서,
상기 최적 인덱스 코드로 결정하는 단계는,
상기 결정된 인덱스 코드와 상기 선택된 다른 인덱스 코드의 성공 전송량의 총합을 비교하는 단계;
상기 비교를 통해 성공 전송량의 총합이 큰 인덱스 코드를 상기 최적 인덱스코드로 설정하는 단계; 및
상기 인덱스 코드 집합에 포함된 모든 인덱스 코드들 중 상기 결정된 인덱스 코드와 상기 선택된 다른 인덱스 코드를 제외한 인덱스 코드들을 대상으로 선택된 어느 하나의 인덱스 코드의 성공 전송량의 총합과 설정된 최적 인덱스 코드의 성공 전송량의 총합을 비교하여 상기 최적 인덱스 코드를 갱신하는 단계
를 포함하는 인덱스 부호화 방법.
The method according to claim 1,
Wherein the step of determining with the optimal index code comprises:
Comparing the determined index code with a successive transmission amount of the selected other index code;
Setting an index code having a larger total sum of success traffic through the comparison as the optimal index code; And
The sum of the successive transmission amounts of any one of the index codes selected for the index codes excluding the determined index code and the selected other index codes among all the index codes included in the index code set, And updating the optimal index code
/ RTI >
제2항에 있어서,
상기 파일을 전송하는 단계는,
갱신된 상기 최적 인덱스 코드에 해당하는 적어도 하나의 사용자 단말을 대상으로 파일을 전송하는 것
을 특징으로 하는 인덱스 부호화 방법.
3. The method of claim 2,
The method of claim 1,
Transmitting a file to at least one user terminal corresponding to the updated optimal index code
The index coding method comprising the steps of:
제1항에 있어서,
상기 최적 인덱스 코드로 결정하는 단계는,
상기 인덱스 코드 집합에 포함된 모든 인덱스 코드들을 대상으로, 브루트-포스(Brute-Force) 알고리즘에 기초하여 성공 전송량의 총합이 최대인 인덱스 코드를 상기 최적 인덱스 코드를 결정하는 것
을 특징으로 하는 인덱스 부호화 방법.
The method according to claim 1,
Wherein the step of determining with the optimal index code comprises:
Determining the optimal index code as an index code having a maximum sum of success transmission amounts based on a Brute-Force algorithm for all the index codes included in the index code set,
The index coding method comprising the steps of:
제1항에 있어서,
상기 최적 인덱스 코드는, 상기 기지국이 추정하고 있는 사용자 단말의 메모리 저장 정보와 해당 사용자 단말의 실제 메모리 정보 간의 상관성(correlation)에 기초하여 변경되는 것
을 특징으로 하는 인덱스 부호화 방법.
The method according to claim 1,
The optimal index code is changed based on a correlation between memory storage information of the user terminal estimated by the base station and actual memory information of the corresponding user terminal
The index coding method comprising the steps of:
제5항에 있어서,
상기 파일을 전송하는 단계는,
상기 상관성이 미리 정의된 제1 기준값 이하로 낮은 경우, 상기 최적 인덱스 코드에 해당하는 적어도 하나의 사용자 단말을 대상으로, 해당 단말에서 요청한 파일을 유니캐스트(unicast)로 전송하는 단계
를 포함하는 인덱스 부호화 방법.
6. The method of claim 5,
The method of claim 1,
When the correlation is lower than a predefined first reference value, transmitting a file requested by the corresponding terminal to unicast for at least one user terminal corresponding to the optimal index code
/ RTI >
제5항에 있어서,
상기 파일을 전송하는 단계는,
상기 상관성이 미리 정의된 제2 기준값 이상으로 높은 경우, 상기 최적 인덱스 코드에 해당하는 적어도 하나의 사용자 단말을 대상으로, 해당 단말에서 요청한 파일을 멀티캐스트(multicast)로 전송하는 단계
를 포함하는 인덱스 부호화 방법.
6. The method of claim 5,
The method of claim 1,
When the correlation is higher than a predefined second reference value, multicasting a file requested by the corresponding terminal to at least one user terminal corresponding to the optimal index code
/ RTI >
제5항에 있어서,
상기 상관성은 상기 기지국과 사용자 단말 간의 주변 환경 정보 및 시간에 따라 변화하는 것
을 특징으로 하는 인덱스 부호화 방법.
6. The method of claim 5,
The correlation may vary depending on the surrounding environment information and the time between the base station and the user terminal
The index coding method comprising the steps of:
사용자 단말의 메모리 저장 정보가 시간에 따라 변화하는 네트워크 환경에서, 복수의 사용자 단말들을 대상으로 인덱스 부호화(index coding)하는 장치에 있어서,
복호화가 가능한(decodable) 인덱스 코드들을 포함하는 인덱스 코드 집합에서, 인덱스 부호화 장치가 추정하고 있는 사용자 단말의 메모리 저장 정보에 기초하여 인덱스 부호화에 이용될 인덱스 코드를 결정하는 인덱스 코드 결정부;
상기 인덱스 코드 집합에서 결정된 상기 인덱스 코드와는 다른 인덱스 코드를 선택하고, 결정된 상기 인덱스 코드와 선택된 상기 다른 인덱스 코드를 비교하여 최적 인덱스 코드를 결정하는 최적 인덱스 코드 결정부; 및
결정된 상기 최적 인덱스 코드에 해당하는 적어도 하나의 사용자 단말을 대상으로 해당 단말에서 요청한 파일을 전송하는 전송 제어부
를 포함하고,
상기 인덱스 코드는, 상기 복수의 사용자 단말들 중 요청된 파일에 기초하여 그룹화된 사용자 그룹을 나타내는 것
을 특징으로 하는 인덱스 부호화 장치.
An apparatus for performing index coding on a plurality of user terminals in a network environment in which memory storage information of a user terminal varies with time,
An index code determining unit for determining an index code to be used for index encoding based on memory storage information of a user terminal estimated by the index encoding apparatus, in an index code set including index codes capable of being decoded;
An optimal index code determining unit for selecting an index code different from the index code determined in the set of index codes and comparing the determined index code with the selected another index code to determine an optimum index code; And
A transmission controller for transmitting a file requested by the corresponding terminal to at least one user terminal corresponding to the determined optimal index code,
Lt; / RTI >
Wherein the index code indicates a group of users grouped based on a requested file among the plurality of user terminals
And an index encoding unit for decoding the encoded data.
제9항에 있어서,
상기 최적 인덱스 코드 결정부는,
상기 결정된 인덱스 코드와 상기 선택된 다른 인덱스 코드의 성공 전송량의 총합을 비교하고, 상기 비교를 통해 성공 전송량의 총합이 큰 인덱스 코드를 상기 최적 인덱스코드로 설정하고, 상기 인덱스 코드 집합에 포함된 모든 인덱스 코드들 중 상기 결정된 인덱스 코드와 상기 선택된 다른 인덱스 코드를 제외한 인덱스 코드들을 대상으로 선택된 어느 하나의 인덱스 코드의 성공 전송량의 총합과 설정된 최적 인덱스 코드의 성공 전송량의 총합을 비교하여 상기 최적 인덱스 코드를 갱신하는 것
을 특징으로 하는 인덱스 부호화 장치.
10. The method of claim 9,
Wherein the optimal index code determination unit comprises:
Comparing the sum of the successive transmission quantities of the determined index codes with the successive transmission amounts of the selected other index codes, setting an index code having a larger sum of success transmission amounts as the optimal index code, The optimum index code is updated by comparing the sum of the successive transmission amounts of any one of the index codes selected for the index codes excluding the determined index code and the selected other index codes and the success transmission amount of the set optimal index code that
And an index encoding unit for decoding the encoded data.
제10항에 있어서,
상기 전송 제어부는,
갱신된 상기 최적 인덱스 코드에 해당하는 적어도 하나의 사용자 단말을 대상으로 파일을 전송하는 것
을 특징으로 하는 인덱스 부호화 장치.
11. The method of claim 10,
The transmission control unit,
Transmitting a file to at least one user terminal corresponding to the updated optimal index code
And an index encoding unit for decoding the encoded data.
제9항에 있어서,
상기 최적 인덱스 코드 결정부는,
상기 인덱스 코드 집합에 포함된 모든 인덱스 코드들을 대상으로, 브루트-포스(Brute-Force) 알고리즘에 기초하여 성공 전송량의 총합이 최대인 인덱스 코드를 상기 최적 인덱스 코드를 결정하는 것
을 특징으로 하는 인덱스 부호화 장치.
10. The method of claim 9,
Wherein the optimal index code determination unit comprises:
Determining the optimal index code as an index code having a maximum sum of success transmission amounts based on a Brute-Force algorithm for all the index codes included in the index code set,
And an index encoding unit for decoding the encoded data.
제9항에 있어서,
상기 최적 인덱스 코드는, 상기 인덱스 부호화 장치가 추정하고 있는 사용자 단말의 메모리 저장 정보와 해당 사용자 단말의 실제 메모리 정보 간의 상관성(correlation)에 기초하여 변경되는 것
을 특징으로 하는 인덱스 부호화 장치.
10. The method of claim 9,
The optimal index code is changed based on a correlation between memory storage information of the user terminal estimated by the index encoding device and actual memory information of the corresponding user terminal
And an index encoding unit for decoding the encoded data.
제13항에 있어서,
상기 전송 제어부는,
상기 상관성이 미리 정의된 제1 기준값 이하로 낮은 경우, 상기 최적 인덱스 코드에 해당하는 적어도 하나의 사용자 단말을 대상으로, 해당 단말에서 요청한 파일을 유니캐스트(unicast)로 전송하는 것
을 특징으로 하는 인덱스 부호화 장치.
14. The method of claim 13,
The transmission control unit,
When the correlation is lower than a predefined first reference value, transmitting a file requested by the corresponding terminal to unicast for at least one user terminal corresponding to the optimal index code
And an index encoding unit for decoding the encoded data.
제13항에 있어서,
상기 전송 제어부는,
상기 상관성이 미리 정의된 제2 기준값 이상으로 높은 경우, 상기 최적 인덱스 코드에 해당하는 적어도 하나의 사용자 단말을 대상으로, 해당 단말에서 요청한 파일을 멀티캐스트(multicast)로 전송하는 것
을 특징으로 하는 인덱스 부호화 장치.
14. The method of claim 13,
The transmission control unit,
When the correlation is higher than a predetermined second reference value, multicast transmission of a file requested by the corresponding terminal to at least one user terminal corresponding to the optimal index code
And an index encoding unit for decoding the encoded data.
제13항에 있어서,
상기 상관성은 상기 인덱스 부호화 장치와 사용자 단말 간의 주변 환경 정보 및 시간에 따라 변화하는 것
을 특징으로 하는 인덱스 부호화 장치.
14. The method of claim 13,
The correlation may vary depending on the surrounding environment information between the index encoding apparatus and the user terminal and the time
And an index encoding unit for decoding the encoded data.
KR1020170165330A 2017-12-04 2017-12-04 Method and apparatus for coding index in user equipment with limited memori state information and wireless communication method KR102043510B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020170165330A KR102043510B1 (en) 2017-12-04 2017-12-04 Method and apparatus for coding index in user equipment with limited memori state information and wireless communication method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170165330A KR102043510B1 (en) 2017-12-04 2017-12-04 Method and apparatus for coding index in user equipment with limited memori state information and wireless communication method

Publications (2)

Publication Number Publication Date
KR20190065803A true KR20190065803A (en) 2019-06-12
KR102043510B1 KR102043510B1 (en) 2019-12-02

Family

ID=66846127

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170165330A KR102043510B1 (en) 2017-12-04 2017-12-04 Method and apparatus for coding index in user equipment with limited memori state information and wireless communication method

Country Status (1)

Country Link
KR (1) KR102043510B1 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140127007A (en) * 2013-04-24 2014-11-03 삼성전자주식회사 Method and apparatus for managing packet in a system surpporting a network coding scheme

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140127007A (en) * 2013-04-24 2014-11-03 삼성전자주식회사 Method and apparatus for managing packet in a system surpporting a network coding scheme

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
[1] M. A. Maddah-Ali, and U. Niesen, Fundamental limits of caching. IEEE Transactions on Information Theory Vol.60, pg. 2856- 2867 (May. 2014).
[2] U.S. Appl. No. US9535837 B2, Decentralized online cache management for digital content conveyed over shared network connections based on cache fullness and cache eviction policies, filed 2013.11.19.
[3] K. R. Son, J. H. Lee and W. Choi, User-cache Aided Transmission with Index Coding for Minimum Outage Probability in K-User Downlink channels. IEEE Transactions on Wireless Communications. Submitted.

Also Published As

Publication number Publication date
KR102043510B1 (en) 2019-12-02

Similar Documents

Publication Publication Date Title
Peng et al. Backhaul-aware caching placement for wireless networks
CN113612585B (en) System and method for optimizing the load of multipath data transmission
KR101952490B1 (en) Devices and methods for facilitating non-orthogonal wireless communications
KR102173084B1 (en) Method and apparatus for transmitting and receiving data packets in a wireless communication system
JP2020519161A (en) Data transmission method, base station, and terminal device
CN113114410A (en) Data processing method, configuration method and communication equipment
CN113055285B (en) Self-adaptive data transmission method based on MPTCP and network coding
WO2008079222A1 (en) A method and apparatus for opportunistic multicasting with coded scheduling in wireless networks
WO2014056131A1 (en) Data transmission control method and device
KR20150045346A (en) Apparatus and method for transmitting and receiving multimedia data in mobile communication system
JP2010514336A (en) Method and configuration for mapping symbols in a communication system using OFDM technology
US10523790B2 (en) System and method of header compression for online network codes
CN109565353B (en) Data processing method, terminal equipment and network equipment
US20100103882A1 (en) Early termination of low data rate traffic in a wireless network
US20230422093A1 (en) Communication Method and Communication Participant
CN116405741B (en) Video transmission scheduling method, device and medium based on multiple transmission paths
KR102043510B1 (en) Method and apparatus for coding index in user equipment with limited memori state information and wireless communication method
CN113115233B (en) Opportunistic NOMA (non-access-point) cooperative multicast relay selection method
US20050195849A1 (en) Early termination of low data rate traffic in a wireless network
CN113037356B (en) HARQ method for adaptively adjusting code block group size in satellite communication system
CN110798295A (en) Method and device for determining physical shared channel transmission data
CN109005011B (en) Data transmission method and system for underwater acoustic network and readable storage medium
Mahmoodi et al. Low-Complexity Multi-Antenna Coded Caching Using Location-Aware Placement Delivery Arrays
EP3753229B1 (en) Devices and methods for coded caching
CN108322284B (en) Coding block sending method, data receiving method, access network equipment and terminal equipment

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant