From: Eric Dumazet <eric.dumazet@gmail.com>
To: Jesse Gross <jesse@nicira.com>
Cc: David Miller <davem@davemloft.net>, netdev <netdev@vger.kernel.org>
Subject: Re: [PATCH net-next 3/3] ipv4: gre: add GRO capability
Date: Thu, 27 Sep 2012 20:08:14 +0200 [thread overview]
Message-ID: <1348769294.5093.1566.camel@edumazet-glaptop> (raw)
In-Reply-To: <CAEP_g=-JAYHXM86AYNp7BhDV+eqfkKVgC+SJS1MVdo0K8fRLSQ@mail.gmail.com>
On Thu, 2012-09-27 at 10:52 -0700, Jesse Gross wrote:
> When I was thinking about doing this, my original plan was to handle
> GRO/GSO by extending the current handlers to be able to look inside
> GRE and then loop around to process the inner packet (similar to what
> is done today with skb_flow_dissect() for RPS). Is there a reason to
> do it in the device?
>
> Pushing it earlier/later in the stack obviously increases the benefit
> and it will also be more compatible with the forthcoming OVS tunneling
> hooks, which will be flow based and therefore won't have a device.
>
> Also, the next generation of NICs will support this type of thing in
> hardware so putting the software versions very close to the NIC will
> give us a more similar abstraction.
This sounds not feasible with all kind of tunnels, for example IPIP
tunnels, or UDP encapsulation, at least with current stack (not OVS)
Also note that pushing earlier means forcing the checksumming earlier
and it consumes a lot of cpu cycles. Hopefully NIC will help us in the
future.
Using a napi_struct permits to eventually have separate cpus, and things
like RPS/RSS to split the load.
next prev parent reply other threads:[~2012-09-27 18:08 UTC|newest]
Thread overview: 41+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-09-27 12:48 [PATCH net-next 3/3] ipv4: gre: add GRO capability Eric Dumazet
2012-09-27 17:52 ` Jesse Gross
2012-09-27 18:08 ` Eric Dumazet [this message]
2012-09-27 18:19 ` Eric Dumazet
2012-09-27 22:03 ` Jesse Gross
2012-09-28 14:04 ` Eric Dumazet
2012-10-01 20:56 ` Jesse Gross
2012-10-05 14:52 ` [RFC] GRO scalability Eric Dumazet
2012-10-05 18:16 ` Rick Jones
2012-10-05 19:00 ` Eric Dumazet
2012-10-05 19:35 ` Rick Jones
2012-10-05 20:06 ` Eric Dumazet
2012-10-08 16:40 ` Rick Jones
2012-10-08 16:59 ` Eric Dumazet
2012-10-08 17:49 ` Rick Jones
2012-10-08 17:55 ` Eric Dumazet
2012-10-08 17:56 ` Eric Dumazet
2012-10-08 18:58 ` [RFC] napi: limit GRO latency Stephen Hemminger
2012-10-08 19:10 ` David Miller
2012-10-08 19:12 ` Stephen Hemminger
2012-10-08 19:30 ` Eric Dumazet
2012-10-08 19:40 ` Stephen Hemminger
2012-10-08 19:46 ` Eric Dumazet
2012-10-08 19:21 ` Eric Dumazet
2012-10-08 18:21 ` [RFC] GRO scalability Rick Jones
2012-10-08 18:28 ` Eric Dumazet
2012-10-06 4:11 ` Herbert Xu
2012-10-06 5:08 ` Eric Dumazet
2012-10-06 5:14 ` Herbert Xu
2012-10-06 6:22 ` Eric Dumazet
2012-10-06 7:00 ` Eric Dumazet
2012-10-06 10:56 ` Herbert Xu
2012-10-06 18:08 ` [PATCH] net: gro: selective flush of packets Eric Dumazet
2012-10-07 0:32 ` Herbert Xu
2012-10-07 5:29 ` Eric Dumazet
2012-10-08 7:39 ` Eric Dumazet
2012-10-08 16:42 ` Rick Jones
2012-10-08 17:10 ` Eric Dumazet
2012-10-08 18:52 ` David Miller
2012-09-27 22:03 ` [PATCH net-next 3/3] ipv4: gre: add GRO capability Jesse Gross
2012-10-01 21:04 ` 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=1348769294.5093.1566.camel@edumazet-glaptop \
--to=eric.dumazet@gmail.com \
--cc=davem@davemloft.net \
--cc=jesse@nicira.com \
--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