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

前端网络相关知识(TCP和UDP的区别, TCP的三次握手)

tcp和udp的区别

TCP(传输控制协议)和UDP(用户数据报协议)是两种常用的互联网传输协议。它们在以下几个方面有所不同:

  1. 连接性:TCP是面向连接的协议,而UDP是无连接的协议。TCP在通信之前需要建立连接,而UDP则直接发送数据包。

  2. 可靠性:TCP提供可靠的数据传输,它使用确认和重传机制来确保数据的完整性和可靠性。UDP则不提供可靠性保证,它不会确认数据包的接收情况,也不会重传丢失的数据包。

  3. 速度:由于TCP提供了可靠性保证,它的传输速度相对较慢。UDP则没有额外的确认和重传机制,因此传输速度较快。

  4. 数据量:TCP没有数据包大小限制,可以传输任意大小的数据。UDP的数据包大小有限制,通常被限制在64KB以内。

  5. 适用场景:TCP适用于需要可靠传输的应用,如文件传输、电子邮件和网页浏览等。UDP适用于实时性要求较高的应用,如音频和视频流媒体、在线游戏等。

总结来说,TCP提供可靠的、面向连接的传输,适用于对数据完整性和顺序有要求的应用;而UDP提供快速的、无连接的传输,适用于实时性要求较高的应用。

TCP的三次握手

TCP使用三次握手来建立连接。下面是TCP三次握手的过程:

  1. 第一次握手(SYN):客户端发送一个带有SYN(同步)标志的数据包给服务器,请求建立连接。这个数据包包含一个随机生成的初始序列号(ISN)。

  2. 第二次握手(SYN-ACK):服务器收到客户端的请求后,会发送一个带有SYN和ACK(确认)标志的数据包给客户端。这个数据包确认了客户端的请求,并包含了服务器随机生成的序列号和确认号(ACK)。

  3. 第三次握手(ACK):客户端收到服务器的确认后,会发送一个带有ACK标志的数据包给服务器。这个数据包确认了服务器的响应,并包含了客户端对服务器序列号的确认。

完成了这三次握手后,TCP连接就建立起来了,双方可以开始进行数据传输。

三次握手的目的是确保双方都能够正常收发数据,并且双方都知道对方的初始序列号。这样可以防止已失效的连接请求被服务器误认为是新的连接请求,从而避免了资源的浪费和数据的混乱。

http://www.lryc.cn/news/136469.html

相关文章:

  • 大数据-玩转数据-Flink营销对账
  • 中英双语对话大语言模型:ChatGLM-6B
  • MES生产报工管理
  • 五、修改官方FreeRTOS例程(STM32F1)
  • pytorch基础实践-数据与预处理
  • Java智慧工地系统源码(微服务+Java+Springcloud+Vue+MySQL)
  • PV3D: A 3D GENERATIVE MODEL FOR PORTRAITVIDEO GENERATION 【2023 ICLR】
  • Apache BeanUtils工具介绍
  • java 原子操作 笔记
  • 什么是线程安全性问题?Java中有哪些常用的同步机制来解决线程安全性问题?
  • Gitlab 安装全流程
  • pdf转word最简单方法~
  • Android 9.0 WiFi 扫描结果上报和获取流程
  • Java 项目日志实例:Log4j2
  • Effective C++条款14——在资源管理类中小心coping行为(资源管理)
  • 【网络教程】如何创建/添加钉钉机器人以及如何获取机器人的Token/Secret
  • wx原生微信小程序入门常用总结
  • 制作一个专属于安防监控业的小程序商城
  • 基于java羽毛球馆管理系统设计与实现
  • 安装elasticsearch8.9.0及修改配置
  • 如何构建高效的接口自动化测试框架?看完你就会了...
  • 53 | 金融行业股票销售指标分析
  • qiuzhiji1
  • 使用VisualStudio制作上位机(二)
  • Datawhale AI夏令营 - 用户新增预测挑战赛 | 学习笔记
  • HarmonyOS/OpenHarmony(Stage模型)卡片开发AbilityStage组件容器
  • 利用torchvision库实现目标检测与语义分割
  • 基于决策树(Decision Tree)的乳腺癌诊断
  • 前端面试的计算机网络部分(2)每天10个小知识点
  • 【LeetCode】224. 基本计算器