通信装置、通信システムおよび通信装置の制御方法
【課題】近距離無線通信時におけるスループットを向上させる。
【解決手段】通信装置は、通信部および制御部を具備する。ここで、通信部は、他の通信装置との間で近距離無線通信を行うものである。また、制御部は、他の通信装置への送信対象となるデータの送信開始タイミングを調整することにより、近距離無線通信において通信相手にデータを送信するための送信権を、他の通信装置との間で交互に設定するための制御を行うものである。
【解決手段】通信装置は、通信部および制御部を具備する。ここで、通信部は、他の通信装置との間で近距離無線通信を行うものである。また、制御部は、他の通信装置への送信対象となるデータの送信開始タイミングを調整することにより、近距離無線通信において通信相手にデータを送信するための送信権を、他の通信装置との間で交互に設定するための制御を行うものである。
【発明の詳細な説明】
【技術分野】
【0001】
本技術は、通信装置に関する。詳しくは、他の通信装置との間で近距離無線通信を行う通信装置、これを含む通信システムおよび通信装置の制御方法に関する。
【背景技術】
【0002】
従来、無線通信を利用して各種データのやり取りを行う無線通信技術が存在する。例えば、2つの通信装置間において近距離無線通信により各種データのやり取りを行う無線通信技術が存在する(例えば、非特許文献1参照。)。
【先行技術文献】
【非特許文献】
【0003】
【非特許文献1】ECMA−398
【発明の概要】
【発明が解決しようとする課題】
【0004】
上述の従来技術によれば、データを移動させるためのカード(例えば、メモリカード)やケーブル等を用いることなく、2つの通信装置間において各種データのやり取りを容易に行うことができる。
【0005】
ここで、通信装置に実装されているプロトコルによっては、通信対象となる2つの通信装置のうち、一方の通信装置におけるデータ送信が終了するまでの間、この通信装置からのデータ送信が継続して行われることもある。この場合には、他方の通信装置からのデータ送信が遅延してしまい、通信装置に実装されているプロトコルによっては、スループットが劣化してしまうおそれがある。
【0006】
本技術はこのような状況に鑑みて生み出されたものであり、近距離無線通信時におけるスループットを向上させることを目的とする。
【課題を解決するための手段】
【0007】
本技術は、上述の問題点を解消するためになされたものであり、その第1の側面は、他の通信装置との間で近距離無線通信を行う通信部と、上記他の通信装置への送信対象となるデータの送信開始タイミングを調整することにより上記近距離無線通信において通信相手にデータを送信するための送信権を上記他の通信装置との間で交互に設定するための制御を行う制御部とを具備する通信装置およびその制御方法ならびに当該方法をコンピュータに実行させるプログラムである。これにより、他の通信装置への送信対象となるデータの送信開始タイミングを調整することにより、送信権を他の通信装置との間で交互に設定するという作用をもたらす。
【0008】
また、この第1の側面において、上記制御部は、上記送信開始タイミングを第1送信開始タイミングとし、上記他の通信装置において上記通信装置への送信対象となるデータの送信開始タイミングを第2送信開始タイミングとする場合に、上記第2送信開始タイミングを基準として上記第1送信開始タイミングをずらすことにより上記調整を行うようにしてもよい。これにより、第2送信開始タイミングを基準として、第1送信開始タイミングをずらすことにより、送信開始タイミングの調整を行うという作用をもたらす。
【0009】
また、この第1の側面において、上記制御部は、上記送信権を上記通信装置に設定する場合における上記第1送信開始タイミングを、上記第2送信開始タイミングよりも早いタイミングとし、上記送信権を上記他の通信装置に設定する場合における上記第1送信開始タイミングを、上記第2送信開始タイミングよりも遅いタイミングとする上記調整を行うようにしてもよい。これにより、送信権を通信装置に設定する場合における第1送信開始タイミングを、第2送信開始タイミングよりも早いタイミングとし、送信権を他の通信装置に設定する場合における第1送信開始タイミングを、第2送信開始タイミングよりも遅いタイミングとするという作用をもたらす。
【0010】
また、この第1の側面において、上記通信部は、Transfer Jetに基づいて上記近距離無線通信を行い、上記制御部は、上記通信装置がイニシエータとなっている場合に上記制御を行うようにしてもよい。これにより、Transfer Jetに基づいて近距離無線通信を行い、通信装置がイニシエータとなっている場合に送信権の制御を行うという作用をもたらす。
【0011】
また、この第1の側面において、上記制御部は、上記他の通信装置にデータを送信するためのIFS(Inter-Frame Space)の値を変更することにより上記調整を行うようにしてもよい。これにより、IFSの値を変更することにより、送信開始タイミングの調整を行うという作用をもたらす。
【0012】
また、この第1の側面において、上記制御部は、上記送信権を上記通信装置に設定する場合には上記IFSとしてIIFS(Initiator Inter-Frame Space)の値を採用し、上記送信権を上記他の通信装置に設定する場合には上記IFSとしてRIFS(Responder Inter-Frame Space)よりも大きい値を採用することにより上記調整を行うようにしてもよい。これにより、送信権を通信装置に設定する場合にはIIFSの値を採用し、送信権を他の通信装置に設定する場合にはRIFSよりも大きい値を採用するという作用をもたらす。
【0013】
また、この第1の側面において、上記送信権が上記通信装置に設定される第1設定時間と上記送信権が上記他の通信装置に設定される第2設定時間とを交互に計時して各時間に達した場合にその旨を上記制御部に通知するタイマをさらに具備し、上記制御部は、上記第1設定時間および上記第2設定時間のそれぞれの時間に達する毎に上記IFSの値を変更することにより上記調整を行うようにしてもよい。これにより、第1設定時間および第2設定時間のそれぞれの時間に達する毎に、IFSの値を変更することにより、送信開始タイミングの調整を行うという作用をもたらす。
【0014】
また、この第1の側面において、上記制御部は、ユーザアプリケーション層またはPCL(Protocol Conversion Layer)層の設定内容に基づいて、上記送信権が上記通信装置に設定される第1設定時間と上記送信権が上記他の通信装置に設定される第2設定時間との比率を決定するようにしてもよい。これにより、ユーザアプリケーション層またはPCL層の設定内容に基づいて、第1設定時間および第2設定時間の比率を決定するという作用をもたらす。
【0015】
また、本技術の第2の側面は、通信相手にデータを送信するための送信権に基づいて第1の通信装置との間で近距離無線通信を行う通信部を備える第2の通信装置と、上記送信権に基づいて上記第2の通信装置との間で近距離無線通信を行う通信部と、上記第2の通信装置への送信対象となるデータの送信開始タイミングを調整することにより上記送信権を上記第2の通信装置との間で交互に設定するための制御を行う制御部とを備える第1の通信装置とを具備する通信システムおよびその制御方法ならびに当該方法をコンピュータに実行させるプログラムである。これにより、第1の通信装置が、第2の通信装置への送信対象となるデータの送信開始タイミングを調整することにより、送信権を第2の通信装置との間で交互に設定するという作用をもたらす。
【発明の効果】
【0016】
本技術によれば、近距離無線通信時におけるスループットを向上させることができるという優れた効果を奏し得る。
【図面の簡単な説明】
【0017】
【図1】本技術の第1の実施の形態における通信装置を簡略化して示す図である。
【図2】本技術の第1の実施の形態における通信装置100の機能構成例を示すブロック図である。
【図3】本技術の第1の実施の形態における通信装置100のプロトコルスタックの構成例を示す図である。
【図4】本技術の第1の実施の形態における通信装置100および200間で行われる通信状態を模式的に示す図である。
【図5】本技術の第1の実施の形態における通信装置100および200間で行われる通信の様子を模式的に示す図である。
【図6】本技術の第1の実施の形態における通信装置100および200間におけるConnectionの確立例およびこの確立後のデータフレームの送信例を模式的に示す図である。
【図7】本技術の第1の実施の形態における通信装置間において送受信されるパケット(送信パケット)の構成例を模式的に示す図である。
【図8】本技術の第1の実施の形態における2つの通信装置間における通信時に用いられるIFSの例を模式的に示す図である。
【図9】本技術の第1の実施の形態における通信装置100および200間におけるデータのやり取りを時系列で模式的に示す図である。
【図10】本技術の第1の実施の形態におけるIIFSタイマ150から発行されるIIFS切替トリガに基づいて変更されるIFSの設定期間を時系列で模式的に示す図である。
【図11】本技術の第1の実施の形態における通信装置100および200間におけるデータのやり取りを時系列で模式的に示す図である。
【図12】本技術の第1の実施の形態における2つの通信装置間において送受信されるAckおよびPSDU(PHY SDU)の関係例を時系列で示す図である。
【図13】本技術の第1の実施の形態における通信装置100による通信処理の処理手順の一例を示すフローチャートである。
【発明を実施するための形態】
【0018】
以下、本技術を実施するための形態(以下、実施の形態と称する)について説明する。説明は以下の順序により行う。
1.第1の実施の形態(通信制御:イニシエータ側において送信開始タイミングの調整を行うことにより通信相手との間で送信権を交互に設定する例)
【0019】
<1.第1の実施の形態>
[通信装置の使用例]
【0020】
図1は、本技術の第1の実施の形態における通信装置を簡略化して示す図である。なお、本技術の第1の実施の形態では、近距離無線通信方式を採用する通信装置の使用例にして説明する。具体的には、本技術の第1の実施の形態では、Transfer Jet(登録商標)における多重接続方式について説明する。
【0021】
ここで、Transfer Jetは、4.48GHz帯を用いた近距離無線通信方式である。この通信プロトコル(Transfer Jet)を用いることにより、4.48GHzの電波を−70dBm/MHz以下で使用し、最大560Mbpsの高速近距離データ通信を実現することができる。また、近距離無線通信における通信距離を数cmに限定することにより、通信処理を高速化することができるとともに、通信装置を小規模化することができ、省電力化を達成することができる。
【0022】
また、Transfer Jetでは、近接する2つの通信装置のそれぞれが、常に、イニシエータ(Initiator)およびレスポンダ(Responder)の2つの役割に別れて通信を行う。ただし、イニシエータおよびレスポンダのそれぞれは、その役割とは無関係に互いにデータを送受することができる。なお、イニシエータおよびレスポンダは、その使用状況やユーザ操作等に応じて、その役割を切り替えることができる。これらの通信例については、図5、図6等を参照して詳細に説明する。
【0023】
なお、Transfer Jetを使用する通信装置として、デジタルスチルカメラ、パーソナルコンピュータ(PC)、モバイル機器(例えば、携帯電話装置、スマートフォン)等が想定される。そこで、図1(a)乃至(c)では、Transfer Jetを使用する通信装置の一例として、デジタルスチルカメラ、パーソナルコンピュータを簡略化して示す。また、図1(b)および(c)では、イニシエータおよびレスポンダ間において通信している状態を簡略化して示す。なお、各図では、各通信装置の役割(イニシエータ、レスポンダ)を、通信装置の名称とともに括弧書きで併記して示す。
【0024】
図1(a)には、近距離無線通信機能および撮像部を備える通信装置100を示す。通信装置100は、例えば、デジタルスチルカメラ、デジタルビデオカメラ(カメラ一体型レコーダ)である。また、通信装置(カメラ)100における一部(例えば、外側面の一部)は、通信面として機能する。ここで、通信装置(カメラ)100は、基本的には、レスポンダとなり、低消費電力モードにおいて「Connection Request」を待っている状態となる。なお、「Connection Request」については、図6を参照して詳細に説明する。
【0025】
図1(b)には、近距離無線通信機能を備える通信装置800と通信装置100との間で通信を行っている状態を示す。通信装置800は、例えば、パーソナルコンピュータ(PC)である。また、通信装置(PC)800における一部(例えば、操作部が設けられている操作面の一部)は、通信面として機能する。ここで、通信装置(PC)800は、基本的には、イニシエータとなり、間欠送信をしながら「Connection Request」を送信し続けている。この場合に、例えば、通信装置(カメラ)100を手に持ったユーザ10が、通信装置(カメラ)100の通信面と、通信装置(PC)800の通信面とを近接させる操作(すなわち、かざす操作)を行う。この操作により、通信装置(カメラ)100および通信装置(PC)800間においてデータ通信処理を開始させることができる。
【0026】
図1(c)には、近距離無線通信機能および撮像部を備える通信装置200と、通信装置100との間で通信を行っている状態を示す。ここで、カメラ同士で通信を行う場合には、コンテンツ(例えば、静止画ファイル、動画ファイル)を送信する側が、イニシエータとなり、「Connection Request」の送信を行う。この場合に、例えば、通信装置(カメラ)100の通信面と、通信装置(カメラ)200の通信面とを近接させる操作(すなわち、かざす操作)を行う。この操作により、通信装置(カメラ)100および通信装置(カメラ)200間においてデータ通信処理を開始させることができる。
【0027】
なお、図1では、カメラ、PCを例にして説明するが、例えば、無線通信機能を備える他の通信装置についても同様に適用することができる。例えば、携帯電話装置(例えば、通話機能およびデータ通信機能を備えるスマートフォン)、音声出力装置(例えば、携帯型ミュージックプレーヤー)、無線通信機能を備える表示装置(例えば、デジタルフォトフレーム)について適用することができる。
【0028】
[通信装置の構成例]
図2は、本技術の第1の実施の形態における通信装置100の機能構成例を示すブロック図である。なお、通信装置200、通信装置800の無線通信に関する機能構成については、通信装置100と同様であるため、ここでの説明を省略する。
【0029】
通信装置100は、アンテナ110と、近距離無線通信部120と、制御部130と、メモリ140と、IIFSタイマ150とを備える。
【0030】
アンテナ110は、近距離無線通信部120と接続され、誘導電界/磁界を用いた無線信号により他の通信装置(例えば、通信装置200、通信装置800)との間で電波を送受するためのアンテナである。
【0031】
近距離無線通信部120は、Transfer Jet規格に基づく近接無線通信を実行する通信モジュールである。すなわち、近距離無線通信部120は、近距離無線通信部120(アンテナ110)から所定の通信範囲内に存在する他の通信装置(近距離無線通信機能を備える通信装置)との間で近距離無線通信を行う。ここで、近距離無線通信部120と他の通信装置との間の近距離無線通信は、近距離無線通信部120と他の通信装置とが近接状態である場合にのみ可能となる。ここで、近接状態は、例えば、近距離無線通信部120と他の通信装置との間の距離が所定範囲(例えば、3cm)以内に接近または接触している状態を意味する。なお、アンテナ110および近距離無線通信部120は、1つのモジュールとして構成するようにしてもよい。なお、近距離無線通信部120は、特許請求の範囲に記載の通信部の一例である。
【0032】
制御部130は、メモリ140に格納されている制御プログラムに基づいて通信装置100における各部の動作を制御するものである。制御部130は、例えば、マイクロプロセッサにより構成される。例えば、制御部130は、近距離無線通信部120と接続され、近距離無線通信部120を介して接続される他の通信装置との間で行われる各種データの送受信の制御を行う。
【0033】
ここで、通信装置100がイニシエータとなっている場合を想定する。この場合には、制御部130は、他の通信装置への送信対象となるデータの送信開始タイミングを調整することにより、近距離無線通信において通信相手にデータを送信するための送信権を他の通信装置との間で交互に設定するための制御を行う。ここで示す通信相手は、イニシエータを基準とする場合にはレスポンダを意味し、レスポンダを基準とする場合にはイニシエータを意味するものとする。
【0034】
ここで、その送信開始タイミングを第1送信開始タイミングとし、他の通信装置において通信装置100への送信対象となるデータの送信開始タイミングを第2送信開始タイミングとする。この場合には、制御部130は、第2送信開始タイミングを基準として、第1送信開始タイミングをずらすことにより、送信開始タイミングの調整を行う。
【0035】
具体的には、制御部130は、送信権を通信装置100に設定する場合(例えば、図10に示す「IIFSの設定期間」)における第1送信開始タイミングを、第2送信開始タイミングよりも早いタイミングとする。また、制御部130は、送信権を他の通信装置に設定する場合(例えば、図10に示す「RIFS+Tbstの設定期間」)における第1送信開始タイミングを、第2送信開始タイミングよりも遅いタイミングとする。なお、これらの送信開始タイミングについては、図10を参照して詳細に説明する。
【0036】
また、制御部130は、他の通信装置にデータを送信するためのIFS(Inter-Frame Space)の値を変更することにより、送信開始タイミングの調整を行う。具体的には、制御部130は、送信権を通信装置100に設定する場合には、IFSとしてIIFS(Initiator Inter-Frame Space)の値を採用する。一方、制御部130は、送信権を他の通信装置に設定する場合には、IFSとしてRIFS(Responder Inter-Frame Space)よりも大きい値を採用する。
【0037】
また、制御部130は、図3に示すユーザアプリケーション層330またはPCL(Protocol Conversion Layer)層320の設定内容に基づいて、第1設定時間および第2設定時間の比率を決定する。ここで、第1設定時間は、送信権が通信装置100に設定される時間であり、例えば、図10に示す「IIFSの設定期間」に対応する。また、第2設定時間は、送信権が他の通信装置に設定される時間であり、例えば、図10に示す「RIFS+Tbstの設定期間」に対応する。また、制御部130は、決定された第1設定時間および第2設定時間をIIFSタイマ150に出力して保持させる。
【0038】
このように設定される接続権に基づいて、通信装置100との間で近距離無線通信を行う他の通信装置はデータ送信を行うことができる。
【0039】
メモリ140は、制御部130が各種制御を行うための制御プログラム(例えば、各種アプリケーションプログラム、近距離無線通信部120による近接無線通信を制御するための通信制御プログラム)、送信データ、受信データ等を格納するメモリである。メモリ140は、例えば、ROM(Read Only Memory)やRAM(Random Access Memory)により構成される。
【0040】
IIFSタイマ150は、送信権が通信装置100に設定される第1設定時間と、送信権が他の通信装置に設定される第2設定時間とを交互に計時するタイマである。そして、IIFSタイマ150は、第1設定時間または第2設定時間に達した場合にその旨(IIFS切替トリガ)を制御部130に通知する。なお、IIFSタイマ150は、特許請求の範囲に記載のタイマの一例である。
【0041】
また、制御部130は、第1設定時間または第2設定時間に達した旨の通知(IIFS切替トリガ)をIIFSタイマ150から受け付けた場合には、IFSの値を変更する制御を行う。すなわち、第1設定時間または第2設定時間のそれぞれの時間に達する毎にIFSの値が変更(切り替え)される。なお、IIFSの値の切り替えについては、図10を参照して詳細に説明する。
【0042】
[通信装置のプロトコルスタック例]
図3は、本技術の第1の実施の形態における通信装置100のプロトコルスタックの構成例を示す図である。図3では、Transfer Jetによる無線通信用の通信プロトコルスタックの構成例を示す。この通信プロトコルスタックは、4つの層から構成される。すなわち、PHY(Physical Layer)層300と、CNL(Connection Layer)層310とから構成される。また、PCL(Protocol Conversion Layer)層320と、ユーザアプリケーション(User Application)層330とから構成される。
【0043】
PHY層300は、無線の物理的な接続を提供する層であり、例えば、図2に示す近距離無線通信部120に相当する。
【0044】
CNL層310は、PHY層300におけるコネクションのセットアップ(setup)/リリース(release)を行う層であり、CNLプロトコル311およびIIFSタイマ312を含む。また、CNL層310は、イニシエータおよびレスポンダ間の送受信における調停、データの連続性およびデータの確実性(誤りがない)を保証する。
【0045】
PCL層320は、上下のレイヤのプロトコルの変換を行う層であり、PCLコントローラ321と、OBEXアダプタ322と、SCSIアダプタ323とを含む。具体的には、PCL層320では、コネクションセットアップ(Connection setup)、コネクションリリース(Connection release)、デバイス認証(device authentication)等が行われる。また、PCL層320では、動作モード設定(operation mode setting)、上位レイヤに対する初期化(initialization to the upper layer)等が行われる。
【0046】
ユーザアプリケーション層330は、Transfer Jetを用いる個別のユーザアプリケーションを示す層である。例えば、ユーザアプリケーション層330は、第1のユーザアプリケーション331、第2のユーザアプリケーション332、第3のユーザアプリケーション333を含む。
【0047】
なお、CNL層310、PCL層320およびユーザアプリケーション層330は、例えば、制御部130がメモリ140に記憶されているプログラムを実行することにより実現される。
【0048】
ここで、CNL層310に実装されているIIFSタイマ312について説明する。IIFSタイマ312は、図2に示すIIFSタイマ150に相当するものであり、CNLプロトコル311から独立したタイマである。また、IIFSタイマ312は、CNLプロトコル311の状態にかかわらず定められた割合によりIIFS切替トリガを発行する。また、CNLプロトコル311は、IIFSタイマ312から発行されたIIFS切替トリガに応じてIIFSの値を切り替える。なお、IIFSの値を切り替えについては、図10を参照して詳細に説明する。
【0049】
このように、本技術の第1の実施の形態では、IIFSの値をCNLプロトコル311とは非同期に変化させることができる。このため、プロトコルの実装において難易度を大きく低減させることができる。
【0050】
[2つの通信装置間で行われる通信状態例]
図4は、本技術の第1の実施の形態における通信装置100および200間で行われる通信状態を模式的に示す図である。図4では、図1(c)に示すように、通信装置100がイニシエータとなり、通信装置200がレスポンダとなっている状態で、通信装置100および200間において行われる通信例を示す。また、これらの各通信プロトコルスタックの構成は、図3と同様であるものとする。このため、図4では、通信装置(イニシエータ)100には図3と同一の符号を付し、通信装置(レスポンダ)200には各層に対応する符号のみを変更して示し、他の符号については図3と同一の符号を付す。
【0051】
通信装置(イニシエータ)100および通信装置(レスポンダ)200間においてTransfer Jetによる近距離無線通信を行う場合を想定する。この近距離無線通信では、ユーザアプリケーション層330、370間でアプリケーションデータが通信される。このアプリケーションデータは、例えば、ユーザアプリケーション層330から、PCL層320およびCNL層310を通じてPHY層300に出力される。そして、PHY層300から相手先の通信装置に送信される。
【0052】
例えば、通信装置(イニシエータ)100では、CNL層310、PCL層320、ユーザアプリケーション層330の順に接続処理が行われる。また、通信装置(レスポンダ)200についても同様に接続処理が行われる。また、通信装置(イニシエータ)100では、ユーザアプリケーション層330またはPCL層320の設定内容に応じて、IIFSの時間比率(N:M)が決定される。すなわち、ユーザアプリケーション層330またはPCL層320の設定内容に基づいて、上述した第1設定時間および第2設定時間の比率が決定される。
【0053】
このように、時間比率が決定された後は、CNLプロトコル311によるCNLプロトコル処理とは独立にIIFSタイマ312が開始される。そして、IIFSタイマ312が規定時間(第1設定時間または第2設定時間)に達した場合には、IIFSタイマ312は、CNLプロトコル311に対してIIFS切替トリガを発行する。
【0054】
ここで、本技術の第1の実施の形態では、イニシエータ側ではIIFSの値の切り替えが行われるが、レスポンダ側では、RIFSの値が使用し続けられる。このため、図4では、通信装置(レスポンダ)200におけるIIFSタイマ312については、点線で示す。
【0055】
[2つの通信装置間で行われる通信の開始例]
図5は、本技術の第1の実施の形態における通信装置100および200間で行われる通信の様子を模式的に示す図である。
【0056】
図5(a)では、図1(c)に示すように、通信装置100がイニシエータとなり、通信装置200がレスポンダとなっている状態で、通信装置100および200間において行われる通信例を示す。
【0057】
例えば、ユーザによってTransfer Jetの通信路が確立される場合、通信装置(イニシエータ)100は、Management Frame(「Connection Request」と称される。)を送信し続ける。一方、通信装置(レスポンダ)200は、低消費待ち受け状態で「Connection Request」を待ち続ける。この状態から、通信装置(レスポンダ)200が「Connection Request」を受信すると、「Connected」と呼ばれる通信路が確立された状態となる。
【0058】
図5(b)では、図1(b)に示すように、通信装置100がレスポンダとなり、通信装置800がイニシエータとなっている状態で、通信装置100および800間において行われる通信例を示す。なお、図5(b)に示すイニシエータおよびレスポンダ間における通信例は、図5(a)と同様であるため、ここでの説明を省略する。ただし、図5(b)では、通信装置100の役割がイニシエータからレスポンダに切り替えられている。
【0059】
[Connectionの確立例]
図6は、本技術の第1の実施の形態における通信装置100および200間におけるConnectionの確立例およびこの確立後のデータフレームの送信例を模式的に示す図である。このデータフレームは、CSDU(CNL Service Data Unit)と称される。また、図6では、縦軸を時間軸とする。
【0060】
通信装置(イニシエータ)100は、ユーザ操作に基づく通信路の確立の要求を受け付けると、「Connection Request」を送信し続ける(411)。
【0061】
通信装置(レスポンダ)200は、通信装置(イニシエータ)100からの「Connection Request」を受信すると、通信装置(イニシエータ)100にManagement Frameを送信する(412)。上述したように、Management Frameは、「Connection Accept」と称される。
【0062】
続いて、通信装置(イニシエータ)100は、通信装置(レスポンダ)200からの「Connection Accept」を受信すると、「Connection Accept」に対する「Ack」フレームを送信する(413)。
【0063】
続いて、通信装置(レスポンダ)200が、通信装置(イニシエータ)100からの「Ack」フレームを受信すると、「Connected」と称されるStateとなり、通信路が確立される(414)。
【0064】
このように通信路が確立された状態では、通信装置(イニシエータ)100および通信装置(レスポンダ)200は、各々独自のタイミングでCSDUパケットの送信を開始する(415)。なお、送信対象となるCSDUパケットについては、図7を参照して詳細に説明する。
【0065】
ここで、Transfer Jetでは、アクセス方式としてCSMA/CA(Carrier Sense Multiple Access with Collision Avoidance)を採用している。このため、イニシエータおよびレスポンダが同時にパケットを送信した場合には衝突が生じる。ただし、その衝突後において、何れか一方のパケットの送受信が行われた後には、IFSの値により送信権が制御される。このIFSとして、イニシエータ側では、IIFSの値が用いられる。また、レスポンダ側では、RIFSの値が用いられる。なお、送信権の制御については、図10乃至図12を参照して詳細に説明する。
【0066】
[送信パケットの構成例]
図7は、本技術の第1の実施の形態における通信装置間において送受信されるパケット(送信パケット)の構成例を模式的に示す図である。具体的には、CSDUを含むフレームフォーマット(Frame Format)を示す。
【0067】
図7(a)には、1つのパケットの中に1つのCSDUを含めた場合における送信パケットの構成を示す。この送信パケットは、プリアンブル(Preamble)421と、シンク(Sync)422と、PHYヘッダー(PHY Header)423とを含む。また、この送信パケットは、コモンCNLヘッダー(Common CNL Header)424と、サブCNLヘッダー(Sub CNL Header)425と、CUDU426とを含む。
【0068】
図7(b)には、1つのパケットの中に2つのCSDUを含めた場合における送信パケットの構成を示す。この送信パケットは、サブCNLヘッダー(Sub CNL Header)427およびCUDU428を含む。
【0069】
図7に示すように、Transfer Jetでは、1つのパケットの中に最大2つのCSDUを含めることが可能である。
【0070】
[IFSの送信例]
図8は、本技術の第1の実施の形態における2つの通信装置間における通信時に用いられるIFSの例を模式的に示す図である。
【0071】
図8では、SIFS(Short Inter-Frame Space)と、IIFSと、RIFSとの3種類のIFSについて説明する(例えば、非特許文献1(10.4.4)参照。)。なお、図8では、SIFSを1列目(最上段)に示し、IIFSを2列目に示し、RIFSを3列目(最下段)に示す。また、Tbstは、スロットタイム(slot time)を意味するものとする。なお、スロットタイムは、最小サイズのフレームを送信する際にかかる時間を意味する。
【0072】
SIFSは、直前のフレーム(CSDU)を受信した後に、Ackを送信するために用いられるIFSである。なお、SIFSは、イニシエータおよびレスポンダの何れからも送信される。
【0073】
IIFSは、イニシエータがCSDUを送信するために用いられるIFSであり、例えば、直前のフレーム(Ack)を送信または受信した後に用いられる。
【0074】
RIFSは、レスポンダがCSDUを送信するために用いられるIFSであり、例えば、直前のフレーム(Ack)を送信または受信した後に用いられる。
【0075】
このように、 Transfer Jetでは、IFSの概念を用いてイニシエータおよびレスポンダの送信権の制御を行う。
【0076】
ここで、図8に示すように、イニシエータがCSDUを送信する際に用いられるIIFS(2列目)の値は、レスポンダがCSDUを送信する際に用いられるRIFS(3列目)の値よりも小さい(すなわち、IIFS<RIFS)。このため、イニシエータからのパケットの送受信が行われた後は、イニシエータは、常に優先的にCSDUを送信可能となる。すなわち、イニシエータに送信データが存在する間、イニシエータからのパケットの送受信が行われた後は、イニシエータが常に送信権を保持することになる。このように、IIFSおよびRIFSの差に基づくイニシエータの送信時における優位性については、図9を参照して詳細に説明する。
【0077】
[送信権の制御例]
図9は、本技術の第1の実施の形態における通信装置100および200間におけるデータのやり取りを時系列で模式的に示す図である。なお、図9では、縦軸を時間軸とする。
【0078】
例えば、通信装置(イニシエータ)100の送信Que(Tx Que)501に格納されているCSDUが通信装置(イニシエータ)100から通信装置(レスポンダ)200に送信され(511)、受信Que(Rx Que)504に格納される。続いて、そのCSDUの送信に対するAckが、通信装置(レスポンダ)200から通信装置(イニシエータ)100に送信される(512)。
【0079】
ここで、上述したように、IIFS<RIFSである。このため、Ackの送信後(512)における次の送信権は、通信装置(イニシエータ)100に設定される。このため、Ackの受信後(512)には、通信装置(イニシエータ)100の送信Que501に格納されているCSDUが通信装置(イニシエータ)100から通信装置(レスポンダ)200に送信される(513)。
【0080】
ここで、通信装置(レスポンダ)200の送信Que(Tx Que)502にもCSDUが格納されている。ただし、通信装置(イニシエータ)100に送信権が設定されている間、通信装置(レスポンダ)200の送信Que(Tx Que)502に格納されているCSDUは送信されないことになる。
【0081】
このような現象は、Transfer Jetの仕様に基づいて発生する現象である。ここで、Transfer Jetの上位プロトコルとしてAckのやりとりが必要なプロトコルが実装された場合を想定する。例えば、Ackのやりとりが必要なプロトコルとして、TCP/IP(Transmission Control Protocol/Internet Protocol)が実装された場合を想定する。この場合において、レスポンダ側で送信権が得られず、レスポンダからCSDUの送信が大きく遅延してしまう場合には、上位プロトコルでのスループットが大きく劣化するおそれがある。
【0082】
例えば、TCP/IPでは、Ack(RTT(Round Trip Time)と呼ばれる、パケットに対しての応答)の往復時間によりスループットが定義される。なお、一般に、RTTは数(ms)〜数百(ms)で通信路に依存する。ここで、図9に示すように、イニシエータが帯域を占有する状況においては、イニシエータが送信したTCPパケットのAckをレスポンダが送信することができない。この場合には、TCP/IPでのスループットが大きく低下する。
【0083】
そこで、本技術の第1の実施の形態では、所定のタイミングでレスポンダ側でもCSDUを送信することができるようにする。
【0084】
[送信権の制御例]
図10は、本技術の第1の実施の形態におけるIIFSタイマ150から発行されるIIFS切替トリガに基づいて変更されるIFSの設定期間を時系列で模式的に示す図である。なお、図10(a)乃至(b)では、縦軸を時間軸とする。
【0085】
上述したように、所定のタイミングでレスポンダ側でもCSDUが送信することができるように、イニシエータ側でIIFSを、所定のタイミング(周期的または不定期)で切り替える。例えば、次の(1)および(2)の値に切り替える。
(1)IIFS=SIFS
(2)IIFS=RIFS+Tbst(=SIFS+2×Tbst)
【0086】
なお、上述した(1)は、通常のIIFSである。また、上述した(1)および(2)の値により、レスポンダへの送信対象となるデータの送信開始タイミング(第1送信開始タイミング)が決定される。また、レスポンダにおけるRIFSの値により、レスポンダにおいて通信装置100への送信対象となるデータの送信開始タイミング(第2送信開始タイミング)が決定される。
【0087】
図10(a)には、IIFSを周期的に切り替える場合において、T(ms)毎に(1)および(2)を切り替える場合における各設定期間を時系列で示す。例えば、T=5(ms)とすることができる。
【0088】
例えば、最初に、IIFSとして(1)(IIFS=SIFS)が設定される(図10(a)に示す最上段のブロック「IIFSの設定期間」)。続いて、(1)の設定からT(ms)後に、IIFSとして(2)(IIFS=RIFS+Tbst)が設定される(図10(a)に示す上から2段目のブロック「RIFS+Tbstの設定期間」)。続いて、(2)の設定からT(ms)後に、IIFSとして(1)(IIFS=SIFS)が設定される((図10(a)に示す上から3段目のブロック「IIFSの設定期間」)。また、図10(a)に示すように、以降も同様に、(1)および(2)が順次切り替えられる。
【0089】
図10(b)には、IIFSを周期的に切り替える場合において、時間比率を1:m(mは、2以上の正の整数)として、(1)および(2)を切り替える場合における各設定期間を時系列で示す。例えば、T=1(ms)、m=10とすることができる。
【0090】
例えば、最初に、IIFSとして(1)(IIFS=SIFS)が設定される(図10(b)に示す最上段のブロック「IIFSの設定期間」)。続いて、(1)の設定からT(ms)後に、IIFSとして(2)(IIFS=RIFS+Tbst)が設定される(図10(b)に示す上から2段目のブロック「RIFS+Tbstの設定期間」)。続いて、(2)の設定からmT(ms)後に、IIFSとして(1)(IIFS=SIFS)が設定される((図10(b)に示す上から3段目のブロック「IIFSの設定期間」)。また、図10(b)に示すように、以降も同様に、(1)および(2)が順次切り替えられる。
【0091】
図10(c)には、IIFSを周期的に切り替える場合において、時間比率をn:1(nは、2以上の正の整数)として、(1)および(2)を切り替える場合における各設定期間を時系列で示す。例えば、T=5(ms)、m=2とすることができる。
【0092】
例えば、最初に、IIFSとして(1)(IIFS=SIFS)が設定される(図10(c)に示す最上段のブロック「IIFSの設定期間」)。続いて、(1)の設定からnT(ms)後に、IIFSとして(2)(IIFS=RIFS+Tbst)が設定される(図10(b)に示す上から2段目のブロック「RIFS+Tbstの設定期間」)。続いて、(2)の設定からT(ms)後に、IIFSとして(1)(IIFS=SIFS)が設定される((図10(b)に示す上から3段目のブロック「IIFSの設定期間」)。また、図10(c)に示すように、以降も同様に、(1)および(2)が順次切り替えられる。
【0093】
なお、図10(a)乃至(c)では、(1)および(2)に対応する設定期間の時間比率を1:1、1:m、n:1とする例を示したが、他の時間比率となるようにしてもよい。例えば、(1)および(2)に対応する設定期間の時間比率として、N:M(N、Mは、互いに異なる1以上の正の整数)を用いることができる。
【0094】
また、(1)および(2)を切り替える際における基準位置(時間軸における位置)は、任意の位置とすることができる。また、上述したように、送信権をイニシエータに設定する期間は、図10に示す「IIFSの設定期間」に対応する。この「IIFSの設定期間」における送信開始タイミング(第1送信開始タイミング)は、第2送信開始タイミング(レスポンダにおいてイニシエータへの送信対象となるデータの送信開始タイミング)よりも早いタイミングとなる。また、送信権をレスポンダに設定する期間は、図10に示す「RIFS+Tbstの設定期間」に対応する。この「RIFS+Tbstの設定期間」における第1送信開始タイミングは、第2送信開始タイミングよりも遅いタイミングとなる。
【0095】
ここで、(1)および(2)の切り替えは、Transfer JetのCNL層310(図3に示す)のCNLプロトコル311に「非同期」に行われる。ここで、非同期は、CNLプロトコル311の動作を考慮せず、CNLプロトコル311の動作とは無関係に行うことができることを意味する。このように、CNLプロトコル311に非同期に行うことにより、ドライバの実装難度を軽減することができる。
【0096】
また、このように切り替えられるIIFSを長い周期で観測すると(1)および(2)の平均値に漸近し、<IIFS>≒SIFS+Tbst=RIFSとなる。このため、イニシエータの送信スループットは、レスポンダの送信スループットに漸近する。ここで、<IIFS>は、IIFSを長時間平均した値を示す。
【0097】
[送信制御例]
図11は、本技術の第1の実施の形態における通信装置100および200間におけるデータのやり取りを時系列で模式的に示す図である。図11に示す例は、図9の一部を変形したものであるため、図9に対応する部分には、同一の符号を付してこれらの説明を省略する。
【0098】
具体的には、図11では、イニシエータ側でRIFS+Tbstの設定期間(図10(a)乃至(c)に示す)に切り替えられた場合におけるデータのやり取り例を示す。
【0099】
図9と同様に、通信装置(イニシエータ)100の送信Que(Tx Que)501に格納されているCSDUが通信装置(イニシエータ)100から通信装置(レスポンダ)200に送信され(551)、受信Que(Rx Que)504に格納される。続いて、そのCSDUの送信に対するAckが、通信装置(レスポンダ)200から通信装置(イニシエータ)100に送信される(552)。
【0100】
ここで、上述したように、通信装置(イニシエータ)100では、RIFS+Tbstの設定期間であるため、IIFS>RIFSである。このため、Ackの送信後(552)における次の送信権は、通信装置(レスポンダ)200に設定される。このため、Ackの受信後(512)には、通信装置(レスポンダ)200の送信Que502に格納されているCSDUが通信装置(レスポンダ)200から通信装置(イニシエータ)100に送信される(553)。
【0101】
同様に、通信装置(イニシエータ)100においてRIFS+Tbstの設定期間である間、通信装置(レスポンダ)200に送信権が設定され続ける。このため、通信装置(レスポンダ)200の送信Que(Tx Que)502に格納されているCSDUを順次送信することができる。
【0102】
一方、通信装置(イニシエータ)100においてIIFSの設定期間となった場合には、通信装置(イニシエータ)100に送信権が設定される。この場合には、通信装置(イニシエータ)100においてIIFSの設定期間である間、通信装置(レスポンダ)200に送信権が設定され続ける。このため、通信装置(イニシエータ)100の送信Que(Tx Que)501に格納されているCSDUを順次送信することができる。
【0103】
このように、通信装置(イニシエータ)100においてIIFSの設定期間である場合には、通信装置(イニシエータ)100に送信権が設定され続けるため、通信装置(イニシエータ)100からCSDUを順次送信することができる。一方、通信装置(イニシエータ)100においてRIFS+Tbstの設定期間である場合には、通信装置(レスポンダ)200に送信権が設定され続けるため、通信装置(レスポンダ)200からCSDUを順次送信することができる。このように、通信装置(イニシエータ)100および通信装置(レスポンダ)200間において送信権を交互に設定することができる。
【0104】
図12は、本技術の第1の実施の形態における2つの通信装置間において送受信されるAckおよびPSDU(PHY SDU)の関係例を時系列で示す図である。なお、図12(a)乃至(b)では、横軸を時間軸とする。
【0105】
図12(a)には、イニシエータ側でIIFSの切り替えを行わない場合におけるAckおよびPSDUの関係例を示す。この場合には、イニシエータ側にPSDUが存在する間、イニシエータ側からレスポンダ側にPSDUが連続的に送信されることになる。
【0106】
図12(b)には、イニシエータ側でIIFSの切り替えを行わない場合におけるAckおよびPSDUの関係例を示す。この場合には、イニシエータ側におけるPSDUの送信が終了した後に、レスポンダ側からイニシエータ側にPSDUが連続的に送信されることになる。すなわち、図12(a)に示す送受信が終了した後に、図12(b)に示す送受信が行われることになる。
【0107】
図12(c)には、イニシエータ側でIIFSの切り替えを行う場合におけるAckおよびPSDUの関係例を示す。この場合には、イニシエータ側にPSDUが存在する間でも、イニシエータ側およびレスポンダ側の何れかからPSDUが交互に送信されることになる。
【0108】
[通信装置の動作例]
次に、本技術の第1の実施の形態における通信装置100の動作について図面を参照して説明する。
【0109】
図13は、本技術の第1の実施の形態における通信装置100による通信処理の処理手順の一例を示すフローチャートである。
【0110】
最初に、CNL層310の接続処理が行われる(ステップS901)。続いて、PCL層320の接続処理が行われる(ステップS902)。続いて、ユーザアプリケーション層330の接続処理が行われる(ステップS903)。
【0111】
続いて、制御部130が、ユーザアプリケーション層330またはPCL層320の設定内容に基づいて、IIFSの設定期間(第1設定時間および第2設定時間)の比率を決定する(ステップS904)。例えば、PCL層320、ユーザアプリケーション層330が要求するRTT(Round Trip Time)からの設定に基づいて、IIFSの設定期間(第1設定時間および第2設定時間)およびその比率を決定することができる。この場合には、例えば、上位レイヤのスループットを最大化するような最適な切り替え時間を設定する。例えば、RTTが10msと決まっている場合には、IIFSの設定期間(切り替え時間)を2.5ms:2.5msとし、RTTが20msと決まっている場合には、5ms:5msとすることができる。また、統計的に求めたデータに基づいて、上位レイヤのスループットを最大化するような最適な切り替え時間およびその比率(N:M)を適宜設定するようにしてもよい。
【0112】
続いて、制御部130が、通信装置100がイニシエータとなっているか否かを判断する(ステップS905)。そして、通信装置100がレスポンダとなっている場合には(ステップS905)、RIFSを用いた通信処理が行われる(ステップS906)。
【0113】
また、通信装置100がイニシエータとなっている場合には(ステップS905)、IIFSタイマ150によるカウントを開始させる(ステップS907)。
【0114】
続いて、IIFSタイマ150は、規定時間(第1設定時間または第2設定時間)に達したか否かを判断し(ステップS908)、規定時間に達していない場合には、監視を継続して行う。一方、規定時間(第1設定時間または第2設定時間)に達した場合には(ステップS908)、IIFSタイマ150は、IIFS切替トリガを発行する(ステップS909)。ここで、規定時間として、第1設定時間および第2設定時間が交互に設定される。そして、このように交互に設定された各時間に基づいて、IIFS切替トリガが発行される。
【0115】
続いて、制御部130は、IIFSタイマ150から発行されたIIFS切替トリガに応じてIIFSの値を切り替える(ステップS910)。すなわち、図10に示すように、IIFSの値が順次切り替えられる(ステップS910)。このように切り替えられたIIFSの値を用いて通信処理が行われる。また、通信処理が終了したか否かが判断され(ステップS911)、通信処理が終了していない場合には、ステップS905に戻る。なお、ステップS901乃至S911は、特許請求の範囲に記載の通信手順の一例である。また、なお、ステップS905乃至S910は、特許請求の範囲に記載の制御手順の一例である。
【0116】
ここで、イニシエータまたはレスポンダの何れか一方が、一定期間内に送信を続けるようなプロトコル(例えば、OBEX(Object Exchange))では、そもそも受信Ackの遅延という概念がないため、改善効果は少ないことが予想される。そこで、OBEX、SCSI(Small Computer System Interface)、MSC(Mass Storage Class)、TCP/IP等の各プロトコルに応じて、IIFSの切り替えを行うか否かを変更するようにしてもよい。例えば、OBEXの場合には、IIFSの切り替えをOFFとし、SCSI、MCS、TCP/IPの場合には、IIFSの切り替えをONとすることができる。これにより、各プロトコルに応じた最適なスループット特性が得られる。
【0117】
上述したように、Transfer Jetのアクセス方式はCSMA/CA方式であり、常にイニシエータの方が優先されるプロトコルを採用している。このため、スループットが高い時に帯域をイニシエータが占有し、レスポンダの送信の遅延が大きくなる。このように、レスポンダの遅延が大きくなると、TCP/IPのようなAckが必要なプロトコルにおいて、レスポンダからのAckが届かないおそれがある。この場合には、スループットが大きく低下することになる。
【0118】
そこで、本技術の第1の実施の形態では、イニシエータおよびレスポンダ間において、イニシエータ側においてIIFSを切り替えることにより送信開始タイミングをずらす。これにより、任意のタイミングで送信権(発言権)を交互に設定することができ、ゆるやかな時分割制御を導入することができる。また、CNL層よりも上位のレイヤでAckを必要とするようなプロトコルにおいて、Ackの遅延を低減することができ、スループットを改善することができる。例えば、TCP/IPのようなイニシエータまたはレスポンダが相互に送りあうプロトコルで非常に効果的であり、受信側のAckの遅延によってスループットが大きく低下するシステムにおいて有効である。なお、イニシエータ側の送信スループットが低下するが、この低下の度合いを少なくすることができる。
【0119】
また、イニシエータおよびレスポンダ間における送信権(発言権)の交互設定については、CNLプロトコルとは非同期に実行させることができる。このため、プロトコルの実装において難易度を大きく低減させることができる。
【0120】
なお、本技術の第1の実施の形態では、レスポンダ側のIFS(RIFS)を固定とし、イニシエータ側のIFS(IIFS)を切り替えることにより、送信権をイニシエータおよびレスポンダ間で交互に設定する例を示した。ただし、イニシエータ側のIFS(IIFS)を固定とし、レスポンダ側のIFS(RIFS)を切り替えることにより、送信権をイニシエータおよびレスポンダ間で交互に設定するようにしてもよい。この場合において、送信権をレスポンダに設定する場合には、レスポンダ側のIFSを、イニシエータ側のIFS(IIFS)よりも短くする。すなわち、レスポンダ側のIFSを、イニシエータ側のIFS(IIFS)よりも短くする期間を設けることにより、レスポンダ側は送信機会を得ることができる。また、レスポンダ側のIFS(RIFS)を切り替える制御は、レスポンダ側の制御部が行う。
【0121】
なお、上述の実施の形態は本技術を具現化するための一例を示したものであり、実施の形態における事項と、特許請求の範囲における発明特定事項とはそれぞれ対応関係を有する。同様に、特許請求の範囲における発明特定事項と、これと同一名称を付した本技術の実施の形態における事項とはそれぞれ対応関係を有する。ただし、本技術は実施の形態に限定されるものではなく、その要旨を逸脱しない範囲において実施の形態に種々の変形を施すことにより具現化することができる。
【0122】
また、上述の実施の形態において説明した処理手順は、これら一連の手順を有する方法として捉えてもよく、また、これら一連の手順をコンピュータに実行させるためのプログラム乃至そのプログラムを記憶する記録媒体として捉えてもよい。この記録媒体として、例えば、CD(Compact Disc)、MD(MiniDisc)、DVD(Digital Versatile Disk)、メモリカード、ブルーレイディスク(Blu-ray Disc(登録商標))等を用いることができる。
【0123】
なお、本技術は以下のような構成もとることができる。
(1) 他の通信装置との間で近距離無線通信を行う通信部と、
前記他の通信装置への送信対象となるデータの送信開始タイミングを調整することにより前記近距離無線通信において通信相手にデータを送信するための送信権を前記他の通信装置との間で交互に設定するための制御を行う制御部と
を具備する通信装置。
(2) 前記制御部は、前記送信開始タイミングを第1送信開始タイミングとし、前記他の通信装置において前記通信装置への送信対象となるデータの送信開始タイミングを第2送信開始タイミングとする場合に、前記第2送信開始タイミングを基準として前記第1送信開始タイミングをずらすことにより前記調整を行う前記(1)に記載の通信装置。
(3) 前記制御部は、前記送信権を前記通信装置に設定する場合における前記第1送信開始タイミングを、前記第2送信開始タイミングよりも早いタイミングとし、前記送信権を前記他の通信装置に設定する場合における前記第1送信開始タイミングを、前記第2送信開始タイミングよりも遅いタイミングとする前記調整を行う前記(2)に記載の通信装置。
(4) 前記通信部は、Transfer Jetに基づいて前記近距離無線通信を行い、
前記制御部は、前記通信装置がイニシエータとなっている場合に前記制御を行う
前記(1)から(3)のいずれかに記載の通信装置。
(5) 前記制御部は、前記他の通信装置にデータを送信するためのIFS(Inter-Frame Space)の値を変更することにより前記調整を行う前記(4)に記載の通信装置。
(6) 前記制御部は、前記送信権を前記通信装置に設定する場合には前記IFSとしてIIFS(Initiator Inter-Frame Space)の値を採用し、前記送信権を前記他の通信装置に設定する場合には前記IFSとしてRIFS(Responder Inter-Frame Space)よりも大きい値を採用することにより前記調整を行う前記(5)に記載の通信装置。
(7) 前記送信権が前記通信装置に設定される第1設定時間と前記送信権が前記他の通信装置に設定される第2設定時間とを交互に計時して各時間に達した場合にその旨を前記制御部に通知するタイマをさらに具備し、
前記制御部は、前記第1設定時間および前記第2設定時間のそれぞれの時間に達する毎に前記IFSの値を変更することにより前記調整を行う
前記(5)に記載の通信装置。
(8) 前記制御部は、ユーザアプリケーション層またはPCL(Protocol Conversion Layer)層の設定内容に基づいて、前記送信権が前記通信装置に設定される第1設定時間と前記送信権が前記他の通信装置に設定される第2設定時間との比率を決定する前記(4)に記載の通信装置。
(9) 通信相手にデータを送信するための送信権に基づいて第1の通信装置との間で近距離無線通信を行う通信部を備える第2の通信装置と、
前記送信権に基づいて前記第2の通信装置との間で近距離無線通信を行う通信部と、前記第2の通信装置への送信対象となるデータの送信開始タイミングを調整することにより前記送信権を前記第2の通信装置との間で交互に設定するための制御を行う制御部とを備える第1の通信装置と
を具備する通信システム。
(10) 他の通信装置との間で近距離無線通信を行う通信手順と、
前記他の通信装置への送信対象となるデータの送信開始タイミングを調整することにより前記近距離無線通信において通信相手にデータを送信するための送信権を前記他の通信装置との間で交互に設定するための制御を行う制御手順と
を具備する通信装置の制御方法。
【符号の説明】
【0124】
100、200、800 通信装置
110 アンテナ
120 近距離無線通信部
130 制御部
140 メモリ
150 IIFSタイマ
【技術分野】
【0001】
本技術は、通信装置に関する。詳しくは、他の通信装置との間で近距離無線通信を行う通信装置、これを含む通信システムおよび通信装置の制御方法に関する。
【背景技術】
【0002】
従来、無線通信を利用して各種データのやり取りを行う無線通信技術が存在する。例えば、2つの通信装置間において近距離無線通信により各種データのやり取りを行う無線通信技術が存在する(例えば、非特許文献1参照。)。
【先行技術文献】
【非特許文献】
【0003】
【非特許文献1】ECMA−398
【発明の概要】
【発明が解決しようとする課題】
【0004】
上述の従来技術によれば、データを移動させるためのカード(例えば、メモリカード)やケーブル等を用いることなく、2つの通信装置間において各種データのやり取りを容易に行うことができる。
【0005】
ここで、通信装置に実装されているプロトコルによっては、通信対象となる2つの通信装置のうち、一方の通信装置におけるデータ送信が終了するまでの間、この通信装置からのデータ送信が継続して行われることもある。この場合には、他方の通信装置からのデータ送信が遅延してしまい、通信装置に実装されているプロトコルによっては、スループットが劣化してしまうおそれがある。
【0006】
本技術はこのような状況に鑑みて生み出されたものであり、近距離無線通信時におけるスループットを向上させることを目的とする。
【課題を解決するための手段】
【0007】
本技術は、上述の問題点を解消するためになされたものであり、その第1の側面は、他の通信装置との間で近距離無線通信を行う通信部と、上記他の通信装置への送信対象となるデータの送信開始タイミングを調整することにより上記近距離無線通信において通信相手にデータを送信するための送信権を上記他の通信装置との間で交互に設定するための制御を行う制御部とを具備する通信装置およびその制御方法ならびに当該方法をコンピュータに実行させるプログラムである。これにより、他の通信装置への送信対象となるデータの送信開始タイミングを調整することにより、送信権を他の通信装置との間で交互に設定するという作用をもたらす。
【0008】
また、この第1の側面において、上記制御部は、上記送信開始タイミングを第1送信開始タイミングとし、上記他の通信装置において上記通信装置への送信対象となるデータの送信開始タイミングを第2送信開始タイミングとする場合に、上記第2送信開始タイミングを基準として上記第1送信開始タイミングをずらすことにより上記調整を行うようにしてもよい。これにより、第2送信開始タイミングを基準として、第1送信開始タイミングをずらすことにより、送信開始タイミングの調整を行うという作用をもたらす。
【0009】
また、この第1の側面において、上記制御部は、上記送信権を上記通信装置に設定する場合における上記第1送信開始タイミングを、上記第2送信開始タイミングよりも早いタイミングとし、上記送信権を上記他の通信装置に設定する場合における上記第1送信開始タイミングを、上記第2送信開始タイミングよりも遅いタイミングとする上記調整を行うようにしてもよい。これにより、送信権を通信装置に設定する場合における第1送信開始タイミングを、第2送信開始タイミングよりも早いタイミングとし、送信権を他の通信装置に設定する場合における第1送信開始タイミングを、第2送信開始タイミングよりも遅いタイミングとするという作用をもたらす。
【0010】
また、この第1の側面において、上記通信部は、Transfer Jetに基づいて上記近距離無線通信を行い、上記制御部は、上記通信装置がイニシエータとなっている場合に上記制御を行うようにしてもよい。これにより、Transfer Jetに基づいて近距離無線通信を行い、通信装置がイニシエータとなっている場合に送信権の制御を行うという作用をもたらす。
【0011】
また、この第1の側面において、上記制御部は、上記他の通信装置にデータを送信するためのIFS(Inter-Frame Space)の値を変更することにより上記調整を行うようにしてもよい。これにより、IFSの値を変更することにより、送信開始タイミングの調整を行うという作用をもたらす。
【0012】
また、この第1の側面において、上記制御部は、上記送信権を上記通信装置に設定する場合には上記IFSとしてIIFS(Initiator Inter-Frame Space)の値を採用し、上記送信権を上記他の通信装置に設定する場合には上記IFSとしてRIFS(Responder Inter-Frame Space)よりも大きい値を採用することにより上記調整を行うようにしてもよい。これにより、送信権を通信装置に設定する場合にはIIFSの値を採用し、送信権を他の通信装置に設定する場合にはRIFSよりも大きい値を採用するという作用をもたらす。
【0013】
また、この第1の側面において、上記送信権が上記通信装置に設定される第1設定時間と上記送信権が上記他の通信装置に設定される第2設定時間とを交互に計時して各時間に達した場合にその旨を上記制御部に通知するタイマをさらに具備し、上記制御部は、上記第1設定時間および上記第2設定時間のそれぞれの時間に達する毎に上記IFSの値を変更することにより上記調整を行うようにしてもよい。これにより、第1設定時間および第2設定時間のそれぞれの時間に達する毎に、IFSの値を変更することにより、送信開始タイミングの調整を行うという作用をもたらす。
【0014】
また、この第1の側面において、上記制御部は、ユーザアプリケーション層またはPCL(Protocol Conversion Layer)層の設定内容に基づいて、上記送信権が上記通信装置に設定される第1設定時間と上記送信権が上記他の通信装置に設定される第2設定時間との比率を決定するようにしてもよい。これにより、ユーザアプリケーション層またはPCL層の設定内容に基づいて、第1設定時間および第2設定時間の比率を決定するという作用をもたらす。
【0015】
また、本技術の第2の側面は、通信相手にデータを送信するための送信権に基づいて第1の通信装置との間で近距離無線通信を行う通信部を備える第2の通信装置と、上記送信権に基づいて上記第2の通信装置との間で近距離無線通信を行う通信部と、上記第2の通信装置への送信対象となるデータの送信開始タイミングを調整することにより上記送信権を上記第2の通信装置との間で交互に設定するための制御を行う制御部とを備える第1の通信装置とを具備する通信システムおよびその制御方法ならびに当該方法をコンピュータに実行させるプログラムである。これにより、第1の通信装置が、第2の通信装置への送信対象となるデータの送信開始タイミングを調整することにより、送信権を第2の通信装置との間で交互に設定するという作用をもたらす。
【発明の効果】
【0016】
本技術によれば、近距離無線通信時におけるスループットを向上させることができるという優れた効果を奏し得る。
【図面の簡単な説明】
【0017】
【図1】本技術の第1の実施の形態における通信装置を簡略化して示す図である。
【図2】本技術の第1の実施の形態における通信装置100の機能構成例を示すブロック図である。
【図3】本技術の第1の実施の形態における通信装置100のプロトコルスタックの構成例を示す図である。
【図4】本技術の第1の実施の形態における通信装置100および200間で行われる通信状態を模式的に示す図である。
【図5】本技術の第1の実施の形態における通信装置100および200間で行われる通信の様子を模式的に示す図である。
【図6】本技術の第1の実施の形態における通信装置100および200間におけるConnectionの確立例およびこの確立後のデータフレームの送信例を模式的に示す図である。
【図7】本技術の第1の実施の形態における通信装置間において送受信されるパケット(送信パケット)の構成例を模式的に示す図である。
【図8】本技術の第1の実施の形態における2つの通信装置間における通信時に用いられるIFSの例を模式的に示す図である。
【図9】本技術の第1の実施の形態における通信装置100および200間におけるデータのやり取りを時系列で模式的に示す図である。
【図10】本技術の第1の実施の形態におけるIIFSタイマ150から発行されるIIFS切替トリガに基づいて変更されるIFSの設定期間を時系列で模式的に示す図である。
【図11】本技術の第1の実施の形態における通信装置100および200間におけるデータのやり取りを時系列で模式的に示す図である。
【図12】本技術の第1の実施の形態における2つの通信装置間において送受信されるAckおよびPSDU(PHY SDU)の関係例を時系列で示す図である。
【図13】本技術の第1の実施の形態における通信装置100による通信処理の処理手順の一例を示すフローチャートである。
【発明を実施するための形態】
【0018】
以下、本技術を実施するための形態(以下、実施の形態と称する)について説明する。説明は以下の順序により行う。
1.第1の実施の形態(通信制御:イニシエータ側において送信開始タイミングの調整を行うことにより通信相手との間で送信権を交互に設定する例)
【0019】
<1.第1の実施の形態>
[通信装置の使用例]
【0020】
図1は、本技術の第1の実施の形態における通信装置を簡略化して示す図である。なお、本技術の第1の実施の形態では、近距離無線通信方式を採用する通信装置の使用例にして説明する。具体的には、本技術の第1の実施の形態では、Transfer Jet(登録商標)における多重接続方式について説明する。
【0021】
ここで、Transfer Jetは、4.48GHz帯を用いた近距離無線通信方式である。この通信プロトコル(Transfer Jet)を用いることにより、4.48GHzの電波を−70dBm/MHz以下で使用し、最大560Mbpsの高速近距離データ通信を実現することができる。また、近距離無線通信における通信距離を数cmに限定することにより、通信処理を高速化することができるとともに、通信装置を小規模化することができ、省電力化を達成することができる。
【0022】
また、Transfer Jetでは、近接する2つの通信装置のそれぞれが、常に、イニシエータ(Initiator)およびレスポンダ(Responder)の2つの役割に別れて通信を行う。ただし、イニシエータおよびレスポンダのそれぞれは、その役割とは無関係に互いにデータを送受することができる。なお、イニシエータおよびレスポンダは、その使用状況やユーザ操作等に応じて、その役割を切り替えることができる。これらの通信例については、図5、図6等を参照して詳細に説明する。
【0023】
なお、Transfer Jetを使用する通信装置として、デジタルスチルカメラ、パーソナルコンピュータ(PC)、モバイル機器(例えば、携帯電話装置、スマートフォン)等が想定される。そこで、図1(a)乃至(c)では、Transfer Jetを使用する通信装置の一例として、デジタルスチルカメラ、パーソナルコンピュータを簡略化して示す。また、図1(b)および(c)では、イニシエータおよびレスポンダ間において通信している状態を簡略化して示す。なお、各図では、各通信装置の役割(イニシエータ、レスポンダ)を、通信装置の名称とともに括弧書きで併記して示す。
【0024】
図1(a)には、近距離無線通信機能および撮像部を備える通信装置100を示す。通信装置100は、例えば、デジタルスチルカメラ、デジタルビデオカメラ(カメラ一体型レコーダ)である。また、通信装置(カメラ)100における一部(例えば、外側面の一部)は、通信面として機能する。ここで、通信装置(カメラ)100は、基本的には、レスポンダとなり、低消費電力モードにおいて「Connection Request」を待っている状態となる。なお、「Connection Request」については、図6を参照して詳細に説明する。
【0025】
図1(b)には、近距離無線通信機能を備える通信装置800と通信装置100との間で通信を行っている状態を示す。通信装置800は、例えば、パーソナルコンピュータ(PC)である。また、通信装置(PC)800における一部(例えば、操作部が設けられている操作面の一部)は、通信面として機能する。ここで、通信装置(PC)800は、基本的には、イニシエータとなり、間欠送信をしながら「Connection Request」を送信し続けている。この場合に、例えば、通信装置(カメラ)100を手に持ったユーザ10が、通信装置(カメラ)100の通信面と、通信装置(PC)800の通信面とを近接させる操作(すなわち、かざす操作)を行う。この操作により、通信装置(カメラ)100および通信装置(PC)800間においてデータ通信処理を開始させることができる。
【0026】
図1(c)には、近距離無線通信機能および撮像部を備える通信装置200と、通信装置100との間で通信を行っている状態を示す。ここで、カメラ同士で通信を行う場合には、コンテンツ(例えば、静止画ファイル、動画ファイル)を送信する側が、イニシエータとなり、「Connection Request」の送信を行う。この場合に、例えば、通信装置(カメラ)100の通信面と、通信装置(カメラ)200の通信面とを近接させる操作(すなわち、かざす操作)を行う。この操作により、通信装置(カメラ)100および通信装置(カメラ)200間においてデータ通信処理を開始させることができる。
【0027】
なお、図1では、カメラ、PCを例にして説明するが、例えば、無線通信機能を備える他の通信装置についても同様に適用することができる。例えば、携帯電話装置(例えば、通話機能およびデータ通信機能を備えるスマートフォン)、音声出力装置(例えば、携帯型ミュージックプレーヤー)、無線通信機能を備える表示装置(例えば、デジタルフォトフレーム)について適用することができる。
【0028】
[通信装置の構成例]
図2は、本技術の第1の実施の形態における通信装置100の機能構成例を示すブロック図である。なお、通信装置200、通信装置800の無線通信に関する機能構成については、通信装置100と同様であるため、ここでの説明を省略する。
【0029】
通信装置100は、アンテナ110と、近距離無線通信部120と、制御部130と、メモリ140と、IIFSタイマ150とを備える。
【0030】
アンテナ110は、近距離無線通信部120と接続され、誘導電界/磁界を用いた無線信号により他の通信装置(例えば、通信装置200、通信装置800)との間で電波を送受するためのアンテナである。
【0031】
近距離無線通信部120は、Transfer Jet規格に基づく近接無線通信を実行する通信モジュールである。すなわち、近距離無線通信部120は、近距離無線通信部120(アンテナ110)から所定の通信範囲内に存在する他の通信装置(近距離無線通信機能を備える通信装置)との間で近距離無線通信を行う。ここで、近距離無線通信部120と他の通信装置との間の近距離無線通信は、近距離無線通信部120と他の通信装置とが近接状態である場合にのみ可能となる。ここで、近接状態は、例えば、近距離無線通信部120と他の通信装置との間の距離が所定範囲(例えば、3cm)以内に接近または接触している状態を意味する。なお、アンテナ110および近距離無線通信部120は、1つのモジュールとして構成するようにしてもよい。なお、近距離無線通信部120は、特許請求の範囲に記載の通信部の一例である。
【0032】
制御部130は、メモリ140に格納されている制御プログラムに基づいて通信装置100における各部の動作を制御するものである。制御部130は、例えば、マイクロプロセッサにより構成される。例えば、制御部130は、近距離無線通信部120と接続され、近距離無線通信部120を介して接続される他の通信装置との間で行われる各種データの送受信の制御を行う。
【0033】
ここで、通信装置100がイニシエータとなっている場合を想定する。この場合には、制御部130は、他の通信装置への送信対象となるデータの送信開始タイミングを調整することにより、近距離無線通信において通信相手にデータを送信するための送信権を他の通信装置との間で交互に設定するための制御を行う。ここで示す通信相手は、イニシエータを基準とする場合にはレスポンダを意味し、レスポンダを基準とする場合にはイニシエータを意味するものとする。
【0034】
ここで、その送信開始タイミングを第1送信開始タイミングとし、他の通信装置において通信装置100への送信対象となるデータの送信開始タイミングを第2送信開始タイミングとする。この場合には、制御部130は、第2送信開始タイミングを基準として、第1送信開始タイミングをずらすことにより、送信開始タイミングの調整を行う。
【0035】
具体的には、制御部130は、送信権を通信装置100に設定する場合(例えば、図10に示す「IIFSの設定期間」)における第1送信開始タイミングを、第2送信開始タイミングよりも早いタイミングとする。また、制御部130は、送信権を他の通信装置に設定する場合(例えば、図10に示す「RIFS+Tbstの設定期間」)における第1送信開始タイミングを、第2送信開始タイミングよりも遅いタイミングとする。なお、これらの送信開始タイミングについては、図10を参照して詳細に説明する。
【0036】
また、制御部130は、他の通信装置にデータを送信するためのIFS(Inter-Frame Space)の値を変更することにより、送信開始タイミングの調整を行う。具体的には、制御部130は、送信権を通信装置100に設定する場合には、IFSとしてIIFS(Initiator Inter-Frame Space)の値を採用する。一方、制御部130は、送信権を他の通信装置に設定する場合には、IFSとしてRIFS(Responder Inter-Frame Space)よりも大きい値を採用する。
【0037】
また、制御部130は、図3に示すユーザアプリケーション層330またはPCL(Protocol Conversion Layer)層320の設定内容に基づいて、第1設定時間および第2設定時間の比率を決定する。ここで、第1設定時間は、送信権が通信装置100に設定される時間であり、例えば、図10に示す「IIFSの設定期間」に対応する。また、第2設定時間は、送信権が他の通信装置に設定される時間であり、例えば、図10に示す「RIFS+Tbstの設定期間」に対応する。また、制御部130は、決定された第1設定時間および第2設定時間をIIFSタイマ150に出力して保持させる。
【0038】
このように設定される接続権に基づいて、通信装置100との間で近距離無線通信を行う他の通信装置はデータ送信を行うことができる。
【0039】
メモリ140は、制御部130が各種制御を行うための制御プログラム(例えば、各種アプリケーションプログラム、近距離無線通信部120による近接無線通信を制御するための通信制御プログラム)、送信データ、受信データ等を格納するメモリである。メモリ140は、例えば、ROM(Read Only Memory)やRAM(Random Access Memory)により構成される。
【0040】
IIFSタイマ150は、送信権が通信装置100に設定される第1設定時間と、送信権が他の通信装置に設定される第2設定時間とを交互に計時するタイマである。そして、IIFSタイマ150は、第1設定時間または第2設定時間に達した場合にその旨(IIFS切替トリガ)を制御部130に通知する。なお、IIFSタイマ150は、特許請求の範囲に記載のタイマの一例である。
【0041】
また、制御部130は、第1設定時間または第2設定時間に達した旨の通知(IIFS切替トリガ)をIIFSタイマ150から受け付けた場合には、IFSの値を変更する制御を行う。すなわち、第1設定時間または第2設定時間のそれぞれの時間に達する毎にIFSの値が変更(切り替え)される。なお、IIFSの値の切り替えについては、図10を参照して詳細に説明する。
【0042】
[通信装置のプロトコルスタック例]
図3は、本技術の第1の実施の形態における通信装置100のプロトコルスタックの構成例を示す図である。図3では、Transfer Jetによる無線通信用の通信プロトコルスタックの構成例を示す。この通信プロトコルスタックは、4つの層から構成される。すなわち、PHY(Physical Layer)層300と、CNL(Connection Layer)層310とから構成される。また、PCL(Protocol Conversion Layer)層320と、ユーザアプリケーション(User Application)層330とから構成される。
【0043】
PHY層300は、無線の物理的な接続を提供する層であり、例えば、図2に示す近距離無線通信部120に相当する。
【0044】
CNL層310は、PHY層300におけるコネクションのセットアップ(setup)/リリース(release)を行う層であり、CNLプロトコル311およびIIFSタイマ312を含む。また、CNL層310は、イニシエータおよびレスポンダ間の送受信における調停、データの連続性およびデータの確実性(誤りがない)を保証する。
【0045】
PCL層320は、上下のレイヤのプロトコルの変換を行う層であり、PCLコントローラ321と、OBEXアダプタ322と、SCSIアダプタ323とを含む。具体的には、PCL層320では、コネクションセットアップ(Connection setup)、コネクションリリース(Connection release)、デバイス認証(device authentication)等が行われる。また、PCL層320では、動作モード設定(operation mode setting)、上位レイヤに対する初期化(initialization to the upper layer)等が行われる。
【0046】
ユーザアプリケーション層330は、Transfer Jetを用いる個別のユーザアプリケーションを示す層である。例えば、ユーザアプリケーション層330は、第1のユーザアプリケーション331、第2のユーザアプリケーション332、第3のユーザアプリケーション333を含む。
【0047】
なお、CNL層310、PCL層320およびユーザアプリケーション層330は、例えば、制御部130がメモリ140に記憶されているプログラムを実行することにより実現される。
【0048】
ここで、CNL層310に実装されているIIFSタイマ312について説明する。IIFSタイマ312は、図2に示すIIFSタイマ150に相当するものであり、CNLプロトコル311から独立したタイマである。また、IIFSタイマ312は、CNLプロトコル311の状態にかかわらず定められた割合によりIIFS切替トリガを発行する。また、CNLプロトコル311は、IIFSタイマ312から発行されたIIFS切替トリガに応じてIIFSの値を切り替える。なお、IIFSの値を切り替えについては、図10を参照して詳細に説明する。
【0049】
このように、本技術の第1の実施の形態では、IIFSの値をCNLプロトコル311とは非同期に変化させることができる。このため、プロトコルの実装において難易度を大きく低減させることができる。
【0050】
[2つの通信装置間で行われる通信状態例]
図4は、本技術の第1の実施の形態における通信装置100および200間で行われる通信状態を模式的に示す図である。図4では、図1(c)に示すように、通信装置100がイニシエータとなり、通信装置200がレスポンダとなっている状態で、通信装置100および200間において行われる通信例を示す。また、これらの各通信プロトコルスタックの構成は、図3と同様であるものとする。このため、図4では、通信装置(イニシエータ)100には図3と同一の符号を付し、通信装置(レスポンダ)200には各層に対応する符号のみを変更して示し、他の符号については図3と同一の符号を付す。
【0051】
通信装置(イニシエータ)100および通信装置(レスポンダ)200間においてTransfer Jetによる近距離無線通信を行う場合を想定する。この近距離無線通信では、ユーザアプリケーション層330、370間でアプリケーションデータが通信される。このアプリケーションデータは、例えば、ユーザアプリケーション層330から、PCL層320およびCNL層310を通じてPHY層300に出力される。そして、PHY層300から相手先の通信装置に送信される。
【0052】
例えば、通信装置(イニシエータ)100では、CNL層310、PCL層320、ユーザアプリケーション層330の順に接続処理が行われる。また、通信装置(レスポンダ)200についても同様に接続処理が行われる。また、通信装置(イニシエータ)100では、ユーザアプリケーション層330またはPCL層320の設定内容に応じて、IIFSの時間比率(N:M)が決定される。すなわち、ユーザアプリケーション層330またはPCL層320の設定内容に基づいて、上述した第1設定時間および第2設定時間の比率が決定される。
【0053】
このように、時間比率が決定された後は、CNLプロトコル311によるCNLプロトコル処理とは独立にIIFSタイマ312が開始される。そして、IIFSタイマ312が規定時間(第1設定時間または第2設定時間)に達した場合には、IIFSタイマ312は、CNLプロトコル311に対してIIFS切替トリガを発行する。
【0054】
ここで、本技術の第1の実施の形態では、イニシエータ側ではIIFSの値の切り替えが行われるが、レスポンダ側では、RIFSの値が使用し続けられる。このため、図4では、通信装置(レスポンダ)200におけるIIFSタイマ312については、点線で示す。
【0055】
[2つの通信装置間で行われる通信の開始例]
図5は、本技術の第1の実施の形態における通信装置100および200間で行われる通信の様子を模式的に示す図である。
【0056】
図5(a)では、図1(c)に示すように、通信装置100がイニシエータとなり、通信装置200がレスポンダとなっている状態で、通信装置100および200間において行われる通信例を示す。
【0057】
例えば、ユーザによってTransfer Jetの通信路が確立される場合、通信装置(イニシエータ)100は、Management Frame(「Connection Request」と称される。)を送信し続ける。一方、通信装置(レスポンダ)200は、低消費待ち受け状態で「Connection Request」を待ち続ける。この状態から、通信装置(レスポンダ)200が「Connection Request」を受信すると、「Connected」と呼ばれる通信路が確立された状態となる。
【0058】
図5(b)では、図1(b)に示すように、通信装置100がレスポンダとなり、通信装置800がイニシエータとなっている状態で、通信装置100および800間において行われる通信例を示す。なお、図5(b)に示すイニシエータおよびレスポンダ間における通信例は、図5(a)と同様であるため、ここでの説明を省略する。ただし、図5(b)では、通信装置100の役割がイニシエータからレスポンダに切り替えられている。
【0059】
[Connectionの確立例]
図6は、本技術の第1の実施の形態における通信装置100および200間におけるConnectionの確立例およびこの確立後のデータフレームの送信例を模式的に示す図である。このデータフレームは、CSDU(CNL Service Data Unit)と称される。また、図6では、縦軸を時間軸とする。
【0060】
通信装置(イニシエータ)100は、ユーザ操作に基づく通信路の確立の要求を受け付けると、「Connection Request」を送信し続ける(411)。
【0061】
通信装置(レスポンダ)200は、通信装置(イニシエータ)100からの「Connection Request」を受信すると、通信装置(イニシエータ)100にManagement Frameを送信する(412)。上述したように、Management Frameは、「Connection Accept」と称される。
【0062】
続いて、通信装置(イニシエータ)100は、通信装置(レスポンダ)200からの「Connection Accept」を受信すると、「Connection Accept」に対する「Ack」フレームを送信する(413)。
【0063】
続いて、通信装置(レスポンダ)200が、通信装置(イニシエータ)100からの「Ack」フレームを受信すると、「Connected」と称されるStateとなり、通信路が確立される(414)。
【0064】
このように通信路が確立された状態では、通信装置(イニシエータ)100および通信装置(レスポンダ)200は、各々独自のタイミングでCSDUパケットの送信を開始する(415)。なお、送信対象となるCSDUパケットについては、図7を参照して詳細に説明する。
【0065】
ここで、Transfer Jetでは、アクセス方式としてCSMA/CA(Carrier Sense Multiple Access with Collision Avoidance)を採用している。このため、イニシエータおよびレスポンダが同時にパケットを送信した場合には衝突が生じる。ただし、その衝突後において、何れか一方のパケットの送受信が行われた後には、IFSの値により送信権が制御される。このIFSとして、イニシエータ側では、IIFSの値が用いられる。また、レスポンダ側では、RIFSの値が用いられる。なお、送信権の制御については、図10乃至図12を参照して詳細に説明する。
【0066】
[送信パケットの構成例]
図7は、本技術の第1の実施の形態における通信装置間において送受信されるパケット(送信パケット)の構成例を模式的に示す図である。具体的には、CSDUを含むフレームフォーマット(Frame Format)を示す。
【0067】
図7(a)には、1つのパケットの中に1つのCSDUを含めた場合における送信パケットの構成を示す。この送信パケットは、プリアンブル(Preamble)421と、シンク(Sync)422と、PHYヘッダー(PHY Header)423とを含む。また、この送信パケットは、コモンCNLヘッダー(Common CNL Header)424と、サブCNLヘッダー(Sub CNL Header)425と、CUDU426とを含む。
【0068】
図7(b)には、1つのパケットの中に2つのCSDUを含めた場合における送信パケットの構成を示す。この送信パケットは、サブCNLヘッダー(Sub CNL Header)427およびCUDU428を含む。
【0069】
図7に示すように、Transfer Jetでは、1つのパケットの中に最大2つのCSDUを含めることが可能である。
【0070】
[IFSの送信例]
図8は、本技術の第1の実施の形態における2つの通信装置間における通信時に用いられるIFSの例を模式的に示す図である。
【0071】
図8では、SIFS(Short Inter-Frame Space)と、IIFSと、RIFSとの3種類のIFSについて説明する(例えば、非特許文献1(10.4.4)参照。)。なお、図8では、SIFSを1列目(最上段)に示し、IIFSを2列目に示し、RIFSを3列目(最下段)に示す。また、Tbstは、スロットタイム(slot time)を意味するものとする。なお、スロットタイムは、最小サイズのフレームを送信する際にかかる時間を意味する。
【0072】
SIFSは、直前のフレーム(CSDU)を受信した後に、Ackを送信するために用いられるIFSである。なお、SIFSは、イニシエータおよびレスポンダの何れからも送信される。
【0073】
IIFSは、イニシエータがCSDUを送信するために用いられるIFSであり、例えば、直前のフレーム(Ack)を送信または受信した後に用いられる。
【0074】
RIFSは、レスポンダがCSDUを送信するために用いられるIFSであり、例えば、直前のフレーム(Ack)を送信または受信した後に用いられる。
【0075】
このように、 Transfer Jetでは、IFSの概念を用いてイニシエータおよびレスポンダの送信権の制御を行う。
【0076】
ここで、図8に示すように、イニシエータがCSDUを送信する際に用いられるIIFS(2列目)の値は、レスポンダがCSDUを送信する際に用いられるRIFS(3列目)の値よりも小さい(すなわち、IIFS<RIFS)。このため、イニシエータからのパケットの送受信が行われた後は、イニシエータは、常に優先的にCSDUを送信可能となる。すなわち、イニシエータに送信データが存在する間、イニシエータからのパケットの送受信が行われた後は、イニシエータが常に送信権を保持することになる。このように、IIFSおよびRIFSの差に基づくイニシエータの送信時における優位性については、図9を参照して詳細に説明する。
【0077】
[送信権の制御例]
図9は、本技術の第1の実施の形態における通信装置100および200間におけるデータのやり取りを時系列で模式的に示す図である。なお、図9では、縦軸を時間軸とする。
【0078】
例えば、通信装置(イニシエータ)100の送信Que(Tx Que)501に格納されているCSDUが通信装置(イニシエータ)100から通信装置(レスポンダ)200に送信され(511)、受信Que(Rx Que)504に格納される。続いて、そのCSDUの送信に対するAckが、通信装置(レスポンダ)200から通信装置(イニシエータ)100に送信される(512)。
【0079】
ここで、上述したように、IIFS<RIFSである。このため、Ackの送信後(512)における次の送信権は、通信装置(イニシエータ)100に設定される。このため、Ackの受信後(512)には、通信装置(イニシエータ)100の送信Que501に格納されているCSDUが通信装置(イニシエータ)100から通信装置(レスポンダ)200に送信される(513)。
【0080】
ここで、通信装置(レスポンダ)200の送信Que(Tx Que)502にもCSDUが格納されている。ただし、通信装置(イニシエータ)100に送信権が設定されている間、通信装置(レスポンダ)200の送信Que(Tx Que)502に格納されているCSDUは送信されないことになる。
【0081】
このような現象は、Transfer Jetの仕様に基づいて発生する現象である。ここで、Transfer Jetの上位プロトコルとしてAckのやりとりが必要なプロトコルが実装された場合を想定する。例えば、Ackのやりとりが必要なプロトコルとして、TCP/IP(Transmission Control Protocol/Internet Protocol)が実装された場合を想定する。この場合において、レスポンダ側で送信権が得られず、レスポンダからCSDUの送信が大きく遅延してしまう場合には、上位プロトコルでのスループットが大きく劣化するおそれがある。
【0082】
例えば、TCP/IPでは、Ack(RTT(Round Trip Time)と呼ばれる、パケットに対しての応答)の往復時間によりスループットが定義される。なお、一般に、RTTは数(ms)〜数百(ms)で通信路に依存する。ここで、図9に示すように、イニシエータが帯域を占有する状況においては、イニシエータが送信したTCPパケットのAckをレスポンダが送信することができない。この場合には、TCP/IPでのスループットが大きく低下する。
【0083】
そこで、本技術の第1の実施の形態では、所定のタイミングでレスポンダ側でもCSDUを送信することができるようにする。
【0084】
[送信権の制御例]
図10は、本技術の第1の実施の形態におけるIIFSタイマ150から発行されるIIFS切替トリガに基づいて変更されるIFSの設定期間を時系列で模式的に示す図である。なお、図10(a)乃至(b)では、縦軸を時間軸とする。
【0085】
上述したように、所定のタイミングでレスポンダ側でもCSDUが送信することができるように、イニシエータ側でIIFSを、所定のタイミング(周期的または不定期)で切り替える。例えば、次の(1)および(2)の値に切り替える。
(1)IIFS=SIFS
(2)IIFS=RIFS+Tbst(=SIFS+2×Tbst)
【0086】
なお、上述した(1)は、通常のIIFSである。また、上述した(1)および(2)の値により、レスポンダへの送信対象となるデータの送信開始タイミング(第1送信開始タイミング)が決定される。また、レスポンダにおけるRIFSの値により、レスポンダにおいて通信装置100への送信対象となるデータの送信開始タイミング(第2送信開始タイミング)が決定される。
【0087】
図10(a)には、IIFSを周期的に切り替える場合において、T(ms)毎に(1)および(2)を切り替える場合における各設定期間を時系列で示す。例えば、T=5(ms)とすることができる。
【0088】
例えば、最初に、IIFSとして(1)(IIFS=SIFS)が設定される(図10(a)に示す最上段のブロック「IIFSの設定期間」)。続いて、(1)の設定からT(ms)後に、IIFSとして(2)(IIFS=RIFS+Tbst)が設定される(図10(a)に示す上から2段目のブロック「RIFS+Tbstの設定期間」)。続いて、(2)の設定からT(ms)後に、IIFSとして(1)(IIFS=SIFS)が設定される((図10(a)に示す上から3段目のブロック「IIFSの設定期間」)。また、図10(a)に示すように、以降も同様に、(1)および(2)が順次切り替えられる。
【0089】
図10(b)には、IIFSを周期的に切り替える場合において、時間比率を1:m(mは、2以上の正の整数)として、(1)および(2)を切り替える場合における各設定期間を時系列で示す。例えば、T=1(ms)、m=10とすることができる。
【0090】
例えば、最初に、IIFSとして(1)(IIFS=SIFS)が設定される(図10(b)に示す最上段のブロック「IIFSの設定期間」)。続いて、(1)の設定からT(ms)後に、IIFSとして(2)(IIFS=RIFS+Tbst)が設定される(図10(b)に示す上から2段目のブロック「RIFS+Tbstの設定期間」)。続いて、(2)の設定からmT(ms)後に、IIFSとして(1)(IIFS=SIFS)が設定される((図10(b)に示す上から3段目のブロック「IIFSの設定期間」)。また、図10(b)に示すように、以降も同様に、(1)および(2)が順次切り替えられる。
【0091】
図10(c)には、IIFSを周期的に切り替える場合において、時間比率をn:1(nは、2以上の正の整数)として、(1)および(2)を切り替える場合における各設定期間を時系列で示す。例えば、T=5(ms)、m=2とすることができる。
【0092】
例えば、最初に、IIFSとして(1)(IIFS=SIFS)が設定される(図10(c)に示す最上段のブロック「IIFSの設定期間」)。続いて、(1)の設定からnT(ms)後に、IIFSとして(2)(IIFS=RIFS+Tbst)が設定される(図10(b)に示す上から2段目のブロック「RIFS+Tbstの設定期間」)。続いて、(2)の設定からT(ms)後に、IIFSとして(1)(IIFS=SIFS)が設定される((図10(b)に示す上から3段目のブロック「IIFSの設定期間」)。また、図10(c)に示すように、以降も同様に、(1)および(2)が順次切り替えられる。
【0093】
なお、図10(a)乃至(c)では、(1)および(2)に対応する設定期間の時間比率を1:1、1:m、n:1とする例を示したが、他の時間比率となるようにしてもよい。例えば、(1)および(2)に対応する設定期間の時間比率として、N:M(N、Mは、互いに異なる1以上の正の整数)を用いることができる。
【0094】
また、(1)および(2)を切り替える際における基準位置(時間軸における位置)は、任意の位置とすることができる。また、上述したように、送信権をイニシエータに設定する期間は、図10に示す「IIFSの設定期間」に対応する。この「IIFSの設定期間」における送信開始タイミング(第1送信開始タイミング)は、第2送信開始タイミング(レスポンダにおいてイニシエータへの送信対象となるデータの送信開始タイミング)よりも早いタイミングとなる。また、送信権をレスポンダに設定する期間は、図10に示す「RIFS+Tbstの設定期間」に対応する。この「RIFS+Tbstの設定期間」における第1送信開始タイミングは、第2送信開始タイミングよりも遅いタイミングとなる。
【0095】
ここで、(1)および(2)の切り替えは、Transfer JetのCNL層310(図3に示す)のCNLプロトコル311に「非同期」に行われる。ここで、非同期は、CNLプロトコル311の動作を考慮せず、CNLプロトコル311の動作とは無関係に行うことができることを意味する。このように、CNLプロトコル311に非同期に行うことにより、ドライバの実装難度を軽減することができる。
【0096】
また、このように切り替えられるIIFSを長い周期で観測すると(1)および(2)の平均値に漸近し、<IIFS>≒SIFS+Tbst=RIFSとなる。このため、イニシエータの送信スループットは、レスポンダの送信スループットに漸近する。ここで、<IIFS>は、IIFSを長時間平均した値を示す。
【0097】
[送信制御例]
図11は、本技術の第1の実施の形態における通信装置100および200間におけるデータのやり取りを時系列で模式的に示す図である。図11に示す例は、図9の一部を変形したものであるため、図9に対応する部分には、同一の符号を付してこれらの説明を省略する。
【0098】
具体的には、図11では、イニシエータ側でRIFS+Tbstの設定期間(図10(a)乃至(c)に示す)に切り替えられた場合におけるデータのやり取り例を示す。
【0099】
図9と同様に、通信装置(イニシエータ)100の送信Que(Tx Que)501に格納されているCSDUが通信装置(イニシエータ)100から通信装置(レスポンダ)200に送信され(551)、受信Que(Rx Que)504に格納される。続いて、そのCSDUの送信に対するAckが、通信装置(レスポンダ)200から通信装置(イニシエータ)100に送信される(552)。
【0100】
ここで、上述したように、通信装置(イニシエータ)100では、RIFS+Tbstの設定期間であるため、IIFS>RIFSである。このため、Ackの送信後(552)における次の送信権は、通信装置(レスポンダ)200に設定される。このため、Ackの受信後(512)には、通信装置(レスポンダ)200の送信Que502に格納されているCSDUが通信装置(レスポンダ)200から通信装置(イニシエータ)100に送信される(553)。
【0101】
同様に、通信装置(イニシエータ)100においてRIFS+Tbstの設定期間である間、通信装置(レスポンダ)200に送信権が設定され続ける。このため、通信装置(レスポンダ)200の送信Que(Tx Que)502に格納されているCSDUを順次送信することができる。
【0102】
一方、通信装置(イニシエータ)100においてIIFSの設定期間となった場合には、通信装置(イニシエータ)100に送信権が設定される。この場合には、通信装置(イニシエータ)100においてIIFSの設定期間である間、通信装置(レスポンダ)200に送信権が設定され続ける。このため、通信装置(イニシエータ)100の送信Que(Tx Que)501に格納されているCSDUを順次送信することができる。
【0103】
このように、通信装置(イニシエータ)100においてIIFSの設定期間である場合には、通信装置(イニシエータ)100に送信権が設定され続けるため、通信装置(イニシエータ)100からCSDUを順次送信することができる。一方、通信装置(イニシエータ)100においてRIFS+Tbstの設定期間である場合には、通信装置(レスポンダ)200に送信権が設定され続けるため、通信装置(レスポンダ)200からCSDUを順次送信することができる。このように、通信装置(イニシエータ)100および通信装置(レスポンダ)200間において送信権を交互に設定することができる。
【0104】
図12は、本技術の第1の実施の形態における2つの通信装置間において送受信されるAckおよびPSDU(PHY SDU)の関係例を時系列で示す図である。なお、図12(a)乃至(b)では、横軸を時間軸とする。
【0105】
図12(a)には、イニシエータ側でIIFSの切り替えを行わない場合におけるAckおよびPSDUの関係例を示す。この場合には、イニシエータ側にPSDUが存在する間、イニシエータ側からレスポンダ側にPSDUが連続的に送信されることになる。
【0106】
図12(b)には、イニシエータ側でIIFSの切り替えを行わない場合におけるAckおよびPSDUの関係例を示す。この場合には、イニシエータ側におけるPSDUの送信が終了した後に、レスポンダ側からイニシエータ側にPSDUが連続的に送信されることになる。すなわち、図12(a)に示す送受信が終了した後に、図12(b)に示す送受信が行われることになる。
【0107】
図12(c)には、イニシエータ側でIIFSの切り替えを行う場合におけるAckおよびPSDUの関係例を示す。この場合には、イニシエータ側にPSDUが存在する間でも、イニシエータ側およびレスポンダ側の何れかからPSDUが交互に送信されることになる。
【0108】
[通信装置の動作例]
次に、本技術の第1の実施の形態における通信装置100の動作について図面を参照して説明する。
【0109】
図13は、本技術の第1の実施の形態における通信装置100による通信処理の処理手順の一例を示すフローチャートである。
【0110】
最初に、CNL層310の接続処理が行われる(ステップS901)。続いて、PCL層320の接続処理が行われる(ステップS902)。続いて、ユーザアプリケーション層330の接続処理が行われる(ステップS903)。
【0111】
続いて、制御部130が、ユーザアプリケーション層330またはPCL層320の設定内容に基づいて、IIFSの設定期間(第1設定時間および第2設定時間)の比率を決定する(ステップS904)。例えば、PCL層320、ユーザアプリケーション層330が要求するRTT(Round Trip Time)からの設定に基づいて、IIFSの設定期間(第1設定時間および第2設定時間)およびその比率を決定することができる。この場合には、例えば、上位レイヤのスループットを最大化するような最適な切り替え時間を設定する。例えば、RTTが10msと決まっている場合には、IIFSの設定期間(切り替え時間)を2.5ms:2.5msとし、RTTが20msと決まっている場合には、5ms:5msとすることができる。また、統計的に求めたデータに基づいて、上位レイヤのスループットを最大化するような最適な切り替え時間およびその比率(N:M)を適宜設定するようにしてもよい。
【0112】
続いて、制御部130が、通信装置100がイニシエータとなっているか否かを判断する(ステップS905)。そして、通信装置100がレスポンダとなっている場合には(ステップS905)、RIFSを用いた通信処理が行われる(ステップS906)。
【0113】
また、通信装置100がイニシエータとなっている場合には(ステップS905)、IIFSタイマ150によるカウントを開始させる(ステップS907)。
【0114】
続いて、IIFSタイマ150は、規定時間(第1設定時間または第2設定時間)に達したか否かを判断し(ステップS908)、規定時間に達していない場合には、監視を継続して行う。一方、規定時間(第1設定時間または第2設定時間)に達した場合には(ステップS908)、IIFSタイマ150は、IIFS切替トリガを発行する(ステップS909)。ここで、規定時間として、第1設定時間および第2設定時間が交互に設定される。そして、このように交互に設定された各時間に基づいて、IIFS切替トリガが発行される。
【0115】
続いて、制御部130は、IIFSタイマ150から発行されたIIFS切替トリガに応じてIIFSの値を切り替える(ステップS910)。すなわち、図10に示すように、IIFSの値が順次切り替えられる(ステップS910)。このように切り替えられたIIFSの値を用いて通信処理が行われる。また、通信処理が終了したか否かが判断され(ステップS911)、通信処理が終了していない場合には、ステップS905に戻る。なお、ステップS901乃至S911は、特許請求の範囲に記載の通信手順の一例である。また、なお、ステップS905乃至S910は、特許請求の範囲に記載の制御手順の一例である。
【0116】
ここで、イニシエータまたはレスポンダの何れか一方が、一定期間内に送信を続けるようなプロトコル(例えば、OBEX(Object Exchange))では、そもそも受信Ackの遅延という概念がないため、改善効果は少ないことが予想される。そこで、OBEX、SCSI(Small Computer System Interface)、MSC(Mass Storage Class)、TCP/IP等の各プロトコルに応じて、IIFSの切り替えを行うか否かを変更するようにしてもよい。例えば、OBEXの場合には、IIFSの切り替えをOFFとし、SCSI、MCS、TCP/IPの場合には、IIFSの切り替えをONとすることができる。これにより、各プロトコルに応じた最適なスループット特性が得られる。
【0117】
上述したように、Transfer Jetのアクセス方式はCSMA/CA方式であり、常にイニシエータの方が優先されるプロトコルを採用している。このため、スループットが高い時に帯域をイニシエータが占有し、レスポンダの送信の遅延が大きくなる。このように、レスポンダの遅延が大きくなると、TCP/IPのようなAckが必要なプロトコルにおいて、レスポンダからのAckが届かないおそれがある。この場合には、スループットが大きく低下することになる。
【0118】
そこで、本技術の第1の実施の形態では、イニシエータおよびレスポンダ間において、イニシエータ側においてIIFSを切り替えることにより送信開始タイミングをずらす。これにより、任意のタイミングで送信権(発言権)を交互に設定することができ、ゆるやかな時分割制御を導入することができる。また、CNL層よりも上位のレイヤでAckを必要とするようなプロトコルにおいて、Ackの遅延を低減することができ、スループットを改善することができる。例えば、TCP/IPのようなイニシエータまたはレスポンダが相互に送りあうプロトコルで非常に効果的であり、受信側のAckの遅延によってスループットが大きく低下するシステムにおいて有効である。なお、イニシエータ側の送信スループットが低下するが、この低下の度合いを少なくすることができる。
【0119】
また、イニシエータおよびレスポンダ間における送信権(発言権)の交互設定については、CNLプロトコルとは非同期に実行させることができる。このため、プロトコルの実装において難易度を大きく低減させることができる。
【0120】
なお、本技術の第1の実施の形態では、レスポンダ側のIFS(RIFS)を固定とし、イニシエータ側のIFS(IIFS)を切り替えることにより、送信権をイニシエータおよびレスポンダ間で交互に設定する例を示した。ただし、イニシエータ側のIFS(IIFS)を固定とし、レスポンダ側のIFS(RIFS)を切り替えることにより、送信権をイニシエータおよびレスポンダ間で交互に設定するようにしてもよい。この場合において、送信権をレスポンダに設定する場合には、レスポンダ側のIFSを、イニシエータ側のIFS(IIFS)よりも短くする。すなわち、レスポンダ側のIFSを、イニシエータ側のIFS(IIFS)よりも短くする期間を設けることにより、レスポンダ側は送信機会を得ることができる。また、レスポンダ側のIFS(RIFS)を切り替える制御は、レスポンダ側の制御部が行う。
【0121】
なお、上述の実施の形態は本技術を具現化するための一例を示したものであり、実施の形態における事項と、特許請求の範囲における発明特定事項とはそれぞれ対応関係を有する。同様に、特許請求の範囲における発明特定事項と、これと同一名称を付した本技術の実施の形態における事項とはそれぞれ対応関係を有する。ただし、本技術は実施の形態に限定されるものではなく、その要旨を逸脱しない範囲において実施の形態に種々の変形を施すことにより具現化することができる。
【0122】
また、上述の実施の形態において説明した処理手順は、これら一連の手順を有する方法として捉えてもよく、また、これら一連の手順をコンピュータに実行させるためのプログラム乃至そのプログラムを記憶する記録媒体として捉えてもよい。この記録媒体として、例えば、CD(Compact Disc)、MD(MiniDisc)、DVD(Digital Versatile Disk)、メモリカード、ブルーレイディスク(Blu-ray Disc(登録商標))等を用いることができる。
【0123】
なお、本技術は以下のような構成もとることができる。
(1) 他の通信装置との間で近距離無線通信を行う通信部と、
前記他の通信装置への送信対象となるデータの送信開始タイミングを調整することにより前記近距離無線通信において通信相手にデータを送信するための送信権を前記他の通信装置との間で交互に設定するための制御を行う制御部と
を具備する通信装置。
(2) 前記制御部は、前記送信開始タイミングを第1送信開始タイミングとし、前記他の通信装置において前記通信装置への送信対象となるデータの送信開始タイミングを第2送信開始タイミングとする場合に、前記第2送信開始タイミングを基準として前記第1送信開始タイミングをずらすことにより前記調整を行う前記(1)に記載の通信装置。
(3) 前記制御部は、前記送信権を前記通信装置に設定する場合における前記第1送信開始タイミングを、前記第2送信開始タイミングよりも早いタイミングとし、前記送信権を前記他の通信装置に設定する場合における前記第1送信開始タイミングを、前記第2送信開始タイミングよりも遅いタイミングとする前記調整を行う前記(2)に記載の通信装置。
(4) 前記通信部は、Transfer Jetに基づいて前記近距離無線通信を行い、
前記制御部は、前記通信装置がイニシエータとなっている場合に前記制御を行う
前記(1)から(3)のいずれかに記載の通信装置。
(5) 前記制御部は、前記他の通信装置にデータを送信するためのIFS(Inter-Frame Space)の値を変更することにより前記調整を行う前記(4)に記載の通信装置。
(6) 前記制御部は、前記送信権を前記通信装置に設定する場合には前記IFSとしてIIFS(Initiator Inter-Frame Space)の値を採用し、前記送信権を前記他の通信装置に設定する場合には前記IFSとしてRIFS(Responder Inter-Frame Space)よりも大きい値を採用することにより前記調整を行う前記(5)に記載の通信装置。
(7) 前記送信権が前記通信装置に設定される第1設定時間と前記送信権が前記他の通信装置に設定される第2設定時間とを交互に計時して各時間に達した場合にその旨を前記制御部に通知するタイマをさらに具備し、
前記制御部は、前記第1設定時間および前記第2設定時間のそれぞれの時間に達する毎に前記IFSの値を変更することにより前記調整を行う
前記(5)に記載の通信装置。
(8) 前記制御部は、ユーザアプリケーション層またはPCL(Protocol Conversion Layer)層の設定内容に基づいて、前記送信権が前記通信装置に設定される第1設定時間と前記送信権が前記他の通信装置に設定される第2設定時間との比率を決定する前記(4)に記載の通信装置。
(9) 通信相手にデータを送信するための送信権に基づいて第1の通信装置との間で近距離無線通信を行う通信部を備える第2の通信装置と、
前記送信権に基づいて前記第2の通信装置との間で近距離無線通信を行う通信部と、前記第2の通信装置への送信対象となるデータの送信開始タイミングを調整することにより前記送信権を前記第2の通信装置との間で交互に設定するための制御を行う制御部とを備える第1の通信装置と
を具備する通信システム。
(10) 他の通信装置との間で近距離無線通信を行う通信手順と、
前記他の通信装置への送信対象となるデータの送信開始タイミングを調整することにより前記近距離無線通信において通信相手にデータを送信するための送信権を前記他の通信装置との間で交互に設定するための制御を行う制御手順と
を具備する通信装置の制御方法。
【符号の説明】
【0124】
100、200、800 通信装置
110 アンテナ
120 近距離無線通信部
130 制御部
140 メモリ
150 IIFSタイマ
【特許請求の範囲】
【請求項1】
他の通信装置との間で近距離無線通信を行う通信部と、
前記他の通信装置への送信対象となるデータの送信開始タイミングを調整することにより前記近距離無線通信において通信相手にデータを送信するための送信権を前記他の通信装置との間で交互に設定するための制御を行う制御部と
を具備する通信装置。
【請求項2】
前記制御部は、前記送信開始タイミングを第1送信開始タイミングとし、前記他の通信装置において前記通信装置への送信対象となるデータの送信開始タイミングを第2送信開始タイミングとする場合に、前記第2送信開始タイミングを基準として前記第1送信開始タイミングをずらすことにより前記調整を行う請求項1記載の通信装置。
【請求項3】
前記制御部は、前記送信権を前記通信装置に設定する場合における前記第1送信開始タイミングを、前記第2送信開始タイミングよりも早いタイミングとし、前記送信権を前記他の通信装置に設定する場合における前記第1送信開始タイミングを、前記第2送信開始タイミングよりも遅いタイミングとする前記調整を行う請求項2記載の通信装置。
【請求項4】
前記通信部は、Transfer Jetに基づいて前記近距離無線通信を行い、
前記制御部は、前記通信装置がイニシエータとなっている場合に前記制御を行う
請求項1記載の通信装置。
【請求項5】
前記制御部は、前記他の通信装置にデータを送信するためのIFS(Inter-Frame Space)の値を変更することにより前記調整を行う請求項4記載の通信装置。
【請求項6】
前記制御部は、前記送信権を前記通信装置に設定する場合には前記IFSとしてIIFS(Initiator Inter-Frame Space)の値を採用し、前記送信権を前記他の通信装置に設定する場合には前記IFSとしてRIFS(Responder Inter-Frame Space)よりも大きい値を採用することにより前記調整を行う請求項5記載の通信装置。
【請求項7】
前記送信権が前記通信装置に設定される第1設定時間と前記送信権が前記他の通信装置に設定される第2設定時間とを交互に計時して各時間に達した場合にその旨を前記制御部に通知するタイマをさらに具備し、
前記制御部は、前記第1設定時間および前記第2設定時間のそれぞれの時間に達する毎に前記IFSの値を変更することにより前記調整を行う
請求項5記載の通信装置。
【請求項8】
前記制御部は、ユーザアプリケーション層またはPCL(Protocol Conversion Layer)層の設定内容に基づいて、前記送信権が前記通信装置に設定される第1設定時間と前記送信権が前記他の通信装置に設定される第2設定時間との比率を決定する請求項4記載の通信装置。
【請求項9】
通信相手にデータを送信するための送信権に基づいて第1の通信装置との間で近距離無線通信を行う通信部を備える第2の通信装置と、
前記送信権に基づいて前記第2の通信装置との間で近距離無線通信を行う通信部と、前記第2の通信装置への送信対象となるデータの送信開始タイミングを調整することにより前記送信権を前記第2の通信装置との間で交互に設定するための制御を行う制御部とを備える第1の通信装置と
を具備する通信システム。
【請求項10】
他の通信装置との間で近距離無線通信を行う通信手順と、
前記他の通信装置への送信対象となるデータの送信開始タイミングを調整することにより前記近距離無線通信において通信相手にデータを送信するための送信権を前記他の通信装置との間で交互に設定するための制御を行う制御手順と
を具備する通信装置の制御方法。
【請求項1】
他の通信装置との間で近距離無線通信を行う通信部と、
前記他の通信装置への送信対象となるデータの送信開始タイミングを調整することにより前記近距離無線通信において通信相手にデータを送信するための送信権を前記他の通信装置との間で交互に設定するための制御を行う制御部と
を具備する通信装置。
【請求項2】
前記制御部は、前記送信開始タイミングを第1送信開始タイミングとし、前記他の通信装置において前記通信装置への送信対象となるデータの送信開始タイミングを第2送信開始タイミングとする場合に、前記第2送信開始タイミングを基準として前記第1送信開始タイミングをずらすことにより前記調整を行う請求項1記載の通信装置。
【請求項3】
前記制御部は、前記送信権を前記通信装置に設定する場合における前記第1送信開始タイミングを、前記第2送信開始タイミングよりも早いタイミングとし、前記送信権を前記他の通信装置に設定する場合における前記第1送信開始タイミングを、前記第2送信開始タイミングよりも遅いタイミングとする前記調整を行う請求項2記載の通信装置。
【請求項4】
前記通信部は、Transfer Jetに基づいて前記近距離無線通信を行い、
前記制御部は、前記通信装置がイニシエータとなっている場合に前記制御を行う
請求項1記載の通信装置。
【請求項5】
前記制御部は、前記他の通信装置にデータを送信するためのIFS(Inter-Frame Space)の値を変更することにより前記調整を行う請求項4記載の通信装置。
【請求項6】
前記制御部は、前記送信権を前記通信装置に設定する場合には前記IFSとしてIIFS(Initiator Inter-Frame Space)の値を採用し、前記送信権を前記他の通信装置に設定する場合には前記IFSとしてRIFS(Responder Inter-Frame Space)よりも大きい値を採用することにより前記調整を行う請求項5記載の通信装置。
【請求項7】
前記送信権が前記通信装置に設定される第1設定時間と前記送信権が前記他の通信装置に設定される第2設定時間とを交互に計時して各時間に達した場合にその旨を前記制御部に通知するタイマをさらに具備し、
前記制御部は、前記第1設定時間および前記第2設定時間のそれぞれの時間に達する毎に前記IFSの値を変更することにより前記調整を行う
請求項5記載の通信装置。
【請求項8】
前記制御部は、ユーザアプリケーション層またはPCL(Protocol Conversion Layer)層の設定内容に基づいて、前記送信権が前記通信装置に設定される第1設定時間と前記送信権が前記他の通信装置に設定される第2設定時間との比率を決定する請求項4記載の通信装置。
【請求項9】
通信相手にデータを送信するための送信権に基づいて第1の通信装置との間で近距離無線通信を行う通信部を備える第2の通信装置と、
前記送信権に基づいて前記第2の通信装置との間で近距離無線通信を行う通信部と、前記第2の通信装置への送信対象となるデータの送信開始タイミングを調整することにより前記送信権を前記第2の通信装置との間で交互に設定するための制御を行う制御部とを備える第1の通信装置と
を具備する通信システム。
【請求項10】
他の通信装置との間で近距離無線通信を行う通信手順と、
前記他の通信装置への送信対象となるデータの送信開始タイミングを調整することにより前記近距離無線通信において通信相手にデータを送信するための送信権を前記他の通信装置との間で交互に設定するための制御を行う制御手順と
を具備する通信装置の制御方法。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【公開番号】特開2013−62742(P2013−62742A)
【公開日】平成25年4月4日(2013.4.4)
【国際特許分類】
【出願番号】特願2011−200875(P2011−200875)
【出願日】平成23年9月14日(2011.9.14)
【出願人】(000002185)ソニー株式会社 (34,172)
【Fターム(参考)】
【公開日】平成25年4月4日(2013.4.4)
【国際特許分類】
【出願日】平成23年9月14日(2011.9.14)
【出願人】(000002185)ソニー株式会社 (34,172)
【Fターム(参考)】
[ Back to top ]