Hi all, On Mon, 29 Nov 2010, Aaron Parsons wrote:
I think it might be appropriate to look a little closer at SPEAD before jumping to conclusions. SPEAD is a self-describing, data-streaming protocol. It has very little in the way of flow management because it is meant to sit on top of other communications layers (e.g. TCP/UDP/files/unix pipes/MPI). It is probably compatible with UDT. What SPEAD provides is the ability to interleave information from multiple sources and to synchronize that information across a distributed system. It also serializes data into a binary format that encodes information about dimensionality and data type, and reconstructs data from that binary format. This serialization is cheap, has low overhead (yet is very flexible), and is straight-forward to implement on an FPGA or CPU.
Thanks for the wiki link. Did not find it with a fast googling, just found a couple of presentations.
Topic is very familiar, I did my master's thesis about the OSI model almost exactly 30 years ago and done a bit of protocol and network design myself. Actually connected some 140.000 people to the net which is a lot here in the boondocks.
My approach to this problem would be kind of similar to other protocols, first some negotiation of parameters, stream type, data format etc. by the controlling computers (in case of Roach, the Powerpc running Linux) and after that just a stream of raw data with udp to some negotiated port. It would be the receiver's responsibility to know what is in this stream, of course some sequence numbers would be needed. And some simple retransmission logic.
I looked at the specifications, kind of makes sense if there is only FPGA hardware available in the simplest equipment and everything has to be compatible. But even Roach has an independent Linux machine...
I am not sure about the interleaving and synchronization, possibly somebody needs them. We usually synchronize the input data to 1PPS and just wait what comes out from the processing. No way to speed it up, slowing down is possible.
Best regards, Jouko

