2.1 HTTP协议
HTTP(超文本传输协议)是WWW上的协议。HTTP协议使Web服务器和浏览器可以通过Web交换数据。它是一种请求、响应协议,即服务器等待并响应客户方请求。当用户通过其浏览器访问一个页面时,浏览器发送一个HTTP请求给HTTP服务器,服务器会响应这个请求,将指定的网页传送回去,用户就可以浏览网页。
HTTP协议不维护与客户方的连接,它使用可靠的TCP连接,通常采用TCP80端口。HTTP非常简单,请求和应答是1行或多行文本,它的结束标志是一个换行符。如果请求成功,信息就沿该连接发送,直至传送完成断开连接。
客户/服务器传输过程可分为4个基本步骤:浏览器与服务器建立连接;浏览器向服务器请求文档;服务器响应浏览器请求;断开连接。
2.1.1 HTTP报文结构
HTTP报文包括请求报文和响应报文两种报文类型,其中,请求报文由客户端如浏览器向Web服务器发送,用于请求服务器提供某个类型的服务;而响应报文则是在服务器接到请求报文之后,返回给客户端的消息,表明服务器所作出的响应。
1)请求报文格式
请求报文一般包括请求行、首部和实体(有时包含)3部分。其中,请求行包括请求方法、URL(统一资源定位地址)和HTTP协议版本号3部分,其报文格式如图3所示。在请求行中,请求方法是客户端向服务器端发出的命令,URL是所请求网页资源的地址,HTTP版本是指报文所使用的HTTP协议版本号。常用的请求方法有Get和Post两种:Get方法通常只是用于请求服务器上的URL所指定的资源;Post方法用于客户端向服务器端提供信息,所提供的信息位于请求报文的实体部分。
2)响应报文的格式
响应报文一般包括状态行、首部和实体(有时包含)3部分,其报文格式如图4所示。在响应报文中,状态行定义了响应报文的状态,并由响应状态码和响应状态码说明字段反应。其中,200系列的代码用于指示成功的请求。
HTTP报文中的首部由多个首部行组成,用以在客户端与服务器之间交换一些附加的信息。每个首部行由首部名、冒号、空格和首部值组成,并以回车换行符(\r\n)结尾。首部与实体之间有一空行进行间隔。
2.1.2 HTTP协议解析
HTTP协议解析过程分为接收和发送两部分。HTTP协议解析流程图如图5所示。
MCU接收HTTP方法并设定方法标志位,计算URL,然后判断HTTP方法。若HTTP方法为Get,则判断是否存在对应的网页,如果存在,则确定接收HTTP方法并设定方法标志,然后返回;如果不存在对应的网页,直接返回。若HTTP方法为Post,则接收并处理控制数据,然后返回。
2.2总体软件
软件采用C430编写,其工作过程为:上电开始;MCU初始化;判断GR47是否在线,若不在线继续等待,若在线就发送模块IP,GR47处于监听80端口状态;判断HTTP是否接入,若未接人GR47,继续处于监听80端口状态,若接入,MCU对HTTP协议解析;GR47发送数据,数据发送完毕,HTTP连接断开。软件总体流程图如图6所示。
3结束语
随着IPV6的实施,Internet上每个移动台和PC将分配到一个唯一的IP,对通过GPRS、CDMA(码分多址)或其他无线网络技术登录的嵌入式Web Server,Internet上任一移动台或PC都能对其进行访问。无线嵌入式Web Server具有广阔的应用和发展空间。