(57)【要約】【課題】パケット交換方式によりデータ伝送を好適に行なう。【解決手段】パケットの種別やデータレート情報、さらに送信が許可される時間長といった概略情報のみが確定した段階で、プリアンブルの送信を開始し、プリアンブル送信中にヘッダ情報の内容を決定して、送信パケットの送信を行なう。ＲＴＳなどのデータ送信に先立って送信される信号を送信する際に、パケットの種別などの概略情報のみを確定しておき、ヘッダ部の送信タイミングが到来するまでの間に、送信を試みようとしているデータの個数や合計の時間長などの詳細と、ＲＴＳパケットのＰＳＤＵ部に格納する内容を決定すればよい。【選択図】  図１
2007243239.tif 000002
【特許請求の範囲】
【請求項１】
メディア上でパケット交換方式によりデータ伝送を行なう通信装置であって、
伝送されるデータの処理を行なう上位レイヤ処理部と、
メディアに対する物理アクセス動作を司るＰｈｙ処理部と、
送信パケットを生成するととともに、前記Ｐｈｙ処理部に対してパケットの送信を指示してメディアへのアクセス制御を行なうメディア・アクセス制御処理部を備え、
前記メディア・アクセス制御処理部は、前記上位レイヤ処理部が送信要求する送信データを一時的に格納するバッファ・メモリと、前記バッファ・メモリに格納されている各送信データについての属性情報を保持する送信バッファ・リストと、前記バッファ・リストを参照しながら送信パケットのヘッダ情報を生成するヘッダ情報生成手段を備え、前記バッファ・メモリに送信パケットが格納されたこと又は前記メディア・アクセス制御処理部からの送信指示に応じて前記Ｐｈｙ処理部にプリアンブル信号の送信を指示するとともに、前記ヘッダ情報生成手段によるヘッダ情報の生成処理を起動し、プリアンブル信号の送信終了前にＰｈｙ処理部に対して生成したヘッダ情報の送信を指示する、
ことを特徴とする通信装置。
【請求項２】
前記送信バッファ・リストは、送信データの属性情報として、宛先アドレス、送信データレート、パケット・フォーマットの種別のうち少なくとも１つを保持する、
ことを特徴とする請求項１に記載の通信装置。
【請求項３】
ＲＴＳ／ＣＴＳ手順によるＣＳＭＡ／ＣＡ方式が適用される通信システムに適用され、
前記メディア・アクセス制御処理部は、受信パケット並びに送信パケットの種別を解析するプロトコル処理部を備え、プロトコル処理部は、メディア・アクセス制御処理部が前記Ｐｈｙ処理部にプリアンブル信号の送信を指示するとともに、送信パケットの種別情報を決定する、
ことを特徴とする請求項２に記載の通信装置。
【請求項４】
ＣＳＭＡ／ＣＡ方式が適用される通信システムに適用され、
前記送信バッファ・リストは、送信データの属性情報としてデータ長を保持し、
前記メディア・アクセス制御処理部は、送信データレートとデータ長を基に送信データの伝送動作に要する時間長を計算する時間長計算手段をさらに備え、
前記ヘッダ情報生成手段は、前記時間長計算手段による計算結果に基づいて、ヘッダ情報の一部として、ＣＳＭＡ／ＣＡを用いたアクセスに用いられるメディア予約情報（Ｄｕｒａｔｉｏｎ）を記載する、
ことを特徴とする請求項２に記載の通信装置。
【請求項５】
１つのパケットに２以上の送信データの内容をマルチプレクスする際に、
前記時間長計算部は、送信データを追加する度に時間長を計算し、
前記ヘッダ情報生成手段は、パケットにマルチプレクスする各送信データのデータ長を累積加算するとともに、前記時間長計算手段による計算結果を基にヘッダ情報の内容を更新する、
ことを特徴とする請求項２に記載の通信装置。
【請求項６】
メディア上でパケット交換方式によりデータ伝送を行なう通信方法であって、
前記上位レイヤが送信要求する送信データをバッファ・メモリに一時的に格納するステップと、
前記バッファ・メモリに格納されている各送信データについての属性情報を送信バッファ・リストに保持するステップと、
前記バッファ・メモリに送信データが格納されたことに応じてパケットのプリアンブル部分の送信開始をＰｈｙ処理レイヤに指示するステップと、
前記バッファ・リストを参照しながら送信パケットのヘッダ情報を生成するステップと、
プリアンブル信号の送信終了前に、生成したヘッダ情報の送信をＰｈｙ処理レイヤに指示するステップと、
を具備することを特徴とする通信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パケット交換方式によりデータ伝送を行なう通信装置及び通信方法に係り、特に、データ送信時において送信内容が確定する前にパケット送信処理を起動する通信装置及び通信方法に関する。
【背景技術】
【０００２】
蓄積交換型（Ｓｔｏｒｅｄ  ａｎｄ  Ｆｏｒｗａｒｄ  Ｓｗｉｔｃｈｉｎｇ）の通信システムでは、データを送信する際にデータが蓄積交換機に一旦蓄えられ、蓄積交換機は最適なメディアを見つけてデータ送信を行なう。この場合、回線交換方式のように一定時間メディアを独占することがないので、複数の通信局間でメディアを効率的に使用することができる。また、この種の通信システムの多くは、パケット交換方式が採用されており、通信局間では伝送データをパケットと呼ばれる伝送単位にアセンブルして送受信が行なわれる。この伝送方式によれば、パケット単位でルーティングを行なうのでメディア使用効率がよい、通信速度の異なる端末間でデータ送受信が可能である、といったメリットがある。また、パケット単位で再送制御や誤り制御を行なうので、スループットがよい。ＩＥＥＥ８０２を始めとして、現在のコンピュータ・ネットワークは基本的にパケット交換方式により構築されている。
【０００３】
最近では、有線方式による機器間のケーブル配線からユーザを解放する通信システムとして、無線ネットワークが急速に普及している。例えば、無線ＬＡＮに関する標準的な規格として、ＩＥＥＥ８０２．１１を挙げることができる。図４には、ＩＥＥＥ８０２．１１ａで規定されているパケット・フォーマットを示している。図示の通り、パケットは、パケット発見や同期タイミングを獲得するための既知トレーニング・シーケンスからなるプリアンブルと、ＰｈｙヘッダとしてのＰＬＣＰ（ＰｈｙｓｉｃａｌＬａｙｅｒ Ｃｏｎｖｅｒｇｅｎｃｅ Ｐｒｏｔｏｃｏｌ）ヘッダと、ＰｈｙペイロードとしてのＰＳＤＵ（Ｐｈｙｓｉｃａｌ ＬａｙｅｒＳｅｒｖｉｃｅ Ｄａｔａ Ｕｎｉｔ）で構成される。
【０００４】
ＰＬＣＰヘッダには、ＰＳＤＵの伝送レートを示すＲＡＴＥフィールド、ＰＳＤＵの長さを示すＬＥＮＧＴＨフィールド、パリティ・ビット、エンコーダのＴａｉｌビットを記載したＳＩＧＮＡＬフィールドが格納される。
【０００５】
ＰＳＤＵはＭＡＣフレームに相当する。ＩＥＥＥ８０２．１１では幾つかのフレーム・タイプが定義されているが、図８にはこのうちＲＴＳ、ＣＴＳ及びＡＣＫ、ＤＡＴＡの４種類についてのフレーム・フォーマットを示す。ＡＣＫは、パケットを無事に受信した通信局が送信元に返信する確認応答用のフレーム・フォーマットである。また、ＲＴＳ及びＣＴＳは送受信局間でデータ送信要求とその了解をとる手続き（後述）に使用するフレーム・フォーマットである。いずれのフレームも、ＭＡＣヘッダには、ＦｒａｍｅＣｏｎｔｒｏｌフィールドとＤｕｒａｔｉｏｎフィールドが共通で定義されている。Ｆｒａｍｅ Ｃｏｎｔｒｏｌフィールドは、当該フレームの種類や用途などを示す情報が格納される。また、Ｄｕｒａｔｉｏｎフィールドには、ＮＡＶ（ＮｅｔｗｏｒｋＡｌｌｏｃａｔｉｏｎ Ｖｅｃｔｏｒ）の用途のメディア予約情報として、当該パケットに関する一連のトランザクションが終了するまでの時間が記されている。
【０００６】
Ｄａｔａフレームには、上記の他、送信元や宛先通信局他の特定を行なう４つのアドレス・フィールドＡｄｄｒ１〜４と、シーケンス・フィールド（ＳＥＱ）と、上位レイヤに提供する正味の情報であるＦｒａｍｅＢｏｄｙと、チェックサムであるＦＣＳ（Ｆｒａｍｅ Ｃｈｅｃｋ Ｓｅｑｕｅｎｃｅ）が含まれている。
【０００７】
ＲＴＳフレームには、上記の他、宛先を示すＲｅｃｅｉｖｅｒ Ａｄｄｒｅｓｓ（ＲＡ）と、送信元を示すＴｒａｎｓｍｉｔｔｅｒＡｄｄｒｅｓｓ（ＴＡ）と、チェックサムであるＦＣＳが含まれる。また、ＣＴＳフレーム並びにＡＣＫフレームには、上記の他、宛先を示すＲＡとチェックサムであるＦＣＳが含まれる。
【０００８】
無線ＬＡＮを構成する際、エリア内に「アクセス・ポイント」又は「コーディネータ」と呼ばれる制御局による統括的な制御下でネットワークを形成する方法が一般的であるが、端末同士で非同期通信を行なう場合には、伝送路の利用効率が半減してしまうという問題がある。このため、ＩＥＥＥ８０２．１１系の無線ＬＡＮシステムでは、自律分散的にピア・ツウ・ピア（Ｐｅｅｒ  ｔｏ  Ｐｅｅｒ）で動作するアドホック・モードが用意されている。また、アドホック・ネットワークにおける隠れ端末問題を解決する方法論として、ＲＴＳ／ＣＴＳ手順によるＣＳＭＡ／ＣＡ方式が適用される。ＣＳＭＡ／ＣＡ方式により、他の通信装置の情報送信がないことを確認してから、自らの情報送信を開始することによって、衝突を回避することができる。また、ＲＴＳ／ＣＴＳ方式では、データ送信元の通信局が送信要求パケットＲＴＳ（Ｒｅｑｕｅｓｔ  Ｔｏ  Ｓｅｎｄ）を送信し、データ送信先の通信局から確認通知パケットＣＴＳ（Ｃｌｅａｒ  Ｔｏ  Ｓｅｎｄ）を受信したことに応答してデータ送信を開始する。
【０００９】
図５には、送受信局間でＲＴＳ／ＣＴＳ手順を行なう際に、周辺局で起こり得る作用について図解している。同図では、ＳＴＡ２、ＳＴＡ０、ＳＴＡ１、ＳＴＡ３という４台の通信局が存在し、図中で隣り合う通信局同士のみが電波の到達範囲に位置しているという通信環境を想定している。ここで、ＳＴＡ０がＳＴＡ１に宛てて情報を送信したいとする。
【００１０】
送信元であるＳＴＡ０は、ＣＳＭＡの手順によりメディアが一定期間（時刻Ｔ１１まで）クリアである旨を確認した後、時刻Ｔ１１からＲＴＳパケットをＳＴＡ１に宛てて送信する。ＲＴＳパケットのＦｒａｍｅＣｏｎｔｒｏｌフィールドのＴｙｐｅ情報には当該パケットがＲＴＳであることを示す情報が記載され、Ｄｕｒａｔｉｏｎフィールドには当該パケット送受信トランザクションが終了するまでの時間（すなわち時刻Ｔ１８までの時間）が記載され、ＲＡフィールドには宛先通信局（ＳＴＡ１）のアドレスが記載され、ＴＡフィールドには、自局（ＳＴＡ０）のアドレスが記載されている。
【００１１】
ＲＴＳパケットは、ＳＴＡ０の近隣に位置するＳＴＡ２でも受信される。ＳＴＡ２は、ＲＴＳ信号を受信すると、ＰＬＣＰヘッダを復号して得られた情報に基づいてＰＳＤＵを復号する。そして、ＰＳＤＵ内のＦｒａｍｅＣｏｎｔｒｏｌフィールドから当該パケットがＲＴＳパケットであることを認識し、ＲＡフィールドから自局が宛先通信局でないことを認識すると、Ｄｕｒａｔｉｏｎフィールドで示された期間にわたり、ＮＡＶを設定して送信動作を停止することによって、ＳＴＡ０の送信希望を妨げないようにする。
【００１２】
また、ＲＴＳパケットの宛先であるＳＴＡ１は、ＰＳＤＵを復号することにより、ＳＴＡ０が自局宛てにデータ・パケットを送信したい旨を認識すると、短いフレーム間隔（ＳＩＦＳ）をおいて時刻Ｔ１３でＣＴＳパケットを返送する。ＣＴＳパケットのＰＳＤＵのＦｒａｍｅＣｏｎｔｒｏｌフィールドには当該パケットがＣＴＳパケットである旨が記載され、Ｄｕｒａｔｉｏｎフィールドには該トランザクションが終了するまでの時間（すなわち時刻Ｔ１８までの時間）が記載され、ＲＡフィールドには宛先通信局（ＳＴＡ１）のアドレスが記載されている。
【００１３】
ＣＴＳパケットは、送信先であるＳＴＡ１の近隣に位置するＳＴＡ３でも受信される。ＳＴＡ１は、ＰＬＣＰヘッダを復号して得られた情報に基づきＰＳＤＵを復号する。そして、ＰＳＤＵ内のＦｒａｍｅＣｏｎｔｒｏｌフィールドから当該パケットがＲＴＳパケットであることを認識し、ＲＡフィールドから、自局が宛先通信局でないことを認識すると、Ｄｕｒａｔｉｏｎフィールドで示された期間にわたり、ＮＡＶを設定することによって、ＳＴＡ１の受信希望を妨げないようする。
【００１４】
また、ＣＴＳパケットの宛先であるＳＴＡ０は、ＰＳＤＵを復号することにより、ＳＴＡ１は受信準備ができていることを認識すると、ＳＩＦＳ間隔をおいて時刻Ｔ１５でＤａｔａパケットを送信開始する。Ｄａｔａパケット送信が時刻Ｔ１６で終了し、ＳＴＡ１がこれを誤りなく復号できた場合には、ＳＴＡ１はＳＩＦＳ間隔をおいて時刻Ｔ１７でＡＣＫを返送し、これをＳＴＡ０が受信して１パケットの送受信トランザクションが時刻Ｔ１８で終了する。また、時刻Ｔ８になると、ＳＴＡ２並びにＳＴＡ３は、ＮＡＶを降ろして通常の送受信状態へと復帰する。
【００１５】
このようにＲＴＳ／ＣＴＳ通信方式によれば、隠れ端末は、適当な送信停止期間を設定し、近隣局のデータ伝送との衝突を回避することができる。
【００１６】
図６には、パケット交換方式によりデータ通信を行なう通信装置の構成を模式的に示している。図示の通信装置は、伝送されるデータの処理を行なうアプリケーションに相当する上位レイヤ処理部と、メディアへのアクセス制御並びにパケットの再送制御を行なうＭＡＣ処理部と、メディアに対する物理アクセス動作を司るＰｈｙ処理部で構成される。
【００１７】
ＭＡＣ処理部は、上位レイヤ処理部との間で伝送データの受け渡しを行なう伝送データ処理部と、送信データや受信データを一時的に蓄えるバッファ・メモリを備えている。データ送信時には、伝送データ処理部は、バッファ・メモリに蓄積された送信データからペイロード部分を切り出すとともに、ヘッダ情報を生成して、パケットの生成処理を行なう。具体的には、バッファ・メモリから送信データを読み出し、長さ情報を抽出してＳＩＧＮＡＬフィールド内のＬＥＮＧＴＨの値を確定させるとともに、ＲＡＴＥとＬＥＮＧＴＨの値に基づいてＭＡＣヘッダ内のＤＵＲＡＴＩＯＮフィールドに記載すべき時間長の計算を行なう。そして、送信パケットの内容が確定すると、これをＰｈｙ処理部に受け渡す。Ｐｈｙ処理部は、物理的な送信信号を生成して、メディアから相手側に送信する。
【００１８】
伝送データ処理部は、例えばワンチップ型のマイクロプロセッサを用いて構成することができ、送信データの生成などをソフトウェア処理によって実現することができる。図７にはこの処理の流れを図解している。リアルタイム・オペレーティング・システム（ＲＴＯＳ）を用いたソフトウェアにおいては、送信パケット生成処理が起動されると、これまで処理していた内容をヒープ領域に退避した後に新しいタスクの起動が実行され、処理実行の前準備が行なわれる。その後、バッファ・メモリから送信データの読み出し（Ｓ０１）、送信パケットの長さ情報の抽出と送信時間長の算出が時系列的に実行される（Ｓ０２）。そして、このデータを本当に送信してよいかどうかの判断をした後に（Ｓ０３）、時間長情報や長さ情報の更新を行ない（Ｓ０４）、送信ヘッダ情報を生成する。
【００１９】
また、１つの伝送フレームに２以上のパケットの内容をマルチプレクスする通信システムが知られている（例えば、本出願人に既に譲渡されている特願２００４−３００６７５号明細書を参照のこと）。例えば、ＲＴＳ、ＣＴＳ、ＤＡＴＡ、ＡＣＫといった異なる目的を持つ情報を１つのパケットに含ませることにより、ＭＡＣレイヤで発生するオーバーヘッド量を大きく削減することが可能となる。上述したＳ０１〜Ｓ０４という時系列処理は１つの送信データ当たりに発生する処理である。Ｓ０３では、さらに他のデータをマルチプレクスするかどうかを判断し、Ｓ０４では、マルチプレクスすることにより、時間長情報及び長さ情報を再計算する。マルチプレクスにより複数のデータを１つのパケットに掲載して、一度に複数のデータの送信を試みる場合には、送信データの個数だけこの時系列処理が繰り返し実行される。
【００２０】
ここで、送信パケット生成処理の最中に、ＲＴＯＳが提供する機能により緊急処理が割り込む場合も想定される。このような場合、現在行なっている送信パケット生成処理の内容をヒープ領域に退避して、緊急処理のタスクを起動して、その処理を完遂した後に、退避データを回復して送信パケット生成処理に復帰するという手順が実行される。送信パケット生成処理を完遂するまでに要する時間は、一概に見積もることは困難であるが、通常は数百マイクロ秒レベルの処理遅延を見込まなければならない。
【００２１】
次に、Ｐｈｙ処理部とＭＡＣ処理部のインターフェースについて考察する。図４に示したフレーム・フォーマットのパケットを送信する際のＰｈｙ処理部とＭＡＣ処理部のやり取りについてトレースしてみる。
【００２２】
ＭＡＣ処理部がＰｈｙ処理部に送信を指示してからメディアに信号が送出されるまでの間に処理遅延が存在する。図５の下段で説明すると、時刻Ｔ１がパケット送信の開始時刻であるとすると、ＭＡＣ処理部は、この処理遅延を考慮してＴ１よりも処理遅延だけ遡る時刻Ｔ０においてＰｈｙ処理部にプリアンブル送信を通達する。以下同様に、ＭＡＣ処理部は、送信時刻よりも各々の処理遅延時間Ｔ２、Ｔ４だけ先立って、Ｐｈｙ処理部へＳＩＧＮＡＬ情報並びにＰＳＤＵ情報の受け渡しを行なう。
【００２３】
図４の最下段に示したタイムチャートでは、ＭＡＣ処理部は、時刻Ｔ０にプリアンブルの送信を指示すると、送信パケットのヘッダ情報（ＳＩＧＮＡＬ）を時刻Ｔ２までに完成しておかなければならないことになる。ところが、図７を参照しながら説明したように、ソフトウェアによる送信パケット生成処理には時間を要する。この処理時間は、送信データをマルチプレクスすることによって長くなり、処理時間が長いと緊急処理の影響を受け易くなる。時刻Ｔ２までにヘッダ情報が完成していないという事態を回避するには、時刻Ｔ０にプリアンブルの送信を指示してから送信パケット生成処理を起動するのではなく、送信パケット生成が完遂した後にプリアンブルの送信を指示することが相当である。この場合、パケットの送信を開始する時刻Ｔ０までに、ＰＨＹヘッダ内の情報からＰＳＤＵに至る各フィールドを決定する必要がある。
【００２４】
送信パケットを完遂してから送信処理を起動するのでは、メディアにランダムアクセスする際に、送信権を取得するのに不利に働く。また、上述したＲＴＳ／ＣＴＳ手順を経てデータ伝送を開始する場合、送信元の通信端末は、ＲＴＳパケットにＤｕｒａｔｉｏｎ情報を記載するためには、ＲＴＳパケットを送信する時点で、後続のデータ・パケットの中身まで決定しておく必要がある。このように、パケットを送信する以前に送信パケットの内容を決定する必要があるため、上位レイヤから送信要求が発生してから送信内容が確定するまでの処理遅延により、所望の時刻に送信することができなくなるという問題がある。
【００２５】
例えば、複数の通信パケットのヘッダ部の冗長な情報を省き、連結して伝送フレームのヘッダ部を構成し、複数の通信パケットのペイロード部を連結して伝送フレームのペイロード部を構成することによって、伝送フレームのペイロード部に対するオーバーヘッドを軽減して、伝送の効率と通信品質の向上を図ったパケット通信方法について提案がなされている（例えば、特許文献１を参照のこと）。しかしながら、ペイロード部の連結が終わるまではヘッダ部は確定しないので、結局のところ、上記の問題を解決することはできない。
【００２６】
【特許文献１】特開平１０−２４７９４２号公報
【発明の開示】
【発明が解決しようとする課題】
【００２７】
本発明の目的は、パケット交換方式によりデータ伝送を好適に行なうことができる、優れた通信装置及び通信方法を提供することにある。
【００２８】
本発明のさらなる目的は、データ送信時において送信内容が確定する前にパケット送信処理を起動することができる、優れた通信装置及び通信方法を提供することにある。
【課題を解決するための手段】
【００２９】
本発明は、上記課題を参酌してなされたものであり、メディア上でパケット交換方式によりデータ伝送を行なう通信装置であって、
伝送されるデータの処理を行なう上位レイヤ処理部と、
メディアに対する物理アクセス動作を司るＰｈｙ処理部と、
送信パケットを生成するととともに、前記Ｐｈｙ処理部に対してパケットの送信を指示してメディアへのアクセス制御を行なうメディア・アクセス制御処理部を備え、
前記メディア・アクセス制御処理部は、前記上位レイヤ処理部が送信要求する送信データを一時的に格納するバッファ・メモリと、前記バッファ・メモリに格納されている各送信データについての属性情報を保持する送信バッファ・リストと、前記バッファ・リストを参照しながら送信パケットのヘッダ情報を生成するヘッダ情報生成手段を備え、前記バッファ・メモリに送信データが格納されたことに応じて前記Ｐｈｙ処理部にプリアンブル信号の送信を指示するとともに、前記ヘッダ情報生成手段によるヘッダ情報の生成処理を起動し、プリアンブル信号の送信終了前にＰｈｙ処理部に対して生成したヘッダ情報の送信を指示する、
ことを特徴とする通信装置である。
【００３０】
本発明は、パケット交換方式によりデータ伝送を行なう通信装置に関するものであり、具体的には、ＩＥＥＥ８０２．１１に従った通信動作を行なう。
【００３１】
送信パケット生成処理は、例えば、プロセッサにおいてリアルタイムＯＳが提供する実行環境下でソフトウェア処理により実現することができる。しかしながら、送信データをマルチプレクスすることによりパケット生成のための処理時間は長くなり、さらにＲＴＯＳが提供する機能により緊急処理による割込みの影響を受ける。このため、プリアンブル送信から滞りなくヘッダ情報の送信を行なうには、送信パケットの内容が確定してからでないと送信動作を開始できなくなる。
【００３２】
このような場合、ＲＴＳ／ＣＴＳ手順に従ってデータ伝送を行なう際に、ＲＴＳパケットを送信する時点で、後続のデータ・パケットの中身まで決定しておく必要がある。このため、上位レイヤから送信要求が発生してから送信内容が確定するまでの処理遅延により、所望の時刻に送信することができなくなる。
【００３３】
これに対し、本発明に係る通信装置は、パケットの種別やデータレート情報、さらに送信が許可される時間長といった概略情報のみが確定した段階で、プリアンブルの送信を開始し、プリアンブル送信中に、ＳＩＧＮＡＬフィールドやＭＡＣヘッダといったヘッダ情報の内容を決定して、送信パケットの送信を行なうようにした。
【００３４】
したがって、ＲＴＳなどのデータ送信に先立って送信される信号を送信する際に、パケットの種別などの概略情報のみを確定しておき、ヘッダ部の送信タイミングが到来するまでの間に、送信を試みようとしているデータの個数や合計の時間長などの詳細と、ＲＴＳパケットのＰＳＤＵ部に格納する内容を決定すればよい。
【００３５】
すなわち、送信内容が確定する以前にパケットの送信が可能となり、上位レイヤから送信要求が発生してから短時間でパケットを送信することができる。
【００３６】
これにより、所望の時刻に送信が可能となり、且つ短時間で複雑な内容を含むパケットの送信を行なうことも可能になる。
【００３７】
本発明に係る通信装置は、主としてＭＡＣレイヤの処理を行なうメディア・アクセス制御処理部として、前記上位レイヤ処理部が送信要求する送信データを一時的に格納するバッファ・メモリと、前記バッファ・メモリに格納されている各送信データについての属性情報を保持する送信バッファ・リストと、前記バッファ・リストを参照しながら送信パケットのヘッダ情報を生成するヘッダ情報生成手段を備えている。
【００３８】
そして、このメディア・アクセス制御処理部は、前記バッファ・メモリに送信データが格納されたことに応じて、前記Ｐｈｙ処理部にプリアンブル信号の送信を指示するとともに、前記ヘッダ情報生成手段によるヘッダ情報の生成処理を起動し、プリアンブル信号の送信終了前にＰｈｙ処理部に対して生成したヘッダ情報の送信を指示するようになっている。
【００３９】
前記送信バッファ・リストは、送信データの属性情報として、宛先アドレス、送信データレート、パケット・フォーマットの種別を保持する。ＲＴＳ／ＣＴＳ手順によるＣＳＭＡ／ＣＡ方式が適用される通信システムにおいては、送信データのパケット・フォーマットの種別として、ＲＴＳ、ＣＴＳ、ＤＡＴＡ、ＡＣＫのいずれかの情報を保持することになる。
【００４０】
また、前記送信バッファ・リストは、送信データの属性情報としてデータ長を保持している。そして、前記メディア・アクセス制御処理部は、送信データレートとデータ長を基に送信データの伝送動作に要する時間長を計算する時間長計算手段をさらに備えている。前記ヘッダ情報生成手段は、前記時間長計算手段による計算結果に基づいて、ヘッダ情報の一部として、ＣＳＭＡ／ＣＡを用いたアクセスに用いられるメディア予約情報（Ｄｕｒａｔｉｏｎ）を記載することができる。
【００４１】
また、１つのパケットに複数の送信データをマルチプレクスして、ＭＡＣレイヤで発生するオーバーヘッド量を大きく削減するという通信方法がある。１つのパケットに２以上の送信データの内容をマルチプレクスする際に、前記時間長計算部は、送信データを追加する度に時間長を計算する。そして、前記ヘッダ情報生成手段は、パケットにマルチプレクスする各送信データのデータ長を累積加算するとともに、前記時間長計算手段による計算結果を基にヘッダ情報の内容を更新するようにすればよい。
【発明の効果】
【００４２】
本発明によれば、パケット交換方式によりデータ伝送を好適に行なうことができる、優れた無線通信装置及び無線通信方法を提供することができる。
【００４３】
また、本発明によれば、特に、データ送信時において送信内容が確定する前にパケット送信処理を起動することができる、優れた無線通信装置及び無線通信方法を提供することができる。
【００４４】
本発明のさらに他の目的、特徴や利点は、後述する本発明の実施形態や添付する図面に基づくより詳細な説明によって明らかになるであろう。
【発明を実施するための最良の形態】
【００４５】
以下、図面を参照しながら本発明の実施形態について詳解する。
【００４６】
本発明は、パケット交換方式によりデータ伝送を行なう通信装置に関するものであり、具体的には、ＩＥＥＥ８０２．１１に従った通信動作を行なうことができる。図１には、本発明の一実施形態に係る通信装置の機能的構成を模式的に示している。図示の通信装置は、伝送されるデータの処理を行なうアプリケーションに相当する上位レイヤ処理部１０と、メディアへのアクセス制御並びにパケットの再送制御を行なうＭＡＣ処理部２０と、メディアに対する物理アクセス動作を司るＰｈｙ処理部３０で構成される。
【００４７】
図１では、主にデータ送信動作に着目して、ＭＡＣ処理部２０の内部構成を示している。ＭＡＣ処理部２０は、上位レイヤ処理部１０から受け渡された送信データを一時的に蓄えるバッファ・メモリ２１と、バッファ・メモリ２１に蓄えられている各送信データのデータ長やその他の属性情報を格納する送信バッファ・リスト２２と、送信パケットのヘッダ情報を生成するヘッダ情報生成部２３と、ＲＴＳ／ＣＴＳなど通信プロトコルに基づく送信動作を実現するためのプロトコル処理部２４と、フレーム間隔（ＩＦＳ）やバックオフをとってパケットの送信タイミングを決定するタイミング制御部２５と、バッファ・メモリ２１内から送信データを取り出して、ヘッダ情報生成部２３が生成するヘッダ情報とマルチプレクスして送信パケットを組み立てるマルチプレクサ２６を備えている。
【００４８】
上位レイヤ処理部１０から送信データがＭＡＣ処理部２０に与えられると、データの中身はバッファ・メモリ２１に格納され、同時に送信バッファ・リスト２２に新規にデータが格納された旨が登録される。
【００４９】
送信バッファ・リスト２２は、リスト構造で構成されており、送信データの長さなどの属性情報を格納する。また、送信すべき先頭データの一部に引き続き送信すべきデータが存在する場合には、引き続き送信すべきデータの情報が格納されているアドレスが記載されている。
【００５０】
ヘッダ情報生成部２３は、送信するパケットの中身を決定する手段であり、送信パケットのヘッダ情報や送信するデータメモリのアドレスなどを出力する。
【００５１】
ＭＡＣ処理部２０は、パケットを送信する際には、まずヘッダ情報生成部２３を起動し、送信パケットの中身を決定した後に、ヘッダ情報をＰｈｙ処理部３０に出力し、引き続きデータの実体をバッファ・メモリ２１から取り出してＰｈｙ処理部３０モデムに出力する。このヘッダ情報とデータの実体の出力はマルチプレクサ３０にて行なわれる。
【００５２】
図２には、ヘッダ情報生成部２３の内部構成を示している。図示のヘッダ情報生成部２３は、ヘッダ情報更新／格納部４１と、時間長計算部４２と、アドレス・カウンタ４３と、送信可否判断部４４を備えている。
【００５３】
ヘッダ情報生成部２３に対して、上位レイヤ処理部１０から、パケット送信に際して必要なパラメータ類の情報や、送信データの種別、送信バッファ・リスト２２の先頭を示すアドレス情報が入力される。
【００５４】
ヘッダ情報生成部２３は、アドレス・カウンタ４３を用いて、通常のＲＡＭへのアクセスと同様の形態で、送信バッファ・リスト２２にアクセスすることができる。すなわち、送信バッファ・リスト２２にアドレス情報を与えると、送信バッファ・リスト２２は該当するアドレスに格納されている送信データ情報をヘッダ情報更新／格納部４１に出力し、送信パケットのヘッダ情報の生成に必要な情報を読み出すことができる。
【００５５】
時間長計算部４２は、送信バッファ・リスト２２から読み出された送信データのデータ長に基づいて、パケット送信に要する時間長を算出し、その計算結果をヘッダ情報更新／格納部４１に出力する。複数のデータを１つのパケットにマルチプレクスする場合には、時間長計算部４２は、データを追加する度に時間長を再計算し、ヘッダ情報更新／格納部４１はヘッダ情報の内容を更新する。
【００５６】
送信可否判断部４４は、アドレス・カウンタ４３を介して送信バッファ・リスト２２にアクセスして、送信データに関する属性情報を参照して、引き続き送信すべきデータが存在するかどうかを確認して、送信してよいかどうかを判断する。
【００５７】
ヘッダ情報更新／格納部４１は、送信バッファ・リストから読み出される送信データの属性情報と、時間長計算部４２により算出された時間長情報に基づいて、ＰＬＣＰヘッダ（若しくはＰｈｙヘッダ）やＭＡＣヘッダを生成し、さらにその内容を適宜更新する。そして、送信可否判断部４４がパケットを送信してよいと判断したときには、格納中のヘッダ情報をマルチプレクサ２６に出力する。
【００５８】
マルチプレクサ２６は、該当する送信データをバッファ・メモリ２１から読み出してＰＳＤＵのＦｒａｍｅ  Ｂｏｄｙを構成するとともに、ヘッダ情報更新／格納部４１から供給されるヘッダ情報を付加して送信パケットを生成し、タイミング制御部２５が決定するタイミングに従ってこれをＰｈｙ処理部３０に受け渡しする。プロトコル処理部２４は、パケット受信に起因して応答パケットの送信する場合や、送信データが発生したときに、送信タイミングの制御をタイミング制御部２５に指示する。タイミング制御部２５は、例えばＣＳＭＡ方式であれば、メディア・アクセスが所定のフレーム間隔（ＩＦＳ）だけ検出されなくなったとき、あるいはランダム・バックオフ時間だけ待機した後に、パケット送信のトリガを与える。
【００５９】
続いて、送信パケットを生成するための具体的な手順について詳解する。
【００６０】
図３には、図４に示したフォーマットを持つ送信パケットの各フィールドを生成する様子を時間軸上で示している。まず、図３を参照しながら、ＭＡＣフレームがＤＡＴＡの場合（図８を参照のこと）のパケット送信手順について説明する。
【００６１】
ＭＡＣ処理部２０は、パケットを送信しようと試みる際、時刻Ｔ０に、Ｐｈｙ処理部にプリアンブル送信を指示するとともに、ヘッダ情報生成部２３における処理を起動する。パケットの送信開始時においては、送信パケットの種別（具体的には、宛先アドレスや送信データレート、ＲＴＳ／ＣＴＳ／ＤＡＴＡ／ＡＣＫのいずれか）のみを決定すれば十分であり、送信パケットの内容を確定させる必要はない。このとき、制御用パラメータの値も同時に確定している。制御用パラメータとしては、自局の送信に利用してよい最大時間長や、当該パケットで送信可能な最大ビット長さなどが与えられる。
【００６２】
ＭＡＣ処理部２０は、処理の起動を告げられると、送信バッファ・リスト２２への排他的なアクセス権を獲得する旨を図示しない他の処理回路モジュールに宣言し、送信バッファ・リスト２２に対してアクセスするための前準備を行なう。さらに、送信パケットの宛先アドレスなどから送信バッファ・リスト２２への先頭アドレスを確定させる。また、送信パケットの内容を決定する処理に用いられるレジスタ類を初期化し、送信パケットのヘッダ情報生成処理の初期化を行なう。
【００６３】
アドレス・カウンタ４３は、送信バッファ・リスト２２から読み出してくる送信データ情報が格納されているアドレスを出力する。なお、アドレス・カウンタ４３は、送信バッファ・リスト２２に記載されているデータを基に、送信待ち状態にある次のデータが格納されているアドレスを次々に出力する。また、送信バッファ・リスト２２は、アドレス・カウンタ４３からのアドレス入力に応じて、送信待ち状態にあるデータ列の情報を次々に出力する。
【００６４】
上記の初期化処理が終了すると、次の処理サイクルから、送信バッファ・リスト２２からヘッダ情報生成部２３へ、送信待ち状態にある送信データの属性情報が入力されてくる。時間長計算部４２は、パラメータとして与えられている送信データレートと送信バッファ・リスト２２から出力されたデータの長さ情報より、このデータを送信する際に要する時間長を算出して、送信可否判断部４４へ出力する。
【００６５】
ヘッダ情報更新／格納部４１は、送信バッファ・リスト２２から供給される送信データの長さ情報を累積加算していき、当該パケット全体の長さを保持するなど、当該パケットのヘッダ情報を生成し格納する。
【００６６】
送信可否判断部４４は、当該パケットにおいて送信バッファ・リスト２２から出力されている送信データを送信してよいか否かを判断する。そして、処理対象の送信データを当該パケットにて送信可能であると判断した場合には、次の送信データを送信バッファ・リスト２２から読み出すよう、アドレス・カウンタ４３に指示を出す。逆に、処理対象の送信データを当該パケットにて送信できないと判断した場合には、１つ前の送信データまでで送信パケットを構成することを決定し、ヘッダ情報生成の処理を終了する。
【００６７】
なお、送信可否判断部４４においては、送信パケット全体の長さがパラメータにより与えられている許容最大値を超えたり、送信時間長がパラメータにより与えられている許容最大値を超えたり、送信データの個数がパラメータにより与えられている最大許容値を超えたりした場合に、送信データを当該パケットにて送信できないと判断する。また、送信可否判断部４４は、送信バッファ・リスト２２から得られる情報により、送信データがこれ以上格納されていないと判断した場合にも、当該パケットのヘッダ情報生成の処理を終了する。
【００６８】
上記の処理は、複数の処理回路モジュールにより同時に実行されることから、１つの送信データにつき１サイクルにて処理を完了することが可能である。すなわち、初期化後は、ＮサイクルあればＮ個の送信データに関する処理を実行することが可能である。図３に示した例では、Ｓ０６、Ｓ１６、Ｓ２６、…で１回の送信データ分の処理を完了しており、最終的にＸ−１個（これ以上送信データがない場合はＸ個）の送信データを送信する様子を示している。
【００６９】
すべての送信対象の送信データに関するヘッダ情報の生成処理が終了すると、最終的なヘッダ情報を決定し、処理結果をヘッダ情報更新／格納部４１に格納する処理（Ｓ０７）を経て、ヘッダ生成処理が最終的に終了となる。
【００７０】
［背景技術］の欄でも説明したように、ＩＥＥＥ８０２．１１では、通信局同士の衝突回避とアドホック・モード下での隠れ端末問題を解決するために、ＲＴＳ／ＣＴＳ手順によるＣＳＭＡ／ＣＡ方式が適用される。この場合、データ送信局は、データ・パケットに先駆けてＲＴＳパケットを送信するが（図５を参照のこと）、このパケットは、データ・パケットとはＭＡＣフレームのフォーマットが相違する（図８を参照のこと）。そこで、以下では、図３を参照しながら、ＲＴＳパケットを送信する場合のパケット送信手順について説明する。
【００７１】
ＭＡＣ処理部２０は、パケットを送信しようと試みる際、時刻Ｔ０に、Ｐｈｙ処理部にプリアンブル送信を指示するとともに、ヘッダ情報生成部２３における処理を起動する。パケットの送信開始時においては、送信パケットの種別（具体的には、宛先アドレスや送信データレート、ＲＴＳ／ＣＴＳ／ＤＡＴＡ／ＡＣＫのいずれか）のみを決定すれば十分であり、送信パケットの内容を確定させる必要はない。このとき、制御用パラメータの値も同時に確定している。制御用パラメータとしては、自局の送信に利用してよい最大時間長や、当該パケットで送信可能な最大ビット長さなどが与えられる。
【００７２】
ＭＡＣ処理部２０は、処理の起動を告げられると、送信バッファ・リスト２２への排他的なアクセス権を獲得する旨を図示しない他の処理回路モジュールに宣言し、送信バッファ・リスト２２に対してアクセスするための前準備を行なう。さらに、送信パケットの宛先アドレスなどから送信バッファ・リスト２２への先頭アドレスを確定させる。また、送信パケットの内容を決定する処理に用いられるレジスタ類を初期化し、ＲＴＳパケットのヘッダ情報生成処理の初期化を行なう。
【００７３】
アドレス・カウンタ４３は、送信バッファ・リスト２２から読み出してくる送信データ情報が格納されているアドレスを出力する。なお、アドレス・カウンタ４３は、送信バッファ・リスト２２に記載されているデータを基に、送信待ち状態にある次のデータが格納されているアドレスを次々に出力する。また、送信バッファ・リスト２２は、アドレス・カウンタ４３からのアドレス入力に応じて、送信待ち状態にあるデータ列の情報を次々に出力する。
【００７４】
上記の初期化処理が終了すると、次の処理サイクルから、送信バッファ・リスト２２からヘッダ情報生成部２３へ、送信待ち状態にある送信データの属性情報が入力されてくる。時間長計算部４２は、パラメータとして与えられている送信データレートと送信バッファ・リスト２２から出力されたデータの長さ情報より、このデータを送信する際に要する時間長を算出して、送信可否判断部４４へ出力する。この送信データは、当該送信パケットで送信する内容ではないが、当該送信パケットであるＲＴＳパケットに対してＣＴＳパケットが返送されてきた場合に送信を予定している送信データに相当する。
【００７５】
ヘッダ情報更新／格納部４１は、時間長計算部４２により計算された時間長情報を累積加算し、当該ＲＴＳに起因して得られる送信期間長（ＴＸＯＰ）を保持するなど、当該パケットのヘッダ情報を生成し格納する。送信期間長は、ＲＴＳフレームのＤｕｒａｔｉｏｎフィールドに格納される。
【００７６】
送信可否判断部４４は、当該パケットにおいて送信バッファ・リスト２２から出力されている送信データを今回の送信機会にて送信してよいか否かを判断する。そして、処理対象の送信データを当該パケットにて送信可能であると判断した場合には、次の送信データを送信バッファ・リスト２２から読み出すようアドレス・カウンタ４３に指示を出す。逆に、処理対象の送信データを当該パケットにて送信できないと判断した場合には、１つ前の送信データまでで送信パケットを構成することを決定し、ヘッダ情報生成の処理を終了する。
【００７７】
なお、送信可否判断部４４においては、送信パケット全体の長さがパラメータにより与えられている許容最大値を超えたり、送信時間長がパラメータにより与えられている許容最大値を超えたり、送信データの個数がパラメータにより与えられている最大許容値を超えたりした場合に、送信データを当該パケットにて送信できないと判断する。また、送信可否判断部４４は、送信バッファ・リスト２２から得られる情報により、送信データがこれ以上格納されていないと判断した場合にも、送信データ生成手段の処理を終了する。
【００７８】
上記の処理は、複数の処理回路モジュールにより同時に実行されることから、１つの送信データにつき１サイクルにて処理を完了することが可能である。すなわち、初期化後は、ＮサイクルあればＮ個の送信データに関する処理を実行することが可能である。図３に示した例では、Ｓ０６、Ｓ１６、Ｓ２６、…で１回の送信データ分の処理を完了しており、最終的にＸ−１個（これ以上送信データがない場合はＸ個）の送信データを送信する様子を示している。
【００７９】
すべての送信対象の送信データに関するヘッダ情報の生成処理が終了すると、最終的なヘッダ情報を決定し、処理結果をヘッダ情報更新／格納部４１に格納する処理（Ｓ０７）を経てヘッダ生成処理が最終的に終了となる。
【産業上の利用可能性】
【００８０】
以上、特定の実施形態を参照しながら、本発明について詳解してきた。しかしながら、本発明の要旨を逸脱しない範囲で当業者が該実施形態の修正や代用を成し得ることは自明である。
【００８１】
本明細書では、無線ＬＡＮシステムの代表的な標準規格であるＩＥＥＥ８０２．１１に適用した場合を中心に、本発明の実施形態について説明してきたが、本発明の要旨はこれに限定されるものではない。その他のパケット交換方式の通信システムに対し、同様に本発明を適用することができる。また、適用対象として、無線あるいは有線など、メディアの種別を特に問わない。
【００８２】
要するに、例示という形態で本発明を開示してきたのであり、本明細書の記載内容を限定的に解釈するべきではない。本発明の要旨を判断するためには、特許請求の範囲を参酌すべきである。
【図面の簡単な説明】
【００８３】
【図１】図１は、本発明の一実施形態に係る通信装置の機能的構成を模式的に示した図である。
【図２】図２は、ヘッダ情報生成部２３の内部構成を示した図である。
【図３】図３は、送信パケットの各フィールドを生成する様子を時間軸上で示した図である。
【図４】図４は、ＩＥＥＥ８０２．１１ａにおけるパケット・フォーマットを示した図である。
【図５】図５は、送受信局間でＲＴＳ／ＣＴＳ手順を行なう際に、周辺局で起こり得る作用を説明するための図である。
【図６】図６は、パケット交換方式によりデータ通信を行なう通信装置の構成を模式的に示した図である。
【図７】図７は、送信データの生成をソフトウェア処理によって実現する手順を説明するための図である。
【図８】図８は、ＲＴＳ、ＣＴＳ及びＡＣＫ、ＤＡＴＡの４種類についてのフレーム・フォーマットを示した図である。
【符号の説明】
【００８４】
１０…上位レイヤ処理部
２０…ＭＡＣ処理部
２１…バッファ・メモリ
２２…送信バッファ・リスト
２３…ヘッダ情報生成部
２４…プロトコル処理部
２５…タイミング制御部
２６…マルチプレクサ
３０…Ｐｈｙ処理部
４１…ヘッダ情報更新／格納部
４２…時間長計算部
４３…アドレス・カウンタ
４４…送信可否判断部
【図１】
2007243239.tif 000003
【図２】
2007243239.tif 000004
【図３】
2007243239.tif 000005
【図４】
2007243239.tif 000006
【図５】
2007243239.tif 000007
【図６】
2007243239.tif 000008
【図７】
2007243239.tif 000009
【図８】
2007243239.tif 000010