问答题
考虑一个简单的应用级协议,它建立在UDP上,允许客户机检索一个驻留在周知的地址上的远程服务器上的一个文件。客户机首先发送一个带有文件名的请求,服务器用一系列数据分组应答,包含被请求文件的不同部分。为保证可靠性和有序投递,客户机和服务器使用停-等协议。忽略明显的性能问题,你看这个协议有什么问题吗?请仔细考虑处理崩溃的可能性。
【正确答案】
【答案解析】
客户有可能得到错误的文件。假定客户A发送一个对文件f1的请求,然后崩溃。接下来跟A在同一台机器上运行(具有同样的IP地址)的另一个客户B,把它的UDP套接口绑定到跟先前的客户A使用的端口相同的端口,请求文件f2。如果客户B的请求丢失了,当服务器对A的请求的应答到达时,客户B将接收它,并把它看成是对自己的请求的应答。
提交答案
关闭