TCP三次握手四次挥手

TCP三次握手,四次挥手的全过程,为什么需要三次握手,四次挥手 文章目录TCP介绍三次握手四次挥手滑动窗口拥塞避免算法 TCP介绍 三次握手 四次挥手 阅读详情

TCP(Transmission Control Protocol) 传输控制协议 

    TCP是主机对主机层的传输控制协议,提供可靠的连接服务,采用三次握手确认建立一个连接。

    位码即tcp标志位,有6种标志:

    URG(urgent紧急)

    ACK(acknowledgement 确认)

    PSH(push传送)    

    RST(reset重置)

    SYN(synchronous建立联机)

    FIN(finish结束)

     Sequence number(顺序号码) Acknowledge number(确认号码) 

 

三次握手

    第一次握手:主机A(客户端)发送位码为syn=1,随机产生seq number=1234567的数据包到主机B(服务器)并进入SYN_SENT状态,等待服务器确认; 

    第二次握手:主机B收到请求后,由SYN=1知道,A要求建立联机,就会发送确认联机信息,即向A发送ack number=(主机A的seq+1),syn=1,ack=1,随机产生seq=7654321的包,此时服务器进入SYN_RECV状态; 

    第三次握手:主机A收到后检查ack number是否正确,即第一次发送的seq number+1,以及位码ack是否为1,若正确,主机A会再发送ack number=(主机B的seq+1),ack=1,主机B收到后确认seq值与ack=1则连接建立成功,客户端和服务器进入ESTABLISHED状态, 完成三次握手,主机A与主机B开始传送数据。

    这3个报文段完成连接的建立,称为三次握手。发送第一个SYN的一端将执行主动打开,接收这个SYN并发回下一个SYN的另一端执行被动打开。

四次挥手(连接终止协议)

  由于TCP连接是全双工的,因此每个方向都必须单独进行关闭。这原则是当一方完成它的数据发送任务后就能发送一个FIN来终止这个方向的连接。收到一个FIN只意味着这一方向上没有数据流动,一个TCP连接在收到一个FIN后仍能发送数据。首先进行关闭的一方将执行主动关闭,而另一方执行被动关闭。
 (1) TCP客户端发送一个FIN,用来关闭客户到服务器的数据传送。
 (2)服务器收到这个FIN,它发回一个ACK,确认序号为收到的序号加1。和SYN一样,一个FIN将占用一个序号。
 (3)服务器关闭客户端的连接,发送一个FIN给客户端。
 (4)客户段发回确认,并将确认序号设置为收到序号加1。

   TCP提供了连接的一端在结束它的发送后还能接收来自另一端数据的能力,这就是TCP的半关闭。
客户端发送FIN,另一端发送对这个FIN的ACK报文段。当收到半关闭的一端在完成它的数据传送后,才发送FIN关闭这个方向的连接,客户端再对这个FIN确认,这个连接才彻底关闭。

TCP 三次握手和四次挥手 首先介绍一些专业术语的意思: Source Port:源端口,16位。 Destination Port:目的端口,16位。 Acknowledgment Number:确认序列号,32位。 Sequence Number:发送数据包中的第一个字节的序列号,32位。 ACK:表示Acknowledgment Number字段有意义 SYN:表示SYN报文(在建立TCP连接的时候使用) 阅读详情

相关推荐

TCP三次握手,四次挥手问题总结

TCP三次握手,四次挥手问题总结 文章目录TCP三次握手,四次挥手问题总结TCP三次握手,四次挥手解释TCP协议基础TCP服务模型TCP头部状态转换为什么要“三次握手,四次挥手”三次握手四次挥手扩展可以了解的知识: TCP三次握手,四次挥手解释 SYN 包:建立连接请求的包 FIN 包:切断TCP 连接的包 ACK 包:针对SYN 包和FIN 包的确认应答包 1、TCP 的特点及其目的: (1)...

qq_22121229的博客 1339

TCP三次握手和四次挥手

如果不了解TCP报文的格式可以点击这里 三次握手 第一次握手:由客户端主动发起连接建立请求,发送数据包,将SYN置为 1 ,通常叫做发送SYN包,并且随机产生一个值:seq = J,然后将数据包发送给服务端,客户端进入SYN_SENT状态,等待服务端的确认 第二次握手: 服务端收到SYN报文,对该报文进行回复,将报文的标志位SYN和ACK都置为 1 ,确认应答序号ack = J + 1,同样随机产生一个值seq = K,将数据报发送给客户端,服务端进入SYN_RCVD的状态 第三次握手: 客户端接收到数据包

duxinyu的博客 2555

Alphafold2/multimer本地安装避坑指南:从Conda环境配置到GPU加速实战

本文详细介绍了Alphafold2/multimer本地安装的全流程,从Conda环境配置到GPU加速实战,特别针对常见的报错处理提供了解决方案。通过硬件环境检查、依赖安装技巧、OpenMM补丁应用等步骤,帮助研究人员高效部署蛋白质结构预测工具,提升计算效率。

