如何TCP和UDP之间的区别?

2021年3月19日18:39:51 发表评论 839 次浏览

先决条件–传输层责任, TCP协议, UDP协议

传输控制协议(TCP) 用户数据报协议(UDP)
TCP是一种面向连接的协议。面向连接意味着通信设备应在传输数据之前建立连接, 并在传输数据之后关闭连接。 UDP是面向数据报的协议。这是因为打开连接, 维护连接和终止连接没有开销。 UDP对于广播和多播类型的网络传输非常有效。
TCP是可靠的, 因为它可以确保将数据传送到目标路由器。 在UDP中不能保证将数据传送到目标。
TCP提供了广泛的错误检查机制。这是因为它提供了流控制和数据确认。 UDP仅具有使用校验和的基本错误检查机制。
数据排序是传输控制协议(TCP)的功能。这意味着数据包按顺序到达接收器。 UDP中没有数据排序。如果需要订购, 则必须由应用程序层进行管理。
TCP比UDP慢。 UDP比TCP更快, 更简单, 更高效。
在TCP中可以重新传输丢失的数据包, 但在UDP中是不可能的。 用户数据报协议(UDP)中不会丢失数据包的重传。
TCP具有(20-80)字节的可变长度报头。 UDP具有8个字节的固定长度报头。
TCP是重量级的。 UDP是轻量级的。
TCP不支持广播。 UDP支持广播。
HTTP, HTTP, FTP, SMTP和Telnet使用TCP。 UDP由DNS, DHCP, TFTP, SNMP, RIP和VoIP使用。

一个简短的例子, 可以清楚地了解这些差异:

假设有两个房屋, H1和H2, 并且必须从H1到H2发送一封信。但是这两座房子之间有一条河。现在我们如何寄信?

解决方案1:在河上架桥, 然后将其交付。

解决方案2:通过鸽子运送。

将第一个解决方案视为TCP。必须进行连接(桥接)才能传递数据(字母)。

数据是可靠的, 因为它可以直接到达另一端而不会丢失数据或出错。

第二种解决方案是UDP。无需连接即可发送数据。

与需要建立连接(桥接)的TCP相比, 该过程速度更快。但是数据并不可靠:我们不知道这只鸽子会朝着正确的方向前进, 还是会在途中掉信或遇到一些问题。


木子山

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: