JP2016111621A - パケット伝送装置 - Google Patents

パケット伝送装置 Download PDF

Info

Publication number
JP2016111621A
JP2016111621A JP2014249273A JP2014249273A JP2016111621A JP 2016111621 A JP2016111621 A JP 2016111621A JP 2014249273 A JP2014249273 A JP 2014249273A JP 2014249273 A JP2014249273 A JP 2014249273A JP 2016111621 A JP2016111621 A JP 2016111621A
Authority
JP
Japan
Prior art keywords
packet
buffer threshold
transmission
buffer
time
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2014249273A
Other languages
English (en)
Other versions
JP6450175B2 (ja
Inventor
青木 勝典
Katsunori Aoki
勝典 青木
智史 小山
Satoshi Koyama
智史 小山
史貴 鵜澤
Fumitaka Uzawa
史貴 鵜澤
和彦 光山
Kazuhiko Mitsuyama
和彦 光山
直彦 居相
Naohiko Iso
直彦 居相
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.)
Japan Broadcasting Corp
Original Assignee
Nippon Hoso Kyokai NHK
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 Nippon Hoso Kyokai NHK filed Critical Nippon Hoso Kyokai NHK
Priority to JP2014249273A priority Critical patent/JP6450175B2/ja
Publication of JP2016111621A publication Critical patent/JP2016111621A/ja
Application granted granted Critical
Publication of JP6450175B2 publication Critical patent/JP6450175B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

【課題】通信路の伝送速度の変更機能を有し、当該伝送速度の変更に応じたパケット待機制御を行うパケット伝送装置を提供する。
【解決手段】本発明によるパケット伝送装置51aは、設定した伝送速度にてパケットを送信するパケット出力部514と、パケット出力部514から送信するパケットを一時的にバッファに保持し、当該パケットをバッファに格納する際に、パケット出力部514からの伝送速度の速度変更を監視してバッファに格納できるパケット数若しくはデータ量についての可変の上限を規定するバッファ閾値を制御するバッファ閾値制御部518を有するパケット待機制御部513aと、を備え、バッファ閾値制御部518は、所定の規定時間より短い時間間隔で当該伝送速度を変更する際に、当該伝送速度の変更に応じてバッファ閾値を変更するよう制御する手段を有する。
【選択図】図1

Description

