From owner-freebsd-net@FreeBSD.ORG Mon Mar 7 15:16:41 2005 Return-Path: Delivered-To: freebsd-net@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 65A7916A4CE for ; Mon, 7 Mar 2005 15:16:41 +0000 (GMT) Received: from r-dd.iij4u.or.jp (r-dd.iij4u.or.jp [210.130.0.70]) by mx1.FreeBSD.org (Postfix) with ESMTP id AB3A243D39 for ; Mon, 7 Mar 2005 15:16:40 +0000 (GMT) (envelope-from demizu@dd.iij4u.or.jp) Received: from localhost (124.117.138.210.xn.2iij.net [210.138.117.124]) by r-dd.iij4u.or.jp (8.11.6+IIJ/8.11.6) with ESMTP id j27FGd107241; Tue, 8 Mar 2005 00:16:39 +0900 (JST) Date: Tue, 08 Mar 2005 00:17:14 +0900 (JST) Message-Id: <20050308.001714.41652371.Noritoshi@Demizu.ORG> From: Noritoshi Demizu To: freebsd-net@freebsd.org X-Mailer: Mew version 4.1 on Emacs 21 / Mule 5.0 (SAKAKI) Mime-Version: 1.0 Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit Subject: Why TCP_MAX_SACK == 3 ? X-BeenThere: freebsd-net@freebsd.org X-Mailman-Version: 2.1.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: Mon, 07 Mar 2005 15:16:41 -0000 In netinet/tcp.h, TCP_MAX_SACK is defined as follows. #define TCP_MAX_SACK 3 /* MAX # SACKs sent in any segment */ Shouldn't it be 4? If a peer node does not use TCP timestamps option, four SACK blocks can be sent. For example, if my memory serves correctly, Microsoft Windows does not use TCP timestamps option by default. By the way, currently, both window scale option and timestamps option are controled by one sysctl variable: net.inet.tcp.rfc1323. Wouldn't it be nice if each option had its own sysctl variable? Regards, Noritoshi Demizu