合肥学院TCPIP协议分析及应用实验报告 (1)_第1页
合肥学院TCPIP协议分析及应用实验报告 (1)_第2页
合肥学院TCPIP协议分析及应用实验报告 (1)_第3页
合肥学院TCPIP协议分析及应用实验报告 (1)_第4页
合肥学院TCPIP协议分析及应用实验报告 (1)_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、计算机科学与技术系 实 验 报 告专业名称 网络工程 课程名称 TCP/IP协议 项目名称 TCP/UDP 班 级 学 号 姓 名 同组人员 实验日期 2014.11 1、 实验目的与要求:1、 实验目的:TCP:1) 掌握TCP协议的报文格式2) 掌握TCP连接的建立和释放过程3) 掌握TCP数据传输中编号与确认的过程4) 掌握TCP协议校验和的计算方法5) 理解TCP的重传机制UDP:1) 掌握UDP协议的报文格式2) 掌握UDP协议校验和的计算方法3) 理解UDP协议的优缺点2、实验环境2、 实验内容1、 实验原理TCP:1) TCP报文格式16位源端口号16位目的端口号32位序号32位

2、确认序号4位首部长度保留(6位)URGACKPSHRSTSYNFIN16位窗口大小16位校验和16位紧急指针选项数据2) TCP连接的建立TCP是面向连接的协议。在面向连接的环境中,开始传输数据之前,在两个终端之间必须先建立一个连接。对于一个要建立的连接,通信双方必须用彼此的初始化序列号seq和来自对方成功传输确认的应答号ack(指明希望收到的下一个八位组的编号)来同步,习惯上将同步信号写为SYN,应答信号写为ACK。 整个同步的过程称为三次握手.3) TCP连接的释放对于一个已经建立的连接,TCP使用四次握手来结束通话(使用一个带有FIN附加标记的报文段)。4) TCP重传机制TCP每发送一

3、个报文段,就对这个报文段设置一次计时器。只要计时器设置的重传时间到期,但还没有收到确认,就要重传这一报文段。5) 实验流程概述1 在机房调试好需做的拓扑结构2 根据拓扑结构,配置小组成员各自电脑的IP地址,子网掩码和网管3 根据课件中的具体实验要求和实验步骤进行操作UDP:1) UDP报文格式每个UDP报文称为一个用户数据报(User Datagram)。用户数据报分为两个部分:UDP首部和UDP数据区。 源端口目的端口报文长度校验和数据2) UDP单播与广播 在UDP单播通讯模式下,客户端和服务端之间建立一个单独的数据通道。 从一台服务端传送出的数据包只能由一个客户端接收。 众所周知,UDP

4、协议是不可靠的,数据包可能在传输过程中丢失、重复、没有按照发送顺序到达, 而且作为UDP数据包,其大小还受限于数据包的最大上限。 在UDP广播通讯模式下,一个单独的数据包拷贝发送给网络上所有主机。 当不能明确具体的服务器,而又要求该服务时,UDP广播提供了传输不区分种类的消息的便捷方式。在多数情况下UDP广播仅仅作为本地网络通信形式。受限的广播地址是55。该地址用于主机配置过程中IP数据报的目的地址,此时,主机可能还不知道它所在网络的网络掩码,甚至连它的IP地址也不知道。在任何情况下,路由器都不转发目的地址为受限广播地址的数据报,这样的数据报仅出现在本地网络中。 已知

5、网络主机的IP地址和子网掩码,可以算得指向主机所在子网的广播。 子网广播地址 = (主机IP) “或” (子网掩码取反)。3) UDP校验和的计算3、实验具体步骤及结果TCP:练习一:察看TCP连接的建立和释放1. 主机B、C、D启动协议分析器进行数据捕获,并设置过滤条件(提取TCP协议)。2. 主机A启动仿真编辑器,进入TCP连接视图。在“服务器信息/IP地址”中填入主机C的IP地址;使用“端口扫描”获取主机C的TCP端口列表,在“服务器信息/端口”中填入主机C的一个TCP端口(大于1024);点击“连接”按钮进行连接。3. 察看主机B、C、D捕获的数据,填写下表。字段名称报文1报文2报文3

6、Sequence Number375730584018801033583757305841Acknowledgement Number037573058411880103359ACK011SYN1104. TCP连接建立时,前两个报文的首部都有一个“maximum segment size”字段,它的值是多少?作用是什么?结合IEEE802.3协议规定的以太网最大帧长度分析此数据是怎样得出的 maximum segment size=14605. 主机A断开与主机C的TCP连接。 6. 察看主机B、C、D捕获的数据,填写下表。 字段名称报文4报文5报文6报文7Sequence Number58

