home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #27 / NN_1992_27.iso / spool / comp / sys / stratus / 77 < prev    next >
Encoding:
Internet Message Format  |  1992-11-19  |  12.4 KB

  1. Path: sparky!uunet!think.com!rpi!bu.edu!transfer.stratus.com!transfer.stratus.com!usenet
  2. From: dan@az.stratus.com (Dan Danz)
  3. Newsgroups: comp.sys.stratus
  4. Subject: Stratus Fault Tolerant Architecture
  5. Keywords: FT duplex fault-tolerant Stratus architecture
  6. Message-ID: <1ej8jgINN5vn@transfer.stratus.com>
  7. Date: 20 Nov 92 17:51:44 GMT
  8. Organization: Stratus Computer Inc, Marlboro MA
  9. Lines: 212
  10. NNTP-Posting-Host: bittersprings.az.stratus.com
  11.  
  12. Recent  discussions  in  this   group about   the   Stratus approach to fault
  13. tolerance include  over-simplified close guesses,  and some downright slanted
  14. information provided by employees of competing vendors who have their own axe
  15. to grind
  16.  
  17. So I  thought I'd try to  present a brief  explanation  of  the Stratus fault
  18. tolerant (FT) architecture  from the perspective  of a Stratus  engineer (who
  19. else  knows   the product better?).    In  most   cases,  I'll  use   Stratus
  20. terminology;     however,  interested  readers    should  note   that Stratus
  21. architecture systems are also marketed by  business partners such as IBM (who
  22. calls it the System/88), Olivetti (CPS/32), et al.
  23.  
  24. The basic component of a Stratus  system is a  "module", a complete computer.
  25. Each module is bus-oriented, and contains one or more processor  board pairs,
  26. one  or more memory  board pairs, and  pairs of  I/O controllers connected to
  27. various peripheral  devices, including   disks,  tapes,   and  communications
  28. interfaces.   A module contains  its own  redundant power  supplies,  battery
  29. backup  subsystem, and  various card  cages for  I/O  line adapters  and  I/O
  30. controlling logic.
  31.  
  32. BASIC MODULE BUS:
  33.  
  34. The major boards of a Stratus module interface with the  StrataBUS, which has
  35. 32 logical slots implemented in various models with varying numbers (6-40) of
  36. physical slots.  Even-numbered slots derive  power  from a subsystem that  is
  37. totally independent of the power subsystem used by  odd-numbered slots of the
  38. bus, allowing a module to survive the complete failure of either of its power
  39. subsystems.  Each board regulates   its own power, thus   it  is  possible to
  40. remove and insert boards  while the bus  is  fully powered and the system  is
  41. operating.  No components  of  the  system need to  be disabled to  remove or
  42. insert a board.
  43.  
  44. The StrataBUS is a synchronous bus.  The system clocking  function drives all
  45. circuitry in the system  and is distributed  using a single bus  signal.  The
  46. source of this clock is a component that has been engineered for  a very high
  47. Mean Time Between  Failure  (MTBF); nevertheless,  a fully-duplexed redundant
  48. clock option is available.
  49.  
  50. Nearly every signal on  the bus  is duplicated.  The   bus is  viewed  as two
  51. independent buses, "A" and  "B",  each   with its  own power,  ground,  data,
  52. address, and control lines.  Parity protects the lines of each bus.
  53.  
  54. Each major system board simultaneously interfaces with both  buses.   A board
  55. drives the same data on both buses and reads data from both buses if they are
  56. both enabled.  (The hardware automatically instructs  all  boards to ignore a
  57. suspect bus.)
  58.    
  59. SYSTEM BOARDS:
  60.  
  61. The boards that interface to the StrataBUS have several common features.
  62.  
  63. First,  they all operate synchronously  at a  simple  multiple of  the common
  64. system frequency.
  65.  
  66. Second, all boards are  self-checking and  auto-isolating.  The boards  check
  67. themselves for component errors on every clock  tick and  will not place data
  68. on the bus if a  board finds  itself to  be in  error.  This self-checking is
  69. typically performed by  duplicating the logic on  the board and  running both
  70. sets of  logic  independently  but   synchronously.  The outputs   of   these
  71. independent logic networks then run through on-board comparator circuits that
  72. enable/disable the bus drivers.  The self-checking logic automatically causes
  73. a board to "break".  When a  broken board breaks, a red  LED  on the front of
  74. the board lights to identify it.  A  broken board never  drives data onto the
  75. buses.
  76.  
  77. Third, each board must provide its own power regulation (see below).
  78.  
  79. Fourth, each board is  self-identifying, providing system software with coded
  80. information describing  the board's type,  the  revision  level of  the board
  81. circuitry and of  the PROM  software on  the board,  and a  limited amount of
  82. repair history.  This information  is critical to the  software  that  places
  83. re-inserted boards on-line.  If the boards are incompatible, the  system does
  84. not accept the new board.
  85.  
  86. Fifth, all boards that interface to the  StrataBUS must obey  a set of common
  87. interface conventions used by the Stratus maintenance and diagnostic software
  88. for testing, initializing, and  enabling boards in the system.   One specific
  89. requirement  is   that  both  halves   of    a board   must    behave totally
  90. deterministically.   Any logic must progress from  state to  state  with each
  91. clock  tick in a  deterministic manner.  In  particular, "don't care"  states
  92. (bits that can harmlessly assume either a zero or one)  are not allowed since
  93. they might present conflicting values to the comparator logic.
  94.  
  95. Boards within a Stratus system nearly always occur in pairs.  Such boards are
  96. referred to  as "partners".  Major  boards operate  in two  ways:  either  in
  97. synchronous  lockstep with a  partner board, or  only logically paired with a
  98. partner board.
  99.  
  100. When   operating  in  lockstep,   proprietary Stratus  hardware  and software
  101. synchronize  both self-checking boards  of the pair;  thus both boards (for a
  102. total of  four sets of logic)  do exactly the  same thing  on any bus  cycle.
  103. This  imposes another   requirement for totally deterministic behavior,  this
  104. time between partners.
  105.  
  106. Two boards  running in synchronous  lockstep  read the same  values  from the
  107. StrataBUS simultaneously.  For  example, two client partner  boards ask for a
  108. bus cycle at exactly  the same time (on  the same  cycle) by  asserting their
  109. intention to use  the bus.  If the bus  arbitration network grants the bus to
  110. the pair of boards, they  both place the address for  a read or write on  the
  111. bus  at the next  clock  tick.  Two  ticks later, the clients  boards  or the
  112. responding boards - usually memory controllers  - place the  data on the bus.
  113. The data is taken off the bus one tick later.
  114.  
  115. Boards that interface with devices such as disks,  tapes, and the StrataLINK,
  116. operate in a logically  paired state.   Such boards  are not  synchronized in
  117. lockstep with their partner; rather, they  rely on operating  system software
  118. for an equivalent function.  Nevertheless, the two halves of each  board must
  119. be synchronized and continue to  conform to the self-checking, auto-isolation
  120. paradigm.
  121.  
  122. Disk mirroring with dedicated disk controllers uses this logical pair method.
  123. Software ensures that mirrored disks contain  duplicate, consistent copies of
  124. data.  This software is completely invisible and  inaccessible to application
  125. code  (and most  operating  system   code) and  therefore  need not   concern
  126. developers.
  127.  
  128. Certain    pairs  of   boards    perform  "reflexive checking":    interboard
  129. communications to guarantee that they  are synchronized.  If  the  boards get
  130. out of synchronization, one  of them  is forced off-line automatically by the
  131. hardware  so that  the board's signals,  which are  ORed on  the bus,  do not
  132. confuse other boards  in the system.  (For  one processor board  product, the
  133. designers called it the T/A (transaction analysis) function - "I'm okay, your
  134. okay". :-) )
  135.  
  136. All  memory boards  monitor the bus  for  problems with  the bus transceivers
  137. themselves, a  type of failure that  cannot be  detected by on-board checking
  138. logic.
  139.  
  140. BOARD FAILURE:
  141.  
  142. When a component fails, the failing  board automatically drops  out while its
  143. partner continues to run.  The partner does not  "take over" as would be case
  144. with a backup component; instead, it continues the actions  it was performing
  145. synchronously  with  its partner.  One   board rather  than  two is supplying
  146. signals to (and responding to  requests from) the  StrataBUS.  If the  failed
  147. board was not running in lockstep  with a partner,  then the operating system
  148. effectively  hides  the   unavailability    of the   failed board   from  the
  149. application.
  150.  
  151. When a failed board is off-line, the system recalculates the boards MTBF.  If
  152. the MTBF threshold is exceeded, the board is marked  for replacement, and the
  153. Remote Service Network (RSN)  is invoked to report the  failure to a  Stratus
  154. Customer Assistance Center (CAC); otherwise, the board  performs  a series of
  155. self tests.  If it  fails  these tests, the failure is  not transient and the
  156. replacement  process is initiated.  If the  board passes these self tests, it
  157. is   either re-duplexed with its   partner board (for  lockstep partners)  or
  158. logically brought back into service.
  159.  
  160. POWER SUBSYSTEM:
  161.  
  162. Each power supply has an associated  battery backup system that works  in two
  163. modes: it either powers all boards  within the module, or  it powers only the
  164. memory boards.  The system reaction to  powerfail is to  ride through up to 6
  165. seconds of AC power loss.  In 90% to 95% of all power failures, power returns
  166. within a  few  seconds, which  case the  system simply  continues what it was
  167. doing.  After the ride through time expires, the system quiesces  all boards,
  168. saves information needed  to restart them in  main memory, and supplies power
  169. only to the main memory boards.  In this mode, the system is not operational,
  170. but its complete state is preserved.  If power is  restored with  an  hour or
  171. two (depending on the size of the memory and the state of the batteries), the
  172. system   software restores the  system   to its  state  at the time of power
  173. interruption.
  174.  
  175. ARCHITECTURE TRADEOFFS
  176.  
  177. The entire Stratus architecture reflects  tradeoffs between simplicity,  ease
  178. of maintenance, lifetime  system costs,   logistics concerns, and  technology
  179. trends on one hands, and slight increases in product cost  on the other hand.
  180. The resulting products clearly justify such tradeoffs.
  181.  
  182. First, the Stratus solution requires more hardware.  Any truly fault-tolerant
  183. system  requires more  hardware  than a  conventional system,  but  a Stratus
  184. systems needs, in some cases,  four times the  amount of  hardware.  However,
  185. the cost  of   hardware - primarily   logic   chips  -   that   Stratus  must
  186. quadruplicate is low  and is decreasing, becoming a  less significant part of
  187. the total cost  of  a computer  system,  particularly  when measured over the
  188. lifetime of the system.   The components with  the most  significant hardware
  189. costs - mainly on-line memory and peripherals - need only be  duplicated (or,
  190. in   the cases  of   disks, made   redundant  in some    way), and any  truly
  191. fault-tolerant computer has these same requirements.
  192.  
  193. Second, to  design circuits that use Stratus  concepts,  logic chips  must be
  194. totally deterministic, something  that is becoming less  of a problem as chip
  195. manufacturers become aware of the requirement.
  196.  
  197. Third, since the logic  circuits depend on  total  synchronization,  anything
  198. that detracts from this can be  a potential problem.   The primary sources of
  199. difficulty in this area are new revisions of chips (new  mask, usually to fix
  200. bugs).   Chips that behave slightly  differently  from earlier  revisions are
  201. harmless to all other architectures, but to the Stratus architecture they can
  202. be  devastating.   If the   differing chips   are  on the  same   board,  the
  203. self-checking logic detects  it and  the board (as we say)  "red lights".  If
  204. the differing  chips are on  separate boards, the cannot  be  synchronized or
  205. cannot  stay synchronized.    Therefore  Stratus must  be  sensitive  to  the
  206. revision level of chips that are placed on boards.
  207.  
  208. I took most of the above information from "Stratus Technical Report TR-1: The
  209. Stratus Architecture", and I've only touched the surface of it.  There's lots
  210. more  information   (and drawings)  in  the document:   System Design  Goals,
  211. Corporate Product Strategy, Issues  of  Fault Tolerance,  System Architecture
  212. Overview, Recovery Scenarios, Stratus Software, and Service Strategies.  This
  213. marvelous, 20-page, very technical discussion of the architecture was derived
  214. from a  technical paper written by  Steve  Webber, a Stratus  pioneer, and is
  215. available to interested persons from  any  Stratus sales office.  Recommended
  216. reading.
  217.  
  218. --
  219. L. W. "Dan" Danz     (WA5SKM)     VOS Mail:  Dan_Danz@vos.stratus.com
  220. Sr Consulting Software SE         NeXT Mail: dan@az.stratus.com
  221. Customer Assistance Center        Voice Mail/Pager: (602) 852-3107
  222. Telecommunications Division       Customer Service: (800) 828-8513
  223. Stratus Computer, Inc. 4455 E. Camelback #115-A, Phoenix AZ 85018
  224.