tcp和udp的区别是什么

tcp和udp的区别是:1、TCP是面向连接的,UDP是面向无连接的;2、TCP是可靠的,UDP是不可靠的;3、TCP是面向字节流的,UDP是面向报文的;4、TCP只有一对一的传输方式,UDP可以一对一、一对多和多对多。UDP不需要和TCP一样建立三次握手连接,而TCP在通信前则需要。

tcp和udp的区别是什么-Worktile社区

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

UDP是不需要和TCP一样建立三次握手连接的。而TCP则在通信前是需要进行三次握手的。具体就是:在发送端,应用层将数据传递给传输层的UDP协议,UDP只会给数据增加一个UDP头,标识是UDP协议,然后就传递给网络层了。在接收端,网络层将数据传递给传输层,UDP只去除IP报文头就传递给应用层了,不做任何拼接操作。

2、TCP是可靠的,UDP是不可靠的

具体体现在,UDP的无连接上,通信都不需要建立连接,想发就发,这样的情况肯定不可靠。发送数据也不会关心对方是否已经正确接收到数据。其次,网络环境时好时坏,但是UDP是没有拥塞控制的,一直会以恒定的速度发送数据。就算网络不好,也不会对发送速率作调整,这样就会在网络不好时,可能产生丢包。但是优点野明显,就是对于一些实时性要求高的场景(比如电话会议)就需要UDP,因为远程视频的话,你丢一些数据(例如像素)并不影响视频的内容。

在TCP协议中使用了接收确认和重传机制,使得每一个信息都能保证到达,是可靠的。

而UDP是尽力传送,没有应答和重传机制,UDP只是将信息发送出去,对方收不收到也不进行应答。所以UDP协议是不可靠的。

3、TCP是面向字节流的,UDP是面向报文的

怎么理解面向字节流和面向报文呢?TCP基于流的传输表示TCP不认为消息是一条一条的,是无保护消息边界的(保护消息边界:指传输协议把数据当做一条独立的消息在网上传输,接收端一次只能接受一条独立的消息)。UDP面向报文,是有 保护消息边界 的,接收方一次只能接受一条独立的消息,所以UDP不存在粘包。

4、TCP只有一对一的传输方式,UDP可以一对一、一对多和多对多

UDP 不止支持一对一的传输方式,同样支持一对多,多对多,多对一的方式,也就是说 UDP 提供了单播,多播,广播的功能。TCP不能一对多的原因是:TCP通信前要跟一台主机进行三次握手连接,因此TCP不能对多。

延伸阅读:

什么是TCP?

传输控制协议(TCP,Transmission Control Protocol)是一种面向连接的、可靠的、基于字节流的传输层通信协议,由IETF的RFC 793定义。

TCP旨在适应支持多网络应用的分层协议层次结构。 连接到不同但互连的计算机通信网络的主计算机中的成对进程之间依靠TCP提供可靠的通信服务。TCP假设它可以从较低级别的协议获得简单的,可能不可靠的数据报服务。 原则上,TCP应该能够在从硬线连接到分组交换或电路交换网络的各种通信系统之上操作。

传输控制协议(TCP,Transmission Control Protocol)是为了在不可靠的互联网络上提供可靠的端到端字节流而专门设计的一个传输协议。

互联网络与单个网络有很大的不同,因为互联网络的不同部分可能有截然不同的拓扑结构、带宽、延迟、数据包大小和其他参数。TCP的设计目标是能够动态地适应互联网络的这些特性,而且具备面对各种故障时的健壮性。

不同主机的应用层之间经常需要可靠的、像管道一样的连接,但是IP层不提供这样的流机制,而是提供不可靠的包交换。

文章标题:tcp和udp的区别是什么,发布者:小编,转载请注明出处:https://worktile.com/kb/p/36340

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023年1月31日 下午8:20
下一篇 2023年1月31日 下午8:22

