tcp三次握手

2023-10-26

TCP/IP协议中,TCP协议提供可靠的连接服务,采用三次握手建立一个连接。

 第一次握手:建立连接时,客户端发送syn包(syn=j)到服务器,并进入SYN_SEND状态,等待服务器确认;

 第二次握手:服务器收到syn包,必须确认客户的SYN(ack=j+1),同时自己也发送一个SYN包(syn=k),即SYN+ACK包,此时服务器进入SYN_RECV状态;

 第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=k+1),此包发送完毕,客户端和服务器进入ESTABLISHED状态,完成三次握手。 完成三次握手,客户端与服务器开始传送数据,在上述过程中,还有一些重要的概念: 未连接队列:


在三次握手协议中,服务器维护一个未连接队列,

该队列为每个客户端的SYN包(syn=j)开设一个条目,该条目表明服务器已收到SYN包,并向客户发出确认,正在等待客户的确认包。这些条目所标识的连接在服务器处于Syn_RECV状态,当服务器收到客户的确认包时,删除该条目,服务器进入ESTABLISHED状态。 Backlog参数:表示未连接队列的最大容纳数目。 SYN-ACK 重传次数 服务器发送完SYN-ACK包,如果未收到客户确认包,服务器进行首次重传,等待一段时间仍未收到客户确认包,进行第二次重传,如果重传次数超过系统规定的最大重传次数,系统将该连接信息从半连接队列中删除。注意,每次重传等待的时间不一定相同。 半连接存活时间:是指半连接队列的条目存活的最长时间,也即服务从收到SYN包到确认这个报文无效的最长时间,该时间值是所有重传请求包的最长等待时间总和。有时我们也称半连接存活时间为Timeout时间、SYN_RECV存活时间。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

