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

TCP长连接短链接

1、短连接

短连接是指通讯双方有数据交互时,就建立一个连接,数据发送完成后,则断开此连接,即每次连接只完成一项业务的发送。

2、长连接

长连接是指在一个连接上可以连续发送多个数据包,在连接保持期间,如果没有数据包发送,需要双方发链路检测包,多用于操作频繁,点对点的通讯,而且连接数不能太多情况。

3、长连接保活探测

长连接下,可能长时间无数据通信,为了避免通信另一端出现掉线,挂机等问题,需要通过保活探测确认对方通信正常。

3.1、TCP Keepalive工作原理

当一个 TCP 连接建立之后,启用 TCP Keepalive 的一端便会启动一个计时器,当这个计时器数值到达 0 之后(也就是经过tcp_keep-alive_time时间后),一个 TCP 探测包便会被发出。这个 TCP 探测包是一个纯 ACK 包(规范建议,不应该包含任何数据,但也可以包含1个无意义的字节,比如0x0。),其 Seq号 与上一个包是重复的,所以其实探测保活报文不在窗口控制范围内。

3.2、三个重要的参数:

tcp_keepalive_time,在TCP保活打开的情况下,最后一次数据交换到TCP发送第一个保活探测包的间隔,即允许的持续空闲时长,或者说每次正常发送心跳的周期,默认值为7200s(2h)。
tcp_keepalive_probes 在tcp_keepalive_time之后,没有接收到对方确认,继续发送保活探测包次数,默认值为9(次)
tcp_keepalive_intvl,在tcp_keepalive_time之后,没有接收到对方确认,继续发送保活探测包的发送频率,默认值为75s。

文献参考:

什么是长连接-CSDN博客

相关文章:

TCP长连接短链接

1、短连接 短连接是指通讯双方有数据交互时,就建立一个连接,数据发送完成后,则断开此连接,即每次连接只完成一项业务的发送。 2、长连接 长连接是指在一个连接上可以连续发送多个数据包,在连接保持期间,…...

代码随想录35期Day33-Java

Day33题目 LeetCode1005:K 次取反后最大化的数组和 核心思想:每次取反都取反最小的。如果有负数,则一直取反最小的负数,如果没有就取反正数。取反次数只需要看是奇数还是偶数。偶数则正数序列不变,奇数则最小的变成负数 class …...

PMP考试没过怎么办?如何补考?(附复核流程)

最近刷小红书,看很多人都在晒PMP通过的成绩截图,一方面为大家开心,终于拿到了期盼已久的PMP,但同时也有宝子发挥失常没通过考试,所以这期针对没考过的宝子们,出一期复盘文章,无论结果如何&#…...

自主实现Telnet流量抓取

自主实现Telnet流量抓取 根据测试需求,需要抓取Telnet流量包,使用wireshark Python(socket、telnetlib库)实现 实现代码 主要此处有坑, 根据协议规则,wireshark 默认端口为23 的是Telnet协议&#xff0…...

以瓦片地图为底图添加图表,保留拖拽功能

1、问题1 在地图上覆盖一个容器层,容器层上的内容显示不出来如何解决? 原因:堆叠指数问题 解决方案:绝对定位后,提升其z-index值即可 2、问题2 在地图上覆盖一个容器层,影响了地图拖拽,如何…...

Windows cmd bat之特殊符号及变量

cmd 常用变量 bat批处理常用命令 %1~%9表示拖入文件(%0以外的输入文件),%0表示批处理文件本身 %0~%1字母意思基本相同,不区分大小写 ::打印当前窗口地址 echo “%cd%” %0 获取当前文件路径 %~d0 …...

用python写个控制MicroSIP自动拨号和定时呼叫功能(可用在小型酒店叫醒服务)

首先直接上结果吧,MicroSIP 助手,控制MicroSIP自动拨号,定时呼叫的非常实用小工具! 在使用MicroSIP 助手之前,我们需要了解MicroSIP是什么,MicroSIP是一个SIP拨号软件,支持注册任意SIP平台实现拨…...

axios 取消token 模糊搜索

import axios from ‘axios’; // 创建一个取消令牌源(cancel token source) const CancelToken axios.CancelToken; const source CancelToken.source(); // 下拉框搜索函数 function search() { // 获取输入值 const inputValue document.getElem…...

