I said: > ... I would have to do a bit more > work to document the ugly details. So please put your hand up > soon. And the result should be open source, of course.
I did a very rough documentation job and posted the very rough code. Look at https://www.cs.auckland.ac.nz/~brian/graspy/remotes/ starting with the README. As an added bonus, I included a rough draft of the C header file for a GRASP API. All we need now is a C programmer to do the rest. Regards Brian On 21/02/2017 17:48, Brian E Carpenter wrote: > Hi, > > I've been entertaining myself by putting together an IPC interface to > the GRASP Python prototype. (As of today, it seems to be working, > but the code is not fit to publish yet.) > > Why? Because this is what we need for multiple independent ASAs > to call a single instance of the GRASP core. > > How? To make the solution portable (not efficient, because this is > a prototype), I simply use TCP as the IPC mechanism. This would also > make it rather trivial to turn the thing into a genuine RPC. > > Like any RPC solution, I needed to serialise the calls and the > returns. How? I decided to use CBOR. The details get a bit ugly, > but it works. (Primitive ASCII art below.) > > The advantage of using CBOR is that although so far everything is > in Python, the serialised calls and returns are "just" CBOR/TCP. > So a smart C programmer, using one of the CBOR libraries, could > put together an API in C that could then issue GRASP API calls > via the IPC mechanism. > > I am not a smart C programmer. So here's the challenge: who would > like to work on this? Before the hackathon, or during the hackathon. > > If someone puts their hand up, I would have to do a bit more > work to document the ugly details. So please put your hand up > soon. And the result should be open source, of course. > > (In theory, the approach would apply to any language that has > CBOR support, but C seems the obvious lowest common denominator. > Or maybe C++?) > > Who wants in? > > Brian > > ASA <=> Local <=> IPC <=> CBOR/TCP <=> IPC <=> Main <=> GRASP > API client server API core > _______________________________________________ Anima mailing list Anima@ietf.org https://www.ietf.org/mailman/listinfo/anima