北邮大三-internet技术-实验四-周俊雯

上传人:xins****2008 文档编号:113512434 上传时间:2019-11-08 格式:DOC 页数:15 大小:912.50KB
返回 下载 相关 举报
北邮大三-internet技术-实验四-周俊雯_第1页
第1页 / 共15页
北邮大三-internet技术-实验四-周俊雯_第2页
第2页 / 共15页
北邮大三-internet技术-实验四-周俊雯_第3页
第3页 / 共15页
北邮大三-internet技术-实验四-周俊雯_第4页
第4页 / 共15页
北邮大三-internet技术-实验四-周俊雯_第5页
第5页 / 共15页
点击查看更多>>
资源描述

《北邮大三-internet技术-实验四-周俊雯》由会员分享,可在线阅读,更多相关《北邮大三-internet技术-实验四-周俊雯(15页珍藏版)》请在金锄头文库上搜索。

1、实验四实验报告实验名称分析典型P2P软件的工作过程实验目的1、利用逆向工程的方法,分析典型的P2P软件的基本工作过程实验完成人周俊霞实验日期 2014-05-22实验环境windows7系统/和虚拟机的windows XP系统通过校园网与Internet连接使用wireshark进行抓包,使用P2P软件迅雷实验步骤与结果分析1、 使用ipconfig查询本机IP2、将查毒软件等可能需要联网程序都关闭,使之不干扰抓包过程3、 启动迅雷下载并启动wireshark进行抓包(1) P2P的启动阶段用123查:我们查看一下与主机IP互动消息频繁的IP是哪家机子迅雷的服务器可以看到主机频繁与另一台机子通

2、信,也同时和迅雷的服务器通信:这台主机在山西,是联通ADSL;即是主机下载的资源来源处;后来,又发现一个IP:经查看,也是迅雷的服务器;由此可以看出,在下载开始的时候,下载主机频繁与多个服务器进行DNS解析。经过查询,知道了这些服务器就是迅雷的服务器。当本机发出下载请求时,首先访问迅雷的索引服务器,询问拥有此资源的可供用户下载资源的点。索引服务器搜索用户所要下载的资源的拥有者的信息列表,并将信息返回给用户。用户收到列表后,会尝试去连接其中的资源,如果请求都失败则会再次向迅雷的索引服务器发出请求。当请求成功时,则开始下载。(2)P2P的传输阶段通过TCP协议和ACK标示可知在下载资源时通过TCP

3、端口和资源提供者进行三次握手的过程。通过不同的seq和Ack号可以看出本机在下载这个任务时与资源提供者进行请求连接和下载资源。本主机从不同的提供资源的主机接收数据包。P2P软件下载资源通常是使用UDP协议的,因为UDP是无连接的,传输速度比较快,下载的该资源是从多个机器获取的。但是我这次貌似是TCP居多。分析:主机建立一个资源的下载任务后,向迅雷服务器发送资源名请求服务器返回给本主机多个资源主机的信息,主机通过三次握手协议连接资源提供者下载任务,并实时监控资源提供者的信息选择最优的进行下载,同时也作为资源提供者供其他连接到迅雷服务器的下载本机资源。(3) P2P的释放过程下载完成时,根据FIN

4、和ACK标示可知本机下载完成后同资源提供者采用三次握手释放资源。关于TCP建立连接和释放连接的补充说明:TCP头部: 其中 ACK SYN 序号 这三个部分在以下会用到,它们的介绍也在下面。暂时需要的信息有:ACK : TCP协议规定,只有ACK=1时有效,也规定连接建立后所有发送的报文的ACK必须为1SYN(SYNchronization) : 在连接建立时用来同步序号。当SYN=1而ACK=0时,表明这是一个连接请求报文。对方若同意建立连接,则应在响应报文中使SYN=1和ACK=1. 因此, SYN置1就表示这是一个连接请求或连接接受报文。FIN (finis)即完,终结的意思, 用来释放

5、一个连接。当 FIN = 1 时,表明此报文段的发送方的数据已经发送完毕,并要求释放连接。三次握手的过程:首先由Client发出请求连接即 SYN=1 ACK=0 (请看头字段的介绍), TCP规定SYN=1时不能携带数据,但要消耗一个序号,因此声明自己的序号是 seq=x然后 Server 进行回复确认,即 SYN=1 ACK=1 seq=y, ack=x+1,再然后 Client 再进行一次确认,但不用SYN 了,这时即为 ACK=1, seq=x+1, ack=y+1.然后连接建立,为什么要进行三次握手呢(两次确认)。下面是释放连接的过程:当客户A 没有东西要发送时就要释放 A 这边的连

6、接,A会发送一个报文(没有数据),其中 FIN 设置为1, 服务器B收到后会给应用程序一个信,这时A那边的连接已经关闭,即A不再发送信息(但仍可接收信息)。 A收到B的确认后进入等待状态,等待B请求释放连接, B数据发送完成后就向A请求连接释放,也是用FIN=1 表示, 并且用 ack = u+1(如图), A收到后回复一个确认信息,并进入 TIME_WAIT 状态, 等待 2MSL 时间。为什么要等待呢?为了这种情况: B向A发送 FIN = 1 的释放连接请求,但这个报文丢失了, A没有接到不会发送确认信息, B 超时会重传,这时A在 WAIT_TIME 还能够接收到这个请求,这时再回复一

