com.latencybusters.lbm
Class LBMImmediateMessageReceiverStatistics

java.lang.Object
  extended by com.latencybusters.lbm.LBMImmediateMessageReceiverStatistics

public class LBMImmediateMessageReceiverStatistics
extends java.lang.Object


Constructor Summary
LBMImmediateMessageReceiverStatistics()
          Instantiate an empty object containing no statistics.
LBMImmediateMessageReceiverStatistics(LBMContext lbmctx, int maxStats)
          Instantiate object containing the aggregate set of statistics for a particular context.
 
Method Summary
 long bytesReceived()
          Number of datagram bytes received (TCP, LBT-RM).
 long bytesReceived(int n)
          Number of datagram bytes received (TCP, LBT-RM).
 long datagramsDroppedHeader()
          Number of datagrams discarded due to bad header type.
 long datagramsDroppedHeader(int n)
          Number of datagrams discarded due to bad header type.
 long datagramsDroppedIncorrectSize()
          Number of datagrams discarded due to being smaller than the size designated in the datagram's size field.
 long datagramsDroppedIncorrectSize(int n)
          Number of datagrams discarded due to being smaller than the size designated in the datagram's size field.
 long datagramsDroppedOther()
          Number of unrecognizable datagrams discarded due to reasons other than those determined by the above counts.
 long datagramsDroppedOther(int n)
          Number of unrecognizable datagrams discarded due to reasons other than those determined by the above counts.
 long datagramsDroppedSID()
          Number of datagrams discarded due to session ID mismatch.
 long datagramsDroppedSID(int n)
          Number of datagrams discarded due to session ID mismatch.
 long datagramsDroppedType()
          Number of datagrams discarded due to bad packet type.
 long datagramsDroppedType(int n)
          Number of datagrams discarded due to bad packet type.
 long datagramsDroppedVersion()
          Number of datagrams discarded due to version mismatch.
 long datagramsDroppedVersion(int n)
          Number of datagrams discarded due to version mismatch.
 void dispose()
          Free memory associated with this set of statistics.
 long duplicateMessages()
          Number of duplicate datagrams received (LBT-RM only).
 long duplicateMessages(int n)
          Number of duplicate datagrams received (LBT-RM only).
protected  void finalize()
           
 java.lang.String getApplicationSourceId()
          Retrieve the application source identifier associated with this set of statistics.
 long getContextId()
          Retrieve the sending context ID associated with this set of statistics.
 long getProcessId()
          Retrieve the sending process ID associated with this set of statistics.
 java.net.InetAddress getSender()
          Retrieve the IP sender address associated with this set of statistics.
 java.util.Date getTimestamp()
          Retrieve the timestamp associated with this set of statistics.
 long lbmMessagesReceived()
          Number of messages or message fragments received over a transport (TCP, LBT-RM).
 long lbmMessagesReceived(int n)
          Number of messages or message fragments received over a transport (TCP, LBT-RM).
 long lbmRequestsReceived()
          Number of UM request messages received (message type LBM_MSG_REQUEST) (TCP, LBT-RM).
 long lbmRequestsReceived(int n)
          Number of UM request messages received (message type LBM_MSG_REQUEST) (TCP, LBT-RM).
 long lost()
          Number of datagrams that have been detected as lost.
 long lost(int n)
          Number of datagrams that have been detected as lost.
 long maximumNakTransmissions()
          Maximum number of times per lost message that a receiver transport transmitted a NAK, i.e., the highest value collected so far (LBT-RM only).
 long maximumNakTransmissions(int n)
          Maximum number of times per lost message that a receiver transport transmitted a NAK, i.e., the highest value collected so far (LBT-RM only).
 long maximumRecoveryTime()
          Maximum time (in milliseconds), i.e., the longest time recorded so far, for a lost message to be recovered (LBT-RM only).
 long maximumRecoveryTime(int n)
          Maximum time (in milliseconds), i.e., the longest time recorded so far, for a lost message to be recovered (LBT-RM only).
 long meanNakTransmissions()
          Mean number of times per lost message that a receiver transport transmitted a NAK (LBT-RM only).
 long meanNakTransmissions(int n)
          Mean number of times per lost message that a receiver transport transmitted a NAK (LBT-RM only).
 long meanRecoveryTime()
          Mean time (in milliseconds) in which loss recovery was accomplished (LBT-RM only).
 long meanRecoveryTime(int n)
          Mean time (in milliseconds) in which loss recovery was accomplished (LBT-RM only).
 long messagesReceived()
          Number of datagrams received (LBT-RM only).
 long messagesReceived(int n)
          Number of datagrams received (LBT-RM only).
 long minimumNakTransmissions()
          Minimum number of times per lost message that a receiver transport transmitted a NAK, i.e., the lowest value collected so far (LBT-RM only).
 long minimumNakTransmissions(int n)
          Minimum number of times per lost message that a receiver transport transmitted a NAK, i.e., the lowest value collected so far (LBT-RM only).
 long minimumRecoveryTime()
          Minimum time (in milliseconds), i.e., the shortest time recorded so far, for a lost message to be recovered (LBT-RM only).
 long minimumRecoveryTime(int n)
          Minimum time (in milliseconds), i.e., the shortest time recorded so far, for a lost message to be recovered (LBT-RM only).
 long nakPacketsSent()
          Number of NAK packets sent by the receiver transport (LBT-RM only).
 long nakPacketsSent(int n)
          Number of NAK packets sent by the receiver transport (LBT-RM only).
 long naksSent()
          Number of individual NAKs sent by the receiver transport (LBT-RM only).
 long naksSent(int n)
          Number of individual NAKs sent by the receiver transport (LBT-RM only).
 long ncfsIgnored()
          Number of NCFs received from a source transport with reason code "ignored" (LBT-RM only).
 long ncfsIgnored(int n)
          Number of NCFs received from a source transport with reason code "ignored" (LBT-RM only).
 long ncfsRetransmissionDelay()
          Number of NCFs received with reason code "rx_delay" (LBT-RM only).
 long ncfsRetransmissionDelay(int n)
          Number of NCFs received with reason code "rx_delay" (LBT-RM only).
 long ncfsShed()
          Number of NCFs received with reason code "shed" (LBT-RM only).
 long ncfsShed(int n)
          Number of NCFs received with reason code "shed" (LBT-RM only).
 long ncfsUnknown()
          Number of NCFs received with reason code "unknown" (LBT-RM only).
 long ncfsUnknown(int n)
          Number of NCFs received with reason code "unknown" (LBT-RM only).
 long noTopicMessagesReceived()
          Number of messages received that were not for a topic of interest to the receiver (TCP, LBT-RM).
 long noTopicMessagesReceived(int n)
          Number of messages received that were not for a topic of interest to the receiver (TCP, LBT-RM).
 long outOfOrder()
          Number of out-of-order datagrams received.
 long outOfOrder(int n)
          Number of out-of-order datagrams received.
 void refresh(LBMContext lbmctx, int maxStats)
          Refresh the aggregate set of statistics for a particular context.
