TCP的三次握手与四次挥手详细介绍

 更新时间:2017年03月10日 14:43:52   投稿:lqh  
这篇文章主要介绍了TCP的三次握手与四次挥手详细介绍的相关资料,需要的朋友可以参考下

TCP的三次握手与四次挥手详细介绍

为什么是三次握手?

目的:防止已失效的连接请求又传到了服务器端。

场景(A为客户,B为服务器):A向B发送一个请求连接报文,但是这个报文在网络中阻塞了,并没有传到B。所以B也无法向A发送确认报文,在A的重传计时器到达之后,A再次向B发送请求连接报文,这个报文B收到了,并且向A做出应答,建立连接,传输数据。数据传输完后,关闭连接。问题来了,就在B关闭连接之后,A第一次发送的请求连接报文到了(这个报文是已经失效的),B以为A要再次创建一个新连接,于是向A发送确认报文。

如果采用两次握手的话,此时连接已经建立了。但是A根本没有向B发送请求连接报文,所以A并不会理会B的确认。B以为此时连接已经建立了,就会一直等待A向它发送数据。这样B的资源就白白浪费了。

但是采用三次握手就不同了,A不会因为B的确认而向B发送确认,B收不到A的确认,就知道B没有请求连接。B的资源也就不会浪费。

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

相关文章

  • 怎样制作“别人家的”Chrome插件

    怎样制作“别人家的”Chrome插件

    Chrome插件有很多实用API可以让我们使用,通过Chrome插件我们还可以做很多的事情,例如翻译网页文字等。本文将教你怎样制作“别人家的”Chrome插件,感兴趣的小伙伴一起来看看吧
    2021-08-08
  • H5混合开发手机Web App入门:概念篇

    H5混合开发手机Web App入门:概念篇

    如果你开始学习手机 App 开发,就一定会听到 H5 这个词。它是目前的主流开发技术之一,容易上手,开发周期短、成本低、兼容传统 Web 开发。但是,很少有文章详细介绍,H5 到底是什么技术,有什么原理,跟其他技术的差异在哪里。
    2022-12-12
  • Sqoop的安装与使用详细教程

    Sqoop的安装与使用详细教程

    Sqoop是一款开源的工具,主要用于在Hadoop与传统数据库间进行数据的传递,这篇文章主要介绍了Sqoop的安装与使用详细教程,需要的朋友可以参考下
    2021-04-04
  • 一文读懂modbus slave和modbus poll使用说明

    一文读懂modbus slave和modbus poll使用说明

    modbus poll和modbus slave是一款实用的modbus开发和调试工具,可以非常方便的进行modbus调试,是非常有用的Modbus主机/从机模拟程序,这篇文章给大家介绍modbus slave和modbus poll使用说明,感兴趣的朋友一起看看吧
    2021-04-04
  • java与c#的区别、两者有什么不同?

    java与c#的区别、两者有什么不同?

    Java和C#都是一门面向对象的语言,Java更多地借鉴了C++的优点,而摒弃了它的一些不太容易被人掌握的知识点(有些不能说是缺点),并且增加了一些自己的特点,而C#则是更多地借鉴了Java的优点,而增加了一些自己的特点
    2013-04-04
  • Eclipse 误删文件的恢复与代码的恢复详解

    Eclipse 误删文件的恢复与代码的恢复详解

    这篇文章主要介绍了Eclipse 误删文件的恢复,代码的恢复的相关资料,需要的朋友可以参考下
    2016-09-09
  • 十招教你学会破解[教程]

    十招教你学会破解[教程]

    十招教你学会破解[教程]...
    2007-04-04
  • 权限控制之粗粒度与细粒度概念及实现简单介绍

    权限控制之粗粒度与细粒度概念及实现简单介绍

    这篇文章主要介绍了权限控制之粗粒度与细粒度概念及实现简单介绍,具有一定参考价值,需要的朋友可以了解下。
    2017-10-10
  • 密码哈希函数 Bcrypt的最大密码长度限制详解

    密码哈希函数 Bcrypt的最大密码长度限制详解

    这篇文章主要介绍了密码哈希函数 Bcrypt的最大密码长度限制详解的相关资料,需要的朋友可以参考下
    2017-03-03
  • Scala函数式编程专题--scala基础语法介绍

    Scala函数式编程专题--scala基础语法介绍

    这篇文章主要介绍了scala基础语法的的相关资料,文中讲解非常详细,帮助大家更好的理解和学习,感兴趣的朋友可以了解下
    2020-06-06

最新评论