Centos7主机带宽限速

news2024/9/23 0:35:55

需求:最近有两个主机经常把带宽打满。咨询了阿里云无法对内网网卡做限制。这边想使用linux默认的TC工具。

限速之前测试带宽。这时带宽有 168.4MB/s。

]# scp filebeat-8.8.2-x86_64.rpm 172.116.47.54:/root/
 100%   26MB 168.4MB/s   00:00

1. 限制出站(发送)流量

限制出站流量的步骤如前所述,以下是步骤的概要:

1.1 清除已有的规则
sudo tc qdisc del dev eth0 root
1.2 设置出站限速为 10Mbps
sudo tc qdisc add dev eth0 root tbf rate 10mbit burst 32kbit latency 400ms
1.3 验证限速是否生效
sudo tc qdisc show dev eth0

 传输文件验证测试实际带宽

16% 4384KB   3.0MB/s   00:07

2. 限制入站(接收)流量

限制入站流量需要使用 tc 的高级功能,并结合 iptables,因为 tc 主要控制出站流量。

2.1 使用 ifb 虚拟设备

我们需要使用 ifb(Intermediate Functional Block)虚拟设备来处理入站流量。首先,加载 ifb 模块:

sudo modprobe ifb

然后为 ifb0 设备设置流量处理:

sudo ip link set dev ifb0 up
2.2 将入站流量重定向到 ifb0

使用 tc 将入站流量重定向到 ifb0 设备:

sudo tc qdisc add dev eth0 handle ffff: ingress
sudo tc filter add dev eth0 parent ffff: protocol ip u32 match u32 0 0 action mirred egress redirect dev ifb0
2.3 设置 ifb0 上的入站限速为 10Mbps

现在,我们可以在 ifb0 设备上设置入站流量限速:

sudo tc qdisc add dev ifb0 root tbf rate 10mbit burst 32kbit latency 400ms
2.4 验证配置

可以用以下命令查看 ifb0 的配置:

sudo tc qdisc show dev ifb0

传输文件验证测试实际带宽

 27% 7328KB   2.3MB/s   00:0

3. 限速多维度验证

多个设备一起测试带宽,查看是否网卡级别限速,两个主机一起传文件,查看带宽只有3MB,限速成功。

82%   22MB   1.1MB/s   00:0
 26% 7184KB   1.2MB/s   00:1

查看主机监控

查看zabbix监控图标,这边限速已生效。

3. 移除规则

如果需要移除设置的限速规则,先移除 ifb0 的规则:

sudo tc qdisc del dev ifb0 root

然后移除入站流量重定向规则:

sudo tc qdisc del dev eth0 ingress

4. 测试和调整

测试入站和出站流量限制后,可以根据实际需求对 rateburstlatency 参数进行调整。

注意事项

  • 限制入站流量可能会影响到整体网络性能,因此在实际使用中需要谨慎配置。
  • 使用 ifb 虚拟设备会引入一定的系统开销。

通过这些步骤,你可以实现对 eth0 网卡的出站和入站流量的带宽限制。

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

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

相关文章

数据结构入门——08排序

1.排序 1.1什么是排序 排序是一种操作,通过比较记录中的关键字,将一组数据按照特定顺序(递增或递减)排列起来。排序在计算机科学中非常重要,因为它不仅有助于数据的快速检索,还能提高其他算法的性能。 1…

PostgreSQL-03-入门篇-过滤数据

文章目录 1. WHEREWHERE 子句概述WHERE 子句示例1) 使用 WHERE 子句和等于运算符 () 示例2) 使用 WHERE 子句和 AND 运算符示例3) 使用 WHERE 子句和 OR 运算符示例4) 使用 WHERE 子句和 IN 运算符示例5) 使用 WHERE 子句和 LIKE 运算符示例6) 将 WHERE 子句与 BETWEEN 运算符一…

自动化运维---ansible

ansible是一种由Python开发的自动化运维工具,集合了众多运维工具(puppet、cfengine、chef、func、fabric)的优点,实现了批量系统配置、批量程序部署、批量运行命令等功能。 特点: 部署简单 默认使用ssh进行管理,基于py…

【LLM大模型论文日更】| 大型语言模型用于模拟搜索用户行为

论文:https://arxiv.org/pdf/2403.09142代码:未开源机构:中国人民大学高瓴人工智能研究院领域:信息检索发表:SIGIR2024 短文 Abstract 由于成本效益和可再现性方面的优势,用户模拟已成为信息检索系统面向用…

Python酷库之旅-第三方库Pandas(084)

目录 一、用法精讲 351、pandas.Series.str.isdigit方法 351-1、语法 351-2、参数 351-3、功能 351-4、返回值 351-5、说明 351-6、用法 351-6-1、数据准备 351-6-2、代码示例 351-6-3、结果输出 352、pandas.Series.str.isspace方法 352-1、语法 352-2、参数 3…

【 亿邦动力网-注册安全分析报告】

前言 由于网站注册入口容易被黑客攻击,存在如下安全问题: 暴力破解密码,造成用户信息泄露短信盗刷的安全问题,影响业务及导致用户投诉带来经济损失,尤其是后付费客户,风险巨大,造成亏损无底洞 …

