英文原义:
Layer 2 Tunneling Protocol
中文释义:
第二层隧道协议
注解:
该协议是一种工业标准的
Internet
隧道协议,功能大致和
PPTP
协议类似,比如同样可以对网络数据流进行加密。不过也有不同之处,比如
PPTP
要求网络为
IP
网络,
L2TP
要求面向数据包的点对点连接;
PPTP
使用单一隧道,
L2TP
使用多隧道;
L2TP
提供包头压缩、隧道验证,而
PPTP
不支持。
L2TP
协议是由
IETF
起草,微软、
Ascend
、
Cisco
、
3COM
等公司参予制定的二层隧道协议,它结合了
PPTP
和
L2F
两种二层隧道协议的优点,为众多公司所接受,已经成为
IETF
有关
2
层通道协议的工业标准,基于
微软
的点对点隧道协议
(PPTP)
和思科
2
层转发协议
(L2F)
之上的,被一个因特网服务提供商和公司使用使这个虚拟私有网络的操作能够通过因特网。
[编辑本段]
主要应用
在
VPN
连接中要设置
L2TP
连接,方法同
PPTP VPN
设置,同样是在
VPN
连接属性窗口的
“
网络
”
选项卡中,将
VPN
类型设置为
“L2TP IPSec VPN”
即可。
第二层隧道协议(
L2TP
)是用来整合多协议拨号服务至现有的因特网服务提供商点。
PPP
定义了多协议跨越第二层点对点链接的一个封装机制。特别地,用户通过使用众多技术之一(如:拨号
POTS
、
ISDN
、
ADSL
等)获得第二层连接到网络访问服务器(
NAS
),然后在此连接上运行
PPP
。在这样的配置中,第二层终端点和
PPP
会话终点处于相同的物理设备中(如:
NAS
)。
L2TP
扩展了
PPP
模型,允许第二层和
PPP
终点处于不同的由包交换网络相互连接的设备来。通过
L2TP
,用户在第二层连接到一个访问集中器(如:调制解调器池、
ADSL DSLAM
等),然后这个集中器将单独得的
PPP
帧隧道到
NAS
。这样,可以把
PPP
包的实际处理过程与
L2
连接的终点分离开来。
对于这样的分离,其明显的一个好处是,
L2
连接可以在一个(本地)电路集中器上终止,然后通过共享网络如帧中继电路或英特网扩展逻辑
PPP
会话,而不用在
NAS
上终止。从用户角度看,直接在
NAS
上终止
L2
连接与使用
L2TP
没有什么功能上的区别。
L2TP
协议也用来解决
“
多连接联选组分离
”
问题。多链接
PPP
,一般用来集中
ISDN B
通道,需要构成多链接捆绑的所有通道在一个单网络访问服务器(
NAS
)上组合。因为
L2TP
使得
PPP
会话可以出现在接收会话的物理点之外的位置,它用来使所有的通道出现在单个的
NAS
上,并允许多链接操作,即使是在物理呼叫分散在不同物理位置的
NAS
上的情况下。
L2TP
使用以下两种信息类型,即控制信息和数据信息。控制信息用于隧道和呼叫的建立、维持和清除。数据信息用于封装隧道所携带的
PPP
帧。控制信息利用
L2TP
中的一个可靠控制通道来确保发送。当发生包丢失时,不转发数据信息。
[编辑本段]
协议结构
L2TP
命令头
:
12 16 32 bit
T L X X S X O P X X X X VER Length
Tunnel ID Session ID
Ns
(
opt
)
Nr
(
opt
)
Offset Size
(
opt
)
Offset Pad
(
opt
)
T �D T
位表示信息类型。若是数据信息,该值为
0
;若是控制信息,该值为
1
。
L �D
当设置该字段时,说明
Length
字段存在,表示接收数据包的总长。对于控制信息,必须设置该值。
X �D X
位为将来扩张预留使用。在导出信息中所有预留位被设置为
0
,导入信息中该值忽略。
S �D
如果设置
S
位,那么
Nr
字段和
Ns
字段都存在。对于控制信息,
S
位必须设置。
O �D
当设置该字段时,表示在有效负载信息中存在
Offset Size
字段。对于控制信息,该字段值设为
0
。
P
-
如果
Priority
(
P
)位值为
1
,表示该数据信息在其本地排队和传输中将会得到优先处理。
Ver �D Ver
位的值总为
002
。它表示一个版本
1 L2TP
信息。
Length �D
信息总长,包括头、信息类型
AVP
以及另外的与特定控制信息类型相关的
AVPs
。
Tunnel ID �D
识别控制信息应用的
Tunnel
。如果对等结构还没有接收到分配的
Tunnel ID
,那么
Tunnel ID
必须设置为
0
。一旦接收到分配的
Tunnel ID
,所有更远的数据包必须和
Tunnel ID
一起被发送。
Call ID �D
识别控制信息应用的
Tunnel
中的用户会话。如果控制信息在
Tunnel
中不应用单用户会话(例如,一个
Stop-Control-Connection-Notification
信息
)
,
Call ID
必须设置为
0
。
Nr �D
期望在下一个控制信息中接收到的序列号。
Ns �D
数据或控制信息的序列号。
Offset Size & Pad �D
该字段规定通过
L2F
协议头的字节数,协议头是有效负载数据起始位置。
Offset Padding
中的实际数据并没有定义。如果
Offset
字段当前存在,那么
L2TP
头
Offset Padding
的最后八位字节后结束。
[编辑本段]
与
PPTP
的不同
PPTP
和
L2TP
都使用
PPP
协议对数据进行封装,然后添加附加包头用于数据在互联网络上的传输。尽管两个协议非常相似,但是仍存在以下几方面的不同:
1.PPTP
要求互联网络为
IP
网络。
L2TP
只要求隧道媒介提供面向数据包的点对点的连接。
L2TP
可以在
IP
(使用
UDP
),桢中继永久虚拟电路(
PVCs),X.25
虚拟电路(
VCs
)或
ATM VCs
网络上使用。
2.PPTP
只能在两端点间建立单一隧道。
L2TP
支持在两端点间使用多隧道。使用
L2TP
,用户可以针对不同的服务质量创建不同的隧道。
3.L2TP
可以提供包头压缩。当压缩包头时,系统开销(
overhead
)占用
4
个字节,而
PPTP
协议下要占用
6
个字节。
4.L2TP
可以提供隧道验证,而
PPTP
则不支持隧道验证。但是当
L2TP
或
PPTP
与
IPSEC
共同使用时,可以由
IPSEC
提供隧道验证,不需要在第
2
层协议上验证隧道