1、计算机网络实验三协议详情分析报告天津理工大学实验报告学院(系)名称:计算机与通信工程学院姓名学号2012*2012*专业计算机科学与技术(中加)班级教学2班实验项目实验三:协议分析课程名称计算机网络课程代码0662016实验时间2015年6月18日 第7、8节实验地点7-219批改意见成绩教师签字: (一)实验目的:掌握常用TCP/IP协议族中协议的原理及工作过程。(二)实验环境:软件环境:Windows 2000XP 硬件环境:IBMPC或兼容机局域网、PC机连入Internet(三)实验学时:2学时,必做.(四)实验要求:利用Wireshark抓包,并进行协议分析。(五)实验内容:1.熟练
2、掌握Wireshark的使用方法。2.掌握TCP、IP、ARP、DNS、HTTP和Ethernet等协议的基本原理。3.详细分析HTTP协议的通信过程。4.尝试使用Follow TCP Stream 功能。(六)实验步骤:1.安装并启动wireshark。选择网卡,设置过滤条件,开始抓包。2.打开浏览器,在地址栏中输入教师指定的web服务器地址。http:/202.113.78.39。为了确保连通性,可以先ping一下服务器。3.在打开的页面上,鼠标右键单击你看到的图片,将图片另存为到本地。4.鼠标左键单击图片,页面改变后,关闭浏览器,停止wireshark抓包。5.在wireshark中将抓
3、到的数据包保存。6.列举出你所抓到数据包的种类(协议名称)。列表写出客户端、网关、web服务器的IP地址和MAC地址。HTTP客户端和服务器段的端口号。答:数据包的种类TCP、UDP、DNS、DHCP、ARP、OSPF、LLDP、SSL、TLS、NBNS、BROWSER=等。客户端网关Web服务器IP地址101.4.60.122202.113.78.31202.113.78.39MAC地址58:6a:b1:5d:be:3344:37:e6:04:08:9f44:37:e6:04:09:c5HTTP客户端的端口号:80,服务器端口号:2518。7.将TCP、IP、ARP、DNS、HTTP和Eth
4、ernet的首部字段的名字和值按照协议的格式(参见附录2)分别记录下来。(任意打开一个消息)答:IP:版本:4首部长度:20bytes区分服务:0x00总长度:40标识:0x41c6标志:0x02片偏移:0生存时间:51协议:TCP(6)首部校验和:0x4bfb源地址:101.4.60.122目的地址:202.113.78.31可选字段:填充TCP:源端口:80目的端口:2518序号:1确认号:716数据偏移保留URG0ACK1PSH0RSI0SYN0FIN0窗口:16128检验和0xf2e5紧急指针: 无效选项:空填充:空ARP:以太网目的地址:HonHaiPr_04:08:9f(44:37
5、:e6:04:08:9f)以太网源地址:HonHaiPr_04:09:c5(44:37:e6:04:09:c5)帧类型:ARP(0x0806)DNS:标识:0xa632标志:0x8180问题数:1资源记录数:3授权资源记录数:0额外资源记录数:0查询问题::type A,class IN回答::type CNAME,class IN,cname qurl.qh- qurl.f.qh-:type A,class IN, addr 101.4.60.122 qurl.f.qh-:type A,class IN, addr 101.4.60.121额外授权:0记录信息:0HTTP:版本:1.1空格状
6、态码:200空格原因短语:OK回车符换行符首部:nginx:阈值:0.6.39回车符换行符实体: Date:Sat, 09 May 2015 07:58:02 GMT rnEthernet:目的地址:(58:6a:b1:5d:be:33)源地址:(44:37:e6:04:08:9f)类型:IP数据:769bytesFCS:0x08008.在wireshark界面上,设置抓包后的过滤条件为只显示IP地址包括web服务器地址的包(筛选格式类似“ip.addr eq 202.113.78.39”)。答:9.在wireshark界面上分别圈出TCP建立连接和释放连接的数据包。找到TCP连接建立的三次握
7、手过程,并结合数据,绘出TCP连接建立的完整过程,注明每个TCP报文段的序号、确认号、以及SYNACK的设置。找到TCP连接的释放过程,绘出TCP连接释放的完整过程,注明每个TCP报文段的序号、确认号、以及FINACK的设置。答:第一个TCP报文段:seqNumber: 0 SYN: set ACK:not set第二个TCP报文段:seqNumber:0 ackNumber:1 SYN:set ACK:set第三个TCP报文段:seqNumber:1 ackMunber:1 SYN:not set ACK:set找到TCP连接的释放过程,绘出TCP连接释放的完整过程,注明每个TCP报文段的序
8、号、确认号、以及FINACK的设置。第一个TCP报文段:seqNumber:2283 ackNumber: 209229 FIN:not set ACK:set第二个TCP报文段:seqNumber:2283 ackNumber: 209229 FIN:set ACK:not set10. 在wireshark界面上圈出你的主机如何找到web服务器的MAC地址(ARP协议)或者IP地址(DNS协议)。答:11.依据实际抓到的数据包,截图并圈出TCP顺序号和确认号的使用方法及变化规律。答:12.在你所抓到的各种类型数据包中,在wireshark的主界面上是以何种底纹标注?答:ARP:粉色 。 B
9、ROSWER:黄色 。 DHCP:蓝色 。 HTTP:绿色、黑色 。 NBNS:黄色 。 OSPF:粉色。SSDP:绿色。13.尝试使用Statistics菜单中“IO graph”、“HTTP”、“Protocol Hierarachy”等功能,并记录结果。答:IO graph功能记录:HTTP功能记录如下:14.找到全部HTTP的请求消息并截图。(过滤条件类似“http.request and ip.addr eq 202.113.78.39”)答:15.找到全部源IP地址为指定web服务器地址的HTTP响应消息并截图。答:16.查看你访问指定Web服务器HTTP会话的工作过程。将结果截图
10、,并对前10个包进行详细分析。答:17.使用Follow TCP Stream 功能,将你看到的图片从你收到的HTTP响应消息数据包中恢复出来(或者你下载的其它文件)。要求必须详细说明并每步骤截图。答:18.参考“使用wireshark进行流量分析”,对本网络中的流量进行分析。(1)简述访问web页面的过程。答:a浏览器向DNS请求解析网站的IP地址b域名系统DNS解析出网站的IP地址202.113.78.39c浏览器与服务器建立TCP连接d浏览器发出取文件命令e服务器端给出响应,把首页文件发送给浏览器f释放TCP连接g浏览器显示西安邮电大学首页中的所有文本(2)找出DNS解析请求、应答相关分
11、组,传输层使用了何种协议,端口号是多少?所请求域名的IP地址是什么?答:DNS请求分组,基于UDP的传输协议,源端口号64282,目的端口号53,请求域名的IP地址是59.67.148.5。DNS应答分组:源端口号53,目的端口号64282。(3)统计访问该页面共有多少请求分组,多少响应分组?答:应用如下显示过滤规则,对包进行过滤:然后点击菜单栏的statics,接着点击summary选项,然后就能看到过滤后显示的包的各项统计数据。由上图知,一共有64个IP请求分组,共捕获895个包(4)找到TCP连接建立的三次握手过程,并结合数据,绘出TCP连接建立的完整过程,注明每个TCP报文段的序号、确
12、认号、以及SYNACK的设置。答:第一个TCP报文段:SeqNumber: 0 SYN: set ACK:not set第二个TCP报文段:SeqNumber:0 AckNumber:1 SYN:set ACK:set第三个TCP报文段:SeqNumber:1 AckMunber:1 SYN:not set ACK:set第一次握手:序号Seq#=0;无确认号;ACK=0(not set);SYN=1 set第二次握手:序号Seq#=0;确认号:ACK=1 set; SYN=1 set第三次握手:序号Seq#=1;确认号:ACK=1 set;SYN=0(not set);(5)针对(4)中的T
13、CP连接,该TCP连接的四元组是什么?双方协商的起始序号是什么?TCP连接建立的过程中,第三次握手是否带有数据?是否消耗了一个序号?答:四元组:源IP地址:202.113.78.31; 源端口号:2518;目的IP地址:101.4.60.122; 目的端口号:80 由上题知,双方协商的起始序号是0。由上图,第三次握手后的报文段。序号Seq#=1和第三次握手报文中的序号相同,由此可以看出第三次报文没有消耗序号,没有带数据。(6)找到TCP连接的释放过程,绘出TCP连接释放的完整过程,注明每个TCP报文段的序号、确认号、以及FINACK的设置。答:第一个TCP报文段:seqNumber:253;
14、AckNumber: 716; FIN:set; ACK:set第二个TCP报文段:seqNumber:716; AckNumber: 254; FIN:not set; ACK: set第三个TCP报文段:seqNumber:716; AckNumber: 254; FIN:set; ACK: set(7)针对(6)中的TCP连接释放,请问释放请求由服务器还是客户发起?FIN报文段是否携带数据,是否消耗一个序号?FIN报文段的序号是什么?为什么是这个值?答:1. 释放请求由服务器端发起的。 2. FIN报文段不携带数据,消耗一个序号。根据TCP规定,FIN报文段即使不携带数据,也消耗一个序号
15、。根据第二次挥手报文,确认号为254,说明没有携带数据。3. FIN报文段的序号是716。4. 由下图可以看出此报文前的一个报文的确认号为:ACK为254,确认号是期望对方下一个报文段的第一个数据字节的序号。即它等于前面已经传送过的数据的最后一个字节的序号加1。(8)在该TCP连接的数据传输过程中,找出每一个ACK报文段与相应数据报文段的对应关系,计算这些数据报文段的往返时延RTT(即RTT样本值)。答:报文段的往返时间RTT(Round-Trip Time)新的RTTs =(1-a)*(旧的RTTs)+ a*(新的RTT样本值)新的RTTD = (1-b)*(旧的RTTD) + b*|RTT
16、s 新的RTT样本|(9)分别找出一个HTTP请求和响应分组,分析其报文格式。在截图中标明各个字段。答: 请求行:Request Method:POST(请求的方法)Request Version:HTTP/1.1(http版本)HTTP响应分组:开始行:Request version:HTTP/1.1(版本)Response code:200(状态码,2xx表示成功)首部行:Server:Tengine(web服务器是Tengine)Date:Sat, 09 May 2015 07:57:59 GMT/r/n (10)请描述HTTP协议的持续连接的两种工作方式。访问这些页面(同一网站的不同页面)的过程中,采用了哪种方式?答:HTTP/1.1协议的持续连接有两种工作方式,即非流水线方式(without pipelining)和流水线方式(with pipelining)非流水线方式的特点,是客户端在收到前一个响应后才能发出下一个请求。流水线方式的特点,是客户端在收到HTTP的响应报文之前就能够接着发送新的值来请求报文。于是一个接一个的请求报文到达服务器后,服务器就可连续发回响应报文。流水线工作方式使TCP连接中的空闲时间减少。由上图可知,访问同一网站的不同页面采用了流水线方式。
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1