资源预览内容
第1页 / 共17页
第2页 / 共17页
第3页 / 共17页
第4页 / 共17页
第5页 / 共17页
第6页 / 共17页
第7页 / 共17页
第8页 / 共17页
第9页 / 共17页
第10页 / 共17页
亲,该文档总共17页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
计算机网络,E-mail:21180494qq.com,实验六传输控制协议TCP,实验教学提要,教学目标:1、掌握TCP协议的报文格式2、掌握TCP连接的建立和释放过程3、掌握TCP数据传输中编号与确认的过程4、掌握TCP协议校验和的计算方法5、理解TCP重传机制教学难点/重点:连接的建立与释放/协议的工作机制实验时数:2学时,实验关注问题,(1)TCP协议有哪些优缺点? (2) TCP协议的报文格式如何?(3) 怎样计算TCP协议中的校验和?(4) 应用层中的哪些协议需要TCP协议提供服务?(5)TCP的连接建立与释放过程怎样?,1、实验环境及网络拓扑介绍,中软吉大网络拓扑1,1、实验环境及网络拓扑介绍(续),主机协议配置: 主机IP地址(8139网卡):172.16.1.XY (注:X为组的代号(分别为1、2、3、4、5、6或7);Y为组内主机编号(主机A、B、C、D、E、F的编号分别为1、2、3、4、5或6),例如:3组B主机的IP为:172.16.1.32。) 子网掩码: 255.255.255.0 网关地址: 可以不设 域名服务器地址:可以不设,2、实验原理分析(TCP协议的特点),TCP是TCP/IP协议栈中的传输层协议,TCP称为面向字节流连接的和可靠的传输层协议。它给IP协议提供了面向连接的和可靠的服务。TCP与UDP不同,它允许发送和接收字节流形式的数据。为了使服务器和客户端以不同的速度产生和消费数据,TCP提供了发送和接收两个缓冲区。TCP提供全双工服务,数据同时能双向流动。每一方都有发送和接收两个缓冲区,可以双向发送数据。TCP在字节上加上一个递进的确认序列号来告诉接收者发送者期望收到的下一个字节,如果在规定时间内,没有收到关于这个包的确认响应,重新发送此包,这保证了TCP是一种可靠的传输层协议。,2、实验原理分析(工作机制动画演示 ),TCP连接的建立TCP连接的释放滑动窗口 状态转换图,2、实验原理分析(TCP报文格式),3、练习一 察看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捕获的数据。,4、练习二 利用仿真编辑器编辑并发送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.1.100)。其它字段任意。应用前面学到的知识计算IP首部校验和;,4、练习二 利用仿真编辑器编辑并发送TCP数据包(续1),(5)填写TCP协议信息,其中:源端口:任意大于1024的数,不要使用下拉列表中的端口。目的端口:80(HTTP协议)。序列号:选择一个序号ISN(假设1942589885),以后的数据都按照这个来填。确认号:0。首部长度和标志位:5002(即长度20字节,标志SYN=1)。窗口大小:任意。紧急指针:0; 将设置完成的数据帧复制3份;修改第二帧的TCP 层的“首部长度和标志”位为5010(即标志位ACK=1),TCP层的“序号”为1942589885+1。修改第三帧的TCP层的“首部长度和标志”位为5011(即标志位ACK=1、FIN=1),TCP层的“序号”为1942589885+1;修改第四帧的TCP层的“首部长度和标志”位为5010(即标志位ACK=1),TCP层的“序号”为1942589885+2。 (6)在发送该TCP连接请求之前,先ping 一次目标服务器,让目标服务器知道自己的MAC地址;(7)使用“仿真编辑器/工具菜单/TCP屏蔽/启动屏蔽”功能,为TCP/IP协议栈过滤掉收到的TCP数据;(8)点击菜单栏中的“发送”按钮,在弹出对话框中选择发送第一帧;,4、练习二 利用仿真编辑器编辑并发送TCP数据包(续2),(9)在主机B上捕获相应的应答报文,这里要求协议分析器一端的同学及时准确地捕获应答报文并迅速从中获得应答报文的接收字节序号,并告知仿真编辑器一端的同学;(10)我们假设接收字节序号为:3246281765,修改第二帧和第三帧的TCP层的“ACK确认序号”的值:3246281766 ;(11)计算第二帧的TCP校验和,将该帧发送。对服务器的应答报文进行确认;(12)计算第三帧的TCP校验和,将该帧发送;(13)在主机B上观察应答报文,要及时把最后一帧“序列号”告知协议编辑器一端的同学;,4、练习二 利用仿真编辑器编辑并发送TCP数据包(续3),(14)修改第四帧的TCP层“确认号”为接收的序列号+1(即3246281767);(15)计算第四帧的TCP校验和,将该帧发送。断开连接,完成TCP连接的全过程;(16)协议分析器一端截获相应的请求及应答报文并分析,注意观察“会话分析”中的会话过程;(17)仿真端主机使用“仿真编辑器/工具菜单/TCP屏蔽/停止屏蔽”功能,恢复正常网络功能。,5、练习三 TCP的重传机制,(1)主机B启动协议分析器开始捕获数据并设置过滤条件(提取TCP协议);(2)主机A启动仿真编辑器,进入TCP连接视图。在“服务器信息/IP地址”中填入主机B的IP地址;使用“端口扫描”获取主机B的TCP端口列表,在“服务器信息/端口”中填入主机B的一个TCP端口(大于1024);点击“连接”按钮进行连接;(3)主机A向主机B发送一条信息;(4)主机B使用“开始/程序/网络协议仿真教学系统通用版/TCP屏蔽/启动屏蔽”功能,过滤掉接收到的TCP数据;,5、练习三 TCP的重传机制(续),(5)主机A向主机B再发送一条信息;(6)主机B刷新捕获显示,当发现“会话分析视图”中有两条以上超时重传报文后,使用“开始/程序/网络协议仿真教学系统通用版/TCP屏蔽/停止屏蔽”功能,恢复正常网络功能;(7)主机A向主机B再发送一条信息,之后断开连接;(8)主机B停止捕获数据。依据“会话分析视图”显示结果,绘制本练习的数据报交互图。,8、小 结,(1)TCP协议的优缺点 (2) TCP协议的报文格式(3) TCP协议中的校验和计算方法(4) 应用层中的HTTP、TELNET、FTP、SMTP、POP3、IMAP等协议需要TCP协议提供服务(5)TCP的连接建立与释放过程,
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号