实验四 传输层协议分析
一、实验目的
1、学习3CDaemon FTP服务器的配置和使用,分析TCP报文格式,理解TCP的连接建立、
和连接释放的过程。
2、学习3CDaemon TFTP服务器的配置和使用,分析UDP报文格式,理解TCP协议与UDP协议的区别。
二、实验工具软件3CDaemon软件简介
3CDaemon是3Com公司推出的功能强大的集FTP Server、TFTP Server、Syslog Server
和TFTP Client于一体的集成工具,界面简单,使用方便。
这里主要介绍实验中需要用到的FTP Server功能和TFTP Server功能。
1、FTP Server功能
(1)配置FTP Server功能:选中左窗格功能窗口,打开FTP Server按钮,单击窗格中的
Configure FTP Server按钮,打开3CDaemon Configuration配置窗口,配置FTP Server功能。
这里需要设置的就是“Upload/Download”路径,作为FTP Server的文件夹,其它选项可以使用系统缺省设置。设置完成后,单击确认按钮,设置生效。
(2)在实验中,我们使用3CDaemon系统内置的匿名帐户“anonymous”登陆FTP服务器,
客户端使用微软FTP客户端命令,关于Ftp命令的说明介绍如下。
(3) Ftp命令的说明
FTP的命令格式:ftp[-v][-d][-i][-n][-g][-w:windowsize][主机名/IP地址]
其中:
-v不显示远程服务器的所有响应信息;
-n限制ftp的自动登录;
-i在多个文件传输期间关闭交互提示
-d允许调试、显示客户机和服务器之间传递的全部ftp命令;
-g不允许使用文件名通配符;
-w:windowsize忽略默认的4096传输缓冲区。
使用FTP命令登录成功远程FTP服务器后进入FTP子环境,在这个子环境下,用户可以使用FTP的内部命令完成相应的文件传输操作。
FTP常用内部命令如下:
open host[port]:建立指定ftp服务器连接,可指定连接端口。
user user-name[password][account]:向远程主机表明身份,需要口令时必须输入。
append local-file[remote-file]:将本地文件追加到远程系统主机,若未指定远程系统文件名,则使用本地文件名。
cd remote-dir:进入远程主机目录。
cdup:进入远程主机目录的父目录。
cd[dir]:将本地工作目录切换至dir。
dir[remote-dir][local-file]:显示远程主机目录,并将结果存入本地文件。
get remote-file[local-file]:将远程主机的文件remote-file传至本地硬盘的local-file。
ls[remote-dir][local-file]:显示远程目录remote-dir,并存入本地文件local-file。
put local-file[remote-file]:将本地文件local-file传送至远程主机。
mput local-file:将多个文件传输至远程主机。
nlist[remote-dir][local-file]:显示远程主机目录的文件清单,存入本地硬盘local-file。
bye或quit:退出ftp会话过程。
2、TFTP Server功能
(1) TFTP Server功能配置基本同上(FTP erver功能)。
(2)实验中,为了与TFTP服务器连通,可以使用Windows命令行模式下的TFTP客户端命令,命令格式如下:
TFTP[-i]host[GET|PUT]source[destination]
参数说明如下:
-i以二进制方式传输;
host指定本地或远程主机;
GET下载文件;
PUT上传文件;
source指定要传输的文件名;
destination指定传输的目的路径。
三、实验内容和步骤
仍然采取两人一组实验方式,分别为PC1和PC2.
1、TCP协议分析实验
(1)按照上面3CDaemon软件的介绍方法在PC1上建立FTP服务器;
(2)在PC1和PC2中运行Ethereal,开始截获报文,为了只截获到与我们实验有关的内容,将截获条件设置为对方主机的IP地址,如PC1的截获条件为“host 192.168.1.xx”(注释:PC2的IP地址);
(3)在PC2上打开命令行窗口,执行如下操作:
C:\Documents and Settings\Administrator>ftp
ftp>open
To 192.168.1.yy(注释:PC1的IP地址)
Connected to 192.168.1.yy.
220 3Com 3CDaemon FTP Server Version 2.0
User(192.168.1.yy:(none)):anonymous
331 User name ok,need password
Password:
230-The response'is not valid.
230-Next time,please use your email address as password.
230 User logged in
ftp>quit
221 Service closing control connection
C:\Documents and Settings\Administrator>
(4)停止截获报文,将截获的结果保存为FTP-学号,按下列要求分析截获的结果;
a)结合本节TCP协议介绍部分的内容,分析TCP连接建立的“三次握手”过程,找到对应的报文,填写表1(传输方向填写PC2-> PC1或PC2<-PC1)。
表1 TCP连接建立报文分析
b)从FTP-学号的报文中的第一个FIN=1的TCP报文开始分析TCP连接释放的“四次握手”过程,填写表2。
表2 TCP连接释放报文分析
2、UDP协议分析实验
(1)按照上面3CDaemon TFTP Server软件的介绍方法在PC1上建立TFTP服务器;在根
目录下保存一个用于数据传输的文件(为便于观察,文件不要太大),例如f1.txt。
(2)在PC1和PC2中运行Ethereal,开始截获报文,为了只截获到与我们实验有关的内容,将截获条件设置为对方主机的IP地址,如PC1的截获条件为“host 192.168.1.xx”(注释:PC2的IP地址);
(3)在PC2上打开命令行窗口,接收TFTP服务器的文件,执行如下操作:
TFTP –i 192.168.1.yy GET f1.txt(注释:“host 192.168.1.xx”为 PC2的IP地址);
(4)停止截获报文,将截获的结果命名为UDP-学号并保存,分析UDP报文结构,
回答如下问题。
a) UDP报文头部有几个字段,绘制UDP报文的结构图。
b) 选择第一个UDP报文,分析其结构,填写表3。
表3 UDP报文分析
c) UDP报文与TCP报文有何不同?体会UDP协议和TCP协议的区别。
答:(1)UDP报文由源端口号、目标端口号、数据报长度、校验值和用户数据这5个域组成,其中前4个域各占用2个字节;TCP报文由源端口、目标端口、发送顺序、应答顺序号、偏置值、保留字段、标识字段、窗口、校验和、紧急指针、任选项、补丁和用户数据组成。
(2)UDP协议和TCP协议的区别有:a.TCP是面向连接的传输控制协议,而UDP提供了无连接的数据报服务;b.TCP具有高可靠性,确保传输数据的正确性,不出现丢失或乱序;UDP在传输数据前不建立连接,不对数据报进行检查与修改,无须等待对方的应答,所以会出现分组丢失、重复、乱序,应用程序需要负责传输可靠性方面的所有工作;c.也正因为以上特征,UDP具有较好的实时性,工作效率较TCP协议高;d.UDP段结构比TCP的段结构简单,因此网络开销也小。
第二篇:实验六、TCP 协议分析实验报告
实验六、TCP 协议分析实验报告
序号:
姓名:
学号:
成绩:
1.实验目的:
理解TCP报文首部格式和字段的作用,TCP连接的建立和释放过程,TCP数据传输过程中编号与确认的过程。
2.实验环境:
连网环境,可以是局域网,也可以是连入Internet的单机。
3.实验步骤:
(1)启动Etherel协议分析软件,并开始抓包。
(2)启动某个基于TCP的应用程序,例如连接某个FTP站点,或通过浏览器访问某个网页。
(3)等出现浏览的网页后停止数据包的捕获。
(4)出现协议分析界面,将filter 一栏填入tcp,则只显示TCP协议信息,通过此信息,可以看到TCP连接的三次握手过程和协商的初始的序列号,数据传输过程以及拆除连接的相应信息。
4.实验分析,回答下列问题
打开捕获文件tcp-ethereal-trace-1,通过捕获的数据包分析TCP建立连接的三次握手的过程,并将TCP建立连接过程中的三个报文填写下来。
(1)TCP建立连接时的三个报文,其报文首部与其他TCP报文有什么不同?
答:都使用了SYN协议。TCP建立连接时的三个报文的首部具有Options字段,且其Sequence和Acknowedgement Numbber为0或者1。
(2)报文首部的OPTION字段的作用是什么?值为多少?
答:
Options字段里包含了MSS字段,表明了本断能接收的最大长度的报文段。它的值为
(3)分析TCP数据传输阶段的前8个报文,将报文信息填入到表中
数据传送阶段第一个报文的序号字段值是否等于连接建立时第三个报文的序号?
答:等于,都为1。
(4)捕获一个拆除TCP连接的数据包,附上捕获截图,主要要包含拆除连接的数据包部分,分析TCP释放连接的过程,选择TCP释放连接过程当中的四个报文,将报文信息填在下表。
(5)总结实验过程中出现的问题,及解决方法。
①.实验过程中对捕获的报文的各字段的含义不是很清楚,不知道它代表的是什么。
②.通过这次实验,我对TCP协议的了解更深了,对其报文首部格式和字段的作用也加深了理解。