[Seamoby] issue-#47: Change in MN-AR signaling retransmission scheme and of
"James Kempf" <kempf@docomolabs-usa.com> Wed, 05 May 2004 23:14 UTC
Received: from optimus.ietf.org (optimus.ietf.org [132.151.1.19]) by ietf.org (8.9.1a/8.9.1a) with ESMTP id TAA18305 for <seamoby-archive@odin.ietf.org>; Wed, 5 May 2004 19:14:27 -0400 (EDT)
Received: from localhost.localdomain ([127.0.0.1] helo=www1.ietf.org) by optimus.ietf.org with esmtp (Exim 4.20) id 1BLVZR-00053v-Pl for seamoby-archive@odin.ietf.org; Wed, 05 May 2004 19:12:57 -0400
Received: (from exim@localhost) by www1.ietf.org (8.12.8/8.12.8/Submit) id i45NCvIV019455 for seamoby-archive@odin.ietf.org; Wed, 5 May 2004 19:12:57 -0400
Received: from odin.ietf.org ([132.151.1.176] helo=ietf.org) by optimus.ietf.org with esmtp (Exim 4.20) id 1BLVXk-0004KI-5g for seamoby-web-archive@optimus.ietf.org; Wed, 05 May 2004 19:11:12 -0400
Received: from ietf-mx (ietf-mx.ietf.org [132.151.6.1]) by ietf.org (8.9.1a/8.9.1a) with ESMTP id TAA18147 for <seamoby-web-archive@ietf.org>; Wed, 5 May 2004 19:11:07 -0400 (EDT)
Received: from ietf-mx.ietf.org ([132.151.6.1] helo=ietf-mx) by ietf-mx with esmtp (Exim 4.32) id 1BLVXg-0007cg-TK for seamoby-web-archive@ietf.org; Wed, 05 May 2004 19:11:09 -0400
Received: from exim by ietf-mx with spam-scanned (Exim 4.12) id 1BLVWk-0007J6-00 for seamoby-web-archive@ietf.org; Wed, 05 May 2004 19:10:11 -0400
Received: from optimus.ietf.org ([132.151.1.19]) by ietf-mx with esmtp (Exim 4.12) id 1BLVW8-00070w-00 for seamoby-web-archive@ietf.org; Wed, 05 May 2004 19:09:32 -0400
Received: from localhost.localdomain ([127.0.0.1] helo=www1.ietf.org) by optimus.ietf.org with esmtp (Exim 4.20) id 1BLVQm-000168-Ll; Wed, 05 May 2004 19:04:00 -0400
Received: from odin.ietf.org ([132.151.1.176] helo=ietf.org) by optimus.ietf.org with esmtp (Exim 4.20) id 1BLVNt-0008Sr-MO for seamoby@optimus.ietf.org; Wed, 05 May 2004 19:01:01 -0400
Received: from ietf-mx (ietf-mx.ietf.org [132.151.6.1]) by ietf.org (8.9.1a/8.9.1a) with ESMTP id TAA17782 for <seamoby@ietf.org>; Wed, 5 May 2004 19:00:56 -0400 (EDT)
Received: from ietf-mx.ietf.org ([132.151.6.1] helo=ietf-mx) by ietf-mx with esmtp (Exim 4.32) id 1BLVNq-0004Zv-Dj for seamoby@ietf.org; Wed, 05 May 2004 19:00:58 -0400
Received: from exim by ietf-mx with spam-scanned (Exim 4.12) id 1BLVMr-0004Hz-00 for seamoby@ietf.org; Wed, 05 May 2004 18:59:58 -0400
Received: from key1.docomolabs-usa.com ([216.98.102.225] helo=fridge.docomolabs-usa.com ident=fwuser) by ietf-mx with esmtp (Exim 4.12) id 1BLVLt-0003zi-00 for seamoby@ietf.org; Wed, 05 May 2004 18:58:57 -0400
Message-ID: <002101c432f4$a38d4510$776115ac@dcml.docomolabsusa.com>
From: James Kempf <kempf@docomolabs-usa.com>
To: seamoby@ietf.org
Date: Wed, 05 May 2004 15:59:35 -0700
MIME-Version: 1.0
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: 7bit
Content-Transfer-Encoding: 7bit
Subject: [Seamoby] issue-#47: Change in MN-AR signaling retransmission scheme and of
Sender: seamoby-admin@ietf.org
Errors-To: seamoby-admin@ietf.org
X-BeenThere: seamoby@ietf.org
X-Mailman-Version: 2.0.12
Precedence: bulk
List-Unsubscribe: <https://www1.ietf.org/mailman/listinfo/seamoby>, <mailto:seamoby-request@ietf.org?subject=unsubscribe>
List-Id: Context Transfer, Handoff Candidate Discovery, and Dormant Mode Host Alerting <seamoby.ietf.org>
List-Post: <mailto:seamoby@ietf.org>
List-Help: <mailto:seamoby-request@ietf.org?subject=help>
List-Subscribe: <https://www1.ietf.org/mailman/listinfo/seamoby>, <mailto:seamoby-request@ietf.org?subject=subscribe>
X-Spam-Checker-Version: SpamAssassin 2.60 (1.212-2003-09-23-exp) on ietf-mx.ietf.org
X-Spam-Status: No, hits=0.1 required=5.0 tests=AWL autolearn=no version=2.60
Content-Transfer-Encoding: 7bit
Content-Transfer-Encoding: 7bit
The issue is why has the retransmission scheme and the associated protocol constants changed? These changes cannot be associated with any IESG comment. The response is that the changes in version 07 were made to implement exponential backoff. Lack of exponential backoff for congestion control came up during conversations with the shepherding AD, though they were not, as the issue mentions, identified during IESG review. Exponential backoff is the recommended IETF way for any application level datagram-based transport protocol that does retransmissions to handle congestion control. Specifically, comparing texts between draft 06 and draft 07, the 06 draft says this about transport on the MN-AR interface (Section 4.4.1, phrased as failure recovery): ---- It is likely that either a MN-AR CA Request or MN-AR CARD Reply may be dropped due to poor radio link conditions. A MN SHALL retransmit the CARD Request using the same message sequence number, if it does not receive a CARD Reply within MR_AR_CARD_TIMEOUT seconds. The MN SHALL retry sending the MN-AR CARD Request for a pre-configured number of times (MN_AR_CARD_RETRIES) before declaring the protocol message exchange aborted. The MN SHALL silently discard any duplicate MN-AR CARD Reply messages received from its current AR and take the latest information received as valid. ---- The 07 draft says this about transport on the MN-AR interface (Section 4.4, phrased as MN-AR transport): ---- The MN-AR interface uses ICMP for transport. Because ICMP messages are limited to a single packet, and because ICMP contains no provisions for retransmitting packets if signaling is lost, the CARD protocol incorporates provisions for improving transport performance on the MN-AR interface. CARD Requests which fail to elicit a response are retransmitted. The initial retransmission occurs after a CARD_REQUEST_RETRY wait period. Retransmissions MUST be made with exponentially increasing wait intervals (doubling the wait each time). CARD Requests should be retransmitted until either a response (which might be an error) has been obtained, or for CARD_RETRY_MAX seconds occurs. ARs MUST discard any CARD Requests having the same sequence number after CARD_RETRY_MAX seconds. MNs which retransmit a CARD Request use the same CARD sequence number. This allows an AR to cache its reply to the original request and then send it again, should a duplicate request arrive. This cached information should only be held for a maximum of CARD_RETRY_MAX seconds after receipt of the request. Sequence numbers SHOULD be randomly chosen to avoid duplicates if MNs restart frequently. MNs SHOULD limit the amount of information requested in a single ICMP reply packet, since ICMP has no provision for fragmentation above the IP level. ---- The differences between these two are: 1) The 07 draft specifies exponential backoff, whereas the 06 draft specifies a fixed number of retries. 2) The name of the wait period constant before the initial retry in the 06 draft is MR_AR_CARD_TIMEOUT while the name in the 07 draft is CARD_REQUEST_RETRY. 3) The 06 draft specifies that the MN issues MN_AR_CARD_RETRIES before giving up while the 07 draft specifies that the MN retransmits with exponential backoff until CARD_RETRY_MAX expire. 4) The 07 version specifies that the AR drops requests after CARD_RETRY_MAX seconds. The 06 version doesn't put any time limit on replies. 4) The 07 version allows the AR to cache its reply for CARD_RETRY_MAX seconds after first sending it so that it can quickly resend should the reply be lost and the MN request retransmission. 5) The 07 version changes how sequence numbers are generated and used: a) That the request and any retransmissions have the same sequence numbers. This point is also included in version 06. b) That the request and reply sequence numbers must match, and that the MN must reject any replies that don't match an outstanding request. This point is also included in version 06. c ) That the sequence number should be randomly chosen. This avoids the following problems with incremented sequence numbers: i) Draft 06 required the AR to maintain a cache of sequence numbers, with no limit given in the draft about how large the cache should be. An attacker could use this to launch a state exhaustion attack on the router. ii) If the MN shuts down then restarts a short time later, the AR might not have flushed the sequence number cache associated with the MN, and the AR would interpret restarting as a replay attack. This requires the MN to maintain the sequence number in stable storage, considerably complicating the implementation of the protocol. Usage patterns involving short shut down periods are likely to be common with mobile devices. 6) The 07 version gives additional guidance about limiting the amount of information requested to avoid the need for fragmentation. The points above indicate that the changes to the 07 draft were made to implement exponential backoff and to strengthen the use of sequence numbers. One constant name was changed (MR_AR_CARD_TIMEOUT), one constant was dropped due to the introduction of exponential backoff (MN_AR_CARD_RETRIES). The recommendation is that we keep the text as is in version 07, so that the MN-AR transport properly supports the IETF recommended way for datagram application level protocols to handle congestion - exponential backoff. jak _______________________________________________ Seamoby mailing list Seamoby@ietf.org https://www1.ietf.org/mailman/listinfo/seamoby