【OTS4WORD】“精简并行过程”——容易剪裁的“软件过程改进方法和规范”模板

附件资源是作者针对SPP采用模板重新格式化打包制作,原模板具有格式不受控的缺点,导致文档编制过程中引起不必要的排版麻烦。 附件资源适用于希望改进工作流程,适配CMMI质量管理体系的公司或个人使用,质量改进管理组织、项目管理组…...

22 | MySQL有哪些“饮鸩止渴”提高性能的方法?

短连接风暴 第一种方法:先处理掉那些占着连接但是不工作的线程。 kil id 第二种方法:减少连接过程的消耗。 让数据库跳过权限验证阶段,重启数据库,并使用–skip-grant-tables 参数启动。 慢查询性能问题 索引没有设计好 创建索引都支持 Online DDL 了,对于那种高峰期数…...

【AIGC调研系列】VILA-1.5版本的视频理解功能如何

VILA-1.5版本的视频理解功能表现出色,具有显著的突破。这一版本不仅增强了视频理解能力,还提供了四种不同规模的模型供用户选择,以适应不同的应用需求和计算资源限制[1][2][3]。此外,VILA-1.5支持在笔记本等边缘设备上部署&#x…...

如何解决WordPress邮件发送和接收问题

在使用WordPress网站时,用户有时可能会遇到邮件接收或发送失败的问题。这种问题不仅影响网站的正常运营,还可能影响用户体验。以下是一篇详细的解决方案文章,帮助您系统地诊断和解决WordPress不发送或收不到邮件的问题。 引言 WordPress作为…...

MySQL学习笔记10——日志

日志 一、日志1、通用查询日志(1)开启通用查询日志(2)查看通用查询日志(3)删除通用查询日志 2、慢查询日志3、错误日志4、二进制日志(1)查看二进制日志(2)刷新…...

OpenSPG docker 安装教程

文章目录 前言自述 一、OpenSPG1.介绍 二、安装步骤1.安装服务端2.客户端部署 前言 自述 我最近是想结合chatglm3-6b和知识图谱做一个垂直领域的技术规范的问答系统,过程中也遇到了很多困难,在模型微调上,在数据集收集整理上,在知…...

TypeScript学习日志-第十六天(泛型)

泛型 一、函数泛型 当我们有多个函数是一样的不同的的函数的类型不一样时,我们可以使用泛型,这样就可以省去很多重复的书写,例如: 这样的两个函数时一样的,就是类型不一样,我们就可以使用泛型这样写&…...

Flutter路由跳转的两种方式

