TCP 和 UDP 是 TCP/IP 协议栈中传输层的两个协议,它们使用 IP 路由功能
把数据包发送到目的地,从而为应用程序及应用层协议(包括:HTTP、SMTP、
SNMP、FTP 和 Telnet)提供网络服务。
TCP 的 server 和 client 之间通信就好比两个人打电话,需要互相知道
对方的电话号码,然后开始对话。所以在两者的连接过程中间需要指定端口
和地址。
UDP 的 server 和 client 之间的通信就像两个人互相发信。我只需要知
道对方的地址,然后就发信过去。对方是否收到我不知道,也不需要专门对口令似的来建立连接。具体区别如下:
1)TCP 是面向连接的传输。UDP 是无连接的传输
2)TCP 有流量控制、拥塞控制,检验数据数据按序到达,而 UDP 则相
反。
3)TCP 的路由选择只发生在建立连接的时候,而 UDP 的每个报文都要
进行路由选择
4)TCP 是可靠性传输,他的可靠性是由超时重发机制实现的,而 UDP
则是不可靠传输
5)UDP 因为少了很多控制信息,所以传输速度比 TCP 速度快
6)TCP 适合用于传输大量数据,UDP 适合用于传输小量数据