WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

[Xen-devel] RE: Netchannel2

To: Steven Smith <steven.smith@xxxxxxxxxxxxx>, "xen-devel@xxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxx>
Subject: [Xen-devel] RE: Netchannel2
From: "Santos, Jose Renato G" <joserenato.santos@xxxxxx>
Date: Tue, 2 Dec 2008 08:06:36 +0000
Accept-language: en-US
Acceptlanguage: en-US
Cc: "keir.fraser@xxxxxxxxxx" <keir.fraser@xxxxxxxxxx>, "ian.pratt@xxxxxxxxxx" <ian.pratt@xxxxxxxxxx>
Delivery-date: Tue, 02 Dec 2008 00:08:10 -0800
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <20081201111028.GA4669@xxxxxxxxxxxxxxxxxxxxxxxxxx>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
References: <20081201111028.GA4669@xxxxxxxxxxxxxxxxxxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
Thread-index: AclTpXw7Idkd0ga1RPqU6DF+eaE4HAAr0jxQ
Thread-topic: Netchannel2
It seems MSI is not working with this latest version of Xen (even without the 
netchannel2 patches).
Dom0 crashes during boot if I set msi_irq_enable  in the xen grub command line.
This used to work fine in an earlier version of Xen (18071:806e66a6cb1a)

MSI support is needed to use Intel VMDQ.
I have an initial patch for supporting VMDQ in netchannel2 that needs testing, 
but I need to get MSI working before I can test it.
Is there any known problem with MSI in the latest xen-unstable?

Thanks

Renato

> -----Original Message-----
> From: Steven Smith [mailto:steven.smith@xxxxxxxxxxxxx]
> Sent: Monday, December 01, 2008 3:10 AM
> To: xen-devel@xxxxxxxxxxxxxxxxxxx
> Cc: keir.fraser@xxxxxxxxxx; ian.pratt@xxxxxxxxxx; Santos,
> Jose Renato G
> Subject: Netchannel2
>
> After many delays and false starts, here's a preliminary netchannel2
> implementation:
>
> http://xenbits.xensource.com/ext/netchannel2/xen-unstable.hg
> http://xenbits.xensource.com/ext/netchannel2/linux-2.6.18.hg
>
> These trees are up-to-date with the mainline trees of the
> same name as of a couple of days ago.
>
> Here are the main features of the current scheme:
>
> -- Obviously, it implements a fully functional network interface.
>    LRO, TSO, and checksum offload are all supported.  Hot-add and
>    hot-remove work as expected.
>
> -- The copy-to-receiver-buffers is now performed in the receiving
>    domain, rather than in dom0.  This helps to prevent dom0 from
>    becoming a bottleneck, and also has some cache locality advantages.
>
> -- Inter-domain traffic can be configure to bypass dom0 completely.
>    Once a bypass is established, the domains communicate on their own
>    private ring, without indirecting via dom0.  This significantly
>    increases inter-domain bandwidth, reduces latency, and reduces dom0
>    load.
>
>    (This is currently somewhat rough around the edges, and each bypass
>    needs to be configured manually.  It'll (hopefully) eventually be
>    automatic, but that hasn't been implemented yet.)
>
> -- A new, and hopefully far more extensible, ring protocol, supporting
>    variable size messages, multi-page rings, and out-of-order message
>    return.  This is intended to make VMDQ support straightforward,
>    although that hasn't been implemented yet.
>
> -- Packet headers are sent in-line in the ring, rather than
>    out-of-band in fragment descriptors.  Small packets (e.g. TCP ACKs)
>    are sent entirely in-line.
>
> -- There's an asymmetry limiter, intended to protect dom0 against
>    denial of service attacks by malicious domUs.
>
> -- Sub-page grant support.  The grant table interface is extended so a
>    domain can grant another domain access to a range of bytes within a
>    page, and Xen will then prevent the grantee domain accessing
>    outside that range.  For obvious reasons, it isn't possible to map
>    these grant references, and domains are expected to use the grant
>    copy hypercalls instead.
>
> -- Transitive grant support.  It's now possible for a domain to create
>    a grant reference which indirects to another grant reference, so
>    that any attempt to access the first grant reference will be
>    redirected to the second one.  This is used to implement
>    receiver-side copy on inter-domain traffic: rather than copying the
>    packet in dom0, dom0 creates a transitive grant referencing the
>    original transmit buffer, and passes that to the receiving domain.
>
>    For implementation reasons, only a single level of transitive
>    granting is supported, and transitive grants cannot be mapped
>    (i.e. they can only be used in grant copy operations).  Multi-level
>    transitive grants could be added pretty much as soon as anybody
>    needs them, but mapping transitive grants would be more tricky.
>
>
> It does still have a few rough edges:
>
> -- Suspend/resume and migration don't work with dom0 bypass.
>
> -- Ignoring the bypass support, performance isn't that much better
>    than netchannel1 for many tests.  Dom0 CPU load is usually lower,
>    so it should scale better when you have many NICs, but in terms of
>    raw throughput there's not much in it either way.  Earlier versions
>    were marginally ahead, but there seems to have been a bit of a
>    regression while I was bringing it up to date with current
>    Xen/Linux.
>
> -- The hotplug scripts and tool integration aren't nearly as complete
>    as their netchannel1 equivalents.  It's not clear to me how much of
>    the netchannel1 stuff actually gets used, though, so I'm going to
>    leave this as-is unless somebody complains.
>
> -- The code quality needs some attention.  It's been hacked around by
>    a number of people over the course of several months, and generally
>    has a bit less conceptual integrity than I'd like in new code.
>
>    (It's not horrific, by any means, but it is a bit harder to follow
>    than the old netfront/netback drivers were.)
>
> -- There's no unmodified-drivers support, so you won't be able to use
>    it in HVM domains.  Adding support is unlikely to be terribly
>    difficult, with the possible exception of the dom0 bypass
>    functionality, but I've not looked at it at all yet.
>
> If you want to try this out, you'll need to rebuild Xen, the
> dom0 kernel, and the domU kernels, in addition to building the module.
> You'll also need to install xend and the userspace tools from the
> netchannel2 xen-unstable repository.  To create an interface,
> either use the ``xm network2-attach'' command or specify a
> vif2= list in your xm config file.
>
> The current implementation is broadly functional, in that it
> doesn't have any known crippling bugs, but hasn't had a great
> deal of testing.
> It should work, for the most part, but it certainly isn't
> ready for production use.  If you find any problems, please
> report them.
> Patches would be even better. :)
>
> A couple of people have asked about using the basic ring
> protocol in other PV device classes (e.g. pvSCSI, pvUSB).
> I'll follow up in a second with a summary of how all that works.
>
> Steven.
>

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel

<Prev in Thread] Current Thread [Next in Thread>