Re: [Int-area] The small address use case in FlexIP

Stewart Bryant <stewart.bryant@gmail.com> Wed, 03 February 2021 16:21 UTC

Return-Path: <stewart.bryant@gmail.com>
X-Original-To: int-area@ietfa.amsl.com
Delivered-To: int-area@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 8A86F3A08F4 for <int-area@ietfa.amsl.com>; Wed, 3 Feb 2021 08:21:40 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.997
X-Spam-Level:
X-Spam-Status: No, score=-1.997 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, HTML_MESSAGE=0.001, HTTPS_HTTP_MISMATCH=0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
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 SIy44AE1Irfi for <int-area@ietfa.amsl.com>; Wed, 3 Feb 2021 08:21:38 -0800 (PST)
Received: from mail-wm1-x334.google.com (mail-wm1-x334.google.com [IPv6:2a00:1450:4864:20::334]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id A6F483A08ED for <int-area@ietf.org>; Wed, 3 Feb 2021 08:21:37 -0800 (PST)
Received: by mail-wm1-x334.google.com with SMTP id u14so206822wmq.4 for <int-area@ietf.org>; Wed, 03 Feb 2021 08:21:37 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:message-id:mime-version:subject:date:in-reply-to:cc:to :references; bh=odnp4CXWyhtw6pmZDTUlKkdjCO+iGXRDo1Xk95AHkUg=; b=lT4ogJ/nhfETLR2RWq1lIvvWSVQQ3XHrf+/hWyvtKjNnHtay11Uyiz9/l5uWVD2XLS egqPXEuB59Ccq2+9+6It2E6tgX6ukxZyEEgmvPioHh9NmaXH1wuAUFhjYFyQKP7gB5Ii bbjG/H22ftdyWpCz0vB9NGmEepl5dUS1DwoHK5CqTBuc//F8zTOzhkbmInqIM9SGPAvt +dblCvedqknIzj5+72UvrQJz9ILH/tpiO7ZAy+f1Id5aqHmhlEjiF3LyEU+dgI6LcI7q r/akmowQzQ8NKi6yUuucldlTNPD1VAVbqg0gOPKDWm9uQw7cAjhImSLXY3FgfcOCidsn aLlw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:message-id:mime-version:subject:date :in-reply-to:cc:to:references; bh=odnp4CXWyhtw6pmZDTUlKkdjCO+iGXRDo1Xk95AHkUg=; b=kq2zkYAvUJeykdWeIENqs8srkYKAGYK9o+PD/JkgbdrkZLlo9mNdRoBzMKfhPmduHQ tFO8Ym81n8UqtkyQy8M7Cq1Gt2GYCxu9eIab0AlV20TNSM86phzpMHbkkvClukxBGMUe Yey8RIBCxjuojsl/d00sPH0iEEUXzLqEvX5B851ASvM4EZ4+Qaug5N6hbo+jk0w/sggB B8MWp/1HpOkjR+ISjFNe7UWrb/HTmj0hSwQNqIDeUZ2TBURBVLu4/I4pZCe6DOJah+Ng 127sJv4+erBeajl49LTj2f3yoWIs9g59o76bFnqdBHBGZg5NvsNnrGHdxCkyRkUjevVy Hknw==
X-Gm-Message-State: AOAM533lOqgTfCPvz+BOq8Gh4gDa4TWOgHHxzMuOhPsomFbZdYFAl8BM XxU+tMXhINs3CINX518Sd5M=
X-Google-Smtp-Source: ABdhPJzk9Zf0w4OYghlNcRgcmhlWWedCK/evu3Er4bytJ2WopvMBLJuyT4l/eFZXuyLyoZHrCr8yPQ==
X-Received: by 2002:a1c:bc46:: with SMTP id m67mr3604229wmf.82.1612369296114; Wed, 03 Feb 2021 08:21:36 -0800 (PST)
Received: from broadband.bt.com ([2a00:23c5:3395:c901:791e:1b4e:f095:65e3]) by smtp.gmail.com with ESMTPSA id i6sm3959572wrs.71.2021.02.03.08.21.33 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Wed, 03 Feb 2021 08:21:34 -0800 (PST)
From: Stewart Bryant <stewart.bryant@gmail.com>
Message-Id: <9DBC691D-E83B-4D8B-950E-A2E6159EFBD7@gmail.com>
Content-Type: multipart/alternative; boundary="Apple-Mail=_BD52139C-8791-4A7E-8265-5B95E536F91B"
Mime-Version: 1.0 (Mac OS X Mail 13.4 \(3608.120.23.2.4\))
Date: Wed, 03 Feb 2021 16:21:29 +0000
In-Reply-To: <CAC8QAce77S5J+DODr-JHhdeoWY2uH-QWMh=be=Fi6YHgonW77g@mail.gmail.com>
Cc: Stewart Bryant <stewart.bryant@gmail.com>, int-area <int-area@ietf.org>
To: sarikaya@ieee.org
References: <051CE5FA-BDCB-4BA3-BE19-2C6FF995AC04@gmail.com> <CAC8QAce77S5J+DODr-JHhdeoWY2uH-QWMh=be=Fi6YHgonW77g@mail.gmail.com>
X-Mailer: Apple Mail (2.3608.120.23.2.4)
Archived-At: <https://mailarchive.ietf.org/arch/msg/int-area/wd3XSA4hAzGlHM2mj3fSilYT5C4>
Subject: Re: [Int-area] The small address use case in FlexIP
X-BeenThere: int-area@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: IETF Internet Area Mailing List <int-area.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/int-area>, <mailto:int-area-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/int-area/>
List-Post: <mailto:int-area@ietf.org>
List-Help: <mailto:int-area-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/int-area>, <mailto:int-area-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 03 Feb 2021 16:21:41 -0000

Dear Behcet

You need to read the scenarios draft to see the use cases they have in mind.

I think some people have concerns at the cost of compressing a header, but there seem to be other use cases.

It is up to the authors to build their argument for short addresses I was responding to the case they made.

Stewart


> On 3 Feb 2021, at 15:38, Behcet Sarikaya <sarikaya2012@gmail.com> wrote:
> 
> Hi Stewart,
> 
> Thanks for your analysis.
> I haven't read the drafts you mentioned but I thought that the address size issue was long resolved with the IPv6:
> 
> basically it matters on the wireless medium and this is solved by the so-called ROHC RObust Header Compression, 
> which is adapted by 5G and it works well.
> Wired medium case which seems to be the main focus according to your mail, was considered moot, the routers would be able handle it and on the medium it does not delay things much.
> 
> Behcet
> 
> On Wed, Feb 3, 2021 at 8:09 AM Stewart Bryant <stewart.bryant@gmail.com <mailto:stewart.bryant@gmail.com>> wrote:
>  
> Re drafts:
>  
> https://datatracker.ietf.org/doc/draft-jia-scenarios-flexible-address-structure/ <https://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Fdatatracker.ietf.org%2Fdoc%2Fdraft-jia-scenarios-flexible-address-structure%2F&data=04%7C01%7Ckiranm%40futurewei.com%7C95b5d102feaf4674ab8408d8c7972448%7C0fee8ff2a3b240189c753a1d5591fedc%7C1%7C0%7C637478799262464227%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=yDi0mFnbU60nFC5PJC%2BAAWVIdSMT%2FY8UO0XIiK3J4iI%3D&reserved=0>
> https://datatracker.ietf.org/doc/draft-jia-flex-ip-address-structure/ <https://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Fdatatracker.ietf.org%2Fdoc%2Fdraft-jia-flex-ip-address-structure%2F&data=04%7C01%7Ckiranm%40futurewei.com%7C95b5d102feaf4674ab8408d8c7972448%7C0fee8ff2a3b240189c753a1d5591fedc%7C1%7C0%7C637478799262464227%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=XB9VFEQiaa0ZMjG5BuF%2FPeQnvFcmGgfY0%2Bye4s7CSoA%3D&reserved=0>
> I have a number of comments these drafts, but in this email I would like to focus on the small address proposal. By this I mean addresses that are shorter than 64bits.
>  
> It seems to me that there are 3 operational reasons for small addresses:
>  
> 1) That you might be worried about the amount of packet taken up by the addresses.
>  
> 2) That you might be worried about the amount of energy required to send a packet.
>  
> 3) That you want to use an address that is somehow native to a legacy application.
> 
> … and there are at least to implementation reasons:
> 
> 4) That you might be worried about the amount of memory in the FIB.
>  
> 5) That you might wish to optimise out the FIB hardware. 
>  
> There are two approaches to the case of addresses that are are relatively short, where for the purposes of this discussion I define “relatively short” as an address between 8 and 64 bits in length.
> 
> One approach is to design and implement a new packet type, be that an original design, or the repurposing of a suitable existing non-IP design. If that is what you have in mind it would greatly assist consideration of your work if you published that design in the IETF, or at least pointed to it as an accessible document. That would allow us to debate the properties of the packet and or your address proposal in the context of the packet design. An alternative approach which needs to be considered is to make the FlexIP address a suffix of an existing and well known address type such as IPv6. In such a case by standardising the corresponding IPv6 prefix you may produce implementation simplifications, or alternatively by making it a prefix well known in the domain you construct quite an effective leakage prevention mechanism.
> 
> Consider the IPv6 suffix case. Validating a well-know prefix before invoking the address lookup machinery is a simple efficient process using either one of more compare operators, or some hw technique such as a special register. Certainly we could build hw to look up a small set of well-known prefixes that burns a lot less energy than used in a full address lookup. So that brings us to looking up the suffix and, by definition the table used to do that is small.
> In other words most of the efficiency of doing a short address lookup can be maintained even if the address is the suffix of a longer address provided that the implementation is optimised for this case.
>  
> I think that argument covers much of use cases 3, 4 and 5. This applies to your Indexes 1..EF, F0, F1 and F2 in your propose address design.
>  
> In your F5 case a longest match engine will work by definition on a variable length address, provided it is short enough that sufficient addresses from the primary address space can be deployed to this. Note that you can throw the address length into the longest match engine if you wish and it will simply consume it and if correctly programmed will return the correct result. Thus any of the address definitions that do not contain discontinuous substructure such as the cases with inbuilt segment routing can be looked up in a common hardware address recognition engine without analysis of the first byte.
>  
> Now I think that it is worth looking at case 1 and 2 above and noting there is some applicability to both the short address cases and the segment routing case with short addresses that you propose.
>  
> Of course it is very difficult to do an accurate analysis these cases because the packet design that FlexIP is going to be used with is not referenced by the drafts.
>  
> Let us assume a tiny packet:
>  
> 14B of MAC header (Lora is 13 to 28, Ethernet is 14)
> 8B of UDP
> 2B of payload
>  
> That is 24B + NW layer (the addresses plus the overhead)
>  
> Now consider IPv6 which is pretty minimalist for a connectionless packet apart from the size of its addresses.
>  
> IPv6 is 40B 
>  
> So total of 64B for the packet which is the benchmark since it is the IETF plan of record for most applications.
>  
> If we reduce the addresses to 1B (the minimum in these drafts) i.e. subtract 32 - 2 = 30 so best case is packet of 34B. 
>  
> That is a useful saving 47% which might be important in some specialist applications where bandwidth or radio energy was important, however  much depends on what the practical size of the payload in, and what options or extensions are in the packet to fulfil the  communications needs. So for example if I were to need an additional 20B of packet option and payload the saving is reduced to 36% reducing to 20% saving if 100B were needed. A 20% saving is not worth the cost and complexity of changing the packet.
>  
> So, to understand the benefit of reducing the address size and presumably using it in an as yet undefined packet format it is necessary for the authors to describe the application for small standalone addresses (as opposed to address suffixes) in a lot more detail than is provided in the scenarios document, in particular the size of the transport layer, and the size of the expected payload. Additionally it is necessary that they describe the details of the network layer packet and its MAC environment.
>  
> Once more detail is know, we will know whether there is a case for small native addresses or whether we should focus our attention on how to map such addresses as suffixes of a larger well known address type such as IPv6.
>  
> - Stewart
> _______________________________________________
> Int-area mailing list
> Int-area@ietf.org <mailto:Int-area@ietf.org>
> https://www.ietf.org/mailman/listinfo/int-area <https://www.ietf.org/mailman/listinfo/int-area>