dpdk使用笔记

l3fwd-thread

  1. cat /proc/meminfo 查看大页内存是否配置成功。
  2. 当运行l3fwd-thread,如何出现socket 0不能分配内存或者LPM memory allocation failed,那可能是巨页设置的太小了,设置巨页设置成1024。
  3. l3fwd-thread这个脚本可以帮助我们在黑窗口监控端口收包情况,如何需要打印个性化需求,则应该修改这个目录下的main.c这个源文件,并使用make重新编译文件。例如在pthread_rx函数中调用printf函数,来打印我们想要观察的变量信息。下面为命令行输入参数:
    ./build/l3fwd-thread [EAL options] –
    -p PORTMASK [-P]
    –rx(port,queue,lcore,thread)[,(port,queue,lcore,thread)]
    –tx(lcore,thread)[,(lcore,thread)]
    [–enable-jumbo] [–max-pkt-len PKTLEN]] [–no-numa]
    [–hash-entry-num] [–ipv6] [–no-lthreads] [–stat-lcore lcore]
    [–parse-ptype]

参数说明:
-p 后面跟着一个十六进制数,表示需要配置的网卡(位掩码形式表示),例如0x3或者3,表示需要配置网卡0和1。
-P 将所有端口设置为混杂模式,无论数据包的Ethernet MAC目的地址如何,数据包都被接收。
–rx 收包列表。port是网卡id、queue是队列id、lcore是处理核id、thread是线程id,都是从0开始的自然是。
–tx 发包列表。
–enable-jumbo 支持巨型帧。
–max-pkt-len 最大数据包的长度,范围是64-9600。
–no-numa 禁用numa,numa是非统一内存访问技术。
–hash-entry-num 指定要设置的哈希条目号(十六进制)。
–ipv6 运行ipv6数据包。
–no-lthreads 禁用lthreads模型,使用EAL线程模型。
–stat-lcore 在指定的lcore上运行CPU负载统计数据收集器。
–parse-ptype 设置使用软件分析数据包类型。如果没有这个选项,硬件将检查数据包类型。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章