Application Preferences

How do I use "Why Can't I Connect?"

The application preferences allow you to set initial parameters as well as application behavior. The options run from basic to advanced.

Application Language

Set the language the application will display.

Trace Language

Set the language the viewable trace and / or the log file will display.

Show greeting on startup

Show the opening greeting and tips at startup.

Show trace warning and error message boxes

Initially set the application to show trace warning and error message boxes. This value is set under the trace menu at runtime.

Initial Viewable Trace
All

View all tracing.

Headers And Errors Only

View headers and errors, do not view the contents of sent and received messages.

Errors Only

View errors only.

None

Trace nothing to the view list.

Truncate the log file on open

While opening the log file, if the file exists, delete any data in the file.

Append to the log file on open

While opening the log file, if the file exists, add tracing after any data currently in the file.

Reuse the last open log file

Open the last log file when the application starts

| ... |

Select / create the log file. A log file must be selected / created to set Reuse the last open log file

Initial Log File Trace
All

Write all tracing to the log file.

Headers And Errors Only

Write headers and errors to the log file, do not write the contents of sent and received messages.

Errors Only

Write errors only to the log file.

None

Write nothing to the log file.

Default Trace Detail Level
High

Initially set the trace level to show all traces. This level shows the highest amount of detail.

Medium

Initially set the trace level to show detail that is required for a typical user. This is the default.

Low

Initially set the trace level to show socket functions only.

Send Timeout

The send timeout in seconds when clients and servers are opened.

Receive Timeout

The receive timeout in seconds when clients and servers are opened.

Show viewable trace line numbers

Precede each line in the viewable trace with a line number.

Show log file trace line numbers

Precede each line in the log file trace with a line number.

Total of previously used servers to remember

The total of successfully selected servers that will be available in the Name / IP Address selection drop down lists for all functions that select a server. Set this parameter to 0 to remove all default servers.

Sort the previously used servers

By default, previously used servers are shown in the order they have been added. This parameter will alphabetically sort them in the server selection lists.

Maximum simultaneous connections a generic server will maintain

The maximum number of connections a generic server will accept. Any connection attempts beyond this parameter will be refused.

Use localhost

The method that the localhost / loopback address will be used.

Never use localhost

Never bind to the localhost address.

Only use localhost as a last resort

Bind to the localhost address only if another bindable address is not available.

Use localhost exclusively

Only bind to the localhost address.

Force a socket close command after a socket shutdown command

Automatically close a socket after a shutdown is selected. Otherwise the socket will wait for an EOF from the peer before closing.

Force a socket shutdown command before a socket close command

Automatically send a shutdown before a close to inform the peer that the socket is closing.

Forced Shutdown Type

The type of shutdown that will be sent when Force a socket shutdown command before a socket close command is selected.

Send

Shutdown send / write.

Receive

Shutdown receive / read.

Both

Shutdown both send / write and receive / read.

Bridge Tracing

Set which details show in a bridge trace.

Trace send details only

Send traces will show details. Receive traces will show only headers.

Trace receive details only

Receive traces will show details. Send traces will show only headers.

Trace both send and receive details

Both send and receive traces will show details.

Show script instructions

Show script instructions when a script record and a script playback are started.

Default script directory

The default directory to save and load script files.

| ... |

Select the default script directory.

Thread sleep times in milliseconds may be set to optimize the application speed and processor(s) usage for your particular computer. It will commonly be true that lowering sleep times will speed up the application but also increase processor(s) usage. You may also optimize for the particular connection you are monitoring. For example, if no out of band messages are expected, you could lower the Receive thread time while increasing the Out of band receive thread time. Optimizing can be very handy, especially if the application is running on a busy server, but predicting thread behavior is like predicting the weather. I recommend making changes in small increments and monitoring your processor(s) usage while pressing the Apply button. Each threads purpose and the point when they begin and end will be explained below.

Select Thread

The select thread checks for incoming connection requests and received messages. It starts at the point when a client connects or a server starts listening. It ends at the point when the client closes or the listening server closes.

Active select thread

The sleep time when the select thread is actively checking for connection requests and received messages.

Passive select thread

The sleep time when a connection request or a received message is being processed. The select thread is checking to see when the operation is complete.

Receive Threads

The receive threads handle signals from the select thread that a connection has been requested, a message has been received, and EOF messages indicating the peer is shutting down. They start at the point when a client connects or a server starts listening. They end at the point when the client closes or the listening server closes.

Receive thread

The receive thread handles connection requests, received messages,and EOF messages. It handles the message buffering, receive errors, and signaling when a trace should occur.

Out of band receive thread

The select thread detects exceptions which indicate out of band messages. These messages are expedited so they are signaled to the out of band receive thread.

Socket Send Thread

The socket send thread handles the socket mechanics of sending a message. It starts at the point when a client connects or a server starts listening. It ends at the point when the client closes or the listening server closes.

Socket send thread

The socket send thread handles sending the socket buffer from the text or file of the message to be sent. If the message is larger than the socket buffer, the send thread will continue refilling the socket buffer until the entire message has been sent.

Send Threads

The send threads start at the point when a message is sent. They end at the point when the message send is complete.

Send text thread

The send text thread maintains the buffer for text messages and fills the socket send buffer.

Active send text thread

The sleep time while the text buffer is transferred to the socket send buffer.

Passive send text thread

The sleep time while the send text thread is waiting for the socket send thread to complete a send.

Send file thread

The send file thread maintains the file handle for file contents to be sent and fills the socket send buffer.

Active send file thread

The sleep time while the file contents is transferred to the socket send buffer.

Passive send file thread

The sleep time while the send file thread is waiting for the socket send thread to complete a send.

Bridge Thread

The bridge thread handles handing off a bridge socket receive to the companion bridge socket for sending. It starts at the point when the bridge client connects and the bridge server starts listening. It ends at the point when the bridge client and server close.

Active bridge thread

The sleep time while the bridge thread is checking for a receive.

Passive bridge thread

The sleep time while the bridge thread is waiting for a companion send to complete.

Multiple Server Select Thread

The multiple server select thread starts when all the multiple servers are listening. It ends when all the multiple servers have closed.

Multiple server select thread

The multiple server select thread is the only thread (besides the user interface) running during a multiple server session. It handles connection requests, querying the peer for it's IP address and port, and closing the connection.

 

Defaults

Change all the application preferences to the defaults for your operating system.

Clean

Show and remove any abandoned application temporary files.

Apply

Commit the application preferences without closing the preferences dialog.

Cancel

Close the preferences dialog without committing any changes.

OK

Commit the application preferences and close the preferences dialog.