TCP和UDP都是传输层的协议,传输层的主要任务就是建立应用程序端对端的连接,并且为数据传输提供可靠或不可靠的通信服务。
TCP:提供面向连接的服务,在传送数据之前必须先建立连接,数据传送完成后要释放连接。
UDP:在传送数据前不需要先建立连接,远地的主机在收到UDP报文后也不需要给出任何确认。
TCP建立连接的过程?
TCP三次握手:
1、客户端向服务器发送连接请求,请求中包含连接请求的同步序号SYN=1和自身序列号seq=x。
2、服务器收到客户端的请求后,同意建立连接;向客户端发送一条确认报文,其中包含同步序号SYN=1,确认ACK=1,确认号ack=x+1还有自身序列号seq=y。
3、客户端收到服务器发来的确认报文之后会向服务器也发送一条确认报文,ACK=1,seq=x+1,ack=y+1。
4、当服务器收到客户端发送过来的确认报文之后,双方建立了连接,可以开始通信了。
TCP四次挥手:
1、客户端向服务器发送一条终止报文,包含终