protected  void setApplicationSourceId(java.lang.String appid)
           
protected  void setContextId(long cid)
           
protected  void setProcessId(long pid)
           
protected  void setSender(long ip)
           
protected  void setTimestamp(long ts)
           
 int size()
          Number of transport statistical sets encapsulated within this object
 java.lang.String source()
          Source of transport as a string.
 java.lang.String source(int n)
          Source of transport as a string.
 int type()
          Transport type (TCP, LBT-RM, etc.).
 int type(int n)
          Transport type (TCP, LBT-RM, etc.).
 java.lang.String typeName()
          Transport type name (TCP, LBT-RM, etc.).
 java.lang.String typeName(int n)
          Transport type name (TCP, LBT-RM, etc.).
 long unrecoveredMessagesNakGenerationTimeout()
          Number of LBT-RM datagrams unrecovered due to a retransmission not received within the NAK generation interval (LBT-RM only).
 long unrecoveredMessagesNakGenerationTimeout(int n)
          Number of LBT-RM datagrams unrecovered due to a retransmission not received within the NAK generation interval (LBT-RM only).
 long unrecoveredMessagesWindowAdvance()
          Number of datagrams unrecovered (LBM_MSG_UNRECOVERABLE_LOSS delivered to receiver application) due to transmission window advance (LBT-RM only).
 long unrecoveredMessagesWindowAdvance(int n)
          Number of datagrams unrecovered (LBM_MSG_UNRECOVERABLE_LOSS delivered to receiver application) due to transmission window advance (LBT-RM only).
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

LBMImmediateMessageReceiverStatistics

public LBMImmediateMessageReceiverStatistics()
Instantiate an empty object containing no statistics.

See Also:
refresh(com.latencybusters.lbm.LBMContext, int)

LBMImmediateMessageReceiverStatistics

public LBMImmediateMessageReceiverStatistics(LBMContext lbmctx,
                                             int maxStats)
                                      throws LBMException
Instantiate object containing the aggregate set of statistics for a particular context. This constructor will throw LBMMonitorEInvalException if maxStats is less than the available number of transport statistical sets.

Parameters:
lbmctx - LBMContext object
maxStats - Maximum number of sources
Throws:
LBMException - if any error occurred retrieving statistics.
See Also:
refresh(com.latencybusters.lbm.LBMContext, int)
Method Detail

refresh

public void refresh(LBMContext lbmctx,
                    int maxStats)
             throws LBMException
Refresh the aggregate set of statistics for a particular context. This method will throw LBMMonitorEInvalException if maxStats is less than the available number of transport statistical sets.

Parameters:
lbmctx - LBMContext object associated with statistics to be retrieved.
maxStats - Maximum number of sources.
Throws:
LBMException - if any error occurred retrieving statistics.

dispose

public void dispose()
Free memory associated with this set of statistics.


finalize

protected void finalize()
Overrides:
finalize in class java.lang.Object

size

public int size()
Number of transport statistical sets encapsulated within this object

Returns:
Statistical set size

type

public int type()
         throws LBMException
Transport type (TCP, LBT-RM, etc.). This method returns a value from the first set of statistics encapsulated within this object and would normally be used when the object has been created using a specific source to instantiate the class.

Returns:
Transport type
Throws:
LBMException - if any error occurred retrieving statistics.
See Also:
LBM

type

public int type(int n)
         throws LBMException
Transport type (TCP, LBT-RM, etc.). This method returns a value from the nth set of statistics encapsulated within this object.

Parameters:
n - Statistics set index
Returns:
Transport type
Throws:
LBMException - if any error occurred retrieving receiver statistics.
See Also:
LBM

typeName

public java.lang.String typeName()
                          throws LBMException
Transport type name (TCP, LBT-RM, etc.). This method returns a value from the first set of statistics encapsulated within this object

Returns:
Transport type name
Throws:
LBMException - if any error occurred retrieving receiver statistics.

