com.pcbsys.nirvana.nAdminAPI.nMulticastConfiguration Class Reference

Multicast Configuration class. More...

Inheritance diagram for com.pcbsys.nirvana.nAdminAPI.nMulticastConfiguration:
com.pcbsys.nirvana.nAdminAPI.nBaseInterface

Public Member Functions

int getAckWindowSize ()
 Returns the number of packets before sending an ack for received events. More...
 
String getAdapter ()
 Returns the adapter that will be bound too for sending multicast. More...
 
int getAdapterBufferSize ()
 Returns the size of the adapter buffers to use for both sending and receiving of packets. More...
 
long getClientEstablishmentTimeout ()
 The time to wait for a client to establish multicast, if they do not receive any multicast data within this time its assumed they are unable to use multicast. More...
 
int getCRCType ()
 Returns the CRC type for guaranteed data integrity, will need to be compared to nMulticastConfiguration.DigestNames. More...
 
byte getEncryptionLevel ()
 Returns the encryption level, can be one of nMulticastConfiguration.EncryptionLevel Possible values are: nMulticastConfiguration.EncryptionLevel[0], disables encryption. More...
 
int getFlusherInterval ()
 Returns the interval in milliseconds between flushes to the wire for packets. More...
 
int getKeepAliveInterval ()
 Returns the interval between keep alive messages sent. More...
 
int getMaxOutstandingPackets ()
 Returns the number of allowable unprocessed packets on the receiving side whilst rebuilding missed or out of order packets. More...
 
byte getMode ()
 Get the acknowledgement mode. More...
 
String getMulticastAddress ()
 Returns the multicast address for this configuration. More...
 
int getOutstandingPacketsQueueSize ()
 Gets the allowable size of the outstanding packets queue on the sending side. More...
 
int getPacketSize ()
 Maximum data size for a datagram, excludes the datagram headers. More...
 
int getPeakRate ()
 Returns the quantity of Nirvana messages per second that when exceeded will enable peak writing mode. More...
 
int getRotateEncryptionKeyCount ()
 Returns the packet count to wait before rotating the new encryption key into use. More...
 
int getRotateEncryptionKeyTime ()
 Returns the time between encryption key changes. More...
 
byte getTrafficClass ()
 Returns the multicast traffic class set for this configuration. More...
 
short getTTL ()
 Returns the TTL for the multicast socket, this is the count of hops a datagram can traverse before being dropped. More...
 
int getUnAckedWindowSize ()
 Returns the number of outstanding packets allowed to be on the wire without acknowledgement. More...
 
int getUniqueSessionIDSize ()
 Returns the length of the session ID used for ensuring integrity and increasing security of data. More...
 
boolean isUseForCluster ()
 Gets the flag to allow use of this configuration in a cluster. More...
 
boolean isUseForDataGroups ()
 Gets the flag to allow use of this configuration for datagroups. More...
 
boolean isUseForStatusUpdates ()
 Gets the flag to allow use of this configuration for status updates used by the nAdminAPI and nRealmNode. More...
 
 nMulticastConfiguration (String multicastAddress, String adapter) throws nAdminIllegalArgumentException
 Creates a new multicast configuration with the supplied values. More...
 
 nMulticastConfiguration (String multicastAddress, String adapter, boolean enabled) throws nAdminIllegalArgumentException
 Creates a new multicast configuration with the supplied values. More...
 
void setAckWindowSize (int ackWindowSize)
 Sets the number of packets before sending an ack for received events. More...
 
void setAdapter (String adapter) throws nAdminIllegalArgumentException
 Sets the adapter to bind the multicast server to. More...
 
void setAdapterBufferSize (int adapterBufferSize)
 Sets the size of the adapter buffers to use for both sending and receiving of packets. More...
 
void setClientEstablishmentTimeout (long clientEstablishmentTimeout)
 The time to wait for a client to establish multicast, if they do not receive any multicast data within this time its assumed they are unable to use multicast. More...
 
void setCRCType (int CRCType) throws nAdminIllegalArgumentException
 Sets the CRC type for guaranteed data integrity, will need to be compared to nMulticastConfiguration.DigestNames. More...
 
void setEncryptionLevel (byte encryptionLevel) throws nAdminIllegalArgumentException
 Sets the encryption level, can be one of nMulticastConfiguration.EncryptionLevel Possible values are: nMulticastConfiguration.EncryptionLevel[0], disables encryption. More...
 
