TCP和UDP的异同

article/2025/9/22 2:54:13

文章目录

  • udp和tcp的相同点
  • udp和tcp的不同点
    • 区别
    • udp的介绍
    • tcp的介绍

最近看了计网的资料和视频,以及其他博主的资料,对最近所学的知识进行以下总结,方便让其他小伙伴儿参考学习,也利于自己巩固,回头复习用,如果有什么不对的地方还请大佬指正。

udp和tcp的相同点

udp和tcp的不同点

在这里插入图片描述

udp和tcp都是传输层的协议,目的都是传输数据

区别

在这里插入图片描述

udp的介绍

UDP协议全称是用户数据报协议(User Datagram Protocol),在网络中它与TCP协议一样用于处理数据包,是一种无连接的协议。在OSI(Open System Interconnection,开放式系统互联)模型中,在第四层——传输层,处于IP协议的上一层。UDP有不提供数据包分组、组装和不能对数据包进行排序的缺点,也就是说,当报文发送之后,是无法得知其是否安全完整到达的。
其特点如下:
1.面向无连接

首先 UDP 是不需要和 TCP一样在发送数据前进行三次握手建立连接的,想发数据就可以开始发送了。并且也只是数据报文的搬运工,不会对数据报文进行任何拆分和拼接操作。

具体来说就是:
在发送端,应用层将数据传递给传输层的 UDP 协议,UDP 只会给数据增加一个 UDP 头标识下是 UDP 协议,然后就传递给网络层了在接收端,网络层将数据传递给传输层,UDP 只去除 IP 报文头就传递给应用层,不会任何拼接操作

可以理解为如下生活中的例子:
在你给朋友发送文件上,你将文件压缩成压缩包,不需要对方在线就能发送到对方消息列表里
而如果你发送文件,没有打成压缩包形式的话,是需要对方保存电脑在线的,不然无法接收到文件

在这里插入图片描述

2.有单播,多播,广播的功能

UDP 不止支持一对一的传输方式,同样支持一对多,多对多,多对一的方式,也就是说 UDP 提供了单播,多播,广播的功能。
在这里插入图片描述
3.UDP是面向报文的

发送方的UDP对应用程序交下来的报文,在添加首部后就向下交付IP层。UDP对应用层交下来的报文,既不合并,也不拆分,而是保留这些报文的边界。因此,应用程序必须选择合适大小的报文
在这里插入图片描述
4.不可靠性

首先不可靠性体现在无连接上,通信都不需要建立连接,想发就发,这样的情况肯定不可靠。
并且收到什么数据就传递什么数据,并且也不会备份数据,发送数据也不会关心对方是否已经正确接收到数据了。
再者网络环境时好时坏,但是 UDP 因为没有拥塞控制,一直会以恒定的速度发送数据。即使网络条件不好,也不会对发送速率进行调整。这样实现的弊端就是在网络条件不好的情况下可能会导致丢包,但是优点也很明显,在某些实时性要求高的场景(比如电话会议)就需要使用 UDP 而不是 TCP。

5.头部开销小,传输数据报文时是很高效的
首部开销仅8个字节,而TCP首部至少20个字节。

tcp的介绍

当一台计算机想要与另一台计算机通讯时,两台计算机之间的通信需要畅通且可靠,这样才能保证正确收发数据。
TCP协议全称是传输控制协议(Transmission Control Protocol),是一种面向连接的、可靠的、基于字节流的传输层通信协议。流就是指不间断的数据结构,你可以把它想象成排水管中的水流。

声明:三次握手和四次挥手会在下一篇详细介绍

TCP协议的特点

1.面向连接

面向连接,是指发送数据之前必须在两端建立连接。建立连接的方法是“三次握手”,这样能建立可靠的连接。建立连接,是为数据的可靠传输打下了基础

2.仅支持单播传输

每条TCP传输连接只能有两个端点,只能进行点对点的数据传输,不支持多播和广播传输方式

3.TCP面向字节流

