JPH11511874A - リモート・サーバの単純で安全な管理を提供するための装置および方法 - Google Patents

リモート・サーバの単純で安全な管理を提供するための装置および方法

Info

Publication number
JPH11511874A
JPH11511874A JP8519188A JP51918896A JPH11511874A JP H11511874 A JPH11511874 A JP H11511874A JP 8519188 A JP8519188 A JP 8519188A JP 51918896 A JP51918896 A JP 51918896A JP H11511874 A JPH11511874 A JP H11511874A
Authority
JP
Japan
Prior art keywords
server
computer
client
network
operating system
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP8519188A
Other languages
English (en)
Other versions
JP3071469B2 (ja
Inventor
ニコレット,ジム
Original Assignee
ノベル,インコーポレイテッド
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ノベル,インコーポレイテッド filed Critical ノベル,インコーポレイテッド
Publication of JPH11511874A publication Critical patent/JPH11511874A/ja
Application granted granted Critical
Publication of JP3071469B2 publication Critical patent/JP3071469B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/547Remote procedure calls [RPC]; Web services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/177Initialisation or configuration control

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)

Abstract

(57)【要約】 安全なリモート・プロシージャ・コールのセットは、ネットワークにおいて、ローカルおよびリモート・マシンのネイティブ通信プロトコルのターム(term)を使用して実装される。リモート・プロシージャ・コールは、クライアント・コンピュータから作業をするシステム管理者が、直接インタラクトすること、および、ネットワーク・オペレーティング・システムを管理することができるようにさせる。1つもしくは複数のリモート・プロシージャ・コールは、ネットワーク・クライアント・コンピュータ・オペレーティング・システム内に組み込まれ、対応するリモート・プロシージャ・コールはサーバ・コンピュータ・オペレーティング・システム内に組込まれる。その結果として、開発者は、ネットワーク・クライアント・コンピュータを使用して、その呼び出しをサポートするサーバ・コンピュータ・オペレーティング・システムに指示を出して、リモート・サーバ・アプリケーションをロード、アンロードもしくは構成することができるクライアント・ソフトウェアを開発することができる。

Description

【発明の詳細な説明】 リモート・サーバの単純で安全な管理を提供するための装置および方法 関連出願のクロス・リファレンス 本出願は、1994年12月13日に出願された「リモート・サーバの単純で 安全な管理を提供するための装置および方法」という発明の名称の米国特許出願 第08/355,369号の継続出願である。 背景技術と技術上の問題 本願発明は、一般に、ファイル・サーバの構成(configuration)設定をリモー ト・コンピュータから制御するための方法および装置に関し、特に、ファイル・ サーバをクライアント・サーバ・ネットワーク・オペレーティング環境内のクラ イアント・コンピュータから再構成するための方法に関する。 マイクロエレクトロニクスおよびディジタル・コンピューティング・システム の技術的進展によって、ネットワーキング・サービスの、ネットワーク内にパー ティション(partition)されているコンピュータの広い範囲に及ぶ分配(distribu tion)、および、さまざまな通信メディアを通じた分配が可能になっている。ア プリケーションを分配することにおける進展は、また、アプリケーションのクラ イアント・サーバ・アーキテクチャにも帰着する。典型的なクライアント・サー バ・アーキテクチャにおいては、ユーザとインタラクトするアプリケーションの 部分は、クライアント・プロセス・リクエストを遂行するアプリケーションの部 分とは分離されているのが典型的である。典型的には、ユーザとインタラクトす るアプリケーションの部分は、クライアント(client)またはクライアント・ソフ トウェアと呼ばれ、その一方で、クライアント・ソフトウェアによってなされた リクエストにサービスするアプリケーションの部分は「サーバ(server)」もしく はサーバ・ソフトウェアと呼ばれる。しかし、サーバは他の サーバのクライアントとして動作することもある。ネットワーク環境においては 、クライアントおよびサーバは一般に、異なるコンピュータ上で実行される。 ファイル・サーバとして頻繁に参照されるようなホスト・コンピュータ上で動 作しているサーバ・ソフトウェアの管理は、様々な問題を発生させる。歴史的に は、サーバ・ソフトウェアをアンロードしたり、再構成したりする必要がある場 合は、(または、リロードする必要がある場合には、システム管理者等ネットワ ーク・アプリケーションを管理する貴任を負う人間)またはクライアント・ソフ トウェアのユーザが物理的にサーバ・コンピュータの所へ行って、サーバ・コン ピュータの入力および表示装置(たとえば、キーボードおよびモニタ)を使用し てリロードしなければならなかった。クライアント・ソフトウェアが、まだロー ドされていない、あるいは、適切に構成されていないサーバにアクセスする必要 がある場合は、システム管理者またはクライアント・ソフトウェアのユーザが物 理的にサーバ・コンピュータの所へ行って、所望のソフトウェアをロードしなけ ればならなかった。クライアントがサーバ・コンピュータに問い合わせ(interro gate)してどのサーバ・ソフトウェアが利用できるかを決める場合、または、サ ーバ・コンピュータに問い合わせしてサーバ・コンピュータによりサポートされ ているデバイスを決める場合には、システム管理者またはユーザが物理的にサー バの所へ行って、サーバ上で動作しているプロセスを検査(inspect)したり、ま たは、リモート・コンピュータに付加されているデバイスを物理的に検査しなけ ればならなかった。 以前は、リモート・コンピュータの管理は、典型的には、1つまたは2つのス キームに基づいていた。第1のスキームは、リモート・コンソールまたはログ・ イン・スキームとして知られているもので、たとえばディジタル・パケットの作 成、分配(distribution)および配信(delivery)を提供するプロトコルなどの単純 なネットワーク・プロトコルを使用するクライアント・ソフトウェアを使用(emp loy)する。クライアント・ソフトウェアは、オープン・システムズ・インターコ ネクト(Open Systems Interconnect)、つまり「OSI」モデルの「ネットワー ク」レベルで動作する。対応するサーバ・ソフトウェアは、直接クライア ント・ソフトウェアとインタラクトする。このスキームによれば、クライアント ・ソフトウェアはローカル・コンピュータ(たとえばクライアント)からの入力 を受け付けて、その入力をリモート・サーバ・ソフトウェアに送信し、今度はこ れがそのキーストロークをを直接サーバ・コンピュータ・オペレーティング・シ ステムに渡す。このスキームの特徴によれば、ローカル・コンピュータ上で入力 されたキーストロークがネットワークを介してリモート・サーバ・ソフトウェア を通って、直接リモート・オペレーティング・システムに渡されるので、使用さ れているセキュリティは、リモート・セキュリティ・アプリケーションへのアク セス用のものだけである。 第2のよく使用されるスキームは、シンプル・ネットワーク・マネージメント ・プロトコル(Simple Network Management Protocol)(「SNMP」)およびシ ンプル・マネージメント・プロトコル(Simple Management Protocol)(「SMP 」)を使用する。これらはいずれも関連し、同じ歴史的起源を有する。このスキ ームは、異種(heterogeneous)の環境における使用のために、2つのプロトコル を基本的に定義する。このスキームの主要な焦点は、どのようにしてリモート・ コンピュータを管理するかではなく、どのようにして管理目的のための異種シス テムの通信およびインタラクション(interaction)を処理すべきか、に集中して いる。今日では、このスキームの仕様書は、400ページを超えるドキュメント から構成されている。この第2のスキームは、大きな異種ネットワークにおいて は便利であるが、このスキームは、特定のリモート・ネットワーク・サーバを既 存のネットワーク・プロトコルを介してネイティブ・セッション・レベル、すな わち、OSIモデルの「セッション(Session)」レベルにおいて管理する機能の クライアント・サーバ開発のためのエレガントな機構を提供することはできない 。 一般に、全リモート・コンピュータは、ネットワーク内で他のクライアント・ コンピュータと、ネットワーク通信を実装するネットワーク・オペレーティング ・システムという手段によって、OSIモデルの「トランスポート(transport) レベル(「ネイティブ通信プロトコル(native communications protocol)」)、 たとえば、トランスミッション・コントロール・プロシージャ (Transmission Control Procedure)(「TCP」)、サーバ・メッセージ・ブロ ック(Server Message Block)(「SMB」)、あるいは、ネットウェア・コア・ プロトコル(NetWare Core Protocol)(「NCP」)などにおいて動作するネイテ ィブ接続ベースのプロトコルを使用して通信する。ネットワーク・オペレーティ ング・システムの開発者は、ローカル・コンピュータ(「ネットワーク・クライ アント」)上でネイティブ通信プロトコルを実装するクライアントを提供し、お よび、リモート・コンピュータ上でネイティブ通信プロトコルを実装するオペレ ーティング・システムを提供する。このようなネットワーク・オペレーティング ・システム用のクライアント・サーバ・ソフトウェアを書く開発者は、現在は、 リモート・コンソール・システムを使用してリモート・コンピュータとインタラ クトする方法を知るためにクライアント・ソフトウェアのユーザによることがで きるか、または、異種ネットワーク管理プロトコルを使用してアソシエート(ass ociate)・クライアント・サーバ・アプリケーションを開発して、ローカル・コ ンピュータだけではなく、さまざまなリモート・異種コンピュータをも管理する ことができるかのいずれかである。いずれも満足のいくものではない。 リモート・コンソール・アプローチは、ユーザが大変多くのことを知る必要が あり、強い(robust)セキュリティを欠いている。異種プロトコルは開発者がしな ければならないことが多すぎる。開発者は、プロトコルを実装し、クライアント およびサーバ・アプリケーションを書き、1つまたは複数のリモート・オペレー ティング・システムのシステム・インターナル(internal)にアクセスして必要な 機能を実装しなければならない。このように、ネットワーク管理者は、ネットワ ーク化されたコンピュータのリモート管理を実装する単純な手段、特に、クライ アント・サーバ・コンピューティング環境におけるネットワーク・サーバのリモ ート管理用の手段を必要としていた。 発明の要約 本願発明の一側面によれば、ネットワーク・オペレーティング・システムは、 クライアント・コンピュータ内に常駐(resident)するクライアント・ソフトウェ ア・モジュール、および、サーバ・コンピュータ上に常駐するサーバ・ソフトウ ェア・モジュールを備え、これらが一緒になると、ユーザは動的にサーバ・コン ピュータをリモートのクライアント・コンピュータ端末から再構成できるが、こ れによって、ユーザは物理的にサーバ・コンピュータの所へ行ってサーバ制御お よび再構成機能を実行する必要がなくなる。 本願発明の好適実施の形態によれば、安全なリモート・プロシージャ・コール のセットが、ネットワーク内に、ローカル(例えばクライアント)およびリモー ト(例えばサーバ)のコンピュータのネイティブ通信プロトコルのタームを使用 して実装される。リモート・プロシージャ・コールは、クライアント・ソフトウ ェアが直接リモート・コンピュータのオペレーティング・システムとインタラク トできるようにさせるため、現在利用できるスキーム固有(inherent)の問題を避 けることができる。1つまたは複数のリモート・プロシージャ・コールは、ネッ トワーク・クライアント内へ組込まれ、対応するリモート・プロシージャ・コー ルはサーバ・オペレーティング・システム内へ組込まれる。したがって、自分の リモート・サーバ・アプリケーションをロード、アンロード、または構成するこ とができるクライアント・ソフトウェアを開発したいと思う開発者は、ネットワ ーク・クライアントおよびこの呼び出しをサポートするサーバ・オペレーティン グ・システムを使用することによって、これを行うことができる。 図面の簡単な説明 本願発明については、以降に、付加された図面と組み合わせて説明するが、同 じ番号は同じ要素を意味している。 図1は、1つのサーバ・コンピュータおよび複数のクライアント・コンピュー タを示す本発明の例示的なネットワークの概略ブロック図である。 図2は、本発明により構成されトランスミット(transmit)される例示的なメッ セージ・パケットの概略図である。 図3は、本発明の一側面による例示的な方法の処理を示すフロー図である。 好適な例示的実施の形態の詳細な説明 では、図1を参照すると、例示的ネットワーク10は、好ましくは、複数のコ ンピュータを備え、そのそれぞれは、それに関連づけられたユニークな「ネット ワーク・アドレス」を有し、これによってネットワーク上のさまざまなハードウ ェア・ノード(たとえばコンピュータ)の間の通信が容易になる。典型的なネッ トワークは、PC、プリンタ、サーバ、CD ROMドライバ、および、さまざ まな他の適切なハードウェア・ノードを含むことができるが、ここでは簡単のた め、クライアントおよびサーバ・コンピュータのみが図1に示されている。 ネットワーク10は、好ましくは、1つまたは複数のクライアント・コンピュ ータ20および1つまたは複数のサーバ・コンピュータ40を備え、これらは好 ましくは、ネットワーク通信バス54によって適切なネットワーク構成内におい て相互接続(interconnect)されている。好適な例示的実施の形態によれば、少な くとも1つのクライアント・コンピュータ20は、キーボード24およびモニタ (例えばスクリーン)22を備え、ユーザがクライアント・コンピュータとイン タラクトできるようにしている。クライアント・コンピュータ20は、さらに、 ディスク・ドライブ26、クライアント・コンピュータ・プロセッサ28、RA M30、およびROM32、例えば従来のハード・ドライブなど、を備えている 。 あるクライアント・コンピュータ20へのユーザ・アクセスは、好ましくは、 様々な既知のセキュリティ・スキームによって制御することができ、このスキー ムは、あるセキュリティのレベルを有しこれに関連づけられたユーザ・パスワー ドの使用を含み、このユーザ・パスワードによってユーザは、ハード・ドライブ 32にストアされたさまざまなファイルにアクセスしたり、また、さまざまな他 のクライアント・ステーションのユーザがサーバ40とインタラクトするのと同 じ方法で、サーバ・コンピュータ40とインターフェースをしたりできるように なる。対照的に、サーバ・コンピュータ40へのアクセスは、好ましくは、スー パーユーザ・パスワードの使用を通じて制御され、スーパーユーザ・パスワード は典型的には、各ユーザ・パスワードに関連づけられたセキュリティ・レベルよ りも高いレベルに関連づけられている。 さらに続けて図1を参照すると、サーバ・コンピュータ40は、好ましくは、 キーボード42、モニタ44、サーバ・ディスク・ドライブ52、サーバ・プロ セッサ46、RAM48、および、1つまたは複数のハード・ドライブ50を備 えている。 図に示した通り、本発明の好適実施の形態は、好ましくは、複数のリモート・ プロシージャ・コールの観点から実装され、そのそれぞれは、サーバ・コンピュ ータにおける制御機能を実装するために設計されている。異なるリモート・プロ シージャ・コールは、異なるタスクを実行するために実装できる。このように、 システム管理者は、簡単に、特定のタスクをリモート・ロケーションから実行す ることができる。 本発明の1実施の形態において、リモート・プロシージャ・コールは、リモー ト・プロセスのロード、リモート・プロセスのアンロード、リモート・ボリュー ムのマウント、リモート・ボリュームのアンマウント、名前空間(name space)の ボリュームへの追加、リモート・オペレーティング・システムへのセット・プロ シージャの発行(issue)、および、リモート・バッチ・ファイルの実行のために 、実装されている。ネットワーク・クライアントにおいて、コードであって、リ モート・プロシージャ・コールの構造をサーバにおいて、および、基礎となるネ ットワーク通信プロトコルによって必要とされる形態(form)において、確認する ためのパケットを作成するコードが、実装されている。たとえば、NCPプロト コルをサポートするクライアント・サーバ環境において、クライアントおよびサ ーバ・リモート・プロシージャ・コールは一般的なNCPパケット構造に好都合 に従う。 NCPプロトコルの各ビア(veer)は、好ましくは、固定パケット・ヘッダ(fix ed packet header)および可変データ・ブロックを備える。各バーブ(verb)は3 つのフィールドを有し、これは名前および番号によってわかる。たとえば「RPC Load an NLM」(これは、「ネットウェア・ローダブル・モジュールをロードす るためのリモート・プロシージャ・コール」を意味する)などの名前自 体は、バーブが実行するタスクを記述するためにだけ役に立つ。RPC Load an NM 用に3つのフィールドに関連づけられた番号は、好ましくは、0x2222、131、 および、01である。バーブ番号(例えば全3フィールド)は、そのバーブに対 するユニークな識別子として働く。番号の最初のフィールドは、サービス・カテ ゴリーを識別する。例えば、サービス指向のNCP(service oriented NCP)は、 典型的には、0x2222を使用する。固定パケット・ヘッダは、リクエストのタイプ と、クライアントおよびサーバがリクエストについての通信を継続するために必 要な他のパラメータ、例えば、トランザクション・シーケンス番号、サービス接 続番号、およびタスク番号等、を含む。 NCPプロトコル環境 基礎となるネットワーク通信プロトコルの理解は、本発明の実装に役立つため と、ここで論ずる本発明のさまざまな実施の形態は、本発明を、NCP環境内に おけるリモート・プロシージャ・コールのセットとして実装することを与えられ ているので、典型的な本発明に対するクライアント・サーバ・リクエスト・セッ ションについて説明する。しかし、本発明は他のオペレーティング環境において も実装可能であることが理解されるだろう。 このセッションは、クライアント・ソフトウェアが最初にリモート・サーバ・ オペレーティング・システムへリモート・プロセスをロードするようリクエスト したときから、イベントのシーケンスを追跡する。リクエストをする前に、クラ イアントはリモート・コンピュータに接続されて認証(authenticate)されなけれ ばならないし、リクエストをするユーザは適切なセキュリティのレベルを有して いなければならない。本発明の1実施の形態の基本ステップ、すなわち、ネット ウェア・コア・プロトコル(NetWare Core Protocol)環境内のいわゆる「RPC Loa d an NLM」は、リモートにサーバ・プロセス(いわゆるNLM、つまり、ネット ウェア・ローダブル・モジュール(NetWare Loadable Module))ロードするため のものであり、一般的には以下のように説明できる。 1.リモート・サーバ・ソフトウェア・プロセスのサービスが必要なクライア ント・ソフトウェアは、そのローカル・コンピュータ内でも動作していなければ ならないネットワーク・クライアントへリクエストを発行する。このリクエスト は、ネットウェア環境内で、ネットウェア・シェル(NetWare shell)として知ら れているローカル・ネットワーク・クライアント内のモジュールを通じて、イン ターセプト(intercept)される。 2.ネットウェア・シェルは、そのリクエストをNCPリクエストとして解釈 し、そのリクエストをネットワーク・クライアントの別のモジュールであってN CPパケットを作成することができるものに渡す。NCPパケット作成モジュー ルは、すなわちネットウェア環境においてはNCP.VLM であるが、RPC Load an NL M バーブを作成して、これお基礎となるトランスポートの上に置く。 3.RPC Load an NLM リクエストは、次に、NCPパケットの形態で送信され る。RPC Load an NLM バーブの構造は、表1に提供されている。 4.各NCPパケットは、小さなメッセージ・ヘッダから始まるが、これは、 クライアントとサーバとの間の接続の現在の状態の一般的なステータス情報を運 ぶ。クライアント・リクエスト・ヘッダは7バイト長であり、一方、サーバのリ プライ・ヘッダは8バイト長である。表1に示す通り、RequestType 変数は、ネ ットワーク・リクエストのタイプを定義する。 0x1111というタイプは、接続アロケーション・サービスのために予約されている 。0x2222というタイプは、サーバ・リクエスト・サービスのために予約されてい る。3333というタイプは、サーバ・レスポンスのために予約されている。0x5555 というタイプは、接続のデストロイ(destroy)のために予約されている。0x9999 というタイプは、作業進行中のレスポンスのために予約されている。 5.シーケンス番号は、入ってくるリクエストすべてに対する数値によるカウ ンタであり、リプライのプライオリタイゼーション(prioritization)を提供する 。ConnectionNumberLow、および、ConnectionNumberHighなる数は、クライアン トとサーバとの間の特定のサービス接続を識別する。 TaskNumberは、どのクライアント・プロセスまたはスレッドがそのサーバに対す るリクエストを行っているのかを区別する。 6.ネットウェア環境内においては、SubFuncStrucLen は、21に、ヌル(nul l)で終わるPathAndName(ASCII)の大きさを足した数となる。NLMLoadOptionsは 、サーバ・プロセスを、リング0、1、2、または3などのプロセッサ・リング 内にロードするためのオプションを含む。この構造のPathAndName 変数は、実行 されるサーバ・ソフトウェアのロケーションのパスおよびファイル名をASCII で 含み、{ボリューム名:}{パス\... }ファイル名\0 というフォーマットで ある。 7.サーバ・オペレーティング・システムは、「RPC Load an NLM」バーブに 、表2に提供されたリプライ・フォーマットを通して応答する。パケットに含ま れた一般的メッセージ・ヘッダ情報に加えて、レスポンス・パケットはCompleti onCodeを含み、これはリクエストが成功裏に完了する場合は0、サーバが無効な サブファンクション・リクエスト、すなわち「RPC Load an NLM」バーブ構造に マッチしないようなものを受信する場合は251となる。 8.RPCcodeは、サーバ・プロセスをロードするためのリクエストについて の情報を含む。サーバ・プロセスのロードと実行が成功した場合には、RPCcode は0含むことになる。リクエストに対するレスポンスにおいてロードすべきサー バ・ソフトウェア・モジュールが見つからなかった場合や、その名前がリクエス トによって提供されていなかった場合は、サーバは158というRPCcode 値を返 すことになる。 それでは、図2と図3を参照して、動的にサーバ・コンピュータ・ファイル・ サーバをリモート・クライアントから再構成するための例示的な方法について説 明する。 ユーザはまず、ネットワーク10に関連づけられたクライアント・コンピュー タ20へログ・オンすることにより、セッション(ステップ302)を確立(est ablish)する(図1を参照)。これに関して、ネットワーク上の「セッション(se ssion)」では、典型的には、ユーザがユーザ・パスワードを入力することを要求 するが、これによって、ユーザはクライアント・コンピュータ20を利用してコ ンピュータ40に常駐しているサーバ・ファンクション(function)のためにサー バ・コンピュータ40にアクセスすることができるようになる。ユーザがサーバ ・オペレーティング・システムを、例えばソフトウェア・モジュールをオペレー ティング・システムの上へクライアント・コンピュータからロードすることによ って、再構成することを望む場合は、クライアント・アプリケーションは、所望 通りに、サーバ・オペレーティング・システムを再構成するために設計された一 連のステップを始める。 図示した実施の形態のコンテキスト(context)においては、ユーザはソフトウ ェア・モジュールをサーバ・コンピュータ・ファイル・サーバに追加したいと考 えることもありうる。ネットウェア・プロトコルを使用するネットウェア環境で は、ユーザは、ネットウェア・ローダブル・モジュール(NLM)をサーバ・ハ ード・ドライブに追加したいと望むこともありうる。より一般的なコンテキスト では、ユーザはサーバ・オペレーティング・システム・モジュール(SOSM) をサーバ・ハード・ドライブに追加したいと望むこともありうる。このようなフ ァンクションを実装するための最初のステップは、クライアント・アプリケーシ ョンがサーバ上のロードすべきSOSMをリトリーブ(retrieve)することである (ステップ304)。これに関して、SOSMはディスク・ドライブ26からロ ードすることも、ROM32からリトリーブすることも、あるいは、クライアン ト・アプリケーションがSOSMをリトリーブできるようにする他の好ましい機 構によることもできる。 図2および図3の参照を続けると、クライアント・ソフトウェアは、次に、ク ライアント・コンピュータによってサーバへトランスミット(transmit)されるメ ッセージ・パケットのコンストラクト(construct)を始める。サーバ・コンピュ ータがこのメッセージ・パケットをリトリーブする場合、サーバ・コンピュータ は、それがクライアント・コンピュータからサーバ・コンピュータのハード・ド ライブへ受信したSOSMをロードするが、これについては、以下で詳しく説明 する。このようなメッセージ・パケットをビルド(build)する際の最初のステッ プは、例示的なメッセージ・パケット200(図2を参照)のデータ・ポーショ ン202をビルドすること(ステップ306)を含む。 サーバ・ソフトウェアは、次に、ファンクション・ヘッダ204をメッセージ ・パケットに追加する(ステップ308)。ファンクション・ヘッダは、好まし くは、サーバ・コンピュータへのインストラクションのインディシア(indicia) を備えるが、これは、サーバ・コンピュータによって実行され、メッセージ・パ ケット(この例では、クライアント・コンピュータからサーバ・コンピュータへ トランスミットされるSOSM)のデータ・ポーション202の上にある1つま たは複数のファンクションに関するものである。本発明の好適実施の形態によれ ば、ファンクション・ヘッダ204は、クライアント・ソフトウェアによって、 クライアント・ソフトウェア内に常駐するファンクション・ライブラリ、すなわ ち、NCPヘッダのライブラリからセレクトされるが、そのそれぞれは、あらか じめ定めたファンクションの処理を表現するものである。 クライアント・ソフトウェアは、その後、SOSMをロードするためのリクエ ストを発行する。しかし、図示された実施の形態のコンテキストでは、このリク エストは、好ましくは、ネットウェア・シェルまたは他の適切なIPXインター フェースによって「インターセプト」され(ステップ310)、その際に、クラ イアント・ソフトウェアは適切なIPXヘッダ206をメッセージ・パケット2 00に追加する(ステップ312)。図示された実施の形態においては、IPX ヘッダは、サーバ・コンピュータであって そのリクエストがクライアント・ソ フトウェアにより向けられているサーバ・コンピュータのネットワーク・アドレ スのインディシアを備える。 メッセージをネットワークBUS上に置く前に、ワイヤ・フレーム・ヘッダ (wire frame header)208をメッセージに追加して(ステップ314)、クラ イアントからサーバへのメッセージ・パケットのトランスミッションができるよ うにすることが望ましい。本発明の一側面によれば、好ましいワイヤ・フレーム ・ヘッダ・タイプは、IEEE 802.2、802.3 、およびこれに類似するものを含むこ とができる。 それでは図3を参照すると、一度メッセージ・パケット200がすべてコンス トラクトされると、クライアント・コンピュータ20は好ましくはこのメッセー ジ・パケットをネットワークBUS54に加える(ステップ316)。 サーバ・コンピュータ40によってメッセージ・パケット200が受信される と(ステップ318)、サーバ・コンピュータ40に関連づけられた物理的なド ライバ・インターフェース(図示せず)は、ワイヤ・フレーム・ヘッダ208を ストリップ・オフ(strip off)する(ステップ320)。それからサーバ・コン ピュータ40は、IPXヘッダ206をインタロゲートして、そのメッセージが 適切にその目的とする宛先(intended destination)(たとえば、サーバ・コンピ ュータ40)に到着していることを確認して、IPXヘッダ206をストリップ ・オフする(ステップ322)。 サーバ・コンピュータ40に常駐しているサーバ・ソフトウェアは、それから 、NCPヘッダ・フィールド204をインタロゲートして、データ202上のサ ーバ・コンピュータ40によって実行されるタスクを確認(ascertain)する。ネ ットウェア環境において動作する典型的なサーバ・コンピュータにおいては、フ ァンクション・ヘッダ204は、好ましくはサーバ・コンピュータ40に関連づ けられたNCPインターフェースによってアクセスされおよび解釈される。要求 されたファンクションが決定されると、サーバ・コンピュータ40は、データ2 02上の所望のファンクションを実装する。図示された例のコンテキストにおい ては、リクエストされたファンクションは「SOSMをロード(load SOSM)」す ることである。ここで、サーバ・コンピュータ40は、好ましくは、SOSMを ハード・ドライブ50上にサーバのオペレーティング・システム・プロトコルに したがってロードする(ステップ326)。 ここで、図3を参照すると、サーバ・コンピュータ40が、クライアント・コ ンピュータ20にトランスミットして戻すレスポンス・メッセージをコンストラ クトすることが望ましいことがある。これは、たとえば、そのSOSMが適切に ロードされたことを確認するため、サーバ・コンピュータによってそのSOSM に割り当てられたファイル名および/またはアドレスをクライアント・ソフトウ ェアに知らせるため、などのためである。このプロセスの第1のステップとして 、サーバ・コンピュータ40に常駐するサーバ・ソフトウェアが、レスポンス・ メッセージをビルドすることを始める(ステップ328)。図示された実施の形 態においては、そのようなレスポンス・メッセージの「データ」部202は、例 えば、SOSMが適切にSOSMロードされたという結果に対するメッセージや 、サーバのハード・ドライブのアドレスなどを含むことができる。 サーバ・ソフトウェアは、それから、ファンクション・ヘッダ204をメッセ ージにアペンド(append)する(ステップ330)。例えば、データ202の性質 を識別するファンクション・ヘッダである。このコンテキストにおいては、ファ ンクション・ヘッダは、単に、データ部202がリプライ・メッセージに対応し ていることを示すことができる。サーバ・ソフトウェアは、その後、例えば、ク ライアント・コンピュータ20に関連づけられたネットワーク・アドレスのイン ディカティブ(indicative)などのIPXヘッダをアペンドし(ステップ332) 、その語に、適切なワイヤ・フレーム・ヘッダ208をそのメッセージに追加す る(ステップ334)。サーバ・コンピュータは、それから、好ましくはメッセ ージ・パケットをネットワーク・ワイヤ上にトランスミットする(ステップ33 6)。レスポンス・メッセージがクライアント・コンピュータによって受信され る場合は(ステップ338)、クライアント・コンピュータに関連づけられた物 理的ドライバ・インターフェース(図示せず)がメッセージ・パケットを受信し てワイヤ・フレーム・ヘッダ208をストリップ・オフする(ステップ340) 。クライアント・コンピュータに関連づけられたリディレクター(redirector)I PXインターフェースは、それから、レスポンス・メッセージを受信して、IP Xヘッダをストリップ・オフし(ステップ342)、このようにして、レスポン ス・メッセージがネットワーク上の適切なノード(例えばクライアント・コンピ ュータ20)によって受信されていることを確認する。 クライアント・コンピュータに関連づけられているNCPインターフェースは 、それから、そのファンクション・リクエストを受信して、ファンクション・ヘ ッダ204をストリップ・オフし(ステップ344)、その上で、クライアント ・ソフトウェアがそのデータを解釈する。ここで提示したケースにおいては、リ プライ・メッセージ200のデータ部202は、事実上、ユーザ・アンプリケー ション(user amplication)のコンテキストにおいて適切な情報であれば、いかな るものをも備えることができる。たとえば、SOSMが正しくロードされたこと や、サーバ・コンピュータのハード・ドライブ上のSOSMアドレスなどを示す ユーザへのメッセージである。この点に関して、クライアント・ソフトウェアが データ・フィールド202を解釈して所定のファンクションをそれにしたがって 実行することができるようなファンクション・ライブラリを利用することが所望 である。これは、たとえば、メッセージをユーザへ表示すること、または、サー バのハード・ドライブにクライアント・ソフトウェアによって常駐することとな ったSOSMへのアクセスができるようにすること(ステップ346)、によっ て行う。 図3から図6において示された方法論は、SOSM(例えばNLM)のロード を、対応するレスポンス・メッセージのコンストラクションにおいて説明するが 、添付した図面に示された一般的なスキームを使用すれば、サーバ・ハード・ド ライブ、オペレーティング・システム、または、関連づけられたハードウェア・ デバイスを、リモート・クライアント・コンピュータから制御、再構成、操作(m anipulate)、あるいは、その他のアクセスをすることができる。実際、クライア ント・コンピュータの所にいるユーザが、典型的にはサーバ・コンピュータオペ レーティング・システムへのアクセスを得るのに必要とされるシステム管理者の スーパー・パスワードを利用しなくとも、あるいは知っていない場合ですら、こ れを達成することができる。 本発明を実装するクライアント・ソフトウェア 開発者は、本発明を利用して、ネットワーク・クライアントとインタラクトし て適切なリモート・プロシージャ・コールを発行するクライアント・ソフトウェ アを開発することができる。このリモート・プロシージャ・コールは、そのクラ イアント・ソフトウェアの所望のファンクションに依存する。以下の例示的なソ フトウェア・プログラムは、現在の実施の形態において識別されるリモート・プ ロシージャ・コールのそれぞれを行う(exercise)ものである。 リモート・サービス たくさんのリモート・サービスがありうるが、現在の実施の形態においては7 つが実装されており、これは「RPC Load an NLM」、「RPC Unload an NLM」、「 RPC Mount a Volume」、「RPC Dismount a Volume」、「RPC Add Name Space to Volume」、「RPC Set Set Command Value」および「RPC Execute NCF File」を 含む。「RPC Load and NLM」は上述してある。残りについては、以下に説明する 。RPC NLM をアンロード(RPC Unload an NLM) 本発明のこの側面は、リモート・コンピュータにおいて動作しているプロセス をアンロードするためのクライアント・リクエストを処理する。このリモート・ プロシージャ・コールに対する好ましいリクエスト/リプライ・フォーマット(r equest/reply format)は、以下のように実装することができる。 SubFuncStrucLen サブ・ファンクションの長さは、好ましくは、21に文字列の最後を表わすヌ ルを含むPathAndName(ASCIIZ)のサイズを加算したものである。 PathAndName ASCII で表わしたロードすべきパスおよびファイル名。 フォーマット:{ボリューム名:}{パス\...}ファイル名\0 RPC ボリュームをマウント(RPC Mount Volume) 本発明のこの面は、クライアント・ソフトウェアがリモート・ストレージ・ボ リュームをマウントできるようにさせる。このリクエスト/リプライのフォーマ ットは以下の通りである。 SubFuncStrucLen サブ・ファンクションの長さは、21に文字列の最後を意味するヌルを含むVo lumeName(ASCIIZ)のサイズを加算したものとなる。 VolumeName マウントすべきボリューム名(ASCIIZ フォーマットで)。 フォーマット:ボリューム名\0 RPC ボリュームをディスマウント(RPC Dismount Volume) 本発明のこの側面は、リモート・コンピュータ上のボリュームをディスマウン トする。リクエスト/リプライのフォーマットは以下の通りである。 VolumeName ディスマウントすべきボリューム名(ASCIIZ フォーマットで)。 フォーマット:ボリューム名\0 RPC ボリュームへ名前空間を追加(RPC Add Name Space to Volume) 本発明のこの側面は、ユーザが、指定した名前空間をリモート・コンピュータ 上にマウントされたボリュームに動的に追加することができるようにさせる。名 前空間は、あるクライアントに対する特定の属性、たとえば、ファイル名の長さ 、ファイル・キャラクタ、ケース・センシティビティ(case sensitivity)、マル チプル(multiple)・ファイル(たとえばフォーマッティング情報を含むリソース ・ファイルなど)、ベクタ(vector)グラフィックスなどのようなファンクション をサポートしている。ネットウェア・コア・プロトコルにおけるリクエスト/リ プライのフォーマットは以下の通りである。リクエスト・フォーマット SubFuncStrucLen サブ・ファンクションの長さは、21に、文字列の終了を示すヌルを含むAddN ameSpace文字列(ASCIIZ)の大きさを加算したものである。 AddNameSpace 選択したボリューム名に名前空間を追加するためのAddNameSpace文字列(ASCII Zフォームで)である。 フォーマット:名前空間名{TO}{VOLUME}ボリューム名\0 RPC セット・コマンド値のセット(RPC Set Set Command Value) 本発明のこの側面は、クライアントが、リモート・コンピュータ上のセット・ コマンドの現在の値を変更することができるようにさせる。ネットウェア環境に おいては、セット・コマンドは、通信パラメータ、メモリ・アロケーション、フ ァイル・キャッシング(file caching)、ディレクトリ・キャッシング、ファイル ・システム・パラメータ、ファイル・ロッキング・パラメータ、トランザクショ ン・トラッキング、およびディスク管理などを決定する。リクエスト/リプライ のフォーマットは以下の通りである。リクエスト・フォーマット SubFuncStrucLen サブファンクションの長さは、21に、文字列の終了を示すヌルを含むSetCmd Nameのサイズを加算したものである。typeFlagが0 の場合は、ヌルを含むオプシ ョン文字列は、SubFuncStrucLen フィールドに含まれていなければならない。 typeFlag 0の場合は、SetCmdNameの次にあるオプション文字列は、セット・コマンドの 新しい値である。1の場合は、Value フィールドがセット・コマンドの新しい値 を含む。 Value セット・コマンド・パラメータの新しい値(typeFlag が1に等しい場合)。 SetCmdName ASCIIZフォーマットのパラメータ・コマンド名をセットする。 {オプション文字列} typeFlagが0の場合、この文字列は、新しいセット・コマンド・パラメータの 値用に使われる。セット・コマンド・パラメータのタイプ(SP_TYPE_STRING & SP _TYPE_TIME_OFFSET)は、数値ではなく文字列を必要とする。 RPC Execute NCF File 本発明のこの側面は、リモート・コンピュータ上の選択されたバッチ・ファイ ルの実行をできるようにさせる。したがって、クライアント・ソフトウェアは、 バッチ・ファイルをサーバへコピーしてから、サーバへそのバッチ・ファイルを 実行するようリクエストすることができる。このバッチ・ファイルは、基礎とな るサーバ・オペレーティング・システムの要求に従うものでなければならない。 ネットウェア・コア・プロトコルに実装された本実施の形態においては、リクエ スト/リプライのフォーマットは以下の通りである。リクエスト・フォーマット SubFuncStrucLen サブファンクションの長さは、21に、文字列の終了を示すヌルを含むPathAn dName(ASCIIZ)のサイズを加算したものである。 PathAndName 実行すべきASCIIZのパスおよびファイル名。 フォーマット:{ボリューム名:}{パス\...}ファイル名\0 セキュリティ 本発明の一側面は、ネットワーク通信プロトコルに固有のセキュリティに頼る ことができることである。ネットウェア環境においては、NCPプロトコルにお けるセキュリティは、ディジタル・パケット署名(signing)を介して提供される 。NCPネットワーク通信プロトコルにおいて使用される方法および装置は、1 994年9月20日に発行された米国特許第5,349,642号に詳細が記載 されており、ここではこれを参照することにより、この特許の開示は本明細書の 一部を構成する。 サーバの実装 サーバ内におけるリモート・プロシージャ・コールの実装は、呼び出しを適切 なサーバ・オペレーティング・システム・ファンクションにマップする。この形 式においては、このサーバ実装は、リモート・コンソール・ログインをしなくて もすむようになる。ここでは、クライアントからの各キー・ストロークがキャプ チャされ、パッケージされてサーバへ送られてから、システム・コンソールを介 して入力される。一実施の形態においては、本発明のこの側面は、ネットウェア ・サーバ環境において以下のように実装される。 このプロシージャの実装の結果として、自分のリモート・サーバ・アプリケー ションをロード、アンロード、またはさもなくば構成する機能を有するクライア ント・ソフトウェアを開発しようと考える開発者は、その呼び出しをサポートす るネットワーク・クライアントおよびサーバ・オペレーティング・システムを使 用することによりこれを行うことができる。 本発明の一実施の形態を示して説明してきたが、当業者によれば、本発明の精 神および範囲から逸脱することなく、種々の修正や変更を行うことが可能である 。
【手続補正書】 【提出日】1998年5月12日 【補正内容】 請求の範囲 1.(a)コンピュータ・プログラムを実行するための少なくとも1つのプロセ ッサを有するデバイスと、該デバイスのユーザが入力を提供しおよび該デバイス から出力を受け取ることができるようにする手段と、ネットワーク・サービスを ディジタル・パケットの手段によってリクエストしおよび受け取るための手段と を備えたネットワーク・クライアント・コンピュータと、(b)コンピュータ・ プログラムを実行するための少なくとも1つのプロセッサを有するデバイスと、 ネットワーク・サービスをディジタル・パケットの手段によってリクエストしお よび受け取るための手段とを有する少なくとも1つのネットワーク・サーバ・コ ンピュータと、(c)ネイティブな通信プロトコルを使用するネットワーク・オ ペレーティング・システムとを含むコンピュータ・ネットワークにおける該サー バ・コンピュータのそれぞれを該クライアント・コンピュータの1つからリモー トに管理する方法において、 a.ネットワーク・クライアント・アプリケーションを、ネットワーク・ オペレーティング・システムによって提供される該クライアント・ベースのプロ グラムとインタラクトさせて、該ネットワーク・クライアント・アプリケーショ ンのネットワーク管理呼び出しが、該クライアント・ベースのプログラムへ、該 ネットワーク・オペレーティング・システムによって、渡されるステップと、 b.該ネットワーク・クライアント・アプリケーションの該ネットワーク 管理呼び出しを、該ネットワーク・サーバへ、ネイティブな通信プロトコルによ って、トランスミットするステップと、 c.ネットワーク・サーバに直接、該ネットワーク管理呼び出しをネイテ ィブなオペレーティング・システム呼び出しとして実行させるステップと を備えたことを特徴とする方法。 2.(a)ネットワーク・サービスをディジタル・メッセージ・パケットの使用 を介してリクエストしおよび受け取るように構成されたネットワーク・クライア ント・コンピュータであって、該クライアント・コンピュータは、コンピュータ ・プログラムを実行するための第1のプロセッサと、ユーザ入力および出力ハー ドウェアを備え、ユニークなユーザ・アクセス・パスワードによって特徴づけら れる前記クライアント・コンピュータは、それに関連づけられたセキュリティの 第1のレベルを有し、(b)ネットワーク・サービスをディジタル・メッセージ ・パケットの使用を介してリクエストしおよび受け取るように構成されたネット ワーク・サーバ・コンピュータであって、該サーバ・コンピュータは、コンピュ ータ・プログラムを実行するためのプロセッサと、複数のソフトウェア・モジュ ールをストアするためのハード・ドライブと、RAMとを備え、管理者アクセス ・パスワードによって特徴づけられる前記サーバ・コンピュータは、それに関連 づけらえたセキュリティの第2のレベルを有し、セキュリティの第2のレベルは 、前記セキュリティの第1のレベルより高いものであり、(c)サーバ・オペレ ーティング・システムであって、ネイティブな通信プロトコルを含み、前記サー バ・コンピュータに常駐するものを含むコンピュータ・ネットワークにおける方 法において、 リモートに前記サーバ・オペレーティング・システムを前記クライアント・コ ンピュータから再構成する方法であって、 前記ユーザ・アクセス・パスワードを前記ユーザ入力ハードウェアへ入力し、 それによって、前記クライアント・コンピュータにおけるユーザ・セッションを 確立するステップと、 サーバ・プロセスを前記クライアント・コンピュータから前記サーバ・コンピ ュータへトランスミットするステップと、 前記サーバ・プロセスを、前記サーバ・コンピュータの前記ハード・ドライブ 上の第1のアドレスにストアするステップと、 前記サーバ・コンピュータから前記クライアント・コンピュータへ前記第1の アドレスのインディシアをトランスミットするステップと、 前記クライアント・コンピュータにより、ソフトウェア・モジュールをロード するリクエストを示す第1のフィールド、および、前記第1のアドレスを示す 第2のフィールドとを備えた第1のディジタル・メッセージ・パケットをコンス トラクトするステップと、 前記第1のパケットを前記クライアント・コンピュータから前記サーバ・コン ピュータへトランスミットするステップと、 前記第1および第2のフィールドを前記サーバ・オペレーティング・システム によって処理するステップと、 前記サーバ・プロセスを前記ハード・ドライブ上の前記第1のアドレスからリ トリーブするステップと、 前記サーバ・プロセスを前記RAMへロードして、それによって、動的に前記 サーバ・オペレーティング・システムを、前記管理者アクセス・パスワードを使 用せずに再構成するステップと、 レスポンス・メッセージを、前記サーバ・コンピュータにより、コンストラク トし、および、前記レスポンス・メッセージを前記クライアント・コンピュータ へ前記ロードするステップの後にトランスミットするステップであって、前記レ スポンス・メッセージは、前記サーバ・プロセスが前記RAMにロードされてい ることを示すステップと を備えたことを特徴とする方法。 .請求項2に記載の方法において、前記コンストラクトするステップは、IP Xヘッダを前記第1および第2のフィールドと共に含むメッセージ・パケットを ビルドするステップを備えたことを特徴とする方法。 .請求項2に記載の方法において、前記コンストラクトするステップは、 部分的にコンストラクトされたディジタル・メッセージ・パケットを、前記ク ライアント・コンピュータ内のルックアップ・テーブルからリトリーブするステ ップと、 前記第1および第2のフィールドを前記入力ハードウェアから受け取ったユー ザ・リクエストにしたがって操作するステップと を備えたことを特徴とする方法。 .請求項2に記載の方法において、前記コンストラクトするステップは、前記 第1および第2のフィールドに加えて前記第1のディジタル・メッセージ・パケ ットへの複数のナビゲート用フィールドを追加するステップをさらに備え、前記 処理するステップは、前記複数のフィールドをストリップ・オフして前記サーバ ・オペレーティング・システムが前記第1および第2のフィールドのみを処理す るようにするステップを備えたことを特徴とする方法。 .請求項2に記載の方法において、 クライアント・アプリケーションを前記クライアント・コンピュータにロード して前記アプリケーションを動作させるステップと、 前記アプリケーション・プログラムにより、前記サーバ・プロセスに、前記ア プリケーション・プログラムのオペレーションの間にアクセスするステップと をさらに備えたことを特徴とする方法。 .クライアント/サーバ・コンピュータ・システムにおいて、ネットワーク・ サービスをディジタル・メッセージ・パケットの使用を介してリクエストしおよ び受け取るために構成されたネットワーク・クライアント・コンピュータを備え 、前記クライアント・コンピュータはコンピュータ・プログラムを実行するため の第1のプロセス・サーバと、ネットワーク・サービス・リクエストをディジタ ル・メッセージ・パケットの使用を介して前記クライアント・コンピュータから 受け取るために構成されたネットワーク・サーバ・コンピュータとを備え、該サ ーバ・コンピュータはコンピュータ・プログラムを実行するための第2のプロセ ッサと、複数のソフトウェア・モジュールをストアするためのハード・ドライブ と、RAMと、前記サーバ・コンピュータに常駐するネイティブな通信プロトコ ルを含むサーバ・オペレーティング・システムとを備え、前記クライアント/サ ーバ・コンピュータ・システムは、 サーバ・アプリケーションを前記クライアント・コンピュータから前記サー バ・コンピュータへトランスミットする手段と、 前記サーバ・アプリケーションを前記サーバ・コンピュータの前記ハード・ド ライブ上の第1のアドレスへストアする手段と、 前記サーバ・コンピュータから前記クライアント・コンピュータヘ前記第1の アドレスのインディシアをトランスミットする手段と、 前記クライアント・コンピュータによって、ソフトウェア・モジュールをロー ドするためのリクエストのインディシアおよび前記第1のアドレスのインディシ アを備えた第1のディジタル・メッセージ・パケットをコンストラクトする手段 と、 前記第1のメッセージ・パケットを前記クライアント・コンピュータから前記 サーバ・コンピュータへトランスミットする手段と、 前記第1のパケットへのレスポンスとして、前記サーバ・アプリケーションを 前記ハード・ドライブ上の前記第1のアドレスからリトリーブする手段と、 前記サーバ・アプリケーションを前記RAMへロードして、それによって動的 に前記サーバ・オペレーティング・システムを前記クライアント・コンピュータ から再構成する手段と を備えたことを特徴とするクライアント・サーバ・コンピュータ・システム。 .請求項7に記載のコンピュータ・システムにおいて、 ユーザがユニークなユーザ・アクセス・パスワードを前記クライアント・コン ピュータに入力できるように構成されたキーボードであって、該パスワードはそ れに関連づけられたセキュリティの第1のレベルを有するものと、 前記サーバ・コンピュータに関連づけられた管理者アクセス・パスワードであ って、前記管理者アクセス・パスワードはそれに関連づけられたセキュリティの 第2のレベルを有するものと、 前記クライアント・コンピュータに前記ユーザ・アクセス・パスワードを入力 した上でユーザ・セッションを前記クライアント・コンピュータにおいて確立す る手段と、動的に前記サーバ・オペレーティング・システムを前記クライアント ・コンピュータから前記管理者アクセス・パスワードを使用せずに再構成する 手段と をさらに備えたことを特徴とするコンピュータ・システム。 .請求項7に記載のコンピュータ・システムにおいて、前記サーバ・コンピュ ータは、レスポンス・メッセージをコンストラクトして、前記レスポンス・メッ セージを前記クライアント・コンピュータへ前記サーバ・アプリケーションが前 記RAM内へロードされたことを示すためにトランスミットする手段をさらに備 えたことを特徴とするコンピュータ・システム。10 .請求項7に記載のコンピュータ・システムであって、データ・パケットを 前記クライアント・コンピュータと前記サーバ・コンピュータとの間で前記再構 成されたサーバ・オペレーティング・システムを使用してトランスミットする手 段をさらに備えたことを特徴とするコンピュータ・システム。11 .請求項7に記載のコンピュータ・システムにおいて、前記サーバ・アプリ ケーションはネットワーク・オペレーティング・システム・モジュールを備えた ことを特徴とするコンピュータ・システム。12 .請求項7に記載のコンピュータ・システムにおいて、クライアント・アプ リケーションを前記クライアント・コンピュータ上にロードして、前記クライア ント・アプリケーションを前記サーバ・アプリケーションとインタラクティブに 動作させる手段をさらに備えたことを特徴とするるコンピュータ・システム。
───────────────────────────────────────────────────── フロントページの続き (81)指定国 EP(AT,BE,CH,DE, DK,ES,FR,GB,GR,IE,IT,LU,M C,NL,PT,SE),OA(BF,BJ,CF,CG ,CI,CM,GA,GN,ML,MR,NE,SN, TD,TG),AP(KE,LS,MW,SD,SZ,U G),AM,AT,AU,BB,BG,BR,BY,C A,CH,CN,CZ,DE,DK,EE,ES,FI ,GB,GE,HU,IS,JP,KE,KG,KP, KR,KZ,LK,LR,LT,LU,LV,MD,M G,MN,MW,MX,NO,NZ,PL,PT,RO ,RU,SD,SE,SG,SI,SK,TJ,TM, TT,UA,UG,US,UZ,VN

