
.. image:: images/trellis.png
   :width: 500px
   :align: center

Overview
========

Trellis is an **open-source multi-purpose L2/L3 leaf-spine switching fabric**.

The development of Trellis over the last four years has been influenced by
three core trends in the networking industry:

- First, **Trellis is built using bare-metal switches with merchant-silicon ASICs**.
  Instead of using OEM networking hardware, Trellis uses hardware directly from ODMs.

  The trend of using bare-metal (white-box) switches is unmistakable in the
  networking industry today, spurred by the massive bandwidth-density and
  growing sophistication of merchant silicon ASICs.

  Production quality Trellis today is based on EdgeCore switches with Broadcom
  Trident2, Tomahawk and Qumran switch ASICs.  The Trellis team continues to
  work towards including more ODMs and merchant silicon vendors.

- Second, **Trellis is based on SDN principles**, to provide simpler, more
  flexible and easily customizable networks.  By externalizing the network’s
  control, management functions and policy decisions in the ONOS SDN
  controller, Trellis provides network operators with a number of SDN benefits
  compared to traditional box-embedded network control.  These include
  centralized configuration, automation, operation and troubleshooting.

- Third, **Trellis is open-source**.
  The networking industry has seen an explosion of open source projects, and
  network operators have been eager to embrace open-source solutions.  Trellis
  allows operators unparalleled ability to customize Trellis for their
  application, integrate with the rest of their systems, add features and APIs
  themselves and not be beholden to a traditional vendor’s timelines and
  prices.  An absence of commercial licenses lowers the bar for anyone to try
  out Trellis.

Together, all three attributes of Trellis considerably lower the Total Cost of
Ownership (TCO) for operators who plan to run it in production.

.. note::
    You can learn more about Trellis features and design concepts by visiting
    the `Project Website <https://opennetworking.org/trellis>`_ and reading the
    `Platform Brief
    <https://www.opennetworking.org/wp-content/uploads/2019/09/TrellisPlatformBrief.pdf>`_.


Highlights
==========

- Classic-SDN Control with ONOS to directly program ASIC forwarding tables in
  bare metal switches with merchant silicon

- L2 forwarding (Bridging) within server-racks and L3 forwarding (Routing)
  across racks

- MPLS Segment routing for better scale and reduced programming

- Control plane functionality with Trellis vRouter for external connectivity

- N-way redundancy and tier-1 telecom operator scale

- Support for different use cases ranging from Central Office to backhaul in
  operator networks

- Single-pane-of-glass monitoring and troubleshooting with ONOS

- CapEx and OpEx savings with white-box hardware and open source software

- Future Proof: P4 and Stratum integration to unlock advanced capabilities

Use Cases
=========

Distributed Fabric for Access/Edge Networking
---------------------------------------------

    .. image:: images/index-usecase-edge.png
       :width: 800px

Disaggregated BNG in SEBA using P4
----------------------------------

    .. image:: images/index-usecase-seba.png
       :width: 800px

Enterprise Datacenter Fabrics
-----------------------------
    .. image:: images/index-usecase-dc.png
       :width: 700px

Chassis Routers
---------------
    .. image:: images/index-usecase-chassis.png
       :width: 600px

Get Started
===========

- Read the `Quick Start <quickstart.html>`_ guide and get some hands on
  experiences.

- Stay in touch by joining:

  - `Trellis Developer Mailing List
    <https://groups.google.com/a/opennetworking.org/forum/#!forum/trellis-dev>`_

  - \#trellis channel in `ONF Community Slack <https://onf-community.slack.com>`_
    (`register <https://onf-community.slack.com/join/shared_invite/zt-g2ed9rid-t9mAGa4Y2RrKfBWbY665tA>`_)

.. toctree::
   :maxdepth: 1
   :hidden:
   :caption: Table of Contents

   architecture
   specification
   supported-hardware
   supported-topology
   quickstart
   installation
   configuration
   troubleshooting
   development
   testing
   documentation
