Adaptive private network asynchronous distributed shared memory services
First Claim
1. A method for using distributed shared memory for communicating between loosely coupled computing systems, the method comprising:
- calibrating a first time in a first node and a second time in a second node based on a current time received from a network control point (NCP);
transmitting a block of memory from the first node over a first communication path to the second node and a duplicate block of memory from the first node over a second communication path having a measure of independence from the first communication path to the second node that is greater than measured levels of independence of other available communication paths, wherein the block of memory and the duplicate block of memory are both tagged with a corresponding send time according to the calibrated first time;
selecting the block of memory or the duplicate block of memory as the first block of memory received in the second node and tagged with an arrival time according to the calibrated second time, wherein the send time and arrival time of the first block of memory received in the second node are analyzed taking into account previous transmission measurements at the second node and used to generate a second node path quality report; and
transmitting the second node path quality report from the second node to the first node, wherein path selection for transmission of a second block of memory is based on the second node path quality report.
5 Assignments
0 Petitions
Accused Products
Abstract
A highly predicable quality shared distributed memory process is achieved using less than predicable public and private internet protocol networks as the means for communications within the processing interconnect. An adaptive private network (APN) service provides the ability for the distributed memory process to communicate data via an APN conduit service, to use high throughput paths by bandwidth allocation to higher quality paths avoiding lower quality paths, to deliver reliability via fast retransmissions on single packet loss detection, to deliver reliability and timely communication through redundancy transmissions via duplicate transmissions on high a best path and on a most independent path from the best path, to lower latency via high resolution clock synchronized path monitoring and high latency path avoidance, to monitor packet loss and provide loss prone path avoidance, and to avoid congestion by use of high resolution clock synchronized enabled congestion monitoring and avoidance.
44 Citations
12 Claims
-
1. A method for using distributed shared memory for communicating between loosely coupled computing systems, the method comprising:
-
calibrating a first time in a first node and a second time in a second node based on a current time received from a network control point (NCP); transmitting a block of memory from the first node over a first communication path to the second node and a duplicate block of memory from the first node over a second communication path having a measure of independence from the first communication path to the second node that is greater than measured levels of independence of other available communication paths, wherein the block of memory and the duplicate block of memory are both tagged with a corresponding send time according to the calibrated first time; selecting the block of memory or the duplicate block of memory as the first block of memory received in the second node and tagged with an arrival time according to the calibrated second time, wherein the send time and arrival time of the first block of memory received in the second node are analyzed taking into account previous transmission measurements at the second node and used to generate a second node path quality report; and transmitting the second node path quality report from the second node to the first node, wherein path selection for transmission of a second block of memory is based on the second node path quality report. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. An apparatus for using distributed shared memory for communicating between nodes in a loosely coupled computing system, the apparatus comprising:
-
means for calibrating a first time in a first node and a second time in a second node based on a current time received from a network control point (NCP); means for transmitting a block of memory from the first node over a first communication path to the second node and a duplicate block of memory from the first node over a second communication path having a measure of independence from the first communication path to the second node that is greater than measured levels of independence of other available communication paths, wherein the block of memory and the duplicate block of memory are both tagged with a corresponding send time according to the calibrated first time; means for selecting the block of memory or the duplicate block of memory as the first block of memory received in the second node and tagged with an arrival time according to the calibrated second time, wherein the send time and arrival time of the first block of memory received in the second node are analyzed taking into account previous transmission measurements at the second node and used to generate a second node path quality report; and means for transmitting the second node path quality report from the second node to the first node, wherein path selection for transmission of a second block of memory is based on the second node path quality report. - View Dependent Claims (11, 12)
-
Specification