今回はリンクのColorを考慮したCSPFの計算方法を説明します。
概要
リンクのColorについて
TEには、各リンクにColorと呼ばれる要素を割り当てることが可能です。
ColorはAdministrative Groupとも呼ばれ、32ビットの値で表現されており、各ビットが1つのColorを表現しています。Administrative Groupの値が以下のリンクは、3つのColorが割り当てられていることになります。
OSPF、IS-IS共に、32ビットのColorの情報はAdministrative Group Sub-TLVに格納されます。(上がOSPF、下がIS-ISのフォーマット)
Administrative Groupでは32色しか表現できないため、現在は128色を表現可能な128ビットのExtended Administrative Groupが存在します。
OSPF、IS-IS共に、128ビットのColorの情報はExnteded Administrative Group Sub-TLVに格納されます。(上がOSPF、下がIS-ISのフォーマット)
リンクのColorを考慮したCSPFの計算
リンクのColorを考慮したCSPFの計算方法は3種類存在します。
RED、BLUE、GREENの3色のColorを割り当てたトポロジーを基に、3種類の計算方法を説明します。
Include Any
Include Anyは指定した複数のColorの内、どれか1つのColorを含んでいるリンクのみCSPFのパス計算の対象にします。
Include All
Include Allは指定した複数のColorの内、全てのColorを含んでいるリンクのみCSPFのパス計算の対象にします。
Exclude Any
Exclude Anyは指定した複数のColorの内、どれか1つのColorを含んでいるリンクをCSPFのパス計算の対象外にします。
検証内容と設定
基本設定の内容
R1-R2-R3-R4間でOSPF Area 0を構成します。
OSPFでSR-TEを有効にします。
R1-R2間、R2-R4間、R3-R4間のリンクにColor GREENを割り当てます。
R2-R3間のリンクにColor BLUEを割り当てます。
R1でLoopback Interfaceの1.1.1.1/32にPrefix SIDとして20101を割り当てます。
R2で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を割り当てます。
R1で3.3.3.3/32へのパスをCSPFを使用して計算します。パス計算の際はColor GREENが割り当てられたリンクのみ使用します。
初期設定
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
!
router ospf 1
distribute link-state
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
!
!
!
segment-routing
traffic-eng
interface GigabitEthernet0/0/0/0
affinity
name GREEN
!
!
policy SR-TE_POLICY
color 1 end-point ipv4 3.3.3.3
autoroute
include all
!
candidate-paths
preference 10
dynamic
!
!
!
!
affinity-map
name GREEN bit-position 0
name BLUE bit-position 1
interface Loopback0
ipv4 address 2.2.2.2 255.255.255.255
!
interface GigabitEthernet0/0/0/0
ipv4 address 10.1.1.2 255.255.255.0
!
interface GigabitEthernet0/0/0/1
ipv4 address 10.2.2.2 255.255.255.0
!
interface GigabitEthernet0/0/0/2
ipv4 address 10.3.3.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
!
interface GigabitEthernet0/0/0/2
network point-to-point
!
!
!
segment-routing
traffic-eng
interface GigabitEthernet0/0/0/0
affinity
name GREEN
!
!
interface GigabitEthernet0/0/0/1
affinity
name BLUE
!
!
interface GigabitEthernet0/0/0/2
affinity
name GREEN
!
!
affinity-map
name GREEN bit-position 0
name BLUE bit-position 1
interface Loopback0
ipv4 address 3.3.3.3 255.255.255.255
!
interface GigabitEthernet0/0/0/0
ipv4 address 10.2.2.3 255.255.255.0
!
interface GigabitEthernet0/0/0/1
ipv4 address 10.4.4.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
!
!
!
segment-routing
traffic-eng
interface GigabitEthernet0/0/0/0
affinity
name BLUE
!
!
interface GigabitEthernet0/0/0/1
affinity
name GREEN
!
!
affinity-map
name GREEN bit-position 0
name BLUE bit-position 1
interface Loopback0
ipv4 address 4.4.4.4 255.255.255.255
!
interface GigabitEthernet0/0/0/0
ipv4 address 10.3.3.4 255.255.255.0
!
interface GigabitEthernet0/0/0/1
ipv4 address 10.4.4.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
!
segment-routing
traffic-eng
interface GigabitEthernet0/0/0/0
affinity
name GREEN
!
!
interface GigabitEthernet0/0/0/1
affinity
name GREEN
!
!
affinity-map
name GREEN bit-position 0
name BLUE bit-position 1
設定と状態の確認
Colorの設定の確認
最初に、affinity-mapコマンド配下でname <color-name> bit-position <0-31>コマンドを使用して、Administrative Group、または、Extended Administrative Groupの各ビットのColorを定義します。今回は、0ビット目をGREEN、1ビット目をBLUEとして定義します。
次に、name <color-name>コマンドを使用して、インタフェースにColorを割り当てます。
segment-routing
traffic-eng
interface GigabitEthernet0/0/0/0
affinity
name GREEN
!
!
interface GigabitEthernet0/0/0/1
affinity
name BLUE
!
!
interface GigabitEthernet0/0/0/2
affinity
name GREEN
!
!
affinity-map
name GREEN bit-position 0
name BLUE bit-position 1
SR-TE Policyの設定の確認
CSPF実施時のColorの制約条件はconstraintsコマンド配下で設定します。今回はInclude Anyの条件でColor GREENを指定します。
segment-routing
traffic-eng
policy SR-TE_POLICY
color 1 end-point ipv4 3.3.3.3
autoroute
include all
!
candidate-paths
preference 10
dynamic
constraints
affinity
include-any
name GREEN
TE LSAの確認
R2が生成したR3向けのインタフェースに関するTE LSAを見ると、ColorとしてBLUEが割り当てられている、つまり、1ビット目がセットされていることが確認できます。
RP/0/RP0/CPU0:R1#show ospf database opaque-area 1.0.0.8 adv-router 2.2.2.2
OSPF Router with ID (1.1.1.1) (Process ID 1)
Type-10 Opaque Link Area Link States (Area 0)
LS age: 633
Options: (No TOS-capability, DC)
LS Type: Opaque Area Link
Link State ID: 1.0.0.8
Opaque Type: 1
Opaque ID: 8
Advertising Router: 2.2.2.2
LS Seq Number: 80000010
Checksum: 0xb12b
Length: 204
Link connected to Point-to-Point network
Link ID : 3.3.3.3
(all bandwidths in bytes/sec)
Interface Address : 10.2.2.2
Neighbor Address : 10.2.2.3
Admin Metric : 1
Maximum bandwidth : 125000000
Maximum reservable bandwidth global: 0
Number of Priority : 8
Priority 0 : 0 Priority 1 : 0
Priority 2 : 0 Priority 3 : 0
Priority 4 : 0 Priority 5 : 0
Priority 6 : 0 Priority 7 : 0
Affinity Bit : 0x2
IGP Metric : 1
Extended Administrative Group : Length: 8
EAG[0]: 0x2
EAG[1]: 0
EAG[2]: 0
EAG[3]: 0
EAG[4]: 0
EAG[5]: 0
EAG[6]: 0
EAG[7]: 0
Number of Links : 1
以下はR2が生成したR3向けのインタフェースに関するTE LSAのキャプチャになります。ColorとしてBLUEが割り当てられている、つまり、1ビット目がセットされていることが確認できます。
SR-TE DBの確認
SR-TE DBを確認すると、各リンクにColorが割り当てられていることが確認できます。
RP/0/RP0/CPU0:R2#show segment-routing traffic-eng ipv4 topology traffic-eng 2.2.2.2
SR-TE topology database
-----------------------
Node 2
TE router ID: 2.2.2.2
OSPF router ID: 2.2.2.2 area ID: 0
Prefix SID:
Prefix 2.2.2.2, label 20201 (regular), flags: N:1, R:0, P:0, V:0, E:0, L:0
Link[0]: local address 10.1.1.2, remote address 10.1.1.1
Local node:
OSPF router ID: 2.2.2.2 area ID: 0
Remote node:
TE router ID: 1.1.1.1
OSPF router ID: 1.1.1.1 area ID: 0
Metric: IGP 1, TE 1, Latency 1 microseconds
Bandwidth: Total link 125000000, Reservable 0
Admin-groups: 0x00000001
Admin-groups-detail: GREEN(0)
Adj SID: 24000 (unprotected)
Link[1]: local address 10.2.2.2, remote address 10.2.2.3
Local node:
OSPF router ID: 2.2.2.2 area ID: 0
Remote node:
TE router ID: 3.3.3.3
OSPF router ID: 3.3.3.3 area ID: 0
Metric: IGP 1, TE 1, Latency 1 microseconds
Bandwidth: Total link 125000000, Reservable 0
Admin-groups: 0x00000002
Admin-groups-detail: BLUE(1)
Adj SID: 24001 (unprotected)
Link[2]: local address 10.3.3.2, remote address 10.3.3.4
Local node:
OSPF router ID: 2.2.2.2 area ID: 0
Remote node:
TE router ID: 4.4.4.4
OSPF router ID: 4.4.4.4 area ID: 0
Metric: IGP 1, TE 1, Latency 1 microseconds
Bandwidth: Total link 125000000, Reservable 0
Admin-groups: 0x00000001
Admin-groups-detail: GREEN(0)
Adj SID: 24002 (unprotected)
SR-TE Policyの確認
Color GREENのリンクのみをパス計算の対象にしていることが確認できます。
RP/0/RP0/CPU0:R1#show segment-routing traffic-eng policy
SR-TE policy database
---------------------
Color: 1, End-point: 3.3.3.3
Name: srte_c_1_ep_3.3.3.3
Status:
Admin: up Operational: up for 02:24:02 (since Jun 16 19:39:41.823)
Candidate-paths:
Preference: 10 (configuration) (active)
Name: SR-TE_POLICY
Requested BSID: dynamic
Constraints:
Affinity:
include-any:
GREEN
Maximum SID Depth: 10
Dynamic (valid)
Metric Type: TE, Path Accumulated Metric: 3
20401 [Prefix-SID, 4.4.4.4]
20301 [Prefix-SID, 3.3.3.3]
Attributes:
Binding SID: 24009
Forward Class: Not Configured
Steering labeled-services disabled: no
Steering BGP disabled: no
IPv6 caps enable: yes
疎通確認
R1の1.1.1.1からR3の3.3.3.3へTracerouteを実施します。
R1はSID 20401、20301をパケットに付加してR2に転送していることが確認できます。
RP/0/RP0/CPU0:R1#traceroute 3.3.3.3 source 1.1.1.1
Type escape sequence to abort.
Tracing the route to 3.3.3.3
1 10.1.1.2 [MPLS: Labels 20401/20301 Exp 0] 59 msec 56 msec 45 msec
2 10.3.3.4 [MPLS: Label 20301 Exp 0] 69 msec 59 msec 59 msec
3 10.4.4.3 60 msec * 56 msec
コメント