Alongside this, add a bit more of a description of the PPP and ETH pseudowire types.
Signed-off-by: Tom Parkin <tpar...@katalix.com> --- Documentation/networking/l2tp.rst | 69 ++++++++++++++++++++++--------- 1 file changed, 49 insertions(+), 20 deletions(-) diff --git a/Documentation/networking/l2tp.rst b/Documentation/networking/l2tp.rst index 498b382d25a0..76df531882e6 100644 --- a/Documentation/networking/l2tp.rst +++ b/Documentation/networking/l2tp.rst @@ -119,6 +119,26 @@ l2tp" commands). If ``L2TP_ATTR_FD`` is given, it must be a socket fd that is already bound and connected. There is more information about unmanaged tunnels later in this document. +L2TP sessions, or pseudowires, may be of several different types. The +``L2TP_CMD_SESSION_CREATE`` command specifies the pseudowire type to +be created. + +================== ================================================== +Pseudowire type Description +================== ================================================== +ETH L2TPv3 only. Pseudowire carries Ethernet frames. + The session instance is associated with a virtual + network device ``l2tpethN``. +PPP Pseudowire carries PPP frames. The session instance + is associated with a virtual network device + ``pppN`` which terminates the PPP session locally. +PPP_AC Pseudowire carries PPP frames which are switched + from incoming PPPoE frames into the L2TP tunnel, + allowing the PPP session to be terminated at the + other end of the tunnel. There is no virtual + network device associated with the session instance. +================== ================================================== + ``L2TP_CMD_TUNNEL_CREATE`` attributes:- ================== ======== === @@ -177,26 +197,35 @@ CONN_ID N Identifies the tunnel id to be queried. ``L2TP_CMD_SESSION_CREATE`` attributes:- -================== ======== === -Attribute Required Use -================== ======== === -CONN_ID Y The parent tunnel id. -SESSION_ID Y Sets the session id. -PEER_SESSION_ID Y Sets the parent session id. -PW_TYPE Y Sets the pseudowire type. -DEBUG N Debug flags. -RECV_SEQ N Enable rx data sequence numbers. -SEND_SEQ N Enable tx data sequence numbers. -LNS_MODE N Enable LNS mode (auto-enable data sequence - numbers). -RECV_TIMEOUT N Timeout to wait when reordering received - packets. -L2SPEC_TYPE N Sets layer2-specific-sublayer type (L2TPv3 - only). -COOKIE N Sets optional cookie (L2TPv3 only). -PEER_COOKIE N Sets optional peer cookie (L2TPv3 only). -IFNAME N Sets interface name (L2TPv3 only). -================== ======== === +==================== ======== === +Attribute Required Use +==================== ======== === +CONN_ID Y The parent tunnel id. +SESSION_ID Y Sets the session id. +PEER_SESSION_ID Y Sets the parent session id. +PW_TYPE Y Sets the pseudowire type. +DEBUG N Debug flags. +RECV_SEQ N Enable rx data sequence numbers. +SEND_SEQ N Enable tx data sequence numbers. +LNS_MODE N Enable LNS mode (auto-enable data sequence + numbers). +RECV_TIMEOUT N Timeout to wait when reordering received + packets. +L2SPEC_TYPE N Sets layer2-specific-sublayer type (L2TPv3 + only). +COOKIE N Sets optional cookie (L2TPv3 only). +PEER_COOKIE N Sets optional peer cookie (L2TPv3 only). +IFNAME N Pseudowire-specific parameter: + + - For Ethernet, IFNAME sets the name to be assigned + to the L2TP session network interface. + - For AC/PPPoE, IFNAME specifies the name of the + interface associated with the PPPoE session. + - For PPP pseudowires, IFNAME is ignored. + +PPPOE_SESSION_ID N Sets the PPPoE session ID (L2TPv2 AC/PPPoE only). +PPPOE_PEER_MAC_ADDR N Sets the PPPoE peer MAC address (L2TPv2 AC/PPPoE only). +==================== ======== === For Ethernet session types, this will create an l2tpeth virtual interface which can then be configured as required. For PPP session -- 2.17.1