电子科大 tcpip实验报告三 ftp中的tcp传输服务Word文档下载推荐.docx
《电子科大 tcpip实验报告三 ftp中的tcp传输服务Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《电子科大 tcpip实验报告三 ftp中的tcp传输服务Word文档下载推荐.docx(13页珍藏版)》请在冰豆网上搜索。
TCP协议(RFC793)是一个面向连接的、可靠的运输层协议,通过连接建立和连接终止这两个过程完成面向连接的传输。
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、依次启动VMwareWorkstation中TCPIP组内的虚拟机PC2和Server。
2、启动DynamipsServer,然后运行,在Dynagen窗口中提示符“=>
”后依次输入以下命令启动路由器R1和R2:
=>
startR1
startR2
3、在PC2上pingServer的IP地址确保整个实验网络运行正常。
4、在Dynagen窗口中提示符“=>
”后输入以下命令捕获子网A中的分组:
captureR1f0/0cmdftp.cap
5、在PC2的cmd窗口中以命令行的方式启动FTP客户进程登录FTP服务器,下载一份文本文件tcpip.txt后结束FTP客户进程。
该过程中的操作示意如下:
(X.X.X.X表示FTP服务器的IP地址,黑斜体表示学生输入内容,其它为系统显示信息)
C:
\>
ftpX.X.X.X
……
User(X.X.X.X:
(none)):
ftp
Password:
ftp
ftp>
gettcpip.txt
quit
221
6、在Dynagen窗口中提示符“=>
”后依次输入以下命令重新捕获子网A中的分组:
nocaptureR1f0/0
captureR1f0/0ieftp.cap
7、在PC2上用IE浏览器作为FTP客户机登录同一台FTP服务器,下载完文本文件tcpip.txt后关闭IE浏览器窗口。
8、在Dynagen窗口中提示符“=>
”后输入以下命令停止捕获:
9、用Wireshark软件查看并分析捕获的分组文件(cmdftp.cap、ieftp.cap)中的FTP会话分组,查看过滤条件为“ip.addr==192.168.22.253”(在Wireshark主窗口界面“过滤工具栏”的“Filter:
”域中输入)。
10、实验结束后,按照以下步骤关闭实验软件、上传实验数据、还原实验环境:
(1)在Dynagen窗口中提示符“=>
”后依次输入以下命令关闭Dynagen窗口,然后再关闭DynamipsServer窗口:
stop/all
exit
(2)依次关闭PC2和Server,再关闭VMware窗口;
(3)运行所在目录下的“reset.bat”文件。
六、实验数据及结果分析
1、按捕获顺序记录步骤6中子网A上捕获的所有TCP报文段,记录信息如下:
IP分组首部
TCP报文段
IP地址
端口
序号
确认号
标志位
窗口
长度(字节)
源
目的
首部
数据
192.168.11.2
192.168.22.253
1035
21
370c6dc2
-
SYN
faf0
28
f6006a1b
370c6dc3
SYN,ACK
f6006a1c
ACK
20
PSH,ACK
27
f6006a37
fad5
10
370c6dcd
fae6
72
f6006a7f
fa8d
370c6dd7
fadc
31
f6006a9e
fa6e
24
370c6def
fac4
30
f6006abc
fa50
16
370c6dff
fab4
65
1037
02974fb2
a258a5b1
02974fb3
a258a5b2
12
02974fbf
FIN,ACK
02974fc0
fae4
f6006afd
fa0f
a258a5b3
f6006b15
f9f7
6
370c6e05
faae
7
f6006b1c
f6006b1d
f9f0
370c6e06
说明:
“标志位”=控制字段中置1的标志;
“序号”、“确认号”和“窗口”用十六进制表示。
【分析】
1)步骤6中的FTP客户以及FTP服务器之间建立了几条TCP连接?
每条连接中双方的IP地址、TCP端口号和初始序号分别是多少?
答:
根据标志位SYN出现的数量,可以判断建立了2条TCP连接。
分别是:
源IP地址
目的IP地址
TCP源端口号
TCP目的端口号
初始序号
2)TCP报文段中的窗口值定义的是该报文段源端还是目的端的发送窗口还是接收窗口?
是该报文段目的端的接收窗口。
3)实验中哪些类型的TCP报文段首部中携带有MSS的选项信息?
标志位中含有SYN的TCP报文段,本实验中为SYN和(SYN,ACK)。
2、按捕获顺序记录步骤7中子网A上捕获的所有TCP连接建立、连接终止和连接复位报文段,记录信息如下:
1038
f958dc5c
1a7fbdd8
f958dc5d
1a7fbdd9
1039
18983596
ef2e5ad8
18983597
ef2e5ad9
ef2e5b0b
ef2e5b0c
fabe
18983598
1040
1036
2c72e53d
7dc6c233
2c72e53e
7dc6c234
7dc6c240
7dc6c241
2c72e53f
“序号”、“确认号”和“窗口”用十六进制表示。
1)步骤7中的FTP客户以及FTP服务器之间建立了几条TCP连接?
根据标志位SYN第一次出现的数量,可以判断FTP客户和FTP服务器之间建立了3条TCP连接。
2)步骤6和步骤7的FTP会话交互有哪些不同?
解释产生这些差异的原因。
FTP连接有控制连接和数据连接2种,步骤6和步骤7中,FTP控制连接相同而数据连接不同。
在步骤6中数据连接的发起方是服务器,而步骤7中数据连接的发起方是客户机;
另外,步骤6中的FTP服务器端口是熟知端口20,而步骤7中的FTP服务器则不是。
原因是端口定义命令不同。
步骤6中使用PORT命令,客户机选择一个临时端口号,并使用被动打开把它发给服务器,服务器就使用这个端口号和熟知端口20创建主动打开。
步骤7中使用PASV命令,客户要求服务器先选择一个端口号,服务器在该端口进行被动打开,并在响应中发送端口号,客户使用这个端口号发出主动打开。
七、实验结论
1.TCP报文段中的窗口值是该报文目的端的接收窗口,而不是该报文段源端的发送窗口;
只有标志位中含有SYN报文段的首部中携带有MSS的选项信息;
一条TCP连接由IP地址(源、目的)和端口号唯一标识。
2.FTP有两种端口命令(PORT模式和PASV模式),不同的端口命令将造成不同的FTP会话交互。
3.(要求:
在图中注明每个TCP报文段的编号、类型、序号和确认号,并标注出每一条TCP连接的连接建立、数据传输和连接终止阶段。
)
3.步骤6的时序交互图:
八、总结及心得体会
通过实验加深了对FTP协议工作原理的理解,以及FTP控制连接和数据连接的特点和异同。
九、对本实验过程及方法、手段的改进建议
无。