tcp和udp的区别详解

一:TCP协议与UDP协议的区别
       首先咱们弄清楚,TCP协议和UCP协议与TCP/IP协议的联系,很多人犯糊涂了,一直都是说TCP/IP协议与UDP协议的区别,我觉得这是没有从本质上弄清楚网络通信!
       TCP/IP协议是一个协议簇。里面包括很多协议的。UDP只是其中的一个。之所以命名为TCP/IP协议,因为TCP,IP协议是两个很重要的协议,就用他两命名了。
TCP/IP协议集包括应用层,传输层,网络层,网络访问层。
其中应用层包括:超文本传输协议(HTTP):万维网的基本协议;文件传输(TFTP简单文件传输协议);远程登录(Telnet),提供远程访问其它主机功能,它允许用户登录internet主机,并在这台主机上执行命令;网络管理(SNMP简单网络管理协议),该协议提供了监控网络设备的方法,以及配置管理,统计信息收集,性能管理及安全管理等;域名系统(DNS),该系统用于在internet中将域名及其公共广播的网络节点转换成IP地址. 

传输层:tcp或udp;tcp是一个面向连接的协议,著名的三次握手,四次挥手就是在确定连接的过程中发生的。

 网络层包括:    Internet协议(IP)  ;Internet控制信息协议(ICMP)   ;地址解析协议(ARP)    ;反向地址解析协议(RARP)  ;
 网络访问层:      网络访问层又称作主机到网络层(host-to-network).网络访问层的功能包括IP地址与物理地址硬件的映射,以及将IP封装成帧.基于不同硬件类型的网络接口,网络访问层定义了和物理介质的连接.

tcp和udp的具体区别:

1、双方都是一种网络传输协议
2、TCP需要建立连接,而UDP不需要建立连接(无连接传输)
3、是否建立真实连接的特性,造成了双方可靠性的差距。
   TCP属于可靠的传输协议:因为传输前双方建立好了连接,相当于买卖双方建立好了交易合同,传输中一般不会出现意外,直到连接终止;
   UDP属于不可靠的传输协议:UDP的所谓连接相当于一种映射,UDP单方面的认为目标地址(端口)是可用的,从而进行收发数据,而实际上目标地址(端口)未必可用,所以传输数据不可靠

4、由于TCP需要建立真实的连接,所以需要消耗服务器的负载要大于UDP。                                                                                     5、流模式(TCP)与数据报模式(UDP); 
6、TCP保证数据正确性,UDP可能丢包 TCP保证数据顺序,UDP不保证 

7、TCP提供可靠的服务。也就是说,通过TCP连接传送的数据,无差错,不丢失,不重复,且按序到达;UDP尽最大努力交付,即不保证可靠交付
8、TCP面向字节流,实际上是TCP把数据看成一连串无结构的字节流;                                                                                                         udp是面向报文的,UDP没有拥塞控制,因此网络出现拥塞不会使源主机的发送速率降低(对实时应用很有用,如IP电话,实       时视频会议等)
  
UDP应用场景:
  1.面向数据报方式
  2.网络数据大多为短消息 
  3.拥有大量Client
  4.对数据安全性无特殊要求
  5.网络负担非常重,但对响应速度要求高

猜你喜欢

转载自blog.csdn.net/leikun153/article/details/81237740