Kbase 20165: The TCP/IP Broker on the AS/400
Autor |
  Progress Software Corporation - Progress |
Acesso |
  Público |
Publicação |
  10/15/2008 |
|
Status: Verified
GOAL:
How does the Progress/400 TCP/IP broker work with Progress/400 DataServer Client.
FACT(s) (Environment):
Progress/400 DataServer
FIX:
The TCP/IP broker on the AS/400 is a very small program that only requires resources when it is performing the server startup process. Once the connection has been made, the broker sits in a wait state until the next request is received. Most of the time, the broker is in a wait state.
The major function of the broker is illustrated by the following steps it takes. The broker:
1) Receives a connection request from the client.
2) Validates the user and dictionary library.
3) Opens a port on the AS/400 for use by the server.
4) Submits the server job.
5) Informs the client of the port the server is using.
6) Starts the cycle over again.
In terms of use of processing power, the most expensive step in the process is submitting the server job to be executed with "SBMJOB". For this reason there is no need to limit the number of TCP/IP brokers.
The use of multiple brokers increases the number of connections that can be performed concurrently. In addition, by increasing the number of running brokers, each client is connected quicker to a server because there is more than one connection made at a time.
With one broker running, only one connection request can be handled at one time. All other connection requests are queued by TCP/IP until the broker has the time to process them. If the connection request times out because of this broker bottleneck, a 778 error can result on the client side:
Error <read/writing> socket, ret=<n>, errno=<n>. (778)