]> git.puffer.fish Git - matthieu/frr.git/commit
bgpd: Add Long-lived Graceful Restart capability (restarter)
authorDonatas Abraitis <donatas.abraitis@gmail.com>
Mon, 25 Oct 2021 14:23:02 +0000 (17:23 +0300)
committerDonatas Abraitis <donatas.abraitis@gmail.com>
Sun, 31 Oct 2021 18:25:42 +0000 (20:25 +0200)
commit8606be8779ccca71d7490007c4923cd28ee2c561
tree46debaf0dad2b19c2c31d515968c0fb3030785a3
parentcd206022b106a08a0c3eeb9f0780ad589a713e68
bgpd: Add Long-lived Graceful Restart capability (restarter)

Restart Router mode.

FRRouting (Restarter):
```
 bgp long-lived-graceful-restart stale-time 10
 bgp graceful-restart restart-time 1
```

Tested with GoBGP (Helper):
```
    long-lived-graceful-restart: advertised and received
        Local:
    ipv4-unicast, restart time 100000 sec
        Remote:
    ipv4-unicast, restart time 10 sec, forward flag set
```

Logs:

```
{"Key":"192.168.10.123","Reason":"graceful-restart","State":"BGP_FSM_ESTABLISHED","Topic":"Peer","level":"info","msg":"Peer Down","time":"2021-10-25T17:48:36+03:00"}
{"Key":"192.168.10.123","State":"BGP_FSM_IDLE","Topic":"Peer","level":"warning","msg":"graceful restart timer expired","time":"2021-10-25T17:48:37+03:00"}
{"Family":65537,"Key":"192.168.10.123","Topic":"Peer","level":"info","msg":"start LLGR restart timer (10 sec) for ipv4-unicast","time":"2021-10-25T17:48:37+03:00"}
{"Family":65537,"Key":"192.168.10.123","Topic":"Peer","level":"info","msg":"LLGR restart timer (10 sec) for ipv4-unicast expired","time":"2021-10-25T17:48:47+03:00"}

% ./gobgp global rib
   Network              Next Hop             AS_PATH              Age        Attrs
S*>10.0.2.0/24          192.168.10.123       174                  00:12:08   [{Origin: ?} {Med: 0} {Communities: llgr-stale} {Extcomms: [174:1282304808]}]
```

Helper mode will be added with upcoming PRs.

Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
bgpd/bgp_open.c
bgpd/bgp_open.h
bgpd/bgp_vty.c
bgpd/bgpd.c
bgpd/bgpd.h
doc/user/bgp.rst