当前位置:   article > 正文

计算机网络实验四——TCP协议探索和连接管理分析_《计算机网络及应用》实验四-tcp协议实现

《计算机网络及应用》实验四-tcp协议实现

实验四:TCP协议探索和连接管理分析

【实验目的】

1、掌握TCP协议数据格式

2、掌握TCP首部各字段含义;

3、掌握TCP建立连接和释放连接的过程;

4、熟悉Linux下truncate命令的使用方法;

5、了解Linux中利用nc命令开启远程shell的方法。

【实验步骤与结果记录】

要求:根据实验指导书中的实验内容和步骤,认真完成实验。采取截图、拍照等形式记录自己的实验步骤和结果。(可根据需要加页)

1.运行脚本demo3.1.sh,创建虚拟网络拓扑

2.运行脚本demo.3.2.sh,为虚拟网络拓扑中的各路由器配置静态路由

3.运行脚本demo3.3.sh,关闭网卡offload功能,将运输层封装时需要的计算还给CPU

4.打开两个终端窗口,分别模拟主机ns56A和主机ns57C

5.在主机ns57C上创建一个3500字节长度的文件备用,命名为3500.0

6.在主机ns75C上启动Wireshark,在接口tap57C上启动抓包

7.在主机ns57C上打开TCP服务程序。在主机ns56A上打开TCP客户程序,然后通过网络将主机ns57C上的3500.0文件读取到ns56A
(1)在主机ns57C的模拟终端中, 在4499端口打开TCP服务程序

(2)在主机ns56A的模拟终端中,打开TCP客户程序,并指定TCP服务程序的IP地址和端口

(3)在主机ns56A的模拟终端中,输入cat 3500.0,将该命令发送到主机ns57C的shell中,读取文件3500.0,命令执行结果通过TCP连接发送回主机ns56A

(4)文件传输完毕后,在主机ns57C和ns56A,先后用“ctrl +c”终止TCP通信
8.在Wireshark中停止抓包,保存抓包结果文件并分析本次TCP通信,理解TCP报文段格式,理解TCP建立连接和释放连接的过程

【问题与分析】

1、在步骤7中,操作系统为主机ns56A上的TCP客户程序分配的端口号是多少?截图说明你的分析过程。

ip地址:192.168.56.126    端口号:44184

2、在步骤7中,你一共截获了几个TCP报文段?分析连接建立后,第一个TCP客户发给TCP服务器的报文段,以及第一个TCP服务器发给TCP客户的报文段的首部,截图并填写表4.1和表4.2。

表4.1 TCP客户发给TCP服务器的报文段首部

字段名

源端口

44184

目的端口

4499

序号(相对序号)

0

确认号(相对确认号)

数据偏移

40

窗口

29200

校验和

0x1944

包含什么选项

Maximum segment size,SACK permitted,Timestamps,No-Operation(NOP),window scale

表4.2 TCP服务器发给TCP客户的报文段首部

字段名

源端口

4499

目的端口

44184

序号(相对序号)

0

确认号(相对确认号)

1

数据偏移

40

窗口

28960

校验和

0x0652

包含什么选项

Maximum segment size,SACK permitted,Timestamps,No-Operation(NOP),window scale

options:

Maximum segment size(MSS选项 ,最大段大小选项)

SACK perimitted(selective acknowledgement permitted,选择性确认选项)

Timestamps(TCP Timestamps Option,时间戳选项)

No-Operation(NOP,空操作选项)

window scale(窗口扩大因子选项)

共截获17个TCP报文段

TCP客户发给TCP服务器,如下图: 

TCP服务器发给TCP客户,如下图: 

3、在你的实验结果中,TCP建立连接时,双方是否使用了MSS选项,主机ns56A和主机ns57C发送给对方的MSS选项值是多少?ns57C将3500字节数据发送给ns56A用了几个报文段?每个报文段中包含多少字节的数据?请计算ns57C的有效最大报文段长度,并验证是否与实验结果一致?截图说明你的分析过程。

使用了MSS(Maximum segement size最大报文段长度)选项。

MSS选项值:1460

ns57C将3500字节数据发送给ns56A用了3个报文段

第一个报文段包含1448字节的数据

第二个报文段包含1448字节的数据

第三个报文段包含604字节的数据

1448+1448+604=3500

与实验结果相符

4、在你的实验结果中,通信双方使用窗口扩大选项了么?双方的窗口移位值时各是多少?双方的窗口各扩大了多少倍?截图说明你的分析过程。

使用了窗口扩大选项(window scale)

客户端窗口移位值:7

服务端窗口移位值:7 

 由实验两图得知,窗口都扩大128倍

5、在步骤7中,你截获TCP建立连接和释放连接的报文段了么?分析建立连接和释放连接的几个报文段,截图并填写表4.3和表4.4。

表4.3 TCP建立连接的分析

报文段序号

SYN位

ACK位

序号(相对序号)

确认号(相对确认号)

3

1

0

0

0

4

1

1

0

1

5

0

1

1

1

表4.4 TCP释放连接的分析

报文段序号

FIN位

ACK位

序号(相对序号)

确认号(相对确认号)

24

1

1

3501

13

25

0

1

13

3502

28

1

1

13

3502

29

0

1

3502

14

TCP建立连接:

 

TCP释放连接: 

本文内容由网友自发贡献,转载请注明出处:https://www.wpsshop.cn/w/花生_TL007/article/detail/660436
推荐阅读
相关标签
  

闽ICP备14008679号