Lisp Flow Mapping: Lithium: Release Review

Contents

LISP Flow Mapping

Features

Hydrogen Release

  • First release of Lisp Flow Mapping

  • LISP Map Server with flat key-value mappings

    • Support for basic mappings including multiple RLOCs per EID, priority, and weight

    • Support for storing IPv4, IPv6, MAC, Distinguished Name, Segment ID, Traffic Engineering with Path Specification, AS Number, Application Specific Data

    • Support for Source/Destination 2-Tuple Lookups

  • LISP Map Resolver

  • Northbound (application facing) REST API for Map Server and Map Resolver to add/retrieve EID-RLOC (e.g. : virtual IP address to physical IP address) mappings

  • Southbound (device facing) LISP API for Map Server and Map Resolver to register/request EID-RLOC mappings via LISP protocol

Helium Release

  • Proactive Mapping System Pub/Sub: The mapping Service keeps a list of subscriber xTRs per mapping record (auto-subscribe at mapping request). When the mapping record is updated via NB API, mapping system sends SMR message including the updated record to the subscribing xTRs.

  • Map Request Non-Proxy Support: The mapping service supports receiving non-proxy map requests, and forward them to the current xTR.

  • Neutron API integration: Improved and expanded Neutron API support in LISP Flow Mapping. When a new neutron subnet is created, the subnet is added to mapping system with the Neutron net-ID as the key for the EID (subnet) prefix.

  • LISP SB plugin integration with Node Inventory and GUI: Enables status integration of LISP dateplane nodes in AD-SAL node inventory and AD-SAL GUI. Not included in Karaf.

  • Integration with Service Function Chaining: The mapping Service supports integration with Service Function Chaining, code is part of SFC.

  • Config command : setShouldOverwriteRloc true, enables overwrite of mappings instead of appending/merging

  • Port support for non proxy map request

  • Key-value LCAF support

  • Map-Reply in Map Request serialization. we now serialize the embedded map reply record.

  • Southbound xTR support. The southbound can now listen on another port which is the xTR port, and send a notification with the received map request.

  • Adding another address format: a DistinguishedName with value "<ip>:<port>"

  • Netconf: API/ability to programmatically connect to a netconf server from the LISP project. Not yet a user facing feature.

Lithium Release

Name

Description

Name

Description

Improved ELP processing

The mapping Service will Return both ELP and the next hop depending on the requesting xTR. This assists in ELP support for non-ELP enabled xTRs.

Transition to MD-SAL

The NB API will be transitioned to MD-SAL.

Continuous integration with Service Function Chaining

The mapping Service will continue support for integration with Service Function Chaining.

Neutron implementation enhancements

Improve and expand Neutron API support in LISP Flow Mapping.

Non-Code Aspects (user docs, examples, tutorials, articles)

Architectural Issues

An overview of the architecture including API documentation is posted at the Architecture Overview page.

  • Mappings register from northbound or southbound will no longer expire automatically. RPCs can be used to remove mappings registered from the northbound API. RESTCONF can be used to remove mappings registered from the southbound API. Use of RESTCONF for chaning mappings must be done with care as it is basically a direct access to our database, and unlike RPC, no processing/filtering will take place when using RESTCONF API.

Security Considerations

LISP southbound plugin follows LISP RFC6830 security guidelines. A key/password is associated with every EID prefix which is used to create a MAC (Message Authentication Code) of the UDP LISP control messages for authentication and integrity protection of the UDP messages. This is implemented as specified in the LISP RFC6830. These keys can be defined through the northbound API (RPCs).

Quality Assurance (test coverage, etc)

  • Unit Tests: Unit tests are implemented and coverage is at 31% reported in Jacoco results.

  • Integration Tests: About 30 integration tests have been implemented and are passed.

End-of-life (API/Features EOLed in Release)

Our Northbound service has been EOLed, including all associated northbound REST APIs. Equivalent APIs are now available via RPCs and RESTCONF. API documentation is available at API Documentation.

Bugzilla (summary of bug situation)

Standards (summary of standard compliance)

The LISP implementation module and southbound plugin conforms to the IETF RFC6830 and RFC6833, with the following exceptions:

  • In Map-Request message, M bit(Map-Reply Record exist in the MapRequest) is processed but any mapping data at the bottom of a Map-Request are discarded.

  • LISP LCAFs are limited to only up to one level of recursion. For instance in the case of a traffic engineering policy every hop can only be a generic AFI address (IPv4, IPv6, MAC, Dist. Name, AS Number), and can not include combinations such as Segment ID, or list.

No standards exist for the LISP Mapping System northbound API as of this date.

Schedule (initial schedule and changes over the release cycle)

All features planned for this release cycle were met. Schedule of next release cycle is in the works.