1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

DPDKに関するサイト

Last updated at Posted at 2021-06-03

testpmdのコマンドライン

testpmdは、EALの引数および、testpmdの引数をとる。引数の仕切りは--で区分けする。
例えば下記の場合、EALとtestpmdの引数はそれぞれ以下となる。

  • -l 0-3 -n 4がEALの引数 (TAUG 3.1参照)
  • -i --portmask=0x1 --nb-cores=2がtestpmd固有の引数(TAUG 3.2参照)
sudo ./dpdk-testpmd -l 0-3 -n 4 -- -i --portmask=0x1 --nb-cores=2

EAL固有の引数

  • -a # 利用するPCIデバイスのアドレス指定

testpmd固有の引数

  • --eth-peer=N,XX:XX:XX:XX:XX:XX # eth-peerの設定 set eth-peer相当
  • --forward-mode=xxxxx # forwardモードの設定。set fwd相当
  • -i # インターラクティブモードの選択
  • --mbuf-size # mbufのサイズの設定。これで、set txpktsの上限が決まる。
  • --nb-cores= # 利用するCPUコア数の指定。
  • --no-numa # numaを使わない場合に設定
  • --port-topology=mode # ポートトポロジーの設定
  • --rxq= # 受信キューの数の設定
  • --stats-period # 統計取得間隔の指定。ただし-iを使っていない場合。
  • --tx-first # tx_firstの設定。start tx_first相当
  • --tx-ip=SRC,DST # (パケットforwardのtxonlyモード限定) パケットのSRCとDSTのIPアドレス設定
  • --txpkts # パケットサイズの設定。set txpkts相当
  • --txq= # 送信キューの数の指定

testpmd内のインターラクティブコマンド

起動時にtestpmdのtestpmd固有の引数として-iを指定した場合、インターラクティブモードになる。そして、以下のコマンドが使える。

ドキュメント

interactiveモードでは、タブを打つと選択できるオプションが表示される。
例えば、以下のような操作をするとオプションが表示される。

testpmd> show port <TAB>

また、以下のコマンドがある

  • help

制御

  • start
  • start tx_first
  • stop
  • quit

設定

  • set
    • eth-peer # peerの設定 (ポート番号と対向MACアドレスの設定)
    • fwd # パケット転送モード
      • io # デフォルト転送モード
      • icmpecho # icmpechoの応答をする
      • rxonly # 受信のみ
      • txonly # 送信のみ
    • txpkts # 一度に送るパケットサイズを設定する。デフォルト64バイト
    • verbose # ログの出力モード 0 (default)から3まで

ポート状態監視

最後の0はポート番号、もしくは引数allを使う

  • show
    • config # 設定状態
      • fwd # 転送状態
    • port # ポート状態
      • info all
      • summary all
      • stats all
      • xstats all

ログ出力

/var/log/syslog等に出力される。該当行は、dpdk-testpmdの文字列が入っている。

Feb  7 01:05:35 ip-192-168-158-79 dpdk-testpmd[1511]: EAL: VFIO support initialized
Feb  7 01:05:35 ip-192-168-158-79 dpdk-testpmd[1511]: EAL: Using IOMMU type 8 (No-IOMMU)
Feb  7 01:05:35 ip-192-168-158-79 kernel: [ 3746.818263] vfio-pci 0000:00:06.0: vfio-noiommu device opened by user (dpdk-testpmd:1511)
Feb  7 01:05:35 ip-192-168-158-79 dpdk-testpmd[1511]: EAL: Probe PCI driver: net_ena (1d0f:ec20) device: 0000:00:06.0 (socket -1)
Feb  7 01:05:36 ip-192-168-158-79 kernel: [ 3747.262723] vfio-pci 0000:00:07.0: vfio-noiommu device opened by user (dpdk-testpmd:1511)
Feb  7 01:05:36 ip-192-168-158-79 dpdk-testpmd[1511]: EAL: Probe PCI driver: net_ena (1d0f:ec20) device: 0000:00:07.0 (socket -1)
Feb  7 01:05:36 ip-192-168-158-79 dpdk-testpmd[1511]: TELEMETRY: No legacy callbacks, legacy socket not created
Feb  7 01:05:36 ip-192-168-158-79 dpdk-testpmd[1511]: testpmd: create a new mbuf pool <mb_pool_0>: n=171456, size=2176, socket=0
Feb  7 01:05:36 ip-192-168-158-79 dpdk-testpmd[1511]: testpmd: preferred mempool ops selected: ring_mp_mc
Feb  7 01:22:06 ip-192-168-158-79 dpdk-testpmd[1511]: ena_rx_queue_release(): Rx queue 0:0 released
Feb  7 01:22:06 ip-192-168-158-79 dpdk-testpmd[1511]: ena_tx_queue_release(): Tx queue 0:0 released
Feb  7 01:22:06 ip-192-168-158-79 dpdk-testpmd[1511]: ena_rx_queue_release(): Rx queue 1:0 released
Feb  7 01:22:06 ip-192-168-158-79 dpdk-testpmd[1511]: ena_tx_queue_release(): Tx queue 1:0 released
Feb  7 01:22:06 ip-192-168-158-79 kernel: [ 4737.767038] eal-intr-thread[1512]: segfault at 583 ip 00005644e5cbc987 sp 00007f38b841f2e0 error 4 in dpdk-testpmd[5644e4c22000+14d6000]
Feb  7 02:59:11 ip-192-168-158-79 dpdk-testpmd[1670]: EAL: VFIO support initialized
Feb  7 02:59:11 ip-192-168-158-79 dpdk-testpmd[1670]: EAL: Using IOMMU type 8 (No-IOMMU)
Feb  7 02:59:11 ip-192-168-158-79 kernel: [10562.800089] vfio-pci 0000:00:06.0: vfio-noiommu device opened by user (dpdk-testpmd:1670)
Feb  7 02:59:11 ip-192-168-158-79 dpdk-testpmd[1670]: EAL: Probe PCI driver: net_ena (1d0f:ec20) device: 0000:00:06.0 (socket -1)
Feb  7 02:59:11 ip-192-168-158-79 dpdk-testpmd[1670]: TELEMETRY: No legacy callbacks, legacy socket not created
Feb  7 02:59:11 ip-192-168-158-79 dpdk-testpmd[1670]: testpmd: create a new mbuf pool <mb_pool_0>: n=171456, size=2176, socket=0
Feb  7 02:59:11 ip-192-168-158-79 dpdk-testpmd[1670]: testpmd: preferred mempool ops selected: ring_mp_mc
Feb  7 03:02:02 ip-192-168-158-79 dpdk-testpmd[1670]: ena_rx_queue_release(): Rx queue 0:0 released
Feb  7 03:02:02 ip-192-168-158-79 dpdk-testpmd[1670]: ena_tx_queue_release(): Tx queue 0:0 released
Feb  7 03:02:02 ip-192-168-158-79 kernel: [10733.966442] eal-intr-thread[1671]: segfault at 443 ip 000056519d78c987 sp 00007f05136762e0 error 4 in dpdk-testpmd[56519c6f2000+14d6000]

文書

開発関連レポジトリ

メーリングリスト

QA サイト

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?