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

TCP、UDP

TCP和UDP的区别

是否面向连接:UDP 在传送数据之前不需要先建立连接。而 TCP 提供面向连接的服务,在传送数据之前必须先建立连接,数据传送结束后要释放连接

是否是可靠传输:远地主机在收到 UDP 报文后,不需要给出任何确认,并且不保证数据不丢失不保证是否顺序到达。TCP 提供可靠的传输服务,TCP 在传递数据之前,会有三次握手来建立连接,而且在数据传递时,有确认、窗口、重传、拥塞控制机制。通过 TCP 连接传输的数据,无差错、不丢失、不重复、并且按序到达

是否有状态:有状态说的是 TCP 会去记录自己发送消息的状态比如消息是否发送了、是否被接收了等等。为此 ,TCP 需要维持复杂的连接状态表。而 UDP 是无状态服务,只管发送不管后果。

传输效率:由于使用 TCP 进行传输的时候多了连接、确认、重传等机制,所以 TCP 的传输效率要比 UDP 低很多。

传输形式:TCP 是面向字节流的,UDP 是面向报文的。

首部开销:TCP 首部开销(20 ~ 60 字节)比 UDP 首部开销(8 字节)要大。

TCP和UDP的使用场景

UDP 一般用于即时通信,比如:语音、 视频、直播等等。这些场景对传输数据的准确性要求不是特别高,比如你看视频即使少个一两帧,实际给人的感觉区别也不大。

TCP 用于对传输准确性要求特别高的场景,比如文件传输、发送和接收邮件、远程登录等等

TCP的三次握手和四次挥手

三次握手过程中:一共涉及到三个包的传输。

如果第一次包没有成功发送到,即C给S的,那么C会超时重传,直到收到S的确认。

如果第二次包没有成功发送到,即S给C的确认,那么S会超时重传,直到收到S的确认。

如果第三次包没有成功发送到,即C给S的确认,分为三种情况:
①如果此时双方都没有数据发送,那么S会认为自己的消息没有传输到,会超时重传,直到收到C的确认。
②如果此时正好C要开始发数据了(因为在C的角度,三次握手已经建立好了),那么S收到C的data+ACK,自然会切换为established状态,并接受C的data。
③如果S有数据发送,数据发送不了,会一直周期性超时重传SYN + ACK,直到收到A的确认才可以发送数据。

 注意,第三次传输如果丢包的话,只涉及S的超时重传,不涉及C!!!

TCP的超时重传机制主要是针对数据传输的,而不是专门为了确认报文。在TCP协议中,当一个确认(ACK)报文单独发送时(即不携带任何数据),如果这个ACK报文丢失,发送方不会等待一个超时时间然后重传这个ACK。

//TODO 四次挥手

相关文章:

TCP、UDP

TCP和UDP的区别 是否面向连接:UDP 在传送数据之前不需要先建立连接。而 TCP 提供面向连接的服务,在传送数据之前必须先建立连接,数据传送结束后要释放连接。 是否是可靠传输:远地主机在收到 UDP 报文后,不需要给出任…...

聊聊暖通空调系统的优化控制方法

目录 暖通空调系统的优化控制方法✈️part1 初版回归网络建模✈️part2 更新的回归网络✈️ 聊聊暖通空调系统的优化控制方法 这篇文章简单分享一下暖通空调(HVAC)领域常常提到的”优化控制“这一概念指的是什么,它控制的是哪些参数&#…...

2024年合肥市职业院校技能大赛(中职组)赛 网络安任务书样题

2024年合肥市职业院校技能大赛--中职组赛 网络安任务书样题 一、竞赛项目简介:二、竞赛注意事项模块A: 理论技能与职业素养模块B: 网络安全事件响应、数字取证调查和应用安全任务一:应急响应任务二:操作系统取证任务三:网络数据包分析任务四:代码审计 模块C:CTF 夺旗…...

制造企业如何提升项目管理效率?惠科股份选择奥博思PowerProject项目管理系统

全球知名的显示方案综合服务商 - 惠科股份有限公司与北京奥博思达成合作,基于奥博思 PowerProject 搭建企业级项目管理平台。满足惠科多产品多业务领域的项目全周期管理。助力企业在技术研发、产品创新等方面继续取得行业领先优势。 同时,PowerProject …...