本発明は、伝送速度の切り替え可能な通信路を介して、IP(Internet protocol)パケットやイーサネット(登録商標)パケットなどのパケットを伝送するパケット伝送装置に関し、特に、伝搬状況の変化に応じて伝送速度を切り替える無線通信路などを用いて、通信路の伝送能力を活用して効率よくパケットを伝送するパケット伝送装置に関する。
インターネットプロトコル(IP)を用いたデータ通信では、IPパケットにデータを格納し、パケット伝送装置と通信路を経由してIPパケットを伝送することで、データを伝送する。図7に、離れた地点にある送信端末50と受信端末53が、パケット伝送装置51及びパケット伝送装置52と通信路12及び通信路21を介して、データ通信を行う場合のネットワークの概略構成例を示す。ここで、送信端末50とパケット伝送装置51との間は通信路01及び通信路10を介して相互接続され、受信端末53とパケット伝送装置52との間は、通信路23及び通信路32を介して相互接続されるものとする。
通信路12の伝送能力を有効に活用して効率よくパケットを伝送するには、送信端末50からパケット伝送装置51に出力するパケットの出力速度を通信路12の伝送速度の範囲内で、できるだけ高い速度に制御する必要がある。
IPを用いたデータ通信を行う機器では、確実にデータを伝送するために、廃棄されたパケットにて伝送されていたデータを回復したり、通信路の伝送速度に応じてパケットの出力速度を制御する機能(輻輳制御機能)を備えたデータ通信プロトコルを利用してデータ通信を行っている。これらの機器のデータ通信プロトコルには、TCP(Transmission Control Protocol)が広く使われている。
まず、伝送速度が変化しない場合について、送信端末50のパケットの出力速度が、TCPの輻輳制御機能により通信路12の伝送速度の範囲内で、できるだけ高い速度に制御されることを説明する。
図8は、従来のパケット伝送装置の一例を示すブロック図である。図7におけるパケット伝送装置51,52はそれぞれ同様の構成とすることができ、代表的にパケット伝送装置51を説明する。パケット伝送装置51は、パケット入力部511,515、パケット転送部512、パケット待機制御部513,516、及びパケット出力部514,517で構成される。
パケット入力部511は、送信端末50から出力されたパケットを通信路01経由で受信し、パケット転送部512に入力する。パケット入力部515は、対向するパケット伝送装置52から送信されたパケットを通信路21経由で受信し、パケット転送部512に入力する。
パケット転送部512は、入力されたパケットの宛先を解析してパケットの出力先を判別し、判別したパケット出力部517と接続するパケット待機制御部516にパケットを入力する。したがって、パケット転送部512は、例えばハブ又はスイッチとして構成され、複数のパケット出力部517の各々と接続する複数のパケット待機制御部516に対して、パケットの出力先を決定するように構成することができる(図示せず)。
パケット待機制御部513及びパケット待機制御部516は、それぞれに入力されたパケットを一時的にバッファに保持する機能を有し、それぞれパケット出力部514及びパケット出力部517から送信するためのパケットを受け取り、それぞれのパケット出力部514,517が接続する通信路12,10から送信可能になるまで、当該パケットをそれぞれのバッファに一時的に保持する。
尚、パケット待機制御部513及びパケット待機制御部516は、パケットをバッファに格納する際に、バッファに格納できるパケット数若しくはデータ量が固定の上限(所定のバッファサイズ)に達しているか否かを判定し、このバッファサイズに達していればパケット格納不可と判定し、入力されたパケット若しくは格納中のパケットのいずれかを廃棄する。
パケット出力部514は、パケット待機制御部513からパケットを取り出し、設定した伝送速度にて通信路12にパケットを送信する。パケット出力部517は、パケット待機制御部516からパケットを取り出し、通信路10にパケットを送信する。
したがって、パケット伝送装置51は、以前の送信したパケットの伝送のために通信路が使用中であるときや通信路を利用できないなどの理由により、パケットが入力されてもすぐに送信できない場合には、パケットの廃棄を防ぐため、当該パケットをパケット待機制御部513,516のバッファに格納し、通信路12,10へ送信可能になるまで保持する。しかし、従来のパケット伝送装置51では、バッファが格納できるパケットの数やデータ量に固定の上限があり、この固定の上限(所定のバッファサイズ)を超えたときにはパケットを廃棄する。
次にTCPの輻輳制御について説明する。TCPは、輻輳ウィンドウ(cwnd)を用いてパケットの出力速度の制御を可能とする技法として知られている(例えば、特許文献1参照)。
TCPに基づく受信端末53は、送信端末50から出力されたパケットが受信端末53に入力され、正しく伝送されたことを確認できると、次に受け取るべきデータを参照する位置情報を確認応答(ACK)情報として送信端末50に送信する。送信端末50は、データを一度に全部出力するのでなく、ACK情報により指定された位置からcwndまでの範囲のデータを出力するフロー制御を行う。この機構によりパケットの出力速度の最高速度は、輻輳ウィンドウ/往復遅延時間に制限される。尚、往復遅延時間(RTT)とは、パケットを送信してから、そのパケットの確認応答パケットを受信するまでの時間である。
TCPの輻輳制御では、このcwndの大きさを調整することで、通信路の伝送速度にパケットの送出速度を追従させる。TCPの輻輳制御方式には幾つかの方式があるが、パケットロスを検出するまでcwndを徐々に拡大し、パケットロスを検出するとcwndを急速に減少させるロスベースの輻輳制御技法が広く用いられている(例えば、特許文献1参照)。
代表的なロスベースの輻輳制御技法であるTCP New Renoでは、cwndの増加量はRTTあたり1パケットであり、減少量はcwndの1/2となるように制御している。図9に、TCP New Renoにおけるcwndの時間変化の例を示す。
この輻輳制御の機能により、送信端末50のパケットの出力速度はcwndの増加に応じて徐々に増加する。この出力速度が通信路12の伝送速度を超えると、パケット伝送装置51へと入力するパケット速度が、パケット伝送装置51の送出するパケット速度を上回り、パケット待機制御部513におけるバッファのパケット蓄積量が増加するようになり、やがてパケット蓄積量が当該固定の上限(所定のバッファサイズ)に達しパケット廃棄が起こる。送信端末50では、ACK情報からパケットロスを検出するとcwndを減少させ、パケット出力速度を減少させる。この繰り返しにより、送信端末50のパケット出力速度が、TCPの輻輳制御機能により通信路の伝送速度の近傍に制御される。
このように、TCPの輻輳制御機能により、送信端末50のパケットの出力速度が通信路12の伝送速度の近傍に制御される。
ここで、従来のパケット伝送装置51で通信路12の伝送速度を切り変えた場合についても、輻輳制御機能により、自動的にデータ送信速度が調整される。
つまり、伝送速度を増加させると、最初は送信端末50のパケットの出力速度よりパケット伝送装置51の送出するパケット速度が上回り、パケット待機制御部513におけるバッファのパケット蓄積量が減少する。伝送速度の切り替え時のcwndの値が小さく、パケット蓄積量が少ないときに当該切り替えが発生した場合には、バッファが枯渇し送信するパケットが無くなり、次のパケットがパケット伝送装置51に入力されるまで通信路12に空きを生じる。この通信路12に空きを生じ、パケットの送信が間歇的になる現象は、cwndが徐々に拡大し、当該送出するパケット速度が増加し、新たな伝送速度に達し、継続的にパケットがバッファに蓄積されるようになるまで継続する。この現象が継続する間、パケットロスは発生しない。
特開2005−151202号公報
前述したように、従来のパケット伝送装置51で通信路12の伝送速度を切り変えた場合についても、輻輳制御機能により、自動的にデータ送信速度が調整されることになる。しかし、cwndの拡大はゆっくりと行われることから、伝送速度を速くしても、送信端末50のパケットの出力速度がすぐには新たな伝送速度まで増加せず、通信路12の空きを生ずる期間が長くなるという問題がある。したがって、従来のパケット伝送装置51では、伝送速度が小さい時はcwndの最大値が小さいため、この問題が発生し易い問題があった。
逆に、伝送速度が減少すると、受信端末53へのパケット入力間隔が長くなり、送信端末50に伝送するACK情報の出力間隔も長くなり、自動的に送信端末50におけるパケットの出力速度が抑えられる。
しかし、送信端末50へのACK情報の間隔が変化するのは、伝送速度が低下してからRTT経過後である。この間、送信端末50におけるパケットの出力速度は伝送速度変更前のままである。このため、パケット伝送装置51の送信待ちパケットが急速に増加する。この結果、従来のパケット伝送装置51では、パケット待機制御部513におけるバッファに格納できる上限を超える状態が継続し大量のパケットロスが発生する場合があった。
また、伝送速度を減少させてから送信端末50のパケットの出力速度が抑制されるまでのパケットの超過は一時的なものである。このような一時的な通信量の増加に対しては、ネットワークの中間部で通信速度が低い隘路となる部分よりも前に(例えば、パケット待機制御部513に相当する箇所)、十分な量のバッファと精密に帯域を制御する回路を組み合わせた平滑化装置を設けることにより通信量を平滑化する技法が知られている(例えば、特許文献1参照)。しかしながら、通信路12における伝送速度を減少してRTT時間経過するまで、或いはRTT時間経過した後の送信端末50のパケットの出力速度は、送信端末50のパケットの出力速度が抑制されるまでは当該伝送速度を減少した後の通信路12の伝送速度以下にはならないことから、平滑化しても通信路12の伝送速度以下にすることができないため、当該平滑化装置を追加しても、大量のパケットロスが発生する問題を解決することができない。
このように、従来のパケット伝送装置51では、通信路12の伝送速度を増加させても、ロスベースの輻輳制御技法を用いる送信端末50のcwndがすぐには増加しないことから、伝送速度の切り替え時のcwndの値が小さい場合には、パケットの送信が間歇的に行われ通信路12に空きが発生する状態が長く継続し、通信路12を有効に活用できないという問題があった。
また、通信路12の伝送速度を低下させたときに大量のパケットロスを起こすことがあった。大量のパケットロスは、他の通信に影響が波及し、リアルタイム通信でのデータ欠損や、欠損データの再送に伴うレスポンスの低下、通信速度の低下など大きな影響を与える問題があった。
そこで、本発明は上述の問題を鑑みて為されたものであり、本発明の目的は、通信路12の伝送速度の増加時にも連続的なパケットの送信を可能とし、通信路12の伝送速度の低下時にも大量のパケットロスの発生を抑制するために、通信路12の伝送速度の変更機能を有し、当該伝送速度の変更に応じたパケット待機制御を行うパケット伝送装置を提供することにある。
本発明によるパケット伝送装置は、通信路の伝送速度の変更機能を有するパケット伝送装置であって、設定した伝送速度にてパケットを送信するパケット出力部と、前記パケット出力部から送信するパケットを一時的にバッファに保持し、当該パケットをバッファに格納する際に、前記パケット出力部からの伝送速度の変更を監視して前記バッファに格納できるパケット数若しくはデータ量についての可変の上限を規定するバッファ閾値を制御するバッファ閾値制御部を有するパケット待機制御部とを備え、前記バッファ閾値制御部は、所定の規定時間より短い時間間隔で当該伝送速度を変更する際に、前記伝送速度の速度変更に応じて前記バッファ閾値を変更するよう制御する手段を有することを特徴とする。
特に、本発明による第1態様のパケット伝送装置は、前記バッファ閾値制御部は、前記所定の規定時間の計測開始時点における伝送速度の値を初期値とする初期伝送速度と当該所定の規定時間との積に予め定めた固定補正係数を乗じた値に対して、前記初期伝送速度と、当該伝送速度の変更を検知した現在の伝送速度との差分について連続的に時間積分した値をバッファ補正値として加算することを特徴とする。
また、本発明による第2態様のパケット伝送装置は、前記バッファ閾値制御部は、前記所定の規定時間の計測開始時点における伝送速度の値を初期値とする初期伝送速度と当該所定の規定時間との積に予め定めた固定補正係数を乗じた値に対して、前記初期伝送速度と、当該伝送速度の変更を検知した現在の伝送速度との差分について予め定めたサンプリング時間の間隔で時間積分した値をバッファ補正値として加算することを特徴とする。
また、本発明による第3態様のパケット伝送装置は、前記バッファ閾値制御部は、前記所定の規定時間の計測開始時点における伝送速度の値を初期値とする初期伝送速度と当該所定の規定時間との積に予め定めた固定補正係数を乗じた値に対して、伝送速度の変更を検知した際に現在設定されているバッファ閾値、該バッファ閾値を設定した際の当該伝送速度である基準速度、伝送速度の変更を検知し速度増加と判定した時刻と前記所定の規定時間を基に定める当該バッファ閾値の変更予定時刻、及び該バッファ閾値の変更予定の有無、の4つのパラメータ値を保持して、当該伝送速度の増加時と減少時を区別して前記バッファ閾値の変更予定時刻を定め、当該伝送速度の変更時、及び前記バッファ閾値の変更予定時刻にてバッファ補正値を決定して加算し当該バッファ閾値を制御することを特徴とする。
また、本発明による第3態様のパケット伝送装置において、前記バッファ閾値制御部は、前記バッファ補正値に基づくバッファ閾値制御として、前記バッファ閾値の変更予定時刻まで当該伝送速度の変更を監視し、前記バッファ閾値の変更予定時刻の経過前に当該伝送速度の速度減少があったときに、現在設定されている基準速度を下回っているときは、当該バッファ閾値を当該基準速度と当該速度変更後の伝送速度との差分に前記所定の規定時間を乗じた値で加算増加して制御するとともに、該基準速度を当該速度変更後の伝送速度で更新して、前記バッファ閾値の変更予定は無とし、前記バッファ閾値の変更予定時刻の経過前に当該伝送速度の速度減少があったときに、現在設定されている基準速度を下回っていないときは、前記バッファ閾値の変更予定時刻まで当該伝送速度の変更を継続して監視し、前記バッファ閾値の変更予定時刻の経過前に当該伝送速度の速度増加があったときに、当該速度増加の時点から前記所定の規定時間経過後のバッファ閾値の変更とするよう前記バッファ閾値の変更予定時刻を設定して予約し、現在設定されている基準速度及びバッファ閾値を変更することなく前記バッファ閾値の変更予定は有とし、前記バッファ閾値の変更予定時刻となる際に、前記バッファ閾値を該現在の伝送速度と前記バッファ閾値の変更予定時刻となる直前の基準速度との差分に前記所定の規定時間を乗算した値で現在設定されているバッファ閾値から減算して制御することを特徴とする。
また、本発明によるパケット伝送装置において、前記バッファ閾値制御部は、当該バッファ閾値の変更時における前記バッファ補正値に、通信路のジッタ量の応じた固定補正値を更に追加する手段を有することを特徴とする。
また、本発明によるパケット伝送装置において、前記所定の規定時間は、当該パケット伝送装置に通信接続する送信端末と該送信端末からのパケットを受信する受信端末との間の往復遅延時間とすることを特徴とする。
また、本発明によるパケット伝送装置において、前記所定の規定時間は、当該パケット伝送装置と対向するパケット伝送装置との往復遅延時間に一定のマージンを追加した値とすることを特徴とする。
本発明によれば、通信路の伝送速度を低下させても、ロスベースの輻輳制御を用いる送信端末のcwndの最大値を高く維持することができ、通信路の伝送速度を低速から高速に切り替えたときに、パケットの送信が間歇的となることを防ぐことができ、通信路の伝送能力を有効に活用した効率のよいパケット伝送が実現可能となる。
また、通信路の伝送速度を低下させたときにバッファが溢れ、大量のパケットロスの発生を抑制又は防止することができる。この結果、大量のパケットロスによるリアルタイム通信でのデータ欠損や、欠損データの再送に伴うレスポンスの低下、通信速度の低下など他の通信への影響を防止し、通信路の伝送能力を有効に活用した効率のよいパケット伝送が実現可能となる。特に、本発明によれば、規定時間より短い時間間隔で伝送速度を変更する場合にも、バッファ溢れによるパケットロスを防ぐことができる。
本発明による一実施形態のパケット伝送装置のブロック図である。 (a),(b)は、それぞれ本発明による一実施形態のパケット伝送装置における実施例1のバッファ閾値制御時の伝送速度とバッファ閾値の動作例を示す図である。 本発明による一実施形態のパケット伝送装置における実施例2のバッファ閾値制御のフローチャートである。 (a),(b)は、それぞれ本発明による一実施形態のパケット伝送装置における実施例2のバッファ閾値制御時の伝送速度とバッファ閾値の動作例を示す図である。 本発明による一実施形態のパケット伝送装置における実施例3のバッファ閾値制御のフローチャートである。 (a),(b)は、それぞれ本発明による一実施形態のパケット伝送装置における実施例3のバッファ閾値制御時の伝送速度とバッファ閾値の動作例を示す図である。 送信端末と受信端末が、パケット伝送装置及びパケット伝送装置を介して、データ通信を行う場合のネットワークの概略構成例を示す図である。 従来のパケット伝送装置の一例を示すブロック図である。 TCP New Renoにおける輻輳ウィンドウ(cwnd)の時間変化の例を示す図である。
以下、図面を参照して、本発明による一実施形態のパケット伝送装置について説明する。図1は、本発明による一実施形態のパケット伝送装置51aのブロック図である。
図7に示したように、離れた地点にある送信端末50と受信端末53が、パケット伝送装置51及びパケット伝送装置52と通信路12及び通信路21を介して、データ通信を行うネットワークを想定し、本発明に係るパケット伝送装置51aは、従来のパケット伝送装置51の代わりに設けられるものとして説明する。尚、送信端末50から受信端末53の方向のパケットを伝送する通信路01、通信路12及び通信路23の中で伝送速度が最も遅い通信路は通信路12であるとする。また、各装置は、TCPを利用してデータ通信を行うものとする。
図1に示す本発明による一実施形態のパケット伝送装置51aは、図8に示す従来のパケット伝送装置51と同様の構成要素には同一の参照番号を付している。即ち、本発明による一実施形態のパケット伝送装置51aは、パケット入力部511,515、パケット転送部512、パケット待機制御部513a,516、及びパケット出力部514,517で構成され、パケット待機制御部513aがバッファ閾値制御部518を有する点で、従来のパケット伝送装置51とは相違する。
パケット入力部511は、送信端末50から出力されたパケットを通信路01経由で受信し、パケット転送部512に入力する。パケット入力部515は、対向するパケット伝送装置52から送信されたパケットを通信路21経由で受信し、パケット転送部512に入力する。
パケット転送部512は、入力されたパケットの宛先を解析してパケットの出力先を判別し、判別したパケット出力部517と接続するパケット待機制御部516にパケットを入力する。したがって、パケット転送部512は、例えばハブ又はスイッチとして構成され、複数のパケット出力部517の各々と接続する複数のパケット待機制御部516に対して、パケットの出力先を決定するように構成することができる(図示せず)。
パケット待機制御部513a及びパケット待機制御部516は、それぞれに入力されたパケットを一時的にバッファに保持する機能を有し、それぞれパケット出力部514及びパケット出力部517から送信するためのパケットを受け取り、それぞれのパケット出力部514,517が接続する通信路12,10から送信可能になるまで、当該パケットをそれぞれのバッファに一時的に保持する。
ただし、パケット待機制御部513aは、パケットをバッファに格納する際に、バッファに格納できるパケット数若しくはデータ量が可変の上限(以下、「バッファ閾値」と称する)に達しているか否かを判定し、このバッファ閾値に達していればパケット格納不可と判定し、入力されたパケット若しくは格納中のパケットのいずれかを廃棄する。
一方、パケット待機制御部516は、パケットをバッファに格納する際に、バッファに格納できるパケット数若しくはデータ量が固定の上限(所定のバッファサイズ)に達しているか否かを判定し、このバッファサイズに達していればパケット格納不可と判定し、入力されたパケット若しくは格納中のパケットのいずれかを廃棄する。
パケット出力部514は、パケット待機制御部513aからパケットを取り出し、変更可能な設定した伝送速度にて通信路12にパケットを送信する。パケット出力部517は、パケット待機制御部516からパケットを取り出し、通信路10にパケットを送信する。
したがって、パケット伝送装置51aは、以前の送信したパケットの伝送のために通信路が使用中であるときや通信路を利用できないなどの理由により、パケットが入力されてもすぐに送信できない場合には、パケットの廃棄を防ぐため、当該パケットをパケット待機制御部513a,516のバッファに格納し、通信路12,10へ送信可能になるまで保持する。そして、本発明に係るパケット伝送装置51aは、パケット待機制御部513aが有するバッファ閾値制御部518の機能により、バッファが格納できるパケットの数やデータ量に可変の上限(バッファ閾値)があり、このバッファ閾値を超えたときにはパケットを廃棄する。
以下、バッファ閾値制御部518における実施例1〜3のバッファ閾値制御について順に説明する。尚、バッファ閾値制御部518は、初期バッファ閾値にバッファ補正値を加算した値をバッファ閾値としており、このバッファ補正値を異なるやり方で生成制御することで、各実施例のバッファ閾値制御が構成される。所定の初期バッファ閾値は、所定の規定時間(即ち、後述する予め定めた往復遅延時間Trttであり、例えばRTT)の計測開始時点における伝送速度の値を初期値とする初期伝送速度と該規定時間との積に固定補正係数αを乗じた値とすることができる。固定補正係数αの値は、“1”としてもよいし、“1未満の値”又は“1を超える値”としてもよく、予め定めた値とする。ここで、「初期バッファ閾値にバッファ補正値を加算する値」とは、バッファ補正値がマイナスの値となるとき、初期バッファ閾値からそのバッファ補正値の絶対値を減算することを意味する点に留意する。一方、本発明の理解を高めるために、特筆して「追加する」と表現するときは、対象値の絶対値を加えるものとし、特筆して「減算する」と表現するときは、対象値の絶対値を減ずるものとして説明する。
(実施例1のバッファ閾値制御)
まず、バッファ閾値制御部518による実施例1のバッファ閾値制御について説明する。バッファ閾値制御部518による実施例1のバッファ閾値制御では、当該初期伝送速度と、速度変更を検知した現在の伝送速度との差分について連続的に時間積分した値をバッファ補正値とする。
図2(a),(b)は、それぞれパケット伝送装置51aにおけるバッファ閾値制御部518による実施例1のバッファ閾値制御における伝送速度とバッファ閾値の動作例を示している。図2(a)に示すように、伝送速度が時刻t0でS0からS1に減少し、時刻t2にてS2に増加する場合、例えば、図2(b)に示すように、時刻t0から規定時間(Trtt)が経過するまでの時刻tにおけるバッファ閾値thは初期バッファ閾値th0に、(S0−S1)×(t−t0)をバッファ補正値として加算した値となる。
尚、バッファ閾値は、当該バッファ補正値を加算する他に、更なる固定補正値を「追加」したものとしてもよい。例えば、通信路01、通信路12、通信路23、通信路32、通信路21及び通信路10において、大きなジッタが発生する場合がある。このような場合、ジッタの大きさに応じて固定補正値を当該バッファ補正値に「追加する」のが好適である。
このように実施例1のバッファ閾値制御でバッファ閾値制御部518を構成することにより、規定時間(Trtt)より短い時間間隔で伝送速度を変更する場合にも、バッファ溢れによるパケットロスを防ぐことができる。
(実施例2のバッファ閾値制御)
次に、バッファ閾値制御部518による実施例2のバッファ閾値制御について説明する。バッファ閾値制御部518による実施例2のバッファ閾値制御では、当該初期伝送速度と、速度変更を検知した現在の伝送速度との差分について予め定めたサンプリング時間の間隔で時間積分した値をバッファ補正値とする。
図3は、バッファ閾値制御部518による実施例2のバッファ閾値制御のフローチャートである。本例でもバッファ閾値制御部518は、前記初期バッファ閾値にバッファ補正値を加算した値をバッファ閾値としているが、このバッファ補正値は、予め定めたサンプリング時間を基に時間積分した値で構成される。尚、本例においてもバッファ補正値に更なる固定補正値を追加してもよい。
まず、バッファ閾値制御部518は、初期化処理として、過去規定時間までの伝送速度の記録を現在の伝送速度と等しい値で初期化し(ステップS1)、監視する(伝送速度差)の値を0として保持する(ステップS2)。このとき、バッファ閾値制御部518は、バッファ閾値として、前述した所定の初期バッファ閾値を設定する。
続いて、バッファ閾値制御部518は、予め定めたサンプリング時間の経過を待ち(ステップS3)、当該バッファ閾値に、(伝送速度差)×(サンプリング時間)をバッファ補正値として加算する(ステップS4)。尚、監視する(伝送速度差)の値は後続のステップで更新されるものである。
続いて、バッファ閾値制御部518は、当該サンプリング時間の経過時の新たな伝送速度を取得して現在の伝送速度として記録し(ステップS5)、当該(規定時間前の伝送速度)−(新たな伝送速度)を算出して保持する(伝送速度差)の値を更新する(ステップS6)。
そして、初期化されるまで、ステップS3以降を繰り返し、バッファ閾値制御部518は、予め定めたサンプリング時間の経過を待ち、当該バッファ閾値に、(伝送速度差)×(サンプリング時間)をバッファ補正値として加算する。
図4(a),(b)は、それぞれパケット伝送装置51aにおけるバッファ閾値制御部518による実施例2のバッファ閾値制御における伝送速度とバッファ閾値の動作例を示している。図4(a)に示すように、伝送速度が時刻t0でS0からS1に減少し、時刻t2にてS2に増加する場合、例えば、図4(b)に示すように、時刻t0から規定時間(Trtt)が経過するまでの時刻tにおけるバッファ閾値thは初期バッファ閾値th0に、一定のサンプリング時間st間隔で(S0−S1)×(t−t0)をバッファ補正値として加算した値となる。尚、バッファ補正値がマイナスとなるときは減算となる。
このように実施例2のバッファ閾値制御でバッファ閾値制御部518を構成することにより、規定時間(Trtt)より短い時間間隔で伝送速度を変更する場合にも、バッファ溢れによるパケットロスを防ぐことができる。
(実施例3のバッファ閾値制御)
次に、バッファ閾値制御部518による実施例3のバッファ閾値制御について説明する。バッファ閾値制御部518による実施例3のバッファ閾値制御では、伝送速度の変更を検知した際に設定されている「現在のバッファ閾値(動作中のバッファ閾値)」、その「現在のバッファ閾値」設定時の伝送速度である「基準速度」、伝送速度の変更を検知し速度増加と判定した時刻(速度増加時刻)と規定時間(例えば、RTT)を基に定める「バッファ閾値の変更予定時刻」、及びその「バッファ閾値の変更予定の有無」、の4つのパラメータ値を保持して、実施例1,2のような時間積分による制御とはせず、伝送速度の増加時と減少時を区別してバッファ閾値の変更予定時刻を定め、その伝送速度の変更時やバッファ閾値の変更予定時刻で、前記初期バッファ閾値に加算するためのバッファ補正値を決定してバッファ閾値を制御する。これにより、伝送速度の速度変更に応じたバッファ閾値の変更を行う制御を簡便にしてバッファ溢れによるパケットロスを防ぐようにする。
図5は、バッファ閾値制御部518による実施例3のバッファ閾値制御のフローチャートである。本例でもバッファ閾値制御部518は、前述した初期バッファ閾値にバッファ補正値を加算した値をバッファ閾値としているが、このバッファ補正値は、上述の4つのパラメータ値を基に自動制御した値で構成される。
まず、バッファ閾値制御部518は、初期化処理として、「基準速度」を現在の伝送速度と等しい値(初期伝送速度)で初期化し、「バッファ閾値」として、前述した所定の初期バッファ閾値を設定するとともに、「バッファ閾値の変更予定は無」に設定して保持する(ステップS11)。この初期化処理により、「バッファ閾値の変更予定は無」に設定するため、「バッファ閾値の変更予定時刻」は規定時間(例えば、RTT)経過時の時刻に設定する。
基本動作として、バッファ閾値制御部518は、「バッファ閾値の変更予定時刻」まで伝送速度の変更を監視し(ステップS12)、「バッファ閾値の変更予定時刻」の経過前に伝送速度の速度減少があったとき(ステップS13:No,ステップS14:Yes)、速度変更後の伝送速度が現在設定されている基準速度を下回っていれば(ステップS15:Yes)、バッファ閾値を当該基準速度と当該速度変更後の伝送速度との差分に規定時間(例えば、RTT)を乗じた値で加算増加して制御し、保持する「現在のバッファ閾値」を更新するとともに、保持する「基準速度」を当該速度変更後の伝送速度で更新し、「バッファ閾値の変更予定は無」とする(ステップS16)。その後、継続して、「バッファ閾値の変更予定時刻」まで伝送速度の変更を監視する(ステップS12)。
一方、「バッファ閾値の変更予定時刻」の経過前に伝送速度の速度増加があったとき(ステップS13:No,ステップS14:No)、その速度増加の時点から規定時間(例えば、RTT)経過後にバッファ閾値の変更とするよう「バッファ閾値の変更予定時刻」を設定して予約し、当該基準速度及び当該動作中のバッファ閾値を変更することなく「バッファ閾値の変更予定は有」とする(ステップS17)。これにより、バッファに格納するパケットの減少が収まるまでバッファ閾値の変更を延期する。特に、段階的に速度が増加する場合には、「バッファ閾値の変更予定時刻」が自動的に更新され、最後に速度が増加した時刻(即ち、速度増加時刻)から規定時間後の時刻に設定される。その後、継続して、「バッファ閾値の変更予定時刻」まで伝送速度の変更を監視する(ステップS12)。
尚、ステップS14では伝送速度の速度変更が検知されたときに動作し、伝送速度の速度増加後、再びその速度が減少するような場合も、基準速度より下回っていなければ基準速度を変更することはなく(ステップS15:No)、その後、継続して、「バッファ閾値の変更予定時刻」まで伝送速度の変更を監視する(ステップS12)。
そして、「バッファ閾値の変更予定時刻」となる際に(ステップS13:Yes)、伝送速度が若干遅くなっている可能性を考慮して、バッファ閾値を当該現在の伝送速度と基準速度との差分に規定時間(例えば、RTT)を乗算した値を、保持していた「現在のバッファ閾値」から「減算」した値を新たな「バッファ閾値」として制御し、現在の伝送速度の値を「基準速度」として更新するとともに「現在のバッファ閾値」を更新し、「バッファ閾値の変更予定は無」とする(ステップS18)。
本例のように、「最後に速度増加が起こってから規定時間(例えば、RTT)経過後」に「現在のバッファ閾値」を更新により「減算する」やり方とすることで、図6に示すようなバッファ閾値制御を実現することができる。
図6(a),(b)は、それぞれパケット伝送装置51aにおけるバッファ閾値制御部518による実施例3のバッファ閾値制御における伝送速度とバッファ閾値の動作例を示している。図6(a)に示すように、送信時の伝送速度が段階的に増減し、受信確認したデータの速度に対して規定時間(例えば、RTT)分の遅れがあるとする。そして、図6(a)に示す送信時の伝送速度の段階的な増減と受信確認したデータの速度との関係から、図6(b)に示すように、バッファに格納したパケット量が変化するとする。
バッファ溢れによるパケットロスを防ぐようにするには、当該バッファ量の変化に応じて、バッファ閾値thを制御すればよい。そこで、図6(b)に示す「C1」や「C2」では、バッファ閾値を当該基準速度と当該速度変更後の伝送速度との差分に規定時間(例えば、RTT)を乗じた値で加算増加して制御し、保持する「現在のバッファ閾値」を更新するとともに、保持する「基準速度」を当該速度変更後の伝送速度で更新し、「バッファ閾値の変更予定は無」とする(図5に示すステップS16の処理)。
図6(b)に示す「C3」では、伝送速度の速度増加により、その速度増加の時点から規定時間(例えば、RTT)経過後のバッファ閾値の変更とするよう「バッファ閾値の変更予定時刻」を設定して予約し、当該基準速度を変更することなく「バッファ閾値の変更予定は有」とする(図5に示すステップS17の処理)。
図6(b)に示す「C4」では、伝送速度の速度増加後、再びその速度が減少するような場合も、基準速度より下回っていなければ基準速度を変更することはない(図5に示すステップS15の処理)。
図6(b)に示す「C5」では、伝送速度の速度増加により、その速度増加の時点から規定時間(例えば、RTT)経過後のバッファ閾値の変更とするよう「バッファ閾値の変更予定時刻」を設定して予約し、当該基準速度及び当該動作中のバッファ閾値を変更することなく「バッファ閾値の変更予定は有」とする(図5に示すステップS17の処理)。
図6(b)に示す「C6」では、「バッファ閾値の変更予定時刻」となり、バッファ閾値を当該現在の伝送速度と当該バッファ閾値の変更予定時刻となる直前の基準速度との差分に規定時間(例えば、RTT)を乗算した値で保持していた「現在のバッファ閾値」から「減算」して制御し、その現在の伝送速度の値を「基準速度」として更新するとともに「現在のバッファ閾値」を更新し、「バッファ閾値の変更予定は無」とする(図5に示すステップS18の処理)。
このように、実施例3のバッファ閾値制御では、伝送速度の変更を検知した際に設定されている「現在のバッファ閾値」、「基準速度」、伝送速度の変更を検知し速度増加と判定した時刻(速度増加時刻)と規定時間(例えば、RTT)を基に定める「バッファ閾値の変更予定時刻」、及びその「バッファ閾値の変更予定の有無」、の4つのパラメータ値を保持して、伝送速度の増加時と減少時を区別してバッファ閾値の変更予定時刻を定め、その伝送速度の変更時やバッファ閾値の変更予定時刻でバッファ補正値を決定しバッファ閾値を制御する。これにより、伝送速度の速度変更に応じたバッファ閾値の変更を行う制御を簡便にしてバッファ溢れによるパケットロスを防ぐようにする。
本例においても、バッファ補正値に更なる固定補正値を追加してもよい。例えば、通信路01、通信路12、通信路23、通信路32、通信路21および通信路10において、大きながジッタが発生する場合がある。このような場合、ジッタの大きさに応じて固定補正値を当該バッファ補正値に「追加する」のが好適である。
このように実施例3のバッファ閾値制御でバッファ閾値制御部518を構成することにより、規定時間(Trtt)より短い時間間隔で伝送速度を変更する場合にも、バッファ溢れによるパケットロスを防ぐことができる。
尚、各実施例の「規定時間(Trtt)」は、実際にデータ通信を行う送信端末50と受信端末53との間の往復遅延時間(RTT)とすることが一般化する上で望ましいが、通信路12及び通信路21の伝送遅延が、他の通信路の伝送遅延より極端に大きい場合には、パケット伝送装置51aとパケット伝送装置52との間の往復遅延時間(RTT)に一定のマージンを追加した値とすることで、より正確となる。
このバッファ閾値制御部518の機能により、伝送速度を低下させてから送信端末50のパケットの出力速度が低下するまでの間のパケットを全てバッファに格納することで、大量のパケットロスの発生を防止することができる。
また、バッファ閾値が同じ値であれば、伝送速度が低速であるほどcwndの最大値が小さくなるが、低速時のバッファ閾値を増加することで、伝送速度を低下させた時のcwndの最大値の減少を防ぎ、高速伝送時のcwndを維持することができる。この効果により、通信路12の伝送速度を低速から高速に切り替えたときに発生するcwndの不足によりパケットの送信が間歇的となったとしても、これが長く続くことを防ぐことができる。
以上、特定の実施例を挙げて本発明を説明したが、本発明は前述の実施例に限定されるものではなく、その技術思想を逸脱しない範囲で種々変形可能である。例えば、パケット通信プロトコルの規定により、パケット転送の際にパケットヘッダなどパケットの一部を更新する必要があれば、パケット転送部512がこの処理を行うように構成することができる。
また、パケット入力部511で受信したパケットを必ずパケット出力部514からそのまま出力する、パケット入力部515で受信したパケットを必ずパケット出力部517からそのまま出力する用途では、パケット転送部512を持たない構成とすることができる。この場合は、パケット入力部511は受信したパケットをパケット待機制御部513aに、パケット入力部515は受信したパケットをパケット待機制御部516に、それぞれ直接入力する。
更に、パケット入力部511、パケット待機制御部513a及びパケット出力部514で構成した送信側パケット伝送装置と、パケット入力部515、パケット待機制御部516及びパケット出力部517で構成した受信側パケット伝送装置の2つのパケット伝送装置により、ネットワークを構成してもよい。この構成では、伝送速度を変えられる通信路12にパケットを送信する送信側パケット伝送装置が本発明の対象となり、受信側パケット伝送装置は従来のパケット伝送装置を用いてもよい。
本発明によれば、通信路の伝送能力を有効に活用した効率のよいパケット伝送が実現可能となるので、通信路の伝送速度の変更機能を有するパケット伝送装置の用途に有用である。
50 送信端末
51 従来のパケット伝送装置
51a 本発明に係るパケット伝送装置
52 従来のパケット伝送装置
53 受信端末
511,515 パケット入力部
512 パケット転送部
513,513a,516 パケット待機制御部
514,517 パケット出力部
518 バッファ閾値制御部

