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

tcp协议机制的总结(可靠性,提高性能),基于tcp的应用层协议,用udp如何实现可靠传输

目录

总结

引入

可靠性

​编辑

分析

三次握手

提高性能

其他

常见的基于tcp应用层协议

用udp实现可靠传输 


总结

引入

为什么tcp要比udp复杂的多?

  • 因为它既要保证可靠性,又要兼顾性能

可靠性

分析

其中,序列号不止用来排序,还可以用在重传时去重

确认应答是机制中的核心

  • 因为都需要依靠应答来拿到协议字段,从而判断是否触发机制

保证可靠性的策略也可以提高效率,比如:

  • 流量控制,可以根据多个因素来动态调整数据发送量
  • 拥塞控制也是,让数据尽量成功一次到达,而不是等待重发

三次握手

在三次握手里,为以上机制奠定了基础

  • 建立连接
  • 协商起始序号
  • 协商双方的接收缓冲区大小

提高性能

其他

常见的基于tcp应用层协议

用udp实现可靠传输 

如果面试遇到这种问题,其实就往tcp上面靠拢就行,毕竟已经有成熟的现成的保证可靠性的协议了

比如:

  • 引入序列号,保证报文顺序到达
  • 引入确认应答机制,保证对端收到了数据
  • 引入超时重传机制,一段时间没有应答就重发数据,保证数据到达对端
  • 引入流量控制,防止对方因接收不过来而丢包
  • 等等
  • 其实就是把tcp协议的那些机制是干嘛的说一下就行

相关文章:

  • 系统编程:管道
  • 驱动开发(四):Linux内核中断
  • 【学习笔记】MySQL(Ⅲ)
  • 黑苹果睡眠总是自动唤醒(RTC)
  • JavaEE初阶--网络基本概念
  • 2024年宜春市中职“网络建设与运维”竞赛说明竞赛试题
  • 快速压缩前端项目
  • 【Windchill监听器、队列、排程】
  • is not null 、StringUtils.isNotEmpty和StringUtils.isNotBlank之间的区别?
  • 【技巧】Leetcode 67. 二进制求和【简单】
  • uni-app前端,社区团购系统搭建部署
  • 汽车IVI中控开发入门及进阶(二十八):视频SERDES芯片
  • 【MySQL】在CentOS环境下安装MySQL
  • Qt 6.13
  • 源码编译安装 clang/gcc
  • 《网管员必读——网络组建》(第2版)电子课件下载
  • 230. Kth Smallest Element in a BST
  • 4月23日世界读书日 网络营销论坛推荐《正在爆发的营销革命》
  • Date型的使用
  • gcc介绍及安装
  • hadoop入门学习教程--DKHadoop完整安装步骤
  • JavaScript工作原理(五):深入了解WebSockets,HTTP/2和SSE,以及如何选择
  • Java读取Properties文件的六种方法
  • java概述
  • learning koa2.x
  • LeetCode29.两数相除 JavaScript
  • Linux编程学习笔记 | Linux IO学习[1] - 文件IO
  • MYSQL 的 IF 函数
  • RedisSerializer之JdkSerializationRedisSerializer分析
  • vue:响应原理
  • vue2.0一起在懵逼的海洋里越陷越深(四)
  • vue从创建到完整的饿了么(18)购物车详细信息的展示与删除
  • 仿天猫超市收藏抛物线动画工具库
  • 如何设计一个微型分布式架构?
  • 白色的风信子
  • Android开发者必备:推荐一款助力开发的开源APP
  • LevelDB 入门 —— 全面了解 LevelDB 的功能特性
  • Semaphore
  • 带你开发类似Pokemon Go的AR游戏
  • 关于Android全面屏虚拟导航栏的适配总结
  • 移动端高清、多屏适配方案
  • ​​​【收录 Hello 算法】10.4 哈希优化策略
  • ​香农与信息论三大定律
  • ‌U盘闪一下就没了?‌如何有效恢复数据
  • # include “ “ 和 # include < >两者的区别
  • (04)odoo视图操作
  • (2015)JS ES6 必知的十个 特性
  • (22)C#传智:复习,多态虚方法抽象类接口,静态类,String与StringBuilder,集合泛型List与Dictionary,文件类,结构与类的区别
  • (9)STL算法之逆转旋转
  • (Java数据结构)ArrayList
  • (八)五种元启发算法(DBO、LO、SWO、COA、LSO、KOA、GRO)求解无人机路径规划MATLAB
  • (编程语言界的丐帮 C#).NET MD5 HASH 哈希 加密 与JAVA 互通
  • (翻译)Entity Framework技巧系列之七 - Tip 26 – 28
  • (附源码)springboot金融新闻信息服务系统 毕业设计651450
  • (十一)图像的罗伯特梯度锐化