我正在建立一个概念验证,以限制终端端(客户端)的入站流量:
eth0 -> ifb0 -> htb -> filter by ip -> htb rate -> fq_codel+ecn
我有两个特定程序的源IP地址需要限速。这些程序会打开大量的TCP连接进行下载,因此需要对流入带宽进行限制,并且希望每个IP地址之间的连接有公平调度。
最终设置了一个带有速率限制的桶和一个fq_codel
实例。
虽然已经设置好并运行,但我还有一些疑问:
- codel是否针对每个协议(TCP与UDP)分别设置队列?
- codel是否针对每个源IP地址设置队列?
- codel是否针对每个TCP连接设置队列?
- 我是否需要手动区分/标记流量?
根据互联网研究,流ID是“五元组哈希”,问题在于数据包的哪些元素属于五元组?源端口和目标端口是否都包含在内?