欢迎来到天天文库
浏览记录
ID:33650067
大小:75.00 KB
页数:4页
时间:2019-02-28
《实验七1 传输控制协议tcp》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、实验七传输控制协议TCP【实验目的】1.掌握TCP协议的报文格式2.掌握TCP连接的建立和释放过程3.掌握TCP数据传输中编号与确认的过程4.理解TCP重传机制【实验学时】建议4学时【实验环境配置】采用如下网络结构服务器A172.16.1.1【实验原理】一.TCP报文格式16位源端口号16位目的端口号32位序号32位确认序号4位首部长度保留(6位)URGACKPSHRSTSYNFIN16位窗口大小16位校验和16位紧急指针选项数据二.TCP连接的建立 TCP是面向连接的协议。在面向连接的环境中,开始传输
2、数据之前,在两个终端之间必须先建立一个连接。对于一个要建立的连接,通信双方必须用彼此的初始化序列号seq和来自对方成功传输确认的应答号ack(指明希望收到的下一个八位组的编号)来同步,习惯上将同步信号写为SYN,应答信号写为ACK。 整个同步的过程称为三次握手,如图:三.TCP连接的释放 对于一个已经建立的连接,TCP使用四次握手来结束通话(使用一个带有FIN附加标记的报文段),如图:四.TCP重传机制 TCP每发送一个报文段,就对这个报文段设置一次计时器。只要计时器设置的重传时间到期,但还
3、没有收到确认,就要重传这一报文段。【实验步骤】练习一:察看TCP连接的建立和释放1.进入仿真模式,设置过滤条件(提取TCP协议)。2.主机B编辑发送给服务器A的TCP数据报,其中应用选择“HTTP”,源端口设为“1025”,报文数据大小设为“0”。3.在捕获的数据中,查找用于建立TCP连接的三次握手报文,填写下表。字段名称报文1报文2报文3源IP172.16.1.2172.16.1.1172.16.1.2目标IP172.16.1.1172.16.1.2172.16.1.1SequenceNumber001Ac
4、knowledgementNumber011ACK比特位011SYN比特位1104.在捕获的数据中,查找用于断开TCP连接的四次握手报文,填写下表。字段名称报文4报文5报文6报文7源IP172.16.1.2172.16.1.1172.16.1.1172.16.1.2目标IP172.16.1.1172.16.1.2172.16.1.2172.16.1.1SequenceNumber1112AcknowledgementNumber1221ACK比特位1111SYN比特位0000结合步骤3、4所填的表,理解TCP
5、的三次握手建立连接和四次握手的释放连接过程,理解序号、确认号等字段在TCP可靠连接中所起的作用。练习二:理解TCP数据包的编号与确认1.主机B使用Web浏览器访问“http://172.16.1.1”。2.设置过滤条件(提取TCP,HTTP协议),捕获数据。3.停止捕获数据,在捕获到的数据中观察主机B所发送的报文,并回答以下问题:目标IP地址为多少?IP首部的协议字段值为多少?源端口和目标端口分别为少?TCP首部中SequenceNumber为多少?AcknowledgementNumber为多少?哪些控制比
6、特置为了1?答:目标IP172.16.1.1,IP首部的协议字段为PPO:0x6,源端口为1026,目标端口为80,TCP首部中的SequenceNumber为0,AcknowledgementNumber为0,SYN为的比特位为1,其他的全部为0.4.在捕获到的数据中观察主机B所接受的报文,并回答以下问题:目标IP地址为多少?IP首部的协议字段值为多少?源端口和目标端口分别为多少?TCP首部中SequenceNumber为多少?AcknowledgementNumber为多少?哪些控制比特置为了1?答:目标
7、IP为172.16.1.2,IP首部的协议字段为PRO:0x6,源端口为80目标端口为1026,TCP首部中的SequenceNumber为0,AcknowledgementNumber为1,RST与ACK位设置了为1,其他的为0.练习三:TCP的重传机制1.关闭服务器A的HTTP服务。2.主机B编辑发送给服务器A的TCP数据报,其中应用选择“HTTP”,源端口设为“1026”,报文数据大小设为“0”。3.设置过滤条件(提取TCP协议),捕获数据。4.停止捕获数据。查看捕获的报文,是否相同?为何有这种现象产生
8、?答:相同,当服务器没有收到的时候,就会产生重传。【思考问题】1.试用具体例子说明为什么在运输连接建立时要使用三次握手。说明如不这样做可能会出现什么情况。答:三次握手完成了两个重要的功能,一个是双方做好发送数据的准备工作,即双方都知道彼此已准备好,一个是允许双方就初始序列号进行协商,这个序列号在握手过程中被发送和确认。假如把三次握手改为两次握手,就会可能出现死锁的情况。如,计算机A和B之间的通信,假
此文档下载收益归作者所有