相关推荐

  • 计工时考勤什么软件

    计工时考勤的软件有:1、U考勤;2、慧考勤;3、优易考勤。U考勤是一款云端考勤软件,它支持多种考勤方式,包括刷卡、指纹和人脸识别等。它的主要特点是无需安装软件,可以直接在网页上使用。 1、U考勤 U考勤是一款云端考勤软件,它支持多种考勤方式,包括刷卡、指纹和人脸识别等。它的主要特点是无需安装软件,可…

    2023年2月26日
    4400
  • 辅助工具Coq和Isabelle的区别在哪儿

    辅助工具Coq和Isabelle的区别:1、逻辑系统不同;2、语言不通;3、自动化程度不同;4、应用领域不同;5、表达能力不同。逻辑系统不同是指,Coq使用的是依赖类型理论,而Isabelle则使用的是经典高阶逻辑。 一、辅助工具Coq和Isabelle的区别 1、逻辑系统不同:Coq使用的是依赖类…

    2023年3月26日
    18800
  • sql 非法字符 有哪些

    sql 非法字符有:1、单引号’;2、 双引号”;3、 英文分号;;4、–;5、英文逗号,;6、叹号!;7、~;8、@;9、$;10、%;11、^;12、/;13、空格;14、_;15、>;16、<。单引号’是SQL的标准字符符号,所以在SQL语…

    2023年1月9日
    57300
  • 软考认证有哪些

    软考认证包括:1、软件评测师考试;2、ISTQB;3、CSTE;4、LoadRunner ASP。软考是全国计算机技术与软件专业技术资格考试(简称计算机软件资格考试)的中级考试项目,它属于职业资格考试,又是职称资格考试,具有水平考试性质。

    2023年1月4日
    17900
  • CPU和GPU跑深度学习的差别

    CPU和GPU在执行深度学习任务上的区别有:1、运算速度不同;2、并行计算能力不同;3、能耗不同;4、价格和性价比不同;5、适用场景不同;6、编程难度不同。其中,运算速度不同指的是二者在计算量大的任务上,表现出的速度有显著差异,CPU适合复杂逻辑,而GPU适合并行处理。 1、运算速度不同 CPU:更…

    2023年7月23日
    11900
  • 好想学python怎么玩

    学习Python是一项有趣且有益的技能,适合初学者和经验丰富的开发人员。本文将介绍如何开始学习Python,包括1、选择合适的学习资源;2、安装Python环境;3、学习基础语法;4、实践项目;5、加入社区和寻求帮助。无论您的目标是开发Web应用程序、数据分析还是人工智能,Python都是一个强大的…

    2023年8月16日
    3700
  • 函数为什么要Currying化,Currying化有什么优点

    Currying是一种函数式编程技术,它将多参数函数转换为单参数函数的过程。它的优点是:1、可以更容易地重用代码,因为可以将多参数函数分解为多个单参数函数,这样就不需要重新写相同的代码;2、可以更容易地测试和调试代码,因为可以将复杂的问题分解成一些小的、独立的问题等。 一、Currying化有什么优…

    2023年4月7日
    10600
  • 本地化部署跟SaaS云部署有什么区别

    本地化部署跟SaaS云部署的区别有:1、部署方式;2、收费方式。其中,部署方式是指,本地化部署的软件需要安装到本地的服务器上,saas部署则不需要。saas平台拥有成熟的技术,可以在当天完成平台部署,拥有即买即用的好处,不需要漫长的周期。 一、本地化部署跟SaaS云部署的区别 1、部署方式 本地化部…

    2023年4月29日
    36000
  • 云端网络的三大场景概述

    网络是企业级应用的血液,一方面,应用、数据库、缓存等服务需要靠网络进行连接。另一方面,网络是用户和业务应用服务之间进行“互动访问”的桥梁。云端网络主要包括网络架构、入网请求、出网请求三大场景。

    2022年3月15日
    30600
  • 营销决策有哪些

    营销决策有:1、情感营销策略;2、体验营销策略;3、植入营销策略;4、口碑营销策略;5、事件营销策略;6、比附营销策略;7、饥饿营销策略;8、恐吓营销策略;9、会员营销策略。情感营销就是把消费者个人情感差异和需求作为企业品牌营销战略的核心。

    2023年1月9日
    22900

发表回复

登录后才能评论
联系我们
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部