TCP
TCP代表传输控制协议,是一种面向连接的传输层协议。它通过网络在连接的机器之间提供可靠的连接和受保护的数据传输。它首先建立安全链接,然后发送数据。
TCP以数据块的形式将数据从一个设备发送到另一个设备。它在数据传输上完全慢,但在系统中具有更多的功能,例如流量控制、错误控制和拥塞控制。TCP报头为20-60字节,因此它包含几条信息以提高可靠性。但是,开销增加了。由于其可靠性,HTTP、FTP等协议使用TCP在网络上正确传输数据。
UDP
UDP代表用户数据报协议,是一种传输层无连接协议。它提供了通过网络在连接机器之间快速传输数据。在UDP中没有创建、维护和终止连接的开销。
它主要用于在我们无法承受任何传输延迟的情况下传输实时数据。UDP以连续数据流的形式将数据从一台设备发送到另一台设备。
UDP报头的大小是固定的,即8个字节。它不可靠,但速度更快。由于其传输速度,DNS、DHCP、RIP等协议使用UDP在网络上正确传输数据。
TCP和UDP的比较
TCP和UDP的主要区别如下:
基本 | TCP | UDP | Full-Form | TCP代表传输控制协议。 | UDPstandsforUser
DatagramProtocol. |
定义 | TCP在发送数据之前在计算机之间建立连接。 | UDPsendsthedatadirectly
tothedestinationcomputer
withoutcheckingwhether
thesystemisreadyto
receiveitornot. |
连接类型 | 它是一种面向连接的协议,表示应该在数据传输之前建立的连接。一旦发送方和接收方之间的通信结束,通信设备应该结束或移除连接。 | ItisaConnectionless
protocolrepresentingno
compulsionforcreating,
maintainingandremovinga
connectionbetweensource
anddestinationend.Itis
bestapplicablefor
broadcastandmulticast
purposes. |
可靠的 | TCP是一种可靠的协议,因为它可以确保数据包的传送。 | UDPisanunreliable
protocol.Itdoesnotaffect
theguaranteeforthe
deliveryofpackets. |
重传 | 管理所有数据的交付,并自动重新传输丢失的数据。 | Itisnotperformed.An
applicationmustdetectlost
dataandretransmit |
用法 | TCP适用于需要高可靠性以及传输时间相对不那么重要的应用程序。 | UDPisrelevantfor
applicationsthatrequire
fast,effectivetransmission,
suchasgames.UDP's
statelessnatureisalso
helpfulforserversthat
answersmallqueriesfrom
hugenumbersofclients. |
错误检查 | TCP通过使用校验和来执行错误检查。当信息被更正后,数据被重新传输到接收器。 | Itdoesnotimplementany
errorcheckingandalso
doesnotresendthelost
datapackets. |
数据流 | 数据以字节流的形式学习,没有特定的指示传达给信号消息(段)边界。 | 数据包是单独发送的,只有在它们到达时才确定其完整性。数据包在接收时具有明确的边界,这意味着接收方套接字上的读取操作将产生最初发送的完整消息。 |