Introduction

1-1

The time is right for P2P and Project JXTA

Peer to Peer (P2P) is not new. However, the time is now right for the broad P2P applications deployment.

The Project JXTA technology lets developers build and deploy P2P solutions more quickly.

1-2 What is Peer-to-Peer (P2P)? • P2P covers a wide range of applications… – Sharing files, distributed search and indexing – Sharing CPU and storage resources – Instant messaging & devices communicating together – Collaborative work (and games) – Web services – New forms of content distribution, sharing, and delivery • P2P is not… – New or a specific architecture, technology, business model, or market – About eliminating servers or centralized services P2P is about any device easily connecting “directly” to other devices to enable a more cooperative, or social, style of computing. 1-3

P2P Makes Sense Now

• More people connected, more data generated Network Computing Explosion • More nodes on the Internet Everything that touches Devices and wireless Web the network is growing • More bandwidth available at an exponential rate Data • More computing power Users available (disk, memory, CPU) Services Transactions Bandwidth • More interesting applications, Use of the Network/ content, and services Value of the Network • Edge devices are increasingly providers of resources

1-4 Characteristics of Ideal P2P Applications

• Applications best suited for P2P implementation are those where: – Centralization is not possible or desired – Massive scalability is desired – Relationships are transient or ad-hoc – Resources are highly distributed – Resilience is desired

Their value or performance increases as more nodes participate in the network

1-5

What is JXTA?

• An open set of XML-based protocols for creating peer-to-peer style network computing applications and services – Protocol based --> language, OS, network, and service agnostic technology – A virtual network overlay – Defines mechanisms, not policies – Open Source project: www.jxta.org

1-6 JXTA Enables Classic P2P Applications

• Communications, collaboration, gaming • Content delivery and sharing networks • Transactional web services • Resource sharing

1-7

JXTA Wireless P2P on J2ME MIDP and iAppli P2P Messaging P2P Collaboration Group and 1:1 Chat Sharing, Games

1-8 JXTA Sample Applications myJXTA2 and PicShare

1-9

JXTA Sample Applications Momentum 1.0 by InView Software

1-10 JXTA Sample Applications Other Collaboration Solutions

Hive from Alberg Software

Pepper from R-Objects

1-11

JXTA Sample Applications VistaPortal

1-12 JXTA Sample Project — tini.jxta.org

TINI lets you Internet-enable any device. JXTA gives you peer-to-peer capabilities. Combine them both and you've got peer-to-peer appliances.

• Your refrigerator can work with your freezer and other appliances to track inventory • Assembly floor robots can cooperate in construction • Physically distant climate microsensors can generate knowledge from raw data • TINI MP3 players can exchange music data and metadata • And more!

1-13

JXTA Technology Objectives • Interoperability – Across different P2P systems and communities • Platform independence – Programming languages, system platforms, and networking platforms • Ubiquity – Every device with a digital heartbeat • Security and Monitoring – For commercial and enterprise deployment

1-14 Protocols Drive Distributed Computing

TCP/IP

HTTP

JXTA

Client-Server Web-based

Peer-to-Peer

1-15

JXTA Implementation Platforms

• J2SE Implementation – Full implementation of JXTA protocols – Standard and Super Peer functionality – APIs and functionality frozen • JXTA- – Standard Peer functionality only – Runs on Linux, Solaris OE, and Windows • JXTA for J2ME – Micro Peer functionality only – MIDP-1.0 compliant – new iAppli compliant 1-16 Any Platform, Any Network

JXTA Chat (MIDP & iAppli)

JXTA MyJXTA Virtual Network ( J2SE on Windows ) JXTA-C Shell (C on Solaris)

1-17

JXTA Peer Types

• Micro peers

• Standard peers

• Super peers: – Rendezvous peer – Relay peer – Proxy peer

1-18 JXTA Virtual Network

JXTA Virtual Network

Peer Peer Peer Peer Peer

Peer Peer Peer

Virtual Mapping

TCP/IP

Physical Network Firewall HTTP NAT

1-19

JXTA Virtual Network Building Blocks

• Uniform peer addressing – Peer IDs • Dynamically configurable peer domains – Peer groups • Uniform resource representation – Advertisements • Universal binding – Resolver = searching for advertisements • Virtual communication channels – Pipes • Security and Monitoring 1-20 JXTA Software Architecture

Sample Applications JXTA Applications Instant Messaging File Sharing Resource Sharing Collaborative Apps Auctions

JXTA Sample Services Services Search Indexing Discovery Membership

JXTA Peer Groups Peer Pipes Peer Monitoring Core Peer Advertisements Peer IDs Security

Any Connected Device

1-21

jxta.org Based on a Proven Open Source Model

• www.jxta.org – All source, projects, docs, examples on-line • Apache–style software license – No barriers to getting started – No royalties, no fees, no registration • Meritocracy – The more you've done, the more you can do

1-22 JXTA Community Momentum www.jxta.org (4/25/2001 – 11/16/2002) • 822,000 downloads • 80 projects • 11,600 members • Active discussion groups • Community actively contributing and integrating technology

Please join our efforts!

1-23

JXTA Books http://www.jxta.org/bookshelf.html • Early Adopter: JXTA, Sing Li, 2001 • JXTA, Brendon J. Wilson, 2002 • JXTA: P2P Programming, Daniel Brookshire, et al, 2002 • Mastering JXTA Development, Joe Gradecki, August 2002 • Java P2P Unleashed, Robert Flenner, et al, 2002 • JXTA in a Nutshell, Scott Oaks, et al, 2002

1-24 Project JXTA Recognition • JavaWorld Editor's Choice 2002 Winner: “Most Innovative Java Product or Technology”

• JavaPro 2002 Award: “Outstanding Group Contribution to Java Technology”

• Hurwitz Group Award: “Most Likely to Win Top Trend in Future Year”

• Business 2.0 (1/2002): “[JXTA] could be the equivalent of Microsoft's Windows for the world of peer-to-peer computing.”

1-25

What's In It for Developers? • Open Source Code! • Community of Open Source Developers • Opportunity to "Steer the Boat" • Learn about a hot new technology — Contribute as much as you want • Perpetuate the value of Open Source development — Ensure Open Standards for P2P • Access to Marketing and BD Resources

1-26 Sun's Interest in Peer-to-Peer

• P2P is an instance of our vision — “The Network Is the Computer™” • Demonstrate continued thought leadership • Ensure open, level competitive field with opportunities for all • Advance Sun’s readiness for P2P – Servers (appliances to E15K), Workstations, Compute farms (Grid computing), Sun One™ Software, Storage solutions, Network appliances

1-27

Sampling of JXTA Technology ISVs

1-28 Sampling of Organizations Using JXTA

• Numerous projects underway. Some mentioned publicly include: – BBN (a Verizon Company) – Ericsson Microwave – NASA (U Md) and JPL – Siemens – Sun – Plus over 20 University Projects

1-29

Looking Ahead

• Performance and Scalability

• New services and opportunities – E.g. content management, digital rights, presence, identity, integration with Web services

• Specification standardization through public organization

1-30 Project JXTA Provides

● A set of building blocks and infrastructure that provide a foundation for P2P applications ● An open and interoperable set of protocols that do not have special licensing requirements ● Quick time to market for new products and services

1-31

Summary

• Project JXTA is an open source platform for P2P applications – it is free and available now! • Project JXTA technology is language, , network, and service agnostic. • Project JXTA works on any network device – from cell phones to super servers • Project JXTA has a large and active community at http://www.jxta.org

1-32