(57)【要約】【課題】  サービスをより効率的に利用することができる通信装置を提供する。【解決手段】  通信装置は、特定のサービスを提供する装置を検索し、検索された他の通信装置と無線によって接続する。そして、接続された他の通信装置のアドレスを、前記他の通信装置から取得し、取得したアドレスに基づいて前記他の通信装置が提供するサービスを利用する。【選択図】  図４
2014160319.tif 000002
【特許請求の範囲】
【請求項１】
通信装置であって、
特定のサービスを提供する装置を検索する検索手段と、
前記検索手段によって検索された他の通信装置と無線によって接続する接続手段と、
前記接続手段によって接続された他の通信装置のアドレスを、前記他の通信装置から取得する取得手段と、
を有し、
前記取得したアドレスに基づいて前記他の通信装置が提供するサービスを利用することを特徴とする通信装置。
【請求項２】
前記取得手段は、他の通信装置のＭＡＣアドレスを元に、当該他の通信装置のＩＰアドレスを取得することを特徴とする請求項１記載の通信装置。
【請求項３】
前記取得手段は、ＲＡＲＰを用いて前記他の通信装置のアドレスを取得することを特徴とする請求項１又は２に記載の通信装置。
【請求項４】
前記検索手段によって検索された他の通信装置との間で、無線通信の際の役割を決定する決定手段と、
前記接続手段は、前記決定手段によって決定された役割に従って、無線ネットワークを構築又は無線ネットワークに参加し、他の通信装置と接続することを特徴とする請求項１乃至３の何れか一項に記載の通信装置。
【請求項５】
前記決定手段によって、無線ネットワークを構築する装置としての役割に決定した場合、他の通信装置にアドレスを割り当てる割り当て手段と、
前記決定手段によって、構築された無線ネットワークに参加する装置としての役割に決定した場合、他の通信装置からアドレスの割り当てを受ける受信手段と、
を有することを特徴とする請求項１乃至４の何れか一項に記載の通信装置。
【請求項６】
前記サービスは、印刷サービス、動画像ストリーミングサービス、ファイル転送サービスの何れかを含むことを特徴とする請求項１乃至５の何れか一項に記載の通信装置。
【請求項７】
前記通信装置は、前記他の通信装置と、ＩＥＥＥ８０２．１１に準拠した無線ＬＡＮを用いて通信することを特徴とする請求項１乃至６の何れか一項に記載の通信装置。
【請求項８】
通信装置の制御方法であって、
特定のサービスを提供する装置を検索する検索工程と、
前記検索工程によって検索された他の通信装置と無線によって接続する接続工程と、
前記接続工程によって接続された他の通信装置のアドレスを、前記他の通信装置から取得する取得工程と、
を有し、
前記取得したアドレスに基づいて前記他の通信装置が提供するサービスを利用することを特徴とする通信装置の制御方法。
【請求項９】
請求項１乃至７の何れか一項に記載の通信装置として、コンピュータを動作させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信装置、通信装置の制御方法、プログラムに関する。
【背景技術】
【０００２】
近年、デジタルカメラやプリンタなどの電子機器に無線ＬＡＮステーション機能を搭載し、電子機器を通信装置として、無線ＬＡＮに接続して使用するケースが増えてきている。例えば特許文献１には、デジタルカメラに無線ＬＡＮ機能を搭載し、画像共有を容易にする方法が開示されている。
【０００３】
また、Ｗｉ−Ｆｉ  ＡｌｌｉａｎｃｅによりＷｉ−Ｆｉ  Ｄｉｒｅｃｔ（登録商標）という規格が制定された。Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔでは、各電子機器が無線ＬＡＮアクセスポイントまたは無線ＬＡＮステーションのいずれとして動作するかを決定するプロトコルが規定されている。前記プロトコルを実行することにより、電子機器のどちらが無線ＬＡＮアクセスポイントになり、どちらが無線ＬＡＮステーションになるかを自動的に決定できる。このＷｉ−Ｆｉ  Ｄｉｒｅｃｔを使用することで、アクセスポイントを別途用意する必要がなくなり、電子機器同士で直接通信して各種のサービス（画像共有、印刷など）を実行することができるので、ユーザの利便性が向上する。
【０００４】
また、アプリケーションレイヤにおいて他装置が提供しているサービスの内容を検索する機能（サービスディスカバリ機能）が、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔのオプション機能として規定されている。本サービスディスカバリ機能によれば、接続処理実行前に、接続相手となる電子機器が提供しているサービスの情報を知ることができ、ユーザの利便性が向上する。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１１−３５７６８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
上記サービスディスカバリ機能を用いれば、無線ＬＡＮレイヤの通信によって、相手装置が提供しているサービスの情報を知ることができるが、この時点では相手装置のＩＰアドレスは決定していない。一方、アプリケーションレイヤにおいて実行されるサービスは、ＴＣＰ／ＩＰのプロトコル上で実行されるため、サービスを利用するために相手装置のＩＰアドレスを知らなければならない。そのため、無線ＬＡＮレイヤの接続後に改めてＴＣＰ／ＩＰ上でのサービス情報の検索が必要となり、処理の負荷がかかってしまう。
【０００７】
そこで本発明は、サービスをより効率的に利用することができる通信装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するために、本発明の通信装置は、特定のサービスを提供する装置を検索する検索手段と、前記検索手段によって検索された他の通信装置と無線によって接続する接続手段と、前記接続手段によって接続された他の通信装置のアドレスを、前記他の通信装置から取得する取得手段とを有し、前記取得したアドレスに基づいて前記他の通信装置が提供するサービスを利用することを特徴とする。
【発明の効果】
【０００９】
本発明によれば、サービスをより効率的に利用することができるようになる。
【図面の簡単な説明】
【００１０】
【図１】装置を構成するブロック図
【図２】装置内のソフトウェア機能ブロック図
【図３】本発明が適用されるネットワーク構成の一例を示す図
【図４】実施例１における通信装置間のシーケンスの一例を示す図
【図５】実施例１における通信装置のフローチャートの一例を示す図
【図６】実施例２における通信装置間のシーケンスの一例を示す図
【図７】実施例２における通信装置のフローチャートの一例を示す図
【図８】実施例３における通信装置間のシーケンスの一例を示す図
【図９】実施例３における通信装置のフローチャートの一例を示す図
【発明を実施するための形態】
【００１１】
［実施例１］
以下、本実施形態に係る通信装置について、図面を参照しながら詳細に説明する。以下では、ＩＥＥＥ８０２．１１シリーズに準拠した無線ＬＡＮシステムを用いた例について説明するが、通信形態は必ずしもＩＥＥＥ８０２．１１準拠の無線ＬＡＮには限らない。
【００１２】
本実施形態に好適な事例におけるハードウェア構成について説明する。
【００１３】
図１は本発明を適用できる実施形態に係る、後述の各装置の構成の一例を表すブロック図である。１０１は装置全体を示す。１０２は、記憶部１０３に記憶される制御プログラムを実行することにより装置全体を制御する制御部である。制御部１０２は、１つ又は複数のＣＰＵやＭＰＵ等のプロセッサを含む。制御部１０２は、他の装置との間で通信パラメータの設定制御も行う。１０３は制御部１０２が実行する制御プログラムと、通信パラメータ等の各種情報を記憶する記憶部である。また、記憶部１０３には、通信装置で生成された、又は、外部装置から受信した、画像データやファイル等を記憶してもよい。記憶部１０３は、ＲＯＭ，ＲＡＭ，ＨＤＤ，フラッシュメモリ等の各種メモリによって構成される。尚、後述する各種動作は、記憶部１０３に記憶された制御プログラムを制御部１０２が実行することにより行われる。
【００１４】
１０４はＩＥＥＥ８０２．１１シリーズに準拠した無線ＬＡＮ通信を行うための無線部である。１０５は各種表示を行う表示部でありＬＣＤやＬＥＤのように視覚で認知可能な情報の出力、あるいはスピーカなどの音出力が可能な機能を有する。表示部１０５は視覚情報および音情報の少なくともどちらか一方を出力する機能を備えるものである。
【００１５】
１０７はアンテナ制御部、そして１０８はアンテナである。アンテナ制御部１０７はアンテナ１０８を制御して無線通信による信号を送受信する。１０９は、ユーザが各種入力等を行い、通信装置を操作するための操作部である。操作部１０９は、各種ボタンやタッチパネル等によって構成される。
【００１６】
サービス提供部１１０は、アプリケーションレイヤにおいて提供されるサービスを実行する機能を備えている。例えば、本通信機器がプリンタである場合は、印刷機能を提供し、デジタルカメラである場合は撮像機能を提供する。
【００１７】
尚、図１は一例であり、通信装置１０１は図１に示すハードウェア構成以外のハードウェア構成を備えていてもよい。例えば通信装置１０１がプリンタであれば印刷部を備え、通信装置１０１がデジタルカメラであれば撮像部を備える。
【００１８】
図２は、後述の通信制御機能を実行するソフトウェア機能ブロックの構成の一例を表すブロック図である。２０１はソフトウェア機能ブロック全体を示す。２０２はＤｉｓｃｏｖｅｒｙ制御部であり、通信相手となる通信装置を検索する検索処理を動作させる。
【００１９】
２０３はＧＯ  Ｎｅｇｏｔｉａｔｉｏｎ制御部である。Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔプロトコル仕様に基づいた制御を行い、通信装置間でどちらが無線ＬＡＮアクセスポイントになり、どちらが無線ＬＡＮステーションになるかといった無線レイヤにおける役割を決定する。Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔにおいては、無線ＬＡＮアクセスポイント機能を実施する通信装置をＰ２Ｐグループオーナー（以下、ＧＯ）、無線ＬＡＮステーション機能を実施する通信装置をＰ２Ｐクライアント（以下、ＣＬ）と称する。ＧＯまたは無線ＬＡＮアクセスポイントとなる場合は、後述の無線ＬＡＮアクセスポイント機能制御部２１１が起動され、ＣＬまたは無線ＬＡＮステーションとなる場合は、後述の無線ＬＡＮステーション機能制御部２１０が起動される。このＧＯ  ＮｅｇｏｔｉａｔｉｏｎのプロトコルはＷｉ−Ｆｉ  Ｄｉｒｅｃｔ仕様で決定されている。本発明のポイントではないため、説明は割愛する。Ｗｉ−Ｆｉ  ＤｉｒｅｃｔではＧＯが構築したネットワークをＰ２Ｐグループと称する。本明細書でもネットワークのことをＰ２Ｐグループと記載する場合がある。本実施例においては、これらは同一の意味で記載されている。
【００２０】
なお、本明細書では、Ｐ２Ｐグループオーナー（ＧＯ）、Ｐ２Ｐクライアント（ＣＬ）および役割が未決定の通信装置群をまとめて、Ｐ２Ｐデバイスと称す。
【００２１】
２０４はＤＨＣＰクライアント制御部であり、ＧＯ  Ｎｅｇｏｔｉａｔｉｏｎ制御部２０３において自通信装置の役割が無線ＬＡＮステーションとなったときに起動される。２０５はＤＨＣＰサーバ制御部であり、ＧＯ  Ｎｅｇｏｔｉａｔｉｏｎ制御部２０３において自通信装置の役割が無線ＬＡＮアクセスポイントとなった時に起動される。
【００２２】
２０６はＷＰＳエンローリ制御部であり、無線ＬＡＮの通信のために必要な通信パラメ―タを、他のＷＰＳレジストラ装置より受信する。ＤＨＣＰクライアント制御部２０４と同様に、自通信装置の役割が無線ＬＡＮステーションの時に動作する。２０７はＷＰＳレジストラ制御部であり、無線ＬＡＮの通信のために必要な通信パラメータを、他のＷＰＳエンローリ装置に提供する。ＤＨＣＰサーバ制御部２０５と同様に、自通信装置の役割が無線ＬＡＮアクセスポイントの時に動作する。尚、ＷＰＳレジストラによって提供される通信パラメータは、ネットワーク識別子としてのＳＳＩＤ、暗号鍵、暗号方式、認証鍵、認証方式等のパラメータである。
【００２３】
２０８は無線ＬＡＮパケット受信部、２０９は無線ＬＡＮパケット送信部であり、上位レイヤの通信プロトコルを含むあらゆるパケットの送受信をつかさどる。２１０は無線ＬＡＮステーション機能制御部である。自通信装置が無線ＬＡＮステーションとして動作するときの認証・暗号処理等を実施し、無線ＬＡＮアクセスポイントとして動作する装置が構築した無線ネットワークに参加する。２１１は無線ＬＡＮアクセスポイント機能制御部であり、自通信装置が無線ＬＡＮアクセスポイント機能として動作するときに無線ネットワークを構築し、認証・暗号処理および通信相手装置の管理等を実施する。無線ＬＡＮステーション機能制御部２１０および無線ＬＡＮアクセスポイント機能制御部２１１は、どちらか一方の機能もしくは同時に動作することが可能である。
【００２４】
２１２はパケットルーティング制御部であり、無線ＬＡＮアクセスポイント機能制御部２１１が動作しているときに、通信パケットをブリッジおよびルーティングする。２１３はデータ記憶部であり、ソフトウェアそのものおよび、無線ＬＡＮパラメータや、前述のＤＨＣＰアドレステーブルおよびＡＲＰテーブル等の各種テーブルを記憶保持している。
【００２５】
２１４はサービスディスカバリ制御部であり、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ特有のサービスディスカバリ機能をつかさどる。サービスディスカバリ機能は、ＩＥＥＥ８０２．１１ｕで定められたアクションフレームを送受信することにより、相手通信装置の保有しているサービス情報をやりとりする。具体的にはＳＤ  Ｑｕｅｒｙを送信し、ＳＤ  Ｒｅｓｐｏｎｓｅを返答として受信する。もしくは、相手装置からのＳＤ  Ｑｕｅｒｙを受信し、応答としてＳＤ  Ｒｅｓｐｏｎｓｅを送信する。本実施例において、サービス情報とは、通信装置が提供するアプリケーションレイヤのサービスを示す情報である。アプリケーションレイヤのサービスは、印刷サービス、動画像ストリーミングサービス、ファイル転送サービス等である。また、サービス情報には、通信装置が提供するサービスにアクセスするためのＵＲＬ等の識別情報が含まれることがある。
【００２６】
２１５はＲＡＲＰプロトコル制御部であり、ＲＦＣ９０３によって定められたＲｅｖｅｒｓｅ  ａｄｄｒｅｓｓ  ｒｅｓｏｌｕｔｉｏｎ  ｐｒｏｔｏｃｏｌを実行する。具体的には、ＭＡＣアドレスをキーとして、対応するＩＰアドレスを取得するためのプロトコル機能を実行する。
【００２７】
２１６はアプリケーションレイヤのサービスを提供するサービス提供部である。ここでのアプリケーションレイヤとは、ＯＳＩ参照モデルにおける第５層以上の上位レイヤにおけるサービス提供層のことをさす。すなわち、サービス提供部２１６は、例えば、印刷機能（印刷サービス）や画像ストリーミング機能（動画像ストリーミングサービス）や、ファイル転送機能（ファイル転送サービス）などを提供する。
【００２８】
２１７はアプリケーションレイヤにおけるサービス利用部である。対向となる装置のアプリケーションレイヤのサービス提供部によって提供されるサービスを利用する。すなわち、印刷サービス提供装置へ印刷物を送信する機能や、デジタルディスプレイに動画像を送信する機能などを司る。
【００２９】
なお、図２に示す全ての機能ブロックはソフトウェアによって提供されるものに限らず、少なくとも一部がハードウェアによって提供されるようにしてもよい。そして、図２に示す各機能ブロックは、相互関係を有するものである。また、図２に示す各機能ブロックは一例であり、複数の機能ブロックが１つの機能ブロックを構成するようにしてもよいし、何れかの機能ブロックが更に複数の機能を行うブロックに分かれてもよい。
【００３０】
また、本実施例において、アプケリーションレイヤにおけるサービスは、そのサービスを提供する装置と、そのサービスを利用する装置とによって実現される。アプリケーションレイヤにおけるサービスの一例として印刷サービスを例にすると、サービス提供装置はプリンタであり、ＰＣ等から送られる印刷データを受信して印刷を行う。一方、サービス利用装置はＰＣ等の装置であり、印刷データを生成してサービス提供装置としてのプリンタに送信する。また、サービスの一例として画像ストリーミングサービスを例にすると、サービス提供装置は表示装置であり、ＰＣ等から送られる画像データを受信して表示する。一方、サービス利用装置はＰＣ等の装置であり、画像データを生成してサービス提供装置としての表示装置に送信する。
【００３１】
図３は、通信装置Ａ３２（以下、ＳＴＡ−Ａ）、通信装置Ｂ３３（以下、ＳＴＡ−Ｂ）、および、ＳＴＡ−ＡとＳＴＡ−Ｂとから構成されるネットワークＡ３１（以下、ネットワークＡ）を示した図である。これら全ての装置は、先に説明した図１、図２の構成を有している。ＳＴＡ−ＡとＳＴＡ−Ｂとは、それぞれＷｉＦｉ−Ｄｉｒｅｃｔに対応しており、後述するシーケンス、フローチャートに示す処理を実行する。ＳＴＡ−ＡとＳＴＡ−ＢのうちＧＯとして動作する装置は、ネットワークＡを構築し、ＣＬとして動作する装置は、構築されたネットワークＡに参加する。尚、本実施例において、ＳＴＡ−Ａはサービス提供装置として動作し、ＳＴＡ−Ｂはサービス利用装置として動作するものとする。
【００３２】
図４は、ＳＴＡ−ＡとＳＴＡ−Ｂとの間の通信を示すシーケンス図である。本シーケンスでは、無線ＬＡＮの接続前に、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ規格に定められたサービスディスカバリによるサービス検索を実施している。そして、所望のサービスを提供する通信装置が存在する場合に無線ＬＡＮの接続処理を行い、その後、当該サービスを実行している。
【００３３】
サービス提供装置であるＳＴＡ−Ａは、ユーザの指示により、サービスの提供を開始する（Ｆ４０１）。一方、サービス利用装置であるＳＴＡ−Ｂは、ユーザの指示により、サービス提供装置を探すために、サービス検索処理を開始する（Ｆ４０２）。
【００３４】
なお、本実施例における、アプリケーションレイヤにおけるサービス利用装置、サービス提供装置とは、例えば、以下のとおりである。
【００３５】
アプリケーションレイヤにおけるサービスが印刷サービスであれば、利用装置は、印刷すべき画像やデータを有し、提供装置に印刷データを送信する装置であり、提供装置は印刷機能を有し、利用装置から送られた印刷データを印刷する装置である。具体的には、前者はＰＣやデジタルカメラやスマートフォン等であり、後者はプリンタや複合機等である。
【００３６】
アプリケーションレイヤにおけるサービスが映像ストリーミングサービスであれば、利用装置は、デジタルカメラやカムコーダなどの映像記録装置であり、提供装置は、デジタルＴＶやプロジェクタなどの画像表示装置である。
【００３７】
アプリケーションレイヤにおけるサービスをＤＬＮＡ（登録商標）とすると、例えば、利用装置はＤＭＳ（デジタルメディアサーバ）であり、提供装置はＤＭＲ（デジタルメディアレンダラ―）である。ＤＬＮＡ規格においては様々なデバイスクラスが存在するため本記述は一例である。詳細はＤＬＮＡ規格を参照されたい。
【００３８】
アプリケーションレイヤにおけるサービスがＷｉ−Ｆｉ  ｍｉｒａｃａｓｔ（登録商標）であれば、Ｓｉｎｋと呼ばれる映像表示装置が提供装置であり、Ｓｏｕｒｃｅと呼ばれる映像蓄積装置が利用装置である。
【００３９】
ＵＰｎＰプロトコル対応デバイスであれば、提供装置はＵＰｎＰデバイスであり、利用装置はコントロールポイントである。尚、ここで例示したサービスとサービス上の役割は単なる例示であり、アプリケーションレイヤにおけるサービスと役割をこれらだけに限定する意図はない。
【００４０】
Ｆ４０２においてユーザからサービス検索処理の指示を受けたＳＴＡ−Ｂは、サービス検索に先立ち、通信相手となる相手装置を検索するために、Ｐｒｏｂｅ  Ｒｅｑｕｅｓｔ信号をブロードキャスト送信する（Ｆ４０３）。
【００４１】
ＳＴＡ−Ａは前記Ｐｒｏｂｅ  Ｒｅｑｕｅｓｔ信号を受信すると、Ｐｒｏｂｅ  Ｒｅｓｐｏｎｓｅ信号をＳＴＡ―Ｂへ返信する（Ｆ４０４）。ＳＴＡ−Ｂは、前記Ｐｒｏｂｅ  Ｒｅｓｐｏｎｓｅ信号を受信することで、通信相手となる候補の装置として、ＳＴＡ−Ａが存在することを認識できる。したがって、ＳＴＡ−Ｂは、ユーザ所望のサービスをＳＴＡ−Ａが提供可能かを調べるために、ＳＤ  Ｑｕｅｒｙ信号を送信する（Ｆ４０５）。ＳＤ  Ｑｕｅｒｙ信号とは、前述の通り、送信先の通信装置が所望のサービスを提供しているか否かを問い合わせるための問い合わせ信号である。ＳＤ  Ｑｕｅｒｙ信号は全サービスを検索するためのワイルドカードを指定しても良いし、特定のサービスを指定してもよい。そして本ＳＤ  Ｑｕｅｒｙ信号による問い合わせは、通信装置間が無線ＬＡＮによる接続を実施する前（ｐｒｅ−ａｓｓｏｃｉａｔｉｏｎ状態）に実施可能である。
【００４２】
ＳＤ  Ｑｕｅｒｙ信号を受信したＳＴＡ−Ａは、その応答としてＳＤ  Ｒｅｓｐｏｎｓｅ信号を送信する（Ｆ４０６）。ＳＤ  Ｑｕｅｒｙ信号がワイルドカードを指定したものであった場合、ＳＤ  Ｒｅｓｐｏｎｓｅ信号には、ＳＴＡ−Ａが提供するサービスを示す情報が含まれている。また、ＳＤ  Ｑｕｅｒｙ信号が特定のサービスを指定したものであった場合、ＳＤ  Ｒｅｓｐｏｎｓｅ信号には、ＳＴＡ−Ａが当該特定のサービスを提供可能であるか否かを示す情報が含まれている。ＳＴＡ−Ａは、ＳＤ  Ｒｅｓｐｏｎｓｅ信号を送信する時に、ＳＤ  Ｑｕｅｒｙ信号を送信したＳＴＡ−ＢのＭＡＣアドレス等の識別情報を自身の記憶部に保持する。
【００４３】
ＳＴＡ−Ｂは、ＳＤ  Ｒｅｓｐｏｎｓｅ信号の内容を参照し、ユーザの判断もしくは通信装置の自律的な判断により所望のサービスがＳＴＡ−Ａで提供可能であることが確認された場合、ＳＴＡ−ＡのＭＡＣアドレス等の識別情報を記憶部へ保持する。そして、ユーザの指示に応じて、所望のサービスのサービス開始指示を行う（Ｆ４０７）。
【００４４】
なお、ここではＰｒｏｂｅ  Ｒｅｑｕｅｓｔ信号により通信装置の検索を行った後に、ＳＤ  Ｑｕｅｒｙ信号により提供サービスの問い合わせを行う例について説明した。しかし、Ｐｒｏｂｅ  Ｒｅｑｕｅｓｔ信号に、アプリケーションレイヤのサービスに関連する追加情報要素を付与し、Ｐｒｏｂｅ  Ｒｅｑｕｅｓｔ信号のみで相手装置のサービスも含めて検索しても良い。この場合は、ＳＤ  Ｑｕｅｒｙ信号およびＳＤ  Ｒｅｓｐｏｎｓｅ信号のやり取りは行わなくても良い。ただし、お互いのＭＡＣアドレス等の識別情報の保持は同様に実施する。
【００４５】
図４の説明に戻る。ＳＴＡ−Ｂは、サービス開始指示Ｆ４０７に応じて、無線ＬＡＮの接続処理を実施する。本実施例においては、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ規格に基づいた無線ＬＡＮ接続処理を実施するため、Ｇｒｏｕｐ  Ｆｏｒｍａｔｉｏｎ処理を実施する（Ｆ４０８）。本処理は、前述のＧＯ  Ｎｅｇｏｔｉａｔｉｏｎ制御部２０３により制御される。Ｇｒｏｕｐ  Ｆｏｒｍａｔｉｏｎ処理とは、前述の通り、２台の通信装置のどちらがＧＯになり、どちらがＣＬになるかを決定する役割決定の処理である。この役割決定処理の結果、ＳＴＡ−ＡがＧＯとして動作を開始し（Ｆ４０９）、ＳＴＡ−ＢがＣＬとして動作を開始するとする（Ｆ４１０）。
【００４６】
したがって、ＳＴＡ−ＡをＷＰＳレジストラとしＳＴＡ−ＢをＷＰＳエンローリとしてＷＰＳパラメータ交換処理が実行される（Ｆ４１１）。
【００４７】
引き続き、ＳＴＡ−ＡをＤＨＣＰサーバとして、ＳＴＡ―ＢをＤＨＣＰクライアントとしてＩＰアドレスの設定処理を実行する（Ｆ４１２）。
【００４８】
Ｆ４０５、Ｆ４０６におけるサービスディスカバリ処理によって、ＳＴＡ−Ａのサービス情報はＳＴＡ−Ｂに通知されている。そこで、アプリケーションレイヤによるサービス処理を実施するのに必要なＳＴＡ−ＡのＩＰアドレスを取得するために、ＲＡＲＰプロトコルを実施する。ＲＡＲＰプロトコルを使う理由は、ＳＴＡ−ＡのＭＡＣアドレスは既に取得済みだからである。
【００４９】
すなわち、ＳＴＡ−ＢがＲＡＲＰリクエストをＳＴＡ−Ａに送信する（Ｆ４１３）。それに応答して、ＳＴＡ−ＡはＲＡＲＰレスポンスをＳＴＡ−Ｂに送信する（Ｆ４１４）。
【００５０】
ここで、ＩＰアドレスの取得処理を行う理由は、ＤＬＮＡやＢｏｎｊｏｕｒなどのアプリケーションレイヤのプロトコルはＴＣＰ／ＩＰ上で動作しており、アプリケーションレイヤでのサービス実施のためにはＩＰアドレスが必要不可欠だからである。
【００５１】
Ｆ４１３，Ｆ４１４に示したＲＡＲＰプロトコル処理により、ＳＴＡ−Ｂはサービス処理に必要なＳＴＡ−ＡのＩＰアドレスを確認できる。そのため、ＴＣＰ／ＩＰ上における機器検索機能（例えばＵＰｎＰやＢｏｎｊｏｕｒなど）を再度実施することなく、アプリケーションレイヤにおけるサービスを実施することが可能となる（Ｆ４１５）。
【００５２】
なお、本シーケンス図では各種信号においてサービス利用装置が要求信号を送信して、その応答をサービス提供装置から受領する例を記載した。しかし、サービス提供装置から要求信号を送信して、その応答をサービス利用装置から受領しても良いし、信号の種類によってそれぞれの要求信号の送信装置を変えても良い。
【００５３】
図５は、本実施例の通信装置の動作を示すフローチャートである。本フローチャートの各ステップは、記憶部１０３に記憶されたプログラムを制御部１０２が実行することによって処理される。
【００５４】
通信装置は、ユーザの指示により処理が開始されると、自装置のサービス処理での役割を判定する（Ｓ５０１）。自装置がサービス利用装置である場合は、サービス提供装置を探すため、サービス検索を実施する（Ｓ５０２）。該サービス検索処理は、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ規格に定められたサービスディスカバリ処理を用いる。なお、サービスディスカバリ処理とは、図４で説明したように、Ｐｒｏｂｅ  Ｒｅｑｕｅｓｔ信号によるデバイスディスカバリ処理を行い、前記デバイスディスカバリ処理で検出された通信装置に向けて、サービス問い合わせを行うものである。
【００５５】
通信装置は、前記サービス検索処理において、所望のサービスを提供しているサービス提供装置が検出できたか否かを判定する（Ｓ５０３）。
【００５６】
Ｓ５０３における判定処理において、相手装置が存在しない場合、もしくは、相手装置となる通信装置は検出できたものの、所望のサービスを提供していない場合は、通信装置は、エラー処理を実施して処理を中止する（Ｓ５１０）。
【００５７】
一方、ステップＳ５０３において、相手装置を検出でき、なおかつ所望のサービスを提供していることが判明した場合は、通信装置は、サービス処理の準備処理を開始する（Ｓ５０４）。本ステップにおいて、通信装置は、通信相手となる相手装置のＭＡＣアドレスを、識別情報として記憶部１０３に記憶しておく。
【００５８】
続いて、アプリケーションレイヤにおけるサービス処理を実行するために、先ず無線ＬＡＮレイヤでの接続処理を実施する。具体的には、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ規格に基づいた接続処理のため、通信装置は、Ｇｒｏｕｐ  Ｆｏｒｍａｔｉｏｎと言われる役割決定処理を実施する（Ｓ５０５）。ここで決定する役割とは、前述したＧＯかＣＬかの役割である。
【００５９】
前記役割が決定した後、通信装置は、無線ＬＡＮパラメータおよびＩＰアドレスを設定するパラメータ設定処理を実施する（Ｓ５０６）。尚、本フローチャートではＳ５０６を一つのステップとして記載したが、具体的には、図２の説明で述べた通り、ＷＰＳプロトコルによる無線パラメータ設定処理および、ＤＨＣＰプロトコルによるＩＰアドレス割り当て処理が行われる。即ち、ＧＯとなった装置がＷＰＳレジストラとなり、ＣＬとなった装置がＷＰＳエンローリとなり、ＧＯの保有する無線ＬＡＮ接続に必要なパラメータを転送する。引き続きＧＯがＤＨＣＰサーバとなり、ＣＬがＤＨＣＰクライアントとなりＩＰアドレスの割り当て処理を実施する。
【００６０】
ここで、自装置および相手装置にＩＰアドレスが割り当てられたため、サービス検索処理で入手したＭＡＣアドレスについて、ＩＰアドレスと対応付ける必要がある。ＤＬＮＡ、Ｂｏｎｊｏｕｒ，ＩＰＰなどのアプリケーションレイヤのプロトコルは、ＴＣＰ／ＩＰ上で動作しているため、アプリケーションレイヤのサービスを実行するためにはＩＰアドレスが必要不可欠だからである。
【００６１】
そこで、通信装置は、ＲＦＣ９０３によって定められたＲＡＲＰプロトコルに基づいた、ＭＡＣアドレスからのＩＰアドレス取得処理を実施する（Ｓ５０７）。Ｓ５０７における取得処理の完了後、通信装置は、ステップＳ５０４において記憶した識別情報をＭＡＣアドレスからＩＰアドレスに変更する付け替え処理を実施する（Ｓ５０８）。この付け替え処理により、サービス実施に必要な情報が確定したため、通信装置はサービス処理を行うことが可能となる（Ｓ５０９）。
【００６２】
一方、Ｓ５０１において、自装置がサービス提供装置であると判定された場合は、通信装置は速やかにサービスを開始する（Ｓ５１１）。具体的には自装置が提供している、もしくは提供予定のアプリケーションレイヤでのサービス情報についてＵＰｎＰやＢｏｎｊｏｕｒなどで報知する。また、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ規格で定められたサービスディスカバリ処理で検索された場合に応答するための情報設定を行う。
【００６３】
通信装置は、サービスを開始した後、サービス利用装置に検出されることを待ちうける（Ｓ５１２）。サービス利用装置としての相手装置から検出された場合は、先に説明したサービス利用装置と同様に、ステップＳ５０５からステップＳ５０９までの処理を実施する。
【００６４】
なお、サービス利用装置から検出されない場合は、されるまで待ちうける。ここでは所定の時間でタイムアウトとして処理をエラー終了しても良い。
【００６５】
なお、本フローチャート図では各種信号においてサービス利用装置が要求信号を送信して、その応答をサービス提供装置から受領する例を記載したが。しかし、サービス提供装置から要求信号を送信して、その応答をサービス利用装置から受領しても良いし、信号の種類によってそれぞれの要求信号の送信装置を変えても良い。
【００６６】
以上のように、本実施例によれば、無線ＬＡＮ接続完了後に改めてＵＰｎＰもしくはＢｏｎｊｏｕｒ等のプロトコルによる再検索をすることがなくなり、処理の負荷が減る。そして、無線ＬＡＮ接続前に実施するサービス検索処理によって通信相手を決定することができ、サービス実施までの時間を短縮することが可能となり、サービスをより効率的に利用することができる。
【００６７】
［実施例２］
実施例１では、無線ＬＡＮレイヤにおけるディスカバリ処理において取得したＭＡＣアドレスを記憶しておき、ＲＡＲＰを用いて、そのＭＡＣアドレスから対応するＩＰアドレスを取得する方法を説明した。本実施においては、ＲＡＲＰプロトコルを用いずに、ＩＰアドレスが確定した時点で通信パケットによる通知を実施する場合について説明する。なお、各装置の構成は実施例１と同様に図１および図２に示した通りであり、システム構成は図３の通りであるため、これらの説明は省略する。
【００６８】
図６は、実施例２におけるＳＴＡ−ＡとＳＴＡ−Ｂとの間の通信を示すシーケンス図である。本シーケンスは、実施例１の図４に示したシーケンス処理と一部が異なる。図４と同一の処理については同一の番号を付与している。
【００６９】
サービス提供装置であるＳＴＡ−Ａは、ユーザの指示により、サービスの提供を開始する（Ｆ４０１）。一方、サービス利用装置であるＳＴＡ−Ｂは、ユーザの指示により、サービス提供装置を探すために、サービス検索処理を開始する（Ｆ４０２）。
【００７０】
Ｆ４０２においてユーザからサービス検索処理の指示を受けたＳＴＡ−Ｂは、サービス検索に先立ち、通信相手となる相手装置を検索するために、Ｐｒｏｂｅ  Ｒｅｑｕｅｓｔ信号をブロードキャスト送信する（Ｆ４０３）。
【００７１】
ＳＴＡ−Ａは前記Ｐｒｏｂｅ  Ｒｅｑｕｅｓｔ信号を受信すると、Ｐｒｏｂｅ  Ｒｅｓｐｏｎｓｅ信号をＳＴＡ―Ｂへ返信する（Ｆ４０４）。ＳＴＡ−Ｂは、前記Ｐｒｏｂｅ  Ｒｅｓｐｏｎｓｅ信号を受信することで、通信相手となる候補の装置として、ＳＴＡ−Ａが存在することを認識できる。したがって、ＳＴＡ−Ｂは、ユーザ所望のサービスをＳＴＡ−Ａが提供可能かを調べるために、ＳＤ  Ｑｕｅｒｙ信号を送信する（Ｆ４０５）。ＳＤ  Ｑｕｅｒｙ信号とは、前述の通り、送信先の通信装置が所望のサービスを提供しているか否かを問い合わせるための問い合わせ信号である。ＳＤ  Ｑｕｅｒｙ信号は全サービスを検索するためのワイルドカードを指定しても良いし、特定のサービスを指定してもよい。そして本ＳＤ  Ｑｕｅｒｙ信号による問い合わせは、通信装置間が無線ＬＡＮによる接続を実施する前（ｐｒｅ−ａｓｓｏｃｉａｔｉｏｎ状態）に実施可能である。
【００７２】
ＳＤ  Ｑｕｅｒｙ信号を受信したＳＴＡ−Ａは、その応答としてＳＤ  Ｒｅｓｐｏｎｓｅ信号を送信する（Ｆ４０６）。ＳＤ  Ｑｕｅｒｙ信号がワイルドカードを指定したものであった場合、ＳＤ  Ｒｅｓｐｏｎｓｅ信号には、ＳＴＡ−Ａが提供するサービスを示す情報が含まれている。また、ＳＤ  Ｑｕｅｒｙ信号が特定のサービスを指定したものであった場合、ＳＤ  Ｒｅｓｐｏｎｓｅ信号には、ＳＴＡ−Ａが当該特定のサービスを提供可能であるか否かを示す情報が含まれている。ＳＴＡ−Ａは、ＳＤ  Ｒｅｓｐｏｎｓｅ信号を送信する時に、ＳＤ  Ｑｕｅｒｙ信号を送信したＳＴＡ−ＢのＭＡＣアドレス等の識別情報を自身の記憶部に保持する。
【００７３】
ＳＴＡ−Ｂは、ＳＤ  Ｒｅｓｐｏｎｓｅ信号の内容を参照し、ユーザの判断もしくは通信装置の自律的な判断により所望のサービスがＳＴＡ−Ａで提供可能であることが確認された場合、ＳＴＡ−ＡのＭＡＣアドレス等の識別情報を記憶部へ保持する。そして、ユーザの指示に応じて、所望のサービスのサービス開始指示を行う（Ｆ４０７）。
【００７４】
なお、ここではＰｒｏｂｅ  Ｒｅｑｕｅｓｔ信号により通信装置の検索を行った後に、ＳＤ  Ｑｕｅｒｙ信号により提供サービスの問い合わせを行う例について説明した。しかし、Ｐｒｏｂｅ  Ｒｅｑｕｅｓｔ信号に、アプリケーションレイヤのサービスに関連する追加情報要素を付与し、Ｐｒｏｂｅ  Ｒｅｑｕｅｓｔ信号のみで相手装置のサービスも含めて検索しても良い。この場合は、ＳＤ  Ｑｕｅｒｙ信号およびＳＤ  Ｒｅｓｐｏｎｓｅ信号のやり取りは行わなくても良い。ただし、お互いのＭＡＣアドレス等の識別情報の保持は同様に実施する。
【００７５】
ＳＴＡ−Ｂは、サービス開始指示Ｆ４０７に応じて、無線ＬＡＮの接続処理を実施する。本実施例においては、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ規格に基づいた無線ＬＡＮ接続処理を実施するため、Ｇｒｏｕｐ  Ｆｏｒｍａｔｉｏｎ処理を実施する（Ｆ４０８）。本処理は、前述のＧＯ  Ｎｅｇｏｔｉａｔｉｏｎ制御部２０３により制御される。Ｇｒｏｕｐ  Ｆｏｒｍａｔｉｏｎ処理とは、前述の通り、２台の通信装置のどちらがＧＯになり、どちらがＣＬになるかを決定する役割決定の処理である。この役割決定処理の結果、ＳＴＡ−ＡがＧＯとして動作を開始し（Ｆ４０９）、ＳＴＡ−ＢがＣＬとして動作を開始するとする（Ｆ４１０）。
【００７６】
したがって、ＳＴＡ−ＡをＷＰＳレジストラとしＳＴＡ−ＢをＷＰＳエンローリとしてＷＰＳパラメータ交換処理が実行される（Ｆ４１１）。
【００７７】
引き続き、ＳＴＡ−ＡをＤＨＣＰサーバとして、ＳＴＡ―ＢをＤＨＣＰクライアントとしてＩＰアドレスの設定処理を実行する（Ｆ４１２）。
【００７８】
Ｆ４０５、Ｆ４０６におけるサービスディスカバリ処理によって、ＳＴＡ−Ａのサービス情報はＳＴＡ−Ｂに通知されている。そこで、アプリケーションレイヤによるサービス処理を実施するのに必要なＳＴＡ−ＡのＩＰアドレスを、ＳＴＡ−ＡはＳＴＡ−Ｂへ通知する。ここでは、ＳＤ  Ｑｕｅｒｙ信号およびＳＤ  Ｒｅｓｐｏｎｓｅ信号のやり取りによって、ＳＴＡ−ＡはＩＰアドレスをＳＴＡ−Ｂへ通知する。
【００７９】
すなわち、ＳＴＡ−ＢがＳＤ  Ｑｕｅｒｙ信号をＳＴＡ−Ａに送信する（Ｆ６０１）。それに応答して、ＳＴＡ−ＡはＳＤ  Ｒｅｓｐｏｎｓｅ信号をＳＴＡ−Ｂに送信する（Ｆ６０２）。尚、Ｆ６０１において送信されるＳＤ  Ｑｕｅｒｙ信号は、Ｆ４０５において送信されるＳＤ  Ｑｕｅｒｙ信号と内容が異なる。Ｆ４０５において送信されるＳＤ  Ｑｕｅｒｙ信号は、ＳＴＡ−Ａが提供するサービスを問い合わせるものであったのに対して、Ｆ６０１のＳＤ  Ｑｕｅｒｙ信号は、ＳＴＡ−ＡのＩＰアドレスを問い合わせるものとなっている。即ち、６０１において送信されるＳＤ  Ｑｕｅｒｙ信号とＦ４０５において送信されるＳＤ  Ｑｕｅｒｙ信号とでは、問い合わせる情報の内容が異なっている。
【００８０】
ここで、ＩＰアドレスの通知処理を行う理由は、ＤＬＮＡやＢｏｎｊｏｕｒなどのアプリケーションレイヤのプロトコルがＴＣＰ／ＩＰ上で動作しており、アプリケーションレイヤでのサービス実施のためにはＩＰアドレスが必要不可欠だからである。
【００８１】
Ｆ６０１，Ｆ６０１のＩＰアドレス通知処理により、ＳＴＡ−Ｂはサービス処理に必要なＳＴＡ−ＡのＩＰアドレスを確認できる。そのため、ＴＣＰ／ＩＰ上における機器検索機能（例えばＵＰｎＰやＢｏｎｊｏｕｒなど）を再度実施することなく、アプリケーションレイヤにおけるサービスを実施することが可能となる（Ｆ４１５）。
【００８２】
本実施例２においてはＩＰアドレスの通知にＳＤ  Ｑｕｅｒｙ信号とＳＤ  Ｒｅｓｐｏｎｓｅ信号とを用いたが、それ以外の信号（ＩＥＥＥ８０２．１１規格で定められたアクションフレームなど）を用いてもよい。ＳＴＡ−ＡからＳＴＡ−ＢへＩＰアドレスを通知できるものであればよい。図６のシーケンス図は信号種別を限定する意図はない。
【００８３】
なお、本シーケンス図では各種信号においてサービス利用装置が要求信号を送信して、その応答をサービス提供装置から受領する例を記載した。しかし、サービス提供装置から要求信号を送信して、その応答をサービス利用装置から受領しても良いし、信号の種類によってそれぞれの要求信号の送信装置を変えても良い。
【００８４】
図７は、本実施例の通信装置の動作を示すフローチャートである。本フローチャートの各ステップは、記憶部１０３に記憶されたプログラムを制御部１０２が実行することによって処理される。図７のフローチャートにおいて、実施例１の図５で説明したフローチャートと同一の処理については同一の番号を付与してある。
【００８５】
通信装置は、ユーザの指示により処理が開始されると、自装置のサービス処理での役割を判定する（Ｓ５０１）。自装置がサービス利用装置である場合は、サービス提供装置を探すため、サービス検索を実施する（Ｓ５０２）。該サービス検索処理は、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ規格に定められたサービスディスカバリ処理を用いる。なお、サービスディスカバリ処理とは、図４で説明したように、Ｐｒｏｂｅ  Ｒｅｑｕｅｓｔ信号によるデバイスディスカバリ処理を行い、前記デバイスディスカバリ処理で検出された通信装置に向けて、サービス問い合わせを行うものである。
【００８６】
通信装置は、前記サービス検索処理において、所望のサービスを提供しているサービス提供装置が検出できたか否かを判定する（Ｓ５０３）。
【００８７】
Ｓ５０３における判定処理において、相手装置が存在しない場合もしくは、相手装置となる通信装置は検出できたものの、所望のサービスを提供していない場合は、通信装置は、エラー処理を実施して処理を中止する（Ｓ５１０）。
【００８８】
一方、ステップＳ５０３において、相手装置を検出でき、なおかつ所望のサービスを提供していることが判明した場合は、通信装置は、サービス処理の準備処理を開始する（Ｓ５０４）。本ステップにおいて、通信装置は通信相手となる相手装置のＭＡＣアドレスを識別情報として記憶部１０３に記憶しておく。
【００８９】
続いて、アプリケーションレイヤにおけるサービス処理を実行するために、先ず無線ＬＡＮレイヤでの接続処理を実施する。具体的には、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ規格に基づいた接続処理のため、通信装置は、Ｇｒｏｕｐ  Ｆｏｒｍａｔｉｏｎと言われる役割決定処理を実施する（Ｓ５０５）。ここで決定する役割とは、前述したＧＯかＣＬかの役割である。
【００９０】
前記役割が決定した後、通信装置は、無線ＬＡＮパラメータおよびＩＰアドレスを設定するパラメータ設定処理を実施する（Ｓ５０６）。尚、本フローチャートではＳ５０６を一つのステップとして記載したが、具体的には、図２の説明で述べた通り、ＷＰＳプロトコルによる無線パラメータ設定処理および、ＤＨＣＰプロトコルによるＩＰアドレス割り当て処理が行われる。即ち、ＧＯとなった装置がＷＰＳレジストラとなり、ＣＬとなった装置がＷＰＳエンローリとなり、ＧＯの保有する無線ＬＡＮ接続に必要なパラメータを転送する。引き続きＧＯがＤＨＣＰサーバとなり、ＣＬがＤＨＣＰクライアントとなりＩＰアドレスの割り当て処理を実施する。
【００９１】
ここで、自装置および相手装置にＩＰアドレスが割り当てられたため、サービス検索処理で入手したＭＡＣアドレスについて、ＩＰアドレスと対応付ける必要がある。ＤＬＮＡ、Ｂｏｎｊｏｕｒ，ＩＰＰなどのアプリケーションレイヤのプロトコルは、ＴＣＰ／ＩＰ上で動作しているため、アプリケーションレイヤのサービスを実行するためにはＩＰアドレスが必要不可欠だからである。
【００９２】
したがって、ＩＥＥＥ８０２．１１に定められたアクションフレーム等を用いて、サービス提供装置とサービス利用装置の間でお互いの装置のＩＰアドレスの通知処理を実施する（Ｓ７０１）。具体的には、Ｓ５０２で実施したのと同様のＳＤ  Ｑｕｅｒｙ信号とＳＤ  Ｒｅｓｐｏｎｓｅ信号のやり取りによってＩＰアドレスを通知しあう。本説明ではアクションフレームを例として挙げたが、それ以外のパケットを用いる方法でもかまわない。
【００９３】
Ｓ７０１における通知処理の完了後、通信装置は、ステップＳ５０４において記憶した識別情報をＭＡＣアドレスからＩＰアドレスに変更する付け替え処理を実施する（Ｓ５０８）。この付け替え処理により、サービス実施に必要な情報が確定したため、通信装置はサービス処理を行うことが可能となる（Ｓ５０９）。
【００９４】
一方、Ｓ５０１において、自装置がサービス提供装置であると判定された場合は、通信装置は速やかにサービスを開始する（Ｓ５１１）。具体的には自装置が提供している、もしくは提供予定のアプリケーションレイヤでのサービス情報についてＵＰｎＰやＢｏｎｊｏｕｒなどで報知する。また、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ規格で定められたサービスディスカバリ処理で検索された場合に応答するための情報設定を行う。
【００９５】
通信装置は、サービスを開始した後、サービス利用装置に検出されることを待ちうける（Ｓ５１２）。サービス利用装置としての相手装置から検出された場合は、先に説明したサービス利用装置と同様に、ステップＳ５０５からステップＳ５０９までの処理を実施する。
【００９６】
なお、サービス利用装置から検出されない場合は、されるまで待ちうける。ここでは所定の時間でタイムアウトとして処理をエラー終了しても良い。
【００９７】
なお、本フローチャート図では各種信号においてサービス利用装置が要求信号を送信して、その応答をサービス提供装置から受領する例を記載したが。しかし、サービス提供装置から要求信号を送信して、その応答をサービス利用装置から受領しても良いし、信号の種類によってそれぞれの要求信号の送信装置を変えても良い。
【００９８】
以上のように、本実施例によれば、無線ＬＡＮ接続完了後に改めてＵＰｎＰもしくはＢｏｎｊｏｕｒ等のプロトコルによる再検索をすることがなくなり、処理の負荷が減る。そして無線ＬＡＮ接続前に実施するサービス検索処理によって通信相手を決定することができ、サービス実施までの時間を短縮することが可能となり、サービスをより効率的に利用することができる。さらに、ＩＰアドレスの通知を一般的なＳＤ  Ｑｕｅｒｙ／ＳＤ  Ｒｅｓｐｏｎｓｅ信号などの交換で実施することで、特別なプロトコルの実装が不要となるため、装置の処理負荷の増加を防ぎ、サービスを更に効率的に実行することが可能となる。
【００９９】
［実施例３］
実施例１および実施例２においては、無線ＬＡＮレイヤでの接続を実施する前に、Ｆ４０５やＦ４０６の処理によりサービスディスカバリを実施する例について説明した。本実施例３では、既に無線ＬＡＮレイヤにおいて接続済みの場合について説明する。なお、各装置の構成は実施例１および２と同様に図１および図２に示した通りであり、システム構成は図３の通りであるため、これらの説明は省略する。
【０１００】
図８は、実施例３におけるＳＴＡ−ＡとＳＴＡ−Ｂとの間の通信を示すシーケンス図である。図８は、無線ＬＡＮの接続が完了した後に、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ規格に定められたサービスディスカバリによるサービス検索を実施し、所望の通信装置が存在する場合に、サービス処理を行う場合の通信装置間の処理を示している。
【０１０１】
まず、ＳＴＡ−ＡとＳＴＡ−Ｂにおいて、無線ＬＡＮ接続をユーザの指示により開始する（Ｆ８０１、Ｆ８０２）。
【０１０２】
ＳＴＡ−Ｂは、通信相手となる機器を検索するために、Ｐｒｏｂｅ  Ｒｅｑｕｅｓｔ信号をブロードキャスト送信する（Ｆ８０３）。
【０１０３】
ＳＴＡ−Ａは前記Ｐｒｏｂｅ  Ｒｅｑｕｅｓｔ信号を受信すると、Ｐｒｏｂｅ  Ｒｅｓｐｏｎｓｅ信号をＳＴＡ―Ｂへ返信する（Ｆ８０４）。ＳＴＡ−Ｂは、前記Ｐｒｏｂｅ  Ｒｅｓｐｏｎｓｅ信号を受信することで、通信相手となる候補の装置として、ＳＴＡ−Ａが存在することを認識できる。
【０１０４】
したがって、ＳＴＡ−ＡとＳＴＡ−Ｂとの間で無線ＬＡＮ接続処理を実施する。本実施例においては、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ規格に基づいた無線ＬＡＮ接続処理を実施するため、ＳＴＡ−ＡとＳＴＡ−Ｂは、Ｇｒｏｕｐ  Ｆｏｒｍａｔｉｏｎ処理を実施する（Ｆ８０５）。本処理は、前述のＧＯ  Ｎｅｇｏｔｉａｔｉｏｎ制御部２０３により制御される。Ｇｒｏｕｐ  Ｆｏｒｍａｔｉｏｎ処理とは、前述の通り、２台の通信装置のどちらがＧＯになり、どちらがＣＬになるかを決定する役割決定の処理である。
【０１０５】
前記役割決定処理の結果、ＳＴＡ−ＡがＧＯとして動作を開始し（Ｆ８０６）、ＳＴＡ−ＢがＣＬとして動作を開始する（Ｆ８０７）。
【０１０６】
したがって、ＳＴＡ−ＡをＷＰＳレジストラとしＳＴＡ−ＢをＷＰＳエンローリとしてＷＰＳパラメータ交換処理が実行される（Ｆ８０８）。
【０１０７】
引き続き、ＳＴＡ−ＡをＤＨＣＰサーバとして、ＳＴＡ―ＢをＤＨＣＰクライアントとしてアドレス設定処理を実行する（Ｆ８０９）。
【０１０８】
無線ＬＡＮ接続が完了した後、サービス提供装置であるＳＴＡ−Ａは、ユーザの指示により、サービス提供を開始する（Ｆ８１０）。一方、サービス利用装置であるＳＴＡ−Ｂは、ユーザの指示により、サービス提供装置を探すために、サービス検索処理を開始する（Ｆ８１１）。
【０１０９】
前記サービス検索処理の指示を受けたＳＴＡ−Ｂは、ユーザが所望とするサービスをＳＴＡ−Ａが提供できるかを調べるために、ＳＤ  Ｑｕｅｒｙ信号を送信する（Ｆ８１２）。ＳＤ  Ｑｕｅｒｙ信号とは、前述の通り、送信先の通信装置が所望のサービスを提供しているか否かを問い合わせるための問い合わせ信号である。ＳＤ  Ｑｕｅｒｙ信号は全サービスを検索するためのワイルドカードを指定しても良いし、特定のサービスを指定してもよい。
【０１１０】
ＳＤ  Ｑｕｅｒｙ信号を受信したＳＴＡ−Ａは、その応答としてＳＤ  Ｒｅｓｐｏｎｓｅ信号を送信する（Ｆ８１３）。ＳＤ  Ｑｕｅｒｙ信号がワイルドカードを指定したものであった場合、ＳＤ  Ｒｅｓｐｏｎｓｅ信号には、ＳＴＡ−Ａが提供するサービスを示す情報が含まれている。また、ＳＤ  Ｑｕｅｒｙ信号が特定のサービスを指定したものであった場合、ＳＤ  Ｒｅｓｐｏｎｓｅ信号には、ＳＴＡ−Ａが当該特定のサービスを提供可能であるか否かを示す情報が含まれている。ＳＴＡ−Ｂは、ＳＤ  Ｒｅｓｐｏｎｓｅ信号の内容を参照し、ユーザの判断もしくは通信装置の自律的な判断により所望のサービスがＳＴＡ−Ａで提供可能であることが確認された場合、ユーザの指示に応じて、サービス開始指示を行う（Ｆ８１４）。
【０１１１】
Ｆ８１２、Ｆ８１３におけるサービスディスカバリ処理によってお互いのデバイスのサービス情報は交換されているため、実際のアプリケーションレイヤによるサービス処理を実施することが可能となる（Ｆ８１５）。  なお、本シーケンス図では各種信号においてサービス利用装置が要求信号を送信して、その応答をサービス提供装置から受領する例を記載した。しかし、サービス提供装置から要求信号を送信して、その応答をサービス利用装置から受領しても良いし、信号の種類によってそれぞれの要求信号の送信装置を変えても良い。
【０１１２】
本実施例３においては既にサービスディスカバリ処理時点で無線ＬＡＮによる接続処理も完了しており、ＩＰアドレスが判明しているため、実施例１および実施例２とは処理が異なる。
【０１１３】
本実施例３の説明においては、無線ＬＡＮ接続のみを単独で実施した後に、アプリケーションレイヤのサービス検索、処理実行を行う例について説明した。しかし、あらかじめ実施例１または実施例２に示したアプリケーションレイヤでのサービス実行を実施した後に、無線ＬＡＮ接続を保持したまま、別のサービス検索、実行を行う場合にも適用可能である。例えば、ＳＴＡ−ＢからＳＴＡ−Ａにメタデータファイルを送信した後に引き続き、動画像ストリーミング処理を行う場合などが挙げられる。
【０１１４】
図９は、本実施例の通信装置の動作を示すフローチャートである。本フローチャートの各ステップは、記憶部１０３に記憶されたプログラムを制御部１０２が実行することによって処理される。
【０１１５】
まず通信装置は無線ＬＡＮ接続を開始するために、相手装置を検出したか否かを判定する（Ｓ９０１）。ある所定の時間内で検出されない場合は、エラー終了をする（Ｓ９１１）。
【０１１６】
ステップＳ９０１において、相手装置を検出した場合は、先ず無線ＬＡＮ接続を実施する。ここではＷｉ−Ｆｉ  Ｄｉｒｅｃｔ仕様に基づいたＧｒｏｕｐ  Ｆｏｒｍａｔｉｏｎと呼ばれる役割決定の処理を実施する（Ｓ９０２）。
【０１１７】
ステップＳ９０２により通信装置の役割が決定した後、無線ＬＡＮパラメータおよびＩＰアドレスを設定するパラメータ設定処理を実施する（Ｓ９０３）。本フローチャートでは一つのステップとして記載したが、具体的には、図２の説明で述べた通り、ＷＰＳプロトコルによる無線パラメータ設定処理および、ＤＨＣＰプロトコルによるＩＰアドレス割り当て処理が実行される。具体的には、ＧＯとなった装置がＷＰＳレジストラとなり、ＣＬとなった装置がＷＰＳエンローリとなり、ＧＯの保有する無線ＬＡＮ接続に必要なパラメータを転送する。引き続き、ＧＯがＤＨＣＰサーバとなり、ＣＬがＤＨＣＰクライアントとなりＩＰアドレスの割り当て処理を実施する。以上で無線ＬＡＮレイヤでの接続処理が完了する。
【０１１８】
引き続きサービス処理を実施する。まずはユーザからの指示によりサービス開始要求がされたかどうかを判定する（Ｓ９０４）。サービス開始要求がない場合は、前記要求がされるまで待ちうける。もしくは、所定の時間待ちうけても要求がない場合は、タイムアウトエラーとして処理を中止しても良い。
【０１１９】
さて、ステップＳ９０４にてサービス開始要求がなされた場合は、自装置のサービス役割を判定する（Ｓ９０５）。ここでのサービス役割とは、アプリケーションレイヤにおける各種サービスの提供装置になるのか利用装置になるのかの役割である。
【０１２０】
ステップＳ９０５のサービス役割判定において、自装置がサービス提供装置であると判定された場合について説明する。自装置がサービス提供装置である場合は、サービス利用装置となる相手装置からのＳＤ  Ｑｕｅｒｙ信号を待ちうける（Ｓ９０６）。相手装置からのＳＤ  Ｑｕｅｒｙが所定の時間内に到着しない場合はエラー終了とする。なお、時間制限を設けずに、ユーザの指示による明示的なキャンセルがない限り待ち続けるようにしてもよい。
【０１２１】
Ｓ９０６においてＳＤ  Ｑｕｅｒｙを受信した場合、対応したＳＤ  Ｒｅｓｐｏｎｓｅ信号を送信する（Ｓ９０７）。
【０１２２】
Ｓ９０７においてサービスディスカバリ処理の応答としてＳＤ  Ｒｅｓｐｏｎｓｅ信号を送信した後は、相手装置のＩＰアドレスを判定する（Ｓ９０８）。ここでのＩＰアドレスの判定処理とは、自装置がＧＯの場合は、自ら決定した自装置のＩＰアドレスと、自装置がＤＨＣＰサーバとして割り当てた相手装置のＩＰアドレスを記憶することである。また、自装置がＣＬの場合は、相手装置から受領した自装置のＩＰアドレスと、その相手装置のＩＰアドレスとを記憶する。
【０１２３】
一方Ｓ９０５において自装置がサービス利用装置である場合について説明する。サービス利用装置となった自装置は、サービス提供元となる相手装置を検索するため、ＳＤ  Ｑｕｅｒｙ信号を送信する（Ｓ９１２）。前記ＳＤ  Ｑｕｅｒｙ信号を送信後、相手装置からＳＤ  Ｒｅｓｐｏｎｓｅを受信する（Ｓ９１３）。なお、Ｓ９１３においてＳＤ  Ｒｅｓｐｏｎｓｅを受信しない場合は、再度ＳＤ  Ｑｕｅｒｙを送信するところからやり直す。なお所定の時間たってもレスポンスを受信しないか、サービスが対応していない場合は、エラー終了としてもよい。
【０１２４】
本実施例３の説明においては、無線ＬＡＮ接続のみを単独で実施した後に、アプリケーションレイヤのサービス検索、処理実行を行う例について説明した。しかし、あらかじめ実施例１または実施例２に示したアプリケーションレイヤでのサービス実行を実施した後に、無線ＬＡＮ接続を保持したまま、別のサービス検索、実行を行う場合にも適用可能である。例えば、ＳＴＡ−ＢからＳＴＡ−Ａにメタデータファイルを送信した後に引き続き、動画像ストリーミング処理を行う場合などが挙げられる。
【０１２５】
以上のように、本実施例３によれば、既に無線ＬＡＮレイヤにおいて接続済みの場合に、Ｗｉ−ＦＩ  Ｄｉｒｅｃｔ規格のサービスディスカバリ処理を実施することによって、アプリケーションレイヤのサービスを利用することができる。つまり、複雑な独自プロトコルを用いることなく、アプリケーションレイヤのサービスを利用することができるので、サービスをより効率的に利用することができるようになる。
【０１２６】
［その他の実施形態］
上記の各実施例は、本発明を実施するための一例を示すものであり、本発明の趣旨を逸脱しない限り種々の変更が可能である。また、上記実施例１〜３は組み合わせることができる。また、各通信装置が、実施例１〜３のどれに従って動作するかをユーザが任意に選択できるようにしてもよい。
【０１２７】
上記実施例では、ＤＨＣＰによってＩＰアドレスが割り当てられた後、アプリケーションレイヤのサービスを利用するために必要な情報として、ＩＰアドレスを問い合わせたり通知する構成について説明した。しかし、アプリケーションレイヤのサービスを利用するために必要な情報としては、ＩＰアドレスに限らず、その他の情報であってもよい。例えば、サービスにアクセスするための宛先となるＵＲＬや、ＴＣＰ／ＩＰのポート番号などの情報であってもよい。
【０１２８】
尚、上記実施例の通信装置は、デジタルカメラやプリンタ等に限らない。ＰＣやタブレット端末であってもよく、携帯電話やスマートフォン等のモバイル端末であってもよい。また、複写機やスキャナ、ＦＡＸ、複合機等の画像処理装置、テレビやレコーダー等のデジタル家電であってもよい。
【０１２９】
また、上記実施形態はＩＥＥＥ８０２．１１準拠の無線ＬＡＮを例に説明した。しかしながら、本発明は、ワイヤレスＵＳＢ、ＭＢＯＡ、Ｂｌｕｅｔｏｏｔｈ（登録商標）、ＵＷＢ、ＺｉｇＢｅｅ（登録商標）等の他の無線通信において実施してもよい。また、有線ＬＡＮ等の有線通信媒体において実施してもよい。ここで、ＭＢＯＡは、Ｍｕｌｔｉ  Ｂａｎｄ  ＯＦＤＭ  Ａｌｌｉａｎｃｅの略である。また、ＵＷＢは、ワイヤレスＵＳＢ、ワイヤレス１３９４、ＷＩＮＥＴなどが含まれる。
【０１３０】
更に、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）をネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム又は装置のコンピュータ（又はＣＰＵやＭＰＵ等）がプログラムコードを読み出して実行する処理である。この場合、そのプログラム、及び該プログラムを記憶した記憶媒体は本発明を構成することになる。
【符号の説明】
【０１３１】
１０２  制御部
１０３  記憶部
１０４  無線部
１０５  表示部
【図１】
2014160319.tif 000003
【図２】
2014160319.tif 000004
【図３】
2014160319.tif 000005
【図４】
2014160319.tif 000006
【図５】
2014160319.tif 000007
【図６】
2014160319.tif 000008
【図７】
2014160319.tif 000009
【図８】
2014160319.tif 000010
【図９】
2014160319.tif 000011