From owner-freebsd-net@FreeBSD.ORG Tue Aug 13 17:54:52 2013 Return-Path: Delivered-To: net@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 2C498D3A; Tue, 13 Aug 2013 17:54:52 +0000 (UTC) (envelope-from rizzo.unipi@gmail.com) Received: from mail-la0-x232.google.com (mail-la0-x232.google.com [IPv6:2a00:1450:4010:c03::232]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 2B1372940; Tue, 13 Aug 2013 17:54:50 +0000 (UTC) Received: by mail-la0-f50.google.com with SMTP id fn20so4772114lab.37 for ; Tue, 13 Aug 2013 10:54:49 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:date:message-id:subject :from:to:cc:content-type; bh=pSnNib9S2w1gAnv7i7stZS/k2Qn8pOUoZ/Dd34nH+WE=; b=MYjIOM7WcIpEyjIgli4mnPJaPRZT24dAb5ec6mmm6GVxb4NkIwUXi+Wuk0a9L1MLHn tobvF3o5t/i9PEvo6JGRaPHTR/X0btRBMZm6V9UpvwsVKDTD/BfaQBVzFj0YbFX7yYco 5gTP8K9EmUs1tyDkfPIxX9IE+ucIzHkLzni5e8QGno7gfTcLjiaQgmv86BlyGSodDSr4 2ZhmOCB1wDSkxHANMxG+ILurC2i4TEfheoLCqPISsRTUw9wNmmpAVVOgKQGy+5mn9USL c/L/G2D6pFi6dgrVuzDUpeHJcRV6l/P3c060a9zO3Ehv55S0+ikJ4dSYM1/9DKtD8Euz AwdA== MIME-Version: 1.0 X-Received: by 10.152.22.65 with SMTP id b1mr1237582laf.46.1376416488981; Tue, 13 Aug 2013 10:54:48 -0700 (PDT) Sender: rizzo.unipi@gmail.com Received: by 10.114.200.165 with HTTP; Tue, 13 Aug 2013 10:54:48 -0700 (PDT) In-Reply-To: <520A6EC6.6050208@FreeBSD.org> References: <520A6D07.5080106@freebsd.org> <520A6EC6.6050208@FreeBSD.org> Date: Tue, 13 Aug 2013 19:54:48 +0200 X-Google-Sender-Auth: 37dp9bqh8yyFMQuCenuMUsywv2E Message-ID: Subject: Re: TSO and FreeBSD vs Linux From: Luigi Rizzo To: Navdeep Parhar Content-Type: text/plain; charset=ISO-8859-1 X-Content-Filtered-By: Mailman/MimeDel 2.1.14 Cc: FreeBSD Net X-BeenThere: freebsd-net@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Networking and TCP/IP with FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 13 Aug 2013 17:54:52 -0000 On Tue, Aug 13, 2013 at 7:37 PM, Navdeep Parhar wrote: > On 08/13/13 10:29, Julian Elischer wrote: > .. > > > > Has anyone done any work on aggregating ACKs, or delaying responding to > > them? > > If LRO is enabled on the FreeBSD receiver, ACKs are already aggregated > (a duplicate ACK will result in an immediate flush though.) See > tcp_lro_rx. > >From what I have heard (no direct experience though), when TSO is enabled linux may decide to hold a transmission in the hope of getting more acks in the future hence a larger segment sent in one shot. I am not sure i find similar code in FreeBSD; there is something mentioned in tcp_output() but then the check only seems to be for t_maxseg /* * Sender silly window avoidance. We transmit under the following * conditions when len is non-zero: * * - We have a full segment (or more with TSO) * - This is the last buffer in a write()/send() and we are * either idle or running NODELAY * - we've timed out (e.g. persist timer) * - we have more then 1/2 the maximum send window's worth of * data (receiver may be limited the window size) * - we need to retransmit */ if (len) { if (len >= tp->t_maxseg) goto send; /* and the t_maxseg seems to be capped to the mss. This could be implemented in tcp_output(), i suppose. cheers luigi > Regards, > Navdeep > _______________________________________________ > freebsd-net@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-net > To unsubscribe, send any mail to "freebsd-net-unsubscribe@freebsd.org" > -- -----------------------------------------+------------------------------- Prof. Luigi RIZZO, rizzo@iet.unipi.it . Dip. di Ing. dell'Informazione http://www.iet.unipi.it/~luigi/ . Universita` di Pisa TEL +39-050-2211611 . via Diotisalvi 2 Mobile +39-338-6809875 . 56122 PISA (Italy) -----------------------------------------+-------------------------------