summaryrefslogtreecommitdiff
path: root/docs/configuration/protocols/traffic-engineering.md
blob: 98c7834c3f97a3726816277610f5eb6c06b6833a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
---
myst:
  html_meta:
    description: |
      Traffic Engineering (TE) is a set of techniques for steering traffic
      along paths different from the shortest path computed by the IGP.
    keywords: traffic engineering, te, isis, mpls, srv6, admin-group,
      bandwidth, ted
---

(traffic-engineering)=

# Traffic Engineering

{abbr}`TE (Traffic Engineering)` is a set of techniques for steering traffic
along paths different from the shortest path computed by the
{abbr}`IGP (Interior Gateway Protocol)`.

To enforce these paths, TE typically uses a form of source routing, such as
{abbr}`MPLS (Multiprotocol Label Switching)` labels or
{abbr}`SRv6 (Segment Routing over IPv6)` extension headers, combined with
path constraints, such as administrative groups or bandwidth requirements,
and a method to map traffic to TE paths.

Use the commands below to configure link-level TE attributes (administrative
groups and bandwidth) and enable TE in the IGP (specifically, IS-IS) so this
information is distributed across the network.

## Common link parameters

The following commands define link-level TE attributes that can be advertised
by both IS-IS and OSPF (not supported yet).

```{cfgcmd} set protocols traffic-engineering admin-group \<admin-group-name\> bit-position \<0-31\>

**Configure an administrative group and associate it with a bit position.**

These groups can then be referenced by the per-interface commands below.
```

```{note}
Two administrative groups cannot share the same `bit-position` value.
```

Example:

```none
set protocols traffic-engineering admin-group primary bit-position 0
set protocols traffic-engineering admin-group backup bit-position 1
```

```{cfgcmd} set protocols traffic-engineering interface \<ifname\> admin-group \<admin-group-name\>

**Configure an administrative group on the specified interface.**

You can configure multiple administrative groups on the same interface.
```

Example:

```none
set protocols traffic-engineering interface eth0 admin-group primary
```

```{cfgcmd} set protocols traffic-engineering interface \<ifname\> metric \<1-4294967295\>

**Configure the TE metric for the specified interface (distinct from the
OSPF/ISIS metric).**
```

Example:

```none
set protocols traffic-engineering interface eth0 metric 100
```

```{cfgcmd} set protocols traffic-engineering interface \<ifname\> max-bandwidth \<1-4294967295\>

**Configure the maximum bandwidth, in Mbps, for the specified interface.**
```

Example:

```none
set protocols traffic-engineering interface eth0 max-bandwidth 1000
```

```{cfgcmd} set protocols traffic-engineering interface \<ifname\> max-reservable-bandwidth \<1-4294967295\>

**Configure the maximum reservable bandwidth, in Mbps, for the specified
interface.**
```

Example:

```none
set protocols traffic-engineering interface eth0 max-reservable-bandwidth 800
```

## IS-IS TE configuration

The following commands enable TE for IS-IS.

```{cfgcmd} set protocols isis traffic-engineering enable

**Enable Traffic Engineering for IS-IS.**
```

Example:

```none
set protocols isis traffic-engineering enable
```

```{cfgcmd} set protocols isis traffic-engineering export

**Export the local {abbr}`TED (Traffic Engineering Database)` to other FRR
daemons.**
```

Example:

```none
set protocols isis traffic-engineering export
```

```{cfgcmd} set protocols isis traffic-engineering address \<ipv4-address\>

**Configure the IPv4 address used as the TE Router ID for MPLS-TE.**
```

Example:

```none
set protocols isis traffic-engineering address 198.51.100.1
```