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 PDF

Info

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
Application number
KR1020090007984A
Other languages
Korean (ko)
Other versions
KR20100088856A (en
Inventor
전재식
김경환
장현민
Original Assignee
에스케이플래닛 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 에스케이플래닛 주식회사 filed Critical 에스케이플래닛 주식회사
Priority to KR1020090007984A priority Critical patent/KR101158366B1/en
Publication of KR20100088856A publication Critical patent/KR20100088856A/en
Application granted granted Critical
Publication of KR101158366B1 publication Critical patent/KR101158366B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • H04N21/222Secondary servers, e.g. proxy server, cable television Head-end
    • H04N21/2223Secondary servers, e.g. proxy server, cable television Head-end being a public access point, e.g. for downloading to or uploading from clients
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/10Architectures or entities
    • H04L65/1045Proxies, e.g. for session initiation protocol [SIP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/231Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing 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/434Disassembling 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

데이터 세그먼트 정보를 이용한 컨텐츠 전송시스템 및 방법, 그 프록시서버{System and method for contents delivery using data segment information, and proxy server thereof}System and method for contents delivery using data segment information, and proxy server

본 발명은 컨텐츠 전송시스템 및 방법, 그 프록시서버에 관한 것으로, 특히, 클라이언트 측 프록시서버에 저장된 데이터 세그먼트에 대한 정보를 이용하여, 네트워크 상에서 전송되는 데이터량을 최소화할 수 있는 데이터 세그먼트 정보를 이용한 컨텐츠 전송시스템 및 방법, 그 프록시서버에 대한 것이다.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 client 110, a client side proxy server 120, a content server side proxy server 130, a content server 140, and a network 150. .

클라이언트(110)는 네트워크(150)를 통해 컨텐츠서버(140)로부터 컨텐츠를 제공받는 컴퓨터 등의 장비를 의미한다. 클라이언트(110)는 현재 상용화되었거나 앞으로 상용화될 모든 유선 및 무선 통신 단말을 포함한다.The client 110 refers to equipment such as a computer that receives content from the content server 140 through the network 150. Client 110 includes all wired and wireless communication terminals that are currently or will be commercially available.

컨텐츠서버(140)는 컨텐츠 제공자(CP: Content Provider)가 운용하는 서버이며, 컨텐츠를 제공하는 역할을 한다.The content server 140 is a server operated by a content provider (CP) and serves to provide content.

네트워크(150)는 데이터 송수신을 위한 통신망을 의미한다. 예를 들어, 네트워크는 WAN(Wide Area Network)일 수 있다.The network 150 refers to a communication network for transmitting and receiving data. For example, the network may be a wide area network (WAN).

클라이언트 측 프록시서버(120) 및 컨텐츠서버 측 프록시서버(130)는 컴퓨터 사용자와 인터넷 사이에서 중개자 역할을 수행하는 서버로서, 보안이나 관리적 차원의 규제 그리고 캐시 서비스 등을 제공하는 서버를 의미한다.The client-side proxy server 120 and the content server-side proxy server 130 are servers that act as an intermediary between computer users and the Internet, and mean servers that provide security, administrative level regulation, and cache services.

본 발명에서 컨텐츠서버 측 프록시서버(130)는 컨텐츠서버(140)로부터 수신한 컨텐츠의 데이터를 복수의 세그먼트로 분할하고, 분할한 복수의 세그먼트 중 하나 이상의 데이터 세그먼트가 저장되어야 함을 표시하는 정보를 포함한 복수의 세그먼트를 클라이언트 측 프록시서버(120)로 전송한다. 예를 들어, 하나 이상의 데 이터 세그먼트가 저장되어야 함을 나타내는 정보는 전송되는 복수의 데이터 세그먼트가 전송되는 데이터 패킷의 헤더에 포함되어 전송될 수 있다. 그리고 클라이언트 측 프록시서버(120)는 컨텐츠서버 측 프록시서버(130)로부터 수신한 정보를 참조하여 하나 이상의 데이터 세그먼트를 저장한다.In the present invention, the content server side proxy server 130 divides the data of the content received from the content server 140 into a plurality of segments, and provides information indicating that one or more data segments of the divided plurality of segments should be stored. The plurality of segments, including the plurality of segments, are transmitted to the client-side proxy server 120. For example, the information indicating that one or more data segments should be stored may be transmitted in a header of a data packet in which a plurality of data segments to be transmitted are transmitted. The client-side proxy server 120 stores one or more data segments with reference to the information received from the content server-side proxy server 130.

이후, 컨텐츠서버(140)는 클라이언트(110)로부터 요청받은 컨텐츠 데이터를 컨텐츠서버 측 프록시서버(130)로 전송하는데, 컨텐츠서버 측 프록시서버(130)는 해당 컨텐츠의 데이터 중 클라이언트 측 프록시서버(120)에 기 저장된 데이터 세그먼트를 제외한 나머지 데이터를 네트워크(150)를 통해 클라이언트 측 프록시서버(120)로 전송한다. 클라이언트 측 프록시서버(120)는 컨텐츠서버 측 프록시서버(130)로부터 수신한 데이터와, 기 저장하여 보유하고 있는 데이터 세그먼트를 데이터의 순서에 맞게 온전한 컨텐츠로 재구성하고 클라이언트(110)로 전송한다.Thereafter, the content server 140 transmits the content data requested from the client 110 to the content server-side proxy server 130, and the content server-side proxy server 130 is the client-side proxy server 120 of the data of the content. Except for the data segment previously stored in the), the remaining data is transmitted to the client-side proxy server 120 through the network 150. The client-side proxy server 120 reconstructs the data received from the content server-side proxy server 130 and data segments previously stored and retained into intact contents according to the order of the data, and transmits them to the client 110.

이때, 컨텐츠서버 측 프록시서버(130)가 클라이언트 측 프록시서버(120)로 전송하는 데이터는, 클라이언트 측 프록시서버(120)에 저장되지 않은 데이터, 및 클라이언트 측 프록시서버(120)에 이미 저장된 데이터 세그먼트에 대한 정보를 포함한 데이터일 수 있다. 예를 들어, 클라이언트 측 프록시서버(120)에 저장되지 않은 데이터, 및 클라이언트 측 프록시서버(120)에 저장된 데이터 세그먼트에 대한 정보는, 컨텐츠 데이터의 순서에 따라 배열되어 순차적으로 클라이언트 측 프록시서버(120)로 전송될 수 있다. 이 경우, 클라이언트 측 프록시서버(120)에 저장되지 않은 데이터, 및 클라이언트 측 프록시서버(120)에 저장된 데이터 세그먼트에 대한 정보는 최대 전송 옥텟(octet)의 크기에 맞게 분할하여 전송할 수 있을 것이다. 이 를 통해, 네트워크(150) 상에서 존재하는 라우터 등에서 데이터를 재 패킷화 하는 불경제를 피하면서, 네트워크에서의 데이터 전송 효율을 극대화할 수 있게 된다.In this case, the data transmitted from the content server-side proxy server 130 to the client-side proxy server 120 includes data not stored in the client-side proxy server 120 and data segments already stored in the client-side proxy server 120. It may be data including information about. For example, data that is not stored in the client-side proxy server 120 and information about data segments stored in the client-side proxy server 120 are arranged according to the order of the content data and sequentially, the client-side proxy server 120. ) May be sent. In this case, data not stored in the client-side proxy server 120 and information about the data segment stored in the client-side proxy server 120 may be divided and transmitted according to the size of the maximum transmission octet. Through this, it is possible to maximize the data transmission efficiency in the network, while avoiding the uneconomical packetization of the data in the router or the like existing on the network (150).

