UDP和TCP区别
TCP
-
TCP协议概述
TCP(传输控制协议)定义了两台计算机之间进行可靠的传输而交换的数据和确认信息的格式,以及计算机为了确保数据的正确到达而采取的措施。
-
TCP协议特点:
面向连接的
传输数据可靠
传输速度慢
超时重传
需要三次握手、四次挥手 -
TCP三次握手
三次握手的过程:
1)第一次握手:建立连接时,客户端发送syn(syn=a)包到服务器,并进入SYN_SENT状态,等待服务器确认;SYN:同步序列编号
2)第二次握手:服务器收到syn包,必须确认客户的SYN(ack=a+1),同时自己也发送一个SYN包(syn=b),即SYN+ACK包,此时服务器进入SYN_RECV状态
3)第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=b+1),此包发送完毕,客户端和服务器进入ESTABLISHED(TCP连接成功)状态,完成三次握手
- TCP四次挥手
四次断开的过程:
1)客户端C发送一个FIN,用来关闭客户端到服务器S的数据传送
2)服务器S收到这个FIN,它发回一个ACK,确认序号为收到的序号加1。和SYN一样,一个FIN将占用一个序号
3)服务器S关闭与客户端C的连接,发送一个FIN给客户端C
4)客户端C发回ACK报文确认,并将确认序号设置为收到序号加1
UDP
-
UDP协议概念
UDP(用户数据报协议)是一个简单的面向数据报的传输层协议。提供的是非面向连接的、不可靠的数据流传输。UDP不提供可靠性,也不提供报文到达确认、排序以及流量控制等功能。
-
UDP的特点
面向无连接的
传输速度快
传输数据不可靠
TCP和UDP区别
- TCP是面向连接的,UDP是面向无连接的
- TCP是面向字节流的,UDP是基于数据报的
- TCP传输数据可靠,UDP传输数据不可靠
- TCP传输速度慢,UDP传输速度快
- TCP对资源耗费大,UDP对耗费资源小