O conjunto de documentação deste produto faz o possível para usar uma linguagem imparcial. Para os fins deste conjunto de documentação, a imparcialidade é definida como uma linguagem que não implica em discriminação baseada em idade, deficiência, gênero, identidade racial, identidade étnica, orientação sexual, status socioeconômico e interseccionalidade. Pode haver exceções na documentação devido à linguagem codificada nas interfaces de usuário do software do produto, linguagem usada com base na documentação de RFP ou linguagem usada por um produto de terceiros referenciado. Saiba mais sobre como a Cisco está usando a linguagem inclusiva.
A Cisco traduziu este documento com a ajuda de tecnologias de tradução automática e humana para oferecer conteúdo de suporte aos seus usuários no seu próprio idioma, independentemente da localização. Observe que mesmo a melhor tradução automática não será tão precisa quanto as realizadas por um tradutor profissional. A Cisco Systems, Inc. não se responsabiliza pela precisão destas traduções e recomenda que o documento original em inglês (link fornecido) seja sempre consultado.
Este documento descreve como o PfRv2 (Performance Routing) controla o tráfego com base na decisão de política de PfRv2. Este documento discute o uso de rotas estáticas e roteamento baseado em políticas em PfRv2.
A Cisco recomenda que você tenha conhecimento básico de roteamento de desempenho (PfR).
Este documento não se restringe a versões de software e hardware específicas.
The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. If your network is live, make sure that you understand the potential impact of any command.
O PfRv2 permite que um administrador de rede configure políticas e roteie o tráfego de acordo com o resultado da política de PfRv2. Há vários modos nos quais o PfRv2 controla o tráfego e depende do protocolo através do qual a rota pai para o prefixo de destino é aprendida. O PfRv2 é capaz de alterar a base de informações de roteamento (RIB) manipulando protocolos de roteamento, injetando rotas estáticas ou através de roteamento dinâmico baseado em políticas.
Este artigo discute o PfRv2 usando rotas estáticas (quando a rota pai é via rota estática) e o PBR (quando a rota pai no RIB é via RIP, OSPF, ISIS etc) para controlar o tráfego.
Este documento referiria a imagem a seguir como uma topologia de exemplo para o restante do documento.
Dispositivos mostrados no diagrama:
R1- Servidor, iniciando o tráfego.
Roteador mestre R3-PfR.
R4 e R5 - Roteador de borda PfR.
Os clientes conectados a R9 e R10 são dispositivos que recebem o tráfego do servidor R1.
Nesta cena, serão configuradas duas listas de aprendizado, uma para o tráfego de aplicativos (APPLICATION-LEARN-LIST) e dados (DATA-LEARN-LIST). Esse cenário usa uma lista de prefixos para definir o tráfego. Uma lista de acesso também pode ser usada para corresponder ao tipo de tráfego, como TCP, UDP, ICMP, etc. DSCP e TOS também podem ser usados para definir o tráfego.
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
Neste cenário, o tráfego está fluindo para os destinos 10.20.20.1 e 10.30.30.1. Abaixo está a aparência da rota pai em R4 e 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
Quando o tráfego flui, o PfRv2 aprende os prefixos de tráfego e o tráfego cai no estado INPOLICY como mostrado abaixo na saída.
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
Como pode ser visto abaixo, o roteador R4 (10.4.4.4) injetou uma rota mais específica 10.20.20.0/24. Essa rota gerada automaticamente é marcada com um valor de tag de 5000. Essa rota mais específica melhora torna R4 como melhor BR para o tráfego que sai para 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
Da mesma forma, um comportamento semelhante pode ser visto em R5 e injeta uma rota mais específica 10.30.30.0/24, além de ter uma marca de 5000. Isso torna R5 um candidato adequado para rotear o tráfego para 10.30.30.0/24. É assim que o PfRv2 prefere que o tráfego seja roteado como mostrado acima em "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
No caso de existirem vários roteadores de borda (como neste caso), essas rotas estáticas geradas automaticamente devem ser redistribuídas manualmente no IGP para que possam alcançar outros roteadores de borda e rotear o tráfego com base na rota mais específica gerada pelo BR selecionado.
Qualquer rota pai que não seja aprendida via BGP, EIGRP ou rota estática é controlada usando o roteamento baseado em política (PBR). O PfRv2 injeta o mapa de rota dinâmico e a lista de acesso para controlar o tráfego. Abaixo está como a rota pai OSPF se parece em R4 e R5.
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
Quando o PfRv2 tem que manipular o fluxo de tráfego através de roteamento baseado em políticas, ele exige uma interface diretamente conectada entre os BRs. Esse link diretamente conectado pode ser uma conexão física ou um túnel GRE. Esse túnel deve ser criado manualmente e configurado como interface interna na definição de borda 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
De acordo com a política definida por PfRv2, ela é lançada com o melhor roteador de saída (BR) para 10.20.20.0/24 e 10.30.30.0/24. Por exemplo, no evento quando o tráfego destinado a 10.20.20.0/24 chega a R5 (10.5.5.5) que não é o BR selecionado, um mapa de rota dinâmico e uma lista de acesso são injetados automaticamente para rotear a política do tráfego para o BR R4 selecionado (10.4.4.4). Os pacotes são roteados por política através da interface de túnel definida anteriormente.
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)