Claims (1)

  1. 【特許請求の範囲】 1.(a)コンピュータ・プログラムを実行するための少なくとも1つのプロセ ッサを有するデバイスと、該デバイスのユーザが入力を提供しおよび該デバイス から出力を受け取ることができるようにする手段と、ネットワーク・サービスを ディジタル・パケットの手段によってリクエストしおよび受け取るための手段と を備えたネットワーク・クライアント・コンピュータと、(b)コンピュータ・ プログラムを実行するための少なくとも1つのプロセッサを有するデバイスと、 ネットワーク・サービスをディジタル・パケットの手段によってリクエストしお よび受け取るための手段とを有する少なくとも1つのネットワーク・サーバ・コ ンピュータと、(c)ネイティブな通信プロトコルを使用するネットワーク・オ ペレーティング・システムとを含むコンピュータ・ネットワークにおいて、該サ ーバ・コンピュータのそれぞれを該クライアント・コンピュータの1つからリモ ートに管理する方法であって、 a.ネットワーク・クライアント・アプリケーションを、ネットワーク・ オペレーティング・システムによって提供される該クライアント・ベースのプロ グラムとインタラクトさせて、該ネットワーク・クライアント・アプリケーショ ンのネットワーク管理呼び出しが、該クライアント・ベースのプログラムへ、該 ネットワーク・オペレーティング・システムによって、渡されるステップと、 b.該ネットワーク・クライアント・アプリケーションの該ネットワーク 管理呼び出しを、該ネットワーク・サーバへ、ネイティブな通信プロトコルによ って、トランスミットするステップと、 c.ネットワーク・サーバに直接、該ネットワーク管理呼び出しをネイテ ィブなオペレーティング・システム呼び出しとして実行させるステップと を備えたことを特徴とする方法。 2.(a)ネットワーク・サービスをディジタル・メッセージ・パケットの使用 を介してリクエストしおよび受け取るように構成されたネットワーク・クライア ント・コンピュータであって、コンピュータ・プログラムを実行するための第1 のプロセッサと、ユーザ入力および出力ハードウェアを備え、ユニークなユーザ ・アクセス・パスワードによって特徴づけられる前記クライアント・コンピュー タは、それに関連づけられたセキュリティの第1のレベルを有し、(b)ネット ワーク・サービスをディジタル・メッセージ・パケットの使用を介してリクエス トしおよび受け取るように構成されたネットワーク・サーバ・コンピュータであ って、コンピュータ・プログラムを実行するためのプロセッサと、複数のソフト ウェア・モジュールをストアするためのハード・ドライブと、RAMとを備え、 管理者アクセス・パスワードによって特徴づけられる前記サーバ・コンピュータ は、それに関連づけらえたセキュリティの第2のレベルを有し、セキュリティの 第2のレベルは、前記セキュリティの第1のレベルより高いものであり、(c) サーバ・オペレーティング・システムであって、ネイティブな通信プロトコルを 含み、前記サーバ・コンピュータに常駐するものを含むコンピュータ・ネットワ ークにおける方法であって、 リモートに前記サーバ・オペレーティング・システムを前記クライアント・コ ンピュータから再構成する方法であって、 前記ユーザ・アクセス・パスワードを前記ユーザ入力ハードウェアへ入力し、 それによって、前記クライアント・コンピュータにおけるユーザ・セッションを 確立するステップと、 サーバ・オペレーティング・システム・モジュール(SOSM)を前記クライ アント・コンピュータから前記サーバ・コンピュータへトランスミットするステ ップと、 前記SOSMを、前記サーバ・コンピュータの前記ハード・ドライブ上の第1 のアドレスにストアするステップと、 前記サーバ・コンピュータから前記クライアント・コンピュータへ前記第1の アドレスのインディシアをトランスミットするステップと、 前記クライアント・コンピュータにより、ソフトウェア・モジュールをロード するリクエストの第1のフィールド・インディカティブ、および、前記第1のア ドレスの第2のフィールド・インディカティブとを備えた第1のディジタル・メ ッセージ・パケットをコンストラクトするステップと、 前記第1のパケットを前記クライアント・コンピュータから前記サーバ・コン ピュータへトランスミットするステップと、 前記第1および第2のフィールドを前記サーバ・オペレーティング・システム によって処理するステップと、 前記SOSMを前記ハード・ドライブ上の前記第1のアドレスからリトリーブ するステップと、 前記SOSMを前記RAMへロードして、それによって、動的に前記サーバ・ オペレーティング・システムを、前記管理者アクセス・パスワードを使用せずに 再構成するステップと、 レスポンス・メッセージを、前記サーバ・コンピュータにより、コンストラク トし、および、前記レスポンス・メッセージを前記クライアント・コンピュータ へ前記ロードするステップの後にトランスミットするステップであって、前記レ スポンス・メッセージは、前記SOSMが前記RAMにロードされていることを 示すステップと を備えたことを特徴とする方法。 3.請求項2に記載の方法において、クライアント・アプリケーションを前記ク ライアント・コンピュータ上にロードするステップをさらに備えたことを特徴と する方法。 4.請求項3に記載の方法において、前記クライアント・アプリケーションを前 記クライアント・コンピュータ上で前記SOSMとインタラクティブに動作させ るステップをさらに備えたことを特徴とする方法。 5.請求項4に記載の方法において、 データ・パケットを前記クライアント・コンピュータと前記サーバ・コンピュ ータとの間で前記再構成されたサーバ・オペレーティング・システムを使用 してトランスミットするステップ をさらに備えたことを特徴とする方法。 6.請求項2に記載の方法において、前記コンストラクトするステップは、IP Xヘッダを前記第1および第2のフィールドと共に含むメッセージ・パケットを ビルドするステップを備えたことを特徴とする方法。 7.請求項2に記載の方法において、前記コンストラクトするステップは、 部分的にコンストラクトされたディジタル・メッセージ・パケットを、前記ク ライアント・コンピュータ内のルックアップ・テーブルからリトリーブするステ ップと、 前記第1および第2のフィールドを前記入力ハードウェアから受け取ったユー ザ・リクエストにしたがって操作するステップと を備えたことを特徴とする方法。 8.請求項2に記載の方法において、前記SOSMは、ネットウェア・ローダブ ル・モジュールを備えたことを特徴とする方法。 9.請求項2に記載の方法において、前記第1のフィールドは、所定のリモート ・プロシージャ・コールのインディシアを備えたことを特徴とする方法。 10.請求項9に記載の方法において、前記リモート・プロシージャ・コールは 、 RPC load and NLMと、 RPC unload and NLMと、 RPC mount a volume と、 RPC dismount a volume と、 RPC add name space to volume と、 RPC set command value と、 RPC execute NCF fileと の中の1つを備えたことを特徴とする方法。 11.請求項2に記載の方法において、前記第2のフィールドは、論理アドレス のインディシアを備えたことを特徴とする方法。 12.請求項2に記載の方法において、前記第2のフィールドは、ファイル名の インディシアを備えたことを特徴とする方法。 13.請求項2に記載の方法において、前記コンストラクトするステップは、前 記第1および第2のフィールドに加えて前記第1のディジタル・メッセージ・パ ケットへの複数のナビゲート用フィールドを追加するステップを備え、および、 前記処理するステップは、前記複数のフィールドをストリップ・オフして前記サ ーバ・オペレーティング・システムが前記第1および第2のフィールドのみを処 理するようにするステップをさらに備えたことを特徴とする方法。 14.請求項2に記載の方法において、 クライアント・アプリケーションを前記クライアント・コンピュータにロード して前記アプリケーションを動作させるステップと、 前記アプリケーション・プログラムにより、前記SOSMに、前記アプリケー ション・プログラムのオペレーションの間にアクセスするステップと をさらに備えたことを特徴とする方法。
