当前位置: 首页 > news >正文

宁波方太集团网站建设石家庄做网站优化公司

宁波方太集团网站建设,石家庄做网站优化公司,云服务器 虚拟机,做排行榜的网站文章目录 TCP的三次握手和四次挥手三次握手四次挥手 TCP的三次握手和四次挥手 基本概念 SYN#xff08;Synchronize Sequence Numbers#xff0c;同步序列数字#xff09;#xff1a;用于建立连接的同步信号。 SYN 序列号的作用是用于标识每个数据包中的字节流的起始位置。… 文章目录 TCP的三次握手和四次挥手三次握手四次挥手 TCP的三次握手和四次挥手 基本概念 SYNSynchronize Sequence Numbers同步序列数字用于建立连接的同步信号。 SYN 序列号的作用是用于标识每个数据包中的字节流的起始位置。在 TCP 连接的建立过程中双方会约定一个初始的序列号标准的TCP连接中都是设置为初始序列号都是设置为1相当于起始字节流的编号。每个数据包都附带有一个序列号字段在传输过程中不断递增用于指示数据包中字节的位置。 通过使用 SYN 序列号双方能够确保数据包的顺序和完整性。接收方可以根据序列号信息验证数据包的顺序并进行数据重组和重传操作。因此SYN 序列号在 TCP 连接的建立和数据传输过程中起到了重要的同步和校验作用。 SEQSequence Number用于标识发送方发送的数据包的序列号。 它是一个32位的无符号整数序列号的作用是保证TCP连接中数据包的顺序性和可靠性。发送方在发送数据时会为每个数据包分配一个唯一的序列号。接收方在接收到数据包后可以通过序列号来确定接收到的数据包的顺序并进行重组。 ACKAcknowledgement确认用于确认应答。 字段等于1的含义是表示接收方已经正确地收到了对方发送的SYN同步序列编号字段。需要注意的是ACK字段并不是固定等于1的它可以根据具体的场景和TCP协议的版本进行调整。但是在标准的TCP三次握手过程中ACK字段等于1是一种常见的设置方式。 FINFinish完成用于表示后面没有数据发送了通常意味着连接的断开。 当一方希望关闭连接时会发送一个带有FIN 1的数据包给对方表示自己不再发送数据了并请求对方关闭连接。 三次握手 理解性记忆想要别人回复都需要设置 SYNSYN值为1发送请求都需要设置 seqseq值为接收请求 ACK 的值上一次请求没有 ACK 就自己设置一个值回复请求都需要设置 ACKACK的值为接收请求 seq 的值 1。 总结就是所有的请求都必须有 seq非最后一次请求都必须有 SYN非第一次请求都必须有 ACK 和 ack 每次握手的含义 第一次握手A发送消息给B“我想当你男朋友你愿意吗”第二次握手B回复消息给A“我愿意”第三次握手A回复消息给B“我现在知道你愿意当我女朋友了”于是 A 和 B 建立了男女朋友关系 第一次握手A表达了想和B建立连接的意愿第二次握手B表达了自己的意愿第三次握手A告诉B他已经知道了B的意愿。 PSA客户端扮演男朋友角色B服务端扮演女朋友角色 现在我们再来推敲一下为什么必须是三次握手不能是1次、2次或4次握手 如果是一次握手那么 A 只是表达了自己的意愿并不知道 B 的意愿所以他们无法直接就建立男女朋友关系要不然你随便和一个陌生女孩表白那你们就建立男女朋友关系了这显然不太可能吧 如果是两次握手那么A表达了自己的意愿B也表达了自己的意愿但是此时A知道B的意愿但B并不知道A是否知道知道自己的意愿这样会存在安全隐患以及出现脏连接1因为 B 并不知道 A 是否知道他是否知道自己的意愿就会默认他知道自己的意愿于是就进行了交往但却殊不知 A 没收到 B 的请求也就是 A 不知道 B 同意了自己的交往请求于是 A 秉持着不在一个棵树上吊死的精神移情别恋了这就导致 B 后续的请求直接落了个空 如果是四次握手其实在第三次握手时就能够确保 A 和 B 都表达了自己的意愿而 A 和 B 也都知道了双方的意愿第四次握手就显得有些冗余了 综上所诉三次握手的是保障双方信息对等同时避免出现连接超时导致出现脏连接的最少握手次数多一次握手多余浪费资源少一次握手不安全而握手三次不多不少刚刚好 现在再来讲一讲什么是脏连接为什么两次握手就会导致出现脏连接所谓的脏连接Dirty Connection是指在网络通信中由于某种原因导致连接状态出现异常或错误的情况。 常见的导致出现脏连接的情况有 网络中断或故障当网络中断或发生故障时连接可能会被意外中断但是连接的状态却没有及时更新。这导致连接状态变为脏连接无法正常传输数据。 服务器或客户端崩溃如果服务器或客户端在连接过程中崩溃或异常终止连接状态可能无法正确清理和关闭从而产生脏连接。 防火墙或网络设备问题防火墙或其他网络设备配置不正确、软件故障或过滤规则错误等问题可能导致连接被错误地阻塞或终止造成脏连接。 应用程序错误应用程序编码错误、资源管理问题或逻辑错误可能导致连接处理不当使连接处于脏的状态。 脏连接的危害 占用服务器资源脏连接可能占用服务器资源如内存、CPU等导致性能下降。数据传输异常脏连接可能导致数据丢失、错乱甚至数据冲突。安全隐患脏连接可能被黑客利用进行未授权访问、攻击或其他恶意行为。 如果我们采用了两次握手客户端发送请求给服务端服务端收到客户端的请求由于省掉了第三次握手所以此时服务端在接收到客户端的请求之后单方面认为客户端接收到了自己的回复服务端开启了TCP连接此时的连接变成了半双工2连接了而TCP是全双工3连接但此时客户端可能并没有接收到服务端的连接此时服务端的回复就有可能被第三发截取从而造成安全事故。这个单向的TCP连接是一个脏连接因为它处于一个异常的连接状态 注意并不是说使用三次握手就能完全避免脏连接只是说通过三次握手能大幅度降低脏连接发生的概率 四次挥手 理解性记忆请求需要断开连接时必须设置 FINFIN值为1发送请求都需要设置 seqseq值为接收请求的 ACK 值如果是第一次请求就自己设置一个值回复请求都需要设置 ACKACK 的值为接收请求 seq 的值 1 总结就算所有请求都必须有 seq断开连接的请求需要设置 FIN一次FIN断开一半非第一次请求都必须有 ACK 和 ack 每次挥手的含义 第一次挥手A发送请求给B“我想和你中断关系你同意吗” 第二次挥手B发送请求给A“我同意了断开连接前你先等我收拾一下我的东西然后回娘家” 第三次挥手B发送请求给A“我东西收拾好了回娘家了” 第四次挥手A发送请求给B“知道了”客户端真是一个无情无义的渣男关系建立是他提出的关系结束也是他提出的 第一次挥手A表达了自己要中断夫妻关系的意愿第二次挥手B了解了A的意愿同时表达了自己的意愿第三次挥手B表达了自己已经东西回娘家的准备第四次挥手表示A告诉B自己已经知道他收拾好东西了这个第四次握手和之前的第三次挥手作用是类似的 PSA客户端扮演老公角色B服务端扮演老婆角色 为什么一定是四次挥手不能是1次、2次、3次、5次 如果我们少了第二次挥手直接进行第三次挥手那么此时服务端B可能就准备释放一些资源同时将之前一些准备好的资源发送给A但是由于缺少第二次挥手客户端A并不知道此时服务端B已经释放了一些资源此时数据请求还是双向的客户端还可以会发送一些请求给服务端B但是服务端已经关闭了资源这就导致了请求异常第二次挥手是为了给服务端预留关闭资源和释放资源的时间这个时间端数据只能是服务端B发送给客户端A客户端A不能发送数据给服务端B不然就会发生异常导致连接无法正常关闭 如果我们少了第三次挥手那就更加离谱了B还没完全关闭释放资源客户端A就直接单方面断开连接了这就导致了还有一些没有发送出去的资源的浪费 如果我们少了第四次挥手这个就和之前的第三次握手是一样的容易出现脏连接即服务端B在没有确定客户端A已经收到自己资源关闭完成的请求时进行了单方面的连接断开而如果此时B的请求在中断发生了丢失就会导致A一直处于等待状态造成资源浪费 其实这个和之前的三次握手是差不多的这里就只简单介绍一下首先我们需要明确四次挥手是能够保障信息对等同时避免数据的丢失和资源的浪费的最少挥手次数挥手次数过少信息不对等容易出现数据丢失和资源浪费挥手次数过多浪费资源而四次不多不少刚刚好O(∩_∩)O 为什么第四次挥手客户端需要等待 2*MSL报文段最长寿命时间后才进入 CLOSED 状态 客户端A发送给服务端B的ACK请求可能会发生丢失此时服务端B会重新发送请求而网络中报文的最大生存时间通常是 2mls也就是说如果服务端 B 在 2mls 后没收到 客户端A 的确认请求就会重新发送 FIN 请求也就是关闭连接请求。如果客户端A此时没有这个 2mls 的等待时间直接关闭就会出现 A 关闭连接但是 B 一直无法收到 A 的 ACK 出现脏连接也就是一直向A发送FIN请求 脏连接Dirty Connection是指在网络通信中由于某种原因导致连接状态出现异常或错误的情况 ↩︎ 半双工数据的传输的单向的要么是A只能传递数据给B要么是B只能传递数据给A ↩︎ 全双工数据的传输是双向的A既可以传递数据给BB又可以传递数据给A ↩︎
http://www.zqtcl.cn/news/255135/

