KR101076473B1 - Apparatus and method for managing multimedia data based on time constraint multiple access technique - Google Patents

Apparatus and method for managing multimedia data based on time constraint multiple access technique Download PDF

Info

Publication number
KR101076473B1
KR101076473B1 KR1020100117708A KR20100117708A KR101076473B1 KR 101076473 B1 KR101076473 B1 KR 101076473B1 KR 1020100117708 A KR1020100117708 A KR 1020100117708A KR 20100117708 A KR20100117708 A KR 20100117708A KR 101076473 B1 KR101076473 B1 KR 101076473B1
Authority
KR
South Korea
Prior art keywords
multimedia data
requested
main memory
segment
data
Prior art date
Application number
KR1020100117708A
Other languages
Korean (ko)
Inventor
이준표
Original Assignee
엘아이지넥스원 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 엘아이지넥스원 주식회사 filed Critical 엘아이지넥스원 주식회사
Priority to KR1020100117708A priority Critical patent/KR101076473B1/en
Application granted granted Critical
Publication of KR101076473B1 publication Critical patent/KR101076473B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

멀티미디어 데이터를 요청하는 복수의 클라이언트 및 요청된 멀티미디어 데이터를 제공하는 중앙 서버와 유무선 네트워크로 연결된 프록시 서버에서 구현된 멀티미디어 데이터를 관리하는 장치에 있어서, 복수의 클라이언트와의 데이터 요청 세션을 관리하는 세션 관리부; 복수의 클라이언트 중 제 1 클라이언트로부터 요청된 멀티미디어 데이터를 프록시 서버의 주기억장치에 적재하는 주기억장치 관리부; 및 복수의 클라이언트 중 제 2 클라이언트와의 세션이 설정되고 주기억장치에 적재되어 있는 멀티미디어 데이터의 요청이 있는 경우에 요청된 멀티미디어 데이터를 저장장치에 저장하는 데이터 저장 관리부를 포함하는 것을 특징으로 하는 멀티미디어 데이터 관리 장치가 개시된다.A device for managing multimedia data implemented in a plurality of clients requesting multimedia data and a central server providing the requested multimedia data and a proxy server connected to a wired / wireless network, the apparatus comprising: a session manager configured to manage data request sessions with a plurality of clients; ; A main memory manager for loading multimedia data requested from a first client of the plurality of clients into a main memory of the proxy server; And a data storage management unit configured to store the requested multimedia data in a storage device when a session with a second client of the plurality of clients is established and the multimedia data loaded in the main memory is requested. The management apparatus is disclosed.

Description

시간 제약 다중 요청 기법 기반의 멀티미디어 데이터 관리 장치 및 방법{Apparatus and method for managing multimedia data based on time constraint multiple access technique}Apparatus and method for managing multimedia data based on time constraint multiple access technique

본 발명은 멀티미디어 데이터 관리에 관한 것으로서, 구체적으로 프록시 서버의 저장장치에서 멀티미디어 데이터를 효율적으로 관리하기 위한 관리 장치, 관리 방법 및 기록매체에 관한 것이다.The present invention relates to multimedia data management, and more particularly, to a management apparatus, a management method, and a recording medium for efficiently managing multimedia data in a storage device of a proxy server.

통신 기술의 급속한 발전에 힘입어 네트워크를 통한 실시간 비디오 서비스가 보편화 되고 있다. 현재 인터넷 상에서 이루어지는 비디오 데이터의 활용에 있어 가장 중요한 점은 그 품질을 보장할 수 있어야 한다는 것이다. 현재의 비디오 전송은 손실과 지연에 상당히 민감하게 반응하여 이를 기반으로 한 여러 분야의 발전에 커다란 문제점으로 지적되고 있다. Due to the rapid development of communication technology, real-time video service through the network is becoming common. The most important thing about the use of video data on the Internet today is to be able to guarantee its quality. Current video transmissions are very sensitive to losses and delays, and have been pointed out as a major problem in the development of various fields based on them.

이와 같은 문제를 해결하기 위해 사용자들과 근거리에 위치한 비디오 프록시 서버를 활용하여 인터넷 VOD(Video-On-Demand) 서비스의 품질을 크게 개선시킬 수 있다. To solve this problem, the quality of internet video-on-demand (VOD) services can be greatly improved by utilizing video proxy servers located near users.

사용자들과 근거리에 위치하는 비디오 프록시 서버(video proxy server)는 사용자들에 의해 요청되는 대용량의 비디오 데이터들을 복잡한 인터넷의 중간 경로를 거치지 않고 다수의 사용자들에게 직접 전달함으로써 데이터의 손실과 초기 전송 지연(initial latency)문제를 해결한다. Locally located video proxy servers and users can deliver large amounts of video data requested by users directly to multiple users without having to go through a complex Internet path. (initial latency) solve the problem.

그러나 비디오 프록시 서버는 주 서버 또는 중앙 서버(central video server)의 저장 공간에 비해 비교적 제한된 용량을 가진다는 단점이 있다. 따라서 앞으로 사용자에 의해 계속 요청될 비디오 데이터만을 저장하도록 하는 방법이 필요하다. However, the video proxy server has a disadvantage in that it has a relatively limited capacity compared with the storage space of the main server or the central video server. Therefore, there is a need for a method of storing only video data that will be continuously requested by the user in the future.

이를 위한 연구에서 사용자가 주로 비디오의 시작 부분을 요청하는 접근 패턴을 가지며 비교적 짧은 지속시간을 가진다는 점을 활용하여 사용자가 요청한 비디오의 시작 부분인 프리픽스(prefix)만을 비디오 프록시 서버에 저장하는 프리픽스 저장(prefix caching) 기법이 제안되었다. In this study, the prefix storage that stores only the prefix, which is the beginning of the video requested by the user, in the video proxy server, taking advantage of the fact that the user has an access pattern that requests the beginning of the video and has a relatively short duration. A prefix caching technique has been proposed.

프리픽스 저장 기법은 사용자가 비디오를 요청했을 때, 비디오 프록시 서버에 저장되어 있는 해당 비디오의 전반부인 프리픽스를 사용자에게 전송하여 초기 지연시간을 최소화하고, 이와 동시에 원거리에 위치한 중앙 서버로부터 후반부인 서픽스(suffix)를 전송받는 기법이다. When a user requests a video, the prefix storage method sends the prefix, which is the first part of the video stored in the video proxy server, to the user to minimize initial delay, and at the same time, the latter part of the suffix (from the remote central server) suffix) is a technique to receive.

이와 같은 프리픽스 저장 기법을 기반으로 한 최근의 연구에서 사용자들에 의해 요청된 데이터의 전체 크기에 따라 정해진 인기도를 이용하는 PPC(Popularity- based Prefix Caching) 방법이 제안되었다. In a recent study based on such a prefix storage scheme, a PPC (Popularity-based Prefix Caching) method using a popularity determined according to the total size of data requested by users has been proposed.

제안된 PPC 방법은 인기도에 따라서 비디오 프록시 서버에 저장될 비디오 데이터의 크기를 결정하고 해당 크기의 앞부분 비디오 데이터를 우선하여 저장한다. The proposed PPC method determines the size of video data to be stored in the video proxy server according to the popularity and stores the first video data of the corresponding size first.

그러나 이 방법은 접근 최근성(access recentness)을 고려하지 않기 때문에 과거에 자주 요청되었던 비디오들로 인해 새롭게 요청되고 있는 비디오 데이터가 비디오 프록시 서버에 저장되지 못하는 문제점이 발생한다. However, since this method does not consider access recentness, the video data that is newly requested may not be stored in the video proxy server because of the videos that have been frequently requested in the past.

또 다른 연구에서 미리 설정된 횟수의 사용자 요청 시간 정보를 활용하는 LRU-k 알고리즘과 사용자의 요청에 따른 우선순위를 고려하여 비디오 프록시 서버에 비디오의 저장과 삭제를 결정하는 Greedy-Dual 알고리즘이 제안되었다. In another study, an LRU-k algorithm using a predetermined number of user request time information and a Greedy-Dual algorithm which decides to store and delete a video in a video proxy server in consideration of the user's request priority are proposed.

그러나 이러한 방법들은 비디오 데이터의 사용자 요청과 관련된 정보들을 충분히 고려하고 있지 않다. 특히 사용자가 요청한 모든 비디오 데이터들이 비디오 프록시 서버에 저장되므로 한번 저장된 후 계속 요청되지 못하는 비디오 데이터 역시 비디오 프록시 서버에 저장되게 된다. 이는 곧 새로운 비디오 데이터의 저장을 위한 공간 부족 시에 과도한 비디오 데이터의 삭제가 수행되는 원인이 된다. However, these methods do not fully consider the information related to the user request of the video data. In particular, since all video data requested by the user are stored in the video proxy server, video data that cannot be requested after being stored once is also stored in the video proxy server. This immediately causes excessive deletion of video data when there is insufficient space for storing new video data.

본 발명은 원격지에 위치하는 중앙 서버에 비해 상대적으로 제한된 저장 공간을 가지는 비디오 프록시 서버에서 사용자들이 계속적으로 요청하게 되는 비디오 데이터만을 선별하여 저장하는 관리 기법을 제안하는데 목적이 있다.An object of the present invention is to propose a management scheme for selecting and storing only video data that users continuously request in a video proxy server having a relatively limited storage space as compared to a central server located remotely.

