[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [patch] Poor user-net performance.
From: |
Juergen Lock |
Subject: |
Re: [Qemu-devel] [patch] Poor user-net performance. |
Date: |
Tue, 20 Dec 2005 21:56:11 +0100 |
User-agent: |
Mutt/1.4.2.1i |
On Sun, Dec 18, 2005 at 11:28:27PM +0000, Paul Brook wrote:
> Dan mentioned he was seeing very poor network performance when using
> user-net.
> It turns out this is because packets were getting dropped (the NIC buffers
> were full), and the slirp code doesn't throttle properly when this occurs.
> You end up with a bunch of packets getting sent to the guest, half of which
> get dropped, then a delay until slirp retransmits.
>
> This is much more noticeable on Arm because the NIC only has a small memory
> buffer.
>
> Teaching the slirp code how to do tcp backoff/window scaling is probably a
> fair amount of work. The easy alternative is to throttle the slirp output
> when we know the card's buffers are full. slirp has a convenient hook for
> this, so it's a matter of adding the hooks to the hardware emulation.
>
> This increases arm user-net performance from painfully slow (~200kbit) to
> guest CPU bound (~20Mbit).
>
Hmm is the patch supposed to work for i386 guests too? I get no dhcp
response and network unreachable when i try to ssh to the host from the
guest after manually ifconfig'ing, seem like the ne2k doesn't receive
any packets. (FreeBSD/i386 host, linux i386 guest - kanotix livecd iso).
The same works normally without the patch.