实验5 使用Wireshark分析FTP协议
一、实验目的
分析FTP协议
二、实验环境
与因特网连接的计算机,操作系统为Windows,安装有Wireshark、IE等软件。
三、实验步骤
HTTP和FTP都可以用来通过网络传输对象和文件,但它们的工作方式截然不同。HTTP侧重于传送立即浏览的文件或供暂时高速缓存于客户端的文件。HTTP还侧重于表达那些包含了用于规定文件格式的首部信息,以便让浏览器能正确解释内容。而 FTP却更侧重于专门进行数据传输,让用户自己去决定文件在本机上的存储时间和如何处理数据。
FTP是一种有状态的协议。FTP客户端与服务器建立一个持续的会话,并通过这个会话发送多个请求。启动会话要输入用户名和密码,然而许多FTP服务器允许公开访问,即客户端可以使用匿名登录(anonymous)及随意设置的密码连接。
一旦建立连接,对FTP会话的操作类似命令行下的操作,用户在提示符下操作,并能浏览一些文件和目录。用户在浏览目录时,FTP服务器保持对用户目录位置的跟踪。用户还可以请求从服务器获取文件或向服务器存储文件,对这些请求的解释与当前工作的目录有关。
FTP总是为正在进行的控制通道维持一个TCP连接,然后建立一个独立的用于数据传输的TCP连接。控制通道通常建立在从客户端到FTP服务器端口21的连接,它用于描述每一个使用中的数据通道的属性,包括客户端或服务器是否启动传输,以及用什么IP地址和端口连接。
用RFC-Editor搜索功能找到定义FTP协议的RFC文档。搜索结果表明该RFC文档在URL ftp://ftp.rfc-editor.org/in-notes/rfc 959.txt 找到。如果你在浏览器窗口中输入以ftp://开头的URL,那么它将作为FTP客户端来获取想要的文件。
1、俘获FTP分组
(1) 启动Wireshark嗅探器。
(2) 使用FTP工具或浏览器进入:ftp://202.120.222.71
(3) 在停止分组俘获。如图8.1所示:

图8.1 俘获的FTP分组

2、查看FTP控制通道
(1)本地客户端首先为控制通道初始化了一个到服务器上FTP端口(端口21)的TCP连接。
(2)一旦控制通道建立,服务器首先通过该通道发送信息,表示已经为服务请求做好了准备。
(3)在获取数据之前,FTP客户端必须发送一个用户名到服务器。这一步由FTP命令USER来完成。FTP服务器响应一个报文,并通知客户端发送完整的电子邮件地址作为密码(但许多客户端代之发送一个标识客户端软件的字符串作为密码,一些FTP服务器检查密码是否是电子邮件格式,但大部分不会这么做。)
(4)选择TCP流中的一个分组,然后选择Analyze菜单下的“Follow TCP Stream” ,你就会看到控制通道的所有内容。(注意客户端命令带有深暗的背景,以与服务器响应区别)。如图2所示:

图8.2 FTP控制通道

(5)用户名和密码交换完成,FTP客户端就会发送命令“PWD”来指定当前工作的目录。上图中显示服务器以当前工作的目录是根目录“/”作为响应,客户端也用发出命令“SYST”请求关于FTP服务器的信息。
(6)“PASV”通知服务器准备第一个即将到来的数据连接。服务器响应“227 Entering Passing Mode”,这表示服务器自动打开一个套接字来接受来自客户端的数据连接。
3、查看FTP数据通道
数据通道用于列出当前工作目录的内容。当建立了数据通道后,客户端通过控制通道发送LIST命令,请求列出当前工作目录的内容。当目录列表发送完毕后,数据通道也被关闭。
(1)在目录信息传送之后,FTP客户端将传过来的目录信息显示给我们。在本实验中选择进入XXX目录,这个动作被解释为CWD XXX 命令在控制通道中传送。在进入目录XXX后,目录的内容在第二个数据通道中显示出来,过程与根目录的相同。
(2)在文件传送之前,还有一个额外的命令“TYPE I”。FTP支持多种不同的文件数据表示格式,比如用I表示图像,用A表示ASCII,E表示EBCDIC。
(3)test.txt文件在第三个数据通道以类似传送目录列表的方式传送。
总之,在本机与FTP服务器之间的这个跟踪记录中,建立了4个TCP连接—一个控制通道、两个列举目录的数据通道和一个文件传输的数据通道。如图所示,我们通过使用Analyze菜单下的工具来观察每个连接的一些概要信息。选择Statisics->Conversation List->TCP(IPv4 IPv6).

                      图8.3  TCP会话列表

注意,在出现的TCP对话中,连接不是以它们出现的顺序列出来的。
4、请同学们利用校园网FTP服务器重做此实验。
四、实验报告
1、传送该文件花费了多长时间?全部FTP会话过程呢?只用来传送文件的连接呢?

0.001秒,全部3秒,47秒

2、使用Follow TCP Stream检查控制通道,服务器发送多少数据到客户端?客户端发送多少数据到服务器?

答:服务器发送了2695个bytes的报文数据,文件大小是18704364btyes
客户:803bytes的报文数据
3、使用Follow TCP Stream检查每一个数据通道,在每个数据通道中,服务器发送了数据到客户端?客户端发送多少数据到服务器?哪个请求的数据最多,传送TXT文件还是目录列表信息?

答:服务器发了529 bytes的数据,客户端发送了223byte的数据,服务器的数据最多。传送txt文件
传送txt请求的数据为3132bytes,传送目录的数据为3065bytes,所有传送txt文件的数据最多。
客户发来223bytes的数据