tcp三次握手 的相关文章

  • 计算机原理UART,一文看懂串口服务器的原理及用法

    串口服务器 xff0c 也被成为串口到以太网转换器 串口设备服务器 它是终端服务器通过TCP IP服务器的串口进行数据传输 xff0c 然而所有这些名称都是相同类型的设备 xff0c 基本是将串行的RS232 RS485或RS422接口链接
  • 计算机组成原理知识点梳理(一)

    注 所学教材为 计算机组成原理 第二版 唐朔飞 编著 本次梳理涵盖内容为 第一章 计算机系统概论 1 1 计算机系统简介 1 2 计算机的基本组成 参考内容以及图片来源为书本和csdn博文 第一章 计算机系统概论 1 1 计算机系统简介 计
  • GCC编译过程,了解编译原理

    说明 这篇文件是在读 程序员的自我修养 链接 装载与库 的一点笔记 权当时学习的记录 1 GCC编译过程分解 以HelloWorld程序为例 2 预编译 规则 命令 gcc E XXX c o XXX i 3 编译 词法分析 语法分析 语义
  • tcp三次握手

    在TCP IP协议中 TCP协议提供可靠的连接服务 采用三次握手建立一个连接 第一次握手 建立连接时 客户端发送syn包 syn j 到服务器 并进入SYN SEND状态 等待服务器确认 第二次握手 服务器收到syn包 必须确认客户的SYN
  • TCP、UDP、HTTP、SOCKET之间的区别

    IP 网络层协议 TCP和UDP 传输层协议 HTTP 应用层协议 SOCKET TCP IP网络的API TCP IP代表传输控制协议 网际协议 指的是一系列协议 TCP和UDP使用IP协议从一个网络传送数据包到另一个网络 把IP想像成一
  • 计算机原理-数据

    数据 二进制 十进制 人类use 十六进制 2 4 16 是权 1011 011 2 3 0 2 2 2 1 2 0 0 2 1 1 2 2 1 2 3 8 0 2 1 0 0 25 0 125 27 375 七进制转十进制 权不一样 60
  • 移动文件命令

    echo off set n 0 checkfile if not exist E agent jar agent n jar move E datacloudWorkspace agent javarasp 1 0 target agen
  • x86 细探:为什么要把迁移到 64 位 linux 称之为 x86 迁移

    一 引言 我们部门最近在把有些项目从原来的 AIX 平台迁移到 Linux 平台上 老大把这个项目自然而然的命名为了 x86 迁移 今天的我仔细思忖着这个名字 突然有些疑惑 x86 不是 32 位的吗 而我们迁移的目标系统是 64 位的 为
  • 计算机原理---127.0.0.1是什么

    127 0 0 1究竟什么意思 简介 连接上因特网的每一台计算机都会有一个IP地址 在linux下可以使用命令ifconfig来查看本机的ip地址 windows为ipconfig 而127 0 0 1被称为本地环回地址 loopback
  • 机器数——源码、反码、补码

    机器数 源码 反码 补码 基本定义 1 机器数是将符号 数字化 的数 是数字在计算机中的二进制表示形式 表示一个机器数 应该考虑以下三个因素 1 机器数的范围 2 机器数的符号 3 机器数中小数点的位置 我们这里只讨论二进制整数在计算机中的
  • SISD、MIMD、SIMD、MISD计算机的体系结构的Flynn分类法

    1 计算平台介绍 Flynn于1972年提出了计算平台的Flynn分类法 主要根据指令流和数据流来分类 共分为四种类型的计算平台 如下图所示 单指令流单数据流机器 SISD SISD机器是一种传统的串行计算机 它的硬件不支持任何形式的并行计
  • 原码反码补码:计算机整数的运算为啥用补码?运算过程举例理解

    原码 反码 补码基本知识 正整数 原码 反码 补码均是原码本身 负整数 反码 原码按位取反 符号位除外 补码 反码 1 例如 byte 1 原码 0000 0001 反码 0000 0001 补码 0000 0001 byte 3 原码 1
  • GET和POST之间的主要区别

    1 GET是从服务器上获取数据 POST是向服务器传送数据 2 在客户端 GET方式在通过URL提交数据 数据在URL中可以看到 POST方式 数据放置在HTML HEADER内提交 3 对于GET方式 服务器端用Request Query
  • 计算机原理-结构组成

    cpu 中央处理器 程序控制 操作控制 时间控制 数据处理 运算器 算数逻辑单元ALU 逻辑运行 累加计算器AC 为alu提供工作区 数据缓存寄存器 DR 暂存指令和数据 状态条件寄存器PSW 保存指令条件码 控制器 程序计数器PC 指令计
  • 一些基本引言的知识点

    文章目录 一些基本引言的知识点 系统调优你所不知道的TIME WAIT和CLOSE WAIT 一些基本引言的知识点 哥在 PHP7 中 把 HashTable 结构体从 72 字节压缩到了 56 字节 表 看起来不 的优化 实际上是成倍的性
  • 内存管理之一__align字节对齐

    转 http www cnblogs com ye moooooo p 4601189 html 一 什么是字节对齐 为什么要对齐 现代计算机中内存空间都是按照byte划分的 从理论上讲似乎对任何类型的变量的访问可以从任何地址开始 但实际情
  • 【学习笔记】数据存储的顺序与对齐_计算机原理

    学习笔记 数据存储的顺序与对齐 计算机原理 开了个新坑 做一个计算机原理的读书笔记 自用 仅做分享 数据存储的顺序 介绍了机器端模式 数据存储的对齐 这里介绍的是 数据结构的存储方式是根据给定的字节和自己本身的字节做对齐的 比如 4 4 4
  • 文件传输协议FTP与TCP/IP协议之间有什么关系

    TCP IP协议是目前网络所采用的一种框架协议 包括五层 应用层 传输层 网络层 链路层 物理层 FTP协议是TCP IP协议的一部分 严格意义上来说是应用层协议 FTP是一种应用程序 基于TCP IP协议 它定义了本地登录户机与远程服务器
  • 计算机数据的存储-编码(补码,移码)

    在计算机系统中 补码是最重要的编码 数值一律用补码来表示 存储 主要原因 使用补码 可以将符号位和其它位统一处理 同时 减法也可按加法来处理 另外 两个用补 码表示的数相加时 如果最高位 符号位 有进位 则进位被舍弃 2 补码与原码的转换过
  • 各种协议

    百度百科http baike baidu com view 16603 htm fromtitle E8 AE A1 E7 AE 97 E6 9C BA E7 BD 91 E7 BB 9C E5 8D 8F E8 AE AE fromid

