IP Library Granted Patent US 7,079,535
Granted Patent B2
US 7,079,535 · App. 09/917,575 · Granted Jul 18, 2006

Method and apparatus for real-time fault-tolerant multicasts in computer networks

Assignee: The Regents of the Universtiy of California
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,079,535
App. No.
09/917,575
Granted
Jul 18, 2006
Kind
B2
Abstract

The sender of a multicast in a computer network attaches an official release time to the message being multicast, asking every receiver to process the message at or after the official release time. A receiver may receive a cancellation notice after receiving the multicast message but before its official release time. The official release time is chosen so that the multicast can succeed or be cancelled by the official release time with the probability at or above a user selected level under reasonably bounded numbers of occurrences of permanent and temporary faults and reasonably bounded durations of temporary faults. This multicast protocol is formulated to suit the environment where it is not worth it for a node to wait for a reply from another node beyond a certain time-period, called the timeout period.

Claims (124)

1. An improvement in a method for communication in a computer network to a plurality of receivers comprising:

terminating a multicast session at an official release time associated with a multicast message with every member of a multicast group, including a sender and every intended receiver, by letting a receiver decide at the official release time that a multicast session has been successfully completed when all of the following conditions are met:

(i) neither the receiver nor a local communication manager has received any fault detection report from local or remote fault detectors, or where the receiver or local communication manager has received fault detection reports from the local and/or remote fault detectors, but judged that the faults detected could not have impacted the correctness of the multicast; and

(ii) the receiver has received the multicast message and returned an ACK-message; and

(iii) the receiver has not received any cancellation notice from the sender.

2. An improvement in a method for communication in a computer network to a plurality of receivers comprising:

terminating a multicast session at an official release time associated with a multicast message with every member of a multicast group, including a sender and every intended receiver, by letting the sender decide at the official release time that a multicast session has been successfully completed when all of the following conditions are met:

(i) Neither the sender nor the local communication manager has received any fault detection report from the local or remote fault detectors, or where the sender or the local communication manager has received fault detection reports from the local and/or fault detectors, but judged that the faults detected could not have impacted the correctness of the multicast about to be concluded; and

(ii) The sender has received an ACK-message from every intended receiver.

3. The improvement of claim 1 further comprising:

terminating a multicast session at an official release time associated with a multicast message with every member of a multicast group, including a sender and every intended receiver, by letting the sender decide at the official release time that a multicast session has been successfully completed when all of the following conditions are met:

(i) Neither the sender nor the local communication manager has received any fault detection report from the local or remote fault detectors, or where the sender or the local communication manager has received fault detection reports from the local and/or fault detectors, but judged that the faults detected could not have impacted the correctness of the multicast about to be concluded; and

(ii) The sender has received an ACK-message from every intended receiver.

4. An improvement in a method for communication in a computer network to a plurality of receivers comprising:

terminating a multicast session in every healthy member of a multicast group, including a sender and every intended receiver with the conclusion of the multicast session on the failure and the cancellation of the multicast session at or before arrival of an official release time associated with a multicast message by letting the sender decide at or before the official release time that a multicast session has been cancelled when at least one of the following conditions is met:

(i) The sender or a local communication manager has received fault detection reports from the local and/or remote fault detectors and judged that the faults detected were in the local node and due to the faults detected, the multicast must be concluded as a failure and thus the sender has sent a cancellation notice to every intended receiver; or

(ii) The sender or a local communication manager has received fault detection reports from the local and/or remote fault detectors and judged that the faults detected were outside the local node and due to the faults detected, the multicast session must be concluded as a failure and thus the sender has sent a cancellation notice to every intended receiver.

5. An improvement in a method for communication in a computer network to a plurality of receivers comprising:

terminating a multicast session in every healthy member of a multicast group, including a sender and every intended receiver with the conclusion of the multicast session on the failure and the cancellation of the multicast session at or before arrival of an official release time associated with a multicast message by letting a receiver decide at or before the official release time that a multicast session has been cancelled when at least one of the following conditions is met:

(i) The receiver has received a cancellation notice from another receiver; or

(ii) the receiver becomes disabled after sending an ACK-message but before the official release time; or

(iii) The receiver or a local communication manager has received fault detection reports from local and/or remote fault detectors and judged that the faults detected were in the local node and due to the faults detected, the multicast session must be concluded as a failure; or

(iv) The receiver or local communication manager has received fault detection reports from the local and/or remote fault detectors and judged that the faults detected were outside the local node and due to the faults detected, the multicast session must be concluded as a failure, and

terminating a multicast session in every healthy member of a multicast group, including a sender and every intended receiver with the conclusion of the multicast session on the failure and the cancellation of the multicast session at or before arrival of an official release time associated with a multicast message by letting the sender decide at or before the official release time that a multicast session has been cancelled when at least one of the following conditions is met:

