• 博客园logo
  • 会员
  • 周边
  • 新闻
  • 博问
  • 闪存
  • 众包
  • 赞助商
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
tengwan
博客园    首页    新随笔    联系   管理    订阅  订阅

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

  • 姓名:滕婉
  • 学号:201821121066  
  • 班级:计算1813

1 实验目的

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

2 实验内容

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

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

3. 实验报告

 

3.1 建立网络拓扑结构

网络拓扑图如下图所示:

  

 

 pc连接路由器,路由器再连接服务器

3.2 配置参数

  • 客户端的IP地址为192.168.1.66
  • 服务端的IP地址为192.168.2.66
  • 路由器左端IP地址为192.168.1.67 
  • 路由器右端IP地址为192.168.2.67

 

客户端IP地址配置:

 

 

服务端IP地址配置:

 

 

 

路由器参数配置:

清除路由器上的现有配置
• 使用命令erase startup-config清除路由器上的现有配置:
• Router>enable # 进入特权执行模式
• Router#erase startup-config # 清除路由器上的现有配
置
• Router#configure terminal # 进入全局配置模式
• Router(config)#no ip domain-lookup # 禁用DNS查找
• 在实验环境中禁用DNS查找的目的是提高操作响应时间,因为键
入错误的命令,路由器会把错误命令当成域名进行查找。
配置并激活端口
• Router>enable # 进入特权执行模式
• Router#configure terminal # 进入全局配置模式
• Router(config)#hostname R # 将路由器名称配置为R

 

 


• 配置G0/0/0和G0/0/1接口:
• R(config)#interface G0/0/0
• R(config-if)#ip address 192.168.1.67 255.255.255.0
• R(config-if)#no shutdown # 激活接口

• R(config)#interface G0/0/1
• R(config-if)#ip address 192.168.2.67 255.255.255.0
• R(config-if)#no shutdown# 激活接口

 

 

 

 

 


配置路由算法
• 启用动态路由
• R(conf)# router rip
• R(conf)#version 2 使用rip 2版本
• R(conf)#no auto-summary 关闭自动路由汇总
• 指定网络
• R(conf)#network 192.168.1.0
• R(conf)#network 192.168.2.0

 

 

 

 

 

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

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

抓包:

 

 报文:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

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

如下图所示:

 

 

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

 

1.建立TCP连接时,客户端发送一个同步位SYN=1,选择一个初始序号seq=x,然后告诉服务器客户将在连接中发送的数据初始序列号seq,这时客户端状态为SYN_SENT,这是TCP连接的第一次握手。

2.当服务器收到请求报文后,如果服务器同意连接,则向A发送确认,且要把ACK置为1,即ACK=1,确认号ack等于x+1,同时初始序号seq=y,这是TCP连接的第二次握手;

3.客户收到服务器的确认后,需向A给出确认,ACK=1,ack=y+1,自己的序号为seq=x+1,这是TCP连接的第三次握手;

4.这时,TCP连接建立成功。

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

为了提高传输的效率、应对网络中存在的延迟的重复数组的问题,为了传输效率,只要3次握手就认为已经可以开始传输数据,三次握手之后, CLT和SERVER就进入状态,开始数据传输。

4. 拓展 (不作要求,但属于加分项)

为什么释放连接要四次握手?

 

1、当主机A确认发送完数据且知道B已经接受完了,想要关闭发送数据口(当然确认信号还是可以发),就会发FIN给主机B。

 

2、主机B收到A发送的FIN,表示收到了,就会发送ACK回复。

 

3、但这是B可能还在发送数据,没有想要关闭数据口的意思,所以FIN与ACK不是同时发送的,而是等到B数据发送完了,才会发送FIN给主机A。

 

4、A收到B发来的FIN,知道B的数据也发送完了,回复ACK, A等待2MSL以后,没有收到B传来的任何消息,知道B已经收到自己的ACK了,A就关闭链接,B也关闭链接了。

 

posted @ 2019-10-18 16:46  tengwan  阅读(454)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2026
浙公网安备 33010602011771号 浙ICP备2021040463号-3