NEW YORK Peer-to-peer computing, wherein data is processed and transmitted without an intermediary server, gained momentum in two separate developments this past week that could increase its application to a broad range of situations. The two events basically fired shots across the bow of the client/server empire, the current bastion of the Internet's software infrastructure.
Groove Networks Inc. came out of stealth mode to introduce what it described as the industry's first software platform able to host a broad range of peer computing applications. Separately, the World Wide Web Consortium (W3C) issued XML Schema as a W3C Candidate Recommendation, thereby inviting the Web development community to make implementations of XML Schema and provide technical feedback.
Together, the two events could help catapult the Internet and the Web into the world of ubiquitous distributed computing.
Ray Ozzie, best known as the creator of Lotus Notes, founded Groove Networks to create products that leverage the two-way capabilities of the Internet for people who interact closely in their work. The company's first product is Groove, a distributed computing framework specifically designed for peer computing collaboration over the Internet, without a central server.
This decentralized approach enables closely-knit groups to collaborate on a broad range of activities within secure, shared virtual spaces, in real-time or at different times.
Groove is a highly modular framework that works in conjunction with industry-standard programming languages and tools that comply with Microsoft COM. Peer computing applications can be created with the Extensible Markup Language (XML) and with scripting languages such as JavaScript. Alternatively, developers can create more advanced applications and user interfaces by using Visual Basic, C or C++.
Groove provides a set of platform components for applications services, including a persistent XML object store, shared space and member management, security and role management, peer and server communications, and transparent peer synchronization.
"We have been in stealth mode for three years, so we simply did not adhere to any rigid standards," Ozzie said. "We just went back and forth to try to make it simple for people to collaborate on the Web in small groups. And we certainly are not going to dictate our ways to standards bodies like W3C. We will work with them and adhere to their proposed standards."
Moment of inspiration
Ozzie said he got the idea for Groove watching his son playing Quake, a peer-to-peer Net game where small groups can take control of their "space" and collaborate as teams to beat each other at a challenge. "I could not for the life of me figure out why this type of collaboration has not be applied to the business and commercial worlds," Ozzie said. He founded Groove Networks, which now has 150 employees working on product development and on application designs with partners. By choosing an XML software development environment, Ozzie said he can leverage the emerging W3C standards that seek to promulgate XML as the language for context-based content sharing on the Web.
Meanwhile, XML Schemas define shared markup vocabularies and provide a means for defining the structure, content and semantics of XML documents. "Databases know the difference between a date and a string of text, but before today, there was no standard way to teach your XML systems the difference. Now there is," said Dave Hollander, chief technology officer of Contivo Inc., and co-chairman of the W3C XML Schema Working Group.
By bringing data types to XML, XML Schema increases XML's power and utility to anyone interested in using and manipulating large volumes of data on the Web. XML Schema may accelerate the adoption of XML for significant industrial use.
Meanwhile, Groove Networks has been plowing ahead to take advantage of the current XML standard elements. Groove applications can integrate content and context from centralized servers using open protocols such as XML-RPC and Soap. Utilizing the Groove development kit (GDK), developers can integrate Groove with existing business systems. "Fundamental to Groove is the notion that third-party developers will customize and extend Groove for individuals and businesses," said Jack Ozzie, the company's vice president of developer services and brother of Groove founder Ray Ozzie. "Programmers can leverage their existing skills in areas such as XML, JavaScript, and Visual Basic to take advantage of growing marketplace interest in peer-to-peer distributed computing, which we believe represents another dramatic industry inflection point, and ultimately will impact nearly every user and provider of information technology." With the Groove platform, developers using tools such as Dreamweaver and Director can leverage their skills to create a whole new class of peer-to-peer applications, he said.
Developers need the GDK to build these applications. A preview version is now available as a free download for registered developers from the company's Web site.
Groove Networks recently closed $41 million in third-round financing, and has raised more than $60 million to date. One investor is Intel Capital.
Intel has been on the peer-to-peer bandwagon for years. "Intel believes that peer-to-peer computing is ushering in the next generation of the Internet, much as we saw Mosaic spark the last," said Patrick P. Gelsinger, vice president and chief technology officer, Intel Architecture Group. "Intel's investment in Groove Networks reiterates the company's commitment to enabling peer-to-peer computing."
Intel Corp.'s interest in distributed content standards is reflected in its participation in the XML Schema working group. Other system house participants include IBM Corp., Hewlett-Packard Co. and software giant Microsoft Corp.
Instant collaboration
The Groove applications programming interface can be downloaded from the Groove Web site and a user can instantaneously invite colleagues to join the shared space to start collaborating in real-time.
In practice, teams of two to 25 can interact on their screens, resulting in instant updates to each member, whether they are online or offline during the collaboration. "We've developed Groove with one core purpose in mind: to strengthen the online connections among people who need to interact closely with one another across all boundaries such as time, place, or organizational affiliation," said Ray Ozzie.
Just as a browser has become the means by which people interact with Web sites, Groove will increasingly become the means by which people interact directly with one another, Ozzie said. "Over time, we believe that most everyone who uses a PC or network appliance to communicate over the Net will have three primary tools: e-mail, a browser, and Groove," he said.
Accolades for Ozzie's work were extended at the introduction of Groove. "We're entering a new phase in the Internet. We need a new breed of software that goes beyond Web browsing to use the full power of the personal computer and ubiquitous Internet communications," said Bill Gates, chairman and chief software architect at Microsoft. "Ray has a history of building breakthrough applications. With Groove, he and his team have built a deep and innovative application that is a great example of where the Internet is going."
The Groove transceiver the "space" in which a user works includes capabilities that lend themselves to natural and intuitive group interactivity. These include voice communications, instant messaging, text-based chat, and threaded discussion. There are also tools for sharing files, sharing pictures, sharing contacts, and for shared activities such as drawing and Web browsing. After Groove is launched, a user creates a secure shared space to which he can invite others to conduct business or personal affairs. Each Groove shared space is stored locally on the computers of each of the members of the shared space. A change to one member's shared space is reflected on everyone's machine, so their work remains completely synchronized with other members.
In his keynote at the Intel Developer Forum this past August, Patrick P. Gelsinger, vice president and chief technology officer of the Intel Architecture Group, suggested that the industry rise to the challenge of building an infrastructure that allows peer-to-peer computing to emerge in a broad way. "Every peer is contributing resources to the business in some fashion, to the task, to the application at hand. Each of them is contributing and receiving resources back from the overall network."
A prime example of peer-to-peer computing is Intel's NetBatch program, which allows Intel design engineers to take advantage of otherwise idle computing resources at Intel facilities around the world. Simulation jobs submitted to NetBatch are assigned to one of the many resources in Intel's global computing network. In this way, resources that would otherwise be utilized 50 percent or less are brought to bear on Intel's mission-critical computing tasks. NetBatch now processes 2.7 million jobs each month. According to Gelsinger, over the 10 years that Intel has been using NetBatch, the company has increased the utilization of its aggregate computing capacity from 35 percent to over 80 percent. On a recent chip project, the company was able to accelerate its validation process by eight weeks and deliver the chip ahead of schedule. Overall, Gelsinger said NetBatch has saved Intel more than a half-billion dollars.