当前位置:网站首页 > R语言数据分析 > 正文

dhclient ens33的作用(dhclient -r eth0)



Azure 中的数据平面开发工具包 (DPDK) 提供了更快速的用户空间包处理框架,适用于性能密集型应用程序。 此框架绕过虚拟机的内核网络堆栈。

在使用内核网络堆栈的典型包处理中,进程是由中断指令驱动。 当网络接口收到传入的包时,不仅有内核中断指令会处理包,还有上下文切换会从内核空间切换到用户空间。 DPDK 消除了上下文切换和中断指令驱动方法,而是实现用户空间,以使用轮询模式驱动程序来加速包处理。

DPDK 由多组用户空间库构成,这些库提供对较低级别资源的访问权限。 这些资源包括硬件、逻辑核心、内存管理和网络接口卡的轮询模式驱动程序。

DPDK 可以在支持多个操作系统分发版的 Azure 虚拟机中运行。 DPDK 在驱动网络功能虚拟化实现方面提供与众不同的关键性能。 这些实现可采用网络虚拟设备 (NVA) 的形式,如虚拟路由器、防火墙、VPN、负载均衡器、演进包核心和拒绝服务 (DDoS) 应用程序。

此处提供了 MANA VM 上 DPDK 的设置说明列表:Linux 上的 Microsoft Azure 网络适配器 (MANA) 和 DPDK

提高每秒包数 (PPS) :绕过内核并控制用户空间中的包可消除上下文切换,从而减少周期计数。 同时,这还会提高 Azure Linux 虚拟机中每秒处理的包比率。

支持 Azure 市场中的以下分发版:

Linux OS 内核版本 Ubuntu 18.04 4.15.0-1014-azure+ SLES 15 SP1 4.12.14-8.19-azure+ RHEL 7.5 3.10.0-862.11.6.el7.x86_64+ Debian 10 4.19.0-1-cloud+

所记录的版本是最低要求。 还支持较新版本。

此处提供了 MANA VM 上 DPDK 的要求列表:Linux 上的 Microsoft Azure 网络适配器 (MANA) 和 DPDK

自定义内核支持

对于未列出的任何 Linux 内核版本,请参阅用于生成 Azure 优化 Linux 内核的修补程序。 有关详细信息,还可以联系 。

所有 Azure 区域都支持 DPDK。

必须在 Linux 虚拟机上启用加速网络。 虚拟机应至少有两个网络接口,其中一个接口用于管理。 不建议在管理界面上启用加速网络。 了解如何创建启用加速网络的 Linux 虚拟机。

此外,DPDK 会使用 RDMA 谓词在网络适配器上创建数据队列。 在 VM 中,确保加载正确的 RDMA 内核驱动程序。 它们可以为 mlx4_ib、mlx5_ib 或 mana_ib,具体取决于 VM 大小。

此处提供了适用于 MANA VM 的 DPDK 安装说明:Linux 上的 Microsoft Azure 网络适配器 (MANA) 和 DPDK

  1. 下载最新的 DPDK。 建议为 Azure 安装版本 22.11 LTS 或更高版本。
  2. 运行 生成默认配置。
  3. 使用 进行编译。
  4. 使用 进行安装。

重启后,运行下面的命令一次:

  1. 巨页
    • 针对每个 numa 节点运行以下命令一次,以配置巨页:
     
        
    • 使用 创建用于装载的目录。
    • 使用 装载巨页。
    • 运行 检查巨页是否已保留。
    • 以上示例适用于 2M 大页面。 也可以使用 1G 大页面。
  2. MAC 和 IP 地址:使用 查看网络接口的 MAC 和 IP 地址。 VF 网络接口和 NETVSC 网络接口具有相同的 MAC 地址,但只有 NETVSC 网络接口具有 IP 地址。 VF 接口以 NETVSC 接口的从属接口形式运行 。
  3. PCI 地址
    • 运行 确定对 VF 使用哪个 PCI 地址。
    • 如果 eth0 已启用加速网络,请确保 testpmd 不会意外接管 eth0 的 VF PCI 设备 。 如果 DPDK 应用程序意外接管管理网络接口,并导致 SSH 连接断开,请使用串行控制台来停止 DPDK 应用程序。 串行控制台还可用于停止或启动虚拟机。
  4. 每次重新启动后,使用 加载 ibuverbs。 (仅适用于 SLES 15)另外,使用 加载 mlx4_ib

DPDK 应用程序必须通过在 Azure 中公开的主 PMD 运行。 如果应用程序直接通过 VF PMD 运行,它不会收到发往 VM 的所有包,因为一些包通过综合接口显示。 DPDK 支持两种类型的主 PMD:NetVSC PMD 和故障安全 PMD。 主 PMD 可保证应用程序接收以其为目标的所有数据包。 此外,还可确保应用程序继续在 DPDK 模式下运行,即使在为主机提供服务时撤销了 VF 也不例外。

NetVSC 是建议在 Azure 中作为主 PMD 运行的 PMD。 它会保证应用程序接收以其为目标的所有数据包。 此外,还能确保应用程序继续以 DPDK 模式运行,即使在为主机提供服务时撤销了 VF,也不例外。 有关如何使用和配置 NetVSC PMD 的详细信息,请参阅(https://doc.dpdk.org/guides/nics/netvsc.html)。

注意:不建议在 Azure 中通过防故障 PMD 运行。 如果 DPDK 版本为 22.11 LTS 或更高版本,则建议使用 NetVSC PMD。

作为替代方法,可以通过防故障 PMD 运行 DPDK 应用程序。 若要详细了解防故障 PMD,请参阅防故障轮询模式驱动程序库。

若要在根模式下运行 testpmd,请在 testpmd 命令前面使用 。

  1. 运行以下命令启动单端口 testpmd 应用程序:
     
  2. 运行以下命令启动双端口 testpmd 应用程序:
     

启动后,运行 检查端口信息。 应会看到一个或两个值为 net_netvsc 的 DPDK 端口。

  1. 使用 启动流量。

上面的命令在交互模式下启动 testpmd,这是建议用于试用 testpmd 命令的模式。

以下命令定期列显每秒数据包数的统计信息:

  1. 在 TX 端运行以下命令:
     
  2. 在 RX 端运行以下命令:
     

若要在虚拟机上运行上面的命令,请先将 中的 IP_SRC_ADDR 和 IP_DST_ADDR 更改为与虚拟机的实际 IP 地址一致,再进行编译。 否则,数据包在抵达接收端之前将被丢弃。

以下命令定期列显每秒数据包数的统计信息:

  1. 在 TX 端运行以下命令:
     
  2. 在 FWD 端运行以下命令:
     

若要在虚拟机上运行上面的命令,请先将 中的 IP_SRC_ADDR 和 IP_DST_ADDR 更改为与虚拟机的实际 IP 地址一致,再进行编译。 否则,数据包在抵达转发端之前将被丢弃。 你无法使用第三台计算机来接收转发的流量,因为除非做出一些代码更改,否则 testpmd 转发器不会修改第 3 层地址。

  • EAL 选项
  • Testpmd 命令
  • 数据包转储命令
到此这篇dhclient ens33的作用(dhclient -r eth0)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!

版权声明


相关文章:

  • 启动docker命令(启动docker-compose)2025-10-04 10:09:06
  • cruise2018安装教程(cruise安装包百度云)2025-10-04 10:09:06
  • nswered怎么读(swer怎么读英语)2025-10-04 10:09:06
  • no switchport命令(noswitchport命令如何取消)2025-10-04 10:09:06
  • pointnet++代码详解(pointpillars代码)2025-10-04 10:09:06
  • redhat价格(redhat官方网站)2025-10-04 10:09:06
  • prsr怎么读(prs英语怎么读)2025-10-04 10:09:06
  • 文档打开目录(word打开文件目录)2025-10-04 10:09:06
  • spring aop实现日志记录(spring用aop实现日志)2025-10-04 10:09:06
  • 启动docker服务的命令(启动docker服务的命令行是)2025-10-04 10:09:06
  • 全屏图片