netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Xin Long <lucien.xin@gmail.com>
To: network dev <netdev@vger.kernel.org>
Cc: davem@davemloft.net,
	Yasuyuki Kozakai <yasuyuki.kozakai@toshiba.co.jp>,
	Dmitry Kozlov <xeb@mail.ru>
Subject: [PATCH net-next 0/5] net: improve the process of redirect and toobig for ipv6 tunnels
Date: Sat, 11 Nov 2017 19:06:48 +0800	[thread overview]
Message-ID: <cover.1510398241.git.lucien.xin@gmail.com> (raw)

Now let's say there are 3 kinds of icmp packets to process for tunnels,
toobig(needfrag), redirect, others, their process should be:

 - toobig(needfrag)
   update the lower dst's pmtu by route cache, also update sk dst's pmtu
   if possible, or it will be fine if sk dst pmtu will get updated on tx
   path.

 - redirect
   update the lower dst's gw by route cache and return, no need to send
   this redirect packet to user sk.

 - others
   send the packet to user's sk, or it will also be fine to use err_count
   to count it and report fail link on tx path.

All ipv4 tunnels basically follow this while some of ipv6 tunnels are
doing in different ways, like ip6gre and ip6_tunnels update tnl dev's
mtu instead of updating lower dst pmtu, no redirect process on their
err_handlers, which doesn't make any sense and even causes performance
problems.

This patchset is to improve the process of redirect and toobig for ip6gre
ip4ip6, ip6ip6 tunnels, as in ipv4 tunnels.

Xin Long (5):
  ip6_gre: add the process for redirect in ip6gre_err
  ip6_gre: process toobig in a better way
  ip6_tunnel: add the process for redirect in ip6_tnl_err
  ip6_tunnel: process toobig in a better way
  ip6_tunnel: clean up ip4ip6 and ip6ip6's err_handlers

 net/ipv6/ip6_gre.c    | 20 ++++++----------
 net/ipv6/ip6_tunnel.c | 64 ++++++++++++++++++++++-----------------------------
 2 files changed, 34 insertions(+), 50 deletions(-)

-- 
2.1.0

             reply	other threads:[~2017-11-11 11:07 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-11-11 11:06 Xin Long [this message]
2017-11-11 11:06 ` [PATCH net-next 1/5] ip6_gre: add the process for redirect in ip6gre_err Xin Long
2017-11-11 11:06 ` [PATCH net-next 2/5] ip6_gre: process toobig in a better way Xin Long
2017-11-11 11:06 ` [PATCH net-next 3/5] ip6_tunnel: add the process for redirect in ip6_tnl_err Xin Long
2017-11-11 11:06 ` [PATCH net-next 4/5] ip6_tunnel: process toobig in a better way Xin Long
2017-11-11 11:06 ` [PATCH net-next 5/5] ip6_tunnel: clean up ip4ip6 and ip6ip6's err_handlers Xin Long
2017-11-13  1:44 ` [PATCH net-next 0/5] net: improve the process of redirect and toobig for ipv6 tunnels 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=cover.1510398241.git.lucien.xin@gmail.com \
    --to=lucien.xin@gmail.com \
    --cc=davem@davemloft.net \
    --cc=netdev@vger.kernel.org \
    --cc=xeb@mail.ru \
    --cc=yasuyuki.kozakai@toshiba.co.jp \
    /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).