TCP
TCP是Tranfer Control Protocol的 简称,是一种面向连接的端对端的保证可靠传输的协议。通过TCP协议传输,得到的是一个顺序的无差错的数据流。它能够提供两台计算机之间的可靠的数据流,HTTP、FTP、Telnet等应用都需要这种可靠的通信通道。
UDP
UDP是User Datagram Protocol的简称,是一种无连接的协议,每个数据报都是一个独立的信息,包括完整的源地址或目的地址,它在网络上以任何可能的路径传往目的地,因此能否到达目的地,到达目的地的时间以及内容的正确性都是不能被保证的。
UDP:
1.每个数据报中都给出了完整的地址信息,因此无需要建立发送方和接收方的连接。
2.UDP传输数据时是有大小限制的,每个被传输的数据报必须限定在64KB之内。
3.UDP是一个不可靠的协议,发送方所发送的数据报并不一定以相同的次序到达接收方
TCP:
1.面向连接的协议,在socket之间进行数据传输之前必然要建立连接,所以在TCP中需要连接时间。
2.TCP传输数据大小限制,一旦连接建立起来,双方的socket就可以按统一的格式传输大的数据。
3.TCP是一个可靠的协议,它确保接收方完全正确地获取发送方所发送的全部数据。
TCP协议和UDP协议的区别
TCP协议是传输控制协议,UDP协议是用户数据报协议,两者都是传输层的协议,主要区别在于前者是可靠的,面向连接的协议,后者是不可靠的,无连接的协议,其它的区别还有,TCP协议传输速度慢,UDP常用于一次性传传输比较少量数据的网络的应用
既然有了保证可靠传输的的TCP协议,为什么还要非可靠传输的UDP协议
- 可靠的传输是要付出代价的,对数据内容的正确性的检验必然会占用就计算机的处理时间和网络带宽。因此TCP的传输效率不如UDP高
- 许多应用中并不需要保证严格的传输可靠性,比如视频会议系统,,并不需要视频音频数据绝对正确,只要能够连贯就够了。所以在这些场景下,使用UDP更合适些
- List item