The TCP/IP Guide - Version 3.0 (Contents) ` 251 _ © 2001-2005 Charles M. Kozierok. All Rights Reserved.
The fragments used in MP are similar in concept to IP fragments, but of course these are
different protocols running at different layers. To PPP or MP, an IP fragment is just an IP
datagram like any other.
The fragmenting of data in MP introduces a number of complexities that the protocol must
handle. For example, since fragments are being sent roughly concurrently, we need to
identify them with a sequence number to facilitate reassembly. We also need some control
information to identify the first and last fragments. A special frame format is used for MP
fragments to carry this extra information, which I describe in the section on PPP frame
formats. That topic also contains more information about how fragmenting is accomplished,
as well as an illustration that demonstrates how it works.
Related Information: I also recommend reading the next topic, which describes
two protocols defined after MP to better control how it works: BAP and BACP.
PPP Bandwidth Allocation Protocol (BAP) and Bandwidth Allocation Control
Protocol (BACP)
The PPP Multilink Protocol (MP) described in the previous topic allows multiple links
between a pair of devices, whether physical or in the form of virtual channels, to be
combined into a “fat pipe” (high-capacity channel). This offers tremendous advantages to
many PPP users, as it lets them make optimal use of all their bandwidth, especially for
applications such as Internet connectivity. It's no surprise, then, that MP has become one of
the most popular features of PPP.
The original standard defining MP basically assumed that multiple links would be combined
into a single bundle. For example, if you had two modem links they would both be
connected and then combined, or two B channels in an ISDN link would be combined. After
MP was set up the bundle would be available for either device to use in its entirety.
There's one drawback to this system: the “fat pipe” is always enabled, and in many cases, it
is expensive to have this set up all the time. It often costs more to connect two or more layer
one links than a single one, and it's not always needed. For example, some ISDN services
charge per minute for calls on either of the B channels. In the case of modem dialup there
are per-minute charges in some parts of the world. Even where regular phone calls are
“free”, there is a cost in the form of tying up a phone line. Consider that in many applica-
tions, the amount of bandwidth needed varies over time.
It would be better if we could set up MP so that it could dynamically add links to the bundle
when needed, such as when we decided to download some large files, and then automati-
cally drop them when no longer required. This enhancement to the basic MP package was
provided in the form of a pair of new protocols described in RFC 2125: