Re: [dnssd] Parsing Service Discovery Instruction for SRP (2.3.1.1)

Esko Dijk <esko.dijk@iotconsultancy.nl> Thu, 19 August 2021 11:26 UTC

Return-Path: <esko.dijk@iotconsultancy.nl>
X-Original-To: dnssd@ietfa.amsl.com
Delivered-To: dnssd@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id B61B03A0CC8 for <dnssd@ietfa.amsl.com>; Thu, 19 Aug 2021 04:26:01 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.1
X-Spam-Level:
X-Spam-Status: No, score=-2.1 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, HTML_MESSAGE=0.001, RCVD_IN_MSPIKE_H2=-0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=iotconsultancy.nl
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 DaOCxa_kCjUQ for <dnssd@ietfa.amsl.com>; Thu, 19 Aug 2021 04:25:55 -0700 (PDT)
Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05on2131.outbound.protection.outlook.com [40.107.20.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 079313A0CC5 for <dnssd@ietf.org>; Thu, 19 Aug 2021 04:25:54 -0700 (PDT)
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=CfV2rysykF20suVXw9ibCIwuaLCZOp2xojeKxHqXbJaljSZtnZRxbuLhrOwGuX8J9MREMboe1ToUqJeFWJZJGoM0IFlbV+jtMUCeEMk+BXrGEE4IAnUA0+fKCS9EnTGtdLJJHzmAon2TKuzave2kxHRTOoPjynNgsc1FptTJmDt8OTZndlARVj/rLkYfCYg0utARQFtn1E75EYHSstIwZM3SjiVdlU/NuWEcCx4zjb+WwnRwxDfmm8Ma9NA9dlFm8QkFpw991md+ipoCz2C7g/xWeNqmsmkXUMGXoYLf+Qf/x1ZSClwZwZ5BahLLdv348tp0KsNsBbM45ySih7c7/w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=kvHyUb5tlpp9LCW+sQpayTm6HGHgXKxiyGmHjP7Npmk=; b=iWczHj2c1WGk0JRek/KpcjPmGAyqRtADK1NZnGAoqIWPtIJ3RjwR5dm1OuXEyke1dWeGVLF0u9eiGvMolQYf7BMtB8JIlhubyKRTc1WBvpTGvBR4k4Wjauz1Cz2eTGTz5LrIiIGwrTvBRYkOb2xTs0hzi3UcF2W6GN5z9JzYdzWLRLUEGZfCFTD2BMYBlLn8EDy0kF3gKbWL4MPWWT2d5hiKF4wd1hSQHAn9+EZs/yDZyBF157Ag6GLxUjQXVdJKIW28+GoP2RDba+RGwrFJ/zngfq0wcKo57O9sgklQVzHMvQxWQ399x0/yGAR6Xvkn14anma2xRNxh7ImK/ncGlQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=iotconsultancy.nl; dmarc=pass action=none header.from=iotconsultancy.nl; dkim=pass header.d=iotconsultancy.nl; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=iotconsultancy.nl; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=kvHyUb5tlpp9LCW+sQpayTm6HGHgXKxiyGmHjP7Npmk=; b=f98aqHzweeHP5Z46iAl8TDSQ6hB5SeAgyjXZQmMCt6MLV+n0la8vXLsXc9BHCQjTmU62wD5W1oOiridnS17hams30b/zAcVwUmbYi5s4Lkr+vMg9f22mEEPL7kcc9fZPFgrb45Wk3X1CSvfOMfF64A8LyU1d5j7mf48ANGIs0Cw=
Received: from AM8P190MB0979.EURP190.PROD.OUTLOOK.COM (2603:10a6:20b:1d3::8) by AM4P190MB0082.EURP190.PROD.OUTLOOK.COM (2603:10a6:200:62::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4436.19; Thu, 19 Aug 2021 11:25:52 +0000
Received: from AM8P190MB0979.EURP190.PROD.OUTLOOK.COM ([fe80::44fa:5ced:a434:f7e8]) by AM8P190MB0979.EURP190.PROD.OUTLOOK.COM ([fe80::44fa:5ced:a434:f7e8%9]) with mapi id 15.20.4436.019; Thu, 19 Aug 2021 11:25:52 +0000
From: Esko Dijk <esko.dijk@iotconsultancy.nl>
To: DNSSD <dnssd@ietf.org>
CC: Ted Lemon <mellon@fugue.com>
Thread-Topic: Parsing Service Discovery Instruction for SRP (2.3.1.1)
Thread-Index: AdeUMwjaRIocQMs/T761taAG+UH0OwAuQKpQ
Date: Thu, 19 Aug 2021 11:25:51 +0000
Message-ID: <AM8P190MB09792F669425E7BDD1C0E500FDC09@AM8P190MB0979.EURP190.PROD.OUTLOOK.COM>
References: <AM8P190MB097971C9F383D3283261F47EFDFF9@AM8P190MB0979.EURP190.PROD.OUTLOOK.COM>
In-Reply-To: <AM8P190MB097971C9F383D3283261F47EFDFF9@AM8P190MB0979.EURP190.PROD.OUTLOOK.COM>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
authentication-results: ietf.org; dkim=none (message not signed) header.d=none; ietf.org; dmarc=none action=none header.from=iotconsultancy.nl;
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: 0350abb9-8b99-44b7-76ca-08d963041a42
x-ms-traffictypediagnostic: AM4P190MB0082:
x-microsoft-antispam-prvs: <AM4P190MB00829CAB297ACED4B6CB8C19FDC09@AM4P190MB0082.EURP190.PROD.OUTLOOK.COM>
x-ms-oob-tlc-oobclassifiers: OLM:10000;
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: n56xS2fYWSAm4rdbNO6WCSEuq9Lv19lY6/0u91kdAORbF5WAlPiJT9awCXvpyma4mO3c9g2jjLPEK3PYyVkc3Z5GLZnK5djz4ylp77NDQZTfrrJU3t8R1SaoKV73NjLU/IUP7l+dadYM+XInB4zYrpB+8UmqD4zxFYg+MgFsMWcTwR5fAHfkWAwC0c55QTKSUqKOYr/RrKhdp5XsJrCK945cPbnGVe9Sx7ynL+ICLHtTlgn/jGrLen9C2scuG4ZxrVZYA9sbOMSz9I5MZEP95kefqkK2MSwl+9J1/7GbH1O8gTbaHqWFIC6XFuSo3bfk06fBBpcUCzttLv8yy0LB0x/P5NodTcrhdgCvhffwyRl0r6o8hoAl6jsMs3lXbJuwoB69xlaUZtkPgP/H0tIF4Zu0NtGW/kzd1JeAKjLb+0xQdn3tkJQVqc6/4fxkifAQI7oYlIwrZ7ltuzQ7EIE93UzItv99mll/hu5vwWTKhgM1e9djuSY045l5FJcHVR6JMEamP1A7buIPU6Cmm7QQG+M5I1iIu/XAqA9HEEnCQb5RrtUkMDpCjg5+tyCr2+K8bwRlbQXN64RB4rgGPZ9FqyRgn8GqkZ0E1lNozqGrTyLv8tLNn8ilfLtkZ2oyHgw2uMQ1kn19SbeY1SP7wSYWSsvQDj0205TRaA1dBlgKoj85uM23NKxg5dEKqYYYvGkDjK8JbszslMf1jZVQNrze7pMzfpXYsNMTNvooMmRsrLfkpuLFdJ3yTso8EcOFZXc5aCfa4+MPFTq3dUjAcLG9foyWKevxVU7HqMJbYgncJ/Q=
x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:AM8P190MB0979.EURP190.PROD.OUTLOOK.COM; PTR:; CAT:NONE; SFS:(366004)(39830400003)(136003)(376002)(396003)(346002)(122000001)(38100700002)(44832011)(508600001)(4326008)(33656002)(166002)(2906002)(86362001)(83380400001)(9686003)(55016002)(8676002)(8936002)(66946007)(76116006)(5660300002)(186003)(316002)(6506007)(53546011)(7696005)(6916009)(71200400001)(38070700005)(66556008)(66476007)(64756008)(66446008)(52536014); DIR:OUT; SFP:1102;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: IWETj+a8ZtHWJESP0UMxKpDcLEULhqftiYgb/Q1v/2hYeKBBrzsFfqRcdlRhxrlSC+/UQvnm7lJ81iNZePmIMe63U2qhPY+wLb82SkDKDQZNr/fpl8I00YH75MSazNycHxlLTBSIiu+J0ihl0zDiyd057GStcrJChdh04t6JdO3Q3eH55782Q0nIweKneacGNtObXwXLulbn0qIhBf2Bq9TaNRY6HvMcLsXC339C50jAwtc3z9zhd/izzFV5dtmZTbsFCAGGw/WF6/oM51jcZSQXtjQ7iXaDWkArdfzLj9UFRO3WtIUYN44gzgLYm3n/JdxUgoYfhKNsMFRQ+cDb1wxPTTdRXugY45HglB1S3KRQ4lk1PTXml+7uJkmQ347J+AqCkxcDbMfitTsmd4+nByda8caE12M72/kDsd/DEq3qEiubDNoWOQC6MaUXYk8yx+LHc+PCLSPPTj+71zbrQHephgewrNoGy1tKlIKF/tG/7tCHY1GDxt7Q3ujcVf2BXpS0sVDy5304kusnH+PADH7eTEPYFxKl2vt5DnpNhRZ2jTe7V8wcIaAs1wYpPYHaP/NRzOSAElcgUDRevHX3c+3+FDLIyFtEkv6Go15KwUH9t9qWygWncq5U/CZDoPP9KuGpcnJoB99YLULfYPGKyIIStUIHMrwMGx5Fk9cbRZOx+5xTvSeKFaSMfPG+LZ99MemOtO+TMKCSuMtvk2eXh/dWzajrM4dJlRQEmQbvO/r4gi5wUPilVXG93xn+uNOzv//1Zisa8IcyK0YFXNddVJD2tKuhkiiVevelzZTDqtqQZkFULtxAyMZRq/SJTqXjjDs5jG271n7+03odeNDpEJDx1dmkYbjvIQmiLNo1szXy8ee3RhUqfjJ4TluUEEYg3wZ7oR0x29zjGviz59w8PmbwbkDK6TiEhhE8IoS79HjHOffl8aqHEUyXFpPvADGO9qYXlwd03ZFsXdEG7dmNO2RfyIq1VByYgehliIdPsp3zyoRghlcdjuuRuxPgAVc4kLxA0jl61IVbf5UUjmsFKNMQ2fGO1ssLo0P3sY09k6aO7WgLH+MxeFV+EuclX8bMiPcvpsO6UO8SdawepEnL1bexYtYXLqstLURTxHf51tx8gKltgczJNEUrf2JgTUE+1+86pdO4uYVd4dg9s2qVQnVGJQ3Cxbpqvcuz2taZPmtXtj+MBEp2OgctWt1H6hCxDmwDyeSAB3dhZP++CnWnCqpy78hWaDdC0+Z5UqkURo8jLMzCuNOJNrhBMIgfHAiMwQ6qe32vNNaUP1rfWUTvMD2oj4kI4UYCh1WzpT9G1zKn5cF0JAro0BjT9Qyo6SwTWe0DIZ0ByO5xJr/eTI673f4DLx919vDirfM1HBGIEpe8ojMi10RA+ZgiTt5cT8O5
x-ms-exchange-transport-forked: True
Content-Type: multipart/alternative; boundary="_000_AM8P190MB09792F669425E7BDD1C0E500FDC09AM8P190MB0979EURP_"
MIME-Version: 1.0
X-OriginatorOrg: iotconsultancy.nl
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: AM8P190MB0979.EURP190.PROD.OUTLOOK.COM
X-MS-Exchange-CrossTenant-Network-Message-Id: 0350abb9-8b99-44b7-76ca-08d963041a42
X-MS-Exchange-CrossTenant-originalarrivaltime: 19 Aug 2021 11:25:52.0352 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 58bbf628-15d2-46bc-820b-863b6774d44b
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: uDNyiN+vZRALVAGZxxpmZWFNfGn5Kk0hW7xOULMccgdvkwV94OEX/rjEvyzUtIwBp3c5VQs9ddQAbpgqbX4sFC2PpWgGC83fE+P7cuLoAx0=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM4P190MB0082
Archived-At: <https://mailarchive.ietf.org/arch/msg/dnssd/l6JyWYSR7T-wLem7VvS6AYZts8g>
Subject: Re: [dnssd] Parsing Service Discovery Instruction for SRP (2.3.1.1)
X-BeenThere: dnssd@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "Discussion of extensions to DNS-based service discovery for routed networks." <dnssd.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/dnssd>, <mailto:dnssd-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/dnssd/>
List-Post: <mailto:dnssd@ietf.org>
List-Help: <mailto:dnssd-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/dnssd>, <mailto:dnssd-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 19 Aug 2021 11:26:02 -0000

As an alternative to my below email, here is another (simpler) text for Section 2.3.1.1 :



An instruction within an SRP Update is a Service Discovery Instruction if



   *  it contains exactly one "Add to an RRSet" ([RFC2136], Section 2.5.1<https://datatracker.ietf.org/doc/html/rfc2136#section-2.5.1>) or exactly one "Delete an RR from an RRSet" ([RFC2136], Section 2.5.4<https://datatracker.ietf.org/doc/html/rfc2136#section-2.5.1>) RR update,
       o  which updates a PTR type RR,
       o  which points to a Service Instance Name that is being used in at least one other Instruction in this SRP Update,

   * and it contains no other RR UPDATEs.

This eliminates all references to external Service Description Instructions to simply the conditions. Due to the Section 2.3.2 requirements on the “instructions” it looks like it is not necessary to define these already as part of the 2.3.1.1 text.  (The Section 2.3.2 requirements will already weed out the bad cases.)

Best regards
Esko

From: Esko Dijk
Sent: Wednesday, August 18, 2021 15:25
To: DNSSD <dnssd@ietf.org>
Cc: Ted Lemon <mellon@fugue.com>
Subject: Parsing Service Discovery Instruction for SRP (2.3.1.1)

Hi all, Ted,

While doing my SRP review I found Section 2.3.1.1 on Service Discovery Instruction a bit difficult to parse:


"if the Service Discovery update is an "Add to an RRSet" instruction, the Service Description Instruction does not match if"

-> for me unclear what the 'does not match' refers to.  What is matched with what?

Why is Service Discovery Instruction mentioning “the” Service Description Instruction? (Which one?)



" if the Service Discovery Instruction is an "Delete an RR from an  RRSet" update, "

-> the bullet list tries to define what constitutes a Service Discovery Instruction. Now this bullet point mentions a Service Discovery Instruction, even though we don't know yet whether this instruction constitutes a Service Discovery Instruction or not! The bullet list was there in the first place to find this out so the instruction at this point may or may not be of the Service Discovery Instr type.



Below  is an attempted rewording of the entire section, to simplify and clarify – some parts I have probably wrong but I need this to understand what the intended definition is so I can give rewording suggestions.



An instruction within an SRP Update is a Service Discovery Instruction if



   *  it contains exactly one "Add to an RRSet" ([RFC2136], Section 2.5.1<https://datatracker.ietf.org/doc/html/rfc2136#section-2.5.1>) or exactly one "Delete an RR from an RRSet" ([RFC2136], Section 2.5.4<https://datatracker.ietf.org/doc/html/rfc2136#section-2.5.1>) RR update but no additional RR UPDATEs,
   *  which updates a PTR type RR,
   *  which points to a Service Instance Name,
   *  for which Service Instance Name also a Service Description Instruction is present in the same SRP Update,
   *  and in case the single contained RR update is "Add to an RRSet", the SRP Update also contains a Service Description Instruction including one "Add to an RRset" RR update for the SRV type RR
      defining the same Service Instance Name;
   * or in case the single contained RR update is "Delete an RR from an RRSet", the SRP Update contains no Service Description Instruction including an "Add to an RRset" update for the same Service Instance Name.



Corrections/feedback is welcome!


Best regards
Esko

IoTconsultancy.nl  |  Email/Teams: esko.dijk@iotconsultancy.nl<mailto:esko.dijk@iotconsultancy.nl>    |   +31 6 2385 8339