位置:51电子网 » 技术资料 » 单 片 机

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

发布时间:2008/5/27 0:00:00 访问次数:469

摘要:介绍了ppp协议原理、单片机与pc机之间ppp连接的建立,程序流程等。

关键词:ppp协议 单片机 单片机ppp协议

ppp协议(point-to-point protocol)提供了在串行点对点链路上传输数据报的方法,支持异步8位数据及位导向的同步连接(如isdn)。它提供了一种管理两点间会话的有效方法,正在取代slip(serial line interface protocol)协议成为点对点网络的标准。

嵌入式单片机ppp协议是在单片机中嵌入ppp协议,以实现单片机与计算机之间的ppp数据传输,使它既可以作为ppp连接的客户端,也可以作为独立的ppp服务器端来使用。它在家电控制和小型数据传输系统中具有非常广阔的应用前景,并且具有成本低、传输稳定等特点,是当前单片机研究的热门话题之一。

1 ppp的工作原理

ppp采用高级数据链路控制(hdlc)协议作为在对点链路上分装数据报的基本方法。使用可扩展的链路控制协议(lcp)来建立、配置和测试数据链路。用网络控制协议簇(ncp)来建立和配置不同的网络层协议,ppp允许同时采用多种网络层协议。

为了建立点对点链路上的通信连接,发送端ppp首先发送lcp帧,以配置和测试数据链路。在lcp建立好数据链路并协调好所选设备后,发送端ppp发送ncp帧,以选择和配置一个或多个网络层协议。当所选的网络层协议配置好后,便可以将各网络层协议的数据包发送到数据链路上。配置好的链路将一直处于通信状态,直到lcp帧或ncp帧明确提示关闭链路,或有其它的外部事件发生。ppp连接状态图如图1所示。

1.1 连接死亡阶段

一个连接的开始和结束都要经历这个阶段。当一个外部事件指示物理层已准备好并可使用时,ppp进入建立连接阶段。此时,lcp自动机处于初始阶段。当它向链路建立阶段转换时将给lcp自动机发送一个up事件信号。

1.2 连接建立阶段

lcp用于交换配置信息包、建立连接。一旦一个配置成功的信息包发送且被接收,就完成了交换,进入lcp开启状态。所有的配置选项都假定使用默认值,除非在配置交换过程中被改变。只有那些与特定的网络层协议无关的选项才会被lcp配置。收到lcp配置数据包将使链路从网络层协议阶段或者认证阶段返回到链路建立阶段。

1.3 认证阶段

在某些连接情况下,希望在允许网络层协议交换数据前对等实行认证。默认情况下,是不要求认证的。认证要求必须在建立连接阶段提出,然后进入认证阶段。如果认证失败,将进入连接终止阶段。在此阶段只对连接协议、认证协议、连接质量测试数据包进行处理。

1.4 网络层协议阶段

一旦ppp完成上述阶段,便进入网络协议阶段。每一个网络层协议 (例如ip、ipx、appletalk等)必须有相应的网络控制协议(ncp)单独配置,每个网络控制协议都可以随时打开或关闭。此阶段,lcp协议自动状态机处于打开状态,接收到的任何不支持的协议数据包都会被返回一个协议拒绝包,而接收到的所有支持的数据包都将被丢弃。此时,链路上流通的是lcp数据包、ncp数据包以及网络协议数据包。

1.5 终止连接阶段

ppp连接可以随时被终止。lcp通过交换连接终止包来终止连接。当连接被终止时,ppp会通知物理层采取相应的动作。只有当物理层断开,连接才会真正被终止。此阶段,接收到的所有非lcp数据包都将被丢弃。

2 ppp数据结构

ppp数据帧的结构如表1所示,ppp协议标志如表2所示。

每个ppp数据包的开始和结束都有一个0x7e的数据标志。在开始标志后,紧跟2个hdlc常量:地址常量0xff和控制常量0x03。协议域长度通常为2字节,表示信息域里包含的是哪种协议以及它的处理信息。随后是代码(code)、标识符(id)和长度域(length)。事实上它们都是信息域(payload)的一部分。信息域长度最多为1500字节。代码部分用来指示lcp、pap、ipcp或者chap协议数据包中的某种类型。通常情况下,用来表示ip自寻址信息数据包的标识是0x45。id对于每一帧来说都是唯一的,所有协议间的商谈和响应都通过id联系在一起。只有当ppp协议帧被压缩成ip寻址信息包时例外。这个时候id表示的是一种服务类型。有效载荷部分是可变的,并能随着请求和响应的变化作相应的改变。在ip自寻址情况下,ip数据包的大小与ppp协议帧的大小是兼容的,有效载荷包含有关协议的商谈

摘要:介绍了ppp协议原理、单片机与pc机之间ppp连接的建立,程序流程等。

