This chapter describes commands that configure the bundle layer.
All of these commands (except
apply to the currently active bundle, i.e.,
the bundle shown at the command line prompt.
This command creates a new bundle named
The bundle will be associated with system interface
iface, which should be the name of a netgraph
ng1, etc. If an interface
is specified but does not exist yet, mpd will create it (and any
ng* interfaces as well). If no
iface is specified, mpd will create a new one.
Specifying an interface explicitly is advised, as otherwise a
new interface will be created on your system every time mpd is
The links that constitute the bundle are created and named
link2, etc. For each
link, there must be a corresponding entry with the same name (i.e.,
mpd.links. This entry must at the very least
define the type of the physival device associated with link
set phys type command).
set bundle period seconds
set bundle hiwat percent
set bundle lowat percent
set bundle min-con seconds
set bundle min-dis seconds
These commands are only meaningful when bandwidth management is enabled.
Mpd will attempt to bring up a new link or take down an existing link
when the utilization goes above
lowat percent, respectively. The utilization is
period divided by 6 seconds, and
is averaged over the past
Mpd will not attempt to disconnect a link unless previous one was
disconnected at least
min-dis seconds before.
Similarly, mpd will not open a link unless previous was opened at least
min-con seconds before. These two parameters
help prevent oscillations, but cause slower response time.
set bundle retry seconds
This sets the finite state machine (FSM) retry interval for all FSM's on this bundle. The default is 2 seconds. This command should only be used in exceptional situations, such as doing PPP over high-latency satellite links.
set bundle accept option ...
set bundle deny option ...
set bundle enable option ...
set bundle disable option ...
set bundle yes option ...
set bundle no option ...
These commands configure various bundle options. Most options are bi-directional in that they can be independently enabled and disabled in each direction.
disable commands determine
whether we want the corresponding option.
deny commands determine
whether we will allow the peer to request the corresponding option.
yes command is the same as
no command is the same as
The options available at the bundle layer are:
This command enables bandwidth management, in which mpd attempts to dynamically adjust the number of connected links depending on the traffic load.
The proper functioning of bandwidth management depends on the correct
latency and bandwidth information configured for each link; see the
set link latency and
set link bandwidth
The default for this option is off -- mpd connects the links ``all or none.''
This command enables multi-link PPP on the bundle. This option is required in both directions if there is more than one link in the bundle. However, multi-link PPP is sometimes useful on single links when the link MTU is low; multi-link PPP allows arbitrarily long packets to go over a link in fragments.
This option defaults to
there is only one link in the bundle, in which case it defaults to
deny (i.e., normal non-multilink PPP).
When multilink PPP is enabled and there are two or more links connected, this option enables round robin packet scheduling across the links. That is, instead of breaking each packet into fragments and delivering the individual fragments over all the links in the bundle, each packet is delivered whole over single link. The link is chosen by rotating in round-robin fashion over all the links in the bundle.
This option normally would result in higher latency and possible delays due to TCP packets being received out of order; however, it may help in certain situations of high packet loss or broken peer equipment.
This option is only meaningful if multi-link PPP is negotiated.
It proscribes shorter multi-link fragment headers,
saving two bytes on every frame. It defaults to
Enable/Disable IPCP negotiation. Default is enabled.
Enable/Disable IPV6CP negotiation. Default is disabled.
Enable/Disable CCP (Compression Control Protocol) negotiation. Default is disabled.
Enable/Disable ECP (Encryption Control Protocol) negotiation. Default is disabled.
Require encryption. When encryption support is compiled into mpd, this option causes mpd to drop the link if encryption cannot be succesfully negotiated in both directions. This means in effect, ``use encryption or don't connect at all.''
The default for this option is off.
This tells mpd to not attempt to reconnect a bundle whose last link has closed. This is needed for dialin-only bundles, where mpd doesn't know how to initiate an outgoing connection.
The default for this option is on.