Re: [babel] New Version Notification for draft-ietf-babel-rtt-extension-06.txt
David Schinazi <dschinazi.ietf@gmail.com> Fri, 19 April 2024 17:19 UTC
Return-Path: <dschinazi.ietf@gmail.com>
X-Original-To: babel@ietfa.amsl.com
Delivered-To: babel@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id C7D54C14F6BE for <babel@ietfa.amsl.com>; Fri, 19 Apr 2024 10:19:39 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 2.903
X-Spam-Level: **
X-Spam-Status: No, score=2.903 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, GB_SUMOF=5, HTML_MESSAGE=0.001, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001] autolearn=no autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
Received: from mail.ietf.org ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id r29Y57ScJ3QK for <babel@ietfa.amsl.com>; Fri, 19 Apr 2024 10:19:37 -0700 (PDT)
Received: from mail-ed1-x536.google.com (mail-ed1-x536.google.com [IPv6:2a00:1450:4864:20::536]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id AE986C14F694 for <babel@ietf.org>; Fri, 19 Apr 2024 10:19:37 -0700 (PDT)
Received: by mail-ed1-x536.google.com with SMTP id 4fb4d7f45d1cf-571bddddbc2so1923835a12.1 for <babel@ietf.org>; Fri, 19 Apr 2024 10:19:37 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1713547176; x=1714151976; darn=ietf.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=PV4OubDZ4lDTl0RbFmXBaSwL8Rm0sPSuDxorwCMZEdo=; b=adAfVz+HXKMCOS7Zgh/zdZsBXT1yeVrDwOfyER559qjidQUTZTs2NFOlE1AAovKoZp QH48qVXjI6+MdzypWV305nMh2UV36pxsvv20+0JyaG9SKquJlFpYojPp4utlVL1RzPBo H326lDCDEpeVEpjiuUMvLAgEMk7vg0rrQIHTIkHyYIHjW7xC9aBfG8AE7jmAjEbCNvrS t7rnHpC3ZwrGdchIz9l1nhh4YbwlZMfPcFCixEzjlAifEhtzAjlHvQ0GZkZKEJJV1OpL 2TwlJMTt3xZrU/LNyk2MYAmZiEZx4Gp+nEZbon3irrr2HBoSQEbiRTJRb3VooJltMoyP Fnpw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1713547176; x=1714151976; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=PV4OubDZ4lDTl0RbFmXBaSwL8Rm0sPSuDxorwCMZEdo=; b=caPVR4FTtrl0Ixsei2+BQcE3vQRVvZ+/5cMOJfioJi/xdnh/JRoRPaFeda5P+cR7QF e9PmigOsD/3A7Gsv78wEs1GhFkx9CghR5lYgX9wu0dtMI0CGTc5cDTcwfwrZHjrrcsO/ toHaHOY/saQNudHICT0C6Lf/i798UY9itoFE4vyubkwGfyTzjrhElS8zGS3K5lYUNJ5o RIwGcs5PfgKWtNmcMwYYjwuGzf2672g+8SgMgJ0Ibd3jVAgwah4tc+XQMZm/2DHYK6vi 8CwTch+oAn6+IWIIl3iGMq4ldHDJT9pkA5XOV96HfaZovBaYhfPRlcH5l9/a3BCMiBsw C+xA==
X-Forwarded-Encrypted: i=1; AJvYcCU1ZjdjmnT6ux53wdK1suScPHoslVa0f4WJI6vIm0CjNp5baOQtR4d5jOYE8BClQvP1E25JLE4d01yricjoGg==
X-Gm-Message-State: AOJu0YwW1HuBC+POqFMmK5vtluBsMI7zlLtvGfygeEDByoKKbFuYNbIJ HmRha2gqZKfDGScUC+lbA81RW2mWZokI94flBEMlkzQqqVUqwu3/qpLHZhHxCXSUNGYCbLpD3+N inSXOfXtFx6h14TF0mUE5hbC/SERlMg==
X-Google-Smtp-Source: AGHT+IGcYabwXdxyuAlaqHNlUFkON1obBQe81EHlYAEqbTyy8+cW6let5e2ue5F3m5w4LavDWM1R+srDUk1LT6f9tPU=
X-Received: by 2002:a17:906:b0d:b0:a52:2f86:91e4 with SMTP id u13-20020a1709060b0d00b00a522f8691e4mr1767764ejg.24.1713547175699; Fri, 19 Apr 2024 10:19:35 -0700 (PDT)
MIME-Version: 1.0
References: <171328574275.28898.9111599332162642753@ietfa.amsl.com> <87v84h5k56.wl-jch@irif.fr> <87r0f5urqv.fsf@toke.dk> <87sezki0w2.wl-jch@irif.fr> <87y19bu70m.fsf@toke.dk> <87bk67ixr9.wl-jch@irif.fr> <87plunu5nb.fsf@toke.dk> <87a5lritwi.wl-jch@irif.fr> <CAPDSy+4TSZ4sSEV1XAKSuC53+0dNCv9od=5vSC1Oua3i9a8ypQ@mail.gmail.com> <87o7a6n3yg.wl-jch@irif.fr> <87le5an37f.wl-jch@irif.fr> <CAPDSy+62hv7TCqhb8-pW+3G521moHzHVwNBbm78fw4OuVS-Pbg@mail.gmail.com> <87cyqlnwsw.wl-jch@irif.fr>
In-Reply-To: <87cyqlnwsw.wl-jch@irif.fr>
From: David Schinazi <dschinazi.ietf@gmail.com>
Date: Fri, 19 Apr 2024 10:19:24 -0700
Message-ID: <CAPDSy+5DFyLny7CuiY7n3vmeKzeXpN4YEzbvEaHzQq56z-q6Vg@mail.gmail.com>
To: Juliusz Chroboczek <jch@irif.fr>
Cc: Toke Høiland-Jørgensen <toke@toke.dk>, babel@ietf.org, Pascal Thubert <pascal.thubert@gmail.com>
Content-Type: multipart/alternative; boundary="000000000000b6b1160616764a16"
Archived-At: <https://mailarchive.ietf.org/arch/msg/babel/55rgOrSMnGxC2oBLhlxcAawHpgI>
Subject: Re: [babel] New Version Notification for draft-ietf-babel-rtt-extension-06.txt
X-BeenThere: babel@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: "A list for discussion of the Babel Routing Protocol." <babel.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/babel>, <mailto:babel-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/babel/>
List-Post: <mailto:babel@ietf.org>
List-Help: <mailto:babel-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/babel>, <mailto:babel-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 19 Apr 2024 17:19:39 -0000
On Fri, Apr 19, 2024 at 9:26 AM Juliusz Chroboczek <jch@irif.fr> wrote: > I've reordered your text. > > > 1) ease/possibility of implementation > > This one is important, but - if we assume that all implementations don't > need > > to match - then we can just say "SHOULD implement as low in the stack as > you > > can" and everyone can do that on whatever platform they are > > [...] > > > I guess the bit I'm not sure about is the assumption that I mentioned > above: > > the fact that implementations don't need to match. Is there any reason > why > > we'd want them to match? > > If two implementations don't match by a significant amount, then the > protocol will be biased in favour of one implementation. > > Suppose that Linux doesn't include local queueing delay and Mac OS X does. > Then, all other things being equal, the protocol will prefer routing > through Linux routers rather than Mac OS X routers. Which is probably the > right behaviour, but it should be an explicit decision rather than > a somewhat mysterious side-effect of an implementation detail. > Thanks, that's what I was imagining too. Isn't it already the case that two different implementations could make implementation choices that would lead one to be prefered over the other? I'm willing to bet that my since-lost implementation had multiple bugs that would have this unintentional behavior :-) > 2) symmetry > > As you point out, since RTT is the sum of both one-way delays, it will > always > > be symmetric :-) > > Well, ping is not necessarily symmetric. If you timestamp ping packets at > the bottom of the stack, then the RTT measured by ping includes remote > queueing delay but not the local counterpart. And the two queueing delays > are not necessarily equal. > > Mills' algorithm, on the other hand, guarantees symmetry. Good algorithm. > Good point, you're absolutely right. > 3) scheduling jitter > > I would assume that it's best to not count scheduling jitter since > that'll > > most likely pollute the measurements and not impact the actual flow of > packets > > along this route > > Agreed, but what if this contradicts requirement (1)? We need to make > a choice. > I think the two possible choices can be boiled down to: (A) tell implementers to do the best they can (B) pick the least common denominator that we know everyone can do Option (B) guarantees that all implementations behave similarly, but at the cost of less accurate measurements for everyone. Option (A) gives better measurements, but can lead some implementations to be selected less. The differentiator becomes: how common are these implementations that can't (or don't, or won't) get precise receive timestamps? Every common general-purpose OS I'm aware of has an equivalent of SO_TIMESTAMP (Linux, macOS, *BSD, Windows). The environment I'm used to that doesn't have this feature is ESP32/Arduino, mainly because their network stack is based on LWIP. That said, such a platform has so many other limitations that RTT measurements will always be quite imprecise because of how interrupts are handled. So on that platform, we really will get implementation details getting in the way of routing no matter what - it's just that it's OS implementation details instead of Babel implementation details. So I would posit that we don't need to worry about OSes that don't provide these precise timestamps. The question becomes: do the existing Babel implementations want to all progressively switch to more precise timestamps, or not? From a theoretical standpoint, I prefer (A) to (B), but at the end of the day I would recommend having the spec match what the real implementations are doing - or planning to do. David
- Re: [babel] New Version Notification for draft-ie… Juliusz Chroboczek
- Re: [babel] New Version Notification for draft-ie… Juliusz Chroboczek
- Re: [babel] New Version Notification for draft-ie… David Schinazi
- Re: [babel] New Version Notification for draft-ie… Juliusz Chroboczek
- Re: [babel] New Version Notification for draft-ie… David Schinazi
- Re: [babel] New Version Notification for draft-ie… Toke Høiland-Jørgensen
- Re: [babel] New Version Notification for draft-ie… Toke Høiland-Jørgensen
- Re: [babel] New Version Notification for draft-ie… Toke Høiland-Jørgensen
- Re: [babel] New Version Notification for draft-ie… Juliusz Chroboczek
- Re: [babel] New Version Notification for draft-ie… Toke Høiland-Jørgensen
- Re: [babel] New Version Notification for draft-ie… Juliusz Chroboczek
- Re: [babel] New Version Notification for draft-ie… David Schinazi
- Re: [babel] New Version Notification for draft-ie… Toke Høiland-Jørgensen
- Re: [babel] New Version Notification for draft-ie… Juliusz Chroboczek
- Re: [babel] Okay to update draft-ietf-babel-rtt-e… Gunter van de Velde (Nokia)
- Re: [babel] New Version Notification for draft-ie… Juliusz Chroboczek
- Re: [babel] New Version Notification for draft-ie… David Schinazi
- Re: [babel] New Version Notification for draft-ie… Pascal Thubert
- [babel] Okay to update draft-ietf-babel-rtt-exten… Juliusz Chroboczek
- Re: [babel] Okay to update draft-ietf-babel-rtt-e… Juliusz Chroboczek
- Re: [babel] Okay to update draft-ietf-babel-rtt-e… Gunter van de Velde (Nokia)
- Re: [babel] New Version Notification for draft-ie… Juliusz Chroboczek
- Re: [babel] New Version Notification for draft-ie… David Schinazi