3.3.18 Operands related to communication processing

60) pd_service_port = port-number-for-high-speed-connection-from-client
[Figure]<unsigned integer>((5001-65535))
Specifies the port number for high-speed connection. This operand is specified when the high-speed connection facility is used. The following rules apply to the port number that is specified:
  • The port number must be unique within the host
  • A port number that is different from the port number specified in pd_name_port must be specified
For details about the high-speed connection facility, see the HiRDB Version 8 Installation and Design Guide.
Operation method
The port number specified with this operand is specified in the client environment definition (PDSERVICEPORT operand) of the client to which the high-speed connection facility will be applied.
If the mutual system switchover facility is used, a different port number must be specified for each HiRDB instance.
If multiple HiRDB systems or multiple HiRDB units will be started on the same machine, a different port number must be specified for each HiRDB instance.
If a firewall is installed in the HiRDB server, you need to fix the port number for client connection. By specifying this operand, you can fix the port number for client connection. The following client connection method is used in this case:
  • If a firewall and NAT are installed in the HiRDB server, use a setting that uses the high-speed connection facility.
  • Specify this operand if only a firewall is installed in the HiRDB server. There is no need to specify the client environment definition (PDSERVICEPORT operand).
For details about how to set the HiRDB environment when a firewall or NAT is installed in the HiRDB server, see the HiRDB Version 8 Installation and Design Guide.
Notes
  • If the port number specified in the pd_name_port operand is specified in pd_service_port, this specification is invalid, and the high-speed connection facility will not be used.
  • If the pd_name_port operand is omitted, 20000 must not be specified in pd_service_port.
  • Specify a number that is not within the range of port numbers assigned automatically by the OS. The range of port numbers assigned automatically by the OS depends on the OS.
  • If a port number is specified that is within the range of port numbers assigned automatically by the OS, that number might be being used by another program. If so, the HiRDB server will not start.
  • If a mutual system switchover configuration is used, specify this operand in the unit control information definition. Specify a different port number in the unit control information definition for each unit. If the same port numbers are specified, system switchover will fail in one of the units during a switching attempt.
  • If the high-speed connection facility is used to concurrently issue a number of connection requests that exceeds the value specified for the pd_max_users operand, a shortage occurs in the number of active front-end servers and single servers for extracting connection requests from the message queue. Consequently, connection requests cannot be extracted from the message queue, and the message queue monitoring facility may stop the unit. Therefore, make sure that the number of concurrent connection requests generated does not exceed the value specified for the pd_max_users operand. For details about the message queue monitoring facility, see the HiRDB Version 8 System Operation Guide.
61) pd_change_clt_ipaddr = 0 | 1
Specifies the network to be used by the HiRDB server to communicate with HiRDB clients. Normally, you need not specify this operand.
0:
Communication from the HiRDB server to HiRDB clients uses the network in which the IP address specified in the PDCLTRCVADDR operand of the client environment definition is located. If the PDCLTRCVADDR operand is omitted, the IP address of the standard host is assumed.
1:
For communication from the HiRDB server to HiRDB clients, the network used for communication from HiRDB clients to the HiRDB server is used.
62) pd_registered_port ="port-number-reservation-range" [,"port-number-reservation-range"]...
[Figure]<character string>
When the HiRDB reserved port facility is used, this operand specifies ranges of port numbers to be used for communication by HiRDB.
HiRDB reserved port facility is valid only for server-to-server communication. HiRDB reserved port facility need not be used if the number of ports to be used is small.
Operand specification method
This example provides the following 35,000 port numbers: 6000 to 8999, 12500 to 29999, and 30500 to 44999:
set pd_registered_port = "6000:8999","12500:29999","30500:44999"
Advantages
The port numbers to be used for communication between HiRDB servers are assigned automatically by the OS. If the communication volume increases significantly, a shortage of port numbers may cause an interruption of processing or may adversely affect the communication processing by other programs. Using this operand, specify a range of port numbers to be used exclusively by HiRDB can prevent such problems.
Specification guidelines
The range of port numbers that can be specified is from 5001 through 49151.
For the number of ports used by HiRDB, see the HiRDB Version 8 Installation and Design Guide.
Specification value tuning method
As a guideline, the value obtained from the following formula is the total number of ports that will be needed:
a + b + 100
a: Number of HiRDB reserved ports that are being used (# OF REGISTERED PORTS)
b: Number of ports being used that were assigned automatically by the OS because all HiRDB reserved ports were in use (# OF ASSIGNED PORTS)
These values can be determined from the statistical information related to system operation obtained by executing the statistics analysis utility.
Operand rules
  • Up to 10 ranges of port numbers can be specified.
  • If more than one range is specified, ensure that there is no overlap in the port numbers included in the various ranges.
  • An ending port number must be greater than the paired starting port number.
Notes
  • Make sure that the port number reservation ranges specified in this operand do not overlap the port numbers listed below; if there is any overlap, a problem such as a HiRDB startup error may occur:
    [Figure]Port numbers specified by the pd_name_port operand
    [Figure]Port numbers specified by the pd_service_port operand
    [Figure]Port numbers specified by the -p option of the pdunit operand
    [Figure]Port numbers registered in %windir%\system32\drivers\etc\services
    [Figure] The port number specified by the PDCLTRCVPORT operand in the HiRDB client environment definition (provided that the HiRDB exists on the same server machine)
    [Figure]Port numbers being used by other programs
    [Figure]Port numbers assigned automatically by the OS
  • If multiple HiRDB servers reside on the same server machine (for example, in a multi-HiRDB structure or when the system switchover facility is used), ensure that the port number reservation ranges of the individual HiRDB servers do not overlap.
  • In the case of a port that does not support the HiRDB reserved port facility, specification of its port number in this operand is ignored. For the scope of the HiRDB reserved port facility, see the pd_registered_port_level operand.
63) pd_registered_port_check = Y | N | C | W
Specifies whether or not checking is to be performed for overlapping port numbers in the ranges of port numbers specified in the pd_registered_port operand and in the port numbers registered in %windir%\system32\drivers\etc\services (definition location in a DNS environment).
Y:
Check for overlap. If an overlap is found, the KFPS00348-E message is output and HiRDB activation is canceled.
N:
Do not check for overlap.
C:
Check for overlap. The HiRDB reserved port facility is not applied to any overlapping port number.
W:
Check for overlap. If an overlap is found, the KFPS00354-W message is output. The HiRDB reserved port facility is not applied to any overlapping port number.
Condition
The pd_registered_port operand must be specified.
Specification guidelines
  • If an overlap in port numbers is detected, HiRDB communication may be affected adversely, resulting for example in the receipt of wrong messages or message send failures.
  • If Y, C, or W is specified, process server activation in a DNS environment may slow down.
Remarks
When HiRDB starts, it checks for overlap between the port numbers included in the pd_registered_port operand's range specification and the port numbers specified in the operands listed below. If an overlapping port number is detected, HiRDB displays the KFPS00348-E message and cancels the startup processing.
  • pd_name_port operand
  • -p option of the pdunit operand
  • pd_service_port operand
Note that overlap checking is not performed on port numbers specified in any other operands.
64) pd_registered_port_level = 0 | 1
Specifies the target range for the HiRDB reserved port facility.
Condition
The pd_registered_port operand must be specified.
Specification guidelines
The following shows the target range depending on the value of this operand (0 or 1):
Port numbers used by HiRDBValue of pd_registered_port_level
01
Ports used by HiRDB serverSend port number for server-to-server communicationYY
Receive port number for server-to-server communicationYY
Port number specified in pd_name_port, pd_service_port, or pdunit -p operandNN
Service port number for communication portNN
Port number used for lock controlNN
Send port number for commandNN
Receive port number for commandNN
Send port number for clientNY
Receive port number for clientYY
Ports used by HiRDB clientSend port numberNN
Receive port numberNN
Legend:
Y: Subject to the HiRDB reserved port facility. A port number specified in the pd_registered_port operand is used.
N: Not subject to the HiRDB reserved port facility.
65) pd_ipc_send_retrycount = process-to-process-send-retries-count
[Figure]<unsigned integer>((1-32767)) (Times)
Specifies the number of times process-to-process communication can be attempted. This operand is related to the pd_ipc_send_retrysleeptime operand.
Examples
  • pd_ipc_send_retrycount = 500
  • pd_ipc_send_retrysleeptime = 2
