4,614 瀏覽數

Pktgen 效能測試

這一篇是利用 Pktgen 來測試網路裝置的效能,如果你完全不知道什麼是 Pktgen 可以先從這一篇來了解 Pktgen 簡介 – http://benjr.tw/93300 以及 Pktgen 封包的傳送與接收 – http://benjr.tw/93394

我的 Pktgen 封包的傳送與接收架構圖如下:
pktgen01

簡略了設定方式,主要是從 System A (TX) -> System B (RX) 的網路效能如何.

  • count 1000 傳送封包次數
  • min_pkt_size: 64 最小封包
  • max_pkt_size: 9000 最大封包
  • src_mac: 00:0c:29:06:a1:f9 (System A)
  • dst_mac: 00:0c:29:77:5a:56 (System B)

執行結果如下:

root@ubuntu:~# cat /proc/net/pktgen/eth0
Params: count 1000  min_pkt_size: 64  max_pkt_size: 9000
     frags: 0  delay: 0  clone_skb: 0  ifname: eth0
     flows: 0 flowlen: 0
     queue_map_min: 0  queue_map_max: 0
     dst_min:   dst_max:
        src_min:   src_max:
     src_mac: 00:0c:29:06:a1:f9 dst_mac: 00:0c:29:77:5a:56
     udp_src_min: 9  udp_src_max: 9  udp_dst_min: 9  udp_dst_max: 9
     src_mac_count: 0  dst_mac_count: 0
     Flags:
Current:
     pkts-sofar: 1000  errors: 0
     started: 2015028695039us  stopped: 2015028715432us idle: 98us
     seq_num: 1001  cur_dst_mac_offset: 0  cur_src_mac_offset: 0
     cur_saddr: 0x844d200a  cur_daddr: 0x0
     cur_udp_dst: 9  cur_udp_src: 9
     cur_queue_map: 0
     flows: 0
Result: OK: 20393(c20294+d98) nsec, 1000 (1064byte,0frags)
  49036pps 417Mb/sec (417394432bps) errors: 0

執行後的 Result: OK: 20393(c20294+d98) nsec, 1000 (1064byte,0frags)
49036pps 417Mb/sec (417394432bps) errors: 0
可以看到測試結果 OK
測試時間 20393(c20294+d98) nsec (u 10負 6 次方,m:1e-3 u:1e-6 n:1e-9)
傳送封包數 1000,以及封包大小 1064byte,以及是否有破碎的封包 0 frags
每秒傳送封包數 49036pps(package per second)
每秒傳送多少封包 417Mb/sec
以及是否有錯誤 errors: 0

pps: package per second 以及 bps: bit per second 的效能算法如下

  • Throughput = packets received / end time − start time (pps: package per second)
    =1000 / 20393(c20294+d98) nsec 答案就是 49036pps
  • Throughput = bytes received × 8(Bytes -> Bits) / end time − start time (bps: bit per second)
    =1000*1064*8(Bytes -> Bits)/20393(c20294+d98) nsec 答案就是 約 417394432bps

我們還可以透過設定不同的 package size (指定 min_pkt_size 以及 max_pkt_size) 來測試看看你的網路裝置在不同情況下的效能如何.也可以同時從 System B 打回 System A 看看 System A(RX) 與 System B(TX)效能如何.

3 個網友的想法 “Pktgen 效能測試

  1. 自動參照通知: Pktgen – Commands | Benjr.tw

  2. 自動參照通知: Pktgen 簡介 | Benjr.tw

  3. 自動參照通知: pktgen 封包的傳送與接收 | Benjr.tw

發表迴響