JP4380062B2 - Transmitting apparatus and method, and data relay apparatus - Google Patents
Transmitting apparatus and method, and data relay apparatus Download PDFInfo
- Publication number
- JP4380062B2 JP4380062B2 JP2000381118A JP2000381118A JP4380062B2 JP 4380062 B2 JP4380062 B2 JP 4380062B2 JP 2000381118 A JP2000381118 A JP 2000381118A JP 2000381118 A JP2000381118 A JP 2000381118A JP 4380062 B2 JP4380062 B2 JP 4380062B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- transmission
- classification
- time
- transmitted
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Images
Landscapes
- Communication Control (AREA)
Description
【0001】
【発明の属する技術分野】
本発明は、複数に分類されたデータを、当該分類ごとに設定された転送レートで送信する送信装置およびその方法、ならびに、データが入出力される複数のノードを有し、一のノードに受信されたデータを他のノードから送信するデータ中継装置に係り、例えば、インターネットなどのネットワークに接続された端末装置に含まれる送信装置およびその方法、ならびに、ネットワーク間に設置されるネットワーク中継器に関するものである。
【0002】
【従来の技術】
近年におけるネットワークの広帯域化に伴って、従来のようにテキストや静止画像などの比較的小容量で時間的な連続性が要求されないデータに代わり、音楽や映像といった大容量でリアムタイムの伝送が要求されるAVデータが、ネットワーク上を大量に流通されつつある。
【0003】
AVデータのように時間的に連続性のあるデータを、データの受信と並行してリアルタイムで再生させるために必要な条件は、送信されたデータが必要な時刻に受信側へ到着することである。受信データをリアルタイムに再生させる場合、通常、受信されたデータを再生までの間蓄積させる受信バッファが受信側に設けられる。もしデータの転送レートが遅く、データの再生時刻に受信側へデータが到着しなければ、受信バッファは枯渇してまい、受信側におけるデータの再生は中断されてしまう。また、もしデータの転送レートが速すぎれば、受信側に設けられた受信バッファの容量を越えてしまい、データがオーバーフローを起こしてしまう。そこで、データの伝送経路上に必要な帯域を確保して、この帯域が種々の要因に影響されないように保証するデータ伝送の仕組みを設ける必要がある。
【0004】
このようなQoS(Quality of Service:サービスの質)を実現する方法として、従来においては例えばパケットに与えた分類ごとに優先度をつけて、優先度の高いパケットを優先的に処理する方法や、データフローやセッションごとにあらかじめ設定された帯域を超えないようにパケットの送信を処理する方法が一般的に用いられている。
【0005】
【発明が解決しようとする課題】
しかしながら、上述した従来の方法においては、データの転送レートに発生する時間的なばらつき(ジッタ)について何の対策もなされていない。すなわち、比較的長い期間で見た場合には従来の方法で確かに一定の転送レートが得られるものの、短い期間で見た場合には転送レートにジッタが発生している。
【0006】
このジッタは、例えばデータフローごとに設定された転送レートを保持するようにそれぞれのデータフローで決定されたパケットの送信タイミングが、異なるデータフローの間で衝突している場合にで発生する。この場合において一方のデータフローのパケットが送信されると、送信されなかった他方のデータフローのパケットは、送信可能な状態であっても送信を停止される。従来の方法では、このジッタの影響を考慮してパケットの送信が処理されていないため、帯域が設定されていながら転送レートに大きなジッタが発生する場合があった。
【0007】
転送レートに大きなジッタが発生してしまうと、受信バッファが小さい場合に、前述したような受信バッファのアンダーフローやオーバーフローが発生して、データのリアルタイム再生に悪影響を与えてしまう問題がある。特に安価な端末においては、受信バッファの容量を大きくとれないので、ジッタの影響を受けやすくなる問題がある。
【0008】
本発明はかかる事情に鑑みてなされたものであり、その目的は、複数に分類されたデータを、当該分類ごとに設定された転送レートで送信する場合に発生する転送レートのジッタを低減できる送信装置およびその方法ならびにデータ中継装置を提供することにある。
【0009】
【課題を解決するための手段】
上記の目的を達成するため、本発明の送信装置は、複数に分類されたデータを、当該分類ごとに設定された転送レートで送信する送信装置であって、上記分類されたデータのデータ長を検出し、当該検出されたデータ長、および当該データが属する分類に設定された転送レートに基づいて、当該データと同一分類のデータが前後に送信される期間に対して当該データが有すべきデータ送信期間、および当該データの転送開始から終了までに要するデータ転送時間を算定する算定手段と、送信データの上記データ送信期間が開始する時点を上記分類ごとに検出し、当該検出された開始時点に同期して、当該データ送信期間が終了する時点に到達するまでの送信待ち時間を上記分類ごとに計時し、当該計時された送信待ち時間に基づいて、次に送信されるデータが送信可能であるか否かを上記分類ごとに判定する判定手段と、各分類において次に送信されるデータの上記転送時間、および各分類の上記送信待ち時間に基づいて、一の分類のデータ送信時に、他の分類のデータが送信可能な状態で送信を停止される時間を上記分類ごとに集計し、当該集計された時間を上記分類間で比較した結果に基づいて一の分類を選択し、当該選択された分類が上記判定手段において送信可能であると判定された場合、当該分類のデータを送信する送信手段とを有する。
【0010】
本発明の送信装置によれば、上記算定手段において、上記分類されたデータのデータ長が検出され、当該検出されたデータ長、および当該データが属する分類に設定された転送レートに基づいて、当該データと同一分類のデータが前後に送信される期間に対して当該データが有すべきデータ送信期間、および当該データの転送開始から終了までに要するデータ転送時間が算定される。上記判定手段においては、送信データの上記データ送信期間が開始する時点が上記分類ごとに検出され、当該検出された開始時点に同期して、当該データ送信期間が終了する時点に到達するまでの送信待ち時間が上記分類ごとに計時され、当該計時された送信待ち時間に基づいて、次に送信されるデータが送信可能であるか否かが上記分類ごとに判定される。上記送信手段においては、各分類において次に送信されるデータの上記転送時間、および各分類の上記送信待ち時間に基づいて、一の分類のデータ送信時に、他の分類のデータが送信可能な状態で送信を停止される時間が上記分類ごとに集計され、当該集計された時間が上記分類間で比較された結果に基づいて一の分類が選択される。そして、当該選択された分類が上記判定手段において送信可能であると判定された場合、当該分類のデータが送信される。
【0011】
本発明の送信方法は、複数に分類されたデータを、当該分類ごとに設定された転送レートで送信する送信方法であって、上記分類されたデータのデータ長を検出し、当該検出されたデータ長、および当該データが属する分類に設定された転送レートに基づいて、当該データと同一分類のデータが前後に送信される期間に対して当該データが有すべきデータ送信期間、および当該データの転送開始から終了までに要するデータ転送時間を算定する算定ステップと、送信データの上記データ送信期間が開始する時点を上記分類ごとに検出し、当該検出された開始時点に同期して、当該データ送信期間が終了する時点に到達するまでの送信待ち時間を上記分類ごとに計時し、当該計時された送信待ち時間に基づいて、次に送信されるデータが送信可能であるか否かを上記分類ごとに判定する判定ステップと、各分類において次に送信されるデータの上記転送時間、および各分類の上記送信待ち時間に基づいて、一の分類のデータ送信時に、他の分類のデータが送信可能な状態で送信を停止される時間を上記分類ごとに集計し、当該集計された時間を上記分類間で比較した結果に基づいて一の分類を選択し、当該選択された分類が上記判定ステップにおいて送信可能であると判定された場合、当該分類のデータを送信する送信ステップとを有する。
【0012】
本発明の送信方法によれば、上記算定ステップにおいて、上記分類されたデータのデータ長が検出され、当該検出されたデータ長、および当該データが属する分類に設定された転送レートに基づいて、当該データと同一分類のデータが前後に送信される期間に対して当該データが有すべきデータ送信期間、および当該データの転送開始から終了までに要するデータ転送時間が算定される。上記判定ステップにおいては、送信データの上記データ送信期間が開始する時点が上記分類ごとに検出され、当該検出された開始時点に同期して、当該データ送信期間が終了する時点に到達するまでの送信待ち時間が上記分類ごとに計時され、当該計時された送信待ち時間に基づいて、次に送信されるデータが送信可能であるか否かが上記分類ごとに判定される。上記送信ステップにおいては、各分類において次に送信されるデータの上記転送時間、および各分類の上記送信待ち時間に基づいて、一の分類のデータ送信時に、他の分類のデータが送信可能な状態で送信を停止される時間が上記分類ごとに集計され、当該集計された時間が上記分類間で比較された結果に基づいて一の分類が選択され、当該選択された分類が上記判定ステップにおいて送信可能であると判定された場合、当該分類のデータが送信される。
【0013】
本発明のデータ中継装置は、データが入出力される複数のノードと、上記ノードのそれぞれに対応する複数の送信装置を有し、一のノードに受信されたデータを他のノードの対応する送信装置から送信するデータ中継装置であって、上記送信装置は、上記ノードに受信されたデータを、当該データに含まれる所定の情報に応じて複数のデータに分類する分類手段と、上記分類手段において分類されたデータのデータ長を検出し、当該検出されたデータ長、および当該データが属する分類に設定された転送レートに基づいて、当該データと同一分類のデータが前後に送信される期間に対して当該データが有すべきデータ送信期間、および当該データの転送開始から終了までに要するデータ転送時間を算定する算定手段と、送信データの上記データ送信期間が開始する時点を上記分類ごとに検出し、当該検出された開始時点に同期して、当該データ送信期間が終了する時点に到達するまでの送信待ち時間を上記分類ごとに計時し、当該計時された送信待ち時間に基づいて、次に送信されるデータが送信可能であるか否かを上記分類ごとに判定する判定手段と、各分類において次に送信されるデータの上記転送時間、および各分類の上記送信待ち時間に基づいて、一の分類のデータ送信時に、他の分類のデータが送信可能な状態で送信を停止される時間を上記分類ごとに集計し、当該集計された時間を上記分類間で比較した結果に基づいて一の分類を選択し、当該選択された分類が上記判定手段において送信可能であると判定された場合、当該分類のデータを送信する送信手段とを含む。
【0014】
【発明の実施の形態】
以下、本発明の実施形態について図面を参照しながら説明する。
図1は、本発明に係る送信装置を含んだ端末装置が接続されるネットワークの構成例を示す図である。図1において、1はインターネットなどのネットワークを、2は携帯電話を、3および4はパーソナルコンピュータを、5はPDA(Personal Digital Assistants)を、6はネットワーク中継器をそれぞれ示している。
【0015】
携帯電話2、パーソナルコンピュータ3、パーソナルコンピュータ4およびPDA5は、何れもAVデータの送受信可能な端末装置であり、図1の構成例において互いの端末装置へAVデータを双方向に通信可能である。このうち、携帯電話4およびパーソナルコンピュータ3は、ネットワーク・インターフェース部分に本発明に係る送信装置が内蔵されている。
ネットワーク中継器6は、データが入出力可能な3つのノードを有しており、1のノードに受信されたデータを、データの送信先に応じて選択した他のノードから送信する。このネットワーク中継器6のネットワーク・インターフェース部分にも、本発明に係る送信装置が内蔵されている。
【0016】
図1に示すように、携帯電話2、パーソナルコンピュータ3、およびネットワーク中継器6は、それぞれネットワークノードN1、ネットワークノードN2およびネットワークノードN5を介してネットワーク1に接続されており、相互の端末間でAVデータを双方向に送受信している。
また、パーソナルコンピュータ4およびPDA5は、それぞれネットワークノードN3およびネットワークノードN4を介してネットワーク中継器6に接続されており、ネットワーク中継器6を中継して他の端末装置との間でAVデータを双方向に送受信している。
【0017】
上述したように、携帯電話2、パーソナルコンピュータ3、およびネットワーク中継器6には本発明に係る送信装置が内蔵されており、これによってジッタの低減されたAVデータの通信が実現されている。また、パーソナルコンピュータ4およびPDA5には本発明に係る送信装置が内蔵されていないものの、ネットワーク中継器6を介してデータの送受信が行われるため、これらの端末装置についても、ジッタの低減された通信が実現されている。すなわち、本発明に係る送信装置によって、図1に示す全ての端末装置間でジッタの低減された通信が実現されている。
【0018】
図2は、本発明に係る送信装置を含んだ端末装置(図1の例においては携帯電話2、パーソナルコンピュータ3、パーソナルコンピュータ4およびPDA5)に共通の内部構成例を示す図である。図2において、7はCPU(Central Processing Unit )を、8はメモリを、9はネットワーク・インターフェース部をそれぞれ示している。
CPU7は、図示しないプログラムメモリに記憶されたプログラムを読み込んで、プログラムに応じた種々の処理を行なう。ネットワークノードNからパケットを受信する場合には、メモリ8やネットワーク・インターフェース部9を制御して、ネットワークノードNから受信したパケットをメモリ8に一時的に蓄積(キャッシュ)させる。その後、このキャッシュされたパケットからパケット化される前のAVデータを再生して、映像や音楽を再生する処理を行う。
ネットワークノードNへパケットを送信する時には、送信データをパケット化してメモリ8にキャッシュさせる。そして、メモリ8にキャッシュされたデータをネットワークインターフェース部9に転送させ、ネットワーク・インターフェース部9からネットワークノードNに送信させる。
【0019】
メモリ8は、バスBUSを介して入力されたパケットをキャッシュするとともに、CPU7やネットワーク・インターフェース部9などからの要求に応じて、キャッシュされたパケットをバスBUSに出力する。
ネットワーク・インターフェース部9は、端末装置内部のバスBUSを介してCPU7やメモリ8との間で入出力されるデータを、ネットワークノードNを介して接続されるネットワークの通信規格に基づいた送受信データに変換し、ネットワークを介した端末装置間のパケット通信を行う。また、ネットワークノードNにデータを送信する送信部(後述)において、送信データのジッタを低減させる処理が行われる。
【0020】
図3は、図2に示すネットワーク・インターフェース部9の内部構成例を示す図である。図3において、10は内部バス・インターフェース部を、11は送信部を、12はリンク層処理部を、13は物理層処理部をそれぞれ示している。
【0021】
内部バス・インターフェース部10は、端末装置の内部バスBUSから入力される送信データを受けて、これを送信部11に出力するとともに、リンク層処理部12から受けた受信データを、内部バスBUSに出力して、このデータをCPU7やメモリ8に入力させる。
【0022】
送信部11は、内部バス・インターフェース部10から送信データを入力して、ジッタを低減させるための後述する処理を行い、この処理によって決定された送信順序および送信タイミングによって、送信データをリンク層処理部12に出力する。
【0023】
リンク層処理部12は、OSI(Open Systems Interconnection)参照モデルにおけるデータリンク層に相当する処理を行うブロックである。送信部11から入力したデータを物理層処理部13に出力するとともに、物理層処理部13において受信したデータを内部バス・インターフェース部10に出力する。
物理層処理部13は、OSI参照モデルにおける物理層に相当する処理を行うブロックである。リンク層処理部12から入力したデータをネットワークノードNへ送信するとともに、ネットワークノードNから受信したデータをリンク層処理部12へ出力する。
【0024】
ここで、OSI参照モデルについて図4を参照しながら説明する。OSI参照モデルは、ISO(International Organization for Standardization)において標準化された、通信機能の階層構造である。OSI参照モデルにおいて、通信機能は7階層に分けられており、各層ごとに標準的な機能モジュールが定義されている。
第1層(物理層)は、データを通信回線に送出するための電気的な変換や機械的な作業を受け持つ機能モジュールであり、ピンの形状やケーブルの特性なども第1層において定められる。
第2層(データリンク層)は、通信相手との物理的な通信路を確保し、通信路を流れるデータのエラー検出などを行う機能モジュールである。
第3層(ネットワーク層)は、送信先にデータを届けるための通信経路の選択や、通信経路内のアドレス(住所)の管理を行う機能モジュールである。
第4層(トランスポート層)は、送信先まで確実に効率よくデータを届けるためのデータ圧縮や誤り訂正、再送制御などを行う機能モジュールである。
第5層(セッション層)は、通信プログラム同士がデータの送受信を行うための仮想的な経路(コネクション)の確立や解放を行う機能モジュールである。
第6層(プレゼンテーション層)は、第5層から受け取ったデータをユーザが分かりやすい形式に変換したり、第7層から送られてくるデータを通信に適した形式に変換する機能モジュールである。
第7層(アプリケーション層)は、データ通信を利用した様々なサービスをユーザや他のプログラムに提供する機能モジュールである。
【0025】
次に、図3に示す送信部11の構成について、詳細に説明する。
図5は、本発明の送信装置の一実施形態である送信部11の概略的な構成図を示す図である。図5において、21は入力インターフェース部を、22はセパレータを、23はスケジューラを、24は出力インターフェース部を、31〜3nはパラメータ算定部を、41〜4nはタイミング判定部を、51〜5nは送信期間パラメータ用キューを、61〜6nは転送時間パラメータ用キューを、71〜7nは送信データ用キューをそれぞれ示している。
なお、セパレータ22は、本発明の分類手段の一実施形態である。
スケジューラ23は、本発明の送信手段の一実施形態である。
パラメータ算定部31〜パラメータ算定部3nは、本発明の算定手段の一実施形態である。
タイミング判定部41〜タイミング判定部4nは、本発明の判定手段の一実施形態である。
送信期間パラメータ用キュー51〜送信期間パラメータ用キュー5nは、本発明の第1の算定値蓄積手段の一実施形態である。
転送時間パラメータ用キュー61〜転送時間パラメータ用キュー6nは、本発明の第2の算定値蓄積手段の一実施形態である。
送信データ用キュー71〜送信データ用キュー7nは、本発明のデータ蓄積手段の一実施形態である。
【0026】
入力インターフェース部21は、内部バスインターフェース部10から受けた送信データS1をセパレータ22に出力する。
出力インターフェース部24は、スケジューラから出力された送信データを受けて、これをリンク層処理部12に出力する。
【0027】
セパレータ22は、入力インターフェース部21から供給された送信データS1に含まれる所定の情報、例えばパケットのヘッダ情報から、データを送受信する端末装置の情報(例えば送信側アドレスおよび受信側アドレスなど)や、送信されるデータの種類に関する情報(例えばAVデータやテキストデータなどの種類)を検出する。そして、この検出結果から、データをあらかじめ定めた複数のカテゴリに分類し、カテゴリごとに設けられた送信データ用キュー71〜送信データ用キュー7nにデータを振り分ける。
【0028】
送信データ用キュー71〜送信データ用キュー7nは、セパレータ22によってカテゴリごとに振り分けられた送信データを蓄積する待ち行列である。セパレータ22から送信データ用キューに供給された送信データは待ち行列の最後尾につなげられ、この待ち行列の先頭から順番にデータが送信される。
すなわち送信データ用キューは、少なくともスケジューラによって送信されるまで、セパレータ22から供給された送信データを蓄積する。また、送信データ用キューに蓄積されたデータは、セパレータ22から供給されて蓄積された順序で、スケジューラから送信される。
【0029】
パラメータ算定部31〜パラメータ算定部3nは、セパレータ22においてそれぞれの分類に対応するキュー(送信データ用キュー71〜送信データ用キュー7n)に振り分けられた送信データのデータ長を検出する。そして、この検出されたデータ長から2つのパラメータ、送信期間パラメータTiおよび転送時間パラメータTpを計算する。計算結果のパラメータは、それぞれに対応するキューである送信期間パラメータ用キュー51〜送信期間パラメータ用キュー5nまたは転送時間パラメータ用キュー61〜転送時間パラメータ用キュー6nに蓄積される。
【0030】
転送時間パラメータTpは、データの転送開始から終了までに要する時間に関するパラメータであり、以下の式で表される
【0031】
【数1】
Tp = L×(1/M) ・・・・(1)
【0032】
但し、データ長Lは、送信データのデータ長の検出値である。また、最大転送レートMは、データがネットワークへ送信される場合における最大の転送レートであり、ネットワークの通信方式および端末装置の仕様に応じて決定される値である。
【0033】
また送信期間パラメータTiは、各カテゴリに分類された送信データが、前後に送信される同一カテゴリのデータの送信期間に対して有すべき送信期間に関するパラメータである。
各カテゴリにはそれぞれ所定の保証帯域Wが定めれており、この保証帯域W以下の転送レートでデータが送信されることが要求されている。この保証帯域Wの要求を満たすために、データ長Lのデータを送信する期間は、最大転送レートでデータを送信する時間に比べて長い、ある一定の送信期間Tiを有する必要がある。この送信期間Tiでは一つのカテゴリで一つのデータのみが送信され、その前後に送信される同一カテゴリのデータの送信期間Tiと重なることは許されない。もし重なってしまうと、それによって送信期間Tiが短くなることになり、保証帯域Wが要求するデータの転送レートを越えてしまうからである。すなわち、あるデータ長Lを有するデータは、前後に送信される同一カテゴリのデータの送信期間と重ならないように、保証帯域Wに応じた送信期間Tiを有する必要がある。
【0034】
送信期間パラメータTiは、転送時間パラメータTp、最大転送レートM、保証帯域W、およびデータ長Lによって、次式のように表される。
【0035】
【数2】
Ti = Tp×(M/W) = L×(1/W) ・・・・(2)
【0036】
パラメータ算定部31〜パラメータ算定部3nにおいては、式(1)および式(2)に示す計算が実行されて、送信データ用キューに供給される各データについての送信期間パラメータTiおよび転送時間パラメータTpが計算される。計算に際して用いられる保証帯域Wの値は、それぞれのパラメータ算定部31〜パラメータ算定部3nたいして個別に設定されており、また、最大転送レートMの値は、通常全てのパラメータ算定部に対して共通の値が設定されている。
【0037】
なお、図5に示した例においては、セパレータ22から出力されて各送信データ用キューの最後尾につなげられる各送信データについて送信期間パラメータTiおよび転送時間パラメータTpが計算されているが、本発明はこれに限定されず、例えば送信データ用キューにおけるデータ列の途中にある送信データから各パラメータを計算しても良いし、あるいはスケジューラにより送信される直前の送信データについて各パラメータを計算しても良い。いずれにしても、これらのパラメータがタイミング判定部41やスケジューラ23において必要とされるタイミングまでに、パラメータの計算が終了していれば良い。
【0038】
送信期間パラメータ用キュー51〜送信期間パラメータ用キュー5nは、パラメータ算定部31〜パラメータ算定部3nにおいて計算された各送信データの送信期間パラメータTiが蓄積される待ち行列である。図5の例においては、送信期間パラメータTiの計算元となった送信データと同じ順番で送信期間パラメータ用キューの最後尾につなげられるので、計算元となった送信データが送信される順番になったときに、これと同じ順番で、この送信データに対応する送信期間パラメータTiが送信期間パラメータ用キューから出力される。送信期間パラメータ用キューから出力された送信期間パラメータTiは、タイミング判定部41〜タイミング判定部4nにそれぞれ供給される。
【0039】
転送時間パラメータ用キュー61〜転送時間パラメータ用キュー6nは、パラメータ算定部31〜パラメータ算定部3nにおいて計算された各送信データの転送時間パラメータTpが蓄積される待ち行列である。図5の例においては、転送時間パラメータTpの計算元となった送信データと同じ順番で転送時間パラメータ用キューの最後尾につなげられるので、計算元となった送信データが送信される順番になったときに、これと同じ順番で、この送信データに対応する転送時間パラメータTpが送信期間パラメータ用キューから出力される。転送時間パラメータ用キューから出力された転送時間パラメータTpは、スケジューラ23に供給される。
【0040】
タイミング判定部41〜タイミング判定部4nは、次に送信が予定される送信データの送信期間パラメータTiを送信期間パラメータ用キューから入力し、この送信データの送信期間が開始したことを知らせるスケジューラ23からの信号S9に同期して、入力した送信期間パラメータTiで指定されるデータ送信期間の終了時刻までの待ち時間Taを計時する。計時した待ち時間Taは、待ち時間信号S10としてスケジューラ23に出力される。また、待ち時間Taがゼロになり、データ送信期間の終了時刻に到達した場合には、データの送信可能を通知する信号S11をアサートして、スケジューラ23にデータが送信可能であることを通知する。
【0041】
例えば、送信期間パラメータ用キューから入力した送信期間パラメータTiをダウンカウンタの初期値としてセットさせ、送信期間の開始を知らせる信号S9に同期して減数をスタートさせても良い。この場合、一定の時間間隔で値が減少するダウンカウンタの出力値は、待ち時間時間Taを示す待ち時間信号S10としてスケジューラ23に出力される。また、ダウンカウンタの値がゼロに到達した時点で、データの送信可能を通知する信号S11がアサートされる。
【0042】
スケジューラ23は、各カテゴリの送信データから、信号S11によって送信可能であることが通知されたカテゴリの送信データを、所定のアルゴリズムで選択して出力するブロックである。送信データの選択においては、各送信データ用キューにおいて次に送信が予定される送信データの転送時間パラメータTpおよび待ち時間Taが使用される。アルゴリズムの詳細については後述する。
【0043】
またスケジューラ23は、データ送信期間の開始時点を知らせる信号S9を各カテゴリごとに生成して、該当するカテゴリのタイミング判定部41〜タイミング判定部4nにそれぞれ出力する。なお、データ送信期間の開始時点として、好適にはデータの転送が開始される時点が設定される。ただし、データ送信期間の開始時点とデータ転送の開始時点とが必ずしも一致している必要はなく、データの転送は送信期間内の任意の時間で行っても良い。
【0044】
次に、上述した構成を有する図5に示した送信装置の動作について、詳細に説明する。
入力インターフェース部21からセパレータ22に入力された送信データは、セパレータ22において各カテゴリごとに分類され、カテゴリに応じた送信データ用キュー71〜送信データ用キュー7nに供給される。
【0045】
また、各カテゴリごとに設けられたパラメータ算定部31〜パラメータ算定部3nにおいて各送信データのデータ長が検出され、式(1)および式(2)に示した計算処理によって、各送信データの送信期間パラメータTiおよび転送時間パラメータTpが算定される。
【0046】
パラメータ算定部31において算定された送信期間パラメータTiは、各カテゴリごとに設けられた送信期間パラメータ用キュー51〜送信期間パラメータ用キュー5nにそれぞれ供給される。また、パラメータ算定部31において算定された転送時間パラメータTpも、転送時間パラメータ用キュー61〜転送時間パラメータ用キュー6nに供給される。これらのパラメータは、計算元の送信データと同じ順番でキューに供給されるので、計算元の送信データが送信される順番になったとき、これと同じ順番で、それぞれのパラメータのキューから出力される。
【0047】
スケジューラ23においてデータの送信が決定され、データ送信期間の開始時点を知らせる信号S9が生成されてタイミング判定部に検出されると、この検出時点に同期して、送信されるデータの送信期間パラメータTiで指定される送信期間の終了時刻までの待ち時間Taが、タイミング判定部において計時される。計時された待ち時間Taは、待ち時間信号S10としてスケジューラ23に出力される。また、データ送信期間の終了時刻に到達した場合には、データの送信可能を通知する信号S11がアサートされて、スケジューラ23にデータが送信可能であることが通知される。
【0048】
スケジューラ23においては、送信データ用キュー71〜送信データ用キュー7nの最前列で次の送信を待つ送信データの中から、上述した待ち時間信号S10、データの送信可能を通知する信号S11および転送時間パラメータTpに基づいて、一つの送信データが選択される。そして、選択された送信データが出力インターフェース部24から送信される。この選択アルゴリズムについて図6を参照しながら説明する。
【0049】
図6は、スケジューラ23によってキューに蓄積されたパケットが送信される処理を説明するフローチャートである。
ステップST1:
送信データ用キュー71〜送信データ用キュー7nに、パケットが有るか否かが判断される。パケットが有る場合にはステップST2に処理が移行され、無い場合にはステップST3に処理が移行される。
【0050】
ステップST2:
待ち時間Taおよび転送時間Tpが、各カテゴリのタイミング判定部および転送時間パラメータ用キューからスケジューラ23に読み込まれ、後述する計算式に基づいて、各カテゴリのデータを送信した場合に発生するジッタが計算される。計算されたジッタは、各カテゴリごとに集計される。
【0051】
ステップST3:
送信データ用キュー71〜送信データ用キュー7nの全てについてステップST1またはステップST2の処理が終了したか否かが判断される。終了が判断された場合にはステップST4に処理が移行され、まだ終了していないと判断された場合には、ステップST1に戻り、処理が反復される。
【0052】
ステップST4:
ステップST2において計算された、各カテゴリごとのジッタの集計値が比較され、ジッタが最小になるカテゴリの送信データ用キューが選択される。
【0053】
ステップST5:
ステップST4において選択されたカテゴリの送信データ用キューにおいて、データの送信が可能であるか否かが、タイミング判定部が出力する信号S11により判断される。送信可能であると判断された場合には、ステップST6に処理が移行され、送信可能でないと判断された場合には、ステップST1に戻り、処理が反復される。
ステップST6:
ステップST4において選択されたカテゴリの送信データ用キューから、送信待ちのデータを送信することが決定される。これにより、このデータの送信期間の開始を知らせる信号S9がタイミング判定部に出力さる。また、このデータが出力インターフェース部24に送信される。
【0054】
ここで、上述したステップST2における、ジッタの集計方法について説明する。カテゴリの個数N、k番目のカテゴリにおける待ち時間Tak および転送時間Tpk によって、k番目のカテゴリにおけるジッタの集計値S〔k〕は以下の様に計算される。
【0055】
【数3】
【0056】
ただしi≠kかつ1≦i≦Nである。
式(3)において、Σ記号の中の式によって示される時間は、カテゴリkのデータが送信された場合に、他のカテゴリiのデータが送信可能な状態のまま送信が停止される時間(ジッタ)を示している。すなわち式(3)に示すジッタの集計値S〔k〕においては、カテゴリkのデータが送信されることによってカテゴリiのデータ送信に発生するジッタが、カテゴリkを除くすべての他のカテゴリについて集計されている。
【0057】
図7は、各キューからデータが送信された場合に発生するジッタについて説明するための図である。図7a、図7bおよび図7cは、それぞれ異なるカテゴリおける待ち時間Taと転送時間Tpの関係を示している。
【0058】
式(3)におけるジッタ時間は、図7aのカテゴリにおいて時間T12および時間T13であり、図7bのカテゴリにおいて時間T21および時間T23であり、図7cのカテゴリにおいて時間T31および時間T32である。図からも分かるように、一のカテゴリにおいてデータの送信が開始されると、他のカテゴリにおいて待ち時間Taがゼロになっていながら送信が停止されてしまう時間(ジッタ)が発生してしまう。式(3)においては、このジッタが各カテゴリごとに集計されている。
【0059】
式(3)におけるジッタ時間の集計値S〔k〕は、図7aのカテゴリにおいて(時間T12)+(時間T13)により計算される。同様に、図7bのカテゴリにおいて(時間T21)+(時間T23)により計算され、図7cのカテゴリにおいて(時間T31)+(時間T32)により計算される。この集計値を比較して示したのが、図7における右側の図であり、図7の例においては、図7aのカテゴリが最も集計値S〔k〕が小さくなることがわかる。
【0060】
なお、各カテゴリごとにジッタのマージン時間Tmが設定されている場合には、ジッタ時間の集計値S〔k〕として以下の式を採用しても良い。
【0061】
【数4】
【0062】
ただし、i≠kかつ1≦i≦Nである。
式(4)においては、式(3)において計算されるジッタから、各カテゴリごとに設定されたジッタのマージン時間Tmが減算されている。したがって、マージン時間Tmが大きく設定されているほど、ジッタ時間の集計値S〔k〕は少なく見積もられる。
【0063】
また、式(3)および式(4)に代わり、以下の式によって求められる集計値S〔k〕が最大になるカテゴリの送信データ用キューを、ステップST4において選択させても良い。
【0064】
【数5】
【数6】
【0065】
式(5)および式(6)に示す式は、一のカテゴリにおいてデータが送信された場合に、他のカテゴリのデータ送信にジッタを発生させない余裕時間を集計していると見なすことができる。
【0066】
次に、図5において示した送信装置を含む、本発明のデータ中継装置の実施形態について説明する。
図8は、本発明に係るデータ中継装置の一実施形態を示す概略的な構成図であり、図3と図8の同一符号は同一の構成要素を示している。また、送信部11’は送信部11と、リンク層処理部12’はリンク層処理部12と、物理層処理部13’は物理層処理部13とそれぞれ同一の内部構成を有している。
【0067】
図8に示すデータ中継装置は、ネットワークに対してデータの入出力が可能な2つのノードを有しており、ネットワークノードN6から受信されたデータは、物理層処理部13’、リンク層処理部12’、送信部11、リンク層処理部12、および物理層処理部13を経て、ネットワークノードN7へ送信される。同様に、ネットワークノードN7から受信されたデータは、物理層処理部13、リンク層処理部12、送信部11、リンク層処理部12’、および物理層処理部13’を経て、ネットワークノードN6へ送信される。
【0068】
図8に示すデータ中継装置には、送信側および受信側の何れにも送信データのジッタを低減させる機能を有した送信装置12および送信装置12’が設けられているので、このデータ中継装置を中継してデータを送信させることにより、例えば送信装置12を備えていない端末装置どうしの間でも、低ジッタの通信が可能になる。
【0069】
図9は、本発明に係るデータ中継装置の別の実施形態を示す概略的な構成図であり、図3と図9の同一符号は同一の構成要素を示している。図9のデータ中継装置は、図3に示したネットワークインターフェース部9を複数設けて、この内部バス側を共通に接続させた構成を有している。これにより、一のネットワークノードに受信されたデータを、データの送信先に応じて選択された他のネットワークノードから送信させることが可能である。ネットワークノードの選択は、例えばリンク層処理部12において、受信データに含まれるデータの送信先に関する所定の情報に応じて選択される。図9のデータ中継装置において、例えばノード数が3以上の場合には、図1に示すネットワーク中継器6を構成させることができる。
【0070】
以上説明したように、図5に示した送信装置によれば、パラメータ算定部において、分類されたデータのデータ長が検出され、当該検出されたデータ長、および当該データが属する分類に設定された転送レートに基づいて、当該データと同一分類のデータが前後に送信される期間に対して当該データが有すべきデータ送信期間パラメータTi、および当該データの転送開始から終了までに要するデータ転送時間パラメータTpが算定される。また、タイミング判定部においては、送信データのデータ送信期間が開始する時点がカテゴリごとに検出され、当該検出された開始時点に同期して、当該データ送信期間が終了する時点に到達するまでの送信待ち時間Taがカテゴリごとに計時され、当該計時された送信待ち時間Taに基づいて、送信データ用キューにおいて次に送信されるデータが送信可能であるか否かがカテゴリごとに判定される。さらに、スケジューラ23においては、各カテゴリにおいて次に送信されるデータの転送時間パラメータTp、および各カテゴリの送信待ち時間Taに基づいて、一のカテゴリのデータ送信時に、他のカテゴリのデータが送信可能な状態で送信を停止されるジッタ時間がカテゴリごとに集計され、当該集計されたジッタ時間がカテゴリ間で比較された結果に基づいて一のカテゴリが選択され、当該選択されたカテゴリがタイミング判定部において送信可能であると判定された場合、当該カテゴリに対応する送信データ用キューに蓄積されたデータが送信される。したがって、従来の方式で発生したいたネットワークのジッタを低減でき、送信データの品質を向上できる。これにより、受信側において設けられる受信バッファを小容量にできるので、端末装置のコストを低減できる。また、図8および図9に示したデータ中継装置によれば、従来の方式で発生していたネットワークのジッタを低減でき、送信データの品質を向上できる。これにより、受信側において設けられる受信バッファを小容量にできるので、データ中継装置を介して通信を行う端末装置のコストを低減できる。さらに、端末装置側において図5に示した送信装置を備える必要がなくなるので、端末装置のコストを更に低減できる。
【0071】
【発明の効果】
本発明によれば、従来の方式で発生していたネットワークのジッタを低減でき、送信データの品質を向上できる。これにより、受信側において設けられる受信バッファを小容量にできるので、通信を行う端末装置のコストを削減できる。
【図面の簡単な説明】
【図1】本発明に係る送信装置を含んだ端末装置が接続されるネットワークの構成例を示す図である。
【図2】本発明に係る送信装置を含んだ端末装置に共通の内部構成例を示す図である。
【図3】図2に示すネットワーク・インターフェース部の内部構成例を示す図である。
【図4】OSI参照モデルについて説明するための図である。
【図5】本発明に係る送信装置の実施形態の概略的な構成を示す図である。
【図6】スケジューラによってキューに蓄積されたパケットが送信される処理を説明するフローチャートである。
【図7】各キューからデータが送信された場合に発生するジッタについて説明するための図である。
【図8】本発明に係るデータ中継装置の一実施形態を示す概略的な構成図である。
【図9】本発明に係るデータ中継装置の別の実施形態を示す概略的な構成図である。
【符号の説明】
1…ネットワーク、2…携帯電話、3,4…パーソナルコンピュータ、5…PDA、6…ネットワーク中継器、7…CPU、8…メモリ、9…ネットワーク・インターフェース部、10…内部バス・インターフェース部、11,11’…送信部、12,12’…リンク層処理部、13,13’…物理層処理部、21…入力インターフェース部、22…セパレータ、23…スケジューラ、24…出力インターフェース部、31〜3n…パラメータ算定部、41〜4n…タイミング判定部、51〜5n…送信期間パラメータ用キュー、61〜6n…転送時間パラメータ用キュー、71〜7n…送信データ用キュー[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a transmission apparatus and method for transmitting a plurality of classified data at a transfer rate set for each classification, and a plurality of nodes to which data is input and output. Related to a data relay apparatus that transmits the received data from another node, for example, a transmission apparatus and method included in a terminal apparatus connected to a network such as the Internet, and a network repeater installed between networks It is.
[0002]
[Prior art]
With the recent increase in bandwidth of networks, transmission of real-time and large-capacity data such as music and video is required instead of data such as text and still images that do not require a relatively small amount of time and continuity in time. AV data is being distributed in large quantities on the network.
[0003]
A necessary condition for reproducing data that is temporally continuous like AV data in real time in parallel with the reception of the data is that the transmitted data arrives at the receiving side at the required time. . When the reception data is reproduced in real time, a reception buffer for accumulating the received data until the reproduction is usually provided on the reception side. If the data transfer rate is slow and data does not arrive at the reception side at the data reproduction time, the reception buffer will be depleted and data reproduction at the reception side will be interrupted. Also, if the data transfer rate is too fast, the capacity of the reception buffer provided on the receiving side will be exceeded, and the data will overflow. Therefore, it is necessary to provide a data transmission mechanism that secures a necessary bandwidth on the data transmission path and ensures that this bandwidth is not affected by various factors.
[0004]
As a method for realizing such QoS (Quality of Service), in the past, for example, a method of giving priority to each classification given to a packet and preferentially processing a packet with high priority, A method of processing packet transmission so as not to exceed a preset bandwidth for each data flow or session is generally used.
[0005]
[Problems to be solved by the invention]
However, in the conventional method described above, no countermeasure is taken against temporal variation (jitter) occurring in the data transfer rate. That is, when viewed in a relatively long period, a constant transfer rate can be obtained by the conventional method, but when viewed in a short period, jitter is generated in the transfer rate.
[0006]
This jitter occurs, for example, when the packet transmission timing determined in each data flow so as to hold the transfer rate set for each data flow collides between different data flows. In this case, when the packet of one data flow is transmitted, the transmission of the packet of the other data flow that has not been transmitted is stopped even if it can be transmitted. In the conventional method, since transmission of a packet is not processed in consideration of the influence of this jitter, a large jitter may occur in the transfer rate while the band is set.
[0007]
If a large jitter occurs in the transfer rate, when the reception buffer is small, the above-described reception buffer underflow or overflow occurs, which adversely affects real-time data reproduction. In particular, in an inexpensive terminal, the capacity of the reception buffer cannot be increased, and there is a problem that it is easily affected by jitter.
[0008]
The present invention has been made in view of such circumstances, and an object of the present invention is to provide transmission capable of reducing transfer rate jitter that occurs when data classified into a plurality of data is transmitted at a transfer rate set for each classification. It is an object to provide an apparatus, a method thereof, and a data relay apparatus.
[0009]
[Means for Solving the Problems]
In order to achieve the above object, a transmission device of the present invention is a transmission device that transmits a plurality of classified data at a transfer rate set for each classification, and the data length of the classified data is increased. Data that the data should have for a period in which data of the same classification as the data is transmitted before and after based on the detected data length and the transfer rate set for the classification to which the data belongs The calculation means for calculating the transmission period and the data transfer time required from the start to the end of the data transfer, and the time when the data transmission period of the transmission data starts is detected for each of the classifications, and the detected start time is Synchronously, the transmission waiting time until reaching the time point at which the data transmission period ends is counted for each of the above classifications, and the next transmission time is determined based on the measured transmission waiting time. Based on the determination means for determining whether or not the data to be transmitted can be transmitted for each classification, the transfer time of data transmitted next in each classification, and the transmission waiting time of each classification When sending data for a category, the time during which transmission of other categories can be transmitted is aggregated for each category, and one category is based on the result of comparing the aggregated times between the categories. And when it is determined that the selected category can be transmitted by the determination unit, the transmission unit transmits the data of the category.
[0010]
According to the transmission apparatus of the present invention, the calculation means detects the data length of the classified data, and based on the detected data length and the transfer rate set for the classification to which the data belongs, A data transmission period that the data should have and a data transfer time required from the start to the end of the data transfer are calculated with respect to a period in which data of the same classification as the data is transmitted before and after. In the determination means, a time point at which the data transmission period of transmission data starts is detected for each classification, and transmission is performed in synchronization with the detected start time until reaching a time point at which the data transmission period ends. A waiting time is counted for each category, and it is determined for each category whether or not data to be transmitted next can be transmitted based on the measured transmission waiting time. In the transmission means, based on the transfer time of data to be transmitted next in each classification and the transmission waiting time of each classification, data in another classification can be transmitted at the time of data transmission in one classification The time during which transmission is stopped is aggregated for each of the above categories, and one category is selected based on the result of comparison between the aggregated times. Then, when it is determined that the selected classification can be transmitted by the determination means, the data of the classification is transmitted.
[0011]
The transmission method of the present invention is a transmission method for transmitting a plurality of classified data at a transfer rate set for each classification, wherein the data length of the classified data is detected, and the detected data Based on the length and the transfer rate set for the classification to which the data belongs, the data transmission period that the data should have and the transfer of the data for the period in which data of the same classification as the data is transmitted before and after A calculation step for calculating a data transfer time required from the start to the end, and a time point at which the data transmission period of transmission data starts are detected for each classification, and the data transmission period is synchronized with the detected start time. The waiting time for transmission until reaching the point of time is counted for each of the above categories, and the next data to be transmitted can be transmitted based on the timed waiting time for transmission. Based on the determination step for determining whether or not each of the classifications, the transfer time of data transmitted next in each classification, and the transmission waiting time of each classification, at the time of data transmission of one classification, The time during which transmission of other classifications can be transmitted is stopped for each category, and one category is selected based on the result of comparing the aggregated times between the categories, and the selection is made. A transmission step of transmitting data of the classification when the determined classification is determined to be transmittable in the determination step.
[0012]
According to the transmission method of the present invention, in the calculation step, the data length of the classified data is detected, and based on the detected data length and the transfer rate set for the classification to which the data belongs, A data transmission period that the data should have and a data transfer time required from the start to the end of the data transfer are calculated with respect to a period in which data of the same classification as the data is transmitted before and after. In the determination step, a time point at which the data transmission period of the transmission data starts is detected for each classification, and transmission is performed in synchronization with the detected start time until reaching a time point at which the data transmission period ends. A waiting time is counted for each category, and it is determined for each category whether or not data to be transmitted next can be transmitted based on the measured transmission waiting time. In the transmission step, based on the transfer time of data to be transmitted next in each classification and the transmission waiting time of each classification, data of another classification can be transmitted at the time of data transmission of one classification The time during which transmission is stopped is aggregated for each of the above categories, and one category is selected based on the result of comparison between the aggregated times, and the selected category is transmitted in the determination step. If it is determined that it is possible, the data of the classification is transmitted.
[0013]
The data relay device of the present invention has a plurality of nodes to which data is input / output and a plurality of transmission devices corresponding to each of the nodes, and the data received by one node is transmitted corresponding to another node. A data relay device that transmits data from a device, wherein the transmission device includes: a classifying unit that classifies data received by the node into a plurality of data according to predetermined information included in the data; Based on the detected data length and the transfer rate set for the classification to which the data belongs, based on the detected data length and the period in which data of the same classification as the data is transmitted before and after Calculating means for calculating the data transmission period that the data should have and the data transfer time required from the start to the end of the data transfer, and the above data of the transmission data Detect the time point at which the transmission period starts for each of the above-mentioned classifications, and synchronize with the detected start time point to measure the transmission waiting time until reaching the time point at which the data transmission period ends for each of the above-mentioned classifications. Based on the measured transmission waiting time, determination means for determining whether or not the data to be transmitted next can be transmitted for each classification, the transfer time of the data transmitted next in each classification, and Based on the transmission waiting time of each category, when transmitting data of one category, the time during which transmission of other categories can be transmitted is stopped for each category, and the aggregated time is calculated. And a transmission unit that transmits data of the classification when one classification is selected based on a result of comparison between the classifications, and it is determined that the selected classification can be transmitted by the determination unit.
[0014]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, embodiments of the present invention will be described with reference to the drawings.
FIG. 1 is a diagram illustrating a configuration example of a network to which a terminal device including a transmission device according to the present invention is connected. In FIG. 1, 1 is a network such as the Internet, 2 is a mobile phone, 3 and 4 are personal computers, 5 is a PDA (Personal Digital Assistants), and 6 is a network repeater.
[0015]
The
The
[0016]
As shown in FIG. 1, the
The
[0017]
As described above, the
[0018]
FIG. 2 is a diagram showing an example of an internal configuration common to a terminal device (in the example of FIG. 1, a
The CPU 7 reads a program stored in a program memory (not shown) and performs various processes according to the program. When receiving a packet from the network node N, the
When transmitting a packet to the network node N, the transmission data is packetized and cached in the
[0019]
The
The
[0020]
FIG. 3 is a diagram showing an internal configuration example of the
[0021]
The internal
[0022]
The
[0023]
The link
The physical
[0024]
Here, the OSI reference model will be described with reference to FIG. The OSI reference model is a hierarchical structure of communication functions standardized by ISO (International Organization for Standardization). In the OSI reference model, communication functions are divided into seven layers, and standard function modules are defined for each layer.
The first layer (physical layer) is a functional module responsible for electrical conversion and mechanical work for sending data to the communication line, and the shape of the pins, cable characteristics, and the like are also defined in the first layer.
The second layer (data link layer) is a functional module that secures a physical communication path with a communication partner and detects an error in data flowing through the communication path.
The third layer (network layer) is a functional module that selects a communication path for delivering data to a transmission destination and manages addresses (addresses) in the communication path.
The fourth layer (transport layer) is a functional module that performs data compression, error correction, retransmission control, and the like for reliably and efficiently delivering data to a transmission destination.
The fifth layer (session layer) is a functional module that establishes and releases a virtual route (connection) for communication programs to transmit and receive data.
The sixth layer (presentation layer) is a functional module that converts the data received from the fifth layer into a format that is easy for the user to understand, and converts the data sent from the seventh layer into a format suitable for communication.
The seventh layer (application layer) is a functional module that provides various services using data communication to users and other programs.
[0025]
Next, the configuration of the
FIG. 5 is a diagram showing a schematic configuration diagram of the
The
The
The
The
The transmission
The transfer
The
[0026]
The
The
[0027]
The
[0028]
The
That is, the transmission data queue stores the transmission data supplied from the
[0029]
The
[0030]
The transfer time parameter Tp is a parameter related to the time required from the start to the end of data transfer, and is represented by the following equation:
[0031]
[Expression 1]
Tp = L × (1 / M) (1)
[0032]
However, the data length L is a detected value of the data length of the transmission data. The maximum transfer rate M is the maximum transfer rate when data is transmitted to the network, and is a value determined according to the network communication method and the specifications of the terminal device.
[0033]
The transmission period parameter Ti is a parameter related to the transmission period that the transmission data classified into each category should have with respect to the transmission period of data of the same category transmitted before and after.
Each category has a predetermined guaranteed bandwidth W, and it is required that data be transmitted at a transfer rate equal to or lower than the guaranteed bandwidth W. In order to satisfy the request for the guaranteed bandwidth W, the period for transmitting data of the data length L needs to have a certain transmission period Ti that is longer than the time for transmitting data at the maximum transfer rate. In this transmission period Ti, only one data is transmitted in one category, and it is not allowed to overlap with the transmission period Ti of data of the same category transmitted before and after that. If they overlap, the transmission period Ti will be shortened, and the guaranteed bandwidth W will exceed the required data transfer rate. That is, data having a certain data length L needs to have a transmission period Ti corresponding to the guaranteed bandwidth W so as not to overlap with the transmission period of data of the same category transmitted before and after.
[0034]
The transmission period parameter Ti is expressed by the following equation by the transfer time parameter Tp, the maximum transfer rate M, the guaranteed bandwidth W, and the data length L.
[0035]
[Expression 2]
Ti = Tp × (M / W) = L × (1 / W) (2)
[0036]
In the
[0037]
In the example shown in FIG. 5, the transmission period parameter Ti and the transfer time parameter Tp are calculated for each transmission data output from the
[0038]
The transmission
[0039]
The transfer
[0040]
The
[0041]
For example, the transmission period parameter Ti input from the transmission period parameter queue may be set as the initial value of the down counter, and the decrement may be started in synchronization with the signal S9 notifying the start of the transmission period. In this case, the output value of the down counter whose value decreases at a constant time interval is output to the
[0042]
The
[0043]
In addition, the
[0044]
Next, the operation of the transmission apparatus shown in FIG. 5 having the above-described configuration will be described in detail.
The transmission data input to the
[0045]
Further, the
[0046]
The transmission period parameter Ti calculated by the
[0047]
When the data transmission is determined in the
[0048]
In the
[0049]
FIG. 6 is a flowchart for explaining processing for transmitting packets accumulated in the queue by the
Step ST1:
It is determined whether or not there is a packet in
[0050]
Step ST2:
The waiting time Ta and the transfer time Tp are read into the
[0051]
Step ST3:
It is determined whether or not the processing of step ST1 or step ST2 has been completed for all of the
[0052]
Step ST4:
The aggregate value of jitter for each category calculated in step ST2 is compared, and the transmission data queue of the category that minimizes the jitter is selected.
[0053]
Step ST5:
Whether or not data transmission is possible in the transmission data queue of the category selected in step ST4 is determined by a signal S11 output by the timing determination unit. If it is determined that transmission is possible, the process proceeds to step ST6. If it is determined that transmission is not possible, the process returns to step ST1 and the process is repeated.
Step ST6:
It is determined to transmit data waiting for transmission from the transmission data queue of the category selected in step ST4. Thereby, a signal S9 notifying the start of the data transmission period is output to the timing determination unit. Further, this data is transmitted to the
[0054]
Here, the jitter counting method in step ST2 described above will be described. Number of categories N, waiting time Ta in k-th category k And transfer time Tp k Thus, the aggregate value S [k] of jitter in the kth category is calculated as follows.
[0055]
[Equation 3]
[0056]
However, i ≠ k and 1 ≦ i ≦ N.
In the expression (3), the time indicated by the expression in the Σ symbol is the time (jitter when transmission of category k data is stopped while transmission of other category i data is still possible. ). That is, in the jitter total value S [k] shown in Expression (3), jitter generated in data transmission of category i due to transmission of category k data is totaled for all other categories except category k. Has been.
[0057]
FIG. 7 is a diagram for explaining jitter that occurs when data is transmitted from each queue. 7a, 7b, and 7c show the relationship between the waiting time Ta and the transfer time Tp in different categories.
[0058]
The jitter time in equation (3) is time T12 and time T13 in the category of FIG. 7a, time T21 and time T23 in the category of FIG. 7b, and time T31 and time T32 in the category of FIG. 7c. As can be seen from the figure, when data transmission is started in one category, a time (jitter) during which transmission is stopped is generated while the waiting time Ta is zero in another category. In equation (3), this jitter is aggregated for each category.
[0059]
The total value S [k] of jitter time in equation (3) is calculated by (time T12) + (time T13) in the category of FIG. 7a. Similarly, it is calculated by (time T21) + (time T23) in the category of FIG. 7b, and is calculated by (time T31) + (time T32) in the category of FIG. 7c. FIG. 7 shows the comparison of the total values on the right side. In the example of FIG. 7, the category of FIG. 7a has the smallest total value S [k].
[0060]
When a jitter margin time Tm is set for each category, the following equation may be employed as the jitter time total value S [k].
[0061]
[Expression 4]
[0062]
However, i ≠ k and 1 ≦ i ≦ N.
In Expression (4), the jitter margin time Tm set for each category is subtracted from the jitter calculated in Expression (3). Therefore, the larger the margin time Tm is set, the smaller the jitter time total value S [k] is estimated.
[0063]
Further, instead of Expression (3) and Expression (4), a transmission data queue of a category in which the aggregate value S [k] obtained by the following expression may be maximized may be selected in Step ST4.
[0064]
[Equation 5]
[Formula 6]
[0065]
The expressions shown in Expression (5) and Expression (6) can be regarded as aggregating margin times that do not cause jitter in data transmission in another category when data is transmitted in one category.
[0066]
Next, an embodiment of the data relay apparatus of the present invention including the transmission apparatus shown in FIG. 5 will be described.
FIG. 8 is a schematic configuration diagram showing an embodiment of a data relay device according to the present invention, and the same reference numerals in FIG. 3 and FIG. 8 indicate the same components. The
[0067]
The data relay apparatus shown in FIG. 8 has two nodes capable of inputting / outputting data to / from the network, and data received from the network node N6 includes a physical
[0068]
The data relay device shown in FIG. 8 is provided with a
[0069]
FIG. 9 is a schematic configuration diagram showing another embodiment of the data relay device according to the present invention, and the same reference numerals in FIG. 3 and FIG. 9 indicate the same components. The data relay device of FIG. 9 has a configuration in which a plurality of
[0070]
As described above, according to the transmission apparatus shown in FIG. 5, the parameter calculation unit detects the data length of the classified data and sets the detected data length and the classification to which the data belongs. Based on the transfer rate, the data transmission period parameter Ti that the data should have for the period in which data of the same classification as the data is transmitted before and after, and the data transfer time parameter required from the start to the end of the data transfer Tp is calculated. Further, the timing determination unit detects the time point at which the data transmission period of the transmission data starts for each category, and transmits until the time point at which the data transmission period ends in synchronization with the detected start time point. The waiting time Ta is measured for each category, and based on the measured transmission waiting time Ta, it is determined for each category whether or not the data to be transmitted next in the transmission data queue can be transmitted. Further, in the
[0071]
【The invention's effect】
According to the present invention, it is possible to reduce network jitter that has occurred in the conventional method, and to improve the quality of transmission data. As a result, the reception buffer provided on the receiving side can be reduced in capacity, and the cost of the terminal device for communication can be reduced.
[Brief description of the drawings]
FIG. 1 is a diagram illustrating a configuration example of a network to which a terminal device including a transmission device according to the present invention is connected.
FIG. 2 is a diagram illustrating an example of an internal configuration common to a terminal device including a transmission device according to the present invention.
FIG. 3 is a diagram illustrating an internal configuration example of a network interface unit illustrated in FIG. 2;
FIG. 4 is a diagram for explaining an OSI reference model;
FIG. 5 is a diagram showing a schematic configuration of an embodiment of a transmission apparatus according to the present invention.
FIG. 6 is a flowchart illustrating processing for transmitting packets accumulated in a queue by a scheduler.
FIG. 7 is a diagram for explaining jitter that occurs when data is transmitted from each queue;
FIG. 8 is a schematic configuration diagram showing an embodiment of a data relay device according to the present invention.
FIG. 9 is a schematic configuration diagram showing another embodiment of the data relay device according to the present invention.
[Explanation of symbols]
DESCRIPTION OF
Claims (15)
上記分類されたデータのデータ長を検出し、当該検出されたデータ長、および当該データが属する分類に設定された転送レートに基づいて、当該データと同一分類のデータが前後に送信される期間に対して当該データが有すべきデータ送信期間、および当該データの転送開始から終了までに要するデータ転送時間を算定する算定手段と、
送信データの上記データ送信期間が開始する時点を上記分類ごとに検出し、当該検出された開始時点に同期して、当該データ送信期間が終了する時点に到達するまでの送信待ち時間を上記分類ごとに計時し、当該計時された送信待ち時間に基づいて、次に送信されるデータが送信可能であるか否かを上記分類ごとに判定する判定手段と、
各分類において次に送信されるデータの上記転送時間、および各分類の上記送信待ち時間に基づいて、一の分類のデータ送信時に、他の分類のデータが送信可能な状態で送信を停止される時間を上記分類ごとに集計し、当該集計された時間を上記分類間で比較した結果に基づいて一の分類を選択し、当該選択された分類が上記判定手段において送信可能であると判定された場合、当該分類のデータを送信する送信手段と
を有する送信装置。A transmission device that transmits data classified into a plurality at a transfer rate set for each classification,
The data length of the classified data is detected, and based on the detected data length and the transfer rate set for the classification to which the data belongs, in a period in which data of the same classification as the data is transmitted before and after A calculation means for calculating a data transmission period that the data should have and a data transfer time required from the start to the end of the data transfer;
A time point at which the data transmission period of the transmission data starts is detected for each of the classifications, and a transmission waiting time until reaching the time point at which the data transmission period ends is synchronized with the detected start time for each of the classifications. Determination means for determining for each classification whether or not the data to be transmitted next can be transmitted based on the measured transmission waiting time;
Based on the transfer time of data to be transmitted next in each classification and the transmission waiting time of each classification, transmission of one classification is stopped in a state where data of another classification can be transmitted. The time is totaled for each category, and one category is selected based on the result of comparing the total time between the categories, and it is determined that the selected category can be transmitted by the determination unit. In this case, a transmission device comprising: a transmission unit that transmits data of the classification.
請求項1に記載の送信装置。The transmission means uses, as the transmission stop time, a difference between the total transfer time of the data transmitted next in one classification and the transmission waiting time of the classification and the transmission waiting time of the other classification. Tally,
The transmission device according to claim 1.
請求項1に記載の送信装置。The transmission means includes a total time of the transfer time of data transmitted next in one classification and a transmission waiting time of the classification, a transmission waiting time of another classification, and a margin time set for each classification. And the difference from the total time of
The transmission device according to claim 1.
請求項1に記載の送信装置。The determination means detects a transmission start time of the transmission data as a time when the data transmission period of the transmission data starts.
The transmission device according to claim 1.
請求項1に記載の送信装置。Having classification means for classifying supplied data into the plurality of data according to predetermined information included in the data;
The transmission device according to claim 1.
請求項1に記載の送信装置。Receiving the classified data, and having data accumulation means for accumulating the data for each classification at least until the data is transmitted;
The transmission device according to claim 1.
請求項6に記載の送信装置。The data storage means provides the data to be transmitted to the transmission means in an order corresponding to the order in which the data is stored;
The transmission device according to claim 6.
請求項7に記載の送信装置。The first calculation value storage for accumulating the data transmission period calculated by the calculation means and providing the accumulated data transmission period to the determination means in an order corresponding to the order in which the data of the calculation source is transmitted Having means,
The transmission device according to claim 7.
請求項7に記載の送信装置。A second calculated value storage that accumulates the data transfer time calculated by the calculating means and provides the stored data transfer time to the transmitting means in an order corresponding to the order in which the data of the calculation source is transmitted. Having means,
The transmission device according to claim 7.
上記分類されたデータのデータ長を検出し、当該検出されたデータ長、および当該データが属する分類に設定された転送レートに基づいて、当該データと同一分類のデータが前後に送信される期間に対して当該データが有すべきデータ送信期間、および当該データの転送開始から終了までに要するデータ転送時間を算定する算定ステップと、
送信データの上記データ送信期間が開始する時点を上記分類ごとに検出し、当該検出された開始時点に同期して、当該データ送信期間が終了する時点に到達するまでの送信待ち時間を上記分類ごとに計時し、当該計時された送信待ち時間に基づいて、次に送信されるデータが送信可能であるか否かを上記分類ごとに判定する判定ステップと、
各分類において次に送信されるデータの上記転送時間、および各分類の上記送信待ち時間に基づいて、一の分類のデータ送信時に、他の分類のデータが送信可能な状態で送信を停止される時間を上記分類ごとに集計し、当該集計された時間を上記分類間で比較した結果に基づいて一の分類を選択し、当該選択された分類が上記判定ステップにおいて送信可能であると判定された場合、当該分類のデータを送信する送信ステップと
を有する送信方法。A transmission method for transmitting data classified into a plurality at a transfer rate set for each classification,
The data length of the classified data is detected, and based on the detected data length and the transfer rate set for the classification to which the data belongs, in a period in which data of the same classification as the data is transmitted before and after A calculation step for calculating a data transmission period that the data should have and a data transfer time required from the start to the end of the data transfer;
A time point at which the data transmission period of the transmission data starts is detected for each of the classifications, and a transmission waiting time until reaching the time point at which the data transmission period ends is synchronized with the detected start time for each of the classifications. A determination step for determining for each classification whether or not data to be transmitted next can be transmitted based on the measured transmission waiting time;
Based on the transfer time of data to be transmitted next in each classification and the transmission waiting time of each classification, transmission of one classification is stopped in a state where data of another classification can be transmitted. The time is totaled for each category, and one category is selected based on the result of comparing the total time between the categories, and the selected category is determined to be transmittable in the determination step. A transmission step of transmitting data of the classification.
請求項10に記載の送信方法。In the transmission step, the difference between the total transmission time of the data transmitted next in one classification and the transmission waiting time of the classification and the transmission waiting time of the other classification is set as the transmission stop time. Tally,
The transmission method according to claim 10.
請求項10に記載の送信方法。The transmission step includes a total time of the transfer time of data transmitted next in one classification and a transmission waiting time of the classification, a transmission waiting time of another classification, and a margin time set for each classification. And the difference from the total time of
The transmission method according to claim 10.
請求項10に記載の送信方法。The determination step detects a transmission start time of the transmission data as a time when the data transmission period of the transmission data starts.
The transmission method according to claim 10.
請求項10に記載の送信方法。A classification step of classifying supplied data into the plurality of data according to predetermined information included in the data;
The transmission method according to claim 10.
上記送信装置は、
上記ノードに受信されたデータを、当該データに含まれる所定の情報に応じて複数のデータに分類する分類手段と、
上記分類手段において分類されたデータのデータ長を検出し、当該検出されたデータ長、および当該データが属する分類に設定された転送レートに基づいて、当該データと同一分類のデータが前後に送信される期間に対して当該データが有すべきデータ送信期間、および当該データの転送開始から終了までに要するデータ転送時間を算定する算定手段と、
送信データの上記データ送信期間が開始する時点を上記分類ごとに検出し、当該検出された開始時点に同期して、当該データ送信期間が終了する時点に到達するまでの送信待ち時間を上記分類ごとに計時し、当該計時された送信待ち時間に基づいて、次に送信されるデータが送信可能であるか否かを上記分類ごとに判定する判定手段と、
各分類において次に送信されるデータの上記転送時間、および各分類の上記送信待ち時間に基づいて、一の分類のデータ送信時に、他の分類のデータが送信可能な状態で送信を停止される時間を上記分類ごとに集計し、当該集計された時間を上記分類間で比較した結果に基づいて一の分類を選択し、当該選択された分類が上記判定手段において送信可能であると判定された場合、当該分類のデータを送信する送信手段とを含む、
データ中継装置。A data relay device that has a plurality of nodes to which data is input / output and a plurality of transmission devices corresponding to each of the nodes, and that transmits data received by one node from a corresponding transmission device of another node. There,
The transmitter is
Classification means for classifying data received by the node into a plurality of data according to predetermined information included in the data;
The data length of the data classified by the classification means is detected, and based on the detected data length and the transfer rate set for the classification to which the data belongs, data of the same classification as the data is transmitted back and forth. A calculation means for calculating a data transmission period that the data should have for a period of time and a data transfer time required from the start to the end of the data transfer;
A time point at which the data transmission period of the transmission data starts is detected for each of the classifications, and a transmission waiting time until reaching the time point at which the data transmission period ends is synchronized with the detected start time for each of the classifications. Determination means for determining for each classification whether or not the data to be transmitted next can be transmitted based on the measured transmission waiting time;
Based on the transfer time of data to be transmitted next in each classification and the transmission waiting time of each classification, transmission of one classification is stopped in a state where data of another classification can be transmitted. The time is totaled for each category, and one category is selected based on the result of comparing the total time between the categories, and it is determined that the selected category can be transmitted by the determination unit. A transmission means for transmitting the data of the classification,
Data relay device.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000381118A JP4380062B2 (en) | 2000-12-14 | 2000-12-14 | Transmitting apparatus and method, and data relay apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000381118A JP4380062B2 (en) | 2000-12-14 | 2000-12-14 | Transmitting apparatus and method, and data relay apparatus |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2002185557A JP2002185557A (en) | 2002-06-28 |
JP2002185557A5 JP2002185557A5 (en) | 2007-04-19 |
JP4380062B2 true JP4380062B2 (en) | 2009-12-09 |
Family
ID=18849190
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000381118A Expired - Lifetime JP4380062B2 (en) | 2000-12-14 | 2000-12-14 | Transmitting apparatus and method, and data relay apparatus |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4380062B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107659612A (en) * | 2017-08-17 | 2018-02-02 | 深圳市盛路物联通讯技术有限公司 | Data transfer control method and device based on device packets |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4410280B2 (en) | 2005-02-15 | 2010-02-03 | 富士通株式会社 | Protocol conversion circuit |
JP2016032134A (en) * | 2014-07-25 | 2016-03-07 | 住友電気工業株式会社 | Radio communication device and radio communication device processing module |
-
2000
- 2000-12-14 JP JP2000381118A patent/JP4380062B2/en not_active Expired - Lifetime
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107659612A (en) * | 2017-08-17 | 2018-02-02 | 深圳市盛路物联通讯技术有限公司 | Data transfer control method and device based on device packets |
Also Published As
Publication number | Publication date |
---|---|
JP2002185557A (en) | 2002-06-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4491257B2 (en) | Controlling the admission of data streams to the network based on end-to-end measurements | |
JP4583691B2 (en) | Method and apparatus for reducing packet delay using scheduling and header compression | |
KR100432475B1 (en) | Packet transmission method and system, and packet transmission apparatus, packet receiving apparatus, and packet transmitting/receiving apparatus | |
US11451481B2 (en) | Network control apparatus and network control method | |
EP2323281B1 (en) | System for measuring the transmission bandwidth for multimedia streaming and method for same | |
US8576850B2 (en) | Band control apparatus, band control method, and storage medium | |
TW200929945A (en) | Transmission system and transmission method | |
EP1228595A1 (en) | Method and system for discarding and regenerating acknowledgment packets in adsl communications | |
JPH10126446A (en) | Data terminal in tcp network | |
JP2001024678A (en) | Method for predicting and controlling congestion in data transmission network, and node | |
KR101100005B1 (en) | Encapsulating packets into a frame for a network | |
EP1573982A1 (en) | Transmitting multiple packets in a frame | |
CN115473855B (en) | Network system and data transmission method | |
JP5738324B2 (en) | Transmission device, communication device, communication system, and transmission method | |
US7987488B2 (en) | System for transmitting and receiving data | |
JP4380062B2 (en) | Transmitting apparatus and method, and data relay apparatus | |
CN101465794B (en) | Method and apparatus for scheduling packet | |
US20100086021A1 (en) | Information transmission apparatus, method of controlling the same, and storage medium | |
US20030223444A1 (en) | Method and apparatus for implementing multiple credit levels over multiple queues | |
CN102594670B (en) | Multiport multi-flow scheduling method, device and equipment | |
JP2009105662A (en) | Multi-hop communication system, multi-hop communication method, terminal device and repeating device | |
CN107302504B (en) | Multipath transmission scheduling method and system based on virtual sending queue | |
CN113542215A (en) | Method for improving streaming media transmission performance and related device | |
JP3315940B2 (en) | ATM communication method and ATM communication device | |
CN117675705B (en) | Method and device for updating flow control packet of network link layer |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070306 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20070306 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20090701 |
|
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: 20090901 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20090914 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121002 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121002 Year of fee payment: 3 |