diff options
author | Wataru Ishida <ishida.wataru@lab.ntt.co.jp> | 2016-10-09 07:18:13 -0700 |
---|---|---|
committer | FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> | 2016-10-09 07:18:13 -0700 |
commit | 614746ca1159fe421047df04c5af6f07c38b2e65 (patch) | |
tree | 77e93a40ec38318a96ab3a195fb1baa68372acd2 /docs/sources | |
parent | 6b6f6974fcea37dc006f90dbd2f8d65495048725 (diff) |
*: support long lived graceful restart
Signed-off-by: Wataru Ishida <ishida.wataru@lab.ntt.co.jp>
Diffstat (limited to 'docs/sources')
-rw-r--r-- | docs/sources/configuration.md | 12 | ||||
-rw-r--r-- | docs/sources/graceful-restart.md | 99 |
2 files changed, 110 insertions, 1 deletions
diff --git a/docs/sources/configuration.md b/docs/sources/configuration.md index d383023a..56c14a78 100644 --- a/docs/sources/configuration.md +++ b/docs/sources/configuration.md @@ -63,12 +63,24 @@ [neighbors.route-reflector.config] route-reflector-client = true route-reflector-cluster-id = "192.168.0.1" + [neighbors.graceful-restart.config] + enabled = true + notification-enabled = true + long-lived-enabled = true + # graceful restart restart time + restart-time = 20 [[neighbors.afi-safis]] [neighbors.afi-safis.config] afi-safi-name = "ipv4-unicast" [neighbors.afi-safis.prefix-limit.config] max-prefixes = 1000 shutdown-threshold-pct = 80 + [neighbors.afi-safis.mp-graceful-restart.config] + enabled = true + [neighbors.afi-safis.long-lived-graceful-restart.config] + enabled = true + # long lived graceful restart restart time + restart-time = 100000 [[neighbors.afi-safis]] [neighbors.afi-safis.config] afi-safi-name = "ipv6-unicast" diff --git a/docs/sources/graceful-restart.md b/docs/sources/graceful-restart.md index 6090eaec..5abeecc9 100644 --- a/docs/sources/graceful-restart.md +++ b/docs/sources/graceful-restart.md @@ -1,6 +1,8 @@ # Graceful Restart -This page explains how to configure [Graceful Restart](https://tools.ietf.org/html/rfc4724). +This page explains how to configure [Graceful Restart](https://tools.ietf.org/html/rfc4724), +[Graceful Restart Notification Support](https://tools.ietf.org/html/draft-ietf-idr-bgp-gr-notification-07) and +[Long Lived Graceful Restart](https://tools.ietf.org/html/draft-uttaro-idr-bgp-persistence-02). Graceful Restart has two sides. One is restarting speaker which does restart, the other is receiving speaker (helper speaker) which helps a restarting speaker to do graceful restart. GoBGP supports both roles. @@ -9,6 +11,8 @@ to do graceful restart. GoBGP supports both roles. - [Helper speaker](#helper) - [Restarting speaker](#restarting) +- [Graceful Restart Notification Support](#notification) +- [Long Lived Graceful Restart](#long-lived) ## <a name="helper"> Helper speaker @@ -140,3 +144,96 @@ immediately withdraw all routes which were advertised from `gobgpd`. Also, when `gobgpd` doesn't recovered within `restart-time`, the peers will withdraw all routes. Default value of `restart-time` is equal to `hold-time`. + +## <a name="notification"> Graceful Restart Notification Support + +[RFC4724](https://tools.ietf.org/html/rfc4724) specifies gracful restart procedures are triggered only when +the BGP session between graceful restart capable peers turns down without +a notification message for backward compatibility. +[Graceful Restart Notification Support](https://tools.ietf.org/html/draft-ietf-idr-bgp-gr-notification-07) +expands this to trigger graceful restart procedures also with a notification message. +To turn on this feature, add `notification-enabled = true` to configuration like below. + +```toml +[global.config] + as = 64512 + router-id = "192.168.255.1" + +[[neighbors]] + [neighbors.config] + neighbor-address = "10.0.255.1" + peer-as = 65001 + [neighbors.graceful-restart.config] + enabled = true + notification-enabled = true +``` + +## <a name="long-lived"> Long Lived Graceful Restart + +### Long Lived Graceful Restart Helper Speaker Configuration + +```toml +[global.config] + as = 64512 + router-id = "192.168.255.1" + +[[neighbors]] + [neighbors.config] + neighbor-address = "10.0.255.1" + peer-as = 65001 + [neighbors.graceful-restart.config] + enabled = true + long-lived-enabled = true +``` + +### Long Lived Graceful Restart Restarting Speaker Configuration + +Unlike normal graceful restart, long-lived graceful restart supports +restart-time as per address family. + +```toml +[global.config] + as = 64512 + router-id = "192.168.255.1" + +[[neighbors]] + [neighbors.config] + neighbor-address = "10.0.255.1" + peer-as = 65001 + [neighbors.graceful-restart.config] + enabled = true + long-lived-enabled = true + [[neighbors.afi-safis]] + [neighbors.afi-safis.config] + afi-safi-name = "ipv4-unicast" + [neighbors.afi-safis.long-lived-graceful-restart.config] + enabled = true + restart-time = 100000 +``` + +### Conbination with normal Graceful Restart + +You can also use long lived graceful restart with normal graceful restart. + +```toml +[global.config] + as = 64512 + router-id = "192.168.255.1" + +[[neighbors]] + [neighbors.config] + neighbor-address = "10.0.255.1" + peer-as = 65001 + [neighbors.graceful-restart.config] + enabled = true + long-lived-enabled = true + restart-time = 120 + [[neighbors.afi-safis]] + [neighbors.afi-safis.config] + afi-safi-name = "ipv4-unicast" + [neighbors.afi-safis.mp-graceful-restart.config] + enabled = true + [neighbors.afi-safis.long-lived-graceful-restart.config] + enabled = true + restart-time = 100000 +``` |