Multilink PPP Download Speeds With Round-Robin Packets

Michael MacLeod mikemacleod at gmail.com
Sat Jan 19 13:47:29 PST 2008


On Jan 16, 2008 5:21 PM, Alexander Motin <mav at freebsd.org> wrote:
> Mpd supports both. There were some mistakes in multilink transmission
> part of ng_ppp kernel module working in splitting mode that in some
> cases could lead to ineffective packet distribution, but they were fixed
> 8 months ago at 6-STABLE.

I updated my gateway using freebsd-update, and rebuilt my kernel after
making sure I had the latest sources. I proceeded to install mpd4 and
try out the configuration Nikos linked to. So far I haven't had any
success. I tried adding 'set bundle enable round-robin' since that's
how this is going to work on the download side of things, still
without success.

mpd.conf:
------------------------------------------------------------
startup:
        set console ip 127.0.0.1
        set console user username password
        set console open

default:
        load PPPoE
        open

PPPoE:
        new -i ng0 sam l0 l1
        set auth authname username at teksavvy.com
        set auth password password
        set bundle enable multilink
        set bundle enable round-robin
        set iface idle 0
        set iface route default
------------------------------------------------------------

mpd.links:
------------------------------------------------------------
l0:
        set link type pppoe
#        set link mtu 1486
#        set link mru 1492
        set pppoe iface xl0
        set pppoe disable incoming
        set pppoe enable originate

l1:
        set link type pppoe
#        set link mtu 1486
#        set link mru 1492
        set pppoe iface xl1
        set pppoe disable incoming
        set pppoe enable originate
------------------------------------------------------------

