伝送装置、伝送方法及び制御プログラム
【課題】フレームの廃棄予定時刻が当該フレームの送出予定時刻以前に到達するフレームを予め廃棄し、バッファを効率的に使用することができる伝送装置を提供する。
【解決手段】伝送装置10は、許容遅延時間をフレームの受信時刻に加算して、当該フレームの廃棄予定時刻を算出すると共に、蓄積バッファ5にフレームが格納される度に又は蓄積バッファ5からフレームが読み出される度に、当該フレームの受信時刻又は送出時刻及び連続するフレーム間の送出時間の間隔に基づき、蓄積バッファ5に格納された各フレームの送出予定時刻を算出する順次バッファ選択部6と、フレームの廃棄予定時刻が当該フレームの送出予定時刻以前に到達する場合に、バッファに次のフレームが格納される前に又はバッファから次のフレームが読み出される前に、廃棄予定時刻が送出予定時刻以前に到達するフレームをバッファから廃棄する送信/廃棄制御部5eと、を備える。
【解決手段】伝送装置10は、許容遅延時間をフレームの受信時刻に加算して、当該フレームの廃棄予定時刻を算出すると共に、蓄積バッファ5にフレームが格納される度に又は蓄積バッファ5からフレームが読み出される度に、当該フレームの受信時刻又は送出時刻及び連続するフレーム間の送出時間の間隔に基づき、蓄積バッファ5に格納された各フレームの送出予定時刻を算出する順次バッファ選択部6と、フレームの廃棄予定時刻が当該フレームの送出予定時刻以前に到達する場合に、バッファに次のフレームが格納される前に又はバッファから次のフレームが読み出される前に、廃棄予定時刻が送出予定時刻以前に到達するフレームをバッファから廃棄する送信/廃棄制御部5eと、を備える。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、伝送路から受信したフレームを、複数のバッファのうち一のバッファに格納し、当該バッファから読み出して、他の伝送路に送出する伝送装置、伝送方法及び制御プログラムに関する。
【背景技術】
【0002】
音声や映像等を伝送するリアルタイム性が高いサービスでは、伝送装置におけるフレームの遅延時間(遅延量)に対する短縮の要求が強く、伝送装置内におけるフレームの滞留が許容される遅延時間(以下、許容遅延時間と称す)が設定されている。このため、伝送装置は、フレームを受信してから送信するまでの処理の遅延時間が、許容遅延時間を超過すると、フレームの有効性がなくなるために、許容遅延時間を超過したフレームを廃棄している。これを遅延廃棄と称する。
【0003】
例えば、従来のフレーム転送装置は、複数のFIFOメモリのうちの1つ以上のFIFOメモリそれぞれに対応づけられて設けられた、対応するFIFOメモリの先頭に新たなフレームが格納された時点からの時間を計測する計時手段を備える。また、従来のフレーム転送装置は、計時手段のうちのいずれかの計時手段による計測時間が所定の滞留許容時間を越えた場合に、その計時手段に対応するFIFOメモリの先頭に位置するフレームを廃棄するフレーム廃棄手段を備える(例えば、特許文献1参照)。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2008−235988号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
ところで、複数の利用者からのフレームを伝送する伝送装置においては、ユーザ間で平等性を確保するために、ユーザ別にバッファを設けて、各バッファから順々にフレームを送出することがある。しかし、ユーザ別にバッファを設けると、利用者や情報量の増加時に、各バッファにおける送信のタイミングが減るため、各バッファに多数のフレームが格納されることになる。その結果、各バッファに格納の余地が無くなり、新たに受信したフレームが廃棄されてしまうことがある。これをオーバーフローと称する。
【0006】
又、特許文献1が開示するフレーム転送装置は、フレームがFIFOメモリからなるクラスの読出し順の先頭に並んだ時点からの時間を計測し、その時間が所定のタイムアウト時間を経過するまで、その先頭に並ぶフレームを廃棄することができない。このため、クラスのフレームの蓄積量が最大となる輻輳状態においては、そのクラスに書き込むべきフレームを新たに受信した場合に、そのクラスに書き込むことができず、そのフレームをオーバーフローにより廃棄してしまうことになる。すなわち、従来のフレーム転送装置は、その後に、計測時間が所定のタイムアウト時間を経過して廃棄されるフレームがクラス内にある場合でも、後続のフレームをオーバーフローにより廃棄してしまう。
そこで、本発明は、オーバーフローによるフレームの廃棄を防止することができる伝送装置を提供するものである。
【課題を解決するための手段】
【0007】
伝送装置は、バッファに格納されるフレームの廃棄予定時刻を決定する廃棄予定時刻決定手段と、フレームの送出順序を決定する送出順序決定手段と、決定した送出順序に基づき、バッファに格納された各フレームの送出予定時刻を算出する送出予定時刻算出手段とを備える。また、伝送装置は、送出予定時刻と廃棄予定時刻とに基づき、廃棄予定時刻が送出予定時刻以前に到達するフレームを廃棄する廃棄制御手段を備える。
【発明の効果】
【0008】
開示の伝送装置によれば、オーバーフローによりフレームが廃棄されることを防止することができる。
【図面の簡単な説明】
【0009】
【図1】第1の実施形態に係る伝送装置の概略構成の一実施例を示すブロック図である。
【図2】図1に示す伝送装置における処理動作の一実施例を示すフローチャートであり、(a)はフレームを受信してからフレームを蓄積バッファに格納するまでの処理動作を示し、(b)はフレームを蓄積バッファから読み出してから送出するまでの処理動作を示す。
【図3】図1に示す伝送装置における順次予測処理の一実施例を示すフローチャートである。
【図4】図3に示すフローチャートの続きを示すフローチャートである。
【図5】図4に示すフローチャートの続きを示すフローチャートである。
【図6】図1に示す伝送装置における順次予測処理に対する比較例を説明するための説明図である。
【図7】図1に示す伝送装置における順次予測処理の一実施例を説明するための説明図である。
【図8】第2の実施形態に係る伝送装置の概略構成の一実施例を示すブロック図である。
【図9】図8に示す伝送装置の順次予測修正処理における蓄積バッファの格納状態の変更前の一実施例を説明するための説明図である。
【図10】図9に示す説明図における順次予測処理結果の変更が生じる格納位置の一実施例を説明するための説明図である。
【図11】図9に示す説明図における第1バッファに新規格納フレームが格納された場合の順次予測修正処理の一実施例を説明するための説明図である。
【図12】図9に示す説明図における第2バッファに新規格納フレームが格納された場合の順次予測修正処理の一実施例を説明するための説明図である。
【図13】図9に示す説明図における第3バッファに新規格納フレームが格納された場合の順次予測修正処理の一実施例を説明するための説明図である。
【図14】図9に示す説明図における第4バッファに新規格納フレームが格納された場合の順次予測修正処理の一実施例を説明するための説明図である。
【図15】第3の実施形態に係る伝送装置における処理動作の一実施例を説明するための説明図である。
【発明を実施するための形態】
【0010】
ここで、本発明は多くの異なる形態で実施可能である。したがって、下記の実施形態の記載内容のみで解釈すべきではない。また、実施形態の全体を通して同じ要素には同じ符号を付けている。
【0011】
実施形態では、主に装置について説明するが、いわゆる当業者であれば明らかな通り、本発明はコンピュータで使用可能なプログラム、方法としても実施できる。また、本発明は、ハードウェア、ソフトウェア、又は、ソフトウェア及びハードウェアの実施形態で実施可能である。
プログラムは、ハードディスク、CD−ROM(Compact Disc Read Only Memory)、DVD−ROM(Digital Versatile Disc Read Only Memory)、光記憶装置又は磁気記憶装置等の任意のコンピュータ可読媒体に記録できる。さらに、プログラムはネットワークを介した他のコンピュータに記録することができる。
【0012】
(第1の実施形態)
図1において、伝送装置10は、一の伝送路20から受信したフレーム(データを送る単位の別称としての、パケットやセル等を含む)を、複数のバッファのうち一のバッファに格納し、当該バッファから読み出して、他の伝送路30に送出する。尚、伝送装置10としては、例えばイントラネットとインターネットとの間を接続するものが想定される。しかし、本発明の伝送装置10は、これに限定されるものではない。
【0013】
また、伝送装置10は、大別すると、受信ポート1と、時刻監視部2と、時刻情報付与部3と、バッファ振分部4と、蓄積バッファ5と、順次バッファ選択部6と、送信許可制御部7と、送信許可生成部8と、送信ポート9とを備える。
【0014】
受信ポート1は、伝送路20を介して、他の通信装置や通信端末から送出されるフレームを受信する機能を有し、一又は複数の受信ポート1が伝送装置10に配設される。
時刻監視部2は、伝送装置10の各構成要素が共通して使用する時刻の情報(以下、時刻情報と称す)を管理する。
【0015】
時刻情報付与部3は、受信ポート1から入力されるフレームに対して、時刻監視部2から入力される現在時刻の情報(以下、現在時刻情報と称す)を受信時刻の情報(以下、受信時刻情報と称す)としてフレームに付加する。なお、受信時刻情報は、フレームに確保した格納領域に格納させることや、フレームを伝送する信号線とは別の信号線を並設してフレームの伝送に受信時刻情報を並走させること等が考えられる。
【0016】
バッファ振分部4は、時刻情報付与部3から入力される、受信時刻情報を付加されたフレームに対して、複数の蓄積バッファ5の中から一つを選択して振り分ける。なお、蓄積バッファ5を選択する条件は、対象フレームの送信元(他の通信装置等の送信装置)、対象フレームを受信した受信ポート1の番号、若しくは対象フレームの優先度、又はこれらの組合せ等である。また、対象フレームは、各蓄積バッファ5に設定された条件に基づき、条件に一致する一の蓄積バッファ5に出力される。
【0017】
蓄積バッファ5は、伝送装置10に複数配設され、各蓄積バッファ5が、バッファ格納制御部5a、フレームバッファ5b、フレーム情報管理部5c、廃棄判定部5d及び送信/廃棄制御部5eをそれぞれ備える。なお、蓄積バッファ5の各構成要素は、自蓄積バッファ5内の他の構成要素を対象にして処理することとなる。尚、図1における蓄積バッファ5は、ユーザごとに設けられた、優先度が等しいバッファである。しかし、図1には図示されていないが、伝送装置10は、蓄積バッファ5よりも優先度が高い蓄積バッファ又は優先度が低い蓄積バッファを備えている。
【0018】
バッファ格納制御部5aは、バッファ振分部4から入力されたフレームを、フレームバッファ5bに格納すると共に、フレームを格納したことをフレーム情報管理部5cに通知する。
フレームバッファ5bは、キュー(Queue)やFIFO(First In, First Out)とも称され、例えば、メモリを用いることが考えられる。
【0019】
フレーム情報管理部5cは、フレームバッファ5bに格納されている、各フレームの受信時刻、格納順番若しくはフレーム長、又はフレーム数等に関する情報(以下、フレーム管理情報と称す)を記憶する。なお、フレーム管理情報は、フレームバッファ5bに格納するフレームが固定長フレームであれば、少なくとも各フレームの受信時刻及び格納順番の情報であり、可変長フレームであれば、少なくとも各フレームの受信時刻、格納順番及びフレーム長の情報である。また、フレーム情報管理部5cは、バッファ格納制御部5aがフレームバッファ5bにフレームを格納したこと、並びに、送信/廃棄制御部5eがフレームバッファ5bからフレームを送信及び廃棄したことを契機として、フレーム管理情報を更新する。また、フレーム情報管理部5cは、フレームバッファ5bにフレームが存在する場合に、順次バッファ選択部6に対して、フレームバッファ5bに格納されるフレームの送信を要求する。
【0020】
さらに、フレーム情報管理部5cは、順次バッファ選択部6により指定された格納順番に対応するフレームが存在すれば、そのフレームの受信時刻情報を廃棄判定部5dに通知する機能を有する。
【0021】
順次バッファ選択部6は、フレーム情報管理部5cにより送信要求を行っている蓄積バッファ5のうち、予め設定されたルールに基づいて、一の蓄積バッファ5を選択し、選択情報を送信許可生成部8に通知する。なお、予め設定されたルールとしては、ラウンドロビンや絶対優先(SP:Strict Priority)等がある。
【0022】
また、順次バッファ選択部6は、蓄積バッファ5にフレームが格納される度に、当該フレームの受信時刻(現在時刻)及び連続するフレーム間の送出時間の間隔(以下、送出間隔と称す)に基づき、蓄積バッファ5に格納された各フレームの送出予定時刻を算出する。また、順次バッファ選択部6は、蓄積バッファ5からフレームが読み出される度に、当該フレームの送出時刻(現在時刻)及び送出間隔に基づき、蓄積バッファ5に格納された各フレームの送出予定時刻を算出する。
【0023】
すなわち、順次バッファ選択部6は、予め設定されたルールに基づき、複数の蓄積バッファ5のうち一の蓄積バッファ5を選択する。そして、順次バッファ選択部6は、選択した蓄積バッファ5におけるフレームの格納順番を若い(フレームの受信時刻が古い)順に指定して、格納順番に関する情報(以下、格納順番情報と称す)をフレーム情報管理部5cに出力する。また、順次バッファ選択部6は、指定した格納順番に対応するフレームの送出予定時刻を算出して、算出した送出予定時刻の情報(以下、送出予定時刻情報と称す)を廃棄判定部5dに出力する。このように、順次バッファ選択部6は、フレームの送出順序を決定する送出順序決定手段と、決定した送出順序に基づき、蓄積バッファ5に格納された各フレームの送出予定時刻を算出する送出予定時刻算出手段とに相当することになる。
【0024】
また、順次バッファ選択部6は、廃棄判定部5dによりフレームの廃棄の要求が出力された場合に、当該廃棄要求の対象であるフレームの次の格納順番であるフレームを指定して、格納順番情報をフレーム情報管理部5cに出力する。また、順次バッファ選択部6は、廃棄要求の対象であるフレームの送出予定時刻情報を、次の格納順番であるフレームの送出予定時刻情報として廃棄判定部5dに出力する。また、順次バッファ選択部6は、廃棄判定部5dにより廃棄要求が出力されなかった場合に、予め設定されたルールに基づき、当該廃棄要求の判定対象であるフレームを格納するバッファの次のバッファを選択し、当該次のバッファに格納されたフレームを指定して、当該フレームの格納順番情報をフレーム情報管理部5cに出力する。また、順次バッファ選択部6は、廃棄要求の判定対象であるフレームの送出予定時刻に、送出間隔を加算して、指定したフレームの送出予定時刻情報として廃棄判定部5dに出力する。
【0025】
また、順次バッファ選択部6は、指定した格納順番に対応するフレームが選択した蓄積バッファ5に存在しない場合に、予め設定されたルールに基づき、当該選択した蓄積バッファ5の次の蓄積バッファ5を選択する。
【0026】
廃棄判定部5dは、許容遅延時間の情報(以下、許容遅延時間情報と称す)を記憶し、許容遅延時間情報とフレーム情報管理部5cから入力されるフレームの受信時刻情報とに基づき、許容遅延時間に受信時間を加算して当該フレームの廃棄予定時刻を算出する。また、廃棄判定部5dは、フレームの廃棄予定時刻及び送出予定時刻に基づき、当該フレームに対する廃棄の要否を判定し、当該フレームに対する廃棄が必要であると判定した場合に、当該フレームに対する廃棄の要求を送信/廃棄制御部5eに出力する。すなわち、廃棄判定部5dは、算出したフレームの廃棄予定時刻と順次バッファ選択部6から入力される当該フレームの送出予定時刻とを比較して、廃棄予定時刻が送出予定時刻以前に到達する場合に、当該フレームに対する廃棄の要求を送信/廃棄制御部5eに通知する。また、廃棄判定部5dは、送信/廃棄制御部5eに廃棄要求を通知した場合に、フレームを廃棄したことを順次バッファ選択部6に通知し、送信/廃棄制御部5eに廃棄要求を通知しなかった場合に、フレームを廃棄しなかったことを順次バッファ選択部6に通知する。
【0027】
なお、本実施形態に係る廃棄判定部5dは、各蓄積バッファ5の内部に配置しているが、蓄積バッファ5の外部に配置し、複数又は全ての蓄積バッファ5に対して、集中的に管理し、フレームの廃棄の判定を行わせてもよい。
【0028】
また、許容遅延時間は、伝送装置10の設計時に予め設定された固定値や、伝送装置10の管理者により設定される任意の値であり、全ての蓄積バッファ5に共通の値や、蓄積バッファ5毎に任意に設定した値である。
【0029】
また、許容遅延時間情報は、廃棄判定部5dに記憶させているが、時刻監視部2又はフレーム情報管理部5cに記憶させ、時刻監視部2又はフレーム情報管理部5cにより、受信時刻に許容遅延時間を加算して廃棄予定時刻を算出してもよい。この場合に、時刻監視部2又はフレーム情報管理部5cは、順次バッファ選択部6により指定された格納順番に対応するフレームがフレームバッファ5bに存在すれば、そのフレームの廃棄予定時刻情報を廃棄判定部5dに通知することになる。すなわち、廃棄判定部5d、時刻監視部2又はフレーム情報管理部5cは、蓄積バッファ5に格納されるフレームの廃棄予定時刻を決定する廃棄予定時間決定手段に相当することになる。
【0030】
送信許可制御部7は、フレームの送出間隔等の送出予定時刻を特定するために必要な情報(以下、送出予定時刻特定情報と称す)を管理し、順次バッファ選択部6からの要求に基づき、送出予定時刻特定情報を順次バッファ選択部6に通知する。また、送信許可制御部7は、送信許可生成部8から通知される、送信ポート9に対するフレームの送信を開始するタイミング又はフレームの送信を完了するタイミングに基づき、次のフレームの送信が可能となるタイミングを決定する。また、送信許可制御部7は、決定したタイミングに合わせて、送信を許可する要求(以下、送信許可要求と称す)を送信許可生成部8に対して発行する。なお、送信許可要求が発行される時間間隔は、フレームの送出間隔でもある。
【0031】
送信許可生成部8は、送信許可制御部7が送信ポート9に対する送信許可要求を発行している場合に、送信/廃棄制御部5eに対してフレームの送信を許可する通知(以下、送信許可通知と称す)を発行する。
【0032】
送信/廃棄制御部5eは、送信許可生成部8から送信許可通知が発行された場合に、フレームバッファ5b内に格納されたフレームのうち、格納順番の若い先頭のフレームを読み出し、送信許可生成部8を介して、送信ポート9に出力する。また、送信/廃棄制御部5eは、送信許可生成部8にフレームを出力(送信ポート9からフレームを送出)したことを、フレーム情報管理部5cに通知する。
【0033】
また、送信/廃棄制御部5eは、廃棄判定部5dから廃棄を要求する通知(以下、廃棄要求通知と称す)が入力された場合に、廃棄要求の対象であるフレームをフレームバッファ5bから廃棄すると共に、フレームを廃棄したことをフレーム情報管理部5cに通知する。すなわち、送信/廃棄制御部5eは、フレームの廃棄予定時刻が当該フレームの送出予定時刻以前に到達する場合に、フレームバッファ5bに次のフレームが格納される前に又はフレームバッファ5bから次のフレームが読み出される前に、該当フレームを廃棄する。
送信ポート9は、伝送路30を介して、他の通信装置や通信端末に対してフレームを送出する機能を有し、一又は複数の送信ポート9が伝送装置10に配設される。
【0034】
つぎに、本実施形態に係る伝送装置10における処理動作について説明する。
まず、伝送路20から受信したフレームを蓄積バッファ5に格納するまでの処理動作について、図2(a)を用いて説明する。
受信ポート1は、フレームを受信すると時刻情報付与部3に出力する(ステップS1)。
時刻情報付与部3は、時刻監視部2から入力される現在時刻情報を受信時刻情報としてフレームに付与し、フレームをバッファ振分部4に出力する(ステップS2)。
【0035】
バッファ振分部4は、予め設定された条件(例えば、受信ポート1の番号)に基づき、複数の蓄積バッファ5のうち、一の蓄積バッファ5を選択して、選択した蓄積バッファ5のバッファ格納制御部5aにフレームを出力する(ステップS3)。
【0036】
バッファ格納制御部5aは、フレームバッファ5bにフレームを格納すると共に、フレームを格納したこと(フレームの受信時刻情報及び格納順番情報を出力し、可変長フレームであれば、フレーム長も含む)を、フレーム情報管理部5cに通知する(ステップS4)。
【0037】
フレーム情報管理部5cは、バッファ格納制御部5aから入力されたフレームの受信時刻情報及び格納順番情報(可変長フレームであれば、フレーム長も含む)を記憶する(ステップS5)。
【0038】
つぎに、蓄積バッファ5からフレームを読み出し、伝送路30に送出するまでの処理動作について、図2(b)を用いて説明する。
各蓄積バッファ5のフレーム情報管理部5cは、自フレームバッファ5bにフレームが存在する場合に、順次バッファ選択部6に対して、自フレームバッファ5bに格納されるフレームの送信を要求する(ステップS101)。
【0039】
順次バッファ選択部6は、フレーム情報管理部5cにより送信要求を行っている蓄積バッファ5のうち、予め設定されたルール(例えば、ラウンドロビン)に基づいて、一の蓄積バッファ5を選択し、選択情報を送信許可生成部8に通知する(ステップS102)。
【0040】
送信許可生成部8は、送信許可制御部7が送信ポート9に対する送信許可要求を発行している場合に、フレームの送信許可通知を送信/廃棄制御部5eに出力する(ステップS103)。なお、送信許可要求は、フレームの送信が可能となるタイミングに合わせて発行されている。
【0041】
送信/廃棄制御部5eは、送信許可生成部8から送信許可通知が入力されると、フレームバッファ5b内に格納されたフレームのうち、格納順番の若い先頭のフレームを読み出す(ステップS104)。
【0042】
そして、送信/廃棄制御部5eは、フレームバッファ5bから読み出したフレームを送信許可生成部8に出力すると共に、送信許可生成部8にフレームを出力したことを、フレーム情報管理部5cに通知する(ステップS105)。
【0043】
フレーム情報管理部5cは、読み出されたフレームの受信時刻情報を削除し、残存するフレームの格納順番情報に対して格納順番を繰り上げて修正し、フレーム管理情報を更新する(ステップS106)。
【0044】
また、送信許可生成部8は、送信/廃棄制御部5eから入力されたフレームを送信ポート9に出力する。そして、送信ポート9は、送信許可生成部8から入力されたフレームを伝送路30に送出する(ステップS107)。
【0045】
つぎに、各蓄積バッファ5に格納された各フレームの送出順番及び送出時刻を予測して、許容遅延時間を経過して廃棄となるフレームを、予め廃棄する処理(以下、順次予測処理と称す)動作について、図3〜図5を用いて説明する。
【0046】
各蓄積バッファ5のフレーム情報管理部5cは、蓄積バッファ5にフレームが格納されたこと又は蓄積バッファ5からフレームが読み出されたことによる、フレーム管理情報を更新したことを、順次バッファ選択部6に通知する(ステップS201)。
【0047】
順次バッファ選択部6は、各蓄積バッファ5のフレーム情報管理部5cに対して、フレームバッファ5bの先頭にフレームが格納されているか(フレームバッファ5bにフレームが存在するか)の情報(格納順番又はフレーム数)を収集する(ステップS202)。
【0048】
そして、順次バッファ選択部6は、予め設定されたルール(例えば、ラウンドロビン)に基づいて、フレームの読み出しを許可する蓄積バッファ5を選択し、先頭のフレームを指定して、指定した格納番号情報をフレーム情報管理部5cに出力する(ステップS203)。
【0049】
フレーム情報管理部5cは、指定された格納番号情報に対応する先頭のフレームの受信時刻情報を廃棄判定部5dに出力する(ステップS204)。
また、順次バッファ選択部6は、送信許可制御部7に送出予定時刻特定情報を要求し、送出予定時刻特定情報を取得する(ステップS205)。
【0050】
そして、順次バッファ選択部6は、時刻監視部2から入力される現在時刻に、送出予定時刻特定情報から得られるフレームの送出間隔を加算して、送出予定時刻を算出する(ステップS206)。なお、フレームが格納されたことを契機として本処理が開始された場合は、ステップS206における現在時刻が当該フレームの送信時刻に対応する。また、フレームが読み出されたことを契機として本処理が開始された場合は、伝送装置10によるフレームの受信タイミングと送信タイミングとが同期している場合に、ステップS206における現在時刻が当該フレームの受信時刻に対応する。
【0051】
順次バッファ選択部6は、算出した送出予定時刻を、選択した蓄積バッファ5のフレームバッファ5bに格納された先頭のフレームの送出予定時刻情報として、選択した蓄積バッファ5の廃棄判定部5dに出力する(ステップS207)。
【0052】
廃棄判定部5dは、記憶する許容遅延時間情報と、フレーム情報管理部5cから入力されるフレームの受信時刻情報とに基づき、フレームの受信時刻に許容遅延時間を加算して当該フレームの廃棄予定時刻を算出する(ステップS208)。
【0053】
廃棄判定部5dは、算出したフレームの廃棄予定時刻と、順次バッファ選択部6から入力される当該フレームの送出予定時刻とを比較して、廃棄予定時刻が送出予定時刻以前に到達するか否かを判断する(ステップS209)。
【0054】
ステップS209において、フレームの廃棄予定時刻が送出予定時刻以前に到達すると判断した場合に、廃棄判定部5dは、当該フレームに対する廃棄の要求を送信/廃棄制御部5eに出力する。また、廃棄判定部5dは、フレームを廃棄したことを順次バッファ選択部6に通知する(ステップS210)。
【0055】
送信/廃棄制御部5eは、廃棄判定部5dから入力される廃棄要求に基づき、該当するフレームをフレームバッファ5bから廃棄すると共に、フレームを廃棄したことを、フレーム情報管理部5cに通知する(ステップS211)。
【0056】
フレーム情報管理部5cは、廃棄されたフレームの受信時刻情報を削除し、残存するフレームの格納順番情報に対して格納順番を繰り上げて修正し、フレーム管理情報を更新する(ステップS212)。
【0057】
また、順次バッファ選択部6は、廃棄判定部5dからのフレームを廃棄したことの通知に基づき、現時点で選択している蓄積バッファ5に対して、フレームバッファ5bの先頭にフレームが格納されているかの情報を収集する(ステップS213)。
【0058】
そして、順次バッファ選択部6は、現時点で選択している蓄積バッファ5のフレームバッファ5bの先頭にフレームが格納されているか否かを判断する(ステップS214)。
【0059】
ステップS214において、先頭にフレームが格納されていないと判断した場合に、順次バッファ選択部6は、予め設定されたルールに基づいて、フレームの読み出しを許可する蓄積バッファ5を選択する。また、順次バッファ選択部6は、選択した蓄積バッファ5に対して、フレームバッファ5bの先頭にフレームが格納されているかの情報を収集し(ステップS215)、ステップS214に戻る。
【0060】
また、ステップS214において、先頭にフレームが格納されていると判断した場合に、順次バッファ選択部6は、当該フレームに対して廃棄判定部5dによる廃棄判定が済んでいるか否かを判断する(ステップS216)。
【0061】
ステップS216において、フレームの廃棄判定が済んでいないと判断した場合に、順次バッファ選択部6は、当該フレームの格納番号情報をフレーム情報管理部5cに出力する(ステップS217)。
フレーム情報管理部5cは、順次バッファ選択部6から入力された格納番号情報に対応するフレームの受信時刻情報を廃棄判定部5dに出力する(ステップS218)。
【0062】
廃棄判定部5dは、記憶する許容遅延時間情報と、フレーム情報管理部5cから入力されるフレームの受信時刻情報とに基づき、フレームの受信時刻に許容遅延時間を加算して当該フレームの廃棄予定時刻を算出し(ステップS219)、ステップS209に戻る。
【0063】
また、ステップS216において、フレームの廃棄判定が済んでいると判断した場合に、順次バッファ選択部6は、当該フレームがフレームバッファ5bにおける最後尾(格納順番が最後)のフレームである否かを判断する(ステップS220)。
【0064】
また、ステップS220において、最後尾のフレームではないと判断した場合に、順次バッファ選択部6は、当該フレームに対して次の格納順番であるフレームを指定し(ステップS221)、ステップS216に戻る。
【0065】
また、ステップS220において、最後尾のフレームであると判断した場合に、順次バッファ選択部6は、全ての蓄積バッファ5における全てのフレームに対して、廃棄判定部5dによる廃棄判定が済んでいるか否かを判断する(ステップS222)。
【0066】
ステップS222において、全ての蓄積バッファ5における全てのフレームに対して、廃棄判定部5dによる廃棄判定が済んでいないと判断した場合には、ステップS215に戻る。
【0067】
また、ステップS222において、全ての蓄積バッファ5における全てのフレームに対して、廃棄判定部5dによる廃棄判定が済んでいると判断した場合には、順次予測処理を終了する。
【0068】
また、前述したステップS209において、フレームの廃棄予定時刻が送出予定時刻以前に到達しないと判断した場合に、廃棄判定部5dは、フレームを廃棄しないことを順次バッファ選択部6に通知する(ステップS223)。
【0069】
順次バッファ選択部6は、予め設定されたルールに基づいて、フレームの読み出しを許可する次の蓄積バッファ5を選択する(ステップS224)。
そして、順次バッファ選択部6は、選択した蓄積バッファ5に対して、フレームバッファ5bの先頭にフレームが格納されているかの情報を収集する(ステップS225)。
【0070】
順次バッファ選択部6は、現時点で選択している蓄積バッファ5のフレームバッファ5bの先頭にフレームが格納されているか否かを判断する(ステップS226)。
【0071】
ステップS226において、先頭にフレームが格納されていないと判断した場合には、ステップS224に戻る。
【0072】
また、ステップS226において、先頭にフレームが格納されていると判断した場合に順次バッファ選択部6は、当該フレームに対して廃棄判定部5dによる廃棄判定が済んでいるか否かを判断する(ステップS227)。
【0073】
ステップS227において、フレームの廃棄判定が済んでいないと判断した場合に、順次バッファ選択部6は、当該フレームの格納番号情報をフレーム情報管理部5cに出力する(ステップS228)。
【0074】
フレーム情報管理部5cは、順次バッファ選択部6から入力された格納番号情報に対応するフレームの受信時刻情報を廃棄判定部5dに出力する(ステップS229)。
また、順次バッファ選択部6は、送信許可制御部7に送出予定時刻特定情報を要求し、送出予定時刻特定情報を取得する(ステップS230)。なお、伝送装置10に入力されるフレームが、固定長フレームであり、フレームの送出間隔が一定であるならば、順次バッファ選択部6が、現時点で保持している送出予定時刻特定情報(送出間隔)に、送出間隔を加算して、新たな送出予定時刻特定情報としてもよい。
【0075】
そして、順次バッファ選択部6は、ステップS206において取得した現在時刻に、ステップS230において取得した送出予定時刻特定情報から得られるフレームの送出間隔を加算して、送出予定時刻を算出する(ステップS231)。
【0076】
順次バッファ選択部6は、算出した送出予定時刻を、ステップS228において出力した格納番号情報に対応するフレームの送出予定時刻情報として、選択した蓄積バッファ5の廃棄判定部5dに出力し(ステップS232)、ステップS219に進む。
【0077】
また、ステップS227において、フレームの廃棄判定が済んでいると判断した場合に、順次バッファ選択部6は、当該フレームがフレームバッファ5bにおける最後尾(格納順番が最後)のフレームである否かを判断する(ステップS233)。
【0078】
ステップS233において、最後尾のフレームではないと判断した場合に、順次バッファ選択部6は、当該フレームに対して次の格納順番であるフレームを指定し(ステップS234)、ステップS227に戻る。
【0079】
また、ステップS233において、最後尾のフレームであると判断した場合に、順次バッファ選択部6は、全ての蓄積バッファ5における全てのフレームに対して、廃棄判定部5dによる廃棄判定が済んでいるか否かを判断する(ステップS235)。
【0080】
ステップS235において、全ての蓄積バッファ5における全てのフレームに対して、廃棄判定部5dによる廃棄判定が済んでいないと判断した場合には、ステップS224に戻る。
【0081】
また、ステップS235において、全ての蓄積バッファ5における全てのフレームに対して、廃棄判定部5dによる廃棄判定が済んでいると判断した場合には、順次予測処理を終了する。
【0082】
つぎに、本実施形態に係る順次予測処理について、具体例を挙げて説明する。
まず、順次予測処理を説明するにあたり、比較例として、滞留時間が許容遅延時間を超過するまでフレームを廃棄しない(順次予測処理を行わない)場合について、図6を用いて説明する。
【0083】
なお、図6においては、説明を容易にするために、伝送装置が受信するフレームを、ATM(Asynchronous Transfer Mode)セル等の固定長のフレームとし、連続する送出フレーム(セル)の最小送出間隔を1フレームとして、送信ルールをラウンドロビンとする。
【0084】
また、図6において、Tn(n=1、2、・・・)は時刻情報であり、現在時刻をT0とし、1フレームを送出するために必要な時間を単位として、現在時刻(T0)からの経過時刻をT1、T2、T3・・・とする。
【0085】
また、図6では、伝送装置のバッファ数を4つ(第1バッファ、第2バッファ、第3バッファ、第4バッファ)とし、各バッファの蓄積可能なフレーム数(バッファ容量)を4つとして、各バッファに格納されるフレーム毎に網掛けの種類を変えて示している。なお、各フレーム内に示した番号は、各フレームを識別するために便宜的に付与した識別番号であり、バッファに格納された各フレームの下に示した時刻情報Tn(n=1、2、・・・)は、受信時刻に許容遅延時間を加算して算出される廃棄予定時刻である。
【0086】
また、図6では、時刻T0の時点で、各バッファに格納されたフレーム数が、順に2、1、1、4つであり、第4バッファに振り分けられるフレーム(識別番号9、10,11)を、時刻T1、T2、T3の時点で、最小送出間隔で連続して受信している場合を示している。
【0087】
まず、時刻T0で、ラウンドロビンに基づいて第1バッファを選択して、第1バッファの先頭に格納された識別番号1のフレームを送出した場合には、送信ポートへの最小送出間隔を1フレームとしているために、次のフレームの送出時刻はT2となる。また、時刻T2では、ラウンドロビンに基づいて第2バッファを選択して、第2バッファの先頭に格納された識別番号3のフレームを送出する。
【0088】
ここで、第4バッファに着目すると、時刻T1で、識別番号9のフレームを受信するのであるが、第4バッファに格納されたフレーム数が4つであり、蓄積可能なバッファ容量がないために、識別番号9のフレームを廃棄(オーバーフロー)することになる。
【0089】
また、時刻T2では、第4バッファの先頭に格納された識別番号2のフレームが、廃棄予定時刻であるために、識別番号2のフレームを送出することなく、廃棄することになる。これにより、第4バッファに格納されたフレーム数は3つとなり、第4バッファは、1フレーム分の空き容量を有するために、時刻T2で受信した識別番号10のフレームを格納することができる。なお、第4バッファに格納された識別番号6、識別番号7及び識別番号8のフレームは、識別番号2のフレームの廃棄により、格納順番がそれぞれ繰り上がり、識別番号6のフレームが第4バッファの先頭になる。
【0090】
また、時刻T3では、識別番号11のフレームを受信するのであるが、第4バッファに格納されたフレーム数が4つであり、蓄積可能なバッファ容量がないために、識別番号11のフレームを廃棄(オーバーフロー)することになる。
【0091】
さらに、時刻T6では、第4バッファの先頭に格納された識別番号6のフレームが、廃棄予定時刻であるために、識別番号6のフレームを送出することなく、廃棄することになる。
【0092】
なお、図6(b)は、以上の処理により、送出処理されたフレームとその送出時刻とを上段に示し、廃棄予定時刻に達して廃棄処理されたフレームとその廃棄時刻を中段に示し、オーバーフローにより廃棄されたフレームとその廃棄時刻を下段に示している。
【0093】
このように、新たに受信する識別番号9及び識別番号11のフレームの廃棄は、識別番号2及び識別番号6のフレームが廃棄予定時刻に到達して廃棄されるにも関わらず、識別番号2及び識別番号6のフレームが廃棄予定時刻まで格納されることが原因で発生する。したがって、本実施形態に係る順次予測処理を行わないことは、廃棄するフレーム数が増加して、転送効率が悪化することとなり、ひいては、廃棄されたフレームが再送されることにより、伝送装置で処理するトラフィックが増加することになる。
【0094】
これに対し、図6(a)に示す条件において、本実施形態に係る順次予測処理を行う場合について、図7を用いて説明する。なお、以下の説明においては、各蓄積バッファ5(フレームバッファ5b)を、第1バッファ、第2バッファ、第3バッファ又は第4バッファとそれぞれ称して説明する。
【0095】
時刻T0で、識別番号1のフレームを送出したことにより、第1バッファのフレーム情報管理部5cは、フレーム管理情報における格納順番を繰り上げ、先頭のフレームを識別番号4のフレームに更新する。
また、次の送出予定時刻は、送出間隔が1フレームであるために、識別番号1のフレームの送出時刻T0と送出間隔を加算して時刻T2となる。
【0096】
送信ルールはラウンドロビンであり、第2バッファの先頭にフレームが格納されているために、順次バッファ選択部6は、次にフレーム送出を許可するバッファとして、第2バッファを選択する。
【0097】
ここで、送出予定時刻はT2であり、第2バッファの先頭にある識別番号3のフレームの廃棄予定時刻はT3であるため、送出予定時刻T2は廃棄予定時刻T3よりも早い。
このため、送信/廃棄制御部5eは、識別番号3のフレームの廃棄は行わずに、次に送信許可するフレームとして第2バッファに格納された識別番号3のフレームを選択し、順次予測としては、次の予測を行うことになる。
【0098】
次の予測は、先の送出予定時刻T2と送出間隔を加算して時刻T4とし、送信ルールはラウンドロビンであり、第3バッファの先頭にフレームが格納されているために、順次バッファ選択部6は、次にフレーム送出を許可するバッファとして、第3バッファを選択する。
【0099】
ここで、送出予定時刻はT4であり、第3バッファの先頭にある識別番号5のフレームの廃棄予定時刻はT5であるため、送出予定時刻T4は廃棄予定時刻T5よりも早い。このため、送信/廃棄制御部5eは、識別番号5のフレームの廃棄は行わずに、次に送信許可するフレームとして第3バッファに格納された識別番号5のフレームを選択し、順次予測としては、次の予測を行うことになる。
【0100】
次の予測は、先の送出予定時刻T4と送出間隔を加算して時刻T6とし、送信ルールはラウンドロビンであり、第4バッファの先頭にフレームが格納されているために、順次バッファ選択部6は、次にフレーム送出を許可するバッファとして、第4バッファを選択する。
【0101】
ここで、送出予定時刻はT6であり、第4バッファの先頭にある識別番号2のフレームの廃棄予定時刻はT2であるため、送出予定時刻T6は廃棄予定時刻T2よりも遅い。このため、廃棄判定部5dは、識別番号2のフレームを廃棄対象と判定し、送信/廃棄制御部5eに廃棄を要求する。
【0102】
送信/廃棄制御部5eは、廃棄判定部5dからの廃棄要求に基づき、識別番号2のフレームを第4バッファから廃棄する。これにより、第4バッファの2番目に格納されている識別番号6のフレームが先頭のフレームに繰り上がり、このフレームが第4バッファにおける順次予測の対象となる。なお、フレームの廃棄であるために、送出予定時刻T6の更新は行わない。
【0103】
ここで、送出予定時刻はT6であり、第4バッファの先頭にある識別番号6のフレームの廃棄予定時刻はT6であるため、送出予定時刻T6は廃棄予定時刻T6と同時である。このため、廃棄判定部5dは、識別番号6のフレームを廃棄対象と判定し、送信/廃棄制御部5eに廃棄を要求する。
【0104】
送信/廃棄制御部5eは、廃棄判定部5dからの廃棄要求に基づき、識別番号6のフレームを第4バッファから廃棄する。これにより、第4バッファの2番目に格納されている識別番号7のフレームが先頭のフレームに繰り上がり、このフレームが第4バッファにおける順次予測の対象となる。なお、フレームの廃棄であるために、送出予定時刻T6の更新は行わない。
【0105】
ここで、送出予定時刻はT6であり、第4バッファの先頭にある識別番号7のフレームの廃棄予定時刻はT7であるため、送出予定時刻T6は廃棄予定時刻T7よりも早い。このため、送信/廃棄制御部5eは、識別番号7のフレームの廃棄は行わずに、次に送信許可するフレームとして第4バッファに格納された識別番号7のフレームを選択し、順次予測としては、次の予測を行うことになる。
【0106】
次の予測は、先の送出予定時刻T6と送出間隔を加算して時刻T8とし、送信ルールはラウンドロビンであり、第1バッファの先頭にフレームが格納されているために、順次バッファ選択部6は、次にフレーム送出を許可するバッファとして、第1バッファを選択する。
【0107】
ここで、送出予定時刻はT8であり、第1バッファの先頭にある識別番号4のフレームの廃棄予定時刻はT4であるため、送出予定時刻T8は廃棄予定時刻T4よりも遅い。このため、廃棄判定部5dは、識別番号4のフレームを廃棄対象と判定し、送信/廃棄制御部5eに廃棄を要求する。
【0108】
送信/廃棄制御部5eは、廃棄判定部5dからの廃棄要求に基づき、識別番号4のフレームを第1バッファから廃棄する。なお、フレームの廃棄であるために、送出予定時刻T8の更新は行わない。
【0109】
つぎに、順次バッファ選択部6は、選択した第1バッファに対して2番目(繰り上がるために先頭)に格納されたフレームのフレーム情報を要求するが、第1バッファには2番目のフレームが格納されていないため、第1バッファは次の予測の対象から除外される。
【0110】
次の予測は、送信ルールはラウンドロビンであり、第4バッファの先頭にフレームが格納されているために、順次バッファ選択部6は、次にフレーム送出を許可するバッファとして、第4バッファを選択する。
【0111】
ここで、送出予定時刻はT8であり、第4バッファの先頭にある識別番号8のフレームの廃棄予定時刻はT8であるため、送出予定時刻T8は廃棄予定時刻T8と同時である。このため、廃棄判定部5dは、識別番号8のフレームを廃棄対象と判定し、送信/廃棄制御部5eに廃棄を要求する。
【0112】
送信/廃棄制御部5eは、廃棄判定部5dからの廃棄要求に基づき、識別番号8のフレームを第1バッファから廃棄する。
全てのバッファにおける全てのフレームに対して、廃棄判定部5dによる廃棄判定が済んだために、順次予測処理を終了する。
【0113】
以上の順次予測処理は、時刻T0から時刻T1までの間に行われ、図7に示すように、送出処理されたフレームとその送出時刻とを上段に示し、廃棄予定時刻に達する前に廃棄処理されたフレームとその廃棄時刻を中段に示している。また、図7においては、オーバーフローによる廃棄が回避されたフレーム(識別番号9、識別番号11)とその廃棄予定時刻を下段に参考のため点線で示している。
【0114】
このように、第4バッファは、T2の時点で、3フレーム分の空き容量が存在し、フレームを格納することができ、前述の比較例においては、廃棄されていた識別番号9及び識別番号11を廃棄することなく、第1バッファに格納することが可能である。
【0115】
以上のように、本実施形態に係る伝送装置10は、伝送路30に送出されるまでに、滞留時間が許容遅延時間を超過するフレームを廃棄しないことにより発生する、オーバーフローによる後続データの廃棄を抑制することができるという作用効果を奏する。特に、本実施形態に係る伝送装置10は、蓄積バッファ5を効率的に使用することができ、伝送装置10に搭載する蓄積バッファ5の蓄積容量を削減することができるという作用効果を奏する。
【0116】
(第2の実施形態)
図8において、予測結果管理部11は、順次バッファ選択部6により予測された各フレームの送出順番及び送出予定時刻に関する情報(以下、送出順番情報と称す)を、順次予測が終了する度に、順次バッファ選択部6から入力されて記憶する。また、予測結果管理部11は、フレームバッファ5bからフレームが読み出された場合に、記憶した送出順番情報に対して各フレームの送出順番を繰り上げて更新する。
【0117】
順次バッファ選択部6は、フレームが送出される度に、フレームが送出されたことが送信許可制御部7から通知される。また、順次バッファ選択部6は、次に送出を許可するフレームを特定するための送出順番情報を予測結果管理部11から取得し、次に送出を許可するフレームの情報を送信許可制御部7に通知する。
【0118】
また、順次バッファ選択部6は、フレームバッファ5bにフレームが格納される度に、新規格納バッファにおける当該フレーム(以下、新規格納フレームと称す)の格納順番情報をフレーム情報管理部5cから取得する。なお、新規格納バッファとは、フレームバッファ5bにフレームが格納された時点における、当該フレームが格納されたフレームバッファ5bである。また、順次バッファ選択部6は、フレームバッファ5bにフレームが格納される度に、各バッファにおける各フレームの格納順番情報をフレーム情報管理部5cから取得する。また、順次バッファ選択部6は、フレームバッファ5bにフレームが格納される度に、各フレームの送出順番情報を予測結果管理部11から取得する。
【0119】
また、順次バッファ選択部6は、新規格納バッファの優先順位及び新規格納フレームの格納順番、予測現在位置バッファの優先順位及び予測現在位置フレームの格納順番並びに各バッファの優先順位及び各フレームの格納順番に基づき、新規格納フレームの送出順番を算出する。なお、予測現在位置フレームとは、順次予測を実施する度に予測されたフレームの送出順番が最後のフレームである。また、予測現在位置バッファとは、順次予測を実施する度に選択した最後のフレームバッファ5bであり、予測現在位置フレームを格納するフレームバッファ5bである。また、順次バッファ選択部6は、算出した新規格納フレームの送出順番の次の送出順番以降であるフレームに対して、送出予定時刻を算出して、廃棄判定部5dに出力する。
【0120】
また、順次バッファ選択部6は、新規格納バッファに新規格納フレームが格納されたことによる、フレームの送出順番に変更が生じる場合に、予測結果管理部11に記憶された送出順番情報を、新たに算出した送出順番及び送出予定時刻に更新する。
【0121】
なお、この第2の実施形態に係る伝送装置10においては、予測結果管理部11を新たに備え、順次バッファ選択部6に新たな機能を付加したところのみが、第1の実施形態と異なるところである。後述する予測結果管理部11及び順次バッファ選択部6による作用効果以外は、第1の実施形態と同様の作用効果を奏する。
【0122】
つぎに、新規格納バッファに新規格納フレームが格納されたことによる、順次予測処理結果に対する変更の有無の判定と判定結果に応じた処理(以下、順次予測修正処理と称す)について、図9〜図15を用いて説明する。
【0123】
なお、以下の説明においては、伝送装置10の蓄積バッファ5(フレームバッファ5b)の数を4つとし、各蓄積バッファ5(フレームバッファ5b)を、第1バッファ、第2バッファ、第3バッファ又は第4バッファとそれぞれ称して説明する。
【0124】
また、以下の説明においては、直前に送信を許可されたバッファを「送出完了位置バッファ」と称し、送出完了位置バッファの次に最優先に選択されるバッファを「予測開始位置バッファ」と称して説明する。また、以下の説明においては、予測現在位置バッファに格納された予測現在位置フレームの格納順番を「予測現在位置格納順番」と称して説明する。
【0125】
また、図9〜図14においては、説明を容易にするために、伝送装置10が受信するフレームを、ATMセル等の固定長のフレームとし、連続する送出フレーム(セル)の最小送出間隔を1フレームとする。
【0126】
また、図9〜図14においては、各バッファ(第1バッファ、第2バッファ、第3バッファ、第4バッファ)の蓄積可能なフレーム数(バッファ容量)を4つとして、各バッファに格納されるフレーム毎に網掛けの種類を変えて示している。なお、各フレーム内に示した番号は、各フレームを識別するために便宜的に付与した識別番号であり、バッファに格納された各フレームの下に示した時刻情報Tn(n=1、4、5、・・・)は、受信時刻に許容遅延時間を加算して算出される廃棄予定時刻である。
【0127】
さらに、図9においては、識別番号4及び識別番号9のフレームが第1バッファに格納され、識別番号5及び識別番号11のフレームが第3バッファに格納され、識別番号7、識別番号8及び識別番号10のフレームが第4バッファに格納されている。
【0128】
また、図9においては、直前に、第1バッファから識別番号3のフレームを送出し、送信ルールをラウンドロビンとして、第1バッファ、第2バッファ、第3バッファ及び第4バッファに格納された全てのフレームについて順次予測処理が完了した状態を図示している。
【0129】
また、図9においては、直前に、第1バッファ(送出完了位置バッファとなる)を選択してフレームを送出しているために、次に最優先に選択されるバッファ(予測開始位置バッファ)は、ラウンドロビンに基づいて第2バッファとなる。また、図9においては、順次予測処理により、第4バッファに格納された識別番号10のフレームに対して、送出順番が最後のフレーム(予測現在位置フレーム)として予測されているために、第4バッファが予測現在位置バッファとなる。なお、バッファの選択は、フレームが格納されていないバッファについても、ラウンドロビンに基づく選択対象となる。
【0130】
図9に示す状態に対応して、予測結果管理部11は、予測開始位置バッファ(ここでは、第2バッファ)を起点として、ラウンドロビンによる各バッファの優先順位(以下、予測優先順位と称す)を「第2バッファ>第3バッファ>第4バッファ>第1バッファ」として管理する。また、予測結果管理部11は、予測現在位置バッファ及び予測現在位置格納順番の情報を管理する。
【0131】
ここで、図10において、第1バッファの格納順番1及び2、第2バッファの格納順番1〜3、第3バッファの格納順番1〜3、並びに第4バッファの格納順番1〜3の位置は、ラウンドロビンにおいて、予測現在位置に対して優先選択される格納位置である。すなわち、この優先選択される格納位置は、この格納位置に新規格納フレームが格納されると、新規格納フレームを受信する直前に行われた順次予測処理による結果に変更が生じることになる格納位置である。
【0132】
なお、この優先選択される格納位置は、予測開始位置から予測現在位置までを、格納順番を繰り上げることなく、ラウンドロビンに基づいて選択した位置に相当する。また、予測開始位置とは、予測開始位置バッファにおける先頭のフレームが格納されている格納順番の位置である。また、予測現在位置とは、予測現在位置バッファにおける予測現在位置フレームが格納されている格納順番の位置である。
【0133】
ここで、伝送装置10は、識別番号12のフレームを新たに受信したとする。
識別番号12のフレーム(新規格納フレーム)は、図10に示す優先選択される格納位置に格納された場合に、順次予測処理結果に変更が生じ、順次予測処理結果の修正が必要となる。
【0134】
以下、順次予測処理結果の修正の手順を説明する。
まず、順次バッファ選択部6は、各バッファの予測優先順位、予測現在位置バッファ及び予測現在位置格納順番の情報を予測結果管理部11から取得する。また、順次バッファ選択部6は、新規格納バッファ及び新規格納フレームの格納順番の情報をフレーム情報管理部5cから取得する。
【0135】
そして、順次バッファ選択部6は、下表1に示す条件に基づき、順次予測処理結果の変更の有無を判定する。なお、図10において、点線Aで包囲する領域は、「予測現在位置フレームの格納順番=新規格納フレームの格納順番」となる範囲であり、予測現在位置バッファ及び新規格納バッファの予測優先順位の大小関係により、順次予測処理結果の修正の有無を判定することになる。また、図10において、点線Bで包囲する領域は、「予測現在位置フレームの格納順番>新規格納フレームの格納順番」となる範囲である。
【0136】
【表1】
【0137】
また、順次バッファ選択部6は、順次予測処理結果の変更が有ると判定した場合に、順次予測処理結果における順次予測現在位置から送出順番の若い方にかけて順に参照し、下表2に示す条件を検証する。そして、順次バッファ選択部6は、条件5又は条件6のいずれか一方を満足する変更箇所(送出順番)を特定し、特定した変更箇所の次の送出順番に新規格納フレームを挿入する。
【0138】
【表2】
【0139】
ここで、図9に示す例においては、予測開始位置バッファが第2バッファであり、予測現在位置バッファが第4バッファであり、予測現在位置フレームの格納順番が3番目である。また、ラウンドロビンによるバッファの予測優先順位(プライオリティ)は、「第2バッファ>第3バッファ>第4バッファ>第1バッファ」である。
例えば、図11に示すように、識別番号12のフレーム(新規格納フレーム)が第1バッファ(新規格納バッファ)に格納された場合には、以下の処理を行うことになる。
【0140】
順次バッファ選択部6は、フレーム情報管理部5cから取得した新規格納バッファ及び新規格納フレームの格納順番の情報に基づき、新規格納バッファが第1バッファであり、新規格納フレームの格納順番が3番目であることを検出する。
【0141】
また、順次バッファ選択部6は、予測結果管理部11から取得した予測現在位置バッファ及び予測現在位置格納順番の情報に基づき、予測現在位置バッファが第4バッファであり、予測現在位置フレームの格納順番が3番目であることを検出する。
【0142】
そして、順次バッファ選択部6は、新規格納フレームの格納順番と予測現在位置フレームの格納順番とを比較すると、格納順番が共に3番目で同一であり、表1に示す条件2又は条件3に該当するために、バッファの予測優先順位(プライオリティ)を比較する。
【0143】
順次バッファ選択部6は、予測結果管理部11から取得したバッファの予測優先順位の情報に基づき、新規格納バッファ(第1バッファ)の予測優先順位が、予測現在位置バッファ(第4バッファ)の予測優先順位よりも低い(小さい)ことを認識する。
【0144】
そこで、順次バッファ選択部6は、表1に示す条件3に該当するために、順次予測処理結果の変更は無いと判定し、予測結果管理部11は記憶された送出順番情報を更新することなく、以降の順次予測処理を継続して実施することになる。なお、識別番号12のフレームは、識別番号10のフレームの送出順番の次の送出順番である8番目となり、識別番号10のフレームの送出予定時刻に送出間隔を加算した送出予定時刻となる。
また、図12に示すように、識別番号12のフレーム(新規格納フレーム)が第2バッファ(新規格納バッファ)に格納された場合には、以下の処理を行うことになる。
【0145】
順次バッファ選択部6は、フレーム情報管理部5cから取得した新規格納バッファ及び新規格納フレームの格納順番の情報に基づき、新規格納バッファが第2バッファであり、新規格納フレームの格納順番が1番目であることを検出する。
【0146】
また、順次バッファ選択部6は、予測結果管理部11から取得した予測現在位置バッファ及び予測現在位置格納順番の情報に基づき、予測現在位置バッファが第4バッファであり、予測現在位置フレームの格納順番が3番目であることを検出する。
【0147】
そして、順次バッファ選択部6は、新規格納フレームの格納順番と予測現在位置フレームの格納順番とを比較すると、新規格納フレームの格納順番が予測現在位置フレームの格納順番よりも早い(小さい)ことを認識する。
【0148】
そこで、順次バッファ選択部6は、表1に示す条件1に該当するために、順次予測処理結果の変更が有ると判定する。このため、順次バッファ選択部6は、順次予測処理結果における順次予測現在位置から送出順番の若い方にかけて順に参照し、表2に示す条件を検証し、条件5又は条件6のいずれか一方を満足する変更箇所(送出順番)を特定することになる。
【0149】
順次バッファ選択部6は、新規格納フレームの格納順番及びバッファの予測優先順位に基づき、参照する各バッファに対応させた変更箇所の条件を決定する。すなわち、第1バッファでは、第1バッファの予測優先順位が新規格納バッファ(第2バッファ)の予測優先順位以下であるために、表2に示す条件6に基づき、参照するフレームの格納順番が0番目(新規格納フレームの格納順番−1)以下であれば、条件を満足する。同様に、第2バッファ、第3バッファ及び第4バッファでは、表2に示す条件6に基づき、参照するフレームの格納順番が0番目(新規格納フレームの格納順番−1)以下であれば、条件を満足する。
【0150】
そして、順次バッファ選択部6は、各バッファにおいて、決定した変更箇所条件における格納順番(ここでは、0番目)以下の格納順番である順次予測処理結果を順次予測現在位置から順に検索する。ここでは、条件を満足する候補がなく、現在予測している送出順番の先頭に新規格納フレームを挿入して、順次バッファ選択部6は、送出順番の先頭から順次予測処理を再実施することになる。なお、識別番号12のフレームの送出予定時刻は、現在予測している送出順番が1番目である識別番号5のフレームの送出予定時刻となり、識別番号5のフレームの新たな送出予定時刻は、識別番号12のフレームの送出予定時刻に送出間隔を加算して算出する。
また、図13に示すように、識別番号12のフレーム(新規格納フレーム)が第3バッファ(新規格納バッファ)に格納された場合には、以下の処理を行うことになる。
【0151】
順次バッファ選択部6は、フレーム情報管理部5cから取得した新規格納バッファ及び新規格納フレームの格納順番の情報に基づき、新規格納バッファが第3バッファであり、新規格納フレームの格納順番が3番目であることを検出する。
【0152】
また、順次バッファ選択部6は、予測結果管理部11から取得した予測現在位置バッファ及び予測現在位置格納順番の情報に基づき、予測現在位置バッファが第4バッファであり、予測現在位置フレームの格納順番が3番目であることを検出する。
【0153】
そして、順次バッファ選択部6は、新規格納フレームの格納順番と予測現在位置フレームの格納順番とを比較すると、格納順番が共に3番目で同一であり、表1に示す条件2又は条件3に該当するために、バッファの予測優先順位(プライオリティ)を比較する。
【0154】
順次バッファ選択部6は、予測結果管理部11から取得したバッファの予測優先順位の情報に基づき、新規格納バッファ(第3バッファ)の予測優先順位が、予測現在位置バッファ(第4バッファ)の予測優先順位よりも高い(大きい)ことを認識する。
【0155】
そこで、順次バッファ選択部6は、表1に示す条件2に該当するために、順次予測処理結果の変更が有ると判定する。このため、順次バッファ選択部6は、順次予測処理結果における順次予測現在位置から送出順番の若い方にかけて順に参照し、表2に示す条件を検証し、条件5又は条件6のいずれか一方を満足する変更箇所(送出順番)を特定することになる。
【0156】
順次バッファ選択部6は、新規格納フレームの格納順番及びバッファの予測優先順位に基づき、参照する各バッファに対応させた変更箇所の条件を決定する。すなわち、第1バッファでは、第1バッファの予測優先順位が新規格納バッファ(第3バッファ)の予測優先順位以下であるために、表2に示す条件6に基づき、参照するフレームの格納順番が2番目(新規格納フレームの格納順番−1)以下であれば、条件を満足する。同様に、第3バッファ及び第4バッファでは、表2に示す条件6に基づき、参照するフレームの格納順番が2番目(新規格納フレームの格納順番−1)以下であれば、条件を満足する。また、第2バッファでは、第2バッファの予測優先順位が新規格納バッファ(第3バッファ)の予測優先順位より高い(大きい)ために、条件5に基づき、参照するフレームの格納順番が3番目(新規格納フレームの格納順番)以下であれば、条件を満足する。
【0157】
そして、順次バッファ選択部6は、各バッファにおいて、決定した変更箇所条件における格納順番(ここでは、第1バッファ、第3バッファ及び第4バッファは2番目、第2バッファは3番目)以下の格納順番である順次予測処理結果を順次予測現在位置から順に検索する。ここでは、条件を満足する候補として、第1バッファの2番目(識別番号9のフレーム)が検出でき、現在予測している送出順番の7番目に新規格納フレームを挿入して、順次バッファ選択部6は、送出順番の7番目から順次予測処理を再実施することになる。なお、識別番号12のフレームの送出予定時刻は、現在予測している送出順番が7番目である識別番号10のフレームの送出予定時刻となり、識別番号10のフレームの新たな送出予定時刻は、識別番号12のフレームの送出予定時刻に送出間隔を加算して算出する。
また、図14に示すように、識別番号12のフレーム(新規格納フレーム)が第4バッファ(新規格納バッファ)に格納された場合には、以下の処理を行うことになる。
【0158】
順次バッファ選択部6は、フレーム情報管理部5cから取得した新規格納バッファ及び新規格納フレームの格納順番の情報に基づき、新規格納バッファが第4バッファであり、新規格納フレームの格納順番が4番目であることを検出する。
【0159】
また、順次バッファ選択部6は、予測結果管理部11から取得した予測現在位置バッファ及び予測現在位置格納順番の情報に基づき、予測現在位置バッファが第4バッファであり、予測現在位置フレームの格納順番が3番目であることを検出する。
【0160】
そして、順次バッファ選択部6は、新規格納フレームの格納順番と予測現在位置フレームの格納順番とを比較すると、新規格納フレームの格納順番が予測現在位置フレームの格納順番よりも遅い(大きい)ことを認識する。
【0161】
そこで、順次バッファ選択部6は、表1に示す条件4に該当するために、順次予測処理結果の変更は無いと判定し、以降の順次予測処理を継続して実施することになる。なお、識別番号12のフレームは、識別番号10のフレームの送出順番の次の送出順番である8番目となり、識別番号10のフレームの送出予定時刻に送出間隔を加算した送出予定時刻となる。
【0162】
なお、以上の説明においては、送信ルールとしてラウンドロビンを適用した場合について説明したが、絶対優先(SP:Strict Priority)を適用してもよい。例えば、絶対優先による優先順位を「第1バッファ>第2バッファ>第3バッファ>第4バッファ」と設定した場合には、予測開始位置バッファを起点して優先順位を並べ替える必要はなく、絶対優先による優先順位を予測優先順位として、順次予測修正処理を実行する。
【0163】
以上のように、本実施形態における伝送装置10は、送出順番情報を予測結果管理部11に記憶しているために、フレームの送出による蓄積バッファ5の格納状態が変化した場合に、送出順番を繰り上げて送出順番情報を更新するだけでよい。また、本実施形態における伝送装置10は、フレームの格納による蓄積バッファ5の格納状態が変化した場合に、フレームの格納による順次予測処理結果の変更箇所を特定し、変更箇所の次の送出順番以降のフレームに対してのみ順次予測処理を実行すればよい。このため、本実施形態における伝送装置10は、蓄積バッファ5の格納状態が変化する度に行う順次予測処理の処理能力を高め、処理の高速化を図ることができるという作用効果を奏する。
【0164】
(第3の実施形態)
図1において、フレーム情報管理部5cは、フレームバッファ5bに格納されたフレームのフレーム長に関する情報(以下、フレーム長情報と称す)を管理する。また、フレーム情報管理部5cは、順次バッファ選択部6から指定された格納順番のフレームのフレーム長情報を順次バッファ選択部6に通知する。ここで、フレーム長に関する情報とは、フレーム長、又はフレーム長をある一定の長さ(例えば、セグメント等)に分割したときのセグメント数等である。
【0165】
送信許可制御部7は、順次予測処理により送信可能と判断されたフレームの送出完了時点から次のフレームの送出開始時点までの回線の空き時間(以下、回線開放時間と称す)を、順次バッファ選択部6から通知されたフレーム長情報に基づいて算出する。また、送信許可制御部7は、算出した回線開放時間の情報(以下、回線開放時間情報と称す)を順次バッファ選択部6に通知する。
【0166】
ここで、回線開放時間の算出は、例えば、送信ポート9側の伝送路30の回線使用率をR[%]とした場合に、フレーム長がL1[Byte]であるフレームの送出完了時点から次のフレームの送出開始時点までの回線開放時間M1は、次式(1)に基づいて算出できる。
【0167】
【数1】
【0168】
順次バッファ選択部6は、順次予測処理により送信可能と判定したフレームのフレーム長情報をフレーム情報管理部5cから取得し、送信許可制御部7に通知する。また、順次バッファ選択部6は、回線開放時間情報を送信許可制御部7から取得し、取得した回線開放時間情報と、フレーム情報管理部5cから取得したフレーム長情報とに基づき、順次予測処理に使用する送出予定時刻を算出する。
【0169】
具体的には、時刻の単位をデータ量N[Byte]を送出するのに必要な時間とし、フレーム長L1[Byte]のフレームを送出した場合に、当該フレーム長L1を有するフレームの送出開始時点から送出完了時点までに要する時間が「L1/N(小数点の扱いは任意)」である。このため、時刻Tnにおいて、フレーム長L1[Byte]のフレームを送出した場合には、当該フレームの送出完了時刻は「Tn+L1/N」となり、回線開放時間がM1[Byte]であれば、次のフレームの送出予定時刻は、次式(2)に基づいて算出することができる。
【0170】
【数2】
【0171】
例えば、図15においては、第1バッファにフレーム長L3[Byte]のフレームが格納され、第2バッファにフレーム長L4[Byte]のフレームが格納され、第3バッファにフレーム長L1[Byte]のフレームが格納されている場合を想定する。また、図15においては、フレーム長L2[Byte]のフレームとフレーム長L5[Byte]のフレーム(ただし、廃棄予定時刻Tbが送出予定時刻T1よりも早いために廃棄される)とが第4バッファに格納されている場合を想定する。また、図15においては、時刻の単位をデータ量N[Byte]を送出するのに必要な時間とし、回線仕様率Rを50[%]とし、予測開始位置バッファを第3バッファとし、送信ルールをラウンドロビンに設定しているものとする。
【0172】
この場合には、第3バッファに格納された識別番号3のフレームが時刻T0で送出されると、次の送出フレームである第4バッファに格納された識別番号5のフレームの送出予定時刻T1はT0+L1/N+L1/Nとなる。同様に、識別番号5のフレームの次の送出フレームである第1バッファに格納された識別番号4のフレームの送出予定時刻T2は、T1+L2/N+L2/Nとなる。また、識別番号4のフレームの次の送出フレームである第2バッファに格納された識別番号2のフレームの送出予定時刻T3は、T2+L3/N+L3/Nとなる。
【0173】
なお、以上の説明においては、第1の実施形態に係る伝送装置10に適用した場合について説明したが、第2の実施形態に係る伝送装置10に適用してもよい。この場合には、図8において、送信許可制御部7に対して、本実施形態に係る新たな機能(回線開放時間を算出する機能)を付加することでもよいし、予測結果管理部11に対して、本実施形態に係る新たな機能(回線開放時間を算出する機能)を付加することでもよい。
【0174】
また、本実施形態に係る伝送装置10においては、フレーム情報管理部5cにフレーム長情報を記憶し、順次バッファ選択部6及び送信許可制御部7又は予測結果管理部11に新たな機能を付加したところのみが、第1又は第2の実施形態と異なるところである。この差異による作用効果以外は、第1又は第2の実施形態と同様の作用効果を奏する。
【0175】
以上のように、本実施形態に係る伝送装置10においては、受信するフレームのフレーム長が他のフレームと必ずしも同一でない可変長フレームに対しても、順次予測処理及び順次予測修正処理を適用することができるという作用効果を奏する。
【0176】
[付記] 以上の実施例を含む実施形態に関し、更に以下の付記を開示する。
(付記1) 伝送路から受信したフレームを、複数のバッファのうち一のバッファに格納し、当該バッファから読み出して、他の伝送路に送出する伝送装置において、前記バッファに格納されるフレームの廃棄予定時刻を決定する廃棄予定時刻決定手段と、前記フレームの送出順序を決定する送出順序決定手段と、前記決定した送出順序に基づき、前記バッファに格納された各フレームの送出予定時刻を算出する送出予定時刻算出手段と、前記送出予定時刻と前記廃棄予定時刻とに基づき、前記廃棄予定時刻が送出予定時刻以前に到達するフレームを廃棄する廃棄制御手段と、を備える伝送装置。
【0177】
(付記2) 前記付記1に記載の伝送装置において、前記送出順序決定手段及び送出予定時刻算出手段に相当し、前記バッファにフレームが格納される度に又は前記バッファからフレームが読み出される度に、当該フレームの受信時刻又は送出時刻及び連続するフレーム間の送出時間の間隔に基づき、前記バッファに格納された各フレームの送出予定時刻を算出する順次バッファ選択手段と、前記バッファに格納された各フレームの受信時刻及び格納順番に関する情報を記憶するフレーム情報管理手段と、前記フレームの廃棄予定時刻及び送出予定時刻に基づき、当該フレームに対する廃棄の要否を判定し、当該フレームに対する廃棄が必要であると判定した場合に、当該フレームに対する廃棄要求を前記廃棄制御手段に出力する廃棄判定手段と、を備え、前記順次バッファ選択手段が、予め設定されたルールに基づき、前記複数のバッファのうち一のバッファを選択し、当該選択したバッファにおけるフレームの格納順番が若い順に指定して、当該格納順番に関する情報を前記フレーム情報管理手段に出力すると共に、当該指定した格納順番に対応するフレームの送出予定時刻を算出して、当該算出した送出予定時刻を前記廃棄判定手段に出力し、前記フレーム情報管理手段が、前記順次バッファ選択手段により指定された格納順番に対応するフレームの受信時刻又は廃棄予定時刻を、前記廃棄判定手段に出力する伝送装置。
【0178】
(付記3) 前記付記2に記載の伝送装置において、前記廃棄判定手段により廃棄要求が出力された場合に、前記順次バッファ選択手段が、当該廃棄要求の対象であるフレームの次の格納順番であるフレームを指定して、当該格納順番に関する情報を前記フレーム情報管理手段に出力すると共に、前記廃棄要求の対象であるフレームの送出予定時刻を、前記次の格納順番であるフレームの送出予定時刻として前記廃棄判定手段に出力する伝送装置。
【0179】
(付記4) 前記付記2に記載の伝送装置において、前記廃棄判定手段により廃棄要求が出力されなかった場合に、前記順次バッファ選択手段が、予め設定されたルールに基づき、当該廃棄要求の判定対象であるフレームを格納するバッファの次のバッファを選択し、当該次のバッファに格納されたフレームを指定して、当該フレームの格納順番に関する情報を前記フレーム情報管理手段に出力すると共に、前記廃棄要求の判定対象であるフレームの送出予定時刻に、前記連続するフレーム間の送出時間の間隔を加算して、前記指定したフレームの送出予定時刻として前記廃棄判定手段に出力する伝送装置。
【0180】
(付記5) 前記付記2乃至4のいずれかに記載の伝送装置において、前記指定した格納順番に対応するフレームが前記選択したバッファに存在しない場合に、前記順次バッファ選択手段が、予め設定されたルールに基づき、当該選択したバッファの次のバッファを選択する伝送装置。
【0181】
(付記6) 前記付記2乃至4のいずれかに記載の伝送装置において、前記順次バッファ選択手段により予測された各フレームの送出順番及び送出予定時刻に関する情報を記憶する予測結果管理手段を備え、前記バッファにフレームが格納される度に、前記順次バッファ選択手段が、当該フレームが格納されたバッファである新規格納バッファにおける当該フレームである新規格納フレームの格納順番に関する情報、及び各バッファにおける各フレームの格納順番に関する情報を、前記フレーム情報管理手段から取得し、前記各フレームの送出順番及び送出予定時刻に関する情報を前記予測結果管理手段から取得すると共に、前記新規格納バッファにおける他のバッファに対する優先順位及び前記新規格納フレームの格納順番、前記フレームの送出順番が最後のフレームである予測現時位置フレームを格納するバッファである予測現在位置バッファにおける他のバッファに対する優先順位及び予測現時位置フレームの格納順番、並びに各バッファにおける他のバッファに対する優先順位及び各フレームの格納順番に基づき、前記新規格納フレームの送出順番及び送出予定時刻を算出し、当該算出した送出順番の次の送出順番以降であるフレームに対して、前記送出予定時刻を算出して、前記廃棄判定部に出力する伝送装置。
【0182】
(付記7) 前記付記6に記載の伝送装置において、前記バッファからフレームが読み出された場合に、前記予測結果管理手段が、記憶した各フレームの送出順番を繰り上げて更新する伝送装置。
【0183】
(付記8) 前記付記2乃至7のいずれかに記載の伝送装置において、前記順次バッファ制御手段が、前記他の伝送路における回線使用率及び前記フレームのフレーム長に関する情報に基づいて算出される当該フレームの送出完了時点から次のフレームの送出開始時点までの時間と、前記フレーム長に関する情報に基づいて算出される当該フレーム長を有するフレームの送出開始時点から送出完了時点までに要する時間とを加算して、前記連続するフレーム間の送出時間の間隔を算出する伝送装置。
【0184】
(付記9) 伝送路から受信したフレームを、複数のバッファのうち一のバッファに格納し、当該バッファから読み出して、他の伝送路に送出する伝送方法において、前記バッファに格納されるフレームの廃棄予定時刻を決定する廃棄予定時刻決定ステップと、前記フレームの送出順序を決定する送出順序決定ステップと、前記決定した送出順序に基づき、前記バッファに格納された各フレームの送出予定時刻を算出する送出予定時刻算出ステップと、前記送出予定時刻と前記廃棄予定時刻とに基づき、前記廃棄予定時刻が送出予定時刻以前に到達するフレームを廃棄する廃棄制御ステップと、を有する伝送方法。
【0185】
(付記10) 伝送路から受信したフレームを、複数のバッファのうち一のバッファに格納し、当該バッファから読み出して、他の伝送路に送出する伝送装置のコンピュータを機能させる制御プログラムにおいて、前記プログラムを、前記バッファに格納されるフレームの廃棄予定時刻を決定する廃棄予定時刻決定手段と、前記フレームの送出順序を決定する送出順序決定手段と、前記決定した送出順序に基づき、前記バッファに格納された各フレームの送出予定時刻を算出する送出予定時刻算出手段と、前記送出予定時刻と前記廃棄予定時刻とに基づき、前記廃棄予定時刻が送出予定時刻以前に到達するフレームを廃棄する廃棄制御手段として機能させる制御プログラム。
【符号の説明】
【0186】
1 受信ポート
2 時刻監視部
3 時刻情報付与部
4 バッファ振分部
5 蓄積バッファ
5a バッファ格納制御部
5b フレームバッファ
5c フレーム情報管理部
5d 廃棄判定部
5e 送信/廃棄制御部
6 バッファ選択部
7 送信許可制御部
8 送信許可生成部
9 送信ポート
10 伝送装置
11 予測結果管理部
20,30 伝送路
【技術分野】
【0001】
本発明は、伝送路から受信したフレームを、複数のバッファのうち一のバッファに格納し、当該バッファから読み出して、他の伝送路に送出する伝送装置、伝送方法及び制御プログラムに関する。
【背景技術】
【0002】
音声や映像等を伝送するリアルタイム性が高いサービスでは、伝送装置におけるフレームの遅延時間(遅延量)に対する短縮の要求が強く、伝送装置内におけるフレームの滞留が許容される遅延時間(以下、許容遅延時間と称す)が設定されている。このため、伝送装置は、フレームを受信してから送信するまでの処理の遅延時間が、許容遅延時間を超過すると、フレームの有効性がなくなるために、許容遅延時間を超過したフレームを廃棄している。これを遅延廃棄と称する。
【0003】
例えば、従来のフレーム転送装置は、複数のFIFOメモリのうちの1つ以上のFIFOメモリそれぞれに対応づけられて設けられた、対応するFIFOメモリの先頭に新たなフレームが格納された時点からの時間を計測する計時手段を備える。また、従来のフレーム転送装置は、計時手段のうちのいずれかの計時手段による計測時間が所定の滞留許容時間を越えた場合に、その計時手段に対応するFIFOメモリの先頭に位置するフレームを廃棄するフレーム廃棄手段を備える(例えば、特許文献1参照)。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2008−235988号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
ところで、複数の利用者からのフレームを伝送する伝送装置においては、ユーザ間で平等性を確保するために、ユーザ別にバッファを設けて、各バッファから順々にフレームを送出することがある。しかし、ユーザ別にバッファを設けると、利用者や情報量の増加時に、各バッファにおける送信のタイミングが減るため、各バッファに多数のフレームが格納されることになる。その結果、各バッファに格納の余地が無くなり、新たに受信したフレームが廃棄されてしまうことがある。これをオーバーフローと称する。
【0006】
又、特許文献1が開示するフレーム転送装置は、フレームがFIFOメモリからなるクラスの読出し順の先頭に並んだ時点からの時間を計測し、その時間が所定のタイムアウト時間を経過するまで、その先頭に並ぶフレームを廃棄することができない。このため、クラスのフレームの蓄積量が最大となる輻輳状態においては、そのクラスに書き込むべきフレームを新たに受信した場合に、そのクラスに書き込むことができず、そのフレームをオーバーフローにより廃棄してしまうことになる。すなわち、従来のフレーム転送装置は、その後に、計測時間が所定のタイムアウト時間を経過して廃棄されるフレームがクラス内にある場合でも、後続のフレームをオーバーフローにより廃棄してしまう。
そこで、本発明は、オーバーフローによるフレームの廃棄を防止することができる伝送装置を提供するものである。
【課題を解決するための手段】
【0007】
伝送装置は、バッファに格納されるフレームの廃棄予定時刻を決定する廃棄予定時刻決定手段と、フレームの送出順序を決定する送出順序決定手段と、決定した送出順序に基づき、バッファに格納された各フレームの送出予定時刻を算出する送出予定時刻算出手段とを備える。また、伝送装置は、送出予定時刻と廃棄予定時刻とに基づき、廃棄予定時刻が送出予定時刻以前に到達するフレームを廃棄する廃棄制御手段を備える。
【発明の効果】
【0008】
開示の伝送装置によれば、オーバーフローによりフレームが廃棄されることを防止することができる。
【図面の簡単な説明】
【0009】
【図1】第1の実施形態に係る伝送装置の概略構成の一実施例を示すブロック図である。
【図2】図1に示す伝送装置における処理動作の一実施例を示すフローチャートであり、(a)はフレームを受信してからフレームを蓄積バッファに格納するまでの処理動作を示し、(b)はフレームを蓄積バッファから読み出してから送出するまでの処理動作を示す。
【図3】図1に示す伝送装置における順次予測処理の一実施例を示すフローチャートである。
【図4】図3に示すフローチャートの続きを示すフローチャートである。
【図5】図4に示すフローチャートの続きを示すフローチャートである。
【図6】図1に示す伝送装置における順次予測処理に対する比較例を説明するための説明図である。
【図7】図1に示す伝送装置における順次予測処理の一実施例を説明するための説明図である。
【図8】第2の実施形態に係る伝送装置の概略構成の一実施例を示すブロック図である。
【図9】図8に示す伝送装置の順次予測修正処理における蓄積バッファの格納状態の変更前の一実施例を説明するための説明図である。
【図10】図9に示す説明図における順次予測処理結果の変更が生じる格納位置の一実施例を説明するための説明図である。
【図11】図9に示す説明図における第1バッファに新規格納フレームが格納された場合の順次予測修正処理の一実施例を説明するための説明図である。
【図12】図9に示す説明図における第2バッファに新規格納フレームが格納された場合の順次予測修正処理の一実施例を説明するための説明図である。
【図13】図9に示す説明図における第3バッファに新規格納フレームが格納された場合の順次予測修正処理の一実施例を説明するための説明図である。
【図14】図9に示す説明図における第4バッファに新規格納フレームが格納された場合の順次予測修正処理の一実施例を説明するための説明図である。
【図15】第3の実施形態に係る伝送装置における処理動作の一実施例を説明するための説明図である。
【発明を実施するための形態】
【0010】
ここで、本発明は多くの異なる形態で実施可能である。したがって、下記の実施形態の記載内容のみで解釈すべきではない。また、実施形態の全体を通して同じ要素には同じ符号を付けている。
【0011】
実施形態では、主に装置について説明するが、いわゆる当業者であれば明らかな通り、本発明はコンピュータで使用可能なプログラム、方法としても実施できる。また、本発明は、ハードウェア、ソフトウェア、又は、ソフトウェア及びハードウェアの実施形態で実施可能である。
プログラムは、ハードディスク、CD−ROM(Compact Disc Read Only Memory)、DVD−ROM(Digital Versatile Disc Read Only Memory)、光記憶装置又は磁気記憶装置等の任意のコンピュータ可読媒体に記録できる。さらに、プログラムはネットワークを介した他のコンピュータに記録することができる。
【0012】
(第1の実施形態)
図1において、伝送装置10は、一の伝送路20から受信したフレーム(データを送る単位の別称としての、パケットやセル等を含む)を、複数のバッファのうち一のバッファに格納し、当該バッファから読み出して、他の伝送路30に送出する。尚、伝送装置10としては、例えばイントラネットとインターネットとの間を接続するものが想定される。しかし、本発明の伝送装置10は、これに限定されるものではない。
【0013】
また、伝送装置10は、大別すると、受信ポート1と、時刻監視部2と、時刻情報付与部3と、バッファ振分部4と、蓄積バッファ5と、順次バッファ選択部6と、送信許可制御部7と、送信許可生成部8と、送信ポート9とを備える。
【0014】
受信ポート1は、伝送路20を介して、他の通信装置や通信端末から送出されるフレームを受信する機能を有し、一又は複数の受信ポート1が伝送装置10に配設される。
時刻監視部2は、伝送装置10の各構成要素が共通して使用する時刻の情報(以下、時刻情報と称す)を管理する。
【0015】
時刻情報付与部3は、受信ポート1から入力されるフレームに対して、時刻監視部2から入力される現在時刻の情報(以下、現在時刻情報と称す)を受信時刻の情報(以下、受信時刻情報と称す)としてフレームに付加する。なお、受信時刻情報は、フレームに確保した格納領域に格納させることや、フレームを伝送する信号線とは別の信号線を並設してフレームの伝送に受信時刻情報を並走させること等が考えられる。
【0016】
バッファ振分部4は、時刻情報付与部3から入力される、受信時刻情報を付加されたフレームに対して、複数の蓄積バッファ5の中から一つを選択して振り分ける。なお、蓄積バッファ5を選択する条件は、対象フレームの送信元(他の通信装置等の送信装置)、対象フレームを受信した受信ポート1の番号、若しくは対象フレームの優先度、又はこれらの組合せ等である。また、対象フレームは、各蓄積バッファ5に設定された条件に基づき、条件に一致する一の蓄積バッファ5に出力される。
【0017】
蓄積バッファ5は、伝送装置10に複数配設され、各蓄積バッファ5が、バッファ格納制御部5a、フレームバッファ5b、フレーム情報管理部5c、廃棄判定部5d及び送信/廃棄制御部5eをそれぞれ備える。なお、蓄積バッファ5の各構成要素は、自蓄積バッファ5内の他の構成要素を対象にして処理することとなる。尚、図1における蓄積バッファ5は、ユーザごとに設けられた、優先度が等しいバッファである。しかし、図1には図示されていないが、伝送装置10は、蓄積バッファ5よりも優先度が高い蓄積バッファ又は優先度が低い蓄積バッファを備えている。
【0018】
バッファ格納制御部5aは、バッファ振分部4から入力されたフレームを、フレームバッファ5bに格納すると共に、フレームを格納したことをフレーム情報管理部5cに通知する。
フレームバッファ5bは、キュー(Queue)やFIFO(First In, First Out)とも称され、例えば、メモリを用いることが考えられる。
【0019】
フレーム情報管理部5cは、フレームバッファ5bに格納されている、各フレームの受信時刻、格納順番若しくはフレーム長、又はフレーム数等に関する情報(以下、フレーム管理情報と称す)を記憶する。なお、フレーム管理情報は、フレームバッファ5bに格納するフレームが固定長フレームであれば、少なくとも各フレームの受信時刻及び格納順番の情報であり、可変長フレームであれば、少なくとも各フレームの受信時刻、格納順番及びフレーム長の情報である。また、フレーム情報管理部5cは、バッファ格納制御部5aがフレームバッファ5bにフレームを格納したこと、並びに、送信/廃棄制御部5eがフレームバッファ5bからフレームを送信及び廃棄したことを契機として、フレーム管理情報を更新する。また、フレーム情報管理部5cは、フレームバッファ5bにフレームが存在する場合に、順次バッファ選択部6に対して、フレームバッファ5bに格納されるフレームの送信を要求する。
【0020】
さらに、フレーム情報管理部5cは、順次バッファ選択部6により指定された格納順番に対応するフレームが存在すれば、そのフレームの受信時刻情報を廃棄判定部5dに通知する機能を有する。
【0021】
順次バッファ選択部6は、フレーム情報管理部5cにより送信要求を行っている蓄積バッファ5のうち、予め設定されたルールに基づいて、一の蓄積バッファ5を選択し、選択情報を送信許可生成部8に通知する。なお、予め設定されたルールとしては、ラウンドロビンや絶対優先(SP:Strict Priority)等がある。
【0022】
また、順次バッファ選択部6は、蓄積バッファ5にフレームが格納される度に、当該フレームの受信時刻(現在時刻)及び連続するフレーム間の送出時間の間隔(以下、送出間隔と称す)に基づき、蓄積バッファ5に格納された各フレームの送出予定時刻を算出する。また、順次バッファ選択部6は、蓄積バッファ5からフレームが読み出される度に、当該フレームの送出時刻(現在時刻)及び送出間隔に基づき、蓄積バッファ5に格納された各フレームの送出予定時刻を算出する。
【0023】
すなわち、順次バッファ選択部6は、予め設定されたルールに基づき、複数の蓄積バッファ5のうち一の蓄積バッファ5を選択する。そして、順次バッファ選択部6は、選択した蓄積バッファ5におけるフレームの格納順番を若い(フレームの受信時刻が古い)順に指定して、格納順番に関する情報(以下、格納順番情報と称す)をフレーム情報管理部5cに出力する。また、順次バッファ選択部6は、指定した格納順番に対応するフレームの送出予定時刻を算出して、算出した送出予定時刻の情報(以下、送出予定時刻情報と称す)を廃棄判定部5dに出力する。このように、順次バッファ選択部6は、フレームの送出順序を決定する送出順序決定手段と、決定した送出順序に基づき、蓄積バッファ5に格納された各フレームの送出予定時刻を算出する送出予定時刻算出手段とに相当することになる。
【0024】
また、順次バッファ選択部6は、廃棄判定部5dによりフレームの廃棄の要求が出力された場合に、当該廃棄要求の対象であるフレームの次の格納順番であるフレームを指定して、格納順番情報をフレーム情報管理部5cに出力する。また、順次バッファ選択部6は、廃棄要求の対象であるフレームの送出予定時刻情報を、次の格納順番であるフレームの送出予定時刻情報として廃棄判定部5dに出力する。また、順次バッファ選択部6は、廃棄判定部5dにより廃棄要求が出力されなかった場合に、予め設定されたルールに基づき、当該廃棄要求の判定対象であるフレームを格納するバッファの次のバッファを選択し、当該次のバッファに格納されたフレームを指定して、当該フレームの格納順番情報をフレーム情報管理部5cに出力する。また、順次バッファ選択部6は、廃棄要求の判定対象であるフレームの送出予定時刻に、送出間隔を加算して、指定したフレームの送出予定時刻情報として廃棄判定部5dに出力する。
【0025】
また、順次バッファ選択部6は、指定した格納順番に対応するフレームが選択した蓄積バッファ5に存在しない場合に、予め設定されたルールに基づき、当該選択した蓄積バッファ5の次の蓄積バッファ5を選択する。
【0026】
廃棄判定部5dは、許容遅延時間の情報(以下、許容遅延時間情報と称す)を記憶し、許容遅延時間情報とフレーム情報管理部5cから入力されるフレームの受信時刻情報とに基づき、許容遅延時間に受信時間を加算して当該フレームの廃棄予定時刻を算出する。また、廃棄判定部5dは、フレームの廃棄予定時刻及び送出予定時刻に基づき、当該フレームに対する廃棄の要否を判定し、当該フレームに対する廃棄が必要であると判定した場合に、当該フレームに対する廃棄の要求を送信/廃棄制御部5eに出力する。すなわち、廃棄判定部5dは、算出したフレームの廃棄予定時刻と順次バッファ選択部6から入力される当該フレームの送出予定時刻とを比較して、廃棄予定時刻が送出予定時刻以前に到達する場合に、当該フレームに対する廃棄の要求を送信/廃棄制御部5eに通知する。また、廃棄判定部5dは、送信/廃棄制御部5eに廃棄要求を通知した場合に、フレームを廃棄したことを順次バッファ選択部6に通知し、送信/廃棄制御部5eに廃棄要求を通知しなかった場合に、フレームを廃棄しなかったことを順次バッファ選択部6に通知する。
【0027】
なお、本実施形態に係る廃棄判定部5dは、各蓄積バッファ5の内部に配置しているが、蓄積バッファ5の外部に配置し、複数又は全ての蓄積バッファ5に対して、集中的に管理し、フレームの廃棄の判定を行わせてもよい。
【0028】
また、許容遅延時間は、伝送装置10の設計時に予め設定された固定値や、伝送装置10の管理者により設定される任意の値であり、全ての蓄積バッファ5に共通の値や、蓄積バッファ5毎に任意に設定した値である。
【0029】
また、許容遅延時間情報は、廃棄判定部5dに記憶させているが、時刻監視部2又はフレーム情報管理部5cに記憶させ、時刻監視部2又はフレーム情報管理部5cにより、受信時刻に許容遅延時間を加算して廃棄予定時刻を算出してもよい。この場合に、時刻監視部2又はフレーム情報管理部5cは、順次バッファ選択部6により指定された格納順番に対応するフレームがフレームバッファ5bに存在すれば、そのフレームの廃棄予定時刻情報を廃棄判定部5dに通知することになる。すなわち、廃棄判定部5d、時刻監視部2又はフレーム情報管理部5cは、蓄積バッファ5に格納されるフレームの廃棄予定時刻を決定する廃棄予定時間決定手段に相当することになる。
【0030】
送信許可制御部7は、フレームの送出間隔等の送出予定時刻を特定するために必要な情報(以下、送出予定時刻特定情報と称す)を管理し、順次バッファ選択部6からの要求に基づき、送出予定時刻特定情報を順次バッファ選択部6に通知する。また、送信許可制御部7は、送信許可生成部8から通知される、送信ポート9に対するフレームの送信を開始するタイミング又はフレームの送信を完了するタイミングに基づき、次のフレームの送信が可能となるタイミングを決定する。また、送信許可制御部7は、決定したタイミングに合わせて、送信を許可する要求(以下、送信許可要求と称す)を送信許可生成部8に対して発行する。なお、送信許可要求が発行される時間間隔は、フレームの送出間隔でもある。
【0031】
送信許可生成部8は、送信許可制御部7が送信ポート9に対する送信許可要求を発行している場合に、送信/廃棄制御部5eに対してフレームの送信を許可する通知(以下、送信許可通知と称す)を発行する。
【0032】
送信/廃棄制御部5eは、送信許可生成部8から送信許可通知が発行された場合に、フレームバッファ5b内に格納されたフレームのうち、格納順番の若い先頭のフレームを読み出し、送信許可生成部8を介して、送信ポート9に出力する。また、送信/廃棄制御部5eは、送信許可生成部8にフレームを出力(送信ポート9からフレームを送出)したことを、フレーム情報管理部5cに通知する。
【0033】
また、送信/廃棄制御部5eは、廃棄判定部5dから廃棄を要求する通知(以下、廃棄要求通知と称す)が入力された場合に、廃棄要求の対象であるフレームをフレームバッファ5bから廃棄すると共に、フレームを廃棄したことをフレーム情報管理部5cに通知する。すなわち、送信/廃棄制御部5eは、フレームの廃棄予定時刻が当該フレームの送出予定時刻以前に到達する場合に、フレームバッファ5bに次のフレームが格納される前に又はフレームバッファ5bから次のフレームが読み出される前に、該当フレームを廃棄する。
送信ポート9は、伝送路30を介して、他の通信装置や通信端末に対してフレームを送出する機能を有し、一又は複数の送信ポート9が伝送装置10に配設される。
【0034】
つぎに、本実施形態に係る伝送装置10における処理動作について説明する。
まず、伝送路20から受信したフレームを蓄積バッファ5に格納するまでの処理動作について、図2(a)を用いて説明する。
受信ポート1は、フレームを受信すると時刻情報付与部3に出力する(ステップS1)。
時刻情報付与部3は、時刻監視部2から入力される現在時刻情報を受信時刻情報としてフレームに付与し、フレームをバッファ振分部4に出力する(ステップS2)。
【0035】
バッファ振分部4は、予め設定された条件(例えば、受信ポート1の番号)に基づき、複数の蓄積バッファ5のうち、一の蓄積バッファ5を選択して、選択した蓄積バッファ5のバッファ格納制御部5aにフレームを出力する(ステップS3)。
【0036】
バッファ格納制御部5aは、フレームバッファ5bにフレームを格納すると共に、フレームを格納したこと(フレームの受信時刻情報及び格納順番情報を出力し、可変長フレームであれば、フレーム長も含む)を、フレーム情報管理部5cに通知する(ステップS4)。
【0037】
フレーム情報管理部5cは、バッファ格納制御部5aから入力されたフレームの受信時刻情報及び格納順番情報(可変長フレームであれば、フレーム長も含む)を記憶する(ステップS5)。
【0038】
つぎに、蓄積バッファ5からフレームを読み出し、伝送路30に送出するまでの処理動作について、図2(b)を用いて説明する。
各蓄積バッファ5のフレーム情報管理部5cは、自フレームバッファ5bにフレームが存在する場合に、順次バッファ選択部6に対して、自フレームバッファ5bに格納されるフレームの送信を要求する(ステップS101)。
【0039】
順次バッファ選択部6は、フレーム情報管理部5cにより送信要求を行っている蓄積バッファ5のうち、予め設定されたルール(例えば、ラウンドロビン)に基づいて、一の蓄積バッファ5を選択し、選択情報を送信許可生成部8に通知する(ステップS102)。
【0040】
送信許可生成部8は、送信許可制御部7が送信ポート9に対する送信許可要求を発行している場合に、フレームの送信許可通知を送信/廃棄制御部5eに出力する(ステップS103)。なお、送信許可要求は、フレームの送信が可能となるタイミングに合わせて発行されている。
【0041】
送信/廃棄制御部5eは、送信許可生成部8から送信許可通知が入力されると、フレームバッファ5b内に格納されたフレームのうち、格納順番の若い先頭のフレームを読み出す(ステップS104)。
【0042】
そして、送信/廃棄制御部5eは、フレームバッファ5bから読み出したフレームを送信許可生成部8に出力すると共に、送信許可生成部8にフレームを出力したことを、フレーム情報管理部5cに通知する(ステップS105)。
【0043】
フレーム情報管理部5cは、読み出されたフレームの受信時刻情報を削除し、残存するフレームの格納順番情報に対して格納順番を繰り上げて修正し、フレーム管理情報を更新する(ステップS106)。
【0044】
また、送信許可生成部8は、送信/廃棄制御部5eから入力されたフレームを送信ポート9に出力する。そして、送信ポート9は、送信許可生成部8から入力されたフレームを伝送路30に送出する(ステップS107)。
【0045】
つぎに、各蓄積バッファ5に格納された各フレームの送出順番及び送出時刻を予測して、許容遅延時間を経過して廃棄となるフレームを、予め廃棄する処理(以下、順次予測処理と称す)動作について、図3〜図5を用いて説明する。
【0046】
各蓄積バッファ5のフレーム情報管理部5cは、蓄積バッファ5にフレームが格納されたこと又は蓄積バッファ5からフレームが読み出されたことによる、フレーム管理情報を更新したことを、順次バッファ選択部6に通知する(ステップS201)。
【0047】
順次バッファ選択部6は、各蓄積バッファ5のフレーム情報管理部5cに対して、フレームバッファ5bの先頭にフレームが格納されているか(フレームバッファ5bにフレームが存在するか)の情報(格納順番又はフレーム数)を収集する(ステップS202)。
【0048】
そして、順次バッファ選択部6は、予め設定されたルール(例えば、ラウンドロビン)に基づいて、フレームの読み出しを許可する蓄積バッファ5を選択し、先頭のフレームを指定して、指定した格納番号情報をフレーム情報管理部5cに出力する(ステップS203)。
【0049】
フレーム情報管理部5cは、指定された格納番号情報に対応する先頭のフレームの受信時刻情報を廃棄判定部5dに出力する(ステップS204)。
また、順次バッファ選択部6は、送信許可制御部7に送出予定時刻特定情報を要求し、送出予定時刻特定情報を取得する(ステップS205)。
【0050】
そして、順次バッファ選択部6は、時刻監視部2から入力される現在時刻に、送出予定時刻特定情報から得られるフレームの送出間隔を加算して、送出予定時刻を算出する(ステップS206)。なお、フレームが格納されたことを契機として本処理が開始された場合は、ステップS206における現在時刻が当該フレームの送信時刻に対応する。また、フレームが読み出されたことを契機として本処理が開始された場合は、伝送装置10によるフレームの受信タイミングと送信タイミングとが同期している場合に、ステップS206における現在時刻が当該フレームの受信時刻に対応する。
【0051】
順次バッファ選択部6は、算出した送出予定時刻を、選択した蓄積バッファ5のフレームバッファ5bに格納された先頭のフレームの送出予定時刻情報として、選択した蓄積バッファ5の廃棄判定部5dに出力する(ステップS207)。
【0052】
廃棄判定部5dは、記憶する許容遅延時間情報と、フレーム情報管理部5cから入力されるフレームの受信時刻情報とに基づき、フレームの受信時刻に許容遅延時間を加算して当該フレームの廃棄予定時刻を算出する(ステップS208)。
【0053】
廃棄判定部5dは、算出したフレームの廃棄予定時刻と、順次バッファ選択部6から入力される当該フレームの送出予定時刻とを比較して、廃棄予定時刻が送出予定時刻以前に到達するか否かを判断する(ステップS209)。
【0054】
ステップS209において、フレームの廃棄予定時刻が送出予定時刻以前に到達すると判断した場合に、廃棄判定部5dは、当該フレームに対する廃棄の要求を送信/廃棄制御部5eに出力する。また、廃棄判定部5dは、フレームを廃棄したことを順次バッファ選択部6に通知する(ステップS210)。
【0055】
送信/廃棄制御部5eは、廃棄判定部5dから入力される廃棄要求に基づき、該当するフレームをフレームバッファ5bから廃棄すると共に、フレームを廃棄したことを、フレーム情報管理部5cに通知する(ステップS211)。
【0056】
フレーム情報管理部5cは、廃棄されたフレームの受信時刻情報を削除し、残存するフレームの格納順番情報に対して格納順番を繰り上げて修正し、フレーム管理情報を更新する(ステップS212)。
【0057】
また、順次バッファ選択部6は、廃棄判定部5dからのフレームを廃棄したことの通知に基づき、現時点で選択している蓄積バッファ5に対して、フレームバッファ5bの先頭にフレームが格納されているかの情報を収集する(ステップS213)。
【0058】
そして、順次バッファ選択部6は、現時点で選択している蓄積バッファ5のフレームバッファ5bの先頭にフレームが格納されているか否かを判断する(ステップS214)。
【0059】
ステップS214において、先頭にフレームが格納されていないと判断した場合に、順次バッファ選択部6は、予め設定されたルールに基づいて、フレームの読み出しを許可する蓄積バッファ5を選択する。また、順次バッファ選択部6は、選択した蓄積バッファ5に対して、フレームバッファ5bの先頭にフレームが格納されているかの情報を収集し(ステップS215)、ステップS214に戻る。
【0060】
また、ステップS214において、先頭にフレームが格納されていると判断した場合に、順次バッファ選択部6は、当該フレームに対して廃棄判定部5dによる廃棄判定が済んでいるか否かを判断する(ステップS216)。
【0061】
ステップS216において、フレームの廃棄判定が済んでいないと判断した場合に、順次バッファ選択部6は、当該フレームの格納番号情報をフレーム情報管理部5cに出力する(ステップS217)。
フレーム情報管理部5cは、順次バッファ選択部6から入力された格納番号情報に対応するフレームの受信時刻情報を廃棄判定部5dに出力する(ステップS218)。
【0062】
廃棄判定部5dは、記憶する許容遅延時間情報と、フレーム情報管理部5cから入力されるフレームの受信時刻情報とに基づき、フレームの受信時刻に許容遅延時間を加算して当該フレームの廃棄予定時刻を算出し(ステップS219)、ステップS209に戻る。
【0063】
また、ステップS216において、フレームの廃棄判定が済んでいると判断した場合に、順次バッファ選択部6は、当該フレームがフレームバッファ5bにおける最後尾(格納順番が最後)のフレームである否かを判断する(ステップS220)。
【0064】
また、ステップS220において、最後尾のフレームではないと判断した場合に、順次バッファ選択部6は、当該フレームに対して次の格納順番であるフレームを指定し(ステップS221)、ステップS216に戻る。
【0065】
また、ステップS220において、最後尾のフレームであると判断した場合に、順次バッファ選択部6は、全ての蓄積バッファ5における全てのフレームに対して、廃棄判定部5dによる廃棄判定が済んでいるか否かを判断する(ステップS222)。
【0066】
ステップS222において、全ての蓄積バッファ5における全てのフレームに対して、廃棄判定部5dによる廃棄判定が済んでいないと判断した場合には、ステップS215に戻る。
【0067】
また、ステップS222において、全ての蓄積バッファ5における全てのフレームに対して、廃棄判定部5dによる廃棄判定が済んでいると判断した場合には、順次予測処理を終了する。
【0068】
また、前述したステップS209において、フレームの廃棄予定時刻が送出予定時刻以前に到達しないと判断した場合に、廃棄判定部5dは、フレームを廃棄しないことを順次バッファ選択部6に通知する(ステップS223)。
【0069】
順次バッファ選択部6は、予め設定されたルールに基づいて、フレームの読み出しを許可する次の蓄積バッファ5を選択する(ステップS224)。
そして、順次バッファ選択部6は、選択した蓄積バッファ5に対して、フレームバッファ5bの先頭にフレームが格納されているかの情報を収集する(ステップS225)。
【0070】
順次バッファ選択部6は、現時点で選択している蓄積バッファ5のフレームバッファ5bの先頭にフレームが格納されているか否かを判断する(ステップS226)。
【0071】
ステップS226において、先頭にフレームが格納されていないと判断した場合には、ステップS224に戻る。
【0072】
また、ステップS226において、先頭にフレームが格納されていると判断した場合に順次バッファ選択部6は、当該フレームに対して廃棄判定部5dによる廃棄判定が済んでいるか否かを判断する(ステップS227)。
【0073】
ステップS227において、フレームの廃棄判定が済んでいないと判断した場合に、順次バッファ選択部6は、当該フレームの格納番号情報をフレーム情報管理部5cに出力する(ステップS228)。
【0074】
フレーム情報管理部5cは、順次バッファ選択部6から入力された格納番号情報に対応するフレームの受信時刻情報を廃棄判定部5dに出力する(ステップS229)。
また、順次バッファ選択部6は、送信許可制御部7に送出予定時刻特定情報を要求し、送出予定時刻特定情報を取得する(ステップS230)。なお、伝送装置10に入力されるフレームが、固定長フレームであり、フレームの送出間隔が一定であるならば、順次バッファ選択部6が、現時点で保持している送出予定時刻特定情報(送出間隔)に、送出間隔を加算して、新たな送出予定時刻特定情報としてもよい。
【0075】
そして、順次バッファ選択部6は、ステップS206において取得した現在時刻に、ステップS230において取得した送出予定時刻特定情報から得られるフレームの送出間隔を加算して、送出予定時刻を算出する(ステップS231)。
【0076】
順次バッファ選択部6は、算出した送出予定時刻を、ステップS228において出力した格納番号情報に対応するフレームの送出予定時刻情報として、選択した蓄積バッファ5の廃棄判定部5dに出力し(ステップS232)、ステップS219に進む。
【0077】
また、ステップS227において、フレームの廃棄判定が済んでいると判断した場合に、順次バッファ選択部6は、当該フレームがフレームバッファ5bにおける最後尾(格納順番が最後)のフレームである否かを判断する(ステップS233)。
【0078】
ステップS233において、最後尾のフレームではないと判断した場合に、順次バッファ選択部6は、当該フレームに対して次の格納順番であるフレームを指定し(ステップS234)、ステップS227に戻る。
【0079】
また、ステップS233において、最後尾のフレームであると判断した場合に、順次バッファ選択部6は、全ての蓄積バッファ5における全てのフレームに対して、廃棄判定部5dによる廃棄判定が済んでいるか否かを判断する(ステップS235)。
【0080】
ステップS235において、全ての蓄積バッファ5における全てのフレームに対して、廃棄判定部5dによる廃棄判定が済んでいないと判断した場合には、ステップS224に戻る。
【0081】
また、ステップS235において、全ての蓄積バッファ5における全てのフレームに対して、廃棄判定部5dによる廃棄判定が済んでいると判断した場合には、順次予測処理を終了する。
【0082】
つぎに、本実施形態に係る順次予測処理について、具体例を挙げて説明する。
まず、順次予測処理を説明するにあたり、比較例として、滞留時間が許容遅延時間を超過するまでフレームを廃棄しない(順次予測処理を行わない)場合について、図6を用いて説明する。
【0083】
なお、図6においては、説明を容易にするために、伝送装置が受信するフレームを、ATM(Asynchronous Transfer Mode)セル等の固定長のフレームとし、連続する送出フレーム(セル)の最小送出間隔を1フレームとして、送信ルールをラウンドロビンとする。
【0084】
また、図6において、Tn(n=1、2、・・・)は時刻情報であり、現在時刻をT0とし、1フレームを送出するために必要な時間を単位として、現在時刻(T0)からの経過時刻をT1、T2、T3・・・とする。
【0085】
また、図6では、伝送装置のバッファ数を4つ(第1バッファ、第2バッファ、第3バッファ、第4バッファ)とし、各バッファの蓄積可能なフレーム数(バッファ容量)を4つとして、各バッファに格納されるフレーム毎に網掛けの種類を変えて示している。なお、各フレーム内に示した番号は、各フレームを識別するために便宜的に付与した識別番号であり、バッファに格納された各フレームの下に示した時刻情報Tn(n=1、2、・・・)は、受信時刻に許容遅延時間を加算して算出される廃棄予定時刻である。
【0086】
また、図6では、時刻T0の時点で、各バッファに格納されたフレーム数が、順に2、1、1、4つであり、第4バッファに振り分けられるフレーム(識別番号9、10,11)を、時刻T1、T2、T3の時点で、最小送出間隔で連続して受信している場合を示している。
【0087】
まず、時刻T0で、ラウンドロビンに基づいて第1バッファを選択して、第1バッファの先頭に格納された識別番号1のフレームを送出した場合には、送信ポートへの最小送出間隔を1フレームとしているために、次のフレームの送出時刻はT2となる。また、時刻T2では、ラウンドロビンに基づいて第2バッファを選択して、第2バッファの先頭に格納された識別番号3のフレームを送出する。
【0088】
ここで、第4バッファに着目すると、時刻T1で、識別番号9のフレームを受信するのであるが、第4バッファに格納されたフレーム数が4つであり、蓄積可能なバッファ容量がないために、識別番号9のフレームを廃棄(オーバーフロー)することになる。
【0089】
また、時刻T2では、第4バッファの先頭に格納された識別番号2のフレームが、廃棄予定時刻であるために、識別番号2のフレームを送出することなく、廃棄することになる。これにより、第4バッファに格納されたフレーム数は3つとなり、第4バッファは、1フレーム分の空き容量を有するために、時刻T2で受信した識別番号10のフレームを格納することができる。なお、第4バッファに格納された識別番号6、識別番号7及び識別番号8のフレームは、識別番号2のフレームの廃棄により、格納順番がそれぞれ繰り上がり、識別番号6のフレームが第4バッファの先頭になる。
【0090】
また、時刻T3では、識別番号11のフレームを受信するのであるが、第4バッファに格納されたフレーム数が4つであり、蓄積可能なバッファ容量がないために、識別番号11のフレームを廃棄(オーバーフロー)することになる。
【0091】
さらに、時刻T6では、第4バッファの先頭に格納された識別番号6のフレームが、廃棄予定時刻であるために、識別番号6のフレームを送出することなく、廃棄することになる。
【0092】
なお、図6(b)は、以上の処理により、送出処理されたフレームとその送出時刻とを上段に示し、廃棄予定時刻に達して廃棄処理されたフレームとその廃棄時刻を中段に示し、オーバーフローにより廃棄されたフレームとその廃棄時刻を下段に示している。
【0093】
このように、新たに受信する識別番号9及び識別番号11のフレームの廃棄は、識別番号2及び識別番号6のフレームが廃棄予定時刻に到達して廃棄されるにも関わらず、識別番号2及び識別番号6のフレームが廃棄予定時刻まで格納されることが原因で発生する。したがって、本実施形態に係る順次予測処理を行わないことは、廃棄するフレーム数が増加して、転送効率が悪化することとなり、ひいては、廃棄されたフレームが再送されることにより、伝送装置で処理するトラフィックが増加することになる。
【0094】
これに対し、図6(a)に示す条件において、本実施形態に係る順次予測処理を行う場合について、図7を用いて説明する。なお、以下の説明においては、各蓄積バッファ5(フレームバッファ5b)を、第1バッファ、第2バッファ、第3バッファ又は第4バッファとそれぞれ称して説明する。
【0095】
時刻T0で、識別番号1のフレームを送出したことにより、第1バッファのフレーム情報管理部5cは、フレーム管理情報における格納順番を繰り上げ、先頭のフレームを識別番号4のフレームに更新する。
また、次の送出予定時刻は、送出間隔が1フレームであるために、識別番号1のフレームの送出時刻T0と送出間隔を加算して時刻T2となる。
【0096】
送信ルールはラウンドロビンであり、第2バッファの先頭にフレームが格納されているために、順次バッファ選択部6は、次にフレーム送出を許可するバッファとして、第2バッファを選択する。
【0097】
ここで、送出予定時刻はT2であり、第2バッファの先頭にある識別番号3のフレームの廃棄予定時刻はT3であるため、送出予定時刻T2は廃棄予定時刻T3よりも早い。
このため、送信/廃棄制御部5eは、識別番号3のフレームの廃棄は行わずに、次に送信許可するフレームとして第2バッファに格納された識別番号3のフレームを選択し、順次予測としては、次の予測を行うことになる。
【0098】
次の予測は、先の送出予定時刻T2と送出間隔を加算して時刻T4とし、送信ルールはラウンドロビンであり、第3バッファの先頭にフレームが格納されているために、順次バッファ選択部6は、次にフレーム送出を許可するバッファとして、第3バッファを選択する。
【0099】
ここで、送出予定時刻はT4であり、第3バッファの先頭にある識別番号5のフレームの廃棄予定時刻はT5であるため、送出予定時刻T4は廃棄予定時刻T5よりも早い。このため、送信/廃棄制御部5eは、識別番号5のフレームの廃棄は行わずに、次に送信許可するフレームとして第3バッファに格納された識別番号5のフレームを選択し、順次予測としては、次の予測を行うことになる。
【0100】
次の予測は、先の送出予定時刻T4と送出間隔を加算して時刻T6とし、送信ルールはラウンドロビンであり、第4バッファの先頭にフレームが格納されているために、順次バッファ選択部6は、次にフレーム送出を許可するバッファとして、第4バッファを選択する。
【0101】
ここで、送出予定時刻はT6であり、第4バッファの先頭にある識別番号2のフレームの廃棄予定時刻はT2であるため、送出予定時刻T6は廃棄予定時刻T2よりも遅い。このため、廃棄判定部5dは、識別番号2のフレームを廃棄対象と判定し、送信/廃棄制御部5eに廃棄を要求する。
【0102】
送信/廃棄制御部5eは、廃棄判定部5dからの廃棄要求に基づき、識別番号2のフレームを第4バッファから廃棄する。これにより、第4バッファの2番目に格納されている識別番号6のフレームが先頭のフレームに繰り上がり、このフレームが第4バッファにおける順次予測の対象となる。なお、フレームの廃棄であるために、送出予定時刻T6の更新は行わない。
【0103】
ここで、送出予定時刻はT6であり、第4バッファの先頭にある識別番号6のフレームの廃棄予定時刻はT6であるため、送出予定時刻T6は廃棄予定時刻T6と同時である。このため、廃棄判定部5dは、識別番号6のフレームを廃棄対象と判定し、送信/廃棄制御部5eに廃棄を要求する。
【0104】
送信/廃棄制御部5eは、廃棄判定部5dからの廃棄要求に基づき、識別番号6のフレームを第4バッファから廃棄する。これにより、第4バッファの2番目に格納されている識別番号7のフレームが先頭のフレームに繰り上がり、このフレームが第4バッファにおける順次予測の対象となる。なお、フレームの廃棄であるために、送出予定時刻T6の更新は行わない。
【0105】
ここで、送出予定時刻はT6であり、第4バッファの先頭にある識別番号7のフレームの廃棄予定時刻はT7であるため、送出予定時刻T6は廃棄予定時刻T7よりも早い。このため、送信/廃棄制御部5eは、識別番号7のフレームの廃棄は行わずに、次に送信許可するフレームとして第4バッファに格納された識別番号7のフレームを選択し、順次予測としては、次の予測を行うことになる。
【0106】
次の予測は、先の送出予定時刻T6と送出間隔を加算して時刻T8とし、送信ルールはラウンドロビンであり、第1バッファの先頭にフレームが格納されているために、順次バッファ選択部6は、次にフレーム送出を許可するバッファとして、第1バッファを選択する。
【0107】
ここで、送出予定時刻はT8であり、第1バッファの先頭にある識別番号4のフレームの廃棄予定時刻はT4であるため、送出予定時刻T8は廃棄予定時刻T4よりも遅い。このため、廃棄判定部5dは、識別番号4のフレームを廃棄対象と判定し、送信/廃棄制御部5eに廃棄を要求する。
【0108】
送信/廃棄制御部5eは、廃棄判定部5dからの廃棄要求に基づき、識別番号4のフレームを第1バッファから廃棄する。なお、フレームの廃棄であるために、送出予定時刻T8の更新は行わない。
【0109】
つぎに、順次バッファ選択部6は、選択した第1バッファに対して2番目(繰り上がるために先頭)に格納されたフレームのフレーム情報を要求するが、第1バッファには2番目のフレームが格納されていないため、第1バッファは次の予測の対象から除外される。
【0110】
次の予測は、送信ルールはラウンドロビンであり、第4バッファの先頭にフレームが格納されているために、順次バッファ選択部6は、次にフレーム送出を許可するバッファとして、第4バッファを選択する。
【0111】
ここで、送出予定時刻はT8であり、第4バッファの先頭にある識別番号8のフレームの廃棄予定時刻はT8であるため、送出予定時刻T8は廃棄予定時刻T8と同時である。このため、廃棄判定部5dは、識別番号8のフレームを廃棄対象と判定し、送信/廃棄制御部5eに廃棄を要求する。
【0112】
送信/廃棄制御部5eは、廃棄判定部5dからの廃棄要求に基づき、識別番号8のフレームを第1バッファから廃棄する。
全てのバッファにおける全てのフレームに対して、廃棄判定部5dによる廃棄判定が済んだために、順次予測処理を終了する。
【0113】
以上の順次予測処理は、時刻T0から時刻T1までの間に行われ、図7に示すように、送出処理されたフレームとその送出時刻とを上段に示し、廃棄予定時刻に達する前に廃棄処理されたフレームとその廃棄時刻を中段に示している。また、図7においては、オーバーフローによる廃棄が回避されたフレーム(識別番号9、識別番号11)とその廃棄予定時刻を下段に参考のため点線で示している。
【0114】
このように、第4バッファは、T2の時点で、3フレーム分の空き容量が存在し、フレームを格納することができ、前述の比較例においては、廃棄されていた識別番号9及び識別番号11を廃棄することなく、第1バッファに格納することが可能である。
【0115】
以上のように、本実施形態に係る伝送装置10は、伝送路30に送出されるまでに、滞留時間が許容遅延時間を超過するフレームを廃棄しないことにより発生する、オーバーフローによる後続データの廃棄を抑制することができるという作用効果を奏する。特に、本実施形態に係る伝送装置10は、蓄積バッファ5を効率的に使用することができ、伝送装置10に搭載する蓄積バッファ5の蓄積容量を削減することができるという作用効果を奏する。
【0116】
(第2の実施形態)
図8において、予測結果管理部11は、順次バッファ選択部6により予測された各フレームの送出順番及び送出予定時刻に関する情報(以下、送出順番情報と称す)を、順次予測が終了する度に、順次バッファ選択部6から入力されて記憶する。また、予測結果管理部11は、フレームバッファ5bからフレームが読み出された場合に、記憶した送出順番情報に対して各フレームの送出順番を繰り上げて更新する。
【0117】
順次バッファ選択部6は、フレームが送出される度に、フレームが送出されたことが送信許可制御部7から通知される。また、順次バッファ選択部6は、次に送出を許可するフレームを特定するための送出順番情報を予測結果管理部11から取得し、次に送出を許可するフレームの情報を送信許可制御部7に通知する。
【0118】
また、順次バッファ選択部6は、フレームバッファ5bにフレームが格納される度に、新規格納バッファにおける当該フレーム(以下、新規格納フレームと称す)の格納順番情報をフレーム情報管理部5cから取得する。なお、新規格納バッファとは、フレームバッファ5bにフレームが格納された時点における、当該フレームが格納されたフレームバッファ5bである。また、順次バッファ選択部6は、フレームバッファ5bにフレームが格納される度に、各バッファにおける各フレームの格納順番情報をフレーム情報管理部5cから取得する。また、順次バッファ選択部6は、フレームバッファ5bにフレームが格納される度に、各フレームの送出順番情報を予測結果管理部11から取得する。
【0119】
また、順次バッファ選択部6は、新規格納バッファの優先順位及び新規格納フレームの格納順番、予測現在位置バッファの優先順位及び予測現在位置フレームの格納順番並びに各バッファの優先順位及び各フレームの格納順番に基づき、新規格納フレームの送出順番を算出する。なお、予測現在位置フレームとは、順次予測を実施する度に予測されたフレームの送出順番が最後のフレームである。また、予測現在位置バッファとは、順次予測を実施する度に選択した最後のフレームバッファ5bであり、予測現在位置フレームを格納するフレームバッファ5bである。また、順次バッファ選択部6は、算出した新規格納フレームの送出順番の次の送出順番以降であるフレームに対して、送出予定時刻を算出して、廃棄判定部5dに出力する。
【0120】
また、順次バッファ選択部6は、新規格納バッファに新規格納フレームが格納されたことによる、フレームの送出順番に変更が生じる場合に、予測結果管理部11に記憶された送出順番情報を、新たに算出した送出順番及び送出予定時刻に更新する。
【0121】
なお、この第2の実施形態に係る伝送装置10においては、予測結果管理部11を新たに備え、順次バッファ選択部6に新たな機能を付加したところのみが、第1の実施形態と異なるところである。後述する予測結果管理部11及び順次バッファ選択部6による作用効果以外は、第1の実施形態と同様の作用効果を奏する。
【0122】
つぎに、新規格納バッファに新規格納フレームが格納されたことによる、順次予測処理結果に対する変更の有無の判定と判定結果に応じた処理(以下、順次予測修正処理と称す)について、図9〜図15を用いて説明する。
【0123】
なお、以下の説明においては、伝送装置10の蓄積バッファ5(フレームバッファ5b)の数を4つとし、各蓄積バッファ5(フレームバッファ5b)を、第1バッファ、第2バッファ、第3バッファ又は第4バッファとそれぞれ称して説明する。
【0124】
また、以下の説明においては、直前に送信を許可されたバッファを「送出完了位置バッファ」と称し、送出完了位置バッファの次に最優先に選択されるバッファを「予測開始位置バッファ」と称して説明する。また、以下の説明においては、予測現在位置バッファに格納された予測現在位置フレームの格納順番を「予測現在位置格納順番」と称して説明する。
【0125】
また、図9〜図14においては、説明を容易にするために、伝送装置10が受信するフレームを、ATMセル等の固定長のフレームとし、連続する送出フレーム(セル)の最小送出間隔を1フレームとする。
【0126】
また、図9〜図14においては、各バッファ(第1バッファ、第2バッファ、第3バッファ、第4バッファ)の蓄積可能なフレーム数(バッファ容量)を4つとして、各バッファに格納されるフレーム毎に網掛けの種類を変えて示している。なお、各フレーム内に示した番号は、各フレームを識別するために便宜的に付与した識別番号であり、バッファに格納された各フレームの下に示した時刻情報Tn(n=1、4、5、・・・)は、受信時刻に許容遅延時間を加算して算出される廃棄予定時刻である。
【0127】
さらに、図9においては、識別番号4及び識別番号9のフレームが第1バッファに格納され、識別番号5及び識別番号11のフレームが第3バッファに格納され、識別番号7、識別番号8及び識別番号10のフレームが第4バッファに格納されている。
【0128】
また、図9においては、直前に、第1バッファから識別番号3のフレームを送出し、送信ルールをラウンドロビンとして、第1バッファ、第2バッファ、第3バッファ及び第4バッファに格納された全てのフレームについて順次予測処理が完了した状態を図示している。
【0129】
また、図9においては、直前に、第1バッファ(送出完了位置バッファとなる)を選択してフレームを送出しているために、次に最優先に選択されるバッファ(予測開始位置バッファ)は、ラウンドロビンに基づいて第2バッファとなる。また、図9においては、順次予測処理により、第4バッファに格納された識別番号10のフレームに対して、送出順番が最後のフレーム(予測現在位置フレーム)として予測されているために、第4バッファが予測現在位置バッファとなる。なお、バッファの選択は、フレームが格納されていないバッファについても、ラウンドロビンに基づく選択対象となる。
【0130】
図9に示す状態に対応して、予測結果管理部11は、予測開始位置バッファ(ここでは、第2バッファ)を起点として、ラウンドロビンによる各バッファの優先順位(以下、予測優先順位と称す)を「第2バッファ>第3バッファ>第4バッファ>第1バッファ」として管理する。また、予測結果管理部11は、予測現在位置バッファ及び予測現在位置格納順番の情報を管理する。
【0131】
ここで、図10において、第1バッファの格納順番1及び2、第2バッファの格納順番1〜3、第3バッファの格納順番1〜3、並びに第4バッファの格納順番1〜3の位置は、ラウンドロビンにおいて、予測現在位置に対して優先選択される格納位置である。すなわち、この優先選択される格納位置は、この格納位置に新規格納フレームが格納されると、新規格納フレームを受信する直前に行われた順次予測処理による結果に変更が生じることになる格納位置である。
【0132】
なお、この優先選択される格納位置は、予測開始位置から予測現在位置までを、格納順番を繰り上げることなく、ラウンドロビンに基づいて選択した位置に相当する。また、予測開始位置とは、予測開始位置バッファにおける先頭のフレームが格納されている格納順番の位置である。また、予測現在位置とは、予測現在位置バッファにおける予測現在位置フレームが格納されている格納順番の位置である。
【0133】
ここで、伝送装置10は、識別番号12のフレームを新たに受信したとする。
識別番号12のフレーム(新規格納フレーム)は、図10に示す優先選択される格納位置に格納された場合に、順次予測処理結果に変更が生じ、順次予測処理結果の修正が必要となる。
【0134】
以下、順次予測処理結果の修正の手順を説明する。
まず、順次バッファ選択部6は、各バッファの予測優先順位、予測現在位置バッファ及び予測現在位置格納順番の情報を予測結果管理部11から取得する。また、順次バッファ選択部6は、新規格納バッファ及び新規格納フレームの格納順番の情報をフレーム情報管理部5cから取得する。
【0135】
そして、順次バッファ選択部6は、下表1に示す条件に基づき、順次予測処理結果の変更の有無を判定する。なお、図10において、点線Aで包囲する領域は、「予測現在位置フレームの格納順番=新規格納フレームの格納順番」となる範囲であり、予測現在位置バッファ及び新規格納バッファの予測優先順位の大小関係により、順次予測処理結果の修正の有無を判定することになる。また、図10において、点線Bで包囲する領域は、「予測現在位置フレームの格納順番>新規格納フレームの格納順番」となる範囲である。
【0136】
【表1】
【0137】
また、順次バッファ選択部6は、順次予測処理結果の変更が有ると判定した場合に、順次予測処理結果における順次予測現在位置から送出順番の若い方にかけて順に参照し、下表2に示す条件を検証する。そして、順次バッファ選択部6は、条件5又は条件6のいずれか一方を満足する変更箇所(送出順番)を特定し、特定した変更箇所の次の送出順番に新規格納フレームを挿入する。
【0138】
【表2】
【0139】
ここで、図9に示す例においては、予測開始位置バッファが第2バッファであり、予測現在位置バッファが第4バッファであり、予測現在位置フレームの格納順番が3番目である。また、ラウンドロビンによるバッファの予測優先順位(プライオリティ)は、「第2バッファ>第3バッファ>第4バッファ>第1バッファ」である。
例えば、図11に示すように、識別番号12のフレーム(新規格納フレーム)が第1バッファ(新規格納バッファ)に格納された場合には、以下の処理を行うことになる。
【0140】
順次バッファ選択部6は、フレーム情報管理部5cから取得した新規格納バッファ及び新規格納フレームの格納順番の情報に基づき、新規格納バッファが第1バッファであり、新規格納フレームの格納順番が3番目であることを検出する。
【0141】
また、順次バッファ選択部6は、予測結果管理部11から取得した予測現在位置バッファ及び予測現在位置格納順番の情報に基づき、予測現在位置バッファが第4バッファであり、予測現在位置フレームの格納順番が3番目であることを検出する。
【0142】
そして、順次バッファ選択部6は、新規格納フレームの格納順番と予測現在位置フレームの格納順番とを比較すると、格納順番が共に3番目で同一であり、表1に示す条件2又は条件3に該当するために、バッファの予測優先順位(プライオリティ)を比較する。
【0143】
順次バッファ選択部6は、予測結果管理部11から取得したバッファの予測優先順位の情報に基づき、新規格納バッファ(第1バッファ)の予測優先順位が、予測現在位置バッファ(第4バッファ)の予測優先順位よりも低い(小さい)ことを認識する。
【0144】
そこで、順次バッファ選択部6は、表1に示す条件3に該当するために、順次予測処理結果の変更は無いと判定し、予測結果管理部11は記憶された送出順番情報を更新することなく、以降の順次予測処理を継続して実施することになる。なお、識別番号12のフレームは、識別番号10のフレームの送出順番の次の送出順番である8番目となり、識別番号10のフレームの送出予定時刻に送出間隔を加算した送出予定時刻となる。
また、図12に示すように、識別番号12のフレーム(新規格納フレーム)が第2バッファ(新規格納バッファ)に格納された場合には、以下の処理を行うことになる。
【0145】
順次バッファ選択部6は、フレーム情報管理部5cから取得した新規格納バッファ及び新規格納フレームの格納順番の情報に基づき、新規格納バッファが第2バッファであり、新規格納フレームの格納順番が1番目であることを検出する。
【0146】
また、順次バッファ選択部6は、予測結果管理部11から取得した予測現在位置バッファ及び予測現在位置格納順番の情報に基づき、予測現在位置バッファが第4バッファであり、予測現在位置フレームの格納順番が3番目であることを検出する。
【0147】
そして、順次バッファ選択部6は、新規格納フレームの格納順番と予測現在位置フレームの格納順番とを比較すると、新規格納フレームの格納順番が予測現在位置フレームの格納順番よりも早い(小さい)ことを認識する。
【0148】
そこで、順次バッファ選択部6は、表1に示す条件1に該当するために、順次予測処理結果の変更が有ると判定する。このため、順次バッファ選択部6は、順次予測処理結果における順次予測現在位置から送出順番の若い方にかけて順に参照し、表2に示す条件を検証し、条件5又は条件6のいずれか一方を満足する変更箇所(送出順番)を特定することになる。
【0149】
順次バッファ選択部6は、新規格納フレームの格納順番及びバッファの予測優先順位に基づき、参照する各バッファに対応させた変更箇所の条件を決定する。すなわち、第1バッファでは、第1バッファの予測優先順位が新規格納バッファ(第2バッファ)の予測優先順位以下であるために、表2に示す条件6に基づき、参照するフレームの格納順番が0番目(新規格納フレームの格納順番−1)以下であれば、条件を満足する。同様に、第2バッファ、第3バッファ及び第4バッファでは、表2に示す条件6に基づき、参照するフレームの格納順番が0番目(新規格納フレームの格納順番−1)以下であれば、条件を満足する。
【0150】
そして、順次バッファ選択部6は、各バッファにおいて、決定した変更箇所条件における格納順番(ここでは、0番目)以下の格納順番である順次予測処理結果を順次予測現在位置から順に検索する。ここでは、条件を満足する候補がなく、現在予測している送出順番の先頭に新規格納フレームを挿入して、順次バッファ選択部6は、送出順番の先頭から順次予測処理を再実施することになる。なお、識別番号12のフレームの送出予定時刻は、現在予測している送出順番が1番目である識別番号5のフレームの送出予定時刻となり、識別番号5のフレームの新たな送出予定時刻は、識別番号12のフレームの送出予定時刻に送出間隔を加算して算出する。
また、図13に示すように、識別番号12のフレーム(新規格納フレーム)が第3バッファ(新規格納バッファ)に格納された場合には、以下の処理を行うことになる。
【0151】
順次バッファ選択部6は、フレーム情報管理部5cから取得した新規格納バッファ及び新規格納フレームの格納順番の情報に基づき、新規格納バッファが第3バッファであり、新規格納フレームの格納順番が3番目であることを検出する。
【0152】
また、順次バッファ選択部6は、予測結果管理部11から取得した予測現在位置バッファ及び予測現在位置格納順番の情報に基づき、予測現在位置バッファが第4バッファであり、予測現在位置フレームの格納順番が3番目であることを検出する。
【0153】
そして、順次バッファ選択部6は、新規格納フレームの格納順番と予測現在位置フレームの格納順番とを比較すると、格納順番が共に3番目で同一であり、表1に示す条件2又は条件3に該当するために、バッファの予測優先順位(プライオリティ)を比較する。
【0154】
順次バッファ選択部6は、予測結果管理部11から取得したバッファの予測優先順位の情報に基づき、新規格納バッファ(第3バッファ)の予測優先順位が、予測現在位置バッファ(第4バッファ)の予測優先順位よりも高い(大きい)ことを認識する。
【0155】
そこで、順次バッファ選択部6は、表1に示す条件2に該当するために、順次予測処理結果の変更が有ると判定する。このため、順次バッファ選択部6は、順次予測処理結果における順次予測現在位置から送出順番の若い方にかけて順に参照し、表2に示す条件を検証し、条件5又は条件6のいずれか一方を満足する変更箇所(送出順番)を特定することになる。
【0156】
順次バッファ選択部6は、新規格納フレームの格納順番及びバッファの予測優先順位に基づき、参照する各バッファに対応させた変更箇所の条件を決定する。すなわち、第1バッファでは、第1バッファの予測優先順位が新規格納バッファ(第3バッファ)の予測優先順位以下であるために、表2に示す条件6に基づき、参照するフレームの格納順番が2番目(新規格納フレームの格納順番−1)以下であれば、条件を満足する。同様に、第3バッファ及び第4バッファでは、表2に示す条件6に基づき、参照するフレームの格納順番が2番目(新規格納フレームの格納順番−1)以下であれば、条件を満足する。また、第2バッファでは、第2バッファの予測優先順位が新規格納バッファ(第3バッファ)の予測優先順位より高い(大きい)ために、条件5に基づき、参照するフレームの格納順番が3番目(新規格納フレームの格納順番)以下であれば、条件を満足する。
【0157】
そして、順次バッファ選択部6は、各バッファにおいて、決定した変更箇所条件における格納順番(ここでは、第1バッファ、第3バッファ及び第4バッファは2番目、第2バッファは3番目)以下の格納順番である順次予測処理結果を順次予測現在位置から順に検索する。ここでは、条件を満足する候補として、第1バッファの2番目(識別番号9のフレーム)が検出でき、現在予測している送出順番の7番目に新規格納フレームを挿入して、順次バッファ選択部6は、送出順番の7番目から順次予測処理を再実施することになる。なお、識別番号12のフレームの送出予定時刻は、現在予測している送出順番が7番目である識別番号10のフレームの送出予定時刻となり、識別番号10のフレームの新たな送出予定時刻は、識別番号12のフレームの送出予定時刻に送出間隔を加算して算出する。
また、図14に示すように、識別番号12のフレーム(新規格納フレーム)が第4バッファ(新規格納バッファ)に格納された場合には、以下の処理を行うことになる。
【0158】
順次バッファ選択部6は、フレーム情報管理部5cから取得した新規格納バッファ及び新規格納フレームの格納順番の情報に基づき、新規格納バッファが第4バッファであり、新規格納フレームの格納順番が4番目であることを検出する。
【0159】
また、順次バッファ選択部6は、予測結果管理部11から取得した予測現在位置バッファ及び予測現在位置格納順番の情報に基づき、予測現在位置バッファが第4バッファであり、予測現在位置フレームの格納順番が3番目であることを検出する。
【0160】
そして、順次バッファ選択部6は、新規格納フレームの格納順番と予測現在位置フレームの格納順番とを比較すると、新規格納フレームの格納順番が予測現在位置フレームの格納順番よりも遅い(大きい)ことを認識する。
【0161】
そこで、順次バッファ選択部6は、表1に示す条件4に該当するために、順次予測処理結果の変更は無いと判定し、以降の順次予測処理を継続して実施することになる。なお、識別番号12のフレームは、識別番号10のフレームの送出順番の次の送出順番である8番目となり、識別番号10のフレームの送出予定時刻に送出間隔を加算した送出予定時刻となる。
【0162】
なお、以上の説明においては、送信ルールとしてラウンドロビンを適用した場合について説明したが、絶対優先(SP:Strict Priority)を適用してもよい。例えば、絶対優先による優先順位を「第1バッファ>第2バッファ>第3バッファ>第4バッファ」と設定した場合には、予測開始位置バッファを起点して優先順位を並べ替える必要はなく、絶対優先による優先順位を予測優先順位として、順次予測修正処理を実行する。
【0163】
以上のように、本実施形態における伝送装置10は、送出順番情報を予測結果管理部11に記憶しているために、フレームの送出による蓄積バッファ5の格納状態が変化した場合に、送出順番を繰り上げて送出順番情報を更新するだけでよい。また、本実施形態における伝送装置10は、フレームの格納による蓄積バッファ5の格納状態が変化した場合に、フレームの格納による順次予測処理結果の変更箇所を特定し、変更箇所の次の送出順番以降のフレームに対してのみ順次予測処理を実行すればよい。このため、本実施形態における伝送装置10は、蓄積バッファ5の格納状態が変化する度に行う順次予測処理の処理能力を高め、処理の高速化を図ることができるという作用効果を奏する。
【0164】
(第3の実施形態)
図1において、フレーム情報管理部5cは、フレームバッファ5bに格納されたフレームのフレーム長に関する情報(以下、フレーム長情報と称す)を管理する。また、フレーム情報管理部5cは、順次バッファ選択部6から指定された格納順番のフレームのフレーム長情報を順次バッファ選択部6に通知する。ここで、フレーム長に関する情報とは、フレーム長、又はフレーム長をある一定の長さ(例えば、セグメント等)に分割したときのセグメント数等である。
【0165】
送信許可制御部7は、順次予測処理により送信可能と判断されたフレームの送出完了時点から次のフレームの送出開始時点までの回線の空き時間(以下、回線開放時間と称す)を、順次バッファ選択部6から通知されたフレーム長情報に基づいて算出する。また、送信許可制御部7は、算出した回線開放時間の情報(以下、回線開放時間情報と称す)を順次バッファ選択部6に通知する。
【0166】
ここで、回線開放時間の算出は、例えば、送信ポート9側の伝送路30の回線使用率をR[%]とした場合に、フレーム長がL1[Byte]であるフレームの送出完了時点から次のフレームの送出開始時点までの回線開放時間M1は、次式(1)に基づいて算出できる。
【0167】
【数1】
【0168】
順次バッファ選択部6は、順次予測処理により送信可能と判定したフレームのフレーム長情報をフレーム情報管理部5cから取得し、送信許可制御部7に通知する。また、順次バッファ選択部6は、回線開放時間情報を送信許可制御部7から取得し、取得した回線開放時間情報と、フレーム情報管理部5cから取得したフレーム長情報とに基づき、順次予測処理に使用する送出予定時刻を算出する。
【0169】
具体的には、時刻の単位をデータ量N[Byte]を送出するのに必要な時間とし、フレーム長L1[Byte]のフレームを送出した場合に、当該フレーム長L1を有するフレームの送出開始時点から送出完了時点までに要する時間が「L1/N(小数点の扱いは任意)」である。このため、時刻Tnにおいて、フレーム長L1[Byte]のフレームを送出した場合には、当該フレームの送出完了時刻は「Tn+L1/N」となり、回線開放時間がM1[Byte]であれば、次のフレームの送出予定時刻は、次式(2)に基づいて算出することができる。
【0170】
【数2】
【0171】
例えば、図15においては、第1バッファにフレーム長L3[Byte]のフレームが格納され、第2バッファにフレーム長L4[Byte]のフレームが格納され、第3バッファにフレーム長L1[Byte]のフレームが格納されている場合を想定する。また、図15においては、フレーム長L2[Byte]のフレームとフレーム長L5[Byte]のフレーム(ただし、廃棄予定時刻Tbが送出予定時刻T1よりも早いために廃棄される)とが第4バッファに格納されている場合を想定する。また、図15においては、時刻の単位をデータ量N[Byte]を送出するのに必要な時間とし、回線仕様率Rを50[%]とし、予測開始位置バッファを第3バッファとし、送信ルールをラウンドロビンに設定しているものとする。
【0172】
この場合には、第3バッファに格納された識別番号3のフレームが時刻T0で送出されると、次の送出フレームである第4バッファに格納された識別番号5のフレームの送出予定時刻T1はT0+L1/N+L1/Nとなる。同様に、識別番号5のフレームの次の送出フレームである第1バッファに格納された識別番号4のフレームの送出予定時刻T2は、T1+L2/N+L2/Nとなる。また、識別番号4のフレームの次の送出フレームである第2バッファに格納された識別番号2のフレームの送出予定時刻T3は、T2+L3/N+L3/Nとなる。
【0173】
なお、以上の説明においては、第1の実施形態に係る伝送装置10に適用した場合について説明したが、第2の実施形態に係る伝送装置10に適用してもよい。この場合には、図8において、送信許可制御部7に対して、本実施形態に係る新たな機能(回線開放時間を算出する機能)を付加することでもよいし、予測結果管理部11に対して、本実施形態に係る新たな機能(回線開放時間を算出する機能)を付加することでもよい。
【0174】
また、本実施形態に係る伝送装置10においては、フレーム情報管理部5cにフレーム長情報を記憶し、順次バッファ選択部6及び送信許可制御部7又は予測結果管理部11に新たな機能を付加したところのみが、第1又は第2の実施形態と異なるところである。この差異による作用効果以外は、第1又は第2の実施形態と同様の作用効果を奏する。
【0175】
以上のように、本実施形態に係る伝送装置10においては、受信するフレームのフレーム長が他のフレームと必ずしも同一でない可変長フレームに対しても、順次予測処理及び順次予測修正処理を適用することができるという作用効果を奏する。
【0176】
[付記] 以上の実施例を含む実施形態に関し、更に以下の付記を開示する。
(付記1) 伝送路から受信したフレームを、複数のバッファのうち一のバッファに格納し、当該バッファから読み出して、他の伝送路に送出する伝送装置において、前記バッファに格納されるフレームの廃棄予定時刻を決定する廃棄予定時刻決定手段と、前記フレームの送出順序を決定する送出順序決定手段と、前記決定した送出順序に基づき、前記バッファに格納された各フレームの送出予定時刻を算出する送出予定時刻算出手段と、前記送出予定時刻と前記廃棄予定時刻とに基づき、前記廃棄予定時刻が送出予定時刻以前に到達するフレームを廃棄する廃棄制御手段と、を備える伝送装置。
【0177】
(付記2) 前記付記1に記載の伝送装置において、前記送出順序決定手段及び送出予定時刻算出手段に相当し、前記バッファにフレームが格納される度に又は前記バッファからフレームが読み出される度に、当該フレームの受信時刻又は送出時刻及び連続するフレーム間の送出時間の間隔に基づき、前記バッファに格納された各フレームの送出予定時刻を算出する順次バッファ選択手段と、前記バッファに格納された各フレームの受信時刻及び格納順番に関する情報を記憶するフレーム情報管理手段と、前記フレームの廃棄予定時刻及び送出予定時刻に基づき、当該フレームに対する廃棄の要否を判定し、当該フレームに対する廃棄が必要であると判定した場合に、当該フレームに対する廃棄要求を前記廃棄制御手段に出力する廃棄判定手段と、を備え、前記順次バッファ選択手段が、予め設定されたルールに基づき、前記複数のバッファのうち一のバッファを選択し、当該選択したバッファにおけるフレームの格納順番が若い順に指定して、当該格納順番に関する情報を前記フレーム情報管理手段に出力すると共に、当該指定した格納順番に対応するフレームの送出予定時刻を算出して、当該算出した送出予定時刻を前記廃棄判定手段に出力し、前記フレーム情報管理手段が、前記順次バッファ選択手段により指定された格納順番に対応するフレームの受信時刻又は廃棄予定時刻を、前記廃棄判定手段に出力する伝送装置。
【0178】
(付記3) 前記付記2に記載の伝送装置において、前記廃棄判定手段により廃棄要求が出力された場合に、前記順次バッファ選択手段が、当該廃棄要求の対象であるフレームの次の格納順番であるフレームを指定して、当該格納順番に関する情報を前記フレーム情報管理手段に出力すると共に、前記廃棄要求の対象であるフレームの送出予定時刻を、前記次の格納順番であるフレームの送出予定時刻として前記廃棄判定手段に出力する伝送装置。
【0179】
(付記4) 前記付記2に記載の伝送装置において、前記廃棄判定手段により廃棄要求が出力されなかった場合に、前記順次バッファ選択手段が、予め設定されたルールに基づき、当該廃棄要求の判定対象であるフレームを格納するバッファの次のバッファを選択し、当該次のバッファに格納されたフレームを指定して、当該フレームの格納順番に関する情報を前記フレーム情報管理手段に出力すると共に、前記廃棄要求の判定対象であるフレームの送出予定時刻に、前記連続するフレーム間の送出時間の間隔を加算して、前記指定したフレームの送出予定時刻として前記廃棄判定手段に出力する伝送装置。
【0180】
(付記5) 前記付記2乃至4のいずれかに記載の伝送装置において、前記指定した格納順番に対応するフレームが前記選択したバッファに存在しない場合に、前記順次バッファ選択手段が、予め設定されたルールに基づき、当該選択したバッファの次のバッファを選択する伝送装置。
【0181】
(付記6) 前記付記2乃至4のいずれかに記載の伝送装置において、前記順次バッファ選択手段により予測された各フレームの送出順番及び送出予定時刻に関する情報を記憶する予測結果管理手段を備え、前記バッファにフレームが格納される度に、前記順次バッファ選択手段が、当該フレームが格納されたバッファである新規格納バッファにおける当該フレームである新規格納フレームの格納順番に関する情報、及び各バッファにおける各フレームの格納順番に関する情報を、前記フレーム情報管理手段から取得し、前記各フレームの送出順番及び送出予定時刻に関する情報を前記予測結果管理手段から取得すると共に、前記新規格納バッファにおける他のバッファに対する優先順位及び前記新規格納フレームの格納順番、前記フレームの送出順番が最後のフレームである予測現時位置フレームを格納するバッファである予測現在位置バッファにおける他のバッファに対する優先順位及び予測現時位置フレームの格納順番、並びに各バッファにおける他のバッファに対する優先順位及び各フレームの格納順番に基づき、前記新規格納フレームの送出順番及び送出予定時刻を算出し、当該算出した送出順番の次の送出順番以降であるフレームに対して、前記送出予定時刻を算出して、前記廃棄判定部に出力する伝送装置。
【0182】
(付記7) 前記付記6に記載の伝送装置において、前記バッファからフレームが読み出された場合に、前記予測結果管理手段が、記憶した各フレームの送出順番を繰り上げて更新する伝送装置。
【0183】
(付記8) 前記付記2乃至7のいずれかに記載の伝送装置において、前記順次バッファ制御手段が、前記他の伝送路における回線使用率及び前記フレームのフレーム長に関する情報に基づいて算出される当該フレームの送出完了時点から次のフレームの送出開始時点までの時間と、前記フレーム長に関する情報に基づいて算出される当該フレーム長を有するフレームの送出開始時点から送出完了時点までに要する時間とを加算して、前記連続するフレーム間の送出時間の間隔を算出する伝送装置。
【0184】
(付記9) 伝送路から受信したフレームを、複数のバッファのうち一のバッファに格納し、当該バッファから読み出して、他の伝送路に送出する伝送方法において、前記バッファに格納されるフレームの廃棄予定時刻を決定する廃棄予定時刻決定ステップと、前記フレームの送出順序を決定する送出順序決定ステップと、前記決定した送出順序に基づき、前記バッファに格納された各フレームの送出予定時刻を算出する送出予定時刻算出ステップと、前記送出予定時刻と前記廃棄予定時刻とに基づき、前記廃棄予定時刻が送出予定時刻以前に到達するフレームを廃棄する廃棄制御ステップと、を有する伝送方法。
【0185】
(付記10) 伝送路から受信したフレームを、複数のバッファのうち一のバッファに格納し、当該バッファから読み出して、他の伝送路に送出する伝送装置のコンピュータを機能させる制御プログラムにおいて、前記プログラムを、前記バッファに格納されるフレームの廃棄予定時刻を決定する廃棄予定時刻決定手段と、前記フレームの送出順序を決定する送出順序決定手段と、前記決定した送出順序に基づき、前記バッファに格納された各フレームの送出予定時刻を算出する送出予定時刻算出手段と、前記送出予定時刻と前記廃棄予定時刻とに基づき、前記廃棄予定時刻が送出予定時刻以前に到達するフレームを廃棄する廃棄制御手段として機能させる制御プログラム。
【符号の説明】
【0186】
1 受信ポート
2 時刻監視部
3 時刻情報付与部
4 バッファ振分部
5 蓄積バッファ
5a バッファ格納制御部
5b フレームバッファ
5c フレーム情報管理部
5d 廃棄判定部
5e 送信/廃棄制御部
6 バッファ選択部
7 送信許可制御部
8 送信許可生成部
9 送信ポート
10 伝送装置
11 予測結果管理部
20,30 伝送路
【特許請求の範囲】
【請求項1】
伝送路から受信したフレームを、複数のバッファのうち一のバッファに格納し、当該バッファから読み出して、他の伝送路に送出する伝送装置において、
前記バッファに格納されるフレームの廃棄予定時刻を決定する廃棄予定時刻決定手段と、
前記フレームの送出順序を決定する送出順序決定手段と、
前記決定した送出順序に基づき、前記バッファに格納された各フレームの送出予定時刻を算出する送出予定時刻算出手段と、
前記送出予定時刻と前記廃棄予定時刻とに基づき、前記廃棄予定時刻が送出予定時刻以前に到達するフレームを廃棄する廃棄制御手段と、
を備える伝送装置。
【請求項2】
前記請求項1に記載の伝送装置において、
前記送出順序決定手段及び送出予定時刻算出手段に相当し、前記バッファにフレームが格納される度に又は前記バッファからフレームが読み出される度に、当該フレームの受信時刻又は送出時刻及び連続するフレーム間の送出時間の間隔に基づき、前記バッファに格納された各フレームの送出予定時刻を算出する順次バッファ選択手段と、
前記バッファに格納された各フレームの受信時刻及び格納順番に関する情報を記憶するフレーム情報管理手段と、
前記フレームの廃棄予定時刻及び送出予定時刻に基づき、当該フレームに対する廃棄の要否を判定し、当該フレームに対する廃棄が必要であると判定した場合に、当該フレームに対する廃棄要求を前記廃棄制御手段に出力する廃棄判定手段と、
を備え、
前記順次バッファ選択手段が、予め設定されたルールに基づき、前記複数のバッファのうち一のバッファを選択し、当該選択したバッファにおけるフレームの格納順番が若い順に指定して、当該格納順番に関する情報を前記フレーム情報管理手段に出力すると共に、当該指定した格納順番に対応するフレームの送出予定時刻を算出して、当該算出した送出予定時刻を前記廃棄判定手段に出力し、
前記フレーム情報管理手段が、前記順次バッファ選択手段により指定された格納順番に対応するフレームの受信時刻又は廃棄予定時刻を、前記廃棄判定手段に出力する伝送装置。
【請求項3】
前記請求項2に記載の伝送装置において、
前記廃棄判定手段により廃棄要求が出力された場合に、前記順次バッファ選択手段が、当該廃棄要求の対象であるフレームの次の格納順番であるフレームを指定して、当該格納順番に関する情報を前記フレーム情報管理手段に出力すると共に、前記廃棄要求の対象であるフレームの送出予定時刻を、前記次の格納順番であるフレームの送出予定時刻として前記廃棄判定手段に出力する伝送装置。
【請求項4】
前記請求項2に記載の伝送装置において、
前記廃棄判定手段により廃棄要求が出力されなかった場合に、前記順次バッファ選択手段が、予め設定されたルールに基づき、当該廃棄要求の判定対象であるフレームを格納するバッファの次のバッファを選択し、当該次のバッファに格納されたフレームを指定して、当該フレームの格納順番に関する情報を前記フレーム情報管理手段に出力すると共に、前記廃棄要求の判定対象であるフレームの送出予定時刻に、前記連続するフレーム間の送出時間の間隔を加算して、前記指定したフレームの送出予定時刻として前記廃棄判定手段に出力する伝送装置。
【請求項5】
前記請求項2乃至4のいずれかに記載の伝送装置において、
前記順次バッファ選択手段により予測された各フレームの送出順番及び送出予定時刻に関する情報を記憶する予測結果管理手段を備え、
前記バッファにフレームが格納される度に、前記順次バッファ選択手段が、当該フレームが格納されたバッファである新規格納バッファにおける当該フレームである新規格納フレームの格納順番に関する情報、及び各バッファにおける各フレームの格納順番に関する情報を、前記フレーム情報管理手段から取得し、前記各フレームの送出順番及び送出予定時刻に関する情報を前記予測結果管理手段から取得すると共に、前記新規格納バッファにおける他のバッファに対する優先順位及び前記新規格納フレームの格納順番、前記フレームの送出順番が最後のフレームである予測現時位置フレームを格納するバッファである予測現在位置バッファにおける他のバッファに対する優先順位及び予測現時位置フレームの格納順番、並びに各バッファにおける他のバッファに対する優先順位及び各フレームの格納順番に基づき、前記新規格納フレームの送出順番及び送出予定時刻を算出し、当該算出した送出順番の次の送出順番以降であるフレームに対して、前記送出予定時刻を算出して、前記廃棄判定部に出力する伝送装置。
【請求項6】
前記請求項2乃至5のいずれかに記載の伝送装置において、
前記順次バッファ制御手段が、前記他の伝送路における回線使用率及び前記フレームのフレーム長に関する情報に基づいて算出される当該フレームの送出完了時点から次のフレームの送出開始時点までの時間と、前記フレーム長に関する情報に基づいて算出される当該フレーム長を有するフレームの送出開始時点から送出完了時点までに要する時間とを加算して、前記連続するフレーム間の送出時間の間隔を算出する伝送装置。
【請求項7】
伝送路から受信したフレームを、複数のバッファのうち一のバッファに格納し、当該バッファから読み出して、他の伝送路に送出する伝送方法において、
前記バッファに格納されるフレームの廃棄予定時刻を決定する廃棄予定時刻決定ステップと、
前記フレームの送出順序を決定する送出順序決定ステップと、
前記決定した送出順序に基づき、前記バッファに格納された各フレームの送出予定時刻を算出する送出予定時刻算出ステップと、
前記送出予定時刻と前記廃棄予定時刻とに基づき、前記廃棄予定時刻が送出予定時刻以前に到達するフレームを廃棄する廃棄制御ステップと、
を有する伝送方法。
【請求項8】
伝送路から受信したフレームを、複数のバッファのうち一のバッファに格納し、当該バッファから読み出して、他の伝送路に送出する伝送装置のコンピュータを機能させる制御プログラムにおいて、
前記プログラムを、前記バッファに格納されるフレームの廃棄予定時刻を決定する廃棄予定時刻決定手段と、前記フレームの送出順序を決定する送出順序決定手段と、前記決定した送出順序に基づき、前記バッファに格納された各フレームの送出予定時刻を算出する送出予定時刻算出手段と、前記送出予定時刻と前記廃棄予定時刻とに基づき、前記廃棄予定時刻が送出予定時刻以前に到達するフレームを廃棄する廃棄制御手段として機能させる制御プログラム。
【請求項1】
伝送路から受信したフレームを、複数のバッファのうち一のバッファに格納し、当該バッファから読み出して、他の伝送路に送出する伝送装置において、
前記バッファに格納されるフレームの廃棄予定時刻を決定する廃棄予定時刻決定手段と、
前記フレームの送出順序を決定する送出順序決定手段と、
前記決定した送出順序に基づき、前記バッファに格納された各フレームの送出予定時刻を算出する送出予定時刻算出手段と、
前記送出予定時刻と前記廃棄予定時刻とに基づき、前記廃棄予定時刻が送出予定時刻以前に到達するフレームを廃棄する廃棄制御手段と、
を備える伝送装置。
【請求項2】
前記請求項1に記載の伝送装置において、
前記送出順序決定手段及び送出予定時刻算出手段に相当し、前記バッファにフレームが格納される度に又は前記バッファからフレームが読み出される度に、当該フレームの受信時刻又は送出時刻及び連続するフレーム間の送出時間の間隔に基づき、前記バッファに格納された各フレームの送出予定時刻を算出する順次バッファ選択手段と、
前記バッファに格納された各フレームの受信時刻及び格納順番に関する情報を記憶するフレーム情報管理手段と、
前記フレームの廃棄予定時刻及び送出予定時刻に基づき、当該フレームに対する廃棄の要否を判定し、当該フレームに対する廃棄が必要であると判定した場合に、当該フレームに対する廃棄要求を前記廃棄制御手段に出力する廃棄判定手段と、
を備え、
前記順次バッファ選択手段が、予め設定されたルールに基づき、前記複数のバッファのうち一のバッファを選択し、当該選択したバッファにおけるフレームの格納順番が若い順に指定して、当該格納順番に関する情報を前記フレーム情報管理手段に出力すると共に、当該指定した格納順番に対応するフレームの送出予定時刻を算出して、当該算出した送出予定時刻を前記廃棄判定手段に出力し、
前記フレーム情報管理手段が、前記順次バッファ選択手段により指定された格納順番に対応するフレームの受信時刻又は廃棄予定時刻を、前記廃棄判定手段に出力する伝送装置。
【請求項3】
前記請求項2に記載の伝送装置において、
前記廃棄判定手段により廃棄要求が出力された場合に、前記順次バッファ選択手段が、当該廃棄要求の対象であるフレームの次の格納順番であるフレームを指定して、当該格納順番に関する情報を前記フレーム情報管理手段に出力すると共に、前記廃棄要求の対象であるフレームの送出予定時刻を、前記次の格納順番であるフレームの送出予定時刻として前記廃棄判定手段に出力する伝送装置。
【請求項4】
前記請求項2に記載の伝送装置において、
前記廃棄判定手段により廃棄要求が出力されなかった場合に、前記順次バッファ選択手段が、予め設定されたルールに基づき、当該廃棄要求の判定対象であるフレームを格納するバッファの次のバッファを選択し、当該次のバッファに格納されたフレームを指定して、当該フレームの格納順番に関する情報を前記フレーム情報管理手段に出力すると共に、前記廃棄要求の判定対象であるフレームの送出予定時刻に、前記連続するフレーム間の送出時間の間隔を加算して、前記指定したフレームの送出予定時刻として前記廃棄判定手段に出力する伝送装置。
【請求項5】
前記請求項2乃至4のいずれかに記載の伝送装置において、
前記順次バッファ選択手段により予測された各フレームの送出順番及び送出予定時刻に関する情報を記憶する予測結果管理手段を備え、
前記バッファにフレームが格納される度に、前記順次バッファ選択手段が、当該フレームが格納されたバッファである新規格納バッファにおける当該フレームである新規格納フレームの格納順番に関する情報、及び各バッファにおける各フレームの格納順番に関する情報を、前記フレーム情報管理手段から取得し、前記各フレームの送出順番及び送出予定時刻に関する情報を前記予測結果管理手段から取得すると共に、前記新規格納バッファにおける他のバッファに対する優先順位及び前記新規格納フレームの格納順番、前記フレームの送出順番が最後のフレームである予測現時位置フレームを格納するバッファである予測現在位置バッファにおける他のバッファに対する優先順位及び予測現時位置フレームの格納順番、並びに各バッファにおける他のバッファに対する優先順位及び各フレームの格納順番に基づき、前記新規格納フレームの送出順番及び送出予定時刻を算出し、当該算出した送出順番の次の送出順番以降であるフレームに対して、前記送出予定時刻を算出して、前記廃棄判定部に出力する伝送装置。
【請求項6】
前記請求項2乃至5のいずれかに記載の伝送装置において、
前記順次バッファ制御手段が、前記他の伝送路における回線使用率及び前記フレームのフレーム長に関する情報に基づいて算出される当該フレームの送出完了時点から次のフレームの送出開始時点までの時間と、前記フレーム長に関する情報に基づいて算出される当該フレーム長を有するフレームの送出開始時点から送出完了時点までに要する時間とを加算して、前記連続するフレーム間の送出時間の間隔を算出する伝送装置。
【請求項7】
伝送路から受信したフレームを、複数のバッファのうち一のバッファに格納し、当該バッファから読み出して、他の伝送路に送出する伝送方法において、
前記バッファに格納されるフレームの廃棄予定時刻を決定する廃棄予定時刻決定ステップと、
前記フレームの送出順序を決定する送出順序決定ステップと、
前記決定した送出順序に基づき、前記バッファに格納された各フレームの送出予定時刻を算出する送出予定時刻算出ステップと、
前記送出予定時刻と前記廃棄予定時刻とに基づき、前記廃棄予定時刻が送出予定時刻以前に到達するフレームを廃棄する廃棄制御ステップと、
を有する伝送方法。
【請求項8】
伝送路から受信したフレームを、複数のバッファのうち一のバッファに格納し、当該バッファから読み出して、他の伝送路に送出する伝送装置のコンピュータを機能させる制御プログラムにおいて、
前記プログラムを、前記バッファに格納されるフレームの廃棄予定時刻を決定する廃棄予定時刻決定手段と、前記フレームの送出順序を決定する送出順序決定手段と、前記決定した送出順序に基づき、前記バッファに格納された各フレームの送出予定時刻を算出する送出予定時刻算出手段と、前記送出予定時刻と前記廃棄予定時刻とに基づき、前記廃棄予定時刻が送出予定時刻以前に到達するフレームを廃棄する廃棄制御手段として機能させる制御プログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【公開番号】特開2011−35613(P2011−35613A)
【公開日】平成23年2月17日(2011.2.17)
【国際特許分類】
【出願番号】特願2009−179199(P2009−179199)
【出願日】平成21年7月31日(2009.7.31)
【出願人】(000005223)富士通株式会社 (25,993)
【Fターム(参考)】
【公開日】平成23年2月17日(2011.2.17)
【国際特許分類】
【出願日】平成21年7月31日(2009.7.31)
【出願人】(000005223)富士通株式会社 (25,993)
【Fターム(参考)】
[ Back to top ]