[Simple] RE: Action Item: character mappings for interoperability

Joe Hildebrand <JHildebrand@jabber.com> Mon, 15 December 2003 23:36 UTC

Received: from ietf-mx (ietf-mx.ietf.org [132.151.6.1]) by ietf.org (8.9.1a/8.9.1a) with ESMTP id SAA06201 for <simple-archive@ietf.org>; Mon, 15 Dec 2003 18:36:02 -0500 (EST)
Received: from ietf-mx ([132.151.6.1]) by ietf-mx with esmtp (Exim 4.12) id 1AW2Fw-0005VN-00 for simple-archive@ietf.org; Mon, 15 Dec 2003 18:36:04 -0500
Received: from exim by ietf-mx with spam-scanned (Exim 4.12) id 1AW2Fu-0005VG-00 for simple-archive@ietf.org; Mon, 15 Dec 2003 18:36:03 -0500
Received: from [132.151.1.19] (helo=optimus.ietf.org) by ietf-mx with esmtp (Exim 4.12) id 1AW2Fu-0005VD-00; Mon, 15 Dec 2003 18:36:02 -0500
Received: from localhost.localdomain ([127.0.0.1] helo=www1.ietf.org) by optimus.ietf.org with esmtp (Exim 4.20) id 1AW2Fu-0004hK-UV; Mon, 15 Dec 2003 18:36:02 -0500
Received: from odin.ietf.org ([132.151.1.176] helo=ietf.org) by optimus.ietf.org with esmtp (Exim 4.20) id 1AW2Fr-0004gp-B2 for simple@optimus.ietf.org; Mon, 15 Dec 2003 18:35:59 -0500
Received: from ietf-mx (ietf-mx.ietf.org [132.151.6.1]) by ietf.org (8.9.1a/8.9.1a) with ESMTP id SAA06198 for <simple@ietf.org>; Mon, 15 Dec 2003 18:35:55 -0500 (EST)
Received: from ietf-mx ([132.151.6.1]) by ietf-mx with esmtp (Exim 4.12) id 1AW2Fo-0005VA-00 for simple@ietf.org; Mon, 15 Dec 2003 18:35:56 -0500
Received: from exim by ietf-mx with spam-scanned (Exim 4.12) id 1AW2Fm-0005V3-00 for simple@ietf.org; Mon, 15 Dec 2003 18:35:55 -0500
Received: from exchange.webb.net ([207.182.164.133] helo=ossex1.ossinc.net) by ietf-mx with esmtp (Exim 4.12) id 1AW2Fm-0005UL-00 for simple@ietf.org; Mon, 15 Dec 2003 18:35:54 -0500
Received: by corp.webb.net with Internet Mail Service (5.5.2653.19) id <YF0XVY91>; Mon, 15 Dec 2003 16:32:40 -0700
Message-ID: <8D96EDA0AC04D31197B400A0C96C148007DADC30@corp.webb.net>
From: Joe Hildebrand <JHildebrand@jabber.com>
To: xmppwg@jabber.org, "'simple@ietf.org'" <simple@ietf.org>
MIME-Version: 1.0
X-Mailer: Internet Mail Service (5.5.2653.19)
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Transfer-Encoding: quoted-printable
Subject: [Simple] RE: Action Item: character mappings for interoperability
Sender: simple-admin@ietf.org
Errors-To: simple-admin@ietf.org
X-BeenThere: simple@ietf.org
X-Mailman-Version: 2.0.12
Precedence: bulk
List-Unsubscribe: <https://www1.ietf.org/mailman/listinfo/simple>, <mailto:simple-request@ietf.org?subject=unsubscribe>
List-Id: SIP for Instant Messaging and Presence Leveraging Extensions <simple.ietf.org>
List-Post: <mailto:simple@ietf.org>
List-Help: <mailto:simple-request@ietf.org?subject=help>
List-Subscribe: <https://www1.ietf.org/mailman/listinfo/simple>, <mailto:simple-request@ietf.org?subject=subscribe>
List-Archive: <https://www1.ietf.org/mail-archive/working-groups/simple/>
Date: Mon, 15 Dec 2003 16:32:34 -0700
X-Spam-Checker-Version: SpamAssassin 2.60 (1.212-2003-09-23-exp) on ietf-mx.ietf.org
X-Spam-Status: No, hits=0.0 required=5.0 tests=none autolearn=no version=2.60
Content-Transfer-Encoding: quoted-printable

