三次握手工作方式概述

TCP 三次握手和四次挥手 TCP 和 UDP 讲解 TCP 三次握手和四次握手之前,我们先了解一下 TCP 和 UDP 这两个重量级的传输层协议。 用户数据报协议 UDP(User Datagram Protocol): UDP 在传送数据之前不需要先建立连接,远程主机在收到 UDP 报文后,不需要给出任何确认。 虽然 UDP不提供可靠交付,但在某些情况下 UDP 确是一种最有效的工作方式(一般用于即时通信),比如:QQ 语音、 QQ 视频 、直播等等 传输控制协议 TCP(Transmission Control . 阅读详情
概念:

所谓的三次握手(three times handshake;three-way handshaking)即对每次发送的数据量是怎样跟踪进行协商使数据段的发送和接收同步,根据所接收到的数据量而确定的数据确认数及数据发送、接收完毕后何时撤消联系,并建立虚连接。为了提供可靠的传送,TCP在发送新的数据之前,以特定的顺序将数据包的序号,并需要这些包传送给目标机之后的确认消息。TCP总是用来发送大批量的数据。当应用程序在收到数据后要做出确认时也要用到TCP。


过程:

三次握手第一次

第一次握手:建立连接时, 客户端发送 syn包(syn=j)到 服务器,并进入 SYN_SENT状态,等待服务器确认;SYN:同步序列编号( Synchronize Sequence Numbers)。

三次握手第二次

第二次握手: 服务器收到 syn包,必须确认客户的SYN( ack=j+1),同时自己也发送一个SYN包(syn=k),即SYN+ACK包,此时服务器进入 SYN_RECV状态;

三次握手第三次

第三次握手: 客户端收到 服务器的SYN+ACK包,向 服务器发送确认包ACK( ack=k+1),此包发送完毕,客户端和服务器进入 ESTABLISHED(TCP连接成功)状态,完成三次握手。
完成三次握手, 客户端与服务器开始传送 数据。

TCP三次握手 四次挥手/以及全双工通信 TCP协议通过三次握手和四次挥手实现可靠连接管理:三次握手(SYN、SYN-ACK、ACK)确保双方同步序列号并建立连接,防止失效请求;四次挥手(FIN、ACK、FIN、ACK)实现全双工连接的优雅断开。全双工通信允许双向同时传输,WebSocket是其典型应用,相比HTTP轮询具有低延迟优势。现代网络(如TCP/IP)和电话系统都采用全双工模式,通过物理通道分离(如双绞线)或时分/频分技术实现双向传输,显著提升吞吐量和交互体验。 阅读详情

相关推荐

在 STM32CubeIDE 中针对 STM32F407 移植 ThreadX

在 STM32CubeIDE 中针对 STM32F407 移植 ThreadX,不依赖盗版破解的Keil MDK、IAR等软件。

wangyuewu08的博客 3374

TCP三次握手中SYN,ACK,seq ack的含义

TCP三次握手中SYN,ACK,seq ack的含义 1.TCP为什么三次握手而不是两次握手 1.防止已失效的连接请求又传送到服务器端,因而产生错误。   不幸的是, 这种解释是不准确的,TCP 采用三次握手的原因其实非常简单, 远没有大部分博客所描述的那样云山雾绕。为了实现可靠数据传输,TCP 协议的通信双方, 都必须维护一个序列号, 以标识发送出去的数据包中, 哪些是已经被对方收到的。 三次握手的过程即是通信双方相互告知序列号起始值, 并确认对方已经收到了序列号起始值的必经步骤。如果只是两次...

Gabriel576282253的专栏 2万+

电磁仿真软件CST2020 下载链接及安装破·解教程笔记

众所周知,配环境是安装软件最头疼的事情。CST2020我调了一上午,网上现有的安装教程良莠不齐,很难有一篇文章能够全流程的讲述安装过程以及遇到的问题。正好今天我要给另一台电脑装软件,借此机会把安装过程记录下来,以供将来使用和他人借鉴。 首先提供下载地址: 百度网盘 链接:https://pan.baidu.com/s/1cDJZelufj-nliUfekMNpEA 提取码:8ihx 附: 根据二○○二年一月一日《计算机软件保护条例》规定:为了学习和研究软件内含的设计思想和原理,通过安装、显示、传输或者存储软

weixin_42845306的博客 3万+

【TCP】三次握手(最强详解!!通俗易懂!!)

【TCP】三次握手(最强详解!!通俗易懂!!)

miles067的博客 7924

视觉SLAM的前段后端最详细的梳理(硕士入门知识框架更新)

文章目录视觉SLAM的组成结构视觉里程计(VO)-特征点法 -构建稀疏点云地图-直接法 -构建稠密或半稠密的地图 --需要使用 RGB-D 传感器视觉里程计--总结:SLAM 后端研究滤波器法非线性优化后端方式的差异(有五种优化方式):单目视觉里程计的初始化:运动估计:半直接法运动估计的优化方案:关于解决累计误差的一些方法:关键帧的建图及后端优化:特征的深度估计:图优化的后端研究:视觉与IMU融合的分类:视觉与IMU的融合的优势:存在的问题:优秀的开源: 视觉SLAM的组成结构 视觉里程计(VO) -特

DC 6812

Mplus—交叉滞后面板模型(Cross-Lagged Panel Model, CLPM)

本文介绍交叉滞后模型相关知识,以及显变量模型与潜变量模型在Mplus中的语法。

m0_54401011的博客 1万+

刷题day10

1.传输介质是通信网络中发送方和接收方之间的 ( ) 通路。 正确答案: A 你的答案: A A.物理 B.逻辑 C.虚拟 D.数字 2.三次握手方法用于( )。 正确答案: A 你的答案: A (正确) A.传输层连接的建立 B.数据链路层的流量控制 C.传输层的重复检测 D.传输层的流量控制 解析:三次握手属于TCP协议,是对客户端和服务器建立连接的过程形象描述。 OSI七层模型中传...

douyans的博客 506

使用单调栈求解最大矩形面积问题的C++实现

通过本文的介绍,我们详细讲解了如何使用单调栈求解砖墙中最大矩形面积的问题,并提供了完整的C++代码实现。希望通过本文的学习,你能掌握单调栈的基本概念及其在实际问题中的应用。如果你有任何疑问或建议,欢迎在评论区留言交流。

m0_57781768的博客 814

27.Linux网络编程 掌握三次握手建立连接过程掌握四次握手关闭连接的过程掌握滑动窗口的概念掌握错误处理函数封装实现多进程并发服务器实现多线程并发服务器

基本概念叫协议 什么叫协议? 协议是一个大家共同遵守的一个规则, 那么在这个网络通信当中,其实就是双方通信和解释数据的一个规则,这个概念 你也不用记,你只要心里明白就可以了,分层模型, 物数网传会表应 每一层代表什么意思,干的什么事,你先看一看,你面试的时候 有可能会问你,别到时候 说不出来四层模型和七层模型有个对应,每一层代表什么意思,以及他和七层的哪一层有对应关系, 2 1 1 2 2 1 1 3 加起来一共7层 这四层 是不是我们实际的 网络传输过程中 用的就是这四层啊? 数据通讯的过程。最

chezabo6116的博客 1133

Python实现ARIMA模型

以下是一个使用Python实现ARIMA(自回归移动平均模型)的简单示例代码。在运行代码之前,请确保已经安装了pandasnumpy和库。ARIMAorder(2,0,2)p = 2d = 0q = 2forecastmatplotlib在实际应用中,你需要将模拟数据替换为真实的时间序列数据,并且通过合适的方法(如信息准则等)来确定pdq的最佳值。除了auto_arima在使用pmdarima。

huanghm88的专栏 1737

一步一步实现基于COMSOL的单模光纤波导仿真

一步一步实现基于COMSOL的单模光纤波导仿真,简单易懂,跟着博客就能实现

君莫笑lucky的博客 1万+

TCP三次握手

文章目录1. TCP2.TCP Flags3. tcp的三次握手4. 为什么需要三次握手才能建立起连接呢?5. 首次握手的隐患--SYN超时 1. TCP IP协议是无连接的通信协议,它不会占用两个正在通信的计算机之间的通信线路。这样ip就降低了对网络线路的需求,每条线路可以同时满足许多不同计算机之间的通信需要。通过ip,消息。source port,destination port各占两个字节 tcp和udp数据包都是不包含ip地址信息的,因为那是ip层上的事情,但是tcp和udp均会有源端口和目的端口。

mercies的博客 882

【STM32+K210项目】基于K210智能人脸识别+车牌识别系统(完整工程资料源码)

随着时代的进步和科技的迅猛发展,人们对居住安全的重视程度不断提升,对安全防范系统的需求也日益增强。在安防系统中,门禁系统占据着重要的位置。传统的门禁控制方式主要依靠钥匙、密码和门禁卡等,这些方式易于被破解和复制,安全性较低。然而,近年来,生物识别技术的迅速发展和成熟,为解决这一问题提供了新的方案。生物识别技术具备便携性、非易失性、不易遗忘以及难以盗用等优点,逐渐被引入到门禁系统中。传统的小区门禁系统往往依赖人工管理,存在一定的局限性,难以满足用户多样化的需求,也浪费了人力资源。

嵌入式技术开发 1万+

TCP/IP协议面试

一、什么是TCP连接的三次握手     第一次握手:客户端发送syn包(syn=j)到服务器,并进入SYN_SEND状态,等待服务器确认;     第二次握手:服务器收到syn包,必须确认客户的SYN(ack=j+1),同时自己也发送一个SYN包(syn=k),即SYN+ACK包,此时服务器进入SYN_RECV状态;     第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包

bigboygo的博客 505

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

TCP与UDP有什么区别?

面试题TCP UDP

weixin_45880589的博客 108

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

TCP学习之一:TCP网络编程概念

参考学习张子阳大神的博客:http://www.cnblogs.com/JimmyZhang/category/101698.html 一、TCP 面向连接的(UDP是无连接的) 全双工,建立连接之后,双方都可以使用现有的连接收发数据 三次握手 二、 TCP属于传输层,应用层如何使用传输层的协议? 套接字分离应用层、传输层的接口 ...

weixin_34357267的博客 99

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

异常、网络和设计模式

异常 throw 和 throws 的区别? • throw:是真实抛出一个异常。 • throws:是声明可能会抛出一个异常。 final、finally、finalize 有什么区别? • final:是修饰符,如果修饰类,此类不能被继承;如果修饰方法和变量,则表示此方法和此变量不能在被改变,只能使用。 • finally:是 try{} catch{} finally{} 最后一部分,表示不论发生任何情况都会执行,finally 部分可以省略,但如果 finally 部分存在,则一定会执行 final

Cybenko 169

知识点排查

JAVA开发知识点总结

g353849162的博客 120

TCP连接建立的三次握手过程可以携带数据吗?

前几天实验室的群里扔出了这样一个问题:TCP连接建立的三次握手过程可以携带数据吗?突然发现自己还真不清楚这个问题,平日里用tcpdump或者Wireshark抓包时,从来没留意过第三次握手的ACK包有没有数据。于是赶紧用nc配合tcpdump抓了几次包想检验一下。但是经过了多次实验,确实都发现第三次握手的包没有其它数据(后文解释)。后来的探究中发现这个过...

weixin_34198797的博客 7513

一文弄懂TCP连接建立时候的三次握手

所以重要的是为什么三次握手才可以初始化 Socket、序列号和窗口大小并建立 TCP 连接。 接下来,以三个方面分析三次握手的原因: 三次握手才可以阻止旧连接的初始化(主要原因) 三次握手才可以同步双方的初始序列号 三次握手才可以避免资源浪费

LUCIAZZZ的博客 1803

说说TCP的三次握手

TCP(Transmission Control Protocol) 传输控制协议的主要特点 1.TCP是面向连接的传输层协议。 2.每个TCP连接只能有两个端点,点对点的。 3.TCP提供可靠性。 4.TCP连接是全双工的。(TCP允许通信双方在任何时候都能发送数据,TCP连接两端都设有发送缓存和接收缓存,发送端在发送数据后,就做自己的事情了,数据会保存在缓存区,TCP会在合适的时候发送...

qq_42448476的博客 873

TCP三次握手和四次挥手

源端口:16位2字节,即当前进程的端口目的端口:16位2字节,对方的端口序号:一个生成的随机数确认序号:确认上次发送给对方的额数据对方是否收到窗口大小:表示接收数据的剩余缓存容量,如果为0,发送端就会阻塞。

shijue_的博客 1108

TCP传输过程详解——三次握手、四次挥手

TCP 3.1 三次握手(重点) 3.2 四次挥手(重点) 3.3 通过序列号与确认应答提高可靠性 3.4 重发超时的确定 3.5 以段为单位发送数据 3.6 利用窗口控制提高速度 3.7 滑动窗口控制 3.8 窗口控制中的重发控制 TCP TCP 与 UDP 的区别相当大。它充分地实现了数据传输时各种控制功能,可以进行丢包时的重发控制,还可以对次序乱掉的分包进行顺序控制。而这些在 UDP 中都没有。 此外,TCP 作为一种面向有连接..

Aplumage的专栏 2829

关于 TCP 三次握手和四次挥手

客户端收到服务器端响应的 SYN 报文之后,会发送一个 ACK 报文,也是一样把服务器的 ISN + 1 作为 ack 的值,表示已经收到了服务端发来的的 SYN 报文,希望收到的下一个数据的第一个字节的序号是 y + 1,并指明此时客户端的序列号 seq = x + 1(初始为 seq = x,所以第二个报文段要 +1),此时客户端处于。:服务端收到 FIN 之后,会发送 ACK 报文,且把客户端的序号值 +1 作为 ACK 报文的序列号值,表明已经收到客户端的报文了,此时服务端处于。

looken1024的博客 1049

TCP的三次握手和四次挥手

传输控制协议(TCP,Transmission Control Protocol)是一种面向连接的、可靠的、基于字节流的传输层通信协议,由IETF的RFC 793定义。 TCP旨在适应支持多网络应用的分层协议层次结构。 连接到不同但互连的计算机通信网络的主计算机中的成对进程之间依靠TCP提供可靠的通信服务。TCP假设它可以从较低级别的协议获得简单的,可能不可靠的数据报服务。 原则上,TCP应该能够在从硬线连接到分组交换或电路交换网络的各种通信系统之上操作。 TCP报文段结构 Source Port是源端口

学习永无止境 128

java tcp 三次握手_【Java】 关于 TCP 三次握手和四次挥手,满分回答在此

首页专栏java文章详情0???? 关于 TCP 三次握手和四次挥手,满分回答在此Veal98发布于 今天 12:060. 前言在面试中,计算机网络的 TCP 三次握手和四次挥手是很常见的问题,但是在实际面试中,面试官会更愿意听到怎样的回答呢?详细程度是怎样的?越简单常见的问题越不可小觑,万丈高楼平地起,把简单的问题深入化,才更能拉开与竞争者的距离。掌握了本文讲的全部知识点,关于 TCP 三次握手和四次...

weixin_30365269的博客 268
上一篇: 图像矩阵——灰度与彩色图
下一篇: Python命名空间的本质
THMAIL
博客等级 码龄10年 2435粉丝 432原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

打赏作者

THMAIL

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

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

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

打赏作者

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

抵扣说明:

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

余额充值