All of lore.kernel.org
 help / color / mirror / Atom feed
From: Olaf Kirch <okir@suse.de>
To: "Lever, Charles" <Charles.Lever@netapp.com>
Cc: Trond Myklebust <trond.myklebust@fys.uio.no>,
	Ian Kent <raven@themaw.net>, Charles Lever <cel@citi.umich.edu>,
	nfs@lists.sourceforge.net
Subject: Re: [PATCH] Fix xprt_bindresvport range
Date: Mon, 28 Feb 2005 17:57:53 +0100	[thread overview]
Message-ID: <20050228165753.GB27975@suse.de> (raw)
In-Reply-To: <482A3FA0050D21419C269D13989C6113085397DA@lavender-fe.eng.netapp.com>

Hi Chuck,

> the new RPC client transport switch patches implement this feature.
> after a major timeout, the FSM invokes a transport switch callout.  for
> TCP sockets, this callout will invoke xprt_disconnect.  we may want to
> go farther and actually close the socket at that point instead of just
> marking it as a zombie, just to speed the reconnect process along.

Good to hear!

> by adding in features such as SO_REUSEADDR and limiting the linger
> timeout on TCP connections, it's more reasonable to expect that the DRC
> will be effective during a TCP timeout.

I'm not a friend of SO_REUSEADDR, at least on the client side. Using
reuseaddr on the client doesn't make any sense. If you use it, your bind()
will succeed, but then your connect() call may fail because there already
is a connection to the same destination with the same source port.
reuseaddr really is just a server side thing, IMO.

> with NFSv4.1 sessions, the DRC size is capped.  by using a sequence
> number, sessions allow the server to retire cache entries sanely after
> an RPC is completed on the client, so this problem gets a lot easier.

We could probably do something similar for NFSv3 if we limit the number of
entries per client to some fixed value (say 4 or 8). Enforcing that limit in a
sane way would require that we no longer hash by XID but by a combination
of client IP and client port. This would put all cache entries of a single
client on the same hash chain, which would allow us to count them as we
search the chain.

Olaf
-- 
Olaf Kirch   |  --- o --- Nous sommes du soleil we love when we play
okir@suse.de |    / | \   sol.dhoop.naytheet.ah kin.ir.samse.qurax


-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click
_______________________________________________
NFS maillist  -  NFS@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/nfs

  reply	other threads:[~2005-02-28 16:57 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-02-28 16:41 [PATCH] Fix xprt_bindresvport range Lever, Charles
2005-02-28 16:57 ` Olaf Kirch [this message]
  -- strict thread matches above, loose matches on Subject: below --
2005-02-23 17:05 Lever, Charles
2005-02-23 16:28 Olaf Kirch
2005-02-23 16:35 ` Trond Myklebust
2005-02-24  2:59   ` Ian Kent
2005-02-24  4:23     ` Trond Myklebust
2005-02-24 10:14       ` Olaf Kirch
2005-02-24 18:12         ` Trond Myklebust
2005-02-25  9:28           ` Olaf Kirch
2005-02-25 17:30             ` Trond Myklebust
2005-02-28 11:33               ` Olaf Kirch
2005-02-25  0:54       ` Ian Kent

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20050228165753.GB27975@suse.de \
    --to=okir@suse.de \
    --cc=Charles.Lever@netapp.com \
    --cc=cel@citi.umich.edu \
    --cc=nfs@lists.sourceforge.net \
    --cc=raven@themaw.net \
    --cc=trond.myklebust@fys.uio.no \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.