Segment Routing PCE Disjoint Path – Recomputation

今回はDisjoint Pathにおいて、既に計算済みのLSPによって、新しいLSPを構築できない場合の動作について説明します。

 

概要

Disjoint Pathの再計算

例えば、下図の構成で、R5からR8へのLSPを構築している状態で、同じDisjoint Group(Node Type)に所属するR1からR4へのLSPの構築を試みたとします。
R1はPCEにPCRptメッセージを送信し、R1からR4へのLSPの計算を依頼します。しかし、既にR5からR8へのLSPがR2を経由しているため、R1からR4へ通じる経路が存在しません。

 

この際、PCEはR1からR4へのLSPを構築できるように、既に計算済みのR5からR8へのLSPの経路を再計算します。そして、PCEはR5に対して、再計算したLSPの情報を格納したPCUpdメッセージを送信し、LSPを再構築します。

 

その後、PCEはR1に対して、LSPの計算結果を格納したPCUpdメッセージを返信します。

 

検証内容と設定

基本設定の内容

R1-R2-R3-R4-R5-R6-R7間でOSPF Area 0を構成します。
OSPFでSR-TEを有効にします。
R4-R6間のリンクのコストを30に変更します。

R1でLoopback Interfaceの1.1.1.1/32にPrefix SIDとして20101を割り当てます。
R3でLoopback Interfaceの2.2.2.2/32にPrefix SIDとして20201を割り当てます。
R3でLoopback Interfaceの3.3.3.3/32にPrefix SIDとして20301を割り当てます。
R4でLoopback Interfaceの4.4.4.4/32にPrefix SIDとして20401を割り当てます。
R5でLoopback Interfaceの5.5.5.5/32にPrefix SIDとして20501を割り当てます。
R6でLoopback Interfaceの6.6.6.6/32にPrefix SIDとして20601を割り当てます。
R7でLoopback Interfaceの7.7.7.7/32にPrefix SIDとして20701を割り当てます。

R7をPCE、R1とR2をPCCとして動作させます。

 

初期設定


interface Loopback0
 ipv4 address 1.1.1.1 255.255.255.255
!
interface GigabitEthernet0/0/0/0
 ipv4 address 10.1.1.1 255.255.255.0
!
interface GigabitEthernet0/0/0/1
 ipv4 address 10.7.7.1 255.255.255.0
!
router ospf 1
 router-id 1.1.1.1
 segment-routing mpls
 area 0
  mpls traffic-eng
  interface Loopback0
   prefix-sid absolute 20101
  !
  interface GigabitEthernet0/0/0/0
   network point-to-point
  !
  interface GigabitEthernet0/0/0/1
   network point-to-point
  !
 !
!
segment-routing
 traffic-eng
  pcc
   pce address ipv4 7.7.7.7
            


interface Loopback0
 ipv4 address 2.2.2.2 255.255.255.255
!
interface GigabitEthernet0/0/0/0
 ipv4 address 10.2.2.2 255.255.255.0
!
interface GigabitEthernet0/0/0/1
 ipv4 address 10.8.8.2 255.255.255.0
!
router ospf 1
 router-id 2.2.2.2
 segment-routing mpls
 area 0
  mpls traffic-eng
  interface Loopback0
   prefix-sid absolute 20201
  !
  interface GigabitEthernet0/0/0/0
   network point-to-point
  !
  interface GigabitEthernet0/0/0/1
   network point-to-point
  !
 !
!
segment-routing
 traffic-eng
  pcc
   pce address ipv4 7.7.7.7
            


interface Loopback0
 ipv4 address 3.3.3.3 255.255.255.0
!
interface GigabitEthernet0/0/0/0
 ipv4 address 10.1.1.3 255.255.255.0
!
interface GigabitEthernet0/0/0/1
 ipv4 address 10.3.3.3 255.255.255.0
!
interface GigabitEthernet0/0/0/2
 ipv4 address 10.4.4.3 255.255.255.0
!
interface GigabitEthernet0/0/0/3
 ipv4 address 10.5.5.3 255.255.255.0
!
router ospf 1
 router-id 3.3.3.3
 segment-routing mpls
 area 0
  mpls traffic-eng
  interface Loopback0
   prefix-sid absolute 20301
  !
  interface GigabitEthernet0/0/0/0
   network point-to-point
  !
  interface GigabitEthernet0/0/0/1
   network point-to-point
  !
  interface GigabitEthernet0/0/0/2
   network point-to-point
  !
  interface GigabitEthernet0/0/0/3
   network point-to-point
  !
 !
!
segment-routing
 traffic-eng
            


interface Loopback0
 ipv4 address 4.4.4.4 255.255.255.255
!
interface GigabitEthernet0/0/0/0
 ipv4 address 10.2.2.4 255.255.255.0
!
interface GigabitEthernet0/0/0/1
 ipv4 address 10.3.3.4 255.255.255.0
!
interface GigabitEthernet0/0/0/2
 ipv4 address 10.6.6.4 255.255.255.0
