Revised Error Handling for BGP UPDATE Messages¶
According to RFC4271 a BGP speaker that receives an UPDATE message containing a malformed attribute is required to reset the session over which the offending attribute was received. Revised Error Handling procedures defined in RFC7606 is introducing a ways to avoid negative effects of session restart. This document provides guide to configure specific approach called treat-as-withdraw which is treating malformed UPDATE messages as their withdrawal equivalent.
Configuration¶
Treat-as-withdraw procedures are disabled by default. There are two ways to enable it. One via peer-group to affect all neighbors in that group and one via neighbor.
For neighbor configuration:
URL: /rests/data/openconfig-network-instance:network-instances/network-instance/global-bgp/openconfig-network-instance:protocols/protocol/openconfig-policy-types:BGP,bgp-example/bgp-openconfig-extensions:bgp/neighbors/neighbor=192.0.2.1/error-handling
For peer-group configuration:
URL: /rests/data/openconfig-network-instance:network-instances/network-instance/global-bgp/openconfig-network-instance:protocols/protocol/openconfig-policy-types:BGP,bgp-example/bgp-openconfig-extensions:bgp/peer-groups/peer-group/external-neighbor/error-handling
Method: PUT
Content-Type: application/xml
Request Body:
1<error-handling xmlns="urn:opendaylight:params:xml:ns:yang:bgp:openconfig-extensions">
2 <config>
3 <treat-as-withdraw>true</treat-as-withdraw>
4 </config>
5</error-handling>
@line 3: True to enable treat-as-withdraw procedures, False to disabled it
Content-Type: application/json
Request Body:
1{
2 "bgp-openconfig-extensions:error-handling": {
3 "config": {
4 "treat-as-withdraw": true
5 }
6 }
7}
@line 4: True to enable treat-as-withdraw procedures, False to disabled it
Note
If neighbor Error handling configuration in neighbor ALWAYS supersed peer-group configuration. That means if peer-group have error handling enabled and neighbor disabled, result is disabled error handling.