TCP和UDP协议
目录
TCP和UDP的区别
我们大多数人的回答是,TCP是面向连接的,UDP是面向无连接的。
那么什么是面向连接,什么是面向无连接?,再互通之前,面向连接的协议会先建立连接,例如:TCP会三次握手, 而UDP不会。
所谓的建立连接,是为了在客户端和服务端维护连接,而建立一定的数据结构来维护双方交互的状态,用这样的数据结构来保证所谓的面向连接的特性。
例如:TCP提供可靠交付
- 无差错
- 不丢失
- 不重复
- 按序到达
而UDP更像,前面那讲提到过的,IP包,不保证不丢失,不保证按顺序到达
再比如,TCP面向字节流,发送没头没尾,IP包是一个一个的包,UDP继承了IP的特性,基于数据报,一个一个发,一个一个收
还有TCP是有拥塞控制的,可以根据情况调整自己的行为,看看是不是发快了,要不要发慢一点,UDP就不会,应用让我发,我就发,管它能不能接收
所以也可以说,TCP其实是有一个有状态服务,通俗的讲就是有脑子的,错一点都不行,而UDP是无状态服务,没有脑子,像发啥就发出去了
我们可以这样比喻,如果 MAC 层定义了本地局域网的传输行为,IP 层定义了整个网络端到端的传输行为,这两层基本定义了这样的基因:网络传输是以包为单位的,二层叫帧,网络层叫包,传输层叫段。我们笼统地称为包。包单独传输,自行选路,在不同的设备封装解封装,不保证到达。基于这个基因,生下来的孩子 UDP 完全继承了这些特性,几乎没有自己的思想。
UDP
特点:
- 沟通简单,没有大量的数据结构,处理逻辑,包头字段
- 可以传多个数据,也可以接收多个数据
- 不知道什么时候该进行发包的拥塞控制,无论网络丢包成啥样了,它该怎么发还怎么发
使用场景
第一,需要资源少,在网络情况比较好的内网,或者对于丢包不敏感的应用
DHCP 就是基于 UDP 协议的。一般的获取 IP 地址都是内网请求,而且一次获取不到 IP 又没事,
这篇好文章是转载于:学新通技术网
- 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
- 本站站名: 学新通技术网
- 本文地址: /boutique/detail/tanhfiajie
系列文章
更多
同类精品
更多
-
photoshop保存的图片太大微信发不了怎么办
PHP中文网 06-15 -
《学习通》视频自动暂停处理方法
HelloWorld317 07-05 -
word里面弄一个表格后上面的标题会跑到下面怎么办
PHP中文网 06-20 -
Android 11 保存文件到外部存储,并分享文件
Luke 10-12 -
photoshop扩展功能面板显示灰色怎么办
PHP中文网 06-14 -
微信公众号没有声音提示怎么办
PHP中文网 03-31 -
excel下划线不显示怎么办
PHP中文网 06-23 -
excel打印预览压线压字怎么办
PHP中文网 06-22 -
TikTok加速器哪个好免费的TK加速器推荐
TK小达人 10-01 -
怎样阻止微信小程序自动打开
PHP中文网 06-13