!
router ospf 1
 router-id 4.4.4.4
 segment-routing mpls
 area 0
  mpls traffic-eng
  interface Loopback0
   prefix-sid absolute 20401
  !
  interface GigabitEthernet0/0/0/0
   network point-to-point
  !
  interface GigabitEthernet0/0/0/1
   network point-to-point
  !
  interface GigabitEthernet0/0/0/2
   cost 30
   network point-to-point
  !
 !
!
segment-routing
 traffic-eng
            


interface Loopback0
 ipv4 address 5.5.5.5 255.255.255.255
!
interface GigabitEthernet0/0/0/0
 ipv4 address 10.4.4.5 255.255.255.0
!
router ospf 1
 router-id 5.5.5.5
 segment-routing mpls
 area 0
  mpls traffic-eng
  interface Loopback0
   prefix-sid absolute 20501
  !
  interface GigabitEthernet0/0/0/0
   network point-to-point
  !
 !
!
segment-routing
 traffic-eng
            


interface Loopback0
 ipv4 address 6.6.6.6 255.255.255.255
!
interface GigabitEthernet0/0/0/0
 ipv4 address 10.5.5.6 255.255.255.0
!
interface GigabitEthernet0/0/0/1
 ipv4 address 10.6.6.6 255.255.255.0
!
router ospf 1
 router-id 6.6.6.6
 segment-routing mpls
 area 0
  mpls traffic-eng
  interface Loopback0
   prefix-sid absolute 20601
  !
  interface GigabitEthernet0/0/0/0
   network point-to-point
  !
  interface GigabitEthernet0/0/0/1
   cost 30
   network point-to-point
  !
 !
!
segment-routing
 traffic-eng
            


pce
 address ipv4 7.7.7.7
!
interface Loopback0
 ipv4 address 7.7.7.7 255.255.255.255
!
interface GigabitEthernet0/0/0/0
 ipv4 address 10.7.7.7 255.255.255.0
!
interface GigabitEthernet0/0/0/1
 ipv4 address 10.8.8.7 255.255.255.0
!
router ospf 1
 distribute link-state
 router-id 7.7.7.7
 segment-routing mpls
 area 0
  mpls traffic-eng
  interface Loopback0
   prefix-sid absolute 20701
  !
  interface GigabitEthernet0/0/0/0
   network point-to-point
  !
  interface GigabitEthernet0/0/0/1
   network point-to-point
  !
 !
!
segment-routing
 traffic-eng
            

 

R2⇔R6間のLSPを構築

SR-TE Policyの設定

R2でEnd-pointに6.6.6.6を指定したSR-TE Policyを設定し、PCEにLSPの計算を依頼します。また、Node TypeのDisjoint Groupも設定します。

R2

segment-routing
 traffic-eng
  policy SR-TE_POLICY
   color 1 end-point ipv4 6.6.6.6
   autoroute
    include all
   !
   candidate-paths
    preference 10
     dynamic
      pcep
      !
     !
     constraints
      disjoint-path group-id 1 type node
            

 

PCEが計算したLSPの確認

R7が計算したR2のLSPを見ると、R3を経由していることが確認できます。

R7

RP/0/RP0/CPU0:R7#show pce lsp pcc ipv4 2.2.2.2 detail

PCE's tunnel database:
----------------------
PCC 2.2.2.2:

Tunnel Name: cfg_SR-TE_POLICY_discr_10
Color: 1
Interface Name: srte_c_1_ep_6.6.6.6
 LSPs:
  LSP[0]:
   source 2.2.2.2, destination 6.6.6.6, tunnel ID 5, LSP ID 1
   State: Admin up, Operation up
   Setup type: Segment Routing
   Binding SID: 24021
   Maximum SID Depth: 10
   Preference: 10
   Bandwidth: signaled 0 kbps, applied 0 kbps
   PCEP information:
     PLSP-ID 0x5, flags: D:1 S:0 R:0 A:1 O:1 C:0
   LSP Role: Single LSP
   State-sync PCE: None
   PCC: 2.2.2.2
   LSP is subdelegated to: None
   Reported path:
     Metric type: TE, Accumulated Metric 3
      SID[0]: Node, Label 20601, Address 6.6.6.6
   Computed path: (Local PCE)
     Computed Time: Sat Jun 27 22:37:24 UTC 2020 (00:00:03 ago)
     Metric type: TE, Accumulated Metric 3
      SID[0]: Node, Label 20601, Address 6.6.6.6
   Recorded path:
     None
   Disjoint Group Information:
     Type Node-Disjoint, Group 1
            

 

疎通確認

R2の2.2.2.2からR6の6.6.6.6へTracerouteを実施します。

 

R2からR6へのトラフィックがR3を経由していることが確認できます。

R2

RP/0/RP0/CPU0:R2#traceroute 6.6.6.6 source 2.2.2.2

Type escape sequence to abort.
Tracing the route to 6.6.6.6

 1  10.2.2.4 [MPLS: Label 20601 Exp 0] 70 msec  34 msec  134 msec
 2  10.3.3.3 [MPLS: Label 20601 Exp 0] 54 msec  127 msec  162 msec
 3  10.5.5.6 96 msec  *  137 msec
            

 

