(57)【要約】  それぞれホストを有するネットワーク間を接続し、ネットワークを跨るデバイスとの間で透過的なトランザクションを実現する。ターゲット装置に含まれるステーションは、イニシエータ装置からのデバイスハンドル取得要求に応じて、ホストからターゲットデバイスの構成情報を取得し、それに基づいてイニシエータ装置とターゲットデバイスとの間のトランザクションを、ホストを介さずに中継する。
2012127803.tif 000002
【特許請求の範囲】
【請求項１】
ホストを含むローカルネットワークに含まれ、他のローカルネットワークとの通信を中継するステーションであって、
前記ホストとの間で前記ローカルネットワークにおける自ステーションの構成情報を共有する構成情報共有部と、
前記他のローカルネットワークから受信したデバイスハンドル取得要求に応じて、前記ローカルネットワーク内のターゲットデバイスの構成情報を前記ホストから取得し、前記デバイスハンドル取得要求に対するデバイスハンドル取得応答を前記他のローカルネットワークに返信するデバイスハンドル制御部と、
前記他のローカルネットワークから受信したコマンドと当該コマンドで指定されたトランザクションを、前記ターゲットデバイスに中継するトランザクション中継部と、
を備え、
前記トランザクション中継部は、前記デバイスハンドル制御部で取得された前記ターゲットデバイスの構成情報に基づいて、前記ホストを介さずに前記トランザクションを中継する
ことを特徴とするステーション。
【請求項２】
前記ステーションは、更に、構成情報管理テーブルを含み、
前記デバイスハンドル制御部は、前記デバイスハンドル取得要求の受信を示すデバイスハンドル取得要求通知を前記ホストに送信して前記ホストから前記ターゲットデバイスの構成情報を取得し、取得した前記ターゲットデバイスの構成情報を前記構成情報管理テーブルに保持し、
前記デバイスハンドル取得応答は、前記ターゲットデバイスの構成情報の取得の成否を示す結果フラグを含む
ことを特徴とする請求項１に記載のステーション。
【請求項３】
前記デバイスハンドル制御部は、さらに、前記他のローカルネットワークから受信したデバイスハンドル削除要求に応じて、当該デバイスハンドル削除要求の受信を示すデバイスハンドル削除要求通知を前記ホストに送信して前記構成情報管理テーブルに保持した前記ターゲットデバイスの構成情報の無効化を行い、前記デバイスハンドル削除要求に対するデバイスハンドル削除応答を前記他のローカルネットワークに返信する
ことを特徴とする請求項２に記載のステーション。
【請求項４】
前記デバイスハンドル取得要求及び前記デバイスハンドル取得要求通知は、前記ターゲットデバイスを識別するためのデバイスハンドル番号を含み、
前記デバイスハンドル制御部は、前記デバイスハンドル取得要求通知に応じて前記ホストから受け取った前記デバイスハンドル番号に対応する前記ターゲットデバイスの構成情報を前記デバイスハンドル番号に関連付けて前記構成情報管理テーブルに保持する
ことを特徴とする請求項２に記載のステーション。
【請求項５】
前記デバイスハンドル制御部は、受信した前記デバイスハンドル取得要求に含まれる前記デバイスハンドル番号に関連付けられた前記ターゲットデバイスの構成情報が前記構成情報管理テーブルに保持されていない場合にのみ、前記デバイスハンドル取得要求通知を前記ホストに送信する
ことを特徴とする請求項４に記載のステーション。
【請求項６】
前記デバイスハンドル制御部は、前記デバイスハンドル取得要求通知に応じて前記ホストからターゲットデバイスグループの各デバイスの構成情報を一括取得し、一括取得した前記ターゲットデバイスグループの前記各デバイスの前記構成情報を前記構成情報管理テーブルに保持する
ことを特徴とする請求項２に記載のステーション。
【請求項７】
前記デバイスハンドル取得応答は、前記ターゲットデバイスグループの前記各デバイスを特定する情報を含む
ことを特徴とする請求項６に記載のステーション。
【請求項８】
前記デバイスハンドル取得応答は、更に、前記ターゲットデバイスグループの前記各デバイスのデバイス種別を識別するためのデバイス種別コードを含む
ことを特徴とする請求項７に記載のステーション。
【請求項９】
前記デバイスハンドル取得要求及び前記デバイスハンドル取得要求通知は、デバイス種別を識別するためのデバイス種別コードを含み、
前記デバイスハンドル制御部は、前記デバイスハンドル取得要求通知に応じて前記デバイス種別コードに該当する各デバイスの構成情報を前記ホストから取得し、取得した前記各デバイスの前記構成情報を前記構成情報管理テーブルに保持する
ことを特徴とする請求項２に記載のステーション。
【請求項１０】
前記デバイスハンドル制御部は、前記他のローカルネットワークからのコマンドを前記デバイスハンドル取得要求として受信し、前記コマンドに対するレスポンスを前記デバイスハンドル取得応答として前記他のローカルネットワークに送信し、
前記トランザクション中継部は、前記コマンドと前記レスポンスのハンドシェークによって確定された前記他のローカルネットワークとのデータ転送を前記ターゲットデバイスに中継する
ことを特徴とする請求項１に記載のステーション。
【請求項１１】
前記コマンド、前記レスポンス及び前記データ転送に用いられる全てのパケットは、それらを対応付けるタグＩＤを含み、
前記デバイスハンドル制御部は、前記コマンドにおける前記タグＩＤを前記デバイスハンドル番号として受信する
ことを特徴とする請求項１０に記載のステーション。
【請求項１２】
前記ステーションは、前記ローカルネットワークに接続されたメモリデバイスとしての機能を果たすためのメモリ部をさらに備え、
前記構成情報共有部は、前記ホストとの間で前記ステーションとしての構成情報と前記メモリデバイスとしての構成情報を共有し、
前記ターゲットデバイスがメモリデバイスとしての前記ステーションである場合、前記トランザクション中継部は前記メモリデバイスとしての構成情報に基づいて前記トランザクションを前記メモリ部に中継する
ことを特徴とする請求項２に記載のステーション。
【請求項１３】
ホストとステーションを含む１以上のデバイスとを含むローカルネットワークを有し、前記ステーションを介してイニシエータ装置との通信を行うターゲット装置であって、
前記ホストは、前記ステーションとの間で前記ローカルネットワークにおける当該ステーションの構成情報を共有し、
前記デバイスのそれぞれは、
前記ホストとの間で前記ローカルネットワークにおける自デバイスの構成情報を共有する構成情報共有部を備え、
前記ステーションとしての前記デバイスは、更に、
前記イニシエータ装置から受信したデバイスハンドル取得要求に応じて、前記ローカルネットワーク内のターゲットデバイスの構成情報を前記ホストから取得し、前記デバイスハンドル取得要求に対するデバイスハンドル取得応答を前記イニシエータ装置に返信するデバイスハンドル制御部と、
前記イニシエータ装置から受信したコマンドと当該コマンドで指定されたトランザクションを前記ターゲットデバイスに中継するトランザクション中継部と、
を備え、
前記トランザクション中継部は、前記デバイスハンドル制御部で取得された前記ターゲットデバイスの構成情報に基づいて、前記ホストを介さずに前記トランザクションを中継する
ことを特徴とするターゲット装置。
【請求項１４】
前記構成情報は最大バッファサイズと最大バースト転送サイズを含み、
前記ホストは、前記ステーションのバッファサイズを取得し、当該バッファサイズを越えない範囲で前記デバイスそれぞれとの間の通信に用いる最大バースト転送サイズを決定する
ことを特徴とする請求項１３に記載のターゲット装置。
【請求項１５】
前記ステーションは、さらに構成情報管理テーブルを含み、
前記デバイスハンドル制御部は、前記デバイスハンドル取得要求の受信を示すデバイスハンドル取得要求通知を前記ホストに対して送信して前記ホストから前記ターゲットデバイスの構成情報を取得し、取得した前記ターゲットデバイスの構成情報を前記構成情報管理テーブルに保持し、
前記デバイスハンドル取得応答は、前記ターゲットデバイスの構成情報の取得の成否を示す結果フラグを含む
ことを特徴とする請求項１３に記載のターゲット装置。
【請求項１６】
前記デバイスハンドル制御部は、さらに、前記イニシエータ装置から受信したデバイスハンドル削除要求に応じて、当該デバイスハンドル削除要求の受信を示すデバイスハンドル削除要求通知を前記ホストに対して送信して前記構成情報管理テーブルに保持した前記ターゲットデバイスの構成情報の無効化を行い、前記デバイスハンドル削除要求に対するデバイスハンドル削除応答を前記イニシエータ装置に返信する
ことを特徴とする請求項１５に記載のターゲット装置。
【請求項１７】
前記ホストは、
前記デバイスハンドル取得要求通知に応じて、前記ローカルネットワークにおける前記ターゲットデバイスへのコマンド送信権を前記ステーションに委譲し、
前記デバイスハンドル削除要求通知に応じて、前記コマンド送信権を前記ステーションから取り戻す
ことを特徴とする請求項１６に記載のターゲット装置。
【請求項１８】
前記ホストは、
前記コマンド送信権を前記ステーションに移譲するため、ハブで構成された前記ローカルネットワークにおけるホスト用ポートをステーション用ポートと切替え、
前記ステーションから前記コマンド送信権を取り戻すため、前記ハブのポートを元に戻す
ことを特徴とする請求項１７に記載のターゲット装置。
【請求項１９】
前記デバイスハンドル取得要求及び前記デバイスハンドル取得要求通知は、前記ターゲットデバイスを識別するためのデバイスハンドル番号を含み、
前記デバイスハンドル制御部は、前記デバイスハンドル取得要求通知に応じて前記ホストから受け取った前記デバイスハンドル番号に対応する前記ターゲットデバイスの構成情報を前記デバイスハンドル番号に関連付けて前記構成情報管理テーブルに保持する
ことを特徴とする請求項１５に記載のターゲット装置。
【請求項２０】
前記デバイスハンドル制御部は、受信した前記デバイスハンドル取得要求に含まれる前記デバイスハンドル番号に関連付けられた前記ターゲットデバイスの構成情報が前記構成情報管理テーブルに保持されていない場合にのみ、前記デバイスハンドル取得要求通知を前記ホストに送信する
ことを特徴とする請求項１９に記載のターゲット装置。
【請求項２１】
前記デバイスハンドル制御部は、前記デバイスハンドル取得要求通知に応じて前記ホストから前記ターゲットデバイスグループの各デバイスの構成情報を一括取得し、一括取得した前記ターゲットデバイスグループの前記各デバイスの前記構成情報を前記構成情報管理テーブルに保持する
ことを特徴とする請求項１５に記載のターゲット装置。
【請求項２２】
前記デバイスハンドル取得応答は、前記ターゲットデバイスグループの前記各デバイスを特定する情報を含む
ことを特徴とする請求項２１に記載のターゲット装置。
【請求項２３】
前記デバイスハンドル取得応答は、更に、前記ターゲットデバイスグループの前記各デバイスのデバイス種別を識別するためのデバイス種別コードを含む
ことを特徴とする請求項２２に記載のターゲット装置。
【請求項２４】
前記デバイスハンドル取得要求及び前記デバイスハンドル取得要求通知は、デバイス種別を識別するためのデバイス種別コードを含み、
前記デバイスハンドル制御部は、前記デバイスハンドル取得要求通知に応じて前記デバイス種別コードに該当する各デバイスの構成情報を前記ホストから取得し、取得した前記各デバイスの前記構成情報を前記構成情報管理テーブルに保持する
ことを特徴とする請求項１５に記載のターゲット装置。
【請求項２５】
前記デバイスハンドル制御部は、前記イニシエータ装置からのコマンドを前記デバイスハンドル取得要求として受信し、前記コマンドに対するレスポンスを前記デバイスハンドル取得応答として前記イニシエータ装置に送信し、
前記トランザクション中継部は、前記コマンドと前記レスポンスのハンドシェークによって確定された前記イニシエータ装置とのデータ転送を前記ターゲットデバイスに中継する
ことを特徴とする請求項１３に記載のターゲット装置。
【請求項２６】
前記コマンド、前記レスポンス及び前記データ転送に用いられる全てのパケットは、それらを対応付けるタグＩＤを含み、
前記デバイスハンドル制御部は、前記コマンドにおける前記タグＩＤを前記デバイスハンドル番号として受信する
ことを特徴とする請求項２５に記載のターゲット装置。
【請求項２７】
前記ステーションは、前記ローカルネットワークに接続されたメモリデバイスとしての機能を果たすためのメモリ部をさらに備え、
前記構成情報共有部は、前記ホストとの間で前記ステーションとしての構成情報と前記メモリデバイスとしての構成情報を共有し、
前記ターゲットデバイスがメモリデバイスとしての前記ステーションである場合、前記トランザクション中継部が前記メモリデバイスとしての構成情報に基づいて前記トランザクションを前記メモリ部に中継する
ことを特徴とする請求項１５に記載のターゲット装置。
【請求項２８】
ホストとステーションを含むローカルネットワークを有し、前記ステーションを介してターゲット装置との通信を行うイニシエータ装置であって、
前記ホストは、前記ステーションとの間で前記ローカルネットワークにおける当該ステーションの構成情報を共有し、
前記ステーションは、
前記ホストとの間で前記ローカルネットワークにおける自ステーションの構成情報を共有する構成情報共有部と、
前記ターゲット装置に含まれるターゲットデバイスとの論理的な接続を確立するためのデバイスハンドル取得要求を前記ターゲット装置に送信し、当該デバイスハンドル取得要求に対するデバイスハンドル取得応答を前記ターゲット装置から受信するデバイスハンドル制御部と、
前記ホストが前記ターゲット装置に含まれる前記ターゲットデバイスとの通信のために送信したコマンドと当該コマンドで指定されたトランザクションを、前記ターゲット装置に中継するトランザクション中継部と、
を備えることを特徴とするイニシエータ装置。
【請求項２９】
前記デバイスハンドル制御部は、前記ターゲット装置に含まれる前記ターゲットデバイスとの論理的な接続を切断するためのデバイスハンドル削除要求を前記ターゲット装置に送信し、当該デバイスハンドル削除要求に対する前記デバイスハンドル削除応答を前記ターゲット装置から受信する
ことを特徴とする請求項２８に記載のイニシエータ装置。
【請求項３０】
前記デバイスハンドル取得要求は、前記ターゲットデバイスを識別するためのデバイスハンドル番号を含み、
前記デバイスハンドル取得応答は、前記ターゲットデバイスとの論理的な接続の成否を示す結果フラグを含み、
前記ホストは、前記結果フラグが成功を示す場合にのみ前記コマンドを送信する
ことを特徴とする請求項２８に記載のイニシエータ装置。
【請求項３１】
前記ホストは、前記デバイスハンドル取得要求としてコマンドを送信し、前記コマンドに対するレスポンスを前記デバイスハンドル取得応答として受信し、
前記トランザクション中継部は、前記コマンドと前記レスポンスのハンドシェークによって確定されたデータ転送をターゲット装置に中継する
ことを特徴とする請求項３０に記載のイニシエータ装置。
【請求項３２】
前記コマンド、前記レスポンス及び前記データ転送に用いられる全てのパケットは、それらを対応付けるタグＩＤを含み、
前記デバイスハンドル制御部は、前記コマンドにおける前記タグＩＤを前記デバイスハンドル番号として送信する
ことを特徴とする請求項３１に記載のイニシエータ装置。
【請求項３３】
第１のホストと第１のステーションを含む１以上の第１のデバイスとを含む第１のローカルネットワークを有するイニシエータ装置と、第２のホストと第２のステーションを含む１以上の第２のデバイスとを含む第２のローカルネットワークを有するターゲット装置とが、前記第１のステーションと前記第２のステーションとの間のステーション間ネットワークを介して接続された通信システムであって、
前記第１のホストは、前記第１のローカルネットワークに接続された前記第１のステーションを含む各第１のデバイスとの間で構成情報を共有し、
前記第１のステーションは、
前記第１のホストとの間で前記第１のローカルネットワークにおける自ステーションの構成情報を共有する第１の構成情報共有部と、
前記ターゲット装置に含まれるターゲットデバイスとの論理的な接続を確立するためのデバイスハンドル取得要求を前記ターゲット装置に送信し、当該デバイスハンドル取得要求に対するデバイスハンドル取得応答を前記ターゲット装置から受信する第１のデバイスハンドル制御部と、
前記第１のホストが前記ターゲット装置に含まれる前記ターゲットデバイスとの通信のために送信したコマンドと当該コマンドで指定されたトランザクションを、前記ターゲット装置に中継する第１のトランザクション中継部と、
を備え、
前記第２のホストは、前記第２のローカルネットワークに接続された前記第２のステーションを含む各第２のデバイスとの間で構成情報を共有し、
前記第２のデバイスのそれぞれは、
前記第２のホストとの間で前記ローカルネットワークにおける自デバイスの構成情報を共有する第２の構成情報共有部を備え、
前記ステーションとしての前記第２のデバイスは、更に、
前記イニシエータ装置から受信したデバイスハンドル取得要求に応じて、前記ローカルネットワーク内のターゲットデバイスの構成情報を前記ホストから取得し、前記デバイスハンドル取得要求に対するデバイスハンドル取得応答を前記イニシエータ装置に返信する第２のデバイスハンドル制御部と、
前記イニシエータ装置から受信したコマンドと当該コマンドで指定されたトランザクションを前記ターゲットデバイスに中継する第２のトランザクション中継部と、
を備え、
前記第２のトランザクション中継部は、前記デバイスハンドル制御部で取得された前記ターゲットデバイスの構成情報に基づいて、前記ホストを介さずに前記トランザクションを中継する
ことを特徴とする通信システム。
【請求項３４】
第１のホストと第１のステーションを含む１以上の第１のデバイスとを含む第１のローカルネットワークを有するイニシエータ装置と、第２のホストと第２のステーションを含む１以上の第２のデバイスとを含む第２のローカルネットワークを有するターゲット装置とが、前記第１のステーションと前記第２のステーションとの間のステーション間ネットワークを介して接続された通信システムにおける通信方法であって、
前記第１のホストと前記第１のローカルネットワークに接続された前記第１のステーションを含む各第１のデバイスとの間で構成情報を共有する第１の構成情報共有ステップと、
前記第２のホストと前記第２のローカルネットワークに接続された前記第２のステーションを含む各第２のデバイスとの間で構成情報を共有する第２の構成情報共有ステップと、
前記第１のホストが前記ターゲット装置にデバイスハンドル取得要求を送信し、前記第２のステーションが当該デバイスハンドル取得要求に応じて前記第２のホストから前記第２のローカルネットワークに含まれるターゲットデバイスの構成情報を取得し、前記デバイスハンドル取得要求に対するデバイスハンドル取得応答をイニシエータ装置に返信するデバイスハンドル制御ステップと、
前記第１のホストが発行するコマンドと当該コマンドで指定されるトランザクションを、前記ターゲットデバイスに中継するトランザクション中継ステップとを有し、
前記トランザクション中継ステップにおいて、前記第２のステーションは、前記デバイスハンドル制御ステップで取得した前記ターゲットデバイスの構成情報に基づいて、前記第２のホストを介さずに前記トランザクションを中継する
ことを特徴とする通信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、それぞれホストを有するローカルネットワーク間を接続し、ホストと当該ホストとは異なるローカルネットワークのデバイスとの間での通信技術に関する。
【背景技術】
【０００２】
従来、オフィスや家庭内におけるＰＣ（Personal Computer）や携帯電話機、あるいはデジタルスチルカメラやＢＤレコーダに代表される各種ＡＶ機器間で、大容量コンテンツの移動が行われている。ＡＶ機器間でのコンテンツ移動は、ＵＳＢ（Universal Serial Bus）のような有線通信に基づくＰＡＮ（Personal Area Network）や、ＳＤメモリカードのようなブリッジメディアを用いて行われる。しかしながら、ＵＳＢやＳＤメモリカードでは、ケーブル接続やカード挿抜が必要となるため、機器のユーザビリティ向上の観点から無線接続化が求められている。例えば、ＵＳＢの物理層を無線化したワイヤレスＵＳＢは、既に規格化がなされ、非特許分献１に示すＵＲＬにおいて仕様が公開されている。また、ＳＤメモリカードのようなブリッジメディアでは、ＩＥＥＥ８０２．１１系規格（非特許文献２参照）の無線ＬＡＮ（Local Area Network）を内蔵した製品が、登場している（非特許文献３参照）。【０００３】
また、無線通信では、機器のユーザビリティ向上のための別の観点として、ユーザの通信待ち時間を削減するために、有線通信に匹敵する通信速度が求められている。そこで、例えば、ＵＳＢ３．０のような１Ｇｂｐｓを超える有線ＰＡＮ用途の置き換えを想定し、６０ＧＨｚ帯域のミリ波を利用する無線ＰＡＮ技術の標準化が、行われている。具体的には、この標準化は、ＩＥＥＥ８０２．１５．３ＣやＷｉｒｅｌｅｓｓ  Ｇｉｇａｂｉｔ  （ＷｉＧｉｇ）  Ａｌｌｉａｎｃｅで行われている。特に、ＷｉＧｉｇ  Ａｌｌｉａｎｃｅでは、既存のＩＥＥＥ８０２．１１系規格のＭＡＣ層との後方互換性を有する拡張ＭＡＣ層を定義している。さらに、ＷｉＧｉｇ  Ａｌｌｉａｎｃｅでは、その上位層として、ＵＳＢやＰＣＩ  ＥｘｐｒｅｓｓのようなＩＯバスのプロトコルを適合させるために、ＩＯ−ＰＡＬ（Protocol Adaptation Layer）を策定中である。高速無線の標準化は、このようなアーキテクチャにより、既存のＩＯバスプロトコルの無線接続化が容易となるため、その普及が期待されている。【０００４】
このような無線接続によってネットワーク拡張する従来技術としては、有線ネットワークに接続された無線ノードが他のノード情報を収集して記憶し、それを接続先の無線機器に開示する技術が特許文献１に示されている。これによると、無線機器のユーザは、物理的な接続を意識すること無く、例えば有線ネットワークに接続されたストレージ内のコンテンツを探索し、アクセスすることができる。このように、無線機器と無線ノードとの間の無線接続においては、上記に示したＩＯ−ＰＡＬのように、有線ネットワークに適合したプロトコルを用いることで、プロトコル変換のオーバーヘッドを削減した高速な通信が可能となる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０００−１１５１７３号
【非特許文献】
【０００６】
【非特許文献１】“Ｗｉｒｅｌｅｓｓ  Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ  Ｓｐｅｃｉｆｉｃａｔｉｏｎ  Ｒｅｖｉｓｉｏｎ  １．１”、[ｏｎｌｉｎｅ]、USB Ｉｍｐｌｅｍｅｎｔｅｒｓ Forum， Inc．、［平成２２年１１月１６日検索］、インターネット＜ＵＲＬ：ｈｔｔｐ：／／ｗｗｗ．ｕｓｂ．ｏｒｇ／ｄｅｖｅｌｏｐｅｒｓ／ｗｕｓｂ／ｄｏｃｓ／ｗｕｓｂ１／１／２０１００９１０．ｚｉｐ＞
【非特許文献２】“ＩＥＥＥ  Ｓｔｄ  ８０２．１１−２００７，  Ｐａｒｔ  １１：  Ｗｉｒｅｌｅｓｓ  ＬＡＮ  Ｍｅｄｉｕｍ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ  （ＭＡＣ）  ａｎｄ  Ｐｈｙｓｉｃａｌ  Ｌａｙｅｒ  （ＰＨＹ）  Ｓｐｅｃｉｆｉｃａｔｉｏｎｓ”、[ｏｎｌｉｎｅ]、ＩＥＥＥ  Ｓｔａｎｄａｒｄ、［平成２２年１１月１６日検索］、インターネット＜ＵＲＬ：ｈｔｔｐ：／／ｓｔａｎｄａｒｄｓ．ｉｅｅｅ．ｏｒｇ／ｇｅｔｉｅｅｅ８０２／ｄｏｗｎｌｏａｄ／８０２．１１−２００７．ｐｄｆ＞
【非特許文献３】“Ｅｙｅ−Ｆｉ  Ｃｏｎｎｅｃｔ  Ｘ２”、[ｏｎｌｉｎｅ]、Ｅｙｅ−Ｆｉ、[平成２２年１１月１６日検索]、インターネット＜ＵＲＬ：ｈｔｔｐ：／／ｗｗｗ．ｅｙｅ．ｆｉ／ｐｒｏｄｕｃｔｓ／ｃｏｎｎｅｃｔｘ２＞
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、従来技術は、ＵＳＢやＳＤメモリカード（あるいはＳＤＩＯ）におけるＳＤバスのように、ホストを中心とするスター型の論理トポロジーを構成する有線ネットワークへ適用すると、次のような課題を有する。例えば、無線ノードが有線ネットワークにおけるデバイスとして接続されていた場合、無線機器は、当該無線ノードを介して直接有線ネットワークのデバイスにアクセスすることができない。この場合、無線ノードは、無線機器からのアクセス要求を有線ネットワークのホストに通知し、当該ホストを介してデバイスにアクセスする必要があるため、通信速度は大幅に低下する。【０００８】
本発明は、リモートネットワークとローカルネットワーク内のデバイスとの間のトランザクションの通信速度を、向上させることを目的とする。
【課題を解決するための手段】
【０００９】
前記従来の課題を解決するために、本発明の第１の態様に係るステーションは、ホストを含むローカルネットワークに含まれ、他のローカルネットワークとの通信を中継するステーションであって、前記ホストとの間で前記ローカルネットワークにおける自ステーションの構成情報を共有する構成情報共有部と、前記他のローカルネットワークから受信したデバイスハンドル取得要求に応じて、前記ローカルネットワーク内のターゲットデバイスの構成情報を前記ホストから取得し、前記デバイスハンドル取得要求に対するデバイスハンドル取得応答を前記他のローカルネットワークに返信するデバイスハンドル制御部と、前記他のローカルネットワークから受信したコマンドと当該コマンドで指定されたトランザクションを、前記ターゲットデバイスに中継するトランザクション中継部と、を備え、前記トランザクション中継部は、前記デバイスハンドル制御部で取得された前記ターゲットデバイスの構成情報に基づいて、前記ホストを介さずに前記トランザクションを中継する。【００１０】
これによれば、ステーションはホストを介することなく他のローカルネットワークとターゲットデバイスとの間のトランザクションを中継することができ、ホストを介したトランザクションの中継に比べて通信速度の向上が図られる。【００１１】
第２の態様に係るステーションは、第１の態様に係るステーションにおいて、前記ステーションは、更に、構成情報管理テーブルを含み、前記デバイスハンドル制御部は、前記デバイスハンドル取得要求の受信を示すデバイスハンドル取得要求通知を前記ホストに送信して前記ホストから前記ターゲットデバイスの構成情報を取得し、取得した前記ターゲットデバイスの構成情報を前記構成情報管理テーブルに保持し、前記デバイスハンドル取得応答は、前記ターゲットデバイスの構成情報の取得の成否を示す結果フラグを含むとしてもよい。【００１２】
これによれば、ステーションは、トランザクションの中継に必要なターゲットデバイスの構成情報を、ホストから取得することができる。また、他のローカルネットワークは、デバイスハンドル取得応答に含まれる結果フラグから、他のローカルネットワークとローカルネットワークに含まれるターゲットデバイスとの論理的な接続の成否を、確認することができる。【００１３】
第３の態様に係るステーションは、第２の態様に係るステーションにおいて、前記デバイスハンドル制御部は、さらに、前記他のローカルネットワークから受信したデバイスハンドル削除要求に応じて、当該デバイスハンドル削除要求の受信を示すデバイスハンドル削除要求通知を前記ホストに送信して前記構成情報管理テーブルに保持した前記ターゲットデバイスの構成情報の無効化を行い、前記デバイスハンドル削除要求に対するデバイスハンドル削除応答を前記他のローカルネットワークに返信するとしてもよい。【００１４】
これによれば、ステーションは、他のローカルネットワークとローカルネットワークに含まれるターゲットデバイスとの間の論理的な接続を、切断することができる。【００１５】
第４の態様に係るステーションは、第２の態様に係るステーションにおいて、前記デバイスハンドル取得要求及び前記デバイスハンドル取得要求通知は、前記ターゲットデバイスを識別するためのデバイスハンドル番号を含み、前記デバイスハンドル制御部は、前記デバイスハンドル取得要求通知に応じて前記ホストから受け取った前記デバイスハンドル番号に対応する前記ターゲットデバイスの構成情報を前記デバイスハンドル番号に関連付けて前記構成情報管理テーブルに保持するとしてもよい。【００１６】
これによれば、ステーションは、他のローカルネットワークとの間で、デバイスハンドル番号によってターゲットデバイスを識別できる。【００１７】
第５の態様に係るステーションは、第４の態様に係るステーションにおいて、前記デバイスハンドル制御部は、受信した前記デバイスハンドル取得要求に含まれる前記デバイスハンドル番号に関連付けられた前記ターゲットデバイスの構成情報が前記構成情報管理テーブルに保持されていない場合にのみ、前記デバイスハンドル取得要求通知を前記ホストに送信するとしてもよい。【００１８】
これによれば、ステーションは、ホストに対して行うデバイスハンドル取得要求通知の頻度を削減することができる。【００１９】
第６の態様に係るステーションは、第２の態様に係るステーションにおいて、前記デバイスハンドル制御部は、前記デバイスハンドル取得要求通知に応じて前記ホストからターゲットデバイスグループの各デバイスの構成情報を一括取得し、一括取得した前記ターゲットデバイスグループの前記各デバイスの前記構成情報を前記構成情報管理テーブルに保持するとしてもよい。【００２０】
これによれば、ステーションは、トランザクションの中継に先立って、ターゲットデバイスグループの各デバイスの構成情報を一括取得しておくことができる。【００２１】
第７の態様に係るステーションは、第６の態様に係るステーションにおいて、前記デバイスハンドル取得応答は、前記ターゲットデバイスグループの前記各デバイスを特定する情報を含むとしてもよい。【００２２】
これによれば、ステーションは、デバイスハンドル取得要求に対するデバイスハンドル取得応答により、ターゲットデバイスグループの各デバイスを特定する情報を、他のローカルネットワークに通知することができる。【００２３】
第８の態様に係るステーションは、第７の態様に係るステーションにおいて、前記デバイスハンドル取得応答は、更に、前記ターゲットデバイスグループの前記各デバイスのデバイス種別を識別するためのデバイス種別コードを含むとしてもよい。【００２４】
これによれば、ステーションは、デバイスハンドル取得応答により他のローカルネットワークにターゲットデバイスグループの各デバイスのデバイス種別コードを通知することができる。これにより、他のローカルネットワークは、デバイスハンドル取得応答により、ターゲットデバイスグループの各デバイスのデバイス種別コードを、確認することができる。【００２５】
第９の態様に係るステーションは、第２の態様に係るステーションにおいて、前記デバイスハンドル取得要求及び前記デバイスハンドル取得要求通知は、デバイス種別を識別するためのデバイス種別コードを含み、前記デバイスハンドル制御部は、前記デバイスハンドル取得要求通知に応じて前記デバイス種別コードに該当する各デバイスの構成情報を前記ホストから取得し、取得した前記各デバイスの前記構成情報を前記構成情報管理テーブルに保持するとしてもよい。【００２６】
これによれば、ステーションは、他のローカルネットワークによって指定されたデバイス種別に該当するターゲットデバイスに、トランザクションを中継することができる。【００２７】
第１０の態様に係るステーションは、第１の態様に係るステーションにおいて、前記デバイスハンドル制御部は、前記他のローカルネットワークからのコマンドを前記デバイスハンドル取得要求として受信し、前記コマンドに対するレスポンスを前記デバイスハンドル取得応答として前記他のローカルネットワークに送信し、前記トランザクション中継部は、前記コマンドと前記レスポンスのハンドシェークによって確定された前記他のローカルネットワークとのデータ転送を前記ターゲットデバイスに中継するとしてもよい。【００２８】
これによれば、ステーションは、他のローカルネットワークとの間で、専用のデバイスハンドル取得要求または専用のデバイス取得応答を交換する必要がなく、ステーションと他のローカルネットワークとの間の通信量を削減することができる。【００２９】
第１１の態様に係るステーションは、第１０の態様に係るステーションにおいて、前記コマンド、前記レスポンス及び前記データ転送に用いられる全てのパケットは、それらを対応付けるタグＩＤを含み、前記デバイスハンドル制御部は、前記コマンドにおける前記タグＩＤを前記デバイスハンドル番号として受信するとしてもよい。【００３０】
これによれば、ステーションは、コマンドにおいてデバイスハンドル番号のための追加フィールドを処理する必要が無くなる。【００３１】
第１２の態様に係るステーションは、第２の態様に係るステーションにおいて、前記ステーションは、前記ローカルネットワークに接続されたメモリデバイスとしての機能を果たすためのメモリ部をさらに備え、前記構成情報共有部は、前記ホストとの間で前記ステーションとしての構成情報と前記メモリデバイスとしての構成情報を共有し、前記ターゲットデバイスがメモリデバイスとしての前記ステーションである場合、前記トランザクション中継部は前記メモリデバイスとしての構成情報に基づいて前記トランザクションを前記メモリ部に中継するとしてもよい。【００３２】
これによれば、ステーションは、自ステーションに統合したメモリ部を、ターゲットデバイスとして、他のローカルネットワークとの間のトランザクションを、中継することができる。【００３３】
本発明の第１の態様に係るターゲット装置は、ホストとステーションを含む１以上のデバイスとを含むローカルネットワークを有し、前記ステーションを介してイニシエータ装置との通信を行うターゲット装置であって、前記ホストは、前記ステーションとの間で前記ローカルネットワークにおける当該ステーションの構成情報を共有し、前記デバイスのそれぞれは、前記ホストとの間で前記ローカルネットワークにおける自デバイスの構成情報を共有する構成情報共有部を備え、前記ステーションとしての前記デバイスは、更に、前記イニシエータ装置から受信したデバイスハンドル取得要求に応じて、前記ローカルネットワーク内のターゲットデバイスの構成情報を前記ホストから取得し、前記デバイスハンドル取得要求に対するデバイスハンドル取得応答を前記イニシエータ装置に返信するデバイスハンドル制御部と、前記イニシエータ装置から受信したコマンドと当該コマンドで指定されたトランザクションを前記ターゲットデバイスに中継するトランザクション中継部と、を備え、前記トランザクション中継部は、前記デバイスハンドル制御部で取得された前記ターゲットデバイスの構成情報に基づいて、前記ホストを介さずに前記トランザクションを中継する。【００３４】
これによれば、ステーションは、ホストを介することなくイニシエータ装置とターゲットデバイスとの間のトランザクションを中継することができ、ホストを介したトランザクションの中継に比べて通信速度の向上が図られる。【００３５】
第２の態様に係るターゲット装置は、第１の態様に係るターゲット装置において、前記構成情報は最大バッファサイズと最大バースト転送サイズを含み、前記ホストは、前記ステーションのバッファサイズを取得し、当該バッファサイズを越えない範囲で前記デバイスそれぞれとの間の通信に用いる最大バースト転送サイズを決定するとしてもよい。【００３６】
これによれば、ステーションは、イニシエータ装置とターゲットデバイスとの間でトランザクションを中継する際に、ステーションとターゲットデバイスとの間でのバッファオーバーフローの発生を防ぐことができる。【００３７】
第３の態様に係るターゲット装置は、第１の態様に係るターゲット装置において、前記ステーションは、さらに構成情報管理テーブルを含み、前記デバイスハンドル制御部は、前記デバイスハンドル取得要求の受信を示すデバイスハンドル取得要求通知を前記ホストに対して送信して前記ホストから前記ターゲットデバイスの構成情報を取得し、取得した前記ターゲットデバイスの構成情報を前記構成情報管理テーブルに保持し、前記デバイスハンドル取得応答は、前記ターゲットデバイスの構成情報の取得の成否を示す結果フラグを含むとしてもよい。【００３８】
これによれば、ステーションは、トランザクションの中継に必要なターゲットデバイスの構成情報をホストから取得することができる。また、イニシエータ装置は、デバイスハンドル取得応答に含まれる結果フラグから、イニシエータ装置とターゲットデバイスとの論理的な接続の成否を確認することができる。【００３９】
第４の態様に係るターゲット装置は、第３の態様に係るターゲット装置において、前記デバイスハンドル制御部は、さらに、前記イニシエータ装置から受信したデバイスハンドル削除要求に応じて、当該デバイスハンドル削除要求の受信を示すデバイスハンドル削除要求通知を前記ホストに対して送信して前記構成情報管理テーブルに保持した前記ターゲットデバイスの構成情報の無効化を行い、前記デバイスハンドル削除要求に対するデバイスハンドル削除応答を前記イニシエータ装置に返信するとしてもよい。【００４０】
これによれば、ターゲット装置は、イニシエータ装置とローカルネットワークに含まれるターゲットデバイスとの間の論理的な接続を切断することができる。【００４１】
第５の態様に係るターゲット装置は、第４の態様に係るターゲット装置において、前記ホストは、前記デバイスハンドル取得要求通知に応じて、前記ローカルネットワークにおける前記ターゲットデバイスへのコマンド送信権を前記ステーションに委譲し、前記デバイスハンドル削除要求通知に応じて、前記コマンド送信権を前記ステーションから取り戻すとしてもよい。【００４２】
これによれば、ターゲット装置は、ホストとホストを代替したステーションによる、ターゲットデバイスへのアクセス競合を防ぐことができる。【００４３】
第６の態様に係るターゲット装置は、第５の態様に係るターゲット装置において、前記ホストは、前記コマンド送信権を前記ステーションに移譲するため、ハブで構成された前記ローカルネットワークにおけるホスト用ポートをステーション用ポートと切替え、前記ステーションから前記コマンド送信権を取り戻すため、前記ハブのポートを元に戻すとしてもよい。【００４４】
これによれば、ローカルネットワークがハブで構成される場合も、ステーションは、物理的にホストを代替することができる。【００４５】
第７の態様に係るターゲット装置は、第３の態様に係るターゲット装置において、前記デバイスハンドル取得要求及び前記デバイスハンドル取得要求通知は、前記ターゲットデバイスを識別するためのデバイスハンドル番号を含み、前記デバイスハンドル制御部は、前記デバイスハンドル取得要求通知に応じて前記ホストから受け取った前記デバイスハンドル番号に対応する前記ターゲットデバイスの構成情報を前記デバイスハンドル番号に関連付けて前記構成情報管理テーブルに保持するとしてもよい。【００４６】
これによれば、ターゲット装置は、イニシエータ装置との間でデバイスハンドル番号によってターゲットデバイスを識別できる。【００４７】
第８の態様に係るターゲット装置は、第７の態様に係るターゲット装置において、前記デバイスハンドル制御部は、受信した前記デバイスハンドル取得要求に含まれる前記デバイスハンドル番号に関連付けられた前記ターゲットデバイスの構成情報が前記構成情報管理テーブルに保持されていない場合にのみ、前記デバイスハンドル取得要求通知を前記ホストに送信するとしてもよい。【００４８】
これによれば、ステーションは、ホストに対して行うデバイスハンドル取得要求通知の頻度を削減することができる。【００４９】
第９の態様に係るターゲット装置は、第３の態様に係るターゲット装置において、前記デバイスハンドル制御部は、前記デバイスハンドル取得要求通知に応じて前記ホストから前記ターゲットデバイスグループの各デバイスの構成情報を一括取得し、一括取得した前記ターゲットデバイスグループの前記各デバイスの前記構成情報を前記構成情報管理テーブルに保持するとしてもよい。【００５０】
これによれば、ステーションは、トランザクションの中継に先立って、ターゲットデバイスグループの各デバイスの構成情報を、一括取得しておくことができる。【００５１】
第１０の態様に係るターゲット装置は、第９の態様に係るターゲット装置において、前記デバイスハンドル取得応答は、前記ターゲットデバイスグループの前記各デバイスを特定する情報を含むとしてもよい。【００５２】
これによれば、ターゲット装置は、デバイスハンドル取得要求に対するデバイスハンドル取得応答により、ターゲットデバイスグループの各デバイスを特定する情報を、イニシエータ装置に通知することができる。【００５３】
第１１の態様に係るターゲット装置は、第１０の態様に係るターゲット装置において、前記デバイスハンドル取得応答は、更に、前記ターゲットデバイスグループの前記各デバイスのデバイス種別を識別するためのデバイス種別コードを含むとしてもよい。【００５４】
これによれば、ターゲット装置は、デバイスハンドル取得応答によりイニシエータ装置にターゲットデバイスグループの各デバイスのデバイス種別コードを通知することができる。これにより、イニシエータ装置は、デバイスハンドル取得応答によりターゲットデバイスグループの各デバイスのデバイス種別コードを確認することができる。【００５５】
第１２の態様に係るターゲット装置は、第３の態様に係るターゲット装置において、前記デバイスハンドル取得要求及び前記デバイスハンドル取得要求通知は、デバイス種別を識別するためのデバイス種別コードを含み、前記デバイスハンドル制御部は、前記デバイスハンドル取得要求通知に応じて前記デバイス種別コードに該当する各デバイスの構成情報を前記ホストから取得し、取得した前記各デバイスの前記構成情報を前記構成情報管理テーブルに保持するとしてもよい。【００５６】
これによれば、ステーションは、イニシエータ装置によって指定されたデバイス種別に該当するターゲットデバイスに、トランザクションを中継することができる。【００５７】
第１３の態様に係るターゲット装置は、第１の態様に係るターゲット装置において、前記デバイスハンドル制御部は、前記イニシエータ装置からのコマンドを前記デバイスハンドル取得要求として受信し、前記コマンドに対するレスポンスを前記デバイスハンドル取得応答として前記イニシエータ装置に送信し、前記トランザクション中継部は、前記コマンドと前記レスポンスのハンドシェークによって確定された前記イニシエータ装置とのデータ転送を前記ターゲットデバイスに中継するとしてもよい。【００５８】
これによれば、ターゲット装置は、イニシエータ装置との間で専用のデバイスハンドル取得要求や専用のデバイス取得応答を交換する必要がなくなるので、ターゲット装置とイニシエータ装置との間の通信量の削減を図ることができる。【００５９】
第１４の態様に係るターゲット装置は、第１３の態様に係るターゲット装置において、前記コマンド、前記レスポンス及び前記データ転送に用いられる全てのパケットは、それらを対応付けるタグＩＤを含み、前記デバイスハンドル制御部は、前記コマンドにおける前記タグＩＤを前記デバイスハンドル番号として受信するとしてもよい。【００６０】
これによれば、ターゲット装置は、コマンドあるいはレスポンスにおいて、デバイスハンドル番号のための追加フィールドを処理する必要が無くなる。【００６１】
第１５の態様に係るターゲット装置は、第３の態様に係るターゲット装置において、前記ステーションは、前記ローカルネットワークに接続されたメモリデバイスとしての機能を果たすためのメモリ部をさらに備え、前記構成情報共有部は、前記ホストとの間で前記ステーションとしての構成情報と前記メモリデバイスとしての構成情報を共有し、前記ターゲットデバイスがメモリデバイスとしての前記ステーションである場合、前記トランザクション中継部が前記メモリデバイスとしての構成情報に基づいて前記トランザクションを前記メモリ部に中継するとしてもよい。【００６２】
これによれば、ステーションは、ステーションに統合したメモリ部をターゲットデバイスとして、イニシエータ装置との間のトランザクションを中継することができる。【００６３】
本発明の第１の態様に係るイニシエータ装置は、ホストとステーションを含むローカルネットワークを有し、前記ステーションを介してターゲット装置との通信を行うイニシエータ装置であって、前記ホストは、前記ステーションとの間で前記ローカルネットワークにおける当該ステーションの構成情報を共有し、前記ステーションは、前記ホストとの間で前記ローカルネットワークにおける自ステーションの構成情報を共有する構成情報共有部と、前記ターゲット装置に含まれるターゲットデバイスとの論理的な接続を確立するためのデバイスハンドル取得要求を前記ターゲット装置に送信し、当該デバイスハンドル取得要求に対するデバイスハンドル取得応答を前記ターゲット装置から受信するデバイスハンドル制御部と、前記ホストが前記ターゲット装置に含まれる前記ターゲットデバイスとの通信のために送信したコマンドと当該コマンドで指定されたトランザクションを、前記ターゲット装置に中継するトランザクション中継部と、を備える。【００６４】
これによれば、イニシエータ装置は、ステーションがターゲットデバイスを代替し、ホストとターゲットデバイスとの間のトランザクションを中継できる。【００６５】
第２の態様に係るイニシエータ装置は、第１の態様に係るイニシエータ装置において、前記デバイスハンドル制御部は、前記ターゲット装置に含まれる前記ターゲットデバイスとの論理的な接続を切断するためのデバイスハンドル削除要求を前記ターゲット装置に送信し、当該デバイスハンドル削除要求に対する前記デバイスハンドル削除応答を前記ターゲット装置から受信するとしてもよい。【００６６】
これによれば、イニシエータ装置は、ターゲット装置に対して、ターゲットデバイスとの論理的な接続の切断を要求し、その切断を確認することができる。【００６７】
第３の態様に係るイニシエータ装置は、第１の態様に係るイニシエータ装置において、前記デバイスハンドル取得要求は、前記ターゲットデバイスを識別するためのデバイスハンドル番号を含み、前記デバイスハンドル取得応答は、前記ターゲットデバイスとの論理的な接続の成否を示す結果フラグを含み、前記ホストは、前記結果フラグが成功を示す場合にのみ前記コマンドを送信するとしてもよい。【００６８】
これによれば、イニシエータ装置は、ターゲット装置との間で、デバイスハンドル番号によってターゲットデバイスを識別できる。【００６９】
第４の態様に係るイニシエータ装置は、第１の態様に係るイニシエータ装置において、前記ホストは、前記デバイスハンドル取得要求としてコマンドを送信し、前記コマンドに対するレスポンスを前記デバイスハンドル取得応答として受信し、前記トランザクション中継部は、前記コマンドと前記レスポンスのハンドシェークによって確定されたデータ転送をターゲット装置に中継するとしてもよい。【００７０】
これによれば、イニシエータ装置は、ターゲット装置との間で専用のデバイスハンドル取得要求や専用のデバイス取得応答を交換する必要がなくなるので、イニシエータ装置とターゲット装置との間の通信量の削減を図ることができる。【００７１】
第５の態様に係るイニシエータ装置は、第４の態様に係るイニシエータ装置において、前記コマンド、前記レスポンス及び前記データ転送に用いられる全てのパケットは、それらを対応付けるタグＩＤを含み、前記デバイスハンドル制御部は、前記コマンドにおける前記タグＩＤを前記デバイスハンドル番号として送信するとしてもよい。【００７２】
これによれば、イニシエータ装置は、コマンドやレスポンスについて、デバイスハンドル番号のための追加フィールドを処理する必要が無くなる。【００７３】
本発明の第１の態様に係る通信システムは、第１のホストと第１のステーションを含む１以上の第１のデバイスとを含む第１のローカルネットワークを有するイニシエータ装置と、第２のホストと第２のステーションを含む１以上の第２のデバイスとを含む第２のローカルネットワークを有するターゲット装置とが、前記第１のステーションと前記第２のステーションとの間のステーション間ネットワークを介して接続された通信システムであって、前記第１のホストは、前記第１のローカルネットワークに接続された前記第１のステーションを含む各第１のデバイスとの間で構成情報を共有し、前記第１のステーションは、前記第１のホストとの間で前記第１のローカルネットワークにおける自ステーションの構成情報を共有する第１の構成情報共有部と、前記ターゲット装置に含まれるターゲットデバイスとの論理的な接続を確立するためのデバイスハンドル取得要求を前記ターゲット装置に送信し、当該デバイスハンドル取得要求に対するデバイスハンドル取得応答を前記ターゲット装置から受信する第１のデバイスハンドル制御部と、前記第１のホストが前記ターゲット装置に含まれる前記ターゲットデバイスとの通信のために送信したコマンドと当該コマンドで指定されたトランザクションを、前記ターゲット装置に中継する第１のトランザクション中継部と、を備え、前記第２のホストは、前記第２のローカルネットワークに接続された前記第２のステーションを含む各第２のデバイスとの間で構成情報を共有し、前記第２のデバイスのそれぞれは、前記第２のホストとの間で前記ローカルネットワークにおける自デバイスの構成情報を共有する第２の構成情報共有部を備え、前記ステーションとしての前記第２のデバイスは、更に、前記イニシエータ装置から受信したデバイスハンドル取得要求に応じて、前記ローカルネットワーク内のターゲットデバイスの構成情報を前記ホストから取得し、前記デバイスハンドル取得要求に対するデバイスハンドル取得応答を前記イニシエータ装置に返信する第２のデバイスハンドル制御部と、前記イニシエータ装置から受信したコマンドと当該コマンドで指定されたトランザクションを前記ターゲットデバイスに中継する第２のトランザクション中継部と、を備え、前記第２のトランザクション中継部は、前記デバイスハンドル制御部で取得された前記ターゲットデバイスの構成情報に基づいて、前記ホストを介さずに前記トランザクションを中継する。【００７４】
これによれば、通信システムは、それぞれホストを有するイニシエータ装置とターゲット装置のローカルネットワーク間を接続し、それらネットワークを跨るデバイスとの間で透過的なトランザクションを実現することができる。【００７５】
本発明の第１の態様に係る通信方法は、第１のホストと第１のステーションを含む１以上の第１のデバイスとを含む第１のローカルネットワークを有するイニシエータ装置と、第２のホストと第２のステーションを含む１以上の第２のデバイスとを含む第２のローカルネットワークを有するターゲット装置とが、前記第１のステーションと前記第２のステーションとの間のステーション間ネットワークを介して接続された通信システムにおける通信方法であって、前記第１のホストと前記第１のローカルネットワークに接続された前記第１のステーションを含む各第１のデバイスとの間で構成情報を共有する第１の構成情報共有ステップと、前記第２のホストと前記第２のローカルネットワークに接続された前記第２のステーションを含む各第２のデバイスとの間で構成情報を共有する第２の構成情報共有ステップと、前記第１のホストが前記ターゲット装置にデバイスハンドル取得要求を送信し、前記第２のステーションが当該デバイスハンドル取得要求に応じて前記第２のホストから前記第２のローカルネットワークに含まれるターゲットデバイスの構成情報を取得し、前記デバイスハンドル取得要求に対するデバイスハンドル取得応答をイニシエータ装置に返信するデバイスハンドル制御ステップと、前記第１のホストが発行するコマンドと当該コマンドで指定されるトランザクションを、前記ターゲットデバイスに中継するトランザクション中継ステップとを有し、前記トランザクション中継ステップにおいて、前記第２のステーションは、前記デバイスハンドル制御ステップで取得した前記ターゲットデバイスの構成情報に基づいて、前記第２のホストを介さずに前記トランザクションを中継する。【００７６】
これによれば、通信方法は、それぞれホストを有するイニシエータ装置とターゲット装置のローカルネットワーク間を接続し、それらネットワークを跨るデバイスとの間で透過的なトランザクションを実現することができる。
【発明の効果】
【００７７】
本発明は、リモートネットワークとローカルネットワーク内のデバイスとの間のトランザクションの通信速度を向上させることができる。
【図面の簡単な説明】
【００７８】
【図１】本発明の実施の形態に係る通信システムの全体構成を示すブロック図。
【図２】（ａ）は、図１のローカルネットワークの論理トポロジーを例示するブロック図であり、（ｂ）は図１のローカルネットワークの物理トポロジーを例示する一のブロック図であり、（ｃ）は図１のローカルネットワークの物理トポロジーを例示する他のブロック図。
【図３】図１のイニシエータ装置に含まれる第１のステーションの詳細構成を示すブロック図。
【図４】図１のターゲット装置に含まれる第２のステーションの詳細構成を示すブロック図。
【図５】（ａ）図１の通信システムでのデバイスのローカルネットワークにおける構成情報（能力フィールドの一例）を示す図であり、（ｂ）は図１の通信システムでのデバイスのローカルネットワークにおける構成情報（設定フィールドの一例）を示す図。
【図６】図１のローカルネットワークのプロトコルで規定されるパケットフォーマットの基本構成を示す図。
【図７】（ａ）は制御コマンドのパケットフォーマットの一例を示す図であり、（ｂ）はデータコマンドのパケットフォーマットの一例を示す図であり、（ｃ）はレスポンスのパケットフォーマットの一例を示す図であり、（ｄ）はデータのパケットフォーマットの一例を示す図であり、（ｅ）はメッセージのパケットフォーマットの一例を示す図。
【図８】図１のローカルネットワークのプロトコルで規定されるトランザクションの一例を示す動作シーケンスを示す図。
【図９】図１のイニシエータ装置の動作シーケンスを示す図。
【図１０】図１のターゲット装置の動作シーケンスを示す図。
【図１１】図１０の続きの動作シーケンスを示す図。
【図１２】図１のターゲット装置内の第２のステーションの動作フローチャート。
【図１３】図１のターゲット装置内の第２のホストの動作フローチャート。
【図１４】図１の通信システムの構成情報共有ステップからデバイスハンドル取得制御ステップまでの動作シーケンスを示す図。
【図１５】図１の通信システムのトランザクション実行（中継）ステップにおけるデータリードトランザクションの動作シーケンスを示す図。
【図１６】図１の通信システムのトランザクション実行（中継）ステップにおけるデータライトトランザクションの動作シーケンスを示す図。
【図１７】図１の通信システムのデバイスハンドル取得制御ステップにおいて、取得済みのデバイスハンドルに切替える際の動作シーケンスを示す図。
【図１８】図１の通信システムのデバイスハンドル削除制御ステップからステーション間ネットワーク接続解除ステップまでの動作シーケンスを示す図。
【図１９】第１の変形例における通信システムの構成情報共有ステップからステーション間ネットワーク初期化ステップ直後のデバイスハンドル取得制御ステップまでの動作シーケンスを示す図。
【図２０】第１の変形例におけるデバイスリストの一例を示す図。
【図２１】第２の変形例に係る通信システムの構成情報共有ステップからデバイスハンドル取得制御ステップまでの動作シーケンスを示す図。
【図２２】第２の変形例に係る通信システムのデバイスハンドル取得制御ステップにおいて、取得済みのデバイスハンドルに切替える際の動作シーケンスを示す図。
【発明を実施するための形態】
【００７９】
以下、本発明の実施の形態について、図面を用いて説明する。
【００８０】
≪実施の形態≫
１．  構成
１．１  システム構成
図１は、本発明の実施の形態に係る通信システムの全体構成を示す図である。
【００８１】
図１に一例を示す通信システムは、イニシエータ装置１００とターゲット装置１４０とを含む。イニシエータ装置１００は、それぞれがローカルバス１１０に接続された第１のホスト１０１と、複数の第１のデバイス１０２〜１０３を含む第１のローカルネットワーク１００Ａを有する。また、ターゲット装置１４０は、イニシエータ装置１００と同様の構成であり、それぞれがローカルバス１５０に接続された第２のホスト１４１と、複数の第２のデバイス１４２〜１４４とを含む第２のローカルネットワーク１４０Ａを有する。
【００８２】
ここで、各装置１００、１４０におけるホスト１０１、１４１は、典型的にはそれぞれの装置１００、１４０全体を制御するために、システムＬＳＩ（Large Scale Integration）で実現される。そして、それらに内蔵されたホストコントローラ１２０、１６０は、ＣＰＵ（Central Processing Unit）１２１、１６１上で動作する、アプリケーションあるいはデバイスドライバ等のソフトウェアからの制御を受ける。そして、ホストコントローラ１２０、１６０は、ＣＰＵ上で動作するソフトウェアにより、ローカルバス１１０、１５０を介して各デバイス１０２〜１０３、１４２〜１４４を制御する。各デバイス１０２〜１０３、１４２〜１４４は、各ローカルネットワーク１００Ａ、１４０Ａのローカルバス１１０、１５０に接続するためのローカルネットワークインターフェース１２２ａ〜１２２ｂ、１６２ａ〜１６２ｃを備えている。
【００８３】
また、デバイス１０２、１４２は、ステーションと呼ばれる通信デバイスであり、ステーション間ネットワーク１７０を介してイニシエータ装置１００とターゲット装置１４０とを接続する。そして、ステーションと呼ばれる通信デバイスであるデバイス１０２、１４２は、第１のローカルネットワーク１００Ａと第２のローカルネットワーク１４０Ａとの間の通信を中継するために用いられる。ステーション間ネットワーク１７０は、例えば、背景技術に示したような、６０ＧＨｚ帯域のミリ波を利用する無線ＰＡＮであり、各ステーション１０２、１４２のそれぞれが備える。ステーション間ネットワークインターフェース１２３、１６３は、その無線ＰＡＮにおけるＭＡＣ層とＰＨＹ層で機能する。
【００８４】
そして、その他のデバイス１０３、１４３〜１４４については、例えば、第２のデバイス１４３（第２のデバイス＃２）のように、不揮発メモリモジュール１６４を内蔵したメモリデバイスなどである。
【００８５】
１．２  ローカルネットワークのトポロジー
１．２．１  ローカルネットワークの論理トポロジー
図２（ａ）は、本実施の形態のローカルネットワーク（例えば、ローカルネットワーク１００Ａ、１４０Ａ）の論理トポロジーを例示するブロック図である。
【００８６】
ローカルネットワークの論理トポロジーは、図２（ａ）に示すようなホスト（Ｈｏｓｔ）を中心とするスター型であり、常にホスト主導で通信が行われる。例えば、ホスト２００は、ローカルネットワークの初期化時に、各デバイス（Ｄｅｖｉｃｅ）２０１−１〜２０１−Ｎに対してローカルネットワーク内のアドレスであるデバイスＩＤを割り当てる。そして、それ以降、ホスト２００は、通信対象のデバイスのデバイスＩＤを宛先フィールドに埋め込んだコマンドを送信することで、通信対象のデバイスとの通信を開始する。ここで、ローカルネットワークにおいて、コマンドの送信権を有するのは、ホスト２００のみである。このため、ホスト２００は、ポーリングや割込みによって各デバイス２０１−１〜２０１−Ｎからの送信要求を検知し、それに応じてコマンドを送信する。
【００８７】
１．２．２  ローカルネットワークの物理トポロジー
図２（ｂ）、（ｃ）は、本実施の形態のローカルネットワーク（例えば、ローカルネットワーク１００Ａ、１４０Ａ）の物理トポロジーを例示するブロック図である。
【００８８】
ローカルネットワークの物理トポロジーは、例えば、図２（ｂ）に示すようなハブ構成または図２（ｃ）に示すようなリング構成である。図２（ｂ）に示すハブ構成の場合、ホスト（Ｈｏｓｔ）２１０から送信されたコマンドは、ハブ（Ｈｕｂ）２１２によって複数のデバイス（Ｄｅｖｉｃｅ）２１１−１〜２１１−Ｎのうち、宛先フィールドに応じたデバイスに振り分けられる。また、図２（ｃ）に示すリング構成の場合、ホスト（Ｈｏｓｔ）２２０から送信されたコマンドは、各デバイス（Ｄｅｖｉｃｅ）２２１−１〜２２１−Ｎにおいて、宛先フィールドに応じて受信か中継の判断がなされる。
【００８９】
１．３  第１のステーション１０２と第２のステーション１４２の詳細構成
１．３．１  第１のステーション１０２の構成
図３は、図１のイニシエータ装置１００に含まれる第１のステーション１０２の詳細構成を示す図である。
【００９０】
図３に示す第１のステーション３００（１０２）は、イニシエータ装置１００内の第１のローカルネットワーク１００Ａのローカルバス３１０（１１０）に接続するための、ローカルネットワークインターフェース３１１（１２２ａ）を含む。また、第１のステーション３００（１０２）は、ステーション間ネットワーク３２０（１７０）に接続するための、ステーション間ネットワークインターフェース３２１（１２３）を含む。また、第１のステーション３００（１０２）は、それらローカルネットワークインターフェース３１１（１２２ａ）と、ステーション間ネットワークインターフェース３２１（１２３）とを制御するための制御部３３０を含む。
【００９１】
１．３．２  第２のステーション１４２の構成
図４は、図１のターゲット装置１４０に含まれる第２のステーション１４２の詳細構成を示す図である。
【００９２】
図４に示す第２のステーション４００（１４２）は、ターゲット装置１４０内の第２のローカルネットワーク１４０Ａのローカルバス４１０（１５０）に接続するための、ローカルネットワークインターフェース４１１（１６２ａ）を含む。また、第２のステーション４００（１４２）は、ステーション間ネットワーク４２０（１７０）に接続するための、ステーション間ネットワークインターフェース４２１（１６３）を含む。また、第２のステーション４００（１４２）は、それらローカルネットワークインターフェース４１１（１６２ａ）と、ステーション間ネットワークインターフェース４２１（１６３）を制御するための制御部４３０を含む。
【００９３】
１．３．３  第１のステーション３００（１０２）の制御部３３０の構成
制御部３３０は、図３に示すように、構成情報共有部３３１と、ステーション間ネットワーク初期化部３３２と、デバイスハンドル制御部３３３と、トランザクション中継部３３４とを備える。
【００９４】
構成情報共有部３３１は、第１のローカルネットワーク１００Ａとの接続初期化時に、第１のホスト１０１との間で第１のローカルネットワーク１００Ａにおける自デバイスの構成情報を共有する。このため、構成情報共有部３３１は、各第１のデバイス１０２〜１０３において、共通で備えられている。
【００９５】
ここで、構成情報とは、例えば、ＵＳＢにおけるディスクリプタのようなデバイスの属性情報である。また、本実施の形態における構成情報は、図５（ａ）に一例を示すデバイスの能力を示す能力フィールドと、図５（ｂ）に一例を示すデバイスのデバイスＩＤ及び通信パラメータを示す設定フィールドとを含む。なお、図５（ａ）、（ｂ）のＳｉｚｅ（Ｂｙｔｅ）は、デバイス種別コードなどのデータサイズを示す。
【００９６】
ここで、能力フィールドは、無線ＩＯデバイス（ステーション）、汎用ＩＯデバイス、メモリデバイスのようなデバイスの種別を示すデバイス種別コード（ＤｅｖｉｃｅＴｙｐｅ）を含む。また、能力フィールドは、デバイスがサポートするプロトコルを示すデバイスプロトコルコード（ＤｅｖｉｃｅＰｒｏｔｏｃｏｌ）を含む。また、能力フィールドは、デバイスがホストとの間の通信で利用可能なバッファサイズを示す最大バッファサイズ（ＭａｘＢｕｆｆｅｒＳｉｚｅ）を含む。
【００９７】
設定フィールドは、ローカルネットワーク内のデバイスのアドレスを示すデバイスＩＤ（ＤｅｖｉｃｅＩＤ）、ローカルネットワーク内で通信可能な最大パケットサイズ（ＭａｘＰａｃｋｅｔＳｉｚｅ）を含む。また、設定フィールドは、ローカルネットワーク内でバースト転送可能な最大パケット数を示す最大バースト転送数（ＭａｘＢｕｒｓｔＮｕｍ）を含む。ここで、ホストとデバイスとの間での最大バースト転送サイズは、最大パケットサイズと最大バースト転送数の積で規定されることになる。
【００９８】
構成情報共有部３３１は、第１のホスト１０１との間で図５（ａ）、（ｂ）に示すような構成情報を共有する。そして、第１のホスト１０１は、各第１のデバイス１０２〜１０３の構成情報共有部３３１と共有した構成情報をホストコントローラ１２０に保持する。
【００９９】
ステーション間ネットワーク初期化部３３２は、ステーション間ネットワーク３２０（１７０）の初期化を行い、第１のステーション１０２と第２のステーション１４２との間の物理的な接続を確立する。
【０１００】
ここで、ステーション間ネットワーク初期化部３３２は、ステーション間ネットワーク３２０（１７０）を形成する。このため、ステーション間ネットワーク初期化部３３２は、例えば、非特許文献２に示したＩＥＥＥ８０２．１１系規格と同様の手順によって、対向する第２のステーション１４２との間の無線接続（物理的な接続）を確立する。そのため、ステーション間ネットワーク初期化部３３２は、ステーション間ネットワークインターフェース３２１（１２３）を制御し、ビーコンフレームを周期的に送信させる。なお、ビーコンフレームは、無線接続を特定するＳＳＩＤ（Service Set Identifier）を含む。そして、ステーション間ネットワーク初期化部３３２は、対向する第２のステーション１４２からプローブ要求あるいはアソシエーション要求を受信する。そして、ステーション間ネットワーク初期化部３３２は、受信したプローブ要求あるいはアソシエーション要求に対する応答を行って、第１のステーション１０２と第２のステーション１４２との間の無線接続を確立する。
【０１０１】
デバイスハンドル制御部３３３は、第１のホスト１０１から送信されたデバイスハンドル取得要求を、第１のローカルネットワーク１００Ａのローカルバス３１０（１１０）経由で受信する。そして、デバイスハンドル制御部３３３は、受信したデバイスハンドル取得要求を、ステーション間ネットワーク３２０（１７０）経由でターゲット装置１４０に中継する。ここで、デバイスハンドル取得要求とは、第１のホスト１０１と、ターゲット装置１４０内の第２のローカルネットワーク１４０Ａのターゲットデバイスとの間の論理的な接続を、確立するための制御パケットである。デバイスハンドル取得要求は、ターゲット装置１４０に含まれるターゲットデバイスを識別するためのデバイスハンドル番号を含む。そして、デバイスハンドル制御部３３３は、ターゲット装置１４０から送信されたデバイスハンドル取得応答を、ステーション間ネットワーク３２０（１７０）経由で受信する。そして、デバイスハンドル制御部３３３は、受信したデバイスハンドル取得応答を第１のローカルネットワーク１００Ａのローカルバス３１０（１１０）経由で、第１のホスト１０１に通知する。デバイスハンドル取得応答には、第１のホスト１０１とデバイスハンドル取得要求に対応付けられたターゲットデバイスとの間の論理的な接続の成否を、示す結果フラグが含まれるようにする。これにより、第１のホスト１０１は、その結果フラグによってターゲットデバイスとのリモートアクセスの開始を判断する。なお、この結果フラグは、別の言い方をすれば、第２のステーション１４２によるターゲットデバイスの構成情報の取得の成否を示す結果フラグ、あるいは、第２のホストによるターゲットデバイスの探索の成否を示す結果フラグである。
【０１０２】
また、デバイスハンドル制御部３３３は、第１のホスト１０１から送信されたデバイスハンドル削除要求を、第１のローカルネットワーク１００Ａのローカルバス３１０（１１０）経由で受信する。そして、デバイスハンドル制御部３３３は、受信したデバイスハンドル削除要求を、ステーション間ネットワーク３２０（１７０）経由でターゲット装置１４０に中継する。ここで、デバイスハンドル削除要求とは、第１のホスト１０１とデバイスハンドル取得要求に対応付けられ、ターゲットデバイスとの論理的な接続を切断するための制御パケットである。そして、デバイスハンドル制御部３３３は、ターゲット装置１４０から送信されたデバイスハンドル削除応答を、ステーション間ネットワーク３２０（１７０）経由で受信する。そして、デバイスハンドル制御部３３３は、デバイスハンドル取得応答の受信を第１のローカルネットワーク１００Ａのローカルバス３１０（１１０）経由で、第１のホスト１０１に通知する。
【０１０３】
トランザクション中継部３３４は、第１のホスト１０１から送信されたコマンドを、第１のローカルネットワーク１００Ａのローカルバス３１０（１１０）経由で受信する。そして、トランザクション中継部３３４は、受信した第１のホスト１０１から送信されたコマンドを、ステーション間ネットワーク３２０（１７０）経由でターゲット装置１４０に中継する。以降、トランザクション中継部３３４は、そのコマンドで指定されたトランザクションを、第１のローカルネットワーク１００Ａのローカルバス３１０（１１０）経由と、ステーション間ネットワーク３２０（１７０）経由とで、経由する。トランザクション中継部３３４は、ローカルバス３１０（１１０）と、ステーション間ネットワーク３２０（１７０）とで経由されたトランザクションを、第１のホスト１０１とターゲット装置１４０との間で中継する。
【０１０４】
１．３．４  第２のステーション４００（１４２）の制御部４３０の構成
制御部４３０は、図４に示すように、構成情報共有部４３１と、ステーション間ネットワーク初期化部４３２と、構成情報管理テーブル４４０を保持するデバイスハンドル制御部４３３と、トランザクション中継部４３４とを備える。
【０１０５】
構成情報共有部４３１は、第２のローカルネットワーク１４０Ａとの接続初期化時に、第２のホスト１４１との間で第２のローカルネットワーク１４０Ａにおける自デバイスの構成情報を共有する。このため、構成情報共有部４３１は、各第２のデバイス１４２〜１４４において、共通で備えられている。
【０１０６】
構成情報共有部４３１は、第２のホスト１４１との間で図５（ａ）、（ｂ）に示すような構成情報を共有する。そして、第２のホスト１４１は、各第２のデバイス１４２〜１４４の構成情報共有部４３１と共有した構成情報をホストコントローラ１６０に保持する。
【０１０７】
ステーション間ネットワーク初期化部４３２は、ステーション間ネットワーク４２０（１７０）の初期化を行い、第１のステーション１０２と第２のステーション１４２との間の物理的な接続を確立する。
【０１０８】
ここで、ステーション間ネットワーク初期化部４３２は、ステーション間ネットワーク４２０（１７０）を形成する。このため、ステーション間ネットワーク初期化部４３２は、例えば、非特許文献２に示したＩＥＥＥ８０２．１１系規格と同様の手順によって、対向する第１のステーション１０２との間の無線接続（物理的な接続）を確立する。そのため、ステーション間ネットワーク初期化部４３２は、ステーション間ネットワークインターフェース４２１（１６３）を制御し、対向する第１のステーション１０２から送信された無線接続を特定するＳＳＩＤを含むビーコンフレームを受信する。そして、ステーション間ネットワーク初期化部４３２は、第１のステーション１０２に対してプローブ要求あるいはアソシエーション要求を行う。そして、ステーション間ネットワーク初期化部４３２は、これらの要求に対する、第１のステーション１０２からプローブ応答あるいはアソシエーション応答を受信する。そして、ステーション間ネットワーク初期化部４３２は、第１のステーション１０２と第２のステーション１４２との間の無線接続を確立する。
【０１０９】
デバイスハンドル制御部４３３は、ステーション間ネットワーク４２０（１７０）経由でイニシエータ装置１００からデバイスハンドル取得要求を受信する。そして、デバイスハンドル制御部４３３は、デバイスハンドル取得要求の受信を、第２のローカルネットワーク１４０Ａのローカルバス４１０（１５０）経由で第２のホスト１４１に通知する。そして、デバイスハンドル制御部４３３は、それを受けた第２のホスト１４１から、第２のローカルネットワーク１４０Ａのローカルバス４１０（１５０）に接続された、ターゲットデバイスの構成情報を取得する。なお、ターゲットデバイスとは、デバイスハンドル取得要求に含まれるデバイスハンドル番号に対応するデバイスである。そして、デバイスハンドル制御部４３３は、取得したターゲットデバイスの構成情報を、構成情報管理テーブル４４０で保持する。それから、デバイスハンドル制御部４３３は、第２のホスト１４１から第２のローカルネットワーク１４０Ａのローカルバス４１０（１５０）経由で、デバイスハンドル取得応答を受信する。そして、デバイスハンドル制御部４３３は、受信したデバイスハンドル取得応答を、ステーション間ネットワーク４２０（１７０）経由でイニシエータ装置１００に返信する。ここで、デバイスハンドル取得応答には、構成情報管理テーブル４４０において、デバイスハンドル取得要求に対応付けられたターゲットデバイスの構成情報が正しく保持されているかを示す結果フラグを含む。なお、この結果フラグは、別の言い方をすれば、第１のホスト１０１と、デバイスハンドル取得要求に対応付けられたターゲットデバイスとの間で、論理的な接続の成否を示す結果フラグである。
【０１１０】
また、デバイスハンドル制御部４３３は、ステーション間ネットワーク４２０（１７０）経由でイニシエータ装置１００からデバイスハンドル削除要求を受信する。そして、デバイスハンドル制御部４３３は、デバイスハンドル削除要求の受信を、第２のローカルネットワーク１４０Ａのローカルバス４１０（１５０）経由で第２のホスト１４１に通知する。そして、デバイスハンドル制御部４３３は、構成情報管理テーブル４４０において保持したターゲットデバイスの構成情報の無効化を行う。デバイスハンドル制御部４３３は、第２のホスト１４１から第２のローカルネットワーク１４０Ａのローカルバス４１０（１５０）経由で、デバイスハンドル削除応答を受信する。そして、デバイスハンドル制御部４３３は、受信したデバイスハンドル削除応答を、ステーション間ネットワーク４２０（１７０）経由でイニシエータ装置１００に返信する。
【０１１１】
トランザクション中継部４３４は、ステーション間ネットワーク４２０（１７０）経由でイニシエータ装置１００からコマンドを受信する。そして、トランザクション中継部４３４は、受信したコマンドを第２のローカルネットワーク１４０Ａのローカルバス４１０（１５０）経由で、第２のローカルネットワーク１４０Ａ内のターゲットデバイスに中継する。以降、トランザクション中継部４３４は、そのコマンドで指定されたトランザクションを、ステーション間ネットワーク４２０（１７０）経由と、第２のローカルネットワーク１４０Ａのローカルバス４１０（１５０）経由とで、経由する。トランザクション中継部４３４は、ステーション間ネットワーク４２０（１７０）と、ローカルバス４１０（１５０）とで経由されたトランザクションを、イニシエータ装置１００とターゲットデバイスとの間で中継する。
【０１１２】
１．４  ローカルネットワークのプロトコル
ここでは、図１に示したイニシエータ装置１００に含まれる第１のローカルネットワーク１００Ａと、ターゲット装置１４０に含まれる第２のローカルネットワーク１４０Ａのプロトコルについて、図６から図８を参照しながら説明する。ここで、第１のローカルネットワーク１００Ａと第２のローカルネットワーク１４０Ａのプロトコルは、同一である必要が無い。しかし、プロトコルは、ステーション間ネットワーク１７０におけるプロトコル変換の負荷を削減するため、同一のプロトコルであることが望ましい。そこで、本実施の形態における第１のローカルネットワーク１００Ａのプロトコルは、第２のローカルネットワーク１４０Ａのプロトコルと同一であるとして説明する。
【０１１３】
１．４．１  パケットフォーマットの基本構成
図６は、ローカルネットワーク１００Ａ、１４０Ａのプロトコルで規定されるパケットフォーマットの基本構成を示す図である。
【０１１４】
図６に示すパケットフォーマットの基本構成は、ヘッダ（Ｈｅａｄｅｒ）６００と、アーギュメント（Ａｒｇｕｍｅｎｔ）６０１と、ペイロード（Ｐａｙｌｏａｄ）６０２とを含む。そして、ヘッダ６００は、パケットタイプ（ＴＹＰＥ）６１０と、宛先ＩＤ（ＤＩＤ：Ｄｅｓｔｉｎａｔｉｏｎ  ＩＤ）６１１と、送信元ＩＤ（ＳＩＤ：Ｓｏｕｒｃｅ  ＩＤ）６１２と、タグＩＤ（ＴＩＤ：Ｔａｇ  ＩＤ）６１３とを含む。なお、パケットによってはアーギュメントあるいはペイロードが存在しないこともあるので、図６では、［Ａｒｇｕｍｅｎｔ］あるいは［Ｐａｙｌｏａｄ］として表記している。
【０１１５】
パケットタイプ６１０は、パケットの詳細種別を示す。本実施の形態において、パケットの詳細種別は、以下のものが定義されている。パケットの詳細種別は、例えば、レジスタアクセスに用いられる制御コマンド（ＣＣＭＤ：Ｃｏｎｔｒｏｌ  Ｃｏｍｍａｎｄ）、バルクデータ転送に用いられるデータコマンド（ＤＣＭＤ：Ｄａｔａ  Ｃｏｍｍａｎｄ）である。また、パケットの詳細種別は、例えば、制御コマンドやデータコマンドに対する応答であるレスポンス（ＲＥＳ：Ｒｅｓｐｏｎｓｅ）、データコマンドに伴って転送されるデータ（ＤＡＴＡ）である。また、パケットの詳細種別は、例えば、状態通知等に用いられるメッセージ（ＭＳＧ：Ｍｅｓｓａｇｅ）である。
【０１１６】
宛先ＩＤ６１１と送信元ＩＤ６１２は、それぞれパケットの宛先と送信元を示し、ホスト１０１、１４１のデバイスＩＤ、各デバイス１０２〜１０３、１４２〜１４４に割り当てられたデバイスＩＤにより指定する。ここで、ホスト１０１、１４１のデバイスＩＤは、常に“０”である。各デバイス１０２〜１０３、１４２〜１４４には、ローカルネットワーク１００Ａ、１４０Ａそれぞれにおいて、“０”以外のユニークなデバイスＩＤが割り当てられる。そして、タグＩＤ６１３は、ホスト１０１、１４１から各デバイス１０２〜１０３、１４２〜１４４宛に発行されるコマンドと、それに伴って転送されるレスポンスあるいはデータとを対応付けるために用いられる。
【０１１７】
１．４．２  パケットの詳細フォーマット
ここでは、図６のパケットタイプ６１０にて定義される各パケットの詳細フォーマットを図７（ａ）〜（ｅ）を参照しながら説明する。なお、図７（ａ）〜（ｅ）におけるヘッダ（Ｈｅａｄｅｒ）は、図６で説明したヘッダ（Ｈｅａｄｅｒ）６００に相当する。
【０１１８】
１．４．２．１  制御コマンド
図７（ａ）は、制御コマンドのパケットフォーマットの一例を示す図である。
【０１１９】
制御コマンドのアーギュメントは、リードかライトのアクセス種別を示すＲ／Ｗフラグ７００と、制御データのサイズを示すペイロード長（ＰＬＥＮ：Ｐａｙｌｏａｄ  Ｌｅｎｇｔｈ）７０１と、制御データのアドレスを示すＩＯアドレス７０２とを含む。制御コマンドのペイロードは、Ｒ／Ｗフラグ７００がライトに設定された場合にのみ、ペイロード長７０１で指定されたサイズの制御データ７０３が含まれる。なお、Ｒ／Ｗフラグ７００がリードに設定された場合、制御データは、制御コマンドに対するレスポンスに含まれるため、制御コマンドには制御データは含まれない。なお、制御コマンドにペイロードが存在しないこともあるので、図７（ａ）では、［Ｐａｙｌｏａｄ］として表記している。
【０１２０】
各デバイス１０２〜１０３、１４２〜１４４における構成情報は、ＩＯアドレス７０２で指定可能なレジスタとして構成情報共有部３３１、４３１内に保持することで、ホスト１０１、１４１は制御コマンドによってそれらにアクセスできる。例えば、ホスト１０１、１４１は、Ｒ／Ｗフラグ７００をリードに設定した制御コマンドによって、各デバイス１０２〜１０３、１４２〜１４４から能力フィールドの情報を読み出すことができる。また、ホスト１０１、１４１は、Ｒ／Ｗフラグ７００をライトに設定した制御コマンドによって、各デバイス１０２〜１０３、１４２〜１４４の設定フィールドに情報を書き込むことができる。
【０１２１】
１．４．２．２  データコマンド
図７（ｂ）は、データコマンドのパケットフォーマットの一例を示す図である。
【０１２２】
データコマンドのアーギュメントは、リードかライトのアクセス種別を示すＲ／Ｗフラグ７１０を含む。また、データコマンドのアーギュメントは、以降の拡張アーギュメントとして、データ転送の開始アドレスであるメモリアドレス７１１とデータ転送のトータルサイズを示す転送サイズ７１２を含む。
【０１２３】
１．４．２．３  レスポンス
図７（ｃ）は、レスポンスのパケットフォーマットの一例を示す図である。
【０１２４】
レスポンスのアーギュメントは、制御コマンドあるいはデータコマンドが宛先ＩＤ６１１で指定されたデバイスにおいて、正しく受付けられたか否かを示すＮＡＣＫ（Ｎｅｇａｔｉｖｅ  Ａｃｋｎｏｗｌｅｄｇｅ）フラグ７２０を含む。レスポンスのペイロードは、制御コマンドのＲ／Ｗフラグ７００がリードに設定されていた場合にのみ、その制御コマンドで読み出された制御データ７２１を含む。ただし、制御コマンドのＲ／Ｗフラグ７００がライトに設定された場合は、上述したように制御データは制御コマンドに含まれるため、レスポンスには制御データは含まれない。なお、レスポンスにペイロードが存在しないこともあるので、図７（ｃ）では、［Ｐａｙｌｏａｄ］として表記している。
【０１２５】
１．４．２．４  データ
図７（ｄ）は、データのパケットフォーマットの一例を示す図である。
【０１２６】
データパケットには、アーギュメントが存在せず、ペイロードにはデータコマンドでアクセスされるデータを所定のブロックサイズで断片化したデータブロック７３０が含まれる。このデータブロック７３０の最大サイズは、図５（ｂ）に示す構成情報の設定フィールドに含まれる最大パケットサイズ（ＭａｘＰａｃｋｅｔＳｉｚｅ）で規定される。
【０１２７】
１．４．２．５  メッセージ
図７（ｅ）は、メッセージのパケットフォーマットの一例を示す図である。
【０１２８】
メッセージのアーギュメントは、メッセージの分類を示すメッセージカテゴリ（ＣＴＧ）７４０と、メッセージカテゴリ毎の付加情報を示すメッセージコード（ＣＯＤＥ）７４１とを含む。
【０１２９】
メッセージカテゴリ７４０は、例えば、フロー制御要求（ＦＣ＿ＲＥＱ：Ｆｌｏｗ  Ｃｏｎｔｒｏｌ  Ｒｅｑｕｅｓｔ）、フロー制御応答（ＦＣ＿ＡＣＫ：Ｆｌｏｗ  Ｃｏｎｔｒｏｌ  Ａｃｋｎｏｗｌｅｄｇｅ）を含む。また、メッセージカテゴリ７４０は、ステータス（ＳＴＡＴ：Ｓｔａｔｕｓ）、デバイスハンドル取得要求（ＧＥＴ＿ＤＨ＿ＲＥＱ：Ｇｅｔ  Ｄｅｖｉｃｅ  Ｈａｎｄｌｅ  Ｒｅｑｕｅｓｔ）を含む。また、メッセージカテゴリ７４０は、デバイスハンドル取得応答（ＧＥＴ＿ＤＨ＿ＡＣＫ：Ｇｅｔ  Ｄｅｖｉｃｅ  Ｈａｎｄｌｅ  Ａｃｋｎｏｗｌｅｄｇｅ）を含む。また、メッセージカテゴリ７４０は、デバイスハンドル削除要求（ＤＥＬ＿ＤＨ＿ＲＥＱ：Ｄｅｌｅｔｅ  Ｄｅｖｉｃｅ  Ｈａｎｄｌｅ  Ｒｅｑｕｅｓｔ）を含む。また、メッセージカテゴリ７４０は、デバイスハンドル削除応答（ＤＥＬ＿ＤＨ＿ＡＣＫ：Ｄｅｌｅｔｅ  Ｄｅｖｉｃｅ  Ｈａｎｄｌｅ  Ａｃｋｎｏｗｌｅｄｇｅ）、及び割込み（ＩＮＴ：Ｉｎｔｅｒｒｕｐｔ）を含む。
【０１３０】
フロー制御要求とフロー制御応答は、データ転送に先立って送信元と宛先との間で交換されるフロー制御情報である。ステータスは、データ転送後にデータ転送の宛先から送信元に受信エラーを通知するために用いられる。デバイスハンドル取得要求及びデバイスハンドル取得応答、並びに、デバイスハンドル削除要求及びデバイスハンドル削除応答は、デバイスハンドル制御のために用いられる。割込みは、デバイスからホストに非同期の状態通知を行うために用いられる。
【０１３１】
ここで、メッセージカテゴリ７４０がステータスを示す場合、メッセージコード７４１には、受信エラーの有無が含まれる。また、デバイスハンドル取得要求におけるメッセージコード７４１には、ターゲットデバイスを識別するためのデバイスハンドル番号が含まれる。また、デバイスハンドル取得応答とデバイスハンドル削除応答におけるメッセージコード７４１には、それぞれデバイスハンドル取得要求とデバイスハンドル削除要求の成否を示す結果フラグが含まれる。
【０１３２】
１．４．３  トランザクション
図８は、ローカルネットワーク１００Ａ、１４０Ａのプロトコルで規定されるトランザクションの一例を示す動作シーケンスを示す図である。
【０１３３】
１．４．３．１  制御トランザクション
制御トランザクションでは、ホスト（Ｈｏｓｔ）８００がデバイス（Ｄｅｖｉｃｅ）８０１宛に制御コマンド（ＣＣＭＤ）を発行し、デバイス８０１がこの制御コマンドに対するレスポンス（ＲＥＳ）をホスト８００宛に返信する。これにより、制御トランザクションが完了する。ここで、ホスト８００がデバイス８０１にライトする制御データは、制御コマンド内に含まれる。一方、ホスト８００がデバイス８０１からリードする制御データは、レスポンス内に含まれる。
【０１３４】
１．４．３．２  データリードトランザクション
データリードトランザクションにおいて、ホスト８００は、デバイス８０１宛にＲ／Ｗフラグ７１０がリードに設定されたデータコマンド（ＤＣＭＤ）を発行する。そして、デバイス８０１は、このデータコマンドに対するレスポンス（ＲＥＳ）を、ホスト８００宛に返信する。これにより、データコマンドによって指定されたデータ転送が、開始される。
【０１３５】
本実施の形態におけるリードに係るデータ転送及びライトに係るデータ転送は、それぞれ、図７（ｂ）に示したデータコマンドの転送サイズ７１２で、指定されたサイズのデータを転送する。本実施の形態におけるデータ転送は、指定されたサイズのデータを、デバイス８０１の図５（ｂ）に示した構成情報である最大パケットサイズ（ＭａｘＰａｃｋｅｔＳｉｚｅ）毎に分割して、データパケットを生成する。そして、本実施の形態におけるデータ転送は、生成されたそれらデータパケットを、所定数束ねたバースト転送単位で転送する。ここで、バースト転送に含めることができる最大パケット数は、図５（ｂ）に示す構成情報である最大バースト転送数（ＭａｘＢｕｒｓｔＮｕｍ）によって規定される。
【０１３６】
バースト転送において、データの送信元となるデバイス８０１は、データの宛先となるホスト８００宛にフロー制御要求（ＦＣ＿ＲＥＱ）を発行する。そして、バースト転送において、ホスト８００は、このフロー制御要求に対するフロー制御応答（ＦＣ＿ＡＣＫ）をデバイス８０１宛に返信する。これによって、ホスト８００とデバイス８０１は互いのバッファ状態を通知し合ってから、デバイス８０１は、ホスト８００に対してデータ（ＤＡＴＡ）の転送を開始する。そして、データの転送完了後、データの宛先であったホスト８００は、データ転送の受信結果をメッセージコード７４１に含めたステータス（ＳＴＡＴ）を、デバイス８０１宛に発行する。デバイス８０１は、ステータスを受信し、そのメッセージコード７４１の内容から受信結果を知る。データリードトランザクションは、フロー制御要求からステータスまでの一連のバースト転送を、転送サイズ７１２で指定したサイズ分繰り返すことで完了する。
【０１３７】
１．４．３．３  データライトトランザクション
データライトトランザクションにおいて、ホスト８００は、デバイス８０１宛にＲ／Ｗフラグ７１０がライトに設定されたデータコマンド（ＤＣＭＤ）を発行する。そして、デバイス８０１は、このデータコマンドに対するレスポンス（ＲＥＳ）を、ホスト８００宛に返信する。これにより、データコマンドによって指定されたデータ転送が、開始される。
【０１３８】
バースト転送において、データの送信元となるホスト８００は、データの宛先となるデバイス８０１宛にフロー制御要求（ＦＣ＿ＲＥＱ）を発行する。そして、バースト転送において、デバイス８０１は、このフロー制御要求に対するフロー制御応答（ＦＣ＿ＲＥＱ）をホスト８００宛に返信する。これによって、ホスト８００とデバイス８０１は互いのバッファ状態を通知し合ってから、ホスト８００は、デバイス８０１に対してデータ（ＤＡＴＡ）の転送を開始する。そして、データの転送完了後、データの宛先であったデバイス８０１は、データ転送の受信結果をメッセージコード７４１に含めたステータス（ＳＴＡＴ）を、ホスト８００宛に発行する。ホスト８００は、ステータスを受信し、そのメッセージコード７４１の内容から受信結果を知る。データライトトランザクションは、フロー制御要求からステータスまでの一連のバースト転送を、転送サイズ７１２で指定したサイズ分繰り返すことで完了する。
【０１３９】
なお、本実施の形態あるいは後述する変形例などは、上記のパケットフォーマットとトランザクションで説明したプロトコルに限定されず、異なる構成が考えられる。例えば、ローカルネットワークがＵＳＢであった場合、制御コマンドあるいはデータコマンドは、ＵＳＢにおけるトークンパケットに対応し、レスポンスあるいはステータスは、ＵＳＢにおけるハンドシェークパケットに対応する。また、制御トランザクションは、ＵＳＢにおけるコントロール転送に対応し、データトランザクションは、ＵＳＢにおけるバルク転送に対応する。
【０１４０】
２．  動作
以下、本実施の形態に係る通信システムの動作について、図１から図５に示した構成、及び図６から図８に示したローカルネットワークのプロトコルを参照しながら説明する。
【０１４１】
２．１  イニシエータ装置１００の動作シーケンス
図９は、図１のイニシエータ装置１００の動作シーケンスを示す図である。
【０１４２】
２．１．１  構成情報共有ステップＳ１０１
第１のホスト１０１は、第１のローカルネットワーク１００Ａのローカルバス１１０に接続された第１のステーション１０２を含む、各第１のデバイス１０２〜１０３との間で構成情報の共有を行う。そして、第１のホスト１０１は、各第１のデバイス１０２〜１０３の構成情報をホストコントローラ１２０に保持する。一方、各第１のデバイス１０２〜１０３は、自デバイスの構成情報を構成情報共有部３３１に保持する。なお、図９では、第１のホスト１０１と第１のデバイス１０３との間での構成情報の共有の図示を省略している。
【０１４３】
以下に、第１のホスト１０１と構成情報共有部３３１との間で行われる図５（ａ）、（ｂ）に示すような構成情報の共有の手順の一例を記載する。
【０１４４】
構成情報共有部３３１は、第１のホスト１０１との間で図５（ａ）、（ｂ）に示す構成情報を共有するため、自デバイスの構成情報のうち能力フィールの情報を前もって（例えば、デバイス出荷時に）保持しておく。
【０１４５】
第１のホスト１０１は、第１のローカルネットワーク１００Ａの初期化時に、ローカルバス１１０に接続された各第１のデバイス１０２〜１０３に、第１のローカルネットワーク１００Ａ内でユニークなデバイスＩＤを割り当る。そして、第１のホスト１０１は、各第１のデバイス１０２〜１０３のデバイスＩＤをホストコントローラ１２０に保持する。そして、第１のホスト１０１は、各デバイス１０２〜１０３の構成情報共有部３３１の設定フィールドの該当箇所に、構成情報共有部３３１を有するデバイスに割り当てたデバイスＩＤを設定する。
【０１４６】
構成情報共有部３３１は自身が保持している能力フィールドの情報を第１のホスト１０１に開示する。そして、構成情報共有部３３１は、それに応じて第１のホスト１０１から取得した通信パラメータ（最大パケットサイズと最大バースト転送数）を、設定フィールドの該当箇所に保持する。ここで、第１のホスト１０１は、各第１のデバイス１０２〜１０３について、デバイスの構成情報共有部３３１から能力フィールドの情報（デバイス種別コード、デバイスプロトコル、最大バッファサイズ）を取得する。そして、第１のホスト１０１は、取得した最大バッファサイズに収まる範囲内で、最大パケットサイズと最大バースト転送数を決定し、決定した最大パケットサイズと最大バースト転送数を構成情報共有部３３１の該当箇所に設定する。
【０１４７】
第１のホスト１０１は、各第１のデバイス１０２〜１０３の構成情報（各デバイス１０２〜１０３から取得した能力フィールドの情報と、各デバイス１０２〜１０３の設定フィールドに設定した情報）をホストコントローラ１２０に保持する。
【０１４８】
これにより、第１のホスト１０１は、第１のホスト１０１と各デバイス１０２〜１０３との間のバースト転送によるバッファオーバーフローを、避けることができる。
【０１４９】
２．１．２  ステーション間ネットワーク初期化ステップＳ１０２
第１のホスト１０１は、第１のステーション１０２を制御し、第１のステーション１０２はステーション間ネットワーク初期化部３３２によりステーション間ネットワーク１７０の初期化を行う。そして、第１のホスト１０１は、イニシエータ装置１００とターゲット装置１４０との間の物理的な接続を確立する。
【０１５０】
２．１．３  デバイスハンドル取得制御ステップＳ１０３
第１のホスト１０１は、第１のステーション１０２宛に、デバイスハンドル番号を含むデバイスハンドル取得要求（ＧＥＴ＿ＤＨ＿ＲＥＱ）＃１を送信する。ここで、デバイスハンドル取得要求＃１の宛先ＩＤ６１１と送信元ＩＤ６１２は、それぞれ第１のステーション１０２と第１のホスト１０１のデバイスＩＤである。第１のステーション１０２は、第１のローカルネットワーク１００Ａのローカルバス１１０経由でデバイスハンドル取得要求＃１を受信する。そして、第１のステーション１０２は、受信したデバイスハンドル取得要求＃１をデバイスハンドル制御部３３３によりステーション間ネットワーク１７０経由で、ターゲット装置１４０に中継する。
【０１５１】
なお、第１のホスト１０１がデバイスハンドル取得要求を発行し、第１のステーション１０２は、デバイスハンドル取得要求をターゲット装置１４０に中継する代わりに、例えば、次のようにしてもよい。第１のホスト１０１は、第１のステーション１０２に対して、例えば、制御コマンド（ＣＣＭＤ）を利用してデバイスハンドル取得要求の発行を指示する。そして、第２のステーション１０２は、この指示を受けて、デバイスハンドル制御部３３３によりデバイスハンドル取得要求を発行する。そして、第２のステーション１０２は、発行したデバイスハンドル取得要求をステーション間ネットワーク１７０経由で、ターゲット装置１４０に送信するようにしてもよい。
【０１５２】
そして、第１のステーション１０２は、ターゲット装置１４０から送信された上述した結果フラグを含むデバイスハンドル取得応答（ＧＥＴ＿ＤＨ＿ＡＣＫ）＃２を、ステーション間ネットワーク１７０経由で受信する。そして、第１のステーション１０２は、デバイスハンドル制御部３３３により、デバイスハンドル取得応答＃２の宛先ＩＤ６１１と送信元ＩＤ６１２を、それぞれ第１のホスト１０１と第１のステーション１０２のデバイスＩＤに書き換える。そして、第１のステーション１０２は、デバイスハンドル制御部３３３により、デバイスハンドル取得要求＃１の応答を、第１のローカルネットワーク１００Ａのローカルバス１１０経由で第１のホスト１０１へ返信する。具体的には、デバイスハンドル取得要求＃１の応答は、宛先ＩＤ６１１と送信元ＩＤ６１２の書き換えにより得られた、デバイスハンドル取得応答（ＧＥＴ＿ＤＨ＿ＡＣＫ）＃１である。なお、デバイスハンドル取得応答＃１は、デバイスハンドル取得応答の受信を示すデバイスハンドル取得応答通知に相当する。
【０１５３】
第１のホスト１０１は、デバイスハンドル取得応答＃１を受信し、受信したデバイスハンドル取得応答＃１に含まれる結果フラグによって、ターゲット装置１４０に含まれるターゲットデバイスとの間の論理的な接続の成否を確認する。そして、第１のホスト１０１は、結果フラグが成功を示す場合のみ、次のトランザクション実行ステップＳ１０４を実行する。なお、結果フラグが失敗を示す場合には、デバイスハンドル取得要求に含めるデバイスハンドル番号を変更して、再度デバイスハンドル取得制御ステップＳ１０３を実行するようにしてもよい。また、結果フラグが失敗を示す場合には、後述のステーション間ネットワーク接続解除ステップＳ１０６を実行するようにしてもよい。
【０１５４】
ここで、デバイスハンドル取得要求とデバイスハンドル取得応答は、例えば、図７（ｅ）に示すメッセージパケットを用いることができる。この場合、メッセージパケットのメッセージコード（ＣＯＤＥ）７４２には、イニシエータ装置１００がターゲット装置１４０に含まれるターゲットデバイスを識別するためのデバイスハンドル番号を含める。デバイスハンドル番号は、例えば、ターゲット装置１４０に含まれる第２のローカルネットワーク１４０Ａの構成情報として、第２のデバイス１４２〜１４４それぞれに割り当てられたデバイスＩＤを指定する。そして、第１のホスト１０１は、メッセージコード（ＣＯＤＥ）７４２に含まれる結果フラグによって、デバイスハンドル取得要求で指定したデバイスハンドル番号に該当するターゲットデバイスの有無を確認することができる。なお、デバイスハンドル番号は、ここではデバイスＩＤである。また、デバイスハンドル番号は、上記のように第２のデバイス１４２〜１４４のデバイスＩＤを直接用いる必要はない。つまり、デバイスハンドル番号は、ターゲット装置１４０において、デバイスハンドル取得要求に含まれるデバイスハンドル番号と、ターゲットデバイスのデバイスＩＤとの間が対応付けて管理されていれば良い。
【０１５５】
２．１．４  トランザクション実行ステップＳ１０４
第１のホスト１０１は、デバイスハンドル取得制御ステップＳ１０３において、ターゲット装置１４０に含まれるターゲットデバイスとの間の論理的な接続を確認する。そして、第１のホスト１０１は、論理的な接続を確認すると、第１のステーション１０２との間で図８に示したようなトランザクションの実行を開始する。そして、第１のステーション１０２は、トランザクション中継部３３４により、そのトランザクションをステーション間ネットワーク１７０経由でターゲット装置１４０に中継する。そして、第１のホスト１０１は、接続先のターゲットデバイスを切替えて通信を継続する場合、再びデバイスハンドル取得要求ステップＳ１０３に戻る。一方、通信を完了する場合、第１のホスト１０１は、次のデバイスハンドル削除制御ステップＳ１０５に移行する。
【０１５６】
２．１．５  デバイスハンドル削除制御ステップＳ１０５
第１のホスト１０１は、第１のステーション１０２宛に、デバイスハンドル削除要求（ＤＥＬ＿ＤＨ＿ＲＥＱ）＃１を送信する。ここで、デバイスハンドル削除要求＃１の宛先ＩＤ６１１と送信元ＩＤ６１２は、それぞれ第１のステーション１０２と第１のホスト１０１のデバイスＩＤである。第１のステーション１０２は、第１のローカルネットワーク１００Ａのローカルバス１１０経由でデバイスハンドル削除要求＃１を受信する。そして、第１のステーション１０２は、受信したデバイスハンドル削除要求＃１を、デバイスハンドル制御部３３３によりステーション間ネットワーク１７０経由でターゲット装置１４０に中継する。
【０１５７】
なお、第１のホスト１０１がデバイスハンドル削除要求を発行し、第１のステーション１０２は、デバイスハンドル削除要求をターゲット装置１４０に中継する代わりに、例えば、次のようにしてもよい。第１のホスト１０１は、第１のステーション１０２に対して、例えば制御コマンド（ＣＣＭＤ）を利用してデバイスハンドル削除要求の発行を指示する。そして、第２のステーション１０２は、この指示を受けてデバイスハンドル制御部３３３によりデバイスハンドル削除要求を発行する。そして、第２のステーション１０２は、発行したデバイスハンドル削除要求を、ステーション間ネットワーク１７０経由でターゲット装置１４０に送信するようにしてもよい。
【０１５８】
そして、第１のステーション１０２は、ターゲット装置１４０から送信された上述した結果フラグを含むデバイスハンドル削除応答（ＤＥＬ＿ＤＨ＿ＡＣＫ）＃２を、ステーション間ネットワーク１７０経由で受信する。そして、第１のステーション１０２は、デバイスハンドル制御部３３３により、デバイスハンドル削除応答＃２の宛先ＩＤ６１１と送信元ＩＤ６１２を、それぞれ第１のホスト１０１と第１のステーション１０２のデバイスＩＤに書き換える。そして、第１のステーション１０２は、デバイスハンドル制御部３３３により、デバイスハンドル削除要求＃１の応答を、第１のローカルネットワーク１００Ａのローカルバス１１０経由で第１のホスト１０１へ返信する。具体的には、デバイスハンドル削除要求＃１の応答は、宛先ＩＤ６１１と送信元ＩＤ６１２の書き換えにより得られたデバイスハンドル削除応答（ＤＥＬ＿ＤＨ＿ＡＣＫ）＃１である。なお、デバイスハンドル削除応答＃１は、デバイスハンドル削除応答の受信を示すデバイスハンドル取得応答通知に相当する。
【０１５９】
第１のホスト１０１は、デバイスハンドル削除応答＃１を受信し、受信したデバイスハンドル削除応答＃１に含まれる結果フラグによって、ターゲット装置１４０に含まれるターゲットデバイスとの間の論理的な接続の解除の成否を確認する。そして、第１のホスト１０１は、結果フラグが成功を示す場合のみ、次のステーション間ネットワーク接続解除ステップＳ１０６を実行する。
【０１６０】
なお、上記のデバイスハンドル削除要求とデバイスハンドル削除応答には、デバイスハンドル番号を含める必要が無く、それらによって第１のホスト１０１と全てのターゲットデバイスとの間の論理的な接続が解除されれば良い。
【０１６１】
２．１．６  ステーション間ネットワーク接続解除ステップＳ１０６
第１のホスト１０１は第１のステーション１０２を制御し、第１のステーション１０２はイニシエータ装置１００と、ターゲット装置１４０との間のステーション間ネットワーク１７０による物理的な接続を解除する。
【０１６２】
２．２  ターゲット装置１４０の動作シーケンス
図１０〜図１１は図１のターゲット装置１４０の動作シーケンスを示す図である。なお、図１０〜１１の動作シーケンスでは、第２のデバイス１４３（第２のデバイス＃２）が、デバイスハンドル取得要求に含まれるデバイスハンドル番号に対応するデバイスであるとして記載する。
【０１６３】
２．２．１  構成情報共有ステップＳ３０１
第２のホスト１４１は、第２のローカルネットワーク１４０Ａのローカルバス１５０に接続された第２のステーション１４２を含む、各第２のデバイス１４２〜１４４との間で構成情報の共有を行う。そして、第２のホスト１４１は、各第２のデバイス１４２〜１４４の構成情報をホストコントローラ１６０に保持する。一方、各第２のデバイス１４２〜１４４は、自デバイスの構成情報を構成情報共有部４３１に保持する。なお、図１０では、第２のホスト１４１と第２のデバイス１４４との間での構成情報の共有の図示を省略している。
【０１６４】
以下に、第２のホスト１４１と構成情報共有部４３１との間で行われる図５（ａ）、（ｂ）に示すような構成情報の共有の手順の一例を記載する。
【０１６５】
構成情報共有部４３１は、第２のホスト１４１との間で図５（ａ）、（ｂ）に示す構成情報を共有するため、自デバイスの構成情報のうち能力フィールドの情報を前もって（例えば、デバイス出荷時に）保持しておく。
【０１６６】
第２のホスト１４１は、第２のローカルネットワーク１４０Ａの初期化時に、ローカルバス１５０に接続された各第２のデバイス１４２〜１４４に、第２のローカルネットワーク１４０Ａ内でユニークなデバイスＩＤを割り当る。そして、第２のホスト１４１は、各第２のデバイス１４２〜１４４のデバイスＩＤをホストコントローラ１６０に保持する。そして、第２のホスト１４１は、各第２のデバイス１４２〜１４４の構成情報共有部４３１の設定フィールドの該当箇所に、構成情報共有部４３１を有するデバイスに割り当てたデバイスＩＤを設定する。
【０１６７】
構成情報共有部４３１は、自身が保持している能力フィールドの情報を第２のホスト１４１に開示する。そして、構成情報共有部４３１は、それに応じて第２のホスト１４１から取得した通信パラメータ（最大パケットサイズと最大バースト転送サイズ）を、設定フィールドの該当箇所に保持する。ここで、第２のステーション１４２は、後述するトランザクション中継ステップＳ３０４において、第２のホスト１４１を代替する。そして、第２のステーション１４２は、ターゲットデバイスへのトランザクションを中継するため、第２のホスト１４１と同等以上のバッファを有する必要がある。そこで、第２のホスト１４１は、各第２のデバイス１４２〜１４４の構成情報共有部４３１から能力フィールドの情報（デバイス種別コード、デバイスプロトコル、最大バッファサイズ）を取得する。そして、第２のホスト１４１は、第２のステーション１４２を含む各第２のデバイス１４２〜１４４に対して、第２のステーション１４２から取得した最大バッファサイズに収まる範囲内で最大パケットサイズと最大バースト転送数を決定する。そして、第２のホスト１４１は、決定した最大パケットサイズと最大バースト転送数を、構成情報共有部４３１の該当箇所に設定する。
【０１６８】
第２のホスト１４１は、各第２のデバイス１４２〜１４４の構成情報を、ホストコントローラ１６０に保持する。各第２のデバイス１４２〜１４４の構成情報とは、各第２のデバイス１４２〜１４４から取得した能力フィールドの情報と、各第２のデバイス１４２〜１４４の設定フィールドに設定した情報である。
【０１６９】
これにより、第２のステーション１４２は、いずれのターゲットデバイスに対しても、最大パケットサイズと最大バースト転送数の積で規定されるバースト転送サイズ以上のバッファを有することになり、第２のホスト１４１の代替ができる。
【０１７０】
なお、第２のステーション１４２以外の第２のデバイス（第２のデバイス１４３〜１４４）に対して、第２のホスト１４１は、最大パケットサイズと最大バースト転送数を決定する。具体的には、第２のホスト１４１は、第２のステーション１４２から取得した最大バッファサイズと、このデバイスから取得した最大バッファサイズとの双方に収まる範囲内で最大パケットサイズと最大バースト転送数を決定する。そして、第２のホスト１４１は、決定した最大パケットサイズと最大バースト転送数を構成情報共有部４３１の設定フィールドの該当箇所に設定するとともに、ホストコントローラ１６０に保持するようにしてもよい。また、第２のステーション１４２以外の第２のデバイス（第２のデバイス１４３〜１４４）に対して、第２のホスト１４１は、このデバイスから取得した最大バッファサイズの範囲内で、最大パケットサイズと最大バースト転送数を決定する。そして、第２のホスト１４１は、決定した最大パケットサイズと最大バースト転送数を構成情報共有部４３１の設定フィールドの該当箇所に設定するとともに、ホストコントローラ１６０に保持するようにしてもよい。
【０１７１】
２．２．２  ステーション間ネットワーク初期化ステップＳ３０２
第２のホスト１４１は、第２のステーション１４２を制御し、第２のステーション１４２はステーション間ネットワーク初期化部４３２によりステーション間ネットワーク１７０の初期化を行う。そして、第２のホスト１４１は、ターゲット装置１４０とイニシエータ装置１００との間の物理的な接続を確立する。
【０１７２】
２．２．３  デバイスハンドル取得制御ステップＳ３０３
第２のステーション１４２は、ステーション間ネットワーク１７０経由で、イニシエータ装置１００からデバイスハンドル番号を含むデバイスハンドル取得要求（ＧＥＴ＿ＤＨ＿ＲＥＱ）＃１を受信する。そして、第２のステーション１４２は、デバイスハンドル制御部４３３により、構成情報管理テーブル４４０を参照し、そのデバイスハンドル取得要求のデバイスハンドル番号に、対応するターゲットデバイスの構成情報が取得済みか判定する。この動作シーケンスでは、デバイスハンドル番号に対応するターゲットデバイスの構成情報が取得済みでないと判定されたものとする。そして、第２のステーション１４２は、デバイスハンドル制御部４３３により、デバイスハンドル取得要求＃１の宛先ＩＤ６１１と送信元ＩＤ６１２を、それぞれ第２のホスト１４１と第２のステーション１４２のデバイスＩＤに書き換える。そして、第２のステーション１４２は、宛先ＩＤ６１１と送信元ＩＤ６１２の書き換えにより得られたデバイスハンドル取得要求（ＧＥＴ＿ＤＨ＿ＲＥＱ）＃２を、第２のローカルネットワーク１４０Ａのローカルバス１５０経由で第２のホスト１４１へ送信する。なお、デバイスハンドル取得要求＃２は、デバイスハンドル取得要求の受信を示すデバイスハンドル取得要求通知に相当する。
【０１７３】
第２のホスト１４１は、第２のステーション１４２からデバイスハンドル取得要求＃２を受信し、それに含まれるデバイスハンドル番号に対応するターゲットデバイスを、第２のデバイス１４２〜１４４の中から探索する。
【０１７４】
ここで、デバイスハンドル番号が第２のデバイス１４２〜１４４のデバイスＩＤを直接指定している場合、第２のホスト１４１は、そのデバイスＩＤに該当するデバイスをターゲットデバイスとして選択する。また、デバイスハンドル番号が第２のデバイス１４２〜１４４のデバイスＩＤを直接指定していない場合、第２のホスト１４１は、次の処理を実施する。第２のホスト１４１は、ホストコントローラ１６０において保持している第２のデバイス１４２〜１４４の構成情報に応じて、いずれかのデバイスをターゲットデバイスとして選択し、そのデバイスＩＤとデバイスハンドル番号を対応付ける。
【０１７５】
この動作シーケンスでは、第２のホスト１４１は、第２のデバイス１４３（第２のデバイス＃２）をターゲットデバイスとして選択する。そして、第２のホスト１４１は、ホストコントローラ１６０で保持しているターゲットデバイス（第２のデバイス１４３）の構成情報を、第２のローカルネットワーク１４０Ａのローカルバス１５０経由で第２のステーション１４２へ送信する。第２のステーション１４２は、そのターゲットデバイス１４３のデバイスＩＤを含む構成情報を受信する。そして、第２のステーション１４２は、デバイスハンドル制御部４３３により、受信したデバイスＩＤを含む構成情報を、デバイスハンドル取得要求のデバイスハンドル番号と対応付けて、構成情報管理テーブル４４０に保持する。
【０１７６】
第２のホスト１４１は、第２のステーション１４２宛に、デバイスハンドル取得要求＃２の応答を、送信する。具体的には、デバイスハンドル取得要求＃２の応答は、ターゲットデバイスの探索の成否を示す結果フラグ（ここでの結果フラグは成功を示す）を含む、デバイスハンドル取得応答（ＧＥＴ＿ＤＨ＿ＡＣＫ）＃２である。そして、第２のホスト１４１は、ターゲットデバイス宛のコマンド送信権を第２のステーション１４２に委譲し、以降は第２のローカルネットワーク１４０Ａのローカルバス１５０経由でのターゲットデバイスへのコマンド送信を停止する。ここで、デバイスハンドル取得要求＃２の宛先ＩＤ６１１と送信元ＩＤ６１２は、それぞれ第２のステーション１４２と第２のホスト１４１のデバイスＩＤである。第２のステーション１４２は、第２のローカルネットワーク１４０Ａのローカルバス１５０経由でデバイスハンドル取得応答＃２を受信するとともに、ターゲットデバイス宛のコマンド送信権を第２のホスト１４１から委譲される。そして、第２のステーション１４２は、デバイスハンドル制御部４３３により、第２のホスト１４１から受信したデバイスハンドル取得応答＃２をステーション間ネットワーク１７０経由で、イニシエータ装置１００に送信する。
【０１７７】
なお、第２のホスト１４１は、ターゲットデバイスの探索の成否を示す結果フラグを示すデバイスハンドル取得応答を発行する。そして、第２のステーション１４２は、デバイスハンドル取得応答をイニシエータ装置１００に中継する。このようにする代わりに、例えば、次のようにしてもよい。第２のホスト１４１は、第２のステーション１４２に対して、例えば、制御コマンド（ＣＣＭＤ）を利用して、ターゲットデバイス探索の成否を示す結果フラグを含むデバイスハンドル取得応答の発行を指示する。そして、第２のステーション１４２は、この指示を受けて、デバイスハンドル制御部３３３により結果フラグを含むデバイスハンドル取得応答を発行する。そして、第２のステーション１４２は、発行したデバイスハンドル取得応答をステーション間ネットワーク１７０経由で、イニシエータ装置１００に送信するようにしてもよい。
【０１７８】
なお、第２のステーション１４２は、デバイスハンドル取得済みかの判定において、デバイスハンドル取得要求に含まれるデバイスハンドル番号に対応するターゲットデバイスの構成情報を取得済みと判定したとする。この場合、第２のステーション１４２は、第２のホスト１４１に対するデバイスハンドル取得要求通知から、第２のホスト１４１からのデバイスハンドル取得応答のステーション間ネットワーク１７０への送信までの処理を代わりにする。つまり、第２のステーション１４２は、自ら、成功を示す結果フラグを含むデバイスハンドル取得応答を、ステーション間ネットワーク１７０経由でイニシエータ装置１００に送信することになる。
【０１７９】
２．２．４  トランザクション中継ステップＳ３０４
第２のステーション１４２は、ステーション間ネットワーク１７０経由で、イニシエータ装置１００から受信したコマンドとそのコマンドで指定されたトランザクションを、トランザクション中継部４３４によりターゲットデバイスに中継する。このとき、第２のステーション１４２は、第２のホスト１４１を介さずにターゲットデバイスに中継する。ここで、第２のステーション１４２は、デバイスハンドル取得制御ステップＳ３０３において、ターゲットデバイスの構成情報（デバイスＩＤを含む）を取得しているものとする。第２のステーション１４２は、取得したターゲットデバイスの構成情報に応じて、イニシエータ装置１００から受信したパケットの宛先ＩＤ６１１をターゲットデバイスのデバイスＩＤに書き換える。さらに、第２のステーション１０２は、その送信元ＩＤ６１２についても、第２のステーション１４２自身のデバイスＩＤに書き換える。
【０１８０】
以降、第２のステーション１４２は、イニシエータ装置１００からの要求に応じて、トランザクションの中継を行う。そして、第２のステーション１４２は、再びイニシエータ装置１００からのデバイスハンドル取得要求を受信すると、デバイスハンドル取得制御ステップＳ３０３に戻り、ターゲットデバイスを切替えながら通信を継続することになる。一方、ターゲット装置１４０は、イニシエータ装置１００からデバイスハンドル削除要求（ＤＥＬ＿ＤＨ＿ＲＥＱ）を受信すると、デバイスハンドル削除制御ステップＳ３０５に移行する。つまり、ターゲット装置１４０は、イニシエータ装置１００とターゲットデバイスとの間の論理的な接続を解除するため、デバイスハンドル削除制御ステップＳ３０５に移行する。
【０１８１】
２．２．５  デバイスハンドル削除制御ステップＳ３０５
第２のステーション１４２は、ステーション間ネットワーク１７０経由で、イニシエータ装置１００からデバイスハンドル削除要求（ＤＥＬ＿ＤＨ＿ＲＥＱ）＃１を受信する。第２のステーション１４２は、デバイスハンドル制御部４３３により、構成情報管理テーブル４４０を参照し、構成情報管理テーブル４４０にターゲットデバイスの構成情報が保持されているか判定する。この動作シーケンスでは、構成情報管理テーブル４４０にターゲットデバイスの構成情報が保持されていると判定される。そして、第２のステーション１４２は、デバイスハンドル制御部４３３により、デバイスハンドル削除要求＃１の宛先ＩＤ６１１と送信元ＩＤ６１２を、それぞれ第２のホスト１４１と第２のステーション１４２のデバイスＩＤに書き換える。そして、第２のステーション１４２は、宛先ＩＤ６１１と送信元ＩＤ６１２の書き換えにより得られたデバイスハンドル削除要求（ＤＥＬ＿ＤＨ＿ＲＥＱ）＃２を、第２のローカルネットワーク１４０Ａのローカルバス１５０経由で第２のホスト１４１へ送信する。なお、デバイスハンドル削除応答＃２は、デバイスハンドル削除要求の受信を示すデバイスハンドル削除要求通知に相当する。
【０１８２】
第２のホスト１４１は、第２のステーション１４２からデバイスハンドル削除要求＃２を受信し、デバイスハンドル削除要求に応じて第２のステーション１４２のデバイスハンドル制御部４３３を制御する。そして、第２のステーション１４２は、デバイスハンドル制御部４３３により構成情報管理テーブル４４０において保持しているターゲットデバイスの構成情報を無効化する。
【０１８３】
第２のホスト１４１は、第２のステーション１４２宛に、デバイスハンドル削除要求＃２に対する応答を送信する。なお、デバイスハンドル削除要求＃２に対する応答は、ターゲットデバイスの構成情報の無効化の成否を示す結果フラグ（ここでの結果フラグは成功を示す）を含む、デバイスハンドル削除応答（ＤＥＬ＿ＤＨ＿ＡＣＫ）＃２である。ここで、デバイスハンドル削除要求＃２の宛先ＩＤ６１１と送信元ＩＤ６１２は、それぞれ第２のステーション１４２と第２のホスト１４１のデバイスＩＤである。第２のステーション１４２は、第２のローカルネットワーク１４０Ａのローカルバス１５０経由でデバイスハンドル削除応答＃２を受信する。そして、第２のステーション１４２は、受信したデバイスハンドル削除応答＃２を、デバイスハンドル制御部４３３により、ステーション間ネットワーク１７０経由でイニシエータ装置１００に送信する。そして、第２のステーション１４２は、第２のホスト１４１から委譲されていたコマンド送信権を第１のホスト１４１に返還する。そして、第１のホスト１４１は、第２のステーション１４２からコマンド送信権の返還を受ける。以降、第２のステーション１４２は、第２のローカルネットワーク１４０Ａのローカルバス１５０経由でのターゲットデバイスへのトランザクション中継を停止する。これにより、イニシエータ装置１００とターゲットデバイスとは、論理的な接続が解除される。
【０１８４】
なお、第２のホスト１４１は、ターゲットデバイスの構成情報の無効化の成否を示す結果フラグを含むデバイスハンドル削除応答を発行する。そして、第２のステーション１４２は、デバイスハンドル削除応答をイニシエータ装置１００に中継する。このようにする代わりに、例えば、次のようにしてもよい。第２のホスト１４１は、第２のステーション１４２に対して、例えば、制御コマンド（ＣＣＭＤ）を利用して、ターゲットデバイスの構成情報の無効化の成否を示す結果フラグを含むデバイスハンドル削除応答の発行を指示する。そして、第２のステーション１４２は、この指示を受けてデバイスハンドル制御部３３３により結果フラグを含むデバイスハンドル削除応答を発行する。そして、第２のステーション１４２は、発行したデバイスハンドル削除応答を、ステーション間ネットワーク１７０経由でイニシエータ装置１００に送信するようにしてもよい。
【０１８５】
２．２．６  ステーション間ネットワーク接続解除ステップＳ３０６
第２のホスト１４１は、第２のステーション１４２を制御し、第２のステーション１４２はターゲット装置１４０と、イニシエータ装置１００との間のステーション間ネットワーク１７０による物理的な接続を解除する。
【０１８６】
２．３  ターゲット装置１４０内の第２のステーション１４２の動作フロー
図１２は、図１のターゲット装置１４０内の第２のステーション１４２の動作フローを示すフローチャートである。
【０１８７】
第２のステーション１４２は、構成情報共有部４３１により、第２のホスト１４１との間で図５（ａ）、（ｂ）に示すような構成情報を共有する（ステップＳ４０１）。第２のステーション１４２は、第２のホスト１４１により制御され、ステーション間ネットワーク初期化部４３２により、ステーション間ネットワーク１７０の初期化を行う。そして、第２のステーション１４２は、ターゲット装置１４０とイニシエータ装置１００との間の物理的な接続を確立する（ステップＳ４０２）。
【０１８８】
デバイスハンドル取得要求を受信した場合（Ｓ４０３：取得要求）、第２のステーション１４２は、ステップＳ４０４の処理に移行する。一方、デバイスハンドル削除要求を受信した場合（Ｓ４０３：削除要求）、第２のステーション１４２は、ステップＳ４１０の処理に移行する。
【０１８９】
第２のステーション１４２は、デバイスハンドル制御部４３３により、構成情報管理テーブル４４０を参照して、デバイスハンドル取得要求に含まれるデバイスハンドル番号に対応する構成情報を取得済みか判定する（ステップＳ４０４）。
【０１９０】
未取得の判定の場合（Ｓ４０４：未取得）、第２のステーション１４２は、ステップＳ４０５に移行する。第２のステーション１４２は、デバイスハンドル制御部４３３により、受信したデバイスハンドル取得要求の宛先ＩＤ６１１と送信元ＩＤ６１２とを、それぞれ第２のホスト１４１と第２のステーション１４２とのデバイスＩＤに書き換える。そして、第２のステーション１４２は、そのように書き換えたデバイスハンドル取得要求を、第２のホスト１４１に送信する（ステップＳ４０５）。
【０１９１】
第２のステーション１４２は、デバイスハンドル制御部４３３により、第２のホスト１４１からターゲットデバイスのデバイスＩＤを含む構成情報を受信する。そして、第２のステーション１４２は、受信したターゲットデバイスのデバイスＩＤを含む構成情報を、デバイスハンドル番号と対応付けて構成情報管理テーブル４４０に保持する（ステップＳ４０６）。
【０１９２】
第２のステーション１４２は、第２のホスト１４１からデバイスハンドル取得応答を受信する。そして、第２のステーション１４２は、受信したデバイスハンドル取得応答を、デバイスハンドル制御部４３３によりステーション間ネットワーク１７０経由でイニシエータ装置１００へ送信する。そして、第２のステーション１４２は、第２のホスト１４１からコマンド送信権を譲り受ける（ステップＳ４０７）。
【０１９３】
取得済みの判定の場合（Ｓ４０４：取得済）、第２のステーション１４２は、ステップＳ４０８に移行する。第２のステーション１４２は、自ら、デバイスハンドル制御部４３３により、ターゲットデバイスの構成情報の取得の成功を示す結果フラグを含むデバイスハンドル取得応答を発行する。なお、ターゲットデバイスは、デバイスハンドル取得要求で要求されたデバイスハンドル番号に対応するものである。そして、第２のステーション１４２は、発行したデバイス取得応答を、ステーション間ネットワーク１７０経由で、イニシエータ装置１００へ送信する（ステップＳ４０８）。
【０１９４】
第２のステーション１４２は、トランザクション中継部４３４により、トランザクションの中継処理を行う（ステップＳ４０９）。
【０１９５】
第２のステーション１４２は、デバイスハンドル制御部４３３により、構成情報管理テーブル４４０を参照して、構成情報管理テーブル４４０にターゲットデバイスの構成情報が保持されているか判定する（ステップＳ４１０）。つまり、第２のステーション１４２は、ターゲットデバイスの構成情報を、取得済みか否かを判定している。
【０１９６】
取得済みの判定の場合（Ｓ４１０：取得済）、第２のステーション１４２は、ステップＳ４１１に移行する。第２のステーション１４２は、デバイスハンドル制御部４３３により、受信したデバイスハンドル削除要求の宛先ＩＤ６１１と送信元ＩＤ６１２を、それぞれ第２のホスト１４１と第２のステーション１４２のデバイスＩＤに書き換える。そして、第２のステーション１４２は、宛先ＩＤ６１１と送信元ＩＤ６１２の書き換えにより得られたデバイスハンドル削除要求を、第２のホスト１４１に送信する（ステップＳ４１１）。
【０１９７】
第２のステーション１４２は、デバイスハンドル削除要求を受けた第２のホスト１４１によって制御される。そして、第２のステーション１４２は、デバイスハンドル制御部４３３により、構成情報管理テーブル４４０に保持しているターゲットデバイスの構成情報の無効化を行う（ステップＳ４１２）。
【０１９８】
第２のステーション１４２は、第２のホスト１４１からデバイスハンドル削除応答を受信する。そして、第２のステーション１４２は、受信したデバイスハンドル削除応答を、ステーション間ネットワーク１７０経由でイニシエータ装置１００へ送信するとともに、第２のホスト１４１にコマンド送信権を返還する（ステップＳ４１３）。
【０１９９】
未取得の判定の場合（Ｓ４１０：未取得）、第２のステーション１４２は、デバイスハンドル制御部４３３により、自らデバイスハンドル削除応答を発行する。そして、第２のステーション１４２は、発行したデバイスハンドル削除応答を、ステーション間ネットワーク１７０経由でイニシエータ装置１００へ送信する（ステップＳ４１４）。
【０２００】
第２のステーション１４２は、第２のホスト１４１により制御され、ターゲット装置１４０とイニシエータ装置１００との間のステーション間ネットワーク１７０の接続を、解除する（ステップＳ４１５）。
【０２０１】
２．４  ターゲット装置１４０内の第２のホスト１４１の動作フロー
図１３は、図１のターゲット装置１４０内の第２のホスト１４１の動作フローを示すフローチャートである。
【０２０２】
第２のホスト１４１は、各第２のデバイス１４２〜１４４との間で図５（ａ）、（ｂ）に示すような構成情報を共有し、各第２のデバイス１４２〜１４４と共有した構成情報をホストコントローラ１６０に保持する（ステップＳ４５１）。第２のホスト１４１は、第２のステーション１４２にステーション間ネットワーク１７０を初期化させるための制御を行う（ステップＳ４５２）。
【０２０３】
デバイスハンドル取得要求を受信した場合（Ｓ４５３：取得要求）、第２のホスト１４１は、ステップＳ４５４の処理に移行する。一方、デバイスハンドル削除要求を受信した場合（Ｓ４５３：削除要求）、第２のホスト１４１は、ステップＳ４５８の処理に移行する。
【０２０４】
第２のホスト１４１は、デバイスハンドル取得要求に含まれるデバイスハンドル番号に対応するターゲットデバイスを、第２のデバイス１４２〜１４４の中から探索する（ステップＳ４５４）。
【０２０５】
デバイスハンドル取得要求に含まれるデバイスハンドル番号に対応するターゲットデバイスが、第２のデバイス１４２〜１４４の中に存在する場合（Ｓ４５４：該当あり）、第２のホスト１４１は、ステップＳ４５５に移行する。そして、第２のホスト１４１は、ホストコントローラ１６０において保持しているターゲットデバイスの構成情報を、第２のステーション１４２に送信する（ステップＳ４５５）。第２のホスト１４１は、ターゲットデバイスの探索の成功を示す結果フラグを含むデバイスハンドル取得応答を、第２のステーション１４２へ送信するとともに、コマンド送信権を第２のステーション１４２に渡す（ステップＳ４５６）。なお、デバイスハンドル取得応答は、宛先ＩＤ６１１と送信元ＩＤ６１２を、それぞれ第２のステーション１４２と第２のホスト１４１のデバイスＩＤとする。
【０２０６】
一方、デバイスハンドル取得要求に含まれるデバイスハンドル番号に対応するターゲットデバイスが、第２のデバイス１４２〜１４４の中に存在しない場合（Ｓ４５４：該当無し）、第２のホスト１４１は、ステップＳ４５７に移行する。第２のホスト１４１は、ターゲットデバイスの探索の失敗を示す結果フラグを含むデバイスハンドル取得応答を、第２のステーション１４２へ送信する（ステップＳ４５７）。なお、デバイスハンドル取得応答は、宛先ＩＤ６１１と送信元ＩＤ６１２を、それぞれ第２のステーション１４２と第２のホスト１４１のデバイスＩＤとする。
【０２０７】
第２のホスト１４１は、第２のステーション１４２からのデバイスハンドル削除要求の受信により、第２のステーション１４２のデバイスハンドル制御部４３３に、ターゲットデバイスの構成情報の無効化を行わせる（ステップＳ４５８）。なお、無効化されるターゲットデバイスの構成情報は、第２のステーション１４２の構成情報管理テーブル４４０で保持されている。第２のホスト１４１は、ターゲットデバイスの構成情報の無効化の成功を示す結果フラグを含むデバイスハンドル削除応答を第２のステーション１４２へ送信する。これにより、第２のホスト１４１は、コマンド送信権を第２のステーション１４２から取り戻す（ステップＳ４５９）。なお、デバイスハンドル削除応答は、宛先ＩＤ６１１と送信元ＩＤ６１２を、それぞれ第２のステーション１４２と第２のホスト１４１のデバイスＩＤとする。
【０２０８】
第２のホスト１４１は、第１のステーション１４２に、ステーション間ネットワーク１７０の接続解除を行わせるための制御を行う（ステップＳ４６０）。
【０２０９】
２．５  通信システムの動作シーケンス
図１４〜図１８は、図１のイニシエータ装置１００とターゲット装置１４０を含む通信システムの動作シーケンスを示す図である。
【０２１０】
２．５．１  構成情報共有ステップＳ５０１、Ｓ５０２（図１４）
第１のホスト１０１と各第１のデバイス１０２〜１０３とは、ステップＳ１０１の説明したように、図５（ａ）、（ｂ）に示す構成情報を共有する。また、第２のホスト１４１と各第２のデバイス１４２〜１４４とは、ステップＳ３０１の説明したように、図５（ａ）、（ｂ）に示すような構成情報を共有する。
【０２１１】
２．５．２  ステーション間ネットワーク初期化ステップＳ５０３（図１４）
第１のホスト１０１は、第１のステーション１０２を制御し、第２のホスト１４１は第２のステーション１４２を制御する。そして、第１のステーション１０２のステーション間ネットワーク初期化部３３２と、第２のステーション１４２のステーション間ネットワーク初期化部４３２は、ステーション間ネットワーク１７０の初期化を行う。そして、イニシエータ装置１００とターゲット装置１４０との間で、物理的な接続が確立される。
【０２１２】
２．５．３  デバイスハンドル取得制御ステップＳ５０４（図１４）
第１のホスト１０１は、第１のステーション１０２宛に、デバイスハンドル番号を含むデバイスハンドル取得要求（ＧＥＴ＿ＤＨ＿ＲＥＱ）＃１を送信する。第１のステーション１０２は、第１のホスト１０１からデバイスハンドル取得要求＃１を受信する。そして、第１のステーション１０２は、受信したデバイスハンドル取得要求＃１を、デバイスハンドル制御部３３３により、ステーション間ネットワーク１７０経由でターゲット装置１４０に中継する。
【０２１３】
第２のステーション１４２は、ステーション間ネットワーク１７０経由でイニシエータ装置１００からデバイスハンドル取得要求＃１を受信する。第２のステーション１４２は、デバイスハンドル制御部４３３により、構成情報管理テーブル４４０を参照し、そのデバイスハンドル取得要求に含まれるデバイスハンドル番号に対応するターゲットデバイスの構成情報を、取得済みか判定する。この動作シーケンスでは、デバイスハンドル番号に対応するターゲットデバイスの構成情報を取得済みでないと判定されたとする。第２のステーション１４２は、デバイスハンドル制御部４３３により、デバイスハンドル取得要求＃１の宛先ＩＤ６１１と送信元ＩＤ６１２を、それぞれ第２のホスト１４１と第２のステーション１４２のデバイスＩＤに書き換える。そして、第２のステーション１４２は、宛先ＩＤ６１１と送信元ＩＤ６１２の書き換えにより得られたデバイスハンドル取得要求（ＧＥＴ＿ＤＨ＿ＲＥＱ）＃２を第２のホスト１４１へ送信する。
【０２１４】
第２のホスト１４１は、第２のステーション１４２からデバイスハンドル取得要求＃２を受信し、それに含まれるデバイスハンドル番号に対応するターゲットデバイスを、第２のデバイス１４２〜１４４の中から探索する。この動作シーケンスにおいて、第２のホスト１４１は、第２のデバイス１４３（第２のデバイス＃２）をターゲットデバイスとして選択する。そして、第２のホスト１４１は、ホストコントローラ１６０で保持しているターゲットデバイス（第２のデバイス１４３）の構成情報を、第２のステーション１４２へ送信する。第２のステーション１４２は、そのターゲットデバイスの構成情報を受信し、デバイスハンドル制御部４３３により、ターゲットデバイス１４３の構成情報を、デバイスハンドル番号と対応付けて構成情報管理テーブル４４０に保持する。
【０２１５】
第２のホスト１４１は、第２のステーション１４２宛に、ターゲットデバイスの探索の成功を示す結果フラグを含むデバイスハンドル取得応答（ＧＥＴ＿ＤＨ＿ＡＣＫ）＃２を送信する。これにより、第２のホスト１４１は、ターゲットデバイス宛のコマンド送信権を第２のステーション１４２に委譲する。第２のステーション１４２は、第２のローカルネットワーク１４０Ａのローカルバス１５０経由でデバイスハンドル取得応答＃２を受信する。そして、第２のステーション１４２は、受信したデバイスハンドル取得応答＃２を、ステーション間ネットワーク１７０経由でイニシエータ装置１００に送信する。これにより、第２のステーション１４２は、ターゲットデバイス宛のコマンド送信権を、第２のホスト１４１から委譲される。
【０２１６】
第１のステーション１０２は、ターゲット装置１４０から送信されたターゲットデバイスの探索の成功を示す結果フラグを含む、デバイスハンドル取得応答（ＧＥＴ＿ＤＨ＿ＡＣＫ）＃２を、ステーション間ネットワーク１７０経由で受信する。そして、第１のステーション１０２は、デバイスハンドル制御部３３３により、デバイスハンドル取得応答＃２の宛先ＩＤ６１１と送信元ＩＤ６１２を、それぞれ第１のホスト１０１と第１のステーション１０２のデバイスＩＤに書き換える。そして、第１のステーション１０２は、宛先ＩＤ６１１と送信元ＩＤ６１２の書き換えによって得られたデバイスハンドル取得応答（ＧＥＴ＿ＤＨ＿ＡＣＫ）＃１を、第１のローカルネットワーク１００Ａのローカルバス１１０経由で、第１のホスト１０１に返信する。
【０２１７】
第１のホスト１０１は、デバイスハンドル取得応答＃１を受信し、受信したデバイスハンドル取得応答＃１に含まれる結果フラグによって、ターゲット装置１４０に含まれるターゲットデバイスとの間の論理的な接続の成否を確認する。ここでは、第１のホスト１０１は、デバイスハンドル取得要求に含まれるデバイスハンドル番号に対応する、ターゲットデバイスとの間の論理的な接続の成功を、確認することになる。
【０２１８】
２．５．４  データリードトランザクション実行（中継）ステップＳ５０５（図１５）
２．５．４．１  コマンド−レスポンス
第１のホスト１０１は、第１のステーション１０２をターゲットデバイスとして、選択している。第１のホスト１０１は、宛先ＩＤ６１１と送信元ＩＤ６１２を、それぞれ第１のステーション１０２と第１のホスト１０２のデバイスＩＤとし、Ｒ／Ｗフラグ７１０にリードを設定したデータコマンド（ＤＣＭＤ）＃１を発行する。ここで、第１のホスト１０１は、第２のステーション１４２のトランザクション中継部４３３が、コマンドの宛先を認識できるように、タグＩＤ６１３にデバイスハンドル番号を設定する。第１のステーション１０２は、データコマンド＃１を受信し、受信したデータコマンド＃１を、トランザクション中継部３３４によりステーション間ネットワーク１７０経由で、第２のステーション１４２に中継する。
【０２１９】
第２のステーション１４２は、イニシエータ装置１００の第１のステーション１０２からステーション間ネットワーク１７０経由で、データコマンド＃１を受信する。ここで、第２のステーション１４２は、デバイスハンドル取得制御ステップＳ５０３において、ターゲットデバイスである第２のデバイス１４３（第２のデバイス＃２）の構成情報を、第２のホスト１４１から取得する。そして、第２のステーション１４２は、さらにコマンド送信権の委譲を受ける。第２のステーション１４２は、ステーション間ネットワーク１７０経由で受信したデータコマンド＃１の宛先ＩＤ６１１と送信元ＩＤ６１２を、それぞれターゲットデバイス１４３と第２のステーション１４２のデバイスＩＤに書き換える。そして、第２のステーション１４２は、トランザクション中継部４３４により、宛先６１１と送信元ＩＤ６１２の書き換えにより得られたデータコマンド（ＤＣＭＤ）＃２を、ターゲットデバイス１４３へ中継送信する。なお、第２のステーション１０２が受信したデータコマンド＃１に含まれるタグＩＤ６１３には、ターゲットデバイスのデバイスハンドル番号が設定されている。トランザクション中継部４３４は、データコマンド＃２の宛先ＩＤ６１１を、データコマンド＃１のタグＩＤ６１３に設定されたデバイスハンドル番号に関連づけて、構成情報管理テーブル４４０に保持された構成情報のデバイスＩＤにする。
【０２２０】
ターゲットデバイス１４３は、データコマンド＃２を受信し、データコマンド＃２に対するレスポンスを、第２のステーション１４２に送信する。具体的には、送信するレスポンスは、宛先ＩＤ６１１と送信元ＩＤ６１２を、それぞれ第２のステーションとターゲットデバイスのデバイスＩＤとしたレスポンス（ＲＥＳ）＃２である。ここで、レスポンス＃２のタグＩＤ６１３には、データコマンド＃２のタグＩＤ６１２と同じ内容が書き込まれる。そして、第２のステーション１４２は、ターゲットデバイス１４３からデータコマンド＃２に対するレスポンス＃２を受信する。そして、第２のステーション１４２は、受信したレスポンス＃２を、トランザクション中継部４３４によりステーション間ネットワーク１７０経由で、第１のステーション１０２に中継する。
【０２２１】
第１のステーション１０２は、ステーション間ネットワーク１７０経由でレスポンス＃２を受信する。そして、第１のステーション１０２は、トランザクション中継部３３４により、受信したレスポンス＃２の宛先ＩＤ６１１と送信元ＩＤ６１２とを、それぞれ第１のホスト１０１と第１のステーション１０２のデバイスＩＤに書き換える。そして、第１のステーション１０２は、宛先ＩＤ６１１と送信元ＩＤ６１２の書き換えにより得られたレスポンス（ＲＥＳ）＃１を、第１のホスト１０１からのデータコマンド＃１に対するレスポンスとして、第１のホスト１０１に返信する。
【０２２２】
２．５．４．２  データ転送（リード）
ターゲットデバイス１４３は、宛先ＩＤ６１１と送信元ＩＤ６１２を、それぞれ第２のホスト１４１を代替する第２のステーション１４２とターゲットデバイス１４３のデバイスＩＤとした、フロー制御要求（ＦＣ＿ＲＥＱ）＃２を用意する。ターゲットデバイス１４３は、用意したフロー制御要求＃２を、第２のステーション１４２宛に発行する。そして、第２のステーション１４２は、フロー制御要求＃２を受信する。第２のステーション１４２は、宛先ＩＤ６１１と送信元ＩＤ６１２を、それぞれターゲットデバイス１４３と第２のステーション１４２のデバイスＩＤとしたフロー制御応答（ＦＣ＿ＡＣＫ）＃２を、ターゲットデバイス１４３宛に返信する。これにより、ターゲットデバイス１４３と第２のホスト１４１を代替している第２のステーション１４２との間では、互いのバッファの空き状態を確認することができる。
【０２２３】
そして、ターゲットデバイス１４３は、第２のステーション１４２に対して、バースト転送サイズ分のデータパケット（ＤＡＴＡ）＃２の送信を開始する。なお、データパケット＃２は、宛先ＩＤ６１１と送信元ＩＤ６１２を、それぞれ第２のステーション１４２と第２のターゲットデバイス１４３のデバイスＩＤとして送信される。ここでは、例えば、ターゲットデバイスの構成情報に含まれる最大パケットサイズ（ＭａｘＰａｃｋｅｔＳｉｚｅ）を５１２Ｂｙｔｅ、最大バースト転送数（ＭａｘＢｕｒｓｔＮｕｍ）を“８”とする。このときのバースト転送は、データパケット＃２［０］〜［７］までの計４ＫＢｙｔｅが、バースト転送されることになる。第２のステーション１４２は、計４Ｋバイト分のデータの転送完了後、データ転送の受信結果を含めたステータス（ＳＴＡＴ）＃２をターゲットデバイス１４３に送信する。
【０２２４】
第２のステーション１４２は、ターゲットデバイス１４３から受信したバースト転送データを、トランザクション中継部４３４により、ステーション間ネットワーク１７０経由で第１のステーション１０２に中継する。なお、このときのバースト転送データは、データパケット＃２［０］〜［７］が対象となる。
【０２２５】
以降、ターゲットデバイス１４３と第２のステーション１４２は、データコマンド＃２の転送サイズ７１２に指定されたサイズに達するまでのバースト転送を繰り返す。そして、第２のステーション１４２は、受信したバースト転送データを、トランザクション中継部４３４により、ステーション間ネットワーク１７０経由で第１のステーション１０２に中継する。
【０２２６】
第１のステーション１０２は、宛先ＩＤ６１１と送信元ＩＤ６１２を、それぞれ第１のホスト１０１と第１のステーション１０２のデバイスＩＤとしたフロー制御要求（ＦＣ＿ＲＥＱ）＃１を用意する。第１のステーション１０２は、用意したフロー制御要求＃１を、第１のホスト１０１宛に発行する。そして、第１のホスト１０１は、第１のステーション１０２からフロー制御要求＃１を受信する。そして、第１のホスト１０１は、宛先ＩＤ６１１と送信元ＩＤ６１２を、それぞれ第１のステーション１０２と第１のホスト１０１のデバイスＩＤとしたフロー制御応答（ＦＣ＿ＡＣＫ）＃１を、第１のステーション１０２宛に返信する。これにより、第１のステーション１０２と第１のホスト１０１との間では、互いのバッファの空き状態を確認することができる。
【０２２７】
ここで、イニシエータ装置１００における第１のホスト１０１と第１のステーション１０２との間のバースト転送サイズは、ターゲット装置１４０に非依存で、構成情報共有ステップＳ５０１において決定される。ここで、例えば、第１のステーション１０２の構成情報に含まれる最大パケットサイズを５１２Ｂｙｔｅ、最大バースト転送サイズを“１６”とすると、バースト転送サイズは、８ＫＢｙｔｅとなる。このため、第１のステーション１０２は、ステーション間ネットワーク１７０経由でターゲットデバイスから受信した４ＫＢｙｔｅのバースト転送データの２回分を、トランザクション中継部３３４により、第１のホスト１０１へ送信する。つまり、バースト転送データは、受信した４ＫＢｙｔｅのバースト転送データの２回分を、８ＫＢｙｔｅのバースト転送データ（データパケット（ＤＡＴＡ）＃１［０］〜［１５］）として、転送することになる。第１のホスト１０１は、計８Ｋバイト分のデータの転送完了後、データ転送の受信結果を含めたステータス（ＳＴＡＴ）＃１を第１のステーション１０２に送信する。
【０２２８】
２．５．５  データライトトランザクション実行（中継）ステップＳ５０６（図１６）
２．５．５．１  コマンド−レスポンス
データライトトランザクションにおける［コマンド−レスポンス］は、データリードトランザクションにおける［コマンド−レスポンス］と、本発明に関連する部分については同様のため、ここでは説明を省略する。データライトトランザクションにおける［コマンド−レスポンス］は、データリードトランザクションにおける［コマンド−レスポンス］と異なる点は、データコマンドのＲ／Ｗフラグ７１０をリードの代わりにライトに設定する点である。
【０２２９】
２．５．５．２  データ転送（ライト）
第１のホスト１０１は、第１のステーション１０２をターゲットデバイスと見なす。そして、第１のホスト１０１は、宛先ＩＤ６１１と送信元ＩＤ６１２を、それぞれ第１のステーション１０２と第１のホスト１０１のデバイスＩＤとしたフロー制御要求（ＦＣ＿ＲＥＱ）＃１を、用意する。第１のホスト１０１は、用意したフロー制御要求＃１を、第１のステーション１０２宛に発行する。そして、第１のステーション１０２は、第１のホスト１０１からフロー制御要求＃１を受信する。そして、第１のステーション１０２は、宛先ＩＤ６１１と送信元ＩＤ６１２を、それぞれ第１のホスト１０１と第１のステーション１０２のデバイスＩＤとしたフロー制御応答（ＦＣ＿ＡＣＫ）＃１を、第１のホスト１０１宛に返信する。これにより、第１のホスト１０１と第１のステーション１０２との間では、互いのバッファの空き状態を確認することができる。
【０２３０】
そして、第１のホスト１０１は、第１のステーション１０２に対して、バースト転送サイズである８ＫＢｙｔｅ分のデータパケット（ＤＡＴＡ）＃１［０］〜［１５］を送信する。なお、バースト転送サイズである８ＫＢｙｔｅ分のデータパケット（ＤＡＴＡ）＃１［０］〜［１５］は、宛先ＩＤ６１１と送信元ＩＤ６１２を、それぞれ第１のステーション１０２と第１のホスト１０１のデバイスＩＤとする。第１のホスト１０１は、第２のステーション１４２のトランザクション中継部４３３がデータの宛先を認識できるように、タグＩＤ６１３にデバイスハンドル番号を設定する。第１のステーション１０２は、計８ＫＢｙｔｅ分のデータの転送完了後、データ転送の受信結果を含めたステータス（ＳＴＡＴ）＃１を第１のホスト１０１に返信する。
【０２３１】
第１のステーション１０２は、第１のホスト１０１から受信したバースト転送データを、トランザクション中継部３３４により、ステーション間ネットワーク１７０経由で第２のステーション１４２に中継する。なお、このときのバースト転送データは、データパケット＃１［０］〜［１５］が対象となる。
【０２３２】
以降、第１のホスト１０１と第１のステーション１０２は、データコマンド（ＤＣＭＤ）の転送サイズ７１２に指定されたサイズに達するまでバースト転送を繰り返す。そして、第１のステーション１０２は、受信したバースト転送データを、トランザクション中継部３３４により、ステーション間ネットワーク１７０経由で第２のステーション１４２に中継する。
【０２３３】
第２のステーション１４２は、第２のホスト１４１を代替している。第２のステーション１４２は、宛先ＩＤ６１１と送信元ＩＤ６１２を、それぞれターゲットデバイス１４３と第２のステーション１４２のデバイスＩＤとしたフロー制御要求（ＦＣ＿ＲＥＱ）＃２を、用意する。第２のステーション１４２は、用意したフロー制御要求＃２を、ターゲットデバイス１４３宛に発行する。そして、ターゲットデバイス１４３は、フロー制御要求＃２を受信する。ターゲットデバイス１４３は、宛先ＩＤ６１１と送信元ＩＤ６１２を、それぞれ第２のステーション１４２とターゲットデバイス１４３のデバイスＩＤとしたフロー制御応答（ＦＣ＿ＡＣＫ）＃２を、第２のステーション１４２宛に返信する。これにより、第２のホスト１４１を代替している第２のステーション１４２とターゲットデバイス１４３との間では、互いのバッファの空き状態を確認することができる。
【０２３４】
第２のステーション１４２は、第１のステーション１０２からのバースト転送データ（データパケット＃１［０］〜［１５］）を受信する。そして、第２のステーション１４２は、トランザクション中継部４３４により、受信したバースト転送データを、データパケット（ＤＡＴＡ）＃２として、ターゲットデバイス１４３に中継する。なお、データパケット（ＤＡＴＡ）＃２は、宛先ＩＤ６１１と送信元ＩＤ６１２を、それぞれターゲットデバイス１４３と第２のステーション１４２のデバイスＩＤとする。なお、第２のステーション１４２が受信したデータパケット＃１に含まれるタグＩＤ６１３には、ターゲットデバイスのデバイスハンドル番号が設定されている。トランザクション中継部４３４は、データコマンド＃２の宛先ＩＤ６１１を、データパケット＃１のタグＩＤ６１３に設定されたデバイスハンドル番号に関連づけて、構成情報管理テーブル４４０に保持された構成情報のデバイスＩＤにする。ターゲットデバイス１４３は、１回分のバースト転送サイズ分のデータの転送完了後、データ転送の受信結果を含めたステータス（ＳＴＡＴ）＃２を、第２のステーション１４２に送信する。
【０２３５】
上述したように、第２のステーション１４２とターゲットデバイス１４３との間のバースト転送サイズは、４ＫＢｙｔｅである。このため、第２のステーション１４２は、ステーション間ネットワークインターフェース１６３における無線通信バッファで、８ＫＢｙｔｅのバースト転送データを、受信している。そして、第２のステーション１４２は、受信した８ＫＢｙｔｅのデータを、ローカルネットワークインターフェース１６２ａのバッファに４ＫＢｙｔｅずつ転送し、ターゲットデバイスとの間で４ＫＢｙｔｅ単位のバースト転送を繰り返す。ここで、第２のステーション１４２は、ステーション間ネットワークインターフェース１６３における無線通信バッファが空くまでの間、第１のステーション１０２からの次のバースト転送データの送信を、待機させる必要がある。
【０２３６】
２．５．６  デバイスハンドル取得制御ステップＳ５０７（デバイスハンドル切替）（図１７）
第１のホスト１０１は、デバイスハンドル切替えのため、第１のステーション宛に、デバイスハンドル番号を切替えたデバイスハンドル取得要求（ＧＥＴ＿ＤＨ＿ＲＥＱ）＃１を発行する。第１のステーション１０２は、デバイスハンドル取得要求＃１を受信し、受信したデバイスハンドル取得要求＃１を、ステーション間ネットワーク１７０経由でターゲット装置１４０に中継する。
【０２３７】
第２のステーション１４２は、ステーション間ネットワーク１７０経由でイニシエータ装置１００からデバイスハンドル取得要求＃１を受信する。第２のステーション１４２は、デバイスハンドル制御部４３３により、構成情報管理テーブル４４０を参照し、デバイスハンドル取得要求＃１に含まれるデバイスハンドル番号に対応するターゲットデバイスの構成情報を、取得済みか判定する。この動作シーケンスでは、デバイスハンドル番号に対応するターゲットデバイスの構成情報を、取得済みと判定されたものとする。第２のステーション１４２は、デバイスハンドル制御部４３３により、第２のホスト１４１を介さずに、自ら、ターゲットデバイスの構成情報の取得応答を、ステーション間ネットワーク１７０経由でイニシエータ装置１００に返信する。具体的には、ターゲットデバイスの構成情報の取得応答は、成功を示す結果フラグを含むデバイスハンドル取得応答（ＧＥＴ＿ＤＨ＿ＡＣＫ）＃２である。
【０２３８】
第１のステーション１０２は、ターゲット装置１４０から送信されたターゲットデバイスの探索の成功を示す結果フラグを含む、デバイスハンドル取得応答（ＧＥＴ＿ＤＨ＿ＡＣＫ）＃２を、ステーション間ネットワーク１７０経由で受信する。そして、第１のステーション１０２は、デバイスハンドル制御部３３３により、デバイスハンドル取得応答＃２の宛先ＩＤ６１１と送信元ＩＤ６１２を、それぞれ第１のホスト１０１と第１のステーション１０２のデバイスＩＤに書き換える。そして、第１のステーション１０２は、宛先ＩＤ６１１と送信元ＩＤ６１２の書き換えによって得られたデバイスハンドル取得応答（ＧＥＴ＿ＤＨ＿ＡＣＫ）＃１を、第１のローカルネットワーク１００Ａのローカルバス１１０経由で第１のホスト１０１に返信する。
【０２３９】
第１のホスト１０１は、デバイスハンドル取得応答＃１を受信し、受信したデバイスハンドル取得応答＃１に含まれる結果フラグによって、ターゲット装置１４０に含まれるターゲットデバイスとの間の論理的な接続の成否を確認する。ここでは、第１のホスト１０１は、デバイスハンドル取得要求に含まれるデバイスハンドル番号に対応するターゲットデバイスとの間の論理的な接続の成功を、確認することになる。
【０２４０】
なお、この後は、図１５あるいは図１６に示した動作シーケンスと同様の内容が、実施される。
【０２４１】
２．５．７  デバイスハンドル削除ステップＳ５０８（図１８）
第１のホスト１０１は、第１のステーション１０２宛に、デバイスハンドル削除要求（ＤＥＬ＿ＤＨ＿ＲＥＱ）＃１を送信する。第１のステーション１０２は、第１のホスト１０１からデバイスハンドル削除要求＃１を受信する。そして、第１のステーション１０２は、受信したデバイスハンドル削除要求＃１を、デバイスハンドル制御部３３３により、ステーション間ネットワーク１７０経由でターゲット装置１４０に中継する。
【０２４２】
第２のステーション１４２は、ステーション間ネットワーク１７０経由で、イニシエータ装置１００からデバイスハンドル削除要求＃１を、受信する。第２のステーション１４２は、デバイスハンドル制御部４３３により、構成情報管理テーブル４４０を参照し、構成情報管理テーブル４４０にターゲットデバイスの構成情報が、保持されているか判定する。この動作シーケンスでは、構成情報管理テーブル４４０にターゲットデバイスの構成情報が保持されていると判定されたものとする。そして、第２のステーション１４２は、デバイスハンドル制御部４３３により、デバイスハンドル削除要求＃１の宛先ＩＤ６１１と送信元ＩＤ６１２を、それぞれ第２のホスト１４１と第２のステーション１４２のデバイスＩＤに書き換える。そして、第２のステーション１４２は、宛先ＩＤ６１１と送信元ＩＤ６１２の書き換えにより得られたデバイスハンドル削除要求（ＤＥＬ＿ＤＨ＿ＲＥＱ）＃２を、第２のホスト１４１へ送信する。
【０２４３】
第２のホスト１４１は、第２のステーション１４２からデバイスハンドル削除要求＃２を受信する。そして、第２のホスト１４１は、デバイスハンドル削除要求＃２に応じて第２のステーション１４２のデバイスハンドル制御部４３３を制御する。そして、第２のステーション１４２は、デバイスハンドル制御部４３３により、構成情報管理テーブル４４０で保持しているターゲットデバイスの構成情報を無効化する。
【０２４４】
第２のホスト１４１は、第２のステーション１４２宛に、デバイスハンドル削除要求＃２に対する応答を送信する。なお、デバイスハンドル削除要求＃２に対する応答は、ターゲットデバイスの構成情報の無効化の成否を示す結果フラグ（ここでの結果フラグは成功を示す）を含む、デバイスハンドル削除応答（ＤＥＬ＿ＤＨ＿ＡＣＫ）＃２である。ここで、デバイスハンドル削除要求＃２の宛先ＩＤ６１１と送信元ＩＤ６１２は、それぞれ第２のステーション１４２と第２のホスト１４１のデバイスＩＤである。第２のステーション１４２は、デバイスハンドル削除応答＃２を受信し、受信したデバイスハンドル削除応答＃２を、デバイスハンドル制御部４３３により、ステーション間ネットワーク１７０経由でイニシエータ装置１００に送信する。そして、第２のステーション１４２は、第２のホスト１４１から委譲されていたコマンド送信権を、第２のホスト１４１に返還する。そして、第２のホスト１４１は、第２のステーション１４２からコマンド送信権の返還を受ける。
【０２４５】
第１のステーション１０２は、ターゲット装置１４０から送信された上述した結果フラグを含むデバイスハンドル削除応答＃２をステーション間ネットワーク１７０経由で受信する。そして、第１のステーション１０２は、デバイスハンドル制御部３３３により、デバイスハンドル削除応答＃２の宛先ＩＤ６１１と送信元ＩＤ６１２を、それぞれ第１のホスト１０１と第１のステーション１０２のデバイスＩＤに書き換える。そして、第１のステーション１０２は、デバイスハンドル制御部３３３により、デバイスハンドル削除要求＃１の応答を返信する。なお、デバイスハンドル削除要求＃１の応答は、宛先ＩＤ６１１と送信元ＩＤ６１２の書き換えにより得られたデバイスハンドル削除応答（ＤＥＬ＿ＤＨ＿ＡＣＫ）＃１である。
【０２４６】
第１のホスト１０１は、デバイスハンドル削除応答＃１を受信し、受信したデバイスハンドル削除応答＃１に含まれる結果フラグによって、ターゲット装置１４０に含まれるターゲットデバイスとの間の論理的な接続の解除の成功を確認する。
【０２４７】
２．５．８  ステーション間ネットワーク接続解除ステップＳ５０９（図１８）
第１のホスト１０１は、第１のステーション１０２を制御する。そして、第２のホスト１４１は、第２のステーション１４２を制御する。そして、第１のステーション１０２と第２のステーション１４２は、ステーション間ネットワーク１７０による物理的な接続を解除する。
【０２４８】
本実施の形態では、イニシエータ装置１００とターゲット装置１４０のそれぞれに含まれる各デバイスの構成情報が、構成情報共有ステップ以降で維持される。このため、イニシエータ装置１００とターゲット装置１４０は、ステーション間ネットワーク接続解除ステップＳ１０６、Ｓ３０６の完了後に、再び構成情報共有を行うことなく、各装置内の通信を再開できる。
【０２４９】
≪第１の変形例≫
以下、本発明の実施形態の第１の変形例について、図面を参照しつつ説明する。図１７に示したように、通信システムは、デバイスハンドル取得判定において取得済みの判定の場合、第２のホスト１４１を介さずにデバイスハンドルの切替えが実行できる。
【０２５０】
そこで、第１の変形例では、ステーション間ネットワーク初期化ステップ直後のデバイスハンドル取得制御ステップにおいて、デバイスハンドルを一括取得することで、デバイスハンドル切替え時の通信オーバーヘッドを削減する。
【０２５１】
次は、ステーション間ネットワーク初期化ステップ直後のデバイスハンドル取得制御ステップＳ５０４Ａについて、図１９を参照して説明する。
【０２５２】
第１のホスト１０１は、複数のデバイスハンドルを一括取得するため、第１のステーション１０２宛に、一括取得用のデバイスハンドル取得要求（ＧＥＴ＿ＤＨ＿ＲＥＱ）＃１を送信する。なお、デバイスハンドル取得要求＃１は、例えば、デバイスハンドル番号を“０”としたデバイスハンドル取得要求である。第１のステーション１０２は、第１のホスト１０１からデバイスハンドル取得要求＃１を受信する。そして、第１のステーション１０２は、受信したデバイスハンドル取得要求＃１を、デバイスハンドル制御部３３３により、ステーション間ネットワーク１７０経由でターゲット装置１４０に中継する。
【０２５３】
第２のステーション１４２は、ステーション間ネットワーク１７０経由で、イニシエータ装置１００からデバイスハンドル取得要求＃１を受信する。第２のステーション１４２は、デバイスハンドル制御部４３３により、構成情報管理テーブル４４０を参照し、そのデバイスハンドル取得要求に含まれるデバイスハンドル番号に対応するターゲットデバイスの構成情報を、取得済みか判定する。この動作シーケンスでは、デバイスハンドル番号に対応するターゲットデバイスの構成情報を取得済みでないと判定されたものとする。そして、第２のステーション１４２は、デバイスハンドル制御部４３３により、デバイスハンドル取得要求＃１の宛先ＩＤ６１１と送信元ＩＤ６１２を、それぞれ第２のホスト１４１と第２のステーション１４２のデバイスＩＤに書き換える。そして、第２のステーション１４２は、宛先ＩＤ６１１と送信元ＩＤ６１２の書き換えにより得られたデバイスハンドル取得要求（ＧＥＴ＿ＤＨ＿ＲＥＱ）＃２を、第２のホスト１４１へ送信する。
【０２５４】
第２のホスト１４１は、第２のステーション１４２からデバイスハンドル取得要求＃２を受信する。受信したデバイスハンドル取得要求＃２に含まれるデバイスハンドル番号は、一括取得用の値である。このため、第２のホスト１４１は、ホストコントローラ１６０に保持した第２のデバイス１４２〜１４４の構成情報に基づいて、複数のターゲットデバイスからなるターゲットデバイスグループを探索する。ここで、最も簡単なターゲットデバイスグループとしては、第２のデバイス１４２〜１４４の全てを選択すれば良い。
【０２５５】
第２のホスト１４１は、ターゲットデバイスグループの各デバイスの構成情報を、デバイスハンドル番号に対応させて第２のステーション１４２に一括送信する。第２のステーション１４２は、そのターゲットデバイスグループの各デバイスの構成情報を一括受信する。そして、第２のステーション１４２は、デバイスハンドル制御部４３３により、ターゲットデバイスグループの各デバイスの構成情報を、デバイスハンドル番号と対応付けて構成情報管理テーブル４４０に保持する。なお、デバイスハンドル番号は、例えば、デバイスハンドル取得応答に含み、後述するターゲットデバイスグループの当該デバイスを特定する情報である。
【０２５６】
第２のホスト１４１は、第２のステーション宛に、デバイスハンドル取得応答（ＧＥＴ＿ＤＨ＿ＡＣＫ）＃２を送信するとともに、コマンド送信権を第２のステーション＃２に委譲する。第２のステーション１４２は、デバイスハンドル取得応答＃２を受信し、受信したデバイスハンドル取得応答＃２を、ステーション間ネットワーク１７０経由でイニシエータ装置１００に送信する。そして、第２のステーション１４２は、コマンド送信権を第２のホスト１４１から委譲される。ここで、第２のホスト１４１は、ターゲットデバイスグループの各デバイスを特定する情報を含む、デバイスハンドル取得応答の送信を行う。ターゲットデバイスグループを特定する情報は、そのターゲットデバイスグループに含まれる各デバイスに、割り当てられたデバイスＩＤのビットマップ情報であれば良い。例えば、図１に示した第２のデバイス１４２〜１４４には、デバイスＩＤとして“１”から“３”までが割り当てられる。また、ビットマップ情報は、デバイスＩＤに対応するビット１からビット３までに“１”をセットし、その他ビットを“０”とした情報となる。
【０２５７】
第１のステーション１０２は、ターゲット装置１４０から送信されたデバイスハンドル取得応答＃２を、ステーション間ネットワーク１７０経由で受信する。そして、第１のステーション１０２は、デバイスハンドル制御部３３３により、デバイスハンドル取得応答＃２の宛先ＩＤ６１１と送信元ＩＤ６１２を、それぞれ第１のホスト１０１と第１のステーション１０２のデバイスＩＤに書き換える。そして、第１のステーション１０２は、宛先ＩＤ６１１と送信元ＩＤ６１２の書き換えによって得られたデバイスハンドル取得応答（ＧＥＴ＿ＤＨ＿ＡＣＫ）＃１を、第１のローカルネットワーク１００Ａのローカルバス１１０経由で第１のホスト１０１に返信する。
【０２５８】
第１のホスト１０１は、デバイスハンドル取得応答＃１を受信する。第１のホスト１０１は、デバイスハンドル取得応答に含まれたターゲットデバイスグループを特定する情報から、取得済みのデバイスハンドルを認識する。以降、第１のホスト１０１は、デバイスハンドル番号として“１”から“３”のいずれかを設定したデバイスハンドル取得要求を発行する。これにより、第１のホスト１０１は、図１７に示すような、第２のホスト１４１を介さないデバイスハンドル（ターゲットデバイス）切り替えが実現できる。
【０２５９】
なお、ターゲットデバイスグループの形成方法は、上記に限らず、例えば、第１のホスト１０１から発行するデバイスハンドル取得要求に、構成情報であるデバイス種別コードを含めても良い。この場合、第２のホスト１４１は、ホストコントローラ１６０に保持した第２のデバイス１４２〜１４４の構成情報に基づいて、ターゲットデバイスグループとして選択する。ターゲットデバイスグループの選択は、構成情報に基づいて、デバイスハンドル取得要求に含まれたデバイス種別コードに該当する全てのデバイスを、選択する。
【０２６０】
また、第２のホスト１４１は、デバイスハンドル取得応答として、上記のようなビットマップ情報によるデバイスＩＤだけでなく、各デバイスのデバイス種別コードを含めてもよい。この場合、第２のホスト１４１は、図２０に示すような、第２のデバイス１４２〜１４４のデバイスＩＤとデバイス種別コードをリスト化したデバイスリストをデバイスハンドル取得応答に含めて返信することになる。この場合、第１のホスト１０１は、全ターゲットデバイス候補のデバイス種別コードとそのデバイスＩＤの一欄を一括取得できるため、明示的なデバイス選択が可能になる。
【０２６１】
≪第２の変形例≫
次は、本発明の実施の形態の第２の変形例について、図面を参照しつつ説明する。上記実施の形態及びその第１の変形例では、トランザクション開始前に、デバイスハンドル取得のためのパケット交換が必要である。デバイスハンドル取得のために交換されるパケットは、例えば、デバイスハンドル取得要求（ＧＥＴ＿ＤＨ＿ＲＥＱ）、あるいは、デバイスハンドル取得応答（ＧＥＴ＿ＤＨ＿ＡＣＫ）である。
【０２６２】
そこで、第２の変形例では、通常のトランザクションで交換されるコマンドとレスポンスを、それぞれデバイスハンドル取得要求とデバイスハンドル取得応答として扱うことで、通信オーバーヘッドを削減する。
【０２６３】
以下では、デバイスハンドル取得要求とデバイスハンドル削除応答として、それぞれコマンドとレスポンスを用いる場合のデバイスハンドル取得制御ステップについて、図２１と図２２を参照して説明する。
【０２６４】
１．  デバイスハンドル取得制御ステップＳ５０４Ｂ（デバイスハンドル未取得の場合）（図２１）
第１のステーション１０２は、デバイスハンドル取得制御ステップＳ５０４Ｂにおいて、デバイスハンドル取得要求（ＧＥＴ＿ＤＨ＿ＲＥＱ）＃１としての役割も兼ねるデータコマンド（ＤＣＭＤ）＃１を発行する。第１のステーション１０２は、第１のホスト１０１からデータコマンド＃１を受信し、受信したデータコマンド＃１を、デバイスハンドル制御部３３３により、ステーション間ネットワーク経由でターゲット装置１４０に中継する。なお、デバイスハンドル取得要求に必要なデバイスハンドル番号は、データコマンドの予約フィールド（Ｒｅｓｅｒｖｅｄ）か、あるいは追加フィールドに含めることとする。また、追加フィールドを含めることが困難な場合は、図６に示したタグＩＤ６１３をデバイスハンドル番号として用いてもよい。
【０２６５】
第２のステーション１４２は、ステーション間ネットワーク１７０経由で、イニシエータ装置１００からデバイスハンドル取得要求＃１の役割も兼ねるデータコマンド＃１を受信する。そして、第２のステーション１４２は、構成情報管理テーブル４４０を参照し、そのデータコマンド＃１に含まれるデバイスハンドル番号に対応するターゲットデバイスの構成情報を、取得済みか判定する。この動作シーケンスでは、デバイスハンドル番号に対応するターゲットデバイスの構成情報を取得済みでないと判定されたものとする。そして、第２のステーション１４２は、データコマンド＃１の宛先ＩＤ６１１と送信元ＩＤ６１２を、それぞれ第２のホスト１４１と第２のステーション１４２のデバイスＩＤに書き換える。そして、第２のステーション１４２は、宛先ＩＤ６１１と送信元ＩＤ６１２の書き換えにより得られたデータコマンドを、デバイスハンドル取得要求の受信通知として、第２のホスト１４１へ送信する。
【０２６６】
第２のホスト１４１は、第２のステーション１４２からデバイスハンドル取得要求の受信通知として、データコマンドを受信する。そして、第２のホスト１４１は、上記の実施の形態と同様に、ターゲットデバイスを探索し、その構成情報を第２のステーション１４２に送信する。そして、第２のステーション１４２は、ターゲットデバイスの構成情報をデバイスハンドル番号に対応させて構成情報管理テーブル４４０に保持する。それが完了すると、第２のホスト１４１は、デバイスハンドル取得応答の指示を、第２のステーション装置１０２に対して行うと共に、コマンド送信権を第２のステーション１４２に委譲する。そして、第２のステーション１４２は、デバイスハンドル取得応答の指示を受けると共に、コマンド送信権を委譲される。
【０２６７】
第２のステーション１４２は、データコマンド＃１の宛先ＩＤ６１１と送信元ＩＤ６１２を、それぞれターゲットデバイス１４３と第２のステーション１４２のデバイスＩＤに書き換える。そして、第２のステーション１４２は、宛先ＩＤ６１１と送信元ＩＤ６１２の書き換えにより得られたデータコマンド＃２を、ターゲットデバイス１４３へ送信する。ターゲットデバイス１４３は、データコマンド＃２を受信し、受信したデータコマン＃２に対する応答としてレスポンス＃２を、第２のステーション１４２へ送信する。第２のステーション１４２は、ターゲットデバイス１４２から受信したレスポンス＃２に、ターゲットデバイスの探索の成功を示す結果フラグを含める。そして、第２のステーション１４２は、デバイスハンドル取得応答（ＧＥＴ＿ＤＨ＿ＡＣＫ）＃２としての役割も兼ねる、結果フラグを含むレスポンス＃２を、ステーション間ネットワーク１７０経由でイニシエータ装置１００へ送信する。
【０２６８】
ここで、デバイスハンドル取得応答に必要なデバイスハンドル番号あるいは結果フラグは、デバイスハンドル取得要求と同様に、レスポンスの予約フィールド（Ｒｅｓｅｒｖｅｄ）か、あるいは追加フィールドに含めることとする。また、追加フィールドを含めることが困難な場合は、図６に示したタグＩＤ６１３をデバイスハンドル番号として用い、ＮＡＣＫフラグ７２０を結果フラグとして用いても良い。
【０２６９】
第１のステーション１０２は、ターゲット装置１４０から送信されたレスポンス＃２を、ステーション間ネットワーク１７０経由で受信する。そして、第１のステーション１０２は、レスポンス＃２の宛先ＩＤ６１１と送信元ＩＤ６１２を、それぞれ第１のホスト１０１と第１のステーション１０２のデバイスＩＤに書き換える。そして、第１のステーション１０２は、宛先ＩＤ６１１と送信元ＩＤ６１２の書き換えによって得られたデバイスハンドル取得応答（ＧＥＴ＿ＤＨ＿ＡＣＫ）＃１の受信通知としての役割も果たすレスポンス＃１を、第１のホスト１０１に返信する。第１のホスト１０１は、レスポンス＃１を受信し、受信したレスポンス＃１に含まれる結果フラグによって、ターゲット装置１４０に含まれるターゲットデバイスとの間の論理的な接続の成否を確認する。
【０２７０】
２．  デバイスハンドル取得制御ステップＳ５０７Ｂ（デバイスハンドル取得済みの場合）（図２２）
第１のホスト１０１は、デバイスハンドル切替えのため、デバイスハンドル取得要求としての役割も兼ねるデバイスハンドル番号を切替えたデータコマンド（ＤＣＭＤ）＃１を、第１のステーション１０２宛に送信する。第１のステーション１０２は、データコマンド＃１を受信し、受信したデータコマンド＃１を、ステーション間ネットワーク１７０経由でターゲット装置１４０へ送信する。
【０２７１】
第２のステーション１４２は、ステーション間ネットワーク１７０経由で、データコマンド＃１を受信する。そして、第２のステーション１４２は、構成情報管理テーブル４４０を参照し、そのデバイスハンドル取得要求に含まれるデバイスハンドル番号に対応するターゲットデバイスの構成情報を、取得済みか判定する。この動作シーケンスでは、デバイスハンドル番号に対応するターゲットデバイスの構成情報を取得済みであると判定されたものとする。そして、第２のステーション１４２は、データコマンド＃１の宛先ＩＤ６１１と送信元ＩＤ６１２を、それぞれターゲットデバイス１４３と第２のステーション１４２のデバイスＩＤに書き換える。そして、第２のステーション１４２は、宛先ＩＤ６１１と送信元ＩＤ６１２の書き換えにより得られたデータコマンド＃２を、ターゲットデバイス１４３へ送信する。ターゲットデバイス１４３は、データコマンド＃２を受信し、受信したデータコマンド＃２に対する応答としてレスポンス＃２を、第２のステーション１４２へ送信する。第２のステーション１４２は、ターゲットデバイス１４２から受信したレスポンス＃２に、ターゲットデバイスの探索の成功を示す結果フラグを含める。そして、第２のステーション１４２は、デバイスハンドル取得応答（ＧＥＴ＿ＤＨ＿ＡＣＫ）＃２としての役割も兼ねる、結果フラグを含むレスポンス＃２を、ステーション間ネットワーク１７０経由でイニシエータ装置１００へ送信する。
【０２７２】
第１のステーション１０２は、ターゲット装置１４０から送信されたレスポンス＃２を、ステーション間ネットワーク１７０経由で受信する。そして、第１のステーション１０２は、レスポンス＃２の宛先ＩＤ６１１と送信元ＩＤ６１２を、それぞれ第１のホスト１０１と第１のステーション１０２のデバイスＩＤに書き換える。そして、第１のステーション１０２は、宛先ＩＤ６１１と送信元ＩＤ６１２の書き換えによって得られた、デバイスハンドル取得応答＃１の受信通知としての役割も果たすレスポンス＃１を、第１のホスト１０１に返信する。
【０２７３】
第１のホスト１０１は、レスポンス＃１を受信し、受信したレスポンス＃１に含まれる結果フラグによって、ターゲット装置１４０に含まれるターゲットデバイスとの間の論理的な接続の成否を確認する。
【０２７４】
なお、第２の変形例では、上記のように、データコマンドとレスポンスによってデバイスハンドルを取得することができる。このため、第２の変形例では、以降のデータ転送において、図１５と図１６におけるデータコマンドとレスポンスの交換を行う必要が無くなる。
【０２７５】
≪その他の変形例≫
本発明は、上記実施形態で説明した内容に限定されず、本発明の目的とそれに関連又は付随する目的を達成するためのいかなる形態においても実施可能であり、例えば、以下であってもよい。
【０２７６】
（１）メモリ統合ステーション
図１に示した第２のステーション１４２は、第２のデバイス１４３と同様に、不揮発メモリモジュールを含むメモリ統合ステーションであってもよい。その場合、第２のステーション１４２は、構成情報共有ステップにおいて、ステーションとしての構成情報とメモリデバイスとしての構成情報を、第２のホスト１４１との間で共有することになる。そして、第２のステーション１４２（４００）は、メモリデバイスとしての構成情報を、予め構成情報管理テーブル４４０にコピーしておく。これにより、第２のステーション１４２は、デバイスハンドル取得ステップにおいて、メモリデバイスである第２のステーション１４２がターゲットデバイスとして選択された場合も、構成情報を第２のホスト１４１から取得する必要が無い。ターゲットデバイスである第２のステーション１４２は、以降のトランザクション実行（中継）ステップにおいて、イニシエータ装置１００との間で転送されるデータを、内蔵する不揮発メモリモジュールに中継する。
【０２７７】
（２）ＵＳＢ
ＵＳＢプロトコルでは、図６に示した送信元ＩＤ６１２が無く、デバイスからの応答は常にホスト宛に返信される。このため、上記の実施の形態における図１５あるいは図１６に示したトランザクション実行（中継）ステップにおいて、第２のステーション１４２が第２のホスト１４１を代替してターゲットデバイス宛のデータコマンドを発行した場合も、それに対するレスポンスが第２のホスト１４１に返信されることが考えられる。
【０２７８】
そこで、第２のホスト１４１は、第２のステーション１４２にコマンド送信権を委譲する際に、図２（ｂ）に示したようなＵＳＢハブにおいて、第２のホスト１４１用ポートと第２のステーション１４２用ポートを切替える。それにより、第２のステーション１４２は、物理的にターゲットデバイスのホストを代替することができる。
【０２７９】
また、同様に、第２のホスト１４１は、第２のステーション１４２からコマンド送信権の返還を受ける際に、ＵＳＢハブのポートを元に戻すことで、物理的にターゲットデバイスのホストに戻ることができる。
【０２８０】
（３）その他
上記の実施の形態や変形例では、ステーション間ネットワーク１７０を経由してパケットを受信したステーションが必要に応じて宛先ＩＤ６１１と送信元ＩＤ６１２の書き換えを行うとして説明した。しかし、ステーション間ネットワーク１７０を経由してパケットを送信するステーションは、必要に応じて宛先ＩＤ６１１と送信元ＩＤ６１２の書き換えを行うようにしてもよい。
【産業上の利用可能性】
【０２８１】
本発明は、それぞれホストを有するネットワーク間を接続し、ネットワークを跨るデバイスとの間で透過的なトランザクションを実現することができる。このため、本発明は、ステーション、ターゲット装置、イニシエータ装置、通信システム及びその通信方法を提供することができ、有用である。
【符号の説明】
【０２８２】
１００  イニシエータ装置
１００Ａ  第１のローカルネットワーク
１０１  第１のホスト
１０２  第１のデバイス（第１のステーション）
１０３  第１のデバイス
１１０  ローカルバス
１２０  ホストコントローラ
１２１  ＣＰＵ
１２２ａ、１２２ｂ  ローカルネットワークインターフェース
１２３  ステーション間ネットワークインターフェース
１４０  ターゲット装置
１４０Ａ  第２のローカルネットワーク
１４１  第２のホスト
１４２  第２のデバイス（第２のステーション）
１４３  第２のデバイス
１４４  第２のデバイス
１５０  ローカルバス
１６０  ホストコントローラ
１６１  ＣＰＵ
１６２ａ〜１６２ｃ  ローカルネットワークインターフェース
１６３  ステーション間ネットワークインターフェース
１６４  不揮発メモリモジュール
３００  第１のステーション
３１０  ローカルバス
３１１  ローカルネットワークインターフェース
３２０  ステーション間ネットワーク
３２１  ステーション間ネットワークインターフェース
３３０  制御部
３３１  構成情報共有部
３３２  ステーション間ネットワーク初期化部
３３３  デバイスハンドル制御部
３３４  トランザクション中継部
４００  第２のステーション
４１０  ローカルバス
４１１  ローカルネットワークインターフェース
４２０  ステーション間ネットワーク
４２１  ステーション間ネットワークインターフェース
４３０  制御部
４３１  構成情報共有部
４３２  ステーション間ネットワーク初期化部
４３３  デバイスハンドル制御部
４３４  トランザクション中継部
４４０  構成情報管理テーブル
【図１】
2012127803.tif 000003
【図２】
2012127803.tif 000004
【図３】
2012127803.tif 000005
【図４】
2012127803.tif 000006
【図５】
2012127803.tif 000007
【図６】
2012127803.tif 000008
【図７】
2012127803.tif 000009
【図８】
2012127803.tif 000010
【図９】
2012127803.tif 000011
【図１０】
2012127803.tif 000012
【図１１】
2012127803.tif 000013
【図１２】
2012127803.tif 000014
【図１３】
2012127803.tif 000015
【図１４】
2012127803.tif 000016
【図１５】
2012127803.tif 000017
【図１６】
2012127803.tif 000018
【図１７】
2012127803.tif 000019
【図１８】
2012127803.tif 000020
【図１９】
2012127803.tif 000021
【図２０】
2012127803.tif 000022
【図２１】
2012127803.tif 000023
【図２２】
2012127803.tif 000024
【手続補正書】
【提出日】平成25年7月26日(2013.7.26)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ホストを含むローカルネットワークに含まれ、他のローカルネットワークとの通信を中継するステーションであって、
前記ホストとの間で前記ローカルネットワークにおける自ステーションの構成情報を共有する構成情報共有部と、
前記他のローカルネットワークから受信したデバイスハンドル取得要求に応じて、前記ローカルネットワーク内のターゲットデバイスの構成情報を前記ホストから取得し、前記デバイスハンドル取得要求に対するデバイスハンドル取得応答を前記他のローカルネットワークに返信するデバイスハンドル制御部と、
前記他のローカルネットワークから受信したコマンドと当該コマンドで指定されたトランザクションを、前記ターゲットデバイスに中継するトランザクション中継部と、
を備え、
前記トランザクション中継部は、前記デバイスハンドル制御部で取得された前記ターゲットデバイスの構成情報に基づいて、前記ホストを介さずに前記トランザクションを中継する
ことを特徴とするステーション。
【請求項２】
前記ステーションは、更に、構成情報管理テーブルを含み、
前記デバイスハンドル制御部は、前記デバイスハンドル取得要求の受信を示すデバイスハンドル取得要求通知を前記ホストに送信して前記ホストから前記ターゲットデバイスの構成情報を取得し、取得した前記ターゲットデバイスの構成情報を前記構成情報管理テーブルに保持し、
前記デバイスハンドル取得応答は、前記ターゲットデバイスの構成情報の取得の成否を示す結果フラグを含む
ことを特徴とする請求項１に記載のステーション。
【請求項３】
前記デバイスハンドル制御部は、さらに、前記他のローカルネットワークから受信したデバイスハンドル削除要求に応じて、当該デバイスハンドル削除要求の受信を示すデバイスハンドル削除要求通知を前記ホストに送信して前記構成情報管理テーブルに保持した前記ターゲットデバイスの構成情報の無効化を行い、前記デバイスハンドル削除要求に対するデバイスハンドル削除応答を前記他のローカルネットワークに返信する
ことを特徴とする請求項２に記載のステーション。
【請求項４】
前記デバイスハンドル取得要求及び前記デバイスハンドル取得要求通知は、前記ターゲットデバイスを識別するためのデバイスハンドル番号を含み、
前記デバイスハンドル制御部は、前記デバイスハンドル取得要求通知に応じて前記ホストから受け取った前記デバイスハンドル番号に対応する前記ターゲットデバイスの構成情報を前記デバイスハンドル番号に関連付けて前記構成情報管理テーブルに保持する
ことを特徴とする請求項２に記載のステーション。
【請求項５】
前記デバイスハンドル制御部は、受信した前記デバイスハンドル取得要求に含まれる前記デバイスハンドル番号に関連付けられた前記ターゲットデバイスの構成情報が前記構成情報管理テーブルに保持されていない場合にのみ、前記デバイスハンドル取得要求通知を前記ホストに送信する
ことを特徴とする請求項４に記載のステーション。
【請求項６】
前記デバイスハンドル制御部は、前記デバイスハンドル取得要求通知に応じて前記ホストからターゲットデバイスグループの各デバイスの構成情報を一括取得し、一括取得した前記ターゲットデバイスグループの前記各デバイスの前記構成情報を前記構成情報管理テーブルに保持する
ことを特徴とする請求項２に記載のステーション。
【請求項７】
前記デバイスハンドル取得応答は、前記ターゲットデバイスグループの前記各デバイスを特定する情報を含む
ことを特徴とする請求項６に記載のステーション。
【請求項８】
前記デバイスハンドル取得応答は、更に、前記ターゲットデバイスグループの前記各デバイスのデバイス種別を識別するためのデバイス種別コードを含む
ことを特徴とする請求項７に記載のステーション。
【請求項９】
前記デバイスハンドル取得要求及び前記デバイスハンドル取得要求通知は、デバイス種別を識別するためのデバイス種別コードを含み、
前記デバイスハンドル制御部は、前記デバイスハンドル取得要求通知に応じて前記デバイス種別コードに該当する各デバイスの構成情報を前記ホストから取得し、取得した前記各デバイスの前記構成情報を前記構成情報管理テーブルに保持する
ことを特徴とする請求項２に記載のステーション。
【請求項１０】
前記デバイスハンドル制御部は、前記他のローカルネットワークからのコマンドを前記デバイスハンドル取得要求として受信し、前記コマンドに対するレスポンスを前記デバイスハンドル取得応答として前記他のローカルネットワークに送信し、
前記トランザクション中継部は、前記コマンドと前記レスポンスのハンドシェークによって確定された前記他のローカルネットワークとのデータ転送を前記ターゲットデバイスに中継する
ことを特徴とする請求項１に記載のステーション。
【請求項１１】
前記コマンド、前記レスポンス及び前記データ転送に用いられる全てのパケットは、それらを対応付けるタグＩＤを含み、
前記デバイスハンドル制御部は、前記コマンドにおける前記タグＩＤを前記デバイスハンドル番号として受信する
ことを特徴とする請求項１０に記載のステーション。
【請求項１２】
前記ステーションは、前記ローカルネットワークに接続されたメモリデバイスとしての機能を果たすためのメモリ部をさらに備え、
前記構成情報共有部は、前記ホストとの間で前記ステーションとしての構成情報と前記メモリデバイスとしての構成情報を共有し、
前記ターゲットデバイスがメモリデバイスとしての前記ステーションである場合、前記トランザクション中継部は前記メモリデバイスとしての構成情報に基づいて前記トランザクションを前記メモリ部に中継する
ことを特徴とする請求項２に記載のステーション。
【請求項１３】
ホストとステーションを含む１以上のデバイスとを含むローカルネットワークを有し、前記ステーションを介してイニシエータ装置との通信を行うターゲット装置であって、
前記ホストは、前記ステーションとの間で前記ローカルネットワークにおける当該ステーションの構成情報を共有し、
前記デバイスのそれぞれは、
前記ホストとの間で前記ローカルネットワークにおける自デバイスの構成情報を共有する構成情報共有部を備え、
前記ステーションとしての前記デバイスは、更に、
前記イニシエータ装置から受信したデバイスハンドル取得要求に応じて、前記ローカルネットワーク内のターゲットデバイスの構成情報を前記ホストから取得し、前記デバイスハンドル取得要求に対するデバイスハンドル取得応答を前記イニシエータ装置に返信するデバイスハンドル制御部と、
前記イニシエータ装置から受信したコマンドと当該コマンドで指定されたトランザクションを前記ターゲットデバイスに中継するトランザクション中継部と、
を備え、
前記トランザクション中継部は、前記デバイスハンドル制御部で取得された前記ターゲットデバイスの構成情報に基づいて、前記ホストを介さずに前記トランザクションを中継する
ことを特徴とするターゲット装置。
【請求項１４】
ホストとステーションを含むローカルネットワークを有し、前記ステーションを介してターゲット装置との通信を行うイニシエータ装置であって、
前記ホストは、前記ステーションとの間で前記ローカルネットワークにおける当該ステーションの構成情報を共有し、
前記ステーションは、
前記ホストとの間で前記ローカルネットワークにおける自ステーションの構成情報を共有する構成情報共有部と、
前記ターゲット装置に含まれるターゲットデバイスとの論理的な接続を確立するためのデバイスハンドル取得要求を前記ターゲット装置に送信し、当該デバイスハンドル取得要求に対するデバイスハンドル取得応答を前記ターゲット装置から受信するデバイスハンドル制御部と、
前記ホストが前記ターゲット装置に含まれる前記ターゲットデバイスとの通信のために送信したコマンドと当該コマンドで指定されたトランザクションを、前記ターゲット装置に中継するトランザクション中継部と、
を備えることを特徴とするイニシエータ装置。
【国際調査報告】
2012127803.tif 000025
2012127803.tif 000026