[go: up one dir, main page]

KR100874094B1 - IPTV service provision server and method - Google Patents

IPTV service provision server and method Download PDF

Info

Publication number
KR100874094B1
KR100874094B1 KR1020070076279A KR20070076279A KR100874094B1 KR 100874094 B1 KR100874094 B1 KR 100874094B1 KR 1020070076279 A KR1020070076279 A KR 1020070076279A KR 20070076279 A KR20070076279 A KR 20070076279A KR 100874094 B1 KR100874094 B1 KR 100874094B1
Authority
KR
South Korea
Prior art keywords
channel
channels
state
delay time
additional intra
Prior art date
Legal status (The legal status 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 status listed.)
Expired - Fee Related
Application number
KR1020070076279A
Other languages
Korean (ko)
Inventor
송황준
이대붕
주현철
Original Assignee
포항공과대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 포항공과대학교 산학협력단 filed Critical 포항공과대학교 산학협력단
Priority to KR1020070076279A priority Critical patent/KR100874094B1/en
Application granted granted Critical
Publication of KR100874094B1 publication Critical patent/KR100874094B1/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

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/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • 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/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/23614Multiplexing of additional data and video streams
    • 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/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/2381Adapting the multiplex stream to a specific network, e.g. an Internet Protocol [IP] network
    • 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/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/2385Channel allocation; Bandwidth allocation
    • 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/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/258Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
    • H04N21/25866Management of end-user data
    • H04N21/25891Management of end-user data being end-user preferences

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Computer Graphics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

각 채널의 타입과 각 채널을 통해 전송될 영상 데이터에 삽입할 부가적인 인트라 프레임의 개수를 조절하여 네트워크 효율성을 증가시키면서 채널 변경 지연 시간은 감소시킬 수 있는 본 발명의 일 실시예에 따른 IPTV 서비스 제공 방법은 사용자에게 제공될 각 채널들의 채널 타입 및 상기 채널들을 통해 제공되는 영상 데이터에 삽입될 부가적인 인트라 프레임의 개수를 결정하는 단계; 상기 결정된 개수만큼의 부가적인 인트라 프레임을 상기 영상 데이터에 삽입하여 상기 영상 데이터를 인코딩하는 단계; 및 상기 결정된 각각의 채널 타입에 따라 상기 인코딩된 영상 데이터를 상기 채널에 대한 사용자의 요청 이전에 제1 라우터 또는 제2 라우터까지 전송하는 단계를 포함하는 것을 특징으로 한다.Providing an IPTV service according to an embodiment of the present invention can reduce channel change delay time while increasing network efficiency by adjusting the type of each channel and the number of additional intra frames to be inserted into video data to be transmitted through each channel. The method includes determining a channel type of each channel to be provided to a user and the number of additional intra frames to be inserted into image data provided through the channels; Encoding the image data by inserting the determined number of additional intra frames into the image data; And transmitting the encoded image data to the first router or the second router prior to a user's request for the channel according to each determined channel type.

Description

IPTV 서비스 제공 서버 및 방법{Server and Method for Providing Internet Protocol Television Service}IPTV service providing server and method {Server and Method for Providing Internet Protocol Television Service}

본 발명은 IPTV 서비스 제공 서버 및 그 방법에 관한 것으로서, 보다 구체적으로, IPTV 서비스 제공 시 네트워크 효율성을 높이면서 채널 변경 지연 시간은 감소시킬 수 있는 IPTV 서비스 제공 서버 및 그 방법에 관한 것이다.The present invention relates to an IPTV service providing server and a method thereof, and more particularly, to an IPTV service providing server and a method capable of reducing a channel change delay time while increasing network efficiency when providing an IPTV service.

통신 및 인터넷 기술의 발달로 인해 하나의 가입자 회선 상에서 방송, 전화, 및 데이터를 동시에 전송할 수 있는 TPS (Triple Play Service)가 등장하게 되었고, 이러한 TPS는 다양한 서비스를 하나의 회선을 통해 패키지 형태로 사용자에게 제공할 수 있다는 점에서 그 수요가 급증하고 있으며 이에 따라 이러한 서비스 제공 업체들도 급증하고 있다.Advances in telecommunications and Internet technologies have resulted in the introduction of the Triple Play Service (TPS), which allows simultaneous transmission of broadcast, telephone, and data on a single subscriber line. The demand is soaring in that it can be provided to the service provider, and so are these service providers.

이러한 TPS 서비스 중 대표적인 것이 IPTV(Internet Protocol Television) 서비스이다. IPTV 서비스는 기존의 인터넷 통신망을 통해 방송 서비스를 제공하는 것으로서 기존의 방송 서비스(케이블, 위성, 또는 지상파 방송 등)와 비교하여 볼때 네트워크 자원의 사용면에서 효율적이다. 구체적으로 도 1a에 도시된 바와 같이 기존의 방송 서비스는 사용자의 요구에 관계없이 모든 채널들이 항상 사용자에 게 전송되어야 하므로 대역폭의 낭비가 발생하게 되지만, IPTV 서비스는 도 1b에 도시된 바와 같이 IP 멀티캐스트 기술을 도입함으로써 사용자의 요청에 의한 채널만 전송하면 되므로 네트워크 자원을 효율적으로 사용할 수 있음은 물론, 이로 인해 부족한 가입자 회선의 대역폭 문제를 해소할 수 있다.One of such TPS services is IPTV (Internet Protocol Television) service. IPTV service provides a broadcasting service through the existing Internet communication network and is efficient in terms of the use of network resources as compared with the existing broadcasting service (cable, satellite, or terrestrial broadcasting). In detail, as shown in FIG. 1A, the conventional broadcast service requires a waste of bandwidth because all channels must be transmitted to the user regardless of the user's request. By adopting the cast technology, it is possible to efficiently use network resources because only the channel required by the user is transmitted, and it can solve the bandwidth problem of the insufficient subscriber line.

