Dynamic Distributed Systems Using JINI - PowerPoint PPT Presentation

1 / 30
About This Presentation
Title:

Dynamic Distributed Systems Using JINI

Description:

... architecture brought out by SUN (TM). It enables the building ... JINI-USERS mailing list archives: http://archives.java.sun.com/archives/jini-users.html ... – PowerPoint PPT presentation

Number of Views:45
Avg rating:3.0/5.0
Slides: 31
Provided by: then4
Learn more at: https://www.cs.odu.edu
Category:

less

Transcript and Presenter's Notes

Title: Dynamic Distributed Systems Using JINI


1
Dynamic Distributed Systems Using JINI
  • By
  • Ahmed. H. Al-Theneyan
  • Computer Science Department
  • Old Dominion University

2
Outline
  • What is JINI ?
  • Goals and Objectives
  • Architectural Overview
  • Infrastructure
  • Programming Model
  • Services
  • Conclusion

3
What is JINI (TM) ?
  • Brand new distributed systems architecture
    brought out by SUN (TM).
  • It enables the building of
  • Dynamic
  • Flexible
  • Easily administered
  • distributed system
  • Simply, it enables Plug and Play networks

4
What does the word "JINI" stands for ?
  • It is not an acronym, it does not stand for
    anything. It is pronounced as 'Genie. As
    in "JINI in a bottle." or "JINI of the lamp" in
    Aladdin. That was one guess.
  • Bill Joy, one of JINIs project leaders, came up
    with the name, because he liked the sound.

5
Goals and objectives
  • Resources
  • Management
  • Sharing
  • and access is more simple
  • Distributed Programming is more easy
  • Easy connection, no need for complicated setup
    procedures
  • Simply, Dynamic Distributed Systems

6
Architectural Overview
  • The whole technology can be segmented into
  • Infrastructure
  • Programming Model
  • Services

7
Infrastructure
  • Set of components, includes the minimal JINI
    technology core, that enables building of the
    system.
  • It includes
  • Lookup Service
  • Discovery/Join Protocol
  • Distributed Security System

8
Lookup Service
  • Central storage of services available within the
    system
  • It is the fundamental part of the infrastructure.
  • It organizes services into groups.
  • Service can be a member of multiple groups.
  • Multiple Lookup Services can maintain the same
    group.
  • This helps to achieve fault tolerance.

9
How things work (Service Side)?
  • When a new service is created, it register itself
    with a Lookup Service (Join).
  • It must first locate the appropriate Lookup
    service (Discovery).
  • This done using the Discovery/Join Protocol.

10
How things work (Client Side)?
  • Client locate the appropriate Lookup Service
    (Discovery).
  • It locates a service by querying the Lookup
    Service (Lookup)
  • This done using the Discovery/Lookup Protocol.
  • Then, Client and service can communicate
    directly.

11
Discovery Protocol
  • It can be
  • Multicast Discovery Protocol.
  • (looking for an appropriate Lookup Service)
  • Unicast Discovery Protocol.
  • (looking for a specific Lookup Service or
    non-local Lookup service)
  • Multicast Announcement Protocol.
  • (Allow Lookup services to advertise their
    presence)

12
Multicast Request Protocol
13
Unicast Discovery Protocol
14
Multicast Announcement Protocol
15
Join Protocol
  • A service discovers the appropriate Lookup
    Service.
  • It connects via the Lookup Service registrar.
  • The Service sends some info about itself.
  • The Lookup Service stores the information and
    associate it with the requested group, if any.

16
Join Protocol
17
Lookup Protocol
  • A Client discovers the appropriate Lookup
    Service.
  • Itll query for the service.
  • If found, the object reference of the requested
    service will be loaded into the client.
  • Finally, client invoke the service.

18
Lookup Protocol
19
Distributed Security System
  • Define how entities got the right to perform
    actions on their behalf or on behalf of others.
  • It extends JDK1.2 platforms security model to
    the world of distributed systems.

20
Programming Model
  • Set of interfaces that enables the construction
    of reliable services.
  • These interfaces make up the distributed
    extension of Java.
  • All interfaces are written in Java
  • Free source code.
  • Has no limit, and it can be extended.

21
Programming Model Cont..
  • These interfaces include
  • Leasing interface
  • Events interface
  • Transaction interface

22
Leasing interface
  • Access to many services in the JINI system is
    lease based.
  • Lease grant guaranteed access to the service over
    a period of time.
  • It is negotiable.
  • Can be exclusive or non-exclusive.
  • Can be renewed.

23
Example
  • When a service registers with the lookup service,
    it receives a lease.
  • It need to renew periodically.
  • When service failed or lease get expired, service
    will be removed.

24
Distributed Events Interface
  • It extends JavaBeans Event Model to the world of
    Distributed Systems.
  • One object, Event Listener, registers an interest
    in event of another object, Event Generator.
  • Listener will be notified in a timely and
    reliable fashion.
  • Registration of interest is lease based

25
Transaction Interface
  • Transactions enables operation grouping. Either
    all Succeed or all Fail.
  • The JINIs Transaction Interface supply a service
    protocol needed to coordinate 2-Phase commit
    protocol.

26
Service
  • Something that can be used by a person, program
    or another service.
  • It can be Computational, Storage, Software,
    Hardware or Communication Channel.
  • It has an interface which define the operations
    that can be requested.

27
Services Cont..
  • Service objects can be written in any language.
    Client does not care.
  • But the interface has to be written in Java.
  • One of them is JavaSpaces which can be used for
    simple communication and storage of related
    groups of objects.

28
Conclusion
  • JINI is the feature of distributed systems
  • The dynamic nature of JINI allows resources to be
    added, subtracted at anytime without bothering
    other components.
  • Open Source Code is available for download. Thus
    it has no limit.

29
Questions
30
References
  • The main JINI page at Sun http//java.sun.com/pro
    ducts/jini/
  • JINI specifications
    http//java.sun.com/products/jini/specs/
  • JINI-USERS mailing list archives
    http//archives.java.sun.com/archives/jini-users.h
    tml
  • Bill Venners' JINI/JavaSpaces talk
    http//www.artima.com/javaseminars/modules/JINI/Ha
    ndout.html
  • JINI Community Web Site, devoted to JINI
    http//www.jinivision.com
Write a Comment
User Comments (0)
About PowerShow.com