상기 목적을 달성하기 위하여, 본 발명의 일 실시예는 멀티미디어 데이터를 요청하는 복수의 클라이언트 및 요청된 멀티미디어 데이터를 제공하는 중앙 서버와 유무선 네트워크로 연결된 프록시 서버에서 구현된 멀티미디어 데이터를 관리하는 장치에 있어서, 상기 복수의 클라이언트와의 데이터 요청 세션을 관리하는 세션 관리부; 상기 복수의 클라이언트 중 제 1 클라이언트로부터 요청된 멀티미디어 데이터를 상기 프록시 서버의 주기억장치에 적재하는 주기억장치 관리부; 및 상기 복수의 클라이언트 중 제 2 클라이언트와의 세션이 설정되고 상기 주기억장치에 적재되어 있는 멀티미디어 데이터의 요청이 있는 경우에 상기 요청된 멀티미디어 데이터를 저장장치에 저장하는 데이터 저장 관리부를 포함하는 것을 특징으로 하는 멀티미디어 데이터 관리 장치를 제공한다.In order to achieve the above object, an embodiment of the present invention provides a device for managing multimedia data implemented in a plurality of clients requesting multimedia data and a central server providing the requested multimedia data and a proxy server connected to a wired or wireless network. A session manager configured to manage a data request session with the plurality of clients; A main memory manager for loading multimedia data requested from a first client of the plurality of clients into a main memory of the proxy server; And a data storage management unit configured to store the requested multimedia data in a storage device when a session with a second client of the plurality of clients is established and the multimedia data loaded in the main memory device is requested. A multimedia data management apparatus is provided.

상기 목적을 달성하기 위하여, 본 발명의 일 실시예는 멀티미디어 데이터를 요청하는 복수의 클라이언트 및 요청된 멀티미디어 데이터를 제공하는 중앙 서버와 유무선 네트워크로 연결된 프록시 서버에서 동작하는 멀티미디어 데이터의 관리 방법에 있어서, 상기 복수의 클라이언트와의 데이터 요청 세션을 관리하는 단계; 상기 복수의 클라이언트 중 제 1 클라이언트로부터 요청된 멀티미디어 데이터를 상기 프록시 서버의 주기억장치에 적재하는 단계; 및 상기 복수의 클라이언트 중 제 2 클라이언트와의 세션이 설정되고 상기 주기억장치에 적재되어 있는 멀티미디어 데이터의 요청이 있는 경우에 상기 요청된 멀티미디어 데이터를 저장장치에 저장하는 단계를 포함하는 것을 특징으로 하는 멀티미디어 데이터 관리 방법을 제공한다.In order to achieve the above object, an embodiment of the present invention provides a method for managing multimedia data operating in a proxy server connected to a wired or wireless network with a plurality of clients requesting multimedia data and a central server providing the requested multimedia data. Managing a data request session with the plurality of clients; Loading multimedia data requested from a first client of the plurality of clients into a main memory of the proxy server; And storing the requested multimedia data in a storage device when a session with a second client of the plurality of clients is established and the multimedia data loaded in the main memory is requested. Provide a data management method.

상기 목적을 달성하기 위하여, 본 발명의 일 실시예는 멀티미디어 데이터를 요청하는 복수의 클라이언트 및 요청된 멀티미디어 데이터를 제공하는 중앙 서버와 유무선 네트워크로 연결된 프록시 서버에서 동작하는 멀티미디어 데이터의 관리 방법을 실행시키기 위한 프로그램이 기록된 기록 매체에 있어서, 상기 복수의 클라이언트와의 데이터 요청 세션을 관리하는 기능; 상기 복수의 클라이언트 중 제 1 클라이언트로부터 요청된 멀티미디어 데이터를 상기 프록시 서버의 주기억장치에 적재하는 기능; 및 상기 복수의 클라이언트 중 제 2 클라이언트와의 세션이 설정되고 상기 주기억장치에 적재되어 있는 멀티미디어 데이터의 요청이 있는 경우에 상기 요청된 멀티미디어 데이터를 저장장치에 저장하는 기능을 구현하는 프로그램이 기록된 컴퓨터로 읽을 수 있는 기록 매체를 제공한다.In order to achieve the above object, an embodiment of the present invention is to execute a method for managing multimedia data operating in a proxy server connected to a wired or wireless network with a plurality of clients requesting multimedia data and a central server providing the requested multimedia data. A recording medium having recorded thereon a program, comprising: a function of managing a data request session with the plurality of clients; Loading multimedia data requested from a first client of the plurality of clients into a main memory of the proxy server; And a program for implementing a function of storing the requested multimedia data in a storage device when a session with a second client of the plurality of clients is established and the multimedia data loaded in the main memory is requested. It provides a recording medium that can be read by.

상기 목적을 달성하기 위하여, 본 발명의 일 실시예는 멀티미디어 데이터를 요청하는 복수의 클라이언트 및 요청된 멀티미디어 데이터를 제공하는 중앙 서버와 유무선 네트워크로 연결된 프록시 서버에서 구현된 멀티미디어 데이터를 관리하는 장치에 있어서, 상기 복수의 클라이언트로부터 제 1 요청에 해당하는 멀티미디어 데이터를 임시적으로 주기억장치에 적재하는 주기억장치 관리부: 및 상기 복수의 클라이언트로부터 상기 주기억장치에 적재된 멀티미디어 데이터에 대한 제 2 요청이 수신되었는지를 나타내는 접근 최근성(access recentness)에 따라 상기 주기억장치에 적재되어 있는 멀티미디어 데이터를 상기 프록시 서버의 저장장치에 저장하는 데이터 저장 관리부를 포함하며, 상기 프록시 서버의 저장장치의 저장크기는 상기 중앙 서버의 저장장치에 비하여 상대적으로 작은 것을 특징으로 하는 멀티미디어 데이터 관리 장치를 제공한다.In order to achieve the above object, an embodiment of the present invention provides a device for managing multimedia data implemented in a plurality of clients requesting multimedia data and a central server providing the requested multimedia data and a proxy server connected to a wired or wireless network. A main memory manager for temporarily loading multimedia data corresponding to a first request from the plurality of clients into the main memory; and indicating whether a second request for the multimedia data loaded into the main memory is received from the plurality of clients. And a data storage management unit for storing the multimedia data stored in the main memory in the storage of the proxy server according to access recentness, wherein the storage size of the storage of the proxy server is stored in the central server. Provides a multimedia data management unit to a relatively is smaller than the value.

본 발명에 의하면, 사용자가 요청한 비디오 데이터들 중 사용자에 의해 계속 요청될 데이터들만을 선별하여 비디오 프록시 서버의 저장 공간으로 이동시킨다. 따라서 사용자들은 비디오 프록시 서버에 저장되어있는 비디오들을 빈번하게 요청하게 되며, 비디오 프록시 서버는 해당 비디오 데이터를 사용자에게 신속하게 전송할 수 있게 됨으로써, 원거리에 위치한 중앙 서버로부터의 데이터 전송으로 인한 과도한 네트워크 트래픽이나 서비스 지연으로 인한 낮은 전송 품질의 문제점을 해결할 수 있다. According to the present invention, only data to be continuously requested by the user among the video data requested by the user are selected and moved to the storage space of the video proxy server. Therefore, users frequently request videos stored in the video proxy server, and the video proxy server can transmit the video data to the user quickly, so that excessive network traffic caused by data transmission from a remote central server The problem of low transmission quality due to service delay can be solved.

도 1은 중앙 서버에서 멀티미디어 데이터(ex. 비디오 데이터)를 복수 개의 세그먼트(segment) 단위로 분할하여 전송하는 피라미드식 미디어 분할 기법을 나타낸 데이터 구조이다.
도 2는 본 발명의 일 실시예에 따른 멀티미디어 데이터 관리 장치가 동작하는 VOD 시스템 구조를 나타낸 도면이다.
도 3은 본 발명의 일 실시예에 따른 멀티미디어 데이터 관리 장치가 단일 세션에서 동작하는 경우에 임시 저장되고 삭제되는 과정을 나타낸 도면이다.
도 4 및 도 5는 본 발명의 일 실시예에 따른 멀티미디어 데이터 관리 장치가 다중 세션에서 동작하는 경우에 임시 저장, 저장 및 삭제되는 과정을 나타낸 도면이다.
도 6은 본 발명의 일 실시예에 따른 멀티미디어 데이터 관리 장치에서 세그먼트 저장을 위해 세션을 유지하는 대기 시간을 나타낸 도면이다.
도 7은 본 발명의 일 실시예에 따른 멀티미디어 데이터 관리 장치의 구성 요소를 나타낸 기능 블록도이다.
도 8은 본 발명의 일 실시예에 따른 멀티미디어 데이터 관리 장치에서 가상 연결 기법을 이용하여 멀티미디어 데이터를 저장하는 과정을 나타낸 플로우 차트이다.
도 9는 본 발명의 일 실시예에 따른 멀티미디어 데이터 관리 장치에서 상대적으로 협소한 프록시 서버의 저장장치의 여유 공간을 확보하기 위하여 저장된 멀티미디어 데이터를 삭제하는 과정을 나타낸 플로우 차트이다.
FIG. 1 is a data structure illustrating a pyramidal media partitioning scheme in which a central server divides and transmits multimedia data (eg, video data) into units of a plurality of segments.
2 is a diagram illustrating a VOD system structure in which an apparatus for managing multimedia data according to an embodiment of the present invention operates.
3 is a diagram illustrating a process of temporarily storing and deleting a multimedia data management apparatus according to an embodiment of the present invention when operating in a single session.
4 and 5 are views illustrating a process of temporarily storing, storing and deleting when the multimedia data management apparatus operates in a multi-session according to an embodiment of the present invention.
6 is a diagram illustrating a waiting time for maintaining a session for storing segments in a multimedia data management apparatus according to an embodiment of the present invention.
7 is a functional block diagram illustrating components of a multimedia data management apparatus according to an embodiment of the present invention.
8 is a flowchart illustrating a process of storing multimedia data using a virtual connection technique in a multimedia data management apparatus according to an embodiment of the present invention.
9 is a flowchart illustrating a process of deleting stored multimedia data in order to secure a free space of a storage device of a relatively narrow proxy server in a multimedia data management apparatus according to an embodiment of the present invention.

