hook declined to update refs_抓包工具packet capture

hook declined to update refs_抓包工具packet capture发包工具TRexstateless使用笔记https://github.com/cisco-system-traffic-generator/trex-coreLinux运行优化forfilein`find/sys/devices/system/cpu/-namescaling_governor`;doechoperformance>$file;doneec…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

发包工具 TRex stateless 使用笔记

https://github.com/cisco-system-traffic-generator/trex-core

Linux 运行优化

for file in `find /sys/devices/system/cpu/ -name scaling_governor`; do echo performance > $file; done

echo never > /sys/kernel/mm/transparent_hugepage/defrag

echo never > /sys/kernel/mm/transparent_hugepage/enabled

echo 0 > /sys/kernel/mm/transparent_hugepage/khugepaged/defrag

sysctl -w vm.swappiness=0

sysctl -w vm.zone_reclaim_mode=0

systemctl stop irqbalance

trex 初始化

trex 需安装Python2/3, 如使用busybox等自定义文件系统需配置python路径:

export PATH=/sdd/python-2.7.15/bin:$PATH

cd /sdd/trex-v2.53

发包示例:

./t-rex-64 –cfg mlx5-02.yaml -m 10 -d 60 -f cap2/imix_64_fast.yaml

./t-rex-64 –cfg mlx5-02.yaml -m 10 -d 60 -f ipv6.yaml –ipv6 –no-ofed-check

配置单口发包, 修改mlx5-02.yaml interfaces :

### Config file generated by dpdk_setup_ports.py ###

– version: 2

interfaces: [’07:00.0′, “dummy”]

port_info:

– dest_mac: e8:68:19:c7:94:f2

src_mac: 50:6b:4b:d3:cf:74

platform:

master_thread_id: 0

latency_thread_id: 8

dual_if:

– socket: 0

threads: [1,2,3,4,5,6,7,9,10,11,12,13,14,15]

tw:

buckets: 1024

levels: 3

bucket_time_usec: 20.0

配置双口发包, 添加接口bus-info到配置文件:

### Config file generated by dpdk_setup_ports.py ###

– version: 2

interfaces: [’07:00.0′, ’07:00.1′]

port_info:

– dest_mac: e8:68:19:c7:94:f2

src_mac: 50:6b:4b:d3:cf:74

– dest_mac: e8:68:19:c7:94:f2

src_mac: 50:6b:4b:d3:cf:75

注:

Mellanox CX-5 网卡Trex 2.53默认只能在CentOS7.4系统运行. 可通过修改 dpdk_setup_ports.py 屏蔽相关的检查代码即可.

trex startup

启动TRex服务端进入 stateless 模式, 可配置-c指定CPU.

./t-rex-64 –cfg mlx5-02.yaml –ipv6 –no-ofed-check -i

启动TRex客户端

./trex-console -s 127.0.0.1

help(帮助命令,显示所支持的命令,如:发包命令start,停止发包stop,图形化显示命令tui)

cmd -h (对于每条命令,加上-h或—help可以显示具体的帮助信息)

start

启动TX任务

trex>start -h

usage: start [-h] [-p PORTS [PORTS …] | -a] [–total] [–force] -f FILE

[-d TIME] [-t T1=VAL[,T2=VAL …]] [-m MULT] [-n]

[–pin | –core_mask CORE_MASK [CORE_MASK …]] [–sync]

Start selected traffic on specified ports on TRex

optional arguments:

-h, –help show this help message and exit

-p PORTS [PORTS …], –port PORTS [PORTS …]

A list of ports on which to apply the command

-a Set this flag to apply the command on all available

ports

–total traffic will be divided between all ports specified

–force Set if you want to stop active ports before appyling

command.

-f FILE File path to use

-d TIME Set duration time for job.

-t T1=VAL[,T2=VAL …]

Sets tunables for a profile. Example: ‘-t

fsize=100,pg_id=7′

-m MULT, –multiplier MULT

Multiplier should be passed in the following format:

[number][| bps | kbps | mbps | gbps | pps |

kpps | mpps | % ]. no suffix will provide an absoulute

factor and percentage will provide a percentage of the

line rate. examples ‘-m 10’, ‘-m 10kbps’, ‘-m

10kbpsl1′, ‘-m 10mpps’, ‘-m 23% ‘ ‘-m 23%’ : is 23% L1

bandwidth ‘-m 23mbps’: is 23mbps in L2 bandwidth

(including FCS+4) ‘-m 23mbpsl1’: is 23mbps in L1

bandwidth

-n, –dry Dry run – no traffic will be injected

–pin Pin cores to interfaces – cores will be divided

between interfaces (performance boot for symetric

profiles)

–core_mask CORE_MASK [CORE_MASK …]

Core mask – only cores responding to the bit mask will

be active

–sync Run the traffic with syncronized time at adjacent

