在Linux fq_codel中有什么独立的流程?
发布时间:2020-12-13 19:39:25 所属栏目:Linux 来源:网络整理
导读:我正在设置一个概念证明来遏制终端(客户端)的入口流量: eth0 - ifb0 - htb - filter by ip - htb rate - fq_codel+ecn 我有2个源ips为特定程序我想要节流.该程序打开一堆tcp连接(下载,因此进入节流),我想同时限制其使用的完整入口带宽(完成),并在连接到相同
我正在设置一个概念证明来遏制终端(客户端)的入口流量:
eth0 -> ifb0 -> htb -> filter by ip -> htb rate -> fq_codel+ecn 我有2个源ips为特定程序我想要节流.该程序打开一堆tcp连接(下载,因此进入节流),我想同时限制其使用的完整入口带宽(完成),并在连接到相同的IP地址(此问题)之间进行公平的调度. 最后有1个桶,附加费率和1个fq_codel实例. 我有它的工作,但我有一些问题: >确保codel每个协议有单独的队列(tcp vs udp)? 每个互联网研究流程id是“5元组的哈希”,问题是,一个数据包的哪些元素是5元组的一部分?是否包括源端口和目的端口? 解决方法
看起来源端口和目标端口似乎都包含在内,至少默认情况下:
http://lxr.free-electrons.com/source/net/core/flow_dissector.c#L655 655 /** 656 * __skb_get_hash: calculate a flow hash 657 * @skb: sk_buff to calculate flow hash from 658 * 659 * This function calculates a flow hash based on src/dst addresses 660 * and src/dst port numbers. Sets hash in skb to non-zero hash value 661 * on success,zero indicates no valid hash. Also,sets l4_hash in skb 662 * if hash is a canonical 4-tuple hash over transport ports. 663 */ 664 void __skb_get_hash(struct sk_buff *skb) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |