文章目录
- 1、常见误区
- 2、TCP和UDP的区别和应用场景
- 3、使用了它们的协议有哪些?
- 4、总结
我之前的文章中讲解即时通讯系统中,就用到了可靠传输协议TCP,在那里面我们解决了TCP传输中的半包和黏包,而且还实际的讨论了用了TCP,就不会丢消息了吗?一定是可靠的吗?这里我们再次详细的说一说TCP
1、常见误区
TCP/UDP是两个比较具有代表性的传输层协议
,那么我们来看看他在OSI七层协议和TCP/IP四层协议中的位置。
我们一谈TCP就是可靠,但是这个可靠是可靠在哪的呢,只要用了就不用考虑其他的事情了吗?
当然不是,TCP保证的可靠性
,是传输层的可靠性
,也就是说,TCP只会保证数据从A方的传输层可靠的传输到B方的传输层,至于后面的步骤,可靠性就得不到保证了。
2、TCP和UDP的区别和应用场景
TCP | UDP | |
---|---|---|
可靠性 | 可靠 | 不可靠 |
连接性 | 面向连接 | 无连接 |
报文 | 面向字节流 | 面向报文 |
效率 | 传输效率低 | 传输效率高 |
双工性 | 全双工 | 一对一、一对多、多对一、多对多 |
流量控制 | 滑动窗口 | 无 |
拥塞控制 | 慢开始、拥塞避免、快重传、快恢复 | 无 |
传输速度 | 慢 | 快 |
应用场景 | 对效率要求低,对准确性要求高或者要求有链接的场景,如文件传输、发送和接收邮件、远程登录 | 对效率要求高,对准确性要求低,如语音、 视频、直播 |
3、使用了它们的协议有哪些?
使用了TCP的有
协议 | 介绍 |
---|---|
HTTP协议 | 超文本传输协议是一种用于传输超文本和多媒体内容的协议,主要是为 Web 浏览器与 Web 服务器之间的通信而设计的 |
HTTPS协议 | 更安全的超文本传输协议,身披 SSL 外衣的 HTTP 协议 |
FTP协议 | 文件传输协议 FTP是一种用于在计算机之间传输文件的协议,可以屏蔽操作系统和文件存储方式 |
SMTP协议 | 简单邮件传输协议的缩写,是一种用于发送电子邮件的协议 |
SSH协议 | SSH是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。 |
使用了UDP的有
协议 | 介绍 |
---|---|
DHCP 协议 | 动态主机配置协议,动态配置 IP 地址 |
DNS | 域名系统将人类可读的域名 (例如,www.baidu.com) 转换为机器可读的 IP 地址 (例如,220.181.38.148) |
4、总结
- TCP可靠是可靠在传输层面上的,我们使用的时候一定要注意。
- TCP 用于在传输层有必要实现可靠传输的情况;UDP 主要用于那些对高速传输和实时性有较高要求的通信或广播通信,TCP 和 UDP 应该根据应用的目的按需使用