在 Oracle® Solaris 11.2 中管理 IP 服务质量

退出打印视图

更新时间: 2014 年 7 月
 
 

分类器模块

在 Diffserv 模型中,分类器负责将选定的通信流组织到应用不同服务级别的组中。RFC 2475 中定义的分类器最初是为边界路由器设计的。相反,IPQoS 分类器 ipgpc 是为了处理本地网络内部的主机上的通信流而设计的。因此,同时包含 IPQoS 系统和 Diffserv 路由器的网络可以提供更高程度的区分服务。有关技术说明,请参阅 ipgpc(7ipp) 手册页。

ipgpc 分类器具有以下功能:

  1. 选择满足条件的通信流,该条件在启用了 IPQoS 的系统中的 IPQoS 配置文件中指定。

    QoS 策略可以定义各种必须出现在包头中的条件。这些条件称为选定器ipgpc 分类器将这些选定器与 IPQoS 系统接收的包头进行比较,然后,ipgpc 会选择所有匹配的包。

  2. 将包流分(即具有相同特征的网络通信流量),如 IPQoS 配置文件中所定义。

  3. 检查包的区分服务 (differentiated service, DS) 字段中的值,确定是否存在区分服务代码点 (differentiated service codepoint, DSCP)。

    DSCP 的存在与否指示发送者是否使用转发行为标记了传入通信。

  4. 确定 IPQoS 配置文件中针对特定类的包指定的进一步操作

  5. 将包传送到 IPQoS 配置文件指定的下一个 IPQoS 模块中,或者将包返回到网络流中

有关分类器的概述,请参阅分类器 (ipgpc) 概述。有关在 IPQoS 配置文件中调用分类器的信息,请参阅IPQoS 配置文件

IPQoS 选择器

ipgpc 分类器支持多种可在 IPQoS 配置文件的 filter 子句中使用的选定器。定义过滤器时,应始终使用成功检索特定类的通信所需的最少选定器数目。您所定义的过滤器的数目会影响 IPQoS 性能。

下表列出了可用于 ipgpc 的选择器。

表 6-1  IPQoS 分类器的过滤选定器
选定器
参数
选定的信息
saddr
IP 地址号。
源地址。
daddr
IP 地址号。
目标地址。
sport
端口号或服务名,如 /etc/services 中所定义。
传出通信类的源端口。
dport
端口号或服务名,如 /etc/services 中所定义。
要将通信类送达的目标端口。
protocol
协议编号或协议名称,如 /etc/protocols 中所定义。
此通信类要使用的协议。
dsfield
值为 0 至 63 的 DS 代码点 (DS codepoint, DSCP)。
DSCP 用于定义要对包应用的任何转发行为。如果指定了此参数,则还必须指定 dsfield_mask 参数。
dsfield_mask
值为 0 至 255 的位掩码。
dsfield 选择器一起使用。dsfield_mask 将应用于 dsfield 选择器以确定要匹配的位。
if_name
接口名称。
用于特定类的传入或传出通信的接口。
user
要选择的 UNIX 用户 ID 号或用户名。如果包中没有用户 ID 或用户名,则使用缺省值 1。
提供给应用程序的用户 ID。
projid
要选择的项目 ID 号。
提供给应用程序的项目 ID。
priority
优先级编号。最低优先级为 0。
提供给此类包的优先级。优先级用于对同类过滤器的重要性进行排序。
direction
可能的值是:
IPQoS 计算机上包流的传输方向。
LOCAL_IN
将本地通信输入到 IPQoS 系统。
LOCAL_OUT
将本地通信输出到 IPQoS 系统。
FWD_IN
输入要转发的通信。
FWD_OUT
输出要转发的通信。
precedence
优先级值。最高优先级为 0。
用于对具有相同优先级的过滤器进行排序。
ip_version
V4V6
包使用的寻址方案(IPv4 或 IPv6)。