From owner-freebsd-net@FreeBSD.ORG Tue Feb 3 06:45:04 2015 Return-Path: Delivered-To: freebsd-net@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id C4F63348 for ; Tue, 3 Feb 2015 06:45:04 +0000 (UTC) Received: from phabric-backend.isc.freebsd.org (phabric-backend.isc.freebsd.org [IPv6:2001:4f8:3:ffe0:406a:0:50:2]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id A31EDA3E for ; Tue, 3 Feb 2015 06:45:04 +0000 (UTC) Received: from phabric-backend.isc.freebsd.org (phabric-backend.isc.freebsd.org [127.0.1.5]) by phabric-backend.isc.freebsd.org (8.14.9/8.14.9) with ESMTP id t136j4Vw094613 for ; Tue, 3 Feb 2015 06:45:04 GMT (envelope-from mat@phabric-backend.isc.freebsd.org) Received: (from root@localhost) by phabric-backend.isc.freebsd.org (8.14.9/8.14.9/Submit) id t136j4n9094612; Tue, 3 Feb 2015 06:45:04 GMT (envelope-from mat) Date: Tue, 3 Feb 2015 06:45:04 +0000 To: freebsd-net@freebsd.org From: "hselasky (Hans Petter Selasky)" Subject: [Differential] [Request, 68 lines] D1761: Extend LRO support to accumulate more than 65535 bytes Message-ID: X-Priority: 3 Thread-Topic: D1761: Extend LRO support to accumulate more than 65535 bytes X-Herald-Rules: none X-Phabricator-To: X-Phabricator-To: X-Phabricator-To: X-Phabricator-To: X-Phabricator-To: X-Phabricator-To: X-Phabricator-To: X-Phabricator-To: X-Phabricator-To: X-Phabricator-Cc: Thread-Index: M2NjZGMxNGQwNjQ0ZTg4NzgyYzE1NGYxMTJm X-Phabricator-Sent-This-Message: Yes X-Mail-Transport-Agent: MetaMTA X-Auto-Response-Suppress: All X-Phabricator-Mail-Tags: , , , MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset="utf-8" X-BeenThere: freebsd-net@freebsd.org X-Mailman-Version: 2.1.18-1 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, 03 Feb 2015 06:45:04 -0000 hselasky created this revision. hselasky added reviewers: rmacklem, rrs, glebius, gnn, emaste, bz, adrian, rwatson. hselasky added a subscriber: freebsd-net. hselasky set the repository for this revision to rS (FreeBSD src repository). REVISION SUMMARY To be able to handle the transfer rates of tomorrow we need to reduce the number of requests to the TCP stack when receiving packets. Currently there is a limitation of 65535 bytes, which is due to using the 16-bit IP payload field in the IP header when accumulating LRO data. Instead use the 32-bit m_len field of the mbuf when doing data accumulation. TEST PLAN Test IPv4 Test IPv6 Test ip_fragment() REVISION DETAIL https://reviews.freebsd.org/D1761 AFFECTED FILES sys/netinet/ip_input.c sys/netinet/ip_output.c sys/netinet/tcp_input.c sys/netinet/tcp_lro.c sys/sys/mbuf.h To: hselasky, rmacklem, rrs, glebius, gnn, emaste, bz, adrian, rwatson Cc: freebsd-net