Login
升级VIP 登录 注册 安全退出
当前位置: 首页 > word文档 > 其他文档 > 【原创】PPTP封装详解

【原创】PPTP封装详解

收藏

本作品内容为【原创】PPTP封装详解,格式为 docx ,大小 1554461 KB ,页数为 7页

【原创】PPTP封装详解


('PPTP控制数据包端口为TCP1723PPTP业务数据包没有传输层封装1.PPTP连接建立过程中控制连接数据包的格式:下表列出了PPTP控制连接中用到的主要控制信息。表一、PPTP呼叫控制和连接管理信息消息类型用途Start-Control-Connection-Request由PPTP客户机发出,请求建立控制连接。PPTP隧道要求在发送任何其他PPTP消息之前,先建立一条控制连接。Start-Control-Connection-Reply由PPTP服务器发出,回应Start-Control-Connection-Request消息。Outgoing-Call-Request由PPTP客户机发出,请求创建PPTP隧道。utgoing-Call-Request消息包含GRE报头中的CallID,该ID可唯一地标识一条隧道。Outgoing-Call-ReplyPPTP服务器对Outgoing-Call-Request消息的回应Echo-Request作为保持连线机制,可由PPTP客户机或服务器任一方发出。若Echo-Request没有应答,则PPTP隧道逐渐终止。Echo-Reply对Echo-Request的应答。注:PPTP的Echo-Request和Echo-Reply消息与ICMP回送请求和回送应答消息无关。WAN-Error-Notify由PPTP服务器向所有VPN客户机发出,指示服务器的PPP接口处于错误状态。Set-Link-Info可由PPTP客户机或服务器任一方发出,设置PPP协商选项。Call-Clear-Request由PPTP客户机发出,请求终止隧道。Call-Disconnect-NotifyPPTP服务器回应Call-Clear-Request,或因其他原因指示必须终止隧道。如果PPTP服务器终止隧道,则发送出Call-Disconnect-Notify消息。Stop-Control-Connection-Request可由PPTP客户机或服务器任一方发出,通知对方控制连接将被终止。Stop-Control-Connection-Reply回应Stop-Control-Connection-Request消息经过了以上的连接建立过程后,进入了参数协商阶段:其中IP参数协商经过了3个相互过程:\uf0d8客户端192.168.1.55请求,PPTP服务器192.168.1.251拒绝(NAK),NAK数据包中为空信息\uf0d8客户端192.168.1.55请求,PPTP服务器192.168.1.251拒绝(NAK),NAK数据包中为返回IP、DNS等信息\uf0d8客户端192.168.1.55根据前面受到的NAK包,填写IP、DNS等信息到请求数据包中,惊醒再次请求,PPTP服务器192.168.1.251接受(ACK)。2.PPTP连接建立并且参数协商完毕后,经过封装在隧道中传输的普通数据包格式:这里的普通区别于上面的控制连接数据包。PPTP数据的隧道化过程采用多层封装的方法从客户端192.168.1.55于服务器192.168.1.251交互的数据包来看,有以下规律:1.客户端192.168.1.55发给服务器192.168.1.251的数据包为PPP格式,封装如下:2.服务器192.168.1.251发给客户端192.168.1.55的数据包为GRE格式,封装如下:客户端请求断开PPTP连接的过程:下面我们通过上图中的127号数据包分析一下PPTP的隧道化数据包封装格式:通过上图,我们可以看到:1)PPP帧的封装初始PPP有效载荷如IP数据报、IPX数据报或NetBEUI帧等经过加密后,添加PPP报头,封装形成PPP帧,这是第一步封装,是二层封装,又是是第一重TCP/IP封装。PPP帧再进一步添加GRE报头,这是第二步,是三层封装,是第二重TCP/IP封装,这样就形成GRE报文。GRE是采用第47号IP协议的客户端协议,为在IP网络上进行数据封装提供了一种简单,轻巧的通用机制。有关GRE详细文档可参见RFC1701和RFC1702。在GRE报头中,协议类型即PPP帧的EtherType值应设置为0x880B。2)GRE报文的封装PPP有效载荷的第三步封装是在GRE报文外,再添加IP报头。IP报头包含数据包源端及目的端IP地址。这是第三步封装,是三层封装,是第二重TCP/IP封装。3)数据链路层封装数据链路层封装是IP数据报多层封装的的最后一步,依据不同的外发物理网络再添加相应的数据链路层报头和报尾。例如,如果IP数据报将在以太网上传输,则用以太网报头和报尾对IP数据报进行数据链路层封装;如果IP数据报将在点-点WAN上传输,如模拟电话网或ISDN等,则用PPP报头和报尾对IP数据报进行数据链路层封装。以上三步告诉我们,从第一步封装以后,PPP帧就作为一个整体,进行二重TCP/IP协议体系结构的再次封装,从三层开始向下!4)PPTP数据包的接收处理PPTP客户机或PPTP服务器在接收到PPTP数据包后,将做如下处理:1.处理并去除数据链路层报头和报尾2.处理并去除IP报头3.处理并去除GRE和PPP报头4.如果需要的话,对PPP有效载荷即传输数据进行解密或解压缩。(这里的加密和压缩有多种实现方法,就windows来讲,主要为MPPE、MPPC)5.对传输数据进行接收或转发处理下面是协议体系对PPTP数据的处理流程:1.IP数据报、IPX数据报或NetBEUI帧由各自协议提交给对应于VPN连接的虚拟接口。该接口符合网络驱动程序接口规范NDIS。2.NDIS将数据报提交给NDISWAN,由NDISWAN负责对数据进行加密、压缩处理后,添加PPP报头进行第一步封装。该PPP报头仅含一个PPP协议标识域,不附加任何帧校正序列FCS或其他标记。3.NDISWAN将PPP帧提交给PPTP协议驱动程序,该驱动程序负责在PPP帧外添加GRE报头进行第二步封装。该GRE报头中,CallID域的值唯一地标识了一条隧道。4.PPTP协议驱动程序将GRE报文提交给TCP/IP协议驱动程序。5.TCP/IP协议驱动程序再对GRE报文添加IP报头进行第三步封装,封装后提交给拨往本地ISP的拨号连接接口,该接口符合网络驱动程序接口规范NDIS。6.NDIS再次将数据报提交给NDISWAN,NDISWAN给数据报添加PPP报头、报尾进行最后的数据链路层封装。7.NDISWAN将最终形成的PPP帧提交给与拨号硬件相对应的WAN微端口驱动程序。(例如modem连接中的异步端口)张蒙2009.02.06',)


  • 编号:1700774289
  • 分类:其他文档
  • 软件: wps,office word
  • 大小:7页
  • 格式:docx
  • 风格:商务
  • PPT页数:1554461 KB
  • 标签:

广告位推荐

相关其他文档更多>