From owner-freebsd-current@FreeBSD.ORG Wed Jul 28 18:48:30 2004 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id E437E16A4CE for ; Wed, 28 Jul 2004 18:48:30 +0000 (GMT) Received: from mp2.macomnet.net (mp2.macomnet.net [195.128.64.6]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0361B43D5A for ; Wed, 28 Jul 2004 18:48:30 +0000 (GMT) (envelope-from maxim@macomnet.ru) Received-SPF: pass (mp2.macomnet.net: domain of maxim@macomnet.ru designates 127.0.0.1 as permitted sender) receiver=mp2.macomnet.net; client_ip=127.0.0.1; envelope-from=maxim@macomnet.ru; Received: from localhost (27v6bjtg@localhost [127.0.0.1]) by mp2.macomnet.net (8.12.11/8.12.11) with ESMTP id i6SImSdc000136; Wed, 28 Jul 2004 22:48:28 +0400 (MSD) (envelope-from maxim@macomnet.ru) Date: Wed, 28 Jul 2004 22:48:28 +0400 (MSD) From: Maxim Konovalov To: othermark In-Reply-To: Message-ID: <20040728221230.O99844@mp2.macomnet.net> References: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII cc: freebsd-current@freebsd.org Subject: Re: fixing out of order first fragment processing? X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 28 Jul 2004 18:48:31 -0000 Hello, On Thu, 22 Jul 2004, 14:34-0700, othermark wrote: > Hi, > > This is one of those obscure, yet well known issues in FreeBSD, > some network stacks, like Linux, send the udp/icmp fragment > first (if multiple frags -- in reverse order), then the orginal > packet with the header. > > In -current, we still cannot process this simple fragged icmp-echo > request from a Linux host. For example, 'ping -c 1 -s 1500 '. > > FreeBSD discards the frag(s) and when it sees the initial packet with > header waits for the frags. > > So two questions: > > 1. is there a gnats pr? I tried various searches with no success. AFAIK no. > 2. are there workarounds/patches? First of all, I can't reproduce this behaviour. "ping -c 1 -s 4500 freebsd" from the linux produces a pseudo tcpdump liek below: linux > freebsd: icmp (frag 64465:68@4440) linux > freebsd: icmp (frag 64465:1480@2960+) linux > freebsd: icmp (frag 64465:1480@1480+) linux > freebsd: icmp: echo request (frag 64465:1480@0+) freebsd > linux: icmp: echo reply (frag 6529:1480@0+) freebsd > linux: icmp (frag 6529:1480@1480+) freebsd > linux: icmp (frag 6529:1480@2960+) freebsd > linux: icmp (frag 6529:68@4440) Linux kernel is 2.4.20-ac2, FreeBSD is 5.2.1-RELEASE. What are yours? Could you provide netstat -sp ip | grep frag snippet from the FreeBSD box? Clear the stats (netstat -zs) before experiments is a good idea as well. -- Maxim Konovalov