.. _bgp-monitoring-protocol-developer-guide: BGP Monitoring Protocol Developer Guide ======================================= Overview -------- This section provides an overview of **feature odl-bgpcep-bmp**. This feature will install everything needed for BMP (BGP Monitoring Protocol) including establishing the connection, processing messages, storing information about monitored routers, peers and their Adj-RIB-In (unprocessed routing information) and Post-Policy Adj-RIB-In and displaying data in BGP RIBs overview. The OpenDaylight BMP plugin plays the role of a monitoring station. Key APIs and Interfaces ----------------------- Session handling ~~~~~~~~~~~~~~~~ *32-bmp.xml* defines only bmp-dispatcher the parser should be using (global-bmp-extensions). .. code:: xml prefix:bmp-dispatcher-impl global-bmp-dispatcher bmp-spi:extensions global-bmp-extensions netty:netty-threadgroup global-boss-group netty:netty-threadgroup global-worker-group For user configuration of BMP, check User Guide. Parser ~~~~~~ The base BMP parser includes messages and attributes from https://tools.ietf.org/html/draft-ietf-grow-bmp-15 Registration ~~~~~~~~~~~~ All parsers and serializers need to be registered into *Extension provider*. This *Extension provider* is configured in initial configuration of the parser (*32-bmp.xml*). .. code:: xml prefix:bmp-extensions-impl global-bmp-extensions bmp-spi:extension bmp-parser-base - *bmp-parser-base* - will register parsers and serializers implemented in bmp-impl module Parsing ~~~~~~~ Parsing of BMP elements is mostly done equally to BGP. Some of the BMP messages includes wrapped BGP messages. BMP Monitoring Station ~~~~~~~~~~~~~~~~~~~~~~ The BMP application (Monitoring Station) serves as message processor incoming from monitored routers. The processed message is transformed and relevant information is stored. Route information is stored in a BGP RIB data structure. BMP data is displayed only through one URL that is accessible from the base BMP URL: *`http://:8181/restconf/operational/bmp-monitor:bmp-monitor :8181/restconf/operational/bmp-monitor:bmp-monitor>`__* Each Monitor station will be displayed and it may contains multiple monitored routers and peers within: .. code:: xml example-bmp-monitor 127.0.0.11 up 20.20.20.20 72 global 5000 5 up 10.10.10.10 220 x:ipv4-address-family x:unicast-subsequent-address-family 10.10.10.0/24 ... true
10.10.10.10
... 20.20.20.20 5 53 16 100 11 55 10 66 70 8
name description some info;
API Reference Documentation --------------------------- Javadocs are generated while creating mvn:site and they are located in target/ directory in each module.