First of all, thx for your answers! But I've got one more question...

Jon Paul Maloy wrote:

>>>4. If it gets buffered can it be accessed using
>>>      
>>>
>>the
>>    
>>
>>>internal API? 
>>>      
>>>
>>No.
>>    
>>
>>>I'd like to give an example to this : I send a RDM
>>>message via the internal API, a link congestion
>>>occurs and the appropriate error handler is called
>>>with reason ELINKCONG. Now I'd like to retransmit
>>>this message. How can I accomplish this?
>>>      
>>>
>>As a user, you will never see an ELINKCONG. At link
>>congestion, the sending process is blocked until the
>>congestion has abated, and then the message is sent
>>automatically be the socket code.
>>    
>>
I think you got me wrong on this one. I know the mechanism when sending a 
message from userspace, but in my example I sent it from within the kernel 
using the native API (I called it "internal API" by mistake). If sending the 
message succeeds but it can't be delivered at the receiving node because of a 
link congestion (you called it "destination overload"), the appropriate 
err_event_handler at the sending node is called with reason ELINKCONG (if the 
DEST_DROPPABLE flag has been unset). In this case, I'd like to retranmsit the 
message from within the error-handler. But, as far as I know, only the first 
1024 are returned and accessible using the "unsigned char* data" pointer given 
to the event-handler. How can I access and retransmit the WHOLE message? 
I thought that would happen automatically when using connected communication 
from userspace, but I figured out (looking at the source code) that the TIPC 
socket implementation does not make use of event_handlers at all. So what 
happens in case of a destination overload when using conntected communication?


-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
tipc-discussion mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/tipc-discussion

Reply via email to