资源描述
《计算机网络实验》实验报告
实验名称: 超文本传输协议(HTTP)
年 级: 2023级
专 业: 软件工程专业
班 级: 2班
姓 名: 王香香
学 号:
成 绩:
指导教师: 卢 正 添
提交报告时间: 2023年 6月 3日
一、实验目的
1. 掌握HTTP的报文格式
2. 掌握HTTP的工作原理
3. 掌握HTTP常用方法
二、实验环境
网络结构一
三、实验环节与实验结果
练习一:页面访问
各主机打开协议分析器,进入相应的网络结构并验证网络拓扑的对的性,假如通过拓扑验证,关闭协议分析器继续进行实验,假如没有通过拓扑验证,请检查网络连接。
本练习将主机A和B作为一组,主机C和D作为一组,主机E和F作为一组。现仅以主机A、B所在组为例,其它组的操作参考主机A、B所在组的操作。
1. 主机A清空IE缓存。
2. 主机B启动协议分析器开始捕获数据,并设立过滤条件(提取HTTP协议)。
3. 主机A启动IE浏览器,在“地址”框中输入http://服务器的ip/experiment,并连接,服务器IP默认为
172.16.0.253。
4. 主机B停止捕获数据,分析捕获到的数据,并回答以下问题:
● 本练习使用HTTP协议的哪种方法?简述这种方法的作用。
答:Get方法。客户要从服务器读取文档时使用。
● 根据本练习的报文内容,填写下表。
表13-3 实验结果
主机名
Host
URL
http://172.16.0.253/experiment
服务器类型
Apche/2.2.0
传输文献类型
Test/html
访问时间
Thu.1 Jun 2023 16:00:32 GMT
● 参考“会话分析”视图显示结果,绘制本次访问过程的报文交互图(涉及TCP协议)。
● 简述TCP协议和HTTP协议之间的关系。
答:HTTP是基于TCP的应用层协议。
思考问题:
1. 一个主页是否只有一个连接?
答:否。一个主页也许相应多个连接。
练习二:页面提交
本练习将主机A和B作为一组,主机C和D作为一组,主机E和F作为一组。现仅以主机A、B所在组为例,其它组的操作参考主机A、B所在组的操作。
1. 主机B启动协议分析器开始捕获数据,并设立过滤条件(提取HTTP协议)。
2. 主机A启动IE浏览器,在“地址”框中输入“http://服务器的ip/experiment/post.html”,并连接,服务器IP默认为172.16.0.253。在返回页面中,填写“用户名”和“密码”,点击[拟定]按钮。
3. 主机B停止捕获数据,分析捕获到的数据,并回答以下问题:
● 本练习的提交过程使用HTTP协议的哪种方法?简述这种方法的作用。
答:Post方法,当客户要给服务器提供某些信息时使用。
● 本次通信分几个阶段?每个阶段完毕什么工作?
答:两个阶段,页面访问和页面提交。
● 参考“会话分析”视图显示结果,绘制本次提交过程的报文交互图(涉及TCP协议)。
练习三:获取页面信息
本练习将主机A和B作为一组,主机C和D作为一组,主机E和F作为一组。现仅以主机A、B所在组为例,其它组的操作参考主机A、B所在组的操作。
1. 主机A启动“实验平台工具栏中的TCP工具”。
2. 主机B启动协议分析器开始捕获数据,并设立过滤条件(提取HTTP协议)。
3. 主机A在“TCP工具”上,选中“客户端”单选框,设立“IP地址”为服务器IP(默认为172.16.0.253);设立“端口”为80;单击[连接]按钮来和服务器建立连接。
4. 主机A在“TCP工具”上,设立“发送数据(文本)”为以下内容:
HEAD /experiment/ HTTP/1.1<CRLF>
Host: 172.16.0.253<CRLF>
<CRLF>
点击[发送]按钮。 (注:<CRLF>是回车换行)
点击[断开]按钮,断开TCP连接(由于不同http版本所遵循的规范不同,有些HTTP服务器不需要断开操作)。
5. 主机A在“TCP工具”上的“显示数据(文本)”中察看服务器返回信息。
6. 主机B停止捕获数据,分析捕获到的数据。
思考问题:
1. 同时打开多个浏览器窗口并访问一个WEB站点的不同页面时,系统是根据什么把返回的页面对的地显示到相应窗口的?
答:使用多个浏览器窗口访问一个WEB站点的不同页面时,每一个浏览器窗口也许相应一个或多个连接,每一个连接和数据报中的一个端口相相应,系统是根据这种相应关系把返回的页面对的地显示到相应窗口中。
练习四:较复杂的页面访问
本练习将主机A、B、C、D、E、F作为一组进行实验。
1. 本练习中规定主机A、C、E设立DNS服务器地址,(DNS服务器的IP地址即Linux服务器的IP地址)其IP地址以172.16.0.253为例。
2. 主机A使用“ipconfig /flushdns”命令清空DNS高速缓存。
3. 主机B启动协议分析器开始捕获数据并设立过滤条件(提取DNS、HTTP协议)。
4. 主机A启动IE浏览器,在地址框中输入。
5. 主机B停止捕获数据,察看相关会话,分析捕获到的数据,并回答以下问题:
● 结合本次实验结果,简述浏览器是如何解决一个访问请求的。
答:用户在浏览器的地址栏中输入Web站点的URL,URL中的信息被浏览器提取出来打包到一个HTTP请求报文中,然后传输给底层的传输层、网络层和链路层协议。该请求报文由运营Web服务器软件的目的计算机接受。服务器解决该请求报文并且获取所需信息,然后创建一个HTTP响应报文再传输。这个响应由客户端接受,浏览器解释,然后再显示给用户。
6. 恢复网络环境,将“首选DNS服务器”清空。
思考问题:
1. 为什么HTTP不保持与客户端的TCP连接?
答: HTTP1.0定义了非连续连接,每次请求/响应都要建立TCP连接。而HTTP1.1默认的连接是连续连接,服务器在发送响应以后会保持连接状态,等待更多的请求。
展开阅读全文