IPCop 高级 QoS
外观
IPCop 的 QoS 附加组件是流行的 IPCop 防火墙的高级 流量整形 附加组件。由 Markus Hoffmann 维护,作为 GPL/Creative Commons 开源 项目。
目前维护着两种 QoS 包,使用两种不同的数据包调度协议:HTB 和 HTSC。
服务质量 (QoS) 是指构成流量整形的所有不同模块。QoS 试图将所有这些不同的程序和协议整合在一起,以便将时间敏感的网络流量(如 VoIP 和在线游戏)优先于时间不敏感的数据传输(如 P2P 或 FTP 流量)。如果它做得很好,那么您可以在下载/上传大文件的同时进行 VoIP 对话,而不会延迟或出现语音通话中断。
高级 QoS 附加组件有两个版本
- 分层公平服务曲线调度器 (HFSC) – (QoS 2.5 Ipcop 1.4.8)
- 分层令牌桶调度器 (HTB) – (QoS_NG)
- HFSC 手册 – (QoS 2.5 Ipcop 1.4.8)
- HTB 手册 – (QoS_NG)
- 限制不需要的/低优先级流量有两种方法
- 使用第 7 层工具创建指向流量类型的规则,或使用特定端口,然后指定此流量允许的最大带宽。
- 为允许的流量创建规则,并为它们提供最大带宽(或已知数量),然后限制默认规则的带宽,从而限制所有未知流量。
- 最大根带宽通常设置为实际带宽的 90%,以减少本地调制解调器或 ISP 端缓冲数据的影響。问题源于请求的数据可以排队(大量排队)以避免数据流中的间隙。虽然这对于大规模的连续传输有效,但混合数据传输会受到影响,因为它们必须“排队”等待发送,导致网络响应缓慢。
- 端口范围可以输入为 <端口>[空格]-[空格]<端口>。例如:1000 - 2000
- IP 范围可以输入为 CIDR 表示法地址。例如:192.168.1.0/24
- 问:在哪里可以下载 IPCOP 的高级 QoS?
- 答:这里
- 问:QoS 的“最大延迟(毫秒)”到底意味着什么?
- 答
- 问:QoS_NG 的“Maxbust”和“Ceilmaxburst”到底意味着什么?
- 答:Burst : 可以以 ceil 速度突发传输的字节数,超过配置的最大上传速度。应该至少与所有子类的最高突发量一样高
Ceilburst: 可以以“无限”速度突发传输的字节数,换句话说,就是接口可以传输的速度。为了完美地均衡,应该最多等于一个平均数据包。应该至少与所有子类的最高 cburst 一样高。这两个值都可能为空,因为它们将自动计算。
- 问:QoS(HFSC) 还是 QoS_NG(HTB) 更好?
- 答
- 基于 HFSC 的 QoS 应该更适合 VoIP。分层树方法旨在共享分支或类和规则之间的带宽(想象一棵树,树干是全部带宽,每个分支是占用树干带宽的类/规则)。
- 基于 HTB 的 QoS_NG 应该更适合第 7 层(例如 P2P)带宽控制。HTB 背后的理念是数据像水流一样流入“桶”。每个桶只能容纳一定量的数据。这些桶按优先级排队,以接收可用带宽。
- 答
假设
- RED 出站是 eth0,入站是 imq0
- GREEN 是 eth1
- 客户端和服务器位于 GREEN 上
- VPN 连接访问 GREEN 内网上的服务器
- 客户端将产生典型的 Web、FTP 等流量
- VPN 是 RED 上唯一可用的互联网服务
操作
- 创建 RED 根类 199(eth0) 和 299(imq0),最大带宽设置为 115 Kbps
- 创建类 100,优先级 1,最小带宽 50 Kbps,延迟 25ms,最大带宽 115 Kbps
- 创建类 101,优先级 2,最小带宽 50 Kbps,延迟 50ms,最大带宽 115 Kbps
- 创建类 199,优先级 7,最小带宽 1 Kbps,延迟 500ms,最大带宽 100 Kbps
- 将 ACK 优先级分配给类 100
- 创建类 200,优先级 1,最小带宽 50 Kbps,延迟 25ms,最大带宽 115 Kbps
- 创建类 201,优先级 2,最小带宽 50 Kbps,延迟 50ms,最大带宽 115 Kbps
- 创建类 299,优先级 7,最小带宽 1 Kbps,延迟 500ms,最大带宽 100 Kbps
此时,所有流量都将在默认类 199 和 299 上以略低的速度传输。
为了确保 VPN(特别是 OpenVPN)流量获得优先级,应添加以下规则
- 创建一个规则“OpenVPNOut”,接口 eth0,协议 UDP,标记 101,源端口 1194
- 创建一个规则“OpenVPNIn”,接口 imq0,协议 UDP,标记 201,源端口 1194
此方案将使 OpenVPN 流量比默认流量具有更高的优先级,但是由于 ACK 比其他所有流量具有更高的优先级,因此普通流量仍然可以流动。
查看图表应该可以了解流量
- 1:100 将显示来自 GREEN 客户端到互联网连接的 ACK 流量
- 1:101 将显示 VPN 出站流量(端口 1194)
- 1:199 将显示大量出站流量
- 2:200 在此配置中将显示很少,因为该规则未使用
- 2:201 将显示 VPN 入站流量(端口 1194)
- 2:299 将显示大量入站流量
可以通过添加更多规则来进一步对大量流量进行分类。