IP Library Granted Patent US 6,977,929
Granted Patent B1
US 6,977,929 · App. 09/457,889 · Granted Dec 20, 2005

Method and system for facilitating relocation of devices on a network

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 6,977,929
App. No.
09/457,889
Granted
Dec 20, 2005
Kind
B1
Abstract

Methods and systems consistent with the present invention provide a Supernet, a private network constructed out of components from a public-network infrastructure. The Supernet provides flexible and dynamic mobility support. When a destination node moves to a new location, it automatically updates the sending nodes with its new IP address. The destination node can choose among a number of ways to update the sending nodes, providing flexibility not found in conventional networks. Thus, a node can change locations repeatedly and continue to communicate directly with other nodes without the use of a proxy or other middleman.

Claims (87)

1. A method in a distributed system for communicating in a network with a source node and a destination node, the method comprising the steps of:

accessing an address of the destination node by the source node, wherein the source node and the destination node are programs;

sending a first packet by the source node to the destination node by using the accessed address;

receiving the first packet by the destination node at the accessed address of the destination node;

responsive to a change in the address of the destination node to a new address, immediately updating the accessed address, wherein the updating includes

sending an update packet containing the new address of the destination node from the destination node such that the update packet is addressed to the source node, and

storing, by the source node, the new address of the destination node, responsive to receiving the update packet;

sending a second packet by the source node to the destination node by using the stored new address; and

receiving the second packet by the destination node at the new address of the destination node.

2. The method of claim 1 , wherein the source node and the destination node have a local address cache, and wherein the receiving the first packet step includes the step of:

storing, in the local cache of the destination node, an address of the sending node; and

wherein the updating step further includes the steps of:

retrieving from the local cache of the destination node the address of the sending node; and

storing, in the local cache of the source node, the new address of the destination node.

3. The method of claim 1 , wherein the distributed system has a central address store, the method further comprising the steps of:

storing an address of the source node and the destination node in the central address store; and

wherein the sending a first packet step further includes the step of:

accessing the address of the destination node from the central address store; and

wherein the updating step further includes the steps of:

sending a third packet containing the new address of the destination node to the central address store by the destination node; and

storing the new address of the destination node in the central address store; and

accessing the new address by the source node.

4. The method of claim 1 , wherein the source node and the destination node communicate with other nodes by using a multicast address such that a communication sent to the multicast address is sent to the source node, the destination node, and the other nodes, the source node and the other nodes having a local cache, wherein the updating step further includes the steps of:

sending the update packet containing the new address of the destination node to the source node by the destination node using the multicast address;

receiving the update packet by the source node and the other nodes; and

storing in the local cache of the source node and the other nodes the new address of the destination node.

5. The method of claim 1 , wherein the source node and the destination node have a local address cache and communicate by using a multicast address such that a communication sent to the multicast address is sent to a multicast group including the source node and the destination node, and wherein the updating step further includes the steps of:

sending a joining request, by the destination node, to a router to add the new address of the destination node to the multicast group;

sending a message, by the source node, to the destination node via the multicast address;

receiving the message by the destination node;

sending the update packet containing the new address of the destination node by the destination node to the source node, using the multicast address; and

storing the new address of the destination node in the local cache of the source node.

6. The method of claim 1 wherein the network is a private network running on a public network infrastructure.

7. The method of claim 1 wherein the change in the address of the destination node to the new address is caused by a device on which the destination node runs physically changing locations.

8. A method in a distributed system for communicating in a network with a source node and a destination node, the method comprising the steps of:

receiving a first packet by the destination node, at an address of the destination node, from the source node, the packet being addressed to the address of the destination node, wherein the source node and the destination node are programs;

responsive to a change in the address of the destination node to a new address, immediately updating the address of the destination node to the new address, wherein the updating includes:

sending an update packet containing the new address of the destination node from the destination node such that the update packet is addressed to the source node, and

storing, by the source node, the new address of the destination node, responsive to receiving the update packet; and

receiving a second packet by the destination node at the new address.

9. The method of claim 8 , wherein the destination node has a local address cache, and wherein the receiving first packet step includes the step of:

storing, in the local cache of the destination node, an address of the sending node; and

wherein the updating step further includes the step of:

retrieving from the local cache of the destination node the address of the sending node.

10. The method of claim 8 , wherein the distributed system has a central address store, the method further comprising the step of:

storing an address of the source node and an address of the destination node in the central address store; and