Hm.  I guess I need to show more of my work.  I had assumed that on the XMPP
side, the system entity that does server-to-server delivery would do either
something like draft-daigle-napstr-03.txt, or something even simpler, like
draft-ietf-impp-srv-04.txt, except with the "hard" DNS stuff moved to the
server.

1) SRV: do you support XMPP?  If so where?  (resend using XMPP S2S)
2) No?  Ok, SRV: do you support SIMPLE?  If so, where? (protocol transcode,
resend using SIMPLE)
3) No?  Ok, SRV: do you support Wireless Villiage?  If so, where? (protocol
transcode, resend using the WV S2S protocol) 
4) No?  Ok, maybe you're an older or less sophisticated XMPP implementation.
I'll look up your A record, and connect on 5269/tcp.  (resend using XMPP
S2S)

<aside>
NAPTR may be overkill, since in practice, we find it hard enough to get
customers to install SRV records...  The DNS admins make the LDAP admins
look helpful. :)
</aside>

And something similar on the SIMPLE side.  More-or-less obviously, the order
of the above should be a policy decision on the part of an admin.  Given
that, I'm not sure that allowing a user to explicitly go around the
site-wide policy is a good thing. 

Really, the only question I had was on step 2) above.  If I determine that
the other side would rather talk SIMPLE than XMPP, what address do I put on
the message?  sips: or im:?

-- 
Joe Hildebrand

 

