TCP和UDP的区别
1,TCP是面向连接的协议,UDP是无连接的协议;
2,TCP协议传输是可靠的,UDP协议传输“尽力而为‘’;
3,TCP可以进行流控,UDP不行;
4,TCP可以进行分段,UDP不行;
5,TCP传输速度较慢,只占用资源较大;UDP传输速度快,占用资源少;
TCP和UDP的应用场景:TCP更适合对传输可靠性要求较高,但是对速度要求较低的场景;
UDP更适合对速度要求较高,对可靠要求较低的场景(即使类通讯)
什么是面向连接
在正式传输数据前,先通过预备好的协议,建立点到点的链接,之后再传输数据。
TCP:
源端口号(16位) 目的端口号(16位)
序号(32位)
确认序号(4位)
首部长度(4位) 保留(6位) URG 紧急标记位 ACK 确认标记位 PSH RST 强制断开标记位 SYN请求标记位 FIN结束标记位 窗口大小(16位)
校验和(16位) 紧急指针(16位)
选项
数据
UDP:
16位源端口号 16位目的的端口号
16位UDP长度 16位UDP校验和
数据
伪头部校验---32位源IP地址,32位目标IP地址,8位保留,8位协议,16位总长度---反码相加法
TCP的三次握手
A SYN=1 SEQ=X B
A SAK=1,SYN=1 SEQ=Y B
ACK=X=1
A ACK=1.SEQ=X=1 B
ACK=Y=1
TCP的四次挥手
A FIN B
A ACK B
A FIN B
A ACK B
TCP传输可靠性的保障机制---确认,重传,排序,流空---滑动窗口机制
网络层---IP地址---IP