tcp与udp应用场景的区别

news/2024/5/18 14:26:37 标签: udp, tcp/ip, http
http://www.w3.org/2000/svg" style="display: none;">

文章目录

  • TCP和UDP
  • TCP
  • UDP
  • TCP优点
  • TCP缺点
  • UDP缺点
  • TCP应用场景
  • UDP 应用场景

TCP和UDP

两者都是通信协议,TCP和UDP都是传输层协议,但是他们的通信机制和应用场景不同。

TCP

TCP(Transmission Control Protocol)又叫传输控制协议,TCP是面向连接的,并且是一种可靠的协议,在基于TCP进行通信时,通信双方需要建立TCP连接,建立连接需要经过三次握手,握手成功才可以通信。

UDP

UDP是一种面向无连接,切不可靠的协议,在通信过程中,它并不像TCP那样需要先建立一个连接,只要目的地址,端口号,源地址,端口号确定了,就可以直接发送信息报文,并且不需要一定能收到或者完整的数据。它仅仅提供了校验和机制来保障报文是否完整,若校验失败,则直接将报文丢弃,不做任何处理。

TCP优点

可靠,稳定TCP的可靠性体现在传输数据之前,三次握手建立连接(四次挥手断开连接),并且在数据传递时,有确认,窗口,重传,拥塞控制机制,数据传完之后断开连接来节省系统资源。

TCP缺点

慢,效率比较低,占用系统资源,容易被攻击传输数据之前建立连接,这样会消耗时间,而且在消息传递时,确认机制,重传机制和拥塞机制都会消耗大量的时间,而且要在每台设备上维护所有的传输连接。而且每一个连接都会占用系统的CPU,内存等硬件软件资源。并且TCP的取而机制,三次握手机制导致TCP容易被人利用,实现DOS,DDOS攻击。

UDP缺点

不可靠,不稳定因为UDP没有TCP的那些可靠机制,在网络质量不好的时候容易发生丢包。

TCP应用场景

  • 当对网络通信质量有要求时,比如:整个数据要准确无误的传递给对方,这往往对于一些要求可靠的应用,比如HTTP,HTTPS,FTP等传输文件的协议,POP,SMTP等邮件的传输协议。常见使用TCP协议的应用:
  • 浏览器使用的:HTTP
  • FlashFXP:FTP
  • Outlook:POP,SMTP
  • QQ文件传输。

UDP 应用场景

  • 对当前网络通讯质量要求不高的时候,要求网络通讯速度尽量的快,这时就使用UDP,日常生活中常见使用UDP协议:
  • QQ语音。
  • QQ视频,网络电话。
  • UDP应用于广播。

https://img-blog.csdnimg.cn/6a4e51497cd94b97be30fd83161a61da.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBA5qOu5piO5biu5aSn5LqO6buR6JmO5biu,size_13,color_FFFFFF,t_70,g_se,x_16" alt="在这里插入图片描述" />


http://www.niftyadmin.cn/n/1739847.html

相关文章

Photoshop鸿蒙版,PS2021版太强悍,逆天新功能!

兄弟姐妹们,PS君道个歉对不起,这篇文章来迟了坊间一直流传PS2021的内测版说是能一键换天空、自动抠图一键变脸、自动上色等逆天功能于是PS君立即为大家安排起来把各种花样都玩了一遍除了牛逼还是牛逼1PS你变了今年,Adobe更新的速度还真快&…

html css js的作品,100个惊人的CSS、JS代码技术

100个惊人的CSS、JS代码技术1月 20, 2014评论 (4)Sponsor最近在Codepen看到Top Pens of 2013这个专题,专题内容为2013年上最优秀的前100个CSS、HTML5和Javascript Pens,在惊叹技术人员的创造力同时我们还能学习这些技术,对交互设计师而言还能…

rand5()得到rand3()或rand7()类型题:通过rand n()实现rand m()

文章目录rand5()得到rand3()rand5()得到rand7()通过rand n()实现rand m()rand5()得到rand3() 通过rand5实现rand3很好实现,rand5的取值为[1,2,3,4,5]的值,但是rand3的取值[1,2,3],由此可得,当rand5随机到4,5时可以重新…

html上传做成按钮,html表单文件上传按钮

在CSS文件中使用此代码.它在Chrome中适用于我.input[typefile] {-webkit-appearance: textfield;position: relative;-webkit-box-sizing: border-box;}input[typefile]::-webkit-file-upload-button {width: 0;padding: 0;margin: 0;-webkit-appearance: none;border: none;}/…

【C++从青铜到王者】第二十四篇:C++的类型转换

系列文章目录 文章目录系列文章目录前言一、C语言中的类型转换二、为什么C需要四种类型转换三、C强制类型转换1.static_cast类型转换2.reinterpret_cast类型转换3.const_cast类型转换4.dynamic_cast类型转换5.explicit总结前言 一、C语言中的类型转换 在C语言中,如…

HTTPS 加密算法过程

文章目录一、HTTPS协议概念二、加密算法三、HTTP访问过程一、HTTPS协议概念 1、HTTP 协议(HyperText Transfer Protocol,超文本传输协议):是客户端浏览器或其他程序与Web服务器之间的应用层通信协议 。 2、HTTPS 协议&#xff0…

Android 内核镜像签名,Docker 的镜像签名

应用上云的过程中,过了部署关和应用改造关之后,安全就是下一个大问题了。对于容器化应用来说,镜像的安全是个非常根本的问题,例如 Harbor 中集成了 Clair 组件,用于对镜像进行漏洞扫描;之前介绍的 Trivy 也…

【C++从青铜到王者】第二十五篇:C++智能指针

系列文章目录 文章目录系列文章目录前言一、常见面试题1. malloc/free和new/delete的区别2. 内存泄漏1.内存泄漏概念与危害2.内存泄漏分类(了解)3.如何检测内存泄漏(了解)4.如何避免内存泄漏5.如何一次在堆上申请4G的内存&#xf…