目录

简介

先决条件

要求

使用的组件

配置

网络图

配置

验证

案例1：父路由通过边界路由器上的静态路由获取

案例2：父路由通过OSPF获取

相关的思科支持社区讨论

简介

本文档介绍PfRv2（性能路由）如何根据PfRv2策略决策控制流量。本文档讨论在PfRv2中使用静态路由和基于策略的路由。

先决条件

要求

思科建议您具备性能路由(PfR)的基本知识。

使用的组件

本文档不限于特定的软件和硬件版本。

本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始（默认）配置。如果您使用的是真实网络，请确保您已经了解所有命令的潜在影响。

配置

PfRv2允许网络管理员根据PfRv2策略结果配置策略并相应地路由流量。PfRv2控制流量有多种模式，它取决于用于获取目的前缀的父路由的协议。PfRv2能够通过操作路由协议、注入静态路由或基于动态策略的路由来更改路由信息库(RIB)。

- 如果父路由通过BGP获取，PfRv2可以使用本地优先级等属性动态控制路由。

- 如果父路由通过EIGRP获知，PfRv2可以在EIGRP拓扑表中插入新路由。

- 如果父路由通过静态路由获取，PfR2会在PfR选定边界路由器(BR)上注入更具体（更好）的路由。

- 如果父路由是通过上述三种机制中的任何一种获知的，则PfRv2使用基于策略的路由(PBR)将流量推送到选定BR上。

本文讨论使用静态路由（当父路由通过静态路由时）和PBR（当RIB中的父路由通过RIP、OSPF、ISIS等时）控制流量的PfRv2。

网络图

本文档将以下图像作为文档其余部分的示例拓扑。

图中所示的设备：

R1 — 服务器，发起流量。

R3- PfR主路由器。

R4和R5- PfR边界路由器。

连接到R9和R10的客户端是从R1服务器接收流量的设备。

配置

在本场景中，将配置两个学习列表，一个用于应用(APPLICATION-LEARN-LIST)和数据(DATA-LEARN-LIST)流量。此方案使用前缀列表定义流量。访问列表也可用于匹配TCP、UDP、ICMP等流量类型。DSCP和TOS也可用于定义流量。

key chain pfr

key 0

key-string cisco

pfr master

policy-rules PFR

!

border 10.4.4.4 key-chain pfr

interface Tunnel0 internal

interface Ethernet1/0 external

interface Ethernet1/2 internal

link-group MPLS

!

border 10.5.5.5 key-chain pfr

interface Tunnel0 internal

interface Ethernet1/3 internal

interface Ethernet1/0 external

link-group INET

!

learn

traffic-class filter access-list DENY-ALL

list seq 10 refname APPLICATION-LEARN-LIST       //Learn-list for application traffic

traffic-class prefix-list APPLICATION

throughput

list seq 20 refname DATA-LEARN-LIST              //Learn-list for data traffic

traffic-class prefix-list DATA

throughput

!

!

pfr-map PFR 10

match pfr learn list APPLICATION-LEARN-LIST

set periodic 90

set delay threshold 25

set mode monitor active

set active-probe echo 10.20.21.1

set probe frequency 5

set link-group MPLS fallback INET

!

pfr-map PFR 20

match pfr learn list DATA-LEARN-LIST

set periodic 90

set delay threshold 25

set mode monitor active

set resolve delay priority 1 variance 10

set active-probe echo 10.30.31.1

set probe frequency 5

set link-group INET fallback MPLS

ip prefix-list DATA

seq 5 permit 10.30.0.0/24

ip prefix-list APPLICATION

seq 5 permit 10.20.0.0/24

验证

案例1：父路由通过边界路由器上的静态路由获取

在此场景中，流量流向目标10.20.20.1和10.30.30.1。以下是R4和R5上父路由的外观。

R4#show ip route

--output suppressed--

S        10.20.0.0/16 [1/0] via 10.0.68.8

S        10.30.0.0/16 [1/0] via 10.0.68.8

R5#show ip route

--output suppressed--

S        10.20.0.0/16 [1/0] via 10.0.57.7

S        10.30.0.0/16 [1/0] via 10.0.57.7

当流量传输时，PfRv2获知流量前缀，流量进入INPOLICY状态，如输出所示。

R3#show pfr master traffic-class

OER Prefix Statistics:

--output suppressed--

DstPrefix           Appl_ID Dscp Prot     SrcPort     DstPort SrcPrefix

Flags             State     Time            CurrBR  CurrI/F Protocol

PasSDly  PasLDly   PasSUn   PasLUn  PasSLos  PasLLos      EBw      IBw

ActSDly  ActLDly   ActSUn   ActLUn  ActSJit  ActPMOS  ActSLos  ActLLos

--------------------------------------------------------------------------------

10.20.20.0/24             N    N    N           N           N N

INPOLICY       31          10.4.4.4 Et1/0           STATIC

N        N        N        N        N        N        N        N

1        2        0        0        N        N        N        N

10.30.30.0/24             N    N    N           N           N N

INPOLICY       30          10.5.5.5 Et1/0           STATIC

N        N        N        N        N        N        N        N

4        2        0        0        N        N        N        N

如下所示，R4(10.4.4.4)路由器注入了更具体的路由10.20.20.0/24。此自动生成的路由会自动标记标记值5000。这种更具体的更好路由使R4成为更好的BR，以处理离开10.20.20.0/24的流量。

