diff options
| author | Xiao Liang <shaw.leon@gmail.com> | 2022-09-14 11:13:41 +0800 |
|---|---|---|
| committer | Xiao Liang <shaw.leon@gmail.com> | 2022-09-16 18:26:21 +0800 |
| commit | a783cc05f0870f686785edf0c4ca12fb6036716f (patch) | |
| tree | 6c63f70e1c50b0dde3159b581ac2d7c22182a132 /lib/command_py.c | |
| parent | a05ae6c440131e7ef6db23e9738101495335175b (diff) | |
bgpd: Handle route-refresh request received before EoR
See the BGP message sequence:
R1 R2
| updates |
|------------------>|
| |
| refresh request |
x<------------------|
| |
| updates cont. |
|------------------>|
| |
| end-of-rib |
|------------------>|
| |
When R1 and R2 establish BGP session, R1 begins to send initial updates.
If R2 sends a route-refresh request before EoR, it's silently ignored
by R1, and routes received earlier have no chance to be processed again.
RFC7313 says, "for a BGP speaker that supports the BGP Graceful Restart,
it MUST NOT send a BoRR for an <AFI, SAFI> to a neighbor before it sends
the EoR for the <AFI, SAFI> to the neighbor." But it doesn't forbid
route-refresh request to be sent before receiving EoR.
To handle this scenario, postpone response to refresh request until EoR
is sent.
Signed-off-by: Xiao Liang <shaw.leon@gmail.com>
Diffstat (limited to 'lib/command_py.c')
0 files changed, 0 insertions, 0 deletions