이하, 본 발명의 일부 실시예들을 예시적인 도면을 통해 상세하게 설명한다. 각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.Hereinafter, some embodiments of the present invention will be described in detail through exemplary drawings. In adding reference numerals to the components of each drawing, it should be noted that the same reference numerals are used to refer to the same components as much as possible even if displayed on different drawings. In the following description of the present invention, a detailed description of known functions and configurations incorporated herein will be omitted when it may make the subject matter of the present invention rather unclear.

또한, 본 발명의 구성 요소를 설명하는 데 있어서, 제 1, 제 2, A, B, (a), (b) 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질이나 차례 또는 순서 등이 한정되지 않는다. 어떤 구성 요소가 다른 구성요소에 "연결", "결합" 또는 "접속"된다고 기재된 경우, 그 구성 요소는 그 다른 구성요소에 직접적으로 연결되거나 또는 접속될 수 있지만, 각 구성 요소 사이에 또 다른 구성 요소가 "연결", "결합" 또는 "접속"될 수도 있다고 이해되어야 할 것이다.In addition, in describing the component of this invention, terms, such as 1st, 2nd, A, B, (a), (b), can be used. These terms are only for distinguishing the components from other components, and the nature, order or order of the components are not limited by the terms. If a component is described as being "connected", "coupled" or "connected" to another component, that component may be directly connected to or connected to that other component, but there may be another configuration between each component. It is to be understood that the elements may be "connected", "coupled" or "connected".

본 발명에서는 사용자가 요청한 멀티미디어 데이터(예를 들어, 비디오 데이터)를 프록시 서버의 주기억장치(main memory)에 일단 적재(load)한 후 해당 멀티미디어 데이터가 설정된 시간 내에 지속적으로 요청되는 경우에 이를 프록시 서버의 저장장치에 저장(storing)하는 시간 제약 다중 요청 기법을 제안한다.In the present invention, if the multimedia data (eg, video data) requested by the user is loaded once into the main memory of the proxy server, the multimedia data is continuously requested in the set time. We propose a time-constrained multiple request scheme for storing data in storage.

본 발명은 비디오/오디오/텍스트 데이터 또는 그들의 조합된 데이터 등의 멀티미디어 데이터를 관리하는 장치 및 방법에 관한 것이나, 설명의 편의를 위하여 이하에서는 멀티미디어 데이터 중 "비디오 데이터"를 예로 들어 설명하기로 한다(예를 들어, 중앙 비디오 서버, 비디오 프록시 서버, 비디오 데이터 등).The present invention relates to an apparatus and method for managing multimedia data such as video / audio / text data or their combined data, but for convenience of description, the following description will be given using "video data" of multimedia data as an example ( For example, a central video server, video proxy server, video data, etc.).

도 1은 중앙 서버에서 비디오 데이터를 복수 개의 세그먼트(segment) 단위로 분할하여 전송하는 피라미드식 미디어 분할 기법을 나타낸 데이터 구조이다.FIG. 1 is a data structure illustrating a pyramid media segmentation technique in which video data is divided and transmitted in units of a plurality of segments in a central server.

본 발명이 제안하는 방법을 위해 도 1과 같이 중앙 서버에서 비디오 데이터를 여러 개의 세그먼트(segment) 단위로 분할하여 전송하는 피라미드식 미디어 분할(media segmentation) 기법이 사용된다. 여기서 피라미드 분할은 하나의 비디오를 seg.1(110) 내지 seg.4(140) 등의 여러 개의 세그먼트로 나누고 세그먼트의 번호(k)가 1~4로 증가함에 따라 세그먼트에 포함되는 블록의 수를 2k- 1(1,2,4,8,.. 등)으로 증가시키는 방법이다. 미디어 분할 기법을 사용하면 적은 비용으로 많은 데이터를 신속하게 삭제하거나 저장할 수 있으므로 초기 지연과 네트워크의 트래픽을 효과적으로 줄여 주는 장점이 있다. For the method proposed by the present invention, as shown in FIG. 1, a pyramid media segmentation technique is used in which video data is divided and transmitted by a central unit. Here, pyramid division divides one video into several segments such as seg.1 (110) to seg.4 (140), and the number of blocks included in the segment is increased as the number of segments (k) increases from 1 to 4. Increase to 2 k- 1 (1,2,4,8, .., etc.). The media segmentation technique can quickly delete or store a lot of data at a low cost, which effectively reduces initial delay and network traffic.

도 2는 본 발명의 일 실시예에 따른 멀티미디어 데이터 관리 장치가 동작하는 VOD 시스템 구조를 나타낸 도면이다.2 is a diagram illustrating a VOD system structure in which an apparatus for managing multimedia data according to an embodiment of the present invention operates.

도 2와 같이 비디오 프록시 서버(220)를 사용자(210)와의 사이에 근거리 통신망(240)에 위치시키고 이를 활용하여 중앙 서버(230)의 부하 감소와 초기 전송 지연 및 비디오 패킷 손실의 문제점을 해결할 수 있다. As shown in FIG. 2, the video proxy server 220 may be located in the local area network 240 between the user 210 and may be used to solve the problem of reducing the load of the central server 230, initial transmission delay, and video packet loss. have.

도 2의 중앙 서버(230) 또는 프록시 서버(220)는 하드웨어적으로는 통상적인 웹 서버(Web Server) 또는 왑 서버(WAP Server)와 동일한 구성을 하고 있다. 그러나, 소프트웨어적으로는 C, C++, Java, Visual Basic, Visual C 등 여하한 언어를 통하여 구현되어 여러 가지 기능을 하는 프로그램 모듈(Module)을 포함한다. The central server 230 or proxy server 220 of FIG. 2 has the same configuration as a conventional web server or web server. However, the software includes a program module implemented in any language such as C, C ++, Java, Visual Basic, Visual C and performing various functions.

전술한 서버는 일반적으로 인터넷과 같은 개방형 컴퓨터 네트워크를 통하여 불특정 다수의 클라이언트 및/또는 다른 서버와 연결되어 있고, 클라이언트 또는 다른 웹서버의 작업수행 요청을 접수하고 그에 대한 작업 결과를 도출하여 제공하는 컴퓨터 시스템 및 그를 위하여 설치되어 있는 컴퓨터 소프트웨어(서버 프로그램)를 뜻하는 것이다. 전술한 서버 프로그램 이외에도, 서버 상에서 동작하는 일련의 응용 프로그램(Application Program)과 경우에 따라서는 내부에 구축되어 있는 각종 데이터베이스(DB: Database)를 포함하는 넓은 개념으로 이해되어야 할 것이다. The above-mentioned server is generally connected to an unspecified number of clients and / or other servers through an open computer network such as the Internet, and is a computer that receives a task execution request from a client or another web server and derives and provides a work result thereof. It refers to a system and computer software (server program) installed therefor. In addition to the above-described server program, it should be understood as a broad concept including a series of application programs (Application Program) running on the server and, in some cases, various databases (DB) built therein.

전술한 서버는 일반적인 서버용 하드웨어에 도스(DOS), 윈도우(windows), 리눅스(Linux), 유닉스(UNIX), 매킨토시(Macintosh) 등의 운영체제에 따라 다양하게 제공되고 있는 서버 프로그램을 이용하여 구현될 수 있으며, 대표적인 것으로는 윈도우 환경에서 사용되는 웹사이트(Website), IIS(Internet Information Server)와 유닉스환경에서 사용되는 CERN, NCSA, APPACH 등이 이용될 수 있다. The server described above may be implemented by using server programs that are variously provided according to operating systems such as DOS, Windows, Linux, UNIX, Macintosh, and the like for general server hardware. For example, the websites used in the Windows environment, the Internet Information Server (IIS), and the CERN, NCSA, and APPACH used in the Unix environment may be used.

한편, 사용자 단말기(클라이언트, 210)은 개인 PC인 것이 일반적이지만, 유무선 기반의 네트워크(240, 250)에 연결되어 서버와 서버-클라이언트 통신이 가능하다면 그 어떠한 단말기도 가능하며, 스마트 폰, 노트북 컴퓨터, 이동통신 단말기, PDA 등 여하한 통신 컴퓨팅 장치를 모두 포함하는 넓은 개념이다.On the other hand, the user terminal (client, 210) is generally a personal PC, but any terminal is possible if the server and server-client communication is possible by connecting to the wired and wireless network (240, 250), smart phones, notebook computers It is a broad concept that includes all communication computing devices such as mobile communication terminals and PDAs.