typeName

public java.lang.String typeName(int n)
                          throws LBMException
Transport type name (TCP, LBT-RM, etc.). This method returns a value from the nth set of statistics encapsulated within this object.

Parameters:
n - Statistics set index
Returns:
Transport type name
Throws:
LBMException - if any error occurred retrieving receiver statistics.

source

public java.lang.String source()
                        throws LBMException
Source of transport as a string. This method returns a value from the first set of statistics encapsulated within this object. The string format depends on transport type and is described under LBMTransportSourceInfo.

Returns:
Source of transport as a string
Throws:
LBMException - if any error occurred retrieving statistics.
See Also:
LBMTransportSourceInfo

source

public java.lang.String source(int n)
                        throws LBMException
Source of transport as a string. This method returns a value from the nth set of statistics encapsulated within this object. The string format depends on transport type and is described under LBMTransportSourceInfo.

Parameters:
n - Statistics set index
Returns:
Source of transport as a string
Throws:
LBMException - if any error occurred retrieving receiver statistics.
See Also:
LBMTransportSourceInfo

bytesReceived

public long bytesReceived()
                   throws LBMException
Number of datagram bytes received (TCP, LBT-RM). The total of lengths of all transport packets, including UM header information. This method returns a value from the first set of statistics encapsulated within this object.

Returns:
Number of datagram bytes received
Throws:
LBMException - if any error occurred retrieving receiver statistics.

bytesReceived

public long bytesReceived(int n)
                   throws LBMException
Number of datagram bytes received (TCP, LBT-RM). The total of lengths of all transport packets, including UM header information. This method returns a value from the nth set of statistics encapsulated within this object.

Parameters:
n - Statistics set index
Returns:
Number of datagram bytes received
Throws:
LBMException - if any error occurred retrieving receiver statistics.

messagesReceived

public long messagesReceived()
                      throws LBMException
Number of datagrams received (LBT-RM only). Depending on batching settings, a single LBT-RM datagram may contain one or more messages, or a fragment of a larger message. With LBT-RM, larger messages are split into fragment sizes limited by configuration option transport_lbtrm_datagram_max_size (default 8KB).

This method returns a value from the first set of statistics encapsulated within this object.

Returns:
Number of datagrams received
Throws:
LBMException - if any error occurred retrieving receiver statistics.

messagesReceived

public long messagesReceived(int n)
                      throws LBMException
Number of datagrams received (LBT-RM only). Depending on batching settings, a single LBT-RM datagram may contain one or more messages, or a fragment of a larger message. With LBT-RM, larger messages are split into fragment sizes limited by configuration option transport_lbtrm_datagram_max_size (default 8KB).

This method returns a value from the nth set of statistics encapsulated within this object.

Parameters:
n - Statistics set index
Returns:
Number of datagrams received
Throws:
LBMException - if any error occurred retrieving receiver statistics.

nakPacketsSent

public long nakPacketsSent()
                    throws LBMException
Number of NAK packets sent by the receiver transport (LBT-RM only). UM batches NAKs into NAK packets to save network bandwidth. This should always be less than or equal to the number of individual NAKs sent (naksSent, below). This method returns a value from the first set of statistics encapsulated within this object.

Returns:
Number of NAK packets sent by the receiver transport
Throws:
LBMException - if any error occurred retrieving receiver statistics.

nakPacketsSent

public long nakPacketsSent(int n)
                    throws LBMException
Number of NAK packets sent by the receiver transport (LBT-RM only). UM batches NAKs into NAK packets to save network bandwidth. This should always be less than or equal to the number of individual NAKs sent (naksSent, below). This method returns a value from the nth set of statistics encapsulated within this object.

Parameters:
n - Statistics set index
Returns:
Number of NAK packets sent by the receiver transport
Throws:
LBMException - if any error occurred retrieving receiver statistics.

naksSent

public long naksSent()
              throws LBMException
Number of individual NAKs sent by the receiver transport (LBT-RM only). This may differ from the tally of lost datagrams (below) due to reasons such as This method returns a value from the first set of statistics encapsulated within this object.

Returns:
Number of individual NAKs sent by the receiver transport.
Throws:
LBMException - if any error occurred retrieving receiver statistics.

naksSent

public long naksSent(int n)
              throws LBMException
Number of individual NAKs sent by the receiver transport (LBT-RM only). This may differ from the tally of lost datagrams (below) due to reasons such as This method returns a value from the nth set of statistics encapsulated within this object.

Parameters:
n - Statistics set index
Returns:
Number of individual NAKs sent by the receiver transport.
Throws:
LBMException - if any error occurred retrieving receiver statistics.

lost

public long lost()
          throws LBMException
Number of datagrams that have been detected as lost. (LBT-RM only). This method returns a value from the first set of statistics encapsulated within this object.

Returns:
Number of datagrams that have been detected as lost
Throws:
LBMException - if any error occurred retrieving receiver statistics.

lost

public long lost(int n)
          throws LBMException
Number of datagrams that have been detected as lost. (LBT-RM only). This method returns a value from the nth set of statistics encapsulated within this object.

Parameters:
n - Statistics set index
Returns:
Number of datagrams that have been detected as lost
Throws:
LBMException - if any error occurred retrieving receiver statistics.

ncfsIgnored

public long ncfsIgnored()
                 throws LBMException
Number of NCFs received from a source transport with reason code "ignored" (LBT-RM only). If a source transport receives a NAK for a datagram that it has recently retransmitted, it sends an "NCF ignored" and does not retransmit. How "recently" is determined by the configuration option source transport_lbtrm_ignore_interval (default 500ms). If this count is high, a receiver transport may be having trouble receiving retransmissions, or the ignore interval may be set too long. This method returns a value from the first set of statistics encapsulated within this object.

Returns:
Number of NCFs received from a source transport with the reason code set to "ignored".
Throws:
LBMException - if any error occurred retrieving receiver statistics.

ncfsIgnored

public long ncfsIgnored(int n)
                 throws LBMException
Number of NCFs received from a source transport with reason code "ignored" (LBT-RM only). If a source transport receives a NAK for a datagram that it has recently retransmitted, it sends an "NCF ignored" and does not retransmit. How "recently" is determined by the configuration option source transport_lbtrm_ignore_interval (default 500ms). If this count is high, a receiver transport may be having trouble receiving retransmissions, or the ignore interval may be set too long. This method returns a value from the nth set of statistics encapsulated within this object.

Parameters:
n - Statistics set index
Returns:
Number of NCFs received from a source transport with the reason code set to "ignored".
Throws:
LBMException - if any error occurred retrieving receiver statistics.

ncfsShed

public long ncfsShed()
              throws LBMException
Number of NCFs received with reason code "shed" (LBT-RM only). When a source transport's retransmit queue and rate limiter are both at maximum, it responds to a NAK by sending an "NCF shed", and does not retransmit. The receiver transport should wait, then send another NAK. If this count is high, one or more crybaby receiver transports may be clogging the source transport's retransmit queue. This method returns a value from the first set of statistics encapsulated within this object and would normally be used when the object has been created using a specific source to instantiate the class.

Returns:
Number of NCFs that have been received with the reason code set to "shed"
Throws:
LBMException - if any error occurred retrieving receiver statistics.

ncfsShed

public long ncfsShed(int n)
              throws LBMException
Number of NCFs received with reason code "shed" (LBT-RM only). When a source transport's retransmit queue and rate limiter are both at maximum, it responds to a NAK by sending an "NCF shed", and does not retransmit. The receiver transport should wait, then send another NAK. If this count is high, one or more crybaby receiver transports may be clogging the source transport's retransmit queue. This method returns a value from the nth set of statistics encapsulated within this object.

Parameters:
n - Statistics set index
Returns:
Number of NCFs that have been received with the reason code set to "shed"
Throws:
LBMException - if any error occurred retrieving receiver statistics.

ncfsRetransmissionDelay

public long ncfsRetransmissionDelay()
                             throws LBMException
Number of NCFs received with reason code "rx_delay" (LBT-RM only). When a source transport's retransmit rate limiter prevents it from immediately retransmitting any more lost datagrams, it responds to a NAK by sending an "NCF rx_delay", then queues the retransmission for a later send. The receiver transport should wait for the retransmission and not immediately send another NAK. If this count is high, one or more crybaby receiver transports may be clogging the source transport's retransmit queue. This method returns a value from the first set of statistics encapsulated within this object.

Returns:
Number of NCFs that have been received with the reason code set to "rx_delay".
Throws:
LBMException - if any error occurred retrieving receiver statistics.

ncfsRetransmissionDelay

public long ncfsRetransmissionDelay(int n)
                             throws LBMException
Number of NCFs received with reason code "rx_delay" (LBT-RM only). When a source transport's retransmit rate limiter prevents it from immediately retransmitting any more lost datagrams, it responds to a NAK by sending an "NCF rx_delay", then queues the retransmission for a later send. The receiver transport should wait for the retransmission and not immediately send another NAK. If this count is high, one or more crybaby receiver transports may be clogging the source transport's retransmit queue. This method returns a value from the nth set of statistics encapsulated within this object.

Parameters:
n - Statistics set index
Returns:
Number of NCFs received with reason code "rx_delay"
Throws:
LBMException - if any error occurred retrieving receiver statistics.

ncfsUnknown

public long ncfsUnknown()
                 throws LBMException
