netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Nivedita Singhvi <niv@us.ibm.com>
To: Andi Kleen <ak@muc.de>
Cc: "David S. Miller" <davem@davemloft.net>,
	netdev@oss.sgi.com, akepner@sgi.com
Subject: Re: [RFC/PATCH] "strict" ipv4 reassembly
Date: Tue, 17 May 2005 12:01:26 -0700	[thread overview]
Message-ID: <428A3F86.1020000@us.ibm.com> (raw)
In-Reply-To: <m1zmut7l5q.fsf@muc.de>

Andi Kleen wrote:

> "David S. Miller" <davem@davemloft.net> writes:
> 
> 
>>From: Arthur Kepner <akepner@sgi.com>
>>Date: Tue, 17 May 2005 09:18:26 -0700 (PDT)
>>
>>
>>>  1) Fragments must arrive in order (or in reverse order) -
>>>     out of order fragments are dropped. 
>>
>>Even the most simplistic flow over the real internet
>>can get slight packet reordering.
>>
>>Heck, reordering happens on SMP on any network.
>>
>>IP is supposed to be resilient to side effects of network
>>topology, and one such common side effect is packet reordering.
>>It's common, it's fine, and the networking stack deals with it
>>gracefully.  Strict reassembly does not.
> 
> 
> If anything it would be better as a per route flag.
> Then you could set it only for your local network
> where you know Gigabit happens and reordering might
> be avoidable in some cases.
> 
> -Andi
> 
> P.S.: Arthur I think your arguments would have more
> force if you published the test program that demonstrates the
> corruption.

When we first ran into this, the dropping of
out-of-order fragments and overlapped fragments
was considered by us, but we finally did not
employ it precisely because of the ordering
requirement.

This is a fast LAN problem - real internet latencies
don't allow for the wrapping of the id field that fast.

Reordering does happen frequently on an SMP (this was
a non-NAPI environment, NAPI reduces it quite a bit)
so even local gigabit low latency LANs tend to suffer
from it. You really need to be running on a UP to be
entirely safe.

The problem is exacerbated by NFS mount sizes of at least
4K or 8K - thus running NFS over UDP is just an
environment you have to avoid in any case. That doesn't
take care of the other apps, of course.

So you cannot deploy a solution like this over all
interfaces and all routes - perhaps, as Andi says,
a per-route flag (turned on by the sysadmin when
running on a UP or NAPI case) might help. But you'd
have to do this very carefully.

thanks,
Nivedita

  parent reply	other threads:[~2005-05-17 19:01 UTC|newest]

Thread overview: 80+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-05-17 16:18 [RFC/PATCH] "strict" ipv4 reassembly Arthur Kepner
2005-05-17 17:49 ` David S. Miller
2005-05-17 18:28   ` Arthur Kepner
2005-05-17 18:48     ` David S. Miller
2005-05-17 20:21       ` Arthur Kepner
2005-05-17 18:38   ` Andi Kleen
2005-05-17 18:45     ` Pekka Savola
2005-05-17 18:50     ` David S. Miller
2005-05-17 18:56       ` Rick Jones
2005-05-17 18:57     ` John Heffner
2005-05-17 19:09       ` David S. Miller
2005-05-17 19:21         ` Rick Jones
2005-05-17 19:26         ` Ben Greear
2005-05-17 20:48         ` Thomas Graf
2005-05-17 19:17       ` Andi Kleen
2005-05-17 19:56         ` David Stevens
2005-05-17 20:17           ` Andi Kleen
2005-05-17 20:22             ` David S. Miller
2005-05-17 20:27               ` Andi Kleen
2005-05-17 21:02                 ` David S. Miller
2005-05-17 21:13                   ` Andi Kleen
2005-05-17 21:24                     ` David S. Miller
2005-05-17 21:25                   ` Rick Jones
2005-05-17 22:06                     ` Arthur Kepner
2005-05-17 22:18                       ` Rick Jones
2005-05-17 22:40                         ` David Stevens
2005-05-17 23:11                           ` Herbert Xu
2005-05-17 23:20                             ` Arthur Kepner
2005-05-17 23:25                               ` Herbert Xu
2005-05-17 23:55                                 ` David Stevens
2005-05-18  0:00                                   ` Herbert Xu
2005-05-18  0:04                                 ` Andi Kleen
2005-05-18  0:09                                   ` Herbert Xu
2005-05-18  0:52                                     ` David S. Miller
2005-05-18  0:06                                 ` Nivedita Singhvi
2005-05-18  0:10                                   ` Herbert Xu
2005-05-18  0:51                                     ` David S. Miller
2005-05-18  1:05                                       ` Andi Kleen
2005-05-18  1:13                                       ` Herbert Xu
2005-05-18  1:09                                 ` John Heffner
2005-05-17 23:53                           ` Rick Jones
2005-05-17 22:12                     ` David S. Miller
2005-05-17 22:23                       ` Rick Jones
2005-05-17 20:29           ` John Heffner
2005-05-17 19:01     ` Nivedita Singhvi [this message]
2005-05-17 19:13       ` Rick Jones
2005-05-17 19:25         ` Nivedita Singhvi
2005-05-17 19:31           ` John Heffner
2005-05-17 19:52             ` Nivedita Singhvi
2005-05-17 20:05               ` John Heffner
2005-05-17 20:12                 ` Rick Jones
2005-05-17 19:33           ` Rick Jones
2005-05-17 19:53             ` Andi Kleen
2005-05-17 22:11   ` Herbert Xu
2005-05-17 22:13     ` David S. Miller
2005-05-17 23:08       ` Herbert Xu
2005-05-17 23:16         ` David S. Miller
2005-05-17 23:28           ` Herbert Xu
2005-05-17 23:36             ` Patrick McHardy
2005-05-17 23:41               ` Herbert Xu
2005-05-18  0:47     ` Thomas Graf
2005-05-18  1:06       ` Arthur Kepner
2005-05-18  1:16       ` Herbert Xu
2005-05-18  1:37         ` Thomas Graf
2005-05-18  1:52           ` Herbert Xu
2005-05-18 11:30             ` Thomas Graf
2005-05-18 11:40               ` Herbert Xu
2005-05-18 12:24                 ` Thomas Graf
2005-05-18 16:21           ` Rick Jones
2005-05-18 17:40             ` Thomas Graf
2005-05-18 17:44               ` Thomas Graf
2005-05-18 21:46                 ` Herbert Xu
2005-05-18 22:24                   ` David Stevens
2005-05-18 22:39                     ` Nivedita Singhvi
2005-05-18 23:31                     ` Thomas Graf
2005-05-18 21:45             ` Herbert Xu
2005-05-19 12:23               ` Thomas Graf
2005-05-19 12:48                 ` Herbert Xu
2005-05-19 15:19                   ` Thomas Graf
2005-05-19 17:02                 ` Rick Jones

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=428A3F86.1020000@us.ibm.com \
    --to=niv@us.ibm.com \
    --cc=ak@muc.de \
    --cc=akepner@sgi.com \
    --cc=davem@davemloft.net \
    --cc=netdev@oss.sgi.com \
    /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).