USBDUMP(8) | FreeBSD System Manager's Manual | USBDUMP(8) |
名称
usbdump — USB ホストコントローラのトラフィックをダンプする書式
usbdump | [ -i ifname][ -r file][ -s snaplen][ -v][ -w file][ -f filter][ -b file][ -h] |
解説
usbdump ユーティリティは、ホストコントローラの USB パケットをダンプする方法を提供します。次のオプションが受け付けられます:
- -b file
- 与えられた file にバイナリ形式の USB トレースのデータ部分を格納します。また、このオプションは、-r と -f オプションで動作します。
- -i ifname
- USB バスインタフェース ifname で listen します (接続を受け付けます)。
- -r file
- file から生のパケットを読み込みます。また、このオプションは、-f オプションで動作します。
- -s snaplen
- 各パケットから snaplen バイトのスナップショットを行います。
- -v
- デバッグメッセージを有効にします。複数下位定義されると、冗長性のレベルを増加します。
- -w file
- file に生のパケットを書き込みます。また、このオプションは、-s と -v オプションで動作します。
- -f filter
- filter 引数は、1 ドットごとに分離された 1 つまたは 2 つの数値のいずれかから成ります。最初は、トレースされるべきデバイスのユニット番号を示します。オプションの 2 番目の数は、トレースされるべき終点を示します。制御終点のためにすべてのトラフィックを得るために、終点 0 のための 1 つと終点 128 のための 1 つの、2 つのフィルタが作成されるべきです。 128 が終点の番号に追加されるなら、IN 方向を意味し、そうでなければ、 OUT 方向を意味します。 -1 のデバイスユニットまたは終点の値は、このフィールドを無視することを意味します。フィルタが指定されないなら、すべてのパケットは、デフォルト -1 と -1 フィルタを使用して渡されます。複数回、このオプションを指定することができます。
- -h
- このオプションは、コマンド行オプションの要約を表示します。
使用例
usbus2 で USB の生のパケットを獲得します:
usbdump -i usbus2 -s 256 -v
パケットサイズの制限ないファイルに usbus2 の USB の生のパケットをダンプします:
usbdump -i usbus2 -s 0 -w /tmp/dump_pkts
usbus2 の USB の生のパケットをダンプしますが、デバイスユニット番号 3 の制御終点トラフィックだけです:
usbdump -i usbus2 -s 0 -f 3.0 -f 3.128 -w /tmp/dump_pkts
前のファイルから USB の生のパケットを読み込んで、表示します:
usbdump -r /tmp/dump_pkts -v
出力形式
usbdump の出力形式は、次の通りです:
<time> <bus>.<addr> <ep> <xfertype> <S/D> (<frames>/<length>) <...>
出力形式の要素の意味は、次の通りです:
- <time>
- 先行するすべての出力線のタイムスタンプ。タイムスタンプは、形式 "hh:mm:ss.frac"であり、カーネルのクロックと同じくらい正確です。
- <bus>
- USB ホストコントローラのバスユニット番号。
- <addr>
- ホストコントローラドライバによって割り付けられる USB デバイスのユニークな番号。
- <ep>
- アドレスが OUT または IN かどうかを示す USB 終点アドレス。
- <xfertype>
- USB 転送タイプ。 CTRL, ISOC, BULK または INTR を指定できます。
- <S/D>
- `S' は、USB サブミット (submit) を示します。 `D' は、USB 転送が行われたことを示します。
- <frames>
-
このパケットのフレームの数。これが USB サブミットであるなら、その値は、どのくらい多くのフレームが転送のために受け付けられるか、または登録できるかを意味する、
xfer->nframes
です。これが USB done (行われた) であるなら、xfer->aframes
は、フレームの実際の数です。 - <length>
-
合計のパケットサイズ。これが USB submit であるなら、その値は、
xfer->sumlen
です。これが USB done (行われた) であるなら、その値は、xfer->actlen
です。 - <...>
- パケットが USB done から来ているなら、印刷されるエラー文字列のために使用されるオプションのフィールド。
関連項目
usbconfig(8)作者
<weongyo@FreeBSD.org>April 24, 2012 | FreeBSD |