7、810841235714588363571458836588108413Acknowledgement Number35714588365881084135881084133571458837ACK1111SYN00007. 结合步骤3、5所填的表,理解TCP的三次握手建立连接和四次握手的释放连接过程,理解序号、确认号等字段在TCP可靠连接中所起的作用。练习二:利用仿真编辑器编辑并发送TCP数据包1) 主机B启动协议分析器捕获数据,设置过滤条件(提取http协议)。 2) 主机A上启动仿真编辑器,在界面初始状态下,程序会自动新建一个单帧,可以利用仿真编辑器打开时默认的以太网帧进行编辑。 3)

8、填写该帧的以太网协议首部,其中:源MAC地址:主机A的MAC地址。目的MAC地址:服务器的MAC地址。协议类型或数据长度:0800(IP协议)。4) 填写IP协议头信息,其中: 高层协议类型:6(上层协议为TCP)。 总长度:40(IP首部+TCP首部)。 源IP地址:主机A的IP地址。 目的IP地址:服务器的IP地址(0)。 其它字段任意。 应用前面学到的知识计算IP首部校验和。 5) 填写TCP协议信息,其中: 源端口:任意大于1024的数,不要使用下拉列表中的端口。 目的端口:80(HTTP协议)。 序列号:选择一个序号ISN(假设1942589885),以后的数据都

9、按照这个来填。 确认号:0。 首部长度和标志位:5002(即长度20字节,标志SYN=1)。 窗口大小:任意。 紧急指针:0。 使用协议仿真编辑器的“手动计算”方法计算校验和;再使用协议仿真编辑器的“自动计算”方法计算校验和。将两次计算结果相比较,若结果不一致,则重新计算。 TCP在计算校验和时包括哪些内容?将设置完成的数据帧复制2份;修改第二帧的TCP 层的“首部长度和标志”位为5010(即标志位ACK=1),TCP层的“序号”为1942589885+1。修改第三帧的TCP层的“首部长度和标志”位为5011(即标志位ACK=1、FIN=1),TCP层的“序号”为1942589885+1。 6

10、) 在发送该TCP连接请求之前,先ping 一次目标服务器,让目标服务器知道自己的MAC地址。 7) 使用“仿真编辑器/工具菜单/TCP屏蔽/启动屏蔽”功能,为TCPIP协议栈过滤掉收到的TCP数据。 8) 点击菜单栏中的“发送”按钮,在弹出对话框中选择发送第一帧。9) 我们假设接收字节序号为:3246281765,修改第二帧和第三帧的TCP层的“ACK确认序号”的值:3246281766。 10) 计算第二帧的TCP校验和,将该帧发送。对服务器的应答报文进行确认。11) 计算第三帧的TCP校验和,将该帧发送。断开连接,完成TCP连接的全过程。12) 协议分析器一端截获相应的请求及应答报文并分

11、析,注意观察“会话分析”中的会话过程。 13) 仿真端主机使用“仿真编辑器/工具菜单/TCP屏蔽/停止屏蔽”功能,恢复正常网络功能。综合发送报文:UDP:练习一:编辑并发送UDP数据报本练习将主机A和B作为一组,主机C和D作为一组,主机E和F作为一组。现仅以主机A和B为例,说明实验步骤。1. 主机A打开协议仿真编辑器。编辑发送给主机B的UDP数据报。MAC层:目的MAC地址:接收方MAC地址。 源MAC地址:发送方MAC地址。 协议类型或数据长度:0800,即IP协议。 IP层: 总长度:包括IP层、UDP层和数据长度。 高层协议类型: 17,即UDP协议。 首部校验和:其他所有字段填充完毕后

12、填充此字段。 源IP地址:发送方IP地址。 目的IP地址:接收方IP地址。 UDP层: 有效负载长度:UDP层及其上层协议长度。 计算校验和,其他字段默认. UDP在计算校验和时包括那些内容? 2. 在主机B上启动协议分析器,并设置过滤条件(提取UDP协议)开始捕获数据。3. 主机A发送已编辑好的数据报。4. 主机B停止捕获数据,在捕获到的数据中查找主机A所发送的数据报。 练习二:UDP单播通信1. 主机B、C、D、E、F上启动“开始/程序/网络协议仿真教学系统 通用版/工具/UDP工具”,作为服务器端,监听端口设置为2483。2. 主机C、E上启动协议分析器开始捕获数据。3. 主机A上启动“