Number of NCFs received with reason code "unknown" (LBT-RM only). These are NCFs with a reason code this receiver transport does not recognize. After a delay (set by configuration option transport_lbtrm_nak_suppress_interval (default 1000ms), it resends the NAK. This counter should never be greater than 0 unless applications linked with different versions of Ultra Messaging software coexist on the same network. This method returns a value from the first set of statistics encapsulated within this object.

Returns:
Number of NCFs that have been received with the reason code set to "unknown".
Throws:
LBMException - if any error occurred retrieving receiver statistics.

ncfsUnknown

public long ncfsUnknown(int n)
                 throws LBMException
Number of NCFs received with reason code "unknown" (LBT-RM only). These are NCFs with a reason code this receiver transport does not recognize. After a delay (set by configuration option transport_lbtrm_nak_suppress_interval (default 1000ms), it resends the NAK. This counter should never be greater than 0 unless applications linked with different versions of Ultra Messaging software coexist on the same network. This method returns a value from the nth set of statistics encapsulated within this object.

Parameters:
n - Statistics set index
Returns:
Number of NCFs that have been received with the reason code set to "unknown".
Throws:
LBMException - if any error occurred retrieving receiver statistics.

minimumRecoveryTime

public long minimumRecoveryTime()
                         throws LBMException
Minimum time (in milliseconds), i.e., the shortest time recorded so far, for a lost message to be recovered (LBT-RM only). If this time is greater than configuration option transport_lbtrm_nak_backoff_interval, it may be taking multiple NAKs to initiate retransmissions, indicating a lossy network. This method returns a value from the first set of statistics encapsulated within this object.

Returns:
Minimum time (in milliseconds) in which loss recovery was accomplished
Throws:
LBMException - if any error occurred retrieving receiver statistics.

minimumRecoveryTime

public long minimumRecoveryTime(int n)
                         throws LBMException
Minimum time (in milliseconds), i.e., the shortest time recorded so far, for a lost message to be recovered (LBT-RM only). If this time is greater than configuration option transport_lbtrm_nak_backoff_interval, it may be taking multiple NAKs to initiate retransmissions, indicating a lossy network. This method returns a value from the nth set of statistics encapsulated within this object.

Parameters:
n - Statistics set index
Returns:
Minimum time (in milliseconds) in which loss recovery was accomplished
Throws:
LBMException - if any error occurred retrieving receiver statistics.

meanRecoveryTime

public long meanRecoveryTime()
                      throws LBMException
Mean time (in milliseconds) in which loss recovery was accomplished (LBT-RM only). This is an exponentially weighted moving average (weighted to more recent) for accumulated measured recovery times. Ideally this field should be as close to your minimum recovery time (nak_stm_min, above) as possible. High mean recovery times indicate a lossy network. This method returns a value from the first set of statistics encapsulated within this object.

Returns:
Mean time (in milliseconds) in which loss recovery was accomplished
Throws:
LBMException - if any error occurred retrieving receiver statistics.

meanRecoveryTime

public long meanRecoveryTime(int n)
                      throws LBMException
Mean time (in milliseconds) in which loss recovery was accomplished (LBT-RM only). This is an exponentially weighted moving average (weighted to more recent) for accumulated measured recovery times. Ideally this field should be as close to your minimum recovery time (nak_stm_min, above) as possible. High mean recovery times This method returns a value from the nth set of statistics encapsulated within this object.

Parameters:
n - Statistics set index
Returns:
Mean time (in milliseconds) in which loss recovery was accomplished
Throws:
LBMException - if any error occurred retrieving receiver statistics.

maximumRecoveryTime

public long maximumRecoveryTime()
                         throws LBMException
Maximum time (in milliseconds), i.e., the longest time recorded so far, for a lost message to be recovered (LBT-RM only). If this time is near or equal to the configuration option transport_lbtrm_nak_generation_interval setting, you have likely experienced some level of unrecoverable loss. This method returns a value from the first set of statistics encapsulated within this object.

Returns:
Maximum time (in milliseconds) in which loss recovery was accomplished
Throws:
LBMException - if any error occurred retrieving receiver statistics.

maximumRecoveryTime

public long maximumRecoveryTime(int n)
                         throws LBMException
Maximum time (in milliseconds), i.e., the longest time recorded so far, for a lost message to be recovered (LBT-RM only). If this time is near or equal to the configuration option transport_lbtrm_nak_generation_interval setting, you have likely experienced some level of unrecoverable loss. This method returns a value from the nth set of statistics encapsulated within this object.

Parameters:
n - Statistics set index
Returns:
Maximum time (in milliseconds) in which loss recovery was accomplished
Throws:
LBMException - if any error occurred retrieving receiver statistics.

minimumNakTransmissions

public long minimumNakTransmissions()
                             throws LBMException
Minimum number of times per lost message that a receiver transport transmitted a NAK, i.e., the lowest value collected so far (LBT-RM only). A value greater than 1 indicates a chronically lossy network. This method returns a value from the first set of statistics encapsulated within this object.

Returns:
Minimum number of times per lost message that a receiver transport transmitted a NAK.
Throws:
LBMException - if any error occurred retrieving receiver statistics.

minimumNakTransmissions

public long minimumNakTransmissions(int n)
                             throws LBMException
Minimum number of times per lost message that a receiver transport transmitted a NAK, i.e., the lowest value collected so far (LBT-RM only). A value greater than 1 indicates a chronically lossy network. This method returns a value from the nth set of statistics encapsulated within this object.

Parameters:
n - Statistics set index
Returns:
Minimum number of times per lost message that a receiver transport transmitted a NAK.
Throws:
LBMException - if any error occurred retrieving receiver statistics.

meanNakTransmissions

public long meanNakTransmissions()
                          throws LBMException
Mean number of times per lost message that a receiver transport transmitted a NAK (LBT-RM only). Ideally this should be at or near 1. A higher value indicates a lossy network. This is an exponentially weighted moving average (weighted to more recent) for accumulated NAKs per lost message. This method returns a value from the first set of statistics encapsulated within this object.

Returns:
Mean number of times per lost message that a receiver transport transmitted a NAK
Throws:
LBMException - if any error occurred retrieving receiver statistics.

meanNakTransmissions

public long meanNakTransmissions(int n)
                          throws LBMException
Mean number of times per lost message that a receiver transport transmitted a NAK (LBT-RM only). Ideally this should be at or near 1. A higher value indicates a lossy network. This is an exponentially weighted moving average (weighted to more recent) for accumulated NAKs per lost message. This method returns a value from the nth set of statistics encapsulated within this object.

Parameters:
n - Statistics set index
Returns:
Mean number of times per lost message that a receiver transport transmitted a NAK
Throws:
LBMException - if any error occurred retrieving receiver statistics.

maximumNakTransmissions

public long maximumNakTransmissions()
                             throws LBMException
Maximum number of times per lost message that a receiver transport transmitted a NAK, i.e., the highest value collected so far (LBT-RM only). A value higher than 1 suggests that there may have been some unrecoverable loss on the network during the sample period. A significantly high value compared to the mean number) implies an isolated incident. This method returns a value from the first set of statistics encapsulated within this object.

Returns:
Maximum number of times per lost message that a receiver transport transmitted a NAK transmitted.
Throws:
LBMException - if any error occurred retrieving receiver statistics.

maximumNakTransmissions

public long maximumNakTransmissions(int n)
                             throws LBMException
Maximum number of times per lost message that a receiver transport transmitted a NAK, i.e., the highest value collected so far (LBT-RM only). A value higher than 1 suggests that there may have been some unrecoverable loss on the network during the sample period. A significantly high value compared to the mean number) implies an isolated incident. This method returns a value from the nth set of statistics encapsulated within this object.

