(57)【要約】【課題】送信データのリアルタイムレベルや信頼レベルに応じた再送回数で再送制御をすることができるデータ通信装置およびデータ通信方法を得ることを目的とする。【解決手段】データ通信装置において、トランスポート層のプロトコルに応じて異なる再送回数が設定され、通信相手からの応答信号を所定の時間内に受信しない場合、送信するパケットのヘッダ情報に基づきトランスポート層のプロトコルを判別し、この判別結果および前記再送回数設定値に基づき再送制御を行う再送制御手段のいずれかを備えるものである。【選択図】図１
2007158495.tif 000002
【特許請求の範囲】
【請求項１】
通信相手からの応答信号を所定の時間内に受信したか否かに基づき再送制御を行うデータ通信装置において、
上位層の送信パケット毎に設定されるリアルタイムレベルまたは信頼レベルに応じて異なる再送回数が設定され、通信相手からの応答信号を所定の時間内に受信しない場合、前記再送回数設定値に基づき再送制御を行う再送制御手段、
を備えることを特徴とするデータ通信装置。
【請求項２】
通信相手からの応答信号を所定の時間内に受信したか否かに基づき再送制御を行うデータ通信装置において、
上位層の送信パケット毎に設定される送信有効期間と、最初の送信時刻からの経過時間とを比較し、通信相手からの応答信号を所定の時間内に受信しない場合、前記比較結果に基づいて再送制御を行う再送制御手段、
を備えることを特徴とするデータ通信装置。
【請求項３】
通信相手からの応答信号を所定の時間内に受信したか否かに基づき再送制御を行うデータ通信装置において、
トランスポート層のプロトコルに応じて異なる再送回数が設定され、通信相手からの応答信号を所定の時間内に受信しない場合、送信するパケットのヘッダ情報に基づきトランスポート層のプロトコルを判別し、この判別結果および前記再送回数設定値に基づき再送制御を行う再送制御手段、
を備えることを特徴とするデータ通信装置。
【請求項４】
通信相手からの応答信号を所定の時間内に受信したか否かに基づき再送制御を行うデータ通信方法において、
上位層の送信パケット毎に設定されるリアルタイムレベルまたは信頼レベルに応じて異なる再送回数を設定し、通信相手からの応答信号を所定の時間内に受信しない場合、前記再送回数設定値に基づき再送制御を行うことを特徴とするデータ通信方法。
【請求項５】
通信相手からの応答信号を所定の時間内に受信したか否かに基づき再送制御を行うデータ通信方法において、
上位層の送信パケット毎に設定される送信有効期間と、最初の送信時刻からの経過時間とを比較し、通信相手からの応答信号を所定の時間内に受信しない場合、前記比較結果に基づいて再送制御を行うことを特徴とするデータ通信方法。
【請求項６】
通信相手からの応答信号を所定の時間内に受信したか否かに基づき再送制御を行うデータ通信方法において、
トランスポート層のプロトコルに応じて異なる再送回数を設定し、通信相手からの応答信号を所定の時間内に受信しない場合、送信するパケットのヘッダ情報に基づきトランスポート層のプロトコルを判別し、この判別結果および前記再送回数設定値に基づき再送制御を行うことを特徴とするデータ通信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、無線ネットワークを使った通信エラー発生時にデータ再送するデータ通信装置およびデータ通信方法に関し、詳しくは、音声などのリアルタイム性の高いデータとＦＴＰ（Ｆｉｌｅ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）通信などの信頼性の高いデータとが混在する環境においてデータ再送するデータ通信装置およびデータ通信方法に関する。
【背景技術】
【０００２】
無線によるネットワーク通信において、例えば、（非特許文献１）では、１対１通信であるユニキャスト通信を行うとき、データ受信側は正常にデータを受信したことを示すために、送信側へＡＣＫという肯定応答を送信側へ応答することになっている。データ送信側は受信側から返されるこのＡＣＫ応答を受け取ることにより、送信が成功したと判断し、次のパケットを送信することになる。しかし、ＡＣＫ応答がある一定時間内に受信できずタイムアウトしたときは、通信に失敗したとして、送信側はパケットの再送を行うようになっている。
【０００３】
一般に上記のような標準をサポートした無線通信システムなどの再送制御は、固定の再送回数が設定されており、通信に失敗したときは最大でこの再送回数に達するまで再送を行うようになっている。あるいは、ユーザが再送回数を設定できるものもあるが、一度設定すると次に変更されるまで、その値が使われ続けることになる。このような状況において、あらかじめ設定されている再送回数を超えた送信エラーが発生したときは、その失敗したデータは送信されないことになる。
【０００４】
また、他の従来の技術としては、たとえば、（特許文献１）によると、ある無線局がデータパケットを送信したとき、他の無線局からのデータパケットとの衝突が発生したと判断されたときは、必ずパケットの再送を行うように制御することが提案されている。
【０００５】
（特許文献２）では、リアルタイム伝送が可能な無線通信装置において、リアルタイム伝送が途切れない範囲内で、パケットの受信側が送信側に対して再送要求を行うように制御することを提案している。
【特許文献１】特開２００２−２４７０５１号公報
【特許文献２】特開２００２−２２３２４８号公報
【非特許文献１】ＡＮＳＩ／ＩＥＥＥ  Ｓｔｄ  ８０２．１１，１９９９  Ｅｄｉｔｉｏｎ  ”９．２．８  ＡＣＫ  ｐｒｏｃｅｄｕｒｅ”
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、上記従来の（非特許文献１）に記載の技術では、送信データのリアルタイムレベルや信頼レベルを判別することができないため、送信データにリアルタイム性の高いデータと信頼性の高いデータが混在するような場合は、リアルタイム性の高いデータに応じた再送回数で設定してしまうと、信頼性の高いデータには不都合な結果となり、信頼性の高いデータに応じた再送回数で設定してしまうと、リアルタイム性の高いデータには不都合な結果となるという問題があった。
【０００７】
上記の従来の（特許文献１）に記載の技術では、データパケットの衝突によるパケットエラーが発生した場合は必ず再送が行われることになり、例えば、リアルタイム伝送が必要な無線局の場合に、データパケットを再送してもタイムアウトにより、リアルタイム性が損なわれてしまい受信側ではパケットを廃棄するしかない場合も発生し、この場合、通信に無駄が発生してしまうという問題があった。
【０００８】
上記の従来の（特許文献２）に記載の技術では、受信エラーが発生したときに受信側が送信側に対して再送要求を行うことになり、受信側から送信側への余分な通信プロトコルが必要であり、また、リアルタイム伝送が可能な装置に限定される再送制御であり、一般的な通信装置においては適応できないという問題があった。
【０００９】
本発明は、上記に鑑みてなされたものであって、送信データのリアルタイムレベルや信頼レベルに応じた再送回数で再送制御をすることができるデータ通信装置およびデータ通信方法を得ることを目的とする。
【課題を解決するための手段】
【００１０】
上記課題を解決するために本発明のデータ通信装置は、通信相手からの応答信号を所定の時間内に受信したか否かに基づき再送制御を行うデータ通信装置において、上位層の送信パケット毎に設定されるリアルタイムレベルまたは信頼レベルに応じて異なる再送回数が設定され、通信相手からの応答信号を所定の時間内に受信しない場合、前記再送回数設定値に基づき再送制御を行う再送制御手段、を備えるものである。
【００１１】
上記課題を解決するために本発明のデータ通信方法は、通信相手からの応答信号を所定の時間内に受信したか否かに基づき再送制御を行うデータ通信方法において、上位層の送信パケット毎に設定されるリアルタイムレベルまたは信頼レベルに応じて異なる再送回数を設定し、通信相手からの応答信号を所定の時間内に受信しない場合、前記再送回数設定値に基づき再送制御を行うものである。
【発明の効果】
【００１２】
本発明によれば、送信されるデータのリアルタイムレベルや信頼レベルを判定して、送信エラー発生時の再送回数を決定することにより、リアルタイム性が必要な通信の場合は再送回数を少なくし、信頼性が高い通信の場合は再送回数を増やすことができるので、送信するデータのリアルタイムレベルや信頼レベルに応じた再送制御ができる。
【発明を実施するための最良の形態】
【００１３】
本発明の第１の発明のデータ通信装置は、通信相手からの応答信号を所定の時間内に受信したか否かに基づき再送制御を行うデータ通信装置において、上位層の送信パケット毎に設定されるリアルタイムレベルまたは信頼レベルに応じて異なる再送回数が設定され、通信相手からの応答信号を所定の時間内に受信しない場合、再送回数設定値に基づき再送制御を行う再送制御手段、を備えるものである。
【００１４】
この構成により、送信されるデータのリアルタイムレベルや信頼レベルを判定して再送回数を決定することにより、リアルタイム性が必要な通信の場合はリアルタイム性を損なわない再送制御を行い、信頼性が高い通信の場合は十分な回数の再送制御を行うようにできるので、送信するデータのリアルタイムレベルや信頼レベルに応じた再送制御ができるという作用を有する。
【００１５】
第２の発明のデータ通信装置は、通信相手からの応答信号を所定の時間内に受信したか否かに基づき再送制御を行うデータ通信装置において、上位層の送信パケット毎に設定される送信有効期間と、最初の送信時刻からの経過時間とを比較し、通信相手からの応答信号を所定の時間内に受信しない場合、比較結果に基づいて再送制御を行う再送制御手段、を備えるものである。この構成により、送信されるデータのリアルタイムレベルや信頼レベルを判定して再送回数を決定する代わりに送信有効期限を経過したか否かにより再送の可否を決定することにより、リアルタイム性が必要な通信の場合はリアルタイム性を損なわない再送制御を行い、信頼性が高い通信の場合は十分な回数の再送制御を行うようにできるので、送信するデータのリアルタイムレベルや信頼レベルに応じた再送制御ができる作用を有する。
【００１６】
第３の発明のデータ通信装置は、通信相手からの応答信号を所定の時間内に受信したか否かに基づき再送制御を行うデータ通信装置において、トランスポート層のプロトコルに応じて異なる再送回数が設定され、通信相手からの応答信号を所定の時間内に受信しない場合、送信するパケットのヘッダ情報に基づきトランスポート層のプロトコルを判別し、この判別結果および再送回数設定値に基づき再送制御を行う再送制御手段、を備えるものである。この構成により、送信されるデータのリアルタイムレベルや信頼レベルを判定する代わりに、送信するパケットのヘッダを解析し、送信データのトランスポート層のプロトコルを判定して再送回数を決定することにより、リアルタイム性が必要な通信の場合はリアルタイム性を損なわない再送制御を行い、信頼性が高い通信の場合は十分な回数の再送制御を行うようにできるので、送信するデータのリアルタイムレベルや信頼レベルに応じた再送制御ができる作用を有する。
【００１７】
第４の発明のデータ通信方法は、通信相手からの応答信号を所定の時間内に受信したか否かに基づき再送制御を行うデータ通信方法において、上位層の送信パケット毎に設定されるリアルタイムレベルまたは信頼レベルに応じて異なる再送回数を設定し、通信相手からの応答信号を所定の時間内に受信しない場合、再送回数設定値に基づき再送制御を行うものである。
【００１８】
この構成により、送信されるデータのリアルタイムレベルや信頼レベルを判定して再送回数を決定することにより、リアルタイム性が必要な通信の場合はリアルタイム性を損なわない再送制御を行い、信頼性が高い通信の場合は十分な回数の再送制御を行うようにできるので、送信するデータのリアルタイムレベルや信頼レベルに応じた再送制御ができるという作用を有する。
【００１９】
第５の発明のデータ通信方法は、通信相手からの応答信号を所定の時間内に受信したか否かに基づき再送制御を行うデータ通信方法において、上位層の送信パケット毎に設定される送信有効期間と、最初の送信時刻からの経過時間とを比較し、通信相手からの応答信号を所定の時間内に受信しない場合、比較結果に基づいて再送制御を行うものである。
【００２０】
この構成により、送信されるデータのリアルタイムレベルや信頼レベルを判定して再送回数を決定する代わりに送信有効期限を経過したか否かにより再送の可否を決定することにより、リアルタイム性が必要な通信の場合はリアルタイム性を損なわない再送制御を行い、信頼性が高い通信の場合は十分な回数の再送制御を行うようにできるので、送信するデータのリアルタイムレベルや信頼レベルに応じた再送制御ができる作用を有する。
【００２１】
第６の発明のデータ通信方法は、通信相手からの応答信号を所定の時間内に受信したか否かに基づき再送制御を行うデータ通信方法において、トランスポート層のプロトコルに応じて異なる再送回数を設定し、通信相手からの応答信号を所定の時間内に受信しない場合、送信するパケットのヘッダ情報に基づきトランスポート層のプロトコルを判別し、この判別結果および再送回数設定値に基づき再送制御を行うものである。
【００２２】
この構成により、送信されるデータのリアルタイムレベルや信頼レベルを判定する代わりに、送信するパケットのヘッダを解析し、送信データのトランスポート層のプロトコルを判定して再送回数を決定することにより、リアルタイム性が必要な通信の場合はリアルタイム性を損なわない再送制御を行い、信頼性が高い通信の場合は十分な回数の再送制御を行うようにできるので、送信するデータのリアルタイムレベルや信頼レベルに応じた再送制御ができる作用を有する。
【００２３】
以下、本発明の実施の形態について説明する。
【００２４】
（実施の形態１）
本発明の実施の形態１のデータ通信装置について、図１〜図４に基づいて以下詳細に説明する。図１は、実施の形態１にかかるデータ通信装置の構成例を示すブロック図である。
【００２５】
図１において、１はデータ送信手段であり、実際のデータ送信を行う。２はデータ受信手段であり、他の通信装置などから送られてくるデータを受信する。３は送信結果判定手段であり、データの受信側から返される肯定応答（応答信号）であるＡＣＫを一定時間内にタイムアウトせずに正しく受信できたかどうかにより、送信に成功したかどうかを判定する。４は送信データ作成手段であり、図示しない上位層の送信側から依頼される送信データにヘッダなどをつけて送信パケットを作成する。５は再送指示手段であり、送信パケットに含まれるリアルタイムレベルまたは信頼レベルを解析し、このリアルタイムレベルまたは信頼レベルに応じてパケットの再送回数を算出し、再送回数より少ない回数だけ再送を決定する。６は再送制御手段であり、送信に失敗したときは再送指示手段５からの指示を受け、データの再送を行うように制御を行う。また、データ送信手段１において送信した送信パケットは、送信結果判定手段３において送信成功と判定されるまでもしくはデータ送信手段１においてつぎに送信する送信パケットが送信されるまで、図示しない送信パケット保持部に保持されており、必要に応じて参照される。
【００２６】
つぎに、実施の形態１のデータ通信装置において作成される送信パケットについて図２を用いて説明する。図２は、実施の形態１にかかる送信パケットの構成例を示す図である。
【００２７】
送信データ作成手段４は、アプリケーションからリアルタイムレベルや信頼レベルを受け入れるインタフェースを備えている。例えば、アプリケーションが関数呼び出しすることで、本発明を実現する場合は、関数の引数として設定されたリアルタイムレベルや信頼レベルが与えられる。この引数は、アプリケーションが参照するプログラミング資料などにＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍ  Ｉｎｔｅｒｆａｃｅ）などとしてリアルタイムレベルや信頼レベルが書かれている。例えば、電話アプリでは、遅延が発生すると会話が途切れるので、ＡＰＩにしたがって、リアルタイムレベルが高い値を送信データ作成手段４に与える。
【００２８】
図２において、１１は送信する送信パケット全体を示し、１２は送信パケットに含まれるリアルタイムレベルまたは信頼レベルを示すパケットヘッダの部分を示している。リアルタイムレベルは、送信パケットが途切れなく受信されることの必要性のレベルを示すものであり、信頼レベルは、送信パケットが確実に受信されることの必要性のレベルを示すものである。
【００２９】
リアルタイムレベルの場合は、アプリケーションから与えられたリアルタイム性の要求度に応じて、例えば、０（リアルタイム性なし）／１（低リアルタイム性）／２（中リアルタイム性）／３（高リアルタイム性）などの値が設定される。
【００３０】
つぎに、送信パケットに含まれるリアルタイムレベルから再送指示手段５が再送回数を導き出す際に使用するテーブルについて図３を用いて説明する。図３は、再送回数を設定するテーブルの例を示す図を示している。
【００３１】
図３の再送回数設定テーブルには、送信パケットに含まれるリアルタイムレベルが０のときは、この送信パケットのリアルタイム性はないとみなされ、再送回数は最も多い６回とするように設定することが示されている。図３のテーブルにおいては、リアルタイムレベルの数値が大きくなるにしたがってリアルタイム性は高くなるが、それにつれ再送回数は減少するように設定されている。リアルタイムレベルが最も高い３になると、再送回数は０となり、エラーが発生しても再送は行われないので、すぐに次のデータが送信されることになる。
【００３２】
一方、リアルタイムレベルよりも信頼レベルで制御した方がいい場合もある。そのようなときは、図３に示すように、送信パケットに含まれる信頼レベルをリアルタイムレベルの裏返しとなるような再送回数となるように設定することが示されている。すなわち、信頼レベルが高いときはリアルタイムレベルは低く、再送回数は多くなり、信頼レベルが低ければリアルタイムレベルは高く、再送回数を少なくなるように設定される。
【００３３】
しかし、必ずしもこの例のように再送回数を定義する必要はなく、リアルタイムレベルまたは信頼レベルをパケットヘッダ中に持たせ、リアルタイムレベルと信頼レベルで別の再送回数テーブルを使用してもよいし、それら２つのレベルを組み合わせた再送回数を定義してもよい。２つのレベルを組み合わせた再送回数の設定方法は、例えば、各リアルタイムレベルを信頼レベルによってさらに細分化して区分されたレベルによって再送回数を設定する。
【００３４】
次に、上記のデータ通信装置の動作について説明する。図４は、実施の形態１にかかるデータ通信装置の動作を示すフローチャートである。
【００３５】
まず、図示しないデータの送信を要求するアプリケーションなどの上位層は、送信を要求するにあたって送信データと共に送信データのリアルタイムレベルまたは信頼レベルを図１の送信データ作成手段４に与えると、送信データ作成手段４は、上位のアプリケーションなどから送信データおよびリアルタイムレベルまたは信頼レベルを受け取る（Ｓ１）。
【００３６】
送信データ作成手段４は、受け取った送信データとリアルタイムレベル／信頼レベルをもとに実際に送信する図２のような送信パケットを作成する（Ｓ２）。このとき送信データ作成手段４は、ヘッダの部分にリアルタイムレベルまたは信頼レベルを設定する。
【００３７】
今から送信するパケットはまだ再送を行ってないので、再送制御手段６は、再送実施回数を０に設定する（Ｓ３）。
【００３８】
次に、データ送信手段１は、アンテナを通して作成した送信パケットの送信を行う（Ｓ４）。
【００３９】
次に、データ受信手段２は、受信側から返されるＡＣＫ応答（応答信号）が返されるのを待つ。送信結果判定手段３は、このＡＣＫ応答があらかじめ決められたタイムアウト時間内にデータ受信手段２において受け取られたかどうかにより、送信が成功したかどうかを判定する（Ｓ５）。具体的には、送信結果判定手段３は、受信側からのＡＣＫをタイムアウトすることなくデータ受信手段２において正常に受信した場合は、正常に送信したと判定し、タイムアウトした場合は、送信に失敗したと判定して、判定結果を再送制御手段６に出力する。このタイムアウト時間は、例えば、送信パケットの通信時間Ｔ１と、受信側がパケットを受け取ってＡＣＫを返すまでの待ち時間を示すＳＩＦＳ（Ｓｈｏｒｔ  Ｉｎｔｅｒｆｒａｍｅ  Ｓｐａｃｅ）Ｔ２と、ＡＣＫパケットの通信時間Ｔ３と、マージン時間Ｔ４とから、例えば、（数１）により決めることができる。
【００４０】
タイムアウト時間＝Ｔ１＋Ｔ２＋Ｔ３＋Ｔ４・・・（数１）
再送制御手段６は、送信結果判定手段３から送信に成功したことを通知されると（Ｓ５；Ｙ）、終了するかしないかを判断して（Ｓ９）、終了すると判断した場合は終了する。
【００４１】
一方、再送制御手段６は、送信結果判定手段３から送信に失敗したことを通知されると（Ｓ５；Ｎ）、再送指示手段５へ再送要求を行うので、再送制御手段６から再送要求を受け取ると、再送指示手段５は、送信パケットのリアルタイムレベルまたは信頼レベルに応じた再送回数を図３のテーブルを使って算出する（Ｓ６）。具体的には、再送指示手段５は、送信パケットのヘッダからリアルタイムレベルまたは信頼レベルを取り出し、取り出したリアルタイムレベルまたは信頼レベルに対応する再送回数を図３に示すテーブルから取り出すことにより、このパケットの再送回数を算出する。
【００４２】
次に、再送指示手段５は、このパケットについて、実際の再送を行った回数である再送実施回数が、図３のテーブルから算出した再送回数よりも小さいか否かを判断する（Ｓ７）。
【００４３】
再送実施回数よりも再送回数が小さくなければ（Ｓ７；Ｎ）、再送指示手段５は、再送制御手段６に再送しない旨を指示し、再送制御手段６は、終了するかしないかを判断して（Ｓ９）、終了すると判断した場合は終了する。終了しないと判断したならば、Ｓ１へ戻り次のデータの送信処理を行う。
【００４４】
一方、再送実施回数が再送回数より小さければ（Ｓ７；Ｙ）、再送指示手段５は、再送制御手段６に再送を行う旨を指示し、再送制御手段６は、このパケットの再送実施回数に１を加え（Ｓ８）、Ｓ４に戻り再送を行う。
【００４５】
以上のように実施の形態１によれば、上記の構成により送信パケットのリアルタイムレベルまたは信頼レベルにより、送信エラー発生時の再送回数を決定することができるので、リアルタイム性が高いデータの場合、再送回数を減らすことで送信遅延を減少させることができ、逆にリアルタイム性が低く信頼性が高いデータの場合は再送回数を増やすことで失敗の少ない送信とする確率を増やすことができる。
【００４６】
なお、実施の形態１では送信データと共にリアルタイムレベルまたは信頼レベルを送信データ作成手段４に渡しているが、それらのレベルの代わりに送信データ作成手段４に送信データと共にこのデータの再送回数を直接渡してもよい。また、送信するパケットにリアルタイムレベルまたは信頼レベルを持たせているが、例えば、パケット内にこのレベルを持たせるではなく、送信データ作成手段４の内部メモリなどにそれらレベルを持たせ、この内部メモリ内のレベルを使って再送指示手段５は再送回数を算出してもよい。
【００４７】
（実施の形態２）
実施の形態１では、送信パケットに含まれるリアルタイムレベルまたは信頼レベルに応じてパケットの再送回数を算出し、その再送回数に達するか否かで再送を行うか否かを決定していた。一方、実施の形態２では、最初に送信した時刻からの経過時間が送信パケットに含まれる送信有効期限に達するか否かで再送を行うか否かを決定する。
【００４８】
次に、本発明の実施の形態２のデータ通信装置について、図５〜図７に基づいて以下詳細に説明する。図５は、実施の形態２にかかるデータ通信装置の構成例を示すブロック図である。なお、図５において、２１のデータ送信手段、２２のデータ受信手段、２３の送信結果判定手段、２４の送信データ作成手段は、それぞれ図１のデータ送信手段１、データ受信手段２、送信結果判定手段３、送信データ作成手段４と同じであるので、その説明を省略する。また、実施の形態１と同様に、データ送信手段２１において送信した送信パケットは、送信結果判定手段２３において送信成功と判定されるまでもしくはデータ送信手段２１においてつぎに送信する送信パケットが送信されるまで、図示しない送信パケット保持部に保持されており、必要に応じて参照される。
【００４９】
２５は再送指示手段であり、送信パケットに含まれる送信有効期限と最初に送信した時刻からの経過時間をもとに送信エラー発生時にパケットの再送をするかどうか決定する。２６は再送制御手段であり、送信に失敗したときは再送指示手段２５からの指示を受け、パケットの再送を行うよう制御を行う。２７はタイマであり、時刻をカウントすることができる。
【００５０】
また、送信データ作成手段２４は、アプリケーションから送信有効期限を受け入れるインタフェースを備えている。例えば、アプリケーションが関数呼び出しすることで、本発明を実現する場合は、アプリケーションから関数の引数として設定された送信有効期限が与えられる。この引数は、アプリケーションが参照するプログラミング資料などにＡＰＩなどとして送信有効期限が書かれている。例えば、電話アプリでは、遅延が発生すると会話が途切れるので、ＡＰＩにしたがって、２０ｍｓという送信有効期限（今から送信する音声パケットは２０ｍｓ以内に送信して欲しいとき）を送信データ作成手段２４に与える。
【００５１】
つぎに、実施の形態２のデータ通信装置において作成される送信パケットについて図６を用いて説明する。図６は、実施の形態２にかかる送信パケットの構成例を示す図である。
【００５２】
図６において、３１は送信する送信パケット全体を示し、３２は送信パケットに含まれる送信有効期限を示すパケットヘッダの部分を示している。この送信有効期限は、例えば、図６に示しているように１００ｍｓなどの時間が設定され、上位層から送信要求がきてから送信が完了するまでの最大の有効期限が格納される。
【００５３】
つぎに、上記のデータ通信装置の動作について説明する。図７は、実施の形態２にかかるデータ通信装置の動作を示すフローチャートである。
【００５４】
まず、図示しないデータの送信を要求するアプリケーションなどの上位層は、送信を要求するにあたって送信データと共に送信データが送信を完了するための期限である送信有効期限を図５の送信データ作成手段２４に与えると、送信データ作成手段２４は、上位のアプリケーションなどから送信データおよび送信有効期限を受け取る（Ｓ２１）。
【００５５】
送信データ作成手段２４は、受け取った送信データと送信有効期限をもとに実際に送信する図６のような送信パケットを作成する（Ｓ２２）。このとき、送信データ作成手段２４は、ヘッダの部分に送信有効期限を設定する。
【００５６】
再送指示手段２５は、今から送信するパケットの送信開始時刻を記憶する（Ｓ２３）。具体的には、送信データ作成手段２４がアプリから送信データを受け取ると、再送指示手段２５へ通知し、再送指示手段２５は、そのときの時刻をタイマ２７から取得することによって得た送信開始時刻を記憶する。
【００５７】
次に、データ送信手段２１は、アンテナを通して作成した送信パケットの送信を行う（Ｓ２４）。
【００５８】
次に、データ受信手段２２は、受信側から返されるＡＣＫ応答（応答信号）を受信するために待つ。送信結果判定手段２３は、このＡＣＫ応答をあらかじめ決められたタイムアウト時間内に受け取ったかどうかにより、送信が成功したかどうかを判定する（Ｓ２５）。具体的には、送信結果判定手段２３は、受信側からのＡＣＫをタイムアウトすることなくデータ受信手段２２において正常に受信した場合は、正常に送信したと判定し、タイムアウトした場合は、送信に失敗したと判定して、判定結果を再送制御手段２６に通知する。このタイムアウト時間は、実施の形態１のタイムアウト時間と同じように設定する。
【００５９】
再送制御手段２６は、送信結果判定手段２３から送信に成功したことを通知されると（Ｓ２５；Ｙ）、終了するかしないかを判断して（Ｓ２８）、終了すると判断した場合は終了する。
【００６０】
一方、再送制御手段２６は、送信結果判定手段２３から送信に失敗したことを通知されると（Ｓ２５；Ｎ）、再送指示手段２５へ再送要求を行うので、再送制御手段２６から再送要求を受け取ると、再送指示手段２５は、その送信パケットの送信開始からの経過時間（上位層よりパケットを受け取った時からの経過時間）を算出する（Ｓ２６）。具体的には、再送制御手段２６は、タイマ２７から現在時刻を取得し、Ｓ２３において記憶しておいた送信開始時刻を引き算し、経過時間を算出する。
【００６１】
次に、送信パケットのヘッダから送信有効期限を取り出し、取り出した送信有効期限が、Ｓ２６で求めた経過時間よりも大きいか否かを判断する（Ｓ２７）。具体的には、再送指示手段２５は、送信有効期限と、（上位層からパケットを受け取った時からの）経過時間とが、送信有効期限＞経過時間を満たす関係ならば、このパケットを再送することを再送制御手段２６に通知し、送信有効期限≦経過時間ならば、再送を行わないことを再送制御手段２６に通知する。また、例えば、送信有効期限に”−１”など特定の値を設定したときは、有効期限を無期限と解釈することで信頼性が高いデータの送信とみなし、最高の再送回数を設定することができる。
【００６２】
再送を行わないことが通知されると（Ｓ２７；Ｎ）、再送制御手段２６は、終了するかしないかを判断して（Ｓ２８）、終了すると判断した場合は終了する。終了しないならば、Ｓ２１に戻り次のデータの送信処理を行う。
【００６３】
一方、再送を行うことが通知されると（Ｓ２７；Ｙ）、再送制御手段２６は、Ｓ２４に戻り再送を行う。
【００６４】
以上のように本実施の形態２によれば、上記の構成により送信パケットの送信有効期限により送信エラー発生時に再送を行うかどうかを決定することができるので、送信可能な期限内のデータであれば、送信に失敗しても再送を行えばよく、送信可能な期限が切れたデータの場合、送信に失敗したときは再送を行わないようにすることでリアルタイム性を確保することができる。
【００６５】
なお、送信するパケット内に送信有効期限を持たせているが、例えば、パケット内ではなく、送信データ作成手段２４の内部メモリなどに送信有効期限を持たせ、この内部メモリ内の送信有効期限を使って再送指示手段２５は再送するかどうか決定してもよい。
【００６６】
（実施の形態３）
実施の形態１では、送信パケットに含まれるリアルタイムレベルまたは信頼レベルに応じてパケットの再送回数を算出し、その再送回数に達するか否かで再送を行うか否かを決定していた。一方、実施の形態３では、上位層からの特別の指示を受けることがなくても自動的に最適な再送回数を設定することができ、送信パケットに含まれるヘッダ情報を解析し、リアルタイム性の高いデータか信頼性の高いデータかに応じた再送回数を算出し、その再送回数に達するか否かで再送を行うか否かを決定する。
【００６７】
次に、本発明の実施の形態３のデータ通信装置の動作について、図８〜図１１に基づいて以下詳細に説明する。図８は、実施の形態３にかかるデータ通信装置の構成例を示すブロック図である。なお、図８において、データ送信手段４１、データ受信手段４２、送信結果判定手段４３、送信データ作成手段４４は、それぞれ実施の形態１のデータ送信手段１、データ受信手段２、送信結果判定手段３、送信データ作成手段４と同じであるので、その説明を省略する。また、実施の形態１と同様に、データ送信手段４１において送信した送信パケットは、送信結果判定手段４３において送信成功と判定されるまでもしくはデータ送信手段４１においてつぎに送信する送信パケットが送信されるまで、図示しない送信パケット保持部に保持されており、必要に応じて参照される。
【００６８】
図８において、４５は再送指示手段であり、送信パケットに含まれるヘッダ情報を解析し、その結果をもとにパケットの再送を決定する。４６は再送制御手段であり、送信に失敗したときは再送指示手段４５からの指示を受け、パケットの再送を行うよう制御を行う。４７はパケット解析手段であり、送信パケットのヘッダを解析しリアルタイム性の高いデータか、信頼性の高いデータかどうかを解析する。
【００６９】
つぎに、実施の形態３のデータ通信装置において作成される送信パケットについて図９、図１０を用いて説明する。
【００７０】
図９は、実施の形態３にかかる送信パケットの構成例を示す図であり、図１０は、実施の形態３にかかる送信パケットのヘッダの構成例を示す図である。
【００７１】
送信データ作成手段４４は、図９に示すような一般的な無線パケットの構成を備えた送信パケットを作成する。図９において、５１は送信する送信パケット全体を示し、５２は無線パケットのフレームヘッダ、５３はＩＰヘッダ、５４はＴＣＰやＵＤＰなどのトランスポート層のプロトコルヘッダ、５５は送信データ本体である。
【００７２】
実施の形態３にかかる送信パケットは、図１０に示すようなＬＡＮで送信されるパケットのＩＰヘッダの構成を簡易的に一部備えている。このＩＰヘッダのプロトコル番号部分には、このパケットが使用するトランスポート層のプロトコル識別子が記述されており、例えば、ＴＣＰパケットであれば”６”が設定され、ＵＤＰパケットであれば”１７”が設定されることが”ＲＦＣ１７００”という標準で決められている。
【００７３】
つぎに、上記のデータ通信装置の動作について説明する。図１１は、実施の形態３にかかるデータ通信装置の動作を示すフローチャートである。
【００７４】
まず、図示しないデータの送信を要求するアプリケーションなどの上位層は、送信を要求するにあたってＩＰヘッダとＴＣＰやＵＤＰなどのトランスポート層のプロトコルヘッダとを含む送信データを図８の送信データ作成手段４４に与えると、送信データ作成手段４４は、上位のアプリケーションなどから送信データを受け取る（Ｓ４１）。
【００７５】
送信データ作成手段４４は、受け取った送信データをもとに実際に送信する図８のような送信パケットを作成する（Ｓ４２）。
【００７６】
今から送信するパケットはまだ再送を行ってないので、再送制御手段４６は、再送実施回数を０に設定する（Ｓ４３）。
【００７７】
次に、データ送信手段４１は、アンテナを通して作成した送信パケットの送信を行う（Ｓ４４）。
【００７８】
次に、データ受信手段４２は、受信側から返されるＡＣＫ応答（応答信号）を待つ。送信結果判定手段４３は、実施の形態１と同様にこのＡＣＫ応答をあらかじめ決められたタイムアウト時間内に受け取ったかどうかにより、送信が成功したかどうかを判定する（Ｓ４５）。このタイムアウト時間は、実施の形態１のタイムアウト時間と同じである。
【００７９】
再送制御手段４６は、送信結果判定手段４３から送信に成功したことを通知されると（Ｓ４５；Ｙ）、終了するかしないかを判断して（Ｓ４９）、終了すると判断した場合は終了する。
【００８０】
一方、送信結果判定手段４３から送信に失敗したことを通知されると（Ｓ４５；Ｎ）、再送制御手段４６は、再送指示手段４５へ再送要求を行うので、再送制御手段４６から再送要求を受け取ると、再送指示手段４５は、送信に失敗した場合、再送指示手段４５は、パケット解析手段４７に送信パケットのヘッダ情報を解析させ、トランスポート層のプロトコルを判別し、例えば、ＴＣＰプロトコルを使用するパケットならば再送回数Ａを設定し、ＵＤＰプロトコルを使用するパケットならば再送回数Ａより少ないＡ−ａを算出する（Ｓ４７）。
【００８１】
具体的には、再送指示手段４５は、パケット解析手段４７から送信パケットがＴＣＰプロトコルを使用するかＵＤＰプロトコルを使用するかを受け取り、ＴＣＰプロトコルの場合、信頼性が高いとしてあらかじめ決められた回数の再送回数を算出し、ＵＤＰプロトコルの場合、信頼性は高くないものとみなしＴＣＰプロトコルのときより少ない再送回数を算出する。これらのプロトコルと再送回数との関係に特に決まりはないが、例えば、ＴＣＰのときは再送回数６回、ＵＤＰのときは再送回数３回などとすればよい。
【００８２】
次に、再送指示手段４５は、この送信パケットについて、実際の再送を行った回数である再送実施回数が、送信パケットのヘッダを解析した結果から算出した再送回数よりも小さいか否かを判断する（Ｓ４７）。
【００８３】
再送実施回数よりも再送回数が小さくなければ（Ｓ４７；Ｎ）、再送指示手段４５は、再送制御手段４６に再送しない旨を指示し、再送制御手段４６は、終了するかしないかを判断して（Ｓ４９）、終了すると判断した場合は終了する。終了しないならば、Ｓ４１に戻り次のデータの送信処理を行う。
【００８４】
一方、再送実施回数が再送回数より小さければ（Ｓ４７；Ｙ）、再送指示手段４５は、再送制御手段４６に再送を行う旨を指示し、再送制御手段４６は、このパケットの再送実施回数に１を加え（Ｓ４８）、Ｓ４４に戻り再送を行う。
【００８５】
以上のように本実施の形態３によれば、上記の構成により送信するデータのパケットヘッダの情報を解析するだけで送信パケットのリアルタイム性または信頼性をある程度把握することができ、この把握した結果から再送回数を決定することができるので、上位層から特別の指示を受けることがなくても自動的に最適な再送回数を設定することができ、既存のシステム上でもそのまま本発明を動作させることができる。
【００８６】
なお、上記実施の形態ではプロトコルの種類としてＴＣＰとＵＤＰのみの例を示したが、その他のプロトコルの場合も、そのプロトコルに対応した再送回数情報を持たせることで、プロトコルの種類に対応した再送回数を設定することができる。
【００８７】
なお、上記実施の形態１〜実施の形態３では、無線通信の規格として８０２．１１無線ＬＡＮを用いたが、再送を行うような通信インターフェースであれば、例えば、ｂｌｕｅｔｏｏｔｈなどの規格を用いても同様の効果が得られる。
【産業上の利用可能性】
【００８８】
以上のように、本発明にかかるデータ通信装置およびデータ通信方法は、通信メディアに無線を使用したデータ通信を行う場合に有用であり、特に、リアルタイム性の高い種類のデータと信頼性の高い種類のデータとが混在するデータ通信を行う場合に適している。
【図面の簡単な説明】
【００８９】
【図１】実施の形態１にかかるデータ通信装置の構成例を示すブロック図
【図２】実施の形態１にかかる送信パケットの構成例を示す図
【図３】再送回数を設定するテーブルの例を示す図
【図４】実施の形態１にかかるデータ通信装置の動作を示すフローチャート
【図５】実施の形態２にかかるデータ通信装置の構成例を示すブロック図
【図６】実施の形態２にかかる送信パケットの構成例を示す図
【図７】実施の形態２にかかるデータ通信装置の動作を示すフローチャート
【図８】実施の形態３にかかるデータ通信装置の構成例を示すブロック図
【図９】実施の形態３にかかる送信パケットの構成例を示す図
【図１０】実施の形態３にかかる送信パケットのヘッダの構成例を示す図
【図１１】実施の形態３にかかるデータ通信装置の動作を示すフローチャート
【符号の説明】
【００９０】
１、２１、４１    データ送信手段
２、２２、４２    データ受信手段
３、２３、４３    送信結果判定手段
４、２４、４４    送信データ作成手段
５、２５、４５    再送指示手段
６、２６、４６    再送制御手段
１１、３１、５１    送信パケット全体
１２    リアルタイムレベルまたは信頼レベルを示すパケットヘッダの部分
２７    タイマ
３２    送信有効期限を示すパケットヘッダの部分
４７    パケット解析手段
５２    フレームヘッダ
５３    ＩＰヘッダ
５４    ＴＣＰ／ＵＤＰヘッダ
５５    送信データ本体
【図１】
2007158495.tif 000003
【図２】
2007158495.tif 000004
【図３】
2007158495.tif 000005
【図４】
2007158495.tif 000006
【図５】
2007158495.tif 000007
【図６】
2007158495.tif 000008
【図７】
2007158495.tif 000009
【図８】
2007158495.tif 000010
【図９】
2007158495.tif 000011
【図１０】
2007158495.tif 000012
【図１１】
2007158495.tif 000013