説明

ネットワーク内の動的リアルタイム・ストリーム集約のための方法、システムおよび装置

【課題】 ネットワーク内でリモート・データ処理システムからクライアント・データ処理システムへの通信リンクを介したデータ・ストリームのトランスポートを管理するデータ処理システムにおいて、改善された方法、システムおよび装置を提供する。
【解決手段】 ネットワーク・クライアント(106)のグラフィック・ユーザ・インターフェースには、ストリーム制御送信プロトコル(SCTP)に基づいて指定されたビデオ・サーバ(104)からマルチホーム型アドレス・リストの前記クライアント(106)に通知された前記IPアドレスを通して得られた株式サーバ(110)からの株式ティッカー、およびニュース・サーバ(112)からのニュース補足記事が含まれる。前記クライアントは、リアルタイム・データを前記ビデオ・サーバ(104)との接続時に指定されたマルチホーム型IPアドレス上で、前記株式取引サーバおよび前記ニュース・エージェンシー・サーバからリアルタイム・データを受け取るが、その際前記データが、前記ビデオ・サーバ(104)以外のソースから来ていることは分からない。前記ビデオ・サーバ、株式サーバおよびニュース・サーバからの前記リアルタイム・データ・フィードは、前記クライアント(106)上に、高速で集約される。何故ならば、前記フィードは、前記クライアントに直接入り、前記ビデオ・サーバを介さないからである。前記ホーム・サーバおよびリモート・サーバのオペレーティング・システムは、SCTPコマンドおよび特定のコマンドを用いて、ネットワーク・クライアントにストリーミングされているリアルタイム・データの集約を高速で実施するが、その際、既存のクライアント・システムを何ら改変する必要はない。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は総じて、データ処理システムのネットワークにおけるデータ転送に関する。特に本発明は、インターネットまたは同様のネットワーク上でのデータ・ブロックの転送に関する。さらに特定すれば、本発明は、前記ネットワーク内の多数のソースから、単一のクライアントへの多数のデータ・ストリームの集約に関する。
【背景技術】
【0002】
ネットワークによって特定のルートを介して、あるソースから目的地へ情報を送信することが可能になる。前記情報はルータを介し特定のプロトコルに従って、前記ルートに沿って送信される。前記インターネットは、データ(テキスト、コード、画像、ビデオ、音声またはその混合物)およびソフトウェアの送信および配信には、特に重要なネットワークとなっている。ユーザは、14.4Kb/sから45Mb/s以上に及ぶ広範囲に分岐した性能レベルを有する、インターネットおよび他のネットワークのバックボーンに接続される。
【0003】
前記ネットワーク内のクライアントが、図形ユーザインターフェース上のユーザに対する単一構成物として提示されるアプリケーションへのリアルタイム・データ入力として、多様な種類とソースの情報を受信する、いくつかのアプリケーションがある。これは、アプリケーション・サーバのような、共通ポイントで集約されるリアルタイム・データによって達成され、その後、集約データとしてクライアント・デバイスへ直接送られる。多数のソースからクライアントに、集約ビデオデータを提供するネットワーク・システムの一例を図8に示す。ビデオ・サーバは、株式情報を株式サーバからリンク1を介して受信し、ニュース・データをニュース・サーバからリンク2を介して受信する。その後、ビデオ・サーバは、リンク3を介してクライアントに通信される合成ビデオ画面中に、株式ティッカーおよびニュース補足記事情報を集約する。
【0004】
上記から分かるように、ニュース情報および株式情報をビデオ・サーバに集約して、クライアントへ転送すると、クライアントがリアルタイム・データを入手するのが遅くなる。それにもかかわらず、このように遅れが大きくなっても、ビデオ・サーバ上のビデオ画面の構築に必要なビデオの処理を持続するためには必要であるとして、従来から容認されてきており、またそれが多数のソースからデータを集約して、前記ソースからビデオ画像を構築する.という仕事でさらにクライアントに負担をかけることなない。しかし、クライアントが画面構築に関するビデオ指令をビデオ・サーバから直接受信するのではなく、ニュースおよび株式データをニュース・サーバおよび株式サーバから直接受信し、そうすることによって、リアルタイム・データの受信の遅れが減少する方が望ましい。
【発明の開示】
【発明が解決しようとする課題】
【0005】
本発明に従って、ネットワーク内でリモート・データ処理システム(リモート)からクライアント・データ処理システム(クライアント)への通信リンクを介したデータ・ストリームのトランスポート(移送)を管理するデータ処理システム(ホーム)において、改善された方法、システムおよび装置が開示される。本発明の1つの好適な方法は、前記クライアントと前記ホーム間で、複数のデータ・ストリームを転送するために、前記クライアントと前記ホームとの間の関連付けを、前記ホームおよびリモートの複数のアドレスの関数として行い、前記関連付けを生成するために用いられる前記リモートの前記複数のアドレスのうち、1つまたは複数のアドレスを用いてリモート・データ・ストリームを前記クライアントに転送するよう前記リモートに指令し、これによって、前記クライアントは前記関連付けの範囲内において前記リモート・データ・ストリームを受信する、ステップを含む。
【課題を解決するための手段】
【0006】
本発明の目的、特徴および利点は全て、以下の詳細な説明文で明確になる。
【0007】
本発明については、図面を参照しながら以下に記載する好適な実施形態において、説明するが、図面内の類似の符号は、同一または類似の構成要素を示す。
【発明を実施するための最良の形態】
【0008】
好適な実施形態において、ホーム・サーバは、クライアント・アプリケーションによる消費のために、ネットワーク・クライアントのネットワーク・インターフェースにおいて、多数のリモート・サーバから多数のデータ・ストリームの集約をリアルタイムで制御している。SCTP連想は、前記ホーム・サーバと、多数の有効ソースIPアドレスを指定するクライアント間で、SCTPマルチホーム型機構に従って生成されるが、そこでは、前記クライアントに送られた少なくとも1つまたは複数の前記ソースIPアドレスが、複数のリモート・サーバおよびホーム・サーバと関連付けられる。前記ホーム・サーバは、UDPパケットを用いて前記リモート・サーバと通信し、前記リモート・サーバに、指定IPアドレス上で前記要求されたリアルタイム・データを、クライアントに直接配信するよう指令する。それから、各リモート・サーバは、前記クライアントとのSCTP連想のためにローカル・エンド・ポイントを作成するが、その際、SCTP連想を生成するための標準始動手順は必要としない(すなわち、INITメッセージおよびINIT ACKメッセージは送られない)。その後、前記ホーム・サーバおよびリモート・サーバは、同一集約アプリケーションに関するリアルタイム・データを、前記クライアントの前記マルチホーム・アドレス・リスト内で指定された第2のIPアドレス上のリンクを介して配信するが、一方、前記クライアントは、前記データが前記ホーム・サーバにおいて単一ソースを有するものと考えて、動作する。
【0009】
ここで図面に関して、特に図1に関しては、本発明の好適な形態が実施される、データ処理システム・ネットワークが表示されている。データ処理システムのネットワーク102は、インターネットのような少なくとも1つのネットワーク108を介して、少なくとも1つのクライアント・システム106に接続された、少なくとも1つのホーム・サーバ・システム104を含む。データ処理システムのネットワーク102は、ネットワーク108を介して、クライアント・システム106およびホーム・サーバ104に接続された2つ以上のリモート・サーバ・システム110および112を、さらに含む。上記から分かるように、単一ホーム・サーバ・システム104、2つのリモート・サーバ110および112ならびに単一クライアント・システム106のみ、図示されているが、データ処理システム・ネットワーク102には、ネットワーク108を含む、1つまたは複数の接続およびネットワークによって相互接続された任意の数のホーム・サーバ、リモート・サーバおよびクライアント・システム(図示せず)が含まれる。
【0010】
図1に示す好適な実施形態において、クライアント106は、ホーム・サーバ104に管理される多数のリモート・ソースからの、リアルタイム・データ・フローを必要とするアプリケーションを実行している。前記好適な実施形態に従って、ホーム・サーバ104は、多数のデータ・ストリームの集約を、クライアント・アプリケーションによる消費のために、クライアント106のネットワーク・インターフェースにおける、多数のリモート・サーバ110および112からリアルタイムで制御している。ホームサーバ104ならびにリモートサーバ110および112を通じて本発明の機能性を提供することにより、クライアント106は、多数のデータ・ストリーム自体を集約する能力を保持する必要がない。一実施形態において、ホーム・サーバ104は、クライアント106でのユーザ画面上の表示のために、リアルタイム・データを制御するビデオ・サーバである。
【0011】
ネットワークでデータ転送を行うために、転送シーケンスの全ての部分が適切に実行されるように、一連の規則を設定する必要がある。これらの規則はそれぞれ、プロトコルと呼ばれ、一連の規則はプロトコル群と呼ばれる。前記ホーム・サーバ・システム104と、リモート・サーバ110および112と、クライアント・システム106間のデータ転送は、SCTP/IP仕様(RFC2960)、TCP/IP仕様(RFC793)、UDP/IP仕様(RFC768)、およびファイル転送プロトコル(FTP)、ハイパー・テキスト転送プロトコル(HTTP)、またはいくつかの類似の通信プロトコルを含む、多様なプロトコルに適合する。ほとんどのネットワーク・プロトコルは、元々は独立の研究グループによって開発されたものではあるが、公開された(非機密の)基準であり、その多くは、一連の番号順のRFC(Request for Common 公開請求)文書として公開されている。例えば、IPプロトコルはRFC791である。RFC文書およびこれらのプロトコルに関する他の詳細な説明は、インターネットまたは様々な図書館において用意に閲覧できる。
【0012】
伝送制御プロトコル/インターネット・プロトコル(TCP/IP)は、インターネットおよびイントラネット技術において、広く実行されている標準的通信プロトコルとなっていて、クライアント、サーバおよびこれらを接続する通信システム間で、広範な異質性を可能にする。インターネット・プロトコル(IP)はネットワーク層プロトコルであり、伝送制御プロトコル(TCP)は、トランスポート層プロトコルである。ネットワーク・レベルでは、IPは、「データグラム」配信サービスを提供する。TCPは、データグラム・サービスを介してトランスポート・レベル・サービスを構築し、2つのIPホスト間でバイト・ストリームの保証付き連続配信を提供する。一般的に使用されている他の転送プロトコルには、不接続型データグラム・サービスを規定するユーザ・データグラム・プロトコル(UDP)と、接続指向の信頼性あるトランスポート・サービスを提供してマルチストリーミングおよびマルチホーミング機能性を可能にする、ストリーム制御送信プロトコル(SCTP)が含まれる。明確なことではあるが、これらのネットワーク・プロトコル群は、それぞれ構造が類似していて、一連の層を有しており、各層がそれぞれ前記通信業務の違った側面を担っている。説明を簡単にするため、下記の議論は主として、前記SCTP/IPプロトコルおよびUDP/IPプロトコルを用いる時に、前記発明を使用することに関わる。しかし、前記発明が他の多様なネットワーク・プロトコルにも適用できることは、当業者が認知するはずである。
【0013】
好適な実施形態において、ホーム・サーバ104はSCTPコマンドを用いて、クライアント106を、ホーム・サーバ104ならびにリモート・サーバ110および112から集約されたデータ・ストリームを受信するように構成する。SCTPにより、接続されたエンド・ポイント間でのいくつかのデータ・ストリーム(これらは、メッセージと呼ばれる単位で構成される)の完全な同時送信が保障される。SCTPによって提供される前記マルチストリーミング関数により、データを、独立して配信される特性を持つ多数のストリームに分割することができ、それによって、前記ストリームのいずれかでメッセージが紛失しても、前記ストリーム内の配信に影響が出るだけで、他のストリームには影響が出ないようにすることができる。SCTPはまた、マルチホーミングもサポートしているが、それは、接続されたエンド・ポイントが、ネットワーク障害の変化する条件を迂回するために、前記エンド・ポイントに接続された代替IPアドレスを持つことができることを意味する。好適な実施形態に従って、クライアント106は、始動コマンド(INIT)をホーム・サーバ104へ発することにより、接続リンク114を介してホーム・サーバ104とのSCTP連想を開始する。所定の関係、指定されたアプリケーション、または前記ホーム・サーバ104に通信される特定の選択肢により、前記ホーム・サーバ104は、前記関連付けにはネットワーク上の1つまたは複数のリモート・サーバから集約されたデータのリアルタイム・データ・ストリームが必要であることを認識する。
【0014】
SCTP連想の開始を求めるINITメッセージの受信に応えて、ホーム・サーバ104は、前記INITコマンドにおいて指定されている前記ソース・アドレスで、応答開始受信(INIT ACK)メッセージをクライアント106に送信する。前記クライアント・アプリケーションが、リモート・サーバから集約されたデータを消費しようとしている場合、ホーム・サーバ104は、INIT ACKメッセージを、SCTPマルチホーム型機構に従って、多数の有効ソースIPアドレスを指定するリンク114を介して、クライアント106に送信するが、この場合、クライアントに送信された少なくとも1つまたは複数の前記ソースIPアドレスが、各リモート・サーバ110、112ならびに前記ホーム・サーバ104に関連付けられる。クライアント106は、リアルタイム・データ・ストリームを受信するために、マルチホーム型アドレス・リストにこれらのIPアドレスを保存する。
【0015】
ホーム・サーバ104は、リモート・サーバ110、112と、UDPパケットを用いるリンク116および118を介して通信し、リモート・サーバ110および112に、前記指定されたIPアドレス上で求められたリアルタイム・データをクライアント106に直接配信するよう指令する。リモート・サーバ110、112に送信された第1の組のUDPパケットは、好適な実施形態に従って、前記リモート・サーバのオペレーティング・システムによって解釈され実行されるストリーム集約(SA)コマンドを含むペイロードを有する。図2はSAコマンドのフォーマットを示す。SAコマンド202は、前記UDPペイロードを、SAコマンドとして指定するコマンド・タイプ204と、例えばIPv4またはIPv6を指定するクライアント・アドレス・タイプ206と、前記ストリーミング・データを受信する前記クライアント106の前記IPアドレスを指定するクライアント・アドレス208と、前記クライアント106との関連付けのために、前記リモート・サーバの指定されたストリームIDを指定するストリームID210とクライアント106上の消費アプリケーションによって要求されているアプリケーション・データを指定するデータ・タイプ212とを含む。前記SAコマンドは、リモート・サーバに前記マルチホーム型の関連付けを通知し、前記リモート・サーバに、前記要求されたリアルタイム・データを前記クライアントに直接送信するよう指令する。その後、前記SAコマンドに応えて、各リモート・サーバ110、112は、前記クライアント106とのSCTP連想のためにローカル・エンド・ポイントを作成するが、その際、SCTP連想を生成するための標準始動手順は不要である(すなわち、INITメッセージおよびINIT ACKメッセージは送信されない)。
【0016】
その後、ホーム・サーバ104は、第2の組のUDPパケットを、好適な実施形態に従って、TSN範囲(TSNR)コマンドを含むペイロードを有する各リモート・サーバ110、112に送信する。図3は、前記TSNRコマンドのフォーマットを示す。TSNRコマンド220は、前記UDPペイロードをTSNRコマンドとして指定するコマンド・タイプ222と、前記クライアント106との関連付けのためにストリームIDを指定した前記リモート・サーバを指定するストリームID224と、前記メッセージ・シーケンスに関する前記TSN始動番号を指定するTSNスタート226と、前記リモート・サーバによる送信の許容範囲内で、前記最終送信シーケンス番号を指定するTSNエンド228とを含む。前記TSNRコマンドは、前記リモート・サーバが用いるべき前記送信シーケンス番号(TSN)範囲の番号で、前記受信側のリモート・サーバに、前記ストリーミング・データを前記クライアント106に送信するよう指示する。上記から分かるように、前記SAコマンドと前記TSNRコマンドは、別の実施形態では、組み合わせて単一コマンドやUDPペイロードにすることもできる。
【0017】
その後、ホーム・サーバ104は、クライアント106上の集約アプリケーション用のデータを、一次IPアドレスに関連付けられたリンク114を介して送信する。リモート・サーバ112は、同一の集約アプリケーション用のリアルタイム・データを、クライアント106のマルチホーム・アドレス・リスト内で指定された第2のIPアドレス上のリンク120を介して、配信する。そして、リモート・サーバ110は、同一の集約アプリケーション用のリアルタイム・データを、クライアント106のマルチホーム・アドレス・リスト内で指定された第2のIPアドレス上のリンク122を介して、配信する。
【0018】
SCTPにおけるデータ交換の後、TCPの選択的ACK手順(SACK)が続き、これによって、データメッセージの受信が、SACKメッセージを送信することによって確認されるが、前記SACKメッセージは、受信したTSNシーケンスのギャップを表示して、受信した累積TSN範囲だけでなく、任意の非累積TSNをも示す。リンク120および122を介して配信された前記SCTPメッセージは、識別されたIPアドレス上でストリームID/ストリーム・シーケンス番号ペアが識別するデータ・ストリームに、前記クライアント106と前記ホーム・サーバ104の間の、現行の関連付けを提供する。その結果、データの全リモート・ソースがリアルタイム・データを直接前記クライアントに送信できるようになるが、一方前記クライアントは、前記データがホーム・サーバ104において単一のソースを有するものと思って動作する。クライアント106は、前記データ・リンク114、120、および122の各々から各データ・メッセージ(データ)を受信すると、前記受信されたデータ・メッセージに含まれるソース・アドレスに、選択的受信通知(SACK)により返信する。
【0019】
ホーム・サーバ104は、そのメモリ内にテーブルを保持し、前記クライアント106との関連付けに際し、リアルタイム・データ・ストリームを送信する前記リモート・サーバの各々に関して、前記割り当てられたTSNの範囲を追跡していく。例えば、図4は、ホーム・サーバ104のメモリ内に保存されたTSNテーブル300を示す。TSNテーブル300は、(図1に示すような)前記ホーム・サーバ、リモート・サーバ1、およびリモート・サーバ2の各々に関して、前記ストリームIDおよび前記割り当てられたTSN範囲を識別する入口を有す。図4に示す例において、ホーム・サーバ104は、前記TSNテーブル内において、10000〜12999の範囲を自身のために予約されたものとして、割り当てている。前記テーブルは、リモート・サーバ1のTSN範囲を13000から15999まで、またリモート・サーバ2のTSN範囲を16000から19999まで、さらに識別する。これらの範囲はそれぞれ、前記リモートサーバの各々について、TSNRコマンド220を経てリモートサーバ110、112に通信される。
【0020】
前記クライアントは、前記SCTPヘッダで指定された前記サーバの前記ソース・アドレスに、SACKで応答するので、前記送信リモート・サーバは、前記SACKを受信して、前記受信通知をリンク116および118を介してホーム・サーバ104に転送し、これによって、前記ホーム・サーバ104は、前記割り当てられたTSNの範囲を示すために、そのメモリ内のTSNテーブル300を更新することができる。特定のリモート・サーバによって用いられる前記累積TSNが、前記ホーム・サーバのTSNテーブルに示されているように、前記サーバが割り当てたTSN範囲を超えた場合、ホーム・サーバ104は、次に利用可能な一連の送信シーケンス番号に基づいて、前記リモート・サーバの新規TSN番号範囲を割り当てる。前記所定のリモート・サーバの新規送信シーケンス番号範囲でTSNテーブル300を更新した後、ホーム・サーバ104は、TSNRコマンド220を、そのリモート・サーバの新規TSN範囲を指定する前記リモート・サーバに発する。
【0021】
好適な実施形態の一例において、クライアント(106)のグラフィック・ユーザ・インターフェース上に示された累積画面には、前記ビデオ・サーバ(104)から送られるマルチホーム型アドレス・リスト内の、前記クライアント(106)に通知された前記IPアドレス経由で株式サーバ(110)から送られる株式ティッカーおよび、ニュース・サーバ(112)上のニュース・エージェンシーから送られるニュース補足記事などが含まれる。前記クライアントは、前記ビデオ・サーバ(104)との関連付けに際して指定された、前記マルチホーム型IPアドレス上の前記株式取引サーバおよび、前記ニュース・エージェンシー・サーバからの前記データを受け取るが、その際、前記データが、前記ビデオ・サーバとは異なるソースから来ているものであることは分からない。前記ビデオ・サーバ、前記株式サーバおよび前記ニュース・サーバからの前記リアルタイム・データ・フィードは、前記クライアント(106)上で、高速で集約される。なぜならば、前記フィードは、前記ビデオサーバを経由せず直接、前記クライアントに来信しているからである。当然のことながら、前記クライアントは標準SCTPを用いて動作しているため、前記クライアント・システムは本発明を用いるために、いかなる方法によっても修正する必要が無い。前記ホーム・サーバおよび前記リモート・サーバの前記オペレーティング・システムは、SCTPコマンドおよび特殊コマンドを用い、ネットワーク・クライアントに流入するリアルタイム・データの集約のために、高速の好適実施形態を実行する。
【0022】
図5は、本発明の好適な実施形態において用いられるサーバ/クライアント・システムの典型的なソフトウェア・アーキテクチャを示す。サーバ104およびクライアント106はそれぞれ、ソフトウェア・アーキテクチャ400で構築される。最低レベルでも、オペレーティング・システム405は、前記ユーザおよび他のソフトウェアに高レベルの機能性を提供するために、使用される。このようなオペレーティング・システムには一般的には、BIOS(基本入出力システム)が含まれる。通信ソフトウェア410は、オペレーティング・システムの機能性を直接起動するかまたは、オペレーティング・システムを迂回して間接的にネットワークによる通信のためのハードウェアにアクセスすることによって、外部ポート経由の通信を、物理的通信リンクを介したインターネットのようなネットワークに提供する。アプリケーション・プログラミング・インターフェース415により、前記システム・ユーザは、それが個人であれソフトウェア・ルーチンであれ、前記特定の機能性がどのように実践されるかについて気遣うことなく、標準的な一貫性のあるインターフェースを用いて、システムの能力を起動させることができるようになる。前記インターネット・ソフトウェア420は、コンピュータにインターネットの機能性を備えさせるために利用できる、標準的コマーシャル・パッケージのいずれかに相当する。前記アプリケーション・ソフトウェア425は、通信ポートを通じてデータに反応して、ユーザが追求する望ましい機能性を提供するように設計された多数のソフトウェア・アプリケーションを示している。このレベルのアプリケーションには、インターネット・ユーザがアクセスできるデータ、ビデオ、グラフィックス、写真または文字を処理するために必要なアプリケーションが含まれる。
【0023】
図6に示すように、SCTP/IPプロトコルおよび類似のプロトコルは、アプリケーション層411、トランスポート層412、ネットワーク層414およびリンク層416を有するネットワークのための4層通信アーキテクチャ401により用いられる。各層は、以下のような多様な通信業務の処理を担当する。前記リンク層416(データ・リンク層またはネットワーク・インターフェース層とも呼ばれる)は通常、前記オペレーティング・システムの前記デバイス・ドライバおよび前記コンピュータの前記対応するネットワーク・インターフェース・カードを含む。これらは共に、使用されている前記ネットワーク媒体、例えば、イーサネット・ケーブル等と物理的にインターフェースする全ての前記ハードウェアの細部まで処理する。前記ネットワーク層414(インターネット層とも呼ばれる)は、前記ネットワーク周辺のパケット・データの移動を処理する。例えば、前記ネットワーク層は、前記ネットワークで転送される多様なデータ・パケットのルーティングを処理する。前記SCTP/IP群の前記ネットワーク層は、IP(インターネット・プロトコル)、ICMP(インターネット制御メッセージ・プロトコル)、およびIGMP(インターネット・グループ管理プロトコル))を含む、いくつかのプロトコルで構成される。前記トランスポート層412は、前記ネットワーク層414と、2つのホスト・コンピュータ間でデータ転送を容易にする前記アプリケーション層411の間に、インターフェースを提供する。前記トランスポート層は、前記アプリケーションから前記トランスポート層に送られてきたデータを、下記のように前記ネットワークに適したサイズの塊に分割したり、受信されたパケットを認識したり、送信される他端の認識パケットを確認するためにタイムアウトを設定したりするようなものなどに関わる。前記アプリケーション層410は、前記特定のアプリケーションの詳細まで処理する。アプリケーションがSCTP/IPを用いてデータを送信する場合、前記データは、前記ネットワークを介してビット・ストリームとして送信されるまで、各層を通じてプロトコル・スタックを下降する。
【0024】
ここで図7を参照すると、前記発明の好適な実施形態に従って、クライアントのための動的リアルタイム・ストリーム集約のプロセス・フロー図が示されている。クライアントが、前記ホーム・サーバが該ホーム・サーバから隔たった多数のソースからリアルタイム・データを送信するために、SCTP連想を設定することを求める前記ホーム・サーバに、INITメッセージを送信する場合、プロセス500がステップ502で始動する。ステップ504において、前記ホーム・サーバは、前記INITメッセージに対して、マルチホーム型SCTP連想のために多数のホームIPアドレスを指定するINIT ACKで応答するが、その場合、前記IPアドレスには、前記リモート・サーバのIPアドレスが含まれる。ステップ506において、前記ホーム・サーバは、前記クライアントとのマルチストリーミングされた関連付けが、前記リモート・サーバにおいて具体化されることを求める前記リモート・サーバに、ストリーム集約(SAN)コマンドを送信する。その後、ステップ508において、前記ホーム・サーバは、データ・メッセージの前記クライアントへの送信に関する各サーバのTSN範囲を指定する前記リモート・サーバの各々に、送信シーケンス番号範囲(TSNR)コマンドを送信する。
【0025】
ステップ510において、前記ホーム・サーバおよびリモート・サーバは、前記ホーム・サーバのTSNテーブル内の各々において指定され、割り当てられ、かつ、前記SAコマンドおよびTSNRコマンド内の前記リモート・サーバの各々に報告されたストリームIDおよびTSNシーケンスを用いて、リアルタイム・データ・ストリームをクライアントへ同時に送信し始める。前記クライアントは、前記ホーム・サーバによって提供されるマルチホーム型アドレス・テーブルにおいて指定された、IPアドレス上のデータ・ストリームの各々を受信する。それで、各ストリームは、前記クライアント上でアプリケーションの稼動時に消費されるデータ・ストリームの一部として、前記ホーム・サーバから命令されるとされている。ステップ512において、前記クライアントは、前記リモート・サーバおよび前記ホーム・サーバの各々から、データ・ストリーム内で送信されたデータ・メッセージの受信に応答して、前記リモート・サーバおよび前記ホーム・サーバの各々に、SACKを送信する。決定ブロック514において、受信されたSACKがリモート・サーバの割り当てたTSN範囲の末端にTSNを有する受信メッセージを特定したか否かが、決定される。特定されない場合、プロセスはステップ510に戻るが、ここで、前記ホーム・サーバおよびリモート・サーバは、リアルタイム・データ・ストリームを割り当てられたTSN範囲内で、クライアントに送信し続ける。ステップ514において、前記リモート・サーバがその割り当てられたTSN範囲の末端に到達したと判定された場合、前記プロセスはステップ516へ進むが、そのステップで前記ホーム・サーバは、リアルタイム・データ・ストリームの継続送信のために、新規TSN範囲をリモート・サーバに割り当てる前記リモート・サーバに、TSNRコマンドを送信する。前記プロセスはそれから、ステップ510に戻るが、ここで、前記リモート・サーバは、前記リアルタイム・データ・ストリームを前記クライアントへに送信し続ける。
【0026】
前記発明について好適な実施形態を参照しながら具体的に図示および説明してきたが、当業者であれば、前記発明の精神および範囲から逸脱することなく形式および詳細面の多様な変更が、そこでなされていることが理解されるであろう。例えば、本発明は、コンピュータ・プログラムのソフトウェア、ファームウェアまたはハードウェアの任意の組み合わせを用いて、実施することができる。前記発明を実施するかまたは、前記発明による装置を構成するための予備ステップとして、前記発明による前記コンピュータ・プログラム・コードが(それがソフトウェアかファームウェアかには関わらず)一般的には、固定(ハード)ドライブ、ディスケット、光ディスク、磁気テープ、ROMやPROM等の半導体メモリのような、1つまたは複数の機械読取り可能な記憶媒体に保存され、それによって前記発明に従ってある装置が製作される。前記コンピュータ・プログラム・コードを含む装置は、記憶装置から前記コードを直接実行するか、前記記憶装置から前記コードをハード・ディスク、RAMのような別の記憶装置にコピーするか、または前記コードを遠隔実施のために送信することによって、利用される。前記発明の前記方法形態は、本発明による前記コードを含む1つまたは複数の機械読取り可能な記憶装置を、そこに含まれている前記コードを実施するための適切な標準的コンピュータ・ハードウェアと組み合わせることによって、実施できる。前記発明を実施するための装置は、前記発明によって符号化された前記コンピュータ・プログラムへのネットワーク・アクセスを含むか又は有する、1つまたは複数のコンピュータおよび記憶システムとなり得る。
【0027】
この発明については、本発明の目的を達成するための最良の形態に関して説明したが、当業者が本発明の精神または範囲から逸脱することなくこれらの教示内容を考慮すれば、改変することが可能なことは理解するであろう。
【図面の簡単な説明】
【0028】
【図1】図1は、本発明の好適な実施形態が実施されるデータ処理システムのネットワークを示す。
【図2】図2は、本発明の好適な実施形態によるストリーム集約(SA)コマンドのフォーマットを示す。
【図3】図3は、本発明の好適な実施形態による送信シーケンス番号範囲(TSNR)コマンドのフォーマットを示す。
【図4】図4は、本発明の好適な実施形態によるホーム・サーバのメモリ内に保存される送信シーケンス番号(TSN)テーブルを示す。
【図5】図5は、本発明の好適な実施形態において用いられるような、サーバ/クライアント・システムのための典型的ソフトウェア・アーキテクチャを示す。
【図6】図6は、本発明の好適な実施形態において用いられるような、ネットワークのための4層通信アーキテクチャを示す。
【図7】図7は、本発明の好適な実施形態による、クライアントのための動的リアルタイム・ストリーム集約のための処理のフロー図を示す。
【図8】図8は、多数のソースから集約された映像データを、クライアントに提供する従来技術におけるネットワーク・システムのブロック図を示す。