Parameters:
n - Statistics set index
Returns:
Maximum number of times per lost message that a receiver transport transmitted a NAK
Throws:
LBMException - if any error occurred retrieving receiver statistics.

duplicateMessages

public long duplicateMessages()
                       throws LBMException
Number of duplicate datagrams received (LBT-RM only). A large number can indicate a lossy network, primarily due to other receiver transports requesting retransmissions that this receiver transport has already successfully received. Such duplicates require extra effort for filtering, and this should be investigated. This method returns a value from the first set of statistics encapsulated within this object.

Returns:
Number of duplicate datagrams received
Throws:
LBMException - if any error occurred retrieving receiver statistics.

duplicateMessages

public long duplicateMessages(int n)
                       throws LBMException
Number of duplicate datagrams received (LBT-RM only). A large number can indicate a lossy network, primarily due to other receiver transports requesting retransmissions that this receiver transport has already successfully received. Such duplicates require extra effort for filtering, and this should be investigated. This method returns a value from the nth set of statistics encapsulated within this object.

Parameters:
n - Statistics set index
Returns:
Number of duplicate datagrams received
Throws:
LBMException - if any error occurred retrieving receiver statistics.

unrecoveredMessagesWindowAdvance

public long unrecoveredMessagesWindowAdvance()
                                      throws LBMException
Number of datagrams unrecovered (LBM_MSG_UNRECOVERABLE_LOSS delivered to receiver application) due to transmission window advance (LBT-RM only). This means that the message was no longer in the source-side transmission window and therefore not retransmitted. The window size is set by transport configuration option lbtrm_transmission_window_size (default 24MB). This method returns a value from the first set of statistics encapsulated within this object.

Returns:
Number of datagrams unrecovered due to transmission window advance
Throws:
LBMException - if any error occurred retrieving receiver statistics.

unrecoveredMessagesWindowAdvance

public long unrecoveredMessagesWindowAdvance(int n)
                                      throws LBMException
Number of datagrams unrecovered (LBM_MSG_UNRECOVERABLE_LOSS delivered to receiver application) due to transmission window advance (LBT-RM only). This means that the message was no longer in the source-side transmission window and therefore not retransmitted. The window size is set by transport configuration option lbtrm_transmission_window_size (default 24MB). This method returns a value from the nth set of statistics encapsulated within this object.

Parameters:
n - Statistics set index
Returns:
Number of datagrams unrecovered due to transmission window advance
Throws:
LBMException - if any error occurred retrieving receiver statistics.

unrecoveredMessagesNakGenerationTimeout

public long unrecoveredMessagesNakGenerationTimeout()
                                             throws LBMException
Number of LBT-RM datagrams unrecovered due to a retransmission not received within the NAK generation interval (LBT-RM only). This is set by configuration option transport_lbtrm_nak_generation_interval; default 10,000ms. Note: Receivers for these messages' topics will also report related messages as unrecoverable, with LBM_MSG_UNRECOVERABLE_LOSS for an individual message and LBM_MSG_UNRECOVERABLE_LOSS_BURST for a burst loss event. However, it is possible for these application-level message declarations to occur even without increments to this counter, as the transport is unaware of the topic content of messages and may still be trying to deliver related lost packets. This method returns a value from the first set of statistics encapsulated within this object.

Returns:
Number of LBT-RM datagrams unrecovered due to a retransmission not received within the NAK generation interval
Throws:
LBMException - if any error occurred retrieving receiver statistics.

unrecoveredMessagesNakGenerationTimeout

public long unrecoveredMessagesNakGenerationTimeout(int n)
                                             throws LBMException
Number of LBT-RM datagrams unrecovered due to a retransmission not received within the NAK generation interval (LBT-RM only). This is set by configuration option transport_lbtrm_nak_generation_interval; default 10,000ms. Note: Receivers for these messages' topics will also report related messages as unrecoverable, with LBM_MSG_UNRECOVERABLE_LOSS for an individual message and LBM_MSG_UNRECOVERABLE_LOSS_BURST for a burst loss event. However, it is possible for these application-level message declarations to occur even without increments to this counter, as the transport is unaware of the topic content of messages and may still be trying to deliver related lost packets. This method returns a value from the nth set of statistics encapsulated within this object.

Parameters:
n - Statistics set index
Returns:
Number of LBT-RM datagrams unrecovered due to a retransmission not received within the NAK generation interval
Throws:
LBMException - if any error occurred retrieving receiver statistics.

lbmMessagesReceived

public long lbmMessagesReceived()
                         throws LBMException