네트워크(240, 250)는 서버와 단말기들을 연결하는 망(Network)으로서 LAN(Local Area Network), WAN(Wide Area Network)등의 폐쇄형 네트워크일 수도 있으나, 인터넷(Internet)과 같은 개방형일 수도 있다. 인터넷은 TCP/IP 프로토콜 및 그 상위계층에 존재하는 여러 서비스, 즉 HTTP(HyperText Transfer Protocol), Telnet, FTP(File Transfer Protocol), DNS(Domain Name System), SMTP(Simple Mail Transfer Protocol), SNMP(Simple Network Management Protocol), NFS(Network File Service), NIS(Network Information Service)를 제공하는 전 세계적인 개방형 컴퓨터 네트워크 구조를 의미한다. 또한, 사용자 단말기(210)가 이동통신 단말기이거나 스마트 폰 등인 경우, 네트워크(240, 250)는 이동통신망을 포함할 수도 있다. The networks 240 and 250 may be closed networks such as a local area network (LAN) and a wide area network (WAN) as a network connecting servers and terminals, but may also be open types such as the Internet. . The Internet has many services in the TCP / IP protocol and its upper layers: HyperText Transfer Protocol (HTTP), Telnet, File Transfer Protocol (FTP), Domain Name System (DNS), Simple Mail Transfer Protocol (SMTP), and SNMP ( The global open computer network architecture that provides the Simple Network Management Protocol (NFS), Network File Service (NFS), and Network Information Service (NIS). In addition, when the user terminal 210 is a mobile communication terminal or a smart phone, the networks 240 and 250 may include a mobile communication network.

한편, 도 2에서 비디오 프록시 서버(220)의 저장 공간은 원격지의 중앙 서버(230)에 비해 상대적으로 작은 저장 공간을 가지므로 비디오 프록시 서버(220)는 사용자(210)에 의해 빈번하게 요청될 것으로 판단된 비디오만을 선별하여 저장장치에 저장하고 이를 사용자(210)에게 전송해야 할 필요가 있다. 그러나 시간에 따른 사용자의 비디오 요청 패턴이 변화함에 따라서 지속적으로 요청될 것으로 판단되어 비디오 프록시 서버에 저장되어있는 비디오가 사용자에 의해 더 이상 요청되지 않아 삭제될 필요성이 발생하게 되며, 이때 비디오 프록시 서버의 효율적인 저장 공간 관리가 요구된다. Meanwhile, in FIG. 2, since the storage space of the video proxy server 220 has a storage space relatively smaller than that of the remote central server 230, the video proxy server 220 will be frequently requested by the user 210. Only the determined video needs to be sorted and stored in the storage device and transmitted to the user 210. However, as the video request pattern of the user changes over time, it is determined that the request will be made continuously. Therefore, the video stored in the video proxy server is no longer requested by the user, which causes the necessity of deleting the video. Efficient storage space management is required.

이를 위해 본 발명에서는 새로운 비디오를 비디오 프록시 서버의 저장장치에 효율적으로 저장하고 기존에 저장된 비디오를 선별하여 제거함으로써 여유 공간을 확보하는 방법을 제안한다. 비디오의 효율적인 저장과 전송을 위해 본 제안에서는 하나의 비디오를 여러 개의 세그먼트로 구성하는 미디어 분할 기법을 활용한다. 세그먼트의 분할은 지수적으로 증가하는 방법(2k-1)을 고려한다. 또한 사용자의 비디오 요청 시에 비디오의 전반부인 프리픽스(prefix)를 저장장치에 저장하는 프리픽스 저장 기법을 이용한다.To this end, the present invention proposes a method for securing a free space by efficiently storing a new video in a storage device of a video proxy server and selecting and removing existing stored video. For efficient storage and transmission of video, this proposal utilizes a media segmentation technique that consists of one video into several segments. Segmentation of the segment considers an exponentially increasing method (2 k-1 ). In addition, a prefix storing technique is used to store a prefix, which is the first half of the video, in a storage device when a user requests a video.

본 발명에서 제안하는 시간 제약 다중 요청 기법은 사용자에 의해 빈번하게 요청될 것이라고 예측된 비디오의 세그먼트만을 선별적으로 저장장치에 저장하는 방법이다. The time-constrained multiple request scheme proposed by the present invention is a method of selectively storing only segments of video predicted to be frequently requested by a user in a storage device.

이를 위해 비디오 프록시 서버는 사용자가 요청한 비디오의 세그먼트들을 사용자 요청이 중단될 때까지 주기억장치에 유지시키며 이후의 사용자가 해당 세그먼트를 요청한 경우에 저장장치에 저장한다. To this end, the video proxy server maintains segments of the video requested by the user in the main memory until the user request is interrupted, and stores them in the storage when the user requests the segment later.

도 3은 본 발명의 일 실시예에 따른 멀티미디어 데이터 관리 장치가 단일 세션에서 동작하는 경우에 임시 저장되고 삭제되는 과정을 나타낸 도면이다.3 is a diagram illustrating a process of temporarily storing and deleting a multimedia data management apparatus according to an embodiment of the present invention when operating in a single session.

도 3(a)와 같이 사용자는 관심 비디오에 대해 세션(session)을 설정하고 세그먼트들을 요청한다(request 1). 비디오 프록시 서버는 사용자가 요청한 세그먼트를 주기억장치에 유지시키고(temporary storing, 320), 미리 결정된 크기의 프리픽스(prefix, 310)에 해당하는 세그먼트는 저장장치에 저장한다. As shown in FIG. 3A, the user establishes a session for the video of interest and requests segments (request 1). The video proxy server maintains the segment requested by the user in the main memory (temporary storing) 320 and stores the segment corresponding to the prefix 310 of a predetermined size in the storage.

프리픽스의 크기를 결정하기 위해 구분점(CP: Cut-off Point) 세그먼트를 선정하는 아래 (수학식1)을 활용한다. 선정된 세그먼트 이전의 세그먼트는 프리픽스로 하고 이후의 세그먼트들을 서픽스로 한다.Use Equation 1 below to select a cut-off point (CP) segment to determine the size of the prefix. Segments before the selected segment are prefixed and subsequent segments are suffixed.

Figure 112010076963815-pat00001
Figure 112010076963815-pat00001

여기서, CPi는 임의의 비디오 i의 구분점이며 c는 해당 비디오를 요청한 사용자들의 총 수이다. 또한 AT(i,j)는 비디오 i가 사용자 j에 의한 요청 지속 시간이며 Popi는 비디오 i가 요청된 총 수이다.Here, CPi is a bullet point of any video i and c is the total number of users who requested the video. AT (i, j) is also the video i is the request duration by user j and Popi is the total number of requests for video i.

도 3(b)와 같이 첫 번째 요청의 세션(request 1)이 중단되기 전에 해당 비디오에 대한 새로운 세션이 설정되지 않는다면 주기억장치에 적재되어 있는 모든 세그먼트(330)는 삭제(소거)된다. If a new session for the video is not established before the first request session (request 1) is interrupted as shown in FIG. 3 (b), all segments 330 loaded in the main memory are deleted (erased).

도 4 및 도 5는 본 발명의 일 실시예에 따른 멀티미디어 데이터 관리 장치가 다중 세션에서 동작하는 경우에 임시 저장, 저장 및 삭제되는 과정을 나타낸 도면이다.4 and 5 are views illustrating a process of temporarily storing, storing and deleting when the multimedia data management apparatus operates in a multi-session according to an embodiment of the present invention.

도 4(a)를 참고하면, 만일 새로운 세션이 설정되고(request 2) 일시적으로 주기억장치에 적재되어 있는 세그먼트(420)를 요청하게 되면, 도 4(b)와 같이 비디오 프록시 서버는 해당 세그먼트를 저장장치에 저장한다(430). 그러나 사용자에 의해 요청되지 않을 경우에는 도 4(c)와 같이 해당 세그먼트는 삭제된다(440). Referring to FIG. 4 (a), if a new session is established (request 2) and a segment 420 is temporarily requested to be loaded into the main memory, the video proxy server as shown in FIG. Store in the storage device (430). However, if not requested by the user, the corresponding segment is deleted as shown in FIG. 4 (c) (440).

도 5(a)를 참고하면, 일시적으로 주기억장치에 적재되어있는 비디오 세그먼트가 연결된 세션에 의해 모두 요청된 경우 비디오 프록시 서버는 해당 세그먼트들을 저장장치에 저장하고(520), 도 5(b)와 같이 다른 세션 설정이 없이 두 번째 요청의 세션(request 2)이 종료되면 임시 저장되어 있던 세그먼트들은 삭제된다(540). 한편, 도 5(c)를 참고하면 두 번째 세션에서(request 2) 요청된 세그먼트는 일시적으로 주기억장치에 적재하고 사용자의 요청(request 3)을 기다린다(550).Referring to FIG. 5 (a), when all video segments temporarily loaded in the main memory are requested by the connected session, the video proxy server stores the segments in the storage device (520) and FIG. 5 (b). When the session (request 2) of the second request ends without another session setup, the segments that were temporarily stored are deleted (540). Meanwhile, referring to FIG. 5C, the requested segment in the second session (request 2) is temporarily loaded into the main memory and waits for the user's request (request 3) (550).

도 6은 본 발명의 일 실시예에 따른 멀티미디어 데이터 관리 장치에서 세그먼트 저장을 위해 세션을 유지하는 대기 시간을 나타낸 도면이다.6 is a diagram illustrating a waiting time for maintaining a session for storing segments in a multimedia data management apparatus according to an embodiment of the present invention.

이상에서 제안한 시간 제약 다중 요청 기법은 임의의 비디오에 대해 첫 번째 요청 세션이 중단되기 전에 새로운 세션이 설정되어야만 해당 비디오의 세그먼트를 저장하는 것이 가능하였다. (즉, 도 6(a)의 610 참고)In the time-constrained multi-request scheme proposed above, a segment of a video can be stored only when a new session is established before the first request session is interrupted. (Ie, see 610 of FIG. 6 (a)).

만일 임의의 비디오에 대해 사용자의 요청이 감소하여 첫 번째 요청 세션이 중단되기 전에 새로운 세션이 설정되지 않는다면 해당 비디오는 어떠한 세그먼트도 저장되지 못한다. 따라서 본 발명의 또 다른 제안에서는 사용자의 요청 패턴을 고려하여 계산된 시간간격 동안, 중단된 세션을 유지시키는 가상 연결(virtual bridge) 기법을 제안한다. If a user's request for any video is reduced and a new session is not established before the first request session is aborted then that video will not be stored in any segment. Therefore, another proposal of the present invention proposes a virtual bridge scheme for maintaining a suspended session for a time interval calculated in consideration of a user's request pattern.

본 발명의 일 실시예에서의 가상 연결에서 일정 시간동안 중단된 세션을 유지시키기 위해서, 사용자에 의해 요청된 세그먼트에 대하여 아래 (수학식2)를 이용한 대기시간(waiting time) Ti(k)를 측정한다. (즉, 도 6(b)의 620 참고) In order to maintain a suspended session for a certain time in a virtual connection in an embodiment of the present invention, the waiting time Ti (k) is measured using the following Equation 2 for the segment requested by the user. do. (I.e. see 620 of FIG. 6 (b))

이전의 대기시간 동안에 주기억장치에 저장되어 있는 세그먼트에 대하여 사용자의 요청이 있었다면 해당 세그먼트는 비디오 프록시 서버의 저장장치로 이동될 것이나 이전의 대기시간 동안에 요청되지 않았다면 주기억장치에서 삭제된다.If the user requested a segment stored in the main memory during the previous waiting time, the segment will be moved to the storage of the video proxy server, but if not requested during the previous waiting time, the segment will be deleted from the main memory.

Figure 112010076963815-pat00002
Figure 112010076963815-pat00002

여기서 Pi(k)는 임의의 비디오 i의 세그먼트 k가 가지는 요청 확률이며, 이는 임의의 비디오 i의 세그먼트 k가 요청된 횟수를 해당 비디오의 모든 세그먼트들이 요청된 횟수로 나눈 값이다. 또한 n은 주기억장치에 존재하는 비디오들의 개수이며 αi(1)은 임의의 비디오 i의 첫 번째 세그먼트가 가장 최근에 요청된 시간과 해당 시간 이전에 요청된 시간 사이의 간격이다.Pi (k) is a request probability of segment k of any video i, which is the number of times segment k of any video i is requested divided by the number of times all segments of the video are requested. N is also the number of videos present in the main memory and α i (1) is the interval between the most recently requested time of the first segment of any video i and the time requested before that time.

도 7은 본 발명의 일 실시예에 따른 멀티미디어 데이터 관리 장치(700)의 구성 요소를 나타낸 기능 블록도이다.7 is a functional block diagram showing the components of the multimedia data management apparatus 700 according to an embodiment of the present invention.

도 7을 참고하면, 멀티미디어 데이터 관리 장치(700)는 클라이언트(760)와의 데이터 요청 세션을 관리하는 세션 관리부(710), 클라이언트(760)로부터 요청된 비디오 데이터를 프록시 서버의 주기억장치에 적재하는 주기억장치 관리부(720), 클라이언트(760)와의 세션이 설정되고 주기억장치에 적재되어 있는 비디오 데이터의 요청이 있는 경우에 요청된 비디오 데이터를 저장장치(770)에 저장하는 데이터 저장 관리부(730)를 포함한다.Referring to FIG. 7, the multimedia data management apparatus 700 may include a session manager 710 managing a data request session with a client 760, and a main memory for loading video data requested from the client 760 into a main memory of a proxy server. The device manager 720 includes a data storage manager 730 for storing the requested video data in the storage device 770 when a session with the client 760 is established and the video data loaded in the main memory is requested. do.

한편 주기억장치 관리부(720)는 클라이언트(760)의 세션이 중단된 이후에도 클라이언트의 요청 패턴에 기초하여 소정의 시간동안 기존의 세션을 가상으로 유지하는 가상 연결부(721)를 더 포함할 수 있다.Meanwhile, the main memory manager 720 may further include a virtual connector 721 that virtually maintains an existing session for a predetermined time based on the request pattern of the client even after the session of the client 760 is stopped.

또한 멀티미디어 데이터 관리 장치(700)는 클라이언트(760)로부터 요청된 비디오 데이터를 클라이언트(760)로 전송하는 파일 전송부(750)를 더 포함할 수 있으며, 프록시 서버의 저장장치(770)의 저장공간이 소정의 임계치보다 작은 경우에 저장된 비디오 데이터를 삭제하는 데이터 삭제 관리부(740)를 더 포함할 수 있다.In addition, the multimedia data management apparatus 700 may further include a file transmitter 750 for transmitting the video data requested from the client 760 to the client 760, and the storage space of the storage device 770 of the proxy server. It may further include a data deletion management unit 740 for deleting the stored video data when less than this predetermined threshold.

여기서, 비디오 프록시 서버의 입출력 지연 시간(I/O latency)을 유발하는 주요인자는 저장장치(770)에 저장되어 있는 비디오를 검색하는데 사용되는 탐색 오버헤드이다. 특히 제한된 저장 공간을 가지는 비디오 프록시 서버는 새로운 비디오의 저장으로 인한 지속적인 파일 삭제가 수행되며 이때 발생하는 과도한 탐색 오버헤드는 저장 공간의 효율성에 부정적인 영향을 미친다. 이런 경우 제한된 저장 공간을 가지는 주기억장치에 대하여 두 가지 문제점을 가진다. Here, the main factor causing the I / O latency of the video proxy server is the search overhead used to search for the video stored in the storage 770. In particular, a video proxy server with limited storage space performs continuous file deletion due to the storage of new video, and excessive browsing overhead in this case negatively affects the efficiency of the storage space. In this case, there are two problems with the main memory having limited storage space.

첫째는 세그먼트 번호가 큰 비디오 데이터를 저장하기 위한 연속적 공간을 찾는 것이 어려울 수 있다는 점이며, 둘째는 외부 단편화 문제가 일으킬 수 있으며 이는 주기억장치를 이용한 비디오 프록시 서버의 관리의 성능에 큰 영향을 미칠 수 있다는 점이다. The first is that it can be difficult to find contiguous space for storing video data with large segment numbers, and the second can cause external fragmentation problems, which can greatly affect the performance of managing the video proxy server using main memory. Is that there is.

이러한 문제점을 해결하기 위하여 본 발명에서는 제한된 저장 공간을 가지는 주기억장치에서 비디오 세그먼트들의 지속적인 삭제와 저장으로 발생할 수 있는 과도한 탐색 오버헤드와 단편화를 해결하기 위하여 세그먼트별로 저장 공간을 할당하는 저장 기법을 아울러 제안한다. In order to solve this problem, the present invention also proposes a storage scheme for allocating storage space by segment in order to solve excessive search overhead and fragmentation that may occur due to continuous deletion and storage of video segments in a main memory having limited storage space. do.

제안하는 저장 기법은 세그먼트 번호를 기준으로 각 비디오가 저장되어 있는 물리적인 주소 정보를 가지며 연결 리스트를 활용하여 저장된 비디오로의 직접적인 접근이 가능하다. 즉, 파일 디렉터리(file directory)는 비디오들의 집합으로 구성되어있으며 각 비디오는 연결 리스트를 이용하여 해당 비디오의 세그먼트 저장 정보를 가지는 색인 테이블(index table)과 연결되어있다. The proposed storage scheme has the physical address information where each video is stored based on the segment number, and it is possible to directly access the stored video using the linked list. That is, a file directory is composed of a set of videos, and each video is linked to an index table having segment storage information of the corresponding video using a linked list.

색인 테이블은 논리적인 자료 구조로부터 저장장치에 저장되는 물리적인 비디오 세그먼트들을 매핑(mapping)시키는 핵심적인 역할을 수행한다. 따라서 색인 테이블의 색인(index)들은 비디오의 각 세그먼트가 저장되어 있는 저장장치의 물리적인 주소 정보를 가지며 연결 리스트를 활용하여 저장된 세그먼트에 직접적인 접근이 가능하다. 이렇게 함으로써 비디오 프록시 서버는 저장장치에 새로운 비디오의 저장이나 저장된 비디오의 탐색을 신속하게 수행할 수 있으며 이와 함께 삭제 시에 발생하게 되는 단편화 문제를 해결한다. The index table plays a key role in mapping the physical video segments stored in storage from logical data structures. Therefore, the indexes of the index table have the physical address information of the storage device in which each segment of the video is stored and can directly access the stored segments by using a linked list. By doing so, the video proxy server can quickly save new video to the storage device or search for stored video, and solve the fragmentation problem that occurs when deleting.

또한 본 발명에서는 사용자에 의해 요청된 비디오의 세그먼트들을 주기억장치에 효율적으로 저장하기 위해 전체 주기억장치 공간의 크기(MMS:Main Memory Size)를 세그먼트 번호에 따른 저장 공간으로 분할한다. 임의의 세그먼트의 주기억장치 내 분할 공간이 가지는 블록의 개수(NOB:Number Of Block)는 아래 (수학식3)에 의해 계산된다.  In addition, in the present invention, in order to efficiently store the segments of the video requested by the user in the main memory, the main memory size (MMS) is divided into storage spaces according to segment numbers. The number of blocks (NOB) of the partition space in the main memory of any segment is calculated by Equation 3 below.

Figure 112010076963815-pat00003
Figure 112010076963815-pat00003

여기서, s(k)는 세그먼트 k의 크기이며, p(k)는 주기억장치에 존재하는 모든 비디오들을 대상으로 세그먼트 k가 요청된 확률을 평균한 값이고, 이들 확률은 미리 수행된 실험을 통해 계산된다. 또한 j는 하나의 비디오를 구성하는 세그먼트의 개수이며 m(k)는 세그먼트 k가 가지는 블록의 개수이다. Here, s (k) is the size of the segment k, p (k) is the average of the probability that the segment k is requested for all the videos present in the main memory, these probabilities are calculated by a previously performed experiment do. In addition, j is the number of segments constituting one video, and m (k) is the number of blocks included in segment k.

도 8은 본 발명의 일 실시예에 따른 멀티미디어 데이터 관리 장치에서 가상 연결 기법을 이용하여 멀티미디어 데이터를 저장하는 과정을 나타낸 플로우 차트이다.8 is a flowchart illustrating a process of storing multimedia data using a virtual connection technique in a multimedia data management apparatus according to an embodiment of the present invention.

도 8을 참고하면, 가상 연결 기법을 이용하여 멀티미디어 데이터를 저장하는 과정은 먼저 임의의 비디오 i의 k번째 세그먼트(ik)가 요청되면(810), 요청된 세그먼트(ix)가 프록시 서버의 저장장치에 존재하는지를 판단한 다음(815), 만약 저장장치에 존재한다면 저장된 세그먼트(ix)를 사용자에게 전송한다(820).Referring to FIG. 8, in the process of storing multimedia data using a virtual connection scheme, first, when a k-th segment (ik) of an arbitrary video i is requested (810), the requested segment (ix) is a storage device of a proxy server. In operation 815, the storage device transmits the stored segment ix to the user if the storage device 820 exists.

그러나, 만약 저장장치에 요청된 세그먼트(ix)가 저장장치에 없다면, 다음으로 주기억장치인 메인 메모리에 존재하는지를 판단한다(825). 만약 주기억장치에 세그먼트(ix)가 존재한다면 이를 사용자에게 전송하고(830), 주기억장치에 적재 중이었던 세그먼트(ix)는 주기억장치에서 저장장치로 이동시킨다(835).However, if the segment ix requested for the storage device does not exist in the storage device, it is next determined whether it exists in the main memory which is the main memory (825). If there is a segment ix in the main memory, it is transmitted to the user (830), and the segment ix, which has been loaded in the main memory, is moved from the main memory to the storage (835).

만약 요청된 세그먼트(ix)가 저장장치에도 없고, 주기억장치에도 없다면 비디오 프록시 서버는 주 서버에게 세그먼트(ix)의 전송을 요청하고(840), 수신된 세그먼트(ix)를 프록시 서버의 주기억장치에 적재한 후 사용자에게 해당 데이터를 전송한다(845).If the requested segment (ix) is not in storage or in main memory, the video proxy server requests the main server to transmit segment ix (840), and sends the received segment (ix) to the proxy server's main memory. After loading, the data is transmitted to the user (845).

첫 번째 요청 세션이 중단되었다 하더라도, 일정한 대기시간 Ti(k) 동안 다른 사용자가 세그먼트(ix)를 요청하는지를 대기한 다음에(850), 다른 요청이 없으면 주기억장치에서 세그먼트(ix)를 삭제하고(865), 대기시간 내에 다른 요청이 발생하면 요청된 세그먼트(ix)를 사용자에게 전송하고(855) 요청된 세그먼트(ix)는 주기억장치에서 프록시 서버의 저장장치로 이동시킨다(860).Even if the first request session is interrupted, after waiting for another user to request segment (ix) for a certain waiting time Ti (k) (850), if no other request is made, delete segment (ix) from main memory ( 865) If another request occurs within the waiting time, the requested segment ix is sent to the user (855) and the requested segment ix is moved from the main memory to the proxy server's storage (860).

도 9는 본 발명의 일 실시예에 따른 멀티미디어 데이터 관리 장치에서 상대적으로 협소한 프록시 서버의 저장장치의 여유 공간을 확보하기 위하여 저장된 멀티미디어 데이터를 삭제하는 과정을 나타낸 플로우 차트이다.9 is a flowchart illustrating a process of deleting stored multimedia data in order to secure a free space of a storage device of a relatively narrow proxy server in a multimedia data management apparatus according to an embodiment of the present invention.

비디오 프록시 서버는 원격지의 중앙 서버에 비해 상대적으로 작은 저장 공간을 가진다. 따라서 새롭게 요청된 비디오의 저장 공간을 확보하기 위해 저장장치에 저장되어 있는 비디오 세그먼트 중 요청 가능성이 가장 낮은 세그먼트를 선정하고 제거할 필요성이 제기된다. 이를 위해 본 발명에서는 요청 시간을 고려한 삭제 알고리즘을 아울러 제안한다. The video proxy server has a relatively small storage space compared to the remote central server. Therefore, there is a need to select and remove the least likely segment among the video segments stored in the storage device to secure the storage space of the newly requested video. To this end, the present invention proposes a deletion algorithm considering the request time.

도 9를 참고하면, 삭제 알고리즘은 비디오 프록시 서버의 저장 공간이 설정된 임계치보다 작을 경우 수행된다(910). 왜냐하면 새로운 비디오 세그먼트의 입력으로 인해 비디오 프록시 서버저장 장치의 공간 부족 현상이 발생한 시점에서 공간을 확보하는 것은 비효율적이기 때문이다. 여기서 임계치는 저장장치에 저장되어 있는 가장 큰 세그먼트의 크기로 한다. Referring to FIG. 9, the deletion algorithm is performed when the storage space of the video proxy server is smaller than the set threshold (910). This is because it is inefficient to secure the space when the video proxy server storage device runs out of space due to the input of a new video segment. The threshold is the size of the largest segment stored in the storage device.

우선 저장장치에 저장되어 있는 비디오들을 대상으로 프리픽스와 서픽스로 구분한다. 만일 임의의 비디오가 설정된 시간 μi동안 요청되지 않았다면 해당 비디오의 모든 세그먼트를 서픽스로 설정한다(920). 여기서 설정된 시간 μi는 아래 (수학식4)에 의해 계산된다.First of all, the video stored in the storage device is divided into prefix and suffix. If any video has not been requested for a predetermined time μi, all segments of the video are set as suffixes (920). The time μi set here is calculated by Equation 4 below.

Figure 112010076963815-pat00004
Figure 112010076963815-pat00004

여기서, n은 저장장치에 존재하는 비디오의 개수이며 αi(1)은 임의의 비디오 i의 첫 번째 세그먼트가 가장 최근에 요청된 시간과 해당 시간 이전에 요청된 시간 사이의 간격이다.Where n is the number of videos present in the storage and αi (1) is the interval between the most recently requested time of the first segment of any video i and the time requested before that time.

저장된 비디오들을 이전의 요청된 시간순으로 정렬하고(930), 서픽스가 존재하는 경우에는(940) 가장 오래전에 요청된 비디오의 서픽스의 마지막 세그먼트부터 순서대로 삭제한다(950). 만일 비디오 프록시 서버의 저장장치에서 서픽스가 더 이상 존재하지 않을 경우에는(940), 임계치보다 저장장치의 여유 공간이 클 때까지(970) 가장 오래전에 요청된 비디오 프리픽스의 마지막 세그먼트부터 순서대로 삭제를 수행한다(960).The stored videos are sorted by the previously requested chronological order (930), and if a suffix is present (940), then deleted (950) in order from the last segment of the suffix of the oldest requested video. If the suffix no longer exists in the storage of the video proxy server (940), delete it in order from the last segment of the oldest requested video prefix until the free space on the storage is greater than the threshold (970). Perform 960.

본 발명은 프록시 서버에서 동작하는 상기의 멀티미디어 데이터의 관리 방법을 실행시키기 위한 프로그램이 기록된 기록 매체를 포함한다.The present invention includes a recording medium having recorded thereon a program for executing the above method for managing multimedia data operating in a proxy server.

컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어, 인터넷 등의 네트워크(130)를 통한 전송)의 형태로 구현되는 것도 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. Examples of computer-readable recording media include ROM, RAM, CD-ROM, magnetic tape, floppy disks, optical data storage devices, and the like. Also, carrier waves (eg, transmission through a network 130 such as the Internet) It also includes the implementation in the form of). The computer readable recording medium can also be distributed over network coupled computer systems so that the computer readable code is stored and executed in a distributed fashion.

