UDP не имеет состояния, TCP - нет, но в TCP есть много предопределенных свойств, которые не подходят для NFS, или, скорее, NFS хочет управлять спецификой. В частности, когда TCP выполняет передачу пакетов, он управляет таймаутами и т. Д.
С UDP вы теряете накладные расходы, которые вам особенно не нужны. Когда файловая система NFS, как первоначально думали, система выполняет запись, и если она завершится только наполовину, это было бы плохо ... поэтому NFS (в жестком режиме) продолжит повторять попытку, чтобы завершить транзакцию навсегда, 1 минута, 5, 10 и час, день ... когда соединение возвращается, транзакция может продолжаться до завершения ...
NFS следит за «состоянием» вместо TCP, конструкция которого устанавливает новое состояние на новом соединении (или переподключении), это соединение (и состояние) может умереть по какой-либо (аппаратной) причине, и новое соединение не будет ' сохранить это состояние ... Подумайте об обработке файла ... вы просто оставляете процесс в покое, соединение NFS прерывается на некоторое время, но когда оно возвращается, все просто продолжается. В наши дни приложения умнее, маршруты их много, вещи более модульные, и мы гораздо более нетерпеливы ... если это не планируется ... кто-то получает телефонный звонок и должен войти в систему и запустить его в любом случае, как они могут ... назад в тот день Когда его можно было оставить, это было более цельно ... Способ, которым он работает, все еще хорош сегодня, но теперь у него гораздо больше возможностей, и, как правило, сейчас все больше людей исправляют все быстрее. Кроме того, идея о том, чтобы каждый конец передавал объекты сеанса назад и вперед, а не фиксировал между заданиями, пока обе стороны не согласятся, что они сделали - назад, в тот день, NFS многое сделала для вас ...
Аналогия в чем-то похожа на работу RS232 ... электроника сделает свое дело и загрузит свои буферы и заполнится и будет вынуждена остановиться (или потерять информацию), они могли бы пропустить этот поток информации (и пусто) их буферы и продолжаются), когда CTS (Очистить, чтобы отправить штифт, как металлический штифт на штекере) был высоким или низким (каким бы он ни был).