从低到高 物数网传会示用 (无数网传会使用)
从低到高 物数网传用
TCP建立链接需要经历三次握手
第一次:客户端主动向服务器发送访问请求,发送的数据包SYN=1,ACK=0,seq=x 表示请求建立链接,发出请求后状态由CLOSED切换为SYN-SENT。
第二次:服务器监听到客户端发出的数据包后,发送SYN=1,ACK=1,seq=y,ack=x+1的数据包,表示收到请求、同意建立链接,收到x的包并请求下一个包x+1,同时切换为SYN-RVD状态
第三次:客户端收到服务器发出的数据包后,发出新的数据包,ACK=1,seq=x+1,ack=y+1,表示收到服务端发送的包,开始建立链接,请求下一个包y+1。客户端切换为ESTAB-LISHED状态,表示已建立链接。服务端收到数据包后也切换为ESTAB-LISHED状态,表示已建立链接。
第一次:客户端主动发起结束请求,发送数据包FIN=1,seq=u,发出结束请求,状态切换为FIN-WAIT1
第二次:服务端收到客户端发出的数据包后,发出数据包ACK=1,seq=v,ack=u+1,表示收到客户端发送的结束请求。服务端状态切换为CLOSE-WAIT,客户端收到数据包后状态切换为FIN-WAIT2
第三次:服务端收到客户端发出的数据包后,同时发送数据包FIN=1,ACK=1,seq=w,ack=u+1,表示同意结束请求并请求下一个数据包,状态切换为LAST-ACK
第四次:客户端收到从服务端发送的TCP数据报文,发送 ACK=1,seq=u+1,ack=w+1 数据包,准备断开链接,状态切换为TIME-WAIT,等待2msl后自动关闭。服务器收到客户端数据后关闭链接,同时两端状态切换为CLOSED。
相同:
工作在传输层
不同:
tcp特性
面向连接协议
提供可靠的网络访问
全双工协议
半关闭
错误检查
将数据打包成段,排序
确认机制
数据恢复、重传
流量控制、滑动窗口
拥塞控制、慢启动和拥塞避免算法
udp特性
非面向连接协议
提供不可靠的网络访问
有限的错误检查
传输性能高
无数据恢复特性
原文:https://blog.51cto.com/u_13618052/2698501