이를 위해, 컨텐츠서버 측 프록시서버(130)는 클라이언트 측 프록시서버(120)에 저장된 하나 이상의 데이터 세그먼트에 대한 정보를 저장하고 있을 수 있다.To this end, the content server side proxy server 130 may store information about one or more data segments stored in the client side proxy server 120.

본 발명의 일 실시예에 따른 컨텐츠서버 측 프록시서버(130)의 구성 및 기능에 대해서는 도 2를 참조하여 좀 더 상세하게 설명하기로 한다.The configuration and function of the content server side proxy server 130 according to an embodiment of the present invention will be described in more detail with reference to FIG. 2.

도 2는 도 1에 도시된 컨텐츠서버 측 프록시서버(130)의 구성도이다. 도 2를 참조하면, 본 실시예에 따른 컨텐츠서버 측 프록시서버(130)는 송수신부(210), 제어부(220) 및 메모리부(230)를 포함한다.2 is a block diagram of the content server side proxy server 130 shown in FIG. 2, the content server-side proxy server 130 according to the present embodiment includes a transceiver 210, a controller 220, and a memory 230.

송수신부(210)는 데이터 송수신을 위한 인터페이스를 갖는다.The transceiver 210 has an interface for data transmission and reception.

메모리부(230)는 클라이언트 측 프록시서버(120)에 저장된 데이터 세그먼트에 대한 정보를 저장한 저장소이다.The memory unit 230 is a store that stores information about data segments stored in the client-side proxy server 120.

