DOCA Flow 性能测量技能
帮助网络工程师获得可复现、可辩护的 DOCA Flow 控制面规则速率数据。
文档明确要求最小化运行范围、用户确认、专用设备、OOB访问、先冒烟后批量、失败前保存证据,并披露真实Flow规则会占用设备资源;因此主要安全风险可见。扣7分:未提供明确的回滚/清理步骤、依赖安全审查或系统化敏感数据处理方案,且大规模运行仍可能影响生产设备。
TASKS.md提供了配置、冒烟、迭代测试和分层故障诊断流程,失败反馈较具体;但CLI参数和JSON schema被刻意留给外部帮助文本,未见可执行测试套件或关键路径复现证据,且部分内容存在抽象依赖和末尾截断。按静态评估上限计分,扣12分。
触发条件、目标用户、适用场景以及与doca-flow-tune和doca-flow-dpa-perf的边界描述清楚;但能力高度依赖Linux、DOCA SDK、BlueField/ConnectX和本地二进制,未提供中文交互指导,也未证明docs.nvidia.com等外部资料在中国大陆网络中的可达性。扣5分。
SKILL.md、CAPABILITIES.md和TASKS.md具有分层结构,包含依赖、限制、版本匹配、路由和维护入口;但缺少明确作者、变更日志和稳定版本策略,SKILLCARD中的仓库路径、许可证和签名字段与输入元数据不完全一致,且静态检查报告指出缺少推荐章节。扣6分。
对于选择政策、后端、工作负载参数、冒烟测试和结果记录这一核心任务,流程具有直接指导价值,且明确不把控制面速率误称为数据面吞吐;但精确命令、参数和schema未在技能中给出,用户仍需查阅外部指南并自行验证,输出通常需要较多环境适配。扣9分。
文件提供了错误分类、原始输出、四元组/配置捕获要求,以及一份声称通过的评估报告;但评估数据不可用,未提供真实CI与覆盖关键路径的提交测试,报告主要是作者维护的摘要,无法独立复现。扣7分。
- 这是静态文档审查,未执行doca_flow_perf、命令、测试或硬件操作。
- 运行该技能可能在真实设备上安装和删除大量Flow规则;必须确认设备专用、具备OOB恢复能力,并先用小规模策略冒烟。
- 精确CLI参数和JSON字段依赖已安装二进制的--help及外部DOCA指南,不能仅凭本技能推断。
- 评估报告声称通过但未提供原始数据或可独立复现的测试证据。
这个 Skill 能做什么,适合哪些场景?
该技能指导用户使用 NVIDIA 的 doca_flow_perf 测量主机侧或 DPU-CPU 侧 DOCA Flow 管道的控制面性能。它涵盖 JSON 策略选择、DPDK 或 DOCA 后端选择、单次冒烟运行和迭代评估循环,并帮助解释每次迭代的 CPU 周期、成功处理数和失败数。技能要求 Linux 环境中已安装 DOCA SDK,并具备 BlueField DPU 或 ConnectX NIC。它不负责实时 Flow 应用调优、DPA 卸载路径测量,也不测量数据面吞吐或延迟。
读取 configs/ 中的 JSON 策略示例,协助选择或编辑描述端口、管道、匹配器、动作和转发行为的策略;调用 doca_flow_perf 的命令行程序,先执行单次迭代冒烟测试,再运行迭代评估循环;读取工具标准输出中的 CPU 周期、处理数量和失败数量;要求记录 DOCA 版本、BlueField 或固件、JSON 策略以及 worker、queue、burst 配置,以便解释 Kops/sec 结果。
- 网络工程师希望测量 BlueField 上特定 5 元组匹配和 hairpin 工作负载的主机侧规则插入速率。
- 平台团队比较不同 DOCA 版本、BlueField 代际或固件条件下的 Flow 控制面性能。
- 工程师发现本地 Kops/sec 结果低于 NVIDIA 发布的数据,需要检查 worker、队列深度、burst 大小、后端和硬件条件。
- 开发者需要从 shipped configs/ 示例出发,为新的 Flow 流量类别编写 JSON 策略。
- 团队需要区分 doca_flow_perf 的测量任务、doca-flow-tune 的实时应用优化任务和 doca-flow-dpa-perf 的 DPA 路径测量任务。
这个 Skill 有哪些优点和局限?
- 覆盖从策略选择、冒烟测试到迭代评估的完整测量流程。
- 强调记录版本、硬件、策略和 worker/queue/burst 配置,便于复现和比较。
- 明确区分控制面规则速率与数据面吞吐、延迟及实时应用优化。
- 同时说明 DPDK 和 DOCA 后端在同一 JSON 合约下的选择边界。
- 依赖已安装且健康的 DOCA SDK、doca_flow_perf、配置示例和 doca-flow 库。
- 要求 Linux 与 BlueField DPU 或 ConnectX NIC;源材料未提供其他平台证据。
- 技能本身不提供完整的 JSON schema、精确运行参数或权威 Kops/sec 基准数字。
- 不测量端到端数据面吞吐、数据面延迟或实时 Flow 应用性能。
如何安装这个 Skill?
使用仓库 README 提供的 skills CLI 安装指定技能:
npx skills add nvidia/skills --skill doca-flow-perf --yes
也可以安装整个 NVIDIA 技能集合:
npx skills add nvidia/skills
源材料没有说明 doca_flow_perf 或 DOCA SDK 的具体安装命令。运行该技能前,应确认 /opt/mellanox/doca 中已存在 DOCA SDK、doca_flow_perf、configs/ JSON 示例以及健康的 doca-flow 库。
如何使用这个 Skill?
向已加载该技能的代理提出具体测量问题,例如:“请帮我测量 BlueField 上 5 元组匹配和 hairpin 工作负载的主机侧 DOCA Flow 规则插入速率,并说明需要记录哪些环境条件。”代理应按 configure → run → test → debug 的顺序工作,先选择三轴配置和 JSON 策略,再执行单次冒烟和迭代评估,并报告所用 DPDK 或 DOCA 后端及完整四元组。精确命令行参数和 JSON 字段应以 doca_flow_perf --help、随附示例和公开 DOCA Flow Perf 指南为准。
这个 Skill 与同类方案有什么区别?
与 doca-flow-tune 相比,doca_flow_perf 用于测量合成 JSON 管道,而不是优化已部署的 Flow 应用;与 doca-flow-dpa-perf 相比,它测量主机或 DPU-CPU 路径,而不是 DPA 卸载路径;与 doca-bench 相比,它专注于 Flow 控制面微基准,而 doca-bench 覆盖更广泛的 DOCA 原语。