mTLS(Mutual TLS)即双向传输层安全,是一种安全通信协议,用于在客户端和服务器之间建立双向的身份验证和加密通道。

mTLS(Mutual TLS)即双向传输层安全,是一种安全通信协议,用于在客户端和服务器之间建立双向的身份验证和加密通道。在传统的TLS(Transport Layer Security)中,客户端通常只会验证服务器的身份&am…...

HUAWEI WATCH GT 系列安装第三方应用

文章目录 适用机型概述官方文档从源码构建 hap 文件和对源码签名下载和安装DevEco Studio下载和安装首次启动推荐:设置IDE推荐的兼容版本环境(可选)安装并启用中文菜单插件 使用DevEco Studio打开项目并进行构建构建问题解决一、生成密钥和证…...

Html jquery下拉select美化插件——selectFilter.js

1. Html jquery下拉select美化插件——selectFilter.js jQuery是一个广泛使用的JavaScript库,它简化了DOM操作、事件处理、动画以及Ajax交互,使得开发者能更高效地构建交互式网页。在本案例中,jquery.selectlist.js插件正是基于jQuery构建的&…...

使用ESP8266扫描WiFi列表

一、简介 准备用基于esp8266的nodemcu开发板做一个天气时钟。目前只实现了第一阶段任务的第一点要求。使用arduino编程,在基于esp8266的nodemcu开发板上实现开机自动连接wifi。 这里记录一下使用ESP8266扫描WiFi列表的方法。还需要研究怎么把列表显示在网页上&…...

Java对象访问机制:句柄访问与直接指针访问

在Java虚拟机(JVM)中,对象的访问方式是一个关键的设计选择,它影响着程序的性能和内存管理。JVM规范中只规定了对象引用(reference)必须指向对象,但并没有定义这个引用应该如何定位和访问堆中对象…...

基于SpringBoot实现QQ邮箱发送短信功能 | 免费短信服务

开发学习过程中有个短信发送功能,阿里云腾讯云等等都要money,听说qq邮箱可以实现免费发送邮箱的功能(短信发送的平替),就用这个来实现!!!【找了好多好多方法才成功的啊啊啊啊&#x…...

【MySQL】聚合函数、group by子句

目录 聚合函数 count([distinct] column) sum([distinct] column) avg([distinct] column) max([distinct] column) min([distinct] column) group by子句 1.如何显示每个部门的平均薪资和最高薪资 2.显示每个部门每种岗位的平均薪资和最低薪资 3.显示平均工资低于200…...

详细分析SpringMvc中HandlerInterceptor拦截器的基本知识(附Demo)

目录 前言1. 基本知识2. Demo3. 实战解析 前言 对于Java的基本知识推荐阅读: java框架 零基础从入门到精通的学习路线 附开源项目面经等(超全)【Java项目】实战CRUD的功能整理(持续更新) 1. 基本知识 HandlerInter…...

阳光能源嵌入式面试及参考答案(2万字长文)

管道能够承载的最大传输数据量是多少? 在嵌入式系统中,管道能够承载的最大传输数据量取决于多个因素。 首先,管道的容量受到操作系统的限制。不同的操作系统对管道的大小有不同的规定。一般来说,管道的容量通常是有限的,并且在不同的操作系统版本和配置下可能会有所不同。…...

P10483 小猫爬山

1. #include<bits/stdc.h> using namespace std; //一个记录小猫的重量&#xff0c;sum记录当前小猫的重量之和 int n, w, a[3000],sum[3000],ans; bool cmp(int a,int b) {return a > b; } //x表示小猫当前的编号&#xff0c;cnt表示缆车的数量 void dfs(int x,int …...

技术速递|加入 .NET 智能组件生态系统

作者&#xff1a;Daniel Roth - 首席产品经理 排版&#xff1a;Alan Wang .NET 智能组件是一组示例嵌入式 UI 组件&#xff0c;使得在应用中轻松添加 AI 启用的功能变得更加简单&#xff0c;例如从剪贴板数据自动填写表单、智能文本补全以及语义搜索等场景。.NET 智能组件演示了…...

python/requests库的使用/爬虫基础工具/

