> On Aug 6, 2018, at 12:06 PM, Olga Kornievskaia <aglo@xxxxxxxxx> wrote: > > On Mon, Aug 6, 2018 at 10:46 AM, Chuck Lever <chuck.lever@xxxxxxxxxx> wrote: >> >> >>> On Aug 2, 2018, at 12:42 PM, Olga Kornievskaia <aglo@xxxxxxxxx> wrote: >>> >>> On Thu, Aug 2, 2018 at 11:14 AM, Olga Kornievskaia <aglo@xxxxxxxxx> wrote: >>>> Hi folks, >>>> >>>> There is no documentation of this behavior but when "noresvport" is >>>> specified, the client will not try to re-use the port upon connection >>>> re-establishement. Is this an oversight or a desired behavior (ie., >>>> client doesn't need to be conservative and re-use ports)? >>>> >>>> Thank you. >>> >>> I'm going to speculate on the reason myself and would like to hear >>> some folks thoughts. >>> >>> When we specify "noresvport" we use port=0 value that tells the kernel >>> - use any port. When connection is re-established port=0 so NFS has no >>> control over which port the kernel will choose. >>> >>> When client re-establishes the connection with a different port, that >>> has an effect on the server's replay cache. Any thoughts on that? >>> >>> Should the client remember which non-privileged port it used and then >>> the next time request a specific port? >> >> The basic constraint is that: >> >> If the client actively disconnects, or if the client is using an NFSv4 >> session, then for a fresh connection the client is free to use any >> available source port in the range selected by the "resvport" mount >> option. >> >> If there is no NFSv4 session and the server or the network transport >> actively disconnects (say, due to a keep-alive timeout), the client >> should attempt to use the same source port as the previous connection >> in order to preserve DRC content on the server. > > Hi Chuck, > > Thanks for the reply. I'm considering your 2nd case where the server > reset the connection and client is re-establishing it and this is a v3 > mount (this DRC is important). When "noresvport" is specified, then > the kernel makes no attempts at re-use the same non-reserved port. > However, I'm not sure it is possible to re-use a non-reserved port. Why do you believe that? > Given this behavior, shouldn't we be discouraging folks to mount with > v3 and "noresvport" option? -- Chuck Lever -- To unsubscribe from this list: send the line "unsubscribe linux-nfs" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html