PPP,PPPoE,PPTP,L2TP-VPN简介(之四)- PPTP和L2TP简介

在前文中,已经为读者介绍了PPPoE的场景和协议。与PPPoE类似的PPP frame的常见封装方式还有PPTP和L2TP,同样,他们也被用在虚拟拨号的应用场景中。

PPTP是来自于微软为首的几个公司的虚拟拨号协议。同PPPoE虚拟拨号的一样,核心思路也是分为了两部分,先协商一条虚拟的点对点“链路”,然后在此链路上传输PPP封装的报文。PPTP的链路协商报文是使用IP协议的TCP头来封装PPTP报文的(TCP为其保证了可靠性和重传机制),通过协商建立好连接后,封装在PPTP头内的PPP报文是通过IP协议的GRE头来封装的。所以,PPTP有一个天生的劣势,就是它只能承载在IP之上(当然,如果需要,你也可以再将IP承载在其他协议),我觉得,这就是依赖TCP来保证可靠传输的代价。

而L2TP就要灵活的多。L2TP是思科公司的L2F协议的进化(很多地方介绍L2TP是L2F和PPTP二者合二为一的进化,但是从协议的设计来看,我觉得L2TP与L2F要比与PPTP显得亲近的多)。与PPTP不同,L2TP的链路控制报文和封装PPP数据报文用L2TP头封装后,同意使用一种方式传输 -- (如果是IP协议承载,就封装在UDP头内,此外,也可以封装在FrameRelay,ATM,X.25等协议)。L2TP的链路控制报文的保序、重传等可靠性是通过自己的L2TP头内的报文序列号来控制实现的。

L2TP的一条点对点tunnel可以承载n条PPP会话,在一条tunnel不同的会话可以使用会话ID来互相区分,而PPTP只能承载一路会话。
L2TP在IP网络上一般都使用IPSEC来进行加密实现安全性。PPTP有微软设计的MPP加密方式来加密。

此文主要点出了L2TP和PPTP的各自特点和基本应用方式,对于L2TP和PPTP的协议细节,网络上资料很多,RFC的讲述非常翔实,本文就不作过多的讲述了。如果有对其某些方面感兴趣的朋友,欢迎和Hans一起讨论。

参考资料:

Understanding PPTP

Point-to-Point Tunneling Protocol (PPTP)

CISCO L2F RFC

L2TP wikipedia

L2TP Encyclopedia

发表评论

电子邮件地址不会被公开。 必填项已用 * 标注

*

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>