void setFlusherInterval (int flusherInterval) throws nAdminIllegalArgumentException
 Sets the interval in milliseconds between flushes to the wire for packets. More...
 
void setKeepAliveInterval (int keepAliveInterval) throws nAdminIllegalArgumentException
 Sets the interval between sending of keep alive messages, must be greater than 0. More...
 
void setMaxOutstandingPackets (int maxOutstandingPackets)
 Sets the number of allowable unprocessed packets on the receiving side whilst rebuilding missed or out of order packets. More...
 
void setMode (byte mode)
 Set the acknowledgement mode. More...
 
void setMulticastAddress (String multicastAddress) throws nAdminIllegalArgumentException
 Sets the multicast address for this configuration. More...
 
void setOutstandingPacketsQueueSize (int outstandingPacketsQueueSize)
 Sets the allowable size of the outstanding packets queue on the sending side. More...
 
void setPacketSize (int myPacketSize)
 Maximum data size for a datagram, excludes the datagram headers. More...
 
void setPeakRate (int messagesPerSecond)
 Sets the quantity of Nirvana messages per second that when exceeded will enable peak writing mode. More...
 
void setRotateEncryptionKeyCount (int rotateEncryptionKeyCount)
 Sets the packet count to wait before rotating the new encryption key into use. More...
 
void setRotateEncryptionKeyTime (int rotateEncryptionKeyTime)
 Sets the time between encryption key changes. More...
 
void setTrafficClass (byte myQOS)
 Returns the multicast traffic class set for this configuration. More...
 
void setTTL (short myTTL)
 Sets the TTL for the multicast socket, this is the count of hops a datagram can traverse before being dropped. More...
 
void setUnAckedWindowSize (int unAckedWindowSize)
 Returns the number of outstanding packets allowed to be on the wire without acknowledgement. More...
 
void setUniqueSessionIDSize (int myUniqueSessionIDSize)
 Sets the length of the session ID used for ensuring integrity and increasing security of data. More...
 
void setUseForCluster (boolean useForCluster)
 Sets the flag to allow use of this configuration in a cluster. More...
 
void setUseForDataGroups (boolean useForDataGroups)
 Sets the flag to allow use of this configuration for datagroups. More...
 
void setUseForStatusUpdates (boolean useForStatusUpdates)
 Sets the flag to allow use of this configuration for status updates. More...
 
- Public Member Functions inherited from com.pcbsys.nirvana.nAdminAPI.nBaseInterface
String getAdapter ()
 Get the adapter that this interface will use. More...
 
String getName ()
 Get the name of this interface. More...
 
int getPort ()
 Get the port that this interface will bind to at startup. More...
 
String getURL ()
 Get the URL that specifies this interface. More...
 
void setAutostart (boolean flag)
 Change the current Autostart status for this interface. More...
 
boolean willAutostart ()
 Will this interface automatically be started when the Realm Server starts. More...
 

Detailed Description

Multicast Configuration class.

This class exposes the current settings for a multicast protocol configuration on the Nirvana Realm server. It is also used to construct a new configuration on the Realm server, however, the name is only valid when the Realm server has added the interface. For background on what multicast is review these web site http://en.wikipedia.org/wiki/Multicast http://docwiki.cisco.com/wiki/Internet_Protocol_Multicast http://en.wikipedia.org/wiki/IGMP_snooping Multicast address ranges and reserved addresses http://www.iana.org/assignments/multicast-addresses/multicast-addresses.xml http://www.iana.org/assignments/ipv6-multicast-addresses/ipv6-multicast-addresses.xml

Constructor & Destructor Documentation

com.pcbsys.nirvana.nAdminAPI.nMulticastConfiguration.nMulticastConfiguration ( String  multicastAddress,
String  adapter 
) throws nAdminIllegalArgumentException

Creates a new multicast configuration with the supplied values.

Parameters
multicastAddressThe multicast address to use to bind to
adapterthe address of the adapter to bind the multicast too.
Exceptions
nAdminIllegalArgumentExceptionif the adapter is null or the port is in an invalid range
com.pcbsys.nirvana.nAdminAPI.nMulticastConfiguration.nMulticastConfiguration ( String  multicastAddress,
String  adapter,
boolean  enabled 
) throws nAdminIllegalArgumentException

Creates a new multicast configuration with the supplied values.

Parameters
multicastAddressThe multicast address to use to bind to
adapterthe address of the adapter to bind the multicast too.
enabledSpecifies whether to enable this configuration
Exceptions
nAdminIllegalArgumentExceptionif

