Neutron/DynamicRouting/BGPSpeakersComparison

Comparison of BGP speakers for bgp-dynamic-routing. Another potential user is bgp-vpn.

{| border="1" cellpadding="2" cellspacing="0"
 * Ryu BGP
 * Quagga
 * BIRD
 * ExaBgp
 * BaGPipe
 * Protocol version
 * BGP-4
 * BGP-4
 * BGP-4
 * BGP-4
 * BGP-4
 * Implementation Language
 * Python
 * C
 * C
 * Python
 * Python
 * IPv4 advertisement
 * yes
 * yes
 * yes
 * yes
 * no (easily added)
 * IPv6 advertisement
 * yes
 * yes
 * yes
 * yes
 * no (easily added)
 * VPNv4 advertisement
 * yes
 * yes
 * VPNv6 advertisement
 * yes
 * not yet
 * RTC support (RFC4684)
 * yes
 * yes
 * IPv6 BGP peering
 * yes
 * yes
 * yes
 * could inherit from ExaBGP
 * 32bit ASNs (RFC6793)
 * no
 * yes
 * yes
 * Standalone mode (run as a standalone process)
 * yes
 * yes
 * yes
 * yes
 * yes
 * Controlling API for Standalone mode
 * JSON RPC over WebSocket
 * stdin/out from subprocess
 * JSON RPC over HTTP
 * Library mode (run in an agent process)
 * yes (example reference)
 * yes
 * yes
 * could inherit from ExaBGP
 * 32bit ASNs (RFC6793)
 * no
 * yes
 * yes
 * Standalone mode (run as a standalone process)
 * yes
 * yes
 * yes
 * yes
 * yes
 * Controlling API for Standalone mode
 * JSON RPC over WebSocket
 * stdin/out from subprocess
 * JSON RPC over HTTP
 * Library mode (run in an agent process)
 * yes (example reference)
 * yes
 * yes
 * stdin/out from subprocess
 * JSON RPC over HTTP
 * Library mode (run in an agent process)
 * yes (example reference)
 * yes
 * yes
 * yes
 * yes
 * yes
 * yes