and finally, the log file:
------------------------------------------------------------
Jan 19 16:34:26 gateway mpd: Multi-link PPP daemon for FreeBSD
Jan 19 16:34:26 gateway mpd:
Jan 19 16:34:26 gateway mpd: process 1862 started, version 4.3
(root at localhost 18:58 16-Jan-2008)
Jan 19 16:34:26 gateway mpd: CONSOLE: listening on 127.0.0.1 5005
Jan 19 16:34:26 gateway mpd: [sam] using interface ng0
Jan 19 16:34:26 gateway mpd: [l0] link: OPEN event
Jan 19 16:34:26 gateway mpd: [l0] LCP: Open event
Jan 19 16:34:26 gateway mpd: [l0] LCP: state change Initial --> Starting
Jan 19 16:34:26 gateway mpd: [l0] LCP: LayerStart
Jan 19 16:34:26 gateway mpd: [l0] PPPoE: Connecting to '*'
Jan 19 16:34:26 gateway mpd: PPPoE: rec'd ACNAME "bas3-toronto02"
Jan 19 16:34:26 gateway mpd: [l0] PPPoE: connection successful
Jan 19 16:34:26 gateway mpd: [l0] link: UP event
Jan 19 16:34:26 gateway mpd: [l0] link: origination is local
Jan 19 16:34:26 gateway mpd: [l0] LCP: Up event
Jan 19 16:34:26 gateway mpd: [l0] LCP: state change Starting --> Req-Sent
Jan 19 16:34:26 gateway mpd: [l0] LCP: SendConfigReq #1
Jan 19 16:34:26 gateway mpd:  PROTOCOMP
Jan 19 16:34:26 gateway mpd:  MRU 1492
Jan 19 16:34:26 gateway mpd:  MAGICNUM 6a64dffc
Jan 19 16:34:26 gateway mpd:  MP MRRU 1600
Jan 19 16:34:26 gateway mpd:  MP SHORTSEQ
Jan 19 16:34:26 gateway mpd:  ENDPOINTDISC [802.1] 00 0e 0c dd 03 9b
Jan 19 16:34:26 gateway mpd: [l0] LCP: rec'd Configure Request #237 (Req-Sent)
Jan 19 16:34:26 gateway mpd:  MRU 1492
Jan 19 16:34:26 gateway mpd:  AUTHPROTO PAP
Jan 19 16:34:26 gateway mpd:  MAGICNUM 4e7ea6a0
Jan 19 16:34:26 gateway mpd: [l0] LCP: SendConfigAck #237
Jan 19 16:34:26 gateway mpd:  MRU 1492
Jan 19 16:34:26 gateway mpd:  AUTHPROTO PAP
Jan 19 16:34:26 gateway mpd:  MAGICNUM 4e7ea6a0
Jan 19 16:34:26 gateway mpd: [l0] LCP: state change Req-Sent --> Ack-Sent
Jan 19 16:34:26 gateway mpd: [l0] LCP: rec'd Configure Reject #1 (Ack-Sent)
Jan 19 16:34:26 gateway mpd:  MP MRRU 1600
Jan 19 16:34:26 gateway mpd:  MP SHORTSEQ
Jan 19 16:34:26 gateway mpd:  ENDPOINTDISC [802.1] 00 0e 0c dd 03 9b
Jan 19 16:34:26 gateway mpd: [l0] LCP: SendConfigReq #2
Jan 19 16:34:26 gateway mpd:  PROTOCOMP
Jan 19 16:34:26 gateway mpd:  MRU 1492
Jan 19 16:34:26 gateway mpd:  MAGICNUM 6a64dffc
Jan 19 16:34:26 gateway mpd: [l0] LCP: rec'd Configure Ack #2 (Ack-Sent)
Jan 19 16:34:26 gateway mpd:  PROTOCOMP
Jan 19 16:34:26 gateway mpd:  MRU 1492
Jan 19 16:34:26 gateway mpd:  MAGICNUM 6a64dffc
Jan 19 16:34:26 gateway mpd: [l0] LCP: state change Ack-Sent --> Opened
Jan 19 16:34:26 gateway mpd: [l0] LCP: auth: peer wants PAP, I want nothing
Jan 19 16:34:26 gateway mpd: [l0] PAP: using authname "username at teksavvy.com"
Jan 19 16:34:26 gateway mpd: [l0] PAP: sending REQUEST len:33
Jan 19 16:34:26 gateway mpd: [l0] LCP: LayerUp
Jan 19 16:34:27 gateway mpd: [l0] LCP: rec'd Configure Request #0 (Opened)
Jan 19 16:34:27 gateway mpd:  MRU 1492
Jan 19 16:34:27 gateway mpd:  MP MRRU 32719
Jan 19 16:34:27 gateway mpd:  ENDPOINTDISC [LOCAL] 34 36 30 37 32 31
30 30 39 34 00 00 00 00 00
Jan 19 16:34:27 gateway mpd:  AUTHPROTO PAP
Jan 19 16:34:27 gateway mpd:  MAGICNUM 5ec55af5
Jan 19 16:34:27 gateway mpd: [l0] LCP: LayerDown
Jan 19 16:34:27 gateway mpd: [l0] LCP: SendConfigReq #3
Jan 19 16:34:27 gateway mpd:  PROTOCOMP
Jan 19 16:34:27 gateway mpd:  MRU 1492
Jan 19 16:34:27 gateway mpd:  MAGICNUM 6a64dffc
Jan 19 16:34:27 gateway mpd: [l0] LCP: SendConfigNak #0
Jan 19 16:34:27 gateway mpd:  MP MRRU 1600
Jan 19 16:34:27 gateway mpd: [l0] LCP: state change Opened --> Req-Sent
Jan 19 16:34:27 gateway mpd: [l0] AUTH: Cleanup
Jan 19 16:34:27 gateway mpd: [l0] LCP: rec'd Configure Nak #3 (Req-Sent)
Jan 19 16:34:27 gateway mpd:  MP MRRU 32719
Jan 19 16:34:27 gateway mpd:  ENDPOINTDISC [NULL]
Jan 19 16:34:27 gateway mpd: [l0] LCP: SendConfigReq #4
Jan 19 16:34:27 gateway mpd:  PROTOCOMP
Jan 19 16:34:27 gateway mpd:  MRU 1492
Jan 19 16:34:27 gateway mpd:  MAGICNUM 6a64dffc
Jan 19 16:34:27 gateway mpd: [l0] LCP: rec'd Configure Request #1 (Req-Sent)
Jan 19 16:34:27 gateway mpd:  MRU 1492
Jan 19 16:34:27 gateway mpd:  MP MRRU 1600
Jan 19 16:34:27 gateway mpd:  ENDPOINTDISC [LOCAL] 34 36 30 37 32 31
30 30 39 34 00 00 00 00 00
Jan 19 16:34:27 gateway mpd:  AUTHPROTO PAP
Jan 19 16:34:27 gateway mpd:  MAGICNUM 5ec55af5
Jan 19 16:34:27 gateway mpd: [l0] LCP: SendConfigAck #1
Jan 19 16:34:27 gateway mpd:  MRU 1492
Jan 19 16:34:27 gateway mpd:  MP MRRU 1600
Jan 19 16:34:27 gateway mpd:  ENDPOINTDISC [LOCAL] 34 36 30 37 32 31
30 30 39 34 00 00 00 00 00
Jan 19 16:34:27 gateway mpd:  AUTHPROTO PAP
Jan 19 16:34:27 gateway mpd:  MAGICNUM 5ec55af5
Jan 19 16:34:27 gateway mpd: [l0] LCP: state change Req-Sent --> Ack-Sent
Jan 19 16:34:27 gateway mpd: [l0] LCP: rec'd Configure Ack #4 (Ack-Sent)
Jan 19 16:34:27 gateway mpd:  PROTOCOMP
Jan 19 16:34:27 gateway mpd:  MRU 1492
Jan 19 16:34:27 gateway mpd:  MAGICNUM 6a64dffc
Jan 19 16:34:27 gateway mpd: [l0] LCP: state change Ack-Sent --> Opened
Jan 19 16:34:27 gateway mpd: [l0] LCP: auth: peer wants PAP, I want nothing
Jan 19 16:34:27 gateway mpd: [l0] PAP: using authname "username at teksavvy.com"
Jan 19 16:34:27 gateway mpd: [l0] PAP: sending REQUEST len:33
Jan 19 16:34:27 gateway mpd: [l0] LCP: LayerUp
Jan 19 16:34:27 gateway mpd: [l0] LCP: rec'd Terminate Request #2 (Opened)
Jan 19 16:34:27 gateway mpd: [l0] LCP: state change Opened --> Stopping
Jan 19 16:34:27 gateway mpd: [l0] AUTH: Cleanup
Jan 19 16:34:27 gateway mpd: [l0] LCP: SendTerminateAck #5
Jan 19 16:34:27 gateway mpd: [l0] LCP: LayerDown
Jan 19 16:34:27 gateway mpd: [l0] LCP: rec'd Terminate Request #238 (Stopping)
Jan 19 16:34:27 gateway mpd: [l0] LCP: SendTerminateAck #6
Jan 19 16:34:27 gateway mpd: [l0] PPPoE: connection closed
Jan 19 16:34:27 gateway mpd: [l0] link: DOWN event
Jan 19 16:34:27 gateway mpd: [l0] LCP: Close event
Jan 19 16:34:27 gateway mpd: [l0] LCP: state change Stopping --> Closing
Jan 19 16:34:27 gateway mpd: [l0] LCP: Down event
Jan 19 16:34:27 gateway mpd: [l0] LCP: LayerFinish
Jan 19 16:34:27 gateway mpd: [l0] LCP: state change Closing --> Initial
Jan 19 16:34:35 gateway mpd: caught fatal signal term
Jan 19 16:34:35 gateway mpd: [sam] IFACE: Close event
Jan 19 16:34:35 gateway mpd: [sam] IPCP: Close event
Jan 19 16:34:37 gateway mpd: process 1862 terminated


More information about the freebsd-net mailing list