zoukankan      html  css  js  c++  java
  • [development][dpdk][pktgen] 网卡收发包性能测试

    一: 多队列及中断信息收集

    [root@T185 ~]# ethtool -g eth0
    Ring parameters for eth0:
    Pre-set maximums:
    RX:             4096
    RX Mini:        0
    RX Jumbo:       0
    TX:             4096
    Current hardware settings:
    RX:             512
    RX Mini:        0
    RX Jumbo:       0
    TX:             512
    [root@T185 ~]# ls /sys/class/net/eth0/queues/
    rx-0  rx-10  rx-12  rx-14  rx-16  rx-18  rx-2   rx-21  rx-23  rx-4  rx-6  rx-8  tx-0  tx-10  tx-12  tx-14  tx-16  tx-18  tx-2   tx-21  tx-23  tx-4  tx-6  tx-8
    rx-1  rx-11  rx-13  rx-15  rx-17  rx-19  rx-20  rx-22  rx-3   rx-5  rx-7  rx-9  tx-1  tx-11  tx-13  tx-15  tx-17  tx-19  tx-20  tx-22  tx-3   tx-5  tx-7  tx-9
    [root@T185 ~]# cat /proc/interrupts |less -S
    [root@T185 ~]# cat /proc/interrupts
                CPU0       CPU1       CPU2       CPU3       CPU4       CPU5       CPU6       CPU7       CPU8       CPU9       CPU10      CPU11      CPU12      CPU13      CPU14      CPU15      CPU16      CPU17      CPU18      CPU19      CPU20      CPU21      CPU22      CPU23      
       0:        186          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-IO-APIC-edge      timer
       1:          3          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-IO-APIC-edge      i8042
       8:          1          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-IO-APIC-edge      rtc0
       9:          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-IO-APIC-fasteoi   acpi
      12:          4          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-IO-APIC-edge      i8042
      16:        256          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-IO-APIC-fasteoi   ehci_hcd:usb1
      23:        298          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-IO-APIC-fasteoi   ehci_hcd:usb2
      88:          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  DMAR_MSI-edge      dmar0
      89:          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  DMAR_MSI-edge      dmar1
      90:          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      aerdrv
      91:          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      aerdrv
      92:          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      aerdrv
      93:          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      aerdrv
      94:          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      aerdrv
      95:          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      aerdrv
      96:          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      aerdrv
      97:          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      aerdrv
      98:          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      aerdrv
      99:          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      aerdrv
     100:          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      aerdrv
     101:          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      aerdrv
     102:          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      aerdrv
     103:      24847          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      ahci
     104:          1          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      isci-msix
     105:          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      isci-msix
     106:    3319852          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      eth0-TxRx-0
     107:     981541          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      eth0-TxRx-1
     108:      28004          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      eth0-TxRx-2
     109:      28004          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      eth0-TxRx-3
     110:      28004          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      eth0-TxRx-4
     111:      28004          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      eth0-TxRx-5
     112:     669706          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      eth0-TxRx-6
     113:      28004          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      eth0-TxRx-7
     114:      28004          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      eth0-TxRx-8
     115:      28009          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      eth0-TxRx-9
     116:      28004          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      eth0-TxRx-10
     117:      28004          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      eth0-TxRx-11
     118:      28004          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      eth0-TxRx-12
     119:      28069          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      eth0-TxRx-13
     120:     338786          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      eth0-TxRx-14
     121:      28004          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      eth0-TxRx-15
     122:      28004          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      eth0-TxRx-16
     123:      28004          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      eth0-TxRx-17
     124:      28004          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      eth0-TxRx-18
     125:      28004          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      eth0-TxRx-19
     126:      28004          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      eth0-TxRx-20
     127:      28004          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      eth0-TxRx-21
     128:      28004          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      eth0-TxRx-22
     129:      28004          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      eth0-TxRx-23
     130:         59          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      eth0
     131:      85702          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      eth1-TxRx-0
     132:      84484          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      eth1-TxRx-1
     133:      89210          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      eth1-TxRx-2
     134:      86210          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      eth1-TxRx-3
     135:      86086          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      eth1-TxRx-4
     136:      89464          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      eth1-TxRx-5
     137:      94737          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      eth1-TxRx-6
     138:      86082          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      eth1-TxRx-7
     139:      84812          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      eth1-TxRx-8
     140:      86437          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      eth1-TxRx-9
     141:      83901          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      eth1-TxRx-10
     142:      90394          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      eth1-TxRx-11
     143:      86578          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      eth1-TxRx-12
     144:      89534          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      eth1-TxRx-13
     145:      92897          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      eth1-TxRx-14
     146:      97958          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      eth1-TxRx-15
     147:      26913          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      eth1-TxRx-16
     148:      26913          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      eth1-TxRx-17
     149:      26913          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      eth1-TxRx-18
     150:      26913          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      eth1-TxRx-19
     151:      26913          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      eth1-TxRx-20
     152:      26913          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      eth1-TxRx-21
     153:      26913          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      eth1-TxRx-22
     154:      26913          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      eth1-TxRx-23
     155:          2          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      eth1
     157:      97476          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0  IR-PCI-MSI-edge      eth3
     NMI:        736         48          9          4          2          1        133          2         14          4         13         12          6        102         67          2          1          1          1        163          3        640        550       2718   Non-maskable interrupts
     LOC:     892399      69189      85565      60959      35207      24688     159437      24227     114514      64519      50015      24473      19392     198772     108184      34002      21177      18652      18684     250274      43307   42755165   42680063    2737380   Local timer interrupts
     SPU:          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0   Spurious interrupts
     PMI:        736         48          9          4          2          1        133          2         14          4         13         12          6        102         67          2          1          1          1        163          3        640        550       2718   Performance monitoring interrupts
     IWI:          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0   IRQ work interrupts
     RTR:          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0   APIC ICR read retries
     RES:    2281297     404101       4908        813        277        323        594        864       4512       1682        768        369        109       3271        222        508         86         81        145       7654        369        964        460        202   Rescheduling interrupts
     CAL:        325        389        365        373        385        385        741        491       1434        921        652        488        384        357        387        385        383        384        395       3966        679        586       1914        427   Function call interrupts
     TLB:         19          5         18        157          3          6         11          7         12         78          2          3         12        781        637         30         25         12          7        807        686       7816       4244      50309   TLB shootdowns
     TRM:          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0   Thermal event interrupts
     THR:          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0   Threshold APIC interrupts
     MCE:          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0          0   Machine check exceptions
     MCP:        217        217        217        217        217        217        217        217        217        217        217        217        217        217        217        217        217        217        217        217        217        217        217        217   Machine check polls
     ERR:          0
     MIS:          0
    [root@T185 ~]# 
    interrupts

    二: 设置CPU隔离

    在grub.conf 中,增加isolcpus参数。

    三: 修改收发包队列数

    [root@T185 tong]# ethtool -g eth0
    Ring parameters for eth0:
    Pre-set maximums:
    RX:             4096
    RX Mini:        0
    RX Jumbo:       0
    TX:             4096
    Current hardware settings:
    RX:             64
    RX Mini:        0
    RX Jumbo:       0
    TX:             512
    
    [root@T185 tong]# ethtool -G eth0 rx 1  tx 1
    [root@T185 tong]# ethtool -g eth0
    Ring parameters for eth0:
    Pre-set maximums:
    RX:             4096
    RX Mini:        0
    RX Jumbo:       0
    TX:             4096
    Current hardware settings:
    RX:             64
    RX Mini:        0
    RX Jumbo:       0
    TX:             64
    ethtool

    不能设成1, 最小64.所以,对于中断并没有什么影响.这好像不对,不知道这是什么鬼。

    下载最新的驱动,https://downloadcenter.intel.com/download/14687 并查看README

    Command Line Parameters                                                         
    -----------------------                                                         
    If the driver is built as a module, the following optional parameters are used  
    by entering them on the command line with the modprobe command using this       
    syntax:                                                                         
    modprobe ixgbe [<option>=<VAL1>,<VAL2>,...]                                     
                                                                                    
    There needs to be a <VAL#> for each network port in the system supported by     
    this driver. The values will be applied to each instance, in function order.    
    For example:                                                                    
    modprobe ixgbe InterruptThrottleRate=16000,16000                                
                                                           
    。。。 。。。
    
    Multiqueue                                                                      
    ----------                                                                      
    Valid Range:                                                                    
    0, 1                                                                            
    0 = Disables Multiple Queue support                                             
    1 = Enabled Multiple Queue support (a prerequisite for RSS)                     
                                          
    README

    README里给的参数竟然不对,尼玛

    [root@T185 tong]# modprobe -r ixgbe
    [root@T185 tong]# modprobe ixgbe MQ=1,0
    [root@T185 tong]# ls /sys/class/net/eth0/queues/
    rx-0  rx-10  rx-12  rx-14  rx-16  rx-18  rx-2   rx-21  rx-23  rx-4  rx-6  rx-8  tx-0  tx-10  tx-12  tx-14  tx-16  tx-18  tx-2   tx-21  tx-23  tx-4  tx-6  tx-8
    rx-1  rx-11  rx-13  rx-15  rx-17  rx-19  rx-20  rx-22  rx-3   rx-5  rx-7  rx-9  tx-1  tx-11  tx-13  tx-15  tx-17  tx-19  tx-20  tx-22  tx-3   tx-5  tx-7  tx-9
    [root@T185 tong]# ls /sys/class/net/eth1/queues/
    rx-0  tx-0
    [root@T185 tong]#

    四:中断绑定:

    cpu结构:

    [root@T185 tong]# ./cpu_layout.py 
    ============================================================
    Core and Socket Information (as reported by '/proc/cpuinfo')
    ============================================================
    
    cores =  [0, 1, 2, 3, 4, 5]
    sockets =  [0, 1]
    
           Socket 0        Socket 1        
           --------        --------        
    Core 0 [0, 12]         [6, 18]         
    Core 1 [1, 13]         [7, 19]         
    Core 2 [2, 14]         [8, 20]         
    Core 3 [3, 15]         [9, 21]         
    Core 4 [4, 16]         [10, 22]        
    Core 5 [5, 17]         [11, 23]        
    [root@T185 tong]# 

    另外两个工具:lstopo,和hwloc。

    中断绑定:

    #! /bin/bash
    
    function bind() # $lcpus, $irq_list, $set
    {
            for i in $2
            do
                    echo -n $i ": "
                    if [ $3 -eq 1 ]
                    then
                            echo $1 > /proc/irq/$i/smp_affinity_list
                            echo "Done!"
                    else
                            cat /proc/irq/$i/smp_affinity_list
                    fi
            done
    }
    
    function usage()
    {
            echo "Usage:"
            echo -e "	irq_bind.sh 0(print)/1(set) "
            echo
    }
    
    if [ $# -ne 1 ]
    then
            usage
            exit
    fi
    
    if [ ( "$1" != "1" ) -a ( "$1" != "0" ) ]
    then
            usage
            exit
    fi
    
    irq_list=`cat /proc/interrupts |grep eth0 |awk -F: '{print $1}'`
    bind "1,13" "$irq_list" $1
    
    irq_list=`cat /proc/interrupts |grep eth1 |awk -F: '{print $1}'`
    bind "2,14" "$irq_list" $1

    注意: 网卡驱动重新加载过了之后,需要重新对中断进行绑定。

    五: 发包:

    tcpreplay -i eth0 -l0 -L10000000 -p400000 -K syy/50000.pcap 

    六: pktgen-dpdk

    http://pktgen-dpdk.readthedocs.io/en/latest/

    版本太多,版本间的修改又都比较大。最后pktgen和dpdk都用了当前的最新版本。重要编译通过了,且运行正常了。

    tong@zw:~/src$ ls
    dpdk-17.05  dpdk-17.05.tar.gz  pktgen-3.3.3  pktgen-3.3.3.tar.gz

    6.1  正常编译dpdk,并正确设置环境变量

    make config T=x86_64-native-linuxapp-gcc O=x86_64-native-linuxapp-gcc
    make
    tong@zw:~/src$ tail -n2 ~/.bashrc 
    export RTE_SDK=~/src/dpdk-17.05/
    export RTE_TARGET=x86_64-native-linuxapp-gcc

    6.2   编译并设置 pktgen

    make
    sysctl -n vm.nr_hugepages=8192
    vim cfg/default.cfg 
    
    ./tools/run.py -s
    hugepages per socket 4096
    Set /sys/devices/system/node/node0/hugepages/hugepages-2048kB/nr_hugepages to 4096
    Bind devices to DPDK:
       ['03:00.3']
    sudo mount -t hugetlbfs nodev /mnt/huge

    6.3  运行

    http://pktgen-dpdk.readthedocs.io/en/latest/usage_pktgen.html#usage-pktgen

    最终配置如下:

    tong@zw:~/src/pktgen-3.3.3$ cat cfg/default.cfg 
    # Setup configuration
    setup = {
            'devices': [
                    '03:00.3'
                    ],
    
            'opts': [
                    '-b igb_uio'
                    ]
            }
    
    # Run command and options
    run = {
            'dpdk': [
                    '-l 4,5',
                    '-n 1',
                    '--proc-type auto',
                    '--log-level 7',
                    '--file-prefix pg'
                    ],
    
            'blacklist': [
                    ],
    
            'pktgen': [
                    '-T',
                    '-P',
                    '--crc-strip',
                    '-m [5].0',
                    ],
    
            'misc': [
                    '-f themes/black-yellow.theme'
                    ]
            }
    tong@zw:~/src/pktgen-3.3.3$ 
    cfg/default.cfg
    tong@zw:~/src/pktgen-3.3.3$ ./tools/run.py cfg/default.cfg

    6.4  使用

    Pktgen:/> set 0 count 5
    Pktgen:/> set 0 size 64
    Pktgen:/> start 0
    Pktgen:/> set 0 size 512
    Pktgen:/> start 0
    Pktgen:/> set 0 size 70 
    Pktgen:/> start 0
    Pktgen:/> 

    发了三次,每次五个包,长度分别为 64 / 512 / 70

     详细的参数参考:http://pktgen-dpdk.readthedocs.io/en/latest/commands.html#runtime-options-and-commands

    也可以在Pktgen的命令行里 help

    还可以用LUA进行配置,但是我不会 http://pktgen-dpdk.readthedocs.io/en/latest/lua.html

    6.5  其他

    但是所有的 TCP包都是SYN的,不能握手。与我的测试目的还是有些区别。

    6.6   发送pcap

      在命令行使用 -s P:PCAP_file 参数。

      在pktgen中使用如下命令:

    Pktgen:/> enable 0 pcap

      使用page pcap命令可以查看pcap详细内容:

    Pktgen:/> page pcap

      之后使用正常的命令,便可以发送数据包了。

    七。 pktgen-linux

    据说之支持 UDP,不支持TCP。

    八。测试数据

    [development][dpdk][pktgen] 网卡收发包性能测试-详细数据

    九。 使用gprof查找性能瓶颈。

      9.1  使用gcc -pg编译

      9.2  正常运行程序,并正常退出,系统会生成一个gmon.out文件。

      9.3  使用如下命令查看输出

        gprof app_name gmon.out

      9.4  通过观察日志,找到性能瓶颈,是一个链表遍历查找的函数。

  • 相关阅读:
    Get-CrmSetting返回Unable to connect to the remote server的解决办法
    Dynamics 365中的常用Associate和Disassociate消息汇总
    Dynamics 365 Customer Engagement V9 活动源功能报错的解决方法
    Dynamics Customer Engagement V9版本配置面向Internet的部署时候下一步按钮不可点击的解决办法
    Dynamics 365检查工作流、SDK插件步骤是否选中运行成功后自动删除系统作业记录
    注意,更改团队所属业务部门用Update消息无效!
    Dynamics 365的审核日志分区删除超时报错怎么办?
    Dynamics 365使用Execute Multiple Request删除系统作业实体记录
    Dynamics 365的系统作业实体记录增长太快怎么回事?
    Dynamics CRM日期字段查询使用时分秒的方法
  • 原文地址:https://www.cnblogs.com/hugetong/p/7116626.html
Copyright © 2011-2022 走看看