竭诚为您提供优质文档/双击可除
http协议报文解析
篇一:利用wireshark分析http协议 计算机网络实验报告 年级:通信姓名:学号: 实验日期:
20xx年4月30日星期三实验名称:利用wireshark分析http协议
一、实验目的 分析http协议 二、实验环境
与因特网连接的计算机,操作系统为windows,安装有wireshark、ie等软件。 三、实验步骤
1、利用wireshark俘获http分组
(1)在进行跟踪之前,我们首先清空web浏览器的高速缓存来确保web网页是从
网络中获取的,而不是从高速缓冲中取得的。之后,还要在客户端清空dns高速缓存,
第 1 页 共 8 页
来确保web服务器域名到ip地址的映射是从网络中请求。在windowsxp机器上,可在
命令提示行输入ipconfig/flushdns完成操作。 (2)启动wireshrk分组俘获器。 (3)在web浏览器中输入:
http://gaia.cs.umass.edu/wireshark-labs/http-wireshark-file1.html
(4)停止分组捕获。
图1:利用wireshark俘获的http分组 浏览web页面经过如下三个过程: (一)dns解析
在uRlhttp://gaia.cs.umass.edu中,
gaia.cs.umass.edu是一个具体的web服务器的域名。最前面有两个dns分组。第一个分组是将域名gaia.cs.umass.edu转换成为对应的ip地址的请求,第二个分组包含了转换的结果。这个转换是必要的,因为网络层协议——ip协议,是通过点分十进制来表示因特网主机的,而不是通过gaia.cs.umass.edu这样的域名。当输入
uRlhttp://gaia.cs.umass.edu时,将要求web服务器从主机gaia.cs.umass.edu上请求数据,但首先web浏览器必须确定这个主机的ip地址。 (二)tcp连接建立
第 2 页 共 8 页
随着转换的完成,web浏览器与web服务器建立一个tcp连接。
(三)http交互
web浏览器使用已建立好的tcp连接来发送请求“get/http/1.1”。这个分组描述了要求的行为(“get”)及文件(只写“/”是因为我们没有指定额外的文件名),还有所用到的协议的版本(“http/1.1”)。 分析截获的结果,回答下列问题: 粘贴前面的地址解析的两个dns分组 1)dns协议主要使用udp封装还是tcp封装? ___tcp封装_______________ 2)dns
?你默认的本地dns服务器的ip? 3)dns查询消息的目的端口是
____domain(53)______________?dns响应消息的源端口是______20430____________?
粘贴web浏览器与web服务器建立一个tcp连接的三次握手报文
2、httpget/response交互 图httpget请求信息
(1)在协议框中,选择“get/http/1.1”所在的分组会看到这个基本请求行后跟随着一系列额外的请求首部。在
第 3 页 共 8 页
首部后的“\\r\\n”表示一个回车和换行,以此将该首部与下一个首部隔开。
“host”首部在http1.1版本中是必须的,它描述了uRl中机器的域名,本例中是。这就允许了一个web服务器在同一时间支持许多不同的域名。有了这个数不,web服务器就可以区别客户试图连接哪一个web服务器,并对每个客户响应不同的内容,这就是http1.0到1.1版本的主要变化。 user-agent首部描述了提出请求的web浏览器及客户机器。
接下来是一系列的accpet首部,包括accept(接受)、accept-language(接受语言)、accept-encoding(接受编码)、accept-charset(接受字符集)。它们告诉web服务器客户web浏览器准备处理的数据类型。web服务器可以将数据转变为不同的语言和格式。这些首部表明了客户的能力和偏好。
keep-alive及connection首部描述了有关tcp连接的信息,通过此连接发送http请求和响应。它表明在发送请求之后连接是否保持活动状态及保持多久。大多数http1.1连接是持久的(persistent),意思是在每次请求后不关闭tcp连接,而是保持该连接以接受从同一台服务器发来的多个请求。
篇二:wireshake抓包分析tcp与http过程详解
第 4 页 共 8 页
http协议报文格式详解
在我们日常生活中最常见的应用环境就是上网浏览网页,很多上班族到办公室的第一件事就是打开电脑,而开机后的第一件事就是打开ie、Firefox、myie、greenbrowser、opera等浏览器时,做的第一件事就是浏览一下例如.cn,的新闻,而这种简单的应用操作,完成的交互过程就是一个典型的http协议的应用过程。
http是基于tcp的连接,因此,建立http连接必须经过tcp的过程,tcp的建立过程是3次握手的过程。然后就是http过程,http只有两种报文,请求和应答报文。完成http过程后,3次断开tcp连接。 http
tcp的第一阶段
http开始之前先3次握手,第一阶段就是客户向服务器发送同步请求,flag字段的syn位置1。 第二阶段
第二阶段就是服务器向客户回复一个ack包,其中Flag字段的syn位和ack字段置1。 tcp的第三阶段:
tcp的第三阶段是客户向服务器发送ack,至此,tcp的3次握手结束
tcp三次握手结束之后就是http请求
第 5 页 共 8 页
http协议报文解析



