説明

通信システム、通信装置および通信方法、並びにプログラム

【課題】複数の通信プロトコルの利点を享受する。
【解決手段】通信装置1のNFC通信部51では、通信装置2のNFC通信部61との間で、NFCによる通信が行われ、これにより、Bluetooth(登録商標)による通信(BT通信)が可能であることが認識され、さらに、そのBT通信に要する通信情報としての、BT通信部52と62のBDアドレスが交換される。そして、通信装置1と2では、NFC通信部51と61とのNFCによる通信から、BT通信部52と62とのBT通信に切り換えられ(オーバハンドが行われ)、BT通信部52と62のBDアドレスに基づき、BT通信が行われる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、通信システム、通信装置および通信方法、並びにプログラムに関し、特に、複数の通信プロトコルの利点を享受することができるようにする通信システム、通信装置および通信方法、並びにプログラムに関する。
【背景技術】
【0002】
近年においては、例えば、WLAN(Wireless Local Area Network)や、ブルートゥース(Bluetooth)(登録商標)(以下、適宜、BT通信と略す)、IC(Integrated Circuit)カードシステムなどの無線通信が注目されている。
【0003】
これらのうちの、例えば、ICカードシステムでは、リーダ/ライタが電磁波を発生することにより、いわゆるRF(Radio Frequency)フィールド(磁界)を形成する。そして、リーダ/ライタに、ICカードが近づくと、ICカードは、電磁誘導によって、電源の供給を受けるとともに、リーダ/ライタとの間でデータ伝送を行う。
【0004】
現在実施されているICカードシステムの仕様としては、例えば、タイプA、タイプBと呼ばれているものがある。
【0005】
タイプAは、フィリップス社のMIFARE方式として採用されているもので、リーダ/ライタからICカードへのデータ伝送には、Millerによるデータのエンコードが行われ、ICカードからリーダ/ライタへのデータ伝送には、Manchesterによるデータのエンコードが行われる。また、タイプAでは、データの伝送レートとして、106kbps(kilo bit per second)が採用されている。
【0006】
タイプBでは、リーダ/ライタからICカードへのデータ伝送には、NRZによるデータのエンコードが行われ、ICカードからリーダ/ライタへのデータ伝送には、NRZ-Lよるデータのエンコードが行われる。また、タイプBでは、データの伝送レートとして、106kbpsが採用されている。
【0007】
また、ICカードシステムとしては、複数の通信プロトコルの中から、使用する通信プロトコルを選択し、その選択した通信プロトコルによって通信を行うものが提案されている(例えば、特許文献1参照)。
【0008】
【特許文献1】特開平6−276249号公報
【発明の開示】
【発明が解決しようとする課題】
【0009】
ところで、特許文献1に記載のICカードシステムでは、複数の通信プロトコルによる通信が可能ではあるが、使用する通信プロトコルが選択された後は、その選択された通信プロトコルによる通信が行われる。従って、通信プロトコルが選択された後は、他の通信プロトコルによる通信を行うことができなかった。
【0010】
一方、例えば、ICカードシステムにおいては、例えば、通信相手であるICカードを特定して通信を行う通信プロトコルが採用されている。また、例えば、BT通信では、現在のICカードシステムよりも高速なデータ伝送(通信)が可能な通信プロトコルが採用されている。従って、例えば、ICカードシステムにおいて、通信相手であるICカードを特定した後、通信プロトコルを、BT通信を行う通信プロトコルに切り換えることができれば、高速なデータ伝送が可能となる。即ち、この場合、ICカードシステムで採用されている通信プロトコルにより、通信相手を特定することができ、さらに、BT通信を行う通信プロトコルにより、高速なデータ伝送を行うことができる、といったように、複数の通信プロトコルの利点を享受することができる。
【0011】
本発明は、このような状況に鑑みてなされたものであり、複数の通信プロトコルの利点を享受可能な通信を行うことができるようにするものである。
【課題を解決するための手段】
【0012】
本発明の第1の側面の通信システムは、通信相手に要求を送信する通信装置であるイニシエータと、前記イニシエータの要求に対する応答を返す通信装置であるターゲットとを備える通信システムであって、前記イニシエータが、前記ターゲットとの間で、第1の通信プロトコルによる通信を行う第1のイニシエータ通信手段と、前記ターゲットに対して、通信の通信相手を識別するための情報を要求して取得する識別情報取得手段と、前記ターゲットが利用可能な通信プロトコルの情報を、前記第1の通信プロトコルによる通信によって要求して取得するプロトコル情報取得手段と、前記ターゲットが利用可能な通信プロトコルの情報に基づいて、前記第1の通信プロトコルから切り換える第2の通信プロトコルを選択する選択手段と、前記ターゲットとの通信を、前記第1の通信プロトコルによる通信から、前記第2の通信プロトコルによる通信に切り換えることを要求する切り換え要求送信手段と、前記切り換えの要求に対して、前記ターゲットが送信してくる切り換えの応答を受信する切り換え応答受信手段と、前記ターゲットとの間で、前記切り換えの要求及び応答をやりとりした後で、前記第2の通信プロトコルによる通信を行う第2のイニシエータ通信手段とを有し、前記ターゲットが、前記イニシエータとの間で、第1の通信プロトコルによる通信を行う第1のターゲット通信手段と、前記イニシエータからの、通信の通信相手を識別するための情報の要求に応じて、乱数によるID(Identification)を送信する識別情報送信手段と、前記イニシエータからの、利用可能な通信プロトコルの情報の要求に応じて、前記ターゲットが利用可能な通信プロトコルの情報の応答を返す応答手段と、前記イニシエータからの、前記切り換えの要求を受信する切り換え要求受信手段と、前記切り換えの要求に対して、前記切り換えの応答を返す切り換え応答送信手段と、前記イニシエータとの間で、前記切り換えの要求及び応答をやりとりした後で、前記第2の通信プロトコルによる通信を行う第2のターゲット通信手段とを有することを特徴とする。
【0013】
本発明の第2の側面の通信装置は、通信相手に要求を送信するイニシエータとなる通信装置であって、前記イニシエータの要求に対する応答を返すターゲットとの間で、第1の通信プロトコルによる通信を行う第1のイニシエータ通信手段と、前記ターゲットに対して、通信の通信相手を識別するための情報を要求して取得する識別情報取得手段と、前記ターゲットが利用可能な通信プロトコルの情報を、前記第1の通信プロトコルによる通信によって要求して取得するプロトコル情報取得手段と、前記ターゲットが利用可能な通信プロトコルの情報に基づいて、前記第1の通信プロトコルから切り換える第2の通信プロトコルを選択する選択手段と、前記ターゲットとの通信を、前記第1の通信プロトコルによる通信から、前記第2の通信プロトコルによる通信に切り換えることを要求する切り換え要求送信手段と、前記切り換えの要求に対して、前記ターゲットが送信してくる切り換えの応答を受信する切り換え応答受信手段と、前記ターゲットとの間で、前記切り換えの要求及び応答をやりとりした後で、前記第2の通信プロトコルによる通信を行う第2のイニシエータ通信手段とを備えることを特徴とする。
【0014】
前記第1および第2の通信プロトコルによる通信は、無線通信であり、前記第1のイニシエータ通信手段には、前記ターゲットが近接した状態となっているときに、前記他のターゲットとの間で、前記第1の通信プロトコルによる通信を行わせることができる。
【0015】
前記第1の通信プロトコルでは、近接した状態の前記ターゲットを特定して通信が行われるようにできる。
【0016】
本発明の第2の側面の通信方法は、通信相手に要求を送信するイニシエータとなる通信装置の通信方法であって、前記イニシエータの要求に対する応答を返すターゲットとの間で、第1の通信プロトコルによる通信を行う第1のイニシエータ通信ステップと、前記ターゲットに対して、通信の通信相手を識別するための情報を要求して取得する識別情報取得ステップと、前記ターゲットが利用可能な通信プロトコルの情報を、前記第1の通信プロトコルによる通信によって要求して取得するプロトコル情報取得ステップと、前記ターゲットが利用可能な通信プロトコルの情報に基づいて、前記第1の通信プロトコルから切り換える第2の通信プロトコルを選択する選択ステップと、前記ターゲットとの通信を、前記第1の通信プロトコルによる通信から、前記第2の通信プロトコルによる通信に切り換えることを要求する切り換え要求送信ステップと、前記切り換えの要求に対して、前記ターゲットが送信してくる切り換えの応答を受信する切り換え応答受信ステップと、前記ターゲットとの間で、前記切り換えの要求及び応答をやりとりした後で、前記第2の通信プロトコルによる通信を行う第2のイニシエータ通信ステップとを備えることを特徴とする。
【0017】
本発明の第2の側面のプログラムは、通信相手に要求を送信するイニシエータとなる通信装置として、コンピュータを機能させるプログラムであって、前記イニシエータの要求に対する応答を返すターゲットとの間で、第1の通信プロトコルによる通信を行う第1のイニシエータ通信ステップと、前記ターゲットに対して、通信の通信相手を識別するための情報を要求して取得する識別情報取得ステップと、前記ターゲットが利用可能な通信プロトコルの情報を、前記第1の通信プロトコルによる通信によって要求して取得するプロトコル情報取得ステップと、前記ターゲットが利用可能な通信プロトコルの情報に基づいて、前記第1の通信プロトコルから切り換える第2の通信プロトコルを選択する選択ステップと、前記ターゲットとの通信を、前記第1の通信プロトコルによる通信から、前記第2の通信プロトコルによる通信に切り換えることを要求する切り換え要求送信ステップと、前記切り換えの要求に対して、前記ターゲットが送信してくる切り換えの応答を受信する切り換え応答受信ステップと、前記ターゲットとの間で、前記切り換えの要求及び応答をやりとりした後で、前記第2の通信プロトコルによる通信を行う第2のイニシエータ通信ステップとを、コンピュータに実行させる。
【0018】
本発明の第3の側面の通信装置は、通信相手に要求を送信するイニシエータの要求に対する応答を返すターゲットとなる通信装置であって、前記イニシエータとの間で、第1の通信プロトコルによる通信を行う第1のターゲット通信手段と、前記イニシエータからの、通信の通信相手を識別するための情報の要求に応じて、乱数によるID(Identification)を送信する識別情報送信手段と、前記イニシエータからの、利用可能な通信プロトコルの情報の要求に応じて、前記ターゲットが利用可能な通信プロトコルの情報の応答を返す応答手段と、前記イニシエータが、前記ターゲットが利用可能な通信プロトコルの情報に基づいて、前記第1の通信プロトコルから切り換える第2の通信プロトコルを選択し、前記ターゲットとの通信を、前記第1の通信プロトコルによる通信から、前記第2の通信プロトコルによる通信に切り換えることを要求することにより送信されてくる切り換えの要求を受信する切り換え要求受信手段と、前記切り換えの要求に対して、前記第1の通信プロトコルによる通信を前記第2の通信プロトコルによる通信に切り換えることを応答する切り換えの応答を返す切り換え応答送信手段と、前記イニシエータとの間で、前記切り換えの要求及び応答をやりとりした後で、前記第2の通信プロトコルによる通信を行う第2のターゲット通信手段とを備えることを特徴とする。
【0019】
本発明の第3の側面の通信方法は、通信相手に要求を送信するイニシエータの要求に対する応答を返すターゲットとなる通信装置の通信方法であって、前記イニシエータとの間で、第1の通信プロトコルによる通信を行う第1のターゲット通信ステップと、前記イニシエータからの、通信の通信相手を識別するための情報の要求に応じて、乱数によるID(Identification)を送信する識別情報送信ステップと、前記イニシエータからの、利用可能な通信プロトコルの情報の要求に応じて、前記ターゲットが利用可能な通信プロトコルの情報の応答を返す応答ステップと、前記イニシエータが、前記ターゲットが利用可能な通信プロトコルの情報に基づいて、前記第1の通信プロトコルから切り換える第2の通信プロトコルを選択し、前記ターゲットとの通信を、前記第1の通信プロトコルによる通信から、前記第2の通信プロトコルによる通信に切り換えることを要求することにより送信されてくる切り換えの要求を受信する切り換え要求受信ステップと、前記切り換えの要求に対して、前記第1の通信プロトコルによる通信を前記第2の通信プロトコルによる通信に切り換えることを応答する切り換えの応答を返す切り換え応答送信ステップと、前記イニシエータとの間で、前記切り換えの要求及び応答をやりとりした後で、前記第2の通信プロトコルによる通信を行う第2のターゲット通信ステップとを備えることを特徴とする。
【0020】
本発明の第3の側面のプログラムは、通信相手に要求を送信するイニシエータの要求に対する応答を返すターゲットとなる通信装置としてコンピュータを機能させるプログラムであって、前記イニシエータとの間で、第1の通信プロトコルによる通信を行う第1のターゲット通信ステップと、前記イニシエータからの、通信の通信相手を識別するための情報の要求に応じて、乱数によるID(Identification)を送信する識別情報送信ステップと、前記イニシエータからの、利用可能な通信プロトコルの情報の要求に応じて、前記ターゲットが利用可能な通信プロトコルの情報の応答を返す応答ステップと、前記イニシエータが、前記ターゲットが利用可能な通信プロトコルの情報に基づいて、前記第1の通信プロトコルから切り換える第2の通信プロトコルを選択し、前記ターゲットとの通信を、前記第1の通信プロトコルによる通信から、前記第2の通信プロトコルによる通信に切り換えることを要求することにより送信されてくる切り換えの要求を受信する切り換え要求受信ステップと、前記切り換えの要求に対して、前記第1の通信プロトコルによる通信を前記第2の通信プロトコルによる通信に切り換えることを応答する切り換えの応答を返す切り換え応答送信ステップと、前記イニシエータとの間で、前記切り換えの要求及び応答をやりとりした後で、前記第2の通信プロトコルによる通信を行う第2のターゲット通信ステップとを、コンピュータに実行させる。
【0021】
本発明の第1の側面においては、ターゲットとの間で、第1の通信プロトコルによる通信が行われ、ターゲットに対して、通信の通信相手を識別するための情報が要求されて取得され、ターゲットが利用可能な通信プロトコルの情報が、第1の通信プロトコルによる通信によって要求して取得され、ターゲットが利用可能な通信プロトコルの情報に基づいて、第1の通信プロトコルから切り換える第2の通信プロトコルが選択され、ターゲットとの通信を、第1の通信プロトコルによる通信から、第2の通信プロトコルによる通信に切り換えることが要求され、切り換えの要求に対して、ターゲットが送信してくる切り換えの応答が受信され、ターゲットとの間で、切り換えの要求及び応答をやりとりした後で、第2の通信プロトコルによる通信が行われる。また、イニシエータとの間で、第1の通信プロトコルによる通信が行われ、イニシエータからの、通信の通信相手を識別するための情報の要求に応じて、乱数によるID(Identification)が送信され、イニシエータからの要求に応じて、ターゲットが利用可能な通信プロトコルの情報の応答が返され、イニシエータからの、切り換えの要求が受信され、切り換えの要求に対して、切り換えの応答が返され、イニシエータとの間で、切り換えの要求及び応答をやりとりした後で、第2の通信プロトコルによる通信が行われる。
【0022】
本発明の第2の側面においては、ターゲットとの間で、第1の通信プロトコルによる通信が行われ、ターゲットに対して、通信の通信相手を識別するための情報が要求されて取得され、ターゲットが利用可能な通信プロトコルの情報が、第1の通信プロトコルによる通信によって要求して取得され、ターゲットが利用可能な通信プロトコルの情報に基づいて、第1の通信プロトコルから切り換える第2の通信プロトコルが選択され、ターゲットとの通信を、第1の通信プロトコルによる通信から、第2の通信プロトコルによる通信に切り換えることが要求され、切り換えの要求に対して、ターゲットが送信してくる切り換えの応答が受信され、ターゲットとの間で、切り換えの要求及び応答をやりとりした後で、第2の通信プロトコルによる通信が行われる。
【0023】
本発明の第3の側面においては、イニシエータとの間で、第1の通信プロトコルによる通信が行われ、イニシエータからの、通信の通信相手を識別するための情報の要求に応じて、乱数によるID(Identification)が送信され、イニシエータからの要求に応じて、ターゲットが利用可能な通信プロトコルの情報の応答が返され、イニシエータからの、切り換えの要求が受信され、切り換えの要求に対して、切り換えの応答が返され、イニシエータとの間で、切り換えの要求及び応答をやりとりした後で、第2の通信プロトコルによる通信が行われる。
【発明の効果】
【0024】
本発明の一側面によれば、複数の通信プロトコルの利点を享受可能な通信を行うことができるようになる。
【発明を実施するための最良の形態】
【0025】
図1は、本発明を適用した通信システム(システムとは、複数の装置が論理的に結合したもの物をいい、各構成の装置が同一筐体中にあるか否かは問わない)の一実施の形態の構成例を示している。
【0026】
図1においては、通信システムは、3つの通信装置1,2,3から構成されている。通信装置1乃至3それぞれは、例えば、複数の通信プロトコルによる通信を行うことができるようになっている。
【0027】
なお、通信システムを構成する通信装置は、3つの通信装置1乃至3に限定されるものではなく、2つの通信装置や4以上の通信装置であっても良い。
【0028】
また、図1の通信システムは、通信装置1乃至3のうちの1以上をリーダ/ライタとするとともに、他の1以上をICカードとするICカードシステムとして採用することができることは勿論、通信装置1乃至3それぞれを、通信機能を備えるPDA(Personal Digital Assistant)、PC(Personal Computer)、携帯電話、腕時計、ペン等の携帯可能な端末とする通信システムとして採用することも可能である。即ち、通信装置1乃至3は、ICカードシステムのICカードやリーダ/ライタなどに限定されるものではない。また、通信システムは、通信装置1,2、または3の他、例えば、従来のICカードシステムを構成するICカードやリーダ/ライタなどを含めて構成することも可能である。
【0029】
但し、ここでは、通信装置1乃至3それぞれは、無線通信を行う機能を有するものとし、複数の通信プロトコルには、NFC(Near Field Communication)が含まれるものとする。
【0030】
NFCは、他の通信装置との間で、単一の周波数の搬送波を使用した、電磁誘導による近接通信の通信プロトコルで、搬送波の周波数としては、例えば、ISM(Industrial Scientific Medical)バンドの13.56MHzなどが採用される。
【0031】
ここで、近接通信とは、通信する装置どうしの距離が、数10cm以内となって可能となる通信を意味し、通信する装置どうし(の筐体)が接触して行う通信も含まれる。
【0032】
NFCでは、2つの通信モードによる通信が可能である。2つの通信モードとしては、パッシブモードとアクティブモードとがある。いま、通信装置1乃至3のうちの、例えば、通信装置1と2の間の通信に注目すると、パッシブモードでは、上述した従来のICカードシステムと同様に、通信装置1と2のうちの一方の通信装置である、例えば、通信装置1は、自身が発生する電磁波(に対応する搬送波)を変調することにより、他方の通信装置である通信装置2にデータを送信し、通信装置2は、通信装置1が発生する電磁波(に対応する搬送波)を負荷変調することにより、通信装置1にデータを送信する。
【0033】
一方、アクティブモードでは、通信装置1と2のいずれも、自身が発生する電磁波(に対応する搬送波)を変調することにより、データを送信する。
【0034】
ここで、電磁誘導による近接通信を行う場合、最初に電磁波を出力して通信を開始し、いわば通信の主導権を握る装置を、イニシエータと呼ぶ。イニシエータは、通信相手にコマンド(要求)を送信し、その通信相手は、そのコマンドに対するレスポンス(応答)を返す形で、近接通信が行われるが、イニシエータからのコマンドに対するレスポンスを返す通信相手を、ターゲットと呼ぶ。
【0035】
例えば、いま、通信装置1が電磁波の出力を開始して、通信装置2との通信を開始したとすると、図2および図3に示すように、通信装置1がイニシエータとなり、通信装置2がターゲットとなる。
【0036】
そして、パッシブモードでは、図2に示すように、イニシエータである通信装置1が電磁波を出力し続け、通信装置1は、自身が出力している電磁波を変調することにより、ターゲットである通信装置2に、データを送信するとともに、通信装置2は、イニシエータである通信装置1が出力している電磁波を負荷変調することにより、通信装置1に、データを送信する。
【0037】
一方、アクティブモードでは、図3に示すように、イニシエータである通信装置1は、自身がデータを送信する場合に、自身で電磁波の出力を開始し、その電磁波を変調することにより、ターゲットである通信装置2に、データを送信する。そして、通信装置1は、データの送信終了後は、電磁波の出力を停止する。ターゲットである通信装置2も、自身がデータを送信する場合に、自身で電磁波の出力を開始し、その電磁波を変調することにより、ターゲットである通信装置2に、データを送信する。そして、通信装置2は、データの送信終了後は、電磁波の出力を停止する。
【0038】
次に、図4は、図1の通信装置1のNFCによる通信を行う部分の構成例を示している。なお、図1の他の通信装置2および3も、NFCによる通信を行う部分については、図4の通信装置1と同様に構成されるため、その説明は、省略する。
【0039】
アンテナ11は、閉ループのコイルを構成しており、このコイルに流れる電流が変化することで、電磁波を出力する。また、アンテナ11としてのコイルを通る磁束が変化することで、アンテナ11に電流が流れる。
【0040】
受信部12は、アンテナ11に流れる電流を受信し、同調と検波を行い、復調部13に出力する。復調部13は、受信部12から供給される信号を復調し、デコード部14に供給する。デコード部14は、復調部13から供給される信号としての、例えばマンチェスタ符号などをデコードし、そのデコードの結果得られるデータを、データ処理部15に供給する。
【0041】
データ処理部15は、デコード部14から供給されるデータに基づき、所定の処理を行う。また、データ処理部15は、他の装置に送信すべきデータを、エンコード部16に供給する。
【0042】
エンコード部16は、データ処理部15から供給されるデータを、例えば、マンチェスタ符号などにエンコードし、選択部17に供給する。選択部17は、変調部19または負荷変調部20のうちのいずれか一方を選択し、その選択した方に、エンコード部16から供給される信号を出力する。
【0043】
ここで、選択部17は、制御部21の制御にしたがって、変調部19または負荷変調部20を選択する。制御部21は、通信モードがパッシブモードであり、通信装置1がターゲットとなっている場合は、選択部17に負荷変調部20を選択させる。また、制御部21は、通信モードがアクティブモードである場合、または通信モードがパッシブモードであり、かつ、通信装置1がイニシエータとなっている場合は、選択部17に変調部19を選択させる。従って、エンコード部16が出力する信号は、通信モードがパッシブモードであり、通信装置1がターゲットとなっているケースでは、選択部17を介して、負荷変調部20に供給されるが、他のケースでは、選択部17を介して、変調部19に供給される。
【0044】
電磁波出力部18は、アンテナ11から、所定の単一の周波数の搬送波(の電磁波)を放射させるための電流を、アンテナ11に流す。変調部19は、電磁波出力部18がアンテナ11に流す電流としての搬送波を、選択部17から供給される信号にしたがって変調する。これにより、アンテナ11からは、データ処理部15がエンコード部16に出力したデータにしたがって搬送波を変調した電磁波が放射される。
【0045】
負荷変調部20は、外部からアンテナ11としてのコイルを見たときのインピーダンスを、選択部17から供給される信号にしたがって変化させる。他の装置が搬送波としての電磁波を出力することにより、アンテナ11の周囲にRFフィールド(磁界)が形成されている場合、アンテナ11としてのコイルを見たときのインピーダンスが変化することにより、アンテナ11の周囲のRFフィールドも変化する。これにより、他の装置が出力している電磁波としての搬送波が、選択部17から供給される信号にしたがって変調され、データ処理部15がエンコード部16に出力したデータが、電磁波を出力している他の装置に送信される。
【0046】
ここで、変調部19および負荷変調部20における変調方式としては、例えば、振幅変調(ASK(Amplitude Shift Keying))を採用することができる。但し、変調部19および負荷変調部20における変調方式は、ASKに限定されるものではなく、PSK(Phase Shift Keying)やQAM(Quadrature Amplitude Modulation)その他を採用することが可能である。また、振幅の変調度についても8%から30%、50%、100%等数値に限定されることはなく、好適なものを選択すれば良い。
【0047】
制御部21は、通信装置1を構成する各ブロックを制御する。電源部22は、通信装置1を構成する各ブロックに、必要な電源を供給する。なお、図4では、制御部21が通信装置1を構成する各ブロックを制御することを表す線の図示と、電源部22が通信装置1を構成する各ブロックに電源を供給することを表す線の図示は、図が煩雑になるため、省略してある。
【0048】
ここで、上述の場合には、デコード部14およびエンコード部16において、マンチェスタ符号を処理するようにしたが、デコード部14およびエンコード部16では、マンチェスタ符号だけでなく、モディファイドミラーや、NRZなどの複数種類の符号の中から1つを選択して処理するようにすることが可能である。
【0049】
また、通信装置1が、パッシブモードのターゲットとしてしか動作しない場合は、選択部17、電磁波出力部18、変調部19を設けずに、通信装置1を構成することができる。さらに、この場合、電源部22は、例えば、アンテナ11で受信される外部の電磁波から電源を得る。
【0050】
通信装置1乃至3は、上述したように、複数の通信プロトコルによる通信を行うことができる構成を有しており、図4の構成によって行われるNFCによる通信は、複数の通信プロトコルによる通信のうちの1つである。複数の通信プロトコルとしては、NFCの他、例えば、ICカードの通信について規定するISO/IEC(International Organization for Standardization/ International Electrotechnical Commission) 14443や、RFタグ(Radio Frequency Tag)の通信について規定するISO/IEC 15693、Bluetooth、さらには、WLANその他の通信プロトコルを採用することができる。
【0051】
図5は、通信装置1乃至3の通信プロトコルと、OSI階層モデルとの対応関係を示している。
【0052】
通信装置1乃至3において、最上位層である第7層のアプリケーション層(Application Layer)、第6層のプレゼンテーション層(Presentation Layer)、および第5層のセッション層(Session Layer)には、例えば、インターネットのアプリケーション(Internet Application)(例えば、HTTP(Hyper Text Transfer Protocol)やFTP(File Transfer Protocolなど)、その他の任意のアプリケーションなどを採用することができる。
【0053】
第4層のトランスポート層(Transport Layer)には、例えば、TCP(Transmission Control Protocol)や、UDP(User Datagram Protocol)などを採用することができる。
【0054】
第3層のネットワーク層(Network Layer)には、例えば、IP(Internet Protocol)などを採用することができる。
【0055】
第2層のデータリンク層(Data Link Layer)は、上位層のLLC層(Logical Link Control Layer)と、下位層のMAC層(Media Access Control Layer)とに分けることができる。
【0056】
通信装置1乃至3において、LLC層には、NFCIP(Near Field Communication Interface and Protocol)-2が採用されている。ここで、NFCIP-2は、NFCの一部の通信プロトコルであり、その上位層からSAP(Service Access Point)を介して制御することができる。NFCIP-2では、後述するNFCIP-1を介して、通信相手が利用可能な通信プロトコルの情報(以下、適宜、利用可能プロトコル情報という)が取得される。さらに、NFCIP-2は、上位層からの要求に応じ、NFCIP-1を介して、NFCIP-1から切り換えるMAC層(さらには物理層)の通信プロトコルによる通信を行うのに必要な情報(以下、適宜、通信情報という)を、NFCIP-1による通信を行っている通信装置との間で交換する。そして、NFCIP-2は、上位層からの要求に応じ、通信プロトコルを、NFCIP-1から、交換した通信情報に対応する通信プロトコルに切り換える(ハンドオーバする)。なお、NFCIP-1から切り換える通信プロトコルは、利用可能プロトコル情報が表す利用可能な通信プロトコルの中から選択される。
【0057】
以上のように、通信装置1乃至3は、NFCIP-2を実装することで、MAC層(さらには物理層)の通信プロトコルを切り換える(ハンドオーバ)ことができる。
【0058】
MAC層には、例えば、NFCIP-1や、ICカードに採用されているISO/IEC 14443-2,ISO/IEC 14443-3,ISO/IEC 14443-4、RFタグ(RF Tag)に採用されているISO/IEC 15693-2、Bluetooth、さらには、WLANその他の通信プロトコル(Other protocol)を採用することができる。なお、本実施の形態では、例えば、通信装置1乃至3において、MAC層に、NFCIP-1を含む複数の通信プロトコルが採用されているものとする。
【0059】
ここで、NFCIP-1は、NFCの一部の通信プロトコルであり、周囲のRFフィールドの有無を検出し、RFフィールドが検出されなかった場合に、電磁波を出力する(自身がRFフィールドを形成する)。また、NFCIP-1は、RFフィールド内に通信相手が存在するとき、即ち、通信相手と近接した状態となったときに、その通信相手から、乱数によるID(Identification)を取得し、そのIDによって、通信相手を特定して通信を行う。つまり、NFCIP-1によれば、周囲に、複数の装置が存在する場合に、ユーザが、その複数の装置の中から、通信相手とする装置を選択する操作を行わなくても、通信相手とする装置を特定し、その装置と通信を行うことができる。
【0060】
具体的には、例えば、複数のコンピュータから構成されるWLANにおいては、1のコンピュータが、他の1のコンピュータとデータのやりとりをする場合、1のコンピュータにおいて、画面に表示される、WLANを構成する複数のコンピュータを表すアイコンの中から、データをやりとりする他の1のコンピュータを表すアイコンを、ユーザが選択する操作などを行うことによって、他の1のコンピュータを特定する必要がある。この場合、WLANを構成するコンピュータが多数であるときには、ユーザが、他の1のコンピュータを表すアイコンを探し出すのも面倒である。
【0061】
これに対して、NFCIP-1では、通信相手と近接した状態となったときに、その通信相手から、乱数によるIDを取得し、そのIDによって、通信相手を特定して通信を行う。このため、NFCIP-1によれば、ユーザが、通信装置1(2または3)を、通信相手としたい装置に、例えば、かざすように近づける(近接させる)だけで、通信相手が特定され、通信が行われるので、ユーザは、上述したような面倒な作業をせずに済む。
【0062】
第1層の物理層(Physical Layer)には、通信装置1乃至3がMAC層で採用している通信プロトコルによる通信に必要なデバイスなどが採用される。即ち、NFCIP-1に対しては、例えば、NFCによる通信に専用のデバイス(NFC Devices)や、カートリッジメモリデバイス(Cartridge Memory device)について規定するISO/IEC 22050を物理層に採用することができる。また、ISO/IEC 14443-2,ISO/IEC 14443-3,ISO/IEC 14443-4に対しては、例えば、コンパチブルICカード(compatible IC Cards)について規定するISO/IEC 14443を物理層に採用することができる。さらに、ISO/IEC 15693-2に対しては、RFタグによる通信に専用のデバイス(RF Tag)を物理層に採用することができる。また、Bluetoothについては、Bluetoothによる通信に専用のデバイス(Bluetooth devices)を採用することができる。さらに、WLANその他のMAC層の通信プロトコルについては、その通信プロトコルによる通信に専用のデバイス(Other devices)を物理層に採用することができる。
【0063】
次に、図6は、NFCの一部であるNFCIP-2においてやりとりされるデータのフォーマットを示している。
【0064】
NFCIP-2では、NFCIP-2 PDU(Protocol Data Unit)と呼ばれる単位で、データがやりとりされる。
【0065】
NFCIP-2 PDUは、PPP(Point to Point Protocol)でやりとりされるパケットと同一フォーマットとなっており、これにより、NFCIP-2と、PPPとの親和性の向上が図られている。
【0066】
NFCIP-2 PDUは、その先頭から、スタートマーク部(Start Mark)、アドレス部(Address)、コントロール部(Control)、プロトコル部(Protocol)、NFCIP-2ヘッダ部(NFCIP-2 header)、データ部(Data)、CRC部(CRC)、エンドマーク部(End Mark)が順次配置されて構成される。
【0067】
スタートマーク部には、NFCIP-2 PDUのスタートを表すスタートマークとしての、例えば、1バイトの7Eh(hは、その前の値が16進数であることを表す)が配置される。アドレス部には、所定のデータとしての、例えば、1バイトのFFhが配置される。コントロール部にも、所定のデータとしての、例えば、1バイトの03hが配置される。
【0068】
ここで、NFCIP-2において、以上のスタートマーク部、アドレス部、およびコントロール部に配置されるデータは、PPPにおける場合と同一である。
【0069】
プロトコル部には、例えば、2バイトの0001hが配置される。ここで、PPPでは、プロトコル部に0001hが配置されている場合は、データ部に配置されたデータが、特に意味のないものであるとされるが、NFCIP-2では、プロトコル部に0001hが配置されている場合に、パケット(PDU)がNFCIP-2 PDUであるとして扱われる。
【0070】
NFCIP-2ヘッダ部には、後述する図7で説明する6バイトのヘッダ情報が配置される。データ部には、必要なデータが配置される。CRC部には、アドレス部、コントロール部、プロトコル部、NFCIP-2ヘッダ部、データ部を対象として求められたCRC(Cyclic Redundancy Checking)コードが配置される。
【0071】
エンドマーク部には、NFCIP-2 PDUのおわりを表すエンドマークとしての、例えば、1バイトの7Ehが配置される。このエンドマークは、PPPにおける場合と同一である。
【0072】
図7は、図6のNFCIP-2ヘッダ部に配置されるヘッダ情報のフォーマットを示している。
【0073】
ヘッダ情報は、上述したように、6バイトで構成される。そして、その先頭から1バイト目、2バイト目、3バイト目には、NFCの文字のうちの、N,F,Cの文字を表すコード4Eh,46h,43hが、それぞれ配置される。4バイト目には、NFCのバージョンを表す値が配置される。なお、図7では、NFCのバージョンを表す値は、21hになっている。
【0074】
5バイト目は、将来の拡張用(RFU(Reserved for Future Use))で、図7では、00hとなっている。
【0075】
6バイト目には、各種の要求(request)や、要求に対する応答(response)を表すディレクティブコード(Directive Code)が配置される。即ち、図4で説明したように、NFCでは、イニシエータとターゲットとの間で、イニシエータが要求を送信し、ターゲットがその要求に対する応答を返す形で、通信が行われる。ヘッダ情報の6バイト目には、その要求や応答を表すコードであるディレクティブコードが配置される。
【0076】
NFCIP-2では、上述したように、通信相手が利用可能な通信プロトコルの情報である利用可能プロトコル情報が取得され、その利用可能プロトコル情報が表す利用可能な通信プロトコルの中に含まれる、ある通信プロトコルによる通信を行うのに必要な情報である通信情報が交換される。そして、NFCIP-2は、通信プロトコルを、NFCIP-1から、交換した通信情報に対応する通信プロトコルに切り換える(ハンドオーバする)。
【0077】
利用可能プロトコル情報の要求には、アベイラブルメディアリクエスト(AVAILABLE_MEDIA Request)が、イニシエータからターゲットに送信される。アベイラブルメディアリクエストに対する応答としては、アベイラブルメディアレスポンス(AVAILABLE_MEDIA Response)が、ターゲットからイニシエータに送信される。
【0078】
また、通信プロトコルの切り換え(ハンドオーバ)の要求には、メディアハンドオーバリクエスト(MEDIA_HANDOVER Request)が、イニシエータからターゲットに送信される。メディアハンドオーバリクエストに対する応答としては、メディアハンドオーバレスポンス(MEDIA_HANDOVER Response)が、ターゲットからイニシエータに送信される。
【0079】
アベイラブルメディアリクエストにおいては、ディレクティブコードが、例えば、22hとされる。さらに、通信相手(ここでは、ターゲット)が利用可能なすべての通信プロトコルの情報(利用可能プロトコル情報)を要求する場合には、データ部に、01hが配置される。
【0080】
また、アベイラブルメディアリクエストにおいて、特定の通信プロトコルの利用可能性を通信相手に要求する場合には、データ部に、その特定の通信プロトコルを表す情報が配置される。
【0081】
即ち、図8は、アベイラブルメディアリクエストにおいて、特定の通信プロトコルの利用可能性を通信相手に要求する場合のNFCIP-2 PDUのデータ部のフォーマットを示している。
【0082】
データ部の先頭には、データ部のデータ長を表すPDUデータ長(Length of PDU Data(n))が配置される。そのデータ長の後は、後述するメディアパラメータパック(Media Parameter Pack)の数を表すメディアパックカウント(Media Pack Count)が配置される。そして、その後に、メディアパラメータパックが、メディアパックカウントが表す数だけ配置される。
【0083】
メディアパラメータパックは、メディアコード部(Media Code)と、属性部(Attribute)とが、その順で配置されて構成される。メディアコード部は、通信プロトコルを表す1バイトのメディアコードが配置され、属性部には、メディアコード部に配置されたメディアコードが表す通信プロトコルに関する情報が配置される。
【0084】
アベイラブルメディアリクエストにおいて、例えば、WLANを規定するIEEE(Institute of Electrical and Electronics Engineers)802.11と、Bluetoothの2つの通信プロトコルの利用可能性を通信相手に要求する場合には、IEEE802.11を表すメディアコードが配置されたメディアパラメータパックと、Bluetoothを表すメディアコードが配置されたメディアパラメータパックの、2つのメディアパラメータパックが、メディアパックカウントの後に配置される。
【0085】
アベイラブルメディアリクエストに対する応答であるアベイラブルメディアレスポンスにおいては、ディレクティブコードが、例えば、23hとされる。さらに、アベイラブルメディアレスポンスにおいては、データ部に、自身(ここでは、アベイラブルメディアリクエストを受信した装置であるターゲット)が利用可能な通信プロトコルを表す情報が配置される。
【0086】
即ち、図9は、アベイラブルメディアレスポンスとしてのNFCIP-2 PDUのデータ部のフォーマットを示している。
【0087】
データ部の先頭には、図8における場合と同様に、PDUデータ長(Length of PDU Data(n))が配置される。さらに、その後に、カレントフェーズ(Current Phase)、ステータス(Status)、エラーコード(Error Code)が順次配置される。ここで、カレントフェーズは、自身が、NFCIP-2の後述するフェーズのうちのいずれのフェーズにあるかを表す。ステータスは、自身の現在の状態(ステータス)を表し、エラーコードは、何らかの処理中にエラーが発生した場合の、そのエラーに対応するコードを表す。
【0088】
エラーコードの後には、メディアパックカウント(Media Pack Count)が配置される。メディアパックカウントは、その後に配置されるメディアパラメータパックの数を表す。
【0089】
メディアパックカウントの後には、自身が利用可能な通信プロトコルごとに、その通信プロトコルを表すメディアパラメータパック(Media Parameter Pack)が、メディアパックカウントが表す数だけ配置される。なお、図9におけるメディアパラメータパックの構成は、図8で説明したものと同一であるので、その説明は、省略する。
【0090】
アベイラブルメディアリクエストを送信したイニシエータは、そのアベイラブルメディアリクエストに対してターゲットが送信してくるアベイラブルメディアレスポンスを受信し、そのアベイラブルメディアレスポンスにおけるメディアパラメータパックを参照することにより、ターゲットが利用可能な通信プロトコルを認識する。
【0091】
なお、イニシエータからのアベイラブルメディアリクエストのデータ部が01hである場合には、ターゲットは、自身が利用可能な通信プロトコルすべてについてのメディアパラメータパックを有するアベイラブルメディアレスポンスを、イニシエータに送信する。また、イニシエータからのアベイラブルメディアリクエストのデータ部が、図8に示したものである場合には、ターゲットは、そのアベイラブルメディアリクエストが有するメディアパラメータパックに対応する通信プロトコルそれぞれについて、自身が利用可能かどうかを表す情報を有するアベイラブルメディアレスポンスを、イニシエータに送信する。
【0092】
メディアハンドオーバリクエストにおいては、ディレクティブコードが、例えば、24hとされる。さらに、データ部に、NFCIP-1からハンドオーバする通信プロトコルの情報が配置される。
【0093】
即ち、図10は、メディアハンドオーバリクエストとしてのNFCIP-2 PDUのデータ部のフォーマットを示している。
【0094】
データ部の先頭には、データ部のデータ長を表すPDUデータ長(Length of PDU Data(11h))が配置される。そのデータ長の後は、NFCIP-1からハンドオーバする通信プロトコルに関するメディアパラメータパック(Media Parameter Pack)が配置される。なお、図10におけるメディアパラメータパックの構成は、図8で説明したものと同一であるので、その説明は、省略する。
【0095】
メディアハンドオーバリクエストに対する応答であるメディアハンドオーバレスポンスにおいては、ディレクティブコードが、例えば、25hとされる。さらに、メディアハンドオーバレスポンスにおいては、データ部に、所定のデータが配置される。
【0096】
即ち、図11は、メディアハンドオーバレスポンスとしてのNFCIP-2 PDUのデータ部のフォーマットを示している。
【0097】
データ部には、その先頭から、PDUデータ長(Length of PDU Data(04h))、カレントフェーズ(Current Phase)、ステータス(Status)、エラーコード(Error Code)が順次配置される。PDUデータ長、カレントフェーズ、ステータス、エラーコードは、図9で説明したものと同様であるため、その説明は、省略する。
【0098】
イニシエータとターゲットとの間では、アベイラブルメディアリクエストとアベイラブルメディアレスポンスが、NFCIP-1によってやりとりされ、これにより、イニシエータは、ターゲットが利用可能な通信プロトコルを認識する。さらに、イニシエータとターゲットとの間では、メディアハンドオーバリクエストとメディアハンドオーバレスポンスが、NFCIP-1によってやりとりされ、これにより、イニシエータとターゲットは、NFCIP-1による通信から、イニシエータが認識したある通信プロトコルによる通信にハンドオーバする。そして、その後、イニシエータとターゲットは、そのハンドオーバ後の通信プロトコルによる通信を行う。
【0099】
次に、図12を参照して、NFCIP-2による通信のフェーズについて説明する。
【0100】
NFCIP-2による通信は、アイドルフェース(Idling phase)P1、リンク確立待ちフェーズ(Link establishment-waiting phase)P2、リンク確立フェーズ(Link establishment phase)P3、認証フェーズ(Authentication phase)P4、ネットワークレイヤプロトコルフェーズ(Network layer protocol phase)P5、およびリンクターミネーションフェーズ(Link termination phase)P6の6つのフェーズを有する。
【0101】
NFCIP-2による通信では、まず最初に、初期フェーズであるアイドルフェーズP1となる。アイドルフェーズP1では、上述したRFフィールドの検出などが行われる。
【0102】
アイドルフェーズP1において、例えば、NFCによる通信が可能な装置を検出する要求があると、リンク確立待ちフェーズP2に移行し、NFCによる通信が可能な装置の検出が開始される。なお、リンク確立待ちフェーズP2からは、アイドルフェーズP1、リンク確立フェーズP3、またはリンクターミネーションフェーズP6に移行しうる。
【0103】
リンク確立待ちフェーズP2において、例えば、NFCによる通信が可能な装置が検出されると、リンク確立フェーズP3に移行する。リンク確立フェーズP3では、NFCによる通信の通信相手とする装置を識別する、乱数によるID(以下、適宜、NFCIDという)が認識され、そのNFCIDを認識した通信相手とのリンクが確立される。なお、リンク確立フェーズP3からは、アイドルフェーズP1、認証フェーズP4、またはリンクターミネーションフェーズP6に移行しうる。
【0104】
リンク確立フェーズP3において、例えば、NFCIDを認識した通信相手とのリンクが確立されると、認証フェーズP4に移行する。認証フェーズP4では、NFCIDを認識した通信相手との間で、相互認証が行われる。なお、認証フェーズP4からは、アイドルフェーズP1、ネットワークレイヤプロトコルフェーズP5、またはリンクターミネーションフェーズP6に移行しうる。また、認証フェーズP4は、スキップすることが可能である。
【0105】
認証フェーズP4において、例えば、NFCIDを認識した通信相手との間での相互認証が成功すると、ネットワークレイヤプロトコルフェーズP5に移行する。ネットワークレイヤプロトコルフェーズP5では、NFCIDを認識した通信相手との間で、必要なデータ交換(データのやりとり)が行われる。なお、ネットワークレイヤプロトコルフェーズP5からは、アイドルフェーズP1、またはリンクターミネーションフェーズP6に移行しうる。
【0106】
ネットワークレイヤプロトコルフェーズP5において、例えば、NFCによる通信の終了の要求があると、リンクターミネーションフェーズP6に移行する。リンクターミネーションフェーズP6では、例えば、NFCIDを認識した通信相手とのリンクが切断され、アイドルフェーズP1に移行する。
【0107】
次に、図13および図14を参照して、イニシエータとターゲットとの間で、NFCIP-1による通信が開始され、その後、MAC層(さらには物理層)の通信プロトコルをNFCIP-1から他の通信プロトコルにハンドオーバする場合の、そのイニシエータとターゲットの処理について説明する。
【0108】
まず、図13を参照して、イニシエータの処理について説明する。
【0109】
イニシエータは、まず最初に、ステップS1において、アイドル状態となる。
【0110】
その後、ステップS1からS2に進み、イニシエータは、RFフィールドを形成し、NFCIDを要求するポーリングを行って、ステップS3に進む。ステップS3では、イニシエータは、ポーリングに対する応答が、ターゲットからあったかどうかを判定する。ステップS3において、ポーリングに対する応答がなかったと判定された場合、ステップS2に戻り、以下、同様の処理を繰り返す。
【0111】
また、ステップS3において、ポーリングに対する応答があったと判定された場合、ステップS4に進み、イニシエータは、応答のあったターゲットに対して、NFCIDを要求し、その要求に応じてターゲットから送信されてくるNFCIDを受信する。このNFCIDによって、イニシエータは、通信相手とするターゲットを特定する。
【0112】
その後、ステップS4からS5に進み、イニシエータは、通信相手として特定したターゲットとの間で相互認証を行い、さらに、その相互認証時に、トランザクションIDおよびトランザクションキーを、ターゲットとの間で交換して、ステップS6に進む。なお、イニシエータとターゲットは、トランザクションIDおよびトランザクションキーの交換後、トランザクションIDおよびトランザクションキーを、暗号鍵として、その後にやりとりするデータを暗号化する。
【0113】
ステップS6では、イニシエータは、ターゲットに対して、ターゲットが利用可能な通信プロトコルを要求し、その要求に応じてターゲットから送信されてくる、利用可能な通信プロトコルの利用可能プロトコル情報を受信する。即ち、ステップS6では、イニシエータは、アベイラブルメディアリクエストを、ターゲットに送信し、そのアベイラブルメディアリクエストに対する応答としてのアベイラブルメディアレスポンスを、ターゲットから受信する。これにより、イニシエータは、ターゲットが利用可能な通信プロトコルを認識する。
【0114】
その後、イニシエータは、自身とターゲットが利用可能な通信プロトコルから所望の通信プロトコル(以下、適宜、所望プロトコルという)を選択し、ステップS6からS7に進む。ステップS7では、イニシエータは、所望プロトコルによる通信に必要な通信情報を、ターゲットとの間で交換し、ステップS8に進む。
【0115】
ステップS8では、イニシエータは、MAC層(さらには物理層)の通信プロトコルを、NFCIP-1から所望プロトコルに切り換える(ハンドオーバする)。即ち、ステップS8では、イニシエータは、メディアハンドオーバリクエストを、ターゲットに送信し、そのメディアハンドオーバリクエストに対する応答としてのメディアハンドオーバレスポンスを受信する。そして、イニシエータは、MAC層(さらには物理層)の通信プロトコルを、NFCIP-1から所望プロトコルに切り換える。
【0116】
その後、ステップS8からS9に進み、イニシエータは、NFCによる通信をターミネーションする。イニシエータは、NFCによる通信のターミネーション後、ステップS7で取得した通信情報に基づき、所望プロトコルによる通信を行い、その通信終了後、ステップS1に戻る。
【0117】
次に、図14のフローチャートを参照して、ターゲットの処理について説明する。
【0118】
ターゲットは、まず最初に、ステップS21において、アイドル状態となる。
【0119】
その後、ターゲットは、例えば、イニシエータからのポーリングを受信すると、ステップS21からS22に進み、そのポーリングに対する応答を、イニシエータに送信して、ステップS23に進む。ステップS23では、ターゲットは、イニシエータからのNFCIDの要求を待って、乱数によるNFCIDを生成し、イニシエータに送信して、ステップS24に進む。ここで、例えば、イニシエータからのNFCIDの要求には、そのイニシエータのNFCIDが含まれており、ターゲットは、そのNFCIDによって、通信相手となるイニシエータを特定する。
【0120】
その後、ステップS23からS24に進み、ターゲットは、NFCIDによって通信相手として特定したイニシエータとの間で相互認証を行い、さらに、その相互認証時に、トランザクションIDおよびトランザクションキーを、イニシエータとの間で交換して、ステップS25に進む。なお、ターゲットとイニシエータは、図13で説明したように、トランザクションIDおよびトランザクションキーの交換後、トランザクションIDおよびトランザクションキーを、暗号鍵として、その後にやりとりするデータを暗号化する。
【0121】
ステップS25では、ターゲットは、イニシエータからの、利用可能な通信プロトコルを要求が送信されてくるのを待って、自身が利用可能な通信プロトコルの利用可能プロトコル情報を、イニシエータに送信する。即ち、ステップS25では、ターゲットは、イニシエータからのアベイラブルメディアリクエストを受信し、そのアベイラブルメディアリクエストに対する応答としてのアベイラブルメディアレスポンスを、利用可能プロトコル情報として、イニシエータに送信する。
【0122】
その後、ステップS25からS26に進み、ターゲットは、イニシエータとの間で、図13で説明した所望プロトコルによる通信に必要な通信情報を、イニシエータとの間で交換し、ステップS27に進む。
【0123】
ステップS27では、ターゲットは、MAC層(さらには物理層)の通信プロトコルを、NFCIP-1から所望プロトコルに切り換える(ハンドオーバする)。即ち、ステップS27では、ターゲットは、イニシエータからのメディアハンドオーバリクエストを受信し、そのメディアハンドオーバリクエストに対する応答としてのメディアハンドオーバレスポンスを、イニシエータに送信する。そして、ターゲットは、MAC層(さらには物理層)の通信プロトコルを、NFCIP-1から所望プロトコルに切り換える。
【0124】
その後、ステップS27からS28に進み、ターゲットは、NFCによる通信をターミネーションする。ターゲットは、NFCによる通信のターミネーション後、ステップS26で取得した通信情報に基づき、所望プロトコルによる通信を行い、その通信終了後、ステップS21に戻る。
【0125】
次に、例えば、通信装置1および2が、図15に示すように、NFCによる通信と、Bluetoothによる通信(BT通信)が可能であるとして、初めに、NFCによる通信を行い、その後、NFCによる通信からBT通信にハンドオーバする場合の、通信装置1および2の処理について説明する。
【0126】
なお、図15は、通信装置1と2の機能的な構成例を示している。
【0127】
即ち、図15においては、通信装置1は、NFC通信部51とBT通信部52を有し、通信装置2は、NFC通信部61とBT通信部62を有している。NFC通信部51および61は、NFCによる通信を行い、BT通信部52および62は、BT通信を行う。
【0128】
図16は、図15の通信装置1と2を、それぞれ、イニシエータとターゲットとして、初めに、NFCによる通信を行い、その後、NFCによる通信からBT通信にハンドオーバする場合の、通信装置1および2の処理を説明するフローチャートである。
【0129】
まず最初に、イニシエータであるNFC通信部51は、ステップS51において、ポーリングを行い、ターゲットであるNFC通信部61は、そのポーリングを受信し、ステップS52において、そのポーリングに対する応答を、NFC通信部51に送信する。
【0130】
NFC通信部51は、NFC通信部61から、ポーリングに対する応答が送信されてくると、その応答を受信し、ステップS53において、NFC通信部61に、NFCIDを要求する。NFC通信部61は、NFC通信部51からのNFCIDの要求を受信し、ステップS54において、その要求に応じて、自身のNFCIDを、NFC通信部51に送信する。NFC通信部51は、NFC通信部61からのNFCIDを受信し、これにより、通信相手であるNFC通信部61(通信装置2)を特定する。なお、NFC通信部51から61に送信される、NFCIDの要求には、NFC通信部51のNFCIDが含まれており、NFC通信部61は、そのNFCIDによって、通信相手であるNFC通信部51(通信装置1)を特定する。
【0131】
その後、NFC通信部51と61との間では、ステップS55において、相互認証のためのデータがやりとりされることにより、相互認証が行われ、さらに、その際、トランザクションIDとトランザクションキーとが交換される。その後のNFC通信部51と61との間では、トランザクションIDとトランザクションキーを暗号鍵として、その暗号鍵でデータを暗号化して、データがやりとりされる。なお、上述したように、相互認証は、スキップすること(行わないようにすること)が可能である。
【0132】
ステップS55において、相互認証が成功すると、ステップS56に進み、NFC通信部51は、NFC通信部61に対して、通信装置2が利用可能なプロトコルの情報である利用可能プロトコル情報の要求(アベイラブルメディアリクエスト)を送信し、NFC通信部61は、その要求を受信する。NFC通信部61は、ステップS57において、NFC通信部51からの要求に応じて、通信装置2が利用可能なプロトコルの情報である利用可能プロトコル情報(アベイラブルメディアレスポンス)を、NFC通信部51に送信し、NFC通信部51は、その利用可能プロトコル情報を受信する。
【0133】
いまの場合、NFC通信部51は、NFC通信部61から受信した利用可能プロトコル情報から、通信装置2がBT通信が可能であることを認識する。
【0134】
そして、例えば、NFCによる通信よりも、BT通信の方が高伝送レートであり、大容量のデータの送信を、通信装置1と2との間で行うには、NFCによる通信よりも、BT通信の方が有利であるとして、NFCによる通信から、BT通信に切り換えることが、通信装置1において決定されたとする。
【0135】
この場合、ステップS58において、NFC通信部51と61との間で、BT通信に必要な通信情報が交換される。ここで、BT通信に必要な通信情報としては、例えば、BT通信において、通信相手を特定するBD(Bluetooth Device)アドレスなどがある。即ち、通信装置1のBT通信部52と、通信装置2のBT通信部62は、それぞれユニークなBDアドレスを有しており、ステップS58では、NFC通信部51から61に対して、BT通信部52のBDアドレスが送信され、NFC通信部61は、そのBDアドレスを受信する。さらに、ステップS58では、NFC通信部61から51に対して、BT通信部62のBDアドレスが送信され、NFC通信部51は、そのBDアドレスを受信する。
【0136】
その後、NFC通信部51は、ステップS59において、NFC通信部61に対して、NFCによる通信からBT通信に切り換える切り換え要求(メディアハンドオーバリクエスト)を送信し、NFC通信部61は、その切り換え要求を受信する。そして、NFC通信部52は、ステップS60において、NFC通信部51からの切り換え要求に対する応答(メディアハンドオーバレスポンス)を、NFC通信部51に送信し、NFC通信部51は、その応答を受信する。
【0137】
その後、通信装置1は、ステップS61において、NFC通信部51が行うNFCによる通信から、BT通信部52が行うBT通信への切り換え(ハンドオーバ)を行う。さらに、通信装置2も、ステップS62において、NFC通信部61が行うNFCによる通信から、BT通信部62が行うBT通信への切り換え(ハンドオーバ)を行う。
【0138】
そして、NFC通信部51と61は、ステップS63において、NFCによる通信をターミネーションする。その後、ステップS64において、BT通信部52と62との間で、ステップS58で交換された通信情報に基づき、BT通信が行われる。
【0139】
即ち、BT通信部52は、NFC通信部51がステップS58で受信したBT通信部62のBDアドレスによって、そのBT通信部62を通信相手として特定して、BT通信を行う。同様に、BT通信部62も、NFC通信部61がステップS58で受信したBT通信部52のBDアドレスによって、そのBT通信部52を通信相手として特定して、BT通信を行う。
【0140】
従って、この場合、BT通信部52および62は、ユーザによって通信相手を指定してもらわなくても、通信相手を特定して、BT通信を行うことができる。
【0141】
即ち、BT通信が可能なデバイスであるBTデバイスが多数存在する場合、各BTデバイスでは、他のBTデバイスとの間で情報をやりとりし、他のBTデバイスに関する情報を収集する。そして、各BTデバイスでは、収集した情報に基づき、他のBTデバイスを表すアイコンが画面に表示される。この場合、ユーザが、多数のBTデバイスのうちの、ある1つのBTデバイス#1から、他の1つのBTデバイス#2に、データを送信しようとするとき、BTデバイス#1の画面に表示された多数のBTデバイスのアイコンから、BTデバイス#2のアイコンを探し出し、そのアイコンを操作することにより、データを送信する相手であるBTデバイス#2を指定しなければならない。
【0142】
これに対して、図1の通信システムによれば、通信装置1乃至3と同様の通信装置が多数存在している場合に、通信装置1から2にデータを送信しようとするときであっても、通信装置1を通信装置2に近づけるだけで、通信装置1から2にデータを送信することができる。
【0143】
即ち、通信装置1および2では、それらが近接した状態となると、NFCによる通信によって、通信装置1と2がBT通信を行うことができることが認識され、BT通信に要する通信情報としての、BDアドレスなどが交換される。さらに、通信装置1および2では、NFCによる通信から、BT通信に切り換えられ(ハンドオーバが行われ)、BDアドレスに基づき、通信相手を特定して、BT通信が行われる。
【0144】
従って、ユーザは、NFCによる通信と、BT通信との両方の利点を享受することができる。
【0145】
即ち、例えば、NFCによる通信よりも、BT通信の方が高伝送レートである場合には、NFCによる通信によって、ユーザは、通信装置1と2とを近接した状態とするだけで、その他の通信相手を特定するための作業を行わずに済み、さらに、BT通信によって、高速に、データを送信することができる。
【0146】
次に、上述した一連の処理は、専用のハードウェアにより行うこともできるし、ソフトウェアにより行うこともできる。一連の処理をソフトウェアによって行う場合には、そのソフトウェアを構成するプログラムが、汎用のコンピュータやマイクロコンピュータ等にインストールされる。
【0147】
そこで、図17は、上述した一連の処理を実行するプログラムがインストールされるコンピュータの一実施の形態の構成例を示している。
【0148】
プログラムは、コンピュータに内蔵されている記録媒体としてのハードディスク105やROM103に予め記録しておくことができる。
【0149】
あるいはまた、プログラムは、フレキシブルディスク、CD-ROM(Compact Disc Read Only Memory),MO(Magneto Optical)ディスク,DVD(Digital Versatile Disc)、磁気ディスク、半導体メモリなどのリムーバブル記録媒体111に、一時的あるいは永続的に格納(記録)しておくことができる。このようなリムーバブル記録媒体111は、いわゆるパッケージソフトウエアとして提供することができる。
【0150】
なお、プログラムは、上述したようなリムーバブル記録媒体111からコンピュータにインストールする他、ダウンロードサイトから、ディジタル衛星放送用の人工衛星を介して、コンピュータに無線で転送したり、LAN(Local Area Network)、インターネットといったネットワークを介して、コンピュータに有線で転送し、コンピュータでは、そのようにして転送されてくるプログラムを、通信部108で受信し、内蔵するハードディスク105にインストールすることができ
る。
【0151】
コンピュータは、CPU(Central Processing Unit)102を内蔵している。CPU102には、バス101を介して、入出力インタフェース110が接続されており、CPU102は、入出力インタフェース110を介して、ユーザによって、キーボードや、マウス、マイク等で構成される入力部107が操作等されることにより指令が入力されると、それにしたがって、ROM(Read Only Memory)103に格納されているプログラムを実行する。あるいは、また、CPU102は、ハードディスク105に格納されているプログラム、衛星若しくはネットワークから転送され、通信部108で受信されてハードディスク105にインストールされたプログラム、またはドライブ109に装着されたリムーバブル記録媒体111から読み出されてハードディスク105にインストールされたプログラムを、RAM(Random Access Memory)104にロードして実行する。これにより、CPU102は、上述したフローチャートにしたがった処理、あるいは上述したブロック図の構成により行われる処理を行う。そして、CPU102は、その処理結果を、必要に応じて、例えば、入出力インタフェース110を介して、LCD(Liquid Crystal Display)やスピーカ等で構成される出力部106から出力、あるいは、通信部108から送信、さらには、ハードディスク105に記録等させる。
【0152】
ここで、本明細書において、コンピュータに各種の処理を行わせるためのプログラムを記述する処理ステップは、必ずしもフローチャートとして記載された順序に沿って時系列に処理する必要はなく、並列的あるいは個別に実行される処理(例えば、並列処理あるいはオブジェクトによる処理)も含むものである。
【0153】
また、プログラムは、1のコンピュータにより処理されるものであっても良いし、複数のコンピュータによって分散処理されるものであっても良い。
【0154】
なお、本実施の形態では、無線通信を対象としたが、本発明は、有線通信や、無線と有線とが混在した通信にも適用可能である。
【0155】
また、本実施の形態では、NFCによる通信から、他の通信プロトコルによる通信に切り換えるようにしたが、任意の通信プロトコルによる通信から、他の任意の通信プロトコルによる通信に切り換えること、即ち、例えば、ISO/IEC 14443-3からBluetoothに切り換えることなども可能である。
【0156】
さらに、本実施の形態では、NFCによる通信から、BT通信に切り換えるようにしたが、その後、さらに、BT通信から、他の通信プロトコルによる通信に切り換えるようにすることも可能である。
【図面の簡単な説明】
【0157】
【図1】本発明を適用した通信システムの一実施の形態の構成例を示す図である。
【図2】パッシブモードを説明する図である。
【図3】アクティブモードを説明する図である。
【図4】通信装置1乃至3のNFCによる通信を行う部分の構成例を示すブロック図である。
【図5】通信装置1乃至3の通信プロトコルと、OSI階層モデルとの対応関係を示す図である。
【図6】NFCIP-2 PDUのフォーマットを示す図である。
【図7】NFCIP-2 headerのフォーマットを示す図である。
【図8】アベイラブルメディアリクエストのデータ部のフォーマットを示す図である。
【図9】アベイラブルメディアレスポンスのデータ部のフォーマットを示す図である。
【図10】メディアハンドオーバリクエストのデータ部のフォーマットを示す図である。
【図11】メディアハンドオーバレスポンスのデータ部のフォーマットを示す図である。
【図12】NFCIP-2による通信のフェーズを示す図である。
【図13】イニシエータの処理を説明するフローチャートである。
【図14】ターゲットの処理を説明するフローチャートである。
【図15】通信装置1と2の機能的な構成例を示すブロック図である。
【図16】通信装置1および2の処理を説明するフローチャートである。
【図17】本発明を適用したコンピュータの一実施の形態の構成例を示すブロック図である。
【符号の説明】
【0158】
1乃至3 通信装置, 51 NFC通信部, 52 BT通信部, 61 NFC通信部, 62 BT通信部, 101 バス, 102 CPU, 103 ROM, 104 RAM, 105 ハードディスク, 106 出力部, 107 入力部, 108 通信部, 109 ドライブ, 110 入出力インタフェース, 111 リムーバブル記録媒体

【特許請求の範囲】
【請求項1】
通信相手に要求を送信する通信装置であるイニシエータと、前記イニシエータの要求に対する応答を返す通信装置であるターゲットとを備える通信システムにおいて、
前記イニシエータは、
前記ターゲットとの間で、第1の通信プロトコルによる通信を行う第1のイニシエータ通信手段と、
前記ターゲットに対して、通信の通信相手を識別するための情報を要求して取得する識別情報取得手段と、
前記ターゲットが利用可能な通信プロトコルの情報を、前記第1の通信プロトコルによる通信によって要求して取得するプロトコル情報取得手段と、
前記ターゲットが利用可能な通信プロトコルの情報に基づいて、前記第1の通信プロトコルから切り換える第2の通信プロトコルを選択する選択手段と、
前記ターゲットとの通信を、前記第1の通信プロトコルによる通信から、前記第2の通信プロトコルによる通信に切り換えることを要求する切り換え要求送信手段と、
前記切り換えの要求に対して、前記ターゲットが送信してくる切り換えの応答を受信する切り換え応答受信手段と、
前記ターゲットとの間で、前記切り換えの要求及び応答をやりとりした後で、前記第2の通信プロトコルによる通信を行う第2のイニシエータ通信手段と
を有し、
前記ターゲットは、
前記イニシエータとの間で、第1の通信プロトコルによる通信を行う第1のターゲット通信手段と、
前記イニシエータからの、通信の通信相手を識別するための情報の要求に応じて、乱数によるID(Identification)を送信する識別情報送信手段と、
前記イニシエータからの、利用可能な通信プロトコルの情報の要求に応じて、前記ターゲットが利用可能な通信プロトコルの情報の応答を返す応答手段と、
前記イニシエータからの、前記切り換えの要求を受信する切り換え要求受信手段と、
前記切り換えの要求に対して、前記切り換えの応答を返す切り換え応答送信手段と、
前記イニシエータとの間で、前記切り換えの要求及び応答をやりとりした後で、前記第2の通信プロトコルによる通信を行う第2のターゲット通信手段と
を有する
ことを特徴とする通信システム。
【請求項2】
通信相手に要求を送信するイニシエータとなる通信装置において、
前記イニシエータの要求に対する応答を返すターゲットとの間で、第1の通信プロトコルによる通信を行う第1のイニシエータ通信手段と、
前記ターゲットに対して、通信の通信相手を識別するための情報を要求して取得する識別情報取得手段と、
前記ターゲットが利用可能な通信プロトコルの情報を、前記第1の通信プロトコルによる通信によって要求して取得するプロトコル情報取得手段と、
前記ターゲットが利用可能な通信プロトコルの情報に基づいて、前記第1の通信プロトコルから切り換える第2の通信プロトコルを選択する選択手段と、
前記ターゲットとの通信を、前記第1の通信プロトコルによる通信から、前記第2の通信プロトコルによる通信に切り換えることを要求する切り換え要求送信手段と、
前記切り換えの要求に対して、前記ターゲットが送信してくる切り換えの応答を受信する切り換え応答受信手段と、
前記ターゲットとの間で、前記切り換えの要求及び応答をやりとりした後で、前記第2の通信プロトコルによる通信を行う第2のイニシエータ通信手段と
を備えることを特徴とする通信装置。
【請求項3】
前記第1および第2の通信プロトコルによる通信は、無線通信であり、
前記第1のイニシエータ通信手段は、前記ターゲットが近接した状態となっているときに、前記他のターゲットとの間で、前記第1の通信プロトコルによる通信を行う
ことを特徴とする請求項2に記載の通信装置。
【請求項4】
前記第1の通信プロトコルでは、近接した状態の前記ターゲットを特定して通信が行われる
ことを特徴とする請求項3に記載の通信装置。
【請求項5】
通信相手に要求を送信するイニシエータとなる通信装置の通信方法において、
前記イニシエータの要求に対する応答を返すターゲットとの間で、第1の通信プロトコルによる通信を行う第1のイニシエータ通信ステップと、
前記ターゲットに対して、通信の通信相手を識別するための情報を要求して取得する識別情報取得ステップと、
前記ターゲットが利用可能な通信プロトコルの情報を、前記第1の通信プロトコルによる通信によって要求して取得するプロトコル情報取得ステップと、
前記ターゲットが利用可能な通信プロトコルの情報に基づいて、前記第1の通信プロトコルから切り換える第2の通信プロトコルを選択する選択ステップと、
前記ターゲットとの通信を、前記第1の通信プロトコルによる通信から、前記第2の通信プロトコルによる通信に切り換えることを要求する切り換え要求送信ステップと、
前記切り換えの要求に対して、前記ターゲットが送信してくる切り換えの応答を受信する切り換え応答受信ステップと、
前記ターゲットとの間で、前記切り換えの要求及び応答をやりとりした後で、前記第2の通信プロトコルによる通信を行う第2のイニシエータ通信ステップと
を備えることを特徴とする通信方法。
【請求項6】
通信相手に要求を送信するイニシエータとなる通信装置として、コンピュータを機能させるプログラムにおいて、
前記イニシエータの要求に対する応答を返すターゲットとの間で、第1の通信プロトコルによる通信を行う第1のイニシエータ通信ステップと、
前記ターゲットに対して、通信の通信相手を識別するための情報を要求して取得する識別情報取得ステップと、
前記ターゲットが利用可能な通信プロトコルの情報を、前記第1の通信プロトコルによる通信によって要求して取得するプロトコル情報取得ステップと、
前記ターゲットが利用可能な通信プロトコルの情報に基づいて、前記第1の通信プロトコルから切り換える第2の通信プロトコルを選択する選択ステップと、
前記ターゲットとの通信を、前記第1の通信プロトコルによる通信から、前記第2の通信プロトコルによる通信に切り換えることを要求する切り換え要求送信ステップと、
前記切り換えの要求に対して、前記ターゲットが送信してくる切り換えの応答を受信する切り換え応答受信ステップと、
前記ターゲットとの間で、前記切り換えの要求及び応答をやりとりした後で、前記第2の通信プロトコルによる通信を行う第2のイニシエータ通信ステップと
を、コンピュータに実行させるためのプログラム。
【請求項7】
通信相手に要求を送信するイニシエータの要求に対する応答を返すターゲットとなる通信装置において、
前記イニシエータとの間で、第1の通信プロトコルによる通信を行う第1のターゲット通信手段と、
前記イニシエータからの、通信の通信相手を識別するための情報の要求に応じて、乱数によるID(Identification)を送信する識別情報送信手段と、
前記イニシエータからの、利用可能な通信プロトコルの情報の要求に応じて、前記ターゲットが利用可能な通信プロトコルの情報の応答を返す応答手段と、
前記イニシエータが、前記ターゲットが利用可能な通信プロトコルの情報に基づいて、前記第1の通信プロトコルから切り換える第2の通信プロトコルを選択し、前記ターゲットとの通信を、前記第1の通信プロトコルによる通信から、前記第2の通信プロトコルによる通信に切り換えることを要求することにより送信されてくる切り換えの要求を受信する切り換え要求受信手段と、
前記切り換えの要求に対して、前記第1の通信プロトコルによる通信を前記第2の通信プロトコルによる通信に切り換えることを応答する切り換えの応答を返す切り換え応答送信手段と、
前記イニシエータとの間で、前記切り換えの要求及び応答をやりとりした後で、前記第2の通信プロトコルによる通信を行う第2のターゲット通信手段と
を備えることを特徴とする通信装置。
【請求項8】
通信相手に要求を送信するイニシエータの要求に対する応答を返すターゲットとなる通信装置の通信方法において、
前記イニシエータとの間で、第1の通信プロトコルによる通信を行う第1のターゲット通信ステップと、
前記イニシエータからの、通信の通信相手を識別するための情報の要求に応じて、乱数によるID(Identification)を送信する識別情報送信ステップと、
前記イニシエータからの、利用可能な通信プロトコルの情報の要求に応じて、前記ターゲットが利用可能な通信プロトコルの情報の応答を返す応答ステップと、
前記イニシエータが、前記ターゲットが利用可能な通信プロトコルの情報に基づいて、前記第1の通信プロトコルから切り換える第2の通信プロトコルを選択し、前記ターゲットとの通信を、前記第1の通信プロトコルによる通信から、前記第2の通信プロトコルによる通信に切り換えることを要求することにより送信されてくる切り換えの要求を受信する切り換え要求受信ステップと、
前記切り換えの要求に対して、前記第1の通信プロトコルによる通信を前記第2の通信プロトコルによる通信に切り換えることを応答する切り換えの応答を返す切り換え応答送信ステップと、
前記イニシエータとの間で、前記切り換えの要求及び応答をやりとりした後で、前記第2の通信プロトコルによる通信を行う第2のターゲット通信ステップと
を備えることを特徴とする通信方法。
【請求項9】
通信相手に要求を送信するイニシエータの要求に対する応答を返すターゲットとなる通信装置としてコンピュータを機能させるプログラムにおいて、
前記イニシエータとの間で、第1の通信プロトコルによる通信を行う第1のターゲット通信ステップと、
前記イニシエータからの、通信の通信相手を識別するための情報の要求に応じて、乱数によるID(Identification)を送信する識別情報送信ステップと、
前記イニシエータからの、利用可能な通信プロトコルの情報の要求に応じて、前記ターゲットが利用可能な通信プロトコルの情報の応答を返す応答ステップと、
前記イニシエータが、前記ターゲットが利用可能な通信プロトコルの情報に基づいて、前記第1の通信プロトコルから切り換える第2の通信プロトコルを選択し、前記ターゲットとの通信を、前記第1の通信プロトコルによる通信から、前記第2の通信プロトコルによる通信に切り換えることを要求することにより送信されてくる切り換えの要求を受信する切り換え要求受信ステップと、
前記切り換えの要求に対して、前記第1の通信プロトコルによる通信を前記第2の通信プロトコルによる通信に切り換えることを応答する切り換えの応答を返す切り換え応答送信ステップと、
前記イニシエータとの間で、前記切り換えの要求及び応答をやりとりした後で、前記第2の通信プロトコルによる通信を行う第2のターゲット通信ステップと
を、コンピュータに実行させるためのプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate


【公開番号】特開2008−160856(P2008−160856A)
【公開日】平成20年7月10日(2008.7.10)
【国際特許分類】
【出願番号】特願2007−340630(P2007−340630)
【出願日】平成19年12月28日(2007.12.28)
【分割の表示】特願2003−162427(P2003−162427)の分割
【原出願日】平成15年6月6日(2003.6.6)
【出願人】(000002185)ソニー株式会社 (34,172)
【Fターム(参考)】