(i) The sender or a local communication manager has received fault detection reports from the local and/or remote fault detectors and judged that the faults detected were in the local node and due to the faults detected, the multicast must be concluded as a failure and thus the sender has sent a cancellation notice to every intended receiver; or

(ii) The sender or a local communication manager has received fault detection reports from the local and/or remote fault detectors and judged that the faults detected were outside the local node and due to the faults detected, the multicast session must be concluded as a failure and thus the sender has sent a cancellation notice to every intended receiver.

6. An improvement in a method for communication in a computer network to a plurality of receivers in a multicast session comprising the steps of:

transmitting a multicast message to said plurality of receivers from a sender through said computer network with information on an official release time included in the multicast message, wherein the official release time is chosen such that when both the sender and plurality of the receivers remain fault free during the multicast session, such that the probability of the multicast being completed before the official release time is at or above a predetermined level; and

terminating a multicast session at an official release time associated with a multicast message with every member of a multicast group, including a sender and every intended receiver, by letting a receiver decide at the official release time that a multicast session has been successfully completed when all of the following conditions are met:

(i) neither the receiver nor a local communication manager has received any fault detection report from local or remote fault detectors; and

(ii) The receiver has received the multicast message and returned an ACK-message; and

(iii) The receiver has not received any cancellation notice from the sender.

7. An improvement in a method for communication in a computer network to a plurality of receivers in a multicast session comprising the steps of:

transmitting a multicast message to said plurality of receivers from a sender through said computer network with information on an official release time included in the multicast message, wherein the official release time is chosen such that when both the sender and plurality of the receivers remain fault free during the multicast session, such that the probability of the multicast being completed before the official release time is at or above a predetermined level; and

terminating a multicast session at an official release time associated with a multicast message with every member of a multicast group, including a sender and every intended receiver, by letting the sender decide at the official release time that a multicast session has been successfully completed when all of the following conditions are met:

(i) Neither the sender nor a local communication manager has received any fault detection report from the local or remote fault detectors; and

(ii) The sender has received an ACK-message from every intended receiver.

8. An improvement in a method for communication in a computer network to a plurality of receivers in a multicast session comprising:

transmitting a multicast message to said plurality of receivers from a sender through said computer network;

processing the transmitted multicast message in every receiver at or after a certain time defined as the official release time, which is chosen such that when both the sender and plurality of receivers remain healthy during the multicast session, the probability of the multicast being completed before the official release time is at or above a user selected level; and

terminating a multicast session at an official release time associated with a multicast message with every member of a multicast group, including a sender and every intended receiver, by letting a receiver decide at the official release time that a multicast session has been successfully completed when all of the following conditions are met:

(i) neither the receiver nor a local communication manager has received any fault detection report from local or remote fault detectors; and

(ii) The receiver has received the multicast message and returned an ACK-message; and

(iii) The receiver has not received any cancellation notice from the sender.

9. An improvement in a method for communication in a computer network to a plurality of receivers in a multicast session comprising:

transmitting a multicast message to said plurality of receivers from a sender through said computer network;

processing the transmitted multicast message in every receiver at or after a certain time defined as the official release time, which is chosen such that when both the sender and plurality of receivers remain healthy during the multicast session, the probability of the multicast being completed before the official release time is at or above a user selected level; and

terminating a multicast session at an official release time associated with a multicast message with every member of a multicast group, including a sender and every intended receiver, by letting the sender decide at the official release time that a multicast session has been successfully completed when all of the following conditions are met:

(i) Neither the sender nor the local communication manager has received any fault detection report from the local or remote fault detectors; and

(ii) The sender has received an ACK-message from every intended receiver.

10. An improvement in a computer network including a plurality of receivers in a multicast session comprising:

means for transmitting a multicast message from a sender to said plurality of receivers through said computer network;

means for processing the received multicast message in said plurality of receivers only after a time defined as the official release time, which is chosen and sent to every receiver by the sender such that the multicast is cancelled, when the message cannot be delivered to a receiver after the sender makes a pre-determined number of attempts or when the sender becomes disabled before it can confirm the success of the multicast;

means for generating a cancellation notice by any member;

means for performing a cancellation step by all intended healthy receivers and the healthy sender before the official release time;

where the means for processing the transmitted multicast message in every receiver has completed processing the multicast when at least one of the following conditions is met:

(i) When the communication of the multicast message to the last one of said plurality of receivers is successfully completed; or

(ii) When the communication of the multicast message to any of the receivers fails; and

means for terminating a multicast session at an official release time associated with the multicast message with every member of the multicast group, including the sender and every intended receiver, by letting a receiver decide at the official release time that a multicast session has been successfully completed when all of the following conditions are met:

