Thursday, September 5, 2013

Help Please: PPP Multilink

I'm going to try something a little different for this post.  Usually I take something that I've been labbing that I find interesting, or challenging, and document it for memory retention and your reading enjoyment.  This time I've got a config-let for PPP Multilink that I found quite by accident that I don't know is "right" or not.  It works, so that would mean it's right enough, but I'm hoping that someone out there can point me at some supporting documentation that can clarify what the difference is between this method and what I'll call the more traditional method, and why you would use one over the other.



No diagram today either.  This is simply two routers connected together with a serial connection. I have faith that you can visualize this.

First, the way that I consider the "normal" way of configuring PPP Multilink:

interface Multilink 1
 ip address 10.3.4.3 255.255.255.0
 ppp multilink
 ppp multilink group 1
!
interface Serial 0/1/0
 encapsulation ppp
 ppp multilink
 ppp multilink group 1
!

Easy, simple, no problem-o.  Our verification:

R3#sh ppp multilink

Multilink1
  Bundle name: R4
  Remote Endpoint Discriminator: [1] R4
  Local Endpoint Discriminator: [1] R3
  Bundle up for 00:03:12, total bandwidth 1544, load 1/255
  Receive buffer limit 12000 bytes, frag timeout 1000 ms
    0/0 fragments/bytes in reassembly list
    0 lost fragments, 0 reordered
    0/0 discarded fragments/bytes, 0 lost received
    0x0 received sequence, 0x0 sent sequence
  Member links: 1 active, 0 inactive (max not set, min not set)
    Se0/1/0, since 00:03:12
No inactive multilink interfaces
R3#ping 10.3.4.4

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 10.3.4.4, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 28/28/32 ms

Now allow me to show you an alternate method.

multilink virtual-template 1
!
interface virtual-template 1
 ip address 10.1.2.1 255.255.255.0
!
interface s0/1/0
 encapsulation ppp
 ppp multilink
!

That's right.  A PPP Multilink using a Virtual-Template. Neat huh?  Once again we verify:



R1#sh ppp mul

Virtual-Access2
  Bundle name: R2
  Remote Endpoint Discriminator: [1] R2
  Local Endpoint Discriminator: [1] R1
  Bundle up for 00:16:57, total bandwidth 1544, load 1/255
  Receive buffer limit 12192 bytes, frag timeout 1000 ms
    0/0 fragments/bytes in reassembly list
    0 lost fragments, 0 reordered
    0/0 discarded fragments/bytes, 0 lost received
    0x0 received sequence, 0x0 sent sequence
  Member links: 1 (max not set, min not set)
    Se0/1/0, since 00:16:57
No inactive multilink interfaces
R1#ping 10.1.2.2

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 10.1.2.2, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 28/28/32 ms
I'm sure there's good reasons to use one over the other and what the real differences are, but on top they both seem to create a PPP Multilink and provide connectivity.  I could really use someone that's smarter than me to throw me a bone on this one.

I thank you in advance.




3 comments:

  1. I have seem this same thing but using PPP over Frame-Relay

    'frame-relay interface-dlci 201 ppp Virtual-Template1'


    http://networkdongle.wordpress.com/2010/07/23/ppp-over-frame-relay-with-ppp-multilink/

    ReplyDelete
    Replies
    1. Nice example, thanks!

      I'll have to configure that up and take a look at it. On first glance it looks to really be the same as the first method above but you're multilinking VT's instead of serial interfaces, and not using the VT as the multilink interface.

      Delete
    2. Shoot, I didn't realize there was 2 configs there... Very cool. I don't think my two examples above will work together... I'll have to verify that.

      Delete