应用监管器
应用监管器概述
监管器允许您在特定接口或第 2 层虚拟专用网络 (VPN) 上执行简单的流量管制,而无需配置防火墙过滤器。要应用监管器,请包括以下 policer
语句:
policer { arp policer-template-name; input policer-template-name; output policer-template-name; }
您可以在以下层次结构级别包括这些语句:
[edit interfaces interface-name unit logical-unit-number family family]
[edit logical-systems logical-system-name interfaces interface-name unit logical-unit-number family family]
在语句中 family
,协议家族可以是 ccc
、 inet
、 inet6
、 mpls
、 tcc
或 vpls
。
在语句中 arp
,列出接口上接收地址解析协议 (ARP) 数据包时要评估的一个监管器模板的名称。默认情况下,已安装一个 ARP 监管器,该策略在您配置 family inet
了语句的所有以太网接口之间共享。如果您希望对 ARP 数据包进行更严格的监管或更宽松的监管,可以配置特定于接口的监管器并将其应用于接口。就像在层次结构级别配置任何其他监管器一样, [edit firewall policer]
配置 ARP 监管器。如果将此监管器应用于接口,则默认的 ARP 数据包监管器将被覆盖。如果删除此监管器,默认监管器将再次生效。
您可以在一个接口上为每个协议系列配置不同的监管器,为每个系列配置一个输入监管器和一个输出监管器。应用监管器时,可以为家族协议配置系列
ccc
、inet
、inet6
tcc
mpls
、 或vpls
仅配置一个 ARP 监管器。inet
每次引用监管器时,该接口的数据包转发组件上都会安装该监管器的单独副本。如果同时对接口应用监管器和防火墙过滤器,则先评估输入防火墙过滤器,在输出防火墙过滤器之后评估输出监管器。在语句中
input
,列出接口上收到数据包时要评估的一个监管器模板的名称。在语句中output
,列出当数据包在接口上传输时要评估的一个监管器模板的名称。如果订阅者通过跨越多个 FPC 的聚合以太网 (AE) 接口在 MX 系列路由器上终止,则整体订阅者速率可能会超过配置的速率,因为在监管器中配置的限制将单独应用于 AE 捆绑包中的每个接口。因此,例如,如果打算在三成员 AE 接口上配置监管器,则需要配置
bandwidth-limit
中的监管器200m以考虑 AE 中的三个bandwidth-limit
600m接口(即每个接口 200 Mbps,合计 600Mbps)。如果对接口
lo0
应用监管器,它将应用于路由引擎接收或传输的数据包。在 T 系列、M120 和 M320 平台上,如果接口位于同一 FPC 上,则过滤器或监管器不会根据进出接口的流量总和采取行动。
应用聚合监管器
应用聚合监管器
默认情况下,如果对同一逻辑接口上的多个协议家族应用监管器,则监管器会单独限制每个协议家族的流量。例如,同时对 IPv4 和 IPv6 流量应用 50 Mbps 带宽限制的监管器将允许接口接受 50 Mbps 的 IPv4 流量和 50 Mbps 的 IPv6 流量。如果应用聚合监管器,监管器将允许接口仅接收 50 Mbps 的 IPv4 和 IPv6 流量组合。
要配置聚合监管器,请在 logical-interface-policer
层次结构级别添加语句 [edit firewall policer policer-template-name]
:
[edit firewall policer policer-template-name] logical-interface-policer;
要使监管器被视为聚合,必须通过包括 policer
以下语句将其应用于单个逻辑接口上的多个协议家族:
policer { arp policer-template-name; input policer-template-name; output policer-template-name; }
您可以在以下层次结构级别包括这些语句:
[edit interfaces interface-name unit logical-unit-number family family]
[edit logical-systems logical-system-name interfaces interface-name unit logical-unit-number family family]
在语句中 family
,协议家族可以是 ccc
、 inet
、 inet6
、 mpls
、 tcc
或 vpls
。
您不应用监管器的协议族不受监管器的影响。例如,如果将单个逻辑接口配置为接受 MPLS、IPv4 和 IPv6 流量,并且仅将逻辑接口监管器 policer1
应用于 IPv4 和 IPv6 协议系列,MPLS 流量将不受以下条件的约束 policer1
。
如果应用于 policer1
其他逻辑接口,则有两个监管器实例。这意味着,Junos OS 会单独在单独的逻辑接口上监管流量,而不是作为聚合,即使同一逻辑接口监管器应用于同一物理接口端口上的多个逻辑接口也是如此。
示例:应用聚合监管器
配置两个逻辑接口监管器:aggregate_police1
和 aggregate_police2
。适用于 aggregate_police1
在逻辑接口 fe-0/0/0.0
上接收的 IPv4 和 IPv6 流量。适用于 aggregate_police2
在逻辑接口 fe-0/0/0.0 上接收的 CCC 和 MPLS 流量。此配置会使软件仅创建一个实例aggregate_police1
和一个 。aggregate_police2
适用于 aggregate_police1
其他逻辑接口 fe-0/0/0.1
上接收的 IPv4 和 IPv6 流量。此配置会使软件创建一个新实例 aggregate_police1
,其中一个实例适用于单元 0,另一个实例适用于单元 1。
[edit firewall] policer aggregate_police1 { logical-interface-policer; if-exceeding { bandwidth-limit 100m; burst-size-limit 500k; } then { discard; } } policer aggregate_police2 { logical-interface-policer; if-exceeding { bandwidth-limit 10m; burst-size-limit 200k; } then { discard; } } [edit interfaces fe-0/0/0] unit 0 { family inet { policer { input aggregate_police1; } } family inet6 { policer { input aggregate_police1; } } family ccc { policer { input aggregate_police2; } } family mpls { policer { input aggregate_police2; } } } unit 1 { family inet { policer { input aggregate_police1; } } family inet6 { policer { input aggregate_police1; } } }
在增强型智能排队 PIC 上应用分层监管器
在增强型智能排队 PIC 上应用分层监管器
M40e、M120 和 M320 边缘路由器以及带有增强型智能队列 (IQE) PIC 的 T 系列核心路由器支持入口方向的分层监管器,并允许您对接口应用高级和聚合(特优加常规)流量级别的分层监管器。分层监管器在配置的物理接口和数据包转发引擎之间提供交叉功能。
开始之前,有一些常规限制适用于分层监管器:
只能为逻辑接口或物理接口配置一种类型的监管器。例如,对于同一逻辑接口,不允许同一个方向上的分层监管器与常规监管器。
不允许将监管器链接(即将监管器应用于该端口的逻辑接口)。
如果没有 BA 分类,每个接口最多有 64 个监管器,每个 DLCI 提供一个监管器。
物理或逻辑接口上只能应用一种监管器。
监管者应独立于 BA 分类。如果没有 BA 分类,接口上的所有流量将根据配置被视为 EF 或非 EF。借助 BA 分类,一个接口可支持多达 64 个监管器。同样,此处的接口可能是物理接口或逻辑接口(例如,DLCI)。
借助 BA 分类,杂项流量(与任何 BA 分类 DSCP/EXP 位 不匹配 的流量)将被监管为非 EF 流量。不会为此流量安装单独的监管器。
层次监管器概述
分层监管使用两个令牌桶,一个用于聚合(非 EF) 流量,一个用于高级 (EF) 流量。哪些流量是 EF,哪些是非 EF,则由服务等级配置决定。从逻辑上讲,分层监管是通过连接两个监管器来实现的。

