OpenNSL Tool Suite
Library of Open Networking APIs
OpenNSL Tool Suite is a suite of open switching software solutions provided by Broadcom. This tool suite makes it possible for the development of open networking projects by the community.
This suite consists of multiple offerings:
OpenNSL is a software interface with a set of open APIs that allows customers to develop a set of open, new applications on top of Broadcom's switch silicon. These APIs, on top of Broadcom's functional Switch Development Kit (SDK), provide support for most common switching and routing functions. OpenNSL allows users to develop open applications on top of these APIs freely, without needing a Software License Agreement. Broadcom is working with many partners to provide OpenNSL-based networking solutions. The API definitions, along with example implementations, are available on GitHub. More details on OpenNSL are available here.
SDKLT is an open Switch Development Kit that takes a different approach to configuring switch silicon. It is designed for datacenter and SDN use cases where there is a need for flexibility, automation and the ability to build and manage users' own networks. This SDK has many features such as a table-driven programming model, minimum APIs, robust support for modern data center operations such as In-service Software Upgrades, error recovery, comprehensive debug capabilities, flexible usage models etc. The SDKLT source code for the Broadcom 56960 (Tomahawk) device is openly available for the community to freely use, modify and share with each other. SDKLT Logical Table APIs are released under the Apache 2.0 license. More details on SDKLT are available here.