13、开始/程序/网络协议仿真教学系统 通用版/工具/UDP工具”,作为客户端,以主机C的IP为目的IP地址,以2483为端口,填写数据并发送。4. 察看主机B、C、D、E、F上的“UDP工具”接收的信息。哪台主机上的“UDP工具”接收到主机A发送的UDP报文?5. 察看主机C协议分析器上的UDP报文,并回答以下问题:UDP是基于连接的协议吗?阐述此特性的优缺点。解:不是,优点:传输效率高,不需进行编号,不必进行连接建立和连接终止;缺点:使用UDP的进程不能向UDP发送数据流,也不能期望UDP将这个数据流分割成为许多不同的相关联的用户数据报。相反,每个请求必须足够小,使其能够装入到用户数据报中。UD

14、P报文交互中含有确认报文吗?阐述此特性的优缺点。解:没有,优点:提高传输效率;缺点:在传输过程中可能有丢失、重复、乱序的现象。6. 主机A上使用仿真编辑器向主机E发送UDP报文,其中:“目的IP地址” 设置为主机E的IP地址。 “目的端口”设置为2483。“校验和”设置为0。发送此报文,并回答以下问题:主机E上的UDP通信程序是否接收到此数据包?UDP是否可以使用0作为校验和进行通信?解:主机E可以收到数据包。UDP可以使用0作为校验和进行通信。7. 将第6步中编辑的数据包的校验和修改为一个错误值,并将其发送。8. 察看主机E协议分析器上捕获的数据,并回答以下问题:简述UDP的差错处理能力。练

15、习三:UDP广播通信1. 主机B、C、D、E、F上启动“开始/程序/网络协议仿真教学系统 通用版/工具/UDP工具”,作为服务器端,监听端口设为2483。2. 主机B、C、D、E、F上启动协议分析器捕获数据,并设置过滤条件(提取UDP协议)3. 主机A上启动“开始/程序/网络协议仿真教学系统 通用版/工具/UDP工具”,作为客户端,以55为目的地址,以2483为端口,填写数据并发送。4. 察看主机B、C、D、E、F上的“UDP连接工具”接收的信息。 哪台主机接收到主机A发送的UDP报文?5. 察看协议分析器上捕获的UDP报文,并回答以下问题: 主机A发送的报文的目的M

16、AC地址和目的IP地址的含义是什么? 解:目的MAC地址为FFFFFF-FFFFFF,广播地址;目的IP地址为55,受限广播地址。若将主机A发送的报文的目的MAC地址改为某一主机的MAC地址,结果会怎样?为什么? 解:主机A发送的报文的目的MAC地址为某一主机的MAC地址,而目的IP地址无论是某一主机的IP地址,还是55,结果都是只有目的MAC地址所对应的主机可收到主机A发送的报文。因为目的MAC地址对应主机才是真正接收数据的主机。若将主机A发送的报文的目的IP地址改为某一主机的IP地址,结果会怎样?为什么? 解:两种情况:如果目的MAC为广

17、播地址,则结果为所有主机都可接收主机A的报文;如果目的MAC为某一主机的MAC,则主机A发送的数据只能被该主机接收。原因:目的MAC地址对应主机才是真正接收数据的主机。3、 实验分析与小结:1 发送tcp数据包时,前几次实验发送后抓不到数据,后来发现要求实验步骤中有一条,发送该TCP连接请求之前,先ping 一次目标服务器,让目标服务器知道自己的MAC地址。进行此步操作后,实验便可正常进行。2 计算校验和需学会手动计算,自动计算时,原先表格中的校验和需要改为0000,才能计算出正确的校验和。4、 其它1.试用具体例子说明为什么在运输连接建立时要使用三次握手。说明如不这样做可能会出现什么情况。

18、解:三次握手解决了连接建立过程中要解决的三个问题:(1) 要使每一方能够确定对方的存在。(2) 要允许双发协商一些参数(如最大报文段长度、最大窗口大小、服务质量等)。(3) 能够对运输实体资源(如缓存大小、连接表中的项目等)进行分配。如不这样做:主机A共发送了两个连接请求报文段,其中的第二个到达了主机B。现在假定出现另一种情况,即主机A发送的第一个连接请求报文段并没有丢失,而是在某些网络结点滞留时间太长,以致延误到在这次的连接释放以后才传送到主机B。本来这是一个已经失效的报文段,但主机B收到此失效的连接请求报文段后,就误认为是主机A又发出一次新的连接请求。于是就向主机A发出确认报文段,同意建立连接。主机A由于并没有要求建立连接,因此不会理睬主机B的确认,也不会向主机B发送数据。但主机B却以为运输连接就这样建立了,并一直等待主机A发来数据。主机B的许多资源就这样白白浪费了。2.使用TCP对实时话音数据的传输有没有什么问题?使用UDP在传送数据文件时会有什么问题? 解:TCP协议可能导致实时语音通讯的延迟。使用UDP传出的数据可能导致数据文件

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论