RE: [dhcwg] dhcpv6-24: Elapsed Time option

"Bernie Volz (EUD)" <Bernie.Volz@am1.ericsson.se> Thu, 09 May 2002 17:34 UTC

Received: from optimus.ietf.org (ietf.org [132.151.1.19] (may be forged)) by ietf.org (8.9.1a/8.9.1a) with ESMTP id NAA01803 for <dhcwg-archive@odin.ietf.org>; Thu, 9 May 2002 13:34:43 -0400 (EDT)
Received: (from daemon@localhost) by optimus.ietf.org (8.9.1a/8.9.1) id NAA12097 for dhcwg-archive@odin.ietf.org; Thu, 9 May 2002 13:34:52 -0400 (EDT)
Received: from optimus.ietf.org (localhost [127.0.0.1]) by optimus.ietf.org (8.9.1a/8.9.1) with ESMTP id NAA11943; Thu, 9 May 2002 13:32:33 -0400 (EDT)
Received: from ietf.org (odin [132.151.1.176]) by optimus.ietf.org (8.9.1a/8.9.1) with ESMTP id NAA11913 for <dhcwg@optimus.ietf.org>; Thu, 9 May 2002 13:32:31 -0400 (EDT)
Received: from imr2.ericy.com (imr2.ericy.com [198.24.6.3]) by ietf.org (8.9.1a/8.9.1a) with ESMTP id NAA01711 for <dhcwg@ietf.org>; Thu, 9 May 2002 13:32:21 -0400 (EDT)
Received: from mr6.exu.ericsson.se (mr6att.ericy.com [138.85.224.157]) by imr2.ericy.com (8.11.3/8.11.3) with ESMTP id g49HVxi13102 for <dhcwg@ietf.org>; Thu, 9 May 2002 12:31:59 -0500 (CDT)
Received: from eamrcnt747.exu.ericsson.se (eamrcnt747.exu.ericsson.se [138.85.133.37]) by mr6.exu.ericsson.se (8.11.3/8.11.3) with SMTP id g49HVxY10000 for <dhcwg@ietf.org>; Thu, 9 May 2002 12:31:59 -0500 (CDT)
Received: FROM eamrcnt761.exu.ericsson.se BY eamrcnt747.exu.ericsson.se ; Thu May 09 12:31:58 2002 -0500
Received: by eamrcnt761.exu.ericsson.se with Internet Mail Service (5.5.2653.19) id <KRTWBD7A>; Thu, 9 May 2002 12:31:58 -0500
Message-ID: <66F66129A77AD411B76200508B65AC69B4D3E1@EAMBUNT705>
From: "Bernie Volz (EUD)" <Bernie.Volz@am1.ericsson.se>
To: 'Ted Lemon' <Ted.Lemon@nominum.com>
Cc: 'Thomas Narten' <narten@us.ibm.com>, dhcwg@ietf.org
Subject: RE: [dhcwg] dhcpv6-24: Elapsed Time option
Date: Thu, 09 May 2002 12:31:49 -0500
MIME-Version: 1.0
X-Mailer: Internet Mail Service (5.5.2653.19)
Content-Type: multipart/alternative; boundary="----_=_NextPart_001_01C1F77F.66BD3DF0"
Sender: dhcwg-admin@ietf.org
Errors-To: dhcwg-admin@ietf.org
X-Mailman-Version: 1.0
Precedence: bulk
List-Id: <dhcwg.ietf.org>
X-BeenThere: dhcwg@ietf.org

Ted:

Exactly correct. And in fact from my reading of the DHCPv4 specification, this is required by it. Here's the text from RFC 2131:

     To help
     ensure that any BOOTP relay agents forward the DHCPREQUEST message
     to the same set of DHCP servers that received the original
     DHCPDISCOVER message, the DHCPREQUEST message MUST use the same
     value in the DHCP message header's 'secs' field and be sent to the
     same IP broadcast address as the original DHCPDISCOVER message.

I did forget to mention that we might just need to do that - have the server return the elapsed time option to the client!

I don't have any issue in changing things from DHCPv4 ... I was just assuming we MIGHT want to use that model since it has been tried and proven?

I also agree that having the relay base the forwarding on the elapsed time is likely bad - but again, that was assumed to happen with DHCPv4!!

- Bernie

-----Original Message-----
From: Ted Lemon [mailto:Ted.Lemon@nominum.com]
Sent: Thursday, May 09, 2002 12:55 PM
To: Bernie Volz (EUD)
Cc: 'Thomas Narten'; dhcwg@ietf.org
Subject: Re: [dhcwg] dhcpv6-24: Elapsed Time option 


> If the server should fail to get a Reply to the Request and restarts the 
> Solicit, time should not be reset.
>
> - Time is 0 when first Renew/Rebind is sent. Increases with each 
> retransmission until timeout or Reply.
>
> - Time is 0 when first Decline/Release is sent. Increases with each 
> retransmission until timeout or Reply.
>
> - Time is 0 when first Information-Request is sent. Increases with each 
> retransmission until timeout or Reply.
>

I think if you let the relay agent make relaying decisions based on the 
time sent by the client, you're in big trouble.   Picture this:

client sends solicit A, t=0
relay sends solicit to server A
client sends solicit B, t=100
relay sends solicit to server B
server A responds to solicit A with advertise A
client sends Request A, t=100
relay sends Request A to server B
server B drops Request A on the floor

repeat until bored

The only reliable way to fix this is to have the server send the time it 
received from the client in the solicit back to the client in the advertise,
  and for the client to use that time in every subsequent Request, 
regardless of how long it has to retry.   This is complicated to specify, 
and complicated to implement.   Do we really want this?