(i) neither the receiver nor a local communication manager has received any fault detection report from local or remote fault detectors, or where the receiver or local communication manager has received fault detection reports from the local and/or remote fault detectors, but judged that the faults detected could not have impacted the correctness of the multicast; and

(ii) The receiver has received the multicast message and returned an ACK-message; and

(iii) The receiver has not received any cancellation notice from the sender.

11. An improvement in a computer network including a plurality of receivers in a multicast session comprising:

means for transmitting a multicast message from a sender to said plurality of receivers through said computer network;

means for processing the received multicast message in said plurality of receivers only after a time defined as the official release time, which is chosen and sent to every receiver by the sender such that the multicast is cancelled, when the message cannot be delivered to a receiver after the sender makes a pre-determined number of attempts or when the sender becomes disabled before it can confirm the success of the multicast;

means for generating a cancellation notice by any member;

means for performing a cancellation step by all intended healthy receivers and the healthy sender before the official release time;

where the means for processing the transmitted multicast message in every receiver has completed processing the multicast when at least one of the following conditions is met:

(i) When the communication of the multicast message to the last one of said plurality of receivers is successfully completed; or

(ii) When the communication of the multicast message to any of the receivers fails; and

means for terminating a multicast session at an official release time associated with the multicast message with every member of the multicast group, including the sender and every intended receiver, by letting the sender decide at the official release time that a multicast session has been successfully completed when all of the following conditions are met:

(i) Neither the sender nor the local communication manager has received any fault detection report from the local or remote fault detectors, or where the sender or the local communication manager has received fault detection reports from the local and/or fault detectors, but judged that the faults detected could not have impacted the correctness of the multicast about to be concluded; and

(ii) The sender has received an ACK-message from every intended receiver.

12. An improvement in a computer network including a plurality of receivers in a multicast session comprising:

means for transmitting a multicast message from a sender to said plurality of receivers through said computer network;

means for processing the received multicast message in said plurality of receivers only after a time defined as the official release time, which is chosen and sent to every receiver by the sender such that the multicast is cancelled when the sender becomes disabled before it can confirm the success of the multicast;

means for generating a cancellation notice by any healthy member; and

means for performing a cancellation step by all intended healthy receivers before the official release time,

where the means for processing the transmitted multicast message in every receiver has completed processing the multicast when at least one of the following conditions is met:

(i) When the communication of the multicast message to the last one of said plurality of receivers is successfully completed; or

(ii) When the communication of the multicast message to any of the receivers fails

means for terminating a multicast session in every healthy member of a multicast group, including a sender and every intended receiver, with the conclusion of the multicast session on the failure and the cancellation of the multicast session at or before arrival of an official release time associated with a multicast message by letting a receiver decide at or before the official release time that a multicast session has been cancelled when at least one of the following conditions is met:

(i) The receiver has received a cancellation notice from receiver; or

(ii) The receiver or a local communication manager has received fault detection reports from local and/or remote fault detectors and judged that the faults detected were in the local node and due to the faults detected, the multicast session must be concluded as a failure; or

(iii) The receiver or local communication manager has received fault detection reports from the local and/or remote fault detectors and judged that the faults detected were outside the local node and due to the faults detected, the multicast session must be concluded as a failure.

13. An improvement in a method for communication in a computer network to a plurality of receivers comprising:

transmitting a multicast message from a sender to said plurality of receivers through said computer network;

processing the received multicast message in said plurality of receivers only after a time defined as the official release time, which is chosen and sent to every receiver by the sender such that the multicast is cancelled when a receiver becomes disabled after sending an ACK-message but before the official release time;

generating a cancellation notice by the sender which has learned the failure of the receiver from local or remote fault detectors; and

performing a cancellation step by all intended healthy receivers and the healthy sender before the official release time.

14. An improvement in a computer network including a plurality of receivers in a multicast session comprising:

means for transmitting a multicast message from a sender to said plurality of receivers through said computer network;

means for processing the received multicast message in said plurality of receivers only after a time defined as the official release time, which is chosen and sent to every receiver by the sender such that the multicast is cancelled when the receiver becomes disabled after sending an ACK-message but before the official release time;

means for generating a cancellation notice by any member;

means for performing a cancellation step by all intended healthy receivers and the healthy sender before the official release time; and

means for terminating a multicast session at an official release time associated with a multicast message with every member of a multicast group, including a sender and every intended receiver, by letting a receiver decide at the official release time that a multicast session has been successfully completed when all of the following conditions are met:

(i) neither the receiver nor a local communication manager has received any fault detection report from local or remote fault detectors, or where the receiver or local communication manager has received fault detection reports from the local and/or remote fault detectors, but judged that the faults detected could not have impacted the correctness of the multicast; and

