【银河麒麟高级服务器操作系统】业务访问慢网卡丢包现象分析及处理过程

了解更多银河麒麟操作系统全新产品,请点击访问

麒麟软件产品专区:product.kylinos.cn

开发者专区:developer.kylinos.cn

文档中心:document.kylinos.cn

交流论坛:forum.kylinos.cn


服务器环境以及配置

【内核版本】

4.19.90-25.22.v2101.ky10.x86_64

【OS镜像版本】

银河麒麟高级服务器操作系统

Kylin Linux Advanced Server release V10 (SP2) /(Sword)-x86_64-Build09/20210524

现象描述

服务器业务访问很慢,可能存在网卡丢包,交换机侧有收到反压帧(有反压帧,说明服务器网卡的接收缓存区可能满了)。

网卡品牌是:Mellanox,有多个优先级缓存区(8个,优先级0-7)。目前通过ethtool -S查看,发现rx_prio0_buf_discard值很大,不为0。但是rx_out_of_buffer为0。

关于迈络思网卡有几个问题:

  1. 数据包到服务器网卡,到底走哪个优先级缓存区(因为有8个,走哪个缓存区是网卡判定的还是操作系统判定的,还是说交换机上面控制的)?
  2. 如果某个优先级的缓存区满了,继续有包过来是不是会丢弃,还是说等待排队,如果这个优先级的缓存区没有开启PFC功能,是不是数据包就会丢弃?
  3. 迈洛思网卡是不是可以调整各个优先级的缓存区大小(通过命令mlnx_qos -i 网卡名 --buffer_size),这个调整是不是调整的网卡的硬件缓存区大小?

现象分析

现象1分析

数据包到服务器网卡,走哪个优先级缓存区,由报文DSCP和网卡配置决定。

通过mlnx_qos工具将不同DSCP绑定到不同优先级缓存区,以设置具备不同DSCP的报文走哪个优先级缓存区。

DSCP(Differentiated Services Code Point,差分服务代码点)是一种用于网络报文优先级分类的标记,使用每个数据包IP头部的TOS字段进行标识,通过不同的编码值来区分不同优先级。

用户可以将不同DSCP绑定到网卡不同的接收缓冲区。网卡收到某个报文后从IP头部读取DSCP值,根据DSCP值和网卡配置规则,确定该报文进入哪个硬件缓存区。

现象2分析

如果某个优先级的缓存区满了,后续包的处理逻辑受PFC(优先级流量控制)功能影响

  1. 若开启了PFC功能,处理过程如下:

接收该报文,并向对端发送PFC PAUSE帧,通知对端设备暂时停止发送该类报文;对端设备在接收到PFC PAUSE帧后,将暂时停止向本端发送该类报文;当拥塞仍然存在时,此过程将重复进行,直至拥塞解除。

需要注意,必须保证本端和对端的PFC功能都处于开启状态,PFC功能才能生效。PFC中流量暂停只针对某一个或几个优先级队列,不针对整个接口进行中断,每个队列都能单独进行暂停或重启,而不影响其他队列上的流量。

  1. 若没有开启PFC功能,处理过程如下:

系统不进行反压处理,即在发生拥塞时直接丢弃报文。

现象3分析

迈洛思网卡可以调整缓存区大小。

通过迈络思官方文档,可以查到通过命令“mlnx_qos -i 网卡名 --buffer_size sizelist”来设置接收缓冲区大小,如下说明:

图2 迈络思参数说明

官方文档链接:

https://enterprise-support.nvidia.com/s/article/mlnx-qos

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/67603.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

鸿蒙开发中的骨架图:提升用户体验的关键一环

大家好,我是小 z,今天要给大家分享一个提升用户体验的超实用技巧 —— 骨架图🎯 文章目录 一、什么是骨架图二、骨架图的作用三、鸿蒙开发中实现骨架图的方法1. 利用 opacity 奠定视觉基础2. animateTo 驱动动态变化3. 二者协同触发与展示 四…

leetcode刷题记录(七十三)——543. 二叉树的直径

(一)问题描述 543. 二叉树的直径 - 力扣(LeetCode)543. 二叉树的直径 - 给你一棵二叉树的根节点,返回该树的 直径 。二叉树的 直径 是指树中任意两个节点之间最长路径的 长度 。这条路径可能经过也可能不经过根节点 r…

【esp32小程序】小程序篇02——连接git

一、创建仓库 进入gitee官网,登录(如果没有gitee账号的就自行注册一下)。 点击号-->新建仓库 填写好必填信息,然后点击“创建” 二、微信开发者工具配置 在微信开发者工具打开我们的项目。按下面的步骤依次点击 三、验证 点…

Linux的基本指令(上) -- 0基础入门

目录 知识点引入 基本指令 ls指令 pwd 命令 cd 指令 touch 指令 stat指令 mkdir 指令 tree指令 rmdir 指令 rm 命令 man 指令 which 指令 alias 指令 echo指令 输出重定向: > 追加重定向:>> cp 指令 知识点引入 1. Linux中路径用 / 作为路径分隔…

Java测试开发平台搭建(九)前端

1. 搭建前端vue环境 Vue3 安装 | 菜鸟教程 2. 创建项目 1.进入ui vue ui 2. create项目 3. 成功之后添加插件: cli-plugin-router vue-cli-plugin-vuetify 4. 添加依赖 axios 5. 点击任务开始运行 如果报错: 修改vue.config.jsconst { defineConfig }…

基于SpringBoot+Vue的智慧动物园管理系统的设计与实现

获取源码:基于SpringBootVue智慧动物园系统设计与实现: 后台和用户前台。后台包括首页、员工管理、考勤管理、部门管理、角色管理、审核管理、动物管理、演出管理、园区管理、园区设施维修、饲养管理、行为观察管理、疫苗管理、看护管理、个人中心、票务管理、收入管…

55.【5】BUUCTF WEB NCTF2019 sqli

进入靶场 输入admin 123 过滤的这么严格??? 过滤很严格,此时要么爆破,要么扫描 直接扫描,得到robots.txt 访问后又得到hint.txt 继续访问 图片内容如下 $black_list "/limit|by|substr|mid|,|admi…

【前端】用OSS增强Hexo的搜索功能

文章目录 前言配置 _config.fluid.yml云端实时更新 local-search.xml解决 OSS.Bucket 的跨域问题 前言 原文地址:https://blog.dwj601.cn/FrontEnd/Hexo/hexo-enhance-local-search-with-oss/ 考虑到某著名云服务商提供的云服务器在两年的 99 计划后续费价格高达四…

Hive SQL必刷练习题:留存率问题

首次登录算作当天新增,第二天也登录了算作一日留存。可以理解为,在10月1号登陆了。在10月2号也登陆了,那这个人就可以算是在1号留存 今日留存率 (今日登录且明天也登录的用户数) / 今日登录的总用户数 * 100% 解决思…

Ubuntu 24.04 LTS 系统语言英文改中文

Ubuntu 24.04 LTS 修改软件源 Ubuntu 更改软件源 修改语言 无需输入命令,为Ubuntu 24.04系统添加中文智能拼音输入法 在 setting 的 system 中按下图操作 点击“Apply Changes”。需要管理员密码,安装完成后,退出登录,重新登…

【从零开始入门unity游戏开发之——C#篇46】C#补充知识点——命名参数和可选参数

考虑到每个人基础可能不一样,且并不是所有人都有同时做2D、3D开发的需求,所以我把 【零基础入门unity游戏开发】 分为成了C#篇、unity通用篇、unity3D篇、unity2D篇。 【C#篇】:主要讲解C#的基础语法,包括变量、数据类型、运算符、…

大模型WebUI:Gradio全解11——Chatbot:融合大模型的多模态聊天机器人(6)

大模型WebUI:Gradio全解11——Chatbot:融合大模型的多模态聊天机器人(6) 前言本篇摘要11. Chatbot:融合大模型的多模态聊天机器人11.6 为LLM Agent构建UI11.6.1 使用transformers.agents11.6.2 使用Langchain agents11…

springboot基于前后端分离的摄影知识网站

Spring Boot 基于前后端分离的摄影知识网站 一、项目概述 Spring Boot 基于前后端分离的摄影知识网站,是一个专为摄影爱好者、专业摄影师打造的知识共享与交流平台。借助 Spring Boot 强大的后端架构搭建能力,结合前端独立开发的灵活性,整合…

VD:生成a2l文件

目录 前言Simulink合并地址 ASAP2 editor 前言 我之前的方法都是通过Simulink模型生成代码的过程中顺便就把a2l文件生成出来了,这时的a2l文件还没有地址,所以紧接着会去通过elf文件更新地址,一直以为这是固定的流程和方法,今天无…

物联网与前沿技术融合分析

【前言】 在科技发展的滚滚浪潮中,物联网作为连接物理世界与数字世界的桥梁,正日益凸显其关键作用。近年来,物联网与其他前沿技术的融合不断催生新的应用场景与创新模式,为各个领域带来了深刻变革。 物联网与人工智能的深度融合&…

【VRChat · 改模】Unity2019、2022的版本选择哪个如何决策,功能有何区别;

总览 1.Unity2019、2022的版本的选择 2.Unity添加着色器教程 一、Unity2019、2022的版本的选择 1.Unity2019 和 Unity2022 的区别,VRChat SDK 为何要区分两个版本 我是外行,最开始以为的是,2019 和 2022 的变化是基于这个模型本身的。 也…

Elasticsearch 和arkime 安装

安装一定要注意版本号,不然使用不了 这里Ubuntu使用ubuntu-20.04.6-desktop-amd64.iso elasticsearch这里使用Elasticsearch 7.17.5 | Elastic arkime这里使用wget https://s3.amazonaws.com/files.molo.ch/builds/ubuntu-20.04/arkime_3.4.2-1_amd64.deb 大家想…

【王树森搜素引擎技术】相关性03:文本匹配(TF-IDF、BM25、词距)

链路上的相关性模型 召回海选 打分量:数万模型:文本匹配分数线性模型或双塔BERT模型 粗排 打分量:数千模型:双塔BERT,或单塔BERT模型(交叉) 精排 打分量:数百模型:单塔B…

庄小焱——2024年博文总结与展望

摘要 大家好,我是庄小焱。岁末回首,2024 年是我在个人成长、博客创作以及生活平衡方面收获颇丰的一年。这一年的经历如同璀璨星辰,照亮了我前行的道路,也为未来的发展奠定了坚实基础。 1. 个人成长与突破 在 2024 年&#xff0c…

GraphRAG: Auto Prompt Tuning 实践

GraphRAG 的 Auto Prompt Tuning 功能是一个强大的工具,用于优化知识图谱的生成过程。以下是对该功能的详细介绍和分析: 自动提示调优(Auto Prompt Tuning) 1. 概念 GraphRAG 的自动提示调优功能旨在为特定领域的知识图谱生成创…