计网第五章(运输层)(三)(TCP和UDP的对比)

news/2024/12/29 12:44:35/

一、UDP协议和TCP协议的对比

1、UDP无连接,TCP面向连接

使用UDP协议的通信双方可以随时发送数据,使用TCP协议的通信双方必须先进行3次握手建立连接,才能发送数据,最后还要进行4次挥手才能释放连接。

2、UDP支持单播、多播以及广播,TCP只支持单播

可以和第一点联系起来,TCP要想发送数据得先建立起连接,也就是说双方没有建立连接自然不能发送数据。但是UDP可以随时发送数据,没有那么多的局限性,也就支持单播、多播和广播。

3、UDP面向应用报文,TCP面向字节流

UDP:

通信双方使用UDP协议,发送方的运输层给从应用层传下来的应用报文添加一个UDP首部,使之成为UDP数据报(上一节提到的UDP复用),随后经过下面各层处理后进行发送。

接收方收到后,在运输层去除UDP数据报的UDP首部,并交付给上一层(上一节提到的UDP分用)。

很明显可以看到,整个过程UDP对应用报文并没有进行合并,也没有进行拆分,发送方仅仅只是添加一个UDP首部,就交给下一层;而接收方也仅仅只是将UDP首部去掉,随后交付给上一层。所以UDP是面向应用报文的。

TCP:

如果通信双方使用TCP协议,发送的运输层将应用层传下来的数据块看成一连串的、无结构的字节流。TCP将它们编号并存储在自己的发送缓存中,TCP根据发送策略从发送缓存中提取一定数量的字节,构成TCP报文段并发送。

接收方从接收到的报文段中取出数据载荷部分并存储在接收缓存中,同时将接收缓存中的一些字节交付给上层。

所以TCP是面向字节流的。这也是TCP实现可靠传输、流量控制和拥塞控制的基础。

4、UDP提供不可靠传输,TCP提供可靠传输

5、UDP数据报首部仅有8字节,TCP报文段首部最小20字节、最大为60字节。


http://www.ppmy.cn/news/1117185.html

相关文章

stable diffusion model训练遇到的问题【No module named ‘triton‘】

一天早晨过来,发现昨天还能跑的diffusion代码,突然出现了【No module named ‘triton’】的问题,导致本就不富裕的显存和优化速度雪上加霜,因此好好探究了解决方案。 首先是原因,由于早晨过来发现【电脑重启】导致了【…

在JAVA中intValue()、parseInt()、valueOf()的区别

JAVA API文档对于intValue()、parseInt()、valueOf()的介绍: 详解见代码 package JAVA_API;public class Test {public static void main(String[] args) {Integer inew Integer("10");//将包装类型的对象转换成基本数据类型(非静态方法&…

SpringBoot统一返回处理遇到cannot be cast to java.lang.String问题

ResponseBodyAdvice 接口概述 1、ResponseBodyAdvice 接口允许在执行 ResponseBody 或 ResponseEntity 控制器方法之后,但在使用 HttpMessageConverter 写入响应体之前自定义响应,进行功能增强。通常用于 加密,签名,统一数据格式…

前端面试话术集锦第 16 篇:高频考点(前端监控 UDP知识点)

这是记录前端面试的话术集锦第十六篇博文——高频考点(前端监控 & UDP知识点),我会不断更新该博文。❗❗❗ 1. 监控 前端监控一般分为三种,分别为: 页面埋点 性能监控 异常监控。 我们来学习这些监控相关的内容,但是基本不会涉及到代码,只是让大家了解下前端监控该…

2023-09-20 Android CheckBox 让文字显示在选择框的左边

一、CheckBox 让文字在选择框的左边 &#xff0c;在布局文件里面添加下面一行就可以。 android:layoutDirection"rtl" 即可实现 android:paddingStart"10dp" 设置框文间的间距 二、使用的是left to right <attr name"layoutDirection">&…

docker系列(8) - docker网络

文章目录 8. docker网络8.1 四种网络模式8.2 常用命令8.3 桥接网络模式8.3.1 桥接网络模式说明8.3.2 桥接网络模式案例 8.4 host网络模式8.4.1 host网络模式说明8.4.2 host模式案例 8.5 none网络模式8.5 container网络模式8.5.1 container网络模式说明8.5.2 container网络模式案…

机器视觉常见的问题及解决

应该怎样选择相机&#xff1f; 选择相机却往往刻不容缓的的问题摆在机器视觉工程师面前&#xff0c;因此&#xff0c;选择相机了解以下几个方面问题&#xff1a; 通常您首先需要知道系统精度要求和相机分辨率&#xff0c;可以通过公式&#xff1a;X方向系统精度&#xff08;X方…

基于matlab求两个数最大公约数函数gcd

一、gcd函数 在MATLAB中&#xff0c;可以使用内置函数gcd()来求两个数的最大公约数。 二、示例 以下是使用MATLAB求两个数最大公约数的示例代码&#xff1a; % 定义两个数 a 36; b 48; % 求最大公约数 gcd_result gcd(a, b); % 输出结果 fprintf(最大公约数为&#xff1…