[dnssd] DNSSD at IETF 106 Hackathon

Stuart Cheshire <cheshire@apple.com> Wed, 13 November 2019 03:49 UTC

Return-Path: <cheshire@apple.com>
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 294C1120041 for <dnssd@ietfa.amsl.com>; Tue, 12 Nov 2019 19:49:51 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.001
X-Spam-Level:
X-Spam-Status: No, score=-2.001 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, 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=apple.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 qk4n9hX5vvHo for <dnssd@ietfa.amsl.com>; Tue, 12 Nov 2019 19:49:49 -0800 (PST)
Received: from nwk-aaemail-lapp03.apple.com (nwk-aaemail-lapp03.apple.com [17.151.62.68]) (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 435A412021D for <dnssd@ietf.org>; Tue, 12 Nov 2019 19:49:49 -0800 (PST)
Received: from pps.filterd (nwk-aaemail-lapp03.apple.com [127.0.0.1]) by nwk-aaemail-lapp03.apple.com (8.16.0.27/8.16.0.27) with SMTP id xAD3kkbD033040 for <dnssd@ietf.org>; Tue, 12 Nov 2019 19:49:48 -0800
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=apple.com; h=sender : from : content-type : content-transfer-encoding : mime-version : date : subject : message-id : to; s=20180706; bh=p8i8lMfZyevD4zAkLHFPkB1nfcjeXqowsBoAejZIRJs=; b=qXOQuAcBRfVDumzdoP2t5hJnnlNrYjQMumSEX760ul1OfVuNaGBMZ3MwlIhEWJw4VQfp IUoBVs1CBdPJRGHIuW5lP+bumF/KSYej90Zwlr5xh05t9Erkx2DQ2d/szeLU3z4PBuMX sp6BMtikFtDjy/dMMAq1GUmr4a5c/+z8aBPZXkG0c/9isRRZPsptHPLbwCl0meo3vU5w j7TRUSRe+Tu1ux4i9wXcKSZuJg+wphgvcChBFpA0sGT+cOWVta5bWaIhL4W4q3VsKGzz aF/edQfzRFROEh3g4hABjVcZcPw7D/iS44L7SDcOeb3Xs1twC51VRrCQXHk8dQozfSKL cw==
Received: from mr2-mtap-s02.rno.apple.com (mr2-mtap-s02.rno.apple.com [17.179.226.134]) by nwk-aaemail-lapp03.apple.com with ESMTP id 2w6ejphmph-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128 verify=NO) for <dnssd@ietf.org>; Tue, 12 Nov 2019 19:49:48 -0800
Received: from nwk-mmpp-sz11.apple.com (nwk-mmpp-sz11.apple.com [17.128.115.155]) by mr2-mtap-s02.rno.apple.com (Oracle Communications Messaging Server 8.0.2.4.20190507 64bit (built May 7 2019)) with ESMTPS id <0Q0W009UK2N0N280@mr2-mtap-s02.rno.apple.com> for dnssd@ietf.org; Tue, 12 Nov 2019 19:49:48 -0800 (PST)
Received: from process_milters-daemon.nwk-mmpp-sz11.apple.com by nwk-mmpp-sz11.apple.com (Oracle Communications Messaging Server 8.0.2.4.20190507 64bit (built May 7 2019)) id <0Q0W007002MMDZ00@nwk-mmpp-sz11.apple.com>; Tue, 12 Nov 2019 19:49:48 -0800 (PST)
X-Va-A:
X-Va-T-CD: 30a9c062f6936833101a7e3ef1ad5808
X-Va-E-CD: 303b26d41de50768a7133cfcb19a5694
X-Va-R-CD: 551b254fc646b192f665e9017c295798
X-Va-CD: 0
X-Va-ID: 623a3c31-7f60-4198-8783-bd363f6bd909
X-V-A:
X-V-T-CD: 30a9c062f6936833101a7e3ef1ad5808
X-V-E-CD: 303b26d41de50768a7133cfcb19a5694
X-V-R-CD: 551b254fc646b192f665e9017c295798
X-V-CD: 0
X-V-ID: 73e0f2a4-d047-4d74-aee5-981ad2f093b8
X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:,, definitions=2019-11-12_10:,, signatures=0
Received: from [17.234.100.5] (unknown [17.234.100.5]) by nwk-mmpp-sz11.apple.com (Oracle Communications Messaging Server 8.0.2.4.20190507 64bit (built May 7 2019)) with ESMTPSA id <0Q0W008K02MZ61A0@nwk-mmpp-sz11.apple.com>; Tue, 12 Nov 2019 19:49:48 -0800 (PST)
Sender: cheshire@apple.com
From: Stuart Cheshire <cheshire@apple.com>
Content-type: text/plain; charset=utf-8
Content-transfer-encoding: quoted-printable
MIME-version: 1.0 (Mac OS X Mail 11.5 \(3445.9.1\))
Date: Tue, 12 Nov 2019 19:49:46 -0800
Message-id: <B00C32F9-015B-4B5B-B772-6386AE16DFD4@apple.com>
To: DNSSD <dnssd@ietf.org>
X-Mailer: Apple Mail (2.3445.9.1)
X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:, , definitions=2019-11-12_10:, , signatures=0
Archived-At: <https://mailarchive.ietf.org/arch/msg/dnssd/LlnT6Xx24WYMvEsXehyLdZNniQ8>
Subject: [dnssd] DNSSD at IETF 106 Hackathon
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: Wed, 13 Nov 2019 03:49:51 -0000

