# US 2014/0156855 A1 · Binding multiple addresses to a socket in a network system

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

- Number: US 2014/0156855 A1
- Document ID: US20140156855A1
- Status: Published application
- Kind: A1
- Application number: 13/692,456
- Filed: 2012-12-03
- Published: 2014-06-05
- Earliest claimed: 2012-12-03
- Assignees: International Business Machines Corporation
- Applicants: International Business Machines Corporation
- Inventors: Brabson Roy F; Alfred B. Christensen; Constantinos Kassimis
- Web page: https://patentgrep.com/patent/US20140156855A1

## CPC

- H04L 65/1069: Session establishment or de-establishment
- H04L 69/162: {involving adaptations of sockets based mechanisms (secure socket layer H04L63/168)}
- 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 69/161: {Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields}
- H04L 2101/686: using dual-stack hosts, e.g. in Internet protocol version 4 [IPv4]/Internet protocol version 6 [IPv6] networks
- H04W 76/10: Connection setup
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- H04W: WIRELESS COMMUNICATION NETWORKS (broadcast communication H04H; communication systems using wireless links for non-selective communication, e.g. wireless extensions H04M1/72)

## Abstract

A TCP/IP socket extension may bind a single socket to more than one IP address. The socket API extension may allow a user to bind a socket to a list of IP addresses instead of a single IP address. Additional socket APIs may allow applications to bind an existing socket to one or more additional IP addresses. Bind-specific support may enhance a user's capability to specify one or more IPv4 addresses and/or IPv6 addresses or other addresses to bind to a generic server information handling system (IHS). The method may convert a generic server IHS into a bind-specific server IHS that accepts new connections over both the IPv4 and IPv6 network transports and/or other network transports without requiring changes to the server IHS. A modified TCP/IP stack may provide support for multiple sockets. The method may map multiple address/port/protocol tuples to the same socket.

## Claims

### Claim at position 1

1-10. (canceled)

### Claim 11

An information handling system (IHS), comprising:
a processor;
a memory, coupled to the processor,
the memory being configured to create a socket in the IHS and map multiple IP addresses to the socket;
the memory being further configured such that the socket listens for connection requests on the multiple IP addresses and receives connection requests for the multiple addresses via a multiple protocol network.

### Claim 12 (depends on 11)

The IHS of claim 11, wherein the multiple IP addresses include IP addresses exhibiting different network protocols.

### Claim 13 (depends on 11)

The IHS of claim 11, wherein the memory is further configured with a TCP/IP stack that retrieves a list of IP addresses from a network application in the IHS, the memory being further configured to map the IP addresses in the list of IP addresses to the socket.

### Claim 14 (depends on 11)

The IHS of claim 11, wherein the TCP/IP stack adds the IP addresses of the list of IP addresses to a hash table in the IHS such that the hash table provides IP address to socket mappings.

### Claim 15 (depends on 1)

The IHS of claim 1, wherein the memory is further configured with a network application that binds the socket at a TCP/IP layer of the IHS to multiple IP address/port tuples to form a connection with another application over the multiple protocol network.

### Claim 16

An information handling system (IHS), comprising:
a processor;
a memory, coupled to the processor,
the memory being configured to create a plurality of sockets in the IHS and to map a respective IP address to each of the sockets of the plurality of sockets;
the memory being further configured to bind each socket of the plurality of sockets to a respective IP address;
the memory being further configured such that each of the sockets listens for connection requests on the multiple IP addresses and each of the sockets receives connection requests for each socket's respective IP address via a multiple protocol network.

### Claim 17 (depends on 16)

The IHS of claim 16, wherein the memory is further configured to create the plurality of sockets in a socket library of the IHS.

### Claim 18 (depends on 16)

The IHS of claim 16, wherein the memory is further configured to create the plurality of sockets in a server network application of the IHS.

### Claim 19 (depends on 17)

The IHS of claim 17, wherein the memory is further configured such that the socket library accepts a connection request over an available socket in the socket library.

### Claim 20 (depends on 18)

The IHS of claim 18, wherein the memory is further configured such that the server network application accepts a connection request over an available socket in the server network application.

### Claim 21

A server network application computer program product, comprising:
a computer readable storage medium for use in an information handling system (IHS):
first instructions that create a socket in the IHS;
second instructions that map multiple IP addresses to the socket;
third instructions that configure the socket to listen for connection requests on the multiple IP addresses; and
fourth instructions that receive connection requests for the multiple addresses via a multiple protocol network;
wherein the first, second, third and fourth instructions are stored on the computer readable storage medium.

### Claim 22 (depends on 21)

The server network application computer program product of claim 21, wherein the multiple IP addresses include IP addresses exhibiting different network protocols.

### Claim 23 (depends on 21)

The server network application computer program product of claim 21, further comprising:
fifth instructions that configure a TCP/IP stack in the IHS to retrieve a list of IP addresses from a network application in the IHS;
wherein the second instructions that map the multiple IP addresses to the socket include instructions that map the IP addresses in the list of IP addresses to the socket.

### Claim 24 (depends on 23)

The server network application computer program product of claim 23, further comprising:
sixth instructions that configure the TCP/IP stack to add the IP addresses of the list of IP addresses to a hash table in the IHS such that the hash table provides IP address to socket mappings.

### Claim 25 (depends on 21)

The server network application computer program product of claim 21, further comprising:
seventh instructions that configure the server network application to bind the socket at a TCP/IP layer of the IHS to multiple IP address/port tuples to form a connection with another application over the multiple protocol network.