그리고, 본 발명을 구현하기 위한 기능적인(Functional) 프로그램, 코드 및 코드 세그먼트들은 본 발명이 속하는 기술분야의 프로그래머들에 의해 용이하게 추론될 수 있다.In addition, functional programs, codes, and code segments for implementing the present invention can be easily inferred by programmers in the art to which the present invention belongs.

이상에서, 본 발명의 실시예를 구성하는 모든 구성 요소들이 하나로 결합되거나 결합되어 동작하는 것으로 설명되었다고 해서, 본 발명이 반드시 이러한 실시예에 한정되는 것은 아니다. 즉, 본 발명의 목적 범위 안에서라면, 그 모든 구성 요소들이 하나 이상으로 선택적으로 결합하여 동작할 수도 있다. 또한, 그 모든 구성 요소들이 각각 하나의 독립적인 하드웨어로 구현될 수 있지만, 각 구성 요소들의 그 일부 또는 전부가 선택적으로 조합되어 하나 또는 복수 개의 하드웨어에서 조합된 일부 또는 전부의 기능을 수행하는 프로그램 모듈을 갖는 컴퓨터 프로그램으로서 구현될 수도 있다. 그 컴퓨터 프로그램을 구성하는 코드들 및 코드 세그먼트들은 본 발명의 기술 분야의 당업자에 의해 용이하게 추론될 수 있을 것이다. 이러한 컴퓨터 프로그램은 컴퓨터가 읽을 수 있는 저장매체(Computer Readable Media)에 저장되어 컴퓨터에 의하여 읽혀지고 실행됨으로써, 본 발명의 실시예를 구현할 수 있다. 컴퓨터 프로그램의 저장매체로서는 자기 기록매체, 광 기록매체, 캐리어 웨이브 매체 등이 포함될 수 있다.In the above description, all elements constituting the embodiments of the present invention are described as being combined or operating in combination, but the present invention is not necessarily limited to the embodiments. In other words, within the scope of the present invention, all of the components may be selectively operated in combination with one or more. In addition, although all of the components may be implemented in one independent hardware, each or all of the components may be selectively combined to perform some or all functions combined in one or a plurality of hardware. It may be implemented as a computer program having a. Codes and code segments constituting the computer program may be easily inferred by those skilled in the art. Such a computer program may be stored in a computer readable storage medium and read and executed by a computer, thereby implementing embodiments of the present invention. The storage medium of the computer program may include a magnetic recording medium, an optical recording medium, a carrier wave medium, and the like.

