All of lore.kernel.org
 help / color / mirror / Atom feed
From: Mike Tremoulet <coffeemike@gmail.com>
To: qemu-devel@nongnu.org
Subject: [Qemu-devel] pcap-based networking?
Date: Thu, 26 Aug 2004 11:42:45 -0500	[thread overview]
Message-ID: <5640213304082609425986326c@mail.gmail.com> (raw)

All --

Apologies if this design decision has been worked before.  I've
successfully run various *nixes on my Win2K host, and while the slirp
solution usually works, I was thinking of ways to make it more
flexible.

I haven't finished identifying parts of the source code yet (my C
skills aren't that sharp), but from what I can tell, the tun/tap
interface uses file read/write operations to work on Unix, and the
slirp module does its thing somewhere as well, and the choice is made
by compile options and command-line switches.

My question is:  Is there a reason to use (or not to use) a
libpcap/libnet solution for networking?  At a high level, I think of
it as a queue of incoming packets and a queue of outgoing packets
(from the standpoint of the guest).  Outgoing packets from the guest
would be held in a queue and written onto the network via libnet, and
incoming packets would get captured by libpcap and written to the
virtual device.

The advantages for me would be:
- I can bind this networking to the device of my explicit choosing at
runtime.  So, I could install a tap device on my host and have qemu
always use that device, or I could bind it to a second NIC on the
host.
- More importantly, this can be somewhat platform independant. 
Libpcap exists in a very similar, if not identical, API in the form of
winpcap.  I know there is an equivalent way to write packets to the
network, but I forget the name right now.

What would the potential performance impacts be?  Is this something
that I/we should pursue?  Other thoughts?

-- Mike

             reply	other threads:[~2004-08-26 16:47 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-08-26 16:42 Mike Tremoulet [this message]
2004-08-26 17:15 ` [Qemu-devel] pcap-based networking? John R. Hogerhuis
2004-08-26 17:19   ` Mike Tremoulet
2004-08-26 17:48     ` John R. Hogerhuis
2004-08-27  6:08       ` Mike Tremoulet
2004-08-27  6:28         ` John R. Hogerhuis
2004-08-27  6:32           ` Mike Tremoulet
2004-08-26 17:33 ` Jim C. Brown

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=5640213304082609425986326c@mail.gmail.com \
    --to=coffeemike@gmail.com \
    --cc=qemu-devel@nongnu.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.