(57)【特許請求の範囲】
【請求項１】
電界結合または磁界結合により他の通信装置と近距離１対１通信を行う物理層と、
自装置のアプリケーション上で選択されているデータの種別に応じて、前記他の通信装置との相互認証に用いる認証情報を動的に変更する認証情報変更部と、
自装置および前記他の通信装置が利用可能な１のプロトコルを選択するプロトコル選択部と、
前記データの種別および前記選択したプロトコルに対応するアプリケーションを前記他の通信装置に起動させるために、前記認証情報および前記選択したプロトコルを示す情報を、前記他の通信装置に送信する起動情報送信部と、
自装置および前記他の通信装置の前記アプリケーション間でデータを転送するために、前記アプリケーションが利用するプロトコルを、前記物理層が利用するプロトコルに変換するプロトコル変換部と、
を備える通信装置。
【請求項２】
前記他の通信装置のアプリケーション上で選択されているデータの種別に応じて動的に変更される認証情報と、自装置および前記他の通信装置が利用可能な１のプロトコルとして選択されたプロトコルを示す情報を、前記他の通信装置から受信する起動情報受信部と、
前記データの種別および前記選択されたプロトコルに対応するアプリケーションを起動するアプリケーション起動部と、
をさらに備える、請求項１に記載の通信装置。
【請求項３】
アプリケーションサービスを前記他の通信装置から受ける第１モード、アプリケーションサービスを前記他の通信装置に与える第２モードから選択されるモードで動作し、
前記第１モードで動作する場合に、前記認証情報を動的に変更し、前記認証情報および前記選択したプロトコルを示す情報を前記他の通信装置に送信し、前記データの種別および前記選択したプロトコルに対応するアプリケーションを前記他の通信装置に起動させ、
前記第２モードで動作する場合に、前記動的に変更された認証情報、および前記選択されたプロトコルを示す情報を前記他の通信装置から受信し、前記データの種別および前記選択されたプロトコルに対応するアプリケーションを起動する、請求項２に記載の通信装置。
【請求項４】
前記他の通信装置のモードに応じて、前記第１モードまたは前記第２モードのいずれかを選択して動作する第３モードで動作し、
前記他の通信装置が前記第２モードで動作する場合に、前記第１モードで動作する場合と同様に動作し、
前記他の通信装置が前記第１モードで動作する場合に、前記第２モードで動作する場合と同様に動作する、請求項３に記載の通信装置。
【請求項５】
前記認証情報変更部は、自装置のアプリケーション上で選択されている前記データの種別に応じて、前記認証情報に含まれるデバイス情報の少なくとも一部の情報を変更する、請求項１〜４のいずれか１項に記載の通信装置。
【請求項６】
電界結合または磁界結合により第２の通信装置と近距離１対１通信を行う第１の通信装置と、
前記第１の通信装置と通信を行う物理層と；自装置のアプリケーション上で選択されているデータの種別に応じて、前記第１の通信装置との相互認証に用いる認証情報を動的に変更する認証情報変更部と；自装置および前記第１の通信装置が利用可能な１のプロトコルを選択するプロトコル選択部と；前記データの種別および前記選択したプロトコルに対応するアプリケーションを前記第１の通信装置に起動させるために、前記認証情報および前記選択したプロトコルを示す情報を、前記第１の通信装置に送信する起動情報送信部と；自装置および前記第１の通信装置の前記アプリケーション間でデータを転送するために、前記アプリケーションが利用するプロトコルを、前記物理層が利用するプロトコルに変換するプロトコル変換部と；を備える第２の通信装置と、
を有する通信システム。
【請求項７】
電界結合または磁界結合により他の通信装置と近距離１対１通信の接続を確立するステップと、
自装置のアプリケーション上で選択されているデータの種別に応じて、前記他の通信装置との相互認証に用いる認証情報を動的に変更するステップと、
自装置および前記他の通信装置が利用可能な１のプロトコルを選択するステップと、
前記データの種別および前記選択したプロトコルに対応するアプリケーションを前記他の通信装置に起動させるために、前記認証情報および前記選択したプロトコルを示す情報を、前記他の通信装置に送信するステップと、
自装置および前記他の通信装置の前記アプリケーション間でデータを転送するために、前記アプリケーションが利用するプロトコルを、物理層が利用するプロトコルに変換するステップと、
を含む通信方法。
【請求項８】
電界結合または磁界結合により他の通信装置と近距離１対１通信の接続を確立するステップと、
自装置のアプリケーション上で選択されているデータの種別に応じて、前記他の通信装置との相互認証に用いる認証情報を動的に変更するステップと、
自装置および前記他の通信装置が利用可能な１のプロトコルを選択するステップと、
前記データの種別および前記選択したプロトコルに対応するアプリケーションを前記他の通信装置に起動させるために、前記認証情報および前記選択したプロトコルを示す情報を、前記他の通信装置に送信するステップと、
自装置および前記他の通信装置の前記アプリケーション間でデータを転送するために、前記アプリケーションが利用するプロトコルを、物理層が利用するプロトコルに変換するステップと、
を含む通信方法をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信装置、通信システム、通信方法およびプログラムに関する。
【背景技術】
【０００２】
電界結合または磁界結合により通信装置間で近距離１対１通信を行う通信システムが知られている。通信システムでは、２つの通信装置が通信範囲に配置されると、通信装置間で通信接続、相互認証、ネゴシエーションが行われる。そして、所定のアプリケーションが起動され、アプリケーションのプロトコルがデータ伝送用のプロトコルに変換され、アプリケーション間でデータ転送が開始される。
【０００３】
ところで、通信システムでは、異なるプロトコルを利用する各種のアプリケーションがサポートされている。このため、ネゴシエーション時に一方の通信装置がプロトコルを指定し、指定したプロトコルに対応するアプリケーションを他の通信装置が起動している。なお、下記特許文献１には、デジタル音楽プレイヤに記録されたプレイリストをパーソナルコンピュータで再生する際に、特別なアプリケーションを用いることなく容易に再生するための再生方法および再生プログラムが開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００８−１９２２６１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ここで、プロトコルに対応するアプリケーションが１つしか存在しなければ、起動すべきアプリケーションをプロトコルの指定により特定することができる。しかし、プロトコルに対応するアプリケーションが複数存在していると、起動すべきアプリケーションをプロトコルの指定により特定することができない場合がある。
【０００６】
そこで、本発明は、プロトコルに対応するアプリケーションが複数存在していても、起動すべきアプリケーションを特定可能な、通信装置、通信システム、通信方法およびプログラムを提供しようとするものである。
【課題を解決するための手段】
【０００７】
本発明の第１の実施形態によれば、電界結合または磁界結合により他の通信装置と近距離１対１通信を行う物理層と、自装置のアプリケーション上で選択されているデータの種別に応じて、他の通信装置との相互認証に用いる認証情報を動的に変更する認証情報変更部と、自装置および他の通信装置が利用可能な１のプロトコルを選択するプロトコル選択部と、データの種別および選択したプロトコルに対応するアプリケーションを他の通信装置に起動させるために、認証情報および選択したプロトコルを示す情報を、他の通信装置に送信する起動情報送信部と、自装置および他の通信装置のアプリケーション間でデータを転送するために、アプリケーションが利用するプロトコルを、物理層が利用するプロトコルに変換するプロトコル変換部と、を備える通信装置が提供される。
【０００８】
かかる構成によれば、アプリケーション上で選択されているデータの種別に応じて、認証情報が動的に変更されて他の通信装置に送信される。また、自装置および他の通信装置が利用可能な１のプロトコルが選択され、選択されたプロトコルを示す情報が他の通信装置に送信される。そして、データの種別および選択されたプロトコルに対応するアプリケーションが他の通信装置により起動される。これにより、他の通信装置は、プロトコルに対応するアプリケーションが複数存在していても、選択されているデータの種別に応じて動的に変更される認証情報を参照して、起動すべきアプリケーションを特定することができる。
【０００９】
また、上記通信装置は、他の通信装置のアプリケーション上で選択されているデータの種別に応じて動的に変更される認証情報と、自装置および他の通信装置が利用可能な１のプロトコルとして選択されたプロトコルを示す情報を、他の通信装置から受信する起動情報受信部と、データの種別および選択されたプロトコルに対応するアプリケーションを起動するアプリケーション起動部と、をさらに備えてもよい。
【００１０】
また、上記通信装置は、アプリケーションサービスを他の通信装置から受ける第１モード、アプリケーションサービスを他の通信装置に与える第２モードから選択されるモードで動作し、第１モードで動作する場合に、認証情報を動的に変更し、認証情報および選択したプロトコルを示す情報を他の通信装置に送信し、データの種別および選択したプロトコルに対応するアプリケーションを他の通信装置に起動させ、第２モードで動作する場合に、動的に変更された認証情報、および選択されたプロトコルを示す情報を他の通信装置から受信し、データの種別および選択されたプロトコルに対応するアプリケーションを起動してもよい。
【００１１】
また、上記通信装置は、他の通信装置のモードに応じて、第１モードまたは第２モードのいずれかを選択して動作する第３モードで動作し、他の通信装置が第２モードで動作する場合に、第１モードで動作する場合と同様に動作し、他の通信装置が第１モードで動作する場合に、第２モードで動作する場合と同様に動作してもよい。
【００１２】
また、上記認証情報変更部は、自装置のアプリケーション上で選択されているデータの種別に応じて、認証情報に含まれるデバイス情報の少なくとも一部の情報を変更してもよい。
【００１３】
また、本発明の第２の実施形態によれば、電界結合または磁界結合により第２の通信装置と近距離１対１通信を行う第１の通信装置と、第１の実施形態に係る通信装置である第２の通信装置からなる通信システムが提供される。
【００１４】
また、本発明の第３の実施形態によれば、電界結合または磁界結合により他の通信装置と近距離１対１通信の接続を確立するステップと、自装置のアプリケーション上で選択されているデータの種別に応じて、他の通信装置との相互認証に用いる認証情報を動的に変更するステップと、自装置および他の通信装置が利用可能な１のプロトコルを選択するステップと、データの種別および選択したプロトコルに対応するアプリケーションを他の通信装置に起動させるために、認証情報および選択したプロトコルを示す情報を、他の通信装置に送信するステップと、自装置および他の通信装置のアプリケーション間でデータを転送するために、アプリケーションが利用するプロトコルを、物理層が利用するプロトコルに変換するステップと、を含む通信方法が提供される。
【００１５】
また、本発明の第４の実施形態によれば、第３の実施形態に係る通信方法をコンピュータに実行させるためのプログラムが提供される。ここで、プログラムは、コンピュータ読取り可能な記録媒体を用いて提供されてもよく、通信手段を介して提供されてもよい。
【発明の効果】
【００１６】
以上説明したように本発明によれば、プロトコルに対応するアプリケーションが複数存在していても、起動すべきアプリケーションを特定可能な、通信装置、通信システム、通信方法およびプログラムを提供することができる。
【図面の簡単な説明】
【００１７】
【図１】通信システムの構成を示す図である。
【図２】通信装置のＯＳＩ層モデルを示す図である。
【図３】ＯＳＩ層モデルの各層のサービスアクセスポイントを示す図である。
【図４】ＰＣＬコントローラの状態遷移を示す図である。
【図５】デバイス情報を考慮したアプリケーションの特定方法を示すシーケンス図である。
【図６Ａ】デバイス情報の変更例を示す図（１／２）である。
【図６Ｂ】デバイス情報の変更例を示す図（２／２）である。
【図７Ａ】ＣＮＬ接続の確立時の処理例を示すシーケンス図（１／２）である。
【図７Ｂ】ＣＮＬ接続の確立時の処理例を示すシーケンス図（２／２）である。
【図８】相互認証時の処理例を示すシーケンス図である。
【図９】ネゴシエーション時の処理例を示すシーケンス図である。
【発明を実施するための形態】
【００１８】
以下に添付図面を参照しながら、本発明の好適な実施の形態について詳細に説明する。なお、本明細書および図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
【００１９】
［１．通信システム］
まず、本発明の実施形態に係る通信システムについて説明する。図１は、通信システムの構成を示す図である。
【００２０】
図１に示すように、通信システムは、イニシエータとして機能するデバイスと、レスポンダとして機能するデバイスから構成される。デバイスは、例えば、携帯電話、デジタルカメラ、音楽プレイヤ、パーソナルコンピュータ、携帯情報端末（ＰＤＡ）等、通信機能を有する情報処理装置である。イニシエータおよびレスポンダは、略同一の機能構成を有する通信装置を搭載している。通信システムでは、イニシエータがレスポンダに接続要求を行い、レスポンダがイニシエータに接続応答を行うと、イニシエータとレスポンダの間で通信接続が確立される。
【００２１】
デバイスに搭載されている通信装置は、ベースバンド部１５０、通信カプラ１５２、およびＣＰＵ１６０を含んで構成される。
【００２２】
ベースバンド部１５０は、通信チップからなり、不図示の送信処理部および受信処理部を含んで構成される。イニシエータの送信処理部は、アプリケーションからの送信要求に応じて、送信データから送信信号を生成し、通信カプラ１５２を通じてレスポンダに送信する。レスポンダの受信処理部は、通信カプラ１５２を通じて信号を受信し、受信信号から受信データを生成してアプリケーションに供給する。
【００２３】
通信カプラ１５２は、電界カプラからなり、電界結合により通信を行う。通信カプラ１５２では、他の通信カプラ１５２と３ｃｍ程度の距離で近接すると静電結合が行われる。なお、以下では、電界結合により通信を行う場合について説明するが、磁界結合により通信を行う場合についても同様に説明することができる。
【００２４】
ＣＰＵ１６０は、通信装置のメモリ（不図示）等に記録されているプログラムを実行することで、アプリケーション層１００（以下、上位層１００とも称する。）、プロトコル変換層１０２（ＰＣＬ）、接続層１０４（ＣＮＬ）として機能する。なお、ベースバンド部１５０は、物理層（ＰＨＹ）１０６として機能する。
【００２５】
上位層１００は、データ通信を利用する各種のサービスをユーザおよび他のプログラムに提供する。上位層１００では、各種のアプリケーションが実行される。ＰＣＬ１０２は、上位層１００が生成したデータ、コマンド等を、下位層であるＣＮＬ１０４が処理可能なデータ形式に変換する。また、ＰＣＬ１０２は、通信の接続確立、接続解除、デバイス認証、デバイスモードのアービトレーション、ネゴシエーション、上位層１００の初期化等を行う。ＣＮＬ１０４は、ＰＣＬ１０２から供給されたデータをパケット化し、送信データとして物理層１０６に供給し、物理層１０６から供給されたデータからパケットを抽出し、受信データとして上位層１００に供給する。物理層１０６は、誤り訂正機能、プリアンブルセンス機能等を有する。また、ＰＣＬ１０２は、上位層１００が利用する各種のプロトコルと、物理層１０６がデータ伝送のために利用するプロトコルを相互変換する。これにより、各種のプロトコルに対応して上位層１００で実行されるアプリケーション間で、物理層１０６を介してデータ転送を行うことができる。
【００２６】
［２．通信装置］
つぎに、本発明の実施形態に係る通信装置について説明する。図２は、通信装置のＯＳＩ層モデルを示す図である。図３は、ＯＳＩ層モデルの各層のサービスアクセスポイント（ＳＡＰ）を示す図である。図４は、ＰＣＬコントローラの状態遷移を示す図である。
【００２７】
図２に示すように、上位層１００は、ＯＳＩ参照モデル上のアプリケーション層およびプレゼンテーション層に相当する。ＰＣＬ１０２は、同様にセッション層に相当する。ＣＮＬ１０４は、同様にトランスポート層およびデータリンク層に相当する。物理層１０６は、同様に物理層に相当する。なお、通信装置は、１対１通信を行うので、ＯＳＩ参照モデル上のネットワーク層に相当する機能を省略することができる。上位層１００は、認証情報変更部、プロトコル選択部、アプリケーション起動部として機能する。また、ＰＣＬ１０２は、起動情報送受信部、プロトコル変換部として機能する。
【００２８】
図３に示すように、ＰＣＬ１０２は、ＰＣＬコントローラ（ＰＣＬＣ）１１０およびＰＣＬアダプタ（ＰＣＬＡ）１１２の２つの機能ブロックに区分される。ＰＣＬＣ１１０は、初期化および基本通信（接続確立、接続解除、デバイス認証）の共通サービスを上位層１００に提供する。
【００２９】
ＰＣＬＡ１１２は、ＰＣＬＣ１１０が通信接続を確立した後にデータ転送を行う。ＰＣＬＡ１１２は、上位層１１０で実行されるアプリケーションが利用するプロトコル（ＯＢＥＸ（ＯＢｊｅｃｔ  ＥＸｃｈａｎｇｅ）、ＳＣＳＩ（Ｓｍａｌｌ  Ｃｏｍｐｕｔｅｒ  Ｓｙｓｔｅｍ  Ｉｎｔｅｒｆａｃｅ）、その他の汎用プロトコル）を、ＣＮＬ１０４が処理可能なデータパケットに変換する。ＰＣＬＡ１１２は、各プロトコルのための変換モジュール１１４ａ〜１１４ｚを有する。ただし、ＰＣＬＣ１１０により制御されている１つの変換モジュール１１４（例えば変換モジュール１１４ｚ）のみがアクティブ状態となり、他のモジュールがスリープ状態となる。
【００３０】
上位層１００、ＰＣＬ１０２、ＣＮＬ１０４、物理層１０６の間には、層間のインターフェイスとしてサービスアクセスポイント（ＳＡＰ）が設けられる。ＰＣＬ１０２は、ＰＣＬ−ＳＡＰ１２０（ＰＣＬＣ−ＳＡＰ１２１およびＰＣＬＡ−ＳＡＰ１２２）を上位層１００に提供する。また、ＰＣＬＡ１１２は、ＰＣＬＣ１１０による制御を実現するために必要なＰＣＬＣ用ＰＣＬＡ−ＳＡＰ１２４をＰＣＬＣ１１０に提供する。ＣＮＬ１０４は、ＣＮＬ−ＳＡＰ１２６をＰＣＬ１０２に提供する。物理層１０６は、ＰＨＹ−ＳＡＰ１２８をＣＮＬ１０４に提供する。
【００３１】
ＰＣＬＣ１１０は、ＣＮＬ１０４により提供される仕組みを用いて、以下で説明する接続管理機能、デバイス認証機能、およびアプリケーションサービス制御機能からなる３つの機能を有する。
【００３２】
接続管理機能は、２つのデバイス間で接続の確立および解除を管理する機能である。この機能は、２つのデバイスが通信範囲に配置されると、双方のデバイスモードが後述するリアクティブモードでなければ、ＣＮＬ接続を確立する。この機能は、接続を確立すると、ＰＣＬパラメータを用いて、ＰＣＬＣバージョンおよびデバイスモードの交換ならびにアービトレーションを行う。
【００３３】
デバイス認証機能は、ＣＮＬ接続されたデバイスの認証を行う機能である。デバイス認証は、２つのデバイス間で相互に行われる。デバイスは、通信相手となるピアデバイスの固有ＩＤ（ＵＩＤ）と登録済みデバイスのＵＩＤを比較し、ピアデバイスを認証するか否かを決定する。なお、デバイス認証に失敗すると、後続の機能が利用できなくなる。
【００３４】
アプリケーションサービス（ＡＳ）制御機能は、ＣＮＬ接続されたデバイスが所定のＡＳを決定するために、以下のフレームワークを提供する。ＡＳとは、各デバイス上で実行されるアプリケーションの組合せにより提供されるサービスを意味する。
・ＡＳを決定するために必要なパラメータ要素の組合せを示すＡＳパラメータ（ＡＳＰ）
・ピアデバイス上で利用可能なＡＳＰのリストを取得するための手順、およびＡＳＰに対応する所定のアプリケーションの実行をピアデバイスに要求するための手順
【００３５】
ＰＣＬＣ１１０は、上位層との連携により、以下の使用ケースａ、ｂをサポートしている。
・使用ケースａ
アプリケーションが動作中にあるデバイスをピアデバイスに近接／接触させると、ピアデバイスがプロトコルおよびデバイス上で動作中のアプリケーションに対応するアプリケーションを選択して起動する。本ケースの使用例としては、写真を表示している状態のデジタルカメラをプリンタに接触させると、プリンタが写真を印刷する場合が該当する。
・使用ケースｂ
アプリケーションが動作中にないデバイス同士を近接／接触させると、デバイス間の優先関係に基づいて、優先度の高いデバイスがアプリケーションを起動する。そして、優先度の低いデバイスは、プロトコルおよびピアデバイス上で動作中のアプリケーションに対応するアプリケーションを選択して起動する。本ケースの使用例としては、デジタルカメラをパーソナルコンピュータに近接／接触させると、パーソナルコンピュータ上の写真管理用アプリケーションがデジタルカメラに格納されている写真のバックアップを開始する場合が該当する。
【００３６】
通信システムを構成するデバイスは、表１に示すように、プロアクティブモード（Ｐモード）、リアクティブモード（Ｒモード）、フレキシブルモード（Ｆモード）からなる３つのデバイスモードで動作する。表１には、デバイスモードの優先関係も示されている。以下では、相対的に優先度の高いデバイスを「優先デバイス」、相対的に優先度の低いデバイスを「非優先デバイス」とも称する。
【００３７】
【表１】
0005387368.tif 000002
【００３８】
前述した使用ケースａは、Ｐモードのデバイスと、ＦモードまたはＲモード（Ｆ／Ｒモード）のデバイスの組合せに相当し、使用ケースｂは、ＦモードのデバイスとＲモードのデバイスの組合せに相当する。なお、ＣＮＬ接続は、他のモードのデバイスの組合せでも正常に確立されるものである。
【００３９】
デバイスモードとＣＮＬ接続時のイニシエータ／レスポンダの機能分担は、デバイスの電力消費および使用形態を考慮して、Ｐモードのデバイスがイニシエータ、Ｒモードのデバイスがレスポンダ、Ｆモードのデバイスがイニシエータとなるように規定されている。
【００４０】
ＰＣＬＣ１１０は、表２に示す状態をとることができる。図４には、ＰＣＬＣ１１０の状態遷移が示されている。
【００４１】
【表２】
0005387368.tif 000003
【００４２】
相互認証では、デバイス間でデバイス情報が交換される。デバイス情報は、デバイス毎に既定値として設定され、デバイスのメモリ等に記録されている。デバイス情報は、ベンダＩＤ、プロダクトＩＤ、およびプロダクトクラスからなるパラメータ要素を含む。
【００４３】
ベンダＩＤは、ベンダを識別可能な３バイト長の情報である。プロダクトＩＤは、プロダクトを識別可能な２バイト長の情報である。プロダクトクラスは、プロダクトのカテゴリを示す２バイト長の情報である。例えば、プロダクトクラスは、デバイスがプリンタであるか、デジタルカメラであるかを示す。プロダクトＩＤおよびプロダクトクラスは、ＡＳの選択に際して参照される。
【００４４】
ネゴシエーションでは、優先デバイスがＡＳＰを非優先デバイスに通知する。ＡＳＰは、２つのデバイスの組合せにより提供されるＡＳを決定するために必要なパラメータ要素（プロトコル、プロトコルクラス）の組合せである。ＡＳＰは、アプリケーション毎に既定値として設定され、デバイスのメモリ等に記録されている。
【００４５】
プロトコルは、デバイス上で動作中のアプリケーション間でデータ転送を行うための通信プロトコルを規定する。プロトコルクラスは、デバイス上で動作中のアプリケーション間で相互接続通信を維持するためのプロトコル動作の規則を規定する。プロトコルクラスは、プロトコルに依存して規定される。
【００４６】
デバイスは、ＰＣＬＣ１１０を介して上位層１００が以下の手順を実行すると、所定のＡＳを開始することができる。ここでは、同時に１つのＡＳのみが開始可能である場合を想定している。以下の手順によれば２つのデバイス間でネゴシエーションされたＡＳＰに対応するアプリケーションを実行することができる。なお、ＰモードのデバイスのみがＡＳＰをピアデバイスに設定することができる。
１．ピアデバイスからＡＳＰリストを取得する。
２．ピアデバイスから取得したＡＳＰリストに基づいて、ＡＳを検索し、所定のＡＳを決定する。
３．所定のＡＳに対応するＡＳＰをピアデバイスに設定する。
【００４７】
［３．通信方法］
つぎに、本発明の実施形態に係る通信方法について説明する。図５は、デバイス情報を考慮したアプリケーションの特定方法を示すシーケンス図である。
【００４８】
以下では、前述した使用ケースａを想定して説明する。使用ケースａでは、ＰモードのデバイスＡとＦ／ＲモードのデバイスＢの間で、ＣＮＬ接続の確立、相互認証、およびネゴシエーションが行われる。デバイスＡでは、ＰＣＬ機能をサポートするアプリケーションが動作している。
【００４９】
デバイスＡがデジタルカメラであり、デバイスＡ上で動作中のアプリケーション上で撮影済みの写真がユーザにより選択されている場合を想定する。デバイスＡがＦ／ＲモードのデバイスＢの通信範囲に配置されると、デバイスＡ、Ｂ間ではＣＮＬ接続の確立、相互認証およびネゴシエーションが行われ、デバイスＢ上で適切なアプリケーションが起動される。適切なアプリケーションとしては、例えば、デバイスＢがプリンタである場合に、写真印刷用アプリケーションが該当し、デバイスＢがパーソナルコンピュータである場合に、写真編集用アプリケーションが該当する。
【００５０】
ＣＮＬ接続の確立では、デバイスＡ、Ｂ間でＰＣＬＣバージョンおよびデバイスモードのアービトレーションが行われる。そして、デバイスＡ、Ｂ間で互換性を維持可能なＰＣＬＣバージョンが選択され、イニシエータ／レスポンダの機能分担が決定されると、相互認証が開始される。相互認証では、デバイス情報の交換およびデバイス認証が行われる。そして、相互認証に成功すると、ネゴシエーションが開始される。
【００５１】
ネゴシエーションでは、ＡＳの設定および開始が行われる。ネゴシエーションでは、デバイスＡがデバイスＢからＡＳＰリストを取得する。ＡＳＰリストとは、デバイスＢが利用可能なプロトコル等を示すＡＳＰのリストであり、プロトコルに対応するＡＳを設定するために参照される。デバイスＡは、ＡＳＰリストから１つのＡＳＰを選択してデバイスＢに通知し、デバイスＢは、選択されたＡＳＰに対応する変換モジュール１１４およびアプリケーションを起動する。
【００５２】
ここで、ネゴシエーション時に指定されるＡＳＰは、前述したように、プロトコルの種類（例えば、ＯＢＥＸ、ＳＣＳＩ）およびプロトコル動作の規則（例えば、プロトコルがＯＢＥＸの場合、プッシュまたはファイル転送のいずれか）を示している。また、相互認証時に交換されるデバイス情報は、前述したように、ベンダの識別（例えばソニー）、プロダクトの識別（例えばＤＳＣ−ＸＸＸ）およびカテゴリ（例えばデジタルカメラ）を示している。
【００５３】
このため、デバイスＡは、アプリケーション間で転送されるデータの種類（例えば、写真データ、音楽データ）、データの処理方法（例えば、表示／再生、印刷、バックアップ）を指定することができない。よって、デバイスＢは、デバイスＡから転送されたデータの内容を判断し、適切な変換モジュール１１４およびアプリケーションを起動する必要がある。
【００５４】
デバイスＢは、プロトコルに対応するアプリケーションが１つしか存在しなければ、ネゴシエーション時に指定されるＡＳＰに応じて、起動すべきアプリケーションを特定することができる。しかし、プロトコルに対応するアプリケーションが複数存在していると、ネゴシエーション時に指定されるＡＳＰに応じて、起動すべきアプリケーションを特定することができない場合がある。
【００５５】
ここで、ＡＳＰの指定とともに、デバイス情報に含まれるパラメータ要素（ベンダＩＤ、プロダクトＩＤ、およびプロダクトクラス）を参照することが考えられる。例えば、デバイス情報からＡ社製のデジタルカメラと判定できれば、ＡＳＰの指定に応じたプロトコル、および、判定したデバイスに対応するアプリケーションを特定することができる。
【００５６】
しかし、デバイス情報を参照しても、同一デバイス上でデータの種類に応じた異なるアプリケーションを起動する場合には困難が生じる場合がある。例えば、写真データと音楽データの両方を処理可能な携帯電話等を使用する場合が想定される。この場合、デバイス情報からデバイスＡのカテゴリを特定しても、起動すべきアプリケーションとして、ユーザが写真データを選択している場合に写真管理用アプリケーションを特定し、音楽データを選択している場合に音楽管理用アプリケーションを特定することができない。
【００５７】
このため、デバイスＡのアプリケーション上でユーザにより選択されているデータの種別に応じて、デバイス情報を動的に変更し、デバイスＢが変更されたデバイス情報を参照して、起動すべきアプリケーションを特定することが提案される。
【００５８】
以下では、図５および図６Ａ、６Ｂを参照しながら、デバイス情報を考慮したアプリケーションの特定方法について説明する。ユーザは、アプリケーション上でデータを選択した状態で、デバイスＡをデバイスＢの通信範囲に配置する。デバイスＡ、Ｂ間では、ＰＣＬＣバージョンおよびデバイスモードのアービトレーションが行われて、ＣＮＬ接続が確立される（ステップＳ１０１）。
【００５９】
ＣＮＬ接続が確立されると、デバイス情報の交換およびデバイス認証を通じて相互認証が行われる。デバイスＡの上位層１００は、選択されているデータの種別に応じてデバイス情報を動的に変更し（Ｓ１０３）、ＰＣＬＣ１１０に送る（Ｓ１０５）。デバイスＢの上位層１００´は、ＰＣＬＣ１１０´を介して、変更されたデバイス情報を取得する（Ｓ１０７、Ｓ１０９）。そして、デバイスＡがデバイスＢのデバイス情報を取得すると、デバイスＡ、Ｂ間でデバイス認証が行われる（Ｓ１１１）。ここで、デバイス情報の変更方法としては、プロダクトクラスの情報の少なくとも一部を動的に変更することが考えられる。なお、プロダクトクラスに代えて、またはプロダクトクラスと併せて、プロダクトＩＤの情報を変更してもよい。以下では、プロダクトクラスの情報を変更する場合を想定して説明する。
【００６０】
第１の変更方法として、図６Ａに示すように、選択されているデータの種別に応じて、デバイスＡ本来のカテゴリとは異なるカテゴリを示すように、プロダクトクラスの情報を変更することが考えられる。例えば、デバイスＡが携帯電話１０であり、写真データＤ１が選択されている場合に、プロダクトクラスを０ｘ０００１（デジタルカメラ）に変更し、音楽データＤ２が選択されている場合に、プロダクトクラスを０ｘ０００２（音楽プレイヤ）に変更する。
【００６１】
第２の変更方法として、図６Ｂに示すように、選択されているデータの種別に応じた情報を、プロダクトクラスの情報に付加するように、プロダクトクラスの情報を変更することが考えられる。例えば、デバイスＡが携帯電話１０であり、写真データＤ１が選択されている場合に、プロダクトクラスを０ｘ００３１（携帯電話／写真データ）に変更し、音楽データＤ２が選択されている場合に、プロダクトクラスを０ｘ００３２（携帯電話／音楽データ）に変更する。なお、この例では、プロダクトクラスの上位１２ビット「０ｘ００３」が携帯電話１０のカテゴリ（携帯電話）を表し、下位４ビットがデータの種別（写真データ／音楽データ）を表すサブクラスとして定義されている。
【００６２】
相互認証に成功すると、ＡＳの設定を通じてネゴシエーションが行われる。デバイスＡの上位層１００は、デバイスＢからＡＳＰリストを取得し（Ｓ１１３〜Ｓ１１７）、自装置およびデバイスＢが利用可能な１のプロトコルに対応するＡＳＰをＡＳＰリストから選択・指定する（Ｓ１１９）。そして、デバイスＢの上位層１００´は、ＰＣＬＣ１１０´を介して、指定されたＡＳＰを取得する（Ｓ１２１〜Ｓ１２５）。上位層１００´は、デバイス情報からデータの種別を特定し、ＡＳＰからプロトコルを特定することでＡＳを特定する（Ｓ１２７）。
【００６３】
上位層１００´は、ＡＳの特定成功および特定したＡＳをＰＣＬＣ１１０´に通知する（Ｓ１２９）。ＰＣＬＣ１１０´は、特定したＡＳに対応する変換モジュール１１４を選択して起動する（Ｓ１３１）。デバイスＡのＰＣＬＣ１１０は、特定されたＡＳに対応する変換モジュール１１４を選択して起動し（Ｓ１３５）、上位層１００に通知する（Ｓ１３７）。これにより、デバイスＡ、Ｂ間でＡＳの設定が完了し（Ｓ１３９）、デバイスＢの上位層１１０´は、データの種別およびプロトコルに対応するアプリケーションを選択して起動する（Ｓ１４１）。
【００６４】
第１の変更方法が適用されていれば、デバイスＢのアプリケーションは、プロダクトクラスから特定されるデバイスＡのカテゴリを考慮して、起動すべきアプリケーションを特定することができる。例えば、デバイスＢは、写真データ／音楽データが選択されている場合には、プロダクトクラスから特定されるデバイスＡのカテゴリ（デジタルカメラ／音楽プレイヤ）を参照して、写真管理用／音楽管理用アプリケーションを起動する。
【００６５】
また、第２の変更方法が適用されていれば、デバイスＢは、プロダクトクラスのサブクラスから特定されるデータの種別を考慮して、起動すべきアプリケーションを特定することができる。例えば、デバイスＢは、写真データ／音楽データが選択されている場合には、プロダクトクラスから特定されるデータの種別（写真データ／音楽データ）を参照して、写真管理用／音楽管理用アプリケーションを起動する。
【００６６】
［４．通信方法の詳細］
つぎに、通信システムの動作について詳細に説明する。図７Ａおよび７Ｂは、ＣＮＬ接続の確立時の処理例を示すシーケンス図である。図８は、相互認証時の処理例を示すシーケンス図である。図９は、ネゴシエーション時の処理例を示すシーケンス図である。
【００６７】
［４−１．ＣＮＬ接続の確立］
図７Ａには、Ｐ／ＦモードのデバイスＡと、ＲモードのデバイスＢの間でＣＮＬ接続を確立する処理例が示されている。この場合、デバイスＡがイニシエータとして機能し、デバイスＢがレスポンダとして機能する。デバイスＡ、Ｂが通信範囲に配置されると、ＣＮＬ接続の確立が開始される。
【００６８】
デバイスＡでは、ＰＣＬＣ１１０がデバイスＡのＰＣＬＣバージョン（ＰＣＬＣバージョンＡ）、デバイスＡのデバイスモード（Ｐ／Ｆモード）の情報を伴う接続要求をＣＮＬ１０４に送り、ＣＮＬ１０４が接続要求（Ｃ−Ｒｅｑ）をデバイスＢに送信する。デバイスＢでは、ＣＮＬ１０４´が要求を受信し、デバイスＡの固有ＩＤ（ＵＩＤＡ）、ＰＣＬＣバージョンＡ、Ｐ／Ｆモードの情報を伴う接続指示をＰＣＬＣ１１０´に送る。
【００６９】
ＰＣＬＣ１１０´は、ＰＣＬＣバージョンおよびデバイスモードの各々についてアービトレーションを行う。ＰＣＬＣバージョンのアービトレーションでは、デバイスＡ、Ｂで利用可能なＰＣＬＣバージョンのうち、デバイスＡ、Ｂ間で互換性を維持可能な最新のＰＣＬＣバージョンが選択される。また、デバイスモードのアービトレーションでは、デバイスＡ、Ｂのデバイスモードが比較され、レスポンダとして機能するデバイスが決定される。
【００７０】
図７Ａでは、デバイスＡがＰ／Ｆモード、デバイスＢがＲモードであるので、デバイスＢがレスポンダとなる。なお、固有ＩＤは、例えば、デバイスＡ、Ｂの双方がＰモードまたはＦモードである場合に、レスポンダとして機能するデバイスを決定するために利用される。
【００７１】
ＰＣＬＣ１１０´がデバイスＢの固有ＩＤ（ＵＩＤＢ）、アービトレートされたＰＣＬＣバージョン、およびデバイスＢのデバイスモード（Ｒモード）の情報を伴う承認要求をＣＮＬ１０４´に送り、ＣＮＬ１０４´が接続承認（Ｃ−Ａｃｃ）をデバイスＡに送信する。
【００７２】
デバイスＡでは、ＣＮＬ１０４が承認を取得し、承認要求と同じ情報を伴うＣＮＬ承認指示をＰＣＬＣ１１０に送る。ＰＣＬＣ１１０は、ＰＣＬＣバージョンおよびデバイスモードの各々についてアービトレーションを行い、ＵＩＤＢの情報を伴う承認応答をＣＮＬ１０４に送る。また、ＰＣＬＣ１１０は、確認（ＡＣＫ）をデバイスＢに送信するとともに、接続成功の情報を伴う状態変更指示をＰＣＬＣ−ＳＡＰ１２１を通じて上位層１００に送る。デバイスＢでは、ＣＮＬ１０４´が確認を受信し、ＵＩＤＡの情報を伴う承認応答をＰＣＬＣ１１０´に送る。ＰＣＬＣ１１０´は、接続成功の情報を伴う状態変更指示をＰＣＬＣ−ＳＡＰ１２１を通じて上位層１００´に送る。
【００７３】
図７Ｂには、ＰモードのデバイスＡとＦモードのデバイスＢの間でＣＮＬ接続を確立する処理例が示されている。この場合、まず、デバイスＡ、Ｂがイニシエータとして機能し、デバイスモードのアービトレーションの後に、デバイスＡがイニシエータ、デバイスＢがレスポンダとして機能する。デバイスＡ、Ｂが通信範囲に配置されると、ＣＮＬ接続の確立が開始される。
【００７４】
デバイスＡ、Ｂでは、各々に、ＰＣＬＣ１１０、１１０´が接続要求をＣＮＬ１０４、１０４´に送り、ＣＮＬ１０４、１０４´が接続要求（Ｃ−Ｒｅｑ）をピアデバイスに／から送信／受信し、接続指示をＰＣＬＣ１１０、１１０´に送る。デバイスＡ、Ｂでは、ＰＣＬＣ１１０、１１０´がＰＣＬＣバージョンおよびデバイスモードの各々についてアービトレーションを行う。そして、デバイスモードのアービトレーションによりデバイスＢがレスポンダになると、デバイスＢでは、ＰＣＬＣ１１０´が承認要求をＣＮＬ１０４´に送り、ＣＮＬ１０４´が接続承認（Ｃ−Ａｃｃ）をデバイスＡに送信する。
【００７５】
デバイスＡでは、ＣＮＬ１０４が承認を受信し、承認指示をＰＣＬＣ１１０に送り、ＰＣＬＣ１１０が承認応答をＣＮＬ１０４に送る。また、ＰＣＬＣ１１０は、接続成功の状態の情報を伴う状態変更指示を上位層１００に送り、ＣＮＬ１０４は、確認（ＡＣＫ）をデバイスＢに送信する。デバイスＢでは、ＣＮＬ１０４´が確認を受信し、ＵＩＤＡの情報を伴う承認応答をＰＣＬＣ１１０´に送る。ＰＣＬＣ１１０´は、接続成功の情報を伴う状態変更を上位層１００´に送る。
【００７６】
［４−２．相互認証］
図８には、ＣＮＬ接続の確立後に、優先デバイスであるデバイスＡと非優先デバイスであるデバイスＢの間で、相互認証を行う処理例が示されている。
【００７７】
デバイスＡでは、上位層１００は、前述したように、ユーザにより選択されているデータの種別に応じて自装置のデバイス情報を動的に変更し、ＰＣＬＣ１１０に送る。デバイスＡでは、ＰＣＬＣ１１０がデバイスＡの変更されたデバイス情報を伴うデバイス情報要求メッセージを、デバイスＢに送信する。デバイスＢでは、ＰＣＬＣ１１０´がデバイスＢのデバイス情報を伴うデバイス情報応答メッセージを、デバイスＡのＰＣＬＣ１１０に送る。デバイスＡ、Ｂでは、ＰＣＬＣ１１０、１１０´が相互認証の開始および認証パラメータの情報を伴う状態変更指示を上位層１００、１００´に送る。認証パラメータは、ピアデバイスの固有ＩＤおよびデバイス情報を含む。
【００７８】
デバイスＡでは、ＰＣＬＣ１１０が認証保留の情報を伴う認証要求メッセージをデバイスＢに送信し、デバイスＢでは、ＰＣＬＣ１１０´が認証保留の情報を伴う認証応答メッセージをデバイスＡに送信する。デバイスＡでは、ＰＣＬＣ１１０が認証応答メッセージを受信すると、新たな認証要求メッセージをデバイスＢに送信する。
【００７９】
デバイスＡでは、ＰＣＬＣ１１０が認証成功の情報を伴う認証要求を上位層１００から受けると、認証応答を上位層１００に送る。これにより、デバイスＡのデバイス認証が完了する。デバイスＡでは、ＰＣＬＣ１１０が認証成功の情報を伴う認証要求メッセージをデバイスＢに送信する。しかし、デバイスＢでは、デバイス認証が完了していないので、ＰＣＬＣ１１０´が認証保留の情報を伴う認証応答メッセージをデバイスＡに送信する。
【００８０】
デバイスＢでは、ＰＣＬＣ１１０´が認証成功の情報を伴う認証要求を上位層１００´から受けると、認証応答を上位層１００´に送る。これにより、デバイスＢのデバイス認証が完了する。ＰＣＬＣ１１０´は、認証成功の情報を伴う認証要求メッセージを受信すると、認証成功の情報を伴う認証応答メッセージをデバイスＡに送信する。そして、デバイスＡ、Ｂの双方でデバイス認証が完了すると、デバイスＡ、Ｂでは、ＰＣＬＣ１１０、１１０´が認証完了の情報を伴う状態変更指示を上位層１００、１００´に送る。
【００８１】
［４−３．ネゴシエーション］
図９には、ＣＮＬ接続の確立および相互認証が行われた後に、優先デバイスであるデバイスＡと非優先デバイスであるデバイスＢの間で、ネゴシエーションを行う処理例が示されている。
【００８２】
デバイスＡ、Ｂでは、ＰＣＬＣ１１０、１１０´がデバイスモードをＦ／Ｒモードに設定する。デバイスＡでは、ＰＣＬＣ１１０、１１０´が上位層１００、１００´からＰモード設定要求を受けると、デバイスモードをＰモードに設定し、Ｐモード設定応答を上位層１００、１００´に送る。デバイスＡ、Ｂでは、ＣＮＬ接続の確立および相互認証が行われた後に、ネゴシエーションが行われる。
【００８３】
デバイスＡでは、サービス取得要求を上位層１００から受けると、ＰＣＬＣ１１０がサービス取得要求メッセージをデバイスＢに送信する。デバイスＢでは、ＰＣＬＣ１１０´がサービス取得要求メッセージを受信し、サービス取得指示を上位層１００´に送り、サービス取得応答を上位層１００´から受け、サービス取得応答メッセージをデバイスＡに送信する。サービス取得応答およびサービス取得応答メッセージは、デバイスＢがサポートするＡＳを示すＡＳＰリストを伴う。
【００８４】
デバイスＡでは、ＰＣＬＣ１１０がサービス取得応答メッセージを受信し、ＡＳＰリストを伴うサービス取得応答を上位層１００に送る。ここで、上位層１００は、例えば、デバイスＢから取得したＡＳＰリストを検索し、デバイスＡにより起動されるＡＳが利用可能であるかを判定する。この例は、デバイスＡにより起動されるＡＳがデバイスＢによりサポートされている場合を示している。上位層１００は、所定のＡＳを、デバイスＢによりアービトレートされたプロトコルバージョンおよびプロトコルクラスにより設定する。
【００８５】
上位層１００は、デバイスＢに特定のＡＳの開始を要求するために、サービス設定要求をＰＣＬＣ１１０に送る。ＰＣＬＣ１１０は、サービス設定要求メッセージをデバイスＢに送信する。サービス設定要求およびサービス設定要求メッセージは、特定のＡＳのサービス開始を示す情報を伴う。
【００８６】
デバイスＢでは、ＰＣＬＣ１１０´がメッセージを受信し、サービス設定指示を上位層１００´に送る。上位層１００´は、前述したように、デバイスＡのアプリケーション上で選択されているデータの種別を特定可能な情報をデバイス情報から抽出する。そして、データの種別および特定のＡＳに対応するアプリケーションを選択する。
【００８７】
ここで、上位層１００´は、例えば、デバイスＡにより要求されたＡＳが利用可能であるかを判定する。図９は、デバイスＡにより要求されたＡＳが利用可能である場合を示している。デバイスＡによるＡＳの設定により、デバイスＢの上位層１００´でアプリケーションが起動されることで、ＡＳが利用可能となった場合、サービス設定応答が実行される。
【００８８】
上位層１００´は、サービス設定応答をＰＣＬＣ１１０´に送る。ＰＣＬＣ１１０´は、ＡＳＰにより指定されたプロトコルに対応する変換モジュール１１４を起動し、サービス設定応答メッセージをデバイスＡに送信する。デバイスＡでは、ＰＣＬＣ１１０がメッセージを受信し、ＡＳＰにより指定されたプロトコルに対応する変換モジュール１１４を起動し、サービス設定応答を上位層１１０に送る。デバイスＡ、Ｂでは、ＰＣＬＣ１１０、１１０´がサービス開始の情報を伴う状態変更指示を上位層１００、１００´に送る。
【００８９】
［５．まとめ］
以上説明したように、本実施形態に係る通信システムによれば、アプリケーション上で選択されているデータの種別に応じて、認証情報（デバイス情報）が動的に変更されて他の通信装置に送信される。また、自装置および他の通信装置が利用可能な１のプロトコルが選択され、選択されたプロトコルを示す情報（ＡＳＰ）が他の通信装置に送信される。そして、データの種別および選択されたプロトコルに対応するアプリケーションが他の通信装置により起動される。これにより、他の通信装置は、プロトコルに対応するアプリケーションが複数存在していても、選択されているデータの種別に応じて動的に変更される認証情報を参照して、起動すべきアプリケーションを特定することができる。
【００９０】
以上、添付図面を参照しながら本発明の好適な実施形態について詳細に説明したが、本発明はかかる例に限定されない。本発明の属する技術の分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本発明の技術的範囲に属するものと了解される。
【００９１】
例えば、上記実施形態の説明では、相互認証処理のデバイス認証前（デバイス情報の交換時）に、デバイス情報の変更および通知を行う場合について説明した。しかし、デバイス情報の変更および／または通知は、デバイス認証後またはネゴシエーション処理の開始時（非優先デバイスがＡＳを特定する前）に行われてもよい。
【符号の説明】
【００９２】
１００    アプリケーション層（上位層）
１０２    プロトコル変換層（ＰＣＬ）
１０４    接続層（ＣＮＬ）
１０６    物理層（ＰＨＹ）
１１０    ＰＣＬコントローラ（ＰＣＬＣ）
１１２    ＰＣＬアダプタ（ＰＣＬＡ）
１５０    ベースバンド部
１５２    通信カプラ
１５４    変換モジュール
１６０    ＣＰＵ
【図１】
0005387368.tif 000004
【図２】
0005387368.tif 000005
【図３】
0005387368.tif 000006
【図４】
0005387368.tif 000007
【図５】
0005387368.tif 000008
【図６Ａ】
0005387368.tif 000009
【図６Ｂ】
0005387368.tif 000010
【図７Ａ】
0005387368.tif 000011
【図７Ｂ】
0005387368.tif 000012
【図８】
0005387368.tif 000013
【図９】
0005387368.tif 000014