From: Rick Jones <rick.jones2@hp.com>
To: Tom Herbert <therbert@google.com>
Cc: Linux Netdev List <netdev@vger.kernel.org>
Subject: Re: Generalizing mmap'ed sockets
Date: Fri, 19 Nov 2010 13:32:57 -0800 [thread overview]
Message-ID: <4CE6ED09.70602@hp.com> (raw)
In-Reply-To: <AANLkTi=WF2hAGAufv_Anc=b=Fm2WOpOMOv1UrDRvaTHp@mail.gmail.com>
I suppose then one would be able to track the consumer pointer (on tx) to "know"
that certain data had been ACKed by the remote? For TCP anyway - and assuming
there wouldn't be a case where TCP might copy the data out of the ring and
assert "completion."
How would the mmap'ing interact with autotuning? Particularly in the "future
case" of HW support for true zero copy on receive.
Today I can be assured that data I receieve is on a "nice" boundary in my memory
by virtue of the buffer pointer I pass to the recv() call, but with the "rings"
(they are simply some chunk of virtually continguous data yes?) it will just be
bumped up against the end of the last one - I'm wondering if that might not be a
problem, especially for UDP datagrams, but even for TCP data? It is one thing
to have people pad structures in the memory of a system, but telling them to
pad-out the messages they send across the network to maintain alignment is
rather different.
How do you differentiate between a "there is data to send" and "I want to send a
zero-legnth datagram for a UDP socket? I think you will have to do/overload
something other than a send() call for the trigger.
rick jones
next prev parent reply other threads:[~2010-11-19 21:33 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-11-19 20:04 Generalizing mmap'ed sockets Tom Herbert
2010-11-19 21:32 ` Rick Jones [this message]
2010-11-19 21:52 ` David Miller
2010-11-19 21:55 ` Tom Herbert
2010-11-19 21:58 ` Rick Jones
2010-11-19 22:08 ` David Miller
2010-11-19 22:47 ` Rick Jones
2010-11-19 22:49 ` Tom Herbert
2010-11-24 19:57 ` Michael S. Tsirkin
2010-11-19 22:10 ` Andrew Grover
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=4CE6ED09.70602@hp.com \
--to=rick.jones2@hp.com \
--cc=netdev@vger.kernel.org \
--cc=therbert@google.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).