KR20220006483A - Cloud streaming server generating cache file and operating method thereof - Google Patents
Cloud streaming server generating cache file and operating method thereof Download PDFInfo
- Publication number
- KR20220006483A KR20220006483A KR1020210089734A KR20210089734A KR20220006483A KR 20220006483 A KR20220006483 A KR 20220006483A KR 1020210089734 A KR1020210089734 A KR 1020210089734A KR 20210089734 A KR20210089734 A KR 20210089734A KR 20220006483 A KR20220006483 A KR 20220006483A
- Authority
- KR
- South Korea
- Prior art keywords
- content
- unique value
- client
- data
- processing unit
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/231—Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
- H04N21/23106—Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion involving caching operations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/3004—Arrangements for executing specific machine instructions to perform operations on memory
- G06F9/30047—Prefetch instructions; cache control instructions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H04L67/2823—
-
- H04L67/2842—
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/565—Conversion or adaptation of application format or content
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0643—Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/21—Server components or server architectures
- H04N21/218—Source of audio or video content, e.g. local disk arrays
- H04N21/2183—Cache memory
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/21—Server components or server architectures
- H04N21/222—Secondary servers, e.g. proxy server, cable television Head-end
- H04N21/2223—Secondary servers, e.g. proxy server, cable television Head-end being a public access point, e.g. for downloading to or uploading from clients
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/30—Compression, e.g. Merkle-Damgard construction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/60—Digital content management, e.g. content distribution
Abstract
Description
본 문서는 캐시 파일을 생성하는 클라우드 스트리밍 서버 및 그 운용 방법에 관한 것이다.This document relates to a cloud streaming server that generates a cache file and an operating method thereof.
클라우드 스트리밍 기술은 클라이언트에게 제공하기 위한 컨텐츠를 처리하는 소프트웨어(예: 웹 브라우저)를 클라우드 스트리밍 서버에서 실행하고 그 결과만 클라이언트로 전송하는 기술로 이해될 수 있다. 클라이언트는 클라우드 스트리밍 서버로부터 수신한 컨텐츠에 대한 사용자 입력(예: 키 입력)을 수신할 수 있다. 클라이언트는 수신된 사용자 입력을 클라우드 스트리밍 서버로 전송하여 사용자 입력에 기반한 컨텐츠 제공을 요청할 수 있다. 클라우드 스트리밍 서버의 소프트웨어는 사용자 입력에 기반한 컨텐츠를 처리하여 클라이언트로 전송할 수 있다. Cloud streaming technology may be understood as a technology that executes software (eg, a web browser) that processes content to be provided to a client on a cloud streaming server and transmits only the result to the client. The client may receive a user input (eg, key input) for the content received from the cloud streaming server. The client may request content provision based on the user input by transmitting the received user input to the cloud streaming server. The cloud streaming server's software can process the content based on user input and transmit it to the client.
클라이언트가 클라우드 스트리밍 서버에 요청한 컨텐츠의 일부 영역은 클라이언트가 이전에 제공 받았던 컨텐츠의 일부 영역과 동일할 수 있다. 클라우드 스트리밍 서버가 동일한 영역의 데이터를 처리하여 클라이언트에 제공하는 동작은 클라우드 스트리밍 서버의 자원을 비효율적으로 점유할 수 있다. 클라우드 스트리밍 서버의 자원을 절약하기 위하여 중복되는 컨텐츠 영역의 데이터를 제공하기 위한 방법이 논의될 수 있다. The partial area of the content requested by the client from the cloud streaming server may be the same as the partial area of the content previously provided by the client. The operation of the cloud streaming server processing data in the same area and providing it to the client may occupy resources of the cloud streaming server inefficiently. A method for providing data of overlapping content areas in order to save resources of the cloud streaming server may be discussed.
본 문서에 개시되는 일 실시 예에 따른 클라우드 스트리밍 서버는 클라이언트의 키 입력을 수신하는 수신부, 메모리, 캐시 처리부, 및 데이터 처리부를 포함하고, 상기 수신부는 상기 클라이언트로부터 제1 키 입력을 수신하고, 상기 데이터 처리부는, 상기 제1 키 입력에 기반하여, 웹 서버로부터 제1 컨텐츠를 획득하고, 상기 제1 컨텐츠의 각 영역에 대한 유일 값을 추출하고, 상기 제1 컨텐츠의 각 영역에 대응하는 데이터를 처리하여 스트리밍 데이터를 획득하고, 상기 유일 값 및 상기 스트리밍 데이터를 포함하는 제1 캐시 파일을 생성하고, 상기 제1 컨텐츠의 각 영역에 대한 유일 값을 상기 메모리에 저장하고, 상기 스트리밍 데이터를 상기 클라이언트 전송하고, 상기 캐시 처리부는, 상기 제1 캐시 파일을 분산 서버로 전송할 수 있다.Cloud streaming server according to an embodiment disclosed in this document is a receiver for receiving the key input of the client, a memory, a cache processing unit, and a data processing unit, wherein the receiving unit receives a first key input from the client, and the data processing unit obtains first content from a web server based on the first key input, Extracting a unique value for each region of the first content, processing data corresponding to each region of the first content to obtain streaming data, and a first cache file including the unique value and the streaming data generated, a unique value for each region of the first content is stored in the memory, the streaming data is transmitted to the client, and the cache processing unit may transmit the first cache file to a distributed server.
또한, 본 문서에 개시되는 일 실시 예에 따른 클라우드 스트리밍 서버의 운용 방법은, 클라이언트로부터 제1 키 입력을 수신하는 동작, 상기 제1 키 입력에 기반하여, 웹 서버로부터 제1 컨텐츠를 획득하는 동작, 상기 제1 컨텐츠의 각 영역에 대한 유일 값을 추출하는 동작, 상기 제1 컨텐츠의 각 영역에 대응하는 데이터를 처리하여 스트리밍 데이터를 획득하는 동작, 상기 유일 값 및 상기 스트리밍 데이터를 포함하는 제1 캐시 파일을 생성하는 동작, 상기 제1 컨텐츠의 각 영역에 대한 유일 값을 메모리에 저장하는 동작, 상기 스트리밍 데이터를 상기 클라이언트 전송하는 동작, 및 상기 제1 캐시 파일을 분산 서버로 전송하는 동작을 포함할 수 있다.In addition, the operating method of the cloud streaming server according to an embodiment disclosed in this document, the operation of receiving the first key input from the client, Based on the first key input, an operation of obtaining a first content from a web server, an operation of extracting a unique value for each region of the first content, and processing data corresponding to each region of the first content The operation of obtaining streaming data, the operation of generating a first cache file including the unique value and the streaming data, the operation of storing a unique value for each area of the first content in a memory, and transferring the streaming data to the client It may include an operation of transmitting, and an operation of transmitting the first cache file to a distributed server.
본 문서에 개시되는 실시 예들에 따르면, 클라우드 스트리밍 서버는 클라이언트가 요청하는 컨텐츠의 처리를 생략하고 분산 서버에 저장된 캐시 파일을 재사용함으로써, 자원을 절약할 수 있다.According to the embodiments disclosed in this document, the cloud streaming server can save resources by omitting the processing of the content requested by the client and reusing the cache file stored in the distributed server.
본 문서에 개시되는 실시 예들에 따르면, 클라우드 스트리밍 서버는 복수의 클라이언트들에 대하여 효율적으로 데이터를 제공할 수 있다.According to the embodiments disclosed in this document, the cloud streaming server can efficiently provide data to a plurality of clients.
이 외에, 본 문서를 통해 직접적 또는 간접적으로 파악되는 다양한 효과들이 제공될 수 있다.In addition, various effects directly or indirectly identified through this document may be provided.
도 1은, 다양한 실시예들에 따른, 클라우드 스트리밍 기술의 시스템을 도시한 것이다.
도 2는 클라우드 스트리밍 서버의 구조를 도시한 블록도이다.
도 3은 클라이언트의 구성을 도시한 블록도이다.
도 4는 분산 서버를 이용한 컨텐츠 제공 방법을 설명한 흐름도이다.
도 5는 유일 값 추출 방법을 도시한 것이다.
도 6a는 일 실시예에 따른 유일 값 추출을 도시한 것이다.
도 6b는 일 실시예에 따른 스트리밍 데이터 전송을 도시한 것이다.
도 7은 분산 서버를 이용한 컨텐츠 제공 방법을 설명한 흐름도이다.
도 8a 및 8b는 분산 서버를 이용한 데이터 전송을 도시한 것이다.
도 9는 복수의 클라이언트가 접속한 경우 일 실시예에 따른 컨텐츠 제공 방법을 도시한 것이다.
도면의 설명과 관련하여, 동일 또는 유사한 구성요소에 대해서는 동일 또는 유사한 참조 부호가 사용될 수 있다.1 illustrates a system of cloud streaming technology, according to various embodiments.
2 is a block diagram showing the structure of a cloud streaming server.
3 is a block diagram showing the configuration of a client.
4 is a flowchart illustrating a content providing method using a distributed server.
5 shows a unique value extraction method.
6A illustrates unique value extraction according to an embodiment.
6B illustrates streaming data transmission according to an embodiment.
7 is a flowchart illustrating a content providing method using a distributed server.
8A and 8B show data transmission using a distributed server.
9 illustrates a content providing method according to an embodiment when a plurality of clients connect.
In connection with the description of the drawings, the same or similar reference numerals may be used for the same or similar components.
도 1은, 다양한 실시예들에 따른, 클라우드 스트리밍 기술의 시스템을 도시한 것이다. 1 illustrates a system of cloud streaming technology, according to various embodiments.
클라우드 스트리밍 서버(100)는 네트워크를 통하여 클라이언트(110) 또는 웹 서버(130)와 통신할 수 있다. 예를 들어, 네트워크는 각종 전자 장치들의 통신을 제공하는 유무선근거리 통신망, 이동통신망, 위성을 이용한 위성 통신망 및 유무선 통신망 중에서 어느 하나이거나, 둘 이상의 결합으로 이해될 수 있다. Cloud
웹 서버(130)는 클라우드 스트리밍 서버(100)에 포함되거나 클라우드 스트리밍 서버(100)의 외부에 위치하며 클라우드 스트리밍 서버(100)와 네트워크를 통하여 데이터를 송수신할 수 있다. 웹 서버(130)가 클라우드 스트리밍 서버(100)에 포함되는 경우, 웹 서버(130)는 클라우드 스트리밍 서버(100)에 의해 가상으로 구현될 수 있다. The
클라이언트(110)는 네트워크를 통하여 클라우드 스트리밍 서버(100)에 접속할 수 있다. 클라우드 스트리밍 서버(100)는 클라이언트(110)에 컨텐츠를 제공하기 위하여 소프트웨어(예: 웹 브라우저)를 실행할 수 있다. 클라우드 스트리밍 서버(100)가 실행한 소프트웨어는 웹 서버(130)로부터 클라이언트(110)에 제공할 컨텐츠를 수신할 수 있다. 클라우드 스트리밍 서버(100)는 컨텐츠에 대응하는 데이터를 처리(예: 컨버팅(converting), 인코딩(encoding))한 뒤, 클라이언트(110)로 전송할 수 있다. 클라이언트(110)는 클라우드 스트리밍 서버(100)가 제공하는 컨텐츠에 대한 사용자 입력(예: 키 입력)을 수신할 수 있다. 클라이언트(110)는 수신된 사용자 입력을 클라우드 스트리밍 서버(100)로 전송할 수 있다. 클라우드 스트리밍 서버(110)가 실행한 소프트웨어는 사용자 입력에 기반한 컨텐츠를 웹 서버(130)로부터 수신할 수 있다. 클라우드 스트리밍 서버(100)는 수신된 컨텐츠에 대응하는 데이터를 처리하여 클라이언트(110)로 전송할 수 있다.The
클라우드 스트리밍 서버(100)는 웹 서버(130)로부터 수신된 컨텐츠에 대한 캐시 파일을 생성할 수 있다. 예를 들어, 캐시 파일은 스트리밍 데이터 및 유일 값을 포함할 수 있다. 클라우드 스트리밍 서버(100)는 캐시 파일을 분산 서버(120)로 전송할 수 있다. 분산 서버(120)는 클라우드 스트리밍 서버(100)의 외부 서버로 이해될 수 있다. 일 실시예에 따르면, 클라우드 스트리밍 서버(100)는 클라이언트(100)가 요청하는 컨텐츠를 제공하기 위하여 분산 서버(120)에 저장된 캐시 파일을 재사용할 수 있다. 예를 들어, 클라우드 스트리밍 서버(100)는 컨텐츠의 일부 영역에 대한 데이터를 처리(예: 컨버팅, 인코딩)하지 않고, 분산 서버(120)에 저장된 데이터를 수신하여 클라이언트(110)로 전송할 수 있다. 다른 예를 들어, 복수의 클라이언트(예: 클라이언트(110))가 클라우드 스트리밍 서버(100)에 접속하는 경우, 클라우드 스트리밍 서버(100)는 특정 클라이언트에게 제공한 컨텐츠에 대한 캐시 파일을 분산 서버(120)에 전송하고, 다른 클라이언트에게 컨텐츠를 제공하기 위하여 분산 서버(120)에 저장된 캐시 파일을 재사용할 수 있다. Cloud
도 2는 클라우드 스트리밍 서버의 구조를 도시한 블록도이다.2 is a block diagram showing the structure of a cloud streaming server.
클라우드 스트리밍 서버(100)는 수신부(200), 데이터 처리부(210), 캐시 처리부(220), 및/또는 메모리(230)를 포함할 수 있다. 어떤 실시예에서는, 클라우드 스트리밍 서버(100)에는, 하나 이상의 다른 구성요소(예: 배터리)가 추가될 수 있다. 어떤 실시예에서는, 이 구성요소들 중 일부들(예: 수신부(200), 데이터 처리부(210))은 하나의 구성요소로 통합될 수 있다.
수신부(200)는 클라이언트(예: 도 1의 110)로부터 사용자 입력(예: 키 입력)을 수신할 수 있다. 수신부(200)는 무선 통신 회로를 포함할 수 있다. 무선 통신 회로는 네트워크에 접속하여 외부 장치와의 데이터 통신을 제공할 수 있다. 예를 들어, 클라우드 스트리밍 서버(100)는 수신부(200)를 이용하여 클라이언트(예: 110)로부터 사용자 입력(예: 키 입력)을 수신할 수 있다. The
데이터 처리부(210) 및 캐시 처리부(220)는 적어도 하나의 프로세서 및 무선 통신 회로를 포함할 수 있다. 데이터 처리부(210) 및 캐시 처리부(220)는 메모리(230)에 저장된 프로그램을 실행하여 클라우드 스트리밍 서버(100)의 구성 요소를 제어할 수 있고, 다양한 데이터 처리 또는 연산을 수행할 수 있다. 데이터 처리부(210) 및 캐시 처리부(220)는 네트워크를 통하여 외부 전자 장치(예: 클라이언트(110), 분산 서버(120), 웹 서버(130))로 데이터를 전송하거나 외부 전자 장치로부터 데이터를 수신할 수 있다.The
데이터 처리부(210)는 클라이언트(110)에 컨텐츠를 제공하기 위하여 적어도 하나의 웹 브라우저(예: 소프트웨어)를 실행할 수 있다. 클라이언트(110)는 적어도 하나의 웹 브라우저 중 어느 하나와 연결될 수 있다. 웹 브라우저는 웹 서버(예: 도 1의 130)로부터 사용자 입력에 기반한 컨텐츠를 수신할 수 있다. The
일 실시예에 따르면, 데이터 처리부(210)는 웹 서버(130)로부터 수신한 컨텐츠를 클라이언트(110)에게 제공하고, 컨텐츠와 관련된 데이터를 재사용하기 위하여 캐시 파일을 생성할 수 있다. 구체적으로, 데이터 처리부(210)는 컨텐츠의 각 영역에 대한 유일 값을 추출할 수 있다. 데이터 처리부(210)는 컨텐츠의 각 영역에 대응하는 데이터를 처리하여 스트리밍 데이터를 생성할 수 있다. 유일 값 추출 및 스트리밍 데이터 생성에 대한 설명은 도 6a 내지 도 6b에 대한 설명에 의해 참조될 수 있다. 데이터 처리부(210)는 유일 값을 메모리(230)에 저장하고, 유일 값 및 스트리밍 데이터를 포함하는 캐시 파일을 생성할 수 있다. 데이터 처리부(210)는 네트워크를 통하여 스트리밍 데이터를 클라이언트(110)로 전송할 수 있다. According to an embodiment, the
캐시 처리부(220)는 네트워크를 통하여 분산 서버(120)로 데이터 처리부(210)가 생성한 캐시 파일을 전송할 수 있다. 클라우드 스트리밍 서버(100)는 캐시 처리부(220)가 분산 서버(120)로 전송한 캐시 파일을 재사용할 수 있다. 예를 들어, 클라이언트(110)가 요청한 컨텐츠의 일부 영역과 동일한 데이터가 분산 서버(120)에 저장되어 있는 경우, 캐시 처리부(220)는 분산 서버(120)로부터 클라이언트(110)가 요청한 컨텐츠의 일부 영역의 스트리밍 데이터를 수신하고, 데이터 처리부(210)는 수신된 스트리밍 데이터를 별도의 처리(예: 컨버팅, 인코딩) 없이 클라이언트(110)로 전송할 수 있다. The
메모리(230)는, 클라우드 스트리밍 서버(100)에 의해 사용되는 다양한 데이터를 저장할 수 있다. 데이터는, 예를 들어, 소프트웨어 및, 이와 관련된 명령에 대한 입력 데이터 또는 출력 데이터를 포함할 수 있다. 메모리(230)는, 휘발성 메모리 또는 비휘발성 메모리를 포함할 수 있다. 데이터 처리부(210)는 컨텐츠의 각 영역에 대한 유일 값을 추출하고, 추출된 유일 값을 메모리(230)에 저장할 수 있다. 데이터 처리부(210)는 컨텐츠의 각 영역에 대한 스트리밍 데이터를 생성하고, 생성된 스트리밍 데이터를 메모리(230)에 저장할 수 있다. 데이터 처리부(210)는 스트리밍 데이터를 클라이언트(110)로 전송한 뒤, 메모리(230)에서 삭제할 수 있다.The
도 3은 클라이언트의 구성을 도시한 블록도이다.3 is a block diagram showing the configuration of a client.
클라이언트(110)는 클라우드 컴퓨팅 시스템 기반으로 웹 브라우저를 실행할 수 있는 장치로 이동통신 단말기, 멀티미디어 단말, 유선 단말, 고정형 단말 및/또는 IP(Internet Protocol) 단말을 포함할 수 있다. 일 실시예에 따르면, 클라이언트(110)는 표시부(300), 통신부(310), 키 입력 수신부(320), 및/또는 웹 브라우저(330)를 포함할 수 있다.The
표시부(300)는 클라이언트(110)의 동작에 관련된 정보를 표시할 수 있다. 또한, 표시부(300)는 메뉴 및 사용자 입력에 기반한 컨텐츠 등을 표시할 수 있다. 표시부(300)는 디스플레이 및 클라이언트(110)를 제어하기 위한 제어 회로를 포함할 수 있다. 예를 들어, 표시부(300)는 터치를 감지하도록 설정된 터치 센서, 또는 상기 터치에 의해 발생되는 힘의 세기를 측정하도록 설정된 압력 센서를 포함할 수 있다. 일 실시예에 따르면, 표시부(300)는 선택적인 구성으로 생략될 수도 있다. 이 경우, 클라이언트(110)는 전기적으로 연결된 외부 전자 장치의 디스플레이에서 컨텐츠를 표시할 수 있다.The
통신부(310)는 사용자 입력(예: 키 입력)을 클라우드 스트리밍 서버(100)로 전송할 수 있다. 통신부(310)는 무선 통신 회로를 포함할 수 있다. 통신부(310)는 클라이언트(110)와 클라우드 스트리밍 서버(100) 간의 무선 통신 채널을 수립하고 수립된 통신 채널을 통한 통신 수행을 지원할 수 있다. 클라이언트(110)는 통신부(310)를 이용하여 클라우드 스트리밍 서버(100)와 컨텐츠와 관련된 데이터를 송수신할 수 있다.The
키 입력 수신부(320)는 사용자로부터 키 입력을 수신할 수 있다. 키 입력은 사용자 입력의 일 예시로 이해될 수 있다. 예를 들어, 키 입력은 클라이언트(110)에 대한 직접 입력 또는 외부 장치(예: 리모컨)로부터의 신호 수신을 통한 입력을 포함할 수 있다. 클라이언트(110)에 대한 직접 입력은 클라이언트(110) 외부에 탑재된 물리 버튼에 대한 직접 입력 또는 표시부(300)에 대한 터치 입력으로 이해될 수 있다. 키 입력에 대한 설명은 예시적인 것으로, 본 문서의 실시예가 이에 제한되는 것은 아니다.The key
웹 브라우저(330)는 클라이언트(110)에 의해 구동되는 소프트웨어로 이해될 수 있다. 클라이언트(110)가 클라우드 스트리밍 서버(100)에 접속하는 경우, 클라이언트(110)의 웹 브라우저(330)는 클라우드 스트리밍 서버(100)가 실행한 적어도 하나의 소프트웨어(예: 웹 브라우저) 중 어느 하나와 연결될 수 있다. 웹 브라우저(330)는 네트워크를 통하여 클라우드 스트리밍 서버(100)로부터 스트리밍 데이터를 수신하고, 수신된 스트리밍 데이터를 랜더링(rendering)할 수 있다. 랜더링된 데이터는 표시부(300)에 표시될 수 있다. The
도 4는 분산 서버를 이용한 컨텐츠 제공 방법을 설명한 흐름도이다.4 is a flowchart illustrating a content providing method using a distributed server.
동작 400을 참조하면, 클라우드 스트리밍 서버(예: 도 1의 100)의 수신부(예: 도 2의 200)는 클라이언트(예: 도 1의 110)로부터 제1 키 입력(예: 사용자 입력)을 수신할 수 있다. 예를 들어, 제1 키 입력은 클라이언트(110)에 대한 직접 입력 또는 외부 장치(예: 리모컨)로부터의 신호 수신을 통한 입력으로 이해될 수 있다. 일 실시예에 따르면, 제1 키 입력은 클라이언트(110)가 클라우드 스트리밍 서버(100)로부터 제공 받은 컨텐츠에 대한 사용자의 입력으로 이해될 수 있다.Referring to
동작 410에서, 클라우드 스트리밍 서버(100)의 데이터 처리부(예: 도 2의 210)는 제1 키 입력에 기반하여 웹 서버(예: 도 1의 130)로부터 제1 컨텐츠를 획득할 수 있다. 예를 들어, 제1 컨텐츠는 텍스트, 이미지, 및/또는 음성을 포함하는 이미지 또는 동영상으로 참조될 수 있다. In
동작 420에서, 데이터 처리부(210)는 제1 컨텐츠의 각 영역에 대한 유일 값을 추출하고 제1 컨텐츠의 각 영역에 대응하는 데이터를 처리하여 스트리밍 데이터를 획득할 수 있다. 데이터 처리부(210)가 유일 값을 추출하는 방법에 대한 설명은 도 6a 내지 도 6b에 대한 설명에 의해 참조될 수 있다. 일 실시예에 따르면, 데이터 처리부(210)는 제1 컨텐츠의 각 영역에 대응하는 데이터를 컨버팅(converting) 및/또는 인코딩(encoding)하여 스트리밍 데이터를 생성할 수 있다. 데이터 처리부(210)는 제1 컨텐츠의 데이터 포맷을 변환할 수 있다. 예를 들어, 제1 컨텐츠가 이미지인 경우, 데이터 처리부(210)는 PNG 형식으로 변환하여 압축률을 높일 수 있다. 다른 예를 들어, 데이터 처리부(210)는 PNG32bit 또는 JPEG 형식으로 변환하여 이미지의 화질을 개선시킬 수 있다. 데이터 처리부(210)는 제1 컨텐츠에 대응하는 데이터를 인코딩하여 데이터의 크기를 압축시킬 수 있다. 압축률이 높을수록 클라이언트(110)로 전송할 때 클라우드 스트리밍 서버(100)에 발생하는 부하가 적은 것으로 이해될 수 있다. 데이터 처리부(210)는 둘 이상의 영역에 대한 스트리밍 데이터를 묶어서 전송할 수도 있다.In
동작 430에서, 데이터 처리부(210)는 유일 값 및 스트리밍 데이터를 포함하는 제1 캐시 파일을 생성할 수 있다. In
동작 440에서, 데이터 처리부(210)는 제1 컨텐츠의 각 영역에 대한 유일 값을 메모리(230)에 저장할 수 있다. 또한, 데이터 처리부(210)는 제1 컨텐츠의 각 영역에 대한 스트리밍 데이터를 메모리(230)에 저장할 수 있으나, 동작 450 이후 메모리(230)에서 삭제할 수 있다. In
동작 450에서, 데이터 처리부(210)는 제1 컨텐츠에 대한 스트리밍 데이터를 클라이언트(110)로 전송할 수 있다. 클라이언트(110)의 웹 브라우저(예: 도 3의 330)는 스트리밍 데이터를 랜더링하여 표시부(예: 도 3의 300)에 출력할 수 있다.In
동작 460에서, 클라우드 스트리밍 서버(100)의 캐시 처리부(예: 도 2의 220)는 제1 캐시 파일을 분산 서버(예: 도 1의 120)로 전송할 수 있다. 분산 서버(120)에 저장되는 제1 캐시 파일은 재사용될 수 있다. 예를 들어, 웹 서버(130)가 사용자의 키 입력(예: 제2 키 입력)에 기반하여 생성한 컨텐츠(예: 제2 컨텐츠)의 일부 영역이 제1 컨텐츠의 일부 영역과 동일한 경우, 클라우드 스트리밍 서버(100)는 분산 서버(120)에 저장된 제1 캐시 파일에 포함된 스트리밍 데이터를 클라이언트(110)로 전송할 수 있다. 이 경우, 클라우드 스트리밍 서버(100)는 제2 컨텐츠의 일부 영역에 대응하는 데이터에 대한 처리(예: 컨버팅 또는 인코딩)를 생략할 수 있다. 클라우드 스트리밍 서버(100)는 분산 서버(120)에 저장된 캐시 파일을 재사용함으로써 자원을 절약할 수 있다. In
도 5는 유일 값 추출 방법을 도시한 것이다.5 shows a unique value extraction method.
웹 서버(예: 도 1의 130)는 사용자의 키 입력(예: 도 4의 제1 키 입력)에 기반하여 컨텐츠(500)를 생성할 수 있다. 컨텐츠(500)는 예를 들어, 1280*720의 바이너리 데이터로 이해될 수 있다. 클라우드 스트리밍 서버(예: 도 1의 100)의 데이터 처리부(예: 도 2의 210)는 웹 서버(130)로부터 컨텐츠(500)를 수신할 수 있다. The web server (eg, 130 of FIG. 1 ) may generate the
데이터 처리부(210)는 컨텐츠(500)를 복수의 영역으로 분할할 수 있다. 예를 들어, 참조 번호 510과 같이, 데이터 처리부(210)는 컨텐츠(500)를 4개의 영역을 분할할 수 있다. 각 영역은 640*360의 바이너리 데이터로 이해될 수 있다. 분할 영역의 개수는 예시적인 것으로, 본 문서의 실시예가 이에 제한되는 것은 아니다. 예를 들어, 분할 영역은 4개 이상일 수 있다.The
데이터 처리부(210)는 컨텐츠(500)의 각 영역을 스캔하여 참조 번호 520과 같이 각 영역에 대한 해쉬 값을 생성할 수 있다. 컨텐츠(500)의 각 영역을 스캔하여 생성된 해쉬 값은 해당 영역에 대한 고유 값으로 이해될 수 있다. 예를 들어, 컨텐츠(예: 제1 컨텐츠)의 일부 영역에 대한 해쉬 값이 다른 컨텐츠(예: 제2 컨텐츠)의 일부 영역에 대한 해쉬 값과 동일한 경우, 양 컨텐츠의 일부 영역에 대응하는 데이터는 동일한 것으로 이해될 수 있다. 이하에서 각 영역에 대한 유일 값은 해당 영역을 스캔하여 생성된 해쉬 값으로 참조될 수 있다. The
도 6a는 일 실시예에 따른 유일 값 추출을 도시한 것이다.6A illustrates unique value extraction according to an embodiment.
참조 번호 600a는 웹 서버(예: 도 1의 130)가 사용자의 키 입력(예: 도 4의 제1 키 입력)에 기반하여 생성한 제1 컨텐츠(예: 도 4의 제1 컨텐츠)로 이해될 수 있다. 데이터 처리부(예: 도 2의 210)는 제1 컨텐츠(600a)를 웹 서버(130)로부터 수신하여 복수의 영역으로 분할할 수 있다. 데이터 처리부(210)는 제1 컨텐츠(600a)의 각 영역에 대하여 참조 번호 600b 내지 참조 번호 600d에 따른 스캔을 수행할 수 있다. 예를 들어, 데이터 처리부(210)는 제1 영역(610)에 대한 스캔을 수행할 수 있다. 데이터 처리부(210)는 제1 영역(610)에 대한 스캔을 수행하여 제1 유일 값을 추출할 수 있다. 데이터 처리부(210)는 제1 영역(610)에 대한 스캔을 완료한 뒤, 제2 영역(612)에 대한 스캔을 수행할 수 있다. 데이터 처리부(210)는 순차적으로 제1 영역 내지 제4 영역(610, 612, 614, 616)에 대한 스캔을 수행하여 각 영역에 대한 유일 값을 추출할 수 있다.
도 6b는 일 실시예에 따른 스트리밍 데이터 전송을 도시한 것이다.6B illustrates streaming data transmission according to an embodiment.
참조 번호 650a를 참조하면, 데이터 처리부(예: 도 2의 210)는 도 6a의 제1 컨텐츠의 각 영역에 대한 스캔을 수행하여 제1 유일 값 내지 제4 유일 값(620, 622, 624, 626)을 추출할 수 있다. 데이터 처리부(210)는 각 영역에 대한 제1 유일 값 내지 제4 유일 값(620, 622, 624, 626)을 메모리(예: 도 2의 230)에 저장할 수 있다. Referring to reference numeral 650a , the data processing unit (eg, 210 of FIG. 2 ) scans each region of the first content of FIG. 6A to perform first to fourth
참조 번호 650b를 참조하면, 데이터 처리부(210)는 각 영역에 대응하는 데이터를 처리(예: 컨버팅 또는 인버팅)하여 스트리밍 데이터(예: 스트리밍 데이터(640))를 생성할 수 있다. 일 실시예에 따르면, 데이터 처리부(210)는 제1 영역(610)에 대응하는 데이터를 처리하여 스트리밍 데이터(640)를 생성할 수 있다. 예를 들어, 데이터 처리부(210)는 제1 영역에 대응하는 데이터의 데이터 포맷을 변환할 수 있다. 다른 예를 들어, 데이터 처리부(210)는 제1 영역에 대응하는 데이터를 인코딩하여 데이터 용량을 압축할 수 있다. 데이터 처리부(210)는 제1 영역에 대한 스트리밍 데이터(640)를 클라이언트(110)로 전송할 수 있다. 일 실시예에 따르면, 데이터 처리부(210)는 네트워크 환경(예: 네트워크 대역폭)에 따라 복수의 스트리밍 데이터들을 묶어서 전송할 수도 있다. 예를 들어, 데이터 처리부(210)는 제1 영역(610) 및 제2 영역(예: 도 6a의 612)에 대한 스트리밍 데이터를 묶어서 클라이언트(110)로 전송할 수 있다. Referring to reference numeral 650b, the
일 실시예에 따르면, 데이터 처리부(210)는 각 영역(610, 612, 614, 616)에 대한 유일 값 및 스트리밍 데이터를 포함하는 캐시 파일(예: 도 4의 제1 캐시 파일)을 생성할 수 있다. 데이터 처리부(210)는 각 영역에 대한 유일 값을 메모리(예: 도 2의 230)에 저장할 수 있다. 캐시 처리부(예: 도 2의 220)는 캐시 파일을 분산 서버(예: 도 1의 120)로 전송할 수 있다. According to an embodiment, the
도 7은 분산 서버를 이용한 컨텐츠 제공 방법을 설명한 흐름도이다.7 is a flowchart illustrating a content providing method using a distributed server.
동작 700을 참조하면, 클라우드 스트리밍 서버(예: 도 1의 100)의 수신부(예: 도 2의 200)는 클라이언트(예: 도 1의 110)로부터 제2 키 입력을 수신할 수 있다. 제2 키 입력은 도 4의 제1 키 입력과 다른 키 입력으로 이해될 수 있다. Referring to
동작 710에서, 데이터 처리부(예: 도 2의 210)는 웹 서버(예: 도 1의 130)로부터 제2 키 입력에 기반한 제2 컨텐츠를 획득할 수 있다. In
동작 720에서, 데이터 처리부(210)는 제2 컨텐츠의 각 영역에 대한 유일 값을 추출할 수 있다. In
동작 730에서, 데이터 처리부(210)는 제2 컨텐츠의 각 영역에 대한 유일 값을 메모리(예: 도 2의 230)에 저장된 유일 값과 비교할 수 있다. 예를 들어, 메모리(230)에는 도 4의 제1 컨텐츠의 각 영역에 대한 유일 값이 저장되어 있을 수 있다. 이 경우, 데이터 처리부(210)는 제2 컨텐츠의 각 영역에 대한 유일 값과 제1 컨텐츠의 각 영역에 대한 유일 값을 비교할 수 있다. 동작 730에 대한 설명은 도 8b에 대한 설명에 의해 참조될 수 있다.In
동작 740에서, 데이터 처리부(210)는 제2 컨텐츠의 일부 영역에 대한 유일 값이 메모리(230)에 저장된 유일 값과 동일한지 확인할 수 있다. 예를 들어, 제2 컨텐츠의 제1 영역 내지 제3 영역의 유일 값은 제1 컨텐츠의 제1 영역 내지 제3 영역의 유일 값과 동일할 수 있다. 제2 컨텐츠의 제4 영역의 유일 값은 제1 컨텐츠의 제4 영역의 유일 값과 상이할 수 있다. In
데이터 처리부(210)는 제2 컨텐츠의 일부 영역(예: 제1 영역 내지 제3 영역)의 유일 값이 메모리(230)에 저장된 유일 값과 동일한 경우, 동작을 종료할 수 있다(740-YES). 이 경우, 데이터 처리부(210)는 제2 컨텐츠의 일부 영역(예: 제1 영역 내지 제3 영역)에 대한 스트리밍 데이터를 클라이언트(110)로 전송하지 않을 수 있다. 예를 들어, 클라이언트(110)는 표시부(예: 도 3의 300)의 제1 영역 내지 제3 영역에서 기존과 동일한 이미지(또는 텍스트)를 표시할 수 있다. The
데이터 처리부(210)는 제2 컨텐츠의 일부 영역(예: 제4 영역)의 유일 값이 메모리(230)에 저장된 유일 값과 동일하지 않은 경우(740-NO), 동작 750으로 진행할 수 있다. 동작 750에서, 캐시 처리부(예: 도 2의 230)는 분산 서버(예: 도 1의 120)를 통하여 제2 컨텐츠의 일부 영역(예: 제4 영역)의 유일 값과 동일한 유일 값을 검색할 수 있다. 예를 들어, 클라우드 스트리밍 서버(100)가 클라이언트(110) 또는 다른 클라이언트에게 제2 컨텐츠의 일부 영역(예: 제4 영역)이 포함된 컨텐츠를 제공한 이력이 있는 경우, 분산 서버(120)에는 제2 컨텐츠의 일부 영역(예: 제4 영역)의 유일 값이 저장되어 있을 수 있다. 제2 컨텐츠의 일부 영역(예: 제4 영역)의 유일 값은 제2 컨텐츠의 일부 영역(예: 제4 영역)의 스트리밍 데이터와 함께 분산 서버(120)에 캐시 파일로 저장될 수 있다. When the unique value of the partial region (eg, the fourth region) of the second content is not the same as the unique value stored in the memory 230 ( 740 - NO), the
동작 760에서, 캐시 처리부(220)는 분산 서버(120)를 통하여 제2 컨텐츠의 일부 영역과 동일한 유일 값을 확인할 수 있다. 캐시 처리부(220)는 분산 서버(120)를 통하여 제2 컨텐츠의 일부 영역(예: 제4 영역)과 동일한 유일 값이 확인되는 경우(760-YES), 동작 770으로 진행할 수 있다. In
동작 770에서, 캐시 처리부(220)는 분산 서버(120)로부터 제2 컨텐츠의 일부 영역에 대한 스트리밍 데이터를 수신할 수 있다. 제2 컨텐츠의 일부 영역(예: 제4 영역)에 대한 스트리밍 데이터는 유일 값과 함께 캐시 파일로 분산 서버(120)에 저장되어 있을 수 있다. 캐시 처리부(220)는 스트리밍 데이터를 수신한 뒤, 동작 790으로 진행할 수 있다.In
데이터 처리부(210)는 분산 서버(120)를 통하여 제2 컨텐츠의 일부 영역과 동일한 유일 값이 확인되지 않는 경우(760-NO), 동작 780으로 진행할 수 있다. 동작 780에서, 데이터 처리부(210)는 제2 컨텐츠의 일부 영역(예: 제4 영역)에 대응하는 데이터를 처리하여 제2 컨텐츠의 일부 영역(예: 제4 영역)에 대한 스트리밍 데이터를 생성할 수 있다. 스트리밍 데이터 생성에 대한 설명은 도 6a 내지 도 6b에 대한 설명에 의해 참조될 수 있다. 데이터 처리부(210)는 스트리밍 데이터를 생성한 뒤, 동작 790으로 진행할 수 있다. When the same unique value as the partial region of the second content is not confirmed through the distributed server 120 (760-NO), the
동작 790에서, 데이터 처리부(210)는 제2 컨텐츠의 일부 영역에 대한 스트리밍 데이터를 클라이언트(110)로 전송할 수 있다. 예를 들어, 제2 컨텐츠의 일부 영역(예: 제4 영역)에 대한 스트리밍 데이터는 캐시 처리부(220)가 분산 서버(120)로부터 수신한 것으로 이해될 수 있다. 다른 예를 들어, 제2 컨텐츠의 일부 영역(예: 제4 영역)에 대한 스트리밍 데이터는 데이터 처리부(210)가 제2 컨텐츠의 일부 영역(예: 제4 영역)에 대응하는 데이터를 처리하여 생성된 것으로 이해될 수 있다. In
동작 730 내지 동작 790을 통하여, 클라우드 스트리밍 서버(100)는 분산 서버(120)에 저장된 캐시 파일을 재사용될 수 있다.Through
도 8a 및 8b는 분산 서버를 이용한 데이터 전송을 도시한 것이다.8A and 8B show data transmission using a distributed server.
도 8a를 참조하면, 참조 번호 800a는 웹 서버(예: 도 1의 130)가 사용자의 키 입력(예: 도 7의 제2 키 입력)에 기반하여 생성한 제2 컨텐츠(예: 도 7의 제2 컨텐츠)로 이해될 수 있다. 데이터 처리부(예: 도 2의 210)는 제2 컨텐츠(800a)의 각 영역(810, 812, 814, 816)에 대하여 참조 번호 800b 내지 800d에 따른 스캔을 수행하고 각 영역에 대한 유일 값을 추출할 수 있다. 예를 들어, 제2 컨텐츠(800a)의 제1 영역 내지 제3 영역(810, 812, 814)에 대응하는 데이터는 도 6a의 제1 영역 내지 제3 영역(610, 612, 614)에 대응하는 데이터와 동일한 것으로 이해될 수 있다. 제2 컨텐츠(800a)의 제4 영역(816)에 대응하는 데이터는 도 6a의 제4 영역(616)과 상이한 것으로 이해될 수 있다. 예를 들어, 제2 컨텐츠(800a)의 제4 영역(816)은 도 6a의 제4 영역과 1 비트(818)에 있어 상이할 수 있다. 1 비트(818) 차이로 인하여, 제2 컨텐츠의 제4 영역(816)의 유일 값은 제1 컨텐츠(예: 도 6a의 600a)의 제4 영역의 유일 값과 상이할 수 있다.Referring to FIG. 8A ,
도 8b를 참조하면, 데이터 처리부(210)는 제2 컨텐츠(800a)의 각 영역에 대한 유일 값(820, 822, 824, 826)을 메모리(예: 도 2의 230)에 저장된 유일 값과 비교할 수 있다. 참조 번호 850a를 참조하면, 제1 컨텐츠(600a)의 각 영역에 대한 유일값(620, 622, 624, 626)은 메모리(230)에 저장되어 있을 수 있다. Referring to FIG. 8B , the
제2 컨텐츠(800a)의 일부 영역(810, 812, 814)의 유일 값(820, 822, 824)은 제1 컨텐츠(600a)의 일부 영역(610, 612, 614)의 유일 값(610, 612, 614)과 동일할 수 있다. 제2 컨텐츠(800a)의 일부 영역(816)의 유일 값(826)은 제1 컨텐츠(600a)의 일부 영역(616)의 유일 값(616)과 상이할 수 있다. 이 경우, 데이터 처리부(210)는 제2 컨텐츠(800a)의 일부 영역(826)의 유일 값(826)과 동일한 유일 값을 메모리(230)에서 확인하지 못할 수 있다.
데이터 처리부(210)가 메모리(230)에서 제2 컨텐츠(800a)의 일부 영역(816)의 유일 값(826)과 동일한 유일 값을 확인하지 못하는 경우, 캐시 처리부(예: 도 2의 220)는 분산 서버(120)를 통하여 제5 유일 값(826)과 동일한 유일 값을 검색할 수 있다. 캐시 처리부(220)는 분산 서버(120)에 제5 유일 값(826)과 동일한 유일 값이 확인되는 경우, 제2 컨텐츠(800a)의 제4 영역(816)에 대한 스트리밍 데이터를 수신할 수 있다. 제2 컨텐츠(800a)의 제4 영역(816)에 대한 스트리밍 데이터는 제5 유일 값과 함께 분산 서버(120)에 캐시 파일로 저장되어 있을 수 있다. 데이터 처리부(210)는 분산 서버(120)로부터 수신된 스트리밍 데이터를 클라이언트(110)로 전송할 수 있다.When the
캐시 처리부(220)는 분산 서버(120)를 통하여 제5 유일 값(826)과 동일한 유일 값이 확인되지 않는 경우, 검색을 종료할 수 있다. 이 경우, 데이터 처리부(210)는 제2 컨텐츠(800a)의 제4 영역(816)에 대응하는 데이터를 처리(예: 컨버팅 또는 인코딩)하여 스트리밍 데이터를 생성할 수 있다. 데이터 처리부(210)는 생성된 스트리밍 데이터를 클라이언트(110)로 전송할 수 있다. When a unique value identical to the fifth
데이터 처리부(210)는 제2 컨텐츠의 제4 영역(816)에 대한 스트리밍 데이터 및 제5 유일 값(826)을 포함하는 제2 캐시 파일을 생성할 수 있다. 데이터 처리부(210)는 제5 유일 값(826)을 메모리(230)에 저장할 수 있다. 캐시 처리부(220)는 제2 캐시 파일을 분산 서버(120)로 전송할 수 있다. 제2 캐시 파일은 컨텐츠 제공을 위하여 재사용될 수 있다. The
도 9는 복수의 클라이언트가 접속한 경우 일 실시예에 따른 컨텐츠 제공 방법을 도시한 것이다.9 illustrates a content providing method according to an embodiment when a plurality of clients connect.
클라우드 스트리밍 서버(예: 도 1의 100)는 복수의 클라이언트(110a, 110b)(예: 도 1의 110)와 네트워크를 통하여 연결될 수 있다. 클라우드 스트리밍 서버(100)는 복수의 소프트웨어(예: 웹 브라우저)를 실행하고, 복수의 클라이언트(110a, 110b)를 각각 복수의 소프트웨어와 연결할 수 있다. 예를 들어, 클라우드 스트리밍 서버(100)는 제1 웹 브라우저(910)와 제2 웹 브라우저(915)를 실행할 수 있다. 클라우드 스트리밍 서버(100)는 제1 클라이언트(110a)를 제1 웹 브라우저(910)에, 제2 클라이언트(110b)를 제2 웹 브라우저(915)에 연결할 수 있다. 제1 클라이언트(110a) 및 제2 클라이언트(110b)는 제1 웹 브라우저(910) 및 제2 웹 브라우저(915)에 각각 연결되어, 웹 서버(예: 도 1의 130)가 생성한 컨텐츠를 제공 받을 수 있다. The cloud streaming server (eg, 100 in FIG. 1 ) may be connected to a plurality of
클라우드 스트리밍 서버(100)는 제1 클라이언트(110a) 및/또는 제2 클라이언트(110b)에게 컨텐츠를 제공하기 위하여 분산 서버(예: 도 1의 120)에 저장된 캐시 파일을 재사용할 수 있다. The
일 실시예에 따르면, 클라우드 스트리밍 서버(100)의 데이터 처리부(예: 도 2의 210)는 제1 클라이언트(110a)의 키 입력에 기반하여 웹 서버(130)가 생성한 제1 컨텐츠를 제1 클라이언트(110a)에게 제공할 수 있다. 예를 들어, 데이터 처리부(210)는 제1 컨텐츠의 각 영역에 대한 유일 값을 추출하고 각 영역에 대응하는 데이터를 처리하여 스트리밍 데이터를 생성할 수 있다. 데이터 처리부(210)는 유일 값 및 스트리밍 데이터를 포함하는 제1 캐시 파일을 생성하고, 캐시 처리부(예: 도 2의 220)는 제1 캐시 파일을 분산 서버(120)로 전송할 수 있다.According to an embodiment, the data processing unit (eg, 210 in FIG. 2 ) of the
데이터 처리부(210)는 제2 클라이언트(110b)의 키 입력에 기반하여 웹 서버(130)가 생성한 제2 컨텐츠를 제2 클라이언트(110b)에게 제공할 수 있다. 제2 컨텐츠의 일부 영역(예: 제1 영역)은 제1 컨텐츠의 일부 영역(예: 제1 영역)과 동일한 것으로 이해될 수 있다. 제2 컨텐츠의 일부 영역(예: 제2 영역)은 제1 컨텐츠의 일부 영역(예: 제2 영역)과 상이한 것으로 이해될 수 있다. 데이터 처리부(210)는 제2 컨텐츠의 각 영역에 대한 유일 값을 추출할 수 있다. 일 실시예에 따르면, 캐시 처리부(220)는 분산 서버(120)를 통하여 제2 컨텐츠의 일부 영역(예: 제1 영역)과 동일한 유일 값을 검색할 수 있다. 예를 들어, 캐시 처리부(220)는 분산 서버(120)에 저장된 제1 캐시 파일의 유일 값 중 일부가 제2 컨텐츠의 일부 영역(예: 제1 영역)의 유일 값과 동일한 것을 확인할 수 있다. 캐시 처리부(220)는 분산 서버(120)로부터 제2 컨텐츠의 일부 영역(예: 제1 영역)의 스트리밍 데이터를 수신할 수 있다. 데이터 처리부(210)는 제2 컨텐츠의 일부 영역(예: 제1 영역)의 스트리밍 데이터를 제2 클라이언트(110b)로 전송할 수 있다. 일 실시예에 따르면, 캐시 처리부(220)는 분산 서버(120)를 통하여 제2 컨텐츠의 일부 영역(예: 제2 영역)과 동일한 유일 값을 검색할 수 있다. 캐시 처리부(220)는 분산 서버(120)에서 제2 컨텐츠의 일부 영역(예: 제2 영역)의 유일 값과 동일한 유일 값을 확인하지 못할 수 있다. 이 경우, 캐시 처리부(220)는 검색을 종료하고, 데이터 처리부(210)는 제2 컨텐츠의 일부 영역(예: 제2 영역)에 대응하는 데이터를 처리하여 스트리밍 데이터를 생성할 수 있다. 데이터 처리부(210)는 생성된 스트리밍 데이터를 제2 클라이언트(110b)로 전송할 수 있다. 데이터 처리부(210)는 제2 컨텐츠의 일부 영역(예: 제1 영역)의 스트리밍 데이터와 제2 컨텐츠의 일부 영역(예: 제2 영역)의 스트리밍 데이터를 묶어서 전송할 수도 있다. The
클라이언트의 수는 예시적인 것으로, 하나 이상의 클라이언트(예: 도 1의 클라이언트(110))가 클라우드 스트리밍 서버(100)에 더 접속할 수 있다. 클라우드 스트리밍 서버(100)는 분산 서버(120)를 이용하여 다른 클라이언트에게 제공했던 컨텐츠의 스트리밍 데이터를 재사용할 수 있다. 예를 들어, 클라우드 스트리밍 서버(100)는 과거에 특정 클라이언트에게 제공했던 컨텐츠의 일부 영역을 포함하는 컨텐츠를 다른 클라이언트에게 제공하는 경우, 분산 서버(120)에 저장된 캐시 파일을 재사용함으로써 자원을 절약할 수 있다.The number of clients is exemplary, and one or more clients (eg, the
일 실시예에 따르면, 제2 클라이언트(110b)는 제1 클라이언트(110a)와 제1 웹 브라우저(910)의 연결이 해제된 이후 클라우드 스트리밍 서버(100)에 접속할 수 있다. 도 9에 도시된 바와 달리, 클라우드 스트리밍 서버(100)는 제2 클라이언트(110b)를 제1 웹 브라우저(910)와 연결할 수 있다. 이 경우에도, 클라우드 스트리밍 서버(100)는 제2 클라이언트(110b)가 요청하는 컨텐츠를 제공하기 위하여 분산 서버(120)에 저장된 캐시 파일을 재사용할 수 있다.According to an embodiment, the
Claims (28)
클라이언트의 키 입력을 수신하는 수신부;
메모리;
캐시 처리부; 및
데이터 처리부;를 포함하고,
상기 수신부는 상기 클라이언트로부터 제1 키 입력을 수신하고,
상기 데이터 처리부는, 상기 제1 키 입력에 기반하여, 웹 서버로부터 제1 컨텐츠를 획득하고, 상기 제1 컨텐츠의 각 영역에 대한 유일 값을 추출하고, 상기 제1 컨텐츠의 각 영역에 대응하는 데이터를 처리하여 스트리밍 데이터를 획득하고, 상기 유일 값 및 상기 스트리밍 데이터를 포함하는 제1 캐시 파일을 생성하고, 상기 제1 컨텐츠의 각 영역에 대한 유일 값을 상기 메모리에 저장하고, 상기 스트리밍 데이터를 상기 클라이언트 전송하고,
상기 캐시 처리부는, 상기 제1 캐시 파일을 분산 서버로 전송하는,
클라우드 스트리밍 서버.
In the cloud streaming server,
a receiver for receiving a key input from a client;
Memory;
cache processing unit; and
data processing unit;
The receiving unit receives a first key input from the client,
The data processing unit may be configured to obtain first content from a web server based on the first key input, extract a unique value for each area of the first content, and data corresponding to each area of the first content to obtain streaming data, generate a first cache file including the unique value and the streaming data, store a unique value for each region of the first content in the memory, and store the streaming data in the memory send the client,
The cache processing unit transmits the first cache file to a distributed server,
Cloud streaming server.
상기 수신부는 상기 클라이언트로부터 제2 키 입력을 수신하고,
상기 데이터 처리부는, 상기 제2 키 입력에 기반하여 상기 웹 서버로부터 제2 컨텐츠를 획득하고, 상기 제2 컨텐츠의 각 영역에 대한 유일 값을 추출하고, 상기 제2 컨텐츠의 각 영역에 대한 유일 값을 상기 메모리에 저장된 유일 값과 비교하고,
상기 캐시 처리부는 상기 제2 컨텐츠의 일부 영역의 유일 값이 상기 메모리에 저장된 유일 값과 상이한 경우, 상기 분산 서버를 통하여 상기 제2 컨텐츠의 일부 영역의 유일 값과 동일한 유일 값을 검색하는,
클라우드 스트리밍 서버.
According to claim 1,
The receiving unit receives a second key input from the client,
The data processing unit obtains second content from the web server based on the second key input, extracts a unique value for each area of the second content, and a unique value for each area of the second content is compared with the unique value stored in the memory,
When the unique value of the partial region of the second content is different from the unique value stored in the memory, the cache processing unit searches for a unique value equal to the unique value of the partial region of the second content through the distributed server;
Cloud streaming server.
상기 캐시 처리부는, 상기 분산 서버를 통하여 상기 제2 컨텐츠의 일부 영역의 유일 값과 동일한 유일 값이 확인되면, 상기 분산 서버로부터 상기 제2 컨텐츠의 일부 영역에 대한 스트리밍 데이터를 수신하고,
상기 데이터 처리부는, 상기 제2 컨텐츠의 일부 영역에 대한 스트리밍 데이터를 상기 클라이언트로 전송하는,
클라우드 스트리밍 서버.
3. The method of claim 2,
The cache processing unit, when the same unique value as the unique value of the partial region of the second content is confirmed through the distributed server, receives streaming data for the partial region of the second content from the distributed server,
The data processing unit transmits streaming data for a partial area of the second content to the client,
Cloud streaming server.
상기 캐시 처리부는, 상기 분산 서버를 통하여 상기 제2 컨텐츠의 일부 영역의 유일 값과 동일한 유일 값이 확인되지 않으면, 상기 검색을 종료하고,
상기 데이터 처리부는, 상기 제2 컨텐츠의 일부 영역에 대응하는 데이터를 처리하여 상기 제2 컨텐츠의 일부 영역에 대한 스트리밍 데이터를 생성하고, 상기 제2 컨텐츠의 일부 영역에 대한 스트리밍 데이터를 상기 클라이언트로 전송하는,
클라우드 스트리밍 서버.
3. The method of claim 2,
The cache processing unit terminates the search if a unique value identical to the unique value of the partial region of the second content is not confirmed through the distributed server;
The data processing unit generates streaming data for a partial region of the second content by processing data corresponding to a partial region of the second content, and transmits streaming data for a partial region of the second content to the client doing,
Cloud streaming server.
상기 데이터 처리부는 상기 제2 컨텐츠의 일부 영역의 유일 값 및 상기 제2 컨텐츠의 일부 영역에 대한 스트리밍 데이터를 포함하는 제2 캐시 파일을 생성하고,
상기 데이터 처리부는 상기 제2 컨텐츠의 일부 영역의 유일 값을 상기 메모리에 저장하고,
상기 캐시 처리부는 상기 제2 캐시 파일을 상기 분산 서버로 전송하는,
클라우드 스트리밍 서버.
5. The method of claim 4,
The data processing unit generates a second cache file including a unique value of a partial region of the second content and streaming data for a partial region of the second content,
The data processing unit stores the unique value of the partial region of the second content in the memory,
The cache processing unit transmits the second cache file to the distributed server,
Cloud streaming server.
상기 데이터 처리부는 상기 제1 컨텐츠의 각 영역에 대응하는 데이터에 대하여 컨버팅(converting) 및 인코딩(enconding) 중 적어도 하나를 수행하여 상기 스트리밍 데이터를 획득하는,
클라우드 스트리밍 서버.
According to claim 1,
The data processing unit obtains the streaming data by performing at least one of converting and encoding on data corresponding to each area of the first content,
Cloud streaming server.
상기 데이터 처리부는 상기 컨버팅(converting)을 수행하여 상기 제1 컨텐츠의 각 영역에 대응하는 데이터를 PNG, PNG32bit, 및 JPEG 중 적어도 하나로 변환하는,
클라우드 스트리밍 서버.
7. The method of claim 6,
The data processing unit converts data corresponding to each area of the first content by performing the converting into at least one of PNG, PNG32bit, and JPEG;
Cloud streaming server.
상기 데이터 처리부는,
상기 스트리밍 데이터를 상기 메모리에 저장하고,
상기 스트리밍 데이터를 상기 클라이언트로 전송한 뒤, 상기 메모리에 저장된 스트리밍 데이터를 삭제하는,
클라우드 스트리밍 서버.
7. The method of claim 6,
The data processing unit,
storing the streaming data in the memory;
After transmitting the streaming data to the client, deleting the streaming data stored in the memory,
Cloud streaming server.
상기 데이터 처리부는, 상기 제2 컨텐츠의 일부 영역의 유일 값 및 스트리밍 데이터를 포함하는 제2 캐시 파일을 생성하고, 상기 제2 컨텐츠의 일부 영역의 유일 값을 상기 메모리에 저장하고,
상기 캐시 처리부는, 상기 제2 캐시 파일을 상기 분산 서버로 전송하는,
클라우드 스트리밍 서버.
5. The method of claim 4,
The data processing unit generates a second cache file including a unique value of a partial region of the second content and streaming data, and stores the unique value of a partial region of the second content in the memory;
The cache processing unit transmits the second cache file to the distributed server,
Cloud streaming server.
신규 클라이언트가 상기 클라우드 스트리밍 서버에 접속하고,
상기 수신부는 상기 신규 클라이언트로부터 제3 키 입력을 수신하고,
상기 데이터 처리부는, 상기 제3 키 입력에 기반하여 상기 웹 서버로부터 제3 컨텐츠를 획득하고, 상기 제3 컨텐츠의 각 영역에 대한 유일 값을 추출하고,
상기 캐시 처리부는, 상기 분산 서버를 통하여 상기 제3 컨텐츠의 일부 영역의 유일 값과 동일한 유일 값을 검색하고,
상기 신규 클라이언트는 상기 클라이언트와 상이한,
클라우드 스트리밍 서버.
According to claim 1,
A new client accesses the cloud streaming server,
The receiving unit receives a third key input from the new client,
The data processing unit obtains third content from the web server based on the third key input, extracts a unique value for each area of the third content,
The cache processing unit searches for a unique value identical to the unique value of the partial region of the third content through the distributed server,
the new client is different from the client;
Cloud streaming server.
상기 캐시 처리부는, 상기 분산 서버를 통하여 상기 제3 컨텐츠의 일부 영역의 유일 값과 동일한 유일 값이 확인되면, 상기 분산 서버로부터 상기 제3 컨텐츠의 일부 영역에 대한 스트리밍 데이터를 수신하고,
상기 데이터 처리부는, 상기 제3 컨텐츠의 일부 영역에 대한 스트리밍 데이터를 상기 신규 클라이언트로 전송하는,
클라우드 스트리밍 서버.
11. The method of claim 10,
The cache processing unit, when the same unique value as the unique value of the partial region of the third content is confirmed through the distributed server, receives streaming data for the partial region of the third content from the distributed server,
The data processing unit transmits streaming data for a partial area of the third content to the new client,
Cloud streaming server.
상기 캐시 처리부는, 상기 분산 서버를 통하여 상기 제3 컨텐츠의 일부 영역의 유일 값과 동일한 유일 값이 확인되지 않으면, 상기 검색을 종료하고,
상기 데이터 처리부는, 상기 제3 컨텐츠의 일부 영역에 대응하는 데이터를 처리하여 상기 제3 컨텐츠의 일부 영역에 대한 스트리밍 데이터를 생성하고, 상기 제3 컨텐츠의 일부 영역에 대한 스트리밍 데이터를 상기 클라이언트로 전송하는,
클라우드 스트리밍 서버.
11. The method of claim 10,
The cache processing unit terminates the search if a unique value identical to the unique value of the partial region of the third content is not confirmed through the distributed server;
The data processing unit generates streaming data for a partial region of the third content by processing data corresponding to a partial region of the third content, and transmits streaming data for a partial region of the third content to the client doing,
Cloud streaming server.
상기 데이터 처리부는,
제1 웹 브라우저 및 제2 웹 브라우저를 포함하는 복수의 웹 브라우저를 실행하고,
상기 클라이언트를 상기 제1 웹 브라우저에 연결하고, 상기 신규 클라이언트를 상기 제2 웹 브라우저에 연결하는,
클라우드 스트리밍 서버.
11. The method of claim 10,
The data processing unit,
Execute a plurality of web browsers including a first web browser and a second web browser,
connecting the client to the first web browser and connecting the new client to the second web browser,
Cloud streaming server.
상기 데이터 처리부는,
제1 웹 브라우저를 실행하고,
상기 클라이언트를 상기 제1 웹 브라우저에 연결하고,
상기 제1 웹 브라우저와 상기 클라이언트의 연결이 해제된 경우, 상기 신규 클라이언트를 상기 제1 웹 브라우저와 연결하는,
클라우드 스트리밍 서버.
11. The method of claim 10,
The data processing unit,
Run a first web browser,
connecting the client to the first web browser;
When the connection between the first web browser and the client is disconnected, connecting the new client with the first web browser,
Cloud streaming server.
클라이언트로부터 제1 키 입력을 수신하는 동작;
상기 제1 키 입력에 기반하여, 웹 서버로부터 제1 컨텐츠를 획득하는 동작;
상기 제1 컨텐츠의 각 영역에 대한 유일 값을 추출하는 동작;
상기 제1 컨텐츠의 각 영역에 대응하는 데이터를 처리하여 스트리밍 데이터를 획득하는 동작;
상기 유일 값 및 상기 스트리밍 데이터를 포함하는 제1 캐시 파일을 생성하는 동작;
상기 제1 컨텐츠의 각 영역에 대한 유일 값을 메모리에 저장하는 동작;
상기 스트리밍 데이터를 상기 클라이언트 전송하는 동작; 및
상기 제1 캐시 파일을 분산 서버로 전송하는 동작;을 포함하는,
방법.
In the operating method of the cloud streaming server,
receiving a first key input from a client;
obtaining first content from a web server based on the input of the first key;
extracting a unique value for each area of the first content;
processing data corresponding to each area of the first content to obtain streaming data;
generating a first cache file including the unique value and the streaming data;
storing a unique value for each area of the first content in a memory;
transmitting the streaming data to the client; and
Including; transmitting the first cache file to a distributed server;
Way.
상기 클라이언트로부터 제2 키 입력을 수신하는 동작;
상기 제2 키 입력에 기반하여 상기 웹 서버로부터 제2 컨텐츠를 획득하는 동작;
상기 제2 컨텐츠의 각 영역에 대한 유일 값을 추출하는 동작;
상기 제2 컨텐츠의 각 영역에 대한 유일 값을 상기 메모리에 저장된 유일 값과 비교하는 동작; 및
상기 제2 컨텐츠의 일부 영역의 유일 값이 상기 메모리에 저장된 유일 값과 상이한 경우, 상기 분산 서버를 통하여 상기 제2 컨텐츠의 일부 영역의 유일 값과 동일한 유일 값을 검색하는 동작;을 더 포함하는,
방법.
16. The method of claim 15,
receiving a second key input from the client;
obtaining second content from the web server based on the second key input;
extracting a unique value for each area of the second content;
comparing the unique value of each region of the second content with the unique value stored in the memory; and
When the unique value of the partial region of the second content is different from the unique value stored in the memory, the operation of searching for a unique value identical to the unique value of the partial region of the second content through the distributed server;
Way.
상기 분산 서버를 통하여 상기 제2 컨텐츠의 일부 영역의 유일 값과 동일한 유일 값이 확인되면, 상기 분산 서버로부터 상기 제2 컨텐츠의 일부 영역에 대한 스트리밍 데이터를 수신하는 동작; 및
상기 제2 컨텐츠의 일부 영역에 대한 스트리밍 데이터를 상기 클라이언트로 전송하는 동작;을 더 포함하는,
방법.
17. The method of claim 16,
receiving streaming data for the partial region of the second content from the distributed server when a unique value identical to the unique value of the partial region of the second content is confirmed through the distributed server; and
The method further comprising: transmitting streaming data for a partial area of the second content to the client;
Way.
상기 분산 서버를 통하여 상기 제2 컨텐츠의 일부 영역의 유일 값과 동일한 유일 값이 확인되지 않으면, 상기 검색을 종료하는 동작;
상기 제2 컨텐츠의 일부 영역에 대응하는 데이터를 처리하여 상기 제2 컨텐츠의 일부 영역에 대한 스트리밍 데이터를 생성하는 동작; 및
상기 제2 컨텐츠의 일부 영역에 대한 스트리밍 데이터를 상기 클라이언트로 전송하는 동작;을 더 포함하는,
방법.
17. The method of claim 16,
terminating the search when a unique value identical to the unique value of the partial region of the second content is not identified through the distributed server;
generating streaming data for the partial region of the second content by processing data corresponding to the partial region of the second content; and
The method further comprising: transmitting streaming data for a partial area of the second content to the client;
Way.
상기 제2 컨텐츠의 일부 영역의 유일 값 및 상기 제2 컨텐츠의 일부 영역에 대한 스트리밍 데이터를 포함하는 제2 캐시 파일을 생성하는 동작;
상기 제2 컨텐츠의 일부 영역의 유일 값을 상기 메모리에 저장하는 동작; 및
상기 제2 캐시 파일을 상기 분산 서버로 전송하는 동작;을 더 포함하는,
방법.
19. The method of claim 18,
generating a second cache file including a unique value of a partial region of the second content and streaming data for a partial region of the second content;
storing a unique value of a partial region of the second content in the memory; and
Transmitting the second cache file to the distributed server; further comprising,
Way.
상기 제1 컨텐츠의 각 영역에 대응하는 데이터를 처리하여 스트리밍 데이터를 획득하는 동작은 상기 제1 컨텐츠의 각 영역에 대응하는 데이터에 대하여 컨버팅(converting) 및 인코딩(enconding) 중 적어도 하나를 수행하는 동작을 포함하는,
방법.
16. The method of claim 15,
The operation of processing data corresponding to each area of the first content to obtain streaming data is an operation of performing at least one of converting and encoding data corresponding to each area of the first content containing,
Way.
상기 컨버팅(converting)을 수행하는 동작은 상기 제1 컨텐츠의 각 영역에 대응하는 데이터를 PNG, PNG32bit, 및 JPEG 중 적어도 하나로 변환하는 동작을 포함하는,
방법.
21. The method of claim 20,
The performing of the converting includes converting data corresponding to each region of the first content into at least one of PNG, PNG32bit, and JPEG,
Way.
상기 스트리밍 데이터를 상기 메모리에 저장하는 동작; 및
상기 스트리밍 데이터를 상기 클라이언트로 전송한 뒤, 상기 메모리에 저장된 스트리밍 데이터를 삭제하는 동작;을 더 포함하는,
방법.
21. The method of claim 20,
storing the streaming data in the memory; and
After transmitting the streaming data to the client, the operation of deleting the streaming data stored in the memory; further comprising,
Way.
상기 제2 컨텐츠의 일부 영역의 유일 값 및 스트리밍 데이터를 포함하는 제2 캐시 파일을 생성하는 동작;
상기 제2 컨텐츠의 일부 영역의 유일 값을 상기 메모리에 저장하는 동작; 및
상기 제2 캐시 파일을 상기 분산 서버로 전송하는 동작;을 더 포함하는,
방법.
19. The method of claim 18,
generating a second cache file including a unique value of a partial region of the second content and streaming data;
storing a unique value of a partial region of the second content in the memory; and
Transmitting the second cache file to the distributed server; further comprising,
Way.
신규 클라이언트가 상기 클라우드 스트리밍 서버에 접속하는 동작;
상기 신규 클라이언트로부터 제3 키 입력을 수신하는 동작;
상기 제3 키 입력에 기반하여 상기 웹 서버로부터 제3 컨텐츠를 획득하는 동작;
상기 제3 컨텐츠의 각 영역에 대한 유일 값을 추출하는 동작; 및
상기 분산 서버를 통하여 상기 제3 컨텐츠의 일부 영역의 유일 값과 동일한 유일 값을 검색하는 동작;을 더 포함하고,
상기 신규 클라이언트는 상기 클라이언트와 상이한,
방법.
16. The method of claim 15,
The operation of a new client accessing the cloud streaming server;
receiving a third key input from the new client;
obtaining third content from the web server based on the third key input;
extracting a unique value for each area of the third content; and
The method further includes: an operation of searching for a unique value that is the same as the unique value of the partial region of the third content through the distributed server;
the new client is different from the client;
Way.
상기 분산 서버를 통하여 상기 제3 컨텐츠의 일부 영역의 유일 값과 동일한 유일 값이 확인되면, 상기 분산 서버로부터 상기 제3 컨텐츠의 일부 영역에 대한 스트리밍 데이터를 수신하는 동작; 및
상기 제3 컨텐츠의 일부 영역에 대한 스트리밍 데이터를 상기 신규 클라이언트로 전송하는 동작;을 더 포함하는,
방법.
25. The method of claim 24,
receiving streaming data for the partial region of the third content from the distributed server when a unique value identical to the unique value of the partial region of the third content is confirmed through the distributed server; and
Transmitting streaming data for a partial area of the third content to the new client; further comprising
Way.
상기 분산 서버를 통하여 상기 제3 컨텐츠의 일부 영역의 유일 값과 동일한 유일 값이 확인되지 않으면, 상기 검색을 종료하는 동작;
상기 제3 컨텐츠의 일부 영역에 대응하는 데이터를 처리하여 상기 제3 컨텐츠의 일부 영역에 대한 스트리밍 데이터를 생성하는 동작; 및
상기 제3 컨텐츠의 일부 영역에 대한 스트리밍 데이터를 상기 클라이언트로 전송하는 동작;을 더 포함하는,
방법.
25. The method of claim 24,
terminating the search when the same unique value as the unique value of the partial region of the third content is not confirmed through the distributed server;
generating streaming data for the partial region of the third content by processing data corresponding to the partial region of the third content; and
The method further comprising: transmitting streaming data for a partial area of the third content to the client;
Way.
제1 웹 브라우저 및 제2 웹 브라우저를 포함하는 복수의 웹 브라우저를 실행하는 동작; 및
상기 클라이언트를 상기 제1 웹 브라우저에 연결하고, 상기 신규 클라이언트를 상기 제2 웹 브라우저에 연결하는 동작;을 더 포함하는,
방법.
25. The method of claim 24,
executing a plurality of web browsers including a first web browser and a second web browser; and
connecting the client to the first web browser and connecting the new client to the second web browser; further comprising
Way.
제1 웹 브라우저를 실행하는 동작;
상기 클라이언트를 상기 제1 웹 브라우저에 연결하는 동작; 및
상기 제1 웹 브라우저와 상기 클라이언트의 연결이 해제된 경우, 상기 신규 클라이언트를 상기 제1 웹 브라우저와 연결하는 동작;을 더 포함하는,
방법.
25. The method of claim 24,
executing a first web browser;
connecting the client to the first web browser; and
When the connection between the first web browser and the client is disconnected, the operation of connecting the new client with the first web browser; further comprising
Way.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20200084177 | 2020-07-08 | ||
KR1020200084177 | 2020-07-08 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20220006483A true KR20220006483A (en) | 2022-01-17 |
Family
ID=80051755
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020210089734A KR20220006483A (en) | 2020-07-08 | 2021-07-08 | Cloud streaming server generating cache file and operating method thereof |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20220006483A (en) |
-
2021
- 2021-07-08 KR KR1020210089734A patent/KR20220006483A/en unknown
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2002215503A (en) | Device and method for conversion, charging method, and system and method for script conversion | |
CN112379949B (en) | Data processing method, device, equipment and storage medium | |
CN104054068A (en) | Improved bandwidth optimization for remote desktop protocol | |
WO2022135369A1 (en) | Printing method and apparatus, and electronic device | |
CN111756847B (en) | Method and device for supporting https protocol by website | |
WO2017114190A1 (en) | File uploading processing method and device | |
KR102064284B1 (en) | Device, system, and method to perform real-time communication | |
KR100624142B1 (en) | Gateway apparatus and method for wireless data service | |
KR102426670B1 (en) | System for cloud streaming service, method of image cloud streaming service using process shortering and apparatus for the same | |
CN108810475B (en) | Android video monitoring device based on Onvif standard and Sip protocol | |
CN106332556B (en) | Method and terminal for transmitting cloud files and cloud server | |
KR100750907B1 (en) | Apparatus and method for processing image which is transferred to and displayed on mobile communication devices | |
KR20220006483A (en) | Cloud streaming server generating cache file and operating method thereof | |
CN111542033A (en) | Near-field data transmission method and device and computer readable storage medium | |
CN107318129B (en) | Data processing method and device and terminal | |
CN116055143A (en) | Encryption method and device for sharing links | |
CN114430496B (en) | Cross-equipment video searching method and related equipment | |
KR20220006482A (en) | Cloud streaming server providing contents and operating method thereof | |
CN112714068A (en) | Method, device and system for processing coded image, storage medium and electronic device | |
US11086822B1 (en) | Application-based compression | |
KR101703963B1 (en) | Method and system for providing multimedia service using cash server | |
CN110636374A (en) | Method and device for searching information | |
CN114513544B (en) | Local area network wireless screen-throwing method, equipment and computer readable storage medium | |
WO2024065605A1 (en) | Method for sharing data | |
KR100438573B1 (en) | Method for monitering video phone |