JP2011234421A - 確率的なネットワーク上のメッセージの同期化 - Google Patents

確率的なネットワーク上のメッセージの同期化 Download PDF

Info

Publication number
JP2011234421A
JP2011234421A JP2011177734A JP2011177734A JP2011234421A JP 2011234421 A JP2011234421 A JP 2011234421A JP 2011177734 A JP2011177734 A JP 2011177734A JP 2011177734 A JP2011177734 A JP 2011177734A JP 2011234421 A JP2011234421 A JP 2011234421A
Authority
JP
Japan
Prior art keywords
message
rate
time
data
component
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
JP2011177734A
Other languages
English (en)
Inventor
Raptis Picco Martin
ラプティス ピッコ マーティン
Coleman Norm
コーレン ノーム
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.)
Harmonic Inc
Original Assignee
Harmonic Inc
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 Harmonic Inc filed Critical Harmonic Inc
Publication of JP2011234421A publication Critical patent/JP2011234421A/ja
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/14Monitoring arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/0635Clock or time synchronisation in a network
    • H04J3/0682Clock or time synchronisation in a network by delay compensation, e.g. by compensation of propagation delay or variations thereof, by ranging
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/26Flow control; Congestion control using explicit feedback to the source, e.g. choke packets
    • H04L47/263Rate modification at the source after receiving feedback
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/28Flow control; Congestion control in relation to timing considerations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/43Assembling or disassembling of packets, e.g. segmentation and reassembly [SAR]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/062Synchronisation of signals having the same nominal but fluctuating bit rates, e.g. using buffers
    • H04J3/0632Synchronisation of packets and cells, e.g. transmission of voice via a packet network, circuit emulation service [CES]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

【課題】ローカルコンポーネント(210)が、非決定性通信リンク(220)を使用してリモートコンポーネント(230)に接続された、ローカルコンポーネント(210)とリモートコンポーネント(230)との間で通信するための方法および装置を提供すること。
【解決手段】ローカルクロック(216)は、最大オフセットの範囲内でリモートクロック(236)と同期化される。リモートコンポーネント(230)からのレートメッセージ(226)は、ローカルコンポーネント(210)で受信され、レートメッセージ(226)は、第1のタイムスタンプを含む。データレートは、ローカルクロック(216)の時間が、第1のタイムスタンプを使用して決定された時間と実質的に一致するときに、レートメッセージ(226)を使用して調整される。
【選択図】図2

Description

