KR20030071481A - 주문형 비디오 서비스를 방송 시스템에 제공하는 시스템및 방법 - Google Patents
주문형 비디오 서비스를 방송 시스템에 제공하는 시스템및 방법 Download PDFInfo
- Publication number
- KR20030071481A KR20030071481A KR1020027016327A KR20027016327A KR20030071481A KR 20030071481 A KR20030071481 A KR 20030071481A KR 1020027016327 A KR1020027016327 A KR 1020027016327A KR 20027016327 A KR20027016327 A KR 20027016327A KR 20030071481 A KR20030071481 A KR 20030071481A
- Authority
- KR
- South Korea
- Prior art keywords
- data
- data file
- matrix
- client
- file
- 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.)
- Withdrawn
Links
- 238000000034 method Methods 0.000 title claims abstract description 77
- 239000011159 matrix material Substances 0.000 claims description 110
- 238000012546 transfer Methods 0.000 claims description 18
- 230000005540 biological transmission Effects 0.000 claims description 15
- 230000008569 process Effects 0.000 claims description 14
- 238000012545 processing Methods 0.000 claims description 14
- 238000012544 monitoring process Methods 0.000 claims description 12
- 230000004044 response Effects 0.000 claims description 8
- 230000006854 communication Effects 0.000 claims description 7
- 238000004891 communication Methods 0.000 claims description 7
- 230000008878 coupling Effects 0.000 claims 1
- 238000010168 coupling process Methods 0.000 claims 1
- 238000005859 coupling reaction Methods 0.000 claims 1
- 230000009471 action Effects 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 238000011144 upstream manufacturing Methods 0.000 description 3
- 101000969688 Homo sapiens Macrophage-expressed gene 1 protein Proteins 0.000 description 2
- 102100021285 Macrophage-expressed gene 1 protein Human genes 0.000 description 2
- 230000007175 bidirectional communication Effects 0.000 description 2
- 238000012937 correction Methods 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 238000013468 resource allocation Methods 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000011888 foil Substances 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000002156 mixing Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 230000010363 phase shift Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/16—Analogue secrecy systems; Analogue subscription systems
- H04N7/173—Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal
- H04N7/17309—Transmission or handling of upstream communications
- H04N7/17318—Direct or substantially direct transmission and handling of requests
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/61—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
- H04L65/611—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for multicast or broadcast
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/61—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
- H04L65/612—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/61—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
- H04L65/613—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for the control of the source by the destination
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/70—Media network packetisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- 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/25—Management 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/262—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
-
- 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/25—Management 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/262—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
- H04N21/26208—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints
- H04N21/26216—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints involving the channel capacity, e.g. network bandwidth
-
- 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/25—Management 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/262—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
- H04N21/26208—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints
- H04N21/26233—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints involving content or additional data duration or size, e.g. length of a movie, size of an executable file
-
- 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/25—Management 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/262—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
- H04N21/26208—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints
- H04N21/26241—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints involving the time of distribution, e.g. the best time of the day for inserting an advertisement or airing a children program
-
- 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/25—Management 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/262—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
- H04N21/26275—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists for distributing content or additional data in a staggered manner, e.g. repeating movies on different channels in a time-staggered manner in a near video on demand system
-
- 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/41—Structure of client; Structure of client peripherals
- H04N21/418—External card to be used in combination with the client device, e.g. for conditional access
- H04N21/4181—External card to be used in combination with the client device, e.g. for conditional access for conditional access
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/433—Content storage operation, e.g. storage operation in response to a pause request, caching operations
- H04N21/4331—Caching operations, e.g. of an advertisement for later insertion during playback
-
- 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
-
- 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/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/482—End-user interface for program selection
-
- 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/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/84—Generation or processing of descriptive data, e.g. content descriptors
-
- 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/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/845—Structuring of content, e.g. decomposing content into time segments
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/1066—Session management
- H04L65/1101—Session protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99941—Database schema or data structure
- Y10S707/99944—Object-oriented database structure
- Y10S707/99945—Object-oriented database structure processing
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99941—Database schema or data structure
- Y10S707/99948—Application of database or data structure, e.g. distributed, multimedia, or image
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Human Computer Interaction (AREA)
- Business, Economics & Management (AREA)
- Marketing (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Circuits Of Receivers In General (AREA)
- Television Signal Processing For Recording (AREA)
- Television Systems (AREA)
Abstract
주문형 데이터 서비스를, 예를 들면 케이블 텔레비젼 시스템으로 제공하기 위해서 데이터를 클라이언트에게 전달하는 방법은 데이터 화일을 수신하는 단계, 시간 간격을 특정하는 단계, 각 데이터 블럭이 시간 간격동안 디스플레이가능하도록 시간 간격을 기초로 하여 데이터 화일을 복수의 데이터 블럭으로 분석하는 단계, 데이터 화일을 전달하기 위해서 시간 슬롯의 요청되는 개수를 결정하는 단계, 임의의 시간 블럭으로부터 시작하여 (i)제 1 복수의 데이터 블럭에 액세스함으로써 데이터 화일이 디스플레이되며, (ii)보존적인 시간 슬롯에서, 이전 디스플레이된 데이터 블럭에 순차적으로 다음 블럭이 디스플레이하기 이용가능하고, (iii)단계 (ii)를 반복하여 데이터 화일에 대한 복수의 데이터 블럭들이 디스플레이되도록 적어도 제 1 복수의 데이터 블럭과 선택적으로 1개 이상의 부가 데이터 블럭을 각 시간 슬롯으로 할당하는 단계, 그리고 할당 단계를 기초로 하여 복수의 데이터 블럭을 전달하는 단계를 포함한다.
Description
주문형 비디오(VOD) 시스템들은 주문형 데이터(DOD) 시스템의 일 유형이다. VOD 시스템에서, 비디오 데이터 화일들은 주문에 기초하여 서버 또는 서버들의 네트워크에 의하여 1이상의 클라이언트에게 제공된다.
종래의 VOD 아키텍쳐에서, 서버 또는 서버들의 네트워크는 표준 계층적 클라이언트-서버 모델에서 클라이언트들과 교신한다. 예를 들면, 클라이언트는 요청을 데이터 화일(예를 들면, 비디오 데이터 화일)용 서버에 전달한다. 클라이언트 요청에 응답하여, 서버는 요청받은 데이터 화이을 클라이언트에게 전달한다. 표준 클라이언트-서버 모델에서, 데이터 화일에 대한 클라이언트의 요청은 1개 이상의 서버에 의해 수행될 수 있다. 클라이언트는 차후 사용을 위해 비-휘발성 메모리에 국소적으로 임의의 데이터 화일을 저장시키는 능력을 갖고 있다. 표준 클라이언트-서버 모델은 양방향 통신 인프라구조를 요구한다. 현재 양방향 통신은 새로운 인프라구조를 세울 것을 요구하는데, 왜냐하면 기존 케이블들은 단방향 통신만을 제공할 수있기 때문이다. 양방향 통신 인프라구조의 예는 하이브리드 광섬유 동축 케이블(HFC) 또는 화이버 인프라구조이다. 기존 케이블들을 교체하는 것은 매우 비싸며 그러한 결과적인 서비스들은 대부분의 사용자들에 의해 이용가능하지 않다.
게다가, 표준 클라이언트-서브 모델은 서비스 제공자(예를 들면, 케이블 회사)가 VOD 서비스를 수많은 클라이언트에게 제공하고자 할 때 많은 제한이 따른다. 표준 클라이언트-서버 모델의 한가지 제한점은 서비스 제공자가 네트워크내의 각 클라이언트로부터 모든 요청을 지속적으로 듣고 수행하는 메카니즘을 구현해야 한다는 것이다; 그러므로, 서비스를 수신할 수 있는 클라이언트들의 수는 그러한 메카니즘의 수용력에 좌우한다. 1가지 메카니즘은 로컬 서버로서 대형 및 빠른 디스크 어레이를 갖는 대량-병렬 컴퓨터를 사용한다. 그러나, 가장 빠른 기존의 로컬 서버 조차도 비디오 데이터 스트림을 약 1000 내지 2000개 클라이언트에게 한번에 전달할 수 있을 뿐이다. 그러므로, 더 많은 클라이언트에게 서비스하기 위해서, 로컬 서버의 수가 증가해야 한다. 로컬 서버를 증가시키는 것은 로컬 서버의 제어를 유지하기 위해서 더 상위 레벨 서버를 요구한다.
표준 클라이언트-서버 모델의 다른 제한점은 각 클라이언트가 그 자신의 대역폭을 요구한다는 것이다. 그러므로, 전체 요구되는 대역폭은 가입한 클라이언트의 수에 직접 비례한다. 로컬 서버내의 캐시 메모리는 대역폭 제한을 개선시키기 위해 사용되어 왔지만 캐시 메모리를 사용하는 것은 캐시 메모리가 또한 제한되기 때문에 그러한 문제점을 해결하지 못한다.
현재, 클라이언트에게 더 알맞은 주문형 비디오 서비스를 하기 위해서, 기존서비스 제공자들은 로컬 서버의 능력이상으로 로컬 서버 당 클라이언트의 비율을 증가시키고 있다. 통상, 1000개 클라이언트에게 서비스를 제공할 수 있는 로컬 서버는 실질적으로 10,000개 클라이언트에게 서비스한다. 이러한 기술은 대부분의 가입한 클라이언트들이 동시에 비디오를 주문하지 않을 경우에 작동한다. 그러나, 이러한 기술은 실패라고 주장되는데 왜냐하면 대부분의 클라이언트들이 동시에(즉, 저녁 및 주말) 비디오를 시청하고자 하여, 로컬 서버에 과부하가 걸리게 하기 때문이다.
그러므로, 기존 인프라구조를 교체하지 않고 실질적으로 임의의 전송 매체를 거쳐 다수의 클라이언트들에게 주문형 서비스를 제공할 수 있는 시스템을 제공하는 것이 바람직하다.
발명의 개요
예시적인 실시예에서, 서버측에서, 주문형 데이터 서비스를 제공하기 위해서 데이터를 클라이언트에게 전달하기 위한 방법은: 데이터 화일을 수신하는 단계, 시간 간격을 특정하는 단계, 각 데이터 블럭이 시간 간격동안 디스플레이가능하도록 데이터 화일을 시간 간격에 기초하여 복수의 데이터 블럭으로 분석하는 단계, 데이터 화일을 전달하기 위해서 요청되는 시간 슬롯의 수(number)를 결정하는 단계, 적어도 제 1 복수의 데이터 블럭과 선택적으로 1개 이상의 부가 데이터 블럭을 각 시간 슬롯에 할당하는데, 복수의 데이터 블럭들이 임의의 시간 슬롯동안 데이터 화일에 액세스하는 클라이언트에게 순차적인 순서로 이용가능하게 할당하는 단계, 및 할당 단계에 기초하여 복수의 데이터 블럭을 전달하는 단계를 포함한다. 일실시예에서, 분석 단계는: 예측되는 데이터 블럭 사이즈를 결정하는 단계, 채널 서버에서 메모리의 클러스터 사이즈를 결정하는 단계, 및 예측되는 데이터 블럭 사이즈와 클러스터 사이즈에 기초하여 데이터 화일을 분석하는 단계를 포함한다. 다른 실시예에서, 결정 단계는 자원 할당 및 대역폭 이용가능성을 평가하는 단계를 포함한다.
예시적인 실시예에서, 클라이언트측에서, 주문형 데이터 서비스를 제공하는 서버로부터 수신된 데이터를 처리하기 위한 방법은: (a)제 1 시간 슬롯동안 데이터 화일의 선택부분(selection)을 수신하는 단계; (b)제 2 시간 슬롯동안 데이터 화일의 적어도 하나의 데이터 블럭을 수신하는 단계; (c)다음 시간 슬롯동안: 아직 수신되지 않은 임의의 데이터 블럭을 수신하는 단계, 데이터 화이의 데이터 블럭을 순차적으로 디스플레이하는 단계, 그리고 데이터 화이의 모든 데이터 블럭들이 수신 및 디스플레이될 때 까지 단계(c)를 반복하는 단계를 포함한다. 일실시예에서, 서버로부터 수신된 데이터를 처리하기 위한 방법은 클라이언트측의 셋-톱 박스에 의해 수행된다.
예시적인 실시예에서, 데이터 화일은 수많은 데이터 블럭으로 분할되며 스케줄링 매트릭스는 데이터 블럭의 수를 기초로 하여 발생된다. 서버측에서, 스케줄링 매트릭스는 데이터 블럭을 전달하기 위한 전달 순서를 제공하므로, 클라이언트는 임의의 시간에 순차적인 순서로 데이터 블럭을 액세스할 수 있다. 예시적인 실시예에서, 데이터 화일에 대한 스케줄링 매트릭스를 발생시키기 위한 방법은: (a)데이터 화일에 대한 데이터 블럭의 개수[x]를 수신하는 단계; (b)제 1 변수[j]를 제로로 설정하는 단계; (c)제 2 변수[i]를 제로로 설정하는 단계; (d)레퍼런스 어레이의 모든 엔트리를 클리어하는 단계; (e)만일 레퍼런스 어레이가 아직 데이터 블럭을 포함하지 않는다면, 매트릭스에서 행의 매트릭스 위치[(i+j) 모듈 x]에 저장된 적어도 하나의 데이터 블럭을 레퍼런스 어레이에 기록하는 단계; (f)레퍼런스 어레이가 데이터 블럭[i]을 포함하지 않는다면, 매트릭스의 매트릭스 위치[(i+j) 모듈 x, j]와 기준어레이로 데이터 블럭[i]을 기록하는 단계; (g)제 2 변수[i]를 1씩 증분시키고 제 2 변수[i]가 데이터 블럭의 개수[x]에 같을 때 까지 단계(e)를 반복하는 단계; 그리고 (h)제 1 변수[j]를 1씩 증분시키고 제 1 변수[j]가 데이터 블럭의 개수[x]에 같을 때 까지 단계(e)를 반복하는 단계를 포함한다. 일실시예에서, 스케줄링 매트릭스는 데이터 화일의 세트에서 각 데이터 화일에 대해 발생되며 회선형법(convolution method)은 데이터 화일의 세트를 전달하기 위한 스케줄링 매트릭스를 기초로 하는 전달 매트릭스를 발생시키는데 적용된다.
주문형 데이터 시스템은 제 1 세트의 채널 서버, 제 1 세트의 채널 서버를 제어하기 위한 중앙 제어 서버, 제 1 세트의 채널 서버에 커플링된 제 1 세트의 업-컨버터, 제 1 세트의 업-컨버터에 커플링된 콤바이너/증폭기, 및 전송 매체를 거쳐 데이터를 전송하는데 적응되는 콤바이너/증폭기를 포함한다. 예시적인 실시예에서, 데이터 주문형 시스템은 시스템을 모니터링하는 채널 모니터링 모듈, 스위치 매트릭스, 제 2 세트의 채널 서버, 및 제 2 세트의 업-컨버터를 포함한다. 채널 모니터링 모듈은 시스템 고장이 발생할 때 중앙 제어 서버에 통지하도록 구성된다. 중앙 제어 서버는, 채널 모니터링 모듈로부터의 통지에 응답하여, 제 1 세트의 채널 서버의 결함있는 채널 서버와 제 2 세트의 채널 서버의 채널 서버 그리고 제 1세트의 업-컨버터의 결함있는 업-컨버터와 제 2 세트의 업-컨버터의 업-컨버터를 교체하도록 매트릭스 스위치에 지시한다.
주문형 데이터 서비스를 제공하기 위한 방법은 데이터 화일의 전달 매트릭스를 계산하는 단계, 전달 매트릭스에 따른 데이터 화일을 전달하는 단계를 포함하므로, 다수의 클라이언트는 주문형 데이터 화일을 시청할 수 있다. 일실시예에서, 데이터 화일은 비디오 화일을 포함한다.
본 발명은 일반적으로 주문형 데이터 시스템에 관한 것이다. 특히, 본 발명은 주문형 비디오 시스템에 관한 것이다.
도 1A는 발명의 실시예에 따른 예시적인 DOD 시스템을 도시한다.
도 1B는 발명의 다른 실시예에 따른 예시적인 DOD 시스템을 도시한다.
도 2는 발명의 실시예에 따른 예시적인 채널 서버를 도시한다.
도 3은 발명의 실시예에 따른 예시적인 셋-톱 박스를 도시한다.
도 4는 발명의 실시예에 따른 스케줄링 매트릭스를 발생시키는 예시적인 프로세스를 도시한다.
도 1A는 발명의 실시예에 따른 예시적인 DOD 시스템(100)을 도시한다. 본 실시예에서, DOD 시스템(100)은 주문형 데이터 화일, 이를 테면 비디오 화일을 제공한다. 그러나, DOD 시스템(100)은 주문형 데이터 화일을 제공하는 것으로 제한되지 않으며 다른 주문형 데이터 화일, 예를 들면 게임 화일을 또한 제공할 수 있다. DOD 시스템(100)은 중앙 제어 서버(102), 중앙 저장부(103), 복수의 채널 서버(104a-104n), 복수의 업-컨버터(106a-106n), 및 콤바이너/증폭기(108)를 포함한다. 중앙 제어 서버(102)는 채널 서버(104)들을 제어한다. 중앙 저장부(103)는 데이터 화일을 디지털 포맷으로 저장한다. 예시적인 실시예에서, 중앙 저장부(103)에 저장된 데이터 화일들은 네트워크에 연결된 권한있는 컴퓨터, 이를 테면 중앙 제어 서버(102)에 의해 표준 네트워크 인터페이스(예를 들면, 에더넷 연결)을 통하여 액세스가능하다. 각 채널 서버(104)는 채널에 할당되며 업-컨버터(106)에 커플링된다. 채널 서버(104)들은 중앙 제어 서버(102)로부터의 지시에 따라 중앙 저장부(103)로부터 수신된 데이터 화일을 제공한다. 각 채널 서버(104)의 출력은 해당 업-컨버터(106)에 적합한 주파수를 갖는 구형 진폭 변조(QAM) 변조된 중간 주파수(IF) 신호이다. QAM-변조 IF 신호들은 채용되는 표준에 좌우한다. 미국에서의 현재 채용 표준은 DOCSIS(data-over-cable-system-interface-specification)이며, 이는 대략 43.75MHz IF 주파수를 요한다. 업-컨버터(106)는 채널 서버(104)로부터 수신된 IF 신호들을 무선 주파수 신호(RF 신호)로 변환시킨다. RF 신호들은, 주파수와 대역폭을 포함하며, 요구되는 채널과 채택된 표준에 따라 좌우한다. 예를 들면, 케이블 텔레비젼 채널(80)에 대해 미국에서의 현재 표준하에서, RF 신호는 대략 559.25MHz의 주파수와 대략 6MHz의 대역폭을 갖는다. 업-컨버터(106)의 출력은 콤바이너/증폭기(108)에 적용된다. 콤바이너/증폭기(108)는 수신된 RF 신호들을 증폭, 조절, 및 결합시키고 그후 상기 신호를 전송 매체(110)로 출력한다.
예시적인 실시예에서, 중앙 제어 서버(102)는 그래픽 유저 인터페이스(도시되지 않음)를 포함하며, 서비스 제공자가 끌어놓기(drag-and-drop) 연산에 의해 데이터 전달을 스케줄링할 수 있게 한다. 게다가, 중앙 제어 서버(102)는 채널서버(104)를 인증 및 제어하여 전달 매트릭스에 따라 시작하거나 정지시킨다. 예시적인 실시예에서, 중앙 제어 서버(102)는 자동적으로 채널을 선택하고 데이터 화일을 선택된 채널에 전송하기 위한 전달 매트릭스를 계산한다. 중앙 제어 서버(102)는 데이터 화일 정보(예를 들면, 지속 기간, 카테고리, 레이팅 및/또는 간략한 설명)의 오프라인 부가, 삭제, 갱신을 제공한다. 게다가, 중앙 제어 서버(102)는 저장부에 저장된 데이터베이스와 데이터 화일을 갱신함으로서 상기 중앙 저장부(103)를 제어한다.
예시적인 실시예에서, 기존 케이블 텔레비젼 시스템(120)은 비-DOD 서비스를 클라이언트에게 제공하기 위해서 콤바이너/증폭기(108)로 신호들을 계속 공급한다. 그러므로, 발명에 따른 DOD 시스템(100)은 현재의 케이블 텔레비젼 서비스를 두절시키지 않는다.
도 1B는 발명에 따른 DOD 시스템(100)의 다른 예시적인 실시예를 도시한다. 도 1A에 도시된 엘리먼트 외에, DOD 시스템(100)은 스위치 매트릭스(112), 채널 모니터링 모듈(114), 백업 채널 서버 세트(116a-116b), 및 백업 업-컨버터 세트(118a-118b)를 포함한다. 일실시예에서, 스위치 매트릭스(112)는 업-컨버터(106)와 콤바이너/증폭기(108) 사이에 물리적으로 위치된다. 스위치 매트릭스(112)는 중앙 제어 서버(102)에 의해 제어된다. 채널 모니터링 모듈(114)은 DOD 시스템(100)의 건전상태(health)를 모니터링하기 위해 복수 구성의 셋-톱 박스를 포함하며, 이는 잠재적인 클라이언트를 모의실험한다. 모니터링 결과는 채널 모니터링 모듈(114)에 의해 중앙 제어 서버(102)로 교신된다. 채널 고장(즉, 채널 서버 고장, 업-컨버터 고장, 또는 통신 링크 고장)의 경우에, 중앙 제어 서버(102)는 스위치 매트릭스(112)를 통하여 고장난 구성요소를 연결 해제하고 건전한 백업 구성요소(116 및/또는 118)에 연결하여 서비스를 재개한다.
예시적인 실시예에서, DOD 시스템(100)으로부터 방송되는 데이터 화일들은 동영상 전문가 그룹(MPEG) 화일에 포함된다. 각 MPEG 화일은 시간축에 따라 데이터 화일의 특정 부분으로 맵핑하는 데이터 블럭 및 서브-블럭들로 동적으로 분할된다. 이러한 데이터 블럭과 서브-블럭들은 중앙 제어 서버(102)에 의해 제공된 3차원 전달 매트릭스에 따라 소정의 시간동안 전달된다. 피드백 채널은 DOD 서비스를 제공하는 DOD 시스템(100)에 필요는 없다. 그러나, 피드백 채널이 이용가능하다면, 피드백 채널은 인터넷 서비스를 빌링(billing) 또는 제공하는 것과 같은 다른 목적을 위해 사용될 수 있다.
도 2는 발명의 실시예에 따른 예시적인 채널 서버(104)를 도시한다. 상기 채널 서버(104)는 서버 제어기(202), CPU(204), QAM 변조기(206), 로컬 메모리(208), 및 네트워크 인터페이스(210)를 포함한다. 서버 제어기(202)는 데이터 화일을 블럭으로 분할하며, 중앙 제어 서버(102)에 의해 제공된 전달 매트릭스에 따른 전송을 위해 데이터 블럭을 선택하며, 선택된 데이터를 인코딩하며, 인코딩된 데이터를 압축하고, 그후 압축된 데이터를 QAM 변조기(206)로 전달하도록 CPU(204)에 지시함으로써 채널 서버(104)의 전반적인 작동을 제어한다. QAM 변조기(206)는 버스(즉, PCI, CPU 로컬 버스) 또는 에더넷 연결을 통하여 전송된 데이터를 수신한다. 예시적인 실시예에서, QAM 변조기(206)는 다운 스트림 QAM 변조기, 포워드 에러 정정디코더를 지닌 업스트림 구형 진폭 변조/구형 위상 편이 키이(QAM/QPSK) 버스트 변조기, 및/또는 업스트림 튜너를 포함한다. QAM 변조기(206)의 출력은 업-컨버터(106)에 직접 적용되는 IF 신호이다.
네트워크 인터페이스(210)는 채널 서버(104)를 다른 채널 서버(104)에 그리고 중앙 제어 서버(102)에 연결하여 중앙 제어 서버(102)로부터의 스케줄링 및 제어 지시를 수행하며, 상태를 중앙 제어 서버(102)로 통지하고, 중앙 저장부(103)로부터 데이터 화일을 수신한다. 중앙 저장부(103)로부터 회수된 임의의 데이터 화일은 데이터 화일이 서버 제어기(202)로부터의 지시에 따라 처리되기 전에 채널 서버(104)의 로컬 메모리(208)에 저장될 수 있다. 예시적인 실시예에서, 채널 서버(104)는 케이블 채널(예를 들면, 6, 6.5, 또는 8MHz), QAM 변조(예를 들면, QAM 64 또는 QAM 256), 및 DOD 데이터 스트림의 압축 표준/비트 레이트(즉, MPEG-1 또는 MPEG-2)의 대역폭에 따라 1개 이상의 DOD 데이터 스트림을 전달한다.
도 3은 발명의 실시예에 따른 예시적인 셋-톱 박스(STB)(300)를 도시한다. STB(300)는 QAM 복조기(302), CPU(304), 조건부 액세스 모듈(306)(예를 들면, 스마트 카드 시스템), 로컬 메모리(308), 버퍼 메모리(309), STB 제어기(310), 디코더(312), 및 그래픽 오버레이 모듈(314)을 포함한다. STB 제어기(310)는 클라이언트의 요청에 응답하여 데이터를 선택하며, 선택된 데이터를 디코딩하며, 디코딩된 데이터를 압축 해제하며, 디코딩된 데이터를 재조립하며, 디코딩된 데이터를 로컬 메모리(308) 또는 버퍼 메모리(309)에 저장하고, 저장된 데이터를 디코더(312)로 전달하기 위해 CPU(304)와 QAM 복조기(302)를 제어함으로써STB(300)의 전반적인 작동을 제어한다. 예시적인 실시예에서, STB 제어기(310)는 전송 매체(110)으로부터 수신된 데이터 패킷에서 데이터 패킷 헤더를 기초로 하여 STB(300)의 전반적인 작동을 제어한다. 예시적인 실시예에서, 로컬 메모리(308)는 비-휘발성 메모리(예를 들면, 하드 드라이브)를 포함하며 버퍼 메모리(309)는 휘발성 메모리를 포함한다.
일실시예에서, QAM 복조기(302)는 전송기 및 수신기 모듈과 1개 이상의 하기사항: 개인 암호/해독 모듈, 포워드 에러 정정 디코더/인코더, 튜너 제어, 다운스트림 및 업스트림 프로세서, CPU 및 메모리 인터페이스 회로를 포함한다. QAM 복조기(302)는 변조된 IF 신호들을 수신하며, 상기 신호들을 샘플링 및 복조하여 데이터를 저장한다.
조건부 액세스 모듈(306)은 액세스가 허여될 때 인증 이후 및/또는 적절한 비용이 지불되었을 때 디코딩 프로세스를 허용한다. 액세스 조건은 서비스 제공자에 의해 결정된다.
예시적인 실시예에서, 액세스가 허여될 때, 디코더(312)는 적어도 하나의 데이터 블럭을 디코딩하여 데이터 블럭을 출력 스크린상에 디스플레이가능한 이미지로 전송한다. 상기 디코더(312)는 가입한 클라이언트로부터의 명령, 이를 테면 재생(play), 중단, 중지, 스텝(step), 되감기, 포워드 등을 유지시킨다.
그래픽 오버레이 모듈(314)은 예를 들면 알파 블렌딩 또는 화면 속의 화면(picture-in-picture) 특성을 제공함으로써 디스플레이된 그래픽 품질을 향상시킨다. 예시적인 실시예에서, 그래픽 오버레이 모듈(314)은 게임 플레이 모드중에, 예를 들면, 서비스 제공자가 발명에 따른 시스템을 사용하여 주문형 게임 서비스를 제공할 때, 그래픽 가속을 위해 사용될 수 있다.
예시적인 실시예에서, 데이터 화일들은 모든 케이블 텔레비젼 가입자에게 방송되지만, 호환성 STB(300)를 갖춘 DOD 가입자만이 주문형 데이터 서비스를 디코딩 및 즐길 수 있다. 예시적인 실시예에서, 주문형 데이터 화일의 획득에 대한 허용은 조건부 액세스 제어 모듈(306)에서 스마트 카드 시스템을 거쳐 획득될 수 있다. 스마트 카드는 서비스 제공자에 의해 설치된 자동 판매기 또는 지역 편의점에서 재충전가능하다. 다른 예시적인 실시예에서, 균일 비용 시스템(flat fee system)은 가입자에게 모든 이용가능한 데이터 화일로의 무제한적 액세스를 제공한다.
예시적인 실시예에서, 주문형 데이터 인터액티브 특색은 클라이언트가 임의의 시간에 이용가능한 데이터 화일을 선택하는 것을 허용한다. 클라이언트가 선택 버튼을 누르고 그 선택된 데이터 화일이 재생(play)를 시작하는 시간 사이의 시간량은 응답 시간으로서 언급된다. 더 많은 자원이 DOD 서비스를 제공하도록 할당되면(예를 들면, 대역폭, 서버 성능), 상기 응답 시간은 더 짧아진다. 예시적인 실시예에서, 응답 시간은 자원 할당의 평가와 서비스의 요구되는 품질을 기초로 하여 결정될 수 있다.
예시적인 실시예에서, 선택된 응답 시간은 시간 슬롯의 지속 시간을 결정한다. 시간 슬롯(TS)의 지속시간은 클라이언트에 의해 정규 속도로 데이터 블럭을 재생(play)하는 시간 간격이다. 예시적인 실시예에서, 데이터 화일, 이를 테면 비디오 화일은 각각의 데이터 블럭이 시간 슬롯의 지속시간동안 데이터 화일의 재생을유지시킬 수 있도록 수많은 데이터 블럭으로 분할된다.
일실시예에서, 각 데이터 화일에 대한 데이터 블럭의 개수(NUM_OF_BLKS)는 다음과 같이 계산될 수 있다:
Estimated_BLK_Size=(DataFile_Size*TS)/DataFile_length(1)
BLK_SIZE=(Estimated BLK Size+CLUSTER_SIZE-1Byte)/CLUSTER_SIZE(2)
BLK_SIZE_BYTES=BLK_SIZE*CLUSTER_SIZE(3)
NUM_OF_BLKS=(DataFile_Size+BLK_SIZE_BYTES-1Bytes)/BLK_SIZE_BYTES(4)
방정식 (1) 내지 (4)에서, Estimated_BLK_Size는 예측되는 블럭 사이즈(바이트)이며; DataFile_Size는 데이터 화일 사이즈(바이트)이며; TS는 시간 슬롯의 지속시간(초)를 나타내며; DataFile_Length는 데이터 화일의 지속시간(초)이며; BLK SIZE는 각 데이터 블럭에 대해 필요한 클러스터의 개수이며; CLUSTER_SIZE는 각 채널 서버(104)용 로컬 메모리(208)에서 클러스터의 사이즈이며(예를 들면, 64KByte); BLK_SIZE_BYTES는 바이트의 블럭사이즈이다. 본 실시예에서, 블럭의 개수(NUM_OF_BLKS)는 데이터 화일 사이즈(바이트)와 데이터 블럭 사이트(바이트)을 합에서 1바이트를 빼고 데이터 블럭 사이즈(바이트)로 나눈것과 같다. 방정식 (1) 내지 (4)는 하나의 특정 실시예를 도시한다. 당 기술분야의 당업자는 데이터 화일에 대한 데이터 블럭의 개수를 계산하는데 다른 방법들이 이용가능함을 인식할 수 있다. 예를 들면, 데이터 화일을 데이터 블럭의 개수로 나누는 것은 본질적으로 예측된 블럭 사이즈와 채널(104)용 로컬 메모리(208)의 클러스터 사이즈의 함수이다. 그러므로, 발명은 상기된 특정 실시예로 제한되지 않는다.
도 4는 발명의 실시예에 따라 데이터 화일을 전달하기 위한 스케줄링 매트릭스를 발생시키는 예시적인 프로세스를 도시하며, 본 발명은 서버측에서 데이터 전달을 압축 및 스케줄링하기 위해서 시간 분할 멀티플렉싱(TDM)과 주파수 분할 멀티플렉싱(FDM) 기술을 사용한다. 예시적인 실시예에서, 스케줄링 매트릭스는 각 데이터 화일에 대해 발생된다. 일실시예에서, 각 데이터 화일은 수많은 데이터 블럭으로 분할되며 스케줄링 매트릭스는 데이터 블럭의 개수를 기초로 하여 발생된다. 통상, 스케줄링 매트릭스는 데이터 화일의 데이터 블럭을 서버에서 클라이언트로 전달하기 위한 전달 순서를 제공함으로써, 데이터 블럭들은 임의의 시간에 상기 데이터 화일에 액세스하기 희망하는 임의의 클라이언트에 의해 순차적인 순서로 액세스 가능하다.
단계 402에서, 데이터 화일에 대한 수많은 데이터 블럭(x)이 수신된다. 제 1 변수(j)가 제로로 설정된다(단계 404). 레퍼런스 어레이가 클리어된다(단계 406). 레퍼런스 어레이는 내부 처리 목적을 위해 데이터 블럭의 트랙을 유지시킨다. 다음, j는 x와 비교된다(단계 408). j가 x보다 작다면, 제 2 변수(i)가 제로로 설정된다(단계 412). 다음, i가 x와 비교된다(단계 414). 만일 i가 x보다 작다면, 스케줄링 매트릭스의 행[(i+j) 모듈 (x)]에 저장된 데이터 블럭들이 레퍼런스 어레이로 기록된다(단계 418). 만일 레퍼런스 어레이가 이미 그러한 데이터 블럭(들)을 갖고 있다면, 이중 사본을 기록하지 않는다. 처음에, 스케줄링 매트릭스는 엔트리를 아직 갖고 있지 않으므로, 이러한 단계는 스킵된다. 다음, 레퍼런스 어레이가 데이터 블럭(i)를 포함하는지가 체크된다(단계 420). 처음에, 레퍼런스 어레이의 모든 엔트리가 단계 406에서 클리어되었으므로, 레퍼런스 어레이에 어떠한 것도 남아 있지 않다. 레퍼런스 어레이가 데이터 블럭(i)을 포함하지 않는다면, 데이터 블럭(i)은 매트릭스 위치[(i+j) 모듈(x), j]에서 스케줄링 매트릭스와 레퍼런스 어레이로 부가된다(단계 422). 데이터 블럭(i)이 스케줄링 매트릭스에 부가된 이후 레퍼런스 어레이(i)는 i=i+1이 되도록 1씩 증분되며(단계 424), 그후 프로세스는 i=x일 때 까지 단계 414를 반복한다. 만일 레퍼런스 어레이가 데이터 블럭(i)를 포함한다면, i는 i=i+1이도록 1씩 증분되며(단계 424), 그후 프로세스는 i=x일 때 까지 단계 414를 반복한다. i=j일 때, j는 j=j+1이도록 1씩 증분되며 프로세스는 j=x일 때 까지 단계 406을 반복한다. 전체적인 프로세스는 j=x일 때 종료한다(단계 410).
예시적인 실시예에서, 데이터 화일이 6개 데이터 블럭으로 분할되면(x=6), 스케줄링 매트릭스와 레퍼런스 어레이는 다음과 같다:
스케줄링 매트릭스(SM)
| TS | TS1 | TS2 | TS3 | TS4 | TS5 |
| [0,0] blk0 | [1,0] blk1 | [2,0] blk2 | [3,0] blk3 | [4,0] blk4 | [5,0] blk5 |
| [0,1] | [1,1] blk0 | [2,1] | [3,1] | [4,1] | [5,0] |
| [0,2] | [1,2] | [2,2] blk0 | [3,2] blk1 | [4,2] | [5,1] |
| [0,3] | [1,3] | [2,3] | [3,3] blk0 | [4,3] | [5,2] blk2 |
| [0,4] | [1,4] blk3 | [2,4] | [3,4] | [4,4] blk0 | [5,3] blk1 |
| [0,5] | [1,5] | [2,5] | [3,5] blk4 | [4,5] | [5,4] blk0 |
레퍼런스 어레이(RA)
| space0 | space1 | space2 | space3 | space4 | space5 | |
| TS0 | blk0 | blk1 | blk2 | blk3 | blk4 | blk5 |
| TS1 | blk1 | blk0 | blk2 | blk3 | blk4 | blk5 |
| TS2 | blk2 | blk0 | blk3 | blk1 | blk4 | blk5 |
| TS3 | blk3 | blk1 | blk0 | blk4 | blk5 | blk2 |
| TS4 | blk4 | blk0 | blk5 | blk2 | blk1 | blk3 |
| TS5 | blk5 | blk2 | blk1 | blk0 | blk3 | blk4 |
본 출원에 첨부된 부록 A는 상기 스케줄링 매트릭스와 레퍼런스 어레이를 발생시키기 위해서 도 4에 도시된 예시적인 프로세스의 점진적인 프로세스를 기술한다. 본 예시적인 실시예에서, 상기 스케줄링 매트릭스를 기초로 하여, 데이터 화일의 6개 데이터 블럭들은 하기 시퀀스로 전달된다:
다른 예시적인 실시예에서, 룩-어헤드 프로세스는 예견되는 액세스 시간 이전에 데이터 화일의 데이터 블럭의 소정의 개수를 전달하기 위한 룩-어헤드 스케줄링 매트릭스를 계산하는데 사용될 수 있다. 예를 들면, 소정의 룩-어헤드 시간이 1개 시간 슬롯의 지속시간이라면, 시간 슬롯 번호 4보다 더 크거나 같은 임의의 시간에 대해, 데이터 화일의 데이터 블럭(blk4)은 TS3에서 또는 이전에 가입한 클라이언트에서 STB(300)에 의해 수신되어야 하지만, blk4는 TS4때 까지 플레이 되지 않는다. 룩-어헤드 스케줄링 매트릭스를 발생시키기 위한 프로세스 단계들은 룩-어헤드 스케줄링 매트릭스가 본 실시예에서 룩-어헤드 시간을 기초로 하여 초기 전달 시퀀스를 스케줄링하는 것을 제외하고 도 4에 대해 상기된 프로세스 단계들과 대체로 유사하다. 데이터 화일이 6개 데이터 블럭으로 분할된다고 가정하면, 2개 시간 슬롯의 지속시간의 룩-어헤드 시간을 갖는 룩-어헤드 스케줄링 매트릭스를 기초로하는 예시적인 전달 시퀀스는 다음과 같이 나타날 수 있다:
데이터 화일의 세트를 전달하기 위한 3차원 전달 매트릭스는 데이터 화일 세트의 각 데이터 화일에 대한 스케줄링 매트릭스를 기초로 하여 발생된다. 3차원 전달 매트릭스에서, 데이터 호일 세트의 각 데이터 화일에 대한 IDs를 포함하는 3 차원이 발생된다. 3차원 전달 매트릭스는 다중 데이터 스트림을 전달하기 위해서 각 채널에 이용가능한 대역폭을 효율적으로 이용하도록 계산된다. 예시적인 실시예에서, 당 기술분야에 공지된 회선형법(convolution method)은 데이터 화일 세트의 효율적인 전달을 스케줄링하기 위해서 3차원 전달 매트릭스를 발생시키는데 사용된다. 예를 들면, 회선형법은 하기 정책(policy)들을 포함한다: (1)임의의 시간 슬롯(TS)의 지속시간에 전달된 데이터 블럭들의 총 개수는 최소 가능 개수로 유지되어야 한다; 그리고 (2)만일 다양한 부분적 해결책들이 정책(1)에 관하여 이용가능하다면, 바람직한 해결책은 임의의 기준 시간 슬롯의 지속시간동안 전달된 데이터 블럭, 선행 시간 슬롯(기준 시간 슬롯에 관하여)의 지속시간동안 전달된 데이터 블럭, 및 다음 시간 슬롯(기준 시간 슬롯에 관하여)의 지속시간동안 전달된 데이터 블럭을 부가함으로써 최소 합계의 데이터 블럭들을 갖는 정책이다. 예를 들면, 예시적인 실시예는 각 데이터 화일이 6개 데이터 블럭으로 분할되는 2개의 짧은 데이터 화일을 전달한다고 가정하면, 스케줄링 매트릭스를 기초로하는 전달 시퀀스는 다음과 같다:
상기된 것처럼 예시적인 회선형법을 적용하면, 전달 매트릭스의 가능한 조합은 다음과 같다:
정책(1)을 적용하면, 옵션 2, 4, 및 6은 임의의 시간 슬롯동안 전달된 데이터 블럭의 가장작은 최대 개수(즉, 6개 데이터 블럭)를 갖는다. 정책(2)를 적용하면, 이러한 예시적인 실시예에서 최적의 전달 매트릭스는 옵션 4인데, 왜냐하면 옵션 4는 임의의 기준 시간의 데이터 블럭 더하기 이웃하는 시간 슬롯의 데이터 블럭의 최소 합계를 갖기 때문이다(즉, 16개 데이터 블럭). 그러므로, 이러한 실시예에 대해 가장 바람직하게, 데이터 화일(N)의 전달 시퀀스는 3개 시간 슬롯으로 시프트되어야 한다. 예시적인 실시예에서, 3차원 전달 매트릭스가 각 채널 서버(104)에 대해 발생된다. 각 데이터 화일에 대한 데이터 블럭들이 전달 매트릭스에 따라 전달될 때, 수많은 가입한 클라이언트들은 임의의 시간에 데이터 화일에 액세스할 수 있으며 데이터 화일의 적절한 데이터 블럭들이 각 가입한 클라이언트에 적시에 이용가능하게 된다. 상기된 예에서, 시간 슬롯의 지속시간이 5초라고 가정하면, DOD 시스템(100)은 하기 방식으로 최적의 전달 매트릭스(즉, 데이터 화일(N)의 시프트전달 시퀀스를 3개 시간 슬롯씩)에 따라 데이터 화일(M과 N)에 대한 데이터 블럭들을 전달한다:
만일 시간 00:00:00에서, 클라이언트 A가 영화 M을 선택하면, 클라이언트 A측의 STB(300)는 하기와 같이 데이터 블럭들을 수신, 저장, 재생, 및 거부한다:
만일 시간 00:00:10에서, 클라이언트 B가 영화 M을 선택하면, 클라이언트 B측의 STB(300)는 하기와 같이 데이터 블럭들을 수신, 저장, 재생, 및 거부한다:
만일 시간 00:00:15에서, 클라이언트 C가 영화 N을 선택하면, 클라이언트 C측의 STB(300)는 하기와 같이 데이터 블럭들을 수신, 저장, 재생, 및 거부한다:
만일 시간 00:00:30에서, 클라이언트 D가 영화 N을 선택하면, 클라이언트 D측의 STB(300)는 하기와 같이 데이터 블럭들을 수신, 저장, 재생, 및 거부한다:
상기 예에서 도시된 것처럼, 클라이언트들의 임의의 조합은 임의의 시간에서 독립적으로 서비스 제공자에 의해 제공되는 임의의 데이터 화일을 선택 및 재생을 시작할 수 있다.
일반 작동
서비스 제공자는 수많은 데이터 화일(예를 들면, 비디오 화일)을 방송하기 이전에 채널 서버(104)로 전달하도록 스케줄링할 수 있다. 중앙 제어 서버(102)는 3차원 전달 매트릭스(ID, 시간 슬롯, 및 데이터 블럭 전달 순서)를 계산 및 채널 서버(104)로 전달한다. 방송중에, 채널 서버(104)는 적절한 순서로 적절한 데이터 블럭들을 전달하기 위해서 3차원 전달 매트릭스를 고려한다. 각 데이터 화일은 수많은 가입한 클라이언트들이 임의의 시간에 지속적으로 그리고 순차적으로 데이터 화일을 개별적으로 시청할 수 있도록 데이터 블럭들로 분할된다. 데이터 화일의 데이터 블럭 사이즈는 선택된 시간 슬롯의 지속시간과 데이터 화일의 데이터 스트림의 비트 레이트에 좌우한다. 예를 들면, 일정한 비트 레이트 MPEG 데이터 스트림에서, 각 데이터 블럭은 고정 사이즈의: Block Size(MBytes)=BitRate(Mb/s) x TS(sec) / 8 (1)을 갖는다.
예시적인 실시예에서, 데이터 블럭 사이즈는 채널 서버(104)의 로컬 메모리(208)에서 메모리 클러스터 사이즈의 다음 높은 배수로 조절된다. 예를 들면, 만일 계산된 데이터 블럭 길이가 상기 식(1)에 따라 720Kbytes라면, 그후 로컬 메모리(208)의 클러스터 사이즈가 64Kbytes라면 결과적인 데이터 블럭 길이는 768Kbytes여야 한다. 본 실시예에서, 데이터 블럭들은 클러스터 사이즈처럼 동일 사이즈를 각각 갖는 서브-블럭들의 배수로 더 분할되어야 한다.
서브-블럭은 데이터 패킷으로 더 나누워질 수 있다. 각 데이터 패킷은 패킷 헤더와 패킷 데이터를 포함한다. 패킷 데이터 길이는 각 채널 서버의 CPU가 데이터를 전달하는 물리적 계층의 최대 운반 유니트(MTU)에 좌우한다. 바람직한 실시예에서, 패킷 헤드와 패킷 데이터의 총 사이즈는 MTU보다 작다. 그러나, 최대 효율을 위해, 패킷 데이터 길이는 가능한 한 길어야 한다.
예시적인 실시예에서, 패킷 헤더의 데이터는 가입자 클라이언트의 STB(300)가 수신된 데이터를 디코딩하고 데이터 패킷이 선택된 데이터 화일에 관련이 있는지를 결정하도록 허용하는 정보(예를 들면, 프로토콜 서명, 버전, ID, 또는 패킷유형 정보)를 포함한다. 패킷 헤더는 또한 다른 정보, 이를 테면 블럭/서브-블럭/패킷 번호, 패킷 길이, 서브-블럭의 주기적 중복 검사(CRC)와 오프셋, 및/또는 인코딩 정보를 포함할 수 있다.
채널 서버(104)에 의해 수신되면, 데이터 패킷들은 QAM 변조기(206)로 전달되며 다른 헤더는 QAM 변조 IF 출력 신호를 발생시키도록 데이터 패킷으로 부가된다. QAM 변조기(206)에 대한 최대 비트 레이트 출력은 이용가능 대역폭에 좌우한다. 예를 들면, 6MHz 대역폭을 지닌 QAM 변조기(206)에 대해, 최대 비트 레이트는 5.05(bit/symbol) x 6(MHz) = 30.3Mbit/sec이다.
QAM 변조 IF 신호들은 업-컨버터(106)로 전달되어 특정 채널(예를 들면, CATV 채널(80)에 대해, 559.250MHz와 6MHz 대역폭)에 적합한 RF 신호로 변환된다. 예를 들면, 케이블 네트워크가 높은 대역폭(또는 비트 레이트)를 갖는다면, 각 채널은 실제 서브-채널을 점유하는 1개 이상의 데이터 스트림을 제공하는데 사용될 수 있다. 예를 들면, 3개의 MPEG1 데이터 스트림은 QAM 변조를 사용하여 6MHz 채널에 적합할 수 있다. 업-컨버터(106)의 출력이 콤바이너/증폭기(108)에 적용되며, 이는 결합된 신호를 전송 매체(110)로 전달한다.
예시적인 실시예에서, "N" 데이터 스트림을 전송하기 위한 총 시스템 대역폭(BW)은 BW=N x bw이며, bw는 데이터 스트림 당 요구되는 대역폭이다. 예를 들면, 3개의 MPEG1 데이터 스트림은 30.3Mbits/sec의 시스템 대역폭을 갖는 DOCSIS 케이블 채널에 의해 동시에 전송될 수 있는데, 왜냐하면 각 MPEG-1 데이터 스트림은 시스템 대역폭중 9Mbits/sec을 점유하기 때문이다.
통상, 대역폭은 DOD 서비스를 실제로 액세스하는 가입한 클라이언트의 수에 관계없이 소모된다. 그러므로, 어떠한 가입한 클라이언트도 DOD 서비스를 사용하고 있지 않아도, 대역폭은 시스템의 주문시 성능을 보장하기 위해서 여전히 소모된다.
STB(300)는, 일단 턴 온되면, STB(300)의 로컬 메모리(308)에 저장된 프로그램 가이드를 지속적으로 수신 및 갱신한다. 예시적인 실시예에서, STB(300)는 최신 프로그램 가이드를 포함하는 데이터 화일 정보를 TV 스크린상에 디스플레이 시킨다. 데이터 화일 정보, 이를 테면 비디오 화일 정보는 영화ID, 영화 제목, 설명(다국 언어), 카테고리(예를 들면, 액션, 어린이), 레이팅(예를 들면, R, PG13), 케이블 회사 정책(예를 들면, 가격, 무료 예고편 길이), 가입 기간, 영화 포스터, 및 영화 예고편을 포함한다. 다른 예시적인 실시예에서, 정보는 다른 데이터 스트림에 의해 공유되는 물리적 채널로 전달된다.
가입한 클라이언트는 텔레비젼 스크린상에 디스플레이된 카테고리에 의해 배열된 이용가능한 데이터 화일의 목록을 볼 수 있다. 클라이언트가 이용가능한 데이터 화일들중 하나를 선택할 때, STB(300)는 해당 물리적 채널 및/또는 실제 서브-채널로 맞추도록 그 하드웨어를 제어하여 그 데이터 화일에 대한 데이터 패킷을 수신하기 시작한다. STB(300)는 모든 데이터 패킷 헤더를 시험하며, 데이터 패킷의 데이터를 디코딩하고, 수신된 데이터 패킷이 유지되어야 하는 지를 결정한다. 데이터 패킷이 유지되지 말아야 한다고 STB(300)가 결정하면, 상기 데이터 패킷은 버려진다. 그렇지 않다면, 패킷 데이터는 나중 회수를 위해 로컬 메모리(308)에 저장되거나 디코더(312)로 전달될 때 까지 버퍼 메모리(309)에 임시적으로 저장된다.
로컬 메모리(308)로의 빈번한 판독/기록을 회피함으로써 성능 효율성을 개선시키기 위해서, 예시적인 실시예에서, STB(300)는 "슬라이딩 윈도우" 예지 기술을 사용하여 가능한 한 언제나 예지된 데이터 블럭들을 버퍼 메모리(309)에 락(lock)시킨다. 예지 윈도우에서 충돌이 발생하면, 데이터 블럭들이 메모리 버퍼(309)에서직접 디코더(312)로 전달된다. 만일 예지 누락(miss)이 발생하면, 데이터 블럭들은 상기 데이터 블럭들이 메모리 버퍼(309)로부터 디코더(312)로 전달되기 이전에 로컬 메모리(308)로부터 메모리 버퍼(309)로 판독된다.
예시적인 실시예에서, STB(300)는 단계를 중지, 느린 동작 재생(play), 되감기, 줌(zoom) 및 싱글(single)하는 버튼을 포함하는 적외선(IR) 원격 제어 유니트 버튼, IR 키보드, 또는 전면 패널 누름버튼을 거쳐 가입한 클라이언트의 명령에 응답한다. 예시적인 실시예에서, 가입한 클라이언트가 소정의 시간 주기동안 어떠한 동작(예를 들면, 프로그램 메뉴를 스크롤하거나 카테고리 또는 영화를 선택하는 것)도 입력하지 않는다면, 스케줄링된 상업방송이 자동적으로 재생(play)된다. 스케줄링된 상업방송은 가입한 클라이언트가 동작(원격 제어 유니트로 버튼을 누름)을 제공할 때 자동적으로 정지된다. 다른 예시적인 실시예에서, STB(300)는 비디오가 재생되고 있는 동안 자동적으로 상업방송을 삽입시킬 수 있다. 서비스 제공자(예를 들면, 케이블 회사)는 상업방송이 얼마나 종종 비디오가 재생되는 것을 인터럽트함을 지시하는 것을 가격 정책으로 설정할 수 있다.
긴급 정보 비트가 데이터 패킷 헤더에서 발견되면, STB(300)는 임의의 데이터 수신 작동을 중지하고 데이터 화일 정보를 수신하기 위해 유보된 채널로 맞추도록 그 하드웨어를 제어하여 임의의 긴급 정보가 출력 스크린상에 디스플레이되도록 획득 및 디코딩한다. 예시적인 실시예에서, STB(300)가 아이들(idle)될 때, 데이터 화일 정보를 수신하기 위해 유보된 채널로 맞춰지며 딜레이없이 임의의 긴급 정보를 수신 및 디스플레이하도록 준비된다.
전술한 예들은 다른 실시예, 변형, 및 수정이 당 기술분야의 당업자에게 명백할 수 있는 발명의 일부 예시적인 실시예들을 도시하고 있다. 따라서, 본 발명은 상기된 특정 실시예로 제한되기 보다는, 하기 청구범위로 규정된다.
[부록 A]
주문형 비디오 서비스를 방송 시스템에 제공하는 시스템 및 방법
하기는 6개 데이터 블럭을 갖는 데이터 화일에 대한 스케줄링 매트릭스를 발생시키기 위해 도 4에 도시된 예시적인 프로세스의 단계적인 설명이다:
시작
(단계 402) 데이터 화일에 대한 데이터 블럭의 개수(x)를 수신; 데이터 블럭의 개수가 6과 같다고 가정한다(x=6).
(단계 404) j=0 설정한다
(단계 406) 레퍼런스 어레이(RA)를 클리어한다
(단계 408) j와 x를 비교한다.
(단계 412) j가 x보다 작다면(0<6), i=0으로 한다
(단계 414) i와 x를 비교한다.
(단계 418) i가 x보다 작다(0<6). SM에서 행[0]의 매트릭스 위치를 판독하고 RA에 기록한다; 처음에, SM이 비어있으므로 어떤것도 RA에 기록되지 않는다.
(단계 420) RA가 데이터 블럭 i 또는 blk0을 포함하는가?
(단계 422) RA는 비어있으므로 어떤 것도 포함하지 않는다. blk0를 SM과 RA의 위치[0,0]로 기록한다.
(단계 424) 위치[1,0]에 대한 값을 도출하기 위해서 1을 i에 더한다(i=1). 단계 414로 돌아간다.
(단계 414) i와 x를 비교한다.
(단계 418) i는 x보다 작다(1<6). SM에서 행[1]의 매트릭스 위치를 판독하고 RA에 기록한다; 처음에, SM이 비어있으므로 어떤것도 RA에 기록되지 않는다.
(단계 420) RA가 데이터 블럭 i 또는 blk1을 포함하는가?
(단계 422) RA가 blk1을 포함하지 않는다. blk1을 SM과 RA의 위치[1,0]로 기록한다.
(단계 424) 위치[2,0]에 대한 값을 도출하기 위해서 1을 i에 더한다(i=2). 단계 414로 돌아간다.
(단계 414) i와 x를 비교한다.
(단계 418) i는 x보다 작다(2<6). SM에서 행[2]의 매트릭스 위치를 판독하고 RA에 기록한다; 처음에, SM이 비어있으므로 어떤것도 RA에 기록되지 않는다.
(단계 420) RA가 데이터 블럭 i 또는 blk2를 포함하는가?
(단계 422) RA가 blk2를 포함하지 않는다. blk2를 SM과 RA의 위치[2,0]로 기록한다.
(단계 424) 위치[3,0]에 대한 값을 도출하기 위해서 1을 i에 더한다(i=3). 단계 414로 돌아간다.
(단계 414) i와 x를 비교한다.
(단계 418) i는 x보다 작다(3<6). SM에서 행[3]의 매트릭스 위치를 판독하고 RA에 기록한다; 처음에, SM이 비어있으므로 어떤것도 RA에 기록되지 않는다.
(단계 420) RA가 데이터 블럭 i 또는 blk3을 포함하는가?
(단계 422) RA가 blk3을 포함하지 않는다. blk3을 SM과 RA의 위치[3,0]로 기록한다.
(단계 424) 위치[4,0]에 대한 값을 도출하기 위해서 1을 i에 더한다(i=4). 단계 414로 돌아간다.
(단계 414) i와 x를 비교한다.
(단계 418) i는 x보다 작다(4<6). SM에서 행[4]의 매트릭스 위치를 판독하고 RA에 기록한다; 처음에, SM이 비어있으므로 어떤것도 RA에 기록되지 않는다.
(단계 420) RA가 데이터 블럭 i 또는 blk4를 포함하는가?
(단계 422) RA가 blk4를 포함하지 않는다. blk4를 SM과 RA의 위치[4,0]로 기록한다.
(단계 424) 위치[5,0]에 대한 값을 도출하기 위해서 1을 i에 더한다(i=5). 단계 414로 돌아간다.
(단계 414) i와 x를 비교한다.
(단계 418) i는 x보다 작다(5<6). SM에서 행[5]의 매트릭스 위치를 판독하고 RA에 기록한다; 처음에, SM이 비어있으므로 어떤것도 RA에 기록되지 않는다.
(단계 420) RA가 데이터 블럭 i 또는 blk5를 포함하는가?
(단계 422) RA가 blk5를 포함하지 않는다. blk5를 SM과 RA의 위치[5,0]로 기록한다.
(단계 424) 1을 i에 더한다(i=6). 단계 414로 돌아간다.
(단계 414) i와 x를 비교한다.
(단계 416) i가 x와 같다(6=6). j를 1씩 증분시킨다. 단계 406으로 간다.
----------------------------------------------------------------------
(단계 406) 레퍼런스 어레이(RA)를 클리어시킨다.
(단계 408) j와 x를 비교한다.
(단계 412) j가 x보다 작다면(1<6), i=0으로 한다.
(단계 414) i와 x를 비교한다.
(단계 418) i가 x보다 작다(0<6). SM에서 행[1]의 매트릭스 위치를 판독하고 RA에 기록한다. 위치[1,0]는 blk1을 포함한다; 그러므로, blk1이 RA에 기록된다. 모든 다른 위치들은 비어있다.
(단계 420) RA가 데이터 블럭 i 또는 blk0을 포함하는가?
(단계 422) RA는 blk0을 포함하지 않는다. blk0을 SM과 RA의 위치[1,1]로 기록한다. RA는 지금 blk1과 blk0를 갖고 있다.
(단계 424) 위치[2.1]에 대한 값을 도출하기 위해서 1을 i에 더한다(i=1). 단계 414로 돌아간다.
(단계 414) i와 x를 비교한다.
(단계 418) i가 x보다 작다(1<6). SM에서 행[2]의 매트릭스 위치를 판독하고 RA에 기록한다. 위치[2,0]은 blk2를 포함한다. 모든 다른 위치들은 비어있다. RA는 지금 blk1, blk0, 및 blk2를 갖고 있다.
(단계 420) RA가 데이터 블럭 i 또는 blk1을 포함하는가?
(단계 424) RA는 blk1을 포함한다. 그러므로, 어떤것도 위치[2,1]에 기록되지 않는다. 위치[3,1]에 대한 값을 도출하기 위해서 1을 i에 더한다(i=3). 단계414로 돌아간다.
(단계 414) i와 x를 비교한다.
(단계 418) i가 x보다 작다(2<6). SM에서 행[3]의 매트릭스 위치를 판독하고 RA에 기록한다. 위치[3,0]은 blk3을 포함한다. 모든 다른 위치들은 비어있다. RA는 지금 blk1, blk0, blk2, 및 blk3를 갖고 있다.
(단계 420) RA가 데이터 블럭 i 또는 blk2를 포함하는가?
(단계 424) RA는 blk2를 포함한다. 그러므로, 어떤것도 위치[3,1]에 기록되지 않는다. 위치[4,1]에 대한 값을 도출하기 위해서 1을 i에 더한다(i=4). 단계 414로 돌아간다.
(단계 414) i와 x를 비교한다.
(단계 418) i가 x보다 작다(3<6). SM에서 행[4]의 매트릭스 위치를 판독하고 RA에 기록한다. 위치[4,0]은 blk4를 포함한다. 모든 다른 위치들은 비어있다. RA는 지금 blk1, blk0, blk2, blk3, 및 blk4를 갖고 있다.
(단계 420) RA가 데이터 블럭 i 또는 blk3을 포함하는가?
(단계 424) RA는 blk3을 포함한다. 그러므로, 어떤것도 위치[4,1]에 기록되지 않는다. 위치[5,1]에 대한 값을 도출하기 위해서 1을 i에 더한다(i=5). 단계 414로 돌아간다.
(단계 414) i와 x를 비교한다.
(단계 418) i가 x보다 작다(4<6). SM에서 행[5]의 매트릭스 위치를 판독하고 RA에 기록한다. 위치[5,0]은 blk5를 포함한다. 모든 다른 위치들은 비어있다. RA는지금 blk1, blk0, blk2, blk3, blk4 및 blk5를 갖고 있다.
(단계 420) RA가 데이터 블럭 i 또는 blk4을 포함하는가?
(단계 424) RA는 blk4를 포함한다. 그러므로, 어떤것도 위치[4,1]에 기록되지 않는다. 위치[5,1]에 대한 값을 도출하기 위해서 1을 i에 더한다(i=5). 단계 414로 돌아간다.
(단계 414) i와 x를 비교한다.
(단계 418) i가 x보다 작다(5<6). SM에서 행[0]의 매트릭스 위치를 판독하고 RA에 기록한다. 위치[0,0]은 blk0을 포함한다. 모든 다른 위치들은 비어있다. RA는 이미 blk0을 포함한다; 그러므로 blk0은 버려진다.
(단계 420) RA가 데이터 블럭 i 또는 blk5을 포함하는가?
(단계 424) RA는 blk5를 포함한다. 그러므로, 어떤것도 위치[0,1]에 기록되지 않는다. 1을 i에 더한다(i=6). 단계 414로 돌아간다.
(단계 414) i와 x를 비교한다.
(단계 416) i는 x와 같다(6=6). j를 1씩 증분시킨다(j=2). 단계 406으로 간다.
-----------------------------------------------------------------------
(단계 406) 레퍼런스 어레이(RA)를 클리어한다.
(단계 408) j와 x를 비교한다.
(단계 412) j가 x보다 작다면(2<6), i=0으로 한다.
(단계 414) i와 x를 비교한다.
(단계 418) i가 x보다 작다(0<6). SM에서 행[2]의 매트릭스 위치를 판독하고 RA에 기록한다. 위치[2,0]는 blk2를 포함한다. 모든 다른 위치들은 비어있다. RA는 지금 blk2를 갖고 있다.
(단계 420) RA가 데이터 블럭 i 또는 blk0를 포함하는가?
(단계 422) RA는 blk0를 포함하지 않는다. blk0를 SM과 RA의 위치[2,2]로 기록한다. RA는 지금 blk2와 blk0를 갖고 있다.
(단계 424) 위치[3,2]에 대한 값을 도출하기 위해서 1을 i에 더한다(i=0). 단계 414로 돌아간다.
(단계 414) i와 x를 비교한다.
(단계 418) i가 x보다 작다(1<6). SM에서 행[3]의 매트릭스 위치를 판독하고 RA에 기록한다. 위치[3,0]는 blk3를 포함한다. 모든 다른 위치들은 비어있다. RA는 지금 blk2, blk0, 및 blk3를 갖고 있다.
(단계 420) RA가 데이터 블럭 i 또는 blk1을 포함하는가?
(단계 422) RA는 blk1을 포함하지 않는다. blk1를 SM과 RA의 위치[3,2]로 기록한다. RA는 지금 blk2, blk0, blk3, 및 blk1을 갖고 있다.
(단계 424) 위치[4,2]에 대한 값을 도출하기 위해서 1을 i에 더한다(i=2). 단계 414로 돌아간다.
(단계 414) i와 x를 비교한다.
(단계 418) i가 x보다 작다(2<6). SM에서 행[4]의 매트릭스 위치를 판독하고 RA에 기록한다. 위치[4,0]는 blk4를 포함한다. 모든 다른 위치들은 비어있다. RA는지금 blk2, blk0, blk3, blk1, 및 blk4를 갖고 있다.
(단계 420) RA가 데이터 블럭 i 또는 blk2를 포함하는가?
(단계 424) RA가 blk2를 포함한다. 그러므로, 어떠한 것도 위치[4,2]에 기록되지 않는다. 위치[5,2]에 대한 값을 도출하기 위해서 1을 i에 더한다(i=3). 단계 414로 돌아간다.
(단계 414) i와 x를 비교한다.
(단계 418) i가 x보다 작다(3<6). SM에서 행[5]의 매트릭스 위치를 판독하고 RA에 기록한다. 위치[5,0]는 blk5를 포함한다. 모든 다른 위치들은 비어있다. RA는 지금 blk2, blk0, blk3, blk1, blk4, 및 blk5를 갖고 있다.
(단계 420) RA가 데이터 블럭 i 또는 blk3을 포함하는가?
(단계 424) RA가 blk3을 포함한다. 그러므로, 어떠한 것도 위치[5,2]에 기록되지 않는다. 위치[0,2]에 대한 값을 도출하기 위해서 1을 i에 더한다(i=4). 단계 414로 돌아간다.
(단계 414) i와 x를 비교한다.
(단계 418) i가 x보다 작다(4<6). SM에서 행[0]의 매트릭스 위치를 판독하고 RA에 기록한다. 위치[0,0]는 blk0를 포함한다. 모든 다른 위치들은 비어있다. RA는 이미 blk0를 포함한다; 그러므로, blk0는 버려진다.
(단계 420) RA가 데이터 블럭 i 또는 blk4를 포함하는가?
(단계 424) RA가 blk4를 포함한다. 그러므로, 어떠한 것도 위치[0,2]에 기록되지 않는다. 위치[1,2]에 대한 값을 도출하기 위해서 1을 i에 더한다(i=5). 단계414로 돌아간다.
(단계 414) i와 x를 비교한다.
(단계 418) i가 x보다 작다(5<6). SM에서 행[1]의 매트릭스 위치를 판독하고 RA에 기록한다. 위치[1,0]는 blk1을 포함하며, 위치[1,1]는 blk1을 포함한다. RA는 이미 blk1과 blk0를 포함한다; 그러므로, blk1과 blk0는 버려진다. 모든 다른 위치들은 비어있다.
(단계 420) RA가 데이터 블럭 i 또는 blk5를 포함하는가?
(단계 424) RA가 blk5를 포함한다. 그러므로, 어떠한 것도 위치[1,2]에 기록되지 않는다. 1을 i에 더한다(i=6). 단계 414로 돌아간다.
(단계 414) i와 x를 비교한다.
(단계 416) i는 x와 같다(6=6), j를 1씩 증분시킨다(j=3). 단계 406으로 간다.
-----------------------------------------------------------------------
(단계 406) 레퍼런스 어레이(RA)를 클리어시킨다.
(단계 408) j와 x를 비교한다.
(단계 412) j가 x보다 작다면(x<6), i=0으로 한다.
(단계 414) i와 x를 비교한다.
(단계 418) i가 x보다 작다(0<6). SM에서 행[3]의 매트릭스 위치를 판독하고 RA에 기록한다. 위치[3,0]는 blk3를 포함하며 위치[3,2]는 blk1을 포함한다. blk3와 blk1이 RA에 기록된다. 모든 다른 위치들은 비어있다.
(단계 420) RA가 데이터 블럭 i 또는 blk0을 포함하는가?
(단계 422) RA가 blk0을 포함하지 않는다. blk0를 SM과 RA의 위치[3,3]로 기록한다. RA는 지금 blk3, blk1, 및 blk0을 갖고 있다.
(단계 424) 위치[4,3]에 대한 값을 도출하기 위해서 1을 i에 더한다(i=1). 단계 414로 돌아간다.
(단계 414) i와 x를 비교한다.
(단계 418) i가 x보다 작다(1<6). SM에서 행[4]의 매트릭스 위치를 판독하고 RA에 기록한다. 위치[4,0]는 blk4를 포함한다. 모든 다른 위치들은 비어있다. RA는 지금 blk3, blk1, blk0, 및 blk4를 갖고 있다.
(단계 420) RA가 데이터 블럭 i 또는 blk1을 포함하는가?
(단계 424) RA가 blk0을 포함한다. 그러므로, 어떠한 것도 위치[4,3]에 기록되지 않는다. 위치[5,3]에 대한 값을 도출하기 위해서 1을 i에 더한다(i=2). 단계 414로 돌아간다.
(단계 414) i와 x를 비교한다.
(단계 418) i가 x보다 작다(2<6). SM에서 행[5]의 매트릭스 위치를 판독하고 RA에 기록한다. 위치[5,0]는 blk5를 포함한다. 모든 다른 위치들은 비어있다. RA는 지금 blk3, blk1, blk0, blk4 및 blk5를 갖고 있다.
(단계 420) RA가 데이터 블럭 i 또는 blk2를 포함하는가?
(단계 422) RA가 blk2을 포함하지 않는다. blk2를 SM과 RA의 위치[5,3]로 기록한다. RA는 지금 blk3, blk1, blk0, blk4, blk5, 및 blk2를 갖고 있다.
(단계 424) 위치[0,3]에 대한 값을 도출하기 위해서 1을 i에 더한다(i=3). 단계 414로 돌아간다.
(단계 414) i와 x를 비교한다.
(단계 418) i가 x보다 작다(3<6). SM에서 행[0]의 매트릭스 위치를 판독하고 RA에 기록한다. 위치[0,0]는 blk0을 포함한다. 모든 다른 위치들은 비어있다. RA는 이미 blk0를 포함한다; 그러므로, blk0을 버린다.
(단계 420) RA가 데이터 블럭 i 또는 blk3을 포함하는가?
(단계 424) RA는 blk3을 포함한다. 그러므로, 어떠한 것도 위치[0,3]에 기록되지 않는다. 위치[1,3]에 대한 값을 도출하기 위해서 1을 i에 더한다(i=4). 단계 414로 돌아간다.
(단계 414) i와 x를 비교한다.
(단계 418) i가 x보다 작다(4<6). SM에서 행[1]의 매트릭스 위치를 판독하고 RA에 기록한다. 위치[1,0]는 blk1을 포함하며 위치[1,1]는 blk0을 포함한다. 모든 다른 위치들은 비어있다. RA는 이미 blk1과 blk0을 포함하고 있다; 이중 사본을 기록하지 않는다.
(단계 420) RA가 데이터 블럭 i 또는 blk4를 포함하는가?
(단계 424) RA가 blk4를 포함한다. 그러므로, 어떠한 것도 위치[1,3]에 기록되지 않는다. 위치[2,3]에 대한 값을 도출하기 위해서 1을 i에 더한다(i=5). 단계 414로 돌아간다.
(단계 414) i와 x를 비교한다.
(단계 418) i가 x보다 작다(5<6). SM에서 행[2]의 매트릭스 위치를 판독하고 RA에 기록한다. 위치[2,0]는 blk2를 포함하며 위치[2,2]는 blk0을 포함한다. 모든 다른 위치들은 비어있다. RA는 이미 blk2와 blk0을 포함하고 있다; 이중 사본을 기록하지 않는다.
(단계 420) RA가 데이터 블럭 i 또는 blk5를 포함하는가?
(단계 424) RA가 blk4를 포함한다. 그러므로, 어떠한 것도 위치[2,3]에 기록되지 않는다. 1을 i에 더한다(i=6). 단계 414로 돌아간다.
(단계 414) i와 x를 비교한다.
(단계 416) i는 x와 같다(6=6), j를 1씩 증분시킨다(j=4). 단계 406으로 간다.
----------------------------------------------------------------------
(단계 406) 레퍼런스 어레이(RA)를 클리어시킨다.
(단계 408) j와 x를 비교한다.
(단계 412) j가 x보다 작다면(4<6), i=0으로 한다.
(단계 414) i와 x를 비교한다.
(단계 418) i가 x보다 작다(0<6). SM에서 행[4]의 매트릭스 위치를 판독하고 RA에 기록한다. 위치[4,0]는 blk4를 포함한다. Blk4가 RA에 기록된다. 모든 다른 위치들은 비어있다.
(단계 420) RA가 데이터 블럭 i 또는 blk0을 포함하는가?
(단계 422) RA가 blk0을 포함하지 않는다. blk0을 SM과 RA의 위치[4,4]로 기록한다. RA는 지금 blk4와 blk0를 갖고 있다.
(단계 424) 위치[5,4]에 대한 값을 도출하기 위해서 1을 i에 더한다(i=1). 단계 414로 돌아간다.
(단계 414) i와 x를 비교한다.
(단계 418) i가 x보다 작다(1<6). SM에서 행[5]의 매트릭스 위치를 판독하고 RA에 기록한다. 위치[5,0]는 blk5를 포함하며 위치[5,3]는 blk2를 포함한다. 모든 다른 위치들은 비어있다. RA는 지금 blk4, blk0, blk5, 및 blk2를 갖고 있다.
(단계 420) RA가 데이터 블럭 i 또는 blk1을 포함하는가?
(단계 422) RA가 blk1을 포함하지 않는다. blk1을 SM과 RA의 위치[5,4]로 기록한다. RA는 지금 blk4, blk0, blk5, blk2, 및 blk1을 갖고 있다.
(단계 424) 위치[0,4]에 대한 값을 도출하기 위해서 1을 i에 더한다(i=2). 단계 414로 돌아간다.
(단계 414) i와 x를 비교한다.
(단계 418) i가 x보다 작다(2<6). SM에서 행[0]의 매트릭스 위치를 판독하고 RA에 기록한다. 위치[0,0]는 blk0를 포함한다. 모든 다른 위치들은 비어있다. RA는 이미 blk0을 포함한다; 그러므로, 이중 사본을 기록하지 않는다.
(단계 420) RA가 데이터 블럭 i 또는 blk2를 포함하는가?
(단계 424) RA가 blk2를 포함한다. 위치[1,4]에 대한 값을 도출하기 위해서 1을 i에 더한다(i=3). 단계 414로 돌아간다.
(단계 414) i와 x를 비교한다.
(단계 418) i가 x보다 작다(3<6). SM에서 행[1]의 매트릭스 위치를 판독하고 RA에 기록한다. 위치[1,0]는 blk1을 포함하며 위치[1,1]는 blk0을 포함한다. 모든 다른 위치들은 비어있다. RA는 이미 blk1과 blk0을 포함한다; 그러므로, 이중 사본을 기록하지 않는다.
(단계 420) RA가 데이터 블럭 i 또는 blk3을 포함하는가?
(단계 422) RA가 blk3를 포함하지 않는다. blk3를 SM과 RA의 위치[1,4]로 기록한다. RA는 지금 blk4, blk0, blk5, blk2, blk1, 및 blk3를 갖고 있다.
(단계 424) 위치[2,4]에 대한 값을 도출하기 위해서 1을 i에 더한다(i=4). 단계 414로 돌아간다.
(단계 414) i와 x를 비교한다.
(단계 418) i가 x보다 작다(4<6). SM에서 행[2]의 매트릭스 위치를 판독하고 RA에 기록한다. 위치[2,0]는 blk2를 포함하며 위치[2,2]는 blk0을 포함한다. 모든 다른 위치들은 비어있다. RA는 이미 blk2와 blk0을 포함한다; 이중 사본을 기록하지 않는다.
(단계 420) RA가 데이터 블럭 i 또는 blk4를 포함하는가?
(단계 424) RA가 blk4를 포함한다. 그러므로, 어떠한 것도 위치[2,4]로 기록되지 않는다. 위치[3,4]에 대한 값을 도출하기 위해서 1을 i에 더한다(i=5). 단계 414로 돌아간다.
(단계 414) i와 x를 비교한다.
(단계 418) i가 x보다 작다(5<6). SM에서 행[3]의 매트릭스 위치를 판독하고RA에 기록한다. 위치[3,0]는 blk3을 포함하며, 위치[3,2]는 blk1을 포함하며, 위차[3,3]는 blk0을 포함한다. 모든 다른 위치들은 비어있다. RA는 이미 blk3, blk1, 및 blk0을 포함한다; 이중 사본을 기록하지 않는다.
(단계 420) RA가 데이터 블럭 i 또는 blk5를 포함하는가?
(단계 424) RA가 blk5를 포함한다. 그러므로, 어떠한 것도 위치[3,4]로 기록되지 않는다. 1을 i에 더한다(i=6). 단계 414로 돌아간다.
(단계 414) i와 x를 비교한다.
(단계 416) i가 x와 같다(6=6). j를 1씩 증분시킨다(j=5). 단계 406으로 간다.
----------------------------------------------------------------------
(단계 406) 레퍼런스 어레이(RA)를 클리어시킨다.
(단계 408) j와 x를 비교한다.
(단계 412) j가 x보다 작다면(5<6), i=0으로 한다.
(단계 414) i와 x를 비교한다.
(단계 418) i가 x보다 작다(0<6). SM에서 행[5]의 매트릭스 위치를 판독하고 RA에 기록한다. 위치[5,0]는 blk5를 포함하며, 위치[5,3]는 blk2를 포함하고, 위치[5,4]는 blk1을 포함한다. Blk5, blk2, 및 blk1이 RA에 기록된다. 모든 다른 위치들은 비어있다.
(단계 420) RA가 데이터 블럭 i 또는 blk0을 포함하는가?
(단계 422) RA가 blk0을 포함하지 않는다. blk0을 SM과 RA의 위치[5,5]로 기록한다. RA는 지금 blk5, blk2, blk1, 및 blk0를 갖고 있다.
(단계 424) 위치[0,5]에 대한 값을 도출하기 위해서 1을 i에 더한다(i=1). 단계 414로 돌아간다.
(단계 414) i와 x를 비교한다.
(단계 418) i가 x보다 작다(1<6). SM에서 행[0]의 매트릭스 위치를 판독하고 RA에 기록한다. 위치[0,0]는 blk0을 포함하며, 모든 다른 위치들은 비어있다. RA는 지금 blk5, blk2, blk1, 및 blk0을 갖고 있다.
(단계 420) RA가 데이터 블럭 i 또는 blk1을 포함하는가?
(단계 424) RA가 blk1을 포함한다. 위치[1,5]에 대한 값을 도출하기 위해서 1을 i에 더한다(i=2). 단계 414로 돌아간다.
(단계 414) i와 x를 비교한다.
(단계 418) i가 x보다 작다(2<6). SM에서 행[1]의 매트릭스 위치를 판독하고 RA에 기록한다. 위치[1,0]는 blk1을 포함하며, 위치[1,1]는 blk0을 포함하고, 위치[1,4]는 blk3를 포함한다. 모든 다른 위치들은 비어있다. RA는 이미 blk0과 blk1을 포함한다; 그러므로, 이중 사본을 기록하지 않는다. blk3을 RA에 기록한다. RA는 지금 blk5, blk2, blk1, blk0, 및 blk3을 갖고 있다.
(단계 420) RA가 데이터 블럭 i 또는 blk2를 포함하는가?
(단계 424) RA가 blk2를 포함한다. 위치[2,5]에 대한 값을 도출하기 위해서 1을 i에 더한다(i=3). 단계 414로 돌아간다.
(단계 414) i와 x를 비교한다.
(단계 418) i가 x보다 작다(3<6). SM에서 행[2]의 매트릭스 위치를 판독하고 RA에 기록한다. 위치[2,0]는 blk2을 포함하고, 위치[2,2]는 blk0을 포함한다. 모든 다른 위치들은 비어있다. RA는 이미 blk2와 blk0을 포함한다; 그러므로, 이중 사본을 기록하지 않는다.
(단계 420) RA가 데이터 블럭 i 또는 blk3을 포함하는가?
(단계 424) RA가 blk3을 포함한다. 위치[3,5]에 대한 값을 도출하기 위해서 1을 i에 더한다(i=4). 단계 414로 돌아간다.
(단계 414) i와 x를 비교한다.
(단계 418) i가 x보다 작다(4<6). SM에서 행[3]의 매트릭스 위치를 판독하고 RA에 기록한다. 위치[3,0]는 blk3을 포함하며, 위치[3,2]는 blk1을 포함하고, 위치[3,3]는 blk0을 포함한다. 모든 다른 위치들은 비어있다. RA는 이미 blk3, blk1, 및 blk0을 포함한다; 그러므로, 이중 사본을 기록하지 않는다.
(단계 420) RA가 데이터 블럭 i 또는 blk4를 포함하는가?
(단계 422) RA가 blk4를 포함하지 않는다. blk4를 SM과 RA의 위치[3,5]로 기록한다. RS는 지금 blk5, blk2, blk1, blk0, blk3, 및 blk4를 갖고 있다.
(단계 424) 위치[4,5]에 대한 값을 도출하기 위해서 1을 i에 더한다(i=5). 단계 414로 돌아간다.
(단계 414) i와 x를 비교한다.
(단계 418) i가 x보다 작다(5<6). SM에서 행[4]의 매트릭스 위치를 판독하고RA에 기록한다. 위치[4,0]는 blk4를 포함하고, 위치[4,4]는 blk0을 포함한다. 모든 다른 위치들은 비어있다. RA는 이미 blk4와 blk0을 포함한다; 그러므로, 이중 사본을 기록하지 않는다.
(단계 420) RA가 데이터 블럭 i 또는 blk5를 포함하는가?
(단계 422) RA가 blk5를 포함한다. 그러므로, 어떠한 것도 위치[3,4]로 기록되지 않는다.
(단계 424) 1을 i에 더한다(i=6). 단계 414로 돌아간다.
(단계 414) i와 x를 비교한다.
(단계 416) i가 x와 같다(6=6). j를 1씩 증분시킨다(j=5). 단계 406으로 간다.
----------------------------------------------------------------------
(단계 406) 레퍼런스 어레이(RA)를 클리어시킨다.
(단계 408) j와 x를 비교한다.
(단계 410) j와 x가 같다(6=6); 종결
Claims (33)
- 주문형 데이터 서비스를 제공하기 위해서 데이터를 클라이언트에게 전달하는 방법에 있어서,(a) 데이터 화일을 수신하는 단계;(b) 시간 간격을 특정하는 단계;(c) 각 데이터 블럭이 상기 시간 간격중 디스플레이가능하도록 상기 시간 간격을 기초로 상기 데이터 화일을 복수의 데이터 블럭으로 분석하는 단계;(d) 상기 데이터 화일을 전달하기 위해서 상기 시간 간격에 대체로 같은 지속시간을 갖는 소정 개수의 시간 슬롯을 결정하는 단계;(e) 적어도(1)제 1 의 상기 복수의 데이터 블럭; 및(2)상기 복수의 데이터 블럭이 임의의 시간 슬롯동안 상기 데이터 화일에 액세스하는 클라이언트에게 순차적인 순처로 이용가능하도록 선택적으로 1개 이상의 부가 데이터 블럭을 각 시간 슬롯으로 할당하는 단계;(f) 상기 할당 단계(e)를 기초로 하여 상기 복수의 데이터 블럭들을 전달하는 단계를 포함하는 것을 특징으로 하는 방법.
- 제 1 항에 있어서, 상기 분석 단계는:(1) 예측되는 데이터 블럭 사이즈를 결정하는 단계;(2) 채널 서버에서 메모리의 클러스터 사이즈를 결정하는 단계; 및(3) 상기 상기 예측된 데이터 블럭 사이즈와 클러스터 사이즈를 기초로 하여 상기 데이터 화일을 분석하는 단계를 포함하는 것을 특징으로 하는 방법.
- 제 1 항에 있어서, 상기 결정 단계는 자원 항당과 대역폭 이용가능성을 평가하는 단계를 포함하는 것을 특징으로 하는 방법.
- 주문형 데이터 서비스를 제공하기 위해서 서버로부터 수신된 데이터를 처리하는 방법에 있어서,(a) 제 1 시간 슬롯동안 데이터 화일의 선택부분(selection)을 수신하는 단계;(b) 제 2 시간 슬롯동안 상기 데이터 화일의 적어도 1개 데이터 블럭을 수신하는 단계; 및(c) 다음 시간 슬롯 동안:(1)아직 수신되지 않은 임의의 데이터 블럭을 수신하는 단계;(2)상기 데이터 화일의 데이터 블럭을 순차적으로 디스플레이하는 단계; 및(3)상기 데이터 화일의 모든 데이터 블럭들이 수신 및 디스플레이될 때 까지 단계 (c)를 반복하는 단계를 포함하는 것을 특징으로 하는 방법.
- 데이터 화일을 수신하는 클라이언트에게 순차적인 순서로 데이터 화일이 이용가능하도록 데이터 화일의 데이터 블럭들을 전달하기 위한 전달 순서를 발생시키는 데이터 화일에 대한 스케줄링 매트릭스를 발생시키는 방법에 있어서,(a) 데이터 화일에 대한 데이터 블럭의 개수[x]을 수신하는 단계;(b) 제 1 변수[j]를 제로로 설정하는 단계;(c) 제 2 변수[i]를 제로로 설정하는 단계;(d) 레퍼런스 어레이의 모든 엔트리를 클리어시키는 단계;(e) 레퍼런스 어레이가 아직 데이터 블럭을 포함하고 있지 않다면, 매트릭스에서 행의 매트릭스 위치[(i+j) 모듈]에 저장된 적어도 1개의 데이터 블럭을 레퍼런스 어레이로 기록하는 단계;(f) 레퍼런스 어레이가 데이터 블럭[i]를 포함하고 있지 않다면, 데이터 블럭[i]를 상기 레퍼런스 어레이와 상기 매트릭스의 매트릭스 위치[(i+j) 모듈 x,j]로 기록하는 단계;(g) 상기 제 2 변수[i]를 1씩 증분시키고 상기 제 2 변수[i]가 데이터 블럭의 개수[x]와 같을 때 까지 단계(e)를 반복하는 단계; 및(h) 상기 제 1 변수[j]를 1씩 증분시키고 상기 제 1 변수[j]가 데이터 블럭의 개수[x]와 같을 때 까지 단계(e)를 반본하는 단계;를 포함하는 것을 특징으로 하는 방법.
- 제 5 항에 있어서,(i) 데이터 화일의 세트에 대한 스케줄링 매트릭스의 세트를 발생시키기 위해서 상기 단계(a) 내지 (h)를 반복하는 단계; 및(j) 상기 데이터 화일의 세트를 전달하기 위해 스케줄링 매트릭스의 세트를 기초로 하여 전달 매트릭스를 발생시키도록 회선형법을 적용하는 단계를 더 포함하는 것을 특징으로 하는 방법.
- 제 1 채널 서버의 세트;상기 제 1 채널 서버의 세트를 제어하기 위한 중앙 제어 서버;상기 제 1 채널 서버의 세트로 커플링된 제 1 업-컨버터의 세트; 및상기 제 1 업-컨버터의 세트에 커플링되어, 전송 매체를 거쳐 데이터를 전송하도록 적용하는 콤바이너 모듈;를 포함하며,상기 중앙 제어 서버는 데이터 화일을 데이터 블럭으로 분할하며 상기 데이터 화일이 주문시 이용가능한 스케줄링 방식으로 상기 전송 매체간에 상기 데이터 블럭들을 전달하기 위한 전달 매트릭스를 계산하도록 구성되는 것을 특징으로 하는 주문형 데이터 시스템.
- 제 7 항에 있어서, 상기 콤바이너 모듈은 콤바이너와 증폭기를 포함하는 것을 특징으로 하는 주문형 데이터 시스템.
- 제 7 항에 있어서, 상기 채널 서버는 제어기, 변조기, 및 네트워크 인터페이스를 포함하는 것을 특징으로 하는 주문형 데이터 시스템.
- 제 7 항에 있어서,상기 시스템을 모니터링하기 위한 채널 모니터링 모듈;스위치 매트릭스;제 2 채널 서버의 세트; 및제 2 업-컨버터의 세트를 포함하며,상기 채널 모니터링 모듈은 상기 스위치 매트릭스가 상기 제 1 채널 서버의 세트의 채널 서버와 상기 제 2 채널 서버의 세트의 채널 서버와 교체하고 상기 제 1 업-컨버터의 세트의 업-컨버터와 상기 제 2 업-컨버터의 세트의 업-컨버터를 교체하도록 지시하는, 상기 채널 모니터링 모듈로부터의 통지에 응답하여 시스템 상태를 상기 중앙 제어 서버로 통지하도록 구성된 것을 특징으로 하는 주문형 데이터 시스템.
- 주문형 데이터 서비스를 제공하기 위해서 서버로부터 수신된 데이터를 처리하는 방법에 있어서,(a) 서버로부터 데이터 패킷을 수신하는 단계;(b) 상기 데이터 패킷에서 헤더 정보를 판독하는 단계;(c) 상기 데이터 패킷을 적어도 부분적으로 상기 헤더 정보를 기초로 하는 데이터 블럭으로 구성하는 단계;(d) 상기 데이터 블럭으로의 액세스를 인증하는 단계;(e) 액세스가 인증될 때 상기 데이터 블럭을 디코딩하는 단계; 및(f) 상기 데이터 블럭을 디스플레이하는 단계를 포함하는 것을 특징으로 하는 방법.
- 제 11 항에 있어서,(g) 긴급 비트가 검출될 때 상기 수신 단계를 종결하는 단계;(h) 긴습 비트를 수신하는 단계; 및(i) 상기 긴급 데이터를 디스플레이하는 단계를 더 포함하는 것을 특징으로 하는 방법.
- 제 11 항에 있어서, 어떠한 데이터 패킷도 수신되지 않을 때 긴급 채널로 조율하는 단계를 더 포함하는 것을 특징으로 하는 방법.
- 데이터 화일 세트의 데이터 블럭들을 전달하기 위한 전달 순서를 제공하는 전달 매트릭스를 계산하는 방법에 있어서,(a) 스케줄링 매트릭스 세트를 형성하기 위해서 데이터 화일 세트의 각 데이터 화일에 대한 스케줄링 매트릭스를 계산하는 단계;(b) 상기 각각의 데이터 화일 세트에 대한 식별 정보을 포함하는 식별 정보 어레이를 발생시키는 단계; 및(c) 상기 데이터 화일 세트에 대한 전달 매트릭스를 발생시키기 위해서 상기 스케줄링 매트릭스의 세트와 상기 식별 정보 어레이를 결합시키는 단계;를 포함하는 것을 특징으로 하는 방법.
- 제 14 항에 있어서, 상기 계산 단계는:(i) 각 데이터 화일에 대한 시간 슬롯의 세트를 포함하는 어레이를 발생시키는 단계;(ii) 각 시간 슬롯동안 전달된 데이터 화일의 적어도 하나의 데이터 블럭을 포함하는 어레이를 발생시키는 단계를 포함하는 것을 특징으로 하는 방법.
- 제 14 항에 있어서, 상기 결합 단계는 회선형법을 사용하는 단계를 포함하는 것을 특징으로 하는 방법.
- 복수의 클라이언트에게 주문형 데이터를 클라이언트 불특정(non client specific) 방식으로 방송하기에 적합한 데이터 전송 시퀀스를 규정하는 전달 매트릭스를 준비하는 단계(act)를 포함하여, 상기 주문형 데이터 화일의 전송이 상기 복수의 클라이언트 수에 관계없이 일정량의 전송 대역폭을 요구하는 것을 특징으로 하는 컴퓨터 구현 주문형 데이터 전송 방법.
- 제 17 항에 있어서, 전달 매트릭스를 발생시는 단계(act)은 제 1 데이터 화일의 전송에 적합한 제 1 스케줄링 매트릭스를 준비하는 단계를 포함하며, 상기 제 1 데이터 화일은 제 1 복수의 데이터 블럭에 의해 표현되며, 상기 제 1 스케줄링 매트릭스는 상기 제 1 스케줄링 매트릭스에 따른 상기 제 1 데이터 화일의 임의의 클라이언트 전송이 1개 시간 슬롯내의 제 1 데이터 화일을 액세스하기 시작하는 방식으로 시간 슬롯내에 순차적으로 상기 제 1 복수의 데이터 블럭을 전송하기 위한 제 1 시퀀스를 제공하는 것을 특징으로 하는 컴퓨터 구현 방법.
- 제 18 항에 있어서, 전달 매트릭스를 준비하는 단계는:제 2 복수의 데이터 블럭에 의해 표현되는 제 2 데이터 화일의 전송에 적합하며, 이에 따라 제 2 데이터 화일의 전송을 수신하는 임의의 클라이언트가 1개 시간 슬롯내에서 제 2 데이터 화일을 액세스하기 시작하는 방식으로 시간 슬롯내에서 순차적으로 제 2 복수의 데이터 블럭을 전송하기 위한 제 2 시퀀스를 제공하는 제 2 스케줄링 매트릭스를 준비하는 단계;상기 제 1 및 제 2 스케줄링 매트릭스의 조합을 통하여 상기 전달 매트릭스를 발생시키는 단계를 더 포함하는 것을 특징으로 하는 컴퓨터 구현 방법.
- 제 17 항에 있어서, 상기 복수의 클라이언트에게 방송하기에 적합한 전자 프로그램 가이드(EPG)를 준비하는 단계를 더 포함하는 것을 특징으로 하는 컴퓨터 구현 범용 데이터 방송 방법.
- 제 17 항에 있어서, 상기 주문형 데이터는 비디오 데이터를 포함하는 것을 특징으로 하는 컴퓨터 구현 방법.
- 제 17 항에 있어서, 상기 주문형 데이터는 게임 데이터를 포함하는 것을 특징으로 하는 컴퓨터 구현 방법.
- 셋-톱 박스(STB)를 제어하는 컴퓨터 구현 방법에 있어서,적어도 하나의 데이터 화일을 갖는 클라이언트 불특정 주문형 데이터를 포함하는 디지털 데이터를 수신하는 단계; 및상기 STB의 사용자를 위한 상기 적어도 하나의 데이터 화일을 만들기 위해서 상기 클라이언트 불특정 주문형 데이터를 처리하는 단계를 포함하는 것을 특징으로 하는 컴퓨터 구현 방법.
- 제 23 항에 있어서,적어도 하나의 데이터 화일을 갖는 클라이언트 불특정 주문형 데이터를 포함하여 수신된 디지털 데이터의 특질을 지시하는 전자 프로그램 가이드(EPG)를 수신하는 단계;상기 EPG 데이터를 상기 STB의 사용자에게 제공하는 단계; 및상기 STB의 사용자로부터 적어도 하나의 데이터 화일에 대한 주문을 수신하는 단계를 더 포함하는 것을 특징으로 하는 컴퓨터 구현 방법.
- 제 23 항에 있어서, 상기 주문형 데이터는 비디오 데이터를 포함하는 것을 특징으로 하는 컴퓨터 구현 방법.
- 제 23 항에 있어서, 상기 주문형 데이터는 게임 데이터를 포함하는 것을 특징으로 하는 컴퓨터 구현 방법.
- 제 23 항에 있어서, 상기 클라이언트 불특정 주문형 데이터는 복수의 데이터 화일을 포함하며, 상기 클라이언트 불특정 주문형 데이터를 처리하는 단계는 사용자에게 이용가능한 적어도 2개의 데이터 화일을 만들기 위해서 상기 클라이언트 불특정 주문형 데이터를 처리하는 단계를 포함하는 것을 특징으로 하는 컴퓨터 구현 방법.
- 제 27 항에 있어서, 제 1 의 적어도 2개 데이터 화일은 사용자에게 실시간으로 제공되는 것을 특징으로 하는 컴퓨터 구현 방법.
- 제 27 항에 있어서, 상기 제 1 의 저어도 2개 데이터 화일은 영구 메모리 디바이스에 저장되는 것을 특징으로 하는 컴퓨터 구현 방법.
- 셋-톱 박스(STB)를 제어하는 컴퓨터 구현 방법에 있어서,적어도 하나의 데이터 화일을 갖는 클라이언트 불특정 주문형 데이터를 포함하는 디지털 데이터와, 상기 디지털 데이터 및 적어도 하나의 데이터 화일을 갖는 클라이언트 불특정 주문형 데이터의 특질을 지시하는 전자 프로그램 가이드(EPG)를 수신하는 단계;상기 EPG 데이터를 상기 STB의 사용자에게 제공하는 단계;상기 STB의 사용자로부터 적어도 하나의 데이터 화일에 대한 주문을 수신하는 단계; 및상기 사용자를 위해 사전에 적어도 하나의 데이터 화일을 만들기 위해서 클라이언트 불특정 주문형 데이터를 처리하는 단계;를 포함하는 것을 특징으로 하는 컴퓨터 구현 방법.
- VOD 및 디지털 방송과 같은 복수의 디지털 서비스를 수신 및 처리할 수 있는 셋-톱 박스(STB)에 있어서,데이터버스;디지털 방송 통신 매체에 커플링시키기에 적합하며 디지털 방송 데이터를 수신하도록 조작가능한 제 1 통신 디바이스;상기 데이터버스에 양방향 커플링된 메모리;상기 데이터버스에 양방향 커플링된 디지털 데이터 디코더; 및상기 데이터버스에 양방향 커플링되어, 상기 메모리, 디지털 디코더, 및 변조기를 제어하며:제 1 통신 디바이스를 통하여 수신되며, 상기 통신 디바이스에 커플링된 디지털 방송 서버를 통하여 데이터 방송의 특징을 지시하는 전자 프로그램 가이드(EPG)를 프로세싱하는 단계;상기 방송 데이터의 지시를 상기 STB의 사용자에게 제공하는 단계;상기 STB에 의해 수신되데, 상기 EPG에 의해 명시되는 것처럼 클라이언트 불특정 주문형 데이터 포맷으로 수신되는 소정의 데이터에 대한 요청을 수신하는 단계;클라이언트 불특정 주문형 데이터 포맷으로 수신된 상기 소정의 데이터를 프로세싱하는 단계; 및상기 소정의 데이터를 상기 범용 STB의 사용자에게 제공하는 단계를 위한 인스트럭션(instruction)을 수행하는 STB 제어 프로세스를 구현하는 중앙 처리 유니트(CPU)를 포함하는 것을 특징으로 하는 셋-톱 박스.
- 제 31 항에 있어서, 상기 STB 제어 프로세스는 상기 범용 방송 서버에 의해 2개 이상의 복수의 채널 방송으로 동시에 조율하며, 2개 이상의 복수의 채널로부터의 데이터를 동시에 처리하기에 실시가능한 것을 특징으로 하는 STB.
- 제 31 항에 있어서, 상기 STB 제어 프로세스는 사용자에 의해 요청된 데이터를 선택하며, 상기 선택된 데이터의 특질을 결정하며, 상기 선택된 데이터를 압축 해제하며, 상기 디코딩된 데이터를 재조립하며, 상기 선택된 데이터를 메모리로 저장하고, 상기 선택된 데이터를 적절하게 처리되는 방식으로 출력 디바이스로 제공하기 위해서 상기 STB를 제 1 채널로 조율하기에 실시가능한 것을 특징으로 하는 STB.
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US09/584,832 US6557030B1 (en) | 2000-05-31 | 2000-05-31 | Systems and methods for providing video-on-demand services for broadcasting systems |
| US09/584,832 | 2000-05-31 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| KR20030071481A true KR20030071481A (ko) | 2003-09-03 |
Family
ID=24338962
Family Applications (2)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| KR1020027016327A Withdrawn KR20030071481A (ko) | 2000-05-31 | 2000-08-22 | 주문형 비디오 서비스를 방송 시스템에 제공하는 시스템및 방법 |
| KR1020027016328A Withdrawn KR20030034081A (ko) | 2000-05-31 | 2001-05-31 | 주문형 비디오 서비스를 방송 시스템에 제공하는 방법 |
Family Applications After (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| KR1020027016328A Withdrawn KR20030034081A (ko) | 2000-05-31 | 2001-05-31 | 주문형 비디오 서비스를 방송 시스템에 제공하는 방법 |
Country Status (16)
| Country | Link |
|---|---|
| US (5) | US6557030B1 (ko) |
| EP (2) | EP1285345A4 (ko) |
| JP (1) | JP2003535531A (ko) |
| KR (2) | KR20030071481A (ko) |
| CN (1) | CN1355904A (ko) |
| AU (1) | AU2000267958A1 (ko) |
| BR (1) | BR0017253A (ko) |
| CA (1) | CA2404611A1 (ko) |
| EA (2) | EA200201286A1 (ko) |
| IL (1) | IL152762A0 (ko) |
| MX (1) | MXPA02011841A (ko) |
| NO (1) | NO20025710L (ko) |
| PL (1) | PL359130A1 (ko) |
| TW (1) | TW508949B (ko) |
| WO (2) | WO2001093060A1 (ko) |
| ZA (4) | ZA200209222B (ko) |
Families Citing this family (137)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| TW425509B (en) * | 1998-09-11 | 2001-03-11 | Mentor Data System Inc | Hierarchical peripheral component interconnect bus system |
| US6817028B1 (en) | 1999-06-11 | 2004-11-09 | Scientific-Atlanta, Inc. | Reduced screen control system for interactive program guide |
| US7992163B1 (en) | 1999-06-11 | 2011-08-02 | Jerding Dean F | Video-on-demand navigational system |
| US7010801B1 (en) | 1999-06-11 | 2006-03-07 | Scientific-Atlanta, Inc. | Video on demand system with parameter-controlled bandwidth deallocation |
| US6868452B1 (en) * | 1999-08-06 | 2005-03-15 | Wisconsin Alumni Research Foundation | Method for caching of media files to reduce delivery cost |
| US7975277B1 (en) | 2000-04-03 | 2011-07-05 | Jerding Dean F | System for providing alternative services |
| US7200857B1 (en) | 2000-06-09 | 2007-04-03 | Scientific-Atlanta, Inc. | Synchronized video-on-demand supplemental commentary |
| US8516525B1 (en) | 2000-06-09 | 2013-08-20 | Dean F. Jerding | Integrated searching system for interactive media guide |
| US7934232B1 (en) | 2000-05-04 | 2011-04-26 | Jerding Dean F | Navigation paradigm for access to television services |
| US20020026501A1 (en) * | 2000-05-31 | 2002-02-28 | Khoi Hoang | Decreased idle time and constant bandwidth data-on-demand broadcast delivery matrices |
| CN100399316C (zh) * | 2000-05-31 | 2008-07-02 | 派威公司 | 通用机顶盒结构和控制方法 |
| US8069259B2 (en) | 2000-06-09 | 2011-11-29 | Rodriguez Arturo A | Managing removal of media titles from a list |
| US7962370B2 (en) | 2000-06-29 | 2011-06-14 | Rodriguez Arturo A | Methods in a media service system for transaction processing |
| GB0023993D0 (en) * | 2000-09-30 | 2000-11-15 | Pace Micro Tech Plc | Improvements to electronic programme guide |
| US7340759B1 (en) | 2000-11-10 | 2008-03-04 | Scientific-Atlanta, Inc. | Systems and methods for adaptive pricing in a digital broadband delivery system |
| US7006514B2 (en) | 2001-05-31 | 2006-02-28 | Polytechnic University | Pipelined maximal-sized matching cell dispatch scheduling |
| USRE42600E1 (en) | 2000-11-20 | 2011-08-09 | Polytechnic University | Scheduling the dispatch of cells in non-empty virtual output queues of multistage switches using a pipelined arbitration scheme |
| US20020143499A1 (en) * | 2001-01-12 | 2002-10-03 | Graphin Co., Ltd | Methods and apparatus for communicating information via a network |
| JP2002259282A (ja) * | 2001-02-27 | 2002-09-13 | Matsushita Electric Ind Co Ltd | データ放送スケジュールシステムおよび、それに関する、装置または方法または記録媒体またはプログラム |
| JP4586281B2 (ja) * | 2001-03-13 | 2010-11-24 | コニカミノルタビジネステクノロジーズ株式会社 | データ送信管理装置、データ送信管理方法、データ送信管理プログラムおよびデータ送信管理プログラムを記録したコンピュータ読み取り可能な記録媒体 |
| JP2002271758A (ja) * | 2001-03-13 | 2002-09-20 | Sony Corp | 送信装置、送信方法、受信装置、受信方法および送受信システム |
| EP1374049B1 (en) * | 2001-03-26 | 2016-11-23 | Accenture Global Services Limited | Broadband communications |
| EP1395904B1 (en) * | 2001-05-22 | 2016-07-20 | Accenture Global Services Limited | Broadband communications |
| US7526788B2 (en) | 2001-06-29 | 2009-04-28 | Scientific-Atlanta, Inc. | Graphic user interface alternate download options for unavailable PRM content |
| US7512964B2 (en) | 2001-06-29 | 2009-03-31 | Cisco Technology | System and method for archiving multiple downloaded recordable media content |
| US8006262B2 (en) * | 2001-06-29 | 2011-08-23 | Rodriguez Arturo A | Graphic user interfaces for purchasable and recordable media (PRM) downloads |
| US7496945B2 (en) | 2001-06-29 | 2009-02-24 | Cisco Technology, Inc. | Interactive program guide for bidirectional services |
| CA2474879C (en) * | 2001-07-03 | 2013-04-09 | Imagine Broadband Limited | Method and system for monitoring service performance over a virtual private network connection by simulating end user activity |
| US7191243B2 (en) * | 2001-11-15 | 2007-03-13 | Microsoft Corporation | Scheduling and multiplexing data for broadcast transmission over multiple streams |
| US7437438B2 (en) * | 2001-12-27 | 2008-10-14 | Hewlett-Packard Development Company, L.P. | System and method for energy efficient data prefetching |
| US7334251B2 (en) | 2002-02-11 | 2008-02-19 | Scientific-Atlanta, Inc. | Management of television advertising |
| US20030204856A1 (en) * | 2002-04-30 | 2003-10-30 | Buxton Mark J. | Distributed server video-on-demand system |
| US7111314B2 (en) * | 2002-05-03 | 2006-09-19 | Time Warner Entertainment Company, L.P. | Technique for delivering entertainment programming content including interactive features in a communications network |
| US7878908B2 (en) * | 2002-11-14 | 2011-02-01 | Nintendo Co., Ltd. | Multiplexed secure video game play distribution |
| US7552192B2 (en) * | 2002-12-18 | 2009-06-23 | Ronnie Gerome Carmichael | Massively parallel computer network-utilizing MPACT and multipoint parallel server (MPAS) technologies |
| US8832758B2 (en) * | 2003-03-17 | 2014-09-09 | Qwest Communications International Inc. | Methods and systems for providing video on demand |
| JP2005033627A (ja) * | 2003-07-09 | 2005-02-03 | Nec Corp | コンテンツ配信システム、配信サーバ装置、クライアント装置、コンテンツ配信方法及びプログラム |
| US7310807B2 (en) | 2003-10-29 | 2007-12-18 | Sbc Knowledge Ventures, L.P. | System and method for local video distribution |
| EG23529A (en) | 2003-11-05 | 2006-04-11 | Amri Moosa E Al | System and method to broadcast the video or tv anddisplaying on pc tv by choosing the required prog ram from the internet |
| IL159838A0 (en) | 2004-01-13 | 2004-06-20 | Yehuda Binder | Information device |
| US8161388B2 (en) | 2004-01-21 | 2012-04-17 | Rodriguez Arturo A | Interactive discovery of display device characteristics |
| PL367409A1 (en) * | 2004-04-20 | 2005-10-31 | Advanced Digital Broadcast Ltd. | Tv analogue and digital signal receiver and method for receiving analogue and digital signals |
| US8904458B2 (en) | 2004-07-29 | 2014-12-02 | At&T Intellectual Property I, L.P. | System and method for pre-caching a first portion of a video file on a set-top box |
| US8584257B2 (en) | 2004-08-10 | 2013-11-12 | At&T Intellectual Property I, L.P. | Method and interface for video content acquisition security on a set-top box |
| US8473475B2 (en) * | 2004-09-15 | 2013-06-25 | Samsung Electronics Co., Ltd. | Information storage medium for storing metadata supporting multiple languages, and systems and methods of processing metadata |
| US8086261B2 (en) * | 2004-10-07 | 2011-12-27 | At&T Intellectual Property I, L.P. | System and method for providing digital network access and digital broadcast services using combined channels on a single physical medium to the customer premises |
| US20060090186A1 (en) * | 2004-10-21 | 2006-04-27 | Santangelo Bryan D | Programming content capturing and processing system and method |
| US8434116B2 (en) | 2004-12-01 | 2013-04-30 | At&T Intellectual Property I, L.P. | Device, system, and method for managing television tuners |
| US7716714B2 (en) | 2004-12-01 | 2010-05-11 | At&T Intellectual Property I, L.P. | System and method for recording television content at a set top box |
| US7474359B2 (en) | 2004-12-06 | 2009-01-06 | At&T Intellectual Properties I, L.P. | System and method of displaying a video stream |
| US7436346B2 (en) | 2005-01-20 | 2008-10-14 | At&T Intellectual Property I, L.P. | System, method and interface for controlling multiple electronic devices of a home entertainment system via a single control device |
| US7307574B2 (en) | 2005-02-02 | 2007-12-11 | Sbc Knowledge Ventures, Lp | Remote control, apparatus, system and methods of using the same |
| US8214859B2 (en) | 2005-02-14 | 2012-07-03 | At&T Intellectual Property I, L.P. | Automatic switching between high definition and standard definition IP television signals |
| TWI307589B (en) | 2005-05-18 | 2009-03-11 | Innovative Sonic Ltd | Method and apparatus of data segmentation in a mobile communications system |
| US8054849B2 (en) | 2005-05-27 | 2011-11-08 | At&T Intellectual Property I, L.P. | System and method of managing video content streams |
| US7908627B2 (en) | 2005-06-22 | 2011-03-15 | At&T Intellectual Property I, L.P. | System and method to provide a unified video signal for diverse receiving platforms |
| US8893199B2 (en) | 2005-06-22 | 2014-11-18 | At&T Intellectual Property I, L.P. | System and method of managing video content delivery |
| US8635659B2 (en) | 2005-06-24 | 2014-01-21 | At&T Intellectual Property I, L.P. | Audio receiver modular card and method thereof |
| US8365218B2 (en) | 2005-06-24 | 2013-01-29 | At&T Intellectual Property I, L.P. | Networked television and method thereof |
| US8282476B2 (en) | 2005-06-24 | 2012-10-09 | At&T Intellectual Property I, L.P. | Multimedia-based video game distribution |
| US8190688B2 (en) | 2005-07-11 | 2012-05-29 | At&T Intellectual Property I, Lp | System and method of transmitting photographs from a set top box |
| US7873102B2 (en) * | 2005-07-27 | 2011-01-18 | At&T Intellectual Property I, Lp | Video quality testing by encoding aggregated clips |
| US8189472B2 (en) | 2005-09-07 | 2012-05-29 | Mcdonald James F | Optimizing bandwidth utilization to a subscriber premises |
| US7397400B2 (en) * | 2005-12-02 | 2008-07-08 | Viasat, Inc. | Variable length data encapsulation and encoding |
| KR101265643B1 (ko) * | 2006-08-22 | 2013-05-22 | 엘지전자 주식회사 | 무선 통신 시스템에서의 핸드오버 수행 및 그 제어 방법 |
| KR101387500B1 (ko) * | 2006-08-22 | 2014-04-21 | 엘지전자 주식회사 | 무선 통신 시스템에서의 제어정보 전송 및 수신 방법 |
| KR101430449B1 (ko) * | 2006-10-02 | 2014-08-14 | 엘지전자 주식회사 | 무선 통신 시스템에서의 페이징 메시지 송수신 방법 |
| US8520644B2 (en) * | 2006-10-30 | 2013-08-27 | Lg Electronics Inc. | Method for re-direction of uplink access |
| US8442017B2 (en) * | 2006-10-30 | 2013-05-14 | Lg Electronics Inc. | Method for transmitting random access channel message and response message, and mobile communication terminal |
| US8428013B2 (en) * | 2006-10-30 | 2013-04-23 | Lg Electronics Inc. | Method of performing random access in a wireless communcation system |
| KR100938754B1 (ko) * | 2006-10-30 | 2010-01-26 | 엘지전자 주식회사 | 비연속 수신을 이용한 데이터 수신 및 전송 방법 |
| JP4240331B2 (ja) * | 2006-11-02 | 2009-03-18 | ソニー株式会社 | 送信装置および方法、プログラム、並びに通信システム |
| US20080119178A1 (en) * | 2006-11-21 | 2008-05-22 | Samsung Electronics Co., Ltd. | Allocating Compression-Based Firmware Over the Air |
| EP2126737A2 (en) * | 2007-01-22 | 2009-12-02 | Min Tnetap i Göteborg AB | Method and apparatus for obtaining digital objects in a communication network |
| US8234354B2 (en) * | 2007-03-09 | 2012-07-31 | Mitsubishi Electric Corporation | File transfer method and file transfer system |
| EP2145436B1 (en) * | 2007-04-30 | 2011-09-07 | LG Electronics Inc. | Methods of generating a data block in a mobile communication system |
| KR101464748B1 (ko) * | 2007-04-30 | 2014-11-24 | 엘지전자 주식회사 | 무선단말의 측정보고 기동방식 |
| WO2008133478A2 (en) * | 2007-04-30 | 2008-11-06 | Lg Electronics Inc. | Method of transmitting data in a wireless communication system |
| US8218524B2 (en) * | 2007-04-30 | 2012-07-10 | Lg Electronics Inc. | Method for transmitting or receiving data unit using header field existence indicator |
| USRE45347E1 (en) | 2007-04-30 | 2015-01-20 | Lg Electronics Inc. | Methods of transmitting data blocks in wireless communication system |
| KR101458641B1 (ko) * | 2007-04-30 | 2014-11-05 | 엘지전자 주식회사 | Mbms를 지원하는 무선통신 시스템에서 데이터 전송방법 |
| KR101469281B1 (ko) * | 2007-04-30 | 2014-12-04 | 엘지전자 주식회사 | 무선단말의 상태 전환 방식 |
| US8543089B2 (en) * | 2007-04-30 | 2013-09-24 | Lg Electronics Inc. | Method for performing an authentication of entities during establishment of wireless call connection |
| KR20080097338A (ko) * | 2007-05-01 | 2008-11-05 | 엘지전자 주식회사 | 불연속 데이터 송수신 방법 |
| KR100917205B1 (ko) | 2007-05-02 | 2009-09-15 | 엘지전자 주식회사 | 무선 통신 시스템에서의 데이터 블록 구성 방법 |
| US20080273503A1 (en) * | 2007-05-02 | 2008-11-06 | Lg Electronics Inc. | Method and terminal for performing handover in mobile communications system of point-to-multipoint service |
| US20080273482A1 (en) * | 2007-05-02 | 2008-11-06 | Lg Electronics Inc. | Uplink access method for receiving a point-to-multipoint service |
| WO2008136598A1 (en) * | 2007-05-03 | 2008-11-13 | Lg Electronics Inc. | Method of data processing in a wireless communication system |
| KR101470638B1 (ko) | 2007-06-18 | 2014-12-08 | 엘지전자 주식회사 | 이동통신 시스템에서의 무선자원 향상 방법, 상태정보 보고방법 및 수신장치 |
| KR101526971B1 (ko) * | 2007-06-18 | 2015-06-11 | 엘지전자 주식회사 | 방송 또는 멀티캐스트 서비스 송수신 방법 및 단말 |
| WO2008156309A1 (en) * | 2007-06-18 | 2008-12-24 | Lg Electronics Inc. | Control channel reception method for receiving broadcast or multicast service |
| HUE033683T2 (en) | 2007-06-18 | 2017-12-28 | Lg Electronics Inc | Method and user equipment for performing uplink synchronization in wireless communication system |
| WO2008156308A2 (en) * | 2007-06-18 | 2008-12-24 | Lg Electronics Inc. | Paging information transmission method for effective call setup |
| EP2168270B1 (en) * | 2007-09-20 | 2016-02-17 | LG Electronics Inc. | A method for handling correctly received but header compression failed packets |
| KR101387537B1 (ko) * | 2007-09-20 | 2014-04-21 | 엘지전자 주식회사 | 성공적으로 수신했으나 헤더 압축 복원에 실패한 패킷의 처리 방법 |
| EP2223503A1 (en) | 2007-12-14 | 2010-09-01 | Thomson Licensing | Apparatus and method for simulcast over a variable bandwidth channel |
| EP2225840A1 (en) | 2007-12-18 | 2010-09-08 | Thomson Licensing | Apparatus and method for file size estimation over broadcast networks |
| US8484162B2 (en) | 2008-06-24 | 2013-07-09 | Commvault Systems, Inc. | De-duplication systems and methods for application-specific data |
| FR2933213A1 (fr) | 2008-06-30 | 2010-01-01 | Thomson Licensing | Methode d'affichage d'interface utilisateur et methode d'emission correspondante |
| JP2010081459A (ja) * | 2008-09-29 | 2010-04-08 | Hitachi Ltd | Vod受信再生装置 |
| US8775665B2 (en) * | 2009-02-09 | 2014-07-08 | Citrix Systems, Inc. | Method for controlling download rate of real-time streaming as needed by media player |
| US8930306B1 (en) | 2009-07-08 | 2015-01-06 | Commvault Systems, Inc. | Synchronized data deduplication |
| US8626621B2 (en) * | 2010-03-02 | 2014-01-07 | Microsoft Corporation | Content stream management |
| US8488942B2 (en) * | 2010-06-28 | 2013-07-16 | Cox Communications, Inc. | Bookmark exchange |
| US8578109B2 (en) | 2010-09-30 | 2013-11-05 | Commvault Systems, Inc. | Systems and methods for retaining and using data block signatures in data protection operations |
| US8364652B2 (en) | 2010-09-30 | 2013-01-29 | Commvault Systems, Inc. | Content aligned block-based deduplication |
| US9020900B2 (en) | 2010-12-14 | 2015-04-28 | Commvault Systems, Inc. | Distributed deduplicated storage system |
| US9116850B2 (en) | 2010-12-14 | 2015-08-25 | Commvault Systems, Inc. | Client-side repository in a networked deduplicated storage system |
| US9252916B2 (en) | 2012-02-13 | 2016-02-02 | Affirmed Networks, Inc. | Mobile video delivery |
| US20130282868A1 (en) * | 2012-04-23 | 2013-10-24 | Jae Chung | Integral Controller Based Pacing for HTTP Pseudo-streaming |
| US9218376B2 (en) | 2012-06-13 | 2015-12-22 | Commvault Systems, Inc. | Intelligent data sourcing in a networked storage system |
| CN102917277B (zh) * | 2012-10-29 | 2015-01-21 | 清华大学深圳研究生院 | 一种使用广播实现点播的内容分片分配方法 |
| US9665591B2 (en) | 2013-01-11 | 2017-05-30 | Commvault Systems, Inc. | High availability distributed deduplicated storage system |
| US20150089073A1 (en) | 2013-09-25 | 2015-03-26 | Ericsson Television Inc | System and method for effectuating fast channel change in an adpative streaming environment |
| US9444856B2 (en) * | 2013-09-25 | 2016-09-13 | Ericsson Ab | System and method for managing adjacent channels in an adaptive streaming environment |
| US20150089072A1 (en) * | 2013-09-25 | 2015-03-26 | Ericsson Television Inc | System and method for managing adjacent channels in an adaptive streaming environment |
| US10380072B2 (en) | 2014-03-17 | 2019-08-13 | Commvault Systems, Inc. | Managing deletions from a deduplication database |
| US9633056B2 (en) | 2014-03-17 | 2017-04-25 | Commvault Systems, Inc. | Maintaining a deduplication database |
| US9852026B2 (en) | 2014-08-06 | 2017-12-26 | Commvault Systems, Inc. | Efficient application recovery in an information management system based on a pseudo-storage-device driver |
| US11249858B2 (en) | 2014-08-06 | 2022-02-15 | Commvault Systems, Inc. | Point-in-time backups of a production application made accessible over fibre channel and/or ISCSI as data sources to a remote application by representing the backups as pseudo-disks operating apart from the production application and its host |
| US9575673B2 (en) | 2014-10-29 | 2017-02-21 | Commvault Systems, Inc. | Accessing a file system using tiered deduplication |
| US10339106B2 (en) | 2015-04-09 | 2019-07-02 | Commvault Systems, Inc. | Highly reusable deduplication database after disaster recovery |
| US20160350391A1 (en) | 2015-05-26 | 2016-12-01 | Commvault Systems, Inc. | Replication using deduplicated secondary copy data |
| US9766825B2 (en) | 2015-07-22 | 2017-09-19 | Commvault Systems, Inc. | Browse and restore for block-level backups |
| US10310953B2 (en) | 2015-12-30 | 2019-06-04 | Commvault Systems, Inc. | System for redirecting requests after a secondary storage computing device failure |
| US10296368B2 (en) | 2016-03-09 | 2019-05-21 | Commvault Systems, Inc. | Hypervisor-independent block-level live browse for access to backed up virtual machine (VM) data and hypervisor-free file-level recovery (block-level pseudo-mount) |
| US10740193B2 (en) | 2017-02-27 | 2020-08-11 | Commvault Systems, Inc. | Hypervisor-independent reference copies of virtual machine payload data based on block-level pseudo-mount |
| US10664352B2 (en) | 2017-06-14 | 2020-05-26 | Commvault Systems, Inc. | Live browsing of backed up data residing on cloned disks |
| EP3747174B1 (en) | 2018-02-02 | 2023-06-07 | Microsoft Technology Licensing, LLC | Estimating bandwidth savings for adaptive bit rate streaming |
| US20190297358A1 (en) * | 2018-02-28 | 2019-09-26 | Multichoice Support Services (Pty) Ltd | Systems and methods for customizing broadcast video |
| US11010258B2 (en) | 2018-11-27 | 2021-05-18 | Commvault Systems, Inc. | Generating backup copies through interoperability between components of a data storage management system and appliances for data storage and deduplication |
| US11698727B2 (en) | 2018-12-14 | 2023-07-11 | Commvault Systems, Inc. | Performing secondary copy operations based on deduplication performance |
| US20200327017A1 (en) | 2019-04-10 | 2020-10-15 | Commvault Systems, Inc. | Restore using deduplicated secondary copy data |
| KR102323342B1 (ko) * | 2019-04-26 | 2021-11-08 | 주식회사 와이바이오로직스 | IL-17A 및 TNF-α에 특이적으로 결합하는 이중표적 항체 |
| US11463264B2 (en) | 2019-05-08 | 2022-10-04 | Commvault Systems, Inc. | Use of data block signatures for monitoring in an information management system |
| US20210173811A1 (en) | 2019-12-04 | 2021-06-10 | Commvault Systems, Inc. | Optimizing the restoration of deduplicated data stored in multi-node replicated file systems |
| US11687424B2 (en) | 2020-05-28 | 2023-06-27 | Commvault Systems, Inc. | Automated media agent state management |
Family Cites Families (83)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4280221A (en) | 1979-05-31 | 1981-07-21 | The Boeing Company | Digital data communication system |
| US4945563A (en) | 1986-11-05 | 1990-07-31 | Satellite Technology Services, Inc. | Video system and method for controlled viewing and videotaping |
| US4963995A (en) | 1988-12-27 | 1990-10-16 | Explore Technology, Inc. | Audio/video transceiver apparatus including compression means |
| US5701582A (en) | 1989-08-23 | 1997-12-23 | Delta Beta Pty. Ltd. | Method and apparatus for efficient transmissions of programs |
| US5421031A (en) | 1989-08-23 | 1995-05-30 | Delta Beta Pty. Ltd. | Program transmission optimisation |
| US5089982A (en) | 1990-05-24 | 1992-02-18 | Grumman Aerospace Corporation | Two dimensional fast Fourier transform converter |
| US5557316A (en) | 1990-09-28 | 1996-09-17 | Ictv, Inc. | System for distributing broadcast television services identically on a first bandwidth portion of a plurality of express trunks and interactive services over a second bandwidth portion of each express trunk on a subscriber demand basis |
| US5132992A (en) | 1991-01-07 | 1992-07-21 | Paul Yurt | Audio and video transmission and receiving system |
| US5745758A (en) * | 1991-09-20 | 1998-04-28 | Shaw; Venson M. | System for regulating multicomputer data transfer by allocating time slot to designated processing task according to communication bandwidth capabilities and modifying time slots when bandwidth change |
| US5604528A (en) | 1992-06-10 | 1997-02-18 | Scientific-Atlanta, Inc. | Method and apparatus for providing periodic subscription television services |
| JP3617089B2 (ja) * | 1993-12-27 | 2005-02-02 | 株式会社日立製作所 | 映像蓄積配送装置及び映像蓄積配送システム |
| US5521630A (en) | 1994-04-04 | 1996-05-28 | International Business Machines Corporation | Frame sampling scheme for video scanning in a video-on-demand system |
| US5768539A (en) | 1994-05-27 | 1998-06-16 | Bell Atlantic Network Services, Inc. | Downloading applications software through a broadcast channel |
| US5606359A (en) | 1994-06-30 | 1997-02-25 | Hewlett-Packard Company | Video on demand system with multiple data sources configured to provide vcr-like services |
| US5619249A (en) | 1994-09-14 | 1997-04-08 | Time Warner Entertainment Company, L.P. | Telecasting service for providing video programs on demand with an interactive interface for facilitating viewer selection of video programs |
| US5612742A (en) | 1994-10-19 | 1997-03-18 | Imedia Corporation | Method and apparatus for encoding and formatting data representing a video program to provide multiple overlapping presentations of the video program |
| WO1996017306A2 (en) | 1994-11-21 | 1996-06-06 | Oracle Corporation | Media server |
| US5654746A (en) | 1994-12-01 | 1997-08-05 | Scientific-Atlanta, Inc. | Secure authorization and control method and apparatus for a game delivery service |
| EP0716370A3 (en) * | 1994-12-06 | 2005-02-16 | International Business Machines Corporation | A disk access method for delivering multimedia and video information on demand over wide area networks |
| US5632681A (en) | 1995-03-07 | 1997-05-27 | International Business Machines Corporation | Universal electronic video game renting/distributing system |
| KR960036641A (ko) | 1995-03-21 | 1996-10-28 | 김광호 | 저속의 비디오비트열을 복호하는 고속용 복호화장치 |
| JP3372004B2 (ja) | 1995-03-31 | 2003-01-27 | ソニー株式会社 | 電子番組ガイド装置、電子番組ガイドシステム、および電子番組ガイド方法 |
| US5751282A (en) | 1995-06-13 | 1998-05-12 | Microsoft Corporation | System and method for calling video on demand using an electronic programming guide |
| US5790423A (en) | 1995-06-14 | 1998-08-04 | Audible, Inc. | Interactive audio transmission receiving and playback system |
| US5724646A (en) | 1995-06-15 | 1998-03-03 | International Business Machines Corporation | Fixed video-on-demand |
| US5812786A (en) | 1995-06-21 | 1998-09-22 | Bell Atlantic Network Services, Inc. | Variable rate and variable mode transmission system |
| US5781228A (en) | 1995-09-07 | 1998-07-14 | Microsoft Corporation | Method and system for displaying an interactive program with intervening informational segments |
| US5751336A (en) * | 1995-10-12 | 1998-05-12 | International Business Machines Corporation | Permutation based pyramid block transmission scheme for broadcasting in video-on-demand storage systems |
| US5949948A (en) | 1995-11-20 | 1999-09-07 | Imedia Corporation | Method and apparatus for implementing playback features for compressed video data |
| JP3181058B2 (ja) | 1995-12-01 | 2001-07-03 | 松下電器産業株式会社 | データ転送ネットワークにおける情報処理装置およびその方法 |
| WO1997021310A2 (en) | 1995-12-07 | 1997-06-12 | Philips Electronics N.V. | A method and device for encoding, transferring and decoding a non-pcm bitstream between a digital versatile disc device and a multi-channel reproduction apparatus |
| US5751709A (en) * | 1995-12-28 | 1998-05-12 | Lucent Technologies Inc. | Adaptive time slot scheduling apparatus and method for end-points in an ATM network |
| US5594491A (en) * | 1995-12-29 | 1997-01-14 | Vxl/Hcr Technology Corporation | Near-video-on-demand digital video distribution system utilizing asymmetric digital subscriber lines |
| US6018765A (en) | 1996-01-23 | 2000-01-25 | Storage Concepts, Inc. | Multi-channel multimedia data server |
| CA2196622C (en) * | 1996-02-06 | 2001-10-16 | Hiroshi Jinzenji | Network data distribution system |
| US6128467A (en) | 1996-03-21 | 2000-10-03 | Compaq Computer Corporation | Crosspoint switched multimedia system |
| US6012080A (en) * | 1996-03-27 | 2000-01-04 | Lucent Technologies Inc. | Method and apparatus for providing enhanced pay per view in a video server |
| CA2250791C (en) * | 1996-04-01 | 2005-06-07 | Macrovision Corporation | A method for controlling copy protection in digital video networks |
| US5831662A (en) * | 1996-04-04 | 1998-11-03 | Hughes Electronics Corporation | Near on-demand digital information delivery system and method using signal fragmentation and sequencing to reduce average bandwidth and peak bandwidth variability |
| US5961603A (en) | 1996-04-10 | 1999-10-05 | Worldgate Communications, Inc. | Access system and method for providing interactive access to an information source through a networked distribution system |
| JP3934174B2 (ja) * | 1996-04-30 | 2007-06-20 | 株式会社エクシング | 中継サーバ |
| US5892535A (en) | 1996-05-08 | 1999-04-06 | Digital Video Systems, Inc. | Flexible, configurable, hierarchical system for distributing programming |
| US5778187A (en) * | 1996-05-09 | 1998-07-07 | Netcast Communications Corp. | Multicasting method and apparatus |
| US5995092A (en) | 1996-08-30 | 1999-11-30 | Yuen; Henry C. | Television system and method for subscription of information services |
| US5856973A (en) | 1996-09-10 | 1999-01-05 | Thompson; Kenneth M. | Data multiplexing in MPEG server to decoder systems |
| US6199076B1 (en) | 1996-10-02 | 2001-03-06 | James Logan | Audio program player including a dynamic program selection controller |
| US6049332A (en) * | 1996-10-07 | 2000-04-11 | Sony Corporation | Method and apparatus for the scheduling and ordering of elements in a multimedia environment |
| US6055560A (en) | 1996-11-08 | 2000-04-25 | International Business Machines Corporation | System and method to provide interactivity for a networked video server |
| US5978649A (en) | 1996-12-27 | 1999-11-02 | Hughes Electronics Corporation | Method and apparatus for dynamic conditional channel authorization in a broadcast system |
| US6282195B1 (en) | 1997-01-09 | 2001-08-28 | Silicon Graphics, Inc. | Packetized data transmissions in a switched router architecture |
| US6112023A (en) * | 1997-02-24 | 2000-08-29 | Lucent Technologies Inc. | Scheduling-based hardware-software co-synthesis of heterogeneous distributed embedded systems |
| US5909594A (en) * | 1997-02-24 | 1999-06-01 | Silicon Graphics, Inc. | System for communications where first priority data transfer is not disturbed by second priority data transfer and where allocated bandwidth is removed when process terminates abnormally |
| US6169767B1 (en) | 1997-03-10 | 2001-01-02 | Sarnoff Corporation | Universal network interface module |
| JP3354433B2 (ja) * | 1997-04-25 | 2002-12-09 | 株式会社日立製作所 | ネットワーク通信システム |
| EP0880246A3 (en) | 1997-05-15 | 1999-12-01 | Matsushita Electric Industrial Co., Ltd. | Compressed code decoding device and audio decoding device |
| US6219335B1 (en) * | 1997-06-20 | 2001-04-17 | Nortel Networks Corporation | Method and apparatus for locating and isolating a fault within a token ring network |
| KR100268498B1 (ko) * | 1997-06-26 | 2000-10-16 | 윤종용 | 셋탑박스를이용한pc통신및인터넷서비스장치와그방법 |
| US6028847A (en) * | 1997-07-31 | 2000-02-22 | Hewlett-Packard Company | Multiple stream traffic emulator |
| US6167085A (en) * | 1997-07-31 | 2000-12-26 | Sony Corporation | Image data compression |
| US6263114B1 (en) * | 1997-07-31 | 2001-07-17 | Sony Corporation | Apparatus and method for compressing image data by determining a quantization factor which provides more efficient use of an available bit rate |
| KR100248427B1 (ko) | 1997-08-12 | 2000-03-15 | 이계철 | 압축 영역에서의 엠펙 부호 영상의 화면 분할 장치 및 그 방법 |
| US6011798A (en) * | 1997-08-15 | 2000-01-04 | Intel Corporation | Adaptive transmit rate control scheduler |
| US6049539A (en) | 1997-09-15 | 2000-04-11 | Worldgate Communications, Inc. | Access system and method for providing interactive access to an information source through a networked distribution system |
| US6055571A (en) | 1997-11-20 | 2000-04-25 | Nec Usa, Inc. | Computer network with microeconomic flow control |
| US6029045A (en) | 1997-12-09 | 2000-02-22 | Cogent Technology, Inc. | System and method for inserting local content into programming content |
| US6072808A (en) * | 1997-12-23 | 2000-06-06 | Intel Corporation | Method of providing and retrieving a data segment |
| US6272546B1 (en) * | 1998-03-12 | 2001-08-07 | Sony Corporation | Method of and apparatus for managing resource allocation and bandwidth overflow in a cooperative, distributed computing environment |
| US6198723B1 (en) * | 1998-04-14 | 2001-03-06 | Paxonet Communications, Inc. | Asynchronous transfer mode traffic shapers |
| US6349098B1 (en) | 1998-04-17 | 2002-02-19 | Paxonet Communications, Inc. | Method and apparatus for forming a virtual circuit |
| US6018359A (en) | 1998-04-24 | 2000-01-25 | Massachusetts Institute Of Technology | System and method for multicast video-on-demand delivery system |
| US6160546A (en) | 1998-05-01 | 2000-12-12 | United Video Properties, Inc. | Program guide systems and methods |
| US6157949A (en) | 1998-05-28 | 2000-12-05 | Industrial Technology Research Institute | Data placement on direct access devices for media servers with cyclic re-broadcast capability |
| US6266369B1 (en) | 1998-06-09 | 2001-07-24 | Worldgate Service, Inc. | MPEG encoding technique for encoding web pages |
| US6237135B1 (en) * | 1998-06-18 | 2001-05-22 | Borland Software Corporation | Development system with visual design tools for creating and maintaining Java Beans components |
| US6754905B2 (en) * | 1998-07-23 | 2004-06-22 | Diva Systems Corporation | Data structure and methods for providing an interactive program guide |
| US6233389B1 (en) | 1998-07-30 | 2001-05-15 | Tivo, Inc. | Multimedia time warping system |
| US6222530B1 (en) * | 1998-08-21 | 2001-04-24 | Corporate Media Partners | System and method for a master scheduler |
| US6263019B1 (en) | 1998-10-09 | 2001-07-17 | Matsushita Electric Industrial Co., Ltd. | Variable rate MPEG-2 video syntax processor |
| US6215526B1 (en) | 1998-11-06 | 2001-04-10 | Tivo, Inc. | Analog video tagging and encoding system |
| US6219355B1 (en) | 1998-11-30 | 2001-04-17 | Qwest Communications International Inc. | Video and data communication system |
| US6370688B1 (en) | 1999-05-26 | 2002-04-09 | Enounce, Inc. | Method and apparatus for server broadcast of time-converging multi-media streams |
| US6502139B1 (en) | 1999-06-01 | 2002-12-31 | Technion Research And Development Foundation Ltd. | System for optimizing video on demand transmission by partitioning video program into multiple segments, decreasing transmission rate for successive segments and repeatedly, simultaneously transmission |
| JP4253830B2 (ja) * | 2000-02-10 | 2009-04-15 | ソニー株式会社 | 情報記録装置、情報再生装置、情報記録再生装置及び方法 |
-
2000
- 2000-05-31 US US09/584,832 patent/US6557030B1/en not_active Expired - Fee Related
- 2000-08-22 CN CN00808471A patent/CN1355904A/zh active Pending
- 2000-08-22 BR BR0017253-7A patent/BR0017253A/pt not_active IP Right Cessation
- 2000-08-22 IL IL15276200A patent/IL152762A0/xx unknown
- 2000-08-22 PL PL00359130A patent/PL359130A1/xx unknown
- 2000-08-22 EP EP00955818A patent/EP1285345A4/en not_active Withdrawn
- 2000-08-22 JP JP2002500207A patent/JP2003535531A/ja active Pending
- 2000-08-22 AU AU2000267958A patent/AU2000267958A1/en not_active Abandoned
- 2000-08-22 KR KR1020027016327A patent/KR20030071481A/ko not_active Withdrawn
- 2000-08-22 EA EA200201286A patent/EA200201286A1/ru unknown
- 2000-08-22 MX MXPA02011841A patent/MXPA02011841A/es unknown
- 2000-08-22 WO PCT/US2000/022989 patent/WO2001093060A1/en not_active Ceased
- 2000-08-22 CA CA002404611A patent/CA2404611A1/en not_active Abandoned
- 2000-11-10 US US09/709,948 patent/US6725267B1/en not_active Expired - Fee Related
-
2001
- 2001-04-02 TW TW090107855A patent/TW508949B/zh not_active IP Right Cessation
- 2001-04-24 WO PCT/US2001/013281 patent/WO2001093585A1/en not_active Ceased
- 2001-04-24 EP EP01927334A patent/EP1285533A1/en not_active Withdrawn
- 2001-05-31 EA EA200201288A patent/EA200201288A1/ru unknown
- 2001-05-31 KR KR1020027016328A patent/KR20030034081A/ko not_active Withdrawn
-
2002
- 2002-06-24 US US10/179,800 patent/US20030037123A1/en not_active Abandoned
- 2002-06-25 US US10/179,745 patent/US20030105834A1/en not_active Abandoned
- 2002-11-07 US US10/291,317 patent/US20030140122A1/en not_active Abandoned
- 2002-11-13 ZA ZA200209222A patent/ZA200209222B/en unknown
- 2002-11-13 ZA ZA200209220A patent/ZA200209220B/xx unknown
- 2002-11-13 ZA ZA200209221A patent/ZA200209221B/xx unknown
- 2002-11-13 ZA ZA200209223A patent/ZA200209223B/en unknown
- 2002-11-14 NO NO20025710A patent/NO20025710L/no not_active Application Discontinuation
Also Published As
| Publication number | Publication date |
|---|---|
| WO2001093060A1 (en) | 2001-12-06 |
| AU2000267958A1 (en) | 2001-12-11 |
| US6725267B1 (en) | 2004-04-20 |
| US20030140122A1 (en) | 2003-07-24 |
| ZA200209220B (en) | 2003-09-01 |
| KR20030034081A (ko) | 2003-05-01 |
| EA200201288A1 (ru) | 2003-08-28 |
| EP1285533A1 (en) | 2003-02-26 |
| ZA200209222B (en) | 2003-09-11 |
| MXPA02011841A (es) | 2003-12-11 |
| BR0017253A (pt) | 2003-11-04 |
| NO20025710L (no) | 2003-01-16 |
| US20030037123A1 (en) | 2003-02-20 |
| CN1355904A (zh) | 2002-06-26 |
| EA200201286A1 (ru) | 2003-08-28 |
| EP1285345A1 (en) | 2003-02-26 |
| ZA200209221B (en) | 2003-09-10 |
| WO2001093585A1 (en) | 2001-12-06 |
| NO20025710D0 (no) | 2002-11-14 |
| TW508949B (en) | 2002-11-01 |
| IL152762A0 (en) | 2003-06-24 |
| EP1285345A4 (en) | 2004-06-02 |
| US20030105834A1 (en) | 2003-06-05 |
| JP2003535531A (ja) | 2003-11-25 |
| CA2404611A1 (en) | 2001-12-06 |
| ZA200209223B (en) | 2003-09-11 |
| US6557030B1 (en) | 2003-04-29 |
| PL359130A1 (en) | 2004-08-23 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US6725267B1 (en) | Prefetched data in a digital broadcast system | |
| US20020175998A1 (en) | Data-on-demand digital broadcast system utilizing prefetch data transmission | |
| US20030084461A1 (en) | Method and apparatus for transmitting non-VOD services | |
| US20020023267A1 (en) | Universal digital broadcast system and methods | |
| CA2406717A1 (en) | Universal stb architectures and control methods | |
| US20020026501A1 (en) | Decreased idle time and constant bandwidth data-on-demand broadcast delivery matrices | |
| US20020138845A1 (en) | Methods and systems for transmitting delayed access client generic data-on demand services | |
| JP5038574B2 (ja) | 放送システムのためのビデオ・オン・デマンドサービスを提供する方法 | |
| CN100405845C (zh) | 用于传输延迟访问客户通用数据点播服务的方法和系统 | |
| CA2428829A1 (en) | Decreased idle time and constant bandwidth data-on-demand broadcast delivery matrices | |
| KR20030092105A (ko) | 프리페치 데이터 전송을 사용하는 주문형 데이터 디지털방송 시스템 | |
| TWI223563B (en) | Methods and systems for transmitting delayed access client generic data-on-demand services | |
| CA2406714A1 (en) | Universal digital broadcast system and methods | |
| KR20030051800A (ko) | 감소된 공전 시간과 감소된 대역폭의 주문형 데이터 방송전달 매트릭스 | |
| KR20040063795A (ko) | 지연된 억세스 클라이언트 데이터 및 요청의 전송 | |
| EP1402331A2 (en) | Methods and systems for transmitting delayed access client generic data-on demand services | |
| HK1047633A (en) | Systems and methods for providing video-on-demand services for broadcasting systems |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PA0105 | International application |
Patent event date: 20021129 Patent event code: PA01051R01D Comment text: International Patent Application |
|
| PG1501 | Laying open of application | ||
| PC1203 | Withdrawal of no request for examination | ||
| WITN | Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid |