(七)DPDK-testpmd

简介

Testpmd是dpdk自带的测试工具,也可以被看做一个APP。当运行testpmd时,可以展示和验证网卡支持的各种PMD相关功能。

1-testpmd的基础代码

包括testpmd的启动运行,参数解析,设备的检测和配置。包括如下文件

config.c    //这个文件名可能有些误导。实际上,这个文件中包含的是UI相关的配置和显示的代码
cmdline.c
bpf_cmd.c
cmdline_flow.c
cmdline_mtr.c
cmdline_tm.c

2-转发功能代码

为了方便对PMD功能的测试,testpmd中预设了若干种不同的转发模式。不同的转发模式意味着testpmd对收到的包进行了不同的处理,然后将其发送甚至是丢弃

//转发模式的设计是一种简化问题的思路。
//简单的切换转发模式可以规避复杂的难以实现的配置。
//包括以下文件,每个文件是一种单独的转发模式
csumonly.c
flowgen.c
icmpecho.c
ieee1588fwd.c
iofwd.c
macfwd.c
macswap.c
rxonly.c
softnicfwd.c
txonly.c

基础代码

Main函数

testpmd的执行过程 

rte_eal_init :对DPDK运行环境的初始化 

set_def_fwd_config :进行转发相关的默认配置。

1,set_default_fwd_lcores_config

  • 实际上是对配置的逻辑core的信息进行记录,包括socket相关的信息

2, set_def_peer_eth_addrs

  • 设置了一个默认的以太网地址,用于转发时填写以太帧头的目的地址

3, set_default_fwd_ports_config

  • 简单的将前面解析出来的port的信息记录下来。主要是明确有几个port,以便后续的处理。

 launch_args_par

  • 2
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值