LINUX TC:HTB相关源码

HTB是Linux TC模块中的排队队列类型,提供强大的流量控制功能。本文深入源码,探讨HTB的Qdisc_ops注册过程,包括enqueue和dequeue函数的作用,以及如何通过tc filter进行数据包分类和转发。
摘要由CSDN通过智能技术生成

HTBhierarchy token buffer)是linux tctraffic control)模块中的排队队列的一种。它的配置比CBQ要简单.同时实现功能也很强大。下面,就来看看,HTBlinux中的源码。

1、             Qdisc_ops的注册


先从module_init函数看起(遵从fudan_abc的建议)

static int __init htb_module_init(void)

{

       return register_qdisc(&htb_qdisc_ops);

}

上面的code会调用register_qdisc函数,将htb_qdisc_ops注册到系统中,那么htb_qdisc_ops包含了那些内容:

static struct Qdisc_ops htb_qdisc_ops __read_mostly = {

       .cl_ops        =     &htb_class_ops,

       .id          =     "htb",

       .priv_size   =     sizeof(struct htb_sched),

       .enqueue     =     htb_enqueue,

       .dequeue     =     htb_dequeue,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值