(57)【特許請求の範囲】
【請求項１】
クライアント装置と、サーバ装置とを備えた通信システムにおいて、
接続要求が発行される毎に、前記クライアント装置と前記サーバ装置との間にＴＣＰコネクションを確立するＴＣＰコネクション確立部と、
該ＴＣＰコネクション確立部で確立されたＴＣＰコネクション毎に、そのＴＣＰコネクションを介して前記クライアント装置から前記サーバ装置へ送られるＳｅｓｓｉｏｎ  ＲｅｑｕｅｓｔパケットのＮＢＴヘッダ部に設定されている前記クライアント装置のコンピュータ名をそれぞれ異なるコンピュータ名に書き換えるコンピュータ名変換部とを備えたことを特徴とする通信システム。
【請求項２】
請求項１記載の通信システムにおいて、
前記コンピュータ名変換部は、
前記クライアント装置から送られてきたパケットがＳｅｓｓｉｏｎ  Ｒｅｑｕｅｓｔパケットであるか否かを判定する解析手段と、
該解析手段でＳｅｓｓｉｏｎ  Ｒｅｑｕｅｓｔパケットであると判定されたパケットのＮＢＴヘッダ部に設定されている前記クライアント装置のコンピュータ名を書き換える書き換え手段とを備えたことを特徴とする通信システム。
【請求項３】
請求項１または２記載の通信システムにおいて、
前記Ｓｅｓｓｉｏｎ  ＲｅｑｕｅｓｔパケットのＮＢＴヘッダ部には、そのＳｅｓｓｉｏｎ  Ｒｅｑｕｅｓｔパケットが送信されるＴＣＰコネクション毎に、送信先を示すコンピュータ名としてそれぞれ異なる特定コンピュータ名が設定され、
前記コンピュータ名変換部は、前記Ｓｅｓｓｉｏｎ  ＲｅｑｕｅｓｔパケットのＮＢＴヘッダ部に設定されている前記クライアント装置のコンピュータ名を、前記Ｓｅｓｓｉｏｎ  ＲｅｑｕｅｓｔパケットのＮＢＴヘッダ部に設定されている前記特定コンピュータ名に基づいて書き換えることを特徴とする通信システム。
【請求項４】
請求項３記載の通信システムにおいて、
前記コンピュータ名変換部は、前記クライアント装置のコンピュータ名を表す文字列に前記特定コンピュータ名を表す文字列中の少なくとも一部の文字を付加することにより、前記クライアント装置のコンピュータ名を書き換えることを特徴とする通信システム。
【請求項５】
請求項１乃至４の何れか１項に記載の通信システムにおいて、
前記クライアント装置は、自装置上で動作するアプリケーションプログラムが発行する接続要求であって前記アプリケーションプログラムに対して定められている特定コンピュータ名が含まれている接続要求に従ってＴＣＰコネクション接続要求を前記ＴＣＰコネクション確立部に対して送信し、該ＴＣＰコネクション接続要求によって確立したＴＣＰコネクションを介して、ＮＢＴヘッダ部に前記特定コンピュータ名を送信先のコンピュータ名として設定し自クライアント装置のコンピュータ名を送信元のコンピュータ名として設定したＳｅｓｓｉｏｎ  Ｒｅｑｕｅｓｔパケットを送信するクライアント処理部を備えたことを特徴とする通信システム。
【請求項６】
請求項１乃至５の何れか１項に記載の通信システムにおいて、
前記ＴＣＰコネクション確立部および前記コンピュータ名変換部が、前記クライアント装置と前記サーバ装置との間に設置されたゲートウェイ装置に設けられていることを特徴とする通信システム。
【請求項７】
請求項１乃至５の何れか１項に記載の通信システムにおいて、
前記ＴＣＰコネクション確立部および前記コンピュータ名変換部が、前記クライアント装置に設けられていることを特徴とする通信システム。
【請求項８】
接続要求が発行される毎に、クライアント装置とサーバ装置との間にＴＣＰコネクションを確立するＴＣＰコネクション確立部と、
該ＴＣＰコネクション確立部で確立されたＴＣＰコネクション毎に、そのＴＣＰコネクションを介して前記クライアント装置から前記サーバ装置へ送られるＳｅｓｓｉｏｎ  ＲｅｑｕｅｓｔパケットのＮＢＴヘッダ部に設定されている前記クライアント装置のコンピュータ名をそれぞれ異なるコンピュータ名に書き換えるコンピュータ名変換部とを備えたことを特徴とするゲートウェイ装置。
【請求項９】
請求項８記載のゲートウェイ装置において、
前記コンピュータ名変換部は、
前記クライアント装置から送られてきたパケットがＳｅｓｓｉｏｎ  Ｒｅｑｕｅｓｔパケットであるか否かを判定する解析手段と、
該解析手段でＳｅｓｓｉｏｎ  Ｒｅｑｕｅｓｔパケットであると判定されたパケットのＮＢＴヘッダ部に設定されている前記クライアント装置のコンピュータ名を書き換える書き換え手段とを備えたことを特徴とするゲートウェイ装置。
【請求項１０】
請求項８または９記載のゲートウェイ装置において、
前記Ｓｅｓｓｉｏｎ  ＲｅｑｕｅｓｔパケットのＮＢＴヘッダ部には、そのＳｅｓｓｉｏｎ  Ｒｅｑｕｅｓｔパケットが送信されるＴＣＰコネクション毎に、送信先を示すコンピュータ名としてそれぞれ異なる特定コンピュータ名が設定され、
前記コンピュータ名変換部は、前記Ｓｅｓｓｉｏｎ  ＲｅｑｕｅｓｔパケットのＮＢＴヘッダ部に設定されている前記クライアント装置のコンピュータ名を、前記Ｓｅｓｓｉｏｎ  ＲｅｑｕｅｓｔパケットのＮＢＴヘッダ部に設定されている前記特定コンピュータ名に基づいて書き換えることを特徴とするゲートウェイ装置。
【請求項１１】
請求項１０記載のゲートウェイ装置において、
前記コンピュータ名変換部は、前記クライアント装置のコンピュータ名を表す文字列に前記特定コンピュータ名を表す文字列中の少なくとも一部の文字を付加することにより、前記クライアント装置のコンピュータ名を書き換えることを特徴とするゲートウェイ装置。
【請求項１２】
接続要求が発行される毎に、自クライアント装置とサーバ装置との間にＴＣＰコネクションを確立するＴＣＰコネクション確立部と、
該ＴＣＰコネクション確立部で確立されたＴＣＰコネクション毎に、そのＴＣＰコネクションを介して自クライアント装置から前記サーバ装置へ送られるＳｅｓｓｉｏｎ  ＲｅｑｕｅｓｔパケットのＮＢＴヘッダ部に設定されている自クライアント装置のコンピュータ名をそれぞれ異なるコンピュータ名に書き換えるコンピュータ名変換部とを備えたことを特徴とするクライアント装置。
【請求項１３】
請求項１２記載のクライアント装置において、
前記コンピュータ名変換部は、
自クライアント装置から前記サーバ装置へ送られるパケットがＳｅｓｓｉｏｎ  Ｒｅｑｕｅｓｔパケットであるか否かを判定する解析手段と、
該解析手段でＳｅｓｓｉｏｎ  Ｒｅｑｕｅｓｔパケットであると判定されたパケットのＮＢＴヘッダ部に設定されている自クライアント装置のコンピュータ名を書き換える書き換え手段とを備えたことを特徴とするクライアント装置。
【請求項１４】
請求項１２または１３記載のクライアント装置において、
前記Ｓｅｓｓｉｏｎ  ＲｅｑｕｅｓｔパケットのＮＢＴヘッダ部には、そのＳｅｓｓｉｏｎ  Ｒｅｑｕｅｓｔパケットが送信されるＴＣＰコネクション毎に、送信先を示すコンピュータ名としてそれぞれ異なる特定コンピュータ名が設定され、
前記コンピュータ名変換部は、前記Ｓｅｓｓｉｏｎ  ＲｅｑｕｅｓｔパケットのＮＢＴヘッダ部に設定されている自クライアント装置のコンピュータ名を、前記Ｓｅｓｓｉｏｎ  ＲｅｑｕｅｓｔパケットのＮＢＴヘッダ部に設定されている前記特定コンピュータ名に基づいて書き換えることを特徴とするクライアント装置。
【請求項１５】
請求項１４記載のクライアント装置において、
前記コンピュータ名変換部は、自クライアント装置のコンピュータ名を表す文字列に前記特定コンピュータ名を表す文字列中の少なくとも一部の文字を付加することにより、自クライアント装置のコンピュータ名を書き換えることを特徴とするクライアント装置。
【請求項１６】
請求項１２乃至１５の何れか１項に記載のクライアント装置において、
自クライアント装置上で動作するアプリケーションプログラムが発行する接続要求であって前記アプリケーションプログラムに対して定められている特定コンピュータ名が含まれている接続要求に従って前記ＴＣＰコネクション確立部に対してＴＣＰコネクション接続要求を送信し、該ＴＣＰコネクション接続要求によって確立したＴＣＰコネクションを介して、ＮＢＴヘッダ部に前記特定コンピュータ名を送信先のコンピュータ名として設定し自クライアント装置のコンピュータ名を送信元のコンピュータ名として設定したＳｅｓｓｉｏｎ  Ｒｅｑｕｅｓｔパケットを送信するクライアント処理部を備えたことを特徴とするクライアント装置。
【請求項１７】
ＴＣＰコネクション確立部が、接続要求が発行される毎に、クライアント装置とサーバ装置との間にＴＣＰコネクションを確立する第１のステップと、
コンピュータ名変換部が、前記第１のステップで確立されたＴＣＰコネクション毎に、そのＴＣＰコネクションを介して前記クライアント装置から前記サーバ装置へ送られるＳｅｓｓｉｏｎ  ＲｅｑｕｅｓｔパケットのＮＢＴヘッダ部に設定されている前記クライアント装置のコンピュータ名をそれぞれ異なるコンピュータ名に書き換える第２のステップとを含むことを特徴とするコンピュータ名変換方法。
【請求項１８】
請求項１７記載のコンピュータ名変換方法において、
前記第２のステップは、
前記ＴＣＰコネクション確立部が、前記クライアント装置から送られてきたパケットがＳｅｓｓｉｏｎ  Ｒｅｑｕｅｓｔパケットであるか否かを判定する第３のステップと、
前記ＴＣＰコネクション確立部が、前記第３のステップでＳｅｓｓｉｏｎ  Ｒｅｑｕｅｓｔパケットであると判定されたパケットのＮＢＴヘッダ部に設定されている前記クライアント装置のコンピュータ名を書き換える第４のステップとを含むことを特徴とするコンピュータ名変換方法。
【請求項１９】
請求項１７または１８記載のコンピュータ名変換方法において、
前記Ｓｅｓｓｉｏｎ  ＲｅｑｕｅｓｔパケットのＮＢＴヘッダ部には、そのＳｅｓｓｉｏｎ  Ｒｅｑｕｅｓｔパケットが送信されるＴＣＰコネクション毎に、送信先を示すコンピュータ名としてそれぞれ異なる特定コンピュータ名が設定され、
前記第２のステップでは、前記ＴＣＰコネクション確立部が、前記Ｓｅｓｓｉｏｎ  ＲｅｑｕｅｓｔパケットのＮＢＴヘッダ部に設定されている前記クライアント装置のコンピュータ名を、前記Ｓｅｓｓｉｏｎ  ＲｅｑｕｅｓｔパケットのＮＢＴヘッダ部に設定されている前記特定コンピュータ名に基づいて書き換えることを特徴とするコンピュータ名変換方法。
【請求項２０】
請求項１９記載のコンピュータ名変換方法において、
前記第２のステップでは、前記ＴＣＰコネクション確立部が、前記クライアント装置のコンピュータ名を表す文字列に前記特定コンピュータ名を表す文字列中の少なくとも一部の文字を付加することにより、前記クライアント装置のコンピュータ名を書き換えることを特徴とするコンピュータ名変換方法。
【請求項２１】
ゲートウェイ装置を構成するコンピュータを、
接続要求が発行される毎に、クライアント装置とサーバ装置との間にＴＣＰコネクションを確立するＴＣＰコネクション確立部、
該ＴＣＰコネクション確立部で確立されたＴＣＰコネクション毎に、そのＴＣＰコネクションを介して前記クライアント装置から前記サーバ装置へ送られるＳｅｓｓｉｏｎ  ＲｅｑｕｅｓｔパケットのＮＢＴヘッダ部に設定されている前記クライアント装置のコンピュータ名をそれぞれ異なるコンピュータ名に書き換えるコンピュータ名変換部として機能させるためのプログラム。
【請求項２２】
請求項２１記載のプログラムにおいて、
前記コンピュータ名変換部は、
前記クライアント装置から送られてきたパケットがＳｅｓｓｉｏｎ  Ｒｅｑｕｅｓｔパケットであるか否かを判定する解析手段と、
該解析手段でＳｅｓｓｉｏｎ  Ｒｅｑｕｅｓｔパケットであると判定されたパケットのＮＢＴヘッダ部に設定されている前記クライアント装置のコンピュータ名を書き換える書き換え手段とを備えたことを特徴とするプログラム。
【請求項２３】
請求項２１または２２記載のプログラムにおいて、
前記Ｓｅｓｓｉｏｎ  ＲｅｑｕｅｓｔパケットのＮＢＴヘッダ部には、そのＳｅｓｓｉｏｎ  Ｒｅｑｕｅｓｔパケットが送信されるＴＣＰコネクション毎に、送信先を示すコンピュータ名としてそれぞれ異なる特定コンピュータ名が設定され、
前記コンピュータ名変換部は、前記Ｓｅｓｓｉｏｎ  ＲｅｑｕｅｓｔパケットのＮＢＴヘッダ部に設定されている前記クライアント装置のコンピュータ名を、前記Ｓｅｓｓｉｏｎ  ＲｅｑｕｅｓｔパケットのＮＢＴヘッダ部に設定されている前記特定コンピュータ名に基づいて書き換えることを特徴とするプログラム。
【請求項２４】
請求項２３記載のプログラムにおいて、
前記コンピュータ名変換部は、前記クライアント装置のコンピュータ名を表す文字列に前記特定コンピュータ名を表す文字列中の少なくとも一部の文字を付加することにより、前記クライアント装置のコンピュータ名を書き換えることを特徴とするプログラム。
【請求項２５】
クライアント装置を構成するコンピュータを、
接続要求が発行される毎に、自クライアント装置とサーバ装置との間にＴＣＰコネクションを確立するＴＣＰコネクション確立部、
該ＴＣＰコネクション確立部で確立されたＴＣＰコネクション毎に、そのＴＣＰコネクションを介して自クライアント装置から前記サーバ装置へ送られるＳｅｓｓｉｏｎ  ＲｅｑｕｅｓｔパケットのＮＢＴヘッダ部に設定されている自クライアント装置のコンピュータ名をそれぞれ異なるコンピュータ名に書き換えるコンピュータ名変換部として機能させるためのプログラム。
【請求項２６】
請求項２５記載のプログラムにおいて、
前記コンピュータ名変換部は、
自クライアント装置から前記サーバ装置へ送られるパケットがＳｅｓｓｉｏｎ  Ｒｅｑｕｅｓｔパケットであるか否かを判定する解析手段と、
該解析手段でＳｅｓｓｉｏｎ  Ｒｅｑｕｅｓｔパケットであると判定されたパケットのＮＢＴヘッダ部に設定されている自クライアント装置のコンピュータ名を書き換える書き換え手段とを備えたことを特徴とするプログラム。
【請求項２７】
請求項２５または２６記載のプログラムにおいて、
前記Ｓｅｓｓｉｏｎ  ＲｅｑｕｅｓｔパケットのＮＢＴヘッダ部には、そのＳｅｓｓｉｏｎ  Ｒｅｑｕｅｓｔパケットが送信されるＴＣＰコネクション毎に、送信先を示すコンピュータ名としてそれぞれ異なる特定コンピュータ名が設定され、
前記コンピュータ名変換部は、前記Ｓｅｓｓｉｏｎ  ＲｅｑｕｅｓｔパケットのＮＢＴヘッダ部に設定されている自クライアント装置のコンピュータ名を、前記Ｓｅｓｓｉｏｎ  ＲｅｑｕｅｓｔパケットのＮＢＴヘッダ部に設定されている前記特定コンピュータ名に基づいて書き換えることを特徴とするプログラム。
【請求項２８】
請求項２７記載のプログラムにおいて、
前記コンピュータ名変換部は、自クライアント装置のコンピュータ名を表す文字列に前記特定コンピュータ名を表す文字列中の少なくとも一部の文字を付加することにより、自クライアント装置のコンピュータ名を書き換えることを特徴とするプログラム。
【請求項２９】
請求項２５乃至２８の何れか１項に記載のプログラムにおいて、
前記コンピュータを、
自クライアント装置上で動作するアプリケーションプログラムが発行する接続要求であって前記アプリケーションプログラムに対して定められている特定コンピュータ名が含まれている接続要求に従って前記ＴＣＰコネクション確立部に対してＴＣＰコネクション接続要求を送信し、該ＴＣＰコネクション接続要求によって確立したＴＣＰコネクションを介して、ＮＢＴヘッダ部に前記特定コンピュータ名を送信先のコンピュータ名として設定し自クライアント装置のコンピュータ名を送信元のコンピュータ名として設定したＳｅｓｓｉｏｎ  Ｒｅｑｕｅｓｔパケットを送信するクライアント処理部として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＮｅｔＢＩＯＳ  ｏｖｅｒ  ＴＣＰ／ＩＰ（ＮＢＴ）上で動作するＣＩＦＳ(Common Internet File System)やＳＭＢ(Server Message Block)を用いてファイル共有サービスを利用、提供するクライアント装置、サーバ装置間に複数のＴＣＰコネクションを確立する技術に関する。
【背景技術】
【０００２】
ＮｅｔＢＩＯＳをＴＣＰ／ＩＰ上で利用できるようにしたＮＢＴが開発されることにより、それまで利用されていたＮｅｔＢＥＵＩ(NetBIOS Extended User Interface)が持っていた欠点、即ちルーティングを駆使した大規模ネットワークに向かない、ネットワークが飽和しやすい（ＮｅｔＢＥＵＩはブロードキャストを多用する）といった欠点が解消された。ＮＢＴを用いてファイル共有サービスを利用する場合には、先ず、クライアント装置とサーバ装置との間にＴＣＰコネクションを確立し、次いで、セッションの開始を要求するＳｅｓｓｉｏｎ  Ｒｅｑｕｅｓｔパケットを上記ＴＣＰコネクションを介してクライアント装置からサーバ装置へ送信する。Ｓｅｓｓｉｏｎ  Ｒｅｑｕｅｓｔパケットには、そのヘッダ部に送信元を示すコンピュータ名としてクライアント装置のコンピュータ名が設定されている。その後、プロトコルのネゴシエーション（機能レベルのすり合わせ）、セッション・セットアップ（サーバ装置へのログオン）が行われ、クライアント装置がサーバ装置のリソースを利用することが可能になる。
【０００３】
一方、クライアント装置とサーバ装置との間に複数のＴＣＰコネクションを生成するということは従来から行われている（例えば、特許文献１参照）。
【０００４】
【特許文献１】特開２００５−１２７１１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
特許文献１のようにクライアント装置とサーバ装置との間に複数のＴＣＰコネクションを確立することにより、クライアント装置の各アプリケーションプログラム毎にそれぞれ異なるＴＣＰコネクションを通じてサーバ装置と通信を行う運用形態や、通信障害などで一部のＴＣＰコネクションが切断されても残りのＴＣＰコネクションを用いて通信を継続する運用形態など、柔軟な運用形態をとることができる利点がある。しかしながら、ＮＢＴの設定が有効になっているクライアント装置とサーバ装置との間には複数のＴＣＰコネクションを確立することはできない。その理由は、ＮＢＴの設定を有効にしたサーバ装置においては、ＴＣＰコネクションを介してＳｅｓｓｉｏｎ  Ｒｅｑｕｅｓｔパケットが送られてくる毎に、そのＮＢＴヘッダ部に設定されている送信元のコンピュータ名（クライアント装置のコンピュータ名）に基づいて、上記ＴＣＰコネクションがどのクライアント装置との間に確立されたものなのかを認識し、もし、既に確立しているＴＣＰコネクションの中に上記認識したクライアント装置との間のＴＣＰコネクションが存在する場合には、当該ＴＣＰコネクションを切断するためである。
【０００６】
〔発明の目的〕
本発明の目的は、上述した課題であるＮＢＴの設定が有効になっているクライアント装置とサーバ装置との間に複数のＴＣＰコネクションを確立することができないという問題点を解決する通信システム、ゲートウェイ装置、クライアント装置、コンピュータ名変換方法およびプログラムを提供することにある。
【課題を解決するための手段】
【０００７】
本発明にかかる第１の通信システムは、
クライアント装置と、サーバ装置とを備えた通信システムにおいて、
クライアント装置とサーバ装置との間にＴＣＰコネクションを確立するＴＣＰコネクション確立部と、
ＴＣＰコネクション確立部で確立されたＴＣＰコネクションを介してクライアント装置からサーバ装置へ送られるＳｅｓｓｉｏｎ  ＲｅｑｕｅｓｔパケットのＮＢＴヘッダ部に設定されているクライアント装置のコンピュータ名を書き換えるコンピュータ名変換部とを備えている。
【０００８】
本発明にかかる第１のゲートウェイ装置は、
クライアント装置とサーバ装置との間にＴＣＰコネクションを確立するＴＣＰコネクション確立部と、
ＴＣＰコネクション確立部で確立されたＴＣＰコネクションを介してクライアント装置からサーバ装置へ送られるＳｅｓｓｉｏｎ  ＲｅｑｕｅｓｔパケットのＮＢＴヘッダ部に設定されているクライアント装置のコンピュータ名を書き換えるコンピュータ名変換部とを備えている。
【０００９】
本発明にかかる第１のクライアント装置は、
自クライアント装置とサーバ装置との間にＴＣＰコネクションを確立するＴＣＰコネクション確立部と、
ＴＣＰコネクション確立部で確立されたＴＣＰコネクションを介して自クライアント装置からサーバ装置へ送られるＳｅｓｓｉｏｎ  ＲｅｑｕｅｓｔパケットのＮＢＴヘッダ部に設定されている自クライアント装置のコンピュータ名を書き換えるコンピュータ名変換部とを備えている。
【００１０】
本発明にかかる第１のコンピュータ名変更方法は、
ＴＣＰコネクション確立部が、クライアント装置とサーバ装置との間にＴＣＰコネクションを確立する第１のステップと、
コンピュータ名変換部が、第１のステップで確立されたＴＣＰコネクションを介して前記クライアント装置から前記サーバ装置へ送られるＳｅｓｓｉｏｎ  ＲｅｑｕｅｓｔパケットのＮＢＴヘッダ部に設定されているクライアント装置のコンピュータ名を書き換える第２のステップとを含む。
【００１１】
本発明にかかる第１のプログラムは、
ゲートウェイ装置を構成するコンピュータを、
クライアント装置とサーバ装置との間にＴＣＰコネクションを確立するＴＣＰコネクション確立部、
ＴＣＰコネクション確立部で確立されたＴＣＰコネクションを介してクライアント装置からサーバ装置へ送られるＳｅｓｓｉｏｎ  ＲｅｑｕｅｓｔパケットのＮＢＴヘッダ部に設定されているクライアント装置のコンピュータ名を書き換えるコンピュータ名変換部として機能させる。
【発明の効果】
【００１２】
本発明によれば、ＮＢＴの設定が有効になっているクライアント装置とサーバ装置との間に複数のＴＣＰコネクションを確立することが可能になるという効果を得ることができる。
【発明を実施するための最良の形態】
【００１３】
次に、本発明を実施するための最良の形態について図面を参照して詳細に説明する。
【００１４】
〔本発明の第１の実施の形態〕
図１を参照すると、本発明の第１の実施の形態は、ゲートウェイ装置１と、クライアント装置２と、サーバ装置３とから構成されている。
【００１５】
クライアント装置２は、ＮｅｔＢＩＯＳ  ｏｖｅｒ  ＴＣＰ／ＩＰ（ＮＢＴ）上で動作するＣＩＦＳやＳＭＢを用いてファイル共有サービスを利用するクライアント処理部２１を備えると共に、ＬＭＨＯＳＴＳ(Lan Manager Hosts)ファイル２３が格納された記憶装置２２を備えている。ＬＭＨＯＳＴＳファイル２３には、図２に示すように、ゲートウェイ装置１のＩＰアドレス「192.168.2.98」と関連付けて複数の特定コンピュータ名ＣＯＭ０００１〜ＣＯＭ００１０が登録されている。この特定コンピュータ名は、クライアント装置２からゲートウェイ装置１へ送られるＳｅｓｓｉｏｎ  Ｒｅｑｕｅｓｔパケットのヘッダ部のオプションデータフィールドに、送信先を示すコンピュータ名として設定される。サーバ装置３は、ＮｅｔＢＩＯＳ  ｏｖｅｒ  ＴＣＰ／ＩＰプロトコル上で動作するＣＩＦＳプロトコルやＳＭＢプロトコルを用いてクライアント装置２に対してファイル共有サービスを提供する装置である。なお、クライアント装置２およびサーバ装置３は、コンピュータによって実現される。
【００１６】
ゲートウェイ装置１は、クライアント装置２とサーバ装置３との間に複数のＴＣＰコネクションを確立できるようにするため、クライアント装置２から送られてきたＳｅｓｓｉｏｎ  Ｒｅｑｕｅｓｔパケットのヘッダ部の内容を書き換えてサーバ装置３へ送信する機能を有する。
【００１７】
このような機能を有するゲートウェイ装置１は、ネットワークとのインタフェース部であるネットインタフェースカード（ＮＩＣ）１１と、クライアント側処理部１２と、サーバ側処理部１３と、バッファ１４、１６と、コンピュータ名変換部１５とを備えている。
【００１８】
クライアント側処理部１２は、クライアント装置２との間にＴＣＰコネクションを確立する機能、サーバ側処理部１３に対してサーバ装置３との間にＴＣＰコネクションを確立することを指示する機能、クライアント装置２から送られてきたパケットをバッファ１４に格納する機能、およびバッファ１６に格納されているパケットを入力してクライアント装置２へ送信する機能を有する。
【００１９】
サーバ側処理部１３は、クライアント側処理部１２からの指示に従ってサーバ装置３との間にＴＣＰコネクションを確立する機能、サーバ装置１３から送られてきたパケットをバッファ１６に格納する機能、およびコンピュータ名変換部１５から渡されたパケットをサーバ装置３へ送信する機能を有する。このサーバ側処理部１３と前述したクライアント側処理部１２によりＴＣＰコネクション確立部が構成される。
【００２０】
コンピュータ名変換部１５は、バッファ１４から読み出したパケットがＳｅｓｓｉｏｎ  Ｒｅｑｕｅｓｔである場合には、そのヘッダ部に含まれている送信先を示す特定コンピュータ名（ＣＯＭ０００１〜ＣＯＭ００１０の何れか）をサーバ装置３のコンピュータ名に書き換えると共に上記ヘッダ部に含まれている送信元を示すコンピュータ名（クライアント装置２のコンピュータ名）を所定の規則に従って書き換え、書き換え後のＳｅｓｓｉｏｎ  Ｒｅｑｕｅｓｔパケットをサーバ側処理部１３に伝達し、それ以外のパケットである場合は、そのままサーバ側処理部１３に伝達する機能を有する。
【００２１】
このような機能を有するコンピュータ名変換部１５は、パケット解析手段１５１と、書き換え手段１５２とから構成されている。
【００２２】
パケット解析手段１５１は、バッファ１４から読み出したパケットがＳｅｓｓｉｏｎ  Ｒｅｑｕｅｓｔパケットであるか否かを判定し、Ｓｅｓｓｉｏｎ  Ｒｅｑｕｅｓｔであった場合には書き換え手段１５２に伝達し、Ｓｅｓｓｉｏｎ  Ｒｅｑｕｅｓｔでなかった場合はサーバ側処理部１３に伝達する機能を有する。
【００２３】
書き換え手段１５２は、Ｓｅｓｓｉｏｎ  Ｒｅｑｕｅｓｔパケットのヘッダ部のオプションデータフィールドに含まれている特定コンピュータ名をサーバ装置３のコンピュータ名に書き換えると共に、上記ヘッダ部に含まれている送信元を示すコンピュータ名を所定の規則に従って書き換え、書き換え後のＳｅｓｓｉｏｎ  Ｒｅｑｕｅｓｔパケットをサーバ側処理部１３に伝達する機能を有する。なお、サーバ装置３のコンピュータ名は、ゲートウェイ装置１内のメモリ（図示せず）に予め設定されており、書き換え手段１５２は上記メモリからサーバ装置３のコンピュータ名を入力する。
【００２４】
このような機能を有するゲートウェイ装置１は、コンピュータによって実現可能であり、コンピュータによって実現する場合は、例えば次のようにする。コンピュータをゲートウェイ装置１として機能させるためのプログラムを記録したディスク、半導体メモリ、その他の記録媒体を用意し、コンピュータに上記プログラムを読み取らせる。コンピュータは、読み取ったプログラムに従って自身の動作を制御することにより、自コンピュータ上にクライアント側処理部１２、サーバ側処理部１３、コンピュータ名変換部１５を実現する。
【００２５】
〔第１の実施の形態の動作の説明〕
次に、本実施の形態の動作について詳細に説明する。なお、以下の説明では、クライアント装置２およびサーバ装置３においてＮＢＴの設定が有効になっているとする。
【００２６】
クライアント装置２上のアプリケーションプログラムＡＰ１〜ＡＰ１０の内の例えばアプリケーションプログラムＡＰ１が、サーバ装置３と接続するために特定コンピュータ名（例えば、ＣＯＭ０００１）を含んだ接続要求を発行すると、クライアント処理部２１は、特定コンピュータ名ＣＯＭ０００１をキーにしてＬＭＨＯＳＴＳファイル２３を検索し、接続先のＩＰアドレスとしてゲートウェイ装置１のＩＰアドレスを取得する。なお、各アプリケーションプログラムＡＰ１〜ＡＰ１０が接続要求に含ませる特定コンピュータ名は、それぞれ異なるものであり、各アプリケーションプログラム毎に予め設定されている。
【００２７】
その後、クライアント処理部２１は、図３に示すように、ゲートウェイ装置１に対してＴＣＰコネクション接続要求（ＳＹＮ）を発行する（Ｓ３１）。ゲートウェイ装置１内のクライアント側処理部１２は、ＮＩＣ１１を介してＴＣＰコネクション接続要求（ＳＹＮ）を受信すると、接続を許可するか否かを判定し、許可するのであれば、クライアント装置２に対してＴＣＰコネクション接続要求、応答（ＳＹＮ、ＡＣＫ）を送信する（Ｓ３２）。これにより、クライアント装置２内のクライアント処理部２１は、ゲートウェイ装置１に対してＴＣＰコネクション接続応答（ＡＣＫ）を送信する（Ｓ３３）。以上の処理（３ＷＡＹハンドシェーク）により、図４（Ａ）に示すようにクライアント装置２とゲートウェイ装置１との間にＴＣＰコネクション４１が確立する。
【００２８】
また、クライアント側処理部１２は、クライアント装置２との間のＴＣＰコネクション４１が確立すると、サーバ側処理部１３に対して、サーバ装置３との間にＴＣＰコネクションを確立することを指示する。なお、本実施の形態では、ＴＣＰコネクション４１が確立したことを契機にして、クライアント側処理部１２がサーバ側処理部１３に対して上記指示を行うようにしたが、Ｓ３１においてクライアント装置２からＴＣＰコネクション接続要求（ＳＹＮ）が送られてことを契機として上記指示を行うようにしても良い。サーバ側処理部１３は、この指示を受けると、サーバ装置３との間で前述したＳ３１〜Ｓ３３と同様の処理（３ＷＡＹハンドシェーク）を行い（Ｓ３４〜Ｓ３６）、ゲートウェイ装置１とサーバ装置３との間に図４（Ａ）に示すようにＴＣＰコネクション４２を確立する。その後、クライアント側処理部１２およびサーバ側処理部１３は、コネクション４１とコネクション４２とを対応付ける。
【００２９】
その後、クライアント装置２内のクライアント処理部２１からＴＣＰコネクション４１を介してゲートウェイ装置１に対してＳｅｓｓｉｏｎ  Ｒｅｑｕｅｓｔパケットが送信される（Ｓ３７）。図５を参照すると、Ｓｅｓｓｉｏｎ  Ｒｅｑｕｅｓｔパケットは、ＴＣＰ／ＩＰヘッダ部、ＮＢＴ（ＮｅｔＢＩＯＳ  ｏｖｅｒ  ＴＣＰ／ＩＰ）ヘッダ部、及びＮｅｔＢＩＯＳデータ部から構成され、ＮＢＴヘッダ部のタイプフィールドには、Ｓｅｓｓｉｏｎ  Ｒｅｑｕｅｓｔパケットであることを示す値（０ｘ８１）が設定され、オプションデータフィールドには、送信先のコンピュータ名（アプリケーションプログラムＡＰ１が接続要求時に指定した特定コンピュータ名「ＣＯＭ０００１」）および送信元のコンピュータ名（クライアント装置２のコンピュータ名であり、例えば、「ＣＬＩＥＮＴ０１」）がそれぞれ所定のバイト位置に設定されている。なお、コンピュータ名の長さが１５バイトに満たない場合には、スペースが挿入されている。
【００３０】
ゲートウェイ装置１内のクライアント側処理部１２は、ＴＣＰコネクション４１を介してクライアント装置２からＳｅｓｓｉｏｎ  Ｒｅｑｕｅｓｔパケットが送られてくると、それをバッファ１４に格納する。
【００３１】
コンピュータ名変換部１５は、バッファ１４に格納された各パケットに対して、図６のフローチャートに示す処理を行う。パケット解析手段１５１は、バッファ１４にパケットが格納されている場合（Ｓ６１がＹＥＳ）、バッファ１４の先頭に格納されているパケットを入力し（Ｓ６２）、それがＳｅｓｓｉｏｎ  Ｒｅｑｕｅｓｔパケットであるか否かを判定する（Ｓ６３）。この判定は、ＮＢＴヘッダのタイプフィールドの値が「０ｘ８１」であるか否かを判定することにより行う。
【００３２】
そして、Ｓｅｓｓｉｏｎ  Ｒｅｑｕｅｓｔパケットでなかった場合（Ｓ６３がＮＯ）は、パケットをサーバ側処理部１３に伝達した後、Ｓ６１の処理に戻る。これに対して、Ｓｅｓｓｉｏｎ  Ｒｅｑｕｅｓｔパケットであった場合（Ｓ６３がＹＥＳ）は、そのパケットを書き換え手段１５２に渡す。これにより、書き換え手段１５２は、Ｓｅｓｓｉｏｎ  ＲｅｑｕｅｓｔパケットのＮＢＴヘッダのオプションデータフィールドに設定されている送信元のコンピュータ名「ＣＬＩＥＮＴ０１」を所定の規則に従って書き換え、更に特定コンピュータ名「ＣＯＭ０００１」をサーバ装置３のコンピュータ名に書き換え（Ｓ６４）、書き換え後のＳｅｓｓｉｏｎ  Ｒｅｑｕｅｓｔパケットをサーバ側処理部１３に伝達する（Ｓ６５）。
【００３３】
送信元のコンピュータ名の書き換えは、例えば、オプションデータフィールドに設定されている送信元のコンピュータ名「ＣＬＩＥＮＴ０１」の前に、オプションデータフィールドに設定されている特定コンピュータ名「ＣＯＭ０００１」を表す文字列中の一部或いは全部の文字を付加することにより行う。例えば、特定コンピュータ名を表す文字列中の全部の文字を付加するようにした場合には、書き換え後のコンピュータ名は「ＣＯＭ０００１ＣＬＩＥＮＴ０１」となる。また、特定コンピュータ名を表す文字列中の最上位バイトと下位４バイトの文字を付加するようにした場合には、書き換え後のコンピュータ名は「Ｃ０００１ＣＬＩＥＮＴ０１」となる。但し、書き換え後のコンピュータ名が１５バイトを超えてしまう場合には、超える部分を削除する。また、１５バイトに満たない場合は、スペースを挿入する。なお、送信元コンピュータ名の書き換え方法は、上記した方法に限定されるものではない。
【００３４】
この例の場合、バッファ１４に格納されたパケットは、Ｓｅｓｓｉｏｎ  Ｒｅｑｕｅｓｔパケットであるので、コンピュータ名変換手段１５で送信元のコンピュータ名「ＣＬＩＥＮＴ０１」が例えば「ＣＯＭ０００１ＣＬＩＥＮＴ０１」と書き換えられた後（Ｓ３８）、ＴＣＰコネクション４２を介してサーバ装置３へ送信される（Ｓ３９）。これに応答して、サーバ装置３は、Ｓｅｓｓｉｏｎ  Ｒｅｑｕｅｓｔ肯定パケットをＴＣＰコネクション４２を介してゲートウェイ装置１へ送信する（Ｓ４０）。なお、サーバ装置３では、オプションデータフィールドに設定されている送信元のコンピュータ名が「ＣＯＭ０００１ＣＬＩＥＮＴ０１」となっているので、ＴＣＰコネクション４２を介してコンピュータ名「ＣＯＭ０００１ＣＬＩＥＮＴ０１」のクライアント装置からＳｅｓｓｉｏｎ  Ｒｅｑｕｅｓｔパケットが送られてきたように見える。
【００３５】
ゲートウェイ装置１内のサーバ側処理部１３は、Ｓｅｓｓｉｏｎ  Ｒｅｑｕｅｓｔ肯定パケットをバッファ１６に格納し、クライアント側処理部１２は、バッファ１６からＳｅｓｓｉｏｎ  Ｒｅｑｕｅｓｔ肯定パケットを読み出しＴＣＰコネクション４１を介してクライアント装置２へ送信する（Ｓ４１）。
【００３６】
これ以降は、上記確立したＴＣＰコネクション４１、４２を介してはクライアント装置２からサーバ装置３へＳｅｓｓｉｏｎ  Ｒｅｑｕｅｓｔパケットが送られることがないので、クライアント装置２からサーバ装置３へのパケットは、そのままサーバ装置３へ送られる。
【００３７】
アプリケーションプログラムＡＰ１からの接続要求を契機として確立したＴＣＰコネクション４１、４２が切断される前に、アプリケーションプログラムＡＰ２が、特定コンピュータ名（例えば、ＣＯＭ０００２）を含んだ接続要求を発行すると、次のような処理が行われる。
【００３８】
クライアント装置２とゲートウェイ装置１との間で行われる３ＷＡＹハンドシェークによって図４（Ｂ）に示すようにＴＣＰコネクション４３が確立され（前述したＳ３１〜Ｓ３３と同様の処理）、更に、ゲートウェイ装置１とサーバ装置３との間で行われる３ＷＡＹハンドシェークによってＴＣＰコネクション４４が確立され（前述したＳ３４〜Ｓ３６と同様の処理）、両ＴＣＰコネクション４３、４４が対応付けられる。その後、クライアント装置２が、オプションデータフィールドに送信先のコンピュータ名として特定コンピュータ名「ＣＯＭ０００２」を設定し、送信元のコンピュータ名として「ＣＬＩＥＮＴ０１」を設定したＳｅｓｓｉｏｎ  Ｒｅｑｕｅｓｔパケットを、ＴＣＰコネクション４３を介してゲートウェイ装置１へ送信する（前述したＳ３７と同様の処理）。
【００３９】
ゲートウェイ装置１内のクライアント側処理部１２は、クライアント装置２から送られてきたＳｅｓｓｉｏｎ  Ｒｅｑｕｅｓｔパケットをバッファ１４に格納し、コンピュータ名変換手段１５は、バッファ１４からＳｅｓｓｉｏｎ  Ｒｅｑｕｅｓｔパケットを読み出して、そのＮＢＴヘッダ部のオプションデータフィールドに設定されている送信元のコンピュータ名「ＣＬＩＥＮＴ０１」を「ＣＯＭ０００２ＣＬＩＥＮＴ０１」に書き換え、更に、特定コンピュータ名「ＣＯＭ０００２」をサーバ装置３のコンピュータ名に書き換える（図５参照）。
【００４０】
その後、コンピュータ名が書き換えられたＳｅｓｓｉｏｎ  ＲｅｑｕｅｓｔパケットがＴＣＰコネクション４４を介してサーバ装置３へ送られ、それに対するサーバ装置３からのＳｅｓｓｉｏｎ  Ｒｅｑｕｅｓｔ肯定応答がＴＣＰコネクション４４、ゲートウェイ装置１およびＴＣＰコネクション４３を介してクライアント装置２へ送信される（前述したＳ３９〜Ｓ４１と同様の処理）。この場合、オプションデータフィールドに設定されている送信元のコンピュータ名が「ＣＯＭ０００２ＣＬＩＥＮＴ０１」となっているので、サーバ装置３には、ＴＣＰコネクション４４を介してコンピュータ名「ＣＯＭ０００２ＣＬＩＥＮＴ０１」のクライアント装置が接続されているように見える。従って、既に確立しているクライアント装置２上のアプリケーションプログラムＡＰ１との間のＴＣＰコネクション４１、４２を切断する処理は行われない。
【００４１】
〔第１の実施の形態の効果〕
本実施の形態によれば、ＮＢＴの設定が有効になっているクライアント装置とサーバ装置との間に複数のＴＣＰコネクションを確立することが可能になるという効果を得ることができる。その理由は、ＴＣＰコネクションを介してクライアント装置２からサーバ装置３へ送られるＳｅｓｓｉｏｎ  ＲｅｑｕｅｓｔパケットのＮＢＴヘッダ部に設定されているクライアント装置のコンピュータ名を書き換えるコンピュータ名変換部１５を備えているからである。
【００４２】
また、本実施の形態によれば、クライアント装置上のアプリケーションプログラム毎にＴＣＰコネクションを確立することができるという効果を得ることができる。その理由は、クライアント装置２が、自装置２上で動作するアプリケーションプログラムＡＰ１〜ＡＰ１０が発行する接続要求であって、そのアプリケーションプログラムＡＰ１〜ＡＰ１０に対して定められている特定コンピュータ名が含まれている接続要求に従ってゲートウェイ装置１に対してＴＣＰコネクション接続要求を送信し、このＴＣＰコネクション接続要求によって確立したＴＣＰコネクションを介して、ＮＢＴヘッダ部に送信先のコンピュータ名として上記特定コンピュータ名を設定し、送信元のコンピュータ名として自クライアント装置２のコンピュータ名を設定したＳｅｓｓｉｏｎ  Ｒｅｑｕｅｓｔパケットを送信するクライアント処理部２１を備えているからである。
【００４３】
〔本発明の第２の実施の形態〕
次に、本発明の第２の実施の形態について説明する。本実施の形態は、クライアント装置内に、第１の実施の形態で説明したゲートウェイ装置１と同様の機能を有するゲートウェイ処理部を設けることにより、ゲートウェイ装置１を不要にしたことを特徴とする。
【００４４】
図７を参照すると、本実施の形態は、ゲートウェイ装置１が設けられていない点、およびクライアント装置２の代わりにクライアント装置２ａを備えている点が図１に示した第１の実施の形態と相違している。
【００４５】
クライアント装置２ａは、ゲートウェイ処理部１ａが追加されている点、およびＬＭＨＯＳＴＳファイル２３の代わりにＬＭＨＯＳＴＳファイル２３ａを備えている点が第１の実施の形態のクライアント装置２と相違している。
【００４６】
ＬＭＨＯＳＴＳファイル２３ａには、ローカル・ループバック・アドレス（127.0.0.1）に関連付けて複数の特定コンピュータ名が登録されている。ローカル・ループバック・アドレスは、自装置を表す特別なＩＰアドレスであり、自装置上で動作しているサービスへ接続する場合に利用される。図８を参照すると、ＬＭＨＯＳＴＳファイル２３ａには、ローカル・ループバック・アドレス（127.0.0.1）に対応付けて１０個の特定コンピュータ名ＣＯＭ０００１〜ＣＯＭ００１０が格納されている。
【００４７】
ゲートウェイ処理部１ａは、ＮＩＣ１１ａと、クライアント側処理部１２ａと、サーバ側処理部１３ａと、バッファ１４ａ、１６ａと、パケット解析手段１５１ａおよび書き換え手段１５２ａを含んだコンピュータ名変換部１５ａとを備えている。これらはそれぞれ第１の実施の形態におけるＮＩＣ１１と、クライアント側処理部１２と、サーバ側処理部１３と、バッファ１４、１６と、パケット解析手段１５１および書き換え手段１５２を備えたコンピュータ名変換部１５と同様の機能を有している。
【００４８】
なお、クライアント装置２ａは、コンピュータにより実現可能なものであり、コンピュータによって実現する場合は、例えば、次のようにする。コンピュータをクライアント装置２ａとして機能させるためのプログラムを記録したディスク、半導体メモリ、その他の記録媒体を用意し、コンピュータに上記プログラムを読み取らせる。コンピュータは、読み取ったプログラムに従って自身の動作を制御することにより、自コンピュータ上にクライアント処理部２１およびゲートウェイ処理部１ａを実現する。
【００４９】
〔第２の実施の形態の動作の説明〕
次に、本実施の形態の動作について詳細に説明する。なお、以下の説明ではクライアント装置２ａおよびサーバ装置３において、ＮＢＴの設定が有効になっているとする。
【００５０】
クライアント装置２ａ上のアプリケーションプログラムＡＰ１が、サーバ装置３と接続するためにサーバ装置３のコンピュータ名（例えば、ＣＯＭ０００１）を含んだ接続要求を発行すると、クライアント処理部２１は、コンピュータ名をキーにしてＬＭＨＯＳＴＳファイル２３ａを検索し、接続先のＩＰアドレスとしてローカル・ループバック・アドレス（127.0.0.1）を取得する。その後、クライアント装置２ａは、図９に示すように、ローカル・ループバック・アドレスを宛先にしたＴＣＰコネクション接続要求（ＳＹＮ）を送信する（Ｓ９１）。
【００５１】
このコネクション接続要求（ＳＹＮ）は、ＮＩＣ１１ａを介してクライアント側処理部１２ａで受信され、クライアント側処理部１２ａは通信を許可するのであれば、図９に示すように、ＴＣＰコネクション接続要求、応答（ＳＹＮ、ＡＣＫ）をクライアント処理部２１へ送信する（Ｓ９２）。クライアント処理部２１は、ＴＣＰコネクション接続要求、応答（ＳＹＮ、ＡＣＫ）を受信すると、ＴＣＰコネクション接続応答（ＡＣＫ）をゲートウェイ処理部１ａへ送信する（Ｓ９３）。以上の３ＷＡＹハンドシェークにより、クライアント処理部２１とゲートウェイ処理部１ａとの間にＴＣＰコネクションが確立される。
【００５２】
また、クライアント側処理部１２ａは、クライアント処理部２１との間にＴＣＰコネクションが確立すると、サーバ側処理部１３ａに対してサーバ装置３との間にＴＣＰコネクションを確立することを指示する。なお、この指示は、Ｓ９１においてＴＣＰコネクション接続要求（ＳＹＮ）を受信したタイミングで行っても良い。サーバ側処理部１３ａは、上記指示を受け付けると、サーバ装置３との間で前述したＳ３４〜Ｓ３６と同様の処理を行うことにより、サーバ装置３との間にＴＣＰコネクションを確立する（Ｓ９４〜Ｓ９６）。その後、クライアント装置２ａとの間のＴＣＰコネクションと、サーバ装置３との間のＴＣＰコネクションを対応付ける。
【００５３】
その後、クライアント処理部２１からゲートウェイ処理部１ａに対してＳｅｓｓｉｏｎ  Ｒｅｑｕｅｓｔパケットが送信される（Ｓ９７）。
【００５４】
ゲートウェイ処理部１ａ内のクライアント側処理部１２ａは、受信したＳｅｓｓｉｏｎ  Ｒｅｑｕｅｓｔパケットをバッファ１４ａに格納する。コンピュータ名変換部１５ａ内のパケット解析手段１５１ａは、バッファ１４ａからパケットを読み出し、そのパケットのＮＢＴヘッダ部のタイプフィールドの値に基づいてＳｅｓｓｉｏｎ  Ｒｅｑｕｅｓｔパケットであると判定すると、そのパケットを書き換え手段１５２ａに渡す。書き換え手段１５２ａは、Ｓｅｓｓｉｏｎ  Ｒｅｑｕｅｓｔパケット中のＮＢＴヘッダ部のオプションデータフィールドに設定されている、送信元のクライアント装置２ａのコンピュータ名（例えば、ＣＬＩＥＮＴ０１）の前に、オプションデータフィールドに設定されている特定コンピュータ名（この例の場合は、ＣＯＭ０００１）を表す文字列中の一部あるいは全部の文字を付加することにより送信元のコンピュータ名を書き換え、更にオプションデータフィールドに設定されている特定コンピュータ名をサーバ装置３のコンピュータ名に書き換え、書替え後のＳｅｓｓｉｏｎ  Ｒｅｑｕｅｓｔパケットをサーバ側処理部１３ａに渡す（Ｓ９８）。
【００５５】
サーバ側処理部１３ａでは、書き換え手段１５２ａから渡されたＳｅｓｓｉｏｎ  Ｒｅｑｕｅｓｔパケットをサーバ装置３へ送信し（Ｓ９９）、これに応答してサーバ装置３は、Ｓｅｓｓｉｏｎ  Ｒｅｑｕｅｓｔ肯定パケットをゲートウェイ処理部１ａに送信する（Ｓ１００）。なお、サーバ装置２ａでは、オプションデータフィールドに設定されている送信元のコンピュータ名が「ＣＯＭ０００１ＣＬＩＥＮＴ０１」となっているので、コンピュータ名「ＣＯＭ０００１ＣＬＩＥＮＴ０１」のクライアント装置との間でＴＣＰコネクションが確立しているように見える。
【００５６】
ゲートウェイ処理部１ａでは、サーバ側処理部１３ａがサーバ装置３から送られてきたＳｅｓｓｉｏｎ  Ｒｅｑｕｅｓｔ肯定パケットをバッファ１６ａに格納し、クライアント側処理部１２ａがバッファ１６ａからＳｅｓｓｉｏｎ  Ｒｅｑｕｅｓｔ肯定パケットを読み出してクライアント処理部２１へ送信する（Ｓ１０１）。
【００５７】
その後、アプリケーションプログラムＡＰ１からの接続要求により確立されたＴＣＰコネクションが切断される前に、他のアプリケーションプログラムＡＰ２が特定コンピュータ名（例えば、ＣＯＭ０００２）を含んだ接続要求を発行すると、前述した処理と同様の処理が行われる。この場合には、Ｓ８８において、Ｓｅｓｓｉｏｎ  ＲｅｑｕｅｓｔパケットのＮＢＴヘッダ部のオプションデータフィールドに設定されている送信元のコンピュータ名が「ＣＬＩＥＮＴ０１」から「ＣＯＭ０００２ＣＬＩＥＮＴ０１」に変更されるので、サーバ装置３にはコンピュータ名「ＣＯＭ０００２ＣＬＩＥＮＴ０１」のクライアント装置との間にＴＣＰコネクションが確立したように見える。従って、アプリケーションプログラムＡＰ１からの接続要求によって確立したＴＣＰコネクションを切断することはない。
【００５８】
〔第２の実施の形態の効果〕
本実施の形態では、クライアント装置２ａに第１の実施の形態におけるゲートウェイ装置１の機能を実現するゲートウェイ処理部１ａを設けたので、ハードウェア量を少なくすることが可能になる。
【産業上の利用可能性】
【００５９】
本発明は、ＮＢＴ上で動作するＣＩＦＳやＳＭＢを利用してファイル共有サービスを提供、利用するサーバ装置、クライアント装置間の通信に利用できる。
【図面の簡単な説明】
【００６０】
【図１】本発明の第１の実施の形態の構成例を示すブロック図である。
【図２】ＬＭＨＯＳＴＳファイル２３の一例を示す図である。
【図３】第１の実施の形態の動作を説明するためのシーケンス図である。
【図４】複数のＴＣＰコネクションが確立される様子を示す図である。
【図５】パケットの構成例を示す図である。
【図６】コンピュータ名変換部１５の処理例を示すフローチャートである。
【図７】本発明の第２の実施の形態の構成例を示すブロック図である。
【図８】ＬＭＨＯＳＴＳファイル２３ａの一例を示す図である。
【図９】第２の実施の形態の動作を説明するためのシーケンス図である。
【符号の説明】
【００６１】
１…ゲートウェイ装置
１ａ…ゲートウェイ処理部
１１、１１ａ…ＮＩＣ
１２、１２ａ…クライアント側処理部
１３、１３ａ…サーバ側処理部
１４、１４ａ、１６、１６ａ…バッファ
１５、１５ａ…コンピュータ名変換部
１５１、１５１ａ…パケット解析手段
１５２、１５２ａ…書き換え手段
２、２ａ…クライアント装置
２１…クライアント処理部
２２…記憶装置
２３、２３ａ…ＬＭＨＯＳＴＳファイル
ＡＰ１〜ＡＰ１０…アプリケーションプログラム
３…サーバ装置
【図１】
0004930856.tif 000002
【図２】
0004930856.tif 000003
【図３】
0004930856.tif 000004
【図４】
0004930856.tif 000005
【図５】
0004930856.tif 000006
【図６】
0004930856.tif 000007
【図７】
0004930856.tif 000008
【図８】
0004930856.tif 000009
【図９】
0004930856.tif 000010