以下の開示は、ネットワーク通信に関連するものである。
いくつかの通信システムでは、コンポーネントは、動作中にデータレートまたはパケットサイズのような伝送パラメータを調整する必要がある。1つの考えられるシナリオでは、(例えば、MPEGベースのビデオ伝送システム内の)マルチ可変ビットレートのエンコーダに接続されるマルチプレクサは、エンコーダに、特定のレートでのデータの伝送を命令するように構成することが可能である。例えば、サブスクライバに一定のビットレートを分配するマルチプレクサは、エンコーダに、符号化される信号の複雑さに対応するビットレートで送信するように命令することができ、一方で、個々のエンコーダのビットレートの合計が、マルチプレクサが提供しなければならない一定のビットレートを超えないようにできる。このシナリオでは、複数のエンコーダから変更されたパラメータで伝送されるデータが、互いに多重化されるように、伝送パラメータの変更をリクエストされたときに、エンコーダが送信パラメータを変更することが重要である。例えば、エンコーダのうちの1つが、フレームの符号化データのビットレートを減じなかった場合、マルチプレクサが一定のビットレートの出力ストリームで配置するよりも、多くのビットがそのフレームのマルチプレクサに到達する可能性がある。高精度の同期化が望ましい当該のシステムは、一般に、決定性遅延を使用してメッセージを同期化することができるように、通信のための決定性接続(例、一定の、または予測可能な遅延を有する接続)を使用する。
通信システム内のコンポーネントは、確率的(非決定性)ネットワーク(例、インターネットプロトコルを使用した、パケットベースのネットワーク)を使用して接続することができる。確率的ネットワークを通じたメッセージの伝送と、メッセージの受信との間の遅延は、一般にランダム変数であるので、メッセージの同期化は困難になりうる。一般に、遅延の上限と下限を決定することができる。いくつかの確率的ネットワークに対しては、遅延の上限を無限とすることができ(例えば、パケットは、喪失してパケットの宛先に到達できないようにすることができる)、他の確率的ネットワークに対しては、上限を有限とすることができる。
一局面では、ローカルコンポーネントが、非決定性通信リンクを使用してリモートコンポーネントに接続される、前記ローカルコンポーネントと前記リモートコンポーネントとの間で通信するための方法を提供する。前記ローカルコンポーネントのローカルクロックは、最大オフセットの範囲内で前記リモートコンポーネントのリモートクロックと同期化される。前記リモートコンポーネントからのレートメッセージは、前記ローカルコンポーネントで受信され、前記レートメッセージは、第1のタイムスタンプを含む。前記ローカルコンポーネントのデータレートは、前記ローカルクロックの時間が、前記第1のタイムスタンプを使用して決定された時間と実質的に一致するときに、前記レートメッセージを使用して調整される。データメッセージは、前記調整されたデータレートを使用して、前記ローカルコンポーネントから前記リモートコンポーネントに送信され、前記データメッセージは、前記データメッセージ内のデータの処理に使用するための第2のタイムスタンプを含む。
特定の実施態様は、以下の特徴のうちの1つ以上を含むことが可能である。複雑性メッセージ(complexity message)は、前記ローカルコンポーネントから前記リモートコンポーネントに伝送され、前記レートメッセージは、前記複雑性メッセージを使用して生成される。前記データレートを調整することは、位相ロックループを使用した前記ローカルクロックの前記第1の時間を決定することか、または前記ローカルクロックの前記第1の時間の統計的に推定することを含む。前記第1のタイムスタンプを使用して決定された前記時間は、通信リンク遅延に関する情報、および/または前記ローカルクロックとリモートクロックとの間のオフセットに関する情報を使用して、さらに決定される。オフセットに関する前記情報は、最大オフセットに関する情報を含み、正の最大オフセットおよび負の最大オフセットを含むことができる。通信リンク遅延に関する前記情報は、前記ローカルコンポーネントと前記リモートコンポーネントとの間の最大通信リンク遅延に関する情報を含み、前記リモートコンポーネントから前記ローカルコンポーネントへの遅延に関する情報と、前記ローカルコンポーネント前記リモートコンポーネントへの遅延に関する情報と、を含むことができる。
前記第1のタイムスタンプは、前記通信リンク遅延に関する前記情報、および/または前記ローカルクロックと前記リモートクロックとの間の前記オフセットに関する前記情報を含む。前記第2のタイムスタンプは、通信リンク遅延に関する情報、および/または前記ローカルクロックと前記リモートクロックとの間のオフセットに関する情報を含む。データレートを調整することは、前記レートメッセージに含まれるレート情報をキューに入れることを含む。前記レートメッセージは、前記ローカルクロック前記第1の時間が、前記第1のタイムスタンプを使用して決定された前記時間と実質的に一致するまで、バッファリングされる。
別の局面では、ローカルコンポーネントが、非決定性通信リンクを使用してリモートコンポーネントに接続され、前記ローカルコンポーネントのローカルクロックが、最大オフセットの範囲内で前記リモートコンポーネントのリモートクロックと同期化される、前記ローカルコンポーネントと前記リモートコンポーネントとの間で通信するための方法を提供する。レートメッセージは、前記ローカルコンポーネントから前記リモートコンポーネントに送信される。前記レートメッセージは、リモートクロックの第1の時間が、第1のタイムスタンプを使用して決定された時間と実質的に一致するときに、前記レートメッセージに含まれるデータレートを使用して、データメッセージを前記ローカルコンポーネントに送信するために、前記リモートコンポーネントが使用するための前記第1のタイムスタンプを含む。前記データメッセージは、前記ローカルコンポーネントで受信され、前記データメッセージは、第2のタイムスタンプを含む。データメッセージに含まれるデータは、前記第2のタイムスタンプを使用して処理される。
特定の実施態様は、以下の特徴のうちの1つ以上を含むことが可能である。複雑性メッセージは、前記リモートコンポーネントから受信され、前記レートメッセージは、前記複雑性メッセージを使用して生成される。前記データメッセージに含まれるデータを処理することは、ローカルクロックの第2の時間が、前記第2のタイムスタンプを使用して決定された時間と実質的に一致するときに、前記データメッセージに含まれるデータを処理する。前記第2のタイムスタンプを使用して決定された前記時間は、通信リンク遅延に関する情報、および/または前記ローカルクロックと前記リモートクロックとの間のオフセットに関する情報を使用して、さらに決定される。前記オフセットに関する前記情報は最大オフセットに関する情報を含み、正の最大オフセットおよび負の最大オフセットに関する情報を含むことができる。
前記通信リンク遅延に関する情報は、前記ローカルコンポーネントと前記リモートコンポーネントとの間の最大通信リンク遅延に関する情報を含み、前記リモートコンポーネントから前記ローカルコンポーネントへの遅延に関する情報と、前記ローカルコンポーネントから前記リモートコンポーネントへの遅延に関する情報と、を含むことができる。前記第2のタイムスタンプは、前記通信リンク遅延に関する前記情報、および/または前記ローカルクロックと前記リモートクロックとの間の前記オフセットに関する前記情報を含む。前記第1のタイムスタンプは、前記通信リンク遅延に関する情報、および/またはローカルクロックと前記リモートクロックとの間の前記オフセットに関する情報を含む。前記データメッセージに含まれるデータを処理することは、ローカルクロックの時間が、前記第2のタイムスタンプを使用して決定された時間と実質的に一致するまで、前記データメッセージをバッファリングすることを含む。
別の局面では、ローカルコンポーネントとリモートコンポーネントとの間で通信するための方法を提供する。前記ローカルコンポーネントを前記リモートコンポーネントに接続する非決定性通信リンクを提供する。前記ローカルコンポーネントのローカルクロックは、最大オフセットの範囲内で、前記リモートコンポーネントのリモートクロックと同期化される。レートメッセージは、前記リモートコンポーネントから前記ローカルコンポーネントに送信され、前記レートメッセージは、第1のタイムスタンプを含む。前記ローカルクロックの第1の時間が、前記第1のタイムスタンプと、通信リンク遅延に関する情報と、前記最大オフセットに関する情報とを使用して決定された時間と実質的に一致するときに、前記レートメッセージを使用して、前記ローカルコンポーネントのデータレートを調整する。データメッセージは、前記調整されたデータレートを使用して、前記ローカルコンポーネントから前記リモートコンポーネントに、前記第1の時間で送信され、前記データメッセージは第2のタイムスタンプを含む。前記リモートクロックの第2の時間が、前記第2のタイムスタンプと、通信リンク遅延に関する情報と、前記最大オフセットに関する情報とを使用して決定された時間と実質的に一致するときに、前記データメッセージに含まれるデータを処理する。
特定の実施態様は、以下の特徴のうちの1つ以上を含むことが可能である。前記ローカルコンポーネントは、エンコーダであり、前記リモートコンポーネントは、マルチプレクサである。複雑性メッセージは、前記ローカルコンポーネントから前記リモートコンポーネントに伝送され、前記レートメッセージは、前記複雑性メッセージを使用して生成される。
一局面では、非決定性通信リンクを使用してリモートコンポーネントに接続されたローカルコンポーネントを提供する。前記ローカルコンポーネントは、最大オフセットの範囲内で、前記ローカルコンポーネントのローカルクロックを、リモートコンポーネントのリモートクロックと同期化させるための手段と、前記リモートコンポーネントからのレートメッセージを使用して、前記ローカルコンポーネントのデータレートを調整するための手段と、を含む。前記ローカルコンポーネントはまた、前記ローカルコンポーネントから前記リモートコンポーネントに送信されたデータメッセージを、前記リモートコンポーネントによって処理されるときまでに、前記リモートコンポーネントに到達させることを保証するための手段も備える。
特定の実施態様は、以下の特徴のうちの1つ以上を含むことが可能である。前記同期化させるための手段は、位相ロックループを含む。前記同期化させるための手段は、統計的な推定を含む。前記同期化させるための手段は、レート調整ユニットを備える。前記保証するための手段は、タイムスタンプコンポーネントを備える。
別の局面では、出力ストリームにデータをアセンブルする、出力アセンブリユニットを備えたマルチプレクサを提供する。入力ユニットは、ローカルクロックの時間が、タイムスタンプを使用して決定された時間と実質的に一致するときに、データおよび前記タイムスタンプを含むデータメッセージを受信し、出力アセンブリユニットに前記データを提供する。レート制御ユニットは、リモートコンポーネントにタイムスタンプされたレートメッセージを送信し、前記レートメッセージは、将来のデータメッセージのデータレートに関する情報を含む。
特定の実施態様は、以下の特徴のうちの1つ以上を含むことが可能である。前記レート制御ユニットは、前記将来のデータメッセージの複雑さに関する情報を使用して、前記レートメッセージを生成する。前記レート制御ユニットは、前記ローカルクロックの前記時間に関する情報を使用して、前記レートメッセージをタイムスタンプする。前記入力ユニットは、通信リンク遅延に関する情報、および/または前記ローカルクロックとリモートクロックとの間のオフセットに関する情報を使用して、前記出力アセンブリに前記データを提供する。
別の局面では、最大オフセットの範囲内で、エンコーダのクロックをリモートクロックと同期化させるように動作可能な同期化ユニットを備えたエンコーダを提供する。トランスミッタは、データレートでデータメッセージをタイムスタンプして伝送する。また、レート調整ユニットは、前記エンコーダのクロックの時間が、対応するメッセージ内のタイムスタンプを使用して決定された時間と実質的に一致するときに、前記対応するレートメッセージに応答して前記データレートに調整する。
特定の実施態様は、以下の特徴のうちの1つ以上を含むことが可能である。前記同期化ユニットは、位相ロックループを含む。前記トランスミッタは、前記エンコーダのクロックの前記時間に関する情報を使用して、前記データメッセージをタイムスタンプする。前記レート調整ユニットは、通信リンク遅延に関する情報、および/または前記最大オフセットに関する情報を使用して、前記データレートを調整する。前記トランスミッタは、前記対応するレートメッセージを生成するために使用される、タイムスタンプされた複雑性メッセージを伝送する。
実施態様は、以下の利点のうちの1つ以上を含むことが可能である。通信コンポーネントが、確率的ネットワークを使用して、メッセージを正確に同期化させるように使用することができる、方法および装置が開示される。決定性ネットワークを通じて通信するように設計されたシステムまたはコンポーネントは、前記確率的ネットワークを通じた通信が可能になるように構成することができる。通信システム内のコンポーネントは、専用の通信リンクを使用して直接接続せずに、離して配置することができる。通信システム内のコンポーネント間の接続は、再配線を必要とせずに動的に変更することができる。接続は動的に変更することができ、また非常に柔軟であるので、小型のバックアップデバイスを通信システムで使用することができる。大きな遅延および/または遅延に大きな変動のある確率的ネットワークを使用した場合であっても、メッセージの送達時間の変動を少なく保つことができる。
本発明の1つ以上の実施態様の詳細を、以下の添付図面および説明に記載する。本発明の他の特徴、目的、および利点は、以下の説明、図面、および特許請求の範囲から明らかになるだろう。
例えば、本発明は以下の項目を提供する。
(項目1)
ローカルコンポーネントとリモートコンポーネントとの間で通信するための方法であって、該ローカルコンポーネントは、非決定性通信リンクを使用して、該リモートコンポーネントに接続され、該ローカルコンポーネントのローカルクロックは、最大オフセットの範囲内で該リモートコンポーネントのリモートクロックと同期化され、該方法は、
ローカルコンポーネントでリモートコンポーネントからのレートメッセージを受信することであって、該レートメッセージは、第1のタイムスタンプを含む、ことと、
ローカルクロックの第1の時間が、該第1のタイムスタンプを使用して決定された時間と実質的に一致するときに、該レートメッセージを使用して、該ローカルコンポーネントのデータレートを調整することと、
該調整されたデータレートを使用して、該ローカルコンポーネントから該リモートコンポーネントに、該第1の時間でデータメッセージを送信することであって、該データメッセージは、該データメッセージ内のデータの処理に使用するための第2のタイムスタンプを含む、ことと
を含む、方法。
(項目2)
前記ローカルコンポーネントから前記リモートコンポーネントに複雑性メッセージを伝送することをさらに含み、該レートメッセージは、該複雑性メッセージを使用して生成される、項目1に記載の方法。
(項目3)
前記データレートを調整することは、位相ロックループを使用して前記ローカルクロックの前記第1の時間を決定することを含む、項目1に記載の方法。
(項目4)
前記データレートを調整することは、前記ローカルクロックの前記第1の時間を統計的に推定することを含む、項目1に記載の方法。
(項目5)
前記第1のタイムスタンプを使用して決定された前記時間は、通信リンク遅延に関する情報、および前記ローカルクロックとリモートクロックとの間のオフセットに関する情報のうちの少なくとも1つを使用して、さらに決定される、項目1に記載の方法。
(項目6)
前記ローカルクロックと前記リモートクロックとの間のオフセットに関する前記情報は、前記ローカルクロックと前記リモートクロックとの間の最大オフセットに関する情報を含む、項目5に記載の方法。
(項目7)
前記ローカルクロックと前記リモートクロックとの間の前記最大オフセットに関する前記情報は、正の最大オフセットおよび負の最大オフセットに関する情報を含む、項目6に記載の方法。
(項目8)
通信リンク遅延に関する前記情報は、前記ローカルコンポーネントと前記リモートコンポーネントとの間の最大通信リンク遅延に関する情報を含む、項目5に記載の方法。
(項目9)
通信リンク遅延に関する前記情報は、前記リモートコンポーネントから前記ローカルコンポーネントへの通信リンク遅延に関する情報と、該ローカルコンポーネントから該リモートコンポーネントへの通信リンク遅延に関する情報とを含む、項目5に記載の方法。
(項目10)
前記第1のタイムスタンプは、前記通信リンク遅延に関する前記情報、および前記ローカルクロックと前記リモートクロックとの間の前記オフセットに関する前記情報のうちの少なくとも1つを含む、項目5に記載の方法。
(項目11)
前記第2のタイムスタンプは、通信リンク遅延に関する情報、および前記ローカルクロックと前記リモートクロックとの間のオフセットに関する情報のうちの少なくとも1つを含む、項目1に記載の方法。
(項目12)
データレートを調整することは、前記レートメッセージに含まれるレート情報をキューに入れることを含む、請求項1に記載の方法。
(請求項13)
前記ローカルクロックの前記第1の時間が、前記第1のタイムスタンプを使用して決定された前記時間と実質的に一致するまで、前記レートメッセージをバッファリングすることをさらに含む、項目1に記載の方法。
(項目14)
ローカルコンポーネントとリモートコンポーネントとの間で通信する方法であって、該ローカルコンポーネントは、非決定性通信リンクを使用して該リモートコンポーネントに接続され、該ローカルコンポーネントのローカルクロックは、最大オフセットの範囲内で該リモートコンポーネントのリモートクロックと同期化され、該方法は、
レートメッセージを該ローカルコンポーネントから該リモートコンポーネントへ送信することであって、該レートメッセージは、リモートクロックの第1の時間が、第1のタイムスタンプを使用して決定された時間と実質的に一致するときに、該レートメッセージに含まれるデータレートを使用して、データメッセージを該ローカルコンポーネントに送信するために、該リモートコンポーネントが使用するための該第1のタイムスタンプを含む、ことと、
該ローカルコンポーネントで該データメッセージを受信することであって、該データメッセージは、第2のタイムスタンプを含む、ことと、
該第2のタイムスタンプを使用して、該データメッセージに含まれるデータを処理することと
を含む、方法。
(項目15)
前記リモートコンポーネントから複雑性メッセージを受信することと、
前記複雑性メッセージを使用して、前記レートメッセージを生成することと
をさらに含む、項目14に記載の方法。
(項目16)
前記データメッセージに含まれるデータを処理することは、ローカルクロックの第2の時間が、前記第2のタイムスタンプを使用して決定された時間と実質的に一致するときに、該データメッセージに含まれるデータを処理することを含む、項目14に記載の方法。
(項目17)
前記第2のタイムスタンプを使用して決定された前記時間は、通信リンク遅延に関する情報、および前記ローカルクロックと前記リモートクロックとの間のオフセットに関する情報のうちの少なくとも1つを使用して、さらに決定される、項目16に記載の方法。
(項目18)
前記ローカルクロックと前記リモートクロックとの間のオフセットに関する前記情報は、該ローカルクロックと該リモートクロックとの間の最大オフセットに関する情報を含む、項目17に記載の方法。
(項目19)
前記ローカルクロックと前記リモートクロックとの間の前記最大オフセットに関する前記情報は、正の最大オフセットおよび負の最大オフセットに関する情報を含む、項目18に記載の方法。
(項目20)
通信リンク遅延に関する前記情報は、前記ローカルコンポーネントと前記リモートコンポーネントとの間の最大通信リンク遅延に関する情報を含む、項目17に記載の方法。
(項目21)
通信リンク遅延に関する前記情報は、前記リモートコンポーネントから前記ローカルコンポーネントへの通信リンク遅延に関する情報と、該ローカルコンポーネントから該リモートコンポーネントへの通信リンク遅延に関する情報とを含む、項目17に記載の方法。
(項目22)
前記第2のタイムスタンプは、前記通信リンク遅延に関する前記情報、および前記ローカルクロックと前記リモートクロックとの間の前記オフセットに関する前記情報のうちの少なくとも1つを含む、項目17に記載の方法。
(項目23)
前記第1のタイムスタンプは、通信リンク遅延に関する情報、およびローカルクロックと前記リモートクロックとの間のオフセットに関する情報のうちの少なくとも1つを含む、項目14に記載の方法。
(項目24)
前記データメッセージに含まれるデータを処理することは、ローカルクロックの第2の時間が、前記第2のタイムスタンプを使用して決定された時間と実質的に一致するまで、前記データメッセージをバッファリングすることを含む、項目14に記載の方法。
(項目25)
ローカルコンポーネントとリモートコンポーネントとの間で通信するための方法であって、該方法は、
ローカルコンポーネントをリモートコンポーネントに接続する非決定性通信リンクを提供することと、
最大オフセットの範囲内で、該ローカルコンポーネントのローカルクロックを、該リモートコンポーネントのリモートクロックと同期化させることと、
該リモートコンポーネントから該ローカルコンポーネントにレートメッセージを送信することであって、該レートメッセージは、第1のタイムスタンプを含む、ことと、
該ローカルクロックの第1の時間が、該第1のタイムスタンプと、通信リンク遅延に関する情報と、該最大オフセットに関する情報とを使用して決定された時間に実質的に一致するときに、該レートメッセージを使用して、該ローカルコンポーネントのデータレートを調整することと、
該調整されたデータレートを使用して、該ローカルコンポーネントから該リモートコンポーネントに、該第1の時間でデータメッセージを送信することであって、該データメッセージは第2のタイムスタンプを含む、ことと、
該リモートクロックの第2の時間が、該第2のタイムスタンプと、通信リンク遅延に関する情報と、該最大オフセットに関する情報とを使用して決定された時間に実質的に一致するときに、該データメッセージに含まれるデータを処理することと
を含む、方法。
(項目26)
前記ローカルコンポーネントは、エンコーダであり、前記リモートコンポーネントは、マルチプレクサである、項目25に記載の方法。
(項目27)
前記ローカルコンポーネントから前記リモートコンポーネントに複雑性メッセージを伝送することをさらに含み、前記レートメッセージは、該複雑性メッセージを使用して生成される、項目25に記載の方法。
(項目28)
非決定性通信リンクを使用してリモートコンポーネントに接続されたローカルコンポーネントであって、
最大オフセットの範囲内で、ローカルコンポーネントのローカルクロックを、リモートコンポーネントのリモートクロックと同期化させるための手段と、
該リモートコンポーネントからのレートメッセージを使用して、該ローカルコンポーネントのデータレートを調整するための手段と、
該ローカルコンポーネントから該リモートコンポーネントに送信されたデータメッセージを、該リモートコンポーネントによって処理されるときまでに、該リモートコンポーネントに到達させることを保証するための手段と
を備える、ローカルコンポーネント。
(項目29)
前記同期化させるための手段は、位相ロックループを含む、項目28に記載のローカルコンポーネント。
(項目30)
前記同期化させるための手段は、統計的な推定を含む、項目28に記載のローカルコンポーネント。
(項目31)
前記同期化させるための手段は、レート調整ユニットを備える、項目28に記載のローカルコンポーネント。
(項目32)
前記保証するための手段は、タイムスタンプコンポーネントを備える、項目28に記載のローカルコンポーネント。
(項目33)
出力ストリームにデータをアセンブルするように動作可能な出力アセンブリユニットと、
ローカルクロックの時間が、タイムスタンプを使用して決定された時間と実質的に一致するときに、データおよび該タイムスタンプを含むデータメッセージを受信し、出力アセンブリユニットに該データを提供するように動作可能な入力ユニットと、
リモートコンポーネントにタイムスタンプされたレートメッセージを送信するように動作可能なレート制御ユニットであって、該レートメッセージは、将来のデータメッセージのデータレートに関する情報を含む、レート制御ユニットと
を備える、マルチプレクサ。
(項目34)
前記レート制御ユニットは、前記将来のデータメッセージの複雑さに関する情報を使用して、前記レートメッセージを生成する、項目33に記載のマルチプレクサ。
(項目35)
前記レート制御ユニットは、前記ローカルクロックの前記時間に関する情報を使用して、前記レートメッセージをタイムスタンプする、項目33に記載のマルチプレクサ。
(項目36)
前記入力ユニットは、通信リンク遅延に関する情報、および前記ローカルクロックとリモートクロックとの間のオフセットに関する情報のうちの少なくとも1つを使用して、前記出力アセンブリに前記データを提供する、項目33に記載のマルチプレクサ。
(項目37)
最大オフセットの範囲内で、エンコーダのクロックをリモートクロックと同期化させるように動作可能な同期化ユニットと、
データレートでデータメッセージをタイムスタンプして伝送するように動作可能なトランスミッタと、
該エンコーダのクロックの時間が、対応するレートメッセージ内のタイムスタンプを使用して決定された時間と実質的に一致するときに、該対応するレートメッセージに応答して該データレートに調整するように動作可能なレート調整ユニットと
を備える、エンコーダ。
(項目38)
前記同期化ユニットは、位相ロックループを含む、項目37に記載のエンコーダ。
(項目39)
前記トランスミッタは、前記エンコーダのクロックの前記時間に関する情報を使用して、前記データメッセージをタイムスタンプする、項目37に記載のエンコーダ。
(項目40)
前記レート調整ユニットは、通信リンク遅延に関する情報、および前記最大オフセットに関する情報のうちの少なくとも1つを使用して、前記データレートを調整する、項目37に記載のエンコーダ。
(項目41)
前記トランスミッタは、前記対応するレートメッセージを生成するために使用されるタイムスタンプされた複雑性メッセージを伝送する、項目37に記載のエンコーダ。
種々の図面における同じ参照符号は、同じ要素を示す。
図1は、通信システムのブロック図である。 図2は、エンコーダおよびマルチプレクサのブロック図である。 図3は、メッセージを同期化させるためのプロセスのフローチャートである。 図4Aは、複雑性メッセージのフォーマットを示す図である。 図4Bは、レートメッセージのフォーマットを示す図である。
図1は、複数のエンコーダ110(1)〜110(n)が、ネットワーク120(1)〜120(n)を使用してマルチプレクサ130に接続された、通信システム100を示す。エンコーダ110(1)〜110(n)は、例えば、入力信号105(1)〜105(n)を受信して、伝送するためにこれを符号化する、オーディオまたはビデオエンコーダとすることができる。エンコーダ110(1)〜110(n)は、一般に、マルチビットレートでデータを符合化および伝送することができる。エンコーダが信号を符号化するために使用するビットレートは、例えば、信号の複雑さ、出力チャネルで利用可能な帯域幅、または符号化信号に求められる、または必要とされる品質によって変化しうる。
エンコーダ110(1)〜110(n)は、ネットワーク120(1)〜120(n)を通じて、マルチプレクサ130に符号化データを伝送する。ネットワーク120(1)〜120(n)は、可変伝送遅延を有する確率的ネットワーク(例、インターネットプロトコル(IP)ネットワーク)とすることができる。一実施態様では、ネットワーク120(1)〜120(n)は、同一のネットワークの一部である。
マルチプレクサ130は、エンコーダ110(1)〜110(n)から符号化データを受信して、その符号化データを、一定のビットレートストリームとすることができる、単一の出力ストリーム135に組み合わせることができる。マルチプレクサ130は、一般に出力ストリーム135に対するターゲットビットレートを有するが、これは、例えば出力ストリーム135の送信を介したチャネルの容量によって、または出力ストリーム135を受信するデバイスの制限によって抑制することができる。マルチプレクサ130は、それぞれのエンコーダに特定のビットレートで符号化データを伝送するように命令するレートメッセージを、エンコーダ110(1)〜110(n)に提供することができる。マルチプレクサ130は、例えば、エンコーダからの符号化データの履歴、エンコーダが提供したメッセージの複雑さ、またはオペレータの入力に基づいて、エンコーダにどのレートで伝送するように命令するかを決定することができる。エンコーダからの複雑性メッセージは、所与のレベルの品質で、入力信号を符号化するために必要なビットレートの推定を含むことができる。複雑性メッセージはまた、マルチプレクサ130が、エンコーダにビットレートを割り当てるために使用することができる、現在の入力信号または将来の入力信号に関する統計または統計のグループを含むこともできる。
マルチプレクサ130は、出力信号135を所要のビットレートの範囲内に保持しながら、エンコーダ110(1)〜110(n)からの信号の品質を最適化するために、エンコーダ110(1)〜110(n)にビットレートを割り当てることができる。マルチプレクサ130は、予め設定されたレートまたはあまり定期的ではない間隔で、エンコーダ110(1)〜110(n)にレートメッセージを送信することができる。マルチプレクサ130がエンコーダ110(1)〜110(n)にレートメッセージを送信する場合、新しいビットレートで伝送されたエンコーダ110(1)〜110(n)からの符号化データが、出力ストリーム135にともに配置された時間に、マルチプレクサ130に到達するように、エンコーダ110(1)〜110(n)のビットレートを変更することが望ましい。古いビットレートで伝送するエンコーダからの符号化データが、新しいビットレートで伝送するエンコーダからの符号化データと多重化される場合、出力ストリーム135は、アンダーサブスクライブ(利用可能なビットよりも伝送するビットが少ない)となるか、またはオーバーサブスクライブ(利用可能なビットよりも伝送するビットが多い)となる場合がある。
図2は、エンコーダ210およびマルチプレクサ230がネットワーク220によって接続された、エンコーダ/マルチプレクサの対200を示す。マルチプレクサ230は、一般に複数のエンコーダに接続されるが、明確にするためにエンコーダ210だけを示す。ネットワーク220は、単一のネットワークとするか、または複数の独立したネットワークから構成することができる。エンコーダ210は、トランスミッタ212と、受信器214と、符号化ユニット215と、レート調整ユニット217と、を備える。マルチプレクサ230は、入力ユニット232と、レート制御ユニット234と、出力アセンブリユニット238と、を備える。
エンコーダ210は、入力信号205(例、非圧縮アナログまたはデジタルのオーディオ、ビデオ、またはデータ)を受信し、符号化ユニット215を使用して入力信号205を符号化して、トランスミッタ212を使用して符号化データメッセージ222を伝送する。データメッセージ222は、一般に可変ビットレートで符合化され、例えば、データストリームまたは一連の離散的なデータパケットとすることができる。示される実施態様では、エンコーダの時間(例えば、エンコーダクロック216によって示される)は、位相ロックループ(PLL)218を使用して、最大オフセットの範囲内でマルチプレクサクロック236と同期化される。PLL218は、ベース周波数としてエンコーダクロック216を使用し、同期化のための周波数基準としてマルチプレクサクロック236の時間に関する情報(例えば以下に説明するレートメッセージのタイムスタンプ、または別個のタイミングメッセージに含まれる)を使用することができる。別の実施態様では、エンコーダの時間ベースは、PLL218を使用する代わりに統計的手法を使用して、マルチプレクサクロック236と同期化させることができる。そのような統計的手法は、将来の挙動を予測してパケットの到達時間を推定するために、観測されたネットワーク遅延を使用する。別様には、ネットワークタイムプロトコルの変動を同期化に使用することができる。
一実施態様では、エンコーダ210は、レート制御ユニット234に複雑性メッセージ224を伝送することができる。レート制御ユニット234は、エンコーダ210に、データメッセージ222を生成するためにエンコーダ210が使用すべきビットレートを指定する、レートメッセージ226を伝送することができる。レート調整ユニット217は、レートメッセージ226を処理して、符号化ユニット215に、新しいレートを使用して入力信号205を符合化するように命令することができる。複雑性メッセージ224は、符号化ユニット215が入力信号205内の情報をどのくらい容易に符合化できるのかを示すことができる。複雑性メッセージ224は、所与のレベルの品質で入力信号205を符合化するために必要となる、ビットレートまたはビット数を明示的に提示することができる。複雑性メッセージ224は、入力信号205に関する1つ以上の統計(例、標本分散または平均)、および/または入力信号205に関する知覚的な情報を含むことができる。複雑性メッセージ224はまた、例えば複雑性メッセージ224が送信された時間(例えば、PLL218によって示される時間)に関する情報を含む、タイムスタンプを含むこともできる。複雑性メッセージのタイムスタンプは、トランスミッタ212によって複雑性メッセージ224に追加することができ、また、マルチプレクサ230が複雑性メッセージ224を処理および/または使用すべき時間に関する情報を含むことができる。マルチプレクサ230は、設定されたレート(例、32回/秒)で、複数のエンコーダからの複雑性メッセージを処理することができる。例えば、マルチプレクサ230は、複雑性メッセージが全てのエンコーダで利用可能であるかどうかに関わらず、(マルチプレクサクロック236によって示される)所与の時間で到達した、全ての複雑性メッセージを処理することができる。複雑性メッセージがエンコーダで利用可能でない場合、エンコーダに対する最後の複雑さの情報を再利用することができる。一実施態様では、複雑性メッセージ224は使用されず、レート情報は、例えばデータメッセージ222の履歴に基づいて決定することができる。
図4Aは、フィールド405〜430を含む、例示的な複雑性メッセージ400のフォーマットを示す。各フィールドは、例えば、32ビット符号なし整数とすることができる。フィールド405は、複雑性メッセージ400のタイムスタンプであり、フィールド410は、複雑さの値であるが、どちらも上述したものである。フィールド415は、エンコーダ(例、図2のエンコーダ210)のIDを指定し、複雑性メッセージ400と関連付けられる。フィールド420は、エンコーダが複雑性メッセージ400を送信する前に受信した、最後のレートメッセージを識別する。フィールド425および430は、エンコーダが伝送することができる、最小レートおよび最大レートをそれぞれ示す。
再び図2を参照する。レート制御ユニット234は、エンコーダ210にレートメッセージ226を送信する。レートメッセージ226は、エンコーダ210が、将来入力信号205を符号化して、データメッセージ222を伝送するために使用すべきビットレートおよび/またはビット数に関する情報を含むことができる。一実施態様では、マルチプレクサ230は、複数のエンコーダにブロードキャストレートメッセージを送信することができる。このブロードキャストレートメッセージは、各エンコーダに対する個々のビットレートか、または全てのエンコーダが使用すべき単一のビットレートを含むことができる。レートメッセージ226は、マルチプレクサクロック236の時間に関する情報を含むことができる、タイムスタンプを含む。例えば、レートメッセージのタイムスタンプは、レート制御ユニット234によって生成することができ、またレート制御ユニット234がレートメッセージ226を伝送した、(マルチプレクサクロック236によって示されるような)時間を示すことができる。レートメッセージのタイムスタンプは、エンコーダ210が、レートメッセージ226を処理および/または使用すべき時間に関する情報を含むことができる。
図4Bは、フィールド455〜470を含む、例示的なレートメッセージ450のフォーマットを示す。フィールド455は、レートメッセージ450のタイムスタンプであり、フィールド460は、エンコーダ(例、図2のエンコーダ210)に対する新しいレートであるが、どちらも上述したものである。フィールド465は、レートメッセージ450を処理すべきエンコーダのIDを指定する。フィールド470は、複数のレートメッセージ450である。例えば、レートメッセージは、連続した番号をつけることができる。
再び図2を参照する。エンコーダ210は、レートメッセージ226からのレート情報を使用して、データメッセージ222を伝送する。さらに具体的には、受信器214は、レートメッセージ226をバッファリングして、特定の時間(例えば、PLL218によって示された時間が、レートメッセージ226のタイムスタンプに含まれる時間と一致したとき)に、レート調整ユニット217にレートメッセージ226を提供する。レート調整ユニット217は、レートメッセージ226からのレート情報を使用して、符号化ユニット215のレートを調整する。符号化ユニット215は、調整されたレートを使用して入力信号205を符合化し、トランスミッタ212は、データメッセージ222において、マルチプレクサ230に符号化信号を伝送する。データメッセージ222は、例えばデータメッセージ222が送信された時間(例、PLL218によって示される時間)に関する情報を含む、タイムスタンプを含むことができる。タイムスタンプは、トランスミッタ212によって生成して、データメッセージ222へ追加することができる。
エンコーダ210は、レートメッセージ226からのレート情報を格納し、また決定性遅延の後の将来の伝送(例、データメッセージ222)にレート情報を適用する、レートキュー(図示せず)を含むことができる。レートキューは、例えば、データの特定の部分(例、入力信号205のセグメント)に対する複雑性メッセージを生成することができるように、エンコーダからマルチプレクサに複雑性メッセージを送信することができるように、マルチプレクサからエンコーダに対応するレートメッセージを送信することができるように、およびエンコーダが、レートメッセージを使用してデータの対応する部分を伝送できるように、エンコーダ/マルチプレクサの対200の往復遅延を補うことができる。レートキューを使用することによって、エンコーダ210は、データの一部に対応する複雑性メッセージを送信することができ、データの第1の部分に対応するレートメッセージを待ちながら、データの1つ以上の更なる部分を処理することができる。
マルチプレクサ230は、データメッセージ222を受信して、データメッセージ222に含まれるデータを、他のエンコーダからのデータと多重化する。一実施態様では、入力ユニット232は、データメッセージ222を受信して、特定の時間(例えば、マルチプレクサクロック236によって示された時間が、データメッセージ222のタイムスタンプに含まれる時間と一致したとき)に、出力アセンブリユニット238にデータメッセージ222を提供することができる。全てのエンコーダが、マルチプレクサ230によって送信されたレートメッセージに応答した場合、出力アセンブリユニット238は、マルチプレクサ出力ストリーム235に、全てのエンコーダからのデータを組み合わせることができる。出力ストリーム235は、一定のビットレートストリームとすることができ、また通信リンク(例、衛星リンク)を通じて、エンドユーザーまたは処理デバイスに伝送することができる。
一般に、レート制御ユニット234がレートメッセージ226を送信する時間と、出力アセンブリユニット238が一般にデータメッセージ222を受信する時間との関係が重要である。例えば、この「レートループ」が適切に同期化されなかった場合は、マルチプレクサにおいて、アンダーサブスクリプションまたはオーバーサブスクリプションが生じうる。レートループの同期化は、(i)PLL218によって示される時間と、マルチプレクサクロック236によって示される時間との間のオフセット、および(ii)ネットワーク220の遅延の変動という、2つの不確実性によって影響を受ける可能性がある。エンコーダ210によって示される時間と、マルチプレクサ230によって示される時間との間のオフセットは、一般に、正および負の最大オフセットによって境界が示され、PLL218の設計に依存し、対称とすることができる。ネットワーク220の遅延も同様に、一般に境界を示すことが可能である。例えば、ネットワーク220は、保証されたサービスの質を提供することができるが、ネットワーク220は、ある程度の(高い)可能性を有する特定の時間量(最大遅延)の範囲内のデータを配信する。
最大オフセットの範囲内(例、正および負の最大オフセットの範囲内)で、PLL218によって示された時間を、マルチプレクサクロック236によって示された時間と同期化させると、最大オフセットおよび最大ネットワーク遅延に関する情報は、一方のコンポーネント(マルチプレクサまたはエンコーダ)から他方のコンポーネントに送信された、時間依存のメッセージを受信コンポーネントによって処理される時間に到達させることを保証するために使用することができる。例えば、一実施態様では、レートメッセージが送信された時間(マルチプレクサ236によって示される)(timemux)と、マルチプレクサからエンコーダへの最大遅延(delaymux,enc)と、正の最大オフセット(offsetmax+)と、を加えた時間によってタイムスタンプされる。ここで、正のオフセットは、PLL218によって示された時間が、マルチプレクサクロック236によって示された時間よりも先であることを示す。エンコーダがレートメッセージを受信した時間(現在PLL218によって示される)(timeenc)は、タイムスタンプによって示された時間以下であり、これによって、エンコーダは、タイムスタンプによって示された時間によってレートメッセージを処理することが可能になる。
一実施態様では、エンコーダ210からマルチプレクサ230に送信されたデータメッセージは、データメッセージが送信された時間(PLL218によって示される)(timeenc)と、エンコーダからマルチプレクサへの最大ネットワーク遅延(delayenc,mux)と、負の最大オフセット(offsetmax−)と、を加えた時間によってタイムスタンプされる。ここで、負のオフセットは、PLL218によって示された時間が、マルチプレクサクロック236によって示された時間よりも後であることを示す。マルチプレクサがデータメッセージを受信した時間(現在、マルチプレクサ236によって示される)(timemux)は、タイムスタンプによって示された時間以下であり、これによって、マルチプレクサ230は、タイムスタンプによって示された時間に出力ストリーム235にデータを配置することが可能になる。マルチプレクサ230とエンコーダ210との間でメッセージを伝送するときに、最大オフセットおよび最大ネットワーク遅延を調整することによって、受信コンポーネントによって示される時間が、メッセージのタイムスタンプと一致したときに、受信コンポーネントは、そのメッセージを処理する時間にメッセージを受信することが可能になる。
エンコーダの時間ベースの(例えば、PLL218の)最大オフセットは、一般に、高性能通信システムにおけるメッセージの送達時間の許容エラーよりも大きい。しかし、エンコーダの時間ベースのオフセットは、本願明細書に記述された往復伝送では相殺される。オフセットが相殺されるので、非常に正確なシステムタイミングを達成することができる。例えば、マルチプレクサ230が、時間tにおいてレートメッセージを伝送して、時間t+定数+エラー(±50μs)においてエンコーダ210からデータが到達すると予想する場合、エンコーダの時間ベースの最大オフセットまたはネットワーク遅延の変動が±50msであっても、所要のタイミング精度を達成することができる。
上述のタイムスタンプスキームは、エンコーダ210とマルチプレクサ230との間の一定の往復遅延を提供する。例えば、マルチプレクサ230がレートメッセージを送信したときと、マルチプレクサ230が対応するビットレートを有するデータを出力ストリーム235に配置したときとの間の遅延は、一定であり、delaymux,enc+offsetmax++delayprocessing+delayenc,mux+offsetmax−である。ここで、delayprocessingは、エンコーダ210がレートメッセージを処理したときと、エンコーダ210がレートメッセージからのレート情報を使用してデータを伝送したときとの間の決定性遅延である。一実施態様でも同様に、他の決定性遅延がありうる。各エンコーダとマルチプレクサ230との間のラウンドトリップ遅延は、一定になりうるので、マルチプレクサ230は、実質的に同時にリクエストしたレートで、全てのエンコーダにレートメッセージを送信して、エンコーダからデータを受信することができる。これによって、マルチプレクサ230は、オーバーサブスクライブまたはアンダーサブスクライブせずに、全てのエンコーダからのデータを一定のビットレートの出力ストリーム235に組み合わせることが可能になる。
1つの可能なタイムスタンプスキームを上述したが、他のスキームも可能である。例えば、メッセージを伝送するコンポーネントは、伝送コンポーネントの時間ベースによって示されるように、メッセージが送信された時間で、そのメッセージにタイムスタンプすることができる。受信コンポーネントは、最大オフセットおよび最大ネットワーク遅延に基づいて、受信コンポーネントの時間ベースによって示される、メッセージを処理すべき時間を決定するために調整を行うことができる。一実施態様では、マルチプレクサまたはエンコーダは、最大オフセットおよび最大ネットワーク遅延に対する全てのタイムスタンプを調整することができる。一実施態様では、タイムスタンプは、メッセージが伝送された時間に関する情報の代わりに、またはこれとともに、受信コンポーネントがメッセージを処理すべき時間に関する、伝送コンポーネントの時間ベースで表される情報を含むことができる。一実施態様では、通信システムにおける処理遅延または他の遅延を補うために、更なる定数または変数を追加することができる。
図2および図3を参照する。図3は、確率的ネットワークを通じてメッセージを同期化させるためのプロセス300を示す。エンコーダ(例、エンコーダ210)の時間は、最大オフセットの範囲内で、マルチプレクサ(例、マルチプレクサ230)の時間と同期化される(ステップ310)。これらの時間は、例えば、PLL、ネットワークタイムプロトコルの変動、統計的手法、決定性ネットワーク(例、パブリック電話システム)を通じた通信、または全地球測位システム(GPS)信号を使用して同期化させることができる。エンコーダの時間がマルチプレクサの時間に同期化されると、エンコーダの時間は、一般に、通常の動作中は、マルチプレクサの時間の最大オフセットの範囲内にとどまる。エンコーダの時間とマルチプレクサの時間との間のオフセットが、最大オフセットを超えた場合、これらの時間を再同期化させることができる。
エンコーダの入力時に、信号の複雑さに関する情報を含む複雑性メッセージを、状況に応じてマルチプレクサに伝送することができる(ステップ320)。複雑性メッセージを伝送する場合、複雑性メッセージによって、マルチプレクサは、以降のレートの割り当てについて、より良好な決定を行うことが可能になる。マルチプレクサは、エンコーダにタイムスタンプを含むレートメッセージを伝送する(ステップ330)が、これは、将来のデータを伝送すべきレートに関する情報を含むことができる。複雑性メッセージを含む実施態様では、複雑性メッセージが生成されたデータに、その後レート情報を適用することができる。レートメッセージのタイムスタンプは、適切な時間にレートメッセージを処理するために、エンコーダが使用することができる。レートメッセージのタイムスタンプはまた、エンコーダの時間とマルチプレクサの時間との間の同期化を保持するために使用することもできる。
エンコーダは、レートメッセージを受信して、出力する符号化データのデータレートを調整する(ステップ340)。例えば、エンコーダは、エンコーダの入力信号に適用された圧縮レベルを調整することによって、またはエンコードプロセスの複雑さを変化させることによって出力データレートを調整することができる。エンコーダは、エンコーダの時間が、レートメッセージのタイムスタンプを使用して決定された時間と一致したときに、出力データレートを変更することができる。または、エンコーダは、エンコーダの時間が、レートメッセージのタイムスタンプに含まれる時間と一致したときに、対応するデータレートをキューに入れることができる。一実施態様では、レートメッセージのタイムスタンプは、レートメッセージが送信された時間に関する情報を含み、エンコーダは、レートメッセージが送信された時間に、ネットワーク遅延と最大オフセットを加えることによって決定された時間において、レートメッセージを処理する。別の実施態様では、レートメッセージのタイムスタンプは、エンコーダが、レートメッセージを処理すべき時間を含む。この実施態様では、タイムスタンプは、ネットワーク遅延および最大オフセットに関する情報を含むことができる。
エンコーダは、調整したデータレートを使用して、マルチプレクサにタイムスタンプを含むデータメッセージを伝送する(ステップ350)。マルチプレクサは、データメッセージを受信して、それに含まれるデータを処理する(ステップ360)。マルチプレクサは、いつデータメッセージからのデータを出力ストリームに配置するのかを決定するために、データメッセージのタイムスタンプを使用することができる。一実施態様では、類似したタイムスタンプを有する(例えば、それぞれのエンコーダによって同じような時間に伝送された)複数のエンコーダからのデータメッセージは、互いに出力ストリームに配置することができる。別の実施態様では、タイムスタンプは、ネットワーク遅延および最大オフセットに関する情報を含み、いつ、どのマルチプレクサが、出力ストリームに、対応するデータを配置すべきかを示す。さらに別の実施態様では、タイムスタンプは、データメッセージが送信された時間を示し、マルチプレクサは、出力ストリームのデータをいつ配置するのかを決定するために、このタイムスタンプと、ネットワーク遅延および最大オフセットに関する情報とを使用する。
プロセス300は、マルチプレクサおよびエンコーダとの関連で説明したが、プロセス300は、コンポーネントが確率的ネットワークを通じて通信する多様な状況において使用することができる。加えて、説明ではレートメッセージおよびデータメッセージを例証的に使用したが、プロセス300を使用して、多様なタイプのメッセージを同期化させることができる。
本発明の複数の実施態様を説明した。それでも、本発明の精神と範囲から逸脱することなく、種々の変更を行うことが可能であると理解されよう。例えば、時間ベースの同期化および/またはタイムスタンプは、別個のコンポーネントによって行うことができる。例えば、PLL218およびタイムスタンプ手段(例、データパケットにタイムスタンプを付加するバッファ)は、エンコーダ210から分離させることができる。したがって、従来のエンコーダは、確率的ネットワークとインターフェースするために改造することができる。一実施態様では、レート制御(レート制御ユニット234)は、物理的にマルチプレクサ230の一部ではない。レート制御ユニット234は、例えば、ネットワーク220または別個の通信リンクを使用して、マルチプレクサ230と通信することができる。したがって、他の実施態様は、以下の特許請求の範囲内にある。