그러나, 이러한 IPTV 서비스의 경우 사용자에 의한 채널 요청이 발생하는 경우 해당 채널을 사용자에 전송하는 구조이므로, 사용자가 새로운 채널을 요청할 경우, 선택된 채널이 사용자 단말기에 출력되기까지의 지연(이하 '채널 변경 지연'이라 함)이 발생하게 된다.However, in the case of such an IPTV service, when a channel request by a user occurs, the corresponding channel is transmitted to the user. Therefore, when a user requests a new channel, a delay until the selected channel is output to the user terminal (hereinafter, 'channel change' Delay ').

이러한 채널 변경 지연은 크게 명령어 처리 지연, 네트워크 지연, 셋톱박스 지터 버퍼 지연, 및 디코딩 지연으로 구성된다. 명령어 처리 지연은 사용자가 채널 변경을 위해 리모트 컨트롤러를 통해 해당 채널을 선택한 시점부터 셋톱 박스가 채널 요청 메시지를 네트워크 상으로 전송하기까지의 지연이며, 네트워크 지연은 요청된 채널의 첫 번째 패킷을 수신하기까지의 지연이며, 셋톱박스 지터 버퍼 지연은 네트워크상에서 부가된 지터를 제거하기 위한 초기 버퍼링 지연을 의미하고, 디코딩 지연은 압축된 비디오 데이터의 디코딩 과정에서 발생되는 지연을 의미한다. 여기서 디코딩 지연은 비디오 데이터의 경우 인트라 프레임 없이 디코딩될 수 없음으로 인해 발생하는 것이다.This channel change delay consists of instruction processing delay, network delay, set-top box jitter buffer delay, and decoding delay. The command processing delay is the delay from when the user selects the channel through the remote controller to change the channel, until the set-top box sends the channel request message over the network. The network delay is used to receive the first packet of the requested channel. The delay to, the set-top box jitter buffer delay refers to the initial buffering delay for removing the added jitter on the network, the decoding delay refers to the delay incurred in the decoding process of the compressed video data. The decoding delay is caused by the fact that video data cannot be decoded without an intra frame.

이러한 채널 변경 지연으로 인해 사용자는 원하는 시점에 원하는 영상 데이터를 즉시 제공받을 수 없게 되므로 채널 변경 지연은 IPTV 서비스 제공의 효율성을 저해하는 중요한 문제점으로 대두 되고 있다.This delay in channel change prevents the user from immediately receiving the desired video data at the desired time. Therefore, the delay in channel change is an important problem that hinders the efficiency of IPTV service provision.

본 발명은 상술한 문제점을 해결하기 위한 것으로서, 각 채널의 타입과 각 채널을 통해 전송될 영상 데이터에 삽입할 부가적인 인트라 프레임의 개수를 조절하여 네트워크 효율성을 증가시키면서 채널 변경 지연 시간은 감소시킬 수 있는 IPTV 서비스 제공 서버 및 방법을 제공하는 것을 그 기술적 과제로 한다.SUMMARY OF THE INVENTION The present invention has been made to solve the above-described problems, and the channel change delay time can be reduced while increasing network efficiency by adjusting the type of each channel and the number of additional intra frames to be inserted into the image data to be transmitted through each channel. The technical problem is to provide an IPTV service providing server and method.

또한, 본 발명은 각 채널의 타입과 부가적인 인트라 프레임의 개수를 결정함에 있어서, 사용자의 채널에 대한 선호도를 반영할 수 있는 IPTV 서비스 제공 서버 및 방법을 제공하는 것을 또 다른 기술적 과제로 한다.In another aspect, the present invention is to provide an IPTV service providing server and method that can reflect the user's preference for the channel in determining the type of each channel and the number of additional intra frames.

또한, 본 발명은 각 채널의 타입과 부가적인 인트라 프레임의 개수를 결정함에 있어서 계산 복잡도를 감소시킬 수 있는 IPTV 서비스 제공 시스템 및 방법을 제공하는 것을 다른 기술적 과제로 한다.Another object of the present invention is to provide an IPTV service providing system and method capable of reducing computational complexity in determining the type of each channel and the number of additional intra frames.

상술한 목적을 달성하기 위한 본 발명의 일 측면에 따른 IPTV 서비스 제공 방법은 사용자에게 제공될 각 채널들의 채널 타입 및 상기 채널들을 통해 제공되는 영상 데이터에 삽입될 부가적인 인트라 프레임의 개수를 결정하는 단계; 상기 결정된 개수만큼의 부가적인 인트라 프레임을 상기 영상 데이터에 삽입하여 상기 영상 데이터를 인코딩하는 단계; 및 상기 각각의 채널 타입에 따라 상기 인코딩된 영상 데이터를 상기 채널에 대한 사용자의 요청 이전에 제1 라우터 또는 제2 라우터까지 전송하는 단계를 포함하는 것을 특징으로 한다.In accordance with an aspect of the present invention, an IPTV service providing method includes determining a channel type of each channel to be provided to a user and the number of additional intra frames to be inserted into image data provided through the channels. ; Encoding the image data by inserting the determined number of additional intra frames into the image data; And transmitting the encoded image data to the first router or the second router before the user request for the channel according to each channel type.

여기서, 상기 채널 타입은 상기 채널을 통해 전송되는 상기 영상 데이터를 제1 라우터까지 전송하는 제1 타입과 상기 영상 데이터를 제2 라우터까지 전송하는 제2 타입으로 분류되고, 상기 제1 라우터는 사용자 단말기에 인접한 라우터이고, 상기 제2 라우터는 상기 영상 데이터를 제공하는 IPTV 서비스 제공 서버에 인접한 라우터인 것을 특징으로 한다.Here, the channel type is classified into a first type for transmitting the image data transmitted through the channel to a first router and a second type for transmitting the image data to a second router, wherein the first router is a user terminal. The router is adjacent to the second router, characterized in that the router adjacent to the IPTV service providing server for providing the video data.

이때, 상기 채널 타입 및 상기 부가적인 인트라 프레임의 개수는 채널 변경 지연 시간이 소정 임계치 이하가 되도록 하면서 상기 영상 데이터의 제공에 요구되는 상기 채널들의 전체 대역폭이 최소가 되도록 결정할 수 있다.In this case, the channel type and the number of additional intra frames may be determined such that the total bandwidth of the channels required for providing the image data is minimized while the channel change delay time is less than or equal to a predetermined threshold.

일 실시예에 있어서, 상기 채널 타입 및 상기 인트라 프레임의 개수 결정단계는 상기 채널 타입 및 상기 인트라 프레임의 개수를 설정값으로 하여 제1 상태를 설정하고 상기 제1 상태에서의 채널 변경 지연시간을 산출하는 단계; 상기 제1 상태에서의 채널 변경 지연시간이 상기 임계치 이하인 경우 상기 제1 상태의 최초 설정값을 기준으로 상기 채널 타입 및 상기 부가적인 인트라 프레임의 개수를 결정하는 단계; 상기 제1 상태에서의 채널 변경 지연시간이 상기 임계치를 초과하는 경우, 상기 제1 상태의 최초 설정값을 변경시켜가면서 변경된 설정값들에 대한 채널 변경 지연 시간을 산출하는 단계; 및 상기 변경된 설정값들 중 상기 변경된 설정값에 대한 채널 변경 지연시간이 상기 임계치 이하가 되게 하는 설정값이 존재하는 경우 해당 설정값들 중 상기 채널의 대역폭이 최소가 되게 하는 설정값을 기준으로 상기 채널 타입 및 상기 인트라 프레임의 개수를 결정하고, 그렇지 않은 경우 상기 제1 상태를 제2 상태로 갱신하는 단계; 를 포함하되, 상기 채널 변경 지연시간이 상기 임계치가 되게 하는 설정값을 가지는 상태가 발견될 때까지 상기 변경된 설정값들에 대한 채널 변경 지연 시간 산출 단계 내지 상기 상태 갱신 단계를 반복하는 것을 특징으로 한다.In an embodiment, the determining of the number of channel types and the number of intra frames may include setting a first state by setting the channel type and the number of intra frames as a set value and calculating a channel change delay time in the first state. Doing; Determining the channel type and the number of additional intra frames based on an initial set value of the first state when the channel change delay time in the first state is less than or equal to the threshold; Calculating a channel change delay time for the changed setting values while changing the initial setting value of the first state when the channel change delay time in the first state exceeds the threshold; And if there is a setting value for causing the channel change delay time for the changed setting value to be less than or equal to the threshold value among the changed setting values, based on the setting value for minimizing the bandwidth of the channel among the setting values. Determining a channel type and the number of intra frames, and if not, updating the first state to a second state; Including, but repeating the channel change delay time calculation step and the state update step for the changed setting values until a state having a setting value for causing the channel change delay time to be the threshold value is found. .

이때, 상기 제1 상태에서 제2 상태로의 갱신은, 상기 제1 상태에서의 설정값 변경으로 인해 발생되는 코스트가 최대가 되게 하는 설정값을 상기 제2 상태의 최초 설정값으로 결정함으로써 수행되는데, 여기서 상기 코스트는 상기 제1 상태에서의 설정값에 대한 채널 변경 지연시간과 상기 임계치와의 차이값의 변화량과 상기 채널의 대역폭의 변화량의 비로 산출된다.At this time, the update from the first state to the second state is performed by determining a setting value that maximizes the cost incurred due to the change of the setting value in the first state as the initial setting value of the second state. Here, the cost is calculated as the ratio of the change amount of the difference between the channel change delay time and the threshold value with respect to the set value in the first state and the change amount of the bandwidth of the channel.

상술한 목적을 달성하기 위한 본 발명의 다른 측면에 따른 IPTV 제공 서버는 사용자에게 제공될 각 채널의 채널 타입 및 상기 채널들을 통해 제공되는 영상 데이터에 삽입될 부가적인 인트라 프레임의 개수를 결정하는 연산부; 상기 연산부에 의해 결정된 개수만큼의 상기 부가적인 인트라 프레임을 상기 영상 데이터에 삽입하여 상기 영상 데이터를 인코딩하는 인코더; 및 상기 연산부에 의해 정해진 상기 각각의 채널 타입에 따라 상기 인코딩된 영상 데이터를 상기 채널에 대한 사용자의 요청 이전에 사용자 단말기에 인접한 제1 라우터 또는 IPTV 제공 서버에 인접한 제2 라우터까지 전송하는 데이터 전송부를 포함하는 것을 특징으로 한다.In accordance with another aspect of the present invention, an IPTV provision server includes: an operation unit configured to determine a channel type of each channel to be provided to a user and the number of additional intra frames to be inserted into image data provided through the channels; An encoder which encodes the image data by inserting the additional intra frames as many as the number determined by the calculating unit into the image data; And a data transmitter configured to transmit the encoded image data according to each channel type determined by the calculator to a first router adjacent to a user terminal or a second router adjacent to an IPTV providing server before a user request for the channel. It is characterized by including.

본 발명에 따르면, 각 채널의 타입과 각 채널을 통해 전송될 영상 데이터에 삽입할 부가적인 인트라 프레임의 개수를 조절함으로써 네트워크 효율성은 증가시키고 채널 변경 지연 시간은 감소시킬 수 있다는 효과가 있다.According to the present invention, the network efficiency can be increased and the channel change delay time can be reduced by adjusting the type of each channel and the number of additional intra frames to be inserted into the image data to be transmitted through each channel.

또한, 본 발명에 따르면 각 채널의 타입과 부가적인 인트라 프레임 삽입 개수를 결정함에 있어서, 사용자의 채널에 대한 선호도를 반영함으로써 사용자의 선호도가 높은 채널을 사용자 단말기에 인접한 라우터까지 미리 전송하고 많은 인트라 프레임을 삽입함으로써 채널 변경 지연을 최소화할 수 있다는 효과가 있다.In addition, according to the present invention, in determining the type of each channel and the number of additional intra frame insertions, the channel having high user preference is transmitted to the router adjacent to the user terminal in advance by reflecting the user's preference for the channel. By inserting the channel change delay can be minimized.

또한, 본 발명은 각 채널의 타입과 부가적인 인트라 프레임의 개수를 결정함에 있어서 새로운 알고리즘을 적용함으로써 계산 복잡도를 감소시킬 수 있다는 효과가 있다.In addition, the present invention has an effect that the computational complexity can be reduced by applying a new algorithm in determining the type of each channel and the number of additional intra frames.

이하 첨부되는 도면을 참고하여, 본 발명의 바람직한 실시예를 상세하게 설명한다. 먼저, 본 발명의 상세한 설명에 앞서서, IPTV 서비스 제공 시스템의 일반적인 망 구성과, 이러한 IPTV 서비스 제공 시스템 하에서 채널 변경과정에 대해서 설명한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings. First, prior to the detailed description of the present invention, a general network configuration of an IPTV service providing system and a channel changing process under such an IPTV service providing system will be described.

도 2는 일반적인 IPTV 서비스 제공 시스템의 개략적인 구성도이다. 도시된 바와 같이 IPTV 서비스 제공 시스템(10)은 크게 홈 네트워크(12), 액세스 네트워크(13), 코어 네트워크(14), 및 코어 네트워크(14)의 끝단에 연결되는 IPTV 서비스 제공 서버(18)를 포함한다.2 is a schematic configuration diagram of a general IPTV service providing system. As shown, the IPTV service providing system 10 includes an IPTV service providing server 18 connected to a home network 12, an access network 13, a core network 14, and an end of the core network 14. Include.

홈 네트워크(12)는 게이트웨이(16), 사용자 단말기(19), 및 셋톱박스(STB: Set-top Box, 20)를 포함한다. 게이트웨이(16)는 홈 네트워크(12)와 액세스 네트워크(13)의 중계자 역할을 담당하는 것으로서, 홈 네트워크(12)의 채널을 관리하는 기능을 수행한다. 셋톱박스는 사용자 단말기(19)와 게이트웨이(16)에 연결되어 사 용자 단말기(19)로 IPTV 서비스를 제공하는 기능을 수행하며, 사용자 단말기(19)는 IPTV를 디스플레이하는 기능을 수행한다.The home network 12 includes a gateway 16, a user terminal 19, and a set-top box 20. The gateway 16 serves as a relay between the home network 12 and the access network 13, and performs a function of managing a channel of the home network 12. The set-top box is connected to the user terminal 19 and the gateway 16 to provide an IPTV service to the user terminal 19, and the user terminal 19 performs a function of displaying an IPTV.

액세스 네트워크(13)는 홈 네트워크(12)와 코어 네트워크(14)를 매개하는 네트워크로써 LHR(Last Hoop Router, 22)과 각종 스위칭 소자(미도시)를 포함한다. 여기서, LHR(22)은 사용자 단말기(19)에 가장 가까이 위치한 라우터를 의미한다.The access network 13 is a network that mediates the home network 12 and the core network 14, and includes an LHR (Last Hoop Router) 22 and various switching elements (not shown). Here, the LHR 22 means a router located closest to the user terminal 19.

코어 네트워크(14)는 LHR(22) 및 FHR(First Hoop Router, 23)을 매개하는 네트워크로서, IPTV 서비스 제공 서버(18)로부터 전달되는 방송서비스를 사용자 단말기(19)까지 전송하기 위한 복수개의 멀티캐스트 라우터(미도시)들로 구성된다. 여기서, FHR(23)은 IPTV 서비스 제공 서버(18)와 가장 가까이 위치한 라우터를 의미한다. The core network 14 is a network that intervenes the LHR 22 and the first Hoop Router (FHR) 23. The core network 14 includes a plurality of multi-channels for transmitting a broadcast service transmitted from the IPTV service providing server 18 to the user terminal 19. It consists of cast routers (not shown). Here, the FHR 23 means a router located closest to the IPTV service providing server 18.

IPTV 서비스 제공 서버(18)는 헤드엔드 (Head-end)로서 모든 채널을 외부 공급자로부터 수신하며, 네트워크의 효율성을 높이기 위해 IP 멀티캐스트 기술을 이용하여 방송 채널을 사용자에게 전송한다.The IPTV service providing server 18 receives all channels from an external provider as a head-end, and transmits a broadcast channel to a user by using IP multicast technology to increase network efficiency.

도 2에 도시된 IPTV 제공 시스템에서의 채널 변경과정을 도 3을 참조하여 구체적으로 설명한다.A channel change process in the IPTV providing system shown in FIG. 2 will be described in detail with reference to FIG. 3.

먼저, 1번 채널을 수신하고 있는 사용자가 리모트 컨트롤러를 이용하여 2번채널로의 채널 변경을 요청하는 경우, 셋톱박스(20)는 사용자의 채널 변경 요청에 상응하여 1번 채널에 대한 IGMP(Internet Group Management Protocol) 탈퇴(Leave) 메시지를 게이트 웨이(16)에게 전송하고, 게이트 웨이(16)는 IGMP 탈퇴 메시지를 LHR(22)에게 전달한다. 여기서, IGMP는 하나의 라우터와 여러 호스트로 구성되는 서브넷 안에서 라우터가 자신의 호스트들이 어떤 멀티캐스트 그룹에 관심이 있는지를 정의하는 것이다. 이후, IGMP 탈퇴 메시지를 수신한 LHR(22)은 IGMP Group-Specific Query 메시지를 자신이 관리하는 모든 게이트 웨이(미도시)에게 전송하며, 일정시간 동안 어떠한 응답도 수신되지 않는 경우 상위 라우터로 PIM Prune 메시지를 연계해가며 1번 채널에 대한 그룹 탈퇴를 수행한다.First, when a user receiving channel 1 requests a channel change to channel 2 by using a remote controller, the set-top box 20 corresponds to IGMP (Internet for channel 1) in response to the channel change request of the user. Group Management Protocol) leave message to the gateway 16, and the gateway 16 delivers an IGMP leave message to the LHR 22. Here, IGMP defines that a router is a multicast group whose hosts are interested in a subnet consisting of one router and several hosts. After that, the LHR 22 receiving the IGMP exit message transmits an IGMP Group-Specific Query message to all gateways (not shown) managed by the LGMP 22. If no response is received for a certain time, the PIM Prune is sent to the upper router. Perform group withdrawal on channel 1 while linking messages.

한편, 2번 채널에 대한 가입을 위해 셋톱박스(20)가 2번 채널에 대한 IGMP 가입(Join)메시지를 게이트 웨이(16)에 전송하면, 게이트 웨이(16)는 IGMP 가입 메시지를 LHR(22)에게 전달한다. IGMP 가입 메시지를 수신한 LHR(22)은 이미 2번 채널을 수신하고 있는 경우 해당 게이트 웨이(16)에게 2번 채널을 전송하며, 그렇지 않은 경우 상위 라우터로 PIM Join 메시지를 연계해가며 2번 채널에 대한 그룹 가입을 시도한다. 이러한 과정을 통해 사용자의 채널 변경 요청에 상응하여 요청된 채널이 사용자에게 수신되며, 수신된 채널의 디코딩 과정을 거쳐 해당 채널이 사용자에게 디스플레이된다.Meanwhile, when the set-top box 20 transmits an IGMP join message for channel 2 to the gateway 16 to subscribe to channel 2, the gateway 16 sends an IGMP subscription message to the LHR 22. To). When receiving the IGMP subscription message, the LHR 22 transmits channel 2 to the corresponding gateway 16 if the channel 2 is already received. Otherwise, the LHR 22 associates the PIM Join message to the upper router and channel 2 Attempt to join the group. Through this process, the requested channel is received by the user according to the channel change request of the user, and the corresponding channel is displayed to the user through the decoding process of the received channel.