제어부(220)는 송수신부(210)를 통해 컨텐츠서버(140)로부터 컨텐츠를 수신하면 복수의 세그먼트로 분할하고, 분할한 복수의 데이터 세그먼트 중 하나 이상의 데이터 세그먼트가 클라이언트 측 프록시서버(120)에 저장되어야 함을 표시하는 정보를 포함하여, 해당 복수의 세그먼트 데이터를 클라이언트 측 프록시서버(120)로 전송한다. 이때, 하나 이상의 데이터 세그먼트가 저장되어야 함을 표시하는 정보는 상기와 같이 전송되는 데이터 패킷의 헤더에 포함되어 전송될 수 있으며, 클라이언트 측 프록시서버(120)에 저장될 하나 이상의 데이터 세그먼트에 대한 정보는 메모 리부(230)에 저장된다.When the controller 220 receives the content from the content server 140 through the transceiver 210, the controller 220 divides the content into a plurality of segments, and stores one or more data segments of the divided data segments in the client-side proxy server 120. The plurality of segment data is transmitted to the client-side proxy server 120 including information indicating that it should be. In this case, the information indicating that one or more data segments should be stored may be included in the header of the data packet transmitted as described above, and the information on one or more data segments to be stored in the client-side proxy server 120 may be transmitted. The memory unit 230 is stored.

이후, 제어부(220)가 송수신부(210)를 통하여 컨텐츠서버(140)로부터 전송된 컨텐츠를 수신하면 메모리부(230)에 저장된 하나 이상의 데이터 세그먼트에 대한 정보를 참조한다. 그리고, 컨텐츠서버(140)로부터 수신한 컨텐츠의 데이터에 포함된 데이터 세그먼트가 클라이언트 측 프록시서버(120)에 저장되어 있는 경우, 해당 데이터를 제외한 나머지 부분의 데이터를 클라이언트 측 프록시서버(120)로 전송한다.Thereafter, when the controller 220 receives the content transmitted from the content server 140 through the transceiver 210, the controller 220 refers to information about one or more data segments stored in the memory 230. When the data segment included in the data of the content received from the content server 140 is stored in the client-side proxy server 120, the data of the remaining portion except for the corresponding data is transmitted to the client-side proxy server 120. do.

컨텐츠서버 측 프록시서버(130)에서 클라이언트 측 프록시서버(120)로 데이터를 전송하는 경우에는, 예를 들어, 컨텐츠의 데이터 중 클라이언트 측 프록시서버(120)에 저장되지 않은 데이터와, 메모리부(230)에 이미 저장된 클라이언트 측 프록시서버(120)가 보유한 하나 이상의 데이터 세그먼트에 대한 정보를, 컨텐츠의 데이터 순서에 맞게 배열하고, 배열된 순서에 따라 데이터 세그먼트 정보를 더 포함하여 전송할 수도 있다. 이렇게 하여, 클라이언트 측 프록시서버(120)에서 이미 저장된 하나 이상의 데이터 세그먼트가 포함되는 위치를 파악하여 온전한 컨텐츠 데이터를 재구성하고 클라이언트(110)로 전송하는 것이 가능해 진다.When data is transmitted from the content server side proxy server 130 to the client side proxy server 120, for example, data that is not stored in the client side proxy server 120 among the data of the content and the memory unit 230. Information about one or more data segments held by the client-side proxy server 120 already stored in the parenthesis 120 may be arranged according to the data order of contents, and the data segment information may be further included and transmitted according to the arranged order. In this way, the client-side proxy server 120 can determine the location where one or more data segments are already stored to reconstruct the intact content data and transmit it to the client 110.

배열한 데이터와 하나 이상의 데이터 세그먼트에 대한 정보를 전송하는 경우에는, 최대 전송 옥텟의 크기에 맞게 순차적으로 분할하여 전송할 수 있다. 이를 통해, 라우터 등에서 재 패킷화해서 다시 보내는 시간 지연 없이 최대 효율로 전송하는 것이 가능해 진다.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 memory unit 230 according to an embodiment of the present invention will be described in more detail with reference to FIG. 3.

