# US 2002/0178265 A1 · Methods systems and computer program products for source address selection

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2002/0178265 A1
- Document ID: US20020178265A1
- Status: Published application
- Kind: A1
- Application number: 09/862,642
- Filed: 2001-05-22
- Published: 2002-11-28
- Earliest claimed: 2001-05-22
- Assignees: International Business Machines Corporation
- Inventors: John Andrew Aiken JR.; Wesley McMillan Devine; David Anthony Herr
- Web page: https://patentgrep.com/patent/US20020178265A1

## CPC

- H04L 61/00: Network arrangements, protocols or services for addressing or naming
- H04L 61/35: {involving non-standard use of addresses for implementing network functionalities, e.g. coding subscription information within the address or functional addressing, i.e. assigning an address to a function}
- H04L 61/50: Address allocation
- H04L 67/1001: for accessing one among a plurality of replicated servers
- H04L 67/1014: based on the content of a request
- H04L 2101/663: Transport layer addresses, e.g. aspects of transmission control protocol [TCP] or user datagram protocol [UDP] ports
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

Methods, systems and computer program products provide for establishing a connection originated by an application executing on a data processing system in a cluster of data processing systems. A dynamic network address is associated with the application at the data processing system on which the application is executing. If a request is received for the data processing system to originate a connection that is associated with the application, the connection is established utilizing the dynamic network address associated with the application as a source address for the connection.

## Claims

### Claim 1

A method of establishing a connection originated by an application executing on a data processing system in a cluster of data processing systems, the method comprising:
associating a dynamic network address with the application at the data processing system on which the application is executing;
determining if a received request for the data processing system to originate a connection is associated with the application; and
establishing the connection utilizing the associated dynamic network address as a source address for the connection if the request is associated with the application.

### Claim 2 (depends on 1)

The method of claim 1, further comprising:
determining if the application has specified a network address for the requested connection; and
utilizing the specified network address to establish the connection if the application has specified a network address; and
wherein the step of establishing the connection further comprises selectively utilizing the associated dynamic network address as the source address for the connection if the application has not specified a network address for the requested connection.

### Claim 3 (depends on 2)

The method of claim 2, wherein the step of determining if the application has specified a network address for the requested connection comprises determining if a socket for the connection has been bound to a network address.

### Claim 4 (depends on 1)