상술한 바와 같이 채널의 변경 과정에서 새로운 채널이 사용자에게 수신될 때까지 이전 채널의 그룹으로부터의 탈퇴 및 새로운 채널 그룹으로의 가입으로 인한 네트워크 지연이 발생하게 되며, 또한 해당 채널 수신 후 압축된 비디오 데이터의 디코딩 과정에서 디코딩 지연이 발생하게 되므로, 본 발명에서는 이러한 채널 변경 지연을 최소화할 수 있는 IPTV 서비스 제공 서버 및 제공 방법을 제공하고자 하는 것이다. 이하에서는 N명의 사용자에게 M개의 채널로 구성된 IPTV 서비스를 제공하는 것을 기준으로 하여 설명한다.As described above, a network delay occurs due to the withdrawal from the group of the previous channel and the subscription to the new channel group until the new channel is received by the user in the channel change process, and the compressed video data after receiving the channel. Since the decoding delay occurs during the decoding process of the present invention, an object of the present invention is to provide an IPTV service providing server and a method for minimizing such a channel change delay. Hereinafter, a description will be given based on providing an IPTV service including M channels to N users.

도 4는 본 발명의 일 실시예에 따라 IPTV 서비스를 제공할 수 있는 IPTV 서비스 제공 서버의 개략적인 블럭도를 보여준다. 도시된 바와 같이 IPTV 서비스 제공 서버(18)는 연산부(24), 인코더(26), 및 데이터 전송부(28)를 포함한다.4 is a schematic block diagram of an IPTV service providing server capable of providing an IPTV service according to an embodiment of the present invention. As shown, the IPTV service providing server 18 includes an operation unit 24, an encoder 26, and a data transmission unit 28.

연산부(24)는 채널이 대역폭과 채널 변경 지연을 최소화할 수 있도록 각 채널의 채널 타입 및 각 채널들을 통해 제공되는 영상 데이터에 삽입될 부가적인 인트라 프레임(Intra Frame)의 개수를 결정한다. 여기서, 연산부(24)에 의해 결정되는 채널 타입이란 소정 채널이 사용자의 요청 이전에 사용자 단말기(19)에 인접한 라우터까지 미리 전송되어야 하는 채널 타입(이하 '정적채널'이라 함)인지, 아니면 IPTV 서비스 제공 서버(18)에 인접한 라우터까지만 전송되어 있으면 되는 채널 타입(이하 '동적채널'이라 함)인지를 의미한다.The calculator 24 determines the channel type of each channel and the number of additional intra frames to be inserted into the image data provided through the channels so that the channel can minimize the bandwidth and the channel change delay. Here, the channel type determined by the calculator 24 is a channel type (hereinafter referred to as a 'static channel') to be transmitted to a router adjacent to the user terminal 19 before the user's request, or an IPTV service. It means whether the channel type (hereinafter referred to as "dynamic channel") that should be transmitted only to the router adjacent to the providing server 18.

연산부(24)가 각 채널에 대해 채널의 타입을 결정하는 이유는 소정 채널을 정적 채널로 결정하게 되면 네트워크 지연은 상대적으로 감소하지만 어떠한 사용자도 해당 채널을 시청하지 않는 경우 네트워크 대역폭의 낭비를 야기할 수 있고, 소정 채널을 동적 채널로 결정하게 되면 네트워크 대역폭은 효율적으로 사용할 수 있지만 사용자가 해당 채널을 요청하는 경우 네트워크 지연이 증가하게 되므로, 채널의 대역폭과 채널 지연을 가장 효율적으로 조절하기 위한 것이다.The reason why the operation unit 24 determines the channel type for each channel is that if the predetermined channel is determined as a static channel, the network delay is relatively reduced, but if no user is watching the channel, it may cause a waste of network bandwidth. If the predetermined channel is determined to be a dynamic channel, the network bandwidth can be efficiently used, but when the user requests the channel, the network delay increases, so that the bandwidth and channel delay of the channel are most efficiently adjusted.

또한, 연산부(24)가 영상 데이터에 삽입될 부가적인 인트라 프레임의 개수를 결정하는 이유도 채널 대역폭과 채널 지연을 효율적으로 조절하기 위한 것인데, 구체적으로 각 채널에 관한 디코딩 지연을 효율적으로 조절하기 위한 것이다. 여기서, 영상 데이터에 부가적인 인트라 프레임을 삽입하는 것은 디코딩시 영상 데이터 의 인트라 프레임을 기다릴 필요없이 부가적인 인트라 프레임을 이용하여 디코딩을 수행할 수 있어 디코딩 지연을 감소시킬 수 있기 때문인데, 이때 디코딩 지연을 감소시키기 위해 부가적인 인프라 프레임의 개수를 증가시키기 되면 채널의 대역폭이 증가하게 되기 때문에 연산부(24)는 이를 조절하기 위해 적절한 인트라 프레임의 개수를 결정하는 것이다.In addition, the reason why the operation unit 24 determines the number of additional intra frames to be inserted into the image data is to efficiently adjust the channel bandwidth and the channel delay, and specifically, to efficiently control the decoding delay for each channel. will be. In this case, the additional intra frame is inserted into the image data because decoding can be performed using the additional intra frame without having to wait for the intra frame of the image data during decoding, thereby reducing the decoding delay. If the number of additional infrastructure frames is increased in order to reduce the number of frames, the bandwidth of the channel is increased, so that the operation unit 24 determines the number of appropriate intra frames to adjust this.

구체적으로, 연산부(24)는 각 채널의 타입과 부가적인 인트라 프레임의 개수를 결정함에 있어서, 채널 변경 지연시간이 소정 임계치 이하가 되도록 하면서 영상 데이터의 제공에 요구되는 채널들의 전체 대역폭이 최소가 되도록 채널의 타입과 부가적인 인트라 프레임의 개수를 결정하는데, 이를 위해 연산부(24)는 도 4에 도시된 바와 같이 채널 선호도 산출부(30), 지연 시간 산출부(32), 대역폭 산출부(34), 및 채널 특성 결정부(36)를 포함한다.Specifically, the calculator 24 determines the type of each channel and the number of additional intra frames so that the channel change delay time is equal to or less than a predetermined threshold while the overall bandwidth of channels required for providing image data is minimized. The type of the channel and the number of additional intra frames are determined. For this purpose, the calculation unit 24 includes the channel preference calculator 30, the delay time calculator 32, and the bandwidth calculator 34 as illustrated in FIG. 4. And a channel characteristic determiner 36.

채널 선호도 산출부(30)는 각 사용자의 채널 선호도를 산출하는 것으로서, 이는 채널의 타입과 부가적인 인트라 프레임 삽입 개수를 결정함에 있어서, 각 사용자의 채널 선호도를 반영하기 위한 것이다. 이는 사용자의 선호도가 높은 채널은 정적채널로 결정하고, 사용자의 선호도가 낮은 채널은 동적채널로 결정하며, 사용자의 선호도가 높은 채널일수록 부가적인 인트라 프레임의 개수를 증가시키는 것이 채널의 대역폭 및 채널 지연을 감소시키는데 있어 효율적일 수 있기 때문이다. 이때, i번째 사용자의 채널 선호도는

Figure 112007055387054-pat00001
로 표기될 수 있고, i번째 사용자의 각 채널에 대한 선호도는
Figure 112007055387054-pat00002
로 표기될 수 있으며, M개의 채널에 대한 N명의 사용자 사이에서는 다음의 수학식 1과 같은 관계가 성립한다.The channel preference calculator 30 calculates the channel preference of each user, which is to reflect the channel preference of each user in determining the type of the channel and the number of additional intra frame insertions. This means that the channel with high user preference is determined as a static channel, the channel with low user preference is determined as a dynamic channel, and the higher the channel of the user preference, the higher the number of additional intra frames. Because it can be effective in reducing the At this time, the channel preference of the i th user is
Figure 112007055387054-pat00001
Where the i th user's preference for each channel is
Figure 112007055387054-pat00002
The relationship as shown in Equation 1 below is established among N users of M channels.

Figure 112007055387054-pat00003
Figure 112007055387054-pat00003

일 실시예에 있어서, 이러한 사용자의 채널 선호도는 각 사용자들의 채널별 시청 현황에 대한 통계자료를 이용하여 산출될 수 있는데, 구체적으로 각 사용자의 채널 선호도는 소정 시간 간격 동안 각 사용자가 소정 채널을 시청한 시간을 이용하여 추정할 수 있다. 이를 수학식으로 표현하면 다음과 같다.In one embodiment, such a user's channel preference may be calculated using statistics on the viewing status of each user's channel. Specifically, each user's channel preference is viewed by a user for a predetermined time interval. It can be estimated using one hour. This is expressed as an equation.

Figure 112007055387054-pat00004
Figure 112007055387054-pat00004

여기서,

Figure 112007055387054-pat00005
는 j번째 채널에 대한 i번째 사용자의 선호도를 의미하고,
Figure 112007055387054-pat00006
는 i번째 사용자가 j번째 채널을 시청한 시간을 의미하며,
Figure 112007055387054-pat00007
는 소정 시간 간격을 의미하고, N은 전체 사용자의 수를 의미한다.here,
Figure 112007055387054-pat00005
Is the i th user's preference for the j th channel,
Figure 112007055387054-pat00006
Means the time that the i th user watched the j th channel,
Figure 112007055387054-pat00007
Means a predetermined time interval, and N means the total number of users.

지연시간 산출부(32)는 채널 변경 지연시간을 산출하는 것으로서, 구체적으로 채널 변경 지연시간은 각 채널에 대한 네트워크 지연시간(각 채널이 수신되는데 소요되는 시간)과 각 채널을 통해 제공되는 영상 데이터의 디코딩에 소요되는 시간의 합에 각 채널에 대한 사용자의 선호도를 곱함으로써 산출된다. 이를 모든 채널에 대해 확장한 것을 수학식으로 표현하면 다음과 같다.The delay time calculation unit 32 calculates a channel change delay time. Specifically, the channel change delay time is a network delay time for each channel (time required for receiving each channel) and image data provided through each channel. It is calculated by multiplying the user's preference for each channel by the sum of the time taken to decode. This expansion of all channels is expressed as an equation as follows.

Figure 112007055387054-pat00008
Figure 112007055387054-pat00008

여기서,

Figure 112007055387054-pat00009
는 채널에 대한 네트워크 지연 시간을 나타내는 벡터로서
Figure 112007055387054-pat00010
로 표현되고,
Figure 112007055387054-pat00011
는 부가적인 인트라 프레임이 삽입된 영상 데이터의 디코딩 지연시간을 나타내는 벡터로서,
Figure 112007055387054-pat00012
로 표현된다. 따라서, 수학식 3은 채널의 네트워크 지연벡터와 디코딩 지연 벡터의 합과 사용자들 각각의 채널 선호도 값
Figure 112007055387054-pat00013
의 내적을 취함으로써 각 사용자에 대한 전체 채널의 지연시간을 산출하게 된다.here,
Figure 112007055387054-pat00009
Is a vector representing the network latency for the channel.
Figure 112007055387054-pat00010
Represented by
Figure 112007055387054-pat00011
Is a vector representing a decoding delay time of image data in which an additional intra frame is inserted.
Figure 112007055387054-pat00012
It is expressed as Therefore, Equation 3 is the sum of the network delay vector and the decoding delay vector of the channel and the channel preference value of each user.
Figure 112007055387054-pat00013
By taking the dot product, we calculate the delay of the entire channel for each user.

이때, j번째 채널에 대한 네트워크 지연시간인

Figure 112007055387054-pat00014
와 디코딩 지연시간인
Figure 112007055387054-pat00015
는 다음의 수학식 4 및 5와 같이 정의된다.At this time, the network delay time for the j th channel
Figure 112007055387054-pat00014
And the decoding delay time
Figure 112007055387054-pat00015
Is defined as in Equations 4 and 5 below.

Figure 112007055387054-pat00016
Figure 112007055387054-pat00016

여기서,

