欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

[TCP/IP] TCP流和UDP数据报之间的区别

程序员文章站 2022-03-31 20:57:24
TCP流和UDP数据报之间的区别 1.TCP本身是面向连接的协议,S和C之间要使用TCP,必须先建立连接,数据就在该连接上流动,可以是双向的,没有边界。所以叫数据流 ,占系统资源多 2.UDP不是面向连接的,不存在建立连接,释放连接,每个数据包都是独立的包,有边界,一般不会合并。 3.TCP保证数据 ......

tcp流和udp数据报之间的区别
1.tcp本身是面向连接的协议,s和c之间要使用tcp,必须先建立连接,数据就在该连接上流动,可以是双向的,没有边界。所以叫数据流 ,占系统资源多
2.udp不是面向连接的,不存在建立连接,释放连接,每个数据包都是独立的包,有边界,一般不会合并。
3.tcp保证数据正确性,udp可能丢包,tcp保证数据顺序,udp不保证


udp使用场景
1.需要资源少,在网络情况比较好的内网,或者对于丢包不敏感的应用。如dhcp协议就是基于udp的。一般的获取ip地址都是内网请求,而且一次获取不到ip又没事。
2.又比如基于udp的rtp,tftp,丢一帧数据问题也不大。再比如一些设备发现协议等等。
3.不需要一对一沟通,建立连接,而是可以广播的应用。dhcp就是一种广播的形式。vxlan也是需要用到组播,也是基于udp协议的。
4.需要处理速度快,时延低,可以容忍少数丢包,但是要求即便网络拥塞,也毫不退缩,一往无前的时候。quic是google提出的一种基于udp改进的通信协议,其目的是降低网络通信的延迟,提供更好的用户互动体验。

[TCP/IP] TCP流和UDP数据报之间的区别

 

[TCP/IP] TCP流和UDP数据报之间的区别