IP Library Granted Patent US 10,305,803
Granted Patent B2
US 10,305,803 · App. 15/180,478 · Granted May 28, 2019

Adaptive private network asynchronous distributed shared memory services

Inventors: Andre N. Fredette (Cary, NC); John Edward Dickey (Apex, NC)
Assignee: TALARI NETWORKS, INC.
H04L47/122G06F15/167H04L7/0012H04L43/062H04L43/087H04L43/0829H04L43/0858H04L43/0864H04L43/16H04L45/121H04L45/124H04L45/125H04L67/1097
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,305,803
App. No.
15/180,478
Granted
May 28, 2019
Kind
B2
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.

Claims (23)

1. A method for using distributed shared memory for communicating between distributed computing systems, the method comprising:

transmitting a memory refresh in fragment packets of a block of memory from a sender node over a first path to a first receiver node and over a second path to a second receiver node;

receiving in the sender node a potential lost packet indication from the first receiver node; and

speculatively retransmitting the potential lost packet from the sender node over a third path between the sender node and the first receiver node in response to the received potential lost packet indication, wherein the fragments received in the first receiver node including a fragment from the speculatively retransmitted potential lost packet are combined to recreate the block of memory for the memory refresh in the first receiver node and the fragments received in the second receiver node are combined to recreate the block of memory for the memory refresh in the second receiver node.

2. The method of claim 1 , wherein the packet fragments are tagged for ordering the packet fragments and the potential lost packet indication is determined according to a missing tag in a list of received tagged fragments.

3. The method of claim 1 , wherein the potential lost packet indication is determined according to a delay in receiving a fragment packet that exceeds a threshold.

4. The method of claim 1 , wherein the potential lost packet indication is sent over a third path that is as independent as possible from the first path and from the second path.

5. The method of claim 1 , wherein multiple frequency thresholds of providing memory refreshes at different rates are pre-specified depending on the contents of the distributed shared memory that require refresh operations.

6. The method of claim 1 , wherein independent of periodic pre-specified refresh periods, an on demand memory refresh is scheduled to handle a time critical event.

7. The method of claim 1 further comprising:

establishing a maximum time duration permitted without transmitting a further memory refresh.

8. The method of claim 1 , wherein the sender node employs three polling cycles to provide refresh opportunities.

9. The method of claim 1 , wherein the sender node determines whether a refresh frequency threshold has been exceeded.

10. The method of claim 1 , wherein the sender node is configured to provide multiple refresh frequency thresholds.

11. The method of claim 1 further comprising:

transmitting a second memory refresh of a second block of memory from a sender node subject to a maximum threshold of distributed memory refreshes.

12. The method of claim 1 , wherein the sender node is located at a point of entry to a wide area network (WAN), the first receiver node is located at a point of exit from the WAN, and the first path comprises a connection between a WAN ingress WAN link and a WAN egress WAN link.

13. The method of claim 12 , wherein the third path comprises the Internet.

14. The method of claim 1 , wherein the sender node and the first receiver node are connected by a conduit comprising multiple paths including the first, second and third paths.

15. The method of claim 14 , wherein the third path comprises the Internet.

16. The method of claim 14 further comprising:

determining a measure of independence of the multiple paths; and

selecting as the third path the most independent of other available paths.

Assignments (2)
RELEASE OF SECURITY INTEREST Recorded Nov 30, 2018
From: PACIFIC WESTERN BANK (AS SUCCESSOR IN INTEREST BY MERGER TO SQUARE 1 BANK)
To: TALARI NETWORKS, INC.
Reel/Frame 047633/0286 →
SECURITY INTEREST Recorded Jul 3, 2018
From: TALARI NETWORKS, INC.
To: PACIFIC WESTERN BANK (AS SUCCESSOR IN INTEREST BY MERGER TO SQUARE 1 BANK)
Reel/Frame 046259/0037 →
Continuity (5)
Division 14291776 · May 30, 2014
Continuation 13850411 · Mar 26, 2013
Continuation 13208825 · Aug 12, 2011
Provisional Application 61372904 · Aug 12, 2010
Related Publication 20160366060A1 · Dec 15, 2016