[Standards] RFC 3920, 10.2/10.3: subdomain routing rules

Peter Saint-Andre stpeter at jabber.org
Tue Mar 27 19:12:36 UTC 2007

Bruce Campbell wrote:

> Part of the problem is that 3920(bis) is using 'domain' in the DNS 
> sense, and unless you carefully read the full document, the usage of 
> 'subdomain' would appear to be also in the DNS sense.  That is, 
> 'muc.example.com' is a subdomain of the domain 'example.com', and by the 
> strict reading of 3920(bis), it is assumed to be on the same server as 
> 'example.com'.  If it is suddenly very popular, that is probably not true.
> Rather than go through this explanation each time that the usage of 
> 'subdomain' in 3920bis is not in the DNS sense, please change 3920bis to 
> avoid the confusion:
>  3.2 Domain Identifier
>     The DOMAIN IDENTIFIER is the primary identifier and is the only
>     REQUIRED element of a JID (a mere domain identifier is a valid
>     JID). It usually represents the network or "home" server to which
>     other entities connect for XML routing and data management
>     capabilities. Note that a single server may host multiple domain
>     identifiers (local domains), and that domain identifiers do not
>     have to reference entities that provide traditional server
>     functionality (eg, a multi-user chat service or a user directory).
>  9.1.2 From
>     Furthermore, the domain identifier portion of the JID contained in
>     the 'from' attribute MUST match the hostname of the sending server
>     (or any validated domain thereof, such as a validated domain
>     hosted by the sending server) as communicated in the SASL
>     negotiation, dialback negotiation or other means; if a server
>     receives a stanza that does not meet this restriction, it MUST
>     generate an <invalid-from/> stream error condition.
>  11.2 Foreign Domain
>     If the hostname of the domain identifier portion of the JID
>     contained in the 'to' attribute does not match one of the
>     configured hostnames of the server itself or a configured
>     local domain thereof, the server SHOULD route the stanza to the
>     foreign domain (subject to local service provisioning and security
>     policies regarding inter-domain communication, since such
>     communication is OPTIONAL).
>   11.3 Local domain
>     If the hostname of the domain identifier portion of the JID
>     contained in the 'to' attribute matches one of the configured
>     hostnames of the server, or one of the configured local domains
>     hosted by the server, the server MUST either process the stanza
>     itself or route the stanza to a specialized service that is
>     responsible for that local domain or return an error to the sender
>     (if the service providing the local domain is not available).

That text looks good to me, thanks for the contribution!

> C.4 can be left as-is, as the usage of 'subdomain' there is consistent 
> with DNS practice and provides a good starting tip to server developers 
> for identifying already-open streams that can be re-used (I want to talk 
> to 'chat.example.com', do I have a connection to 'example.com'?).



Peter Saint-Andre
XMPP Standards Foundation

-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/x-pkcs7-signature
Size: 7358 bytes
Desc: S/MIME Cryptographic Signature
URL: <http://mail.jabber.org/pipermail/standards/attachments/20070327/f2671aa7/attachment.bin>

More information about the Standards mailing list