JP2000505983A - データ流を供給するための方法および系 - Google Patents

データ流を供給するための方法および系

Info

Publication number
JP2000505983A
JP2000505983A JP10528592A JP52859298A JP2000505983A JP 2000505983 A JP2000505983 A JP 2000505983A JP 10528592 A JP10528592 A JP 10528592A JP 52859298 A JP52859298 A JP 52859298A JP 2000505983 A JP2000505983 A JP 2000505983A
Authority
JP
Japan
Prior art keywords
data
group
data stream
buffer
interval
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.)
Abandoned
Application number
JP10528592A
Other languages
English (en)
Other versions
JP2000505983A5 (ja
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.)
Koninklijke Philips NV
Original Assignee
Philips Electronics NV
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Philips Electronics NV filed Critical Philips Electronics NV
Publication of JP2000505983A publication Critical patent/JP2000505983A/ja
Publication of JP2000505983A5 publication Critical patent/JP2000505983A5/ja
Abandoned legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/232Content retrieval operation locally within server, e.g. reading video streams from disk arrays
    • H04N21/2326Scheduling disk or memory reading operations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/173Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal
    • H04N7/17309Transmission or handling of upstream communications
    • H04N7/17336Handling of requests in head-ends

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

(57)【要約】 ビデオ・オンデンド・サーバのような系(100)において、読取り器(180)は、蓄積媒体からのデータを読取り、その読取りデータをバッファ群(125)に蓄積する。データは、多数のデータ流の形で、消費用にバッファ(125)から使用者(130)に供給される。データ流は、固定もしくは可変で同じ最大毎秒データ要素消費率Rmaxとすることができる。読取り器(180)は、予定器(170)により制御される。予定器(170)は、tcycle秒の予定周期を分割し、各活動データ流毎に、少なくともRmax *cycleのデータ要素をそれぞれtinterval秒のn周期に蓄積媒体から読取り得るようにする。各データ毎に、対応したバッファ(125)が少なくともRmax *(n+1)*intervalのデータ要素を蓄積するために留保されている。データは、一群のデータ流に対し、蓄積媒体(110)を繰返し掃引することによって蓄積媒体(110)から読取られる。読取り器(180)に次の掃引を行わせる直前に、予定器は、データを供給すべき次の群のデータ流の構成を決定する。対応するバッファ(125)がRmax ** interval以下のデータ要素を備えたデータ流がその群に少なくとも割当てられる。

Description