또한, 이상에서 기재된 "포함하다", "구성하다" 또는 "가지다" 등의 용어는, 특별히 반대되는 기재가 없는 한, 해당 구성 요소가 내재될 수 있음을 의미하는 것이므로, 다른 구성 요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있는 것으로 해석되어야 한다. 기술적이거나 과학적인 용어를 포함한 모든 용어들은, 다르게 정의되지 않는 한, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 사전에 정의된 용어와 같이 일반적으로 사용되는 용어들은 관련 기술의 문맥 상의 의미와 일치하는 것으로 해석되어야 하며, 본 발명에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.In addition, the terms "comprise", "comprise" or "having" described above mean that the corresponding component may be included, unless otherwise stated, and thus excludes other components. It should be construed that it may further include other components instead. All terms, including technical and scientific terms, have the same meanings as commonly understood by one of ordinary skill in the art unless otherwise defined. Terms commonly used, such as terms defined in a dictionary, should be interpreted to coincide with the contextual meaning of the related art, and shall not be construed in an ideal or excessively formal sense unless explicitly defined in the present invention.

이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.The foregoing description is merely illustrative of the technical idea of the present invention, and various changes and modifications may be made by those skilled in the art without departing from the essential characteristics of the present invention. Therefore, the embodiments disclosed in the present invention are not intended to limit the technical idea of the present invention but to describe the present invention, and the scope of the technical idea of the present invention is not limited by these embodiments. The protection scope of the present invention should be interpreted by the following claims, and all technical ideas within the equivalent scope should be interpreted as being included in the scope of the present invention.