TCP不像UDP一样那样一个个报文独立地传输,而是在不保留报文边界的情况下以字节流方式进行传输。
在这里插入图片描述
4.可靠传输

对于可靠传输,判断丢包,误码靠的是TCP的段编号以及确认号。TCP为了保证报文传输的可靠,就给每个包一个序号,同时序号也保证了传送到接收端实体的包的按序接收。然后接收端实体对已成功收到的字节发回一个相应的确认(ACK);如果发送端实体在合理的往返时延(RTT)内未收到确认,那么对应的数据(假设丢失了)将会被重传。

5.提供拥塞控制

当网络出现拥塞的时候,TCP能够减小向网络注入数据的速率和数量,缓解拥塞

6.TCP提供全双工通信

TCP允许通信双方的应用程序在任何时候都能发送数据,因为TCP连接的两端都设有缓存,用来临时存放双向通信的数据。当然,TCP可以立即发送一个数据段,也可以缓存一段时间以便一次发送更多的数据段(最大的数据段大小取决于MSS)

TCP和UDP的介绍到这里就结束了,如果有什么不对的地方欢迎大佬指正,下一篇会详细介绍TCP三次握手和四次挥手的连接与释放,如果感兴趣的可以留意哦。

在这里插入图片描述


http://chatgpt.dhexx.cn/article/bV5otbif.shtml

相关文章

TCP和UDP的介绍及使用场景

TCP和UDP的优势和劣势 TCP 最核心的价值是提供了可靠性,而 UDP 最核心的价值是灵活,你几乎可以用它来做任何事情。 例如:HTTP 协议 1.1 和 2.0 都基于 TCP,而到了 HTTP 3.0 就开始用 UDP 了。 TCP 的稳定性 TCP 作为一个传输层…

Qt UDP和TCP对比

一、UPD和TCP区别总结 二、详细对比UDP和TCP如下: 1、TCP是面向连接的,UDP是面向无连接的 TCP则在通信前需要进行三次握手,UDP不需要。 UDP在发送端,应用层将数据传递给传输层的UDP协议,UDP只会给数据增加一个UDP头&…

UDP和TCP对比与区别

文章目录 UDP和TCP对比总对比1.udp是无连接的服务,tcp是面向连接的服务2.udp支持单播,多播以及广播;tcp仅支持单播3.udp面向报文,tcp面向字节流4.udp是不可靠传输,tcp是可靠传输5.udp数据报首部短,tcp报文段…

UDP和TCP的对比

用户数据报协议UDP(User Datagram Protocol)、传输控制协议TCP(Transmission Control Protocol) UDP和TCP是TCP/IP体系结构运输层中的两个重要协议,其使用频率仅次于网际层的IP协议 运输层采用面向连接的 TCP 协议时…

848-UDP 检验和 的计算过程

UDP 检验和 的计算过程 对发送方的 UDP 报文段的所有 16 比特字的和进行反码运算,当求和遇见溢出的时候,进行回卷(回卷的补充在下面),得到的结果放在 UDP 报文段中的检验和字段。 什么是回卷? 所谓 “回卷…

点估计 矩估计

1.说明: 设总体 X 的分布函数形式已知, 但它的一个或多个参数为未知, 借助于总体 X 的一个样本来估计总体未知参数的值的问题称为点估计问题. 在统计问题中往往先使用最大似然估计法, 在最大似然估计法使用不方便时, 再用矩估计法. 2.常用构造估计量的方法 1&#…

概率论-小记录(矩估计)

目录 矩估计量 无偏性-估计量的评选标准 一致估计量 矩估计量 定义: 矩估计法: 用样本k阶矩Ak作为总体k阶矩E(Xk)的估计量的方法. 注意最后用B2作为方差的矩估计量。 矩估计量不唯一 在总体的均值和方差都存在时,求均值μ和方差σ2 的矩估计量, 并不一定要知道…

矩估计和最大似然估计关系

