BGP: Helium: Release Plan

Contents

Introduction

During the Helium code sprint we will focus on delivering two major features:

  • PCEP support for Segment Routing
  • BGP support for route dissemination and passive connections

Secondary goals are keeping current with drafts as they evolve, bug fixes and performance/scale improvements.

Release Deliverables

NameDescription
BGP
  • Definition of API contract for BGP speaker
  • Implementation of BGP RIBs (AdjRibsIn, AdjRibsOut, LocRib) to allow for full BGP speaker functionality
  • Implementation of import/export policies
  • Statistics
PCEP
Models
  • Model of a PCEP support for Segment Routing in YANG.
  • Model of a BGP-LS AdjRibIn/Out in YANG.

Release Milestones

MilestoneDateDeliverables
M15/12/2014
NameStatusDescription
Release PlanDoneCandidate Release Plan
M26/09/2014
NameStatusDescription
Release PlanDoneFinal Release Plan
API design of BGP speakerDoneSpeaker capability requires us to rework AdjRIBsIn class into a per-peer structure and MD-SAL writer. We will also need interfaces for export engine.
BGP Update message serializerDoneFor the purpose of having a full BGP speaker, having a serializer for all parts of Update message is a must.

This task also includes getting rid of using raw byte array in other parts of BGP serialization, that will also improve clearness of the code and performance.

M37/07/2014
NameStatusDescription
Create model for AdjRibsIn/OutDoneSimilar to the LocRib model, we need a per-peer view of information which has been ingested (AdjRibIn) and which is to be advertized (AdjRibOut)
Support for Segment RoutingDoneFor Helium, we are doing PCEP only. This includes extending the models to support SR paths and the related parsers/serializers.
Support for BGP statisticsMoved to LithiumSimple per-connection/per-rib statistics, which can be quickly reviewed. Number of PDUs received/sent, time of last PDU send/received, negotiated session capabilities.
M48/04/2014
NameStatusDescription
API Freeze
No API/model changes are allowed after this date.
Implementation of BGP speaker.DoneBGP stack needs to be able to disseminate routes using a simple export policy.
Update PCEP draftsDonePCEP drafts implemented in Hydrogen release are outdated and need to be adjusted to newer draft versions.
BGP speaker reconnect supportDoneThe speaker role requires us to be able to establish both active and passive sessions. The IO subsystem to handle that will be finished by API freeze.
M59/1/2014
NameStatusDescription
Code Freeze
Writing tests and user-facing documentation.
Technical debt paybackDoneThis includes getting rid of sonar warnings, updating unit test coverage

and refactoring where needed.

Support PCEP statisticsMoved To LithiumSimple per-session statistics, number of messages sent/received, time of last message in/out, session characteristics, total number of PCErr messages
RC09/9/2014
NameDescription
RC0

bugfixing

RC19/15/2014
NameDescription
RC1bugfixing
RC29/22/2014
NameDescription
Release ReviewRelease Review Description
Formal Release9/29/2014
NameDescription
Deliverable NameDeliverable Description

Expected Dependencies on Other Projects

Depends OnDependency DescriptionNeeded ByIs in Other Project Release Plan

Compatibility with Previous Releases

This release is expected to break both binary and source-code level compatibility. All Java code plugins will need to be updated. Some RESTCONF clients may need updating. The precise amount of breakage will be established by API freeze.

Themes and Priorities

Versioning

0.4.0 - stable Helium version

Other

Primary Setup Contact : Dana Kutenicsova (dkutenic@cisco.com)

CI Resource : Dana Kutenicsova (dkutenic@cisco.com)