Bridging · Topic 4 of 4

Multilink Protocol and MLPPP

Learn how the PPP Multilink Protocol and MRRU work on RouterOS, how MLPPP bundles PPPoE links into one interface, and what must match on both ends.

  • 5 min
In a nutshell
  • The Multilink Protocol fragments PPP packets and reassembles them at the far end.
  • MRRU is the setting that enables it.
  • MRRU must be set on both ends.

What it is

The Multilink Protocol splits PPP packets into fragments, and MLPPP uses it to bundle several links into one.

A single PPP link has a size limit for each packet. Multilink lets a packet be cut into pieces, sent, and put back together at the far end. When the pieces travel over several links at once, the result is a bundle with more bandwidth than one link.

The feature is switched on with a setting called MRRU.

Router AMRRU setlink oneRouter BMRRU setRouter Alink twoRouter Bone logical interfaceBundlemore bandwidth

How it works

MRRU switches on multilink, and a bundle forms when more than one link joins the same session.

What MRRU means

MRRU stands for maximum receive reconstructed unit. It is the largest packet the receiver is willing to put back together from fragments.

On RouterOS, mrru is a setting on PPP interfaces such as PPPoE, PPTP and L2TP clients and servers. When it is not set, multilink is off. When it is set, the link can carry packets larger than its normal MTU by fragmenting them.

Both ends must set it. If only one end does, multilink is not negotiated.

Multilink on a single link

A single link with MRRU set can already carry larger frames than its MTU. This is why the BCP page used mrru=1600: a full Ethernet frame is split, sent and rebuilt.

This use needs no bundle. It only needs MRRU on both ends.

MLPPP, a bundle of links

MLPPP is multilink PPP used across more than one link. A common case is two PPPoE connections to the same server, one on each physical interface.

# Server
/interface pppoe-server server set [find service-name=isp] mrru=1600

# Client
/interface pppoe-client add name=ml1 interface=ether1 user=u1 password=p1 mrru=1600 disabled=no
/interface pppoe-client add name=ml2 interface=ether2 user=u1 password=p1 mrru=1600 disabled=no

Both client interfaces use the same user. The server recognises that they belong together and joins them into one bundle. The bundle appears as a single interface with a single address.

What must match

ItemRequirement
mrruSet on both the client and the server.
User name and passwordThe same account on every link of the bundle.
Session limitIf the second link is refused, check that the profile does not block a second session for the user.
ServerAll links go to the same server.

If a second link is refused, check the only-one setting in the profile, because it limits a user to one session.

Mangle MSS rules

Many setups clamp the TCP maximum segment size (MSS) with a mangle rule, so packets fit into a small tunnel MTU. With MRRU set, large packets are fragmented and rebuilt instead, so that clamping is not needed. Remove or disable any such rule that applies to the multilink interface.

/ip firewall mangle print where action=change-mss

The rules found by this command use action=change-mss. Disable the ones that match traffic through the bundle.

How traffic is shared

The router fragments each packet and spreads the pieces across the links. The far end reassembles them in order.

This can improve throughput, but gains are not perfect. Fragmentation adds overhead, and reassembly must wait for the slowest link.

Failure behaviour

If one link of the bundle drops, the bundle stays up on the remaining links with less bandwidth. When the link returns, it can join the bundle again.

Where MLPPP is used

MLPPP is useful when one link is too slow and a second line to the same provider is cheaper than a faster single line. It also adds some resilience.

For several independent uplinks to different providers, interface ECMP from the PPPoE chapter is the better tool. MLPPP needs a server at the other end that supports it.

Verification

/interface pppoe-client print
/ppp active print
/interface print

Each client link shows its own status. The server shows the bundle as one active session. A throughput test across the bundle shows whether both links are contributing.

What to remember for the exam

Seven facts cover most multilink questions.

  • The Multilink Protocol fragments PPP packets and reassembles them at the far end.
  • MRRU is the setting that enables it.
  • MRRU must be set on both ends.
  • MLPPP bundles several links, such as two PPPoE connections, into one logical interface.
  • All links in a bundle use the same user and go to the same server.
  • If a second link is refused, check that the profile allows more than one session for the user.
  • MRRU also lets a single link carry frames larger than its MTU.
Exam tip

If a bundle forms only one link, check mrru on both ends and the only-one setting in the profile.

Common mistakes

These four errors appear again and again.

Setting MRRU on one end only. Multilink is not negotiated, and the links run separately.

Using different accounts. The server cannot tell that the links belong together.

Blocking the second session. A profile that limits the user to one session (only-one=yes) can refuse the second link.

Expecting double speed. Overhead and reassembly mean the gain is less than the sum of the links.

Watch out

Multilink needs support on the server side. A provider server that does not accept MRRU cannot form a bundle.

Check yourself

Work through these three questions.

  • What does the mrru setting do?

    It enables the Multilink Protocol, so packets can be fragmented and reassembled. It must be set on both ends.

  • What makes two PPPoE connections form one MLPPP bundle?

    Both links use the same user and the same server, with mrru set on both ends.

  • What happens to a bundle when one link drops?

    The bundle stays up on the remaining links, with less bandwidth.

Topic 4 of 4 in Bridging

Test yourself on Bridging

The full MikroTik MTCUME question bank has 482 questions, with timed practice exams and an explanation for every answer.

This study guide is independent and is not affiliated with, endorsed by, or sponsored by MikroTik. Vendor names, certification names and exam codes are trademarks of their respective owners and are used for identification only.