wherein the updating step further includes the step of:

sending a third packet containing the new address of the destination node to the central address store by the destination node.

11. The method of claim 8 , wherein the source node and the destination node communicate with other nodes by using a multicast address such that a communication sent to the multicast address is sent to the source node, the destination node, and the other nodes, the source node and the other nodes having a local cache, and wherein the updating step further includes the step of:

sending the update packet containing the new address of the destination node to the source node by the destination node using the multicast address.

12. The method of claim 8 , wherein the source node and the destination node have a local address cache and communicate by using a multicast address such that a communication sent to the multicast address is sent to a multicast group including the source node and the destination node, and wherein the updating step further includes the steps of:

sending a joining request, by the destination node, to a router to add the new address of the destination node to the multicast group;

receiving a message from the source node by the destination node, via the multicast address; and

sending the update packet containing the new address of the destination node by the destination node to the source node, using the address for the source node.

13. The method of claim 8 wherein the network is a private network running on a public network infrastructure.

14. The method of claim 8 wherein the change in the address of the destination node to the new address is caused by a device on which the destination node runs physically changing locations.

15. A method in a data processing system for communicating in a network with a source node and a destination node, wherein each node has an address, the method comprising the steps of:

sending a first packet from the source node to the destination node by using the address of the destination node, wherein the source node and the destination node are programs;

responsive to a change in the address of the destination node to a new address, immediately receiving, by the source node, an update packet sent by the destination node such that the update packet is addressed to the source node, the update packet containing the new address to supersede the address of the destination node;

storing, by the source node, the new address of the destination node, responsive to receiving the update packet; and

sending a second packet from the source node to the destination node by using the new address.

16. The method of claim 15 , wherein the network is a private network running on a public network infrastructure.

17. The method of claim 15 wherein the change in the address of the destination node to the new address is caused by a device on which the destination node runs physically changing locations.

18. A distributed system with a plurality of devices, comprising:

a first of the devices comprising:

a memory with a source node that sends a first packet to a destination node using an address of the destination node, that responsive to a change in the address of the destination node to a new address, immediately receives an update packet from the destination node containing the new address to supersede the address of the destination node, and that sends a second packet to the destination node using the new address;

a processor that runs the source node; and

a second device comprising:

a memory with the destination node that receives the first packet at the address and that sends the update packet containing the new address such that the update packet is addressed to the source node in response to the change in the address of the destination node to the new address, and that receives the second packet; and

a processor for running the destination node.

19. The distributed system of claim 18 wherein the network is a private network running on a public network infrastructure.

20. The distributed system of claim 18 wherein the change in the address of the destination node to the new address is caused by a device on which the destination node runs physically changing locations.

21. A data processing system for communicating in a network with a source node and a destination node, the data processing system comprising:

means for accessing an address of the destination node;

means for sending a first packet by the source node to the destination node by using the accessed address;

means for receiving the first packet by the destination node at the address of the destination node;

means for, responsive to a change in the address of the destination node to a new address, immediately updating the address of the destination node to the new address, wherein the updating means includes:

means for sending an update packet containing the new address of the destination node from the destination node such that the update packet is addressed to the source node, and

means for storing, by the source node, the new address of the destination node, responsive to receiving the update packet;

means for sending a second packet by the source node to the destination node by using the stored new address; and

means for receiving the second packet by the destination node at the new address of the destination node.

22. A computer-readable medium containing instructions for controlling a data processing system to perform a method, the method for communicating in a network with a source node and a destination node, wherein each node has an address, the method comprising the steps of:

sending a first packet from the source node to the destination node by using the address of the destination node, wherein the source node and the destination node are programs;

responsive to a change in the address of the destination node to a new address, immediately receiving, by the source node, an update packet sent by the destination node such that the update packet is addressed to the source node, the update packet containing the new address to supersede the address of the destination node; and

sending a second packet by the source node to the destination node by using the new address.

23. The computer-readable medium of claim 22 wherein the network is a private network running on a public network infrastructure.

24. The computer-readable medium of claim 22 wherein the change in the address of the destination node to the new address is caused by a device on which the destination node runs physically changing locations.

Assignments (1)
MERGER AND CHANGE OF NAME Recorded Dec 14, 2015
From: ORACLE USA, INC.; SUN MICROSYSTEMS, INC.; ORACLE AMERICA, INC.
To: ORACLE AMERICA, INC.
Reel/Frame 037280/0159 →