Claims (18)

멀티미디어 데이터를 요청하는 복수의 클라이언트 및 요청된 멀티미디어 데이터를 제공하는 중앙 서버와 유무선 네트워크로 연결된 프록시 서버에서 구현된 멀티미디어 데이터를 관리하는 장치에 있어서,
상기 복수의 클라이언트와의 데이터 요청 세션을 관리하는 세션 관리부;
상기 복수의 클라이언트 중 제 1 클라이언트로부터 요청된 멀티미디어 데이터를 상기 프록시 서버의 주기억장치에 적재하는 주기억장치 관리부; 및
상기 복수의 클라이언트 중 제 2 클라이언트와의 세션이 설정되고 상기 주기억장치에 적재되어 있는 멀티미디어 데이터의 요청이 있는 경우에 상기 요청된 멀티미디어 데이터를 저장장치에 저장하는 데이터 저장 관리부를 포함하고,
상기 멀티미디어 데이터는 복수의 세그먼트(segment)로 분할되어 처리되며, 상기 복수의 세그먼트는 프리픽스(prefix) 및 서픽스(suffix)로 구성되고,
상기 주기억장치 관리부는,
전체 주기억장치 공간의 크기를 상기 세그먼트 번호에 따른 저장공간으로 분할하며,
s(k)가 세그먼트 k의 크기이며, p(k)가 상기 주기억장치에 존재하는 모든 멀티미디어 데이터들을 대상으로 세그먼트 k가 요청된 확률값을 평균한 값이며, j는 하나의 멀티미디어 데이터를 구성하는 세그먼트의 개수이며, MMS는 전체 주기억장치 공간의 크기일 때,
Figure 112011045615603-pat00018

세그먼트 k에 따른 저장공간이 가지는 블록의 개수 NOB(k)는 상기 수학식에 의해 정해지는 것을 특징으로 하는 멀티미디어 데이터 관리 장치.
An apparatus for managing multimedia data implemented in a plurality of clients requesting multimedia data and a proxy server connected to a wired / wireless network with a central server providing the requested multimedia data.
A session manager configured to manage data request sessions with the plurality of clients;
A main memory manager for loading multimedia data requested from a first client of the plurality of clients into a main memory of the proxy server; And
A data storage management unit configured to store the requested multimedia data in a storage device when a session with a second client of the plurality of clients is established and the multimedia data loaded in the main memory is requested;
The multimedia data is divided and processed into a plurality of segments, and the plurality of segments are composed of a prefix and a suffix.
The main memory management unit,
Dividing the total main memory space into storage spaces according to the segment number,
s (k) is the size of the segment k, p (k) is the average value of the probability value of the segment k for all the multimedia data present in the main memory, j is a segment constituting one multimedia data Where MMS is the size of the total main memory space,
Figure 112011045615603-pat00018

And the number NOB (k) of blocks in the storage space according to segment k is determined by the above equation.
제1항에 있어서,
상기 주기억장치 관리부는,
상기 요청된 멀티미디어 데이터에 대하여 상기 제 2 클라이언트의 세션이 설정되기 이전에 상기 제 1 클라이언트의 세션이 중단되면 상기 주기억장치에 적재되어 있는 멀티미디어 데이터를 소거하는 것을 특징으로 하는 멀티미디어 데이터 관리 장치.
The method of claim 1,
The main memory management unit,
And erasing the multimedia data stored in the main memory when the session of the first client is interrupted before the session of the second client is established for the requested multimedia data.
삭제delete 제1항에 있어서,
상기 데이터 저장 관리부는,
상기 프리픽스에 해당하는 세그먼트를 상기 저장장치에 저장하며,
CPi가 임의의 상기 멀티미디어 데이터 i의 구분점이며, c가 해당 비디오를 요청한 사용자들의 총 수이며, AT(i,j)가 상기 멀티미디어 데이터 i가 사용자 j에 의한 요청 지속 시간이며, Popi가 상기 멀티미디어 데이터 i가 요청된 총 수일 때,
Figure 112011045615603-pat00005

상기 프리픽스의 세그먼트는 상기 수학식에 의해 정해지는 구분점 이전의 하나 이상의 세그먼트인 것을 특징으로 하는 멀티미디어 데이터 관리 장치.
The method of claim 1,
The data storage management unit,
Storing a segment corresponding to the prefix in the storage device;
CPi is the bullet point of any of the multimedia data i, c is the total number of users who requested the video, AT (i, j) is the multimedia data i is the request duration by user j, and Popi is the multimedia When data i is the total number requested,
Figure 112011045615603-pat00005

And the segment of the prefix is at least one segment before a break point determined by the equation.
제1항에 있어서,
상기 주기억장치 관리부는,
상기 주기억장치에 적재되어 있는 멀티미디어 데이터의 세그먼트 이외에 상기 제 2 클라이언트에 의하여 새롭게 요청된 세그먼트를 상기 주기억장치에 적재하는 것을 특징으로 하는 멀티미디어 데이터 관리 장치.
The method of claim 1,
The main memory management unit,
And a segment newly requested by the second client in addition to the segment of the multimedia data loaded in the main memory, to the main memory.
제1항에 있어서,
상기 주기억장치 관리부는,
클라이언트의 요청 패턴에 기초하여 상기 제 1 클라이언트의 세션이 중단된 이후에도 소정의 시간동안 상기 세션을 유지하는 가상 연결부를 더 포함하는 것을 특징으로 하는 멀티미디어 데이터 관리 장치.
The method of claim 1,
The main memory management unit,
And a virtual connection unit for maintaining the session for a predetermined time even after the session of the first client is interrupted based on a request pattern of the client.
제6항에 있어서,
상기 가상 연결부는,
Pi(k)는 임의의 상기 멀티미디어 데이터 i의 세그먼트 k가 요청된 횟수를 상기 멀티미디어 데이터의 모든 세그먼트들이 요청된 횟수로 나눈 값인 요청 확률이며, n은 상기 주기억장치에 존재하는 멀티미디어 데이터들의 개수이며, αi(1)은 상기 멀티미디어 데이터 i의 첫 번째 세그먼트가 가장 최근에 요청된 시간 및 해당 시간 이전에 요청된 시간 사이의 간격일 때,
Figure 112010076963815-pat00006

상기 세션을 유지하는 소정의 시간 Ti(k)은 상기 수학식에 의해 정해지는 것을 특징으로 하는 멀티미디어 데이터 관리 장치.
The method of claim 6,
The virtual connection unit,
Pi (k) is a request probability of dividing the number of times the segment k of the multimedia data i is requested by the number of times all segments of the multimedia data are requested, n is the number of multimedia data present in the main memory, α i (1) is the first segment of the multimedia data i is the interval between the most recently requested time and the time requested before that time,
Figure 112010076963815-pat00006

The predetermined time Ti (k) to maintain the session is determined by the equation.
삭제delete 제1항에 있어서,
상기 데이터 저장 관리부는,
상기 멀티미디어 데이터의 세그먼트가 저장되어 있는 상기 프록시 서버의 저장장치의 물리적인 주소 정보를 논리적인 자료 구조와 매핑한 색인 테이블을 포함하며, 연결 리스트를 이용하여 상기 저장된 세그먼트에 직접 액세스가 가능한 것을 특징으로 하는 멀티미디어 데이터 관리 장치.
The method of claim 1,
The data storage management unit,
And an index table that maps the physical address information of the storage device of the proxy server, in which the segment of the multimedia data is stored, with a logical data structure, and directly accesses the stored segment using a linked list. Multimedia data management device.
제1항에 있어서,
상기 복수의 클라이언트로부터 요청된 멀티미디어 데이터를 클라이언트로 전송하는 파일 전송부를 더 포함하며,
상기 요청된 멀티미디어 데이터가 상기 프록시 서버의 저장장치에 존재하는 경우에 상기 파일 전송부는 저장된 멀티미디어 데이터를 상기 클라이언트로 전송하고,
상기 요청된 멀티미디어 데이터가 상기 주기억장치에 존재하는 경우에 상기 파일 전송부는 상기 멀티미디어 데이터를 상기 클라이언트로 전송하고, 상기 데이터 저장 관리부는 상기 주기억장치에 존재하는 멀티미디어 데이터를 상기 프록시 서버의 저장장치에 저장하고,
상기 요청된 멀티미디어 데이터를 상기 중앙 서버로부터 수신한 경우에 상기 파일 전송부는 수신된 멀티미디어 데이터를 상기 클라이언트로 전송하고, 상기 주기억장치 관리부는 수신된 멀티미디어 데이터를 프록시 서버의 주기억장치에 적재하는 것을 특징으로 하는 멀티미디어 데이터 관리 장치.
The method of claim 1,
Further comprising a file transmitter for transmitting the multimedia data requested from the plurality of clients to the client,
When the requested multimedia data exists in the storage of the proxy server, the file transmitter transmits the stored multimedia data to the client,
When the requested multimedia data exists in the main memory, the file transmitter transmits the multimedia data to the client, and the data storage manager stores the multimedia data in the main memory in the storage of the proxy server. and,
When the requested multimedia data is received from the central server, the file transmitter transmits the received multimedia data to the client, and the main memory manager loads the received multimedia data into the main memory of the proxy server. Multimedia data management device.
제1항에 있어서,
상기 프록시 서버의 저장장치의 저장공간이 소정의 임계치보다 작은 경우에 상기 저장된 멀티미디어 데이터를 삭제하는 데이터 삭제 관리부를 더 포함하며,
상기 임계치는 상기 저장된 멀티미디어 데이터의 가장 큰 세그먼트의 크기인 것을 특징으로 하는 멀티미디어 데이터 관리 장치.
The method of claim 1,
And a data deletion management unit for deleting the stored multimedia data when the storage space of the storage device of the proxy server is smaller than a predetermined threshold value.
And said threshold is the size of the largest segment of said stored multimedia data.
제11항에 있어서,
상기 데이터 삭제 관리부는,
저장된 멀티미디어 데이터 중 소정의 설정된 시간 동안 요청이 없는 멀티미디어 데이터의 경우에 상기 멀티미디어의 모든 세그먼트를 서픽스로 설정하며,
n이 상기 프록시 서버의 저장장치에 존재하는 멀티미디어 데이터의 개수이며, αi(1)은 임의의 멀티미디어 데이터 i의 첫 번째 세그먼트가 가장 최근에 요청된 시간과 해당 시간 이전에 요청된 시간 사이의 간격일 때,
Figure 112010076963815-pat00008