R4#show pfr border routes static

Flags: C - Controlled by oer, X - Path is excluded from control,

E - The control is exact, N - The control is non-exact

Flags Network            Parent             Tag

CE    10.20.20.0/24      10.20.0.0/16       5000

XN    10.30.30.0/24

R4#show ip route 10.20.20.0 255.255.255.0

Routing entry for 10.20.20.0/24

Known via "static", distance 1, metric 0

Tag 5000

Redistributing via ospf 100

Routing Descriptor Blocks:

* 10.0.46.6, via Ethernet1/0

Route metric is 0, traffic share count is 1

Route tag 5000

同样，R5上也会出现类似行为，它会注入更具体的路由10.30.30.0/24，其标记为5000。这使R5成为路由10.30.30.0/24流量的合适候选者。这是PfRv2首选路由流量的方式，如上所示，如“show pfr master traffic-class”中所示。

R5#show pfr border routes static

Flags: C - Controlled by oer, X - Path is excluded from control,

E - The control is exact, N - The control is non-exact

Flags Network            Parent             Tag

XN    10.20.20.0/24

CE    10.30.30.0/24      10.30.0.0/16       5000

R5#show ip route 10.30.30.0 255.255.255.0

Routing entry for 10.30.30.0/24

Known via "static", distance 1, metric 0

Tag 5000

Redistributing via ospf 100

Routing Descriptor Blocks:

* 10.0.57.7, via Ethernet1/0

Route metric is 0, traffic share count is 1

Route tag 5000

如果有多个边界路由器（如本例中所示），则这些自动生成的静态路由必须手动重分发到IGP中，以便可以到达其他边界路由器，并且它们可以根据所选BR生成的更具体路由来路由流量。

案例2：父路由通过OSPF获取

任何未通过BGP、EIGRP或静态路由获知的父路由都使用基于策略的路由(PBR)进行控制。 PfRv2注入动态路由映射和访问列表以控制流量。以下是R4和R5上OSPF父路由的外观。

R4#show ip route

--output suppressed--

O E2     10.20.0.0/16 [110/20] via 10.0.46.6, 02:16:35, Ethernet1/0

O E2     10.30.0.0/16 [110/20] via 10.0.46.6, 02:16:35, Ethernet1/0

R5#show ip route

--output suppressed--

O E2     10.20.0.0/16 [110/20] via 10.0.57.7, 02:18:20, Ethernet1/0

O E2     10.30.0.0/16 [110/20] via 10.0.57.7, 02:18:20, Ethernet1/0

当PfRv2必须通过基于策略的路由控制流量时，它需要BR之间直连接口。此直连链路可以是物理连接，也可以是GRE隧道。必须在PfRv2边界定义中手动创建此隧道并将其配置为内部接口。

R4

interface tunnel 0                 // Defining GRE tunnel for policy routing of traffic.

ip add 10.0.45.4

tunnel source 10.0.24.4

tunnel destination 10.0.25.5

R5

interface tunnel 0

ip add 10.0.45.5

tunnel source 10.0.25.5

tunnel destination 10.0.24.4

border 10.4.4.4 key-chain pfr

interface Tunnel0 internal                                   // Packets would be policy routed to selected BR using this Tunnel.

interface Ethernet1/0 external

interface Ethernet1/2 internal

link-group MPLS

!

border 10.5.5.5 key-chain pfr

interface Tunnel0 internal                                  // Packets would be policy routed to selected BR using this Tunnel.

interface Ethernet1/3 internal

interface Ethernet1/0 external

link-group INET

R3#show pfr master traffic-class

OER Prefix Statistics:

--output suppressed--

DstPrefix           Appl_ID Dscp Prot     SrcPort     DstPort SrcPrefix

Flags             State     Time            CurrBR  CurrI/F Protocol

PasSDly  PasLDly   PasSUn   PasLUn  PasSLos  PasLLos      EBw      IBw

ActSDly  ActLDly   ActSUn   ActLUn  ActSJit  ActPMOS  ActSLos  ActLLos

--------------------------------------------------------------------------------

10.20.20.0/24             N    N    N           N           N N

INPOLICY       @8          10.4.4.4 Et1/0           RIB-PBR

N        N        N        N        N        N        N        N

2        1        0        0        N        N        N        N

10.30.30.0/24             N    N    N           N           N N

INPOLICY       82          10.5.5.5 Et1/0           RIB-PBR

N        N        N        N        N        N        N        N

1        1        0        0        N        N        N        N

根据PfRv2定义的策略，它为10.20.20.0/24和10.30.30.0/24提供最佳送出路由器(BR)。例如，当发往10.20.20.0/24的流量到达R5(10.5.5.5)时，动态路由映射和访问列表会自动注入，以策略将流量路由到所选BRr4(10.4.4.4)。 数据包是通过先前定义的隧道接口路由的策略。

R5#show route-map dynamic

route-map OER_INTERNAL_RMAP, permit, sequence 0, identifier 436207617

Match clauses:

ip address (access-lists): oer#1

Set clauses:

ip next-hop 10.0.45.4

interface Tunnel0                      // Tunnel is used to PBR traffic to R4.

Policy routing matches: 314076 packets, 16960104 bytes

R5#show ip access-lists dynamic

Extended IP access list oer#1

1073741823 permit ip any 10.20.20.0 0.0.0.255 (315125 matches)

2147483647 deny ip any any (314955 matches)