JP2005506745A - ケーブルネットワークにおいてネットワークディスカバリを実現するメカニズム - Google Patents
ケーブルネットワークにおいてネットワークディスカバリを実現するメカニズム Download PDFInfo
- Publication number
- JP2005506745A JP2005506745A JP2003536922A JP2003536922A JP2005506745A JP 2005506745 A JP2005506745 A JP 2005506745A JP 2003536922 A JP2003536922 A JP 2003536922A JP 2003536922 A JP2003536922 A JP 2003536922A JP 2005506745 A JP2005506745 A JP 2005506745A
- Authority
- JP
- Japan
- Prior art keywords
- transport stream
- network
- message
- devices
- identifier
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/16—Analogue secrecy systems; Analogue subscription systems
- H04N7/173—Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal
- H04N7/17309—Transmission or handling of upstream communications
- H04N7/17318—Direct or substantially direct transmission and handling of requests
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/12—Discovery or management of network topologies
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/30—Definitions, standards or architectural aspects of layered protocol stacks
- H04L69/32—Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
- H04L69/322—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
- H04L69/329—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/21—Server components or server architectures
- H04N21/222—Secondary servers, e.g. proxy server, cable television Head-end
- H04N21/2221—Secondary servers, e.g. proxy server, cable television Head-end being a cable television head-end
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/236—Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
- H04N21/23608—Remultiplexing multiplex streams, e.g. involving modifying time stamps or remapping the packet identifiers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/236—Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
- H04N21/2362—Generation or processing of Service Information [SI]
-
- 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/6143—Network physical structure; Signal processing specially adapted to the downstream path of the transmission network involving transmission via a satellite
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/1066—Session management
- H04L65/1101—Session protocols
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Computer Networks & Wireless Communication (AREA)
- Physics & Mathematics (AREA)
- Astronomy & Astrophysics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Television Systems (AREA)
- Time-Division Multiplex Systems (AREA)
Abstract
デジタルブロードバンド送達システム(100)は、複数のデバイス(すなわち、サブ分散ネットワーク(160)、ノード(106)および加入者(108))からネットワークメッセージを受信し、ネットワークのトランスポートストリーム識別子(150および166)を割り当てるヘッドエンドコントローラ(102)を含む。複数のデバイス((160)、(106)および(108))は、ネットワークメッセージをコントローラ(102)に送ることによって第1のメッセージに応答するために更新され、このデバイス((160)、(106)および(108))は、それらの受信トランスポートストリームをモニタリングして、第2のネットワークメッセージをコントローラ(102)に送ることによって変化に応答する。このコントローラ(102)は、トランスポートストリームマップを生成するために、受信したネットワークメッセージを用いる。
【選択図】図1
【選択図】図1
Description
【技術分野】
【0001】
(発明の分野)
本発明は、デジタル加入者テレビジョンシステム等のブロードバンド通信システム、およびこのようなシステム内のデジタルヘッドエンドおよびハブの機器に関し、より具体的には、ブロードバンド通信システム内の発見デバイスに関する。
【背景技術】
【0002】
(発明の背景)
ブロードバンドシステムは、限定受信システム(conditional access system)の加入者にテレビジョン信号を送信することが多い。ケーブルおよび衛星テレビジョンシステム等のブロードバンドシステムは、通常、種々のソースからプログラミングおよび/またはデータを受信し、このプログラミングおよび他のデータを分散システムを通じて加入者に再配信するためのヘッドエンドを備える。このヘッドエンドは、種々のソースからプログラミング信号を受信し、種々のソースからのプログラミング信号を組み合わせ、かつ、組み合わされた信号を分散システムを通じて加入者機器に送信する。分散システムは、同軸ケーブル、光ファイバ、および衛星中継等の種々の媒体、ならびに、分散型ノードのネットワークを備え得る。この分散型ノードは、その後、加入者ロケーションか、または分散型ハブのネットワークにプログラミングを送信する。ケーブルテレビジョンシステムにおいて、加入者機器は、ケーブル対応(cable−ready)テレビジョン、ケーブル対応ビデオカセットレコーダ(VCR)、あるいは、テレビ、コンピュータ、または他の表示デバイスと接続されるDHCT(digital home communications terminal)を含み得る。
【0003】
ヘッドエンドは、アナログフォーマットに代わって、益々、例えば、MPEG(Moving Pictures Expert Group)等のデジタルフォーマットでプログラムを送受信する。プログラムをMPEGフォーマットで送信することは有利である。なぜなら、マルチデジタルプログラムは、組み合わされ、かつ、例えば、シングルのアナログチャネルまたはプログラムを送信するために必要とされる帯域幅と同じ大きさの6MHzの帯域幅で送信され得るからである。
【0004】
MPEGトランスポートストリームは、トランスポートストリーム内のプログラミングのタイプおよびロケーションを示すMPEGテーブル等のオーバーヘッド情報を含む。ローカルテレビジョンシステムにおいて、MPEGテーブルは、ローカル分散システム、および、その特定のチャネル系列に特有の情報を含む。この用途において言及されたMPEGは、MPEG−1およびMPEG−2規格と呼ばれる。MPEG−1規格(ISO/IEC 11172)およびMPEG−2規格(ISO/IEC 13818)は、国際標準化機構の文献ISO/IEC JTC1/SC29/WG11N(MPEG−1に関しては1996年6月、および、MPEG−2に関しては1996年7月)に詳細に記載されており、これは、参考のため、本明細書中に援用される。従って、ヘッドエンドシステム、およびモジュレータは、特に、送出されるビットストリームに、必要とされるMPEGテーブルデータを追加しなければならない。
【0005】
MPEGトランスポートストリームは、標準パケットで構成され、これらのパケットの各々は、188バイトの大きさである。パケットの各々は、ヘッダおよびペイロードを含む。通常、ヘッダは、4バイトの大きさであり、ペイロードは、184バイトの大きさであるが、ヘッダは、拡張され得る。この場合、ペイロードは、対応する大きさだけ縮小される。ヘッダは、パケット識別子(PID)を含み、これは、パケットを識別するために用いられる13ビットフィールドである。従って、トランスポートストリームにおけるパケットに8,192の可能なPID値が割り当てられ得る。PID=0およびPID=8,191等の特定のPID値が予約され、これらは、PAT(Program Association Tables)およびスタッフィングパケットをそれぞれ識別するために用いられ、これらは、より詳細に後述される。
【0006】
一般に、トランスポートストリームは、複数の基本ストリームを含み、各基本ストリームは、共通のPID値を有するパケットで構成される複数の基本ストリームを含む。トランスポートストリーム内で、各基本ストリームには、PID値が関連付けられ、これにより、2つの基本ストリームが同じPID値と関連付けられることはない。
【0007】
MPEGプログラムは、複数の基本ストリームで構成されている。一般に、MPEGプログラムは、デジタルビデオ情報が中に含まれるパケット、および少なくとも1つのオーディオ基本ストリームで構成されるビデオ基本ストリームを含む。
【0008】
一般に、トランスポートストリームは、複数のプログラムを含み、これらの各々は、プログラム番号によって一意的に識別される。トランスポートストリームは、PATパケットを含み、これは、0のPID値を有する。トランスポートストリームは、プログラムアイデンティティをそのプログラム番号にマッピングする。プログラムは、例えば、PBS、ESPN等の、従来、テレビジョンチャネルと呼ばれてきたものに対応する。PATは、トランスポートストリームに含まれるプログラムのPMT(program map table)の基本ストリームのPID値を識別する。プログラムのPMTは、プログラムの基本ストリームのPID値のすべてを列挙する。従って、プログラム、および、そのコンテンツを識別するプロセスは、2つのステージで行われる。最初のステージは、プログラムのPMTを搬送する基本ストリームのPIDを識別するために、PID=0の基本ストリームにおけるPATを用い、その後、次のステージにおいて、適切なPMTから、プログラムを構成する基本ビットストリームのPIDが取得される。デマルチプレクサまたはデコーダは、目的のプログラムに対応する識別されたパケットを受信するように設定され得る。換言すると、基本ストリームは、同期されなければならないため、プログラムのオーディオおよびビデオ信号が互いに対応し合う。
【0009】
デジタルネットワークの加入者は、通常、複数のトランスポートストリームを受信し、これらのトランスポートストリームの各々は、トランスポートストリーム識別子(TSID)によって識別される。一般に、加入者は、特定のプログラムを選択し、加入者のデコーダは、例えば、選択されたプログラムを有するプログラムストリームのTSIDを決定するために、電子番組ガイド等のテーブルを調べる。このようなシステムを動作させるために、加入者のデコーダにて受信される各トランスポートストリームが一意的に識別されなければならず、すなわち、加入者のデコーダによって受信された各トランスポートストリームは固有のTSIDを必要とする。デジタル加入者ネットワークのオペレータが複数のコンテンツプロバイダからトランスポートストリーム等のコンテンツを受信することが多く、かつ、異なったコンテンツプロバイダからのトランスポートストリームが、デジタル加入者ネットワーク内で一意的であるように、デジタル加入者ネットワークのオペレータは、TSIDを再マッピングする必要が度々あるということが、従来のシステムにおいて難解である。従来のネットワークにおいて、ネットワークのオペレータは、ネットワークのトランスポートストリームにTSIDを手動で割り当てる。しかしながら、TSIDの手動での割り当ては、オペレータの時間の使用が非能率的であり、従って、TSIDを自動的に割り当てる手段が必要とされる。
【0010】
さらに、従来のデジタル加入者ネットワークにおいて、ネットワークのオペレータには、ダイナミックネットワーク情報が提供されない。このオペレータは、トランスポートストリームを搬送する任意の通信リンクにおいて利用可能な現在の帯域幅を決定するための手段を有しない。従って、オペレータは、トランスポートストリームに別のプログラムを追加するかどうかを決定しようとする場合、トランスポートストリームの現在利用可能な帯域幅を推測し得るだけである。オペレータが、利用可能な帯域幅を過大評価した場合、新しいプログラムは、トランスポートストリームの帯域幅が通信リンクの帯域幅を越える原因となり得、従って、「マクロブロッキング(macro blocking)」として知られる現象が生じる。マクロブロッキングが生じた場合、パケットは、トランスポートストリームからドロップし、その結果、トランスポートストリーム内のプログラムの質が低下し、そして、複数の加入者が不満をもつ原因となる。他方、マクロブロッキングが生じないように、オペレータが、利用可能な大域幅を過小評価した場合、ネットワークは、フル効率で動作せず、オペレータは、帯域幅を無駄にする。デジタル加入者ネットワークの帯域幅は、非常に価値のある商品であるため、従って、デジタル加入者ネットワークは、オペレータがネットワークリソースを知能的に(intelligently)割り当てることを可能にするダイナミックネットワーク情報を必要とする。
【0011】
従来のシステムにおいて、システムコントローラは、デジタル加入者ネットワークの複数の管理機能を取り扱う。例えば、加入者は、ネットワークにおけるパーソナルセッション等のサービスをリクエストし得る。システムコントローラは、特に、加入者のセッションを確立し、セッションのためのコンテンツを加入者に送達する方法を決定し、セッションの加入者に課金する。従って、システムコントローラにかかる処理の負担を推測し直す必要がある。
【発明の開示】
【課題を解決するための手段】
【0012】
(発明の好ましい実施形態の詳細な説明)
本発明の好ましい実施形態が、いくつかの図面全体において同じ符号は同じコンポーネントを表し、本発明の例示的実施形態が示される添付の図面を参照して、より詳細に後述される。しかしながら、この方法は、複数の異なった形態で実施され得、本明細書中で述べられる実施形態に限定されると解釈されるべきでない。すべての実施例は、非限定的であることが意図され、本発明の範囲内にさらなる実施例が含まれる。
【0013】
(テレビジョンシステムの概観)
本発明の好ましい実施形態は、例として、双方向の、インタラクティブデジタル加入者テレビジョンシステムの文脈で最も良好に理解される。この記載において、双方向インタラクティブデジタル加入者テレビジョンシステムは、(デジタルブロードバンド送達システム)DBDS(Digital Broadband Delivery System)またはデジタル加入者ネットワークとも呼ばれる。例示的DBDSの概観は、「Conditional Access System」と称される、米国特許第6,157,719号に記載される(この特許は、参考のため、本明細書中にその全体が援用される)。DBDSの機能は、コンテンツプロバイダ、エンタイトルメントエージェントにインターフェースを提供し、コンテンツへのアクセスおよびコンテンツの使用を制御し、かつ、加入者にコンテンツを配信することである。DBDSは、ビデオ、オーディオ、およびデータエンターテイメントプログラミングを送達するための、MPEGトランスポートストリームを用いる。これらは、特に、ローカルテレビジョンチャネル、プレミアム映画チャネル、VOD(video−on−demand)、電話サービス、およびインターネットアクセス等のプログラミングおよびデータ情報を含み得る。
【0014】
図1を参照して、DBDS(digital broadband delivery system)100は、ヘッドエンド102、複数のハブ104、複数のノード106、複数の加入者ロケーション108、および複数の(デジタル家庭通信端末)DHCT(digital home communication terminals)110を含む。ヘッドエンド1102は、DBDS100と、ブロードキャスタ、インターネットサービスプロバイダ等のコンテンツプロバイダ114との間のインターフェースを提供する。ヘッドエンド102とコンテンツプロバイダ114との間の伝送媒体は、双方向であり得る。これは、DBDS100を介するインターネットアクセス等の双方向インタラクティブサービスを考慮している。
【0015】
メイントランクおよびブランチを有する従来の分散システムとは異なり、DBDS100は、伝送媒体150を介して、複数のハブ104と直接通信するヘッドエンド102を備え、これらのハブは、伝送媒体152を介して複数のノード106と通信する。しかしながら、これに代わる実施形態において、ヘッドエンド102は、いくつかまたはすべてのノード106と、ならびに、いくつかまたはすべての加入者ロケーション108と直接通信し得る。ヘッドエンド102が、ノード106および加入者ロケーション108と直接通信するか、ノード106または加入者ロケーション108と直接通信するかは、実現方法によって異なる。
【0016】
ハブ104は、伝送媒体150を介してプログラミングおよび他の情報をヘッドエンド102から受信し、かつ、伝送媒体152を介して情報をノード106に送信し、これは、その後、伝送媒体154を通じて情報を加入者ロケーション108に送信する。ハブ104は、さらに、伝送媒体154を介して情報を加入者ロケーション108に直接送信する。さらに、ハブ104が加入者ロケーション108と直接通信するか、または、ノード106と直接通信するかは、実現方法によって異なる。
【0017】
好ましい実施形態において、伝送媒体150および152は、高品質および高速の信号配信を可能にする光ファイバであり、伝送媒体154は、ブロードバンド同軸ケーブルまたは光ファイバである。これに代わる実施形態において、伝送媒体150、152、および154は、光ファイバ、同軸ケーブル、および、HFC(hybrid fiber−coax)、衛星、ダイレクトブロードキャスト、または他の伝送媒体等の種々の媒体の1つ以上を含み得る。通常、伝送媒体150、152、および154は、帯域内および帯域外情報が送信される双方向通信媒体である。伝送媒体150、152、および154を通じて、加入者ロケーション108は、ヘッドエンド102またはハブ104と直接または間接的に双方向通信する。
【0018】
DBDS100は、通信媒体150によってヘッドエンド102と接続された複数のサブ分散ネットワーク160を備える。各サブ分散ネットワーク160は、ハブ104、およびハブ104と接続された複数のノード106を備える。同様に、通信リンク166を通じてヘッドエンド102に接続されたハブ104は、プログラミングおよびデータ情報をサブ分散ネットワーク160に導入するためのミニヘッドエンドとして機能する。ミニヘッドエンドとして機能する複数のハブ104を有することによって、異なったデータ情報およびプログラミングを種々のサブ分散ネットワーク160に導入することが容易になる。例えば、ノード106(B)に接続された加入者ロケーション108(B)は、加入者ロケーション108(B)および108(C)は、物理的に互いに近接した状態であり得るとしても、ヘッドエンド102と直接接続された加入者ロケーション108(C)に利用可能なデータ情報およびプログラミングとは異なったデータ情報およびプログラミングを受信し得る。加入者ロケーション108(B)のデータ情報およびプログラミングは、ハブ104およびノード106(B)を通じてルーティングされ、ハブ104は、ヘッドエンド102を通じて利用可能ではないDBDS100にデータ情報およびプログラミングを導入し得る。
【0019】
加入者ロケーション108において、デコーダまたはDHCT110は、DBDS100と加入者との間に双方向インターフェースを提供する。DHCT110は、データ情報およびプログラミングを、ヘッドエンド102またはハブ104から直接または間接的に受信し、テレビジョンセット(TV)112またはコンピュータモニタ等の表示デバイス上に表示するための信号を含む信号をデコードする。当業者は、これに代わる実施形態において、信号をデコードするための機器が、DHCT、コンピュータ、TV、モニタ、またはMPEGデコーダを含むが、これらに限定されない種々の機器に配置され得ることを理解する。
【0020】
DBDS100の加入者は、DBDS100のオペレータからのサービスをリクエストし得る。加入者に提供されるサービスは、電話サービス、インターネットアクセス、オーディオプログラミング、テレビジョンプログラミング、および、ビデオオンデマンド等のペイパービューサービスを含むが、これらに限定されない。
【0021】
図2を参照して、ミニヘッドエンドであるハブ104は、ヘッドエンド102のような機器および機能のいくつかまたはすべてを含む。ヘッドエンド102は、ネットワークコントローラ234を、ハブ104は、サブネットワークコントローラ236をそれぞれ備える。コントローラ234および236は、通信リンク166を通じて通信する。ある実施形態において、通信リンク166は、10baseT伝送を行うためのツイストケーブルペアである。これに代わる通信リンクは、光ファイバケーブル、同軸ケーブル、および、これらの組み合わせを含むが、これらに限定されない。
【0022】
好ましくは、後述される機能を提供するコンピュータハードウェアおよびソフトウェアを含むネットワークコントローラ234は、テレビジョンシステムオペレータが、DBDS100の機能および性能を制御およびモニタリングすることを可能にする。例えば、Scientific−AtlantaのDigital Network Control System(DNCS)等(しかし、限定されない)のネットワークコントローラ234は、ビデオ、オーディオ、およびデータを含むDBDS100における通信をモニタリング、制御、および調整する。ネットワークコントローラ234は、ヘッドエンド102に配置され得るか、または遠隔地に配置され得る。
【0023】
コントローラ234および236は、DBDS100のプログラミングのチャネル系列、各加入者への課金、加入者に配信されるコンテンツの限定受信、セッションの開始、マネージング、および終了、ならびに、ネットワークトランスポートストリームの制御、マネージング、および識別を含む種々の機能をモニタリングおよび/または制御するために、通信リンク166を介して種々のコンポーネントとインターフェースする。コントローラ234および236と通信する種々のコンポーネントは、衛星信号受信器214、アプリケーションサーバ216、エンコーダ218、スイッチ220、ルータ222、BIG(broadband integrated gateway)224、QPSK(Quadrature Phase−Shift Keying)モデムアレイ228、およびMQAM(multi−quadrature amplitude modulator)230を備える。
【0024】
ネットワークコントローラ234は、限定受信情報等の情報をBIG224に伝達する。ここで、情報は、トランスポートストリーム252に多重化される。特に、ネットワークコントローラ234またはサブネットワークコントローラは、1つ以上の出力トランスポートストリーム254に挿入するための特定のプログラム、または、トランスポートストリーム250および252の部分を選択するおよび/または、限定受信情報を提供する等、動作パラメータを設定するためにMQAM230に入力を提供する。制御情報および他のデータは、通信リンク150を通じての帯域内通信を介して、ヘッドエンド102からハブ104に伝達され得る。QPSKモデムアレイ228は、ヘッドエンド102と接続されたDHCT110と、ハブ104と接続されたDHCT110との間の帯域外双方向通信を可能にする。DHCT110からの帯域外通信は、ペイパービュー購買指示等の情報の制御情報、および、加入者ロケーション108(図1に示される)からビデオオンデマントタイプのアプリケーションサーバ216への閲覧コマンドの停止を含む。
【0025】
これに代わる実施形態において、ネットワークコントローラ234は、デバイスコントローラ(図示せず)とインターフェースする。デバイスコントローラは、好ましくは、ヘッドエンド102に配置されるが、他の場所に配置されてもよい。デバイスコントローラは、ネットワークコントローラ234を含むヘッドエンド102およびハブ104におけるデバイスおよびDHCT110からメッセージを受信するように適応され、アプリケーションサーバ216を含むが、これに限定されないデバイスを制御するように適応する。デバイスコントローラは、ヘッドエンド102およびハブ104におけるデバイスを制御することによって、特に、ペイパービュープログラムを受信すること、および、「パーソナルテレビジョン(Personal Television)」セッションを開始することを含むがこれらに限定されない加入者サービスのために、DHCT110からのメッセージに応答して、ネットワークコントローラ234上にかかる処理の負担を軽減する。
【0026】
好ましい実施形態において、ヘッドエンド102およびハブ104は、各々、少なくとも1つの衛星信号受信器214、少なくとも1つのアプリケーションサーバ216、少なくとも1つのMQAM230、QPSKモデムアレイ228、および、少なくとも1つのコンバイナ232を備える。ハブ104は、すでに列挙されたよりも多いか、または少ないか、あるいは、これらとは異なった機器を含み得、かつ、ハブ104に見出される機器のタイプおよび機器の量は、実現によって決まり、かつ、この機器は、ヘッドエンド102に見出される機器とは異なり得ることが理解されるべきである。
【0027】
ヘッドエンド102は、種々の方法で入力を提供し得る種々のコンテンツプロバイダ114からのプログラミング、データ情報、および他の情報等のコンテンツを受信する。好ましい実施形態において、ハブ104は、通信リンク150(B)を通じて、少なくとも1つのコンテンツプロバイダからコンテンツを受信し、さらに、ヘッドエンド102からコンテンツを受信するように適応する。ヘッドエンド102およびハブ104は、種々のソースからのコンテンツを組み合わせ、そのコンテンツを、直接または間接的に加入者108に配信する。コンテンツプロバイダ114は、テレビジョンプログラミング、ビデオカメラ206、およびインターネットサービスプロバイダ208等のプログラミングを提供し得るコンテンツプロバイダ202を含む。入力信号は、衛星204、ダイレクトフィード210、および当業者に公知の他の伝送経路を介して、ソースからヘッドエンド102およびハブ104から伝送され得る。コンテンツプロバイダ114またはプログラミング入力ソースによって提供される信号は、いくつかのプログラムを含む単一のプログラムまたはマルチプレックスを含み得る。ハブ104は、衛星204を介してコンテンツを受信すると示されるが、これは、非限定的な例であることが理解されるべきである。好ましい実施形態において、ハブ104は、インターネットサービスプロバイダを含むが、これに限定されない1つ以上のコンテンツプロバイダと、ダイレクトフィード、地上放送送信器、およびアンテナ(図示せず)を介するビデオカメラと、当業者に公知の他の通信リンクとから受信することができる。
【0028】
好ましい実施形態において、衛星204は、コンテンツをコンテンツプロバイダ202から衛星信号受信器214にリレーし、衛星信号受信器214の各々は、コンテンツプロバイダ202と関連付けられる。通常、コンテンツプロバイダ202から受信されたコンテンツは、トランスポートストリームの形態であり、これを、衛星信号受信器214がネットワークトランスポートストリーム250として出力する。ヘッドエンド102において、衛生信号受信器214(A)および214(B)からのネットワークトランスポートストリーム250は、BIG224に入力され、ハブ104において、衛星信号受信器214(C)からのネットワークトランスポートストリーム250(H)は、MQAM230(C)に入力される。この構成は、実現方法によって異なること、および、これに代わる実施形態において、衛星信号受信器214からのネットワークトランスポートストリーム250は、ヘッドエンド102またはハブ104において通常見出される他の機器に入力され得る。
【0029】
好ましい実施形態において、ヘッドエンド102およびハブ104は、VODを含むがこれに限定されないペイバービューサービス、データサービス、インターネットサービス、ネットワークシステム、または電話システムをさらに備える。コンテンツプロバイダ114は、DBDS100内に配置されるアプリケーションサーバ216にコンテンツをダウンロードし得る。ヘッドエンド102に配置されるアプリケーションサーバ216(A)は、ネットワークトランスポートストリーム250(B)を出力し、これはBIG224に入力され、ハブ104に配置されるアプリケーションサーバ216(B)は、ネットワークトランスポートストリーム250(G)を出力し、これはMQAM230(C)に入力される。さらに、トランスポートストリーム250(B)および250(G)を受信する機器は、実現方法によって異なり、図2に示される構成は、当業者に公知の複数の可能な構成の1つにすぎないことが理解されるべきである。
【0030】
好ましい実施形態において、BIG224は、ヘッドエンド102またはハブ104に配置され得、これは、複数のネットワークトランスポートストリーム250を受信し、ネットワークトランスポートストリームを単一の出力ネットワークトランスポートストリーム252に多重化するように適応する。BIG224は、ネットワークコントローラ234からのネットワークメッセージおよびコマンドを、通信リンク166を通じて受信する。ネットワークメッセージおよびコマンドは、BIG224が入力トランスポートストリーム250を出力トランスポートストリーム252に多重化するために必要な情報を含む。
【0031】
スイッチ220(その例の1つが、非同期転送モード(ATM)スイッチである)は、ゲートウェイ226(A)に、および、ルータ222は、226(B)にインターフェースを提供し、ゲートウェイ226(A)および226(B)は、特に、インターネット、ならびに、出力ネットワークトランスポートストリーム250(E)および250(F)へのアクセスをそれぞれ提供する。ルータ222は、QPSKモデムアレイ228を介してDHCT110からメッセージを受信する。DHCT110からのメッセージは、セッションを生成および制御するために用いられることが多いセッション/コントロールメッセージを含む。通常、ルータ222は、セッション/コントロールメッセージをアプリケーションサーバ226(A)にルーティングするか、または、ルータ222は、ネットワークコントローラ234、またはサブネットワークコントローラ236等の他の適切なデバイスにメッセージを送信する。ヘッドエンド102およびハブ104は、ネットワークトランスポートストリームを受信し、このトランスポートストリームを、例えば、無線周波数変調信号等の変調信号に変換する、少なくとも1つの変調器をさらに備える。好ましい実施形態において、ミニヘッドエンドとして機能するハブ104は、DBDS100にプログラミングを導入し、これは、MQAM230によって変調および送信される。一般に、ヘッドエンド102は、複数のMQAM230を含み、ハブ104は、少なくとも1つのMQAMを含む。これに代わる実施形態において、ヘッドエンド102およびハブ104は、加入者108にコンテンツを送信するための、他の送信器を備える。
【0032】
各MQAM230は、複数のネットワークトランスポートストリーム(250および252)を受信し、かつ、複数の変調されたネットワークトランスポートストリーム254を出力するように適応する。MQAM230への、および、これからの入力および出力ネットワークトランスポートストリームの数は、実現方法によって異なる。好ましい実施形態において、MQAM230は、出力トランスポートストリーム254を変調および送信するQAM変調器を含むが、これに限定されない。
【0033】
MQAM230によって変調されたネットワークトランスポートストリーム254は、伝送媒体150および152に入力するために、コンバイナ232等の機器を用いることによって組み合わせられる。組み合わされた信号は、帯域内情報として加入者ロケーション108に送信される。DBDS100の好ましい実施形態において、各ネットワークトランスポートストリーム254は、セット周波数に変調される。ネットワークトランスポートストリーム254の1つの基本ストリームをDHCT110(図1に示される)が受信するために、DHCT110は、所望の情報を含む変調されたネットワークトランスポートストリームと関連した周波数に同調し、トランスポートストリームをデマルチプレックスし、かつ、適切な基本ストリームをデコードしなければならない。好ましい実施形態において、通信リンク166に接続されたデバイスは、IPアドレスまたはMACアドレス等の固有のアドレスを有する。これらは、メッセージの受信側および送信側(source)の両方を識別するために用いられる。ネットワークコントローラ234は、通信リンク166に接続されたデバイスのアドレステーブル等のテーブルを含むメモリ238を備える。ある実施形態において、アドレステーブルは、デバイスのタイプを識別するための各アドレスと関連したデバイス情報をさらに含む。例えば、衛星信号受信器214(A)のアドレスは、「受信器」等のデバイス情報と関連付けられ、サブネットワークコントローラ236のデバイス情報は、「コントローラ」である。この場合、ネットワークコントローラ234は、ネットワークコントローラにメッセージを送信するデバイスのネットワーク機能を決定するために、アドレステーブルを用い得る。ある実施形態において、メモリ238は、DHCT110のアドレステーブルをさらに含む。DHCT110の各々のアドレスは、静的または動的に割り当てられ得る。
【0034】
新しいデバイスが通信リンク166に接続される場合、あるいは、新しいDHCT110がサブ分散ネットワーク160に接続されるまたは、直接的もしくは間接的にヘッドエンド102に接続される場合はいつでもアドレステーブルが更新される。ある実施形態において、アドレステーブルの更新は、手動で実行される。当業者は、新規に接続されたデバイスのアドレスを含むためにアドレステーブルを手動で更新する代わりに、新規に接続されたデバイスがネットワークコントローラ234にテスト送信して応答を求める(ping)自己駆動型システム(self−actuating system)があることを認識している。ネットワークコントローラ234にテスト送信して応答を求めた後、アドレステーブルは、コントローラ234によって自動的に更新される。
【0035】
好ましい実施形態において、サブネットワークコントローラ234は、内部にアドレステーブルが格納されたメモリ238をさらに含む。サブネットワークコントローラ236のアドレステーブルは、通信リンク166(B)に接続された各デバイスの固有のアドレスを含み、サブネットワークコントローラ236のアドレステーブルは、通信リンク166(B)に別のデバイスが接続された場合はいつでも更新される。これに代わる実施形態において、サブネットワークコントローラ236のアドレステーブルは、ハブ104に接続されたDHCT110のアドレスをさらに含む。別の実施形態において、ネットワークコントローラ234のアドレステーブルは、DBDS100におけるデバイスのすべてのシステムワイドアドレステーブルであり、サブネットワークコントローラ236のアドレステーブルは、DBDS100内のデバイスのいくつか、またはすべてを含み得る。
【0036】
(ネットワークマップ)
DBDS100を適切にマネージメントし、かつ、分散処理を提供するために、ネットワークコントローラ234および/またはサブネットワークコントローラ236が、ネットワークトランスポートストリームのマップを有することが望ましい。コンテンツプロバイダ114は、トランスポートストリームをDBDS100に提供するが、コンテンツプロバイダ114からのトランスポートストリームは、ネットワークトランスポートストリームではない。この開示のために、ネットワークトランスポートストリームは、衛星信号受信器214、サーバ216、MQAM230、またはBIG224等であるが、これらに限定されないDBDS100内のデバイスから送信されたトランスポートストリームである。
【0037】
ネットワークコントローラ234のネットワークトランスポートストリームマップは、特に、ヘッドエンド102、およびこのヘッドエンド102に直接接続されたノード106等のネットワークコントローラ234によって直接制御されるネットワークのブランチ内のネットワークトランスポートストリームのマップ、DBDS100の任意の部分にわたるネットワークトランスポートストリームのマップ、あるいは、DBDS100全体にわたるネットワークトランスポートストリームのマップのいずれかであり得る。同様に、サブネットワークコントローラ236のネットワークトランスポートストリームマップは、ハブ104内のネットワークのブランチ等のDBDS100の任意の部分、あるいはDBDS100全体のためのものであり得る。さらに別の実施形態において、ネットワークトランスポートストリームマップは、ノード106およびDHCT110に向かって、ネットワークツリーの下方にわたって伸びる。
【0038】
図3を参照して、明瞭にするために、ネットワークトランスポートストリーム250(A)の簡単な説明が以下に提供される。MPEGトランスポートストリームを表すネットワークトランスポートストリーム250(A)は、複数のMPEGパケット300で構成される。MPEGパケット300の各々は、ヘッダ302およびペイロード304を有する。ヘッダ302は、パケットを識別するために用いられるパケット識別子(PID)を含む。0のPID値によって識別される、PAT(program association table)等の特定のパケットは、予約されたPID値を有する。PATは、プログラムの基本ストリームのPID値を識別するために用いられる、PMT(program map table)にプログラムを関連付けるために用いられる。例えば、図3に示される例示的PATは、プログラム番号16を256のPID値を有するPMTパケットに関連付ける。一般に、プログラムは、複数の基本ストリームで構成され、トランスポートストリーム250におけるこれらの基本ストリームの各々は、固有のPID値をリスト化する。図3に示される例示的PMTは、基本ストリームおよび、これらのそれぞれのPID値を有する。MPEGトランスポートストリームに関するさらなる詳細は、「System And Method for Multicasting Packets In A Subscriber Network」(2001年4月30日出願)と称される、米国特許出願シリアル番号第09/845,510号(アトーニードケット番号第A−6684/191910−1790)に見出され得る(この出願は、参考のため、本明細書中にその全体が援用される)。各MPEGトランスポートストリームは、PID0のPATの一部分であるトランスポートストリーム識別子(TSID)を有する。図3に示される例示的PATにおいて、トランスポートストリーム250(A)は、値「A」によって識別される。通常、トランスポートストリームと関連したTSIDは、0〜8191の間の数値である。これに代わる実施形態において、トランスポートストリームのTSIDは、所定のパケット300のヘッダ302またはペイロード304に含まれ得る。例えば、1のPID値は、CAT(conditional access table)のために予約され、これは、プログラムのアクセスおよび暗号化に関する情報を含み、これに代わる実施形態において、CATは、TSIDを含み得る。トランスポートストリームのTSIDは、(1)TSID値を含むパケットのPID値と、(2)パケット内のTSIDのロケーションとを知ることによって決定され得る。従って、TSIDがPAT(PID=0)にあるか、CAT(PID=1)にあるか、または、その他の所定のパケットにあるかは問題でない。
【0039】
図4を参照して、ネットワークトランスポートストリームマップ400は、ヘッドエンド102およびハブ104内のネットワークトランスポートストリーム250、252および254、ならびにトランスポートストリームデバイスをマッピングする。トランスポートストリームマップ400に示される各トランスポートストリームデバイスは、ネットワークトランスポートストリームソースまたはネットワークトランスポートストリームハンドラである。この開示のために、ネットワークトランスポートストリームソースは、ネットワークトランスポートストリームが発信されるDBDS100におけるデバイスである。他のネットワークストリームソースは、アプリケーションサーバ216、エンコーダ218、およびゲートウェイ226を含むが、これらに限定されない。
【0040】
好ましい実施形態において、各ネットワークトランスポートストリームソースは、所定のTSIDを有するネットワークトランスポートストリームとしてのコンテンツを受信し、かつ、このコンテンツを送信するように適応する。コンテンツは、入力TSIDを有するトランスポートストリームとして、ネットワークトランスポートストリームソースにて受信されることが多い。この場合、ネットワークトランスポートストリームソースは、所定のTSID(この所定のTSIDは、入力TSIDと異なってもよいし、異ならなくてもよい)に入力TSIDを再マッピングし、ネットワークトランスポートストリームとして受信されたコンテンツを送信するように適応する。ネットワークトランスポートストリームソースは、通常、ネットワークコントローラ234、またはサブネットワークコントローラ236等のコントローラと通信し、このコントローラは、ネットワークトランスポートストリームのTSIDを決定する。
【0041】
DBDS100は、BIG224およびMQAM230を含むが、これらに限定されないネットワークトランスポートストリームハンドラをさらに備え、これらは、少なくとも1つのネットワークトランスポートストリームを受信し、かつ、少なくとも1つのネットワークトランスポートストリームを送信するように適応する。好ましい実施形態において、各ネットワークトランスポートストリームハンドラは、出力ネットワークトランスポートストリームのTSID(入力ネットワークトランスポートストリームのTSID値と異なってもよいし、異ならなくてもよい)を所定の値にマッピングするために必要なロジックを含む。例えば、MQAM230(A)は、ネットワークトランスポートストリーム254(A)のTSID402を値「H」〜値「Z」にマッピングし得る。一般に、ネットワークトランスポートストリームハンドラは、ネットワークコントローラ234、またはサブネットワークコントローラ236等のコントローラと通信し、このコントローラは、ネットワークトランスポートストリームのTSIDを決定し、このネットワークトランスポートストリームハンドラは、コントローラからのメッセージに応答して、TSIDを再マッピングする。
【0042】
ネットワークトランスポートストリームマップ400において、ヘッドエンド102およびハブ104のデバイスは、以下のティアレベルに分類される。すなわち、第1のティアレベルは、ソースティアであり、第2のティアレベルは、中間ティアレベルであり、最後のティアレベルは、出力ティアレベルである。この開示のために、出力ティアデバイスは、ネットワークトランスポートストリームがDHCT110によって受信される前に、ネットワークトランスポートストリームを受信するための最後のネットワークトランスポートストリームハンドラである。従って、図2を参照して、コンバイナ232は、MQAM230からネットワークトランスポートストリームを受信するが、これらは、トランスポートストリームマップに含まれない。なぜなら、コンバイナ232は、トランスポートストリームハンドラではなく、すなわち、コンバイナ232は、TSID402をマッピングし得ないからである。トランスポートストリームマップ400は、出力ティアデバイスのすべてがMQAMであることを示すが、当業者は、トランスポートストリームを受信(およびマッピング)する最新のデバイスであり得る他のデバイスを認識し、かつ、すべてのこのような他のデバイスは、本発明の範囲に含まれることが意図されることに留意されたい。他の出力ティアトランスポートストリームハンドラは、QAM変調器および連続変調器を含むが、これらに限定されない。さらに、中間ティアデバイスは、BIG224、telecoインターフェースユニット(図示せず)、ならびに、sonet送信器およびsonet受信器を含むが、これらに限定されない。
【0043】
ソースティアデバイスと出力ティアデバイスとの間に中間ティアデバイスが挿入される。中間ティアデバイスは、DBDS100に含まれるネットワークトランスポートストリームハンドラ(出力ティアデバイスではない)を備える。例示的なトランスポートストリームマップ400において、BIG244は、ネットワークトランスポートストリーム250(A)〜250(C)を受信し、かつ、「G」の値を有するTSID402によって識別されたネットワークトランスポートストリーム252を出力ティアデバイスMQAM230(A)に送信する。サブ中間ティアレベルが存在し得ること、すなわち、いくつかの中間ティアデバイスが、連続的に相互接続され得ることが理解されるべきである。例えば、これに代わるネットワークにおいて、BIG224は、トランスポートストリーム252を(出力ティアデバイスではない)別のトランスポートストリームハンドラ(図示されず)に送信する。この場合、他のトランスポートストリームハンドラは、BIG224を有する中間ティアレベルと出力ティアレベルとの間のサブ中間ティアレベルとの間のサブ中間ティアレベルに分類される。好ましい実施形態において、ネットワークトランスポートストリーム250(A)〜250(H)、252、および254(A)〜254(L)の各々は、固有のTSID402を有する。トランスポートストリームマップ400の使用、およびこれが生成される態様は、後述される。
【0044】
本発明のロジックは、ハードウェア、ソフトウェア、ファームウェア、またはこれらの組み合わせで実現され得る。好ましい実施形態において、ロジックは、メモリに格納され、かつ、適切な命令実行システムによって実行されるソフトウェアまたはファームウェアで実現される。ハードウェアで実現された場合、これに代わる実施形態として、ロジックは、データ信号の論理機能を実現するロジックゲートを有する別個のロジック回路(単数または複数)、適切な組み合わせロジックゲートを有する特定用途向けIC(ASIC)、プログラマブルゲートアレイ(単数または複数)(PGA)、フィールドプログラマブルゲートアレイ(FPGA)等の技術(これらのすべては当業者に周知である)のいずれか、またはこれらの組み合わせで実現され得る。
【0045】
任意のプロセスの説明またはフローチャートのブロックは、モジュール、セグメント、あるいは、特定の論理関数またはプロセスのステップを実行する1つ以上の実行可能命令を含むコードの一部分として理解されるべきである。さらに、別の実施が、本発明の好ましい実施形態の範囲に含まれる。本発明では、本発明の分野において通常の技術を有する当業者によって理解されるように、関連する機能に応じて、実質的に同時か、または逆の順序を含む、図示されたか、または議論された順序に関わらず、関数が実行され得る。
【0046】
図5A、図5B、および図5Cを参照すると、ネットワークトランスポートストリームマップ400を作成する例示的なステップ500が示される。通常のDBDS100では、ネットワークコントローラ234が十分に利用され、従って、通常、DBDS100を動作させ、かつ維持するための処理を可能な限り十分に分散させることが望ましい。好ましい実施形態では、各コントローラ(ネットワークコントローラ234またはサブネットワークコントローラ236またはデバイスコントローラ(図示されない)のいずれか)は、ネットワークトランスポートストリームマップ400を作成するネットワークツリーのそれぞれの枝内のデバイスに対してステップ500を実行する。ネットワークコントローラ234は、ヘッドエンド102のネットワークツリーの枝をマッピングし、サブネットワークコントローラ236は、ハブ104のネットワークトランスポートストリームの枝をマッピングする。例えば、サブネットワークコントローラ236は、衛生信号受信機214(C)およびサーバ216(B)をソースティアデバイスとしてマッピングし、かつMQAM230(C)を出力ティアデバイスとしてマッピングする。別の実施形態では、ネットワークコントローラ234は、ネットワーク全体に対してステップ500を実行する。さらに別の実施形態では、サブネットワークコントローラ236は、DBDS100の複数の枝に対してステップ500を実行する。
【0047】
ステップ502において、ネットワークコントローラ234および/またはサブネットワークコントローラ236は、開始ネットワークトランスポートストリームマップ(INTSM)メッセージをDBDS100のデバイスに送信して、トランスポートストリームマップ400の作成を開始する。好ましい実施形態では、ネットワークコントローラ234は、サブネットワークコントローラ236を含む通信リンク166(A)に接続されるデバイスにINTSMメッセージを送信する。サブネットワークコントローラ236がINTSMメッセージを受信する時、サブネットワークコントローラ236は、通信リンク166(B)に接続されるハブ104内のデバイスにINTSMメッセージを送信する。別の実施形態では、ネットワークコントローラ234は、通信リンク166に接続される全てのデバイスにISNTMメッセージを送信する。さらに別の実施形態では、ヘッドエンド102に直接的または間接的に接続されるDHCT110は、帯域外通信によってINTSMメッセージを受信し、ネットワークトランスポートマップ400に含まれる。
【0048】
好ましい実施形態では、各ネットワークトランスポートストリームソースおよび各ネットワークトランスポートストリームハンドラは、INTSMメッセージを送信したコントローラに図6に示されるネットワークメッセージ600を送信することによって、INTSMメッセージに応答する。例えば、衛生信号受信機214(C)、サーバ216(B)、およびMQAM230(C)のそれぞれが、サブネットワークコントローラ236にネットワークメッセージ600を送信し、衛生信号受信機214(A)およびMQAM230(A)のようなヘッドエンド102のデバイスが、ネットワークコントローラ234にネットワークメッセージ600を送信する。
【0049】
図6を参照して、INSTMメッセージに応答して送信されるネットワークメッセージ600は、デバイスタイプフィールド602、出力TSIDフィールド604、入力TSIDフィールド606、およびネットワークステータスフィールド608を含む。デバイスタイプフィールド602は、ネットワークメッセージ600を送信しているデバイスのタイプを示す。可能なデバイスのタイプの表示は、トランスポートストリームソース、トランスポートストリームハンドラ、衛生信号受信機、サーバ、ビデオオンデマンドサーバ、ゲートウェイ、MQAM、変調器、DHCT等を含むが、これらに限定されない。デバイスタイプフィールド602はまた、デバイスを識別するためのデバイスに関連するデバイス識別子を含み得る。例えば、衛生信号受信機214(A)〜214(C)のデバイスタイプフィールド602は、それぞれ「reciever_1」「reciever_2」および「reciever_3」であり得る。尚、複数の出力トランスポートストリームを送信するデバイスは、それぞれの出力ネットワークトランスポートストリームに対してネットワークメッセージ600を返す。例えば、MQAM230(A)は、4つの出力ネットワークトランスポートストリーム254(A)〜254(D)を送信し、従って、MQAM230(A)は、4つのネットワークメッセージ600を送信する。好ましい実施形態では、各ネットワークメッセージ600は、異なるデバイスタイプフィールド602を有し、この異なるデバイスタイプフィールド602は、識別するために利用される。例えば、MQAM230(A)からの第1のネットワークメッセージ600は、デバイスタイプフィールド602として「MQAM_1.1」を有し得、MQAM230(A)からの第4のネットワークメッセージは、デバイスタイプフィールド602として「MQAM_1.4」を有し得る。複数のトランスポートストリームを送信するデバイスについては、デバイスタイプフィールド602は、「.1」「.4」等の付属の送信機識別子を有する「MQAM_1」のようなデバイスインジケータとみなされ得る。同様の形式で、MQAM230(B)は、「MQAM_2.1」〜「MQAM2.4」の範囲のデバイスタイプフィールド602を有する4つのネットワークメッセージ600を有したINSTMメッセージに応答し得る。
【0050】
出力TISDフィールド604は、出力ネットワークトランスポートストリームのTSID値を示す。DHCT110から受信したネットワークメッセージの出力TSIDフィールド604は、nullである。
【0051】
入力TSIDフィールド606は、デバイスによって受信された入力ネットワークトランスポートストリームの数、および各受信されたネットワークトランスポートストリームのTSID値を示す。従って、各ネットワークトランスポートストリームソースについては、入力の数は0であり、各ネットワークトランスポートストリームハンドラについては、入力の数は少なくとも1である。トランスポートストリームソースからのネットワークメッセージの入力TSIDフィールド606は、nullである。
【0052】
ネットワークステータスフィールド608は、利用可能な帯域、ビットエラー率(BER)、喪失したリンク、帯域幅の余分な割り当て、ならびに入力が良好か入力に問題があるか等のネットワーク情報を含むが、これらに限定されない。コントローラは、ネットワークステータス情報を利用して、ネットワークをモニタリングし、かつ動的に制御し得る。
【0053】
図5を再度参照して、ステップ504において、コントローラは、コントローラによって制御されるネットワークトランスポートストリームの枝のネットワークトランスポートストリームソースおよびネットワークトランスポートストリームハンドラから、ネットワークメッセージ600を受信する。コントローラは、各受信されたネットワークメッセージ600のデバイスタイプフィールド602を読み、ソースティア、中間ティア、および出力ティアデバイスに対応するグループへメッセージをソートする。好ましい実施形態では、コントローラは、メモリ238に格納されるテーブルを有し、このテーブルは、デバイスタイプフィールド602によって示される各デバイスのタイプを、トランスポートストリームマップ400のティアに関連付ける。例えば、このテーブルは、衛生信号受信機214およびサーバ216をネットワークトランスポートストリームソースとして、MQAMを最後のティアデバイスとして、およびBIGを中間ティアデバイスとして関連付ける。別の実施形態では、コントローラは、入力TSIDフィールド606をnullフィールドとするネットワークメッセージを検索することによって、どのネットワークメッセージ600がソースティアデバイスからのものであるかを判定する。
【0054】
次のステップ506では、コントローラは、各ネットワークトランスポートストリームソースからのネットワークメッセージ600の出力TSIDフィールド604を読み、ネットワークトランスポートストリームソースからの2つ以上のネットワークトランスポートストリーム250が、それぞれのTSID402として同一の値を有するかどうかを判定する。このことを開示する上で、サブ分散ネットワーク160またはDBDS100の2つ以上のネットワークトランスポートストリームが同一のTSID値を有する場合、同一のTSID値を有するネットワークトランスポートストリームは、衝突していると判断される。ソースティアデバイスからのTSID402値が衝突しない場合は、コントローラは、ステップ512に進み、衝突する場合は、コントローラは、ステップ508に進む。
【0055】
衝突するTSIDを有する2つ以上のネットワークトランスポートストリームソースが存在する場合、ステップ508において、コントローラは、衝突するネットワークトランスポートストリームを出力するネットワークトランスポートストリームソースの少なくとも1つにTSID再マッピングメッセージを送信する。TSID再マッピングメッセージを受信したデバイスは、TSID402値を再マッピングメッセージによって示される新しい値に再マッピングすることによって応答する。例えば、図4に示されるネットワークトランスポートストリーム250(A)および250(F)のTSID402値が同一であれば、ネットワークコントローラ234は、受信機214(A)またはゲートウェイ226(B)のいずれかに再マッピングメッセージを送信する。再マッピングメッセージは、TSID402値を新しい値に再マッピングすることをデバイスに命令し、新しい値は、ネットワークトランスポートストリーム250(B)〜250(F)のTSID402値と異なるように選択される。ネットワークコントローラ234が、ヘッドエンド102のみをマッピングする場合、新しいTSID値は、ネットワークトランスポートストリーム250(B)〜250(H)と関連するTSID402とは異なる。衝突するTSIDを再マッピングした後は、ネットワークトランスポートストリーム250と関連するTSID402の各値は、互いに異なる。
【0056】
好ましい実施形態では、ネットワークトランスポートストリームハンドラは、それぞれの入力トランスポートストリームをモニタリングし、トランスポートストリームの変更に応答する。以下により詳細が説明されるように、少なくとも1つのネットワークトランスポートストリームハンドラは、ネットワークトランスポートストリームソースが衝突するTSIDを再マッピングする場合に、ネットワークメッセージ600をコントローラに送信する。例えば、衛生信号受信機214(A)が、ネットワークトランスポートストリーム250(A)のTSID402値を「A」から「Z」まで再マッピングする場合、BIG224は、トランスポートストーム250(A)のTSID402値の変更に気づいて、ネットワークの現在のステータスに反映させる別のネットワークメッセージ600をネットワークコントローラ234に送信することによって応答する。BIG224からのネットワークメッセージ600の入力TSIDフィールド606は、それぞれのTSID402として値「Z」、「B」、および「C」を有する3つの入力ネットワークトランスポートストリーム250(A)〜250(C)を示す。従って、コントローラがネットワークトランスポートストリームソースに再マッピングメッセージを送信した後に、ステップ510において、コントローラは、ネットワークトランスポートストリームハンドラから少なくとも1つのネットワークメッセージ600を受信する。
【0057】
次に、ステップ512では、コントローラは、ネットワークトランスポートストリームソースのそれぞれのネットワークメッセージ600の出力トランスポートフィールド604にデバイスタイプフィールド602を関連付けることによって、ソースティアレベルのトランスポートストリームマップ400を生成/更新する。
【0058】
トランスポートストリームマップ400のソースティアを生成した後、コントローラはステップ514に進む。ステップ514では、ネットワークメッセージ600のいずれが、中間ティアデバイスから生じているのかについて判定する。さらに、コントローラは、メモリ238に格納されるテーブルを利用して、存在するのであれば、どのネットワークメッセージ600が、中間デバイスから生じているのかを判定する。中間ティアデバイスが存在する場合、コントローラは、ステップ516に進み、存在しなければ、コントローラは、ステップ524に進む。
【0059】
ステップ516では、コントローラは、中間ティアデバイスからの各ネットワークメッセージの出力TSIDフィールド604を読み、衝突するTSID402を調べる。さらに、中間ティアデバイスからの2つ以上のネットワークトランスポートストリームが、衝突するTSID402を有する場合、コントローラは、衝突するTSID402を有する衝突する中間ティアデバイスの少なくとも1つに、TSID再マッピングメッセージを送信する。さらに、中間ティアデバイスからのネットワークトランスポートストリーム252が、ソースティアデバイスからのネットワークトランスポートストリーム250のTSID402と衝突するTSID402値を有する場合、中間ティアデバイスは、再マッピングメッセージを送信される。例えば、ヘッドエンド102において、BIG224からのネットワークトランスポートストリーム252と関連するTSID402が、ゲートウェイ226(B)からのネットワークトランスポートストリーム250(F)と関連するTSID402値と同一である「F」という値を有する場合、ネットワークコントローラ234は、BIG224に再マッピングメッセージを送信して、その衝突するTSIDを再マッピングする。
【0060】
さらに、TSID402が再マッピングされるネットワークトランスポートストリームを受信するネットワークトランスポートストリームハンドラは、ネットワークメッセージ600をコントローラに送信することによって応答する。従って、ステップ520において、コントローラは、出力ティアレベルデバイスから少なくとも1つの新しいネットワークメッセージ600を受信する。新しいネットワークメッセージ600は、再マッピングされたTSID402の変更を示す。
【0061】
コントローラは、ネットワークメッセージ600を受信した後、ステップ522において、中間デバイスの各デバイスタイプフィールド602を出力ネットワークトランスポートストリーム252の入力TSID402および出力TSID402と関連付けることによって、トランスポートストリームマップ400を更新する。中間ティアレベルデバイスをその入力TSIDと関連付けることによって、デバイスは、ソースティアレベルデバイスに関連付けられる。なぜなら、1つのソースティアデバイスのみが、その特定のTSIDを有するトランスポートストリームを出力するからである。
【0062】
ステップ516を再度参照して、コントローラは、衝突するTSID402を有する中間デバイスが存在しないと判定した場合、ステップ522に進んで、中間ティアデバイスをそれぞれに関連する出力TSID402および入力TSID402に関連付ける。
【0063】
中間ティアデバイスをマッピングした後に、このようなマッピングが必要である場合、コントローラは、ステップ524に進む。ステップ524では、コントローラは、出力ティアデバイスから各ネットワークメッセージ600の出力TSIDフィールド604を読み、衝突するTSID値を調べる。コントローラは、ネットワークトランスポートストリームソースおよび中間ティアネットワークトランスポートストリームハンドラからのネットワークトランスポートストリームに既に割り当てられたTSID値の間の衝突するTSID値を、出力ティアネットワークトランスポートストリームハンドラのTSID402に対して調べる。衝突するTSIDが存在しなければ、コントローラは、ステップ528に進み、出力ティアデバイスの各デバイスタイプフィールド602を入力ネットワークトランスポートストリームの少なくとも1つのTSID402および出力ネットワークトランスポートストリームと関連するTSID402と関連付けることによって、ネットワークトランスポートストリームマップ400を更新する。MQAM230等の(これらに限定されない)いくらかの出力ティアデバイスは、1つより多い入力TSID402に関連付けられる。
【0064】
一方、TSIDが衝突する場合、ステップ526において、コントローラは、TSID再マッピングメッセージを出力ティアネットワークトランスポートストリームハンドラに少なくとも1つに送信することによって、ネットワークトランスポートストリーム254の衝突するTSIDの少なくとも1つを新しい衝突しない値に再マッピングする。再マッピングメッセージは、出力TSIDをコントローラによって割り当てられた値に再マッピングするように、デバイスに命令する。
【0065】
ある実施形態では、ネットワークトランスポートストリームマップ400は、DHCT110まで拡張し、DHCT110は、コントローラにネットワークメッセージ600を送信することによって、INTSMメッセージに応答するように適合される。DHCT110はまた、別のネットワークメッセージ600を送信することによって、それぞれの受信されたネットワークトランスポートストリーム254の変更に応答するように適合される。このように、この実施形態では、コントローラは、出力ティアデバイスに出力TSID値を再マッピングするように命令する時に、DHCT110から複数のネットワークメッセージ600を受信する。このネットワークメッセージ600は、DHCTを出力ティアデバイスに関連させるために、コントローラによって利用される。
【0066】
再マッピングメッセージを送信した後、コントローラは、ステップ528に進み、ネットワークメッセージマップ400を更新し、それにより、出力ティアレベルの各ネットワークトランスポートストリームハンドラを少なくとも1つの入力TSID値および出力TSID値に関連付ける。さらに、尚、MQAM230は、4つの出力トランスポートストリームデバイス、すなわち、4つのQAM変調器を有し、MQAM230は、各QAM変調器に対してネットワークメッセージ600を提供する。従って、MQAM230の各QAM変調器は、トランスポートストリームマップ400に現れる。各出力ティアレベルのデバイスは、入力TSIDによって、上流のデバイスに関連付けられる。
【0067】
ある実施形態では、コントローラは、DBDS100のネットワークトランスポートストリームソースおよびハンドラの全てに対して、ステップ502から528を実行する。この場合、ネットワークトランスポートストリームマップは、ステップ528で完了する。しかし、好ましい実施形態では、処理は、ネットワークコントローラ234とサブネットワークコントローラ236との間で分散され、この場合、ステップ528の後、各コントローラは、コントローラによって制御されるトランスポートストリームネットワークの枝をマッピングする。例えば、ステップ528を完了した後、ネットワークコントローラ234は、ヘッドエンド102をマッピングし、サブネットワークコントローラ236は、ハブ104のネットワークトランスポートストリームをマッピングする。
【0068】
ここで図5Bを参照して、ステップ532において、サブネットワークコントローラ236は、ネットワークトランスポートストリームマップ400の一部分をネットワークコントローラ234に送信する。この時点で、サブ分散ネットワーク160の各ネットワークトランスポートストリームは、各ネットワークトランスポートストリームに割り当てられた固有のTSIDを有するが、異なるサブ分散ネットワーク160のネットワークトランスポートストリームの間、またはヘッドエンド102とサブ分散ネットワーク160との間のTSIDは、衝突し得る。ネットワークコントローラ234のような、ネットワークトランスポートストリームマップ400を作成する最終的な責任を負うコントローラは、衝突するTSIDを調べる。衝突する場合、ステップ534において、サブネットワークコントローラは、ネットワークコントローラからTSID再マッピングメッセージを受信する。一方、サブネットワークコントローラ236は、再マッピングメッセージを受信しない場合は、ハブ104のネットワークトランスポートストリームマップ400の一部分を作成した状態で、終了する。
【0069】
図5Cを参照して、ステップ536では、ネットワークコントローラ234は、各サブネットワークコントローラ236からネットワークトランスポートストリームマップ400の一部分を受信する。その後、ステップ538において、ネットワークコントローラは、衝突するTSID402について、ネットワークトランスポートストリームマップ全体を調べる。ある実施形態では、DBDS100の各ネットワークトランスポートストリームは、固有のTSID402を有する。従って、DBDS100の2つ以上のネットワークトランスポートストリームは、同一のTSID402を有する場合、ネットワークコントローラ234は、ステップ540に進み、衝突するTSID402の1つを再マッピングするための再マッピングメッセージを送信する。この再マッピングメッセージは、ネットワークトランスポートストリームソースまたはネットワークトランスポートストリームハンドラまたはサブネットワークコントローラ236に直接送信され得、その後、ネットワークトランスポートストリームソースまたはネットワークトランスポートストリームハンドラまたはサブネットワークコントローラ236は、適切なデバイスに再マッピングメッセージを送信する。再マッピングが起こった後、ネットワークコントローラ234は、ステップ542に進み、ヘッドエンド102のネットワークトランスポートストリームにおいてなされた変更を反映させるように、ネットワークトランスポートストリームマップ400を更新する。ネットワークコントローラ234は、再マッピングメッセージをサブネットワークコントローラ236に送信する場合、サブネットワークコントローラから新しいネットワークトランスポートストリームマップを受信する。この時点で、ヘッドエンド102およびハブ104に対するネットワークトランスポートストリームマップ400が、完了する。
【0070】
尚、コントローラ、サブネットワークコントローラ236、またはネットワークコントローラ234は、通常、ネットワークトランスポートストリームのTSID402を再マッピングすることによって、ネットワークトランスポートストリーム、ネットワークトランスポートストリームソースおよびネットワークトランスポートストリームハンドラをあいまいなところなくマッピングし得る。ここで図7Aを参照して、例えば、ネットワークトランスポートストリームソース702および704、中間トランスポートストリームハンドラ706、708、710、712および714、ならびに出力トランスポートストリームハンドラ716、718、720、722および724を有するネットワーク700を考えられたい。衛生信号受信機のようないくつかのネットワークトランスポートストリームソースは、TSIDを再マッピングするように構成されないこと、および/またはINSTMメッセージに応答するように構成されないことがあり得る。しかし、ネットワークトランスポートストリームハンドラの全てを含む部分的なネットワークトランスポートストリームマップは、依然として作成され得る。
【0071】
図7Aにおいて、コントローラが、デバイスがどのように接続されるのかをまだ決定していないため、ネットワーク700のデバイスは、破線で接続されるように図示される。図7Aでは、さらに、トランスポートストリームの初期TSID値が示される。この例示的なネットワークでは、ネットワーク700のデバイスのタイプの詳細は、重要ではない。コントローラは、最初に、図7Aに示される全てのデバイスにINTSMメッセージを送信する。この例では、ネットワークトランスポートストリームソース704は、INTSMメッセージまたは再マッピングメッセージに応答しないか、あるいは応答することができない。
【0072】
この例では、コントローラは、デバイス706以外の図7Aに示される全てのデバイスからネットワークメッセージ600を受信する。コントローラは、受信されたネットワークメッセージ600からテーブル750を作成する。テーブル750は、各ネットワークトランスポートストリームデバイスをそのデバイスのタイプ752、少なくとも1つの入力ネットワークTSID754、および出力TSID756と関連付ける。
【0073】
コントローラは、各受信されたネットワークメッセージ600のデバイスタイプフィールド602、出力TSIDフィールド604、および入力TSIDフィールド606を読み、各デバイスをそのそれぞれのデバイスタイプ752、入力TSID754、および出力TSID756に関連付ける。例えば、デバイス702(A)からのネットワークメッセージ600は、それがタイプS_1のデバイス、すなわちソースタイプのデバイスであること、およびその出力ネットワークトランスポートストリームは、AというTSID値を有することを示す。好ましい実施形態では、ネットワークトランスポートストリームソースからのネットワークメッセージ600の入力TSIDフィールド606は、nullである。しかし、別の実施形態では、ネットワークトランスポートストリームソースは、ネットワークメッセージ600のネットワーク入力TSIDフィールド606のそれぞれの入力トランスポートストリームに対するTSIDを含む。この場合、テーブル750は、ネットワークトランスポートストリームソース702(A)〜702(C)に対する入力TSID値754(A)を含み、ネットワークトランスポートストリームソース702(A)〜702(C)は、デバイスタイプS_1、S_2、およびS_3にそれぞれ関連付けられる。
【0074】
尚、コントローラは15個のデバイスからネットワークメッセージ600を受信し、ネットワークトランスポートストリームを出力する16個のデバイスが存在する(デバイス706は、3つのデバイスとして計算される。なぜなら、デバイス706は、その各出力ネットワークトランスポートストリームに対してネットワークメッセージを送信するからである。)。この例示的なネットワークでは、デバイス704は、INTSMメッセージに応答して、ネットワークメッセージ600を送信せず、結果的に、テーブル750には現れない。
【0075】
テーブル750を作成した後、コントローラは、テーブル750のデバイスタイプ752に関連する各デバイスの各出力ネットワークトランスポートストリームに対して、新しい固有のTSIDを決定する。コントローラは、テーブル750にリストアップされるデバイスタイプを有する各デバイスに再マッピングメッセージを送信する。デバイス706のような複数のデバイスタイプを有するデバイスは、それぞれの出力ネットワークトランスポートストリームに対する再マッピングメッセージを受信する。所与のデバイスに送信された再マッピングメッセージは、その所与のデバイスからの出力ネットワークトランスポートストリームに対する新しい固有のTSIDを示す。
【0076】
その後、コントローラは、出力ネットワークトランスポートストリームの再マッピングされた出力TSID756(B)を反映させるようにテーブル750を更新する。さらに、好ましい実施形態では、ネットワークトランスポートストリームハンドラおよびネットワークトランスポートストリームソースは、それぞれの出力ネットワークトランスポートストリームのTSIDを変更することによって、再マッピングメッセージに応答するように適合される。ネットワークトランスポートストリームハンドラは、ネットワークメッセージ600をコントローラに送信することによって、それぞれの入力ネットワークトランスポートストリームの変更に応答するように適合される。再マッピングメッセージに応答してコントローラに送信された各ネットワークメッセージ600は、入力TSIDフィールド606を含み、入力TSIDフィールド606は、入力ネットワークトランスポートストリームの現在のTSIDを示す。コントローラは、ネットワークトランスポートストリームメッセージ600に応答した各デバイスが、その新しい入力TSID754(B)に関連付けられるように、テーブル752を更新する。このように、コントローラが、デバイス702(A)に、その出力ネットワークトランスポートストリームのTSIDを「A」から「E」までに再マッピングする再マッピングメッセージを送信する時、デバイス706は、3つのネットワークメッセージ600(その各出力ネットワークトランスポートストリームに対するネットワークメッセージ)をコントローラに送信することによって、その変更に応答する。デバイス706からの各ネットワークメッセージは、「E」というTSID値を有する入力ネットワークトランスポートストリームを受信することを示す。コントローラは、ネットワークメッセージ600更新テーブル750を読み、現在の入力TSID754(B)をデバイスタイプ752に関連付ける。
【0077】
コントローラが、テーブル750を用いることによりネットワークトランスポートストリームソースおよびハンドラを連続して接続することは簡単である。なぜなら、各ネットワークトランスポートストリームは、固有のTSIDを有するからである。ソースティアデバイスからスタートして、出力TSID756(B)を入力TSID754(B)と整合させることにより、図7Cに示されるネットワークトランスポートストリームマップを作成することができる。例えば、デバイスタイプS_1のネットワークトランスポートストリームソースであるデバイス702(A)は、「E」というTSID値を有するトランスポートストリームを送信する。デバイスタイプD_1.1、D_1.2、およびD_1.3により識別される3つのコンポーネントを備えるデバイス706は、デバイス702(A)から下流になければならない。なぜなら、デバイス706は、「E」というTSID値を有するトランスポートストリームを受信するからである。テーブル750から、デバイス702(A)が、唯一のデバイス706の入力ソースであることも、判定され得る。さらに、デバイス708は、デバイス702(B)および702(C)からすぐ下流にあることも、判定され得る。なぜなら、デバイス708は、「F」および「G」というTSIDを有するネットワークトランスポートストリームを受信するからである。このように、テーブル750は、ネットワークトランスポートストリームソース702、およびそこから下流の全てのネットワークトランスポートストリームハンドラからのトランスポートストリームをマッピングするために利用され得る。
【0078】
コントローラは、出力TSID値756(B)のいずれとも整合しない入力TSID値を有するデバイス724のようなデバイスを発見した時、初期INTSMメッセージに応答しなかったトランスポートストリームソースが存在することを知っている。コントローラは、マップが不完全であることをシステムのオペレータに送信して、警告し得る。しかし、コントローラは、デバイス724に接続されるデバイスのタイプを知らない場合でさえ、「B」というTSID値を有するトランスポートストリームを出力するデバイスが存在することを知っている。この別の実施形態では、オペレータは、手動でデータを入力してネットワーク700のネットワークトランスポートストリームマップを完了させることにより、警告に応答する。
【0079】
ネットワークトランスポートストリームマップ400は、ネットワークトランスポートストリーム250、252、および254の現在のTSID値を反映するダイナミックマップである。各ネットワークトランスポートストリームハンドラは、ネットワークメッセージをそれぞれのコントローラに送信することによって、その入力ネットワークトランスポートストリームの変更に応答する。コントローラは、動的にネットワークトランスポートストリームマップ400を更新する。ネットワークトランスポートストリームマップ400は、それぞれのソースからそれぞれの出力ティアレベルデバイスまたはDHCT110までのネットワークトランスポートストリームをマッピングする。ネットワークトランスポートストリームマップは、DBDS100のオペレータによって利用され得る。ある実施形態では、「マスタ」ネットワークトランスポートストリームマップ400は、ネットワークコントローラ234のメモリ238に格納される。「マスタ」ネットワークトランスポートストリームマップは、DBDS100のメンテナンスの前にメモリ238に格納され、特に、メンテナンスの後にDBDS100のトラブルシューティングを行うために利用される。例えば、メンテナンス中に、ネットワークトランスポートストリーム252および250(E)を有する通信リンクは、MQAM230(A)がネットワークトランスポートストリーム250(E)を受信し、かつMQAM230(B)がネットワークトランスポートストリーム252を受信するように偶発的に交差して配線され、システムが混乱および混沌の中に投げ出されたと仮定されたい。従来のシステムであれば、システムのオペレータは、交差した配線の対を発見するために、ネットワークトランスポートストリームを搬送する通信リンクの全ての物理的な検査を行ったかもしれない。しかし、本発明のDBDS100システムでは、DBDS100のオペレータは、「マスタ」マップとメンテナンスの後に作成されたネットワークトランスポートストリームマップとを比較することによって、どのワイヤが偶発的に交差しているのかを決定することができる。動的なネットワークトランスポートストリームマップの別の利用が、当業者に理解される。
【0080】
通常、ネットワークデバイスは、どのデバイスが自分から上流にあり、どのデバイスが自分から下流にあるのかを知らない。さらに別の実施形態では、ネットワークコントローラ234またはサブネットワークコントローラ236のいずれかのコントローラは、ネットワークトランスポートストリームマップ400を利用して、ネットワーク情報をネットワークトランスポートストリームソースおよびハンドラに提供する。ネットワークトランスポートストリームソースおよびネットワークトランスポートストリームハンドラは、それぞれの下流のデバイスについての情報を利用して、下流のデバイスに提供されるトランスポートストリームが正確であることを保証する。非限定的な例では、BIG224は、トランスポートストリームをBIGよりも低い帯域幅を有するASI−SONET送信機(図示されない)に出力する。この場合、BIG224は、その出力をASI−SONET送信機の出力と整合させ、ASI−SONET送信機は、トランスポートストリームを操作し得る。
(トランスポートストリームハンドラ)
上述されたように、トランスポートストリームハンドラは、少なくとも1つの入力ネットワークトランスポートストリームを受信し、少なくとも1つのネットワークトランスポートストリームを出力するように適合され、出力されたネットワークトランスポートストリームの少なくとも1つの上に1つのTSIDをマッピングするように適合されるデバイスである。例示するために、ネットワークトランスポートストリームハンドラMQAM230が、図8に示される。簡単に説明すると、MQAM230は、ネットワークトランスポートストリームを受信する入力ポート806、ならびに、外付けのコントローラと通信し、かつメモリ804および送信機808のようなMQAM230のコンポーネントを制御する中央演算装置(CPU)802を含む。メモリ804は、入力ネットワークトランスポートストリームのMPEGパケット300をバッファリングするためのストレージであり、さらに、特に、トランスポートストリームを受信/送信し、TSID値をマッピングし、かつネットワークメッセージに応答するために必要とされるさまざまなステップを実行するために必要なロジックを格納するためのストレージである。別の実施形態では、メモリ804は、必要なロジックのほとんどを実装するFPGAを含む。
【0081】
送信機808は、無線周波数が出力ネットワークトランスポートストリームを変調するQAM変調器のような変調器を含む。送信機は、メモリ804からトランスポートストリームのパケットを受信し、そのパケットを送信する。
【0082】
尚、MQAM230は、例示的なネットワークトランスポートストリームハンドラであり、ネットワークトランスポートストリームソースおよび別のネットワークトランスポートストリームハンドラは、別のコンポーネント、あるいは、より多くまたはより少ないコンポーネントを含み得る。さらに、入力および出力トランスポートストリームの数は、特定のネットワークトランスポートストリームソースまたはハンドラに依存することを理解されたい。しかし、好ましい実施形態では、各ネットワークトランスポートストリームハンドラおよびネットワークトランスポートストリームソースは、CPU802および送信機808を含む。CPU802は、通信リンク166を介してネットワークコントローラ234および/またはサブネットワークコントローラ236と通信する。この通信リンク166を介して、INTSMメッセージおよびネットワークメッセージ600のようなメッセージが送信される。
【0083】
受信されたINTSMメッセージに応答して、CPU802は、図9に示されるステップ900を実行することによって応答する。CPU802およびメモリ804は、ステップ900を実行するために必要な全てのロジックを含む。MPEGパケット300から構成されるネットワークトランスポートストリームを受信し、それぞれの出力ネットワークトランスポートストリーム254に受信されたパケットをルーティングするために必要なロジックは、MQAM230(A)のロジックに含まれる。当業者は、MQAM230のロジックがさらに、出力ネットワークトランスポートストリームに対するPAT(Program Association Table)およびCAT(Conditional Access Table)のようなシステムおよび制御パケットを作成し、受信されたパケットのPID(Packet Identifier)を再マッピングするロジックを含むことが理解される。さらに、ステップ900は、MQAM230のCPU802により実施されると説明されたが、これは単なる例であり、任意のネットワークトランスポートストリームハンドラまたはネットワークトランスポートストリームソースのCPUが、ステップ900を実行するように構成され得ることを理解されたい。さらに別の実施形態では、ステップ900を実行するロジックは、MQAM230を制御するコントローラとMQAM230との間で分散される。
【0084】
ステップ902では、CPU802は、通信リンク166を介してINTSMメッセージを受信する。CPUは、入力ネットワークトランスポートストリーム250および252ならびに出力ネットワークトランスポートストリーム254のネットワークステータスを判定する。ネットワークステータスは、各ネットワークトランスポートストリームのTSID値、BER率、各出力ネットワークトランスポートストリーム254の利用可能な帯域幅、帯域幅の余分な割り当て、喪失したリンク、ならびに入力が良好か入力に問題があるか等のネットワーク情報を含むが、これらに限定されない。
【0085】
メモリ804は、このデバイスが所与のタイプのデバイスであると識別するデバイス情報を含み、さらに、このデバイスがそのデバイスタイプの特定のデバイスであることを識別する情報を含む。例えば、このデバイス情報は、MQAM230が、MOD(変調器)タイプのデバイスであり、DBDS100内の3番のMODタイプデバイスであり、かつ、4つの出力ネットワークトランスポートストリーム254(A)〜254(D)を有することを示し得る。
【0086】
ステップ904において、CPU802は、ネットワークメッセージ600を通信リンク166を介してコントローラに送信する。好ましい実施形態では、CPU802は、ネットワークトランスポートストリーム254を送信する各変調器808のネットワークメッセージ600を送信する。ネットワークメッセージ600のこのデバイスタイプフィールド602は、メッセージが関連付けられる変調器のインジケータを含む。出力TSIDフィールド604は、出力トランスポートストリームの出力TSID値を示す。
【0087】
ステップ906では、CPU802は、メモリ804にネットワーク情報を格納する。通常、格納されるネットワーク情報は、ネットワークメッセージ600に含まれるネットワーク情報のタイプを含む。メモリ804に格納されるネットワーク情報のタイプの非限定的な例は、各受信されたネットワークトランスポートストリームのTSID値、各入力ネットワークトランスポートストリーム250および252のBER、ならびにその出力ネットワークトランスポートストリーム254の利用可能な帯域幅を含む。
【0088】
好ましい実施形態では、メモリ804は、以下により詳細に説明される、動的ネットワーク情報テーブル(DNIT)を作成するロジックを含む。DNITは、ネットワークメッセージ600に含まれるネットワーク情報と同様の現在のネットワーク情報を含む。CPU802は、各出力ネットワークトランスポートストリーム254のDNITを作成し、それぞれのネットワークトランスポートストリーム254に各DNITを挿入する。好ましい実施形態では、ステップ908において、CPU802は、各出力ネットワークトランスポートストリーム254において、内部に現在のネットワーク情報を含むDNITを定期的に含む。このように、下流のデバイスは、定期的にMQAM230から現在のネットワーク情報を受信する。
【0089】
その後、ステップ910において、CPU802は、各入力ネットワークトランスポートストリーム(250および252)をモニタリングし、格納されるネットワーク情報と現在のネットワーク情報との間に差が存在するかどうかを判定する。通常、CPU802は、わずかな変更または変動に対して、閾値を超える変更についてネットワークをモニタリングしている。例えば、DBDS100のオペレータは、BER閾値を確立し得、格納されたBER値および現在のBER値の両方が、閾値の上または下にある限り、BER値は変更されなかったとみなされる。他のネットワーク情報の値は、別個の変更を有する。例えば、ネットワークトランスポートストリームのTSID値は、ネットワークトランスポートストリームのTSID値が新しい値に再マッピングされない限り、一定である。CPU802が、モニタリングされるネットワークトランスポートストリームに変更があったと判定する場合、CPU802は、ステップ904に戻り、現在のネットワーク情報を含む新しいネットワークメッセージ600をそのコントローラ(ネットワークコントローラ234またはサブネットワークコントローラ236のどちらか)に送信する。一方、変更がなければ、CPU802は、ネットワークトランスポートストリームのモニタリングを続け、定期的にDNITを送信する。
【0090】
ある実施形態では、CPU802が、モニタリングされるネットワーク値に変化があったと判定する場合、CPU802はさらに、各出力ネットワークトランスポートストリーム254に新しいDNITを含む。新しいDNITに含まれる情報は、現在のネットワーク値に反映させる。CPU802が、モニタリングされるネットワーク値の変更に応答して新しいDNITを直ちに送信しない場合でさえ、CPU802は、現在のネットワーク情報を内部に含むDNITを定期的に送信する。このように、下流のデバイスは、MQAM230の現在のネットワークステータスに反映させるDNITを受信する。
(動的ネットワーク情報テーブル)
ある実施形態では、DNITは、当業者に公知のシステムパケットに挿入される。システムパケットの非限定的な例は、MPEGトランスポートストリームのプログラム関連テーブル(PAT)パケットまたはコンディショナルアクセステーブル(CAT)またはネットワーク情報テーブル(NIT)を含むが、これらに限定されない。別の実施形態では、DBDS100のオペレータは、まだ保存されていないPID値を選択し、DNITのそのPID値を保存する。そのPID値は、その特定の保存されたPID値を有するパケットに挿入される。
【0091】
好ましい実施形態では、各ネットワークトランスポートストリームおよびネットワークトランスポートストリームハンドラは、DNITを作成するために必要なロジックを含む。さらに、各ネットワークトランスポートストリームソースおよびハンドラは、ネットワークトランスポートストリームからDNITを取り出し、取り出されたDNITを読み、かつ出力ネットワークトランスポートストリームへDNITを挿入するために必要なロジックを含む。
【0092】
ここで図10を参照して、ネットワークトランスポートストリームソースまたはネットワークトランスポートストリームハンドラのプロセッサは、例えば、DNITを作成するためのDNITの擬似コード(pseudo−code)1000のようなコードを実行する。このコードは、デバイス部分1002およびプレデバイス部分1004を含む。
【0093】
デバイス部分1002は、そのデバイスに固有の情報を生成するためのものである。通常、デバイス部分1002は、識別フィールド1006、トランスポートIDフィールド1008、ならびにデバイス情報フィールド1010およびネットワークデータフィールド1012を含む。
【0094】
識別フィールド1006は、DNITを生成するコードを実行するデバイスを識別する。ある実施形態では、識別フィールド1006に含まれる識別情報は、ネットワークメッセージ600のデバイス識別フィールド602に含まれる情報に対応する。別の実施形態では、識別フィールド1006に含まれる識別情報は、デバイスを識別するために利用され得るデバイスのIPアドレス、デバイスのMACアドレスのような任意の情報であり得るが、これらに限定されない。
【0095】
トランスポートIDフィールド1008に含まれる情報は、DNITが挿入されるネットワークトランスポートストリームのTSID値に対応する。例えば、図4を参照して、BIG224がDNITを生成する時、トランスポートIDフィールド1008は、トランスポートIDフィールド1008と関連する「G」という値を有する。なぜなら、BIG224は、DNITを「G」というTSID402を有するネットワークトランスポートストリーム252に挿入するからである。
【0096】
デバイス情報フィールド1010は、DNITを作成するデバイスのタイプ等の情報を含み得るデバイスについての情報を含み、デバイスのタイプの非限定的な例は、ネットワークトランスポートストリームソース、衛星信号受信機、エンコーダ、サーバ、VODサーバ、BIG、変調器、マルチ変調器、およびネットワークトランスポートストリームハンドラを含む。このデバイス情報フィールド1010はまた、入力ネットワークトランスポートストリームの数のようなデバイスに固有の情報を含み得る。
【0097】
好ましい実施形態では、デバイス情報フィールド1010はまた、DNITを作成するデバイスを制御するコントローラのアドレスを含む。例えば、ネットワークコントローラ234は、衛星信号受信機214(A)を制御し、サブネットワークコントローラは、サーバ216(B)を制御する。このように、衛星信号受信機214(A)からのDNITは、ネットワークコントローラ234のコントローラアドレスを含み、サーバ216(B)からのDNITは、サブネットワークコントローラ236のアドレスを含む。
【0098】
ネットワークデータフィールド1012は、DNITが挿入されるネットワークトランスポートストリームについての情報を含む。ネットワークデータフィールド1012に含まれる情報の例は、ネットワークトランスポートストリームの利用可能な帯域幅、トランスポートストリームのパケットのタイプ、DNITのネットワークトランスポートストリームへの挿入率、および受信されたパケットのビットエラー率を含むが、これらに限定されない。さらに、ネットワークデータフィールド1012は、ネットワークトランスポートストリームに含まれるデータ、オーディオ、ビデオ等のパケットのタイプについての情報を含み得る。
【0099】
DNITの擬似コード1000の上流部分1004は、上流のデバイスからの情報をDNITに含ませるために必要なロジックを含む。好ましい実施形態では、上流デバイスからの情報は、ネットワークトランスポートストリームを介して受信されるDNITに含まれる。別の実施形態では、DNITは、通信リンク166および帯域外通信(これらに限定されない)等の他の通信リンクを介して、下流のデバイスへ伝送される。
【0100】
上述されたように、好ましい実施形態では、各ネットワークトランスポートストリームソースおよび各ネットワークトランスポートストリームハンドラは、その出力ネットワークトランスポートストリームのそれぞれのDNITを出力する。このように、例えば、4つの出力ネットワークトランスポートストリームを有するMQAM230は、各出力ネットワークトランスポートストリームのDNITを出力し、各DNITは、上流の情報を含む。好ましい実施形態では、DNITは、上流のデバイスからの上流の情報を含む。ここで図4を参照して、MQAM230(A)は、BIG224およびエンコーダ218から、それぞれ2つのネットワークトランスポートストリーム252および250(D)を受信する。このように、MQAM230からのDNITは、BIG224およびエンコーダ218からの上流の情報を含む。
【0101】
図11を参照すると、例示的なDNIT1100(A)は、MQAM230(A)のMOD_1.1からの出力ネットワークトランスポートストリームである、ネットワークトランスポートストリーム254(A)に含まれる。DNIT1100(A)は、デバイスに固有のサブテーブル1102(A)および上流のサブテーブル1104(A)を含む。
【0102】
デバイスに固有のサブテーブル1102(A)は、DNIT1100(A)が由来するデバイスについての情報(この例では、MOD1.1)を含む。デバイスに固有のサブテーブル1102(A)に含まれる情報は、DNITの擬似コード1000のデバイス部分1002からのものである。デバイスに固有のサブテーブル1102(A)は、DNIT1100(A)がトランスポートストリームHに含まれ、トランスポートストリームHは、トランスポートストリームマップ400から、MQAM230(A)のMOD_1.1から来たトランスポートストリーム254(A)であることがわかる。デバイスに固有の情報サブテーブル1102(H)はまた、MOD_1.1が2つのトランスポートストリームの入力を受信することを示す。
【0103】
上流のサブテーブル1104(A)は、ネットワークトランスポートストリームソースおよびネットワークトランスポートストリームハンドラのような、上流のデバイスから受信した情報を含む。上流のデバイスからの情報は、トランスポートストリーム250(D)および252を介して受信されるDNITにより、MQAM230(A)に提供される。上流デバイスからの情報は、DNITの擬似コード1000のプレデバイス部分1004によって、上流のサブテーブル1104(A)に含まれる。この例示的なDNIT1100(A)では、上流のサブテーブル1104(A)は、それぞれBIG224およびエンコーダ218からのDNIT1100(B)および1100(C)を含む。DNIT1100(B)および1100(C)は、それぞれデバイスに固有のサブテーブル1102(B)および1102(C)を含み、中間ティアレベルデバイスBIG224からのDNIT1100(B)は、DNIT1100(D)、1100(E)、および1100(F)を含む。DNIT1100(D)、1100(E)、および1100(F)は、それぞれ衛星信号受信器214(A)、サーバ216、および衛星信号受信機214(B)からのものである。このように、上流デバイスからのDNITは、DNIT1100(A)に組み込まれる。
【0104】
例示的なDNIT1100(A)はまた、その受信されたネットワークトランスポートストリーム252および250(D)のそれぞれのリンクステータス情報1106(A)および1106(B)を含む。リンクステータス情報1106(A)および1106(B)は、現在「良好」である。BIG224からの例示的なDNIT1100(B)は、リンクステータス情報1106(C)、1106(D)、および1106(E)を含む。1106(C)、1106(D)、および1106(E)は、ネットワークトランスポートストリーム250(A)、250(B)、および250(C)にそれぞれ関連付けられ、さらに、現在「良好」である。ネットワークトランスポートストリーム250(C)がブレイクされると、BIG224は、リンクステータスが現在「問題あり」であると判定する。この場合、BIG224からの次のDNIT1100(B)のリンクステータス1106(E)は、「問題あり」と読める。ネットワークトランスポートストリーム250(C)のリンクステータスに問題があるとういうこの情報は、下流へ伝送され、ネットワークコントローラ234またはサブネットワーク236に送信されたネットワークメッセージに含まれる。ネットワークメッセージを自動的に受信するコントローラは、トランスポートストリーム250(C)のコンテンツを再ルーティングすることによって、またはDBDS100のオペレータを変更することによって、ネットワークメッセージに応答する。
【0105】
尚、DNIT1100(A)は、ネットワークトランスポートシステムを介して下流に伝送されるテーブルの実施形態である。当業者には、このテーブルにより多い、またはより少ない情報が含まれ得ることが理解される。
【0106】
尚、別の実施形態では、ネットワークトランスポートストリームソースの全てが、DNITを作成および送信するように適合されるとは限らない。しかし、上流のデバイスが、DNITを下流のデバイスに送信することに失敗した時、下流のデバイスは、依然として部分的なDNITを作成し、そのDNITを下流に伝送する。例えば、図11に示されるように、エンコーダ218が、DNIT1100(C)をMQAM230に送信しない場合、MQAM230(A)は、依然として部分的なDNITを作成し得る。しかし、MQAM230(A)は、依然として、(1)ネットワークトランスポートストリーム250(D)のTSID402、(2)ネットワークトランスポートストリーム250(D)のリンクステータス1106(B)を判定し、DNIT1100(C)ではなくDNIT1100(A)にTSID値およびリンクステータスを含む。さらに、MQAM230(A)は、MQAM230(A)が、ネットワークコントローラ234に、「D」というTSID値402(D)を有するネットワークトランスポートストリームを受信するが、トランスポートストリーム402(D)のDNITを受信しないことを示すメッセージを送信し得る。ネットワークコントローラは、その後、ネットワークトランスポートストリームマップ400を調べて、Dという値のTSID402を有するネットワークトランスポートストリームを出力するデバイスについての情報を判定する。さらに、ネットワークコントローラ234は、DBDS100のオペレータからの上流のデバイスに関するさらなる情報をリクエストし得、オペレータは、この情報を手動で入力し得る。ネットワークコントローラ234は、この情報をMQAM230(A)に送信し得、MQAM230(A)は、DNIT1100(A)にこの情報を含む。このように、ネットワークトランスポートストリームハンドラは、受信されたネットワークトランスポートストリームのTSIDを判定し、コントローラと通信して上流のデバイスについてのさらなる情報をリクエストし、さらにネットワークコントローラ234および/またはサブ領域コントローラ236から特定のデバイスについての情報を受信することによって、少なくとも部分的にDNSTを送信しないデバイスの上流の情報を満たし得る。
【0107】
DHCT110は、DHCT110が受信する各ネットワークトランスポートストリームのDNIT1100を介して、上流の情報を提供される。例えば、コンバイナ232(C)に接続されるDHCT110は、ヘッドエンド102に位置するMQAM230(A)からのネットワークトランスポートストリーム254(A)〜254(C)と、ハブ104に位置するMQAM230(C)からのネットワークトランスポートストリーム254(I)および254(J)とを受信する。ネットワークトランスポートストリーム254(A)〜254(C)に含まれるDNIT1100は、ネットワークトランスポートストリーム250(A)〜250(D)についてのネットワーク情報と、以下のデバイスに関する情報とを含む。以下のデバイスとは、衛星信号受信機214(A)および214(B)、アプリケーションサーバ216(A)、エンコーダ218、BIG224、ならびにMQAM230(A)である。ネットワークトランスポートストリーム254(I)および254(J)のDNITは、ネットワークトランスポートストリーム250(G)および250(H)についてのネットワーク情報と、以下のデバイスに関する情報とを含む。以下の情報とは、アプリケーションサーバ216(B)、衛星信号受信機214(C)、およびMQAM230(C)を含む。
【0108】
DHCT110は、受信されたDNITを利用して、ネットワークコントローラ234および/またはサブネットワークコントローラ236に位置付けられる処理の負荷をある程度軽減し得る。従来技術の加入者テレビジョンシステムでは、DBDS100の加入者は、DHCT110を利用して、ビデオオンデマンドプログラミング、視聴ごとに支払う(pay−per−view)プログラミング、パーソナルテレビジョン、オーディオプログラミング、およびインターネット接続(これらに限定されない)等のサービスをインタラクティブにオーダーし得る。サービスに対する加入者のリクエストは、DHCT110からリクエストされたサービスを提供するために必要なステップを実行するコントローラ(ネットワークコントローラ234またはサブネットワークコントローラ236)に送信される。しかし、受信されたDNIT1100を利用して、DHCT110は、サービスに対するリクエストを通知し得る。例えば、従来技術のシステムでは、ユーザが、DBDS100の1つ以上のVODサービスに格納される映画を受信する等の、視聴ごとに支払うサービスまたはプログラムをスタートさせることを望む場合に、ユーザは、ユーザのDHCT110を介してネットワークコントローラにサービスに対するリクエストを送信していた。ネットワークコントローラ234またはサブ領域コントローラ236は、DBDS100のVODサービスのいずれがリクエストしているDHCT110から上流にあるのか、上流のVODサーバのいずれが、リクエストされたサーバを有するのか、および、これらのサーバのいずれが、リクエストされたサービスを送信すべきなのかを決定しなければならない。しかし、本発明のある実施形態によると、DHCT110は、受信されたDNIT1100を調べて、DHCT110から上流にあるサーバのリストを判定し、そのリストの各サーバのコントローラを判定する。例えば、コンバイナ232(C)からネットワークトランスポートストリームを受信するDHCT110は、アプリケーションサーバ216(A)および216(B)から下流にある。DHCT110は、サービスに対するリクエストを有するネットワークコントローラ234またはサブ領域コントローラ236にサーバのリストを送信し得る。
【0109】
ある実施形態では、DHCT110からのサービスリクエストの処理は、ネットワークコントローラ234とサブ領域コントローラ236との間で分散される。サーバのリストをネットワークコントローラ234またはサブ領域コントローラ236に提供することは、ネットワークコントローラ234および/またはサブ領域コントローラ236に位置付けられる処理の負荷をある程度低減する。ネットワークコントローラ234および/またはサブ領域コントローラ236は、もはやどのサーバがDHCT110から上流にあるのかを判定する必要はない。さらに、このサービスに対するリクエストはまた、各サーバとDHCT110との間の各ネットワークトランスポートストリームの現在の動的なネットワークステータスを含む。このように、ネットワークコントローラ234および/またはサブ領域コントローラ236は、DHCT110によって受信されるどのネットワークトランスポートストリームが、リクエストされたサービスのために必要な帯域幅を有するのかを直ちに判定する。
【0110】
別の実施形態では、DNIT1100を利用するDHCT110は、DBDS100によって提供されるサービスの送信を開始するために必要な多くの決定を行い得る。例えば、DHCT110は、DHCT110に対して帯域外に送信されるプログラミングテーブルを調べ得る。プログラミングテーブルは、所与のサーバに格納された、リスト化された視聴ごとに支払うプログラミング等の情報を含む。DBDS100の加入者が、特定のプログラムを選択する場合、DHCT110は、受信されたDNIT1100および受信されたプログラミングテーブルを利用して、DHCT110から上流にあるどのサーバが、内部に格納された特定のプログラムを有するのかを判定する。DHCT110はまた、受信されたDNITから、どのネットワークトランスポートストリームが、リクエストされたサービス(視聴ごとに支払うプログラム、ビデオオンデマンドプログラム、およびインターネット接続等であるが、これらに限定されない)を反応するために必要な帯域幅を有するのかを判定し得る。DHCT110は、サービスをリクエストしている特定のサーバにメッセージを送信し得る。サーバからDHCT110への送信経路は、受信されたDNIT1100に含まれる情報からDHCT110によって決定される。DHCT110は、DNIT1100で指定される経路のリンクの全てが良好であり、そのリンクの全てが利用可能な帯域幅を有する送信経路を選択する。このように、ネットワークトランスポートストリームの利用可能な帯域幅およびリンクステータス等の動的なネットワーク情報を有するDHCT110を提供することによって、ネットワークコントローラ234またはサブ領域コントローラ236のどちらかに位置付けられる処理の負荷は、DHCT110にシフトされ得る。DHCT110があるサービスに対して請求されるべきであることを示すメッセージを受信することを除き、ユーザにサービスを提供する際に、コントローラ(ネットワークコントローラ234またはサブ領域コントローラ236のどちらか)が必ずしも含まれる必要はない。請求メッセージは、サービスを送信するネットワークのDHCT110またはデバイス(サーバ、またはDHCT110によるDBDS100の利用をモニタリングするいくつかの他のデバイス等)から生じ得る。別の実施形態では、リクエストされたサービス用の送信経路は、依然として、コントローラ(ネットワークコントローラ234またはサブ領域コントローラ236のいずれか)によって判断される。いくつかの状況では、コントローラは、DHCT110によって決定された送信経路に沿ってDHCT110にサービスを送信しないことを決定し得る。コントローラは、他の目的でDHCT110により選択された送信経路のいくつかの帯域幅を確保することを望まず、また必要ともしないことがあり得る。この場合、コントローラは、DHCT110への異なる送信経路を決定する。
【0111】
さらに、DHCT110およびネットワークトランスポートストリームハンドラは、受信されたDNITを利用して、DBDS100をモニタリングする。好ましい実施形態では、DNIT1100は、ハートビートに対応するデバイスに固有のサブテーブル1102に挿入速度を含む。好ましい実施形態では、DHCT110の各ネットワークトランスポートストリームハンドラは、その入力ネットワークトランスポートストリームのそれぞれに関連する少なくともコントローラアドレスとDNIT挿入速度とを格納するために十分なメモリを含む。ネットワークトランスポートストリームハンドラおよびDHCT110のようなデバイスは、DNIT挿入速度を利用して、入力ネットワークトランスポートストリームをモニタリングする。例えば、MQAM230(A)は、1秒ごとに一回、BIG224からDNIT1100(B)を受信する。MQAM230(A)は、最後のDNIT1100(B)が受信された時間から所定の時間(2秒等)内にDNIT1100(B)を受信しない場合は、BIG224のコントローラ(ネットワークコントローラ234)に警告を送信する。ネットワークコントローラ234は、DBDS100のオペレータに、BIG224とMQAM230(A)との間にある種の通信ブレイクが存在したことの警告を送信する。
【0112】
別の実施形態では、DHCT110は、DHCT110についての情報と、DNIT1100の受信されたネットワークトランスポートストリームとを含み、DNIT1100をヘッドエンド102またはハブ104に送信する。このように、DNIT1100は、ネットワークトランスポートストリームソースからDHCT110まで拡張する。この場合、ネットワークコントローラ234またはサブネットワークコントローラ236は、DNIT1100を利用して、ネットワークトランスポートストリームソースからDHCT110までのネットワーク条件を判定する。ネットワークコントローラ234またはサブネットワークコントローラ236はまた、DNIT1100を利用して、DBDS100内の各DHCT110をマッピングし得る。
【0113】
さらに別の実施形態では、コントローラ(ネットワークコントローラ234またはサブネットワークコントローラ236のいずれか)は、DHCTから受信されたDNITを利用して、DHCT110とヘッドエンド102またはハブ104との間の双方向通信経路をモニタリングする。コントローラは、サブ分散ネットワーク160等の、DBDS110の所与の地図領域における1つ以上のDHCT110を選択して、定期的にDNIT1100をヘッドエンド102またはハブ104に送信する。各地図領域からのDNIT1100は、その地図領域とヘッドエンド102またはハブ104との間の双方向通信のためのハートビートとして作用する。コントローラは、ハートビートによるQPSKモデムアレイ等の双方向通信の現在のステータス、特に、所与の地理領域のDHCT110からの通信が喪失されたかどうかを判定し得る。
【0114】
通常、ネットワークデバイスは、どのデバイスがそのデバイスから下流にあり、どのデバイスがそのデバイスから上流にあるのかを知らない。さらに別の実施形態では、コントローラ(ネットワークコントローラ234またはサブネットワークコントローラ236のいずれか)は、DBDS100のDHCT110からDNIT1100を受信し、それらを利用して、ネットワークトランスポートストリームソースおよびハンドラにネットワーク情報を提供する。ネットワークトランスポートストリームソースまたはネットワークトランスポートストリームハンドラは、それぞれの下流のデバイスについての情報を利用して、下流のデバイスに提供されたトランスポートストリームが正しいことを保証する。非限定的な例では、BIG224は、トランスポートストリームをASI−SONET送信機(図示されない)に出力する。ASI−SONET送信機は、BIGよりも低い帯域幅を有する。この場合、BIG224は、その出力をASI−SONET送信機の出力と整合させ、ASI−SONET送信機がトランスポートストリームを操作し得ることを確実にする。
【0115】
本発明の上述の実施形態、特に任意の「好ましい」実施形態は、単なる可能な実装例であり、本発明の原理の明確な理解を提供するためだけのものであることが強調されるべきである。多くのバリエーションおよび改変が、本発明の意図および原理から実質的に逸脱することなく、本発明の上述の実施形態に対してなされ得る。このような改変およびバリエーションは、ここでの開示および本発明の範囲内で本明細書中に含まれることが意図され、添付の特許請求の範囲により保護される。
【図面の簡単な説明】
【0116】
【図1】図1は、本発明の好ましい実施形態が用いられ得るケーブルテレビジョンシステム等のブロードバンド通信システムのブロック図である。
【図2】図2は、本発明の好ましい実施形態が用いられ得るブロードバンド通信システムにおける、コンテンツプロバイダと通信するヘッドエンドおよびハブのブロック図である。
【図3】図3は、MPEGトランスポートストリーム、および、その中のパケットのブロック図である。
【図4】図4は、本発明の好ましい実施形態が用いられ得るブロードバンド通信システムにおけるネットワークトランスポートストリームソースおよびネットワークトランスポートストリームハンドラのブロック図である。
【図5A】図5Aは、ブロードバンド通信システムのネットワークをマッピングするブロードバンド通信システムにおけるコントローラによって用いられる例示的なステップのフローチャートである。
【図5B】図5Bは、ブロードバンド通信システムのネットワークをマッピングするブロードバンド通信システムにおけるコントローラによって用いられる例示的なステップのフローチャートである。
【図5C】図5Cは、ブロードバンド通信システムのネットワークをマッピングするブロードバンド通信システムにおけるコントローラによって用いられる例示的なステップのフローチャートである。
【図6】図6は、ネットワークメッセージのブロック図である。
【図7A】図7Aは、例示的なネットワークをマッピングする前の、例示的なネットワークのブロック図である。
【図7B】図7Bは、図7Aに示される例示的なネットワークにおけるデバイスをトランスポートストリーム識別子と関連付けるテーブルである。
【図7C】図7Cは、例示的なネットワークにおけるトランスポートストリームをマッピングした後の、図7Aに示される例示的なネットワークのブロック図である。
【図8】図8は、ブロードバンド通信システムにおける例示的なトランスポートストリームハンドラのブロック図である。
【図9】図9は、コントローラおよびダウンストリームデバイスに情報を動的に提供する方法のフローチャートである。
【図10】図10は、ダイナミックネットワーク情報テーブルを作製するための擬似コードである。
【図11】図11は、ネストされた例示的なダイナミックネットワーク情報テーブルである。
【0001】
(発明の分野)
本発明は、デジタル加入者テレビジョンシステム等のブロードバンド通信システム、およびこのようなシステム内のデジタルヘッドエンドおよびハブの機器に関し、より具体的には、ブロードバンド通信システム内の発見デバイスに関する。
【背景技術】
【0002】
(発明の背景)
ブロードバンドシステムは、限定受信システム(conditional access system)の加入者にテレビジョン信号を送信することが多い。ケーブルおよび衛星テレビジョンシステム等のブロードバンドシステムは、通常、種々のソースからプログラミングおよび/またはデータを受信し、このプログラミングおよび他のデータを分散システムを通じて加入者に再配信するためのヘッドエンドを備える。このヘッドエンドは、種々のソースからプログラミング信号を受信し、種々のソースからのプログラミング信号を組み合わせ、かつ、組み合わされた信号を分散システムを通じて加入者機器に送信する。分散システムは、同軸ケーブル、光ファイバ、および衛星中継等の種々の媒体、ならびに、分散型ノードのネットワークを備え得る。この分散型ノードは、その後、加入者ロケーションか、または分散型ハブのネットワークにプログラミングを送信する。ケーブルテレビジョンシステムにおいて、加入者機器は、ケーブル対応(cable−ready)テレビジョン、ケーブル対応ビデオカセットレコーダ(VCR)、あるいは、テレビ、コンピュータ、または他の表示デバイスと接続されるDHCT(digital home communications terminal)を含み得る。
【0003】
ヘッドエンドは、アナログフォーマットに代わって、益々、例えば、MPEG(Moving Pictures Expert Group)等のデジタルフォーマットでプログラムを送受信する。プログラムをMPEGフォーマットで送信することは有利である。なぜなら、マルチデジタルプログラムは、組み合わされ、かつ、例えば、シングルのアナログチャネルまたはプログラムを送信するために必要とされる帯域幅と同じ大きさの6MHzの帯域幅で送信され得るからである。
【0004】
MPEGトランスポートストリームは、トランスポートストリーム内のプログラミングのタイプおよびロケーションを示すMPEGテーブル等のオーバーヘッド情報を含む。ローカルテレビジョンシステムにおいて、MPEGテーブルは、ローカル分散システム、および、その特定のチャネル系列に特有の情報を含む。この用途において言及されたMPEGは、MPEG−1およびMPEG−2規格と呼ばれる。MPEG−1規格(ISO/IEC 11172)およびMPEG−2規格(ISO/IEC 13818)は、国際標準化機構の文献ISO/IEC JTC1/SC29/WG11N(MPEG−1に関しては1996年6月、および、MPEG−2に関しては1996年7月)に詳細に記載されており、これは、参考のため、本明細書中に援用される。従って、ヘッドエンドシステム、およびモジュレータは、特に、送出されるビットストリームに、必要とされるMPEGテーブルデータを追加しなければならない。
【0005】
MPEGトランスポートストリームは、標準パケットで構成され、これらのパケットの各々は、188バイトの大きさである。パケットの各々は、ヘッダおよびペイロードを含む。通常、ヘッダは、4バイトの大きさであり、ペイロードは、184バイトの大きさであるが、ヘッダは、拡張され得る。この場合、ペイロードは、対応する大きさだけ縮小される。ヘッダは、パケット識別子(PID)を含み、これは、パケットを識別するために用いられる13ビットフィールドである。従って、トランスポートストリームにおけるパケットに8,192の可能なPID値が割り当てられ得る。PID=0およびPID=8,191等の特定のPID値が予約され、これらは、PAT(Program Association Tables)およびスタッフィングパケットをそれぞれ識別するために用いられ、これらは、より詳細に後述される。
【0006】
一般に、トランスポートストリームは、複数の基本ストリームを含み、各基本ストリームは、共通のPID値を有するパケットで構成される複数の基本ストリームを含む。トランスポートストリーム内で、各基本ストリームには、PID値が関連付けられ、これにより、2つの基本ストリームが同じPID値と関連付けられることはない。
【0007】
MPEGプログラムは、複数の基本ストリームで構成されている。一般に、MPEGプログラムは、デジタルビデオ情報が中に含まれるパケット、および少なくとも1つのオーディオ基本ストリームで構成されるビデオ基本ストリームを含む。
【0008】
一般に、トランスポートストリームは、複数のプログラムを含み、これらの各々は、プログラム番号によって一意的に識別される。トランスポートストリームは、PATパケットを含み、これは、0のPID値を有する。トランスポートストリームは、プログラムアイデンティティをそのプログラム番号にマッピングする。プログラムは、例えば、PBS、ESPN等の、従来、テレビジョンチャネルと呼ばれてきたものに対応する。PATは、トランスポートストリームに含まれるプログラムのPMT(program map table)の基本ストリームのPID値を識別する。プログラムのPMTは、プログラムの基本ストリームのPID値のすべてを列挙する。従って、プログラム、および、そのコンテンツを識別するプロセスは、2つのステージで行われる。最初のステージは、プログラムのPMTを搬送する基本ストリームのPIDを識別するために、PID=0の基本ストリームにおけるPATを用い、その後、次のステージにおいて、適切なPMTから、プログラムを構成する基本ビットストリームのPIDが取得される。デマルチプレクサまたはデコーダは、目的のプログラムに対応する識別されたパケットを受信するように設定され得る。換言すると、基本ストリームは、同期されなければならないため、プログラムのオーディオおよびビデオ信号が互いに対応し合う。
【0009】
デジタルネットワークの加入者は、通常、複数のトランスポートストリームを受信し、これらのトランスポートストリームの各々は、トランスポートストリーム識別子(TSID)によって識別される。一般に、加入者は、特定のプログラムを選択し、加入者のデコーダは、例えば、選択されたプログラムを有するプログラムストリームのTSIDを決定するために、電子番組ガイド等のテーブルを調べる。このようなシステムを動作させるために、加入者のデコーダにて受信される各トランスポートストリームが一意的に識別されなければならず、すなわち、加入者のデコーダによって受信された各トランスポートストリームは固有のTSIDを必要とする。デジタル加入者ネットワークのオペレータが複数のコンテンツプロバイダからトランスポートストリーム等のコンテンツを受信することが多く、かつ、異なったコンテンツプロバイダからのトランスポートストリームが、デジタル加入者ネットワーク内で一意的であるように、デジタル加入者ネットワークのオペレータは、TSIDを再マッピングする必要が度々あるということが、従来のシステムにおいて難解である。従来のネットワークにおいて、ネットワークのオペレータは、ネットワークのトランスポートストリームにTSIDを手動で割り当てる。しかしながら、TSIDの手動での割り当ては、オペレータの時間の使用が非能率的であり、従って、TSIDを自動的に割り当てる手段が必要とされる。
【0010】
さらに、従来のデジタル加入者ネットワークにおいて、ネットワークのオペレータには、ダイナミックネットワーク情報が提供されない。このオペレータは、トランスポートストリームを搬送する任意の通信リンクにおいて利用可能な現在の帯域幅を決定するための手段を有しない。従って、オペレータは、トランスポートストリームに別のプログラムを追加するかどうかを決定しようとする場合、トランスポートストリームの現在利用可能な帯域幅を推測し得るだけである。オペレータが、利用可能な帯域幅を過大評価した場合、新しいプログラムは、トランスポートストリームの帯域幅が通信リンクの帯域幅を越える原因となり得、従って、「マクロブロッキング(macro blocking)」として知られる現象が生じる。マクロブロッキングが生じた場合、パケットは、トランスポートストリームからドロップし、その結果、トランスポートストリーム内のプログラムの質が低下し、そして、複数の加入者が不満をもつ原因となる。他方、マクロブロッキングが生じないように、オペレータが、利用可能な大域幅を過小評価した場合、ネットワークは、フル効率で動作せず、オペレータは、帯域幅を無駄にする。デジタル加入者ネットワークの帯域幅は、非常に価値のある商品であるため、従って、デジタル加入者ネットワークは、オペレータがネットワークリソースを知能的に(intelligently)割り当てることを可能にするダイナミックネットワーク情報を必要とする。
【0011】
従来のシステムにおいて、システムコントローラは、デジタル加入者ネットワークの複数の管理機能を取り扱う。例えば、加入者は、ネットワークにおけるパーソナルセッション等のサービスをリクエストし得る。システムコントローラは、特に、加入者のセッションを確立し、セッションのためのコンテンツを加入者に送達する方法を決定し、セッションの加入者に課金する。従って、システムコントローラにかかる処理の負担を推測し直す必要がある。
【発明の開示】
【課題を解決するための手段】
【0012】
(発明の好ましい実施形態の詳細な説明)
本発明の好ましい実施形態が、いくつかの図面全体において同じ符号は同じコンポーネントを表し、本発明の例示的実施形態が示される添付の図面を参照して、より詳細に後述される。しかしながら、この方法は、複数の異なった形態で実施され得、本明細書中で述べられる実施形態に限定されると解釈されるべきでない。すべての実施例は、非限定的であることが意図され、本発明の範囲内にさらなる実施例が含まれる。
【0013】
(テレビジョンシステムの概観)
本発明の好ましい実施形態は、例として、双方向の、インタラクティブデジタル加入者テレビジョンシステムの文脈で最も良好に理解される。この記載において、双方向インタラクティブデジタル加入者テレビジョンシステムは、(デジタルブロードバンド送達システム)DBDS(Digital Broadband Delivery System)またはデジタル加入者ネットワークとも呼ばれる。例示的DBDSの概観は、「Conditional Access System」と称される、米国特許第6,157,719号に記載される(この特許は、参考のため、本明細書中にその全体が援用される)。DBDSの機能は、コンテンツプロバイダ、エンタイトルメントエージェントにインターフェースを提供し、コンテンツへのアクセスおよびコンテンツの使用を制御し、かつ、加入者にコンテンツを配信することである。DBDSは、ビデオ、オーディオ、およびデータエンターテイメントプログラミングを送達するための、MPEGトランスポートストリームを用いる。これらは、特に、ローカルテレビジョンチャネル、プレミアム映画チャネル、VOD(video−on−demand)、電話サービス、およびインターネットアクセス等のプログラミングおよびデータ情報を含み得る。
【0014】
図1を参照して、DBDS(digital broadband delivery system)100は、ヘッドエンド102、複数のハブ104、複数のノード106、複数の加入者ロケーション108、および複数の(デジタル家庭通信端末)DHCT(digital home communication terminals)110を含む。ヘッドエンド1102は、DBDS100と、ブロードキャスタ、インターネットサービスプロバイダ等のコンテンツプロバイダ114との間のインターフェースを提供する。ヘッドエンド102とコンテンツプロバイダ114との間の伝送媒体は、双方向であり得る。これは、DBDS100を介するインターネットアクセス等の双方向インタラクティブサービスを考慮している。
【0015】
メイントランクおよびブランチを有する従来の分散システムとは異なり、DBDS100は、伝送媒体150を介して、複数のハブ104と直接通信するヘッドエンド102を備え、これらのハブは、伝送媒体152を介して複数のノード106と通信する。しかしながら、これに代わる実施形態において、ヘッドエンド102は、いくつかまたはすべてのノード106と、ならびに、いくつかまたはすべての加入者ロケーション108と直接通信し得る。ヘッドエンド102が、ノード106および加入者ロケーション108と直接通信するか、ノード106または加入者ロケーション108と直接通信するかは、実現方法によって異なる。
【0016】
ハブ104は、伝送媒体150を介してプログラミングおよび他の情報をヘッドエンド102から受信し、かつ、伝送媒体152を介して情報をノード106に送信し、これは、その後、伝送媒体154を通じて情報を加入者ロケーション108に送信する。ハブ104は、さらに、伝送媒体154を介して情報を加入者ロケーション108に直接送信する。さらに、ハブ104が加入者ロケーション108と直接通信するか、または、ノード106と直接通信するかは、実現方法によって異なる。
【0017】
好ましい実施形態において、伝送媒体150および152は、高品質および高速の信号配信を可能にする光ファイバであり、伝送媒体154は、ブロードバンド同軸ケーブルまたは光ファイバである。これに代わる実施形態において、伝送媒体150、152、および154は、光ファイバ、同軸ケーブル、および、HFC(hybrid fiber−coax)、衛星、ダイレクトブロードキャスト、または他の伝送媒体等の種々の媒体の1つ以上を含み得る。通常、伝送媒体150、152、および154は、帯域内および帯域外情報が送信される双方向通信媒体である。伝送媒体150、152、および154を通じて、加入者ロケーション108は、ヘッドエンド102またはハブ104と直接または間接的に双方向通信する。
【0018】
DBDS100は、通信媒体150によってヘッドエンド102と接続された複数のサブ分散ネットワーク160を備える。各サブ分散ネットワーク160は、ハブ104、およびハブ104と接続された複数のノード106を備える。同様に、通信リンク166を通じてヘッドエンド102に接続されたハブ104は、プログラミングおよびデータ情報をサブ分散ネットワーク160に導入するためのミニヘッドエンドとして機能する。ミニヘッドエンドとして機能する複数のハブ104を有することによって、異なったデータ情報およびプログラミングを種々のサブ分散ネットワーク160に導入することが容易になる。例えば、ノード106(B)に接続された加入者ロケーション108(B)は、加入者ロケーション108(B)および108(C)は、物理的に互いに近接した状態であり得るとしても、ヘッドエンド102と直接接続された加入者ロケーション108(C)に利用可能なデータ情報およびプログラミングとは異なったデータ情報およびプログラミングを受信し得る。加入者ロケーション108(B)のデータ情報およびプログラミングは、ハブ104およびノード106(B)を通じてルーティングされ、ハブ104は、ヘッドエンド102を通じて利用可能ではないDBDS100にデータ情報およびプログラミングを導入し得る。
【0019】
加入者ロケーション108において、デコーダまたはDHCT110は、DBDS100と加入者との間に双方向インターフェースを提供する。DHCT110は、データ情報およびプログラミングを、ヘッドエンド102またはハブ104から直接または間接的に受信し、テレビジョンセット(TV)112またはコンピュータモニタ等の表示デバイス上に表示するための信号を含む信号をデコードする。当業者は、これに代わる実施形態において、信号をデコードするための機器が、DHCT、コンピュータ、TV、モニタ、またはMPEGデコーダを含むが、これらに限定されない種々の機器に配置され得ることを理解する。
【0020】
DBDS100の加入者は、DBDS100のオペレータからのサービスをリクエストし得る。加入者に提供されるサービスは、電話サービス、インターネットアクセス、オーディオプログラミング、テレビジョンプログラミング、および、ビデオオンデマンド等のペイパービューサービスを含むが、これらに限定されない。
【0021】
図2を参照して、ミニヘッドエンドであるハブ104は、ヘッドエンド102のような機器および機能のいくつかまたはすべてを含む。ヘッドエンド102は、ネットワークコントローラ234を、ハブ104は、サブネットワークコントローラ236をそれぞれ備える。コントローラ234および236は、通信リンク166を通じて通信する。ある実施形態において、通信リンク166は、10baseT伝送を行うためのツイストケーブルペアである。これに代わる通信リンクは、光ファイバケーブル、同軸ケーブル、および、これらの組み合わせを含むが、これらに限定されない。
【0022】
好ましくは、後述される機能を提供するコンピュータハードウェアおよびソフトウェアを含むネットワークコントローラ234は、テレビジョンシステムオペレータが、DBDS100の機能および性能を制御およびモニタリングすることを可能にする。例えば、Scientific−AtlantaのDigital Network Control System(DNCS)等(しかし、限定されない)のネットワークコントローラ234は、ビデオ、オーディオ、およびデータを含むDBDS100における通信をモニタリング、制御、および調整する。ネットワークコントローラ234は、ヘッドエンド102に配置され得るか、または遠隔地に配置され得る。
【0023】
コントローラ234および236は、DBDS100のプログラミングのチャネル系列、各加入者への課金、加入者に配信されるコンテンツの限定受信、セッションの開始、マネージング、および終了、ならびに、ネットワークトランスポートストリームの制御、マネージング、および識別を含む種々の機能をモニタリングおよび/または制御するために、通信リンク166を介して種々のコンポーネントとインターフェースする。コントローラ234および236と通信する種々のコンポーネントは、衛星信号受信器214、アプリケーションサーバ216、エンコーダ218、スイッチ220、ルータ222、BIG(broadband integrated gateway)224、QPSK(Quadrature Phase−Shift Keying)モデムアレイ228、およびMQAM(multi−quadrature amplitude modulator)230を備える。
【0024】
ネットワークコントローラ234は、限定受信情報等の情報をBIG224に伝達する。ここで、情報は、トランスポートストリーム252に多重化される。特に、ネットワークコントローラ234またはサブネットワークコントローラは、1つ以上の出力トランスポートストリーム254に挿入するための特定のプログラム、または、トランスポートストリーム250および252の部分を選択するおよび/または、限定受信情報を提供する等、動作パラメータを設定するためにMQAM230に入力を提供する。制御情報および他のデータは、通信リンク150を通じての帯域内通信を介して、ヘッドエンド102からハブ104に伝達され得る。QPSKモデムアレイ228は、ヘッドエンド102と接続されたDHCT110と、ハブ104と接続されたDHCT110との間の帯域外双方向通信を可能にする。DHCT110からの帯域外通信は、ペイパービュー購買指示等の情報の制御情報、および、加入者ロケーション108(図1に示される)からビデオオンデマントタイプのアプリケーションサーバ216への閲覧コマンドの停止を含む。
【0025】
これに代わる実施形態において、ネットワークコントローラ234は、デバイスコントローラ(図示せず)とインターフェースする。デバイスコントローラは、好ましくは、ヘッドエンド102に配置されるが、他の場所に配置されてもよい。デバイスコントローラは、ネットワークコントローラ234を含むヘッドエンド102およびハブ104におけるデバイスおよびDHCT110からメッセージを受信するように適応され、アプリケーションサーバ216を含むが、これに限定されないデバイスを制御するように適応する。デバイスコントローラは、ヘッドエンド102およびハブ104におけるデバイスを制御することによって、特に、ペイパービュープログラムを受信すること、および、「パーソナルテレビジョン(Personal Television)」セッションを開始することを含むがこれらに限定されない加入者サービスのために、DHCT110からのメッセージに応答して、ネットワークコントローラ234上にかかる処理の負担を軽減する。
【0026】
好ましい実施形態において、ヘッドエンド102およびハブ104は、各々、少なくとも1つの衛星信号受信器214、少なくとも1つのアプリケーションサーバ216、少なくとも1つのMQAM230、QPSKモデムアレイ228、および、少なくとも1つのコンバイナ232を備える。ハブ104は、すでに列挙されたよりも多いか、または少ないか、あるいは、これらとは異なった機器を含み得、かつ、ハブ104に見出される機器のタイプおよび機器の量は、実現によって決まり、かつ、この機器は、ヘッドエンド102に見出される機器とは異なり得ることが理解されるべきである。
【0027】
ヘッドエンド102は、種々の方法で入力を提供し得る種々のコンテンツプロバイダ114からのプログラミング、データ情報、および他の情報等のコンテンツを受信する。好ましい実施形態において、ハブ104は、通信リンク150(B)を通じて、少なくとも1つのコンテンツプロバイダからコンテンツを受信し、さらに、ヘッドエンド102からコンテンツを受信するように適応する。ヘッドエンド102およびハブ104は、種々のソースからのコンテンツを組み合わせ、そのコンテンツを、直接または間接的に加入者108に配信する。コンテンツプロバイダ114は、テレビジョンプログラミング、ビデオカメラ206、およびインターネットサービスプロバイダ208等のプログラミングを提供し得るコンテンツプロバイダ202を含む。入力信号は、衛星204、ダイレクトフィード210、および当業者に公知の他の伝送経路を介して、ソースからヘッドエンド102およびハブ104から伝送され得る。コンテンツプロバイダ114またはプログラミング入力ソースによって提供される信号は、いくつかのプログラムを含む単一のプログラムまたはマルチプレックスを含み得る。ハブ104は、衛星204を介してコンテンツを受信すると示されるが、これは、非限定的な例であることが理解されるべきである。好ましい実施形態において、ハブ104は、インターネットサービスプロバイダを含むが、これに限定されない1つ以上のコンテンツプロバイダと、ダイレクトフィード、地上放送送信器、およびアンテナ(図示せず)を介するビデオカメラと、当業者に公知の他の通信リンクとから受信することができる。
【0028】
好ましい実施形態において、衛星204は、コンテンツをコンテンツプロバイダ202から衛星信号受信器214にリレーし、衛星信号受信器214の各々は、コンテンツプロバイダ202と関連付けられる。通常、コンテンツプロバイダ202から受信されたコンテンツは、トランスポートストリームの形態であり、これを、衛星信号受信器214がネットワークトランスポートストリーム250として出力する。ヘッドエンド102において、衛生信号受信器214(A)および214(B)からのネットワークトランスポートストリーム250は、BIG224に入力され、ハブ104において、衛星信号受信器214(C)からのネットワークトランスポートストリーム250(H)は、MQAM230(C)に入力される。この構成は、実現方法によって異なること、および、これに代わる実施形態において、衛星信号受信器214からのネットワークトランスポートストリーム250は、ヘッドエンド102またはハブ104において通常見出される他の機器に入力され得る。
【0029】
好ましい実施形態において、ヘッドエンド102およびハブ104は、VODを含むがこれに限定されないペイバービューサービス、データサービス、インターネットサービス、ネットワークシステム、または電話システムをさらに備える。コンテンツプロバイダ114は、DBDS100内に配置されるアプリケーションサーバ216にコンテンツをダウンロードし得る。ヘッドエンド102に配置されるアプリケーションサーバ216(A)は、ネットワークトランスポートストリーム250(B)を出力し、これはBIG224に入力され、ハブ104に配置されるアプリケーションサーバ216(B)は、ネットワークトランスポートストリーム250(G)を出力し、これはMQAM230(C)に入力される。さらに、トランスポートストリーム250(B)および250(G)を受信する機器は、実現方法によって異なり、図2に示される構成は、当業者に公知の複数の可能な構成の1つにすぎないことが理解されるべきである。
【0030】
好ましい実施形態において、BIG224は、ヘッドエンド102またはハブ104に配置され得、これは、複数のネットワークトランスポートストリーム250を受信し、ネットワークトランスポートストリームを単一の出力ネットワークトランスポートストリーム252に多重化するように適応する。BIG224は、ネットワークコントローラ234からのネットワークメッセージおよびコマンドを、通信リンク166を通じて受信する。ネットワークメッセージおよびコマンドは、BIG224が入力トランスポートストリーム250を出力トランスポートストリーム252に多重化するために必要な情報を含む。
【0031】
スイッチ220(その例の1つが、非同期転送モード(ATM)スイッチである)は、ゲートウェイ226(A)に、および、ルータ222は、226(B)にインターフェースを提供し、ゲートウェイ226(A)および226(B)は、特に、インターネット、ならびに、出力ネットワークトランスポートストリーム250(E)および250(F)へのアクセスをそれぞれ提供する。ルータ222は、QPSKモデムアレイ228を介してDHCT110からメッセージを受信する。DHCT110からのメッセージは、セッションを生成および制御するために用いられることが多いセッション/コントロールメッセージを含む。通常、ルータ222は、セッション/コントロールメッセージをアプリケーションサーバ226(A)にルーティングするか、または、ルータ222は、ネットワークコントローラ234、またはサブネットワークコントローラ236等の他の適切なデバイスにメッセージを送信する。ヘッドエンド102およびハブ104は、ネットワークトランスポートストリームを受信し、このトランスポートストリームを、例えば、無線周波数変調信号等の変調信号に変換する、少なくとも1つの変調器をさらに備える。好ましい実施形態において、ミニヘッドエンドとして機能するハブ104は、DBDS100にプログラミングを導入し、これは、MQAM230によって変調および送信される。一般に、ヘッドエンド102は、複数のMQAM230を含み、ハブ104は、少なくとも1つのMQAMを含む。これに代わる実施形態において、ヘッドエンド102およびハブ104は、加入者108にコンテンツを送信するための、他の送信器を備える。
【0032】
各MQAM230は、複数のネットワークトランスポートストリーム(250および252)を受信し、かつ、複数の変調されたネットワークトランスポートストリーム254を出力するように適応する。MQAM230への、および、これからの入力および出力ネットワークトランスポートストリームの数は、実現方法によって異なる。好ましい実施形態において、MQAM230は、出力トランスポートストリーム254を変調および送信するQAM変調器を含むが、これに限定されない。
【0033】
MQAM230によって変調されたネットワークトランスポートストリーム254は、伝送媒体150および152に入力するために、コンバイナ232等の機器を用いることによって組み合わせられる。組み合わされた信号は、帯域内情報として加入者ロケーション108に送信される。DBDS100の好ましい実施形態において、各ネットワークトランスポートストリーム254は、セット周波数に変調される。ネットワークトランスポートストリーム254の1つの基本ストリームをDHCT110(図1に示される)が受信するために、DHCT110は、所望の情報を含む変調されたネットワークトランスポートストリームと関連した周波数に同調し、トランスポートストリームをデマルチプレックスし、かつ、適切な基本ストリームをデコードしなければならない。好ましい実施形態において、通信リンク166に接続されたデバイスは、IPアドレスまたはMACアドレス等の固有のアドレスを有する。これらは、メッセージの受信側および送信側(source)の両方を識別するために用いられる。ネットワークコントローラ234は、通信リンク166に接続されたデバイスのアドレステーブル等のテーブルを含むメモリ238を備える。ある実施形態において、アドレステーブルは、デバイスのタイプを識別するための各アドレスと関連したデバイス情報をさらに含む。例えば、衛星信号受信器214(A)のアドレスは、「受信器」等のデバイス情報と関連付けられ、サブネットワークコントローラ236のデバイス情報は、「コントローラ」である。この場合、ネットワークコントローラ234は、ネットワークコントローラにメッセージを送信するデバイスのネットワーク機能を決定するために、アドレステーブルを用い得る。ある実施形態において、メモリ238は、DHCT110のアドレステーブルをさらに含む。DHCT110の各々のアドレスは、静的または動的に割り当てられ得る。
【0034】
新しいデバイスが通信リンク166に接続される場合、あるいは、新しいDHCT110がサブ分散ネットワーク160に接続されるまたは、直接的もしくは間接的にヘッドエンド102に接続される場合はいつでもアドレステーブルが更新される。ある実施形態において、アドレステーブルの更新は、手動で実行される。当業者は、新規に接続されたデバイスのアドレスを含むためにアドレステーブルを手動で更新する代わりに、新規に接続されたデバイスがネットワークコントローラ234にテスト送信して応答を求める(ping)自己駆動型システム(self−actuating system)があることを認識している。ネットワークコントローラ234にテスト送信して応答を求めた後、アドレステーブルは、コントローラ234によって自動的に更新される。
【0035】
好ましい実施形態において、サブネットワークコントローラ234は、内部にアドレステーブルが格納されたメモリ238をさらに含む。サブネットワークコントローラ236のアドレステーブルは、通信リンク166(B)に接続された各デバイスの固有のアドレスを含み、サブネットワークコントローラ236のアドレステーブルは、通信リンク166(B)に別のデバイスが接続された場合はいつでも更新される。これに代わる実施形態において、サブネットワークコントローラ236のアドレステーブルは、ハブ104に接続されたDHCT110のアドレスをさらに含む。別の実施形態において、ネットワークコントローラ234のアドレステーブルは、DBDS100におけるデバイスのすべてのシステムワイドアドレステーブルであり、サブネットワークコントローラ236のアドレステーブルは、DBDS100内のデバイスのいくつか、またはすべてを含み得る。
【0036】
(ネットワークマップ)
DBDS100を適切にマネージメントし、かつ、分散処理を提供するために、ネットワークコントローラ234および/またはサブネットワークコントローラ236が、ネットワークトランスポートストリームのマップを有することが望ましい。コンテンツプロバイダ114は、トランスポートストリームをDBDS100に提供するが、コンテンツプロバイダ114からのトランスポートストリームは、ネットワークトランスポートストリームではない。この開示のために、ネットワークトランスポートストリームは、衛星信号受信器214、サーバ216、MQAM230、またはBIG224等であるが、これらに限定されないDBDS100内のデバイスから送信されたトランスポートストリームである。
【0037】
ネットワークコントローラ234のネットワークトランスポートストリームマップは、特に、ヘッドエンド102、およびこのヘッドエンド102に直接接続されたノード106等のネットワークコントローラ234によって直接制御されるネットワークのブランチ内のネットワークトランスポートストリームのマップ、DBDS100の任意の部分にわたるネットワークトランスポートストリームのマップ、あるいは、DBDS100全体にわたるネットワークトランスポートストリームのマップのいずれかであり得る。同様に、サブネットワークコントローラ236のネットワークトランスポートストリームマップは、ハブ104内のネットワークのブランチ等のDBDS100の任意の部分、あるいはDBDS100全体のためのものであり得る。さらに別の実施形態において、ネットワークトランスポートストリームマップは、ノード106およびDHCT110に向かって、ネットワークツリーの下方にわたって伸びる。
【0038】
図3を参照して、明瞭にするために、ネットワークトランスポートストリーム250(A)の簡単な説明が以下に提供される。MPEGトランスポートストリームを表すネットワークトランスポートストリーム250(A)は、複数のMPEGパケット300で構成される。MPEGパケット300の各々は、ヘッダ302およびペイロード304を有する。ヘッダ302は、パケットを識別するために用いられるパケット識別子(PID)を含む。0のPID値によって識別される、PAT(program association table)等の特定のパケットは、予約されたPID値を有する。PATは、プログラムの基本ストリームのPID値を識別するために用いられる、PMT(program map table)にプログラムを関連付けるために用いられる。例えば、図3に示される例示的PATは、プログラム番号16を256のPID値を有するPMTパケットに関連付ける。一般に、プログラムは、複数の基本ストリームで構成され、トランスポートストリーム250におけるこれらの基本ストリームの各々は、固有のPID値をリスト化する。図3に示される例示的PMTは、基本ストリームおよび、これらのそれぞれのPID値を有する。MPEGトランスポートストリームに関するさらなる詳細は、「System And Method for Multicasting Packets In A Subscriber Network」(2001年4月30日出願)と称される、米国特許出願シリアル番号第09/845,510号(アトーニードケット番号第A−6684/191910−1790)に見出され得る(この出願は、参考のため、本明細書中にその全体が援用される)。各MPEGトランスポートストリームは、PID0のPATの一部分であるトランスポートストリーム識別子(TSID)を有する。図3に示される例示的PATにおいて、トランスポートストリーム250(A)は、値「A」によって識別される。通常、トランスポートストリームと関連したTSIDは、0〜8191の間の数値である。これに代わる実施形態において、トランスポートストリームのTSIDは、所定のパケット300のヘッダ302またはペイロード304に含まれ得る。例えば、1のPID値は、CAT(conditional access table)のために予約され、これは、プログラムのアクセスおよび暗号化に関する情報を含み、これに代わる実施形態において、CATは、TSIDを含み得る。トランスポートストリームのTSIDは、(1)TSID値を含むパケットのPID値と、(2)パケット内のTSIDのロケーションとを知ることによって決定され得る。従って、TSIDがPAT(PID=0)にあるか、CAT(PID=1)にあるか、または、その他の所定のパケットにあるかは問題でない。
【0039】
図4を参照して、ネットワークトランスポートストリームマップ400は、ヘッドエンド102およびハブ104内のネットワークトランスポートストリーム250、252および254、ならびにトランスポートストリームデバイスをマッピングする。トランスポートストリームマップ400に示される各トランスポートストリームデバイスは、ネットワークトランスポートストリームソースまたはネットワークトランスポートストリームハンドラである。この開示のために、ネットワークトランスポートストリームソースは、ネットワークトランスポートストリームが発信されるDBDS100におけるデバイスである。他のネットワークストリームソースは、アプリケーションサーバ216、エンコーダ218、およびゲートウェイ226を含むが、これらに限定されない。
【0040】
好ましい実施形態において、各ネットワークトランスポートストリームソースは、所定のTSIDを有するネットワークトランスポートストリームとしてのコンテンツを受信し、かつ、このコンテンツを送信するように適応する。コンテンツは、入力TSIDを有するトランスポートストリームとして、ネットワークトランスポートストリームソースにて受信されることが多い。この場合、ネットワークトランスポートストリームソースは、所定のTSID(この所定のTSIDは、入力TSIDと異なってもよいし、異ならなくてもよい)に入力TSIDを再マッピングし、ネットワークトランスポートストリームとして受信されたコンテンツを送信するように適応する。ネットワークトランスポートストリームソースは、通常、ネットワークコントローラ234、またはサブネットワークコントローラ236等のコントローラと通信し、このコントローラは、ネットワークトランスポートストリームのTSIDを決定する。
【0041】
DBDS100は、BIG224およびMQAM230を含むが、これらに限定されないネットワークトランスポートストリームハンドラをさらに備え、これらは、少なくとも1つのネットワークトランスポートストリームを受信し、かつ、少なくとも1つのネットワークトランスポートストリームを送信するように適応する。好ましい実施形態において、各ネットワークトランスポートストリームハンドラは、出力ネットワークトランスポートストリームのTSID(入力ネットワークトランスポートストリームのTSID値と異なってもよいし、異ならなくてもよい)を所定の値にマッピングするために必要なロジックを含む。例えば、MQAM230(A)は、ネットワークトランスポートストリーム254(A)のTSID402を値「H」〜値「Z」にマッピングし得る。一般に、ネットワークトランスポートストリームハンドラは、ネットワークコントローラ234、またはサブネットワークコントローラ236等のコントローラと通信し、このコントローラは、ネットワークトランスポートストリームのTSIDを決定し、このネットワークトランスポートストリームハンドラは、コントローラからのメッセージに応答して、TSIDを再マッピングする。
【0042】
ネットワークトランスポートストリームマップ400において、ヘッドエンド102およびハブ104のデバイスは、以下のティアレベルに分類される。すなわち、第1のティアレベルは、ソースティアであり、第2のティアレベルは、中間ティアレベルであり、最後のティアレベルは、出力ティアレベルである。この開示のために、出力ティアデバイスは、ネットワークトランスポートストリームがDHCT110によって受信される前に、ネットワークトランスポートストリームを受信するための最後のネットワークトランスポートストリームハンドラである。従って、図2を参照して、コンバイナ232は、MQAM230からネットワークトランスポートストリームを受信するが、これらは、トランスポートストリームマップに含まれない。なぜなら、コンバイナ232は、トランスポートストリームハンドラではなく、すなわち、コンバイナ232は、TSID402をマッピングし得ないからである。トランスポートストリームマップ400は、出力ティアデバイスのすべてがMQAMであることを示すが、当業者は、トランスポートストリームを受信(およびマッピング)する最新のデバイスであり得る他のデバイスを認識し、かつ、すべてのこのような他のデバイスは、本発明の範囲に含まれることが意図されることに留意されたい。他の出力ティアトランスポートストリームハンドラは、QAM変調器および連続変調器を含むが、これらに限定されない。さらに、中間ティアデバイスは、BIG224、telecoインターフェースユニット(図示せず)、ならびに、sonet送信器およびsonet受信器を含むが、これらに限定されない。
【0043】
ソースティアデバイスと出力ティアデバイスとの間に中間ティアデバイスが挿入される。中間ティアデバイスは、DBDS100に含まれるネットワークトランスポートストリームハンドラ(出力ティアデバイスではない)を備える。例示的なトランスポートストリームマップ400において、BIG244は、ネットワークトランスポートストリーム250(A)〜250(C)を受信し、かつ、「G」の値を有するTSID402によって識別されたネットワークトランスポートストリーム252を出力ティアデバイスMQAM230(A)に送信する。サブ中間ティアレベルが存在し得ること、すなわち、いくつかの中間ティアデバイスが、連続的に相互接続され得ることが理解されるべきである。例えば、これに代わるネットワークにおいて、BIG224は、トランスポートストリーム252を(出力ティアデバイスではない)別のトランスポートストリームハンドラ(図示されず)に送信する。この場合、他のトランスポートストリームハンドラは、BIG224を有する中間ティアレベルと出力ティアレベルとの間のサブ中間ティアレベルとの間のサブ中間ティアレベルに分類される。好ましい実施形態において、ネットワークトランスポートストリーム250(A)〜250(H)、252、および254(A)〜254(L)の各々は、固有のTSID402を有する。トランスポートストリームマップ400の使用、およびこれが生成される態様は、後述される。
【0044】
本発明のロジックは、ハードウェア、ソフトウェア、ファームウェア、またはこれらの組み合わせで実現され得る。好ましい実施形態において、ロジックは、メモリに格納され、かつ、適切な命令実行システムによって実行されるソフトウェアまたはファームウェアで実現される。ハードウェアで実現された場合、これに代わる実施形態として、ロジックは、データ信号の論理機能を実現するロジックゲートを有する別個のロジック回路(単数または複数)、適切な組み合わせロジックゲートを有する特定用途向けIC(ASIC)、プログラマブルゲートアレイ(単数または複数)(PGA)、フィールドプログラマブルゲートアレイ(FPGA)等の技術(これらのすべては当業者に周知である)のいずれか、またはこれらの組み合わせで実現され得る。
【0045】
任意のプロセスの説明またはフローチャートのブロックは、モジュール、セグメント、あるいは、特定の論理関数またはプロセスのステップを実行する1つ以上の実行可能命令を含むコードの一部分として理解されるべきである。さらに、別の実施が、本発明の好ましい実施形態の範囲に含まれる。本発明では、本発明の分野において通常の技術を有する当業者によって理解されるように、関連する機能に応じて、実質的に同時か、または逆の順序を含む、図示されたか、または議論された順序に関わらず、関数が実行され得る。
【0046】
図5A、図5B、および図5Cを参照すると、ネットワークトランスポートストリームマップ400を作成する例示的なステップ500が示される。通常のDBDS100では、ネットワークコントローラ234が十分に利用され、従って、通常、DBDS100を動作させ、かつ維持するための処理を可能な限り十分に分散させることが望ましい。好ましい実施形態では、各コントローラ(ネットワークコントローラ234またはサブネットワークコントローラ236またはデバイスコントローラ(図示されない)のいずれか)は、ネットワークトランスポートストリームマップ400を作成するネットワークツリーのそれぞれの枝内のデバイスに対してステップ500を実行する。ネットワークコントローラ234は、ヘッドエンド102のネットワークツリーの枝をマッピングし、サブネットワークコントローラ236は、ハブ104のネットワークトランスポートストリームの枝をマッピングする。例えば、サブネットワークコントローラ236は、衛生信号受信機214(C)およびサーバ216(B)をソースティアデバイスとしてマッピングし、かつMQAM230(C)を出力ティアデバイスとしてマッピングする。別の実施形態では、ネットワークコントローラ234は、ネットワーク全体に対してステップ500を実行する。さらに別の実施形態では、サブネットワークコントローラ236は、DBDS100の複数の枝に対してステップ500を実行する。
【0047】
ステップ502において、ネットワークコントローラ234および/またはサブネットワークコントローラ236は、開始ネットワークトランスポートストリームマップ(INTSM)メッセージをDBDS100のデバイスに送信して、トランスポートストリームマップ400の作成を開始する。好ましい実施形態では、ネットワークコントローラ234は、サブネットワークコントローラ236を含む通信リンク166(A)に接続されるデバイスにINTSMメッセージを送信する。サブネットワークコントローラ236がINTSMメッセージを受信する時、サブネットワークコントローラ236は、通信リンク166(B)に接続されるハブ104内のデバイスにINTSMメッセージを送信する。別の実施形態では、ネットワークコントローラ234は、通信リンク166に接続される全てのデバイスにISNTMメッセージを送信する。さらに別の実施形態では、ヘッドエンド102に直接的または間接的に接続されるDHCT110は、帯域外通信によってINTSMメッセージを受信し、ネットワークトランスポートマップ400に含まれる。
【0048】
好ましい実施形態では、各ネットワークトランスポートストリームソースおよび各ネットワークトランスポートストリームハンドラは、INTSMメッセージを送信したコントローラに図6に示されるネットワークメッセージ600を送信することによって、INTSMメッセージに応答する。例えば、衛生信号受信機214(C)、サーバ216(B)、およびMQAM230(C)のそれぞれが、サブネットワークコントローラ236にネットワークメッセージ600を送信し、衛生信号受信機214(A)およびMQAM230(A)のようなヘッドエンド102のデバイスが、ネットワークコントローラ234にネットワークメッセージ600を送信する。
【0049】
図6を参照して、INSTMメッセージに応答して送信されるネットワークメッセージ600は、デバイスタイプフィールド602、出力TSIDフィールド604、入力TSIDフィールド606、およびネットワークステータスフィールド608を含む。デバイスタイプフィールド602は、ネットワークメッセージ600を送信しているデバイスのタイプを示す。可能なデバイスのタイプの表示は、トランスポートストリームソース、トランスポートストリームハンドラ、衛生信号受信機、サーバ、ビデオオンデマンドサーバ、ゲートウェイ、MQAM、変調器、DHCT等を含むが、これらに限定されない。デバイスタイプフィールド602はまた、デバイスを識別するためのデバイスに関連するデバイス識別子を含み得る。例えば、衛生信号受信機214(A)〜214(C)のデバイスタイプフィールド602は、それぞれ「reciever_1」「reciever_2」および「reciever_3」であり得る。尚、複数の出力トランスポートストリームを送信するデバイスは、それぞれの出力ネットワークトランスポートストリームに対してネットワークメッセージ600を返す。例えば、MQAM230(A)は、4つの出力ネットワークトランスポートストリーム254(A)〜254(D)を送信し、従って、MQAM230(A)は、4つのネットワークメッセージ600を送信する。好ましい実施形態では、各ネットワークメッセージ600は、異なるデバイスタイプフィールド602を有し、この異なるデバイスタイプフィールド602は、識別するために利用される。例えば、MQAM230(A)からの第1のネットワークメッセージ600は、デバイスタイプフィールド602として「MQAM_1.1」を有し得、MQAM230(A)からの第4のネットワークメッセージは、デバイスタイプフィールド602として「MQAM_1.4」を有し得る。複数のトランスポートストリームを送信するデバイスについては、デバイスタイプフィールド602は、「.1」「.4」等の付属の送信機識別子を有する「MQAM_1」のようなデバイスインジケータとみなされ得る。同様の形式で、MQAM230(B)は、「MQAM_2.1」〜「MQAM2.4」の範囲のデバイスタイプフィールド602を有する4つのネットワークメッセージ600を有したINSTMメッセージに応答し得る。
【0050】
出力TISDフィールド604は、出力ネットワークトランスポートストリームのTSID値を示す。DHCT110から受信したネットワークメッセージの出力TSIDフィールド604は、nullである。
【0051】
入力TSIDフィールド606は、デバイスによって受信された入力ネットワークトランスポートストリームの数、および各受信されたネットワークトランスポートストリームのTSID値を示す。従って、各ネットワークトランスポートストリームソースについては、入力の数は0であり、各ネットワークトランスポートストリームハンドラについては、入力の数は少なくとも1である。トランスポートストリームソースからのネットワークメッセージの入力TSIDフィールド606は、nullである。
【0052】
ネットワークステータスフィールド608は、利用可能な帯域、ビットエラー率(BER)、喪失したリンク、帯域幅の余分な割り当て、ならびに入力が良好か入力に問題があるか等のネットワーク情報を含むが、これらに限定されない。コントローラは、ネットワークステータス情報を利用して、ネットワークをモニタリングし、かつ動的に制御し得る。
【0053】
図5を再度参照して、ステップ504において、コントローラは、コントローラによって制御されるネットワークトランスポートストリームの枝のネットワークトランスポートストリームソースおよびネットワークトランスポートストリームハンドラから、ネットワークメッセージ600を受信する。コントローラは、各受信されたネットワークメッセージ600のデバイスタイプフィールド602を読み、ソースティア、中間ティア、および出力ティアデバイスに対応するグループへメッセージをソートする。好ましい実施形態では、コントローラは、メモリ238に格納されるテーブルを有し、このテーブルは、デバイスタイプフィールド602によって示される各デバイスのタイプを、トランスポートストリームマップ400のティアに関連付ける。例えば、このテーブルは、衛生信号受信機214およびサーバ216をネットワークトランスポートストリームソースとして、MQAMを最後のティアデバイスとして、およびBIGを中間ティアデバイスとして関連付ける。別の実施形態では、コントローラは、入力TSIDフィールド606をnullフィールドとするネットワークメッセージを検索することによって、どのネットワークメッセージ600がソースティアデバイスからのものであるかを判定する。
【0054】
次のステップ506では、コントローラは、各ネットワークトランスポートストリームソースからのネットワークメッセージ600の出力TSIDフィールド604を読み、ネットワークトランスポートストリームソースからの2つ以上のネットワークトランスポートストリーム250が、それぞれのTSID402として同一の値を有するかどうかを判定する。このことを開示する上で、サブ分散ネットワーク160またはDBDS100の2つ以上のネットワークトランスポートストリームが同一のTSID値を有する場合、同一のTSID値を有するネットワークトランスポートストリームは、衝突していると判断される。ソースティアデバイスからのTSID402値が衝突しない場合は、コントローラは、ステップ512に進み、衝突する場合は、コントローラは、ステップ508に進む。
【0055】
衝突するTSIDを有する2つ以上のネットワークトランスポートストリームソースが存在する場合、ステップ508において、コントローラは、衝突するネットワークトランスポートストリームを出力するネットワークトランスポートストリームソースの少なくとも1つにTSID再マッピングメッセージを送信する。TSID再マッピングメッセージを受信したデバイスは、TSID402値を再マッピングメッセージによって示される新しい値に再マッピングすることによって応答する。例えば、図4に示されるネットワークトランスポートストリーム250(A)および250(F)のTSID402値が同一であれば、ネットワークコントローラ234は、受信機214(A)またはゲートウェイ226(B)のいずれかに再マッピングメッセージを送信する。再マッピングメッセージは、TSID402値を新しい値に再マッピングすることをデバイスに命令し、新しい値は、ネットワークトランスポートストリーム250(B)〜250(F)のTSID402値と異なるように選択される。ネットワークコントローラ234が、ヘッドエンド102のみをマッピングする場合、新しいTSID値は、ネットワークトランスポートストリーム250(B)〜250(H)と関連するTSID402とは異なる。衝突するTSIDを再マッピングした後は、ネットワークトランスポートストリーム250と関連するTSID402の各値は、互いに異なる。
【0056】
好ましい実施形態では、ネットワークトランスポートストリームハンドラは、それぞれの入力トランスポートストリームをモニタリングし、トランスポートストリームの変更に応答する。以下により詳細が説明されるように、少なくとも1つのネットワークトランスポートストリームハンドラは、ネットワークトランスポートストリームソースが衝突するTSIDを再マッピングする場合に、ネットワークメッセージ600をコントローラに送信する。例えば、衛生信号受信機214(A)が、ネットワークトランスポートストリーム250(A)のTSID402値を「A」から「Z」まで再マッピングする場合、BIG224は、トランスポートストーム250(A)のTSID402値の変更に気づいて、ネットワークの現在のステータスに反映させる別のネットワークメッセージ600をネットワークコントローラ234に送信することによって応答する。BIG224からのネットワークメッセージ600の入力TSIDフィールド606は、それぞれのTSID402として値「Z」、「B」、および「C」を有する3つの入力ネットワークトランスポートストリーム250(A)〜250(C)を示す。従って、コントローラがネットワークトランスポートストリームソースに再マッピングメッセージを送信した後に、ステップ510において、コントローラは、ネットワークトランスポートストリームハンドラから少なくとも1つのネットワークメッセージ600を受信する。
【0057】
次に、ステップ512では、コントローラは、ネットワークトランスポートストリームソースのそれぞれのネットワークメッセージ600の出力トランスポートフィールド604にデバイスタイプフィールド602を関連付けることによって、ソースティアレベルのトランスポートストリームマップ400を生成/更新する。
【0058】
トランスポートストリームマップ400のソースティアを生成した後、コントローラはステップ514に進む。ステップ514では、ネットワークメッセージ600のいずれが、中間ティアデバイスから生じているのかについて判定する。さらに、コントローラは、メモリ238に格納されるテーブルを利用して、存在するのであれば、どのネットワークメッセージ600が、中間デバイスから生じているのかを判定する。中間ティアデバイスが存在する場合、コントローラは、ステップ516に進み、存在しなければ、コントローラは、ステップ524に進む。
【0059】
ステップ516では、コントローラは、中間ティアデバイスからの各ネットワークメッセージの出力TSIDフィールド604を読み、衝突するTSID402を調べる。さらに、中間ティアデバイスからの2つ以上のネットワークトランスポートストリームが、衝突するTSID402を有する場合、コントローラは、衝突するTSID402を有する衝突する中間ティアデバイスの少なくとも1つに、TSID再マッピングメッセージを送信する。さらに、中間ティアデバイスからのネットワークトランスポートストリーム252が、ソースティアデバイスからのネットワークトランスポートストリーム250のTSID402と衝突するTSID402値を有する場合、中間ティアデバイスは、再マッピングメッセージを送信される。例えば、ヘッドエンド102において、BIG224からのネットワークトランスポートストリーム252と関連するTSID402が、ゲートウェイ226(B)からのネットワークトランスポートストリーム250(F)と関連するTSID402値と同一である「F」という値を有する場合、ネットワークコントローラ234は、BIG224に再マッピングメッセージを送信して、その衝突するTSIDを再マッピングする。
【0060】
さらに、TSID402が再マッピングされるネットワークトランスポートストリームを受信するネットワークトランスポートストリームハンドラは、ネットワークメッセージ600をコントローラに送信することによって応答する。従って、ステップ520において、コントローラは、出力ティアレベルデバイスから少なくとも1つの新しいネットワークメッセージ600を受信する。新しいネットワークメッセージ600は、再マッピングされたTSID402の変更を示す。
【0061】
コントローラは、ネットワークメッセージ600を受信した後、ステップ522において、中間デバイスの各デバイスタイプフィールド602を出力ネットワークトランスポートストリーム252の入力TSID402および出力TSID402と関連付けることによって、トランスポートストリームマップ400を更新する。中間ティアレベルデバイスをその入力TSIDと関連付けることによって、デバイスは、ソースティアレベルデバイスに関連付けられる。なぜなら、1つのソースティアデバイスのみが、その特定のTSIDを有するトランスポートストリームを出力するからである。
【0062】
ステップ516を再度参照して、コントローラは、衝突するTSID402を有する中間デバイスが存在しないと判定した場合、ステップ522に進んで、中間ティアデバイスをそれぞれに関連する出力TSID402および入力TSID402に関連付ける。
【0063】
中間ティアデバイスをマッピングした後に、このようなマッピングが必要である場合、コントローラは、ステップ524に進む。ステップ524では、コントローラは、出力ティアデバイスから各ネットワークメッセージ600の出力TSIDフィールド604を読み、衝突するTSID値を調べる。コントローラは、ネットワークトランスポートストリームソースおよび中間ティアネットワークトランスポートストリームハンドラからのネットワークトランスポートストリームに既に割り当てられたTSID値の間の衝突するTSID値を、出力ティアネットワークトランスポートストリームハンドラのTSID402に対して調べる。衝突するTSIDが存在しなければ、コントローラは、ステップ528に進み、出力ティアデバイスの各デバイスタイプフィールド602を入力ネットワークトランスポートストリームの少なくとも1つのTSID402および出力ネットワークトランスポートストリームと関連するTSID402と関連付けることによって、ネットワークトランスポートストリームマップ400を更新する。MQAM230等の(これらに限定されない)いくらかの出力ティアデバイスは、1つより多い入力TSID402に関連付けられる。
【0064】
一方、TSIDが衝突する場合、ステップ526において、コントローラは、TSID再マッピングメッセージを出力ティアネットワークトランスポートストリームハンドラに少なくとも1つに送信することによって、ネットワークトランスポートストリーム254の衝突するTSIDの少なくとも1つを新しい衝突しない値に再マッピングする。再マッピングメッセージは、出力TSIDをコントローラによって割り当てられた値に再マッピングするように、デバイスに命令する。
【0065】
ある実施形態では、ネットワークトランスポートストリームマップ400は、DHCT110まで拡張し、DHCT110は、コントローラにネットワークメッセージ600を送信することによって、INTSMメッセージに応答するように適合される。DHCT110はまた、別のネットワークメッセージ600を送信することによって、それぞれの受信されたネットワークトランスポートストリーム254の変更に応答するように適合される。このように、この実施形態では、コントローラは、出力ティアデバイスに出力TSID値を再マッピングするように命令する時に、DHCT110から複数のネットワークメッセージ600を受信する。このネットワークメッセージ600は、DHCTを出力ティアデバイスに関連させるために、コントローラによって利用される。
【0066】
再マッピングメッセージを送信した後、コントローラは、ステップ528に進み、ネットワークメッセージマップ400を更新し、それにより、出力ティアレベルの各ネットワークトランスポートストリームハンドラを少なくとも1つの入力TSID値および出力TSID値に関連付ける。さらに、尚、MQAM230は、4つの出力トランスポートストリームデバイス、すなわち、4つのQAM変調器を有し、MQAM230は、各QAM変調器に対してネットワークメッセージ600を提供する。従って、MQAM230の各QAM変調器は、トランスポートストリームマップ400に現れる。各出力ティアレベルのデバイスは、入力TSIDによって、上流のデバイスに関連付けられる。
【0067】
ある実施形態では、コントローラは、DBDS100のネットワークトランスポートストリームソースおよびハンドラの全てに対して、ステップ502から528を実行する。この場合、ネットワークトランスポートストリームマップは、ステップ528で完了する。しかし、好ましい実施形態では、処理は、ネットワークコントローラ234とサブネットワークコントローラ236との間で分散され、この場合、ステップ528の後、各コントローラは、コントローラによって制御されるトランスポートストリームネットワークの枝をマッピングする。例えば、ステップ528を完了した後、ネットワークコントローラ234は、ヘッドエンド102をマッピングし、サブネットワークコントローラ236は、ハブ104のネットワークトランスポートストリームをマッピングする。
【0068】
ここで図5Bを参照して、ステップ532において、サブネットワークコントローラ236は、ネットワークトランスポートストリームマップ400の一部分をネットワークコントローラ234に送信する。この時点で、サブ分散ネットワーク160の各ネットワークトランスポートストリームは、各ネットワークトランスポートストリームに割り当てられた固有のTSIDを有するが、異なるサブ分散ネットワーク160のネットワークトランスポートストリームの間、またはヘッドエンド102とサブ分散ネットワーク160との間のTSIDは、衝突し得る。ネットワークコントローラ234のような、ネットワークトランスポートストリームマップ400を作成する最終的な責任を負うコントローラは、衝突するTSIDを調べる。衝突する場合、ステップ534において、サブネットワークコントローラは、ネットワークコントローラからTSID再マッピングメッセージを受信する。一方、サブネットワークコントローラ236は、再マッピングメッセージを受信しない場合は、ハブ104のネットワークトランスポートストリームマップ400の一部分を作成した状態で、終了する。
【0069】
図5Cを参照して、ステップ536では、ネットワークコントローラ234は、各サブネットワークコントローラ236からネットワークトランスポートストリームマップ400の一部分を受信する。その後、ステップ538において、ネットワークコントローラは、衝突するTSID402について、ネットワークトランスポートストリームマップ全体を調べる。ある実施形態では、DBDS100の各ネットワークトランスポートストリームは、固有のTSID402を有する。従って、DBDS100の2つ以上のネットワークトランスポートストリームは、同一のTSID402を有する場合、ネットワークコントローラ234は、ステップ540に進み、衝突するTSID402の1つを再マッピングするための再マッピングメッセージを送信する。この再マッピングメッセージは、ネットワークトランスポートストリームソースまたはネットワークトランスポートストリームハンドラまたはサブネットワークコントローラ236に直接送信され得、その後、ネットワークトランスポートストリームソースまたはネットワークトランスポートストリームハンドラまたはサブネットワークコントローラ236は、適切なデバイスに再マッピングメッセージを送信する。再マッピングが起こった後、ネットワークコントローラ234は、ステップ542に進み、ヘッドエンド102のネットワークトランスポートストリームにおいてなされた変更を反映させるように、ネットワークトランスポートストリームマップ400を更新する。ネットワークコントローラ234は、再マッピングメッセージをサブネットワークコントローラ236に送信する場合、サブネットワークコントローラから新しいネットワークトランスポートストリームマップを受信する。この時点で、ヘッドエンド102およびハブ104に対するネットワークトランスポートストリームマップ400が、完了する。
【0070】
尚、コントローラ、サブネットワークコントローラ236、またはネットワークコントローラ234は、通常、ネットワークトランスポートストリームのTSID402を再マッピングすることによって、ネットワークトランスポートストリーム、ネットワークトランスポートストリームソースおよびネットワークトランスポートストリームハンドラをあいまいなところなくマッピングし得る。ここで図7Aを参照して、例えば、ネットワークトランスポートストリームソース702および704、中間トランスポートストリームハンドラ706、708、710、712および714、ならびに出力トランスポートストリームハンドラ716、718、720、722および724を有するネットワーク700を考えられたい。衛生信号受信機のようないくつかのネットワークトランスポートストリームソースは、TSIDを再マッピングするように構成されないこと、および/またはINSTMメッセージに応答するように構成されないことがあり得る。しかし、ネットワークトランスポートストリームハンドラの全てを含む部分的なネットワークトランスポートストリームマップは、依然として作成され得る。
【0071】
図7Aにおいて、コントローラが、デバイスがどのように接続されるのかをまだ決定していないため、ネットワーク700のデバイスは、破線で接続されるように図示される。図7Aでは、さらに、トランスポートストリームの初期TSID値が示される。この例示的なネットワークでは、ネットワーク700のデバイスのタイプの詳細は、重要ではない。コントローラは、最初に、図7Aに示される全てのデバイスにINTSMメッセージを送信する。この例では、ネットワークトランスポートストリームソース704は、INTSMメッセージまたは再マッピングメッセージに応答しないか、あるいは応答することができない。
【0072】
この例では、コントローラは、デバイス706以外の図7Aに示される全てのデバイスからネットワークメッセージ600を受信する。コントローラは、受信されたネットワークメッセージ600からテーブル750を作成する。テーブル750は、各ネットワークトランスポートストリームデバイスをそのデバイスのタイプ752、少なくとも1つの入力ネットワークTSID754、および出力TSID756と関連付ける。
【0073】
コントローラは、各受信されたネットワークメッセージ600のデバイスタイプフィールド602、出力TSIDフィールド604、および入力TSIDフィールド606を読み、各デバイスをそのそれぞれのデバイスタイプ752、入力TSID754、および出力TSID756に関連付ける。例えば、デバイス702(A)からのネットワークメッセージ600は、それがタイプS_1のデバイス、すなわちソースタイプのデバイスであること、およびその出力ネットワークトランスポートストリームは、AというTSID値を有することを示す。好ましい実施形態では、ネットワークトランスポートストリームソースからのネットワークメッセージ600の入力TSIDフィールド606は、nullである。しかし、別の実施形態では、ネットワークトランスポートストリームソースは、ネットワークメッセージ600のネットワーク入力TSIDフィールド606のそれぞれの入力トランスポートストリームに対するTSIDを含む。この場合、テーブル750は、ネットワークトランスポートストリームソース702(A)〜702(C)に対する入力TSID値754(A)を含み、ネットワークトランスポートストリームソース702(A)〜702(C)は、デバイスタイプS_1、S_2、およびS_3にそれぞれ関連付けられる。
【0074】
尚、コントローラは15個のデバイスからネットワークメッセージ600を受信し、ネットワークトランスポートストリームを出力する16個のデバイスが存在する(デバイス706は、3つのデバイスとして計算される。なぜなら、デバイス706は、その各出力ネットワークトランスポートストリームに対してネットワークメッセージを送信するからである。)。この例示的なネットワークでは、デバイス704は、INTSMメッセージに応答して、ネットワークメッセージ600を送信せず、結果的に、テーブル750には現れない。
【0075】
テーブル750を作成した後、コントローラは、テーブル750のデバイスタイプ752に関連する各デバイスの各出力ネットワークトランスポートストリームに対して、新しい固有のTSIDを決定する。コントローラは、テーブル750にリストアップされるデバイスタイプを有する各デバイスに再マッピングメッセージを送信する。デバイス706のような複数のデバイスタイプを有するデバイスは、それぞれの出力ネットワークトランスポートストリームに対する再マッピングメッセージを受信する。所与のデバイスに送信された再マッピングメッセージは、その所与のデバイスからの出力ネットワークトランスポートストリームに対する新しい固有のTSIDを示す。
【0076】
その後、コントローラは、出力ネットワークトランスポートストリームの再マッピングされた出力TSID756(B)を反映させるようにテーブル750を更新する。さらに、好ましい実施形態では、ネットワークトランスポートストリームハンドラおよびネットワークトランスポートストリームソースは、それぞれの出力ネットワークトランスポートストリームのTSIDを変更することによって、再マッピングメッセージに応答するように適合される。ネットワークトランスポートストリームハンドラは、ネットワークメッセージ600をコントローラに送信することによって、それぞれの入力ネットワークトランスポートストリームの変更に応答するように適合される。再マッピングメッセージに応答してコントローラに送信された各ネットワークメッセージ600は、入力TSIDフィールド606を含み、入力TSIDフィールド606は、入力ネットワークトランスポートストリームの現在のTSIDを示す。コントローラは、ネットワークトランスポートストリームメッセージ600に応答した各デバイスが、その新しい入力TSID754(B)に関連付けられるように、テーブル752を更新する。このように、コントローラが、デバイス702(A)に、その出力ネットワークトランスポートストリームのTSIDを「A」から「E」までに再マッピングする再マッピングメッセージを送信する時、デバイス706は、3つのネットワークメッセージ600(その各出力ネットワークトランスポートストリームに対するネットワークメッセージ)をコントローラに送信することによって、その変更に応答する。デバイス706からの各ネットワークメッセージは、「E」というTSID値を有する入力ネットワークトランスポートストリームを受信することを示す。コントローラは、ネットワークメッセージ600更新テーブル750を読み、現在の入力TSID754(B)をデバイスタイプ752に関連付ける。
【0077】
コントローラが、テーブル750を用いることによりネットワークトランスポートストリームソースおよびハンドラを連続して接続することは簡単である。なぜなら、各ネットワークトランスポートストリームは、固有のTSIDを有するからである。ソースティアデバイスからスタートして、出力TSID756(B)を入力TSID754(B)と整合させることにより、図7Cに示されるネットワークトランスポートストリームマップを作成することができる。例えば、デバイスタイプS_1のネットワークトランスポートストリームソースであるデバイス702(A)は、「E」というTSID値を有するトランスポートストリームを送信する。デバイスタイプD_1.1、D_1.2、およびD_1.3により識別される3つのコンポーネントを備えるデバイス706は、デバイス702(A)から下流になければならない。なぜなら、デバイス706は、「E」というTSID値を有するトランスポートストリームを受信するからである。テーブル750から、デバイス702(A)が、唯一のデバイス706の入力ソースであることも、判定され得る。さらに、デバイス708は、デバイス702(B)および702(C)からすぐ下流にあることも、判定され得る。なぜなら、デバイス708は、「F」および「G」というTSIDを有するネットワークトランスポートストリームを受信するからである。このように、テーブル750は、ネットワークトランスポートストリームソース702、およびそこから下流の全てのネットワークトランスポートストリームハンドラからのトランスポートストリームをマッピングするために利用され得る。
【0078】
コントローラは、出力TSID値756(B)のいずれとも整合しない入力TSID値を有するデバイス724のようなデバイスを発見した時、初期INTSMメッセージに応答しなかったトランスポートストリームソースが存在することを知っている。コントローラは、マップが不完全であることをシステムのオペレータに送信して、警告し得る。しかし、コントローラは、デバイス724に接続されるデバイスのタイプを知らない場合でさえ、「B」というTSID値を有するトランスポートストリームを出力するデバイスが存在することを知っている。この別の実施形態では、オペレータは、手動でデータを入力してネットワーク700のネットワークトランスポートストリームマップを完了させることにより、警告に応答する。
【0079】
ネットワークトランスポートストリームマップ400は、ネットワークトランスポートストリーム250、252、および254の現在のTSID値を反映するダイナミックマップである。各ネットワークトランスポートストリームハンドラは、ネットワークメッセージをそれぞれのコントローラに送信することによって、その入力ネットワークトランスポートストリームの変更に応答する。コントローラは、動的にネットワークトランスポートストリームマップ400を更新する。ネットワークトランスポートストリームマップ400は、それぞれのソースからそれぞれの出力ティアレベルデバイスまたはDHCT110までのネットワークトランスポートストリームをマッピングする。ネットワークトランスポートストリームマップは、DBDS100のオペレータによって利用され得る。ある実施形態では、「マスタ」ネットワークトランスポートストリームマップ400は、ネットワークコントローラ234のメモリ238に格納される。「マスタ」ネットワークトランスポートストリームマップは、DBDS100のメンテナンスの前にメモリ238に格納され、特に、メンテナンスの後にDBDS100のトラブルシューティングを行うために利用される。例えば、メンテナンス中に、ネットワークトランスポートストリーム252および250(E)を有する通信リンクは、MQAM230(A)がネットワークトランスポートストリーム250(E)を受信し、かつMQAM230(B)がネットワークトランスポートストリーム252を受信するように偶発的に交差して配線され、システムが混乱および混沌の中に投げ出されたと仮定されたい。従来のシステムであれば、システムのオペレータは、交差した配線の対を発見するために、ネットワークトランスポートストリームを搬送する通信リンクの全ての物理的な検査を行ったかもしれない。しかし、本発明のDBDS100システムでは、DBDS100のオペレータは、「マスタ」マップとメンテナンスの後に作成されたネットワークトランスポートストリームマップとを比較することによって、どのワイヤが偶発的に交差しているのかを決定することができる。動的なネットワークトランスポートストリームマップの別の利用が、当業者に理解される。
【0080】
通常、ネットワークデバイスは、どのデバイスが自分から上流にあり、どのデバイスが自分から下流にあるのかを知らない。さらに別の実施形態では、ネットワークコントローラ234またはサブネットワークコントローラ236のいずれかのコントローラは、ネットワークトランスポートストリームマップ400を利用して、ネットワーク情報をネットワークトランスポートストリームソースおよびハンドラに提供する。ネットワークトランスポートストリームソースおよびネットワークトランスポートストリームハンドラは、それぞれの下流のデバイスについての情報を利用して、下流のデバイスに提供されるトランスポートストリームが正確であることを保証する。非限定的な例では、BIG224は、トランスポートストリームをBIGよりも低い帯域幅を有するASI−SONET送信機(図示されない)に出力する。この場合、BIG224は、その出力をASI−SONET送信機の出力と整合させ、ASI−SONET送信機は、トランスポートストリームを操作し得る。
(トランスポートストリームハンドラ)
上述されたように、トランスポートストリームハンドラは、少なくとも1つの入力ネットワークトランスポートストリームを受信し、少なくとも1つのネットワークトランスポートストリームを出力するように適合され、出力されたネットワークトランスポートストリームの少なくとも1つの上に1つのTSIDをマッピングするように適合されるデバイスである。例示するために、ネットワークトランスポートストリームハンドラMQAM230が、図8に示される。簡単に説明すると、MQAM230は、ネットワークトランスポートストリームを受信する入力ポート806、ならびに、外付けのコントローラと通信し、かつメモリ804および送信機808のようなMQAM230のコンポーネントを制御する中央演算装置(CPU)802を含む。メモリ804は、入力ネットワークトランスポートストリームのMPEGパケット300をバッファリングするためのストレージであり、さらに、特に、トランスポートストリームを受信/送信し、TSID値をマッピングし、かつネットワークメッセージに応答するために必要とされるさまざまなステップを実行するために必要なロジックを格納するためのストレージである。別の実施形態では、メモリ804は、必要なロジックのほとんどを実装するFPGAを含む。
【0081】
送信機808は、無線周波数が出力ネットワークトランスポートストリームを変調するQAM変調器のような変調器を含む。送信機は、メモリ804からトランスポートストリームのパケットを受信し、そのパケットを送信する。
【0082】
尚、MQAM230は、例示的なネットワークトランスポートストリームハンドラであり、ネットワークトランスポートストリームソースおよび別のネットワークトランスポートストリームハンドラは、別のコンポーネント、あるいは、より多くまたはより少ないコンポーネントを含み得る。さらに、入力および出力トランスポートストリームの数は、特定のネットワークトランスポートストリームソースまたはハンドラに依存することを理解されたい。しかし、好ましい実施形態では、各ネットワークトランスポートストリームハンドラおよびネットワークトランスポートストリームソースは、CPU802および送信機808を含む。CPU802は、通信リンク166を介してネットワークコントローラ234および/またはサブネットワークコントローラ236と通信する。この通信リンク166を介して、INTSMメッセージおよびネットワークメッセージ600のようなメッセージが送信される。
【0083】
受信されたINTSMメッセージに応答して、CPU802は、図9に示されるステップ900を実行することによって応答する。CPU802およびメモリ804は、ステップ900を実行するために必要な全てのロジックを含む。MPEGパケット300から構成されるネットワークトランスポートストリームを受信し、それぞれの出力ネットワークトランスポートストリーム254に受信されたパケットをルーティングするために必要なロジックは、MQAM230(A)のロジックに含まれる。当業者は、MQAM230のロジックがさらに、出力ネットワークトランスポートストリームに対するPAT(Program Association Table)およびCAT(Conditional Access Table)のようなシステムおよび制御パケットを作成し、受信されたパケットのPID(Packet Identifier)を再マッピングするロジックを含むことが理解される。さらに、ステップ900は、MQAM230のCPU802により実施されると説明されたが、これは単なる例であり、任意のネットワークトランスポートストリームハンドラまたはネットワークトランスポートストリームソースのCPUが、ステップ900を実行するように構成され得ることを理解されたい。さらに別の実施形態では、ステップ900を実行するロジックは、MQAM230を制御するコントローラとMQAM230との間で分散される。
【0084】
ステップ902では、CPU802は、通信リンク166を介してINTSMメッセージを受信する。CPUは、入力ネットワークトランスポートストリーム250および252ならびに出力ネットワークトランスポートストリーム254のネットワークステータスを判定する。ネットワークステータスは、各ネットワークトランスポートストリームのTSID値、BER率、各出力ネットワークトランスポートストリーム254の利用可能な帯域幅、帯域幅の余分な割り当て、喪失したリンク、ならびに入力が良好か入力に問題があるか等のネットワーク情報を含むが、これらに限定されない。
【0085】
メモリ804は、このデバイスが所与のタイプのデバイスであると識別するデバイス情報を含み、さらに、このデバイスがそのデバイスタイプの特定のデバイスであることを識別する情報を含む。例えば、このデバイス情報は、MQAM230が、MOD(変調器)タイプのデバイスであり、DBDS100内の3番のMODタイプデバイスであり、かつ、4つの出力ネットワークトランスポートストリーム254(A)〜254(D)を有することを示し得る。
【0086】
ステップ904において、CPU802は、ネットワークメッセージ600を通信リンク166を介してコントローラに送信する。好ましい実施形態では、CPU802は、ネットワークトランスポートストリーム254を送信する各変調器808のネットワークメッセージ600を送信する。ネットワークメッセージ600のこのデバイスタイプフィールド602は、メッセージが関連付けられる変調器のインジケータを含む。出力TSIDフィールド604は、出力トランスポートストリームの出力TSID値を示す。
【0087】
ステップ906では、CPU802は、メモリ804にネットワーク情報を格納する。通常、格納されるネットワーク情報は、ネットワークメッセージ600に含まれるネットワーク情報のタイプを含む。メモリ804に格納されるネットワーク情報のタイプの非限定的な例は、各受信されたネットワークトランスポートストリームのTSID値、各入力ネットワークトランスポートストリーム250および252のBER、ならびにその出力ネットワークトランスポートストリーム254の利用可能な帯域幅を含む。
【0088】
好ましい実施形態では、メモリ804は、以下により詳細に説明される、動的ネットワーク情報テーブル(DNIT)を作成するロジックを含む。DNITは、ネットワークメッセージ600に含まれるネットワーク情報と同様の現在のネットワーク情報を含む。CPU802は、各出力ネットワークトランスポートストリーム254のDNITを作成し、それぞれのネットワークトランスポートストリーム254に各DNITを挿入する。好ましい実施形態では、ステップ908において、CPU802は、各出力ネットワークトランスポートストリーム254において、内部に現在のネットワーク情報を含むDNITを定期的に含む。このように、下流のデバイスは、定期的にMQAM230から現在のネットワーク情報を受信する。
【0089】
その後、ステップ910において、CPU802は、各入力ネットワークトランスポートストリーム(250および252)をモニタリングし、格納されるネットワーク情報と現在のネットワーク情報との間に差が存在するかどうかを判定する。通常、CPU802は、わずかな変更または変動に対して、閾値を超える変更についてネットワークをモニタリングしている。例えば、DBDS100のオペレータは、BER閾値を確立し得、格納されたBER値および現在のBER値の両方が、閾値の上または下にある限り、BER値は変更されなかったとみなされる。他のネットワーク情報の値は、別個の変更を有する。例えば、ネットワークトランスポートストリームのTSID値は、ネットワークトランスポートストリームのTSID値が新しい値に再マッピングされない限り、一定である。CPU802が、モニタリングされるネットワークトランスポートストリームに変更があったと判定する場合、CPU802は、ステップ904に戻り、現在のネットワーク情報を含む新しいネットワークメッセージ600をそのコントローラ(ネットワークコントローラ234またはサブネットワークコントローラ236のどちらか)に送信する。一方、変更がなければ、CPU802は、ネットワークトランスポートストリームのモニタリングを続け、定期的にDNITを送信する。
【0090】
ある実施形態では、CPU802が、モニタリングされるネットワーク値に変化があったと判定する場合、CPU802はさらに、各出力ネットワークトランスポートストリーム254に新しいDNITを含む。新しいDNITに含まれる情報は、現在のネットワーク値に反映させる。CPU802が、モニタリングされるネットワーク値の変更に応答して新しいDNITを直ちに送信しない場合でさえ、CPU802は、現在のネットワーク情報を内部に含むDNITを定期的に送信する。このように、下流のデバイスは、MQAM230の現在のネットワークステータスに反映させるDNITを受信する。
(動的ネットワーク情報テーブル)
ある実施形態では、DNITは、当業者に公知のシステムパケットに挿入される。システムパケットの非限定的な例は、MPEGトランスポートストリームのプログラム関連テーブル(PAT)パケットまたはコンディショナルアクセステーブル(CAT)またはネットワーク情報テーブル(NIT)を含むが、これらに限定されない。別の実施形態では、DBDS100のオペレータは、まだ保存されていないPID値を選択し、DNITのそのPID値を保存する。そのPID値は、その特定の保存されたPID値を有するパケットに挿入される。
【0091】
好ましい実施形態では、各ネットワークトランスポートストリームおよびネットワークトランスポートストリームハンドラは、DNITを作成するために必要なロジックを含む。さらに、各ネットワークトランスポートストリームソースおよびハンドラは、ネットワークトランスポートストリームからDNITを取り出し、取り出されたDNITを読み、かつ出力ネットワークトランスポートストリームへDNITを挿入するために必要なロジックを含む。
【0092】
ここで図10を参照して、ネットワークトランスポートストリームソースまたはネットワークトランスポートストリームハンドラのプロセッサは、例えば、DNITを作成するためのDNITの擬似コード(pseudo−code)1000のようなコードを実行する。このコードは、デバイス部分1002およびプレデバイス部分1004を含む。
【0093】
デバイス部分1002は、そのデバイスに固有の情報を生成するためのものである。通常、デバイス部分1002は、識別フィールド1006、トランスポートIDフィールド1008、ならびにデバイス情報フィールド1010およびネットワークデータフィールド1012を含む。
【0094】
識別フィールド1006は、DNITを生成するコードを実行するデバイスを識別する。ある実施形態では、識別フィールド1006に含まれる識別情報は、ネットワークメッセージ600のデバイス識別フィールド602に含まれる情報に対応する。別の実施形態では、識別フィールド1006に含まれる識別情報は、デバイスを識別するために利用され得るデバイスのIPアドレス、デバイスのMACアドレスのような任意の情報であり得るが、これらに限定されない。
【0095】
トランスポートIDフィールド1008に含まれる情報は、DNITが挿入されるネットワークトランスポートストリームのTSID値に対応する。例えば、図4を参照して、BIG224がDNITを生成する時、トランスポートIDフィールド1008は、トランスポートIDフィールド1008と関連する「G」という値を有する。なぜなら、BIG224は、DNITを「G」というTSID402を有するネットワークトランスポートストリーム252に挿入するからである。
【0096】
デバイス情報フィールド1010は、DNITを作成するデバイスのタイプ等の情報を含み得るデバイスについての情報を含み、デバイスのタイプの非限定的な例は、ネットワークトランスポートストリームソース、衛星信号受信機、エンコーダ、サーバ、VODサーバ、BIG、変調器、マルチ変調器、およびネットワークトランスポートストリームハンドラを含む。このデバイス情報フィールド1010はまた、入力ネットワークトランスポートストリームの数のようなデバイスに固有の情報を含み得る。
【0097】
好ましい実施形態では、デバイス情報フィールド1010はまた、DNITを作成するデバイスを制御するコントローラのアドレスを含む。例えば、ネットワークコントローラ234は、衛星信号受信機214(A)を制御し、サブネットワークコントローラは、サーバ216(B)を制御する。このように、衛星信号受信機214(A)からのDNITは、ネットワークコントローラ234のコントローラアドレスを含み、サーバ216(B)からのDNITは、サブネットワークコントローラ236のアドレスを含む。
【0098】
ネットワークデータフィールド1012は、DNITが挿入されるネットワークトランスポートストリームについての情報を含む。ネットワークデータフィールド1012に含まれる情報の例は、ネットワークトランスポートストリームの利用可能な帯域幅、トランスポートストリームのパケットのタイプ、DNITのネットワークトランスポートストリームへの挿入率、および受信されたパケットのビットエラー率を含むが、これらに限定されない。さらに、ネットワークデータフィールド1012は、ネットワークトランスポートストリームに含まれるデータ、オーディオ、ビデオ等のパケットのタイプについての情報を含み得る。
【0099】
DNITの擬似コード1000の上流部分1004は、上流のデバイスからの情報をDNITに含ませるために必要なロジックを含む。好ましい実施形態では、上流デバイスからの情報は、ネットワークトランスポートストリームを介して受信されるDNITに含まれる。別の実施形態では、DNITは、通信リンク166および帯域外通信(これらに限定されない)等の他の通信リンクを介して、下流のデバイスへ伝送される。
【0100】
上述されたように、好ましい実施形態では、各ネットワークトランスポートストリームソースおよび各ネットワークトランスポートストリームハンドラは、その出力ネットワークトランスポートストリームのそれぞれのDNITを出力する。このように、例えば、4つの出力ネットワークトランスポートストリームを有するMQAM230は、各出力ネットワークトランスポートストリームのDNITを出力し、各DNITは、上流の情報を含む。好ましい実施形態では、DNITは、上流のデバイスからの上流の情報を含む。ここで図4を参照して、MQAM230(A)は、BIG224およびエンコーダ218から、それぞれ2つのネットワークトランスポートストリーム252および250(D)を受信する。このように、MQAM230からのDNITは、BIG224およびエンコーダ218からの上流の情報を含む。
【0101】
図11を参照すると、例示的なDNIT1100(A)は、MQAM230(A)のMOD_1.1からの出力ネットワークトランスポートストリームである、ネットワークトランスポートストリーム254(A)に含まれる。DNIT1100(A)は、デバイスに固有のサブテーブル1102(A)および上流のサブテーブル1104(A)を含む。
【0102】
デバイスに固有のサブテーブル1102(A)は、DNIT1100(A)が由来するデバイスについての情報(この例では、MOD1.1)を含む。デバイスに固有のサブテーブル1102(A)に含まれる情報は、DNITの擬似コード1000のデバイス部分1002からのものである。デバイスに固有のサブテーブル1102(A)は、DNIT1100(A)がトランスポートストリームHに含まれ、トランスポートストリームHは、トランスポートストリームマップ400から、MQAM230(A)のMOD_1.1から来たトランスポートストリーム254(A)であることがわかる。デバイスに固有の情報サブテーブル1102(H)はまた、MOD_1.1が2つのトランスポートストリームの入力を受信することを示す。
【0103】
上流のサブテーブル1104(A)は、ネットワークトランスポートストリームソースおよびネットワークトランスポートストリームハンドラのような、上流のデバイスから受信した情報を含む。上流のデバイスからの情報は、トランスポートストリーム250(D)および252を介して受信されるDNITにより、MQAM230(A)に提供される。上流デバイスからの情報は、DNITの擬似コード1000のプレデバイス部分1004によって、上流のサブテーブル1104(A)に含まれる。この例示的なDNIT1100(A)では、上流のサブテーブル1104(A)は、それぞれBIG224およびエンコーダ218からのDNIT1100(B)および1100(C)を含む。DNIT1100(B)および1100(C)は、それぞれデバイスに固有のサブテーブル1102(B)および1102(C)を含み、中間ティアレベルデバイスBIG224からのDNIT1100(B)は、DNIT1100(D)、1100(E)、および1100(F)を含む。DNIT1100(D)、1100(E)、および1100(F)は、それぞれ衛星信号受信器214(A)、サーバ216、および衛星信号受信機214(B)からのものである。このように、上流デバイスからのDNITは、DNIT1100(A)に組み込まれる。
【0104】
例示的なDNIT1100(A)はまた、その受信されたネットワークトランスポートストリーム252および250(D)のそれぞれのリンクステータス情報1106(A)および1106(B)を含む。リンクステータス情報1106(A)および1106(B)は、現在「良好」である。BIG224からの例示的なDNIT1100(B)は、リンクステータス情報1106(C)、1106(D)、および1106(E)を含む。1106(C)、1106(D)、および1106(E)は、ネットワークトランスポートストリーム250(A)、250(B)、および250(C)にそれぞれ関連付けられ、さらに、現在「良好」である。ネットワークトランスポートストリーム250(C)がブレイクされると、BIG224は、リンクステータスが現在「問題あり」であると判定する。この場合、BIG224からの次のDNIT1100(B)のリンクステータス1106(E)は、「問題あり」と読める。ネットワークトランスポートストリーム250(C)のリンクステータスに問題があるとういうこの情報は、下流へ伝送され、ネットワークコントローラ234またはサブネットワーク236に送信されたネットワークメッセージに含まれる。ネットワークメッセージを自動的に受信するコントローラは、トランスポートストリーム250(C)のコンテンツを再ルーティングすることによって、またはDBDS100のオペレータを変更することによって、ネットワークメッセージに応答する。
【0105】
尚、DNIT1100(A)は、ネットワークトランスポートシステムを介して下流に伝送されるテーブルの実施形態である。当業者には、このテーブルにより多い、またはより少ない情報が含まれ得ることが理解される。
【0106】
尚、別の実施形態では、ネットワークトランスポートストリームソースの全てが、DNITを作成および送信するように適合されるとは限らない。しかし、上流のデバイスが、DNITを下流のデバイスに送信することに失敗した時、下流のデバイスは、依然として部分的なDNITを作成し、そのDNITを下流に伝送する。例えば、図11に示されるように、エンコーダ218が、DNIT1100(C)をMQAM230に送信しない場合、MQAM230(A)は、依然として部分的なDNITを作成し得る。しかし、MQAM230(A)は、依然として、(1)ネットワークトランスポートストリーム250(D)のTSID402、(2)ネットワークトランスポートストリーム250(D)のリンクステータス1106(B)を判定し、DNIT1100(C)ではなくDNIT1100(A)にTSID値およびリンクステータスを含む。さらに、MQAM230(A)は、MQAM230(A)が、ネットワークコントローラ234に、「D」というTSID値402(D)を有するネットワークトランスポートストリームを受信するが、トランスポートストリーム402(D)のDNITを受信しないことを示すメッセージを送信し得る。ネットワークコントローラは、その後、ネットワークトランスポートストリームマップ400を調べて、Dという値のTSID402を有するネットワークトランスポートストリームを出力するデバイスについての情報を判定する。さらに、ネットワークコントローラ234は、DBDS100のオペレータからの上流のデバイスに関するさらなる情報をリクエストし得、オペレータは、この情報を手動で入力し得る。ネットワークコントローラ234は、この情報をMQAM230(A)に送信し得、MQAM230(A)は、DNIT1100(A)にこの情報を含む。このように、ネットワークトランスポートストリームハンドラは、受信されたネットワークトランスポートストリームのTSIDを判定し、コントローラと通信して上流のデバイスについてのさらなる情報をリクエストし、さらにネットワークコントローラ234および/またはサブ領域コントローラ236から特定のデバイスについての情報を受信することによって、少なくとも部分的にDNSTを送信しないデバイスの上流の情報を満たし得る。
【0107】
DHCT110は、DHCT110が受信する各ネットワークトランスポートストリームのDNIT1100を介して、上流の情報を提供される。例えば、コンバイナ232(C)に接続されるDHCT110は、ヘッドエンド102に位置するMQAM230(A)からのネットワークトランスポートストリーム254(A)〜254(C)と、ハブ104に位置するMQAM230(C)からのネットワークトランスポートストリーム254(I)および254(J)とを受信する。ネットワークトランスポートストリーム254(A)〜254(C)に含まれるDNIT1100は、ネットワークトランスポートストリーム250(A)〜250(D)についてのネットワーク情報と、以下のデバイスに関する情報とを含む。以下のデバイスとは、衛星信号受信機214(A)および214(B)、アプリケーションサーバ216(A)、エンコーダ218、BIG224、ならびにMQAM230(A)である。ネットワークトランスポートストリーム254(I)および254(J)のDNITは、ネットワークトランスポートストリーム250(G)および250(H)についてのネットワーク情報と、以下のデバイスに関する情報とを含む。以下の情報とは、アプリケーションサーバ216(B)、衛星信号受信機214(C)、およびMQAM230(C)を含む。
【0108】
DHCT110は、受信されたDNITを利用して、ネットワークコントローラ234および/またはサブネットワークコントローラ236に位置付けられる処理の負荷をある程度軽減し得る。従来技術の加入者テレビジョンシステムでは、DBDS100の加入者は、DHCT110を利用して、ビデオオンデマンドプログラミング、視聴ごとに支払う(pay−per−view)プログラミング、パーソナルテレビジョン、オーディオプログラミング、およびインターネット接続(これらに限定されない)等のサービスをインタラクティブにオーダーし得る。サービスに対する加入者のリクエストは、DHCT110からリクエストされたサービスを提供するために必要なステップを実行するコントローラ(ネットワークコントローラ234またはサブネットワークコントローラ236)に送信される。しかし、受信されたDNIT1100を利用して、DHCT110は、サービスに対するリクエストを通知し得る。例えば、従来技術のシステムでは、ユーザが、DBDS100の1つ以上のVODサービスに格納される映画を受信する等の、視聴ごとに支払うサービスまたはプログラムをスタートさせることを望む場合に、ユーザは、ユーザのDHCT110を介してネットワークコントローラにサービスに対するリクエストを送信していた。ネットワークコントローラ234またはサブ領域コントローラ236は、DBDS100のVODサービスのいずれがリクエストしているDHCT110から上流にあるのか、上流のVODサーバのいずれが、リクエストされたサーバを有するのか、および、これらのサーバのいずれが、リクエストされたサービスを送信すべきなのかを決定しなければならない。しかし、本発明のある実施形態によると、DHCT110は、受信されたDNIT1100を調べて、DHCT110から上流にあるサーバのリストを判定し、そのリストの各サーバのコントローラを判定する。例えば、コンバイナ232(C)からネットワークトランスポートストリームを受信するDHCT110は、アプリケーションサーバ216(A)および216(B)から下流にある。DHCT110は、サービスに対するリクエストを有するネットワークコントローラ234またはサブ領域コントローラ236にサーバのリストを送信し得る。
【0109】
ある実施形態では、DHCT110からのサービスリクエストの処理は、ネットワークコントローラ234とサブ領域コントローラ236との間で分散される。サーバのリストをネットワークコントローラ234またはサブ領域コントローラ236に提供することは、ネットワークコントローラ234および/またはサブ領域コントローラ236に位置付けられる処理の負荷をある程度低減する。ネットワークコントローラ234および/またはサブ領域コントローラ236は、もはやどのサーバがDHCT110から上流にあるのかを判定する必要はない。さらに、このサービスに対するリクエストはまた、各サーバとDHCT110との間の各ネットワークトランスポートストリームの現在の動的なネットワークステータスを含む。このように、ネットワークコントローラ234および/またはサブ領域コントローラ236は、DHCT110によって受信されるどのネットワークトランスポートストリームが、リクエストされたサービスのために必要な帯域幅を有するのかを直ちに判定する。
【0110】
別の実施形態では、DNIT1100を利用するDHCT110は、DBDS100によって提供されるサービスの送信を開始するために必要な多くの決定を行い得る。例えば、DHCT110は、DHCT110に対して帯域外に送信されるプログラミングテーブルを調べ得る。プログラミングテーブルは、所与のサーバに格納された、リスト化された視聴ごとに支払うプログラミング等の情報を含む。DBDS100の加入者が、特定のプログラムを選択する場合、DHCT110は、受信されたDNIT1100および受信されたプログラミングテーブルを利用して、DHCT110から上流にあるどのサーバが、内部に格納された特定のプログラムを有するのかを判定する。DHCT110はまた、受信されたDNITから、どのネットワークトランスポートストリームが、リクエストされたサービス(視聴ごとに支払うプログラム、ビデオオンデマンドプログラム、およびインターネット接続等であるが、これらに限定されない)を反応するために必要な帯域幅を有するのかを判定し得る。DHCT110は、サービスをリクエストしている特定のサーバにメッセージを送信し得る。サーバからDHCT110への送信経路は、受信されたDNIT1100に含まれる情報からDHCT110によって決定される。DHCT110は、DNIT1100で指定される経路のリンクの全てが良好であり、そのリンクの全てが利用可能な帯域幅を有する送信経路を選択する。このように、ネットワークトランスポートストリームの利用可能な帯域幅およびリンクステータス等の動的なネットワーク情報を有するDHCT110を提供することによって、ネットワークコントローラ234またはサブ領域コントローラ236のどちらかに位置付けられる処理の負荷は、DHCT110にシフトされ得る。DHCT110があるサービスに対して請求されるべきであることを示すメッセージを受信することを除き、ユーザにサービスを提供する際に、コントローラ(ネットワークコントローラ234またはサブ領域コントローラ236のどちらか)が必ずしも含まれる必要はない。請求メッセージは、サービスを送信するネットワークのDHCT110またはデバイス(サーバ、またはDHCT110によるDBDS100の利用をモニタリングするいくつかの他のデバイス等)から生じ得る。別の実施形態では、リクエストされたサービス用の送信経路は、依然として、コントローラ(ネットワークコントローラ234またはサブ領域コントローラ236のいずれか)によって判断される。いくつかの状況では、コントローラは、DHCT110によって決定された送信経路に沿ってDHCT110にサービスを送信しないことを決定し得る。コントローラは、他の目的でDHCT110により選択された送信経路のいくつかの帯域幅を確保することを望まず、また必要ともしないことがあり得る。この場合、コントローラは、DHCT110への異なる送信経路を決定する。
【0111】
さらに、DHCT110およびネットワークトランスポートストリームハンドラは、受信されたDNITを利用して、DBDS100をモニタリングする。好ましい実施形態では、DNIT1100は、ハートビートに対応するデバイスに固有のサブテーブル1102に挿入速度を含む。好ましい実施形態では、DHCT110の各ネットワークトランスポートストリームハンドラは、その入力ネットワークトランスポートストリームのそれぞれに関連する少なくともコントローラアドレスとDNIT挿入速度とを格納するために十分なメモリを含む。ネットワークトランスポートストリームハンドラおよびDHCT110のようなデバイスは、DNIT挿入速度を利用して、入力ネットワークトランスポートストリームをモニタリングする。例えば、MQAM230(A)は、1秒ごとに一回、BIG224からDNIT1100(B)を受信する。MQAM230(A)は、最後のDNIT1100(B)が受信された時間から所定の時間(2秒等)内にDNIT1100(B)を受信しない場合は、BIG224のコントローラ(ネットワークコントローラ234)に警告を送信する。ネットワークコントローラ234は、DBDS100のオペレータに、BIG224とMQAM230(A)との間にある種の通信ブレイクが存在したことの警告を送信する。
【0112】
別の実施形態では、DHCT110は、DHCT110についての情報と、DNIT1100の受信されたネットワークトランスポートストリームとを含み、DNIT1100をヘッドエンド102またはハブ104に送信する。このように、DNIT1100は、ネットワークトランスポートストリームソースからDHCT110まで拡張する。この場合、ネットワークコントローラ234またはサブネットワークコントローラ236は、DNIT1100を利用して、ネットワークトランスポートストリームソースからDHCT110までのネットワーク条件を判定する。ネットワークコントローラ234またはサブネットワークコントローラ236はまた、DNIT1100を利用して、DBDS100内の各DHCT110をマッピングし得る。
【0113】
さらに別の実施形態では、コントローラ(ネットワークコントローラ234またはサブネットワークコントローラ236のいずれか)は、DHCTから受信されたDNITを利用して、DHCT110とヘッドエンド102またはハブ104との間の双方向通信経路をモニタリングする。コントローラは、サブ分散ネットワーク160等の、DBDS110の所与の地図領域における1つ以上のDHCT110を選択して、定期的にDNIT1100をヘッドエンド102またはハブ104に送信する。各地図領域からのDNIT1100は、その地図領域とヘッドエンド102またはハブ104との間の双方向通信のためのハートビートとして作用する。コントローラは、ハートビートによるQPSKモデムアレイ等の双方向通信の現在のステータス、特に、所与の地理領域のDHCT110からの通信が喪失されたかどうかを判定し得る。
【0114】
通常、ネットワークデバイスは、どのデバイスがそのデバイスから下流にあり、どのデバイスがそのデバイスから上流にあるのかを知らない。さらに別の実施形態では、コントローラ(ネットワークコントローラ234またはサブネットワークコントローラ236のいずれか)は、DBDS100のDHCT110からDNIT1100を受信し、それらを利用して、ネットワークトランスポートストリームソースおよびハンドラにネットワーク情報を提供する。ネットワークトランスポートストリームソースまたはネットワークトランスポートストリームハンドラは、それぞれの下流のデバイスについての情報を利用して、下流のデバイスに提供されたトランスポートストリームが正しいことを保証する。非限定的な例では、BIG224は、トランスポートストリームをASI−SONET送信機(図示されない)に出力する。ASI−SONET送信機は、BIGよりも低い帯域幅を有する。この場合、BIG224は、その出力をASI−SONET送信機の出力と整合させ、ASI−SONET送信機がトランスポートストリームを操作し得ることを確実にする。
【0115】
本発明の上述の実施形態、特に任意の「好ましい」実施形態は、単なる可能な実装例であり、本発明の原理の明確な理解を提供するためだけのものであることが強調されるべきである。多くのバリエーションおよび改変が、本発明の意図および原理から実質的に逸脱することなく、本発明の上述の実施形態に対してなされ得る。このような改変およびバリエーションは、ここでの開示および本発明の範囲内で本明細書中に含まれることが意図され、添付の特許請求の範囲により保護される。
【図面の簡単な説明】
【0116】
【図1】図1は、本発明の好ましい実施形態が用いられ得るケーブルテレビジョンシステム等のブロードバンド通信システムのブロック図である。
【図2】図2は、本発明の好ましい実施形態が用いられ得るブロードバンド通信システムにおける、コンテンツプロバイダと通信するヘッドエンドおよびハブのブロック図である。
【図3】図3は、MPEGトランスポートストリーム、および、その中のパケットのブロック図である。
【図4】図4は、本発明の好ましい実施形態が用いられ得るブロードバンド通信システムにおけるネットワークトランスポートストリームソースおよびネットワークトランスポートストリームハンドラのブロック図である。
【図5A】図5Aは、ブロードバンド通信システムのネットワークをマッピングするブロードバンド通信システムにおけるコントローラによって用いられる例示的なステップのフローチャートである。
【図5B】図5Bは、ブロードバンド通信システムのネットワークをマッピングするブロードバンド通信システムにおけるコントローラによって用いられる例示的なステップのフローチャートである。
【図5C】図5Cは、ブロードバンド通信システムのネットワークをマッピングするブロードバンド通信システムにおけるコントローラによって用いられる例示的なステップのフローチャートである。
【図6】図6は、ネットワークメッセージのブロック図である。
【図7A】図7Aは、例示的なネットワークをマッピングする前の、例示的なネットワークのブロック図である。
【図7B】図7Bは、図7Aに示される例示的なネットワークにおけるデバイスをトランスポートストリーム識別子と関連付けるテーブルである。
【図7C】図7Cは、例示的なネットワークにおけるトランスポートストリームをマッピングした後の、図7Aに示される例示的なネットワークのブロック図である。
【図8】図8は、ブロードバンド通信システムにおける例示的なトランスポートストリームハンドラのブロック図である。
【図9】図9は、コントローラおよびダウンストリームデバイスに情報を動的に提供する方法のフローチャートである。
【図10】図10は、ダイナミックネットワーク情報テーブルを作製するための擬似コードである。
【図11】図11は、ネストされた例示的なダイナミックネットワーク情報テーブルである。
Claims (43)
- デジタルネットワークを発見して、マッピングするシステムであって、該システムは、
受信したネットワークメッセージに応答してトランスポートストリームマップを生成するように適応するコントローラと、
該コントローラと通信する複数のデバイスであって、該デバイスの各々は、
少なくとも1つのトランスポートストリームを受信して、
該受信した少なくとも1つのトランスポートストリームをモニタして、
ネットワークメッセージを生成することによって、および該ネットワークメッセージを該コントローラに送ることによって、該受信した少なくとも1つのトランスポートストリームの変化に応答するように適応する、複数のデバイスと
を備える、システム。 - 前記コントローラは、初期のマッピングメッセージを前記複数のデバイスに送り、該複数のデバイスのうちの多数のデバイスは、ネットワークメッセージを送ることによって該初期のマッピングメッセージに応答する、請求項1に記載のシステム。
- 前記コントローラによって受信された前記ネットワークメッセージは、該メッセージを送信したデバイスに関連するデバイス識別子と、所与のトランスポートストリームに関連するトランスポートストリーム識別子とを含み、該所与のトランスポートストリームは、該デバイス識別子に関連するデバイスによって受信され、かつモニタされたトランスポートストリームである、請求項2に記載のシステム。
- 前記ネットワークメッセージは、ネットワーク情報を含む、請求項3に記載のシステム。
- 前記多数のデバイスは、少なくとも1つのトランスポートストリームを送信するように適応し、該多数のデバイスの各々からの前記ネットワークメッセージは、該少なくとも1つの送信されたトランスポートストリームに関連する第2のトランスポートストリーム識別子を含む、請求項3に記載のシステム。
- 前記コントローラは、前記多数のデバイスのうちの各々から送信された各トランスポートストリームに対する固有のトランスポートストリーム識別子を決定し、特定の固有のトランスポートストリーム識別子を該多数のデバイスのうちの特定のデバイスに関連付け、第2のメッセージを該特定のデバイスに送信し、該第2のメッセージは、該特定の固有のトランスポートストリーム識別子を含む、請求項5に記載のシステム。
- 前記特定のデバイスは、前記特定のデバイスから前記特定の固有のトランスポートストリーム識別子へ送信された前記少なくとも1つのトランスポートストリームの前記トランスポートストリーム識別子を再マッピングすることによって、前記第2のメッセージに応答する、請求項6に記載のシステム。
- 前記複数のデバイスのうちの第2の特定のデバイスは、前記トランスポートストリームに関連する前記特定の固有のトランスポートストリーム識別子を有する前記トランスポートストリームを受け取り、第2のネットワークメッセージを前記コントローラに送信し、該第2のネットワークメッセージは、該特定の固有のトランスポートストリーム識別子を含み、該コントローラは、該トランスポートストリームマップにおいて前記第1の特定のデバイスを該第2の特定のデバイスに関連付ける、請求項7に記載のシステム。
- 少なくとも1つのトランスポートストリームを送受信する複数のデバイスを含むデジタルネットワークをマッピングする方法であって、該方法は、
該複数のデバイスのうちの多数のデバイスを、該デジタルネットワーク内の複数のティアにグループ化するステップと、
第1ティアの第1の特定のデバイスを、該デジタルネットワークの第2ティアの第2の特定のデバイスに関連付けるステップであって、該第2の特定のデバイスは、該第1の特定のデバイスから送信されたトランスポートストリームを受信する、ステップと
を包含する、方法。 - 少なくとも1つのトランスポートストリームを送受信する複数のデバイスを含むデジタルネットワークをマッピングする方法であって、該方法は、
該複数のデバイスのうちの多数のデバイスを、該デジタルネットワーク内の複数のティアにグループ化するステップと、
第1ティアの第1の特定のデバイスを、該デジタルネットワークの第2ティアの第2の特定のデバイスに関連付けるステップであって、該第2の特定のデバイスは、該第1の特定のデバイスから送信されたトランスポートストリームを受信する、ステップと
を包含する、方法。 - 前記グループ化するステップの前に、
初期のマッピングメッセージを前記複数のデバイスに送信するステップと、
ネットワークメッセージを該複数のデバイスから受信するステップであって、デバイス毎の各ネットワークメッセージは、出力トランスポートストリーム識別子およびデバイス識別子を含み、該トランスポートストリーム識別子は、該デバイス識別子に関連するデバイスによって送信されたトランスポートストリームに関連する、ステップと
をさらに包含する、請求項9に記載の方法。 - 前記グループ化するステップは、前記ネットワークメッセージの各々、および表に含まれたデバイス識別子を用いて、前記複数のデバイスをティアにグループ化するステップをさらに包含する、請求項11に記載の方法。
- 前記ネットワークメッセージの各々は、第2のトランスポートストリームに関連した入力ネットワークストリーム識別子をさらに含み、該第2のトランスポートストリームは、前記デバイス識別子に関連するデバイスによって受信される、請求項11に記載の方法。
- 前記入力ネットワークストリーム識別子は、ネットワークトランスポートストリームソース識別子を含む、請求項13に記載の方法。
- 前記ネットワークトランスポートストリームソースインジケータは、前記デジタルネットワークにおけるネットワークトランスポートのソースであるデバイス用の所定の値である、請求項14に記載の方法。
- 所与のティアの前記多数のデバイスのうちの特定のデバイスから送信された特定のトランスポートストリームに関連する特定のトランスポートストリーム識別子が、該所与のティアの該多数のデバイスのうちの1つ以上のデバイスから送信された他のトランスポートストリームに関連する1つ以上のトランスポートストリーム識別子と同じであるかどうかを判定するステップと、
該特定のトランスポートストリーム識別子が同じではないと判定することに応答して、該特定のデバイスを該特定のトランスポートストリーム識別子に関連付けるステップと
をさらに包含し、
該特定のトランスポートストリーム識別子が同じであると判定することに応答して、
該特定のトランスポートストリームに対する新規のトランスポートストリーム識別子を判定するステップであって、該新規のトランスポートストリーム識別子は、該所与のティアの該多数のデバイスから送信されたトランスポートストリームに関連する他のトランスポートストリーム識別子とは異なる、ステップと、
再マッピングメッセージを該特定のデバイスに送信するステップであって、該特定のデバイスは、該特定のトランスポートストリームに関連する該特定のトランスポートストリーム識別子を該新規のトランスポートストリーム識別子に再マッピングすることによって、該再マッピングメッセージに応答する、ステップと、
該特定のデバイスを該新規のトランスポートストリーム識別子に関連付けるステップと
をさらに包含する、請求項9に記載の方法。 - 前記再マッピングメッセージを送信するステップの後に、
第2の特定のデバイスから別のネットワークメッセージを受信するステップであって、該第2の特定のデバイスは、前記第1の特定のデバイスから送信された該特定のトランスポートストリームを受信する、ステップ
をさらに包含する、請求項16に記載の方法。 - 前記第2の特定のデバイスは、前記特定のトランスポートストリームに関連する該特定のトランスポートストリーム識別子を再マッピングする前記第1の特定のデバイスに応答して、前記他のネットワークメッセージを送る、請求項17に記載の方法。
- 前記特定のデバイスを少なくとも1つの入力トランスポートストリーム識別子に関連付けるステップであって、該特定のデバイスからの該ネットワークメッセージは、少なくとも1つのトランスポートストリーム識別子を含み、該少なくとも1つのトランスポートストリーム識別子は、該特定のデバイスで受信した該少なくとも1つのトランスポートストリームに関連する、請求項16に記載の方法。
- 前記デジタルネットワークは、複数のトランスポートストリーム受信器を含み、該複数のトランスポートストリーム受信器は、少なくとも1つのトランスポートストリームを受信し、
該複数のトランスポートストリーム受信器のうちの多数のトランスポートストリーム受信器からメッセージを受信するステップであって、受信器毎の該複数のトランスポートストリーム受信器の各々は、デバイス識別子およびトランスポートストリーム識別子を含み、該トランスポートストリーム識別子は、該トランスポートストリーム受信器によって受信されたトランスポートストリームに関連する、ステップ
をさらに包含する、請求項33に記載の方法。 - 前記多数のトランスポートストリーム受信器のうちの各々は、応答して、前記メッセージを送ることによってメッセージのマッピングを初期化する、請求項20に記載の方法。
- デジタルネットワークをマッピングする方法であって、該方法は、
固有のトランスポートストリーム識別子を複数のトランスポートストリームのうちの各トランスポートストリームに割り当てるステップであって、該複数のトランスポートストリームは、前記デジタルネットワークに含まれる複数のデバイスから送信される、ステップと、
割り当てられた各固有のトランスポートストリーム識別子を該複数のデバイスのうちの特定のデバイス関連付けるステップであって、該特定のデバイスは、該トランスポートストリームに割り当てられた該固有のトランスポートストリーム識別子を有する該トランスポートストリームを送信する、ステップと、
該複数のデバイスのうちの各々に、該複数のデバイスのうちの各々に割り当てられた固有のトランスポートストリーム識別子を送信するステップと、
該複数のデバイスのうちの多数のデバイスからネットワークメッセージを受信するステップであって、各ネットワークメッセージは、少なくとも1つの入力トランスポートストリーム識別子を含む、ステップと、
該複数のデバイスに対するデバイスの階層を決定するために該多数のネットワークメッセージを用いるステップと
を包含する、方法。 - 前記少なくとも1つの入力トランスポートストリーム識別子は、該固有のトランスポートストリーム識別子のうちの1つである、請求項22に記載の方法。
- 前記多数のネットワークメッセージを用いるステップは、
前記複数のデバイスのうちの第1のデバイスを前記多数のデバイスのうちの第2のデバイスに関連付けるステップであって、該第2のデバイスからの前記ネットワークメッセージの前記少なくとも1つの入力トランスポートストリーム識別子は、該第1のデバイスに関連する少なくとも1つの固有のトランスポートストリーム識別子を含む、ステップをさらに包含する、請求項22に記載の方法。 - 前記割り当てるステップの前に、前記複数のデバイスから第2のネットワークメッセージを受信するステップであって、デバイス毎の各第2のネットワークメッセージは、出力トランスポートストリーム識別子を含む、ステップをさらに包含する、請求項22に記載の方法。
- 前記割り当てるステップは、前記固有のトランスポートストリーム識別子を割り当てる前記複数のデバイスからの各第2のネットワークメッセージに含まれる出力トランスポートストリーム識別子を用いるステップをさらに包含する、請求項25に記載の方法。
- 前記第2のネットワークメッセージを受信するステップの前に、
前記デジタルネットワークに含まれる第2の複数のデバイスにマッピング初期化メッセージを送るステップであって、該第2の複数のデバイスは、前記第1の複数のデバイスを含み、該第1の複数のデバイスの各々は、該第2のネットワークメッセージを送ることによって該マッピング初期化メッセージに応答する、ステップをさらに包含する、請求項25に記載の方法。 - 前記第1の複数のデバイスが前記第2の複数のデバイスと同じであるかどうかを判定するステップと、
該第1の複数のデバイスが該第2の複数のデバイスと同じではないと判定することに応答して、警告メッセージを生成するステップと
をさらに包含する、請求項27に記載の方法。 - 前記割り当てるステップの前に、前記複数のデバイスから第2のネットワークメッセージを受信するステップであって、デバイス毎の各第2のネットワークメッセージは、該メッセージを送るデバイスに関連する送信識別子を含む、ステップをさらに包含する、請求項22に記載の方法。
- 前記関連するステップは、前記複数のデバイスから各第2のネットワークメッセージに含まれる前記送信識別子を用いて、各割り当てられた固有のトランスポートストリーム識別子を前記特定のデバイスに関連付けるステップであって、該特定のデバイスは、各々に割り当てられた該固有のトランスポートストリーム識別子を有するトランスポートストリームを送信する、ステップをさらに包含する、請求項29に記載の方法。
- 前記第2のネットワークメッセージを受信するステップの前に、
マッピング初期化メッセージを前記デジタルネットワークに含まれる第2の複数のデバイスに送るステップであって、該第2の複数のデバイスは、前記第1の複数のデバイスを含み、該第1の複数のデバイスの各々は、該第2のネットワークメッセージを送ることによって、該マッピング初期化メッセージに応答する、ステップをさらに包含する、請求項29に記載の方法。 - 前記第1の複数のデバイスが前記第2の複数のデバイスと同じであると判定するステップと、
該第1の複数のデバイスが該第2の複数のデバイスと同じではないと判定することに応答して、警告メッセージを生成するステップと
をさらに包含する、請求項31に記載の方法。 - トランスポートストリームを受信するデジタルネットワークにおける装置であって、該装置は、
該トランスポートストリームを受信するように適応したポートであって、該トランスポートストリームは、該トランスポートストリームに関連するトランスポートストリーム識別子を有する、ポートと、
該入力ポートと通信するプロセッサであって、該プロセッサは、該トランスポートストリーム識別子をモニタリングすることに適して、ネットワークメッセージを生成することによって、該トランスポートストリーム識別子に対する変化に応答する、プロセッサと
を備える、装置。 - 前記ネットワークメッセージは、第2のトランスポートストリーム識別子を含み、該第2のトランスポートストリーム識別子は、前記受信したトランスポートストリームに関連する新規のトランスポートストリーム識別子である、請求項33に記載の装置。
- 前記ネットワークメッセージは、前記装置に関連するデバイス識別子をさらに含む、請求項34に記載の装置。
- 前記ネットワークメッセージは、前記ポートを通って送信される、請求項33に記載の装置。
- 前記ポートは、複数の入力ポートであり、該複数の入力ポートの各々は、少なくとも1つのトランスポートストリームに関連するトランスポートストリーム識別子を有する該少なくとも1つのトランスポートストリームを受信して、前記プロセッサは、各入力トランスポートストリームの該トランスポートストリーム識別子をモニタリングして、該ネットワークメッセージを生成することによって該トランスポートストリーム識別子に対する変化に応答するように適応する、請求項33に記載の装置。
- 前記ネットワークメッセージは、前記受信した入力トランスポートストリームの各々に関連する現在のトランスポートストリーム識別子を含む、請求項37に記載の装置。
- 前記プロセッサと通信する送信器であって、該送信器は、前記受信したトランスポートストリームの少なくとも一部を含む第2のトランスポートストリームを送信するように適応する、送信器と、
メッセージを送受信するように適応した第2のポートであって、該ネットワークメッセージは、該第2のポートを通って送信され、該ネットワークメッセージは、該装置に関連するデバイス識別子をさらに備える、請求項33に記載の装置。 - 前記ネットワークメッセージは、前記受信したトランスポートストリームに関連した前記現在のトランスポートストリーム識別子を含む、請求項39に記載の装置。
- 前記第2のトランスポートストリームは、該第2のトランスポートストリームに関連する第2のトランスポートストリーム識別子を有し、前記プロセッサは、前記第2のポートから再マッピングメッセージを受信して、該第2のトランスポートストリームに関連する該第2のトランスポートストリーム識別子を再マッピングすることによって該再マッピングメッセージに応答する、請求項39に記載の装置。
- 前記プロセッサは、前記第2のポートから初期化マッピングメッセージを受信し、該装置に関連するデバイス識別子、およびネットワークメッセージに含まれるトランスポートストリーム識別子を有する該ネットワークメッセージを該第2のポートを通って送ることによって、該初期化マッピングメッセージに応答する、請求項39に記載の装置。
- 前記プロセッサは、前記ポートから初期化マッピングメッセージを受信し、該装置に関連するデバイス識別子、およびネットワークメッセージに含まれるトランスポートストリーム識別子を有する該ネットワークメッセージを該ポートを通って送ることによって、該初期化マッピングメッセージに応答する、請求項33に記載の装置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/976,604 US7457883B2 (en) | 2001-10-12 | 2001-10-12 | Mechanism for implementing network discovery in a cable network |
PCT/US2002/031321 WO2003034262A1 (en) | 2001-10-12 | 2002-10-02 | Mechanism for implementing network discovery in a cable network |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2005506745A true JP2005506745A (ja) | 2005-03-03 |
Family
ID=25524268
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003536922A Withdrawn JP2005506745A (ja) | 2001-10-12 | 2002-10-02 | ケーブルネットワークにおいてネットワークディスカバリを実現するメカニズム |
Country Status (6)
Country | Link |
---|---|
US (2) | US7457883B2 (ja) |
EP (1) | EP1442386B1 (ja) |
JP (1) | JP2005506745A (ja) |
CA (1) | CA2463097C (ja) |
DE (1) | DE02778418T1 (ja) |
WO (1) | WO2003034262A1 (ja) |
Families Citing this family (44)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7457883B2 (en) * | 2001-10-12 | 2008-11-25 | Cisco Technology, Inc. | Mechanism for implementing network discovery in a cable network |
FR2833791B1 (fr) * | 2001-12-13 | 2004-02-06 | Telediffusion De France Tdf | Dispositif de metrologie pour la surveillance automatique d'un reseau de diffusion de signaux numeriques et reseau de diffusion comprenant un tel dispositif de metrologie |
EP1347642A3 (en) * | 2002-03-18 | 2008-03-12 | Matsushita Electric Industrial Co., Ltd. | Digital broadcast receiving apparatus, method, and program |
US7392319B2 (en) * | 2004-04-23 | 2008-06-24 | International Business Machines Corporation | Method and apparatus for failure resilient forwarding of data over a computer network |
JP2006014243A (ja) * | 2004-06-29 | 2006-01-12 | Toshiba Corp | ネットワーク経由情報記録再生システム、情報送信対象検索方法並びに情報記録再生装置 |
KR100736618B1 (ko) * | 2005-10-10 | 2007-07-09 | 엘지전자 주식회사 | Tsid 검출 방법 |
US7802009B2 (en) | 2007-06-26 | 2010-09-21 | Microsoft Corporation | Automatic reverse engineering of message formats from network traces |
US8199671B2 (en) * | 2008-06-09 | 2012-06-12 | Hewlett-Packard Development Company, L.P. | Throttling network traffic generated by a network discovery tool during a discovery scan |
US8671436B2 (en) * | 2009-12-01 | 2014-03-11 | Beaumaris Networks Inc. | Dynamic service group discovery |
US20110176495A1 (en) * | 2010-01-15 | 2011-07-21 | Roy Rabinda K | Video distribution network and methods therefor |
US9723538B2 (en) | 2011-06-20 | 2017-08-01 | Cisco Technology, Inc. | Systematic neighbor detection in shared media computer networks |
US9037881B2 (en) | 2012-10-12 | 2015-05-19 | Dell Products, Lp | System and method for power flow mapping in a datacenter |
US9329654B2 (en) | 2012-10-19 | 2016-05-03 | Dell Products, Lp | System and method for one-line power mapping of information handling systems in a datacenter |
US9182798B2 (en) | 2013-05-20 | 2015-11-10 | Dell Products, Lp | Multiphase voltage regulator using coupled inductors |
US9964935B2 (en) | 2014-03-06 | 2018-05-08 | Dell Products, Lp | System and method for data reporting in a tile management controller |
US20150256393A1 (en) | 2014-03-06 | 2015-09-10 | Dell Products, Lp | System and Method for Providing a Tile Management Controller |
US10122585B2 (en) | 2014-03-06 | 2018-11-06 | Dell Products, Lp | System and method for providing U-space aligned intelligent VLAN and port mapping |
US9423854B2 (en) | 2014-03-06 | 2016-08-23 | Dell Products, Lp | System and method for server rack power management |
US9923766B2 (en) | 2014-03-06 | 2018-03-20 | Dell Products, Lp | System and method for providing a data center management controller |
US10250447B2 (en) | 2014-03-06 | 2019-04-02 | Dell Products, Lp | System and method for providing a U-space aligned KVM/Ethernet management switch/serial aggregator controller |
US9958178B2 (en) | 2014-03-06 | 2018-05-01 | Dell Products, Lp | System and method for providing a server rack management controller |
US9699933B2 (en) | 2014-03-06 | 2017-07-04 | Dell Products, Lp | System and method for providing AC jumper management and identifying AC jumper topology |
US9430010B2 (en) | 2014-03-06 | 2016-08-30 | Dell Products, Lp | System and method for server rack power mapping |
US9913399B2 (en) | 2015-02-09 | 2018-03-06 | Dell Products, Lp | System and method for wireless rack management controller communication |
US9578510B2 (en) | 2015-02-10 | 2017-02-21 | Dells Products, Lp | System and method for wireless handheld device security in a data center environment |
US9961074B2 (en) | 2015-02-10 | 2018-05-01 | Dell Products, Lp | System and method for providing an authentication certificate for a wireless handheld device a data center environment |
US9853911B2 (en) | 2015-02-19 | 2017-12-26 | Dell Products, Lp | System and method for management network activity in a data center environment |
US10063428B1 (en) * | 2015-06-30 | 2018-08-28 | Apstra, Inc. | Selectable declarative requirement levels |
US9678552B2 (en) | 2015-10-30 | 2017-06-13 | Dell Products, Lp | System and method for powering a wireless end point in a server rack of a data center |
US10229082B2 (en) | 2015-11-09 | 2019-03-12 | Dell Products, Lp | System and method for providing wireless communications to a boxed server |
US10712792B2 (en) | 2015-11-09 | 2020-07-14 | Dell Products, L.P. | System and method for provisioning a powered off server in a data center |
US10009766B2 (en) | 2015-11-09 | 2018-06-26 | Dell Products, Lp | System and method for providing a wireless device connection in a server rack of a data center |
US9929901B2 (en) | 2015-11-10 | 2018-03-27 | Dell Products, Lp | System and method for providing proxied virtual wireless end points in a server rack of a data center |
US9942935B2 (en) | 2015-11-17 | 2018-04-10 | Dell Products, Lp | System and method for providing a wireless failover of a management connection in a server rack of a data center |
US10216681B2 (en) | 2015-12-01 | 2019-02-26 | Dell Products, Lp | System and method for managing workloads and hot-swapping a co-processor of an information handling system |
US10241555B2 (en) | 2015-12-04 | 2019-03-26 | Dell Products, Lp | System and method for monitoring a battery status in a server in a data center |
US9930771B2 (en) | 2015-12-16 | 2018-03-27 | Dell Products, Lp | Aperiodic routing to mitigate floquet mode resonances |
US10298460B2 (en) | 2015-12-21 | 2019-05-21 | Dell Products, Lp | System and method for aggregating communication and control of wireless end-points in a data center |
US10116744B2 (en) | 2016-02-04 | 2018-10-30 | Dell Products, Lp | System and method for providing management network communication and control in a data center |
US10373283B2 (en) | 2016-03-14 | 2019-08-06 | Dell Products, Lp | System and method for normalization of GPU workloads based on real-time GPU data |
US10656281B2 (en) | 2016-11-10 | 2020-05-19 | Cable Television Laboratories, Inc. | Systems and methods for interference detection in shared spectrum channels |
US10491964B2 (en) * | 2017-01-23 | 2019-11-26 | Cisco Technology, Inc. | Assisted acceleration for video streaming clients |
CA3058156A1 (en) * | 2017-03-30 | 2018-10-04 | Blonder Tongue Laboratories, Inc. | Enterprise content gateway |
CN114666226B (zh) * | 2022-05-25 | 2022-11-18 | 杭州谐云科技有限公司 | 一种大规模边缘集群管理方法和系统 |
Family Cites Families (40)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE69433109D1 (de) * | 1994-04-28 | 2003-10-09 | Hewlett Packard Co | Mehrfachsendeeinrichtung |
US5608726A (en) * | 1995-04-25 | 1997-03-04 | Cabletron Systems, Inc. | Network bridge with multicast forwarding table |
US6215530B1 (en) * | 1995-05-22 | 2001-04-10 | Scientific-Atlanta, Inc. | Logical and composite channel mapping in an MPEG network |
US6047323A (en) * | 1995-10-19 | 2000-04-04 | Hewlett-Packard Company | Creation and migration of distributed streams in clusters of networked computers |
US5835493A (en) * | 1996-01-02 | 1998-11-10 | Divicom, Inc. | MPEG transport stream remultiplexer |
US5892535A (en) * | 1996-05-08 | 1999-04-06 | Digital Video Systems, Inc. | Flexible, configurable, hierarchical system for distributing programming |
US6148000A (en) * | 1996-10-02 | 2000-11-14 | International Business Machines Corporation | Merging of data cells at network nodes |
JP2000514271A (ja) * | 1996-10-08 | 2000-10-24 | ティアナン・コミュニケーションズ・インコーポレーテッド | マルチサービストランスポートの多重化装置およびその方法 |
US5953506A (en) * | 1996-12-17 | 1999-09-14 | Adaptive Media Technologies | Method and apparatus that provides a scalable media delivery system |
EP0854650A3 (en) * | 1997-01-17 | 2001-05-02 | NOKIA TECHNOLOGY GmbH | Method for addressing a service in digital video broadcasting |
US6272150B1 (en) * | 1997-01-17 | 2001-08-07 | Scientific-Atlanta, Inc. | Cable modem map display for network management of a cable data delivery system |
US6470389B1 (en) * | 1997-03-14 | 2002-10-22 | Lucent Technologies Inc. | Hosting a network service on a cluster of servers using a single-address image |
US5943605A (en) * | 1997-04-16 | 1999-08-24 | Lucent Technologies Inc. | Arrangement for controlling extraction of data from a broadband digital stream employing a symbol table for translating symbolic program names to program and channel numbers |
US5996021A (en) * | 1997-05-20 | 1999-11-30 | At&T Corp | Internet protocol relay network for directly routing datagram from ingress router to egress router |
US6598167B2 (en) * | 1997-09-26 | 2003-07-22 | Worldcom, Inc. | Secure customer interface for web based data management |
JPH11112561A (ja) * | 1997-09-30 | 1999-04-23 | Sony Corp | 通信方法および通信装置 |
US7150029B1 (en) * | 1997-10-14 | 2006-12-12 | Thomson Licensing | System for formatting and processing multimedia program data and program guide information |
US6351471B1 (en) * | 1998-01-14 | 2002-02-26 | Skystream Networks Inc. | Brandwidth optimization of video program bearing transport streams |
US6208623B1 (en) * | 1998-04-13 | 2001-03-27 | 3Com Corporation | Method of combining PNNI and E-IISP in an asynchronous transfer mode network |
US6223222B1 (en) * | 1998-05-14 | 2001-04-24 | 3Com Corporation | Method and system for providing quality-of-service in a data-over-cable system using configuration protocol messaging |
JP3859369B2 (ja) * | 1998-09-18 | 2006-12-20 | 株式会社東芝 | メッセージ中継装置及び方法 |
US6570875B1 (en) * | 1998-10-13 | 2003-05-27 | Intel Corporation | Automatic filtering and creation of virtual LANs among a plurality of switch ports |
US6502243B1 (en) * | 1998-11-10 | 2002-12-31 | Lgerca, Inc. | Method and system for locating a resource within a broadcasting environment |
US6134554A (en) * | 1998-11-10 | 2000-10-17 | Opentv, Inc. | System and method for recording receipt of information |
US6947398B1 (en) * | 1998-11-13 | 2005-09-20 | Lucent Technologies Inc. | Addressing scheme for a multimedia mobile network |
US6789118B1 (en) * | 1999-02-23 | 2004-09-07 | Alcatel | Multi-service network switch with policy based routing |
US6760775B1 (en) * | 1999-03-05 | 2004-07-06 | At&T Corp. | System, method and apparatus for network service load and reliability management |
US6556574B1 (en) * | 1999-03-31 | 2003-04-29 | Cisco Technology, Inc. | Duplicate ignore delay timer for ARP like protocol messages using are protocol |
US6360299B1 (en) * | 1999-06-30 | 2002-03-19 | International Business Machines Corporation | Extended cache state with prefetched stream ID information |
US6643298B1 (en) * | 1999-11-23 | 2003-11-04 | International Business Machines Corporation | Method and apparatus for MPEG-2 program ID re-mapping for multiplexing several programs into a single transport stream |
US6628301B1 (en) * | 2000-02-16 | 2003-09-30 | Microsoft Corporation | Extensible framework for tuning to programming sources |
JP3494610B2 (ja) * | 2000-02-28 | 2004-02-09 | 富士通株式会社 | Tcp終端機能付きipルータ装置および媒体 |
US6826613B1 (en) * | 2000-03-15 | 2004-11-30 | 3Com Corporation | Virtually addressing storage devices through a switch |
US7690020B2 (en) * | 2000-06-30 | 2010-03-30 | Time Warner Cable, A Division Of Time Warner Entertainment Company, L.P. | Hybrid central/distributed VOD system with tiered content structure |
US6996101B2 (en) * | 2000-11-29 | 2006-02-07 | International Business Machines Corporation | Re-mapping and interleaving transport packets of multiple transport streams for processing by a single transport demultiplexor |
US7523203B1 (en) * | 2001-05-07 | 2009-04-21 | Cisco Technology, Inc. | Shared distribution media resources in a communication network |
US7496092B2 (en) * | 2001-06-04 | 2009-02-24 | Cisco Technology, Inc. | System and method for allocating packet identifiers in a transport stream in a subscriber network |
US7065213B2 (en) * | 2001-06-29 | 2006-06-20 | Scientific-Atlanta, Inc. | In a subscriber network receiving digital packets and transmitting digital packets below a predetermined maximum bit rate |
US20030074670A1 (en) * | 2001-10-12 | 2003-04-17 | Penk Mark D. | Propagation of dynamic network information |
US7457883B2 (en) * | 2001-10-12 | 2008-11-25 | Cisco Technology, Inc. | Mechanism for implementing network discovery in a cable network |
-
2001
- 2001-10-12 US US09/976,604 patent/US7457883B2/en not_active Expired - Lifetime
-
2002
- 2002-10-02 CA CA2463097A patent/CA2463097C/en not_active Expired - Fee Related
- 2002-10-02 EP EP02778418.0A patent/EP1442386B1/en not_active Expired - Lifetime
- 2002-10-02 DE DE2002778418 patent/DE02778418T1/de active Pending
- 2002-10-02 WO PCT/US2002/031321 patent/WO2003034262A1/en active Application Filing
- 2002-10-02 JP JP2003536922A patent/JP2005506745A/ja not_active Withdrawn
-
2008
- 2008-07-25 US US12/179,746 patent/US7720987B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
CA2463097C (en) | 2010-08-24 |
WO2003034262A1 (en) | 2003-04-24 |
US7457883B2 (en) | 2008-11-25 |
EP1442386A1 (en) | 2004-08-04 |
EP1442386A4 (en) | 2010-02-10 |
EP1442386B1 (en) | 2013-08-07 |
CA2463097A1 (en) | 2003-04-24 |
US7720987B2 (en) | 2010-05-18 |
US20080282306A1 (en) | 2008-11-13 |
DE02778418T1 (de) | 2005-01-13 |
US20030074441A1 (en) | 2003-04-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7457883B2 (en) | Mechanism for implementing network discovery in a cable network | |
US20030074670A1 (en) | Propagation of dynamic network information | |
US7669220B2 (en) | Network bandwidth optimization by dynamic channel allocation | |
US8170011B2 (en) | System and method for allocating packet identifiers in a transport stream in a subscriber network | |
US7181759B2 (en) | System and method for providing interactivity for end-users over digital broadcast channels | |
KR100380504B1 (ko) | 비디오페디스탈네트워크 | |
US7120142B1 (en) | Communication management system and method | |
US7184433B1 (en) | System and method for providing media content to end-users | |
CA2351732C (en) | Logical node identification in an information transmission network | |
US7151782B1 (en) | Method and system for providing multiple services to end-users | |
US7451475B1 (en) | Method for delivery of narrow-cast data over digital broadcast channels | |
US7395346B2 (en) | Information frame modifier | |
US7203953B2 (en) | Method and apparatus for two-way internet access over a CATV network with channel tracking | |
US8135035B2 (en) | Video over cable modem | |
KR19990082959A (ko) | 가정용 네트워크 환경에서 오디오/비디오/데이터 프로세싱 장치용 자원 공유를 최적화하기 위한 방법 및 장치 | |
US6999477B1 (en) | Method and system for providing multiple services to end-users | |
US20110053623A1 (en) | Hfc banding for a virtual service group | |
US20050152366A1 (en) | Delivering cable television over a network agnostic platform | |
AU4759700A (en) | Establishment of upstream connection in wired network | |
KR20030032048A (ko) | 케이블 모뎀에 전송 주파수 정보를 제공하기 위한 방법 및장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20060110 |