Data Plane Programmability

Advanced Forwarding Interface

Advanced Forwarding Interface (AFI) is Juniper’s Application Programming Interface which provides third party developers with ability to control and manage forwarding path in the data plane of Junos platforms. AFI defines data plane as forwarding topology graph of potential operations to be performed by packet forwarding engine (PFE) on packet.

AFI allows for programming of all of or a section of the forwarding topology graph by application running inside or outside networking device. These application can be developed by Juniper or by third party developers. AFI defines a sandbox as a section of forwarding topology graph.

A sandbox is small virtual container which can be programmed via AFI. The construct of sandbox allows for different parts of forwarding topology being controlled by different control plane applications. One typical scenario would where a section of forwarding topology being controlled by external SDN controller and rest of the forwarding topology being managed by on-box NOS (Junos).

To learn more about AFI, please visit the AFI GitHub Page.