SeisComP3 / seiscomp3

SeisComP is a seismological software for data acquisition, processing, distribution and interactive analysis.
Other
111 stars 88 forks source link

Scream plugin ring does not support TCP connections for continuous data #6

Closed gempa-jabe closed 9 years ago

gempa-jabe commented 10 years ago

I implemented experimental TCP support for the scream_plugin_ring which is basically a port of that functionality from scream_plugin. I tested it and it works for me with TCP connections. I added the branch feat/screamringtcp and rev 3725b6a08302b0a99b39b7b0701f3c69ee943c6b holds the changes so far.

The plugin code itself would need some cleanup and also performance tweaks to reuse the connection for requesting missed packets. Currently for each missed packet a new TCP connection is established which cannot be very efficient via slow lines and much missed packets.

gempa-jabe commented 10 years ago

Note that the binding parameter udpport for the plugin changed to port!

gempa-jabe commented 10 years ago

Actually with the current code ported from scream_plugin there is another issue: if the TCP connection goes down the plugin quits. Then Seedlink will restart it after a configurable timeout but data will be lost. I changed the code (not yet committed) to keep the plugin running all the time and reconnect to broken connections but that needs more tests which are quite hard to do including back filling.

gempa-jabe commented 10 years ago

5615ce2dcea510d9c3183aeeadfb0385f928e026 attempts to fix the reconnect thing. I tested it and it seems to work. But it would be nice to get feedback from real life use cases.

gempa-jabe commented 9 years ago

15 merged.