在中的 图 1示例中,EF 流量由高级监管器监管,非 EF 流量由聚合监管器监管。这意味着,对于 EF 流量,规格外操作将是为高级监管器配置的不规范操作,但规格内 EF 流量仍将占用来自聚合监管器的令牌。
但 EF 流量永远不会提交到聚合监管器的不规范操作中。此外,如果高级监管器的不规范操作未设置为丢弃,则这些不合规格的数据包不会占用聚合监管器中的令牌。聚合监管器仅对非 EF 流量进行监管。正如您看到的,如果所有令牌都被非 EF 流量占用,然后您收到突发的 EF 流量,聚合监管器令牌桶可能会为负。但是,这将是一个非常短的时间,在一段时间后,它会平均。例如:
高级监管器: 带宽 2 Mbps,OOS 操作:丢弃
聚合监管器: 带宽 10 Mbps,OOS 操作:丢弃
在上述情况下,EF 流量保证为 2 Mbps,非 EF 流量将从 8 Mbps 到 10 Mbps,具体取决于 EF 流量的输入速率。
分层监管特征
分层令牌桶功能包括:
在应用监管器之前,入口流量首先分为 EF 和非 EF 流量:
通过 Q 树查找执行分类
通道编号选择共享令牌桶监管器:
双令牌桶监管器分为两个单桶监管器:
监管器1 — EF 流量
监管器2 — 非 EF 流量
共享令牌桶用于监管流量,如下所示:
监管器1 设置为 EF 速率(例如 2 Mbps)
监管器2 设置为聚合接口监管速率(例如 10 Mbps)。
EF 流量将应用于 Policer1。
如果流量不合格,则允许从 Policer1 和 Policer2 同时传递和递减。
如果流量不规范,则可以丢弃流量,或者使用新的 FC 或丢失优先级进行标记。Policer2 不会对不规范的 EF 流量执行任何操作。
非 EF 流量仅应用于监管器2。
如果流量不合格,则允许它通过并减去监管器2。
如果流量不规范,则将被丢弃或用新的 FC 标记或设置新的丢弃优先级。
在第 2 层将端口速度限制为所需的速率
速率限制 EF 流量
非 EF 流量速率限制
按颜色计算的管制丢弃数
另请参阅
配置分层监管器
要配置分层监管器,请将该 policing-priority
语句应用于适当的转发类,并为聚合级别和高级级别配置分层监管器。有关服务等级的更多信息,请参阅 《Junos OS 路由设备服务等级用户指南》。
只能在 IQE PIC 上托管的 SONET 物理接口上配置分层监管器。仅支持聚合级别和高级级别。
用于分层监管的转发类的 CoS 配置
[edit class-of-service forwarding-classes] class fc1 queue-num 0 priority high policing-priority premium; class fc2 queue-num 1 priority low policing-priority normal; class fc3 queue-num 2 priority low policing-priority normal; class fc4 queue-num 3 priority low policing-priority normal;
有关服务等级配置和语句的详细信息,请参阅 《Junos OS 路由设备服务等级用户指南》。
分层监管器防火墙配置
[edit firewall hierarchical-policer foo] aggregate { if-exceeding { bandwidth-limit 70m; burst-size-limit 1500; } then { discard; } premium { if-exceeding { bandwidth-limit 50m; burst-size-limit 1500; } then { discard; } }
您可以按如下应用分层监管器:
[edit interfaces so-0/1/0 unit 0 layer2-policer] input-hierarchical-policer foo;
您还可以选择在物理端口级别应用监管器,如下所示:
[edit interfaces so-0/1/0 layer2-policer] input-hierarchical-policer foo;
配置单速率双色监管器
您可以按如下配置单速率双色监管器:
[edit firewall policer foo] if-exceeding { bandwidth-limit 50m; burst-size-limit 1500; } then { discard; }
您可以按如下应用监管器:
[edit interfaces so-0/1/0 unit 0 layer2-policer] input-policer foo;
您还可以选择在物理端口级别应用监管器,如下所示:
[edit interfaces so-0/1/0 layer2-policer] input-policer foo;
配置单速率色盲监管器
本节介绍单速率色盲和色彩感知监管器。
您可以按如下配置单速率色盲监管器:
[edit firewall three-color-policer foo] single-rate { color-blind; committed-information-rate 50m; committed-burst-size 1500; excess-burst-size 1500; }
您可以按如下应用单速率色盲监管器:
[edit interfaces so-0/1/0 unit 0 layer2-policer] input-three-color foo;
您可以按如下配置单速率颜色感知监管器:
[edit firewall three-color-policer bar] single-rate { color-aware; committed-information-rate 50m; committed-burst-size 1500; excess-burst-size 1500; }
您可以按如下应用单速率颜色感知监管器:
[edit interfaces so-0/1/0 unit 0 layer2-policer] input-three-color foo;
您还可以选择在物理端口级别应用监管器,如下所示:
[edit interfaces so-0/1/0 layer2-policer] input-three-color bar;
配置双速率三色标记监管器
入口管制使用双速率三色标记 (trTCM) 实现。这是通过双令牌桶 (DTB) 来实现的,该桶将保持两个速率(提交和峰值)。出口静态监管也使用令牌桶。
令牌桶会执行以下入口管制功能:
(1K) trTCM - 双令牌桶(红色、黄色和绿色标记)
监管基于第 2 层数据包大小:
+/- 字节后调整偏移
标记是颜色感知和色盲:
颜色感知需要通过 q-tree 查找设置颜色,具体取决于:
ToS
EXP
可编程标记操作:
颜色(红色、黄色、绿色)
根据颜色和拥塞配置文件丢弃
根据到达渠道编号选择监管器:
通道编号 LUT 生成监管器索引和队列索引
多个通道可以共享同一监管器(LUT 产生相同的监管器索引)
在以下级别支持入口管制和 trTCM:
队列
逻辑接口(ifl/DLCI)
物理接口(如果已)
物理端口(如果为控制器)
逻辑接口、物理接口和端口的任意组合
支持接口速度和每秒比特数百分比
速率限制可应用于入口中的选定队列和出口处预定义队列。令牌桶可在感知色和盲色模式下运行(由 RFC 2698 指定)。
配置不分色 trTCM
[edit firewall three-color-policer foo] two-rate { color-blind; committed-information-rate 50m; committed-burst-size 1500; peak-information-rate 100m; peak-burst-size 3k; }
您可以按如下应用三色双速率色盲监管器:
[edit interfaces so-0/1/0 unit 0 layer2-policer] input-three-color foo;
您还可以选择在物理端口级别应用监管器,如下所示:
[edit interfaces so-0/1/0 layer2-policer] input-three-color foo;
配置颜色感知 trTCM
[edit firewall three-color-policer bar] two-rate { color-aware; committed-information-rate 50m; committed-burst-size 1500; peak-information-rate 100m; peak-burst-size 3k; }
您可以应用三色双速率色彩感知监管器,如下所示:
[edit interfaces so-0/1/0 unit 0 layer2-policer] input-three-color bar;
您还可以选择在物理端口级别应用监管器,如下所示:
[edit interfaces so-0/1/0 layer2-policer] input-three-color bar;