netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: David Miller <davem@davemloft.net>
To: netdev@vger.kernel.org
Subject: [RFC PATCH 0/5] Cache PMTU/redirects in inetpeer
Date: Wed, 09 Feb 2011 22:12:49 -0800 (PST)	[thread overview]
Message-ID: <20110209.221249.112596220.davem@davemloft.net> (raw)


This is what I've been working on for the past several days.

Right now if the routing cache is turned off (by setting
rt_cache_rebuild_count to "0") several things stop working.

We never make use of any PMTU or redirect information we learn
via ICMP packets.  This is because when the routing cache is
off, we can't "find" the existing cached routes that match
the ICMP because we don't add them to the hash table.

This functionality loss is also a blocker for eliminating the
routing cache entirely.

Solve this by remembering this state in the inetpeer entries.

PMTU information now self-expires.  It gets validated when
cached routes are sanity checked via dst_ops->check().  At
expiration, the original RTAX_MTU metric value is restored.
So we don't have to invalidate the entire cached route just
because it's PMTU learned value has expired.

Similarly, we store redirect information in inetpeer too.
Except that currently my patches don't remember the "original"
gateway the route had, so we have to kill the route off when
we get a dst_ops->negative_advice() call on a redirected route.

Avoid this is easy to fix and I might do that soon.

These patches implement the PMTU/redirect bits in ipv4 only at the
moment, but I do have ipv6 patches I'm in the process of finishing
up.  I just wanted people to see this as soon as possible so that
I can start getting feedback.

And hey if people can test this stuff out that'd be awesome!  If
you've used these changes in an environment where you did hit PMTU
and redirects, please do let me know.

             reply	other threads:[~2011-02-10  6:12 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-02-10  6:12 David Miller [this message]
2011-02-10 23:09 ` [RFC PATCH 0/5] Cache PMTU/redirects in inetpeer David Miller
2011-02-15  5:46   ` David Miller

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=20110209.221249.112596220.davem@davemloft.net \
    --to=davem@davemloft.net \
    --cc=netdev@vger.kernel.org \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).