holidaywork5

TCP和UDP区别
TCP ----稳定
1、提供面向连接的,可靠的数据传输服务;
2、传输过程中,数据无误、数据无丢失、数据无失序、数据无重复;
3、数据传输效率低,耗费资源多;
4、数据收发是不同步的;
UDP —快速
1、面向无连接的,不保证数据可靠的,尽最大努力传输的协议;
2、数据传输过程中,可能出现数据丢失、重复、失序的现象;
3、数据传输效率高、实时性高;
4、限制每次传输的数据大小,多出部分直接忽略删除;
5、收发是同步的,不会沾包。

三次握手(TCP连接的建立):

  1. 客户端向服务器发送连接请求:

    • 客户端发送一个带有SYN(同步)标志位的TCP报文,指定初始序列号(ISN)。
  2. 服务器接收连接请求并回应:

    • 服务器收到客户端的SYN报文后,会发送一个带有SYN和ACK(确认)标志位的报文,也指定自己的初始序列号。
  3. 客户端确认连接:

    • 客户端收到服务器的响应后,发送一个带有ACK标志位的报文,确认连接建立。
    • 此时,TCP连接已经建立,双方可以开始进行数据传输。

四次挥手(TCP连接的关闭):

  1. 发起关闭请求:

    • 一方(通常是客户端)发送一个带有FIN(结束)标志位的TCP报文,表示数据发送完毕,准备关闭连接。
  2. 对关闭请求的确认:

    • 接收到关闭请求的一方(通常是服务器)发送一个带有ACK标志位的报文,确认收到关闭请求。
    • 此时,该方仍可以向对方发送数据。
  3. 发起关闭请求的确认和发起自己的关闭请求:

    • 接收到确认的一方(通常是服务器),一旦数据发送完毕,也发送一个带有FIN标志位的报文,表示自己准备关闭连接。
  4. 最终确认:

    • 对方收到最后的FIN报文后,发送一个带有ACK标志位的报文,确认关闭请求。
    • 此时,TCP连接彻底关闭,双方均不能再发送数据。

这四个步骤保证了数据的完整性和正确性,确保在关闭连接时,双方都有足够的时间完成未传输完的数据的发送。这是为了避免数据的丢失或不完整。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

JVM-面试题

一、对象 1、对象创建 类加载检查 虚拟机遇到一条new指令时,首先将去检查这个指令的参数是否能在常量池定位到类的符号引用,并且检查这个符号引用代表的类是否被加载、解析和初始化过。若没有,必须先执行类加载过程。分配内存 类加载检查通过后,jvm将为新生对象分配内存,…

ubuntu22.04@laptop OpenCV Get Started: 009_image_thresholding

ubuntu22.04laptop OpenCV Get Started: 009_image_thresholding 1. 源由2. image_thresholding应用Demo2.1 C应用Demo2.2 Python应用Demo 3. 重点分析3.1 Binary Thresholding ( THRESH_BINARY )3.2 Inverse-Binary Thresholding ( THRESH_BINARY_INV )3.3 Truncate Threshold…

(15)Hive调优——数据倾斜的解决指南

目录 前言 一、什么是数据倾斜 二、发生数据倾斜的表现 2.1 MapReduce任务 2.2 Spark任务 三、如何定位发生数据倾斜的代码 四、发生数据倾斜的原因 3.1 key分布不均匀 3.1.1 某些key存在大量相同值 3.1.2 存在大量异常值或空值 3.2 业务数据本身的特性 3.3 SQL语句…

扶贫|精准扶贫管理系统|基于Springboot的精准扶贫管理系统设计与实现(源码+数据库+文档)

精准扶贫管理系统目录 目录 基于Springboot的精准扶贫管理系统设计与实现 一、前言 二、系统功能设计 三、系统实现 1、管理员模块的实现 (1)用户信息管理 (2)贫困户信息管理 (3)新闻类型管理 &a…

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Search\JumplistData

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Search\JumplistData HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Search\JumplistData是一个注册表键,它存储了Windows操作系统中搜索功能的跳转列表数据。这些数据包括最近搜索的…

GPT-4影响高度创新思维的领域(一)

GPT-4的应用范围不再局限于对现有信息的检索、整理和复述,而是进一步拓展到了诸如文学创作、科学假设生成、教育辅导、商业策略建议等需要高度创新思维的领域。这种独立思考和创新能力赋予了GPT-4作为虚拟助手时更加丰富多元的角色定位,使其成为一种强大…

备战蓝桥杯---图论之最短路dijkstra算法

