IP Library Granted Patent US 7,496,681
Granted Patent B2
US 7,496,681 · App. 10/832,132 · Granted Feb 24, 2009

System and method for extending virtual synchrony to wide area networks

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 7,496,681
App. No.
10/832,132
Granted
Feb 24, 2009
Kind
B2
Abstract

A virtual synchrony wide area network ( 100 ) which has at least a first local area network (LAN) ( 110 ) and a second LAN ( 120 ). A first router ( 114 ) and a second router ( 116 ) are connected to the first LAN ( 110 ), and a third router ( 142 ) and a fourth router ( 146 ) are connected to the second LAN ( 120 ). A point-to-point link ( 152 ) is connected between the first and third routers, ( 154 ) between the first and fourth routers, ( 156 ) between the second and third routers, and ( 158 ) between the second and fourth routers. Each router is provided with computer program code ( 206 ) for controlling the flow of messages through the routers and to maintain local total order with minimal latency.

Claims (35)

1. A router configured for use in virtual synchrony wide area network, the router comprising:

a) a host processor;

b) a memory connected to the host processor;

c) at least one first interface connected to the host processor and connectable to a first local area network (LAN); and

d) at least one point-to-point capable network interface connected to the host processor and connectable through at least one first point-to-point link to a first router connected to a second LAN, and through at least one second point-to-point link to second router connected to the second LAN, wherein the first and second LANs comprise virtual synchrony networks, wherein the first and second LANs further comprise at least part of the virtual synchrony wide area network, wherein each router further comprises an ability to at least control the flow of messages through the router by at least means of sending messages, receiving messages, preventing duplicate messages, and when a message was not received through a point to point link, and when the original source of the message is a proximate LAN, then enqueuing the message to at least one other proximate LAN coupled to the router and enqueuing the message to at least one other point-to-point link coupled to the router.

2. The router of claim 1 further comprising a computer program product having a medium with a computer program embodied thereon, the computer program product comprising computer program code executable for controlling the flow of messages through the router.

3. The router of claim 1 further comprising a computer program product having a medium with a computer program embodied thereon, the computer program product comprising computer program code executable for controlling the flow of messages through the at least one point-to-point capable network interface, and for ensuring that a message transmitted through the at least one first point-to-point link or through the at least one second point-to-point link is also transmitted through the at least one second point-to-point link or through the at least one first point-to-point link, respectively.

4. The router of claim 1 wherein the at least one first interface comprises at least one multicast capable network interface.

5. A virtual synchrony wide area network, comprising:

a) at least one first local area network (LAN), wherein at least one first LAN comprises a first virtual synchrony network;

b) a first router connected to and configured for serving the at least one first LAN wherein the first router further comprises an ability to at least control the flow of messages through the first router by at least means of sending messages, receiving messages, preventing duplicate messages, and enqueuing messages;

c) a second router connected to and configured for serving the at least one first LAN wherein the second router further comprises an ability to at least control the flow of messages through the second router by at least means of sending messages, receiving messages, preventing duplicate messages, and enqueuing messages;

d) at least one second LAN, wherein at least one second LAN comprises a second virtual synchrony network;

e) a third router connected to and configured for serving the at least one second LAN wherein the third router further comprises an ability to at least control the flow of messages through the third router by at least means of sending messages, receiving messages, preventing duplicate messages, and enqueuing messages;

f) a fourth router connected to and configured for serving the at least one second LAN wherein the fourth router further comprises an ability to at least control the flow of messages through the fourth router by at least means of sending messages, receiving messages, preventing duplicate messages, and enqueuing messages;

g) at least one first point-to-point link connected between the first router and the third router for establishing a channel of communication between the at least one first LAN and the at least one second LAN;

h) at least one second point-to-point link connected between the first router and the fourth router for establishing a channel of communication between the at least one first LAN and the at least one second LAN;

i) at least one third point-to-point link connected between the second router and the third router for establishing a channel of communication between the at least one first LAN and the at least one second LAN;

j) at least one fourth point-to-point link connected between the second router and the fourth router for establishing a channel of communication between the at least one first LAN and the at least one second LAN; and

k) wherein the first and second connected virtual synchrony networks further comprise at least part of the virtual synchrony wide area network wherein for each router if a message was not received through a point to point link, and when the original source of the message is a proximate LAN, then enqueuing the message to at least one other proximate LAN coupled to the each router and enqueuing the message to at least one other point-to-point link coupled to the each router.

6. The virtual synchrony wide area network of claim 5 wherein the first router and the second router each comprise, respectively:

a) a host processor;

b) at least one multicast capable network interface interconnected between the host processor and a respective LAN;

c) at least two point-to-point capable network interfaces interconnected between the host processor and one of the first, second, third, or fourth point-to-point links; and

d) a host memory connected to the host processor.

7. The virtual synchrony wide area network of claim 5 wherein the first router and the second router each comprise, respectively:

a) a host processor;

b) at least one multicast capable network interface interconnected between the host processor and a respective LAN;

c) at least two point-to-point capable network interfaces interconnected between the host processor and one of the first, second, third or fourth point-to-point links; and

d) a host memory connected to the host processor, the host memory being apportioned between at least a queue, a register, and computer program code.

8. The virtual synchrony wide area network of claim 5 wherein the first router and the second router each comprise, respectively:

a) a host processor;

b) at least one multicast capable network interface interconnected between the host processor and a respective LAN;

c) at least two point-to-point capable network interfaces interconnected between the host processor and one of the first, second, third, or fourth point-to-point links; and

d) a host memory connected to the host processor, the host memory being apportioned between at least a queue, a register, and computer program code for controlling the flow of messages through the each router.

Assignments (7)
RELEASE (REEL 038041 / FRAME 0001) Recorded Jan 2, 2018
From: JPMORGAN CHASE BANK, N.A.
To: RPX CORPORATION; RPX CLEARINGHOUSE LLC
Reel/Frame 044970/0030 →
SECURITY AGREEMENT Recorded Mar 9, 2016
From: RPX CORPORATION; RPX CLEARINGHOUSE LLC
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 038041/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 9, 2015
From: ROCKSTAR CONSORTIUM US LP; ROCKSTAR CONSORTIUM LLC; BOCKSTAR TECHNOLOGIES LLC; CONSTELLATION TECHNOLOGIES LLC; MOBILESTAR TECHNOLOGIES LLC; NETSTAR TECHNOLOGIES LLC
To: RPX CLEARINGHOUSE LLC
Reel/Frame 034924/0779 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 11, 2014
From: ROCKSTAR BIDCO, LP
To: ROCKSTAR CONSORTIUM US LP
Reel/Frame 032425/0867 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 28, 2011
From: NORTEL NETWORKS LIMITED
To: ROCKSTAR BIDCO, LP
Reel/Frame 027164/0356 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 13, 2004
From: MINYARD, TRENTON COREY
To: NORTEL NETWORKS CORPORATION
Reel/Frame 015453/0600 →
CHANGE OF NAME Recorded Dec 13, 2004
From: NORTEL NETWORKS CORPRATION
To: NORTEL NETWORKS LIMITED
Reel/Frame 015453/0619 →