Configuring RT-TCP/IP Stack Behavior
You can configure various RT-TCP/IP Stack behaviors from the Configure RT-TCP/IP Stack Behavior control panel page. See below for complete descriptions of the available settings.
NOTE: Some changes to the RTX64 Control Panel require a restart of the RT-TCP/IP Stack.
Accessing the RT-TCP/IP Stack Behavior options
Sections in this topic
Starting the Stack with the RTSS Subsystem
Setting the amount of allocated memory
Setting the Stack timer interval
Setting IP fragmentation time-out
Setting the maximum number of ARP entries
Specifying the number of sockets
Setting the default Maximum Transmission Unit (MTU)
Running the Stack in Verbose mode
Starting the Stack with the RTSS Subsystem
Check the Start the RT-TCP/IP Stack with the RTSS Subsystem check box to start the Stack automatically when the Subsystem is started. When this is unchecked, you will be responsible for manually starting the Stack before you can run any RTSS applications that use it.
Setting the Amount of Allocated Memory
The RT-TCP/IP Stack must allocate all necessary memory on start up to be deterministic. This allocated memory value should be large enough to include all transmit and receive buffers. This memory does not include memory allocated by the NIC drivers at startup.
To set the amount of allocated memory:
- Specify the amount of memory allocated to the RT-TCP/IP stack in bytes:
- The default value is 2048 kilobytes.
- The minimum allowable value is 1024 kilobytes.
- The maximum allowable value is 4 gigabytes.
- Restart the RT-TCP/IP Stack for your changes to take effect. If you plan to make additional changes that require a restart of the Stack, make all of the changes first and then restart the Stack when you are finished.
Setting the Stack Timer Interval
The Stack timer is an internal timer that is used for all internal synchronization. The RT-TCP/IP Stack requires a fixed time notification for every Stack Timer Interval to update its elapsed time counters that are used within. Since there are several protocols implemented within the Stack, dealing with individual timers would be cumbersome. Hence, the RT-TCP/IP Stack is optimized to use a single notification for how much time is elapsed. The Stack timer system manages all of the different timers used within the RT-TCP/IP Stack.
NOTE: Setting the Stack Timer Interval to a lower value results in closely spaced interrupts and can adversely impact the performance of the system.
To set the Stack timer interval:
- Enter a positive integer value (in milliseconds) in the text box. The default value is 100 milliseconds.
NOTE: The minimum allowed value is 1 millisecond. The maximum allowed value is 1000 milliseconds.
- Restart the RT-TCP/IP Stack for your changes to take effect. If you plan to make additional changes that require a restart of the Stack, make all of the changes first and then restart the Stack when you are finished.
Setting IP Fragmentation Time-out
NOTE: We recommend that you decrease the IP fragmentation time-out value so that it is less than the wrap-around time in an IP ID field.
To set the IP fragmentation time-out:
- Specify the time-out interval on IP fragmentation. The default value is 60. The maximum value is 120.
- Restart the RT-TCP/IP Stack for your changes to take effect. If you plan to make additional changes that require a restart of the Stack, make all of the changes first and then restart the Stack when you are finished.
Setting the Maximum Number of ARP Entries
It is recommended that the maximum ARP cache entries supported be greater than the total number of devices with which the interface communicates. If the value is too small, the ARP cache can overflow. The potential for an overflow increases when the majority of network devices are offline. When an overflow occurs, the RT-TCP/IP Stack presents the warning message tfRtClone: ARP cache full, which indicates that the maximum number of entries supported should be increased.
Each ARP cache entry is 100 bytes.
To set the maximum number of ARP entries:
- Specify the maximum number of ARP entries allowed by the RT-TCP/IP stack will provide. The default value is 256.
- Restart the RT-TCP/IP Stack for your changes to take effect. If you plan to make additional changes that require a restart of the Stack, make all of the changes first and then restart the Stack when you are finished.
Specifying the Number of Sockets
The RT-TCP/IP Stack allocates actual socket memory when it creates a socket, so it must know the maximum number of sockets it must create.
To specify the number of sockets:
- Specify the maximum number of sockets that the RT-TCP/IP stack will provide. The specified value must be in the range of 1 to 255. The default is 64.
NOTE: In the running system, the socket range is 0 to the maximum number of sockets. For example, if the maximum number of sockets is set to 64 (default), the range is 0 to 63.
- Restart the RT-TCP/IP Stack for your changes to take effect. If you plan to make additional changes that require a restart of the Stack, make all of the changes first and then restart the Stack when you are finished.
Setting the Default Maximum Transmission Unit (MTU)
The RT-TCP/IP Stack does all memory allocation on startup for determinism and must know MTU size to optimize its performance.
To set the default Maximum Transmission Unit (MTU):
- Specify the RT-TCP/IP stack’s default Maximum Transmission Unit (MTU) size, in bytes.
NOTE: The specified value must be in the range of 1500 to 9000. The default is 1500.
- Restart the RT-TCP/IP Stack for your changes to take effect. If you plan to make additional changes that require a restart of the Stack, make all of the changes first and then restart the Stack when you are finished.
Running the Stack in Verbose Mode
The RT-TCP/IP stack supports a verbose mode that provides status information at key points during startup/shutdown and while running. This information will impact performance but is a useful way to trace what is happening during development or when debugging an issue.
To run the Stack in Verbose mode:
- Check the Run in Verbose mode check box to enable verbose logging. Uncheck this box to disable verbose mode logging.
NOTE: Running the stack in Verbose mode may cause affect RT-TCP/IP stack performance during system shutdown.
- Restart the RT-TCP/IP Stack for your changes to take effect. If you plan to make additional changes that require a restart of the Stack, make all of the changes first and then restart the Stack when you are finished.