TCP | UDP | |
是否面向连接 | 面向连接(传输数据之前需要建立连接,传输结束需要关闭连接); | 无连接(传输数据之前不需要建立连接,远程主机接收UDP报文也不需要返回确认); |
服务对象个数 | 一对一 | 一对多 |
传输可靠性 | 可靠(可靠性体现在三次握手和四次挥手上),数据可以无差错、不丢失重复; | 不可靠,尽最大努力交付; |
流量控制 | 有 | 无 |
拥塞控制 | 有 | 无 |
重传机制 | 有 | 无 |
传输形式 | 字节流,没有边界,保证顺序和可靠; | 数据报文,一个包一个包发送,有界,可能丢包或乱序; |
传输效率 | 慢 | 块 |
消耗资源 | 多 | 少 |
应用场景 |
|
|
头部占用字节 | 20-60,在没有使用选项字段时是20字节; | 8个字节(),且并非固定不变; |
首部长度 | 4位,TCP存在可变长的选项,需要有此字段; | 因为是头部长度固定,所以没有首部长度字段; |
分片不同 |
|
|
包长度字段 |
|
|
可能参考了小林图解网络、马士兵、或者JavaGuide,整理综合了一波;因为是笔记的整理,所以也确实不太清楚当时看的谁的了,可能都看了;(惭愧,当当是呆呆)