When the operands are specified in this way, send is attempted up to 500 times and a 2-second sleep occurs between attempts.
Specification guidelines
  • Normally, this operand need not be specified.
  • Specifying too large a value for this operand increases the CPU lock rate.
66) pd_ipc_send_retrysleeptime = process-to-process-send-retry-sleep-time
[Figure]<unsigned integer>((0-60)) (seconds)
Specifies the sleep time between process-to-process send retries.
This operand is related to the pd_ipc_send_retrycount operand.
Examples
  • pd_ipc_send_retrycount = 500
  • pd_ipc_send_retrysleeptime = 2
When the operands are specified in this way, send is attempted up to 500 times and a 2-second sleep occurs between attempts.
Specification guidelines
  • Normally, this operand need not be specified.
  • Specifying too large a value for this operand increases communication completion time.
67) pd_ipc_send_count = server-to-server-send-retries-count
[Figure]<unsigned integer>((1-32767))
Specifies the number of times a server-to-server send can be performed before the send is completed. A send occurs for up to 5 seconds at each retry. With the default value, send will be performed for up to 60 [Figure] 5 seconds = 300 seconds.
Specification guideline
Normally, this operand need not be specified. If transmission timeouts occur frequently, increase this operand's value.
68) pd_ipc_recv_count = server-to-server-receive-retries-count
[Figure]<unsigned integer>((1-32767))
Specifies the number of times a server-to-server receive can be performed before receive is completed. Receive occurs for up to 5 seconds at each retry. With the default value, receive is performed for up to 120 [Figure] 5 seconds = 10 minutes.
Specification guideline
Normally, this operand need not be specified.
69) pd_ipc_inet_bufsize = send-receive-buffer-size-for-server-unit-to-unit-communication
[Figure]<unsigned integer>((0-262144)) (bytes)
Specifies as a multiple of 4096 a size for the send/receive buffer to be used for unit-to-unit communication within a server (TCP NET domain).
Specification guideline
Normally, this operand need not be specified.
Notes
  • If 0 is specified, the value set by the OS is used.
  • The maximum TCP buffer size depends on the OS.
  • The specified buffer size may not be valid. In this case, the value set by Windows is used.
70) pd_tcp_inet_bufsize = send-receive-buffer-size-for-communication-with-HiRDB-client-outside-host-where-HiRDB-server-reside
[Figure]<unsigned integer>((0-262144)) (bytes)
Specifies as a multiple of 4096 a maximum size for the send/receive buffer to be used for communication with a HiRDB client connected from outside the host where the HiRDB server resides (TCP INET domain).
Specification guidelines
Normally, this operand need not be specified. Specify this operand if one of the following occurs:
  • Resending of the data to be sent/received between a HiRDB server and a HiRDB client is observed (specifying this operand can suppress resending)
  • The data arrival speed is slower than the data read speed on the receiving side (specifying this operand can prevent the delay caused by waiting for data arrival even when the data volume increases)
Specify for this operand the same value as the buffer size to be used for communication.
Notes
  • If 0 is specified, the value set by the OS is used.
  • The maximum TCP buffer size depends on the OS.
  • The specified buffer size may not be valid. In this case, the value set by Windows is used.