这里是Themberfue
传输层我们到这就已经差不多进入尾声了,这节我们主要做做扩展~~~
应用场景
- 通过之前的学习我们知道 UDP 协议 和 TCP 协议 的一些基本的机制,这两的差别就在于 UDP 是不可靠传输,而 TCP 是可靠传输。
- 但是,TCP 协议因为要保证可靠传输而引入了一些机制,这些机制会导致数据传输效率大幅下降,尽管 TCP 协议作出了很多优化,但其传输速度依然不敌 UDP 协议。
- 所以,两个协议应用的场景不尽相同。TCP 协议 适合应用在对数据传输速度要求不高的,但是数据必须可靠到达的场景。UDP 协议 适合应用在对数据传输速度要求高的,但是可靠性不高的场景。
UDP应用场景
实时通信和流媒体
- 视频直播、语音通话、在线游戏
- 这些场景对时延敏感,需要快速传输数据。
- 丢失少量数据包对整体体验影响不大。
- 如:一些直播平台、微信语音通话。
广播和多播通信
- 协议: 广播(Broadcast)和多播(Multicast)通信通常使用UDP。
- 应用:
- 局域网设备发现(如UPnP)。
- 网络中的节点间状态同步。
简单查询服务
- DNS查询
- DNS使用UDP快速响应客户端的域名解析请求。
- 不需要复杂的握手或连接管理。
轻量级数据传输
- 如:SNMP(简单网络管理协议)。
- 场景:监控设备状态的简单数据通信。
在线游戏
- 游戏场景下,实时性优先于可靠性(如玩家位置或动作信息)。
- 丢失一些数据不会影响整体体验,延迟过大反而会降低游戏体验。
总结
- 优点:
- 传输开销小。
- 时延低。
- 支持广播、多播。
- 缺点:
- 无可靠性保证,丢包、乱序、重复都需要应用层处理。
TCP应用场景
文件传输
- 协议: FTP、SFTP、HTTP/HTTPS。
- 场景:
- 文件下载、上传。
- 网站内容加载(如浏览网页)。
- 数据传输必须完整且准确。
电子邮件
- 协议: SMTP、POP3、IMAP。
- 场景:
- 邮件的发送、接收。
- 确保邮件内容不丢失、不重复。