(57)【要約】【課題】  クライアントがネットワークを介してデバイスにアクセスできるようにし、ユーザまたは組織が複数のデバイスを購入する必要がないようにする。【解決手段】  集中型サービスがネットワークを介してクライアントからアクセスできるデバイスのプールを識別する。デバイスにはローカルデバイスまたはネットワークアクセス可能デバイスとデバイスの一部を表す構成可能ファイルとを含めることができる。デバイスを割り当てられた論理ユニット番号で識別することができる。集中型サービスは１つまたは複数のデバイスをターゲットに割り当て、クライアント情報をターゲットと関連付ける。集中型サービスは論理ユニット番号をターゲットに割り当てることができ、ターゲットをプロトコル独立のポータルに割り当てることができる。プロトコル独立のポータルは、プロトコル依存のミニポートを介して動作する。【選択図】  図２
2005071362.tif 000002
【特許請求の範囲】
【請求項１】
クライアントシステムと、ネットワークプロバイダと、ローカルにまたはネットワークを介してアクセスできる１つまたは複数のデバイスとを含むコンピュータ化ネットワーク環境で、前記ネットワークプロバイダを介して前記デバイスのうちの１つまたは複数へのクライアントシステムアクセスを提供する方法であって、
アクセスできる１つまたは複数のデバイスを識別する動作と、
前記１つまたは複数のデバイスのうちの少なくとも１つを識別し少なくとも１つの対応するデバイス識別子を含むターゲットを生成する動作と、
前記ネットワークプロバイダによって識別されたクライアント許可情報を、前記少なくとも１つのデバイスを識別する前記ターゲットと関連付ける動作と、
前記ネットワークプロバイダにあるプロトコル独立のポートドライバを介して前記ターゲットをポートに割り当てる動作と
を含むことを特徴とする方法。
【請求項２】
前記１つまたは複数のデバイスのうちの前記少なくとも１つには、ローカルアクセスプロトコルを介してローカルにアクセスすることができることを特徴とする請求項１に記載の方法。
【請求項３】
前記１つまたは複数のデバイスのうちの前記少なくとも１つは、ネットワークアクセスプロトコルを介してネットワーク上でアクセスできるネットワークデバイスであることを特徴とする請求項１に記載の方法。
【請求項４】
１つまたは複数のデバイスを識別する前記動作はさらに、前記ネットワークを介してアクセスできる１つまたは複数のデバイスを生み出す動作を含むことを特徴とする請求項１に記載の方法。
【請求項５】
１つまたは複数のデバイスを生み出す前記動作は、区分とファイルのうちの少なくとも一方を識別する動作を含み、区分とファイルのうちの前記少なくとも一方は、前記１つまたは複数のデバイスのうちの１つの少なくとも一部を表し、区分とファイルのうちの前記少なくとも一方は、前記１つまたは複数のデバイスのうちの１つの一部へのクライアント修正可能アクセスを提供するために前記ネットワークプロバイダによって構成することができることを特徴とする請求項４に記載の方法。
【請求項６】
前記プロトコル独立のポートドライバを介して、ポート、ＷＷＮ、ポータルのうちの１つまたは複数へのクライアントアクセスを提供し、それにより前記プロトコル独立のポートドライバが１つまたは複数のプロトコル依存のミニポートを介してアクセスされるようにする動作をさらに含むことを特徴とする請求項１に記載の方法。
【請求項７】
前記プロトコル独立のポートドライバおよび１つまたは複数のプロトコル依存のミニポートドライバは、集中型サービスによって管理され、前記１つまたは複数のプロトコル依存のミニポートドライバは、前記プロトコル独立のポートドライバにプラグインすることを特徴とする請求項６に記載の方法。
【請求項８】
前記１つまたは複数のプロトコル依存のミニポートドライバのうちの少なくとも１つは、イーサネット（登録商標）、トークンリング、ファイバチャネル、ＵＳＢ、無線プロトコルのうちの１つまたは複数を介して通信することを特徴とする請求項７に記載の方法。
【請求項９】
前記少なくとも１つのデバイスは、ｉＳＣＳＩプロトコルを介してアクセスできる仮想ＳＣＳＩデバイスであることを特徴とする請求項１に記載の方法。
【請求項１０】
前記仮想ＳＣＳＩデバイスは記憶デバイスであり、前記ネットワークはストレージエリアネットワークを含むことを特徴とする請求項９に記載の方法。
【請求項１１】
前記記憶デバイスは、内部または外部の磁気記憶媒体、光記憶媒体、テープバックアップドライブのうちの１つまたは複数であることを特徴とする請求項１０に記載の方法。
【請求項１２】
前記ネットワークプロバイダは、集中型ディレクトリサービスを介して、１つまたは複数のターゲットと、１つまたは複数のドライバと、１つまたは複数のクライアントについての認証情報とを管理することを特徴とする請求項１に記載の方法。
【請求項１３】
前記ネットワークデバイス識別子は、ターゲット名と、前記集中型ディレクトリサービスによって前記少なくとも１つのデバイスに割り当てられたＬＵＮとによって識別されることを特徴とする請求項１２に記載の方法。
【請求項１４】
前記論理ユニット番号は、デバイス、デバイスのプラグアンドプレイ識別子、デバイスのグローバル一意識別子、デバイスとインタフェースするデバイスドライバ、デバイスの一部を表す区分とファイルの少なくとも一方、のうちの１つまたは複数を指すことを特徴とする請求項１３に記載の方法。
【請求項１５】
クライアントシステムと、ネットワークプロバイダと、ローカルにまたはネットワークを介してアクセスできる１つまたは複数のデバイスとを含むコンピュータ化ネットワーク環境で、前記ネットワークプロバイダを介して前記デバイスのうちの１つまたは複数へのクライアントシステムアクセスを提供する方法を実施するためのコンピュータ実行可能命令を備えるコンピュータプログラム製品であって、前記方法は、
アクセスできる１つまたは複数のデバイスを識別する動作と、
前記１つまたは複数のデバイスのうちの少なくとも１つを識別するターゲットであって少なくとも１つの対応するデバイス識別子を含むターゲットを生成する動作と、
前記ネットワークプロバイダによって識別されたクライアント許可情報を、前記少なくとも１つのデバイスを識別する前記ターゲットと関連付ける動作と、
前記ネットワークプロバイダにあるプロトコル独立のポートドライバを介して前記ターゲットをポートに割り当てる動作と
を含むことを特徴とするコンピュータプログラム製品。
【請求項１６】
前記１つまたは複数のデバイスのうちの前記少なくとも１つには、ローカルアクセスプロトコルを介してローカルにアクセスすることができることを特徴とする請求項１５に記載のコンピュータプログラム製品。
【請求項１７】
前記１つまたは複数のデバイスのうちの前記少なくとも１つは、ネットワーク上でアクセスできるネットワークデバイスであることを特徴とする請求項１５に記載のコンピュータプログラム製品。
【請求項１８】
１つまたは複数のデバイスを識別する前記動作はさらに、前記ネットワークを介してアクセスできる１つまたは複数のデバイスを生み出す動作を含むことを特徴とする請求項１５に記載のコンピュータプログラム製品。
【請求項１９】
１つまたは複数のデバイスを生み出す前記動作は、区分とファイルのうちの少なくとも一方を識別する動作を含み、区分とファイルのうちの前記少なくとも一方は、前記１つまたは複数のデバイスのうちの１つの少なくとも一部を表し、区分とファイルのうちの前記少なくとも一方は、前記１つまたは複数のデバイスのうちの１つの一部へのクライアント修正可能アクセスを提供するために前記ネットワークプロバイダによって構成することができることを特徴とする請求項１８に記載のコンピュータプログラム製品。
【請求項２０】
前記プロトコル独立のポートドライバを介して、ポート、ＷＷＮ、ポータルのうちの１つまたは複数へのクライアントアクセスを提供し、それにより前記プロトコル独立のポートドライバが１つまたは複数のプロトコル依存のミニポートを介してアクセスされるようにする動作をさらに含むことを特徴とする請求項１５に記載のコンピュータプログラム製品。
【請求項２１】
前記プロトコル独立のポートドライバおよび１つまたは複数のプロトコル依存のミニポートドライバは、集中型サービスによって管理され、前記１つまたは複数のプロトコル依存のミニポートドライバは、前記プロトコル独立のポートドライバにプラグインすることを特徴とする請求項２０に記載のコンピュータプログラム製品。
【請求項２２】
前記１つまたは複数のミニポートドライバのうちの少なくとも１つは、イーサネット（登録商標）、トークンリング、ファイバチャネル、ＵＳＢ、無線プロトコルのうちの１つまたは複数を介して通信することを特徴とする請求項２１に記載のコンピュータプログラム製品。
【請求項２３】
前記少なくとも１つのデバイスは、ｉＳＣＳＩプロトコルを介してアクセスできる仮想ＳＣＳＩデバイスであることを特徴とする請求項１５に記載のコンピュータプログラム製品。
【請求項２４】
前記仮想ＳＣＳＩデバイスは記憶デバイスであり、前記ネットワークはストレージエリアネットワークを含むことを特徴とする請求項２３に記載のコンピュータプログラム製品。
【請求項２５】
前記記憶デバイスは内部または外部の磁気記憶媒体、光記憶媒体、テープバックアップドライブのうちの１つまたは複数であることを特徴とする請求項２４に記載のコンピュータプログラム製品。
【請求項２６】
前記ネットワークプロバイダは、集中型ディレクトリサービスを介して、１つまたは複数のターゲットと、１つまたは複数のドライバと、１つまたは複数のクライアントについての認証情報とを管理することを特徴とする請求項１５に記載のコンピュータプログラム製品。
【請求項２７】
前記ネットワークデバイス識別子は、ターゲット名と、前記集中型ディレクトリサービスによって前記少なくとも１つのデバイスに割り当てられたＬＵＮとによって識別されることを特徴とする請求項２６に記載のコンピュータプログラム製品。
【請求項２８】
前記ＬＵＮは、デバイス識別子、デバイスのプラグアンドプレイ識別子、デバイスのグローバル一意識別子、デバイスとインタフェースするデバイスドライバ、デバイスの一部を表す区分とファイルの少なくとも一方、のうちの１つまたは複数に割り当てられることを特徴とする請求項２７に記載のコンピュータプログラム製品。
【請求項２９】
クライアントシステムと、ネットワークプロバイダと、ローカルにまたはネットワークを介してアクセスできる１つまたは複数のデバイスとを含むコンピュータ化ネットワーク環境で、前記ネットワークプロバイダを介して前記デバイスのうちの１つまたは複数へのクライアントシステムアクセスを提供する方法であって、
アクセスできる１つまたは複数のデバイスを識別する動作と、
前記１つまたは複数のデバイスのうちの少なくとも１つを識別するターゲットであって少なくとも１つの対応するデバイス識別子を含むターゲットを生成する動作と、
前記ネットワークプロバイダによって識別されたクライアント許可情報を、前記少なくとも１つのデバイスを識別する前記ターゲットと関連付ける動作と、
ネットワークポート、ＷＷＮ、ポータルのうちの特定の１つを介して前記少なくとも１つのデバイスを前記クライアントに公開するステップであって、それにより、前記クライアントがネットワークポート、ＷＷＮ、ポータルのうちの前記特定の１つへのアクセスを有するとき、かつ前記クライアントが関連のクライアント許可を前記ネットワークプロバイダに提示したときに、前記クライアントが前記ターゲットによって識別される前記少なくとも１つのデバイスにアクセスできるようにするステップと
を含むことを特徴とする方法。
【請求項３０】
ネットワークポート、ＷＷＮ、ポータルのうちの特定の１つを介して前記少なくとも１つのデバイスを前記クライアントに公開するステップは、
前記ネットワークプロバイダにあるプロトコル独立のポートドライバを介して前記ターゲットをポートに割り当てる動作と、
前記プロトコル独立のポートドライバを介して、ポート、ＷＷＮ、ポータルのうちの前記特定の１つへのクライアントアクセスを提供し、それにより前記プロトコル独立のポートドライバが１つまたは複数のプロトコル依存のミニポートを介してアクセスされるようにする動作と
を含むことを特徴とする請求項２９に記載の方法。
【請求項３１】
ローカルの集中型サービスプロバイダとリモートの認証データベースのうちの１つまたは複数において認証されることによって、ポート、ＷＷＮ、ポータルのうちの前記特定の１つへのアクセスが前記クライアントに提供されることを特徴とする請求項３０に記載の方法。
【請求項３２】
クライアントコンピュータと、ストレージエリアネットワーク上の記憶サービスプロバイダとを含み、前記記憶サービスプロバイダが１つまたは複数の記憶デバイスを備えるコンピュータ化環境で、ｉＳＣＳＩプロトコルを介して前記記憶サービスプロバイダ上の前記記憶デバイスのうちの１つまたは複数へのアクセスを提供する方法であって、
記憶サービスプロバイダ上の１つまたは複数の記憶デバイスに対応する１つまたは複数のデバイス識別子を識別する動作であって、前記１つまたは複数の記憶デバイスはそれぞれ物理デバイス、仮想デバイス、区分、ファイルのうちの少なくとも１つによって表すことができる動作と、
前記記憶デバイスにアクセスするためのクライアント許可を識別する修正可能クライアントリソース、および前記クライアントがアクセスすることのできる前記記憶デバイスの一部を、集中型ディレクトリサービスから受け取る動作と、
前記識別されたデバイス識別子に割り当てられた１つまたは複数の論理ユニット番号を含むターゲットを生み出す動作であって、前記ターゲットへのアクセスは前記修正可能クライアントリソースに従って提供される動作と、
前記記憶デバイスへの前記クライアントコンピュータアクセスを、前記記憶サービスプロバイダ上のクライアント制約ポートを介して提供する動作であって、それにより、前記クライアントが前記クライアント制約ポートへのアクセスを有する場合に、前記クライアントが前記記憶サービスプロバイダにクライアント許可を提供することによって前記記憶デバイスにアクセスできるようにする動作と
を含むことを特徴とする方法。
【請求項３３】
集中型ディレクトリサービスは、ローカルとリモートのデータベースのうちの少なくとも一方からクライアントアクセス情報を受け取ることを特徴とする請求項３２に記載の方法。
【請求項３４】
前記記憶サービスプロバイダにおいて、前記１つまたは複数の記憶デバイスのうちの少なくとも１つにアクセスするためのクライアントコンピュータ要求を受け取ることであって、前記クライアントコンピュータ要求はプロトコル依存のミニポートを介して受け取ることと、
クライアント許可を受け取ることと、
前記クライアント許可が前記１つまたは複数の記憶デバイスのうちの前記要求された少なくとも１つに対応すると認識し、前記クライアントが前記ターゲットにアクセスする許可を有すると認識したときに、
前記ターゲット中の前記１つまたは複数の記憶デバイスのうちの前記少なくとも１つへのアクセスを前記クライアントコンピュータに提供することを
さらに含むことを特徴とする請求項３２に記載の方法。
【請求項３５】
前記クライアント制限ポートは、前記集中型サービスと、１つまたは複数のプロトコル依存のミニポートドライバを介してネットワークトラフィックを受け取るプロトコル独立のポートドライバとによって管理されることを特徴とする請求項３２に記載の方法。
【請求項３６】
前記１つまたは複数のプロトコル依存のミニポートドライバは、前記プロトコル独立のポートドライバへのプラグインであることを特徴とする請求項３５に記載の方法。
【請求項３７】
前記１つまたは複数のミニポートドライバのうちの少なくとも１つは、イーサネット（登録商標）、トークンリング、ＵＳＢ、ファイバチャネル、無線接続プロトコルのうちの１つまたは複数を介して通信することを特徴とする請求項３６に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は一般に、ストレージエリアネットワークなどで、ネットワークを介して１つまたは複数のデバイスへのクライアントアクセスを提供するためのシステム、方法、およびコンピュータプログラム製品に関し、より詳細には、アクセスするクライアントの識別に部分的に基づいてネットワークデバイスアクセスをクライアントに提供するための方法およびシステムに関する。
【背景技術】
【０００２】
コンピュータ化されたシステムがますます普及しているが、これは一部には、コンピュータ化システムが、以前なら人々が手作業で行わなければならなかったことの多くを自動化するからである。コンピュータ化システムはこれを、一部には、コンピュータケースやワークステーションなどの単一または最小限の数の構造内に、多くの様々な種類の自動化されたデバイスを含めることによって行う。例えば、デスクトップコンピュータやラップトップコンピュータなどのコンピュータ化システムは、データを処理するための中央処理装置（ＣＰＵ）と、データを記憶するためのハードドライブ、ランダムアクセスメモリ（ＲＡＭ）、読取り専用メモリ（ＲＯＭ）、フロッピー（登録商標）ディスクドライブ、コンパクトディスク読取り専用メモリ（ＣＤＲＯＭ）ドライブ、コンパクトディスク書換え可能（ＣＤＲＷ）ドライブなどを備えることができ、また、外部データ伝送のためのインタフェースを提供するＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｄｅｖｉｃｅ  Ｉｎｔｅｒｃｏｎｎｅｃｔ）カードなど、様々なハードウェアインタフェースを備える。
【０００３】
このような各デバイスは通常、コンピュータ化システム内の別の集中型ユニット（例えば「マザーボード」）を介して、コンピュータ化システムに接続される。デバイスはしばしば、例えばオスとメスのＳＣＳＩ（Ｓｍａｌｌ  Ｃｏｍｐｕｔｅｒ  Ｓｙｓｔｅｍ  Ｉｎｔｅｒｆａｃｅ）コネクタを介して、マザーボードに内部接続することができる。しかし場合によっては、デバイスは、オスとメスのユニバーサルシリアルバス（ＵＳＢ）コネクタを介して、コンピュータ化システムに外部接続することもできる（例えば外部接続型のハードドライブやＣＤＲＯＭ）。より一般的にコンピュータ化システムに外部接続されるデバイスのいくつかの例としては、プリンタ、モニタ、キーボード、モデムが挙げられ、より複雑なシステム中では、大容量テープ記憶デバイスなどのバックアップ媒体が挙げられる。
【０００４】
通常のユーザ（または「クライアント」）や組織がそのコンピュータ化システムに機能を追加したいと思うとき、クライアントまたは組織は、単純に各コンピュータシステムに追加のデバイスを加えることにいくつかの不都合を見いだす可能性がある。明らかな不都合の１つは、複数のデバイスをシステムにインストールすることが指数関数的なコスト問題を生む可能性があることであり、これは特に、複数のコンピュータ化システムを実行している組織の場合はそうである。さらに、デバイスを内部にインストールすればデバイスを集中化させることができるが、これには、コンピュータ化システムを開けてデバイスをインストールするための作業知識、ならびに様々な程度の時間および労力が必要である。
【０００５】
対照的に、外部接続型デバイスの使用は、デバイスを内部にインストールするよりもずっと容易な傾向がある。ただし、その他の不都合がある可能性もある。例えば、ユーザがＵＳＢ接続を介して大容量ハードドライブを追加したいと思うことがあり得るが、ユーザはすでに、コンピュータの２つしかないＵＳＢポートをプリンタおよびスキャナで塞いでしまっている。あるいは、外部接続型デバイスが、内部接続された場合に比べてデータ転送速度および処理速度が遅いために、性能問題を被る可能性がある。さらに、複数の外部接続型デバイスをコンピュータ化システムに追加すると、クライアントの作業空間を不要に乱すことにもなり得る。したがってクライアントまたは組織は、作業空間および性能の問題に対応するために、どのデバイスを購入するか、いくつのデバイスを購入するか、どのようにデバイスをコンピュータ化システムに接続すべきかを決定するのに、難しい評価を下す必要がある可能性がある。
【０００６】
所与のユーザが所望のデバイスをたまにしか必要としない可能性がある状況、または、大規模な組織の場合に意図されたクライアントの多くが種々のデバイスのそれぞれについて様々な程度の必要性を有する可能性がある状況では、コストの不都合は一層ひどくなる。一例として、ある組織が、いくらかの金額を費やしてすべてのクライアントシステムに１００ギガバイトのハードドライブを提供することができるが、組織内のいくらかのクライアントは１ギガバイト未満の記憶空間しか必要とせず、他のクライアントは５ギガバイトを必要とし、さらに他のクライアントは１００ギガバイト全部（またはそれ以上）の記憶空間を日常的に必要とすることがあり得る。また、組織内のいくらかのクライアントはバックアップシステムへのアクセスを必要とするが、これらのクライアントのいくらかはバックアップシステムを月に１回必要とし、他のクライアントはバックアップシステムを週に数回必要とすることがあり得る。したがって、すべてのクライアントに同じ数および種類のデバイス、ならびに各デバイスの機能への完全なアクセスを提供することは、少なくともコストおよび効率の点では不都合である。
【０００７】
現在、いくつかの現行手法は、一部にはクライアントがローカルエリアネットワークまたはワイドエリアネットワーク（ＬＡＮまたはＷＡＮ）を介してデバイスにアクセスできるようにすることによって、前述の問題に対処しようとしている。例えば、ｉＳＣＳＩ（Ｉｎｔｅｒｎｅｔ  Ｓｍａｌｌ  Ｃｏｍｐｕｔｅｒ  Ｓｙｓｔｅｍ  Ｉｎｔｅｒｆａｃｅ）では、クライアントは、ネットワークを介してＳＣＳＩコマンドを送ることによって、ＬＡＮまたはＷＡＮを介してＳＣＳＩデバイスにアクセスすることができる。さらに、オペレーティングシステムが何らかの包括的な種類のネットワークファイルおよびプリンタ共有を組み込むことは、現在では一般的である。これらの手法は、余分なデバイスを購入する必要をなくすことによっていくらかのコスト節約をもたらすことができるが、これらの手法にもいくつかの不都合が残っている。例えば、このような手法は、所与のデバイスへの画一的なアクセスによってネットワーククライアントを扱う傾向があり、したがって、クライアントがネットワークへのアクセスを有する限り、クライアントは、どのようにクライアントおよび／またはデバイスに対する許可が管理されるかに応じて、デバイスへの完全なアクセスを有するか、アクセスを全く有さないかのどちらかしかない。
【０００８】
さらに、現行手法は、より新しいまたは複数の接続プロトコルにどのように対応できるかという点で制限される傾向がある。例えばいくつかの手法は、もし異なる接続プロトコルに対応できるとしても、ネットワークプロバイダにある別個の接続ポートを介して異なる接続プロトコル（例えばファイバチャネル接続プロトコル）を可能にすることによって、異なる接続プロトコルを扱うことになる。しかし、このような手法はそれほど理想的ではない。というのは、ネットワークプロバイダは、ある種のクライアントを特定のポートだけにアクセスするよう制限したい場合があるからであり、あるいはネットワークプロバイダは、割り振ることのできる新しいポートの数に限りがある可能性があるからである。したがって、現行手法は、ネットワークプロバイダがネットワークデバイスへのクライアントアクセスを提供することができる際の十分な細分性を提供しない。
【発明の開示】
【発明が解決しようとする課題】
【０００９】
したがって、クライアントがネットワークを介してデバイスにアクセスできるようにし、それによりユーザまたは組織が複数のデバイスを購入する必要がないようにするシステムおよび方法が必要とされている。具体的には、このようなシステムおよび方法は、所与のクライアントの識別に基づいて、種々の種類のデバイスへの様々な程度のアクセスをクライアントに許可するように構成可能であるべきである。さらに、このようなシステムおよび方法は、クライアントデバイスアクセスオプションを状況に応じて広げたり狭めたりできるように、様々な接続プロトコルの場合のデバイスアクセスに対応することができるべきである。
【課題を解決するための手段】
【００１０】
本発明は一般に、ＬＡＮまたはＷＡＮを介して、コンピュータ化されたシステムデバイスへのクライアントアクセスを提供するための方法、システム、およびコンピュータプログラム製品に関し、アクセスは、少なくとも部分的にはクライアントの識別に基づく。
【００１１】
本発明の一態様によれば、ネットワーク上でアクセス可能なデバイスを、特定のグループまたは「ターゲット」の一部として識別または表現することができる。このようにして、クライアントをターゲットに割り当てること、またはターゲットから削除することができ、種々のクライアントが様々な程度で各種デバイスにアクセスできるように、デバイスを種々の方式で表すことができる。
【００１２】
一実施形態では、集中型サービスが、ローカルに利用可能なまたはネットワーク（例えばＬＡＮやＷＡＮ）を介して利用可能な１つまたは複数のデバイスを識別するが、集中型サービスはこれらのデバイスを、プラグアンドプレイ（ＰｎＰ）識別子、シンボリックリンク、完全なファイルシステムパスなどのデバイス識別子によって識別する。場合によっては、集中型サービスは、ファイルまたは区分を使用してデバイスの一部だけを表すこともでき、ファイルにそれ自体のデバイス識別子を割り当てることができる。クライアントはデバイス自体と対話するのではなく、ファイルがデバイスであるかのようにファイルと対話するので、本明細書では、集中型サービスによって生み出されたファイルを仮想デバイスと呼ぶことがある。次いで集中型サービスは、デバイス識別子のセットをターゲットの一部として割り振る。集中型サービスは、いずれかの所与のネットワーククライアントに対してターゲットを生成することもでき、あるいはクライアントのグループからアクセスすることのできるターゲットを生み出すこともできる。
【００１３】
さらに、集中型サービスは、ディレクトリサービスなどの内部データベースから受け取ったクライアント識別子およびクライアント許可のプールを維持するが、クライアント識別子およびクライアント許可は、集中型サービスがネットワークを介してアクセスする第三者データベースを介して受け取ることもできる。次いで集中型サービスは、このプールからの情報を使用して、１つまたは複数のクライアントをいずれかの所与のターゲットに割り当てる。これにより集中型サービスは、そのクライアントが割り当てられているターゲット中で識別されるデバイスだけに、クライアントアクセスを提供することができる。
【００１４】
集中型サービスはまた、１つまたは複数のネットワークポートを介して、いずれかの所与のターゲットへのクライアントアクセスを提供することもできる。プロトコル独立のポートドライバが、このプロトコル独立のポートドライバへのプラグインとしての、プロトコル依存のミニポートドライバとインタフェースすることができ、それによりクライアントは、ファイバチャネル接続、イーサネット（登録商標）、その他のプロトコルなど、任意のプロトコルを介してターゲットにアクセスすることができる。さらに、集中型サービスは特定のポート（およびプロトコル）だけを介したクライアントアクセスを提供するので、指定のネットワークポート（およびプロトコル）へのアクセスを有さないクライアントは、この指定のネットワークポートを介して提供されるターゲットにはアクセスできない。これにより、集中型サービスが様々なクライアント間ですることのできる区別が向上し、また、管理者が種々のクライアントに提供することのできるデバイスアクセスの種類が向上する。
【００１５】
本発明のその他の特徴および利点については後続の記述で述べるが、その一部はこの記述から自明であろうし、あるいは本発明の実施によってわかるであろう。本発明の特徴および利点は、添付の特許請求の範囲に特に示す手段および組合せによって実現および獲得することができる。本発明のこれらおよび他の特徴は、後続の記述および添付の特許請求の範囲からより完全に明らかになるであろうし、あるいは以下に述べるような本発明の実施によってわかるであろう。
【００１６】
本発明の前述のおよび他の利点および特徴を得ることのできる方式について述べるために、添付の図面に示す本発明の具体的な実施形態を参照して、上に簡単に述べた本発明をより具体的に述べる。これらの図面は本発明の典型的な実施形態を表すだけであって、したがって本発明の範囲を限定するものと考えるべきではないという理解の下に、本発明を、添付の図面を使用してさらに具体的かつ詳細に記述および説明する。
【発明を実施するための最良の形態】
【００１７】
本発明は、ネットワークを介してデバイスへのクライアントアクセスを提供するための方法、システム、およびコンピュータプログラム製品に及ぶ。
【００１８】
本発明の一態様によれば、集中型サービスが、１つまたは複数のデバイス識別子をターゲットに割り振る。デバイス識別子は、実際のデバイスを識別するものとすることもでき、あるいはデバイスの一部を表すデバイス上のファイルまたは区分を識別するものとすることもできる。次いで集中型サービスは、クライアントの識別またはアクセス許可に基づいてターゲットへのクライアントアクセスを構成することによって、かつネットワークプロバイダにある特定ポートを介してターゲットへのアクセスを提供することによって、デバイス（例えば区分またはファイルベースのデバイス）へのクライアントアクセスを提供する。本発明のその他の特徴および利点については、以下の記述で述べる。
【００１９】
本発明の実施形態には、後でより詳細に論じるように様々なコンピュータハードウェアを備える専用または汎用コンピュータを含めることができる。本発明の範囲内の実施形態にはまた、コンピュータ実行可能命令またはデータ構造を搬送または記憶するためのコンピュータ可読媒体も含まれる。このようなコンピュータ可読媒体は、汎用または専用コンピュータからアクセスすることのできる任意の利用可能な媒体とすることができる。限定ではなく例として、このようなコンピュータ可読媒体には、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、ＣＤ‐ＲＯＭまたはその他の光ディスク記憶装置、磁気ディスク記憶装置またはその他の磁気記憶デバイスを含めることができ、あるいは、所望のプログラムコード手段をコンピュータ実行可能命令またはデータ構造の形で搬送または記憶するのに使用でき、汎用または専用コンピュータからアクセスできる、その他の任意の媒体を含めることができる。
【００２０】
情報がネットワークまたは別の通信接続（配線式、無線、配線式と無線の組合せのいずれか）を介してコンピュータに転送または提供されるとき、コンピュータは、この接続をコンピュータ可読媒体として適切に見なす。したがって、このような接続はどれも、コンピュータ可読媒体と適切に呼ばれる。以上の組合せも、コンピュータ可読媒体の範囲内に含めるべきである。コンピュータ実行可能命令には、例えば、汎用コンピュータや専用コンピュータや専用処理デバイスに何らかの機能または機能グループを実行させる命令およびデータが含まれる。
【００２１】
図１に、ネットワークプロバイダを介してネットワーク経由で１つまたは複数のデバイスへのクライアントアクセスを提供するための一般化したブロック図を示す。図示のように、クライアント１００は、ネットワーク接続１０５を介してネットワークプロバイダ１１０にアクセスする。ネットワーク接続１０５は、標準的なイーサネット（登録商標）、トークンリンク、ファイバチャネル、ＵＳＢ、無線ネットワーク接続など、任意の種類のプロトコルを使用して確立することができ、クライアント１００がネットワークプロバイダ１１０を介してネットワーク上の他のデバイスとインタフェースすることを可能にする。本発明の一実施形態に関する後続の考察で示すように、クライアントがネットワークプロバイダ１１０と通信するためのプロトコルは様々なものとすることができる。
【００２２】
ネットワークプロバイダ１１０は、ネットワークを管理するための複数のモジュール１１５の形をとる集中型サービスを備えることができ、これらのモジュールには通信モジュール１１２、処理モジュール１１４、認証モジュール１１６、構成モジュール１１８などが含まれる。通信モジュール１１２は、例えば、ネットワーク接続１０５を介したクライアント１００とネットワークプロバイダ１１０との間の通信を処理するのに使用することができる。処理モジュール１１４は、例えば、付属するデバイスに向けられたコマンドを中継または処理するのに使用することができる。認証モジュール１１６は、ローカルデータベース１２０またはリモートデータベース１６０からの認証情報を受領および／または構成するのに使用することができる。構成モジュール１１８は、例えば、どのようにクライアント１００がリモートデバイスにアクセスするかを認証モジュール１１６中の認証情報との組合せで定める構成情報を受け取るのに使用することができる。
【００２３】
本発明によれば、これらのモジュールの組合せをネットワークプロバイダ１１０上で使用して、クライアントや、ＳＣＳＩデバイス１３０ならびにデバイス１４０および１５０など、ネットワーク上のアクセス可能デバイスを管理することができる。デバイス１３０、１４０、１５０はそれぞれ、ＳＣＳＩ接続を介してネットワークプロバイダ１１０に直接に接続されたデバイスとすることができるが、ＳＣＳＩ接続を介してネットワーク上の別のコンピュータに接続されたデバイスとすることもできる。さらに、本発明ではこれらのデバイス１３０、１４０、１５０をそれぞれＳＣＳＩデバイスとして述べることができるが、これらがすべてＳＣＳＩ接続デバイスであることはクリティカルではない。例えば、デバイスはＲＡＭディスクであってもよく、あるいは、ネットワークインタフェースケーブル、ＵＳＢ接続、ファイアワイヤ接続（米国電気電子学会ＩＥＥＥ１３９４）、パラレルインタフェース接続、シリアルインタフェース接続、ＡＴＡＰＩ（Ａｔｔａｃｈｍｅｎｔ  Ｐａｃｋｅｔ  Ｉｎｔｅｒｆａｃｅ）などを介してネットワークプロバイダ１１０または別のリモートコンピュータ（図示せず）に接続できるデバイスであってもよい。こうしたいずれの場合も、各デバイスへは、ローカルにまたはネットワークプロトコルを介してアクセス可能であるべきである。
【００２４】
さらに、ローカルデータベースサービス１２０は、クライアント識別子および許可のプールを維持することができる。ローカルデータベース１２０は、ネットワークプロバイダ１１０上のディレクトリサービスとすることができる（例えばＭＩＣＲＯＳＯＦＴ（登録商標）ＥＸＣＨＡＮＧＥ  ＳＥＲＶＥＲ（登録商標）データベース、ＭＩＣＲＯＳＯＦＴ（登録商標）ＡＣＴＩＶＥ  ＤＩＲＥＣＴＯＲＹ（登録商標）データベースなど）。あるいは、ローカルデータベース１２０は、ネットワーク接続１０５を介してリモートデータベース１６０から識別子および許可を受け取ることもでき、その場合、そのデータベースは、専用ネットワークデータベースなど別のネットワークコンピュータ上にリモートに位置する。これらの識別子および許可には、ユーザ名およびパスワード、コンタクト情報、作業グループ情報、ネットワーク識別など、多くのものを含めることができる。集中型サービスはまた、種々の種類の識別子および許可を使用して、クライアント情報を種々のセットに構成することもできる。
【００２５】
さらに、ローカルデータベース１２０および集中型サービス（例えばモジュールのセット１１５）は、ネットワーク１０５を介してアクセスすることのできるデバイスを識別するデバイス識別子のリストを維持することができ、デバイス識別子もまた、クライアント識別子の場合と同様に種々のセットに割り振ることができる。ローカルデータベース１２０および集中型サービスは、各デバイス識別子を対応する論理ユニット番号（ＬＵＮ、Ｌｏｇｉｃａｌ  Ｕｎｉｔ  Ｎｕｍｂｅｒ）に割り当てることもできる。説明すると、ＬＵＮは、ＳＣＳＩバスが複数のデバイスを区別できるようにするための、ＳＣＳＩバス上で使用される固有識別子である。
【００２６】
しかし集中型サービスは、単にデバイスを識別するだけでなく、デバイスについての別個の区分またはファイルを生み出すこともでき、区分またはファイルは、最終的には割り当てられたＬＵＮで識別することができる。これについては図３でより詳細に論じる。区分またはファイルは容易に構成することができるので、区分またはファイルベースのＳＣＳＩデバイスは、デバイスの一部だけへのクライアントアクセスを与えるための有利な方法を提供する。また、区分またはファイルを使用して、ディスクデバイスが別のデバイス種類（例えば磁気テープ）をエミュレートすることを可能にすることもできる。したがって、ネットワークプロバイダ１１０上の集中型サービスは、クライアントおよびデバイスに関する受け取った情報を使用して、例えばクライアント１００など１つまたは複数のクライアントに、例えばＳＣＳＩデバイス１３０などのデバイスへの構成可能アクセスを提供する。
【００２７】
図２に、クライアントにデバイスアクセスを提供するための様々なコンポーネントおよびモジュールを示した、本発明のより具体的な一実施形態を示す。図示のように、本発明のシステムは、集中型サービス２００を備えることができる。したがって、集中型サービス２００が前述の認証情報２１５および構成情報２２０を有するのが示してある。認証情報２１５は、様々なネットワーククライアントに関するユーザ名およびパスワードの情報を含むことができ、さらに、コンタクトデータベースの場合と同様に、作業グループ識別、ネットワークロケーション、物理ロケーションなども含むことができる。構成情報２２０は、どのように認証情報２１５を使用してデバイスへのいずれか所与のクライアントアクセスを提供するかに関する情報を含むことができる。
【００２８】
すでに述べたように、認証モジュール１１６は、ネットワークプロバイダ１１０に記憶されたローカルコンタクトデータベース（例えば図１の１２０）から認証情報２１５を受け取ることもでき、あるいは外部または第三者データベース２１０から（例えば図１のリモートデータベース１６０から）この情報を受け取ることもできる。このことは構成情報２２０についても言える。例えば組織内で、ネットワークサービスおよびデバイスアクセスを提供するあるサーバは、コンタクト情報および許可情報を提供するサーバとは別個のものとすることができる。管理者は、管理アプリケーション２０５を使用して（ネットワークプロバイダ上でローカルに、またはネットワークを介してリモートに）、どのように集中型サービス２００が認証情報２１５および構成情報２２０を実装するかを管理することができる。あるいは管理者は、管理アプリケーション２０５を使用して、各モジュール内の識別情報およびグループ化情報（２１５、２２０など）を変更することもできる。
【００２９】
最終的には、集中型サービス２００は、ネットワークプロバイダにおいてみられる１つまたは複数の対応するミニポート２３０、２３５を介して、１つまたは複数のポート２２５にデバイスアクセス情報を提供する。一般的に言えば、ポートは、特定のデバイスまたはプログラム、例えばネットワークプロバイダにあるプログラムへのアクセスをクライアントが得るための論理接続位置である。ポートは、ＴＣＰ／ＩＰ、ＵＤＰ／ＩＰ、ＩＥＥＥ１３９４、ＵＳＢやその他の任意の各種プロトコルを使用して公開することができる。例えば、ネットワークプロバイダは、クライアントがユニフォームリソースロケータ（ＵＲＬ）ｈｔｔｐ：／／１０．１．１．１：２０５０を要求したときに、ネットワークデータベースプログラムへのアクセスをクライアントに提供することができ、２０５０は任意のポート番号を表し、１０．１．１．１はバージョン４フォーマット（ＩＰｖ４）の任意のインターネットプロトコル（ＩＰ）アドレスを表す。なお、ＴＣＰ／ＩＰプロトコルでは、特定のＩＰアドレスに割り当てることのできる可能なＴＣＰポートは６５０００以上あり得るが、いくつかのポートは通常、特定のサービスのために予約される（例えば、ポート８０はハイパーテキストトランスファープロトコルＨＴＴＰのために予約される）。
【００３０】
したがって、ネットワークプロバイダは、予約済みのポート（ｉＳＣＳＩの場合のポート３２６０など）を介してクライアントアクセスを与えることもでき、あるいは、接続ベースで動的にその他のアプリケーションプロセスポート番号を各接続ごとに与えることもできる。したがって、集中型サービス２００は複数のポートを介してネットワークアクセスを提供することができることを理解されたい。これは、ｉＳＣＳＩプロトコルにおける「ポータル」と同様である。ｉＳＣＳＩでは、ｉＳＣＳＩポータルは、ＩＰアドレスと伝送制御プロトコル（ＴＣＰ）ソケット番号の組合せである。ファイバチャネルプロトコルでは、ポートまたはポータルに相当するものは、ワールドワイドネーム（ＷＷＮ）である。ただし、本発明を主にネットワークポートに関して述べるが、これは便宜上にすぎないことを理解されたい。すなわち、このネットワークプロバイダ（またはネットワークプロバイダを介して提供されるデバイス）にアクセスしたいと思ういずれかのクライアントはしたがって、適切なポート、ポータル、および／またはＷＷＮに接続することを適宜要求しなければならない。これについては後でより詳細に述べる。
【００３１】
引き続き図２を参照するが、集中型サービス２００は、最終的にはポートドライバ２２５を介してデバイスアクセスを提供する。ポートドライバはＳＣＳＩベースの記憶デバイスでよくみられるが、その他のデバイスのために存在することも可能である。したがって例えば、ＳＣＳＩポートドライバは、ＳＣＳＩバスを介した入出力（Ｉ／Ｏ）のためのサポートを提供する。ＵＳＢデバイスの場合は、ハブとホストコントローラドライバとが結合的にポートドライバの任務を実施する。ほとんどの場合、ポートドライバはプロトコル独立である。これは一部には、ポートドライバが、異なる様々なプロトコルを扱うためにオペレーティングシステムによって事前に提供されるからである。
【００３２】
しかし、本発明はミニポートドライバを提供する。ミニポートドライバは通常、追加の特定のデータトラフィックプロトコルを実装するためにネットワークおよび記憶デバイス製造業者（例えばネットワークインタフェースカードＮＩＣの製造業者）によって生み出される。ミニポート２３０および２３５のためのミニポートドライバは、ポートドライバへのプラグインとして機能して、ポートドライバがプロトコル独立のままになるようにする。このことは、少なくとも部分的には、将来のプロトコルに対するプロトコルフレキシビリティに関して、または既存のプロトコルの変更に関して、いくつかの利点をもたらす。例えば、適切なミニポートドライバが利用可能であると仮定して、無線アクセスを有するあるクライアントと、イーサネット（登録商標）アクセスを有する別のクライアントと、ＵＳＢアクセスを有する別のクライアントと、ファイバチャネルアクセスを有する別のクライアント（それぞれは異なるプロトコルを介して通信する）が、同じポートドライバを介してネットワークプロバイダに接続することができる。
【００３３】
これによってまた、集中型サービスは、接続プロトコルに関する追加の考慮事項を回避しながら、クライアントおよびターゲットを種々のポート間でよりすっきりと割り振ることができる。例えば、「マーケティング」作業グループに属するすべてのクライアントはポート３０００だけを介してネットワークプロバイダに接続し、「リサーチ」作業グループに属するすべてのクライアントはポート４０００を介してネットワークプロバイダに接続することができるように、ネットワークプロバイダは、クライアントの作業グループによってクライアントポートアクセスを割り振ることができる（仮想ローカルエリアネットワークＶＬＡＮと同様に）。ネットワークプロバイダはまた、クライアントの物理ロケーションまたはネットワークロケーションによって、あるいは適切なら接続プロトコルなどによって、ポートアクセスを割り振ることもできる。さらに、集中型サービスは、フェイルオーバおよび負荷分散のためにｉＳＣＳＩログインリダイレクションの構成を処理することもできる。
【００３４】
図２には、ＳＣＳＩまたは他の種類のデバイス２５０と直接にインタフェースする仮想ＳＣＳＩデバイス２４０も示してあり、また、例えば区分マネージャやファイルシステムベースの記憶デバイスと直接にインタフェースすることのできる区分またはファイル２４５も示してある。一実施形態では、ファイルシステムはＮＴＦＳ（Ｎｅｗ  Ｔｅｃｈｎｏｌｏｇｙ  Ｆｉｌｅ  Ｓｙｓｔｅｍ）とすることができる。ただし、ファイルシステムは、所与のデバイスで使用することのできる様々なファイルシステムのうちの任意の１つとすることができる。仮想ＳＣＳＩデバイス２４０は、どちらかと言えばＳＣＳＩデバイス２５０全体への包括的かつ間接的なアクセスポイントである。しかし、区分またはファイル２４５は、デバイスまたはファイルシステムの一部を表すものであり、この一部は、構成情報２２０に部分的に基づく。したがって例えば、区分またはファイル２４５は、デバイスまたはファイルシステム上の５０ギガバイトの空間を表すものとすることができる。ただし、管理者は後で管理アプリケーション２０５を介して構成情報２２０を改変して、区分またはファイル２４５がデバイスまたはファイルシステム上の２０ギガバイトの空間だけを表すようにすることもできる。構成可能な区分またはファイル２４５をこのようにして使用することは、本発明がコストを節約することのできる方法の１つである。すなわち、管理者が複数の記憶デバイスを購入する必要なしに、クライアントの個々の必要性に基づいて複数のクライアントにいくつかの記憶オプションを提供することによるものである。
【００３５】
一実施形態では、集中型サービス２００は、基礎をなすデバイスに限らず、仮想ＳＣＳＩデバイス２４０と区分またはファイル２４５との両方を識別する。したがって、仮想ＳＣＳＩデバイス２４０および区分またはファイル２４５は、「仮想化情報」、すなわち基礎をなすデバイスへの間接アクセスポイントを提供する。例えば、あるデバイス識別子は仮想ＳＣＳＩデバイス２４０を識別し、したがってＳＣＳＩデバイス２５０を直接には識別しない。別のデバイス識別子および区分またはファイル名は、特定のデバイスまたはファイルシステムボリュームを直接に識別するのではなく、区分またはファイル２４５を識別する。次いで、集中型サービス２００は、区分またはファイル２４５についてのＬＵＮをターゲットに割り当ててから、ポートドライバ２２５を介してこのターゲットを特定ポートに割り当てることによって、それぞれのデバイスへのクライアントアクセスを提供する。本開示からより完全に理解されるように、集中型サービスは、ＬＵＮおよびデバイス識別子（ならびにその他のクライアント情報）の集まりをターゲットの形でそれぞれのポートに割り当てることによって、ポートドライバ２２５を介してこの情報を提供する。
【００３６】
図３に、デバイスおよびクライアントの情報をターゲットに集約するための本発明の一実施形態を示す。前の各図で述べたように、デバイスは、割り当てられたＬＵＮで表すことができる。図３には、ＬＵＮ「８」を有するデバイス３１５と、ＬＵＮ「９」を有する記憶デバイス３２０と、ＬＵＮ「１０」を有する記憶デバイス３４０を示す。記憶デバイス３２０と３４０は両方とも、それぞれ１つまたは複数の区分またはファイル（例えば２４５）３２５、３３０、３３５、３４５、３５０、３５５、３６０に配分することができ、集中型サービス３００は、各区分またはファイルをそれぞれのデバイス識別子および区分またはファイル名で識別することができ、これらのデバイス識別子および区分またはファイル名を、ＬＵＮ「１」「２」「３」「４」「５」「６」などのＬＵＮに割り当てることができる。ＬＵＮ番号は、ターゲット内でのみ関係がある。したがって、同じＬＵＮが、異なるターゲットを有することができ、各ターゲット中で異なるＬＵＮ番号を有することができる。
【００３７】
論じたように、この実施形態では、各区分またはファイルは構成可能な記憶空間の割振りを表し、したがってクライアントは、どのようにその区分またはファイルが構成されているかによってのみ、それぞれの記憶装置にアクセスすることができる。例えば、記憶装置３２０は、３つの同サイズのファイル（３２５、３３０、３３５）に分割されているのが示されている。ファイル３２５、３３０、３３５がそれぞれ２５ギガバイトの空間に構成されている場合、ファイル３２５にアクセスすることのできるクライアントは、記憶装置３２０が実際には７５ギガバイトの空間の総容量を有するのに、記憶装置３２０を２５ギガバイトの空間だけしか提供しないものとして見ることになる。同様に、記憶装置３４０は、４つのファイル（３４５、３５０、３５５、３６０）に分割することができ、ファイル３４５はより大きいファイルとして示されており、ファイル３５０、３５５、３６０はより小さい同サイズのファイルとして示されている。記憶空間３４０の実際の記憶容量は１００ギガバイトだが、ファイル３４５にアクセスすることのできるクライアントは、記憶装置３４０を６０ギガバイトの記憶空間として見ることができ、ファイル３５０にアクセスすることのできるクライアントは、記憶装置３４０を２０ギガバイトの記憶空間として見ることができる。
【００３８】
前述のように、集中型サービス３００は、区分またはファイルについて個別の割振りを構成することができ、すべてのアクセス可能デバイスおよびファイルについてのＬＵＮを単純に識別することができ、どのように各デバイスにアクセスすべきかを構成することができ、あるいはこれらの任意の組合せを実施することなどができる。本発明では、集中型サービス３００は、サービスに利用可能なすべてのデバイスのデバイス識別子のプールを識別し、ＬＵＮのセットを適切に割り当てる。集中型サービスはまた、受け取ったすべてのクライアント情報３９０のプールも維持する。集中型サービスは、このクライアント情報およびデバイス情報を使用して、識別された１つまたは複数のＬＵＮを１つまたは複数のターゲット３７０および３８０に割振り、ターゲット３７０および３８０をクライアントアクセス情報（例えば認証２１５から提供されたもの）と関連付ける。
【００３９】
したがって、図３の実施形態に示すように、ターゲットＡ３７０へはクライアントＡおよびＢからアクセスすることができ、これによりクライアントＡおよびクライアントＢは、デバイス３１５に、ならびにファイル３２５を介して記憶装置３２０の一部にアクセスすることができる。ターゲットＡは、この代わりに、クライアントＡおよびクライアントＢに対して異なるＬＵＮリストを有することもできることに留意されたい。同様に、ターゲットＢ３８０は、クライアントＣがデバイス３１５に、かつファイル３４５を介して記憶装置３４０にアクセスできるようにする。したがって、クライアントＡ、クライアントＢ、クライアントＣはそれぞれ、デバイス３１５へのアクセスを有する。しかし、クライアントＡおよびＢは、ファイル３２５を介して２５ギガバイトの記憶空間を共有し、クライアントＣは、ファイル３４５を介して記憶空間３４０の６０ギガバイトを単独で使用することができる。したがって、クライアントＡ、Ｂ、Ｃは、集中型サービス３００によって割り振られた、それぞれのグループ中で表されるデバイスだけにしかアクセスできないように制限される。
【００４０】
本発明は、機能的ステップおよび／または非機能的動作を含む方法の点から述べることもできる。以下に、本発明を実施する際に実行することのできる動作およびステップについて、前の各図をいくらか参照して述べる。通常、機能的ステップは、達成される結果の点から本発明を記述し、非機能的動作は、特定の結果を達成するためのより具体的な動作を記述する。これらの機能的ステップおよび非機能的動作を特定の順序で記述し特許請求することができるが、本発明は、動作および／またはステップのどんな特定の順序や組合せにも限定されるとは限らない。
【００４１】
図４に、ネットワークプロバイダを介してネットワーク経由で１つまたは複数のデバイスへのクライアントシステムアクセスを提供する方法のフローチャートを示す。図示のように、本発明の方法は、最初に１つまたは複数のデバイスを識別する動作４００を行うことによって実施することができる。動作４００は、アクセスできる１つまたは複数のデバイスを識別することを含む。例えば、集中型サービス３００が、すべてのアクセス可能デバイスをそれぞれのデバイス識別子によって識別することができ、識別子は、デバイスを表すものでもよく（例えば仮想ＳＣＳＩデバイス２４０によって）、あるいは記憶デバイスの一部を表すものでもよい（例えばＳＣＳＩ区分またはファイル２４５によって）。集中型サービス３００はまた、新しいデバイスを生み出すこともできる。
【００４２】
デバイスが識別されると（または場合によっては生み出されると）、この方法は、ターゲット（例えば３８０）を生成する動作４１０を行うことによって実施することができる。動作４１０はターゲットを生成することを含むが、ターゲットは、１つまたは複数のデバイスのうちの少なくとも１つを識別し、少なくとも１つの対応するデバイス識別子を含む。例えば集中型サービス３００は、デバイス（例えばデバイス３１５）への参照を含むターゲット３８０を、デバイス３１５に対応するデバイス識別子を参照することによって生成することができる。あるいは、集中型サービス３００は、ＬＵＮへの参照なしでデバイスを識別するが区分またはファイル２４５についてのデバイス識別子への参照を含む、ターゲット３８０を生み出すこともできる。
【００４３】
本発明の方法は、クライアント認証をターゲットと関連付ける動作４２０も含む。動作４２０は、ネットワークプロバイダによって識別されたクライアント許可情報を、少なくとも１つのネットワークデバイスを識別するターゲットと関連付けることを含む。例えば集中型サービス３００は、クライアント情報３９０（例えば「認証」２１５）を、ローカルに、またはリモートの第三者データベース２１０から受け取ることができる。ターゲット３８０の場合、次いで集中型サービスは、適切なクライアント情報３９０をターゲットと関連付け（例えば「アクセス元：クライアントＣ」）、それにより、特に許可されたクライアント（例えば「クライアントＣ」）だけが、ターゲットによって識別されたデバイス（例えば「４」「８」）にアクセスできるようにする。同様に、クライアントがターゲットにログインしつつあるときにクライアントから受け取る許可情報を検証することも、ローカルにまたはリモートデータベースにおいて行うことができる。
【００４４】
本発明の方法はさらに、ネットワークデバイスをクライアント（例えばクライアント１００）に公開する機能ステップ４５０も含む。ステップ４５０は、ネットワークポート、ＷＷＮ、ポータルのうちの特定の１つを介して、少なくとも１つのデバイスをクライアントに公開することを含み、それにより、クライアントがネットワークポート、ＷＷＮ、ポータルのうちの特定の１つへのアクセスを有するとき、かつクライアントが関連のクライアント許可をネットワークプロバイダに提示したときに、クライアントはターゲットによって識別されたこの少なくとも１つのデバイスにアクセスすることができる。機能ステップ４５０は、プロトコル独立のポートドライバを介してターゲットをポートに割り当てる特定動作４３０を行うことによって達成することができる。動作４３０では、ネットワークプロバイダにあるプロトコル独立のポートドライバを介して、ターゲットをポートに割り当てる。例えば、集中型サービス２００は、ポート（ｉＳＣＳＩポータルやファイバチャネルＷＷＮなど）を介してクライアントアクセス可能なようにターゲット３８０を割り当てることができる。したがって、ポートが特定の作業グループまたはアプリケーションに専用になっている場合、この特定の作業グループまたはアプリケーションに対して許可されたクライアントだけが、１つまたは複数のそれぞれのミニポート２３０や２３５などによって管理されるポートを介してターゲット３８０にアクセスすることができる。
【００４５】
機能ステップ４５０はさらに、ポートへのクライアントアクセスを提供する特定動作４４０を行うことによって実施することができる。動作４４０は、プロトコル独立のポートドライバを介して、ポート、ＷＷＮ、ポータルのうちの特定の１つへのアクセスをクライアントに提供することを含み、それにより、プロトコル独立のポートドライバは、１つまたは複数のプロトコル依存のミニポートを介してアクセスされる。したがってクライアントは、適切なミニポート２３０、２３５ドライバがポートドライバ２２５ドライバへのプラグインとして存在するとき、ポートを介してポートターゲット３８０にアクセスすることができる。これによりクライアント１００は、イーサネット（登録商標）、ファイバチャネル、および／または無線プロトコルなど、複数のプロトコルを介してポートドライバ２２５にアクセスすることができる。あるいは、ミニポート２３０および２３５のためのミニポートドライバがイーサネット（登録商標）およびファイバチャネルデータ接続をそれぞれサポートするが、クライアント１００が無線プロトコルだけを介してネットワーク接続１０５を確立したい場合は、無線ミニポートドライバが存在しないので、クライアントはやはり適切なターゲットにアクセスすることができない。したがって、本発明のこの実施形態は、通常なら課されることになるオーバーヘッドおよびコストを大幅に削減しながら、デバイスおよびデバイスの一部への特定のクライアントアクセスを可能にする、フレキシブルかつ細分性のある方法を提供する。
【００４６】
図５および後続の考察は、本発明を実施するのに適したコンピューティング環境についての簡単かつ一般的な記述を提供するものである。必須ではないが本発明は、プログラムモジュールなど、ネットワーク環境中のコンピュータによって実行されるコンピュータ実行可能命令の一般的なコンテキストで述べる。一般にプログラムモジュールは、特定のタスクを実施するか特定の抽象データ型を実装するルーチン、プログラム、オブジェクト、コンポーネント、データ構造などを含む。コンピュータ実行可能命令、関連するデータ構造、プログラムモジュールは、本明細書に開示した方法のステップを実行するためのプログラムコード手段の例を表す。このような実行可能命令または関連するデータ構造の特定のシーケンスは、このようなステップで述べた機能を実施するための対応する動作の例を表す。
【００４７】
当業者なら理解するであろうが、本発明は、パーソナルコンピュータ、ハンドヘルドデバイス、マルチプロセッサシステム、マイクロプロセッサベースのまたはプログラム可能な民生用電子機器、ネットワークＰＣ、ミニコンピュータ、メインフレームコンピュータなどを含めた多くの種類のコンピュータシステム構成を有するネットワークコンピューティング環境で実施することができる。本発明は分散コンピューティング環境で実施することもでき、その場合、タスクは通信ネットワークを介して（配線式リンク、無線リンク、または配線式と無線リンクの組合せによって）リンクされたローカルとリモートの処理デバイスによって実施される。分散コンピューティング環境では、プログラムモジュールは、ローカルとリモートの両方のコンピュータ記憶媒体に位置することができる。
【００４８】
図５を参照すると、本発明を実施するための例示的なシステムは、従来型コンピュータ５２０の形の汎用コンピューティングデバイスを含み、コンピュータ５２０は、処理ユニット５２１と、システムメモリ５２２と、システムメモリ５２２を含めた様々なシステムコンポーネントを処理ユニット５２１に結合するシステムバス５２３とを備える。システムバス５２３は、様々なバスアーキテクチャのいずれかを用いた、メモリバスまたはメモリコントローラ、周辺バス、ローカルバスを含めて、いくつかの種類のバス構造のいずれかとすることができる。システムメモリは、読取り専用メモリ（ＲＯＭ）５２４およびランダムアクセスメモリ（ＲＡＭ）５２５を含む。ＲＯＭ５２４には、起動中などにコンピュータ５２０内の要素間で情報を転送するのを助ける基本ルーチンを含むＢＩＯＳ（ｂａｓｉｃ  ｉｎｐｕｔ／ｏｕｔｐｕｔ  ｓｙｓｔｅｍ）５２６を記憶することができる。
【００４９】
コンピュータ５２０はまた、磁気ハードディスク５３９に対して読み書きするための磁気ハードディスクドライブ５２７と、取外し可能な磁気ディスク５２９に対して読み書きするための磁気ディスクドライブ５２８と、ＣＤ  ＲＯＭやその他の光媒体など取外し可能な光ディスク５３１に対して読み書きするための光ディスクドライブ５３０も備えることができる。磁気ハードディスクドライブ５２７、磁気ディスクドライブ５２８、光ディスクドライブ５３０は、それぞれハードディスクドライブインタフェース５３２、磁気ディスクドライブインタフェース５３３、光ドライブインタフェース５３４によってシステムバス５２３に接続される。各ドライブおよびそれらに関連するコンピュータ記憶媒体は、コンピュータ実行可能命令、データ構造、プログラムモジュール、その他のデータの不揮発性記憶域をコンピュータ５２０に提供する。ここで述べる例示的な環境では、磁気ハードディスク５３９、取外し可能な磁気ディスク５２９、取外し可能な光ディスク５３１を採用しているが、磁気カセット、フラッシュメモリカード、ディジタル多用途ディスク、ベルヌーイカートリッジ、ＲＡＭ、ＲＯＭなど、データを記憶するための他の種類のコンピュータ可読媒体を使用することもできる。
【００５０】
ハードディスク５３９、磁気ディスク５２９、光ディスク５３１、ＲＯＭ５２４、またはＲＡＭ５２５には、オペレーティングシステム５３５、１つまたは複数のアプリケーションプログラム５３６、その他のプログラムモジュール５３７、プログラムデータ５３８を含めて、１つまたは複数のプログラムモジュールを構成するプログラムコード手段を記憶することができる。ユーザは、キーボード５４０やポインティングデバイス５４２を介して、またはマイクロホン、ジョイスティック、ゲームパッド、衛星受信アンテナ、スキャナなどその他の入力デバイス（図示せず）を介して、コンピュータ５２０にコマンドおよび情報を入力することができる。これらおよびその他の入力デバイスは、システムバス５２３に結合されたシリアルポートインタフェース５４６を介して処理ユニット５２１に接続されることが多い。あるいは入力デバイスは、パラレルポート、ゲームポート、ユニバーサルシリアルバス（ＵＳＢ）など、その他のインタフェースで接続することもできる。モニタ５４７または別の表示デバイスも、ビデオアダプタ５４８などのインタフェースを介してシステムバス５２３に接続される。モニタに加えて、パーソナルコンピュータは通常、スピーカやプリンタなど、その他の周辺出力デバイス（図示せず）も備える。
【００５１】
コンピュータ５２０は、リモートコンピュータ５４９ａおよび５４９ｂなど、１つまたは複数のリモートコンピュータへの論理接続を用いて、ネットワーク化された環境で動作することができる。リモートコンピュータ５４９ａおよび５４９ｂは、別のパーソナルコンピュータ、サーバ、ルータ、ネットワークＰＣ、ピアデバイス、またはその他の一般的なネットワークノードとすることができ、通常はコンピュータ５２０に関して上述した要素の多くまたはすべてを備える。ただし図５には、メモリ記憶デバイス５５０ａおよび５５０ｂとそれらに関連するアプリケーションプログラム５３６ａおよび５３６ｂだけを示してある。図５に示す論理接続は、ローカルエリアネットワーク（ＬＡＮ）５５１およびワイドエリアネットワーク（ＷＡＮ）５５２を含むが、これらは例としてここに提示するものであり、限定ではない。このようなネットワーキング環境は、オフィス全体または企業全体のコンピュータネットワーク、イントラネット、インターネットでよくみられる。
【００５２】
ＬＡＮネットワーキング環境で使用されるときは、コンピュータ５２０は、ネットワークインタフェースまたはアダプタ５５３を介してローカルネットワーク５５１に接続される。ＷＡＮネットワーキング環境で使用されるときは、コンピュータ５２０は、インターネットなどのワイドエリアネットワーク５５２を介した通信を確立するためのモデム５５４、無線リンク、またはその他の手段を備えることができる。モデム５５４は内蔵でも外付けでもよく、シリアルポートインタフェース５４６を介してシステムバス５２３に接続される。ネットワーク化された環境では、コンピュータ５２０に関して示したプログラムモジュールまたはその一部をリモートのメモリ記憶デバイスに記憶することができる。図示のネットワーク接続は例示的なものであり、ワイドエリアネットワーク５５２を介して通信リンクを確立するための他の手段を使用することもできることは理解されるであろう。
【００５３】
本発明は、その趣旨または本質的な特性を逸脱することなく、他の特定の形式で実施することもできる。述べた実施形態は、あらゆる点で例示的なものでしかなく限定的なものではないと考えるべきである。したがって本発明の範囲は、以上の記述によってではなく添付の特許請求の範囲によって示す。特許請求の均等物の意味および範囲に入るあらゆる変更も、その範囲に含まれるものとする。
【図面の簡単な説明】
【００５４】
【図１】ネットワークプロバイダを介してネットワーク経由で１つまたは複数のデバイスへのクライアントアクセスを提供するための一般化したブロック図である。
【図２】集中型サービスを構成情報と、かつポートを介したデバイスアクセスと相互に関係付けるブロック図によって本発明の一実施形態を示す図である。
【図３】集中型サービスをターゲット、クライアント、デバイスと関係付けるブロック図によって本発明の一実施形態を示す図である。
【図４】ネットワークプロバイダを介してネットワーク経由で１つまたは複数のネットワークデバイスへのクライアントシステムアクセスを提供する方法のフローチャートである。
【図５】本発明の方法を実施することのできるコンピューティング環境の一実施形態のブロック図である。
【符号の説明】
【００５５】
１００    クライアント
１０５    ネットワーク接続
１１０    ネットワークプロバイダ
１１２    通信モジュール
１１４    処理モジュール
１１５    モジュール
１１６    認証モジュール
１１８    構成モジュール
１２０    ローカルデータベース
１３０    ＳＣＳＩデバイス
１４０    デバイス
１５０    デバイス
１６０    リモートデータベース
２００    集中型サービス
２０５    管理アプリケーション
２１０    外部または第三者データベース
２１５    認証情報
２２０    構成情報
２２５    ポート
２３０    ミニポート
２３５    ミニポート
２４０    仮想ＳＣＳＩデバイス
２４５    区分またはファイル
２５０    ＳＣＳＩデバイス
３００    集中型サービス
３１５    デバイス８
３２０    記憶装置９
３２５    １  ファイル
３３０    ２  ファイル
３３５    ３  ファイル
３４０    記憶装置１０
３４５    ４  ファイル
３５０    ５  ファイル
３５５    ６  ファイル
３６０    ７  ファイル
３７０    ターゲットＡ
３８０    ターゲットＢ
５２１    処理ユニット
５２２    システムメモリ
５２３    システムバス
５３２    ハードディスクドライブインタフェース
５３３    磁気ディスクドライブインタフェース
５３４    光ドライブインタフェース
５３５    オペレーティングシステム
５３６    アプリケーションプログラム
５３６ａ    アプリケーションプログラム
５３６ｂ    アプリケーションプログラム
５３７    その他のプログラムモジュール
５３８    プログラムデータ
５４０    キーボード
５４６    シリアルポートインタフェース
５４７    モニタ
５４８    ビデオアダプタ
５４９ａ    リモートコンピュータ
５４９ｂ    リモートコンピュータ
５５１    ローカルエリアネットワーク
５５２    ワイドエリアネットワーク
５５３    ネットワークインタフェース
５５４    モデム
【図１】
2005071362.tif 000003
【図２】
2005071362.tif 000004
【図３】
2005071362.tif 000005
【図４】
2005071362.tif 000006
【図５】
2005071362.tif 000007