JP3930842B2 - パケット送信装置 - Google Patents

パケット送信装置 Download PDF

Info

Publication number
JP3930842B2
JP3930842B2 JP2003319660A JP2003319660A JP3930842B2 JP 3930842 B2 JP3930842 B2 JP 3930842B2 JP 2003319660 A JP2003319660 A JP 2003319660A JP 2003319660 A JP2003319660 A JP 2003319660A JP 3930842 B2 JP3930842 B2 JP 3930842B2
Authority
JP
Japan
Prior art keywords
data
packet
transmission
stored
unit
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.)
Expired - Fee Related
Application number
JP2003319660A
Other languages
English (en)
Other versions
JP2005086753A (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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2003319660A priority Critical patent/JP3930842B2/ja
Publication of JP2005086753A publication Critical patent/JP2005086753A/ja
Application granted granted Critical
Publication of JP3930842B2 publication Critical patent/JP3930842B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Description

本発明は、所定のデータ(例えば、パケット)を送信するパケット送信装置に関し、特にパケット送信路に障害が発生した時にも、リアルタイム性を確保しつつ、パケットを失うことなく送信することのできるパケット送信装置に関する。
伝送路品質の劣化などの理由で通信遮断が生じたとき、送信できなかったパケットを記憶手段に蓄積し、通信が回復したときに再送するシステムは従来から存在する。
この記憶手段として、送信部に単純にFIFOを設けて通信遮断時にパケットを蓄積すれば、通信回復時にパケットを廃棄することなく順に送信することができる。この場合、伝送路品質の良いときは記憶手段に蓄積されることなくリアルタイムで伝送される。
また、パケット送信の成否を観測して記憶手段内のパケットを選択することにより、送信失敗を繰り返すパケットの優先度を低くすることもできる。
例えば、あるパケットの送信時に再送を繰り返した場合にはそのパケットの再送を中断して後続のパケットの送信を行えるようにする、パケット通信装置が知られている(例えば、特許文献1参照。)。
特開平10−117213号公報
前述のように、記憶手段として送信部に単純にFIFOを設けただけのシステムでは、通信回復時に蓄積されたパケットを蓄積した順序を保存して送信する。そのため、通信遮断期間中に蓄積されたパケットを送信し終えるには相応の時間を必要とするので、通信回復後もすぐには通常時のような遅延の小さいリアルタイム伝送に復帰することができない。特に、許容遅延量が小さいシステムでは、伝送品質が回復しても所望の伝送遅延特性に復帰するまでに大きな時間を要することとなる。この課題は特に通信遮断時間が大きいときに顕著に表れる。
また、前述の特許文献1に記載のパケット通信装置のように、再送を繰り返すパケットの優先度を下げることによりパケットの順序を入れ替えて送信することも可能であるが、その場合も通信遮断期間中に蓄積したパケットをすべて処理し終えてリアルタイム伝送に復帰するには相応の時間を必要とする。
本発明は、以上のような問題点を鑑みてなされたものであり、通信遮断時に蓄積したパケットを廃棄することなく、通信回復時には速やかにリアルタイム伝送に復帰できるパケット通信システムを実現することを目的とする。
上記の目的を達成するために、本発明の第1の発明の送信装置は、パケットを格納するメモリ部1と、FIFO2と、FIFO2から読み出したパケットをパケット送信路に送信する送信部3と、入力されたデータを送信用にパケット化する処理を行ない、FIFO2に蓄積されているパケット量が第1の所定量以下であるか否かによって該送信用パケットを上記メモリ装置又は上記FIFOへ書きこむ第1の信号処理部4と、FIFO2に蓄積されているパケット量が第2の所定量以下であれば上記メモリ部1に格納されたパケットを読み出してFIFO2に書き込む第2の信号処理部5と、送信部3から送信されたパケットに対するACK又はNACKを受信してパケットの送信の成否を判断する受信部6と、受信部6から送信成否を上記パケット送信部に通知する制御線7と、FIFO2に蓄積されているパケット量を第1の信号処理部4に通知する制御線8と、FIFO2に蓄積されているパケット量を第2の信号処理部6に通知する制御線9と、を備える。
本発明によると、通信遮断時にもパケットを失うことなく蓄積し、通信再開直後は通信遮断期間中に蓄積したパケットよりも通信遮断解消後にパケット化されたデータの方を優先して送信路に送信し、通信再開後に通信が安定し、蓄積中のパケットが十分少なくなりリアルタイムのパケットの送信を妨げなくなった時点で、蓄積してあった通信遮断時のパケットを送信することが可能になる。その結果、通信遮断時のパケットを廃棄することなく、通信再開時には即座にリアルタイムのパケットを送信する状態に復帰し、通信遮断時に蓄積しておいたパケットは通信が安定してから送信することができる。
以下、本発明の実施の形態を、図面を参照して説明する。
図1は、本発明の第1の実施の形態のパケット送信装置の全体構成を示すブロック図である。
第1の信号処理部4は、図示しないデータ生成装置からデータを受け取り、受け取ったデータをパケット化して、パケット化されたデータ(パケット)をメモリ部1又はFIFO2に送る。メモリ部1は、第1の信号処理部4からパケットを受け取り、パケットを記憶する記憶部として機能する。FIFO2は、第1の信号処理部4又は第2の信号処理部5からのパケットを受け取り、受け取ったパケットを所定の数だけ保持し、保持しているパケットのうち、最古のものを送信部3に送ることで、送信バッファとして機能する。
送信部3は、FIFO2から受け取ったパケットを、パケット送信路を経由して図示しない通信相手に送信する。送信部3のパケット送出レート(すなわち、本発明のパケット送信装置のパケット送信能力)は、第1の信号処理部4のパケット生成レートよりも大きくなっている。
受信部6は、パケット送信先からパケットが到達したか否かの確認メッセージ(ACK又はNACK)を受け取って、パケットが正しく送信されたか否かによって、パケット送信路の状態を判定する。
なお、本発明におけるパケット送信路は、パケットの送受信ができるものであればよいが、本発明はパケット送信路に障害が発生したときの動作に特徴があることから、無線通信路のような、通信状態が安定せず、通信の途絶が発生し得る送信路を使用する場合に好適である。
メモリ部1は、第1の信号処理部4から受け取ったパケットを一時的に格納し、格納したパケットを第2の信号処理部5に送る。第2の信号処理部5は、メモリ部1から送られたパケットを、FIFO2に送る。
また、受信部6と送信部3との間は、制御線7によって接続され、FIFO2と第1の信号処理部4との間は、制御線8によって接続され、FIFO2と第2の信号処理部5との間は、制御線9によって、それぞれ接続されている。
次に、以上のように構成された第1の実施の形態のパケット送信装置の動作を説明する。
第1の信号処理部4は、図示しないデータ生成装置からデータが逐次的に入力され、このデータが一定量たまったときにパケットを生成する。
また、第1の信号処理部4は、FIFO2に蓄積されているパケットの量を制御線8を通じて知る。そして、第1の信号処理部4は、FIFO2に蓄積されているパケットの量と第1の所定量(例えば、2個)との比較結果に基づいて、パケットをFIFO2へ書き込むか、メモリ部1に書き込むかを決定する。すなわち、FIFO2に蓄積されているパケットの量が第1の所定量以下であれば、パケットをFIFO2へ書き込む。一方、FIFO2に蓄積されているパケットの量が第1の所定量より多ければ、パケットをメモリ部1に書き込む。
第2の信号処理部5はFIFO2に蓄積されているパケットの量を第3の制御線9を通じて知る。そして、第2の信号処理部5は、FIFO2に蓄積されているパケットの量と第2の所定量との比較結果に基づいて、メモリ部1に格納されたパケットを読み出してFIFO2に書き込む。すなわち、FIFO2に蓄積されているパケットの量が第2の所定量以下であり、かつ、メモリ部1内にパケットが格納されていれば、メモリ部1に格納されたパケットを読み出してFIFO2に書き込む。なお、第2の所定量は第1の所定量よりも小さい値であり、“0”としてもよい。
送信部3は、FIFO2に格納されたパケットの最古のものから1つずつ読み出し、パケット送信路に送信する。送信部3から送信されたパケットを、図示しない通信相手が正しく受信した場合は、通信相手は受信部6に、正しく受信された旨を予め定めた信号(ACK)により通知する。また、通信相手が正しくパケットを受信できなかった場合も同様にその旨を受信部6に予め定めた信号(NACK)により通知する。
受信部6は、受信した信号がACK又はNACKのいずれであるかを判定し、パケット送信の正否を判定する判定部として機能する。このとき、受信部6は、送信部3がパケット送信路に送信したパケットの情報を予め送信部3から受け取っており、送信したパケットに対応するACK又はNACKを受信することによって、送信部3から送信されたパケットの送信の正否、すなわち、パケットが正しく送られたか否かを判定する。そして、受信部6は、制御線7を通じてパケット送信の正否の情報を送信部3に伝達する。
パケットの送信が正しく行われた(送信が成功した)場合には、送信部3は、FIFO2に格納されているパケットを新たに読み出し、該パケットをパケット送信路に送信する。パケットの送信が正しく行われなかった(送信が失敗した)場合には、送信部3は、FIFO2からパケットを読み出さず、送信が失敗したパケット(送信部3に備えられているキャッシュメモリに保持されているパケット)を、パケット送信路に再び送信する。
ここで、第2の所定量を0として設定した場合の、本発明の第1の実施の形態のパケット送信装置の動作を説明する。
パケット送信路に通信遮断が発生していない場合、すなわち、前述したように、送信部3がパケットを送信した結果、受信部6がACKを受信している場合には、第1の信号処理部4に入力されたデータより生成され、FIFO2に書き込まれたパケットは、直ちに、送信部3によってFIFO2から読み出され、パケット送信路に送信される。そのため、FIFO2にはパケットが蓄積されず、第1の信号処理部4に入力されたデータは、リアルタイムでパケット送信路を経て通信相手に送られる。
ここで、ひとたびパケット送信路に通信遮断が発生すると、受信部6はNACKを受信する。送信部3は、パケットが正しくパケット送信路に送信されないため、送信部3のキャッシュにあるパケットの再送処理を繰り返す。その間にも、第1の信号処理部4が生成したパケットはFIFO2に送られるので、通信遮断が解消しない場合は、FIFO2に未送信のパケットが蓄積され始める。そして、FIFO2内のパケットの量が第1の所定量を超えると、第1の信号処理部4は、制御線8を通じてFIFO2にパケットの量が第1の所定量を超えたことを知る。そして、第1の信号処理部4は、FIFO2に蓄積されたパケットの量が第1の所定量を超えた後には、生成したパケットを、FIFO2でなく、メモリ部1に書き込み、メモリ部1に記憶させる。
このとき、パケット送信路の通信遮断が解消するまではFIFO2に蓄積されているパケットの量は減少しない。従って、FIFO2に蓄積されているパケットの量が第2の所定量(“0”)以下になることがないので、通信遮断が解消する以前に、メモリ部1に書き込まれたパケットが、第2の信号処理部5によってFIFO2に書き込まれることはない。
やがて、パケット送信路の通信遮断が解消すると、受信部6は、パケット受信路からACKを受信するので、パケットが正しく送られたと判定し、送信部3にその旨を伝達する。送信部3は、パケットが正しく送られたことを知ると、次のパケットをFIFO2から読み出し、送信する。そして、送信部3によって読み出されパケット送信路に送信されることによって、FIFO2に蓄積されているパケットの量は減少を始める。
通信遮断が発生している間は、FIFO2内に蓄積されているパケットの量は、送信もされず、書き込みもされないので、常に第1の所定量である。ここで、通信遮断が解消すると、送信部3によってFIFO2のパケットが読み出されて送信される。そして、FIFO2に蓄積されているパケットの量が第1の所定量より1個でも少なくなると、第1の信号処理部4は、生成したパケットをメモリ部1ではなくFIFO2に直接書き込む。
そして、送信部3が、FIFO2に蓄積されている第1の所定量のパケット全てを送信し終えると、パケットをリアルタイムに送信する状態(リアルタイム通信)に復帰する。なお、この間も、FIFO2に蓄積されているパケットの量が第1の所定量より少ないので、第1の信号処理部4は生成したパケットをFIFO2に書き込む。
そして、FIFO2内に蓄積されているパケット量がさらに減少して、第2の所定量(すなわち0)になると、第2の信号処理部5がメモリ部1に記憶され蓄積されたパケットをFIFO2に書き込む。送信部3は、第1の信号処理部4又は第2の信号処理部5からFIFO2に書き込まれたパケットのうち、最古のものから順次パケット送信路に送信するので、パケットをリアルタイムに送信すると共に、メモリ部1に蓄積されたパケットも送信する。これにより、パケット伝送のリアルタイム性を確保しつつ、通信遮断時に蓄積したパケットを失うことなく送信することができる。
なお、各パケットにはタイムスタンプや一連の番号等が付されている。また、メモリ部1に一旦蓄積されたパケットには所定のフラグが付される。そのため、パケットを受信した通信相手は、パケットの順序を判定することによって、リアルタイムのパケットであるか、通信遮断等によって一旦メモリ部1に蓄積されたパケットであるかを識別することができる。
以上のように、パケット送信路に通信遮断が発生した際には、第1の信号処理部4が生成したパケットはメモリ部1に蓄積され、通信遮断が回復した後には、第1の信号処理部4が生成したパケットはリアルタイムでパケット送信路に送信することができる。このとき、第2の信号処理部5は、FIFO2にパケットが蓄積されていないときのみ(すなわち、FIFO2に書き込まれたパケットが送信部3によって送信され、さらに、第1の信号処理部4が生成した新たなパケットがFIFO2に書き込まれていないときのみ)、メモリ部1に蓄積されたパケットをFIFO2に書き込むので、通信遮断が回復した後に生成されたパケットの伝送のリアルタイム性は確保される。
次に、第2の所定量を“0”よりも大きく設定した場合の、本発明の第1の実施の形態のパケット送信装置の動作を説明する。
特に、前述した第2の所定量を“0”とした場合では、第1の信号処理部4に逐次データが入力され、常にパケットがFIFO2に書き込まれている状態では、通信遮断が解消した後でも、FIFO2のパケットの量が0にならない場合が生じ、いつまでも、メモリ部1に蓄積されたパケットが送信部3によって送信されないことが生じ得る。第2の所定量を“0”よりも大きく設定すると、このような場合にも、メモリ部1に蓄積されたパケットを送信部3によって送信することができる。
前述した第2の所定量が0である場合と同様に、パケット送信路に通信遮断が生じていない場合は、FIFO2にはパケットが蓄積されないため、第1の信号処理部4に入力されたデータより生成されたパケットは、そのままFIFO2に書き込まれ、FIFO2から送信部3によってFIFO2から読み出され、パケット送信路に送信される。そのため、FIFO2にはパケットが蓄積されず、第1の信号処理部4に入力されたデータは、リアルタイムでパケット送信路を経て通信相手に送られる。
ここで、ひとたびパケット送信路に通信遮断が発生すると、受信部6はNACKを受信する。送信部3は、パケットが正しくパケット送信路に送信されないため、送信部3のキャッシュにあるパケットの再送処理を繰り返す。その間にも、第1の信号処理部4が生成したパケットはFIFO2に送られるので、通信遮断が解消しない場合は、FIFO2に未送信のパケットが蓄積され始める。そして、FIFO2内のパケットの量が第1の所定量を超えると、第1の信号処理部4は、制御線8を通じてFIFO2にパケットの量が第1の所定量を超えたことを知る。そして、第1の信号処理部4は、FIFO2に蓄積されたパケットの量が第1の所定量を超えた後には、生成したパケットを、FIFO2でなく、メモリ部1に書き込む。
すなわち、NACKを受信することによって、データが正しく送信されない状態であると判定され、さらに、FIFO2内のパケットの量が第1の所定量を超えることを契機として、第1の信号処理部4は生成したパケットをメモリ部1に記憶させる。
このとき、パケット送信路の通信遮断が解消されるまではFIFO2に蓄積されているパケットの量は減少しない。従って、FIFO2に蓄積されているパケットの量が第2の所定量(“0”)以下になることがないので、通信遮断が解消する以前に、メモリ部1に書き込まれたパケットが、第2の信号処理部5によってFIFO2に書き込まれることはない。
やがて、パケット送信路の通信遮断が解消すると、受信部6は、パケット受信路からACKを受信するので、パケットが正しく送られたと判定し、送信部3にその旨を伝達する。送信部3は、パケットが正しく送られたことを知ると、次のパケットをFIFO2から読み出し、送信する。そして、送信部3によって読み出されパケット送信路に送信されることによって、FIFO2に蓄積されているパケットの量は減少を始める。
通信遮断が発生している間は、FIFO2内に蓄積されているパケットの量は、送信もされず、書き込みもされないので、常に第1の所定量である。そして、通信遮断が解消すると、送信部3によってFIFO2のパケットが読み出されて送信される。そして、FIFO2に蓄積されているパケットの量が第1の所定量より1個でも少なくなると、第1の信号処理部4は、生成したパケットをメモリ部1ではなくFIFO2に直接書き込む。
そして、FIFO2内に蓄積されているパケット量がさらに減少して、第2の所定量より小さくなると、第2の信号処理部がメモリ部1に蓄積されたパケットをFIFO2に書き込む。送信部3は、第1の信号処理部4又は第2の信号処理部5からFIFO2に書き込まれたパケットのうち、最古のものから順次パケット送信路に送信するので、パケットをリアルタイムに送信すると共に、メモリ部1に蓄積されたパケットも送信する。これにより、パケット伝送のリアルタイム性を確保しつつ、通信遮断時に蓄積したパケットを失うことなく送信することができる。
すなわち、ACKを受信することによって、データが正しく送信される状態であると判定され、さらに、FIFO2内のパケットの量が第2の所定量より小さくなることを契機として、送信部3は、第1の信号処理部4が新たに生成したパケット及びメモリ部1に記憶されたパケットを送信する。
この場合、通信遮断時にメモリ部1に蓄積したパケットを、通信遮断回復後に第1の信号処理部4が生成したパケットよりも先に送信する場合も生じるが、パケットにはタイムスタンプ等が付されているので、送信部3及び通信相手は、リアルタイムのパケットであるか、通信遮断等によって一旦メモリ部1に蓄積されたパケットであるかを識別することができる。なお、メモリ部1に蓄積されたデータ(又は、メモリ部1に保持されなかったデータ)にフラグを付加することによって、送信部3及び通信相手は、メモリ部1に蓄積されたデータであるか否かを識別することができる。
以上のように、パケット送信路に通信遮断が発生した際には、第1の信号処理部4が生成したパケットはメモリ部1に蓄積し、通信遮断が回復した後には、第1の信号処理部4が生成したパケットはリアルタイムでパケット送信路に送信することができる。このとき、第2の信号処理部5は、FIFO2に蓄積されるパケットの量が第2の所定量よりも小さいときのみ、メモリ部1に蓄積されたパケットをFIFO2に書き込むので、通信遮断が回復し、リアルタイムな伝送が可能な状態に復帰した後に、通信遮断時にメモリ部1に蓄積したパケットを効率的に送信することができる。
次に、本発明の第2の実施の形態のパケット送信装置について説明する。
第2の実施の形態のパケット送信装置は、第1の実施の形態のパケット送信装置の動作をソフトウェアによって実現したものである。なお、第1の実施の形態と同一の動作をする構成には同一の符号を付し、その説明は省略する。
図2は、第2の実施の形態のパケット送信装置の構成を示すブロック図である。
プロセッサ10は、図示しないデータ生成装置からデータを受け取り、該データをパケット化して、送信部3に送る。
このプロセッサ10は、生成したパケットを、リアルタイム伝送が必要な「1種蓄積パケット」とリアルタイム伝送が必要とされない「2種蓄積パケット」との2種類に分けて記憶する。それぞれのパケットは、生成した時刻、及び、生成の順序と共に、パケットの種別を判定可能に記憶される。また、プロセッサ10は、1種蓄積パケットの記憶量によってパケット生成及び記憶の動作を変更する。その基準として、第1、第2の2種の所定量を設定する。第2の所定量は第1の所定量より小さいものとし、第2の所定量を0とすることも可能である。
次に、第2の実施の形態のパケット送信装置の動作を説明する。
第2の実施の形態のパケット送信装置の動作は、逐次入力されるデータが1パケット分蓄積されたときに行なわれるパケット化処理、1種蓄積パケットの蓄積量が第2の所定量を超えたときに行なわれるパケット種別変更処理、及び、パケットを送信するためのパケット送信処理、の3つに大きく分けられる。
プロセッサ10は、パケット送信装置に逐次的に入力される入力データが1パケット分蓄積されたときに、パケットを生成する。そして、パケットの種別を決定して、生成したパケットを記憶する。すなわち、その時点でのパケットの蓄積量が第1の所定量を超えないときは1種蓄積パケットとして記憶し、パケットの蓄積量が第1の所定量以上であるときには2種蓄積パケットとして記憶する。
また、1種蓄積パケットの蓄積量が第2の所定量よりも小さい場合には、2種蓄積パケット中から最古のものを抽出し、パケット種別を変更して、蓄積時刻をその時点(種別変更時点)に書き換え、新たに1種蓄積パケットとして記憶する。
次に、プロセッサ10に蓄積された1種蓄積パケットは、送信部3からパケット送信路を経由してパケット受け取り側に送られる。プロセッサ10は、この送信したパケットに対するACKを受信したとの通知を受信部6から受け取ったときには、最後に送信したパケットを送信済みとして削除し、プロセッサ10から1種蓄積パケットの中で最古のものを読み出し、次の送信パケットとして送信部3に送る。
一方、受信部6がNACKを受信したとの通知を受け取ったときには、プロセッサ10は、最後に送信したパケットは送信失敗として削除せず、最後に送信したパケットを次の送信パケットとして送信部3に再び送る。そして、送信部3は、プロセッサ10によって設定されたパケットを送信する。
図3は、第2の実施の形態のパケット送信装置の処理を示すフローチャートである。
プロセッサ10には、図示しないデータ生成装置からデータが逐次的に入力されている。そして、このデータが一定量(すなわち、1パケット分)蓄積されたか否かを判定する(処理1001)。データが1パケット分蓄積されていない場合には、処理S1003に移行し、1パケット分のデータが蓄積されるまでこの処理を繰り返す。データが1パケット分蓄積されたと判定すると、処理1002に移行する。
処理1002では、蓄積されたデータからパケットを生成するパケット化処理(図4)を行う。このパケット化処理では、生成されたパケットを、プロセッサ10内部のパケットの蓄積量に応じて、1種蓄積パケット又は2種蓄積パケットとして、パケットを記憶する。
次に、プロセッサ10に蓄積されている1種蓄積パケットの量が、第2の所定量以上であるか否かを判定する(処理1003)。1種蓄積パケットの蓄積量が第2の所定量よりも小さければ、処理1004に移行し、第2の所定量以上であれば、処理1004を行うことなく処理1005に移行する。
処理1004では、プロセッサ10に蓄積されている1種蓄積パケットを、2種蓄積パケットに変更するパケット種別変更処理(図5)を行う。
処理1005では、プロセッサ10に蓄積されている1種蓄積パケットのうち最古のものを送信部3に送り、パケット送信路に送信するパケット送信処理(図6)を行う。
図4は、プロセッサ10の行うパケット化処理(図3の処理1002)の詳細を示すフローチャートである。
プロセッサ10は、逐次的に入力されるデータが一定量(1パケット分)蓄積されると、蓄積されたデータからパケットを生成する(処理2001)。
次に、プロセッサ10に蓄積されているパケットのうち、1種蓄積パケットの量が、第1の所定量(例えば、2個)より大きいか否かを判定する(処理2002)。第1の所定量よりも大きければ処理2003に移行し、生成したパケットを2種蓄積パケットとして記憶する。一方、第1の所定量以下であれば、処理2004に移行し、生成したパケットを1種蓄積パケットとして記憶する。
図5は、プロセッサ10の行うパケット種別変更処理(図3の処理1004)の詳細を示すフローチャートである。
プロセッサ10は、蓄積されているパケットのうち、2種蓄積パケットの最古のもの、すなわち、2種蓄積パケットに付された蓄積時刻の情報が最古のものを抽出する(処理3001)。
次に、抽出した2種蓄積パケットの蓄積時刻を現在の時刻に更新し、1種蓄積パケットをして変更して記憶する(処理3002)。
このようすることで、1種蓄積パケットの量が第1の所定量より小さいときに、既に蓄積されている2種蓄積パケットを1種蓄積パケットに変更するので、該1種蓄積パケットを速やかに送信部3に送り、パケット送信路に送信することができる。
図6は、パケット送信処理(図3の処理1005)の詳細を示すフローチャートである。
プロセッサ10は、1種蓄積パケットのうち最古のものを抽出して読み出して、送信部3に送る(処理4001)。
送信部3は、プロセッサ10から受け取ったパケットをパケット送信路に送信する(処理4002)。
次に、受信部6は、送信部3の送信したパケットに対してACK又はNACKのいずれが送られてきたかを判定する(処理4003)。NACKが送られてきた場合には、パケットが正常に伝送されていないと判定し、処理4001で既に読み込んでいるパケットを再び送信部3に送り、パケットを再送する(処理4002、4003)。
一方、受信部6が、ACKが送られてきたと判定した場合には、プロセッサ10は、送信部に送ったパケットを削除して(処理4004)、本フローチャートを終了し、図3のフローチャートに復帰する。
以上の処理によると、パケット送信路に通信遮断が起きていないときには、受信部6は、送信部3が送信したパケットに対するACKを受信する。そのため、パケットは順次送信される。プロセッサ10に逐次入力されるデータから生成されるパケットは、1種蓄積パケットとして記憶され、時刻の古いものから順次、リアルタイムに送信される。
しかし、ひとたびパケット送信路に通信遮断が起きると、受信部6は、NACKを受信するので、プロセッサ10は、先に送信部3に送ったパケットを、再度送信部3に送る。送信部3は、このパケットを再送する処理を行う。そのため、プロセッサ10に蓄積されている1種蓄積パケットの最古のものは削除されず、1種蓄積パケットの量が増加し始める。そして、1種蓄積パケットの量が第1の所定量を超えると、プロセッサ10は、生成されたパケットを2種蓄積パケットとして記憶する。生成されたパケットは、通信遮断が解消し、1種蓄積パケットの量が第1の所定量よりも小さくなるまでは、2種蓄積パケットとして蓄積される。
パケット送信路の通信遮断が解消すると、受信部6は、ACKを受信する。そして、送信部3は新たに1種蓄積パケットを読み込む。プロセッサ10では、ACKが確認された1種蓄積パケットは削除され、1種蓄積パケットの量は減少し始める。そして、1種蓄積パケットの量が第1の所定量より少なくなると、プロセッサ10は、それ以降に生成するパケットを、1種蓄積パケットとして記憶する。この1種蓄積パケットは、通信遮断期間中に生成して蓄積された2種蓄積パケットよりも優先して送信されるようになる。
やがて、通信遮断解消以前に生成された1種蓄積パケットを送信し、1種蓄積パケットの量が減少すると、遅延の少ないリアルタイムなパケット送信状態に復帰する。
そして、1種蓄積パケットの量がさらに減少し、第2の所定量より小さくなると、通信遮断中に生成され2種蓄積パケットとして記憶されたパケットが、パケット種別変更処理(図5)によって1種蓄積パケットとして改めて記憶される。1種蓄積パケットは、蓄積時刻順に送信部3によって読み込まれ送信されるので、通信遮断中に2種蓄積パケットとして記憶したパケットも失われることなく、通信遮断解消後にパケット送信路に送信することができる。
本発明は、入力されたデータを、リアルタイムで送信すると共に、通信遮断時に入力されたデータを失うことなく送信相手に送信するデータ転送装置に用いられる。特に、送信路に無線通信を用いる医療機器等に好適である。
本発明の第1の実施の形態の、パケット送信装置の全体構成を示すブロッック図である。 本発明の第2の実施の形態の、パケット送信装置の構成を示すブロック図である。 本発明の第2の実施の形態の、パケット送信装置の処理を示すフローチャートである。 本発明の第2の実施の形態の、プロセッサ10が行うパケット化処理の詳細を示すフローチャートである。 本発明の第2の実施の形態の、プロセッサ10が行うパケット種別変更処理の詳細を示すフローチャートである。 本発明の第2の実施の形態の、パケット送信装置が行うパケット送信処理の詳細を示すフローチャートである。
符号の説明
1 メモリ装置
2 FIFO
3 パケット送信部
4 第1の信号処理部
5 第2の信号処理部
6 受信部
7、8、9 制御線
10 プロセッサ

Claims (9)

  1. データを生成する第1の信号処理部と、
    前記第1の信号処理部によって生成されたデータを記憶する送信バッファと、
    前記前記送信バッファに記憶されたデータを送信する送信部と、
    前記送信部が送信したデータが正しく送信されたか否かを判定する判定部と、
    前記第1の信号処理部によって生成されたデータを記憶する記憶部と、
    前記記憶部に記憶されたデータを前記送信バッファに転送する第2の信号処理部と、
    を備えたデータ送信装置において、
    前記送信部は、前記判定部によってデータが正しく送信されたと判定された場合には、前記送信バッファからデータを読み込み該データを送信し、前記判定部によってデータが正しく送信されなかったと判定された場合には、正しく送信されなかったと判定されたデータを再送し、
    前記第1の信号処理部は、前記送信バッファに記憶されているデータ量と第1の所定量とを比較して、当該データ量が第1の所定量より大きい場合は、生成したデータを前記記憶部に記憶させ、当該データ量が第1の所定量以下である場合は、生成したデータを前記送信バッファに記憶させ、
    前記第2の信号処理部は、前記送信バッファに記憶されているデータ量と第2の所定量とを比較して、当該データ量が第2の所定量以下である場合は、前記記憶部に記憶されたデータを前記送信バッファに転送し、
    前記第2の所定量は前記第1の所定量よりも小さい値であることを特徴とするデータ送信装置。
  2. 前記第2の所定量は0であり、
    前記第2の信号処理部は、前記送信バッファにデータが記憶されていない場合に、前記記憶部に記憶されたデータを前記送信バッファに記憶させることを特徴とする請求項1に記載のデータ送信装置。
  3. 前記送信部は、前記第1の信号処理部によって送信バッファに記憶されたデータ及び前記第2の信号処理装置によって記憶部から送信バッファに転送されたデータを送信することを特徴とする請求項1又は2に記載のデータ送信装置。
  4. 前記記憶部に記憶されたデータ又は前記記憶部に記憶されなかったデータの少なくとも一方には、所定のフラグが付加されることによって、前記送信部が、前記記憶部に記憶されたデータであるか否かを識別可能としたことを特徴とする請求項1から3に記載のいずれか一つに記載のデータ送信装置。
  5. 前記第1の信号処理部が生成したデータに一連番号が付加されることによって、前記送信部が、前記データの順序を識別可能としたことを特徴とする請求項1から3に記載のいずれか一つに記載のデータ送信装置。
  6. データを生成し、該データを第1のデータ又は第2のデータとして記憶するプロセッサと、前記プロセッサによって生成され、第1のデータとして記録されたデータを送信する送信部と、を備えたデータ送信装置に用いられるデータ送信方法であって、
    前記送信部によって送信されたデータが正しく送信されたか否かを判定する第1の手順と、
    前記生成された第1のデータの量と第1の所定量とを比較して、当該データ量が第1の所定量より大きい場合は、生成されたデータを第2のデータとして記憶し、当該データ量が第1の所定量以下である場合は、生成されたデータを第1のデータとして記憶する第2の手順と、
    前記第1のデータの量と第2の所定量とを比較して、前記第1のデータの量が前記第2の所定量より小さい場合は、前記記憶された第2のデータを第1のデータに変更して記憶する第3の手順と
    前記第1の手順によってデータが正しく送信されたと判定された場合には、前記送信部に第1のデータを送り、前記第1の手順によってデータが正しく送信されなかったと判定された場合には、正しく送信されなかったと判定されたデータを再送する第4の手順と、を含み、
    前記第2の所定量は前記第1の所定量よりも小さい値であることを特徴とするデータ送信方法。
  7. 前記第2の所定量は0であり、
    前記第3の手順は、前記第1のデータが記憶されていない場合に、前記第2のデータを第1のデータに変更して記憶することを特徴とする請求項6に記載のデータ送信方法。
  8. 前記第2のデータとして記憶されたデータ又は前記第2のデータとして記憶されなかったデータの少なくとも一方には、所定のフラグが付加されることによって、前記送信部が、前記第2のデータとして記憶されたデータであるか否かを識別可能としたことを特徴とする請求項6又は7に記載のデータ送信方法。
  9. 前記プロセッサが生成したデータに一連番号が付加されることによって、前記送信部が、前記データの順序を識別可能としたことを特徴とする請求項6又は7に記載のデータ送信方法。
JP2003319660A 2003-09-11 2003-09-11 パケット送信装置 Expired - Fee Related JP3930842B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003319660A JP3930842B2 (ja) 2003-09-11 2003-09-11 パケット送信装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003319660A JP3930842B2 (ja) 2003-09-11 2003-09-11 パケット送信装置

Publications (2)

Publication Number Publication Date
JP2005086753A JP2005086753A (ja) 2005-03-31
JP3930842B2 true JP3930842B2 (ja) 2007-06-13

Family

ID=34418548

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003319660A Expired - Fee Related JP3930842B2 (ja) 2003-09-11 2003-09-11 パケット送信装置

Country Status (1)

Country Link
JP (1) JP3930842B2 (ja)

Also Published As

Publication number Publication date
JP2005086753A (ja) 2005-03-31

Similar Documents

Publication Publication Date Title
KR101139996B1 (ko) 중복 확인으로 데이터 흐름 제어
KR100772528B1 (ko) 유/무선 네트워크에서 효율적인 패킷 재전송 방법 및 장치
JP4495085B2 (ja) 通信システム、通信装置、およびデータの再送制御方法
US7496038B2 (en) Method for faster detection and retransmission of lost TCP segments
JP4153502B2 (ja) 通信装置及び論理リンク異常検出方法
CN107592185B (zh) 一种适用于网络编码传输控制协议的前向重传方法
JP2006287925A (ja) エラー回復機構およびそれを備えるネットワーク要素
JP2005520374A (ja) Tcp/ipに対する変更
JP2009089197A (ja) 中継装置
JP4244159B2 (ja) 受信装置、通信システムおよびプログラム
JP5091463B2 (ja) 電文送受信システム、電文送受信方法、電文送信装置、電文受信装置およびプログラム
JP2006191368A (ja) ネットワーク伝送装置
JP6547973B2 (ja) ストリーム制御の方法およびシステム
JP2005143076A (ja) パケット通信装置、パケット通信方法、データ受信装置およびデータ受信方法
JP3930842B2 (ja) パケット送信装置
JPH0685852A (ja) 再送機能付きバッファ装置
JP3950865B2 (ja) Atm通信システム
JP2007324700A (ja) 伝送制御方法
US6957374B1 (en) Method of acknowledging receipt of data packets
JP2008099139A (ja) 通信方法
US7764624B2 (en) Methods and devices for preventing protocol stalling
JP4755036B2 (ja) 再送制御方法、再送制御装置および通信装置
JP2004241872A (ja) 情報通信方法および中継装置
JP2006237968A (ja) 通信システムおよび通信方法
JP2004349783A (ja) 移動体通信方法及びシステム

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20051128

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20051213

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060213

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20060314

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060515

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060706

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20060720

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20061212

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070213

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: 20070306

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070309

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees