TCP/IP (Parallel Library) Configuration and Management Manual
Introduction
HP NonStop TCP/IP (Parallel Library) Configuration and Management Manual—522271-006
2-6
Scalability
UDP Port Considerations
If a process maintains a context for its messages, the process should not use round-
robin filtering on shared UDP ports.
The processes sharing the UDP port should not maintain a context for previous
messages because a sequence of messages might not be delivered to the same
socket if the port is shared. In fact, with round-robin enabled, a sequence of messages
is distributed to each of the port-sharing sockets, in turn.
If, for example, an application assumes that all packets from a given source will be
directed to it (the application process), the application must assume that it is the only
instance of itself on that UDP port. If another instance of itself is sharing the UDP port,
packets from the same source could go to two different instances of the application
process resulting in one of the application processes missing some of the packets
destined for it.
To run multiple instances in parallel for applications which must, in the course of
normal operation, maintain a context across multiple received messages, you can
circumvent the problem introduced by round-robin filtering by changing the application
to use subnet-level binding. (See Subnet-Level Binding: How to Isolate Subnets in a
Single-IP Environment on page 2-4). Changing the application to use subnet-level
binding allows one instance of the application for each subnet to be supported by
Parallel Library TCP/IP, while still sharing the same port number. Parallel Library
TCP/IP distributes incoming packets that came in from one subnet only to the
application bound to that subnet. Thus, with subnet-level binding, the packets received
by the application retain their contexts. Subnet-level binding circumvents the problem
introduced by round-robin distribution of incoming packets among sockets sharing the
same port.
Scalability
Having a TCP/IP stack in each processor tied together by a single IP address provides
parallelism and thus, scalability; incoming connection requests directed to a specific
LAN adapter can be distributed to one or more processors within a cluster. (See
Introduction and Definitions on page 3-1 for a definition of scalable.) Parallel Library
TCP/IP performs direct distribution of data flows to the processors containing the
sockets that applications use. By doing so, Parallel Library TCP/IP allows applications
to scale in parallel yet preserve the external image of a single IP host. (Section 3,
Configuring Parallel Library TCP/IP for Complex and Heavy-Use Environments,
provides examples that demonstrate this scalability.)
Transparency
Existing TCP/IP applications using the D30 and above socket library run transparently
on Parallel Library TCP/IP without the need to be recompiled.