TCP三次握手四次挥手详解_tcp三次挥手四次挥手-程序员宅基地

技术标签: 网络  服务器  tcp/ip  计算机网络  

一、三次握手

三次握手主要是为了建立客户端到服务器端的TCP连接。

(1)客户端的TCP首先向服务器端的TCP发送一个请求连接报文段。该报文段中不包含应用层数据。同步位SYN被置为1,同时客户端会选择一个初始序号client_isn,将序号seq置为client_isn。然后被网络层封装为IP数据报发送给服务器端。

(2)当客户端报文段成功传递给服务器端时,服务器回从该报文段中提取SYN,为该连接分配缓存和变量,并向客户端传递允许连接的报文段。该报文段也不含有应用层数据。在该报文段中,同步位SYN被置为1,确认位ACK被置为1,其次,该TCP报文段首部的确认号ack被置为client_isn+1(即希望客户端下次传送的报文seq为)client_isn+1。最后,服务器端会选择一个初始序号server_isn,将序号seq置为server_isn。

(3)在客户端收到服务器端的报文段后,客户端也要给该连接分配缓存和变量。客户端给服务器端发送一个报文段,为了对服务器的允许连接的报文段进行确认,因此确认位置1。由于连接已经建立,因此同步位SYN置0。该阶段可以在报文段中携带客户到服务器的数据。

为什么需要三次握手而不是两次握手?

答:如果是两次握手,那么就说明当客户端给服务器端发送连接建立请求报文段时,服务器端端收到了该报文段,再给客户端发送允许连接报文段,此时TCP连接就建立完毕,看起来没什么问题,但是考虑一种情况:
如果第一次客户端请求连接的时候,此时网络拥塞严重,产生滞留,

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_49635198/article/details/125941147

智能推荐

主流的开发语言和开发环境介绍-程序员宅基地

文章浏览阅读1.2k次,点赞13次,收藏9次。主流的开发语言和开发环境介绍 _开发语言

WPF自定义控件——顶级控件-程序员宅基地

文章浏览阅读595次。作为一个WPF程序员,我最希望看到的是WPF的应用,或者更确切的说是绚丽的应用,虽然限于自身的实力还不能拿出成绩来,但看到别人的作品时,心里还是有很大的宽慰——WPF是可以做出更加动人地产品的,只要你坚定的走下去,带着不满现状的追求走下去。 下图是Telerik的WPF控件,我相信很多人也下过他的DEMO,研究过他的代码,并由此激起对WPF的信心。今天我们就来仿造他的Drag..._wpf 自定义控件示例

让pandas狠狠的玩转excel_pandas对于excel来说什么时候好用-程序员宅基地

文章浏览阅读380次。先来无事,开始总结自己最近学过做过的东西。想想,数据才是所有网络和编程的核心,包括人工智能。但是自己的数据处理能力,仅仅停留在excel基础,只用代码完成过64个表格的批量筛选和提取。后来阅读和搜索发现,Python里面处理数据,pandas和numpy才是王道。所以最近开始想办法学习这两个东西。怎么学?看代码,看书,太枯燥。买课又不想花钱。经过研究发现,pandas是可以处理类似excel结..._pandas对于excel来说什么时候好用

第十二周学习总结 Progress & Lack-程序员宅基地

文章浏览阅读955次。周计划和学习总结

多特征变量序列预测(六) CEEMDAN+CNN-Transformer风速预测模型-程序员宅基地

文章浏览阅读1.1k次,点赞15次,收藏20次。本文基于前期介绍的风速数据(文末附数据集),介绍一种多特征变量序列预测模型CEEMDAN + CNN-Transformer,以提高时间序列数据的预测性能。

java 抽象类与接口 学习笔记_模仿本章练习,将其中的抽象类改为接口-程序员宅基地

文章浏览阅读206次。抽象类与接口一、抽象类1. 抽象类基本定义抽象类使用abstract class定义,并且其中的方法也可利用abstract定义若干个抽象方法,这样抽象类的子类必须再继承抽象类时强制全部覆写方法import java.util.Date;public class AbstractDemo { public static void main(String[] args) { ..._模仿本章练习,将其中的抽象类改为接口

随便推点

RPM安装nginx_nginx rpm-程序员宅基地

这篇文章介绍了通过在阿里云镜像网站下载epel源来安装nginx的过程,包括下载epel源、安装nginx rpm包、访问nginx默认网页以及nginx的安装配置文件路径和默认文件位置。

oracle expdp/impdp 数据泵导入导出命令_impdb schemas-程序员宅基地

文章浏览阅读9.2k次。oracle expdp/impdp 数据泵导入导出# 创建directory,指定导入导出时的数据存储路径create directory dir_dp as 'd:/database/dir_dp';# 授权grant read,write on directory dir_dp to user_name;# 查看目录及权限select * from dba_directories;-_impdb schemas

Exception in thread “main“ java.lang.UnsupportedClassVersionError: MapReduce/WordCount has been comp_unsupportedclassversionerror: wordcount has been c-程序员宅基地

文章浏览阅读1k次。实验过程中在运行“./bin/hdfs dfs -cat output/*”语句查看结果时发生以下报错:Exception in thread "main" java.lang.UnsupportedClassVersionError: MapReduce/WordCount has been compiled by a more recent version of the Java Runtime (class file version 60.0), this version of the Java _unsupportedclassversionerror: wordcount has been compiled by a more recent v

Fatal error: Cannot redeclare class 原因详细介绍_fatal error: cannot declare class wp_rest_navigati-程序员宅基地

文章浏览阅读1.4w次。Fatal error: Cannot redeclare class 原因详细介绍_fatal error: cannot declare class wp_rest_navigation_fallback_controller, be

swing GeneralPath::cubicTo绘制平滑曲线_java swing画平滑曲线-程序员宅基地

文章浏览阅读3.4k次。Java GeneralPath::cubicTo绘制平滑曲线_java swing画平滑曲线

深入了解,html,head,body,document(文档)、视口、window的关系_body、html、视口三合一-程序员宅基地

文章浏览阅读579次。从DOM(文本对象模型来看)DOM将文档中的节点看作是一个个的对象,包括文档节点(document),元素节点(标签名),属性节点(不是元素节点的子节点)、文本节点,注释节点,上面谈到的每个节点都是一个对象,其中元素节点包括但不限于html、head、body,浏览器为我们创建了访问文档中的节点的入口,也就是document对象,其中document对象也是window对象的属性,document对象是包括html对象的我们所说的网页,一般由三种组成HTML(结构)、CSS(表现)、Js(形式,实现交_body、html、视口三合一

推荐文章

热门文章

相关标签