计算机网络--UDP和TCP课后习题

5-05 试举例说明有些应用程序愿意采用不可靠的UDP, 而不愿意采用可靠的TCP。

解答 这可能有以下几种情况。

首先,在互联网上传输实时数据的分组时,有可能会出现差错甚至丢失。如果利用****TCP **协议对这些出错或丢失的分组进行重传,那么时延就会大大增加。**因此,实时数据的传输在运 输层就应采用用户数据报协议UDP, 而 不 使 用TCP 协议。这就是说,对于传送实时数据,我们宁可丢失少量分组(当然不能丢失太多,否则重放的质量就太差了),也不要等待太晚到达 的分组。在连续的音频或视频数据流中,很少量分组的丢失对播放效果的影响并不大(因为这 是由人来进行主观评价的),因而是可以容忍的。在这种情况下,我们愿意采用不可靠的UDP,而不愿意采用可靠的TCP。

其次,当网络出现拥塞时,TCP 的拥塞控制就会让TCP 的发送方放慢报文段的发送。可****能有的应用程序就不愿意放慢其报文段的发送速度。

另****外,可能有的应用程序不需要TCP 的 可靠传输。


【5-06】 接收方收到有差错的UDP 用户数据报时应如何处理?

解答: 简单地丢弃。


5-07 如果应用程序愿意使用UDP 完成可靠传输,这可能吗?请说明理由。

解答 这是可能的,但这要由应用层自己来完成可靠传输。例如,应用层自己使用可靠传输协议。当然,这还是需要相当大的工作量的。


5-08 为什么说UDP 是面向报文的,而TCP 是面向字节流的?

解答

不论应用层发送的报文的长度如何,到了运输层后,TCP 总是把收到的报文看成是一串字节流,并且对每一个字节都进行编号。TCP 会根据当前网络的拥塞程度和对方接收缓存的大小,决定现在应当发送多长的报文段。TCP 关心的是:必须保证每一个字节都正确无误地传送到对方,而并不关心传送了多少个报文段和每个报文段包含多少个字节。这就表明TCP 是面向字节流的。

相关推荐
喵手1 小时前
网络编程:Java中的TCP与UDP通信!
java·udp·网络编程·tcp
Code Warrior2 小时前
【Linux】传输层协议UDP
linux·运维·udp
濊繵3 小时前
Linux网络--Socket 编程 TCP
linux·网络·tcp/ip
老蒋新思维4 小时前
紧跟郑滢轩,以 “学习力 +” 驱动 AI 与 IP 商业变革
网络·人工智能·学习·tcp/ip·企业管理·创始人ip·创客匠人
AIwenIPgeolocation5 小时前
IP种子技术:构建全球P2P网络实时监测方案
网络·tcp/ip·p2p
Kathleen1005 小时前
计算机网络——应用层
运维·服务器·计算机网络
小二·5 小时前
TCP/UDP/Socket/HTTP 网络编程高频面试题(47道 + 详细答案)
网络·tcp/ip·udp
霖006 小时前
ZYNQ——ultra scale+ IP 核详解与配置
服务器·开发语言·网络·笔记·网络协议·tcp/ip
夕小瑶6 小时前
从无形IP到AI万象,安谋科技Arm China“周易”X3 NPU 发布!
人工智能·科技·tcp/ip
Jason_Orton7 小时前
笔记本电脑触摸板失灵另类解决办法(I2C HID设备黄色感叹号)
运维·服务器·计算机网络·网络安全·电脑