NFS client defaults to a mix of UDP and TCP
    Andriy Gapon 
    avg at icyb.net.ua
       
    Mon Sep 14 18:59:49 UTC 2009
    
    
  
on 14/09/2009 19:27 Rick Macklem said the following:
> 
> 
> On Mon, 14 Sep 2009, Andriy Gapon wrote:
> 
>> on 14/09/2009 15:58 John Baldwin said the following:
>>>
>>> Yes.  I know of folks would love to have NFS use only TCP, including the
>>> initial RPC portmapper requests.  IMO an NFS mount should use TCP for
>>> everything and a UDP mount should use UDP for everything by default.
>>>
>>
>> And another fact - it seems that NFS umount unconditionally uses UDP
>> for "something":
>>
>> /*
>> * Report to mountd-server which nfsname
>> * has been unmounted.
>> */
>> if (ai != NULL && !(fflag & MNT_FORCE) && do_rpc) {
>>        clp = clnt_create(hostp, MOUNTPROG, MOUNTVERS, "udp");
>> ...
>>
> Yep. This one is somewhat less critical IMO, since this RPC is just
> fyi for the mountd on the server and, if it fails for any reason, only
> normally affects the output of "showmount" and doesn't break the umount.
> (That doesn't mean I don't think it should be fixed, but it can be done
> separately from resolving what mount_nfs needs to default to.)
I agree. It's just that given the nature of UDP it takes a very long while for
umount to re-alize that nobody's listening in some situations.
-- 
Andriy Gapon
    
    
More information about the freebsd-current
mailing list