1.基本路由跳转:文件引入在你要跳转的页面引入 ElevatedButton(onPressed: () {Navigator.of(context).push(MaterialPageRoute(builder: (BuildContext context) {return const NewsPage(arguments: {"title": "基本路由新闻页面传值","a…...

Hydroxyethyl-PEG-Hydroxyethyl,Hy-PEG-Hy是一种由聚乙二醇(PEG)和二酰肼单元构成的嵌段共聚物

【试剂详情】 英文名称 Hydroxyethyl-PEG-Hydroxyethyl,Hy-PEG-Hy 中文名称 聚乙二醇二酰肼,酰肼 PEG 酰肼 外观性状 由分子量决定,固体或者液体。 分子量 0.4k,0.6k,1k,2k,3.4k&#xf…...

链表面试题目:反转一个单链表的两种方法(解析+代码)

我们继续来看一下单链表的题目和代码吧,把学习的知识运用到实际中,大家加油 先看OJ题目 OJ题目(反转单链表) 双指针法 1.创建两个指针,为pre curr,curr指向头结点,curr用来遍历链表 2.curr指向…...

[C++][数据结构]AVL树插入的模拟实现

前言 紧接着上一篇文章,我们来模拟实现一下set的底层结构 引入 对于BSTree,虽然可以缩短查找的效率,但如果数据有序它将退化为单支树 我们可以用AVL树来解决这个问题。 概念 AVL树: 它的每个结点的左右子树高度之差的绝对值…...

力扣每日一题108:将有序数组转换为二叉搜索树

题目 简单 给你一个整数数组 nums ,其中元素已经按 升序 排列,请你将其转换为一棵 平衡 二叉搜索树。 示例 1: 输入:nums [-10,-3,0,5,9] 输出:[0,-3,9,-10,null,5] 解释:[0,-10,5,null,-3,null,9] 也…...

webMAN-MOD实战指南:构建PS3主机扩展服务系统

webMAN-MOD实战指南:构建PS3主机扩展服务系统 【免费下载链接】webMAN-MOD Extended services for PS3 console (web server, ftp server, netiso, ntfs, ps3mapi, etc.) 项目地址: https://gitcode.com/gh_mirrors/we/webMAN-MOD 当你在PS3主机上尝试加载网…...

OWL ADVENTURE Java面试题实战:手写一个简单的图像加载器

OWL ADVENTURE Java面试题实战:手写一个简单的图像加载器 最近在准备Java面试的朋友,是不是经常被问到IO、多线程这些基础?光背八股文总觉得心里没底。今天咱们换个玩法,不搞虚的,直接动手写一个能用在真实项目里的东…...

别再只会发文本了!SpringBoot整合钉钉机器人,这5种高级消息模板让你的通知更专业

SpringBoot与钉钉机器人:五种高级消息模板实战指南 如果你还在用单调的文本消息推送系统通知,那么你的团队协作工具可能只发挥了50%的潜力。钉钉机器人提供的富文本消息类型,能够将枯燥的系统通知转化为直观、交互式的信息卡片,显…...

Granite TimeSeries FlowState R1电商销量预测实战:Vue前端可视化大屏

Granite TimeSeries FlowState R1电商销量预测实战:Vue前端可视化大屏 最近和几个做电商的朋友聊天,他们都在头疼同一个问题:备货。备多了怕压库存,备少了又怕错过销售高峰,眼睁睁看着流量来了却没货可发。传统的经验…...

多模态数据挖掘前沿:生物医学与情感分析领域论文深度解析

多模态数据挖掘前沿:生物医学与情感分析领域论文深度解析 在人工智能与大数据技术飞速发展的当下,多模态数据因能更全面、立体地刻画研究对象,已成为科研领域的核心研究方向。本文将深度解析两篇聚焦多模态数据挖掘的重磅论文——《多模态生物…...

OpenClaw成本优化方案:自建Qwen3-VL:30B替代高价多模态API

OpenClaw成本优化方案:自建Qwen3-VL:30B替代高价多模态API 1. 为什么需要关注OpenClaw的成本问题 第一次用OpenClaw完成多模态任务时,我被账单吓了一跳。当时需要处理200张产品图片的分类和描述生成,调用某商业多模态API后,费用…...

手把手教你用Swaks和Gophish绕过SPF,搭建自己的邮件钓鱼测试环境(附避坑指南)

企业级邮件安全测试实战:从SPF绕过到钓鱼环境搭建 邮件安全测试已成为企业安全防护体系中不可或缺的一环。据统计,超过90%的网络攻击始于钓鱼邮件,而其中近40%的成功攻击源于SPF配置不当或完全缺失。本文将系统性地介绍如何构建一个完整的邮件…...

C# : 引用类型都存在堆上吗

不完全是,这里要精确区分:引用类型的实例大多数存在堆上,但引用本身不一定在堆上。我们拆开来说:引用类型本身 vs 引用变量对象实例(类的实例)绝大多数情况下分配在 堆上由 垃圾回收器 管理生命周期引用变量…...

SVPWM/AZSPWM的simulink仿真 AZSPWM(Advanced Zero Se...

SVPWM/AZSPWM的simulink仿真 AZSPWM(Advanced Zero Sequence Pulse Width Modulation,先进零序脉宽调制)是一种改进的脉宽调制技术,主要应用于三相逆变器中,通过引入零序分量来优化输出电压的波形和性能。 AZSPWM的目标…...

G-Helper:华硕笔记本电池健康管理的终极轻量化解决方案

G-Helper:华硕笔记本电池健康管理的终极轻量化解决方案 【免费下载链接】g-helper Lightweight Armoury Crate alternative for Asus laptops. Control tool for ROG Zephyrus G14, G15, G16, M16, Flow X13, Flow X16, TUF, Strix, Scar and other models 项目地…...