|
Each network interface must have its own NIC Driver [rtndn] section in the RtxTcpIp INI file, numbered from [rtnd0] to [rtnd254]. The number of sections you have must correspond to the NumOfInterfaces value in the [TCP/IP] section.
In order to connect the local LAN to another LAN, the Gateway address must be specified. The Gateway address is specified as an IPv4 address in dot notation.
The RtxTcpIp stack, when running, uses multiple threads to accomplish its tasks. The priority of each thread can be set independently. The main portion of the RtxTcpIp Stack uses a timer thread (with priority as TimerPriority), to handle all TCP/IP time-related functions. Each network card uses two threads, an interrupt service thread (with priority as InterruptPriority) that handles all interrupt-related processing, and a receiving thread (with priority as ReceivePriority) that handles all receive-related processing. The priority settings needed for these threads depend greatly on how time-critical the TCP/IP processing is, related to any other processing activities running on the system. If you are not sure what values to enter, leave these fields blank.
When the RT-TCP/IP stack is configured as router, use IPv6RouterAdv (value 1) to broadcast ICMP router advertisement messages. The stack can still advertise parameters such as on-link prefixes and the interface MTU for the network even though it is not an advertising interface. RT-TCP/IP stack will not automatically stop IPv6 router advertisements from being sent on interfaces configured to send router advertisements. But the lifetime of the router will be zero in advertisements when forwarding is disabled (IPv6RouterFwd value 0).
NOTE: Configurable parameters that have N/A for a default value in the table do not have a default value. If used, values for these parameters must be specified in the INI file.
Configurable |
Default |
Description |
Driver |
N/A |
The RtxTcpIp NIC Driver RTDLL name or the symbolic DLL name, not the actual driver file, must be provided. No path is necessary. An RtxTcpIp NIC driver must be registered with RTX before it can be used with the RtxTcpIp Stack and has to be registered again whenever you modify and build the driver. From the sample here, we see that the driver field is set to RT8257X. This driveName value tells the RtxTcpIp Protocol Stack to load the driver Rt8257x.rtdll for this particular network device. Note: If you plan to use Full RT-TCP/IP support from the RTX Properties control panel, TCP/IP tab, and wish to have your RtxTcpIp NIC drivers registered whenever RT-TCP/IP is enabled, you can place your RtxTcpIp NIC driver in the RT-TCP/IP drivers directory, add the RTDLL name without extension to the registry value below, and end each file name with a semicolon. HKLM\System\CurrentControlSet\Control\RTX\TCPIPdrivers.
|
IOAddr |
N/A |
Required for NE2000 ISA, optional for all others. Base I/O Port address used by the NIC card (in hex notation, e.g., 300). IOAddr value is needed, but ignored for RTX "ISA Plug and Play" devices. |
IPAddr |
N/A |
A Static IPv4 Address, in dot format, must be provided for every instance of a driver. Each NIC needs a unique Network ID. This value is normally read by the RtxTcpIp Protocol Stack. The RtxTcpIp driver does not normally read the IPAddr value, however if the driver requires this field, it can read it directly or by using the RtnGetIpAddress function to query the IP address from the stack. |
IRQ |
N/A |
Required for NE2000 ISA, optional for all others. Interrupt Request used by the NIC. IRQ value is needed, but ignored for RTX "ISA Plug and Play" devices. |
LineBasedOnly |
0 |
For MSI-capable devices, determines whether the device should use line-based or message-based interrupts:
|
1500 |
Sets the Maximum Transmission Unit size (in bytes) of the largest packet that this NIC card can pass onward. Default is 1500 bytes. To use jumbo frames (frames larger than 1500 bytes) with this NIC card, you must:
|
|
Netmask |
N/A |
A Static IPv4 netmask. A netmask must be provided for every instance of a driver. This value is normally read by the RtxTcpIp Protocol Stack. The RtxTcpIp driver does not normally read the Netmask value. Note: Technically, in RTX, you cannot configure multiple IP addresses with the same subnet. This limitation occurs because the RtxTcpIp stack only has one routing table for all NIC interfaces. IP addresses configured with the same subnet mask appear as duplicates to the stack and cause an error. You can work around this limitation by entering a value of 255.255.255.255 for the Netmask parameter. A Netmask value of 255.255.255.255 indicates that this network interface should use the same routing entry as the first interface in the routing table. Internally, the stack will re-route packets sent to the first interface to this interface. To determine what the first interface in the routing table is, use the RtssRoute utility. |
NumRecvBuffers |
256 |
The number of receive buffers allocated by the driver. Default 256. Min 64. No Max. NOTE: If you specify a value lower than the minimum, the RTX-determined minimum value will be used. If a minimum value is not specified, the default value (256) will be used. For the following drivers, the minimum NumRecvBuffers value is 64:
For the RtIGB driver, the minimum NumRecBuffers value is 80 and the default value is 256. There is no minimum or default value for the RtRtl8168 driver. You must provide values for each. |
NumXmitBuffers |
256 |
The number of transmit buffers allocated by the driver. Default 256. Min 64. No Max. NOTE: If you specify a value lower than the minimum, the RTX-determined minimum value will be used. If a minimum value is not specified, the default value (256) will be used. For the following drivers, the minimum NumXmitBuffers value is 64:
For the RtIGB driver, the minimum NumXmitBuffers value is 80 and the default value is 256. There is no minimum or default value for the RtRtl8168 driver. You must provide values for each. |
PreferMsi |
0 |
For devices that have both MSI and MSI-X capability, provides two optional behaviors:
|
NOTE: Configurable parameters that have N/A for a default value in the table do not have a default value. If used, values for these parameters must be specified in the INI file.
Configurable |
Default |
Description |
EA |
(See text) |
The Ethernet Address (i.e. MAC address) of the NIC card, as a 12-digit HEX string with no delimiters (for example, 0123456789AB). Some drivers use the EA value to differentiate between multiple cards of the same type residing on the PCI bus. Note: You can use either the EA or Location parameter to identify a NIC card. If you use both, they have to refer to the same card and both will be considered when RTX searches for the card. |
Filter |
N/A |
Identifies a filter driver to be used with this NIC driver. Filter drivers are optional but if used this field must be filled in with the RtxTcpIp Filter Driver RTDLL name or the symbolic DLL name not the actual driver file, no path is necessary. Note: To use a filter driver, you must register the filter using RTSSrun. For example: Filter=RTSampleFilter |
FilterState |
N/A |
Indicates whether the filter defined in Filter is enabled or not. 1 is enabled, 0 is disabled. Default is enabled. For example: FilterState = 1 |
Gateway |
N/A |
A single default IPv4 gateway address for this driver. If the default gateway is not provided, it will not be possible for the RtxTcpIp Stack to communicate beyond the gateway with this particular NIC. Note that the driver does not normally need to read the gateway address. This is handled by the stack itself. |
InterruptPriority |
64 |
Sets the priority of the RtxTcpIp Stack's Interrupt Service Thread for an instance of a driver. 127 Max (highest priority), 0 Min (lowest priority). This value must be of a higher priority than the value in the ReceivePriority field. NOTE: The default InterruptPriority value is 64 for the following drivers:
|
IPv6Addr |
AUTO |
A valid static IPv6 Address, in colon format, can be provided for every instance of a driver. This value is normally read by the RtxTcpIp Protocol Stack. The RtxTcpIp driver does not normally read the IPv6Addr value; however, if the driver requires this field it can read it directly. The default value is AUTO. |
IPv6Prefix |
64 |
Represents the length of the IPv6 mask. Minimum value is 1. Maximum value is 127. Default is 64. By accepting the IPv6 prefix length, rather than a mask to be specified, we ensure that there will be no "holes" in the mask. |
IPv6Router |
0 |
Enables the stack to function as an IP router. Value must be either 0 to disable or 1 to enable. |
IPv6RouterAdv |
0 |
If the stack is configured to function as a router, use this field to broadcast ICMPv6 router advertisements messages. Value must be either 0 to disable or 1 to enable. |
IPv6RouterFwd |
0 |
If the stack is configured to function as a router, use this field to forward packets received on interface. Value must be either 0 to disable or 1 to enable. |
LatencyRecvUpdated |
100 |
Sets the latency (in microseconds) needed for memory buffer to be written back when sending and receiving message buffers larger than about 4 KB (with switch connection on wire only). Suggested value 500. If you are experiencing occasional packet re-send and therefore a large latency when sending and receiving buffers in TCP/IP, you may need to set the LatencyRecvUpdated field to a non-zero value (the suggested value is 500 microseconds) and set the RTX Hal timer period to 100 microseconds using the RTX Properties control panel. |
LatencyXmitUpdated |
500 |
Period, in microseconds, to check for packets queued for transmission. Note: This option is currently only supported by the RTX Virtual Network Add-On |
Location |
(See text) |
The location field of the RtE1000 NIC card, as a semicolon separated string. Example: Location = 5;1;0 The first number (5) represents the PCI bus number, the middle number (1) represents the device number, and the last number (0) represents the function number. You can find this information using the RTX Properties control panel or Device Manager. To obtain the information from the RTX Properties control panel, do the following:
Note: You can use either the EA or Location parameter to identify a NIC card. If you use both, they have to refer to the same card and both will be considered when RTX searches for the card. Note: The Location parameter must be specified when two or more RTX-controlled NICs are used with the same driver, such as when using two NICs of the same type or a multiport NIC. If Location is not specified in this scenario, every NIC after the first will fail to initialize. Important: The Location parameter applies to the RtE1000 driver card only. |
NumOfVirtualIP |
0 |
Specifies the number of virtual IP addresses you want to assign to this interface. Limit is 32. Used in conjunction with the VirtualIPx parameter which provides the individual IP addresses and is described below. |
PreferMsi |
0 |
For devices that have both MSI and MSI-X capability, provides two optional behaviors:
|
ReceivePriority |
63 |
Sets the priority of the RtxTcpIp Stack's Receive Thread for an instance of a driver. 127 Max (highest priority), 0 Min (lowest priority). This value must be of a lower priority than the value of the InterruptPriority field, and is normally set to the same propriety as the RtxTcpIp driver's Receive Thread. NOTE: The default ReceivePriority value is 63 for the following drivers:
|
RxFifoSize |
32 |
Size of the receive FIFO queue, in kilobytes. Note: This option is currently only supported by the RTX Virtual Network Add-On |
TransmitPriority |
12 |
Priority of the transmit thread. Note: This option is currently only supported by the RTX Virtual Network Add-On |
TxFifoSize |
32 |
Size of the transmit FIFO queue, in kilobytes. Note: This option is currently only supported by the RTX Virtual Network Add-On |
VirtualIPn |
(See text) |
Defines the virtual IP addresses for this interface. Used in conjunction with NumOfVirtualIP. For example: NumOfVirtualIP = 3 |