ports. Need to ensure effective ipg is at least 1000

usec.

示例:

start -f stl/bench.py -t size=64,vm=cached —p 0 -m 100%

IPv6 SYN-FLOOD

start -m 100% -p 0 –force -f stl/syn_attack.py

IPv6 UDP

start -m 100% -p 0 –force -f stl/imix_ipv6.py

IPv6 SYN-FLOOD

start -m 100% -p 0 –force -f stl/syn_ipv6.py

stop

停止TX任务

stop -a

tui 查看实时动态统计

实时全局统计 & 端口统计

tui

quit

stats 查看当前统计

trex>stats -h

usage: stats [-h] [–port PORTS [PORTS …] | -a]

[-g | -p | –ps | -s | -l | –lh | -c | -m | -x | –xz]

Show various statistics

optional arguments:

-h, –help show this help message and exit

–port PORTS [PORTS …]

A list of ports on which to apply the command

-a Set this flag to apply the command on all available

ports

-g Fetch only global statistics

-p Fetch only port statistics

–ps Fetch only port status data

-s Fetch only streams stats

-l Fetch only latency stats

–lh Fetch only latency histogram

-c Fetch only CPU utilization stats

-m Fetch only MBUF utilization stats

-x Fetch xstats of port, excluding lines with zero values

–xz, –zx Fetch xstats of port, including lines with zero values

示例

获取端口统计

stats –ps

获取端口状态

stats -p

获取全局统计

stats -g

参考

TRex upcoming Stateful scalable TCP support

TRex Stateless GUI v3.2

How TRex is used by Mellanox

Trex Blog

Trex

Comparing TRex Advanced Stateful performance to Linux NGINX

TRex Community

TRex Stateless support

TRex Stateless Python API

Mellanox support

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/196712.html原文链接:https://javaforall.net

(0)
上一篇 2025年9月21日 下午4:22
下一篇 2025年9月21日 下午5:01


相关推荐

  • TLE(两行轨道数据)卫星行李数据格式解析

    TLE(两行轨道数据)卫星行李数据格式解析笔者在利用 Cesium 进行卫星显示的时候遇到了卫星星历信息 卫星星历信息用 TLE 格式进行描述 初次看到这种数据很难看出描述的数据 所有在查询了相关子类之后对 TLE 数据进行了介绍 如下所示 卫星星历的结构为三行 首行数据为卫星名称 后面两行则存储了卫星相关数据 每行 69 个字符 包括 0 9 A Z 大写 空格 点和正负号 下面的示例及相关介绍参考维基百科 https en wikipedia

    2026年3月16日
    3
  • python基础菜鸟教程_菜鸟课程好还是文都好

    python基础菜鸟教程_菜鸟课程好还是文都好Python菜鸟教程第二十课之初始Django1.Django简介Django是一个开放源代码的Web应用框架,由Python写成。采用了MTV的框架模式,即模型M,视图V和模版T。Django的主要目的是简便、快速的开发数据库驱动的网站。它强调代码复用,多个组件可以很方便的以“插件”形式服务于整个框架,Django有许多功能强大的第三方插件你甚至可以很方便的开发出自己的工具包。这使得Djan…

    2025年10月4日
    5
  • C/C++开发人员要了解的几大著名C/C++开源库[通俗易懂]

    C/C++开发人员要了解的几大著名C/C++开源库[通俗易懂]本文详细讲述C/C++开发人员需要了解的几大著名C/C++开源库。

    2025年6月14日
    5
  • mac笔记本卡顿怎么办_电脑卡顿不流畅怎么办

    mac笔记本卡顿怎么办_电脑卡顿不流畅怎么办打开活动监视器,(启动台–其他–活动监测器),可以看到耗CPU,内存的具体应用都有哪些。如果能查到就往这方面去停止运行。一般都是图形的操作特别耗内存,可以关闭adboe的一些配置。我出现问题是安装了PS,他的adobe监听实时更新耗了系统70%内存。……

    2025年9月6日
    9
  • 散列函数

    散列函数    在线性表和树表中的查询中,记录在表的位置跟记录的关键字之间不存在确定关系,也就是说在线性表和树表中查询通常要依托关键字比较,查找的效率取决于比较次数。    散列函数:一个把查找表中的关键字映射成该关键字对应的地址函数,记为Hash(key)=Addr。这里的地址可以是数组下标,索引,或内存地址等。散列函数可能将两个或两个以上的不同关键字映射到同一个地址,称这种情况为“冲突”。(假若这个函…

    2022年5月14日
    68
  • 二进制、十进制、八进制、十六进制 各代表的英文字母是什么

    二进制、十进制、八进制、十六进制 各代表的英文字母是什么二进制是 Binary 简写为 B 八进制是 Octal 简写为 O 十进制为 Decimal 简写为 D 十六进制为 Hexadecimal 简写为 H

    2026年3月17日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号