# US 2014/0156861 A1 · Clustering Support Across Geographical Boundaries

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

- Number: US 2014/0156861 A1
- Document ID: US20140156861A1
- Status: Published application
- Kind: A1
- Application number: 13/692,803
- Filed: 2012-12-04
- Published: 2014-06-05
- Earliest claimed: 2012-12-04
- Assignees: International Business Machines Corporation
- Applicants: International Business Machines Corporation
- Inventors: Esdras E. Cruz-Aguilar; Perinkulam I. Ganesh; Madhusudanan Kandasamy; Christine J. Wu
- Web page: https://patentgrep.com/patent/US20140156861A1

## CPC

- H04L 69/16: Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
- H04L 67/1001: for accessing one among a plurality of replicated servers
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

An approach is presented that provides computer clustering support across geographical boundaries. Inter-node communications are managed in a cluster by having each node operate at the network device driver (NDD) level within the kernel. Multiple types of NDD are utilized (Ethernet, SAN, DISK etc.) to provide redundancy so that nodes can reliably exchange heartbeat. To align with this architecture, for remote nodes, a pseudo NDD is used over Transmission Control Protocol (TCP) based communication interface to work along side other NDDs. Thus, the same packet which is sprayed over the NDDs pertaining to local nodes can be sprayed over the TCPSOCK NDD interface for remote nodes. Nodes (local or remote) receive the same packet and reassemble and process it in the same manner.

## Claims

### Claim 1

(canceled)

### Claim 2

(canceled)

### Claim 3

(canceled)

### Claim 4

(canceled)

### Claim 5

(canceled)

### Claim 6

(canceled)

### Claim 7

(canceled)

### Claim 8

(canceled)

### Claim 9

An information handling system comprising:
one or more processors;
a memory coupled to at least one of the processors;
a network interface that connects the information handling system to a computer network;
a set of instructions stored in the memory and executed by at least one of the processors to manage inter-node communications in a cluster wherein the set of instructions perform actions of:
creating a plurality of network device drivers (NDDs), wherein each of the NDDs corresponds to a node in the cluster, and wherein each of the NDDs is stored in the memory;
including a Transmission Control Protocol (TCP) based interface in a first set of the created NDDs, wherein each of the first set of created NDDs correspond to a remote node included in the cluster; and
including an existing interface in a second set of the created NDDs, wherein each of the second set of NDDs correspond to a local node included in the cluster.

### Claim 10 (depends on 8)

The information handling system of claim 8 further comprising:
storing the NDDs in a Driver Layer; and
sending a plurality of packets to a second node in the cluster by referencing the NDD corresponding to the second node.

### Claim 11 (depends on 9)

The information handling system of claim 9 wherein packets are sent from a cluster communication layer that does not determine whether the second node is remote prior to the sending.

### Claim 12 (depends on 8)

The information handling system of claim 8 wherein the NDDs are selected from a group consisting of a Storage Area Network (SAN) driver, a disk driver, an Ethernet driver, and a Transmission Control Protocol (TCP) based pseudo NDD driver.

### Claim 13 (depends on 8)

The information handling system of claim 8 wherein the TCP based interface utilizes a socket based kernel interface and provides a pseudo NDD layer support by implementing a TCPSOCK NDD framework interface.

### Claim 14 (depends on 13)

The information handling system of claim 13 wherein the TCP based interface provides TCP based handlers selected from a group consisting of initialize, allocate, free, control, send and receive.

### Claim 15 (depends on 14)

The information handling system of claim 14 wherein the TCP based interface utilizes a plurality of TCP/IPs socket based kernel interfaces.

### Claim 16 (depends on 13)

The information handling system of claim 13 wherein the TCP based interface seamlessly operates with other non-TCP based Network Device Driver (NDD) interfaces.

### Claim 17

A computer program product stored in a computer readable medium, comprising computer instructions that, when executed by an information handling system, causes the information handling system to perform actions comprising:
creating, using a processor, a plurality of network device drivers (NDDs), wherein each of the NDDs corresponds to a node in the cluster, and wherein each of the NDDs is stored in a memory accessible by the processor;
including a Transmission Control Protocol (TCP) based interface in a first set of the created NDDs, wherein each of the first set of created NDDs correspond to a remote node included in the cluster; and
including an existing interface in a second set of the created NDDs, wherein each of the second set of NDDs correspond to a local node included in the cluster.

### Claim 18 (depends on 17)

The computer program product of claim 17 further comprising:
storing the NDDs in a Driver Layer; and
sending a plurality of packets to a second node in the cluster by referencing the NDD corresponding to the second node.

### Claim 19 (depends on 18)

The computer program product of claim 18 wherein packets are sent from a cluster communication layer that does not determine whether the second node is remote prior to the sending.

### Claim 20 (depends on 17)

The computer program product of claim 17 wherein the NDDs are selected from a group consisting of a Storage Area Network (SAN) driver, a disk driver, an Ethernet driver, and a Transmission Control Protocol (TCP) based pseudo NDD driver.

### Claim 21 (depends on 17)

The computer program product of claim 17 wherein the TCP based interface utilizes a socket based kernel interface and provides a pseudo NDD layer support by implementing a TCPSOCK NDD framework interface.

### Claim 22 (depends on 21)

The computer program product of claim 21 wherein the TCP based interface provides TCP based handlers selected from a group consisting of initialize, allocate, free, control, send and receive.

### Claim 23 (depends on 22)

The computer program product of claim 22 wherein the TCP based interface utilizes a plurality of TCP/IPs socket based kernel interfaces.

### Claim 24 (depends on 21)

The computer program product of claim 21 wherein the TCP based interface seamlessly operates with other non-TCP based Network Device Driver (NDD) interfaces.
