KR100449492B1 - Method for jumping in multicast video on demand system - Google Patents
Method for jumping in multicast video on demand system Download PDFInfo
- Publication number
- KR100449492B1 KR100449492B1 KR10-2002-0052080A KR20020052080A KR100449492B1 KR 100449492 B1 KR100449492 B1 KR 100449492B1 KR 20020052080 A KR20020052080 A KR 20020052080A KR 100449492 B1 KR100449492 B1 KR 100449492B1
- Authority
- KR
- South Korea
- Prior art keywords
- channel
- video server
- jump
- patching
- regular
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/238—Interfacing 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/2387—Stream processing in response to a playback request from an end-user, e.g. for trick-play
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/238—Interfacing 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/2385—Channel allocation; Bandwidth allocation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/24—Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
- H04N21/2401—Monitoring of the client buffer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/472—End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
- H04N21/47202—End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for requesting content on demand, e.g. video on demand
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/63—Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
- H04N21/64—Addressing
- H04N21/6405—Multicasting
Abstract
클라이언트가 두 개의 멀티캐스팅 채널에서 동시에 스트림 데이터를 수신 받을 수 있는 상황에서의 점프하는 방법에 관한 것이다. 종래에는 일정한 시간 간격을 설정하고 그 시간동안 요청된 서비스를 처리하는 배칭 기반의 주문형 비디오 시스템에서의 점프는 점프 위치와 가장 가까운 곳을 전송하고 있는 채널 그룹을 찾아 조인하는 단순한 방법이 사용되었다. 이 방식은 채널 그룹에 조인하기 위하여 필요한 시간만큼의 대기시간을 요구한다는 단점이 있다. 본 발명은 멀티캐스팅 환경에서의 점프 방법을 지원함으로써 사용자에게 비디오 데이터에 대한 상호작용을 가능하게 하여 시스템의 효용성을 높여 주는 효과가 있다. 또한 기존의 방법과는 달리 대기시간 없는 점프를 가능하게 하며, 디스크에 저장된 데이터를 사용하여 네트워크 대역폭을 절감하는 효과가 있는 것이다.The present invention relates to a method of jumping in a situation where a client can simultaneously receive stream data on two multicasting channels. Conventionally, in a batch-based video-on-demand system that sets a fixed time interval and processes a requested service during the time, a simple method of finding and joining a group of channels transmitting the closest jump position has been used. This method has a disadvantage in that it requires as much waiting time as necessary to join a channel group. The present invention has the effect of improving the utility of the system by enabling the user to interact with the video data by supporting a jump method in a multicasting environment. In addition, unlike the conventional method, it enables the jump without waiting time and saves the network bandwidth by using the data stored in the disk.
Description
본 발명은 멀티캐스팅 채널을 사용하여 스트림 데이터를 전송하는 주문형 비디오 시스템에서 점프 방법에 관한 것으로, 특히, 클라이언트가 두 개의 멀티캐스팅 채널에서 동시에 스트림 데이터를 수신 받을 수 있는 상황에서의 점프하는 방법에 관한 것이다.The present invention relates to a jump method in an on-demand video system for transmitting stream data using a multicasting channel, and more particularly, to a jumping method in a situation in which a client can receive stream data simultaneously on two multicasting channels. will be.
주문형 비디오 시스템에서 가장 중요한 요소인 동시에 지원 가능한 사용자 수를 늘리기 위해 멀티캐스팅 기법을 이용하여 여러 클라이언트가 동일한 스트림을 공유하도록 하는 기법에 대한 연구가 활발하다.In order to increase the number of users that can be supported while being the most important element in an on-demand video system, there is a lot of research on a technique of allowing multiple clients to share the same stream.
도 1은 멀티캐스팅을 이용한 주문형 비디오 시스템의 서비스 제공을 나타낸 블록도로, 클라이언트 그룹(101) 내의 제 1 내지 제 n 클라이언트(C1 내지 CN)는 동일한 채널을 서로 공유함으로써 공유된 채널의 수만큼 네트워크 대역폭을 절약할수 있다. 상기 제 1 내지 제 n 클라이언트(C1 내지 CN)는 비디오 동영상 파일(104)을 비디오 서버(103) 및 네트워크 관리자(102)를 통해 서비스 받는다.1 is a block diagram illustrating service provision of an on-demand video system using multicasting, in which the first to nth clients C1 to CN in the client group 101 share the same channel with each other so as to share the network bandwidth by the number of shared channels. Can save. The first to nth clients C1 to CN receive the video moving picture file 104 through the video server 103 and the network manager 102.
멀티캐스팅의 가장 간단한 방법으로 배칭이 있는데, 이는 특정 비디오에 대한 사용자의 요구를 일정시간 동안 저장하였다가 하나의 멀티캐스팅 채널로 처리하는 방식이다. 이 방식은 각 클라이언트의 서비스 시기는 다음 배칭 주기 동안 기다려야 하기 때문에 초기 대기시간 지연이 불가피하다.Batching is the simplest method of multicasting, in which a user's request for a particular video is stored for a period of time and then processed into a single multicasting channel. This approach incurs an initial latency delay because each client's service period must wait for the next batching cycle.
이를 해결하기 위하여 기존에 전송되고 있는 멀티캐스팅 스트림을 공유하여 디스크에 임시로 저장하고, 별도의 채널을 생성하여 공유가 불가능한 초기 데이터 스트림을 수신하여 재생한다. 초기 데이터에 대한 재생이 끝나게 되면, 디스크에 저장된 데이터에 대한 재생을 수행한다.To solve this problem, the existing multicasting streams are shared and stored temporarily on disk, and a separate channel is created to receive and play an initial data stream that cannot be shared. When the reproduction of the initial data is finished, the reproduction of the data stored in the disc is performed.
도 2는 패칭 기법을 개념적으로 나타낸 개략도로, 동일한 비디오에 대하여 클라이언트 A, B가 시간 간격을 두고 서비스를 요청하였을 경우, 처음으로 요청한 클라이언트 A에 대하여 멀티캐스팅 채널 Ch1을 생성한다. 클라이언트 A가 비디오의 t1 시점을 재생하고 있을 때 클라이언트 B의 세션 요청이 이루어질 경우 멀티캐스팅 채널 Ch1의 S2 부분은 공유가 가능하다. Ch1에서 공유가 불가능한 S1에 대해서는 별도의 채널 Ch2를 생성하여 패칭을 수행한다. 클라이언트 B의 재생 순서는 채널 Ch2에서 패칭한 S1을 먼저 재생하고, S1의 재생이 끝나면 Ch1에서 공유하여 디스크에 저장된 S2 부분을 재생하게 된다. 클라이언트 B에서는 항상 t1 시간에 해당되는 S1 만큼의 데이터가 디스크에 저장되게 된다.2 is a schematic diagram illustrating a patching scheme. When clients A and B request a service at a time interval for the same video, a multicasting channel Ch1 is generated for the first client A requested. When the client A makes a session request from the client B while playing the video at time t1, the S2 portion of the multicasting channel Ch1 can be shared. Patching is performed by creating a separate channel Ch2 for S1 that cannot be shared in Ch1. The playback order of the client B is to play the S1 patched on the channel Ch2 first, and when the playback of the S1 is finished, play the S2 portion shared on the Ch1 and stored on the disc. In the client B, data S1 corresponding to time t1 is always stored on the disk.
이때 채널 Ch1을 정규 채널이라 하고, MCr로 표현한다. Ch2를 패칭 채널이라하고, MCp로 표현한다. 클라이언트에서 패칭을 수행하는 구간을 패칭 구간(Patching Interval)이라 하고, 패칭 구간의 시간 길이를 패칭 길이(Patching Length)라 한다. 클라이언트 B의 패칭 구간은 S1이며, 패칭 길이는 t1이다.At this time, the channel Ch1 is called a regular channel and is expressed as MCr. Ch2 is called a patching channel and is expressed as MCp. The interval in which the client performs patching is called a patching interval, and the time length of the patching interval is called a patching length. The patching interval of client B is S1 and the patching length is t1.
패칭 방식은 공유 가능한 멀티캐스팅 스트림 만큼 네트워크 대역폭을 절감할 수 있으며, 클라이언트의 초기 대기시간을 최소화시켜 주는 방식이다. 또한 비인기 비디오에 대해서도 서버의 네트워크 대역폭을 절약할 수 있는 효과적인 방식이다.Patching can reduce network bandwidth as much as shareable multicasting streams and minimize the initial latency of clients. It is also an effective way to save network bandwidth on the server, even for less popular video.
점프는 비디오 재생 중에 클라이언트가 임의의 위치로 비디오 재생 위치를 이동할 때 사용되며, 주문형 비디오 시스템에서의 점프 방법은 사용자의 상호작용을 가능하게 함으로써 시스템의 효용성을 높여준다. 종래의 일정한 시간 간격을 설정하고 그 시간동안 요청된 서비스를 처리하는 배칭 기반의 주문형 비디오 시스템에서의 점프는 단지 자기가 전송받는 스트림의 채널 그룹을 바꾸는 것으로 간단히 해결되었다.Jump is used when a client moves the video playback position to an arbitrary position during video playback, and the jump method in an on-demand video system enhances the utility of the system by enabling user interaction. Jumping in a batch-based video-on-demand system that sets a constant time interval and processes the requested service during that time is simply solved by simply changing the channel group of the stream to which it is sent.
패칭 방식에서 점프를 지원하는 가장 간단한 방법으로는 배칭 방식에서와 같이 가장 빨리 공유 가능한 정규 채널을 검색해서 정규 채널이 점프 위치를 전송 시작할 때 같이 공유하는 것이다. 정규 채널만을 사용하여 점프 방법을 지원하면 채널의 추가 사용이 필요 없는 장점이 있지만, 서비스에 대한 대기 시간이 너무 길어진다. VCR 연산은 빠른 서비스 응답이 중요하므로 채널의 추가적인 사용을 허용하더라도 대기시간을 최소화하는 접근 방식이 필요하다.The simplest way to support jumps in the patching method is to search for the fastest shareable regular channel, as in the batching method, and share it when the regular channel starts sending the jump position. Supporting the jump method using only regular channels has the advantage that no additional use of channels is required, but the waiting time for the service becomes too long. Fast service response is important for VCR operations, and therefore requires an approach that minimizes latency, even allowing for additional use of the channel.
본 발명은 상술한 결점을 해결하기 위하여 안출한 것으로, 멀티캐스팅 채널을 사용하여 스트림 데이터를 전송하는 주문형 비디오 시스템에서 서버의 멀티캐스팅 채널의 사용을 최소화하면서 점프을 효율적으로 처리하는 방법을 제공하는 데 그 목적이 있다.SUMMARY OF THE INVENTION The present invention has been made to solve the above-described drawbacks, and provides a method for efficiently handling jumps while minimizing the use of a server's multicasting channel in an on-demand video system that transmits stream data using the multicasting channel. There is a purpose.
도 1은 멀티캐스팅을 이용한 주문형 비디오 시스템의 서비스 제공을 나타낸 블록도,1 is a block diagram illustrating service provision of an on-demand video system using multicasting;
도 2는 패칭 기법을 개념적으로 나타낸 개략도,2 is a schematic diagram conceptually illustrating a patching technique;
도 3은 본 발명에서 사용되는 멀티캐스팅 채널을 사용하여 스트림 데이터를 전송하는 주문형 비디오 시스템의 서비스 제공을 나타낸 블록도,3 is a block diagram showing a service provision of an on-demand video system for transmitting stream data using a multicasting channel used in the present invention;
도 4는 본 발명에 따른 멀티캐스팅 채널을 사용하여 스트림 데이터를 전송하는 주문형 비디오 시스템에서 점프 방법에 있어서 패칭 과정이 끝났을 경우 점프에 대한 개념도,4 is a conceptual diagram of a jump when a patching process is completed in a jump method in an on-demand video system that transmits stream data using a multicasting channel according to the present invention;
도 5는 본 발명에 따른 멀티캐스팅 채널을 사용하여 스트림 데이터를 전송하는 주문형 비디오 시스템에서 점프 방법에 있어서 패칭 채널을 가지고 있을 경우 점프에 대한 개념도,5 is a conceptual diagram of a jump when having a patching channel in a jump method in an on-demand video system that transmits stream data using a multicasting channel according to the present invention;
도 6은 본 발명에 따른 멀티캐스팅 채널을 사용하여 스트림 데이터를 전송하는 주문형 비디오 시스템에서 점프 방법에 있어서 패칭 채널이 끝났을 경우 점프 방법을 단계별로 나타낸 순서도,6 is a flowchart illustrating a step-by-step jump method when a patching channel is completed in a jump method in an on-demand video system for transmitting stream data using a multicasting channel according to the present invention;
도 7은 본 발명에 따른 멀티캐스팅 채널을 사용하여 스트림 데이터를 전송하는 주문형 비디오 시스템에서 점프 방법에 있어서 패칭 채널을 가지고 있을 경우 점프 방법을 단계별로 나타낸 순서도.7 is a flowchart illustrating a step-by-step jump method when a patching channel is included in a jump method in an on-demand video system for transmitting stream data using a multicasting channel according to the present invention.
<도면의 주요부분에 대한 부호의 설명><Description of the symbols for the main parts of the drawings>
201 : 클라이언트 202 : 정규 채널201: Client 202: Regular Channel
203 : 패칭 채널 204 : 제어 채널203: patching channel 204: control channel
205 : 비디오 서버 206 : 비디오 정보 관리자205: Video Server 206: Video Information Manager
207 : 채널 관리자 208 : 세션 관리자207: Channel Manager 208: Session Manager
이하, 첨부된 도면을 참조하여 본 발명에 따른 실시예를 상세히 설명한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.
도 3은 본 발명에서 사용되는 멀티캐스팅 채널을 사용하여 스트림 데이터를 전송하는 주문형 비디오 시스템의 서비스 제공을 나타낸 블록도로, 주문형 비디오 시스템은 클라이언트(201)와 비디오 서버(205)로 구성된다. 클라이언트(201)와 비디오 서버(205)와의 통신 채널로는 제어 채널(204), 정규 채널(202), 및 패칭 채널(203) 등이 있다. 제어 채널(204)은 비디오 서버(205)와 클라이언트(201) 간의 제어 메시지 전송에 사용되고, 정규 채널(202)과 패칭 채널(203)은 실제 비디오 데이터의 전송을 위해 사용된다. 비디오 서버(205)는 비디오 정보 관리자(206), 채널 관리자(207), 및 세션 관리자(208)로 구성된다. 비디오 정보 관리자(206)는 주문형 비디오 시스템에서 지원하는 비디오 정보에 대한 관리를 수행한다. 채널 관리자(207)와 세션 관리자(208)는 비디오 서버(205)에서 생성된 채널과 세션 정보를 관리한다.3 is a block diagram illustrating a service providing of an on-demand video system that transmits stream data using a multicasting channel used in the present invention. The on-demand video system includes a client 201 and a video server 205. Communication channels between the client 201 and the video server 205 include a control channel 204, a regular channel 202, a patching channel 203, and the like. The control channel 204 is used for transmitting control messages between the video server 205 and the client 201, and the regular channel 202 and the patching channel 203 are used for transmitting actual video data. The video server 205 consists of a video information manager 206, a channel manager 207, and a session manager 208. The video information manager 206 manages video information supported by the video on demand system. The channel manager 207 and the session manager 208 manage channel and session information generated by the video server 205.
비디오 정보 관리자(206)는 서비스하고자 하는 표 1과 같은 비디오 데이터에 대한 정보를 관리한다.The video information manager 206 manages information on video data such as Table 1 to be serviced.
패칭에서 클라이언트(201)는 최대 두 개의 채널에서 동시에 스트림을 수신 받는다. 클라이언트(201)는 동일 비디오에 대하여 정규 채널(202)이 하나라도 존재하면 공유가 가능하다. 그러나 시간이 지남에 따라 공유 가능한 정규 스트림은 줄어 들고 패칭 스트림의 길이가 커지기 때문에, 계속적인 패칭 채널(203)의 할당은 오히려 네트워크 채널 사용 측면에서 비효율적이다. 따라서 패칭이 가능하더라도 정규 채널(202)을 새로이 할당하여 이후 요청되는 클라이언트가 정규 스트림을 더 많이 공유하게 하는 것이 유리하다.In patching, the client 201 receives streams simultaneously on up to two channels. Client 201 can be shared if at least one regular channel 202 exists for the same video. However, as time goes by, the shareable regular stream decreases and the length of the patching stream grows, so continuous allocation of the patching channel 203 is rather inefficient in terms of network channel usage. Thus, even if patching is possible, it is advantageous to newly allocate the canonical channel 202 so that later requesting clients share more canonical streams.
특정 비디오 i에 대하여 네트워크 대역폭 사용을 최소로 만드는 패칭 가능 범위 Ti는 비디오에 대한 도착률 λi와 비디오의 크기 Li에 따라 최적화된 값을 가지는 함수로 나타난다. 즉 패칭 가능 범위는 도착율이 클수록 적은 값을 가지며, 비디오의 크기가 커질수록 값이 커지게 된다. 또한 패칭 가능 시간 Ti는 클라이언트 디스크에 저장되어야 할 최대 데이터의 양을 나타낸다. 클라이언트(201)는 디스크 저장 공간을 넘는 데이터를 패칭할 수 없으므로, 디스크의 크기가 Ti 보다 적게 되면, Ti 값은 디스크의 크기 B가 된다. 비디오에서 정규 채널(202)의 패칭 가능 범위는 다음과 같다.The patchable range Ti, which minimizes the use of network bandwidth for a particular video i, is represented as a function with an optimized value depending on the arrival rate λi for the video and the video size Li. That is, the patchable range has a smaller value as the arrival rate increases, and the value becomes larger as the video size increases. Patchable time Ti also represents the maximum amount of data to be stored on the client disk. Since the client 201 cannot patch data beyond the disk storage space, if the size of the disk is smaller than Ti, the Ti value becomes the size B of the disk. The patchable range of the regular channel 202 in video is as follows.
Ti = (sqrt(2Li*λi) - 1)/λi (if Ti<B)Ti = (sqrt (2Li * λi)-1) / λi (if Ti <B)
Ti = B (else)Ti = B (else)
비디오 서버(205) 내의 채널 관리자(207)에 의해 관리되는 정보는 표 2와 같다.Information managed by the channel manager 207 in the video server 205 is shown in Table 2.
채널의 현재 전송 위치나 클라이언트(201)의 현재 재생 위치 등은 비디오의 특정 시점이 비디오의 처음부터 얼마의 시간 간격 뒤에 위치하는 지를 나타내는 위치시간 값을 사용한다. 채널이 관리하는 MCbegin과 MCend는 비디오 i의 전송 시작 위치와 전송 끝 위치를 시간 값으로 각기 표시한 값이다. 즉, MCbegin=5, MCend=15이면 비디오 i의 5분 위치에서 15분 위치를 전송하게 된다. 멀티캐스트 채널은 VCR 연산에 의해 임시로 전송이 중단될 수 있는데, MCdelay는 전송이 중지된 전체 시간이다. 따라서 현재 시간이 Tcurr, 멀티캐스트 채널의 시작 시간을 MCstart라 하면, 채널의 현재 전송 위치는 Tcurr-MCstart-MCdelay+MCbegin이 된다.The current transmission position of the channel or the current reproduction position of the client 201 uses a position time value indicating how many time intervals a specific point in time of the video is located after the beginning of the video. MCbegin and MCend, which are managed by the channel, represent the start and end positions of video i as time values, respectively. In other words, if MCbegin = 5 and MCend = 15, the 15-minute position is transmitted from the 5-minute position of video i. Multicast channels may be temporarily suspended by VCR operations. MCdelay is the total time at which transmission was stopped. Therefore, if the current time is Tcurr and the start time of the multicast channel is MCstart, the current transmission position of the channel is Tcurr-MCstart-MCdelay + MCbegin.
세션 관리자(208)에 의해 관리되는 세션 정보는 표 3과 같이 정규채널, 패칭 채널, 및 패칭 길이 값을 가지고 있다.The session information managed by the session manager 208 has regular channel, patching channel, and patching length values as shown in Table 3.
점프 방법은 크게 정규 채널(202)과 패칭 채널(203)에서 동시에 데이터를 수신하는 패칭 과정인지 패칭 채널(203)에서의 수신이 끝나고 정규 채널(202)에서만 수신하고 있는지에 따라 달라진다. 또한 각각의 경우는 패칭 가능 구간 범위내의 점프인지 범위 밖의 점프인지에 따라 나누어지며, 각 경우에 따라 작동 시나리오가 달라진다.The jump method largely depends on whether the patching process receives data at the regular channel 202 and the patching channel 203 at the same time, or whether the reception at the patching channel 203 is completed and is being received only at the regular channel 202. In addition, each case is divided according to whether it is a jump in the patchable interval range or a jump out of the range, and the operation scenario is different in each case.
본 발명에 따른 멀티캐스팅 채널을 사용하여 스트림 데이터를 전송하는 주문형 비디오 시스템에서 점프 방법에 있어서 패칭 과정이 끝났을 경우 점프는 도 4와 같이 네 가지의 경우를 들 수 있다.When a patching process is completed in a jump method in an on-demand video system that transmits stream data using a multicasting channel according to the present invention, there are four cases of jumping as shown in FIG. 4.
본 발명에 따른 멀티캐스팅 채널을 사용하여 스트림 데이터를 전송하는 주문형 비디오 시스템에서 점프 방법에 있어서 패칭 채널을 가지고 있을 경우 점프는 도 5와 같이 다섯 가지의 경우를 들 수 있다.In a jump method in a video system using on-demand transmission of multi-cast channels according to the present invention, jumps may have five cases as shown in FIG. 5.
도 6은 본 발명에 따른 멀티캐스팅 채널을 사용하여 스트림 데이터를 전송하는 주문형 비디오 시스템에서 점프 방법에 있어서 패칭 채널이 끝났을 경우 점프 방법을 단계별로 나타낸 순서도이다.6 is a flowchart illustrating a step-by-step jump method when a patching channel is finished in a jump method in an on-demand video system that transmits stream data using a multicasting channel according to the present invention.
먼저, 클라이언트(201)는 점프를 위하여 세션 ID와 점프 위치를 비디오 서버(205)로 보낸다(단계 301).First, the client 201 sends the session ID and jump position to the video server 205 for the jump (step 301).
비디오 서버(205)는 패칭 가능 구간 범위내에서의 점프인지를 검사한다(단계 302).The video server 205 checks if it is a jump within the patchable interval range (step 302).
비디오 서버(205)는 단계 302의 검사 결과, 패칭 가능 구간 범위내에서의 점프일 경우 클라이언트(201)의 디스크에 저장된 데이터를 사용하여 점프가 가능한지를 검사한다(단계 303). 패칭 시간 크기의 데이터를 정규 채널에서 공유하여 디스크에 저장하고 있기 때문에 점프 위치가 현재 재생위치에서 정규 채널의 전송위치 사이이면 디스크 데이터로 점프가 가능하다.The video server 205 checks whether the jump is possible using the data stored in the disk of the client 201 when the jump is within the patchable interval range as a result of the check in step 302 (step 303). Since the data of patching time size is shared on the regular channel and stored on the disk, it is possible to jump to the disc data if the jump position is between the current playback position and the transmission position of the regular channel.
비디오 서버(205)는 단계 303의 검사 결과, 클라이언트(201)의 디스크에 저장된 데이터를 사용하여 점프가 가능할 경우 채널을 변경하지 않고 패칭 길이를 조정한다(단계 304).The video server 205 adjusts the patching length without changing the channel if it is possible to jump using the data stored in the disk of the client 201 as a result of the inspection of step 303 (step 304).
비디오 서버(205)는 단계 303의 검사 결과, 점프위치가 현재 재생위치보다 작아 클라이언트(201)의 디스크에 저장된 데이터를 사용하여 점프가 불가능할 경우 새로운 패칭 채널을 생성한다(단계 305). 생성되는 패칭 채널의 전송 시작 위치는 점프 위치가 되고, 전송 마침 위치는 현재 재생위치가 된다.The video server 205 generates a new patching channel when the jump is impossible using the data stored in the disk of the client 201 because the jump position is smaller than the current playback position as a result of the check in step 303 (step 305). The transmission start position of the generated patching channel becomes a jump position, and the transmission end position becomes a current playback position.
비디오 서버(205)는 단계 302의 검사 결과, 패칭 가능 구간 범위 이외의 점프일 경우 현재의 정규 채널을 더 이상 공유하지 않고 패칭 수행 과정에서 디스크에 저장된 데이터를 무시하여 패칭 채널을 삭제한다(단계 306).The video server 205 deletes the patching channel by ignoring the data stored in the disk during the patching process without sharing the current normal channel any more when the jump of the patching interval is not performed as a result of the inspection of step 302 (step 306). ).
비디오 서버(205)는 현재 세션이 유일하게 사용하는 정규 채널을 가지고 있는지를 검사한다(단계 307).The video server 205 checks whether the current session has a regular channel uniquely used (step 307).
비디오 서버(205)는 단계 307의 검사 결과, 현재 세션이 유일하게 사용하는 정규 채널을 가지고 있을 경우 정규 채널을 삭제한다(308).The video server 205 deletes the regular channel if the current session has a regular channel uniquely used as a result of the inspection of step 307.
비디오 서버(205)는 단계 308의 수행 다음이나 단계 307의 검사 결과, 현재 세션이 유일하게 사용하는 정규 채널을 가지고 있지 않을 경우 점프 위치가 패칭 가능 구간에 존재하는 정규 채널을 검색하여 기존의 정규 채널을 공유할 수 있는지를 검사한다(단계 309).The video server 205 searches for a regular channel in which a jump position exists in a patchable section if the current session does not have a regular channel used after the execution of step 308 or as a result of the inspection in step 307. It is checked if it can be shared (step 309).
비디오 서버(205)는 단계 309의 검사 결과, 정규 채널의 공유가 가능한 경우에는 새로운 패칭 채널을 생성한다(단계 310). 패칭 채널의 전송 시작 위치는 점프 위치가 되고, 전송 마침 위치는 정규 채널의 현재 전송 위치가 된다. 패칭 길이는 "검색된 정규 채널의 전송 위치 내지 점프 위치"가 된다.The video server 205 generates a new patching channel if the regular channel can be shared as a result of the check in step 309 (step 310). The transmission start position of the patching channel becomes the jump position, and the transmission end position becomes the current transmission position of the regular channel. The patching length becomes "transmission position or jump position of the found regular channel".
비디오 서버(205)는 단계 309의 검사 결과, 정규 채널의 공유가 불가능하면 새로운 정규 채널을 생성한다(단계 311).The video server 205 generates a new normal channel if the normal channel cannot be shared as a result of the check in step 309 (step 311).
클라이언트(201)는 단계 304, 단계 305, 단계 310, 단계 311이 각기 수행될 때마다 비디오 서버(205)로부터 정규 채널, 패칭 채널, 패칭 길이, 대기 시간을 선택적으로 수신한다(단계 312).The client 201 selectively receives a regular channel, a patching channel, a patching length, and a waiting time from the video server 205 each time step 304, step 305, step 310, and step 311 are performed (step 312).
도 7은 본 발명에 따른 멀티캐스팅 채널을 사용하여 스트림 데이터를 전송하는 주문형 비디오 시스템에서 점프 방법에 있어서 패칭 채널을 가지고 있을 경우 점프 방법을 단계별로 나타낸 순서도이다.7 is a flowchart illustrating a step-by-step jump method when a patching channel is included in a jump method in an on-demand video system that transmits stream data using a multicasting channel according to the present invention.
먼저, 클라이언트(201)는 점프를 위하여 세션 ID와 점프 위치를 비디오 서버(205)로 보낸다(단계 401).First, client 201 sends a session ID and jump location to video server 205 for a jump (step 401).
비디오 서버(205)는 패칭 가능 구간 범위인지를 검사한다(단계 402).The video server 205 checks whether it is a patchable interval range (step 402).
비디오 서버(205)는 단계 402의 검사 결과, 패칭 가능 구간 범위일 경우 클라이언트(201)의 디스크에 저장된 데이터를 사용하여 점프가 가능한지를 검사한다(단계 403). 패칭 채널이 전송을 수행한 시간 크기의 데이터를 정규 채널에서 공유하여 디스크에 저장하고 있다.The video server 205 checks whether the jump is possible using the data stored in the disk of the client 201 when the inspection result of the step 402 is a patchable interval range (step 403). The patching channel stores the time-sized data in the regular channel and stores it on the disk.
비디오 서버(205)는 단계 403의 검사 결과, 디스크에 저장된 데이터 만으로점프 연산 처리가 가능할 경우 패칭 길이를 조정한다(단계 404).The video server 205 adjusts the patching length when the jump operation can be performed using only the data stored in the disk as a result of the inspection in step 403 (step 404).
비디오 서버(205)는 이 경우 더 이상 패칭이 필요 없게 되므로 패칭 채널을 삭제한다(단계 405).The video server 205 deletes the patching channel in this case since no more patching is needed (step 405).
비디오 서버(205)는 단계 403의 검사 결과, 디스크 저장 데이터로서 점프 연산이 불가능할 경우에는 패칭 채널의 전송 시작 위치를 점프 위치로 변경한다(단계 406).The video server 205 changes the transmission start position of the patching channel to the jump position when the jump operation is impossible as the disk storage data as a result of the check in step 403 (step 406).
비디오 서버(205)는 패칭 길이를 조정한다(단계 407). 전송 마침 위치는 변경하지 않는다.Video server 205 adjusts the patching length (step 407). Do not change the transmission end position.
비디오 서버(205)는 단계 402의 검사 결과, 패칭 가능 구간 범위 이외의 점프인 경우 현재의 정규 채널을 더 이상 공유하지 않고, 패칭 수행 과정에서 디스크에 저장된 데이터를 무시하고, 현재 세션이 유일하게 사용하는 정규 채널을 가지고 있는지를 검사한다(단계 408).The video server 205 no longer shares the current regular channel if the jump is outside the patchable interval range as a result of the check of step 402, and ignores the data stored on the disk during the patching process, and the current session is used only. Check if there is a regular channel (step 408).
비디오 서버(205)는 단계 408의 검사 결과, 현재 세션이 유일하게 사용하는 정규 채널을 가지고 있을 경우 정규 채널을 삭제한다(단계 409).The video server 205 deletes the normal channel if the current session has a regular channel uniquely used as a result of the check in step 408 (step 409).
비디오 서버(205)는 단계 409의 수행 다음이나 단계 408의 검사 결과, 현재 세션이 유일하게 사용하는 정규 채널을 가지고 있지 않을 경우 점프 위치가 패칭 가능 구간에 존재하는 정규 채널을 검색하여 기존의 정규 채널을 공유할 수 있는지를 검사한다(단계 410).The video server 205 searches for a regular channel having a jump position in a patchable section if the current session does not have a regular channel used after the execution of step 409 or as a result of the check in step 408. It is checked if it can be shared (step 410).
비디오 서버(205)는 단계 410의 검사 결과, 다른 정규 채널의 공유가 가능한 경우 새로운 패칭 채널을 생성한다(단계 411). 패칭 채널의 전송 시작 위치는 점프위치가 되고, 전송 마침 위치는 정규 채널의 현재 전송 위치가 된다. 패칭 길이는 "검색된 정규 채널의 전송 위치 내지 점프 위치"가 된다.The video server 205 generates a new patching channel when the test result of step 410 enables sharing of other regular channels (step 411). The transmission start position of the patching channel becomes the jump position, and the transmission end position becomes the current transmission position of the regular channel. The patching length becomes "transmission position or jump position of the found regular channel".
비디오 서버(205)는 단계 410의 검사 결과, 정규 채널의 공유가 불가능하면 새로운 정규 채널을 생성한다(단계 412).The video server 205 generates a new normal channel if the normal channel cannot be shared as a result of the check in step 410 (step 412).
클라이언트(201)는 단계 405, 단계 407, 단계 411, 단계 412가 각기 수행될 때마다 비디오 서버(205)로부터 정규 채널, 패칭 채널, 패칭 길이, 대기 시간을 선택적으로 수신한다(단계 413).The client 201 selectively receives a regular channel, a patching channel, a patching length, and a waiting time from the video server 205 whenever step 405, step 407, step 411, and step 412 are performed (step 413).
이상에서 설명한 바와 같이, 본 발명은 클라이언트가 두 개의 채널에서 비디오 데이터를 동시에 수신 가능한 패칭 환경하에서 임의 위치로의 점프 연산을 지원함으로써 사용자에게 비디오 데이터에 대한 상호작용을 가능하게 하여 시스템의 효용성을 높여 주는 효과가 있다. 대기시간 없는 점프 연산을 지원하며, 디스크에 저장된 데이터를 사용함으로써 네트워크 대역폭을 줄여주는 효과가 있다.As described above, the present invention supports a jump operation to an arbitrary position in a patching environment in which a client can simultaneously receive video data in two channels, thereby enabling the user to interact with the video data, thereby increasing the utility of the system. Giving effect. It supports latency-free jump operations and reduces network bandwidth by using data stored on disk.
Claims (12)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2002-0052080A KR100449492B1 (en) | 2002-08-30 | 2002-08-30 | Method for jumping in multicast video on demand system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2002-0052080A KR100449492B1 (en) | 2002-08-30 | 2002-08-30 | Method for jumping in multicast video on demand system |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20040020472A KR20040020472A (en) | 2004-03-09 |
KR100449492B1 true KR100449492B1 (en) | 2004-09-22 |
Family
ID=37324929
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR10-2002-0052080A KR100449492B1 (en) | 2002-08-30 | 2002-08-30 | Method for jumping in multicast video on demand system |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100449492B1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101006783B1 (en) * | 2008-08-06 | 2011-01-10 | 엘지전자 주식회사 | Refrigerator |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020114331A1 (en) * | 2000-12-13 | 2002-08-22 | Cheung Kwok Wai | Method and system for delivering media selections through a network |
US20020114330A1 (en) * | 2000-12-13 | 2002-08-22 | Cheung Kwok Wai | Method and system for delivering media selections through a network |
KR20030025386A (en) * | 2001-09-20 | 2003-03-29 | 한국전자통신연구원 | Method for pause/resume a video playback in a video system |
-
2002
- 2002-08-30 KR KR10-2002-0052080A patent/KR100449492B1/en not_active IP Right Cessation
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020114331A1 (en) * | 2000-12-13 | 2002-08-22 | Cheung Kwok Wai | Method and system for delivering media selections through a network |
US20020114330A1 (en) * | 2000-12-13 | 2002-08-22 | Cheung Kwok Wai | Method and system for delivering media selections through a network |
KR20030025386A (en) * | 2001-09-20 | 2003-03-29 | 한국전자통신연구원 | Method for pause/resume a video playback in a video system |
Also Published As
Publication number | Publication date |
---|---|
KR20040020472A (en) | 2004-03-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100715674B1 (en) | Load balancing method and software steaming system using the same | |
US5561637A (en) | Pace control for multicasting in a video server environment | |
EP1956842B1 (en) | A method, a device and a system for realizing time shift tv | |
JP5479107B2 (en) | System and method for content communication | |
EP2675132B1 (en) | System for dynamic stream management in audio video bridged networks | |
US20030126277A1 (en) | Apparatus and method for providing multimedia streaming service by using point-to-point connection | |
US7886056B2 (en) | Method and apparatus for workload management of a content on demand service | |
EP0785657A2 (en) | Method and apparatus for distributing network bandwidth on a media server | |
JP2009506627A (en) | On-demand system and method using dynamic broadcast scheduling | |
KR20110119229A (en) | P2p live streaming system for high-definition media broadcasting and the method therefor | |
EP1806870B1 (en) | Method for providing data and data transmission system | |
KR20030025386A (en) | Method for pause/resume a video playback in a video system | |
US7724724B2 (en) | Radio communication apparatus | |
US20070294423A1 (en) | Multi-Client Single-Session Media Streaming | |
US20180048526A1 (en) | Distribution of bandwidth in a network | |
KR100449492B1 (en) | Method for jumping in multicast video on demand system | |
KR20120108138A (en) | Circular buffer and method for multimedia streaming service based peer-to-peer | |
US20070076614A1 (en) | Method for changing channels in wireless communication terminal and content service system | |
WO2005119498A1 (en) | P2p based video service system and method for providing vod service using the same | |
CN101286943B (en) | Control method of network television service and network television service system | |
KR100835528B1 (en) | Multimedia Contents Streaming Method Using Section Information and Streaming Apparatus Thereof | |
KR100460938B1 (en) | System with streaming terminal operating for streaming server And the method | |
KR100827825B1 (en) | Method of video on demand streaming and storage medium storing program therefor | |
KR101293005B1 (en) | Vod transmitting system using vod scheme combining fast broadcasting and patching | |
TWM627763U (en) | Low delay expansion system of stream relay node |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20080905 Year of fee payment: 5 |
|
LAPS | Lapse due to unpaid annual fee |