Member Function Documentation

int com.pcbsys.nirvana.nAdminAPI.nMulticastConfiguration.getAckWindowSize ( )

Returns the number of packets before sending an ack for received events.

Returns
ackWindowSize as a int
String com.pcbsys.nirvana.nAdminAPI.nMulticastConfiguration.getAdapter ( )

Returns the adapter that will be bound too for sending multicast.

Returns
the adapter address for multicast to bind on.
int com.pcbsys.nirvana.nAdminAPI.nMulticastConfiguration.getAdapterBufferSize ( )

Returns the size of the adapter buffers to use for both sending and receiving of packets.

Returns
int adapter buffer size in bytes
long com.pcbsys.nirvana.nAdminAPI.nMulticastConfiguration.getClientEstablishmentTimeout ( )

The time to wait for a client to establish multicast, if they do not receive any multicast data within this time its assumed they are unable to use multicast.

Returns
the time in seconds to wait before removing a client from multicast.
int com.pcbsys.nirvana.nAdminAPI.nMulticastConfiguration.getCRCType ( )

Returns the CRC type for guaranteed data integrity, will need to be compared to nMulticastConfiguration.DigestNames.

Possible values are: nMulticastConfiguration.DigestNames[0], disables CRC checking. nMulticastConfiguration.DigestNames[1], uses CRC32 for CRC checks. nMulticastConfiguration.DigestNames[2], uses MD5 digest for CRC checks. nMulticastConfiguration.DigestNames[3], uses SHA-5 digest for CRC checks.

Returns
returns a byte of CRC type
byte com.pcbsys.nirvana.nAdminAPI.nMulticastConfiguration.getEncryptionLevel ( )

Returns the encryption level, can be one of nMulticastConfiguration.EncryptionLevel Possible values are: nMulticastConfiguration.EncryptionLevel[0], disables encryption.

nMulticastConfiguration.EncryptionLevel[1], uses AES-128 encryption. nMulticastConfiguration.EncryptionLevel[2], uses AES-192 encryption. nMulticastConfiguration.EncryptionLevel[3], uses AES-256 encryption.

Returns
byte encryption level
int com.pcbsys.nirvana.nAdminAPI.nMulticastConfiguration.getFlusherInterval ( )

Returns the interval in milliseconds between flushes to the wire for packets.

Higher intervals increase latency and throughput.

Returns
int flusher interval
int com.pcbsys.nirvana.nAdminAPI.nMulticastConfiguration.getKeepAliveInterval ( )

Returns the interval between keep alive messages sent.

Returns
int keep alive interval in milliseconds
int com.pcbsys.nirvana.nAdminAPI.nMulticastConfiguration.getMaxOutstandingPackets ( )

Returns the number of allowable unprocessed packets on the receiving side whilst rebuilding missed or out of order packets.

Returns
int maxOutstandingPackets
byte com.pcbsys.nirvana.nAdminAPI.nMulticastConfiguration.getMode ( )

Get the acknowledgement mode.

Returns
the currently used ack mode
String com.pcbsys.nirvana.nAdminAPI.nMulticastConfiguration.getMulticastAddress ( )

Returns the multicast address for this configuration.

Returns
String of the address
int com.pcbsys.nirvana.nAdminAPI.nMulticastConfiguration.getOutstandingPacketsQueueSize ( )

Gets the allowable size of the outstanding packets queue on the sending side.

These packets are outstanding from receivers to be acknowledge

Returns
OutstandingPacketsQueueSize as a int
int com.pcbsys.nirvana.nAdminAPI.nMulticastConfiguration.getPacketSize ( )

Maximum data size for a datagram, excludes the datagram headers.

Returns
int maximum datagram size
int com.pcbsys.nirvana.nAdminAPI.nMulticastConfiguration.getPeakRate ( )

Returns the quantity of Nirvana messages per second that when exceeded will enable peak writing mode.

Returns
int Nirvana messages per second for peak writing.
int com.pcbsys.nirvana.nAdminAPI.nMulticastConfiguration.getRotateEncryptionKeyCount ( )

Returns the packet count to wait before rotating the new encryption key into use.

Returns
int packet count
int com.pcbsys.nirvana.nAdminAPI.nMulticastConfiguration.getRotateEncryptionKeyTime ( )

Returns the time between encryption key changes.

Returns
int the encryption key rotation time
byte com.pcbsys.nirvana.nAdminAPI.nMulticastConfiguration.getTrafficClass ( )

Returns the multicast traffic class set for this configuration.

