TCP和UDP的主要区别如下:
1. TCP是可靠传输,UDP是不可靠传输。
2. TCP面向连接的协议,通信前需要先建立连接,然后进行数据传输,UDP没有连接的协议,通信时双方直接进行数据传输。
3. TCP是以字节流的形式进行传输,UDP是以数据报的形式传输数据。
4. TCP因为需要建立连接和保证可靠性,具有较高延迟,UDP不需要进行连接和可靠性保证,低延迟。
5. TCP不保存数据边界,UDP保留数据边界。
6. TCP保证传输数据有序,UDP不保证数据的有序。
当我们选择如何使用它们时,通常可以考虑一些情况,然后再选择是使用TCP还是UDP,那么因为TCP对数据可靠性要求高,可以通过序列号,确认应答并且可以重传机制来确保数据的完整性和顺序性,所以我们通常会选择需要确保数据完整性和按序到达的情况,比如说文件传输、数据库操作等。TCP也具有流控制和拥塞控制机制,可以防止阻塞发生,所以根据这个特点在面对复杂的网络环境情况下考虑TCP传输,而UDP具有低延迟和高效性特点,所以通常在视频会议,直播和实时游戏中用到
HTTP、HTTPS、FTP、TELNET、SMTP(简单邮件传输协议)协议基于可靠的TCP协议。TFTP、DNS、DHCP、TFTP、SNMP(简单网络管理协议)、RIP基于不可靠的UDP协议