Hi there, I am working on a project in which I have to track a packet flow from dom0 to domU. I know how this is done in case of Paravirtualized (PV) guest domain. In case of PV''s split model, dom0 (backend) and domU (frontend) share I/O channel that is setup during the domU boot and it is used to copy packets between two domains. In case of HVM domain, there is no shared memory between dom0 and domU then how this packet copying is being performed? I know QEMU-dm is being used in dom0 to emulate the network interface for domU. If there is no memory then how domU get packets from dom0 and vice-versa? Does Xen pass actual packet from dom0 to domU which is very costly? It would be really helpful if you could let me know exact packet flow as it would help me understand the networking subsystem. I tried finding some document but there are no publicly availabe documents that describe network virtualization and packet flow in case of HVM domain. I would really appreciate your reply and pointers. Thanks, Abhinav Share files, take polls, and make new friends - all under one roof. Go to http://in.promos.yahoo.com/groups/ _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
On Sun, Jun 01, 2008 at 09:50:08AM +0530, Abhinav Srivastava wrote:> > Hi there, > > I am working on a project in which I have to track a packet flow from dom0 to domU. I know how this is done in case of Paravirtualized (PV) guest > domain. In case of PV''s split model, dom0 (backend) and domU (frontend) share I/O channel that is setup during the domU boot and it is used to copy packets between two domains. > > In case of HVM domain, there is no shared memory between dom0 and domU then how this packet copying is being performed? I know QEMU-dm is being used in dom0 to emulate the network interface for domU. > > If there is no memory then how domU get packets from dom0 and vice-versa? Does Xen pass actual packet from dom0 to domU which is very costly? > > It would be really helpful if you could let me know exact packet flow as it would help me understand the networking subsystem. I tried finding some document but there are no publicly availabe documents that describe network virtualization and packet flow in case of HVM domain. > > I would really appreciate your reply and pointers. >Yes, qemu emulated virtual NIC is pretty slow for HVM domains.. Luckily you can run paravirtual _drivers_ insite HVM domU so then you can bypass the emulation.. almost like with "full" paravirtual domU. -- Pasi _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Hi Pasi, Thanks for your reply. I wanted to know how packet is being transferred from dom0 to domU and vice versa. My goal is to track packets and for that I need to know in which memory it is residing. For example, in case of PV drivers packets are passed from dom0 to domU by copying on the shared I/O memory between two domains. This is not the case in HVM domain. So my questions is how domU gets packet that is coming through dom0 and vice-versa. How actual network packet is being copied? Once, I know where dom0 keeps packet for domU I can check in that memory location. And, once packet reaches inside domU then I guess normal OS packet flow is follwed. I look forward hearing from you soon. Thanks, Abhinav --- On Sun, 1/6/08, Pasi Kärkkäinen <pasik@iki.fi> wrote:> From: Pasi Kärkkäinen <pasik@iki.fi> > Subject: Re: [Xen-devel] Network Packet Flow in HVM > To: "Abhinav Srivastava" <abhinavs_iitkgp@yahoo.co.in> > Cc: xen-devel@lists.xensource.com > Date: Sunday, 1 June, 2008, 5:13 PM > On Sun, Jun 01, 2008 at 09:50:08AM +0530, Abhinav Srivastava > wrote: > > > > Hi there, > > > > I am working on a project in which I have to track a > packet flow from dom0 to domU. I know how this is done in > case of Paravirtualized (PV) guest > > domain. In case of PV''s split model, dom0 > (backend) and domU (frontend) share I/O channel that is > setup during the domU boot and it is used to copy packets > between two domains. > > > > In case of HVM domain, there is no shared memory > between dom0 and domU then how this packet copying is being > performed? I know QEMU-dm is being used in dom0 to emulate > the network interface for domU. > > > > If there is no memory then how domU get packets from > dom0 and vice-versa? Does Xen pass actual packet from dom0 > to domU which is very costly? > > > > It would be really helpful if you could let me know > exact packet flow as it would help me understand the > networking subsystem. I tried finding some document but > there are no publicly availabe documents that describe > network virtualization and packet flow in case of HVM > domain. > > > > I would really appreciate your reply and pointers. > > > > Yes, qemu emulated virtual NIC is pretty slow for HVM > domains.. > > Luckily you can run paravirtual _drivers_ insite HVM domU > so then you can > bypass the emulation.. almost like with "full" > paravirtual domU. > > -- PasiShare files, take polls, and make new friends - all under one roof. Go to http://in.promos.yahoo.com/groups/ _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel