KR101158366B1 - System and method for contents delivery using data segment information, and proxy server thereof - Google Patents
System and method for contents delivery using data segment information, and proxy server thereof Download PDFInfo
- Publication number
- KR101158366B1 KR101158366B1 KR1020090007984A KR20090007984A KR101158366B1 KR 101158366 B1 KR101158366 B1 KR 101158366B1 KR 1020090007984 A KR1020090007984 A KR 1020090007984A KR 20090007984 A KR20090007984 A KR 20090007984A KR 101158366 B1 KR101158366 B1 KR 101158366B1
- Authority
- KR
- South Korea
- Prior art keywords
- data
- content
- proxy server
- data segments
- side proxy
- 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/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
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/10—Architectures or entities
- H04L65/1045—Proxies, e.g. for session initiation protocol [SIP]
-
- 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
-
- 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/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/434—Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Information Transfer Between Computers (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
본 발명은 데이터 세그먼트 정보를 이용한 컨텐츠 전송시스템 및 방법, 그 프록시서버에 관한 것으로, 컨텐츠서버로부터 컨텐츠를 수신하면 복수의 세그먼트로 분할하고 클라이언트 측 프록시서버에 저장될 하나 이상의 데이터 세그먼트 정보를 포함하여 클라이언트 측 프록시서버로 전송하여 저장되도록 하며 해당 컨텐츠를 컨텐츠서버로부터 다시 수신하면 클라이언트 측 프록시서버에 저장된 하나 이상의 데이터 세그먼트를 제외한 나머지 데이터만을 전송하는 컨텐츠서버 측 프록시서버와, 컨텐츠서버 측 프록시서버로부터 데이터를 수신하면 기 저장된 하나 이상의 데이터 세그먼트와 수신한 데이터를 이용하여 완전한 컨텐츠로 재구성하고 클라이언트로 재구성된 컨텐츠를 전송하는 클라이언트 측 프록시서버를 포함하며, 이를 통해, 네트워크의 일단에 위치한 컨텐츠서버 측 프록시서버에서 반대단에 위치한 클라이언트 측 프록시서버로 데이터를 전송하는 경우 중복된 데이터를 전송하지 않게 되고 네트워크 부하를 줄이며 전송 시간, 비용 및 효율을 개선할 수 있게 된다.The present invention relates to a content delivery system and method using data segment information, and a proxy server thereof. The present invention relates to a client including at least one data segment information to be divided into a plurality of segments and to be stored in a client-side proxy server. Content server-side proxy server that transmits only the remaining data except one or more data segments stored in client-side proxy server when data is sent back to the proxy server and stored. Receives the client-side proxy server to reconstruct the complete content using the one or more data segments and the received data when received, and to transmit the reconstructed content to the client, through the network In the case of transmitting data from the content server side proxy server located at one end of the server to the client side proxy server located at the other end, the redundant data is not transmitted, the network load can be reduced, and the transmission time, cost and efficiency can be improved.
프록시서버, 세그먼트, WAN Proxy Server, Segment, WAN
Description
본 발명은 컨텐츠 전송시스템 및 방법, 그 프록시서버에 관한 것으로, 특히, 클라이언트 측 프록시서버에 저장된 데이터 세그먼트에 대한 정보를 이용하여, 네트워크 상에서 전송되는 데이터량을 최소화할 수 있는 데이터 세그먼트 정보를 이용한 컨텐츠 전송시스템 및 방법, 그 프록시서버에 대한 것이다.The present invention relates to a content delivery system and method, and a proxy server thereof, and more particularly, content using data segment information that can minimize the amount of data transmitted on a network by using information about data segments stored in a client-side proxy server. It is about a transmission system and method, and its proxy server.
일반적으로 컨텐츠 제공자(CP: Content Provider)의 컨텐츠 서버가 클라이언트에 제공할 컨텐츠(예컨대, 동영상, 음악, 파일 등)의 수는 매우 많다. 게다가 컨텐츠 제공자가 제공하는 컨텐츠 수는 빠른 속도로 증가하고 있으며, 이에 대한 클라이언트의 요청도 증가하고 있다.In general, the number of contents (eg, videos, music, files, etc.) to be provided to a client by a content server of a content provider (CP) is very large. In addition, the number of contents provided by content providers is increasing at a rapid rate, and client requests are increasing.
그런데 한정된 네트워크 자원에서의 데이터 전송량 증가는 전송 품질의 저하를 불러온다. 특히, WAN(Wide Area Network)과 같이 지리적으로 완전하게 떨어져 있는 장거리 지역 사이를 연결하고 있는 통신망의 경우, 한정된 네트워크 자원으로 인하여 이러한 문제는 더욱 심각해 진다.However, an increase in the amount of data transmission in limited network resources leads to a decrease in transmission quality. In particular, in the case of a communication network that is connected between long distance geographically separated areas such as wide area networks (WANs), this problem is exacerbated by limited network resources.
이러한 문제점을 해결하기 위하여, 네트워크 장치 또는 데이터 전송로를 증설하지 않고도, 데이터 전송의 효율을 높일 수 있는 방법이 요구된다.In order to solve this problem, there is a need for a method that can increase the efficiency of data transmission without adding a network device or a data transmission path.
본 발명은 상기한 종래의 문제점을 해결하기 위해 제안된 것으로서, 클라이언트 측 프록시서버로 전송되는 컨텐츠의 데이터 중 해당 프록시서버에 기 저장된 데이터 세그먼트를 제외한 데이터만을 전송함으로써 데이터 전송의 효율을 높일 수 있는 데이터 세그먼트 정보를 이용한 컨텐츠 전송시스템 및 방법, 그 프록시서버를 제공하는데 그 목적이 있다.The present invention has been proposed to solve the above-described problems, and the data that can increase the efficiency of data transmission by transmitting only data excluding data segments previously stored in the corresponding proxy server among the data of the content transmitted to the client-side proxy server It is an object of the present invention to provide a content delivery system and method using segment information, and a proxy server thereof.
상기와 같은 목적을 달성하기 위한 본 발명의 세그먼트 정보를 이용한 컨텐츠 전송시스템은, 컨텐츠서버로부터 컨텐츠를 수신하면 복수의 세그먼트로 분할하고 상기 복수의 데이터 세그먼트 중 하나 이상의 데이터 세그먼트가 저장되어야 함을 표시하는 정보를 포함하여 상기 복수의 데이터 세그먼트를 전송하며, 이후, 상기 컨텐츠서버로부터 상기 컨텐츠를 수신하면 상기 하나 이상의 데이터 세그먼트를 제외한 나머지 데이터를 전송하는 컨텐츠서버 측 프록시서버, 및 상기 컨텐츠서버 측 프록시서버로부터 상기 하나 이상의 데이터 세그먼트를 수신하면 상기 정보를 참조하여 저장하고, 상기 컨텐츠서버 측 프록시서버로부터 상기 컨텐츠의 데이터 중 상기 하나 이상의 데이터 세그먼트를 제외한 나머지 데이터만을 수신하면 상기 나머지 데이터와 상기 저장한 하나 이상의 데이터 세그먼트를 이용하여 상기 컨텐츠로 재구성하고 상기 재구성한 컨텐츠를 클라이언트로 전송하는 클라이언트 측 프록시서버를 포함한다.Content delivery system using the segment information of the present invention for achieving the above object, when receiving the content from the content server is divided into a plurality of segments and indicating that one or more data segments of the plurality of data segments should be stored A plurality of data segments including information, and after receiving the contents from the content server, a content server side proxy server for transmitting data other than the one or more data segments, and a content server side proxy server. When the at least one data segment is received, the information is stored with reference to the information. When the at least one data segment is received from the content server side proxy server, only the remaining data except for the at least one data segment is received. And a client-side proxy server configured to reconstruct the content using the stored one or more data segments and transmit the reconstructed content to a client.
본 발명의 세그먼트 정보를 이용한 컨텐츠 전송시스템에 있어서, 상기 컨텐츠서버 측 프록시서버는, 상기 하나 이상의 데이터 세그먼트가 저장되어야 함을 표시하는 정보를 데이터 패킷의 헤더에 포함하여 전송하는 것을 특징으로 한다.In the content delivery system using the segment information of the present invention, the content server-side proxy server, characterized in that for transmitting the information indicating that the one or more data segments should be stored in the header of the data packet.
본 발명의 세그먼트 정보를 이용한 컨텐츠 전송시스템에 있어서, 상기 컨텐츠서버 측 프록시서버는, 상기 나머지 데이터와 상기 하나 이상의 데이터 세그먼트에 대한 정보를 상기 컨텐츠의 데이터 순서에 맞게 배열하고 상기 배열된 순서에 따라 상기 하나 이상의 데이터 세그먼트에 대한 정보를 더 포함하여 전송하는 것을 특징으로 한다.In the content delivery system using the segment information of the present invention, the content server-side proxy server, the remaining data and the information about the one or more data segments arranged in accordance with the data order of the content and the said The method may further include information about one or more data segments.
본 발명의 세그먼트 정보를 이용한 컨텐츠 전송시스템에 있어서, 상기 컨텐츠서버 측 프록시서버는, 상기 배열한 상기 나머지 데이터와 상기 하나 이상의 데이터 세그먼트에 대한 정보를 최대 전송 옥텟의 크기에 맞게 순차적으로 분할하여 전송하는 것을 특징으로 한다.In the content delivery system using the segment information of the present invention, the content server-side proxy server, the divided data and the information about the one or more data segments are sequentially divided and transmitted according to the size of the maximum transmission octet It is characterized by.
상기와 같은 목적을 달성하기 위한 본 발명의 세그먼트 정보를 이용한 컨텐츠 전송방법은, 컨텐츠서버로부터 컨텐츠를 수신한 컨텐츠서버 측 프록시서버가 상기 컨텐츠를 복수의 세그먼트로 분할하고 상기 복수의 데이터 세그먼트 중 하나 이상의 데이터 세그먼트가 저장되어야 함을 표시하는 정보를 포함하여 상기 복수의 데이터 세그먼트를 클라이언트 측 프록시서버로 전송하는 제1 전송단계, 상기 클라이언트 측 프록시서버가 상기 정보를 참조하여 상기 하나 이상의 데이터 세그먼트를 저장하는 저장단계, 상기 저장단계 이후 상기 컨텐츠서버 측 프록시서버가 상기 컨텐츠서버로부터 상기 컨텐츠를 수신하면 상기 하나 이상의 데이터 세그먼트를 제 외한 나머지 데이터를 상기 클라이언트 측 프록시서버로 전송하는 제2 전송단계, 및 상기 클라이언트 측 프록시서버가 상기 컨텐츠서버 측 프록시서버로부터 수신한 상기 나머지 데이터와 상기 저장된 하나 이상의 데이터 세그먼트를 이용하여 상기 컨텐츠로 재구성하고 상기 재구성한 컨텐츠를 클라이언트로 전송하는 제3 전송단계를 포함한다.Content delivery method using the segment information of the present invention for achieving the above object, the content server side proxy server receiving the content from the content server divides the content into a plurality of segments and one or more of the plurality of data segments A first transmission step of transmitting the plurality of data segments to a client side proxy server including information indicating that a data segment should be stored, wherein the client side proxy server stores the one or more data segments with reference to the information; A second transmission step of transmitting the remaining data excluding the one or more data segments to the client-side proxy server when the content server-side proxy server receives the content from the content server after the storing step; And a third transmission step of reconfiguring the content to the client using the remaining data received from the content server-side proxy server and the stored one or more data segments, and transmitting the reconstructed content to a client.
본 발명의 세그먼트 정보를 이용한 컨텐츠 전송방법에 있어서, 상기 제2 전송단계는, 상기 나머지 데이터와 상기 하나 이상의 데이터 세그먼트에 대한 정보를 상기 컨텐츠의 데이터 순서에 맞게 배열하고 상기 배열된 순서에 따라 상기 하나 이상의 데이터 세그먼트에 대한 정보를 더 포함하여 전송하는 것을 특징으로 한다.In the content transmission method using the segment information of the present invention, in the second transmission step, the remaining data and information about the one or more data segments are arranged in order of the data order of the content and the one according to the arrangement order The information on the above data segment is further included.
본 발명의 세그먼트 정보를 이용한 컨텐츠 전송방법에 있어서, 상기 제2 전송단계는, 상기 배열한 상기 나머지 데이터와 상기 하나 이상의 데이터 세그먼트에 대한 정보를 최대 전송 옥텟의 크기에 맞게 순차적으로 분할하여 전송하는 것을 특징으로 한다.In the content transmission method using the segment information of the present invention, the second transmission step is to sequentially transmit the divided data and the information on the one or more data segments in accordance with the size of the maximum transmission octet. It features.
상기와 같은 목적을 달성하기 위한 본 발명의 컨텐츠서버 측 프록시서버는, 데이터 송수신을 위한 송수신부, 데이터 세그먼트에 대한 정보를 저장한 메모리부, 및 상기 송수신부를 통해 컨텐츠서버로부터 컨텐츠를 수신하면 복수의 세그먼트로 분할하고 상기 복수의 데이터 세그먼트 중 하나 이상의 데이터 세그먼트가 저장되어야 함을 표시하는 정보를 포함하여 상기 복수의 데이터 세그먼트를 상기 송수신부를 통해 클라이언트 측 프록시서버로 전송함과 동시에 상기 하나 이상의 데이터 세그먼트에 대한 정보를 상기 메모리부에 저장하며, 이후 상기 송수신부를 통해 상 기 컨텐츠서버로부터 상기 컨텐츠를 수신하면 상기 메모리부에 저장된 상기 하나 이상의 데이터 세그먼트에 대한 정보를 참조하여 상기 컨텐츠의 데이터 중 상기 데이터 세그먼트를 제외한 나머지 데이터를 상기 송수신부를 통해 상기 클라이언트 측 프록시서버로 전송하는 제어부를 포함한다.Contents server-side proxy server of the present invention for achieving the above object, a plurality of transmission and reception unit for transmitting and receiving data, a memory unit for storing information about the data segment, and a plurality of content when receiving content from the content server through the transmission and reception unit The plurality of data segments are transmitted to the client-side proxy server through the transceiver unit, including information indicating that the data segments are divided into segments and indicating that at least one data segment of the plurality of data segments should be stored. Information about the one or more data segments stored in the memory unit when the content is received from the content server through the transceiver. It includes a control unit for transmitting the remaining data to the client-side proxy server through the transceiver.
본 발명의 컨텐츠서버 측 프록시서버에 있어서, 상기 제어부는, 상기 하나 이상의 데이터 세그먼트가 저장되어야 함을 표시하는 정보를 데이터 패킷의 헤더에 포함하여 전송하는 것을 특징으로 한다.In the proxy server of the content server of the present invention, the control unit transmits information indicating that the at least one data segment is to be stored in the header of the data packet.
본 발명의 컨텐츠서버 측 프록시서버에 있어서, 상기 제어부는, 상기 나머지 데이터와 상기 하나 이상의 데이터 세그먼트에 대한 정보를 상기 컨텐츠의 데이터 순서에 맞게 배열하고 상기 배열된 순서에 따라 상기 하나 이상의 데이터 세그먼트에 대한 정보를 더 포함하여 전송하는 것을 특징으로 한다.In the proxy server of the content server of the present invention, the control unit is arranged to arrange the remaining data and the information on the one or more data segments according to the data order of the content and for the one or more data segments according to the arrangement order. Characterized in that the transmission further.
본 발명의 컨텐츠서버 측 프록시서버에 있어서, 상기 제어부는, 상기 배열한 상기 나머지 데이터와 상기 하나 이상의 데이터 세그먼트에 대한 정보를 최대 전송 옥텟의 크기에 맞게 순차적으로 분할하여 전송하는 것을 특징으로 한다.In the proxy server of the content server of the present invention, the controller is configured to sequentially transmit the arranged data and the information on the one or more data segments by dividing them sequentially according to the maximum transmission octet size.
상기와 같은 목적을 달성하기 위한 본 발명의 클라이언트 측 프록시서버는, 데이터 송수신을 위한 입출력부, 하나 이상의 데이터 세그먼트를 저장한 저장부, 및 상기 입출력부를 통해 컨텐츠서버 측 프록시서버로부터 컨텐츠의 데이터를 구성하는 복수의 데이터 세그먼트를 수신하면 그 중 하나 이상의 데이터 세그먼트를 상기 저장부에 저장하고, 이후 상기 입출력부를 통해 상기 컨텐츠서버 측 프록시서버로부터 상기 컨텐츠의 데이터에 포함되며 상기 하나 이상의 데이터 세그먼트를 제 외한 나머지 데이터를 수신하면 상기 나머지 데이터와 상기 저장한 하나 이상의 데이터 세그먼트를 이용하여 상기 컨텐츠로 재구성하고 상기 입출력부를 통해 클라이언트로 전송하는 관리부를 포함한다.The client-side proxy server of the present invention for achieving the above object, the data input and output unit for transmitting and receiving data, the storage unit for storing one or more data segments, and the content server from the content server side proxy server through the input and output unit Upon receiving a plurality of data segments, one or more data segments are stored in the storage unit, and the rest are included in the content data from the content server side proxy server through the input / output unit, except for the one or more data segments. Receiving data includes a management unit for reconstructing the content using the remaining data and the stored one or more data segments and transmits to the client through the input and output unit.
본 발명의 클라이언트 측 프록시서버에 있어서, 상기 관리부는, 상기 수신한 상기 복수의 데이터 세그먼트의 헤더에 포함된 정보를 확인하여 상기 하나 이상의 데이터 세그먼트를 저장하는 것을 특징으로 한다.In the client-side proxy server of the present invention, the management unit checks the information included in the header of the plurality of data segments received and stores the one or more data segments.
본 발명의 클라이언트 측 프록시서버에 있어서, 상기 관리부는, 상기 나머지 데이터에 더하여 상기 저장한 상기 하나 이상의 데이터 세그먼트에 대한 정보를 상기 컨텐츠의 데이터 순서에 맞게 순차적으로 수신하면 상기 컨텐츠로 재구성하여 상기 클라이언트로 전송하는 것을 특징으로 한다.In the client-side proxy server of the present invention, the management unit, in addition to the remaining data, when receiving the information on the stored one or more data segments in sequence according to the data order of the content to reconstruct the content to the client Characterized in that the transmission.
본 발명에 의하면, 컨텐츠를 전송하는 컨텐츠서버 측 프록시서버에서 클라이언트 측 프록시서버에 기 저장된 데이터 세그먼트를 제외하고 전송함으로써, 네트워크 자원의 이용을 최소화할 수 있으며, 이에 따라 시간 및 비용을 절약할 수 있다.According to the present invention, by using the content server side proxy server that transmits content to transmit the data segment except the data segment previously stored in the client side proxy server, it is possible to minimize the use of network resources, thereby saving time and money. .
이하 첨부된 도면을 참조하여 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명을 용이하게 실시할 수 있는 바람직한 실시예를 상세히 설명한다. 다만, 본 발명의 바람직한 실시예에 대한 동작 원리를 상세하게 설명함에 있어 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략한다. 또한, 도면 전체에 걸쳐 유사한 기능 및 작용을 하는 부분에 대해서는 동일한 도면 부호를 사용한다.DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. However, in describing in detail the operating principle of the preferred embodiment of the present invention, if it is determined that the detailed description of the related known functions or configurations may unnecessarily obscure the subject matter of the present invention, the detailed description thereof will be omitted. In addition, the same reference numerals are used for parts having similar functions and functions throughout the drawings.
도 1은 본 발명의 일 실시예에 따른 데이터 세그먼트(segment) 정보를 이용한 컨텐츠 전송시스템의 구성도이다. 도 1을 참조하면, 본 실시예에 따른 컨텐츠 전송시스템은 클라이언트(110), 클라이언트 측 프록시서버(120), 컨텐츠서버 측 프록시서버(130), 컨텐츠서버(140) 및 네트워크(150)를 포함한다.1 is a block diagram of a content delivery system using data segment information according to an embodiment of the present invention. Referring to FIG. 1, the content delivery system according to the present embodiment includes a
클라이언트(110)는 네트워크(150)를 통해 컨텐츠서버(140)로부터 컨텐츠를 제공받는 컴퓨터 등의 장비를 의미한다. 클라이언트(110)는 현재 상용화되었거나 앞으로 상용화될 모든 유선 및 무선 통신 단말을 포함한다.The
컨텐츠서버(140)는 컨텐츠 제공자(CP: Content Provider)가 운용하는 서버이며, 컨텐츠를 제공하는 역할을 한다.The
네트워크(150)는 데이터 송수신을 위한 통신망을 의미한다. 예를 들어, 네트워크는 WAN(Wide Area Network)일 수 있다.The
클라이언트 측 프록시서버(120) 및 컨텐츠서버 측 프록시서버(130)는 컴퓨터 사용자와 인터넷 사이에서 중개자 역할을 수행하는 서버로서, 보안이나 관리적 차원의 규제 그리고 캐시 서비스 등을 제공하는 서버를 의미한다.The client-
본 발명에서 컨텐츠서버 측 프록시서버(130)는 컨텐츠서버(140)로부터 수신한 컨텐츠의 데이터를 복수의 세그먼트로 분할하고, 분할한 복수의 세그먼트 중 하나 이상의 데이터 세그먼트가 저장되어야 함을 표시하는 정보를 포함한 복수의 세그먼트를 클라이언트 측 프록시서버(120)로 전송한다. 예를 들어, 하나 이상의 데 이터 세그먼트가 저장되어야 함을 나타내는 정보는 전송되는 복수의 데이터 세그먼트가 전송되는 데이터 패킷의 헤더에 포함되어 전송될 수 있다. 그리고 클라이언트 측 프록시서버(120)는 컨텐츠서버 측 프록시서버(130)로부터 수신한 정보를 참조하여 하나 이상의 데이터 세그먼트를 저장한다.In the present invention, the content server
이후, 컨텐츠서버(140)는 클라이언트(110)로부터 요청받은 컨텐츠 데이터를 컨텐츠서버 측 프록시서버(130)로 전송하는데, 컨텐츠서버 측 프록시서버(130)는 해당 컨텐츠의 데이터 중 클라이언트 측 프록시서버(120)에 기 저장된 데이터 세그먼트를 제외한 나머지 데이터를 네트워크(150)를 통해 클라이언트 측 프록시서버(120)로 전송한다. 클라이언트 측 프록시서버(120)는 컨텐츠서버 측 프록시서버(130)로부터 수신한 데이터와, 기 저장하여 보유하고 있는 데이터 세그먼트를 데이터의 순서에 맞게 온전한 컨텐츠로 재구성하고 클라이언트(110)로 전송한다.Thereafter, the
이때, 컨텐츠서버 측 프록시서버(130)가 클라이언트 측 프록시서버(120)로 전송하는 데이터는, 클라이언트 측 프록시서버(120)에 저장되지 않은 데이터, 및 클라이언트 측 프록시서버(120)에 이미 저장된 데이터 세그먼트에 대한 정보를 포함한 데이터일 수 있다. 예를 들어, 클라이언트 측 프록시서버(120)에 저장되지 않은 데이터, 및 클라이언트 측 프록시서버(120)에 저장된 데이터 세그먼트에 대한 정보는, 컨텐츠 데이터의 순서에 따라 배열되어 순차적으로 클라이언트 측 프록시서버(120)로 전송될 수 있다. 이 경우, 클라이언트 측 프록시서버(120)에 저장되지 않은 데이터, 및 클라이언트 측 프록시서버(120)에 저장된 데이터 세그먼트에 대한 정보는 최대 전송 옥텟(octet)의 크기에 맞게 분할하여 전송할 수 있을 것이다. 이 를 통해, 네트워크(150) 상에서 존재하는 라우터 등에서 데이터를 재 패킷화 하는 불경제를 피하면서, 네트워크에서의 데이터 전송 효율을 극대화할 수 있게 된다.In this case, the data transmitted from the content server-
이를 위해, 컨텐츠서버 측 프록시서버(130)는 클라이언트 측 프록시서버(120)에 저장된 하나 이상의 데이터 세그먼트에 대한 정보를 저장하고 있을 수 있다.To this end, the content server
본 발명의 일 실시예에 따른 컨텐츠서버 측 프록시서버(130)의 구성 및 기능에 대해서는 도 2를 참조하여 좀 더 상세하게 설명하기로 한다.The configuration and function of the content server
도 2는 도 1에 도시된 컨텐츠서버 측 프록시서버(130)의 구성도이다. 도 2를 참조하면, 본 실시예에 따른 컨텐츠서버 측 프록시서버(130)는 송수신부(210), 제어부(220) 및 메모리부(230)를 포함한다.2 is a block diagram of the content server
송수신부(210)는 데이터 송수신을 위한 인터페이스를 갖는다.The
메모리부(230)는 클라이언트 측 프록시서버(120)에 저장된 데이터 세그먼트에 대한 정보를 저장한 저장소이다.The
제어부(220)는 송수신부(210)를 통해 컨텐츠서버(140)로부터 컨텐츠를 수신하면 복수의 세그먼트로 분할하고, 분할한 복수의 데이터 세그먼트 중 하나 이상의 데이터 세그먼트가 클라이언트 측 프록시서버(120)에 저장되어야 함을 표시하는 정보를 포함하여, 해당 복수의 세그먼트 데이터를 클라이언트 측 프록시서버(120)로 전송한다. 이때, 하나 이상의 데이터 세그먼트가 저장되어야 함을 표시하는 정보는 상기와 같이 전송되는 데이터 패킷의 헤더에 포함되어 전송될 수 있으며, 클라이언트 측 프록시서버(120)에 저장될 하나 이상의 데이터 세그먼트에 대한 정보는 메모 리부(230)에 저장된다.When the
이후, 제어부(220)가 송수신부(210)를 통하여 컨텐츠서버(140)로부터 전송된 컨텐츠를 수신하면 메모리부(230)에 저장된 하나 이상의 데이터 세그먼트에 대한 정보를 참조한다. 그리고, 컨텐츠서버(140)로부터 수신한 컨텐츠의 데이터에 포함된 데이터 세그먼트가 클라이언트 측 프록시서버(120)에 저장되어 있는 경우, 해당 데이터를 제외한 나머지 부분의 데이터를 클라이언트 측 프록시서버(120)로 전송한다.Thereafter, when the
컨텐츠서버 측 프록시서버(130)에서 클라이언트 측 프록시서버(120)로 데이터를 전송하는 경우에는, 예를 들어, 컨텐츠의 데이터 중 클라이언트 측 프록시서버(120)에 저장되지 않은 데이터와, 메모리부(230)에 이미 저장된 클라이언트 측 프록시서버(120)가 보유한 하나 이상의 데이터 세그먼트에 대한 정보를, 컨텐츠의 데이터 순서에 맞게 배열하고, 배열된 순서에 따라 데이터 세그먼트 정보를 더 포함하여 전송할 수도 있다. 이렇게 하여, 클라이언트 측 프록시서버(120)에서 이미 저장된 하나 이상의 데이터 세그먼트가 포함되는 위치를 파악하여 온전한 컨텐츠 데이터를 재구성하고 클라이언트(110)로 전송하는 것이 가능해 진다.When data is transmitted from the content server
배열한 데이터와 하나 이상의 데이터 세그먼트에 대한 정보를 전송하는 경우에는, 최대 전송 옥텟의 크기에 맞게 순차적으로 분할하여 전송할 수 있다. 이를 통해, 라우터 등에서 재 패킷화해서 다시 보내는 시간 지연 없이 최대 효율로 전송하는 것이 가능해 진다.When transmitting the arranged data and information on one or more data segments, the data can be sequentially divided and transmitted according to the size of the maximum transmission octet. Through this, it is possible to transmit at maximum efficiency without the time delay of repacking and resending at a router or the like.
본 발명의 일 실시예에 따른 메모리부(230)에 저장되는 하나 이상의 데이터 세그먼트에 대한 정보에 대해서는 도 3을 참조하여 좀 더 상세하게 설명하기로 한다.Information about one or more data segments stored in the
도 3은 도 2에 도시된 메모리부(230)에 저장되는 하나 이상의 데이터 세그먼트에 대한 정보의 예시도이다. 본 실시예에서 하나 이상의 데이터 세그먼트에 대한 정보는 정보테이블(300)의 형태로 메모리부(230)에 저장되나, 본 발명의 기술적 사상이 이에 한정되는 것은 아니다.3 is an exemplary diagram of information on one or more data segments stored in the
정보테이블(300)을 참조하면, 컨텐츠, 데이터 세그먼트, 인덱스 및 세그먼트 크기 항목을 포함한다. 컨텐츠 항목은 각각의 데이터 세그먼트가 속한 컨텐츠를 나타낸 필드이다. 데이터 세그먼트 항목은 클라이언트 측 프록시서버(120)에 저장된 데이터 세그먼트를 나타내는 항목이다. 인덱스는 컨텐츠의 데이터 중 해당 세그먼트가 존재하는 위치를 나타내는 항목이다. 세그먼트 크기는 각 데이터 세그먼트의 데이터 크기를 나타내는 항목이다.Referring to the information table 300, it includes contents, data segments, indexes, and segment size items. The content item is a field indicating the content to which each data segment belongs. The data segment item is an item representing a data segment stored in the client-
정보테이블(300)에서 'movie.vod' 컨텐츠의 데이터 중 클라이언트 측 프록시서버(120)에 저장된 데이터 세그먼트는 'segment1' 및 'segment2' 이다. 인덱스 항목을 참조하면 'segment1'이 'movie.vod' 컨텐츠 데이터에서 존재하는 위치는 '0...0001'이고, 'segment1'의 데이터 크기는 1 mb(megabyte)이다. 마찬가지로, 'segment2'의 위치는 '0...0010'이며, 데이터의 크기는 2 mb이다.The data segments stored in the client-
이때, 인덱스 정보는 컨텐츠서버 측 프록시서버(130) 및 클라이언트 측 프록시서버(120)의 설정에 따라 정해지며, 예를 들어, 각 컨텐츠의 데이터 내에서 세그먼트 데이터의 시작 위치 등을 나타내는 정보를 포함할 수 있다. 컨텐츠서버 측 프 록시서버(130)는 이러한 정보를 참조하여, 클라이언트 측 프록시서버(120)에 기 저장된 데이터 세그먼트를 제외한 데이터만을 전송하거나, 전송하는 데이터와 데이터 세그먼트에 대한 정보를 순차적으로 조합하고 최대 전송 옥텟의 크기만큼 패킷화하여 전송하는 것이 가능해 진다.At this time, the index information is determined according to the settings of the content server-
본 발명의 일 실시예에 따른 클라이언트 측 프록시서버(120)에 대해서는 도 4를 참조하여 좀 더 상세하게 설명하기로 한다.The client-
도 4는 도 1에 도시된 클라이언트 측 프록시서버(120)의 구성도이다. 도 4를 참조하면, 본 실시예에 따른 클라이언트 측 프록시서버(120)는 입출력부(310), 관리부(320) 및 저장부(330)를 포함한다.4 is a block diagram of the client-
입출력부(310)는 데이터 송수신을 위한 인터페이스를 갖는다.The input /
저장부(330)는 컨텐츠서버(140)가 제공하는 컨텐츠의 데이터 세그먼트를 저장한 저장소이다.The
관리부(320)는 입출력부(310)를 통해 컨텐츠서버 측 프록시서버(130)로부터 특정 컨텐츠를 구성하는 복수의 세그먼트를 수신하면 그 중 하나 이상의 데이터 세그먼트를 저장부(330)에 저장한다. 예를 들어, 하나 이상의 데이터 세그먼트 저장은, 전송되는 복수의 데이터 세그먼트의 헤더 정보를 확인하여 저장될 세그먼트를 확인하고 저장하는 방식으로 이루어질 수 있다.When the
이후, 관리부(320)가 입출력부(310)를 통해 컨텐츠서버 측 프록시서버(130)로부터, 저장부(330)에 저장한 하나 이상의 데이터 세그먼트를 제외한 컨텐츠의 나머지 데이터를 수신하면, 해당 나머지 데이터와 저장부(330)에 저장한 하나 이상의 데이터 세그먼트를 이용하여 해당 컨텐츠로 재구성하고 입출력부(310)를 통해 클라이언트로 전송한다.Subsequently, when the
이때, 만일 상기 나머지 데이터와 함께 저장부(330)에 저장된 하나 이상의 데이터 세그먼트에 대한 정보를 컨텐츠 데이터의 순서에 맞게 순차적으로 수신하면, 해당 순서에 따라 완전한 데이터로 재구성하고 클라이언트(110)로 전송하게 된다.In this case, if information about one or more data segments stored in the
본 발명의 일 실시예에 따른 컨텐츠 전송과정에 대해서는 도 5를 참조하여 좀 더 상세하게 설명하기로 한다.A content transmission process according to an embodiment of the present invention will be described in more detail with reference to FIG. 5.
도 5는 본 발명의 일 실시예에 따른 데이터 세그먼트 정보를 이용한 컨텐츠 전송방법의 흐름도이다. 도 5를 참조하면, 컨텐츠서버(140)가 컨텐츠서버 측 프록시서버(130)로 컨텐츠를 전송한다(S510).5 is a flowchart illustrating a content transmission method using data segment information according to an embodiment of the present invention. Referring to FIG. 5, the
단계(S510)에서 컨텐츠를 수신한 컨텐츠서버 측 프록시서버(130)는 설정에 따라 수신한 컨텐츠의 데이터를 복수의 세그먼트로 분할한다(S520). 그리고 분할된 복수의 세그먼트 중 클라이언트 측 프록시서버(120)에 저장할 하나 이상의 데이터 세그먼트를 선택하고, 선택된 하나 이상의 데이터 세그먼트에 대한 정보를 메모리 등에 저장함과 동시에, 하나 이상의 데이터 세그먼트가 클라이언트 측 프록시서버(120)에 저장되어야 함을 표시하는 정보를 포함한 복수의 세그먼트를 클라이언트 측 프록시서버(120)로 전송한다(S530).In step S510, the content server-
단계(S530)에서는, 예를 들어, 앞부분은 클라이언트(110)로부터 요청이 많으나 뒷부분은 그렇지 않은 동영상 컨텐츠의 경우 앞부분의 데이터 세그먼트 만을 저 장하도록 선택할 수 있을 것이고, 웹 페이지에 포함된 객체 중 업데이트 주기가 길어 자주 변경되지는 않으나 클라이언트(110)로부터 빈번히 요청되는 컨텐츠 등을 저장하도록 선택할 수도 있을 것이다.In the step S530, for example, the front part may select to store only the data segment of the front part in case of video content that has a lot of requests from the
클라이언트 측 프록시서버(120)는 단계(S530)에서 수신한 복수의 데이터 세그먼트의 헤더 등을 참조하여, 저장할 하나 이상의 데이터 세그먼트를 내부의 저장소 등에 저장한다(S540).The client-
이후, 클라이언트(110)가 컨텐츠서버(140)로 컨텐츠를 요청하면(S550), 컨텐츠서버(140)는 컨텐츠서버 측 프록시서버(130)로 해당 컨텐츠를 전송한다(S560).Then, when the
단계(S560)에서 컨텐츠를 수신한 컨텐츠서버 측 프록시서버(130)는 단계(S540)에서 클라이언트 측 프록시서버(120)에 저장한 하나 이상의 데이터 세그먼트 정보를 메모리 등에서 참조하여, 해당 컨텐츠의 데이터 중 단계(S540)에서 저장된 하나 이상의 데이터 세그먼트를 제외한 나머지 데이터와, 단계(S540)에서 저장한 하나 이상의 데이터 세그먼트에 대한 정보를 순차적으로 배열한다(S570). 그리고 배열된 데이터를 네트워크(150)를 통해 클라이언트 측 프록시서버(120)로 전송한다(S580).The content server-
단계(S580)에서 데이터를 수신한 클라이언트 측 프록시서버(120)는 수신한 데이터를 분석하여 데이터 세그먼트에 대한 정보의 위치에, 대응되는 데이터 세그먼트를 추가하여 완전한 컨텐츠로 재구성한다(S590). 단계(S590)에서 컨텐츠를 재구성한 클라이언트 측 프록시서버(120)는 재구성된 컨텐츠를 클라이언트(110)로 전송한다(S600). The client-
본 발명에 의하면 네트워크를 통해 중복하여 데이터가 전송되는 것을 방지할 수 있으며, 특히, WAN과 같이 전송되는 데이터량에 따라 전송 품질과 비용에 영향을 많이 받는 경우, 저비용이고도 효율적으로 데이터를 전송하는 것이 가능해진다.According to the present invention, data can be prevented from being duplicated through a network, and in particular, when data quality and cost are largely affected by the amount of data transmitted, such as a WAN, the data can be transmitted at low cost and efficiently. It becomes possible.
도 1은 본 발명의 일 실시예에 따른 데이터 세그먼트 정보를 이용한 컨텐츠 전송시스템의 구성도이다.1 is a block diagram of a content delivery system using data segment information according to an embodiment of the present invention.
도 2는 도 1에 도시된 컨텐츠서버 측 프록시서버의 구성도이다.FIG. 2 is a block diagram of a content server-side proxy server shown in FIG. 1.
도 3은 도 2에 도시된 메모리부에 저장되는 데이터 세그먼트 정보의 예시도이다.3 is an exemplary diagram of data segment information stored in a memory unit illustrated in FIG. 2.
도 4는 도 1에 도시된 클라이언트 측 프록시서버의 구성도이다.4 is a configuration diagram of the client-side proxy server shown in FIG.
도 5는 본 발명의 일 실시예에 따른 데이터 세그먼트 정보를 이용한 컨텐츠 전송방법의 흐름도이다.5 is a flowchart illustrating a content transmission method using data segment information according to an embodiment of the present invention.
Claims (14)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020090007984A KR101158366B1 (en) | 2009-02-02 | 2009-02-02 | System and method for contents delivery using data segment information, and proxy server thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020090007984A KR101158366B1 (en) | 2009-02-02 | 2009-02-02 | System and method for contents delivery using data segment information, and proxy server thereof |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20100088856A KR20100088856A (en) | 2010-08-11 |
KR101158366B1 true KR101158366B1 (en) | 2012-06-22 |
Family
ID=42754887
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020090007984A KR101158366B1 (en) | 2009-02-02 | 2009-02-02 | System and method for contents delivery using data segment information, and proxy server thereof |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101158366B1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102211606B1 (en) | 2019-12-26 | 2021-02-04 | 한양대학교 에리카산학협력단 | Proxy Server, Data Transmission Method And System Using Thereof |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109412981A (en) * | 2018-11-09 | 2019-03-01 | 深圳市酷开网络科技有限公司 | Data transmission method and its Transmission system, data restoration method and its go back original system |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100479334B1 (en) | 2002-11-29 | 2005-03-31 | 한국전자통신연구원 | Prefix prefetching system and method for multimedia streaming service on the internet |
-
2009
- 2009-02-02 KR KR1020090007984A patent/KR101158366B1/en active IP Right Grant
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100479334B1 (en) | 2002-11-29 | 2005-03-31 | 한국전자통신연구원 | Prefix prefetching system and method for multimedia streaming service on the internet |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102211606B1 (en) | 2019-12-26 | 2021-02-04 | 한양대학교 에리카산학협력단 | Proxy Server, Data Transmission Method And System Using Thereof |
Also Published As
Publication number | Publication date |
---|---|
KR20100088856A (en) | 2010-08-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20180205976A1 (en) | Method and apparatus of obtaining video fragment | |
US9525730B2 (en) | Method and apparatus for processing server load balancing by using the result of hash function | |
US9451298B2 (en) | Transmission device, transmission method, and network apparatus | |
US8392448B2 (en) | Method and apparatus for transmitting packets in the network | |
US20130246570A1 (en) | Partial Object Distribution in Content Delivery Network | |
CN103001964B (en) | Buffer memory accelerated method under a kind of LAN environment | |
US6954801B1 (en) | Method and system for reducing data volume transferred over a wireless communications network | |
KR20130088774A (en) | System and method for delivering segmented content | |
EP2113150A2 (en) | Improved distribution of content on a network | |
CN103024593A (en) | Online VOD (video on demand) acceleration system and online VOD playing method | |
US20100121914A1 (en) | Contents delivery system and method based on content delivery network provider and replication server thereof | |
EP3228047B1 (en) | Methods and network nodes for monitoring services in a content delivery network | |
CN102158518B (en) | Data transmission method in content distribution network (CDN), network node and system | |
US11841910B2 (en) | Token-based authentication for a proxy web scraping service | |
EP2556481A1 (en) | Partial object distribution in content delivery network | |
KR101140636B1 (en) | System and method for contents delivery using data segment information, and proxy server thereof | |
CN105893429A (en) | Method and system for optimizing WEB cache | |
US11206302B2 (en) | Method and device for feeding back a resource file | |
KR101158366B1 (en) | System and method for contents delivery using data segment information, and proxy server thereof | |
CN107249017B (en) | A kind of method and server obtaining HLS content by CDN network | |
US20140149499A1 (en) | Remote request fulfillment and delivery | |
CA3214799A1 (en) | Web scraping through use of proxies, and applications thereof | |
KR101104727B1 (en) | System and method for content delivery using cache server and browser cache | |
KR101066871B1 (en) | System and method for content delivery using cache server and browser cache | |
KR101091982B1 (en) | Method for content caching using cache server and browser cache, and cache server thereof |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
AMND | Amendment | ||
N231 | Notification of change of applicant | ||
E601 | Decision to refuse application | ||
J201 | Request for trial against refusal decision | ||
AMND | Amendment | ||
B701 | Decision to grant | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20150527 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20160530 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20180530 Year of fee payment: 7 |
|
FPAY | Annual fee payment |
Payment date: 20190521 Year of fee payment: 8 |