1.连接
TCP是⾯向连接的,在传输前需要三次握⼿建⽴连接,UDP不需要连接,即刻传输数据。
2、服务形式
TCP只能⼀对⼀,点对点服务,UDP⽀持⼀对⼀、⼀对多、多对多通信。
3、可靠性(传输的数据)
TCP保证数据可靠交付,拥有确认应答和重传机制,⽆重复、不丢失、按序到达;
UDP尽可能交付,不保证可靠性。
4、连接控制机制(传输路途)
TCP拥有流量控制、拥塞控制,保证传输安全性等,UDP在⽹络拥堵情况下不会降低发送速率。
5、⾸部⼤⼩
TCP⾸部⻓度不使⽤选项字段是20字节,使⽤选项字段⻓度增加(可变)
8 位 = 1 字节
UDP⾸部固定8字节。
6、数据格式
TCP基于字节流,没有边界,但是保证传输顺序和可靠性;
UDP继承了IP层特性,基于数据包,有边界可能出现乱序和丢包。
7、分⽚⽅式
TCP数据⼤于 MSS 时会在TCP层将数据进⾏分⽚传输,到达⽬的地后同样在传输层进⾏合并,如果有某个⽚丢失则只需要重传丢失的分⽚即可;
UDP数据⼤于MTU时会在IP层分⽚,同样也在⽬的IP层合并,如果某个IP分⽚丢失,则需要将所有分⽚都进⾏重传,开销⼤。
8.应用场景
TCP:FTP 文件传输;Http/Https
UDP:视频音频等多媒体通信;广播通知;包总量较少的通信,如 DNS ,SNMP