在路由器上配置 MPLS 防火墙过滤器和监管器
您可以将 MPLS 防火墙过滤器配置为根据数据包中顶级 MPLS 标签的 EXP 位对数据包进行计数。您还可以为 MPLS LSP 配置监管器。
以下各节讨论 MPLS 防火墙过滤器和监管器:
配置 MPLS 防火墙过滤器
您可以将 MPLS 防火墙过滤器配置为根据数据包中顶级 MPLS 标签的 EXP 位对数据包进行计数。然后,您可以将此过滤器应用于特定接口。您还可以为 MPLS 过滤器配置监管器,以监管(即速率限制)过滤器所连接的接口上的流量。您无法将 MPLS 防火墙过滤器应用于以太网 (fxp0) 或环路 (lo0) 接口。
您可以在层次结构级别为 MPLS 过滤器配置以下匹配标准属性:[edit firewall family mpls filter filter-name term term-name from]
exp
exp-except
这些属性可以接受 0 到 7 范围内的 EXP 位。您可以配置以下选项:
单个 EXP 位,例如
exp 3;
几个 EXP 位,例如
exp 0, 4;
EXP 位的范围,例如
exp [0-5];
如果未指定匹配标准(即,不配置 语句并仅 将语句与 action 关键字一起使用 ),则将计算通过应用过滤器的接口的所有 MPLS 数据包。from
then
count
您还可以在 层次结构级别配置以下任何操作关键字:[edit firewall family mpls filter filter-name term term-name then]
count
accept
discard
next
policer
有关如何配置防火墙过滤器的更多信息,请参阅 《路由策略》、《防火墙过滤器》和《流量监管器用户指南》。https://www.juniper.net/documentation/en_US/junos/information-products/pathway-pages/config-guide-policy/config-guide-policy.html有关如何配置接口的详细信息,请参阅 路由设备的 Junos OS 网络 接口库和 路由设备的 Junos OS 服务接口库。https://www.juniper.net/documentation/en_US/junos/information-products/pathway-pages/config-guide-network-interfaces/network-interfaces.htmlhttps://www.juniper.net/documentation/en_US/junos/information-products/pathway-pages/services-interfaces/index.html
示例:配置 MPLS 防火墙过滤器
以下示例说明了如何配置 MPLS 防火墙过滤器,然后将过滤器应用于接口。此过滤器配置为对 EXP 位设置为 0 或 4 的 MPLS 数据包进行计数。
下面显示了 MPLS 防火墙过滤器的配置:
[edit firewall] family mpls { filter expf { term expt0 { from { exp 0,4; } then { count counter0; accept; } } } }
下面显示了将 MPLS 防火墙过滤器应用于接口的方法:
[edit interfaces] so-0/0/0 { mtu 4474; encapsulation ppp; sonet-options { fcs 32; } unit 0 { point-to-point; family mpls { filter { input expf; output expf; } } } }
MPLS 防火墙过滤器应用于接口的输入和输出(请参阅 前面示例中的和 语句)。input
output
为 LSP 配置监管器
MPLS LSP 管制允许您控制通过特定 LSP 转发的流量。监管有助于确保通过 LSP 转发的流量永远不会超过请求的带宽分配。常规 LSP、配置了 DiffServ 感知流量工程的 LSP 和多类 LSP 支持 LSP 管制。您可以为每个多类 LSP 配置多个监管器。对于常规 LSP,每个 LSP 监管器都应用于遍历 LSP 的所有流量。一旦通过 LSP 的流量总和超过配置的限制,监管器的带宽限制就会生效。
PTX10003 路由器仅支持常规 LSP。
您可以在过滤器中配置多类 LSP 和 DiffServ 感知信息流工程 LSP 监管器。过滤器可以配置为区分不同的类类型,并将相关监管器应用于每个类类型。监管器根据 EXP 位区分类类型。
您可以在过滤器下 配置 LSP 监管器。family any
使用过滤器是因为 监管器应用于进入 LSP 的流量。family any
此流量可能来自不同系列:IPv6、MPLS 等。您无需知道进入 LSP 的流量类型,只要匹配条件适用于所有类型的流量即可。
您只能配置适用于所有类型的流量的匹配条件。以下是 LSP 监管器支持的匹配条件:
forwarding-class
packet-length
interface
interface-set
要在 LSP 上启用监管器,首先需要配置监管过滤器,然后将其包含在 LSP 配置中。有关如何配置监管器的信息,请参阅 《路由策略》、《防火墙过滤器》和《流量监管器用户指南》。https://www.juniper.net/documentation/en_US/junos/information-products/pathway-pages/config-guide-policy/config-guide-policy.html
要为 LSP 配置监管器,请通过在语句中包含选项来指定过滤器:filter
policing
policing { filter filter-name; }
您可以在以下层次结构级别包含该 语句:policing
[edit protocols mpls label-switched-path lsp-name]
[edit protocols mpls static-label-switched-path lsp-name]
[edit logical-systems logical-system-name protocols mpls label-switched-path lsp-name]
[edit logical-systems logical-system-name protocols mpls static-label-switched-path lsp-name]
LSP 监管器限制
配置 MPLS LSP 监管器时,请注意以下限制:
-
LSP 监管器仅支持数据包 LSP。
-
LSP 监管器仅支持单播下一跃点。不支持组播下一跃点。
-
聚合接口不支持 LSP 监管器。
-
LSP 监管器在任何输出滤波器之前运行。
-
来自路由引擎的信息流(例如 ping 信息流)不采用与中转信息流相同的转发路径。无法对此类流量进行监管。
-
LSP 监管器适用于所有 T 系列路由器和具有互联网处理器 II 应用专用集成电路 (ASIC) 的 M 系列路由器。
- 点对多点 LSP 不支持 LSP 监管器。
从 Junos OS 版本 12.2R2 开始,只有在 T 系列路由器上,您才能为要在不同协议系列类型之间共享的特定 LSP 配置 LSP 监管器。为此,您必须在层次结构级别配置逻辑接口监管器语句。logical-interface-policer[edit firewall policer policer-name]
示例:配置 LSP 监管器
以下示例说明如何为 LSP 配置监管过滤器:
[edit firewall] policer police-ct1 { if-exceeding { bandwidth-limit 50m; burst-size-limit 1500; } then { discard; } } policer police-ct0 { if-exceeding { bandwidth-limit 200m; burst-size-limit 1500; } then { discard; } } family any { filter bar { term discard-ct0 { then { policer police-ct0; accept; } } } term discard-ct1 { then { policer police-ct1; accept; } } }
配置自动监管器
通过 LSP 的自动监管,您可以为网络流量提供严格的服务保障。此类保证在流量工程 LSP 的差异化服务环境中特别有用,可为 MPLS 网络上的 ATM 线路提供更好的仿真。有关 LSP 差异化服务的更多信息,请参阅 DiffServ 感知流量工程简介。https://www.juniper.net/documentation/en_US/junos/topics/topic-map/diffserv-aware-traffic-engineering-configuraion.html
针对流量工程 LSP 的差异化服务允许您基于 EXP 位对 MPLS 流量提供差异处理。为了确保这些流量保证,仅仅适当地标记流量是不够的。如果流量遵循拥塞路径,则可能无法满足要求。
LSP 保证沿着有足够的资源来满足要求的路径建立。但是,即使 LSP 是沿着此类路径建立的并且标记正确,也无法保证这些要求,除非您确保发送到 LSP 的流量不超过可用带宽。
可以通过手动配置适当的过滤器并将其应用于配置中的 LSP 来监管 LSP 流量。但是,对于大型部署,配置数千个不同的筛选器很麻烦。配置组也无法解决此问题,因为不同的 LSP 可能具有不同的带宽要求,需要不同的筛选器。要监管大量 LSP 的流量,最好配置自动监管器。
为 LSP 配置自动监管器时,监管器将应用于路由器上配置的所有 LSP。但是,您可以禁用特定 LSP 上的自动管制。
为 DiffServ 感知流量工程 LSP 配置自动监管器时,不支持 GRES。
您无法为承载 CCC 流量的 LSP 配置自动管制。
以下部分介绍如何为 LSP 配置自动监管器:
为 LSP 配置自动监管器
要为标准 LSP(既不是 DiffServ 感知流量工程 LSP,也不是多类 LSP)配置自动监管器,请将语句包含在选项或选项中:auto-policing
class all policer-action
class ct0 policer-action
auto-policing { class all policer-action; class ct0 policer-action; }
您可以在以下层次结构级别包含此语句:
[edit protocols mpls]
[edit logical-systems logical-system-name protocols mpls]
您可以为自动监管器配置以下监管器操作:
drop
—丢弃所有数据包。loss-priority-high
— 将丢包优先级 (PLP) 设置为高。loss-priority-low
- 将 PLP 设置为低。
这些监管器操作适用于所有类型的 LSP。默认监管器操作是不执行任何操作。
LSP 的自动监管器根据为 LSP 配置的带宽量来监管流量。您可以使用层次结构级别的语句配置 LSP 的带宽。bandwidth
[edit protocols mpls label-switched-path lsp-path-name]
如果您在路由器上启用了自动监管器,更改为 LSP 配置的带宽,并提交修订后的配置,则更改不会对活动 LSP 生效。要强制 LSP 使用新的带宽分配,请发出 命令。clear mpls lsp
您无法为遍历聚合接口或多链路点对点协议 (MLPPP) 接口的 LSP 配置自动监管器。
为 DiffServ 感知流量工程 LSP 配置自动监管器
要为 DiffServ 感知流量工程 LSP 和多类 LSP 配置自动监管器,请添加以下 语句:auto-policing
auto-policing { class all policer-action; class ctnumber policer-action; }
您可以在以下层次结构级别包含此语句:
[edit protocols mpls]
[edit logical-systems logical-system-name protocols mpls]
您可以为一个或多个类中的每一个类包括 语句 或语句(您可以为每个类配置不同的监管器操作)。class all policer-action
class ctnumber policer-action
有关可替换 变量的操作的列表,请参见 。policer-action
为 LSP 配置自动监管器 默认监管器操作是不执行任何操作。
您无法为遍历聚合接口或 MLPPP 接口的 LSP 配置自动监管器。
为点对多点 LSP 配置自动监管器
您可以通过将语句包含在选项或选项中,为点对多点 LSP 配置自动监管器。auto-policing
class all policer-action
class ct0 policer-action
您只需在主点对多点 LSP 上配置语句(有关主点对多点 LSP 的更多信息,请参阅配置主点对多点 LSP)。auto-policing
https://www.juniper.net/documentation/en_US/junos/topics/usage-guidelines/mpls-configuring-primary-and-branch-lsps-for-point-to-multipoint-lsps.html 对于点对多点 LSP,无需在子 LSP 上进行其他配置。点对多点自动管制适用于点对多点 LSP 的所有分支。此外,自动管制将应用于与点对多点分支具有相同转发条目的任何本地 VRF 接口。 Junos Trio 芯片组上用于 MPLS 点对多点 LSP 的自动监管器的功能奇偶校验在 Junos OS 11.1R2、11.2R2 和 11.4 版中受支持。
点对多点 LSP 的自动监管器配置与标准 LSP 的自动监管器配置相同。有关更多详细信息,请参阅为 LSP 配置自动监管器。
在 LSP 上禁用自动监管
启用自动管制后,路由器或逻辑系统上的所有 LSP 都会受到影响。要在已启用自动管制的路由器上的特定 LSP 上禁用自动管制,请在选项中包含语句:policing
no-auto-policing
policing no-auto-policing;
您可以在以下层次结构级别包含此语句:
[edit protocols mpls label-switched-path lsp-name]
[edit logical-systems logical-system-name protocols mpls label-switched-path lsp-name]
示例:为 LSP 配置自动监管
为多类 LSP 配置自动管制,为类类型 、 、 和 指定不同的操作。ct0
ct1
ct2
ct3
[edit protocols mpls] diffserv-te { bandwidth-model extended-mam; } auto-policing { class ct1 loss-priority-low; class ct0 loss-priority-high; class ct2 drop; class ct3 loss-priority-low; } traffic-engineering bgp-igp; label-switched-path sample-lsp { to 3.3.3.3; bandwidth { ct0 11; ct1 1; ct2 1; ct3 1; } } interface fxp0.0 { disable; } interface t1-0/5/3.0; interface t1-0/5/4.0;
在 MPLS 标记的 IP 数据包中写入不同的 DSCP 和 EXP 值
您可以有选择地将 MPLS 标记的 IPv4 和 IPv6 数据包的 DiffServ 代码点 (DSCP) 字段设置为 0,而不会影响输出队列分配,并根据配置的重写表(基于转发类)继续设置 MPLS EXP 字段。您可以通过为 MPLS 标记的数据包配置防火墙过滤器来实现此目的。