JINI Network Technology

Slides:



Advertisements
Similar presentations
- 1 - Jini in the Enterprise O'Reilly Conference on Java Scott Oaks Sun Microsystems
Advertisements

An Introduction of Jini Technology Presenter: Carfield Yim, Gary Lam Date: 31-Jul-2002 How can JINI Technology Boost Our Business.
Distributed Data Processing
Web Service Architecture
Clayton Sullivan PEER-TO-PEER NETWORKS. INTRODUCTION What is a Peer-To-Peer Network A Peer Application Overlay Network Network Architecture and System.
JINI Shashwat Shriparv InfinitySoft.
Distributed Systems 1 Topics  What is a Distributed System?  Why Distributed Systems?  Examples of Distributed Systems  Distributed System Requirements.
Network+ Guide to Networks, Fourth Edition
THE JINI TECHNOLOGY Alessio Zumbo
The road to reliable, autonomous distributed systems
Active Directory: Final Solution to Enterprise System Integration
Notes to the presenter. I would like to thank Jim Waldo, Jon Bostrom, and Dennis Govoni. They helped me put this presentation together for the field.
Chapter 17: Client/Server Computing Business Data Communications, 4e.
Distributed Systems Architectures
CS 603 Jini April 10, What is Jini? Java Middleware Tools to construct federation –Multiple devices, each with Java Virtual Machine –Multiple services.
Identity and Access Management IAM A Preview. 2 Goal To design and implement an identity and access management (IAM) middleware infrastructure that –
Network+ Guide to Networks, Fourth Edition Chapter 1 An Introduction to Networking.
Mgt 240 Lecture Website Construction: Software and Language Alternatives March 29, 2005.
Middleware for P2P architecture Jikai Yin, Shuai Zhang, Ziwen Zhang.
Pay As You Go – Associating Costs with Jini Leases By: Peer Hasselmeyer and Markus Schumacher Presented By: Nathan Balon.
Chapter 5 Roles and features. objectives Performing management tasks using the Server Manager console Understanding the Windows Server 2008 roles Understanding.
Hands-On Microsoft Windows Server 2008 Chapter 1 Introduction to Windows Server 2008.
P2P Systems Meet Mobile Computing A Community-Oriented Software Infrastructure for Mobile Social Applications Cristian Borcea *, Adriana Iamnitchi + *
THE NEXT STEP IN WEB SERVICES By Francisco Curbera,… Memtimin MAHMUT 2012.
Hands-On Microsoft Windows Server 2008
Network+ Guide to Networks, Fourth Edition Chapter 1 An Introduction to Networking.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 12 Slide 1 Distributed Systems Architectures.
Presented by Mark Miyashita
A Cloud is a type of parallel and distributed system consisting of a collection of inter- connected and virtualized computers that are dynamically provisioned.
Introduction - What is Jini Technology?
Local Area Networks (LAN) are small networks, with a short distance for the cables to run, typically a room, a floor, or a building. - LANs are limited.
Microsoft Active Directory(AD) A presentation by Robert, Jasmine, Val and Scott IMT546 December 11, 2004.
Windows 2000 Active Directory Service COSC 513 Yongquan Cai 03/10/2001.
Nov 6, 2000CS851 Ubiquitous Computing1 The Jini Architecture Speaker: Weisheng Si Dept. of Computer Science University of Virginia.
IMPROUVEMENT OF COMPUTER NETWORKS SECURITY BY USING FAULT TOLERANT CLUSTERS Prof. S ERB AUREL Ph. D. Prof. PATRICIU VICTOR-VALERIU Ph. D. Military Technical.
January 26, Jim Waldo Copyright 1999 Sun Microsystems, Inc., all rights reserved.
JINI Gijung Yun © Realtime Embedded Systems Laboratory Inha University
Computer and Information Science Ch1.3 Computer Networking Ch1.3 Computer Networking Chapter 1.
1 Introduction to Middleware. 2 Outline What is middleware? Purpose and origin Why use it? What Middleware does? Technical details Middleware services.
11/13/00 1 Design of a Home Network Rajesh Rajamani
Component Technology. Challenges Facing the Software Industry Today’s applications are large & complex – time consuming to develop, difficult and costly.
Jini tm NetworkingTechnology Directions Jim Waldo Jini Architect Sun Microsystems, Inc.
INTERNET AND ADHOC SERVICE DISCOVERY BY: NEHA CHAUDHARY.
9 Systems Analysis and Design in a Changing World, Fourth Edition.
Enterprise Integration Patterns CS3300 Fall 2015.
GRID Overview Internet2 Member Meeting Spring 2003 Sandra Redman Information Technology and Systems Center and Information Technology Research Center National.
11 CLUSTERING AND AVAILABILITY Chapter 11. Chapter 11: CLUSTERING AND AVAILABILITY2 OVERVIEW  Describe the clustering capabilities of Microsoft Windows.
70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network, Enhanced Chapter 12: Planning and Implementing Server Availability and Scalability.
JINI Coordination-Based System By Anthony Friel * David Kiernan * Jasper Wood.
Jini Architecture Introduction System Overview An Example.
Jini Architectural Overview Li Ping
Overview of Jini CS Fall 2000 Jason I. Hong.
AMQP, Message Broker Babu Ram Dawadi. overview Why MOM architecture? Messaging broker like RabbitMQ in brief RabbitMQ AMQP – What is it ?
25 April Unified Cryptologic Architecture: A Framework for a Service Based Architecture Unified Cryptologic Architecture: A Framework for a Service.
3/12/2013Computer Engg, IIT(BHU)1 CLOUD COMPUTING-1.
1 Active Directory Service in Windows 2000 Li Yang SID: November 2000.
第 1 讲 分布式系统概述 §1.1 分布式系统的定义 §1.2 分布式系统分类 §1.3 分布式系统体系结构.
Enterprise Computing with Jini Technology Mark Stang and Stephen Whinston Jan / Feb 2001, IT Pro presented by Alex Kotchnev.
E-commerce Architecture Ayşe Başar Bener. Client Server Architecture E-commerce is based on client/ server architecture –Client processes requesting service.
The EPIKH Project (Exchange Programme to advance e-Infrastructure Know-How) gLite Grid Introduction Salma Saber Electronic.
11. Jini What is Jini? A "network technology that provides a simple (?) infrastructure for delivering services in a network and for creating interactions.
Bina Ramamurthy Chapter 9
Unit V Mobile Middleware.
An Introduction of Jini Technology
Bina Ramamurthy Chapter 9
Chapter 17: Client/Server Computing
Bina Ramamurthy Chapter 9
JINI ICS 243F- Distributed Systems Middleware, Spring 2001
Jini B.Ramamurthy 5/15/2019 B.Ramamurthy.
Presentation transcript:

JINI Network Technology Palki Chakrabarti

JINI Computer has been redefined The Traditional Expectation The New Paradigm Memory Memory Processor Processor Disk(s) NO DISKS!! Sun’s Technology, Jini is an attempt to rethink computer architecture with more emphasis on network and computer with no disk These devices will need to interact over a dynamic network and devices and services will be added and removed regularly Jini has grown from early work in Java to make distributed computing easier

JINI Provides mechanisms to enable smooth adding, removal, and finding of devices and services on the network Provides a programming model for reliable, secure distributed services and makes it easier for programmers to get their devices talking to each other The Java programming language is the key to making Jini technology work. Built on top of Java, object serialization, and Java Remote Method Invocation (RMI), it enables objects to move around the network from virtual machine to virtual machine. Jini attempts to extend the benefits of object-oriented programming to the network Jini is written in pure Java but the clients and the services are not constrained to be in Java

What is JINI? Jini is a distributed computing network environment that offers, “Network plug and play” Jini also supplies a middleware layer to link services and clients from a variety of sources Jini is a set of APIs and network protocols that can help you build and deploy distributed systems that are organized as federations of services Enable spontaneous networking Simplify delivery of network services Simplify access to network services

Who Developed JINI? Jim Waldo (CORBA, RMI, JavaSpaces) Bill Joy (BSD Unix, SunOS) Ken Arnold (JavaSpaces) Ann Wollrath (Java RMI) Bob Sheifler (X Window System)

Benefits of JINI Jini technology provides the possibility to compose systems to meet specific requirements rather than relying on a general-purpose system Integration of any device to a more dynamic, less fixed and statically organized network and makes using a network more like using a phone Lesser Network administration. -The total cost of ownership of a computer system declines as fewer system administrators are needed Any Device or a Software could announce its presence and clients are able to locate them on the network and therefore allowing software and hardware components to more easily provide network services Jini technology begins to bring together the realms of computing and home networks

Limitations of JINI Intended for workgroups of 2 -1000 nodes / services – intended for smaller LANs rather than the Internet Within the Jini federation, there must be some agreement on notions of trust, identity, policy Depends on Java/RMI or external mechanisms for security Requires Java, 48KB of memory, although one can use similar methods to extend to other languages (Perl, Python etc) Licensing Evolving technology. API changes between 1.0 and 1.1 Performance Sensitive ……

Key Concepts Services Lookup Services Discovery and Join Extended RMI Leasing Transactions JavaSpaces Distributed Security Distributed Events

Requirements of JINI An infrastructure which operates as a dynamically distributed system A common language and implementation that enables low-overhead communication between distributed objects A lookup service which identifies objects that supply those services An add-in protocol which is implemented on each device—this is called the discovery/join protocol A subtract-out mechanism—providing resilience when a device is unplugged which is called leasing

Services A service can be anything that sits on the network and is ready to perform a useful function. Hardware devices, software, communications channels – even human users themselves -- can be services Services may be added or withdrawn from a Jini federation at any time Jini provides mechanisms for service registration, lookup and use Services communicate by using a service protocol = set of Java interfaces Set of services is open-ended