The method of claim 1, (wherein the application comprises one of a plurality of instances of an application executing on the data processing system in the cluster of data processing systems;
wherein the step of associating a dynamic network address with the application at the data processing system on which the application is executing comprises associating a dynamic network address with the one of the plurality of instances of the application at the data processing system on which the one of the plurality of instances of the application is executing; and
wherein the step of determining if a request for the data processing system to originate a connection is associated with the application comprises determining if a request for the data processing system to originate a connection is associated with the one of the plurality of instances of the application.

### Claim 5

A method of selecting a source address for a connection originated by an application executing on a data processing system in a cluster of data processing systems, comprising:
associating a dynamic virtual IP address (DVIPA) with the application at a communication protocol stack of the data processing system in the cluster of data processing systems so as to utilize the DVIPA as the source address for the connection originated by the application.

### Claim 6 (depends on 5)

The method of claim 5, wherein the step of associating a DVIPA with the application comprises:
receiving a connection request for a connection at the communication protocol stack;
determining if the connection request received at the communication protocol stack is associated with the application; and
selecting the DVIPA as the source address for the connection if the connection request is associated with the application.

### Claim 7 (depends on 6)

The method of claim 6, further comprising:
determining if the application is bound to an IP address; and
selecting the IP address to which the application is bound as the source address if the application is bound to an IP address; and
wherein the step of selecting the DVIPA comprises selecting the DVIPA as the source address for the connection if the connection request is associated with the application and the application is not bound to an IP address.

### Claim 8 (depends on 7)

The method of claim 7, further comprising:
establishing at the communication protocol stack a predefined association of the DVIPA and the application;
wherein the step of determining if the connection request received at the communication protocol stack is associated with the application comprises determining if the connection request is from the application; and
wherein the step of selecting the DVIPA as the source address for the connection if the connection request is associated with the application comprises selecting the DVIPA as the source address for the connection if the connection request is from the application and a predefined association of the DVIPA and the application has been established.

### Claim 9 (depends on 8)

The method of claim 8, wherein the step of establishing at the communication protocol stack a predefined association of the DVIPA and the application comprises processing at the communication protocol stack a configuration statement which specifies the DVIPA and an application with which the DVIPA is associated.

### Claim 10 (depends on 8)

The method of claim 8, further comprising:
determining if the DVIPA is configured for the communication protocol stack; and
generating an error message if the DVIPA is not configured for the communication protocol stack.

### Claim 11 (depends on 8)

The method of claim 8, further comprising:
determining if the DVIPA is active on the communication protocol stack;
activating the DVIPA if the DVIPA is not active and if the DVIPA is in a range of DVIPAs specified for the communication protocol stack.

### Claim 12 (depends on 11)

The method of claim 11, further comprising generating an error message if the DVIPA is not active and is not in a range of DVIPAs specified for the communication protocol stack.

### Claim 13 (depends on 6)

The method of claim 6, wherein the application comprises an instance of a plurality of instances of an application executing on the data processing system.

### Claim 14 (depends on 5)

The method of claim 5, wherein the cluster of data processing systems comprises an OS/390 Sysplex.

### Claim 15

A system for establishing a connection between an application and a client, the system comprising:
a cluster of data processing systems;
the application executing on a data processing system in the cluster of data processing systems; and
a communication protocol stack on the data processing system in the cluster of data processing systems, the communication protocol stack being configured to associate a dynamic virtual Internet protocol address (DVIPA) with the application so that the DVIPA is utilized as a source address for a connection request from the application.

### Claim 16 (depends on 15)

The system of claim 15, wherein the communication protocol stack is further configured determine if the application is bound to an IP address, select the IP address to which the application is bound as the source address if the application is bound to an IP address and select the DVIPA as the source address for the connection if the connection request is from the application and the application is not bound to an IP address.

### Claim 17 (depends on 15)

The system of claim 15, wherein the communication protocol stack is further configured to establish a predefined association of the DVIPA and the application and select the DVIPA as the source address for the connection if the connection request is from the application and a predefined association of the DVIPA and the application has been established.

### Claim 18 (depends on 17)

The system of claim 17, wherein the communication protocol stack is further configured to establish the predefined association of the DVIPA and the application by processing a configuration statement which specifies the DVIPA and an application with which the DVIPA is associated.

### Claim 19 (depends on 17)

The system of claim 17, wherein the communication protocol stack is further configured to determine if the DVIPA is configured for the communication protocol stack and generate an error message if the DVIPA is not configured for the communication protocol stack.

### Claim 20 (depends on 17)

The system of claim 17, wherein the communication protocol stack is further configured to determine if the DVIPA is active on the communication protocol stack and activate the DVIPA if the DVIPA is not active and if the DVIPA is in a range of DVIPAs specified for the communication protocol stack.

### Claim 21 (depends on 20)

The system of claim 20, wherein the communication protocol stack is further configured to generate an error message if the DVIPA is not active and is not in a range of DVIPAs specified for the communication protocol stack.

### Claim 22 (depends on 15)

The system of claim 15, wherein the application comprises an instance of a plurality of instances of an application executing on the data processing system.

### Claim 23 (depends on 15)

The system of claim 15, wherein the cluster of data processing systems comprises an OS/390 Sysplex.

### Claim 24

A system for establishing a connection originated by an application executing on a data processing system in a cluster of data processing systems, comprising:
means for associating a dynamic network address with the application at the data processing system on which the application is executing;
means for determining if a received request for the data processing system to originate a connection is associated with the application; and
means for establishing the connection utilizing the associated dynamic network address as a source address for the connection if the request is associated with the application.

### Claim 25

A system for selecting a source address for a connection originated by an application executing on a data processing system in a cluster of data processing systems, comprising:
a communication protocol stack executing on the data processing system;
means for associating a dynamic virtual IP address (DVIPA) with the application at the communication protocol stack of the data processing system in the cluster of data processing systems so as to utilize the DVIPA as the source address for the connection originated by the application.

### Claim 26

A computer program product for establishing a connection originated by an application executing on a data processing system in a cluster of data processing systems, comprising:
a computer readable media having computer readable program code embodied therein, the computer readable program code comprising:
computer readable program code which associates a dynamic network address with the application at the data processing system on which the application is executing;
computer readable program code which determines if a received request for the data processing system to originate a connection is associated with the application; and
computer readable program code which establishes the connection utilizing the associated dynamic network address as a source address for the connection if the request is associated with the application.

### Claim 27

A computer program product for selecting a source address for a connection originated by an application executing on a data processing system in a cluster of data processing systems, comprising:
a computer readable media having computer readable program code embodied therein, the computer readable program code comprising:
computer readable program code which associates a dynamic virtual IP address (DVIPA) with the application at the communication protocol stack of the data processing system in the cluster of data processing systems so as to utilize the DVIPA as the source address for the connection originated by the application.