weixin_29309213的博客 116

TCP的三次握手、四次挥手

TCP三次握手与四次挥手;为什么要等2MSL;拔网线后TCP连接还存在吗?TCP与UDP的区别几应用场景;SYN报文什么情况下会被丢弃; TCP如何提高传输效率 什么是滑动窗口机制? 服务端不进行accept接收新连接,那么最多可以有多少个连接建立成功? TCP的序号一定是从0开始吗? 通过三次握手最多可以建立多少个TCP连接

qzt__l0ve的博客 3408

CentOS 7下Oracle 11G RAC静默安装避坑指南:从网络规划到共享存储配置全流程

本文详细介绍了在CentOS 7环境下进行Oracle 11G RAC静默安装的全流程,包括网络规划、共享存储配置和系统参数调优等关键步骤。特别针对静默安装过程中的常见问题提供了实用的避坑指南和优化建议,帮助技术人员高效完成企业级数据库部署。

weixin_29234509的博客 125

告别零碎资料!手把手教你搞定ASTER L1T数据的预处理全流程(附ENVI实操)

本文详细介绍了ASTER L1T数据的预处理全流程,包括数据获取、质量检查、ENVI实操步骤(辐射定标、大气校正、几何精校正)以及热红外波段深度处理。特别适合地信领域初学者和研究人员,帮助快速掌握ASTER L1T数据处理技巧,提升定量反演研究效率。

weixin_30385925的博客 355

TCP 三次握手四次挥手

三次握手的关键是要确认对方收到了自己的数据包 ,这个目标就是通过“确认号(Ack)”字段实现的。计算机会记录下自己发送的数据包序号Seq,待收到对方的数据包后,检测“确认号(Ack)”字段, 看 Ack = Seq + 1 是否成立,如果成立说明对方正确收到了自己的数据包 。

路星辞*的博客 2508

KLayout教程(二)编辑不同的形状

首先画一个基础的矩形,然后双击他可以定义他的坐标

集成光电子 1万+

TCP的三次握手和四次挥手实现过程。以及为什么需要三次握手?四次挥手?

TCP连接的三次握手和四次挥手实现原理

weixin_51380508的博客 6002

Detector-Free SfM 项目复现完整指南:从环境搭建到代码解析与可视化

本文提供了Detector-Free SfM项目的完整复现指南,涵盖技术背景、环境配置、代码解析和可视化方案。重点包括: 技术背景:Detector-Free SfM通过两阶段策略(粗重建+迭代精化)解决了传统SfM在弱纹理区域的瓶颈问题,采用深度学习匹配器替代传统特征点检测。 环境配置: 详细硬件要求与推荐配置(GPU/CPU/内存) 完整的Ubuntu系统设置步骤 Conda环境创建与依赖安装流程 关键组件安装指南(PyTorch、COLMAP等) 常见错误解决方案 项目特点: 支持多种Detector

huanghm88的专栏 121

3、基于视觉的智能分拣机:原理、算法与应用

本文介绍了一种基于视觉的智能分拣系统,利用树莓派、相机模块和多种检测算法实现低成本、高精度的物体分拣。系统支持颜色、形状和尺寸三种检测方式,准确率达99%,广泛适用于制造业、农业和物流等领域。文章详细阐述了各检测算法原理、测试结果及系统优化方向,并探讨了其实际应用案例与未来发展前景。

mqtt6iot的博客 237

详解TCP三次握手四次挥手

详解TCP三次握手四次挥手 1.TCP报文格式 在了解三次握手和四次挥手之前,先知道TCP报文内部包含了哪些东西。 TCP报头中的源端口号和目的端口号同IP数据报中的源IP与目的IP唯一确定一条TCP连接。TCP在发送数据前必须在彼此间建立连接,这里连接意思是:双方需要内保存对方信息(例如:IP,Port…) 报文主要段的意思 序号:表示发送的数据字节流,确保TCP传输有序,对每个字节编...

nigar_的博客 2543

SAP物料主数据中的销售视图。这是一个在销售与分销模块中至关重要的核心主数据,直接关系到从报价到交货的整个销售流程

SAP物料主数据的销售视图是销售流程的核心基础,它定义了物料如何被销售、定价、开票和交付。销售视图包含五个关键控制点:1)基本销售数据控制物料销售状态;2)销售组织数据决定销售渠道和产品分类;3)通用物料数据管理销售描述和税务分类;4)交货计划控制交付参数;5)开票计划管理定价规则。这些设置直接影响销售流程顺畅度、数据准确性、客户满意度、财务合规性和业务灵活性。建议将销售视图创建纳入新产品引入流程,并建立规范的维护机制,确保业务变化时及时更新配置。

金牌架构师 666

TCP三次握手和四次挥手过程