随机推荐

  • LDO和DCDC电路的概述和区别

    一 什么是DCDC DCDC的意思是直流变 到 直流 不同直流电源值的转换 只要符合这个定义都可以叫DCDC转换器 常见的DCDC电路有buck boost buck boost分别是降压 升压 降压升压电路 二 什么是LDO LDO 是一
  • Linux驱动——设备树

    在对总线设备驱动进行详细说明时可以看出 虽然总线设备驱动可以实现驱动和设备分离 但是总线设备驱动引发另外的一个问题就是在相同的芯片不同的开发板上 当外设资源不同时需要在不同的设备文件中去定义引脚 这样就导致开发板中保留大量设备文件 为了解决
  • 多元任务,高额奖金!首届“开放原子开源大赛”等你参与!

    人类有各种交流方式 包括语言 文字 音乐 影像等 有的贴近生活 有的充满艺术感 然而 在人工智能时代 代码作为一种特殊的交流形式愈发重要 它使得人与人 人与机器之间能够高效便捷地沟通 从而为科技发展注入活力 开源 则是让这种交流变得更加丰富
  • Android ADB命令大全(通过ADB命令查看wifi密码、MAC地址、设备信息、操作文件、查看文件、日志信息、卸载、启动和安装APK等)

    ADB很强大 记住一些ADB命令有助于提高工作效率 获取序列号 adb get serialno 查看连接计算机的设备 adb devices 重启机器 adb reboot 重启到bootloader 即刷机模式 adb reboot b
  • URL、URI和URN之间的区别

  • 程序员应该掌握的 10 个搜索技巧

    在今天 用户可以通过搜索引擎轻松找出自己想要的信息 但还是难以避免结果不尽如人意的情况 实际上 用户仅需掌握几个常用技巧即可轻松化解这种尴尬 下面介绍 10 个在进行 Google 搜索时可以使用的便捷技巧 其他搜索引擎也支持这 10 种技
  • C++外观模式

    外观模式 1 外观模式简介及应用场景 外观者模式其实就是相当于对一组子系统功能的组合 对外提供统一的简单接口的模式 当我们在实际开发中 一般情况下是一个单独的子系统对应的是一个独立的功能模块 但是随着业务功能的不断增加 对应子系统的迭代必然
  • CentOS8 服务篇4:FTP文件传输服务搭建与配置

    FTP 文件传输服务三种配置模式 匿名模式 本地用户模式 虚拟用户模式 安装ftp服务 安装完后再根据不同模式进行配置 root localhost yum repos d yum install y vsftpd ftp vsftpd是搭
  • Qt中qss样式表

    qss样式表是用于设置QT程序UI界面中控件的背景图片 大小 字体颜色 字体类型 按钮状态变化等属性 美化UI界面 实现界面和程序的分离 可以快速切换皮肤 1 基本语法 selector attribute value 说明 selecto
  • Java生成exe执行文件

    一 准备工作 下载可将jar包转换的工具EXE4J工具 下载地址为 https www ej technologies com download exe4j files 下载完成 直接点击下一步安装 直到安装完成 导出项目jar包 按以下步
  • javaFile类知识点总结

    1 File类 Java io File类是文件和目录路径名的抽象表示 主要用于文件和目录的创建 查找 删除等操作 File中的静态成员变量 pathSeparator与系统有关的路径分隔符 File pathSeparator 代表路径分
  • android系统删除apk的广播,研究androidapk安装卸载等产生的系统广播

    想更加清楚的了解 android 系统在安装 卸载时产生的系统广播 于是写了一个 demo 来做监听 BroadReceiver 配置如下 html 这里有一点要注意 需配置 否则收不到广播 1 当你第一次安装某个应用的时候 java 10
  • 干货

    SpringCloud的从整体架构上看 相对来说是完整的 庞大的 它不仅仅是一个基础性架构工具 它为微服务架构提供了一个 全家桶 的套餐 每一个模块关注各自的职能 并且能够很好地配合与协作 能够帮助入门者快速搭建起一套微服务架构的服务 内容
  • MyBatis之使用JSONObject代替JavaBean优雅返回多表查询结果

    项目中需要返回多个表的查询结果 比如user表中的用户信息和user个人的所在班的班级信息 目前我们有user实体类和class实体类 一般情况下如果是单表查询 比如查询user信息 那么查询的返回值就是一个user对象或一个user对象列
  • Qt_Qt报错multiple target patterns

    去看看pro文件中的路径是否有问题
  • ARM7的三级流水线过程

    看到汇编中很多关于程序返回与中断返回时处理地址都很特别 仔细想想原来是流水线作用的效果 所以 决定总结学习下ARM流水线 ARM7处理器采用3级流水线来增加处理器指令流的速度 能提供0 9MIPS MHz的指令处理速度 PS MIPS Mi
  • Android RxJava第一弹之原理详解、使用详解、常用场景(基于Rxjava2.0)

    Android RxJava第一弹之原理详解 使用详解 常用场景 基于Rxjava2 0 Android RxJava第二弹之RxJava封装库 RxJava Animation RxJava Glide Android RxJava第三弹
  • C语言数据结构复杂度

    文章目录 前言 什么是数据结构 什么是算法 算法效率 算法的复杂度 时间复杂度 时间复杂度的概念 大O的渐进表示法 常见时间复杂度计算举例 空间复杂度 常见复杂度对比 前言 从这篇博客开始为数据结构与算法的相关内容 数据结构比较难 博主建议
  • Leecode初级算法字符串——验证回文串

    给定一个字符串 验证它是否是回文串 只考虑字母和数字字符 可以忽略字母的大小写 说明 本题中 我们将空字符串定义为有效的回文串 示例 1 输入 A man a plan a canal Panama 输出 true 解释 amanaplan
  • tcp三次握手

    在TCP IP协议中 TCP协议提供可靠的连接服务 采用三次握手建立一个连接 第一次握手 建立连接时 客户端发送syn包 syn j 到服务器 并进入SYN SEND状态 等待服务器确认 第二次握手 服务器收到syn包 必须确认客户的SYN