Bump versions to 0.21.8-SNAPSHOT
[bgpcep.git] / docs / bgp / bgp-user-guide-protocol-configuration-loader.rst
1 .. _bgp-user-guide-protocol-configuration-loader:
2
3 BGP Protocol Configuration Loader
4 =================================
5
6 BGP Protocol Configuration Loader allows the user to define the static initial
7 configuration for a BGP protocol instance.
8 This service will detect the creation of new configuration files following the
9 pattern ``protocols-*.xml`` under the path "etc/opendaylight/bgpcep".
10 Once the file is processed, the defined configuration will be available from
11 the configuration Data Store.
12
13 .. note:: If the BGP instance is already present, no update or configuration will be applied.
14
15 **PATH:** ``etc/opendaylight/bgpcep/protocols-config.xml``
16
17 .. code-block:: xml
18
19     <protocols xmlns="http://openconfig.net/yang/network-instance">
20         <protocol>
21             <name>example-bgp-rib</name>
22             <identifier xmlns:x="http://openconfig.net/yang/policy-types">x:BGP</identifier>
23             <bgp xmlns="urn:opendaylight:params:xml:ns:yang:bgp:openconfig-extensions">
24                 <global>
25                     <config>
26                         <router-id>192.0.2.2</router-id>
27                         <as>64496</as>
28                         <!-- if cluster-id is not present, it's value is the same as bgp-id -->
29                         <!-- <route-reflector-cluster-id>192.0.2.3</route-reflector-cluster-id> -->
30                         <!-- <read-only-limit>120</read-only-limit>-->
31                     </config>
32                     <afi-safis>
33                         <afi-safi>
34                             <afi-safi-name xmlns:x="http://openconfig.net/yang/bgp-types">x:IPV4-UNICAST</afi-safi-name>
35                             <!--Advertise N Paths
36                             <receive>true</receive>
37                             <send-max>2</send-max>-->
38                         </afi-safi>
39                         <afi-safi>
40                             <afi-safi-name xmlns:x="http://openconfig.net/yang/bgp-types">x:IPV6-UNICAST</afi-safi-name>
41                         </afi-safi>
42                         <afi-safi>
43                             <afi-safi-name xmlns:x="http://openconfig.net/yang/bgp-types">x:IPV4-LABELLED-UNICAST</afi-safi-name>
44                         </afi-safi>
45                         <afi-safi>
46                             <afi-safi-name xmlns:x="http://openconfig.net/yang/bgp-types">x:IPV6-LABELLED-UNICAST</afi-safi-name>
47                         </afi-safi>
48                         <afi-safi>
49                             <afi-safi-name xmlns:x="http://openconfig.net/yang/bgp-types">x:L3VPN-IPV4-UNICAST</afi-safi-name>
50                         </afi-safi>
51                         <afi-safi>
52                             <afi-safi-name xmlns:x="http://openconfig.net/yang/bgp-types">x:L3VPN-IPV6-UNICAST</afi-safi-name>
53                         </afi-safi>
54                         <afi-safi>
55                             <afi-safi-name xmlns:x="http://openconfig.net/yang/bgp-types">x:L2VPN-EVPN</afi-safi-name>
56                         </afi-safi>
57                         <afi-safi>
58                             <afi-safi-name>LINKSTATE</afi-safi-name>
59                         </afi-safi>
60                         <afi-safi>
61                             <afi-safi-name>IPV4-FLOW</afi-safi-name>
62                         </afi-safi>
63                         <afi-safi>
64                             <afi-safi-name>IPV6-FLOW</afi-safi-name>
65                         </afi-safi>
66                         <afi-safi>
67                             <afi-safi-name>IPV4-L3VPN-FLOW</afi-safi-name>
68                         </afi-safi>
69                         <afi-safi>
70                             <afi-safi-name>IPV6-L3VPN-FLOW</afi-safi-name>
71                         </afi-safi>
72                     </afi-safis>
73                 </global>
74                 <neighbors xmlns="urn:opendaylight:params:xml:ns:yang:bgp:openconfig-extensions">
75                     <neighbor xmlns="urn:opendaylight:params:xml:ns:yang:bgp:openconfig-extensions">
76                         <neighbor-address>192.0.2.1</neighbor-address>
77                         <config>
78                             <peer-type>INTERNAL</peer-type>
79                             <peer-as>64496</peer-as>
80                         </config>
81                         <transport>
82                             <config>
83                                 <remote-port>179</remote-port>
84                                 <passive-mode>true</passive-mode>
85                             </config>
86                         </transport>
87                         <timers>
88                             <config>
89                                 <hold-time>180</hold-time>
90                                 <connect-retry>10</connect-retry>
91                             </config>
92                         </timers>
93                         <route-reflector>
94                             <config>
95                                 <route-reflector-client>false</route-reflector-client>
96                             </config>
97                         </route-reflector>
98                         <afi-safis>
99                             <afi-safi>
100                                 <afi-safi-name xmlns:x="http://openconfig.net/yang/bgp-types">x:IPV4-UNICAST</afi-safi-name>
101                                 <!--Advertise N Paths
102                                 <receive>true</receive>
103                                 <send-max>0</send-max>-->
104                             </afi-safi>
105                             <afi-safi>
106                                 <afi-safi-name xmlns:x="http://openconfig.net/yang/bgp-types">x:IPV6-UNICAST</afi-safi-name>
107                             </afi-safi>
108                             <afi-safi>
109                                 <afi-safi-name xmlns:x="http://openconfig.net/yang/bgp-types">x:IPV4-LABELLED-UNICAST</afi-safi-name>
110                             </afi-safi>
111                             <afi-safi>
112                                 <afi-safi-name xmlns:x="http://openconfig.net/yang/bgp-types">x:IPV6-LABELLED-UNICAST</afi-safi-name>
113                             </afi-safi>
114                             <afi-safi>
115                                 <afi-safi-name xmlns:x="http://openconfig.net/yang/bgp-types">x:L3VPN-IPV4-UNICAST</afi-safi-name>
116                             </afi-safi>
117                             <afi-safi>
118                                 <afi-safi-name xmlns:x="http://openconfig.net/yang/bgp-types">x:L3VPN-IPV6-UNICAST</afi-safi-name>
119                             </afi-safi>
120                             <afi-safi>
121                                 <afi-safi-name xmlns:x="http://openconfig.net/yang/bgp-types">x:L2VPN-EVPN</afi-safi-name>
122                             </afi-safi>
123                             <afi-safi>
124                                 <afi-safi-name>LINKSTATE</afi-safi-name>
125                             </afi-safi>
126                             <afi-safi>
127                                 <afi-safi-name>IPV4-FLOW</afi-safi-name>
128                             </afi-safi>
129                             <afi-safi>
130                                 <afi-safi-name>IPV6-FLOW</afi-safi-name>
131                             </afi-safi>
132                             <afi-safi>
133                                 <afi-safi-name>IPV4-L3VPN-FLOW</afi-safi-name>
134                             </afi-safi>
135                             <afi-safi>
136                                 <afi-safi-name>IPV6-L3VPN-FLOW</afi-safi-name>
137                             </afi-safi>
138                         </afi-safis>
139                     </neighbor>
140                     <neighbor xmlns="urn:opendaylight:params:xml:ns:yang:bgp:openconfig-extensions">
141                         <neighbor-address>192.0.2.6</neighbor-address>
142                         <config>
143                             <peer-group>application-peers</peer-group>
144                         </config>
145                     </neighbor>
146                 </neighbors>
147             </bgp>
148         </protocol>
149     </protocols>
150
151 BGP Configuration Example
152 '''''''''''''''''''''''''
153
154 BGP provides a feature providing a BGP Protocol and Network Topology configuration file example.
155 Once feature is installed defined configuration will be loaded and setup.
156
157 .. code-block:: console
158
159    feature:install odl-bgpcep-bgp-config-example