Re: [port-srv-reg] "xmp" service type and the unified IANA Service Name and Port Number Registry

Joe Touch <touch@isi.edu> Fri, 26 August 2011 06:47 UTC

Return-Path: <touch@isi.edu>
X-Original-To: port-srv-reg@ietfa.amsl.com
Delivered-To: port-srv-reg@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 3800521F8AA9 for <port-srv-reg@ietfa.amsl.com>; Thu, 25 Aug 2011 23:47:16 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -104.909
X-Spam-Level:
X-Spam-Status: No, score=-104.909 tagged_above=-999 required=5 tests=[AWL=1.690, BAYES_00=-2.599, RCVD_IN_DNSWL_MED=-4, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id R-0D0vFcupg0 for <port-srv-reg@ietfa.amsl.com>; Thu, 25 Aug 2011 23:47:15 -0700 (PDT)
Received: from boreas.isi.edu (boreas.isi.edu [128.9.160.161]) by ietfa.amsl.com (Postfix) with ESMTP id B049521F8A96 for <port-srv-reg@ietf.org>; Thu, 25 Aug 2011 23:47:15 -0700 (PDT)
Received: from [192.168.1.91] (pool-71-105-81-169.lsanca.dsl-w.verizon.net [71.105.81.169]) (authenticated bits=0) by boreas.isi.edu (8.13.8/8.13.8) with ESMTP id p7Q6m7wW001332 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT); Thu, 25 Aug 2011 23:48:16 -0700 (PDT)
Message-ID: <4E5741A7.4000701@isi.edu>
Date: Thu, 25 Aug 2011 23:48:07 -0700
From: Joe Touch <touch@isi.edu>
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:6.0) Gecko/20110812 Thunderbird/6.0
MIME-Version: 1.0
To: Stuart Cheshire <cheshire@apple.com>
References: <CA7C879E.F7AE%joe.hildebrand@webex.com> <21610AF4-C1D5-4DA0-BBF4-33A8463B2B73@apple.com>
In-Reply-To: <21610AF4-C1D5-4DA0-BBF4-33A8463B2B73@apple.com>
Content-Type: text/plain; charset="ISO-8859-1"; format="flowed"
Content-Transfer-Encoding: 7bit
X-ISI-4-43-8-MailScanner: Found to be clean
X-MailScanner-From: touch@isi.edu
Cc: Joe Hildebrand <joe.hildebrand@webex.com>, port-srv-reg@ietf.org
Subject: Re: [port-srv-reg] "xmp" service type and the unified IANA Service Name and Port Number Registry
X-BeenThere: port-srv-reg@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Discussion of updates to service name and transport protocol port registry <port-srv-reg.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/port-srv-reg>, <mailto:port-srv-reg-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/port-srv-reg>
List-Post: <mailto:port-srv-reg@ietf.org>
List-Help: <mailto:port-srv-reg-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/port-srv-reg>, <mailto:port-srv-reg-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 26 Aug 2011 06:47:16 -0000

On 8/25/2011 10:59 PM, Stuart Cheshire wrote:
> On 25 Aug 2011, at 22:13, Joe Hildebrand wrote:
>
>> In case that wasn't just a rhetorical flourish, look up the XMPP federation
>> information for GoogleTalk:
>>
>> $ dig +short -t SRV _xmpp-server._tcp.gmail.com.
>> 5 0 5269 xmpp-server.l.google.com.
>> 20 0 5269 alt3.xmpp-server.l.google.com.
>> 20 0 5269 alt4.xmpp-server.l.google.com.
>> 20 0 5269 alt1.xmpp-server.l.google.com.
>> 20 0 5269 alt2.xmpp-server.l.google.com.
>
> We're delving into software deployment philosophy a bit here, but this is a good example.
>
> A sensible strategy to ship (client or server) software is:
>
>    If an SRV record exists, then use it,
>    else, if a local /etc/services entry exists, then use it,
>    else use the port IANA assigned to you.

I agree.

> This lets you write software and ship it right away, without waiting for some future OS update.
>
> Since the software writer already knows what port IANA assigned, the
> /etc/services entry is only relevant when it's *different* to the port
> IANA assigned. The logical conclusion of this line of thought is that
> it's only necessary to record *exceptions* in your local /etc/services
> file, since all the apps already know their IANA-assigned default (and
> if every OS update were to overwrite your /etc/services file with the
> latest IANA version, overwriting your local changes, you'd get pretty
> annoyed by that).

That's a fair point, except that /etc/services is *also* already used by 
a variety of software as a shared ".h" file, where even the defaults are 
looked up by name rather than coded in by number.

Which means there's no particular harm in having an /etc/services that 
includes the current defaults. It would result in the same response 
using the algorithm above.

It's also not uncommon for sysops to grep /etc/services to find out 
what's running. The common "netstat" command consults /etc/services for 
this purpose as well.

(it'd be useful to know what the source to Apple's netstat uses to 
identify protocols that it didn't know about when it was compiled)

Joe