#
# $XORP: xorp/fea/README,v 1.9 2007/06/04 23:17:31 pavlin Exp $
#

Forwarding Engine Abstraction
=============================

The FEA is intended to fulfill several roles:

    1) Manages network interfaces.

    2) Reports changes to network interface configurations.

    3) Manages the forwarding tables of the underlying data plane.

    4) Allows TCP, UDP, raw IP and raw link-layer packets to be
       sent/received on network interfaces.

    5) Adds support for multicast routing (see README.mfea for details).

    6) Managers firewall rules of the underlying data plane.

Documentation
=============

The FEA architecture is described in ${XORP}/docs/fea.
For information about the multicast-related MFEA see README.mfea
The MFEA architecture is described in ${XORP}/docs/mfea.

Status
======

Two FEA implementations exist: ``xorp_fea'' and ``xorp_fea_dummy''.
Program ``xorp_fea'' is a generic FEA that contains plug-ins for
various systems. Currently, it has plug-ins for the following systems:
 * BSD-based systems with routing socket interface
 * Linux-based systems with netlink socket interface,
 * Click forwarding plane (http://read.cs.ucla.edu/click/)
 * Windows' IP Helper API

See ${XORP}/BUILD_NOTES for a complete list of all OS versions that
may be supported by the FEA.

Program ``xorp_fea_dummy'' is a functional FEA substitute that doesn't
interact with the underlying system, and can be used for testing purpose.
