udp与tcp数据包丢弃

udp与tcp数据包丢弃,tcp,udp,transport,Tcp,Udp,Transport,如果我通过网络发送两个数据包,一个是UDP数据包,另一个是TCP数据包,哪个数据包更有可能到达目的地?我被告知TCP协议更安全,但这是因为它的“故障安全”机制。但是,这是否也意味着UDP数据包更有可能在传输过程中出现故障 我认为这与具体的路由器实现有关,因为一方面,如果UDP数据包消失,那么双方可能都知道可能会发生这种情况,并且能够承受一两个数据包的丢失,但另一方面,如果TCP数据包消失,那么通过它的“故障安全”机制,它将发送另一个数据包并解决问题,TCP数据包要重得多。 我想对这个问题有一个更

如果我通过网络发送两个数据包,一个是UDP数据包,另一个是TCP数据包,哪个数据包更有可能到达目的地?我被告知TCP协议更安全,但这是因为它的“故障安全”机制。但是,这是否也意味着UDP数据包更有可能在传输过程中出现故障

我认为这与具体的路由器实现有关,因为一方面,如果UDP数据包消失,那么双方可能都知道可能会发生这种情况,并且能够承受一两个数据包的丢失,但另一方面,如果TCP数据包消失,那么通过它的“故障安全”机制,它将发送另一个数据包并解决问题,TCP数据包要重得多。
我想对这个问题有一个更确切的答案,因为我觉得这个主题很有趣

如果您正在决定应用程序使用哪种协议,您确实需要更详细地研究这两种协议。下面只是一个概述

TCP是一种流协议,它提供了几种传输机制:按顺序保证数据的传输。它将控制数据的发送速率(它将开始缓慢传输,然后提高速度,直到达到对等方可以承受的速率)。它将重新发送在另一端未接收到的任何数据。要做到这一点,您需要付出代价(例如启动缓慢、需要确认收到的所有数据等)

另一端的UDP是“数据块”(数据报)协议,不提供完整性/速率/顺序检查。它通过(潜在)更快来“补偿”:您尽可能快地输出数据,另一方以全网络速度接收它能够捕获的任何数据,在极端情况下。不保证数据到达另一方的交付或订单。它们要么接收整个数据报,要么什么也不接收

人们通常做出的任何决定都与数据丢失的可能性无关,而是与数据丢失的关键性无关。视频流是通过UDP进行多次的,因为缺少偶尔的数据报没有平滑图像那么重要。文件传输不能承受任何数据丢失或数据块反转,因此TCP是自然选择


除了这个问题,记住网络协议只是你问题的一半。另一半正在提出应用程序协议,以交互您正在接收的字节…

您已经自相矛盾了。TCP具有可靠性特征,那么为什么它取决于路由器的实现呢?