[Message Prev][Message
Next][Thread Prev][Thread Next][Message
Index][Thread Index]
Re: FW: xAP configuration protocol
- Subject: Re: FW: xAP configuration protocol
- From: Silvan Sauter
- Date: Tue, 12 Aug 2003 19:19:00 +0000
<font size="2" face="sans-serif">hi
all,</font>
<font size="2" face="sans-serif">it looks like
there is definitely some
need for discussions on these configuration points. i appologize if i'm
asking too stupid questions, or if i miss things that are maybe solved
already, but i just got into this xAP stuff.</font>
<font size="2" face="sans-serif">i don't think we
have to talk about
a self configuring system (a DHCP kind of thing). as kevin is saing, we
have to keep the level of complexity down and not overload the system.
we don't reinvate IP here. but based on what we know about IP, i think
there are a few smart opportunities. in terms of device address
configuration,
i'm thinking about something like autoIP. as mentioned already, a device
should have the opportunity to pick a UID (in a range or a fix one). we
mentioned the problem of having another device with the same address. what
if we would have an xAP PING message, that allows to figure out if a device
exists in the network?</font>
<font size="2" face="sans-serif">so a setup
process could look as follows:</font>
<font size="2" face="sans-serif">
1.
device picks default UID
(manufacturer
specific range or something)</font>
<font size="2" face="sans-serif">
2.
device checks if UID exist in
the network
(it does a PING to the address)</font>
<font size="2" face="sans-serif">
3.
if yes, device increments its
address
and goes to 2.</font>
<font size="2" face="sans-serif">
if no, device uses UID</font>
<font size="2" face="sans-serif">
4.
devices broadcasts
config.newdevice
message</font>
<font size="2" face="sans-serif">a ping message
would in my view look
as follows:</font>
<font size="2"
face="sans-serif">xAP.header</font>
<font size="2" face="sans-serif">{</font>
<font size="2" face="sans-serif">
...</font>
<font size="2" face="sans-serif">
target=
uid of the target</font>
<font size="2" face="sans-serif">
...</font>
<font size="2" face="sans-serif">}</font>
<font size="2"
face="sans-serif">device.ping</font>
<font size="2" face="sans-serif">{</font>
<font size="2" face="sans-serif">
uid=nnddddss</font>
<font size="2"
face="sans-serif"> }</font>
<font size="2" face="sans-serif">i think the
target=UID in the header
does not exist, right? so we would have to do something that you can target
a device by its address.</font>
<font size="2" face="sans-serif">if the device
exists in the network
it would answer with it's heartbeat.</font>
<font size="2" face="sans-serif">the problem we
have here in general
are the devices that do not support sending a hb and i think this is
something
that would have to be mandatory if the protocol goes into this direction.
as kevin is saying, if a device does not support a hb, nobody knows that
it is there. with the PING command we could actually force a device to
send its hb.</font>
<font size="2" face="sans-serif">as for the rest
of this autoUID thing
we could use standard xAP messages. the device that is new on the network
would send a device.new message and deliver all the parameters that can
be configured with there actual values to the network.</font>
<font size="2"
face="sans-serif">xAP.header</font>
<font size="2" face="sans-serif">{</font>
<font size="2" face="sans-serif">
...</font>
<font size="2" face="sans-serif">}</font>
<font size="2"
face="sans-serif">device.new</font>
<font size="2" face="sans-serif">{</font>
<font size="2" face="sans-serif">
uid=nnddddsss</font>
<font size="2" face="sans-serif">
location=location</font>
<font size="2" face="sans-serif">
target=vendor.device.instance</font>
<font size="2" face="sans-serif">
parameter0=xx</font>
<font size="2" face="sans-serif">
parameter1=yy</font>
<font size="2" face="sans-serif">}</font>
<font size="2" face="sans-serif">a configuration
application could now
take all these parameters and let the user change them and send a
config.set
message back to the device.</font>
<font size="2"
face="sans-serif">xAP.header</font>
<font size="2" face="sans-serif">{</font>
<font size="2" face="sans-serif">
...</font>
<font size="2" face="sans-serif">}</font>
<font size="2"
face="sans-serif">config.set</font>
<font size="2" face="sans-serif">{</font>
<font size="2" face="sans-serif">
uid=newuid</font>
<font size="2" face="sans-serif">
location=newlocation</font>
<font size="2" face="sans-serif">
target=newtarget</font>
<font size="2" face="sans-serif">
parameter0=newparameter0</font>
<font size="2" face="sans-serif">
paramteter1=newparameter1</font>
<font size="2" face="sans-serif">}</font>
<font size="2" face="sans-serif">in addition
there would also be a config.get
message that brings back the configuration parameters for a known
device.</font>
<font size="2" face="sans-serif">the only
dicussion that hinders us to
do something like this are the only-senders, because these devices would
have to support a device.ping message, right? for this i have a few
questions
anyway. it is right that these xAP only sender devices are most likely
RS232 devices? i assume that an ethernet device would be enough powerful
to support to receive messages. also for RS485 devices, i assume they have
to have some kind of collision detection on the network, to figure out
if it can send a message or if someone else is sending (standard
multimaster
problems on RS485 networks). if there are only RS232 devices, how are they
managed. there has to be a gateway that connects the RS232 device to
another
network since RS232 is only PtP. if this is the case then maybe the gateway
has to be able to support a PING command of its dumb RS232
device.</font>
<font size="2"
face="sans-serif">silvan</font>
<table width="100%">
<tr valign="top">
<td width="40%"><font size="1"
face="sans-serif"><b>"Kevin Hawkins"
<lists@xxxxxxx></b> </font>
<p><font size="1"
face="sans-serif">12.08.2003 13:46</font>
<table border>
<tr valign="top">
<td bgcolor="white">
<div align="center"><font size="1"
face="sans-serif">Please respond to
xAP_developer@xxxxxxx</font></div></table>
<td width="59%">
<table width="100%">
<tr>
<td>
<div align="right"><font size="1"
face="sans-serif">To</font></div>
<td valign="top"><font size="1"
face="sans-serif"><xAP_developer@xxxxxxx></font>
<tr>
<td>
<div align="right"><font size="1"
face="sans-serif">cc</font></div>
<td valign="top">
<tr>
<td>
<div align="right"><font size="1"
face="sans-serif">Subject</font></div>
<td valign="top"><font size="1"
face="sans-serif">FW: [xAP_developer] xAP configuration
protocol</font></table>
<table>
<tr valign="top">
<td>
<td></table>
</table>
<font size="3"><tt>
Hi Sylvan..
A feisty topic this one !
We had a lot of discussion a while back (in
the original
Yahoo
Group) on exactly this topic and also an entwined one which is device
discovery. This is the ability to plug devices onto a network and other
devices recognise / learn of their capabilities.
On the configuration issue there were many
different
suggestions, of
varying complexities, and lots of discussion about network traffic
ramifications, which becomes very important on low speed (eg RS232
transports). One of the major issues was that some devices may only be
receivers and not able to chirp up to an 'is this uid free ?' type message
or indeed be able to ask for a UID. This meant that we needed to provide
a
listener that knew about UID's from such devices based on heartbeats or
data. We were not sure if there should be an address management server
(along the lines of DHCP) or whether we should strive to maintain the
decentralised nature of xAP. There could be issues too with networks that
become bridged, and we anticipated this with the allocation of a network
identity within the UID. Also proposed were utilising some unique
identities
in hardware - like i-buttons, or the pre-allocation of some UID ranges
to
vendors - sort of similar to MAC addresses currently using flash RAM etc..
In the end we took the view that while
networks were
small and
private that manual management of UID's was workable and we therefore
postponed the official mechanism to see how things evolved.
Probably
this
still holds but very soon it is going to become an issue again. So I would
welcome the revival of the discussion and some proposals - however we need
a
champion :-) and it is a surprisingly awkward area, really only because
there are lots of solutions and you have to trade features vs complexity.
Would you feel like stepping up to the mark on this one ?? This group would
form the basis of the discussion.
Additionally a few people, Patrick I think
particularly,
are using
some configuration xAP messages to allow setting of fundamental xAP
configuration data (source addresses, heartbeat interval and UID). We could
do with formalising the Schemas here so we have some communality - and
this
would then put in place a layer for higher level policy that is needed
for
the configuration / discovery issues.
I run about a dozen xAPp instances here and
the network
sees around
100 different UID's ( I use sub addressing for the C-Bus stuff which
generates a unique UID per switched load ). I haven't experienced any
difficulties with UID - except hubs without one and the occasional
DEADBEEF's ;-). Indeed having conflicting UID's doesn't break the network
(
a design strength) however it makes abbreviated source recognition , and
cache applications fail - so it shouldn't be allowed.
Kevin
> -----Original Message-----
> From: silvan4you [mailto:silvan@xxxxxxx]
> Sent: 12 August 2003 10:32
> To: xAP_developer@xxxxxxx
> Subject: [xAP_developer] xAP configuration protocol
>
> has anyone of you thought about some kind of configuration
prototcol
> for xAP devices? i thinking about something that you don't
have to
> preconfigure UID etc before you connect a device to the
network
> (Ethernet or RS485 or whatever). it would be ideal if a
factory
new
> device has some kind of standard address (or is is in a
predefined
> default address range) and that you could change the
address
over a
> defined xAP prototcol.
>
> i'm also thinking further about a protocol that allows you
to change
> the configuration of an xAP device (not only UID but also
other
> parameters).
>
> has someone did some work on such definitions already?
>
> regards,
> silvan
>
>
>
> ------------------------ Yahoo! Groups Sponsor
---------------------~--
> >
> Buy Ink Cartridges or Refill Kits for Your HP, Epson, Canon
or Lexmark
> Printer at Myinks.com. Free s/h on orders $50 or more to
the
US &
> Canada. </tt></font><a href="http://www.c1tracking.com/l.asp?cid=5511"><font
size="3" color="blue"><tt><u>http://www.c1tracking.com/l.asp?cid=5511</u></tt></font></a><font
size="3"><tt>
> </tt></font><a href="http://us.click.yahoo.com/l.m7sD/LIdGAA/qnsNAA/dpFolB/TM"><font
size="3" color="blue"><tt><u>http://us.click.yahoo.com/l.m7sD/LIdGAA/qnsNAA/dpFolB/TM</u></tt></font></a><font
size="3"><tt>
>
---------------------------------------------------------------------~-
> >
>
> To unsubscribe from this group, send an email to:
> xAP_developer-unsubscribe@xxxxxxx
>
>
>
> Your use of Yahoo! Groups is subject to
> </tt></font><a href="http://docs.yahoo.com/info/terms/"><font
size="3" color="blue"><tt><u>http://docs.yahoo.com/info/terms/</u></tt></font></a><font
size="3"><tt>
</tt></font><font size="3">
</font>
<table width="100%">
<tr>
<td bgcolor="#ffffcc">
<div align="center"><font size="2"
color="#003399"><b>Yahoo! Groups
Sponsor</b></font></div>
<tr>
<td bgcolor="white">
<table width="100%" align="center">
<tr>
<td width="100%">
<div align="center"><font size="1"
face="Arial">ADVERTISEMENT</font><font
size="3" color="blue"><u>
</u></font><a href="http://rd.yahoo.com/M=244522.3656190.4921519.1261774/D=egroupweb/S=1705007709:HM/A=1595053/R=0/SIG=124mh1h7k/*http://ashnin.com/clk/muryutaitakenattogyo?YH=3656190&yhad=1595053"><img
src="http://us.i1.yimg.com/us.yimg.com/i/space.gif"
alt="Click Here!"></a></div></table>
<tr>
<td></table>
<font size="3"><tt>
To unsubscribe from this group, send an email to:
xAP_developer-unsubscribe@xxxxxxx
</tt></font><font size="3">
</font><font size="3"><tt>
Your use of Yahoo! Groups is subject to the </tt></font><a
href="http://docs.yahoo.com/info/terms/"><font
size="3" color="blue"><tt><u>Yahoo!
Terms of Service</u></tt></font></a><font
size="3"><tt>.</tt></font><font
size="3">
</font>
xAP_Development Main Index |
xAP_Development Thread Index |
xAP_Development Home |
Archives Home
|