CORBA 2.3.3 Administration Guide (NonStop CORBA 2.3.7+)
out the IP process name, which is the last entry on the line beginning with TCPIP Info SUBNET." In the example above, the
process name is \ARNOLD.$ZTC0.
Use the TCP/IP process name in the following command, at an OSS window, to verify that the CORBA server is listening on
the correct port number:
/home/ecrm/stack: gtacl -c "scf status process \$ZTC0"
gtacl[9]: warning: unable to propagate all environment variables
SCF - T9082G02 - (26JUN00) (20MAR00) - 07/11/0000 10:36:36 System \ARNOLD
Copyright Compaq Computer Corporation 1986 - 1999
TCPIP Status PROCESS \ARNOLD.$ZTC0
Status: STARTED
PPID............ ( 0,329) BPID................... ( 1,317)
ProtoState Laddr Lport Faddr Fport SendQ RecvQ
TCP ESTAB 172.17.202.44 telnet 155.186.75.77 1163 0 0
TCP ESTAB 172.17.202.44 telnet 155.186.75.21 4251 0 0
TCP ESTAB 172.17.202.44 telnet 155.186.75.21 4533 52 0
TCP ESTAB 172.17.202.44 ftp 155.186.75.77 1246 0 0
TCP ESTAB 172.17.202.44 telnet 155.186.75.21 3639 0 0
TCP ESTAB 172.17.202.44 telnet 155.186.75.77 2339 0 0
TCP LISTEN 172.17.202.44 1033 0.0.0.0 * 0 0
TCP LISTEN 172.17.202.44 4000 0.0.0.0 * 0 0
TCP LISTEN 172.17.202.44 2240 0.0.0.0 * 0 0
TCP LISTEN 172.17.202.44 4001 0.0.0.0 * 0 0
TCP LISTEN 0.0.0.0 telnet 0.0.0.0 * 0 0
TCP LISTEN 0.0.0.0 ftp 0.0.0.0 * 0 0
TCP LISTEN 0.0.0.0 finger 0.0.0.0 * 0 0
TCP LISTEN 0.0.0.0 echo 0.0.0.0 * 0 0
TCP LISTEN 0.0.0.0 1089 0.0.0.0 * 0 0
UDP 0.0.0.0 69 0.0.0.0 * 0 0
Total Errors = 0 Total Warnings = 0
One of the example IORs displayed in Cannot Run Client showed that the server was configured to listen on port 2240. The
scf status process \$ZTC0 command output shows that the server is, indeed, running and listening for client
connections on that port.
If the scf status process \$ZTC0 command does not show the port number that the server was configured to listen
on, then see NonStop CORBA Listening on the Wrong Socket.
Explanation: The TCP configuration is the simplest configuration to use. Even if it is not the final configuration that is used in
production, it allows the user to quickly test a CORBA server. However, there are some problems with it.
The first is that the port number must be a unique port number, not used by any other process. When the server starts
with the TCP configuration, it will open a socket and wait for connections on that port. The user needs to verify that
each TCP server is assigned a new, unique port number.
●
The second problem is the use of preallocated port numbers can create object reference collision. That means that if a
stack server is started with a TCP configuration, then a second stack server cannot be executed with the same TCP
configuration. That is because the second server will use the same IP address and port number as the first server;
therefore, all the clients will connect only to the second server, and the first servers object reference will become
invalid. That is, if a client will try to use the object reference of the first server, it will fail with the
org.omg.CORBA.COMM_FAILURE error message.
●
To ensure that each TCP server uses a unique port number, configure the entity tcp_server@ORB as follows: