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

邯郸做网站公司哪家好百度推广好不好做

邯郸做网站公司哪家好,百度推广好不好做,智能网站建设制作,jsp mysql 开发网站开发文章目录 前言一、TCP三报文握手二、TCP四报文挥手三、TCP保活计时器 前言 TCP通信,通常需要经历三个阶段:三报文握手->发送,接收数据->四报文挥手。 一、TCP三报文握手 三报文握手处于TCP的连接建立阶段,主要解决了以下的…

文章目录

  • 前言
  • 一、TCP三报文握手
  • 二、TCP四报文挥手
  • 三、TCP保活计时器


前言

  TCP通信,通常需要经历三个阶段:三报文握手->发送,接收数据->四报文挥手。
在这里插入图片描述

一、TCP三报文握手

  三报文握手处于TCP的连接建立阶段,主要解决了以下的问题:

  • 使TCP通信的双方知道对方的存在,确认双方的接收与发送能力。
    • 客户端发送 SYN 报文,请求建立连接。
    • 服务器回复 SYN + ACK 报文,表示“我收到了你的请求,也同意建立连接”。
    • 客户端再次回复 ACK 报文,表示“我也收到了你的确认”。
  • 在握手报文中可以携带 TCP 选项字段,允许双方就这些参数进行协商,使得通信性能更优。
    • MSS(最大报文段长度)
    • Window Scale(窗口扩大因子)
    • SACK(选择性确认)
    • Timestamps(时间戳)等
  • 使TCP双方可以对运输的实体资源进行分配和初始化。在三次握手完成后,操作系统会:
    • 在内核中为该连接分配 socket 缓存(接收缓冲区、发送缓冲区)
    • 初始化连接状态(如 TCP 状态机进入 ESTABLISHED 状态)

  三报文握手的流程如下,分为TCP服务TCP客户两个角色:

  1. 最初,两端的TCP进程都处于关闭的状态。TCP连接进程首先创建传输控制块**(服务端和客户都要)**,用于存储TCP连接中的一些重要信息,随后TCP服务进入监听状态。

  2. TCP客户发送连接请求报文段,该请求报文段不能携带数据,TCP客户进入同步已发送状态,连接请求报文段的关键参数:

    • SYN:1
    • seq:设置为初始值x,作为TCP客户进程的初始序号。
      在这里插入图片描述
  3. TCP服务接收到TCP客户的连接请求报文段,并且向TCP客户发送连接请求确认报文段(不能携带数据),TCP服务进入同步已接收状态,连接请求确认报文段的关键参数:

    • SYN:1
    • ACK:1
    • seq:设置为初始值y,作为TCP服务进程的初始序号。
    • ack:x + 1
      在这里插入图片描述
  4. TCP客户接收到TCP服务的请求确认报文后,最后向服务器发送一个普通TCP确认报文段**(可以携带数据,也可以不携带,如果不携带数据,TCP客户进程要发送的下一个数据报文段的seq依旧是x + 1,否则是x + 2)**,TCP客户进入连接已建立状态。普通TCP确认报文段的关键参数:

    • ACK:1
    • seq:x + 1
    • ack:y + 1
      在这里插入图片描述
      在这里插入图片描述
  5. TCP服务在接收到普通TCP确认报文段后,就会进入连接已建立状态。然后双方基于已建立的连接,进行通信。
    在这里插入图片描述

TCP服务和TCP客户,初始都是关闭状态,由TCP客户去主动打开。
当TCP服务创建了传输控制块后,进入监听状态
TCP客户发送第一次握手的消息时,进入同步已发送状态
TCP服务发送第二次握手的消息时,进入同步已接收状态
TCP客户发送第三次握手的消息时,进入连接已建立状态
TCP服务接收到TCP客户的最后一次握手消息,进入连接已建立状态。
三报文握手,TCP客户占两次,TCP服务占一次。

  为什么TCP服务在接收到TCP客户的连接请求报文段,并且向TCP客户发送连接请求确认报文段后**(二次握手),不是立刻进入连接已建立状态,而是需要等待TCP服务再次发送一个普通TCP确认报文段,才会进入连接已建立状态?(三次握手)**
  假设使用二次握手,那么可能会存在如下图的情况。所以TCP服务需要等到TCP客户在接收到连接请求确认报文段后,再发送一个普通TCP确认报文段,才能进入连接已建立状态。
在这里插入图片描述

二、TCP四报文挥手

  四报文挥手处于TCP的连接终止阶段,是由TCP客户发起的。它的流程:

  1. TCP客户主动关闭连接,发送TCP连接释放报文段并进入终止等待1状态,TCP连接释放报文段的关键参数:
    • FIN:1
    • ACK:1
    • seq:u = TCP客户进程传送过的最后一个字节的序号 + 1
    • ack:v = TCP客户进程已收到的最后一个字节的序号 + 1

在这里插入图片描述

  1. TCP服务进程,在接收到TCP客户释放连接的报文后,会发送一个普通的TCP确认报文段,并且自身进入关闭等待状态。普通的TCP确认报文段的关键参数:
    • ACK:1
    • seq:v
    • ack:u + 1,作为对于TCP连接释放报文段的确认

  这时的TCP连接处于半关闭状态,也就是TCP客户已经没有数据需要发送了,但是TCP服务如果有数据需要发送,TCP客户还是需要接收的。

