Hi,
I'm encountering difficulties to send some big sequence<octet> through Wifi.
I have a node A which publish every 2 sec a topic Foo containing a sequence<octet> of 1MB
My node B has a waitset triggering on every new sample from topic Foo.
If I use a ethernet wired link between A and B, I have no problem, my node B get every messages.
If I use a wireless link between them (for example A is a the AP and B is the station), i can send sequences of 0 to 100kB only. Between 100kB and 200kB, my node B starts to lose samples and after 200kB my node loses every samples sent from node A. With Tracing enabled on the node B, I see that a number is growing when it starts to lose samples :
Receive (2) Total number of defragmentation buffers for channel "Channels/Channel[@name='BestEffort']" has climbed to 80
Configuration (1) Retrieved attribute General/Reconnection[@allowed], using value TRUE
Configuration (1) Retrieved attribute General/Reconnection[@allowed], using value TRUE
[....]
Receive (2) Total number of defragmentation buffers for channel "Channels/Channel[@name='BestEffort']" has climbed to 160
[....]
Receive (2) Total number of defragmentation buffers for channel "Channels/Channel[@name='BestEffort']" has climbed to 320
Finally, I also get this kind of message in ospl-info.log (either node A or node B) :
Report : WARNING
Date : Fri Apr 23 13:38:55 2010
Description : No heartbeats received from Node 0xf02f304 (address 192.168.0.2)
Node : nodeA
Process : networking (11696)
Thread : Channels/Channel[@name='Reliable'] b778fb90
Internals : V4.3/networking: reliable protocol/nw_plugSendChannel.c/2236/0/777045250
========================================================================================
Report : WARNING
Date : Fri Apr 23 13:38:55 2010
Description : Node 0xf02f304 (address 192.168.0.2) not responding or no heartbeats received, removing it from the reliable protocol
Node : nodeA
Process : networking (11696)
Thread : Channels/Channel[@name='Reliable'] b778fb90
Internals : V4.3/networking: reliable protocol/nw_plugSendChannel.c/1542/0/777137286
sometimes, I even got this in addition on node B side, which forces me to restart ospl :
========================================================================================
Report : INFO
Date : Fri Apr 23 13:40:06 2010
Description : Service 'networking' DIED -> skip
Node : nodeB
Process : 6297
Thread : ServiceManager 7fea2f5e6710
Internals : V4.3/OpenSplice domain service/serviceMonitor.c/91/0/276425037
========================================================================================
it seems that when the network starts to be a bit loaded, even the heartbeats from A to B and B to A are lost.
- I have tried to use a RELIABLE QoS instead of BEST_EFFORT "just to see", and there is no differences.
- I have tuned a bit the default config file ospl.xml (
http://pastebin.org/170117), increasing things like fragmentSize or trying to not use broadcast messaging ...
- I have also tried various hardwares (differents AP and Bridge Wifi card), it's more or less the same thing.
- I'm using a OpenSplice V4.3 rebuilded in order to correct bugs 19 and 32.
Did anyone succeed in sending large sequences of data over Wifi there ? I would be grateful if anyone can give me a feedback or clues.
Thanks,
Jean-Louis Thekekara.