流量整形介绍
流量整形介绍
功能介绍
FortiGate 通过对网络流量进行带宽限制和优先级排序来提供服务质量(QoS)。流量整形是 FortiGate 用来提供 QoS 的一种技术。流量整形的方法是在流量拥堵期间,将高优先级的流量优先转发。为重要业务流量保证稳定效果,同时对不太重要的流量进行限制。
FortiGate 的 NP6 流量整形可配置为 policing 和 queuing 两种模式。两者的区别如下:
- Policing:当流量超过配置的带宽限制时,流量将被丢弃。
- Quening:当流量超过配置的带宽限制时,流量会延迟传输并存放在队列中,直到带宽释放。如果队列已满,流量会被丢弃。
Policing 和 Quening 模式都可以通过设置带宽限制来确定流量的优先级,并提供带宽保证和最大带宽服务。但实现方式不同,因为 Quening 使用队列,而 Policing 不使用队列:
- 在 Quening 模式下,数据包从接口发送之前,要使用 RED 或 FIFO 等算法将其排入队列。内核根据 HTB 算法对数据包进行去队列,然后再将其发送出去。
- 在 Policing 模式下,如果流量超过了分配的带宽,会被直接丢弃。
配置方法
在 FortiGate 上配置流量整形有 3 种方法。如下列出了 3 种方法及其功能。
重要
如果 3 种方法都配置了,则第 1 种优先于第 2 种,第 2 种优先于第 3 种。
| 方法 | Policing | Quening | |
|---|---|---|---|
| 流量优先级 | 带宽保证保证与最大带宽 | 流量队列 | |
| Traffic shaping profile 流量整形配置文件 | 支持 | 支持,基于出接口带宽的百分比 | 支持 |
| Traffic shaper 流量整形器 | 支持 | 支持,基于速率 | 不支持 |
| Global traffic prioritization 全局流量优先级 | 支持 | 不支持 | 不支持 |
其中“Traffic shaping profile”方式可配置为 Policing 或 Quening 模式。Quening 模式可以在配置流量整形时提供队列相关选项。每种方法的实现方式略有不同,下文主要介绍 Policing 模式的功能和使用方法。
流量优先级
FortiGate 可以将数据包划分为不同的优先级,以便优先处理某些流量,不同的流量整形方法,划分优先级的方法如下:
- Traffic shaping profile(流量整形配置文件):不同的流量可以配置被分到不同的本地 Class,最多可以配置 30 个 Class。每个 Class 的流量可配置为 5 个优先级。
- Traffic shaper(流量整形器):流量优先级可分为 high(2)、medium(3)或 low(4)级别。被带宽保证的流量会自动使用 critical(1)级别。
- Global traffic prioritization(全局流量优先级):根据流量报文 IP 头中携带的 ToS(服务类型)或 DSCP 值,流量优先级分为 high(2)、medium(3)或 low(4)。
带宽保证与最大带宽
配置带宽保证的目的是分配总带宽的一部分优先给特定流量,以保证特定流量优先传输。每种流量整形的带宽保证方法的配置方法和处理方式都不同:
- Traffic shaping profile(流量整形配置文件)应用于设备流量出接口。如上文所属,Traffic shaping profile 通过为不同的流量分配不同的 Class 来区分流量优先级,每个 Class 配置的保证带宽为出接口总带宽(需要配置)的百分比(而不是具体带宽数值),所有 Class 共同使用接口最大配置带宽的 100%(也可小于 100%,但不能大于 100%)。每个 Class 中配置的优先级并不重要,保证带宽配置始终会生效。
- Traffic shaper(流量整形器)对带宽保证没有硬性限制。管理员需要了解分配给所有流量整形器的保证带宽,以免超过出接口的总带宽。被流量整形器带宽保证的流量优先级为 1。如果优先级为 1 的总流量超过了总出口带宽,流量就会被丢弃。
- 配置接口最大带宽限定了出接口可使用的最大带宽。它被配置为流量整形配置文件中外带宽的百分比。它被配置为流量整形器的速率。
配置出接口带宽
流量整形通常是为离开 FortiGate 的出口流量配置的。因此,在所有流量整形配置方法中,都必须定义出接口带宽,以便进行流量优先级排序。在 Traffic shaping profile 中定义保证带宽和最大带宽时,也需要定义出接口带宽。
对于 Traffic shaper,配置出接口带宽不是应用最大带宽限制的必要条件;但对于保证带宽,配置外带宽则是必要条件。流量整形器上保证带宽限制下的流量优先级为 1。如果未配置外带宽,则不会进行流量优先级排序,优先级也毫无意义。
Traffic shaping policy
流量整形配置文件和流量整形器是监控流量的方法。流量整形策略用于将流量映射到流量整形器或将其分配到一个类。 流量整形策略是根据特定 IP 头字段和/或上层标准匹配流量的规则。例如,它可以根据源和目标 IP、服务、应用程序和 URL 类别来匹配流量。一种常见的用例是根据 IP 标头中的 ToS 或 DS(差异化服务)字段匹配流量。这允许从下游设备的流量中读取服务类型或差异化服务(DiffServ)标签,并在 FortiGate 上进行相应的优先级排序。
DSCP matching and DSCP marking
DSCP 匹配和 DSCP 标记可在防火墙整形策略和常规防火墙策略上执行。DSCP 匹配用于匹配入口流量的 DSCP 标记,DSCP 标记用于更改出口流量的 DSCP 标记。
在防火墙整形策略和常规防火墙策略中,使用tos和tos-mask字段执行 DSCP 匹配。使用diffserv-forward和diffserv-reverse字段执行 DSCP 标记。