在这里插入图片描述

  1. TCP客户在接收到确认报文段后,进入终止等待2状态。等待TCP服务发送TCP连接释放报文段。(等到TCP服务已经没有数据要发送了)
  2. TCP服务发送TCP连接释放报文段,进入最后确认状态,TCP连接释放报文段的关键参数:
    • FIN:1
    • ACK:1
    • seq:w,因为在半关闭状态下,TCP服务可能又发送了一些数据。
    • ack:u + 1,对收到的TCP客户的连接释放报文的重复确认

在这里插入图片描述

  1. TCP客户在接收到TCP服务的连接释放报文段后,发送TCP普通确认报文段,进入时间等待状态。TCP普通确认报文段的关键参数:
    • ACK:1
    • seq:u + 1,先前TCP客户发送的连接释放报文段,虽然不携带数据,但是要消耗一个序号。
    • ack:w + 1,对收到的TCP服务连接释放报文段的确认。

在这里插入图片描述

6. TCP服务在接收到TCP客户的TCP普通确认报文段后,就进入关闭状态,TCP服务进程撤销传输控制块(是在建立连接时新建的)。TCP客户进程在经过2倍的msl后,才能进入关闭状态,撤销传输控制块。
在这里插入图片描述
  TCP客户在发送最后一个TCP普通确认报文段后,为什么不直接进入关闭状态?如同下图的场景
在这里插入图片描述

  关键点就在于,最后一次TCP客户发送的TCP普通确认报文段,可能存在丢失的问题。如果发生该问题,那么TCP服务的超市重传,TCP客户已经处于关闭状态,是无法进行处理的。
在这里插入图片描述

TCP服务和TCP客户,都是处于连接状态,由TCP客户去主动发起关闭。
TCP客户发送第一次挥手的消息后,进入终止等待1状态。
TCP服务发送第二次挥手的消息后,进入关闭等待状态。
TCP客户接收第二次挥手的消息后,进入终止等待2状态。
TCP服务发送第三次挥手的消息后,进入最后确认状态。
TCP客户接收第三次挥手的消息后,并且发送第四次挥手,进入时间等待状态,。
TCP服务接收第四次挥手的消息后,就进入关闭状态,撤销传输控制块
TCP客户进程在经过2倍的msl后,才能进入关闭状态,撤销传输控制块。
四报文挥手,TCP客户占两次,TCP服务占两次。
客户端的状态流转:终止等待1 -> 终止等待2 -> 时间等待 -> 关闭
服务端的状态流转:关闭等待 -> 最后确认 -> 关闭

三、TCP保活计时器

  如果TCP连接建立后,客户端出现了故障,那么服务端是如何知道客户端发生故障的呢?
  TCP保活计时器正是用于解决这样的问题,**类似于注册中心的心跳机制。**服务端在接收到客户端的数据后,会重新设置并启动保活计时器,假设TCP客户出现问题,超过保活计时器的时限后仍然没有发送数据,则服务端会发送一个TCP探测报文段,每隔75s发送一次,如果发送10次客户端仍然没有响应,TCP服务进程就确认客户出现了故障,就断开连接。
在这里插入图片描述

http://www.hkea.cn/news/257056/

相关文章:

  • 网站开发模式名词外贸谷歌优化
  • 网站素材 下载产品推广渠道
  • 网站后台维护怎么做seo专员工资一般多少
  • 中国网站推广黄页名录微商推广哪家好
  • 哈尔滨网站开发电话电商培训基地
  • 如何用php数据库做网站搜索seo优化托管
  • 中国城乡建设部人力网站首页优化落实疫情防控
  • 做网站到底能不能赚钱网络优化工程师前景
  • 乌镇网站建设标书百度站长工具域名查询
  • 制作公司网站价格腾讯广告代理商加盟
  • 大学生活动网站开发文案苏州seo门户网
  • 阿里云认证网站建设题库seo助理
  • 凤岗网站仿做靠谱seo外包定制
  • xampp安装wordpress说明徐州seo外包
  • 啥网站都能看的浏览器下载百度收录查询工具
  • 福田附近公司做网站建设哪家效益快奶糖 seo 博客
  • 临沂免费自助建站模板品牌整合营销
  • iis做本地视频网站找客户资源的网站
  • 做调查用哪个网站网络推广有多少种方法
  • 开发一个交易网站多少钱在线工具
  • 网站平台怎么建立的软文范例
  • 移动应用开发专业学什么东莞seo软件
  • 做宣传网站的公司手机百度极速版app下载安装
  • 私人可以做慈善网站吗外贸如何推广
  • 网站页面模板页面布局如何成为百度广告代理商
  • 瑞安外贸网站建设曲靖百度推广
  • 先做网站还是服务器销售营销方案100例
  • 用卫生纸做的礼物街网站免费网页空间到哪申请
  • 手游网站做cpc还是cpm广告号厦门网页搜索排名提升
  • 人个做外贸用什么网站好宁波百度seo点击软件