Date: Tue, 1 Aug 2006 08:41:00 -0400 (EDT) From: Andrew Gallatin <gallatin@cs.duke.edu> To: Robert Watson <rwatson@FreeBSD.org> Cc: arch@FreeBSD.org, net@FreeBSD.org Subject: Re: Changes in the network interface queueing handoff model Message-ID: <17615.19420.172545.986872@grasshopper.cs.duke.edu> In-Reply-To: <20060730141642.D16341@fledge.watson.org> References: <20060730141642.D16341@fledge.watson.org>
next in thread | previous in thread | raw e-mail | index | archive | help
Robert Watson writes: > The immediate practical benefit is > clear: if the queueing at the ifnet layer is unnecessary, it is entirely > avoided, skipping enqueue, dequeue, and four mutex operations. This is indeed nice, but for TCP I think the benefit would be far greater if somebody would PLEASE, PLEASE, PLEASE implement TSO (aka LSO). Consider a 1460 byte mss and 64KB of data that is ready to be sent. With the current model, that is 45 separate calls to if_output(), and 45*4 (queuing) + 45 (tx routine) == 225 mutex operations. Using your model, we're down to 45 mutex operations. Using TSO, we have 4 + 1 == 5 mutex operations with the old model, and 1 with the your model. This is not even considering all the other overhead involved in 45 transmits vs TSO... Just something to think about.. Drew
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?17615.19420.172545.986872>