I’m planning to be at the IETF 106 Hackathon. At previous Hackathons Ted Lemon has been my hacking companion, but right now Ted is too busy with other work to make it to IETF this time. If you’re interested in collaborating on some DNSSD coding on Saturday at the Hackathon, please let me know.

I’ve offered to host some hands-on “Code Clinic” coding sessions at the Hackathon, to show people how to take their existing code where a human user enters a hostname or IP address, and enhance it by adding service discovery using DNSSD APIs.

If you know some software that could benefit from having some service discovery added, please evangelize this opportunity to them. Here is the description as currently listed on the Hackathon wiki:

<https://trac.ietf.org/trac/ietf/meeting/wiki/106hackathon#DNSSD>

> Service Discovery Code Clinic. If your application has any place where a human user enters a hostname or IP address, come by for hands-on help updating your application to use network service discovery to improve that user experience. We can help you do this using the APIs available on Windows, Android, Linux, macOS, and iOS. If you’re using another platform, we can help you port the open source mDNSResponder code to that platform too. Please email Stuart Cheshire with “Code Clinic” in the subject line to arrange a time slot.


I’ve also volunteered to give a tutorial, 13:45-14:45 on Sunday, on the same topic. As above, if you know some software that could be improved by adding service discovery, please evangelize this tutorial to people you think could benefit from learning more about this. The full description is attached below.

Stuart Cheshire

--

Title: Service Discovery for IP applications

Abstract: If your application has any place where a human user enters a hostname or IP address, or uses broadcast to discover the address of a device, come to this tutorial to learn how you can use network service discovery to improve that user experience.

Description:

Many IP applications today are still configured manually. Sometimes a human user needs to enter a hostname or IP address in a configuration file or user-interface field. Sometimes software will use its own ad hoc broadcast-based discovery mechanism to learn the IP address of the peer with which it wishes to communicate. In both cases, using the IETF’s standard DNS-based service discovery mechanism, defined in RFC 6763, provides better user experience and more efficient use of the network.

In this tutorial we will cover the APIs available on Windows, Android, Linux, macOS, and iOS, that facilitate the three fundamental operations of DNS-based service discovery: Offer, Enumerate, and Use.

Sometimes the “use” step may be performed multiple times, as in the case of printing on a network printer. In other cases, the “enumerate” and “use” steps are performed just once, for the purpose of one-time provisioning and configuration of a new device added to the network.

This tutorial covers both local service discovery using Multicast DNS, defined in RFC 6762, and wide area service discovery using conventional unicast DNS, both via manual configuration of DNS servers (as is done for printing at IETF meetings) and via automation tools like a Discovery Proxy (defined in draft-ietf-dnssd-hybrid).

For those arriving early, we will be holding service discovery “code clinic” hours at the IETF 106 Hackathon on Saturday. Come by for hands-on help updating your application to use network service discovery.