计算机网络(8) Finite State Machines(有限状态机)

一.建立连接(三次握手)

建立连接过程中的状态转换如下:

客户端:

发送SYN                                      CLOSED >>>>>>>>>>>>>>SYN SENT(第一次握手)

接收SYN+ACK发送ACK              SYN SENT>>>>>>>>>>>>>>ESTABLISHED(第三次握手)

服务端:

调用Listen()                             CLOSE>>>>>>>>>>>>>>>>LISTEN

接收SYN发送SYN+ACK               LISTEN>>>>>>>>>>>>>>>>SYN RECEIVED(第二次握手)

收到ACK                                       SYN RECEIVED>>>>>>>>>>>ESTABLISHED

二.关闭连接(四次挥手)

        此阶段共有六个状态,可以分为主动关闭与被动关闭。主动关闭代表第一次主动发送FIN报文的一方的状态。被动关闭指最后关闭的连接通路(因为连接是双向的故而需要按照顺序关闭通道例如先关闭A->B再关闭B->A)。

主动关闭:                                

发送FIN                                       ESTABLISHED>>>>>>>>>>>>>FIN WAIT 1

这时会出现三种情况,1)收到服务端FIN同时关闭2)只收到服务端ACK,此时服务端还可以向客户端传递消息,等待消息传输完毕3)收到服务端FIN+ACK,此时回应ACK

同时关闭                                      FIN WAIT 1>>>>>>>>>>>>CLOSING

收到ACK未收到FIN                     FIN WAIT 1>>>>>>>>>>>>FIN WAIT 2

.....其余状态转换见图中

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/709776.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

“论面向对象的建模及应用”必过范文,突击2024软考高项论文

论文真题 软件系统建模是软件开发中的重要环节,通过构建软件系统模型可以帮助系统开发人员理解系统,抽取业务过程和管理系统的复杂性,也可以方便各类人员之间的交流。软件系统建模是在系统需求分析和系统实现之间架起的一座桥梁,…

android studio 自定义类注释模版