Claims (1)

  1. 明細書に記載の発明
JP2011177734A 2004-08-30 2011-08-15 確率的なネットワーク上のメッセージの同期化 Withdrawn JP2011234421A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/931,178 2004-08-30
US10/931,178 US7660366B2 (en) 2004-08-30 2004-08-30 Message synchronization over a stochastic network

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2007530322A Division JP4865717B2 (ja) 2004-08-30 2005-08-29 確率的なネットワーク上のメッセージの同期化

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2013173125A Division JP2013236408A (ja) 2004-08-30 2013-08-23 確率的なネットワーク上のメッセージの同期化

Publications (1)

Publication Number Publication Date
JP2011234421A true JP2011234421A (ja) 2011-11-17

Family

ID=35942910

Family Applications (4)

Application Number Title Priority Date Filing Date
JP2007530322A Active JP4865717B2 (ja) 2004-08-30 2005-08-29 確率的なネットワーク上のメッセージの同期化
JP2011019213A Expired - Fee Related JP5503570B2 (ja) 2004-08-30 2011-01-31 確率的なネットワーク上のメッセージの同期化
JP2011177734A Withdrawn JP2011234421A (ja) 2004-08-30 2011-08-15 確率的なネットワーク上のメッセージの同期化
JP2013173125A Withdrawn JP2013236408A (ja) 2004-08-30 2013-08-23 確率的なネットワーク上のメッセージの同期化

Family Applications Before (2)

Application Number Title Priority Date Filing Date
JP2007530322A Active JP4865717B2 (ja) 2004-08-30 2005-08-29 確率的なネットワーク上のメッセージの同期化
JP2011019213A Expired - Fee Related JP5503570B2 (ja) 2004-08-30 2011-01-31 確率的なネットワーク上のメッセージの同期化

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2013173125A Withdrawn JP2013236408A (ja) 2004-08-30 2013-08-23 確率的なネットワーク上のメッセージの同期化

Country Status (7)

Country Link
US (3) US7660366B2 (ja)
EP (1) EP1784936B1 (ja)
JP (4) JP4865717B2 (ja)
KR (2) KR101258380B1 (ja)
IL (1) IL181631A (ja)
TW (1) TWI410101B (ja)
WO (1) WO2006026683A2 (ja)

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9108107B2 (en) * 2002-12-10 2015-08-18 Sony Computer Entertainment America Llc Hosting and broadcasting virtual events using streaming interactive video
US9325998B2 (en) * 2003-09-30 2016-04-26 Sharp Laboratories Of America, Inc. Wireless video transmission system
US8018850B2 (en) * 2004-02-23 2011-09-13 Sharp Laboratories Of America, Inc. Wireless video transmission system
US7660366B2 (en) * 2004-08-30 2010-02-09 Harmonic Inc. Message synchronization over a stochastic network
US8356327B2 (en) * 2004-10-30 2013-01-15 Sharp Laboratories Of America, Inc. Wireless video transmission system
US7797723B2 (en) 2004-10-30 2010-09-14 Sharp Laboratories Of America, Inc. Packet scheduling for video transmission with sender queue control
US7784076B2 (en) * 2004-10-30 2010-08-24 Sharp Laboratories Of America, Inc. Sender-side bandwidth estimation for video transmission with receiver packet buffer
US20070067480A1 (en) * 2005-09-19 2007-03-22 Sharp Laboratories Of America, Inc. Adaptive media playout by server media processing for robust streaming
US9544602B2 (en) * 2005-12-30 2017-01-10 Sharp Laboratories Of America, Inc. Wireless video transmission system
US7652994B2 (en) * 2006-03-31 2010-01-26 Sharp Laboratories Of America, Inc. Accelerated media coding for robust low-delay video streaming over time-varying and bandwidth limited channels
US8233897B2 (en) * 2006-06-15 2012-07-31 The Mitre Corporation Assessment of idle portions of multidimensional radio spectrum access
US8861597B2 (en) * 2006-09-18 2014-10-14 Sharp Laboratories Of America, Inc. Distributed channel time allocation for video streaming over wireless networks
US7652993B2 (en) * 2006-11-03 2010-01-26 Sharp Laboratories Of America, Inc. Multi-stream pro-active rate adaptation for robust video transmission
US7605737B2 (en) * 2007-03-08 2009-10-20 Texas Instruments Incorporated Data encoding in a clocked data interface
US7937618B2 (en) * 2007-04-26 2011-05-03 International Business Machines Corporation Distributed, fault-tolerant and highly available computing system
GB0708440D0 (en) * 2007-05-02 2007-06-06 Film Night Ltd Data transmission
EP2165541B1 (en) * 2007-05-11 2013-03-27 Audinate Pty Ltd Systems, methods and computer-readable media for configuring receiver latency
FR2927749B1 (fr) * 2008-02-14 2010-12-17 Canon Kk Procede et dispositif de transmission de donnees, notamment video.
US9307298B2 (en) * 2009-05-29 2016-04-05 Harmonic, Inc. System and method for video statistical multiplexing adapting to internet protocol networks
CN101931884B (zh) 2009-06-23 2016-05-18 北京三星通信技术研究有限公司 一种数据同步方法和系统
JP4838341B2 (ja) * 2009-09-28 2011-12-14 Nttエレクトロニクス株式会社 符号化システム及び符号化装置
US9883471B2 (en) * 2011-06-13 2018-01-30 Telefonaktiebolaget Lm Ericsson (Publ) Method and device for rate matching
FR2979506B1 (fr) * 2011-08-30 2013-08-30 Bull Sas Procede de synchronisation d'une grappe de serveurs et grappe de serveurs mettant en oeuvre ce procede
US20130121240A1 (en) * 2011-11-16 2013-05-16 Telefonaktiebolaget L M Ericsson (Publ) Delay Management in Shared Baseband Deployments
US8619936B2 (en) 2012-04-11 2013-12-31 Telefonaktiebolaget L M Ericsson (Publ) Clock switching algorithm based on preferred clock source
US9532080B2 (en) 2012-05-31 2016-12-27 Sonic Ip, Inc. Systems and methods for the reuse of encoding information in encoding alternative streams of video data
WO2014014520A1 (en) * 2012-07-18 2014-01-23 Intel Corporation Measuring time offsets between devices with independent silicon clocks
US9357210B2 (en) 2013-02-28 2016-05-31 Sonic Ip, Inc. Systems and methods of encoding multiple video streams for adaptive bitrate streaming
KR101534477B1 (ko) * 2013-10-31 2015-07-07 삼성에스디에스 주식회사 설비 제어 망에서 확률 모델을 활용한 능동 수동 데이터 수집 장치 및 방법
FR3022426A1 (fr) * 2014-06-16 2015-12-18 Orange Gestion par un equipement intermediaire de la qualite de transmission d'un flux de donnees vers un terminal mobile
US11917002B2 (en) 2014-10-14 2024-02-27 Comcast Cable Communications, Llc Manipulation and recording of content transmissions
US11943289B2 (en) 2014-10-14 2024-03-26 Comcast Cable Communications, Llc Manipulation of content transmissions
US10070136B2 (en) * 2016-02-16 2018-09-04 Arris Enterprises Llc Statistical multiplexing with heterogeneous encoder pool
US10461884B2 (en) * 2017-10-05 2019-10-29 Comcast Cable Communications, Llc Server selected variable bitrate streaming
US10237835B1 (en) 2017-11-06 2019-03-19 T-Mobile Usa, Inc. Temporal power control system and method
EP3772226B1 (en) * 2019-07-30 2023-01-25 Volkswagen AG Methods, computer programs, and apparatuses for a command center and a vehicle
JP2022107993A (ja) * 2021-01-12 2022-07-25 ヤマハ株式会社 信号処理方法、信号処理装置、および信号処理プログラム
KR102463916B1 (ko) * 2021-02-04 2022-11-04 상명대학교산학협력단 시간 동기화 없는 결정론적 네트워크를 위한 지터 상한 보장 방법

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4998580A (en) * 1985-10-02 1991-03-12 Modine Manufacturing Company Condenser with small hydraulic diameter flow path
US5372188A (en) * 1985-10-02 1994-12-13 Modine Manufacturing Co. Heat exchanger for a refrigerant system
US5193613A (en) * 1992-06-30 1993-03-16 Wallis Bernard J Heat exchanger header tube and method of making
JP3149328B2 (ja) 1995-01-09 2001-03-26 松下電器産業株式会社 送信装置と受信装置
JPH0946390A (ja) * 1995-08-01 1997-02-14 Matsushita Electric Ind Co Ltd ディジタル信号伝送装置および記録装置
US5861919A (en) * 1995-12-18 1999-01-19 Divicom Dynamic rate optimization for an ensemble of video encoders
KR100280559B1 (ko) * 1996-01-08 2001-02-01 포만 제프리 엘 멀티미디어파일배포를위한파일서버
JP3687188B2 (ja) * 1996-04-05 2005-08-24 ソニー株式会社 パケット伝送方法
US5815671A (en) * 1996-06-11 1998-09-29 Command Audio Corporation Method and apparatus for encoding and storing audio/video information for subsequent predetermined retrieval
US6038256A (en) * 1996-12-31 2000-03-14 C-Cube Microsystems Inc. Statistical multiplexed video encoding using pre-encoding a priori statistics and a priori and a posteriori statistics
US6701372B2 (en) * 1997-08-22 2004-03-02 Canon Kabushiki Kaisha Data communication apparatus and method
US6490250B1 (en) 1999-03-09 2002-12-03 Conexant Systems, Inc. Elementary stream multiplexer
US6223556B1 (en) * 1999-11-24 2001-05-01 Modine Manufacturing Company Integrated parallel flow condenser receiver assembly
EP1330914A2 (en) 2000-10-06 2003-07-30 Motorola, Inc. Method and system for rate adaptation in a packet voice system
US7142508B2 (en) * 2000-12-22 2006-11-28 Radiance Technologies, Inc. System and method for controlling data transfer rates on a network
US7778281B2 (en) * 2001-04-27 2010-08-17 Panasonic Corporation Wireless communication apparatus
KR20030034835A (ko) * 2001-10-27 2003-05-09 삼성전자주식회사 이동통신 시스템에서 역방향 링크의 제어 방법
US7012883B2 (en) * 2001-11-21 2006-03-14 Qualcomm Incorporated Rate selection for an OFDM system
JP4042396B2 (ja) * 2001-12-10 2008-02-06 ソニー株式会社 データ通信システム、データ送信装置、データ受信装置、および方法、並びにコンピュータ・プログラム
JP4116470B2 (ja) 2002-03-06 2008-07-09 ヒューレット・パッカード・カンパニー メディア・ストリーミング配信システム
KR100490403B1 (ko) * 2002-05-04 2005-05-17 삼성전자주식회사 오디오 스트림의 버퍼링 제어 방법 및 그 장치
JP2003332671A (ja) * 2002-05-17 2003-11-21 Sharp Corp 半導体レーザ装置および光ピックアップ装置
CN1685639A (zh) * 2002-07-31 2005-10-19 夏普株式会社 数据通信装置、其间歇通信方法、记载该方法的计算机程序及记录该计算机程序的记录介质
US7130368B1 (en) * 2002-09-19 2006-10-31 Nortel Network Limited Clock recovery using a direct smoothing process
JP4028356B2 (ja) 2002-10-31 2007-12-26 京セラ株式会社 通信システム、無線通信端末、データ配信装置及び通信方法
JP2004158929A (ja) * 2002-11-01 2004-06-03 Sharp Corp 動画像処理方法および動画像処理装置ならびに動画像伝送装置
DE60231921D1 (de) * 2002-11-18 2009-05-20 Ericsson Telefon Ab L M Dateneinheit-sender und verfahren zu dessen steuerung
JP2004214755A (ja) 2002-12-27 2004-07-29 Hitachi Ltd 動的符号化レート変更方法及びその装置
EP1450514A1 (en) * 2003-02-18 2004-08-25 Matsushita Electric Industrial Co., Ltd. Server-based rate control in a multimedia streaming environment
WO2004102906A1 (en) * 2003-05-16 2004-11-25 Matsushita Electric Industrial Co., Ltd. Packet classification and concatenation over power line communication systems
US7412265B2 (en) * 2003-06-12 2008-08-12 Industrial Technology Research Institute Method and system for power-saving in a wireless local area network
US7660366B2 (en) 2004-08-30 2010-02-09 Harmonic Inc. Message synchronization over a stochastic network

