JP2004505497A - 非同期デジタルホームネットワークにおけるマルチメディアジッタ除去 - Google Patents
非同期デジタルホームネットワークにおけるマルチメディアジッタ除去 Download PDFInfo
- Publication number
- JP2004505497A JP2004505497A JP2002514932A JP2002514932A JP2004505497A JP 2004505497 A JP2004505497 A JP 2004505497A JP 2002514932 A JP2002514932 A JP 2002514932A JP 2002514932 A JP2002514932 A JP 2002514932A JP 2004505497 A JP2004505497 A JP 2004505497A
- Authority
- JP
- Japan
- Prior art keywords
- data
- time stamp
- clock
- network
- data frame
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 claims abstract description 21
- 239000000872 buffer Substances 0.000 claims description 24
- 230000004044 response Effects 0.000 claims description 9
- 238000012546 transfer Methods 0.000 claims description 4
- 230000001360 synchronised effect Effects 0.000 claims description 3
- 238000012545 processing Methods 0.000 claims description 2
- 238000010586 diagram Methods 0.000 description 13
- 230000006870 function Effects 0.000 description 7
- 238000001514 detection method Methods 0.000 description 6
- 238000012360 testing method Methods 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 5
- 230000008859 change Effects 0.000 description 5
- 238000005070 sampling Methods 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 238000011084 recovery Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 239000013078 crystal Substances 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000008014 freezing Effects 0.000 description 1
- 238000007710 freezing Methods 0.000 description 1
- 239000012464 large buffer Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/4302—Content synchronisation processes, e.g. decoder synchronisation
- H04N21/4305—Synchronising client clock from received content stream, e.g. locking decoder clock with encoder clock, extraction of the PCR packets
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
- H04J3/06—Synchronising arrangements
- H04J3/0635—Clock or time synchronisation in a network
- H04J3/0638—Clock or time synchronisation among nodes; Internode synchronisation
- H04J3/0658—Clock or time synchronisation among packet nodes
- H04J3/0661—Clock or time synchronisation among packet nodes using timestamps
- H04J3/0664—Clock or time synchronisation among packet nodes using timestamps unidirectional timestamps
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/61—Network physical structure; Signal processing
- H04N21/6106—Network physical structure; Signal processing specially adapted to the downstream path of the transmission network
- H04N21/6125—Network physical structure; Signal processing specially adapted to the downstream path of the transmission network involving transmission via Internet
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
- H04J3/06—Synchronising arrangements
- H04J3/0635—Clock or time synchronisation in a network
- H04J3/0638—Clock or time synchronisation among nodes; Internode synchronisation
- H04J3/0658—Clock or time synchronisation among packet nodes
- H04J3/0661—Clock or time synchronisation among packet nodes using timestamps
- H04J3/067—Details of the timestamp structure
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
- H04J3/06—Synchronising arrangements
- H04J3/0635—Clock or time synchronisation in a network
- H04J3/0638—Clock or time synchronisation among nodes; Internode synchronisation
- H04J3/0658—Clock or time synchronisation among packet nodes
- H04J3/0673—Clock or time synchronisation among packet nodes using intermediate nodes, e.g. modification of a received timestamp before further transmission to the next packet node, e.g. including internal delay time or residence time into the packet
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
- H04J3/06—Synchronising arrangements
- H04J3/0635—Clock or time synchronisation in a network
- H04J3/0685—Clock or time synchronisation in a node; Intranode synchronisation
- H04J3/0697—Synchronisation in a packet node
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/2803—Home automation networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/2803—Home automation networks
- H04L12/2807—Exchanging configuration information on appliance services in a home automation network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/2803—Home automation networks
- H04L12/283—Processing of data at an internetworking point of a home automation network
- H04L12/2834—Switching of information between an external network and a home network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/2803—Home automation networks
- H04L12/2838—Distribution of signals within a home automation network, e.g. involving splitting/multiplexing signals to/from different paths
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/2803—Home automation networks
- H04L2012/284—Home automation networks characterised by the type of medium used
- H04L2012/2841—Wireless
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/2803—Home automation networks
- H04L2012/284—Home automation networks characterised by the type of medium used
- H04L2012/2843—Mains power line
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/2803—Home automation networks
- H04L2012/2847—Home automation networks characterised by the type of home appliance used
- H04L2012/2849—Audio/video appliances
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Computer Networks & Wireless Communication (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
- Small-Scale Networks (AREA)
Abstract
Description
本発明は、非同期通信ネットワークに関し、より詳細には、マルチメディアデータパケットからジッタを除去するためにシステムレベルのクロッキング方式を有する非同期マルチメディアデジタルホームネットワークに関する。
【0002】
デジタル通信技術の最近の発展により、デジタルホームネットワーク(「DHN」)の実行可能性が高まり、家庭内のさまざまなデバイスの相互通信が可能になってきた。特に、ブロードバンドアクセスの利用が広がり、家庭内のさまざまなデバイスをブロードバンドアクセスに結合されている単一のゲートウェイデバイスに結びつけ、マルチメディア情報に集中アクセスし配布できることが望ましいものとなっている。このようなデジタルホームネットワークでは、ゲートウェイデバイスにより、マルチメディアコンテンツにアクセスしそれをバッファし、ネットワークに結合されている各種のクライアントデバイスから要求されたときネットワーク経由でコンテンツを配布する。
【0003】
Ethernet(登録商標)はLANを実施するために共通のオプションである。Ethernet(登録商標)は非同期衝突検出ネットワーク(asynchronous collision detect network)である。HPNAもまた、非同期衝突検出ネットワークであり、送電線を利用した一部のネットワークは多くの場合、非同期衝突検出ネットワークである。しかし、そのようなネットワークをマルチメディアコンテンツの配信に使用した場合、問題が生じることがある。
【0004】
図1は、マルチメディアネットワークを示すシステム図である。システム100は、複数の通信ネットワーク105−107のいずれかによりメディアサーバ103に結合された複数のデバイス108−113を備える。システム100では、メディアサーバ103は衛星放送用パラボラアンテナ(satellite dish)102を介してマルチメディアコンテンツを受信し、コンテンツをバッファし、ネットワークに結合されている各種デバイスからの要求に応じてコンテンツを配信する。メディアサーバ103はさらに、ケーブル,DSLなど、複数の知られているデジタルメディアアクセス方法のいずれかによりマルチメディアコンテンツを受信するように結合できる。選択されたネットワークを介したデータの転送は一般に、大きなバッファを使用するか、またはクライアントデバイスでデータを絞ることができるようにすることで行うことができる。
【0005】
この点に関して、生放送(live broadcast)および非同期デジタルホームネットワークでの配信に関連する問題が多数ある。生放送の信号(live broadcast signal)では、データはクライアントデバイスにプッシュされ、クライアントデバイス側では着信データストリーム(incoming data stream)を制御しない。ネットワークで接続されているクライアントデバイスが、正しいフレームレートで、フレームの繰り返しまたは喪失なしで配信されたオーディオデータおよびビデオデータをすべてデコードし表示できるようにするために、一般に、ネットワークで接続されたクライアントデバイスはネットワークゲートウェイデバイスとクロックで同期している必要がある。放送A/Vネットワークでクロック同期に使用される最も広く受け入れられている方法は、放送サイト(broadcast site)で取られたカウンタサンプル(counter sample)を放送時から受信時まで一定の遅延とともに受信機に配信することに依拠している。放送サイトでのカウンタは、放送サイトの基準クロックにより増分される。これらのクロックサンプルが受信機に届いた途端、電圧制御発振器(VCXO)からクロック信号が供給されているカウンタのサンプリングが行われる。カウンタの値と放送サイトから受信したタイムスタンプとが比較され、ローカルカウンタのサンプルと放送サイトで取ったクロックサンプルとの差が時間とともに変化する場合に、ローカルのVCXOに印加された電圧が調整され、ローカルクロックが放送サイトの基準クロックに周波数ロックされる。
【0006】
Ethernet(登録商標)ネットワークなどの非同期衝突検出ネットワークでは、パケットが構築され、送信バッファ内に置かれてからネットワーク接続デバイスに届くまでの遅延時間は必ずしも一定ではない。このようなネットワークでは、ネットワーク上で衝突する複数のデバイスにより、パケット受信時にパケットは変化する場合がありまた遅延時間も予想できない。このような環境では、遅延は一定せずまた予測できないため上述の方法を使用してネットワークで接続された受信機のクロックをネットワークで接続された送信機のクロックに周波数ロックすることはできない。このような方法を使用して受信機のクロックを送信機のクロックにロックしようとすると、受信機のクロックに著しいジッタが発生する場合がある。受信機のクロック内のジッタの大きさによっては、ビデオ表示にNTSC準拠のカラーバーストを生成できない場合がある。さらに、このジッタがあることにより、最低でも、オーディオおよびビデオ圧縮データバッファは必要以上に大きくする必要があり、または最悪、バッファがアンダフローまたはオーバーフローを起こすことがある。副作用としては、ビデオフリージング(video freezing),オーディオのチャープ(possible audio chirp)、およびカラーバーストの変動による表示色の動的変化が含まれる。
【0007】
1394ネットワークなどの一部のネットワークでは、このような問題をなくすために等時性機能(isochronous capability)を備える。さらに、ATMネットワークに対してこれらのタイミング問題を解消するためにSRTSなどのさまざまな方法も開発されている。SRTS法では、送信デバイスと受信デバイスが共に同期処理用のネットワーククロックにアクセスできることを想定している。しかし、このような方法は、Ethernet(登録商標)ネットワークなどの非同期衝突検出ネットワークのジッタを是正するのには完全には適していない場合がある。したがって、クロックの同期処理を行い、非同期ネットワーク、特に非同期衝突検出ネットワーク内のデータフローを制御し上述の問題を克服するシステムと方法が望まれている。
【0008】
本発明では、上述のジッタ問題を克服し、特に非同期ネットワーク上でマルチメディアコンテンツを配信するシステムと方法を提供する。より具体的には、本発明では、タイムスタンプを使用して、非同期ホームネットワーク上のソフトウェア処理および衝突が原因で生じるジッタの効果を最小限に抑え、かつ低減する。タイムスタンプは、クライアントデバイスのクロックとサーバクロックとの同期処理を実行し、さらにクライアントデバイスのデータフローを制御するために使用される。
【0009】
フロー制御用に、一組のタイムスタンプ(one set of time stamps)が追加される。広帯域ネットワークからパケットが到着すると、サーバ内のローカルカウンタのサンプル(a sample of a local counter)がレジスタにラッチされる。サーバは、サンプリングしたカウンタ値を、受信したトランスポートパケットに付加する。ローカルカウンタを、ヘッドエンドのシステムクロックに周波数ロックされているシステムクロックに合わせる。パケットにタイムスタンプを設定した後、サーバはパケットを送信バッファ(transmit buffer)に入れる(place)。このタイムスタンプは、広帯域接続(broadband connection)からデータが受信され、バッファに入れられたときを示し、したがって、データはバッファに入ったのとまったく同じレートでクライアントデバイスがデータを取り除くのに使用できる。
【0010】
クライアントデバイスのクロックとヘッドエンドのクロックとの同期を取るためにもう一組のタイムスタンプを使用する。データのフレームがネットワーク上に置かれると、システムクロック上で動作するローカルカウンタがサンプリングされる。サンプリングされるクロックに基づくタイムスタンプはネットワーク物理層のデータフレーム内にリアルタイムで書き込まれ、ローカルカウンタのサンプリングからの時間は一定であり、サンプリングされたカウント値がネットワークに置かれる。衝突(collision)が発生すると、データが再送されるときタイムスタンプが更新(update)される。新しいデータフレームがクライアントデバイスの物理層に届くと、クライアントのローカルクロックで動作するローカルカウンタのサンプルがレジスタにラッチされる。この「受信時刻(receive−time)」タイムスタンプがデータの受信フレームに付加され、クライアントのネットワークプロトコルのハードウェアおよびソフトウェアの続く層(successive layer)に渡される。クライアントデータが通信プロトコルに渡された後、データはクライアントによって使用できる状態に置かれる。
【0011】
クライアントデバイスは、クライアントのローカルシステムクロックをサーバのローカルシステムクロックにロックするためにクライアントデバイスによってデータが受信されたときに付加されているタイムスタンプとともにサーバネットワークインターフェースの物理層(the physical layer of the server’s network interface)に付加された(attached)タイムスタンプを使用する。サーバのローカルシステムクロック(server’s local clock)はヘッドエンド(headend)のシステムクロックに周波数ロックされている(frequency locked)ので、クライアントシステムクロックもヘッドエンドのシステムクロックに周波数ロックされる。サーバからの頻繁なクロックサンプルにより、クライアントのシステムクロックはサーバのシステムクロックに非常によく追随する。
【0012】
次に、広帯域ネットワークからサーバにデータが到着したときにデータに付加されたタイムスタンプを使用して、クライアントのバッファから各データパケットを抽出し、クライアントのオーディオ/ビデオサブシステムに渡す正確な時期を決定することができる。このようにして、サーバへのパケット到着タイミング(packet arrival timing)がクライアントデバイスのA/Vサブシステムへの入力と正確に一致する。
【0013】
図面を参照しながら本発明について説明する。
【0014】
図2は、本発明によるタイムスタンプを使用するデジタルホームネットワークを示す。広帯域入力信号(broadband input signal)が、ヘッドエンド(図に示されていない)により供給され、これが広帯域受信機/マルチメディアサーバ202に届く。サーバ202は、入力Sys 1、Sys 2、・・・Sys nで示されるように、衛星、ケーブル、またはDSLなどの複数の広帯域ソース(broadband sourrce)のいずれかから入力を受信するように構成することができる。この入力信号は、トランスポートパケットの形式であり、ローカルシステムクロックをヘッドエンドのシステムクロックに周波数ロックするために受信機202が使用するシステムクロック回復(SCR : System Clock Recovery)情報を含む。このSCRは、バッファレベル(buffer level)を管理し、一体型受信機デコーダ(IRD : Integrated Receiver Decoder)でビデオタイミングおよびカラーバースト信号を得る(derive)ために使用される。システム200が正常に動作するためには、SCR情報およびパケットタイミング関係がネットワークに入ってから最終表現時点までシステム200全体を通して保持されなければならない。
【0015】
サーバ202が広帯域ネットワークから受信したデータはトランスポートパケット化されている。これらのトランスポートパケットのいくつかは、ヘッドエンドシステムクロックによりクロックの供給を受けるヘッドエンドのカウンタからサンプルを搬送する。サーバ202では、これらのカウンタサンプルとそのサンプルを運ぶトランスポートパケットの到着時刻を使用して、そのローカルシステムクロックをヘッドエンドのシステムクロックに周波数ロックすることができる。
【0016】
本発明により、クライアントデバイスへのパケットの正確な到着時刻を再現することができるようにするため、サーバ202がパケットを受信したときに、広帯域ネットワークから到着するそれぞれのパケットにタイムスタンプT1が刻印される。タイムスタンプT1は、サーバ202のローカルシステムクロックからクロック信号を供給されるローカルカウンタのサンプルである。タイムスタンプT1およびパケットは、DHNを介して、まとめて放送される前にバッファ205にまとめて格納される。
【0017】
後になってから、トランスポートパケットのグループをヘッダ情報とともに組み立てて、ネットワークDHN上で送信するためのデータフレームを形成する。データフレームがネットワーク上に置かれ始める瞬間、ローカルシステムクロック上で動作しているサーバ202のローカルカウンタのサンプリングを行い、カウンタサンプルのタイムスタンプT2を生成する。タイムスタンプT2は、発信データフレームの先頭に付加され、カウンタ値のサンプリングからカウンタ値がネットワークに入るまで時間は固定され一定である。この時間が固定され一定であることが重要であり、このような理由から、カウンタサンプリングおよびタイムスタンプの配置は、ネットワークインターフェースの物理層ハードウェアで実行される。ネットワーク上のサーバ202からクライアントデバイス204への伝播遅延は固定され一定であるため、T2のサンプリングからタイムスタンプT2を含むパケットがクライアントデバイス204に到着するまでの総伝播遅延も固定され一定である。さらに、シンボルタイム(symbol time)が変化するネットワークにおいて、本発明は伝播時間が一定である限り同期をとることができる。
【0018】
データフレームがクライアントデバイス204に到着した瞬間、クライアントシステムクロックで動作しているクライアントデバイス204のローカルカウンタのサンプリングを行い、タイムスタンプT3を生成する。このカウンタ値と到着データフレーム内のタイムスタンプT2とを比較し、クライアントカウンタとサーバカウンタとの差に変化がないことを確認する。この差が時間の経過とともに変化する場合、クライアントデバイスはローカルのVCXOで電圧を修正し、そのローカルシステムクロックを移動して、サーバ202のシステムクロックで周波数ロックするようにする。そこで、タイムスタンプT2およびT3を使用して、サーバ202とクライアントデバイス204のシステムクロックをまとめて周波数ロックする。タイムスタンプT2およびT3は、同期のためクライアントデバイス204で使用した後破棄することができる。この時点で、トランスポートパケットとその関連するタイムスタンプT1をクライアントデバイス204内のバッファ203に格納することができる。
【0019】
次のステップは、データをクライアントデバイス204のバッファから、サーバ202の入力にパケットが届いたレートと正確に一致するレートで除去(remove)することである。クライアントデバイス204が受信バッファ内にデータを十分に蓄積し、ネットワークのジッタを十分に吸収している場合、クライアントデバイス204は受信バッファからデータを抽出し始めて、クライアントデバイス204内のデコーダからそのデータを利用できるようにする。クライアントクロックに基づくローカルカウンタは、メモリから抽出する最初のトランスポートパケットとともに格納されているカウント値で初期化される。カウンタにクライアントのシステムクロックからのクロック信号が供給されるが、このクロックはサーバクロックにロックされており、格納されているタイムスタンプ値がカウンタ値と一致したときに後続のパケットをメモリから抽出することができる。このようにして、クライアントデバイス204の受信バッファからの除去レート(rate of removal)がサーバ202でデータを受信したレートと一致する。データパケットのフォーマットとデータフレーム内へのタイムスタンプT1,T2、およびT3の配置は図3に示されており、タイムスタンプT1は、パケット化されたデータが受信されたときに生成され、タイムスタンプT2は、フレームがネットワークDHNに置かれたときにデータフレーム内に入れられ、タイムスタンプT3は、データフレームがネットワークDHNから受信されたときに生成される。
【0020】
データパケットのフォーマットと、Ethernet(登録商標)環境内でデータフレームに入れられるタイムスタンプについて、以下に詳述する。本実施形態によるEthernet(登録商標)パケットでは、UDP/IPプロトコルを使用しているが、TCP、または「raw」Ethernet(登録商標)などの他の適当なプロトコルを使用して、本発明のタイムスタンプ生成機能(time stamping feature)を実施することもできることは理解されるであろう。本発明によれば、IPヘッダはタイムスタンプを入れる必要があるデータフレームを識別するIPオプションを利用している。タイムスタンプは、UDPヘッダの後のデータフレーム内に配置される。出パケット(outgoing packet)および入パケット(incoming packet)のための拡張UDPヘッダ(extended UDP header)には独自の場所(unique location)がある。
【0021】
クロック同期タイムスタンプ(clock synchronization time stamp)T2およびT3は、UDPヘッダの後に置かれる。タイムスタンプT2は、32ビットのタイムスタンプであり、IPパケットでオプション25が設定されているときに適用される。タイムスタンプは、物理的ネットワーク層のデータフレーム内に置かれる。本実施形態ではオプション25を使用してフレーム内にタイムスタンプが存在することを示すが、特定のIPアドレスおよびポート番号を指定するなどタイムスタンプを識別する他の適当な方法を利用することもできることは理解されるでろう。
【0022】
タイムスタンプT3はまた32ビットの入タイムスタンプ(32−bit incoming time stamp)であり、オプション25を有するIPパケットが検出されると適用される。このタイムスタンプは、物理的ネットワーク層のデータフレーム内にも置かれる。以下の表1は、UDPデータフレーム内のタイムスタンプT2およびT3の配置を示している。
【0023】
【表1】
【0024】
本発明では、物理層でタイムスタンプを使用し、2つの独立のノード、この場合はサーバ202とクライアントデバイス204を同期させるためのアルゴリズムを作成できる。
【0025】
データフロー制御タイムスタンプT1は、広帯域ネットワークからデータを受信するときにデータストリームの中に入れられる。タイムスタンプT1は、サーバ202内のローカルカウンタを使用して生成され、ヘッドエンドのシステムクロックに周波数ロックされているクロックにより増分される。パケットがサーバ202に到着するのに合わせてタイムスタンプT1を各トランスポートパケットに入れることにより、クライアントデバイス204はサーバ202で受信したビットレートと同じビットレートを再現することができる。データフロー制御タイムスタンプT1をUDPペイロードに入れる。表2は、本発明の実施例で使用されているデータフォーマットを示している。このデータは、表1に示されているUDPデータフレームのデータ部分に置かれる。
【0026】
【表2】
【0027】
データフレームにタイムスタンプが刻印された後、UDPチェックサム(UDP checksum)のチェックが行われる。チェックサムが0でなければ、前のチェックサムを新規生成されたチェックサムに置き換える。UDPチェックサムが解釈(resolve)された後、新しいCRCを計算し、MAC層の旧CRCを置き換える。パケットインテロゲーション(packet interrogation)の任意の時点で、そのデータフレームが有効なタイムスタンプフレームでないと判断された場合、そのフレームはデータの変更なしで受け渡される。
【0028】
タイムスタンプ値は、外部のシステムクロックから生成される。外部クロックにより32ビットカウンタが駆動される。データフレームがネットワーク上に置かれるとカウンタのスナップショットがとられる。入パケット(incoming packet)では、クライアントデバイス内のカウンタのスナップショットがとられる。これが有効なタイムスタンプパケット(valid time stamped packet)であれば、カウンタのスナップショットがデータフレームのペイロード部分に置かれる。32ビットカウンタは外部システムクロックに同期する自走ロールオーバーカウンタ(free running rollover counter)である。
【0029】
以下では、特定のデータフレームがタイムスタンプを必要とするか否か、もし必要であるならば、そのタイムスタンプデータがどこに置かれるかを判別する検索シーケンス(search sequence)について説明する。最初のテストでは、MACフレームの妥当性(validate)確認を行う。MACフレームの妥当性を確認するには、CRCを計算し、比較する必要がある。CRCテストが失敗した場合、フレームは修正を行うことなく通過し、有効なCRCが無効なCRCとともに受信されたデータフレームに追加されない。CRCテストが合格した場合、MACフレーム内のインターネットプロトコル(IP)を見つけるための第2のテストが実施される。802.3仕様セクション3.2.6「Length/Type」からのMACフレームへの20オクテットはLength/Typeフィールドである。ITEF RFC 1700 EtherTypes表から、インターネットIP(Ipv4)は0x800(16進数)である。値が0x800でなければ、パケットは通過する。Length/Typeが0x800の場合、IPヘッダのサイズと、UDPパケットが含まれるか否かを判別するテストを別に実施する。MACフレームの内容は、IEEE 802.3のセクション3.1.1で規定されている。
【0030】
MACフレームにIPパケットが含まれる場合、次のテストでサイズおよびオプション設定を決定する。まず、サイズを決定するために、ヘッダ長であるIPパケットの第2ニブル(second nibble)を調べる。ヘッダ長は、IPヘッダを構成する32ビットワードの個数である。オプションがない場合、IPヘッダは通常20バイトであり、ヘッダ長は5である。IPヘッダオプションはIPヘッダの先頭から20(10進数)オフセットを持つ。
【0031】
次に、パケットが有効なタイムスタンプパケットか否かを判別するステップについて説明する。これらのステップが失敗した場合、変更なしでパケットが通過する。まず、ヘッダ長フィールドを調べて、5よりも大きいか否かを判別する。もし大きければ、IPヘッダの先頭から20バイトのところに置かれている第1のIPオプションが0x99040000に対してチェックされる。オプションのフォーマットを以下の表3に示す。
【0032】
【表3】
【0033】
表4は、IPオプション25が含まれるIPヘッダをまとめたものである。
【0034】
【表4】
【0035】
IPオプションに上述の指定タイムスタンプを生成オプションが含まれる場合、このシステムでは、タイムスタンプをデータフレームに入れる。タイムスタンプは、IPヘッダの後に来るUDPペイロード部分、特にペイロード部分の先頭に入る。UDPヘッダは8バイト長である。UDPペイロードの第1の32ビットワードはタイムスタンプT2、出タイムスタンプに予約されており、UDPペイロードの第2の32ビットワードはT3、入タイムスタンプに予約されている。表1は、UDPでデータフレームの一般的なフォーマットを示しているが、表2は、本発明の実施例のために選択した特定のフォーマットを示している。
【0036】
本発明の有意な態様は、タイムスタンプとCRCが生成され、物理層のデータフレーム内に置かれるという点である。そのため、タイムスタンプとCRCは、データフレームが実際にネットワーク上に置かれるときまたはネットワークから受信したときにデータフレーム内に入れられる。これにより、タイムスタンプはデータがネットワークに入った時間およびデータをネットワークから受信した時間を正確に反映することができる。
【0037】
次に、上述のタイムスタンプ生成機能を実施するシステムの要素をDBS受信機に関して詳細に説明する。ただし、DSLやケーブルなどの、他の種類の広帯域ネットワークで受信したマルチメディアデータに対しても同様のタイムスタンプ生成機能を実行できることは理解されるであろう。
【0038】
図4に示されているように、サーバ202は、バスで接続された3つの機能ブロックから成り立っている。PCI DBSチューナ402を通じてサーバ202が衛星信号を受信する。ホストコントローラ406は、PCIバスインターフェース405を介してPCI DBSチューナ402からの衛星信号からトランスポートパケット読み取る。次に、ホストコントローラ406がデータを処理して、処理されたデータをUDPなどのよく知られているプロトコルを介してタイムスタンプボード404へ送出する。また、PCI DBSチューナ402およびタイムスタンプボード404は、それらの間に共通のクロックを持つ。このクロックは、PCI DBSチューナ402で生成され、タイムスタンプボード404の時間基準として使用される。
【0039】
動作時に、ホストコントローラ406はPCI DBSチューナ402のFIFOメモリからトランスポートパケットを読み取る。その後、パケットはネットワークプロトコルソフトウェアに従って処理され、ネットワークフレームがタイムスタンプボート404のEthenet MACに書き込まれる。MACはEthernet(登録商標)ネットワークが使用可能になるのを待ち、その後、タイムスタンプコントローラを通じてEthernet(登録商標) PHYにデータを送信する。ビデオネットワークパケットがタイムスタンプコントローラによって検出されると、タイムスタンプがそのパケットに追加される。タイムスタンプT2は、回復されたクロック発生源によりクロック信号が供給されるタイムスタンプコントローラ内のカウンタのサンプルである。サーバ202において、タイムスタンプコントローラのクロック発生源はPCI DBSチューナ402内のVCXOである。
【0040】
図5は、PCI DBSチューナ402のブロック図を示している。PCI DBSチューナ402は、3つの主要な機能を実行する。第1に、PCI DBSチューナ402では、正しい衛星トランスポンダの選択、同調、復調が実行される。これは、衛星チューナ502と復調器504によって実行される。これらのデバイスは、衛星信号をデジタルトランスポートストリームに変換するよく知られている機能を実行する。
【0041】
第2に、PCI DBSチューナ402がトランスポートストリームのパケットのフィルタ処理を実行する。チューナコントローラ506は、ホストコントローラ406によって要求されたトランスポートパケットのみを除去するロジック回路を備える。その後、そのトランスポートパケットはFIFOバッファ512に格納される。その後、ホストコントローラ506は、PCIバスインターフェース405を介してFIFOバッファ512からパケットを読み出すことができる。PCIバスインターフェースを使いやすくするため、PCIブリッジチップ508が使用されている。
【0042】
第3に、PCI DBSチューナ402は、クロック回復機能を実行する。チューナコントローラ506は、フラッシュメモリおよびSRAM 514に格納されているソフトウェア命令を実行する。ソフトウェアの制御ループが生成され、電圧制御水晶発振器(「VCXO」)510の周波数を調整する。サービスプロバイダのヘッドエンドからのタイムスタンプが含まれるパケットが届く毎にVCXO 510クロックから動作するカウンタがサンプリングされる。チューナコントローラ506は、VCXO 510クロックの正規化された誤差(normalized error)とヘッドエンドのクロックとを比較する。このようにして、ローカルクロックをヘッドエンドのクロックと同じ周波数になるように調整することができる。
【0043】
さらに、VCXO 510から回復されたシステムクロックを使用してタイムスタンプT1を各トランスポートパケットに追加することができる。タイムスタンプT1は、パケットがチューナ402に届いたときのローカルカウンタのサンプルに基づく。
【0044】
ネットワーククライアント204の要素が図6に示されている。データはクライアントのタイムスタンプボート602に届き、タイムスタンプT3が到着の瞬間にデータフレームに追加される。パケットは、PCIバス605を介してタイムスタンプボート602に接続されているクライアントコントローラ608によって処理される。トランスポートパケットは、ネットワークフレームから抽出され、トランスポートフォーマッタボード604に書き込まれる。トランスポートフォーマッタ604の出力は、デコーダ606によって使用されるシリアルトランスポートストリームである。デコーダ606の出力は、テレビまたはその他の表示デバイスに接続される。図8は、デコーダ606の要素を示している。
【0045】
クライアントコントローラ608は、クロック回復アルゴリズム(clock recovery algorithm)を実行する役割を持つ。サーバ202からのデータフレームの出発時間T2とクライアント204への到着時間T3とを比較する。このようにして、クライアントコントローラ608は、デコーダVCXO 812がサーバVCXO 510よりも高速か低速かを判別することができる。クライアントコントローラ608は、低速なシリアル(RS−232)接続を通じてデコーダVCXO 812のレートを上げるか下げるかを決めるコマンドをデコーダコントロール810に送信する。
【0046】
クライアントデバイスのタイムスタンプボートは、クライアントデバイス内の回復されたクロック発生源がPCI DBSチューナ402のVCXO 510ではなくデコーダ606のクロックから導かれる点を除き、サーバデバイスのタイムスタンプボードに似ている。
【0047】
トランスポートフォーマッタ604の要素が図7に示されている。トランスポートフォーマッタ604は、PCIバス702を介してクライアントコントローラ608に接続されている。PCIバスインターフェースが、PCIバスを、トランスポートフォーマッタコントローラ704に接続されている標準のローカルバスに変換する。トランスポートフォーマッタコントローラ704は、TTLロジックレベルでシリアルトランスポートストリームを出力する。高速シリアルコンバータ706回路は、これらの信号を低電圧差動信号に変換し、この信号はデコーダ606に渡される。
【0048】
トランスポートフォーマッタコントローラ704には、2つの動作モードがある。1つは、PCI DBSチューナ402のチューナコントローラ506によって追加されるオプションのタイムスタンプに従ってデコーダ606にトランスポートパケットが転送されるフロー制御モードである。この方法では、トランスポートフォーマッタ604からのトランスポートパケットの相対的出発時間がチューナコントローラ506へのトランスポートパケットの到着時間と一致する。これにより、デコーダ606の入力のパケットタイミングがPCI DBSチューナ402のチューナ502および復調器504に直接接続されるように見える。
【0049】
第2の動作モードでは、データをトランスポートフォーマッタコントローラ704から即座にデコーダ606に流すことができる。このモードでは、デコーダ606でデータを内部的にバッファする必要がある。そのため、デコーダ606は第1のモードよりもメモリをより多く必要とする。
【0050】
データが、トランスポートフォーマッタ604からデコーダ606の高速シリアルインターフェース802に到着する。トランスポートプロセッサ804は入トランスポートパケットをソートし、正しいバッファ(ビデオ、オーディオ、プログラムガイド、その他のデータなど)に入れる。ビデオおよびオーディオデータはビデオ/オーディオデコーダ806で復元される。その後、復元されたデジタルデータは、NTSCエンコーダ/オーディオDAC 808を介してアナログNTSC信号に変換される。
【0051】
次に、このタイムスタンプ生成方法を実施する際に使用するタイムスタンプ生成ボートについて詳述する。ただし、上述のように、サーバ202と関連するタイムスタンプ生成ボートを参照しながら説明するが、クライアント204と関連するタイムスタンプ生成ボートは同様のものである。タイムスタンプ生成ボート404は、10Mb/sと100Mb/sの両方のデータ転送レートをサポートできるPCI Ethernet(登録商標) NICである。これは、UDPチェックサムをリセットし、32ビットタイムスタンプをデータフレームに入れるだけでなく、指定されたデータフレームについてCRCを再計算することができる。外部インターフェースを利用することにより、ボード404をPC PCIまたは組み込みPCIアーキテクチャに統合することができる。タイムスタンプ値を生成するための外部クロックインターフェースが用意されている。
【0052】
図9は、タイムスタンプ生成ボート404のブロック図である。タイムスタンプ生成ボードは、Ethernet(登録商標)ネットワーク902に結合された入力ジャック904、たとえばRJ45を備える。入力ジャック904は、10/100 Base−TX Phyトランス906に結合されている。
【0053】
トランス906は物理層デバイス(physical layer device)908に結合されており、このデバイスは10BASE−Tおよび100BASE−Xの両方のEthernet(登録商標)プロトコルをサポートする統合PMD副層(integrated PMD sublayer)を備えるフル機能の物理層デバイスである。物理層デバイス908は、バスバッファ912に結合され、これにより、物理層デバイス908とタイムスタンプコントローラ916との間の電圧レベルの変換が行われる。バスバッファ912は、低電圧CMOS 8進数バスバッファである。これは低電力かつ高速3.3Vアプリケーションに理想的なものであり、入力と出力の両方に関して5V信号環境とインターフェースすることができる。バスバッファ912は、タイムスタンプコントローラ916に結合されており、このコントローラがUDPチェックサムのリセット、タイムスタンプの書き込み、受信方向と送信方向の両方の有効なデータフレームに対する新しいCRCの再計算など、タイムスタンプ生成機能の大半を制御し実行する。
【0054】
タイムスタンプコントローラ916は、タイムスタンプコントローラ916を操作するプログラムを格納しロードする構成デバイス918に結合されている。タイムスタンプコントローラ916はさらに、10Mb/sと100Mb/sの両方のデータ転送レートに対応するLANコントローラであEthernet(登録商標) MACユニット914に結合されている。Ethernet(登録商標) MAC 914は、周辺コンポーネント相互接続(PCI)ローカルバスまたはCardBusとの直接インターフェースを備える。
【0055】
タイムスタンプコントローラ916は、PHYおよびMACとのMIIインターフェースを備える。図10に示されているように、コントローラ916は受信機ユニット1002および送信機ユニット1004から成り立っている。2つのユニットは別々に実施されるが、同じ外部システムクロックとリセット信号を共有する。
【0056】
図11に示されているように、受信機ユニット1002は受信機コントローラ1102、タイムスタンプジェネレータ1114、シフトレジスタ1112、CRC検証モジュール1110、新規CRC計算モジュール1106、3:1 MUX 1108、および4:1 MUX 1104を備える。受信機コントローラ1102は、データストリームの状態を検出して、適切な出力データ(受信データ、リセットUDPチェックサム、タイムスタンプ、新規CRC)に関して3:1 MUXおよび4:1 MUXを有効にする。
【0057】
新規CRC計算モジュール1106は、修正されたデータストリーム(タイムスタンプおよびリセットUDPチェックサムを持つEthernet(登録商標)パケット)のCRCチェックサムを計算し、MACに届く前にこの新しいCRCを修正されたデータストリーム内に入れる。受信機ユニット1002と送信機ユニット1004とで異なるのは、受信機ユニット1002がCRC検証モジュール1110を備えているという点である。このデータは媒体上で破損していた可能性があるため、受信したパケットのCRCを検証する必要がある。CRCが正しくない場合、これは、データが実際に破損していたことを示す。新しい正しいCRCをデータに追加する代わり、不正なCRCを含めてデータをMACに渡すことができる。
【0058】
コントローラ1102は、すべてのモジュールおよびコンポーネントの動作を同期させ制御する。受信クロックと外部システムクロックの2種類のクロックを使用する。タイムスタンプは、外部クロックによって生成され、すべてのパケットの開始時に受信クロック領域にラッチされる。データをPHYから受信し、適切なデータ(受信データ、リセットUDPチェックサム、タイムスタンプ、新しいCRC)をIEEE 802.3に従ってMACに送信する。
【0059】
データを受信すると、タイムスタンプT3が適切な領域に書き込まれ、新しいCRCが計算され、MAC層内の旧いCRC値が置き換えられる。また、本発明の有意な態様は、データフレームをネットワークから受信すると、タイムスタンプとCRCが生成され、物理層のデータフレーム内に置かれるという点である。したがって、ネットワークからデータフレームを受信した実際の時刻を反映するタイムスタンプおよびCRCが、MAC層への移動とともに、すばやくかつ効率的に、データフレームに入れられる。パケットインテロゲーション(packet interrogation)の任意の時点で、受信中にそのデータフレームが有効なタイムスタンプフレームでないと決定された場合、あるいはエラーがあると決定された場合、そのデータフレームはデータの変更なしで受け渡される。
【0060】
図12に示されているように、送信機ユニット1202は送信機コントローラ1202、タイムスタンプジェネレータ1210、シフトレジスタ1208、新規CRC計算モジュール1206、3:1 MUX 1212および4:1 MUX 1204を備える。送信機コントローラ1202は、適切なプロセス毎にすべてのモジュールおよびコンポーネントの動作を制御する。送信クロックと外部システムクロックの2種類のクロックを使用する。タイムスタンプは、外部クロックによって生成され、すべてのパケットの開始時に受信クロック領域にラッチされる。ここでもまた、タイムスタンプが生成され、物理層のデータフレーム内に置かれる。
【0061】
本発明は好ましい設計があるものとして説明してきたが、本発明はこの開示の精神と範囲の中でさらに修正することができる。たとえば、タイムスタンプ生成機能は、HPNA、PLC、およびある種の無線ネットワーク、たとえばIEEE 802.1 1bなど、他の非同期ネットワークで実施することもできる。したがって、本出願は、一般原理を使用する本発明のバリエーション、用途、または改造を包含することを意図している。さらに、本出願は、本発明が関係する技術分野の知られているあるいは慣例の方法の範囲内に入るような、または添付した特許請求の範囲に入る、本開示からの逸脱を包含することを意図する。
【図面の簡単な説明】
【図1】
複数のクライアントデバイスに結合されたメディアサーバを含む非同期マルチメディアネットワークを示す図である。
【図2】
本発明によりネットワークのさまざまな地点でデータに書き込まれるタイムスタンプを含む非同期マルチメディアネットワークの要素を示すブロック図である。
【図3】
本発明により非同期マルチメディアネットワーク内で使用されるタイムスタンプを含むデータフレームの形式を示す図である。
【図4】
衛星信号を受信するように改造された広帯域受信機の要素を示すブロック図である。
【図5】
図4に示されているPCI DBSチューナの要素を示すブロック図である。
【図6】
図2に示されているクライアントデバイスの要素を示すブロック図である。
【図7】
図6に示されているトランスポートフォーマッタボードの要素を示すブロック図である。
【図8】
図6に示されているクライアントビデオデコーダの要素を示すブロック図である。
【図9】
本発明により非同期マルチメディアネットワーク内で使用されるタイムスタンプ生成ボードを示すブロック図である。
【図10】
図9に示されているタイムスタンプ生成ボード内のタイムスタンプコントローラを示すブロック図である。
【図11】
図10に示されているタイムスタンプコントローラ内の受信機ユニットを示すブロック図である。
【図12】
図10に示されているタイムスタンプコントローラ内の送信ユニットを示すブロック図である。
Claims (18)
- 非同期ネットワークを介して、パケット化されたマルチメディアデータを受信し、パケット化されたマルチメディアデータを送信するサーバ装置であって、
信号源から、同期情報を含むパケット化されたマルチメディアデータを受信する入力と、
クロックと、
前記入力および前記クロックに結合され、前記クロックを、前記同期情報に応答して前記信号源に関連するクロックと同期させるコントローラであって、前記パケット化されたマルチメディアデータが含まれるデータフレームを生成するコントローラと、
前記非同期ネットワークに結合され、前記データフレームをクライアントデバイスに送信する出力と、
前記コントローラ,前記クロックおよび前記出力に結合され、同期タイムスタンプを前記それぞれのデータフレームに置くタイムスタンプデバイスであって、前記同期タイムスタンプはそれぞれの前記データフレームが前記非同期ネットワークに置かれる時刻を示し、それによってクライアントデバイスが、前記同期タイムスタンプに応答して前記クライアントデバイスと関連するクロックを、前記サーバ装置と関連する前記クロックに同期させるタイムスタンプデバイスと
を備えることを特徴とするサーバ装置。 - 前記コントローラは前記パケット化されたマルチメディアデータの受信に応答してデータフロータイムスタンプを生成し、それぞれのデータフロータイムスタンプは前記入力でそれぞれのマルチメディアデータパケットが受信された時刻を示し、前記データフレームは前記パケット化されたマルチメディアおよび関連データフロータイムスタンプを含み、前記クライアントデバイスは、前記データフロータイムスタンプに応答して前記入力で前記パケット化されたマルチメディアデータが受信されるレートに対応するように前記クライアントデバイスにおける前記データフローレートを制御することを特徴とする請求項1に記載のサーバ装置。
- 前記データフレームは、データフレームヘッダ,同期タイムスタンプを受け付けるためタイムスタンプデータ部分、および、パケット化されたマルチメディアデータおよびその対応するデータフロータイムスタンプを受け付けるためのデータ部分を含むことを特徴とする請求項2に記載のサーバ装置。
- 前記タイムスタンプデータ部分は、同期タイムスタンプを受け付けるための第1のタイムスタンプデータ部分と、前記クライアントデバイスによって追加された同期タイムスタンプを受け付けるための第2のタイムスタンプデータ部分を含むことを特徴とする請求項3に記載のサーバ装置。
- 前記非同期ネットワークはEthernet(登録商標)ネットワークであることを特徴とする請求項2に記載のサーバ装置。
- 前記非同期ネットワークはHPNAネットワークであることを特徴とする請求項2に記載のサーバ装置。
- 前記非同期ネットワークはPLCネットワークであることを特徴とする請求項2に記載のサーバ装置。
- 前記非同期ネットワークは無線ネットワークであることを特徴とする請求項2に記載のサーバ装置。
- 非同期ネットワークを介して、パケット化されたマルチメディアデータを送信する方法であって、
信号源から、同期情報を含む前記パケット化されたマルチメディアデータを受信するステップと、
前記同期情報に応答してサーバクロックを、前記信号源に関連するクロックと同期させるステップと、
前記パケット化されたマルチメディアデータが含まれるデータフレームを生成するステップと、
前記データフレームを前記非同期ネットワークに置き、前記データフレームをクライアントデバイスに送信するステップとを含み、同期タイムスタンプが生成されて各データフレーム内に置かれ、それぞれの同期タイムスタンプは前記それぞれのデータフレームが前記非同期ネットワークに置かれた時刻を示し、前記クライアントデバイスは、前記同期タイムスタンプに応答して前記クライアントデバイスに関連するクロックを、前記サーバクロックと同期させることを特徴とする方法。 - さらに加えて、前記パケット化されたマルチメディアデータを受信するとデータフロータイムスタンプを生成し、各データフロータイムスタンプは、対応するマルチメディアデータパケットが受信された時刻を示すステップを含み、データフレームを生成する前記ステップは、前記パケット化されたマルチメディアデータを含むデータフレームおよびそこに含まれる前記データフロータイムスタンプを生成するステップを含み、前記クライアントデバイスが前記データフロータイムスタンプに応答して前記パケット化されたマルチメディアデータが受信されるレートに対応するように、前記クライアントデバイスの前記データフローレートを制御することを特徴とする請求項9に記載の方法。
- 非同期ネットワークを介して、パケット化されたマルチメディアデータを受信して処理する装置であって、前記パケット化されたマルチメディアデータが非同期ネットワーク上にそれぞれのデータフレームが置かれた時刻を示す同期タイムスタンプを有するデータフレームを含むとき、前記装置は、
前記非同期ネットワークに結合され、サーバデバイスによって送信された前記データフレームを受信する入力と、
前記入力に結合され、前記入力で前記データフレームが受信された時刻を示す第2の同期タイムスタンプを生成するタイムスタンプデバイスと、
クロックと、
前記クロックおよび前記タイムスタンプデバイスに結合され、前記同期タイムスタンプおよび前記第2の同期タイムスタンプに応答して前記クロックを、前記サーバデバイスに関連するクロックと同期させるコントローラと
を備えることを特徴とする装置。 - 前記データフレームはさらに前記パケット化されたマルチメディアデータに関連するデータフロータイムスタンプを含み、前記データフロータイムスタンプは前記サーバによって各マルチメディアデータパケットが受信された時刻を示し、
さらに加えて、前記パケット化されたマルチメディアデータを格納するバッファ、およびデコーダを備え、
前記コントローラは、前記データフロータイムスタンプに応答して前記サーバで前記パケット化されたマルチメディアデータが受信されるレートに対応するように、前記パケット化されたマルチメディアデータが前記デコーダに転送されるレートを制御することを特徴とする請求項11に記載の装置。 - 前記非同期ネットワークはEthernet(登録商標)ネットワークであることを特徴とする請求項12に記載の装置。
- 前記非同期ネットワークはHPNAネットワークであることを特徴とする請求項12に記載の装置。
- 前記非同期ネットワークはPLCネットワークであることを特徴とする請求項12に記載の装置。
- 前記非同期ネットワークは無線ネットワークであることを特徴とする請求項12に記載の装置。
- 非同期ネットワークを介して受信したデータフレームの受信に応答してクライアントデバイスを制御する方法であって、それぞれのデータフレームはパケット化されたマルチメディアデータを含み、同期タイムスタンプは前記非同期ネットワークに前記データフレームが置かれた時刻を示し、
サーバデバイスによって送信された前記データフレームを受信するステップと、
前記データフレームを受信したとき第2のタイムスタンプを生成し、それぞれの第2のタイムスタンプが前記非同期ネットワークを介してそれぞれのデータフレームが受信された時刻を示すステップと、
前記同期タイムスタンプと前記第2の同期タイムスタンプに応答して前記クライアントデバイスのクロックを同期させるステップと
を含むことを特徴とする方法。 - 前記データフレームはパケット化されたマルチメディアデータおよびデータフロータイムスタンプを含み、それぞれのデータフロータイムスタンプは前記サーバデバイスによって対応するマルチメディアデータパケットが受信された時刻を示し、さらに、
前記データフロータイムスタンプに応答して前記サーバデバイスで前記パケット化されたマルチメディアデータが受信されたレートに対応するように、前記パケット化されたマルチメディアデータをバッファからデコーダに転送するレートを制御するステップを
含むことを特徴とする請求項17に記載の方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US21976600P | 2000-07-20 | 2000-07-20 | |
PCT/US2001/020845 WO2002009331A2 (en) | 2000-07-20 | 2001-06-29 | Multi-media jitter removal in an asynchronous digital home network |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2004505497A true JP2004505497A (ja) | 2004-02-19 |
JP2004505497A5 JP2004505497A5 (ja) | 2008-08-14 |
JP4546026B2 JP4546026B2 (ja) | 2010-09-15 |
Family
ID=22820688
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002514932A Expired - Fee Related JP4546026B2 (ja) | 2000-07-20 | 2001-06-29 | 非同期デジタルホームネットワークにおけるマルチメディアジッタ除去 |
Country Status (10)
Country | Link |
---|---|
US (1) | US7483451B2 (ja) |
EP (1) | EP1302008B1 (ja) |
JP (1) | JP4546026B2 (ja) |
KR (1) | KR100777037B1 (ja) |
CN (1) | CN100492943C (ja) |
AU (1) | AU2001271682A1 (ja) |
BR (1) | BR0112335A (ja) |
DE (1) | DE60136543D1 (ja) |
MX (1) | MXPA03000535A (ja) |
WO (1) | WO2002009331A2 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004505500A (ja) * | 2000-07-26 | 2004-02-19 | トムソン ライセンシング ソシエテ アノニム | 非同期デジタルホームネットワークにおけるマルチメディアジッタの除去 |
JP2018113599A (ja) * | 2017-01-12 | 2018-07-19 | 日本電気株式会社 | 通信処理システム、通信監視装置、通信監視方法及び通信監視プログラム |
Families Citing this family (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2002009331A2 (en) | 2000-07-20 | 2002-01-31 | Thomson Licensing S.A. | Multi-media jitter removal in an asynchronous digital home network |
US7778281B2 (en) * | 2001-04-27 | 2010-08-17 | Panasonic Corporation | Wireless communication apparatus |
GB2385684A (en) * | 2002-02-22 | 2003-08-27 | Sony Uk Ltd | Frequency synchronisation of clocks |
AU2003230567A1 (en) * | 2002-02-25 | 2003-09-09 | General Electric Company | Method and apparatus for optimized centralized critical control architecture for switchgear and power equipment |
GB2392353B (en) * | 2002-08-21 | 2005-11-02 | Zarlink Semiconductor Ltd | Method and apparatus for distributing timing data across a packet network |
AU2003276972A1 (en) * | 2002-09-25 | 2004-04-19 | Enikia Llc | Method and system for timing controlled signal transmission in a point to multipoint power line communications system |
JP4807642B2 (ja) * | 2002-12-06 | 2011-11-02 | トムソン ライセンシング | リモート・チューニング/クロック同期化の方法およびシステム |
US7113486B2 (en) * | 2003-05-01 | 2006-09-26 | Tut Systems, Inc. | Method and apparatus for measuring quality of service parameters of networks delivering real time MPEG video |
KR100588709B1 (ko) | 2003-05-30 | 2006-06-12 | 엘지전자 주식회사 | 홈 네트워크 시스템 |
US7639716B2 (en) * | 2003-07-04 | 2009-12-29 | University College Dublin, National University Of Ireland, Dublin | System and method for determining clock skew in a packet-based telephony session |
CN1934810B (zh) * | 2004-03-22 | 2011-08-31 | 汤姆森许可贸易公司 | 分组数据传输网络中的时间从动设备及时间从动方法 |
US8028097B2 (en) * | 2004-10-04 | 2011-09-27 | Sony Corporation | System and method for synchronizing audio-visual devices on a power line communications (PLC) network |
DE102004050423A1 (de) * | 2004-10-15 | 2006-04-20 | Bosch Rexroth Ag | Kommunikationssystem und Verfahren zur Synchronisation desselben |
US7421048B2 (en) * | 2005-01-20 | 2008-09-02 | Vixs Systems, Inc. | System and method for multimedia delivery in a wireless environment |
US20060215694A1 (en) * | 2005-03-22 | 2006-09-28 | Mediatek Incorporation | Contention-free burst method for media access control over networks |
JP4464300B2 (ja) * | 2005-03-25 | 2010-05-19 | 富士通株式会社 | 通信端末、メッセージセンタ、時刻管理プログラム、および時刻遠隔設定プログラム |
US8179789B2 (en) * | 2005-07-01 | 2012-05-15 | Winnov, Lp | System and method for timestamps for media stream data |
KR100789902B1 (ko) * | 2005-12-09 | 2008-01-02 | 한국전자통신연구원 | 다중 프레임을 갖는 브이오아이피 패킷 처리 장치 및 그방법 |
KR100792983B1 (ko) * | 2005-10-11 | 2008-01-08 | 엘지전자 주식회사 | 디지털 방송 처리방법 |
US7869420B2 (en) * | 2005-11-16 | 2011-01-11 | Cisco Technology, Inc. | Method and system for in-band signaling of multiple media streams |
US7898956B2 (en) * | 2006-09-12 | 2011-03-01 | Alcatel Lucent | Credit-based rate control for high-speed interfaces |
US7948964B1 (en) * | 2006-12-14 | 2011-05-24 | Rf Micro Devices, Inc. | Synchronizing a radio frequency transmit message with an asynchronous radio frequency receive message |
CN101807967B (zh) * | 2009-02-13 | 2015-07-08 | 瑞昱半导体股份有限公司 | 用于物理层的远程控制方法及其相关物理层装置 |
KR101702562B1 (ko) | 2010-06-18 | 2017-02-03 | 삼성전자 주식회사 | 멀티미디어 스트림 파일의 저장 파일 포맷, 저장 방법 및 이를 이용한 클라이언트 장치 |
CN102546653A (zh) * | 2012-02-02 | 2012-07-04 | 北京圣世信通科技发展有限公司 | 一种水资源数据通讯中间件 |
JP2014075736A (ja) * | 2012-10-05 | 2014-04-24 | Sony Corp | サーバ装置および情報処理方法 |
CN106331770A (zh) * | 2016-09-06 | 2017-01-11 | 青岛海信电器股份有限公司 | 一种时间同步方法及客户端 |
CN110248213A (zh) * | 2018-03-08 | 2019-09-17 | 上海分众软件技术有限公司 | 多机实时同步播放系统 |
US11705986B2 (en) * | 2020-12-31 | 2023-07-18 | Synopsys, Inc. | Hardware based cyclic redundancy check (CRC) re-calculator for timestamped frames over a data bus |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09135272A (ja) * | 1995-09-04 | 1997-05-20 | Hitachi Ltd | パケット多重伝送装置 |
Family Cites Families (31)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5150363A (en) * | 1989-08-11 | 1992-09-22 | Digital Audio Disc Corporation | Serial input/output multiplexing apparatus |
US5027297A (en) * | 1989-09-29 | 1991-06-25 | Abb Power T & D Company Inc. | System for time stamping events using a remote master clock |
US5260978A (en) * | 1992-10-30 | 1993-11-09 | Bell Communications Research, Inc. | Synchronous residual time stamp for timing recovery in a broadband network |
FR2704376B1 (fr) * | 1993-04-22 | 1995-06-30 | Rainard Jean Luc | Procédé de récupération d'horloge et de synchronisation pour la réception d'informations transmises par un réseau ATM et dispositif de mise en Óoeuvre du procédé. |
US5486864A (en) * | 1993-05-13 | 1996-01-23 | Rca Thomson Licensing Corporation | Differential time code method and apparatus as for a compressed video signal |
US5602992A (en) * | 1993-11-29 | 1997-02-11 | Intel Corporation | System for synchronizing data stream transferred from server to client by initializing clock when first packet is received and comparing packet time information with clock |
US5652627A (en) * | 1994-09-27 | 1997-07-29 | Lucent Technologies Inc. | System and method for reducing jitter in a packet-based transmission network |
US5533021A (en) * | 1995-02-03 | 1996-07-02 | International Business Machines Corporation | Apparatus and method for segmentation and time synchronization of the transmission of multimedia data |
US6069902A (en) * | 1995-06-14 | 2000-05-30 | Matsushita Electric Industrial Co., Ltd. | Broadcast receiver, transmission control unit and recording/reproducing apparatus |
US5907685A (en) * | 1995-08-04 | 1999-05-25 | Microsoft Corporation | System and method for synchronizing clocks in distributed computer nodes |
US5822317A (en) * | 1995-09-04 | 1998-10-13 | Hitachi, Ltd. | Packet multiplexing transmission apparatus |
US5790543A (en) * | 1995-09-25 | 1998-08-04 | Bell Atlantic Network Services, Inc. | Apparatus and method for correcting jitter in data packets |
US5828414A (en) * | 1996-02-23 | 1998-10-27 | Divicom, Inc. | Reduction of timing jitter in audio-video transport streams |
US5867488A (en) * | 1996-06-30 | 1999-02-02 | Motorola, Inc. | Digital multi-channel simulcast system with centralized timestamping device |
US6434116B1 (en) * | 1997-11-07 | 2002-08-13 | Telcordia Technologies, Inc. | Method and system for stabilized random early detection using connection sampling |
US6199169B1 (en) * | 1998-03-31 | 2001-03-06 | Compaq Computer Corporation | System and method for synchronizing time across a computer cluster |
US6335931B1 (en) * | 1998-05-29 | 2002-01-01 | Finisar Corporation | System for synchronizing network data transmission and collection |
US6353609B1 (en) * | 1998-06-19 | 2002-03-05 | Marconi Communications, Inc. | Digital packet network for the local access loop |
US6449291B1 (en) * | 1998-11-24 | 2002-09-10 | 3Com Corporation | Method and apparatus for time synchronization in a communication system |
KR100314655B1 (ko) * | 1998-12-11 | 2001-12-28 | 오길록 | 비대칭형멀티미디어위성통신시스템에서망동기장치및그방법 |
US6700876B1 (en) * | 1999-07-29 | 2004-03-02 | International Business Machines Corporation | Congestion monitoring and message flow control in a blocking network |
US6747996B2 (en) * | 1999-12-08 | 2004-06-08 | Broadcom Corporation | Synchronized transport across non-synchronous networks |
US6816510B1 (en) * | 2000-02-09 | 2004-11-09 | Koninklijke Philips Electronics N.V. | Method for clock synchronization between nodes in a packet network |
US6631410B1 (en) * | 2000-03-16 | 2003-10-07 | Sharp Laboratories Of America, Inc. | Multimedia wired/wireless content synchronization system and method |
CA2301436A1 (en) * | 2000-03-20 | 2001-09-20 | Peter Renaud | Method and system for multi-protocol clock recovery and generation |
ATE345613T1 (de) * | 2000-04-07 | 2006-12-15 | Broadcom Corp | Rahmenbasierte übertragung von nutzdaten mit veränderlicher datenrate |
US6985499B2 (en) * | 2000-04-20 | 2006-01-10 | Symmetricom, Inc. | Precise network time transfer |
WO2002009331A2 (en) | 2000-07-20 | 2002-01-31 | Thomson Licensing S.A. | Multi-media jitter removal in an asynchronous digital home network |
DE60134860D1 (de) * | 2000-07-26 | 2008-08-28 | Thomson Licensing | Eliminierung des jitters in einem asynchronen digitalen hausnetzwerk |
US7035246B2 (en) * | 2001-03-13 | 2006-04-25 | Pulse-Link, Inc. | Maintaining a global time reference among a group of networked devices |
US7366754B2 (en) * | 2001-06-29 | 2008-04-29 | Thomson Licensing | Multi-media jitter removal in an asynchronous digital home network |
-
2001
- 2001-06-29 WO PCT/US2001/020845 patent/WO2002009331A2/en active Application Filing
- 2001-06-29 MX MXPA03000535A patent/MXPA03000535A/es active IP Right Grant
- 2001-06-29 EP EP01950715A patent/EP1302008B1/en not_active Expired - Lifetime
- 2001-06-29 BR BR0112335-1A patent/BR0112335A/pt not_active Application Discontinuation
- 2001-06-29 DE DE60136543T patent/DE60136543D1/de not_active Expired - Lifetime
- 2001-06-29 KR KR1020027017831A patent/KR100777037B1/ko not_active IP Right Cessation
- 2001-06-29 JP JP2002514932A patent/JP4546026B2/ja not_active Expired - Fee Related
- 2001-06-29 AU AU2001271682A patent/AU2001271682A1/en not_active Abandoned
- 2001-06-29 US US10/333,172 patent/US7483451B2/en not_active Expired - Fee Related
- 2001-06-29 CN CNB018130755A patent/CN100492943C/zh not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09135272A (ja) * | 1995-09-04 | 1997-05-20 | Hitachi Ltd | パケット多重伝送装置 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004505500A (ja) * | 2000-07-26 | 2004-02-19 | トムソン ライセンシング ソシエテ アノニム | 非同期デジタルホームネットワークにおけるマルチメディアジッタの除去 |
JP2018113599A (ja) * | 2017-01-12 | 2018-07-19 | 日本電気株式会社 | 通信処理システム、通信監視装置、通信監視方法及び通信監視プログラム |
Also Published As
Publication number | Publication date |
---|---|
KR20030014404A (ko) | 2003-02-17 |
KR100777037B1 (ko) | 2007-11-16 |
EP1302008A2 (en) | 2003-04-16 |
JP4546026B2 (ja) | 2010-09-15 |
US7483451B2 (en) | 2009-01-27 |
AU2001271682A1 (en) | 2002-02-05 |
CN1443403A (zh) | 2003-09-17 |
CN100492943C (zh) | 2009-05-27 |
BR0112335A (pt) | 2003-07-29 |
EP1302008B1 (en) | 2008-11-12 |
WO2002009331A3 (en) | 2002-08-08 |
WO2002009331A2 (en) | 2002-01-31 |
MXPA03000535A (es) | 2003-05-14 |
US20040090994A1 (en) | 2004-05-13 |
DE60136543D1 (de) | 2008-12-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4575643B2 (ja) | 非同期デジタルホームネットワークにおけるマルチメディアジッタの除去 | |
JP4546026B2 (ja) | 非同期デジタルホームネットワークにおけるマルチメディアジッタ除去 | |
US7366754B2 (en) | Multi-media jitter removal in an asynchronous digital home network | |
KR100825171B1 (ko) | 비동기식 디지털 홈 네트워크에서의 멀티미디어 지터 제거 | |
US8804607B2 (en) | Method and apparatus for maintaining synchronization in a communication system | |
US7701978B2 (en) | Method and apparatus for maintaining synchronization in a communication system | |
KR100932265B1 (ko) | 패킷 전송 방법 및 장치 | |
US20070220171A1 (en) | Systems and methods for synchronization of asynchronous networks | |
KR100457508B1 (ko) | 타임 스탬프 옵셋 설정 장치 및 그 방법 | |
JP3827297B2 (ja) | 送信装置、受信装置、ネットワーク、送信方法、及び受信方法 | |
EP1467507B1 (en) | Method and apparatus for maintaining synchronization in a communication system | |
JPH09205426A (ja) | 伝送速度調整装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080630 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20080630 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20100629 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20100701 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130709 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |