PSP

Section: Linux (8)
Updated: 6 June 2005
 

名前

PSP - Precise Software Pacer  

書式

tc qdisc ... dev dev ( parent classid | root) [ handle major: ] psp [ default ] [ rate rate ]

tc class ... dev dev parent major:[minor] [ classid major:minor ] psp rate rate ] [ mode mode ]

 

説明

Precise Software Pacer (PSPacer) は,パケット間ギャップ(IPG: Inter Packet Gap)を調整することによって精密なペーシングを提供するパケットスケジューラである. 本スケジューラは, tc(8) コマンドによるトラヒック制御から利用可能なクラスフルキューイング規則 (queuing disipline)として実装されており,各クラスごとに設定した送信ターゲットレート にしたがってトラヒックを平滑化する.

ターゲットレートの指定方法には, tc(8) コマンドから静的に指定する静的ターゲットレートモードと,TCPの場合に限り,輻輳ウィンドウ サイズとラウンドトリップタイムから送信レートを見積もる動的ターゲットレートモードが 利用できる.

 

ペーシングアルゴリズム

MTUが1500バイトで送信レートを半分にペーシングするには,IPGを1500バイトにする必要がある. そこで,他のクラスにパケットがキューイングされている場合はそのパケットを利用し,存在しない 場合にはギャップパケットを送信する.

ギャップパケットは IEEE 802.3x フロー制御で定義された PAUSE パケットを利用し,必要な IPG に合わせてサイズを調整したパケットである.ギャップパケットは送信ホストの直近の スイッチまたはルータで消滅するので,外のネットワークには流れない.

PSP qdisc 内に,ペーシングするトラヒックとペーシングしないトラヒックが存在する場合は, ターゲットレート以内でペーシングするトラヒックを優先して送信する.

 

クラシフィケーション

PSP qdisc は CBQ のような階層的なクラス構造を持つことが可能であり,リーフノードの 各クラスはそれぞれ qdisc を持つ.

PSP qdisc にパケットがエンキューされると,ルートから開始して,次に示す方法にしたがい, どのノードにパケットを分類するか決定する.これをリーフノードに達するまで繰り返す.

  1. クラスに登録されたフィルタを調べ,条件が成立したノードへ送る.
  2. どの条件にも合致しなかった場合は,デフォルトクラスへ送る.

 

QDISC

PSP クラスツリーのルート qdisc は,次のパラメータを持つ.

parent major:minor | root
必須パラメータ.qdisc の親クラスを指定する.親クラスはインタフェースのルート, もしくは既存のクラスのどちらかになる.
handle major:
qdisc にハンドルを割り当てる.ハンドルはメジャー番号にコロンをつなげた表記で表される. ハンドルは qdisc を参照する際に使用されるため,サブクラスを設定する場合に必要となる.
default minor-id
クラシフィケーションされなかったトラヒックはこのマイナー番号を持つクラスに送られる.
rate rate
インタフェースの最大転送レートを明示的に指定する. PCI バスボトルネックでインタフェースの物理性能を出せない場合に利用する.

 

CLASSES

クラスは次に示すパラメータを保持する.

parent major:minor
必須パラメータ.クラスの親クラスを指定する.クラスではなく,直接 qdisc に追加する場合は, マイナー番号を省略する.
classid major:minor
必須パラメータ.qdisc のように,クラスにも名前を付けることができる.子供(クラス, qdisc)から参照されるために必要である.メジャー番号は所属する qdisc のメジャー番号と 等しくなければならない.
rate rate
最大送信レートを指定する.使用できる単位については, tc(8) の UNITS を参照のこと.
mode mode
動作モードを指定する.0から2の整数値を取る.0はペーシングなし,1は静的ターゲットレートによる ペーシング,2は動的ターゲットレートによるペーシングである.

 

制限事項

 

出典

 

関連項目

tc(8)

 

著者

Ryousei Takano <takano at axe-inc.co.jp>.


This document was created by man2html, using the manual pages.
Time: 06:33:57 GMT, June 10, 2005