Patent US830046A successfully refreshed from Google Patents.
Patent US4569015A successfully refreshed from Google Patents.
← Back to Patent Explorer
US4569015A Expired / Lapsed US ⏱️ 0.0 years remaining

Method for achieving multiple processor agreement optimized for no faults

Assignee: International Business Machines Corp
•
Filing: 1983-02-09
•
Granted: 1986-02-04
•
Expires: 2003-02-09
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract An originating processor broadcasts a value in a message with its unforgeable signature to all n active processors, including itself. Receiving processors in the network pass such a message on with their own unforgeable signatures to all active processors, including themselves. If the number of signatures and phases is the same at each processor after the first two successive passings, then agreement as to the value with no fault is indicated, otherwise if after two passings, (t+1) signatures have been collected, then these are signed and sent in the third passing, and in any case, each processor continues the steps of repeatedly sending messages when received, and appending its signature until t+2 passings have occurred. At that time, a processor will agree to the value if at least (t+1) signatures append the message, otherwise a default value is adopted, t (n/2) being a reliability measure.

Inventors

  • 👤 Danny Dolev
  • 👤 Hovey R. Strong

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-24 22:07
CPC Classifications
G; G06; G06F; G06F11/00; G06F11/07; G06F11/16; G06F11/18; G06F11/182; G06F15/00; G06F15/16; G06F15/161

Claims Analysis

Total Claims: 5
Claim 1
Independent Claim 234 words
A method for achieving agreement among n processors to the same value arising out of a series of message passings originated by one of said processors, the processors being arranged in a reliable (t+1)-connected network, the number of message passings required to achieve agreement being small in the absence of faults, and having an upper bound where the number of faults t is less than (n/2), comprising the steps of: (a) broadcasting a value message by an originating processor with its unforgeable signature to all active processors including itself during a first message passing; (b) each receiving active processor passing such a message on and appending its own unforgeable signature thereto to all other active processors including itself during a second message passing; and (c) each active processor agreeing to the message value and stopping at the end of the first two message passings if every active processor has signed, and (1) if the number of signatures is at least (t+1), but not unanimous, signing and sending the message with the (t+1) signatures, and (2) each processor not stopped by receiving a message having a unanimous number of signatures, thereby continuing the steps of: (2.1) repeatedly sending messages when received, and (2.2) appending its signature thereto until (t+2) message passings have occurred, at this time either agreeing to the value if at least (t+1) signatures append the message, or otherwise assuming a default value.
Claim 2
Independent Claim 234 words
A method for achieving agreement among n processors to the same value arising out of a series of message passings originated by one of said processors, the processors being arranged in a reliable (t+1)-connected network, the number of message passings required to achieve agreement being small in the absence of faults, and having an upper bound where the number of faults t is less than (n/2), comprising the steps of: (a) broadcasting a value message by an originating processor with its unforgeable signature to all active processors including itself during a first message passing; (b) each receiving active processor passing such a message on and appending its own unforgeable signature thereto to all other active processors including itself during a second message passing; and (c) each active processor agreeing to the message value and stopping at the end of the first two message passings if every active processor has signed, and (1) if the number of signatures is at least (t+1), but not unanimous, signing and sending the message with the (t+1) signatures, and (2) each processor not stopped by receiving a message having a unanimous number of signatures, thereby continuing the steps of: (2.1) repeatedly sending messages when received, and (2.2) appending its signature thereto until (t+2) message passings have occurred, at this time either agreeing to the value if at least (t+1) signatures append the message, or otherwise assuming a default value.
Claim 3
Dependent Claim 30 words
A method according to claim 1, wherein each generated message includes an agreement identifier (AI), a time of generation (TG), a message value (v) and at least one appended signature.
Claim 4
Dependent Claim 17 words
A method according to claim 1, wherein each processor includes at least broadcast and Byzantine Agreement monitors.
Claim 5
Independent Claim 246 words
A method according to claims 1, 2, and 3, wherein each processor executing its broadcast monitor is responsive to messages for the first two passings, and includes the further steps of: ascertaining the current time (CT) and number of signatures (s) of the message being processed; comparing CT with TG and either discarding the message if CT is greater than TG plus a predetermined minimum, or accessing an ordered list of bases; ascertaining whether the message agreement identifier is the same as that of a prestored message termed a base in the list, if not, and if twice determining that the message value is not the same as the base value, discarding said message, or in the event that there is no base in the list, storing the current message as the base; upon the current message being stored as the base, determining whether the number of signatures is not equal to two, signing and sending the base to all other processors, or, if the number of signatures is two, terminating the monitor execution; upon the current message value v being the same as the base value, determining whether the base has been marked, and if so, marking it "discard", otherwise updating the signatures at the base and storing in the list; if the number of signatures in unanimous, and CT is less than TG+2, marking the base as being agreed and adopting the agreement value, otherwise marking the base distinctively and adopting the default value.

References Cited (Backward Citations)

US4030072A Cited
US4174536A Cited
US4276594A Cited
US4325120A Cited
US4354225A Cited
US4418384A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1989-02-03 1989-08-05 1990-02-04 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 1993-02-03 1993-08-05 1994-02-04 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 1997-02-03 1997-08-05 1998-02-04 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag