Re: [Xen-devel] Role of Xen/Xenolinux in New IO networking
> I know I have asked this before, but I am having trouble understanding
> the role of each component in the new 1.3 world:
> In 1.3 networking if Xen has no devices, and domain 0 owns and operates
> the NIC - does Xen have any role at all in networking for the guest
No -- Xen will have no direct involvement in I/O accesses, except
1. It will still own the 'emergency console' (ie. serial line) so
that higher-level software can be debugged/post-mortemed.
2. It may make special scheduling and CPU-allocation decisions for
domains containign device drivers (eg. minimise wakeup latency when
an interrupt is received).
3. Communication between virtual device drivers and
physical-device-driver domains will be via shared memory and event
channels. These mechanisms need support within Xen, but they are more
generally applicable than just device access.
> Which network device driver will a guest OS use?
Ordinary guests will still use a virtual network driver. However,
rather than talking to Xen to send/receive packets, teh driver will
have a communications channel to a device-driver domain -- this
channel comprises a shared-memory area and an event channel for async
This is the bit that is currently missing -- and the new world isn't
much use without it!
> Do all the vnetif rules defined in Domain 0 now get interpreted by
> Domain 0 vnet driver? Or still by Xen?
The hideous VFR rules mechanism will be going away. Instead,
firewall/switching/routing rules will be written to the guest OS that
is runnign the physical device driver. If this guest OS is Linux, for
example, then you will get access to all the usual Linux mechanisms
--- much more fully-featured and robust than what currently exists in
> How do the actual packets (that will be routed to a guest) flow from the
> physical NIC - (received by a domain 0 driver, routed/filtered by ???,
> passed over a evtchn to a guest driver?)
We plan that the guiest OS conatinign the real driver will have a
network interface for each guest that is connected via it. It also
obviously has an interface for each real physical NIC that it
controls. Packets can then be routed between these interfaces just
like in a normal software router. We will add whatever fast paths are
necessary to avoid packet copying.
This SF.Net email is sponsored by: IBM Linux Tutorials
Free Linux tutorial presented by Daniel Robbins, President and CEO of
GenToo technologies. Learn everything from fundamentals to system
Xen-devel mailing list