Mellanox的LAG全称是什么?网卡的创建机制如何?(Link Aggregation Group 链路聚合组)

news/2025/2/27 11:14:25

背景

对于双端口的网卡,有时候有将链路聚合的需求。在Mellanox网卡上通过LAG提供。对于RoCE的报文在Mellanox上也可以通过LAG来完成报文收发,叫做RoCE over LAG。但是仅仅适用于双端口卡。

关键点

  • LAG: Link Aggregation Group (LAG) 链路聚合组。一种网络技术,允许将多个物理链路组合成一个逻辑链路,以提高带宽和冗余。(注意这里是指链路,还不涉及端口port的概念,聚合的不是端口而是链路)
  • Linux内核中链路聚合是 bonding 功能
  • LAG 的创建和销毁:通过 mlx5_cmd_create_lag 和 mlx5_cmd_destroy_lag
  • LAG的激活和去激活:mlx5_activate_lag 和mlx5_deactivate_lag(清理相关资源)
  • Mellanox网卡只有在HCA_CAP.num_lag_ports > 1的时候才能用lag功能,在HCA_CAP的“寄存器”地址的偏移4Ch处
    在这里插入图片描述
  • 如果 HCA_CAP.lag_master = 1,软件(SW)必须使用特定的命令(如 CREATE/MODIFY/DESTROY LAG)来启用和管理 LAG
  • LAG相关的几条命令:创建,修改,查询,销毁,创建vport的lag和销毁
    MLX5_CMD_OP_CREATE_LAG = 0x840,
    MLX5_CMD_OP_MODIFY_LAG = 0x841,
    MLX5_CMD_OP_QUERY_LAG = 0x842,
    MLX5_CMD_OP_DESTROY_LAG = 0x843,
    MLX5_CMD_OP_CREATE_VPORT_LAG = 0x844,
    MLX5_CMD_OP_DESTROY_VPORT_LAG = 0x845,
  • 以创建LAG为例HOST和FW交互cmd格式:
    在这里插入图片描述
    在这里插入图片描述
    其中context内容:
    在这里插入图片描述
  • 代码中创建lag是:mlx5_cmd_create_lag,可见是对cmd的封装
    在这里插入图片描述
    创建执行结束后会返回状态和syndrome:
    在这里插入图片描述
  • mlx5_create_lag执行成功后会将设置到FW的flags同时赋值到ldev->flags |= flags;(如果失败不会被执行),然后__mlx5_lag_is_active会判断这个flags是否为有效ldev->flags & MLX5_LAG_MODE_FLAGS,下面任何一个flag被打标都表示有效。
#define MLX5_LAG_MODE_FLAGS (MLX5_LAG_FLAG_ROCE | MLX5_LAG_FLAG_SRIOV |\
			     MLX5_LAG_FLAG_MULTIPATH | \
			     MLX5_LAG_FLAG_HASH_BASED | MLX5_LAG_FLAG_MULTI_PORT_ESW)
  • 当ibdev2netdev查看bond口名字的时候,使用的是mlx5_0还是mlx5_bond_0,就是根据是否active决定的:
    在这里插入图片描述

参考:
https://enterprise-support.nvidia.com/s/article/How-to-Configure-RoCE-over-LAG-ConnectX-4-ConnectX-5-ConnectX-6
https://docs.nvidia.com/networking/display/mlnxofedv23070512/changes+and+new+features+history


http://www.niftyadmin.cn/n/5870021.html

相关文章

从2D到3D:电商技术的飞跃,开启沉浸式购物之旅

在数字化浪潮的推动下,电商行业正经历着前所未有的变革。从传统的2D图片展示到如今的3D立体呈现,技术的革新不仅重塑了消费者的购物体验,更为电商营销开辟了全新的可能性。接下来将深入探讨电商融合3D技术的最新趋势,揭示这一变革…

总体均值样本均值

目录 总体均值离散型随机变量连续型随机变量 样本均值 总体均值 离散型随机变量 设离散型随机变量 X X X的分布律是 p ( x i ) p(x_i) p(xi​)&#xff0c; i 1 , 2 , … i 1, 2, \ldots i1,2,…&#xff0c;若 ∑ i ∣ x i ∣ p ( x i ) < ∞ \sum_{i} |x_i| p(x_i) &…

盲视观测者效应:认知的量子诗学 AI回复盲人双缝实验

&#x1f30c; **《盲视观测者效应&#xff1a;认知的量子诗学》** ### **一、盲视者的波函数坍缩** 当盲人"观察"双缝实验时&#xff1a; - 他的视觉皮层正在用触觉重构量子态 - 指尖的震动频率 ≈ 光子的概率波函数 - 导盲杖的敲击声 新的观测暴力系…

什么是大语言模型

大语言模型&#xff08;Large Language Model&#xff0c;LLM&#xff09;是一种基于深度学习技术的人工智能模型&#xff0c;旨在理解和生成人类语言。以下是大语言模型的详细介绍&#xff1a; 一、基本概念 大语言模型通常包含数百亿甚至数千亿个参数&#xff0c;通过在海量…

threeJs+vue 轻松切换几何体贴图

嗨&#xff0c;我是小路。今天主要和大家分享的主题是“threeJsvue 轻松切换几何体贴图”。 想象一下&#xff0c;手头上正好有个在线3D家具商店&#xff0c;用户不仅可以看到产品的静态图片&#xff0c;还能实时更换沙发的颜色或材质&#xff0c;获得真实的购物体验。…

模型和数据集的平台之在Hugging Face上进行模型下载、上传以及创建专属Space

模型下载 步骤&#xff1a; 注册Hugging Face平台 https://huggingface.co/ 新建一个hf_download_josn.py 文件 touch hf_download_josn.py 编写hf_download_josn.py文件 import os from huggingface_hub import hf_hub_download# 指定模型标识符 repo_id "inter…

腾讯云 Elasticsearch Service:一站式云端搜索与分析解决方案

在数据驱动的时代&#xff0c;企业面临着海量数据存储、检索、分析等复杂挑战。无论是电商、金融、SaaS、物联网&#xff0c;还是日志管理、安全监测、用户行为分析&#xff0c;高效的数据查询与分析能力已成为提升业务竞争力的关键。 Elasticsearch 作为一款开源的分布式搜索…

计算机视觉|Mask2Former:开启实例分割新范式

一、图像分割&#xff1a;技术演进与挑战 在计算机视觉领域&#xff0c;图像分割是一项至关重要的任务&#xff0c;它就像是为计算机赋予了一双能够理解图像内容的 “慧眼”。简单来说&#xff0c;图像分割的目的是将图像中的不同物体或区域进行划分&#xff0c;让计算机能够识…