The TclServer application makes it trivial for users to create and use application specific servers. When doing so, however one problem that crops up is which service port should be used by the service when it listens for connections. The service port used must be unique across all servers within a specific system.
The NSCL PortManager application attempts to solve this by managing a block of ports on behalf of servers running in a specific system and advertising the application and user names associated with ports that it has allocated. By interacting with the port manager, servers can be assured of getting a unique port. By interacting with the port manager, clients can determine the likely port on which a server they are interested in is listening.
The Port manager conists of the following components, which are described in this reference material:
The port manager daemon manages a block of ports for the system in which it is run. The reference material for the application describes the switches that control the port manager's operation, the log/status files it creates and the protocol that should be used to interact with the daemon.
A C++ class library that allows C++ software to interact with the port manager either as a server or as a client.
The portAllocator package, which allows Tcl scripts to interact with a port manager either as a server or a client.