(57)【要約】【課題】  本発明は、所望のサービスを実行可能な装置を適切に検出できるようにすることを目的とする。【解決手段】  対向機器のサービスディスカバリ機能のサポート状況に応じて、他のサービスディスカバリ機能の実施可否を判断する。これにより、サービス検索の応答を得る可能性が向上すると共に処理を減らすことができ、サービス開始までの時間を短縮することが可能となる。【選択図】  図４
2014160961.tif 000002
【特許請求の範囲】
【請求項１】
通信装置であって、
他の通信装置と無線ネットワークを構築後に第１の通信層における通信に基づいて、他の通信装置の実行可能なサービスを検出する第１の検出手段と、
前記第１の検出手段によって前記他の通信装置が所定のサービスが実行可能であることを検出できなかった場合、前記第１の通信層と異なる第２の通信層における前記無線ネットワークを介した通信に基づいて、前記他の通信装置の実行可能なサービスを検出する第２の検出手段とを有することを特徴とする通信装置。
【請求項２】
前記第２の検出手段は、前記第１の通信層において送信したサービス検索信号に対する応答が他の通信装置から検出できない場合、前記第２の通信層における通信に基づいて、当該他の通信装置の実行可能なサービスを検出することを特徴とする請求項１に記載の通信装置。
【請求項３】
前記第１の検出手段は、前記第１の通信層において送信したサービス検索信号に対する応答に含まれる情報に基づいて、前記他の通信装置の実行可能なサービスを検出することを特徴とする請求項１または２に記載の通信装置。
【請求項４】
前記第２の検出手段は、前記第２の通信層において送信したサービス検索信号に対する応答に含まれる情報に基づいて、前記他の通信装置の実行可能なサービスを検出することを特徴とする請求項１乃至３何れか１項に記載の通信装置。
【請求項５】
前記第１の検出手段または前記第２の検出手段により、前記他の通信装置が所定のサービスが実行可能であることを検出できた場合、前記他の通信装置と前記所定のサービスを実行することを特徴とする請求項１乃至４何れか１項に記載の通信装置。
【請求項６】
前記第１の検出手段により前記他の通信装置が前記所定のサービスが実行可能であることを検出した場合、前記第２の検出手段による検出を行わないことを特徴とする請求項１乃至５何れか１項に記載の通信装置。
【請求項７】
前記第１の検出手段および前記第２の検出手段により前記他の通信装置が前記所定のサービスが実行可能でることを検出できなかった場合、前記無線ネットワークから離脱することを特徴とする請求項１乃至６何れか１項に記載の通信装置。
【請求項８】
前記第１の検出手段および前記第２の検出手段により前記他の通信装置が前記所定のサービスが実行可能でることを検出できなかった場合、別の通信装置と無線ネットワークを構築することを特徴とする請求項１乃至７何れか１項に記載の通信装置。
【請求項９】
通信装置の制御方法であって、
他の通信装置と無線ネットワークを構築後に第１の通信層における通信に基づいて、他の通信装置の実行可能なサービスを検出する第１の検出工程と、
前記第１の検出手段によって前記他の通信装置が所定のサービスが実行可能であることを検出できなかった場合、前記第１の通信層と異なる第２の通信層における前記無線ネットワークを介した通信に基づいて、前記他の通信装置の実行可能なサービスを検出する第２の検出工程とを有することを特徴とする通信装置の制御方法。
【請求項１０】
コンピュータに請求項８に記載の制御方法を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信装置、通信装置の制御方法、プログラムに関する。
【背景技術】
【０００２】
近年、デジタルカメラやプリンタなどの電子機器に無線ＬＡＮステーション機能を搭載し、電子機器を通信装置として、無線ＬＡＮに接続して使用するケースが増えてきている。例えば特許文献１には、デジタルカメラに無線ＬＡＮ機能を搭載し、画像共有を容易にする方法が開示されている。
【０００３】
また、Ｗｉ−Ｆｉ  ＡｌｌｉａｎｃｅによりＷｉ−Ｆｉ  Ｄｉｒｅｃｔ（登録商標）という規格が制定された。Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔでは、各電子機器が無線ＬＡＮアクセスポイントまたは無線ＬＡＮステーションのいずれとして動作するかを決定するプロトコルが規定されている。前記プロトコルを実行することにより、電子機器のどちらが無線ＬＡＮアクセスポイントになり、どちらが無線ＬＡＮステーションになるかを自動的に決定できるので、ユーザの利便性が向上している。
【０００４】
Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔでは、オプション機能として上位のアプリケーションがサポートしているサービス情報を広告・検索する機能（サービスディスカバリ機能）もまた規定されている。本サービスディスカバリ機能によれば、接続処理実行前に、接続相手となる電子機器の保持するサービス情報を知ることができ、ユーザの利便性が向上する。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１１−３５７６８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔではサービスディスカバリがオプション機能であるため、同機能をサポートしていない機器からはサービス検索の応答を受け取ることができない。そのため、サービスディスカバリを用いるだけでは、所望のサービスを実行可能であるにも関わらずサービスディスカバリに対応していない他の装置を検索することができない。
本発明は、所望のサービスを実行可能な装置を適切に検出できるようにすることを目的とする。
【課題を解決するための手段】
【０００７】
上述の課題を解決する手段として、他の通信装置と無線ネットワークを構築後に第１の通信層における通信に基づいて、他の通信装置の実行可能なサービスを検出する第１の検出手段と、前記第１の検出手段によって前記他の通信装置が所定のサービスが実行可能であることを検出できなかった場合、前記第１の通信層と異なる第２の通信層における前記無線ネットワークを介した通信に基づいて、前記他の通信装置の実行可能なサービスを検出する第２の検出手段とを有することを特徴とする通信装置を提供する。
【発明の効果】
【０００８】
本発明によれば、所望のサービスを実行可能な装置を適切に検出できるようになる。
【図面の簡単な説明】
【０００９】
【図１】装置のハードウェア構成を示すブロック図である。
【図２】装置のソフトウェア機能構成を示すブロック図である。
【図３】本実施形態におけるネットワーク構成の一例を示す図である。
【図４】実施例１における装置の動作フローチャートである。
【図５】実施例１における動作シーケンス図である。
【図６】実施例１における動作シーケンス図である。
【図７】実施例２における装置の動作フロー図である。
【図８】実施例２における動作シーケンス図である。
【図９】実施例２における動作シーケンス図である。
【図１０】実施例３における動作シーケンス図である。
【図１１】実施例３における動作シーケンス図である。
【図１２】実施例３における本実施形態におけるネットワーク構成の一例を示す図である。
【図１３】実施例３における実施例１における装置の動作フローチャートである。
【発明を実施するための形態】
【００１０】
（実施例１）
以下、本実施形態に係る通信装置について、図面を参照しながら詳細に説明する。以下では、ＩＥＥＥ８０２．１１シリーズに準拠した無線ＬＡＮシステムを用いた例について説明するが、通信形態は必ずしもＩＥＥＥ８０２．１１準拠の無線ＬＡＮには限らない。
【００１１】
本実施形態に好適な事例におけるハードウェア構成について説明する。後述の各装置の構成の一例を表すブロック図１に示す。図１において、１０１は装置全体を示す。１０２は、記憶部１０３に記憶される制御プログラムを実行することにより装置全体を制御する制御部である。
【００１２】
１０３は制御部１０２が実行する制御プログラムと、通信パラメータ等の各種情報を記憶する記憶部である。後述する各種動作は、記憶部１０３に記憶された制御プログラムを制御部１０２が実行することにより行われる。
【００１３】
１０４はＩＥＥＥ８０２．１１シリーズに準拠した無線ＬＡＮ通信を行うための無線部である。１０５は各種表示を行う表示部でありＬＣＤやＬＥＤのように視覚で認知可能な情報の出力、あるいはスピーカなどの音出力が可能な機能を有する。表示部１０５は視覚情報および音情報の少なくともどちらか一方を出力する機能を備えるものである。
【００１４】
１０７はアンテナ制御部、そして１０８はアンテナである。１０９は、ユーザが各種入力等を行い、通信装置を操作するための操作部である。サービス実行部１１０は、通信機器が提供するアプリケーションレベルのサービス情報を実行する機能を備えている。例えば、本通信機器がプリンタであり、プリントサービスを実行できる場合、サービス実行部１１０は、プリントサービスを実行するためのプリントエンジンなどのハードウェアである。また、例えば、本通信機器がデジタルカメラであり、撮像画像（動画）配信サービスを実行できる場合は、サービス実行部１１０は、撮像機能を実現するための撮像素子、レンズなどのハードウェアである。尚、図１は一例であり、通信装置１０１は図１に示すハードウェア構成以外のハードウェア構成を備えていてもよい。
【００１５】
図２は、後述のフローチャートやシーケンス図に示す処理や通信制御機能を実行するソフトウェア機能ブロックの構成の一例を表すブロック図である。２０１はソフトウェア機能ブロック全体を示す。２０２はＤｉｓｃｏｖｅｒｙ制御部であり、通信相手となる通信装置を検索する検索処理を実行する。
【００１６】
２０３はＷｉ−Ｆｉ  Ｄｉｒｅｃｔ制御部である。Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔプロトコル仕様に基づいた制御を行う。Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔにおいては、無線ＬＡＮアクセスポイント機能を実施する通信装置をＰ２Ｐグループオーナー（以下、ＧＯ）、無線ＬＡＮステーション機能を実施する通信装置をＰ２Ｐクライアント（以下、ＣＬ）と称する。これらの役割はＧＯ  Ｎｅｇｏｔｉａｔｉｏｎのプロトコルで決定され、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ仕様で規定されている。Ｗｉ−Ｆｉ  ＤｉｒｅｃｔではＧＯの開催したネットワークをＰ２Ｐグループと称する。本明細書でもネットワークのことをＰ２Ｐグループと記載する場合もある。どちらも同一の意味で記載されている。
【００１７】
なお、本明細書では、Ｐ２Ｐグループオーナー（ＧＯ）、Ｐ２Ｐクライアント（ＣＬ）および役割が未決定の通信装置群をまとめて、Ｐ２Ｐデバイスと称す。Ｐ２Ｐデバイスは、無線ネットワークに参加すること（ＣＬ機能）も無線ネットワークを構築すること（ＧＯ機能）もＷｉ−Ｆｉ  Ｄｉｒｅｃｔのプロトコルを実施して自動的に決定する。そして、決定したいずれかの機能で動作し、無線接続、無線通信する。また、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔを用いて装置間で接続する場合、ＧＯからＣＬに通信パラメータを提供し、該通信パラメータを用いて接続する。通信パラメータは、ＩＥＥＥ８０２．１１規格に準拠して無線通信するための各種無線通信パラメータが含まれる。つまり、通信パラメータは、ネットワーク識別子としてのＳＳＩＤ、暗号方式、暗号鍵、認証方式、認証鍵等の無線ＬＡＮ通信を行うために必要な無線通信パラメータが含まれる。また、ＩＰ層での通信を行うためのＩＰアドレス等も含む。
【００１８】
２０４はサービスディスカバリ制御部であり、サービスディスカバリ機能をつかさどる。サービスディスカバリ機能は、ＩＥＥＥ８０２．１１ｕで定められたアクションフレーム（ＧＡＳ  ｆｒａｍｅ）を送受信することにより、相手通信装置とそれぞれが保有するサービス情報をやりとりすることが可能である。なお、ＧＡＳとはＧｅｎｅｒｉｃ  Ａｄｖｅｒｔｉｓｅｍｅｎｔ  Ｓｅｒｖｉｃｅの略である。具体的には他の通信装置の属性や対応するサービスを検索する場合サービス検索信号である「ＳＤ  Ｑｕｅｒｙ」フレーム（ＧＡＳ  Ｉｎｉｔｉａｌ  Ｒｅｑｕｅｓｔ）を送信する。そして、相手装置からＳＤ  Ｑｕｅｒｙに対する応答である「ＳＤ  Ｒｅｓｐｏｎｓｅ」フレームを返答として受信する。もしくは、相手装置からのＳＤ  Ｑｕｅｒｙを受信し、応答としてＳＤ  Ｒｅｓｐｏｎｓｅを送信する。これらのフレームの送受により、他の通信装置の属性や実行可能なサービスの検出を行うことができる。また、他の通信装置に対して自装置が実行可能なサービスを広告することができる。また、送信したＳＤ  Ｑｕｅｒｙの応答が無い場合に他の通信装置のＷｉ−Ｆｉ  Ｄｉｒｅｃｔのオプション機能であるサービスディスカバリ機能に対応しているかを判定することができる。即ち、サービスディスカバリ制御部２０４は、無線通信を行うための通信層において、無線通信可能な範囲に存在する他の通信装置の属性情報を検出するための機器サービス検索を実行する。サービスディスカバリ制御部２０４は、第１の通信層において他の装置の属性の検出処理を行う。なお、本実施形態において第１の通信層は、ＯＳＩ参照モデルにおけるデータリンク層を例にするがこれに限定されるものではない。
【００１９】
なお、ＳＤ  Ｑｕｅｒｙによるサービス検索処理には所望のサービスを指定して該所望のサービスを実行可能な装置から応答を得る検索と、所望のサービスを指定せず他の通信装置が実行可能なサービス全てのサービスの検索とがある。
【００２０】
なお、サービス情報には、サービス通信を相互に実行するために利用するプロトコルに関する情報やサービスの必須機能やオプション機能の対応を示すサービス機能対応情報が含まれることとする。例えば、他の通信装置から受信したサービス情報により、他の通信装置が所定のサービスの実行可否（例えばプリントサービスに対応しているか否か）を判定することできる。また、他の通信装置から受信したサービス情報により、他の通信装置が所定のサービスを行う際のプロトコル（例えば、ＰｉｃｔＢｒｉｄｇｅによるプリントサービスを実行可能か）を判定することができる。また、他の通信装置から受信したサービス情報により、他の通信装置が所定のサービスを行う際のサービス機能対応情報（例えば、プリントサービスにおいて両面印刷対応、カラーあるいは白黒印刷対応、フォーマット印刷対応か）を判定することができる。なおここでの具体例は、発明を限定する意図ではなく、単なる理解を深めるための例示であることは言うまでもない。
【００２１】
２０５はＬ３  Ｓｅｒｖｉｃｅ  Ｄｉｓｃｏｖｅｒｙ制御部であり、ＯＳＩ参照モデルにおけるネットワーク層（レイヤ３）でのサービスディスカバリ機能をつかさどる。サービスディスカバリ機能は、ＵＰｎＰ（登録商標）（Ｕｎｉｖｅｒｓａｌ  Ｐｌｕｇ  ａｎｄ  Ｐｌａｙ）やＢｏｎｊｏｕｒ（登録商標）といった技術を用いることで実行可能である。つまり、Ｌ３  Ｓｅｒｖｉｃｅ  Ｄｉｓｃｏｖｅｒｙ制御部２０５は、サービスディスカバリ制御部２０４が他の通信装置がサービス情報の送受を行う第１の通信層と異なる第２の通信層においてサービス情報の送受を行うことができる。つまり、通信相手装置がＷｉ−Ｆｉ  Ｄｉｒｅｃｔのオプション機能であるサービスディスカバリ機能に対応していない場合であっても、ＵＰｎＰもしくはＢｏｎｊｏｕｒに対応していれば当該通信相手装置とサービス情報の送受を行うことができる。なお、本実施形態では第２の通信層をネットワーク層として説明を行うが、第１の通信層より上位の通信層であればよい。
【００２２】
Ｌ３  Ｓｅｒｖｉｃｅ  Ｄｉｓｃｏｖｅｒｙ制御部２０５は、サービスディスカバリ制御部２０４によるサービス情報の広告・検索と同様に、自装置が提供可能なサービス（処理の種別）を他の通信装置に通知することができる。また、他の通信装置が提供可能なサービス（処理の種別）の取得を行うことができる。なお、サービスディスカバリ制御部２０４が送受するサービス情報とＬ３  Ｓｅｒｖｉｃｅ  Ｄｉｓｃｏｖｅｒｙ制御部２０５によって送受信するサービス情報は同一の内容であってもよいし異なる情報を含めることにしてもよい。
【００２３】
なお、Ｌ３  Ｓｅｒｖｉｃｅ  Ｄｉｓｃｏｖｅｒｙ制御部２０５によるサービス検索処理にも所望のサービスを指定しての検索と、所望のサービスを指定しない検索とが実行できる。  Ｌ３  Ｓｅｒｖｉｃｅ  Ｄｉｓｃｏｖｅｒｙ制御部２０５は、サービス検索処理を実行する場合、第２の通信層において検索信号を送信する。
【００２４】
２０６はパケット受信部、２０７はパケット送信部であり、上位レイヤの通信プロトコルを含むあらゆるパケットの送受信を制御する。２０８はアプリケーションレイヤにおけるサービス提供部である。ここでのアプリケーションレイヤとはＯＳＩ参照モデルにおける第５層以上の上位レイヤにおけるサービス提供するための通信を行う通信層のことをさす。すなわち、サービス提供部２０８は、印刷機能や画像ストリーミング機能や、ファイル転送機能などのサービスを他の通信装置に対して提供するための通信を制御したり、サービス実行部１１０を制御したりする。
【００２５】
２０９はアプリケーションレイヤにおけるサービス利用部である。相手装置からアプリケーションレイヤによる通信により提供されるサービスに係る通信を制御する。すなわち、サービス利用部２０９は、印刷サービス提供装置へ印刷物を送信する機能や、デジタルディスプレイに動画像を送信する機能などを制御したり、サービス実行部１１０を制御したりする。エラー処理部２１０は、サービスが実行できない場合にエラー処理を行う。
【００２６】
なお、全ての機能ブロックはソフトウェアもしくはハードウェア的に相互関係を有するものである。また、上記機能ブロックは一例であり、複数の機能ブロックが１つの機能ブロックを構成するようにしてもよいし、何れかの機能ブロックが更に複数の機能を行うブロックに分かれてもよい。また、上記機能ブロックはハードウェアにより実現されてもよい。
【００２７】
続いて、上述の構成を有する通信装置における動作について説明を行う。図３は、通信装置Ａ３２（以下、ＳＴＡ−Ａ）、通信装置Ｂ３３（以下、ＳＴＡ−Ｂ）とから構成されるネットワークＡ３１（以下、ネットワークＡ）を示した図である。これらの装置は、先に説明した図１、図２の構成を有している。
【００２８】
図４は、サービス利用装置である通信装置の動作フローチャートである。本フローチャート図を用いてサービス検索からサービス利用迄の通信装置の動作フローを説明する。
【００２９】
まず、Ｓｅｒｖｉｃｅ  Ｄｉｓｃｏｖｅｒｙ制御部２０４は、無線ＬＡＮレイヤでのサービス検索処理（サービスディスカバリ）を開始する（Ｓ４０１）。Ｓｅｒｖｉｃｅ  Ｄｉｓｃｏｖｅｒｙ制御部２０４は、ＳＤ  Ｑｕｅｒｙを送信し、ＳＤ  Ｒｅｓｐｏｎｓｅの受信を待機する。即ち、Ｓｅｒｖｉｃｅ  Ｄｉｓｃｏｖｅｒｙ制御部２０４は、第１の通信層における通信に基づいて、他の通信装置の実行可能なサービスを検出する第１の検出処理を実行する。次に、Ｓｅｒｖｉｃｅ  Ｄｉｓｃｏｖｅｒｙ制御部２０４は、サービス検索で所望のサービスを提供可能な他の通信装置が存在するかの判定を行う（Ｓ４０２）。当該判定は、ＳＤ  Ｑｕｅｒｙ対して所望のサービスが実行可能ことを示す応答を受信したか否かに基づいて行われる。なお、Ｓ４０２において、ＳＤ  Ｒｅｓｐｏｎｓｅを一つも受信しない場合は、サービス提供可能であることを示す応答を受信しなかったと判断する。また、Ｓｅｒｖｉｃｅ  Ｄｉｓｃｏｖｅｒｙ制御部２０４は、ＳＤ  Ｒｅｓｐｏｎｓｅに含まれる情報に所望のサービス提供可能でることを示す情報が検出できない場合は、所望のサービス提供が可能な旨の応答を受信しなかったと判断する。なお、Ｓｅｒｖｉｃｅ  Ｄｉｓｃｏｖｅｒｙ制御部２０４が送信したＳＤ  Ｑｕｅｒｙを受信した他の通信装置がオプション機能であるサービスディスカバリ機能（所定の機能）に対応していない場合は当該他の通信装置は応答しない。
【００３０】
Ｓ４０２において所望のサービス提供が可能な旨の応答を受信しなかったと判断した場合、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ制御部２０３は、無線接続処理を実施する（Ｓ４０５）。Ｓ４０５における無線接続処理では、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔの仕様に則り他の通信装置とＰ２Ｐグループを形成し、無線ＬＡＮ層及びＩＰ層での接続を確立する。即ち、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ制御部２０３は、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔの仕様に則り相手装置のスキャン処理、ＧＯかＣＬかの役割決定処理、通信パラメータの共有処理を実行する。
【００３１】
Ｓ４０５では、Ｄｉｓｃｏｖｅｒｙ制御部２０２により周囲の通信装置を検索することが可能である。さらに、検索結果の一覧などからユーザに接続相手を選択させることでサービス提供装置を特定することも可能である。また、それ以外の方法を用いて接続相手を特定しても良い。Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ制御部２０３は、Ｓ４０５における無線接続処理において他の通信装置と無線接続が成功したか否かを判定する（Ｓ４０６）。例えば、無線通信可能な範囲に他の通信装置が存在しない場合、無線接続処理は失敗する。Ｓ４０７において無線接続処理が失敗した場合はＳ４０９に進む。
【００３２】
Ｓ４０６において無線接続処理が成功するとＬ３  Ｓｅｒｖｉｃｅ  ＤＩＳＣＯＶＥＲＹ制御部２０５によりサービス検索を開始する（Ｓ４０７）。Ｌ３  Ｓｅｒｖｉｃｅ  ＤＩＳＣＯＶＥＲＹ制御部２０５は、第１の通信層と異なる第２の通信層における通信に基づいて、他の通信装置の実行可能なサービスを検出する第２の検出処理を実行する。本説明では、Ｌ３  Ｓｅｒｖｉｃｅ  ＤＩＳＣＯＶＥＲＹ制御部２０５は、ＵＰｎＰで規定される検索通信プロトコルＳＳＤＰを用いて第２の通信層におけるサービス検索処理を行うものとする。なお、ＳＳＤＰは、Ｓｉｍｐｌｅ  Ｓｅｒｖｉｃｅ  Ｄｉｓｃｏｖｅｒｙ  Ｐｒｏｔｏｃｏｌの略である。Ｌ３  Ｓｅｒｖｉｃｅ  ＤＩＳＣＯＶＥＲＹ制御部２０５は接続したネットワークに接続する他の通信装置が所望のサービス（例えば、プリントサービス）を提供しているかどうかを確認するため、ＳＳＤＰのＭ−Ｓｅａｒｃｈと呼ばれるサービス検索信号を送付する。  第２の通信層におけるサービス検索の結果により、所望のサービスを提供可能な他の通信装置が存在するかを判定する（Ｓ４０８）。Ｌ３  Ｓｅｒｖｉｃｅ  ＤＩＳＣＯＶＥＲＹ制御部２０５は、Ｍ−Ｓｅａｒｃｈに対する応答の有無および、応答があった場合に利用可能なサービス種別が含まれているかどうかの調査により当該判定を行う。所望のサービスを提供可能な他の通信装置が存在しない場合や無線接続に失敗した場合（Ｓ４０６のいいえ、Ｓ４０８のいいえ）は、エラー処理部２１０は、エラー処理を行う（Ｓ４０９）。なお、エラー処理は、所望のサービス提供可能な装置が存在しないことを表示部１０５に表示し、処理をエラー終了する。
【００３３】
また、サービス利用部２０９は、所望のサービスを提供可能な他の通信装置が存在する場合（Ｓ４０８のはい）は、取得したサービス情報を用いてサービスを開始する（Ｓ４０４）。
【００３４】
一方、Ｓ４０２で所望のサービスを提供可能な他の通信装置が存在することを無線ＬＡＮレイヤにおけるサービス検索処理において確認できた場合は、Ｓ４０５と同様に無線接続処理を行う（Ｓ４０３）。ただし、Ｓ４０３では、サービス検索によりサービス提供装置が特定できているため、ユーザによる選択などを省くことも可能である。例えば、サービス検索により、サービス提供装置のＭＡＣアドレス（識別情報）を取得可能であるため、接続相手を同ＭＡＣアドレスに限定することで自律的に接続相手をＳ４０２において検索したサービス提供装置に限定することが可能である。
【００３５】
接続が完了したらＳ４０１のサービス検索で得たサービス情報を元にサービスを開始する（Ｓ４０４）。
【００３６】
以上説明したように、オプション機能であるサービスディスカバリに対応していない他の通信装置からサービス検索の応答を受け取ることができない場合にも、通信可能な範囲に存在しのＷｉ−Ｆｉ  Ｄｉｒｅｃｔに対応している他の通信装置と無線接続処理を行う。そして、ＵＰｎＰで規定されるサービス検索処理を行い、他の通信装置が所望のサービスを実行可能であることを確認できるので所望のサービスが実行できるようになる。即ち、無線ＬＡＮ層でのサービスディスカバリによる応答がないことを以てサービスを実行するための処理を終了することがなくなるので所望のサービスを実行できる他の装置を検出する可能性を向上することができる。
【００３７】
なお、本実施形態におけるサービス利用装置、サービス提供装置とは、実行するサービス印刷サービスであれば、受益装置は、印刷すべき画像、書類を有している装置であり、提供装置は印刷機能を有している装置である。即ち、前者はデジタルカメラやスマートフォンなどであり、後者はプリンタである。また、映像ストリーミングサービスであれば、受益装置は、デジタルカメラやカムコーダなどの映像記録装置であり、提供装置とは、デジタルＴＶやプロジェクタなどの画像表示装置である。また、実行するサービスをＤＬＮＡ（登録商標）とすると、例えば、サービス利用装置はＤＭＳ（デジタルメディアサーバ）であり、サービス提供装置はＤＭＲ（デジタルメディアレンダラ―）である。なお、ＤＬＮＡはＤｉｇｉｔａｌ  Ｌｉｖｉｎｇ  Ｎｅｔｗｏｒｋ  Ａｌｌｉａｎｃｅの略である。なお、ＤＬＮＡ規格においては様々なデバイスクラスが存在するため本記述は一例である。詳細はＤＬＮＡ規格を参照されたい。
【００３８】
続いて、本実施形態における各装置間の動作シーケンスを図５、図６に示すシーケンス図を用いて説明を行う。図５において、ＳＴＡ−ＢがサービスＸの提供装置、ＳＴＡ−ＡがサービスＸの受益装置であり、ＳＴＡ−ＡとＳＴＡ−Ｂが共にサービスディスカバリ機能をサポートしている場合を例に説明する。
【００３９】
図５において、ＳＴＡ−Ａ３２はサービスディスカバリ機能を用いてサービスＸを実行可能な他の通信装置の検出をするためＳＤ  Ｑｕｅｒｙを送信する（Ｆ５０１）。この例では、ＳＴＡ−Ａ３２はサービスＸを指定したＳＤ  Ｑｕｅｒｙを送信する。なお、ＳＤ  Ｑｕｅｒｙはユニキャストで送信することも可能であるし、ブロードキャストまたはマルチキャストで送信することも可能である。ＳＴＡ−Ｂ３３は、サービスディスカバリ機能をサポートしているため、ＳＤ  Ｑｕｅｒｙを受信するとサービスＸが提供可能であることを示すＳＤ  ＲｅｓｐｏｎｓｅをＳＴＡ−Ａ３２に送信する（Ｆ５０２）。なお、ＳＤ  Ｒｅｓｐｏｎｓｅには、サービスＸ以外のサービスをサポートしていることを示すサービス情報を付与することも可能である。
【００４０】
ＳＴＡ−Ａ３２は、送信したＳＤ  Ｑｕｅｒｙに対する応答をＳＴＡ−Ｂ３３から受信したことによって、ＳＴＡ−Ｂ３３がサービスＸを提供可能であると判断する。そして、ＳＴＡ−Ａ３２はＳＴＡ−ＢとＷｉ−Ｆｉ  Ｄｉｒｅｃｔの仕様に則り無線接続処理を実施する（Ｆ５０３）。この処理により、ＳＴＡ−Ａ３２とＳＴＡ−Ｂ３３は無線ＬＡＮでの接続とＩＰ設定が完了した状態となる。
【００４１】
ＳＴＡ−Ａ３２は、ＳＴＡ−Ｂ３３との無線接続処理が完了するとサービス検索により取得したサービス情報を元にサービスＸを開始する（Ｆ５０４）。具体的には、サービスＸが印刷サービスであった場合、ＳＴＡ−Ａ３２が撮影した画像を印刷する際に、印刷機能を有したプリンタ（ＳＴＡ−Ｂ３３）を検索して、無線経由で撮像画像をＳＴＡ−Ｂ３３に印刷させる印刷処理を行う。
【００４２】
続いて、図６においてＳＴＡ−Ｂ３３がサービスＸの提供装置、ＳＴＡ−Ａ３２がサービスＸの受益装置であり、ＳＴＡ−Ａ３２がサービスディスカバリ機能をサポートし、ＳＴＡ−Ｂ３３がサービスディスカバリ機能をサポートしていない場合の例を説明する。
【００４３】
図６においてＳＴＡ−Ａ３２はＦ５０１と同様にＳＤ  Ｑｕｅｒｙを送信する（Ｆ６０１）。この場合、ＳＴＡ−Ｂ３３はサービスディスカバリ機能をサポートしていないため、ＳＤ  Ｑｕｅｒｙに対してＳＤ  Ｒｅｓｐｏｎｓｅを送信しない。
【００４４】
ＳＴＡ−Ａ３２はＳＤ  Ｒｅｓｐｏｎｓｅを受信しないため、所望のサービスを提供可能な他の通信装置が存在しないと判定し、サービス情報を取得しない状態で無線接続処理を実施する（Ｆ６０２）。ＳＴＡ−Ａ３２はＳＴＡ−Ｂ３３が通信可能な範囲にいることをスキャン処理により検出し、ＳＴＡ−Ｂ３３と無線接続を行う。
【００４５】
ＳＴＡ−Ａ３２は、無線接続処理が完了すると第１の通信層と異なる第２の通信層におけるサービス検索を開始する（Ｆ６０３）。この例では、ＳＴＡ−Ａ３２はサービスＸを指定したサービス検索要求を送信する（Ｆ６０３）。ＳＴＡ−Ｂ３３は、第２の通信層におけるサービス検索機能はサポートしているため、サ―ビス検索要求を受信するとサービスＸが提供可能なことを示すサービス検索応答をＳＴＡ−Ａ３２に送信する（Ｆ６０４）。ＳＴＡ−Ａ３２はＬ３サービス検索応答を受信すると付与されたサービス情報を元にサービスＸを開始する（Ｆ６０５）。
【００４６】
以上のように、本実施例によれば所望のサービスを実行可能な他の通信装置がサービスディスカバリ機能をサポートしているか否かによらず、サービスを開始することが可能となる。また、サービスディスカバリ機能により他の通信装置が所望のサービスを実行可能であることを検出した場合は、他の通信層におけるサービス検索処理を実行しないのでサービス開始までの時間を短縮ことが可能となり、ユーザの利便性が向上する。また、オプション機能であるサービスディスカバリに対応していない他の通信装置からサービス検索の応答を受け取ることができない場合にも、無線接続処理を行う。そして、ＵＰｎＰ等の無線ＬＡＮ通信層とは異なる通信層に規定されるサービス検索処理を行い、他の通信装置が所望のサービスを実行可能であることを確認できるので所望のサービスが実行できるようになる。即ち、サービスディスカバリによる応答がないことを以てサービスを実行するための処理を終了することがなくなるので所望のサービスを実行できる他の装置の検出する可能性を向上することができる。
【００４７】
なお、上述の例では、ＳＤ  Ｑｕｅｒｙ／ＳＤ  Ｒｅｓｐｏｎｓｅを用いたサービス検索を例示したが、Ｐｒｏｂｅ  Ｒｅｑｕｅｓｔ／Ｐｒｏｂｅ  Ｒｅｓｐｏｎｓｅなどの検索信号をサービス検索処理に用いる構成としてもよい。例えば、Ｐｒｏｂｅ  Ｒｅｑｕｅｓｔ／Ｐｒｏｂｅ  Ｒｅｓｐｏｎｓｅに所望のサービスを実行可能でることを示すＩＥ（Ｉｎｆｏｒｍａｔｉｏｎ  Ｅｌｅｍｅｎｔ）を付与することによりサービス検索処理を実行することができる。
【００４８】
なお、上述の例では、サービス利用装置がサービス検索を実施する例を記載したが、サービス提供装置がサービス検索を実施する場合でも適用可能である。
【００４９】
（実施例２）
実施例１においては、他の通信装置と無線接続前にサービスディカバリ機能によるサービス検索を実施した場合の例について説明した。本実施例２においては、他の通信装置と無線接続後にサービスディカバリ機能によるサービス検索を実行する。そして、接続相手がサービスディカバリ機能に対応していなければ、さらに第２の通信層におけるサービス検索処理を実行する例を説明する。なお各装置の構成は実施例１と同様に図１および図２のとおりである。
【００５０】
実施例２におけるサービス利用装置の動作フローチャートを図７に示すフローチャートを用いて説明する。なお、図７に示すフローチャートにおいて既にサービスＸ実行するために他の通信装置とのネットワークが構築済みの状態で、サービスＹの実行指示を受付けた場合の例の説明を行う。
【００５１】
図７において、通信装置は通信相手と無線ＬＡＮでの接続及びＩＰ設定が完了し、他のサービスを実行中若しくは実行後の状態において、サービスＹの実行指示を受付けた場合に処理が始まる。サービスＹの実行指示を受付けた場合、Ｓｅｒｖｉｃｅ  Ｄｉｓｃｏｖｅｒｙ制御部２０４は、サービスディスカバリ機能によるサービス検索を開始する（Ｓ７０１）。Ｓｅｒｖｉｃｅ  Ｄｉｓｃｏｖｅｒｙ制御部２０４は、サービスＹを指定したＳＤ  Ｑｕｅｒｙを送信し、ＳＤ  Ｒｅｓｐｏｎｓｅの受信を待機する。なお、Ｓ７０１にサービス検索は、ＳＤ  Ｑｕｅｒｙ／ＳＤ  Ｒｅｓｐｏｎｓｅを用いてもよいし、Ｐｒｏｂｅ  Ｒｅｑｕｅｓｔ／Ｐｒｏｂｅ  Ｒｅｓｐｏｎｓｅを用いることも可能である。
【００５２】
次にＳ４０２同様に接続相手がサービスを提供可能かの判定を行う（Ｓ７０２）。Ｓ７０２において所望のサービス提供が可能な旨の応答を受信しなかったと判断した場合、第２の通信層におけるサービス検索を開始する（Ｓ７０４）。Ｌ３  Ｓｅｒｖｉｃｅ  ＤＩＳＣＯＶＥＲＹ制御部２０５は、第２の通信層におけるサービス検索の結果により、接続相手が所望のサービスを提供可能か否かを判定する（Ｓ７０５）。Ｓ７０５において所望のサービスを提供可能なではないと判定した場合は、エラー処理を行う（Ｆ７０６）。なお、Ｆ７０６におけるエラー処理は接続相手が所望のサービスを実行可能ではないことを表示部１０５に表示し、処理をエラー終了する。
【００５３】
Ｓ７０５において所望のサービスを提供可能なであると判定した場合は、取得したサービス情報を元にＳ４０４と同様に接続相手とサービスを開始する（Ｓ７０３）。
【００５４】
具体的には、映像ストリーミングサービスで映像表示をしながら、ファイル転送サービスを開始し、ファイル転送をするなどという動作が可能となる。なおここでの具体例は、発明を限定する意図ではなく、単なる理解を深めるための例示であることは言うまでもない。
【００５５】
続いて、本実施例における各装置の動作シーケンスを図８、図９に示すシーケンス図を用いて説明を行う。図８においてＳＴＡ−Ｂ３３がサービスＸ及びサービスＹの提供装置、ＳＴＡ−Ａ３２がサービスＸ及びサービスＹの受益装置であり、ＳＴＡ−ＡとＳＴＡ−Ｂが共にサービスディスカバリ機能をサポートしている場合の例である。また、ＳＴＡ−ＡとＳＴＡ−Ｂは最初にサービスＸを開始し、続けてサービスＹを開始する際の動作例を説明する。
【００５６】
Ｆ８０１〜Ｆ８０４はＦ５０１〜Ｆ５０４と同様であるため、説明を省略する。これらの処理により、ＳＴＡ−Ｂ３３がＳＴＡ−Ａ３２にサービスＸを提供している状態となる。次にＳＴＡ−Ａ３２において、サービスＹの実行が指示されるとサービスＹを指定した、サービスＹを要求する旨のＳＤ  Ｑｕｅｒｙを送信する（Ｆ８０５）。ＳＴＡ−Ｂ３３は、サービスディスカバリ機能をサポートしているため、ＳＤ  Ｑｕｅｒｙを受信するとサービスＹが提供可能であることを示すＳＤ  ＲｅｓｐｏｎｓｅをＳＴＡ−Ａ３２に送信する（Ｆ８０６）。ＳＴＡ−Ａ３２は、ＳＤ  Ｑｕｅｒｙを受信すると取得したサービス情報を元にサービスＹを開始する（Ｆ８０７）。以上により、サービスＸ実行するために構築したネットワークにおいて他のサービスＹを開始することが可能となる。
【００５７】
続いて、図９においてＳＴＡ−Ｂ３３がサービスＸ及びサービスＹの提供装置、ＳＴＡ−Ａ３２がサービスＸ及びサービスＹの受益装置であり、ＳＴＡ−Ａ３２がサービスディスカバリ機能をサポートしている場合を説明する。また、ＳＴＡ−Ｂ３３がサービスディスカバリ機能をサポートしていない場合の例を説明する。また、ＳＴＡ−ＡとＳＴＡ−Ｂは最初にサービスＸを開始し、続けてサービスＹを開始する際の動作例を用いて説明する。
【００５８】
Ｆ９０１〜Ｆ９０５はＦ６０１〜Ｆ６０５と同様であるため、説明を省略する。これらの処理により、無線接続が完了しＳＴＡ−Ｂ３３がＳＴＡ−Ａ３２にサービスＸを提供している状態となる。次にＳＴＡ−Ａ３２において、Ｆ８０５と同様にサービスＹの実行が指示されるとサービスＹを指定した、サービスＹを要求する旨のＳＤ  Ｑｕｅｒｙを送信する（Ｆ９０６）。しかし、ＳＴＡ−Ｂはサービスディスカバリ機能をサポートしていないため、ＳＤ  Ｑｕｅｒｙに対してＳＤ  Ｒｅｓｐｏｎｓｅを送信しない。
【００５９】
ＳＴＡ−Ａ３２はＳＤ  Ｒｅｓｐｏｎｓｅを受信しないため、続いて第１の通信層と異なる第２の通信層におけるサービス検索を開始する（Ｆ９０７）。ＳＴＡ−Ｂ３３は第２の通信層におけるサービス検索機能はサポートしているため、サ―ビス検索要求を受信するとサービスＹが提供可能な旨のサービス検索応答をＳＴＡ−Ａ３２に送信する（Ｆ９０８）。ＳＴＡ−Ａ３２はＬ３サービス検索応答を受信すると付与されたサービス情報を元にサービスＹを開始する（Ｆ９０９）。
【００６０】
ここでは、サービスＹ開始時にも再度ＳＤ  Ｑｕｅｒｙの送信を行う場合を例に説明したが、サービスＸのサービス検索が失敗したことを記憶部１０３に記憶しておいて、ＳＤ  Ｑｕｅｒｙによる検索を省略することも可能である。特に、サービスＸの無線ＬＡＮ層でのサービスディスカバリにおいてサービスを指定しない検索を行う場合、相手装置から応答が無い場合は、相手装置が無線ＬＡＮ層でのサービスディスカバリに対応していないことが考えられる。したがって、この場合、サービスＹ開始時に再度ＳＤ  Ｑｕｅｒｙの送信を行わず、第２の通信層におけるサービス検索を行う構成として良い。
【００６１】
以上のように、本実施例によれば既にネットワークが構築された状態においても対向装置のサービスディスカバリ機能をサポートしているか否かによらず、サービスを開始することが可能となる。
【００６２】
（実施例３）
実施例３においては、実施例２で説明した他の通信装置と無線接続後にサービスディカバリ機能によるサービス検索を実行し、接続相手がサービスディカバリ機能に対応していなければ、さらに第２の通信層におけるサービス検索処理を実行する他の例を説明する。なお各装置の構成は実施例１と同様に図１および図２のとおりである。図１２は、本実施例におけるシステム構成図である。図１２において通信装置Ａ３２（以下、ＳＴＡ−Ａ）、通信装置Ｂ３３（以下、ＳＴＡ−Ｂ）と、通信装置Ｃ３４（以下、ＳＴＡ−Ｃ）が存在する。
【００６３】
図１３は、本実施例におけるＳＴＡ−Ａ３２の動作フローチャートである。本フローチャート図を用いてサービス検索からサービス利用迄の通信装置の動作フローを説明する。
【００６４】
まず、Ｄｉｓｃｏｖｅｒｙ制御部２０２は、通信可能な範囲の無線通信装置を検索する（Ｓ１３０１）。Ｓ１３０１での検索処理は、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔプロトコル仕様に基づき、まず全チャンネルスキャンを行う。そして、所定のチャンネル（ソーシャルチャンネル）のスキャンと所定のチャンネルでの他の装置からのプローブリクエストの待ち受けとを繰り返し相手装置の検索を行う。Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ制御部２０３は、Ｓ１３０１において検索した相手意装置と無線接続処理を実施する（Ｓ１３０２）。Ｓ１３０３では、ＳＴＡ−Ａ３２はＳ１３０２おいて構築したネットワークにおいて通信を行う（Ｓ１３０３）。
【００６５】
なお、Ｓ１３０３の処理は省略しても構わない。ＳＴＡ−Ａ３２は、ネットワーク構築後にユーザからのサービスの実行指示を受付けたかを判定する（Ｓ１３０４）。Ｓ１３０４において、ユーザからのサービスの実行指示を受付けた場合、Ｓｅｒｖｉｃｅ  Ｄｉｓｃｏｖｅｒｙ制御部２０４は、無線ＬＡＮレイヤでのサービス検索処理（サービスディスカバリ）を開始する（Ｓ１３０５）。Ｓｅｒｖｉｃｅ  Ｄｉｓｃｏｖｅｒｙ制御部２０４は、ＳＤ  Ｑｕｅｒｙをブロードキャスト送信し、ＳＤ  Ｒｅｓｐｏｎｓｅの受信を待機する。次に、Ｓｅｒｖｉｃｅ  Ｄｉｓｃｏｖｅｒｙ制御部２０４は、Ｓ１３０２において無線接続した相手装置から所望のサービスを提供可能な旨の応答があったかのの判定を行う（Ｓ１３０６）。また、ブロードキャストしたＳＤ  Ｑｕｅｒｙの応答から周囲に存在する所望のサービスを実行できる他の装置の識別情報を記憶しておく。
【００６６】
Ｓ１３０６において接続相手から所望のサービス提供が可能な旨の応答を受信しなかったと判断した場合、Ｌ３  Ｓｅｒｖｉｃｅ  ＤＩＳＣＯＶＥＲＹ制御部２０５によりサービス検索を開始する（Ｓ１３０８）。本説明では、Ｌ３  Ｓｅｒｖｉｃｅ  ＤＩＳＣＯＶＥＲＹ制御部２０５は、ＵＰｎＰで規定される検索通信プロトコルＳＳＤＰを用いて第２の通信層におけるサービス検索処理を行うものとする。第２の通信層におけるサービス検索の結果により、接続相手が所望のサービスを提供可能かを判定する（Ｓ１３０９）。Ｌ３  Ｓｅｒｖｉｃｅ  ＤＩＳＣＯＶＥＲＹ制御部２０５は、Ｍ−Ｓｅａｒｃｈに対する応答の有無および、応答があった場合に利用可能なサービス種別が含まれているかどうかの調査により当該判定を行う。接続相手が所望のサービスをサポートしていない場合、当該接続相手との無線接続を切断（ネットワークからの離脱、グループから脱退）し、再度Ｄｉｓｃｏｖｅｒｙ制御部２０２は、通信可能な範囲の無線通信装置を検索する（Ｓ１３１０）。なお、ここで、Ｓ１３０５によりブロードキャストしたサービスディカバリにより所望のサービスを実行可能な他の通信装置が検出出来ている場合は、当該他の通信装置を指定したプローブリクエストを送信するようにして良い。
【００６７】
Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ制御部２０３は、Ｓ１３１０の検索処理において検索したＳ１３０２と接続した相手と異なる他の通信装置と無線接続処理を実施する（Ｓ１３１１）。Ｌ３  Ｓｅｒｖｉｃｅ  ＤＩＳＣＯＶＥＲＹ制御部２０５によりＳ１３１１において接続した相手に対してサービス検索を開始する（Ｓ１３１２）。Ｓ１３１１における第２の通信層におけるサービス検索の結果により、Ｓ１３１２において接続した相手装置が所望のサービスを提供可能な他の通信装置が存在するかを判定する（Ｓ１３１４）。接続相手が所望のサービスを提供可能な場合、サービス利用部２０９は取得したサービス情報を用いてサービスを開始する（１３０７）。接続相手が所望のサービスを提供可能でない場合、エラー処理を行う（Ｓ１３１３）。なお、エラー処理は、所望のサービス提供可能な装置が存在しないことを表示部１０５に表示し、処理をエラー終了する。なお、Ｓ１３０５において接続相手が所望のサービス提供可能な場合はサービス利用部２０９はサービスを開始する（Ｓ１３０７）。
【００６８】
以上の処理により無線ネットワークを構築後にサービス実行を指示された場合に接続相手が所望のサービスが実行できるかを検出することができる。また、接続相手が所望のサービスを実行できない場合は、周囲に存在する所望のサービスを実行可能な他の通信装置と無線接続しサービスを実行できるようになる。
【００６９】
続いて、実施例３に各装置の動作シーケンスを図１０、図１１に示すシーケンス図を用いて説明を行う。図１０においてＳＴＡ−Ｂ３３がサービスＸ提供装置、ＳＴＡ−Ａ３２がサービスＸの受益装置であり、ＳＴＡ−Ａ３２がサービスディスカバリ機能をサポートし、ＳＴＡ−Ｂ３３がサービスディスカバリ機能をサポートしていない場合の例を説明する。また、ＳＴＡ−Ａ３２とＳＴＡ−Ｂ３３は最初にＷｉ−Ｆｉ  Ｄｉｒｅｃｔプロトコル仕様に基づいた接続処理によりネットワークを構築後にサービスＸの実行指示を受付けた場合について説明を行う。
【００７０】
図１０において、ＳＴＡ−Ａ３２は、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔプロトコル仕様に基づいた接続処理によりＳＴＡ−Ｂ３３とネットワークを構築し（Ｆ１００１）、通常の通信処理を実行する（Ｆ１００２）。図１２の（ａ）に示すネットワークＡ３１が構築される。次にＳＴＡ−Ａ３２において、サービスＸの実行が指示される（Ｆ１００３）と、サービスＸを指定した、サービスＸを要求する旨のＳＤ  Ｑｕｅｒｙを送信する（Ｆ１００４）。ＳＴＡ−Ｂ３３は、サービスディスカバリ機能をサポートしていないため、ため、ＳＤ  Ｑｕｅｒｙに対してＳＤ  Ｒｅｓｐｏｎｓｅを送信しない。
【００７１】
ＳＴＡ−Ａ３２はＳＤ  Ｒｅｓｐｏｎｓｅを受信しないため、続いて第１の通信層と異なる第２の通信層におけるサービス検索を開始する（Ｆ１００５）。ＳＴＡ−Ｂ３３は第２の通信層におけるサービス検索機能はサポートしているため、サ―ビス検索要求を受信するとサービスＹが提供可能な旨のサービス検索応答をＳＴＡ−Ａ３２に送信する（Ｆ１００６）。ＳＴＡ−Ａ３２はＬ３サービス検索応答を受信すると付与されたサービス情報を元にサービスＹを開始する（Ｆ１００７）。
【００７２】
ここでは、サービスＹ開始時にも再度ＳＤ  Ｑｕｅｒｙの送信を行う場合を例に説明したが、サービスＸのサービス検索が失敗したことを記憶部１０３に記憶しておいて、ＳＤ  Ｑｕｅｒｙによる検索を省略することも可能である。
【００７３】
続いて、図１１においてＳＴＡ−ＣがサービスＸ提供装置、ＳＴＡ−Ａ３２がサービスＸの受益装置であり、ＳＴＡ−Ａ３２がサービスディスカバリ機能をサポートしている場合の例を説明する。また、ＳＴＡ−Ｂ３３がサービスディスカバリ機能およびサービスＸをサポートしていない場合の例を説明する。また、ＳＴＡ−Ａ３２とＳＴＡ−Ｂ３３は最初にＷｉ−Ｆｉ  Ｄｉｒｅｃｔプロトコル仕様に基づいた接続処理によりネットワークを構築後にサービスＸの実行指示を受付けた場合について説明を行う。
【００７４】
図１１において、ＳＴＡ−Ａ３２は、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔプロトコル仕様に基づいた接続処理によりＳＴＡ−Ｂ３３とネットワークを構築し（Ｆ１１０１）、通常の通信処理を実行する（Ｆ１１０２）。図１２の（ａ）に示すネットワークＡ３１が構築される。次にＳＴＡ−Ａ３２において、サービスＸの実行が指示される（Ｆ１１０３）と、サービスＸを指定した、サービスＸを要求する旨のＳＤ  Ｑｕｅｒｙをブロードキャストで送信する（Ｆ１１０４）。ＳＴＡ−Ｂ３３は、サービスディスカバリ機能をサポートしていないため、ため、ＳＤ  Ｑｕｅｒｙに対してＳＤ  Ｒｅｓｐｏｎｓｅを送信しない。また、ＳＴＡ−Ｃもサービスディスカバリ機能をサポートしていないため、ため、ＳＤ  Ｑｕｅｒｙに対してＳＤ  Ｒｅｓｐｏｎｓｅを送信しない。
【００７５】
ＳＴＡ−Ａ３２はＳＤ  Ｒｅｓｐｏｎｓｅを受信しないため、続いて第１の通信層と異なる第２の通信層におけるサービス検索を開始する（Ｆ１１０５）。ＳＴＡ−Ａ３２は、ＳＴＡ−Ｂ３３とネットワークを構築中であるため第２の通信層におけるサービス検索機能は接続中の通信相手装置にしか行うことはできない。しかしながら、現在同じグループに属している、ＳＴＡ−Ｂ３３はサービスＸをサポートしていないため、サ―ビス検索要求を受信しても応答を返さない。ＳＴＡ−Ａ３２は、現在接続中のネットワークに所望のサービス実行できる装置が存在しないと判定し、現在接続中のネットワークの切断処理を実行する（Ｆ１１０６）。続いて、通信可能な更に別の他の通信装置（ここではＳＴＡ−Ｃ）と接続するためにＷｉ−Ｆｉ  Ｄｉｒｅｃｔの仕様に則り相手装置のスキャン処理を含む無線接続処理を行う（Ｆ１１０７）。この例では、ＳＴＡ−Ｃがスキャン処理により検索されＳＴＡ−Ａ３２は、ＳＴＡ−Ｃと新たにネットワークを構築する。図１２の（ｂ）に示すネットワークＢ３５が構築される。なお、ＳＴＡ−Ａ３２は、Ｆ１１０４により送信した無線ＬＡＮ層におけるサービスディスカバリに用いる信号の応答がＳＴＡ−Ｃから無かったため、ＳＴＡ−Ｃは、サービスディスカバリ機能をサポートしていないと判断する。ＳＴＡ−Ａ３２はＳＴＡ−Ｃがサービスディカバリ機能をサポートしていないと判定したため、第１の通信層と異なる第２の通信層におけるサービス検索を開始する（Ｆ１１０８）。
【００７６】
ＳＴＡ−Ｃは第２の通信層におけるサービス検索機能はサポートしているため、サ―ビス検索要求を受信するとサービスＸが提供可能な旨のサービス検索応答をＳＴＡ−Ａ３２に送信する（Ｆ１１０９）。ＳＴＡ−Ａ３２はＬ３サービス検索応答を受信すると付与されたサービス情報を元にサービスＹを開始する（Ｆ１１０９）。
【００７７】
ここでは、Ｆ１１０７における無線接続前にＳＤ  Ｑｕｅｒｙの送信を行わない場合を例に説明したが、Ｆ１１０７における無線接続前にＳＤ  Ｑｕｅｒｙによる検索を再度行うように構成することも可能である。
【００７８】
以上のように、本実施例によれば既にネットワークが構築された状態において、接続相手が所望のサービスをサポートしていない場合でも、所望のサービスを実行可能な通信相手を、検索することができる。また、接続相手が所望のサービスディスカバリ機能をサポートしているか否かによらず、所望のサービスを実行可能な通信相手を検索することができる。
【００７９】
（その他の実施例）
上述の実施例においてサービス検索処理、無線接続処理、Ｌ３サービス検索処理をシーケンシャルに実施する例を示したが、これらの処理を並行して実施することも可能である。例えば、初めにサービス検索処理を一定時間実施してもサービス提供装置を発見できない場合、続く無線接続処理またはＬ３サービス検索処理実施中に並行してサービス検索処理を実施してもよい。並行して実施したサービス検索処理において所望のサービス検索応答を受信した場合は、Ｌ３サービス検索処理を省略または中断してサービスを開始するといったことも可能である。
【００８０】
また、上位アプリケーションがＬ３サービス検索処理により取得するサービス情報（ＩＰアドレスなど）を必要とする場合は、サービス検索処理を省いて無線接続処理及びＬ３サービス検索処理を開始することも可能である。さらに、ユーザの指示等により接続相手がサービス検索機能をサポートしていない装置であることが予め認識できる場合も同様の対応が可能である。
【００８１】
また、上位アプリケーションがサービス検索処理により取得するサービス情報を必要とする場合は、サービス検索処理で所望のサービス検索応答を受信できなかった時点でエラー表示等を行ってもよい。
【００８２】
本発明は前述の機能を実現するソフトウェアのプログラムコードを記録した記録媒体をシステムあるいは装置に供給し、システムあるいは装置のコンピュータ（ＣＰＵ、ＭＰＵ）が記録媒体に格納されたプログラムコードを読み出し実行するようにしてもよい。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することとなり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【００８３】
プログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤなどを用いることができる。
【００８４】
また、コンピュータが読み出したプログラムコードを実行することにより、前述の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているＯＳが実際の処理の一部または全部を行い、前述の機能を実現してもよい。ＯＳとは、Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍの略である。
【００８５】
さらに、記憶媒体から読み出されたプログラムコードを、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込む。そして、そのプログラムコードの指示に基づき、機能拡張ボードや機能拡張ユニットに備わるＣＰＵが実際の処理の一部または全部を行い、前述の機能を実現してもよい。
【符号の説明】
【００８６】
３１  ネットワークＡ
３２  ＳＴＡ−Ａ
３３  ＳＴＡ−Ｂ
【図１】
2014160961.tif 000003
【図２】
2014160961.tif 000004
【図３】
2014160961.tif 000005
【図４】
2014160961.tif 000006
【図５】
2014160961.tif 000007
【図６】
2014160961.tif 000008
【図７】
2014160961.tif 000009
【図８】
2014160961.tif 000010
【図９】
2014160961.tif 000011
【図１０】
2014160961.tif 000012
【図１１】
2014160961.tif 000013
【図１２】
2014160961.tif 000014
【図１３】
2014160961.tif 000015