【発明の詳細な説明】 データ流を供給するための方法および系 本発明は、それぞれのデータ流が同じ最大毎秒データ要素消費率Rmaxを有す る複数データ流の形での使用者による消費用にデータの読取りを予定するために 、 i)tcycle秒の予定周期をそれぞれtintervalの順次のn時間周期に分割し 、 ii)少なくともRmax *(n+1)*intervalのデータ要素を蓄積し得る対 応したバッファを各データ流毎に留保し、 iii)データ流を複数の別々の群に構成配置し、 iv)その複数群中の第1の群の各データ流用に一掃引で蓄積媒体からデータを 読取り、そのデータを対応するバッファに蓄積する 各過程を備えた方法に関するものである。 本発明は、さらに、過程(iii)と過程(iv)との順次の反復実施と、各反復毎に 対応するバッファがRmax **interval以下のデータ要素を備えたデータ流 を過程(iii)で第1の群に少なくとも割当てることによるデータ流の各群への再 配置とを備えたことを特徴とする方法に関するものである。 この種の方法および系は、多数体奉仕器、特に、ビデオ・オンデマンド・サー バに用いられている。かかる系における一般的要求は、各活動的使用者に対して データの継続した絶え間のない流れを供給することである。典型的データは、普 通、RAIDシステムのようなディスク列に並べられるハードディスクなどのよ うな普通の蓄積媒体から読取られる。連続したデータ流としてデータを使用者に 供給するには、ディスク群からデータを読取るための特別の予定計画は、データ が使用者に供給される前に、読取りデータを一時緩衝するための適切な計画を必 要とする。一般に、固定の消費率と可変の消費率とは区別することができる。 固定消費率系では、データは、典型的に、固定率データ流として使用者に供給 される。かかる系の一例は、ニア・ビデオ・オン・デマンド・システム(近映像 受注系)であり、ここでは、多数のフィルムが並列に演奏され、同じフィルムが 数個所で並列演奏されることもあり、ここでは、例えば5分毎もしくは15分毎 に、同じフィルムの新たなコピーがスタートされる。固定消費率系の普通の計画 手順は、いわゆるSCANアルゴリズムである。このアルゴリズムでは、固定正 常間隔で、各流れに対し、(一周期続けるに十分な)固定量のデータが読み取ら れて、バッファに蓄積される。典型的には、各流れに対し、2ブロックを蓄積す る容量のバッファが用いられ、一つはディスクからのデータ読取り用であり、一 つは使用者へのデータ供給用である。ディスクからの読取りは、全ての流れに対 し、(例えば、ディスクの外縁から内縁へ、もしくは、その逆の)一掃引で起こ る。ディスクのアクセスは、流れのデータが偶々ディスク上で位置する順に行わ れる。典型的には、掃引とバッファ読取りとは同期し、全ての流れに対するバッ ファ群は同じバッファ位置から読取られ、新たな掃引は、全ての読取り位置が一 方のブロックから他方のブロックに変わった瞬間(各バッファでブロックが空に なったことを意味する)に開始される。掃引の最大期間は、バッファからのブロ ックの読取り用途に要する時間に相当する。ディスクにデータを蓄積するのに前 提条件は付けられず、特定の流れが、一掃引で最初に役立ち、次の掃引で最後に 役立つことを意味する。その結果として、ブロックの寸法の2倍のバッファが必 要となる。 可変消費率系では、使用者がデータを消費する率が時間によって変わる。典型 的には,最大消費率は、各データ流毎に規定することができる。実際には、(例 えば、一方の最大をオーディオ流用とし、他方の最大をビデオとオーディオとの 組合わせ用として)異なった最大消費率で効率よく流れを支持することができる 。 可変消費率系は、例えば、休止や遅動などVCR様の作用を支持する系や、M PEG−2など、可変ビット率のデータ消費計画を用いる系用に用いられる。S CANアルゴリズムは、最大率が規定された可変消費率系用にも用いることがで きる。可変率によれば、異なった流れは、異なった時点でバッファブロックの一 つを空にすることになる。各流れ毎に最悪の場合に備えて、3ブロックのバッフ ァが必要となる。(例えば、掃引の始めに、流れはブロックをほぼ空にし、(そ の結果、ブロック全体は読取り得ないので、その掃引ではその流れが跳び越され 、)次の掃引の始めには、その流れが2ブロックをほぼ空にし、(その結果、1 ブロックがその掃引で負荷され、)その掃引の期間中その流れが続けて役立つ状 態でコピーするには、全部で3ブロックが必要となる)。 固定消費率系については、SCANアルゴリズムの改良が、P.S.ユー、M チェン、D、D、カンドラ共著「多媒体蓄積管理用群別掃引計画」コンピュータ サイエンス712の講義録:ディジタル・オーディオ・ビデオ用ニューヨーク操 作系支持から知られている。この群別掃引計画(GSS)によれば、総数Nのデ ータ流がn群に分割される。tcycle秒の一全周期で、各群毎に掃引が行われ、 各群は、固定の順で役立つ(通常、ラウンド・ロビン方式を参照して、固定順で 周期的に役立つ)°各掃引については、n*interval=tcycleとして、tint erval 秒の最大期間が留保されている。流れは、固定的にある群に割当てられる 。この固定の割当てによれば、ある流れが、まず一周期で役立ち、続いて次の周 期で役立つことは許されない。したがって、バッファの所要量は、2個の大ブロ ックからn+1個の小ブロックに低減される。概説すれば、n掃引の期間はSC AN系の1大掃引に相当し、n個の小ブロックはSCANアルゴリズムの大きい 1ブロックに相当する。実際には、n小掃引は1大掃引より長く時間が掛かるの で、緩衝の実効は薄れる。各系毎に、最良群数が計算される。原理的には、各流 れが固定的に各群に割当てられるが、例えば、系を離れる流れが起す群間のバラ ンスを改善するために、周期間で再割当てが行われることもある。流れの再割当 てには、余分の緩衝および準備が必要となる。 GSS系の固定的性質は、その結果として、新たな流が系によって受入られる までには、比較的長い遅れを生ずることになる。また、系は、可変消費率の流れ を取扱うには適さない。 本発明の目的は、柔軟性を増大させ、特に、応答時間を短くし得たGSS計画 のような方法および系を提供することある。本発明の他の目的は、可変率の流れ に適用し得、特に、可変率系におけるバッファの必要量を低減したGSS計画の ような方法および系を提供することにある。本発明のさらに他の目的は、さらに 頑健な方法および系を提供することある。 かかる目的を達成するために、本発明による方法は、過程(iii)と過程(iv)と の順次の反復実施と、各反復毎に対応するバッファがRmax **interval以 下のデータ要素を備えたデータ流を過程(iii)で第1の群に少なくとも割当てる ことによるデータ流の各群への再配置とを備えたことを特徴とする。各掃引の直 前に、次に掃引すべき(すなわち、次の掃引で役立つべき)データ流の群を形成 することにより、計画の柔軟性が増大する。次の群に次の掃引で役立つべきデー タ流を含めることにより、さもないと、対応するバッファ内のデータの量が2掃 引を続けるのに十分であることを保証し得ないのであるから、バッファの不満は 起こり得ない。固定消費率系では新たな流れを受け入れるのに利用し得る余地が ある場合には、(要すれば)群を使い切った直後に再平衡が起こり得る。これは 、系の応答時間を低減し得ることになる。これは、新たな流れが屡々現われる可 変消費率系では一層重要でさえある。かかる系の一例は、他のフィルムの演奏( すなわち、一方の流れから他方の流れへの切換え)による、急速前進および急速 逆進の走査のような、VCR同様の機能を得た系である。かかる方法が、同じ最 大消費率を有する可変消費率流に用いられると、(データの小ブロックが最大消 費率でtinterval秒続けるのに十分であるとして)n+1個の小ブロック程度に バッファの必要量が低くなる。各流れが固定的に各群に割当てられ、対応する群 の掃引期間中に各流れ毎にブロック全体が読取られるGSS計画が、それぞれ流 れのバッファが余分のブロック全体を蓄積し得ない場合には、掃引時に一つの流 れが跳び越されるように余分に修正した可変消費率系に適用された場合には、各 データ流毎に2n+1ブロックのバッファを必要とする結果になることに留意す べきである。また、本発明による方法の頑健さは、ディスクからバッファへの回 復とバッファから使用者へのデータの供給との間の同期を破ることによって改善 されている。これは、同期を十分に維持するのが困難もしくは不可能でさえある 幾多の状態で、この方法が使用されるようにしている。十分に同期した系では、 奉仕器から使用者側の設定器への回路網と使用者へのデータの表示とが十分に同 期している必要がある。実際には、これは達成が困難である。 可変消費率系はJ.K.デイ、C、シー、M,クマー共著の「高速度回路網環 境用大多媒体奉仕器の副蓄積系の設計」スピー会報、2188巻、200〜21 1頁、1994年から知られている。この系では、ディスク・ブロック寸法が1 トラックに対応するように選択された固定寸法のディスクから各ブロックが読み 取られている。RAID系に構成配置されたディスク群は、64KBの仕切り8 個に副分割された256KBの収容場所を有している。ディスクは、8指令に応 じて、探索時間が最小となる順で各指令を実行することができる。予定器は、最 先期限第一(EDF)の基準に基づいた8本の流れを各掃引毎に選択している。 あるブロックの期限は、当該ブロックからの最初のデータが、回線網を介し、消 費者に伝達されるべき時間である。新たな流れは、つぎの形の受け入れ制御を用 いて受け入れられる。8ディスク・トラックの伝達に対応する時間周期が単位と して扱われる。原理的には、次と将来の全てとの時間周期は、ある時点でディス クが、時間単位の期間に8回以上アクセスされる必要あるか否かを知るために、 全ての活動的流れと新たな流れとに基いて験される。その必要がある場合には、 新たな流れは受け入れられない。このアルゴリスムにおける受入れ制御は長たら しいものである。これは、部分的には、流れ毎に決まった最大消費率を有してい ない系によって起こされたものであり、新たな流れの全期間に対して容量を利用 し得るか否かの判定を困難にしている。そのうえに、この系は静的であり、すな わち、流れは、その流れの全期間に亘って他の現存の流れと並列に支持され得る ことに基いて受入れられ、これに影響するVCR同様の作用は簡単にはできない ことを意味する。 本発明による方法の他の実施例は、データ流に対応するバッファがRmax *( i+1)*interval以下のデータ要素を備えるように各データ流毎に最小数i =1乃至nを決定してデータ流を群g1に割当てることにより、g1が第1の群に 対応する精々nの予備群g1乃至gnにデータ流を構成配置する過程と、 −群gi(i=n乃至2)の全データ流に対応するデータをtinterval秒内に読 取り得るか否かを確かめ、 −読取り得ない場合には、群g1のデータ流を繰返し選択して、群g2の残りの全 データ流に対するデータをtinterval秒以内に読取り得るまで、選択したデータ 流を群g1から除去し、 −選択したデータ流を先行群gj(j=1乃至i−1)に割当てることによって 予備群gn乃至g2を順次に試すことにより、予備群にデータ流を再割当てする過 程と を過程(iii)に備えたことを特徴とする。 掃引開始の前に、各流れは、それぞれの群の範囲で、すなわち、時間周期内で 、その流れが最後に役立つ必要があると各流れ毎に判定することにより、各群に 予備的に割当てられる。これは、バッファの不満を避けるものである。さらに、 この予備的な割当ては、平均してバッファにより高い充填率が結果として得られ る最小残留データ(最先期限)を各流れに恵むことになる。これは、今後は、現 存の流れの役立ちを遅らせて、新たな流れの参入を許す付加的な自由度を与える ことになる。最大率以下の率で各流れがデータを消費し得る可変率系において、 最新の群の一つに予備的に割当てる流れが多過ぎる(すなわち、かかる群の流れ が全部はtinterval秒以内に役立ち得ない)のを避けるために、各流れが繰越さ れる(すなわち、より早期に役立つように予定される)。この割当て計画は、自 由な容量が直ちに利用可能となる(すなわち、十分には満たされない最初の群で 、何れの流れもバッファの不満を生ずることのない)結果が得られる。これは、 自由空間の使い方に十分な柔軟性を与える、 本発明による方法の他の実施例は、活動データ流に対しては使用者がデータを 消費し、休止データ流に対しては使用者が目下データを消費していない少なくと も活動および休止の状態を含む複数の状態の一つにデータ流があるとともに、 次の掃引で第1の群のデータ流を役立てる他に、最大tinterval秒の総合掃引 期間内で少なくとも1つの余分のデータ流を役立てるのに十分な容量が残ってい る場合には、 再出発信号を受信している休止データを選択して、 選択したデータ流を第1の群に割当てることを特徴とする。この実施例において は、有利なことに、休止流れを最先の時点で再付活して、休止流れに対する応答 時間を低減させるのに自由空間が用いられる。 本発明による方法の他の実施例は、活動データ流に対しては使用者がデータを 消費し、休止データ流に対しては使用者が目下データを消費していない少なくと も活動および休止の状態を含む複数の状態の一つにデータ流があるとともに、 役立て得るデータ流がまだ予定の最大個数に達しておらず、新たなデータ流を 含める要請が受取られており、次の掃引で第1の群のデータ流を役立てる他に、 最大tinterval秒の総合掃引期間内で少なくとも1つの余分のデータ流を役立て るのに十分な容量が残っている場合には、 包含要請を受け取っている新たなデータ流を選択して、 選択したデータ流を第1の群に割当てることを特徴する。この実施例においては 、有利なことに、新たな流れをを最先の時点で役立たせて、新たな流れに対する 応答時間を低減させるのに自由空間が用いられる。 本発明による方法の他の実施例は、先行繰返しにおける過程(iv)の完了の直 後に過程(iii)および(iv)の新たな繰返しを開始することを含むことを特徴と する。周知のGSS計画によれば、掃引には最高でtinterval秒掛かり、次の掃 引は、先行掃引がより早く完了した場合でさえも先行掃引が開始された後tinte rval 秒で開始される。本発明によれば、先行掃引が完了した直後に、次の掃引を 開始させることができる。このようにして、時間を浪費することなく、低い応答 時間を達成することができる。掃引は、最大許容のtinterval秒以下しか時間が 掛からず、例えば、最大個数の流れが群に存在しない場合にも、(可変率の系で は典型的な)最大量のデータを各流れが要求することなく、実際のディスク時間 (探査時間および輪番の潜伏時間)は計算による最悪の場合よりも少なくなり、 もしくは、実際のディスク伝導率が最悪の場合の状態より高くなる。 本発明による方法の他の実施例は、第1の群のデータ流についてデータ流に対 応するバッファ内の自由データ要素の量を決定して、その量まで蓄積媒体から自 由データ要素を読取ることを特徴とする。可変ブロック寸法で蓄積媒体からデー タを読取ることにより、(データのブロックは、最大消費率でtinterval秒続け ば十分であるとして)n+1個の小ブロックのみの小さいバッファを用いること が可能でなる。ハードディスクのような蓄積媒体から可変寸法のデータを読取る のは、1ブロックを読取るのにディスクを2回アクセスする必要を避けるために 、手元のファイルとして媒体上にデータを蓄積するための計画を恵むことになる ことに留意すべきである。また、ファイルが群として蓄積される場合(群が理論 的に互いに結び付き、物理的にランダムな順序で媒体に蓄積させる場合や、理論 的に互いに追随した群が部分的に同じデータを含んでいる場合(すなわち、群の 終端の部分のデータが次の始端の部分のデータと重なる場合)にも用いられる。 かかる群の重なりは、本願人の特表平10−506746号公報に記載されてい る。 本発明による方法の他の実施例は、群giのデータ流を選択する過程が当該デ ータ流に対応するバッファ内に残るデータが最小のデータ流の選択を含んでいる ことを特徴とする。このようにして、バッファの平均充填率は高くなり、余分の 自由を与える。 第1の群の各データ流に対する各掃引の期間中に、Rmax *cycleのデータ 要素にほぼ対応する所定ブロック寸法の蓄積媒体からデータを読取るようにした 本発明による方法の他の実施例は、群gi(i=n乃至2)の全データ流に対す るデータがtinterval内で読取れるか否かを確かめる過程が、予備群giに割当 てられたデータ流の個数の判定、および、tinterval秒内に、蓄積媒体からある 量のデータ要素を読取って最大消費率Rmaxでtcycle秒の消費を続け得ることが 保証されるデータ流の最大個数にkが対応するとして、kより小さいかkに等し い個数のデータ流が予備群giに割当てられている場合に、群giの全データ流 に対するデータを読取り得ることの決定を含んでいることを特徴とする。データ が固定ブロック寸法で媒体から読取られる場合に、これは、予備群に含まれてい る流れが多過ぎるか否かの判定の簡単な基準となる。 本発明による方法の他の実施例は、過程(ii)が、i=1乃至n対し、複数の データ流からの最大kのデータ流の選択、および、少なくともRmax *(n+i +1)*intervalの要素を蓄積し得る対応したバッファの選択されたデータ流 への割当てを備えていることを特徴する。固定寸法のブロックが蓄積媒体から読 取られるこの実施例では、平均して、11/2n+11/2の小ブロックを蓄積 し得るバッファが、然らざる場合に、固定寸法のブロックが読み取られる状態で 必要とされた2n+1の小ブロックよりかなり少ない流れに対して必要とされる 。固定寸法のブロックはnの小ブロックに相当することに注意されたい。 本発明による方法の他の実施例は、過程(ii)が、tcycle秒内に蓄積媒体か らある量のデータ要素を読み取って最大消費率Rmaxでtcycle秒の消費を続け得 ることが保証されるデータ流の最大個数にKが対応するとして、少なくともK * max *cycleのデータ要素を蓄積するためのバッファ・プールの留保、 少なくともRmax **intervalのデータ要素を蓄積するためのバッファの データ流のそれぞれに対する固定的な割当て、および、少なくともともRmax * *intervalのデータ要素の一部の第1の群のデータ流の流れのそれぞれに対 する動的な割当て を備えていることを特徴とする。これは固定寸法のブロックが読み取られる状態 で、バッファの必要量を流れ当りn+2の小ブロックに低減することになる。 本発明による方法の他の実施例は、バッファ・プールが第1の群のデータ流の 割当てに必要とする未割当ての蓄積スペースを十分に備えていない場合に、第1 の群の一員ではない少なくとも一つのデータ流を選択し、選択されデータ流に割 当てられたバッファの部分の少なくとも一部の割当てを外すことを含むことを特 徴とする。特に、多数の流れが最大率でデータを消費しておらず、その結果、次 に役立てる必要がある流れへの割当てには不十分な余地しかバッファ・プールに 残されていなくなった場合に、多数の流れがn+1以上の小ブロックを用いると いう状態が生じ得る。かかる状態では、バッファ・プールの一部が、次の掃引期 間に役立てる必要のない流れから割当てを外される。 本発明による方法の他の実施例は、割当て外しのためのデータ流の選択が、バ ッファ・プールの割当て部分に蓄積したデータの大部分を有するデータ流の選択 を含んでいることを特徴とする。このようにして、流れに対するバッファの平均 充填率が高まり、余分の自由度が与えられる。 本発明による方法の他の実施例は、少なくともRmax *cycleのデータ要素 のユニットで割当て外しが行われることを特徴とする。特に蓄積媒体から固定寸 法のブロックでデータが読取られる系については、同じ寸法のブロックの割当て を外して、次回のブロック全体の読取りに2回以上のディスク・アクセスが必要 となるのを避ける。 本発明の目的を達するために、本発明による系は、過程(iii)と(iv)とを順次 に繰り返して実施し、各繰返し毎に、過程(iii)で対応するバッファがRmax ** intervalのデータ要素を備えるデータ流を少なくとも第1の群に割当てること により、各群にデータ流を再割当てするように予定器を構想することを特徴とす る。 本発明のかかる面は、つぎの図面に示す実施例から明らかであり、つぎの図面 を参照して説明されよう。 図1は、本発明による系を示すブロック線図である。 図2は、データ流の予備群への割当ての態様の例を示す線図である。 図3は、異なった寸法のバッファのデータ流の群への割当ての態様の例を示す 線図である。 図4は、異なった寸法のバッファ群の使用の態様の例を示す線図である。 図5は、プールしたバッファ群の使用の態様の例を示すブロック線図である。 図1は、本発明による系100のブロック線図を示すものである。かかる系1 00の例は、多媒体奉仕器である。多媒体の適用は、オーディオ・ビデオ資材の 使用によって特徴付けることができる。オーディオもしくはビデオの再生には、 オーディオ・ビデオ・データの(ほぼ)連続した供給を必要とする。多媒体奉仕 器(サーバ)の従来周知の例は、近ビデオ受注奉仕器およびビデオ受注奉仕器を 含んでいる。近ビデオ受注系では、奉仕提供器が何時表題を再生するかを決める 。表題のデーダを含んだデータ流は、多数の使用者が同時に受信することができ る。ビデオ受注系では、典型的には使用者が表題を選択して、VCR同様の制御 により表題の再生を制御する。相互作用のレベルは比較的高く、データ流は典型 的に唯一の使用によって消費される。多媒体奉仕器は、通常、特に連続したデー タ流を供給するように設計されたファイル奉仕器を用いて設けられる。通常、若 干の多媒体表題が背景蓄積媒体110に蓄積されている。ここで、通常ハードデ ィスクのようなディスクが、背景蓄積媒体110として、低コストでの大きい蓄 積容量と無作為アクセスの可能性とに基いて用いられる。光学ディスクのような 他の蓄積媒体、もしくは、固体メモリさえ用いられることが期待される。この系 100は、蓄積媒体110からデータを読取るための読取り器180を備えてい る。読取り器180は、例えば、SCSIインターフェースを用いて設けられる 。有利なことに、蓄積媒体110も系100に含まれる。ディスク向け蓄積媒体 110用には、ディスク・アクセス・ブロック(DAB)としてデータが回復さ れる。選択した予定アルゴリズムによって、固定寸法のDABもしくは可変寸法 のDABとしてのデータの読取りに好みが向けられる。多数の表題を蓄積し得る ようにするには、蓄積媒体110用に、ディスク列がRAID(低価格ディスク の過多 列)系の形で用いられる。高ディスク帯域幅と同時に異なるディスクの負荷平衡 とを達成するために、DABを小ブロック群に分割してそれぞれを別の異なるデ ィスクに蓄積する、いわゆる縞分けが用いられる。その説明の目的では、ディス ク列は高帯域幅のディスクと見做される。通常、ディスクから順次に読取られた DABは、(例えば、ファイルが隣接して蓄積されず、あるいは、順次のDAB が、異なる流れに必要とされるために、異なったファイルに属して)ディスク上 に隣接して蓄積されてはいない。その結果、ディスク・ヘッドは動かさなければ ならず、次のDABの適切な開始点は探さなければならなくなる。かかる切換え にはかなりの時間が掛かり、その間データは読取り得ない。かかる切換えの行過 ぎを減らすためには、いわゆるディスク掃引が屡々用いられる。かかる計画では 、読取り器180は、多数の、例えば8個のDABを蓄積媒体110から一束で 読取ることができる。読取り動作として、ディスク・ヘッドは、一方向にのみ( 例えば、最内側から最外側、もしくは、その逆に)動き、束毎にDABの読取り を止める。このようにして、切換えの行過ぎはかなり減らされる。有利なことに 、読取り要求の束を受入れて、特定のディスクに最良の掃引を行なうために、要 求された読取り動作の必要な予定を内部的に行なうようにした読取り器180が 用いられる。読取り器180は、また、ディスクからの読取りとは潜在的に異な った順に、バス40を介して系100の残部にデータを供給する前に、ディスク から読取ったデータを一時蓄えておく隠しメモリを含んでいることもある。 特にビデオ用にはデータ流が極めて大量になることがある。その量を減らすに は、典型的に、圧縮技術が用いられる。圧縮計画の結果として、例えばMPEG −1符号化を用いた固定率データ流、もしくは、例えばMPEG−2符号化を用 いた可変率データ流が得られる。本発明による系は、可変率データ流については 同じ毎秒固定最大消費率Rmaxのデータ要素が与えられ、最悪の場合(例えば、 全データ流が最大データ率でデータを消費する場合)でも系がなお動作するのを 確実にするために、系の寸法(例えば蓄積の寸法および系の帯域幅)を決めるの に用いられる。通常、データは、蓄積媒体110に蓄積されて、系100により 圧縮した形で処理され使用者130の側でのみ、復号器を用いて、データ流が復 号される。特に、可変率系に対して、系100は、VCR同様の制御作用を維持 することもできる。かかる場合に、データ流は、少なくとも活動状態と休止状態 とを含む多くの状態の一つにあり、活動データ流はデータを使用者に供給するこ とができ、休止データ流は目下データを使用者に供給し得ない。典型的には、使 用者がデータの消費を一時停止した場合に、データ流は活動状態のままである。 使用者がデータ流を切換え(例えば、はっきりと新たな題目を選び、もしくは、 例えば、系を早送りで動作させて、その結果、同じ表題で早送りされる新たなデ ータ流を選ぶことにより、暗に新たなデータ流が提供された場合には、そのデー タ流は、一時休止して、新たなデータが負荷されるのを許すことになる。(デー タ流は活動状態のままにして)低率でデータを消費し、もしくは、(データ流を 一時休止させて)新たな流れに切換えることにより、運動作用が行われることが 期待される。系100は、データ流に対し、現下の状態を示す流れの状態を維持 する。若干のデータ流に対する流れの状態は、奉仕器の主メモリ(RAM)もし くは特別の記録器などの状態メモリ190に蓄積される。 一時に一つだけデータ流について、もしくは、前述したように、一束のデータ 流について、蓄積媒体110からデータが読取られ、その束のデータは、時間多 重のデータ流として、バス140を介し、供給される。あらゆる場合に蓄積媒体 110は、連続したデータ流を系の使用者全部に同時に供給することはできない 。その替わりに、データ流の副組に対するデータが読取られて、より高いデータ 率で系100の残部に供給され、ついで、対応するデータ流によって消費される 。したがって、系100は、使用者130への必要な率でのデータの供給を達成 するためのバッファ群120を備えている。通常、バッファ群120は、RAM を用いて設けられる。さらに、系100は、データ流のデータを使用者に伝達す るための通信手段150を備えている。通信手段150は、系100の近傍に位 置した使用者にデータを供給するための局部地域回線網のような任意の適切な手 段によって形成することができる。実際には、通常、遠隔通信回線網が、より長 い距離に亘ってデータを供給するために用いられる。 系100は、その系100を制御するための制御ユニット160も備えている 。制御ユニット160の主要部分は、予定器170で形成され、バッファ群の不 備もしくは溢れが生ずるのを避けるために、読取り器180によって蓄積媒体1 1 0から何れのDABを読取るかを決定する。この制御ユニット160は、典型的 には、RISC型もしくはCISC型のマイクロプロセッサのようなプロセッサ により形成され、実時間動作系の制御のもとに動作し、ROMもしくはハードデ ィスクのような蓄積媒体から負荷される。予定器170は、動作系に集積された ソフトウェアとして設けられ、あるいは、適用プログラムとして負荷される。典 型的には、予定器170は、バッファ群の充填率などの状態情報を受信し、その 情報に基づいて予定器170の決定を行なう。VCR同様の制御を行なう系につ いては、予定器170は、データ流の状態に関する情報も受信する。かかる系に おいては、典型的には、使用者130から通信手段150を介して制御情報が受 信される。 系100は、データ要素を例えばバイトとして、最大毎秒データ要素消費率Rmax でそれぞれデータを消費するN並列活動データ流を支持し得る大きさにして ある。Nデータ流全部に対し、最大消費率Rmaxの消費を所定周期tN続けて、蓄 積媒体110からある量のデータ要素を所定周期tN内に読取り得ることが補償 されているものとする。Nデータ流全部が一つの大きい動作で順次に役立つ場合 には、かかる動作の継続期間が重要であり、大きいバッファ必要量に通じ、新た なデータ流の系への参入がかかる動作の相互間にのみ許されるので、応答時間が 極めて悪化する。 本発明による実施例では、動作時に、予定器170が活動データ流の副組を備 えた第1の群を決定し、その第1の群の各データ流に関するデータを蓄積媒体1 10から一掃引で読取るのに読取り器180を用いる。予定器170は、総合バ ッファ120のうち、系における各データ流に対して対応したバッファ125が 確実に利用可能となるようにする。読取り器180で読取ったデータは、データ 流に対応したそれぞれのバッファ125に蓄積される。この群は、最大kのデー タ流に制限されている。論理的には、n*interval<=tN<(n+1)*i nterval として、最大期間長tinterval秒をそれぞれ有するnタイムスロットに 全期間tNが分割される。このように、kは、最大消費率Rmaxでの消費をtN秒 続けて、ある量のデータ要素が蓄積媒体から読取られるのを補償するデータ流の 最大個数に対応する。n群に対応する連続nタイムスロットの期間中に、少な くともK=n*kのデータ流を役立て得る。nがNの約数でなければ、KはNに 等しくなり得ないことが判る。これは、タイムスロットの一つを、好みにより、 より長くかより短くすることによって補償される。この説明の残部については、 活動データ流のこの系に許された最大個数がKであり、n掃引でKデータ流を役 立てるための最大期間長がtcycle=n*intervalである、と仮定する。最悪 の場合の状態では、Kデータ流のそれぞれがtcycle秒の期間に1回だけ役立ち 、各データ流が、Rmax *cycleのデータ流を蓄積するのに少なくとも一つのバ ッファを必要とすることを意味する。本発明による系は、ディスク上のデータ配 置を制限していないのであるから、データ流は、nタイムスロットの所定周期に おけるあるタイムスロットの期間中にまず役立ち、次の周期の対応するタイムス ロット中に最後に役立つようにすることができる。これはデータ流バッファは、 少なくともRmax *intervalだけ余分のデータ要素を蓄積し得る必要があり、 その結果、たまったバッファの大きさが少なくともRmax *(n+1)*inter val データ要素になることを意味する。 第1群の各掃引の前に、予定器170は、データ流を第1群よ割当てる。第1 群を決定して、その第1群について掃引するこの過程は、連続的に繰り返される ので、掃引の目的に対し、次に掃引すべきデータ流、すなわち、その時点で第1 群に割当てられているデータ流、および、次に掃引されるには至らないデータ流 、すなわち、残余のデータ流の相互間の区別のみが行なわれる。予定器170は 、対応するバッファがRmax **intervalより少ないデータ要素を備えたデ ータ流が少なくとも確実に第1群に割当てられるようにする。このようにして、 次のtinterval秒の期間中にはバッファにはバッファの未満が避けられる。 他の実施例においては、好都合にも、全時間周期についてかかる未満が避けら れる。その目的で、予定器170は、各群が順次に引き続くn時間周期に対応す る(第1群g1が次の時間周期に対応し、第2群g2が2番目の時間周期に対応す る、などの)ようにして、最初にデータ流を個別のn群に分配することにより、 第1群の構成を決定する。この最初の配置は、直近の何れの時間周期で役立て得 るかを決定し、各データ流を対応した群に割当てることに基づいたものである。 一例として、あるデータ流のバッファが2*max *interval乃至3*max *intervalのデータ要素を備えている場合には、そのデータ流は群g2に割当 てられる。このようにして、各データ流について最小個数i=1乃至nのデータ 要素が決定され、そのデータ流に対応するバッファがRmax *(i+1)*int erval より少ないデータ要素を備え、そのデータ流が群g2に割当てられることに なる。特に、可変率系に対しては、第1群は、平均より少ないデータ流を含むこ とになり勝ちである。可能な最初の分配の例を図2aに示すが、この例では、あ る周期のタイムスロットの個数(および予備群の個数)はn=10であり、ある 群におけるデータ流の最大個数はk=5である。その時点における活動データ流 の実際の個数は47である。横軸には群当たりのスロット個数を示し、縦軸には 群内のデータ流の個数を示す。図において、群g3は3データを備え、群g5は7 データ流を備えている。この例では、第2、第5および第10のタイムスロット については、予備群が、tinterval秒内で役立て得る、k=5で与えられる個数 より多い個数のデータ流を備えているので、かかるタイムスロットについて問題 が起こり得ることが判る。かかる問題を避けるために、予定器170は、各予備 群にデータ流を再割当てする。好都合にも、これは、まず、群gi(i=n乃至 2)の全データ流に対するデータがtinterval秒内で読取られ得るか否かを確か めることにより、最終群gn(図2aでは第10群)から始めてg2まで予備群を 順次に験すことによって行なわれる。これがそのとおりでない(この例では群1 0がすでに問題を起こしている)場合には、群giの残余のデータ流に対するデ ータがtinterval秒内に読取られ得るまで、群giのデータ流を繰り返し選択し て群giから除去する。除去したデータ流は、先行群gj(j=1乃至i−1)に 割当てられる。簡単に実施するには、除去したデータ流を先行群の一つに割当て る。この例では、3データ流を群g10から除去して群g9に配置し、群g9の総数 を7にする。つぎに、g9の2データ流をg8に再割当てして、g8の総数を7に する。つぎに、g8の2データ流をg7に再割当てして、g7の総数を5にする。 このようにして、g7には問題がなくなる。次の問題がg5に起きるが、その問題 はg5乃至g4の2データ流を再割当てすることによって解決される。次に、1デ ータ流がg4からg3に再割当てされる。最後の問題は、1データ流をg2からg1 に再割当てすることによって解決される。図2bは、こ のようにして達成されたデータ流の割当てを図示したものである。図2bに示す とおりの最初の群列により、確実に、平均して、最先の期限を有するデータ流が まず役立たされる。その結果として、バッファ群の高い充填率が得られる。好ま しいこよに、この概念は、群g1が含むデータが最小のデータ流を選択すること べきデータ流に対応するバッファに残るデータが最少のデータ流を選択すること により、さらに強調されさえする。図2bに示すとおりの再割当てにより、確実 に、余分のデータ流を支えるための系内の余地をできるだけ多く直ちに利用し得 るようにする。簡単のために、図2の例では、簡単な基準(群内のデータ流の個 数)が、群の全データ流をtinterval秒内で読取り得るか否かを判定するのに用 いられる。次の掃引の期間中には、第1群g1のデータ流のみが役立てられるこ とにさらに留意すべきである。その掃引に引き続く掃引に対しては、予備群が再 構成され、その再構成群の最初のものだけが役立てられる。 当業者は、特定の系に不備が生じないことを確実にするための適切な代替計画 を設計し得るであろう。これを達成する一つの方法は、タイムスロットの全周期 間中に同じタイムスロットに割当てられたデータ流をないものとして保持するこ とである。可変データ率系においては、先行tcycle秒の期間内ではデータ流が 最大消費率で消費されていなので、必要量のデータのみが読取られる。 本発明による他の実施例では、予定器170が、掃引を開始する前に、最大tinterval 秒の総合掃引期間内に維持しながら少なくとももう一つのデータ流を役 立てるために十分な容量が第1群内に残されているか否か、を験す。残されてい る場合には、予定器170は、再開始信号が受信されている休止データ流を選択 して、選択したデータ流を第1群に割当てる。図2の例では、予定器170は、 一つの休止データ流を第1群に割当てることができる。これは、例えば、使用者 が停止させたデータ流をその使用者が再開始させた後に、再付活されたデータ流 に対して短い応答時間が確実に得られるようにする。 本発明による他の、もしくは、替わりの実施例においては、予定器170は、 新たなデータ流を系に取り入れるのに、第1群において利用可能な容量を用いる 。また、図2の例では、予定器170は新たなデータ流を一つ第1群に割当てる ことができる。これは、新たなデータ流のために、短い応答時間を確保すること に なる。明らかに、系100が新たなデータ流の受入れ要請を受けている場合にの み、データ流が受入れられる。これは、例えば、新たな使用者が系をアクセスし 、現在の使用者が他の表題の観視に切り換え、あるいは、VCR同様の制御を行 なう系について、観視者が、新たなデータ流への切換えによって設けられる演奏 速度を(例えば正常から早送りへ)観視者が変えたことの結果である。図2では 、次の掃引で一つの余分のデータ流の系への参入が許されるのが素直に見えるこ とに留意すべきである。特に可変率系については、第1群に容量が残っている、 という事実は、系全体で十分な容量が利用可能であることの保証にはなり得ない (例えば、多数のデータ流が最大率で消費されていない場合には、第1群は殆ど 空であり、これに反し、活動データ流全部が最大率で消費されている場合には、 第1群はいつも完全に満たされている)。したがって、新たなデータ流が第1群 に含まれるのを許す前に、予定器170は、例えば、系のデータ流の個数がn* kより少ない場合に、一つ余分の活動データ流を系全体で支持し得るか否かを験 す。 他の実施例では、予定器170は、一掃引が完了した直後に、次の群が掃引さ れるように構成配置して、掃引動作を開始する。このようにして、順次の時間周 期は、固定タイムスロットではなく、単に上限として作用し、これは、最悪の場 合の状態にも対処し得るように系の大きさを決めることを保証する。掃引に最大 許容のtinterval秒以下しか掛からないようにするには種々の理由があり、例え ば、最大個数のデータ流が群に存在しない場合には、(可変率系で典型的な)最 大量のデータをデータ流は要求せず、実際のディスク時間(探索時間と回転の遅 同)が計算上の最悪の場合より少なく、あるいは、実際のディスク伝達率が仮定 より高くなる。 他の実施例では、読取り器180は、種々の大きさのブロックにしてデータを 蓄積媒体110から読取る。ディスク台の蓄積媒体については、データを隣接し た列もしくは重なり合った塊として蓄積し、DAB読取りのためにディスクを2 回アクセスする必要を避けたディスク蓄積計画の使用に適した可変寸法DABが 読取られる。予定器170は、第1群のデータ流について、対応するバッファに どれだけ多くの余地が残っているかを判定し、それだけの量の自由データ要素を 蓄積媒体110から読取るように読取り器180に指示する。動作系については 、 あるデータ流に対してRmax **intervalまでのデータ要素が読取られる必 要があるのに反し、対応するバッファは、(ある周期に、まずある時間間隔で読 取られ、続いて次の周期に同じ時間間隔で読取られる可能性に対する補償のため に)Rmax *(n+1)*intervalのデータ要素を蓄積し得ることが判るであ ろう。ある系について、バッファを一杯に満たす替わりに、新たなデータ流に対 してRmax **intervalのデータ要素を読取るのが好ましいことが判るであろ う。 他の実施例では、読取り器180は、蓄積媒体データを所定のブロック寸法で 読取る。好ましいことに、そのブロック寸法はRmax *cycleのデータ要素にほ ぼ対応している。かかる系でも、理論上相連結した塊りをなしてディスクの無作 為の位置にデータが蓄積されるディスクが用いられる。好ましくは、塊りの寸法 は、所定のブロック寸法(DAB)の倍数とする。図2に示すように、かかる系 については、予定器170は、予備群giに割当てられたデータ流の個数を決定 することにより、群gi(i=n乃至2)の全データ流に関するデータがtinter val 秒内に読取られ得るか否かを簡単に確かめることができる。群giの全データ 流に関するデータは、その個数がkより小さなかkに等しい場合には、読取るこ とができる。 可変率系については、データが固定ブロック寸法で蓄積媒体から読取られる計 画の使用の結果として、バッファの必要量は増大する。本発明により予備的時間 間隔でデータ流が割当てられる所定周期の掃引に対する最悪の場合の筋書では、 (tcycle秒のデータに対応する)ブロック全体を読取るのに十分な余地をバッ ファ内にデータ列の大部分(もしくは全部さえも)が有しておらず、その結果デ ータ流が飛び越される、ということが起こり得る。その次の周期については、ほ とんど全てのデータ流が1ブロックに対する余地を持ち得る。すべてのデータ流 を役立てるにはtcycle=n*interval秒掛かる。かかる最悪の場合の状態で は、データ流はまず、所定の周期で役立ち、続いて後続の周期で役立つのである から、バッファの必要量は、可変量のデータを蓄積媒体から読取るためのRmax * (n+1)*intervalのデータ要素から、固定量のデータを蓄積媒体から読 取るためのRmax *(2n)*intervalのデータ要素まで増大する。本発明の 他の実施例では、予定器170は、異なった量のバッファの余地を各データ流に 割当てる。k個までのデータ流がRmax *(n+2)*intervalのデータ要素 を蓄積するためのバッファに割当てられ:さらにk個までのデータ流がRmax * (n+3)*intervalのデータ要素を蓄積するためのバッファに割当てられ; さらにk個までのデータ流がRmax *(n+4)*intervalのデータ要素を蓄 積するためのバッファに割当てられ、以下同様にして、最後に、k個までのデー タ流がRmax *(n+n+1)*intervalのデータ要素を蓄積するためのバッ ファに割当てられる。これは、次のように書き表すことができる:i=1乃至n に対し、複数個のデータ流から最大k個のデータ流を選択して、選択したデータ 流のそれぞれに、Rmax *(n+i+1)*intervalのデータ要素を蓄積し得 る対応したバッファを割当てる。かかる割当て計画は、同様に処理されるデータ 流の個数がk=5、したがって、N=10である最大N=K=50個のデータ流 を備えた系について、図3に図示してある。横軸にはバッファの大きさを示して ある。縦軸には、このようにして達成した群分けの第2の形態を示してある。群 分けの第2形態のそれぞれはk個までのデータ流を備えている。この群分けの第 2形態自体は掃引すべき次の群を決定するための上述した機構には直接関係して はいない。しかしながら、群分けの第2形態は、データ流が役立てられる時機の 、データ流のバッファ群による選択の範囲が狭くなる。最悪の場合の筋書きでは 、本発明による系において、ある周期の期間中にはデータ流がすべて跳び越され て、次の周期で役立ち得た場合には、Rmax *(n+2)*intervalのデータ 要素を蓄積するためのバッファを備えたデータ流が第1の時間間隔で役立つのに 反し、Rmax *(n+n+1)*intervalのデータ要素を蓄積するためのバッ ファを備えたデータ流は、その周期の最後の時間間隔で役立つ。一例が図4に図 示されており、この図4には、2個ずつのデータ流(k=2)の3個のバッファ 群(n=3)に亘って分割され、総数6個の活動データ流(N=K=6)を備え た系が示されている。バッファの充填部分には陰影が施されている。一例として 、掃引iの開始の直後には、各データ流が新たなブロック(DAB)用の余地を 有するものとする。掃引iがすでに開始されているので、図示のデータ流に対し て掃引iの期間中に読取り得るブロックはないものと仮定する。さらに、データ 流は、 最大率Rmaxでデータを消費するものと仮定する。この例では、掃引i+1の開 始に当たって、(最小のバッファを有する)頂部バッファ群のデータ流には最少 のデータしか残っていない(が、少なくとももう1掃引だけ残存させるには十分 である)。他のバッファ群のデータ流は、2以上の掃引を残存させるのに十分な データを有している。その結果、掃引i+1では、頂部バッファ群の各データ流 についてDABが読取られる。同様に、第2のバッファ群のデータ流は掃引i+ 2で役立ち(底部に示す)、第3のバッファ群のデータ流は掃引i+3で役立つ 。バッファ群に対応する群内では、データ流が正常には役立たないことに留意す ベきである。この例に図示されているように、バッファ群が退却場所を用意して いるので、全データ流は、系に不満を生ずることなく役立つことができる。 データ流に対するバッファの割当ての結果として最悪の場合の状態については 、対応するタイムスロットがデータ流に自動的に割当てられる。これは、奉仕の 平均的拡がりを狭くすることになる。その結果として、バッファの必要量が著し く減少する。バッファ寸法の所定値は下側の限度だけであり、より大きいバッフ ァを割当て得ることが判る。好ましいことに、系に最初に参入する新たなデータ 流に対しては、バッファに必要なメモリは、ともかく、すでにその系に割当てら れているものと仮定して、最大でなお利用可能のバッファが割当てられる。その 結果として、十分には負荷されない系に大きいバッファが用いられ、その結果、 平均充填率が上昇し、休止もしくは新規参入のデータ流を役立てる要請に急速に 応答するための余地が増大する、という状態になる。 本発明による他の実施例では、蓄積媒体から固定ブロック寸法でデータが読取 られる系に対するバッファの必要量は、データ流に対してバッファ・プールを用 いることにより、さらに減少しさえする。予定器170は、Rmax **inter val のデータ要素を蓄積するためのバッファをデータ流のそれぞれに割当てる。 さらに、予定器170は、各データ流に対し平均でRmax **intervalのデ ータ要素を蓄積するためのバッファ・プールを留保している。その結果、バッフ ァプールの大きさは、K*max **interval=K*max **cycleデ ータ要素の最小値となる。図5は、バッファ125が固定的に割当てられたバッ ファを表すとして、バッファ・プール127の使用を図示したものである。次 の掃引で第1群のデータ流のそれぞれを役立て得るようにするために、予定器1 70は、確実に、固定的に割当てられた2個の小ブロックに加えて、バッファ・ プールのRmax **intervalのデータ要素を蓄積するための部分に相当する n個の小ブロックをバッファ・プールから割当てることにより、かかるデータ流 のそれぞれが、少なくともRmax *(n+2)*intervalのデータ要素を蓄積 するためのバッファを有するようにする。互いに連繋したリストを用いるなど任 意の従来周知の分担バッファの管理技術を用いることができる。選んだ技術が実 質的な遅延を含んでいる場合には、その遅延を補償するために、バッファ寸法は 増大せざるを得ない。バッファ寸法に対する所定値は下側の限度のみであり、よ り大きいバッファを割当て得ることが判る。 用心しないと、休止データ流もしくは低率で消費するデータ流がプールされた バッファのかなりの部分を占める一方では、高率で消費し、次に掃引する積もり のデータ流に対して(Rmax **intervalのデータ要素の)固定寸法のブロッ クを読取るために不十分な付加的余地がバッファから請求される、という状態が 起こり得る。これは、その際に、かかるデータ流が少なくとも一掃引だけ遅延す る結果となる。したがって、本発明による他の実施例では、予定器170は、バ ッファプールが第1群のデータ流への割当てに必要な未割当ての蓄積余地を十分 に備えていない場合には、第1群の一員ではないデータ流を選択して、バッファ のその選択したデータ流に割当てられた部分の少なくとも一部の割当てを外す。 予定器は、必要なだけの多数のデータ流を選択することができる。好ましくは、 バッファ・プールの割当てられた部分に蓄積されたデータの大部分を有するデー タ流を選択する。かかる割当て外しの計画は、確実に、最も急いでデータを必要 とするデータ流(すなわち、第1群に割当てられたデータ流)を、休止データ流 、低率で消費するデータ流、もしくは、バッファ内の一区画のデータを備えたデ ータ流のような他のデータ流が一時的にバッファの余地をあまり使わない(その 時点では必要としない)間に、役立たせるようにする。好ましくは、予定器17 0は、少なくともRmax *cycleのデータ要素を単位にして、プールされてい るバッファの割当てを外すようにする。このようにして、次の掃引の一つでデー タの割当てを外されたデータ流については、蓄積媒体から読取ったブロックが蓄 積 媒体上の塊りと釣合って、その結果、ディスクの配列に自由度を保ったまま、確 実に唯一回でディスクをアクセスし得るようにする。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 プロンク セルフェリウス ペトルス ポ ーラス オランダ国 5656 アーアー アインドー フェン プロフ ホルストラーン 6 (72)発明者 ファン ドレン ヒール オランダ国 5656 アーアー アインドー フェン プロフ ホルストラーン 6 【要約の続き】** interval以下のデータ要素を備えたデータ流がそ の群に少なくとも割当てられる。

Claims (1)

  1. 【特許請求の範囲】 1. それぞれのデータ流が同じ最大毎秒データ要素消費率Rmaxを有する複数デ ータ流の形での使用者による消費用にデータの読取りを予定するために、 i)tcycle秒の予定周期をそれぞれtintervalの順次のn時間周期に分割 し、 ii)少なくともRmax *(n+1)*intervalのデータ要素を蓄積し得る 対応したバッファを各データ流毎に留保し、 iii)データ流を複数の別々の群に構成配置し、 iv)その複数群中の第1の群の各データ流用に一掃引で蓄積媒体からデータ を読取り、そのデータを対応するバッファに蓄積する 各過程を備えた方法において、 過程(iii)と過程(iv)との順次の反復実施と、各反復毎に対応するバッファが Rmax **interval以下のデータ要素を備えたデータ流を過程(iii)で第1 の群に少なくとも割当てることによるデータ流の各群への再配置とを備えたこ とを特徴とする方法。 2. データ流に対応するバッファがRmax *(i+1)*interval以下のデー タ要素を備えるように各データ流毎に最小数i=1乃至nを決定してデータ流 を群g1に割当てることにより、g1第1群に対応する精々nの予備群g1乃至 gnにデータ流を構成配置する過程と、 −群gi(i=n乃至2)の全データ流に対応するデータをtinterval秒内に 読取り得るか否かを確かめ、 −読取り得ない場合には、群g1のデータ流を繰返し選択して、群g2の残りの 全データ流に対するデータをtinterval秒以内に読取り得るまで、選択したデ ータ流を群g1から除去し、 −選択したデータ流を先行群gj(j=1乃至i−1)に割当てることによっ て予備群gn乃至g2を順次に験すことにより、予備群にデータ流を再割当てす る過程と を過程(iii)に備えたことを特徴とする請求項1記載の方法。 3. 活動データ流に対しては使用者がデータを消費し、休止データ流に対しては 使用者が目下データを消費していない少なくとも活動および休止の状態を含む 復数の状態の一つにデータ流があるとともに、 次の掃引で第1の群のデータ流を役立てる他に、最大tinterval秒の総合掃 引期間内で少なくとも1つの余分のデータ流を役立てるのに十分な容量が残っ ている場合には、 再出発信号を受信している休止データを選択して、 選択したデータ流を第1の群に割当てることを特徴とする請求項2記載の方法 。 4. 活動データ流に対しては使用者がデータを消費し、休止データ流に対しては 使用者が目下データを消費していない少なくとも活動および休止の状態を含む 複数の状態の一つにデータ流があるとともに、 役立て得るデータ流がまだ予定の最大個数に達しておらず、新たなデーザ流 を含める要請が受取られており、次の掃引で第1の群のデータ流を役立てる他 に、最大tinterval秒の総合掃引期間内で少なくとも1つの余分のデータ流を 役立てるのに十分な容量が残っている場合には、 包含要請を受け取っている新たなデータ流を選択して、 選択したデータ流を第1の群に割当てることを特徴する請求項2または3記載 の方法。 5. 先行繰返しにおける過程(iv)の完了の直後に過程(iii)および(iv)の新た な繰返しを開始することを含むことを特徴とする請求項1、2、3、または4 記載の方法。 6. 第1の群のデータ流についてデータ流に対応するバッファ内の自由データ要 素の量を決定して、その量まで蓄積媒体から自由データ要素を読取ることを特 徴とする請求項2記載の方法。 7. 群giのデータ流を選択する過程が当該データ流に対応するバッファ内に残 るデータが最小のデータ流の選択を含んでいることを特徴とする請求項2記載 の方法。 8. 第1の群の各データ流に対する各掃引の期間中に、Rmax *cycleのデータ 要素にほぼ対応する所定ブロック寸法の蓄積媒体からデータを読取るように した請求項2記載の方法において、群gi(i=n乃至2)の全データ流に対 するデータがtinterval内で読取れるか否かを確かめる過程が、予備群giに 割当てられたデータ流の個数の判定、および、tinterval秒内に蓄積媒体から ある量のデータ要素を読取って最大消費率Rmaxでtcycle秒の消費を続け得る ことが保証されるデータ流の最大個数にkが対応するとして、kより小さいか kに等しい個数のデータ流が予備群giに割当てられている場合に群giの全 データ流に対するデータを読取り得ることの決定を含んでいることを特徴とす る方法。 9. 過程(ii)が、i=1乃至n対し、複数のデータ流からの最大kのデータ流 の選択、および、少なくともRmax *(n+i+1)*intervalの要素を蓄 積し得る対応したバッファの選択されたデータ流への割当てを備えていること を特徴する請求項8記載の方法。 10. 過程(ii)が、tcycle秒内に蓄積媒体からある量のデータ要素を読み取っ て最大消費率Rmaxでtcycle秒の消費を続け得ることが保証されるデータ流の 最大個数にkが対応するとして、少なくともK*max *cycleのデータ要 素を蓄積するためのバッファ・プールの留保、 少なくともRmax **intervalのデータ要素を蓄積するためのバッフ ァのデータ流のそれぞれに対する固定的な割当て、および、少なくともRmax **intervalのデータ要素の一部の第1の群のデータ流の流れのそれぞれ に対する動的な割当て を備えていることを特徴とする請求項8記載の方法。 11. バッファ・プールが第1の群のデータ流の割当てに必要とする未割当ての蓄 積スペースを十分に備えていない場合に、第1の群の一員ではない少なくとも 一つのデータ流を選択し、選択されデータ流に割当てられたバッファの部分の 少なくとも一部の割当てを外すことを含むことを特徴とする請求項10記載の 方法。 12. 割当て外しのためのデータ流の選択が、バッファ・プールの割当て部分に蓄 積したデータの大部分を有するデータ流の選択を含んでいることを特徴とする 請求項11記載の方法。 13. 少なくともRmax *cycleのデータ要素のユニットで割当て外しが行われ ることを特徴とする請求項11または12記載の方法。 14. データを蓄積するための複数のバッファ、 蓄積媒体からデータを読み取って、読み取ったデータを少なくとも一つのバッ ファに蓄積するための読取り器、および、 (i)tcycle秒の所定周期をぞれぞれtinterval秒の順次のn時間周期に分 割し、 (ii)各データ流毎に少なくともRmax *(n+1)*intervalのデータ要 素を蓄積し得る対応したバッファを留保し、 (iii)データ流を複数の個別の群に構成配置し、 (iv)前記群中の第1の群の各データ流について読取り器に蓄積媒体から一掃 引でデータを読取らせて、そのデータを対応するバッファに蓄積することによ り読取り器を制御するための予定器を備えて、蓄積媒体からデータを読取り、 そのデータを、データ流のそれぞれが同じ最大毎秒データ要素消費率Rmaxを 有する消費のための複数のデータ流の形で使用者に供給する系において、 過程(iii)と(iv)とを順次に繰り返して実施し、各繰返し毎に、過程(iii)で 対応するバッファがRmax **intervalのデータ要素を備えるデータ流を 少なくとも第1の群に割当てることにより、各群にデータ流を再割当てするよ うに予定器を構想することを特徴とする系。 15. 各データ流毎に、データ流に対応するバッファがRmax **intervalよ り少ないデータ要素に備えるように最小番号i=1乃至nを決定して、データ 流を群giに割当て、 群gi(i=n乃至2)の全データ流に対するデータをtinterval秒内で読 取る否かを確かめ、 読取れない場合には、群giのデータ流を繰返し選択して、群giの残りの全 データ流に対するデータがtinterval秒内で読取られるまで、選択したデータ 流を群giから除去し、選択したデータ流を先行群gi(i=1乃至i−1) に割当ることによって予備群に再割当てするこにより複数の個別の群にデータ 流を構成配置するように予定器を構想したことを特徴する請求項14記載の系 。 16. 先行繰返しの過程(iv)を完了した直後に過程(iii)と(iv)との新たな繰 返しを開始するように予定器を構想することを特徴とする請求項14または1 5記載の系。