perferences>File and Code Templates>Class 填写: /*** ClassName: ${ClassName}* Description: ${Description}* Author: ${Author}* CreateDate: ${CreateDate}* UpdateUser: ${UpdateUser}* UpdateDate: ${UpdateDate}* UpdateRemark: ${UpdateRemark}* …

重生之 SpringBoot3 入门保姆级学习(19、场景整合 CentOS7 Docker 的安装)

重生之 SpringBoot3 入门保姆级学习(19、场景整合 CentOS7 Docker 的安装) 6、场景整合6.1 Docker 6、场景整合 6.1 Docker 官网 https://docs.docker.com/查看自己的 CentOS配置 cat /etc/os-releaseStep 1: 安装必要的一些系统工具 sudo yum insta…

MySQL损坏,使用data恢复数据

MySQL损坏,重装MySQL使用data文件恢复数据库 1.清空相关注册表(清空安装残留)2.下载合适MySQL版本(与损坏数据库版本相同)3.数据恢复4.Windows server MySQL备份bat5.设置Windows定时执行 # 初始化安装 mysqld -install# 查看数据初始化密码 mysqld --initialize --…

Nginx 版本升级方案

因 nginx发现漏洞、需 Nginx 的版本进行更新,需要用到Nginx服务器提供的平滑升级功能。 一、Nginx安装 Linux服务器 离线安装 nginx_linux 离线安装nginx 依赖包 百度云-CSDN博客 二、查看已安装的 Nginx 版本信息,configure 配置信息 ## nginx 目录 /…

C#——结构体详情

结构体 结构体也被称为结构类型(“structure type”或“struct type”),它是一种可封装数据和相关功能的值类型,在语法上结构体与类(class)非常相似,它们都可以用来封装数据,并且都…

泛微开发修炼之旅--15后端开发连接外部数据源,实现在ecology系统中查询其他异构系统数据库得示例和源码

文章链接:15后端开发连接外部数据源,实现在ecology系统中查询其他异构系统数据库得示例和源码

Stable Diffusion 3 Medium 模型

开源SD3,中型版本,20亿参数,Stable Diffusion 3 Medium,系统内存要求32G,显卡6G。 a female character with long, flowing hair that appears to be made of ethereal, swirling patterns resembling the Northern Li…

使用超声波麦克风阵列预测数控机床刀具磨损

预测性维护是使用传感器数据来推断机器状态,并从这些传感器数据中检测出在故障发生之前存在的缺陷或故障的过程。预测性维护在所有工业领域都是一种日益增长的趋势,包括轴承故障检测、齿轮磨损检测或往复式机器中的活塞磨损等许多其他例子。在预测性维护…

相亲交友APP系统|婚恋交友社交软件|语音聊天平台定制开发

在现代社会,婚恋交友已经成为了人们日常生活中的一项重要任务。为了方便用户进行相亲交友活动,各种相亲交友APP系统和婚恋交友社交软件应运而生。本文将介绍相亲交友APP系统、婚恋交友社交软件的开发以及语音聊天平台的定制开发的相关知识和指导。 一、…

LeetCode | 168.Excel表列名称

这道题一开始以为是简单的进制转换问题,用的以往的思路,对于一般性的进制转换题目,只需要不断地对 columnNumber 进行 % 运算取得最后一位,然后对 columnNumber 进行 / 运算,将已经取得的位数去掉,直到 col…

命令模式:灯开灯关

文章目录 UML类图Command接口Invoker.javaLight.javaOnLightCommand.javaTest.java运行结果位置 UML类图 Command接口 这个你会,只有一个方法,并且接口里面是抽象方法 package mlms; /*- 这个你会,只有一个方法,并且接口里面是抽…

2024.6.14 刷题总结

2024.6.14 **每日一题** 2786.访问数组中的位置使分数最大,看到这题就想到动态规划的思路,遍历数组,每次选择移动该元素时能获得到的最大值,分别考虑最后一个的元素为奇数/偶数的最大值,用长度为2的数组来储存这两个值…

一文读懂数字化转型三部曲:信息化-数字化-数智化

言简意赅,数字化就是把物理实体、业务流程和信息数据转换为数字形式,比如原本公司的账都记在纸质账本上,堆在仓库里,通过“数字化”,这些账本就被存入了线上的仓库里。而数智化则更加注重对数据的分析和利用&#xff0…

深入解析Prometheus:强大的开源监控与告警系统

目录 引言 一、运维监控平台的设计思路 (一)设计思路 1.数据收集模块 2.数据提取模块 3.监控告警模块 (二)监控平台层级 二、Prometheus简介 (一)基本介绍 (二)核心特征 …

windows下open webui+ollama+sd webui

原文:https://wangguo.site/Blog/2024/Q2/2024-06-14/ 说明:安装使用环境是在Windows下 1、给ollama一个好看的交互界面(open webui) 1.1、ollama安装 安装:在ollama官网下载windows版本进行安装 模型列表&#xff1…

vue2+echarts实现简易的2d地图效果

背景 公司的一个可视化数据大屏里面,有一个使用echarts实现的2d地图。不是我开发的,在此记录一下实现过程以及一些扩展解构。应该是从哪个航空航线图改动了一下,效果看起来还是可以的。 效果预览 版本 vue版本使用的是"^2.6.12"…

SringBoot 如何使用HTTPS请求及Nginx配置Https

SringBoot 如何使用HTTPS请求及Nginx配置Https SringBoot 如何使用HTTPS请求生成证书导入证书及配制创建配置类将pfx转成.key和.pem Nginx 安装SSL依赖./configure 安装依赖编译安装完openssl后报了新错 Nginx配置 SringBoot 如何使用HTTPS请求 生成证书 由于业务数据在传输过…

Polkadot <> Kusama 桥:打造无信任互操作性的开创性范例

原文&#xff1a;https://www.parity.io/blog/trustless-interoperability 作者&#xff1a;Adrian Catangiu&#xff5c;Rust 区块链核心工程师&#xff0c;Parity Technologies 编译&#xff1a;OneBlock Polkadot <> Kusama 桥是无信任互操作性的开创性范例。本文深…

前端面试项目细节重难点(已工作|做分享)(九)

面试官&#xff1a;请你讲讲你在工作中如何开发一个新需求&#xff0c;你的整个开发过程是什么样的&#xff1f; 答&#xff1a;仔细想想&#xff0c;我开发新需求的过程如下&#xff1a; &#xff08;1&#xff09;第一步&#xff1a;理解需求文档&#xff1a; 首先&#x…