Project JXTA : An Open Peer-to-Peer Network Environment Gene Kan gene.kan@sun Project JXTA

15
Project JXTA : An Open Peer-to-Peer Network Environment Gene Kan [email protected] Project JXTA Sun Microsystems, Inc.

description

Project JXTA : An Open Peer-to-Peer Network Environment Gene Kan [email protected] Project JXTA Sun Microsystems, Inc. What is JXTA?. An open network programming platform to enable P2P services and applications. Defines a set of protocols for interoperating - PowerPoint PPT Presentation

Transcript of Project JXTA : An Open Peer-to-Peer Network Environment Gene Kan gene.kan@sun Project JXTA

Page 1: Project JXTA :  An Open Peer-to-Peer Network Environment Gene Kan gene.kan@sun Project JXTA

Project JXTA : An Open Peer-to-Peer Network Environment

Gene [email protected]

Project JXTASun Microsystems, Inc.

Page 2: Project JXTA :  An Open Peer-to-Peer Network Environment Gene Kan gene.kan@sun Project JXTA

What is JXTA?

• An open network programming platform to enable P2P services and applications.• Defines a set of protocols for

interoperating• Is language- and network-independent• Is 100% open source, available at:

http://www.jxta.org

Page 3: Project JXTA :  An Open Peer-to-Peer Network Environment Gene Kan gene.kan@sun Project JXTA

What is P2P?

• P2P has many examples:• Sharing files or swapping music

• Sharing CPU and storage resources

• Distributed search and indexing

• Instant messaging & pervasive devices talking with one another

• Serverless collaborative work (and play)

• New Smart Web Services

• New forms of content distribution

Adapted from an IBM presentation on P2P

Page 4: Project JXTA :  An Open Peer-to-Peer Network Environment Gene Kan gene.kan@sun Project JXTA

Sun's interest in peer-to-peer

• P2P is the continuation of our vision -- “The Network Is the Computer”

• Demonstrate continued thought leadership

• Ensure open, level competitive field• Advance Sun’s readiness for P2P

• desktop software, workstations, compute farms, iPlanet products, servers, storage, network appliances

Page 5: Project JXTA :  An Open Peer-to-Peer Network Environment Gene Kan gene.kan@sun Project JXTA

Client-server silos

Web-based computing

Peer-to-Peer

Evolution of computing

Page 6: Project JXTA :  An Open Peer-to-Peer Network Environment Gene Kan gene.kan@sun Project JXTA

Project JXTA: why now?• More people connected,

more data generated• More nodes on the

Internet and wireless Web

• More bandwidth available• More computing power

available (disk, memory, CPU)

• More interesting applications, content, and services

• Edge devices increasingly providers of resources

Use of the Network/Value of the Network

Bandwidth

Users

Services

Data

Transactions

Devices

Everything that touchesthe network is growingat an exponential rate

Network Computing Explosion

Page 7: Project JXTA :  An Open Peer-to-Peer Network Environment Gene Kan gene.kan@sun Project JXTA

Problems with today's Internet

• Information: hard to find, impossible to catalog and index

• Bandwidth: hot links get hotter, cold ones stay cold

• Computing resources: heavily loaded nodes get overloaded, idle nodes remain idle

Page 8: Project JXTA :  An Open Peer-to-Peer Network Environment Gene Kan gene.kan@sun Project JXTA

Benefits of peer-to-peer• Theory

• Dynamic and adaptive discovery of information• Performance and functionality increase as more peers

participate• Better utilisation of bandwidth, processor, storage,

and other computing resources• Extend RAID concepts to computing resources

• Examples• Sharing content cache over high speed LAN• Data mirroring and striping using shared storage• Deep search beyond the web• Dynamic collaboration

Page 9: Project JXTA :  An Open Peer-to-Peer Network Environment Gene Kan gene.kan@sun Project JXTA

Project JXTA: an open community

• Sun: initiator, contributor• Open source community

• Adopt, innovate, develop, promote

• Apache licensing gives developers flexibility• (Modified BSD license.)

• Everyone is free to use source code.

• Only requirement is to acknowledge Sun.

• Not required to publish modifications to source code.

Page 10: Project JXTA :  An Open Peer-to-Peer Network Environment Gene Kan gene.kan@sun Project JXTA

Problems with other peer-to-peer systems under development

• Proprietary• Others aim to create a system from

which they can profit directly.• Lease the intellectual property or lease

the network.• Computing silos: non-interoperable,

fragmented networks• TCP/IP only: built-in dependency on

TCP/IP transport

Page 11: Project JXTA :  An Open Peer-to-Peer Network Environment Gene Kan gene.kan@sun Project JXTA

JXTA technology objectives

• Interoperate across different peer-to-peer systems and communities

• Platform independence (programming languages, system platforms and networking platforms)

• Ubiquity:• Every device with a digital heartbeat

• J2ME MIDP for now

Page 12: Project JXTA :  An Open Peer-to-Peer Network Environment Gene Kan gene.kan@sun Project JXTA

JXTA demonstration: chess

Page 13: Project JXTA :  An Open Peer-to-Peer Network Environment Gene Kan gene.kan@sun Project JXTA

JXTA community status

• 80,000+ downloads in 3 months

• 25+ projects

• 5000 members

• Active discussion groups (4000+ msgs)

Page 14: Project JXTA :  An Open Peer-to-Peer Network Environment Gene Kan gene.kan@sun Project JXTA

Partial list of current projects

• rosettachat (gonzo)• instantp2p (kuldeep)• shell (tra)• rrs (ziad)• fuel-auction (bfoley)

• jxtaspaces (vanessa)• payment (frose)• cms (dac)• search (stevew)• jxta-wire (lomax)• jxta-xml-rpc (jbeatty)• monitoring (kuldeep)

• platform (tra)• security (yeager)• jxme (kuldeep)

• pocketjxta (ianm)• vojxta (gkasinath)• haggle (navacron)• p2p-email (nitin)• jxrtl (savage)

Page 15: Project JXTA :  An Open Peer-to-Peer Network Environment Gene Kan gene.kan@sun Project JXTA

JXTA core services projects

• C/C++ and J2ME MIDP implementations• Improved solutions for firewalls and

NAT• Reliable and secure pipes• Simpler APIs• Naming services• Authentication services• Revised specification