使用流量监管控制网络访问概述
IP 流量的拥塞管理
流量监管(也称为 速率限制)是网络访问安全的重要组成部分,旨在阻止拒绝服务 (DoS) 攻击。流量监管使您能够控制接口上发送或接收的 IP 流量的最大速率,还可以将网络流量划分为多个优先级(也称为 服务等级)。监管器定义一组流量速率限制,并设置不符合配置限制的信息流的后果。流量流中不符合流量限制的数据包将被丢弃或标记为不同的转发类或数据包丢失优先级 (PLP) 级别。
除了配置为对聚合流量进行速率限制的监管器(在物理接口上配置的所有协议家族和逻辑接口)之外,您可以将监管器应用于 逻辑接口上第 2 层或第 3 层流量中的所有 IP 数据包。
除了配置为基于物理接口介质速率进行速率限制的监管器外,您可以使用无状态 防火墙过滤器将监管器应用于逻辑接口上第 3 层流量流中的特定 IP 数据包。
您可以将监管器应用于入站或出站接口流量。应用于入站流量的监管器通过丢弃不需要通过网络路由的流量来帮助节省资源。丢弃入站流量还有助于阻止拒绝服务 (DoS) 攻击。应用于出站流量的监管器控制使用的带宽。
流量监管器基于每个 PIC 进行实例化。当一个本地策略决策功能 (L-PDF) 订阅者的流量分布在 AMS 组中的多个多服务 PIC 上时,流量监管不起作用。
流量限制
Junos OS 监管器使用 令牌桶算法 对接口上的平均传输或接收流量速率实施限制,同时根据配置的带宽限制和配置的突发大小允许流量突发达到最大值。令牌桶算法比 泄漏桶算法 提供了更大的灵活性,因为您可以在开始丢弃数据包之前允许指定的流量突发,或者应用数据包输出队列优先级或数据包丢弃优先级等惩罚。
在令牌桶模型中,桶表示监管器的速率限制功能。代币以固定速率添加到存储桶中,但一旦达到存储桶的指定深度,之后分配的令牌将无法存储和使用。每个令牌代表一定数量的位的“信用”,存储桶中的令牌被“兑现”,以便能够在接口上传输或接收流量。当存储桶中存在足够的令牌时,流量将继续不受限制。否则,数据包可能会被丢弃,或者重新标记较低的转发等级和/或较高的数据包丢失优先级 (PLP) 级别。
将令牌添加到存储桶的速率表示给定服务级别允许的最高平均传输或接收速率(以位/秒为单位)。您将此最高平均流量速率指定为监管器的 带宽限制 。如果流量到达率(或每秒固定比特数)过高,以至于存储桶中的某个时候没有足够的令牌,则流量不再符合流量限制。在流量相对较低的期间(以低于令牌到达速率的平均速率到达或离开接口的流量),未使用的令牌会累积在存储桶中。
存储桶的深度(以字节为单位)控制允许的背靠背突发量。您将此系数指定为监管器的 突发大小限制 。第二个限制通过限制给定时间间隔内传输突发中允许的字节数来影响平均传输或接收速率。超过当前突发大小限制的突发将被丢弃,直到有足够的令牌可用来允许突发继续进行。
图 1: 网络流量和突发速率如上图所示,UPC 条形码是线路上流量的良好传真;接口正在传输(以全速率突发),或者没有。黑线表示数据传输周期,空白表示令牌桶可以补充的静默期。
根据所使用的监管器类型,监管信息流中超过定义限制的数据包可能会隐式设置为更高的 PLP 级别、分配给配置的转发类或设置为配置的 PLP 级别(或两者),或者干脆丢弃。如果数据包遇到下游拥塞,则与具有 medium-low
、 或 high
PLP 级别的数据包相比,具有 low
PLP medium-high
级别的数据包被丢弃的可能性较小。
交通颜色标记
根据配置的特定流量限制集,监管器将流量识别为属于两个或三个类别之一,这些类别类似于用于控制汽车流量的交通信号灯的颜色。
单速率双色 — 双色标记监管器(未经限定使用时称为“监管器”)计量流量,并根据配置的带宽和突发大小限制将数据包分为两类数据包丢失优先级 (PLP)。您可以以某种方式标记超出带宽和突发大小限制的数据包,或者干脆丢弃它们。
监管器对于在端口(物理接口)级别计量流量最有用。
单速率三色 — 这种类型的监管器在 RFC 2697“ 单速率三色标记”中定义,作为差异服务 (DiffServ) 环境的保证转发 (AF) 每跳行为 (PHB) 分类系统的一部分。这种类型的监管器根据配置的承诺信息速率 (CIR)、承诺突发大小 (CBS) 和超额突发大小 (EBS) 计量流量。流量被标记为属于三个类别之一(绿色、黄色或红色),具体取决于到达的数据包是低于 CBS(绿色)、超过 CBS(黄色)但不是 EBS,还是超过 EBS(红色)。
当服务根据数据包长度而不是峰值到达率构建时,单速率三色监管器最有用。
双速率三色 — 这种类型的监管器在 RFC 2698( 双速率三色标记)中定义,作为差异服务 (DiffServ) 环境的保证转发 (AF) 每跳行为 (PHB) 分类系统的一部分。这种类型的监管器根据配置的 CIR 和峰值信息速率 (PIR) 及其关联的突发大小、CBS 和 峰值突发大小 (PBS) 计量流量。根据到达的数据包是低于 CIR(绿色)、超过 CIR(黄色)但未达到 PIR,还是超过 PIR(红色),将流量标记为属于三个类别之一(绿色、黄色或红色)。
当服务根据到达率(不一定是数据包长度)构建时,双速率三色监管器最有用。
监管器操作有隐式或显式,并且因监管器类型而异。术语 “隐式” 表示 Junos 会自动分配丢失优先级。 表 1 描述了监管器操作。
监管器 |
标记 |
隐式操作 |
可配置操作 |
---|---|---|---|
单速率双色 |
绿色(符合) |
分配低丢失优先级 |
无 |
红色(不合格) |
无 |
分配低或高丢失优先级、分配转发类或丢弃在某些平台上,您可以分配中-低或中-高丢失优先级 |
|
单速率三色 |
绿色(符合) |
分配低丢失优先级 |
无 |
黄色(在 CIR 和 CBS 上方) |
分配中高丢失优先级 |
无 |
|
红色(EBS 上方) |
分配高丢失优先级 |
丢弃 |
|
二率三色 |
绿色(符合) |
分配低丢失优先级 |
无 |
黄色(在 CIR 和 CBS 上方) |
分配中高丢失优先级 |
无 |
|
红色(PIR 和 PBS 上方) |
分配高丢失优先级 |
丢弃 |
转发类和 PLP 级别
数据包的转发类分配和 PLP 级别由 Junos OS 服务等级 (CoS) 功能使用。Junos OS CoS 功能包括一组机制,当尽力而为的流量交付不足时,您可以使用这些机制提供差异化服务。对于承载 IPv4、IPv6 和 MPLS 流量的路由器(和交换机)接口,您可以将 CoS 功能配置为接收进入网络边缘的单个流量,并根据各个数据包的转发类分配和 PLP 级别,在整个网络中提供不同级别的服务(内部转发和输出调度(排队)。
监管器或无状态防火墙过滤器执行的转发类或丢失优先级分配将覆盖所有逻辑接口上的 CoS 默认 IP 优先级分类或显式映射到逻辑接口的任何已配置行为聚合 (BA) 分类器在入口上执行的任何此类分配。
根据 CoS 配置,给定转发类的数据包通过特定的输出队列传输,并且每个输出队列都与 调度程序中定义的传输服务级别相关联。
基于其他 CoS 配置,当输出队列中的数据包遇到拥塞时,丢失优先级值较高的数据包更有可能被随机早期检测 (RED) 算法丢弃。数据包丢失优先级值会影响数据包的调度,而不会影响数据包在流量中的相对顺序。
监管器在流量中的应用
定义并命名监管器后,它将存储为模板。您可以稍后使用相同的监管器名称,以便在每次想要使用它时提供相同的监管器配置。这样就无需多次定义相同的监管器值。
您可以通过以下两种方式之一将监管器应用于流量:
您可以配置标准无状态防火墙过滤器,用于指定
policer policer-name
非终止操作或three-color-policer (single-rate | two-rate) policer-name
非终止操作。将标准过滤器应用于逻辑接口上的输入或输出时,监管器将应用于过滤器特定协议家族中与过滤器配置中指定条件匹配的所有数据包。通过这种应用监管器的方法,您可以在接口上定义特定的流量类,并对每个类应用流量速率限制。
您可以将监管器直接应用于接口,以便流量速率限制应用于该接口上的所有流量,而不考虑协议系列或任何匹配条件。
您可以在队列、逻辑接口或第 2 层 (MAC) 级别配置监管器。出口队列中的数据包仅应用一个监管器,并按以下顺序搜索监管器:
队列级别
逻辑接口级别
第 2 层 (MAC) 级别