Contents
Major Features
Helium release of BGPCEP project delivers the support for the two protocols and applications which tie the protocols to the controller's MD-SAL infrastructure.
BGP support
- Core Border Gateway Protocol
- Extended AFI/SAFI support
- draft-ietf-idr-ls-distribution-04 - North-Bound Distribution of Link-State and TE Information using BGP
PCEP support
- Core Path Computation Element Protocol
- RFC5440 - Path Computation Element (PCE) Communication Protocol (PCEP)
- RFC5541 - Encoding of Objective Functions in the Path Computation Element Communication Protocol (PCEP)
- RFC5455 - Diffserv-Aware Class-Type Object for the Path Computation Element Communication Protocol
- RFC5521 - Extensions to the Path Computation Element Communication Protocol (PCEP) for Route Exclusions
- RFC5557 - Path Computation Element Communication Protocol (PCEP) Requirements and Protocol Extensions in Support of Global Concurrent Optimization
- Stateful extensions to the Patch Computation Element Protocol, December 2012
- draft-ietf-pce-stateful-pce-02 - PCEP Extensions for Stateful PCE
- draft-crabbe-pce-pce-initiated-lsp-00 - PCEP Extensions for PCE-initiated LSP Setup in a Stateful PCE Model
- Stateful extensions to the Patch Computation Element Protocol, December 2013
- draft-ietf-pce-stateful-pce-07 - PCEP Extensions for Stateful PCE
- draft-ietf-pce-pce-initiated-lsp-00 - PCEP Extensions for PCE-initiated LSP Setup in a Stateful PCE Model
- Segment routing extension to the Path Computation Element Protocol, October 2013
- draft-sivabalan-pce-segment-routing-02 - PCEP Extension for segment routing
- draft-sivabalan-pce-lsp-setup-type-01 - PCEP Extension for path setup type
MD-SAL applications
- BGP Local/Remote Routing Information Base export
- Export of BGP/LS-sourced information to Level 3 (L3) Interior Gateway Protocol (IGP) Topology
- Export of PCEP-sourced Label Switched Path information as a Network Topology and support for initiating them
Programming pipeline
- Proposal for a north-bound programming pipeline, which can perform optimistic instruction scheduling and parallel execution. Used in the PCEP initiation interface.
Target Environment
For Execution
A Java 7-compliant runtime environment is sufficient to run the protocol libraries. An MD-SAL enabled container, such as the OpenDaylight Controller is required for operation of the MD-SAL application. TCP-MD5 functionality requires 64 bit Linux, other platforms are not supported.
For Development
In order to participate on development, you will need some standard Java development environment which supports Maven projects hosted in Git. Core developers use Eclipse on Linux, but also plain console with vim/mvn/git, so pretty anything you are comfortable should work reasonably well.
Known Issues and Limitations
This release is focused on getting all the functionality required for both protocols working. The implementation has been tested to inter-operate with one major router vendor and its topology export was examined for consistency with underlying network topology.
- The BGP speaker was not tested for performance/scale
- No performance/scale tests are visible to open-source community (this will be addressed in upcoming release)
Helium Stable Update 1
For Helium Stable Update 1, the following bugs are fixed:
- BUG-1924 - features.xml lists multiple commons-codec versions
- BUG-1921 - features-bgpcep has incorrect guava version
- BUG-1931 - Overridden version of junit
- BUG-2082 - feature.xml is missing dependencies on tcp-md5
- BUG-2115 - close() method of BGPSessionImpl should set the error subcode
- BUG-2109 - Ghost BGP session could not be cleaned
- BUG-2167 - pcc-mock is not bindable to different source addresses
- BUG-2201 - routes announced after initial synchronization not present in loc-rib
- BUG-2171 - pcc-mock: enable logging level configuration
- BUG-2204 - pcc-mock does not support mocking pcc with zero initial lsps