From owner-freebsd-arch@FreeBSD.ORG Mon Apr 13 14:13:50 2009 Return-Path: Delivered-To: freebsd-arch@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 717571065674; Mon, 13 Apr 2009 14:13:50 +0000 (UTC) (envelope-from rmacklem@uoguelph.ca) Received: from mailhub.cs.uoguelph.ca (mailhub.cs.uoguelph.ca [131.104.94.205]) by mx1.freebsd.org (Postfix) with ESMTP id 258F98FC20; Mon, 13 Apr 2009 14:13:49 +0000 (UTC) (envelope-from rmacklem@uoguelph.ca) Received: from muncher.cs.uoguelph.ca (muncher.cs.uoguelph.ca [131.104.91.102]) by mailhub.cs.uoguelph.ca (8.13.1/8.13.1) with ESMTP id n3DEDh8x018152; Mon, 13 Apr 2009 10:13:43 -0400 Received: from localhost (rmacklem@localhost) by muncher.cs.uoguelph.ca (8.11.7p3+Sun/8.11.6) with ESMTP id n3DEK9a24696; Mon, 13 Apr 2009 10:20:09 -0400 (EDT) X-Authentication-Warning: muncher.cs.uoguelph.ca: rmacklem owned process doing -bs Date: Mon, 13 Apr 2009 10:20:09 -0400 (EDT) From: Rick Macklem X-X-Sender: rmacklem@muncher.cs.uoguelph.ca To: Tim Kientzle In-Reply-To: <49E25816.9010907@freebsd.org> Message-ID: References: <49D98461.4000002@elischer.org> <49E25816.9010907@freebsd.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed X-Scanned-By: MIMEDefang 2.63 on 131.104.94.205 Cc: Robert Watson , Julian Elischer , freebsd-arch@freebsd.org Subject: Re: getting a callback ip address for nfsv4 client X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 13 Apr 2009 14:13:50 -0000 On Sun, 12 Apr 2009, Tim Kientzle wrote: > > In general, the client doesn't know what address to use > in this case. In fact, I've been a little confused by this > conversation all along. It sounds like the client is > looking up it's own address in order to tell the server > how to contact the client? Why? The server already > knows the source IP address on the incoming packets > from the client; that's much more robust than anything > the client could look up. > No misunderstanding, except that the nfsv4 designers put the callback address in the SetClientID request, so a client must explicitly specify it. (I can only guess that they wanted the client to be able to specify an alternate routing or maybe some vendors wanted to be able to put the callback server on a separate machine/interface or ???) To me, it would have been simpler to just put callback RPCs in the same TCP stream as the client->server RPCs, but they didn't do that either. For nfsv4.1, there is a large glob of stuff called Sessions, which handles the transport layer and the connections for callbacks are created by the client, which avoids the problem. rick