TCP和UDP协议的区别
TCP和UDP都是传输层的协议
UDP协议的特点:
- UDP协议是一种无连接的、不可靠的传输层协议(尽力而为的协议)
- 为什么说UDP是一种无连接、不可靠的协议呢?UDP协议在传输报文之前不需要在双方之间建立连接。
- UDP协议对报文只提供了一种保证数据传输可靠性的措施——可选的校验和
- 如果UDP协议检测出收到的分组出现错误,就丢弃分组,不会确认,也不会通知重传,这也是UDP最大的缺点,传输不可靠。当传递数据的时候,网络质量不好,就会发生丢包(数据丢失),无法保证数据的传输顺序。
- 在传输上UDP的传输速度非常快,因为在传输之前不需要进行确认,传输中没有拥塞,重传。
类似于一个广播的形式,不管你听不听,发送方一直在发送数据。UDP的效率高,处理速度快,对网络要求不高的的特点使他应用在P2P会话类。可以一对一,一对多,多对一的通信。适用于实时的语音和视频传输。
TCP协议的特点:
面向连接的传输服务,下面是一段形象的总结:
UDP像是你邮一封信,信邮丢了不知道,写信的一直以为信已经邮到,之后还会邮信。而TCP像是打电话,如果对方不接电话,双方永远不能交流信息,对方接电话你知道,对方说了什么你知道,对方挂了电话你也会知道。
所以TCP协议的传输不会出现差错,丢失,重复(双方会有确认)由于是面向连接的协议,TCP协议提高了数据传输的可靠性,TCP会有三次握手来建立连接,在传输过程中会有重传,确认,拥塞控制等机制,传输完成后还会断开连接释放资源。
- 相比于UDP协议,TCP传输速度上会慢,效率低下,时间都浪费在保证数据传输的各种机制上。
- TCP支持全双工通信:第一次听到这个名词的时候是在单片机课上,老师详细的讲述了单工,半双工,全双工的区别。全双工就是双方可以同时在任何时候发送数据。
- TCP协议是将数据看成一连串,无结构的字节流,UDP是面向报文传输的。
TCP和UDP协议的区别的更多相关文章
- 【转】HTTP学习---TCP和UDP协议的区别与应用
[原文]https://www.toutiao.com/i6592813624689951239/ 概述 ⊙TCP/IP是个协议组,可分为三个层次:网络层.传输层和应用层. 在网络层有IP协议.ICM ...
- TCP、UDP 协议的区别
TCP 面向连接 可靠 传输形式:字节流 传输效率:慢 所需资源:多 首部字节:20-60 应用场景:要求通讯数据可靠(如文件传输.邮件传输) UPD 无连接 不可靠 传输形式:数据报文段 传输效率: ...
- TCP和UDP协议的区别以及原理
参考文章https://blog.csdn.net/weixin_38483133/article/details/123864253
- TCP协议与UDP协议的区别
TCP协议与UDP协议的区别(转) 首先咱们弄清楚,TCP协议和UCP协议与TCP/IP协议的联系,很多人犯糊涂了,一直都是说TCP/IP协议与UDP协议的区别,我觉得这是没有从本质上弄清楚网络通信! ...
- (转)TCP协议与UDP协议的区别
TCP协议与UDP协议的区别 首先咱们弄清楚,TCP协议和UCP协议与TCP/IP协议的联系,很多人犯糊涂了,一直都是说TCP/IP协议与UDP协议的区别,我觉得这是没有从本质上弄清楚网络通信! ...
- TCP协议与UDP协议的区别以及与TCP/IP协议的联系
先介绍下什么是TCP,什么是UDP. 1. 什么是TCP? TCP(Transmission Control Protocol,传输控制协议)是面向连接的.可靠的字节流服务,也就是说,在收发数据前,必 ...
- (转)TCP和UDP之间的区别
TCP和UDP区别 TCP UDP 是否连接 面向连接 面向非连接 传输可靠性 可靠的 不可靠的 应用场合 传输大量的数据 少量数据 速度 慢 快 OSI 和 TCP/IP 模型在传输层 ...
- TCP和UDP协议的比较
通信协议 网络通信是两台计算机上的两个进程之间的通信. 网络通信需要通信协议.网络协议有很多种,就像我们平常交流说话,也有多种语言.. 最常见的协议是TCP/IP协议.UDP协议. TCP:TCP 是 ...
- 深入浅出TCP与UDP协议
深入浅出TCP与UDP协议 网络协议是每个前端工程师的必修课,TCP/IP协议族是一系列网络协议的总和,而其中两个具有代表性的传输层协议,分别是TCP与UDP,本文将介绍这两者以及他们之间的区别. 一 ...
随机推荐
- 影响JavaScript应用可扩展性因素
引言:JavaScript 应用变得越来越庞大.这是因为使用JavaScript能做的事情远比我们大多数人所需求的要多得多.我们不能仅因为技术上可行,就去考虑软件系统的扩展问题.为一个不需要扩展的系统 ...
- tms320dm6446内核启动分析
关于达芬奇DM6446,里面内部有两个部分,一个是ARM926ejs的核,还有一个是C64+DSP的视频处理核,而我需要关心的重点是arm926ejs的核(bootload和linux内核) 从boo ...
- vxWorks 命令
1.4.1 任务管理 sp( ) 用缺省参数创建一个任务(priority="100" 返回值为任务ID,或错误)(taskSpawn) sps( ) ...
- flask中jinjia2模板引擎使用详解5
接上文 宏 可以理解为函数,即把一些常用的模板片段做好封装,以便于重用,减少工作量和维护难度. 宏的定义很简单: {%macro xxx()%} ##这里写内容 {%endmacro%} 下面引用 ...
- 异常-----freemarker.template.TemplateException: Macro select has no such argument
1.错误描述 六月 25, 2014 11:32:49 下午 freemarker.log.JDK14LoggerFactory$JDK14Logger error 严重: Template proc ...
- [mysql] 2进制安装和简单优化
##################################mysql 2进制安装和简单优化################################################## ...
- 在ASP.NET 中检测手机浏览器(转)
引言 之前做的项目中需要在浏览器查看PDF文件.在电脑端没有问题,但是手机端网页打开失败. 后来使用了pdf.js,个人认为pdf.js的页面不够清爽,就希望网站能自动检测登录设备,电脑端保持原样,手 ...
- 【深入理解JVM】类加载器与双亲委派模型
原文链接:http://blog.csdn.net/u011080472/article/details/51332866,http://www.cnblogs.com/lanxuezaipiao/p ...
- BZOJ 2969: 矩形粉刷(期望)
BZOJ 2969: 矩形粉刷(期望) 题意: 给你一个\(w*h\)的方阵,不断在上面刷格子.每次等概率选择方阵中的两个点(可以相同)将以这两个点为端点的矩形(边平行于矩形边界)进行染色.共染\(k ...
- 【BZOJ4237】稻草人(CDQ分治,单调栈)
[BZOJ4237]稻草人(CDQ分治,单调栈) 题面 BZOJ 题解 \(CDQ\)分治好题呀 假设固定一个左下角的点 那么,我们可以找到的右下角长什么样子??? 发现什么? 在右侧是一个单调递减的 ...