Re: [dcp] sequence numbers on resend

Eddie Kohler <kohler@icir.org> Tue, 07 May 2002 19:41 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 PAA21925 for <dcp-archive@odin.ietf.org>; Tue, 7 May 2002 15:41:52 -0400 (EDT)
Received: (from daemon@localhost) by optimus.ietf.org (8.9.1a/8.9.1) id PAA14809 for dcp-archive@odin.ietf.org; Tue, 7 May 2002 15:41:59 -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 PAA14643; Tue, 7 May 2002 15:41:43 -0400 (EDT)
Received: from ietf.org (odin [132.151.1.176]) by optimus.ietf.org (8.9.1a/8.9.1) with ESMTP id PAA14459 for <dcp@optimus.ietf.org>; Tue, 7 May 2002 15:41:35 -0400 (EDT)
Received: from coyote.icir.org (coyote.icir.org [192.150.187.37]) by ietf.org (8.9.1a/8.9.1a) with ESMTP id OAA18655 for <dcp@ietf.org>; Tue, 7 May 2002 14:01:47 -0400 (EDT)
Received: from coyote.icir.org (localhost [127.0.0.1]) by coyote.icir.org (8.11.6/8.11.3) with ESMTP id g47I1o610384; Tue, 7 May 2002 11:01:50 -0700 (PDT) (envelope-from kohler@coyote.icir.org)
Message-Id: <200205071801.g47I1o610384@coyote.icir.org>
To: "Patrick R. McManus" <mcmanus@ducksong.com>
cc: dcp@ietf.org
Subject: Re: [dcp] sequence numbers on resend
In-Reply-To: Message from "Patrick R. McManus" <mcmanus@ducksong.com> of "Tue, 07 May 2002 13:48:40 EDT." <20020507174840.GA1191@ducksong.com>
Date: Tue, 07 May 2002 11:01:50 -0700
From: Eddie Kohler <kohler@icir.org>
Sender: dcp-admin@ietf.org
Errors-To: dcp-admin@ietf.org
X-Mailman-Version: 1.0
Precedence: bulk
List-Id: Datagram Control Protocol <dcp.ietf.org>
X-BeenThere: dcp@ietf.org

>   1] the above - using the same ISN would let you use the same
>   connection and not have orphaned timers.

The connection is uniquely identified by the port numbers [and Service
Name]. A retransmitted Request will have the same port numbers, so there's
only one connection, and no orphaned timers.

>   3] least surprise - in TCP a retransmit is a RE-transmit, the same
>   TCP level data is simply sent again. this way you only have to worry
>   about dups not which one is "right". 

Well, in DCCP, every packet increments the sequence number, including pure
acks (and retransmitted pure acks). Therefore I think incrementing the
Request sequence number would surprise the least.

>   2] (rvcd_ackn == local_isn) has to match on each side to complete
>   the handshake.. extending that to (rcvd_ackn is_in
>   list_of_local_isns) is an implementation hassle - requiring state
>   maintenance for each resend.

I agree with this concern, although I don't think the hassle would be that
serious. It's not a new kind of state, after all; it's just like the state
DCCP endpoints maintain for established connections.

Again, it doesn't seem like a big deal either way. I prefer incrementing
the sequence number for internal consistency, and because it provides more
information to the endpoints.

With incremented sequence numbers, the endpoints need to handle old (=
delayed) and duplicated Requests and Responses. With identical sequence
numbers, the endpoints need to handle duplicated Requests and Responses.
The logic will be basically the same. Doesn't seem that much easier.

Eddie

_______________________________________________
dcp mailing list
dcp@ietf.org
https://www1.ietf.org/mailman/listinfo/dcp