MPD - Multi-link PPP daemon for FreeBSD 

What is it?

Mpd is a netgraph(4) based implementation of the multi-link PPP protocol for FreeBSD. It is designed to be both fast and flexible, as it handles configuration and negotiation in user land, while routing all data packets strictly in kernel.

Mpd is very fast - it is able to handle several Gigabits per second of PPP traffic on modern hardware.

Mpd is very scalable - it is able handle many thousands of simultaneous connections without performance degradation and spread load between multiple CPUs. Same time it is very small and doesn't need much resources.

Mpd is very functional:

It has unified support for most of existing PPP link types:

Depending on configuration and connection parameters mpd can operate as usual PPP client or server, or even forward connection unmodified to other host using any supported link type, providing LAC/PAC/TSA functionality for building distributed large scale access networks.

It supports most of popular PPP sub-protocols and extensions, such as:

Mpd also includes many additional features:

Latest Release

See SourceForge for the latest release and download information.

Getting it

Use the FreeBSD ports system to install MPD. Click here for the FreeBSD port of MPD.


Online version of manual: 4.x 5.x.
MPD installs it's HTML and PostScript documentation into /usr/local/share/doc/mpd.

MPD Patches

All patches should be posted on sourceforge. You can view them by clicking here.

The MPD project is now hosted on: Logo