Number of messages or message fragments received over a transport (TCP, LBT-RM). A single datagram may contain one or more messages or a fragment of a larger message. For fragmented messages larger than the transport's maximum size configuration option, this count reflects the number of datagrams used to constitute those messages. Thus, this number is equal to or greater than the datagram counter (messagesReceived, above). This number also includes messages received for which there was no interested receiver, tallied in the noTopicMessagesReceived counter (below). This method returns a value from the first set of statistics encapsulated within this object.

Returns:
Number of messages or message fragments received over a transport
Throws:
LBMException - if any error occurred retrieving receiver statistics.

lbmMessagesReceived

public long lbmMessagesReceived(int n)
                         throws LBMException
Number of messages or message fragments received over a transport (TCP, LBT-RM). A single datagram may contain one or more messages or a fragment of a larger message. For fragmented messages larger than the transport's maximum size configuration option, this count reflects the number of datagrams used to constitute those messages. Thus, this number is equal to or greater than the datagram counter (messagesReceived, above). This number also includes messages received for which there was no interested receiver, tallied in the noTopicMessagesReceived counter (below). This method returns a value from the nth set of statistics encapsulated within this object.

Parameters:
n - Statistics set index
Returns:
Number of messages or message fragments received over a transport
Throws:
LBMException - if any error occurred retrieving receiver statistics.

lbmRequestsReceived

public long lbmRequestsReceived()
                         throws LBMException
Number of UM request messages received (message type LBM_MSG_REQUEST) (TCP, LBT-RM). This method returns a value from the first set of statistics encapsulated within this object.

Returns:
Number of UM request messages received (message type LBM_MSG_REQUEST)
Throws:
LBMException - if any error occurred retrieving receiver statistics.

lbmRequestsReceived

public long lbmRequestsReceived(int n)
                         throws LBMException
Number of UM request messages received (message type LBM_MSG_REQUEST) (TCP, LBT-RM). This method returns a value from the nth set of statistics encapsulated within this object.

Parameters:
n - Statistics set index
Returns:
Number of UM request messages received (message type LBM_MSG_REQUEST)
Throws:
LBMException - if any error occurred retrieving receiver statistics.

noTopicMessagesReceived

public long noTopicMessagesReceived()
                             throws LBMException
Number of messages received that were not for a topic of interest to the receiver (TCP, LBT-RM). A high value (relative to, or approaching lbmMessagesReceived above) indicates more CPU time required to filter out uninteresting topics, in which case, consider reconfiguring sources to filter more aggressively at the transport layer. This method returns a value from the first set of statistics encapsulated within this object.

Returns:
Number of messages received that were not for a topic of interest to the receiver
Throws:
LBMException - if any error occurred retrieving receiver statistics.

noTopicMessagesReceived

public long noTopicMessagesReceived(int n)
                             throws LBMException
Number of messages received that were not for a topic of interest to the receiver (TCP, LBT-RM). A high value (relative to, or approaching lbmMessagesReceived above) indicates more CPU time required to filter out uninteresting topics, in which case, consider reconfiguring sources to filter more aggressively at the transport layer. This method returns a value from the nth set of statistics encapsulated within this object.

Parameters:
n - Statistics set index
Returns:
Number of messages received that were not for a topic of interest to the receiver
Throws:
LBMException - if any error occurred retrieving receiver statistics.

datagramsDroppedIncorrectSize

public long datagramsDroppedIncorrectSize()
                                   throws LBMException
Number of datagrams discarded due to being smaller than the size designated in the datagram's size field. This method returns a value from the first set of statistics encapsulated within this object.

Returns:
Number of datagrams discarded due to size
Throws:
LBMException - if any error occurred retrieving receiver statistics.

datagramsDroppedIncorrectSize

public long datagramsDroppedIncorrectSize(int n)
                                   throws LBMException
Number of datagrams discarded due to being smaller than the size designated in the datagram's size field. This method returns a value from the nth set of statistics encapsulated within this object.

Parameters:
n - Statistics set index
Returns:
Number of datagrams discarded due to size
Throws:
LBMException - if any error occurred retrieving receiver statistics.

datagramsDroppedType

public long datagramsDroppedType()
                          throws LBMException
Number of datagrams discarded due to bad packet type. The datagram's type field must match the expectations of the receiver transport. This method returns a value from the first set of statistics encapsulated within this object.

Returns:
Number of datagrams discarded due to bad packet type
Throws:
LBMException - if any error occurred retrieving receiver statistics.

datagramsDroppedType

public long datagramsDroppedType(int n)
                          throws LBMException
Number of datagrams discarded due to bad packet type. The datagram's type field must match the expectations of the receiver transport. This method returns a value from the nth set of statistics encapsulated within this object.

Parameters:
n - Statistics set index
Returns:
Number of datagrams discarded due to bad packet type
Throws:
LBMException - if any error occurred retrieving receiver statistics.

datagramsDroppedVersion

public long datagramsDroppedVersion()
                             throws LBMException
Number of datagrams discarded due to version mismatch. The datagram's version field must match the expectations of the receiver transport. This method returns a value from the first set of statistics encapsulated within this object.

Returns:
Number of datagrams discarded due to version mismatch
Throws:
LBMException - if any error occurred retrieving receiver statistics.

datagramsDroppedVersion

public long datagramsDroppedVersion(int n)
                             throws LBMException
Number of datagrams discarded due to version mismatch. The datagram's version field must match the expectations of the receiver transport. This method returns a value from the nth set of statistics encapsulated within this object.

