电子科技大学
实
验
报
告
学生姓名:
学号:
指导教师:
日期: 年 月 日
实验项目名称:
报告评分: 教师签字:
一、实验原理
FTP协议是一个用于文件传输的应用层协议,采用客户/服务器模式实现文件传输功能,使用TCP协议提供的面向连接的可靠传输服务。FTP客户和服务器之间使用2条TCP连接来传输文件:控制连接(TCP端口21)和数据连接(TCP端口20)。在整个FTP会话交互过程中,控制连接始终处于连接状态;数据连接则在每一次文件传送时使用PORT命令或PASV命令打开,文件传送完毕后关闭。因此,整个FTP会话中如果传送多个文件,那么数据连接会打开和关闭多次。
TCP协议(RFC 793)是一个面向连接的、可靠的运输层协议,通过连接建立和连接终止这两个过程完成面向连接的传输。TCP的连接建立通常被称为“三向握手”。在建立TCP连接之前,服务器程序需要向它的TCP模块发出被动打开请求,表示该服务器已经准备好接受客户的连接。客户程序则要向它的TCP模块发出主动打开请求,表示该客户需要连接特定的服务器。然后即可开始建立TCP连接。以客户端主动连接TCP连接为例,TCP连接建立过程如下:
(1)客户端TCP发送一个SYN报文段。该报文段包括源端口号、目的端口号、客户的初始序号、客户可接收的TCP报文段数据的最大长度(MSS)等信息。
(2)服务器端TCP收到客户端的SYN报文段后,返回一个SYN和ACK报文段。该报文段使用ACK标志和确认号字段确认已经收到了客户端的SYN报文段,另外对服务器端的报文段进行初始化。
(3)客户端TCP收到服务器端的SYN和ACK报文段后,发送一个ACK报文段。该报文段使用ACK标志和确认号字段确认已经收到了服务器端的SYN和ACK报文段。
TCP连接中的任何一方(客户或服务器)都可以关闭连接。当一方的连接被终止时,另一方还可以继续向对方发送数据。因此,要关闭双向的TCP连接就需要4个动作。以客户端主动关闭TCP连接为例,TCP连接终止过程如下:
(1)客户端TCP发送一个FIN报文段,宣布它要终止连接。
(2)服务器端TCP收到客户端的FIN报文段后,返回一个ACK报文段,用来确认已收到了客户端的FIN报文段。
(3)服务器端TCP可以在服务器到客户方向上继续发送数据。当服务器没有更多的数据发送时,就发送一个FIN报文段。
(4)客户端TCP收到服务器端的FIN报文段后,返回一个ACK报文段,用来确认已收到了服务器端的FIN报文段。
二、实验目的
1、掌握TCP协议工作原理
2、掌握TCP的连接建立和连接终止过程
3、了解FTP会话过程中的控制连接和数据连接特点
三、实验内容
实验拓扑中VMware虚拟机PC2和Server分别位于由提供集线器功能的虚拟网卡VMnet1和VMnet2模拟实现的两个以太网Ethernet1和Ethernet2中,这两个以太网对应的IP子网A和子网B分别连在Dynamips软件模拟实现的路由器R1和R2的F0/0接口上。R1和R2之间通过PPP链路互联。Server上开启了匿名FTP服务。
实验者在PC2上分别使用ftp命令和IE浏览器连接FTP服务器下载文件,结合Dynamips软件的分组捕获功能以及Wireshark软件的捕获分组查看功能,考察在FTP会话过程中TCP协议的连接建立过程和连接终止过程。通过分析TCP连接建立和连接终止过程中所捕获的TCP报文段,掌握TCP报文段首部中的端口地址、序号、确认号和各个码元比特的含义和作用;并通过FTP操作体会网络应用程序间的交互模式——客户/服务器(C/S)模式。
四、实验器材(设备、元器件)
PC计算机一台。
五、实验步骤
1、依次启动VMware Workstation中TCPIP组内的虚拟机PC2和Server。
2、启动Dynamips Server,然后运行lab3,在Dynagen窗口中提示符“=>”后依次输入以下命令启动路由器R1和R2:
=> start R1
=> start R2
3、在PC2上ping Server的IP地址确保整个实验网络运行正常。
4、在Dynagen窗口中提示符“=>”后输入以下命令捕获子网A中的分组:
=> capture R1 f0/0 cmdftp.cap
5、在PC2的cmd窗口中以命令行的方式启动FTP客户进程登录FTP服务器,下载一份文本文件后结束FTP客户进程。
该过程中的操作示意如下:(X.X.X.X表示FTP服务器的IP地址,黑斜体表示学生输入内容,其它为系统显示信息)
C:\> ftp X.X.X.X
……
User (X.X.X.X:(none)): ftp
……
Password: ftp
……
ftp> get
……
ftp> quit
221
6、在Dynagen窗口中提示符“=>”后依次输入以下命令重新捕获子网A中的分组:
=> no capture R1 f0/0
=> capture R1 f0/0 ieftp.cap
7、在PC2上用IE浏览器作为FTP客户机登录同一台FTP服务器,下载完文本文件后关闭IE浏览器窗口。
8、在Dynagen窗口中提示符“=>”后输入以下命令停止捕获:
=> no capture R1 f0/0
9、用tcpip协议pdfWireshark软件查看并分析捕获的分组文件(cmdftp.cap、ieftp.cap)中的FTP会话分组,查看过滤条件为“ip.addr == 192.168.22.253”(在Wireshark主窗口界面“过滤工具栏”的“Filter:”域中输入)。
10、实验结束后,按照以下步骤关闭实验软件、上传实验数据、还原实验环境:
(1)在Dynagen窗口中提示符“=>”后依次输入以下命令关闭Dynagen窗口,然后再关闭Dynamips Server窗口:
=> stop /all
=> exit
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论