QoS 介绍

QoS(Quality of Service)即“服务质量”。它是指网络为特定流量提供更高优先服务的同时控制抖动和延迟的能力,并且能够降低数据传输丢包率。当网络过载或拥塞时,QoS 能够确保重要业务流量的正常传输。

QoS 的实现

通常来讲,实现QoS 管理功能的工具包括:
♦ 分类和标记工具
♦ 管制和整形工具
♦ 拥塞管理工具
♦ 拥塞避免工具
下图描绘了QoS 的体系结构。

数据包通过入接口进入系统后,首先会被分类和标记。在这一过程中,系统会通过管制机制丢弃一些数据包。然后,根据标记结果,数据包会被再次分类。系统会通过拥塞管理(Congestion Management)机制和拥塞避免(Congestion Avoidence)机制对数据包进行管理,为数据包排列优先次序并且在发生拥塞时保证高优先级数据包的顺利通过。最后,系统会将经过QoS 管理的数据包通过出接口发送出去。

分类和标记

分类和标记的过程就是识别出需进行不同处理(优先或者区分)的流量的过程。分类和标记是执行QoS 管理的第一步。分类和标记应该在和源主机尽量接近的地方进行。

差分服务代码点 (DSCP) 概述

差分服务代码点 (DSCP) 是 IP 数据包中的一个字段,它能将不同级别的服务指派到网络通讯中。这是通过用 DSCP 代码对网络上的每个数据包作标记并向其分配相应级别的服务来实现的。

DSCP 是“IP 优先”和“服务类型”字段的组合。为了利用只支持“IP 优先”的旧路由器,会使用 DSCP 值,因为 DSCP 值与“IP 优先”字段兼容。详细信息,请参阅 RFC 编辑器网站 上的 RFC 2474。

DSCP 工作原理

已启用服务质量 (QoS) 的程序会通过常规 QoS (GQoS) 应用程序编程接口 (API) 为通讯流请求特定的服务类型。可用的服务类型有:

有保证的服务

有保证的服务提供具有有限(保证最短的)延迟的高质量、可定量保证。

受控加载服务

受控加载服务提供没有有限延迟的高质量、可定量保证。

DSCP 是一个六位字段,包含有一些默认值,如下表所示。相同的“IP 优先”和 IEEE 802.1p 值在不同的列中显示。

服务类型 DSCP IP 优先 IEEE 802.1p

网络控制

30

6

7

保证

28

5

5

受控加载

18

3

3

所有其他通讯

0

0

0

配置QoS

SA 系列安全网关上通过配置QoS Profile,然后将配置好的QoS Profile 应用到接口上来实现QoS 管理。用户可以将多个QoS Profile 应用到一个接口上。通常情况下,配置QoS,需要经过以下三个步骤:

1. 配置Class。
该步骤为流量识别分类的过程。Class 定义设备需要匹配的流量,从而设备可以将流量进行区分。

2. 配置QoS Profile。
QoS Profile 定义了对匹配的流量所做的操作,包括管制、整形、拥塞管理和拥塞避免。

3. 绑定QoS Profile 到接口。
只有将配置好的QoS Profile 绑定到接口上,QoS 功能才能在安全网关上起作用。

配置Class

SA 系列安全网关支持6 种类型的匹配条件:
♦ 应用类型匹配条件
♦ DSCP 值匹配条件
♦ IP 地址范围匹配条件
♦ QoS 标签匹配条件
♦ IP 优先权值匹配条件
♦ 入接口匹配条件

StoneOS 支持最多16 个class。并且,系统提供一个默认class,名为class-default。在进行QoS 管理时,没有匹配到的流量都将进入class-default。class-default 的默认队列是CBWFQ,它的权是接口带宽减去所有被预留的带宽。在进行CBWFQ 计算时,建议用户为class-default 预留25%的带宽,该数值为经过实践证明的最佳预留值。

