JP2009182458A - 通信装置、通信システム、通信方法及びプログラム - Google Patents
通信装置、通信システム、通信方法及びプログラム Download PDFInfo
- Publication number
- JP2009182458A JP2009182458A JP2008018120A JP2008018120A JP2009182458A JP 2009182458 A JP2009182458 A JP 2009182458A JP 2008018120 A JP2008018120 A JP 2008018120A JP 2008018120 A JP2008018120 A JP 2008018120A JP 2009182458 A JP2009182458 A JP 2009182458A
- Authority
- JP
- Japan
- Prior art keywords
- data
- identification information
- communication
- physical layer
- pcl
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/26—Special purpose or proprietary protocols or architectures
Landscapes
- Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Communication Control (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
【課題】データサイズの大きな通信を行う場合においても、データの転送効率を向上することが可能な通信装置を提供すること。
【解決手段】他の通信相手との間で信号の送受信を行う物理層108と、上位のユーザアプリケーション100と物理層108との間を接続するデータ移送部(DTL104)とを備え、DTL104は、ユーザアプリケーション100からの指示に基づいて、送信データファイルに対してデータファイルの種別を表すプロファイルIDを付加するプロファイルID付加部を含み、プロファイルIDが付されたデータファイルを、物理層108を介して連続的に送信する。
【選択図】図6
【解決手段】他の通信相手との間で信号の送受信を行う物理層108と、上位のユーザアプリケーション100と物理層108との間を接続するデータ移送部(DTL104)とを備え、DTL104は、ユーザアプリケーション100からの指示に基づいて、送信データファイルに対してデータファイルの種別を表すプロファイルIDを付加するプロファイルID付加部を含み、プロファイルIDが付されたデータファイルを、物理層108を介して連続的に送信する。
【選択図】図6
Description
本発明は、通信装置、通信システム、通信方法及びプログラムに関する。
従来、例えば下記の特許文献1に記載されているように、移動体の利用者が所有する汎用の携帯端末に移動体の情報を発信できることを意図した移動体通信システムが知られている。
近時においては、通信装置に多種の上位アプリケーションが搭載されることが想定され、通信装置側で各種の上位アプリケーションに対応する必要がある。しかしながら、例えば上位アプリケーションがUSBの場合のパケット転送では、図22に示すように、ホストからターゲットへのデータ転送時に、1Kバイトのデータ毎にトークンパケット、データパケット、ハンドシェイクパケットを組み合わせたトランザクションを発行する必要があった。このため、大きなサイズのデータを送信する際に、実際に送信したいデータパケット以外の、トークンパケット、ハンドシェイクパケットの通信が多くなるという問題が生じる。このため、データ転送量が増大し、データの転送速度を落としてしまうという問題があった。また、USBの場合はハンドシェイクパケットによりデータファイルの終端を検知するため、終端検知のためにはハンドシェイクパケットの送受信が不可欠であり、データ転送量が増大するという問題があった。
また、上位アプリケーション層(FTP)でのファイル転送では、ファイル全体の転送が完了したか否かについて、上位アプリケーション層でEOF(end-of-file)を検出することによりファイルの終端を知ることができる。しかしながら、下位層であるTCP層ではトランザクション単位でデータ転送を行うため、上記と同様のハンドシェイクが発生しており、上記USBと同様にデータ転送量が増大してしまうという問題があった。
そこで、本発明は、上記問題に鑑みてなされたものであり、本発明の目的とするところは、データサイズの大きな通信を行う場合においても、データの転送効率を向上することが可能な、新規かつ改良された通信装置、通信システム、通信方法及びプログラムを提供することにある。
上記課題を解決するために、本発明のある観点によれば、他の通信相手との間で信号の送受信を行う物理層と、上位層と前記物理層との間を接続するデータ移送部とを備え、前記データ移送部は、前記上位層からの指示に基づいて、送信データに対してデータの種別を表す識別情報を付加する識別情報付加部を含み、前記物理層は、前記識別情報が付されたデータを連続的に送受信する通信装置が提供される。
上記構成によれば、物理層により他の通信相手との間で信号の送受信が行われ、データ移送部により上位層と物理層との間が接続される。データ移送部には、上位層からの指示に基づいて、送信データに対してデータの種別を表す識別情報を付加する識別情報付加部が含まれる。そして、識別情報が付されたデータは、物理層により連続的に送受信される。識別情報が付加されたデータを物理層が連続的に送受信することで、トランザクション単位での送信が不要となり、データの転送効率を向上することが可能となる。
また、前記データ移送部は、前記物理層を介して受信したデータから前記識別情報を取得して受信データの種別を認識する識別情報取得部を含むものであってもよい。かかる構成によれば、識別情報から受信データの種別を認識することができる。
また、前記識別情報は、送信データに続きがあること、送信データが最後のデータであること、又は送信データが前記データ移送部を制御するための制御コマンドであること、を示す情報であってもよい。かかる構成によれば、データを受信した通信相手側では、識別情報に基づいて、送信データに続きがあること、送信データが最後のデータであること、又は送信データがデータ移送部を制御するための制御コマンドであること、を認識することができる。
また、前記データ移送部は、前記識別情報取得部により最後のデータであることを示す識別情報が取得された場合に、ファイル受信完了通知を前記上位層に通知するファイル受信完了通知部を含むものであってもよい。かかる構成によれば、最後のデータであることを示す識別情報が取得された場合に、ファイル受信完了通知が通知されるため、上位層側では通信が終了することを認識できる。
また、前記データ移送部は、前記識別情報取得部により送信データに続きがあることを示す識別情報が取得された場合に、所定時間内に次のデータを受信しなかった場合は、エラー通知を前記上位層に通知するエラー通知部を含むものであってもよい。かかる構成によれば、送信データに続きがある場合において、所定時間内に次のデータを受信しなかった場合はエラー通知が上位層に通知されるため、上位アプリケーション側ではエラーが発生したことを認識できる。
また、上記課題を解決するために、本発明の別の観点によれば、通信装置同士が通信を行う通信システムであって、前記通信装置は、他の通信相手との間で信号の送受信を行う物理層と、上位層と前記物理層との間を接続するデータ移送部とを備え、前記データ移送層は、前記上位層からの指示に基づいて、送信データに対してデータの種別を表す識別情報を付加する識別情報付加部と、前記物理層を介して受信したデータから前記識別情報を取得して受信データの種別を認識する識別情報取得部と、を含み、前記識別情報が付されたデータを、前記物理層を介して送受信する通信システムが提供される。
上記構成によれば、通信装置同士が通信を行う通信システムにおいて、通信装置では、物理層により他の通信相手との間で信号の送受信が行われ、データ移送部により上位層と物理層との間が接続される。データ移送部には、上位層からの指示に基づいて、送信データに対してデータの種別を表す識別情報を付加する識別情報付加部が含まれる。そして、識別情報が付されたデータは、物理層を介して連続的に送信される。識別情報が付加されたデータを連続的に送信することで、トランザクション単位での送信が不要となり、データの転送効率を向上することが可能となる。
また、上記課題を解決するために、本発明の別の観点によれば、他の通信相手との間で信号の送受信を行う物理層と、上位層と前記物理層との間を接続するデータ移送部とを備える通信装置における通信方法であって、前記上位層からの指示に基づいて、送信データに対してデータの種別を表す識別情報を付加するステップと、前記識別情報が付されたデータを、前記物理層を介して他の通信装置に連続的に送信するステップと、を備える通信方法が提供される。
上記構成によれば、他の通信相手との間で信号の送受信を行う物理層と、上位層と物理層との間を接続するデータ移送部とを備える通信装置における通信方法において、上位層からの指示に基づいて、送信データに対してデータの種別を表す識別情報が付加され、識別情報が付されたデータは、物理層を介して他の通信装置へ連続的に送信される。従って、識別情報が付加されたデータを連続的に送信することで、トランザクション単位での送信が不要となり、データの転送効率を向上することが可能となる。
また、上記課題を解決するために、本発明の別の観点によれば、他の通信相手との間で信号の送受信を行う物理層と、上位層と前記物理層との間を接続するデータ移送部とを備える通信装置におけるプログラムであって、前記上位層からの指示に基づいて、送信データに対してデータの種別を表す識別情報を付加する手段、前記識別情報が付されたデータを、前記物理層を介して他の通信装置に送信する手段、としてコンピュータを機能させるためのプログラムが提供される。
上記構成によれば、他の通信相手との間で信号の送受信を行う物理層と、上位層と物理層との間を接続するデータ移送部とを備える通信装置におけるプログラムにおいて、上位層からの指示に基づいて、送信データに対してデータの種別を表す識別情報が付加され、識別情報が付されたデータは、物理層を介して他の通信装置へ連続的に送信される。従って、識別情報が付加されたデータを連続的に送信することで、トランザクション単位での送信が不要となり、データの転送効率を向上することが可能となる。
本発明によれば、データサイズの大きな通信を行う場合においても、データの転送効率を向上することが可能となる。
以下に添付図面を参照しながら、本発明の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
本実施形態の無線通信システムは、一対の機器の間でデータを送受信することを目的とした通信方式であり、近距離の機器間で無線によりデータの送受信を行う。図1は、本実施形態の無線通信システムを構成する2つの機器(通信装置)を示す模式図である。2つの機器は、それぞれレスポンダー(Responder)とイニシエータ(Initiator)という役割を有する。イニシエータは「接続要求を出す側」であり、レスポンダーは「接続要求を受ける側」であり、本実施形態では1対1(P2P)の通信が行われる。接続の際、イニシエータは接続要求を出し、レスポンダーは持ち受け状態となるが、両者は接続の際の役割が異なるのみで、接続に関係する機器の構成は同一である。イニシエータとしては例えばパーソナルコンピュータ、携帯機器、電子カードなどが該当し、レスポンダーとしてはパーソナルコンピュータ、携帯機器、電子カードなどの機器が該当する。
図1では、本実施形態の各機器のそれぞれが備える物理層を介して無線通信が行われる様子を模式的に示している。本実施形態では、物理層としてJET物理層と称されるものを例示するが、物理層はこれに限定されるものではなく、通信用の汎用的な物理層に適用することができる。JET物理層は、後述するプロファイルID、CSDU等を用いることで写真、動画などの大容量のデータ通信に特に適したものである。また、本明細書において、イニシエータ、レスポンダーの双方の機器を総称してJETデバイス(または単にJET)と称する場合がある。
図2は、本実施形態に係る無線通信システムにおいて、イニシエータ、レスポンダーの各機器の構成を階層構造として示した模式図である。図2に示すように、本実施形態では、上層から順にユーザアプリケーション(User Application)100、PCL(Protocol Conversion Layer)102、DTL(Data Transfer Layer)104、CNL(Connection Layer)106、物理層(Physical Layer)108が構成されている。
ユーザアプリケーション100は、本実施形態による近距離無線通信が可能な物理層108を搭載する機器において、物理層108の上層のソフトウェアの提供するサービスを用いて、データ通信を行うための上位プロトコル(例えばUSB、TCP/IP、OBEXなど)や、UI(User Interface)等のJETを含めた機器操作を行うアプリケーション(例えばウィンドウズ(Windows(登録商標))、リナックス(Linux)などのOS)が該当する。JETデバイスでは、これらの上位プロトコル、またはユーザアプリケーションについては特に規定されるものではなく、機器を構成するユーザ(メーカ)が自由に設定することができる。従って、各機器は、複数の上位プロトコル、またはユーザアプリケーション100を備えていても良い。
PCL102(プロトコル変換部)は、機器を構成するユーザが使用する任意のプロトコル(USB、TCP/IP、OBEX等)を、JET独自のプロトコルに相互変換する、プロトコル変換(Protocol Conversion)機能をサポートする。これにより、複数の種類のプロトコルをJETの物理層(PHY Layer)108に流すことで、様々なプロトコルをサポートすることが可能である。なお、同じUSBであっても、Windows、LinuxなどのOSの違いによってプロトコル変換が異なる場合がある。PCL102は、上位のユーザアプリケーション100が生成する音声、映像等のコンテンツデータ、その他のプロトコルのデータ、コマンド等を下位のDTL104が扱うことが可能なデータ形式に変換する処理を行う。また、PCL102は、接続、切断、機器認証、動作モード設定、初期化等のJETの通信に必要な処理を行う。
図3は、イニシエータ、レスポンダーにおけるデータの流れを示す模式図である。図3に示すように、ユーザアプリケーション100はJETによる接続と、データ転送の2種類の制御を行うことになる。JETとしては最上位PCL102でこれらの機能を実現するために必要なサービスを提供し、JET独自のプロトコルへの変換と、接続管理を行う。さらにJET規格に準拠したCSDU (CNL service data unit)を生成するDTL104、CNL106への受け渡しを行う。
DTL104は、上位のPCL102から受け取ったデータを、所定のパケット構造に整形し、下位のCNL106が提供するサービスを用いて、イニシエータ、レスポンダー間の送信を行う。また、受信においては、CNL106が受信したデータを解析し、CSDUを抽出し、そのペイロードを上位のPCL102に引き渡す。CSDUには、物理層(PHY Layer)108による通信以外のユーザアプリケーション100で利用可能なステータス情報も含まれており、DTL104は、これらの生成処理、エラー通知等も行う。
DTL104は、上位プロトコルの種別に関わらず、上位から入力されたデータをDTLパケットに整形して下位のCNL106に渡し、下位からの受信データからDTLパケットを抽出し、上位にDTLパケットペイロードを受け渡すことが可能である。ただし、DTL104自身は、PCL102からの異なるprotocolから送られてくるデータを受け入れることが可能ではあるが、JETでは異なるプロトコルのデータの送受信は一度セッションの切断を必要とするため、複数プロトコルでのDTLサービスの利用は行わない。
この制限により、後述する複数のPCLエミュレーションからDTL104へデータの入力が行われたとしても、DTL104はそのデータのMuxを行うことはない。また、CNL106からの受信データに複数のプロトコルが含まれていた場合であっても、そのプロトコルの解析、それぞれのプロトコル内容に合わせたPCL102への配信、またはエラー検知によるセッションの切断等の処理は行わない。
このため、DTL104によるサービスを利用するPCL102側では、必ず利用するプロトコルを1種類に確定した状態でDTL104によるサービスを利用する必要がある。これらのプロトコル方式を確定させるための判断と、必要な送受信を行うのは後述するPCLコモンの役割であり、プロトコルデータの生成、パースはPCLエミュレーションが行う。複数のプロトコルから同時にDTLサービスを利用できないよう排他処理もPCLコモンの役割である。
DTL104はPCLコモンが接続を確立するのに必要なサービス、接続確立後にPCLエミュレーションがデータの送受信を行うのに必要なサービスを提供する。
また、DTL104は、現在実行されているサービスが、全転送サイズの途中データなのか、最後のデータなのか、もしくは、データではなくパラメータなのかを示すプロファイルID(Profile ID)、サイズをPCL102よりパラメータとして受け取り、下位のCNLサービスを利用して生成するCSDUパケットヘッダに挿入する。DTL104は、送信パラメータを、JETがデータを送信する際に生成するCSDUパケットの一部に埋め込むことで図6のような複数の論理チャネル(Channel)を1つの物理層(PHY Layer)108上で実現する。
DTL104は、JET規格に定義されているCSDUパケットを生成する機能を有する。DTL104では、CSDUパケットの種別を理解するためのパラメータをCSDUパケットヘッダに付加する。付加するものはProfile ID , Size , Data Payloadである。
DTL104はCNL106が提供するCSDUの単位でデータ転送を行う。DTL104はCSDU送信時に以下の3種類のプロファイルID(T_DATA, LT_DATA, CNL_DATA)をCSDUに対して付与する。さらに、CSDU受信時は、プロファイルIDの種類に応じた処理を行う。
T_DATA, LT_DATA
DTL104は、ユーザデータを転送するCSDUに対して、T_DATA(Profile ID=0)を付与する。ただし、CSDUペイロードへの分割において、最終のCSDUとなる場合にはLT_DATA(Profile ID=2)を付与する。CSDUのペイロードには、ユーザデータのみが格納され、DTL104がヘッダ情報などを埋め込むことはない。
DTL104は、ユーザデータを転送するCSDUに対して、T_DATA(Profile ID=0)を付与する。ただし、CSDUペイロードへの分割において、最終のCSDUとなる場合にはLT_DATA(Profile ID=2)を付与する。CSDUのペイロードには、ユーザデータのみが格納され、DTL104がヘッダ情報などを埋め込むことはない。
CNL_DATA
DTL104は、JETシステム固有の制御データを転送するCSDUに対して、CNL_DATA(Profile ID=1)を付与する。制御データの例としては、パラメータ情報などがある。
DTL104は、JETシステム固有の制御データを転送するCSDUに対して、CNL_DATA(Profile ID=1)を付与する。制御データの例としては、パラメータ情報などがある。
CSDUペイロードにはヘッダ情報(詳細はTBD)が埋め込まれる。DTL104はこのヘッダ情報を解釈し、適切な処理を行う。CNL106は、上位のDTL104の要求に応じて、物理層108のサービスを利用した通信を行う他、物理層108の接続の確立、切断、データの連続性の保障などを行う。
物理層108は、本実施形態による近距離大容量通信が可能な無線通信システムのJET物理層であり、誤り訂正機能、プリアンブルセンス(preamble sense)機能を含む。
図4は、JETデバイスを搭載する機器のソフトウェアの役割に基づいて、図2の構成をOSI参照モデルで示したものである。図4に示すように、物理層(第1層)108は、データを通信回線に送出するための電気的な変換や機械的な作業を受け持つ。ピンの形状やケーブルの特性なども第1層で定められる。
DTL104、CNL106は、データリンク層(第2層)、トランスポート層(第4層)に対応する。データリンク層は、通信相手との物理的な通信路を確保し、通信路を流れるデータのエラー検出などを行う。また、トランスポート層は、通信相手まで確実に効率良くデータを届けるためのデータ圧縮や誤り訂正、再送制御などを行う。なお、本実施形態のシステムはP2P通信であるため、OSI参照モデルにおけるネットワーク層(第3層)は設けられておらず、システムを簡略化することができる。
PCL102は、セッション層(第5層)とプレゼンテーション層(第6層)が対応する。セッション層は、通信プログラム同士がデータの送受信を行うための仮想的な経路(コネクション)の確立や解放を行う。プレゼンテーション層は、セッション層から受け取ったデータをユーザが分かり易い形式に変換したり、アプリケーション層から送られてくるデータを通信に適した形式に変換するなどの処理を行う。
ユーザアプリケーション100は、アプリケーション層(第7層)に対応する。アプリケーション層は、データ通信を利用した様々なサービスを人間や他のプログラムに提供する。
次に、本実施形態の通信装置におけるデータの流れを説明する。図5は、データフローを示す模式図であって、JET機器内の各レイヤーにおけるファイル、データの送受信のデータフローを示している。なお、PCL102は、PCLコモンとPCLエミュレーションに機能が分かれる。データ転送で利用するのはPCLエミュレーションであるため、図5に示すPCL102による処理はPCLエミュレーションによって実現される機能である。物理層108に入力されるCSDUは、データフォーマットとして規定されており、そのヘッダ情報等の生成、解析を行うDTL104が扱うデータフォーマットも同様である。
また、後述するように、共通機能を提供するためのPCLコモンについては規定されているが、PCLエミュレーションは、ユーザプロトコルに準じたデータ変換処理を行うため、それぞれのプロトコルに応じたシステム仕様に依存する。
JET通信では、ファイル等のデータだけではなく、PCL102、DTL104内での管理パラメータや、通信先の同一レイヤー間でのデータの送受信が存在する。これらのファイル、パラメータ類は、CNL106によって最終的にCSDUフォーマットに準拠した形式で伝送される。図6は、CSDUによる論理的なチャネルを示す模式図である。図6に示すように、データの種別を特定するにはProfile IDを用いる。これにより、物理層108のレベルで、複数の伝送Channelを論理的に用いることが可能となる。従って、通信レートを大幅に向上させることができ、特に動画などの大容量のデータ通信に適している。
図7は、CSDUがマッピングされる様子を示す模式図である。CSDUは、CNL106とDTL104の間でやり取りされるデータユニットであり、図7に示すように、CNLフレームにマッピングされる。ユーザアプリケーション100が送受信するユーザデータサイズは特に規定されない。PCL102は、データの長さがデータ分割長(最大4096バイト)を超えた場合、複数のCSDUペイロードへ分割する。PCL102はCSDUペイロードの単位で、DTLサービスを呼び出してユーザデータの送受信を行う。DTL104はCSDUペイロードにヘッダを追加して下位のCNL106に渡す。CSDUヘッダはProfile IDとCSDUペイロードの長さを示すLengthで構成される。
図8は、本システムの機器のハードウェア構成を示す模式図である。図5に示すように、イニシエータとレスポンダーのそれぞれは、物理層108を構成するチップ200と、CPU210とを有して構成される。物理層108は、ベースバンド部を含んでいる。上述したユーザアプリケーション100、PCL102、DTL104、CNL106は、ソフトウェア(プログラム)によりCPU210を機能させることによって実現される。ソフトウェアは、イニシエータ、レスポンダーを構成する通信装置が備えるメモリ、または通信装置の外部の記録媒体などに格納される。
図8に示すように、DTL104は、上述したプロファイルIDを付加するプロファイルID付加部104a、受信データ中からプロファイルIDを取得するプロファイルID取得部104b、正常にファイルの受信を完了した場合にその旨を通知するファイル受信完了通知部104c、及び送信エラー(通信断)が発生した場合にエラーを通知するエラー通知部104dを備えている。
次に、上述したプロファイルID(Profile ID)と、これに伴う処理について説明する。図7で説明したように、DTL104は、CSDUペイロードにCSDUヘッダーを付加する。CSDUヘッダーは、プロファイルIDとデータサイズ(Data Length)からなる。プロファイルIDは、0,1,2のいずれかの値に設定される。
プロファイルIDの値は、上層から送られたデータの種別を表している。プロファイルID=0の場合は、送信データに続きがある場合を示している。また、プロファイルID=1の場合は、DTLコマンドを送信していることを示している。また、プロファイルID=2の場合は、送信データの最後であることを示している。
図9〜図11は、送信データのパケットを示す模式図である。ここで、図9はプロファイルID=0の場合、図10はプロファイルID=2の場合、図11はプロファイルID=1の場合をそれぞれ示している。
図9〜図11に示すように、プロファイルIDは、CSDUヘッダー中のサブCNLヘッダー(Sub CNL Header)の中のデータヘッダー(DATA Header)の中にデータサイズ(Length)とともに格納されている。図9の例では、プロファイルIDが0であるため、4096バイトのデータペイロードを送信した後、送信データファイルに続きがあることが示されている。従って、レスポンダー側では、プロファイルID=0を検出することで、続いてデータが送られてくることを認識することができ、次のデータを受信する準備をしておくことができる。
また、図10の例では、プロファイルIDが2であるため、3000バイトのデータペイロードが送信データファイルの最後であることが示されている。従って、レスポンダー側では、プロファイルID=2を検出することで、送られたデータが最後のデータであることを認識できる。
また、図11の例では、プロファイルIDが1であるため、送られたデータがDTLコマンドなどのパラメータ情報であることが示されている。従って、レスポンダー側では、プロファイルID=1を検出することで、送られたデータがDTLコマンドなどのパラメータ情報であることを認識でき、パラメータ情報に応じた適切な処理を行うことができる。
次に、図12に基づいて、イニシエータのDTL104における送信処理について説明する。先ず、図5及び図7示すように、イニシエータにおいて、上位レイヤーであるPCL102は、送信しようとするユーザデータ(User Data)が4Kバイトより大きいかどうかを判断し、4Kバイトを超えている場合は4Kバイト毎に分割し、複数のCSDUペイロードとする。
ステップS1では、上位レイヤーであるPCL102からDTL104のサービスが呼ばれる。上位レイヤー(PCL102)は、DTL104のサービスを呼び出す時に、送信しようとしているデータが複数のCSDUペイロードの途中データか、最後のデータか、または制御コマンドであるかをDTL104に通知する。DTL104はCSDUペイロードに、プロファイルIDとデータサイズからなるCSDUヘッダーを付加して下位のレイヤーに渡す。
ステップS2において、DTL104は、PCL102からの通知に基づいて送信データが制御コマンドであるか否かを判定する。そして、送信データが制御コマンドである場合は、すなわちCSDUペイロードに制御用のコマンドを入れた場合には、ステップS3へ進み、プロファイルIDの値を“1”に設定してCSDUパケットを構成する。一方、送信データが制御コマンドでない場合は、ステップS4へ進む。
ステップS4では、送信データがファイルの最終部分であるか否かを判定し、ファイルの最終部分である場合は、ステップS5へ進み、ペイロードの最後のデータに対してプロファイルIDの値を”2”に設定してCSDUパケットを構成する。一方、送信データがファイルの最終部分でない場合は、送信データに続きが存在するため、ステップS6へ進み、プロファイルIDの値を”0”に設定してCSDUパケットを構成する。
DTL104の下位レイヤーであるCNL106は、以上のようにしてプロファイルIDの値が設定されたCSDUパケットを、物理層108を通してレスポンダーへ連続的に順次送信する。
次に、図13に基づいて、レスポンダーのDTL104における受信処理について説明する。レスポンダー側のDTL104は、ステップS21において、下位のCNL106からCSDUパケットを受け取る。この際、DTL104は、CSDUパケットのプロファイルIDを参照し、プロファイルIDに基づいて続きのデータファイルが存在するかどうかを判断する。先ずステップS22では、プロファイルIDの値が2であるか否かを判定し、プロファイルID=2の場合はステップS23へ進む。プロファイルID=2のCSDUパケットを受信した場合、受信データがファイルの最終部分であるため、必要なデータは全て受信完了したことになる。従って、ステップS23では、ファイル受信完了通知を上位レイヤーのPCL102に通知し、受信したデータをユーザデータとしてPCL102に渡す。
ステップS22でプロファイルID=2でない場合は、ステップS24へ進む。ステップS24では、プロファイルID=0であるか否かを判定し、プロファイルID=0の場合はステップS25へ進む。この場合、続きのデータが存在するため、ステップS25では受信タイマーを設定し、受信待ち状態とする。次のステップS26では、受信タイマーのタイムアウト前に次のパケットを受信したか否かを判定し、タイムアウト前に次のパケットを受信した場合は、ステップS22に戻り、以降の処理を再度行う。
一方、ステップS26でタイムアウト前に次のCSDUパケットを受信できなかった場合は、ステップS27へ進む。この場合、イニシエータから続けて送信されたパケットを何らかの要因により受信できなかったため、ステップS27では、通信が切断されたと判断し、その旨を上位レイヤーであるPCL102に通知し、処理を終了する。通知を受けたPCL102では、データ保護や転送途中の破損ファイルの破棄等のエラー処理を行う。
ステップS24でプロファイルID=0でない場合は、ステップS28へ進む。この場合、プロファイルID=1であるため、ステップS28では、制御データの受信処理を行い、制御データに基づいてDTL104の内部処理を行う。
例えば従来のUSB通信では、データサイズの大きな通信を行う際には多数のトランザクションが必要になり転送効率・速度に問題があった(図22参照)が、本実施形態のプロファイルIDを用いた処理によれば、送信データ内に転送データの最後を示すプロファイルIDを持たせることにより、図14に示すように、イニシエータ(ホスト)からレスポンダー(ターゲット)へ連続してデータを送信することが可能となり、トークンパケット、ハンドシェイクパケットといった転送のための付随的な通信を削減することが可能となる。また、現時点で送信データ全体の何バイト目までを送信したかを考慮する必要がなく、プロファイルIDにより正常に通信が行われたか否かを判定できるため、プロファイルIDが付されたパケットを連続的に送る簡素な処理が可能となる。
また、レスポンダー側では、プロファイルIDを参照することにより、より下層の物理層108に近いレベルで転送が完了したこと、もしくは転送が完了していないことを検出可能となる。これにより、ユーザアプリケーション100よりも下層で転送が完了したことを認識することができ、受信したデータファイルを上位レイヤに受け渡すことが可能となる。また、転送が完了しなかった場合は、通信にエラーが発生した旨を上位レイヤに通知することが可能となる。
また、CSDUパケット間の受信待ち時間を設定しておく事で、プロファイルIDが最終パケットを示すデータを受信していない場合に、受信タイムアウトが発生した場合には、転送が不完全に終了したことの検出が可能になり、物理層108に近いより下層のレベルでエラー処理への即時移行が容易になる。
図15は、各レイヤーが提供するサービスのアクセスポイントと、レイヤー間の関係を示す模式図である。PCL102の上位は、ユーザアプリケーション100となる。PCL102は、下位DTL104を利用したサービスを提供するレイヤーである。PCL102は、上位のユーザアプリケーション100に対しては、制御をPCLコモン102a(共通処理部)が行い、データ転送はPCLエミュレーション102b(変換処理部)が行うというように、役割が分かれるため、PCL102のサービスはそれぞれに対して規定される。
PCLコモン102aによるサービスは、ユーザアプリケーション100の要求に応じて、DTL104の接続/切断/その他の制御のサービスを呼び出すことで下記のサービスを提供する。
・接続、切断などの制御サービス
・エラーなどのイベント通知サービス
・エミュレーション制御サービス
・接続、切断などの制御サービス
・エラーなどのイベント通知サービス
・エミュレーション制御サービス
PCLエミュレーション102bによるサービスは、対応するプロトコルごとに個別に存在する。個々のPCLエミュレーションはCSDUのペイロード上に汎用プロトコル(USB、TCP/IP、OBEX等)のコマンド、データを乗せて通信することを可能にするプロトコルサービスである。
PCL102では、PCLエミュレーションサービスにより選択されたプロトコル方式に該当するサービスのみ起動することが許可される。PCLエミュレーションサービス内部では上位プロトコルの要求にしたがって、DTL104によるサービスを利用するためのCSDUペイロードを生成する。PCLエミュレーション102bによるサービスを複数持つことで、1つのJET機器で複数のエミュレーションサービス(Emulation Service)を実現することが可能になる。PCLコモン102aにより、1度のセッションで利用できるエミュレーションサービスは1種類のみであるように管理される。
図15に示すように、PCL102は、PCLコモン(PCL Common)102aと、PCLエミュレーション(PCL Emulation)102bにその機能が分割される。PCLコモン102aは、上位のユーザアプリケーション100の要求によって、下位レイヤのサービスの初期化や、接続、切断等の基本機能を提供する。PCLコモン102aでは基本機能の処理を行うため、どのプロトコルが選択された場合においても同様の処理が行われる。一方、PCLエミュレーション102bは、PCLコモン102aにより起動が完了した後、ユーザアプリケーション100が有する任意のプロトコルを下位のDTL104、CNL106が扱うプロトコル形式に変換する。
上述のように、PCLコモン102aは、初期化、基本通信(接続、切断、機器認証)等の共通機能サービスをユーザアプリケーション100に対して提供する。PCLコモン102aは、全てのJETデバイスで共通に設けられるソフトウェアである。従って、PCL102は、PCLエミュレーション102bのみの構成では動作することができない。
PCLエミュレーション102bは、PCLコモン102aによって接続が行われた後、ユーザデータ転送を行うもので、ユーザプロトコル(USB、TCP/IP、OBEX等の汎用プロトコルデータ)をDTL104が扱うデータ形式に相互変換する役割を持つ。PCLエミュレーション102bは、ユーザアプリケーション100から送られてくるユーザプロトコルデータを、下位のDTL104が解釈できる形式に変換する役割を有する。PCL102内のエミュレーションブロック(PCLエミュレーション102bの変換モジュール)は、ユーザアプリケーション100から見た場合に、既存のUSB MSC,NFC等のデバイスを制御するのと同等の方式でデータ転送機能を提供するためのサービスを提供する。但し、PCLエミュレーション102bは、機器を構成するユーザー固有のプロトコル数だけ存在する。
DTL104は、上位の2種類のPCL(PCL Common102a, PCL Emulation102b)に対して、下位CNL106のサービスを利用した機能を、DTLサービスとして提供する。PCLエミュレーション102bは、後で詳細に説明するように、ユーザプロトコルごとに変換モジュール(Protocol A, Protocol B, Protocol C,・・・Protocol Z)を有するが、1度のセッション(接続)で利用できるのは1種類だけであり、その制御はPCLコモン102aによって行われる。例えば、上位プロトコルがUSBの場合、マスストレージクラスであるか、あるいは他の方式かによって異なる変換モジュールが用意されている。
JETデバイスにおいて、機器を構成するユーザは、上位のプロトコルに対応した変換モジュールを自由に設定してPCLエミュレーション102bを構築することができる。また、変換モジュールの追加、削除もユーザが自由に行うことができる。一方、PCLコモン102aはプロトコル変換の基本機能であるため、全てのJETデバイスにおいて共通であることが義務付けられる。
図15では、ユーザプロトコルとしてProtocol A〜Zが示されており、このうちProtocol Bがアクティブとされ、Protocol Bにより接続が行われている状態を示している。この場合、イニシエータとレスポンダーの双方でProtocol Bによる接続が行われる。どのプロトコルで接続するかは、イニシエータとレスポンダーとの間のネゴシエーションによって決定される。
図16は、本実施形態のシステムにおける状態遷移を示す模式図である。PCL102は、物理層108によるイニシエータとレスポンダーの接続状態の変化や、ユーザアプリケーションからPCL Serviceを利用することにより、図16に示すような状態遷移を行う。
図16において、先ず、レスポンダーはイニシエータからの接続待ち状態とされ、イニシエータは接続先のレスポンダーをサーチしている状態とされる。イニシエータとレスポンダーの接続が開始されると(Start Connection)、イニシエータとレスポンダー間でネゴシエーション(Negotiation)が行われる。この状態では、JETデバイス間でソフトウェアのバージョンの確認、エミュレーション方式(互いにどのようなプロトコルを有しているか)の確認が行われる。
ネゴシエーションの結果、バージョン、エミュレーション方式が一致した場合は、接続が行われ、物理層108による接続が完了する(Connected)。その後、エミュレーションが開始され(Emulation)、ユーザアプリケーション100間でデータ転送が可能な状態とされる。一方、ソフトウェアのバージョン情報が一致しなかった場合、または双方が保有するプロトコルが一致せず、エミュレーション方式が一致しなかった場合は、接続が行われない(Disconnect)。接続がされなかった場合(Disconnect)、エミュレーションが終了した場合(End Emulation)は、レスポンダーが接続待ち状態となる。
PCLコモン102aは、PCL102のバージョン(Version)情報に基づいて、バージョンチェック(Version Check)及びエミュレーション方式の判別を行うネゴシエーション機能を備える。ネゴシエーションの結果、バージョン及びエミュエーション方式が一致すれば、イニシエータとレスポンダーの間で同じプロトコルによる接続が行われる。ネゴシエーションに必要なバージョン管理機能(PCL Version Management)及び、エミュレーション判別機能(PCL
Select Emulation)については後で説明する。ネゴシエーションはユーザアプリケーション100に対して提供されるサービスではなく、接続待機中の状態で、接続を検知した際に自動で実行される内部機能である。
Select Emulation)については後で説明する。ネゴシエーションはユーザアプリケーション100に対して提供されるサービスではなく、接続待機中の状態で、接続を検知した際に自動で実行される内部機能である。
図17は、ネゴシエーションの処理を示す模式図である。図17の処理は、図2の各層のソフトウェアによりCPU210を機能させることで実現できる。一例として、判別自体はレスポンダーが行い、イニシエータはその判別結果を待つ。接続先のバージョン情報の取得はCNL106が行い、接続時にバージョン情報が自動的に交換される(ステップS1)。このとき交換されるバージョン情報をJETバージョンと称することとする。
PCL102では、下位のCNL106、DTL104からのイベントにより、接続を検知した時点で接続先JETデバイスのJETバージョンの情報を既に取得できている。このため、先ず、図17に示すように、CNL106のソフトウェアのバージョンチェック(CNL Ver check)とDTLのソフトウェアのバージョンチェック(DTL Ver check)が行われる。PCL102の内部で行われるのは、JETバージョン内に含まれるPCLバージョンのチェックによるエミュレーション方式の判別である。
エミュレーション方式の判別は、例えばレスポンダーが主導して行う。イニシエータとレスポンダーの双方でPCL102のバージョン情報が交換され、PCLコモン102aのPCLバージョンチェック機能により、PCL102のソフトウェアのバージョン情報がチェックされる(PCL Ver check)。
次に、イニシエータとレスポンダーの双方でエミュレーションタイプの情報が交換され、図17に示すように、PCLコモン102aのエミュレーションタイプチェック機能により、エミュレーションのタイプがチェックされる(EMU Type check)。エミュレーションタイプは、互いのJETデバイスが通信可能なエミュレーション方式(プロトコル)を記述したパラメータである。
レスポンダー側では、イニシエータとレスポンダーの互いのエミュレーションタイプの比較を行い、同一のものがあれば接続可能であると判断する。PCL102は、エミュレーションタイプが確定した時点でユーザアプリケーション100に通知を行い、ユーザアプリケーション100がPCL_start_emu serviceを呼び出す(ステップS2)。そして、PCLコモン102aからPCLエミュレーション102bへStart_Emuというコマンドを送る。これによりPCLコモン102aによる起動が完了し、PCLエミュレーション102bによるエミュレーションが開始される(ステップS3)。そして、PCLエミュレーション102bによりユーザアプリケーション100のプロトコルを変換して、下位のDTL104、CTL106と通信を行うことが可能となる。
また、イニシエータとレスポンダーで同一のエミュレーションタイプを複数有している場合は、ユーザアプリケーション100にその旨を通知する。ユーザアプリケーション100側でこれらの複数のエミュレーションタイプの1つを指定する場合は、その旨の情報がPCL102に送られる。この際、ユーザアプリケーション100側では、予め指定された1つのエミュレーションタイプを指定することができる。また、イニシエータとレスポンダーの一方が携帯機器の場合など、高速通信可能なプロトコルを使う必要が比較的低い場合は、通信速度に応じた適切なプロトコルのエミュレーションタイプを選択することができる。これらの仕様は、JETデバイス、またはユーザアプリケーション100を構成するユーザが自由に設定することができる。
次に、PCL102によるエミュレーション選択について説明する。エミュレーション選択は、イニシエータからの接続検知を検知したレスポンダー側でネゴシエーションを行う際にPCLコモン102aの内部で実行される機能である。接続時にJETデバイス間で交換されるJETバージョン内のPCLバージョン情報から、互いに適合するエミュレーションを持っているかを確認する。
図18は、JETバージョン情報を説明するための模式図である。PCL102は、自機のバージョン情報と、接続先JETデバイスのバージョン情報の2つを管理する。自機のバージョン情報は必ず起動時にロードされ、接続検知時、接続中は、接続先デバイスのバージョン情報を保持する。
図18に示すように、JETのバージョン情報は合計10バイトであり、上層から順にプラットフォーム(Platform)情報(1byte)、JETドライババージョン情報(2byte)、CNLバージョン情報(1byte)、DTLバージョン情報(2byte)、PCLバージョン情報(2byte)、リザーブド(2byte)の情報がある。
PCLバージョン情報(2byte)のうち、前半の1バイトは、システムの互換性維持のためのソフトウェアのVersion No (T.B.D)である。後半の1バイトは、装置(JETデバイス)が対応するエミュレーション方式を示している。図18では、エミュレーション方式としてUSB,TCP/IP,OBEX・・・が例示され、各方式に1ビットのデータが与えられている。そして、ビットが1の場合はそのエミュレーション方式に対応することを表しており、ビットが0の場合はそのエミュレーション方式に対応していないことを表している。1つのJETデバイスで対応するエミュレーション方式の最大値には規定はないが、最低でも1つのエミュレーション方式には対応しなければならない。
なお、バージョン情報のチェックは、図17に示すように、図18の上層側(プラットフォーム側)の情報から順次に行われる。PCL102のバージョン情報のチェック後、エミュレーションタイプのチェックが行われる。
接続の実行結果として、互いに通信可能なエミュレーション方式を記述したエミュレーションタイプが選択され、選択されたエミュレーションタイプは、レスポンダー側からユーザアプリケーション100に通知され、また許可待ちをしているイニシエータに通知される。図19は、エミュレーション選択のシーケンスを示す模式図である。図19において、選択されたエミュレーションタイプ(EMUTYPE)は、レスポンダーのユーザアプリケーション100(UsrAppl)に対してはPCL_conf_r.indとして、イニシエータ側に対してはPCL_conf_i.indとして通知される(図19参照)。
図20及び図21は、PCLエミュレーション102bに関係するサービスを示す模式図である。以下、各サービスについて説明する。起動、終了はPCLコモン102aによって行われるが、データの送信、受信は、ユーザアプリケーション100からPCLエミュレーション102bに通信を行うことで実行できる。従って、PCLコモン102aとの間で提供されるサービス(図20)と、ユーザアプリケーション100との間で提供されるサービス(図21)に分けられる。
Start service(Mandatory;図20)
Start serviceは、標準で提供されるサービスであり、エミュレーションを開始する際、PCLコモン102aにより実行されるPCLエミュレーション102bの初期化処理を提供するサービスである。Startが完了した時点で、ユーザアプリケーション100から、ユーザプロトコルを用いたデータ送受信が可能となる。
Start serviceは、標準で提供されるサービスであり、エミュレーションを開始する際、PCLコモン102aにより実行されるPCLエミュレーション102bの初期化処理を提供するサービスである。Startが完了した時点で、ユーザアプリケーション100から、ユーザプロトコルを用いたデータ送受信が可能となる。
End service(Mandatory;図20)
End serviceは、標準で提供されるサービスであり、エミュレーションを終了する際、PCLコモン102aにより実行されるエミュレーションの終了処理を提供するサービスである。Endが完了した時点で、ユーザアプリケーション100から、ユーザプロトコルを用いたデータ送受信は不可能となる。PCLコモン102aはエミュレーションがStartされていた場合、切断(PCL_Disconect)を実行する前に、このサービスを実行する。
End serviceは、標準で提供されるサービスであり、エミュレーションを終了する際、PCLコモン102aにより実行されるエミュレーションの終了処理を提供するサービスである。Endが完了した時点で、ユーザアプリケーション100から、ユーザプロトコルを用いたデータ送受信は不可能となる。PCLコモン102aはエミュレーションがStartされていた場合、切断(PCL_Disconect)を実行する前に、このサービスを実行する。
Open service(Mandatory;図21)
Open serviceは、ユーザプロトコル上での通信路のオープン時に必要な処理を提供するサービスである。
Open serviceは、ユーザプロトコル上での通信路のオープン時に必要な処理を提供するサービスである。
Close service(Mandatory;図21)
Close serviceは、ユーザプロトコル上での通信路のクローズ時に必要な処理を提供するサービスである。
Close serviceは、ユーザプロトコル上での通信路のクローズ時に必要な処理を提供するサービスである。
Read service(Mandatory;図21)
Read serviceは、ユーザプロトコル上で、接続先のデータを取得する際に必要な処理を提供するサービスである。
Read serviceは、ユーザプロトコル上で、接続先のデータを取得する際に必要な処理を提供するサービスである。
Write service(Mandatory;図21)
Write serviceは、ユーザプロトコル上で、接続先にデータを送信する際に必要な処理を提供するサービスである。
Write serviceは、ユーザプロトコル上で、接続先にデータを送信する際に必要な処理を提供するサービスである。
以上のように、Open service、Close serviceは、PCLコモン102aによる上位プロトコルの初期化処理に対応する処理である。また、Read service、Write serviceは、ユーザアプリケーション100によるデータの送信、受信に関する処理である。
User customize service(Option;図21)
上述のサービスに該当しないサービスであり、装置を構成するユーザが独自のサービスとして定義できるものである。通信路を“開く(Open)”、“閉じる(Close)”、データを“送る(Write)”、“受ける(Read)”以外の部分は、JETデバイスを構成するユーザが自由に設定できるカスタマイズ領域とされ、例えばユーザアプリケーション100の種類(Windows, Linux等)に応じて、ユーザが自由に設定することができる。但し、どのアプリケーションを使用した場合でも、上述のようにPCLコモン102aによる“Start”、“End”は必要であり、全てのJETデバイスで共通である。
上述のサービスに該当しないサービスであり、装置を構成するユーザが独自のサービスとして定義できるものである。通信路を“開く(Open)”、“閉じる(Close)”、データを“送る(Write)”、“受ける(Read)”以外の部分は、JETデバイスを構成するユーザが自由に設定できるカスタマイズ領域とされ、例えばユーザアプリケーション100の種類(Windows, Linux等)に応じて、ユーザが自由に設定することができる。但し、どのアプリケーションを使用した場合でも、上述のようにPCLコモン102aによる“Start”、“End”は必要であり、全てのJETデバイスで共通である。
以上説明したように本実施形態によれば、送信データ内に転送データの最後を示すプロファイルIDを持たせることにより、イニシエータから連続してデータを送信することが可能となり、トークンパケット、ハンドシェイクパケットといった転送のための付随的な通信を削減することが可能となる。また、レスポンダー側では、プロファイルIDを参照することにより、転送が完了したこと、もしくは転送が完了していないことを検出可能となる。これにより、転送が完了した場合は、受信したデータファイルを上位レイヤに受け渡すことが可能となる。また、転送が完了しなかった場合は、通信にエラーが発生した旨を上位レイヤに通知することが可能となる。なお、上述した例では、無線通信システムを例に挙げて説明したが、通信システムは有線のものであってもよい。
以上、添付図面を参照しながら本発明の好適な実施形態について説明したが、本発明は係る例に限定されないことは言うまでもない。当業者であれば、特許請求の範囲に記載された範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、それらについても当然に本発明の技術的範囲に属するものと了解される。
100 ユーザアプリケーション
104 DTL
104a プロファイルID付加部
104b プロファイルID取得部
104c ファイル受信完了通知部
104d エラー通知部
210 CPU
104 DTL
104a プロファイルID付加部
104b プロファイルID取得部
104c ファイル受信完了通知部
104d エラー通知部
210 CPU
Claims (8)
- 他の通信相手との間で信号の送受信を行う物理層と、
上位層と前記物理層との間を接続するデータ移送部とを備え、
前記データ移送部は、
前記上位層からの指示に基づいて、送信データに対してデータの種別を表す識別情報を付加する識別情報付加部を含み、
前記物理層は、前記識別情報が付されたデータを連続的に送受信することを特徴とする、通信装置。 - 前記データ移送部は、前記物理層を介して受信したデータから前記識別情報を取得して受信データの種別を認識する識別情報取得部を含むことを特徴とする、請求項1に記載の通信装置。
- 前記識別情報は、送信データに続きがあること、送信データが最後のデータであること、又は送信データが前記データ移送部を制御するための制御コマンドであること、を示す情報であることを特徴とする、請求項1に記載の通信装置。
- 前記データ移送部は、前記識別情報取得部により最後のデータであることを示す識別情報が取得された場合に、ファイル受信完了通知を前記上位層に通知するファイル受信完了通知部を含むことを特徴とする、請求項3に記載の通信装置。
- 前記データ移送部は、前記識別情報取得部により送信データに続きがあることを示す識別情報が取得された場合に、所定時間内に次のデータを受信しなかった場合は、エラー通知を前記上位アプリケーションに通知するエラー通知部を含むことを特徴とする、請求項2に記載の通信装置。
- 通信装置同士が通信を行う通信システムであって、
前記通信装置は、
他の通信相手との間で信号の送受信を行う物理層と、
上位層と前記物理層との間を接続するデータ移送部とを備え、
前記データ移送層は、
前記上位層からの指示に基づいて、送信データに対してデータの種別を表す識別情報を付加する識別情報付加部と、
前記物理層を介して受信したデータから前記識別情報を取得して受信データの種別を認識する識別情報取得部と、を含み、
前記識別情報が付されたデータを、前記物理層を介して連続的に送受信することを特徴とする、通信システム。 - 他の通信相手との間で信号の送受信を行う物理層と、上位層と前記物理層との間を接続するデータ移送部とを備える通信装置における通信方法であって、
前記上位層からの指示に基づいて、送信データに対してデータの種別を表す識別情報を付加するステップと、
前記識別情報が付されたデータを、前記物理層を介して他の通信装置に連続的に送信するステップと、
を備えることを特徴とする、通信方法。 - 他の通信相手との間で信号の送受信を行う物理層と、上位層と前記物理層との間を接続するデータ移送部とを備える通信装置におけるプログラムであって、
前記上位層からの指示に基づいて、送信データに対してデータの種別を表す識別情報を付加する手段、
前記識別情報が付されたデータを、前記物理層を介して他の通信装置に送信する手段、
としてコンピュータを機能させるためのプログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008018120A JP2009182458A (ja) | 2008-01-29 | 2008-01-29 | 通信装置、通信システム、通信方法及びプログラム |
US12/361,297 US20090193139A1 (en) | 2008-01-29 | 2009-01-28 | Communication apparatus, communication system, communication method and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008018120A JP2009182458A (ja) | 2008-01-29 | 2008-01-29 | 通信装置、通信システム、通信方法及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2009182458A true JP2009182458A (ja) | 2009-08-13 |
Family
ID=40900348
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008018120A Pending JP2009182458A (ja) | 2008-01-29 | 2008-01-29 | 通信装置、通信システム、通信方法及びプログラム |
Country Status (2)
Country | Link |
---|---|
US (1) | US20090193139A1 (ja) |
JP (1) | JP2009182458A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011090396A (ja) * | 2009-10-20 | 2011-05-06 | Seiko Epson Corp | Usbデバイス装置 |
JP2011114708A (ja) * | 2009-11-27 | 2011-06-09 | Sony Corp | 通信装置、通信システム、通信方法およびプログラム |
JP2014011756A (ja) * | 2012-07-03 | 2014-01-20 | Brother Ind Ltd | 通信装置 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4609550B2 (ja) * | 2008-08-20 | 2011-01-12 | ソニー株式会社 | 通信装置、通信システム、通信方法及びプログラム |
US20180376516A1 (en) * | 2017-06-21 | 2018-12-27 | Aruba Networks, Inc. | Establishing a Datagram Transport Layer Security Connection between Nodes in a Cluster |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63209336A (ja) * | 1987-02-26 | 1988-08-30 | Nec Corp | 時分割多重パケツト通信方式 |
JPH06197143A (ja) * | 1992-12-25 | 1994-07-15 | Naoki Okamoto | コンピュータの多重通信制御方法及び多重通信制御装置 |
JPH10303936A (ja) * | 1997-03-31 | 1998-11-13 | Compaq Computer Corp | ファイバ・チャネル環境におけるデータ転送システム及び方法 |
JP2000253040A (ja) * | 1999-03-02 | 2000-09-14 | Kokusai Electric Co Ltd | 接続装置及びネットワーク接続システム |
JP2004112069A (ja) * | 2002-09-13 | 2004-04-08 | Canon Inc | 通信装置 |
JP2005191819A (ja) * | 2003-12-25 | 2005-07-14 | Sony Corp | 移動体通信システムおよび携帯端末装着装置 |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3815841B2 (ja) * | 1997-03-28 | 2006-08-30 | ローム株式会社 | IrDA変復調IC |
JP2985844B2 (ja) * | 1997-09-08 | 1999-12-06 | 日本電気株式会社 | Atm受信装置 |
KR100694026B1 (ko) * | 1999-11-01 | 2007-03-12 | 삼성전자주식회사 | 광대역 무선 전송방법 및 장치 |
JP2001202345A (ja) * | 2000-01-21 | 2001-07-27 | Hitachi Ltd | 並列プロセッサ |
DE60131900T2 (de) * | 2000-10-26 | 2008-12-04 | Flood, James C. jun., Portland | Verfahren und system zur verwaltung von verteilten inhalten und verwandten metadaten |
US7113507B2 (en) * | 2000-11-22 | 2006-09-26 | Silicon Image | Method and system for communicating control information via out-of-band symbols |
US7292588B2 (en) * | 2001-05-01 | 2007-11-06 | Milley Milton E | Wireless network computing |
US7965729B2 (en) * | 2001-05-23 | 2011-06-21 | Polytechnic University | Transferring data such as files |
US8880709B2 (en) * | 2001-09-12 | 2014-11-04 | Ericsson Television Inc. | Method and system for scheduled streaming of best effort data |
US7725557B2 (en) * | 2002-06-24 | 2010-05-25 | Microsoft Corporation | Client-side caching of streaming media content |
CN1764897B (zh) * | 2003-03-28 | 2010-11-10 | 汤姆森特许公司 | 用于传输基于媒体的文件的系统和方法 |
EP1494237A1 (en) * | 2003-07-01 | 2005-01-05 | Deutsche Thomson-Brandt Gmbh | Method and apparatus for editing a data stream |
US7343435B2 (en) * | 2003-11-10 | 2008-03-11 | Digital Networks North America, Inc. | Stream based compressed file download with interruption recovery |
US20060224759A1 (en) * | 2005-03-15 | 2006-10-05 | 1000 Oaks Hu Lian Technology Development Co., Ltd. | System and method for a peer-to-peer streaming content operation by a browser plug-in |
KR100747575B1 (ko) * | 2005-12-12 | 2007-08-08 | 엘지전자 주식회사 | 방송신호 재생방법 및 장치 |
JP2008010110A (ja) * | 2006-06-30 | 2008-01-17 | Sony Corp | ファイル分割装置、ファイル分割方法及びファイル分割プログラム |
US20110276657A1 (en) * | 2007-12-20 | 2011-11-10 | Chalk Media Service Corp. | Method and system for the delivery of large content assets to a mobile device over a mobile network |
US20090310489A1 (en) * | 2008-06-17 | 2009-12-17 | Bennett Andrew M | Methods and apparatus using a serial data interface to transmit/receive data corresponding to each of a plurality of logical data streams |
-
2008
- 2008-01-29 JP JP2008018120A patent/JP2009182458A/ja active Pending
-
2009
- 2009-01-28 US US12/361,297 patent/US20090193139A1/en not_active Abandoned
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63209336A (ja) * | 1987-02-26 | 1988-08-30 | Nec Corp | 時分割多重パケツト通信方式 |
JPH06197143A (ja) * | 1992-12-25 | 1994-07-15 | Naoki Okamoto | コンピュータの多重通信制御方法及び多重通信制御装置 |
JPH10303936A (ja) * | 1997-03-31 | 1998-11-13 | Compaq Computer Corp | ファイバ・チャネル環境におけるデータ転送システム及び方法 |
JP2000253040A (ja) * | 1999-03-02 | 2000-09-14 | Kokusai Electric Co Ltd | 接続装置及びネットワーク接続システム |
JP2004112069A (ja) * | 2002-09-13 | 2004-04-08 | Canon Inc | 通信装置 |
JP2005191819A (ja) * | 2003-12-25 | 2005-07-14 | Sony Corp | 移動体通信システムおよび携帯端末装着装置 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011090396A (ja) * | 2009-10-20 | 2011-05-06 | Seiko Epson Corp | Usbデバイス装置 |
JP2011114708A (ja) * | 2009-11-27 | 2011-06-09 | Sony Corp | 通信装置、通信システム、通信方法およびプログラム |
JP2014011756A (ja) * | 2012-07-03 | 2014-01-20 | Brother Ind Ltd | 通信装置 |
Also Published As
Publication number | Publication date |
---|---|
US20090193139A1 (en) | 2009-07-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100979872B1 (ko) | 엔에프씨 호스트 콘트롤러 인터페이스 | |
US7787391B2 (en) | Communication device, communication system, communication method, communication program, and communication circuit | |
US8284684B2 (en) | Communication device, communication system, communication method, and communication circuit | |
JP2009182459A (ja) | 通信装置、通信システム、通信方法及びプログラム | |
JP4219950B2 (ja) | 通信機器、通信方法、通信回路、携帯電話機、プログラム、およびプログラムを記録したコンピュータ読み取り可能な記録媒体 | |
WO2006013979A1 (ja) | 送信機、受信機、通信システム、通信方法、通信プログラム | |
US11166137B2 (en) | Method, device, and system for adjusting packet length in near field communication | |
WO2006080357A1 (ja) | 通信機器、通信システム、通信方法、通信プログラム、通信回路 | |
JP4609550B2 (ja) | 通信装置、通信システム、通信方法及びプログラム | |
JP2009182458A (ja) | 通信装置、通信システム、通信方法及びプログラム | |
JP5698366B2 (ja) | 制御方法、装置、及びシステム | |
US20130124877A1 (en) | Communication method, communication equipment, and storage equipment | |
JP6665190B2 (ja) | ネットワーク共有実施方法及び装置 | |
WO2009084506A1 (ja) | 通信装置、通信システム、通信方法及びプログラム | |
JP4948113B2 (ja) | 送信機、受信機、通信システム、通信方法、通信プログラム | |
JP4394141B2 (ja) | 通信装置、通信システム、通信方法、通信プログラム、通信回路 | |
JP4137992B2 (ja) | 通信機器、通信システム、通信方法、通信プログラム、通信回路、携帯電話、表示装置、印刷装置、記録装置 | |
Tiedemann | nfcpy documentation | |
CN104038553A (zh) | 一种控制方法、装置和系统 | |
JP2007150390A (ja) | 通信装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090915 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20091116 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20100727 |