Claims (8)

  1. 通信路の伝送速度の変更機能を有するパケット伝送装置であって、
    設定した伝送速度にてパケットを送信するパケット出力部と、
    前記パケット出力部から送信するパケットを一時的にバッファに保持し、当該パケットをバッファに格納する際に、前記パケット出力部からの伝送速度の変更を監視して前記バッファに格納できるパケット数若しくはデータ量についての可変の上限を規定するバッファ閾値を制御するバッファ閾値制御部を有するパケット待機制御部とを備え、
    前記バッファ閾値制御部は、所定の規定時間より短い時間間隔で当該伝送速度を変更する際に、前記伝送速度の速度変更に応じて前記バッファ閾値を変更するよう制御する手段を有することを特徴とするパケット伝送装置。
  2. 前記バッファ閾値制御部は、前記所定の規定時間の計測開始時点における伝送速度の値を初期値とする初期伝送速度と当該所定の規定時間との積に予め定めた固定補正係数を乗じた値に対して、
    前記初期伝送速度と、当該伝送速度の変更を検知した現在の伝送速度との差分について連続的に時間積分した値をバッファ補正値として加算することを特徴とする、請求項1に記載のパケット伝送装置。
  3. 前記バッファ閾値制御部は、前記所定の規定時間の計測開始時点における伝送速度の値を初期値とする初期伝送速度と当該所定の規定時間との積に予め定めた固定補正係数を乗じた値に対して、
    前記初期伝送速度と、当該伝送速度の変更を検知した現在の伝送速度との差分について予め定めたサンプリング時間の間隔で時間積分した値をバッファ補正値として加算することを特徴とする、請求項1に記載のパケット伝送装置。
  4. 前記バッファ閾値制御部は、前記所定の規定時間の計測開始時点における伝送速度の値を初期値とする初期伝送速度と当該所定の規定時間との積に予め定めた固定補正係数を乗じた値に対して、
    伝送速度の変更を検知した際に現在設定されているバッファ閾値、該バッファ閾値を設定した際の当該伝送速度である基準速度、伝送速度の変更を検知し速度増加と判定した時刻と前記所定の規定時間を基に定める当該バッファ閾値の変更予定時刻、及び該バッファ閾値の変更予定の有無、の4つのパラメータ値を保持して、当該伝送速度の増加時と減少時を区別して前記バッファ閾値の変更予定時刻を定め、当該伝送速度の変更時、及び前記バッファ閾値の変更予定時刻にてバッファ補正値を決定して加算し当該バッファ閾値を制御することを特徴とする、請求項1に記載のパケット伝送装置。
  5. 前記バッファ閾値制御部は、前記バッファ補正値に基づくバッファ閾値制御として、
    前記バッファ閾値の変更予定時刻まで当該伝送速度の変更を監視し、
    前記バッファ閾値の変更予定時刻の経過前に当該伝送速度の速度減少があったときに、現在設定されている基準速度を下回っているときは、当該バッファ閾値を当該基準速度と当該速度変更後の伝送速度との差分に前記所定の規定時間を乗じた値で加算増加して制御するとともに、該基準速度を当該速度変更後の伝送速度で更新して、前記バッファ閾値の変更予定は無とし、
    前記バッファ閾値の変更予定時刻の経過前に当該伝送速度の速度減少があったときに、現在設定されている基準速度を下回っていないときは、前記バッファ閾値の変更予定時刻まで当該伝送速度の変更を継続して監視し、
    前記バッファ閾値の変更予定時刻の経過前に当該伝送速度の速度増加があったときに、当該速度増加の時点から前記所定の規定時間経過後のバッファ閾値の変更とするよう前記バッファ閾値の変更予定時刻を設定して予約し、現在設定されている基準速度及びバッファ閾値を変更することなく前記バッファ閾値の変更予定は有とし、
    前記バッファ閾値の変更予定時刻となる際に、前記バッファ閾値を該現在の伝送速度と前記バッファ閾値の変更予定時刻となる直前の基準速度との差分に前記所定の規定時間を乗算した値で現在設定されているバッファ閾値から減算して制御することを特徴とする、請求項4に記載のパケット伝送装置。
  6. 前記バッファ閾値制御部は、当該バッファ閾値の変更時における前記バッファ補正値に、通信路のジッタ量に応じた固定補正値を更に追加する手段を有することを特徴とする、請求項2から5のいずれか一項に記載のパケット伝送装置。
  7. 前記所定の規定時間は、当該パケット伝送装置に通信接続する送信端末と該送信端末からのパケットを受信する受信端末との間の往復遅延時間とすることを特徴とする、請求項1〜6のいずれか一項に記載のパケット伝送装置。
  8. 前記所定の規定時間は、当該パケット伝送装置と対向するパケット伝送装置との往復遅延時間に一定のマージンを追加した値とすることを特徴とする、請求項1〜7のいずれか一項に記載のパケット伝送装置。