JP08519188A 1994-12-13 1995-12-12 リモート・サーバの単純で安全な管理を提供するための装置および方法 Expired - Fee Related JP3071469B2 (ja)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US35536994A 1994-12-13 1994-12-13
US08/355,369 1994-12-13
US355,369 1994-12-13
PCT/US1995/016043 WO1996018948A1 (en) 1994-12-13 1995-12-12 Method and apparatus for providing simple, secure management of remote servers

Publications (2)

Publication Number Publication Date
JPH11511874A true JPH11511874A (ja) 1999-10-12
JP3071469B2 JP3071469B2 (ja) 2000-07-31

Family

ID=23397201

Family Applications (1)

Application Number Title Priority Date Filing Date
JP08519188A Expired - Fee Related JP3071469B2 (ja) 1994-12-13 1995-12-12 リモート・サーバの単純で安全な管理を提供するための装置および方法

Country Status (7)

Country Link
US (1) US5671414A (ja)
EP (1) EP0797801B1 (ja)
JP (1) JP3071469B2 (ja)
AU (1) AU4597196A (ja)
CA (1) CA2207849C (ja)
DE (1) DE69508431T2 (ja)
WO (1) WO1996018948A1 (ja)

Families Citing this family (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5784612A (en) * 1995-05-03 1998-07-21 International Business Machines Corporation Configuration and unconfiguration of distributed computing environment components
US5909544A (en) * 1995-08-23 1999-06-01 Novell Inc. Automated test harness
US6374287B1 (en) * 1996-01-24 2002-04-16 Sun Microsystems, Inc. Method and system for allowing client processes to run on distributed window server extensions
US7555458B1 (en) 1996-06-05 2009-06-30 Fraud Control System.Com Corporation Method of billing a purchase made over a computer network
US8229844B2 (en) 1996-06-05 2012-07-24 Fraud Control Systems.Com Corporation Method of billing a purchase made over a computer network
US20030195848A1 (en) 1996-06-05 2003-10-16 David Felger Method of billing a purchase made over a computer network
US5828840A (en) * 1996-08-06 1998-10-27 Verifone, Inc. Server for starting client application on client if client is network terminal and initiating client application on server if client is non network terminal
US6212578B1 (en) * 1996-09-09 2001-04-03 Oracle Corporation Method and apparatus for managing dependencies in a distributed computing environment for ensuring the safety of remote procedure calls
US6029171A (en) 1997-02-10 2000-02-22 Actioneer, Inc. Method and apparatus for group action processing between users of a collaboration system
US6021436A (en) * 1997-05-09 2000-02-01 Emc Corporation Automatic method for polling a plurality of heterogeneous computer systems
US5958007A (en) * 1997-05-13 1999-09-28 Phase Three Logic, Inc. Automatic and secure system for remote access to electronic mail and the internet
US6738907B1 (en) 1998-01-20 2004-05-18 Novell, Inc. Maintaining a soft-token private key store in a distributed environment
US6243738B1 (en) * 1998-04-06 2001-06-05 National Instruments Corporation Data acquisition system which includes remote access to data acquisition devices
US6119131A (en) * 1998-06-12 2000-09-12 Microsoft Corporation Persistent volume mount points
US6654881B2 (en) 1998-06-12 2003-11-25 Microsoft Corporation Logical volume mount manager
US6496839B2 (en) 1998-06-12 2002-12-17 Microsoft Corporation Persistent names for logical volumes
US6189103B1 (en) 1998-07-21 2001-02-13 Novell, Inc. Authority delegation with secure operating system queues
US6868442B1 (en) * 1998-07-29 2005-03-15 Unisys Corporation Methods and apparatus for processing administrative requests of a distributed network application executing in a clustered computing environment
US6066182A (en) 1998-11-05 2000-05-23 Platinum Technology Ip, Inc. Method and apparatus for operating system personalization during installation
US6772207B1 (en) 1999-01-28 2004-08-03 Brocade Communications Systems, Inc. System and method for managing fibre channel switching devices
US7363359B1 (en) * 1999-05-26 2008-04-22 Fujitsu Limited Element management system with automatic remote backup of network elements' local storage
US6381631B1 (en) * 1999-06-03 2002-04-30 Marimba, Inc. Method and apparatus for controlling client computer systems
US6871285B1 (en) 1999-07-07 2005-03-22 International Business Machines Corporation Method, system and program for detecting communication code information
US6553387B1 (en) * 1999-11-29 2003-04-22 Microsoft Corporation Logical volume configuration data management determines whether to expose the logical volume on-line, off-line request based on comparison of volume epoch numbers on each extents of the volume identifiers
US6684231B1 (en) * 1999-11-29 2004-01-27 Microsoft Corporation Migration of friendly volumes
CA2397740C (en) * 2000-01-14 2015-06-30 Catavault Method and system for secure registration, storage, management and linkage of personal authentication credentials data over a network
EP1256194A1 (en) 2000-02-17 2002-11-13 Lumenare Networks A system and method for remotely configuring testing laboratories
US7051338B1 (en) * 2000-03-03 2006-05-23 The Mathworks, Inc. Method and system for accessing externally-defined objects from an array-based mathematical computing environment
US6424976B1 (en) 2000-03-23 2002-07-23 Novell, Inc. Method of implementing a forward compatibility network directory syntax
US7076551B2 (en) * 2000-04-03 2006-07-11 Texas Instruments Incorporated Using remote procedure calls to manage co-processor resources
US6823463B1 (en) * 2000-05-16 2004-11-23 International Business Machines Corporation Method for providing security to a computer on a computer network
US6580606B1 (en) 2000-09-25 2003-06-17 Micron Technology, Inc. Modular drive cage assembly
US6961773B2 (en) 2001-01-19 2005-11-01 Esoft, Inc. System and method for managing application service providers
CA2372647C (en) * 2001-02-20 2010-05-04 Research In Motion Limited System and method for administrating a wireless communication network
US7839987B1 (en) 2001-11-01 2010-11-23 Callwave, Inc. Methods and systems for creating a dynamic call log and contact records
AU2003251521A1 (en) * 2002-06-13 2003-12-31 Engedi Technologies, Inc. Secure remote management appliance
US20050027807A1 (en) * 2003-07-30 2005-02-03 Lynda Fengler Systems and methods for facilitating peripheral device firmware installation
US7742586B1 (en) 2004-06-14 2010-06-22 Callwave, Inc. Enhanced service levels for call-processing services
US7818734B2 (en) 2005-01-21 2010-10-19 Callwave, Inc. Methods and systems for transferring data over a network
US8121626B1 (en) 2006-06-05 2012-02-21 Callwave, Inc. Method and systems for short message forwarding services
JP2010224942A (ja) * 2009-03-24 2010-10-07 Olympus Corp プロセッシング・エレメント及び分散処理ユニット

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4882674A (en) * 1985-03-05 1989-11-21 Wang Laboratories, Inc. Apparatus and method for control of one computer system by another computer system
US4949248A (en) * 1988-07-15 1990-08-14 Caro Marshall A System for shared remote access of multiple application programs executing in one or more computers
US5187790A (en) * 1989-06-29 1993-02-16 Digital Equipment Corporation Server impersonation of client processes in an object based computer operating system
US5257369A (en) * 1990-10-22 1993-10-26 Skeen Marion D Apparatus and method for providing decoupling of data exchange details for providing high performance communication between software processes
US5473772A (en) * 1991-04-02 1995-12-05 International Business Machines Corporation Automatic update of static and dynamic files at a remote network node in response to calls issued by or for application programs
US5218697A (en) * 1990-04-18 1993-06-08 Microsoft Corporation Method and system for networking computers having varying file architectures
US5473722A (en) * 1991-02-01 1995-12-05 Pirelli Cavi S.P.A. Rare-earth-doped lithium niobate waveguide structures
EP0501613A3 (en) * 1991-02-28 1993-09-01 Hewlett-Packard Company Heterogeneous software configuration management apparatus
US5317568A (en) * 1991-04-11 1994-05-31 Galileo International Partnership Method and apparatus for managing and facilitating communications in a distributed hetergeneous network
US5452454A (en) * 1991-12-10 1995-09-19 Digital Equipment Corporation Generic remote boot for networked workstations by creating local bootable code image
US5329619A (en) * 1992-10-30 1994-07-12 Software Ag Cooperative processing interface and communication broker for heterogeneous computing environments
US5394526A (en) * 1993-02-01 1995-02-28 Lsc, Inc. Data server for transferring selected blocks of remote file to a distributed computer network involving only single data transfer operation
US5444850A (en) * 1993-08-04 1995-08-22 Trend Micro Devices Incorporated Method and apparatus for controlling network and workstation access prior to workstation boot
US5421009A (en) * 1993-12-22 1995-05-30 Hewlett-Packard Company Method of remotely installing software directly from a central computer

Also Published As

Publication number Publication date
DE69508431T2 (de) 1999-07-15
WO1996018948A1 (en) 1996-06-20
DE69508431D1 (de) 1999-04-22
CA2207849C (en) 2000-02-22
AU4597196A (en) 1996-07-03
CA2207849A1 (en) 1996-06-20
EP0797801B1 (en) 1999-03-17
JP3071469B2 (ja) 2000-07-31
EP0797801A1 (en) 1997-10-01
US5671414A (en) 1997-09-23

Similar Documents

Publication Publication Date Title
JPH11511874A (ja) リモート・サーバの単純で安全な管理を提供するための装置および方法
WO1996018948A9 (en) Method and apparatus for providing simple, secure management of remote servers
JP4647096B2 (ja) ネットワーク接続オブジェクトを使用してネットワークへ接続するようにコンピュータを構成する方法およびシステム
US6775700B2 (en) System and method for common information model object manager proxy interface and management
US6845505B1 (en) Web request broker controlling multiple processes
US6633907B1 (en) Methods and systems for provisioning online services
EP0717339B1 (en) Access to independent network resources
US6216159B1 (en) Method and system for IP address accessibility to server applications
US8990262B2 (en) managing data center using web services
JP4738344B2 (ja) リモートアプリケーションディスカバリのためのウェブサービス
US7424540B2 (en) System and method for unified registration information collection
US7024497B1 (en) Methods for accessing remotely located devices
US20040030768A1 (en) Unified system and method for downloading code to heterogeneous devices in distributed storage area networks
US20040153493A1 (en) Method and system for remote control of a local system
US6708171B1 (en) Network proxy
JP4550067B2 (ja) 複数のプロバイダからのリモートアプリケーションショートカットのマージされたビューの提示
JPH10154078A (ja) ネットワーク・サービスへのアクセス提供方法
JP2002533830A (ja) クライアント−サーバネットワークにおいてクライアントノードの近隣プログラムを判定するための装置および方法
JPH0962523A (ja) 分散演算環境におけるイベント管理方法及びシステム
US8037190B2 (en) Managing multiple network application versions
US7735095B2 (en) Network device drivers using a communication transport
US6931427B2 (en) Method and apparatus for discovering data services in a distributed computer system
US20080281969A1 (en) Controlling access to versions of application software by a server, based on site ID
EP1061445A2 (en) Web-based enterprise management with transport neutral client interface
US7680896B2 (en) Obtaining or sending information to a device on a network by a client apparatus

Legal Events

Date Code Title Description
R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090526

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090526

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100526

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110526

Year of fee payment: 11

LAPS Cancellation because of no payment of annual fees