> -----Original Message-----
> From: Ben Campbell [mailto:bcampbell@dynamicsoft.com] 
> Sent: Monday, December 15, 2003 2:52 PM
> To: Adam Roach
> Cc: 'Joe Hildebrand'; xmppwg@jabber.org; 'simple@ietf.org'
> Subject: Re: [Simple] RE: [xmppwg] Action Item: character 
> mappings for interoperability
> 
> Is the context of this thread IM only, or do we also care 
> about presence? I am not sure the issues are always exactly 
> the same, since IM addresses may be delivered as part of presence.
> 
> I wonder (vaguely) if draft-daigle-napstr-03.txt is applicable here. 
> Also, if I recall we _do_ have guidance on how to map an im: 
> url to a concrete service using SRV, don't we? It seems to me 
> that if I am a SIP user, the only real hope I have of 
> cross-protocol interoperability is to advertise a PRES or IM 
> URI. Other systems may be able to reach SIP URIs on an ad-hoc 
> basis, but the abstract schema provide a more general approach.
> 
> More inline:
> 
> Adam Roach wrote:
> 
> > I'm cross posting this to SIMPLE to help cross-pollinate some ideas 
> > here.
> > 
> > Joe Hildebrand [mailto:JHildebrand@jabber.com] wrote:
> > 
> > [huge snip]
> > 
> > 
> >>Example: josé#26;bób@jabber.com becomes 
> >>im:jos%c3%a9&b%c3%b3b@jabber.com
> >>(note for the MIME-impaired: that's jose' and bo'b)
> >>
> >>Actually, it's not clear to me from RFC 3428 whether I 
> should map into 
> >>sip:, sips: or im:; I could use some guidance here from the SIMPLE 
> >>folk.
> > 
> > 
> > Well, they're all (potentially) different namespaces. In 
> particular, 
> > there's nothing (other than a possible site-local policy) 
> that would 
> > ensure that "im:adam@dynamicsoft.com" would map to the same user as 
> > "sip:adam@dynamicsoft.com" -- so, you need to have some 
> mechanism by 
> > which a distinction is performed. I'll get to that in a second.
> > 
> > By contrast, "sip:adam@dynamicsoft.com" and 
> > "sips:adam@dynamicsoft.com" *will* always refer to the same
> > user:
> > 
> >    Any resource described by a SIP URI can be
> >    "upgraded" to a SIPS URI by just changing the scheme, if it is
> >    desired to communicate with that resource securely.
> > 
> > So, when you get to a gateway that is going from XMPP to 
> SIP, I would 
> > posit that selection of "sip:" would be appropriate when SASL isn't 
> > being used on the XMPP side, and that "sips:"
> > would be appropriate when it is.
> > 
> > Now, for the issue I deferred: when a message arrives for a 
> jid, how 
> > do you know what to do with it? Let's imagine that I send 
> an IM (from 
> > an XMPP client) to the jid "JHildebrand@jabber.com". If my 
> > understanding is correct, this *must* end up being routed to the 
> > server indicated by the xmpp-server SRV record for 
> "jabber.com." So... 
> > does that server attempt to deliver it to an XMPP account called 
> > "JHildebrand@jabber.com"? Does it gateway it to 
> > "im:JHildebrand@jabber.com"? Does it gateway it to 
> > "sip:JHildebrand@jabber.com"?
> > 
> > One answer would be "selection amongst those destinations 
> is going to 
> > be based on local configuration at the jabber.com XMPP 
> server, since 
> > it 'owns' the jabber.com namespace." And that would work, 
> sort of, and 
> > be consistent and simple.
> > 
> > But it's a very incomplete solution.
> > 
> > On a grander scale, we need to ask: if you are sitting at an XMPP 
> > client as "JHildebrand@jabber.com", and want to send an IM to 
> > "sip:adam@dynamicsoft.com", how do you do that? Can we assume that 
> > "dynamicsoft.com" is running an XMPP to SIMPLE gateway? Can 
> we assume 
> > that jabber.com is? Should this be able to work if the XMPP 
> to SIMPLE 
> > gateway is owned by yet a third domain?
> > 
> > I think all three solutions need to be possible.
> > 
> > We've already discussed how the first would work; that's easy.
> > The scheme to use in translation is a matter of the 
> destination server 
> > configuration, potentially selected on a user-by-user basis.
> 
> I'm not sure I agree on this. As you mention above, even if 
> dynamicsoft.com maintains an xmpp to simple gateway, there is 
> no reason to expect that you can infer an identifier that 
> makes sense to the xmpp side of the gateway from a SIP URI. 
> If dynamicsoft maintains such a gateway, then it would make 
> more sense to advertise an xmpp identity in addition to the 
> SIP identity, or perhaps an im: URI for both.
> 
> It seems to me that an xmpp device, presented with a SIP URI, 
> can do nothing intelligent with it beyond submitting it to 
> some xmpp-sip gateway that it _already_ knows about, and it 
> cannot use the SIP URI to discover that gateway.
> > 
> > The second would require some indication from your client to your 
> > server (the host indicated by the xmpp-client SRV record for
> > jabber.com) that you want to break out to a SIP network.
> > I don't know enough about the formatting of jids to propose 
> something 
> > ideal, but I would think that using some sort of locally-configured 
> > prefix would provide that sort of indication (e.g. sending an IM to 
> > "sip#x3A;adam@dynamicsoft.com" would indicate to your 
> server, by the 
> > presence of "sip#x3A;", that it should gateway to 
> > "sip:adam@dynamicsoft.com" using its SIMPLE gateway functionality 
> > instead of finding the XMPP server for dynamicsoft.com). In 
> this case, 
> > the proper scheme to use is explicitly indicated by the user.
> > 
> > The third case will require using a jid that explicitly 
> routes to the 
> > third-party gateway; for example, 
> > "adam#40;dynamicsoft.com@simple.im-gateway.org". (Ideally, this 
> > ugliness would be hidden behind some sort of user interface 
> construct 
> > that allows users to configure their default SIMPLE 
> gateway). For this 
> > case, the scheme is decided by the gateway itself, and will 
> typically 
> > be specific to the protocol mapping provided by that 
> gateway (i.e. a 
> > gateway that translates to SIMPLE will always use sip: or sips:, as 
> > appropriate).
> > 
> > At least, that's my two cents on the topic.
> > 
> > /a
> > 
> > _______________________________________________
> > Simple mailing list
> > Simple@ietf.org
> > https://www1.ietf.org/mailman/listinfo/simple
> 
> 

_______________________________________________
Simple mailing list
Simple@ietf.org
https://www1.ietf.org/mailman/listinfo/simple