Figure 112007055387054-pat00017
Figure 112007055387054-pat00018
은 각각 인터넷 상에서 정적 채널과 동적 채널에 대한 평균 네트워크 지연 시간을 의미하며,
Figure 112007055387054-pat00019
Figure 112007055387054-pat00020
에 비해 상대적으로 매우 길다.here,
Figure 112007055387054-pat00017
and
Figure 112007055387054-pat00018
Are the average network latency for static and dynamic channels on the Internet, respectively.
Figure 112007055387054-pat00019
silver
Figure 112007055387054-pat00020
Relatively long compared to.

Figure 112007055387054-pat00021
Figure 112007055387054-pat00022
Figure 112007055387054-pat00021
Figure 112007055387054-pat00022

여기서,

Figure 112007055387054-pat00023
는 j 번째 채널을 통해 전송되는 영상 데이터에 포함된 하나의 GOP 구간에 삽입되는 부가적인 인트라 프레임의 개수를 나타내는 것으로서, 각각의 채널을 통해 제공되는 영상 데이터에 삽입될 부가적인 인트라 프레임의 개수를 벡터로 표현하면
Figure 112007055387054-pat00024
으로 표현할 수 있다. 한편,
Figure 112007055387054-pat00025
는 하나의 GOP 구간내에 삽입될 수 있는 부가적 인트라 프레임의 최대 개수를 나타내며,
Figure 112007055387054-pat00026
는 하나의 GOP의 크기를 나타낸다.here,
Figure 112007055387054-pat00023
Denotes the number of additional intra frames to be inserted into one GOP section included in the image data transmitted through the j-th channel. The vector indicates the number of additional intra frames to be inserted into the image data provided through each channel. In terms of
Figure 112007055387054-pat00024
It can be expressed as Meanwhile,
Figure 112007055387054-pat00025
Represents the maximum number of additional intra frames that can be inserted in one GOP interval,
Figure 112007055387054-pat00026
Represents the size of one GOP.

대역폭 산출부(34)는 영상 데이터의 제공에 요구되는 채널들의 전체 대역폭을 산출하는 것으로서, 각 채널의 채널 타입을 나타내는 소정값과 해당 채널을 통해 영상 데이터를 전송하기 위해 요구되는 대역폭의 곱을 구함으로써 각 채널의 대역폭을 산출하게 되는데, 이를 모든 채널에 대해 확장하면 다음의 수학식 6과 같다.The bandwidth calculator 34 calculates the total bandwidth of channels required for providing image data, and obtains a product of a predetermined value indicating a channel type of each channel and a bandwidth required for transmitting image data through the corresponding channel. The bandwidth of each channel is calculated. If this is expanded for all channels, the following equation (6) is obtained.

Figure 112007055387054-pat00027
Figure 112007055387054-pat00027

여기서,

Figure 112007055387054-pat00028
는 영상 데이터의 전송시 요구되는 채널의 대역폭을 나타내는 벡터로서
Figure 112007055387054-pat00029
로 표기되고,
Figure 112007055387054-pat00030
는 부가적인 인트라 프레임의 전송시 요구되는 채널의 대역폭을 나타내는 벡터로서
Figure 112007055387054-pat00031
로 표기되며,
Figure 112007055387054-pat00032
는 각 채널의 채널 타입을 나타내는 벡터로서
Figure 112007055387054-pat00033
로 표기된다. 수학식 6에 의하면, 부가적인 인트라 프레임이 삽입된 영상 데이터를 전송하기 위한 각 채널들의 대역폭 벡터와 각 채널들의 타입을 나타내는 벡터의 내적을 취함으로써 영상 데이터의 전송에 요구되는 전체 채널의 대역폭을 산출하게 된다. 이때,
Figure 112007055387054-pat00034
Figure 112007055387054-pat00035
는 다음의 수학식 7 및 8에 의해 정의된다.here,
Figure 112007055387054-pat00028
Is a vector representing the bandwidth of the channel required to transmit the image data.
Figure 112007055387054-pat00029
Denoted by,
Figure 112007055387054-pat00030
Is a vector representing the bandwidth of the channel required for the transmission of additional intra frames.
Figure 112007055387054-pat00031
Denoted by
Figure 112007055387054-pat00032
Is a vector representing the channel type of each channel.
Figure 112007055387054-pat00033
It is indicated by. According to Equation 6, the bandwidth of the entire channel required for the transmission of the image data is calculated by taking the inner product of the bandwidth vector of each channel for transmitting the image data into which the additional intra frame is inserted and the vector representing the type of each channel. Done. At this time,
Figure 112007055387054-pat00034
Wow
Figure 112007055387054-pat00035
Is defined by the following equations (7) and (8).

Figure 112007055387054-pat00036
Figure 112007055387054-pat00036

여기서,

Figure 112007055387054-pat00037
는 부가적인 인트라 프레임의 고정 비트 레이트를 의미한다.here,
Figure 112007055387054-pat00037
Denotes a fixed bit rate of an additional intra frame.

Figure 112007055387054-pat00038
Figure 112007055387054-pat00038

즉, 해당 채널에 대한 채널의 타입값은 j번째 채널이 정적 채널인 경우에는 1을 채널의 타입값으로 결정하고, j번째 채널이 동적 채널인 경우에는 j번째 채널에 대한 각 사용자들의 선호도의 합을 채널의 타입값으로 결정하는 것이다.That is, the channel type value for the corresponding channel is determined as 1 if the jth channel is a static channel, and if the jth channel is a dynamic channel, the sum of the preferences of each user for the jth channel. Is determined by the type value of the channel.