四川师范大学计算机网络实验5相关推荐

  1. 四川师范大学计算机网络实验1

    实验1 以太网帧与ARP协议分析 一.实验目的 分析以太网帧,MAC地址和ARP协议 二.实验环境 与因特网连接的计算机网络系统:主机操作系统为windows:使用Wireshark.IE等软件. 三 ...

  2. 四川师范大学计算机科学学院周雄俊简历,润物无声,花开有时 川师附小教师让教育更纯粹...

    中国网8月28日讯(宋得恩)润物无声,花开有时.近日,四川师范大学附属实验学校(川师附小)新学期岗前全员学习之旅正式开启.培训从教育故事分享.教育信息化.劳动教育.核心素养.教师发展五方面展开,致力培 ...

  3. 计算机网络实验报告tcp,TCP 计算机网络实验报告

    TCP 计算机网络实验报告 陕西师范大学 计算机网络 实验报告 实验五 探索TCP协议 一.实验目的 1.熟悉并掌握 wireshark的操作. 2.通过实验分析并掌握TCP是如何进行数据传输的,及其 ...

  4. c语言第五章课后答案冯山,C语言 四川师范大学 信息与计算科学 冯山实验五.doc...

    C语言 四川师范大学 信息与计算科学 冯山实验五.doc 下载提示(请认真阅读)1.请仔细阅读文档,确保文档完整性,对于不预览.不比对内容而直接下载带来的问题本站不予受理. 2.下载的文档,不会出现我 ...

  5. c语言实验报告9 四川师范大学,四川师范大学数学与软件科学学院程序设计实验报告实验十...

    四川师范大学数学与软件科学学院程序设计实验报告实验十 一.实验目的 (1) 掌握位运算的基本概念和方法,以及有关位运算的常见算法和基本应用: (2) 掌握文件和文件指针概念,以及文件的一般定义.操作方 ...

  6. 刘芳计算机学院,刘芳(计算机科学学院)老师 - 四川师范大学 - 院校大全

    刘芳 刘芳老师的简介 刘芳,女,副教授,研究生导师.研究生学历,硕士. 姓名 刘芳 性别 女 出生年月 1972.3 最终学历 研究生 职称 副教授 电话 028-84480011 学位 硕士 职务 ...

  7. 四川师范大学雷怡教授团队揭示伴侣声音促进个体的安全学习

    近日,四川师范大学雷怡教授团队在国际权威生理心理学期刊Psychophysiology  (SCI一区,IF = 4.015) 发表了题为"Attachment voices promote ...

  8. 四川师范大学计算机学院冯林,李晓宁(四川师范大学计算机科学学院副教授)_百度百科...

    李晓宁 (四川师范大学计算机科学学院副教授) 语音 编辑 锁定 讨论 上传视频 本词条缺少概述图,补充相关内容使词条更完整,还能快速升级,赶紧来编辑吧! 中文名 李晓宁 出生日期 1972年8月职   ...

  9. 计算机网络实验指导书郭雅主编,《计算机网络实验指导书》郭雅 著_孔网

    本书是与谢希仁教授编著的<计算机网络>教材配套的实验指导书.本书根据<计算机网络>教材的特点组织实验内容.在课时有限的情况下,合理地组织计算机网络实验教学,使之既能配合课堂教学 ...

最新文章

  1. 4.1.8 文件保护
  2. lda主题模型应用java_主题模型LDA及在推荐系统中的应用
  3. 用git从github网站上下载代码的方法
  4. SIGIR 2021 | 推荐系统中的多行为建模
  5. python网络编程教学_python网络编程学习初步
  6. 华科计算机考研复试机试【零散大汇总】
  7. Servlet JSP : web.xml 配置学习
  8. 域管理中经常用到的组策略禁止修改IP及计算机名
  9. python map方法
  10. java组件_三个必不可少的Java平台组件:什么是JVM,JDK,JRE?有啥区别?
  11. 算法笔记_面试题_15.回溯算法模板及示例
  12. win10平板模式_电脑也能当平板用?并可以轻松实现分屏
  13. Emotet***病毒升级,对抗杀毒软件的能力再次增强
  14. 达摩达兰论估价pdf_故事与估值epub+azw3+mobi文字版pdf+txt多看word魔鸠搜雅书屋
  15. 常用的MySQL命令大全(完整版、太到位了)
  16. @media scree 手机移动端屏幕自适应
  17. 微信小程序开发实战(网络请求设置)
  18. 忍者必须死3系统拆解+测评
  19. e580显卡驱动_搭载AMD RX 550独显!联想Thinkpad E580评测:能玩大型游戏的亲民商务本...
  20. 【C++】相对路径与绝对路径以及斜杠与反斜杠的区别

热门文章

  1. 6.近体诗的首句入韵与衬韵
  2. 基于dockerfile制作apache镜像
  3. 编写一个C程序,实现以下功能: 编写一个函数jugde(int b[],int n),该函数能将一个一维整型数组调整为左右两边,凡是奇数均放左边,凡是偶数均放在右边。
  4. Android开发学习Part3
  5. 微服务框架 SpringCloud微服务架构 分布式事务 38 动手实践 38.2 实现XA 模式
  6. IKAnalyzer分词(java、scala实现)
  7. java生成任意整数随机数(任意指定范围)
  8. 如何建立一个网站,可用互联网访问?(原创详细教程)
  9. 梅兰芳同志在京剧艺术上的成就
  10. opencv的cvtColor函数Lab转RGB源码解析及结果截断处理解决