Re: [lp-wan] lpwan-overview comments

Alper Yegin <alper.yegin@actility.com> Mon, 10 July 2017 13:50 UTC

Return-Path: <alper.yegin@actility.com>
X-Original-To: lp-wan@ietfa.amsl.com
Delivered-To: lp-wan@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id D23471270A0 for <lp-wan@ietfa.amsl.com>; Mon, 10 Jul 2017 06:50:32 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2
X-Spam-Level:
X-Spam-Status: No, score=-2 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=actility.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 w8pxf8E_xG5T for <lp-wan@ietfa.amsl.com>; Mon, 10 Jul 2017 06:50:30 -0700 (PDT)
Received: from mail-wr0-x232.google.com (mail-wr0-x232.google.com [IPv6:2a00:1450:400c:c0c::232]) (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 BD22112702E for <lp-wan@ietf.org>; Mon, 10 Jul 2017 06:50:29 -0700 (PDT)
Received: by mail-wr0-x232.google.com with SMTP id k67so139321094wrc.2 for <lp-wan@ietf.org>; Mon, 10 Jul 2017 06:50:29 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=actility.com; s=google; h=from:message-id:mime-version:subject:date:in-reply-to:cc:to :references; bh=5Tn3S5XD7txp9uwiRjkCS9vZ2DaEo67RQylhBC4n7s8=; b=JcTOvpOsJyVRBBigZds0A0nMjwEa7xhHXPNQeeGrHmytPI7bpu8p3+MMng0Azvv/8l Qg9Ig7o4MLoohHwBbbd67VafELBOI7hz2c+giBlpPBkqBDcN0V0ZCkOWDhBxe/eQRD5H VC7DuHlxkNqPG60VVhfnsEFzrsdRpJ8Gvm8eU=
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=5Tn3S5XD7txp9uwiRjkCS9vZ2DaEo67RQylhBC4n7s8=; b=TEOuCxl6mSPVGPe+QavzeNnRgun2aVkksWRMXgUFSBApbimbyJy2i+f+4nB4n/Mi6P CNu8ZP2Bi9gY7N7BYASHIsQ5h5b7qbvnf7NQSVsHLGYYQ79tjhZu81Vb1Evg0wvLIg4W vtT/iALnkYDX/dd/HVARqtX3sPQ0DqDKOTKdwXpPEUGzctQYUQ16r2ZwaA81SPGCk9hF HaRN+k4WnFc9ljVUfJ7zyKzRQncmA4QnJ/NjgcfmMp70cT1+7xiYGwWhbQUb7VjA64IL tvaI4ZpmWMcsHuNR1NUU/4T/k+5ByvW+p1EaJW21nD15zs9eZNrP0QTSqZ03CmqBkkPN RP8w==
X-Gm-Message-State: AIVw113rsL0S02IgarLfuK6npdvGZl/FHBliiVI6Y9m+ga/mpwgknMqp acn8MWAyPfzFq1edGO1uXw==
X-Received: by 10.28.131.130 with SMTP id f124mr7808928wmd.25.1499694628137; Mon, 10 Jul 2017 06:50:28 -0700 (PDT)
Received: from [192.168.2.182] ([88.234.3.191]) by smtp.gmail.com with ESMTPSA id 9sm13099370wml.25.2017.07.10.06.50.26 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 10 Jul 2017 06:50:27 -0700 (PDT)
From: Alper Yegin <alper.yegin@actility.com>
Message-Id: <EE056362-7CF5-48D3-BD9F-EE0D0238D714@actility.com>
Content-Type: multipart/alternative; boundary="Apple-Mail=_64203639-6402-4135-B063-A3509886BAA0"
Mime-Version: 1.0 (Mac OS X Mail 10.0 \(3226\))
Date: Mon, 10 Jul 2017 16:50:25 +0300
In-Reply-To: <88a4a10c-6abf-efeb-0430-da9cbf24b5a9@cs.tcd.ie>
Cc: lp-wan@ietf.org
To: Stephen Farrell <stephen.farrell@cs.tcd.ie>
References: <59F856E1230C43D5A7CE1018F7C2DCA8@WeiGengyuPC> <E0AE5747-8F22-4E46-ABD8-5C55E821F9A1@actility.com> <259da1ec-041f-875b-813b-3e20844e822d@cs.tcd.ie> <715019FF-4331-43C0-82EA-829EA5176BF3@actility.com> <88a4a10c-6abf-efeb-0430-da9cbf24b5a9@cs.tcd.ie>
X-Mailer: Apple Mail (2.3226)
Archived-At: <https://mailarchive.ietf.org/arch/msg/lp-wan/o_hHERa06KoLI7YAVFp-e2okTEM>
Subject: Re: [lp-wan] lpwan-overview comments
X-BeenThere: lp-wan@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: "Low-Power Wide Area Networking \(LP-WAN\), also known as LPWA or Low-Rate WAN \(LR-WAN\)" <lp-wan.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/lp-wan>, <mailto:lp-wan-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/lp-wan/>
List-Post: <mailto:lp-wan@ietf.org>
List-Help: <mailto:lp-wan-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/lp-wan>, <mailto:lp-wan-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 10 Jul 2017 13:50:33 -0000

Hi Stephen,

> I suspect this is one of those where we'll only understand
> one another f2f, but…

One more try over email. If still not clear, we can chat over the phone. I won’t be at IETF this time unfortunately.


When confronted by a Join-request, the NS needs to figure out how to authenticate the request.
If the NS can recognize the DevEUI, then it’d know how to do the auth (e.g., by locally, or by forwarding to an external JS for that given DevEUI entry).
If the NS cannot recognize the DevEUI, then it resorts to AppEUI (or JoinEUI, both are different names for the exact same field in the Join-Request — name change happening in revisions). AppEUI/JoinEUI tells the NS who can authenticate that request (a local/co-located JS, or an external JS identified by the AppEUI/JoinEUI).

The confusion is arising from the evolving name and semantics of that field.

At any rate, LW1.0.2 says: 

"The AppEUI is a global application ID in IEEE EUI64 address space that uniquely identifies the entity able to process the JoinReq frame."

In my emails I’ve been highlighting the essential/underlined role of the AppEUI field. 




Alper















> On Jul 1, 2017, at 10:40 PM, Stephen Farrell <stephen.farrell@cs.tcd.ie> wrote:
> 
> 
> Hiya,
> 
> I suspect this is one of those where we'll only understand
> one another f2f, but...
> 
> On 01/07/17 20:18, Alper Yegin wrote:
>> Hi Stephen,
>> 
>>>> 
>>>> 
>>>>  End-devices are assumed to work with one or a quite limited number of
>>>>  applications, identified by a 64-bit AppEUI, which is assumed to be a
>>>>  registered IEEE EUI64 value.
>>>> 
>>>> 
>>>> 
>>>> AppEUI is being renamed as JoinEUI in LoRaWAN 1.1, and in fact it identifies the JS.
>>>> JoinEUI and JS terms are not present in LW1.0.x, but nevertheless the latest definition of the AppEUI in LW1.0.2 is as follows:
>>>> 
>>>> 
>>>> 
>>>> The AppEUI is a global application ID in IEEE EUI64 address space that uniquely identifies
>>>> 
>>>> the entity able to process the JoinReq frame.
>>>> 
>>>> 
>>>> So, we better not treat it as application identifier, but as identifier of the entity that can authenticate the Join-request frames.
>>>> 
>>>> For example, instead of:
>>>> 
>>>> AppEUI	IEEE EUI64 naming the application
>>>> 
>>>> We better say:
>>>> 
>>>> AppEUI	IEEE EUI64 naming the entity that processes Join-request
>>> 
>>> So I just don't understand how that can be correct, sorry;-)
>>> 
>>> A join-request is processed by a NS (or, in 1.1 a JS). There are very
>>> few of those, maybe 1 per n/w. There are many more device-types, which
>>> do mostly map 1:1 with AppEUIs. And the same device-types can be found
>>> in many networks.
>>> 
>>> So the suggested text just seems incorrect to me.
>>> 
>>> I'd say we're better to just stick with 1.0.2 terms tbh.
>>> 
>> 
>> If we want to strictly  stick with the LW1.0.2 definition, than it’d be:
>> 
>> AppEUI	IEEE EUI64 application id that identifies the entity processesing Join-request
>> 
> 
> Just to note: the above doesn't help me. I read it as the same as
> your previous suggested text, and hence, for me, it just reads like
> a false statement. (I don't mean badly worded, I mean untrue:-)
> 
>> In practice, it identifies the JS.
> 
> Let me try explain why I don't get that.
> 
> Each instance of some class of device will have the same AppEUI,
> call that "X." Let's say there are 10^5 instances of devices
> like that.
> 
> Let's say there are 2 LoRaWAN networks, each with an NS that has
> a co-located NS. With half the "X" type devices in each.
> 
> Both networks (call them N1, N2) have devices of the type that
> uses AppEUI X.
> 
> There is a 5000:1 ratio between instances of X and NS's/JS's
> in each network.
> 
> X therefore does not identify an NS or JS or anything like that.
> 
> Do you see why I'm confused if you want to say that X identifies
> or names the JS?
> 
> Cheers,
> S.
> 
>> 
>> Note that:
>> - NS and JS may be co-located or separated. This is true for both LW1.0.x and LW1.1 specs.
>> - The entity that processes the Join-request and generates Join-accept is the JS.
>> - Single NS may be connected to multiple JSs.
>> - Spec is based on 1:1 relationship between the end-device and JS. (Obviously, implementations can extend that).
>> - If the NS knows the identify of the JS to process an incoming Join-request based on the DevEUI, then AppEUI (which is later renamed to JoinEUI in LW1.1) has no significance. Otherwise, the NS relies on the AppEUI (JoinEUI) to identify the JS to process the request.
>> 
>> I just elaborated on these details, not to suggest including in the draft, but to point out that the significance of the AppEUI is to “ identify(ies) the entity able to process the JoinReq frame.” as stated in the LW1.0.2 spec. As long as we capture that, it is OK if the draft also refers to it as “application id”. (The reason name of the Join-request field morphed from AppEUI into JoniEUI in LW1.1 is basically this.)
>> 
>> Regards,
>> 
>> Alper
>> 
>> 
>> 
>> 
>> 
>> 
>> 
>> 
>>> Cheers,
>>> S.
>>> 
>>>> 
>>>> 
>>>> 
>>>> 
>>>> Thanks Stephen.
>>>> 
>>>> Alper
>>>> 
>>>> 
>>>> 
>>>> _______________________________________________
>>>> lp-wan mailing list
>>>> lp-wan@ietf.org
>>>> https://www.ietf.org/mailman/listinfo/lp-wan
>>>> 
>>> 
>> 
>> _______________________________________________
>> lp-wan mailing list
>> lp-wan@ietf.org <mailto:lp-wan@ietf.org>
>> https://www.ietf.org/mailman/listinfo/lp-wan <https://www.ietf.org/mailman/listinfo/lp-wan>