채널 특성 결정부(36)는 상술한 지연시간 산출부(32) 및 대역폭 산출부(34)에 의해 산출된 값을 이용하여 각 채널의 채널 타입과 부가적인 인트라 프레임의 개수를 결정한다. 구체적으로, 채널 특성 결정부(36)는 아래의 수학식9에 기재된 바와 같이 수학식3을 이용하여 산출된 채널 변경 지연시간이 소정 임계치(

Figure 112007055387054-pat00039
)이하가 되도록 하면서, 수학식 6에서 산출된 채널의 전체 대역폭의 값을 최소화하는
Figure 112007055387054-pat00040
Figure 112007055387054-pat00041
를 구함으로써 모 든 채널들에 대한 채널 타입 및 부가적인 인트라 프레임의 개수를 결정하게 된다.The channel characteristic determiner 36 determines the channel type of each channel and the number of additional intra frames by using the values calculated by the delay time calculator 32 and the bandwidth calculator 34 described above. In detail, the channel characteristic determiner 36 may determine that the channel change delay time calculated by using Equation 3 as described in Equation 9 below has a predetermined threshold (
Figure 112007055387054-pat00039
While minimizing the value of the overall bandwidth of the channel
Figure 112007055387054-pat00040
Wow
Figure 112007055387054-pat00041
By determining the number of channels and the number of additional intra frames for all channels.

Figure 112007055387054-pat00042
Figure 112007055387054-pat00042

일 실시예에 있어서, 채널 특성 결정부(36)는 비터비(Viterbi) 알고리즘을 이용하여 수학식 9를 만족시키면서 수학식 6을 최소화하는

Figure 112007055387054-pat00043
Figure 112007055387054-pat00044
을 구할 수 있다. 이를 도 5에 도시된 트렐리스(Trellis)를 참조하여 구체적으로 설명한다.In one embodiment, the channel characteristic determiner 36 satisfies Equation 9 by using the Viterbi algorithm and minimizes Equation 6.
Figure 112007055387054-pat00043
Wow
Figure 112007055387054-pat00044
Can be obtained. This will be described in detail with reference to Trellis shown in FIG. 5.

도 5에 도시된 바와 같이, 각 채널은 하나의 도메인을 구성하며, 각 도메인은

Figure 112007055387054-pat00045
개의 상태로 구성되어 있다. 도메인 내의 각각의 상태는 각 채널의 타입과 부가적인 인트라 프레임의 개수를 나타내며, 각 도메인 상의 상태 조합에 있어 가능한 조합의 수는
Figure 112007055387054-pat00046
개이다. m-1번째 도메인까지의 누적 상태 조합이 수학식 10과 같이 표현되고, 도메인 상에서 선택된 상태가
Figure 112007055387054-pat00047
일 때, m번째 도메인 상의 누적 상태 조합은 수학식 11과 같이 된다.As shown in FIG. 5, each channel constitutes one domain, and each domain
Figure 112007055387054-pat00045
It consists of two states. Each state in the domain represents the type of each channel and the number of additional intra frames, and the number of possible combinations of state combinations on each domain is
Figure 112007055387054-pat00046
Dog. The cumulative state combination up to the m-1 th domain is expressed as in Equation 10, and the state selected on the domain is
Figure 112007055387054-pat00047
When the cumulative state combination on the m-th domain is as shown in equation (11).

Figure 112007055387054-pat00048
Figure 112007055387054-pat00048

Figure 112007055387054-pat00049
Figure 112007055387054-pat00049

일 실시예에 있어서, 최적의 해를 찾기 위한 검색 범위를 좁히기 위해 도 5에 도시된 트렐리스 상에 프루닝 (Pruning) 기법을 적용한다. 즉, m-1번째 도메인에서 m번째 도메인으로의 최적의 전이를 결정함에 있어, m번째 도메인에서 선택된 상태에 대해 수학식 9를 만족하는지 여부를 판단하여, 이를 만족하지 않는 전이를 삭제하는 것이다. 도 5에서 점선으로 표시된 부분은 도메인의 상태 중 수학식 9를 만족하지 않는 것으로서 삭제되어야할 전이를 나타낸다.In one embodiment, a pruning technique is applied on the trellis shown in FIG. 5 to narrow the search to find the optimal solution. That is, in determining the optimal transition from the m-1 th domain to the m th domain, it is determined whether the equation (9) is satisfied for the state selected in the m th domain, and the transition that does not satisfy this is deleted. In FIG. 5, a portion indicated by a dotted line indicates a transition to be deleted as not satisfying Equation 9 in the state of the domain.

또 다른 실시예에 있어서, 채널 특성 결정부(36)는 계산의 복잡도를 감소시키기 위해 다른 알고리즘을 이용하여 수학식 9를 만족시키면서 수학식 6을 최소화하는

Figure 112007055387054-pat00050
Figure 112007055387054-pat00051
을 구할 수 있다.In another embodiment, the channel characteristic determiner 36 minimizes Equation 6 while satisfying Equation 9 using another algorithm to reduce the complexity of the calculation.
Figure 112007055387054-pat00050
Wow
Figure 112007055387054-pat00051
Can be obtained.

이를 구체적으로 살펴보면, 먼저 채널 특성 결정부(36)는 초기상태로 모든 채널의 채널 타입을 동적 채널로 설정하고, 영상 데이터에 삽입될 부가적인 인트라 프레임의 개수는 0으로 설정한다. 즉, 초기상태는 영상 데이터를 전송하기 위한 대역폭이 최소화되는 상태로 설정하는 것이다. 이러한 상태에서, 채널 특성 결정부(36)는 수학식3에 의해 산출된 채널 변경 지연시간이 임계값을 넘어서는 정도를 나타내는

Figure 112007055387054-pat00052
를 산출한다. 여기서,
Figure 112007055387054-pat00053
는 다음의 수학식 12에 의해 산출된다.In detail, first, the channel characteristic determiner 36 sets the channel type of all channels to a dynamic channel as an initial state, and sets the number of additional intra frames to be inserted into the image data to zero. That is, the initial state is set to a state in which the bandwidth for transmitting image data is minimized. In this state, the channel characteristic determiner 36 indicates the degree to which the channel change delay time calculated by Equation 3 exceeds the threshold value.
Figure 112007055387054-pat00052
Calculate here,
Figure 112007055387054-pat00053
Is calculated by the following equation (12).

Figure 112007055387054-pat00054
Figure 112007055387054-pat00054

즉, 수학식 12에 의할때, 지연시간이 임계치보다 작거나 같은 경우에는

Figure 112007055387054-pat00055
값은 0 이 되고, 그렇지 않은 경우 양수의 값이 되는 것이다.That is, according to Equation 12, when the delay time is less than or equal to the threshold
Figure 112007055387054-pat00055
The value is 0, otherwise it is a positive value.

채널 특성 결정부(36)는 초기 상태에서 산출된

Figure 112007055387054-pat00056
값이 0인 경우 이러한 초기 상태의 설정값을 기준으로 채널의 타입 및 부가적인 인트라 프레임의 개수를 결정한다.The channel characteristic determiner 36 is calculated in the initial state.
Figure 112007055387054-pat00056
If the value is 0, the channel type and the number of additional intra frames are determined based on the setting value of the initial state.

만약, 초기상태에서 산출된

Figure 112007055387054-pat00057
값이 0이 아닌 경우 초기상태에서 각 채널의 채널 타입 및 부가적인 인트라 프레임의 개수를 변경해 가면 서,
Figure 112007055387054-pat00058
값을 계산하고, 계산된
Figure 112007055387054-pat00059
값을 0으로 만드는 설정값이 존재하는 지를 판단한다.If calculated at initial state
Figure 112007055387054-pat00057
If the value is not 0, the channel type of each channel and the number of additional intra frames are changed in the initial state.
Figure 112007055387054-pat00058
Calculate the value,
Figure 112007055387054-pat00059
Determine if there is a setting to make the value zero.

Figure 112007055387054-pat00060
값을 0으로 만드는 설정값이 존재하는 경우, 그 중 채널의 대역폭이 최소가 되게 하는 설정값을 기준으로 채널의 타입 및 부가적인 인트라 프레임의 개수를 결정하고,
Figure 112007055387054-pat00061
값을 0으로 만드는 상태가 설정값이 존재하지 않는 경우, 최초 설정값의 변경으로 인해 발생하는 코스트(Cost)를 산출한 후, 산출된 코스트 값을 이용하여 초기상태를 갱신하여 다음상태를 결정한다. 이때, 코스트는 다음의 수학식 13에 의해 산출할 수 있으며, 초기상태를 갱신함에 있어서는 산출된 코스트 값이 최대인 상태의 설정값을 이용하여 초기상태를 갱신한다.
Figure 112007055387054-pat00060
If there is a setting value that makes the value zero, the channel type and the number of additional intra frames are determined based on the setting value of which the bandwidth of the channel is minimized.
Figure 112007055387054-pat00061
If the state that makes the value 0 does not exist, the cost generated by the change of the initial setting value is calculated, and then the initial state is updated by using the calculated cost value to determine the next state. . At this time, the cost can be calculated by the following equation (13), and in updating the initial state, the initial state is updated using the set value of the state in which the calculated cost value is maximum.

채널 특성 결정부(36)는

Figure 112007055387054-pat00062
값이 0 이 되는 상태가 발견될 때까지 상술한 과정을 반복함으로써 채널의 타입 및 부가적인 인트라 프레임의 개수를 결정하게 되는 것이다. The channel characteristic determiner 36
Figure 112007055387054-pat00062
By repeating the above process until a state where the value becomes 0 is found, the type of the channel and the number of additional intra frames are determined.

Figure 112007055387054-pat00063
Figure 112007055387054-pat00063

여기서,

Figure 112007055387054-pat00064
는 상태 변화로 인해 발생하는
Figure 112007055387054-pat00065
값의 감소량을 의미하고,
Figure 112007055387054-pat00066
는 상태 변화로 인해 발생 되는 대역폭의 증가량을 의미한다.here,
Figure 112007055387054-pat00064
Is caused by a change in state
Figure 112007055387054-pat00065
Means a decrease in value,
Figure 112007055387054-pat00066
Means the increase of bandwidth caused by the change of state.

다시 도 4를 참조하면, 인코더(26)는 연산부(24)에 의해 결정된 개수만큼의 부가적인 인트라 프레임을 영상 데이터에 삽입하여 영상 데이터를 인코딩한다. 일 실시예에 있어서, 영상 데이터는 30 fps(Frames Per Second)로 IBBPBBPBBPBB의 구조로 인코딩된다.Referring again to FIG. 4, the encoder 26 inserts an additional number of additional intra frames determined by the calculator 24 into the image data to encode the image data. In one embodiment, the image data is encoded in the structure of IBBPBBPBBPBB at 30 frames per second (fps).

데이터 전송부(28)는 소정 채널의 타입이 정적 채널로 결정되는 경우 인코더(26)에 의해 인코딩된 영상 데이터를 사용자의 요청 이전에 사용자 단말기(19)에 인접한 라우터까지 전송하고, 소정 채널의 타입이 동적 채널로 결정되는 경우 인코더(26)에 의해 인코딩된 영상 데이터를 사용자의 요청 이전에 IPTV 방송 서버(18)에 인접한 라우터까지 전송한다.When the type of the predetermined channel is determined as the static channel, the data transmitter 28 transmits the image data encoded by the encoder 26 to a router adjacent to the user terminal 19 prior to the user's request. When determined as this dynamic channel, the video data encoded by the encoder 26 is transmitted to a router adjacent to the IPTV broadcast server 18 before the user's request.

상술한 IPTV 서비스 제공 서버를 이용하여 IPTV 서비스를 제공하는 방법을 도 6을 참조하여 설명한다.A method of providing an IPTV service using the above-described IPTV service providing server will be described with reference to FIG. 6.

먼저, 사용자에게 제공될 각 채널들의 채널 타입 및 각 채널들을 통해 제공되는 영상 데이터에 삽입될 부가적인 인트라 프레임의 개수를 결정한다(제100단계). 이때 채널 타입은 사용자의 채널 요청 이전에 영상 데이터를 사용자 단말 기(19)에 인접한 제1 라우터까지 전송하는 정적채널과 영상 데이터를 IPTV 서비스 제공 서버(18)에 인접한 제2 라우터까지 전송하는 동적채널로 분류된다. 일 실시예에 있어서, 채널의 타입 및 각 채널에 삽입할 부가적인 인트라 프레임의 개수를 결정함에 있어서 사용자의 채널 선호도를 반영하여 각 채널의 타입을 결정하는 것이 바람직하다.First, the channel type of each channel to be provided to the user and the number of additional intra frames to be inserted into the image data provided through the respective channels are determined (step 100). In this case, the channel type is a static channel for transmitting video data to a first router adjacent to the user terminal 19 and a dynamic channel for transmitting video data to a second router adjacent to the IPTV service providing server 18 before the user requests a channel. Classified as In one embodiment, in determining the type of the channel and the number of additional intra frames to be inserted into each channel, it is preferable to determine the type of each channel by reflecting the channel preference of the user.

여기서, 각 채널들의 채널 타입 및 부가적인 인트라 프레임의 개수는 채널 변경 지연시간이 소정 임계치 이하가 되도록 하면서 영상 데이터의 제공에 요구되는 채널들의 전체 대역폭이 최소가 되게 하는 것으로 결정한다. 이때, 채널 변경 지연시간은 수학식3에 의해 산출되며, 채널들의 대역폭은 수학식6에 의해 산출된다. 이에 대한 상세한 설명은 해당 수학식의 설명 부분에서 자세히 기술하였기에 상세한 설명은 생략한다.Here, the channel type of each channel and the number of additional intra frames are determined so that the total bandwidth of channels required for providing image data is minimized while the channel change delay time is less than or equal to a predetermined threshold. In this case, the channel change delay time is calculated by Equation 3, and the bandwidths of the channels are calculated by Equation 6. Detailed description thereof has been described in detail in the description of the equation, and thus detailed description thereof will be omitted.

일 실시예에 있어서, 수학식 3에 의해 산출되는 채널 변경 지연시간과 수학식 6에 의해 산출되는 채널의 대역폭을 이용하여 채널의 타입 및 부가적인 인트라 프레임의 개수를 결정하기 위해 비터비 알고리즘을 이용할 수 있다. 이러한 비터비 알고리즘은 도 5에 도시된 트렐리스를 이용하여 이전 상태에서 현재 상태로의 전이들 중 수학식9를 만족시키지 않는 전이들을 삭제함으로써 최적의 채널 타입 및 부가적인 인트라 프레임의 개수를 결정하게 된다.In one embodiment, a Viterbi algorithm is used to determine the type of channel and the number of additional intra frames using the channel change delay time calculated by Equation 3 and the bandwidth of the channel calculated by Equation 6. Can be. This Viterbi algorithm uses the trellis shown in Figure 5 to determine the optimal channel type and the number of additional intra frames by deleting transitions from the previous state to the current state that do not satisfy Equation (9). Done.

또 다른 실시예에 있어서, 도 7에 도시된 알고리즘을 이용하여 최적의 채널 타입 및 부가적인 인트라 프레임의 개수를 산출할 수 있다. 도 7을 참조하면, 먼저 각 채널들을 초기상태로 설정한다(제200단계). 여기서, 초기 상태란 채널의 타 입은 동적 채널이고, 부가적인 인트라 프레임의 개수는 0인 상태를 의미하며, 이후에서는 채널의 타입 및 부가적인 인트라 프레임의 개수를 상태의 설정값으로 정의한다. 다음으로, 수학식 12를 이용하여 초기상태에서의

Figure 112007055387054-pat00067
값을 계산한다(제210단계). 계산된
Figure 112007055387054-pat00068
값이 0인지 여부를 판단하여(제220단계),
Figure 112007055387054-pat00069
값이 0인 경우, 초기 상태의 설정값을 기준으로 채널의 타입 및 부가적인 인트라 프레임의 개수를 결정한다(제230단계).In another embodiment, the optimal channel type and the number of additional intra frames may be calculated using the algorithm shown in FIG. 7. Referring to FIG. 7, first, each channel is set to an initial state (step 200). Here, the initial state is a type of the channel is a dynamic channel, the number of additional intra frames is 0, after which the type of the channel and the number of additional intra frames are defined as the setting value of the state. Next, using the equation (12) in the initial state
Figure 112007055387054-pat00067
The value is calculated (step 210). Calculated
Figure 112007055387054-pat00068
Determine whether the value is 0 (step 220),
Figure 112007055387054-pat00069
If the value is 0, the type of the channel and the number of additional intra frames are determined based on the set value of the initial state (operation 230).

제220단계에서,

Figure 112007055387054-pat00070
값이 0이 아닌 경우, 초기상태에서 설정값을 변경시켜 가면서
Figure 112007055387054-pat00071
값을 계산한 후(제235단계), 계산된
Figure 112007055387054-pat00072
값을 0으로 만드는 설정값이 존재하는지를 판단한다(제240단계).
Figure 112007055387054-pat00073
값을 0으로 만드는 설정값이 존재하는 경우, 그 중 채널의 대역폭이 최소가 되게 하는 설정값을 기준으로 채널의 타입 및 부가적인 인트라 프레임의 개수를 결정한다(제250단계). 제240단계에서
Figure 112007055387054-pat00074
값을 0으로 만드는 설정값이 존재하지 않는 경우, 최초 설정값의 변경으로 인해 발생하는 코스트(Cost)를 산출하고(제260단계), 초기상태를 산출된 코스트가 최대가 되게 하는 상태의 설정값으로 갱신함으로써 다음 상태를 설정한다(제270단계). 이때, 코스트는 상술한 수학식 13에 의해 산출된다. 코스트의 산출과정에 대한 설명은 수학식 13의 설명 부분에서 기재하였으므로 상세한 설명은 생략하기로 한다.In step 220,
Figure 112007055387054-pat00070
If the value is not 0, change the set value at initial state.
Figure 112007055387054-pat00071
After calculating the value (step 235),
Figure 112007055387054-pat00072
In operation 240, it is determined whether there is a set value that makes the value zero.
Figure 112007055387054-pat00073
If there is a setting value that makes the value 0, the type of the channel and the number of additional intra frames are determined based on the setting value that minimizes the bandwidth of the channel (operation 250). In step 240
Figure 112007055387054-pat00074
If there is no set value that makes the value zero, the cost (Cost) generated by the change of the initial set value is calculated (step 260), and the set value of the state that makes the initial state maximum The next state is set by updating to (step 270). At this time, the cost is calculated by the above equation (13). Since the description of the cost calculation process is described in the description of Equation 13, a detailed description thereof will be omitted.

이후

Figure 112007055387054-pat00075
값이 0 이 되는 설정값을 가지는 상태가 발견될 때까지 제235단계 및 제270단계를 반복함으로써 채널의 타입 및 부가적인 인트라 프레임의 개수를 결정하게 된다. after
Figure 112007055387054-pat00075
By repeating steps 235 and 270 until a state having a set value of 0 is found, the type of the channel and the number of additional intra frames are determined.

다시 도 6을 참조하면, 제100단계에서 결정된 개수만큼의 부가적인 인트라 프레임을 영상 데이터에 삽입하여 영상 데이터를 인코딩한 후(제110단계), 제100단계에서 채널의 타입이 정적 채널로 결정되는 경우 사용자의 채널 요청 이전에 인코딩된 영상 데이터를 사용자 단말기(19)에 가장 인접한 라우터까지 전송하고, 채널의 타입의 동적 채널로 결정되는 경우 사용자의 채널 요청 이전에 인코딩된 영상 데이터를 IPTV 서비스 제공 서버(18)에 가장 인접한 라우터까지 전송한다(제120단계). Referring back to FIG. 6, after encoding the image data by inserting the additional intra frames of the number determined in operation 100 into the image data (operation 110), the channel type is determined as the static channel in operation 100. In case of transmitting the encoded video data before the user's channel request to the router closest to the user terminal 19, and if it is determined as the dynamic channel of the channel type, the encoded video data before the user's channel request is provided to the IPTV service providing server. In step 120, it transmits to the nearest router (18).

도 8a 및 8b는 상술한 2개의 알고리즘을 이용하여 채널 타입과 부가적인 인트라 프레임의 개수를 산출하는 실험을 통해 분석된 각 알고리즘의 성능을 보여주는 도면이다. 먼저, 실험의 전제조건들을 간략히 설명한다. 실험환경은 OPNET을 사용하여 구현하였고, 채널 변경에 따라 발생하는 지연시간과 코어 네트워크상의 대역폭 사용량이 두 알고리즘의 성능을 비교하는 척도로서 사용되었다. 코어 네트 워크와 액세스 네트워크의 링크 대역폭은 각각 1 Gbps, 100 Mbps로 설정하였고, IP 네트워크상에 단방향 지연시간은 0.6 sec이며, 액세스 네트워크 내의 사용자 수는 20명으로 설정하였으며, 각 채널을 통해 제공되는 영상 데이터는 30 fps(Frames Per Second)로 인코딩되었고, 인코딩 구조는 IBBPBBPBBPBB이다. 8A and 8B illustrate the performance of each algorithm analyzed through an experiment of calculating the channel type and the number of additional intra frames using the two algorithms described above. First, the preconditions of the experiment are briefly described. The experimental environment was implemented using OPNET, and latency caused by channel change and bandwidth usage on the core network were used as a measure to compare the performance of the two algorithms. The link bandwidths of the core network and the access network were set to 1 Gbps and 100 Mbps, respectively, and the one-way latency on the IP network was 0.6 sec, and the number of users in the access network was set to 20 users. Image data was encoded at 30 fps (Frames Per Second), and the encoding structure is IBBPBBPBBPBB.

채널들은 SDTV 채널 그룹과 HDTV 채널 그룹으로 분류되며, 해당 채널의 대역폭은 각각 4.12 Mbps, 12.06 Mbps이다. 영상 데이터에 삽입될 부가적인 인트라 프레임의 크기는 25000 byte이며, 하나의 GOP내에 삽입될 부가적인 인트라 프레임의 최대 개수는 3으로 설정하였다. 각 사용자의 채널 요청 사이의 시간 간격은 포아송(Poisson) 분포를 따르며, λ(Request Rate)는 1/30 (Number of Requests Per Second)로 설정하였다. 각 사용자의 채널 선호도는 유니폼 (Uniform) 또는 지프 (Zipf) 분포를 따르며, 지프 분포일 경우 θ(Skew Facotr)는 1.0으로 설정하였다. 또한 일반적으로 HDTV 채널의 선호도를 SDTV 채널의 선호도보다 다소 높게 설정하였으며, 각 사용자마다 같은 채널 선호도 경향을 보이더라도 채널 번호는 다소 다를 수 있다.Channels are classified into SDTV channel group and HDTV channel group, and the bandwidth of the channel is 4.12 Mbps and 12.06 Mbps, respectively. The size of the additional intra frame to be inserted into the image data is 25000 bytes, and the maximum number of additional intra frames to be inserted into one GOP is set to three. The time interval between channel requests of each user follows the Poisson distribution, and λ (Request Rate) is set to 1/30 (Number of Requests Per Second). Channel preference of each user follows uniform or zip distribution, and in case of jeep distribution, θ (Skew Facotr) is set to 1.0. Also, in general, the preference of the HDTV channel is set slightly higher than that of the SDTV channel, and the channel number may be slightly different even if each user shows the same channel preference trend.

비터비 알고리즘은 채널수가 증가함에 따라 계산 복잡도가 지수적으로 증가하므로, 실험의 간편함을 위해 사용자의 채널 선호도는 유니폼 분포를 따르는 것으로 하고, 상대적으로 적은 채널수로 실험을 진행하였다. 실험에서, 1번 채널은 HDTV 채널이고, 2번 채널부터 5번 채널까지는 SDTV 채널이다.In the Viterbi algorithm, the computational complexity increases exponentially as the number of channels increases. For simplicity, the channel preference of the user follows the uniform distribution, and the experiment is conducted with a relatively small number of channels. In the experiment, channel 1 is an HDTV channel, and channels 2 to 5 are SDTV channels.

도 8a 및 8b에 도시된 결과에서 알 수 있듯이, 두 알고리즘은 임계치가 감소함에 따라 수학식9를 만족시키기 위해 정적 채널의 수와 부가적인 인트라 프레임의 수가 증가하고 있음을 알 수 있다. 임계치가 0.4, 1.4, 1.5일 때, 다소 차이를 보이더라도 두 알고리즘의 성능은 전반적으로 유사하나 도 7에 도시된 알고리즘의 CPU시간은 0.062sec로 비터비 알고리즘의 CPU시간인 0.109sec보다 작아 도 7에 도시된 알고리즘이 계산 복잡도 측면에서는 개선된 성능을 보이고 있음을 알 수 있다.As can be seen from the results shown in Figs. 8A and 8B, both algorithms can be seen that as the threshold decreases, the number of static channels and the number of additional intra frames increases to satisfy Equation (9). When the thresholds are 0.4, 1.4, and 1.5, although the differences are somewhat different, the performances of the two algorithms are generally similar, but the CPU time of the algorithm shown in FIG. 7 is 0.062 sec, which is less than the 0.109 sec CPU time of the Viterbi algorithm. It can be seen that the algorithm shown in Figure 1 shows the improved performance in terms of computational complexity.

도 9a 내지 9c는 도 7에 도시된 알고리즘의 성능을 보여주는 도면이다. 제시된 알고리즘의 성능을 실험하기 위해 전체 채널 30개 중에서 1번 채널, 5번 채널, 10번 채널, 20번 채널, 및 30번 채널은 HDTV 채널로 설정하고, 나머지 채널은 SDTV 채널로 설정하였으며, 각 사용자의 채널 선호도는 유니폼 또는 지프 분포를 따르며, 임계치는 1.0 sec로 설정하였다.9A to 9C are diagrams showing the performance of the algorithm shown in FIG. To test the performance of the proposed algorithm, channels 1, 5, 10, 20, and 30 were set as HDTV channels and the remaining channels as SDTV channels. The channel preference of the user follows the uniform or jeep distribution, and the threshold is set to 1.0 sec.

먼저, 사용자의 채널 선호도가 유니폼 분포를 따를 때, 도 9a 및 도 9b 에 도시된 바와 같이, 모든 채널이 동적 채널인 경우 네트워크 효율성은 가장 좋으나, 채널 변경 지연이 임계치를 넘어서는 사용자가 존재하였음을 알 수 있고, 모든 채널이 정적 채널인 경우 채널 변경 지연은 가장 좋은 성능을 보이나, 네트워크 효율성은 감소하였음을 알 수 있다. 반면 도 7에 도시된 알고리즘의 경우, 각 사용자의 채널 선호도를 기반으로 하여 채널의 타입을 결정하고, 각 채널을 통해 전송될 영상 데이터에 부가적인 인트라 프레임을 삽입함으로써, 네트워크의 효율성을 향상시키면서 사용자의 채널 변경 지연도 임계치 이하로 만들 수 있었음을 알 수 있다.First, when the channel preference of the user follows the uniform distribution, as shown in Figs. 9A and 9B, when all the channels are dynamic channels, the network efficiency is the best, but the user knows that there is a user whose channel change delay exceeds the threshold. If all channels are static channels, the channel change delay shows the best performance, but the network efficiency is reduced. On the other hand, in the algorithm shown in Fig. 7, the channel type is determined based on each user's channel preference, and an additional intra frame is inserted into the image data to be transmitted through each channel, thereby improving the efficiency of the network. It can be seen that the channel change delay can be made below the threshold.

한편, 사용자의 채널 선호도가 지프 분포를 따르는 경우에도 위와 유사한 결과를 나타내며, 도 9c에서 도시된 바와 같이 도 7에 도시된 알고리즘을 이용함으로 써 채널 변경 지연을 감소시킴과 동시에 네트워크 효율성을 향상시킬 수 있었음을 알 수 있다.On the other hand, even if the channel preference of the user follows the jeep distribution, the results are similar to the above. By using the algorithm shown in FIG. 7 as shown in FIG. 9C, the channel change delay can be reduced and the network efficiency can be improved. It can be seen that there was.

본 발명이 속하는 기술분야의 당업자는 본 발명이 그 기술적 사상이나 필수적 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다.Those skilled in the art to which the present invention pertains will understand that the present invention can be implemented in other specific forms without changing the technical spirit or essential features.

그러므로, 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로 이해해야만 한다. 본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 등가 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.Therefore, it is to be understood that the embodiments described above are exemplary in all respects and not restrictive. The scope of the present invention is shown by the following claims rather than the detailed description, and all changes or modifications derived from the meaning and scope of the claims and their equivalent concepts should be construed as being included in the scope of the present invention. do.

도 1은 방송 서비스 제공 메커니즘과 IPTV 서비스의 제공 메커니즘을 보여주는 도면.1 is a diagram showing a broadcasting service providing mechanism and an IPTV service providing mechanism;

도 2는 일반적인 IPTV 서비스 제공 시스템의 망 구성도.2 is a network diagram of a general IPTV service providing system.

도 3은 도 2에 도시된 IPTV 제공 시스템에서의 채널 변경과정을 보여주는 도면.3 is a view showing a channel change process in the IPTV providing system shown in FIG.

도 4는 본 발명의 일 실시예에 따른 IPTV 서비스 제공 서버의 개략적인 블럭도.4 is a schematic block diagram of an IPTV service providing server according to an embodiment of the present invention.

도 5는 비터비 알고리즘의 트렐리스를 보여주는 도면.5 shows a trellis of the Viterbi algorithm.

도 6은 도 4에 도시된 IPTV 서비스 제공 서버를 이용하여 IPTV 서비스를 제공하는 방법을 보여주는 플로우차트.6 is a flowchart showing a method of providing an IPTV service using the IPTV service providing server shown in FIG. 4.

도 7은 채널의 타입 및 부가적인 인트라 프레임의 개수를 결정하는 알고리즘에 대한 플로우차트.7 is a flowchart for an algorithm for determining the type of channel and the number of additional intra frames.

도 8은 채널의 타입 및 부가적인 인트라 프레임의 개수를 결정하기 위해 사용된 알고리즘들의 성능을 비교하여 보여주는 도면. 8 shows a comparison of the performance of algorithms used to determine the type of channel and the number of additional intra frames.

도 9는 도 7에 도시된 알고리즘의 성능을 보여주는 도면.9 shows the performance of the algorithm shown in FIG.

<도면의 주요부분에 대한 부호의 설명><Description of the symbols for the main parts of the drawings>

10: IPTV 서비스 제공 시스템 12: 홈 네트워크10: IPTV service providing system 12: home network

13: 액세스 네트워크 14: 코어 네트워크13: access network 14: core network

16: 게이트웨이 18: IPTV 서비스 제공 서버16: Gateway 18: IPTV Serving Server

19: 사용자 단말기 20: 셋톱박스19: user terminal 20: set-top box

22: LHR2 23: FHR22: LHR2 23: FHR

24: 연산부 26: 인코더24: calculator 26: encoder

28: 데이터 전송부 30: 채널 선호도 산출부28: data transmission unit 30: channel preference calculator

32: 지연시간 산출부 34: 대역폭 산출부32: delay time calculator 34: bandwidth calculator

36: 채널 특성 결정부36: channel characteristic determination unit

Claims (23)

사용자에게 제공될 각 채널들의 채널 타입 및 상기 채널들을 통해 제공되는 영상 데이터에 삽입될 부가적인 인트라 프레임의 개수를 결정하는 단계;Determining a channel type of each channel to be provided to a user and the number of additional intra frames to be inserted into image data provided through the channels; 상기 결정된 개수만큼의 부가적인 인트라 프레임을 상기 영상 데이터에 삽입하여 상기 영상 데이터를 인코딩하는 단계; 및Encoding the image data by inserting the determined number of additional intra frames into the image data; And 상기 결정된 각 채널들의 채널 타입에 따라 상기 인코딩된 영상 데이터를 상기 각 채널들에 대한 사용자의 요청 이전에 제1 라우터 또는 제2 라우터까지 전송하는 단계;Transmitting the encoded image data to a first router or a second router prior to a user's request for the respective channels according to the determined channel type of each channel; 를 포함하는 IPTV 서비스 제공 방법.IPTV service providing method comprising a. 제1항에 있어서, 상기 각 채널들의 채널 타입은 상기 각 채널들을 통해 전송되는 상기 영상 데이터를 상기 제1 라우터까지 전송하는 제1 타입과 상기 영상 데이터를 상기 제2 라우터까지 전송하는 제2 타입으로 분류되고, 상기 제1 라우터는 사용자 단말기에 인접한 라우터이고, 상기 제2 라우터는 IPTV 서비스 제공 서버에 인접한 라우터인 것을 특징으로 하는 IPTV 서비스 제공 방법.The channel type of claim 1, wherein the channel type of each channel is a first type for transmitting the image data transmitted through the respective channels to the first router and a second type for transmitting the image data to the second router. Classified, wherein the first router is a router adjacent to a user terminal, and the second router is a router adjacent to an IPTV service providing server. 제2항에 있어서, 상기 각 채널들의 채널 타입 및 상기 부가적인 인트라 프레임의 개수 결정단계에서,The method of claim 2, wherein the determining of the channel type of each of the channels and the number of additional intra frames includes: 채널 변경 지연 시간이 임계치 이하가 되도록 하는 상기 각 채널들의 채널 타입 및 상기 부가적인 인트라 프레임의 개수 별로 산출된 상기 채널들의 전체 대역폭들 중 채널들의 대역폭이 최소인 상기 각 채널들의 채널 타입 및 상기 부가적인 인트라 프레임의 개수를 상기 사용자에게 제공될 각 채널들의 채널 타입 및 상기 영상 데이터에 삽입될 부가적인 인트라 프레임의 개수로 결정하는 것을 특징으로 하는 IPTV 서비스 제공방법.The channel type of each of the channels and the additional channel among the total bandwidths of the channels calculated for each channel type and the number of additional intra frames such that a channel change delay time is less than or equal to a threshold; And determining the number of intra frames by the channel type of each channel to be provided to the user and the number of additional intra frames to be inserted into the image data. 제3항에 있어서, 상기 각 채널들의 채널 타입과 상기 부가적인 인트라 프레임 개수는 상기 각 채널들에 대한 사용자의 선호도를 반영하여 결정하는 것을 특징으로 하는 IPTV 서비스 제공 방법.4. The method of claim 3, wherein the channel type of each channel and the number of additional intra frames are determined by reflecting a user's preference for each of the channels. 제4항에 있어서, 상기 각 채널들에 대한 사용자의 선호도는 소정 시간 간격 동안 사용자가 해당 채널을 시청한 시간을 이용하여 추정되는 것을 특징으로 하는 IPTV 서비스 제공방법.5. The method of claim 4, wherein the user's preference for each of the channels is estimated using the time the user watched the channel for a predetermined time interval. 제4항에 있어서, 상기 채널 변경 지연 시간은 상기 각 채널들이 수신되는데 소요되는 시간과 상기 각 채널들을 통해 제공되는 상기 영상 데이터의 디코딩 지연 시간의 합과 상기 각 채널들에 대한 사용자의 선호도의 곱을 이용하여 산출되는 것을 특징으로 하는 IPTV 서비스 제공 방법.5. The method of claim 4, wherein the channel change delay time is a product of a sum of a time taken for each of the channels to be received, a decoding delay time of the image data provided through the respective channels, and a user's preference for each of the channels. IPTV service providing method, characterized in that calculated using. 제4항에 있어서, 상기 채널들의 전체 대역폭은 상기 각 채널들의 채널 타입을 나타내는 소정 값과 상기 영상 데이터 제공을 위해 요구되는 상기 각 채널들의 대역폭의 곱을 이용하여 산출되는 것을 특징으로 하는 IPTV 서비스 제공방법.The method of claim 4, wherein the total bandwidth of the channels is calculated using a product of a predetermined value representing a channel type of each of the channels and a bandwidth of each of the channels required for providing the image data. . 제7항에 있어서, 상기 각 채널들의 채널 타입을 나타내는 상기 소정값은,The method of claim 7, wherein the predetermined value representing the channel type of each channel, 소정 채널이 제1 타입인 경우에는 제1 값으로 결정되고, 제2 타입인 경우 상기 소정 채널에 대한 각 사용자의 선호도의 합으로 결정되는 것을 특징으로 하는 IPTV 서비스 제공방법.If the predetermined channel is of the first type, the IPTV service providing method is determined as a first value, and if the second type is determined by the sum of the preferences of each user for the predetermined channel. 제3항에 있어서, 상기 각 채널들의 채널 타입 및 상기 부가적인 인트라 프레임의 개수 결정단계에서,The method of claim 3, wherein the determining of the channel type of each channel and the number of additional intra frames comprises: 상기 각 채널들의 채널 타입 및 상기 부가적인 인트라 프레임의 개수는 비터비 알고리즘을 이용하여 결정되는 것을 특징으로 하는 IPTV 서비스 제공방법.The channel type of each of the channels and the number of the additional intra frame is determined using a Viterbi algorithm. 제3항에 있어서, 상기 각 채널들의 채널 타입 및 상기 부가적인 인트라 프레임의 개수 결정단계는The method of claim 3, wherein the determining of the channel type of each channel and the number of additional intra frames is performed. 상기 각 채널들의 채널 타입 및 상기 부가적인 인트라 프레임의 개수를 설정값으로 하여 제1 상태를 설정하고 상기 제1 상태에서의 채널 변경 지연시간을 산출하는 단계;Setting a first state by setting a channel type of each channel and the number of additional intra frames as a set value and calculating a channel change delay time in the first state; 상기 제1 상태에서의 채널 변경 지연시간이 상기 임계치 이하인 경우 상기 제1 상태의 최초 설정값을 기준으로 상기 각 채널들의 채널 타입 및 상기 부가적인 인트라 프레임의 개수를 결정하는 단계;Determining a channel type of each of the channels and the number of additional intra frames based on an initial setting value of the first state when the channel change delay time in the first state is less than or equal to the threshold value; 상기 제1 상태에서의 채널 변경 지연시간이 상기 임계치를 초과하는 경우, 상기 제1 상태의 최초 설정값을 반복적으로 변경시킴으로써 획득되는 변경된 설정값들에 대한 채널 변경 지연 시간을 산출하는 단계; 및Calculating a channel change delay time for the changed setting values obtained by repeatedly changing the initial setting value of the first state when the channel change delay time in the first state exceeds the threshold; And 상기 변경된 설정값들 중 변경된 설정값들에 대한 채널 변경 지연시간이 상기 임계치 이하가 되게 하는 설정값들이 존재하는 경우, 채널 변경 지연시간이 상기 임계치 이하가 되게 하는 설정값들 별로 산출된 상기 채널들의 대역폭들 중 채널들의 대역폭이 최소인 설정값을 기준으로 상기 각 채널들의 채널 타입 및 상기 부가적인 인트라 프레임의 개수를 결정하고, 그렇지 않은 경우 상기 제1 상태를 제2 상태로 갱신하는 단계;If there are setting values that cause the channel change delay time for the changed setting values among the changed setting values to be less than or equal to the threshold value, the channels calculated for each of the setting values that cause the channel change delay time to be less than or equal to the threshold value. Determining a channel type of each of the channels and the number of the additional intra frames based on a set value of the minimum bandwidth of the channels, and if not, updating the first state to a second state; 를 포함하되,Including but not limited to: 상기 채널 변경 지연시간이 상기 임계치가 되게 하는 설정값을 가지는 상태가 발견될 때까지 상기 변경된 설정값들에 대한 채널 변경 지연 시간 산출 단계 내지 상기 상태 갱신 단계를 반복하는 것을 특징으로 하는 IPTV 서비스 제공방법.And repeating the channel change delay time calculation step and the state update step for the changed setting values until a state having a setting value for causing the channel change delay time to be the threshold is found. . 제10항에 있어서, 상기 제1 상태에서 제2 상태로의 갱신단계에서,The method of claim 10, wherein in the updating from the first state to the second state, 상기 제1 상태에서 제2 상태로의 갱신은, 상기 제1 상태에서의 상기 변경된 설정값들 중 상기 제1 상태의 최초 설정값으로부터의 변경으로 인해 발생되는 코스트가 최대인 설정값을 상기 제2 상태의 최초 설정값으로 결정함으로써 수행되는 것을 특징으로 하는 IPTV 서비스 제공방법.The updating from the first state to the second state may include setting a setting value having a maximum cost due to a change from an initial setting value of the first state among the changed setting values in the first state. IPTV service providing method characterized in that performed by determining the initial set value of the state. 제11항에 있어서, 상기 코스트는 상기 제1 상태에서의 상기 변경된 설정값들 각각에 대한 채널 변경 지연시간과 상기 임계치와의 차이값의 변화량과 상기 채널들의 전체 대역폭의 변화량의 비로 산출되는 것을 특징으로 하는 IPTV 서비스 제공방법.12. The method of claim 11, wherein the cost is calculated as a ratio of a change amount of a difference between a channel change delay time and the threshold value for each of the changed set values in the first state and a change amount of the total bandwidth of the channels. IPTV service providing method. 제10항에 있어서, 상기 제1 상태의 최초 설정값은, 상기 각 채널들의 채널 타입은 모두 제2 타입이고 상기 부가적인 인트라 프레임의 개수는 0인 것을 특징으로 하는 IPTV 서비스 제공방법.11. The method of claim 10, wherein the initial setting value of the first state is that the channel types of the respective channels are all second types and the number of additional intra frames is zero. 제1항 내지 제13항 중 어느 하나의 항에 기재된 방법을 수행하기 위한 프로그램이 기록된 컴퓨터로 판독 가능한 기록매체.A computer-readable recording medium having recorded thereon a program for performing the method according to any one of claims 1 to 13. 사용자에게 제공될 각 채널들의 채널 타입 및 상기 채널들을 통해 제공되는 영상 데이터에 삽입될 부가적인 인트라 프레임의 개수를 결정하는 연산부;A calculator configured to determine a channel type of each channel to be provided to a user and the number of additional intra frames to be inserted into image data provided through the channels; 상기 연산부에 의해 결정된 개수만큼의 상기 부가적인 인트라 프레임을 상기 영상 데이터에 삽입하여 상기 영상 데이터를 인코딩하는 인코더; 및An encoder which encodes the image data by inserting the additional intra frames as many as the number determined by the calculating unit into the image data; And 상기 연산부에 의해 정해진 상기 각 채널들의 채널 타입에 따라 상기 인코딩된 영상 데이터를 상기 각 채널들에 대한 사용자의 요청 이전에 사용자 단말기에 인접한 제1 라우터 또는 IPTV 제공 서버에 인접한 제2 라우터까지 전송하는 데이터 전송부;Data for transmitting the encoded video data to a first router adjacent to a user terminal or a second router adjacent to an IPTV providing server before a user's request for the respective channels according to the channel type of each channel determined by the calculator. A transmission unit; 를 포함하는 것을 특징으로 하는 IPTV 서비스 제공 서버.IPTV service providing server comprising a. 제15항에 있어서, 상기 연산부에 의해 결정되는 상기 각 채널들의 채널 타입은 상기 영상 데이터가 상기 각 채널들을 통해 상기 제1 라우터까지 전송되는 제1 타입과, 상기 영상 데이터가 상기 각 채널들을 통해 상기 제2 라우터까지 전송되는 제2 타입으로 분류되는 것을 특징으로 하는 IPTV 서비스 제공 서버.The channel type of each of the channels determined by the calculator is a first type through which the image data is transmitted to the first router through the channels, and the image data is transmitted through the channels. IPTV service providing server, characterized in that the classification into the second type transmitted to the second router. 제16항에 있어서, 상기 연산부는, 채널 변경 지연 시간이 임계치 이하가 되도록 하는 상기 각 채널들의 채널 타입 및 상기 부가적인 인트라 프레임의 개수 별로 산출된 상기 채널들의 전체 대역폭들 중 채널들의 대역폭이 최소인 상기 각 채널들의 채널 타입 및 상기 부가적인 인트라 프레임의 개수를 상기 사용자에게 제공될 각 채널들의 채널 타입 및 상기 영상 데이터에 삽입될 부가적인 인트라 프레임의 개수로 결정하는 것을 특징으로 하는 IPTV 서비스 제공 서버.The bandwidth of claim 16, wherein the calculator is configured to have a minimum bandwidth among channels among the total bandwidths of the channels calculated for each channel type and the number of additional intra frames, such that the channel change delay time is equal to or less than a threshold. And determining the channel type of each channel and the number of additional intra frames as the channel type of each channel to be provided to the user and the number of additional intra frames to be inserted into the image data. 제17항에 있어서, 상기 연산부는,The method of claim 17, wherein the operation unit, 상기 각 채널들에 대한 사용자의 선호도를 산출하는 채널 선호도 산출부;A channel preference calculator configured to calculate a user's preference for each of the channels; 상기 각 채널들이 수신되는데 소요되는 시간과 상기 각 채널들을 통해 제공되는 상기 영상 데이터의 디코딩 지연시간의 합과 상기 각 채널들에 대한 상기 사용자의 채널 선호도의 곱을 이용하여 상기 채널 변경 지연시간을 산출하는 지연시간 산출부;The channel change delay time is calculated using a product of the sum of the time taken for receiving the respective channels, the decoding delay time of the image data provided through the respective channels, and the channel preference of the user for the respective channels. A delay time calculating unit; 상기 각 채널들의 채널 타입을 나타내는 소정값과 상기 영상 데이터 전송에 소요되는 각 채널들의 대역폭의 곱을 이용하여 상기 채널들의 전체 대역폭을 산출하는 대역폭 산출부; 및A bandwidth calculator configured to calculate an overall bandwidth of the channels using a product of a channel type of each channel and a bandwidth of each channel required for transmitting the image data; And 상기 지연시간 산출부에 의해 산출되는 상기 채널 변경 지연시간이 임계치 이하가 되도록 하는 상기 각 채널들의 채널 타입 및 상기 부가적인 인트라 프레임의 개수 별로 산출된 상기 채널들의 전체 대역폭들 중 채널들의 대역폭이 최소인 상기 각 채널들의 채널 타입 및 상기 부가적인 인트라 프레임의 개수를 상기 사용자에게 제공될 각 채널들의 채널 타입 및 상기 영상 데이터에 삽입될 부가적인 인트라 프레임의 개수로 결정하는 채널 특성 결정부;The bandwidth of the channels among the total bandwidths of the channels calculated for each channel type of the channels and the number of additional intra frames to allow the channel change delay time calculated by the delay time calculator to be equal to or less than a threshold is the minimum. A channel characteristic determiner configured to determine the channel type of each channel and the number of additional intra frames as the channel type of each channel to be provided to the user and the number of additional intra frames to be inserted into the image data; 를 포함하는 것을 특징으로 하는 IPTV 서비스 제공 서버.IPTV service providing server comprising a. 제17항에 있어서, 상기 연산부는 상기 각 채널들의 채널 타입 및 상기 부가적인 인트라 프레임의 개수를 설정값으로 하여 제1 상태를 설정하고, 상기 채널 변경 지연시간이 상기 임계치 이하가 되게 하는 설정값을 가지는 상태가 발견될 때까지 상기 설정값을 변경시켜가면서 상기 제1 상태를 반복적으로 갱신시키며, 상기 채널 변경 지연시간이 상기 임계치 이하인 설정값들을 가지는 상태가 발견되는 경우 채널 변경 지연시간이 상기 임계치 이하인 설정값들 중 상기 채널들의 대역폭이 최소가 되게 하는 설정값을 기준으로 사용자에게 제공될 상기 채널 타입 및 상기 영상 데이터에 삽입될 부가적인 인트라 프레임의 개수를 결정하는 것을 특징으로 하는 IPTV 서비스 제공 서버.18. The apparatus of claim 17, wherein the operation unit sets a first state by setting a channel type of each of the channels and the number of additional intra frames as a set value, and sets a set value such that the channel change delay time is equal to or less than the threshold. The first state is repeatedly updated while changing the set value until a state is found, and the channel change delay time is less than or equal to the threshold value when the state having the set values with the channel change delay time is less than or equal to the threshold value. And determining the channel type to be provided to the user and the number of additional intra frames to be inserted into the video data, based on a setting value of which the bandwidths of the channels are minimized among the setting values. 제19항에 있어서, 상기 제1 상태의 반복적 갱신은, 상기 제1 상태에서의 변경된 설정값들 중 상기 채널 변경 지연시간이 상기 임계치 이하가 되게 하는 설정값이 발견되지 않을 때 수행되는 것을 특징으로 하는 IPTV 서비스 제공 서버.20. The method of claim 19, wherein the iterative update of the first state is performed when no setting value is found to cause the channel change delay time to be below the threshold among the changed setting values in the first state. IPTV service provider server. 제20항에 있어서, 상기 제1 상태의 반복적 갱신은, 상기 제1 상태에서의 상기 변경된 설정값들 중 상기 제1 상태의 최초 설정값으로부터의 변경으로 인해 발생되는 코스트가 최대인 설정값을 이용하여 상기 제1 상태를 제2 상태로 갱신하는 것을 특징으로 하는 IPTV 서비스 제공 서버.21. The method of claim 20, wherein the iterative update of the first state uses a set value at which a cost incurred due to a change from the initial set value of the first state of the changed set values in the first state is maximum. IPTV service providing server, characterized in that for updating the first state to a second state. 제21항에 있어서, 상기 코스트는 상기 변경된 설정값들 각각에 대한 채널 변경 지연시간과 상기 임계치와의 차이값의 변화량과 상기 채널들의 전체 대역폭의 변화량의 비로 산출되는 것을 특징으로 하는 IPTV 서비스 제공 서버.22. The IPTV service providing server of claim 21, wherein the cost is calculated as a ratio of a change amount of a difference between a channel change delay time and the threshold value for each of the changed set values and a change amount of the total bandwidth of the channels. . 제19항에 있어서, 상기 제1 상태의 최초 설정값은 상기 각 채널들의 채널 타입은 모두 제2 타입이고 상기 부가적인 인트라 프레임의 개수는 0인 것을 특징으로 하는 IPTV 서비스 제공 서버.20. The IPTV service providing server of claim 19, wherein the initial setting value of the first state is that the channel types of the respective channels are all second types and the number of additional intra frames is zero.
KR1020070076279A 2007-07-30 2007-07-30 IPTV service provision server and method Expired - Fee Related KR100874094B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020070076279A KR100874094B1 (en) 2007-07-30 2007-07-30 IPTV service provision server and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070076279A KR100874094B1 (en) 2007-07-30 2007-07-30 IPTV service provision server and method

Publications (1)

Publication Number Publication Date
KR100874094B1 true KR100874094B1 (en) 2008-12-16

Family

ID=40372632

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070076279A Expired - Fee Related KR100874094B1 (en) 2007-07-30 2007-07-30 IPTV service provision server and method

Country Status (1)

Country Link
KR (1) KR100874094B1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101023755B1 (en) 2009-06-16 2011-03-21 포항공과대학교 산학협력단 Channel control method and apparatus for providing IPTV service
US8223665B2 (en) 2009-07-31 2012-07-17 Postech Academy-Industry Foundation Mobile IPTV system and method of providing mobile IPTV service

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100792025B1 (en) 2007-06-14 2008-01-04 주식회사 셀런 How to transfer video data when changing channel in IPTV system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100792025B1 (en) 2007-06-14 2008-01-04 주식회사 셀런 How to transfer video data when changing channel in IPTV system

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101023755B1 (en) 2009-06-16 2011-03-21 포항공과대학교 산학협력단 Channel control method and apparatus for providing IPTV service
US8223665B2 (en) 2009-07-31 2012-07-17 Postech Academy-Industry Foundation Mobile IPTV system and method of providing mobile IPTV service

Similar Documents

Publication Publication Date Title
US8468573B2 (en) Method for reducing channel change time of internet protocol television (IPTV) and IPTV service provision server for implementing the same
CN105393516B (en) Method, device and computer readable storage medium for quality optimization using buffer and range constraints in adaptive streaming
US9838329B2 (en) Devices, systems and methods for adaptive switching of multicast content delivery to optimize bandwidth usage
US10355998B2 (en) Adaptive video over multicast
EP2912813B1 (en) A method and apparatus for distributing a media content service
EP1982260B1 (en) Method and system for streaming digital video content to a client in a digital video network
JP5420759B2 (en) Fast channel change processing for slow multicast subscriptions
US7793329B2 (en) Method and system for reducing switching delays between digital video feeds using multicast slotted transmission technique
US9344682B2 (en) Multi-media management
US10645463B2 (en) Efficient multicast ABR reception
EP2151127B1 (en) Method and arrangement for improved channel switching
EP2424241A1 (en) Method, device and system for forwarding video data
US10063902B2 (en) ABR network profile selection engine
US10491964B2 (en) Assisted acceleration for video streaming clients
WO2014067566A1 (en) Method and device for streaming video
KR100874094B1 (en) IPTV service provision server and method
KR100848309B1 (en) Apparaus and method of providing internet TV brodacasting service using fast buffering switch
JP4585550B2 (en) IPTV response delay reducing method and IPTV service providing server for implementing the method
Joo et al. Fast/On-time Channel Zapping Scheme using a Cache Server over IPTV Multicast System
KR20130122117A (en) Method and apparatus for transmitting a moving image in a real time
KR20230016430A (en) Method And Apparatus for Fast Channel Zapping by Using Peer-to-Peer Communications in IPTV Multicast System
Joo et al. A New Prefetching Scheme Based on Remote Control Inputs for Random Channel Change in IPTV Multicast Service
Joo et al. A New Method for Peer-to-Peer Assisted Fast Channel Zapping in IPTV Multicast System
Kyryk et al. Reducing channel zapping time based on predictive tuning method
KR20050118835A (en) Vod service system and method for providing the qos with loss ratio

Legal Events

Date Code Title Description
A201 Request for examination
PA0109 Patent application

St.27 status event code: A-0-1-A10-A12-nap-PA0109

PA0201 Request for examination

St.27 status event code: A-1-2-D10-D11-exm-PA0201

R18-X000 Changes to party contact information recorded

St.27 status event code: A-3-3-R10-R18-oth-X000

D13-X000 Search requested

St.27 status event code: A-1-2-D10-D13-srh-X000

D14-X000 Search report completed

St.27 status event code: A-1-2-D10-D14-srh-X000

E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

St.27 status event code: A-1-2-D10-D21-exm-PE0902

P11-X000 Amendment of application requested

St.27 status event code: A-2-2-P10-P11-nap-X000

P13-X000 Application amended

St.27 status event code: A-2-2-P10-P13-nap-X000

P11-X000 Amendment of application requested

St.27 status event code: A-2-2-P10-P11-nap-X000

P13-X000 Application amended

St.27 status event code: A-2-2-P10-P13-nap-X000

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

St.27 status event code: A-1-2-D10-D22-exm-PE0701

GRNT Written decision to grant
PR0701 Registration of establishment

St.27 status event code: A-2-4-F10-F11-exm-PR0701

PR1002 Payment of registration fee

St.27 status event code: A-2-2-U10-U11-oth-PR1002

Fee payment year number: 1

PG1601 Publication of registration

St.27 status event code: A-4-4-Q10-Q13-nap-PG1601

LAPS Lapse due to unpaid annual fee
PC1903 Unpaid annual fee

St.27 status event code: A-4-4-U10-U13-oth-PC1903

Not in force date: 20111209

Payment event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE

PC1903 Unpaid annual fee

St.27 status event code: N-4-6-H10-H13-oth-PC1903

Ip right cessation event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE

Not in force date: 20111209

PN2301 Change of applicant

St.27 status event code: A-5-5-R10-R13-asn-PN2301

St.27 status event code: A-5-5-R10-R11-asn-PN2301

R18-X000 Changes to party contact information recorded

St.27 status event code: A-5-5-R10-R18-oth-X000

P22-X000 Classification modified

St.27 status event code: A-4-4-P10-P22-nap-X000

PN2301 Change of applicant

St.27 status event code: A-5-5-R10-R13-asn-PN2301

St.27 status event code: A-5-5-R10-R11-asn-PN2301

PN2301 Change of applicant

St.27 status event code: A-5-5-R10-R13-asn-PN2301

St.27 status event code: A-5-5-R10-R11-asn-PN2301

R18-X000 Changes to party contact information recorded

St.27 status event code: A-5-5-R10-R18-oth-X000