Specifying the Callback Connection

When a TotalView server process is launched on a remote host, it connects back to the TotalView client process using a TCP/IP socket. The TotalView client creates a listening socket by finding the first available port starting at the value specified by the following state variables: 

  • TV::port_base: Specifies the starting value for the port for tvdsvr callback connections when a TotalView server process is launched on a remote host. The default value is 4142.

  • TV::split_port_base: Specifies the starting value port for tvdsvr callback connections when TotalView uses bulk server launch. The default value is 16384.

If your environment requires a non-default port base (starting from values other than the defaults listed above), it must be set before establishing a remote server connection. This is because once a remote TotalView server is launched, the assigned port is bound to the listener for the network interface local to the client, and any subsequent changes to the port base will not affect active connections or established listener ports.

Setting the port base by using the TotalView command option or adding a CLI dset command in your .tvdrc file will ensure that the port base is set before remote connections are attempted.

For example, in an environment that blocks TCP/IP socket connections with port numbers less than 30000, you can set the TV::port_base variable in one of the following ways: 

  • Add the line catch {dset TV::port_base 30000} to a .tvdrc file. The "catch" is necessary for older versions of TotalView that do not support setting the port base.

  • Use the -port_base command-line option (totalview -port_base 30000 ...).

Related Topics

TV::port_base

TV::split_port_base

-port_base

-split_port_base