
The following paper was originally published in the Proceedings of the USENIX Symposium on Internet Technologies and Systems Monterey, California, December 1997 Salamander: A Push-based Distribution Substrate for Internet Applications G. Robert Malan, Farnam Jahanian, and Sushila Subramanian University of Michigan For more information about USENIX Association contact: 1. Phone: 510 528-8649 2. FAX: 510 548-5738 3. Email: [email protected] 4. WWW URL:http://www.usenix.org/ Salamander: A Push-based Distribution Substrate for Internet Applications G. Rob ert Malan, Farnam Jahanian Sushila Subramanian Department of EECS School of Information University of Michigan University of Michigan 1301 Beal Ave. 550 East University Ave Ann Arbor, Michigan 48109-2122 Ann Arbor, Michigan 48109-1092 frmalan,[email protected] [email protected] Abstract 1 Intro duction The availability of ubiquitous network connec- The Salamander distribution system is a wide- tions in conjunction with signi cant advances in area network data dissemination substrate that has hardware and software technologies have led to the b een used daily for overayear by several group- emergence of a new class of distributed applications. ware and web casting Internet applications. Sp eci - The Salamander data distribution substrate pro- cally, Salamander is designed to supp ort push-based vides the systems supp ort needed for two of these applications and provides a variety of delivery se- applications: groupware and web casting. Partic- mantics. These semantics range from basic data de- ipants in these wide-area distributed applications livery, used by the Internet Performance Measure- vary in their hardware resources, software supp ort ment and Analysis IPMA pro ject, to collab ora- and quality of connectivity[11]. In an environment tive group communication used by the Upp er At- such as the Internet they are connected by network mospheric Research Collab oratory UARC pro ject. links with highly variable bandwidth, latency, and The Salamander substrate is designed to accom- loss characteristics. In fact, the explosive growth of mo date the large variation in Internet connectivity the Internet and the proliferation of intelligent de- and client resources through the use of application- vices is widening an already large gap b etween these sp eci c plug-in mo dules. These mo dules provide a memb ers. These conditions make it dicult to pro- means for placing application co de throughout the vide a level of service that is appropriate for every distribution network, thereby allowing the applica- memb er of a collab oratory or web casting receiver. tion to resp ond to network and pro cessor resource Web casting applications use push technology to constraints near their b ottlenecks. The delivery send data from network servers to client machines. substrate can b e tailored by an application for use In group collab oratories, p eople from a global p o ol with a heterogeneous set of clients. For example the of participants come together to p erform work or IPMA and UARC pro jects send and receive data take part in meetings without regard to geographic from: Java applets and applications; Perl, C and lo cation. A distributed collab oratory provides: 1 C++ applications; and Unix and Windows 95/NT human-to-human communications and shared soft- clients. This pap er illustrates the architecture and ware to ols and workspaces; 2 synchronized group design of the Salamander system driven by the needs access to a network of data and information sources; of its set of current applications. The main archi- and 3 remote access and control of instruments for tectural features describ ed include: the data distri- data acquisition. A collab oratory software environ- bution mechanism, p ersistent data queries, negoti- ment includes to ols such as whiteb oards, electronic ated push-technology, resource announcement and noteb o oks, chat b oxes, multi-party data acquisition discovery, and supp ort for Application-level Qual- and visualization software, synchronized informa- ity of Service p olicies. tion browsers, and video conferencing to facilitate e ectiveinteraction b etween disp ersed participants. This work is supp orted by the National Science Foun- Akey challenge for the designers of wide-area col- dation under the co op erative agreement IRI-92-16848 and a lab oratories is the creation of scalable distribution generous gift from the Intel Corp oration. and dissemination mechanisms for the shared data. transparently connect di erent p ortions of a wide- area application. This connectivityisachieved The Salamander substrate provides supp ort for through the use of a channel subscription service. b oth web casting and groupware applications by pro- Second, Salamander allows for the addition of appli- viding virtual distribution channels in an attribute- cation plug-in mo dules along the distribution path based data space. In a Salamander system, a tree of to allowforavariety of data mo di cations and deliv- distribution no des servers can b e dynamically con- ery decisions. The remainder of the pap er will fur- structed to provide p oints of service into the data ther describ e the Salamander substrate. Section 2 space. Clients can connect to this tree to b oth pub- provides background material on Salamander's cur- lish and subscrib e to data channels. The data is rent applications. Section 3 enumerates the main ar- pushed from suppliers to the clients through the dis- chitectural features. Section 4 provides an overview tribution tree. Opaque data ob jects are constructed of the Salamander application programming inter- by clients that are describ ed using text-based at- face API as well as describ es its administration tribute lists. Clients provide p ersistent queries to and security features. Section 5 gives b oth a quali- the Salamander substrate using attribute expres- tative and quantitative p erformance evaluation. Fi- sions that represent the data ows they wish to re- nally, in Section 6 we conclude and describ e our cur- ceive, thereby subscribing to a virtual data chan- rent and future researchinterests. nel. Salamander connections are rst-class ob jects and are addressable if desired. This addressability allows for feedback from subscrib ers to data pub- lishers. Additionally, Salamander allows for plug-in 2 Application Domain mo dules at any p oint in the distribution tree for ap- plication co de to a ect the data distribution. These The Salamander substrate currently supp orts two plug-in mo dules provide the mechanism to supp ort applications with diverse needs: the UARC and application-level Quality of Service p olicies. IPMA pro jects. The Upp er Atmospheric Research Although the terminology is relatively new, Push Collab oratory UARC[3, 17] is a distributed sci- technologies have b een around for manyyears. The enti c collab oratory over the Internet. The UARC seminal push technology is electronic mail . Email pro ject is a multi-institution research e ort, whose has b een pushed from publisher to subscrib ers for fo cus is the creation of an exp erimental testb ed decades through mailing lists. Moreover, USENET for wide-area scienti c collab oratory work. The news[9] has b een used to push data ob jects arti- UARC system provides a collab oratory environment cles based on text attributes group names. Ex- in which a geographically disp ersed communityof tending netnews, the SIFT to ol[18] has b een used space scientists p erform real-time exp eriments at to redistribute netnews articles based on text-based a remote facilities, in lo cations such as Greenland, user pro les. Atalower level the combination Puerto Rico, and Alaska. Essentially, the UARC of nativeIPmulticast supp ort and sp eci c Mb one pro ject enables this group to conduct team science [5] routers provides a mechanism for the push of without ever leaving their home institutions. These IP datagrams throughout p ortions of the Internet. scientists p erform exp eriments on remote instru- Multicast datagrams are pushed based on a single ments, evaluate their work, and discuss the exp eri- attribute, namely the IP multicast group address. mental results in real-time over the Internet. This Recently, many commercial push-based compa- community of space scientists has extensively used nies have started: BackWeb, IFusion, InCommon, the UARC system for over three years; during the Intermind, Marimba, NETdelivery,PointCast, and winter months, a UARC campaign { the scientists Wayfarer. These commercial ventures promise to use the term campaign to denote one of their exp eri- manage the complexity of the web by providing data ments { takes place almost every day. This commu- to users by means of subscription; similar to what nity has grown to include regular users from such current mailing lists provide, only more intrusively. geographically diverse sites as: SRI International In fact, many of these pro ducts are really pol l and in Menlo Park, California; the Southwest Research pul l instead of push. The clients in these systems Institute; the Danish Meteorological Institute; the p erio dically p oll the servers for new data, and then Universities of Alaska, Maryland, and Michigan; fetchitifitisavailable, reducing scalability. and the Lo ckheed Palo Alto Research Lab oratory. The UARC system provides a variety of services The Salamander substrate di ers from past tech- to its users including shared synchronized displays nologies in several ways. First, it is not user-centric, for instrument data, multipartychat b oxes, a shared but application-centric. Salamander is an under- annotation database, and a distributed text editor. lying substrate that applications can plug into to However, the primary mechanism for collab oration which provides a graphical lo ok at real-time condi- is the real-time distribution of atmospheric data to tions across an instrumented network. the exp eriment's participants.
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages12 Page
-
File Size-