requests 是一个 Python 库&#xff0c;它允许你发送 HTTP 请求。这个库需要单独安装&#xff0c;因为它不是 Python 标准库的一部分 1.让我们安装requests 在控制台运行 pip install requests 使用 requests 发送请求 1.GET 请求&#xff1a; import requestsresponse …...

【STM32-HAL库】MQ2烟雾传感器使用(STM32F407ZET6)

MQ2可燃气体传感器介绍 MQ2是一种广谱气体传感器&#xff0c;能够检测多种可燃气体和烟雾。它是一种低成本、高灵敏度的传感器&#xff0c;广泛应用于家庭和工业环境中的气体监测。 原理 MQ2传感器的工作原理基于金属氧化物半导体&#xff08;MOX&#xff09;技术。当传感器暴露…...

玩转指针(3)

一、字符指针变量 字符指针变量&#xff08;如char* p&#xff09;的两种赋值方式 ①将字符类型地址赋值给字符指针变量 int main() {char a w;char* p &a;*p m;return 0; }②将常量字符串赋值给字符指针变量 常量字符串的介绍&#xff1a;用" "引起来的就…...

【CSS in Depth 2 精译_040】6.3 CSS 定位技术之:相对定位(下)—— 用纯 CSS 绘制一个三角形

当前内容所在位置&#xff08;可进入专栏查看其他译好的章节内容&#xff09; 第一章 层叠、优先级与继承&#xff08;已完结&#xff09;第二章 相对单位&#xff08;已完结&#xff09;第三章 文档流与盒模型&#xff08;已完结&#xff09;第四章 Flexbox 布局&#xff08;已…...

HTML流光爱心

文章目录 序号目录1HTML满屏跳动的爱心&#xff08;可写字&#xff09;2HTML五彩缤纷的爱心3HTML满屏漂浮爱心4HTML情人节快乐5HTML蓝色爱心射线6HTML跳动的爱心&#xff08;简易版&#xff09;7HTML粒子爱心8HTML蓝色动态爱心9HTML跳动的爱心&#xff08;双心版&#xff09;1…...

java技能

日志实际使用 log.error(“111”,e);和 System.out.println(ExceptionUtils.getStackTrace(error)); 日志查询 tail -f root.log 前端页面命名&#xff1a; mounted(){ document.title‘设备可视页面’ } 查看ips所属mac nbtstat -a 10.87.236.60 获取容器名称 hostName In…...

本省第一所!新大学,揭牌!

9月26日&#xff0c;海南艺术职业学院举行揭牌仪式&#xff0c;标志着海南省第一所公办艺术类高等职业院校正式揭牌成立。海南省旅文厅党组成员、副厅长刘成出席揭牌仪式&#xff0c;省教育厅党组成员、副厅长邢孔政在揭牌仪式上宣读省人民政府同意设立海南艺术职业学院的批复。…...

企业微信(企微)审批与影刀RPA结合

企业微信审批与影刀RPA结合 效果先看视频&#xff1a; 影刀与企业微信审批结合 具体步骤&#xff1a; 1、登录企微管理后台&#xff0c;新建一个审批流。 添加模板→自定义模板&#xff0c;根据需求添加审批节点。 添加完之后&#xff0c;回到审批界面&#xff0c;可以看…...

新手教学系列——用 VSCode 实现高效远程开发

随着软件开发环境日益复杂,远程开发已成为许多开发者的日常工作方式。尤其当项目需要直接在服务器上运行或本地计算资源有限时,能够使用一款便捷、强大的工具至关重要。在众多 IDE 中,VSCode 因其轻量、灵活且支持丰富插件,成为远程开发的理想选择。本文将详细介绍如何通过…...

[uni-app]小兔鲜-04推荐+分类+详情

热门推荐 新建热门推荐组件, 动态设置组件的标题 <template><!-- 推荐专区 --><view class"panel hot"><view class"item" v-for"item in list" :key"item.id">... ...<navigator hover-class"none&…...

PHP人才机遇桥梁招聘求职全能系统小程序源码

人才机遇桥梁 —— 招聘求职全能系统全解析 &#x1f4bc;&#x1f680; &#x1f309; 搭建人才与机遇的桥梁 在这个竞争激烈的职场环境中&#xff0c;找到一份心仪的工作或招募到合适的人才&#xff0c;往往不是一件容易的事。但幸运的是&#xff0c;我们有了“人才机遇桥梁…...

