第三次实验报告:使用Packet Tracer分析TCP连接建立过程

  • 姓名:吕煜华
  • 学号:201821121046
  • 班级:计算1812

1 实验目的

  • 使用路由器连接不同的网络
  • 使用命令行操作路由器
  • 通过抓取HTTP报文,分析TCP连接建立的过程

2 实验内容

使用Packet Tracer,正确配置网络参数,通过抓取HTTP数据包,分析TCP连接建立过程。

  • 建立网络拓扑结构
  • 配置参数
  • 抓包
  • 分析数据包

3.1 建立网络拓扑结构

网络拓扑图如下图所示:

 

3.2 配置参数

客户端IP地址为   192.168.1.46 默认网关为192.168.1.47

服务端IP地址为   192.168.2.46 默认网关为192.168.2.47

路由器配置并激活端口:

 Router>enable # 进入特权执行模式
 Router#configure terminal # 进入全局配置模式
 Router(config)#hostname R # 将路由器名称配置为R
 配置G0/0接口:
 R(config)#interface G0/0
 R(config-if)#ip address 192.168.1.47 255.255.255.0
 R(config-if)#no shutdown # 激活接口
 R(config)#interface G0/1
 R(config-if)#ip address 192.168.2.47 255.255.255.0
 R(config-if)#no shutdown # 激活接口

配置路由算法:

启用动态路由:

R(config)#router rip

R(config)#version 2  使用rip 2版本

R(config-router)#no auto-summary  关闭自动路由汇总

指定网络:

R(config-router)#network 192.168.1.0 

R(config-router)#network 192.168.2.0

3.3 抓包,分析TCP连接建立过程

通过抓取HTTP数据包得到的TCP报文,完成如下事情:

(1)画出TCP连接建立示意图

如下图所示:

 

(2)分析序号和确认号的变化

在需要建立TCP连接时,客户端TCP发送一个同步位SYN,选择一个初始序号seq=x告诉服务器客户将在连接中发送的数据的初始序列号seq,客户端状态为SYN_SENT,即SYN=1,ACK=0。TCP规定,在SYN=1时不能携带数据,但是要消耗一个序号,所以申明自己的序号seq=x。

然后Server进行回复确认,即SYN=1,ACK=1,seq=y,ack=x+1。

然后客户端再次确认,但不用SYN=1,即ACK=1,seq=x+1,ack=y+1。(SYN=1时,表明这是一个请求连接或接受连接报文)

 (3)解答:为什么连接建立需要第三次握手

 为了防止pc端发出的连接报文失效但之后又发送到Server端导致出现错误,而且浪费资源。

posted @ 2019-10-20 16:14  Lvyuhua  阅读(240)  评论(0编辑  收藏  举报