CORBA 2.3.7 Programmer's Guide for C++

ILSD, and BSD process runs as a server pool consisting of one process listening at an assigned TCP/IP
port; thus there is a one-to-one ratio between communications processes and ports. When you configure
these processes with Parallel Library TCP/IP, up to sixteen Comm Server, LSD, ILSD, or BSD processes
running in a server pool can share the same port. When configured this way, the server pool appears as a
single IP host to the outside world.
A round-robin filter distributes the incoming connections among the communications processes in the
pool. Because Parallel Library TCP/IP does the load balancing, when you use it to configure Comm
Server processes the LSD process has less work to do than it would if you used separately configured
logical Comm Server processes.
Use of Parallel Library TCP/IP also eliminates a message-system hop on each request. When this feature
is configured, TCP data-path functions ordinarily performed by a separate TCP/IP process are instead
done by the user process, which references the Parallel Library TCP/IP shared run-time library (SRL).
For further information about configuring Parallel Library TCP/IP with NonStop CORBA, refer to the
NonStop CORBA 2.3.7 Administration Guide.
Increasing the Number of Comm Server Processes
The Comm Server process serves as a network resource concentrator in large-scale systems by managing
communication between network clients and NonStop CORBA servers, thus reducing the demand for
TCP/IP ports and connections. A single Comm Server process can handle many network clients
simultaneously. Comm Servers thus allow a NonStop CORBA server to be scalable relative to remote
clients.
Using multiple Comm Server processes spreads the request workload for stateless objects over multiple
processors, allowing the application to handle larger volumes of traffic.
You can increase the number of Comm Server processes in two ways:
By using Parallel Library TCP/IP
By configuring multiple logical Comm Server processes
When you use Parallel Library TCP/IP, as described further under Using Parallel Library TCP/IP, you
can scale each logical Comm Server process up to sixteen processes, all listening at the same TCP/IP
port. Load balancing among these processes is done by Parallel Library TCP/IP by means of a
round-robin algorithm.
When you configure multiple logical Comm Server processes, each Comm Server process listens at a
different TCP/IP port. Each Comm Server's address is independent of the others' addresses; multiple
Comm Server processes can service the same IP address or subnet.
Load balancing among the logical Comm Server processes (except for those that are preconfigured for
particular clients) is done by the LSD process. This configuration provides scalability, but increases the
time spent by the LSD process in distributing requests. If the Comm Server processes are configured to
use Parallel Library TCP/IP, the LSD uses a round-robin algorithm; otherwise, it uses a least-busy
algorithm.