[saga-rg] SAGA use case document: comments needed! (this week)

Andrei Hutanu ahutanu at cct.lsu.edu
Wed Nov 2 12:57:51 CST 2005


Hi John,

I don't have reliability or in order-delivery as a requirement. The idea 
is that there is a sender, sending large (variable in size)
chunks of binary data.
On the receiving end either a chunk comes complete (even if it has some 
byte errors inside) or it doesn't come at all.
Here is the tentative API I proposed (slightly modified from the 
original use case here). Does this make sense?

Start sending data asynchronously (cb gets called at the end of the 
operation)

AsyncResult beginSend (Block block,
                       AsyncResultCallback cb, 
                       void* userData);
    
// releases resources, should be called in the callback, if called before callback blocks
endSend (AsyncResult handle);   

Same as with send :
      
AsyncResult beginReceive (AsyncResultCallback cb, 
                          void* userData);
          
Block endReceive (AsyncResult handle);
    
typedef struct Block {
     const void* const buffer;
     size_t            size;
} Block;




John Shalf wrote:

>
> On Nov 2, 2005, at 10:29 AM, Andrei Hutanu wrote:
>
>> Hi all,
>> Here is my feedback regarding the Viz-LSU use case. In some cases
>> these requirements might be outside the scope of SAGA, I would like  
>> to know if that is the case though ..
>>
>> *Block-based data transmission is not covered by the current API
>
>
> By "Block-based data transmission" to you mean a kind of "Reliable  
> Messages" API as opposed to the existing Stream API?
>
> If so, would you want to support more complex semantics such as the  
> WS standard?
> ftp://www6.software.ibm.com/software/developer/library/ws- 
> reliablemessaging200502.pdf
>
> Or stick with simpler semantics like those offered by RUDP or RIPP?
>
>
>





More information about the saga-rg mailing list