我相信有一些古老的传统原因造成了这种情况,但是它到底是什么呢?似乎它是一个专注于可靠数据传递的服务。
我相信有一些古老的传统原因造成了这种情况,但是它到底是什么呢?似乎它是一个专注于可靠数据传递的服务。
请注意,NFS v3+可以使用TCP。
UDP是NFSv2的默认选项(如今几乎无人使用),但NFSv3默认使用TCP。 TCP挂载更加可靠,而且您可以比使用UDP更快地确定网络问题。
当协议由应用程序本身管理时,使用UDP。应用程序可能对如何执行此操作有更好的想法,或者在特定应用程序条件下可能更快。TCP非常好,但与之相关的开销很大。
性能。UDP的开销比TCP低得多。另一方面,NFS必须自行处理可靠传输(与TCP相比),但由于这是用于局域网的协议,连接问题和数据包丢失不应该是问题,因此它被优化为性能。
我猜这可能是出于遗留(历史)原因。最初,NFS可能是在延迟低、几乎没有错误可能性的网络上使用的,因此启动三次握手以建立TCP连接(以及所有消息的双向确认)的开销超过了使用无连接协议UDP的简单性。
当UDP用作传输协议时,假定如果需要重新传输,将由NFS客户端来管理。