用于管理拥塞和控制服务级别的 Junos OS CoS 组件
任何 CoS 实施都必须通过网络一致地端到端地工作。基于标准、供应商中立的 CoS 实施最能满足这一要求。Junos CoS 功能基于 IETF 差异服务 (DiffServ) 标准,因此可以与其他供应商的 CoS 实现进行互操作。Junos CoS 由许多组件组成,您可以组合和调整这些组件来提供客户所需的服务级别。
DiffServ 规范在 IPv4 和 IPv6 数据包标头中建立一个六位字段,以指示应应用于数据包的服务类。DiffServ 字段中的位值构成 DiffServ 代码点 (DSCP),可由应用程序或支持 DiffServ 的网络边缘上的路由器设置这些代码点。
尽管 DiffServ 等 CoS 方法指定了 DSCP 在数据包标头中的位置和长度,但在内部提供 DiffServ 的路由器机制的实现是特定于供应商的。Junos OS 中的 CoS 功能通过一系列机制进行配置,您可以单独配置这些机制,也可以组合配置这些机制来定义特定的服务产品。
图 1 显示了 Junos CoS 功能的组件,并说明了它们交互的顺序。

您可以配置以下一种或多种 Junos CoS 机制:
-
分类器 — 数据包分类 是指对传入数据包进行检查。此函数将数据包与特定的 CoS 服务级别相关联。在 Junos 中,分类器将传入数据包与转发类和丢包优先级相关联,并根据关联的转发类将数据包分配给输出队列。支持两种常规类型的分类器:
-
行为聚合分类器 — 行为聚合 (BA) 是一种分类方法,可在数据包进入路由设备时对其进行操作。系统将检查数据包标头中的 CoS 值,此单个字段将确定应用于数据包的 CoS 设置。BA 分类器允许您根据差分服务代码点 (DSCP) 值、DSCP IPv6 值、IP 优先级值、MPLS EXP 位和 IEEE 802.1p 值设置数据包的转发类和丢包优先级。默认分类器基于 IP 优先级值。
(您还可以配置 代码点别名 ,以便为代码点位模式分配名称。在配置其他 CoS 组件(如分类器、放置配置文件映射和 重写规则)时,可以使用此名称而不是位模式。
有关 BA 分类器的详细信息 ,请参阅了解行为聚合分类器如何确定可信流量的优先级 。
-
多域流量分类器 — 多域 分类器是对流量进行分类的第二种方法。与行为聚合不同,多域分类器可以检查数据包中的多个字段。多域分类器可以检查的某些字段的示例包括数据包的源地址和目标地址,以及数据包的源端口号和目标端口号。使用多域分类器时,您可以根据 防火墙过滤器 规则设置数据包的转发类和丢包优先级。对于没有有效或可信行为聚合代码点的数据包,通常在网络边缘进行多域分类。
有关多域分类器的详细信息,请参阅 基于多个数据包标头字段为数据包分配服务级别概述 。
-
-
转发类 — 转发类 会影响在数据包传输路由设备时应用于数据包的转发、调度和标记策略。在 DiffServ 架构中称为有序聚合,转发类加上丢失优先级决定了路由器的 CoS 的单跃点行为(DiffServ 中的 PHB)。支持四类转发类:尽力而为、有保证的转发、加速转发和网络控制。支持多达 16 个转发类,因此您可以对数据包进行更精细的分类。例如,可以配置多个类别的加速转发 (EF) 流量:EF、EF1 和 EF2。
有关转发类的更多信息,请参阅 了解转发类如何将类分配给输出队列 。
-
丢包优先级 — 丢包优先级 允许您设置丢弃数据包的优先级。丢失优先级会影响数据包的调度,而不会影响数据包的相对排序。您可以将丢包优先级 (PLP) 位用作拥塞控制策略的一部分。您可以使用丢失优先级设置来识别遇到拥塞的数据包。通常,您会将超过某个服务级别的数据包标记为高丢失优先级。您可以通过配置分类器或监管器来设置丢失优先级。稍后在工作流中使用丢失优先级来选择 RED 使用的丢弃配置文件之一。
有关丢包优先级的详细信息 ,请参阅通过为不同流量流设置丢包优先级来管理拥塞 。
-
转发策略选项 — 这些选项允许您将转发类与下一跃点相关联。转发策略选项还允许您创建分类覆盖,从而将转发类分配给一组前缀。
有关转发策略选项的详细信息,请参阅 转发策略选项概述 。
-
传输调度和速率控制 — 以下参数为您提供了管理流量的各种工具:
-
队列 — 数据包被发送到路由设备上的传出接口后,将排队等待在物理介质上传输。数据包在路由设备上排队的时间取决于传出物理介质的可用性以及使用接口的流量。
-
调度程序 — 单个路由设备接口分配了多个队列来存储数据包。路由设备根据特定的调度方法确定要为哪个队列提供服务。此过程通常涉及确定应先传输哪种类型的数据包。Junos OS 调度程序允许您定义要应用于特定队列进行数据包传输的优先级、带宽、延迟缓冲区大小、速率控制状态和 RED 丢包配置文件。
有关调度器的详细信息,请参阅 调度器如何定义输出队列属性 。
-
流量类监管器 — 监管器 允许您将特定类别的流量限制为指定的带宽和突发大小。超出监管器限制的数据包可以被丢弃(硬管制),或者可以分配到不同的转发类和/或不同的丢失优先级(软管制)。您可以使用可与输入或输出接口相关联的过滤器来定义监管器。
有关监管器的详细信息 ,请参阅使用流量监管控制网络访问概述 。
-
-
重写规则 — 重写规则 在传出数据包中设置相应的 CoS 位。这允许下一个下游路由设备将数据包分类到相应的服务组中。当路由设备位于网络边界,并且必须更改 CoS 值以满足目标对等方的策略时,重写或标记出站数据包会很有用。
通常,当数据包进入网络的 DiffServ 部分时,对传出数据包上的 DSCP 进行一次重写,这可能是因为数据包不是从设置了正确 DSCP 位的客户到达,或者是因为服务提供商希望验证客户是否正确设置了 DSCP。接受 DSCP 并仅根据 DSCP 值对流量进行分类和调度的 CoS 方案会执行行为聚合 (BA) DiffServ 函数,通常不会重写 DSCP。DSCP 重写通常发生在多字段 (MF) DiffServ 方案中。
有关重写规则的更多信息,请参阅 重写数据包标头以确保转发行为 。