以太网 TCP三次握手、TCP四次挥手详细介绍与报文简要分析。

2.7.0 以太网 TCP协议(三次握手、四次挥手)

传输控制协议(TCP,Transmission Control Protocol)是一种面向连接的、可靠的传输层通信协议。

面向连接:指使用TCP协议的程序在使用的时候,需要预先进行建立一个数据通信连接。

可靠:TCP协议在建立的时候需要先进行三次握手,保证对方的可连接性。

环境介绍:

 1、客户端访问FTP服务器进行下载文件,由于FTP是基于TCP协议进行工作的,所以客户端在访问FTP服务器时必然会进行建立TCP连接。

 2、通过在交换机上对任意端口进行抓包,来分析TCP的三次握手建立连接过程,以及TCP连接断开时的四次挥手过程
在这里插入图片描述

一、三次握手过程

简单描述:

  • 1、客户端主动向服务器》发起FTP访问,激活TCP建立。主动发送SYN置位的TCP报文,意为请求建立TCP连接。
  • 2、服务器收到客户端》SYN置位的TCP报文。回复SYN、ACK置位的TCP报文,意为同意建立TCP连接。
  • 3、客户端收到服务器》回复的SYN、ACK置位的TCP报文,知道服务器同意建立。将回复ACK置位的TCP报文,意为同意建立TCP连接。
    • 服务器收到客户端》ACK置位的TCP报文后,TCP连接建立成功,直接进行发送FTP数据。

报文交互描述:

注释:因为主机刚开机,且是第刚进行报文交互,所以Seq报文序号从0开始。

  • 1、客户端主动向服务器》发送Flags-SYN置位1、Seq报文序号0、ack确认序号0、窗口大小8192、源端口2051、目的端口21的TCP报文
  • 2、服务器收到客户端的SYN置位TCP报文》回复Flags-SYN、ACK置位1、Seq序号0、ack确认序号1、窗口大小8192、源端口21、目的端口2051的TCP报文
  • 3、客户端收到服务器的SYN、ACK置位TCP报文》回复Flags-ACK置位1、Seq序号1、ack确认序号1、窗口大小8192、源端口2051、目的端口21的TCP报文
    • 此刻客户端与服务器之间的TCP链路成功建立,立即进行FTP认证交互。

在这里插入图片描述

华为官网教材截图(HCIA-02 网络参考模型):

在这里插入图片描述

二、四次挥手过程

TCP客户端主动向TCP服务器发送’QUIT’指令,通知FTP服务器需要断开连接。

  • 1、服务器向客户端发送》Goodbye信息,表示请求与客户端进行断开TCP连接。
  • 2、客户端收到服务器Goodbye信息》回复Flags-ACK置位1的TCP报文,表示收到断开信息,且FTP客户端也开始清除FTP进程。
    • 收到ACK后的时服务器,TCP连接将单向断开。
  • 3、当FTP客户端清除FTP进程之后,向服务器发送Flags-FIN、ACK置位1的TCP报文通知服务器,自己准备好断开连接了,就差你的ACK回复了!
  • 4、服务器收到客户端FIN、ACK置位的TCP报文》回复Flags-ACK置位1的TCP报文,表示收到断开信息。
    • 客户端收到服务器回复的ACK置位报文》此刻双方才真正断开TCP连接。

在这里插入图片描述

华为官网教材截图(HCIA-02 网络参考模型):

在这里插入图片描述

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Hades_Ling

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值