Centos7主机带宽限速

需求:最近有两个主机经常把带宽打满。咨询了阿里云无法对内网网卡做限制。这边想使用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:026% 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.rhkb.cn/news/402199.html

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

相关文章

Python编码系列—掌握Python Web开发:Flask与FastAPI实战应用

🌟🌟 欢迎来到我的技术小筑,一个专为技术探索者打造的交流空间。在这里,我们不仅分享代码的智慧,还探讨技术的深度与广度。无论您是资深开发者还是技术新手,这里都有一片属于您的天空。让我们在知识的海洋中…

ubuntu 24.04 安装 Nvidia 显卡驱动 + CUDA + cuDNN,配置 AI 深度学习训练环境,简单易懂,一看就会!

ubuntu 24.04 安装 Nvidia 显卡驱动 CUDA cuDNN,配置 AI 深度学习训练环境,简单易懂,一看就会! 1.查看本机显卡型号 lspci | grep -i nvidia输出如下: 01:00.0 3D controller: NVIDIA Corporation GM108M [GeForc…

C语言常用的内存函数

在上一篇博客中我为大家分享了一些常用的字符串函数,以及它们的用法和模拟实现。通过字符串函数中的strcpy,我们能够做到将一个字符串中的内容拷贝到另一个字符串上,可如果有一天我们想把一个整型数组中的内容拷贝到另一个整型数组中呢&#…

KV存储之ETCD

ETCD 是一种分布式键值存储系统,主要用于分布式系统中的配置管理、服务发现和分布式协调。它由 CoreOS 团队开发,现在是 CNCF(云原生计算基金会)托管的一个开源项目。ETCD 在设计时非常注重一致性、可用性和性能,通常被…

Eclipse的使用配置教程:必要设置、创建工程及可能遇到的问题(很详细,很全面,能解决90%的问题)

Eclipse的使用配置: Ⅰ、Eclipse 的必要配置:1、Eclipse 的安装:其一、将 Eclipse 解压或安装到没有中文且没有空格的路径下。其二、拿到 eclipse.exe 文件,傻瓜式安装即可; 2、设置工作空间(workspace):其一、首次启动…

C程序设计——基本变量类型(指针杂谈)

瞎聊 本文后面的内容,可以暂时看不懂,以后如果从事这一行,慢慢会理解,但是这句话要记住:如果 piInt 是一个指向整型的指针变量,那么 *piInt 就是一个整型变量;类似的,如果pcChar是…

原生微信小程序笔记完整总结4.0

🤹‍♀️潜意识起点:个人主页 🎙座右铭:得之坦然,失之淡然。 💎擅长领域:大前端 是的,我需要您的: 🧡点赞❤️关注💙收藏💛 是我…

【MySQL】事务管理

【MySQL】事务管理 什么是事务为什么要有事务事务的版本支持事务的提交方式事务的常见操作事务的隔离级别如何理解隔离性隔离级别隔离级别的设置与查看读未提交【Read Uncommitted】读提交【Read Committed】可重复读【Repeatable Read】串行化【serializable】一致性(Consiste…

代码随想录算法训练营43期 | Day 14——226.翻转二叉树、101. 对称二叉树、104.二叉树的最大深度、二叉树最小深度

代码随想录算法训练营 226.翻转二叉树101. 对称二叉树递归法 104.二叉树的最大深度二叉树最小深度 226.翻转二叉树 leetcode链接 思路: 递归三部曲: 确定递归函数的参数和返回值确定终止条件确定单层递归的逻辑 递归法 TreeNode* invertTreeNode(Tree…

并发系统的 CSP+PAT 形式化建模与验证方法(以Kafka系统为例)

消息队列中间件是分布式系统的重要组成部分。它允许应用程序仅关注数据本身,而无需关心数据传输的具体细节。这一特性有效解决了消息异步传输、应用程序解耦以及流量削峰等问题。Kafka是一个开源的分布式消息系统,它基于发布-订阅模型构建。Kafka具有低延…

Unity使用代码生成ScriptableObject数据并赋值之后,重启数据就没有啦!

2024年8月14日早,因数据持续化存储,重启电脑后数据会丢失,而我找不到原因被领导质疑了,故写一片博客记录这个错误。 省流 使用在编辑器的play模式中为ScriptableObject赋值之后,需要使用 #if UNITY_EDITORUnityEdit…

Codeforces Round 495 (Div. 2) F. Sonya and Bitwise OR(线段树)

原题链接:F. Sonya and Bitwise OR 题目大意: 给出一个长度为 n n n 的数组 a a a,并给出 m m m 次询问以及一个数字 x x x。 每个询问形式如下给出: 1 1 1 i i i y y y :将 a i a_{i} ai​ 位置的值更改为 y…

数据库分库分表的介绍

为什么要分库分表 把存于一个库的数据分散到多个库中,把存于一个表的数据分散到多个表中。如果说读写分离是为了分散数据库读写操作压力,分库分表就是为了分散存储压力,一般情况下,单表数据量到达千万级别,就可以考虑…

基于飞腾平台的Hbase的安装配置

【写在前面】 飞腾开发者平台是基于飞腾自身强大的技术基础和开放能力,聚合行业内优秀资源而打造的。该平台覆盖了操作系统、算法、数据库、安全、平台工具、虚拟化、存储、网络、固件等多个前沿技术领域,包含了应用使能套件、软件仓库、软件支持、软件适…

支持S/MIME证书的邮件客户端有哪些?

S/MIME证书,也叫做邮件安全证书,支持安全/多用途互联网邮件扩展协议(S/MIME协议),是通过加密和数字签名来确保电子邮件的安全性、保密性和完整性的数字证书。GDPR、HIPAA、FDA等多个行业都要求邮件发送方在发送邮件时对…

基于R语言遥感随机森林建模与空间预测;遥感数据处理与特征提取;数据分析与可视化

目录 第一章 理论基础与数据准备【夯实基础】 第二章 随机森林建模与预测【讲解实践】 第三章 实践案例与项目 更多应用 随机森林作为一种集成学习方法,在处理复杂数据分析任务中特别是遥感数据分析中表现出色。通过构建大量的决策树并引入随机性,随…

C++ 特殊类设计以及单例模式

目录 1 不能被拷贝 2 只能在堆上创建对象 3 只能在栈上创建对象 4 禁止在堆上创建对象 5 不能被继承的类 6 单例类 特殊类就是一些有特殊需求的类。 1 不能被拷贝 要设计一个防拷贝的类,C98之前我们只需要将拷贝构造以及拷贝赋值设为私有,同时只声明…

RTX 4070 GDDR6显存曝光:性能与成本的平衡之选

近期,关于NVIDIA RTX 4070新显卡的信息曝光,这款显卡将配备较为缓慢的GDDR6显存,而非更高性能的GDDR6X。这一配置的选择引发了业内的广泛关注,特别是在性能与成本的平衡问题上。 新版RTX 4070 OC 2X的核心特点 **1.显存类型与带…

8B 端侧小模型 | 能力全面对标GPT-4V!单图、多图、视频理解端侧三冠王,这个国产AI开源项目火爆全网

这两天, Github上一个 国产开源AI 项目杀疯了!一开源就登上了 Github Trending 榜前列,一天就获得将近600 star。 这个项目就是国内大模型四小龙之一面壁智能最新大打造的面壁「小钢炮」 MiniCPM-V 2.6 。它再次刷新端侧多模态天花板&#xf…

微分方程求解的三种解析方法:经典时域法(齐次解+特解,零状态+零输入),冲激响应卷积法、传递函数法

经典时域分析方法 以例题的形式对经典时域解法(齐次解特解)进行说明,最后进行总结。考虑如下形式微分方程: y ′ ′ ( t ) 5 y ′ ( t ) 6 y ( t ) 2 f ′ ( t ) 6 f ( t ) y\left( t \right) 5y\left( t \right) 6y\left(…