相关文章:

  • 灵犀科技网站开发佼佼者门户网站建设和检务公开整改
  • php mysql做网站登录免费素材哪里找
  • 休闲食品网站建设网页设计网站实例
  • 微信网站结构58同城北京网站建设
  • thinkcmf做网站快不快南宁网站建设找哪家好
  • 百度网站类型西部数码官网
  • app和网站哪个难做如何做本地网站
  • 怎么做网站导航栏个性化定制产品
  • 如何做企业网站排名优化工业设计公司logo
  • 怎样制作网站教程中国建设银行总部网站
  • 美食网站建设规划书辽宁建设工程信息网中标通知
  • iis搭建网站教程深圳注册公司条件
  • 怎么优化网站关键词排名api接口开发网站开发
  • 如何提升网站的搜索排名秦皇岛黄页大全秦皇岛本地信息网
  • 学生作业网站笔记本可以做网站吗
  • 网站开发毕设开题报告在线设计网站源码
  • 优普南通网站建设申请注册公司流程
  • 越南网站建设河南企业做网站
  • 优化免费网站建设做网站领券收佣金
  • 网站常用图标素材办公用品十大购物网站排名
  • 网络门户网站站长要维护网站
  • 网上有做衣服的网站有哪些做网站推广怎样才能省钱
  • 网站专题设计欣赏找网站公司做网站是怎样的流程
  • 网站上传后如何设置首页制作网络游戏
  • 外贸接单网站排名榜珠宝行网站建设方案
  • 酒店门户网站建设背景门户网站的发布特点
  • 网站营销与推广汕头澄海
  • php和asp做网站哪个好阿里云wordpress配置
  • 东莞响应式网站建设网络营销策略和营销策略的区别
  • 番禺做网站哪家强合肥网页网站制作