Re: [Dime] Conclusion for Sequence Numbers - was Re: OVLI: comments to 4.3
Ben Campbell <ben@nostrum.com> Tue, 10 December 2013 15:03 UTC
Return-Path: <ben@nostrum.com>
X-Original-To: dime@ietfa.amsl.com
Delivered-To: dime@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 1B30C1AE02F for <dime@ietfa.amsl.com>; Tue, 10 Dec 2013 07:03:22 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.036
X-Spam-Level:
X-Spam-Status: No, score=-1.036 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HELO_MISMATCH_COM=0.553, HOST_MISMATCH_NET=0.311] autolearn=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id ESycieSzE6nn for <dime@ietfa.amsl.com>; Tue, 10 Dec 2013 07:03:20 -0800 (PST)
Received: from shaman.nostrum.com (nostrum-pt.tunnel.tserv2.fmt.ipv6.he.net [IPv6:2001:470:1f03:267::2]) by ietfa.amsl.com (Postfix) with ESMTP id 4A5261ADF90 for <dime@ietf.org>; Tue, 10 Dec 2013 07:03:20 -0800 (PST)
Received: from [10.0.1.29] (cpe-173-172-146-58.tx.res.rr.com [173.172.146.58]) (authenticated bits=0) by shaman.nostrum.com (8.14.3/8.14.3) with ESMTP id rBAF37jn083655 (version=TLSv1/SSLv3 cipher=AES128-SHA bits=128 verify=NO); Tue, 10 Dec 2013 09:03:08 -0600 (CST) (envelope-from ben@nostrum.com)
Content-Type: text/plain; charset="us-ascii"
Mime-Version: 1.0 (Mac OS X Mail 7.0 \(1822\))
From: Ben Campbell <ben@nostrum.com>
In-Reply-To: <B81C3281-95F9-4F28-8662-2E20A6AE96A1@gmail.com>
Date: Tue, 10 Dec 2013 09:03:07 -0600
Content-Transfer-Encoding: quoted-printable
Message-Id: <46347965-5D5B-4EE9-A4DE-AB4C6D200973@nostrum.com>
References: <5BCBA1FC2B7F0B4C9D935572D90006681519DB1B@DEMUMBX014.nsn-intra.net> <C66C8914-AA7A-47F5-8EA4-7B0ECEDA5368@gmail.com> <52A5E902.20605@usdonovans.com> <7475B713-1104-4791-96B1-CE97632A0D69@nostrum.com> <B81C3281-95F9-4F28-8662-2E20A6AE96A1@gmail.com>
To: Jouni Korhonen <jouni.nospam@gmail.com>
X-Mailer: Apple Mail (2.1822)
Received-SPF: pass (shaman.nostrum.com: 173.172.146.58 is authenticated by a trusted mechanism)
Cc: "dime@ietf.org list" <dime@ietf.org>
Subject: Re: [Dime] Conclusion for Sequence Numbers - was Re: OVLI: comments to 4.3
X-BeenThere: dime@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: Diameter Maintanence and Extentions Working Group <dime.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/dime>, <mailto:dime-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/dime/>
List-Post: <mailto:dime@ietf.org>
List-Help: <mailto:dime-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/dime>, <mailto:dime-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 10 Dec 2013 15:03:22 -0000
I think that's close to correct. A couple of comments: On Dec 10, 2013, at 1:28 AM, Jouni Korhonen <jouni.nospam@gmail.com> wrote: > > Fine.. lets define then the sequence number semantics. Basic > unsigned integer math. The text proposal is the following: > > 4.4. OC-Sequence-Number AVP > > The OC-Sequence-Number AVP (AVP code TBD3) is type of Unsigned64. > Its usage in the context of the overload control is described in > Sections 4.1 and 4.3. > > From the functionality point of view, the OC-Sequence-Number AVP > MUST be used as a non-volatile increasing counter between two > overload control endpoints. The sequence number is only required > to be unique between two overload control endpoints and does not > need to be monotonically increasing. I think "increasing" and "monotonically increasing" mean the same thing. I believe the term we are looking for is "strictly increasing". > > When comparing two sequence numbers, the new sequence number MUST > be greater or equal than the old sequence number within a window > that is half of the size of the maximum sequence number. This > allows a simple handling of the sequence number overflow using > unsigned integer arithmeticf: The MUST probably belongs in the generation side, not the comparison side. For comparison, we can say something like "a new sequence number is greater than a previous one if the new sequence number..." > > #define WINDOW 0x8000000000000000ULL > > bool verify_seqnum( uint64_t newsn, uint64_t oldsn ) { > if (newsn - oldsn <= WINDOW) > // newsn >= oldsn > return true; > } else > // outside window or newsn < oldsn > return false; > } > } > > > > The above should even work is someone shovels NTP times into > sequence numbers with a blind typecasting. > > - Jouni > > On Dec 10, 2013, at 12:34 AM, Ben Campbell <ben@nostrum.com> wrote: > >> >> On Dec 9, 2013, at 10:00 AM, Steve Donovan <srdonovan@usdonovans.com> wrote: >> >>> Jouni, >>> >>> I propose that we keep the name OC-Sequence-Number but that we use the Time type for OC-Sequence-Number. It is misleading and potentially confusing to call it OC-Time-Stamp. >>> >> >> I could live with that, although I would rather just define the expected properties of the sequence number, and leave the implementation up to the implementor. I assume your reasoning for not calling it a timestamp is that you do not want people to try to use it as a time base reference. If so, then we don't require any connection to a clock. We just need it to be monotonically increasing. >> >>> We might consider expanding on the format of the AVP to make it something like Session-ID, where it is a concatenation of the Diameter-ID of the generating node and a timestamp. This might help the reacting node keep track of which sequence number it has received. >>> >> >> Do we need a uniqueness across multiple nodes property? If so, why? >> >>> Steve >>> >>> On 12/9/13 5:37 AM, Jouni Korhonen wrote: >>>> Folks >>>> >>>> Could we conclude on the sequence number vs. time stamp vs. something else? >>>> We got more important places to spend our energy than this ;) >>>> >>>> My proposal is the following (based on the original pre-00 design): >>>> >>>> o We change the OC-Sequence-Number to OC-Time-Stamp in all occurrences >>>> in the -01. >>>> o We use RFC6733 Time type for the OC-Time-Stamp. RFC6733 gives us >>>> already exact definition how to handle the AVP. >>>> o Define that the OC-Time-Stamp is the time of the creation of the >>>> "original" AVP within whose context the time stamp is present. >>>> o The OC-Time-Stamp AVP uniqueness is still considered to be in scope >>>> of the communicating endpoints. >>>> o The time stamp can be used to quickly determine if the content of >>>> the encapsulating AVP context has changed (among other properties). >>>> This would be useful specifically in the future when the encapsulating >>>> grouped AVPs grow in size and functionality. >>>> >>>> >>>> - Jouni >>>> >>>> _______________________________________________ >>>> DiME mailing list >>>> >>>> DiME@ietf.org >>>> https://www.ietf.org/mailman/listinfo/dime >>>> >>>> >>>> >>> >>> _______________________________________________ >>> DiME mailing list >>> DiME@ietf.org >>> https://www.ietf.org/mailman/listinfo/dime >> >> _______________________________________________ >> DiME mailing list >> DiME@ietf.org >> https://www.ietf.org/mailman/listinfo/dime >
- Re: [Dime] OVLI: comments to 4.3 Wiehe, Ulrich (NSN - DE/Munich)
- [Dime] OVLI: comments to 4.3 Wiehe, Ulrich (NSN - DE/Munich)
- Re: [Dime] OVLI: comments to 4.3 Jouni Korhonen
- Re: [Dime] OVLI: comments to 4.3 Ben Campbell
- Re: [Dime] OVLI: comments to 4.3 Nirav Salot (nsalot)
- Re: [Dime] OVLI: comments to 4.3 Jouni Korhonen
- Re: [Dime] OVLI: comments to 4.3 Jouni Korhonen
- Re: [Dime] OVLI: comments to 4.3 Wiehe, Ulrich (NSN - DE/Munich)
- Re: [Dime] OVLI: comments to 4.3 Shishufeng (Susan)
- [Dime] Conclusion for Sequence Numbers - was Re: … Jouni Korhonen
- Re: [Dime] OVLI: comments to 4.3 Nirav Salot (nsalot)
- Re: [Dime] Conclusion for Sequence Numbers - was … Steve Donovan
- Re: [Dime] OVLI: comments to 4.3 Ben Campbell
- Re: [Dime] Conclusion for Sequence Numbers - was … Ben Campbell
- Re: [Dime] Conclusion for Sequence Numbers - was … Jouni Korhonen
- Re: [Dime] OVLI: comments to 4.3 Maria Cruz Bartolome
- Re: [Dime] OVLI: comments to 4.3 Jouni Korhonen
- Re: [Dime] OVLI: comments to 4.3 Wiehe, Ulrich (NSN - DE/Munich)
- Re: [Dime] Conclusion for Sequence Numbers - was … Steve Donovan
- Re: [Dime] Conclusion for Sequence Numbers - was … Wiehe, Ulrich (NSN - DE/Munich)
- Re: [Dime] Conclusion for Sequence Numbers - was … Wiehe, Ulrich (NSN - DE/Munich)
- Re: [Dime] Conclusion for Sequence Numbers - was … Ben Campbell
- Re: [Dime] Conclusion for Sequence Numbers - was … Jouni Korhonen
- Re: [Dime] Conclusion for Sequence Numbers - was … Ben Campbell
- Re: [Dime] Conclusion for Sequence Numbers - was … Jouni Korhonen
- Re: [Dime] Conclusion for Sequence Numbers - was … Ben Campbell
- Re: [Dime] Conclusion for Sequence Numbers - was … Jouni Korhonen
- Re: [Dime] Conclusion for Sequence Numbers - was … Wiehe, Ulrich (NSN - DE/Munich)
- Re: [Dime] Conclusion for Sequence Numbers - was … Jouni
- Re: [Dime] Conclusion for Sequence Numbers - was … Wiehe, Ulrich (NSN - DE/Munich)
- Re: [Dime] Conclusion for Sequence Numbers - was … Jouni
- Re: [Dime] Conclusion for Sequence Numbers - was … Steve Donovan
- Re: [Dime] Conclusion for Sequence Numbers - was … Steve Donovan
- Re: [Dime] Conclusion for Sequence Numbers - was … Nirav Salot (nsalot)
- Re: [Dime] Conclusion for Sequence Numbers - was … Jouni Korhonen
- Re: [Dime] Conclusion for Sequence Numbers - was … Maria Cruz Bartolome
- Re: [Dime] Conclusion for Sequence Numbers - was … Jouni Korhonen
- Re: [Dime] Conclusion for Sequence Numbers - was … Wiehe, Ulrich (NSN - DE/Munich)
- Re: [Dime] Conclusion for Sequence Numbers - was … Wiehe, Ulrich (NSN - DE/Munich)
- Re: [Dime] Conclusion for Sequence Numbers - was … Jouni Korhonen
- Re: [Dime] Conclusion for Sequence Numbers - was … Jouni Korhonen
- Re: [Dime] Conclusion for Sequence Numbers - was … Nirav Salot (nsalot)
- Re: [Dime] Conclusion for Sequence Numbers - was … Steve Donovan
- Re: [Dime] Conclusion for Sequence Numbers - was … Steve Donovan
- Re: [Dime] Conclusion for Sequence Numbers - was … Steve Donovan
- Re: [Dime] Conclusion for Sequence Numbers - was … Steve Donovan
- Re: [Dime] Conclusion for Sequence Numbers - was … Wiehe, Ulrich (NSN - DE/Munich)
- Re: [Dime] Conclusion for Sequence Numbers - was … Nirav Salot (nsalot)
- Re: [Dime] Conclusion for Sequence Numbers - was … Wiehe, Ulrich (NSN - DE/Munich)
- Re: [Dime] Conclusion for Sequence Numbers - was … Wiehe, Ulrich (NSN - DE/Munich)
- Re: [Dime] Conclusion for Sequence Numbers - was … Steve Donovan
- Re: [Dime] Conclusion for Sequence Numbers - was … Steve Donovan
- Re: [Dime] Conclusion for Sequence Numbers - was … Nirav Salot (nsalot)
- Re: [Dime] Conclusion for Sequence Numbers - was … Steve Donovan
- Re: [Dime] Conclusion for Sequence Numbers - was … Nirav Salot (nsalot)