news 2026/4/16 2:21:14

13、BPF 流量控制分类器详解

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
13、BPF 流量控制分类器详解

BPF 流量控制分类器详解

1. 流量控制概述

流量控制(Traffic Control)是内核数据包调度子系统架构,由机制和排队系统组成,可决定数据包的流动方式和接收情况。其常见用例包括:
- 对特定类型的数据包进行优先级排序。
- 丢弃特定类型的数据包。
- 带宽分配。

当需要在系统中重新分配网络资源时,流量控制是一种有效的方式。为了充分发挥其作用,需要根据要运行的应用程序类型部署特定的流量控制配置。

流量控制提供了一个可编程的分类器 cls_bpf,可用于在调度操作的不同级别进行挂钩,从而读取和更新套接字缓冲区及数据包元数据,实现流量整形、跟踪、预处理等功能。从内核 4.1 开始,cls_bpf 支持 eBPF,这意味着此类程序可以访问 eBPF 映射、支持尾调用、访问 IPv4/IPv6 隧道元数据,并使用 eBPF 提供的帮助函数和实用工具。

与流量控制网络配置交互的工具属于 iproute2 套件,其中包括用于操作网络接口的ip命令和用于操作流量控制配置的tc命令。

2. 相关术语

2.1 排队规则(Queueing Disciplines,qdisc)

排队规则(qdisc)定义了用于将数据包排入接口的调度对象,可分为无类(classless)和有类(classful)两种。默认的 qdisc 是pfifo_fast,它是无类的,将数据包排入三个先进先出(FIFO)队列,并根据优先级进行出队操作。但对于回环(lo)或虚拟以太网设备(veth)等虚拟设

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

GitHub加速终极方案:告别卡顿,畅享极速开发体验

GitHub作为全球开发者必备的代码托管平台,在国内访问时经常遇到页面加载缓慢、图片无法显示等网络问题。通过精心设计的网络优化方案,我们能够彻底解决这些困扰,让GitHub访问变得流畅稳定。🔥 【免费下载链接】github-hosts &…

作者头像 李华
网站建设 2026/4/11 6:37:30

5个实用技巧:轻松掌握JSON对比工具的高效使用方法

5个实用技巧:轻松掌握JSON对比工具的高效使用方法 【免费下载链接】online-json-diff 项目地址: https://gitcode.com/gh_mirrors/on/online-json-diff JSON对比工具是现代开发中不可或缺的利器,能够快速识别数据结构的差异,帮助开发…

作者头像 李华
网站建设 2026/3/26 21:00:41

节点NotReady后容器驱逐时间调整

一、简介 早期k8s版本中,Kubernetes Controller Manager 有一些相关参数,用于控制节点监控和 Pod 驱逐的行为。 --node-monitor-grace-period40s(节点失联后等待多久才标记为不健康) --node-monitor-period30s(Contr…

作者头像 李华
网站建设 2026/4/15 3:21:16

深入浅出窗口看门狗(WWDG):从原理到实战,守护MCU系统稳定运行

在嵌入式系统开发中,“稳定性”是贯穿始终的核心诉求。无论是工业控制中的PLC、汽车电子中的ECU,还是智能家居中的传感器节点,一旦程序出现“跑飞”“死循环”等异常,都可能引发设备故障、数据丢失甚至安全事故。为应对这类问题&a…

作者头像 李华
网站建设 2026/4/15 13:33:03

Qwen2-VL微调终极指南:3步快速上手视觉语言模型训练

Qwen2-VL微调终极指南:3步快速上手视觉语言模型训练 【免费下载链接】Qwen2-VL-Finetune An open-source implementaion for fine-tuning Qwen2-VL and Qwen2.5-VL series by Alibaba Cloud. 项目地址: https://gitcode.com/gh_mirrors/qw/Qwen2-VL-Finetune …

作者头像 李华
网站建设 2026/4/14 23:13:15

XAPK转换实战指南:轻松解决安卓应用安装困扰

XAPK转换实战指南:轻松解决安卓应用安装困扰 【免费下载链接】xapk-to-apk A simple standalone python script that converts .xapk file into a normal universal .apk file 项目地址: https://gitcode.com/gh_mirrors/xa/xapk-to-apk 你是否遇到过下载的安…

作者头像 李华