JP2014249273A 2014-12-09 2014-12-09 パケット伝送装置 Active JP6450175B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014249273A JP6450175B2 (ja) 2014-12-09 2014-12-09 パケット伝送装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014249273A JP6450175B2 (ja) 2014-12-09 2014-12-09 パケット伝送装置

Publications (2)

Publication Number Publication Date
JP2016111621A true JP2016111621A (ja) 2016-06-20
JP6450175B2 JP6450175B2 (ja) 2019-01-09

Family

ID=56124955

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014249273A Active JP6450175B2 (ja) 2014-12-09 2014-12-09 パケット伝送装置

Country Status (1)

Country Link
JP (1) JP6450175B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI735984B (zh) * 2019-10-23 2021-08-11 瑞昱半導體股份有限公司 資料收發裝置及其操作方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005244480A (ja) * 2004-02-25 2005-09-08 Ntt Docomo Inc 通信装置、送信機、通信システム及び通信方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005244480A (ja) * 2004-02-25 2005-09-08 Ntt Docomo Inc 通信装置、送信機、通信システム及び通信方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI735984B (zh) * 2019-10-23 2021-08-11 瑞昱半導體股份有限公司 資料收發裝置及其操作方法

Also Published As

Publication number Publication date
JP6450175B2 (ja) 2019-01-09

