您好,欢迎访问三七文档
当前位置:首页 > 建筑/环境 > 房地产 > 计算机网络协议分析-传输控制协议TCP-哈理工版本协议分析五
实验报告课程名称:计算机网络协议分析实验项目:传输控制协议TCP姓名:专业:班级:学号:计算机科学与技术学院实验教学中心年月日成绩:哈尔滨理工大学计算机科学与技术学院实验教学中心实验报告实验项目名称:传输控制协议TCP(4学时)一、实验目的1.掌握TCP协议的报文格式2.掌握TCP连接的建立和释放过程3.掌握TCP数据传输中编号与确认的过程4.掌握TCP协议校验和的计算方法5.理解TCP重传机制二、实验内容一.TCP报文格式16位源端口号16位目的端口号32位序号32位确认序号4位首部长度保留(6位)URGACKPSHRSTSYNFIN16位窗口大小16位校验和16位紧急指针选项数据二.TCP连接的建立TCP是面向连接的协议。在面向连接的环境中,开始传输数据之前,在两个终端之间必须先建立一个连接。对于一个要建立的连接,通信双方必须用彼哈尔滨理工大学计算机科学与技术学院实验教学中心实验报告此的初始化序列号seq和来自对方成功传输确认的应答号ack(指明希望收到的下一个八位组的编号)来同步,习惯上将同步信号写为SYN,应答信号写为ACK,整个同步的过程称为三次握手。三.TCP连接的释放对于一个已经建立的连接,TCP使用四次握手来结束通话(使用一个带有FIN附加标记的报文段)。四.TCP重传机制TCP每发送一个报文段,就对这个报文段设置一次计时器。只要计时器设置的重传时间到期,但还没有收到确认,就要重传这一报文段。三、实验步骤练习一:察看TCP连接的建立和释放1.主机B、C、D启动协议分析器进行数据捕获,并设置过滤条件(提取TCP协议)。2.主机A启动仿真编辑器,进入TCP连接视图。在“服务器信息/IP地址”中填入主机C的IP地址;使用“端口扫描”获取主机C的TCP端口列表,在“服务器信息/端口”中填入主机C的一个TCP端口(大于1024);点击“连接”按钮进行连接。3.察看主机B、C、D捕获的数据。4.主机A断开与主机C的TCP连接。5.察看主机B、C、D捕获的数据。练习二:利用仿真编辑器编辑并发送TCP数据包本练习将主机A和B作为一组,主机C和D作为一组,主机E和F作为一组,现仅以主机A和B为例,说明实验步骤。在本实验中由于TCP连接有超时时间的限制,故仿真编辑器和协议分析器的两位同学要默契配合,某些步骤(如计算TCP校验和)要求熟练、迅速。为了实现TCP三次握手过程的仿真,发送第一个连接请求帧之前,仿真端主机应该使用“仿真编辑器/工具菜单/TCP屏蔽/启动屏蔽”功能来防止系统干扰(否则计算机系统的网络会对该请求帧的应答帧发出拒绝响应)。通过手工编辑TCP数据包实验,要求理解实现TCP连接建立、数据传输以及断开连接的全过程。在编辑的过程中注意体会TCP首部中的序列号和标志位的作用。首先选择服务器主机上的一个进程作服务器进程,并向该服务器进程发送一个哈尔滨理工大学计算机科学与技术学院实验教学中心实验报告建立连接请求报文,对应答的确认报文和断开连接的报文也编辑发送。其步骤如下:1.主机B启动协议分析器捕获数据,设置过滤条件(提取http协议)。2.主机A上启动仿真编辑器,在界面初始状态下,程序会自动新建一个单帧,可以利用仿真编辑器打开时默认的以太网帧进行编辑。3.填写该帧的以太网协议首部,其中:源MAC地址:主机A的MAC地址。目的MAC地址:服务器的MAC地址。协议类型或数据长度:0800(IP协议)。4.填写IP协议头信息,其中:高层协议类型:6(上层协议为TCP)。总长度:40(IP首部+TCP首部)。源IP地址:主机A的IP地址。目的IP地址:服务器的IP地址(172.16.0.10)。其它字段任意。应用前面学到的知识计算IP首部校验和。5.填写TCP协议信息,其中:源端口:任意大于1024的数,不要使用下拉列表中的端口。目的端口:80(HTTP协议)。序列号:选择一个序号ISN(假设1942589885),以后的数据都按照这个来填。确认号: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.在发送该TCP连接请求之前,先ping一次目标服务器,让目标服务器知道自己的MAC地址。7.使用“仿真编辑器/工具菜单/TCP屏蔽/启动屏蔽”功能,为TCP\IP协议栈过滤掉收到的TCP数据。哈尔滨理工大学计算机科学与技术学院实验教学中心实验报告8.点击菜单栏中的“发送”按钮,在弹出对话框中选择发送第一帧。9.我们假设接收字节序号为:3246281765,修改第二帧和第三帧的TCP层的“ACK确认序号”的值:3246281766。10.计算第二帧的TCP校验和,将该帧发送。对服务器的应答报文进行确认。11.计算第三帧的TCP校验和,将该帧发送。断开连接,完成TCP连接的全过程。12.协议分析器一端截获相应的请求及应答报文并分析,注意观察“会话分析”中的会话过程。13.仿真端主机使用“仿真编辑器/工具菜单/TCP屏蔽/停止屏蔽”功能,恢复正常网络功能。练习三:TCP的重传机制1.本练习将主机A和B作为一组,主机C和D作为一组,主机E和F作为一组。现仅以主机A和B为例,说明实验步骤。主机B启动协议分析器开始捕获数据并设置过滤条件(提取TCP协议)。2.主机A启动仿真编辑器,进入TCP连接视图。在“服务器信息/IP地址”中填入主机B的IP地址;使用“端口扫描”获取主机B的TCP端口列表,在“服务器信息/端口”中填入主机B的一个TCP端口(大于1024);点击“连接”按钮进行连接。3.主机A向主机B发送一条信息。4.主机B使用“仿真编辑器/工具菜单/TCP屏蔽/启动屏蔽”功能,过滤掉接收到的TCP数据。5.主机A向主机B再发送一条信息。6.主机B刷新捕获显示,当发现“会话分析视图”中有两条以上超时重传报文后,使用“仿真编辑器/工具菜单/TCP屏蔽/停止屏蔽”功能,恢复正常网络功能。7.主机A向主机B再发送一条信息,之后断开连接。8.主机B停止捕获数据。依据“会话分析视图”显示结果,绘制本练习的数据报交互图。四、实验结果练习一:察看TCP连接的建立和释放哈尔滨理工大学计算机科学与技术学院实验教学中心实验报告1.察看主机B、C、D捕获的数据,填写下表。字段名称报文1报文2报文3SequenceNumberX(段序号)Y(段序号)X+1AcknowledgementNumber0X+1Y+1ACK011SYN110TCP连接建立时,前两个报文的首部都有一个“maximumsegmentsize”字段,它的值是多少?作用是什么?结合IEEE802.3协议规定的以太网最大帧长度分析此数据是怎样得出的。答:1460;由发送端指定,表明了能在网络上传输的最大的段尺寸;maximumsegmentsize=MTU–20(IP首部)-20(TCP首部)。5.察看主机B、C、D捕获的数据,填写下表。字段名称报文4报文5报文6报文7SequenceNumberX(段序号)YYX+1AcknowledgementNumberY(段序号)X+1X+1Y+1ACK1111FIN1010哈尔滨理工大学计算机科学与技术学院实验教学中心实验报告练习二:利用仿真编辑器编辑并发送TCP数据包哈尔滨理工大学计算机科学与技术学院实验教学中心实验报告1.TCP在计算校验和时包括哪些内容?答:协议字段(IP层的高层协议类型)、源IP地址、目的IP地址、长度(TCP数据总长度)、TCP首部、TCP数据。练习三:TCP的重传机制1.依据“会话分析视图”显示结果,绘制本练习的数据报交互图。理解TCP的重传机制:TCP每发送一个报文段,就对这个报文段设置一次计时器。只要计时器设置的重传时间到期,但还没有收到确认,就要重传这一报文段。在该实验中当分析端启动TCP屏蔽时,仿真端发往分析端的数据,没有得到确认,故仿真端需重传。哈尔滨理工大学计算机科学与技术学院实验教学中心实验报告
本文标题:计算机网络协议分析-传输控制协议TCP-哈理工版本协议分析五
链接地址:https://www.777doc.com/doc-6232501 .html