ACCEL-PPP compared to L2TPNS

L2TP related questions
tj-19
Posts: 36
Joined: 10 Jun 2019, 20:42

ACCEL-PPP compared to L2TPNS

Post by tj-19 »

Hi All,

I was wondering if anyone has compared the L2TP LNS performance of ACCEL-PPP to L2TPNS http://git.sameswireless.fr/l2tpns.git?

I'm looking for a fast and reliable replacement to L2TPNS that is multi-threaded and regularly updated.

Is the L2TP Kernel Mode support using the TUN/TAP interface provided by the Linux kernel to receive and send packets?

Does ACCEL-PPP require a separate interface per session like l2tpd does?

Does ACCEL-PPP use a FIFO packet scheduler to maintain packet order?

Is there any support for clustering and seamless fail-over like that provided by L2TPNS?

Is ACCEL-PPP modular? I.e. can you just enable what you need like L2TP LNS support only.

Does the SNMP support provide MIBs which include the number of active sessions?

Sorry for all the questions.
dimka88
Posts: 866
Joined: 13 Oct 2014, 05:51
Contact:

Re: ACCEL-PPP compared to L2TPNS

Post by dimka88 »

Hi, accel-ppp is modular, and support own SNMP MIBs which also include number of active sessions. https://github.com/xebd/accel-ppp/blob/ ... PP-MIB.txt

Code: Select all

statPPPStarting OBJECT-TYPE
    SYNTAX      INTEGER
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
			"count of sessions which are
			in starting phase"
    ::= { statPPP 1 }

statPPPActive OBJECT-TYPE
    SYNTAX      INTEGER
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
			"count of active sessions"
    ::= { statPPP 2 }

statPPPFinishing OBJECT-TYPE
    SYNTAX      INTEGER
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
			"count of active which are
			in finishing phase"
    ::= { statPPP 3 }
What about performance? All bottleneck only network card, I saw more 10k various connection type (pppoe, l2tp, pptp) per server.
Accel-ppp creates pppX interface per-session (kernel space).
For implement fail-over I think only used DNS roud robin records.
tj-19
Posts: 36
Joined: 10 Jun 2019, 20:42

Re: ACCEL-PPP compared to L2TPNS

Post by tj-19 »

Hi,

This sounds very good.

What about the packet scheduling policy, how do you guarantee packet order for traffic inside each L2TP session. Is there a FIFO (Frist In First Out) QoS process?

In L2TPNS servers work in a cluster using a multicast address to communicate state information among members.

In the event, a master server goes down a secondary is elected the new master and sessions are not dropped.

From the users perspective, you might see a few dropped packets, depending upon the timeout set in the cluster but overall the active sessions are not dropped.

How is the state of each L2TP session stored in ACCEL-PPP? If it is tracked in a backend database could you use UCARP or Keepalived to set-up a shared VRRP interface between multiple L2TP servers?

Can you also use IBGP to announce a route for each L2TP session?

Can you adjust the multi-read count for the L2TP tunnels to avoid unnecessary CPU overhead for busy servers?

Sorry for all the questions and thanks for your inputs.
dimka88
Posts: 866
Joined: 13 Oct 2014, 05:51
Contact:

Re: ACCEL-PPP compared to L2TPNS

Post by dimka88 »

About QoS, accel-ppp has many ways customisation policy. Often used builtin shaper which has upload (htb or police) and download (htb or tbf), but if you need more customisation, accel-ppp may execute script with your own rules on start and down sessions.

In accel-ppp currently not implemented "cluster" but exist some work on this way.

I think you may use VRRP for failover, but currently sessions reconnect.

About dynamic routing, accel-ppp hasn't any routing protocol, it just create static route. For this (dynamic routing) always used Bird, Quagga or FRRouting with various protocol (BGP,OSPF,etc.)

I did not understand about "adjust the multi-read count for the L2TP tunnels".
tj-19
Posts: 36
Joined: 10 Jun 2019, 20:42

Re: ACCEL-PPP compared to L2TPNS

Post by tj-19 »

Hi,

I specifically wondered about FIFO scheduling because I have had issues with packet order and jitter (variation in the delay of packets) in L2TP tunnels when a server is under load using other solutions.

It's good to hear you are developing a Cluster based solution. Is there a roadmap for this?

In terms of Dynamic routing, you mentioned ACCEL-PPP only supports static routing.

If I deploy ACCEL-PPP on multiple servers using a round-robin distribution for incoming L2TP sessions, how will the upstream routers know where to find the individual sessions, i.e. route to a specific LNS?

Thanks again for your valued inputs.
dimka88
Posts: 866
Joined: 13 Oct 2014, 05:51
Contact:

Re: ACCEL-PPP compared to L2TPNS

Post by dimka88 »

Sorry, but roadmap not ready. I hope we will have more time for this on this year.

Accel-ppp just create static routes, but for dynamic routing you may use different dynamic routing daemons, like as Bird, Quagga or FRRouting which works with routing tables on servers no difference which protocol it be used iBGP or OSPF. Also accel-ppp support netns (VRF).
tj-19
Posts: 36
Joined: 10 Jun 2019, 20:42

Re: ACCEL-PPP compared to L2TPNS

Post by tj-19 »

Hi,

Thanks for your inputs.

I am compiling at the moment for Debian Stretch.

If I just need L2TP as a LNS, can I skip installing the drivers for IPOE, VLAN_MON and PPTP?

Are there any other considerations for the configuration specifically sliming down the install?
dimka88
Posts: 866
Joined: 13 Oct 2014, 05:51
Contact:

Re: ACCEL-PPP compared to L2TPNS

Post by dimka88 »

Of course, if you don't need this modules, don't install its, and also you don't need kernel-headers.
https://accel-ppp-demo.readthedocs.io/e ... ebian.html
tj-19
Posts: 36
Joined: 10 Jun 2019, 20:42

Re: ACCEL-PPP compared to L2TPNS

Post by tj-19 »

If I have a number of ACCEL-PPP LNS receiving L2TP sessions from various LTS.

What's the best way to redistribute the kernel/PPP routes from each ACCEL-PPP LNS, so that my BGP routers know where to route traffic for each L2TP session?

Do I need to install Quagga on each ACCEL-PPP LNS and run IBGP?
dimka88
Posts: 866
Joined: 13 Oct 2014, 05:51
Contact:

Re: ACCEL-PPP compared to L2TPNS

Post by dimka88 »

Hello, you need iBGP daemon routing on all LNS. I think bird have more performance than quagga.
Post Reply