山东大学计算机网络实验报告实验五.doc
文本预览下载声明
软件学院计算机网络实验报告
实验五 传输协议控制
姓名 班级 2013级软件1班 学号 实验名称 传输控制协议(TCP) 实验时间 2015.12 实验目的:
掌握TCP协议的报文格式;
掌握TCP连接的建立和释放过程;
掌握TCP数据传输中编号与确认的过程;
掌握TCP协议校验和的计算方法;
理解TCP重传机制。 实验步骤及结果:该实验采用网络拓扑结构一
练习一
练习名称:察看TCP连接的建立和释放
练习内容:
各主机打开协议分析器,进入相应的网络结构并验证网络拓扑的正确性,如果通过拓扑验证,关闭协议分析器继续进行实验,如果没有通过拓扑验证,请检查网络连接。
本练习将主机A、B、C、D、E、F作为一组进行实验。
1. 主机B、C、D启动协议分析器捕获数据,并设置过滤条件(提取TCP协议)。
2. 主机A启动TCP工具连接主机C。
(1)主机A启动“实验平台工具栏中的地址本工具”。点击[主机扫描]按钮获取组内主机信息,选中主机C点击[端口扫描]按钮获取主机C的TCP端口列表。
(2)主机A启动“实验平台工具栏中的TCP工具”。选中“客户端”单选框,在“地址”文本框中填入主机C的IP地址,在“端口”文本框中填入主机C的一个TCP端口,点击[连接]按钮进行连接。
3. 察看主机B、C、D捕获的数据,填写下表。
字段名称
报文1
报文2
报文3
序列号
4035280841
655101085
4035280842
确认号
0
4035280842
655101086
ACK
0
1
1
SYN
1
1
0
● TCP连接建立时,前两个报文的首部都有一个“最大字段长度”字段,它的值是多少?作用是什么?结合IEEE802.3协议规定的以太网最大帧长度分析此数据是怎样得出的。
答:两个报文首部的“最大字段长度”字段值均为为1460。作用表示在一个帧中数据部分最大长度为1460,不能发出比此更长的帧。以太网中规定发出的帧长度不能超过1500,而IP首部的长度为20个字节,TCP首部的长度为20个字节。所以TCP字段长度不能超过1460个字节。
4. 主机A断开与主机C的TCP连接。
5. 察看主机B、C、D捕获的数据,填写下表。
字段名称
报文4
报文5
报文6
报文7
序列号
655101086
4035280842
655101086
035280843
确认号
4035280842
655101086
4035280843
655101087
ACK
1
1
1
1
FIN
0
1
1
0
● 结合步骤3、5所填的表,理解TCP的三次握手建立连接和四次握手的释放连接过程,理解序号、确认号等字段在TCP可靠连接中所起的作用。
答:a)建立连接协议(三次握手)
客户端发送一个带SYN 标志的TCP 报文到服务器。这是三次握手过程中的报文 1。
服务器端回应客户端的,这是三次握手中的第2 个报文,这个报文同时带 ACK 标志和SYN 标志。因此它表示对刚才客户端SYN 报文的回应;同时又标志SYN 给客户端,询问客户端是否准备好进行数据通讯。
客户必须再次回应服务段一个ACK 报文,这是报文段3 。
b)连接终止协议(四次挥手)
由于TCP 连接是全双工的,因此每个方向都必须单独进行关闭。这原则是当一方完成它的数据发送任务后就能发送一个 FIN 来终止这个方向的连接。收到一个 FIN 只意味着这一方向上没有数据流动,一个 TCP 连接在收到一个FIN 后仍能发送数据。首先进行关闭的一方将执行主动关闭,而另一方执行被动关闭。
TCP 客户端发送一个FIN ,用来关闭客户到服务器的数据传送(报文段 4 )。
服务器收到这个FIN ,它发回一个ACK ,确认序号为收到的序号加 (报文段5 )。和SYN 一样,一个FIN 将占用一个序号。
服务器关闭客户端的连接,发送一个 FIN 给客户端(报文段6 )。
客户段发回ACK 报文确认,并将确认序号设置为收到序号加 1 (报文段7 )。
序号:本报文段所发送的数据的第一个字节的序号。
确认号:期待收到对方下一个报文段的第一个数据字节的序号。
确认ACK:占1 位,仅当ACK=1 时,确认号字段才有效。ACK=0 时,确认号无效 。
同步 SYN :连接建立时用于同步序号。当 SYN=1,ACK=0 时表示:这是一 个连接请求报文段。若同意连接,则在响应报文段中使得SYN=1,ACK=1 。因此,SYN=1 表示这是一个连接请求,或连接接受报文。
终止 F
显示全部