主页 > 百科杂谈

tcp和udp的区别(TCP和UDP的主要区别是什么)

仙山 2023-07-01 09:16:00 6896次

tcp和udp的区别如下: 1、最大的区别就是TCP是面向连接的,而UDP是无连接的。 2、TCP是可靠的,安全的;UDP是不可靠的,不安全的,但是传输数据的速率快。 3、TCP比UDP更复杂,它具有...,以下是对"tcp和udp的区别"的详细解答!

文章目录

tcp和udp的区别

tcp和udp的区别如下:

1、最大的区别就是TCP是面向连接的,而UDP是无连接的。

2、TCP是可靠的,安全的;UDP是不可靠的,不安全的,但是传输数据的速率快。

3、TCP比UDP更复杂,它具有流量控制和拥塞控制机制。

4、TCP面向字节流;UDP是面向报文的。

5、TCP对系统资源要求较多,UDP对系统资源要求较少。TCP首部有20个字节,UDP的首部只有8个字节的首部开销。

6、TCP连接只能是一对一的;而UDP支持一对一,一对多和多对多的交互通信。

7、UDP协议不使用确认信息对报文的到达进行确认,它不能保证报文到达的顺序,也不能向源端反馈信息来进行流量控制,因而会出现报文丢失等现象。

TCP的特点如下:

它允许两个应用进程之间建立一条传输连接,应用进程通过传输连接可以实现顺序、无差错、不重复和无报文丢失的流传输。在一次进程数据交互结束时,释放传输连接。TCP提供拥塞控制功能,目的是防止发送方发送数据的速率超出网络的容量。

TCP是面向字节流的协议。源主机上的应用进程调用TCP进程,将用户数据写入到TCP发送缓存,TCP将发送缓存的数据封装成一个大小合适的TCP报文,然后通过Internet发送给目的主机的TCP进程。

目的主机上的TCP进程收到TCP报文后,将TCP报文解封装,取出TCP报文中的数据,将其放入应用进程的接收缓存,并且通知应用进程从接收缓存中读取数据。

TCP和UDP的主要区别是什么

TCP是面向连接的传输控制协议,而UDP提供了无连接的数据报服务;

TCP具有高可靠性,确保传输数据的正确性,不出现丢失或乱序;UDP在传输数据前不建立连接,不对数据报进行检查与修改,无须等待对方的应答,所以会出现分组丢失、重复、乱序,应用程序需要负责传输可靠性方面的所有工作;

UDP具有较好的实时性,工作效率较TCP协议高。

TCP---传输控制协议,提供的是面向连接、可靠的字节流服务。当客户和服务器彼此交换数据前,必须先在双方之间建立一个TCP连接,之后才能传输数据。TCP提供超时重发,丢弃重复数据,检验数据,流量控制等功能,保证数据能顺序地从一端传到另一端。

UDP---用户数据报协议,是一个简单的面向数据报的运输层协议。UDP不提供可靠性,它只是把应用程序传给IP层的数据报发送出去,但是并不能保证它们能到达目的地。由于UDP在传输数据报前不用在客户和服务器之间建立一个连接,且没有超时重发等机制,不保证数据按顺序传递,故而传输速度很快。

UDP、TCP 协议的区别

udp 和tcp 是 OSI 模型中的运输层中的协议。tcp 提供可靠的通信传输,而 udp 则常被用于让广播和细节控制交给应用的通信传输。两者的区别大致如下:tcp 面向连接,udp 面向非连接即发送数据前不需要建立链接;tcp 提供可靠的服务(数据传输),udp 无法保证;tcp 面向字节流,udp 面向报文;tcp 数据传输慢,udp 数据传输快;

tcp 为什么要三次握手,为什么? 我们假设A和B是通信的双方。我理解的握手实际上就是通信,发一次信息就是进行一次握手。

第一次握手:A给B打电话说,你可以听到我说话吗?

第二次握手:B收到了A的信息,然后对A说:我可以听得到你说话啊,你能听得到我说话吗?

第三次握手:A收到了B的信息,然后说可以的,我要给你发信息啦!

在三次握手之后,A和B都能确定这么一件事:我说的话,你能听到;你说的话,我也能听到。这样,就可以开始正常通信了。

注意:HTTP是基于TCP协议的,所以每次都是客户端发送请求,服务器应答,但是TCP还可以给其他应用层提供服务,即可能A、B在建立链接之后,谁都可能先开始通信。如果采用两次握手,那么只要服务器发出确认数据包就会建立连接,但由于客户端此时并未响应服务器端的请求,那此时服务器端就会一直在等待客户端,这样服务器端就白白浪费了一定的资源。若采用三次握手,服务器端没有收到来自客户端的再此确认,则就会知道客户端并没有要求建立请求,就不会浪费服务器的资源。

udp和tcp的区别

TCP传输协议是一种面向连接的、可靠的、基于字节流的传输层通信协议,由IETF的RFC793定义,UDP是Internet协议集支持一个无连接的传输协议,为应用程序提供了一种无需建立连接,就可以发送封装的IP数据包的方法。

TCP的许多特性都与TCP是面向连接的这个基本特性有关,因此要对TCP的连接有更清楚的了解,每一条TCP连接唯一地被通信两端的两个端点所确定,所谓的端点就是套接字(或插口)。

套接字的表示方法:在点分十进制的IP地址后面写上端口号,例如IP地址是192.3.4.5,端口号是80,那么套接字就是(192.3.4.5:80)。

TCP与UDP的区别:

1、TCP基于连接,而UDP基于无连接的。

2、对系统资源的要求:TCP较多(TCP有20个字节信息包),UDP少(UDP信息包只有8个字节)。

3、UDP程序结构较简单。

4、TCP是字节流模式,而UDP是数据报文模式。

5、TCP保证数据正确性,安全可靠,并且保证数据顺序,而UDP可能丢包,而且UDP不保证数据顺序。

(0)

相关推荐

发表评论

登录后才能评论

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 1719901459@qq.com 举报,一经查实,本站将立刻删除。