home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #19 / NN_1992_19.iso / spool / comp / sys / isis / 227 < prev    next >
Encoding:
Text File  |  1992-08-28  |  6.1 KB  |  130 lines

  1. Newsgroups: comp.sys.isis
  2. Path: sparky!uunet!usc!rpi!batcomputer!cornell!ken
  3. From: ken@cs.cornell.edu (Ken Birman)
  4. Subject: Re: Clusters, sites and scope in Isis
  5. Message-ID: <1992Aug28.143603.8841@cs.cornell.edu>
  6. Organization: Cornell Univ. CS Dept, Ithaca NY 14853
  7. References: <barry.714977123@citr.uq.oz.au>
  8. Date: Fri, 28 Aug 1992 14:36:03 GMT
  9. Lines: 119
  10.  
  11. In article <barry.714977123@citr.uq.oz.au> barry@citr.uq.oz.au (Barry Kitson) writes:
  12. >Hi all,
  13. >
  14. >    Is it correct that an Isis cluster is a collection of
  15. >sites with identical "sites" files (i.e. that share the same
  16. >backbone)?
  17.  
  18. Right.
  19.  
  20. >    Since the name server is built into the backbone (right?), 
  21. >does this mean that process (group) names are relative to a cluster?
  22.  
  23. Yes, thats right.
  24.  
  25. >    How does the application programmer communicate between
  26. >clusters and how are names specified?
  27.  
  28. You need to use the wide-area network support that we have built into
  29. NEWS or the spooler/long-haul subsystem, the latter being at a lower
  30. level then the former.  Warning: we have discovered that one of our
  31. hackers introduced a number of problems into the spooler/WAN stuff
  32. right before V3.0.6 went out, and if you need to use this in a serious
  33. way you should contact us for a patch.  V3.0.7 will fix this, and in
  34. fact we are planning to reimplement that part of ISIS for V3.0.7 or
  35. V3.0.8, in order to improve performance and scaling.  (The interfaces
  36. may be extended but we will continue to support the current ones).
  37.  
  38. >    What is "scope" as defined in the sites file?  (Warning --
  39. >This could be a dumb question.)
  40.  
  41. Scope is an old notion that we no longer really support.  ISIS V2.1
  42. had the "backbone" on every machine.  So, you could get situations
  43. in which the ISIS name server was running on 100 sites.  Say that a
  44. process does a pg_lookup on a name that it has never mentioned before.
  45. Potentially, ISIS needs to search 100 sites for the location of the
  46. group -- a costly search.  Actually, we do a little better (see below)
  47. but not always.
  48.  
  49. Now, one could use various hashing schemes to fix this, but as time
  50. went by we realized that most ISIS backbones would have a small number
  51. of sites, because we were adding the BYPASS code even back when V2.1
  52. was released.  So... in V1.3.1 we supported a notion of scope: if you
  53. searched for group name "@a:name" we would confine the search to sites
  54. that listed "a" in their scope list.  In V2.2/V3.0, however, we
  55. eliminated scope completely.  For backwards compatibility we left
  56. the scope file in the sites file, and so that this isn't a complete
  57. waste we actually have a procedure to get the scope value for a site,
  58. the idea being that you could put some architectural data in these
  59. fields or something.  By now, the whole thing is basically vestigal,
  60. though -- people put the equivalent of a comment in the scope part
  61. of the sites file, and I doubt that anyone ever tries to query this
  62. data.  And, if an old V1.3.1 program actually gets run, ISIS complains
  63. about the notation @a:name, when it sees it used.
  64.  
  65. The key point is that with three or four machines in the backbone,
  66. searching them for a group name is just not a big deal...
  67.  
  68. >    While I'm on a roll, I have a few other dumb questions:
  69. >
  70. >    If an RPC can't find an interface reference (or whatever
  71. >Isis calls them) in the local cache, is a request made to all sites
  72. >in the backbone, or just one of them?  If only one, will it usually
  73. >have a copy of this info, or will it have to ask others?  (i.e. is
  74. >this data replicated at each backbone site?)
  75.  
  76. Well, what we really do is this.  If the local backbone has an attached
  77. process that belongs to the group ("interface reference") then we do an
  78. RPC to the local backbone and get back the ISIS group address.
  79.  
  80. If this fails because the local backbone doesn't know the group, we
  81. send the request to all sites.  
  82.  
  83. This is for mapping from an ascii group name to an ISIS address, so
  84. it doesn't happen a lot.
  85.  
  86. Now, if the request is a pg_getview -- e.g. we have the group address
  87. and need to find out who is in the group -- the search is much
  88. cheaper.  Group addresses contain the site at which the group was
  89. first created, so we have a good hint for a place to check for a
  90. copy of the membership.  We don't search the whole backbone unless
  91. this pans out.
  92.  
  93. But, in the limit, we still end up doing an asynchronous multicast
  94. to all sites, taking the first ``positive'' answer that comes back.
  95.  
  96. >
  97. >    Are there any products which allow interworking of Isis with
  98. >other similar systems? 
  99. >
  100.  
  101. There are no other similar *products*, yet.  There are some message
  102. backplanes and there is an ISO MIB standard, and we do plan to support
  103. the latter and could probably integrate ISIS with some of the former.
  104. If someone needs this and would be ready to invest the necessary
  105. resources, it shouldn't be hard to develop gateways.  But, in terms
  106. of the overall notion of group programming, the only other systems
  107. that exist are for research: V, Ameoba, TRANSIS, Psync -- and only
  108. TRANSIS among these uses an ISIS-like process-group execution model.
  109. But, TRANSIS is still an an academic research prototype stage (Danny
  110. Dolev's group is developing it at Hebrew University in Israel).
  111. Among the others in this list, Ameoba is the most active but
  112. there are significant differences between the way that Ameoba groups
  113. work and the way that ISIS groups work.
  114.  
  115. There are some products that are not similar, of course, such as
  116. DecMessageQ, Teknekron's TIB, and perhaps even ToolTalk and NewWave.
  117. But, the former two systems have a very different programming model --
  118. nothing like the ISIS group-oriented tools.  And, the fault-tolerance
  119. guarantees are different -- neither supports a strong ordering model
  120. where independent programs are guaranteed to see things in a virtually
  121. synchronous manner.  As for ToolTalk and NewWave, these both lack
  122. support for fault-tolerant distributed programming or object groups,
  123. and we are giving serious thought to integrating Isis with them.
  124. But, so far, we haven't started to do anything about this.
  125.  
  126. -- 
  127. Kenneth P. Birman                              E-mail:  ken@cs.cornell.edu
  128. 4105 Upson Hall, Dept. of Computer Science     TEL:     607 255-9199 (office)
  129. Cornell University Ithaca, NY 14853 (USA)      FAX:     607 255-4428
  130.