도 3은 도 2에 도시된 메모리부(230)에 저장되는 하나 이상의 데이터 세그먼트에 대한 정보의 예시도이다. 본 실시예에서 하나 이상의 데이터 세그먼트에 대한 정보는 정보테이블(300)의 형태로 메모리부(230)에 저장되나, 본 발명의 기술적 사상이 이에 한정되는 것은 아니다.3 is an exemplary diagram of information on one or more data segments stored in the memory unit 230 shown in FIG. 2. In the present embodiment, information on one or more data segments is stored in the memory unit 230 in the form of the information table 300, but the technical spirit of the present invention is not limited thereto.

정보테이블(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-side proxy server 120. The index is an item indicating a position where a corresponding segment exists in the content data. The segment size is an item representing the data size of each data segment.

정보테이블(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-side proxy server 120 among the data of the 'movie.vod' content in the information table 300 are 'segment1' and 'segment2'. Referring to the index item, the location of 'segment1' in the 'movie.vod' content data is '0 ... 0001' and the data size of 'segment1' is 1 mb (megabyte). Similarly, the position of 'segment2' is '0 ... 0010' and the data size is 2 mb.

이때, 인덱스 정보는 컨텐츠서버 측 프록시서버(130) 및 클라이언트 측 프록시서버(120)의 설정에 따라 정해지며, 예를 들어, 각 컨텐츠의 데이터 내에서 세그먼트 데이터의 시작 위치 등을 나타내는 정보를 포함할 수 있다. 컨텐츠서버 측 프 록시서버(130)는 이러한 정보를 참조하여, 클라이언트 측 프록시서버(120)에 기 저장된 데이터 세그먼트를 제외한 데이터만을 전송하거나, 전송하는 데이터와 데이터 세그먼트에 대한 정보를 순차적으로 조합하고 최대 전송 옥텟의 크기만큼 패킷화하여 전송하는 것이 가능해 진다.At this time, the index information is determined according to the settings of the content server-side proxy server 130 and the client-side proxy server 120, for example, may include information indicating the start position of the segment data in the data of each content. Can be. The content server-side proxy server 130 refers to this information and transmits only data except data segments previously stored in the client-side proxy server 120, or sequentially combines and transmits data and information on data segments. It is possible to packetize and transmit as much as the size of a transmission octet.

본 발명의 일 실시예에 따른 클라이언트 측 프록시서버(120)에 대해서는 도 4를 참조하여 좀 더 상세하게 설명하기로 한다.The client-side proxy server 120 according to an embodiment of the present invention will be described in more detail with reference to FIG. 4.

도 4는 도 1에 도시된 클라이언트 측 프록시서버(120)의 구성도이다. 도 4를 참조하면, 본 실시예에 따른 클라이언트 측 프록시서버(120)는 입출력부(310), 관리부(320) 및 저장부(330)를 포함한다.4 is a block diagram of the client-side proxy server 120 shown in FIG. Referring to FIG. 4, the client-side proxy server 120 according to the present embodiment includes an input / output unit 310, a management unit 320, and a storage unit 330.

입출력부(310)는 데이터 송수신을 위한 인터페이스를 갖는다.The input / output unit 310 has an interface for transmitting and receiving data.

저장부(330)는 컨텐츠서버(140)가 제공하는 컨텐츠의 데이터 세그먼트를 저장한 저장소이다.The storage unit 330 is a storage storing data segments of content provided by the content server 140.

관리부(320)는 입출력부(310)를 통해 컨텐츠서버 측 프록시서버(130)로부터 특정 컨텐츠를 구성하는 복수의 세그먼트를 수신하면 그 중 하나 이상의 데이터 세그먼트를 저장부(330)에 저장한다. 예를 들어, 하나 이상의 데이터 세그먼트 저장은, 전송되는 복수의 데이터 세그먼트의 헤더 정보를 확인하여 저장될 세그먼트를 확인하고 저장하는 방식으로 이루어질 수 있다.When the management unit 320 receives a plurality of segments constituting specific content from the proxy server 130 through the input / output unit 310, one or more data segments thereof are stored in the storage unit 330. For example, storing one or more data segments may be performed by checking header information of a plurality of data segments to be transmitted to identify and store a segment to be stored.

이후, 관리부(320)가 입출력부(310)를 통해 컨텐츠서버 측 프록시서버(130)로부터, 저장부(330)에 저장한 하나 이상의 데이터 세그먼트를 제외한 컨텐츠의 나머지 데이터를 수신하면, 해당 나머지 데이터와 저장부(330)에 저장한 하나 이상의 데이터 세그먼트를 이용하여 해당 컨텐츠로 재구성하고 입출력부(310)를 통해 클라이언트로 전송한다.Subsequently, when the management unit 320 receives the remaining data of the content except the one or more data segments stored in the storage unit 330 from the proxy server 130 through the input / output unit 310, the remaining data and One or more data segments stored in the storage unit 330 are used to reconstruct the corresponding content and transmitted to the client through the input / output unit 310.

이때, 만일 상기 나머지 데이터와 함께 저장부(330)에 저장된 하나 이상의 데이터 세그먼트에 대한 정보를 컨텐츠 데이터의 순서에 맞게 순차적으로 수신하면, 해당 순서에 따라 완전한 데이터로 재구성하고 클라이언트(110)로 전송하게 된다.In this case, if information about one or more data segments stored in the storage unit 330 together with the remaining data is sequentially received according to the order of the content data, the information is reconstructed into complete data and transmitted to the client 110 in the corresponding order. do.

본 발명의 일 실시예에 따른 컨텐츠 전송과정에 대해서는 도 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 content server 140 transmits content to the content server side proxy server 130 (S510).

단계(S510)에서 컨텐츠를 수신한 컨텐츠서버 측 프록시서버(130)는 설정에 따라 수신한 컨텐츠의 데이터를 복수의 세그먼트로 분할한다(S520). 그리고 분할된 복수의 세그먼트 중 클라이언트 측 프록시서버(120)에 저장할 하나 이상의 데이터 세그먼트를 선택하고, 선택된 하나 이상의 데이터 세그먼트에 대한 정보를 메모리 등에 저장함과 동시에, 하나 이상의 데이터 세그먼트가 클라이언트 측 프록시서버(120)에 저장되어야 함을 표시하는 정보를 포함한 복수의 세그먼트를 클라이언트 측 프록시서버(120)로 전송한다(S530).In step S510, the content server-side proxy server 130 that receives the content divides the data of the received content into a plurality of segments according to the setting (S520). One or more data segments to be stored in the client-side proxy server 120 are selected from among the plurality of divided segments, and information about the selected one or more data segments is stored in a memory or the like, and at least one data segment is stored in the client-side proxy server 120. In step S530, a plurality of segments including information indicating that the information should be stored in the client server is transmitted to the client-side proxy server 120.

단계(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 client 110 but not the back part, and the update period among the objects included in the web page. May be selected to store content that is not frequently changed but is frequently requested from the client 110.

클라이언트 측 프록시서버(120)는 단계(S530)에서 수신한 복수의 데이터 세그먼트의 헤더 등을 참조하여, 저장할 하나 이상의 데이터 세그먼트를 내부의 저장소 등에 저장한다(S540).The client-side proxy server 120 stores one or more data segments to be stored in an internal storage or the like by referring to headers of the plurality of data segments received in step S530 (S540).

이후, 클라이언트(110)가 컨텐츠서버(140)로 컨텐츠를 요청하면(S550), 컨텐츠서버(140)는 컨텐츠서버 측 프록시서버(130)로 해당 컨텐츠를 전송한다(S560).Then, when the client 110 requests the content to the content server 140 (S550), the content server 140 transmits the corresponding content to the proxy server 130 of the content server (S560).

단계(S560)에서 컨텐츠를 수신한 컨텐츠서버 측 프록시서버(130)는 단계(S540)에서 클라이언트 측 프록시서버(120)에 저장한 하나 이상의 데이터 세그먼트 정보를 메모리 등에서 참조하여, 해당 컨텐츠의 데이터 중 단계(S540)에서 저장된 하나 이상의 데이터 세그먼트를 제외한 나머지 데이터와, 단계(S540)에서 저장한 하나 이상의 데이터 세그먼트에 대한 정보를 순차적으로 배열한다(S570). 그리고 배열된 데이터를 네트워크(150)를 통해 클라이언트 측 프록시서버(120)로 전송한다(S580).The content server-side proxy server 130 that has received the content in step S560 refers to one or more data segment information stored in the client-side proxy server 120 in step S540 from a memory or the like, and among the data of the corresponding content. The remaining data except for the one or more data segments stored in S540 and the information on the one or more data segments stored in S540 are sequentially arranged (S570). Then, the arranged data is transmitted to the client side proxy server 120 through the network 150 (S580).

단계(S580)에서 데이터를 수신한 클라이언트 측 프록시서버(120)는 수신한 데이터를 분석하여 데이터 세그먼트에 대한 정보의 위치에, 대응되는 데이터 세그먼트를 추가하여 완전한 컨텐츠로 재구성한다(S590). 단계(S590)에서 컨텐츠를 재구성한 클라이언트 측 프록시서버(120)는 재구성된 컨텐츠를 클라이언트(110)로 전송한다(S600). The client-side proxy server 120 that has received the data in step S580 analyzes the received data and adds the corresponding data segment to the position of the information on the data segment to reconstruct the complete content (S590). The client-side proxy server 120 reconstructing the content in step S590 transmits the reconstructed content to the client 110 (S600).

본 발명에 의하면 네트워크를 통해 중복하여 데이터가 전송되는 것을 방지할 수 있으며, 특히, 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)

컨텐츠서버로부터 수신한 컨텐츠를 복수의 데이터 세그먼트로 분할하고, 상기 복수의 데이터 세그먼트 중 하나 이상의 데이터 세그먼트에 대하여 저장되어야 함을 표시하는 정보를 포함하여 상기 복수의 데이터 세그먼트를 전송하며, 이후, 상기 컨텐츠서버로부터 상기 컨텐츠를 다시 수신하면 상기 하나 이상의 데이터 세그먼트를 제외한 나머지 데이터를 전송하는 컨텐츠서버 측 프록시서버; 및Dividing the content received from the content server into a plurality of data segments, and transmitting the plurality of data segments including information indicating that one or more data segments of the plurality of data segments are to be stored; A content server side proxy server for transmitting the remaining data except for the one or more data segments when the content is received from the server again; And 상기 컨텐츠서버 측 프록시서버로부터 상기 복수의 데이터 세그먼트를 수신하면, 상기 정보를 참조하여 상기 복수의 데이터 세그먼트 중 상기 하나 이상의 세그먼트를 저장하고, 상기 컨텐츠서버 측 프록시서버로부터 상기 컨텐츠 중 상기 하나 이상의 데이터 세그먼트를 제외한 나머지 데이터를 수신하면 상기 나머지 데이터와 상기 저장한 하나 이상의 데이터 세그먼트를 이용하여 상기 컨텐츠로 재구성하고 재구성한 컨텐츠를 클라이언트로 전송하는 클라이언트 측 프록시서버;를 포함하는 데이터 세그먼트 정보를 이용한 컨텐츠 전송시스템.Receiving the plurality of data segments from the content server side proxy server, storing the one or more segments of the plurality of data segments with reference to the information, and storing the one or more data segments of the content from the content server side proxy server A client-side proxy server configured to reconstruct the content using the remaining data and the stored one or more data segments and to transmit the reconstructed content to a client when receiving the remaining data except for the data. . 제1항에 있어서, 상기 컨텐츠서버 측 프록시서버는The proxy server of claim 1, wherein the content server-side proxy server comprises: 상기 하나 이상의 데이터 세그먼트에 대하여 저장되어야 함을 표시하는 정보를 데이터 패킷의 헤더에 포함하여 전송하는 것을 특징으로 하는 데이터 세그먼트 정보를 이용한 컨텐츠 전송시스템.And transmitting information indicating that the data packet is to be stored in the header of the data packet. 제1항에 있어서, 상기 컨텐츠서버 측 프록시서버는The proxy server of claim 1, wherein the content server-side proxy server comprises: 상기 나머지 데이터와 상기 하나 이상의 데이터 세그먼트에 대한 정보를 상기 컨텐츠의 데이터 순서에 맞게 배열하고, 상기 배열된 순서에 따라 상기 나머지 데이터에 상기 하나 이상의 데이터 세그먼트에 대한 정보를 더 포함하여 전송하는 것을 특징으로 하는 데이터 세그먼트 정보를 이용한 컨텐츠 전송시스템.And arranging the remaining data and the information on the one or more data segments according to the data order of the contents, and transmitting the remaining data and the information on the one or more data segments in the remaining data according to the arranged order. Content delivery system using the data segment information. 제3항에 있어서, 상기 컨텐츠서버 측 프록시서버는The proxy server of claim 3, wherein the content server-side proxy server comprises: 상기 배열한 상기 나머지 데이터와 상기 하나 이상의 데이터 세그먼트에 대한 정보를 최대 전송 옥텟(octet)의 크기에 맞게 순차적으로 분할하여 전송하는 것을 특징으로 하는 데이터 세그먼트 정보를 이용한 컨텐츠 전송시스템.And dividing the remaining data and the information on the one or more data segments in sequence according to a size of a maximum transmission octet. 컨텐츠 서버 측 프록시 서버가 컨텐츠서버로부터 수신한 컨텐츠를 복수의 데이터 세그먼트로 분할하고, 상기 복수의 데이터 세그먼트 중 하나 이상의 데이터 세그먼트에 대하여 저장되어야 함을 표시하는 정보를 포함하여, 상기 복수의 데이터 세그먼트를 클라이언트 측 프록시서버로 전송하는 제1 전송단계;The content server-side proxy server divides the content received from the content server into a plurality of data segments, and includes the plurality of data segments, including information indicating that the content server side should be stored for one or more data segments of the plurality of data segments. A first transmission step of transmitting to a client-side proxy server; 상기 클라이언트 측 프록시서버가 상기 정보를 참조하여 상기 복수의 데이터 세그먼트 중에서 상기 하나 이상의 데이터 세그먼트를 저장하는 저장단계;A storage step of storing, by the client side proxy server, the one or more data segments among the plurality of data segments with reference to the information; 상기 저장단계 이후 상기 컨텐츠서버 측 프록시서버가 상기 컨텐츠서버로부터 상기 컨텐츠를 수신하면 상기 하나 이상의 데이터 세그먼트를 제외한 나머지 데이터를 상기 클라이언트 측 프록시서버로 전송하는 제2 전송단계; 및A second transmission step of transmitting the remaining data except 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 상기 클라이언트 측 프록시서버가 상기 컨텐츠서버 측 프록시서버로부터 수신한 상기 나머지 데이터와 상기 저장된 하나 이상의 데이터 세그먼트를 이용하여 상기 컨텐츠로 재구성하고 상기 재구성한 컨텐츠를 클라이언트로 전송하는 제3 전송단계; 를 포함하는 데이터 세그먼트 정보를 이용한 컨텐츠 전송방법.A third transmission step of the client-side proxy server reconstructing the content using the remaining data and the stored one or more data segments received from the content server-side proxy server and transmitting the reconstructed content to a client; Content transmission method using data segment information comprising a. 제5항에 있어서, 상기 제2 전송단계는The method of claim 5, wherein the second transmission step 상기 나머지 데이터와 상기 하나 이상의 데이터 세그먼트에 대한 정보를 상기 컨텐츠의 데이터 순서에 맞게 배열하고 상기 배열된 순서에 따라 상기 나머지 데이터에 상기 하나 이상의 데이터 세그먼트에 대한 정보를 더 포함하여 전송하는 것을 특징으로 하는 데이터 세그먼트 정보를 이용한 컨텐츠 전송방법.And arranging the remaining data and the information on the one or more data segments according to the data order of the contents and transmitting the remaining data and the information on the one or more data segments to the remaining data according to the arranged order. Content transmission method using data segment information. 제6항에 있어서, 상기 제2 전송단계는The method of claim 6, wherein the second transmission step 상기 배열한 상기 나머지 데이터와 상기 하나 이상의 데이터 세그먼트에 대한 정보를 최대 전송 옥텟의 크기에 맞게 순차적으로 분할하여 전송하는 것을 특징으로 하는 데이터 세그먼트 정보를 이용한 컨텐츠 전송방법.And dividing the remaining data and the information about the one or more data segments in sequence according to a size of a maximum transmission octet. 데이터 송수신을 위한 송수신부;Transceiver for transmitting and receiving data; 클라이언트 측 프록시서버에 저장되는 하나 이상의 데이터 세그먼트에 대한 정보를 저장한 메모리부; 및A memory unit for storing information about one or more data segments stored in the client-side proxy server; And 상기 송수신부를 통해 컨텐츠서버로부터 수신한 컨텐츠를 복수의 데이터 세그먼트로 분할하고, 상기 복수의 데이터 세그먼트 중 하나 이상의 데이터 세그먼트에 대하여 저장되어야 함을 표시하는 정보를 포함하여, 상기 복수의 데이터 세그먼트를 상기 클라이언트 측 프록시서버로 전송함과 동시에 상기 하나 이상의 데이터 세그먼트에 대한 정보를 상기 메모리부에 저장하며, 이후 상기 컨텐츠서버로부터 상기 컨텐츠를 다시 수신하면 상기 메모리부에 저장된 상기 하나 이상의 데이터 세그먼트에 대한 정보를 참조하여 상기 컨텐츠의 데이터 중 상기 하나 이상의 데이터 세그먼트를 제외한 나머지 데이터를 상기 클라이언트 측 프록시서버로 전송하는 제어부; 를 포함하는 컨텐츠서버 측 프록시서버.The client receives the plurality of data segments by including information indicating that the content received from the content server through the transceiver is divided into a plurality of data segments, and indicating that the contents should be stored for at least one data segment of the plurality of data segments. And transmits the information on the one or more data segments to the proxy server at the same time, and when receiving the content from the content server again, refers to the information on the one or more data segments stored in the memory. A control unit for transmitting remaining data except for the one or more data segments of the content data to the client-side proxy server; Content server side proxy server comprising a. 제8항에 있어서, 상기 제어부는The method of claim 8, wherein the control unit 상기 하나 이상의 데이터 세그먼트가 저장되어야 함을 표시하는 정보를 데이터 패킷의 헤더에 포함하여 전송하는 것을 특징으로 하는 컨텐츠서버 측 프록시서버.Content server side proxy server, characterized in that for transmitting the information indicating that the at least one data segment should be stored in the header of the data packet. 제8항에 있어서, 상기 제어부는The method of claim 8, wherein the control unit 상기 나머지 데이터와 상기 하나 이상의 데이터 세그먼트에 대한 정보를 상기 컨텐츠의 데이터 순서에 맞게 배열하고 상기 배열된 순서에 따라 상기 나머지 데이터에 상기 하나 이상의 데이터 세그먼트에 대한 정보를 더 포함하여 전송하는 것을 특징으로 하는 컨텐츠서버 측 프록시서버.And arranging the remaining data and the information on the one or more data segments according to the data order of the contents and transmitting the remaining data and the information on the one or more data segments to the remaining data according to the arranged order. Content server side proxy server. 제10항에 있어서, 상기 제어부는The method of claim 10, wherein the control unit 상기 배열한 상기 나머지 데이터와 상기 하나 이상의 데이터 세그먼트에 대한 정보를 최대 전송 옥텟의 크기에 맞게 순차적으로 분할하여 전송하는 것을 특징으로 하는 컨텐츠서버 측 프록시서버.The content server side proxy server, characterized in that for transmitting the divided data and the information on the one or more data segments sequentially divided according to the size of the maximum transmission octet. 데이터 송수신을 위한 입출력부;Input and output unit for transmitting and receiving data; 하나 이상의 데이터 세그먼트를 저장한 저장부; 및A storage unit storing one or more data segments; And 상기 입출력부를 통해 컨텐츠서버 측 프록시서버로부터 컨텐츠를 구성하는 복수의 데이터 세그먼트를 수신하면, 그 중 하나 이상의 데이터 세그먼트를 상기 저장부에 저장하고, 이후 상기 입출력부를 통해 상기 컨텐츠서버 측 프록시서버로부터 상기 컨텐츠 중 상기 하나 이상의 데이터 세그먼트를 제외한 나머지 데이터를 수신하면 상기 나머지 데이터와 상기 저장한 하나 이상의 데이터 세그먼트를 이용하여 상기 컨텐츠로 재구성하고 재구성된 컨텐츠를 상기 입출력부를 통해 클라이언트로 전송하는 관리부;를 포함하는 클라이언트 측 프록시서버.When receiving a plurality of data segments constituting content from a content server side proxy server through the input / output unit, one or more data segments are stored in the storage unit, and then the content is stored from the content server side proxy server through the input / output unit. A management unit configured to reconstruct the content using the remaining data and the stored one or more data segments, and to transmit the reconstructed content to the client through the input / output unit when receiving the remaining data except the one or more data segments. Side proxy server. 제12항에 있어서, 상기 관리부는The method of claim 12, wherein the management unit 상기 수신한 상기 복수의 데이터 세그먼트의 헤더에 포함된 정보를 확인하여 상기 하나 이상의 데이터 세그먼트를 저장하는 것을 특징으로 하는 클라이언트 측 프록시서버.And storing the one or more data segments by checking the information included in the received headers of the plurality of data segments. 제12항에 있어서, 상기 관리부는The method of claim 12, wherein the management unit 상기 나머지 데이터와 상기 저장한 상기 하나 이상의 데이터 세그먼트에 대한 정보를 상기 컨텐츠의 데이터 순서에 맞게 순차적으로 수신하면, 데이터 순서에 따라서 상기 컨텐츠로 재구성하여 상기 클라이언트로 전송하는 것을 특징으로 하는 클라이언트 측 프록시서버.And receiving the remaining data and the information on the stored one or more data segments in order according to the data order of the content, and reconfiguring the content according to the data order and transmitting the information to the client. .
KR1020090007984A 2009-02-02 2009-02-02 System and method for contents delivery using data segment information, and proxy server thereof KR101158366B1 (en)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Patent Citations (1)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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