计算机毕业设计Hadoop+Spark抖音可视化 抖音舆情监测 预测算法 抖音爬虫 抖音大数据 情感分析 NLP 自然语言处理 Hive 机器学习 深度学习

Python抖音可视化开题报告 一、研究背景与意义 随着移动互联网的迅猛发展&#xff0c;短视频平台如抖音已成为人们日常生活中不可或缺的一部分。抖音以其独特的算法和内容推荐机制&#xff0c;吸引了数以亿计的用户。然而&#xff0c;随着用户规模的不断扩大&#xff0c;如何…...

Linux 学习 awk 和sed 命令使用

awk 命令 awk 是一种处理文本文件的语言&#xff0c;是一个强大的文本分析工具。 awk 通过提供编程语言的功能&#xff0c;如变量、数学运算、字符串处理等&#xff0c;使得对文本文件的分析和操作变得非常灵活和高效。 之所以叫 awk 是因为其取了三位创始人 Alfred Aho&#x…...

双端搭建个人博客

1. 准备工作 确保你的两个虚拟机都安装了以下软件: 虚拟机1(Web服务器): Apache2, PHP虚拟机2(数据库服务器): MariaDB2. 安装步骤 虚拟机1(Web服务器) 安装Apache2和PHP 更新系统包列表: sudo apt update安装Apache2: sudo apt install apache2 -y安装PHP及其Apac…...

PHP 面向对象编程

PHP 面向对象编程 PHP 是一种流行的服务器端脚本语言&#xff0c;广泛用于 web 开发。它支持多种编程范式&#xff0c;包括面向对象编程&#xff08;OOP&#xff09;。面向对象编程是一种编程风格&#xff0c;它使用“对象”来设计软件&#xff0c;其中对象是数据和行为的集合…...

找个男做那个视频网站好/济南百度推广公司电话

首先是 注册码问题 推荐使用 zoho 邮箱&#xff0c;这个是免费的企业邮箱&#xff0c;重要的是不用填那些乱七八糟的东西&#xff0c;注册很方便 其二是 安装问题 安装时不要选中 安装后启动和初始化 类似的英文 &#xff0c;后面可能会卡住&#xff0c;看终端你可以发现写着…...

怎么搭建个人网站/襄阳seo培训

mixins一般有两种用途: 1.当你已经写好了构造器之后,需要增加方法或者临时的活动时使用的方法,这是用混入会减少源代码的污染; 下面的需求是构造器已经完成,突然要额外增加控制台打印变化的数据,操作如下: <body><div id"app">{{num}}<p><bu…...

b2b平台的盈利模式/谷歌seo外链平台

本文转载&#xff0c;原文地址&#xff1a; 分享&#xff1a;个人是怎么学习新知识的...

社区门户网站建设招标公告/优化游戏卡顿的软件

实验要求&#xff1a;1.R6为ISP只能配置IP地址 2.R1/4/5为全连MGRE结构&#xff0c;R1/2/3为星型结构&#xff0c;R1为中心站点 3.所有私有网段可以互相通讯&#xff0c;私有网段使用OSPF协议 首先我们先进行IP地址的规划 和进行IP地址的配置 对R1: interface GigabitEthernet…...

有做浏览单的网站/站长工具网站测速

mysql如何字段引用和防止出现数据库关键字 ps&#xff1a;本人亲测&#xff0c;阿里云2核4G5M的服务器性价比很高&#xff0c;新用户一块多一天&#xff0c;老用户三块多一天&#xff0c;最高可以买三年&#xff0c;感兴趣的可以戳一下&#xff1a;阿里云折扣服务器 数据库中…...

息县网站建设公司/网站秒收录

很多小伙伴在下载游戏了之后&#xff0c;win7电脑提示缺少D3DCompiler_47.dll文件&#xff0c;这是什么原因呢&#xff0c;是因为电脑没有及时下载更新的文件&#xff0c;也是这个原因导致无法加载游戏&#xff0c;只要我们重新下载一个就可以了&#xff0c;具体的解决方法一起…...