Similar Documents

Publication Publication Date Title
US11070481B2 (en) Predictive management of a network buffer
US10218620B2 (en) Methods and nodes for congestion control
EP3120253B1 (en) Flow aware buffer management for data center switches
Feng et al. Understanding and improving TCP performance over networks with minimum rate guarantees
KR102187810B1 (ko) 통신 시스템에서 데이터 흐름 제어 장치 및 방법
EP3332519B1 (en) Data packet network
Lautenschlaeger et al. Global synchronization protection for bandwidth sharing TCP flows in high-speed links
EP3332522B1 (en) Data packet network
EP3471458A1 (en) Method and apparatus for controlling data transmission speed in wireless communication system
EP2985963A1 (en) Packet scheduling networking device
WO2016100890A1 (en) Smooth bandwidth-delay product variation inside wireless networks
JP6450175B2 (ja) パケット伝送装置
JP6417097B2 (ja) パケット伝送装置
US9407386B2 (en) Data processing
JP6450176B2 (ja) パケット伝送装置
US10284484B1 (en) Accelerated ramp up for delay-based rate adaptation
Reddy et al. A Combined TCP-friendly Rate control with WFQ Approach for Congestion Control for MANET
Hotchi et al. Active queue management supporting TCP flows using dynamically controlled target queue length
EP3046296A1 (en) Active queue management
Dahiya et al. Queuing Delay Assessment (STUDY OF End to End Congestion Control-LEDBAT)
Mehta et al. A Resolute Approach to Bufferbloat Crises: A Experimental Study using Network Simulator-2
Kandlurz et al. Understanding TCP Dynamics in a Differentiated Services Internet
Kandlurz et al. Understanding and Improving TCP Performance over Networks with Minimum Rate Guarantees
GB2541019A (en) Data packet network
GB2541016A (en) Data packet network

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20171030

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180820

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180911

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181105

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20181207

R150 Certificate of patent or registration of utility model

Ref document number: 6450175

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250