home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #20 / NN_1992_20.iso / spool / comp / sys / isis / 244 < prev    next >
Encoding:
Text File  |  1992-09-11  |  2.5 KB  |  58 lines

  1. Newsgroups: comp.sys.isis
  2. Path: sparky!uunet!decwrl!wupost!zaphod.mps.ohio-state.edu!caen!batcomputer!cornell!ken
  3. From: ken@cs.cornell.edu (Ken Birman)
  4. Subject: A secret option to [acfm]bcast_l...
  5. Message-ID: <1992Sep11.123817.14446@cs.cornell.edu>
  6. Organization: Cornell Univ. CS Dept, Ithaca NY 14853
  7. Date: Fri, 11 Sep 1992 12:38:17 GMT
  8. Lines: 48
  9.  
  10. A few people in a row have sent me email asking how to disable the
  11. Isis causality property selectively.
  12.  
  13. For example, suppose that your application has groups A and B and
  14. that activity in A is totally independent of activity in B (A and
  15. B could even be classes of groups).  
  16.  
  17. Normally, if m1 is a cbcast in A, m2 in B, and m3 in A, then
  18. Isis will go to some trouble to figure out if m1 -> m2 -> m3 (causal
  19. relationship) and some expense to ensure that m1 is delivered before
  20. m2 which is delivered before m3 at destinations these have in common.
  21.  
  22. Normally, this is what you would want.  
  23.  
  24. However, there may be times when you KNOW that m2 is independent of
  25. m1, m3 and don't want to allow such a causal chain to be detected and
  26. enforced because of cost implications.  Perhaps, m2 is an advisory
  27. message concerning system overload and needs to get through promptly,
  28. even if it violates causality in group A to do so.
  29.  
  30. Two new options are available in V3.0.6/V2.2.6 in support of this
  31. possibility.  They are specified by including "NO" in the options
  32. list to a long-form broadcast, as in cbcast_l("NOx", ....)
  33.  
  34.   - Option "N" means don't block for flow control: No flow control.
  35.     (In fact, this is just advisory and Isis might block anyhow)
  36.         since if we don't do any flow control, UNIX might lose a lot of
  37.         data.
  38.   - Option "O" means don't enforce causality when switching groups.
  39.        So, m1 -> m2 iff: (sent in the same group) or (sent with "O" not
  40.        specified and sent in different groups).
  41.  
  42. The highest performance architecture for many applications is to build
  43. a lot of overlapped groups, one per (possible-sender,destination-set) pair,
  44. and then use cbcast_l("NOx", ..., 0) -- asynchronous optimistic, non-flow
  45. controlled cbcast, excluding the sender.  
  46.  
  47. These options also work for abcast, fbcast and even mbcast.  However, O
  48. is a no-op on the latter two sorts of multicasts, which don't respect
  49. causality in any case.
  50.  
  51. A warning: don't use these options unless you understand causality...
  52.  
  53.  
  54. -- 
  55. Kenneth P. Birman                              E-mail:  ken@cs.cornell.edu
  56. 4105 Upson Hall, Dept. of Computer Science     TEL:     607 255-9199 (office)
  57. Cornell University Ithaca, NY 14853 (USA)      FAX:     607 255-4428
  58.