GithubHelp home page GithubHelp logo

armedtiger / sdklt Goto Github PK

View Code? Open in Web Editor NEW

This project forked from dusten/sdklt

0.0 1.0 0.0 9.32 MB

Logical Table Based Switch Software Development Kit

Makefile 2.19% C 96.96% C++ 0.45% Yacc 0.03% Lex 0.02% Perl 0.10% Python 0.05% Objective-C 0.15% Shell 0.01% HTML 0.01% CSS 0.03%

sdklt's Introduction

SDKLT

SDKLT (Logical Table Software Development Kit) is a new, powerful, and feature rich Software Development Kit for Broadcom switches. SDKLT provides a new approach to switch configuration using Logical Tables. The Wiki provides an overview of SDKLT usage and its achitecture. An architectural feature summary can be found here.

SDKLT is a part of the OpenNSL suite.

Purpose

This release is intended to introduce users to the benefits of SDKLT, the API, and the CLI. Using the demonstration application (Demo App) you will learn how Logical Tables are used for network switch programming. The CLI shell in the Demo App provides an interactive interface for exploring the Logical Table controls on a Broadcom Tomahawk switch. The built in C language interpreter (CINT) provides an interactive way to write C code for configuring the Logical Tables, using Logical Table C language API calls.

Getting Started

Clone a copy of the repository, build the Demo App and follow the example CLIs scipts as they demonstrate the capability of the Logical Table Interface. The Demo App allows you to become familar with the Tomahawk Logical Table interface, see building the Demo App. The Demo App supports switch configuration via the shell CLI or C APIs. The CLI reference guide provides information on using the shell CLI and introduces the user to the CLIs used to configure Logical Tables.

Release Contents

SDKLT source code, Logical Tables, documentation and examples for a Broadcom Tomahawk switch device. The package includes an extensible CLI shell which can be used to interact with the core SDK. The release will provide users a hands-on experience with the SDKLT using a logical table approach to switch software programming. The src directory contains the source code needed to build the Demo App image which targets a simulated Broadcom BCM56960 Tomahawk device or an actual Tomahawk device. Note that no external PHY drivers are part of the source code repository. The list of SDKLT Tomahawk features is here.

Documentation

APIs Internal and External

Overall API Reference Guide shows both external and internal APIs.

APIs for Logical Tables operations

Packet I/O APIs

SDK Management contains APIs for starting and stopping the SDK.

CLI

Basic CLI shell Commands

CLI Commands for Logical Tables

CLI Reference Guide

Example Usage

Reference code and CLI scripts are contained in the examples directory.

Logical Table Definitions

Definitions of the Logical Tables device controls used on Tomahawk are provided here. Click on the blue "Feature Categories" tab to see the main Logical Table groupings such as Port, VLAN, L2 or L3. Select the L2 logical tables to view all the L2 tables supported by this device. In order to view the specific L2 logical table controls, click on the table name (e.g. L2_MY_STATION).

License and Legal Terms

The software content in this repository is divided into two types, open source and limited open source, each with its own respective license.

The open source software is licensed under the Apache License, version 2.0. A copy of this license is located here.

The limited open source software is licensed under the Broadcom Switch Software License. A copy of this license is located here.

The applicable license will be identified at the beginning of the software file. SDKLT uses some third-party externally licensed components which are listed here.

As of today, SDKLT API definitions are released under the Apache 2.0 license. All other files in this repository are released under the Broadcom Switch Software License.

sdklt's People

Contributors

broadcom-csg-mktg avatar iakramov avatar r3meadows avatar sdkrel avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.