Parameters:
n - Statistics set index
Returns:
Number of datagrams discarded due to version mismatch
Throws:
LBMException - if any error occurred retrieving receiver statistics.

datagramsDroppedHeader

public long datagramsDroppedHeader()
                            throws LBMException
Number of datagrams discarded due to bad header type. These datagrams appeared to be intact, but with an unrecognizable header format. This method returns a value from the first set of statistics encapsulated within this object.

Returns:
Number of datagrams discarded due to bad header type
Throws:
LBMException - if any error occurred retrieving receiver statistics.

datagramsDroppedHeader

public long datagramsDroppedHeader(int n)
                            throws LBMException
Number of datagrams discarded due to bad header type. These datagrams appeared to be intact, but with an unrecognizable header format. This method returns a value from the nth set of statistics encapsulated within this object.

Parameters:
n - Statistics set index
Returns:
Number of datagrams discarded due to bad header type
Throws:
LBMException - if any error occurred retrieving receiver statistics.

datagramsDroppedOther

public long datagramsDroppedOther()
                           throws LBMException
Number of unrecognizable datagrams discarded due to reasons other than those determined by the above counts. They could be garbled, or possibly be from foreign or incompatible software at the other end. This method returns a value from the first set of statistics encapsulated within this object.

Returns:
Number of datagrams discarded for other reasons
Throws:
LBMException - if any error occurred retrieving receiver statistics.

datagramsDroppedOther

public long datagramsDroppedOther(int n)
                           throws LBMException
Number of unrecognizable datagrams discarded due to reasons other than those determined by the above counts. They could be garbled, or possibly be from foreign or incompatible software at the other end. This method returns a value from the nth set of statistics encapsulated within this object.

Parameters:
n - Statistics set index
Returns:
Number of datagrams discarded for other reasons
Throws:
LBMException - if any error occurred retrieving receiver statistics.

datagramsDroppedSID

public long datagramsDroppedSID()
                         throws LBMException
Number of datagrams discarded due to session ID mismatch. These datagrams appeared to be correctly formed, but with an unmatched/unrecognized session ID field. This method returns a value from the first set of statistics encapsulated within this object.

Returns:
Number of datagrams discarded due to session ID mismatch
Throws:
LBMException - if any error occurred retrieving receiver statistics.

datagramsDroppedSID

public long datagramsDroppedSID(int n)
                         throws LBMException
Number of datagrams discarded due to session ID mismatch. These datagrams appeared to be correctly formed, but with an unmatched/unrecognized session ID field. This method returns a value from the nth set of statistics encapsulated within this object.

Parameters:
n - Statistics set index
Returns:
Number of datagrams discarded due to session ID mismatch
Throws:
LBMException - if any error occurred retrieving receiver statistics.

outOfOrder

public long outOfOrder()
                throws LBMException
Number of out-of-order datagrams received. A datagram is counted as out of order if it fills a previously detected sequence gap, but is not a retransmission. Note that if the duplicates counter duplicate_data, above) increases along with this statistic, this implies the arrivals of retransmitted datagrams before their originals. This method returns a value from the first set of statistics encapsulated within this object.

Returns:
Number of out-of-order datagrams received
Throws:
LBMException - if any error occurred retrieving receiver statistics.

outOfOrder

public long outOfOrder(int n)
                throws LBMException
Number of out-of-order datagrams received. A datagram is counted as out of order if it fills a previously detected sequence gap, but is not a retransmission. Note that if the duplicates counter duplicate_data, above) increases along with this statistic, this implies the arrivals of retransmitted datagrams before their originals. This method returns a value from the nth set of statistics encapsulated within this object.

Parameters:
n - Statistics set index
Returns:
Number of out-of-order datagrams received
Throws:
LBMException - if any error occurred retrieving receiver statistics.

setSender

protected void setSender(long ip)

setTimestamp

protected void setTimestamp(long ts)

setApplicationSourceId

protected void setApplicationSourceId(java.lang.String appid)

setProcessId

protected void setProcessId(long pid)

setContextId

protected void setContextId(long cid)

getApplicationSourceId

public java.lang.String getApplicationSourceId()
Retrieve the application source identifier associated with this set of statistics. This attribute is only set for statistics returned by the UM Monitoring framework.

Returns:
Application source ID

getSender

public java.net.InetAddress getSender()
                               throws java.net.UnknownHostException
Retrieve the IP sender address associated with this set of statistics. This attribute is only set for statistics returned by the UM Monitoring framework.

Returns:
InetAddress object corresponding to the statistics' sender IP address
Throws:
java.net.UnknownHostException - if IP address is of illegal length.

getTimestamp

public java.util.Date getTimestamp()
Retrieve the timestamp associated with this set of statistics. This attribute is only set for statistics returned by the UM Monitoring framework.

Returns:
Timestamp Date object

getProcessId

public long getProcessId()
Retrieve the sending process ID associated with this set of statistics. This attribute is only set for statistics returned by the UM Monitoring framework.

Returns:
Process ID

getContextId

public long getContextId()
Retrieve the sending context ID associated with this set of statistics. This attribute is only set for statistics returned by the UM Monitoring framework.

Returns:
Context ID


All of the documentation and software included in this and any other Informatica Inc "Ultra Messaging" Release is Copyright (C) 2004-2014, Informatica Corporation. All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted only as covered by the terms of a valid software license agreement with 29West Inc. Copyright © 2004-2014, Informatica, Inc. All Rights Reserved.