.. image:: images/overview-logo.png
   :width: 400px
   :align: center

Overview
========

SD-Fabric is an open source, full stack, deeply programmable network fabric optimized for edge cloud,
5G, and Industry 4.0 applications.
It builds on SDN and cloud native principles to create a disruptive platform that for the first time
empowers the network with modern cloud development principles.

- SD-Fabric is a **natively disaggregated solution using bare metal switches with merchant silicon ASICs**.
  Instead of using OEM networking hardware, SD-Fabric 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.

- SD-Fabric is **based on SDN principles using P4-enabled programmable data planes**
  (such as the Intel® Tofino® ASICs).
  P4 allows for the introduction of new features that cannot be found in traditional fabrics built on
  fixed-function ASICs.
  For example, SDFabric makes possible a 5G mobile core User Plane Function (UPF)
  (this UPF is part of the SD-Core™ project, which runs on SD-Fabric).
  And by externalizing the network’s control, management functions, and policy decisions in the ONOS™ SDN controller,
  SD-Fabric provides network operators with a number of SDN benefits
  (compared to traditional embedded network control like BGP) that include customizability,
  centralized configuration, automation, and simplified operations and troubleshooting.
  As a result, SDFabric is truly software defined in both the control and data planes.

- SD-Fabric is **optimized for application developers**,
  exposing APIs to enable developers to get better visibility and control while enabling custom P4 forwarding logic
  to be ‘pushed’ down into the network.
  SD-Fabric can further be deployed in a SaaS model,
  with centralized operations and control running from the public cloud which in turn is running distributed
  multiple edge clouds - all as one unified solution.

- SD-Fabric delivers **superior resilience and security compared to legacy approaches**.
  The programmability of SD-Fabric has enabled the implementation of fine-grained measurement
  (via In-band Network Telemetry (INT)), network verification, and closed loop control (see https://prontoproject.org/).
  Furthermore, as open source,
  SD-Fabric is further secured through the benefit of open inspection by a broad community.

- SD-Fabric can be **deployed as-a-Service from the public cloud**. When deployed as-aService,
  SD-Fabric provides a full stack implementation designed to run on white box switches at the network edge,
  with centralized CI/CD and operations running from the public cloud controlling multiple edges.


Highlights
==========

.. image:: images/overview-topo.png
   :width: 500px

- **Right-sized Topology**: Scale from smallest HA setup of a pair-of-ToRs (sub/single
  rack) to a full leaf-spine fabric (multiple racks) as needed in edge or DC deployments.
- **API Driven**: Programmable API with ability to drop or reroute traffic plus obtain
  telemetry and program application workloads across switches, CPU and NICs.
- **Cloud Managed**: Fully integrated and configured by Aether™ Management platform.
- **5G as a Workload**: Tofino + BESS UPF scalable on demand, Smart NIC + BESS UPF
  extensions, 5G slicing as primary construct.
- **Visibility**: Throughout the entire network enabling closed loop control.
- **Integration**: With K8s CNI and overlay enabling true end-to-end programmability and visibility.

Get Started
-----------
- Learn more about SD-Fabric

  - `SD-Fabric Website <https://opennetworking.org/sd-fabric/>`_
  - `SD-Fabric Whitepaper <https://opennetworking.org/wp-content/uploads/2021/06/SD-Fabric-White-Paper-FINAL.pdf>`_
  - `SD-Fabric Techinar <https://www.youtube.com/watch?v=-wQB2x7oaqk>`_
  - `SD-Fabric Wiki <https://wiki.opennetworking.org/display/COM/SD-Fabric>`_

- Stay in touch by joining

  - `SD-Fabric developer mailing list <https://groups.google.com/a/opennetworking.org/g/sdfabric-dev>`_
  - \#sdfabric-dev channel in `ONF Community Slack <https://onf-community.slack.com>`_
    (`register <https://onf-community.slack.com/join/shared_invite/zt-g2ed9rid-t9mAGa4Y2RrKfBWbY665tA>`_)

.. toctree::
   :maxdepth: 2
   :caption: Documentation
   :hidden:
   :glob:

   specification
   architecture
   quickstart
   deployment
   configuration
   advanced
   troubleshooting
   development
   testing
   glossary

.. toctree::
   :maxdepth: 2
   :caption: Releases
   :hidden:
   :glob:

   release/process.rst
   release/1*

.. toctree::
   :maxdepth: 2
   :caption: Misc
   :hidden:
   :glob:

   readme