JP10528592A 1996-12-23 1997-12-08 データ流を供給するための方法および系 Abandoned JP2000505983A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP96203687.7 1996-12-23
EP96203687 1996-12-23
PCT/IB1997/001552 WO1998028915A2 (en) 1996-12-23 1997-12-08 Method and system for supplying data streams

Publications (2)

Publication Number Publication Date
JP2000505983A true JP2000505983A (ja) 2000-05-16
JP2000505983A5 JP2000505983A5 (ja) 2005-08-11

Family

ID=8224751

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10528592A Abandoned JP2000505983A (ja) 1996-12-23 1997-12-08 データ流を供給するための方法および系

Country Status (5)

Country Link
US (1) US6138221A (ja)
EP (1) EP0886971B1 (ja)
JP (1) JP2000505983A (ja)
DE (1) DE69731377D1 (ja)
WO (1) WO1998028915A2 (ja)

Families Citing this family (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4151991B2 (ja) * 1997-05-26 2008-09-17 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ ビデオサーバにおいてデータを取り出すシステム
US6415373B1 (en) 1997-12-24 2002-07-02 Avid Technology, Inc. Computer system and process for transferring multiple high bandwidth streams of data between multiple storage units and multiple applications in a scalable and reliable manner
US6374336B1 (en) 1997-12-24 2002-04-16 Avid Technology, Inc. Computer system and process for transferring multiple high bandwidth streams of data between multiple storage units and multiple applications in a scalable and reliable manner
JPH11232786A (ja) * 1998-02-09 1999-08-27 Sony Corp データ読出し装置及びデータ読出し方法
FR2779596B1 (fr) * 1998-06-08 2000-07-21 Thomson Multimedia Sa Procede de programmation d'actions de ressources dans un reseau de communication domestique
US6094605A (en) * 1998-07-06 2000-07-25 Storage Technology Corporation Virtual automated cartridge system
US6101547A (en) * 1998-07-14 2000-08-08 Panasonic Technologies, Inc. Inexpensive, scalable and open-architecture media server
US6233389B1 (en) 1998-07-30 2001-05-15 Tivo, Inc. Multimedia time warping system
US7558472B2 (en) 2000-08-22 2009-07-07 Tivo Inc. Multimedia signal processing system
EP1080577A1 (en) * 1999-03-23 2001-03-07 Koninklijke Philips Electronics N.V. Multimedia server
US6487633B1 (en) 1999-05-03 2002-11-26 3Ware, Inc. Methods and systems for accessing disks using forward and reverse seeks
US6591339B1 (en) * 1999-05-03 2003-07-08 3Ware, Inc. Methods and systems for selecting block sizes for use with disk arrays
US6845398B1 (en) * 1999-08-02 2005-01-18 Lucent Technologies Inc. Wireless multimedia player
US6721789B1 (en) 1999-10-06 2004-04-13 Sun Microsystems, Inc. Scheduling storage accesses for rate-guaranteed and non-rate-guaranteed requests
US6385673B1 (en) 1999-10-06 2002-05-07 Sun Microsystems, Inc. System and method for adjusting performance of a media storage by decreasing a maximum throughput by a primary derate parameter to specify available & guaranteed rate parameters and determining ring buffer sizes for streams
US6438630B1 (en) * 1999-10-06 2002-08-20 Sun Microsystems, Inc. Scheduling storage accesses for multiple continuous media streams
US20020026501A1 (en) * 2000-05-31 2002-02-28 Khoi Hoang Decreased idle time and constant bandwidth data-on-demand broadcast delivery matrices
WO2001095612A1 (en) * 2000-06-02 2001-12-13 Koninklijke Philips Electronics N.V. Method of and system for reading blocks from a storage medium
MXPA05003062A (es) * 2002-09-26 2005-05-27 Koninkl Philips Electronics Nv Lectura de flujos multiples.
US20040128694A1 (en) * 2002-12-30 2004-07-01 International Business Machines Corporation Fast selection of media streams
US8832758B2 (en) * 2003-03-17 2014-09-09 Qwest Communications International Inc. Methods and systems for providing video on demand
US6986019B1 (en) 2003-04-21 2006-01-10 Maxtor Corporation Method and apparatus for detection and management of data streams
US9176955B2 (en) 2005-03-09 2015-11-03 Vvond, Inc. Method and apparatus for sharing media files among network nodes
US8904463B2 (en) 2005-03-09 2014-12-02 Vudu, Inc. Live video broadcasting on distributed networks
US8219635B2 (en) 2005-03-09 2012-07-10 Vudu, Inc. Continuous data feeding in a distributed environment
US20090019468A1 (en) * 2005-03-09 2009-01-15 Vvond, Llc Access control of media services over an open network
US20080022343A1 (en) 2006-07-24 2008-01-24 Vvond, Inc. Multiple audio streams
US7698451B2 (en) * 2005-03-09 2010-04-13 Vudu, Inc. Method and apparatus for instant playback of a movie title
US7191215B2 (en) 2005-03-09 2007-03-13 Marquee, Inc. Method and system for providing instantaneous media-on-demand services by transmitting contents in pieces from client machines
US7937379B2 (en) 2005-03-09 2011-05-03 Vudu, Inc. Fragmentation of a file for instant access
US8099511B1 (en) 2005-06-11 2012-01-17 Vudu, Inc. Instantaneous media-on-demand
US8296812B1 (en) 2006-09-01 2012-10-23 Vudu, Inc. Streaming video using erasure encoding
US8335873B2 (en) 2006-09-14 2012-12-18 Opentv, Inc. Method and systems for data transmission
US7930449B2 (en) 2006-09-14 2011-04-19 Opentv Inc. Method and system for data transmission
US11303684B2 (en) 2006-09-14 2022-04-12 Opentv, Inc. Methods and systems for data transmission
US8510370B2 (en) * 2008-02-26 2013-08-13 Avid Technology, Inc. Array-based distributed storage system with parity
US8488661B2 (en) * 2008-06-13 2013-07-16 Verizon Patent And Licensing Inc. Systems and methods for data streaming
CN102550037B (zh) * 2009-04-16 2015-12-09 爱立信(中国)通信有限公司 用于提供缓冲器管理机构的方法和系统
US9880780B2 (en) 2015-11-30 2018-01-30 Samsung Electronics Co., Ltd. Enhanced multi-stream operations
US9898202B2 (en) 2015-11-30 2018-02-20 Samsung Electronics Co., Ltd. Enhanced multi-streaming though statistical analysis

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2492617A1 (fr) * 1980-10-17 1982-04-23 Micro Consultants Ltd Systeme de traitement d'images video
US5732239A (en) * 1994-05-19 1998-03-24 Starlight Networks Method for operating a disk storage system which stores video data so as to maintain the continuity of a plurality of video streams
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
US5926205A (en) * 1994-10-19 1999-07-20 Imedia Corporation Method and apparatus for encoding and formatting data representing a video program to provide multiple overlapping presentations of the video program
JP3575862B2 (ja) * 1995-03-16 2004-10-13 株式会社東芝 ストリームスケジューリング方法及び装置
US5563885A (en) * 1995-05-24 1996-10-08 Loral Fairchild Corporation Method and system for processing multiple channel data
TW335480B (en) * 1995-09-29 1998-07-01 Matsushita Electric Ind Co Ltd Method and apparatus for encoding a bistream for multi-angle connection
EP0812513B1 (en) * 1995-12-01 2000-10-04 Koninklijke Philips Electronics N.V. Method and system for reading data for a number of users
US5964829A (en) * 1996-03-27 1999-10-12 Lucent Technologies Inc. Method and apparatus for providing enhanced pay per view in a video server employing a coarse-grained striping scheme
US5926649A (en) * 1996-10-23 1999-07-20 Industrial Technology Research Institute Media server for storage and retrieval of voluminous multimedia data
US6018359A (en) * 1998-04-24 2000-01-25 Massachusetts Institute Of Technology System and method for multicast video-on-demand delivery system

Also Published As

Publication number Publication date
EP0886971A2 (en) 1998-12-30
WO1998028915A3 (en) 1998-09-03
US6138221A (en) 2000-10-24
DE69731377D1 (de) 2004-12-02
WO1998028915A2 (en) 1998-07-02
EP0886971B1 (en) 2004-10-27

Similar Documents

Publication Publication Date Title
JP2000505983A (ja) データ流を供給するための方法および系
US6061732A (en) Data streaming system utilizing an asynchronous technique for retrieving data from a stream server
US5721823A (en) Digital layout method suitable for near video on demand system
JP3136269B2 (ja) ビデオサービス提供方法及びビデオサーバ
US6134596A (en) Continuous media file server system and method for scheduling network resources to play multiple files having different data transmission rates
CA2178376C (en) Video data retrieval method for use in video server environments that use striped disks
US5938734A (en) Real time stream server for handling a plurality of real time stream data with different data rates
Chen et al. A scalable video-on-demand service for the provision of VCR-like functions
US5926649A (en) Media server for storage and retrieval of voluminous multimedia data
US5721950A (en) Method for scheduling I/O transactions for video data storage unit to maintain continuity of number of video streams which is limited by number of I/O transactions
US7146424B2 (en) File server system and method for scheduling data streams according to a distributed scheduling policy
Ghandeharizadeh et al. Design and implementation of scalable continuous media servers
JP2004199853A (ja) ディジタルデータを確実に分配するための方法
JP4151991B2 (ja) ビデオサーバにおいてデータを取り出すシステム
US6205525B1 (en) System for supplying data steams
EP0812513B1 (en) Method and system for reading data for a number of users
US6477541B1 (en) Multimedia server
Bocheck et al. Disk partitioning technique for reducing multimedia access delay
Tsao et al. A novel data placement scheme on optical discs for near-VOD servers
Chang et al. 2D BubbleUp: managing parallel disks for media servers
Sengodan et al. A shared buffer architecture for interactive VOD servers
Hamidzadeh et al. Dynamic scheduling techniques for interactive hypermedia servers
KR100273367B1 (ko) 연속매체 서버의 동적 버퍼 제어장치
Tsao A low cost optical storage server for near video-on-demand systems
Zhao et al. Data management for multiuser access to digital video libraries

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20041207

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20041207

A762 Written abandonment of application

Free format text: JAPANESE INTERMEDIATE CODE: A762

Effective date: 20050621