Functions | |
int | _SystemAssignBufferSpace (UINT32 rcvBufferSpace, UINT32 sndBufferSpace) |
Assigns specific buffer capacity for certain configurable TINE sockets. More... | |
int | _SystemAssignBufferSpaceEx (UINT32 clnRcvBufferSpace, UINT32 srvRcvBufferSpace, UINT32 clnSndBufferSpace, UINT32 srvSndBufferSpace) |
Assigns specific buffer capacity for certain configurable TINE sockets (extended version). More... | |
int | _SystemAssignUdpSendBufferSpace (UINT32 sndBufferSpace) |
Assigns explicit udp send buffer capacity. More... | |
int | GetAllowRemoteDebugging (void) |
returns the current setting of this value More... | |
int | GetBurstLimit (void) |
Gets the burst limit in number of packets which are allowed to be sent consecutively. More... | |
int | GetClnUDPPort (void) |
Gets the TINE client UDP base port. More... | |
int | GetCycleDelay (void) |
Gets the delay time in milliseconds following a 'burst' of ethernet packets (as defined by SetBurstLimit(). More... | |
int | GetCycleMicroDelay (void) |
Gets the delay time in microseconds following a 'burst' of ethernet packets (as defined by SetBurstLimit(). More... | |
int | GetForceSharedMemory (void) |
returns the current setting of this feature. More... | |
char * | GetGCastAddr (void) |
Gets the cannonical globals multicast address the server will use when sending payloads via multicast as a producer. More... | |
char * | GetGCastMask (char *addr) |
Gets the cannonical multicast address mask the server will use when sending payloads via multicast as a producer. More... | |
int | GetHostNameFromAddress (char *addr, char *host, int length) |
Gets the host name from the address given. More... | |
int | GetInetAddress (SCKADR *sckadr, char *addr) |
Gets the address (ip address and port) of the given socket address as a string. More... | |
int | GetMaxTcpMessageSize (void) |
Gets the TINE server maximum STREAM message segment size. More... | |
char * | GetMCastAddr (void) |
Gets the cannonical multicast address a server will use when requested to send payloads via multicast. More... | |
char * | GetMCastAddrLegacy (void) |
Gets the cannonical legacy multicast address a pre-release 4.5.2 server will use when requested to send payloads via multicast. More... | |
char * | GetMCastMask (char *pattern) |
Gets the cannonical multicast address mask the server will use when requested to send payloads via multicast. More... | |
int | GetMCastTTL (void) |
Gets the TINE multicast Time-To-Live. More... | |
int | GetPacketMTU (void) |
Gets the TINE UDP server packet MTU. More... | |
int | GetTcpConnectionTableSize (void) |
returns the current setting of the tcp connection table size. More... | |
int | GetUseLoopback (void) |
Returns the current value of the 'useLoopBack' flag. More... | |
int | GetUseMCastLegacyRules (void) |
Returns whether legacy mutlicast systematics are in effect or not. More... | |
int | PollExternalDescriptor (SOCKET s, int events) |
registers an external socket to the server's poll set More... | |
void | SetAllowRemoteDebugging (int value) |
enables/disables remote debugging More... | |
int | SetBurstLimit (int npackets) |
Sets the burst limit in number of packets which are allowed to be set consecutively. More... | |
int | SetClnUDPPort (int port) |
Sets the TINE client UDP base port. More... | |
int | SetCycleDelay (int msecs) |
Sets the delay time in milliseconds following a 'burst' of ethernet packets (as defined by SetBurstLimit(). More... | |
int | SetCycleMicroDelay (int usecs) |
Sets the delay time in microseconds following a 'burst' of ethernet packets (as defined by SetBurstLimit(). More... | |
void | SetForceSharedMemory (int value) |
Disables or enables the 'useLoopBack' flag according to the value given (boolean). More... | |
int | SetGCastAddr (char *addr) |
Sets the cannonical globals multicast address the server will use when sending payloads via multicast as a producer. More... | |
int | SetGCastMask (char *addr) |
Sets the cannonical multicast address mask the server will use when sending payloads via multicast as a producer. More... | |
void | SetIdleConnectionDuration (int allowedIdleSeconds) |
sets the time-to-live for an unused TCP connection to a server More... | |
void | SetMaxTcpMessageSize (int value) |
Sets the TINE server maximum STREAM message segment size. More... | |
int | SetMCastAddr (char *addr) |
Sets the cannonical multicast address the server will use when requested to send payloads via multicast. More... | |
int | SetMCastAddrLegacy (char *addr) |
Sets the cannonical legacy multicast address the server will use when where necessary. More... | |
int | SetMCastMask (char *addr) |
Sets the cannonical multicast address mask the server will use when requested to send payloads via multicast. More... | |
int | SetMCastTTL (int ttl) |
Sets the TINE multicast Time-To-Live. More... | |
int | SetPacketMTU (int mtu) |
Sets the TINE Packet MTU for the UDP server socket. More... | |
void | SetTcpConnectionTableSize (int value) |
sets the tcp connection table size. More... | |
void | SetUseLoopback (int value) |
Sets the 'useLoopBack' flag to the value given (boolean). More... | |
void | SetUseMCastLegacyRules (int value) |
Establishes legacy mutlicast systematics or not. More... | |
server-side (and client-side) structs, macros, prototypes, etc.
int _SystemAssignBufferSpace | ( | UINT32 | rcvBufferSpace, |
UINT32 | sndBufferSpace | ||
) |
Assigns specific buffer capacity for certain configurable TINE sockets.
The standard TINE client and server sockets (both UDP, TCP, and STREAM) are initiated with a reasonable default amount of receive (64 Kbyte) and send (32 Kbyte) buffer capacity. If for any performance reason, more or less buffer capactiy is needed, this routine should be called prior to any calls to SystemInit() or SystemCycle(). For example, VxWorks builds which do not have a large amount of network resources might want to set these values smaller than the defaults. Video system clients expecting extreme amounts of incoming data might want to set these values to a much larger amount.
The principal benificiaries of the 'receive buffer space' are the client sockets (UDP,TCP and SREAM), whereas the principal benificiaries of the 'send buffer space' are the server sockets (TCP and STREAM). The remaining socket buffer space (e.g. client-side send buffer space or server side receive buffer space) will be held at 'reasonable' values, the assumption being that the dominant data delivery will generally server (sending) to client (receiving).
If you need additional control over socket settings, consider using the extended routine _SystemAssignBufferSpaceEx().
rcvBufferSpace | is the amount of receive buffer space (in bytes) to assign to the configurable TINE sockets. A value of '0' will assign the default receive buffer capacity. |
sndBufferSpace | is the amount of send buffer space (in bytes) to assign to the configurable TINE TCP or STREAM sockets. The UDP socket send buffer space is not influenced by this parameter and will be at least as large as twice the assigned UDP packet MTU. See _SystemAssignUdpSendBufferSpace(). A value of 0' will assign the default send buffer capacity. |
References _SystemAssignBufferSpaceEx().
int _SystemAssignBufferSpaceEx | ( | UINT32 | clnRcvBufferSpace, |
UINT32 | srvRcvBufferSpace, | ||
UINT32 | clnSndBufferSpace, | ||
UINT32 | srvSndBufferSpace | ||
) |
Assigns specific buffer capacity for certain configurable TINE sockets (extended version).
The standard TINE client and server sockets (both UDP, TCP, and STREAM) are initiated with a reasonable default amount of receive (64 Kbyte) and send (32 Kbyte) buffer capacity. If for any performance reason, more or less buffer capactiy is needed, this routine should be called prior to any calls to SystemInit() or SystemCycle(). For example, VxWorks builds which do not have a large amount of network resources might want to set these values smaller than the defaults. Video system clients expecting extreme amounts of incoming data might want to set these values to a much larger amount.
This call allows the setting of the server side receive buffer space as well as the client side send buffer space. This is potentially applicable in rare cases (middle layer servers) where large data payloads are sent as input from a client to a server.
As in the case of _SystemAssignBufferSpace(), the UDP specific send buffer size is kept to a reasonable value, no larger than twice the registered packet MTU. UDP datagram transmission is not inhibited by any client-server flow control which might cause the send buffer space to stack up.
clnRcvBufferSpace | is the amount of receive buffer space (in bytes) to assign to the configurable TINE client sockets. A value of '0' will assign the default receive buffer capacity. |
srvRcvBufferSpace | is the amount of receive buffer space (in bytes) to assign to the configurable TINE server sockets. A value of '0' will assign the same value as clnRcvBufferSpace (and damping this value by a factor of 2 should it exceed the default receive buffer capacity). |
clnSndBufferSpace | is the amount of send buffer space (in bytes) to assign to the configurable TINE client sockets. A value of '0' will assign the same value as srvSndBufferSpace (and damping this value by a factor of 2 should it exceed the default receive buffer capacity). |
srvSndBufferSpace | is the amount of send buffer space (in bytes) to assign to the configurable TINE server TCP or STREAM sockets. The UDP socket buffer space will be at least as large as twice the assigned UDP packet MTU. A value of 0' will assign the default send buffer capacity. |
Referenced by _SystemAssignBufferSpace().
int _SystemAssignUdpSendBufferSpace | ( | UINT32 | sndBufferSpace | ) |
Assigns explicit udp send buffer capacity.
The standard TINE client and server UDP sockets are initiated with a reasonable default amount of send (32 Kbyte) buffer capacity. If the UDP packet MTU is set to a value greater than twice the existing UDP buffer capacity then it will be automatically augmented to twice the MTU size. In the unlikely event that is becomes necessary to set the UDP send buffer capacity explicity, it can be accomplished with this call. As UDP datagrams are not subject to client-server flow control they are generally transmitted as fast as possible. A datagram send operation is unlikely to fail under most circumstances, unless a client or server has an unusually high number of simultaneous outstanding send operations.
sndBufferSpace | is the amount of receive buffer space (in bytes) to assign to UDP sockets. |
int GetAllowRemoteDebugging | ( | void | ) |
returns the current setting of this value
The 'attachfec' tool is usually used on the same host as the running server, in which case the debugging output is forwarding via an efficient local named pipe. In some cases, it might be desired to make use of the 'attachfec' on a remote host, in which case debugging output is transfered via a stream connection (less efficient). Whether this feature is available is determined by this setting.
int GetBurstLimit | ( | void | ) |
Gets the burst limit in number of packets which are allowed to be sent consecutively.
For UDP transport (the default) TINE does not make use of flow control in any systematic way, other than adjusting this parameter setting at the server side. This parameter works together with the cycle delay and determines how many UDP packets (datagrams) are allowed to be sent consecutively within the transport loop before a brake is applies (cycle delay). If all clients and servers are on the same speed ethernet, this value can be adjusted to a much larger value. However, a fast server sending to a slow client (a remote client via a DSL link for instance) might send more datagrams in a burst than can be received. The default value should compensate for this effect.
int GetClnUDPPort | ( | void | ) |
Gets the TINE client UDP base port.
int GetCycleDelay | ( | void | ) |
Gets the delay time in milliseconds following a 'burst' of ethernet packets (as defined by SetBurstLimit().
For UDP transport (the default) TINE does not make use of flow control in any systematic way, other than adjusting this parameter setting at the server side. This parameter works together with the burst limit and determines how long to delay further datagram transmission when the burst limit has been reached. If all clients and servers are on the same speed ethernet, this value can be adjusted to 0. However, a fast server sending to a slow client (a remote client via a DSL link for instance) might send more datagrams in a burst than can be received. The default value should compensate for this effect.
int GetCycleMicroDelay | ( | void | ) |
Gets the delay time in microseconds following a 'burst' of ethernet packets (as defined by SetBurstLimit().
For UDP transport (the default) TINE does not make use of flow control in any systematic way, other than adjusting this parameter setting at the server side. This parameter works together with the burst limit and determines how long to delay further datagram transmission when the burst limit has been reached. If all clients and servers are on the same speed ethernet, this value can left at its default value 0. However, when fine adjustments in flow control are necessary, a delay in the micro second region following each 'burst' of packets can be applied, where the delay in microseconds is given by this setting.
int GetForceSharedMemory | ( | void | ) |
returns the current setting of this feature.
If the useLoopBack flag is 'FALSE' (default) then client-side calls to a server on the same host as the client will attempt to use shared memory (windows) or pipes (unix) as a more expedient communications avenue between client and server. If the server however appears not to support such communications (either a legacy server or a java server, for example), then the loopback address is used as a fallback. If the server is known a priori to support such alternate communication channels, then this 'fallback' strategy can be turned off by making use of SetForceSharedMemory(). The current setting can be seen by using this call.
char* GetGCastAddr | ( | void | ) |
Gets the cannonical globals multicast address the server will use when sending payloads via multicast as a producer.
References GetMCastAddr().
char* GetGCastMask | ( | char * | addr | ) |
Gets the cannonical multicast address mask the server will use when sending payloads via multicast as a producer.
addr | is the desired multicast address for the server. In IPv4 this must be in the form of 'a.b.c.d'. |
References GetMCastMask().
int GetHostNameFromAddress | ( | char * | addr, |
char * | host, | ||
int | length | ||
) |
Gets the host name from the address given.
addr | is ip address whose host name is desired. |
host | is a string buffer which will contain the host name when the call completes. |
length | is the length of the string buffer passed as the 'host' parameter. |
int GetInetAddress | ( | SCKADR * | sckadr, |
char * | addr | ||
) |
Gets the address (ip address and port) of the given socket address as a string.
sckadr | is a reference to a socket address whose string representation is desired. |
addr | is a string buffer with enough space to hold the string representation of the given socket address (e.g. at least 64 characters) |
References argument_list_error.
int GetMaxTcpMessageSize | ( | void | ) |
Gets the TINE server maximum STREAM message segment size.
char* GetMCastAddr | ( | void | ) |
Gets the cannonical multicast address a server will use when requested to send payloads via multicast.
Referenced by GetGCastAddr().
char* GetMCastAddrLegacy | ( | void | ) |
Gets the cannonical legacy multicast address a pre-release 4.5.2 server will use when requested to send payloads via multicast.
char* GetMCastMask | ( | char * | pattern | ) |
Gets the cannonical multicast address mask the server will use when requested to send payloads via multicast.
pattern | is the target ip address pattern for which the assigned multicast mask is desired. If 'pattern' is NULL then the canonical multicast mask is returned. |
Referenced by GetGCastMask().
int GetMCastTTL | ( | void | ) |
Gets the TINE multicast Time-To-Live.
int GetPacketMTU | ( | void | ) |
Gets the TINE UDP server packet MTU.
int GetTcpConnectionTableSize | ( | void | ) |
returns the current setting of the tcp connection table size.
Transport communication goes via UDP by default. However by specifying either CM_CONNECT or CM_STREAM a caller can request connected stream transport via TCP. In this case a slot is reserved in a tcp connection managment table for the resulting communications socket. This is a table which is NOT allowed to grow in size but is restricted to the size seen at initialization (default = 32 entries).
int GetUseLoopback | ( | void | ) |
Returns the current value of the 'useLoopBack' flag.
If the useLoopBack flag is 'TRUE' then client-side calls to a server on the same host as the client will use the network socket layer as the communication avenue between client and server, as opposed to shared memory (windows) or pipes (unix).
int GetUseMCastLegacyRules | ( | void | ) |
Returns whether legacy mutlicast systematics are in effect or not.
int PollExternalDescriptor | ( | SOCKET | s, |
int | events | ||
) |
registers an external socket to the server's poll set
TINE attempts will call a blocking 'poll' on the known socket descriptors. If the application needs to react to an event on an external socket on the same thread as the tine cycler, such sockets can be registered with the cycler via this call.
s | is the external socket descriptor to be added to the poll set. |
events | is the requested events for which the 'poll' should wake up. |
void SetAllowRemoteDebugging | ( | int | value | ) |
enables/disables remote debugging
The 'attachfec' tool is usually used on the same host as the running server, in which case the debugging output is forwarding via an efficient local named pipe. In some cases, it might be desired to make use of the 'attachfec' on a remote host, in which case debugging output is transfered via a stream connection (less efficient). This feature can be turned OFF by making use of this API call and passing a value of FALSE prior to a call to SystemInit().
value | is the desired setting (default = TRUE). |
int SetBurstLimit | ( | int | npackets | ) |
Sets the burst limit in number of packets which are allowed to be set consecutively.
For UDP transport (the default) TINE does not make use of flow control in any systematic way, other than adjusting this parameter setting at the server side. This parameter works together with the cycle delay and determines how many UDP packets (datagrams) are allowed to be sent consecutively within the transport loop before a brake is applies (cycle delay). If all clients and servers are on the same speed ethernet, this value can be adjusted to a much larger value. However, a fast server sending to a slow client (a remote client via a DSL link for instance) might send more datagrams in a burst than can be received. The default value should compensate for this effect.
npackets | is the number of packet allowed to be set consecutively for a given call (default: 1000). |
int SetClnUDPPort | ( | int | port | ) |
Sets the TINE client UDP base port.
TINE attempts to obtain the first free port beginning UDP client base port. If for some reason the client base port needs to be adjusted away from its default value of 8050, then this routine can be used.
port | is the base UDP port to use for the TINE clients |
References not_allowed.
int SetCycleDelay | ( | int | msecs | ) |
Sets the delay time in milliseconds following a 'burst' of ethernet packets (as defined by SetBurstLimit().
For UDP transport (the default) TINE does not make use of flow control in any systematic way, other than adjusting this parameter setting at the server side. This parameter works together with the burst limit and determines how long to delay further datagram transmission when the burst limit has been reached. If all clients and servers are on the same speed ethernet, this value can be adjusted to 0. However, a fast server sending to a slow client (a remote client via a DSL link for instance) might send more datagrams in a burst than can be received. The default value should compensate for this effect.
msec | is the time in milliseconds to delay before sending further ethernet packets. (default: 20 msec). |
int SetCycleMicroDelay | ( | int | usecs | ) |
Sets the delay time in microseconds following a 'burst' of ethernet packets (as defined by SetBurstLimit().
For UDP transport (the default) TINE does not make use of flow control in any systematic way, other than adjusting this parameter setting at the server side. This parameter works together with the burst limit and determines how long to delay further datagram transmission when the burst limit has been reached. If all clients and servers are on the same speed ethernet, this value can be left at its default value 0. However, when fine adjustments in flow control are necessary, a delay in the micro second region following each 'burst' of packets can be applied, where the delay in microseconds is given by this setting.
usec | is the time in microseconds to delay before sending further ethernet packets. (default: 0 usec => use cycle delay in milliseconds). |
void SetForceSharedMemory | ( | int | value | ) |
Disables or enables the 'useLoopBack' flag according to the value given (boolean).
If the useLoopBack flag is 'FALSE' (default) then client-side calls to a server on the same host as the client will attempt to use shared memory (windows) or pipes (unix) as a more expedient communications avenue between client and server. If the server however appears not to support such communications (either a legacy server or a java server, for example), then the loopback address is used as a fallback. If the server is known a priori to support such alternate communication channels, then this 'fallback' strategy can be turned off by making use of this call.
value | should be non-zero (TRUE) to turn this feature on or FALSE to turn it off. FALSE is the default. |
int SetGCastAddr | ( | char * | addr | ) |
Sets the cannonical globals multicast address the server will use when sending payloads via multicast as a producer.
A TINE server will by default use the multicast address '238.1.c.d.' where the last 2 bytes 'c' and 'd' are obtained from the server's own IP address (in IPv4 notation). Under some circumstances it might be desireable to make use of a specific multicast address (e.g. for failover of a globals variable). The call can be used for this purpose. An alternative is to utilize the environment variable 'TINE_GCAST_ADDR' or to use the configuration file: 'gcastaddr.csv'. However in such cases, care should be taken to ensure that only the server application sees such an environment variable or such a configuration file.
addr | is the desired multicast address for the server. This must be in the form of 'a.b.c.d' (IPv4) or 'a:b:c:d::e:f:g:h' (IPv6). |
References SetMCastAddr().
int SetGCastMask | ( | char * | addr | ) |
Sets the cannonical multicast address mask the server will use when sending payloads via multicast as a producer.
Under legacy conditions (gMultiCastUseLegacyRules = TRUE) a TINE server will by default use the multicast address '238.1.c.d.' where the last 2 bytes 'c' and 'd' are obtained from the server's own IP address (in IPv4 notation). The initial two bytes consitute the 'mask'. The first byte signals a multicast if it falls between 224 and 238. The second byte can be used as a multicast 'metric' to offer further distinction amoung multicast senders if required. This call can be used to specify the multicast mask. An alternative is to utilize the environment variable 'TINE_GCAST_MASK' or to use the configuration file: 'gcastmask.csv'.
Under modern conditions a TINE server will by default use the multicast address '239.b.c.d.' where the last 3 bytes 'b', 'c', and 'd' are obtained from the server's own IP address (in IPv4 notation). The initial byte consitutes the 'mask' in this case.
addr | is the desired multicast address for the server. In IPv4 this must be in the form of 'a.b.c.d'. |
References SetMCastMask().
void SetIdleConnectionDuration | ( | int | allowedIdleSeconds | ) |
sets the time-to-live for an unused TCP connection to a server
A client might choose to make use of TCP transport for a short period of time (e.g. a transation) and then no longer require TCP communications to the target in question. In order to conserve resources in the long run the client side will close such unused connections after the allowed idle time has expired.
Use this routine to set this value (default = 300 seconds)
allowedIdleSeconds | is the allowed TCP connection idle time in seconds. |
void SetMaxTcpMessageSize | ( | int | value | ) |
Sets the TINE server maximum STREAM message segment size.
When using CM_STREAM to acquire data from a server, very large amounts of data can be passed to the stream socket. In general the network stack will not be able to prcess an indeterminantly large amount and the TINE transport system will need to parcel the transmission into segments. The maximum tcp message size determines the size of the underlying parcel. By default, this is 100000000 bytes. This value can be adjusted by calling this routine at the server prior to any call to SystemInit().
value | is the desired maximum STREAM message segment size The default is 100000000 bytes. The minimum accepted value is 1472 byte, There is no maximum, however the network stack may refuse to trasmit if the value is too large. |
int SetMCastAddr | ( | char * | addr | ) |
Sets the cannonical multicast address the server will use when requested to send payloads via multicast.
A TINE server will by default use the multicast address '239.b.c.d' where bytes 'b', 'c', and 'd' are obtained from the server's own IP address
'238.1.c.d.' where the last 2 bytes 'c' and 'd' are obtained from the server's own IP address (in IPv4 notation). Under some circumstances it might be desireable to make use of a specific multicast address (e.g. for failover of a globals variable). The call can be used for this purpose. An alternative is to utilize the environment variable 'TINE_MCAST_ADDR' or to use the configuration file: 'mcastaddr.csv'. However in such cases, care should be taken to ensure that only the server application sees such an environment variable or such a configuration file.
addr | is the desired multicast address for the server. In IPv4 this must be in the form of 'a.b.c.d'. |
Referenced by SetGCastAddr().
int SetMCastAddrLegacy | ( | char * | addr | ) |
Sets the cannonical legacy multicast address the server will use when where necessary.
A TINE server prior to release 4.5.2 will by default use the multicast address '238.1.c.d.' where the last 2 bytes 'c' and 'd' are obtained from the server's own IP address (in IPv4 notation). Under some circumstances it might be desireable to make use of a specific multicast address (e.g. for failover of a globals variable). The call can be used for this purpose. An alternative is to utilize the environment variable 'TINE_MCAST_ADDR' or to use the configuration file: 'mcastaddr.csv'. However in such cases, care should be taken to ensure that only the server application sees such an environment variable or such a configuration file.
addr | is the desired multicast address for the server. In IPv4 this must be in the form of 'a.b.c.d'. |
int SetMCastMask | ( | char * | addr | ) |
Sets the cannonical multicast address mask the server will use when requested to send payloads via multicast.
Under legacy conditions (gMultiCastUseLegacyRules = TRUE) a TINE server will by default use the multicast address '238.1.c.d.' where the last 2 bytes 'c' and 'd' are obtained from the server's own IP address (in IPv4 notation). The initial two bytes consitute the 'mask'. The first byte signals a multicast if it falls between 224 and 239. The second byte can be used as a multicast 'metric' to offer further distinction amoung multicast senders if required. This call can be used to specify the multicast mask. An alternative is to utilize the environment variable 'TINE_MCAST_MASK' or to use the configuration file: 'mcastmask.csv'.
Under modern conditions a TINE server will by default use the multicast address '239.b.c.d.' where the last 3 bytes 'b', 'c', and 'd' are obtained from the server's own IP address (in IPv4 notation). The initial byte consitutes the 'mask' in this case.
addr | is the desired multicast address for the server. This must be a string in the form of 'mask1|pattern1,mask2|pattern2,...' where the 'mask' and 'pattern' substrings must be of the form 'a.b.c.d' (IPv4) or 'a:b:c:d::e:f:g:h' (IPv6). If 'pattern' is not given, then the ip address of the local host is used. |
References argument_list_error, and string_too_long.
Referenced by SetGCastMask().
int SetMCastTTL | ( | int | ttl | ) |
Sets the TINE multicast Time-To-Live.
If the multicast Time-To-Live parameter (number of 'hops') needs to be adjusted away from its default value of 16 then this routine can be used.
ttl | is the time-to-live value to use for multicasts |
References not_allowed.
int SetPacketMTU | ( | int | mtu | ) |
Sets the TINE Packet MTU for the UDP server socket.
The TINE default transport protocol is UDP and the default UDP datagram MTU (maximum transport unit) is 1472 bytes (i.e. the ethernet packet MTU). TINE will supply its own packet reassembly for data transfers larger than this. Many modern operating systems have network stacks that will provide UDP packet reassembly up to 64 Kbytes. This generally a much more efficent packet reassembly as it happens at the driver level. If a higher performance for very large data transfer is required, this routine can be called at the server prior to any call to SystemInit().
mtu | is the desired maximum transport unit for the server socket. The default is 1472 bytes. The minimum accepted value is 512 and the maximum accepted value is 64000 bytes. |
References feclog(), and not_allowed.
void SetTcpConnectionTableSize | ( | int | value | ) |
sets the tcp connection table size.
Transport communication goes via UDP by default. However by specifying either CM_CONNECT or CM_STREAM a caller can request connected stream transport via TCP. In this case a slot is reserved in a tcp connection managment table for the resulting communications socket. This is a table which is NOT allowed to grow in size but is restricted to the size seen at initialization (default = 32 entries). If it is known a priori that TCP communication will be used in a big way, then this table size should be adjusted prior to system initialization (i.e. a call to SystemInit()).
value | is the desired tcp connection table size (minimum 8) |
void SetUseLoopback | ( | int | value | ) |
Sets the 'useLoopBack' flag to the value given (boolean).
If the useLoopBack flag is 'TRUE' then client-side calls to a server on the same host as the client will use the network socket layer as the communication avenue between client and server, as opposed to shared memory (windows) or pipes (unix).
value | should be non-zero (TRUE) to turn this flag on or FALSE to turn it off. FALSE is the default. |
void SetUseMCastLegacyRules | ( | int | value | ) |
Establishes legacy mutlicast systematics or not.
value | determines whether legacy multicast rules are in effect. If TRUE then the multicast byte = 238 and the second byte is '1' by default and the last 2 bytes are those of the sender. If FALSE (default) the multicast byte = 239 and the last 3 bytes are those of the sender. |