[olsr-dev] new ipc
Lorenz Schori
(spam-protected)
Tue Mar 7 15:19:07 CET 2006
Am 07.03.2006 um 14:22 schrieb Thomas Lopatic:
> [...]
>
>> so let's think a bit further about a better ipc. for me a better ipc
>> would dump all the interesting data after a client connected or
>> (for a
>> two-way protocol) after the client expressed it's interests. even
>> data
>
> I would prefer to make this a pure request/response protocol. Let the
> client request information and only then supply the information (and
> only the requested information).
i don't like this so much because for a desktop application like
frontend (in contrast to web frontend) it is more conveniant to just
receive updates, not to poll every x seconds the whole bunch of
information.
> If we supplied information that the
> client is not interested in, we would nevertheless force the client to
> be able to parse all the information that we supply and from that
> extract the information that it is interested in.
absolutely. was a bit ambigous in the last post.
excerpt from kismet documentation (doc/DEVEL.client):
exapmle session:
Connected to localhost.
Escape character is '^]'.
KISMET: 2.7.1 1038236534 `"Gir"` 20021118101152
*PROTOCOLS:
KISMET,ERROR,PROTOCOLS,CAPABILITY,TERMINATE,TIME,NETWORK,CLIENT,GPS,INFO
,REMOVE,STATUS,PACKET,ALERT,STRING
!1234 CAPABILITY NETWORK
*ACK: 1234
*CAPABILITY: NETWORK
bssid,type,ssid,beaconinfo,llcpackets,datapackets,cryptpackets,weakpacke
ts,channel,wep,firsttime,lasttime,aty
pe,rangeip,gpsfixed,minlat,minlon,minalt,minspd,maxlat,maxlon,maxalt,max
spd,octets,cloaked,beaconrate,maxrate,manufkey,manufscore,
quality,signal,noise,bestquality,bestsignal,bestnoise,bestlat,bestlon,be
stalt,agglat,agglon,aggalt,aggpoints
!1235 ENABLE NETWORK bssid,type,ssid
*ACK: 1235
*NETWORK: 00:40:96:55:A2:72 0 `(spam-protected)`
*NETWORK: 00:A0:F8:41:3C:DD 0 `KrullNet1`
sentences beginning with "*" are sent from the server->client, those
with "!" go vice versa. if you connect to a kismet server you
instantly get the version plus a "*PROTOCOLS:" line. using "!
CAPABILITY protocolname" you can retreive the fieldnames of the
specified protocol. with "!ENABLE protocolname some,field,names" you
tell the server what you exactly want.
the ACK values are all optional.
combined with the idea of an ipc message designating the end of the
instantly available data (call it cache, current state, ...) this
could be a very powerful approach of ipc.
lorenz
-------------- next part --------------
A non-text attachment was scrubbed...
Name: PGP.sig
Type: application/pgp-signature
Size: 186 bytes
Desc: Signierter Teil der Nachricht
URL: <http://lists.olsr.org/pipermail/olsr-dev/attachments/20060307/44649fec/attachment.sig>
More information about the Olsr-dev
mailing list