首页 > 其他分享 >TCP和UDP的区别

TCP和UDP的区别

时间:2022-10-02 13:44:18浏览次数:45  
标签:UDP 区别 TCP 可靠 发送 数据包 连接

UDP:

UDP 与 TCP 的主要区别在于 UDP 不一定提供可靠的数据传输。事实上,该协议不能保证数据准确无误地到达目的地。UDP 在许多方面非常有效。当某个程序的目标是尽快地传输尽可能多的信息时(其中任意给定数据的重要性相对较低),可使用 UDP。ICQ 短消息使用 UDP 协议发送消息。

许多程序将使用单独的TCP连接和单独的UDP连接。重要的状态信息随可靠的TCP连接发送,而主数据流通过UDP发送。

TCP:

TCP的目的是提供可靠的数据传输,并在相互进行通信的设备或服务之间保持一个虚拟连接。TCP在数据包接收无序、丢失或在交付期间被破坏时,负责数据恢复。它通过为其发送的每个数据包提供一个序号来完成此恢复。记住,较低的网络层会将每个数据包视为一个独立的单元,因此,数据包可以沿完全不同的路径发送,即使它们都是同一消息的组成部分。这种路由与网络层处理分段和重新组装数据包的方式非常相似,只是级别更高而已。

为确保正确地接收数据,TCP要求在目标计算机成功收到数据时发回一个确认(即 ACK)。如果在某个时限内未收到相应的 ACK,将重新传送数据包。如果网络拥塞,这种重新传送将导致发送的数据包重复。但是,接收计算机可使用数据包的序号来确定它是否为重复数据包,并在必要时丢弃它。

TCP与UDP区别总结:

1、TCP面向连接(如打电话要先拨号建立连接);UDP是无连接的,即发送数据之前不需要建立连接

2、TCP提供可靠的服务。也就是说,通过TCP连接传送的数据,无差错,不丢失,不重复,且按序到达;UDP尽最大努力交付,即不保证可靠交付

3、TCP面向字节流,实际上是TCP把数据看成一连串无结构的字节流;UDP是面向报文的

UDP没有拥塞控制,因此网络出现拥塞不会使源主机的发送速率降低(对实时应用很有用,如IP电话,实时视频会议等)

4、每一条TCP连接只能是点到点的;UDP支持一对一,一对多,多对一和多对多的交互通信

5、TCP首部开销20字节;UDP的首部开销小,只有8个字节

6、TCP的逻辑通信信道是全双工的可靠信道,UDP则是不可靠信道

标签:UDP,区别,TCP,可靠,发送,数据包,连接
From: https://www.cnblogs.com/1426219101L/p/16748682.html

相关文章

  • UMA和NUMA CPU系统架构的区别
    转载自csdn上的博客https://blog.csdn.net/qq_40276626/article/details/121096365CPU和内存之间的架构分为两种:1、UMAUMA全称为UniformMemoryAccess,叫做一致性内存访......
  • 今日创见|一图比较UI、UX和产品设计能力的区别
    虽然UI和UX之间的区别已经被讨论过很多次,但是对于新手设计师来说,区分它们还是有一定难度。用户体验设计是研究用户行为的过程,是对用户体验历程的创作。本文通过图表简单介......
  • python2与python区别汇总
    目录输入与输出range使用区别字符编码区别输入与输出python2与python3中两个关键字的区别python2中input方法需要用户自己提前指定数据类型写什么类型就是什么类型ra......
  • 夯实基础之tcp Keepalive和 http Keep-Alive
    HTTP的Keep-Alive,是由应用层(用户态)实现的,称为HTTP长连接;TCP的Keepalive,是由TCP层(内核态)实现的,称为TCP保活机制;httpkeep-aliveHTTP协议采用的是「请求-......
  • AD节点监视器之TCP半连接
    今天创建应用负载的时候,关注了一下节点监视器的类型<ignore_js_op>监视器的类型很多,这里的TCP半连接是什么意思呢,在这里简单的分析一下,不对的地方请各位大神批评指正......
  • Java泛型中<T> T 与 T的区别和用法
    有的方法返回值是<T>T,有的是T,区别在哪里?下面是一个泛型方法,<T>声明此方法有一个泛型T,也可以理解声明一个泛型方法.    下面三个T,第一个T表示是泛型,第二个......
  • TCP与UDP的联系与区别
    TCP与UDP的联系与区别TCPTCP(TransmissionControlProtocol,传输控制协议)是面向连接的协议,也就是说,在收发数据前,必须和对方建立可靠的连接。TCP仅支持单播传输,面向字节流,......
  • 新生代垃圾回收器和老年代垃圾回收器都有哪些?有什么 区别? -02
    serial  英[ˈsɪəriəl]美[ˈsɪriəl]  电视连续剧;广播连续剧;杂志连载小说 ParNew 新式parallel 英[ˈpærəlel]  平行的;Scavenge  英[ˈskæv......
  • 事件和调用的区别
    我一个事件放在那边,触发这个事件后,有注册本事件的客户代码才做对应处理,没有的话就不需要。这样对于客户代码来说,需要这个事件,我就注册一下,不需要我就解除。就这么简单。LZ......
  • execute,executeQuery,executeUpdate三个方法有什么区别呢?
    转发:​​http://www.java265.com/JavaMianJing/202205/16534030093491.html​​下文笔者讲述execute,executeQuery,executeUpdate三个方法的区别说明,如下所示1.Statement......