TCP三次和四次挥手过程1、TCP报文段首部2、TCP三次握手过程及常见问题2.1 TCP三次握手过程2.2 常见问题2、TCP四次挥手过程及问题2.1 TCP四次挥手过程2.2 常见问题 1、TCP报文段首部          要理解TCP三次握手和四次挥手的过程,首先需要了解TCP报文段的某些首部的含义...

weixin_39754631的博客 1589

利用Dify构建文档内容的分析对比

本次主要做了一些workflow和Agent的应用实现,供大家参考。主要目的是为了进行两个内部报告文件的内容对比,特别是报告中的各类审批表、申请表、推荐表和流程对比,本地数据通过知识库方式分别加载到两个知识库中,编制工作流针对同一个问题进行知识库检索,之后将查询结果进行合并,再一起提交给LLM进行对比,最终将对比分析结果以markdown方式返回显示。主要包括如何构建知识库,如何设计workflow、如何将工作流发布为工具、如何设计提示词、如何在agent中引入前面发布的工具,最终通过agent实现与用户交

hhue2007的专栏 2525

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

TCP协议——三次握手和四次挥手

理解tcp三次握手、四次挥手及相关问题

Dirty_artist的博客 1488

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

TCP的三次握手和四次挥手

一、三次握手 三次握手(Three-way Handshake)其实就是指建立一个TCP连接时,需要客户端和服务器总共发送3个包 主要作用就是为了确认双方的接收能力和发送能力是否正常、指定自己的初始化序列号为后面的可靠性传送做准备 过程如下: 第一次握手:客户端给服务端发一个 SYN 报文,并指明客户端的初始化序列号 ISN©,此时客户端处于 SYN_SENT 状态 第二次握手:服务器收到客户端的 SYN 报文之后,会以自己的 SYN 报文作为应答,为了确认客户端的 SYN,将客户端的 ISN+1作为.

Silvia 9564

精雕软件(JDpaint) 5.5 绿色版

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

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

TCP三次握手,四次挥手

相信大家比较常回答的是:“因为三次握手才能保证双方具有接收和发送的能力。这回答是没问题,但这回答是片面的,并没有说出主要的原因。在前面我们知道了什么是TCP 连接用于保证可靠性和流量控制维护的某些状态信息,这些信息的组合,包括Socket、序列号和窗口大小称为连接。所以,重要的是为什么三次握手才可以初始化 Socket、序列号和窗口大小并建立 TCP 连接。接下来,以三个方面分析三次握手的原因:三次握手才可以阻止重复历史连接的初始化(主要原因)三次握手才可以同步双方的初始序列号。

qq_62097431的博客 1404

TCP三次握手 四次挥手

TCP三次握手 四次挥手预备知识TCP的标志位 SYN(请求建立连接) ACK(确认) PSH(传送) FIN(结束) RST(重置) URG(紧急) TCP是面向连接的字节流协议,是全双工的。三次握手例图: 第一次握手:客户端发送一个连接请求(SYN位置为1) 第二次握手:服务端接收到连接请求,发送确认(SYN位置为1, ACK位置为1) 第三次握手:客户端接受到服务端的确认,发

zycxnanwang的博客 6097

TCP的三次握手和四次挥手详解

TCP是主机对主机层的传输控制协议,提供可靠的连接服务,采用三次握手确认建立一个连接,与之相反的,采用四次挥手来断开连接: TCP标志位有6种标示,即:SYN(建立联机) 、 ACK(确认) 、 PSH(传送) 、 FIN(f结束) 、 RST(重置) 、 URG(紧急) 、 Sequence number(顺序号码) 、 ...

rememberyf的博客 2万+

TCP三次握手抓包分析及TCP四次挥手过程

TCP三次握手抓包分析 3.1 问题 1)使用eNSP搭建实验环境,在Server1搭建Web服务,在交换机E0/0/2口开启抓包,在Client1上访问Web服务 2)抓包查看TCP三次握手过程 3.2 方案 使用eNSP搭建实验环境,如图-9所示。 图-9 3.3 步骤 实现此案例需要按照如下步骤进行。 1)第一次握手,如图-10所示。 图-10 2)第二次握手,如图-11所示。 图-11 3)第三次握手,如图-12所示。 图-12 4 案例4:TCP四次挥手抓包分析 4.1 问题 1)使用eN

qq_36963043的博客 4671

TCP三次握手与四次挥手详解

TCP协议是面向连接的传输层协议,在互联网中保证数据可靠传输,如网页浏览时浏览器与服务器间数据传输就依赖TCP。当客户端数据发送完毕,会主动发送FIN报文触发挥手,如浏览器关闭HTTP连接时常见此操作。半连接状态是TCP三次握手时,服务器收到SYN包但未完成握手的状态,此时连接未完全建立。

weixin_48073733的博客 1005
上一篇: linux下的source命令用法
下一篇: vsftp 530 Login incorrect的解决办法
森几许
博客等级 码龄18年 13粉丝 15原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值