(57)【要約】【課題】  物理的に１台のサーバで複数のＶＬＡＮにサービスを提供する。【解決手段】  ＶＬＡＮ＃１〜＃３（１２７〜１２９）はスイッチングハブ（１１３）を介してサーバ（１００）と接続される。サーバ（１００）は、各ＶＬＡＮにサービスを提供するサーバプロセス＃１〜＃３（１０１〜１０３）を備え、これらはそれぞれ内部ＩＰアドレスＮ１，Ｎ２，Ｎ３を持つ。またサーバ（１００）は、各ＶＬＡＮ向けにそれぞれ外部向けＩＰアドレスＧ１，Ｇ２，Ｇ３を持つ。ＶＬＡＮ＃１（１２７）上のクライアント＃１−１（１２１）がサーバ（１００）へ宛先ＩＰアドレスをＧ１としてデータを発行すると、サーバ（１００）のデバイスドライバ（１０５）の受信用ＶＬＡＮタグ−ＮＡＴ処理手段（１１２）は、ＶＬＡＮタグＶ１をキーに宛先ＩＰアドレスをＧ１からＮ１にＮＡＴし、サーバプロセス＃１（１０１）がこれを受信する。【選択図】  図１
2005151509.tif 000002
【特許請求の範囲】
【請求項１】
複数のＶＬＡＮと接続され、各ＶＬＡＮ毎のアプリケーションサービスを提供するサーバであって、
複数のアプリケーションサービス用の複数のプロセスと、
前記プロセスと対応づけて設けられた複数の仮想デバイスドライバと、
各ＶＬＡＮから受信したＶＬＡＮタグが付与されたデータを、ＶＬＡＮタグに基づき宛先アドレスを変更する受信用アドレス変更処理部と、
前記アドレス変更処理部が変更した宛先アドレスに基づいて仮想デバイスドライバを選択する選択部と、
を備え、
サーバ上の前記プロセスがクライアントからデータを受信する際、
前記受信用アドレス変更処理部は、受信したＭＡＣフレームから取り出したＶＬＡＮタグに対応する内部向けＩＰアドレスを取得し、宛先ＩＰアドレスを外部向けＩＰアドレスから内部向けＩＰアドレスに書き換え、ＭＡＣヘッダを削除してＩＰパケット化し、そのＩＰパケットを前記選択部へ転送し、
前記選択部は、ＩＰパケットの宛先ＩＰアドレスに対応する前記仮想デバイスドライバを選択し、
選択された前記仮想デバイスドライバは、前記選択部から受信したＩＰパケットを前記プロセスへ向けて転送し、
宛先ＩＰアドレスでデータ待ちをしている前記プロセスは、ＩＰパケット中のデータを受信し、処理を実行する
ＶＬＡＮサーバ。
【請求項２】
複数のＶＬＡＮと接続され、各ＶＬＡＮ毎のアプリケーションサービスを提供するサーバであって、
複数のアプリケーションサービス用の複数のプロセスと、
前記プロセスと対応づけて設けられた複数の仮想デバイスドライバと、
前記プロセスからのデータを前記仮想デバイスドライバを介して受信し、送信元アドレスに基づいて、送信元アドレスの変更とタグの付与を行う送信用アドレス変更処理部と、
を備え、
サーバ上の前記プロセスがクライアントに対してデータを送信する際、
前記プロセスは、送信元ＩＰアドレスが内部向けＩＰアドレスであるデータを発行し、
前記送信用アドレス変更処理部は、送信元である内部向けＩＰアドレスに対応するＶＬＡＮタグと外部向けＩＰアドレスとを求め、ＩＰパケットにおける送信元ＩＰアドレスを外部向けＩＰアドレスに書き換え、求めたＶＬＡＮタグを含むＭＡＣヘッダをＩＰパケットに付加することによってＭＡＣフレームを作成し、
前記送信用アドレス変更処理部は、作成されたＭＡＣフレームをＶＬＡＮへ向けて転送する
ＶＬＡＮサーバ。
【請求項３】
複数のＶＬＡＮと接続され、各ＶＬＡＮ毎のアプリケーションサービスを提供するサーバであって、
複数のアプリケーションサービス用の複数のプロセスと、
前記プロセスと対応づけて設けられた複数の仮想デバイスドライバと、
各ＶＬＡＮから受信したＶＬＡＮタグが付与されたデータを、ＶＬＡＮタグに基づき宛先アドレスを変更する受信用アドレス変更処理部と、
前記アドレス変更処理部が変更した宛先アドレスに基づいて仮想デバイスドライバを選択する選択部と、
前記プロセスからのデータを前記仮想デバイスドライバを介して受信し、送信元アドレスに基づいて、送信元アドレスの変更とタグの付与を行う送信用アドレス変更処理部と、
を備え、
サーバ上の前記プロセスがクライアントからデータを受信する際、
前記受信用アドレス変更処理部は、受信したＭＡＣフレームから取り出したＶＬＡＮタグに対応する内部向けＩＰアドレスを取得し、宛先ＩＰアドレスを外部向けＩＰアドレスから内部向けＩＰアドレスに書き換え、ＭＡＣヘッダを削除してＩＰパケット化し、そのＩＰパケットを前記選択部へ転送し、
前記選択部は、ＩＰパケットの宛先ＩＰアドレスに対応する前記仮想デバイスドライバを選択し、
選択された前記仮想デバイスドライバは、前記選択部から受信したＩＰパケットを前記プロセスへ向けて転送し、
宛先ＩＰアドレスでデータ待ちをしている前記プロセスは、ＩＰパケット中のデータを受信し、処理を実行し、
一方、
サーバ上の前記プロセスがクライアントに対してデータを送信する際、
前記プロセスは、送信元ＩＰアドレスが内部向けＩＰアドレスであるデータを発行し、
前記送信用アドレス変更処理部は、送信元である内部向けＩＰアドレスに対応するＶＬＡＮタグと外部向けＩＰアドレスとを求め、ＩＰパケットにおける送信元ＩＰアドレスを外部向けＩＰアドレスに書き換え、求めたＶＬＡＮタグを含むＭＡＣヘッダをＩＰパケットに付加することによってＭＡＣフレームを作成し、
前記送信用アドレス変更処理部は、作成されたＭＡＣフレームをＶＬＡＮへ向けて転送する
ＶＬＡＮサーバ。
【請求項４】
プロセス識別番号、ＶＬＡＮタグ、外部向けＩＰアドレス、内部向けＩＰアドレスを対応付けて記憶するアドレス変更テーブルを備え、
前記送信用及び／又は受信用アドレス変更処理部は、前記アドレス変更テーブルを参照して、ＩＰアドレスの変換及び／又はＶＬＡＮタグの取得を行う
請求項１乃至３のいずれかに記載のＶＬＡＮサーバ。
【請求項５】
サーバプロセス識別番号、内部向けＩＰアドレス、仮想デバイスドライバ識別番号を対応付けて記憶する仮想デバイスドライバ選択テーブルを備え、
前記選択部は、前記仮想デバイスドライバ選択テーブルを参照して、仮想デバイスドライバを選択する
請求項１乃至３のいずれかに記載のＶＬＡＮサーバ。
【請求項６】
複数のＶＬＡＮを収容した集積装置を介して複数のＶＬＡＮと接続され、ＭＡＣフレームを送信又は受信する請求項１乃至３のいずれかに記載のＶＬＡＮサーバであって、
前記集積装置は、クライアントからのＭＡＣフレームに対して、ＭＡＣヘッダにＶＬＡＮタグを挿入してサーバに転送し、一方、サーバからのＭＡＣフレームに対して、ＭＡＣヘッダを除去してクライアントへ転送する、前記ＶＬＡＮサーバ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＶＬＡＮ（Ｖｉｒｔｕａｌ  ＬＡＮ）サーバに係り、特に、ＴＣＰ／ＩＰを用いたネットワークに接続されている物理的に１台のサーバで複数のＶＬＡＮに対してサービスを提供することを可能にするＶＬＡＮサーバに関するものである。
【背景技術】
【０００２】
一つのＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）システムにおいて、物理的な接続に依存せずにＬＡＮ上の特定の端末で仮想的なグループを形成する技術のことをＶＬＡＮ（Ｖｉｒｔｕａｌ  ＬＡＮ）と呼ぶ。
【０００３】
ＬＡＮ上に設置された集線装置（以下スイッチングハブと称す）に、予めＶＬＡＮ毎にポート番号を設定し、各々のＶＬＡＮが使用するポート毎に仮想的なグループを形成させ通信を行わせるものをポートＶＬＡＮと呼ぶ。また、ネットワークを構成するスイッチングハブに予めＶＬＡＮ毎にタグ（所定の値）を設定し、各々のＶＬＡＮが扱うデータのタグ毎に仮想的なグループを形成させ通信を行わせるものをタグＶＬＡＮ（ＩＥＥＥ８０２．１Ｑ  規格）と呼ぶ。
【０００４】
各端末がどのＶＬＡＮに所属するかは、ＭＡＣフレームに付加されたタグの値で識別される。ＬＡＮを分割することによって回線のトラフィック量を軽減させたり、複数のＶＬＡＮで物理的な配線を共有することでコスト削減が計れるなどのメリットがある。また、ＶＬＡＮはネットワークの運用管理が容易であることから、さまざまな企業に急速に普及しつつある。
【０００５】
しかし、ＶＬＡＮにおいてＷＥＢアプリケーションやファイル転送機能といった通常１台のサーバによって提供されるべきサービスを実現する場合、各ＶＬＡＮに１台ずつサーバを設置するのはコスト面や運用管理面から難点がある。
【０００６】
そこで、物理的に１台のサーバをＶＬＡＮで共有する方法を考える。そのためには、サーバ内に同一種アプリケーション（ＷＥＢやＦＴＰなど）プロセス（以後サーバプロセスと呼ぶ）をＶＬＡＮの数だけ起動させるのが適切である。このようなサーバの実現方法として、例えば、特開２００３−１６７８０５号により提供される手段がある。
【０００７】
前記特開２００３−１６７８０５号においては、サーバは通信相手クライアントの属する閉域網を識別するためにＶＬＡＮタグを用いている。すなわち、クライアントからのＭＡＣフレームにはＶＬＡＮタグが付加されており、サーバは受信したフレームのＶＬＡＮタグをもってフレームの送信元クライアントが属するＶＬＡＮを識別可能である。また、前記特開２００３−１６７８０５号では受信したＭＡＣフレームをサーバプロセスへ転送するためのネットワークプロトコルとしてＴＣＰ／ＩＰを用いているが、収容する閉域網の数だけＴＣＰ／ＩＰスタックやデバイスドライバを設けていることを特徴としている。すなわち、各サーバプロセスは閉域網に対応したＴＣＰ／ＩＰスタックからデータを受信することによって特定の閉域網と通信することが可能である。
【特許文献１】特開２００３−１６７８０５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかしながら、特開２００３−１６７８０５号では、ＴＣＰ／ＩＰスタックやデバイスドライバを複数設けることによって、例えば通信相手への経路を決定するためのルーティングテーブルや、ＩＰアドレスとＭＡＣアドレスの対応を管理するためのＡＲＰテーブルなどのデータを閉域網の数だけメモリ上に持たねばならず、メモリ使用量の増大をまねく懸念がある。また、特開２００３−１６７８０５号では、閉域網Ａ用〜Ｃ用の各通信フローが、それぞれひとつのコンピュータに対応しており、閉域網の数だけコンピュータを有する必要があり、ハードウェア量の増大をまねく懸念がある。
【０００９】
そこで、本発明では、以上の点に鑑み、ＴＣＰ／ＩＰスタックとデバイスドライバを１つのみ実装することでルーティングテーブルやＡＲＰテーブルなどのデータを１つのみ有した上で複数のＶＬＡＮへサービスを提供するＶＬＡＮサーバを実現することを目的とする。もちろんＴＣＰ／ＩＰスタックとデバイスドライバを１つしか持たない場合でも複数のＶＬＡＮを収容すればその数だけのルーティング情報などを持つ必要があるが、ルーティングテーブル自体を複数持つわけではないため、各テーブルに共通な情報などが節約でき、全体としてメモリ使用量の低減に貢献する。
【００１０】
また、本発明では、ＴＣＰ／ＩＰスタックとデバイスドライバを１つに集約するために、下記課題を解決したＶＬＡＮサーバを提供することを目的とする。
【００１１】
（１）同一種サーバプロセスの識別方法
通常１つのネットワークインタフェースにつき割り当てられるＩＰアドレスは１つである。かつ、同一種別サーバプロセスは同一ＴＣＰポート番号を持つので、ＴＣＰ／ＩＰスタックが１つしかない場合、サーバプロセスどうしの区別がつかなくなる恐れがある。そこで、プロセスどうしを識別するための方法を別途提案する必要がある。
【００１２】
（２）サーバプロセスの通信相手ＶＬＡＮの識別方法
サーバプロセスは、ネットワークプロトコル上ＴＣＰ／ＩＰの上位に位置するため、ＴＣＰ／ＩＰより下位の概念であるＶＬＡＮを認識する手段を持たない。そこで何か別の方法によって通信相手のＶＬＡＮを識別しなければならない。
【課題を解決するための手段】
【００１３】
本発明は、複数のＶＬＡＮを収容した集線装置と接続され、各ＶＬＡＮ毎のアプリケーションサービスを提供するサーバであって、前記複数のアプリケーションサービス用の複数のプロセスと、前記集線装置を介して前記ＶＬＡＮから受信したデータを、前記集線装置が付与したタグに基づいて、宛先アドレスを変更するアドレス変更処理手段と、前記アドレス変更処理手段が変更した宛先アドレスに基づいて仮想デバイスドライバを選択する選択手段と、前記プロセスと対応づけて設けられ、前記選択手段を介して、ＮＡＴ処理手段から受信したデータを前記プロセスに転送する仮想デバイスドライバとを備えたことを、ひとつの特徴とする。
【００１４】
本発明は、複数のＶＬＡＮを収容した集線装置と接続され、各ＶＬＡＮ毎のアプリケーションサービスを提供するサーバであって、前記複数のアプリケーションサービス用の複数のプロセスと、前記プロセスと対応づけて設けられた複数の仮想デバイスドライバと、前記プロセスからのデータを仮想デバイスドライバを介して受信し、送信元アドレスに基づいて、送信元アドレスの変更とタグの付与を行うアドレス変更処理手段と、前記アドレス変更処理手段からのデータを前記集線装置へ転送する転送手段とを備えたことを、他の特徴とする。
【００１５】
本発明の第１の解決手段によると、
複数のＶＬＡＮと接続され、各ＶＬＡＮ毎のアプリケーションサービスを提供するサーバであって、
複数のアプリケーションサービス用の複数のプロセスと、
前記プロセスと対応づけて設けられた複数の仮想デバイスドライバと、
各ＶＬＡＮから受信したＶＬＡＮタグが付与されたデータを、ＶＬＡＮタグに基づき宛先アドレスを変更する受信用アドレス変更処理部と、
前記アドレス変更処理部が変更した宛先アドレスに基づいて仮想デバイスドライバを選択する選択部と、
を備え、
サーバ上の前記プロセスがクライアントからデータを受信する際、
前記受信用アドレス変更処理部は、受信したＭＡＣフレームから取り出したＶＬＡＮタグに対応する内部向けＩＰアドレスを取得し、宛先ＩＰアドレスを外部向けＩＰアドレスから内部向けＩＰアドレスに書き換え、ＭＡＣヘッダを削除してＩＰパケット化し、そのＩＰパケットを前記選択部へ転送し、
前記選択部は、ＩＰパケットの宛先ＩＰアドレスに対応する前記仮想デバイスドライバを選択し、
選択された前記仮想デバイスドライバは、前記選択部から受信したＩＰパケットを前記プロセスへ向けて転送し、
宛先ＩＰアドレスでデータ待ちをしている前記プロセスは、ＩＰパケット中のデータを受信し、処理を実行する
ＶＬＡＮサーバが提供される。
【００１６】
本発明の第２の解決手段によると、
複数のＶＬＡＮと接続され、各ＶＬＡＮ毎のアプリケーションサービスを提供するサーバであって、
複数のアプリケーションサービス用の複数のプロセスと、
前記プロセスと対応づけて設けられた複数の仮想デバイスドライバと、
前記プロセスからのデータを前記仮想デバイスドライバを介して受信し、送信元アドレスに基づいて、送信元アドレスの変更とタグの付与を行う送信用アドレス変更処理部と、
を備え、
サーバ上の前記プロセスがクライアントに対してデータを送信する際、
前記プロセスは、送信元ＩＰアドレスが内部向けＩＰアドレスであるデータを発行し、
前記送信用アドレス変更処理部は、送信元である内部向けＩＰアドレスに対応するＶＬＡＮタグと外部向けＩＰアドレスとを求め、ＩＰパケットにおける送信元ＩＰアドレスを外部向けＩＰアドレスに書き換え、求めたＶＬＡＮタグを含むＭＡＣヘッダをＩＰパケットに付加することによってＭＡＣフレームを作成し、
前記送信用アドレス変更処理部は、作成されたＭＡＣフレームをＶＬＡＮへ向けて転送する
ＶＬＡＮサーバが提供される。
【００１７】
本発明の第３の解決手段によると、
複数のＶＬＡＮと接続され、各ＶＬＡＮ毎のアプリケーションサービスを提供するサーバであって、
複数のアプリケーションサービス用の複数のプロセスと、
前記プロセスと対応づけて設けられた複数の仮想デバイスドライバと、
各ＶＬＡＮから受信したＶＬＡＮタグが付与されたデータを、ＶＬＡＮタグに基づき宛先アドレスを変更する受信用アドレス変更処理部と、
前記アドレス変更処理部が変更した宛先アドレスに基づいて仮想デバイスドライバを選択する選択部と、
前記プロセスからのデータを前記仮想デバイスドライバを介して受信し、送信元アドレスに基づいて、送信元アドレスの変更とタグの付与を行う送信用アドレス変更処理部と、
を備え、
サーバ上の前記プロセスがクライアントからデータを受信する際、
前記受信用アドレス変更処理部は、受信したＭＡＣフレームから取り出したＶＬＡＮタグに対応する内部向けＩＰアドレスを取得し、宛先ＩＰアドレスを外部向けＩＰアドレスから内部向けＩＰアドレスに書き換え、ＭＡＣヘッダを削除してＩＰパケット化し、そのＩＰパケットを前記選択部へ転送し、
前記選択部は、ＩＰパケットの宛先ＩＰアドレスに対応する前記仮想デバイスドライバを選択し、
選択された前記仮想デバイスドライバは、前記選択部から受信したＩＰパケットを前記プロセスへ向けて転送し、
宛先ＩＰアドレスでデータ待ちをしている前記プロセスは、ＩＰパケット中のデータを受信し、処理を実行し、
一方、
サーバ上の前記プロセスがクライアントに対してデータを送信する際、
前記プロセスは、送信元ＩＰアドレスが内部向けＩＰアドレスであるデータを発行し、
前記送信用アドレス変更処理部は、送信元である内部向けＩＰアドレスに対応するＶＬＡＮタグと外部向けＩＰアドレスとを求め、ＩＰパケットにおける送信元ＩＰアドレスを外部向けＩＰアドレスに書き換え、求めたＶＬＡＮタグを含むＭＡＣヘッダをＩＰパケットに付加することによってＭＡＣフレームを作成し、
前記送信用アドレス変更処理部は、作成されたＭＡＣフレームをＶＬＡＮへ向けて転送する
ＶＬＡＮサーバが提供される。
【発明の効果】
【００１８】
本発明では、１台のサーバで複数のＶＬＡＮにサービスを提供するにあたり複数のサーバプロセスを持つにも拘らず、ＴＣＰ／ＩＰスタック及びデバイスドライバを１つしか実装しないため、ルーティングテーブルやＡＲＰテーブルを１つのみ持てばよく、メモリ使用量の低減が可能である。
【００１９】
また、本発明は、特にＴＣＰ／ＩＰスタック及びデバイスドライバを１つに集約するにあたっての課題を下記のように解決するという効果を奏する。
【００２０】
（１）同一種サーバプロセスの識別方法
通常１つのＴＣＰ／ＩＰスタックにおいて、１つのネットワークインタフェースにつきＩＰアドレスは１つのみ割り当て可能だが、仮想デバイスドライバを複数設けることで、複数のネットワークインタフェースがあるかのように見せることができ、サーバ内に複数のＩＰアドレスを持つことを可能にしている。
各サーバプロセスは、ポート番号が同じであっても、異なる内部向けＩＰアドレスを持たせることによって、プロセスの識別が可能になる。
【００２１】
（２）サーバプロセスの通信相手ＶＬＡＮの識別方法
ＮＡＴによってＶＬＡＮタグと内部向けＩＰアドレスが関連付けられることにより、サーバプロセスは対応するＶＬＡＮとだけ通信ができる。
また、従来ＬＡＮに接続される通常のサーバはＴＣＰ／ＩＰスタックを１つのみ有するが、このサーバをＶＬＡＮで共有するサーバとして用いるよう用途を変更する場合にも本発明によれば、ＴＣＰ／ＩＰスタックを移し変えることなく、ドライバの変更のみで済むため、実現が容易である。
【発明を実施するための最良の形態】
【００２２】
ＴＣＰ／ＩＰスタックを１つのみ使用する形態で複数のＶＬＡＮにサービスを提供するサーバを実現した。
【００２３】
１．ＶＬＡＮサーバの構成
図１は、本実施の形態におけるシステム構成図を示す。
一般に、サーバが収容するＶＬＡＮの数は複数であることから、本実施の形態では、一例として、サーバ（１００）が収容するＶＬＡＮの数を３として説明する。
【００２４】
サーバ（１００）は、クライアント＃１−１〜＃３−２（１２１〜１２６）とスイッチングハブ（集線装置）（１１３）を介して接続されている。スイッチングハブ（１１３）のポート１（１１４）とポート２（１１５）に属するクライアント（クライアント＃１−１（１２１）、＃１−２（１２２））は、ＶＬＡＮ＃１（１２７）に属し、ポート３（１１６）とポート４（１１７）に属するクライアント（クライアント＃２−１（１２３）、＃２−２（１３４））は、ＶＬＡＮ＃２（１２８）に属し、ポート５（１１８）とポート６（１１９）に属するクライアント（クライアント＃３−１（１２５）、＃３−２（１２６））はＶＬＡＮ＃３（１２９）に属する。
【００２５】
サーバ（１００）は、ポート７（１２０）に接続されている。ポート１（１１４）とポート２（１１５）の間、ポート３（１１６）とポート４（１１７）、及びポート５（１１８）とポート６（１１９）の間でデータ送受信はできるが、例えばポート１（１１４）とポート３（１１６）の間などＶＬＡＮをまたぐデータの送受信はできない（ポートＶＬＡＮ）。また、ポート１〜６（１１４〜１１９）はいずれもポート７（１２０）とデータ送受信ができるが、その際はスイッチングハブ（１１３）にてＭＡＣフレームにＶＬＡＮタグが付加され、ＶＬＡＮタグによってＶＬＡＮを識別している（タグＶＬＡＮ）。
【００２６】
サーバ（１００）は、ＶＬＡＮ（１２７〜１２９）にサービス（例えばＷｅｂやＦＴＰ）を提供するためのＶＬＡＮ数分のサーバプロセス（サーバプロセス＃１〜＃３（１０１〜１０３））を起動する。サーバがＷｅｂ専用サーバであれば、これら複数のサーバプロセスは全てＷｅｂサーバプロセスであるし、もしＶＬＡＮ毎に提供するサービスが違うのであれば、例えば、ＶＬＡＮ＃１用にＷｅｂサーバプロセスを起動し、ＶＬＡＮ＃２用にＦＴＰサーバを起動することも可能である。またサーバはこれらサーバプロセスの他にサーバプロセスからのデータをＩＰパケット化したり、これらサーバプロセス宛てのＩＰパケットをサーバプロセスに渡すためのＴＣＰ／ＩＰスタック（１０４）、及びプロトコルスタック上ＴＣＰ／ＩＰスタックに接続され、ＩＰパケットをサーバ外部へ送信したり、サーバ外部からのデータを受信してＴＣＰ／ＩＰスタックに渡すためのデバイスドライバ（１０５）を備える。
【００２７】
デバイスドライバ（１０５）は、ＶＬＡＮ数分の仮想デバイスドライバ（仮想デバイスドライバ＃１〜＃３（１０６〜１０８））とデータリンク制御部（１０９）を備える。
【００２８】
仮想デバイスドライバとは、同一のデバイスドライバを名称を変えて複数登録することで、ＴＣＰ／ＩＰスタックに対してあたかも複数のネットワークインタフェースを収容しているかのように見せているものである。複数のネットワークインタフェースがあれば、その数だけＩＰアドレスを与えることが可能になるため、各仮想デバイスドライバに異なるＩＰアドレスを与えることによってサーバ内に複数のＩＰアドレスを登録することを可能にしている。
【００２９】
データリンク制御部（１０９）は、仮想デバイスドライバ選択手段（選択部）（１１０）と送信用ＶＬＡＮタグ−ＮＡＴ手段（送信用アドレス変更処理部）（１１１）、受信用ＶＬＡＮタグ−ＮＡＴ手段（受信用アドレス変更処理部）（１１２）を備え、仮想デバイスドライバ選択手段（１１０）はＴＣＰ／ＩＰスタックから受信したパケットをどの仮想デバイスドライバに振り分けるのかを決定し、決定されたドライバにパケットを受け渡すものである。
【００３０】
また、送信用ＶＬＡＮタグ−ＮＡＴ処理手段（１１１）は送信するパケットの送信元ＩＰアドレスの値をＮＡＴによって所定の外部ＩＰアドレスに変更し、ＭＡＣヘッダを付加してＭＡＣフレームを構成し、ＭＡＣヘッダ中にＶＬＡＮタグを書き込むものである。送信側のＮＡＴの方法については図１０〜１２（後述）にて説明する。
【００３１】
また、受信用ＶＬＡＮタグ−ＮＡＴ処理手段（１１２）は受信したＭＡＣフレームにて宛先ＩＰアドレスをＮＡＴによって適当な内部ＩＰアドレスに変更し、ＭＡＣフレームを削除してＩＰパケット化するものである。受信側のＮＡＴの方法については図７〜９（後述）にて説明する。
【００３２】
サーバプロセス＃１〜＃３（１０１〜１０３）は、ＶＬＡＮに対して非公開な内部ＩＰアドレスを持っている。例えば、サーバプロセス＃１は１９２．１６８．１０．１（以下Ｎ１と称す）を、サーバプロセス＃２は１９２．１６８．２０．１（以下Ｎ２と称す）を、サーバプロセス＃３は１９２．１６８．３０．１（以下Ｎ３と称す）の内部ＩＰアドレスをそれぞれ持っている。Ｎ１、Ｎ２、Ｎ３はこの例のように必ず異なる値である。
【００３３】
仮想デバイスドライバ＃１〜＃３（１０６〜１０８）も同様に、内部ＩＰアドレスＮ１〜Ｎ３を持っている。この例では、内部ＩＰアドレスＮ１〜Ｎ３は、サーバプロセスの内部ＩＰアドレスＮ１〜Ｎ３とそれぞれ同じである。一方、デバイスドライバ（１０５）はＶＬＡＮ向けに公開している外部ＩＰアドレス１７２．２１．１０．１（以下Ｇ１と称す）、１５８．２１．１．１０（以下Ｇ２と称す）、１５８．２１．１．１０（以下Ｇ３と称す）を持っており、ＶＬＡＮ＃１（１２７）のクライアント（１２１，１２２）がサーバと通信する際のサーバのＩＰアドレスはＧ１を用い、ＶＬＡＮ＃２（１２８）の場合はＧ２、ＶＬＡＮ＃３（１２９）の場合はＧ３を用いる。
【００３４】
ＶＬＡＮ＃１（１２７）、ＶＬＡＮ＃２（１２８）、ＶＬＡＮ＃３（１２９）間は、直接通信することができないため、各ＶＬＡＮでＩＰアドレスが重複することは可能である。それゆえサーバの外部向けＩＰアドレスＧ１、Ｇ２、Ｇ３はこの例のように同じ値であってもかまわない。なお、サーバにおける外部ＩＰアドレスと内部ＩＰアドレスの登録については図６（後述）にて説明する。
【００３５】
クライアント＃１−１〜＃３−２（１２１〜１２６）、はＩＰアドレスＣ１〜Ｃ６を持っているが、これらも同一ＶＬＡＮ内で重複しなければ他のＶＬＡＮのクライアントとＩＰアドレスが重複してもかまわない。例えば、本実施例ではＶＬＡＮ＃２（１２８）に属するクライアント＃２−１（１２３）とＶＬＡＮ＃３（１２９）に属するクライアント＃３−１（１２５）は同一ＩＰアドレス（１５８．２１．１．２０）を持っている。
【００３６】
図２は、サーバ（１００）のハードウェア構成図を示したものである。
ＣＰＵ（２００）には、ローカルバス（２０６）を介して、メモリ（２０１）、ディスク装置（２０２）、ネットワークインタフェースデバイス（２０３）、表示装置（２０４）及び入力装置（２０５）が接続されている。
【００３７】
ディスク装置（２０２）には、ＶＬＡＮ（１２７〜１２９）に提供するためのアプリケーションプログラム、ＴＣＰ／ＩＰスタックプログラム、デバイスドライバプログラムなどが格納されている。ＣＰＵ（２００）は、ディスク装置（２０２）に格納されたこれらプログラムをメモリ（２０１）上に展開し、これを逐次読み出して実行する。次に、ネットワークインタフェースデバイス（２０３）は、ＬＡＮケーブル（２０７）を介してスイッチングハブ（１１０）と接続されており、サーバ（１００）がＶＬＡＮ（１２７〜１２９）上のクライアント（１２１〜１２６）と通信を行うためのフレームの送受信を行う。
【００３８】
図３は、サーバのソフトウェア構成図を示したものである。
ＶＬＡＮ＃１（１２７）にサービスを提供するためのサーバプロセス＃１（１０１）、ＶＬＡＮ＃２（１２８）にサービスを提供するためのサーバプロセス＃２（１０２）、ＶＬＡＮ＃３（１２９）にサービスを提供するためのサーバプロセス＃３（１０３）があり、これらは同一種別のサービスを行うため、ポート番号は同一（Ｐ１）であるが、ＩＰアドレスはそれぞれ異なる値Ｎ１、Ｎ２、Ｎ３を持っている。なお、異なる種別のサービスを行う場合は、ポート番号は複数となる。
【００３９】
また、ネットワークプロトコル処理を行うＴＣＰ／ＩＰスタック（１０４）、デバイスドライバ（１０５）があり、デバイスドライバ（１０５）はＶＬＡＮ（１２７〜１２９）と同数の仮想デバイスドライバ（仮想デバイスドライバ＃１〜＃３（１０６〜１０８））とデータリンク制御部（１０９）を備える。仮想デバイスドライバ（１０６〜１０８）は送信部（３００、３０２、３０４）と受信部（３０１、３０３、３０５）とを備える。
【００４０】
また、データリンク制御部（１０９）は送信部（３０６）、受信部（３０８）、及び仮想デバイスドライバ選択テーブル（３０９）、ＶＬＡＮタグ−ＮＡＴテーブル（アドレス変更テーブル）（３１０）を備える。送信部（３０６）には仮想デバイスドライバ（１０６〜１０８）からの送信パケットをキューイングするための送信パケットキュー（３０７）と、送信パケットの送信元ＩＰアドレスをＮＡＴするための送信用ＶＬＡＮタグ−ＮＡＴ処理手段（１１１）を有する。受信部（３０８）には仮想デバイスドライバ選択手段（１１０）と受信用ＶＬＡＮタグ−ＮＡＴ処理手段（１１２）を有する。なお、これらは全てサーバ（１００）のメモリ（２０１）上に展開されるものである。
【００４１】
図４は、ＶＬＡＮタグ−ＮＡＴテーブル（３１０）を図示したものである。このＶＬＡＮタグ−ＮＡＴテーブル（３１０）は、サーバプロセス列（４００）、タグ列（４０１）、外部向けＩＰアドレス列（４０２）、内部向けＩＰアドレス列（４０３）を含み、各行にはこれらを具体的な値によって関連付けている。
【００４２】
図５は、仮想デバイスドライバ選択テーブル（３０９）を図示したものである。仮想デバイスドライバ選択テーブル（３０９）は、サーバプロセス列（５００）、内部向けＩＰアドレス列（５０１）、仮想デバイスドライバ列（５０２）を含み、各行にはこれらを具体的な値によって関連付けている。
【００４３】
図６は、ＶＬＡＮタグ−ＮＡＴテーブル（３１０）を作成するためのサーバ（１００）の表示装置（２０４）における画面イメージの図である。
【００４４】
１つのＶＬＡＮにつきＶＬＡＮタグ入力欄（６０１）、外部向けＩＰアドレス入力欄（６０２）、内部向けＩＰアドレス入力欄（６０３）の３項目を入力する。ここで、サーバプロセスについては内部向けＩＰアドレスによって一意に決まるので、入力する必要はない。なお、サーバプロセスを入力するようにしてもよい。サーバ（１００）は、これら入力された情報を用いて、ＶＬＡＮタグ−ＮＡＴテーブル（３１０）の同一行のタグ欄（４０１）にＶＬＡＮタグの値を、外部向けＩＰアドレス欄（４０２）に外部向けＩＰアドレスの値を、内部向けＩＰアドレス欄（４０３）に内部向けＩＰアドレスの値を書き込む。
【００４５】
また、仮想デバイスドライバ選択テーブル（３０９）については、サーバ（１００）は、ＶＬＡＮタグ−ＮＡＴテーブル（３１０）に従い、入力された内部向けＩＰアドレスをもとに仮想デバイスドライバを生成し、仮想デバイスドライバ選択テーブル（３１０）の同一行の内部向けＩＰアドレス欄（５０１）に内部向けＩＰアドレスを、仮想デバイスドライバ欄（５０２）に仮想デバイスドライバの名称を書き込む。
【００４６】
２．  ＶＬＡＮサーバの動作
２．１  クライアントからサーバへ
図７は、ＶＬＡＮ上のクライアントがサーバ上のサーバに対してＷｅｂを使った検索を依頼するなど、クライアントがサーバ上のサーバプロセスにデータを送信した際のサーバ内でのデータの流れを示している。
【００４７】
ここでは、クライアントをＶＬＡＮ＃１（１２７）上のクライアント＃１−１（１２１）とし、サーバ（１００）上のサーバプロセスをサーバプロセス＃１（１０１）とする。サーバ（１００）のデバイスドライバ（１０５）のデータリンク制御部（１０９）の受信部（３０８）はネットワークインタフェースデバイス（２０３）よりＭＡＣフレームを受け取ると、受信用ＶＬＡＮタグ−ＮＡＴ処理手段（１１２）にてＶＬＡＮタグ−ＮＡＴテーブル（３１０）を用いてＭＡＣフレームから取り出したＶＬＡＮタグＶ１を基に、図４に示したようにＶ１に対応する内部向けＩＰアドレスＮ１を取得し、宛先ＩＰアドレスを外部向けＩＰアドレスＧ１から内部向けＩＰアドレスＮ１に書き換える。また、ＭＡＣヘッダを削除してＩＰパケット化し、仮想デバイスドライバ選択部（１１０）へ転送する。
【００４８】
仮想デバイスドライバ選択部（１１０）では、仮想デバイスドライバ選択テーブル（３１０）を用いて、ＩＰパケットの宛先ＩＰアドレスＮ１を基に図５に示したようにＮ１に対応する仮想デバイスドライバ＃１（１０６）を選択する。
【００４９】
仮想デバイスドライバ＃１（１０６）の受信部（３０１）は、ＩＰパケットに何ら加工を施すことなくＴＣＰ／ＩＰプロトコルスタック（１０４）へこれを転送する。ＴＣＰ／ＩＰプロトコルスタック（１０４）はＩＰパケットからデータを取り出し、ＩＰアドレスＮ１でデータ受信待ちをしているサーバプロセス＃１（１０１）へ転送する。
【００５０】
図８は、上記受信用ＶＬＡＮタグ−ＮＡＴ処理手段（１１２）における処理をフローチャートにて示したものである。
【００５１】
受信用ＶＬＡＮタグ−ＮＡＴ処理手段（１１２）は、受信ＭＡＣフレームの宛先ＩＰアドレスとＶＬＡＮタグを参照し（８０１）、これらを基にＶＬＡＮタグ−ＮＡＴテーブルにて内部ＩＰアドレスを検索する（８０２）。該当する内部向けＩＰアドレスがあったか判定し（８０３）、なければフレームは破棄される（８０５）。該当する内部向けＩＰアドレスがあれば、宛先ＩＰアドレスを検索によって取得した内部向けＩＰアドレスに書き換え（８０４）、ＭＡＣヘッダを除去して（８０６）ＩＰパケットが完成する。
【００５２】
図９は、図８における説明で、ＭＡＣフレームからＩＰパケットを構成するときの変化を示したものである。
【００５３】
まずクライアントから送出したときのＭＡＣフレーム（９００）はＭＡＣヘッダ（９０１）、ＩＰヘッダ（９０２）、データ（９０３）を含む。このフレームはスイッチングハブにてＭＡＣヘッダ（９０８）にＶＬＡＮタグ（９１１）を挿入され、サーバに転送される。サーバで受信したＭＡＣフレーム（９０７）のＩＰヘッダ（９０９）内部の宛先ＩＰ  アドレス（９１２）はＧ１であるが、ＩＰパケット化する際に宛先内部ＩＰアドレスＮ１（９１８）に書き換えられる。またＭＡＣヘッダ（９０８）は除去されている。なお、これら以外のパラメータは書き換えられることはない。
【００５４】
２．２  サーバからクライアントへ
図１０は、サーバがクライアントから依頼されたＷｅｂの検索結果を返す場合など、サーバ上のサーバプロセスがクライアントに対してデータを送信した際のサーバ内でのデータの流れを示している。
【００５５】
図７と同じくクライアントをＶＬＡＮ＃１（１２７）上のクライアント＃１−１（１２１）とし、サーバ（１００）上のサーバプロセスをサーバプロセス＃１（１０１）とする。サーバプロセス＃１（１０１）が発行したデータは送信元ＩＰアドレスが内部向けＩＰアドレスＮ１であるが、ＴＣＰ／ＩＰプロトコルスタックはデータをＩＰパケット化し、同じＩＰアドレスＮ１を持つ仮想デバイスドライバ＃１（１０６）の送信部（３００）に転送する。
【００５６】
仮想デバイスドライバ＃１（１０６）の送信部（３００）は、ＩＰパケットを何ら加工することなくデータリンク制御部（１０９）の送信部（３０６）が有する送信パケットキュー（３０７）へキューイングする。データリンク制御部（１０９）の送信部（３０６）では送信パケットキュー（３０７）からキュー要素、すなわちＩＰパケットを取り出し、送信用ＶＬＡＮタグ−ＮＡＴ処理手段（１１１）へ送る。
【００５７】
送信用ＶＬＡＮタグ−ＮＡＴ処理手段（１１１）では、ＶＬＡＮタグ−ＮＡＴテーブル（３１０）を用いて、送信元である内部向けＩＰアドレスＮ１を基に、図４に示したようにＮ１に対応するＶＬＡＮタグＶ１と外部向けＩＰアドレスＧ１とを求め、ＩＰパケットにおける送信元ＩＰアドレスをＮ１から外部向けＩＰアドレスＧ１に書き換える。また、ＩＰパケットにＭＡＣヘッダを付加することによってＭＡＣフレームを作成する際、ＭＡＣヘッダ内のＶＬＡＮタグにＶ１を書き込む。
【００５８】
送信用ＶＬＡＮタグ−ＮＡＴ処理手段（１１１）は、完成したＭＡＣフレームをネットワークインタフェースデバイス（２０３）へ転送する。図３で説明したようにＭＡＣフレームはネットワークインタフェースデバイス（２０３）からスイッチングハブ（１１３）を経由してＶＬＡＮ＃１（１２７）上に転送され、宛先ＩＰアドレスが合致するクライアント＃１−１（１２１）がこれを受信する。
【００５９】
図１１は、上記送信用ＶＬＡＮタグ−ＮＡＴ処理手段（１１１）における処理をフローチャートにて示したものである。
【００６０】
送信用ＶＬＡＮタグ−ＮＡＴ処理手段（１１１）は、送信パケットキュー（３０７）が空か見て（１１０１）、もしあれば送信パケットキュー（３０７）からＩＰパケットを１つ取り出し（１１０２）、パケット内の送信元ＩＰアドレスを参照する（１１０３）。送信元ＩＰアドレスを内部向けＩＰアドレスとし、これを基にしてＶＬＡＮタグ−ＮＡＴテーブルより外部向けＩＰアドレスとＶＬＡＮタグを検索する（１１０４）。該当するものがあったかの判定を行い（１１０５）、なければパケットは廃棄される（１１０７）。該当するものがあった場合、送信元ＩＰアドレスを検索によって取得した外部向けＩＰアドレスに書き換え（１１０６）、ＭＡＣヘッダを付加し、取得したＶＬＡＮタグをヘッダに書き込む（１１０８）。
【００６１】
図１２は、図１１における説明で、ＩＰパケットからＭＡＣフレームを構成するときの変化を示したものである。
【００６２】
すなわち、送信ＩＰパケット（１２００）のＩＰヘッダ（１２０１）内部の送信元ＩＰアドレス（１２０３）はＮ１であるが、ＭＡＣフレーム化する際に送信元ＩＰアドレスは外部ＩＰアドレスＧ１（１２１０）に書き換えられる。またＭＡＣヘッダ（１２０６）が付加されているが、ＭＡＣヘッダ（１２０６）内部のＶＬＡＮタグ（１２０９）にはＶ１が書き込まれている。なお、これら以外のパラメータは書き換えられることはない。送信ＭＡＣフレームはスイッチングハブにてＭＡＣヘッダ（１２１３）のようにＶＬＡＮタグが除去されてクライアントへ転送される。
【産業上の利用可能性】
【００６３】
本発明は、物理的に１台のサーバで複数にＶＬＡＮにサービスを提供することができる。また、本実施の形態では、スイッチングハブなどの集線装置を介して複数のＶＬＡＮと接続される構成を採用しているが、これに限らず、直接又は他のネットワーク又は装置を介して、複数のＶＬＡＮが接続されような構成を採用することが可能である。また、サーバ内部で、スイッチングハブのＶＬＡＮタグを削除または付与するようにしてもよい。
【図面の簡単な説明】
【００６４】
【図１】本実施の形態におけるシステム構成図。
【図２】サーバ（１００）のハードウェア構成図。
【図３】サーバのソフトウェア構成図。
【図４】ＶＬＡＮタグ−ＮＡＴテーブル（３１０）の図。
【図５】仮想デバイスドライバ選択テーブル（３０９）の図。
【図６】ＶＬＡＮタグ−ＮＡＴテーブル（３１０）を作成するためのサーバ（１００）の表示装置（２０４）における画面イメージの図。
【図７】サーバにおけるデータ受信時のデータの流れを示す説明図。
【図８】受信用ＶＬＡＮタグ−ＮＡＴ処理手段（１１２）における処理のフローチャート。
【図９】ＭＡＣフレームからＩＰパケットを構成するときの変化を示す説明図。
【図１０】サーバにおけるデータ送信時のデータの流れ示す説明図。
【図１１】送信用ＶＬＡＮタグ−ＮＡＴ処理手段（１１１）における処理のフローチャート。
【図１２】ＩＰパケットからＭＡＣフレームを構成するときの変化を示す説明図。
【符号の説明】
【００６５】
１００：ＶＬＡＮサーバ
１０１〜１０３：サーバプロセス＃１〜＃３
１０４：ＴＣＰ／ＩＰスタック
１０５：デバイスドライバ
１０６〜１０８：仮想デバイスドライバ＃１〜＃３
１０９：データリンク制御部
１１０：仮想デバイスドライバ選択手段
１１１：送信用ＶＬＡＮタグ−ＮＡＴ処理手段
１１２：受信用ＶＬＡＮタグ−ＮＡＴ処理手段
１１３：スイッチングハブ
１１４〜１２０：ポート１〜ポート７
１２１〜１２６：クライアント＃１−１〜＃３−２
１２７〜１２９：ＶＬＡＮ＃１〜＃３
２００：ＣＰＵ
２０１：メモリ
２０２：ディスク装置
２０３：ネットワークインタフェースデバイス
２０４：表示装置
２０５：入力装置
２０６：ローカルバス
２０７：ＬＡＮケーブル
３００：仮想デバイスドライバ＃１の送信部
３０１：仮想デバイスドライバ＃１の受信部
３０２：仮想デバイスドライバ＃２の送信部
３０３：仮想デバイスドライバ＃２の受信部
３０４：仮想デバイスドライバ＃３の送信部
３０５：仮想デバイスドライバ＃３の受信部
３０６：データリンク制御部の送信部
３０７：送信パケットキュー
３０８：データリンク制御部の受信部
４００：ＶＬＡＮタグ−ＮＡＴテーブルのサービスプロセス列
４０１：ＶＬＡＮタグ−ＮＡＴテーブルのタグ列
４０２：ＶＬＡＮタグ−ＮＡＴテーブルの外部向けＩＰアドレス列
４０３：ＶＬＡＮタグ−ＮＡＴテーブルの内部向けＩＰアドレス列
５００：仮想デバイスドライバ選択テーブルのサービスプロセス列
５０１：仮想デバイスドライバ選択テーブルの内部向けＩＰアドレス列
５０２：仮想デバイスドライバ選択テーブルの仮想デバイスドライバ列
６００：ＶＬＡＮタグ−ＮＡＴテーブル作成画面
６０１：ＶＬＡＮタグ入力欄
６０２：外部向けＩＰアドレス入力欄
６０３：内部向けＩＰアドレス入力欄
８００：受信用ＶＬＡＮタグ−ＮＡＴ処理手段における処理のフローチャートスタート
８０１：受信ＭＡＣフレームの宛先ＩＰアドレスとＶＬＡＮタグ参照処理
８０２：ＶＬＡＮタグ−ＮＡＴテーブル検索処理
８０３：検索結果判定
８０４：宛先ＩＰアドレスの変更処理
８０５：フレームの破棄処理
８０６：ＭＡＣヘッダ除去処理
８０７：受信用ＶＬＡＮタグ−ＮＡＴ処理手段における処理のフローチャート終了
９００：クライアントから送出したＭＡＣフレーム
９０１：クライアントから送出したＭＡＣフレームのＭＡＣヘッダ
９０２：クライアントから送出したＭＡＣフレームのＩＰヘッダ
９０３：クライアントから送出したＭＡＣフレームのデータ
９０４：クライアントから送出したＭＡＣフレームの送信元ＩＰアドレス
９０５：クライアントから送出したＭＡＣフレームの宛先外部向けＩＰアドレス
９０６：サーバにおける受信ＭＡＣフレーム
９０７：サーバにおける受信ＭＡＣフレームのＭＡＣヘッダ
９０８：サーバにおける受信ＭＡＣフレームのＩＰヘッダ
９０９：サーバにおける受信ＭＡＣフレームのデータ
９１０：サーバにおける受信ＭＡＣフレームのＶＬＡＮタグ
９１１：サーバにおける受信ＭＡＣフレームの送信元ＩＰアドレス
９１２：サーバにおける受信ＭＡＣフレームの宛先外部向けＩＰアドレス
９１３：サーバにおける受信ＩＰパケット
９１４：サーバにおける受信ＩＰパケットのＩＰヘッダ
９１５：サーバにおける受信ＩＰパケットのデータ
９１６：サーバにおける受信ＩＰパケットの送信元ＩＰアドレス
９１７：サーバにおける受信ＩＰパケットの宛先内部ＩＰアドレス
１１００：送信用ＶＬＡＮタグ−ＮＡＴ処理手段における処理のフローチャートスタート
１１０１：送信パケットキューの判定
１１０２：送信パケットキューの取り出し処理
１１０３：パケットの送信元ＩＰアドレス参照処理
１１０４：ＶＬＡＮタグ−ＮＡＴテーブル検索処理
１１０５：検索結果判定
１１０６：送信元ＩＰアドレスの変更処理
１１０７：パケットの破棄処理
１１０８：ＭＡＣヘッダ付加処理
１１０９：送信用ＶＬＡＮタグ−ＮＡＴ処理手段における処理のフローチャート終了
１２００：サーバからの送信ＩＰパケット
１２０１：サーバからの送信ＩＰパケットのＩＰヘッダ
１２０２：サーバからの送信ＩＰパケットのデータ
１２０３：サーバからの送信ＩＰパケットの送信元内部ＩＰアドレス
１２０４：サーバからの送信ＩＰパケットの宛先ＩＰアドレス
１２０５：サーバからの送信ＭＡＣフレーム
１２０６：サーバからの送信ＭＡＣフレームのＭＡＣヘッダ
１２０７：サーバからの送信ＭＡＣフレームのＩＰヘッダ
１２０８：サーバからの送信ＭＡＣフレームのデータ
１２０９：サーバからの送信ＭＡＣフレームのＶＬＡＮタグ
１２１０：サーバからの送信ＭＡＣフレームの送信元外部ＩＰアドレス
１２１１：サーバからの送信ＭＡＣフレームの宛先ＩＰアドレス
１２１２：クライアントが受信したＭＡＣフレーム
１２１３：クライアントが受信したＭＡＣフレームのＭＡＣヘッダ
１２１４：クライアントが受信したＭＡＣフレームのＩＰヘッダ
１２１５：クライアントが受信したＭＡＣフレームのデータ
１２１６：クライアントが受信したＭＡＣフレームの送信元外部ＩＰアドレス
１２１７：クライアントが受信したＭＡＣフレームの宛先ＩＰアドレス
【図１】
2005151509.tif 000003
【図２】
2005151509.tif 000004
【図３】
2005151509.tif 000005
【図４】
2005151509.tif 000006
【図５】
2005151509.tif 000007
【図６】
2005151509.tif 000008
【図７】
2005151509.tif 000009
【図８】
2005151509.tif 000010
【図１０】
2005151509.tif 000011
【図１１】
2005151509.tif 000012
【図９】
2005151509.tif 000013
【図１２】
2005151509.tif 000014