mpcd - ATM MPOA (Multi-Protocol Over ATM) client daemon
mpcd [ -s Control ATM address ] [ -l Data ATM address ] [ -c MPS
control ATM address ] [ -i Interface number ] [ -m MPS MAC address ] [
-L LEC address [ -n ELAN name ] [ -C LECS Address ]]
MPOA client (MPC) is responsible for creating and receiving
internetwork layer shortcuts. Using these shortcuts MPCs forward
unicast internetwork layer packets effectively over ATM without need
for routing protocols.
MPC has two roles; ingress and egress. In ingress role MPC detects
flows destined outside it’s own subnet and tries to establish shortcuts
to those destinations. In egress role MPC accepts shortcuts and packets
arriving on those shortcuts. Maintaining shortcuts is done with the
help of MPOA server (MPS).
Just as the Linux LAN Emulation client, MPOA client is also divided in
two parts. The parts are kernel component and a daemon process. The
daemon opens and receives data shortcuts and control connections with
the kernel component. The kernel component tallies packets flowing out
from the LANE device and makes the decision if a packet should be
forwarded using LANE or MPOA shortcuts.
If the daemon is killed with SIGHUP it will close all the open
connections, purge ingress and egress cache entries, query LECS if
applicable and then restart itself.
Linux MPOA client only supports non-LLC-muxed shortcuts. The number of
supported MPOA clients is unlimited.
-s Control ATM address
Local ATM address this MPC uses for MPOA control connections.
-l Data ATM address
Local ATM address from and to which MPOA shortcuts are
-c MPS control ATM address
ATM address of MPS. Only needed if MPS can not advertise it by
-i Interface number
The interface number of LEC this MPC serves. E.g. 2 for "lec2".
-m MPS MAC address
MAC address of default router where MPS recides. Only useful if
the MPOA server fails to advertise itself.
-L LEC address
Listen address of the LANE client zeppelin. mpcd uses this
address as its own ATM address when it queries LECS for MPC
configuration parameters. If this option is not present then
mpcd will not use LECS to query for configuration parameters.
This option is normally the same as zeppelin’s -l option.
-n ELAN name
Name of the ELAN for which mpcd asks for parameters when it
connects to LECS. If this option is not given, LECS should
respond with parameters belonging to the default ELAN if one
exists. This option is normally the same as zeppelin’s -n
-C LECS address
ATM address of LECS mpcd asks for parameters. If this option is
left empty and -L is given, mpcd uses ATM Forum assigned Well-
Known LECS address. This option is normally the same as
zeppelin’s -c option.
This script snippet shows how to run LANE and MPOA. After UNI
signalling and ILMI have been started LANE (zeppelin) and MPOA (mpcd)
are started. The commented out line shows how to start mpcd so that it
queries LECS for MPC parameters.
Arguments jaarli[1-3] are local ATM addresses listed in file
case "$1" in
if [ -x sigd/atmsigd ] ; then
if [ -x ilmid/ilmid ] ; then
ilmid/ilmid -b -x
if [ -x led/zeppelin ] ; then
led/zeppelin -2 -n sampo -i2 -l jaarli3 &
ifconfig lec2 10.10.10.208 \
netmask 255.255.255.192 \
ifconfig lec2 up
route add default gw 10.10.10.193
if [ -x mpoad/mpcd ] ; then
mpoad/mpcd -i2 -s jaarli1 -l jaarli2 &
#mpoad/mpcd -i2 -s jaarli1 -l jaarli2 \
-L jaarli3 -n sampo &
Supports only Ethernet type of ELANs. Probably others too.
Heikki Vatiainen <email@example.com>, Sampo Saaristo <firstname.lastname@example.org>