From owner-freebsd-net@FreeBSD.ORG Fri Jun 12 18:19:43 2009 Return-Path: Delivered-To: freebsd-net@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 7EBD8106564A; Fri, 12 Jun 2009 18:19:43 +0000 (UTC) (envelope-from gallatin@cs.duke.edu) Received: from duke.cs.duke.edu (duke.cs.duke.edu [152.3.140.1]) by mx1.freebsd.org (Postfix) with ESMTP id 35A218FC2C; Fri, 12 Jun 2009 18:19:43 +0000 (UTC) (envelope-from gallatin@cs.duke.edu) Received: from [172.31.193.10] (cpe-075-177-134-250.nc.res.rr.com [75.177.134.250]) (authenticated bits=0) by duke.cs.duke.edu (8.14.2/8.14.2) with ESMTP id n5CIJgb4020743 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Fri, 12 Jun 2009 14:19:42 -0400 (EDT) X-DKIM: Sendmail DKIM Filter v2.8.3 duke.cs.duke.edu n5CIJgb4020743 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=cs.duke.edu; s=mail; t=1244830782; bh=fcQFWi4cnhnrLHUpBIpgrdaWX2Bhm4UG/QLHVJRmz1s=; h=Message-ID:Date:From:MIME-Version:To:CC:Subject:References: In-Reply-To:Content-Type:Content-Transfer-Encoding; b=ElGyYvNoDRmDjV/VwjRzd8pJp2Btql8mGGaJLUp5xIP2DIcL3R5Jn7L4Db55EsbHR RhzdYTBtyVNsZrab9/OguWqcTaAZRlM3CYxtzWDOJzlfvdZqR5b4MKjY7Y/vkJ/XNA CMYAarAQUoAx1U8cBerdtW5y9g1jKFcBXz68Y4y8= Message-ID: <4A329C38.2040808@cs.duke.edu> Date: Fri, 12 Jun 2009 14:19:36 -0400 From: Andrew Gallatin User-Agent: Thunderbird 2.0.0.19 (X11/20090105) MIME-Version: 1.0 To: "Bjoern A. Zeeb" References: <20090611184555.J22887@maildrop.int.zabbadoz.net> <4A325883.3050206@cs.duke.edu> <20090612174248.X22887@maildrop.int.zabbadoz.net> In-Reply-To: <20090612174248.X22887@maildrop.int.zabbadoz.net> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: FreeBSD net mailing list Subject: Re: Ethernet NIC drivers depending unconditionally on INET X-BeenThere: freebsd-net@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Networking and TCP/IP with FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 12 Jun 2009 18:19:43 -0000 Bjoern A. Zeeb wrote: >>> if there is no INET there should be no LRO for now, the capabilities >>> not advertised, etc. Be prepared in case LRO will arrive for IPv6. >> >> As to LRO & IPV6... I was going to port our LRO for IPv6, >> but discovered the state of IPv6 in FreeBSD is so disgraceful >> that there was no point. Eg, there is no checksum offload, >> no TSO, etc, for INET6. Once those things are there, I'll >> be happy to provide LRO for IPv6. > > With "port our LRO" you mean the driver parts? So how much does the > FreeBSD infrastructure for LRO/v4 help and work for you (and the > others)? Would adding v6 support there help? For "port our LRO", I actually meant the LRO code itself, the IPv4 version of which was originally contributed by my employer (Myricom). Notice sys/netinet/tcp_lro.c is sys/dev/mxge/mxge_lro.c ported to be a bit more generic by Jack when he wanted LRO for ixgbe. The mxge LRO is shared among a few of our drivers for other OSes, and at least one has grown support for LRO for IPv6, so that should be trivial to port to FreeBSD. The thing I really need to do is convert mxge to use tcp_lro.c and remove mxge_lro.c. I've just been too busy. As to how much it helps.. I've seen some machines go from 3Gb/s to line rate (9.4Gb/s) for 1500b recieves. Drew