7、个确认就行了。(A收到 FIN = 1 的请求后 WAIT_TIME会重新记时)分析与思考1、迅雷工作过程分析P2P是Peer-to-peer的缩写,指对等互联网,即数据的传输不再通过服务器,而是网络用户之间直接传递数据。P2P软件的工作过程典型P2P软件迅雷的工作过程类似,用户兼有服务器和客户端两种角色,在利用软件下载的时候同时也在上传,可以通过服务器提供的资源地址连接资源提供者的主机进行下载,同时也可以为通过该服务器相连的其他下载者提供相关资源,不再通过服务器进行下载,而直接实时选择最优用户资源进行直接传递数据。下面以一次P2P访问过程为例进行具体说明:(1)开启迅雷时,本主机将自己的IP

8、地址和端口号发给迅雷服务器请求连接,迅雷服务器响应连接。 (2)此时本主机可以作为资源提供者为连接迅雷服务器并请求资源的其他下载者提供资源。(3)当本主机建立下载任务的时候,他成为一个下载者,给迅雷服务器发送要下载的资源的名称,服务器查看资源记录并返回给本主机含有该资源的一个或多个目标主机的IP地址和端口号。 (4)本主机根据资源提供者的信息选取实时最优资源并与提供者通过三次握手建立连接,进行下载。 (5)本主机下载任务完成后会通过三次握手释放和所有资源提供者的连接,同时服务器将该主机拥有刚才所下载的资源的信息记入资源记录中,以供其他下载者下载。2、P2P软件主要实体之间的信息交互图(1)各个

9、主机将本机信息发给服务器向服务器请求连接,如果有主机要建立下载任务,则向服务器发送资源请求,服务器查看记录并返回主机具有该资源的主机信息集中式P2P模式由一个中心服务器来负责记录共享信息以及反馈对这些信息的查询,每个对等实体要对它所需共享的信息以及进行的通信负责,根据需要下载它所需要的其他对等实体上的信息。这种形式具有中心化的特点,但是它不同于传统意义上的C/S模式。因为传统C/S架构是一种纯粹的集中式信息管理方式,所有的资料都存放在服务器上,客户机只能从服务器上读取信息,客户机之间不具备交互能力;而集中式P2P模式下,所有信息资料存储在提供该资料的客户机上,服务器上只保留信息的索引,此外服务

10、器与对等实体以及对等实体之间都具有交互能力。 与集中式P2P网络不同,分布式P2P网络不存在任何集中的索引服务器,或者说所有的节点都是服务器。在分布式P2P中,对等机通过与相邻对等机之间的连接遍历整个网络。每个对等机在功能上都是相似的,没有专门的服务器,而对等机必须依靠它们所在的分布网络来查找文件和定位其他对等机上的资源。通常,初次进入分布式P2P网络的对等点一般采用广播或者组播的方式,在临近的对等点中查找节点建立连接,并在本地缓存中保存曾经连接地节点的信息(在以后的登录过程中,对等点可以直接到本地缓存中查找可连接的对等点IP进行连接,直接进入P2P网络)。进入P2P网络的节点可能还需要通过交

11、互消息增加对等连接数目,保持网络的可靠性。在查询过程中,节点向直连对等节点发送查询消息;接收到消息的节点查询本地共享文件是否匹配,若匹配则向查询节点发送命中消息,同时还向其他相邻节点转发查询消息,由此遍历指定范围的网络。 集中式P2P有利于网络资源的快速检索,并且只要服务器能力足够强大就可以无限扩展,但是其中心化的模式容易遭到直接的攻击;分布式P2P解决了抗攻击问题,但是又缺乏高效性。混合式P2P结合了二者的优点,在设计思想和处理能力上得到了优化。它在分布式模式的基础上,将用户节点按能力进行分类,使某些节点担任特殊的任务,这些节点共分为用户节点、搜索节点和索引节点。(2) 本主机根据资源提供者

12、的信息与提供者通过三次握手建立连接,进行下载。 3、P2P模式的优点和缺点:P2P模式能让客户共享带宽、存储空间和计算能力。它的分布特性通过在多结点上赋值数据,增加了防故障的健壮性。P2P模式能实现互联网的大部分潜力,将互联网从一个基于文件的网页和电子邮件网络转变成一个动态的、颗粒状网络,在网络中,特定的信息组件可被有效地放置和分享。 在带宽方面,由于有多个客户端分担了带宽,我们下载的速度会非常的快,就可以很容易的获得自己想要的东西。但是同时,在我们下载东西的同时,还要上载东西,那么对自己带宽的消耗会增大,上行带宽会限制下载的速度。而且P2P模式在版权问题和安全问题上也有很大的问题。4、 实验

13、心得:上学期有过抓包实验,所以并不是很生疏。但是,抓到的包很多很乱,一时不知从哪里找起,在怎么筛选信息分析信息方面参考了很多资料,通过逆向分析的方法对P2P的方式有了更深入的了解。我一开始下载的是20M左右的一个软件,但是,真的很乱,抓包抓到的IP要一个一个用123查去寻觅主机/服务器,找到三次握手,也很难找到释放过程;所以我换了个小软件来下载,期望抓到的包可以少一点,好分析一点,然后就是9M,发现还是不行,4M,1M,最后发现一个0.2M的,正好可以拿来做实验;滚动条滚动几次,就找到了建立,释放等过程。P2P的前景很好,从某些方面,让我感觉有点像大数据,云计算的理念,虽然到现在云计算还是各家自有定义,没有准确定义。当然,也有明显的区别,云计算一般是公司的服务器等为客户服务。对于WireShark,还是很有用的一个网络测试分析软件,掌握网络测试分析甚至调试技术,也是极好的。不过话说回来,我现在才知道迅雷下载是P2P,感觉一下子OUT了好久自己都没有意识到,计算机专业的常识普及,看样子要多脑补脑补了。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 大杂烩/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号