[Standards] Re: updated STUN discovery proposal
V Unni
ukv1977 at yahoo.com
Sun Apr 29 21:17:51 CDT 2007
Hi,
Was going through stun-discovery proposal. Just wondering this concept can be extended as a service discovery than just stun discovery.
Justification :
=============
1) The current stun bis differs from the RFC 3489. Considering this, In future more stun versions may exist or co-exists with stun relay or other p2p protocols.At a later point, if stun give way to some other protocol, we need to obsolete our extensions.
2) The IM is on its way to convergence, we require a generic service discovery mechanism which can fit the future needs of evolving services.
3) The below proposed changes allows publist / discovery of multiple services with single query ( ex: a jingle/voip session may need services of stun and relay discovery).
4) The below proposed changes on the stun discovery are simple and extend-able for the future needs.
Changes :
========
name : from stun-discovery to service-discovery
The new payload format:
=======================
<service xmlns='http://www.xmpp.org/extensions/xep-xxxx.html#ns'>
<server servicename=stun host='stun1.shakespeare.lit' port='3478' proto=tcp/>
<server servicename=stun host='stun2.shakespeare.lit' port='3478'proto=udp/>
<server servicename=stun-relay host='turn.shakespeare.lit' port='443'proto=tls/>
</service>
Authorized Entity Publishes STUN Server List
============================================
<iq type='set'
from='bard at shakespeare.lit/globe'
to='shakespeare.lit'
id='pub1'>
<pubsub xmlns='http://jabber.org/protocol/pubsub'>
<publish node='http://www.xmpp.org/extensions/xep-xxxx.html#ns'>
<item id='foo'>
<service xmlns='http://www.xmpp.org/extensions/xep-xxxx.html#ns'>
<server servicename=stun host='stun1.shakespeare.lit' port='3478' proto=tcp/>
<server servicename=stun-relay host='turn.shakespeare.lit' port='443'proto=tls/>
<server servicename=stun host='stun1.shakespeare.lit' port='3479'proto=udp/>
</service>
</item>
</publish>
</pubsub>
</iq>
Authorized Entity Publishes Updated STUN Server List
===================================================
<iq type='set'
from='bard at shakespeare.lit/globe'
to='shakespeare.lit'
id='pub1'>
<pubsub xmlns='http://jabber.org/protocol/pubsub'>
<publish node='http://www.xmpp.org/extensions/xep-xxxx.html#ns'>
<item id='foo'>
<service xmlns='http://www.xmpp.org/extensions/xep-xxxx.html#ns'>
<server servicename=stun host='stun1.shakespeare.lit' port='3478' proto=tcp/>
<server servicename=stun-relay host='turn.shakespeare.lit' port='443'proto=tls/>
<server servicename=stun host='stun2.shakespeare.lit' port='3478'proto=udp/>
</service>
</item>
</publish>
</pubsub>
</iq>
Server Returns STUN Server List:
================================
<iq type='result'
from='shakespeare.lit'
to='juliet at capulet.lit/chamber'
id='items1'>
<pubsub xmlns='http://jabber.org/protocol/pubsub'>
<items node='http://www.xmpp.org/extensions/xep-xxxx.html#ns'>
<service xmlns='http://www.xmpp.org/extensions/xep-xxxx.html#ns'>
<server servicename=stun host='stun1.shakespeare.lit' port='3478' proto=tcp/>
<server servicename=stun-relay host='turn.shakespeare.lit' port='443'proto=tls/>
<server servicename=stun host='stun2.shakespeare.lit' port='3478'proto=udp/>
</service>
</items>
</pubsub>
</iq>
XML Schema:
==========
<?xml version='1.0' encoding='UTF-8'?>
<xs:schema
xmlns:xs='http://www.w3.org/2001/XMLSchema'
targetNamespace='http://www.xmpp.org/extensions/xep-xxxx.html#ns'
xmlns='http://www.xmpp.org/extensions/xep-xxxx.html#ns'
elementFormDefault='qualified'>
<xs:element name='service'>
<xs:complexType>
<xs:sequence minOccurs='0'>
<xs:element ref='server'/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='server'>
<xs:complexType>
<xs:simpleContent>
<xs:extension base='empty'>
<xs:attribute name='servicename' type='xs:string' use='required'/>
<xs:attribute name='host' type='xs:string' use='required'/>
<xs:attribute name='port' type='xs:string' use='required'/>
<xs:attribute name='proto' type='xs:string' use='required'/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:simpleType name='empty'>
<xs:restriction base='xs:string'>
<xs:enumeration value=''/>
</xs:restriction>
</xs:simpleType>
</xs:schema>
all the other examples on the document http://www.xmpp.org/extensions/inbox/stun-discovery.html stay same.
thanx
unni
NB: man proposes, god ..... ;-)
---------------------------------
Ahhh...imagining that irresistible "new car" smell?
Check outnew cars at Yahoo! Autos.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.jabber.org/pipermail/standards/attachments/20070429/60142048/attachment.htm
More information about the Standards
mailing list