目录 先分个类吧: 1.对于有向无环图,我们直接拓扑排序,和AOE网类似,把取max改成min即可。 2.边权全部相等,直接BFS即可 3.单源点最短路 从一个点出发,到达其他顶点的最短路长度。 Dijkstra算法&#x…

二叉树相关OJ题

创作不易,感谢三连!! 一、选择题 1、某二叉树共有 399 个结点,其中有 199 个度为 2 的结点,则该二叉树中的叶子结点数为( ) A.不存在这样的二叉树 B.200 C.198 D.199解析:选B&…

WebSocket | 基于TCP的全双工通信网络协议

文章目录 1、介绍2、示例2.1、分析2.2、代码开发2.3、功能测试 ​🍃作者介绍:双非本科大三网络工程专业在读,阿里云专家博主,专注于Java领域学习,擅长web应用开发、数据结构和算法,初步涉猎Python人工智能开…

Android14之Android Rust模块编译语法(一百八十七)

简介: CSDN博客专家,专注Android/Linux系统,分享多mic语音方案、音视频、编解码等技术,与大家一起成长! 优质专栏:Audio工程师进阶系列【原创干货持续更新中……】🚀 优质专栏:多媒…

问题:从完整的问题解决过程来看,( )是首要环节。A.理解问题 B.提出假设C.发现问题 D.检验假设 #学习方法#学习方法

问题:从完整的问题解决过程来看,( )是首要环节。A.理解问题 B.提出假设C.发现问题 D.检验假设 A.理解问题 B.提出假设 C.发现问题 参考答案如图所示

Python setattr函数

在Python编程中,setattr()函数是一个有用且灵活的内置函数,用于设置对象的属性值。它可以在运行时动态地设置对象的属性,无论是新建对象还是已有对象。本文将深入探讨setattr()函数的用法、语法、示例代码,并探讨其在实际编程中的…

【ASP.NET Core 基础知识】--最佳实践和进阶主题--设计模式在ASP.NET Core中的应用

一、设计模式概述 1.1 什么是设计模式 设计模式是在软件设计过程中反复出现的、经过验证的、可重用的解决问题的方法。它们是针对特定问题的通用解决方案,提供了一种在软件开发中可靠的指导和标准化方法。设计模式通常描述了一种在特定情景下的解决方案&#xff0…

2/13 知识回顾

一、磁盘操作 1.U盘接入虚拟机 在虚拟机中查找可移动设备 2.检测U盘是否被虚拟机识别 ls /dev/sd* 查找到有除sda外的内容,说明U盘链接成功 3.查看磁盘的使用情况 df -h 若U盘没有被挂载在具体的目录下时,是不能被查找到的4.给磁盘分区 使用 …

MySQL数据库基础(三):Linux系统下的MySQL安装与使用

文章目录 Linux系统下的MySQL安装与使用 一、MySQL部署安装 1. 卸载自带的MySQL8 2. 删除自带配置文件 3. 下载MySQL源 4. 安装MySQL源 5. 使用yum安装MySQL 6. 获取默认密码 7. 登录MySQL 8. 修改密码 二、登陆MySQL数据库 1、本地(针对本地MySQL&…

【DDD】学习笔记-对象图与聚合

类之间的关系 在理解领域驱动设计的聚合(Aggregate)之前,我们需要先理清面向对象设计中对象之间的关系。正如生活中我们不可能做到“鸡犬之声相闻,老死不相往来”一般,对象之间必然存在关系,如此才可以通力…

C++入门篇(5)——类和对象(2)

目录 1.类的6个默认成员函数 2.构造函数 2.2 概念 2.3 特性 3.析构函数 3.1 概念 3.2 特性 1.类的6个默认成员函数 如果一个类一个成员都没有,那么这个类就是空类。但空类并非什么都没有,编译器会对任何一个类都生成六个默认成员函数。 2.构造…

C++学习:二分查找

二分查找的前提 库函数只能对数组进行二分查找。 对一个数组进行二分查找的前提是这个数组中的元素是单调的。 一般为单调不减,当然如果是单调不增也可以(需要修改比较函数) 例如: [1,5,5,9,18]是单调的 [1 , 9, 9,…

Git 初学

目录 一、需求的产生 二、版本控制系统理解 1. 认识版本控制系统 2. 版本控制系统分类 (1)集中式版本控制系统 缺点: (2)分布式版本控制系统 三、初识 git 四、git 的使用 例:将 “ OLED文件夹 ”…

面试计算机网络框架八股文十问十答第五期

面试计算机网络框架八股文十问十答第五期 作者:程序员小白条,个人博客 相信看了本文后,对你的面试是有一定帮助的!关注专栏后就能收到持续更新! ⭐点赞⭐收藏⭐不迷路!⭐ 1)与缓存相关的HTTP请…