【原创】L2TP封装详解.docx

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
【原创】L2TP封装详解

L2TP端口为UDP 17011. L2TP控制报文IP网上的L2TP控制消息以UDP数据报形式发送。在Windows 2000实现中,L2TP控制消息即UDP数据报经过IPSec ESP的加密,见下图:由于UDP提供的是无连接的数据包服务,因此L2TP采用将消息序列化的方式来保证L2TP消息的按序递交。在L2TP控制消息中,Next-Received字段(类似于TCP中的确认字段)和Next-Sent字段(类似于TCP中序列号字段)用于维持控制消息的序列化。无序数据包将被丢弃。Next-Received字段和Next-Sent字段同样用于用户传输数据的按序递交和流控制。L2TP支持一条隧道内的多路呼叫。在L2TP的控制消息中以及L2TP数据帧的报头内,Tunnel ID标识了一条隧道而Call ID标识了该隧道内的一路呼叫。2. L2TP协商参数过程:L2TP的PPP LCP协商报文结构:3. L2TP数据报文封装结构L2TP用户传输数据的隧道化过程采用多层封装的方法。下图显示了封装后在隧道中传输的基于IPSec的L2TP数据包格式。1)L2TP封装初始PPP有效载荷如IP数据报、IPX数据报或NetBEUI帧等首先经过PPP报头和L2TP报头的封装。2)UDP封装L2TP帧进一步添加UDP报头进行UDP封装,在UDP报头中,源端和目的端端口号均设置为1701。3)IPSec封装基于IPSec安全策略,UDP消息通过添加IPSec封装安全负载ESP报头、报尾和IPSec认证报尾(Auth trailer),进行IPSec加密封装。4)IP封装在IPSec数据报外再添加IP报头进行IP封装,IP报头中包含VPN客户机和服务器的源端和目的端IP地址。5)数据链路层封装数据链路层封装是L2TP帧多层封装的的最后一层,依据不同的外发物理网络再添加相应的数据链路层报头和报尾。例如,如果L2TP帧将在以太网上传输,则用以太网报头和报尾对L2TP帧进行数据链路层封装;如果L2TP帧将在点-点WAN上传输,如模拟电话网或ISDN等,则用PPP报头和报尾对L2TP帧进行数据链路层封装。6)基于IPSec的L2TP隧道化数据的解封装过程在接收到L2TP帧后,L2TP客户机或服务器将做如下解封装处理:1.处理并去除数据链路层报头和报尾2.处理并去除IP报头3.用IPSec ESP认证报尾对IP有效载荷和IPSec ESP报头进行认证4.用IPSec ESP报头对数据报的加密部分进行解密5.处理UDP报头并将数据报提交给L2TP协议6.L2TP协议依据L2TP报头中Tunnel ID和Call ID分解出某条特定的L2TP隧道7.依据PPP报头分解出PPP有效载荷,并将它转发至相关的协议驱动程序做进一步处理L2TP数据的封装具体步骤如下:1.IP数据报、IPX数据报或NetBEUI帧由各自协议提交给对应于VPN连接的虚拟接口。该接口符合网络驱动程序接口规范NDIS。2.NDIS将数据报提交给NDISWAN,NDISWAN可选择对数据进行压缩处理后,添加PPP报头进行第一步封装。该PPP报头仅含一个PPP协议标识域,不附加任何帧校正序列FCS或其他标记。3.NDISWAN将PPP帧提交给L2TP协议驱动程序,该驱动程序负责在PPP帧外添加L2TP报头进行第二步封装。在L2TP报头中,Tunnel ID 和Call ID的组合标识了一条隧道。4.L2TP协议驱动程序再将封装后的数据报提交给TCP/IP协议驱动程序,并告之驱动程序,将L2TP数据报作为UDP消息发送,两端UDP端口号均为1701。5.TCP/IP协议驱动程序对报文添加IP报头和UDP报头。然后由IPSec对报文进行分析,选择与之相匹配的安全策略,并在此安全策略的基础上,给数据报的UDP消息部分添加相应的ESP报头、报尾,进行IPSec加密、封装。完成IPSec封装后,将原先的IP报头中协议字段值设置为50,同时将该IP报头添加在ESP报文外。之后,TCP/IP协议驱动程序将结果报文提交给拨往本地ISP的拨号连接接口,该接口符合网络驱动程序接口规范NDIS。6.NDIS再次将数据报提交给NDISWAN。7.由NDISWAN提供数据链路层PPP报头、报尾,并将最终形成的PPP帧提交给与拨号硬件相对应的WAN微端口驱动程序。

文档评论(0)

1045141460 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档