`
`David Clark
`dwclark@earthlink
`
`Network nirvana and the
`intelligent device
`
`I f Sun’s Jini technology becomes widely adopted by manu-
`
`facturers and developers, children of the future might sing
`new words to an old song: “Your cell phone’s connected to
`your printer. Your printer’s connected to your TV. Your
`microwave’s connected to your dashboard.” (They might even
`figure out how to make it rhyme.) However, whatever you call
`it—spontaneous networking, Web dialtone, automatic net-
`work resource coordinator—the new Java-based architecture
`that can make networking your computer devices as easy as
`plugging your telephone into a wall-jack could bring a dra-
`matic shift to the existing ideas of distributed computing.
`Jini is technology that can make a network look like one
`large computer. The technology will let developers and man-
`ufacturers create a whole range of computerized “appliances”
`that can instantly connect—wired or wireless—into a network
`to share information and services regardless of the underlying
`operating system or hardware. Once connected, every other
`computer, device, and user on the network will know that the
`new device (or resource) has been added and is available. If you
`want to use or access the resource, your, ah . . . computerized
`device will be able to download the necessary programming
`to communicate with that resource.
`In a classic example of both over- and understatement, Mark
`Tolliver, president of Sun’s new consumer and embedded divi-
`sion, gives this description of Jini: “At the core, it’s nothing
`more than a small piece of Java code and nothing less than a
`road map for the future of networking technology.”
`No doubt, if Sun succeeds in getting developers to imple-
`ment and improve Jini, the technology will have a tremendous
`impact on networking—especially for wireless and mobile
`users. It could provide overnight delivery for what business
`publications and technology prognosticators call the new gen-
`eration of smart appliances. “What Jini brings from a value
`proposition,” says Samir Mitra, director of business develop-
`ment for Jini, “is it extends Java by giving the ability to simply
`connect, and then to easily deliver any services that the net-
`work happens to provide.”
`
`Put another way, Mitra says, “The model we’re trying to
`promote with Java and Jini is what we call a client services
`architecture.” Until recently, he says, the industry’s model was
`the Net being served on thin clients. Now, what we have is a
`“cloud,” which is a network hosting a bunch of services. Each
`connected device (ranging from cell phones and desktop boxes
`to kiosks in the airport to hotel fax machines and printers to
`laptops and PDAs) is essentially a client and a service.
`If you doubt the potential scenario of networked appliances
`and services, consider that Bill Gates regularly claims that more
`non-PCs than PCs will be attached to the Internet in 10 years.
`A recent Business Week cover story on information appliances
`suggests that we should “think divergence, not convergence.”
`Gates and other industry leaders point out that the PC is so
`general purpose that few of us use more than 5% of its capac-
`ity. Furthermore, market analysts point out that after 10 or 15
`years of availability, less than 50% of our homes contain a PC
`and that figure is projected to top out at only 60%. Informa-
`tion appliances, with their ease of use and single-purpose
`designs, will make them more appealing to consumers.
`The growth and maturation of the Internet, the Web, e-
`mail, e-commerce, and “e-ntertainment” are certainly fueling
`this “divergence” of networked devices. Companies increas-
`ingly want to capitalize on Web-based services, and they want
`to reach consumers who don’t—or won’t—use traditional
`computers. Another important factor in this trend is that
`advances in the development of software and chip technology
`make the so-called information appliance feasible. It’s now
`possible to build inexpensive devices with enough memory,
`storage, and display size to be useful. The key is to enable these
`devices to connect instantly and easily, both to each other and
`to the Internet. Jini could be that key.
`
`HOW IT WORKS
`Devices in a Jini distributed system provide their own inter-
`faces, which ensures reliability and compatibility. Jini provides
`the distributed-system services for lookup, registration, and
`
`16
`
`IEEE Concurrency
`
`Ex.1027
`APPLE INC. / Page 1 of 4
`
`
`
`leasing. It consists of four program layers: directory service;
`JavaSpace; remote-method invocation (RMI); and the boot,
`join, and discover protocol. Any device with an operating sys-
`tem that supports a Java virtual machine (JVM) can be plugged
`into the network. And for some devices, of course, the oper-
`ating system will consist of only the necessary Java/Jini func-
`tions and will be embedded on a chip that provides storage and
`other device-specific functions.
`When a device is plugged into the Jini network, the direc-
`tory service layer registers it as a member of the network. The
`device’s program objects are placed in the JavaSpace layer so
`that other network members can “discover” the device’s avail-
`ability and its capabilities (for example, the servicesthe device
`provides). The directory lookup service acts as a switchboard to
`connect a client looking for a service with a device that pro-
`vides that service. Once the connection is made, the lookup ser-
`vice is not involved in any of the resulting interactions between
`that client and that service. The layer supporting the boot, join,
`and discover protocol enables devices, users, and applications
`to announce and register themselves and to discover others.
`The discovery and join protocols, as well as the lookup service,
`depend on the ability to move Java objects, including their code,
`into the JavaSpace and then between JVMs. Communication
`between objects in different JavaSpaces occurs through the RMI
`interface and layer, which includes security. (Jim Waldo, Jini’s
`chief architect, says that although Jini leverages Java’s already
`strong security model, more features will be added in future
`releases of Jini. By mid-1999, Sun expects to publish a draft
`specification that adds full-fledged authentication, nonrepudi-
`ation, and privacy to Jini and Java’s RMI.)
`The JavaSpace layer is the key to Jini; it manages object pro-
`cessing, sharing, and migration—essentially, it’s a mechanism
`for client applications to make contact with a JavaSpaces server.
`However, don’t think of JavaSpaces as an existing application
`or interface—JavaSpaces are simply a set of instructions devel-
`opers use to create applications. Neither is Jini or JavaSpaces
`middleware—it’s not used to create communication links
`between commercial databases such as Oracle, Sybase, DB2, or
`between object models such as CORBA, DCOM, and SOM.
`JavaSpaces (with Jini) is simply the underlying technology that
`lets developers build applications that can be distributed across
`a network of computers.
`As such, one of the most important elements of the Java-
`Space concept is in its simplicity (see Figure 1) and small foot-
`print—both required by the next generation of information
`appliances. However, says Waldo, don’t underestimate it just
`because it’s simple and small. Jini’s underlying technology and
`services architecture are powerful enough to build a fully dis-
`tributed system on a network of workstations. The beauty of
`the design, he says, is that the JavaSpaces component model
`brings distributed-transaction processing forward in a way that
`most programmers can understand and use. Also, because it’s
`Java-based, it should be quick and relatively easy for the exist-
`ing community of Java developers to develop applications that
`incorporate Jini.
`
`Application
`
`Service
`
`Jini technology
`
`Java technology
`
`Operating system
`
`Network transport
`
`Figure 1. Jini technology provides simple mechanisms
`which enable devices to plug together to form a “fed-
`eration.” The components work together but are
`identified as separate components on a network. The
`federation provides services that are accessed by the
`various devices and applications. Members of a Jini
`federation share their services to get a job done. They
`communicate with each other through a set of Java
`interfaces known as the service protocol, and they
`locate each other using a special look-up service. The
`discovery and join protocols, as well as the lookup
`service, depend on the ability to move Java objects,
`including their code, between Java Virtual Machines.
`
`WHODIDITFIRST ?
`However beautiful the concept, the origin of Jini’s JavaSpaces
`is contested. Everyone agrees the original ideas came from a
`10-year-old Yale University project called “Linda,” which
`David Gelernter initiated. The technology behind Linda is a
`set of powerful C functions that implement a distributed-
`computing model. Linda is also acknowledged by IBM in its
`experimental “TSpaces” technology, which resembles Jini but
`with some database and XML capabilities.
`A small commercial developer, called Scientific Computing
`Associates, has supported and extended Linda since its early
`days at Yale. SCA claims Sun is using commercial parts of Linda
`in Jini without recognition (or payment). However, rather than
`going to court, SCA plans to redouble its marketing and devel-
`opment (among other products, a complex real-time trading
`system developed for Lehman Brothers uses Paradise, SCA’s
`extension of Linda). According to Wayne Threatt, vice presi-
`dent of sales and marketing for SCA, his company’s goal is to
`play in the Jini community. “We’ve believed in this kind of
`thinking for a long time. Our expertise and business experience
`can help turn Jini-related initiatives into a reality much faster.”
`Turning Jini initiatives into reality—getting developers and
`manufacturers to useit—will determine Jini’s success. Quoting
`Jini’s Web site: “For Jini technology to succeed, the underly-
`ing protocols and infrastructure must become pervasive, and
`
`April–June 1999
`
`17
`
`Ex.1027
`APPLE INC. / Page 2 of 4
`
`
`
`to accomplish this requires a strong community of participants
`and partners.” Sun is using what it calls Sun Community
`Source License, which “opens” the source code for the Jini
`infrastructure to developers in an attempt to insure Jini’s ubiq-
`uity. Developers are free to “use it, extend it, improve it, and
`repair it—they may add to the common body of source code
`and still maintain proprietary implementations.”
`Sun has announced that almost 40 hardware and software
`companies have agreed to license the Jini source code. Ven-
`dors include major consumer electronics manufacturers and
`office equipment companies as well as the computer manu-
`facturers. In addition, Sun recently formed an alliance with 14
`other computer, phone, and electric utility companies to use
`Java and Jini to network consumer and small business devices.
`Members of the group—called the Open Service Gateway Ini-
`tiative—will develop standards intended to facilitate develop-
`ment of home gateway appliances.
`
`WHAT CAN JINI DO?
`A network of devices employing Jini technology can be built
`from any device that can run the JVM. That includes printers,
`storage devices, cell phones, digital cameras, digital VCRs, tele-
`visions, set-top boxes, DVD players, and industrial controls, not
`to mention just about any conceivable electronic toy or gadget.
`We’ve heard for years how we’ll be able to turn on our house
`lights and start the oven from our cars on the way home. Jini
`will bring that closer. Waldo says Sun is talking to auto com-
`panies where the applications for Jini are “fascinating and kind
`of easy,” he says, “once you realize that what you’re really dri-
`ving around is a network base.”
`Furthermore, application developers can use Jini’s tech-
`nology to build virtual parallel supercomputers. By linking
`large numbers of PCs, they can use idle processing power to
`execute computationally intensive applications at blazing
`speed. This is already being done without Jini in projects such
`as the Avalon supercomputer that uses 68 PCs with Alpha
`processors, or in various search engine systems that use clus-
`ters of workstations. The difference is that with Jini, these
`systems can be joined much more easily and very dynami-
`cally—machines can join or leave without human interven-
`tion or failure.
`“In Jini, the technology is built with the notion that nets are
`sometimes going to fail,” says Sun’s Mitra, “The fundamental
`software construct of Jini is inherently resilient to network fail-
`ure.” That key aspect of Jini is one reason why the mobile com-
`munity is interested in the technology—mobile nets have reli-
`ability issues, he says. For example, Sun recently announced a
`partnership with NTT Mobile Communications Network to
`study the feasibility of using Java, Jini, and Java card technolo-
`gies on the Japanese carrier’s new mobile computing platform.
`Another mobile project, Symbian, is a venture by the world’s
`top three cellular phone makers and UK palmtop manufac-
`turer Psion. Mitra says the research in both projects will enable
`mobile devices to have fully interactive communication with
`the network on a variety of different services above the tele-
`
`phony services such as e-mail, online banking, shopping, and
`the ability to download games and update software.
`Jim Waldo says, “mobile computing is one of the areas [in
`which] we are already seeing people start to build applications.”
`He describes a Sun flexible field office, used by sales and sales-
`support engineers, where nobody actually has an office.
`According to Waldo, Sun discovered that when the itinerant
`workers came in and grabbed a workspace, it took up to sev-
`eral hours to configure their laptops to get e-mail and use print-
`ers and fax machines. He says this is one of the things Sun actu-
`ally designed Jini to do, and Sun plans to install Jini in that
`field office. Waldo says Jini will change how we see our laptops
`and portable devices. Instead of thinking of our mobile com-
`puters as the computer we carry around with us, we’ll start
`thinking of them as a portable network.
`
`VALUE ADDED TO COMMODITIES
`Another important application for Jini is in what Samir Mitra
`calls the area of intelligent agents—especially in the office
`automation market. He says printers and office automation
`equipment, which are today mostly just peripherals to a PC or
`other computer, increasingly have full-fledged computers in
`them: microprocessors and memory. These devices are increas-
`ingly becoming networked, and their price points are coming
`down. “Because of this, there’s an interest in the office automa-
`tion market because Jini allows these devices to become intel-
`ligent—to become full network citizens with very little amount
`of software overhead,” Mitra notes.
`The same holds true for disk drives, he says. “Drive manu-
`facturers are very interested in Jini, because now the disk drive
`actually becomes a storage service provider to the network.
`The disk drive can say, ‘Hey I have a piece of software in here
`which is an intelligent agent that can do backup services for
`you so that you don’t have to worry about it,’ and therefore
`Quantum and Seagate can charge more because now they’re
`delivering a backup service on their commodity hardware
`device.” Adding intelligence to peripherals and office automa-
`tion devices with Jini, according to Mitra, increases their value;
`consumers get more benefit, and manufacturers can get out of
`the commodity spiral they’re in.
`
`THE COMPETITION
`For Jini to accomplish network nirvana, it must become widely
`adopted. Although Sun has the impetus of a growing Java
`development community that should be able to take Jini in
`stride, competition exists from the usual suspects.
`Microsoft recently announced Universal Plug and Play, an
`initiative designed to let a broad range of devices connect as
`peers over a home network and share resources. Sound famil-
`iar? UPP extends Microsoft’s earlier plug-and-play initiative
`and applies it to a home network: peripherals can be attached
`to a network, “announce” their presence, and have the ability
`to interoperate with other devices on the network.
`Microsoft’s partners in UPP include Intel and Hewlett-
`Packard. The technology will be based on open standards, pri-
`
`18
`
`IEEE Concurrency
`
`Ex.1027
`APPLE INC. / Page 3 of 4
`
`
`
`Before long, we’ll check our e-mail with a phone device and
`print it out on the hotel’s printer while we stand in the hotel’s
`lobby, using the same device to check seating and book reser-
`vations at the restaurant next door. The bad news, at least for
`Sun, is that it might not be Jini that makes our device so pow-
`erful. The competition will eventually benefit the consumer,
`according to industry analysts such as the Gartner Group’s
`Carolyn DiCenzo, but watch out for those competing stan-
`dards along the way.
`
`David Clark is a freelance writer based in Torrance, California, spe-
`cializing in technology. Contact him at dwclark@earthlink.net.
`
`C o n c u r r e n c y
`C o n c u r r e n c y
`
`9
`
`9
`
`9
`
`9
`
`9
`
`9
`
`1
`
`1
`
`H
`H
`
`C
`
`C
`
`R
`
`R
`
`A
`
`A
`
`M
`M
`
`–
`
`–
`
`Y
`
`Y
`
`R
`
`R
`
`A
`
`A
`
`U
`
`U
`
`N
`N
`
`A
`
`A
`
`J
`J
`
`/
`/
`
`G
`G
`
`T I N
`T I N
`
`U
`
`U
`
`P
`
`P
`
`M
`M
`
`O
`O
`
`C
`
`C
`
`E
`E
`
`B I L
`B I L
`
`O
`O
`
`M
`M
`
`&
`&
`
`E
`
`E
`
`E
`
`I
`
`D
`
`D
`
`E
`E
`
`T
`T
`
`U
`U
`
`R I B
`R I B
`
`T
`T
`
`D I S
`D I S
`
`L ,
`L ,
`
`E
`E
`
`L
`L
`
`L
`L
`
`A
`
`A
`
`R
`
`R
`
`A
`
`A
`
`P
`
`P
`
`OO BVIOUSLBVIOUSLYY,,
`
`YOUYOU’’ VEVE GOTGOT AA
`
`LOTLOT OFOF
`PLAPLATESTES ININ
`THETHE AIRAIR. .
`
`o :
`o :
`A l s
`A l s
`T r e n d W a r s :
`A d d r e s s i n g
`i s s u e s
`O S
`S h a p i n g t h e
`u n i v e r s e w i t h
`i c a t i o n s
`l e a p p l
`B e c o m i n g t h e
`C o m p u t e r S o c i e t y ’ s
`“ s y s t e m s ” m a g a z i n e
`
`m o b i
`
`marily TCP/IP and XML, and won’t require Java. Industry
`analysts have speculated that UPP is more of an announce-
`ment than a reality at this point, but Microsoft’s marketing
`power combined with its use of IP and XML technology could
`make UPP a strong competitor to Jini.
`Other competitors include Hewlett-Packard, IBM, and
`Lucent Technologies. HP has recently announced Chai-
`Appliance Plug and Play, a technology that will allow Java-
`based Web appliances to be “discovered” on a UPP network.
`Like UPP, the ChaiAppliance communications is based on
`Web standards such as HTTP and XML, rather than on
`Java. However, ChaiAppliance was developed in the Chai
`Virtual Machine, which is HP’s clean-room version of Java.
`This could possibly make ChaiAppliance Plug and Play use-
`ful as a bridge between Jini and UPP. Like Jini (and unlike
`UPP), ChaiAppliance is available to developers now.
`Another HP technology, JetSend, is both complementary
`and competitive to Jini. The two-year-old platform-
`independent data exchange protocol is available on certain
`HP printer platforms now, but is expected in other devices
`soon. It will be compatible with UPP, but HP is also making
`it compatible with Jini, and JetSend licensees include several
`of the companies signed up with Jini.
`Meanwhile, IBM has developed TSpaces, a component very
`similar to JavaSpaces. The technology provides for easy
`data exchange between heterogeneous Java-enabled devices.
`TSpaces are also complementary to Jini, which suggests that
`either or possibly both technologies could be eventually adopted
`without significantly changing Jini’s development. Finally,
`Lucent has announced InfernoSpaces, a part of the company’s
`Inferno venture that would function much like Jini or UPP, but
`is capable of running in both the Windows NT and Solaris
`environments.
`
`A lthough Jini’s architecture and specifications are in
`
`place, and real companies are developing real Jini-
`enabled applications, there’s a lot left to do. Jini needs more
`specification and development—Sun hopes the licensee
`community will provide much of it. In addition, developers
`and software engineers need to learn how to program the
`new distributed applications. Finally, there’s Jini, the Next
`Generation. When everybody’s device is potentially con-
`nected to every other device in the world, how do you filter
`the noise? Waldo says, “yeah, figuring how to scale this stuff
`up from the human point of view is going to be tough. We
`know how to make the technology scale up, but being able
`to represent it in a way that humans can understand at that
`scale is something that I think is a major interesting area of
`research.”
`The good news about this technology is that we’ve seen
`the last of device drivers and many incompatibility issues.
`
`c
`c
`
`n a m i
`n a m i
`D y
`D y
`L o a d B a l a n
`L o a d B a l a n
`
`g
`g
`
`i n
`i n
`
`c
`c
`
`BB UTUT AREARE YOUYOU GETTING
`EVERYY--
`GETTING EVER
`
`THING YOUYOU CANCAN FROMFROM CC ONCURRENCYONCURRENCY? ?
`THING
`
`••
`
`••
`
`DD IDID YOUYOU KNOWKNOW WEWE HAVE
`
`WW EBEB SITESITE? ?
`
`HAVE AA SEARCHABLESEARCHABLE
`
`HH AVEAVE YOUYOU LOOKED
`
`RATES? ?
`
`STUDENTSTUDENT RATES
`
`LOOKED INTOINTO OUROUR SPECIALSPECIAL
`
`•• WW OULDOULD YOUYOU LIKE
`LIKE TOTO BECOMEBECOME ONEONE OFOF OUROUR
`
`PEER-- REVIEW
`VOLUNTEERS? ?
`REVIEW VOLUNTEERS
`PEER
`
`••
`
`DD IDID YOUYOU KNOWKNOW WEWE HAVE
`
`SALE??
`
`ISSUESISSUES FORFOR SALE
`
`
`
`BACKHAVE INDIVIDUALINDIVIDUAL BACK
`
`OO URUR WW EBEB SITESITE CANCAN HELPHELP YOUYOU
`
`
`
`ANSWERANSWER ALLALL OFOF THESETHESE QUESTIONSQUESTIONS ANDAND
`MOREMORE. .
`
`VV ISIT
`ISIT WWWWWW.. COMPUTERCOMPUTER.. ORGORG//
`
`CONCURRENCY..
`CONCURRENCY
`
`April–June 1999
`
`19
`
`Ex.1027
`APPLE INC. / Page 4 of 4
`
`