IP*Works! 2016 .NET Edition
IP*Works! 2016 .NET Edition
Questions / Feedback?

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.

ReceiveAllMode:   Enables a socket to receive all IPv4 or IPv6 packets on the network.

This setting specifies the ReceiveAll mode for the socket. Available modes:

ValueDescription
-1 (default)The socket option is left unspecified.
0Do not receive all network traffic.
1Receive all network traffic. This enables promiscuous mode on the network interface card (NIC). On a LAN segment with a network hub, a NIC that supports promiscuous mode will capture all IPv4 or IPv6 traffic on the LAN, including traffic between other computers on the same LAN segment.
2Receive only socket-level network traffic (Feature may not be implemented by your Windows installation).
3Receive only IP level network traffic. This option does not enable promiscuous mode on the network interface card. This option only affects packet processing at the IP level. The NIC still receives only packets directed to its configured unicast and multicast addresses. However, a socket with this option enabled will receive not only packets directed to specific IP addresses, but will receive all the IPv4 or IPv6 packets the NIC receives.

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.

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.

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 to use IPv6.

When set to 0 (default), the component will use IPv4 exclusively. When set to 1, the component will use IPv6 exclusively. To instruct the component to prefer IPv6 addresses, but use IPv4 if IPv6 is not supported on the system, this setting should be set to 2. The default value is 0. Possible values are:

0 IPv4 Only
1 IPv6 Only
2 IPv6 with IPv4 fallback

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.

UseInternalSecurityAPI:   Tells the component whether or not to use the system security libraries or an internal implementation.

By default the component will use the system security libraries to perform cryptographic functions. When set to False calls to unmanaged code will be made. In certain environments this is not desirable. To use a completely managed security implementation set this setting to True. Setting this to True tells the component to use the internal implementation instead of using the system's security API.

Note: This setting is static. The value set is applicable to all components used in the application.

When this value is set the product's system DLL is no longer required as a reference, as all unmanaged code is stored in that file.

 
 
Copyright (c) 2020 /n software inc. - All rights reserved.
IP*Works! 2016 .NET Edition - Version 16.0 [Build 7353]