Changes between Version 1 and Version 2 of rock2ew


Ignore:
Timestamp:
03/19/12 18:14:19 (9 years ago)
Author:
branden
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • rock2ew

    v1 v2  
    99== Details == 
    1010=== Rockhound to Earthworm Data Relay === 
    11 The Rock-to-EW module provides a data relay to the USGS Earthworm software package (http://folkworm.ceri.memphis.edu/ew-dist).   Rock-to-EW emulates an Earthworm "export_generic" module, providing a TCP/IP listen port for external "import" programs to connect to. 
     11The Rock-to-EW module provides a data relay to the USGS Earthworm software package.   Rock-to-EW emulates an Earthworm "export_generic" module, providing a TCP/IP listen port for external "import" programs to connect to. 
    1212 
    1313The data-output operation of this module is similar to "export_generic":  Messages are queued in a memory based FIFO, and sent to the receiving "import_generic", or similar program, via a TCP connection.  If the available bandwidth of the link is lower than the aggregate rate of messages being queued for shipping, the FIFO will eventually overflow.  In that case, an error is logged, and the queue becomes circular.  That is, if the queue is configured to be N messages long, it will contain the most recent N messages.  Two-way heartbeats are used to assure that the link is actually capable of transmitting data.  The heartbeats consist of agreed-upon text strings sent at an agreed-upon rate.  If a proper heartbeat is not received in time, it is presumed that the link is broken.  In this case, Rock-to-EW will log the error, close the connection, and then wait for the import program to reestablish the connection. 
    1414 
    15 The Rock-to-EW module supports simultaneous connections from more than one "import" client.  Each connection operates via a separate listen-port number; see the 'ListenPortNums' parameter for configuration details.  Having each connection on a separate listen-port number allows the module to keep track of which messages have been delivered to which "import" client. 
     15The Rock-to-EW module supports simultaneous connections from more than one "import" client.  Each connection operates via a separate listen-port number; see the '!ListenPortNums' parameter for configuration details.  Having each connection on a separate listen-port number allows the module to keep track of which messages have been delivered to which "import" client. 
    1616 
    17 The optional 'ListenPortAddr' parameter may be used to specify a specific host address or IP to use when binding to the listen port. 
     17The optional '!ListenPortAddr' parameter may be used to specify a specific host address or IP to use when binding to the listen port. 
    1818 
    1919When the delivery of a message to an "import" client fails, the module will delay by the 'RetryDelayMS' number of milliseconds before attempting to resend the message. 
    2020 
    21 When the connection to an "import" client is lost and then restored, the module will resume the sending of messages starting with the last unsent message in the queue, provided that the queue has not overflowed and the time elapsed is not greater than the 'DropTimeoutSecs' parameter value. 
     21When the connection to an "import" client is lost and then restored, the module will resume the sending of messages starting with the last unsent message in the queue, provided that the queue has not overflowed and the time elapsed is not greater than the '!DropTimeoutSecs' parameter value. 
    2222 
    23 Messages generated by this module are in the Earthworm TRACEBUF2 format, using the module and installation ID values specified in the 'EwModuleId' and 'EwInstallId' parameters. 
     23Messages generated by this module are in the Earthworm TRACEBUF2 format, using the module and installation ID values specified in the '!EwModuleId' and '!EwInstallId' parameters. 
    2424 
    25 The 'ChannelNames' parameter may be used to select which channels are delivered.  If any channel-name entries are specified then the channel name for each message must match a given entry, or the message will be discarded.  If no channel-name entries are specified then all messages will be delivered.  The specified channel-name entries are separated by commas. 
     25The '!ChannelNames' parameter may be used to select which channels are delivered.  If any channel-name entries are specified then the channel name for each message must match a given entry, or the message will be discarded.  If no channel-name entries are specified then all messages will be delivered.  The specified channel-name entries are separated by commas. 
    2626 
    2727During the first 10 seconds after the module starts up, warning and debug messages will be sent to both the console and the "SMARTSLog.txt" log file.  After 10 seconds, messages will only be sent to the "SMARTSLog.txt" log file.  This is to prevent the possibility of repetitive console messages interfering with console-command operations (i.e., communications with the ROCKTalk program). 
     
    4545 
    4646'''Earthworm module ID number'''[[BR]] 
    47 Name: EwModuleId[[BR]] 
     47Name: !EwModuleId[[BR]] 
    4848Type: int [[BR]] 
    4949Range: 1 to 255 [[BR]] 
    5050Default: 99 [[BR]] 
    51 Example: EwModuleId=99 
     51Example: !EwModuleId=99 
    5252 
    5353'''Earthworm installation ID number'''[[BR]] 
    54 Name: EwInstallId[[BR]] 
     54Name: !EwInstallId[[BR]] 
    5555Type: int [[BR]] 
    5656Range: 1 to 255 [[BR]] 
    5757Default: 255 [[BR]] 
    58 Example: EwInstallId=255 
     58Example: !EwInstallId=255 
    5959 
    6060'''Optional listen-port host address or IP'''[[BR]] 
    61 Name: ListenPortAddr[[BR]] 
     61Name: !ListenPortAddr[[BR]] 
    6262Type: String[[BR]] 
    6363Range: 0 to 128 characters [[BR]] 
    6464Default: none [[BR]] 
    65 Example: ListenPortAddr=192.168.0.10 
     65Example: !ListenPortAddr=192.168.0.10 
    6666 
    6767'''List of listen-port numbers (comma-separated)'''[[BR]] 
    68 Name: ListenPortNums [[BR]] 
     68Name: !ListenPortNums [[BR]] 
    6969Type: String[[BR]] 
    7070Range: 1 to 128 characters [[BR]] 
    7171Default: 16005 [[BR]] 
    72 Example: ListenPortNums=16005,16006,16007 
     72Example: !ListenPortNums=16005,16006,16007 
    7373 
    7474'''Maximum number of messages in queue (0 = no limit)'''[[BR]] 
    75 Name: MaxQueueSize[[BR]] 
     75Name: !MaxQueueSize[[BR]] 
    7676Type: int [[BR]] 
    7777Range: 0 to 9999999 [[BR]] 
    7878Default: 100 [[BR]] 
    79 Example: MaxQueueSize=99 
     79Example: !MaxQueueSize=99 
    8080 
    8181'''List of channel names to be sent (comma-separated, empty = send all)'''[[BR]] 
    82 Name: ChannelNames[[BR]] 
     82Name: !ChannelNames[[BR]] 
    8383Type: String [[BR]] 
    8484Range: 1 to 128 characters [[BR]] 
    8585Default: none[[BR]] 
    86 Example: ChannelNames=C1,C2 
     86Example: !ChannelNames=C1,C2 
    8787 
    8888'''Interval between sent heartbeat messages (seconds)'''[[BR]] 
    89 Name: SendAliveIntvlSecs[[BR]] 
     89Name: !SendAliveIntvlSecs[[BR]] 
    9090Type: int [[BR]] 
    9191Range: 0 to 9999 [[BR]] 
    9292Default: 30 [[BR]] 
    93 Example: SendAliveIntvlSecs=30 
     93Example: !SendAliveIntvlSecs=30 
    9494 
    9595'''Text of sent heartbeat messages'''[[BR]] 
    96 Name: SendAliveMsgText[[BR]] 
     96Name: !SendAliveMsgText[[BR]] 
    9797Type: String[[BR]] 
    9898Range: 0 to 128 characters [[BR]] 
    9999Default: alive [[BR]] 
    100 Example: SendAliveMsgText=alive 
     100Example: !SendAliveMsgText=alive 
    101101 
    102102'''Maximum interval between received heartbeat messages (seconds)'''[[BR]] 
    103 Name: RecvAliveIntvlSecs[[BR]] 
     103Name: !RecvAliveIntvlSecs[[BR]] 
    104104Type: int [[BR]] 
    105105Range: 0 to 9999 [[BR]] 
    106106Default: 150 [[BR]] 
    107 Example: RecvAliveIntvlSecs=150 
     107Example: !RecvAliveIntvlSecs=150 
    108108 
    109109'''Expected text of received heartbeat messages'''[[BR]] 
    110 Name: RecvAliveMsgText[[BR]] 
     110Name: !RecvAliveMsgText[[BR]] 
    111111Type: String[[BR]] 
    112112Range: 0 to 128 characters [[BR]] 
    113113Default: alive [[BR]] 
    114 Example: RecvAliveMsgText=alive 
     114Example: !RecvAliveMsgText=alive 
    115115 
    116116'''Retry delay after failed message sends (milliseconds)'''[[BR]] 
    117 Name: RetryDelayMS[[BR]] 
     117Name: !RetryDelayMS[[BR]] 
    118118Type: int [[BR]] 
    119119Range: 0 to 9999999 [[BR]] 
    120120Default: 2000 [[BR]] 
    121 Example: RetryDelayMS=2000 
     121Example: !RetryDelayMS=2000 
    122122 
    123123'''Disconnect time after which queuing is dropped (seconds)'''[[BR]] 
    124 Name: DropTimeoutSecs[[BR]] 
     124Name: !DropTimeoutSecs[[BR]] 
    125125Type: int [[BR]] 
    126126Range: 0 to 9999999 [[BR]] 
    127127Default: 300 [[BR]] 
    128 Example: DropTimeoutSecs=300 
     128Example: !DropTimeoutSecs=300 
    129129 
    130130