资料目录
LWIP专区
格芯单片机LWIP协议栈笔记(8)---TCP与UDP协议的比较
发布日期:2011/12/30
Transmission Control Protocol 传输控制协议,,提供的是面向连接、可靠的字节流服务。当客户和服务器彼此交换数据前,必须先在双方之间建立一个TCP连接,之后才能传输数据。TCP提供超时重发,丢弃重复数据,检验数据,流量控制等功能,保证数据能从一端传到另一端。
UDP 是User Datagram Protocol的简称,是一个简单的面向数据报的运输层协议。UDP不提供可靠性,它只是把应用程序传给IP层的数据报发送出去,但是并不能保证它们能到达目的地。由于UDP在传输数据报前不用在客户和服务器之间建立一个连接,且没有超时重发等机制,故而传输速度很快。
|
|
TCP |
UDP |
|
可靠性 |
高,丢包后有重传机制,保证 数据的可靠性。 |
低,UDP不提供可靠的数据传输。该协议不能保证数据准确无误地到达目的地。 |
|
在OSI模型中的层次 |
传输层 |
传输层 |
|
数据传输,是否需要建立链接 |
必须先在双方之间建立一个TCP连接,之后才能传输数据。 |
UDP在传输数据报前不用在客户和服务器之间建立一个连接。 |
|
协议实现 |
复杂 |
简单 |
|
速度 |
慢,因为需要数据校验与确认,保证数据的可靠性。 |
快,因为无需保证数据准确无误 |
|
传输类型 |
字节流 |
数据报 |
|
应用场合 |
要求数据可靠高 |
对数据的完整性要求相对较低,但数据量较大,如音频流,视频流 |
|
主要应用 |
HTTP, FTP, TELNET, SMPT |
SNMP, DNS, NTP, OICQ |