钢铁百科:美标A633GrC材质分析、A633GrC正火状态、A633GrC材料性能

A633GrC钢板是一种美国ASTM标准的高强度低合金结构钢板,字母"A"代表钢(Steel),数字"633"表示该材料的牌号,而"GrC"表示该材料为高强度低合金钢(High Strength Low Alloy&…

wtv-next 宝塔更新教程

数据库升级办法 输入用户名密码,点执行 程序升级办法 文件后缀看清楚,是amd64、arm64。etc 目录下是配置文件,按照格式往下加就行。 回到刚才那个页面 先点停止,再点启动

【大模型部署及其应用 】RAG检索技术和生成模型的应用程序架构:RAG 使用 Meta AI 的 Llama 3

目录 RAG检索技术和生成模型的应用程序架构1. **基本概念**2. **工作原理**3. **RAG的优势**4. **常见应用场景**5. **RAG的挑战**6. **技术实现**参考RAG 使用 Meta AI 的 Llama 3亲自尝试运行主笔记本与文档应用聊天关键架构组件1. 自定义知识库2. 分块3. 嵌入模型4. 矢量数据…

GAMES104:08游戏引擎的动画技术基础-学习笔记

文章目录 一,动画技术简介动画技术的挑战 二,2D游戏动画技术2.1 精灵动画(sprite animation)2.2 Live2D 三,3D游戏动画技术3.1 基于层次的刚体动画3.2 顶点动画3.3 Morph Target Animation3.4 蒙皮动画3.4.1 2D蒙皮动画…

房产系统源码开发

一、开发需求: 信息录入与管理:系统需要支持各种数据的录入,这包括但不限于客户信息、房源信息、员工信息、合同信息和财务信息等。这些数据是房产系统的基础,对于后续的信息查询、分析和共享至关重要。信息查询与检索&#xff1…

Ports Number of field profile samples 参数设置

Ports Number of field profile samples 参数设置 正文正文 在进行 Port 仿真时,通常我们会对 port 端口中的光束模式进行设定,很多时候我们会遇到一个名为 Number of field profile samples 的参数,如下图所示: 如果去官方论坛查看解释,往往会被搞得云里雾里。这个参数…

什么是AR、VR、MR、XR?

时代背景 近年来随着计算机图形学、显示技术等的发展,视觉虚拟化技术得到了广泛的发展,并且越来越普及化,慢慢的也走入人们的视野。目前市场上视觉虚拟化技术的主流分为这几种 VR、AR、MR、XR。这几项技术并不是最近才出现的,VR的…

RabbitMQ 的工作原理

下面是rabbitmq 的工作原理图解 1、客户端连接到消息队列服务器,打开一个channel。 2、客户端声明一个exchange,并设置相关属性。 3、客户端声明一个queue,并设置相关属性。 4、客户端使用routing key, 在exchange和queue 之间…

FreeBSD 针对OpenSSH 高危漏洞发布紧急补丁

近日,FreeBSD 项目的维护者针对OpenSSH 高危漏洞发布了紧急补丁。该漏洞被追踪为 CVE-2024-7589,CVSS 得分为 7.4(最高分为 10.0)。通过利用该漏洞,黑客能够在权限提升的情况下远程执行任意代码。 根据上周发布的一份…

Hive3:常用的虚拟列(Virtual Columns)

一、作用 虚拟列是Hive内置的可以在查询语句中使用的特殊标记,可以查询数据本身的详细参数。 Hive目前可用3个虚拟列: INPUT__FILE__NAME:显示数据行所在的具体文件BLOCK__OFFSET__INSIDE__FILE:显示数据行所在文件的偏移量ROW…

HarmonyOS开发:跨应用数据共享详解

目录 前言跨应用数据共享的重要性HarmonyOS的数据共享能力相关的基本概念跨应用数据共享的数据管理具体实现跨应用数据共享延伸:数据共享的安全和隐私结语 前言 现在的移动操作系统中,应用之间的数据共享已成为提升用户体验和实现功能互补的重要手段&a…

机器学习——第十四章 概率图模型

目录 14.1 隐马尔可夫模型 14.2 马尔可夫随机场 14.3 条件随机场 14.4学习与推断 14.4.1 变量消去 14.4.2 信念传播 14.5 近似推断 14.5.1 MCMC采样 14.5.2 变分推断 14.6 话题模型 14.1 隐马尔可夫模型 隐马尔可夫模型(Hidden Markov Model&#x…

入门 MySQL 数据库:基础指南

简介 MySQL 是一个非常流行的开源关系型数据库管理系统(RDBMS),广泛用于 Web 应用、企业应用和数据仓库。本博客将引导你从零开始,学习 MySQL 数据库的基础知识。 什么是 MySQL? MySQL 是一个基于 SQL(Str…

秒懂Linux之制作简易shell

目录 一.全部代码 二.自定义shell 一.全部代码 #include <stdio.h> #include <stdlib.h> #include <string.h> #include <unistd.h> #include <sys/types.h> #include <sys/wait.h>#define SIZE 1024 #define MAX_ARGC 64 #define SEP &…