TraceRoute Configuration
The component accepts one or more of the following configuration settings. Configuration settings are similar in functionality to properties, but they are rarely used. In order to avoid "polluting" the property namespace of the component, access to these internal properties is provided through the Config method.
TraceRoute Configuration Settings
HopTimeoutInMilliseconds: The hop timeout is treated as milliseconds. Setting HopTimeoutInMilliseconds to true causes the component to use the value in the HopTimeout property as milliseconds instead of seconds, which is the default. | |
TimeoutInMilliseconds: The timeout is treated as milliseconds. Setting TimeoutInMilliseconds to true causes the component to use the value in the Timeout property as milliseconds instead of seconds, which is the default. |
ICMPPort Configuration Settings
IcmpDllTimeout: The timeout for the component when using the icmp.dll.The component will wait for the operation to complete before returning control.
If IcmpDllTimeout expires, and the operation is not yet
complete, the component throws an exception. IcmpDllTimeout must be set to a positive value.
The default value for IcmpDllTimeout is 60 seconds. NOTE: This setting is only valid when UseICMPDLL is set to true. | |
MaxMessageSize: The maximum length of the messages that can be received.This setting specifies the maximum size of the datagrams that the component will accept without truncation. | |
MulticastTTL: The time to live (TTL) value for multicast ICMP packets sent by the component.When sending multicast packets, the setting specifies the Time-To-Live (TTL) field. The Time-to-live (TTL) field of the ICMP packet is a counter limiting the lifetime of a packet.
Each router (or other module) that handles a packet decrements the TTL field by one or more if it holds the packet for more than one second, thus the TTL is effectively a hop count limit on how far a datagram can propagate through the Internet. When the TTL is reduced to zero (or less), the packet is discarded. By default, the default TTL value of the underlying TCP/IP subsystem will be used. | |
UseConnection: Determines whether to use a connected socket.UseConnection specifies whether the component
should use a connected socket or not. The connection is
defined as an association in between the local address/port
and the remote address/port. As such, this
is not a connection in the traditional TCP sense. What it
means is only that the component will send and receive data
only to and from the specified destination.
The default value for this setting is False. | |
TimeoutInMilliseconds: The timeout is treated as milliseconds.
Setting TimeoutInMilliseconds to true causes the component
to use the value in the IcmpDllTimeout config
as milliseconds instead of seconds, which is the default.
NOTE: This setting is only valid when UseICMPDLL is set to true. | |
UseICMPDLL: Use the icmp.dll included on Windows Systems. Setting UseICMPDLL to true causes the component to use the icmp.dll on Windows 9x or later machines. This sometimes enables access to raw sockets when permissions for standard operations are prohibited. | |
UseIPHLPDLL: Use the iphlpapi.dll included on Windows Systems. Setting UseIPHLPDLL to true causes the component to use the iphlpapi.dll on Windows XP or later machines. This sometimes enables access to raw sockets when permissions for standard operations are prohibited. Note that if both this and UseICMPDLL are enabled, the iphlpapi.dll will take precedence. | |
UseIPv6: Whether or not to use IPv6.By default, the component expects an IPv4 address for local and remote host properties, and will create an IPv4 socket. To use IPv6 instead, set this to True. |
Socket Configuration Settings
AbsoluteTimeout: Determines whether timeouts are inactivity timeouts or absolute timeouts.If AbsoluteTimeout is set to True, any method which does not complete within Timeout seconds
will be aborted. By default, AbsoluteTimeout is False, and the timeout is an inactivity timeout.
Note: This option is not valid for UDP ports. | |
FirewallData: Used to send extra data to the firewall.When the firewall is a tunneling proxy, use this property to send custom (additional) headers to the firewall (e.g. headers for custom authentication schemes). | |
InBufferSize: The size in bytes of the incoming queue of the socket.
This is the size of an internal queue in the TCP/IP stack.
You can increase or decrease its size depending on the amount
of data that you will be receiving. Increasing the value of the
InBufferSize setting can provide significant improvements in
performance in some cases.
Some TCP/IP implementations do not support variable buffer sizes. If that is the case, when the component is activated the InBufferSize reverts to its defined size. The same happens if you attempt to make it too large or too small. | |
OutBufferSize: The size in bytes of the outgoing queue of the socket.This is the size of an internal queue in the TCP/IP stack.
You can increase or decrease its size depending on the amount
of data that you will be sending. Increasing the value of the
OutBufferSize setting can provide significant improvements in
performance in some cases.
Some TCP/IP implementations do not support variable buffer sizes. If that is the case, when the component is activated the OutBufferSize reverts to its defined size. The same happens if you attempt to make it too large or too small. |
Base Configuration Settings
GUIAvailable: Tells the component whether or not a message loop is available for processing events.
In a GUI-based application, long-running blocking operations may cause the application to stop responding to input until the operation returns. The component will attempt to discover whether or not the application has a message loop and, if one is discovered, it will process events in that message loop during any such blocking operation.
In some non-GUI applications an invalid message loop may be discovered that will result in errant behavior. In these cases, setting GuiAvailable to false will ensure that the component does not attempt to process external events. | |
UseBackgroundThread: Whether threads created by the component are background threads.If set to True, when the component creates a thread the thread's IsBackground property will be explicitly set to True. By default this setting is False. |