关键词:ppp协议 单片机 单片机ppp协议

ppp协议(point-to-point protocol)提供了在串行点对点链路上传输数据报的方法,支持异步8位数据及位导向的同步连接(如isdn)。它提供了一种管理两点间会话的有效方法,正在取代slip(serial line interface protocol)协议成为点对点网络的标准。

嵌入式单片机ppp协议是在单片机中嵌入ppp协议,以实现单片机与计算机之间的ppp数据传输,使它既可以作为ppp连接的客户端,也可以作为独立的ppp服务器端来使用。它在家电控制和小型数据传输系统中具有非常广阔的应用前景,并且具有成本低、传输稳定等特点,是当前单片机研究的热门话题之一。

1 ppp的工作原理

ppp采用高级数据链路控制(hdlc)协议作为在对点链路上分装数据报的基本方法。使用可扩展的链路控制协议(lcp)来建立、配置和测试数据链路。用网络控制协议簇(ncp)来建立和配置不同的网络层协议,ppp允许同时采用多种网络层协议。

为了建立点对点链路上的通信连接,发送端ppp首先发送lcp帧,以配置和测试数据链路。在lcp建立好数据链路并协调好所选设备后,发送端ppp发送ncp帧,以选择和配置一个或多个网络层协议。当所选的网络层协议配置好后,便可以将各网络层协议的数据包发送到数据链路上。配置好的链路将一直处于通信状态,直到lcp帧或ncp帧明确提示关闭链路,或有其它的外部事件发生。ppp连接状态图如图1所示。

1.1 连接死亡阶段

一个连接的开始和结束都要经历这个阶段。当一个外部事件指示物理层已准备好并可使用时,ppp进入建立连接阶段。此时,lcp自动机处于初始阶段。当它向链路建立阶段转换时将给lcp自动机发送一个up事件信号。

1.2 连接建立阶段

lcp用于交换配置信息包、建立连接。一旦一个配置成功的信息包发送且被接收,就完成了交换,进入lcp开启状态。所有的配置选项都假定使用默认值,除非在配置交换过程中被改变。只有那些与特定的网络层协议无关的选项才会被lcp配置。收到lcp配置数据包将使链路从网络层协议阶段或者认证阶段返回到链路建立阶段。

1.3 认证阶段

在某些连接情况下,希望在允许网络层协议交换数据前对等实行认证。默认情况下,是不要求认证的。认证要求必须在建立连接阶段提出,然后进入认证阶段。如果认证失败,将进入连接终止阶段。在此阶段只对连接协议、认证协议、连接质量测试数据包进行处理。

1.4 网络层协议阶段

一旦ppp完成上述阶段,便进入网络协议阶段。每一个网络层协议 (例如ip、i、appletalk等)必须有相应的网络控制协议(ncp)单独配置,每个网络控制协议都可以随时打开或关闭。此阶段,lcp协议自动状态机处于打开状态,接收到的任何不支持的协议数据包都会被返回一个协议拒绝包,而接收到的所有支持的数据包都将被丢弃。此时,链路上流通的是lcp数据包、ncp数据包以及网络协议数据包。

1.5 终止连接阶段

ppp连接可以随时被终止。lcp通过交换连接终止包来终止连接。当连接被终止时,ppp会通知物理层采取相应的动作。只有当物理层断开,连接才会真正被终止。此阶段,接收到的所有非lcp数据包都将被丢弃。

2 ppp数据结构

ppp数据帧的结构如表1所示,ppp协议标志如表2所示。

每个ppp数据包的开始和结束都有一个0x7e的数据标志。在开始标志后,紧跟2个hdlc常量:地址常量0xff和控制常量0x03。协议域长度通常为2字节,表示信息域里包含的是哪种协议以及它的处理信息。随后是代码(code)、标识符(id)和长度域(length)。事实上它们都是信息域(payload)的一部分。信息域长度最多为1500字节。代码部分用来指示lcp、pap、ipcp或者chap协议数据包中的某种类型。通常情况下,用来表示ip自寻址信息数据包的标识是0x45。id对于每一帧来说都是唯一的,所有协议间的商谈和响应都通过id联系在一起。只有当ppp协议帧被压缩成ip寻址信息包时例外。这个时候id表示的是一种服务类型。有效载荷部分是可变的,并能随着请求和响应的变化作相应的改变。在ip自寻址情况下,ip数据包的大小与ppp协议帧的大小是兼容的,有效载荷包含有关协议的商谈

相关IC型号

热门点击

 

推荐技术资料

硬盘式MP3播放器终级改
    一次偶然的机会我结识了NE0 2511,那是一个远方的... [详细]
版权所有:51dzw.COM
深圳服务热线:13751165337  13692101218
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式


 复制成功!