BGP is a protocol that's easily extensible, this allows new functionalities to be introduced quickly.
Announcement to peers of the BGP features that the router supports is done with the concept of 'capabilities'
They are negotiated initially when the session is established (using the OPEN message) even though they can be exchanged dynamically after the adjacency is up if supported by the BGP peers.
The reception of an unsupported capability generates a notification message and the session is typically restarted.
Common capabilities: Multiprotocol Extensión, Route Refresh, Outbound Route Filtering, 4 Byte AS and graceful restart.
Multiprotocol Extensions: Important because it defines the protocols for which we exchange NLRIs:
AFI: 1 (IPv4) / 2 (IPv6)
SAFI: 1 (Unicast) / 2 (Multicast) / 3 (Unicast-Multicast) / 4 (MPLS) / 5 (MPLS VPN)