gtpc1m1x | Transmission Control Protocol/Internet Protocol |
Your network administrator must assign at least one IP address to each TPF host that connects to an IP network. If a TPF host connects to only one IP network, only one IP address is needed for the TPF host. However, you can assign multiple IP addresses to a TPF host even if the TPF host connects to only one IP network.
In a loosely coupled TPF system, each TPF processor must have unique IP addresses so that packets are routed to the correct TPF processor. However, movable VIPAs can be defined on every processor but a given VIPA can only be active on one processor at a time.
If a TPF host connects to more than one physically separate IP network, the TPF host will have a different IP address for its connections to the different networks. For example, if a TPF host connects to three physically separate IP networks, that TPF host will have at least three IP addresses defined.
The first local IP address that you define to a TPF host becomes the default local IP address for that host. The default local IP address is used when a socket client application in the TPF system sends data and has not informed the TPF system which local IP address to use. For example, a TCP client application running in the TPF system issues a connect call without issuing a bind call first. When this occurs, the TPF system must select a local IP address to use. The IPRT is searched to find a local IP address to use that is based on the destination. If an entry for the destination does not exist, the default local IP address is used.
If a TPF host has more than one local IP address defined and you have socket client applications running in your TPF system, any client application that needs to use a local IP address other than the default must issue a bind call to bind that socket to the desired local IP address or to define entries in the IPRT. Client applications that want to use the default local IP address do not need to issue the bind call.
For information about local IP addresses, see Selecting the Local IP Address.
To define the default local IP address, specify the DEFAULT parameter on the ZTTCP DEFINE command or specify the ZOSAE command with the DEFINE, MODIFY, or ADD parameter. These define the local IP address to the TPF system. You can change which IP address is the default by entering the ZTTCP CHANGE command and specifying the DEFIP parameter.
When a TCP connection is started, part of the handshake process determines the maximum packet size (MPS) that can be sent on the socket. Typically, when the client sends the connection request, the suggested MPS sent is the smaller of the following values:
When the server receives the connection, the MPS value that will be used by the socket is the smallest of the following values:
Assume the client and server nodes both support 4-KB buffer sizes and the networks to which they are directly connected support 4-KB packets. However, an intermediate network along this connection supports only 1-KB packets. If the TCP handshake process does not account for the intermediate network, the MPS value for the socket will be 4 KB. Every 4-KB packet sent by the client to the server will be fragmented by the intermediate network into four 1-KB packets and the server node will have to put the pieces back together before delivering the data to the application. Because this is an expensive process that can impact throughput and network performance, IP fragmentation should be avoided whenever possible.
When you define a local IP address to your TPF system, you can define the upper limit for the MPS value used by TCP connections connected to a local IP address. When you define an OSA-Express connection, you can define the upper limit for the maximum transmission unit (MTU) value used by all IP addresses defined to that OSA-Express connection. In the previous example, because the intermediate network supports only 1-KB packets, enter the ZOSAE command with the DEFINE parameter specified and a value of 1024 specified for the MTU parameter; or enter the ZTTCP DEFINE command, which defines the local IP address. You can change the MTU parameter value by entering the ZOSAE command with the MODIFY parameter specified, or you can enter the ZTTCP CHANGE command and specify the MPS parameter. This change does not affect existing sockets; it only applies to subsequently created sockets.