我的编程空间,编程开发者的网络收藏夹
学习永远不晚

TCP三次握手详解

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

TCP三次握手详解

一、什么是TCP三次握手?

三次握手 (Three-way Handshake),是指建立一个TCP连接时,需要客户端和服务器总共发送3个包。 三次握手的目的是连接服务器指定端口,建立TCP连接,并同步连接双方的序列号和确认号并交换 TCP 窗口大小信息.在socket编程中,客户端执行connect ()时。 将触发三次握手。

二、TCP三次握手的原理是什么?

三次握手的图例👇:
请添加图片描述
首先,在对数据进行传输的时候TCP会先发一次指令给服务端,类似于打电话询问是否可以向客户端发送请求。第一次发送SYN=1的报文,再附上Seq=x的序列号。
而后,客户端接收到了客户端发送的请求之后,给客户端发送确认的指令,证明此时的服务端可以允许客户端的访问了。所以服务端向客户端发送SYN=1和ACK=X+1的报文并回复一个为Y的序列号,并确认客户端之前发送过来的序列号+1。
最后,客户端向服务端最后发送一次需求,并成功访问服务端。客户端向服务端发送ACK的报文并附上序列号Z,并确认服务端之前发过来的序列号+1。

这就是TCP的三次握手,通过来回反复确认来体现出TCP不同于UDP的安全性。这也随之可证明TCP的安全之处。UDP与TCP最大的区别就在于,是否确认收文件的端口是否可以接收信息。UDP不管收文件的端口是否愿意收,是否可以收,尽管发送包过去,丢包之类的情况一切不考虑,这就是UDP的不安全之处。

而TCP会首先发送一个请求过去,询问是否可以接受信息,是否可以收到信息,从而收包的一方同时也会向发包的一方回一条消息。、
就如同双方在谈合同一样,首先确认合同方是否愿意合作然后得到合作方的回应之后,再继续进行项目,从而达到双方共赢的目的。

三、抓包看看UDP和TCP

UDP👇
请添加图片描述
TCP👇
请添加图片描述

可以明显的看出TCP不同于UDP的区别,当然这么长,里面肯定是多了三次握手的原理在里面的,当我们知道了TCP三次握手的原理之后,对于了解数据抓包就会更加的容易。

四、抓包细节

第一次握手:
请添加图片描述
第127个包,源端口52940
目标端口:80
源端口在向80端口发送请求。

第二次握手:
请添加图片描述
第128个包,源端口号80
目标端口:52940
之前的目标端口在向源端口回复信息。

第三次握手:
请添加图片描述
第129个包,源端口52940
目标端口:80
源端口再向目标端口回送信息,至此三次挥手完成

指令变化:
请添加图片描述

请添加图片描述
请添加图片描述
可以清楚的看到SYN和ACK值的变化,印证了我们最开始讲三次握手的指令变化。

来源地址:https://blog.csdn.net/Body63681/article/details/128524918

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

TCP三次握手详解

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

简述TCP三次握手和四次挥手

TCP三次握手:第一次握手:Client将标志位SYN置为1,随机产生一个值seq=J,并将该数据包发送给Server,Client进入SYN_SENT状态,等待Server确认。第二次握手:Server收到数据包后由标志位SYN=1知道C
2023-06-04

TCP的三次握手与四次挥手怎么理解

本篇内容主要讲解“TCP的三次握手与四次挥手怎么理解”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“TCP的三次握手与四次挥手怎么理解”吧!TCP报文段的首部格式序列号seq:占4个字节,用来标记
2023-06-03

如何解析TCP的三次握手与四次挥手

这篇文章将为大家详细讲解有关如何解析TCP的三次握手与四次挥手,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。TCP的传输如图:TCP三次握手的过程如下:建立TCP连接,就是指建立一个TCP连
2023-06-28

TCP的三次握手与四次挥手是什么

这篇文章主要介绍了TCP的三次握手与四次挥手是什么的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇TCP的三次握手与四次挥手是什么文章都会有所收获,下面我们一起来看看吧。TCP报文段的首部格式**序列号seq:*
2023-06-27

TCP的连接管理的“三次握手”

 TCP是面向连接的协议,TCP把连接作为最基本的抽象。每一条TCP连接唯一地被通信两端的两个端点所确定。在面向连接通信中,连接的建立和释放是必不可少的过程。TCP连接的建立采用客户服务器方式,主动发起连接建立的应用进程叫做客户,而被动等待连接的应用进程叫做服务器。而本文小编主要为大家介绍TCP的连接管理原理!  TC
TCP的连接管理的“三次握手”
2024-04-18

Python中TCP协议的三次握手与四次挥手是什么

本篇内容介绍了“Python中TCP协议的三次握手与四次挥手是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一、TCP、UDP 协议的区
2023-06-02

简单介绍TCP协议三次握手过程

  简单介绍TCP协议三次握手过程:对于网络工程师来说,TCP协议几乎是大家每天都会接触到的网络协议,要知道,绝大多数网络连接的建立都是基于 TCP 协议的,那么接下来,我们就要来简单介绍一下使用 TCP 协议建立连接所需要经过的三次握手过程。  何为TCP协议三次握手?  先来说说什么是TCP协议三次握手,所谓三次握
简单介绍TCP协议三次握手过程
2024-04-18

三次握手、四次挥手的理解

client: socketconnectsend encoderecv decodecloseserver: socketbindlisten 1.主动转换成被动 2.向系统申请队列(5)accept 1.阻
2023-01-30

TCP/IP协议中三次握手四次挥手的原理及流程分析

当初学的是通信专业,毕业以后,同学们各奔东西,去追逐自己的梦想,奔波于大大小小的工地之间。哈哈,开个玩笑,也有厉害的,进了某某研究所,嗯?他爸不是所长,内心不要太阴暗。记得有一门十分高大上的课程,名字叫做计算机网络(大概是这个名字吧)。里面
2023-05-30

美国服务器TCP协议三次握手是怎样的

在美国服务器上,TCP协议的三次握手过程如下:客户端向服务器发送一个SYN(同步)标志的TCP数据包,请求建立连接。服务器接收到客户端发送的SYN数据包后,向客户端发送一个ACK(确认)数据包,同时也发送一个SYN数据包作为响应。客户端
美国服务器TCP协议三次握手是怎样的
2024-04-09

抓包工具WireShark使用及TCP三次握手报文分析

为什么要抓包 (1)定位网络问题 大部分场合都可以通过程序调试来定位问题,但有些场景使用抓包来定位接口问题更准确、更方便,如以下场景: 你发送数据给后台,但后台没有收到,可以对接口进行抓包分析,看是后台处理有问题,还是没有将数据发出去,或是
2023-08-30

活久见!TCP两次挥手,你见过吗?那四次握手呢?

我们都知道,TCP是个面向连接的、可靠的、基于字节流的传输层通信协议。TCP是什么那这里面提到的"面向连接",意味着需要 建立连接,使用连接,释放连接。建立连接是指我们熟知的TCP三次握手。而使用连接,则是通过一发送、一确认的形式,进行数据
2023-07-24

编程热搜

目录