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

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