配置应用类型匹配条件

SA 系列安全网关支持近百种应用类型,例如FTP、SMTP 以及OSFP 等。

配置QoS Profile

QoS Profile 配置了对匹配流量进行的QoS 管理操作。同时,用户还可以通过时间表控制QoS Profile 的生效时间。

在QoS Profile 的Class 配置模式下,用户可以为匹配的流量指定QoS 管理操作,包括:
♦ 指定最小带宽保证
♦ 配置管制功能
♦ 配置整形功能
♦ 配置基于IP 的QoS
♦ 配置IP QoS 优先级
♦ 配置低延迟队列
♦ 配置拥塞避免功能
♦ 设置DSCP 值
♦ 设置IP 优先权值
♦ 配置匹配优先级

配置基于IP 的QoS

基于IP 的QoS 能够对局域网里的每一个IP 进行最大带宽限制。实现基于IP的QoS,QoS Profile 中的所有class 都必须为IP Range 匹配类型。

配置IP QoS 优先级

很多时候,用户的最大带宽是被限制在一个数值内的,此时,如果用户使用迅雷等P2P 工具进行大量下载时,就可能出现打开网页速度异常缓慢或者游戏响应慢的问题。为解决这一问题,SA 系列安全网关引入IP QoS 优先级机制,为每一个IP内部的流量根据应用类型分配不同优先级。高优先级的流量将会得到优先处理。IPQoS 优先级需要与基于IP 的QoS 共同使用,实现限流的同时为重要流量提供高优先级。

系统支持1 到5 共5 个IP QoS 优先级,1 为最高优先级,依次降低,3 是缺省优先级。IP QoS 优先级只在设备内部生效,数据包离开Hillstone 设备后,所标记的IP QoS 优先级将失效。
使用IP QoS 优先级需要对设备进行以下配置:
1. 在接口入方向根据流量应用类型设置IP QoS 优先级。
2. 在接口出方向配置基于IP 的QoS Profile,利用设置的IP QoS 优先级。

绑定QoS Profile 到接口

QoS Profile 配置完成后,只有把它们绑定到接口上,配置的各种QoS 功能才会起效。

弹性QoS

当配置QoS 功能后,不同的IP 地址可获得的最大带宽通常会被限制在一个数值之内,此时,即使接口有闲置带宽,被限制的IP 也不可以使用,造成资源的浪费。针对这一现象,SA 系列安全网关提供弹性QoS 功能,以实现带宽资源的充分利用。默认情况下,系统的弹性QoS 功能是关闭的。

弹性QoS 设置最大和最小两个门限值,缺省最小门限值为75,缺省最大门限值为85。开启弹性QoS 功能后,当出口带宽利用率小于75%时,用户可以使用的实际带宽缓慢的呈线性增加,当带宽利用率到达85%时,用户使用的带宽呈指数减少,直到实际限定的带宽。

多层QoS

SA 系列安全网关的QoS 功能包括应用QoS 和IP QoS 两种,它们是两个独立的数据流控制工具。应用QoS 从全局出发,调度安排经过系统的数据流,让高优先级的数据得到更好更快的服务;IP QoS 从每一个独立的IP 出发,限定每一个IP 的带宽。同时使用这两种QoS,即为多层QoS。配置多层QoS 后,通过系统的流量需要经过两层QoS 控制。

多层QoS 的推荐配置为:在第一层使用应用QoS,在第二层使用IP 限流。流量通过第一层应用QoS 时,重要数据,例如游戏、VoIP,可以被加速,非重要数据,如P2P,会被丢弃或延迟。由此,通过第一层应用QoS 后,整个系统中的流量就具备了优先顺序。所有经过第一层应用QoS 的流量进入第二层IP 限流,实现限流控制。

原创文章如转载,请注明:
转载自醉生梦死的博客
原文地址:http://www.liusuping.com/post/hillstone-qos-jieshao.html