【特許請求の範囲】
【請求項1】
ネットワーク内におけるリモート・データ処理システム(リモート)からクライアント・データ処理システム(クライアント)への通信リンクを介したデータ・ストリームのトランスポート(移送)を管理するデータ処理システム(ホーム)における方法であって、
前記クライアントと前記ホームとの間での複数のデータ・ストリームの転送のために、前記ホームおよび前記リモートに係る複数のアドレスの関数として、前記クライアントと前記ホームとの間の関連付けを生成するステップと、
前記関連付けを生成するために用いられる前記リモートの前記複数のアドレスのうち、1つまたは複数のアドレスを用いて、リモート・データ・ストリームを前記クライアントに転送するように前記リモートに指令するステップであって、これにより前記クライアントが、前記関連付けの範囲内において前記リモート・データ・ストリームを受信する、ステップと
を含む方法。
【請求項2】
前記関連付けはSCTP連想として生成され、前記複数のアドレスは、マルチホーム型機構を用いて、前記ホームのIPアドレスとして前記クライアントに指定される、請求項1に記載の方法。
【請求項3】
前記指令するステップは、ストリーム識別番号と前記クライアントに関するIPアドレスとを前記リモートに提供するステップを含む、請求項2に記載の方法。
【請求項4】
前記指令するステップは、ある範囲の送信シーケンス番号を前記リモートに提供するステップと、
前記範囲内の前記リモート・データ・ストリームを送信するよう、前記リモートに指令するステップと
を含む、請求項2に記載の方法。
【請求項5】
前記クライアントが前記範囲内のリモート・データ・ストリームを受信したことを示す、前記リモートからの受信通知を受信するステップと、
新規範囲の送信シーケンス番号を前記リモートに提供するステップと、
前記新規範囲内の前記リモート・データ・ストリームを送信するよう、前記リモートに指令するステップと
をさらに含む、請求項4に記載の方法。
【請求項6】
前記リモートにおいて前記クライアントとの関連付けを、前記リモートにおけるINITを前記クライアントから受信することなく生成するステップと、
前記関連付けを生成するステップに含まれる、前記クライアントに送信されたINIT ACKメッセージ中の、前記ホームに指定された前記リモートのIPアドレスを用いて、前記リモート・データ・ストリームを前記クライアントに送信するステップと
をさらに含む、請求項2に記載の方法。
【請求項7】
前記生成するステップが、前記クライアントと前記ホームとの間の複数のデータ・ストリームの転送のために、前記ホームと複数のリモートとに係る複数のアドレスの関数として前記クライアントと前記ホームとの間の関連付けを生成するステップを含み、
前記指令するステップが、前記関連付けを生成するために用いられた前記リモートの前記複数のアドレスのうちの1つまたは複数のアドレスを用いて、前記クライアントにリモート・データ・ストリームを転送するよう前記複数のリモートの各々に指令して、これにより、前記クライアントが同一の関連付けの範囲内で前記複数のリモートから複数のリモート・データ・ストリームを受信するステップを含む、
請求項1に記載の方法。
【請求項8】
ストリーム集約コマンドを、前記ホームから、前記リモート・データ・ストリームの送信に用いるために、ストリーム識別子と前記クライアントのアドレスを指定する前記リモートに送信するステップ
をさらに含む、請求項1に記載の方法。
【請求項9】
送信シーケンス範囲コマンドを、前記ホームから、前記リモート・データ・ストリームの送信に用いるために、ある範囲の送信シーケンス番号を指定する前記リモートに送信するステップ
をさらに含む、請求項1に記載の方法。
【請求項10】
ネットワーク内におけるリモート・データ処理システム(リモート)からクライアント・データ処理システム(クライアント)への通信リンクを介したデータ・ストリームのトランスポート(移送)を管理するデータ処理システムであって、
前記クライアントと前記ホームとの間での複数のデータ・ストリームの転送のために、前記ホームおよび前記リモートの、複数のアドレスの関数として、前記クライアントと前記ホームとの間の関連付けを生成する手段と、
前記関連付けを生成するために用いられる前記リモートの前記複数のアドレスのうち、1つまたは複数のアドレスを用いて、リモート・データ・ストリームを前記クライアントに転送するよう前記リモートに指令し、それによって前記クライアントが、前記関連付けの範囲内において前記リモート・データ・ストリームを受信する手段と
を含む、データ処理システム。
【請求項11】
前記関連付けはSCTP連想として生成され、前記複数のアドレスは、マルチホーム型機構を用いて、前記ホームのIPアドレスとして前記クライアントに指定される、請求項10に記載のデータ処理システム。
【請求項12】
ストリーム識別番号と前記クライアントに関するIPアドレスとを前記リモートに提供する手段をさらに含む、請求項11に記載のデータ処理システム。
【請求項13】
ある範囲の送信シーケンス番号を前記リモートに提供し、前記範囲内の前記リモート・データ・ストリームを送信するよう前記リモートに指令する手段をさらに含む、請求項11に記載のデータ処理システム。
【請求項14】
前記クライアントが前記範囲内のリモート・データ・ストリームを受信したことを示す前記リモートからの受信通知を受信する手段と、
新規範囲の送信シーケンス番号を前記リモートに提供する手段と、
前記リモートに、前記新規範囲内の前記リモート・データ・ストリームを送信するよう指令する手段と、
をさらに含む、請求項13に記載のデータ処理システム。
【請求項15】
前記クライアントと前記ホームとの間の複数のデータ・ストリームの転送のために、前記ホームと複数のリモートとに係る複数のアドレスの関数として前記クライアントと前記ホームとの間の関連付けを生成する手段と、
前記関連付けを行うために用いられた前記リモートの前記複数のアドレスのうちの1つまたは複数のアドレスを用いて、リモート・データ・ストリームを前記クライアントに転送するよう前記複数のリモートの各々に指令し、それによって、前記クライアントが、同一の関連付けの範囲内で複数のリモート・データ・ストリームを、前記複数のリモートから受信する手段と
をさらに含む、請求項10に記載のデータ処理システム。
【請求項16】
ストリーム集約コマンドを、前記ホームから、前記リモート・データ・ストリームの送信に用いるために、ストリーム識別子と前記クライアントのアドレスとを指定する前記リモートに送信する手段
をさらに含む、請求項10に記載のデータ処理システム。
【請求項17】
送信シーケンス範囲コマンドを前記ホームから、前記リモート・データ・ストリームの送信に用いるために、ある範囲の送信シーケンス番号を指定する前記リモートに送信する手段
をさらに含む、請求項10に記載のデータ処理システム。
【請求項18】
組み込み型プログラム論理を含む機械読取り可能な媒体を有する装置であって、前記プログラム論理が、ネットワーク内におけるリモート・データ処理システム(リモート)からクライアント・データ処理システム(クライアント)への通信リンクを介したデータ・ストリームのトランスポート(移送)を管理するデータ処理システム(ホーム)において制御回路に、
前記クライアントと前記ホームとの間での、複数のデータ・ストリームの転送のために、前記ホームおよび前記リモートに係る複数のアドレスの関数として、前記クライアントと前記ホームとの間の関連付けを生成するステップと、
前記リモートに、前記関連付けを生成するために用いられる前記リモートの前記複数のアドレスのうち、1つまたは複数のアドレスを用いて、リモート・データ・ストリームを前記クライアントに転送するように前記リモートに指令し、それによって、前記クライアントが、前記関連付けの範囲内において前記リモート・データ・ストリームを受信する、ステップと
を行わせる、装置。
【請求項19】
前記関連付けはSCTP連想として生成され、前記複数のアドレスは、マルチホーム型機構を用いて、前記ホームのIPアドレスとして前記クライアントに指定される、請求項18に記載の装置。
【請求項20】
前記指令するステップは、前記ストリーム識別番号と前記クライアントに関するIPアドレスとを前記リモートに提供するステップを含む、請求項19に記載の装置。
【請求項21】
前記指令するステップは、ある範囲の送信シーケンス番号を前記リモートに提供するステップと、前記範囲内の前記リモート・データ・ストリームを送信するよう、前記リモートに指令するステップを含む、請求項19に記載の装置。
【請求項22】
前記クライアントが前記範囲内のリモート・データ・ストリームを受信したことを示す、前記リモートからの受信通知を受信するステップと、
新規範囲の送信シーケンス番号を前記リモートに提供するステップと、
前記新規範囲内の前記リモート・データ・ストリームを送信するよう、前記リモートに指令するステップと
をさらに含む、請求項21に記載の装置。
【請求項23】
前記リモートにおいて前記クライアントとの関連付けを、前記リモートにおけるINITを前記クライアントから受信することなく生成するステップと、
前記関連付けを生成するステップに含まれる前記クライアントに送られたINIT ACKメッセージ中の前記ホームによって指定された前記リモートのIPアドレスを用いて、前記リモート・データ・ストリームを前記クライアントに送信するステップと
をさらに含む、請求項19に記載の装置。
【請求項24】
前記生成するステップが、前記クライアントと前記ホームとの間の複数のデータ・ストリームの転送のために、前記ホームと複数のリモートとに係る、複数のアドレスの関数として、前記クライアントと前記ホームとの間の関連付けを生成するステップを含み、
前記指令するステップが、前記関連付けを生成するために用いられた前記リモートの前記複数のアドレスのうちの1つまたは複数のアドレスを用いて、リモート・データ・ストリームを前記クライアントに転送するよう、前記複数のリモートの各々に指令し、それによって、前記クライアントが同一の関連付けの範囲内において前記複数のリモートから複数のリモート・データ・ストリームを受信する、ステップを含む、
請求項18に記載の装置。
【請求項25】
ストリーム集約コマンドを、前記ホームから、前記リモート・データ・ストリームの送信に用いるために、ストリーム識別子と前記クライアントのアドレスとを指定する前記リモートに送信するステップ
をさらに含む、請求項18に記載の装置。
【請求項26】
送信シーケンス範囲コマンドを、前記ホームから、前記リモート・データ・ストリームの送信に用いるために、ある範囲の送信シーケンス番号を指定する前記リモートに送信するステップ、
をさらに含む、請求項18に記載の装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate


【公表番号】特表2007−509552(P2007−509552A)
【公表日】平成19年4月12日(2007.4.12)
【国際特許分類】
【出願番号】特願2006−536075(P2006−536075)
【出願日】平成16年8月31日(2004.8.31)
【国際出願番号】PCT/EP2004/051966
【国際公開番号】WO2005/041521
【国際公開日】平成17年5月6日(2005.5.6)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.イーサネット
【出願人】(390009531)インターナショナル・ビジネス・マシーンズ・コーポレーション (4,084)
【氏名又は名称原語表記】INTERNATIONAL BUSINESS MASCHINES CORPORATION
【Fターム(参考)】