6.2. 診断

有用な出力を取得するには、システムを定常状態にして、測定する統計をリセットします。

# put system into steady state
ovs-appctl dpif-netdev/pmd-stats-clear
# wait <x> seconds
sleep <x>
ovs-appctl dpif-netdev/pmd-stats-show

出力の例を次に示します。

[root@overcloud-compute-0 ~]# ovs-appctl dpif-netdev/pmd-stats-clear && sleep 10 && ovs-appctl dpif-netdev/pmd-stats-show |
egrep 'core_id (2|22):' -A9
pmd thread numa_id 0 core_id 22:
    emc hits:17461158
    megaflow hits:0
    avg. subtable lookups per hit:0.00
    miss:0
    lost:0
    polling cycles:4948219259 (25.81%)
    processing cycles:14220835107 (74.19%)
    avg cycles per packet: 1097.81 (19169054366/17461158)
    avg processing cycles per packet: 814.43 (14220835107/17461158)
--
pmd thread numa_id 0 core_id 2:
    emc hits:14874381
    megaflow hits:0
    avg. subtable lookups per hit:0.00
    miss:0
    lost:0
    polling cycles:5460724802 (29.10%)
    processing cycles:13305794333 (70.90%)
    avg cycles per packet: 1261.67 (18766519135/14874381)
    avg processing cycles per packet: 894.54 (13305794333/14874381)

core_id 2 は主にビジーであり、処理時間の 70% とポーリング時間の 30% を費やしていることに注意してください。

polling cycles:5460724802 (29.10%)
processing cycles:13305794333 (70.90%)

この例では、miss は、DPDK データパス (emc または dp 分類子) で分類されなかったパケットを示します。通常の状況では、それらは ofproto レイヤーに送信されます。まれに、フローの再検証ロックが原因で、または ofproto レイヤーがエラーを返した場合、パケットはドロップされます。この場合、lost の値も増分されて損失を示します。

emc hits:14874381
megaflow hits:0
avg. subtable lookups per hit:0.00
miss:0
lost:0

詳細については、OVS-DPDK Datapath Classifier を参照してください。