示例:配置严格优先级队列
此示例说明了如何配置严格优先级队列并防止其他队列的不足。
要求
开始之前,请查看如何创建和配置转发类。请参阅 转发等级概述。
概述
此示例将创建 BA 分类器,根据数据包的 IP 优先级对信息流进行分类。分类器将 IP 优先级值 101 定义为语音信息流,000 作为数据流量。您可将转发类优先级队列 0 分配给语音信息流,并将队列 1 作为数据信息流。随后,可以将调度器图配置为 corp-map,将语音时间表配置为语音-sched。
随后,您可将语音信息流时间表的优先级设置为严格-高,而对于数据流量时间表,则设置为严格-低。将 BA 分类器应用于输入接口 ge-0/0/0,然后应用调度器图至输出接口 e1-1/0/0。然后配置两个称为"语音丢弃"和"语音多余"的策略程序。您可为语音丢弃管理程序以及语音多余 Policer 设置突发大小限制和带宽限制。然后,您将创建一个防火墙过滤器,其中包含新的策略程序,然后将策略程序添加到术语中。
最后,将过滤器应用于输出接口 e1-1/0/1,将 IP 地址设置为 203.0.113.1/24。
配置
配置 BA 分类器
CLI快速配置
要快速配置示例的此部分,请复制以下命令,将其粘贴到文本文件中,删除所有换行符,更改详细信息,以匹配网络配置,将命令复制并粘贴到 层次结构级别的 CLI 中,然后从配置模式进入 。 [edit]
commit
set class-of-service classifiers inet-precedence corp-traffic forwarding-class voice-class loss-priority low code-points 101 set class-of-service classifiers inet-precedence corp-traffic forwarding-class data-class loss-priority high code-points 000
逐步过程
要配置 BA 分类器,
创建 BA 分类器,并设置语音信息流 IP 优先级值。
[edit] user@host# edit class-of-service classifiers inet-precedence corp-traffic forwarding-class voice-class loss-priority low user@host# set code-points 101
创建 BA 分类器,并设置数据流量的 IP 优先级值。
[edit] user@host# edit class-of-service classifiers inet-precedence corp-traffic forwarding-class data-class loss-priority high user@host# set code-points 000
结果
在配置模式下,输入 命令以确认 show class-of-service
您的配置。如果输出未显示预期的配置,请重复此示例中的配置说明进行更正。
[edit]
user@host# show class-of-service
classifiers {
inet-precedence corp-traffic {
forwarding-class voice-class {
loss-priority low code-points 101;
}
forwarding-class data-class {
loss-priority high code-points 000;
}
}
}
如果完成设备配置,请从配置 commit
模式输入 。
配置转发类
CLI快速配置
要快速配置示例的此部分,请复制以下命令,将其粘贴到文本文件中,删除所有换行符,更改详细信息,以匹配网络配置,将命令复制并粘贴到 层次结构级别的 CLI 中,然后从配置模式进入 。 [edit]
commit
set class-of-service forwarding-classes queue 0 voice-class set class-of-service forwarding-classes queue 1 data-class
逐步过程
要配置转发类:
为语音信息流分配优先级队列。
[edit] user@host# set class-of-service forwarding-classes queue 0 voice-class
为数据信息流分配优先级队列。
[edit] user@host# set class-of-service forwarding-classes queue 1 data-class
结果
在配置模式下,输入 命令以确认 show class-of-service
您的配置。如果输出未显示预期的配置,请重复此示例中的配置说明进行更正。
[edit]
user@host# show class-of-service
forwarding-classes {
queue 0 voice-class;
queue 1 data-class;
}
如果完成设备配置,请从配置 commit
模式输入 。
配置调度器图
CLI快速配置
要快速配置示例的此部分,请复制以下命令,将其粘贴到文本文件中,删除所有换行符,更改详细信息,以匹配网络配置,将命令复制并粘贴到 层次结构级别的 CLI 中,然后从配置模式进入 。 [edit]
commit
set class-of-service scheduler-maps corp-map forwarding-class voice-class scheduler voice-sched set class-of-service scheduler-maps corp-map forwarding-class data-class scheduler data-sched
逐步过程
要配置时间表图:
配置时间表图和语音时间表。
[edit] user@host# edit class-of-service scheduler-maps corp-map forwarding-class voice-class user@host# set scheduler voice-sched
配置时间表图和数据时间表。
[edit] user@host# edit class-of-service scheduler-maps corp-map forwarding-class data-class user@host# set scheduler data-sched
结果
在配置模式下,输入 命令以确认 show class-of-service
您的配置。如果输出未显示预期的配置,请重复此示例中的配置说明进行更正。
[edit]
user@host# show class-of-service
scheduler-maps {
corp-map {
forwarding-class voice-class scheduler voice-sched;
forwarding-class data-class scheduler data-sched;
}
}
如果完成设备配置,请从配置 commit
模式输入 。
配置调度器
CLI快速配置
要快速配置此示例,请复制以下命令,将其粘贴到文本文件中,删除所有换行符,更改详细信息,以匹配网络配置,将命令复制并粘贴到 层次结构级别的 CLI 中,然后从配置模式进入 。 [edit]
commit
set class-of-service schedulers voice-sched priority strict-high set class-of-service schedulers data-sched priority lowset xxx
逐步过程
要配置时间表:
配置语音信息流时间表并设置优先级。
[edit] user@host# edit class-of-service schedulers voice-sched user@host# set priority strict-high
配置数据流量时间表并设置优先级。
[edit] user@host# edit class-of-service schedulers data-sched user@host# set priority low
结果
在配置模式下,输入 命令以确认 show class-of-service
您的配置。如果输出未显示预期的配置,请重复此示例中的配置说明进行更正。
[edit]
user@host# show class-of-service
schedulers {
voice-sched {
priority strict-high;
}
data-sched {
priority low;
}
}
如果完成设备配置,请从配置 commit
模式输入 。
将 BA 分类器应用于输入接口
CLI快速配置
要快速配置示例的此部分,请复制以下命令,将其粘贴到文本文件中,删除所有换行符,更改详细信息,以匹配网络配置,将命令复制并粘贴到 层次结构级别的 CLI 中,然后从配置模式进入 。 [edit]
commit
set class-of-service interfaces ge-0/0/0 unit 0 classifiers inet-precedence corp-traffic
逐步过程
以下示例要求您在配置层次结构中导航各个级别。有关如何操作的说明,请参阅 CLI 用户指南 中的 在 配置模式下Junos OS CLI 编辑器。
要向输入接口应用 BA 分类器:
配置接口。
[edit] user@host# edit class-of-service interfaces ge-0/0/0 unit 0
将 BA 分类器应用于输入接口。
[edit class-of-service interfaces ge-0/0/0 unit 0] user@host# set classifiers inet-precedence corp-traffic
结果
在配置模式下,输入 命令以确认 show class-of-service interfaces
您的配置。如果输出未显示预期的配置,请重复此示例中的配置说明进行更正。
[edit]
user@host# show class-of-service interfaces
ge-0/0/0 {
unit 0 {
classifiers {
inet-precedence corp-traffic;
}
}
}
如果完成设备配置,请从配置 commit
模式输入 。
将调度器图应用于输出接口
CLI快速配置
要快速配置示例的此部分,请复制以下命令,将其粘贴到文本文件中,删除所有换行符,更改详细信息,以匹配网络配置,将命令复制并粘贴到 层次结构级别的 CLI 中,然后从配置模式进入 。 [edit]
commit
set class-of-service interfaces e1-1/0/0 unit 0 scheduler-map corp-map
逐步过程
以下示例要求您在配置层次结构中导航各个级别。有关如何操作的说明,请参阅 CLI 用户指南 中的 在 配置模式下Junos OS CLI 编辑器。
要向输出接口应用调度器图:
配置接口。
[edit] user@host# edit class-of-service interfaces e1-1/0/0 unit 0
将调度器图应用于输出接口。
[edit class-of-service interfaces e1-1/0/0 unit 0] user@host# set scheduler-map corp-map
结果
在配置模式下,输入 命令以确认 show class-of-service
您的配置。如果输出未显示预期的配置,请重复此示例中的配置说明进行更正。
[edit]
user@host# show class-of-service
interfaces {
e1-1/0/0 {
unit 0 {
scheduler-map corp-map;
}
}
}
如果完成设备配置,请从配置 commit
模式输入 。
配置两个策略程序
CLI快速配置
要快速配置示例的此部分,请复制以下命令,将其粘贴到文本文件中,删除所有换行符,更改详细信息,以匹配网络配置,将命令复制并粘贴到 层次结构级别的 CLI 中,然后从配置模式进入 。 [edit]
commit
set firewall policer voice-drop if-exceeding burst-size-limit 200000 bandwidth-limit 2000000 set firewall policer voice-drop then discard set firewall policer voice-excess if-exceeding burst-size-limit 200000 bandwidth-limit 1000000 set firewall policer voice-excess then out-of-profile set firewall filter voice-term term 01 from forwarding-class voice-class set firewall filter voice-term term 01 then policer voice-drop next term set firewall filter voice-term term 02 from forwarding-class voice-class set firewall filter voice-term term 02 then policer voice-excess accept
逐步过程
要配置两个策略程序:
配置策略程序语音丢弃。
[edit] user@host# edit firewall policer voice-drop user@host# set if-exceeding burst-size-limit 200000 bandwidth-limit 2000000 user@host# set then discard
配置超额策略程序语音。
[edit] user@host# edit firewall policer voice-excess user@host# set if-exceeding burst-size-limit 200000 bandwidth-limit 1000000 user@host# set then out-of-profile
创建包含新策略的防火墙过滤器。
[edit] user@host# edit firewall filter voice-term term 01 user@host# set from forwarding-class voice-class user@host# set then policer voice-drop next term
将管理器添加到术语中。
[edit] user@host# edit firewall filter voice-term term 02 user@host# set from forwarding-class voice-class user@host# set then policer voice-excess accept
结果
在配置模式下,输入 命令以确认 show firewall
您的配置。如果输出未显示预期的配置,请重复此示例中的配置说明进行更正。
[edit]
user@host# show firewall
policer voice-drop {
if-exceeding {
bandwidth-limit 2m;
burst-size-limit 200k;
}
then discard;
}
policer voice-excess {
if-exceeding {
bandwidth-limit 1m;
burst-size-limit 200k;
}
then out-of-profile;
}
filter voice-term {
term 01 {
from {
forwarding-class voice-class;
}
then {
policer voice-drop;
next term;
}
}
term 02 {
from {
forwarding-class voice-class;
}
then {
policer voice-excess;
accept;
}
}
}
如果完成设备配置,请从配置 commit
模式输入 。
将过滤器应用于输出接口
CLI快速配置
要快速配置示例的此部分,请复制以下命令,将其粘贴到文本文件中,删除所有换行符,更改详细信息,以匹配网络配置,将命令复制并粘贴到 层次结构级别的 CLI 中,然后从配置模式进入 。 [edit]
commit
set interfaces e1-1/0/1 unit 0 family inet filter output voice-term set interfaces e1-1/0/1 unit 0 family inet address 203.0.113.1/24
逐步过程
要向输出接口应用过滤器:
将过滤器应用于接口。
[edit] user@host# edit interfaces e1-1/0/1 unit 0 family inet filter output user@host# set voice-term
设置 IP 地址。
[edit] user@host# set interfaces e1-1/0/1 unit 0 family inet address 203.0.113.1/24
结果
在配置模式下,输入 命令以确认 show interfaces
您的配置。如果输出未显示预期的配置,请重复此示例中的配置说明进行更正。
[edit]
user@host# show interfaces
e1-1/0/1 {
unit 0 {
family inet {
filter {
output voice-term;
}
address 203.0.113.1/24;
}
}
}
如果完成设备配置,请从配置 commit
模式输入 。