<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/highlights-dynamic-negotiation-of-bgp-capabilities-ipspace-net-blog-wbb8msr8g" -->

---
title: Highlights: Dynamic Negotiation of BGP Capabilities «...
description: A discussion of the tradeoffs involved in dynamically negotiating BGP capabilities without tearing down sessions. Engineers and RFC authors weigh in on the...
canonical: https://daily.dev/posts/highlights-dynamic-negotiation-of-bgp-capabilities-ipspace-net-blog-wbb8msr8g
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: Highlights: Dynamic Negotiation of BGP Capabilities « ipSpace.net blog | daily.dev
og:description: A discussion of the tradeoffs involved in dynamically negotiating BGP capabilities without tearing down sessions. Engineers and RFC authors weigh in on the...
og:url: https://daily.dev/posts/highlights-dynamic-negotiation-of-bgp-capabilities-ipspace-net-blog-wbb8msr8g
og:image: https://api.daily.dev/og/posts/wBB8MSR8G.png
og:image:alt: Highlights: Dynamic Negotiation of BGP Capabilities « ipSpace.net blog
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Highlights: Dynamic Negotiation of BGP Capabilities « ipSpace.net blog

**[ipSpace.net Blog](https://daily.dev/sources/ipspace)** · 3 min read · 0 upvotes · 0 comments

## Summary

A discussion of the tradeoffs involved in dynamically negotiating BGP capabilities without tearing down sessions. Engineers and RFC authors weigh in on the complexity: RFC5492 handles capability negotiation once per session lifetime, making it dynamic adds significant code complexity and error handling burden. Key examples explored include negotiating address families on demand and enabling BGP Additional Paths mid-session. Workarounds discussed include deploying separate route reflectors per address family, using per-address-family loopback interfaces with distinct IP endpoint pairs, and the long-stalled Multisession BGP draft as a vendor-side solution.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://blog.ipspace.net/2021/12/highlights-dynamic-bgp-capabilities>

## Questions this post answers

### Why does BGP require a session reset to enable new capabilities instead of negotiating them dynamically?

Per RFC5492, BGP capability negotiation happens once during session establishment, keeping the implementation straightforward. Making it dynamic introduces significant complexity — more code, more error-handling paths, and more potential bugs. Since nobody wants bugs in BGP, and new capabilities are rarely introduced outside of maintenance windows anyway, the complexity cost is hard to justify against the benefit of non-disruptive capability changes.

_Network engineers debating BGP upgrade strategies find relevant operational perspectives on daily.dev._

### How can I add a new BGP address family without resetting existing BGP sessions?

Deploying a separate set of route reflectors per address family avoids session resets entirely — adding an address family on a PE router never tears down an existing BGP session. For smaller networks that can't justify dedicated devices per family, per-address-family loopback interfaces can work, but require BGP sessions between distinct pairs of IP addresses on both ends.

_Engineers designing BGP topologies for scale track architecture patterns like this on daily.dev._

---

Tags: [#networking](https://daily.dev/tags/networking), [#bgp](https://daily.dev/tags/bgp)

[View this post on daily.dev](https://daily.dev/posts/highlights-dynamic-negotiation-of-bgp-capabilities-ipspace-net-blog-wbb8msr8g)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"Highlights: Dynamic Negotiation of BGP Capabilities « ipSpace.net blog","url":"https://daily.dev/posts/highlights-dynamic-negotiation-of-bgp-capabilities-ipspace-net-blog-wbb8msr8g","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/highlights-dynamic-negotiation-of-bgp-capabilities-ipspace-net-blog-wbb8msr8g"},"datePublished":"2026-08-11T08:54:31.603Z","dateModified":"2026-08-11T09:10:52.743Z","description":"A discussion of the tradeoffs involved in dynamically negotiating BGP capabilities without tearing down sessions. Engineers and RFC authors weigh in on the...","image":"https://media.daily.dev/image/upload/s--0_ODbtD2--/f_auto/v1722860399/public/Placeholder%2008","thumbnailUrl":"https://media.daily.dev/image/upload/s--0_ODbtD2--/f_auto/v1722860399/public/Placeholder%2008","isAccessibleForFree":true,"articleSection":"ipSpace.net Blog","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Organization","name":"ipSpace.net Blog","logo":"https://media.daily.dev/image/upload/s--xS7E82MT--/f_auto,q_auto/v1786438303/logos/ipspace?_a=BAMAMicg0","url":"https://daily.dev/sources/ipspace"},"commentCount":0,"discussionUrl":"https://daily.dev/posts/highlights-dynamic-negotiation-of-bgp-capabilities-ipspace-net-blog-wbb8msr8g","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":0},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":0}],"keywords":"networking,bgp","timeRequired":"PT3M"}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"ipSpace.net Blog","item":"https://daily.dev/sources/ipspace"},{"@type":"ListItem","position":3,"name":"Highlights: Dynamic Negotiation of BGP Capabilities « ipSpace.net blog"}]}
{"@context":"https://schema.org","@type":"FAQPage","@id":"https://daily.dev/posts/highlights-dynamic-negotiation-of-bgp-capabilities-ipspace-net-blog-wbb8msr8g#faq","mainEntity":[{"@type":"Question","name":"Why does BGP require a session reset to enable new capabilities instead of negotiating them dynamically?","acceptedAnswer":{"@type":"Answer","text":"Per RFC5492, BGP capability negotiation happens once during session establishment, keeping the implementation straightforward. Making it dynamic introduces significant complexity — more code, more error-handling paths, and more potential bugs. Since nobody wants bugs in BGP, and new capabilities are rarely introduced outside of maintenance windows anyway, the complexity cost is hard to justify against the benefit of non-disruptive capability changes. Network engineers debating BGP upgrade strategies find relevant operational perspectives on daily.dev."}},{"@type":"Question","name":"How can I add a new BGP address family without resetting existing BGP sessions?","acceptedAnswer":{"@type":"Answer","text":"Deploying a separate set of route reflectors per address family avoids session resets entirely — adding an address family on a PE router never tears down an existing BGP session. For smaller networks that can't justify dedicated devices per family, per-address-family loopback interfaces can work, but require BGP sessions between distinct pairs of IP addresses on both ends. Engineers designing BGP topologies for scale track architecture patterns like this on daily.dev."}}]}
```