Also Published As

Publication number Publication date
WO2006026683A3 (en) 2009-04-09
KR20070083610A (ko) 2007-08-24
KR20120034254A (ko) 2012-04-10
US20130010890A1 (en) 2013-01-10
EP1784936B1 (en) 2013-04-24
JP5503570B2 (ja) 2014-05-28
IL181631A (en) 2011-11-30
IL181631A0 (en) 2007-07-04
TWI410101B (zh) 2013-09-21
US8396159B2 (en) 2013-03-12
US8750409B2 (en) 2014-06-10
WO2006026683A2 (en) 2006-03-09
EP1784936A4 (en) 2010-07-28
US20060045020A1 (en) 2006-03-02
KR101192482B1 (ko) 2012-10-17
US7660366B2 (en) 2010-02-09
JP4865717B2 (ja) 2012-02-01
US20100118888A1 (en) 2010-05-13
KR101258380B1 (ko) 2013-04-30
EP1784936A2 (en) 2007-05-16
JP2013236408A (ja) 2013-11-21
JP2011091865A (ja) 2011-05-06
TW200625902A (en) 2006-07-16
JP2008512064A (ja) 2008-04-17

Similar Documents

Publication Publication Date Title
JP4865717B2 (ja) 確率的なネットワーク上のメッセージの同期化
EP1606717B1 (en) Method and device for multimedia streaming
US8971352B2 (en) High accuracy 1588 timestamping over high speed multi lane distribution physical code sublayers
US8351437B2 (en) Stereo bit clock tuning
KR20050109071A (ko) 패킷망에서의 클록 도메인의 정렬 방법 및 장치
WO2010138913A1 (en) Systems and methods for video statistical multiplexing adapting to internet protocol networks
JP2012513139A (ja) 外部のコプロセッサを有するマルチプレクサにおいてトランスポートストリームを同期させる方法
JP4042396B2 (ja) データ通信システム、データ送信装置、データ受信装置、および方法、並びにコンピュータ・プログラム
WO2014188664A1 (ja) 放送システム、クライアント、同期プログラム、及び同期方法
US20080112437A1 (en) Method And System For Providing Via A Data Network Information Data For Recovering A Clock Frequency
JP3906678B2 (ja) データ通信システム、データ送信装置、データ受信装置、および方法、並びにコンピュータ・プログラム
JP2007518333A (ja) データ伝送システムにおけるジッタの導入
JP2009530886A (ja) パケット交換網における同期信号の送信における送信計数値のための保護機構

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110815

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120807

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130225

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20130508

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20130513

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130823

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140310

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20140326