Movatterモバイル変換


[0]ホーム

URL:


CN100405845C - Method and system for transmission delay access to customer generic data-on-demand services - Google Patents

Method and system for transmission delay access to customer generic data-on-demand services
Download PDF

Info

Publication number
CN100405845C
CN100405845CCNB021182000ACN02118200ACN100405845CCN 100405845 CCN100405845 CCN 100405845CCN B021182000 ACNB021182000 ACN B021182000ACN 02118200 ACN02118200 ACN 02118200ACN 100405845 CCN100405845 CCN 100405845C
Authority
CN
China
Prior art keywords
data
time
file
blocks
data 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.)
Expired - Fee Related
Application number
CNB021182000A
Other languages
Chinese (zh)
Other versions
CN1411279A (en
Inventor
黄炎
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Eaton Power Quality Corp
PrediWave Corp
Original Assignee
PrediWave Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US09/841,792external-prioritypatent/US20020023267A1/en
Priority claimed from US09/892,015external-prioritypatent/US20030208561A1/en
Priority claimed from US09/892,017external-prioritypatent/US20020026501A1/en
Priority claimed from US09/902,503external-prioritypatent/US20020049980A1/en
Priority claimed from US09/933,696external-prioritypatent/US20020059620A1/en
Priority claimed from US09/997,968external-prioritypatent/US20020138845A1/en
Application filed by PrediWave CorpfiledCriticalPrediWave Corp
Publication of CN1411279ApublicationCriticalpatent/CN1411279A/en
Application grantedgrantedCritical
Publication of CN100405845CpublicationCriticalpatent/CN100405845C/en
Anticipated expirationlegal-statusCritical
Expired - Fee Relatedlegal-statusCriticalCurrent

Links

Images

Classifications

Landscapes

Abstract

Translated fromChinese

一种用于传输客户通用数据块序列的DOD广播方法,包括:准备数据块的一个客户通用数据传输序列,其中所述的客户通用数据传输序列具有一个子优化的时间传送特性;按照所述的子优化传输序列将包含所述数据块序列的数据文件传输到多个客户,以便接收客户可以在预定的时间周期内开始访问所述的数据文件。准备所述序列包括:接收一个数据文件;规定时间间隔;根据所述的时间间隔将所述的数据文件分成多个数据块,以便每个数据块在所述的时间间隔期间是可显示的;确定发送所述的数据文件所要求的时隙数量,其中每个时隙具有基本上等于所述的时间间隔的持续时间;将所述多个数据块中至少一个分配给每个时隙。

A DOD broadcasting method for transmitting a client general data block sequence, comprising: preparing a client general data transmission sequence of data blocks, wherein said client general data transmission sequence has a sub-optimized time transfer characteristic; according to said A sub-optimized transfer sequence transfers the data file containing the sequence of data blocks to a plurality of clients such that receiving clients can begin accessing the data file within a predetermined time period. Preparing said sequence comprises: receiving a data file; specifying a time interval; dividing said data file into a plurality of data blocks according to said time interval, so that each data block is displayable during said time interval; determining a number of time slots required to transmit said data file, wherein each time slot has a duration substantially equal to said time interval; and assigning at least one of said plurality of data blocks to each time slot.

Description

Translated fromChinese
用于传输延迟访问客户通用数据点播服务的方法和系统Method and system for transmission delay access to customer generic data-on-demand services

发明领域field of invention

本发明涉及数据点播系统,特别地本发明涉及数据传输规划。The present invention relates to data-on-demand systems, and in particular the present invention relates to data transmission planning.

发明背景Background of the invention

视频点播(VOD)是一种类型的数据点播(DOD)系统,在该VOD系统中,根据需求,由一个服务器或服务器网络提供视频数据文件给一个或多个客户。Video on Demand (VOD) is a type of Data on Demand (DOD) system in which a server or network of servers provides video data files to one or more clients on demand.

在传统的VOD体系中,服务器或服务器网络与客户按照标准的层级客户-服务器模型进行通信。例如一个客户向一个服务器发送一个数据文件请求(例如视频数据文件)。作为对客户请求的响应,服务器向客户发送请求的文件。在标准的客户-服务器模型中,客户对数据文件请求可以由一个或多个服务器来完成,客户可以在本地的非易失存储器上存储所接收的任何数据文件以备将来使用,该标准的客户-服务器模式要求双工通信基础结构。目前双工通信要求建立新的基础结构,因为已有的电缆只能提供单工通信。双工通信基础结构的示例是混合光纤同轴电缆(HFC)或全光纤的基础结构。替换已有的电缆是非常费钱的并且所产生的服务对大多数人来说是负担不起的。In a traditional VOD system, a server or server network communicates with clients in a standard hierarchical client-server model. For example, a client sends a request for a data file (such as a video data file) to a server. In response to the client's request, the server sends the requested file to the client. In the standard client-server model, the client's request for data files can be completed by one or more servers, and the client can store any received data files on the local non-volatile memory for future use. The standard client - Server mode requires a duplex communication infrastructure. Duplex communication currently requires new infrastructure because existing cables can only provide simplex communication. Examples of duplex communication infrastructures are hybrid fiber coax (HFC) or all-fiber infrastructures. Replacing existing cables is very costly and the resulting service is unaffordable for most people.

而且,当服务提供商(如电缆公司)向大量的客户提供VOD服务时,标准的客户服务器模式具有很多的限制。一种限制是该服务提供商必须实施一种机制以连续地听取并满足来自该网络内每个客户的每个请求,因此可以接收服务的客户的数量取决于这种机制的容量。一种机制使用大量并行计算机,该计算机具有大且快速的磁盘阵列作为本地服务器。但是,即便是最快的已有本地服务器一次也能传输视频数据流给大约1000-2000客户。因此,为了服务于更多的客户,本地服务器的数量必须增加,增加本地服务器就要求有更多的上层服务器来维护对本地服务器的控制。Furthermore, the standard client-server model has many limitations when a service provider (such as a cable company) provides VOD services to a large number of customers. One limitation is that the service provider must implement a mechanism to continuously listen to and fulfill every request from every client within the network, so the number of clients that can receive service depends on the capacity of this mechanism. One mechanism uses a massively parallel computer with a large and fast disk array acting as a local server. However, even the fastest existing local server can stream video data to about 1000-2000 clients at a time. Therefore, in order to serve more clients, the number of local servers must be increased, and increasing local servers requires more upper-level servers to maintain control over the local servers.

标准客户-服务器模型的另一个限制是每个客户要求有自己的带宽,因此整个需求带宽正比于订户的数量。在本地服务器内的缓存存储器已经用于提高带宽限制,但是使用缓存存储器并不能解决问题,因为缓存存储器是有限制的。Another limitation of the standard client-server model is that each client requires its own bandwidth, so the overall required bandwidth is proportional to the number of subscribers. Caching memory in the local server has been used to improve the bandwidth limit, but using the cache memory does not solve the problem because the cache memory is limited.

目前,为了让更多的客户能付得起视频点播业务,现有业务提供商正在本地服务器的性能上增加每个本地服务器上客户的比例。一般地,能向1000个客户提供业务的本地服务器实际上可以向10000个客户提交业务。这种技术在大多数的订户不同时订购视频时是可以工作的。但是,该技术是失败的,因为大多数的客户很可能想同时观看视频(例如晚上或周末),从而导致本地服务器在这种尖峰时刻变得过载。At present, in order to allow more customers to afford the video-on-demand service, existing service providers are increasing the proportion of customers on each local server in terms of the performance of the local server. Generally, a local server that can provide services to 1,000 clients can actually submit services to 10,000 clients. This technique works when most of the subscribers do not subscribe to the video at the same time. However, this technique fails because most of the clients are likely to want to watch the video at the same time (e.g. evening or weekend), causing the local server to become overloaded during such peak times.

因此,希望提供一种在虚拟的任何传输介质(不用替换已有基础结构)上能提供点播业务给大量的客户的系统。而且,希望提供一种客户通用广播系统,该系统具有与订户无关的传输带宽,还希望该系统能向客户提供要求减少传输带宽的通用的子优化的数据点播业务。Therefore, it is desirable to provide a system that can provide on-demand services to a large number of customers over virtually any transmission medium (without replacing existing infrastructure). Furthermore, it is desirable to provide a customer-generic broadcasting system which has subscriber-independent transmission bandwidth and which can also provide customers with a general-purpose sub-optimized data-on-demand service requiring reduced transmission bandwidth.

发明概述Summary of the invention

本发明提供一种DOD广播系统,该系统能同时在窄带宽上传输一个或多个数据文件(作为减少的带宽客户通用序列数据块)给大量的客户,而不要求双向通信。本发明进一步提供一个STB,它能通过一个客户通用格式在正由客户订购的数据文件的短时间内开始播放数据文件广播。而且,通过在开始播放数据文件之前延迟客户访问时间以允许智能的STB装载数据文件的各部分而提供一种下载数据文件的更为有效的带宽方法。The present invention provides a DOD broadcast system capable of simultaneously transmitting one or more data files (as reduced bandwidth client common sequence data blocks) over a narrow bandwidth to a large number of clients without requiring two-way communication. The present invention further provides an STB capable of starting a data file broadcast within a short period of time of the data file being ordered by the customer through a customer common format. Also, a more bandwidth efficient method of downloading data files is provided by delaying the client access time before starting to play the data files to allow the intelligent STB to load portions of the data files.

简要地说,本发明的一个方面体现在用于传输多个数据文件的数据点播(DOD)广播系统,其中每个数据文件是作为一个减少的客户通用序列数据块传输的,包括:DOD广播服务器,用于广播多个数据文件;与该DOD广播服务器通信地连接的传输介质;多个接收器,通过该传输介质与DOD广播服务器通信地连接;其中DOD广播服务器重复地以减少的客户通用格式将多个数据文件通过传输介质传输到多个接收器;其中接收器运行时请求对应于所选的数据文件的验证信息;其中接收器运行时进一步接收验证信息;以及其中接收器运行时在预定的时间周期后进一步显示所选数据文件的一部分给用户,其中预定的时间周期使接收器在开始显示数据文件之前存储一部分数据文件。Briefly, one aspect of the present invention is embodied in a data-on-demand (DOD) broadcast system for transmitting a plurality of data files, wherein each data file is transmitted as a reduced client generic sequence data block, comprising: a DOD broadcast server , for broadcasting a plurality of data files; a transmission medium communicatively coupled to the DOD broadcast server; a plurality of receivers, communicatively coupled to the DOD broadcast server via the transmission medium; wherein the DOD broadcast server repeats in a reduced client common format A plurality of data files are transmitted to a plurality of receivers through a transmission medium; wherein the receiver requests verification information corresponding to the selected data files when running; further receives the verification information when the receiver runs; and wherein the receiver runs at a predetermined A portion of the selected data file is further displayed to the user after a predetermined time period, wherein the predetermined time period causes the receiver to store the portion of the data file before beginning to display the data file.

本发明的另一个实施例是公开一种用于传输子优化的数据块序列的数据点播(DOD)广播方法,包括:准备一个子优化数据传输序列数据块,其中在序列中没有两个相邻的数据块是相同的;以一种非客户特定方式传输包含有符合子优化传输序列的该序列数据块的数据文件给多个客户,以便一个接收客户可以在预定的时间周期内开始访问数据文件。而且,该预定的时间周期具有一定的持续时间,并且其中该持续时间响应于包含在至少一个序列数据块中的信息。准备子优化数据传输序列的步骤包括:接收一个数据文件;规定一个时间间隔;根据时间间隔将数据文件分解成多个数据块以便每个数据块在该时间间隔期间是可显示的;确定发送数据文件所要求的时隙数量,其中每个时隙具有基本上等于该时间间隔的持续时间;将多个数据块中的至少一个分配给每个时间间隙。Another embodiment of the present invention discloses a data-on-demand (DOD) broadcast method for transmitting a sub-optimized sequence of data blocks, comprising: preparing a sub-optimized data transmission sequence of data blocks, wherein there are no two adjacent data blocks in the sequence data blocks are the same; transmit a data file containing the sequence of data blocks conforming to a sub-optimized transfer sequence to multiple clients in a non-client-specific manner so that a receiving client can begin accessing the data file within a predetermined time period . Also, the predetermined period of time has a duration, and wherein the duration is responsive to information contained in at least one sequence data block. The steps of preparing the sub-optimized data transfer sequence include: receiving a data file; specifying a time interval; decomposing the data file into a plurality of data blocks according to the time interval so that each data block is displayable during the time interval; determining sending data The number of time slots required by the file, where each time slot has a duration substantially equal to the time interval; at least one of the plurality of data blocks is assigned to each time slot.

数据点播系统包括第一组频道服务器,用于控制第一组频道服务器的中央控制服务器,连接到第一组频道服务器的第一组上变频器,以及用于通过传输介质传输数据的组合器/放大器。在一个示例的实施例中,该数据点播系统进一步包括一个用于监视该系统的频道监视模块,一个开关矩阵,第二组频道服务器以及第二组上变频器。该频道监视模块配置成向中央控制服务器报告何时发生了系统失效。作对来自频道监视模块的反应,该中央控制服务器指示开关矩阵以第二组频道服务器内的频道服务器替换第一组频道服务器内的有问题的频道服务器,以及用第二组上变频器内的一个上变频器替换第一组上变频器内的有问题的变频器。The data-on-demand system includes a first group of channel servers, a central control server for controlling the first group of channel servers, a first group of up-converters connected to the first group of channel servers, and a combiner/ amplifier. In an exemplary embodiment, the data-on-demand system further includes a channel monitoring module for monitoring the system, a switch matrix, a second set of channel servers, and a second set of up-converters. The channel monitoring module is configured to report to the central control server when a system failure occurs. In response from the channel monitoring module, the central control server instructs the switch matrix to replace the faulty channel server in the first set of channel servers with a channel server in the second set of channel servers, and to replace the channel server in question with a channel server in the second set of upconverters. The upconverter replaces the faulty converter in the first set of upconverters.

一种用于接收作为子优化数据块序列传输的数据文件的方法,包括:接收指示至少一个所选数据文件的用户输入;在预定的时间周期内在存储器位置存储子优化数据块序列的多个数据块中的至少一个;在该预定的时间周期过后向用户显示该数据文件的至少一第一部分;接收该子优化数据块序列的多个数据块中至少一个附加数据块;以及通过将所存储的数据块中的至少一个与该至少一个附加数据块组合来向用户显示该数据文件的至少一第二部分。A method for receiving data files transmitted as a sub-optimized sequence of data blocks, comprising: receiving user input indicating at least one selected data file; storing a plurality of data of the sub-optimized sequence of data blocks in a memory location for a predetermined period of time at least one of the blocks; displaying at least a first portion of the data file to the user after the predetermined period of time; receiving at least one additional data block in the plurality of data blocks of the sub-optimized sequence of data blocks; At least one of the data blocks is combined with the at least one additional data block to display at least a second portion of the data file to a user.

术语机顶盒并不限于连接到电视上的设备,还包括按照本发明的方法能接收广播传输的任何设备,包括高级电视系统和计算机。The term set top box is not limited to equipment connected to a television, but also includes any equipment capable of receiving broadcast transmissions according to the method of the present invention, including advanced television systems and computers.

附图的简要描述Brief description of the drawings

图1A描述按照本发明一个实施例的示例性的DOD系统;Figure 1A depicts an exemplary DOD system according to one embodiment of the present invention;

图1B描述按照本发明另一个实施例的示例性的DOD系统;FIG. 1B depicts an exemplary DOD system according to another embodiment of the present invention;

图2描述按照本发明一个实施例的示例性的频道服务器;Figure 2 depicts an exemplary channel server according to one embodiment of the present invention;

图3描述按照本发明一个实施例的示例性的机顶盒;Figure 3 depicts an exemplary set-top box according to one embodiment of the present invention;

图4描述按照本发明一个实施例的用于产生一个规划矩阵的示例的过程;Fig. 4 depicts the process for generating an example of a planning matrix according to one embodiment of the present invention;

图5描述按照本发明一个实施例的用于产生子优化规划矩阵的示例性过程;FIG. 5 depicts an exemplary process for generating a suboptimal planning matrix according to one embodiment of the present invention;

图6描述按照本发明一个实施例的用于显示利用子优化规划矩阵传输的数据文件的示例性的STB过程。FIG. 6 depicts an exemplary STB process for displaying a data file transferred using a sub-optimized planning matrix, according to one embodiment of the present invention.

本发明的详细描述Detailed description of the invention

本发明提供一种DOD广播系统,能同时在窄带宽上传输作为子优化序列数据块的一个或多个数据文件给大量的客户,而不需要双向的通信。本发明提供一种STB,能在客户正在订购的数据文件的短时间内开始播放数据文件。而且提供一种下载数据文件的更有效带宽方法,通过延迟客户访问时间以允许智能STB在开始播放数据文件之前装载数据文件的各部分。The present invention provides a DOD broadcast system capable of simultaneously transmitting one or more data files as sub-optimized sequence data blocks to a large number of clients over a narrow bandwidth without the need for two-way communication. The present invention provides an STB capable of starting playing a data file within a short time of the data file being ordered by a customer. It also provides a more bandwidth efficient method of downloading data files by delaying client access time to allow the intelligent STB to load portions of the data file before starting to play the data file.

在最小化传输带宽的同时最大化传输的DOD数据的某些潜在方法包括使用:常数带宽传送矩阵,以及降低闲时矩阵。所有这些及其方法在Khoi Hoang的上述参考发明中都得到公开。当这些方法按照时间优化方式向客户提供通用DOD业务时,作为与访问时间上的延迟的交换,也存在着向客户提供通用DOD广播业务的可能性,作为与访问时间延迟的交换,通用DOD广播业务进一步降低要求的传输带宽。Some potential methods of maximizing transmitted DOD data while minimizing transmission bandwidth include using: a constant bandwidth transmission matrix, and a reduced idle time matrix. All of these and their methods are disclosed in the above referenced invention by Khoi Hoang. While these methods provide clients with generic DOD services in a time-optimized manner, there is also the possibility of providing clients with generic DOD broadcast services in exchange for delays in access time. The business further reduces the required transmission bandwidth.

图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的输出是正交调幅(QAM)调制的中频(IF)信号,该信号具有适用于对应的上变频器106的频率。QAM调制的IF信号取决于所采纳的标准。当前美国采纳的标准是电缆数据服务接口规范(DOCSIS)标准,这要求大约43.75MHz的IF频率。上变频器106将从频道服务器104接收的IF信号转换为射频信号(RF信号)。这些包括频率和带宽的射频信号取决于期望的频道以及采用的标准。例如,在美国有线电视频道80的当前标准下,RF信号的频率大约是559.25MHz与大约6MHz的带宽,将上变频器106的输出施加给组合器/放大器108,该组合器/放大器108放大、调节并组合所接收的RF信号,然后将信号输出给传输介质10。Figure 1A depicts anexemplary DOD system 100 in accordance with one embodiment of the present invention. In this embodiment theDOD system 100 provides data files such as video files as needed. However, theDOD system 100 is not limited to providing video files on demand, but can also provide other data files such as on-demand game files.DOD system 100 includes acentral control server 102 ,external storage device 103 ,multiple channel servers 104 a - 104 n ,multiple upconverters 106 a - 106 n and combiner/amplifier 108 . Thecentral control server 102 controls the channel server 104, and thecentral storage device 103 stores data files in digital format. In an exemplary embodiment, the data files stored in thecentral storage device 103 are accessible through a standard network interface (eg, an Ethernet connection) by an authorized computer, such as thecentral control server 102, connected to the network interface. Each channel server 104 is assigned to a channel and is connected to an upconverter 106 . The channel server 104 provides data files retrieved from thecentral storage device 103 in accordance with instructions from thecentral control server 102 . The output of each channel server 104 is a quadrature amplitude modulation (QAM) modulated intermediate frequency (IF) signal having a frequency suitable for the corresponding upconverter 106 . The IF signal for QAM modulation depends on the adopted standard. The current US adopted standard is the Data Over Cable Service Interface Specification (DOCSIS) standard, which requires an IF frequency of approximately 43.75MHz. The up-converter 106 converts the IF signal received from the channel server 104 into a radio frequency signal (RF signal). The frequency and bandwidth of these RF signals depends on the desired channel and adopted standards. For example, at the current standard of US cable channel 80, an RF signal having a frequency of about 559.25 MHz and a bandwidth of about 6 MHz, the output of upconverter 106 is applied to combiner/amplifier 108, which amplifies, The received RF signals are conditioned and combined before being output to the transmission medium 10 .

在示例性的实施例中,中央控制服务器102包括一个图形用户接口(未示出)以使服务提供商能通过拖放式操作规划数据传送。而且,中央控制服务器102验证并按照传送矩阵控制频道服务器104启动或停止。在一个示例的实施例中,中央控制服务器102自动地选择一个频道并计算用于在所选的频道内的传送数据文件的传送矩阵。该中央控制服务器102提供脱机的增加、删除以及数据文件信息(如持续时间、目录、费率和/或简要描述等)的更新。而且,中面控制服务器102通过更新数据文件和存储其中的数据库而控制中央存储装置103。In the exemplary embodiment,central control server 102 includes a graphical user interface (not shown) to enable service providers to schedule data transfers through a drag-and-drop operation. Also, thecentral control server 102 verifies and controls the channel server 104 to start or stop according to the delivery matrix. In an exemplary embodiment, thecentral control server 102 automatically selects a channel and calculates a delivery matrix for delivering data files within the selected channel. Thecentral control server 102 provides offline addition, deletion, and updating of data file information (eg, duration, category, rate, and/or brief description, etc.). Also, the middleplane control server 102 controls thecentral storage device 103 by updating data files and databases stored therein.

在一个示例的实施例中,已有的有线电视系统120可以连续地将信号馈送进组合器/放大器108以提供非DOD业务给客户,因此按照本发明的DOD系统不会破坏现有的有线电视业务。In an exemplary embodiment, existingcable television system 120 can continuously feed signals into combiner/amplifier 108 to provide non-DOD services to customers, so that a DOD system according to the present invention does not disrupt existing cable television business.

图1B给出按照本发明的DOD系统的另一个示例性实施例。按照在图1A中所述的要素,DOD系统100包括一个开关矩阵112,频道监视模块114,一组备份频道服务器116a-116b,以及一套备份上变频器118a-118b。在一个实施例中,开关矩阵112物理地位于上变频器106与组合器/放大器108之间,开关矩阵112由客户控制服务器102控制,该频道监视模块114包括多个配置的机顶盒,其仿真潜在的客户,用于监视DOD系统100的运行状况。监视结果通过频道监视模块114传送给中央控制服务器102。在频道失效的情况下(如频道服务器失效、上变频器失效或通信链接失效等),中央控制服务器102至开关矩阵112脱离发生故障的部件并且结合一个良好备份部件116和/或118以恢复业务。FIG. 1B shows another exemplary embodiment of a DOD system according to the present invention. In accordance with the elements described in FIG. 1A,DOD system 100 includes a switch matrix 112, channel monitoring module 114, a set of backup channel servers 116a-116b, and a set of backup upconverters 118a-118b. In one embodiment, switch matrix 112 is physically located between upconverter 106 and combiner/amplifier 108, switch matrix 112 is controlled bycustomer control server 102, and channel monitoring module 114 includes a plurality of configured set-top boxes that emulate potential Clients for monitoring the operation of theDOD system 100. The monitoring results are transmitted to thecentral control server 102 through the channel monitoring module 114 . In the event of a channel failure (such as channel server failure, upconverter failure, or communication link failure, etc.), thecentral control server 102 to switch matrix 112 breaks off the failed component and incorporates a good backup component 116 and/or 118 to restore service .

在示例的实施例中,正在从DOD系统100广播的数据文件包含在运动图像专家组(MPEG)文件中,每个MPEG文件动态地分成数据块和沿着时间轴映射到数据文件的特定部分的子块。这些数据块和子块按照由中央控制服务器102提供的三维传送矩阵在预定的时间期间发送。对于DOD系统100提供DOD业务来说一个反馈频道不是必须的,但是如果一个反馈频道是可用的,该反馈频道可以用于其它目的,例如记帐或提供因特网服务等。In the exemplary embodiment, the data files being broadcast from theDOD system 100 are contained in Moving Picture Experts Group (MPEG) files, each MPEG file being dynamically divided into chunks and data files mapped along the time axis to specific portions of the data file. subblock. These data blocks and sub-blocks are transmitted during predetermined times according to a three-dimensional transfer matrix provided by thecentral control server 102 . A feedback channel is not necessary for theDOD system 100 to provide DOD services, but if a feedback channel is available, the feedback channel can be used for other purposes, such as billing or providing Internet services.

图2表示按照本发明一个实施例的示例性频道服务器104。该频道服务器104包括一个服务器控制器202,一个CPU 204,一个QAM调制器206,一个本地存储器208以及网络接口210。该服务器控制器202通过指示CPU 204将数据文件划分成块(进一步划成子块和数据包)控制频道服务器104的整个操作,按照由中央控制服务器102提供的传送矩阵选择用于传输的数据块,编码所选的数据,压缩编码的数据,然后将压缩的数据传送到QAM调制器206。该QAM调制器206通过总线(或PCI,CPU本地总线)或以太网连接接收要传输的数据。在一个示例性的实施例中,QAM调制器可以包括一个下游QAM调制器,一个具有前向差错校正解码器的上游正交幅度调制/正交相移键控(QAM/QSK)冲突解调器,和/或一个上游调谐器。QAM调制器206的输出是可以直接施加给上变频器106的IF信号。Figure 2 illustrates an exemplary channel server 104 in accordance with one embodiment of the present invention. The channel server 104 includes a server controller 202, a CPU 204, a QAM modulator 206, a local memory 208 and a network interface 210. The server controller 202 controls the overall operation of the channel server 104 by instructing the CPU 204 to divide the data file into blocks (further into sub-blocks and data packets), select data blocks for transmission according to the transfer matrix provided by thecentral control server 102, The selected data is encoded, the encoded data is compressed, and the compressed data is passed to the QAM modulator 206 . The QAM modulator 206 receives data to be transmitted via a bus (or PCI, CPU local bus) or Ethernet connection. In an exemplary embodiment, the QAM modulator may include a downstream QAM modulator, an upstream quadrature amplitude modulation/quadrature shift keying (QAM/QSK) collision demodulator with a forward error correction decoder , and/or an upstream tuner. The output of the QAM modulator 206 is an IF signal that can be applied directly to the upconverter 106 .

网络接口210将频道服务器104连接到其它的频道服务器104以及连接到中央控制服务器102以执行来自中央控制服务器102的规划和控制指令,向中央控制服务器102回报状态,以及从中央存储装置103接收数据文件。在按照来自服务器控制器202的指令处理数据文件之前,任何从中央存储装置103检索的数据文件可以存储在频道服务器104的本地存储器208。在一个示例的实施例中,频道服务器104可以发送一个或多个DOD数据流,这取决于有线频道的带宽(例如6,6.5或8MHz),QAM 64或QAM 256,以及DOD数据流(如MPEG-1或MPEG-2)的压缩标准或比特率。The network interface 210 connects the channel server 104 to other channel servers 104 and to thecentral control server 102 to execute planning and control commands from thecentral control server 102, report status to thecentral control server 102, and receive data from thecentral storage device 103 document. Any data files retrieved from thecentral storage device 103 may be stored in the local memory 208 of the channel server 104 prior to processing the data files in accordance with instructions from the server controller 202 . In an exemplary embodiment, the channel server 104 may transmit one or more DOD streams, depending on the bandwidth of the cable channel (e.g., 6, 6.5, or 8 MHz), QAM 64 or QAM 256, and a DOD stream (e.g., MPEG -1 or MPEG-2) compression standard or bit rate.

图3示出了按照本发明的一个实施例的示例性的机顶盒(STB)300。STB 300包括QAM解调器302,CPU 304,条件访问模块306(例如智能卡系统),本地存储器308,缓冲存储器309,STB控制器310,解码器312以及图形重叠模块314。STB控制器310控制STB300的整个操作,其通过控制CPU 302和QAM解调器302以响应客户请求选择数据、解码所选的数据、解压缩解码数据、重新组装解码数据、在本地存储器308或缓冲存储器309内存储解码数据以及将存储的数据传送到解码器312。在一个示例的实施例中,STB控制器310基于从传输介质110接收的数据包内的数据包头控制STB300的整个操作。在一个示例的实施例中,本地存储器308包括非易失存储器(如硬盘)以及缓冲存储器包括易失存储器。Figure 3 illustrates an exemplary set-top box (STB) 300 in accordance with one embodiment of the present invention.STB 300 includesQAM demodulator 302,CPU 304, conditional access module 306 (such as a smart card system),local storage 308,buffer memory 309,STB controller 310,decoder 312 andgraphics overlay module 314. TheSTB controller 310 controls the overall operation of theSTB 300 by controlling theCPU 302 and the QAM demodulator 302 to select data in response to customer requests, decode the selected data, decompress the decoded data, reassemble the decoded data, store data in thelocal memory 308 or buffer Thememory 309 stores decoded data therein and transmits the stored data to thedecoder 312 . In an example embodiment,STB controller 310 controls the overall operation ofSTB 300 based on packet headers within packets received fromtransmission medium 110 . In an exemplary embodiment, thelocal storage 308 includes a non-volatile storage (such as a hard disk) and the cache storage includes a volatile storage.

在一个实施例中,QAM解调器302包括发送器和接收器模块以及下列中的一个或多个:私人加密/解密模块,前向差错校正解码器/编码器,调谐器控制,下游和上游处理器,CPU和存储器接口电路。QAM解调器302接收调制的IF信号、采样和解调这些信号以恢复数据。In one embodiment,QAM demodulator 302 includes transmitter and receiver modules and one or more of the following: private encryption/decryption module, forward error correction decoder/encoder, tuner control, downstream and upstream Processor, CPU and memory interface circuits.QAM demodulator 302 receives the modulated IF signals, samples and demodulates these signals to recover the data.

该条件访问模块306允许在访问经过验证后被授权时或当相应的费用已变化时进行解码处理,访问的条件是由其服务提供商决定的。Theconditional access module 306 allows decoding when access is authorized after authentication or when the corresponding fee has changed, the conditions of access being determined by its service provider.

验证方法包括将订阅级别与报警级别直接插入到所传输的DOD数据的头中。在该方法中,STB 300读取这些访问级别并将它们与存储在STB 300内的访问级别进行对比。如果所存储的级别与随着DOD服务传送的订阅级别匹配,授权客户接收该服务。对于报警级别的情况,STB 300读取在DOD业务内传输的报警级别并显示与该报警级别相对应的消息。这些验证方法在Khoi Hoang的名称为“控制数据点播客户访问”(2001年7月19日递交的、并结合作为参考的申请号09/902,503)的专利申请进行了描述。The authentication method includes inserting the subscription level and alarm level directly into the header of the transmitted DOD data. In this method, theSTB 300 reads these access levels and compares them with the access levels stored within theSTB 300. If the stored level matches the subscription level delivered with the DOD service, the customer is authorized to receive that service. In the case of an alarm level, theSTB 300 reads the alarm level transmitted within the DOD service and displays a message corresponding to the alarm level. These authentication methods are described in Khoi Hoang's patent application entitled "Controlling Data-On-Demand Client Access," filed July 19, 2001, and incorporated by reference in application number 09/902,503.

在一个示例的实施例中,当访问被授权时,解码器312解码至少一个数据块以将数据块变换成可在输出屏上显示的图像。该解码器312支持来自订阅客户的命令,如播放、停止、暂停、步进、向后倒及向前倒等。In an example embodiment, when access is authorized,decoder 312 decodes at least one data block to transform the data block into an image displayable on an output screen. Thedecoder 312 supports commands from subscribing clients, such as play, stop, pause, step, rewind and rewind, etc.

图形重叠模块314通过例如提供α混合或画中画性能而增强所显示的图形质量。在一个实施例中,该图形重叠模块314可用于游戏播放模式期间的图形加速,例如当服务提供商利用按照本发明的系统提供游戏点播时。Graphics overlay module 314 enhances displayed graphics quality by, for example, providing alpha blending or picture-in-picture capabilities. In one embodiment, thegraphics overlay module 314 may be used for graphics acceleration during game play mode, such as when a service provider offers games on demand using a system according to the present invention.

在一个实施例中,尽管所有数据文件被广播到所有的有线电视订阅者,但是仅是具有兼容的STB 300的DOD订户能解码并享受数据点播业务。在一个示例的实施例中,可通过有条件的访问控制模块306内的一个智能卡系统而获得对数据文件点播的许可。智能卡系统可以本地商店或在服务提供商设置的零售商机器处进行再充电。在另一个示例的实施例中,一个无利息付费系统向订户提供对所有可用的数据文件的无限制的访问。In one embodiment, although all data files are broadcast to all cable subscribers, only DOD subscribers with acompatible STB 300 can decode and enjoy the data-on-demand service. In an exemplary embodiment, permission to on-demand data files may be obtained through a smart card system within the conditionalaccess control module 306 . The smart card system can be recharged at a local store or at a retailer's machine set up by the service provider. In another exemplary embodiment, a no-interest payment system provides subscribers with unlimited access to all available data files.

在一个示例的实施例中,数据点播交互特征允许客户在任何时间选择一个可用的数据文件,客户按压一个选择按钮到所选的数据开始播放之间的时间称为响应时间。随着更多的资源被分配(例如带宽、服务器性能)以提供DOD业务,该响应时间变得越来越短。在一个示例的实施例中,可以根据对资源分配的评估以及期望的服务质量确定该响应时间。In an exemplary embodiment, the data-on-demand interactive feature allows the customer to select an available data file at any time, and the time between the customer pressing a selection button and the selected data starting to play is called the response time. This response time becomes shorter and shorter as more resources are allocated (eg bandwidth, server performance) to provide DOD services. In an exemplary embodiment, the response time may be determined based on an evaluation of resource allocation and expected quality of service.

在一个示例的实施例中,所选的响应时间确定时隙的持续时间。一个时隙(TS)的持续时间表示以正常速度播放一个数据模块的时间间隔。在一个示例的实施例中,数据文件如视频文件被分成多个数据块以便每个数据块可以在时隙的持续时间内支持对数据文件的播放。In an example embodiment, the selected response time determines the duration of the time slot. The duration of one time slot (TS) represents the time interval during which one data block is played at normal speed. In an exemplary embodiment, a data file, such as a video file, is divided into chunks such that each chunk can support playback of the data file for the duration of a time slot.

在一个实施例中,用于每个数据文件的数据块的数量(NUM_OF_BLKS)可以按照如下进行计算:In one embodiment, the number of data blocks (NUM_OF_BLKS) for each data file may be calculated as follows:

Estimated_BLK_Size=(DataFile Size*TS)/DataFile_Length              (1)Estimated_BLK_Size=(DataFile Size*TS)/DataFile_Length (1)

BLK SIZE=(Estimated BLK Size+CLUSTER SIZE-1Byte)/CLUSTER_SIZE      (2)BLK SIZE=(Estimated BLK Size+CLUSTER SIZE-1Byte)/CLUSTER_SIZE (2)

BLK_SIZE_BYTES=BLK_SIZE*CLUSTER_SIZE                               (3)BLK_SIZE_BYTES=BLK_SIZE*CLUSTER_SIZE (3)

NUM_OF_BLKS=(DataFile_Size+BLK_SIZE_BYTES-1Byte)/BLK_SIZE_BYTES    (4)NUM_OF_BLKS=(DataFile_Size+BLK_SIZE_BYTES-1Byte)/BLK_SIZE_BYTES (4)

在等式(1)-(4)中,Estimated_BLK_Size是估计的块大小(以字节为单位),DataFile_Size是数据文件大小(以字节为单位);TS代表时隙的持续时间(以秒为单位);DataFile_Length是数据文件的持续时间(以秒为单位);BLK_Size是每个数据块所需要的簇的数量;CLUSTER_SIZE是用于每个频道服务器104的本地存储器208的簇的大小(例如64k字节)。在该实施例中,块的数量(NUM_OF_BLKS)等于数据文件大小(以字节为单位)加数据块大小(以字节为单位)减1字节,然后再除以数据块大小(以字节为单位)。等式(1)-(4)描述一个特定的实施例。本技术领域内的人将意识到另一个方法可用于计算数据文件的数据块的数量。例如,将数据文件分成多个数据块主要是估计的块尺寸与频道服务器104的本地存储器208的簇大小的函数(function),因此,本发明并不限于上述的具体实施例。In equations (1)-(4), Estimated_BLK_Size is the estimated block size (in bytes), DataFile_Size is the data file size (in bytes); TS represents the duration of the time slot (in seconds unit); DataFile_Length is the duration (in seconds) of the data file; BLK_Size is the number of clusters required for each data block; CLUSTER_SIZE is the size of the cluster for each channel server 104's local storage 208 (e.g., 64k byte). In this example, the number of blocks (NUM_OF_BLKS) is equal to the data file size (in bytes) plus the data block size (in bytes) minus 1 byte, divided by the data block size (in bytes as a unit). Equations (1)-(4) describe one particular embodiment. Those skilled in the art will recognize that another method can be used to count the number of data blocks of a data file. For example, dividing a data file into chunks is primarily a function of the estimated chunk size and the cluster size of the local storage 208 of the channel server 104, and thus, the invention is not limited to the specific embodiments described above.

图4描述了按照本发明一个实施例的用于产生一个发送数据文件的规划矩阵的示例性的处理过程。在一个示例的实施例中,本发明利用时分复用(TDM)以及频分复用(FDM)技术来在服务器侧压缩和规划数据传送。在一个示例的实施例中,为每个数据文件产生规划矩阵。在一个示例的实施例中每个数据文件被分成多个数据块并且根据数据块的数量产生该规划矩阵。一般地,一个规划矩阵提供用于从服务器向客户发送数据文件的数据块的发送顺序,以便该数据块可由在随机时间访问数据文件的任何客户按照序列顺序访问。FIG. 4 illustrates an exemplary process for generating a planning matrix for a transmission data file according to an embodiment of the present invention. In an exemplary embodiment, the present invention utilizes time division multiplexing (TDM) and frequency division multiplexing (FDM) techniques to compress and schedule data transfers at the server side. In an example embodiment, a planning matrix is generated for each data file. In an exemplary embodiment, each data file is divided into a plurality of data blocks and the planning matrix is generated according to the number of data blocks. In general, a planning matrix provides the order in which data blocks of a data file are sent from a server to clients so that the data blocks are accessible in sequential order by any client accessing the data file at random times.

在步骤402,接收数据文件的多个数据块(x)。一个第一变量j被设置为0(步骤404)。清除一个参考阵列(步骤406),为了内部管理的目的该参考阵列持续跟踪数据块。下一步,将j与x(步骤408)进行对比。如果j小于x,将第二变量i设置为0(步骤412)。下一步将i与x进行对比(步骤414)。如果i小于x,存储在规划矩阵的列[(i+j)mod(x)]内的数据块被写进参考阵列(步骤418)。如果参考阵列已经具有这样的数据块,则不再进行重复的拷贝。初始地,由于规划矩阵没有入口(entry),该步骤可以略过。下一步,检查参考阵列是否包含数据块i(步骤420)。初始地,由于参考阵列的所有入口已经在步骤406被清除,在参考阵列将没有任何东西。如果参考阵列不包含数据块i,数据块i被加到规划矩阵的位置[(i+j)mod(x),j]和参考阵列(步骤422)。在数据块i被加到规划矩阵和参考阵列后,将i增加1,以便i=i+1(步骤424),然后步骤414重复该处理过程直到i=x。如果参考阵列包含数据块i,将i加1,以便i=i+1(步骤424),随后处理过程在步骤414重复直到i=x。当i=x时,将j加1以便j=j+1(步骤416)并且处理过程在步骤406重复直到j=x。整个过程在j=x(步骤410)时结束。Atstep 402, a plurality of data blocks (x) of a data file are received. A first variable j is set to 0 (step 404). A reference array is cleared (step 406), which keeps track of data blocks for internal management purposes. Next, j is compared to x (step 408). If j is less than x, the second variable i is set to 0 (step 412). The next step compares i to x (step 414). If i is less than x, the data block stored in the column [(i+j) mod (x)] of the planning matrix is written into the reference array (step 418). If the reference array already has such data blocks, no duplicate copies are made. Initially, since the planning matrix has no entry, this step can be skipped. Next, it is checked whether the reference array contains data block i (step 420). Initially, since all entries in the reference array have been cleared instep 406, there will be nothing in the reference array. If the reference array does not contain data block i, data block i is added to the planning matrix at position [(i+j) mod (x), j] and the reference array (step 422). After data block i is added to the planning matrix and reference array, i is incremented by 1 so that i=i+1 (step 424), and then step 414 repeats the process until i=x. If the reference array contains data block i, i is incremented such that i=i+1 (step 424), and the process then repeats atstep 414 until i=x. When i=x, j is incremented by 1 so that j=j+1 (step 416) and the process repeats atstep 406 until j=x. The whole process ends when j=x (step 410).

在一个示例的实施例中,如果数据文件被分成6个数据块(x=6),该规划矩阵与参考矩阵如下:In an exemplary embodiment, if the data file is divided into 6 data blocks (x=6), the planning matrix and reference matrix are as follows:

规划矩阵(SM)Planning Matrix (SM)

  TS0TS0  TS1TS1  TS2TS2  TS3TS3  TS4TS4  TS5TS5  [0,0]blk0[0,0]blk0  [1,0]blk1[1,0]blk1  [2,0]blk2[2,0]blk2  [3.0]blk3[3.0] blk3  [4,0]blk4[4,0]blk4  [5,0]blk5[5,0]blk5  [0,1][0, 1]  [1,1]blk0[1,1]blk0  [2,1][2, 1]  [3.1][3.1]  [4,1][4, 1]  [5,1][5, 1]  [0,2][0, 2]  [1,2][1, 2]  [2,2]blk0[2,2]blk0  [3.2]blk1[3.2] blk1  [4,2][4, 2]  [5,2][5, 2]  [0,3][0, 3]  [1,3][1, 3]  [2,3][2, 3]  [3.3]blk0[3.3]blk0  [4,3][4, 3]  [5,3]blk2[5,3]blk2  [0,4][0, 4]  [1,4]blk3[1,4]blk3  [2,4][2, 4]  [3.4][3.4]  [4,4]blk0[4,4]blk0  [5,5]blk1[5,5]blk1  [0,5][0, 5]  [1,5][1, 5]  [2,5][2, 5]  [3.5]blk4[3.5]blk4  [4,5][4, 5]  [5,5]blk0[5,5]blk0

参考矩阵(RA)Reference Matrix (RA)

  space0space0  space1space1  space2space2  space3space3  space4space4  space5space5  TS0TS0  blk0blk0  blk1blk1  blk2blk2  blk3blk3  blk4blk4  blk5blk5  TS1TS1  blk1blk1  blk0blk0  blk2blk2  blk3blk3  blk4blk4  blk5blk5  TS2TS2  blk2blk2  blk0blk0  blk3blk3  blk1blk1  blk4blk4  blk5blk5  TS3TS3  blk3blk3  blk1blk1  blk0blk0  blk4blk4  blk5blk5  blk2blk2  TS4TS4  blk4blk4  blk0blk0  blk5blk5  blk2blk2  blk1blk1  blk3blk3  TS5TS5  blk5blk5  blk2blk2  blk1blk1  blk0blk0  blk3blk3  blk4blk4

在该示例的实施例中,基于上面的规划矩阵,该数据文件的6个数据块按照下列顺序发送:In this exemplary embodiment, based on the above planning matrix, the 6 data blocks of the data file are sent in the following order:

TS0

Figure C0211820000201
blk0TS0
Figure C0211820000201
blk0

TS1

Figure C0211820000202
blk0,blk1,blk3TS1
Figure C0211820000202
blk0, blk1, blk3

TS2

Figure C0211820000203
blk0,blk2TS2
Figure C0211820000203
blk0, blk2

TS3

Figure C0211820000204
blk0,blk1,blk3,blk4,TS3
Figure C0211820000204
blk0, blk1, blk3, blk4,

TS4

Figure C0211820000205
blk0,blk4TS4
Figure C0211820000205
blk0, blk4

TS5

Figure C0211820000206
blk0,blk1,blk2,blk5,TS5
Figure C0211820000206
blk0, blk1, blk2, blk5,

在另一个实施例中,一个先行(look-ahead)处理过程可以用于在预测的访问时间之前计算先行规划矩阵以发送一个数据文件的数据块的预定数量。例如,如果一个预定的先行时间是一个时隙的持续时间,对于任何大于或等于第四时隙的时隙,数据文件的数据块4(blk4)应当在TS时或其之前在订阅客户处由STB 300接收,但是blk4将是直到TS4才播放。用于产生向前规划矩阵的处理步骤基本上类似于上面参照图4描述的处理步骤,例外是在本实施例中的先行规划矩阵基本先行时间规划了一个更早的发送序列。假定数据文件被分成6个数据块,根据一个先行的规划矩阵的一个示例性发送序列(具有两个时隙的持续时间的先行时间)可以表述如下:In another embodiment, a look-ahead process may be used to compute a look-ahead planning matrix to send a predetermined number of data blocks of a data file before the predicted access time. For example, if a predetermined look-ahead time is the duration of a time slot, for any time slot greater than or equal to the fourth time slot, data block 4 (blk4) of the data file shall be issued at the subscribing client at or beforeTS time STB 300 receives, but blk4 will not play until TS4. The processing steps for generating the forward planning matrix are substantially similar to the processing steps described above with reference to FIG. 4, with the exception that in this embodiment the lookahead planning matrix essentially plans an earlier transmission sequence in a lookahead time. Assuming that the data file is divided into 6 data blocks, an exemplary transmission sequence (ahead time with a duration of two slots) according to a lookahead planning matrix can be expressed as follows:

TS0

Figure C0211820000207
blk0TS0
Figure C0211820000207
blk0

TS1

Figure C0211820000208
blk0,blk1,blk3  blk4,TS1
Figure C0211820000208
blk0, blk1, blk3 blk4,

TS2

Figure C0211820000209
blk0,blk2TS2
Figure C0211820000209
blk0, blk2

TS3

Figure C02118200002010
blk0,blk1,blk3,blk4,blk5,TS3
Figure C02118200002010
blk0, blk1, blk3, blk4, blk5,

TS4blk0,blk5TS4 blk0, blk5

TS5

Figure C02118200002012
blk0,blk1,blk2TS5
Figure C02118200002012
blk0, blk1, blk2

根据一组数据文件中每个数据文件的规划矩阵可产生用于发送一组数据文件的三维传送矩阵。在该三维传送矩阵中,在该数据文件组中可以产生包含每个数据文件的ID的第三维,计算该三维传送矩阵以有效地利用每个频道中的可用的带宽以传送多个数据流。在一个示例性的实施例中,本技术领域中已知的一种卷积方法用于产生三维传送矩阵以规划一组数据文件的有效传送。例如,一种卷积方法可包括下列策略:(1)在任何时隙(TS)的持续时间发送的数据块的全部数量应当保持在最小可用数量;以及(2)如果相对于策略(1)有多个部分方案(solution)可用,较佳的方案是将在任何参考的持续时间要发送的数据块、在先前时隙(相对参考时隙)的持续时间要发送的数据块以及在下一个时隙(相对参考时隙)的持续时间要发送的数据块相加而具有最小的数据块和的那个方案。例如假定一个发送两个短数据文件M和B的示例系统,在此每个数据文件被分成6个数据块,则基于规划矩阵的发送序列如下:A three-dimensional transmission matrix for sending a set of data files may be generated based on the planning matrix for each data file in the set of data files. In the three-dimensional transmission matrix, a third dimension containing the ID of each data file in the data file group can be generated, the three-dimensional transmission matrix is calculated to efficiently utilize the available bandwidth in each channel to transmit multiple data streams. In an exemplary embodiment, a convolution method known in the art is used to generate a three-dimensional transfer matrix to plan the efficient transfer of a set of data files. For example, a method of convolution may include the following policies: (1) the total number of data blocks transmitted for the duration of any time slot (TS) should be kept to the minimum available number; and (2) if relative to policy (1) There are several partial solutions available, the preferred solution is to combine the data blocks to be transmitted at any reference duration, the data blocks to be transmitted at the duration of the previous time slot (relative to the reference time slot), and the data blocks to be transmitted at the next time The scheme which has the smallest sum of data blocks by summing the data blocks to be transmitted for the duration of the slot (relative to the reference time slot). For example, assuming an example system that sends two short data files M and B, where each data file is divided into 6 data blocks, the sending sequence based on the planning matrix is as follows:

TS0

Figure C0211820000211
blk0TS0
Figure C0211820000211
blk0

TS1

Figure C0211820000212
blk0,blk1,blk3  blk4,TS1
Figure C0211820000212
blk0, blk1, blk3 blk4,

TS2

Figure C0211820000213
blk0,blk2TS2
Figure C0211820000213
blk0, blk2

TS3

Figure C0211820000214
blk0,blk1,blk3,blk4TS3
Figure C0211820000214
blk0, blk1, blk3, blk4

TS4

Figure C0211820000215
blk0,blk4TS4
Figure C0211820000215
blk0, blk4

TS5

Figure C0211820000216
blk0,blk1,blk2,blk5TS5
Figure C0211820000216
blk0, blk1, blk2, blk5

采用如上所述的示例方法,可用的传送矩阵的组合如下:Using the example method described above, the combinations of transfer matrices available are as follows:

选项1:在时移0TS发送视频文件N  整个数据块Option 1: Send video file N whole chunks at time shift 0TS

TS0

Figure C0211820000217
M0,N0                             2TS0
Figure C0211820000217
M0, N0 2

TS1

Figure C0211820000218
M0,M1,M3,N0,N1,N3             6TS1
Figure C0211820000218
M0, M1, M3, N0, N1, N3 6

TS2M0,M2,N0,N2                     4TS2 M0, M2, N0, N2 4

TS3

Figure C02118200002110
M0,M1,M3,M4,N0,N1,N3,N4     8TS3
Figure C02118200002110
M0, M1, M3, M4, N0, N1, N3, N4 8

TS4

Figure C0211820000221
M0,M4,N0,N4                     4TS4
Figure C0211820000221
M0, M4, N0, N4 4

TS5

Figure C0211820000222
M0,M1,M2,M5,N0,N1,N2,N5     8TS5
Figure C0211820000222
M0, M1, M2, M5, N0, N1, N2, N5 8

选项2:在时移1TS发送视频文件N  整个数据块Option 2: Send video file N whole chunks at time shift 1TS

TS0

Figure C0211820000223
M0,N0,N1,N3                     4TS0
Figure C0211820000223
M0, N0, N1, N3 4

TS1

Figure C0211820000224
M0,M1,M3,N0,N2                 5TS1
Figure C0211820000224
M0, M1, M3, N0, N2 5

TS2

Figure C0211820000225
M0,M2,N0,N1,N3,N4             6TS2
Figure C0211820000225
M0, M2, N0, N1, N3, N4 6

TS3

Figure C0211820000226
M0,M1,M3,M4,N0,N4             6TS3
Figure C0211820000226
M0, M1, M3, M4, N0, N4 6

TS4

Figure C0211820000227
M0,M4,N0,N1,N2,N5             6TS4
Figure C0211820000227
M0, M4, N0, N1, N2, N5 6

TS5

Figure C0211820000228
M0,M1,M2,M5,N0                 5TS5
Figure C0211820000228
M0, M1, M2, M5, N0 5

选项3:在时移2TS发送视频文件N  整个数据块Option 3: Send video file N whole chunks at time shift 2TS

TS0M0,N0,N2                         3TS0 M0, N0, N2 3

TS1

Figure C02118200002210
M0,M1,M3,N0,N1,N3,N4         7TS1
Figure C02118200002210
M0, M1, M3, N0, N1, N3, N4 7

TS2

Figure C02118200002211
M0,M2,N0,N4                     4TS2
Figure C02118200002211
M0, M2, N0, N4 4

TS3M0,M1,M3,M4,N0,N1,N2,N5     8TS3 M0, M1, M3, M4, N0, N1, N2, N5 8

TS4

Figure C02118200002213
M0,M4,N0                         3TS4
Figure C02118200002213
M0, M4, N0 3

TS5

Figure C02118200002214
M0,M1,M2,M5,N0,N1,N3         7TS5
Figure C02118200002214
M0, M1, M2, M5, N0, N1, N3 7

选项4:在时移3TS发送视频文件N  整个数据块Option 4: Send video file N entire chunks at time shift 3TS

TS0M0,N0,N1,N3,N4                 5TS0 M0, N0, N1, N3, N4 5

TS1

Figure C02118200002216
M0,M1,M3,N0,N4                 5TS1
Figure C02118200002216
M0, M1, M3, N0, N4 5

TS2

Figure C02118200002217
M0,M2,N0,N1,N2,N5             6TS2
Figure C02118200002217
M0, M2, N0, N1, N2, N5 6

TS3

Figure C0211820000231
M0,M1,M3,M4,N0                 5TS3
Figure C0211820000231
M0, M1, M3, M4, N0 5

TS4

Figure C0211820000232
M0,M4,N0,N1,N3                 5TS4
Figure C0211820000232
M0, M4, N0, N1, N3 5

TS5

Figure C0211820000233
M0,M1,M2,M5,N0,N1,N2         6TS5
Figure C0211820000233
M0, M1, M2, M5, N0, N1, N2 6

选项5:在时移4TS发送视频文件N  整个数据块Option 5: Send video file N entire chunks at time shift 4TS

TS0

Figure C0211820000234
M0,N0,N4                         3TS0
Figure C0211820000234
M0, N0, N4 3

TS1

Figure C0211820000235
M0,M1,M3,N0,N1,N2,N5         7TS1
Figure C0211820000235
M0, M1, M3, N0, N1, N2, N5 7

TS2

Figure C0211820000236
M0,M2,N0                         3TS2
Figure C0211820000236
M0, M2, N0 3

TS3

Figure C0211820000237
M0,M1,M3,M4,N0,N1,N3         7TS3
Figure C0211820000237
M0, M1, M3, M4, N0, N1, N3 7

TS4

Figure C0211820000238
M0,M4,N0,N2                     4TS4
Figure C0211820000238
M0, M4, N0, N2 4

TS5

Figure C0211820000239
M0,M1,M2,M5,N0,N1,N3,N4     8TS5
Figure C0211820000239
M0, M1, M2, M5, N0, N1, N3, N4 8

选项6:在时移5TS发送视频文件N  整个数据块Option 6: Send video file N whole chunks at time shift 5TS

TS0

Figure C02118200002310
M0,N0,N1,N2,N5                 5TS0
Figure C02118200002310
M0, N0, N1, N2, N5 5

TS1

Figure C02118200002311
M0,M1,M3,N0                     4TS1
Figure C02118200002311
M0, M1, M3, N0 4

TS2

Figure C02118200002312
M0,M2,N0,N1,N3                 5TS2
Figure C02118200002312
M0, M2, N0, N1, N3 5

TS3

Figure C02118200002313
M0,M1,M3,M4,N0,N2             6TS3
Figure C02118200002313
M0, M1, M3, M4, N0, N2 6

TS4

Figure C02118200002314
M0,M4,N0,N1,N3,N4             6TS4
Figure C02118200002314
M0, M4, N0, N1, N3, N4 6

TS5

Figure C02118200002315
M0,M1,M2,M5,N0,N4             6TS5
Figure C02118200002315
M0, M1, M2, M5, N0, N4 6

采用策略(1),选项2,4,6具有在任何时隙期间发送的数据块(如6个数据块)的最小数量。采用策略(2),在示例的实施例中优化的传送矩阵是选项4,因为选项具有任何参考时隙的数据块加相邻时隙(如16个数据块)的数据块的最小和。因此,本实施例优化地,数据文件N的发送序列应是被移动三个时隙。在一个示例的实施例中,为每个频道服务器104产生一个三维传送矩阵。With strategy (1), options 2, 4, 6 have a minimum number of data blocks (eg 6 data blocks) sent during any time slot. With strategy (2), the optimized transmission matrix in the example embodiment is option 4, since option has the smallest sum of data blocks of any reference slot plus data blocks of adjacent slots (eg, 16 data blocks). Therefore, optimally in this embodiment, the sending sequence of the data file N should be shifted by three time slots. In an exemplary embodiment, a three-dimensional delivery matrix is generated for each channel server 104 .

当按照传送矩阵为每个数据文件传送数据块时,大量的订阅客户可以随机地访问该数据文件,以及该数据文件的相应数据块对于每个订阅客户来说也是可以及时访问的。在上面提供的例子中,假定时隙的持续时间等于5秒,DOD系统100以下列方式按照优化的传送矩阵发为数据文件M和N发送数据块(即,将数据文件N的传送序列移动三个时隙):When data blocks are transmitted for each data file according to the transmission matrix, a large number of subscribing clients can randomly access the data file, and corresponding data blocks of the data file can also be accessed in time for each subscribing client. In the example provided above, assuming that the duration of the time slot is equal to 5 seconds,DOD system 100 sends data blocks for data files M and N according to the optimized transfer matrix in the following manner (i.e., shifts the transfer sequence of data file N by three timeslots):

时间00:00:00M0 N0 N1 N3 N4Time 00:00:00 M0 N0 N1 N3 N4

时间00:00:05M0 M1 M3 N0 N4time 00:00:05 M0 M1 M3 N0 N4

时间00:00:10

Figure C0211820000243
M0 M2 N0 N1 N2 N5Time 00:00:10
Figure C0211820000243
M0 M2 N0 N1 N2 N5

时间00:00:15

Figure C0211820000244
M0 M1 M3 M4 N0time 00:00:15
Figure C0211820000244
M0 M1 M3 M4 N0

时间00:00:20M0 M4 N0 N1 N3Time 00:00:20 M0 M4 N0 N1 N3

时间00:00:25

Figure C0211820000246
M0 M1 M2 M5 N0 N2time 00:00:25
Figure C0211820000246
M0 M1 M2 M5 N0 N2

时间00:00:30M0 N0 N1 N3 N4Time 00:00:30 M0 N0 N1 N3 N4

时间00:00:35M0 M1 M3 N0 N4time 00:00:35 M0 M1 M3 N0 N4

时间00:00:40

Figure C0211820000249
M0 M2 N0 N1 N2 N5time 00:00:40
Figure C0211820000249
M0 M2 N0 N1 N2 N5

时间00:00:45

Figure C02118200002410
M0 M1 M3 M4 N0time 00:00:45
Figure C02118200002410
M0 M1 M3 M4 N0

时间00:00:50

Figure C02118200002412
M0 M4 N0 N1 N3time 00:00:50
Figure C02118200002412
M0 M4 N0 N1 N3

时间00:00:55

Figure C02118200002413
M0 M1 M2 M5 N0 N2time 00:00:55
Figure C02118200002413
M0 M1 M2 M5 N0 N2

如果在时间00:00:00,客户A选择电影M,在客户A处的STB 300就会按照如下接收、存储、播放以及拒绝数据块:If at time 00:00:00, client A selects movie M, theSTB 300 at client A will receive, store, play and reject the data block as follows:

时间00:00:00

Figure C02118200002414
接收M0播放M0,存储M0Time 00:00:00
Figure C02118200002414
Receive M0 Play M0, store M0

时间00:00:05

Figure C02118200002416
接收M1,M3
Figure C02118200002417
播放M1,存储M0,M1,M3time 00:00:05
Figure C02118200002416
Receive M1, M3
Figure C02118200002417
Play M1, store M0, M1, M3

时间00:00:10

Figure C02118200002418
接收M2
Figure C02118200002419
播放M2,存储M0,M1,M2,M3Time 00:00:10
Figure C02118200002418
Receive M2
Figure C02118200002419
Play M2, Store M0, M1, M2, M3

时间00:00:15接收M4播放M3,存储M0,M1,M2,M3,M4time 00:00:15 Receive M4 Play M3, store M0, M1, M2, M3, M4

时间00:00:20

Figure C02118200002422
接收无
Figure C02118200002423
播放M4,存储M0,M1,M2,M3,M4Time 00:00:20
Figure C02118200002422
receive none
Figure C02118200002423
Play M4, store M0, M1, M2, M3, M4

时间00:00:25

Figure C0211820000251
接收M5
Figure C0211820000252
播放M5,存储M0,M1,M2,M3,M4,M5time 00:00:25
Figure C0211820000251
Receive M5
Figure C0211820000252
Play M5, Store M0, M1, M2, M3, M4, M5

如果在时间00:00:10,客户B选择电影M,在客户B处的STB 300就会按照如下接收、存储、播放以及拒绝数据块:If at time 00:00:10, client B selects movie M, theSTB 300 at client B will receive, store, play and reject the data block as follows:

时间00:00:10

Figure C0211820000253
接收M0,M2
Figure C0211820000254
播放M0,存储M0,M2Time 00:00:10
Figure C0211820000253
Receive M0, M2
Figure C0211820000254
Play M0, Store M0, M2

时间00:00:15

Figure C0211820000255
接收M1,M3,M4
Figure C0211820000256
播放M1,存储M0,M1,M2,M3,M4time 00:00:15
Figure C0211820000255
Receive M1, M3, M4
Figure C0211820000256
Play M1, Store M0, M1, M2, M3, M4

时间00:00:20

Figure C0211820000257
接收无
Figure C0211820000258
播放M2,存储M0,M1,M2,M3,M4Time 00:00:20
Figure C0211820000257
receive none
Figure C0211820000258
Play M2, Store M0, M1, M2, M3, M4

时间00:00:25

Figure C0211820000259
接收M5
Figure C02118200002510
播放M3,存储M0,M1,M2,M3,M4,M5time 00:00:25
Figure C0211820000259
Receive M5
Figure C02118200002510
Play M3, store M0, M1, M2, M3, M4, M5

时间00:00:30

Figure C02118200002511
接收无
Figure C02118200002512
播放M4,存储M0,M1,M2,M3,M4,M5Time 00:00:30
Figure C02118200002511
receive none
Figure C02118200002512
Play M4, store M0, M1, M2, M3, M4, M5

时间00:00:35接收无

Figure C02118200002514
播放M5,存储M0,M1,M2,M3,M4,M5time 00:00:35 receive none
Figure C02118200002514
Play M5, Store M0, M1, M2, M3, M4, M5

如果在时间00:00:15,客户C选择电影N,在客户C处的STB 300就会按照如下接收、存储、播放以及拒绝数据块:If at time 00:00:15, client C selects movie N, theSTB 300 at client C will receive, store, play and reject the data block as follows:

时间00:00:15接收N0

Figure C02118200002516
播放N0,存储N0time 00:00:15 Receive N0
Figure C02118200002516
Play N0, store N0

时间00:00:20接收N1,N3播放N1,存储N0,N1,N3Time 00:00:20 Receive N1, N3 Play N1, Store N0, N1, N3

时间00:00:25

Figure C02118200002519
接收N2
Figure C02118200002520
播放N2,存储N0,N1,N2,N3time 00:00:25
Figure C02118200002519
Receive N2
Figure C02118200002520
Play N2, Store N0, N1, N2, N3

时间00:00:30

Figure C02118200002521
接收N4
Figure C02118200002522
播放N3,存储N0,N1,N2,N3,N4Time 00:00:30
Figure C02118200002521
Receive N4
Figure C02118200002522
Play N3, Store N0, N1, N2, N3, N4

时间00:00:35

Figure C02118200002523
接收无
Figure C02118200002524
播放N4,存储N0,N1,N2,N3,N4time 00:00:35
Figure C02118200002523
receive none
Figure C02118200002524
Play N4, store N0, N1, N2, N3, N4

时间00:00:40

Figure C02118200002525
接收N5播放N5,存储N0,N1,N2,N3,N4,N5time 00:00:40
Figure C02118200002525
Receive N5 Play N5, Store N0, N1, N2, N3, N4, N5

如果在时间00:00:30,客户D选择电影N,在客户D处的STB 300就会按照如下接收、存储、播放以及拒绝数据块:If at time 00:00:30, client D selects movie N, theSTB 300 at client D will receive, store, play and reject the data block as follows:

时间00:00:30

Figure C0211820000261
接收N0,N1,N3,N4播放N0,存储N0,N1,N3,N4Time 00:00:30
Figure C0211820000261
Receive N0, N1, N3, N4 Play N0, Store N0, N1, N3, N4

时间00:00:35接收无

Figure C0211820000264
播放N1,存储N0,N1,N3,N4time 00:00:35 receive none
Figure C0211820000264
Play N1, Store N0, N1, N3, N4

时间00:00:40

Figure C0211820000265
接收N2,N5
Figure C0211820000266
播放N2,存储N0,N1,N2,N3,N4,N5time 00:00:40
Figure C0211820000265
Receive N2, N5
Figure C0211820000266
Play N2, Store N0, N1, N2, N3, N4, N5

时间00:00:45

Figure C0211820000267
接收无
Figure C0211820000268
播放N3,存储N0,N1,N2,N3,N4,N5time 00:00:45
Figure C0211820000267
receive none
Figure C0211820000268
Play N3, Store N0, N1, N2, N3, N4, N5

时间00:00:50

Figure C0211820000269
接收无
Figure C02118200002610
播放N4,存储N0,N1,N2,N3,N4,N5time 00:00:50
Figure C0211820000269
receive none
Figure C02118200002610
Play N4, Store N0, N1, N2, N3, N4, N5

时间00:00:55接收无

Figure C02118200002612
播放N5,存储N0,N1,N2,N3,N4,N5time 00:00:55 receive none
Figure C02118200002612
Play N5, Store N0, N1, N2, N3, N4, N5

如上面例子所示的,任意的客户组合都可以随机地独立地选择和开始播放由服务提供商提供的任意的数据文件。如果对于上述实施例有足够的带宽用于传输给定的数据文件,就可以利用下面讨论的子优化传输规划以更少的时间延迟传输更多数量的数据。尽管上面的方法向客户提供了时间优化方式的通用DOD服务,但是下列的方法还可以向客户提供通用DOD广播服务,该服务作为与延迟访问时间的交换可进一步降低所要求的带宽。As shown in the above example, any combination of customers can independently select and start playing any data file provided by the service provider at random. If there is sufficient bandwidth for the transfer of a given data file for the embodiments described above, a greater amount of data can be transferred with less time delay using the sub-optimized transfer plan discussed below. While the above approach provides clients with generic DOD services in a time-optimized manner, the following approach can also provide clients with generic DOD broadcast services that further reduce required bandwidth in exchange for delayed access times.

图5描述了用于在500产生子优化规划矩阵的示例方法。按照一个实施例,本发明利用时分复用(TDM)以及频分复用(FDM)技术来在服务器侧压缩和规划数据传送。在一个示例的实施例中,为每个数据文件产生子优化规划矩阵。在一个实施例中,每个数据文件被分成多个数据块并且根据数据块的数量产生该子优化规划矩阵。一个子优化规划矩阵提供用于从服务器向客户发送数据文件的数据块的发送顺序,以便这些数据块可由在随机时间的一个时隙内访问数据文件的任何客户按照序列顺序访问。FIG. 5 depicts an example method for generating a sub-optimization planning matrix at 500 . According to one embodiment, the present invention utilizes time division multiplexing (TDM) and frequency division multiplexing (FDM) techniques to compress and schedule data transfers at the server side. In an exemplary embodiment, a sub-optimization planning matrix is generated for each data file. In one embodiment, each data file is divided into multiple data blocks and the sub-optimized planning matrix is generated according to the number of data blocks. A sub-optimization planning matrix provides a sending order for data blocks of the data file to be sent from the server to clients such that the data blocks are accessible in sequential order by any client accessing the data file within a time slot at random time.

在步骤502,接收数据文件的多个数据块(x)。一个第一变量j被设置为0(步骤504)。清除一个参考阵列(步骤506),为了内部管理的目的该参考阵列持续跟踪数据块。下一步,将j与x(步骤508)进行对比。如果j小于x,将第二变量i设置为0(步骤512)。下一步将i与x进行对比(步骤514)。如果i小于x,存储在子优化规划矩阵的列[(i+j)mod(x)]内的数据块被写进参考阵列(步骤518)。如果参考阵列已经具有这样的数据块,则不再进行重复的拷贝。初始地,由于子优化规划矩阵没有入口,该步骤可以略过。下一步,检查参考阵列是否包含数据块i(步骤520)。初始地,由于参考阵列的所有入口已经在步骤506被清除,在参考阵列将没有任何东西。如果参考阵列不包含数据块i,检查子优化规划矩阵的先前列(i-1)看是否矩阵的列(i-1)包含数据块i(步骤521),该数据块i被加到子优化规划矩阵的位置[(i+j)mod(x),j]和参考阵列(步骤522)。在数据块i被加到子优化规划矩阵和参考阵列后,将i增加1,以便i=i+1(步骤524),然后在步骤514重复该处理过程直到i=x。如果参考阵列包含数据块i或子优化规划矩阵的列(i-1)包含数据块i,将i加1,以便i=i+1(步骤524),随后处理过程在步骤514重复直到i=x。当i=x时,将j加1以便j=j+1(步骤516)并且处理过程在步骤506重复直到j=x。整个过程在j=x(步骤510)时结束。Atstep 502, a plurality of data blocks (x) of a data file are received. A first variable j is set to 0 (step 504). A reference array is cleared (step 506), which keeps track of data blocks for internal management purposes. Next, j is compared with x (step 508). If j is less than x, the second variable i is set to 0 (step 512). The next step compares i to x (step 514). If i is less than x, the data blocks stored in the column [(i+j) mod (x)] of the suboptimal planning matrix are written into the reference array (step 518). If the reference array already has such data blocks, no duplicate copies are made. Initially, since the suboptimal planning matrix has no entry, this step can be skipped. Next, it is checked whether the reference array contains data block i (step 520). Initially, since all entries in the reference array have been cleared instep 506, there will be nothing in the reference array. If the reference array does not contain data block i, check the previous column (i-1) of the sub-optimization planning matrix to see if column (i-1) of the matrix contains data block i (step 521), this data block i is added to the sub-optimization The location of the planning matrix [(i+j) mod (x), j] and reference array (step 522). After data block i is added to the sub-optimized planning matrix and the reference array, i is incremented by 1 so that i=i+1 (step 524), and then the process is repeated atstep 514 until i=x. If the reference array contains data block i or the column (i-1) of the sub-optimized planning matrix contains data block i, add 1 to i so that i=i+1 (step 524), and then the process repeats atstep 514 until i= x. When i=x, j is incremented by 1 so that j=j+1 (step 516) and the process repeats atstep 506 until j=x. The whole process ends when j=x (step 510).

在一个示例的实施例中,如果数据文件被分成6个数据块(x=6),该规划矩阵与参考矩阵如下:In an exemplary embodiment, if the data file is divided into 6 data blocks (x=6), the planning matrix and reference matrix are as follows:

规划矩阵(SM)Planning Matrix (SM)

  TS0TS0  TS1TS1  TS2TS2  TS3TS3  TS4TS4  TS5TS5  [0,0]blk0[0,0]blk0  [1,0]blk1[1,0]blk1  [2,0]blk2[2,0]blk2  [3,0]blk3[3,0] blk3  [4,0]blk4[4,0]blk4  [5,0]blk5[5,0]blk5  [0,1][0, 1]  [1,1][1, 1]  [2,1][2, 1]  [3,1][3, 1]  [4,1][4, 1]  [5,1][5, 1]  [0,2][0, 2]  [1,2][1, 2]  [2,2]blk0[2,2]blk0  [3,2]blk1[3,2]blk1  [4,2][4, 2]  [5,2][5, 2]  [0,3][0, 3]  [1,3][1, 3]  [2,3][2, 3]  [3,3][3, 3]  [4,3][4, 3]  [5,3]blk2[5,3]blk2  [0,4][0, 4]  [1,4]blk3[1,4]blk3  [2,4][2, 4]  [3,4][3, 4]  [4,4]blk0[4,4]blk0  [5,5]blk1[5,5]blk1  [0,5][0, 5]  [1,5][1, 5]  [2,5][2, 5]  [3,5]blk4[3,5]blk4  [4,5][4, 5]  [5,5][5, 5]

参考矩阵(RA)Reference Matrix (RA)

  space0space0  space1space1  space2space2  space3space3  space4space4  space5space5  TS0TS0  blk0blk0  blk1blk1  blk2blk2  blk3blk3  blk4blk4  blk5blk5  TS1TS1  blk1blk1  blk0blk0  blk2blk2  blk3blk3  blk4blk4  blk5blk5  TS2TS2  blk2blk2  blk0blk0  blk3blk3  blk1blk1  blk4blk4  blk5blk5  TS3TS3  blk3blk3  blk1blk1  blk0blk0  blk4blk4  blk5blk5  blk2blk2  TS4TS4  blk4blk4  blk0blk0  blk5blk5  blk2blk2  blk1blk1  blk3blk3  TS5TS5  blk5blk5  blk2blk2  blk1blk1  blk0blk0  blk3blk3  blk4blk4

在该示例的实施例中,基于上面的子优化规划矩阵,该数据文件的6个数据块按照下列顺序发送:In this exemplary embodiment, based on the sub-optimization planning matrix above, the 6 data blocks of the data file are sent in the following order:

TS0

Figure C0211820000281
blk0TS0
Figure C0211820000281
blk0

TS1

Figure C0211820000282
blk1,blk3TS1
Figure C0211820000282
blk1, blk3

TS2

Figure C0211820000283
blk0,blk2TS2
Figure C0211820000283
blk0, blk2

TS3

Figure C0211820000284
blk1,blk3,blk4TS3
Figure C0211820000284
blk1, blk3, blk4

TS4blk0,blk4TS4 blk0, blk4

TS5

Figure C0211820000286
blk1,blk2,blk5TS5
Figure C0211820000286
blk1, blk2, blk5

当与图4的示例的“优化”规划序列进行对比时,该示例的“子优化”规划序列3个或更少的数据块,这样所导致的传输可以利用示例的子优化规划并要求18.75或更少的带宽。该子优化规划要求一个接收STB延迟显示所选的数据文件给用户一个时隙的持续时间。When compared to the "optimized" plan sequence of the example of Figure 4, the "suboptimal" plan sequence of this example is 3 or fewer data blocks, such that the resulting transfer can utilize the example suboptimal plan and require 18.75 or Less bandwidth. The sub-optimization plan requires a receiving STB to delay displaying the selected data file to the user for the duration of one slot.

本技术领域内人明白上述实施例的子优化规划仅是无数多个可用的方案中一个,在传输数据文件所要求的带宽上的更大的减少可以通过使用STB访问时间内更大的延迟来达到。Those skilled in the art understand that the sub-optimization plan of the above embodiment is only one of countless available solutions, and that a larger reduction in the bandwidth required to transmit data files can be achieved by using a larger delay in the STB access time. achieve.

图6描述了按照本发明一个实施例的用于接收子优化DOD数据传输的示例性的STB方法。该处理600起始于步骤602,在此STB300(图3)从DOD广播系统100(图1A)接收一个电子指南程序(EPG),该EPG列出在DOD系统100内所有可用的文件。在步骤603,用户通过按一个与期望的数据文件相关的购买按钮而选择在EPG上列出的一个数据文件。在步骤604,STB 300(图3)开始存储所选数据文件的数据块,该STB等待足够的时间周期以允许所选数据文件的足够的数据块存储以便STB可以无中断地播放该数据文件。按照一个实施例CPU 304(图3)能确定必须有多少延迟以确保平稳地播放所选的数据文件。这可以利用各种算法完成或仅通过在从DOD系统100传输的数据内的包头位置内仅包含所要求的延迟信息来完成。在这样一个实施例中,DOD系统改变子优化传送矩阵以所要求的延迟时隙的数量取决于可用的传输带宽。FIG. 6 depicts an exemplary STB method for receiving sub-optimized DOD data transmissions in accordance with one embodiment of the present invention. Theprocess 600 begins atstep 602 where the STB 300 ( FIG. 3 ) receives from the DOD broadcast system 100 ( FIG. 1A ) an Electronic Guide Program (EPG) listing all available files within theDOD system 100 . Atstep 603, the user selects a data file listed on the EPG by pressing a buy button associated with the desired data file. Atstep 604, the STB 300 (FIG. 3) begins storing data blocks of the selected data file, the STB waits for a sufficient period of time to allow storage of sufficient data blocks of the selected data file so that the STB can play the data file without interruption. According to one embodiment CPU 304 (FIG. 3) can determine how much delay must be in order to ensure smooth playback of the selected data file. This can be done using various algorithms or simply by including only the required delay information in the packet header locations within the data transmitted from theDOD system 100 . In such an embodiment, the DOD system changes the sub-optimized transmission matrix so that the number of delay slots required depends on the available transmission bandwidth.

一旦STB延迟了足够长以存储无中断播放所选的数据文件所必须的数据块,STB自动地开始播放所选的数据文件,按照另外一个实施例,一旦完成了延迟周期,STB提示用户开始播放所选的数据文件。Once the STB has delayed long enough to store the data chunks necessary to play the selected data file without interruption, the STB automatically begins playing the selected data file. According to another embodiment, the STB prompts the user to begin playback once the delay period is complete. selected data file.

一般操作general operation

一个服务提供商可以在广播之前规划发送多个数据文件(例如视频文件)到频道服务器104。该中央控制服务器102计算并向频道服务器104发送三维传送矩阵(ID,时隙,以及数据块发送顺序)。在广播期间,频道服务器104咨询三维传送矩阵以按照合适的顺序发送相应的数据块。每个数据文件被分成数据块以便大量的订阅客户可以独立地开始连续地并且序列随机地观看数据文件。数据文件中数据块的大小取决于规划的时隙的持续时间以及数据文件中数据流的比特率。例如,在恒定的比特率MPEG数据流中,每个数据块具有固定的大小:Block Size(块大小)(MB)=比特率(Mb/s)×TS(s)/8(1)。A service provider may plan to send multiple data files (eg, video files) to channel server 104 prior to broadcasting. Thecentral control server 102 calculates and sends the three-dimensional transmission matrix (ID, time slot, and data block transmission order) to the channel server 104 . During a broadcast, the channel server 104 consults the three-dimensional delivery matrix to send the corresponding data chunks in the proper order. Each data file is divided into data blocks so that a large number of subscribing customers can independently start viewing the data file continuously and sequentially randomly. The size of a data block in a data file depends on the duration of the scheduled time slot and the bit rate of the data stream in the data file. For example, in a constant bit rate MPEG data stream, each data block has a fixed size: Block Size (block size) (MB) = bit rate (Mb/s) × TS (s) / 8 (1).

在一个示例的实施例中,调整数据块尺寸为频道服务器104的本地存储器208内的存储器簇尺寸的下一个更高值。例如,如果按照上面的公式(1)计算的数据块长度是720Kb,则如果本地存储器208的簇尺寸是64Kb那么所得到的数据块长度应当是768Kb。在该实施例中,数据块应当是进一步分成多个子块,每个具有与簇尺寸相同的大小。在该例中,数据块具有64Kb的12个子块。In an example embodiment, the block size is adjusted to the next higher value of the memory cluster size within the local memory 208 of the channel server 104 . For example, if the data block length calculated according to the above formula (1) is 720Kb, then if the cluster size of the local storage 208 is 64Kb then the obtained data block length should be 768Kb. In this embodiment, the data block should be further divided into a number of sub-blocks, each having the same size as the cluster size. In this example, the data block has 12 sub-blocks of 64Kb.

子块可以进一步分成数据包,每个数据包包括有包头和包数据,包数据长度取决于每个频道服务器的CPU向其发送数据的物理层的最大传输单元(MTU)。在优选实施例中,包头和包数据的整个大小应小于MTU。但为为了获得最大效率,包数据长度应当尽可能地长。The sub-blocks can be further divided into data packets, each data packet includes a packet header and packet data, and the length of the packet data depends on the maximum transmission unit (MTU) of the physical layer to which the CPU of each channel server sends data. In a preferred embodiment, the overall size of the packet header and packet data should be smaller than the MTU. But for maximum efficiency, the packet data length should be as long as possible.

在示例的实施例中,包头中的数据包含允许订阅客户的STB 300解码所有接收的数据以及确定该数据包是否属于所选的数据文件(例如协议签名,版本,ID或包信息等)的信息。包头也可包含其它的信息,例如所要求的子优化延迟周期,块/子块/包数量,包长度,循环冗余检测(CRC),子块内的偏移和/编码信息。In the exemplary embodiment, the data in the packet header contains information that allows the subscribing client'sSTB 300 to decode all received data and determine whether the data packet belongs to the selected data file (such as protocol signature, version, ID or packet information, etc.) . The packet header may also contain other information such as required sub-optimization delay period, number of blocks/sub-blocks/packets, packet length, cyclic redundancy check (CRC), offset within sub-blocks and/or coding information.

一旦频道服务器104接收到,数据包被发送到QAM调制器206,在此,另一个包头被加到数据包以产生一个QAM调制的IF输出信号。QAM调制器206的最大比特率输出取决于可用的带宽。例如对于具有6MHz带宽的QAM调制器206,最大的比特率是5.05(比特/符号)×6(MHz)=30.3Mb/s。Once received by channel server 104, the data packet is sent to QAM modulator 206 where another header is added to the data packet to produce a QAM modulated IF output signal. The maximum bit rate output of QAM modulator 206 depends on the available bandwidth. For example, for a QAM modulator 206 with a bandwidth of 6 MHz, the maximum bit rate is 5.05 (bits/symbol) x 6 (MHz) = 30.3 Mb/s.

QAM调制的IF信号被发送到上变频器106以变换成适用于特定频道(例如CATV频道80,559.250MHz以及6MHz宽)的RF信号。例如,如果有线网络是高带宽(或高比特率),每个频道可以用于提供更多的数据流,而每个数据流只占用一个虚拟的子频道。例如,利用QAM调制可将三个MPEG1数据流送入6MHz的频道。上变频器106的输出被提供给组合器/放大器108,其将组合的信号发送到传输介质110。The QAM modulated IF signal is sent to an upconverter 106 for conversion into an RF signal suitable for a particular channel (eg, CATV channel 80, 559.250 MHz and 6 MHz wide). For example, if the cable network is high bandwidth (or high bit rate), each channel can be used to provide more data streams, while each data stream only occupies a virtual sub-channel. For example, three MPEG1 data streams can be sent into a 6MHz channel using QAM modulation. The output of upconverter 106 is provided to combiner/amplifier 108 , which sends the combined signal totransmission medium 110 .

在示例的实施例中,用于发送“N”个数据流的整个系统带宽(BW)是BW=N×bw,其中bw是每个数据流所要求的带宽。例如,三个MPEG-1数据流可以由具有30.3Mb/s系统带宽的DOCSIS有线频道同时发送,因为每个MPEG-1数据流占用系统带宽的9Mb/s。In the exemplary embodiment, the overall system bandwidth (BW) for sending "N" data streams is BW = N x bw, where bw is the bandwidth required for each data stream. For example, three MPEG-1 data streams can be sent simultaneously by a DOCSIS cable channel with a system bandwidth of 30.3 Mb/s, since each MPEG-1 data stream occupies 9 Mb/s of the system bandwidth.

不管实际访问DOD业务的订阅客户的数量如何,都要消耗带宽。因此,即便是没有订阅客户使用DOD业务,仍然要消耗带宽以确保系统的点播能力。Bandwidth is consumed regardless of the number of subscribing customers actually accessing the DOD service. Therefore, even if no subscribers use the DOD service, bandwidth is still consumed to ensure the system's on-demand capability.

一旦打开,STB 300连续地接收和更新存储在STB 300的本地存储器308内的节目指南。在一个示例的实施例中,STB显示包含有TV屏幕上最新的节目指南的数据文件信息。数据文件信息如视频文件信息包括电影ID,电影名称、描述(以多种语言)、归类(动作片、儿童片),级别(例如R,PG13),有线公司规则(例如价格,免费牟取预览长度),订阅周期,电影海报以及电影预览等。在一个示例的实施例中,通过保留的物理频道例如为固件(firmware)更新、商业和、或冲突事件信息保留的频道发送数据文件信息。在一个示例的实施例中,通过与其它数据流共享的物理频道发送信息。Once turned on, theSTB 300 continuously receives and updates the program guide stored in theSTB 300'slocal memory 308. In an exemplary embodiment, the STB displays data file information containing the latest program guide on the TV screen. Data file information such as video file information including movie ID, movie title, description (in multiple languages), category (action, kids), rating (e.g. R, PG13), cable company rules (e.g. price, free access to previews) length), subscription period, movie posters and movie previews, etc. In an exemplary embodiment, the data file information is sent over a reserved physical channel, such as a channel reserved for firmware updates, commercial and, or conflict event information. In an example embodiment, the information is sent over a physical channel that is shared with other data streams.

一个订阅客户可以查看按照显示在电视屏幕上的归类排列的可用的数据文件。当客户选择一个可用的数据文件时,STB 300控制它的硬件调谐进一个对应的物理频道和/或一个虚拟的子频道以开始接收针对该数据文件的数据包。STB 300检查每个数据包头,解码数据包中的数据以及确定是否应保留所接收的数据包。如果STB 300确定不应保留该数据包,则丢弃该数据包,否则在本地存储器308中保存该数据包以便以后检索或暂时地存储在缓冲存储器309中直到发送到解码器312。A subscribing customer can view available data files arranged by category displayed on the TV screen. When the client selects an available data file, theSTB 300 controls its hardware to tune into a corresponding physical channel and/or a virtual sub-channel to begin receiving packets for the data file. TheSTB 300 examines each packet header, decodes the data in the packet and determines whether the received packet should be preserved. If theSTB 300 determines that the packet should not be retained, the packet is discarded, otherwise the packet is saved inlocal memory 308 for later retrieval or temporarily stored inbuffer memory 309 until sent todecoder 312.

为了通过避免到本地存储器308的频繁的读/写来改进性能效率,在一个示例的实施例中,STB 300使用“滑动窗”应用技术来锁定存储器缓存器309中预料的数据块。如果在应用窗中发生了一个事件(hit),数据块则直接从存储器缓存器309中输出传送到解码器。如果一个应用遗漏(miss)发生,则数据块从本地存储器308读进存储器缓存器309之后,数据块从存储器缓存器309传送到解码器312。To improve performance efficiency by avoiding frequent reads/writes tolocal memory 308, in an exemplary embodiment,STB 300 uses a "sliding window" application technique to lock prospective data blocks inmemory buffer 309. If a hit occurs in the application window, the data block is output directly from thememory buffer 309 to the decoder. If an application miss occurs, the data block is transferred from thememory buffer 309 to thedecoder 312 after the data block is read from thelocal storage 308 into thememory buffer 309 .

在一个示例实施例中,STB 300通过红外(IR)远程控制单元按钮、IR键盘或前台按钮(包括暂停按钮、缓慢移动播放、反转、成套设备以及单步)响应于订阅客户的命令。在一个示例实施例中,如果订阅客户在预定的时间周期内没有输入任何动作(例如滚动节目菜单或选择归类或电影),就会自动地播放一个规划的商业广告。当订阅客户提供一个动作时(如按远程控制单元的按钮)该规划的商业广告自动地停止。在一个示例实施例中,STB 300可以自动地播放商业广告,同时,播放视频。服务提供商(如有线公司)可以设置售价策略以指定多少次的广告应中断正在播放的视频。In one example embodiment, theSTB 300 responds to subscribing customer commands via infrared (IR) remote control unit buttons, IR keypad, or front buttons, including pause button, jog play, reverse, kit, and single step. In one exemplary embodiment, a scheduled commercial is automatically played if the subscribing customer does not enter any action (such as scrolling a program menu or selecting a category or movie) within a predetermined period of time. When the subscribing customer provides an action, such as pressing a button on the remote control unit, the scheduled commercial automatically stops. In an example embodiment, theSTB 300 may automatically play commercials while, at the same time, playing the video. A service provider, such as a cable company, can set a pricing policy to specify how many times an advertisement should interrupt a video being played.

如果在数据包头中发现突发事件信息比特,STB暂停任何数据接收操作并控制其硬件调谐到为接收数据文件信息所保留的频道以获取并解码要在输出屏上显示的突发事件信息。在一个示例实施例中,STB 300是空闲的,它被调谐到为接收数据文件信息所保留的频道并且总是准备好无延迟地接收和显示任何突发事件信息。If an emergency information bit is found in the packet header, the STB suspends any data receiving operations and controls its hardware to tune to the channel reserved for receiving data file information to acquire and decode the emergency information to be displayed on the output screen. In one example embodiment,STB 300 is idle, it is tuned to a channel reserved for receiving data file information and is always ready to receive and display any emergency information without delay.

前述的示例描述了本发明的特定示例实施例,但对本技术领域内的人来说其它实施例、变化以及修改是很明显的。本发明因此并不限于上面讨论的特定的实施例,而是由所附的权利要求限定。The foregoing examples describe specific example embodiments of the invention, but other embodiments, changes and modifications will be apparent to those skilled in the art. The invention is therefore not limited to the particular embodiments discussed above, but only by the appended claims.

Claims (27)

1. data-on-demand (DOD) broadcasting method that is used to transmit client's generic data block sequence comprises:
Prepare client's conventional data transfer sequence of data block, wherein said client's conventional data transfer sequence has the time transmission characteristic that a son is optimized;
Optimize transfer sequence according to described son and will comprise a data file transfer of described sequence of blocks of data to a plurality of clients;
The transfer of data sequence of wherein preparing described son optimization comprises:
Receive a data file;
Specific time interval;
Described data file is divided into a plurality of data blocks according to the described time interval, so that each data block is displayable during the described time interval;
Determine to send the desired number of timeslots of described data file, wherein each time slot has the duration that is substantially equal to the described time interval;
With at least one distributes to each time slot in described a plurality of data blocks.
2. method according to claim 1 is irrelevant by the desired transmission bandwidth of the transmission of described data file and described a plurality of clients' quantity.
3. method according to claim 1, one of them client can visit the data file of being transmitted in the time slot of predetermined quantity.
4. as method as described in the claim 3, the time slot of wherein said predetermined quantity is 1.
5. as method as described in the claim 3, the time slot of wherein said predetermined quantity is 2 at least.
6. as method as described in the claim 3, the quantity of wherein said time slot is indicated selected bandwidth.
7. method according to claim 1 comprises a transmission electronic program guides (EPG), and wherein said EPG makes and receives customer selecting desired data file and check.
8. as method as described in the claim 7, wherein the EPG indication is used to receive the time of delay of selected data file.
9. one kind is used to receive the method for optimizing a plurality of data files of sequence of blocks of data transmission as son, comprising:
Receive user's input of at least one selected data file of indication;
At preset time in the cycle, described son is optimized at least one data block store in a plurality of data blocks of sequence of blocks of data in memory location;
In at least one first that shows described data file through described predetermined period of time rear line;
Receive described son and optimize at least one added block of a plurality of data blocks of sequence of blocks of data; And by at least one data block of institute's data blocks stored and described at least one added block are made up at least one second portion that shows described data file.
10. as method as described in the claim 9, wherein said at least one added block also is stored in memory location.
11., further be included in and play before the described data file to guaranteeing before being play, to obtain determining the stand-by period an of necessity by planning corresponding to the data block of described data file as method as described in the claim 9.
12. method as claimed in claim 11, the wherein said stand-by period is to determine according to the information in the packet header that is included at least one data block in the described son optimization sequence of blocks of data.
13. one kind is used for retrieving the equipment of optimizing a plurality of data file broadcasting of sequence of blocks of data as son on a plurality of time slots repeatedly, its neutron is optimized sequence of blocks of data and is had the time transmission characteristic that son is optimized, and comprising:
Be used for receiving from a user device of a file request, this user selects at least one data file from above-mentioned a plurality of broadcast data file;
Be used for an authority retrieval process of initialization process to retrieve the device of at least one data block of described sequence of blocks of data in the interim very first time;
Be used for after above-mentioned very first time interval, showing the device of the first of described data file;
Be used to retrieve the device that described son is optimized the remainder data piece of sequence of blocks of data;
Described at least one data block that utilization was retrieved in the interim very first time shows the device of the second portion of described data file in conjunction with at least one data block in the described remainder data piece.
14., further comprise the device that is used to ask the file of being asked is retrieved mandate as equipment as described in the claim 13.
15. as equipment as described in the claim 13, the electronic program guides (EPG) that receives by subscriber computer top box (STB) and offer this user wherein.
16. as equipment as described in the claim 15, wherein utilize the data that transmit with the EPG that selects corresponding to user's file, user STB automatically determines a download time and reproduction time, and at least a portion that automatically shows described file behind a latent period, described latent period duration response is in described download time and reproduction time.
17. as equipment as described in the claim 16, wherein this user STB automatically calculates the latent period duration in response to described reproduction time and described download time.
18. as equipment as described in the claim 17, wherein said latent period is further in response to the quantity of the data block that comprises described file.
19. one kind is used for retrieving the equipment of optimizing the data file broadcasting of sequence of blocks of data as son on a plurality of time slots repeatedly, its neutron is optimized sequence of blocks of data and is had the time transmission characteristic that son is optimized, and comprising:
Input unit is used for receiving a file request from a user, and this user selects at least one file in the broadcast data file;
Processor is used for an authority retrieval process of initialization process to retrieve at least one data block of described sequence of blocks of data in the interim very first time;
Display unit is used for showing after at interval in the very first time first of described data file;
Communication linkage, be used to retrieve the remainder data piece that described son is optimized sequence of blocks of data, wherein said display unit is further utilized the second portion that shows described data file at least one data block of interim very first time retrieval in conjunction with at least one data block in the described remainder data piece.
20. equipment as claimed in claim 19 further comprises the communication port that is used to ask the file of being asked is retrieved mandate.
21. equipment as claimed in claim 19 is wherein received EPG and is offered this user by subscriber computer top box (STB).
22. equipment as claimed in claim 20, wherein utilize the data that transmit with EPG corresponding to user's file option, user STB automatically determines a download time and reproduction time, and at least a portion that automatically shows described file behind a latent period, described latent period duration response is in described download time and reproduction time.
23. equipment as claimed in claim 21, wherein this user STB automatically calculates the latent period duration in response to described reproduction time and described download time.
24. equipment as claimed in claim 22, wherein said latent period are further in response to the quantity of the data block that comprises described file.
25. data-on-demand (DOD) broadcast system that is used to transmit a plurality of data files, wherein each data file is optimized the sequence of blocks of data transmission as son, and its neutron is optimized sequence of blocks of data and had the time transmission characteristic that son is optimized, and comprising:
The DOD broadcasting server is used to broadcast a plurality of data files;
Transmission medium is connected with described DOD broadcasting server communicatedly;
A plurality of receivers are connected with described DOD broadcasting server communicatedly by described transmission medium;
Wherein said DOD broadcasting server transmits a plurality of data files to described a plurality of receivers by described transmission medium repeatedly;
The authorization message of the corresponding selected data file of wherein said receiver request;
Wherein said receiver further work is to receive described authorization message; And
Wherein said receiver is further given the user in the part of preset time week after date demonstration selected data file, and wherein said predetermined period of time makes described recipient store the part of described data file before beginning to play described data file.
26. one kind is used for the set-top box device that visit is broadcasted as the DOD data file of son optimization sequence of blocks of data on wide area network, its neutron is optimized sequence of blocks of data and is had the time transmission characteristic that son is optimized, and comprising:
Input unit is used for receiving a file request from a user, and this user selects at least one data file in the broadcast data file;
Processor is used for an authority retrieval process of initialization process to retrieve at least one data block of described sequence of blocks of data in the interim very first time;
Display unit is used for showing after at interval in the very first time first of described data file;
Communication linkage, be used to retrieve the remainder data piece that described son is optimized sequence of blocks of data, wherein said display unit is further utilized the second portion that shows described data file at least one data block of interim very first time retrieval in conjunction with at least one data block in the described remainder data piece.
27. equipment as claimed in claim 26, wherein said processor automatically begin to show selected data file when receiving least part of selected data file.
CNB021182000A2001-04-242002-04-24 Method and system for transmission delay access to customer generic data-on-demand servicesExpired - Fee RelatedCN100405845C (en)

Applications Claiming Priority (16)

Application NumberPriority DateFiling DateTitle
US09/841,7922001-04-24
US09/841,792US20020023267A1 (en)2000-05-312001-04-24Universal digital broadcast system and methods
US09/870,879US20020026646A1 (en)2001-04-242001-05-30Universal STB architectures and control methods
US09/870,8792001-05-30
US09/892,015US20030208561A1 (en)2000-05-312001-06-25Counterfeit STB prevention through protocol switching
US09/892,017US20020026501A1 (en)2000-05-312001-06-25Decreased idle time and constant bandwidth data-on-demand broadcast delivery matrices
US09/892,0152001-06-25
US09/892,0172001-06-25
US09/902,5032001-07-09
US09/902,503US20020049980A1 (en)2000-05-312001-07-09Controlling data-on-demand client access
US09/933,696US20020059620A1 (en)2000-05-312001-08-20Selective inactivation and copy-protection
US09/933,6962001-08-20
US36420101P2001-10-252001-10-25
US10/003,6422001-10-25
US09/997,968US20020138845A1 (en)2000-05-312001-11-28Methods and systems for transmitting delayed access client generic data-on demand services
US09/997,9682001-11-28

Publications (2)

Publication NumberPublication Date
CN1411279A CN1411279A (en)2003-04-16
CN100405845Ctrue CN100405845C (en)2008-07-23

Family

ID=56290273

Family Applications (1)

Application NumberTitlePriority DateFiling Date
CNB021182000AExpired - Fee RelatedCN100405845C (en)2001-04-242002-04-24 Method and system for transmission delay access to customer generic data-on-demand services

Country Status (3)

CountryLink
JP (1)JP2005506725A (en)
CN (1)CN100405845C (en)
WO (1)WO2002086673A2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
WO2006048033A1 (en)*2004-11-032006-05-11Telefonaktiebolaget Lm Ericsson (Publ)Method and device for performance optimisation of a data distribution network
CN102867371A (en)*2012-09-192013-01-09四川德源电气有限公司Charging pile
CN105138384B (en)*2015-10-152018-09-18珠海格力电器股份有限公司Air conditioner and program upgrading method and device thereof

Citations (4)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
EP0749241A2 (en)*1995-06-151996-12-18International Business Machines CorporationFixed video-on-demand
WO1998056128A1 (en)*1997-06-061998-12-10Webtv Networks, Inc.Transmitting high bandwidth network content on a low bandwidth communications channel during off peak hours
US5892508A (en)*1995-04-251999-04-06Bellsouth CorporationSystem and method for providing television services
US5995092A (en)*1996-08-301999-11-30Yuen; Henry C.Television system and method for subscription of information services

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
US6018359A (en)*1998-04-242000-01-25Massachusetts Institute Of TechnologySystem and method for multicast video-on-demand delivery system
US6157949A (en)*1998-05-282000-12-05Industrial Technology Research InstituteData placement on direct access devices for media servers with cyclic re-broadcast capability
US6370688B1 (en)*1999-05-262002-04-09Enounce, Inc.Method and apparatus for server broadcast of time-converging multi-media streams

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
US5892508A (en)*1995-04-251999-04-06Bellsouth CorporationSystem and method for providing television services
EP0749241A2 (en)*1995-06-151996-12-18International Business Machines CorporationFixed video-on-demand
US5995092A (en)*1996-08-301999-11-30Yuen; Henry C.Television system and method for subscription of information services
WO1998056128A1 (en)*1997-06-061998-12-10Webtv Networks, Inc.Transmitting high bandwidth network content on a low bandwidth communications channel during off peak hours

Also Published As

Publication numberPublication date
CN1411279A (en)2003-04-16
WO2002086673A2 (en)2002-10-31
JP2005506725A (en)2005-03-03
WO2002086673A3 (en)2003-07-03

Similar Documents

PublicationPublication DateTitle
US6725267B1 (en)Prefetched data in a digital broadcast system
EP1389874B1 (en)Fast digital channel changing
US20020175998A1 (en)Data-on-demand digital broadcast system utilizing prefetch data transmission
US20030084461A1 (en)Method and apparatus for transmitting non-VOD services
US20030051249A1 (en)System and method for data insertion (commercials) in client generic data-on-demand broadcast transmissions
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 (en) Method for providing video-on-demand services for broadcast systems
CN100405845C (en) Method and system for transmission delay access to customer generic data-on-demand services
KR20030092105A (en)Data-on-demand digital broadcast system utilizing prefetch data transmission
EP1340376A1 (en)Decreased idle time and constant bandwidth data-on-demand broadcast delivery matrices
TWI223563B (en)Methods and systems for transmitting delayed access client generic data-on-demand services
EP1402331A2 (en)Methods and systems for transmitting delayed access client generic data-on demand services
WO2003048894A2 (en)System and methods for data insertion (commercials) in client generic data-on-demand broadcast transmissions
KR20040063795A (en)Transmission of delayed access client data and demand
KR20030051800A (en)Decreased idle time and constant bandwidth data-on-demand broadcast delivery ma-trices
KermodeA novel method for video-on-demand via digital broadcast
HK1047633A (en)Systems and methods for providing video-on-demand services for broadcasting systems
HK1063405B (en)Fast digital channel changing
HK1124714A (en)Data-on-demand digital broadcast system utilizing prefetch data transmission
HK1063405A (en)Fast digital channel changing

Legal Events

DateCodeTitleDescription
C06Publication
PB01Publication
C10Entry into substantive examination
SE01Entry into force of request for substantive examination
C14Grant of patent or utility model
GR01Patent grant
C17Cessation of patent right
CF01Termination of patent right due to non-payment of annual fee

Granted publication date:20080723


[8]ページ先頭

©2009-2025 Movatter.jp