(57)【要約】【課題】  ＭＡＣアドレス等を識別することで通信可能なクライアントを制限する「フィルタリング機能」の利用が推奨されている。また、ネットワーク通信機器は階層構造をしており、階層ごとに機能が異なる。  その為、従来は下位レベルの階層では高度なフィルタリングができず、ネットワーク環境に悪影響を及ぼすという問題がある。【解決手段】  受信パケットのヘッダ部情報等を読み取り、受信パケットの種類を識別する。この識別の結果、ネットワーク構成ためのパケット（コネクション認証パケット、ＩＰアドレス決定パケット）の場合は、フィルタリング機能によりパケットが破棄されないようにする。これにより、簡単な構成でセキュリティ・レベルを維持しつつ、ネットワーク構成等の必要なパケットを破棄してしまうことを防止することができる。【選択図】  図１
2006067293.tif 000002
【特許請求の範囲】
【請求項１】
受信パケットのヘッダ情報と、予め登録されている他の通信機器に関する情報と、に基づいて、受信パケットを破棄するパケットフィルタリング機能を有する情報処理装置において、
受信パケットの種類を識別する識別手段と、
前記識別手段により識別した受信パケットの種類に応じて、受信パケットが前記パケットフィルタリング機能により破棄されないようにするフィルタ通過手段と、を有することを特徴とする情報処理装置。
【請求項２】
請求項１において、
前記フィルタ通過手段は、受信パケットを前記フィルタリング機能による破棄対象パケットから除外することを特徴とする情報処理装置。
【請求項３】
請求項１において、
前記フィルタリング機能は、受信パケットのヘッダ情報に含まれる該パケットの送信元機器情報と、前記予め登録されている他の通信機器に関する情報と、に基づいて、受信パケットを破棄することを特徴とする情報処理装置。
【請求項４】
請求項１において、
前記情報処理装置は、受信パケットが前記情報処理装置宛てか否かを識別する第１層と、受信パケットの通信経路選択または通信の開始または通信の終了の制御を行う第２層と、受信パケットに含まれるデータの変換または表示を行うための第３層と、の処理を行う制御手段を有し、
前記フィルタリング機能によるパケットフィルタリングは、前記第１層により実行されることを特徴とする情報処理装置。
【請求項５】
請求項１において、
前記識別手段は、受信パケットがネットワーク構成のためのパケットか否かを識別することを特徴とする情報処理装置。
【請求項６】
請求項１において、
前記識別手段は、受信パケットが、機器間のコネクション認証のための認証パケットか、または、ＩＰアドレスを決定するためのＩＰアドレス決定パケットか、を識別することを特徴とする情報処理装置。
【請求項７】
請求項１において、
前記識別手段は、受信パケットのヘッダ部に含まれる文字列に基づいて、受信パケットの種類を識別することで、受信パケットを破棄するか否かの判断をパケットを受信する下位層で実現可能とすることを特徴とする情報処理装置。
【請求項８】
請求項１において、
前記フィルタ通過手段は、前記識別手段による識別に応じて、前記パケットフィルタリング機能によるパケット破棄判断を実行しないことで、受信パケットが破棄されないようにすることを特徴とする情報処理装置。
【請求項９】
請求項１において、
前記フィルタ通過手段は、前記識別手段による識別に応じて、受信パケットを送信した通信機器を前記他の通信機器として登録することを特徴とする情報処理装置。
【請求項１０】
請求項１において、
前記フィルタ通過手段は、前記情報処理装置の無線通信のための設定中に前記処理を行うことを特徴とする情報処理装置。
【請求項１１】
受信パケットのフィルタリング処理方法において、
受信パケットの種類を識別する識別工程と、
前記識別工程において識別した受信パケットの種類に応じて、受信パケットの送信元に基づくフィルタリング処理、または、受信パケットの送信元に係わらずに受信パケットに基づく処理を実行する実行工程を有することを特徴とするフィルタリング処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、受信パケットのフィルタリング処理を行う情報処理装置及び受信パケットのフィルタリング処理方法に関する。
【背景技術】
【０００２】
ネットワーク機器には、セキュリティ対策として通信機器を特定する情報を識別することで、通信可能なクライアント機器を制限する「フィルタリング機能」が利用できるものが多く、また近年はその利用が強く推奨されている。
【０００３】
一般には機器固有の識別子を管理リストに登録し、リストに登録されている機器にのみ通信許可を与える、あるいは通信を拒否する。例えば、機器固有の識別子としてＭＡＣアドレス（Ｍｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ  ａｄｄｒｅｓｓ）を使用し、送信されてくるパケットのヘッダ情報から送信元のＭＡＣアドレスを識別し、管理リストに登録されているＭＡＣアドレス群との比較を行い、通信の可不可を決定する。
【０００４】
また、ルータやアクセスポイントのようなネットワーク構成の中核を担当する機器や、ＰＣ（パーソナルコンピュータ）のように複数のサービスが提供可能なクライアント機器におけるフィルタリング方法として、フィルタリング機能のセキュリティを強固にするもの（例えば、特許文献１）や、利便性を向上させるもの（例えば、特許文献２）など、高度なフィルタリング管理方法が考案されている。
【特許文献１】特開２００３−３２４４５７号公報
【特許文献２】特開２００２−１１８５６２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、従来の高度なフィルタリング方法は、単純なネットワーク通信しか必要としないクライアント機器においては必要ではなく、むしろ実装負荷やコストを抑えたフィルタリング技術が望まれることも多い。
【０００６】
しかし、クライアント機器にフィルタリング機能を簡潔に実装する場合、単純にパケット送信元の接続機器を判別するだけでは、リストに登録されていない通信機器からの通信は全て拒否してしまう。即ち、ネットワーク構成に必要なパケット（ＩＰアドレスを決定する際に必要なパケット類やコネクション認証に必要なパケット類）をもフィルタ・アウトしてしまい、ＩＰアドレスの取得さえもできずネットワーク接続が確立できないという問題がある。
【０００７】
クライアント機器は一般に、自分自身のＩＰアドレスを能動的に決定せず、ルータなどのネットワーク構成機器に決定してもらい、決定されたＩＰアドレスを取得する事で自分自身のＩＰアドレスを決定する。しかし、一般にフィルタリング用の登録リストには他のクライアント機器を登録するので、ルータやアクセスポイント等のネットワークの主幹を構成する通信機器は登録されない事が多い。その場合、クライアント機器が通信しているルータからの通信（本例では、新しいＩＰアドレスの割り当てのための通信）をも拒否してしまい、ネットワーク接続が確立できないという問題もある。
【０００８】
同様にコネクション認証時等においても、管理しているサーバから応答されてくる各種パケットを破棄してしまうため、クライアント機器はネットワーク接続が確立できないことになる。
【０００９】
これらの問題は、クライアント機器自身が備える登録リストにルータ、アクセスポイント、サーバ等の情報を登録すればよいのだが、一般に情報として用いられるＭＡＣアドレスを調べるのは煩雑であり、これらの機器の設置場所が手の届きにくい場所だったりするとなおさらＭＡＣアドレスを入手することが難しくなる。
【００１０】
また、クライアント機器自身が送信したパケットに対する応答パケットはフィルタリングを通過するように制御すればよいのだが、実現する為にはクライアント機器自身が送信したパケットを記憶する等の高度な制御が必要になる。
【００１１】
さらに、仮にクライアント機器ＡのＩＰアドレスを任意に設定し、所属するネットワーク内での通信が可能となっても、以下の問題が生じる。
【００１２】
他のクライアント機器Ｂがネットワークに接続された時には、ネットワーク内でＩＰアドレスが重複しないような処理（「ＩＰアドレス＊＊＊」を使用している機器を調査するための問い合わせ等）が行われるが、その場合、クライアント機器Ａの登録リストに登録されていないクライアント機器Ｂからの通信パケットは全て破棄してしまう。そのため、クライアント機器Ｂが使用しようとしているＩＰアドレスがクライアント機器ＡのＩＰアドレスと重複していることをクライアント機器Ａは認識できず、「そのＩＰアドレスは既に使用中です」とクライアント機器Ｂに対して応答ができない。その結果クライアント機器ＡとＢとで、同じＩＰアドレスが割り当てられてしまい、その後のネットワーク内の通信に不具合を生じさせてしまう危険性がある。
【００１３】
以上説明したとおり、高度なフィルタリング制御を行う必要性が無いクライアント機器用に、セキュリティ・レベルを保ったまま上記のような課題を解消しネットワーク接続の確立が可能な、簡潔な通信フィルタリングシステムの考案が必要である。
【課題を解決するための手段】
【００１４】
本発明は、上記課題を解決するために、受信パケットのヘッダ情報と、予め登録されている他の通信機器に関する情報と、に基づいて、受信パケットを破棄するパケットフィルタリング機能を有する情報処理装置において、受信パケットの種類を識別する識別手段と、前記識別手段により識別した受信パケットの種類に応じて、受信パケットが前記パケットフィルタリング機能により破棄されないようにするフィルタ通過手段と、を有することを特徴とする情報処理装置を提供する。
【００１５】
また、受信パケットのフィルタリング処理方法において、受信パケットの種類を識別する識別工程と、前記識別工程において識別した受信パケットの種類に応じて、受信パケットの送信元に基づくフィルタリング処理、または、受信パケットの送信元に係わらずに受信パケットに基づく処理を実行する実行工程を有することを特徴とするフィルタリング処理方法を提供する。
【発明の効果】
【００１６】
本発明によれば、簡単な構成でセキュリティ・レベルを維持しつつ、ネットワーク構成等の必要なパケットを破棄してしまうことを防止することができる。
【発明を実施するための最良の形態】
【００１７】
以下、図面を参照して、本発明の実施の形態例を説明する。
【実施例１】
【００１８】
図１は、本発明の第１実施形態を示す情報処理装置（ＰＣ）、プリンタ、ＩＥＥＥ８０２．１１ａ／ｂ／ｇ等の無線ＬＡＮ通信の中継局として機能するアクセスポイントを含むデータ処理システムの一例を示す図である。
【００１９】
ＰＣ１−１は有線ローカルインタフェースとしてＵＳＢインタフェースを有し、さらに、無線インタフェースとしてＰＣＭＣＩＡカードタイプの無線ＬＡＮインタフェースを備える。また、プリンタ１−２もＰＣと同様に有線ローカルインタフェースと、無線インタフェースとの両者を備える。
【００２０】
図２は、図１に示したＰＣ１−１とプリンタ１−２のハード構成を説明するブロック図であり、図１と同一のものには同一の符号を付してある。
【００２１】
ＰＣ１−１とプリンタ１−２との間では、ＵＳＢインタフェースケーブル１−５を使い印刷を行うことも可能であり、また無線ＬＡＮインタフェースを用いてアクセスポイント１−３を経由してプリンタ１−２へ印刷データを送ることも可能である。
【００２２】
図２において、ＰＣ１−１は、ＣＰＵ１を備えている。ＣＰＵ１は、ＲＯＭ３のプログラム用ＲＯＭあるいは外部メモリ１１に記憶された文書処理プログラム等に基づいて、図形や、イメージ、文字、表（表計算等を含む）等が混在した文書処理を実行し、システムバス４に接続される各デバイスをＣＰＵ１が総括的に制御する。
【００２３】
また、このＲＯＭ３のプログラム用ＲＯＭあるいは外部メモリ１１には、ＣＰＵ１の制御プログラムであるオペレーティングシステムプログラム（以下ＯＳ）等が記憶され、ＲＯＭ３のフォント用ＲＯＭあるいは外部メモリ１１には、上記文書処理の際に使用するフォントデータ等が記憶され、ＲＯＭ３のデータ用ＲＯＭあるいは外部メモリ１１には、上記文書処理等を行う際に使用する各種データが記憶されている。
【００２４】
ＲＡＭ２は、ＣＰＵ１の主メモリやワークエリア等として機能する。キーボードコントローラ（ＫＢＣ）５は、キーボード（ＫＢ）９や不図示のポインティングデバイスからのキー入力を制御する。ＣＲＴコントローラ（ＣＲＴＣ）６は、ＣＲＴディスプレイ（ＣＲＴ）１０の表示を制御する。ディスクコントローラ（ＤＫＣ）７は、ブートプログラム、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、及びプリンタ制御コマンド生成プログラム（以下、プリンタドライバと記す）等を記憶する外部メモリ１１とのアクセスを制御する。外部メモリ１１は、ハードディスク（ＨＤ）やフレキシブルディスク（ＦＤ）等で構成される。
【００２５】
プリンタコントローラ（ＰＲＴＣ）８は、ＵＳＢインタフェース３２、ＵＳＢコネクタ３３、ＵＳＢインタフェースケーブル１−５、または、カードＩ／Ｆ３０、無線ＬＡＮカード１−４を介して接続するプリンタ１−２との通信制御処理を実行する。
【００２６】
ＵＳＢインタフェース３２は、ＵＳＢコネクタ３３に接続されるＵＳＢインタフェースケーブル１−５を介してプリンタ１−４と有線通信可能に接続することができる。また、無線インタフェースとしてはＰＣＭＣＩＡカードタイプの無線ＬＡＮカード１−４をカードＩ／Ｆ３０を介して装着する。アクセスポイント１−３は、無線インタフェースのアクセスポイントで無線機器同士の仲介の役割を果たす。アクセスポイント１−３は、ＰＣＭＣＩＡカードタイプの無線ＬＡＮカードを装着することができる。なお、前述した無線ＬＡＮ通信部がプリンタに内蔵されている構成であっても本発明の動作には影響ない。
【００２７】
なお、ＣＰＵ１は、例えばＲＡＭ２上に設定された表示情報のアウトラインフォントへの展開（ラスタライズ）処理を実行し、ＣＲＴ１０上でのＷＹＳＩＷＹＧを可能としている。また、ＣＰＵ１は、ＣＲＴ１０上に表示されるマウスカーソル等で指示されたコマンドに基づいて、登録された種々のウィンドウを開き、種々のデータ処理を実行する。
【００２８】
これによって、ユーザは、印刷を実行する際、印刷の設定に関するウィンドウを開き、プリンタ１−２の設定や、印刷モードの選択を含むプリンタドライバに対する印刷処理方法の設定を行うことができる。
【００２９】
一方、プリンタ１−２は、プリンタＣＰＵ１２を備えている。プリンタＣＰＵ１２は、ＲＯＭ１３のプログラム用ＲＯＭに記憶された制御プログラム等あるいは外部メモリ１４に記憶された制御プログラム等に基づいて、システムバス１５に接続される印刷部（プリンタエンジン）１７に出力情報としての画像信号を出力する。また、このＲＯＭ１３のプログラム用ＲＯＭには、ＣＰＵ１２の制御プログラム等が記憶されている。ＲＯＭ１３のフォント用ＲＯＭには、上記出力情報を生成する際に使用するフォントデータ等が記憶され、ＲＯＭ１３のデータ用ＲＯＭには、ハードディスク等の外部メモリ１４を用いないプリンタ１−２の場合ではホストコンピュータ１−１上で利用される情報等が記憶されている。
【００３０】
ＣＰＵ１２は、プリンタ１−２内の情報等をＰＣ１−１に通知可能に構成されている。ＲＡＭ１９はＣＰＵ１２の主メモリやワークエリア等として機能し、図示しない増設ポートに接続されるオプションＲＡＭによりメモリ容量を拡張することができるように構成されている。
【００３１】
カードインタフェース３１は、スロットに装着される無線ＬＡＮカード１−４へのアクセスが可能に構成されている。ＵＳＢインタフェース３４は、ＵＳＢコネクタ３５にＵＳＢインタフェースケーブル１−５が接続される。
【００３２】
なお、ＲＡＭ１９は、出力情報展開領域や、環境データ格納領域、ＮＶＲＡＭ等に用いられる。前述したハードディスク（ＨＤ）や、ＩＣカード等の外部メモリ１４は、メモリコントローラ（ＭＣ）２０によりアクセスを制御される。外部メモリ１４は、オプションとして接続され、フォントデータや、エミュレーションプログラム、フォームデータ等を記憶する。さらに、操作パネル１５１には、操作のためのスイッチ及びＬＥＤ表示器等が配されている。
【００３３】
また、外部メモリ１４は、少なくとも１個以上備えられ、内蔵フォントに加えてオプションフォントカード、言語系の異なるプリンタ制御言語を解釈するプログラムを格納した外部メモリを複数接続できるように構成されていても良い。さらに、図示しない不揮発性であるＮＶＲＡＭを有し、操作パネル１５１からのプリンタモード設定情報を記憶するようにしても良い。
【００３４】
なお、図１、２では１台のＰＣのみが図示されているが、複数のＰＣが１つのアクセスポイントに接続可能で１つのプリンタを複数のＰＣで共有して印刷を行うことも可能である。無線ＬＡＮにはアクセスポイントを経由して複数の無線ＬＡＮ機器と接続可能なモードがあり、インフラストラクチャモードと呼ばれる。インフラストラクチャモードでは、アクセスポイントに設定されたＩＤ（ＳＳＩＤ）と同じＩＤを無線ＬＡＮ機器にも設定することで複数の無線ＬＡＮ機器からアクセスポイントを経由してＬＡＮを構成することができる。無線ＬＡＮとしてプリンタを使用する場合、プリンタがアクセスポイントに接続できるように設定する必要がある。
【００３５】
本実施例ではＰＣ１−１とアクセスポイント１−３との間の設定は既になされていてインフラストラクチャモードでと通信できる状態になっているものとする。
【００３６】
また、プリンタ１−２に関してはまだ無線ＬＡＮの設定が行なわれておらず、初期状態としてインフラストラクチャモードでＩＤは設定されていないものとしている。無線ＬＡＮの装備されていないプリンタでは一般的にＵＳＢでＰＣと接続されて印刷を行うものが主流となっている。
【００３７】
一般的にＰＣでは何らかのＯＳが動作していて、そのＯＳ環境で印刷を行うためには印刷用ソフト（プリンタドライバ）が必要となる。プリンタドライバは、ＯＳメーカーあるいはプリンタメーカーから提供され、予めＰＣにインストールされたり、ＣＤなどの形式で提供されたりする。プリンタで印刷を行うためには、何らかの形でプリンタドライバをインストールする必要がある。
【００３８】
またさらに、無線ＬＡＮを使って印刷を行うような場合には、プリンタ内の無線ＬＡＮの設定を行い、アクセスポイントと接続できる状態にした上、ＰＣでは無線ＬＡＮでの印刷を可能とするソフトウェアをインストールしプリンタに適した設定にしておく必要がある。
【００３９】
無線ＬＡＮ機器のインストール作業には様々な方法が用いられる。例えば、無線ＬＡＮのセットアップを無線ＬＡＮインタフェースで行うセットアップ方法では、まずセットアップを行うために、ＰＣの無線ＬＡＮ通信設定をセットアップ対象機器に合わせて無線動作モードや接続ＩＤ（ＳＳＩＤ）等を変更する必要があり、それまで正常に無線通信ができていたＰＣの無線ＬＡＮ設定を一旦変更しないとセットアップが行えないという弊害がある。また、機器をアクセスポイント１−３へ接続するにあたり、該当アクセスポイント１−３のＳＳＩＤをユーザーが覚えておき、それを入力設定する必要があるといった不便さがある。
【００４０】
こういった問題を解決するために、無線ＬＡＮのセットアップをより動作準備が簡易な無線ＬＡＮインタフェース以外のインタフェースを使用して行うというセットアップ方法が考えられ、例えばプリンタ１−２とアクセスポイント１−３とを有線ＬＡＮインタフェースで接続して無線ＬＡＮのセットアップを行うといったセットアップ方法も出現している。
【００４１】
しかしながら、この場合、プリンタ１−２とアクセスポイント１−３を結線することで既に家庭内で使用しているアクセスポイント１−３の結線状態や設定をセットアップの為に変更してしまう可能性があり、その場合には元に戻すことが困難であったり手間がかかったりする。またこの場合、実際設定操作を行うＰＣとプリンタは相変わらず無線ＬＡＮ経由の接続となる為、正しく接続されているかどうかを確かめるのが難しいという問題が残る。
【００４２】
上記に対して、本実施形態では無線ＬＡＮのインストールをＰＣ１−１とプリンタ１−２が備えるそれぞれのＵＳＢインタフェースを使って行う。無線ＬＡＮインタフェース３１とＵＳＢインタフェース３４が備わったプリンタ１−２において、一般的なＵＳＢプリンタのインストール同様にＰＣ１−１とプリンタ１−２をＵＳＢケーブル１−５で結線し、プリンタドライバのインストールを行なった後に、何らインタフェース上の通信結線状態を変更することなく無線ＬＡＮのインストールを行うことを可能としている。
【００４３】
プリンタ１−２の無線ＬＡＮ設定は、ＰＣ１−１とプリンタ１−２間のＵＳＢ通信により行なわれる為、既に正常通信設定が行われているＰＣ１−１やアクセスポイント１−３の無線ＬＡＮ設定や物理結線を変更することなくプリンタの無線ＬＡＮ設定が可能となる。
【００４４】
以降、一般的なプリンタドライバのインストールについて＜プリンタドライバのインストール処理＞で説明した後に、ＵＳＢインタフェースを使ったプリンタドライバのインストール、ＵＳＢインタフェースを使った無線ＬＡＮのインストールを説明する。
【００４５】
＜プリンタドライバのインストール処理＞
ＰＣなどのホストコンピュータにプリンタを接続して印刷を行えるようにするためには、ホストコンピュータのＯＳ上で印刷アプリケーションからの印刷命令を理解し、印刷命令に基づく印刷制御コマンド並びに印刷データをプリンタに転送し、プリンタの制御を行うためのソフトウェアが必要となる。このプリンタの制御を行うソフトウェアが前述したプリンタドライバである。
【００４６】
プリンタドライバに代表されるように、ホストコンピュータに接続される全てのハードウェアは、デバイスドライバを介してアプリケーションからの制御命令を受け取る仕組みで制御される。デバイスドライバはオペレーティングシステム（ＯＳ）上で起動されている特定の上位アプリケーション専用のものではないため、デバイスがホストコンピュータに接続されている間は一種の常駐プログラムとして特定のメモリ領域を占有して常駐している。
【００４７】
例えばＷｉｎｄｏｗｓ（登録商標）に代表される最近のＯＳは、デバイスをホストコンピュータに接続したときに自動的にそのデバイスに対応した適切なデバイスドライバを組み込むといったプラグ・アンド・プレイ機能を有している。デバイスを初めてホストコンピュータに接続した際のプラグ・アンド・プレイ処理の場合において、ＯＳが標準に備えているデバイスドライバの中に最適なものが無かった場合、デバイス購入時にフロッピディスクやＣＤ−ＲＯＭといったメディアで添付されるデバイスドライバをＯＳに組み込む必要がある。このデバイスドライバの組み込み作業をドライバのインストール作業と称する。
【００４８】
以下に、プラグ・アンド・プレイに対応したＯＳにおけるデバイスドライバのインストール処理を説明する。
【００４９】
プラグ・アンド・プレイ対応の有線インタフェースの代表的なものとしてＵＳＢインタフェースが挙げられる。ここではＵＳＢインタフェースを使ったプリンタドライバのインストールを例に挙げて説明を行う。
【００５０】
図３は、プリンタドライバをインストールする際にホストコンピュータ上に表示されるメッセージ画面であり、図４はデバイスドライバのインストール時のシーケンスフローチャートである。なお、当該シーケンスフローまたはメッセージはプラグ・アンド・プレイが正常に行われた場合のみとする。プラグ・アンド・プレイが失敗した場合のエラーシーケンスは別途存在することは言うまでもない。
【００５１】
まずユーザーがプラグ・アンド・プレイ対応インタフェースであるＵＳＢインタフェースを使い、プリンタをホストコンピュータに接続する。ホストコンピュータ上で動作しているＯＳは、ＵＳＢインタフェース経由でデバイスがホストコンピュータに接続されたことを検出する（図４のステップＳ３００）。このときに、図３の２−１のような画面を表示する。
【００５２】
ユーザーは、インストールを行いたい場合には、「インストール」ボタン２−２を押下する。一方、プリンタドライバのインストールをしたくない場合には、「キャンセル」ボタン２−３を押下する。つぎに、ＯＳは、ＵＳＢインタフェースで定められた所定の方法でＵＳＢ機器の基本情報であるデバイス・ディスクリプタをプリンタから読み出す（ステップＳ３０１）。デバイス・ディスクリプタには、デバイスの種類を示すデバイス・クラス情報など、その機器に関する基本機能情報が含まれている。
【００５３】
ＯＳは、デバイス・ディスクリプタを読み出して解析することにより接続されたデバイスがプリンタ・クラスに属するデバイス、すなわちプリンタであるかを判断する（ステップＳ３０２）。接続されたデバイスがプリンタである場合には、ステップＳ３０３に進み、プリンタ以外のデバイスであれば、ステップＳ３１０に進む。ステップＳ３１０では、デバイスに対応するその他の処理を行う。
【００５４】
プリンタのデバイスドライバ構成は、一般的には大きく２レベルのドライバから構成される。１つは、プリンタが接続されるインタフェース毎に、そのインタフェース上で該当デバイスとのデータ通信を行うためのプロトコルを制御する下位レベルドライバとしてのポートドライバである。２つ目は、ポートドライバの上位層に位置し、実際の印刷アプリケーションデータを個々のプリンタに適した記録データやプリンタ言語に変換する上位プリンタドライバである。上位プリンタドライバは、プリンタの動作状態、すなわちステータス情報をプリンタから取得して、当該ステータス情報をプリンタ状態表示用アプリケーションに引き渡すといったことも行っている。
【００５５】
接続されたデバイスがプリンタであると認識すると、ＯＳは予め定められた方法を使い、適切なポートドライバをインストールして使用可能な状態にする（ステップＳ３０３）。このとき、ＯＳは図３の２−４のような画面を表示する。ユーザーは、ポートドライバのインストールを中止したいときには、「キャンセル」ボタン２−５を押下する。さらに、ポートドライバの制御により、インタフェース上に検出された特定のデバイスとＰＣとの間で１対１のデータ通信を行うための論理コネクションであるポートインスタンスが用意される。ＵＳＢプリンタの場合、ＵＳＢ印刷用のポートドライバがインストールされたのちに、そのプリンタとホストコンピュータとの間の通信を行うための論理通信路としてポートインスタンスが作成される（ステップＳ３０４）。
【００５６】
ポートドライバがロードされ、初期化処理を経て動作可能状態になると、ＯＳは、所定の方法で接続されたプリンタの詳細情報としてクラスディスクリプタを取得する（ステップＳ３０５）。ＵＳＢプリンタの場合、これは、ＵＳＢプリンタ・クラス規格にて定義されたデバイスＩＤの読み出しコマンド（ＧＥＴ＿ＣＡＰＡＢＩＬＩＴＩＥＳ）をポートドライバ経由でプリンタデバイスへ発行することにより行われる。その応答としてプリンタにより返送されるデバイスＩＤには、プリンタの製造元情報やモデル名、サポートされるプリンタ言語情報などプリンタモデル固有の情報が含まれている。
【００５７】
ＯＳは、接続されたＵＳＢプリンタの詳細情報を得て、その詳細情報に基づき、最適な上位プリンタドライバを検索する（Ｓ３０６）。該当する上位プリンタドライバがＯＳの標準検索範囲内に存在する場合、標準検索範囲内で見つかった上位プリンタドライバを組み込む。該当する上位プリンタドライバがＯＳの標準検索範囲内に存在しない場合、ユーザーに対してそのドライバの保存先などを問い合わせる旨のメッセージ等を表示する。このような場合、ユーザーは、デバイス購入時に同梱されるフロッピー（登録商標）ディスクやＣＤ−ＲＯＭといったメディア、またはインターネットを経由してメーカーのファイルサーバーからダウンロードされたデバイスドライバ等を指定することにより、該当上位ドライバがＯＳに組み込まれる（ステップＳ３０７）。上位ドライバの組み込み時に、所定の手順に従って上位プリンタドライバがＰＣの所定の位置（ディレクトリ）にコピーされる。
【００５８】
次に、ＯＳが標準で備えるデータベース上に現在インストールを行っているデバイスに関する項目（エントリ）が追加される（ステップＳ３０８）。このデータベースには、デバイス毎の制御用設定パラメータ、ドライバ・デバイス構成、デバイスインスタンスに関連付けられた下位ポートドライバに関する情報、ポートインスタンス情報、及びユーザーによる設定情報、といった情報が保存される。Ｗｉｎｄｏｗｓ（登録商標）２０００やＷｉｎｄｏｗｓ（登録商標）ＸＰといったＯＳでは、この標準データベースを一般的にレジストリと称しており、本説明でも以下レジストリと呼ぶ。レジストリがユーザーに認識できる形に表示された一例を図５に示す。
【００５９】
このエントリは、ＯＳにより作成されたポートインスタンス経由で通信を行うデバイス、すなわち論理デバイス毎に作成される。すなわち、ＯＳとデバイスとの間の論理接続毎にエントリが用意され、対応するポートインスタンス情報が保存されることにより関連付される。例えば複数の接続インタフェースを具備するプリンタをそれぞれのインタフェース経由でホストコンピュータに接続した場合、インタフェース毎にポートインスタンスが作成される。同一プリンタで使用される上位プリンタドライバは共通であるものの、エントリはインタフェース毎または論理接続毎にレジストリ上に作成される。
【００６０】
上記のように、プリンタドライバの起動準備が完了すると、インストールが完了した旨のメッセージを図３の２−６のように表示する（ステップＳ３０９）。
【００６１】
ＧＵＩを備えた一般的なＯＳのプリンタ一覧画面では、あるプリンタに対するポートインスタンスはプリンタ・アイコンという形で視覚的に表示される。この一例を図６に示す。すなわち、あるプリンタに対して複数のインタフェースを経由した複数のポートインスタンスが作成された場合、各インスタンスに対してそれぞれプリンタ・アイコンが表示される。このプリンタ・アイコンとポートインスタンスとの関連付けに関する情報も、上記ポートインスタンス毎に作成されるエントリに記述されるため、各ポートインスタンスがどのプリンタ・アイコンによって視覚的に代表されているかといった情報も管理される。
【００６２】
以上、プラグ・アンド・プレイに対応したＯＳにおける一般的なデバイスドライバのインストール処理についてＵＳＢプリンタを例に説明した。無論ＯＳの種類により異なる方法でデバイスドライバのインストールが行われる場合もあるが、概ね説明した手順と同様なシーケンスでプラグ・アンド・プレイデバイスのインストールが行われる。
【００６３】
＜本実施形態のプリンタドライバ・インストール＞
図７は、本実施形態に係る、ＵＳＢを用いたプリンタドライバ・インストール処理で表示される画面例を示す図である。この画面例は、図１のプリンタ１−２で印刷を行うためプリンタドライバをＰＣ１−１にインストールする際に、ＰＣ１−１の画面上に表示されるものである。
【００６４】
まず始めの画面として、画面６−１が表示される。この画面６−１は、プリンタドライバ・インストール処理の開始画面になり、ユーザーがインストール用のソフトウェアを起動することで表示される。画面６−１上には、「実行」と「キャンセル」をそれぞれ選択する選択アイコン（ボタン）６−２、６−３があり、マウスなどで選択することができる。「実行」ボタン６−２を選択するとインストールが開始され、次の画面６−４が表示される。「キャンセル」ボタン６−３を選択した場合は、プリンタドライバのインストールは行われずに終了する。
【００６５】
画面６−４では、ユーザーにＵＳＢインタフェースを接続する旨の指示が表示され、ユーザーはその指示に従ってプリンタ１−２のＵＳＢコネクタ３３を介してＵＳＢインタフェース３２にＵＳＢケーブル１−５を接続する。プリンタ１−２の電源が入っていない場合、ユーザーはプリンタ１−２の電源を入れる。画面６−４でも、「キャンセル」ボタン６−５でインストールを中止することができる。
【００６６】
ＵＳＢケーブル１−５を接続してプリンタ１−２の電源を入れると、プラグ・アンド・プレイによりプリンタドライバのインストール、及びプリンタ１−２の内部設定が完了する。プラグ・アンド・プレイによるプリンタドライバのインストールは、前述した＜プリンタドライバのインストール処理＞で説明した手順で行われる。
【００６７】
インストールに成功すると、画面６−６が表示されてインストールが完了し、「ＯＫ」ボタン６−７を選択することでソフトウェアが終了する。何らかの理由によりプリンタドライバのインストールが失敗した場合は、画面６−８が表示されてインストールに失敗したことをユーザーに知らしめる。画面６−６と同様に「ＯＫ」ボタン６−９でソフトウェアが終了する。
【００６８】
以上のように、画面６−１→画面６−４→画面６−６の指示に従って操作することで、ＵＳＢインタフェースを使ったプリンタドライバのインストールが完了し、ＵＳＢインタフェースを介して印刷データを送信することが可能となる。
【００６９】
図８は、ＰＣ１−１が実行する処理を示すフローチャートであって、図７に示した画面が表示される本実施形態のプリンタドライバ・インストール処理を示すフローチャートである。
【００７０】
まず、図７に示した画面６−１の表示を行う（ステップＳ７００）。画面６−１で「実行」ボタン６−２が選択されるとステップＳ７０１へ進み、プリンタドライバ実行ファイルをシステムにコピーする。すなわち、一般的にはＯＳによりプリンタドライバ実行ファイル及び情報ファイルが配置されるシステム内の場所が決まっており、それに従ってプリンタドライバの実行ファイルをコピーしておく。前述の＜プリンタドライバのインストール処理＞で説明したように、ＯＳは予め決まったプリンタドライバの情報ファイルの保存場所から適切なプリンタドライバを探し出して、それを使用できるように登録・設定の作業を行う。この作業が正しく行われるためにプリンタドライバ関連のファイルを指定の場所へコピーするのがこの処理である。
【００７１】
次に、画面６−４を表示する（ステップＳ７０２）。この画面を表示した後、一定時間が経過したかをチェックする（ステップＳ７０３）。一定時間が経過していない、つまりタイムアウトが発生していない場合には、プリンタの認識が完了したかをチェックする（ステップＳ７０４）。これは、プラグ・アンド・プレイで正しくプリンタ１−２が発見されたどうかの確認を行うものであり、プリンタドライバのインストールが完了するとプリンタの認識が完了したものとする。詳しくは、前述した＜プリンタドライバのインストール処理＞で詳細が述べられている。
【００７２】
タイムアウトが発生したとステップＳ７０３で判定された場合は、インストールに失敗したことを画面６−８に表示する（ステップＳ７０７）。
【００７３】
ステップＳ７０４において、プリンタ１−２の認識が完了した場合は、ステップＳ７０５へ進み、プリンタ情報の設定を行う。そして、ステップＳ７０６において、正常にインストールが終わったことを示す画面６−６を表示する。画面６−６で「ＯＫ」ボタン６−７が選択された場合は、ＵＳＢインタフェースを使ったプリンタドライバ・インストール処理が完了する。
【００７４】
本実施形態のプリンタ１−２は、ＵＳＢインタフェースと無線ＬＡＮインタフェースの両者を有するので、プリンタドライバのインストールが終了した後に引き続き無線ＬＡＮの設定（無線ネットワーク・インストール）が行なわれる。
【００７５】
＜本実施形態の無線ネットワーク・インストール＞
図９は、図７、８で説明したプリンタドライバのインストールが終了した後、引き続き無線ＬＡＮのインストール行う場合の画面表示を示したものである。ＵＳＢのみのインストールの場合、図７の画面６−６で完了となっていたが、無線ＬＡＮのインストールも行う場合は、画面６−６の画面に替わりに図９の画面８−１が表示される。画面８−１で「ＯＫ」ボタン８−２をユーザーが選択した場合、ここで完了となり無線ＬＡＮのインストールは行なわれない。画面８−１で「ネットワーク・インストール」ボタン８−３を選択すると引き続きネットワークのインストールが開始される。
【００７６】
本発明の効果を分かりやすく説明する為、まず、プリンタ１−２はＭＡＣアドレスフィルタリング機能を使用していない場合について全体の動作の流れを説明し、その後、＜プリンタがフィルタリングを使用している場合＞について説明する。
【００７７】
本実施例ではＰＣ１−１とアクセスポイント１−３との間の設定は既になされていて、インフラストラクチャモードで通信できる状態になっているものとする。プリンタ１−２に関してはまだ無線ＬＡＮの設定が行なわれておらず、初期状態としてインフラストラクチャモードでＩＤは設定されていないものとしている。
【００７８】
前述の通り、プリンタ１−２はフィルタリング機能を備えているものの、該当機能は使用していないものとする。
【００７９】
まず、始めにアクセスポイント１−３と接続するためにアクセスポイントを選択する操作に入る。
【００８０】
画面８−４はＰＣ１−１からプリンタ１−２に装着された無線ＬＡＮカードを使い、プリンタ１−２から発見されるアクセスポイントの一覧を表示するために、ＵＳＢケーブル１−５経由でＰＣ１−１からプリンタ１−２にアクセスポイントサーチのコマンドを送り、その結果得られたアクセスポイントの情報をＵＳＢケーブル１−５経由で取得し、その取得内容を基に画面にサーチしたアクセスポイントの一覧を表示した状態を示している。
【００８１】
画面８−５には、プリンタ１−２から見つけることができたアクセスポイントの一覧を表示していて、この例では３つのアクセスポイントＡ、Ｂ、Ｃがプリンタから見つかったことを示している。発見したアクセスポイントの表示は、無線電波の届く範囲内で稼動しているアクセスポイントを全て示しており、必ずしも自分が使っているものだけが表示されるとは限っていない。複数のアクセスポイントが表示された場合、ユーザーは自分が接続したい所望のアクセスポイントを画面８−５のハイライトされた行を移動することで使用するアクセスポイントを決定する必要がある。
【００８２】
この時、ネットワーク・インストーラは無線ＬＡＮカード１−４のドライバとの通信により、現在ＰＣ１−１が接続しているアクセスポイントに関する情報を取得することにより画面８−４の表示が省略可能である事を＜自動化＞にて後述する。
【００８３】
ユーザーの操作により、使用することが決定されたアクセスポイントが暗号化されている場合、暗号を解読するための暗号キーを画面８−６に入力することができ、暗号化されたアクセスポイントにも対応することができる。一般的に無線ＬＡＮでは盗聴やデータの漏洩を防止するために暗号化の技術が採用されている。代表的なものにＷＥＰ（Ｗｉｒｅｄ  Ｅｑｕｉｖａｌｅｎｔ  Ｐｒｉｖａｃｙ）があり、同じ暗号化用のキーと呼ばれる情報が暗号化と復号化のために使われる対称的なアルゴリズムでこのキーを設定することで他の機器からのデータの隠蔽を実現する。暗号化された環境で無線ＬＡＮを使用している場合、プリンタ１−２にも同じ暗号キーを設定する必要がある。
【００８４】
画面８−４で、「戻る」ボタン８−７を選択すると前の画面８−１へ戻ることができる。「次へ」ボタン８−８を選択することで、ユーザーが選択したアクセスポイントを指定して次ぎに進むことができ、「キャンセル」ボタン８−９でインストールを中止することができる。
【００８５】
画面８−４でアクセスポイントを指定し、そのアクセスポイントを経由してＰＣ１−１とプリンタ１−２が接続することが指定されると、プリンタ１−２へのアクセスポイントとの接続のための設定が行われ、プリンタ１−２がアクセスポイントから認識できるようになる。
【００８６】
その後、プリンタ１−２が正しく接続されたどうかを確認するために無線ＬＡＮ経由でプリンタの検索を行う。詳細は図１１のフローチャートで説明する。画面８−１０は、アクセスポイント１−３経由で発見されたプリンタの一覧を表示する画面であり、プリンタのサーチはＰＣ１−１の無線ＬＡＮからアクセスポイント１−３を経由して送信されたプリンタサーチコマンドを受け取ったプリンタがその返答を戻し、この応答をＰＣ１−１が受信することで行なわれる。サーチコマンドはブロードキャストでネットワーク上の全ての機器に送信され、サーチコマンドを受取りこのコマンドを理解できる機器（この場合は特定のプリンタやプリンタアダプタ）がコマンドを送信したＰＣ１−１に対してコマンドに対する予め決められた情報を戻す。この情報にはプリンタの名称やＩＤ、アドレスなどが含まれていて、これら情報を基に接続したいプリンタを特定することができる。画面８−１０では、発見されたプリンタの一覧８−１１が表示されていて、この例ではプリンタ１、２、３の３つのプリンタが発見されたものとする。アクセスポイントの選択と同様にハイライトで示されたプリンタが選択できる。この画面でも「戻る」ボタン８−１２を選択すると前画面８−４へ戻り、「次へ」ボタン８−１３を選択すると、選択したプリンタに接続相手を決めることができる。「キャンセル」ボタン８−１４を選択すると、インストールを中止することができる。「次へ」ボタン８−１３が選択されると、画面８−１５が表示され、ポート名を入力する画面となる。ポート名入力欄８−１６に入力したいポート名を入れることができる。ポート名は１つのＰＣ上で、複数のプリンタを区別する為に用いられ、初期値としてこの場合ＷＬＡＮ０１が設定される。ＷＬＡＮは無線ＬＡＮ対応のプリンタを示すための識別名で、０１はシステムに登録されている最終の番号を表している。この番号は、複数の同じ機能を有するプリンタを区別して扱うために順番につけられる。一般的にプリンタドライバでは、このポート名を指定して印刷するプリンタを特定するのに使われる。画面８−１５でも、「戻る」ボタン８−１７を選択すると前画面８−１０へ戻り、「次へ」ボタン８−１８を選択すると入力欄８−１６に入力したポート名を決めることができる。「キャンセル」ボタン８−１９を選択すると、インストールを中止することができる。画面８−１５で「次へ」ボタン８−１８が選択されると、画面８−２０が表示されネットワークのインストールが完了を示す画面となる。この画面には２つの選択肢があり、無線ＬＡＮのプリンタ・アイコンのみを作成する場合に選択するラジオボタン８−２１と無線ＬＡＮとＵＳＢの両方のアイコンを作成する場合に選択するラジオボタン８−２２のいずれかを選択することができる。ラジオボタン中で「●」で示されている項目が現在選択されているもので、図示しないポインティングデバイスなどで変更することが可能となる。「ＯＫ」ボタン８−２３を選択すると、選択されたラジオボタンの内容に従ってプリンタ・アイコンが作成される。プリンタ・アイコンは、ユーザーが登録されているプリンタを確認、区別あるいは現在準備可能なプリンタを識別するのに利用され、アプリケーションからの印刷ではこのアイコンが選択される。
【００８７】
なお、プリンタの名称やＩＤを取得するコマンドをＵＳＢケーブル１−５経由でＰＣ１−１からプリンタ１−２に送り、その結果得られたプリンタ情報と、上述したプリンタサーチコマンドに対する応答により発見されたプリンタのプリンタ情報とが一致したものをインストーラが自動的に選択することによりプリンタ選択のステップ、画面８−１０を省略することが可能であることを＜自動化＞にて後述する。
【００８８】
また、プリンタポートも自動作成することにより画面８−１５も省略して無線ネットワークのインストールを完了することが可能になることを＜自動化＞にて後述する。
【００８９】
＜自動化＞
ＰＣ１−１のネットワーク・インストーラは、無線ＬＡＮカード１−４のドライバとの通信により、現在ＰＣが接続しているアクセスポイントに関する情報を取得することが可能である。本実施例ではこの通信により、ＰＣ１−１が接続しているアクセスポイントがアクセスポイントＣであるという情報を取得する。
【００９０】
ネットワーク・インストーラは、これらプリンタの情報、ＰＣの情報を元に接続アクセスポイントを自動的に決定することができる。ネットワーク・インストーラは、ＰＣ１−１が現在接続しているアクセスポイントと一致するアクセスポイントを、プリンタから見つけたアクセスポイント一覧の中から探し、一致しているものが見つかった場合にはそのアクセスポイントを接続対象として決定し、かつ暗号化設定などアクセスポイント特定情報以外の情報を要することなく接続が可能な場合に自動的に接続設定を行う。
【００９１】
現在インストール作業を行っているＰＣ１−１が接続しているアクセスポイントと同じアクセスポイントをプリンタ１−２が検出した場合、プリンタ１−２がその同じアクセスポイントに接続することで、ＰＣ１−１とプリンタ１−２が無線ＬＡＮ経由で通信を行うことが可能になるのは自明である。よって、ＰＣ１−１が現在接続しているアクセスポイントと一致するアクセスポイントがプリンタから見つられた場合には、そのアクセスポイントを接続対象として決定することができる。その上、ユーザーの操作による暗号キーの入力が必要ない場合には、そのアクセスポイントへの接続指定、すなわちアクセスポイントの設定がＰＣ１−１からプリンタ１−２に対して自動的に行われる。ここでは、プリンタ１−２が見つけた３つのアクセスポイントＡ、Ｂ、Ｃのうち、アクセスポイントＣはＰＣ１−１が接続しているアクセスポイントと一致する為、アクセスポイントＣが選択される。さらにアクセスポイントＣは暗号化が無効の状態で動作中であることも判るので、自動的に接続が可能であることがわかる。この場合、画面８−４は表示する必要がないので表示を省略し、画面８−１０へ進む事ができる。
【００９２】
また、アクセスポイントへの自動接続が行なわれた後、プリンタ１−２が正しく接続されたどうかを確認するためにＰＣ１−１は無線ＬＡＮ経由でプリンタの検索を行う。本例では前述のように、ＰＣ１−１が無線ＬＡＮ通信によるプリンタサーチコマンドの応答により発見したプリンタの中に、プリンタの名称やＩＤを取得するコマンドをＵＳＢケーブル１−５経由でＰＣ１−１からプリンタ１−２に送り、その結果得られたプリンタ情報と一致するものをインストーラが自動的に選択することによりプリンタ選択のステップを自動化している。またプリンタポートも自動作成している為、プリンタ検出、ポート作成に成功すると、インストールは完了する。つまり、図１０のように、画面８−１から画面８−２０に推移する。この場合、ユーザーは図１０の画面８−１で「ネットワーク・インストール」ボタン８−３の選択と、画面８−２０の完了画面でアイコン作成のためのラジオボタン８−２１、８−２２の選択、「ＯＫ」ボタン８−２３の選択を行うだけで無線ネットワークのインストールが完了することになる。詳細については図１１のフローチャートで説明する。
【００９３】
なお、アクセスポイントが暗号化通信を行っている場合においては、暗号を解読するための暗号キーを入力する必要があるため、画面８−４が表示され、入力欄８−６に暗号キーを入力することで暗号化されたアクセスポイントに接続することができる。また、アクセスポイント一覧８−５では、ＰＣ（ネットワークインストールソフトウエア、以降ネットワーク・インストーラ）がＵＳＢ経由で取得したプリンタから見つけることができた全てのアクセスポイントの情報を表示するものの、上述の判定基準によって既に自動決定されたアクセスポイント、本実施例ではアクセスポイントＣを自動的に選択状態にしておくこともできる。暗号キー入力後、「次へ」ボタン８−８を選択することで、自動決定したアクセスポイントを指定して次に進むことができる。なお、何らかの理由により一致するアクセスポイントがなかった場合には、同様に画面８−４を表示して接続を行うアクセスポイントを選択する必要がある。
【００９４】
図１１は、プリンタドライバのインストールが完了した後、引き続き行われる無線ＬＡＮのインストール手順を示したフローチャートである。
【００９５】
ステップＳ１００１では、プリンタ１−２は、ＰＣ１−１からＵＳＢケーブル１−５経由でアクセスポイントサーチのコマンドが送られてくると、アクセスポイントのサーチを行う。無線ＬＡＮインストールのためにＵＳＢケーブル１−５経由でＰＣ１−１とプリンタ１−２との間で送信されるコマンドは図１２で示され、３つのコマンドが用意されている。その内のアクセスポイントサーチコマンドＣＭＤ０１をＰＣ１−１からプリンタ１−２へ送ることで、プリンタ１−２はアクセスポイントサーチのための設定を無線ＬＡＮカード１−４に行う。
【００９６】
アクセスポイントサーチの設定がされたプリンタ１−２の無線ＬＡＮカード１−４は、アクセスポイントサーチの信号を発信する。この信号を受け取ったアクセスポイントは自分のアクセスポイント情報（ＩＤ、電波状態、アドレス、チャネル、暗号化状態など）をサーチ信号を発信した相手（すなわちプリンタ１−２）に返信する。アクセスポイントから応答された情報を、無線ＬＡＮカード１−４を介してプリンタ１−２が受信すると、プリンタ１−２はその受信した情報をＰＣ１−１へ返答する。この時プリンタ１−２は、見つかった全てのアクセスポイントの情報をＰＣ１−１へ返信する。ここではプリンタ１−２の無線電波の届く範囲内で稼動しているアクセスポイント情報を全て取得しており、必ずしも自分が使っているアクセスポイントの情報のみを取得できるとは限っていない。その為、後述する方法により使用するアクセスポイントを指定する必要がある。
【００９７】
ステップＳ１００２では、ＰＣ１−１は、ＰＣ１−１が接続しているアクセスポイント１−３の情報をＰＣ１−１の無線ＬＡＮカードドライバと通信することにより取得する。
【００９８】
ステップＳ１００３では、ステップＳ１００１とステップＳ１００２で各々得られたアクセスポイント情報を比較する。具体的には、プリンタ１−２からのアクセスポイント情報に、ＰＣ１−１が現在接続しているアクセスポイント１−３の情報と一致するアクセスポイントがあるかどうかをチェックする。ＰＣ１−１が現在接続しているアクセスポイント１−３と一致するアクセスポイントが見つかった場合には、当該アクセスポイントを接続対象として決定しステップＳ１００４へ進む。
【００９９】
ステップＳ１００４では、ステップＳ１００３で見つけたＰＣ１−１と接続しているアクセスポイントが暗号化モードで動作しているかどうかをチェックする。暗号化モードで動作していない場合には、ユーザーの操作による暗号キーの入力が必要無い為、ステップＳ１００５、Ｓ１００６を省略してステップＳ１００７進む。
【０１００】
ステップＳ１００３でアクセスポイントが見つけられなかった場合には、或いはステップＳ１００４でアクセスポイントが暗号化モードで動作していると判断した場合は、ステップＳ１００５へ進む。
【０１０１】
ステップＳ１００５では、ステップＳ１００１でプリンタ１−２から通知されたアクセスポイントをアクセスポイント一覧画面に表示し、ユーザーにアクセスポイントを選択させ、また、選択されたアクセスポイントによっては暗号キーを入力させる。なお、ＰＣ１−１が接続しているアクセスポイントを発見したが（ステップＳ１００３）、発見したアクセスポイントが暗号化モードで動作していると判断した場合には（ステップＳ１００４）、ＰＣ１−１が接続しているアクセスポイントをユーザーに優先的に選択させるために、該当アクセスポイントを強調表示する等、ユーザーの利便性について制御を加えても良い。また、ユーザーがアクセスポイントの設定を手動で任意に入力する事も可能である。
【０１０２】
ステップＳ１００６では、アクセスポイントが動作している暗号化モードに応じて暗号キーの入力などを行う。なお、暗号化モードに応じた処理の詳細については、＜暗号キー入力処理＞で説明する。
【０１０３】
また、ステップＳ１００５でユーザーにより選択されたアクセスポイントが暗号化モードで動作していない場合には、ステップＳ１００６は省略される。
【０１０４】
ステップＳ１００７では、プリンタ１−２がアクセスポイント１−３と通信可能となるよう、プリンタ１−２のネットワーク設定を変更する。この時点では使用したいアクセスポイントが決定されているため該当アクセスポイントの情報を基にして情報設定コマンドＣＭＤ０３（図１２）を、ＵＳＢケーブル１−５を介してＰＣ１−１からプリンタ１−２に送ることにより行う。情報設定コマンドＣＭＤ０３ではＳＳＩＤや、プリンタが使用するＩＰアドレス、ステップＳ１００６で入力した暗号化キーなど、アクセスポイントを利用するために必要な情報を設定することで特定のアクセスポイントにプリンタを接続することができる。なお、ステップＳ１００７については、＜プリンタのネットワーク設定および接続＞で、プリンタのフィルタリング機能が有効である場合の動作と共に詳細に説明する。
【０１０５】
ステップＳ１００８では、ＰＣ１−１がプリンタ１−２を利用できるか否かを確認するために、ＰＣ１−１の無線ＬＡＮカード１−４を使いプリンタのサーチを行う。これは図１３に示すネットワーク・インストール用コマンドとして用意されている２つのコマンドのうちの何れかを用いて行われる。図１３に示すコマンドは、２つともプリンタのサーチのコマンドで、一方は相手を指定せずにブロードキャストで送信するプリンタサーチコマンド（ブロードキャスト）ＣＭＤ１１、他方は特定の相手を指定して送信するプリンタサーチコマンド（アドレス指定）ＣＭＤ１２である。なお、本説明では、ブロードキャストのサーチコマンドＣＭＤ１１を送信することでプリンタのサーチを行う。本コマンドは、ＰＣ１−１の無線ＬＡＮカード１−４から無線ＬＡＮ上に発信され、このコマンドを無線ＬＡＮから受け取ったプリンタは、プリンタの情報（ＩＤ、名称、アドレス、モデル名など）をＰＣ１−１へ返信する。コマンドＣＭＤ１１はブロードキャストで送信されるため、このコマンドを理解できるプリンタは全てこのコマンドに返信する可能性がある。ＰＣ１−１は、プリンタから送り返された情報から自分が今インストールしようとしている機種を指定する必要がある。
【０１０６】
使用するプリンタをＰＣ１−１が自動で指定する場合は、ステップＳ１０１０ヘ、手動で指定する場合はステップＳ１０１２へ進む（ステップＳ１００９）。
【０１０７】
ステップＳ１０１０では、ＰＣ１−１は無線ＬＡＮ経由で見つけたプリンタの中からＵＳＢケーブル１−５経由で接続されているプリンタを特定する為に、ＵＳＢケーブル１−５経由でプリンタ情報を取得する。これは図１２で示した情報取得コマンドＣＭＤ０２をＵＳＢケーブル１−５経由でプリンタに送信し、その応答としてプリンタから得られたプリンタ情報を取得することにより行われる。
【０１０８】
ステップＳ１０１１では、ステップＳ１００８とＳ１０１０とで取得したプリンタの情報を比較することにより、無線ＬＡＮ経由で見つけたプリンタのうちＵＳＢケーブル１−５経由でＰＣ１−１と接続されているプリンタと一致するプリンタを特定し、ステップＳ１０１３へ進む。
【０１０９】
ステップＳ１０１２では、ステップＳ１００８でサーチしたプリンタをプリンタ一覧画面８−１１に表示し、ユーザーに利用したいプリンタを指定させる。
【０１１０】
ステップＳ１０１３では、ポート名を決定する。自動で決定する場合はネットワーク・インストーラが作成した文字列を利用してステップＳ１０１５へ、手動で決定する場合はステップＳ１０１４へ進む。
【０１１１】
ステップＳ１０１４では、ポート名入力画面８−１６を表示し、ユーザー入力によりポート名を決定する。
【０１１２】
ステップＳ１０１５では、ＰＣ１−１のネットワーク印刷設定を行い、ＰＣ１−１とプリンタ１−２との間で無線ＬＡＮを利用した印刷が可能な状態にする。ここではＰＣ１−１に対して、プリンタ１−２のアドレス、名称、印刷ポートなど印刷に必要となる設定を行う。アイコンの作成方法に関しては後述する。
【０１１３】
ステップＳ１０１６では、ネットワーク・インストール完了画面８−２０を表示し、ネットワーク・インストールを完了する。ここで、完了したネットワーク設定情報を表示し、ユーザーに通知する事もできる。
【０１１４】
なお、図１２では、ＵＳＢケーブルを介してプリンタ１−２へ送られるインストールのためのコマンドとして３つのコマンドＣＭＤ０１〜０３を示したが、この他にも印刷データを送るコマンド、各種プリンタの設定を行うコマンドなどがあるが、本説明に直接関係するインストールコマンドだけをあげている。図１３も、無線ネットワークコマンドの内インストールに使用される２つのコマンドＣＭＤ１１、１２を示したが、この他にも印刷データを送るコマンド、各種プリンタの設定を行うコマンドなどがあるが、本説明に直接関係するインストールコマンドだけをあげている。これらコマンドはネットワーク上で一般的なＴＣＰ／ＩＰ、ＵＤＰなどのプロトコルを介して転送、返信が行われる。
【０１１５】
図１４は、無線ネットワーク・インストールで用いられるコンピュータのネットワークアダプタインタフェースコマンドを示していて、本実施例では２つのコマンドＣＭＤ２１、２２を使用している。この他にも各種設定値情報読み出しコマンド、各種設定コマンドなどがあるが、本説明に直接関係するコマンドだけをあげている。１つはコンピュータに装着されているネットワークアダプタが無線ＬＡＮのネットワークアダプタであるかどうかを問い合わせるための無線インタフェース問合せコマンドＣＭＤ２１である。そして、装着されているアダプタが無線ＬＡＮアダプタであった場合、そのアダプタドライバに対してもう１つのコマンドである接続ＳＳＩＤ取得コマンドＣＭＤ２２を発行して、そのアダプタが現在接続しているアクセスポイントのＳＳＩＤを取得する。この一連の動作は、図１１に示すステップＳ１００３で説明を行った。
【０１１６】
また、本ＯＳでは、プリンタに対して個々のポートインスタンスを表わすプリンタのアイコンを作成する。一台のプリンタに対して複数のインタフェースを経由した複数のポートインスタンスが作成された場合、それぞれが異なる出力ポートを表わすものの、同一プリンタを表わす複数個のプリンタ・アイコンが表示されてしまう。
【０１１７】
本実施例において無線ＬＡＮのインストールを行う過程でＵＳＢケーブルを介してプリンタとＰＣを接続することによりＵＳＢのポートインスタンスが作成されるが、これは無線ＬＡＮのセットアップを行う為に作成されたポートであり、ユーザーはＵＳＢのポートインスタンスの作成を望んでいない場合もある。また、無線ＬＡＮのセットアップの結果としてＵＳＢも含めた２つのポートインスタンスを表わす２つのプリンタ・アイコンが表示されると、無線ＬＡＮのセットアップのみを望んでいたユーザーは混乱する可能性がある。
【０１１８】
そこで、無線ＬＡＮセットアップにおけるインストール完了時に作成されるポートインスタンス、ならびにプリンタ・アイコンをユーザーに確認する。つまり、ネットワーク・インストール完了画面８−２０には、無線ＬＡＮのプリンタ・アイコンのみ、すなわち本プリンタの出力ポートインスタンスとして無線ＬＡＮのポートインスタンスのみを作成するか、または無線ＬＡＮとＵＳＢ両方のアイコン、すなわち無線ＬＡＮポートとローカルポートであるＵＳＢポートインスタンスの２つを作成するかをユーザーに選択させるためのラジオボタン８−２１、８−２２を表示してユーザーに選択させることにより、インストール作業の結果としてプリンタの出力先が無線ＬＡＮ経由のみ、または無線ＬＡＮとＵＳＢの双方とするかを決定する。
【０１１９】
ユーザーが無線ＬＡＮ経由のポートインスタンスのみの作成を選択した場合、セットアップの過程で作成されたＵＳＢのポートインスタンスを表わすプリンタ・アイコンの代わりに無線ＬＡＮポートインスタンスとそれを表わすプリンタ・アイコン一つのみを作成・表示する（図１５）。これは、無線ポートインスタンスのインストール完了時のプリンタ・アイコン作成において、ＵＳＢポートインスタンスを表わす該当プリンタ・アイコンを削除したうえで、作成された無線ＬＡＮポートインスタンスに該当するプリンタ・アイコンを新規に作成する方法、ＵＳＢポートインスタンスを表わすプリンタ・アイコンの設定を変更し、無線ＬＡＮのポートインスタンスを割り当てる等、いくつかの方法によって実現される。いずれも場合も前記＜プリンタドライバのインストール＞にて説明したように、ＯＳが備えるレジストリの無線ＬＡＮポートに関するエントリに、該当するプリンタ・アイコンの情報が記述され、ＵＳＢポートに関するエントリのアイコン情報は消滅、または未使用の旨情報が記述される。またインストール手順によってはＵＳＢポートに関するエントリ、ＵＳＢポートインスタンスそのものが削除される場合もある。
【０１２０】
ユーザーが無線ＬＡＮ経由、ＵＳＢ経由両方のポートインスタンスの作成を選択した場合には、セットアップの過程で既に作成されたＵＳＢのポートインスタンスを表わすプリンタ・アイコンを削除、変更せずに、無線ＬＡＮポートインスタンスに該当するプリンタ・アイコンを新規に作成する（図１６）。この場合も前記＜プリンタドライバのインストール＞にて説明したように、ＯＳが備えるレジストリの無線ＬＡＮポートに関するエントリに、新規に作成されたプリンタ・アイコンの情報が記述される。
【０１２１】
以上の方法で、ネットワーク・インストール完了画面におけるユーザーの選択に従い、無線ＬＡＮポートのセットアップのみを選択した場合は無線ＬＡＮポートインスタンスを表わすプリンタ・アイコンのみが作成され、無線ＬＡＮポートと共にＵＳＢポートのセットアップを選択した場合は無線ＬＡＮポート、ＵＳＢポート両インスタンスの２つのプリンタ・アイコンが作成される。
【０１２２】
なお、本実施例ではネットワーク・インストール完了画面８−２０において、インストール完了時に作成されるプリンタ・アイコンをユーザーに選択させ、ユーザーの選択に応じたアイコンの作成・削除を行うが、これは異なるタイミングで行なわれてもかまわない。例えば、プリンタドライバインストール完了画面表示とネットワーク・インストール完了画面表示に移行する間で行えるように構成してもよい。この場合、ＵＳＢポートを表すアイコンを削除する場合には、ネットアーク・インストール完了を待つことなく、ＵＳＢポートがインストール作業において不必要となった時点で削除することができる。
【０１２３】
また、本実施例ではＰＣ自身が現在接続しているアクセスポイントと一致したアクセスポイントが存在して、アクセスポイント特定情報以外の情報を要することなく接続が可能な場合には、ＵＳＢ経由でそのアクセスポイントへの接続設定を自動的に行っていたが、その前にユーザーへの確認メッセージを表示することも可能である。また自動接続を行う前に、検出したアクセスポイント一覧画面８−４を表示して、一覧画面上で一致したアクセスポイントを選択済状態とした上でユーザーに確認させる、といったこともできる。
【０１２４】
さらに、本実施例ではＰＣ自身が現在接続しているアクセスポイントと一致したアクセスポイントが存在しない場合には、画面８−４を表示してプリンタが検出したアクセスポイントの一覧を提示し、ユーザーにアクセスポイントを選択させる必要があったが、一致するアクセスポイントがない状況ではインストールを行っているコンピュータとプリンタ間の無線ＬＡＮ経由通信が正常に行なわれる可能性が低いと考えられる為、無線ＬＡＮのインストールを中止して有線インタフェース経由の通信を行う設定をするよにしてしてもよい。
【０１２５】
＜暗号キー入力処理＞
図１７に、図１１のステップＳ１００６で説明した処理を詳細に説明する。
【０１２６】
ステップＳ１７０１では、ステップＳ１００５で選択されたアクセスポイントが暗号化モードで動作しているかどうかを確認する。暗号化モードで動作していなければ、ステップＳ１００６は省略される。
【０１２７】
ステップＳ１７０２では、動作している暗号化モードがＷＥＰかどうかを確認する。ＷＥＰの場合は、設定されている書式に従い、暗号キーを入力し（ステップＳ１７０３）、ステップＳ１００６を完了する。
【０１２８】
ステップＳ１７０４では、アクセスポイントに設定されている暗号化モードに従い（暗号化の種類に応じて）、暗号キーと他の必要な情報を入力する。
【０１２９】
例えば、ＷＰＡ（Ｗｉ−Ｆｉ  Ｐｒｏｔｅｃｔｅｄ  Ａｃｃｅｓｓ）は、従来のＳＳＩＤとＷＥＰに加えて、ユーザー認証機能を備えた点や、暗号鍵を一定時間毎に自動的に更新する「ＴＫＩＰ」（Ｔｅｍｐｏｒａｌ  Ｋｅｙ  Ｉｎｔｅｇｒｉｔｙ  Ｐｒｏｔｏｃｏｌ）と呼ばれる暗号化プロトコルを採用するなどの改善が加えられている。
【０１３０】
従って、暗号化モードがＷＰＡの場合は、パスフレーズや事前共有キーなどを入力する必要がある。
【０１３１】
＜プリンタのネットワーク設定および接続＞
さて上記実施例において、セキュリティ向上の観点からプリンタ１−２のフィルタリング機能が稼動中であった場合について説明する。ここではプリンタ１−２が備えているフィルタリング機能として、ＭＡＣアドレスフィルタリングを使用し、プリンタ１−２はＰＣ１−１とのみ通信可能な状態に設定されているものとする。ここでのＭＡＣアドレスフィルタリングは一般的なものであり、プリンタ１−２が所有している登録リストにはＰＣ１−１のＭＡＣアドレスのみが登録されており、かつ、登録されているＭＡＣアドレスから送信されてくる通信パケット（ＴＣＰ／ＩＰ、ＵＤＰ）のみをプリンタ１−２は受信する設定となっているものとする。
【０１３２】
図１８に、ステップＳ１００７の詳細を示す。
【０１３３】
ステップＳ１８０１では、アクセスポイント１−３と通信可能となるように、ＰＣ１−１はプリンタ１−２へ各種設定値をＵＳＢケーブル１−５経由で送信する。
【０１３４】
ステップＳ１８０２では、アクセスポイント１−３との接続に認証が必要か否かを判断し、認証が必要な場合はステップＳ１８０３以降の認証処理へ、必要ない場合はステップ１８０７へ進む。
【０１３５】
ステップＳ１８０３では、アクセスポイント１−３に接続を許可してもらうために、プリンタ１−２からアクセスポイント１−３に対して接続の開始を要求する無線認証パケットＰＫＴ０１（後述）を送信する。ここでパケットの送受信が複数回になることや接続拒否の場合には応答しないこと等が有り得るが、本説明では送受信回数は１回として説明する。
【０１３６】
ステップＳ１８０４では、アクセスポイント１−３（必要に応じては認証サーバ）は、プリンタ１−２との接続を許可するかどうかを、プリンタ１−２から送られた情報に含まれる暗号キー、パスワード、機器識別情報等により判断し、その結果を応答パケットとして送信する。
【０１３７】
またここでは、プリンタ１−２は、アクセスポイント１−３との接続を許可されるものとする。
【０１３８】
ステップＳ１８０５では、プリンタ１−２は、アクセスポイント１−３から接続許可の応答パケットを受信する。
【０１３９】
このとき、プリンタ１−２のＭＡＣフィルタリング機能が有効で、ＰＣ１−１としか通信できない状態であったとすると、アクセスポイント１−３からの上記応答パケットのデータをプリンタ１−２は受信することができない。即ち、アクセスポイント１−３との接続許可を得る通信そのものができず、ネットワーク・インストールは失敗となってしまう。そこで本実施例では、後述するフィルタリング機能の通過方法を用いることで、例えプリンタ１−２がＰＣ１−１からのパケットしか受信できないように設定されていても、アクセスポイント１−３からの上記応答パケットを受信できるようにする。
【０１４０】
ステップＳ１８０６では、後述するフィルタリング機能の通過方法を用いることで、アクセスポイント１−３からの応答パケットを受信できたので、その内容から接続認証に成功したかどうかを判断する。
【０１４１】
認証に成功すればインストールを継続しステップＳ１８０７へ進む。認証に失敗した場合、インストールは失敗となる（ステップＳ１８１４へ）。
【０１４２】
ステップＳ１８０７では、ＩＰアドレスを手動で決定する設定か、自動設定かを判断する。ＩＰアドレスを手動で決定する場合は、ステップＳ１８０８においてユーザーの入力を経てＩＰアドレスを取得し、ステップＳ１８１３へ進む。ＩＰアドレスを自動で決定する場合は、ステップＳ１８０９において、プリンタ１−２のＩＰアドレスを取得するために、各種パケットを発行する。ここで、パケットの送受信が複数回になることが有り得るが、本説明では送受信回数は１回として説明する。
【０１４３】
具体的には、例えばアクセスポイント１−３がＤＨＣＰサーバ機能を備えており、プリンタ１−２のＩＰアドレスをＤＨＣＰサーバによって割り当ててもらうのであれば、プリンタ１−２はＩＰアドレス分配パケットＰＫＴ１１（後述）をアクセスポイントに送信する。
【０１４４】
或いは、アクセスポイント１−３がＤＨＣＰサーバ機能を備えておらず、プリンタ１−２のＩＰアドレスを自動で決定しなければならない場合には、ネットワーク上の他の機器のＩＰアドレスとの重複を防ぐため、ＩＰアドレス解決パケットＰＫＴ１２（後述）をネットワークに対して発行する。
【０１４５】
ステップＳ１８１０では、プリンタ１−２がＩＰアドレス分配パケットＰＫＴ１１を送信した場合は、アクセスポイント１−３に備えられているＤＨＣＰサーバ機能が適切なＩＰアドレスを決定し、プリンタ１−２に通知するパケットを送信する。プリンタ１−２がＩＰアドレス解決パケットＰＫＴ１２を発行した場合は、該パケットを受信したネットワーク上のクライアント機器は各々の情報をプリンタ１−２に応答する。
【０１４６】
ステップＳ１８１１では、アクセスポイント１−３からのＩＰアドレス通知のための応答パケットまたはネットワーク上のクライアント機器からの応答パケットの受信処理を行う。受信処理の詳細はステップＳ１８０５と同様であるため省略する。ここでも、後述するフィルタリング機能の通過方法を用いることで応答パケットを受信できる。
【０１４７】
ステップＳ１８１２では、ステップＳ１８１１で受信した応答パケットにより、ＩＰアドレスの取得に成功したかどうかを判断する。成功すればインストールを継続しステップＳ１８１３へ進む。ＩＰアドレスの取得に失敗した場合、インストールは失敗となる（ステップＳ１８１４へ）。
【０１４８】
ステップＳ１８１３では、実際にプリンタ１−２とアクセスポイント１−３とが接続可能であることを確認する。接続が可能であれば、ステップＳ１００８へと進みインストールを継続する。接続が不可能であれば、インストール失敗となる（ステップＳ１８１４へ）。
【０１４９】
なお、プリンタ１−２がアクセスポイント１−３との接続できずにインストール失敗となった場合（ステップＳ１８１４）、失敗の原因に応じて適切メッセージを表示したり或いは失敗の原因に応じて適切なステップへと進んでも良い。
【０１５０】
また、プリンタ１−２のフィルタリング機能が有効である場合の動作をわかりやすく説明するため、ステップＳ１８０６、Ｓ１８１２、Ｓ１８１３の３箇所でアクセスポイントとプリンタとの接続の確認を行っているが、これらステップは、例えばＳ１８１３のみの１ステップにする等、必要に応じて変更することも可能である。
【０１５１】
＜フィルタリングの概念＞
図１９に示すフィルタリングの概念図と、図２０に示す通信パケットの構成の概念図とを用いて、前述のステップＳ１８０５、Ｓ１８１１におけるフィルタリング処理について説明する。
【０１５２】
一般に通信機器１９−０は階層構造をしており、通信パケット１９−１のヘッダ部情報を識別し自分宛てのパケットを受信するなど、通信パケットの受信処理を行うパケット受信層１９−２と、ＩＰアドレス等を基に通信パケットの通信経路を選択したり、所定の経路での通信を開始および終了したりするなど、通信全体を制御する通信制御層１９−３と、各種通信データをユーザーが扱えるように変換および表示などの処理を行うアプリ層１９−４とから構成される。
【０１５３】
通信パケット１９−１がアプリ層１９−４まで到達することで、通信機器１９−０ならびにユーザーはデータを受信できる（１９−５）。
【０１５４】
通信パケット１９−１は、図２０のような構成をしており、実際に送信したいデータ部２０−１はアプリ層１９−４で処理を行う都合上、アプリ層用のヘッダ部およびファイル終端部２０−２（以下、アプリ層ヘッダ部：他層に付いても同様に省略する。）によって包み込まれる。ここで、アプリ層１９−４が操作可能な個所はアプリ層ヘッダ部２０−２のみであり、該ヘッダ部にはアプリ層の処理で必要な各種情報が含まれている。
【０１５５】
また、通信パケット１９−１は、データ部２０−１とデータ部２０−１を包んでいるアプリ層ヘッダ部２０−２との外側に、通信制御層１９−３において処理される情報が含まれている通信制御層ヘッダ部２０−３を形成する。ここでも通信制御層１９−３が操作可能な個所はアプリ層ヘッダ部２０−３のみである。
【０１５６】
また同様に、通信制御層ヘッダ部２０−３と該ヘッダ部に包含されている各種データ全体の外側に、パケット受信層１９−２において処理される情報が含まれているパケット受信層ヘッダ部２０−４を形成する。
【０１５７】
このように形成された通信パケット１９−１は、各層でヘッダ部を剥がされ、最終的にはデータ部２０−１が利用可能となる。
【０１５８】
ここで、フィルタリング機能が有効となっている場合の処理を説明する。説明するフィルタリング機能は、登録リスト１９−６に登録されているＭＡＣアドレスの通信機器とのみ通信を行う設定であり、登録リスト１９−６は、機器構成に依存するが各階層（１９−２、３、４）と通信可能であるとする。
【０１５９】
フィルタリング判定は任意の階層で実現可能であり、通信制御層１９−３にフィルタリング機能が備えられた場合（１９−７）、通信パケット１９−１はパケット受信層１９−２を経由した後、通信制御層１９−３においてフィルタ通過の判断を受け、登録リスト１９−６に通過許可として登録されていればアプリ層１９−４を経由して通信可能（１９−５）へ、通過拒否であればパケット破棄（１９−８）へと進む。
【０１６０】
フィルタリング機能をパケット受信層１９−２に備えた場合（１９−９）も同様に各階層を経由した処理が行われる。
【０１６１】
しかし、各階層の機能が異なるため実現可能なフィルタリングの機能も異なる。通信制御層１９−３やアプリ層１９−４にフィルタリング機能が備えられた場合であれば高度なフィルタリングを実現することが可能であり、例えば通信機器自身が送信したパケットに対する応答パケットを該層において識別することでフィルタリング機能を通過することが可能である。
【０１６２】
また、ＰＣのように複数のサービスを提供可能である機器の場合は、サービスごとに複雑なフィルタリング制御をすることが可能である。
【０１６３】
ところが、フィルタリング機能をパケット受信層１９−２に備えた場合、パケット受信層ヘッダ部２０−４に含まれている情報は、該パケットの送信先アドレスや送信元アドレス、或いはＥｔｈｅｒパケットタイプ情報等のように限られた情報である。そのため上記のような複雑な制御が不可能である。
【０１６４】
以下、例えフィルタリング機能をパケット受信層１９−２に備えた場合でも、登録リストに未登録のパケットを受信した際にも、該パケットがネットワーク構成用のパケットであればフィルタリング機能で通信を拒否されること無く、パケット内データを受信可能とする方法を説明する（図２１）。
【０１６５】
＜フィルタリングの通過方法＞
・フィルタリング迂回型
図２１は、ステップＳ１８０５およびＳ１８１１に記したパケット受信部の動作であり、図２１を用いてフィルタリングの設定に影響なくネットワーク構成はできるようにするためのフィルタリングの通過方法（フィルタリング迂回型）について説明する。
【０１６６】
パケット受信層１９−２でパケットを受信すると、ステップＳ２１０１においてフィルタリング機能が有効かどうかを確認する。フィルタリング機能が無効であれば、受信したパケットは全てパケット受信層１９−２を通過可能であり、通信制御層１９−３以降の層を介して通信を行うことができる（Ｓ２１０４へ）。
【０１６７】
フィルタリング機能が有効である場合は、ステップＳ２１０２において、受信したパケットのヘッダ部情報からパケットの種類を識別する。パケットの種類が無線認証パケットＰＫＴ０１（ＥＡＰＯＬ：図２２参照）、ＩＰアドレス分配パケットＰＫＴ１１（ＤＨＣＰ、ＢＯＯＴＰ：図２３参照）、ＩＰアドレス解決パケットＰＫＴ１２（ＡＲＰ：図２３参照）の場合は、該パケットをネットワーク構成用パケットであると判断し、通信を許可する。通信を許可した場合は、該パケットをステップＳ２１０３のフィルタリング機能を経由させずにパケット受信層１９−２を通過させることで、通信制御層以降の層を介して通信を行うようにする（Ｓ２１０４へ）。
【０１６８】
ネットワーク構成用のパケットでない場合は、ステップＳ２１０３において、登録リスト１９−６を参照した通常のフィルタリング処理を行う。この場合、登録リストに登録されている通信機器からのパケットのみパケット受信層を通過可能であり、通信制御層以降の層を介して通信を行うことができ（Ｓ２１０４へ）、登録リストに登録されていない機器からのパケットは破棄され（ステップＳ２１０５）、通信は失敗に終わる。
【０１６９】
図２２は、フィルタリングを通過させるかどうかを判断する通信パケットのヘッダ部の種類を示していて、無線認証パケットＰＫＴ０１を示している。この他にも各種パケットがあり得るが、上記説明に直接関係するコネクション認証に必要なパケットだけをあげている。
【０１７０】
図２３も、フィルタリングを通過させるかどうかを判断する通信パケットのヘッダ部の種類を示していて、ＩＰアドレス分配パケットＰＫＴ１１、ＩＰアドレス解決パケットＰＫＴ１２を示している。この他にも各種パケットがあり得るが、上記説明に直接関係するＩＰアドレスの決定に必要なパケットだけをあげている。ＰＫＴ１１に関しては、パケット受信層１９−２が操作可能なヘッダ部の情報でないため操作をすることはできないが、本来であれば他の階層で処理すべき情報を文字列識別手段が単純に読み取ることで、該当する文字列が含まれていればＰＫＴ１１であると判断する。
【０１７１】
なお、図２１で示したフローチャートを、本発明の主旨に準じて変更することも可能である。
【０１７２】
・登録リスト追加型
図２４は、ステップＳ１８０５およびＳ１８１１に記したパケット受信部の動作であり、図２４を用いてフィルタリングの設定に影響なくネットワーク構成はできるようにするためのフィルタリングの通過方法（登録リスト追加型）をについて説明する。
【０１７３】
フィルタリング迂回型のフィルタリング通過方法との比較で言えば、パケット受信処理を示す図２１のステップＳ２１０２からステップＳ２１０４へ分岐する点と、図２４のステップＳ２４０２からステップＳ２４０３へ分岐する点が異なる。
【０１７４】
即ちフィルタリング迂回型では、受信パケットのヘッダ部を認識し、該パケットがネットワーク構成用のパケットの場合は、フィルタリング判定を迂回することでパケットの通過を実現している事を特徴としている。
【０１７５】
これに対して登録リスト追加型では、受信パケットのヘッダ部を認識し、該パケットがネットワーク構成用のパケットの場合は、ステップＳ２４０３において、受信したパケットを送信した機器のＭＡＣアドレス、または、受信パケットのタイプ情報またはポート情報等（図２２、２３の具体例参照）を登録リストに登録し、その後ステップＳ２４０４において通常のフィルタリング判定を行う事を特徴としている。
【０１７６】
ステップＳ２４０３における登録については、自動登録であっても、ユーザーに通知した後に登録させる手動登録であっても構わない。また登録している期間は一時的であったり、恒久的であったりしても良い。一時的であればセキュリティ・レベルを維持することが可能であり、恒久的であっても登録される機器がアクセスポイントなどであればセキュリティ・レベルが損なわれる危険性が少ない。
【０１７７】
ステップＳ２４０３における登録を行うことにより、ステップＳ２４０４におけるフィルタリング判定が行われてもネットワーク構成用のパケットは破棄されずに通信制御層以降の層を介して通信することができる。
【０１７８】
なお、図２１と同様に、図２４で示したフローチャートを、本発明の主旨に準じて変更することも可能である。
【０１７９】
以上説明したように、受信パケットのヘッダ情報を識別するだけで、ＩＰアドレス取得等のネットワーク構成に必要なパケットを判断し、フィルタリング機能を通過させる事ができる。これによりクライアント機器自身が、自らが発行した通信パケットの応答であるか否かを記憶するような高度なフィルタリング制御を行う必要が無い。さらに、フィルタリング機能を通過する通信パケットは、ネットワーク構成に必要な通信パケットのみであるため、本発明の適用後もセキュリティ・レベルは維持できるということを特徴がある。また、下位レベルの階層であってもネットワーク環境に悪影響を及ぼさないフィルタリング機能を実現できる。
【図面の簡単な説明】
【０１８０】
【図１】本発明に係わる一実施形態の構成を示す図である。
【図２】図１に示したＰＣとプリンタの構成を示す図である。
【図３】ＵＳＢを用いたプリンタドライバの一般的なインストール手順の画面を示した図である。
【図４】ＵＳＢを用いたプリンタドライバの一般的なインストール手順のフローチャート図である。
【図５】ＯＳにおける標準設定データベースの一例を示した図である。
【図６】ＯＳにおけるプリンタ一覧の画面の一例示した図である。
【図７】ＵＳＢを用いたプリンタドライバのインストール手順の画面を示した図である。
【図８】ＵＳＢを用いたプリンタドライバのインストールのフローチャート図である。
【図９】ＵＳＢを用いた無線ネットワークのインストール手順の画面を示した図である。
【図１０】ＵＳＢを用いた無線ネットワークの実施例における特徴的なインストール手順の画面を示した図である。
【図１１】ＵＳＢを用いた無線ネットワークの実施例におけるインストールのフローチャート図である。
【図１２】ＰＣとプリンタとの間をＵＳＢ経由でやり取りされるコマンド例を示す図である。
【図１３】ＰＣとアクセスポイントとの間をネットワーク経由でやり取りされるコマンド例を示す図である。
【図１４】ＰＣ内部でドライバインターフェースとやり取りされるコマンド例を示す図である。
【図１５】実施例においてユーザーが無線ＬＡＮポートのセットアップのみを選択した場合のプリンタ一覧画面を示した図である。
【図１６】実施例においてユーザーが無線ＬＡＮポートと共にＵＳＢポートのセットアップを選択した場合のプリンタ一覧画面を示した図である。
【図１７】実施例において暗号化キー入力処理のフローチャートを示した図である。
【図１８】実施例においてプリンタのネットワーク設定および接続の際の動作フローチャート図である。
【図１９】フィルタリング処理の概念を示した図である。
【図２０】通信パケット構成の概念を示した図である。
【図２１】フィルタリング迂回型を説明するフローチャート図である。
【図２２】コネクション認証に必要なパケット例を示す図である。
【図２３】ＩＰアドレスの決定に必要なパケット例を示す図である。
【図２４】登録リスト追加型を説明するフローチャート図である。
【符号の説明】
【０１８１】
１−１  ノートＰＣ
１−２  プリンタ
１−３  アクセスポイント
１−４  無線ＬＡＮカード
１−５  ＵＳＢケーブル
【図１】
2006067293.tif 000003
【図２】
2006067293.tif 000004
【図３】
2006067293.tif 000005
【図４】
2006067293.tif 000006
【図５】
2006067293.tif 000007
【図６】
2006067293.tif 000008
【図７】
2006067293.tif 000009
【図８】
2006067293.tif 000010
【図９】
2006067293.tif 000011
【図１０】
2006067293.tif 000012
【図１１】
2006067293.tif 000013
【図１２】
2006067293.tif 000014
【図１３】
2006067293.tif 000015
【図１４】
2006067293.tif 000016
【図１５】
2006067293.tif 000017
【図１６】
2006067293.tif 000018
【図１７】
2006067293.tif 000019
【図１８】
2006067293.tif 000020
【図１９】
2006067293.tif 000021
【図２０】
2006067293.tif 000022
【図２１】
2006067293.tif 000023
【図２２】
2006067293.tif 000024
【図２３】
2006067293.tif 000025
【図２４】
2006067293.tif 000026