首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

嵌入式单片机PPP协议的应用研究(2)

嵌入式单片机PPP协议的应用研究(2)

4 单片机PPP协议PPP连接的建立
建立后的单片机PPP连接状态如图2所示。

其中,C51系统是已经植入PPP协议的51系列单片机,电话线部分也可以是某个网络的一部分,甚至是Internet。
单片机PPP协议流程图如图3所示。

PPP连接的建立主要经过三个阶段,分别是LCP协商、密码认证以及网络层协议配置。
4.1 LCP处理阶段
首先,第一个LCP数据包被服务器端发送后,从服务器端返回一个PPP拒绝包给除密码认证外的所有选项,接着服务器端强制认证协议进行协商(先前来自否定帧的PAP和CHAP都被发送)。随后服务器端返回一个拒绝包给CHAP,本文用PAP来代替。然后服务器端认同并返回一个新的请求,这时候需要进行PAP。接下去对PAP进行确认,系统对字符映射的丢弃进行协商。最后所有控制特性被服务器端同意丢弃。
下面是由服务器发送的一段LCP建立连接的字符串:
0000:7E FF 03 C0 21 01 71 00 2B 01 04 06 40 05 06 3A 5D 8B B4 02 06 00
0016:00 00 00 11 04 06 40 17 04 00 64 00 02 03 04 C0 23 13 09 03 08 00
002C:03 0A 2C 2C 95 7F 7E
对它进行分析如表3。

4.2 PAP处理阶段
首先,系统发送PAP数据包给服务器端,然后服务器端通过用户ID和密码验证。
PAP密码验证协议在RFC1334中有详细定义,主要是为拨号网络中提供密码保护。这个选项是可选的。在本应用软件中,强制单片机和PC协商的选项中,PC要求密码验证,单片机端不要求。所以如果PC机作为服务器,单片机需要发送用户名和密码;如果单片机作服务器,则没有密码验证的要求。
PAP的格式如图4所示。

下面是单片机发送PAP的数据包:
7E FF 03 C0 23 01 06 00 0C 03 7A 77 6D 03 7A 77 6D…
解析如表4所示。

单片机向PC机发送PAP数据包是在PC机发送对单片机LCP选项的确认之后、PC机向单片机发送IPCP请求之前。
4.3 IPCP处理阶段
IPCP是用来设置PPP连接中的网络环境,包括IP地址、IP压缩协议、DNS服务器地址等都是通过IPCP来协商的。首先服务器端发送请求进行IPCP协商,然后系统返回一个拒绝包给除IP地址外的所有操作。由于先前的发送被拒绝,服务器端发送一个回复,只包含IP地址。此时,系统相当于服务器端的IP地址认证,然后由请求信息和IP地址来完成三路握手协议。接着服务器端返回一个包含预先指派IP地址的拒绝包。此时连接建立并拥有一个指定的 IP地址。IPCP帧的格式与LCP也是类似的:一字节的代码,然后是标志,长度,选项。当IP协议的选项配置完,就可以开始通讯了。IPCP的详细描述在RFC1332中。
连接建立后,PPP将在原有协议的基础上调用网络协议UDP(User Datagram Protocol)和ICMP(Internet Control Messages Protocol)等。有关用户数据包协议UDP的详细资料可参看RFC882、RFC883文档;Internet信息控制协议ICMP的详细资料可参看文档RFC792。
返回列表