19-TCP、UDP的区别和应用场景

  • 可靠性TCP 提供交付保证,这意味着一个使用TCP协议发送的消息是保证交付给客户端的,如果消息在传输过程中丢失,那么它将重发。UDP是不可靠的,它不提供任何交付的保证,一个数据包在运输过程中可能会丢失
  • 速度 TCP速度比较慢,而UDP速度比较快,因为TCP必须创建连接,以保证消息的可靠交付和游戏性,它需要做比UDP多的事。这就是为什么UDP更适用于对速度比较敏感的应用。TCP适合传输大量数据,UDP适合传输少量数据
  • 重量级 VS 轻量级 TCP是重量级的协议,UDP协议则是轻量级的协议。一个TCP数据报的报头大小最少是20个字节,UDP数据报的报头固定是8个字节。TCP报头中包含序列号、ACK号、数据偏移量、保留、控制位、窗口、紧急指针、可选项、填充想、校验位,源端口和目的端口。而UDP报头只包含长度、源端口号、目的端口号、校验
  • TCP只能单播,不能广播和组播;UDP可以广播和组播 TCP应用场景: 效率要求相对低,但对准确性要求相对高的场景。因为传输中需要对数据确认,重发、排序等操作,相比之下效率没有UDP高。(eg:文件传输、邮件传输、远程登录) UDP应用场景: 效率要求相对高,对准确性要求相对低的场景(QQ、QQ聊天、QQ视频、网络语音通过(即是通讯。要求速度高,但是出现偶尔断续不是太大问题,并且此处完全不可以使用重传机制)、广播通信(广播、多播)

Original: https://www.cnblogs.com/OnlyOnYourself-lzw/p/16579838.html
Author: OnlyOnYourself-Lzw
Title: 19-TCP、UDP的区别和应用场景

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/619807/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • 部署tomcat

    tomcat tomcat 一、tomcat是什么 二、tomcat部署 1.实现访问java测试网页 2.能够成功登录到tomcat首页中的host manager、server…

    数据库 2023年6月14日
    043
  • Java的Lambda表达式

    函数式编程(Functional Programming)是把函数作为基本运算单元,函数可以作为变量,可以接收函数,还可以返回函数。历史上研究函数式编程的理论是Lambda演算,所…

    数据库 2023年6月9日
    086
  • 【MySQL】MySQL的安装、卸载、配置、登陆和退出

    1 MySQL安装 安装环境:Win10 64位软件版本:MySQL 5.7.24 解压版 1.1 下载 https://downloads.mysql.com/archives/…

    数据库 2023年6月16日
    080
  • JUC自定义线程池练习

    JUC自定义线程池练习 首先上面该线程池的大致流程 自定义阻塞队列 首先定义一个双向的队列和锁一定两个等待的condition 本类用lock来控制多线程下的流程执行 take和p…

    数据库 2023年6月11日
    086
  • xtrabackup2版本和xtrabackup8版本对比

    导语在使用xtrabackup8版本对mysql8版本进行备份恢复搭建从库的时候,继续使用xtrabackup2版本的方式,从xtrabackup_binlog_info 文件中找…

    数据库 2023年6月16日
    0104
  • IntelliJ IDEA 断开svn连接

    1 设置菜单 2 进入pluglns 菜单,点击 browse repositonries….. 3 搜索 svn disconnect,然后安装插件 4 安装插件后,…

    数据库 2023年6月6日
    0149
  • Digester解析xml原理

    Tomcat内部是使用Digester来解析xml文件的,将xml转化为java对象。 digester底层是基于SAX+事件驱动+栈的方式来搭建实现的,SAX主要用来解析xml,…

    数据库 2023年6月16日
    069
  • Centos安装mysql57

    1.1 MySQL安装 1.1.1 下载 wget 命令 yum -y install wget 1.1.2 在线下载mysql安装包 wget https://dev.mysql…

    数据库 2023年5月24日
    0106
  • 猿创征文|小而巧的API文档生成工具之smart-doc

    文章目录 smart-doc介绍 smart-doc特性 smart-doc的最佳搭档 谁在使用smart-doc smart-doc的优缺点 smart-doc和swagger区…

    数据库 2023年6月6日
    0260
  • MIT 6.824 Lab2D Raft之日志压缩

    书接上文Raft Part C | MIT 6.824 Lab2C Persistence。 实验准备 实验代码: git://g.csail.mit.edu/6.824-gola…

    数据库 2023年6月14日
    0146
  • 慢查询SQL排查

    转载请注明出处❤️ 作者:测试蔡坨坨 原文链接:caituotuo.top/c56bd0c5.html 你好,我是测试蔡坨坨。 在往期文章中,我们聊过数据库基础知识,可参考「数据库…

    数据库 2023年5月24日
    082
  • 【数据库】– MySQL SQL调优笔记(1)

    1.索引 1.1.定义 MySQL官方对索引的定义为:索引(Index)是帮助MySQL高效获取数据的数据结构。 我们平常所说的索引,如何没有特别的指明,都是B树(多路搜索树,并不…

    数据库 2023年5月24日
    0109
  • mysql

    mysql 1.1数据库 关系型数据库:数据存储在硬盘上 [En] Relational database: the data is stored in the hard disk…

    数据库 2023年5月24日
    081
  • 使用Typora + 阿里云OSS + PicGo 打造个人图床

    使用Typora + 阿里云OSS + PicGo 打造个人图床 为什么要打造图床? 让笔记远走高飞 试问以下场景: 我们要 markdown 笔记放到某博客上,直接进行复制即可。…

    数据库 2023年6月9日
    089
  • MyBatis(三)-动态SQL

    1、if 注意:test里面使用的参数,可以是mybatis的默认参数,也可以是实体属性名,但是不能是没有指定别名的参数名(尤其是单个参数,也必须起别名,否则异常); 单独使用if…

    数据库 2023年6月16日
    081
  • openstack 安装neutron网络服务安装 报错:Unknown operation ‘enabled’

    注:这个脚本文件有一个地方是错误的,最后一行需要修改一下 vim /usr/local/bin/iass-install-neutron-controller-gre.sh 改sy…

    数据库 2023年6月14日
    076
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球