netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Jason Lunz <lunz@falooley.org>
To: netdev@oss.sgi.com
Subject: Re: Luca Deri's paper: Improving Passive Packet Capture: Beyond Device Polling
Date: Tue, 6 Apr 2004 16:01:20 +0000 (UTC)	[thread overview]
Message-ID: <c4uk8g$38l$1@sea.gmane.org> (raw)
In-Reply-To: 4072A1CD.8070905@ntop.org

deri@ntop.org said:
> In addition if you do care about performance, I believe you're willing
> to turn off packet transmission and only do packet receive. 

I don't understand what you mean by this. packet-mmap works perfectly
well on an UP|PROMISC interface with no addresses bound to it. As long
as no packets are injected through a packet socket, the tx path never
gets involved.

> IRQ: Linux has far too much latency, in particular at high speeds. I'm
> not the right person who can say "this is the way to go", however I
> believe that we need some sort of interrupt prioritization like RTIRQ
> does.

I don't think this is the problem, since small-packet performance is bad
even with a fully-polling e1000 in NAPI mode. As Robert Olsson has
demonstrated, a highly-loaded napi e1000 only generates a few hundred
interrupts per second. So the vast majority of packets recieved are
coming in without a hardware interrupt occurring at all.

Could it be that each time an hw irq _is_ generated, it causes many
packets to be lost? That's a possibility. Can you explain in more detail
how you measured the effect of interrupt latency on recieve efficiency?

> Finally It would be nice to have in the standard Linux core some
> packet capture improvements. It could either be based on my work or on
> somebody else's work. It doesn't really matter as long as Linux gets
> faster.

I agree. I think a good place to start would be reading and
understanding this thread:

http://thread.gmane.org/gmane.linux.kernel/193758

There's some disagreement for a while about where all this softirq load
is coming from. It looks like an interaction of softirqs and RCU, but
the first patch doesn't help.  Finally Olsson pointed out:

http://article.gmane.org/gmane.linux.kernel/194412

that the majority of softirq's are being run from hardirq exit. Even
with NAPI. At this point, I think, it's clear that the problem exists
regardless of rcu, and indeed, Linux is bad at doing packet-mmap RX of a
small-packet gigabit flood on both 2.4 and 2.6 (my old 2.4 measurements
earlier in this thread show this).

I'm particularly interested in trying Andrea's suggestion from
http://article.gmane.org/gmane.linux.kernel/194486 , but I won't have
the time anytime soon.

Jason

  reply	other threads:[~2004-04-06 16:01 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-03-30 14:23 Luca Deri's paper: Improving Passive Packet Capture: Beyond Device Polling Yusuf Goolamabbas
2004-04-03 23:02 ` jamal
2004-04-05 16:03   ` Jason Lunz
2004-04-06 10:30     ` P
2004-04-06 12:25       ` Luca Deri
2004-04-06 16:01         ` Jason Lunz [this message]
2004-04-06 18:40           ` Ben Greear
     [not found]         ` <1081262228.1046.25.camel@jzny.localdomain>
2004-04-07  6:59           ` Luca Deri
2004-04-07 12:20             ` jamal
     [not found]         ` <E1BAt0s-0003V8-00@crown.reflexsecurity.com>
2004-04-07  7:11           ` Luca Deri
2004-04-06 14:18     ` jamal
2004-04-06 15:31       ` Robert Olsson
2004-04-07  7:03         ` Luca Deri
2004-04-07 15:11           ` [Ntop-misc] " Robert Olsson

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='c4uk8g$38l$1@sea.gmane.org' \
    --to=lunz@falooley.org \
    --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).