Returns
byte multicast traffic class
short com.pcbsys.nirvana.nAdminAPI.nMulticastConfiguration.getTTL ( )

Returns the TTL for the multicast socket, this is the count of hops a datagram can traverse before being dropped.

Returns
short of hops before dropping packet
int com.pcbsys.nirvana.nAdminAPI.nMulticastConfiguration.getUnAckedWindowSize ( )

Returns the number of outstanding packets allowed to be on the wire without acknowledgement.

Returns
int amount of packets on the wire.
int com.pcbsys.nirvana.nAdminAPI.nMulticastConfiguration.getUniqueSessionIDSize ( )

Returns the length of the session ID used for ensuring integrity and increasing security of data.

Returns
int the length of the session ID
boolean com.pcbsys.nirvana.nAdminAPI.nMulticastConfiguration.isUseForCluster ( )

Gets the flag to allow use of this configuration in a cluster.

Returns
boolean indicating if its enabled or not
boolean com.pcbsys.nirvana.nAdminAPI.nMulticastConfiguration.isUseForDataGroups ( )

Gets the flag to allow use of this configuration for datagroups.

Returns
boolean indicating if its enabled or not
boolean com.pcbsys.nirvana.nAdminAPI.nMulticastConfiguration.isUseForStatusUpdates ( )

Gets the flag to allow use of this configuration for status updates used by the nAdminAPI and nRealmNode.

Returns
boolean indicating if its enabled or not
void com.pcbsys.nirvana.nAdminAPI.nMulticastConfiguration.setAckWindowSize ( int  ackWindowSize)

Sets the number of packets before sending an ack for received events.

Parameters
ackWindowSizeackWindowSize as a int
void com.pcbsys.nirvana.nAdminAPI.nMulticastConfiguration.setAdapter ( String  adapter) throws nAdminIllegalArgumentException

Sets the adapter to bind the multicast server to.

Parameters
adapterthe local adapters IP address for multicast to bind to
Exceptions
nAdminIllegalArgumentExceptionif an invalid address is given
void com.pcbsys.nirvana.nAdminAPI.nMulticastConfiguration.setAdapterBufferSize ( int  adapterBufferSize)

Sets the size of the adapter buffers to use for both sending and receiving of packets.

Parameters
adapterBufferSizeint size fo adapter buffer in bytes
void com.pcbsys.nirvana.nAdminAPI.nMulticastConfiguration.setClientEstablishmentTimeout ( long  clientEstablishmentTimeout)

The time to wait for a client to establish multicast, if they do not receive any multicast data within this time its assumed they are unable to use multicast.

Parameters
clientEstablishmentTimeoutseconds to wait before removing a client from trying multicast
void com.pcbsys.nirvana.nAdminAPI.nMulticastConfiguration.setCRCType ( int  CRCType) throws nAdminIllegalArgumentException

Sets the CRC type for guaranteed data integrity, will need to be compared to nMulticastConfiguration.DigestNames.

Possible values are: 0, disables CRC checking. 1, uses CRC32 for CRC checks. 2, uses MD5 digest for CRC checks. 3, uses SHA-5 digest for CRC checks.

Parameters
CRCTypeone of the DigestNames
Exceptions
nAdminIllegalArgumentExceptionif CRCType outside of possible values
void com.pcbsys.nirvana.nAdminAPI.nMulticastConfiguration.setEncryptionLevel ( byte  encryptionLevel) throws nAdminIllegalArgumentException

Sets the encryption level, can be one of nMulticastConfiguration.EncryptionLevel Possible values are: nMulticastConfiguration.EncryptionLevel[0], disables encryption.

nMulticastConfiguration.EncryptionLevel[1], uses AES-128 encryption. nMulticastConfiguration.EncryptionLevel[2], uses AES-192 encryption. nMulticastConfiguration.EncryptionLevel[3], uses AES-256 encryption.

Parameters
encryptionLevelone of the above possible values
Exceptions
nAdminIllegalArgumentExceptionif encryptionLevel outside of possible values
void com.pcbsys.nirvana.nAdminAPI.nMulticastConfiguration.setFlusherInterval ( int  flusherInterval) throws nAdminIllegalArgumentException

Sets the interval in milliseconds between flushes to the wire for packets.

Higher intervals increase latency and throughput. Minimum time between flushes is 1ms

