计算机网络课程设计报告网络数据的获取

上传人:枫** 文档编号:501602637 上传时间:2022-11-21 格式:DOC 页数:13 大小:1.05MB
返回 下载 相关 举报
计算机网络课程设计报告网络数据的获取_第1页
第1页 / 共13页
计算机网络课程设计报告网络数据的获取_第2页
第2页 / 共13页
计算机网络课程设计报告网络数据的获取_第3页
第3页 / 共13页
计算机网络课程设计报告网络数据的获取_第4页
第4页 / 共13页
计算机网络课程设计报告网络数据的获取_第5页
第5页 / 共13页
点击查看更多>>
资源描述

《计算机网络课程设计报告网络数据的获取》由会员分享,可在线阅读,更多相关《计算机网络课程设计报告网络数据的获取(13页珍藏版)》请在金锄头文库上搜索。

1、 课程设计报告课程设计名称 : 网络数据的获取 课程设计时间: 2010.12.10 专 业 班 级 学生姓名 学 号 指导老师 课程设计报告(附页)一、实验目的及要求:1、实验要求:(1)、安装并熟悉Sniffer软件的界面及基本使用方法(2)、捕获发生在ping过程中的ARP报文,分析组成特征。(3)、捕获ICMP数据包,分析研究。(4)、捕获TCP“三次握手”连接与释放数据包,并分析2、实验目的:通过对网络数据包的分析,掌握在TCP/IP,模型中,各个层次网络PDU的实际组成,深入理解网络协议组成,对网络中传送数据的过程有更深入的了解二、实验过程及要点: 1、捕获发生在ping过程中的A

2、RP报文,分析组成特征1.1 ARP工作原理及原理图首先,每台主机都会在自己的ARP缓冲区中建立一个 ARP列表,以表示IP地址和MAC地址的对应关系。当源主机需要将一 - -ARP工作原理图- 个数据包要发送到目的主机时,会首先检查自己 ARP列表中是否存在该 IP地址对应的MAC地址,如果有就直接将数据包发送到这个MAC地址;如果没有,就向本地网段发起一个ARP请求的广播包,查询此目的主机对应的MAC地址。此ARP请求数据包里包括源主机的IP地址、硬件地址、以及目的主机的IP地址。网络中所有的主机收到这个ARP请求后,会检查数据包中的目的IP是否和自己的IP地址一致。如果不相同就忽略此数据

3、包;如果相同,该主机首先将发送端的MAC地址和IP地址添加到自己的ARP列表中,如果ARP表中已经存在该IP的信息,则将其覆盖,然后给源主机发送一个 ARP响应数据包,告诉对方自己是它需要查找的MAC地址;源主机收到这个ARP响应数据包后,将得到的目的主机的IP地址和MAC地址添加到自己的ARP列表中,并利用此信息开始数据的传输。如果源主机一直没有收到ARP响应数据包,表示ARP查询失败。1.2 捕获ARP数据包,并分析ARP协议的作用是由机器地 IP地址找出对应的物理地址。点击sniffercapture optionstart, 启动抓包以后,在主机的DOS窗口中Ping虚拟机,等Ping

4、指令执行完毕后,点击工具栏上的停止并分析按钮。在出现的窗口选择Decode选项卡,可以看到数据包在两台计算机间的传递过程。将捕获的数据包进行过滤,找出ARP报文。(由于ARP数据包例题没有,以下就暂不贴图了)本机IP:192.168.0.1 (c0 a8 00 01)本机MAC:00-50-56-c0-00-01目标IP:192.168.0.2 (c0 a8 00 02)目标MAC:00-0c-29-0b-42-7e1.21、 Ping 目标主机192.168.0.2时,本机发送的ARP数据包为:00000000 : ff ff ff ff ff ff 00 50 56 c0 00 01 08

5、 06 00 0100000010 : 08 00 06 04 00 01 00 50 56 c0 00 01 c0 a8 00 0100000020 : 00 00 00 00 00 00 c0 a8 00 02以太网数据包发送目的地:ff ff ff ff ff ff(全网)以太网数据包发送源:00 50 56 c0 00 01(本机)以太网数据包数据包内容类型:08 06(ARP数据包)ARP数据包类型:00 01(Request)数据内容:告诉IP为c0 a8 00 02的目标主机,本机的IP为c0 a8 00 01,MAC为00 50 56 c0 00 01,请更新,并将你的MAC发

6、送给我。目标主机回应本机的ARP数据包为00000000 : 00 50 56 c0 00 01 00 0c 29 0b 42 7e 08 06 00 0100000010 : 08 00 06 04 00 02 00 0c 29 0b 42 7e c0 a8 00 0200000020 : 00 50 56 c0 00 01 c0 a8 00 01以太网数据包发送目的地:00 50 56 c0 00 01以太网数据包发送源: 00 0c 29 0b 42 7e以太网数据包数据包内容类型:08 06(ARP数据包)ARP数据包类型:00 02(Reply)数据内容:告诉MAC为 00 50 5

7、6 c0 00 01 的主机,你的IP和MAC我已经收到,我的MAC和IP为00 0c 29 0b 42 7e 和c0 a8 00 02,请保存更新。1.22、 修改系统IP时(未发生IP冲突的情况下),发送的ARP数据包为00000000 : ff ff ff ff ff ff 00 0c 29 0b 42 7e 08 06 00 0100000010 : 08 00 06 04 00 01 00 0c 29 0b 42 7e c0 a8 00 0300000020 : 00 00 00 00 00 00 c0 a8 00 03以太网数据包发送目的地:ff ff ff ff ff ff(全网

8、)以太网数据包发送源:00 0c 29 0b 42 7e(本机)以太网数据包数据包内容类型:08 06(ARP数据包)ARP数据包类型:00 01(Request)数据内容:告诉IP为c0 a8 00 03的主机,本机的MAC和IP为00 0c 29 0b 42 7e 和c0 a8 00 03。由于网络内没有c0 a8 00 03 主机,所以此数据包将不会有回应,此时,局域网交换机将会刷新缓存,使你的IP和MAC对应起来。2、捕获ICMP数据包,分析研究。 ICMP数据包分成两类,一类是差错报文,一类是询问报文,其作用是允许主机或路由报告差错情况和提供有关异常情况的报告。 按照捕获ARP的相同

9、方法,捕获ICMP数据包,如图1.21,1.22所示图1.21 PING命令ICMP请求数据包图1.21 PING命令ICMP应答数据包请求数据包和应答数据包的区别在于其类型,请求包为Type8,而应答包为Type0。以下为ping四次请求和四次应答,如图1.23所示。图1.23 ping四次请求和四次应答Ping命令发出后,本地主机向目的主机发出装载着ICMP数据报的IP数据包,一共发出四个IP数据包;目的主机在收到一个请求包后就回送一个应答包,所以共有四个应答包。3、 捕获TCP“三次握手,四次挥手”连接与释放数据包,并分析TCP是主机对主机层的传输控制协议,提供可靠的连接服务,采用三次握

10、手确认建立一个连接:位码即tcp标志位,有6种标示:SYN(synchronous建立联机) ACK(acknowledgement 确认) PSH(push传送) FIN(finish结束) RST(reset重置) URG(urgent紧急)Sequence number(顺序号码) Acknowledge number(确认号码)。1) 原理分析及原理图:建立连接:(客户机发起连接)1.1).客户机发送一个syn位置为一的数据包,以及端口号给服务器.此时客户机的连接被置为syn_sent状态1.2).服务器接收到请求后,以一个syn和ack位置为一的tcp包作为回应.服务器的连接被置为s

11、yn_rcvd状态1.3).客户机收到回应后,回应一个ack被置为一的tcp包,客户机状态转入established.断开连接:(客户机发起断开请求)四次断开是由于tcp的半关闭造成的,即一方已经断开连接二另一方没有断开1.1).客户机发送一个带有fin为的包给服务器,然后进入fin_wait_1状态.而此时服务器处于close_wait状态1.2).服务器收到后,回应一个ack到客户机.此时客户机进入fin_wait_2状态1.3).服务器继续回应一个Fin的包,服务器进入last_ack状态,而客户机进入time_wait状态1.4).客户机发送ack给服务器,客户机进入cloesed状态

12、.最终双方连接终止.2) TCP“三次握手;四次挥手”数据包分析如上图所示即为TCP数据包中的“三次握手”和“四次挥手”进程,以下进行详细解说。一个tcp连接的建立需要进行“三次握手”:1发送端发送一个SYN=1,ACK=0标志位数据包给接收端,请求进行连接,这是第一次握手; (如下图所示)2接收端收到请求并且允许连接的话,就会发送一个SYN=1,ACK=1标志的数据包给发送端,告诉它,可以通讯了,并且让发送端发送一个确认数据包,这是第二次握手; (如下图所示)3.最后,发送端发送一个SYN=0,ACK=1的数据包给接收端,告诉它连接已被确认,这就是第三次握手。之后,一个TCP连接建立,开始通

13、讯。(如下图所示)以下是TCP数据包的“四次挥手”过程:1第一次挥手2第二次挥手3第三次挥手4第四次挥手3) 为什么建立连接协议是三次握手,而关闭连接却是四次握手呢?这是因为服务端的LISTEN状态下的SOCKET当收到SYN报文的建连请求后,它可以把ACK和SYN(ACK起应答作用,而SYN起同步作用)放在一个报文里来发送。但关闭连接时,当收到对方的FIN报文通知时,它仅仅表示对方没有数据发送给你了;但未必你所有的数据都全部发送给对方了,所以你可以未必会马上会关闭SOCKET,也即你可能还需要发送一些数据给对方之后,再发送FIN报文给对方来表示你同意现在可以关闭连接了,所以它这里的ACK报文

14、和FIN报文多数情况下都是分开发送的。4) 为什么TIME_WAIT状态还需要等2MSL后才能返回到CLOSED状态?这是因为虽然双方都同意关闭连接了,而且握手的4个报文也都协调和发送完毕,按理可以直接回到CLOSED状态(就好比从SYN_SEND状态到ESTABLISH状态那样);但是因为我们必须要假想网络是不可靠的,你无法保证你最后发送的ACK报文会一定被对方收到,因此对方处于LAST_ACK状态下的SOCKET可能会因为超时未收到ACK报文,而重发FIN报文,所以这个TIME_WAIT状态的作用就是用来重发可能丢失的ACK报文。课程设计总结(附页)这次计算机网络课程设计,经过认真的思考和网上资料的查找往常了这次实验。这次设计我不仅学会了抓包软件的使用,还通过查找资料等方法理解了很多上课不懂得东西。此次实验捕获了3个不同的数据包,分别为Icmp包,Tcp包 和Arp包,通过对数据包的分析,初步掌握在TCP/IP,模型中,各个层次网络PDU的实际组成,深入理解网络协议组成,对网络中传送数据的过程有更深入的了解。实践是学习的最好方法,经过实践知道自己的不足,从而通过看书查资料来补足,使自己受益匪浅。指导老师评语:

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

当前位置:首页 > 办公文档 > 工作计划

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