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

【刷题Day20】TCP和UDP(浅)

TCP 和 UDP 有什么区别?

TCP提供了可靠、面向连接的传输,适用于需要数据完整性和顺序的场景。

UDP提供了更轻量、面向报文的传输,适用于实时性要求高的场景。

特性TCPUDP
连接方式面向连接无连接
可靠性提供可靠性,保证数据按顺序到达不可靠,不保证顺序或完整性
流量控制/拥塞控制提供流量控制和拥塞控制没有流量控制和拥塞控制
顺序保证保证数据顺序不保证数据顺序
头部大小较大(20字节及以上)较小(8字节)
性能较低,延迟大较高,延迟小
数据传输模式字节流传输模式数据报传输模式
适用场景文件传输、Web、邮件等需要可靠性的应用实时通讯、语音、视频、游戏等高性能要求应用

说说 TCP 的三次握手?

  1. 客户首先发送一个SYN(同步序列编号)消息给服务器
  2. 服务器收到后回复一个SYN-ACK(同步序列编号-确认)消息
  3. 最后客户端再发送一个ACK(确认)消息确认服务器已经收到SYN-ACK消息
  4. 完成三次握手,建立可靠的TCP连接。

TCP 是用来解决什么问题?

TCP(Transmission Control Protocol)通过提供可靠传输、流量控制、拥塞控制和连接管理,解决了数据在不可靠的IP网络上的传输问题:

  1. 可靠性传输: TCP确保数据包在网络传输过程中不丢失、不重复,并且按顺序到达。通过确认(ACK)、重传机制以及序列号,TCP能够保证数据在不可靠的IP网络上可靠传输。
  2. 流量控制: TCP通过滑动窗口机制调节发送方的数据发送速率,防止接收方因为处理能力有限而被数据流淹没。
  3. 拥塞控制: TCP通过拥塞避免算法(如慢启动、拥塞避免、快速重传和快速恢复)来防止网络过载,确保网络资源的公平使用和稳定性。
  4. 连接管理: TCP是面向连接的协议,采用三次握手(建立连接)和四次挥手(断开连接)机制来管理会话,确保通信的可靠性和状态的同步。
http://www.dtcms.com/a/144001.html

相关文章:

  • 前端面试的话术集锦第 25 篇博文——CSS面试题上
  • 数仓面试内容
  • Windows系统安装`face_recognition`
  • 7.vtk坐标系
  • AI 提示词教程:从新手到高手的进阶之路
  • 运筹学之模拟退火
  • Python实例题:神经网络实现人脸识别任务
  • c++题目_P1443 马的遍历
  • [数学] 挑战nbc
  • WinForms开发基础:实现带X按钮的ClearableTextBox控件
  • 【数论】3260. 找出最大的 N 位 K 回文数|2370
  • 老婆是用来爱的,不是用来吼的
  • 探秘Python 工匠:案例、技巧与工程实践:解锁Python进阶的通关秘籍
  • Mixture-of-Experts with Expert Choice Routing:专家混合模型与专家选择路由
  • LeetCode 1365. 有多少小于当前数字的数字 java题解
  • @EnableAsync+@Async源码学习笔记之一
  • C语言格式化输入输出总结 (printf和scanf)
  • ubuntu18.04安装QT问题汇总
  • 【STM32单片机】#10 USART串口通信
  • Kubernetes 多主多从集群部署完整文档
  • 解码 Web Service:从技术原理到应用场景的深度剖析
  • (2)Vue事件绑定的使用
  • 测试第四课---------性能测试
  • JAVA IO、BIO、NIO、AIO及零拷贝
  • 数据从辅存调入主存,页表中一定存在
  • LinearLayout 线性布局
  • 6.7 ChatGPT自动生成定时任务脚本:Python与Cron双方案实战指南
  • dac直通线还是aoc直通线? sfp使用
  • Shell脚本-什么时候需要定义变量
  • 【2025】Datawhale AI春训营-蛋白质预测(AI+生命科学)-Task2笔记