您现在的位置是:首页 >技术杂谈 >计算机网络-应用层和传输层协议分析实验(PacketTracer)网站首页技术杂谈

计算机网络-应用层和传输层协议分析实验(PacketTracer)

A橙_ 2023-06-25 20:00:02
简介计算机网络-应用层和传输层协议分析实验(PacketTracer)

实验三.应用层和传输层协议分析实验

一.实验目的

        通过本实验,熟悉PacketTracer的使用,学习在PacketTracer中仿真分析应用层和传输层协议,进一步加深对协议工作过程的理解。

二.实验内容

        从 PC 使用 URL 捕获 Web 请求,运行模拟并捕获通信,研究捕获的通信。

1.从 PC 使用 URL 捕获 Web 请求。

2.从 PC 访问服务器的HTTPS服务,捕获数据包并分析。

3.从 PC 访问服务器的FTP服务,捕获数据包并分析。

三.实验过程

1.从PC使用URL捕获Web请求

(1)配置并进行请求

        放置并直接连接一个PC和一个服务器:

         对PC机进行IP配置,配置为静态IP192.168.0.1,并将DNS服务器IP地址配置为192.168.0.2。

         对服务器进行IP配置,将IP配置为192.168.0.2,并打开DNS服务,添加一个域名解析:

        服务器的HTTP服务是默认打开的。PC机的DNS服务器设置为了192.168.0.2,当PC机对设置了域名解析的www.server1.com进行访问时,首先会发送DNS请求报文给该服务器,由该服务器进行DNS解析并返回IP地址192.168.0.2,然后PC机再向服务器发起HTTP请求。

      切换到仿真模式,在PC机的浏览器中访问该域名,在事件窗口可以看到两个数据包:

        点击播放按钮运行模拟和捕获事件。可以看到PC机与服务器之间有数据传输,右侧的事件列表显示了传输的数据包,直到没有更多事件时结束。经过几个数据包的传输,可以观察到浏览器显示了访问的页面(默认页面)。

 (2)数据包分析

        没有更多事件后,可以在事件列表看到所有的数据包。

        在这个对Web的访问请求中,数据包的协议类型有DNS,ARP,TCP,HTTP。可以查看每个数据包的PDU信息,PDU信息按照OSI参考模型组织,可以看到每一层的事件,也可以查看PDU的详细信息,在详细信息中,数据按照不同层次的协议组织。查看第一个DNS数据包的PDU信息,可以在应用层看到这是一个DNS请求,在PDU详情中可以看到DNS请求的具体域名为www.server1.com

        查看其他数据包的信息,可以找到DNS响应,TCP建立连接,HTTP发起请求和服务器响应HTTP请求的相应数据包:

        其中,显示没有上一个设备的数据包是在设备端产生但未发送到的。其中HTTP请求是非持续连接,只发送了一个文件。还可以注意到断开连接时,服务器的FIN-ACK和FIN报文段合并了,因此只通过三个数据包就断开了连接。

2.从PC访问服务器的HTTPS服务,捕获数据包并分析。

        Packet Tracer支持HTTP协议和HTTPS协议,并且支持不同格式的图像。以下分别使用HTTP协议和HTTPS协议访问一个Web页面。捕获数据包并进行分析。

(1)使用HTTP协议访问Web页面

        在仿真模式下,使用浏览器访问http://10.1.1.3,网页的内容是Gif和Jpg图片。捕获的数据包在事件列表列出。

 

         除了ARP,TCP,HTTP协议的报文,还出现了ICMP控制报文,IPv6中的NDP(邻居发现协议)。IPv6中的NDP可以代替ARP实现地址解析,路由器发现等,可以观察到只有PC0发往服务器的NDP报文,服务器没有响应,因为服务器没有IPv6配置。

        查看事件列表的HTTP报文,可以找到源主机PC0的HTTP请求和服务器的响应。在PDU信息中,HTTP请求的请求行没有显示。第一个请求应该是对html页面的请求,并可以找到对应的服务器响应。

        接收类型为图片的是对页面的图片对象的请求,但是服务器没有发回图片对象,因此浏览器的页面也无法显示这两个没有请求到的图片。

(2)使用HTTPS协议访问Web页面

        在仿真模式下,使用浏览器访问https://10.1.1.3,查看并分析捕获的数据包。可以看到请求和响应均使用HTTPS协议。

 

        查看具体的PDU信息,和使用HTTP协议是相同的。尽管HTTPS是一个加密协议,在这个版本的Packet Tracer中,PDU不会隐藏报文内容。

3.从 PC 访问服务器的FTP服务,捕获数据包并分析。

        网络拓扑结构如下,包含两个PC主机,一个交换机,一个路由器,以及一个服务器。其中服务器提供FTP服务,支持文件的命名,删除,读写等操作;PC运行FTP客户端,访问服务器提供的FTP服务。

 (1)测试FTP write

        在命令行输入ftp www.ftpserver.com访问服务器的FTP服务,服务器确认连接后,输入默认的用户名和密码cisco,然后就可以使用服务器的FTP服务了。将文件sampleFile.txt上传到服务器。

         在服务器端打开FTP服务配置,可以找到从PC0上传的文件。

(2)测试FTP read和directory listing

        输入dir,可以看到FTP服务器的文件列表,选择一个文件,使用get命令下载该文件。然后使用quit命令退出FTP服务,使用dir命令可以看到PC主机的文件,可以找到下载的文件。

FTP服务器的文件列表

下载文件

(3)测试FTP rename和delete

        将上传的sampleFile.txt重命名为testFile.txt,然后将其删除。

 (4)数据包分析

        打开仿真模式,访问FTP服务,可以在事件列表查看捕获到的数据包。可以看到数据包从PC0发出,要经过交换机和路由器。可以找到携带FTP命令的数据包以及响应的数据包。这个FTP数据包只响应了命令完成,文件列表在后续的FTP数据包中发送给主机。

响应数据包经过交换机和路由器到达主机PC0 

 文件列表的发送

        FTP工作的基本过程是,客户与FTP建立一个命令连接,当需要传输文件时,FTP首先发送数据包表示接受到了命令,然后主机会与FTP服务器建立一个新的TCP连接,进行文件的传输。

        分析事件列表中的数据包,可以发现PC机一共建立了源端口1030,1031两个连接,1030端口向FTP服务器的21端口发送FTP请求,而1031端口则是与服务器的1034端口建立连接,完成文件的传输。工作的过程和原理是一致的。

四.实验总结

通过本次实验学习与熟悉了Packet Tracer的使用,以及使用Packet Tracer进行协议分析的基本方法和过程。通过对HTTP以及FTP请求过程的数据包分析,更加深入了解了这两个应用层协议的工作过程,以及底层的协议的数据包如何传输并支持应用层的协议。

风语者!平时喜欢研究各种技术,目前在从事后端开发工作,热爱生活、热爱工作。