1、矩估计 理论根源是辛钦大数定律,样本之间是独立同分布,当数据样本量很大的时候,样本观测值的平均值和总体的数学期望是在一个极小的误差范围内。 矩估计法, 也称“矩法估计”,就是利用样本矩来估计总体中相应的参数。首先推导…

数学:矩估计和最大似然估计

一、为什么要估计(estimate) 在概率,统计学中,我们所要观测的数据往往是很大的,(比如统计全国身高情况)我们几乎不可能去统计如此之多的值。这时候,就需要用到估计了。我们先抽取样本&#xff0…

矩估计和最大似然估计

参数估计 参数估计 :是根据从总体中抽取的样本估计总体分布中包含的未知参数的方法。它是统计推断的一种基本形式,是数理统计学的一个重要分支,分为点估计和区间估计两部分。 点估计 :依据样本估计总体分布中所含的未知参数或未…

广义矩估计

矩估计就是用样本矩代替总体矩进行统计推断的方法。 举例:正态参数估计问题, ,估计μ和σ。 ,而根据大数定理,在一定的条件下:当样本量足够大的时候,样本矩与总体矩只差了一个无穷小量&#xff…

机器学习总结(三):矩估计

鉴于后续机器学习课程中多次提到参数估计的概念,为了避免囫囵吞枣的理解某些知识点,决定对概率统计的这部分知识点进行简要总结,这篇博客主要涉及的是点估计中的矩估计知识点,后续的博客将总结点估计中其他两个比较常见的方式&…

参数估计-矩估计

​​​​​​​参数估计:分布类型有很多种,决定正态分布的两个参数:均值和方差。因此,参数就是决定分布的关键性数据。知道了参数,也就知道了分布的详细内容。 问题来了,总体的分布类别如果我们知道了&am…

矩估计与最大似然估计

一、为什么要估计(estimate) 在概率,统计学中,我们所要观测的数据往往是很大的,(比如统计全国身高情况)我们几乎不可能去统计如此之多的值。这时候,就需要用到估计了。我们先抽取样本&#xff0…

机器学习笔记1.矩估计、极大似然估计。

1.矩估计 1.1矩估计思想: 矩估计是基于一种简单的“替换”思想,即用样本矩估计总体矩 1.2矩估计理论: 矩估计的理论依据就是基于大数定律的,大数定律语言化表述为:当总体的k阶矩存在时,样本的k阶矩依概率收…

解决“至少有一个JAR被扫描用于TLD但尚未包含TLD”的问题

一、问题描述 26-Aug-2020 18:52:00.419 信息 [RMI TCP Connection(3)-127.0.0.1] org.apache.jasper.servlet.TldScanner.scanJars 至少有一个JAR被扫描用于TLD但尚未包含TLD。 为此记录器启用调试日志记录,以获取已扫描但未在其中找到TLD的完整JAR列表。 在扫描期…

tld自定义标签之基础入门篇

一、tld说明 tld,是taglib description 的缩写,其自定义标签一般用于jsp页面,tld其作用一般是在web项目中结 jstl、c标签等用于有效性判断、权限判断等方面,对前端的一些页面标签起到约束、限制的作用。 很多人只知道有这类型的标…

至少有一个JAR被扫描用于TLD但尚未包含TLD。

问题描述: 至少有一个JAR被扫描用于TLD但尚未包含TLD。 为此记录器启用调试日志记录,以获取已扫描但未在其中找到TLD的完整JAR列表。 在扫描期间跳过不需要的JAR可以缩短启动时间和JSP编译时间。 一个或多个listeners启动失败,更多详细信息…

至少有一个JAR被扫描用于TLD但尚未包含TLD。 为此记录器启用调试日志记录,以获取已扫描但未在其中找到TLD的完整JAR列表。

24-Jul-2022 17:18:15.259 信息 [RMI TCP Connection(3)-127.0.0.1] org.apache.jasper.servlet.TldScanner.scanJars 至少有一个JAR被扫描用于TLD但尚未包含TLD。 为此记录器启用调试日志记录,以获取已扫描但未在其中找到TLD的完整JAR列表。 在扫描期间跳过不需要的…