2003-05-27 23:40:58

by David Myer

[permalink] [raw]
Subject: NFS over TCP

I have a few questions doing NFS mount over TCP in
kernel 2.4.18.

1) Doing a few mount operations, I noticed that
sometimes it uses V3 GETATTR call and sometimes it
uses V2 GETATTR call, how does client ( or server )
decide witch version to use ? Strange enough, in case
it did use V3 GETATTR, the prior GETPORT is V2.. does
this make a difference later on ?

2) In reply to the V2 GETATTR call, server reply to
the client socket (port 800) with ACK, then send
another packet ( with PSH/ACK flags on ) with
requested data to port 799,this causes RST from the
client. Anyone seen this behavior of decrementing dest
port ( client port number ) by one ?

Thanks
Dave

__________________________________
Do you Yahoo!?
The New Yahoo! Search - Faster. Easier. Bingo.
http://search.yahoo.com


-------------------------------------------------------
This SF.net email is sponsored by: ObjectStore.
If flattening out C++ or Java code to make your application fit in a
relational database is painful, don't do it! Check out ObjectStore.
Now part of Progress Software. http://www.objectstore.net/sourceforge
_______________________________________________
NFS maillist - [email protected]
https://lists.sourceforge.net/lists/listinfo/nfs


2003-05-28 12:39:12

by Trond Myklebust

[permalink] [raw]
Subject: Re: NFS over TCP

>>>>> " " == David Myer <[email protected]> writes:

> 1) Doing a few mount operations, I noticed that
> sometimes it uses V3 GETATTR call and sometimes it uses V2
> GETATTR call, how does client ( or server ) decide witch
> version to use ? Strange enough, in case it did use V3 GETATTR,
> the prior GETPORT is V2.. does this make a difference later on
> ?

The kernel will switch to NFSv2 if v3 is not available. To determine
whether or not v3 is available, the server's portmapper is consulted.

> 2) In reply to the V2 GETATTR call, server reply to
> the client socket (port 800) with ACK, then send another packet
> ( with PSH/ACK flags on ) with requested data to port 799,this
> causes RST from the client. Anyone seen this behavior of
> decrementing dest port ( client port number ) by one ?

Huh? TCP is a connection oriented protocol. The server does not get to
choose which port to send a reply to. Are you sure you are not
confusing MOUNT and NFS requests here?

Cheers,
Trond


-------------------------------------------------------
This SF.net email is sponsored by: ObjectStore.
If flattening out C++ or Java code to make your application fit in a
relational database is painful, don't do it! Check out ObjectStore.
Now part of Progress Software. http://www.objectstore.net/sourceforge
_______________________________________________
NFS maillist - [email protected]
https://lists.sourceforge.net/lists/listinfo/nfs