qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] Networking Documentation
@ 2015-05-07  8:47 David Borman
  2015-05-11 14:10 ` Stefan Hajnoczi
  0 siblings, 1 reply; 2+ messages in thread
From: David Borman @ 2015-05-07  8:47 UTC (permalink / raw)
  To: qemu-devel

Hi,

I just want to introduce myseld. Iam David from Germany and hope i can 
ask some development specific questions and this is the right place.What 
is my best starting point getting familar with the networking code and 
is there any useful, technicall documentation out there?

Iam espacially interrested in how QEMU handles/routes the incoming 
networktraffic (from reaching physically the hosts ethernetc card, 
forwarded into quemu networking and delegation to one of the running 
Guests OS Instances.


Cheers,
David

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [Qemu-devel] Networking Documentation
  2015-05-07  8:47 [Qemu-devel] Networking Documentation David Borman
@ 2015-05-11 14:10 ` Stefan Hajnoczi
  0 siblings, 0 replies; 2+ messages in thread
From: Stefan Hajnoczi @ 2015-05-11 14:10 UTC (permalink / raw)
  To: David Borman; +Cc: qemu-devel

[-- Attachment #1: Type: text/plain, Size: 1319 bytes --]

On Thu, May 07, 2015 at 10:47:15AM +0200, David Borman wrote:
> I just want to introduce myseld. Iam David from Germany and hope i can ask
> some development specific questions and this is the right place.What is my
> best starting point getting familar with the networking code and is there
> any useful, technicall documentation out there?
> 
> Iam espacially interrested in how QEMU handles/routes the incoming
> networktraffic (from reaching physically the hosts ethernetc card, forwarded
> into quemu networking and delegation to one of the running Guests OS
> Instances.

That is largely not done in the QEMU codebase.  Many users rely on the
-netdev tap option and use the host kernel's network stack for bridging
or NAT.

There is a userspace NAT solution (hack?) in QEMU which parses TCP/UDP
packets and performs equivalent socket system calls.  This is useful
when running QEMU without permissions for the tun/tap device driver.
But it's not how most users do networking on production VMs.

Also, the vhost_net.ko driver on Linux bypasses QEMU and performs
virtio-net rx/tx in the host kernel.

So from that perspective, you may need to study the Linux source code
and poke at a live host where libvirt has set up networking for VMs to
understand how things work together.

Stefan

[-- Attachment #2: Type: application/pgp-signature, Size: 473 bytes --]

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2015-05-11 14:10 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-05-07  8:47 [Qemu-devel] Networking Documentation David Borman
2015-05-11 14:10 ` Stefan Hajnoczi

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).