Parameters
flusherIntervalthe time between flushes.
Exceptions
nAdminIllegalArgumentExceptionif flusherInterval less than 1
void com.pcbsys.nirvana.nAdminAPI.nMulticastConfiguration.setKeepAliveInterval ( int  keepAliveInterval) throws nAdminIllegalArgumentException

Sets the interval between sending of keep alive messages, must be greater than 0.

Parameters
keepAliveIntervalinterval in milliseconds
Exceptions
nAdminIllegalArgumentExceptionif keepAliveInterval less than 1
void com.pcbsys.nirvana.nAdminAPI.nMulticastConfiguration.setMaxOutstandingPackets ( int  maxOutstandingPackets)

Sets the number of allowable unprocessed packets on the receiving side whilst rebuilding missed or out of order packets.

Parameters
maxOutstandingPacketsint
void com.pcbsys.nirvana.nAdminAPI.nMulticastConfiguration.setMode ( byte  mode)

Set the acknowledgement mode.

Parameters
modethe multicast ack mode
void com.pcbsys.nirvana.nAdminAPI.nMulticastConfiguration.setMulticastAddress ( String  multicastAddress) throws nAdminIllegalArgumentException

Sets the multicast address for this configuration.

Parameters
multicastAddressas a string
Exceptions
nAdminIllegalArgumentExceptionif an invalid multicast address is used
void com.pcbsys.nirvana.nAdminAPI.nMulticastConfiguration.setOutstandingPacketsQueueSize ( int  outstandingPacketsQueueSize)

Sets the allowable size of the outstanding packets queue on the sending side.

These packets are outstanding from receivers to be acknowledge

Parameters
outstandingPacketsQueueSizeas a int
void com.pcbsys.nirvana.nAdminAPI.nMulticastConfiguration.setPacketSize ( int  myPacketSize)

Maximum data size for a datagram, excludes the datagram headers.

Parameters
myPacketSizeint maximum packet size
void com.pcbsys.nirvana.nAdminAPI.nMulticastConfiguration.setPeakRate ( int  messagesPerSecond)

Sets the quantity of Nirvana messages per second that when exceeded will enable peak writing mode.

Parameters
messagesPerSecondNirvana messages per second for peak writing.
void com.pcbsys.nirvana.nAdminAPI.nMulticastConfiguration.setRotateEncryptionKeyCount ( int  rotateEncryptionKeyCount)

Sets the packet count to wait before rotating the new encryption key into use.

Parameters
rotateEncryptionKeyCountint
void com.pcbsys.nirvana.nAdminAPI.nMulticastConfiguration.setRotateEncryptionKeyTime ( int  rotateEncryptionKeyTime)

Sets the time between encryption key changes.

Parameters
rotateEncryptionKeyTimeint
void com.pcbsys.nirvana.nAdminAPI.nMulticastConfiguration.setTrafficClass ( byte  myQOS)

Returns the multicast traffic class set for this configuration.

Parameters
myQOSmulticast traffic class
void com.pcbsys.nirvana.nAdminAPI.nMulticastConfiguration.setTTL ( short  myTTL)

Sets the TTL for the multicast socket, this is the count of hops a datagram can traverse before being dropped.

Parameters
myTTLshort count of hops to traverse
void com.pcbsys.nirvana.nAdminAPI.nMulticastConfiguration.setUnAckedWindowSize ( int  unAckedWindowSize)

Returns the number of outstanding packets allowed to be on the wire without acknowledgement.

Parameters
unAckedWindowSizeamount of packets on the wire.
void com.pcbsys.nirvana.nAdminAPI.nMulticastConfiguration.setUniqueSessionIDSize ( int  myUniqueSessionIDSize)

Sets the length of the session ID used for ensuring integrity and increasing security of data.

Parameters
myUniqueSessionIDSizethe length of the session ID
void com.pcbsys.nirvana.nAdminAPI.nMulticastConfiguration.setUseForCluster ( boolean  useForCluster)

Sets the flag to allow use of this configuration in a cluster.

Parameters
useForClusterboolean indicating whether to use for clustering or not
void com.pcbsys.nirvana.nAdminAPI.nMulticastConfiguration.setUseForDataGroups ( boolean  useForDataGroups)

Sets the flag to allow use of this configuration for datagroups.

Parameters
useForDataGroupsboolean indicating whether to use for channels or not
void com.pcbsys.nirvana.nAdminAPI.nMulticastConfiguration.setUseForStatusUpdates ( boolean  useForStatusUpdates)

Sets the flag to allow use of this configuration for status updates.

Parameters
useForStatusUpdatesboolean indicating whether to use for channels or not