Skip to content

Commit

Permalink
l2tp: Add L2TPv3 protocol support
Browse files Browse the repository at this point in the history
The L2TPv3 protocol changes the layout of the L2TP packet
header. Tunnel and session ids change from 16-bit to 32-bit values,
data sequence numbers change from 16-bit to 24-bit values and PPP-specific
fields are moved into protocol-specific subheaders.

Although this patch introduces L2TPv3 protocol support, there are no
userspace interfaces to create L2TPv3 sessions yet.

Signed-off-by: James Chapman <[email protected]>
Reviewed-by: Randy Dunlap <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
  • Loading branch information
j-c-h authored and davem330 committed Apr 3, 2010
1 parent 9345471 commit f7faffa
Show file tree
Hide file tree
Showing 4 changed files with 484 additions and 148 deletions.
25 changes: 25 additions & 0 deletions net/l2tp/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -19,10 +19,35 @@ menuconfig L2TP
connections. L2TP is also used as a VPN protocol, popular
with home workers to connect to their offices.

L2TPv3 allows other protocols as well as PPP to be carried
over L2TP tunnels. L2TPv3 is defined in RFC 3931
<http://www.ietf.org/rfc/rfc3931.txt>.

The kernel component handles only L2TP data packets: a
userland daemon handles L2TP the control protocol (tunnel
and session setup). One such daemon is OpenL2TP
(http://openl2tp.org/).

If you don't need L2TP, say N. To compile all L2TP code as
modules, choose M here.

config L2TP_V3
bool "L2TPv3 support (EXPERIMENTAL)"
depends on EXPERIMENTAL && L2TP
help
Layer Two Tunneling Protocol Version 3

From RFC 3931 <http://www.ietf.org/rfc/rfc3931.txt>.

The Layer Two Tunneling Protocol (L2TP) provides a dynamic
mechanism for tunneling Layer 2 (L2) "circuits" across a
packet-oriented data network (e.g., over IP). L2TP, as
originally defined in RFC 2661, is a standard method for
tunneling Point-to-Point Protocol (PPP) [RFC1661] sessions.
L2TP has since been adopted for tunneling a number of other
L2 protocols, including ATM, Frame Relay, HDLC and even raw
ethernet frames.

If you are connecting to L2TPv3 equipment, or you want to
tunnel raw ethernet frames using L2TP, say Y here. If
unsure, say N.
Loading

0 comments on commit f7faffa

Please sign in to comment.