应用程序的开发必然要对下层的TCP应用层协议进行选择:
取UDP协议的情况:
(1)应用协议指明必须用UDP,假定应用协议已设计了可靠性和交付差错的内容
(2)应用程序协议要依赖硬件进行广播或组播
(3)应用协议不能容忍TCP虚电路的额外计算开销或时延要求
有状态与无状态的服务器的选择
(1)有状态server要保持一定的状态信息,并且要能正确的维护,对于真实的互连网中,机器可能崩溃或重启动,而报文可能丢失,重复,失序,采用有状态server会复杂化应用协议,这种协议难于理解,设计与编程
(2)无状态的server是一个协议问题,要避免出现问题:应用协议必须确保报文无二义性,也就是说一个报文既不能依赖于被按序交付,也不能依赖于前一个报文已被交付,关键是协议构建者必须达到"一个请求何时到达或多次到达,服务器都应给出正确的响应
阅读(1074) | 评论(0) | 转发(0) |