JPWO2014057596A1 - 無線通信装置、無線通信方法、および無線通信制御プログラム - Google Patents

無線通信装置、無線通信方法、および無線通信制御プログラム Download PDF

Info

Publication number
JPWO2014057596A1
JPWO2014057596A1 JP2014509544A JP2014509544A JPWO2014057596A1 JP WO2014057596 A1 JPWO2014057596 A1 JP WO2014057596A1 JP 2014509544 A JP2014509544 A JP 2014509544A JP 2014509544 A JP2014509544 A JP 2014509544A JP WO2014057596 A1 JPWO2014057596 A1 JP WO2014057596A1
Authority
JP
Japan
Prior art keywords
wireless communication
data
reception buffer
communication device
size
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.)
Granted
Application number
JP2014509544A
Other languages
English (en)
Other versions
JP6084204B2 (ja
Inventor
諭 千賀
諭 千賀
西岡 伸一郎
伸一郎 西岡
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Corp
Panasonic Holdings Corp
Original Assignee
Panasonic Corp
Matsushita Electric Industrial Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Panasonic Corp, Matsushita Electric Industrial Co Ltd filed Critical Panasonic Corp
Publication of JPWO2014057596A1 publication Critical patent/JPWO2014057596A1/ja
Application granted granted Critical
Publication of JP6084204B2 publication Critical patent/JP6084204B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/0278Traffic management, e.g. flow control or congestion control using buffer status reports
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/1607Details of the supervisory signal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1829Arrangements specially adapted for the receiver end
    • H04L1/1835Buffer management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1829Arrangements specially adapted for the receiver end
    • H04L1/1864ARQ related signaling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/30Flow control; Congestion control in combination with information about buffer occupancy at either end or at transit nodes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/324Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the data link layer [OSI layer 2], e.g. HDLC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1809Selective-repeat protocols

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Computer And Data Communications (AREA)
  • Communication Control (AREA)

Abstract

他の無線通信装置との間で、到着保証型のデータ通信を高速化する無線通信装置。無線通信装置(100)は、MAC層部(130)と、それより上位の階層であるプロトコル適応層部(120)と、を有する。プロトコル適応層部(120)は、データの受信開始前に、MAC層部(130)とで共有する受信バッファメモリ(131)の実サイズより大きい仮想値を無線通信装置(200)へ通知する。プロトコル適応層部(120)は、無線通信装置(200)から受信されて蓄積されたデータを、受信バッファメモリ(131)からデータ蓄積部(140)へ書き出す。プロトコル適応層部(120)は、書き出したデータのサイズの合計が仮想値に到達した場合、PAL確認応答を生成し、無線通信装置(200)へ送信する。

Description

本発明は、他の無線通信装置との間で、効率的にデータを受信することができる無線通信装置、無線通信方法、および無線通信制御プログラムに関する。
例えば、動画や静止画などのコンテンツデータを、無線または有線を介して他の通信装置と送受信できる通信装置が普及している。それに伴い、送受信されるコンテンツデータの通信速度を用途に合わせて最適化する技術が考案されている。
特許文献1は、上記技術の一例として、到着保証型のデータ通信方法を開示している。到着保証型のデータ通信方法は、例えば、以下の手順により実現される。
送信装置は、データを受信装置に送信する。受信装置は、送信装置からデータを受け取ると、確認応答を送信装置に送信する。確認応答は、正常に受信処理が終わったデータを識別番号により通知するデータである。送信装置は、受信装置から確認応答を受信することにより、自装置が送信したデータが受信装置にて正常に受信されたことを確認する。
このような到着保証型のデータ通信方法において、送信装置が確認応答を待たずに受信装置に送信できるデータ量は、受信装置が有する受信用のバッファメモリ(以下「受信バッファメモリ」という)のサイズによって制限される。この詳細について以下に説明する。
まず、送信装置と受信装置は、通信開始前のセットアップの段階で、自装置の受信バッファメモリのサイズを示す値(以下「受信バッファサイズ」という)を互いに通知しあう。このとき通知される受信バッファサイズは、例えば、受信したデータを保持できる最大量を示す値である。そして、通信が開始されると、送信装置は、受信装置から通知された受信バッファサイズ分のデータを受信装置へ送信する。その後、送信装置は、確認応答を受信装置から受け取るまで、データの送信を行わずに待機する。そして、送信装置は、受信装置から確認応答を受け取ると、再び、受信装置から通知された受信バッファサイズ分のデータを受信装置へ送信する。
すなわち、送信装置は、通信開始前に受信装置から通知される受信バッファサイズが大きいほど、確認応答を待たずに送信できるデータ量が多くなる。そして、送信装置は、確認応答を待たずに送信できるデータ量が多いほど、データの通信速度を上げることができる。
特開2005−109765号公報
しかしながら、例えば、小型のモバイル機器のように、コスト、実装面積、消費電力の制限を理由として、サイズの大きい受信バッファメモリを搭載することができない無線通信装置がある。このような無線通信装置は、到着保証型のデータ通信方法を行う受信装置に用いた場合、以下の課題がある。
すなわち、受信装置の受信バッファサイズが小さいため、送信装置は、確認応答を待たずに送信できるデータ量が少なくなる。これに伴い、受信装置は、確認応答を返信する回数が多くなる。その結果、送信装置は、確認応答の受信を待機する時間が増えることになる。上述した通り、確認応答の受信を待機している間、送信装置は、データの送信を行うことができない。したがって、受信バッファサイズの小さい受信装置では、到着保証型のデータ通信方法の通信速度が低下する、という課題がある。
本発明の目的は、受信バッファサイズの小さい場合でも、到着保証型のデータの通信を高速化することである。
本発明の無線通信装置は、他の無線通信装置と、到着保証型のデータ通信を用いた無線通信を行う無線通信装置であって、前記他の無線通信装置から受信したデータを、受信バッファメモリに一時的に記憶するMAC(Media Access Control)層部と、前記他の無線通信装置からデータの受信を開始する前に、前記MAC層との間で共有する前記受信バッファメモリの実サイズより大きい値を、仮想受信バッファサイズとして前記他の無線通信装置へ通知し、前記受信バッファメモリに記憶されたデータを記録媒体へ書き出し、前記記録媒体へ書き出したデータのサイズの合計が前記仮想受信バッファサイズに到達した場合、確認応答を生成し、前記他の無線通信装置へ送信するプロトコル適応層部と、を具備する。
本発明の無線通信方法は、他の無線通信装置と、到着保証型のデータ通信を用いた無線通信を行う無線通信方法であって、プロトコル適応層部において、前記他の無線通信装置からデータの受信を開始する前に、MAC(Media Access Control)層部との間で共有する受信バッファメモリの実サイズより大きい値を、仮想受信バッファサイズとして前記他の無線通信装置へ通知するステップと、前記MAC層部において、前記他の無線通信装置から受信したデータを、前記受信バッファメモリに一時的に記憶するステップと、前記プロトコル適応層部において、前記受信バッファメモリから前記データを記録媒体へ書き出すステップと、前記プロトコル適応層部において、前記記録媒体へ書き出したデータのサイズの合計が前記仮想受信バッファサイズに到達した場合、確認応答を生成し、前記他の無線通信装置へ送信するステップと、を有する。
本発明の無線通信制御プログラムは、他の無線通信装置と、到着保証型のデータ通信を用いた無線通信を行う装置のコンピュータに実行させる無線通信制御プログラムであって、プロトコル適応層部において、前記他の無線通信装置からデータの受信を開始する前に、MAC(Media Access Control)層部との間で共有する受信バッファメモリの実サイズより大きい値を、仮想受信バッファサイズとして前記他の無線通信装置へ通知する処理と、前記MAC層部において、前記他の無線通信装置から受信したデータを、前記受信バッファメモリに一時的に記憶する処理と、前記プロトコル適応層部において、前記受信バッファメモリから前記データを記録媒体へ書き出す処理と、前記プロトコル適応層部において、前記記録媒体へ書き出したデータのサイズの合計が前記仮想受信バッファサイズに到達した場合、確認応答を生成し、前記他の無線通信装置へ送信する処理と、を実行させる。
本発明は、他の無線通信装置との間で、到着保証型のデータの通信を高速化できる。
本実施の形態に係る通信システムの構成例を示すブロック図 本実施の形態に係るセットアップデータのフォーマット例を示す図 本実施の形態に係る受信データのフォーマット例を示す図 本実施の形態に係るPAL確認応答のフォーマット例を示す図 本実施の形態に係るMAC確認応答のフォーマット例を示す図 本実施の形態に係る受信側の無線通信装置の動作例を示すフローチャート 本実施の形態に係る通信システムの動作例を示すシーケンス図
以下、本発明の実施の形態について、図面を参照して詳細に説明する。
図1は、本実施の形態に係る通信システムの構成例を示す。本実施の形態に係る通信システムは、無線通信装置100が、無線通信を介して、無線通信装置200との間で到着保証型のデータの受信処理を行う場合を、一例として説明する。
<無線通信装置100の構成>
まず、無線通信装置100の構成について説明する。
図1において、本実施の形態に係る無線通信装置100は、受信装置である。すなわち、無線通信装置100は、無線通信を介して無線通信装置200からデータを受信し、データ蓄積部140に蓄積する装置である。
図1に示すように、無線通信装置100は、上位層部110、プロトコル適応層部120、MAC層部130、データ蓄積部140を有する。プロトコル適応層部120は、セッション制御部121、仮想バッファ制御部122、PAL確認応答生成部123、および送信制御部124を有する。MAC層部130は、受信バッファメモリ131、無線通信部132、およびMAC確認応答生成部133を有する。上記「MAC」は、Media Access Controlの略である。また、PALは、Protocol Adaptation Layerの略である。
上位層部110は、通信機能を階層構造に分割したOSI(Open Systems Interconnection)参照モデルのプロトコル階層構造において、プロトコル適応層部120よりも上位に位置する階層である。上位層部110は、例えば、無線通信装置200からデータを受信するアプリケーションである。
上位層部110は、例えば、ユーザの操作を契機として、まず事前セットアップを行い、次に無線通信装置200からデータの受信を開始するように、プロトコル適応層部120へ指示する。この指示は、以下「受信開始指示」という。事前セットアップは、自装置(無線通信装置100)に対するセットアップと、通信相手(無線通信装置200)に対するセットアップとを含む。前者は、例えば、プロトコル適応層部120へデータの書き出し先を指示する処理を含む。一方、後者は、例えば、無線通信装置200とセッションを開始(確立)する処理、および、自装置の受信バッファサイズを無線通信装置200へ通知する処理、を含む。
プロトコル適応層部120は、OSI参照モデルのプロトコル階層構造において、上位層である上位層部110と、下位層であるMAC層部130との間に位置する階層である。すなわち、プロトコル適応層部120は、上位層と下位層の整合を取ることを基本機能とする。具体的には、プロトコル適応層部120は、上位のアプリケーションが提供する各サービス特有の性質を吸収し、下位の無線層をサービスに依存しないで共通に定義できるようにしている。
ここで、プロトコル適応層部120が備える、セッション制御部121、仮想バッファ制御部122、PAL確認応答生成部123、および送信制御部124について、それぞれ説明する。
セッション制御部121は、上位層部110から受信開始指示を受け付けると、送信制御部124に対し、セッション開始要求を送る。セッション開始要求は、無線通信装置200に対してセッションの開始を要求するデータである。また、セッション制御部121は、セッション開始要求に対する応答のデータとして、無線通信装置200からセッション開始応答を受け取る。なお、このセッション開始応答は、無線通信部132、受信バッファメモリ131、および仮想バッファ制御部122を介して、セッション制御部121へ通知される。
セッション制御部121は、セッション開始応答を受け取ると、受信バッファメモリ131のサイズ(容量)を、仮想バッファ制御部122へ問い合わせる。ここで、セッション制御部121が問い合わせるサイズは、受信バッファメモリ131のサイズの最大値である。なお、仮想バッファ制御部122は、セッション制御部121からの問い合わせに備えて、予め受信バッファメモリ131のサイズを取得しておく。
セッション制御部121は、問い合わせた結果に基づいて、無線通信装置200への通知用の受信バッファサイズを決定する。ここでいう通知用の受信バッファサイズは、受信バッファメモリ131の仮想的なサイズを示す値(以下「仮想受信バッファサイズ」という)である。この仮想受信バッファサイズの決定方法の例を以下に説明する。例えば、セッション制御部121は、問い合わせた受信バッファメモリ131のサイズ(実サイズ)より大きい値を、仮想受信バッファサイズに決定する。また、例えば、セッション制御部121は、問い合わせた受信バッファメモリ131のサイズより大きく、かつ、プロトコル適応層部120の通信プロトコルで規定された上限値よりも小さい値を、仮想受信バッファサイズに決定してもよい。つまり、セッション制御部121は、問い合わせた受信バッファメモリ131のサイズをそのまま通知用の受信バッファサイズとするのではなく、それよりも大きい値を仮想受信バッファサイズとして通知用の受信バッファサイズに決定する。
セッション制御部121は、決定した仮想受信バッファサイズを仮想バッファ制御部122に通知する。その一方で、セッション制御部121は、決定した仮想受信バッファサイズを含むセットアップデータ(図2の300)を生成し、送信制御部124に送る。セットアップデータのフォーマットについては、図2を用いて後述する。
セッション制御部121は、上位層110からの受信開始指示に基づいて、無線通信装置200から受信したデータの書き出し先を、仮想バッファ制御部122へ指示する。ここでは、例として、書き出し先は、データ蓄積部140とする。なお、セッション制御部121は、仮想バッファ制御部122へ、仮想受信バッファサイズの通知とともに、書き出し先の指示を行ってもよい。
このように、セッション制御部121は、受信バッファメモリ131の実際のサイズが小さい場合でも、そのサイズより大きい値を仮想受信バッファサイズとして無線通信装置200へ通知する。これにより、無線送信装置200は、PAL確認応答を得ることなしに、無線受信装置100に送ることが可能なデータの最大値を引き上げることが可能となる。その結果、本実施の形態の無線送信装置200は、到着保証型のデータの受信処理を高速化できる。
仮想バッファ制御部122は、セッション制御部121からの問い合わせに備えて、予め受信バッファメモリ131のサイズを取得しておく。この取得のタイミングは、例えば、プロトコル適応層部120を利用するアプリケーションの起動時または初期化時である。そして、仮想バッファ制御部122は、セッション制御部121から問い合わせを受けると、予め取得しておいた受信バッファメモリ131のサイズをセッション制御部121へ通知する。
仮想バッファ制御部122は、セッション制御部121から仮想受信バッファサイズの通知を受け、記憶する。
仮想バッファ制御部122は、セッション制御部121から、無線通信装置200から受信したデータの書き出し先の指示を受けると、その書き出し先に対して受信準備処理を行う。すなわち、仮想バッファ制御部122は、書き出し先であるデータ蓄積部140に対して、電源供給の開始、書き込み領域の初期化などを行う。
仮想バッファ制御部122は、受信バッファメモリ131に蓄積されたデータ(図3の400)からPALヘッダ(図3の410)を除去し、実際にユーザが利用するデータ(図3の430)のみをデータ蓄積部140に書き出す。そして、仮想バッファ制御部122は、書き出しが済んだデータ(図3の430)を含むデータ(図3の400)を、受信バッファメモリ131から解放(削除)する。このとき、仮想バッファ制御部122は、データを書き出す度に、書き出したデータのサイズを加算していき、その結果を加算値(合計値)として記憶する。また、仮想バッファ制御部122は、最後に書き出したデータの識別番号(図3の420)を記憶する。
仮想バッファ制御部122は、書き出したデータのサイズの加算値が、仮想受信バッファサイズと等しくなった場合、PAL確認応答の生成指示をPAL確認応答生成部123へ送る。このとき、仮想バッファ制御部122は、最後に書き出したデータの識別番号をPAL確認応答生成部123へ通知する。なお、仮想バッファ制御部122は、最後に書き出したデータの識別番号の通知だけを以て、PAL確認応答の生成指示に代えてもよい。
このように、仮想バッファ制御部122は、仮想受信バッファサイズと、データ蓄積部140に書き出したデータのサイズの加算値とに基づいて、PAL確認応答500の生成タイミングを制御する。これにより、無線通信装置100は、PAL確認応答を、受信バッファメモリ131の実際のサイズよりも大きい仮想受信バッファサイズに対して、1つだけ生成すればよくなる。そのため、無線通信装置100からのPAL確認応答の送信数を減少させることができる。また、無線通信装置200のPAL確認応答の待機時間の頻度を削減することが可能になる。その結果、本実施の形態の無線送信装置200は、到着保証型のデータの通信処理を高速化できる。
PAL確認応答生成部123は、仮想バッファ制御部122からPAL確認応答の生成指示を受けると、通知された識別番号に基づいて、PAL確認応答(図4の500)を生成する。そして、PAL確認応答生成部123は、生成したPAL確認応答を送信制御部124へ送る。PAL確認応答のフォーマットについては、図4を用いて後述する。
送信制御部124は、セッション制御部121またはPAL確認応答生成部123から受け取ったデータを無線通信部132へ転送する。セッション制御部121からのデータは、セッション開始要求、および、セットアップデータがある。また、PAL確認応答生成部123からのデータは、PAL確認応答がある。
送信制御部124は、送信制御部124から受け取ったデータをセッション制御部121へ転送する。送信制御部124からのデータは、セッション開始応答、および、無線通信装置200の受信バッファサイズがある。
MAC層部130は、OSI参照モデルのプロトコル階層構造において、プロトコル適応層部120よりも下位に位置する階層である。ここで、MAC層部130が有する、受信バッファメモリ131、無線通信部132、MAC確認応答生成部133について、それぞれ説明する。
受信バッファメモリ131は、無線通信装置100が無線通信装置200から受信したデータを一時的に蓄積する物理的なメモリである。受信バッファメモリ131は、MAC層部130とプロトコル適応層部120が共通で利用する。受信バッファメモリ131は、MAC層部130においてデータの受信処理が終了すると、プロトコル適応層部120にデータの受信処理が遷移する。そして、仮想バッファ制御部122は、受信バッファメモリ131に一時的に蓄積したデータ(図3の400)のうち、PALヘッダ(図3の410)が除去する。そして、仮想バッファ制御部122は、ユーザが実際に利用するデータ(図3の430)だけをデータ蓄積部140に書き出す制御を行う。そして、仮想バッファ制御部122は、書き出されたデータ(図3の430)を含むデータ(図3の400)を、受信バッファメモリ131から解放(削除)する。
このように、受信バッファメモリ131は、MAC層部130とプロトコル適応層部120により共通して利用される。ここで、受信バッファメモリ131がMAC層部130とプロトコル適応層部120の共用であるメリットについて、説明する。
まず、受信バッファメモリが、MAC層部とプロトコル適応層部の共用ではない場合のデメリットについて説明する。例えば、受信装置が、MAC層部とプロトコル適応層部とで別々の受信バッファメモリを利用する場合で、仮想受信バッファサイズを送信装置へ通知した場合について説明する。この場合、受信装置は、MAC層部へのデータの入力速度と、プロトコル適応層部からのデータの出力速度により、受信するデータのオーバーフローが発生するおそれがある。この場合、MAC層部とプロトコル適応層部とは、別々の通信プロトコルが用いられている。その結果、受信装置は、MAC層部がMAC確認応答を送信装置へ送信するタイミングと、プロトコル適応層部がPAL確認応答を送信装置へ送信するタイミングとが異なるからである。
これに対し、受信バッファメモリ131がMAC層部130とプロトコル適応層部120の共用である場合で、無線通信装置100が仮想受信バッファサイズを無線通信装置200へ通知した場合、以下の動作となる。すなわち、無線通信装置100は、受信バッファメモリ131からデータ蓄積部140へのデータの出力速度に応じて、受信バッファメモリ131へのデータの入力速度が制限される。すなわち、MAC層部130のMAC確認応答によるフロー制御により、無線通信装置200からのデータの受信は、プロトコル適応層部120の下位であるMAC層部130にて制限される。よって、無線通信装置200から連続して送信されてくるデータは、MAC層部130が受信できる量以上に受信されない。このため、無線通信装置200から受信するデータのオーバーフローは、発生しない。
無線通信部132は、送信制御部124から受け取ったデータにMACヘッダを付与して、無線区間を介して無線通信装置200へ送信する。このデータは、上述した通り、セッション開始要求、セットアップデータ、およびPAL確認応答である。また、無線通信部132は、MAC確認応答生成部133から受け取ったデータを、無線区間を介して無線通信装置200へ送信する。このデータは、後述するMAC確認応答である。また、無線通信部132は、無線通信装置200から無線区間を介して受信したデータを、受信バッファメモリ131へ転送する。このデータは、セッション開始応答、および、後述する受信データ(図3の400)である。
無線通信部132は、例えば、無線LAN(Local Area Network)デバイス、WiGig(Wireless Gigabit)デバイスなどの無線通信インタフェースである。なお、WiGigとは、1Gbpsを超える有線PAN用途の置換えを想定した、60GHz帯域のミリ波を利用する無線通信規格である。なお、無線通信部132が適用する無線通信規格は、無線LANおよびWiGigに限定されるものではない。無線通信部132が適用する無線通信規格は、無線通信装置100と無線通信装置200とが、直接無線通信できる規格または他の装置を介して無線通信できる規格のいずれかであればよい。
MAC確認応答生成部133は、受信バッファメモリ131のデータ(図3の430)が解放されたことを検出すると、その解放されたデータの識別番号(図3の420)に基づいて、MAC確認応答を生成する。そして、MAC確認応答生成部133は、生成したMAC確認応答を無線通信部132へ送る。すなわち、MAC確認応答は、プロトコル適応層部120におけるデータの受信処理の終了により、そのデータが受信バッファメモリ131から解放されたタイミングで、無線通信装置200へ送信される。このように、MAC層部130は、MAC確認応答を無線通信装置200に送信することにより、MAC層130でのデータの受信処理を継続する。なお、MAC確認応答のフォーマットについては、図5を用いて後述する。
なお、MAC層部130とプロトコル適応層部120とは、別々の通信プロトコルが用いられる。通信プロトコルの違いは、MAC層部130がMAC確認応答を無線通信装置200へ送信するタイミングと、プロトコル適応層部120がPAL確認応答を無線通信装置200へ送信するタイミングと、を異ならせる。MAC層部130の送信タイミングは、無線通信装置200からデータを受信した際に、MAC確認応答を無線通信装置200へ送信するタイミングである。一方、プロトコル適応層部120の送信タイミングは、MAC層部130からのデータを受信した際に、PAL確認応答を無線通信装置200へ送信するタイミングである。
データ蓄積部140は、受信バッファメモリ131からのデータ(図3の430)の書き出し先であり、不揮発性の記録媒体である。不揮発性の記録媒体は、例えば、SD、SDHC(SD High Capacity)、または、SDXC(SD eXtended Capacity)メモリカードである。なお、データ蓄積部140に蓄積されたデータは、上位層110がプロトコル適応層部120(仮想バッファ制御部122およびセッション制御部121)を介して、読み出すことも可能である。データ蓄積部140に蓄積されるデータは、例えば、無線通信装置200から受信した、動画または静止画などのコンテンツデータである。
このような無線通信装置100は、受信バッファメモリ131のサイズが少ない場合でも、無線通信装置200に対し、受信バッファサイズを仮想的に大きく通知できる。これにより、無線通信装置100は、PAL確認応答を無線通信装置200へ送信する回数を削減できる。よって、無線通信装置200は、無線通信装置100からのPAL確認応答の受信を待機する時間が減少する。その結果、無線通信装置100は、無線通信を介して接続された無線通信装置200との間で、到着保証型のデータの受信を高速化することができる。
以上で、無線通信装置100の構成についての説明を終える。
<無線通信装置200の構成>
次に、無線通信装置200の構成について説明する。
図1において、本実施の形態に係る無線通信装置200は、無線通信を介して、無線通信装置100へ、ユーザにより要求されたデータを送信する装置である。
無線通信装置200は、上位層部210、プロトコル適応層部220、およびMAC層部230を有する。
上位層部210は、OSI参照モデルのプロトコル階層構造において、プロトコル適応層部120よりも上位に位置する階層である。上位層部210の例としては、無線通信装置100へ送信するデータを生成し、無線通信装置100へ送信するアプリケーションが挙げられる。
上位層部210は、例えば、ユーザの操作を契機として、無線を用いて無線通信装置100へデータの送信を開始するように、プロトコル適応層部220へ指示する。その際、上位層部210は、送信対象となるデータを、生成する、または、所定の記憶媒体などから読み出す。そして、上位層部210は、送信対象となるデータを、プロトコル適応層部220の送信バッファ(図示せず)へ出力する。送信対象となるデータは、例えば、動画または静止画などのコンテンツデータが挙げられる。
プロトコル適応層部220は、OSI参照モデルのプロトコル階層構造において、上位層である上位層部210と、下位層であるMAC層部230との間に位置する階層である。すなわち、プロトコル適応層部220は、上位層と下位層の整合を取ることを基本機能とするPALである。プロトコル適応層部220は、図示しない送信バッファを有する。
プロトコル適応層部220は、上位層部210から、無線通信装置100へのデータの送信指示を受け付けた場合、その指示とともに上位層部210から送信バッファに出力されたデータに対し、データ送信準備処理を施す。データ送信準備処理は、送信バッファに蓄積されたデータを分割し、分割した各データ(図3の430)に対し、PALヘッダ(図3の410)および連続する識別番号(図3の420)を付与する処理である。この処理の結果、送信データが生成される。そして、プロトコル適応層部220は、生成した送信データをMAC層部230へ送る。なお、ここでいう送信データは、図3の受信データ400に相当する。
MAC層部230は、OSI参照モデルのプロトコル階層構造において、プロトコル適応層部220よりも下位に位置する階層である。なお、MAC層部230は、無線通信装置100と無線通信を行うにあたり、無線通信装置100の無線通信部132と同じ無線通信規格を用いる。
MAC層部230は、プロトコル適応層部220から受け取った送信データを、無線区間を介して、無線通信装置100へ送信する。具体的には、MAC層部230は、プロトコル適応層部220から受け取った送信データに対して、MACヘッダを付与して無線フレームを生成し、無線通信装置100へ送信する。その後、MAC層部230は、無線通信装置100からのMAC確認応答の受信を待機する。そして、MAC層部230は、MAC確認応答を受信すると、未送信の送信データの送信を行う。このようにして、MAC層部230は、プロトコル適応層部220から受け取った送信データが全て無線通信装置100に送信されるまで、MAC確認応答の受信と未送信の送信データの送信とを繰り返す。
MAC層部230は、無線通信装置100から無線区間を介してPAL確認応答を受信した場合、プロトコル適応層部220へ転送する。
このような無線通信装置200は、送信データの送信を、無線通信装置100からのMAC確認応答に基づいて制御することにより、無線通信装置100との間で、到着保証型のデータ送信を実現することができる。
なお、図1に示す無線通信装置200において、プロトコル適応層部220およびMAC層部230はそれぞれ、無線通信装置100のプロトコル適応層部120およびMAC層部130の構成を適宜備えるようにしてもよい。
以上で、無線通信装置200の構成についての説明を終える。
無線通信装置100および無線通信装置200はそれぞれ、例えば、CPU(Central Processing Unit)、制御プログラムを格納したROM(Read Only Memory)などの記録媒体、およびRAM(Random Access Memory)などの作業用メモリを有する。この場合、上記した各構成部の機能は、CPUが制御プログラムを実行することにより実現される。
なお、無線通信装置100および無線通信装置200の各機能部は、例えば、集積回路により構成してもよい。無線通信装置100および無線通信装置200の各機能部は、個別に1チップ化してもよいし、複数で1チップ化してもよい。集積回路は、集積度の違いにより、LSI(Large Scale Integration)、IC(Integrated Circuit)、システムLSI、スーパーLSI、またはウルトラLSI等とすることができる。また、集積回路は、専用回路または汎用プロセッサにより実現するものであってもよい。また、集積回路は、その製造後にプログラムすることが可能なFPGA(Field Programmable Gate Array)、または、内部の回路セルの接続や設定を再構成可能なコンフィギュラブル・プロセッサとしてもよい。さらには、無線通信装置100および無線通信装置200の各機能部は、半導体技術の進歩または派生する別技術に応じて、LSIに置き換わる他の集積回路化の技術(例えばバイオ技術)により集積化されたものにより実現されてもよい。
また、図示はしていないが、本実施の形態に係る無線通信装置100および無線通信装置200は、ユーザが動作を選択して実行するための、ユーザインタフェースをそれぞれ有してもよい。例えば、本実施の形態に係る無線通信装置100および無線通信装置200は、ユーザインタフェースとして、入力キー、ディスプレイ、マイクロフォン、スピーカ、カメラ、バイブレータ、およびプログラム格納や実行のためのメモリなどの機能をそれぞれ有してもよい。
以上で、本実施の形態に係る無線通信装置の構成および内容についての説明を終える。
次に、セットアップデータ300、受信データ400、PAL確認応答500、MAC確認応答600の各フォーマットについて、それぞれ説明する。
<セットアップデータのフォーマット>
まず、セットアップデータ300のフォーマットについて、図2を用いて説明する。
セットアップデータ300は、PALヘッダ310、および仮想受信バッファサイズ320で構成される。PALヘッダ310は、各PALでの個別の情報が定義されており、例えば、アプリケーションのサービスを実現するセッション情報などである。仮想受信バッファサイズ320は、セッション制御部121により決定された仮想受信バッファサイズを示す値である。
上述した通り、セットアップデータ300は、セッション制御部121により生成され、無線通信装置100から無線通信装置200へ送信される。
<受信データのフォーマット>
次に、受信データ400のフォーマットについて、図3を用いて説明する。
受信データ400は、PALヘッダ410、識別番号420、およびデータ430で構成される。PALヘッダ410は、各PALでの個別の情報が定義されており、例えば、アプリケーションのサービスを実現するセッション情報などである。識別番号420は、データ400およびデータ430を識別可能な固有の番号であり、例えばシーケンス番号などである。データ430は、例えばコンテンツデータなど、実際にユーザが利用するデータであり、無線通信装置200により分割されて送信される1つ分のデータである。
上述した通り、受信データ400は、無線通信装置200から送信データとして送信され、無線通信装置100にて受信される。
<PAL確認応答のフォーマット>
次に、PAL確認応答500のフォーマットについて、図4を用いて説明する。
PAL確認応答500は、PALヘッダ510、および識別番号520で構成される。PALヘッダ510は、各PALでの個別の情報が定義されており、例えば、アプリケーションのサービスを実現するセッション情報などである。識別番号520は、無線通信装置100にて正常に処理が終了した受信データ400を示す識別番号である。すなわち、識別番号520は、識別番号420と同じである。また、換言すれば、識別番号520は、無線通信装置200において、プロトコル適応層部220の送信バッファからMAC層部230に出力されたデータを識別可能な固有の番号であり、例えば、シーケンス番号などである。なお、識別番号520は、複数含まれてもよい。
上述した通り、PAL確認応答500は、PAL確認応答生成部123により生成され、無線通信装置100から無線通信装置200へ送信される。
<MAC確認応答のフォーマット>
次に、MAC確認応答600のフォーマットについて、図5を用いて説明する。
MAC確認応答600は、送信先アドレス610、送信元アドレス620、および識別番号630で構成される。送信先アドレス610は、受信データ400を送信した側(MAC確認応答600を受信する側)のアドレス、すなわち無線通信装置200のアドレスである。送信元アドレス620は、受信データ400を受信した側のアドレス(MAC確認応答600を送信する側)のアドレス、すなわち無線通信装置100のアドレスである。ここでいうアドレスは、例えば、MACアドレスが挙げられる。識別番号630は、無線通信装置100にて正常に受信された受信データ400を示す番号である。すなわち、識別番号630は、識別番号420と同じである。
上述した通り、MAC確認応答600は、MAC確認応答生成部133により生成され、無線通信装置100から無線通信装置200へ送信される。
以上で、セットアップデータ300、受信データ400、PAL確認応答500、MAC確認応答600の各フォーマットについての説明を終える。
<無線通信装置100の動作>
次に、無線通信装置100の動作例について説明する。
図6は、無線通信装置100の動作の一例を示すフローチャートである。
ステップS001において、セッション制御部121は、上位層部110からの受信開始指示を受け付けると、セッション開始要求の送信およびセッション開始応答の受信を行った後で、仮想受信バッファサイズを決定する。上述した通り、セッション制御部121は、少なくとも、仮想バッファ制御部122へ問い合わせた受信バッファメモリ131の実サイズより大きい値を、仮想受信バッファサイズに決定する。
そして、セッション制御部121は、仮想バッファ制御部122に対し、決定した仮想受信バッファサイズ、および、無線通信装置200から受信する受信データ400をデータ蓄積部140へ書き出す旨の指示を通知する。この通知を受けた仮想バッファ制御部122は、仮想受信バッファサイズを記憶するとともに、データ蓄積部140に対して受信準備処理(電源供給の開始、書き込み領域の初期化など)を施す。
ステップS002において、セッション制御部121は、決定した仮想受信バッファサイズ320にPALヘッダ310を付与することでセットアップデータ300を生成する。そして、セッション制御部121は、セットアップデータ300を、送信制御部124及び無線通信部132を介して、無線通信装置200へ送信する。その後、無線通信装置100は、無線通信装置200から、無線通信装置200の受信バッファサイズを含むセットアップデータを受信する。このようにして、無線通信装置100と無線通信装置200との間にセッションが確立し、データの送受信の準備が整う。
ステップS003において、無線通信部132は、無線通信装置200から受信データ400を受信する。そして、無線通信部132は、受信データ400を受信バッファメモリ131へ転送する。
ステップS004において、無線通信部132は、受信バッファメモリ131に蓄積された受信データ400に対して、MAC処理を行う。MAC処理は、無線通信に必要なMACヘッダに基づいた無線通信の受信処理である。具体的には、MAC処理は、送信元MACアドレス(無線通信装置200のMACアドレス)、送信先MACアドレス(無線通信装置100のMACアドレス)の確認、データの整合性、暗号化されたデータの復号などである。無線通信部132は、MAC処理の終了後、仮想バッファ制御部122へ、MAC処理の終了を通知する。
ステップS005において、仮想バッファ制御部122は、MAC処理の終了の通知を受けると、受信バッファメモリ131に蓄積された受信データ400に対して、PAL処理を行う。PAL処理は、PALヘッダ410に基づいたPALの受信処理である。具体的には、PAL処理は、受信したデータが制御(セッション)データまたは受信データ400のどちらであるのかの確認、および、受信したデータが受信データ400である場合の識別番号420の確認などである。仮想バッファ制御部122は、PAL処理の終了後、受信データ400からPALヘッダ410を除去し、データ430のみをデータ蓄積部140に書き出すように制御する。なお、受信バッファメモリ131に蓄積されたデータが受信データ400ではなく制御データである場合、仮想バッファ制御部122は、その制御データをデータ蓄積部140に書き出さずに、セッション制御部121へ送る。制御データは、例えば、上述したセッション開始応答のほか、転送の中止を示すデータ、セッションの終了を示すデータなどがある。
ステップS006において、仮想バッファ制御部122は、データ蓄積部140へのデータ430の書き出しが終了すると、受信バッファメモリ131から、書き出しが済んだデータ430を含む受信データ400を解放する。
ステップS007において、MAC確認応答生成部133は、受信バッファメモリ131に蓄積された受信データ400が解放されたことを検出する。そして、MAC確認応答生成部133は、解放された受信データ400の識別番号420に基づいて、MAC確認応答600を生成する。図5において、識別番号630は識別番号420に相当する。そして、MAC確認応答生成部133は、生成したMAC確認応答600を、無線通信部132を介して無線通信装置200へ送信する。
そして、無線通信装置200のMAC層部230は、受信したMAC確認応答600に基づいて、後続の受信データ400の送信を行う。
ステップS008において、仮想バッファ制御部122は、データ蓄積部140へデータ430を書き出す度に、書き出しが済んだデータ430のサイズを加算していき、その結果を加算値として記憶する。また、仮想バッファ制御部122は、最後に書き出したデータ430の識別番号420を記憶する。
ステップS009において、仮想バッファ制御部122は、記憶した加算値が、セッション制御部121から通知された仮想受信バッファサイズに到達したか否かを判断する。
ステップS009の判断の結果、加算値が仮想受信バッファサイズに到達していない場合(S009:NO)、フローは、ステップS003へ戻る。なお、仮想バッファ制御部122は、次に受信する受信データ400の処理の受け付け(MAC層部130からのMAC処理の終了の通知)を待機する。
ステップS009の判断の結果、加算値が仮想受信バッファサイズに到達した場合(S009:YES)、フローは、ステップS010へ進む。このとき、仮想バッファ制御部122は、PAL確認応答生成部123に対して、PAL確認応答500の生成指示とともに、最後に書き出したデータ430の識別番号420を通知する。
ステップS010において、PAL確認応答生成部123は、仮想バッファ制御部122から通知された識別番号420に基づいて、PAL確認応答500を生成する。図4において、識別番号520は、識別番号420に相当する。そして、PAL確認応答生成部123は、生成したPAL確認応答500を、送信制御部124および無線通信部132を介して無線通信装置200へ送信する。
このように、無線通信装置100は、仮想的に受信バッファサイズ320を大きくして無線通信装置200へ通知することで、無線通信装置200がPAL確認応答500を待たずに無線通信装置100へ送信できるデータ量を多くできる。よって、無線通信装置100は、PAL確認応答500を無線通信装置100へ通知する回数を削減することができる。これに伴い、無線通信装置200は、PAL確認応答500の受信を待機する時間が減少する。その結果、無線通信装置100は、無線通信装置200との間で、到着保証型のデータ通信を高速化することができる。
なお、以下の理由により、受信バッファサイズ320を仮想的に大きくしても問題はない。無線通信装置100は、受信バッファメモリ131をMAC層部130とプロトコル適応層部120とが共用する。すなわち、MAC層部130のMAC確認応答によるフロー制御により、受信データ400の受信は、MAC層部130にて制限される。その結果、無線通信装置100は、受信バッファメモリ131のサイズ以上の受信データ400の連続的な受信(オーバーフロー)を回避できる。よって、無線通信装置100は、受信バッファサイズ320を仮想的に大きくした値である仮想受信バッファサイズを無線通信装置200へ通知しても、問題はない。
以上で、無線通信装置100の動作例についての説明を終える。
<通信システムの動作>
以下、無線通信装置100および無線通信装置200の全体、すなわち、本実施の形態の通信システムの動作の例を、図7を用いて説明する。
図7は、無線通信装置100が、無線通信装置200に対し、無線通信を介して到着保証型のデータ受信を行うときの動作の一例を示すシーケンス図である。
ステップS101において、セッション制御部121は、上位層部110からの受信開始指示を受け付けると、セッション開始要求の送信およびセッション開始応答の受信を行った後で(図示せず)、仮想受信バッファサイズを決定する。上述した通り、セッション制御部121は、少なくとも受信バッファメモリ131の実サイズより大きい値を、仮想受信バッファサイズに決定する。
ステップS102において、セッション制御部121は、決定した仮想受信バッファサイズを仮想バッファ制御部122へ通知する。この通知を受けた仮想バッファ制御部122は、仮想受信バッファサイズを記憶する。また、このステップS102において、セッション制御部121は、仮想バッファ制御部122に対し、受信バッファメモリ131に蓄積された受信データ400をデータ蓄積部140へ書き出す旨の指示を通知してもよい。この通知を受けた仮想バッファ制御部122は、データ蓄積部140に対して受信準備処理(電源供給の開始、書き込み領域の初期化など)を施す。
ステップS103において、セッション制御部121は、決定した仮想受信バッファサイズ320に対してPALヘッダ310を付与し、セットアップデータ300を生成する。そして、セッション制御部121は、送信制御部124および無線通信部132を介して、無線通信装置200へセットアップデータ300を送信する。このとき、無線通信装置100は、無線通信装置200から、無線通信装置200の受信バッファサイズを含むセットアップデータ300を受信する。
ステップS104において、無線通信装置200の上位層部210は、受信データ400を生成し、プロトコル適応層部220およびMAC層部230を介して、無線通信装置100へ送信する。
ステップS105において、無線通信部132は、受信データ400を受信すると、受信データ400を受信バッファメモリ131に転送する。
ステップS106において、無線通信部132は、受信データ400のMACヘッダに基づいて、MAC処理を行う。
ステップS107において、無線通信部132は、MAC処理を終了すると、仮想バッファ制御部122にMAC処理の終了を通知する。そして、MAC確認応答生成部133は、後述するPAL処理が終了して受信データ400が受信バッファメモリ131から解放されるまで待機する。
ステップS108において、仮想バッファ制御部122は、受信バッファメモリ131に蓄積された受信データ400に対し、PALヘッダ410に基づいてPAL処理を行う。
ステップS109において、仮想バッファ制御部122は、PAL処理が終了すると、受信データ400からPALヘッダ410を除去し、データ430のみをデータ蓄積部140に書き出す制御を行う。
ステップS110において、仮想バッファ制御部122は、データ430のデータ蓄積部140への書き出しが終了すると、受信バッファメモリ131から、書き出したデータ430を含む受信データ400を解放する。
ステップS111において、MAC確認応答生成部133は、受信バッファメモリ131から受信データ400が解放されたことを検出する。
ステップS112において、MAC確認応答生成部133は、解放された受信データ400の識別番号420に基づいて、MAC確認応答600を生成する。
ステップS113において、MAC確認応答生成部133は、生成したMAC確認応答600を、無線通信部132を介して無線通信装置200へ送信する。無線通信装置200のMAC層部230は、受信したMAC確認応答600に基づいて、後続の受信データ400の送信を再開する(S104)。
なお、ステップS104〜S113は、無線通信装置200が、PAL確認応答を待たずに送信できるデータ430を全て無線通信装置100へ送信するまで、繰り返される。つまり、データ430の送信は、無線通信装置100のMAC層部130と無線通信装置200のMAC層部230の間で繰り返される。
ステップS114において、仮想バッファ制御部122は、データ蓄積部140へ書き出したデータ430のサイズをこれまでに書き出したデータ430のサイズに加算し、その結果を加算値として記憶する。また、仮想バッファ制御部122は、最後に書き出したデータ430の識別番号420も記憶する。
ステップS115において、仮想バッファ制御部122は、記憶した加算値が、セッション制御部121から通知された仮想受信バッファサイズに到達したか否かを判断する。
ステップS115の判断の結果、加算値が仮想受信バッファサイズに到達していない場合(S115:NO)、仮想バッファ制御部122は、次の受信データ400の処理の受付け(S107のMAC処理終了通知)を待機する。
ステップS115の判断の結果、加算値が仮想受信バッファサイズに到達した場合(S115:YES)、フローは、ステップS116へ進む。
ステップS116において、仮想バッファ制御部122は、PAL確認応答生成部123へ、PAL確認応答500の生成指示を送信する。このとき、仮想バッファ制御部122は、最後に書き出したデータ430の識別番号420もPAL確認応答生成部123へ通知する。
ステップS117において、PAL確認応答生成部123は、仮想バッファ制御部122からPAL確認応答500の生成指示を受け取る。そして、PAL確認応答生成部123は、仮想バッファ制御部122から通知された識別番号420に基づいて、PAL確認応答500を生成する。
ステップS118において、PAL確認応答生成部123は、生成したPAL確認応答500を、送信制御部124および無線通信部132を介して、無線通信装置200に送信する。
このように、無線通信装置100は、仮想的に受信バッファサイズ320を大きくして無線通信装置200へ通知することで、無線通信装置200がPAL確認応答を待たずに無線通信装置100へ送信できるデータ量を多くできる。よって、無線通信装置100は、PAL確認応答500を無線通信装置100へ通知する回数を削減することができる。これに伴い、無線通信装置200は、PAL確認応答500の受信を待機する時間が減少する。その結果、無線通信装置100は、無線通信装置200との間で、到着保証型のデータ通信を高速化することができる。
なお、以下の理由により、受信バッファサイズ320を仮想的に大きくしても問題はない。無線通信装置100は、受信バッファメモリ131をMAC層部130とプロトコル適応層部120とが共用する。すなわち、MAC層部130のMAC確認応答によるフロー制御により、受信データ400の受信は、MAC層部130にて制限される。その結果、無線通信装置100は、受信バッファメモリ131のサイズ以上のデータ400の連続的な受信(オーバーフロー)を回避できる。よって、無線通信装置100は、受信バッファサイズ320を仮想的に大きくした値である仮想受信バッファサイズを無線通信装置200へ通知しても、問題はない。
<実施の形態の変形例>
以上、本実施の形態について説明したが、上記説明は一例であり、種々の変形が可能である。以下、変形例について説明する。
上記実施の形態では、セッション制御部121が決定する仮想受信バッファサイズ320は、受信バッファメモリ131の実サイズより大きい値としたが、これに限定されない。例えば、受信バッファメモリ131からデータ蓄積部140への書き出しの速度(以下「書き出し速度」という)が非常に低速な場合、セッション制御部121は、以下のように動作する。すなわち、セッション制御部121は、セットアップデータ300で通知する仮想受信バッファサイズ320を、仮想の値ではなく、受信バッファメモリ131の実サイズを上限とする値に決定してもよい。データ蓄積部140への書き出しに時間を要する場合、仮想受信バッファサイズを設定すると、PAL確認応答生成部123は、長期間、PAL確認応答500を生成することができなくなる。これは、無線通信装置200による受信データ400の再送を引き起こすおそれがある。よって、セッション制御部121は、データ蓄積部140の種別に応じて、セットアップデータ300で通知する仮想受信バッファサイズ320を適宜変更してもよい。なお、データ蓄積部140の種別としては、例えば、SD、SDHC、SDXCなどがある。この場合、書き出し速度は、SDXCが最も速く、SDが最も遅い。なお、プロトコル適応層部120の通信プロトコルで規定されている受信バッファサイズが、受信バッファメモリ131の実サイズよりも小さい場合がある。このような場合、セッション制御部121は、PAL規定の受信バッファサイズを仮想受信バッファサイズ320に決定してもよい。なお、「PAL規定の受信バッファサイズ」は、プロトコル適応層部120の通信プロトコルで規定された受信バッファサイズをいう。
また、上記実施の形態では、仮想バッファ制御部122がPAL確認応答500の生成を指示する際に、PAL確認応答生成部123へ識別番号420を通知する例としたが、これに限定されない。例えば、仮想バッファ制御部122は、識別番号420の代わりに、無線通信装置200から正常に受信した受信データ400のトータルのサイズを示す情報を、PAL確認応答生成部123へ通知してもよい。または、例えば、仮想バッファ制御部122は、無線通信装置200がまだ送信していない受信データ400のサイズを示す情報を通知してもよい。この情報は、無線通信装置100が最終的に受信した受信データ400のトータルのサイズに基づいて、仮想バッファ制御部122により算出される。
また、上記実施の形態では、仮想バッファ制御部122は、書き出しが済んだデータ430のサイズの加算値が、仮想受信バッファサイズに到達したかを判断する例としたが、これに限定されない。例えば、仮想バッファ制御部122は、加算値が、仮想受信バッファサイズ近傍の閾値に到達したかを判断してもよい。この場合、無線通信装置200が仮想受信バッファサイズ分のデータを送信してこない場合でも、無線通信装置200は、PAL確認応答を生成し、無線通信装置100へ送信することができる。なお、上記閾値が設定されておらず、かつ、無線通信装置200が仮想受信バッファサイズ分のデータを送信してこない場合、プロトコル適応層部120は待機状態に入る。このとき、仮想バッファ制御部122は、受信データ400の受信の連続性が途切れたこと(データを一定期間受信しなくなったこと)を検出する。そして、仮想バッファ制御部122は、その検出のタイミングで、PAL確認応答生成部123へPAL確認応答の生成を指示してもよい。すなわち、無線通信装置100は、受信データ400の受信の連続性が途切れる等してプロトコル適応層部120が待機状態に入った場合、無線通信装置200に対してPAL確認応答500を送信するようにしてもよい。これにより、CPUなどの資源の活用において、効率的な処理ができる。
また、上記実施の形態では、本発明をハードウェアで構成する場合を例にとって説明したが、本発明はハードウェアとの連係においてソフトウェアでも実現することも可能である。
以上、本開示の無線通信装置は、他の無線通信装置と、到着保証型のデータ通信を用いた無線通信を行う無線通信装置であって、前記他の無線通信装置から受信したデータを、受信バッファメモリに一時的に記憶するMAC(Media Access Control)層部と、前記他の無線通信装置からデータの受信を開始する前に、前記MAC層との間で共有する前記受信バッファメモリの実サイズより大きい値を、仮想受信バッファサイズとして前記他の無線通信装置へ通知し、前記受信バッファメモリに記憶されたデータを記録媒体へ書き出し、前記記録媒体へ書き出したデータのサイズの合計が前記仮想受信バッファサイズに到達した場合、確認応答を生成し、前記他の無線通信装置へ送信するプロトコル適応層部と、を具備する。
また、本開示の無線通信装置は、前記プロトコル適応層部が、前記記録媒体へ書き出したデータのサイズの合計が、前記仮想受信バッファサイズに到達した場合の代わりに、前記仮想受信バッファサイズ近傍の閾値に到達した場合、前記PAL確認応答を生成し、前記他の無線通信装置へ送信する。
また、本開示の無線通信装置は、前記プロトコル適応層部が、前記仮想受信バッファサイズとして、前記受信バッファメモリの実サイズより大きく、かつ、前記プロトコル適応層部の通信プロトコルで規定されている上限値よりも小さい値を、前記他の無線通信装置へ通知する。
また、本開示の無線通信装置は、前記プロトコル適応層部が、前記受信バッファメモリから前記記録媒体へ書き出したデータを、前記受信バッファメモリから解放し、前記MAC層部が、前記解放を検出した場合、前記MAC確認応答を生成し、前記他の無線通信装置へ送信する。
また、本開示の無線通信装置は、前記プロトコル適応層部が、前記他の無線通信装置から一定期間データを受信しないことを検出した場合、前記受信バッファメモリから前記記録媒体へ最後に書き出したデータの識別情報に基づいて前記PAL確認応答を生成し、当該PAL確認応答を前記他の無線通信装置へ通知する。
また、本開示の無線通信装置は、前記プロトコル適応層部が、前記受信バッファメモリから前記記録媒体へデータを書き出す速度が低速である場合、前記仮想受信バッファサイズの代わりに、前記受信バッファメモリの実サイズを上限とした値を前記他の無線通信装置へ通知する。
また、本開示の無線通信方法は、他の無線通信装置と、到着保証型のデータ通信を用いた無線通信を行う無線通信方法であって、プロトコル適応層部において、前記他の無線通信装置からデータの受信を開始する前に、MAC(Media Access Control)層部との間で共有する受信バッファメモリの実サイズより大きい値を、仮想受信バッファサイズとして前記他の無線通信装置へ通知するステップと、前記MAC層部において、前記他の無線通信装置から受信したデータを、前記受信バッファメモリに一時的に記憶するステップと、前記プロトコル適応層部において、前記受信バッファメモリから前記データを記録媒体へ書き出すステップと、前記プロトコル適応層部において、前記記録媒体へ書き出したデータのサイズの合計が前記仮想受信バッファサイズに到達した場合、確認応答を生成し、前記他の無線通信装置へ送信するステップと、を有する。
また、本開示の無線通信制御プログラムは、他の無線通信装置と、到着保証型のデータ通信を用いた無線通信を行う装置のコンピュータに実行させる無線通信制御プログラムであって、プロトコル適応層部において、前記他の無線通信装置からデータの受信を開始する前に、MAC(Media Access Control)層部との間で共有する受信バッファメモリの実サイズより大きい値を、仮想受信バッファサイズとして前記他の無線通信装置へ通知する処理と、前記MAC層部において、前記他の無線通信装置から受信したデータを、前記受信バッファメモリに一時的に記憶する処理と、前記プロトコル適応層部において、前記受信バッファメモリから前記データを記録媒体へ書き出す処理と、前記プロトコル適応層部において、前記記録媒体へ書き出したデータのサイズの合計が前記仮想受信バッファサイズに到達した場合、確認応答を生成し、前記他の無線通信装置へ送信する処理と、を実行させる。
2012年10月9日出願の特願2012−224081の日本出願に含まれる明細書、図面および要約書の開示内容は、すべて本願に援用される。
本発明は、無線通信を介して接続された他の無線通信装置との間で、到着保証型のデータ受信を高速化することができる無線通信装置、無線通信方法、および無線通信制御プログラムとして有用である。本発明は、例えば、携帯電話機やタブレットなどの携帯機器、および、パーソナルコンピュータに適用することができる。
100 無線通信装置
110 上位層部
120 プロトコル適応層部(PAL)
121 セッション制御部
122 仮想バッファ制御部
123 PAL確認応答生成部
124 送信制御部
130 MAC層部
131 受信バッファメモリ
132 無線通信部
133 MAC確認応答生成部
140 データ蓄積部
200 無線通信装置
210 上位層部
220 プロトコル適応層部(PAL)
230 MAC層部

Claims (8)

  1. 他の無線通信装置と、到着保証型のデータ通信を用いた無線通信を行う無線通信装置であって、
    前記他の無線通信装置から受信したデータを、受信バッファメモリに一時的に記憶するMAC(Media Access Control)層部と、
    前記他の無線通信装置からデータの受信を開始する前に、前記MAC層との間で共有する前記受信バッファメモリの実サイズより大きい値を、仮想受信バッファサイズとして前記他の無線通信装置へ通知し、前記受信バッファメモリに記憶されたデータを記録媒体へ書き出し、前記記録媒体へ書き出したデータのサイズの合計が前記仮想受信バッファサイズに到達した場合、確認応答を生成し、前記他の無線通信装置へ送信するプロトコル適応層部と、
    を具備した無線通信装置。
  2. 前記プロトコル適応層部は、
    前記記録媒体へ書き出したデータのサイズの合計が、前記仮想受信バッファサイズに到達した場合の代わりに、前記仮想受信バッファサイズ近傍の閾値に到達した場合、PAL確認応答を生成し、前記他の無線通信装置へ送信する、
    請求項1記載の無線通信装置。
  3. 前記プロトコル適応層部は、
    前記仮想受信バッファサイズとして、前記受信バッファメモリの実サイズより大きく、かつ、前記プロトコル適応層部の通信プロトコルで規定されている上限値よりも小さい値を、前記他の無線通信装置へ通知する、
    請求項1記載の無線通信装置。
  4. 前記プロトコル適応層部は、
    前記受信バッファメモリから前記記録媒体へ書き出したデータを、前記受信バッファメモリから解放し、
    前記MAC層部は、
    前記解放を検出した場合、MAC確認応答を生成し、前記他の無線通信装置へ送信する、
    請求項1記載の無線通信装置。
  5. 前記プロトコル適応層部は、
    前記他の無線通信装置から一定期間データを受信しないことを検出した場合、前記受信バッファメモリから前記記録媒体へ最後に書き出したデータの識別情報に基づいて前記PAL確認応答を生成し、当該PAL確認応答を前記他の無線通信装置へ通知する、
    請求項1記載の無線通信装置。
  6. 前記プロトコル適応層部は、
    前記受信バッファメモリから前記記録媒体へデータを書き出す速度が低速である場合、前記仮想受信バッファサイズの代わりに、前記受信バッファメモリの実サイズを上限とした値を前記他の無線通信装置へ通知する、
    請求項1記載の無線通信装置。
  7. 他の無線通信装置と、到着保証型のデータ通信を用いた無線通信を行う無線通信方法であって、
    プロトコル適応層部において、前記他の無線通信装置からデータの受信を開始する前に、MAC(Media Access Control)層部との間で共有する受信バッファメモリの実サイズより大きい値を、仮想受信バッファサイズとして前記他の無線通信装置へ通知するステップと、
    前記MAC層部において、前記他の無線通信装置から受信したデータを、前記受信バッファメモリに一時的に記憶するステップと、
    前記プロトコル適応層部において、前記受信バッファメモリから前記データを記録媒体へ書き出すステップと、
    前記プロトコル適応層部において、前記記録媒体へ書き出したデータのサイズの合計が前記仮想受信バッファサイズに到達した場合、確認応答を生成し、前記他の無線通信装置へ送信するステップと、
    を有する無線通信方法。
  8. 他の無線通信装置と、到着保証型のデータ通信を用いた無線通信を行う装置のコンピュータに実行させる無線通信制御プログラムであって、
    プロトコル適応層部において、前記他の無線通信装置からデータの受信を開始する前に、MAC(Media Access Control)層部との間で共有する受信バッファメモリの実サイズより大きい値を、仮想受信バッファサイズとして前記他の無線通信装置へ通知する処理と、
    前記MAC層部において、前記他の無線通信装置から受信したデータを、前記受信バッファメモリに一時的に記憶する処理と、
    前記プロトコル適応層部において、前記受信バッファメモリから前記データを記録媒体へ書き出す処理と、
    前記プロトコル適応層部において、前記記録媒体へ書き出したデータのサイズの合計が前記仮想受信バッファサイズに到達した場合、確認応答を生成し、前記他の無線通信装置へ送信する処理と、
    を実行させる無線通信制御プログラム。
JP2014509544A 2012-10-09 2013-06-28 無線通信装置、無線通信方法、および無線通信制御プログラム Active JP6084204B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2012224081 2012-10-09
JP2012224081 2012-10-09
PCT/JP2013/004057 WO2014057596A1 (ja) 2012-10-09 2013-06-28 無線通信装置、無線通信方法、および無線通信制御プログラム

Publications (2)

Publication Number Publication Date
JPWO2014057596A1 true JPWO2014057596A1 (ja) 2016-08-25
JP6084204B2 JP6084204B2 (ja) 2017-02-22

Family

ID=50477080

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014509544A Active JP6084204B2 (ja) 2012-10-09 2013-06-28 無線通信装置、無線通信方法、および無線通信制御プログラム

Country Status (4)

Country Link
US (1) US20140347986A1 (ja)
JP (1) JP6084204B2 (ja)
CN (1) CN103975572B (ja)
WO (1) WO2014057596A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2709985B1 (en) 2011-05-16 2017-10-04 Bionomics Limited Amine derivatives as potassium channel blockers
CN105813054B (zh) * 2014-12-31 2020-09-15 中兴通讯股份有限公司 一种管理pal的方法和装置、实现寻呼的方法和装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09247209A (ja) * 1996-03-12 1997-09-19 Chokosoku Network Computer Gijutsu Kenkyusho:Kk 資源予約チャネル用トランスポートレイヤプロトコルのフロー制御方式
WO2008023656A1 (fr) * 2006-08-23 2008-02-28 Panasonic Corporation équipement de communication

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6700869B1 (en) * 1999-10-01 2004-03-02 Lucent Technologies Inc. Method for controlling data flow associated with a communications node
GB0304052D0 (en) * 2003-02-22 2003-03-26 Hewlett Packard Development Co Improved streaming in data storage drive
EP1624712A1 (en) * 2004-08-03 2006-02-08 Alcatel Method for improving mobility in discontinuous coverage networks, corresponding access controller, and corresponding radio access point
KR100599939B1 (ko) * 2004-11-03 2006-07-13 한국전자통신연구원 카드버스 pc 카드형 무선 송수신 장치
EP1791366A1 (en) * 2005-11-28 2007-05-30 Alcatel Lucent Avoiding interruptions in the reproduction of audio/video by storing enough data in advance at a mobile terminal
EP2266238B9 (en) * 2008-03-24 2016-06-15 Nokia Technologies OY Soft buffer memory configuration in a communication system
JP5068215B2 (ja) * 2008-04-23 2012-11-07 インターナショナル・ビジネス・マシーンズ・コーポレーション データを記録媒体に書き込む装置及び方法
CN102594406A (zh) * 2012-02-17 2012-07-18 钜泉光电科技(上海)股份有限公司 电力线载波通信系统及通信方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09247209A (ja) * 1996-03-12 1997-09-19 Chokosoku Network Computer Gijutsu Kenkyusho:Kk 資源予約チャネル用トランスポートレイヤプロトコルのフロー制御方式
WO2008023656A1 (fr) * 2006-08-23 2008-02-28 Panasonic Corporation équipement de communication

Also Published As

Publication number Publication date
US20140347986A1 (en) 2014-11-27
CN103975572B (zh) 2017-07-28
JP6084204B2 (ja) 2017-02-22
WO2014057596A1 (ja) 2014-04-17
CN103975572A (zh) 2014-08-06

Similar Documents

Publication Publication Date Title
EP3720019B1 (en) Internet of things data transmission method, device and system
US7930446B2 (en) Methods and apparatuses for wireless network communication wherein a universal serial bus request block (URB) is generated that will vary parameters that controls wireless transmission commands between devices
US10484472B2 (en) Methods and systems for efficiently moving data between nodes in a cluster
KR102482670B1 (ko) 무선 통신 시스템에서 데이터를 송수신하는 전자 장치 및 이를 위한 방법
JP2011029780A (ja) 無線通信装置、無線通信方法および無線通信プログラム
US20140222960A1 (en) Method and Apparatus for Rapid Data Distribution
JP2018514101A (ja) データ伝送方法、装置、およびシステム
WO2014146563A1 (zh) 一种基于近场通信的连接切换方法及相应装置
WO2017028399A1 (zh) 通信数据传输方法及系统
JP2016524880A (ja) Nfc無線周波数通信制御方法、装置、およびシステム
US10769096B2 (en) Apparatus and circuit for processing data
WO2023020240A1 (zh) 设备控制方法、装置、芯片、电子设备及存储介质
JP6084204B2 (ja) 無線通信装置、無線通信方法、および無線通信制御プログラム
WO2018040622A1 (zh) 信息处理方法和装置
CN116204487A (zh) 远程数据访问方法及装置
WO2016186764A1 (en) Quality of service for a universal serial bus
WO2015055008A1 (zh) 一种存储控制芯片及磁盘报文传输方法
CN109644078A (zh) 一种上行数据传输方法、终端、网络侧设备及系统
WO2019157631A1 (zh) 一种QoS流的重映射方法及装置、计算机存储介质
CN109257227B (zh) 数据传输中的偶联管理方法、装置及系统
TWI689820B (zh) Usb傳輸系統、usb裝置與支援usb傳輸的主機
JP2017157963A (ja) 通信装置、通信方法及びプログラム
JP2008061182A (ja) 無線通信装置、無線通信プログラム、無線通信システム、画像形成装置、画像形成装置の制御プログラム
KR20210073005A (ko) 효율적 메시지 처리를 제공하는 dds 미들웨어 장치의 동작 방법
WO2013114484A1 (ja) 無線通信装置、無線通信方法、および無線通信制御プログラム

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20161122

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20161207

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20170117

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170124

R151 Written notification of patent or utility model registration

Ref document number: 6084204

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151