您好,欢迎访问三七文档
当前位置:首页 > 建筑/环境 > 房地产 > HTTP协议分析实验
HTTP协议分析实验报告专业:计算机信息工程学院12级网络工程2班学号:1208066057学生姓名:汪国庆一、实验目的:1.分析http请求报文的含义和响应报文的含义。2.知道http1.1和http1.0的异同。3.通过http协议获取网页流程。二、实验原理:(参考自互联网)RFC1945定义了HTTP/1.0版本。RFC2616定义了今天普遍使用的一个版本——HTTP1.1。HTTP协议(HyperTextTransferProtocol,超文本传输协议)是用于从服务器传输超文本到本地浏览器的传送协议。它可以使浏览器更加高效,使网络传输减少。它不仅保证计算机正确快速地传输超文本文档,还确定传输文档中的哪一部分,以及哪部分内容首先显示(如文本先于图形)等。HTTP是一个应用层协议,由请求和响应构成,是一个标准的客户端服务器模型。HTTP是一个无状态的协议。HTTP协议永远都是客户端发起请求,服务器回送响应。见下图:这样就限制了使用HTTP协议,无法实现在客户端没有发起请求的时候,服务器将消息推送给客户端。HTTP协议是一个无状态的协议,同一个客户端的这次请求和上次请求是没有对应关系。一次HTTP操作称为一个事务,其工作过程可分为四步:1)首先客户机与服务器需要建立连接。只要单击某个超级链接,HTTP的工作开始。2)建立连接后,客户机发送一个请求给服务器,请求方式的格式为:统一资源标识符(URL)、协议版本号,后边是MIME信息包括请求修饰符、客户机信息和可能的内容。3)服务器接到请求后,给予相应的响应信息,其格式为一个状态行,包括信息的协议版本号、一个成功或错误的代码,后边是MIME信息包括服务器信息、实体信息和可能的内容。4)客户端接收服务器所返回的信息通过浏览器显示在用户的显示屏上,然后客户机与服务器断开连接。如果在以上过程中的某一步出现错误,那么产生错误的信息将返回到客户端,有显示屏输出。对于用户来说,这些过程是由HTTP自己完成的,用户只要用鼠标点击,等待信息显示就可以了。三、实验步骤1、打开Wireshark,选择工具栏上的“Capture”-“interfaces选择网关”,如图:2、然后在Wireshark,选择工具栏上的“Capture”-“optoins”选择过滤器,并在capturefilter中输入tcpport80(表示要抓http的包),如图3、打开浏览器,输入进行抓包分析:前面三帧是客户端与服务器建立连接的三次握手。第四帧是一个http报文,内容如下。通过分析这个http报文。1)方式是GET,说明是一个请求报文2)使用的版本是http1.1版3)浏览器的类型是mazilla4.0版4)连接方式:keep-alive(保持连接)5)请求的网页是)保留cookies在本地第5-30帧是分组服务器端分组发送给客户端的tcp报文第31帧表示收到一个完整的HTML文档分析知道,它的发送方式是明文中间的其他包就不分析了看一下后面的包最后几帧有[FIN]的表示断开连接4、http1.0和http1.1的区别在1.0时的会话方式1.建立连接2.发出请求信息3.回送响应信息4.关掉连接小结:浏览器和web服务器连接很短,每次连接只处理一个请求和响应。对每一个页的请求,浏览器与web服务器都要建立一次单独的连接.浏览器没有关掉前,连接就断开了.浏览器和服务器之间的通信是完全独立分开的请求和响应对.因为这样没法断点浏览器是否断开,没法做连接状态控制。建立和关掉连接会很占用连接时间在1.1时的会话方式在同一个tcp的连接中可以传送多个HTTP请求和响应.多个请求和响应可以重叠,多个请求和响应可以同时进行.更加多的请求头和响应头(比如HTTP1.0没有host的字段).总结:在HTTP/1.0中,大多实现为每个请求/响应交换使用新的连接。在HTTP/1.1中,一个连接可用于一次或多次请求/响应交换,尽管连接可能由于各种原因被关闭.这是他们之间最大的分别.
本文标题:HTTP协议分析实验
链接地址:https://www.777doc.com/doc-7048810 .html