news 2026/7/2 4:54:54

【Linux网络】理解tc命令

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【Linux网络】理解tc命令

tc:traffic control,即交通控制。

1.基本工作流程

使用tc命令,需要理解三个Linux内核网络中的概念:

  • qdisc:是Queue Discipline的缩写,中文是队列规则,就是数据包怎么入队,每个网口都有一个总队列。
  • class:子出口,每个出口有自己的具体限制规则。这是逻辑上的出口,只是为了便于说明,也可以叫其他名字。
  • filter:规定了总队列中的哪类数据,进入到哪个子队列。

qdisc 是挂在网卡上的“总调度员”,class 是它手下的“分车道”(各有各的限速),而 filter 就是站在入口的“交警”,根据数据包的IP/端口,把它们指挥进对应的高速公路”出口“。

所以tc命令的作用是识别网络数据流 + 限制网络数据流,可以精确到每一个数据包。

2.tc的五大应用功能

一般用tc命令实现以下五大功能:

  • 流量整形
  • 流量调度
  • 流量策略
  • 流量丢弃
  • 网络模拟

对数据包精准控制正是实现这些功能的核心机理。

2.tc命令底层实现

tc是用户态程序,它需要和内核通信才能实现对网络协议栈的控制。通信方式不是一般的系统调用,而是网络模块特有的Netlink通信方式。

tc 命令 (用户态) → 构建 Netlink 消息 → 通过 socket() 等系统调用发送 → 内核 Netlink 子系统接收 → 内核 TC 子系统执行操作。

这里的关键在于,具体的“队列规则”逻辑完全是在Linux内核中实现的。tc 工具本身不执行任何流量整形或排队,它只是一个“配置下发器”,其真正的威力来自于内核中复杂而高效的 TC 子系统。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/2 4:53:13

云手机技术详解:原理、自动化 API 实战代码与商用选型指南

摘要云手机依托 ARM 虚拟化与云端串流技术,解决本地设备性能不足、多账号挂机、724 小时在线、移动端自动化测试等痛点。本文讲解底层技术逻辑,附上可直接调试的 Python 云设备 API 交互代码,分析行业各类云手机优劣,文末推荐综合…

作者头像 李华
网站建设 2026/7/2 4:53:10

3分钟掌握OFD转PDF:免费开源工具Ofd2Pdf完全指南

3分钟掌握OFD转PDF:免费开源工具Ofd2Pdf完全指南 【免费下载链接】Ofd2Pdf Convert OFD files to PDF files. 项目地址: https://gitcode.com/gh_mirrors/ofd/Ofd2Pdf 还在为无法打开OFD格式的电子发票和公文而烦恼吗?Ofd2Pdf是您解决OFD格式转换…

作者头像 李华
网站建设 2026/7/2 4:47:55

Java毕设项目:基于 SpringBoot 的二次元潮玩交易商城系统的设计与实现 基于 SpringBoot 的手办商品展示与销售系统 (源码+文档,讲解、调试运行,定制等)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

作者头像 李华
网站建设 2026/7/2 4:43:08

Qt项目中DES加解密工具类的实现与集成指南

1. 项目概述与核心价值最近在做一个需要处理本地配置文件的Qt项目,里面有些敏感信息不能明文存储,比如用户的连接凭证。最开始想图省事用个简单的异或或者Base64糊弄一下,但稍微查了下资料就知道这纯属自欺欺人,Base64那叫编码&am…

作者头像 李华
网站建设 2026/7/2 4:36:23

2026年3000元左右的投影仪哪款更好?深度用户懂当贝D7X Pro有多爽

2026年家用投影仪选购门槛越来越高,尤其三千元主流价位,机型五花八门,很多产品存在亮度虚标、色彩失真、无光学变焦、系统广告多等通病。如果预算卡在三千元,想要一台画质能打、好用不踩雷、兼顾观影和日常使用的家用投影&#xf…

作者头像 李华