(57)【要約】  ホスト・コンピュータと一つ又は複数のＵＳＢ周辺装置との間で、ＵＳＢ規格で通常許容されたものより大きい伝送遅延の存在下で動作するデータ通信ネットワークを介してデータを伝送する方法及び関連装置が提供される。ホスト・コンピュータはローカル拡張装置に接続され、ローカル拡張装置はデータ通信ネットワークを介して一つ又は複数の遠隔拡張装置に接続される。遠隔拡張装置は複数の通常のＵＳＢ周辺装置に接続される。ホスト・コンピュータとＵＳＢ周辺装置との間のデータは、通常許された遅延より大きい遅延を伴ってホスト・コンピュータ及びＵＳＢ周辺装置を動作させるために、ローカル拡張装置及び遠隔拡張装置において記憶され処理される。特に、本発明は、ホスト・コンピュータとＵＳＢ周辺装置との間の往復伝搬遅延時間が１マイクロ秒を超える場合に最も有効である。【選択図】    図２
2009545086.tif 000002
【特許請求の範囲】
【請求項１】
ホスト・コンピュータと一つ又は複数のＵＳＢ周辺装置との間でデータを伝送するコンピュータシステムであって、上記ＵＳＢ周辺装置がデータ通信ネットワークに分配され、上記データ通信ネットワークを通しての伝送遅延がＵＳＢ規格で通常許容されたものより大きく、上記コンピュータシステムが、ローカル拡張装置に接続されたホスト・コンピュータを有し、上記ローカル拡張装置が、データ通信ネットワークを介して一つ又は複数の遠隔拡張装置に接続され、そして複数のＵＳＢ周辺装置に接続され、上記ホスト・コンピュータと上記ＵＳＢ周辺装置との間の信号は、ホスト・コンピュータ及びＵＳＢ周辺装置がＵＳＢ規格で通常許された遅延より大きな往復遅延の存在下で作動できるように、ローカル拡張装置及び／又は遠隔拡張装置において保存され、収集され、吸収され、或いは処理されることを特徴とするコンピュータシステム。
【請求項２】
上記往復遅延が、伝送遅延及び送受反転時間遅延を含み、ホスト・コンピュータとＵＳＢ周辺装置との間の上記伝送遅延が１マイクロ秒を超えることを特徴とする請求項１記載のコンピュータシステム。
【請求項３】
上記ホスト・コンピュータがＵＳＢ規格をサポートするコンピュータであることを特徴とする請求項１記載のコンピュータシステム。
【請求項４】
上記複数のＵＳＢ周辺装置がＵＳＢフラッシュ・ドライブ、ＵＳＢハード・ドライブ、ＵＳＢ  ＣＤ／ＤＶＤドライブ、ＵＳＢカメラ、ＵＳＢマウス、ＵＳＢキーボード、ＵＳＢハブ、或いはＵＳＢ規格に適応できる任意の他の装置から成ることを特徴とする請求項１記載のコンピュータシステム。
【請求項５】
請求項１記載のホスト・コンピュータと一つ又は複数のＵＳＢ周辺装置との間でデータを伝送するコンピュータシステムであって、上記ＵＳＢ周辺装置が、データ通信ネットワークに分配され得、上記データ通信ネットワークを通しての伝送遅延がＵＳＢ規格で通常許された遅延より大きく、上記コンピュータシステムが、
ａ）ＵＳＢサブアクションを発生しかつ許容するホスト・コンピュータと、
ｂ）上記ホスト・コンピュータで開始したＵＳＢサブアクションに応答できる一つ又は複数のＵＳＢ周辺装置と、
ｃ）上記ホスト・コンピュータからデータ通信ネットワークへＵＳＢサブアクションを伝送し、かつ上記データ通信ネットワークから受けたＵＳＢサブアクションを上記ホスト・コンピュータへ伝送するために上記ホスト・コンピュータに接続されたローカル拡張装置ユニットと、
ｄ）各々一つ又は複数のＵＳＢ周辺装置に接続され、上記データ通信ネットワークから受けたＵＳＢサブアクションを上記ＵＳＢ周辺装置へ伝送し、かつ上記ＵＳＢ周辺装置から受けたＵＳＢサブアクションを上記データ通信ネットワークへ伝送する一つ又は複数の遠隔拡張装置ユニットと、
ｅ）上記ローカル拡張装置ユニットから上記遠隔拡張装置ユニットへＵＳＢサブアクションを伝送し、かつ上記遠隔拡張装置ユニットから上記データ通信ネットワークへＵＳＢサブアクションを伝送するデータ通信ネットワークと、
ｆ）上記ホスト・コンピュータから受けたＵＳＢサブアクションを、上記データ通信ネットワークを介して上記遠隔拡張装置ユニットへ伝送し、かつＵＳＢサブアクションを発生し、発生したＵＳＢサブアクションを上記ホスト・コンピュータへ伝送する上記ローカル拡張装置ユニットにおける手段と、
ｇ）上記ホスト・コンピュータから受けた上記ＵＳＢサブアクションを一つ又は複数のＵＳＢ周辺装置へ伝送し、かつＵＳＢ周辺装置から受けたサブアクションを受ける上記遠隔拡張装置ユニットにおける手段と、
ｈ）ＵＳＢ周辺装置から受けた上記サブアクションを、上記データ通信ネットワークを介して上記ローカル拡張装置ユニットへ伝送する上記遠隔拡張装置ユニットにおける手段と、
ｉ）ＵＳＢ周辺装置から受けたＵＳＢサブアクションを確認するＵＳＢサブアクションを発生し、かつ上記発生した確認ＵＳＢサブアクションを上記ＵＳＢ周辺装置へ伝送する上記遠隔拡張装置ユニットにおける手段と、
ｊ）上記ホスト・コンピュータから受けたＵＳＢサブアクションに応答してＵＳＢサブアクションを発生し、かつ上記発生した応答ＵＳＢサブアクションを上記ローカル拡張装置ユニットへ伝送する上記遠隔拡張装置ユニットにおける手段と、
ｋ）上記データ通信ネットワークを通して上記遠隔拡張装置ユニットから受けた一連の入ＵＳＢサブアクションが共通の出ＵＳＢサブアクションに関連する場合に受信しかつ確認する上記ローカル拡張装置ユニットにおける手段と、
ｌ）入ＵＳＢサブアクションが上記ホスト・コンピュータによって再び要求されるまで、遠隔拡張装置ユニットから入ＵＳＢサブアクションを記憶する上記ローカル拡張装置ユニットにおける手段と、
ｍ）上記記憶したＵＳＢサブアクションを上記ホスト・コンピュータへ伝送する上記ローカル拡張装置ユニットにおける手段と
を有することを特徴とするコンピュータシステム。
【請求項６】
さらに、
ａ）複写ＵＳＢサブアクションを吸収する好ましくは上記ローカル拡張装置ユニットにおける手段と、
ｂ）一連のＵＳＢサブアクションを原子ＵＳＢサブアクションにアッセンブルし、そして好ましくは上記原子ＵＳＢサブアクションを上記ＵＳＢ周辺装置に伝送する上記遠隔拡張装置ユニットにおける手段と、
ｃ）原子ＵＳＢサブアクションを一連の別個のＵＳＢサブアクションに逆アッセンブルし、そして好ましくは上記一連の別個のＵＳＢサブアクションを上記ローカル拡張装置ユニットへ伝送する上記遠隔拡張装置ユニットにおける手段と
を有することを特徴とする請求項５記載のコンピュータシステム。
【請求項７】
ホスト・コンピュータとデータ通信ネットワークとの間でＵＳＢトラフィックを伝送するローカル拡張装置であって、上記ＵＳＢトラフィックが、多数のＵＳＢ周辺装置にアドレスでき、上記ローカル拡張装置が、
ａ）上記ホスト・コンピュータに接続するＵＳＢ送受信装置と、
ｂ）上記ＵＳＢ送受信装置を制御する上流（アップストリーム）対向ポートと、
ｃ）上記ローカル拡張装置を通るＵＳＢサブアクションを再生し、かつ上記ローカル拡張装置の構成要素間でＵＳＢサブアクションを切換えるローカル・リピータユニットと、
ｄ）上記ローカル拡張装置による操作中にＵＳＢサブアクションを記憶するメモリー・ユニットと、
ｅ）下流（ホストからネットワーク）方向へ動くＵＳＢサブアクションに対するネットワークアドレスを提供するローカル・ルータ・ユニットと、
ｆ）上記データ通信ネットワークに接続するネットワーク送受信装置と、
ｇ）上記複数のＵＳＢ周辺装置の状態に関して上記ホスト・コンピュータで発生したサブアクションに応答するハブ・コントローラ・ユニットと、
ｈ）上記複数のＵＳＢ周辺装置の状態を管理するために複数の仮想ポートを具体化する手段と、
ｉ）付加価値機能を提供するために複数の仮想ＵＳＢ装置を具体化する手段と、
ｊ）上記ハブ・コントローラにアドレスしたＵＳＢサブアクションを確認する上記ローカル・リピータにおける手段と、
ｋ）上記複数の仮想ＵＳＢ装置にアドレスしたＵＳＢサブアクションを確認する上記ローカル・リピータにおける手段と、
ｌ）上記複数のＵＳＢ周辺装置の状態を維持する上記複数の具体化した仮想ポートにおける手段と、
ｍ）上記データ通信ネットワークから装置状態変化信号を受信しかつ上記複数のＵＳＢ周辺装置の状態を更新する上記複数の具体化した仮想ポートにおける手段と、
ｎ）上記ホスト・コンピュータから装置管理指令を受信しかつ装置管理信号を上記データ通信ネットワークへ伝送する上記ハブ・コントローラにおける手段と
を有することを特徴とするローカル拡張装置。
【請求項８】
上記ＵＳＢ送受信装置が標準型ＵＳＢ送受信装置であり、又上記ネットワーク送受信装置が無線送受信装置であることを特徴とする請求項７記載のローカル拡張装置。
【請求項９】
上記ＵＳＢ送受信装置が標準型ＵＳＢ送受信装置であり、又上記ネットワーク送受信装置がイーサネット送受信装置であることを特徴とする請求項７記載のローカル拡張装置。
【請求項１０】
上記ローカル拡張装置が、標準型ＵＳＢケーブルを介して上記ホスト・コンピュータに接続する自蔵型ユニットであることを特徴とする請求項７記載のローカル拡張装置。
【請求項１１】
データ通信ネットワークとＵＳＢ周辺装置との間でＵＳＢサブアクションを伝送する遠隔拡張装置であって、上記遠隔拡張装置が、
ａ）上記データ通信ネットワークに接続するネットワーク送受信装置と、
ｂ）上流（ネットワークからホスト）方向へ動くＵＳＢサブアクションに対するネットワークアドレスを提供する遠隔ルータ・ユニットと、
ｃ）上記遠隔拡張装置を通るＵＳＢサブアクションを再生し、かつ上記遠隔拡張装置の構成要素間でＵＳＢサブアクションを切換える遠隔リピータ・ユニットと、
ｄ）高速分割トランザクションと全速／低速原子トランザクションとの間で変換する器トランザクション変換装置ユニットと、
ｅ）上記遠隔拡張装置による操作中にＵＳＢサブアクションを記憶するメモリー・ユニットと、
ｆ）上記ＵＳＢ周辺装置に接続するＵＳＢ送受信装置と、
ｇ）上記ＵＳＢ送受信装置を制御する下流対向ポートと、
ｈ）分割トランザクションを確認する上記遠隔ルータ・ユニットにおける手段と、
ｉ）上記ＵＳＢ周辺装置の状態を検出する上記下流ポートコントローラにおける装置と、
ｊ）装置状態信号を発生し、そして上記信号を上記データ通信ネットワークへ伝送する上記下流ポートコントローラにおける手段と、
ｋ）上記データ通信ネットワークから装置管理信号を受信する上記下流ポートコントローラにおける手段と、
ｌ）上記ＵＳＢ周辺装置の状態を変更する上記下流ポートコントローラにおける手段と
を有することを特徴とする遠隔拡張装置。
【請求項１２】
上記ネットワーク送受信装置が無線送受信装置であり、また上記ＵＳＢ送受信装置が標準型ＵＳＢ送受信装置であることを特徴とする請求項１１記載の遠隔拡張装置。
【請求項１３】
上記ネットワーク送受信装置がイーサネット送受信装置であり、また上記ＵＳＢ送受信装置が標準型ＵＳＢ送受信装置であることを特徴とする請求項１１記載の遠隔拡張装置。
【請求項１４】
上記遠隔拡張装置が、複数の標準型ＵＳＢケーブルを介して上記複数のＵＳＢ周辺装置に接続する自蔵型ユニットであることを特徴とする請求項１１記載のローカル拡張装置。
【請求項１５】
ホスト・コンピュータと一つ又は複数のＵＳＢ周辺装置との間でデータを伝送する方法であって、上記ＵＳＢ周辺装置がデータ通信ネットワークに分配され、上記データ通信ネットワークを通しての伝送遅延がＵＳＢ規格で通常許容されたものより大きく、上記方法が、ローカル拡張装置にホスト・コンピュータを接続すること、データ通信ネットワークを介して一つ又は複数の遠隔拡張装置に上記ローカル拡張装置を接続すること、及び一つ又は複数のＵＳＢ周辺装置に上記ローカル拡張装置を接続することを含み、上記ホスト・コンピュータと上記ＵＳＢ周辺装置との間の信号は、ホスト・コンピュータ及びＵＳＢ周辺装置がＵＳＢ規格で通常許された遅延より大きな往復遅延の存在下で作動できるように、ローカル拡張装置及び／又は遠隔拡張装置において保存され、収集され、吸収され、或いは処理されることを特徴とするデータ伝送方法。
【請求項１６】
システムへのＵＳＢ周辺装置の取り付けを検出し、ＵＳＢ周辺装置の取外しを検出する能力及び／又はＵＳＢ機能のネットワークアドレスを決める能力を備え、上記ＵＳＢ機能がＵＳＢハブ又はＵＳＢ周辺装置であり得ることを特徴とする請求項１５記載のデータ伝送方法。
【請求項１７】
ホスト・コンピュータによるＵＳＢ周辺装置の取付けを検出する請求項１６記載の方法であって、上記ホスト・コンピュータ及び上記ＵＳＢ周辺装置がローカル拡張装置及び遠隔拡張装置を介してＵＳＢ規格の要求に合致し、本方法が、
ａ）上記遠隔拡張装置において、装置接続事象を検出し、上記遠隔拡張装置が装置接続信号を上記ローカル拡張装置へ伝送し、そして上記ローカル拡張装置が上記ＵＳＢ周辺装置の接続状態における変化のローカル記録及び上記ＵＳＢ周辺装置の被接続状態のローカル記録を更新すること、
ｂ）装置状態変化情報に対する上記ホスト・コンピュータからの要求を上記ローカル拡張装置で受信し、上記ローカル拡張装置が上記ＵＳＢ周辺装置の状態の変化したことをホスト・コンピュータに知らせること、
ｃ）上記ＵＳＢ周辺装置の状態に対する上記ホスト・コンピュータからの要求を上記ローカル拡張装置で受信し、上記ローカル拡張装置が接続状態の変化の上記ローカル記録及び被接続状態のローカル記録を上記ホスト・コンピュータへ供給すること、
ｄ）接続状態情報の上記変化をクリアする上記ホスト・コンピュータからの要求を上記ローカル拡張装置で受信し、上記ローカル拡張装置が接続状態情報の変化の上記ローカル記録をクリアすること、
ｅ）上記ＵＳＢ周辺装置の状態に対する上記ホスト・コンピュータからの別の要求を上記ローカル拡張装置で受信し、上記ローカル拡張装置が接続状態の変化の上記クリアしたローカル記録及び被接続状態の上記ローカル記録を上記ホスト・コンピュータへ供給すること、
ｆ）上記ＵＳＢ周辺装置をリセットする上記ホスト・コンピュータからの別の要求を上記ローカル拡張装置で受信し、上記ローカル拡張装置がリセット信号を上記遠隔拡張装置に伝送し、そして上記遠隔拡張装置が上記ＵＳＢ周辺装置において物理的リセットを行うこと、
ｇ）上記ＵＳＢ周辺装置の伝送速度を上記遠隔拡張装置で検出し、上記遠隔拡張装置が速度信号を上記ローカル拡張装置へ伝送し、そして上記ローカル拡張装置が、上記ＵＳＢ周辺装置の伝送速度のローカル記録及び上記ＵＳＢ周辺装置のリセット状態における変化のローカル記録を更新すること、
ｈ）装置状態変化情報についての上記ホスト・コンピュータからの別の要求を上記ローカル拡張装置で受信し、上記ローカル拡張装置が上記ＵＳＢ周辺装置の状態の変化したことを上記ホスト・コンピュータへ知らせること、
ｉ）上記ＵＳＢ周辺装置の状態についての上記ホスト・コンピュータからのさらに別の要求を上記ローカル拡張装置で受信し、上記ローカル拡張装置が上記ＵＳＢ周辺装置の伝送速度の上記ローカル記録及び上記ＵＳＢ周辺装置のリセット状態における変化のローカル記録を上記ホスト・コンピュータへ供給すること、
ｊ）リセット状態情報の上記変化をクリアする上記ホスト・コンピュータからの要求を上記ローカル拡張装置で受信し、上記ローカル拡張装置がリセット状態情報の変化の上記ローカル記録をクリアすること、
ｋ）上記ＵＳＢ周辺装置の状態についての上記ホスト・コンピュータからの要求を上記ローカル拡張装置で受信し、上記ローカル拡張装置がリセット状態における変化のローカル記録を上記ホスト・コンピュータへ供給すること
を含むことを特徴とする方法。
【請求項１８】
往復伝搬時間が１マイクロ秒を超えるデータ通信ネットワークを通して動作することを特徴とする請求項１７記載の方法。
【請求項１９】
ホスト・コンピュータによるＵＳＢ周辺装置の取外しを検出する請求項１６記載の方法であって、上記ホスト・コンピュータ及び上記ＵＳＢ周辺装置がローカル拡張装置及び遠隔拡張装置を介してＵＳＢ規格の要求に合致し、本方法が、
ａ）上記遠隔拡張装置において、装置取外し事象を検出し、上記遠隔拡張装置が装置取外し信号を上記ローカル拡張装置へ伝送し、そして上記ローカル拡張装置が上記ＵＳＢ周辺装置の接続状態における変化のローカル記録及び上記ＵＳＢ周辺装置の被接続状態のローカル記録を更新すること、
ｂ）装置状態変化情報についての上記ホスト・コンピュータからの要求を上記ローカル拡張装置で受信し、上記ローカル拡張装置が上記ＵＳＢ周辺装置の状態の変化したことをホスト・コンピュータに知らせること、
ｃ）上記ＵＳＢ周辺装置の状態についての上記ホスト・コンピュータからの要求を上記ローカル拡張装置で受信し、上記ローカル拡張装置が接続状態の変化の上記ローカル記録及び被接続状態のローカル記録を上記ホスト・コンピュータへ供給すること、
ｄ）接続状態情報の上記変化をクリアする上記ホスト・コンピュータからの要求を上記ローカル拡張装置で受信し、上記ローカル拡張装置が接続状態情報の変化の上記ローカル記録をクリアすること、
ｅ）上記ＵＳＢ周辺装置の動作状態情報についての上記ホスト・コンピュータからの要求を上記ローカル拡張装置で受信し、上記ローカル拡張装置が作動状態ローカル記録をクリアすること、
ｆ）上記ＵＳＢ周辺装置の状態についての上記ホスト・コンピュータからの別の要求を上記ローカル拡張装置で受信し、上記ローカル拡張装置が接続状態における変化の上記クリアしたローカル記録及び動作状態の上記クリアしたローカル記録を上記ホスト・コンピュータへ供給すること
を含むことを特徴とする方法。
【請求項２０】
往復伝搬時間が１マイクロ秒を超えるデータ通信ネットワークを通して動作することを特徴とする請求項１９記載の方法。
【請求項２１】
ＵＳＢ機能がＵＳＢハブ又はＵＳＢ周辺装置であり得、又複数の上記ＵＳＢ機能がデータ通信ネットワークを介して分配され、さらにＵＳＢアドレスがホスト・コンピュータによって各ＵＳＢ機能に割り当てられるＵＳＢ機能のネットワークアドレスを決める請求項１６記載の方法であって、
ａ）上記ネットワークに直接又は間接に接続した各第１のＵＳＢ機能についてのデータ記録を構築し、そして上記ホスト・コンピュータによって動的に割り当てた唯一のＵＳＢアドレスによって各記録を確認すること、
ｂ）上記第１のＵＳＢ機能の接続される上流ＵＳＢハブのＵＳＢアドレスを上記データ記録内に記録すること、
ｃ）上記第１のＵＳＢ機能の接続される上流ＵＳＢハブのポート番号を上記データ記録内に記録すること、
ｄ）上記第１のＵＳＢ機能に直接接続した各下流ＵＳＢ機能のＵＳＢアドレスを上記データ記録内に記録すること、
ｅ）各下流ＵＳＢ機能の接続される上記第１のＵＳＢ機能のポート番号を上記データ記録内に記録すること、
ｆ）上記第１のＵＳＢ機能に割り当てたネットワークアドレスを記録することを含むことを特徴とする方法。
【請求項２２】
ホスト・コンピュータからのＵＳＢコマンドを、ローカル拡張装置を介してデータ通信ネットワークにおける一意性のネットワークアドレスに伝送する請求項１６記載の方法であって、
ａ）ホスト・コンピュータからのＵＳＢコマンドをローカル拡張装置で受信すること、
ｂ）上記ＵＳＢコマンドから第１のＵＳＢアドレスを抽出すること、
ｃ）上記第１のＵＳＢアドレスを用いて同様な記録の表内の第１のデータ記録をアクセスすること、
ｄ）上記第１のデータ記録が有効ネットワークアドレスを含んでいるかどうかを決めること、
ｅ）上記第１のデータ記録から第２のＵＳＢアドレスを抽出して、上記第１のＵＳＢアドレスのアドレスされ得る上流ＵＳＢハブを特定すること、
ｆ）有効なネットワークアドレスを見出すまでステップｃ）〜ｅ）を繰り返すこと、
ｇ）上記ＵＳＢコマンドをネットワークパケットにカプセル化（封じ込め）すること、
ｈ）上記ネットワークパケットを上記有効なネットワークアドレスにアドレスすること、
ｉ）上記アドレスしたネットワークパケットを上記データ通信ネットワークへ伝送すること
を含むことを特徴とする方法。
【請求項２３】
往復伝搬時間がホスト・コンピュータとＵＳＢ周辺装置との間で非同期データ・トランザクションを管理する請求項１６記載の方法であって、上記ホスト・コンピュータが高速度で動作し、上記ＵＳＢ周辺装置が標準的な速度（全速度又は低速度）で動作し、上記非同期データが遠隔拡張装置及びローカル拡張装置を介して装置からホストへの方向に伝送し、本方法が、
ａ）分割データ転送セションの開始についての上記ホスト・コンピュータからの最初の要求をローカル拡張装置で受信し、上記ローカル拡張装置がネットワークを介して上記遠隔拡張装置へ上記最初の要求を伝送し、そして上記ローカル拡張装置が上記ホスト・コンピュータへ否定応答を発生すること、
ｂ）分割データ転送セションの開始についての上記ホスト・コンピュータからの続いての要求をローカル拡張装置で受信し、上記ローカル拡張装置が上記遠隔拡張装置から上記伝送した最初の要求に対する応答を受信するまで、上記ローカル拡張装置が上記ホスト・コンピュータへ否定応答を発生し続けること、
ｃ）分割データ転送セションの開始についての上記伝送した最初の要求を遠隔拡張装置で受信し、上記遠隔拡張装置が分割データ転送セションの開始についての上記伝送した要求をデータ転送についての標準的な速度要求に変換し、そして上記遠隔拡張装置がデータ転送についての上記標準的な速度要求を上記ＵＳＢ周辺装置へ伝送すること、
ｄ）遠隔拡張装置において肯定応答を発生し、そしてネットワークを介して上記肯定応答を上記ローカル拡張装置へ伝送すること、
ｅ）ローカル拡張装置において上記伝送された肯定応答を受信し、そして上記ローカル拡張装置が上記伝送された肯定応答をローカルメモリに記憶すること、
ｆ）分割データ転送セションの開始についての上記ホスト・コンピュータからの別の要求をローカル拡張装置で受信し、上記ローカル拡張装置がローカルメモリから上記伝送された肯定応答を検索し、そして上記ローカル拡張装置が上記検索した肯定応答を上記ホスト・コンピュータへ伝送すること、
ｇ）上記ＵＳＢ周辺装置からのデータ転送応答を遠隔拡張装置で受信し、上記遠隔拡張装置が上記ＵＳＢ周辺装置に対して肯定応答を発生し、そして上記遠隔拡張装置がネットワークを介して上記ローカル拡張装置へ上記データ転送応答を伝送すること、
ｈ）分割データ転送セションの完了についての最初の要求をローカル拡張装置で受信し、上記ローカル拡張装置がデータ転送応答のないことについてローカルメモリをチェックし、そして上記ローカル拡張装置が上記ホスト・コンピュータへ未だ受信していないことを表す信号を発生すること、
ｉ）上記遠隔拡張装置からの上記伝送されたデータ転送応答をローカル拡張装置で受信し、そして上記ローカル拡張装置が上記伝送されたデータ転送応答をローカルメモリに記憶すること、
ｊ）分割データ転送セションの完了についての別の要求をローカル拡張装置で受信し、上記ローカル拡張装置がローカルメモリから上記伝送されたデータ転送応答を検索し、そして上記検索したデータ転送応答を上記ホスト・コンピュータへ伝送すること
を含むことを特徴とする方法。
【請求項２４】
往復伝搬時間が１マイクロ秒を超えるデータ通信ネットワークを通して動作することを特徴とする請求項２３記載の方法。
【請求項２５】
ホスト・コンピュータとＵＳＢ周辺装置との間で非同期データ・トランザクションを管理する請求項１５記載の方法であって、上記ホスト・コンピュータが高速度で動作し、上記ＵＳＢ周辺装置が標準的な速度（全速度又は低速度）で動作し、上記非同期データがローカル拡張装置及び遠隔拡張装置を介してホストから装置への方向に伝送し、本方法が、
ａ）分割データ転送セションの開始についての上記ホスト・コンピュータからの最初の通知をローカル拡張装置で受信し、上記ローカル拡張装置がネットワークを介して上記遠隔拡張装置へ上記最初の通知を伝送し、そして上記ローカル拡張装置が上記ホスト・コンピュータへ否定応答を発生すること、
ｂ）分割データ転送セションの開始についての上記ホスト・コンピュータからの続いての通知をローカル拡張装置で受信し、上記ローカル拡張装置が上記遠隔拡張装置から上記伝送した最初の通知に対する応答を受信するまで、上記ローカル拡張装置が上記ホスト・コンピュータへ否定応答を発生し続けること、
ｃ）分割データ転送セションの開始についての上記伝送した最初の通知を遠隔拡張装置で受信し、上記遠隔拡張装置が分割データ転送セションの開始についての上記伝送した通知をデータ転送についての標準的な速度通知に変換し、そして上記遠隔拡張装置がデータ転送についての上記標準的な速度通知を上記ＵＳＢ周辺装置へ伝送すること、
ｄ）遠隔拡張装置において肯定応答を発生し、そしてネットワークを介して上記肯定応答を上記ローカル拡張装置へ伝送すること、
ｅ）ローカル拡張装置において上記伝送された肯定応答を受信し、そして上記ローカル拡張装置が上記伝送された肯定応答をローカルメモリに記憶すること、
ｆ）分割データ転送セションの開始についての上記ホスト・コンピュータからの別の通知をローカル拡張装置で受信し、上記ローカル拡張装置がローカルメモリから上記伝送された肯定応答を検索し、そして上記ローカル拡張装置が上記検索した肯定応答を上記ホスト・コンピュータへ伝送すること、
ｇ）上記ＵＳＢ周辺装置からの肯定応答を遠隔拡張装置で受信し、そして上記遠隔拡張装置がネットワークを介して上記ローカル拡張装置へ上記肯定応答を伝送すること、
ｈ）分割データ転送セションの完了についての最初の要求をローカル拡張装置で受信し、上記ローカル拡張装置が肯定応答のないことについてローカルメモリをチェックし、そして上記ローカル拡張装置が上記ホスト・コンピュータへ未だ受信していないことを表す信号を発生すること、
ｉ）上記遠隔拡張装置からの上記伝送された肯定応答をローカル拡張装置で受信し、そして上記ローカル拡張装置が上記伝送された肯定応答をローカルメモリに記憶すること、
ｊ）分割データ転送セションの完了についての別の要求をローカル拡張装置で受信し、上記ローカル拡張装置がローカルメモリから上記伝送された肯定応答を検索し、そして上記検索した肯定応答を上記ホスト・コンピュータへ伝送すること
を含むことを特徴とする方法。
【請求項２６】
往復伝搬時間が１マイクロ秒を超えるデータ通信ネットワークを通して動作することを特徴とする請求項２５記載の方法。
【請求項２７】
ホスト・コンピュータとＵＳＢ周辺装置との間で等時性データ・トランザクションを管理する請求項１５記載の方法であって、上記ホスト・コンピュータが高速度で動作し、上記ＵＳＢ周辺装置が標準的な速度（全速度又は低速度）で動作し、上記等時性データが遠隔拡張装置及びローカル拡張装置を介して装置からホストへの方向に伝送し、本方法が、
ａ）分割データ転送セションの開始についての上記ホスト・コンピュータからの最初の要求をローカル拡張装置で受信し、上記ローカル拡張装置がネットワークを介して上記遠隔拡張装置へ分割データ転送セションの開始についての上記最初の要求を伝送すること、
ｂ）分割データ転送セションの完了についての最初の要求をローカル拡張装置で受信し、上記ローカル拡張装置が完全な連続した分割データ転送応答のないことについてローカルメモリをチェックし、そして上記ローカル拡張装置が上記ホスト・コンピュータへ空データ応答を発生すること、
ｃ）分割データ転送セションの開始についての上記伝送した最初の要求を遠隔拡張装置で受信し、上記遠隔拡張装置が分割データ転送セションの開始についての上記伝送した要求をデータ転送についての標準的な速度要求に変換し、そして上記遠隔拡張装置がデータ転送についての上記標準的な速度要求を上記ＵＳＢ周辺装置へ伝送すること、
ｄ）上記ＵＳＢ周辺装置からのデータ転送応答を遠隔拡張装置において受信し、そして上記遠隔拡張装置が上記受信したデータ転送応答を一連の分割データ転送応答に変換し、そして上記遠隔拡張装置がネットワークを介して上記一連の分割データ転送応答を上記ローカル拡張装置へ伝送すること、
ｅ）上記伝送された一連の分割データ転送応答をローカル拡張装置において受信し、そして上記ローカル拡張装置が上記伝送された一連の分割データ転送応答を肯定応答をローカルメモリに記憶すること、
ｆ）分割データ転送セションの開始についての上記ホスト・コンピュータからの続いての要求をローカル拡張装置で受信し、上記ローカル拡張装置がネットワークを介して上記遠隔拡張装置へ上記続いての要求を伝送すること、
ｇ）分割データ転送セションの完了についての一連の続いての要求をローカル拡張装置で受信し、上記ローカル拡張装置が完全な一連の分割データ転送応答の存在についてローカルメモリをチェックし、そして上記ローカル拡張装置がローカルメモリからの上記一連の分割データ転送応答を検索し、上記一連の分割データ転送応答を上記ホスト・コンピュータへ伝送すること
を含むことを特徴とする方法。
【請求項２８】
往復伝搬時間が１マイクロ秒を超えるデータ通信ネットワークを通して動作することを特徴とする請求項２７記載の方法。
【請求項２９】
ホスト・コンピュータとＵＳＢ周辺装置との間で等時性データ・トランザクションを管理する請求項１５記載の方法であって、上記ホスト・コンピュータが高速度で動作し、上記ＵＳＢ周辺装置が標準的な速度（全速度又は低速度）で動作し、上記等時性データがローカル拡張装置及び遠隔拡張装置を介してホストから装置への方向に伝送し、本方法が、
ａ）分割データ転送セションの開始についての上記ホスト・コンピュータからの通知をローカル拡張装置で受信し、上記ローカル拡張装置がネットワークを介して上記遠隔拡張装置へ分割データ転送セションの開始についての上記通知を伝送し、そして上記遠隔拡張装置が分割データ転送セションの開始についての上記通知をローカルメモリに記憶すること、
ｂ）一連の分割データ転送セションについての上記ホスト・コンピュータからの最初の通知をローカル拡張装置で受信し、上記ローカル拡張装置がネットワークを介して上記遠隔拡張装置へ一連の分割データ転送セションについての上記最初の通知を伝送し、そして上記遠隔拡張装置が一連の分割データ転送セションについての上記最初の通知をローカルメモリに記憶すること、
ｃ）一連の分割データ転送セションについての上記ホスト・コンピュータからの別の通知を遠隔拡張装置で受信し、上記遠隔拡張装置がネットワークを介して一連の分割データ転送セションについての上記別の通知を上記遠隔拡張装置へ伝送し、そして上記遠隔拡張装置が一連の分割データ転送セションについての上記別の通知をローカルメモリに記憶すること、
ｄ）分割データ転送セションの完了についての上記ホスト・コンピュータからの通知をローカル拡張装置において受信し、そして上記ローカル拡張装置がネットワークを介して分割データ転送セションの完了についての上記通知を上記遠隔拡張装置に伝送し、そして上記遠隔拡張装置が分割データ転送セションの完了についての上記通知をローカルメモリに記憶すること、
ｅ）分割データ転送の開始についての上記記憶された通知、分割データ転送の連続についての上記記憶された最初の通知、及び分割データ転送セションの完了についての上記記憶された通知をデータ転送の標準的な速度通知に遠隔拡張装置においてアセンブルすること、
ｆ）上記遠隔拡張装置がデータ転送の上記標準的な速度通知を上記ＵＳＢ周辺装置へ伝送すること
を含むことを特徴する方法。
【請求項３０】
往復伝搬時間が１マイクロ秒を超えるデータ通信ネットワークを通して動作することを特徴とする請求項２９記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、汎用シリアル・バス（ＵＳＢ）ポート用いてコンピュータと装置との間で信号を伝送する方法及び装置に関するものであり、そして特にデータ通信ネットワークを介して分配された多数のＵＳＢ周辺装置を動作させる方法に関する。
【背景技術】
【０００２】
汎用シリアル・バス（ＵＳＢ）は、標準的なユーザーによってパーソナル・コンピュータに広範囲の周辺機器を取付けできるようにした技術である。かかる技術は、キーボード、マウス、スピーカー、ジョイステック、カメラ、フラッシュ・ドライブ、ハード・ドライブ、ＤＶＤドライブ、及びその他の多くの装置のような共通の雌雄編装置の全てをサポートし、そして最新のコンピュータにおけるその使用は普通である。
【０００３】
ＵＳＢは、コンピュータ及び通信市場における最大の七社の協力によって作られた。これらの会社はインテル、コンパック、マイクロソフト、ノルテル、ＮＥＣ、デジタル及びＩＢＭであった。ＵＳＢを規定する仕様（例えば、インテル等の汎用シリアル・バス仕様、１．０、１９９６年１月、１９９８年９月２３日に改訂１．１として更新、そして２０００年４月に改訂２．０としてさらに更新、さらにその後更新、追加及び変更、以下これをひとまとめにして“ＵＳＢ仕様”と記載し、この用語は将来の変更及び改訂を含む）は専有権のあるものではなく、ＵＳＢ実施フォーラム（ＵＳＢ−ＩＦ）として知られた、開かれた工業組織体によって管理されている。ＵＳＢ仕様は、ＵＳＢ規格を満たすために合致させなければならない多数の基準を確立している。ＵＳＢ仕様では、多数の項目も規定しており、かかる規定はこの仕様のために適用される。
【０００４】
ＵＳＢ仕様では、データ通信は、好ましくはホスト・コンピュータにインストールされたＵＳＢホスト・コントローラによって管理される。さらに、上記データ通信は、一連のＵＳＢトランザクションにおいて行われ、各ＵＳＢトランザクションは、ＵＳＢホスト・コントローラによって開始され、そして、一つ、二つ又は三つのサブアクションから成っている。各サブセクションはデータの流れ方向の反転によって終端される。
【０００５】
しかし、本発明に最も関連するのは、全ての既知のＵＳＢ仕様が一般に装置をホスト・コンピュータから離すことのできる距離を最大で５ｍまでに制限するという特徴にある。一連のＵＳＢハブ‐‐距離の増大よりもむしろ件数の増加をサポートするようにされる装置‐‐を用いることによって、かかる距離の制限は理論的には３０ｍまで増大される。しかし、この多数のハブを用いた解決法は、高価でしかも扱い難くなる。
【０００６】
特許文献１には、ホスト・コンピュータと周辺装置との距離を伸ばす方法及び装置が記載されており、使用可能な距離は１００ｍ又はそれ以上に増大した。特許文献１の内容は参考として本明細書に組み込まれる。この解決法は有効であるが、これと同じ効果をもたらす代わりの及び／又は改良された方法及び装置を提供することはなお望ましい。
【０００７】
ＵＳＢの範囲を広げることのできる程度を限定している主なファクタは伝送遅延である。ＵＳＢ仕様では、ホスト・コンピュータから装置へそしてコンピュータへ戻る単一伝送の往復の遅延については最大期間でほぼ１．５マイクロ秒が許容される。１．５マイクロ秒の往復遅延の内容は、二つのほぼ等しい部分、すなわちホスト・コンピュータと装置との両方向における遅延と、所望の応答をするために装置で必要なターンアラウンド時間とから成っている。特許文献１に記載の解決法は往復遅延の上限におけるこの限定を除去している。
【０００８】
特許文献１に記載の解決法では、距離を伸ばした距離にわたって伝送遅延を伴ってＵＳＢ周辺装置を動作させることができるが、多数のＵＳＢ周辺装置を互いに広く分離する形態を取ることができなかった。単一ホスト・コンピュータで制御したＵＳＢ周辺装置を広く分離する要求は特許文献１に記載の解決法の多数の具体例を利用することで満たすことができるが、さらに順応性がありしかもコスト上有効な解決法を考えるのが有益である。
【０００９】
本発明に関連する別の特徴としては、あらゆる既知のＵＳＢ規格では、多くのＵＳＢ周辺装置がＵＳＢホストコントローラにおける単一ポートに同時に接続されることが要求される場合に一般にＵＳＢハブを使用する必要があるということにある。ＵＳＢハブの特徴は、ＵＳＢハブがＵＳＢホストコントローラ（又は上流ハブ）に接続する単一上流ポートと多数のＵＳＢ周辺装置（又は下流ハブ）に接続する多数の下流ポートとを備えていることにある。ＵＳＢホストコントローラを含むホスト・コンピュータに常駐のＵＳＢドライバソフトウエアは、ＵＳＢハブ及とＳＢ周辺装置との接続トポロジーを承知しており、上記トポロジーが維持されない場合には作動しない。
【００１０】
従って、単一のＵＳＢホストコントローラで多数のＵＳＢ周辺装置をサポートすることは、ＵＳＢハブを上記ＵＳＢ周辺装置と上記ＵＳＢホストコントローラとの間に接続する必要があり、しかも上記ＵＳＢハブに、各ＵＳＢ周辺装置に対する個々の下流ポートを設けなければならないことが立証された。しかし、上記ＵＳＢハブと上記ＵＳＢ周辺装置との間にデータ通信ネットワークを挿入するのが望ましい場合には、上記ＵＳＢハブと上記データ通信ネットワークとの間の全てのトラフィク・トラベリング（巡回）を単一の物理的接続により集中させるのが有利である。
【００１１】
本発明に関連するさらに別の特徴としては、あらゆる既知のＵＳＢ規格では、ＵＳＢハブの各下流ポートが、上記下流ポートと該下流ポートに接続され得る任意のＵＳＢ周辺装置との間の物理的接続の制御及び監視をサポートすることが一般に必要であることにある。特に、上記下流ポートは、ＵＳＢ周辺装置の接続及び分離を検出できなければならず、そして上記ＵＳＢ周辺装置の動作をリセット、一時停止及び再開できなければならない。個々の物理的接続をデータ通信ネットワークに対する共用接続で置き換える場合に、上記個々の物理的接続と通常組合さった上記接続、分離、リセット、一時停止及び再開能力を維持するのが有利である。
【先行技術文献】
【特許文献】
【００１２】
【特許文献１】米国特許第６３８１６６６号
【発明の概要】
【発明が解決しようとする課題】
【００１３】
従って、特許文献１に記載されたようにＵＳＢ技術の範囲の拡張が二点間形態で有効であることが証明されたが、ＵＳＢ規格を利用して、長い伝送遅延を伴い得るネットワークの種々の場所に多数の周辺装置を分配できる改良型の方法及び装置を提供することにより、当該技術の改良を行うことがなおも望ましい。
【００１４】
よって、本発明の目的は、仮想ＵＳＢハブを通して、ＵＳＢホストコントローラを備えたホスト・コンピュータに多数のＵＳＢ周辺装置を接続できる方法及び装置を提供することにある。
【００１５】
本発明の別の目的は、上記仮想ＵＳＢハブの機能をデータ通信ネットワークに分配し得るようにすることにある。
【００１６】
本発明の別の目的は、単一物理的接続を通して上記データ通信ネットワークに上記ホスト・コンピュータを接続し得るようにすることにある。
【００１７】
本発明の別の目的は、上記データ通信ネットワークがＵＳＢ規格で規定されたパラメータを超える伝送遅延を示し得るようにすることにある。
【００１８】
本発明の別の目的は、上記多数のＵＳＢ周辺装置及び上記ＵＳＢホストコントローラがＵＳＢ２．０規格で許容された任意のデータ転送速度で動作し得るようにすることにある。
【００１９】
本発明の別の目的は、仮想ＵＳＢ周辺装置が上記仮想ＵＳＢハブに接続され得るようにすることにある。
【００２０】
本発明の別の目的は、システムでサポートされかつＵＳＢプロトコルの下で作動する既存のホスト・コンピュータ、ハブ及び装置に対してハードウエア又はソフトウエアを交換する必要のないようにすることにある。それにより、本発明は通常の遅延及び拡張遅延装置から成るネットワークに組み込まれ得る。
【００２１】
本発明の別の目的は、上記データ通信ネットワークに対して上記多数のＵＳＢ周辺装置の構成を予めの知識を必要としないようにすることにある。
【００２２】
本発明の別の目的は、接続、分離、リセット、一時停止及び再開のＵＳＢ装置管理機能が、先行技術の物理的接続を本発明で記載したようなネットワーク接続に代える場合に、先行技術のＵＳＢ規格と一致して作動するようにすることにある。
【００２３】
本発明の別の目的は、装置がコスト的に非常に有効であり、しかもＵＳＢ業界で目標とした最大数の装置と一致するようにようにすることにある。
【００２４】
本発明のこれら及びその他の目的は、本明細書において明らかとなり、データ通信ネットワークを通して一つ又は多数の遠隔拡張装置に接続されるローカル拡張装置にホスト・コンピュータが接続される方法及び関連した装置を提供する本発明によって完全に又は少なくとも部分的に達成される。遠隔拡張装置は、多数の通常のＵＳＢ周辺装置に接続され、上記ホスト・コンピュータと上記ＵＳＢ周辺装置との間の信号は、ホスト・コンピュータ及びＵＳＢ周辺装置がＵＳＢ規格で通常許容されたものより大きな伝送遅延の存在下で動作できるように、ローカル拡張及び／又は遠隔拡張装置において処理される。特に、本発明は、ホスト・コンピュータとＵＳＢ周辺装置との間の往復通信遅延が１マイクロ秒を越える場合に殆ど有用である。
【課題を解決するための手段】
【００２５】
従って、第１の特徴において、本発明は、ホスト・コンピュータと一つ又は複数のＵＳＢ周辺装置との間でデータを伝送するコンピュータシステムを提供し、上記ＵＳＢ周辺装置はデータ通信ネットワークに分配され、上記データ通信ネットワークを通しての伝送遅延がＵＳＢ規格で通常許容されたものより大きく、上記コンピュータシステムは、ローカル拡張装置に接続されたホスト・コンピュータを有し、上記ローカル拡張装置は、データ通信ネットワークを介して一つ又は複数の遠隔拡張装置に接続され、そして複数のＵＳＢ周辺装置に接続され、上記ホスト・コンピュータと上記ＵＳＢ周辺装置との間の信号は、ホスト・コンピュータ及びＵＳＢ周辺装置がＵＳＢ規格で通常許された遅延より大きな往復遅延の存在下で作動できるように、ローカル拡張装置及び／又は遠隔拡張装置において保存され、収集され、吸収され、或いは処理される。
【００２６】
好ましくは、往復遅延は、伝送遅延及び送受反転時間遅延を含み、ホスト・コンピュータとＵＳＢ周辺装置との間の上記伝送遅延は１マイクロ秒を超える。
【００２７】
本発明は、ホスト・コンピュータと一つ又は複数のＵＳＢ周辺装置との間でデータを伝送するコンピュータシステムを提供し、上記ＵＳＢ周辺装置は、データ通信ネットワークに分配され得、上記データ通信ネットワークを通しての伝送遅延はＵＳＢ規格で通常許された遅延より大きく、上記コンピュータシステムは、
ａ）ＵＳＢサブアクションを発生しかつ許容するホスト・コンピュータと、
ｂ）上記ホスト・コンピュータで開始したＵＳＢサブアクションに応答できる一つ又は複数のＵＳＢ周辺装置と、
ｃ）上記ホスト・コンピュータからデータ通信ネットワークへＵＳＢサブアクションを伝送し、かつ上記データ通信ネットワークから受けたＵＳＢサブアクションを上記ホスト・コンピュータへ伝送するために上記ホスト・コンピュータに接続されたローカル拡張装置ユニットと、
ｄ）各々一つ又は複数のＵＳＢ周辺装置に接続され、上記データ通信ネットワークから受けたＵＳＢサブアクションを上記ＵＳＢ周辺装置へ伝送し、かつ上記ＵＳＢ周辺装置から受けたＵＳＢサブアクションを上記データ通信ネットワークへ伝送する一つ又は複数の遠隔拡張装置ユニットと、
ｅ）上記ローカル拡張装置ユニットから上記遠隔拡張装置ユニットへＵＳＢサブアクションを伝送し、かつ上記遠隔拡張装置ユニットから上記データ通信ネットワークへＵＳＢサブアクションを伝送するデータ通信ネットワークと、
ｆ）上記ホスト・コンピュータから受けたＵＳＢサブアクションを、上記データ通信ネットワークを介して上記遠隔拡張装置ユニットへ伝送し、かつＵＳＢサブアクションを発生し、発生したＵＳＢサブアクションを上記ホスト・コンピュータへ伝送する上記ローカル拡張装置ユニットにおける手段と、
ｇ）上記ホスト・コンピュータから受けた上記ＵＳＢサブアクションを一つ又は複数のＵＳＢ周辺装置へ伝送し、かつＵＳＢ周辺装置から受けたサブアクションを受ける上記遠隔拡張装置ユニットにおける手段と、
ｈ）ＵＳＢ周辺装置から受けた上記サブアクションを、上記データ通信ネットワークを介して上記ローカル拡張装置ユニットへ伝送する上記遠隔拡張装置ユニットにおける手段と、
ｉ）ＵＳＢ周辺装置から受けたＵＳＢサブアクションを確認するＵＳＢサブアクションを発生し、かつ上記発生した確認ＵＳＢサブアクションを上記ＵＳＢ周辺装置へ伝送する上記遠隔拡張装置ユニットにおける手段と、
ｊ）上記ホスト・コンピュータから受けたＵＳＢサブアクションに応答してＵＳＢサブアクションを発生し、かつ上記発生した応答ＵＳＢサブアクションを上記ローカル拡張装置ユニットへ伝送する上記遠隔拡張装置ユニットにおける手段と、
ｋ）上記データ通信ネットワークを通して上記遠隔拡張装置ユニットから受けた一連の入ＵＳＢサブアクションが共通の出ＵＳＢサブアクションに関連する場合に受信しかつ確認する上記ローカル拡張装置ユニットにおける手段と、
ｌ）入ＵＳＢサブアクションが上記ホスト・コンピュータによって再び要求されるまで、遠隔拡張装置ユニットから入ＵＳＢサブアクションを記憶する上記ローカル拡張装置ユニットにおける手段と、
ｍ）上記記憶したＵＳＢサブアクションを上記ホスト・コンピュータへ伝送する上記ローカル拡張装置ユニットにおける手段と
を有する。
【００２８】
コンピュータシステムはまた、好ましくは、
ａ）複写ＵＳＢサブアクションを吸収する好ましくは上記ローカル拡張装置ユニットにおける手段と、
ｂ）一連のＵＳＢサブアクションを原子ＵＳＢサブアクションにアッセンブルし、そして好ましくは上記原子ＵＳＢサブアクションを上記ＵＳＢ周辺装置に伝送する上記遠隔拡張装置ユニットにおける手段と、
ｃ）原子ＵＳＢサブアクションを一連の別個のＵＳＢサブアクションに逆アッセンブルし、そして好ましくは上記一連の別個のＵＳＢサブアクションを上記ローカル拡張装置ユニットへ伝送する上記遠隔拡張装置ユニットにおける手段と
を有する。
【００２９】
別の特徴では、本発明は、本発明に関して上記したコンピュータシステムにおけるホスト・コンピュータとデータ通信ネットワークとの間でＵＳＢトラフィックを伝送するローカル拡張装置を提供し、上記ＵＳＢトラフィックは、多数のＵＳＢ周辺装置にアドレスでき、上記ローカル拡張装置は、
ａ）上記ホスト・コンピュータに接続するＵＳＢ送受信装置と、
ｂ）上記ＵＳＢ送受信装置を制御する上流対向ポートと、
ｃ）上記ローカル拡張装置を通るＵＳＢサブアクションを再生し、かつ上記ローカル拡張装置の構成要素間でＵＳＢサブアクションを切換えるローカル・リピータユニットと、
ｄ）上記ローカル拡張装置による操作中にＵＳＢサブアクションを記憶するメモリー・ユニットと、
ｅ）下流（ホストからネットワーク）方向へ動くＵＳＢサブアクションに対するネットワークアドレスを提供するローカル・ルータ・ユニットと、
ｆ）上記データ通信ネットワークに接続するネットワーク送受信装置と、
ｇ）上記複数のＵＳＢ周辺装置の状態に関して上記ホスト・コンピュータで発生したサブアクションに応答するハブ・コントローラ・ユニットと、
ｈ）上記複数のＵＳＢ周辺装置の状態を管理するために複数の仮想ポートを具体化する手段と、
ｉ）付加価値機能を提供するために複数の仮想ＵＳＢ装置を具体化する手段と、
ｊ）上記ハブ・コントローラにアドレスしたＵＳＢサブアクションを確認する上記ローカル・リピータにおける手段と、
ｋ）上記複数の仮想ＵＳＢ装置にアドレスしたＵＳＢサブアクションを確認する上記ローカル・リピータにおける手段と、
ｌ）上記複数のＵＳＢ周辺装置の状態を維持する上記複数の具体化した仮想ポートにおける手段と、
ｍ）上記データ通信ネットワークから装置状態変化信号を受信しかつ上記複数のＵＳＢ周辺装置の状態を更新する上記複数の具体化した仮想ポートにおける手段と、
ｎ）上記ホスト・コンピュータから装置管理指令を受信しかつ装置管理信号を上記データ通信ネットワークへ伝送する上記ハブ・コントローラにおける手段と
を有する。
【００３０】
別の特徴では、本発明は、本発明に関して上記したコンピュータシステムにおけるデータ通信ネットワークとＵＳＢ周辺装置との間でＵＳＢサブアクションを伝送する遠隔拡張装置を提供し、上記遠隔拡張装置は、
ａ）上記データ通信ネットワークに接続するネットワーク送受信装置と、
ｂ）上流（ネットワークからホスト）方向へ動くＵＳＢサブアクションに対するネットワークアドレスを提供する遠隔ルータ・ユニットと、
ｃ）上記遠隔拡張装置を通るＵＳＢサブアクションを再生し、かつ上記遠隔拡張装置の構成要素間でＵＳＢサブアクションを切換える遠隔リピータ・ユニットと、
ｄ）高速分割トランザクションと全速／低速原子トランザクションとの間で変換する器トランザクション変換装置ユニットと、
ｅ）上記遠隔拡張装置による操作中にＵＳＢサブアクションを記憶するメモリー・ユニットと、
ｆ）上記ＵＳＢ周辺装置に接続するＵＳＢ送受信装置と、
ｇ）上記ＵＳＢ送受信装置を制御する下流対向ポートと、
ｈ）分割トランザクションを確認する上記遠隔ルータ・ユニットにおける手段と、
ｉ）上記ＵＳＢ周辺装置の状態を検出する上記下流ポートコントローラにおける装置と、
ｊ）装置状態信号を発生し、そして上記信号を上記データ通信ネットワークへ伝送する上記下流ポートコントローラにおける手段と、
ｋ）上記データ通信ネットワークから装置管理信号を受信する上記下流ポートコントローラにおける手段と、
ｌ）上記ＵＳＢ周辺装置の状態を変更する上記下流ポートコントローラにおける手段と
を有する。
【００３１】
動作に際して、本システムは好ましくは、本システムへのＵＳＢ周辺装置の取り付けを検出し、ＵＳＢ周辺装置の取外しを検出し、またＵＳＢ機能のネットワークアドレスを決める手段及び能力を備え、上記ＵＳＢ機能はＵＳＢハブ又はＵＳＢ周辺装置であり得る。
【００３２】
別の特徴では、本発明は、往復伝搬時間がホスト・コンピュータを介して１マイクロ秒を超える好ましくはローカル拡張装置及び遠隔拡張装置を通るデータ通信ネットワークを通してＵＳＢ周辺装置の接続を検出し、上記ホスト・コンピュータ及び上記ＵＳＢ周辺装置がＵＳＢ規格の要求に合致する方法を提供し、本方法は、
ａ）上記遠隔拡張装置において、装置接続事象を検出し、上記遠隔拡張装置が装置接続信号を上記ローカル拡張装置へ伝送し、そして上記ローカル拡張装置が上記ＵＳＢ周辺装置の接続状態における変化のローカル記録及び上記ＵＳＢ周辺装置の被接続状態のローカル記録を更新すること、
ｂ）装置状態変化情報に対する上記ホスト・コンピュータからの要求を上記ローカル拡張装置で受信し、上記ローカル拡張装置が上記ＵＳＢ周辺装置の状態の変化したことをホスト・コンピュータに知らせること、
ｃ）上記ＵＳＢ周辺装置の状態に対する上記ホスト・コンピュータからの要求を上記ローカル拡張装置で受信し、上記ローカル拡張装置が接続状態の変化の上記ローカル記録及び被接続状態のローカル記録を上記ホスト・コンピュータへ供給すること、
ｄ）接続状態情報の上記変化をクリアする上記ホスト・コンピュータからの要求を上記ローカル拡張装置で受信し、上記ローカル拡張装置が接続状態情報の変化の上記ローカル記録をクリアすること、
ｅ）上記ＵＳＢ周辺装置の状態に対する上記ホスト・コンピュータからの別の要求を上記ローカル拡張装置で受信し、上記ローカル拡張装置が接続状態の変化の上記クリアしたローカル記録及び被接続状態の上記ローカル記録を上記ホスト・コンピュータへ供給すること、
ｆ）上記ＵＳＢ周辺装置をリセットする上記ホスト・コンピュータからの別の要求を上記ローカル拡張装置で受信し、上記ローカル拡張装置がリセット信号を上記遠隔拡張装置に伝送し、そして上記遠隔拡張装置が上記ＵＳＢ周辺装置において物理的リセットを行うこと、
ｇ）上記ＵＳＢ周辺装置の伝送速度を上記遠隔拡張装置で検出し、上記遠隔拡張装置が速度信号を上記ローカル拡張装置へ伝送し、そして上記ローカル拡張装置が、上記ＵＳＢ周辺装置の伝送速度のローカル記録及び上記ＵＳＢ周辺装置のリセット状態における変化のローカル記録を更新すること、
ｈ）装置状態変化情報についての上記ホスト・コンピュータからの別の要求を上記ローカル拡張装置で受信し、上記ローカル拡張装置が上記ＵＳＢ周辺装置の状態の変化したことを上記ホスト・コンピュータへ知らせること、
ｉ）上記ＵＳＢ周辺装置の状態についての上記ホスト・コンピュータからのさらに別の要求を上記ローカル拡張装置で受信し、上記ローカル拡張装置が上記ＵＳＢ周辺装置の伝送速度の上記ローカル記録及び上記ＵＳＢ周辺装置のリセット状態における変化のローカル記録を上記ホスト・コンピュータへ供給すること、
ｊ）リセット状態情報の上記変化をクリアする上記ホスト・コンピュータからの要求を上記ローカル拡張装置で受信し、上記ローカル拡張装置がリセット状態情報の変化の上記ローカル記録をクリアすること、
ｋ）上記ＵＳＢ周辺装置の状態についての上記ホスト・コンピュータからの要求を上記ローカル拡張装置で受信し、上記ローカル拡張装置がリセット状態における変化のローカル記録を上記ホスト・コンピュータへ供給すること
を含む。
【００３３】
別の特徴では、本発明は、往復伝搬時間がホスト・コンピュータを介して１マイクロ秒を超える好ましくはローカル拡張装置及び遠隔拡張装置を通るデータ通信ネットワークを通してＵＳＢ周辺装置の取外しを検出し、上記ホスト・コンピュータ及び上記ＵＳＢ周辺装置がＵＳＢ規格の要求に合致する方法を提供し、本方法は、
ａ）上記遠隔拡張装置において、装置取外し事象を検出し、上記遠隔拡張装置が装置取外し信号を上記ローカル拡張装置へ伝送し、そして上記ローカル拡張装置が上記ＵＳＢ周辺装置の接続状態における変化のローカル記録及び上記ＵＳＢ周辺装置の被接続状態のローカル記録を更新すること、
ｂ）装置状態変化情報についての上記ホスト・コンピュータからの要求を上記ローカル拡張装置で受信し、上記ローカル拡張装置が上記ＵＳＢ周辺装置の状態の変化したことをホスト・コンピュータに知らせること、
ｃ）上記ＵＳＢ周辺装置の状態についての上記ホスト・コンピュータからの要求を上記ローカル拡張装置で受信し、上記ローカル拡張装置が接続状態の変化の上記ローカル記録及び被接続状態のローカル記録を上記ホスト・コンピュータへ供給すること、
ｄ）接続状態情報の上記変化をクリアする上記ホスト・コンピュータからの要求を上記ローカル拡張装置で受信し、上記ローカル拡張装置が接続状態情報の変化の上記ローカル記録をクリアすること、
ｅ）上記ＵＳＢ周辺装置の動作状態情報についての上記ホスト・コンピュータからの要求を上記ローカル拡張装置で受信し、上記ローカル拡張装置が作動状態ローカル記録をクリアすること、
ｆ）上記ＵＳＢ周辺装置の状態についての上記ホスト・コンピュータからの別の要求を上記ローカル拡張装置で受信し、上記ローカル拡張装置が接続状態における変化の上記クリアしたローカル記録及び動作状態の上記クリアしたローカル記録を上記ホスト・コンピュータへ供給すること
を含む。
【００３４】
別の特徴では、本発明は、ＵＳＢ機能がＵＳＢハブ又はＵＳＢ周辺装置であり得、又複数の上記ＵＳＢ機能がデータ通信ネットワークを介して分配され、さらにＵＳＢアドレスがホスト・コンピュータによって各ＵＳＢ機能に割り当てられるＵＳＢ機能のネットワークアドレスを決める方法を提供し、本方法は、
ａ）上記ネットワークに直接又は間接に接続した各第１のＵＳＢ機能についてのデータ記録を構築し、そして上記ホスト・コンピュータによって動的に割り当てた唯一のＵＳＢアドレスによって各記録を確認すること、
ｂ）上記第１のＵＳＢ機能の接続される上流ＵＳＢハブのＵＳＢアドレスを上記データ記録内に記録すること、
ｃ）上記第１のＵＳＢ機能の接続される上流ＵＳＢハブのポート番号を上記データ記録内に記録すること、
ｄ）上記第１のＵＳＢ機能に直接接続した各下流ＵＳＢ機能のＵＳＢアドレスを上記データ記録内に記録すること、
ｅ）各下流ＵＳＢ機能の接続される上記第１のＵＳＢ機能のポート番号を上記データ記録内に記録すること、
ｆ）上記第１のＵＳＢ機能に割り当てたネットワークアドレスを記録することを含む。
【００３５】
別の特徴では、本発明は、一つ又は複数のＵＳＢ周辺装置がデータ通信ネットワークを介して分配され、また上記ネットワークを介しての伝送遅延がＵＳＢ規格で通常許された遅延より大きい、ホスト・コンピュータと一つ又は複数のＵＳＢ周辺装置との間でデータを伝送する方法を提供し、本方法は、ホスト・コンピュータをローカル拡張装置に接続すること、データ通信ネットワークを介して上記ローカル拡張装置を一つ又は複数の遠隔拡張装置に接続すること、及び上記遠隔拡張装置を一つ又は複数のＵＳＢ周辺装置に接続することを含み、上記ホスト・コンピュータと上記ＵＳＢ周辺装置との間の信号がセーブされ、収集され、吸収され、或いはローカル拡張装置及び／又は遠隔拡張装置で処理されて、ホスト・コンピュータ及びＵＳＢ周辺装置を、ＵＳＢ規格で通常許されたものより大きな往復伝搬時間の存在下で作動できるようにしている。
【００３６】
さらに詳しくは、本発明は、ホスト・コンピュータからローカル拡張装置を介してデータ通信ネットワーク上の唯一のネットワークアドレスへＵＳＢコマンドを伝送する方法を提供し、本方法は、
ａ）ホスト・コンピュータからのＵＳＢコマンドをローカル拡張装置で受信すること、
ｂ）上記ＵＳＢコマンドから第１のＵＳＢアドレスを抽出すること、
ｃ）上記第１のＵＳＢアドレスを用いて同様な記録の表内の第１のデータ記録をアクセスすること、
ｄ）上記第１のデータ記録が有効ネットワークアドレスを含んでいるかどうかを決めること、
ｅ）上記第１のデータ記録から第２のＵＳＢアドレスを抽出して、上記第１のＵＳＢアドレスのアドレスされ得る上流ＵＳＢハブを特定すること、
ｆ）有効なネットワークアドレスを見出すまでステップｃ）〜ｅ）を繰り返すこと、
ｇ）上記ＵＳＢコマンドをネットワークパケットにカプセル化（封じ込め）すること、
ｈ）上記ネットワークパケットを上記有効なネットワークアドレスにアドレスすること、
ｉ）上記アドレスしたネットワークパケットを上記データ通信ネットワークへ伝送すること
を含む。
【００３７】
別の特徴では、本発明は、往復伝搬時間がホスト・コンピュータとＵＳＢ周辺装置との間で１マイクロ秒を超える好ましくはデータ通信ネットワークを通して非同期データ・トランザクションを管理する方法を提供し、上記ホスト・コンピュータが高速度で動作し、上記ＵＳＢ周辺装置が標準的な速度（全速度又は低速度）で動作し、上記非同期データが遠隔拡張装置及びローカル拡張装置を介して装置からホストへの方向に伝送し、本方法は、
ａ）分割データ転送セションの開始についての上記ホスト・コンピュータからの最初の要求をローカル拡張装置で受信し、上記ローカル拡張装置がネットワークを介して上記遠隔拡張装置へ上記最初の要求を伝送し、そして上記ローカル拡張装置が上記ホスト・コンピュータへ否定応答を発生すること、
ｂ）分割データ転送セションの開始についての上記ホスト・コンピュータからの続いての要求をローカル拡張装置で受信し、上記ローカル拡張装置が上記遠隔拡張装置から上記伝送した最初の要求に対する応答を受信するまで、上記ローカル拡張装置が上記ホスト・コンピュータへ否定応答を発生し続けること、
ｃ）分割データ転送セションの開始についての上記伝送した最初の要求を遠隔拡張装置で受信し、上記遠隔拡張装置が分割データ転送セションの開始についての上記伝送した要求をデータ転送についての標準的な速度要求に変換し、そして上記遠隔拡張装置がデータ転送についての上記標準的な速度要求を上記ＵＳＢ周辺装置へ伝送すること、
ｄ）遠隔拡張装置において肯定応答を発生し、そしてネットワークを介して上記肯定応答を上記ローカル拡張装置へ伝送すること、
ｅ）ローカル拡張装置において上記伝送された肯定応答を受信し、そして上記ローカル拡張装置が上記伝送された肯定応答をローカルメモリに記憶すること、
ｆ）分割データ転送セションの開始についての上記ホスト・コンピュータからの別の要求をローカル拡張装置で受信し、上記ローカル拡張装置がローカルメモリから上記伝送された肯定応答を検索し、そして上記ローカル拡張装置が上記検索した肯定応答を上記ホスト・コンピュータへ伝送すること、
ｇ）上記ＵＳＢ周辺装置からのデータ転送応答を遠隔拡張装置で受信し、上記遠隔拡張装置が上記ＵＳＢ周辺装置に対して肯定応答を発生し、そして上記遠隔拡張装置がネットワークを介して上記ローカル拡張装置へ上記データ転送応答を伝送すること、
ｈ）分割データ転送セションの完了についての最初の要求をローカル拡張装置で受信し、上記ローカル拡張装置がデータ転送応答のないことについてローカルメモリをチェックし、そして上記ローカル拡張装置が上記ホスト・コンピュータへ未だ受信していないことを表す信号を発生すること、
ｉ）上記遠隔拡張装置からの上記伝送されたデータ転送応答をローカル拡張装置で受信し、そして上記ローカル拡張装置が上記伝送されたデータ転送応答をローカルメモリに記憶すること、
ｊ）分割データ転送セションの完了についての別の要求をローカル拡張装置で受信し、上記ローカル拡張装置がローカルメモリから上記伝送されたデータ転送応答を検索し、そして上記検索したデータ転送応答を上記ホスト・コンピュータへ伝送すること
を含む。
【００３８】
別の特徴において、本発明は、往復伝搬時間がホスト・コンピュータとＵＳＢ周辺装置との間で１マイクロ秒を超える好ましくはデータ通信ネットワークを通して非同期データ・トランザクションを管理する方法を提供し、上記ホスト・コンピュータが高速度で動作し、上記ＵＳＢ周辺装置が標準的な速度（全速度又は低速度）で動作し、上記非同期データがローカル拡張装置及び遠隔拡張装置を介してホストから装置への方向に伝送し、本方法は、
ａ）分割データ転送セションの開始についての上記ホスト・コンピュータからの最初の通知をローカル拡張装置で受信し、上記ローカル拡張装置がネットワークを介して上記遠隔拡張装置へ上記最初の通知を伝送し、そして上記ローカル拡張装置が上記ホスト・コンピュータへ否定応答を発生すること、
ｂ）分割データ転送セションの開始についての上記ホスト・コンピュータからの続いての通知をローカル拡張装置で受信し、上記ローカル拡張装置が上記遠隔拡張装置から上記伝送した最初の通知に対する応答を受信するまで、上記ローカル拡張装置が上記ホスト・コンピュータへ否定応答を発生し続けること、
ｃ）分割データ転送セションの開始についての上記伝送した最初の通知を遠隔拡張装置で受信し、上記遠隔拡張装置が分割データ転送セションの開始についての上記伝送した通知をデータ転送についての標準的な速度通知に変換し、そして上記遠隔拡張装置がデータ転送についての上記標準的な速度通知を上記ＵＳＢ周辺装置へ伝送すること、
ｄ）遠隔拡張装置において肯定応答を発生し、そしてネットワークを介して上記肯定応答を上記ローカル拡張装置へ伝送すること、
ｅ）ローカル拡張装置において上記伝送された肯定応答を受信し、そして上記ローカル拡張装置が上記伝送された肯定応答をローカルメモリに記憶すること、
ｆ）分割データ転送セションの開始についての上記ホスト・コンピュータからの別の通知をローカル拡張装置で受信し、上記ローカル拡張装置がローカルメモリから上記伝送された肯定応答を検索し、そして上記ローカル拡張装置が上記検索した肯定応答を上記ホスト・コンピュータへ伝送すること、
ｇ）上記ＵＳＢ周辺装置からの肯定応答を遠隔拡張装置で受信し、そして上記遠隔拡張装置がネットワークを介して上記ローカル拡張装置へ上記肯定応答を伝送すること、
ｈ）分割データ転送セションの完了についての最初の要求をローカル拡張装置で受信し、上記ローカル拡張装置が肯定応答のないことについてローカルメモリをチェックし、そして上記ローカル拡張装置が上記ホスト・コンピュータへ未だ受信していないことを表す信号を発生すること、
ｉ）上記遠隔拡張装置からの上記伝送された肯定応答をローカル拡張装置で受信し、そして上記ローカル拡張装置が上記伝送された肯定応答をローカルメモリに記憶すること、
ｊ）分割データ転送セションの完了についての別の要求をローカル拡張装置で受信し、上記ローカル拡張装置がローカルメモリから上記伝送された肯定応答を検索し、そして上記検索した肯定応答を上記ホスト・コンピュータへ伝送すること
を含む。
【００３９】
別の特徴では、本発明は、往復伝搬時間がホスト・コンピュータとＵＳＢ周辺装置との間で１マイクロ秒を超える好ましくはデータ通信ネットワークを通して等時性データ・トランザクションを管理する方法を提供し、上記ホスト・コンピュータが高速度で動作し、上記ＵＳＢ周辺装置が標準的な速度（全速度又は低速度）で動作し、上記等時性データが遠隔拡張装置及びローカル拡張装置を介して装置からホストへの方向に伝送し、本方法は、
ａ）分割データ転送セションの開始についての上記ホスト・コンピュータからの最初の要求をローカル拡張装置で受信し、上記ローカル拡張装置がネットワークを介して上記遠隔拡張装置へ分割データ転送セションの開始についての上記最初の要求を伝送すること、
ｂ）分割データ転送セションの完了についての最初の要求をローカル拡張装置で受信し、上記ローカル拡張装置が完全な連続した分割データ転送応答のないことについてローカルメモリをチェックし、そして上記ローカル拡張装置が上記ホスト・コンピュータへ空データ応答を発生すること、
ｃ）分割データ転送セションの開始についての上記伝送した最初の要求を遠隔拡張装置で受信し、上記遠隔拡張装置が分割データ転送セションの開始についての上記伝送した要求をデータ転送についての標準的な速度要求に変換し、そして上記遠隔拡張装置がデータ転送についての上記標準的な速度要求を上記ＵＳＢ周辺装置へ伝送すること、
ｄ）上記ＵＳＢ周辺装置からのデータ転送応答を遠隔拡張装置において受信し、そして上記遠隔拡張装置が上記受信したデータ転送応答を一連の分割データ転送応答に変換し、そして上記遠隔拡張装置がネットワークを介して上記一連の分割データ転送応答を上記ローカル拡張装置へ伝送すること、
ｅ）上記伝送された一連の分割データ転送応答をローカル拡張装置において受信し、そして上記ローカル拡張装置が上記伝送された一連の分割データ転送応答を肯定応答をローカルメモリに記憶すること、
ｆ）分割データ転送セションの開始についての上記ホスト・コンピュータからの続いての要求をローカル拡張装置で受信し、上記ローカル拡張装置がネットワークを介して上記遠隔拡張装置へ上記続いての要求を伝送すること、
ｇ）分割データ転送セションの完了についての一連の続いての要求をローカル拡張装置で受信し、上記ローカル拡張装置が完全な一連の分割データ転送応答の存在についてローカルメモリをチェックし、そして上記ローカル拡張装置がローカルメモリからの上記一連の分割データ転送応答を検索し、上記一連の分割データ転送応答を上記ホスト・コンピュータへ伝送すること
を含む。
【００４０】
別の特徴では、本発明は、往復伝搬時間がホスト・コンピュータとＵＳＢ周辺装置との間で１マイクロ秒を超える好ましくはデータ通信ネットワークを通して等時性データ・トランザクションを管理する方法を提供し、上記ホスト・コンピュータが高速度で動作し、上記ＵＳＢ周辺装置が標準的な速度（全速度又は低速度）で動作し、上記等時性データがローカル拡張装置及び遠隔拡張装置を介してホストから装置への方向に伝送し、本方法は、
ａ）分割データ転送セションの開始についての上記ホスト・コンピュータからの通知をローカル拡張装置で受信し、上記ローカル拡張装置がネットワークを介して上記遠隔拡張装置へ分割データ転送セションの開始についての上記通知を伝送し、そして上記遠隔拡張装置が分割データ転送セションの開始についての上記通知をローカルメモリに記憶すること、
ｂ）一連の分割データ転送セションについての上記ホスト・コンピュータからの最初の通知をローカル拡張装置で受信し、上記ローカル拡張装置がネットワークを介して上記遠隔拡張装置へ一連の分割データ転送セションについての上記最初の通知を伝送し、そして上記遠隔拡張装置が一連の分割データ転送セションについての上記最初の通知をローカルメモリに記憶すること、
ｃ）一連の分割データ転送セションについての上記ホスト・コンピュータからの別の通知を遠隔拡張装置で受信し、上記遠隔拡張装置がネットワークを介して一連の分割データ転送セションについての上記別の通知を上記遠隔拡張装置へ伝送し、そして上記遠隔拡張装置が一連の分割データ転送セションについての上記別の通知をローカルメモリに記憶すること、
ｄ）分割データ転送セションの完了についての上記ホスト・コンピュータからの通知をローカル拡張装置において受信し、そして上記ローカル拡張装置がネットワークを介して分割データ転送セションの完了についての上記通知を上記遠隔拡張装置に伝送し、そして上記遠隔拡張装置が分割データ転送セションの完了についての上記通知をローカルメモリに記憶すること、
ｅ）分割データ転送の開始についての上記記憶された通知、分割データ転送の連続についての上記記憶された最初の通知、及び分割データ転送セションの完了についての上記記憶された通知をデータ転送の標準的な速度通知に遠隔拡張装置においてアセンブルすること、
ｆ）上記遠隔拡張装置がデータ転送の上記標準的な速度通知を上記ＵＳＢ周辺装置へ伝送すること
を含む。
【００４１】
好ましい実施形態の説明
好ましい実施形態においては、ホスト・コンピュータ及びＵＳＢ周辺装置は、ＵＳＢ規格をサポートする任意の標準ユニット又は装置であることができる。好ましくは上記ホスト・コンピュータのハードウエア又はソフトウエアを変更する必要は全くない。
【００４２】
ローカル拡張装置は好ましくは、標準ＵＳＢケーブルを介して上記ホスト・コンピュータに接続する独立ユニットである。
【００４３】
遠隔拡張装置は好ましくは、複数の標準ＵＳＢケーブルを介して上記複数のＵＳＢ周辺装置に接続する独立ユニットである。
【００４４】
データ通信ネットワークは、任意の特定の通信メディア又はプロトコルに限定されず、動作において１マイクロ秒を超える上記ホスト・コンピュータと上記複数のＵＳＢ周辺装置との間の往復伝搬遅延を導入できる。上記データ通信ネットワークは少なくとも一つのローカル拡張装置ユニットと少なくとも一つの遠隔拡張装置ユニットとの間の通信路を形成することが必要な属性である。好ましくは、上記データ通信ネットワークは、少なくとも一つのローカル拡張装置ユニットと複数の遠隔拡張装置ユニットとの間（ポイントツウーマルチポイント形態）の通信路を形成する。有線イーサネット（登録商標）、無線イーサネット（登録商標）、ＩＥＥＥ８０２．１５．３及びインターネットに基くもののようなネットワークは例えばこれらの要求に適応する。
【００４５】
本発明の方法及び装置は最も好ましくは、上記ホスト・コンピュータがパーソナル・コンピュータであり、また上記複数のＵＳＢ周辺装置がＵＳＢフラッシュ・ドライブ、ＵＳＢハード・ドライブ、ＵＳＢ  ＣＤ／ＤＶＤドライブ、ＵＳＢカメラ、ＵＳＢマウス、ＵＳＢキーボード、ＵＳＢハブ、或いはＵＳＢ規格に適応できる任意の他の装置から成るシステムに用いられる。
【００４６】
ローカル拡張装置ユニットの好ましい実施形態では、ローカル拡張装置は、アップストリーム送受信装置及びダウンストリーム送受信装置を含み、またアップストリーム送受信装置は標準ＵＳＢ送受信装置であり、そしてダウンストリーム送受信装置は無線送受信装置である。
【００４７】
ローカル拡張装置ユニットのさらに好ましい実施形態では、アップストリーム送受信装置は標準ＵＳＢ送受信装置であり、またダウンストリーム送受信装置はイーサネット送受信装置である。
【００４８】
遠隔拡張装置ユニットの好ましい実施形態では、遠隔拡張装置は、アップストリーム送受信装置及びダウンストリーム送受信装置を含み、またアップストリーム送受信装置は無線送受信装置であり、そしてダウンストリーム送受信装置は標準ＵＳＢ送受信装置である。
【００４９】
遠隔拡張装置ユニットのさらに好ましい実施形態では、アップストリーム送受信装置はイーサネット送受信装置であり、またダウンストリーム送受信装置は標準ＵＳＢ送受信装置である。
【００５０】
本発明の構造、構成、使用及び動作方法に関して本発明の特徴であると信じられる新規の特長は、本発明の別の目的及び利点と共に、以下に例として本発明の好ましい実施形態を示す添付図面に基きよく理解される。しかし、図面は例示及び説明のためだけのものであり、本発明を限定するものでないことが特に理解される。以下、添付図面を参照して本発明の複数の実施形態について例として説明する。
【図面の簡単な説明】
【００５１】
【図１】ＵＳＢ規格による典型的なシステムトポロジーのブロック線図。
【図２】本発明による相応したシステムトポロジーのブロック線図。
【図３】ＵＳＢ規格によるハブのブロック線図。
【図４】本発明によるネットワークを介してのＵＳＢハブ機能の分布を示すブロック線図。
【図５】先行技術のＵＳＢ規定による典型的なＵＳＢトランザクションを示すタイミング図。
【図６】本発明によるローカル拡張装置ユニットのブロック線図。
【図７】本発明による遠隔拡張装置ユニットのブロック線図。
【図８】本発明による接続事象の取扱いを示すシーケンス線図。
【図９】本発明による分離事象の取扱いを示すシーケンス線図。
【図１０】本発明に従って構成したシステムのトポロジーを記録する表。
【図１１】本発明による分割非同期ＩＮトランザクションの取扱いを示すシーケンス線図。
【図１２】本発明による分割非同期ＯＵＴトランザクションの取扱いを示すシーケンス線図。
【図１３】本発明による分割等時性ＩＮトランザクションの取扱いを示すシーケンス線図。
【図１４】本発明による分割等時性ＯＵＴトランザクションの取扱いを示すシーケンス線図。
【発明を実施するための形態】
【００５２】
図１は、ＵＳＢ規格に従ってアセンブルした先行技術のシステムのブロック線図である。ＵＳＢ規格によれば、ＵＳＢ動作型コンピュータ（２０）は、ＵＳＢハブ（３１）及び一連のＵＳＢハブ（３１及び３２、並びに３１〜３４）を介して複数のＵＳＢ装置（４０〜４５）に接続され得る。装置は別の装置に接続され得ず、また単一シリアル連鎖に接続され得るハブの最大数は５である。コンピュータ、ハブ又は装置を相互接続するのに用いた各ケーブルの最大長さは５ｍである。
【００５３】
図２は、本発明による、ネットワークを介してＵＳＢ装置と通信するシステムのブロック線図である。
【００５４】
この構成において、ホスト・コンピュータに対する入力／出力動作を含むＵＳＢサブアクションはローカル拡張装置（５０）によって阻止され、このローカル拡張装置（５０）は標準ＵＳＢケーブルを介して上記ホスト・コンピュータに接続される。ローカル拡張装置（５０）は好ましくは“変更”形のＵＳＢプロトコルを発生し、このプロトコルはネットワーク（２１）を通して複数の遠隔拡張装置（５１ａ、５１ｂ、５１ｃ）へ供給され、これらの遠隔拡張装置（５１ａ、５１ｂ、５１ｃ）は上記ローカル拡張装置（５０）から拡張した距離に配置され得る。ハブ（３２、３３）及び装置（４２）は前述のように遠隔拡張装置（５１ａ、５１ｂ、５１ｃ）に接続される。
【００５５】
本発明のこの実施形態では、ホスト・コンピュータ（２０）及びローカル拡張装置（５０）は個々のユニットとして組立てられる。当業者に明らかなように、これら構成要素の種々の組合せを用いることができ、また代わりのパッケージング構成が可能である。
【００５６】
各遠隔拡張装置（５１ａ、５１ｂ、５１ｃ）はネットワーク（２１）から信号を受信し、そして必要ならば、好ましくは受信した信号をＵＳＢプロトコルに適用できる電気信号に変換し、これらの電気信号を、ＵＳＢケーブルを介して直接的に接続したＵＳＢハブ（３２、３３）及びＵＳＢ周辺装置（４２）へ供給する。信号は、ＵＳＢハブ（３２、３３）を介して間接的に接続したＵＳＢ周辺装置（４０、４１、４３、４４、４５）及び間接的に接続したＵＳＢハブ（３４）へ中継される。信号がＵＳＢ周辺装置（４０〜４５）からホスト・コンピュータ（２０）へ伝送される際には逆のプロセスが生じる。
【００５７】
あらためて、本発明のこの実施形態では、遠隔拡張装置（５１ｂ）及びＵＳＢ周辺装置（４２）は個々のユニットとして組立てられる。当業者には明らかなように、これら構成要素の種々の組合せを用いることができ、また代わりのパッケージング構成が可能である。
【００５８】
また、本発明のこの実施形態では、遠隔拡張装置（５１ａ）及びＵＳＢハブ（３２）は個々のユニットとして組立てられる。また当業者には明らかなように、これら構成要素の種々の組合せを用いることができ、また代わりのパッケージング構成が可能である。
【００５９】
さらに、本発明のこの実施形態では、三つの遠隔拡張装置、三つの遠隔ハブ及び六つのＵＳＢ周辺装置の特殊な構成が選択される。当業者には明らかなように、これらハブ及び装置の種々の数を用いることができ、また代わりの接続構成も可能である。
【００６０】
本発明のこの実施形態では、データ通信ネットワーク（２１）は有線イーサネット・ネットワークであり、また、ホスト・コンピュータ（２０）とＵＳＢ周辺装置（４２）との間の往復伝搬遅延は例えば１マイクロ秒又はそれ以上であり得る。しかし、他の実施形態においては、データ通信ネットワークを変えることができる。例えば、本発明の別の実施形態では、データ通信ネットワーク（２１）は無線ネットワークであり得、また、ホスト・コンピュータ（２０）とＵＳＢ周辺装置（４２）との間の往復伝搬遅延は例えば１００マイクロ秒又はそれ以上であり得る。本発明のさらに別の実施形態では、データ通信ネットワーク（２１）はインターネット接続であり得、また、ホスト・コンピュータ（２０）とＵＳＢ周辺装置（４２）との間の往復伝搬遅延は例えば１秒又はそれ以上であり得る。
【００６１】
このように、当業者には明らかなように、種々のデータ通信ネットワークを用いることができ、また、それに応じて相応した往復伝搬遅延を変えることができる。
【００６２】
図３は、ＵＳＢ規格に従ってアセンブルした先行技術のＵＳＢハブのブロック線図である。上記ＵＳＢハブは、ホスト・コンピュータ又はアップストリームハブと通信するアップストリームポート（６０）及び複数のＵＳＢ装置又はダウンストリームＵＳＢハブと通信する複数のダウンストリームポート（６５ａ、６５ｂ、６５ｃ）を備えている。
【００６３】
アップストリームポート（６０）に到達するＵＳＢサブアクションはハブ・リピータ（６２）へ伝送され、ハブ・リピータ（６２）は、上記ＵＳＢサブアクションが直接ダウンストリームポート（６５ａ、６５ｂ、６５ｃ）の一つへ伝送彼得るか、或いはトランザクション変換器（６１）又はハブ・コントローラ（６３）へ向けられなければならないかを決める。高速度フォーマットから標準速度フォーマットへ変換されなければならないＵＳＢサブアクションはトランザクション変換器（６１）へ送られる。ハブの内部動作に関するＵＳＢサブアクションはハブ・コントローラ（６３）へ送られる。ダウンストリームポート（６５ａ、６５ｂ、６５ｃ）に直接接続されるＵＳＢ周辺装置の状態に関するＵＳＢサブアクションはハブ・コントローラ（６３）へ送られる。
【００６４】
ハブ・リピータ（６２）からトランザクション変換器（６１）へ入るＵＳＢサブアクションは、上記トランザクション変換器（６１）によって高速度フォーマットから標準速度フォーマットに変換され、そしてルーチン論理装置（６４）を介して適当なダウンストリームポート（６５ａ、６５ｂ、６５ｃ）へ送られる。
【００６５】
アップストリーム（上流）方向において、任意のダウンストリームポート（６５ａ、６５ｂ、６５ｃ）に入ってくる高速度ＵＳＢサブアクションは、ルーチン論理装置（６４）を介してハブ・リピータ（６２）へ送られ、ハブ・リピータ（６２）は上記高速度ＵＳＢサブアクションをアップストリームポート（６０）へ伝送される。ダウンストリームポート（６５ａ、６５ｂ、６５ｃ）に入ってくる標準速度ＵＳＢサブアクションは、ルーチン論理装置（６４）を介してトランザクション変換器（６１）へ伝送され、トランザクション変換器（６１）において上記標準速度ＵＳＢサブアクションは上記ハブ・リピータ（６２）へ送られ、そしてその後アップストリームポート（６０）へ伝送される前に、高速度ＵＳＢフォーマットに変換される。
【００６６】
アップストリームポートの数は典型的には一つであるが、しかしダウンストリームポートの数は１から２５５まで変動でき、図示した三つのポートに限定されない。
【００６７】
図４は、本発明によるネットワークを介してのＵＳＢハブ機能の分配を示すブロック線図である。方法を例示するために遠隔拡張装置（５１ｂ）に関して本発明の動作について以下に説明するが、当業者には明らかなように、遠隔拡張装置（５１ａ）、（５１ｃ）に対して同様に説明でき、ＵＳＢハブに対して許された最大数のポート（最大２５５ポート）まで図４に示す三つのユニットを越えて付加的な遠隔拡張装置を使用し得る。
【００６８】
本発明のこの構成では、アップストリームポート（６０）及びハブコントローラ（６３）はローカル拡張装置（５０）内に配置される。残りのハブ機能間の接続性を行う図３によるハブ・リピータ機能（６２）は、ローカル拡張装置（５０）内のローカル・リピータ（７１）として及び遠隔拡張装置（５１ｂ）における遠隔拡張装置（７５ｂ）として二重化される。
【００６９】
図３によるトランザクション変換装置（６１）は、トランザクション変換装置（６１ｂ）として遠隔拡張装置（５１ｂ）内に配置される。図３によるダウンストリームポート（６５ｂ）は、ダウンストリームポート（６５ｂ）として遠隔拡張装置（５１ｂ）内に配置される。
【００７０】
図３によるルーチン論理装置（６４）は、ローカル拡張装置（５０）におけるローカル・ルータ（７２）及び遠隔拡張装置（５１ｂ）における遠隔ルータ（７４ｂ）に代えられる。一方、通常のＵＳＢハブでは、ルーチン論理装置（６４）は、特定のポート（６５ａ、６５ｂ又は６５ｃ）にトラフィクを向けるように要求されるが、本発明では交換論理装置（７２、７４ｂ）は、遠隔拡張装置（５１ａ、５１ｂ又は５１ｃ）又はローカル拡張装置（５０）を識別する特定のネットワーク・ノードにトラヒックを向けるように要求される。
【００７１】
ハブ・コントローラ（６３）の機能性は、仮想ポート（７３ａ、７３ｂ、７３ｃ）を付加することによって高められ、上記仮想ポート（７３ａ、７３ｂ、７３ｃ）は、上記ハブ・コントローラ（６３）に対して、物理的なダウンストリームポート（６５ａ、６５ｂ、６５ｃ）の状態を維持するローカル機構を提供する。この構成では、各ローカル仮想ポート（例えば７３ｂ）は相応した遠隔物理的ポート（例えば６５ｂ）のローカル・エミュレーションを行い、上記仮想ポート（７３ｂ）が遠隔物理的ポート（６５ｂ）への中継動作を応答できている間に、ローカル・リソース（７３ｂ）においてハブ・コントローラ（６３）を作動させる。同様なプロセスは、遠隔物理的ポート（６５ｂ）において生じる物理的事象が相応したローカル仮想ポート（７３ｂ）に中継され、そして上記ローカル仮想ポート（７３ｂ）が上記物理的事象をハブ・コントローラ（６３）に通知するために応答できる際に反対方向に生じる。
【００７２】
図５は先行技術のＵＳＢ規格による典型的なＵＳＢトランザクションのタイミング線図である。
【００７３】
ＵＳＢトランザクションは一つ、二つ又は三つのフェーズから成り、一つのフェーズはデータ流れの方向の反転によって終端される。各フェーズはゼロ、一つ又はそれ以上の分離ＵＳＢパケットを含み得る。単一フェーズを備えたパケットのセットはＵＳＢサブアクションと記載する。
【００７４】
図５に示す例では、トランザクション＃１は、三つのフェーズを占め、非同期エンドポイントにアドレスしたＩＮコマンドの一例である。トランザクション＃２は、一つのフェーズを占め、等時性エンドポイントにアドレスしたＯＵＴコマンドの例である。トランザクション＃３、＃６は、二つのフェーズを占め、非同期エンドポイントにアドレスしたＯＵＴコマンドの例である。
【００７５】
また付加的なトランザクション＃４、＃５は二つのフェーズを占め、非同期エンドポイントにアドレスしたＩＮコマンドの別の例である。トランザクション＃７は、三つのフェーズを占め、低速度非同期エンドポイントにアドレスしたＩＮコマンドの例である。
【００７６】
図６は、本発明によるローカル拡張装置ユニット（５０）のエンハンスしたブロック線図である。上記ローカル拡張装置ユニット（５０）の特殊なエンハンスメントは、仮想装置コントローラ（８３）の追加である。上記仮想装置コントローラ（８３）は一つ又は複数の物理的ＵＳＢ装置の動作をエミュレートするように構成され得、それにより上記ローカル拡張装置ユニット（５０）に付加価値特徴を加えるのに用いられ得る。本発明の一つの実施形態では、上記仮想装置コントローラ（８３）は無線管理機能をエミュレートし、そしてネットワーク送受信装置（８４）の物理的パラメータを制御するのに用いられ得る。本発明の別の実施形態では、上記仮想装置コントローラ（８３）はネットワーク・インターフェース・カードをエミュレートし、そしてデータ通信ネットワーク（２１）を通してＴＣＰ／ＩＰパケットを伝送するのに用いられ得る。当業者には明らかなように、これらの機能は独特のものではなく、他の機能も同様にして実行され得る。
【００７７】
最初の動作モードでは、ホスト・コンピュータ（２０）からのＵＳＢサブアクションはＵＳＢ送受信装置（８１）によって受信され、そしてアップストリームポート（６０）を介してローカル・リピータ（７１）へ伝送される。上記ＵＳＢサブアクションの内容はローカル・リピータ（７１）で検索され、要求に応じて伝送される。
【００７８】
上記ＵＳＢサブアクションが仮想ＵＳＢハブ（3１）にアドレスされる場合、上記ＵＳＢサブアクションはハブ・コントローラ（６３）へ伝送される。上記ＵＳＢサブアクションがＵＳＢ周辺装置（４０〜４５）又は物理的ＵＳＢハブ（３２〜３４）にアドレスされる場合、上記ＵＳＢサブアクションはローカル・ルータ（７２）へ伝送される。上記ＵＳＢサブアクションが仮想ＵＳＢ装置にアドレスされる場合、上記ＵＳＢサブアクションは仮想装置コントローラ（８３）へ伝送される。
【００７９】
上記ＵＳＢサブアクションに対する応答がローカル・リピータ（７１）にすでにある場合には、以下に説明するように、上記応答はローカル・リピータ（７１）によってメモリーから検索され、そしてアップストリーム・ポート（６０）を介してＵＳＢ送受信装置（８１）へ伝送される。ＵＳＢサブアクションに対する総合応答が要求されると、上記総合応答はローカル・リピータ（７１）によって発生され、そしてアップストリーム・ポート（６０）を介してＵＳＢ送受信装置（８１）へ伝送される。
【００８０】
ＵＳＢサブアクションがローカル・リピータ（７１）によってローカル・ルータ（７２）へ伝送されると、上記ＵＳＢコマンドに含まれたＵＳＢアドレスはローカル・ルータ（７２）によって検索され、そしてネットワークアドレスに変換される。上記ローカル・ルータ（７２）はネットワークパケットに上記ＵＳＢサブアクションを内包し、上記ネットワークパケットを上記変換したネットワークアドレスでアドレスし、そして上記ネットワーク（２１）を介して遠隔拡張装置（５１ｂ）へ伝送するためにネットワーク送受信装置（８４）に上記ネットワークパケットを伝送する。
【００８１】
動作の第２のモードでは、上記遠隔拡張装置（５１ｂ）からのアドレスしたネットワークパケットはネットワーク送受信装置（８４）で受信され、そしてローカル・ルータ（７２）へ伝送される。上記ローカル・ルータ（７２）は上記アドレスしたネットワークパケットからＵＳＢサブアクションを抽出し、上記サブアクションの内容を検索し、そしてローカル・リピータ（７１）へ上記ＵＳＢサブアクションを伝送する。上記内容がＵＳＢ応答サブアクションを表している場合には、上記ＵＳＢ応答サブアクションは、ＵＳＢコマンド・サブアクションに応じて、上述のようにＵＳＢ送受信装置に後で伝送するためにローカル・メモリー（８２）に記憶される。上記内容が上記遠隔拡張装置（５１ｂ）に直接的に接続したＵＳＢ装置（４２）の状態の変化を表示するシステムサブアクションを表すと、上記システムサブアクションはハブ・コントローラ（６３）へ伝送される。ハブ・コントローラ（６３）は上記伝送されたシステムサブアクションの内容を検索し、仮想ポート＃２（７３ｂ）の状態を更新する。
【００８２】
図７は、本発明による遠隔拡張装置ユニット（５１）のエンハンスしたブロック線図である。この構成において、上記遠隔拡張装置ユニット（５１）の動作は、ネットワーク送受信装置（９１）か又はＵＳＢ送受信装置（９２）で生じる刺激によって行なわれる。特殊なシナリオが要求される場合には、方法を例示するために以下の説明では遠隔拡張装置（５１ｂ）を用いるが、当業者には明らかなように、遠隔拡張装置（５１ａ）、（５１ｃ）にも同様な説明が適用でき、図４に示す三つのユニット以上の付加的な遠隔拡張装置が設けられ得る。
【００８３】
ＵＳＢ規格に従って、トランザクション変換装置の使用を必要とするトランザクションは分割トランザクションとして記載される。従って、上記トランザクション変換装置の使用を必要としないトランザクションは原子トランザクションとして記載される。
【００８４】
動作の第１のモードでは、アドレスしたネットワークパケットはネットワーク送受信装置（９１）で受信され、そして遠隔ルータ（７４）へ伝送される。上記遠隔ルータ（７４）は、上記アドレスしたネットワークパケットからＵＳＢサブアクションを抽出し、上記ＵＳＢサブアクションの内容を検索し、そして上記ＵＳＢサブアクションを遠隔リピータ（７５）へ伝送する。上記内容が分割トランザクションを表示するＵＳＢサブアクションを表す場合には、上記ＵＳＢサブアクションはトランザクション変換装置（６１）へ伝送される。上記内容が原子（非分割）ＵＳＢトランザクションを表示するＵＳＢサブアクションを表す場合には、上記ＵＳＢサブアクションはダウンストリームポートコントローラ（６５）を介してＵＳＢ送受信装置（９２）へ伝送される。上記内容がシステムサブアクションを表す場合には、上記システムサブアクションは遠隔コントローラ（９３）へ伝送される。
【００８５】
動作の第２のモードでは、ＵＳＢサブアクションはＵＳＢ送受信装置（９２）によってＵＳＢ周辺装置（４２）から受信され、そしてダウンストリーム・ポート・コントローラ（６５）を介して遠隔リピータ（７５）へ伝送される。上記遠隔リピータ（７５）は上記サブアクションの内容を検索し、そして任意ではあるがダウンストリーム・ポート・コントローラ（６５）及びＵＳＢ送受信装置（９２）を介して上記ＵＳＢ周辺装置（４２）へ伝送するためにＵＳＢ確認サブアクションを発生する。また、上記ＵＳＢサブアクションの上記内容が原子ＵＳＢトランザクションを表す場合には、上記ＵＳＢサブアクションは遠隔ルータ（７４）へ伝送される。さらに、上記ＵＳＢサブアクションの上記内容が標準速度ＵＳＢトランザクションを表す場合には、上記ＵＳＢサブアクションは、高速度トランザクションフォーマットに変換するためにトランザクション変換装置（６１）へ伝送される。上記変換されたＵＳＢサブアクションは遠隔リピータ（７５）を介して遠隔ルータ（７４）へ伝送される。
【００８６】
遠隔ルータ（７４）が遠隔リピータ（７５）からＵＳＢサブアクションを受信すると、上記遠隔ルータ（７４）は、ネットワークパケットに上記ＵＳＢサブアクションを内包し、上記ネットワークパケットをローカル拡張装置（５０）のネットワークアドレスでアドレスし、そしてデータ通信ネットワーク（２１）を通して伝送するためにネットワーク送受信装置（９１）へ上記アドレスしたネットワークパケットを伝送する。
【００８７】
動作の第３のモードでは、ＵＳＢ周辺装置（４２）の状態の変化は、ＵＳＢ送受信装置（９２）を介してダウンストリーム・ポート・コントローラ（６５）によって検出され、そして遠隔コントローラ（９３）に報告される。上記報告された状態の変化に応じて、上記遠隔コントローラはシステムサブアクションを発生し、そしてローカル拡張装置（５０）へ伝送するために上記システムサブアクションを遠隔リピータ（７５）へ伝送する。
【００８８】
図８は、本発明による接続事象の取扱いを示すシーケンス線図である。この線図で用いたプレゼンテーションフォーマットはＪａｃｏｂｓｏｎ等（Ｉｖａｒ  Ｊａｃｏｂｓｏｎ，Ｍａｇｎｕｓ  Ｃｈｒｉｓｔｅｒｓｏｎ，  Ｐａｔｒｉｃｋ  Ｊｏｎｓｓｏｎ  ａｎｄ  Ｇｕｎｎａｒ  Ｏｖｅｒｇａａｒｄ，Ｏｂｊｅｃｔ−Ｏｒｉｅｎｔｅｄ  Ｓｏｆｔｗａｒｅ  Ｅｎｇｉｎｅｅｒｉｎｇ：Ａ  Ｕｓｅ  Ｃａｓｅ  Ｄｒｉｖｅｎ  Ａｐｐｒｏａｃｈ，Ａｄｄｉｓｏｎ−Ｗｅｓｌｙ，１９９２）に基いている。例示のために、上記シーケンス線図は遠隔拡張装置（５１ｂ）に対するＵＳＢ周辺装置（４２）の取付けを説明しており、そして遠隔拡張装置（５１ｂ）はハブコントローラ（６３）において仮想ポート＃２（７３ｂ）に割当てられると仮定する。当業者には明らかなように、同じプロセスは任意の遠隔拡張装置に対する任意のＵＳＢ周辺装置又は任意のＵＳＢハブの取付けにも適用され得、また必要ならば別の仮想ポートを割当てることもできる。
【００８９】
接続手順はセクション“Ａ”で開始する。パワーアップ時に、標準のＵＳＢプロトコルに従って、ＵＳＢ周辺装置（４２）における制御論理装置（１０４）はＵＳＢデータラインにおけるスタテックＪ／Ｋ値をドライブする。上記スタテックＪ／Ｋ値は遠隔拡張装置（５１ｂ）における制御論理装置（１０３）で検出され、そしてネットワーク（２１）を介してローカル拡張装置（５０）へ接続サブアクションとして伝送される。ローカル拡張装置（５０）における制御論理装置（１０１）は、相応した仮想ポート（７３ｂ）の状態を更新し、そして状態事象の上記変化をホスト・コンピュータ（２０）へ報告する。
【００９０】
ホスト・コンピュータ（２０）における制御論理装置（１００）はポート＃２の状態を要求し、そしてローカル拡張装置（５０）における制御論理装置（１０１）は装置接続表示で応答する。
【００９１】
その結果、セクション“Ｂ”において、ホスト・コンピュータ（２０）における制御論理装置（１００）は、ポート＃２に属する接続状態表示装置における変化をクリアするコマンドを発生し、その後上記コマンドがポート＃２の状態についての別の要求を発生することで完了されたことを確認することを要求する。ローカル拡張装置（５０）における制御論理装置（１０１）は、ポート＃２に属する接続状態表示装置における上記変化をクリアし、そして状態の更なる変化がないことを報告する。この動作は物理的取付けシーケンスを完了する。
【００９２】
その後、セクション“Ｃ”において、ホスト・コンピュータ（２０）における制御論理装置（１００）は、ポート＃２に取付けた装置をリセットするＵＳＢコマンドを発生することによって装置リセットシーケンスを開始する。ローカル拡張装置（５０）における制御論理装置（１０１）は、上記ＵＳＢコマンドをリセットサブアクションに変換し、そしてネットワーク（２１）を介して上記リセットサブアクションを遠隔拡張装置（５１ｂ）へ伝送する。遠隔拡張装置（５１ｂ）における制御論理装置（１０３）は、上記伝送されたリセットサブアクションを受信し、そしてダウンストリームポート（６５ｂ）のデータラインにおけるリセット状態（ＳＥ０）をドライブする。ＵＳＢ規格で決められた時間期間の間リセット状態を伝送した後、上記遠隔拡張装置（５１ｂ）は、上記ＵＳＢ周辺装置（４２）の動作の速度を確立し、そしてネットワーク（２１）を介して上記ローカル拡張装置（５０）へ動作の上記速度を速度サブアクションとして伝送する。ローカル拡張装置（５０）における制御論理装置（１０１）は、相応した仮想ポートの状態を更新し、そして状態事象の上記変化をホスト・コンピュータ（２０）へ報告する。
【００９３】
その後、ホスト・コンピュータ（２０）における制御論理装置（１００）は、ポート＃２の状態を要求し、またローカル拡張装置（５０）における制御論理装置（１０１）は、リセット完了プラス速度表示で応答する。
【００９４】
その後、セクション“Ｄ”において、ホスト・コンピュータ（２０）における制御論理装置（１００）は、ポート＃２に属するリセット状態表示装置の変化をクリアするコマンドを発生し、そしてポート＃２の状態についての更なる要求を発生することによって上記コマンドを完了したことを確認することを要求する。ローカル拡張装置（５０）における制御論理装置（１０１）は、仮想ポート＃２（７３ｂ）に属するリセット状態表示装置の変化をクリアし、そして状態の更なる変化がないことを報告する。この動作は装置リセットシーケンスを完了する。
【００９５】
図９は、本発明による分離（取外し）事象の取扱いを示すシーケンス線図である。例示のために、上記シーケンス線図は遠隔拡張装置（５１ｂ）からのＵＳＢ周辺装置（４２）の取外しを説明しており、そして遠隔拡張装置（５１ｂ）はハブコントローラ（６３）において仮想ポート＃２（７３ｂ）に割当てられると仮定する。当業者には明らかなように、同じプロセスは任意の遠隔拡張装置からの任意のＵＳＢ周辺装置又は任意のＵＳＢハブの取外しにも適用でき、また必要ならば別の仮想ポートを割当てることもできる。
【００９６】
取外し手順はセクション“Ａ”で開始する。装置の取外しでは、ＵＳＢ周辺装置（４２）における制御論理装置（１０４）はＵＳＢデータラインにおけるスタテックＪ／Ｋ値をドライブするのを止める。上記スタテックＪ／Ｋ値のドライブの上記停止は、遠隔拡張装置（５１ｂ）における制御論理装置（１０３）で検出され、そしてネットワーク（２１）を介してローカル拡張装置（５０）へ分離サブアクションとして伝送される。ローカル拡張装置（５０）における制御論理装置（１０１）は、相応した仮想ポートの状態を更新し、そして状態事象の上記変化をホスト・コンピュータ（２０）へ報告する。
【００９７】
ホスト・コンピュータ（２０）における制御論理装置（１００）はポート＃２の状態を要求し、そしてローカル拡張装置（５０）における制御論理装置（１０１）は装置分離表示で応答する。
【００９８】
その結果、セクション“Ｂ”において、ホスト・コンピュータ（２０）における制御論理装置（１００）は、ポート＃２に属する接続状態表示装置における変化をクリアするコマンドを発生し、そしてポート＃２の動作状態をクリアする別のコマンドを発生する。ホスト・コンピュータ（２０）における制御論理装置（１００）は、その後、上記コマンドがポート＃２の状態についての別の要求を発生することで完了されたことを確認することを要求する。ローカル拡張装置（５０）における制御論理装置（１０１）は、ポート＃２（７３ｂ）に属する動作状態及び接続状態表示装置における上記変化をクリアし、そして状態の更なる変化がないことを報告する。この動作は物理的取外しシーケンスを完了する。
【００９９】
図１０は本発明に従って構成したシステムのトポロジーを記録する表である。
【０１００】
上記表におけるデータは、図２に示す例示トポロジーをマップできる方法を提供する。そして、図２に例示した本発明のトポロジーは、図１に示す先行技術のシステムのトポロジーをエミュレートするのに要求される。装置コラムは図２に含まれた各装置及びハブのＵＳＢアドレスを記録する。明瞭にするために、ＵＳＢアドレスは、図２におけるブロックの番号と同じに設定される。当業者には明らかなように、この構成は本質的なものではなく、範囲１〜１２７における任意のＵＳＢアドレスはホスト・コンピュータ（２０）によって割当てられ得る。
【０１０１】
特殊なケースはＵＳＢハブ（３１）によって表される。図１において、上記ＵＳＢハブ（３１）は物理的ユニットであり、ＵＳＢアドレス３１が割当てられる。図２において、上記ＵＳＢハブは、ローカル拡張装置（５０）と、遠隔拡張装置（５１ａ、５１ｂ、５１ｃ）と、ネットワーク（２１）との関連動作によって作られる仮想ユニットである。上記物理的ＵＳＢアドレス３１の動作をエミュレートするために、上記仮想ハブにもＵＳＢアドレス３１が割当てられる。
【０１０２】
親／アドレスコラムは、装置又はハブの接続されるアップストリームハブのＵＳＢアドレスを記録する。親／アドレスコラムは、装置又はハブの接続されるアップストリームハブのポート番号を記録する。子／ポート＃コラムは、上記ポート番号に接続したダウンストリーム装置又はハブのＵＳＢアドレスを記録する。表に示す子／ポート＃コラムの数は四つであり、最大四つの遠隔拡張装置ユニットをシステムに結合できる。当業者には明らかなように、この値は独特のものでなく、１〜２５５の範囲における任意の値を選択することができ、それにより遠隔拡張装置ユニットの最大数も１〜２５５の範囲内にできる。
【０１０３】
ネットワークアドレスコラムは、装置又はハブの直接接続されるネットワークノードのネットワークアドレスを記録する。
【０１０４】
上記表の動作は特殊な例を選択してさらに説明する。特殊なケースは、ホスト・コンピュータ（２０）に接続されそしてＵＳＢトポロジーの根（ルート）として作用するＵＳＢハブ（３１）によって表される。図２において、上記ＵＳＢハブ（３１）は、拡張装置（５０、５１ａ、５１ｂ、５１ｃ）に分配した機能によって及び特にローカル拡張装置（５０）におけるハブコントローラ（６３）によって、仮想ハブとして提供される。上記ＵＳＢハブ（３１）は上記表における装置（３１）として示される。ＵＳＢハブ（３１）はシステムの根を形成するので、システム内に親はなく、また親のアドレス及びポート番号の値はゼロに設定される。ＵＳＢハブ（３１）に対する子のエントリーは、ＵＳＢハブ（３２）がポート＃１に接続され、ＵＳＢ周辺装置（４２）がポート＃２に接続され、またＵＳＢハブ（３３）がポート＃４に接続されることを示している。上記ＵＳＢハブ（３１）に対するネットワークエントリーは、それがネットワークノード（Ｎ０）に接続されることを示している。当業者に明らかなように、値（Ｎ０）は代表例であり、上記ローカル拡張装置と遠隔拡張装置との間のデータ通信を行うのに選択したネットワークに適合する任意の他の値を用いることができる。例えば、上記データ通信ネットワークがイーサネット・ネットワークである場合には、上記ネットワークエントリーはイーサネットアドレスである。上記データ通信ネットワークがインターネット・ネットワークである場合には、上記ネットワークエントリーはＩＰアドレスである。
【０１０５】
上記表におけるＵＳＢハブ（３４）のエントリーは、それの親がＵＳＢハブ（３３）におけるポート＃３であり、ＵＳＢ周辺装置（４４）がボート＃１に接続され、ＵＳＢ周辺装置（４５）がポート＃４に接続され、また上記ＵＳＢハブ（３４）がネットワーク（２１）に直接接続されないことを示している。ＵＳＢハブ（３４）に対して用いられることになるネットワークアドレスは、それの親又は親の親を介しての接続性をトレースすることによって見出される。ＵＳＢハブ（３４）の場合、それの親はＵＳＢハブ（３３）であり、また上記ＵＳＢハブ（３３）のネットワークアドレスは（Ｎ３）である。このようにして、ＵＳＢ規格によるＵＳＢハブの連鎖は本発明によって行われる。
【０１０６】
ＵＳＢ周辺装置（４２）のエントリーは、それの親がＵＳＢハブ（３１）におけるポート＃２であり、そしてそれがノード（Ｎ２）でネットワーク（２１）に直接接続されることを示している。
【０１０７】
図１１は、本発明による分割非同期ＩＮトランザクションの取扱いを示すシーケンス線図である。
【０１０８】
ホスト・コンピュータ（２０）における制御論理装置（１００）は、ローカル拡張装置（５０）に最初のスタート−分割ＩＮコマンドを発生することによって上記トランザクションを開始する。制御論理装置（１０１）は、上記ホスト・コンピュータ（２０）に否定応答サブアクションを伝送することによって上記最初のスタート−分割ＩＮコマンドに応答し、そしてネットワーク（２１）を介して遠隔拡張装置（５１b）へ上記最初のスタート−分割ＩＮコマンドを伝送する。制御論理装置（１０１）は、ホスト・コンピュータ（２０）から後続のスタート−分割ＩＮコマンドを受信し、遠隔拡張装置（５１b）から応答は受信しないと、否定応答サブアクションを発生し続ける。
【０１０９】
遠隔拡張装置（５１ｂ）における制御論理装置（１０３）は上記最初のスタート−分割ＩＮコマンドを受信し、上記最初のスタート−分割ＩＮコマンドを標準速度ＩＮコマンドに変換し、そして標準速度ＩＮコマンドをＵＳＢ周辺装置（４２）に伝送する。また、遠隔拡張装置（５１ｂ）における制御論理装置（１０３）は、ネットワーク（２１）を介してローカル拡張装置（５０）へ肯定応答サブアクションを伝送し、ローカル拡張装置（５０）において、上記肯定応答サブアクションはローカルメモリに記憶される。ホスト・コンピュータ（２０）における制御論理装置（１００）が別のスタート−分割ＩＮコマンドを発信すると、ローカル拡張装置（５０）における制御論理装置（１０１）は、ローカルメモリから上記肯定応答サブアクションを検索し、そして上記検索した肯定応答サブアクションをホスト・コンピュータ（２０）へ伝送する。その後、ホスト・コンピュータ（２０）における制御論理装置（１００）は完全−分割ＩＮコマンドを発信し、そしてローカル拡張装置（５０）における制御論理装置（１０１）はなおまだ応答なしと応答する。
【０１１０】
一方、ＵＳＢ周辺装置（４２）における制御論理装置（１０４）は、標準速度のＤＡＴＡ０／１応答を発生し、上記応答を遠隔拡張装置（５１ｂ）へ伝送する。遠隔拡張装置（５１ｂ）における制御論理装置（１０３）は、標準速度の確認サブアクションを発生し、上記サブアクションをＵＳＢ周辺装置（４２）へ伝送する。また、遠隔拡張装置（５１ｂ）における制御論理装置（１０３）は、ネットワーク（２１）を介して上記ＤＡＴＡ０／１応答をローカル拡張装置（５０）へ伝送し、そこで上記ＤＡＴＡ０／１応答サブアクションはローカルメモリに記憶される。ホスト・コンピュータ（２０）における制御論理装置（１００）が別の完全−分割ＩＮコマンドを発生すると、ローカル拡張装置（５０）における制御論理装置（１０１）はローカルメモリからの上記ＤＡＴＡ０／１応答サブアクションを検索し、上記検索したＤＡＴＡ０／１応答サブアクションをホスト・コンピュータ（２０）へ伝送する。
【０１１１】
図１２は本発明による分割非同期ＯＵＴトランザクションの取扱いを示すシーケンス線図である。
【０１１２】
ホスト・コンピュータ（２０）における制御論理装置（１００）は、ローカル拡張装置（５０）に対して最初のスタート−分割ＯＵＴ／ＤＡＴＡ０／１コマンドを発生することによって上記トランザクションを開始する。制御論理装置（１０１）は否定応答サブアクションを上記ホスト・コンピュータ（２０）を伝送することで上記最初のスタート−分割ＯＵＴ／ＤＡＴＡ０／１コマンドに応答し、そしてネットワーク（２１）を介してこの最初のスタート−分割ＯＵＴ／ＤＡＴＡ０／１コマンドを遠隔拡張装置（５１ｂ）へ伝送する。制御論理装置（１０１）は、ホスト・コンピュータ（２０）から後続のスタート−分割ＯＵＴ／ＤＡＴＡ０／１コマンドが受信されそして遠隔拡張装置（５１ｂ）から何の応答も受信されていない限り、否定応答サブアクションを発生し続ける。
【０１１３】
遠隔拡張装置（５１ｂ）における制御論理装置（１０３）は、ネットワーク（２１）から上記最初のスタート−分割ＯＵＴ／ＤＡＴＡ０／１コマンドを受信し、上記スタート−分割ＯＵＴ／ＤＡＴＡ０／１コマンドＤＡＴＡ０／１を標準速度のＯＵＴ／ＤＡＴＡ０／１に変換し、そして上記標準速度のＯＵＴ／ＤＡＴＡ０／１コマンドをＵＳＢ周辺装置（４２）へ伝送する。また、遠隔拡張装置（５１ｂ）における制御論理装置（１０３）は、ネットワーク（２１）を介して肯定応答サブアクションをローカル拡張装置（５０）へ伝送し、そこで上記肯定応答サブアクションはローカルメモリに記憶される。ホスト・コンピュータ（２０）における制御論理装置（１００）が別のスタート−分割ＯＵＴ／ＤＡＴＡ０／１コマンドを発生すると、ローカル拡張装置（５０）における制御論理装置（１０１）はローカルメモリからの上記肯定応答サブアクションを検索し、そして上記検索した肯定応答サブアクションをホスト・コンピュータ（２０）へ伝送する。ホスト・コンピュータ（２０）における制御論理装置（１００）は完全−分割ＯＵＴコマンドを発生し、ローカル拡張装置（５０）における制御論理装置（１０１）はまだ応答がないと応答する。
【０１１４】
一方、ＵＳＢ周辺装置（４２）における制御論理装置（１０４）は、標準速度の肯定応答サブアクションを発生し、上記サブアクションを遠隔拡張装置（５１ｂ）へ伝送する。遠隔拡張装置（５１ｂ）における制御論理装置（１０３）は、ネットワーク（２１）を介して上記肯定応答サブアクションを発生し、ローカル拡張装置（５０）へ伝送し、そこで上記肯定応答サブアクションはローカルメモリに記憶される。ホスト・コンピュータ（２０）における制御論理装置（１００）が別の完全−分割ＯＵＴコマンドを発生すると、ローカル拡張装置（５０）における制御論理装置（１０１）はローカルメモリからの上記肯定応答サブアクションを検索し、上記検索した肯定応答サブアクションをホスト・コンピュータ（２０）へ伝送する。
【０１１５】
図１３は本発明による分割等時性ＩＮトランザクションの取扱いを示すシーケンス線図である。
【０１１６】
ホスト・コンピュータ（２０）における制御論理装置（１００）は、ローカル拡張装置（５０）に対して最初のスタート−分割ＩＮコマンドを発生することによって上記トランザクションを開始する。ローカル拡張装置（５０）における制御論理装置（１０１）は、ネットワーク（２１）を介してこの最初のスタート−分割ＩＮコマンドを遠隔拡張装置（５１ｂ）へ伝送する。ローカル拡張装置（５１ｂ）における制御論理装置（１０３）は、ネットワーク（２１）から上記最初のスタート−分割ＩＮコマンドを受信し、この最初のスタート−分割ＩＮコマンドを標準速度のＩＮコマンドに変換し、そして上記標準速度のＩＮコマンドをＵＳＢ周辺装置（４２）へ伝送する。遅延の後、ホスト・コンピュータ（２０）における制御論理装置（１００）は、完全−分割ＩＮコマンドをローカル拡張装置（５０）へ伝送し、そしてローカル拡張装置（５０）における制御論理装置（１０１）は、データなし応答で応答する。制御論理装置（１０１）は、ホスト・コンピュータ（２０）から後続の完全−分割ＩＮコマンドが受信されそして遠隔拡張装置（５１ｂ）からＤＡＴＡ０応答が受信されていない限り、データなし応答を発生し続ける。
【０１１７】
一方、ＵＳＢ周辺装置（４２）における制御論理装置（１０４）は、標準速度のＤＡＴＡ０応答を発生し、上記応答を遠隔拡張装置（５１ｂ）へ伝送する。遠隔拡張装置（５１ｂ）における制御論理装置（１０３）は、標準速度のＤＡＴＡ０応答を一連の高速度のＭＤＡＴＡ／ＤＡＴＡ０応答に変換し、そしてネットワーク（２１）を介して上記応答をローカル拡張装置（５０）へ伝送し、そこで上記ＭＤＡＴＡ／ＤＡＴＡ０応答はローカルメモリに記憶される。ホスト・コンピュータ（２０）における制御論理装置（１００）が別の一連の完全−分割ＩＮコマンドを発生すると、ローカル拡張装置（５０）における制御論理装置（１０１）はローカルメモリからの上記ＭＤＡＴＡ／ＤＡＴＡ０応答を検索し、上記検索したＭＤＡＴＡ／ＤＡＴＡ０応答をホスト・コンピュータ（２０）へ伝送する。
【０１１８】
図１４は本発明による分割等時性ＯＵＴトランザクションの取扱いを示すシーケンス線図である。
【０１１９】
ホスト・コンピュータ（２０）における制御論理装置（１００）は、ローカル拡張装置（５０）に対してスタート−分割−開始ＯＵＴ／ＤＡＴＡ０コマンドを発生することによって上記トランザクションを開始する。ローカル拡張装置（５０）における制御論理装置（１０１）は、ネットワーク（２１）を介して上記スタート−分割−開始ＯＵＴ／ＤＡＴＡ０コマンドを遠隔拡張装置（５１ｂ）へ伝送する。
【０１２０】
ホスト・コンピュータ（２０）における制御論理装置（１００）は、ローカル拡張装置（５０）に対して一つ以上のスタート−分割−中間（ｍｉｄ）ＯＵＴ／ＤＡＴＡ０コマンドを発生することによって上記トランザクションを継続する。ローカル拡張装置（５０）における制御論理装置（１０１）は、ネットワーク（２１）を介して各スタート−分割−中間ＯＵＴ／ＤＡＴＡ０コマンドを遠隔拡張装置（５１ｂ）へ伝送する。
【０１２１】
ホスト・コンピュータ（２０）における制御論理装置（１００）は、ローカル拡張装置（５０）に対してスタート−分割−終了ＯＵＴ／ＤＡＴＡ０コマンドを発生することによって上記トランザクションを完了する。ローカル拡張装置（５０）における制御論理装置（１０１）は、ネットワーク（２１）を介して上記スタート−分割−終了ＯＵＴ／ＤＡＴＡ０コマンドを遠隔拡張装置（５１ｂ）へ伝送する。
【０１２２】
遠隔拡張装置（５１ｂ）における制御論理装置（１０３）が上記スタート−分割−終了ＯＵＴ／ＤＡＴＡ０コマンドを受信すると、上記制御論理装置（１０３）は、上記スタート−分割−開始了ＯＵＴ／ＤＡＴＡ０コマンドと、上記一つ以上のスタート−分割−中間ＯＵＴ／ＤＡＴＡ０コマンドと、上記スタート−分割−終了ＯＵＴ／ＤＡＴＡ０コマンドとを標準速度のＯＵＴ／ＤＡＴＡ０コマンドにアセンブルし、このコマンドをＵＳＢ周辺装置（４２）へ伝送する。
【０１２３】
このようにして、本発明に従って、上述の先行技術に勝る手段、目的及び利点を十分に或いは少なくとも部分的に満たす方法、システム及び／又はＵＳＢ関連装置が提供されることは明らかである。従って、本発明の特定の実施形態について説明してきたが、当業者には本発明の代替、変更及び変形が提案され得、また本明細書はかかる全ての代替、変更及び変形が特許請求の範囲内にあるとして包含するものであることは理解される。
【０１２４】
さらに、明確にし、かつ特に記載しない限り、用語“有する”、“備える”及びかかる用語の変形は明細書及び特許請求の範囲において使用する場合にその他の付加事項、構成要素、数又はステップを除外するものではない。
【図１】
2009545086.tif 000003
【図２】
2009545086.tif 000004
【図３】
2009545086.tif 000005
【図４】
2009545086.tif 000006
【図５】
2009545086.tif 000007
【図６】
2009545086.tif 000008
【図７】
2009545086.tif 000009
【図８】
2009545086.tif 000010
【図９】
2009545086.tif 000011
【図１０】
2009545086.tif 000012
【図１１】
2009545086.tif 000013
【図１２】
2009545086.tif 000014
【図１３】
2009545086.tif 000015
【図１４】
2009545086.tif 000016
【国際調査報告】
2009545086.tif 000017
2009545086.tif 000018
2009545086.tif 000019