1. Overview & Component Interaction

Version 0.7, 2008-Oct-20

1.1 Introduction

Network Profiles, the primary component of the Network Auto-Magic project, are a way to simplify network configuration management. The profiles implementation consists of a number of entities that cooperate to effect network configuration in as automated a manner as possible.

There are two primary profile types: the Network Configuration Profile (NCP), which specifies the configuration of individual network interfaces; and the Location, which specifies system-wide network configuration.

1.1.1 Network Configuration Profile (NCP)

The NCP specifies how to configure the various network interfaces; this includes information such as which interfaces should be brought up, and under which conditions that should happen; how to obtain IP address(es) for the interface(s); etc.

As it specifies individual network components, the NCP is made up of individual Network Configuration Units (NCUs). There are two types of NCUs: link and interface. Link NCUs are layer two entities such as physical devices, aggregations, vlans, or tunnels. Interface NCUs are layer three entities; specifically, IP interfaces. Interface NCUs may be basic IP interfaces (IP plumbed on a link; one or more IPv4 and/or IPv6 addresses may be assigned to the interface) or IPMP group interfaces. In Phase 1, only physical and tunnel link NCUs and basic IP interface NCUs will be supported.

Also in Phase 1, only one user-created NCP is supported; configuration of additional (inactive) NCPs is not allowed. However there will be a second NCP which is used by the NWAM service when running in automatic mode. This automatic NCP will be maintained by the NWAM service and will not be user-modifiable.

1.1.2 Location

The Location contains system-wide network configuration information. Some examples include:

Only one Location may be active at any given time.

For future extensibility, it will be possible for SMF services to identify properties that should be included in an NWAM Location; those properties will then be automatically included when viewing/configuring a Location via the libnwam interface.

1.2 Component Overview

The primary components of the Network Profiles implementation are:

1.2.1 Interactions

Components interact as follows:

1.2.2 Examples

1.3 Phase 0 vs. Phase 0.5 (Picea) vs. Phase 1

To understand the limitations of NWAM phase 0, it is important to first understand the target audience: laptop users. The intent in delivering a less-than-complete solution was to provide sensible default autoconfiguration for laptop users, with the following constraints:

Phase 0.5 introduced updates to the netstatus panel applet it make it more NWAM-friendly, as well as a basic GUI in the nwam-manager tool to improve observability and user interaction. The bulk of the phase 0 constraints remained, however; and while these constraints fit with the average laptop user's needs, NWAM Profiles need to be enhanced in a number of dimensions to scale to more a broader set of users. The first of these enhancements constitute Phase 1 of the project; the primary new features include:

Revision History

Revision Date Changes
0.1 2007-Sep-05 initial draft
0.2 2007-Sep-07 incorporate intro material from Alan's doc
0.3 2007-Dec-03 system-wide config profiles are now called Locations
0.4 2008-Feb-19 repository is files for phase 1
0.5 2008-Mar-12 update automatic ncp details
0.6 2008-Apr-25 update libnwam/netcfgd details
0.7 2008-Oct-20 update for psarc inception: picea notes, fix location info