R2⇔R6間のLSPが構築済みの状態で、R1⇔R5間のLSPを構築

SR-TE Policyの設定

R1でEnd-pointに5.5.5.5を指定したSR-TE Policyを設定し、PCEにLSPの計算を依頼します。また、Node TypeのDisjoint Groupも設定します。

R1

segment-routing
 traffic-eng
  policy SR-TE_POLICY
   color 1 end-point ipv4 5.5.5.5
   autoroute
    include all
   !
   candidate-paths
    preference 10
     dynamic
      pcep
      !
     !
     constraints
      disjoint-path group-id 1 type node
            

 

PCEが計算したLSPの確認

R7が計算したR2のLSPが、R2⇒R4⇒R3⇒R6からR2⇒R4⇒R6に変化していることが確認できます。また、R1のLSPがR3を経由していることが確認できます。

R7

RP/0/RP0/CPU0:R7#show pce lsp pcc ipv4 1.1.1.1 detail

PCE's tunnel database:
----------------------
PCC 1.1.1.1:

Tunnel Name: cfg_SR-TE_POLICY_discr_10
Color: 1
Interface Name: srte_c_1_ep_5.5.5.5
 LSPs:
  LSP[0]:
   source 1.1.1.1, destination 5.5.5.5, tunnel ID 2, LSP ID 1
   State: Admin up, Operation up
   Setup type: Segment Routing
   Binding SID: 24011
   Maximum SID Depth: 10
   Preference: 10
   Bandwidth: signaled 0 kbps, applied 0 kbps
   PCEP information:
     PLSP-ID 0x2, flags: D:1 S:0 R:0 A:1 O:1 C:0
   LSP Role: Exclude LSP
   State-sync PCE: None
   PCC: 1.1.1.1
   LSP is subdelegated to: None
   Reported path:
     Metric type: TE, Accumulated Metric 2
      SID[0]: Node, Label 20501, Address 5.5.5.5
   Computed path: (Local PCE)
     Computed Time: Sat Jun 27 22:17:48 UTC 2020 (00:01:43 ago)
     Metric type: TE, Accumulated Metric 2
      SID[0]: Node, Label 20501, Address 5.5.5.5
   Recorded path:
     None
   Disjoint Group Information:
     Type Node-Disjoint, Group 1
            
R7

RP/0/RP0/CPU0:R7#show pce lsp pcc ipv4 2.2.2.2 detail

PCE's tunnel database:
----------------------
PCC 2.2.2.2:

Tunnel Name: cfg_SR-TE_POLICY_discr_10
Color: 1
Interface Name: srte_c_1_ep_6.6.6.6
 LSPs:
  LSP[0]:
   source 2.2.2.2, destination 6.6.6.6, tunnel ID 2, LSP ID 2
   State: Admin up, Operation up
   Setup type: Segment Routing
   Binding SID: 24008
   Maximum SID Depth: 10
   Preference: 10
   Bandwidth: signaled 0 kbps, applied 0 kbps
   PCEP information:
     PLSP-ID 0x2, flags: D:1 S:0 R:0 A:1 O:1 C:0
   LSP Role: Disjoint LSP
   State-sync PCE: None
   PCC: 2.2.2.2
   LSP is subdelegated to: None
   Reported path:
     Metric type: TE, Accumulated Metric 31
      SID[0]: Node, Label 20401, Address 4.4.4.4
      SID[1]: Adj, Label 24002, Address: local 10.6.6.4 remote 10.6.6.6
   Computed path: (Local PCE)
     Computed Time: Sat Jun 27 22:17:48 UTC 2020 (00:01:54 ago)
     Metric type: TE, Accumulated Metric 31
      SID[0]: Node, Label 20401, Address 4.4.4.4
      SID[1]: Adj, Label 24002, Address: local 10.6.6.4 remote 10.6.6.6
   Recorded path:
     None
   Disjoint Group Information:
     Type Node-Disjoint, Group 1
            

 

疎通確認

R1の1.1.1.1からR5の5.5.5.5へTracerouteを実施します。

 

R1からR5へのトラフィックがR3を経由していることが確認できます。

R1

RP/0/RP0/CPU0:R1#traceroute 5.5.5.5 source 1.1.1.1

Type escape sequence to abort.
Tracing the route to 5.5.5.5

 1  10.1.1.3 [MPLS: Label 20501 Exp 0] 116 msec  127 msec  104 msec
 2  10.3.3.4 [MPLS: Label 20501 Exp 0] 100 msec  96 msec  87 msec
 3  10.6.6.5 100 msec  *  123 msec
            

 

R2の2.2.2.2からR6の6.6.6.6へTracerouteを実施します。

 

R2からR6へのトラフィックがR3を経由していないことが確認できます。確認できます。

R2

RP/0/RP0/CPU0:R2#traceroute 6.6.6.6 source 2.2.2.2

Type escape sequence to abort.
Tracing the route to 6.6.6.6

 1  10.2.2.4 [MPLS: Label 24002 Exp 0] 25 msec  38 msec  60 msec
 2  10.6.6.6 38 msec  *  60 msec
            

コメント

タイトルとURLをコピーしました