(ii) the receiver has received the multicast message and returned an ACK-message; and

(iii) the receiver has not received any cancellation notice from the sender.

15. An improvement in a computer network including a plurality of receivers in a multicast session comprising:

means for transmitting a multicast message from a sender to said plurality of receivers through said computer network;

means for processing the received multicast message in said plurality of receivers only after a time defined as the official release time, which is chosen and sent to every receiver by the sender such that the multicast is cancelled when the receiver becomes disabled after sending an ACK-message but before the official release time;

means for generating a cancellation notice by any member;

means for performing a cancellation step by all intended healthy receivers and the healthy sender before the official release time; and

means for terminating a multicast session at an official release time associated with the multicast message with every member of the multicast group, including the sender and every intended receiver, by letting the sender decide at the official release time that a multicast session has been successfully completed when all of the following conditions are met:

(i) neither the sender nor the local communication manager has received any fault detection report from the local or remote fault detectors, or where the sender or the local communication manager has received fault detection reports from the local and/or fault detectors, but judged that the faults detected could not have impacted the correctness of the multicast about to be concluded; and

(ii) the sender has received an ACK-message from every intended receiver.

16. An improvement in a computer network including a plurality of receivers in a multicast session comprising:

means for transmitting a multicast message from a sender to said plurality of receivers through said computer network;

means for processing the received multicast message in said plurality of receivers only after a time defined as the official release time, which is chosen and sent to every receiver by the sender such that the multicast is cancelled, when the sender becomes disabled before it can confirm the success of the multicast;

means for generating a cancellation notice by any healthy member;

means for performing a cancellation step by all intended healthy receivers and the healthy sender before the official release time; and

means for terminating a multicast session at an official release time associated with a multicast message with every member of a multicast group, including a sender and every intended receiver, by letting a receiver decide at the official release time that a multicast session has been successfully completed when all of the following conditions are met:

(i) neither the receiver nor a local communication manager has received any fault detection report from local or remote fault detectors, or where the receiver or local communication manager has received fault detection reports from the local and/or remote fault detectors, but judged that the faults detected could not have impacted the correctness of the multicast; and

(ii) the receiver has received the multicast message and returned an ACK-message; and

(iii) the receiver has not received any cancellation notice from the sender.

17. An improvement in a computer network including a plurality of receivers in a multicast session comprising:

means for transmitting a multicast message from a sender to said plurality of receivers through said computer network;

means for processing the received multicast message in said plurality of receivers only after a time defined as the official release time, which is chosen and sent to every receiver by the sender such that the multicast is cancelled, when the sender becomes disabled before it can confirm the success of the multicast;

means for generating a cancellation notice by any healthy member;

means for performing a cancellation step by all intended healthy receivers and the healthy sender before the official release time; and

means for terminating a multicast session at an official release time associated with the multicast message with every member of the multicast group, including the sender and every intended receiver, by letting the sender decide at the official release time that a multicast session has been successfully completed when all of the following conditions are met:

(i) neither the sender nor the local communication manager has received any fault detection report from the local or remote fault detectors, or where the sender or the local communication manager has received fault detection reports from the local and/or fault detectors, but judged that the faults detected could not have impacted the correctness of the multicast about to be concluded; and

(ii) the sender has received an ACK-message from every intended receiver.

Assignments (5)
CORRECTION TO THE RECORDATION COVERSHEET OF THE CONFIRMATORY LICENSE RECORDED AT REEL/FRAME 12849/867 ON 04/25/2002 Recorded Sep 15, 2011
From: THE REGENTS OF THE UNIVERSITY OF CALIFORNIA
To: NAVY, SECRETARY OF THE UNITED STATES
Reel/Frame 026915/0471 →
NUNC PRO TUNC ASSIGNMENT Recorded Aug 15, 2011
From: KIM, JIN
To: THE REGENTS OF THE UNIVERSITY OF CALIFORNIA
Reel/Frame 026749/0536 →
CONFIRMATORY LICENSE Recorded Jun 28, 2011
From: UNIVERSITY OF CALIFORNIA
To: NATIONAL SCIENCE FOUNDATION
Reel/Frame 026510/0992 →
CONFIRMATORY LICENSE Recorded Apr 25, 2002
From: THE REGENTS OF THE UNIVERSITY OF CALIFORNIA
To: NAVY, SECRETARY OF THE UNITED STATE
Reel/Frame 012849/0867 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 27, 2001
From: KIM, KWANG H.
To: REGENTS OF THE UNIVERSITY OF CALIFORNIA, THE
Reel/Frame 012031/0717 →
Continuity (2)
Provisional Application 6022182900 · Jul 28, 2000
Related Publication 20020018484A1 · Feb 14, 2002