Commit e0947977 authored by Matteo Quintiliani's avatar Matteo Quintiliani

Up to date


git-svn-id: file:///home/quintiliani/svncopy/nmxptool/trunk@847 3cd66e75-5955-46cb-a940-c26e5fc5497d
parent 7d2f4b75
...@@ -2,65 +2,71 @@ ...@@ -2,65 +2,71 @@
# Configuration File for nmxptool # Configuration File for nmxptool
# #
MyModuleId MOD_NMXPTOOL MyModuleId MOD_NMXPTOOL
RingName WAVE_RING # Transport ring to write data to. RingName WAVE_RING # Transport ring to write data to.
HeartBeatInterval 15 # Heartbeat interval, in seconds. HeartBeatInterval 15 # Heartbeat interval, in seconds.
LogFile 1 # 1 -> Keep log, 0 -> no log file LogFile 1 # 1 -> Keep log, 0 -> no log file
# 2 -> write to module log but not stderr/stdout # 2 -> write to module log but not stderr/stdout
#ForceTraceBuf1 0 # On systems that support TRACEBUF2 #ForceTraceBuf1 0 # On systems that support TRACEBUF2
# messages this flag will force the module # messages this flag will force the module
# to create TRACEBUF messages instead. # to create TRACEBUF messages instead.
# Most people will never need this. # Most people will never need this.
Verbosity 16 # Set level of verbosity. Verbosity is a bitmap: Verbosity 16 # Set level of verbosity. Verbosity is a bitmap:
# 1 Packet, 2 Channel, 4 Raw Stream, # 1 Channel State, 2 Channel, 4 Raw Stream,
# 8 CRC32, 16 Connection flow, # 8 CRC32, 16 Connection flow,
# 32 Packet Management, 64 Extra, 128 Date, # 32 Packet Management, 64 Extra, 128 Date,
# 256 Gap, 512 DOD, 1023 All messages. # 256 Gap, 512 DOD, 1023 All messages.
# It is equivalent to the option -v. # It is equivalent to the option -v.
NmxpHost naqs1a.int.ingv.it # Host address of NaqsServer/DataServer NmxpHost naqs1a.int.ingv.it # Host address of NaqsServer/DataServer
# It is equivalent to the option -H. # It is equivalent to the option -H.
NmxpPortPDS 28000 # Port number of NaqsServer (Default 28000) NmxpPortPDS 28000 # Port number of NaqsServer (Default 28000)
# It is equivalent to the option -P. # It is equivalent to the option -P.
NmxpPortDAP 28002 # Port number of DataServer(Default 28002) NmxpPortDAP 28002 # Port number of DataServer(Default 28002)
# It is equivalent to the option -D. # It is equivalent to the option -D.
MaxTolerableLatency 120 # Max tolerable latency for each channel. (Default 600 sec.) MaxTolerableLatency 120 # Max tolerable latency for each channel. (Default 600 sec.)
# In general, DO NOT use with parameter TimeoutRecv. # In general, DO NOT use with parameter TimeoutRecv.
# It is equivalent to the option -M. # It is equivalent to the option -M.
#TimeoutRecv 30 # Time-out in seconds for flushing queued data for each channel. #TimeoutRecv 30 # Time-out in seconds for flushing queued data for each channel.
# (Default 0. No time-out) [10..300]. # (Default 0. No time-out) [10..300].
# Useful for retrieving Data On Demand with minimum delay. # Useful for retrieving Data On Demand with minimum delay.
# It is equivalent to the option -T. # It is equivalent to the option -T.
DefaultNetworkCode IV # Default network code where in 'ChannelFile' or 'Channel' is not declared. DefaultNetworkCode IV # Default network code where in 'ChannelFile' or 'Channel' is not declared.
# It is equivalent to the option -N. # It is equivalent to the option -N.
# nmxptool channel definition IS NOT equal to SCNL # N.B. nmxptool channel definition IS NOT equal to SCNL
# It is NSC, that is NET.STA.CHAN # It is NSC, that is NET.STA.CHAN
# NET is optional and used only for output. # NET is optional and used only for output.
# STA can be '*', stands for all stations. # STA can be '*', stands for all stations.
# CHAN can contain '?', stands for any character. # CHAN can contain '?', stands for any character.
# Example: *.HH?,N1.STA2.??Z,STA3.?H? # Related to the parameters 'ChannelFile' and 'Channel'.
# Related to the parameters 'ChannelFile' and 'Channel'. # Network code will be assigned from the first
# pattern that includes station and channel.
#MaxDataToRetrieve 180 # Max amount of data of the past to retrieve from the # Example: N1.AAA.HH?,N2.*.HH?,MMM.BH?
# DataServer when program restarts (default 0) [0..86400]. # Second pattern includes the first. Unless AAA, all
# 0 to disable connection to DataServer. # stations with HH channels will have network to N2.
# It is equivalent to the option -A. Related to 'ChannelFile'. # Station MMM will have default network defined by 'DefaultNetworkCode'.
# If 'MaxDataToRetrieve' is zero and 'ChannelFile' is used,
# only data buffered by NaqsServer will be retrieved. #MaxDataToRetrieve 180 # Max amount of data of the past to retrieve from the
# DataServer when program restarts (default 0) [0..86400].
ChannelFile /home/ew/naqs1a.list.txt # List of channels. One for each line. (It will not be modified) # 0 to disable connection to DataServer.
# Load/Save time of last sample of each channel in a file # It is equivalent to the option -A. Related to 'ChannelFile'.
# with the same name, same directory, appending suffix ".nmxpstate" # If 'MaxDataToRetrieve' is zero and 'ChannelFile' is used,
# Allow data continuity between program restarts. # only data buffered by NaqsServer will be retrieved.
# It is equivalent to the option -F. Related to 'MaxDataToRetrieve'.
ChannelFile /home/ew/naqs1a.list.txt # List of channel patterns like 'Channel'. One for each line.
# This file will not be modified by nmxptool.
# Load/Save time of last sample of each channel in a file
# with the same name, same directory, appending suffix ".nmxpstate"
# Allow data continuity between program restarts.
# It is equivalent to the option -F. Related to 'MaxDataToRetrieve'.
# DO NOT USE parameters 'Channel' and 'ChannelFile' together. # DO NOT USE parameters 'Channel' and 'ChannelFile' together.
# 'ChannelFile' is preferable. At restart you can retrieve data # 'ChannelFile' is preferable. At restart you can retrieve data
......
This diff is collapsed.
...@@ -7,39 +7,23 @@ ...@@ -7,39 +7,23 @@
<h1 align="center">Earthworm Modules: <br> <h1 align="center">Earthworm Modules: <br>
nmxptool overview</h1> nmxptool overview</h1>
<center> <center>
<p><i>(beta revision, last revised 10 December, 2007)</i> </p> <p><i>(last revised 03 March, 2008)</i> </p>
</center> </center>
<p> <p>
nmxptool is a client for Nanometrics Server and a module for Earthworm as well. It is based on libnmxp that provides a set of documented APIs which allow to develop software capable of interacting with Nanometrics Servers: The Nanometrics servers <i>NaqsServer</i> and <i>DataServer</i> can provide on-line access to seismic data and state-of-health information accepting TCP/IP connections and forwarding the requested data to each client program. <i>NaqsServer</i> collates and stores in near-real-time incoming data in ringbuffers whereas <i>DataServer</i> provides data of the past stored in <i>NaqsServer</i> ringbuffers. In order to implement the Nanometrics subscription protocols, the author developed a software consisting of a library called libnmxp and a tool called nmxptool. The library exposes a set of documented APIs which allow to communicate with the Nanometrics servers. The tool, based on libnmxp, allows to retrieve or monitor real-time data and data of the past.
<ul> </p>
<li> NaqsServer (Private Data Stream 1.4)
<ul>
<li>Buffered Stream: short-term complete data stream. Packets are in chronological order but small gap whenever a retransmission occurs.
<li>Raw Stream: packets are forwarded in the original order. Packets may be missing, duplicated, or out of order, but minimal delay.
</ul>
<li>DataServer (Data Access Protocol 1.0)<br>
<ul>
<li>Data may be requested by channel, start time and end time.
</ul>
</ul>
</p>
<p> <p>
nmxptool allows to retrieve or monitor real-time and off-line data. Mainly, it can be used: <b>nmxptool</b> can be used in three different ways:
<ul> <ul>
<li>stand-alone to save data in mini-SEED format<br> <li>stand-alone to monitor data or save retrieved data in mini-seed records
<li>like a plug-in for SeedLink<br> <li>launched as an <b><i>Earthworm</i></b> module to redirect data into the EW-rings
<li>like a module for Earthworm<br> <li>like a <b><i>Seed-Link</i></b> plug-in to feed the SL-server
</ul> </ul>
Dependencies: The main contribute, as regards other similar software, is the capability to manage Raw Stream connections by buffering and sorting all received packets, included the retransmitted ones, guaranteeing a good compromise between data continuity and low latency. Besides, nmxptool allows to retrieve Data-On-Demand with minimum delay after request. Software is open-source and released under GNU Library General Public License. It has been written in C language using the GNU Build Tools (automake, autoconf and configure script) and taking in account the cross-platform compilation aspects, in fact, it can run on almost all the Unix-like operating systems, Mac OS X, Windows and either 32-bit or 64-bit architectures.
<ul> </p>
<li>libmseed - http://www.iris.edu/manuals/<br>
<li>plugin.h and plugin.c from SeisComp distribution<br> <p><hr></p>
<li>Several object files inside the Earthworm library directory &#36;EW_HOME/&#36;EW_VERSION/lib,
or alternatively, sources dependents on your operating system.
</ul>
nmxptool have been developed in C using the GNU Build Tools (automake, autoconf) and taking in account the POSIX Cross-Platform aspects.<br> It has been compiled with success on Solaris, Linux, Mac OS X, Windows (<i>MinGW</i>), FreeBSD.
</p>
<p> <p>
Why a new software client for Nanometrics Server?<br> Why a new software client for Nanometrics Server?<br>
...@@ -52,8 +36,8 @@ Main parameter to set for Raw Stream is the max tolerable latency you can accept ...@@ -52,8 +36,8 @@ Main parameter to set for Raw Stream is the max tolerable latency you can accept
<p> <p>
The maxium size of the TRACEBUF messages created by nmxptool is The maxium size of the TRACEBUF messages created by nmxptool is
limited to the maximum number of samples limited to the maximum number of samples
that can fit into a Nanometrics compressed packet (???? samples = ???? that can fit into a Nanometrics compressed packet (272 samples = 1088
bytes) plus the size of the TRACEBUF header (64 bytes). So ???? bytes bytes) plus the size of the TRACEBUF header (64 bytes). So 1152 bytes
is a good estimate of the maximum size of TRACEBUF messages created by is a good estimate of the maximum size of TRACEBUF messages created by
nmxptool.</p> nmxptool.</p>
...@@ -77,7 +61,8 @@ nmxptool is open-source and actively supported by the ...@@ -77,7 +61,8 @@ nmxptool is open-source and actively supported by the
</p> </p>
<hr> <hr>
</b>Contact: <b>quintiliani at ingv.it</b><br> <address>
</b>Contact: <b>quintiliani at ingv.it</b> - Website: <a href="http://mednet.rm.ingv.it/nmxptool.php">http://mednet.rm.ingv.it/nmxptool.php</a>
</address> </address>
</body> </body>
</html> </html>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment