Getting near-realtime data with seedlink

Getting near-realtime data with seedlink

Seedlink server for Résif data

This server provides access to near-real-time data for the following permanent network stations: FRRDRAMTGWINDCLMQPFGL. The complete metadata associated with each of the broadcasted real time streams can be downloaded by using our FDSN webservice station.

Data from temporary campaigns are usually not distributed in real time unless acquired in the context of a post-seismic campaign.

By convention, Résif-DC does not distribute any raw data for which the corresponding metadata is not available through the webservice station.

The lifetime of the real-time data in the dispense buffer is about 15 minutes.

Seedlink description

Seedlink is a network protocol for real time data collection. It was initially defined by GEOFON/GFZ, which implemented both server and client components within SeiscompP software package. Others implementations are available, mostly from IRIS data management center and GFZ, but also from digitizer manufacturers designing instruments connected to the internet.

Real time data stream(s) (time series) are requested by a seedlink client opening a connection to a server dedicated TCP port. Each seedlink packet sent by the server is a 512-bytes Mini-Seed record following a sequence number. Packets are sent continuously following FIFO [1] order.

Seedlink is a so-called “robust” protocol, because clients can get disconnected and may reconnect without loosing data. Nevertheless, the time buffer which defines the availability for data is server and datacentre-dependant.


Seedlink is very appropriate for retrieving continuous, realtime data. For this typical use-case, its usage is much recommended over repeated polling of webservices. Our seedlink server time buffer is sized for around 3 hours of data retention. Former data is available as soon as collected and without time limitation via dataselect and timeseries .webservice.

Choosing your seedlink client

A popular seedlink client is the GFZ slarchive implementation bundled with the SeiscompP3 software package. Its configuration is controlled by the SeiscompP3 configuration tools. Standalone clients (slinktool and slarchive) can be downloaded from IRIS GIT depository. For Unix-like and Windows systems, installation is straightforward. Examples below demonstrate IRIS slinktool usage.

Using slinktool client

A. slinktool options -I, -L can be used to check server, station(s), streams and data availability (providing some kind of light inventory). Full metadata (siting, instrumental responses, ..) are not available this way, and should be obtained using other data services (station   webservice).

Getting information about the server, version, etc.:

slinktool -I

Getting the list of available networks and stations :

slinktool -L

Getting information about data availability:

slinktool -Q

Dumping all RESIF data (data goes continuously into resif.mseed file, until Ctrl+C is pressed):

slinktool -o resif.mseed

B. Data streams selection with -S option

Recovers data continuously from station RA.UBNA, stores data into a file UBNA.mseed:

slinktool -S "RA_UBNA:HN?.D" -o UBNA.mseed &

C. Data streams selection with -l list option

Recovers data streams defined into file myStream.lst and store them:

slinktool -l myStream.lst -o miniseed

Sample myStream.lst to be edited with your favorite text editor :


D. Archiving options -A, or – structure

Command lines options -A (or – structure can be used to continuously (de/re)assemble data streams according to different archiving schemas, some of which can be considered as de facto standards (such as the SDS structure for instance).

Recovers FR velocimetric data streams store them in a SDS tree:

slinktool -S "FR_*:HH?.D " -SDS $HOME/tmp &

Recovers FR velocimetric data streams store them in a NETWORK/YEAR/DAY/ file structure:

slinktool -S "FR_*:HH?.D" -A $HOME/tmp/data/%n/%Y/%j/ &

Using HTTP websocket give you access to the HTTP websocket interface.