상기 설정된 시간 μi는 상기 수학식에 의해 정해지는 것을 특징으로 하는 멀티미디어 데이터 관리 장치.
The method of claim 11,
The data deletion management unit,
In the case of multimedia data that has not been requested for a predetermined time of the stored multimedia data, all segments of the multimedia are set as suffixes.
n is the number of multimedia data present in the storage of the proxy server, and αi (1) is the interval between the most recently requested time of the first segment of any multimedia data i and the time requested before that time. time,
Figure 112010076963815-pat00008

And said set time [mu] i is determined by the equation.
제12항에 있어서,
상기 데이터 삭제 관리부는,
상기 프록시 서버의 저장장치에 존재하는 멀티미디어 데이터를 이전의 요청된 시간순으로 정렬하는 것을 특징으로 하는 멀티미디어 데이터 관리 장치.
The method of claim 12,
The data deletion management unit,
And sort the multimedia data present in the storage of the proxy server in a previously requested time order.
제13항에 있어서,
상기 데이터 삭제 관리부는,
상기 프록시 서버의 저장장치에서 정렬된 멀티미디어 데이터 중, 가장 오래 전에 요청된 멀티미디어 데이터의 서픽스에 해당하는 하나 이상의 세그먼트 중에서 마지막 세그먼트부터 삭제하는 것을 특징으로 하는 멀티미디어 데이터 관리 장치.
The method of claim 13,
The data deletion management unit,
And deleting the last segment from one or more segments corresponding to the suffix of the longest requested multimedia data among the multimedia data arranged in the storage device of the proxy server.
제14항에 있어서,
상기 데이터 삭제 관리부는,
상기 프록시 서버의 저장장치에서 정렬된 멀티미디어 데이터 중, 서픽스에 해당하는 세그먼트가 존재하지 않는 경우에,
가장 오래 전에 요청된 멀티미디어 데이터의 프리픽스에 해당하는 하나 이상의 세그먼트 중에서 마지막 세그먼트부터 삭제하는 것을 특징으로 하는 멀티미디어 데이터 관리 장치.
The method of claim 14,
The data deletion management unit,
If there is no segment corresponding to the suffix among the multimedia data arranged in the storage of the proxy server,
And deleting the last segment from one or more segments corresponding to the prefix of the multimedia data requested the longest.
멀티미디어 데이터를 요청하는 복수의 클라이언트 및 요청된 멀티미디어 데이터를 제공하는 중앙 서버와 유무선 네트워크로 연결된 프록시 서버에서 동작하는 멀티미디어 데이터의 관리 방법에 있어서,
상기 복수의 클라이언트와의 데이터 요청 세션을 관리하는 단계;
상기 복수의 클라이언트 중 제 1 클라이언트로부터 요청된 멀티미디어 데이터를 상기 프록시 서버의 주기억장치에 적재하는 단계; 및
상기 복수의 클라이언트 중 제 2 클라이언트와의 세션이 설정되고 상기 주기억장치에 적재되어 있는 멀티미디어 데이터의 요청이 있는 경우에 상기 요청된 멀티미디어 데이터를 저장장치에 저장하는 단계를 포함하고,
상기 멀티미디어 데이터는 복수의 세그먼트(segment)로 분할되어 처리되며, 상기 복수의 세그먼트는 프리픽스(prefix) 및 서픽스(suffix)로 구성되고,
상기 주기억장치에 적재하는 단계는,
전체 주기억장치 공간의 크기를 상기 세그먼트 번호에 따른 저장공간으로 분할하며,
s(k)가 세그먼트 k의 크기이며, p(k)가 상기 주기억장치에 존재하는 모든 멀티미디어 데이터들을 대상으로 세그먼트 k가 요청된 확률값을 평균한 값이며, j는 하나의 멀티미디어 데이터를 구성하는 세그먼트의 개수이며, MMS는 전체 주기억장치 공간의 크기일 때,
Figure 112011045615603-pat00019

세그먼트 k에 따른 저장공간이 가지는 블록의 개수 NOB(k)는 상기 수학식에 의해 정해지는 것을 특징으로 하는 멀티미디어 데이터 관리 방법.
A method of managing multimedia data operating in a proxy server connected to a wired / wireless network with a plurality of clients requesting multimedia data and a central server providing the requested multimedia data,
Managing a data request session with the plurality of clients;
Loading multimedia data requested from a first client of the plurality of clients into a main memory of the proxy server; And
Storing the requested multimedia data in a storage device when a session with a second client of the plurality of clients is established and there is a request for the multimedia data loaded on the main memory device;
The multimedia data is divided and processed into a plurality of segments, and the plurality of segments are composed of a prefix and a suffix.
Loading the main memory device,
Dividing the total main memory space into storage spaces according to the segment number,
s (k) is the size of the segment k, p (k) is the average value of the probability value of the segment k for all the multimedia data present in the main memory, j is a segment constituting one multimedia data Where MMS is the size of the total main memory space,
Figure 112011045615603-pat00019

The number NOB (k) of blocks in the storage space according to segment k is determined by the above equation.
삭제delete 삭제delete
KR1020100117708A 2010-11-24 2010-11-24 Apparatus and method for managing multimedia data based on time constraint multiple access technique KR101076473B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020100117708A KR101076473B1 (en) 2010-11-24 2010-11-24 Apparatus and method for managing multimedia data based on time constraint multiple access technique

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020100117708A KR101076473B1 (en) 2010-11-24 2010-11-24 Apparatus and method for managing multimedia data based on time constraint multiple access technique

Publications (1)

Publication Number Publication Date
KR101076473B1 true KR101076473B1 (en) 2011-10-25

Family

ID=45033336

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100117708A KR101076473B1 (en) 2010-11-24 2010-11-24 Apparatus and method for managing multimedia data based on time constraint multiple access technique

Country Status (1)

Country Link
KR (1) KR101076473B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102467890B1 (en) * 2022-06-20 2022-11-16 주식회사 노트디자인 Method and apparatus for providing information about items related to a drawing using a neural network by a sever

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
이준표, "효율적인 VOD 서비스를 위한 가상 캐싱 기반 비디오 프록시 서버", 한양대학교 박사학위 논문(2009.8)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102467890B1 (en) * 2022-06-20 2022-11-16 주식회사 노트디자인 Method and apparatus for providing information about items related to a drawing using a neural network by a sever

Similar Documents

Publication Publication Date Title
US10652265B2 (en) Method and apparatus for network forensics compression and storage
CN107124630B (en) Method and device for node data management
US10313463B2 (en) Systems and methods for avoiding server push of objects already cached at a client
CN104731516B (en) A kind of method, apparatus and distributed memory system of accessing file
KR102294326B1 (en) Prefetching application data for periods of disconnectivity
US9661103B2 (en) Mobile device having improved polling characteristics for background applications
KR101227821B1 (en) System and method for making requests on behalf of a mobile device based on atomic processes for mobile network traffic relief
US10812580B2 (en) Using resource timing data for server push
KR102100710B1 (en) Method for transmitting packet of node and content owner in content centric network
CN107241344B (en) Client is intercepted to the method, apparatus and system of the access of hostile network server
EP2503759A1 (en) Method, apparatus and cache system for providing file downloading service
US20070226229A1 (en) Method and system for class-based management of dynamic content in a networked environment
US20130346552A1 (en) Download method, system, and device for mobile terminal
CN104796439B (en) Web page push method, client, server and system
JP2007510224A (en) A method for determining the segment priority of multimedia content in proxy cache
CN107197359B (en) Video file caching method and device
US9407726B1 (en) Caching objects identified by dynamic resource identifiers
JP5798523B2 (en) Communication control system, aggregation server, and communication control method
CN109525622A (en) The generation method of fragment resource ID, resource sharing method, device and electronic equipment
CN110413846A (en) For the data processing method of webpage mirror image, device and computer readable storage medium
KR101076473B1 (en) Apparatus and method for managing multimedia data based on time constraint multiple access technique
CN103416027A (en) Cache optimization method, cache and cache optimization system
CN103729440A (en) Method and device for having access to website
CN101388863A (en) Implementing method and system for WAP gateway extraction service
US20140136647A1 (en) Router and operating method thereof

Legal Events

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

Payment date: 20140804

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20150821

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20160826

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20170823

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20180806

Year of fee payment: 8