Lookup Services Lookup Services are the central organizing mechanism for Jini-based systems and provide mapping of interfaces to objects. Lookup enables a client to query a lookup service for services that can help the client accomplish its goals Hierarchical Lookup: Lookup service may include entry for other lookup services. When new services become available on the network, they register themselves with a lookup service When clients wish to locate a service to assist with some task, they consult a lookup service The runtime infrastructure uses one network-level protocol, called discovery, and two object-level protocols, called join and lookup

Discovery and Join Discovery is the protocol by which Jini services register themselves with a lookup service Discovery or Lookup is performed by doing a multicast (to find all lookup services) or unicast (when you know the machine on which the lookup service is running) lookup. Jini™ enabled Object (representing a hardware and/or software service) multicasts a packet with a reference to itself The service receives RMI reference to Lookup service (one or more) The service joins a federation by placing an object representing capabilities into the Lookup service for other clients and services to use for a period of time Discovery enables clients and services to locate lookup services Join enables a service to register itself in a lookup service

Extended RMI Communication among services uses Java RMI Extended with leases RMI provides Activation Distributed Garbage Collection Multicast Replication

Leasing A lease is a grant of guaranteed access over a time period. Each lease is negotiated between the user of the service and the provider of the service as part of the service protocol A service is requested for some period; access is granted for some period, presumably taking the request period into account. Leases in term of duration (relative time) – lookup service needs to use resource to maintain registration – device failure can cause error in the available service log If lease expires without renewal, user and provider can free associated resource Leases handle client and network failures, removal of services… Leases in Jini is self-healing. Exclusive lease says service cannot be shared

Transactions Partial failure in distributed systems is a nightmare A series of operations, either within a single service or spanning multiple services, can be wrapped in a transaction The Jini Transaction interfaces supply a service protocol needed to coordinate a two-phase commit – all results save in temporary storage – move from temporary to permanent storage Insures changes made atomically- all or none The very semantics of the notion of a transaction is left up to the service using the interfaces

JavaSpaces The JavaSpaces technology is written in the Java language and is a simple, fast and unified mechanism for dynamic communication, co-ordination and sharing of objects In a distributed application, JavaSpaces technology acts as a virtual space between providers and requestors of network resources or objects participants in a distributed solution can exchange tasks, requests information in the form of Java technology-based objects JavaSpaces technology provides developers with the ability to create and store objects with persistence

Distributed Security The design of the security model for Jini technology is built on the twin notions of a principal and an access control list. Jini services are accessed on behalf of some entity—the principal, which generally traces back to a particular user of the system. Services themselves may request access to other services based on the identity of the object that implements the service. Whether access to a service is allowed depends on the contents of an access control list that is associated with the object. Security plays an important role in distributed systems. The Jini security model is based on the JDK 1.2 security system.

Distributed Events Jini supports distributed events An object may allow other objects to register interest in events in the object and receive a notification of the occurrence of such an event Uses the Observer pattern and sensitive to network issues – delays, disruptions etc Serializable and can be moved across a network Most useful in observing service changes – lookup services going up or down etc Enables distributed event-based programs to be written with a variety of reliability and scalability guarantees

Jini Values Consumers Service providers Product manufacturers Plugging in networked devices and application software is as simple as plugging in a phone today Service providers Simplifies management of application service delivery Product manufacturers Opens entirely new markets (diagnostics, post-purchase upgrades and software enhancements, customer care) Programmers Simplifies the task of writing distributed applications by freeing them from network topology

Jini Example A client program might upload pictures from the image storage service in a digital camera Download the pictures to a persistent storage service offered by a disk drive Send a page of thumbnail-sized versions of the images to the printing service of a color printer A Jini-enabled disk drive, for example, could offer a "storage" service. A Jini-enabled printer could offer a "printing" service. A federation of services, then, is a set of services, currently available on the network, that a client (meaning a program, service, or user) can bring together to help it accomplish some goal In the example, the client program builds a distributed system consisting of itself, the image storage service, the persistent storage service, and the color-printing service

Applications Jini and Bluetooth Jini and Jiro Bluetooth is a wireless point to point networking specification intended for use in a Personal Area Network (PAN) such as cell-phones when they are within a short range. Jini could be used to help these devices locate and communicate with each other Jini and Jiro Jiro is a middle layer of components and services which facilitate connectivity between managed resources and management applications. It runs on top of Jini

Conclusion Sun’s Jini technology provides open, end-to-end solutions for creating dynamically networked products, services, and applications that scale from devices to the enterprise. Because Jini technology addresses problems that only some companies are experiencing, the requirement for this technology is not always readily apparent. For the increasing number of companies that are already hitting the problems of scale, component integration, and ad-hoc networking, especially in the financial, automotive, and telecommunications industries, Jini technology is the premier solution available today.