case study printservice -dynamically networked products, services, and applications -network...
DESCRIPTION
Infrastructure Requirements 2TRANSCRIPT
![Page 1: Case Study PrintService -dynamically networked products, services, and applications -network computer / consoles (powerful processor, several MB of memory)](https://reader036.vdocuments.us/reader036/viewer/2022082723/5a4d1af87f8b9ab059982552/html5/thumbnails/1.jpg)
Case Study PrintService
- dynamically networked products, services, and applications
- network computer / consoles (powerful processor, several MB of memory)
©2001 Jerome Colombie
![Page 2: Case Study PrintService -dynamically networked products, services, and applications -network computer / consoles (powerful processor, several MB of memory)](https://reader036.vdocuments.us/reader036/viewer/2022082723/5a4d1af87f8b9ab059982552/html5/thumbnails/2.jpg)
Infrastructure Requirements
• Java 2 platform, Standard Edition (J2SE) (May 8, 2000)
• Jini is written purely in Java• JVM (powerful processor, several MB
of memory)• JRE 1.3 / JDK1.2.* (Solaris / Windows / Linux)
• network (TCP/IP)
![Page 3: Case Study PrintService -dynamically networked products, services, and applications -network computer / consoles (powerful processor, several MB of memory)](https://reader036.vdocuments.us/reader036/viewer/2022082723/5a4d1af87f8b9ab059982552/html5/thumbnails/3.jpg)
Infrastructure Requirements 2
![Page 4: Case Study PrintService -dynamically networked products, services, and applications -network computer / consoles (powerful processor, several MB of memory)](https://reader036.vdocuments.us/reader036/viewer/2022082723/5a4d1af87f8b9ab059982552/html5/thumbnails/4.jpg)
Software Requirements
• http-server (Class files, centralized, distributed)
• lookup-service reggie• rmid (Activation, power saving, activatable hardware with
standby) lease manager, lookup manager
![Page 5: Case Study PrintService -dynamically networked products, services, and applications -network computer / consoles (powerful processor, several MB of memory)](https://reader036.vdocuments.us/reader036/viewer/2022082723/5a4d1af87f8b9ab059982552/html5/thumbnails/5.jpg)
Programming Requirements
• Discovery (Unicast / Multicast for maximum flexibility)
• Three Tiers (Thin-Client, dynamic GUI/driver, Print-Service)
• Thin-Client searches for specific Interface (Attributes: Address (vendor), Location, ServiceInfo, ServiceType, Status)
• GUI/driver (Transformation of Input-File, Printer-Selection)
• PrintService (Hardware abstraction, job-scheduling, billing data)
![Page 6: Case Study PrintService -dynamically networked products, services, and applications -network computer / consoles (powerful processor, several MB of memory)](https://reader036.vdocuments.us/reader036/viewer/2022082723/5a4d1af87f8b9ab059982552/html5/thumbnails/6.jpg)
Prgramming Requirements 2
Client PrintManager (GUI / Driver)Printer
PrintService
![Page 7: Case Study PrintService -dynamically networked products, services, and applications -network computer / consoles (powerful processor, several MB of memory)](https://reader036.vdocuments.us/reader036/viewer/2022082723/5a4d1af87f8b9ab059982552/html5/thumbnails/7.jpg)
Interface Requirements
• Client / Server must share common Interface
• Beans (get and set methods for attributes)getAttribute(name, value)setAttribute(name, value)
• Attributes (Entry[], service specific attributes: driver, supported file-formats or languages, security-levels)
![Page 8: Case Study PrintService -dynamically networked products, services, and applications -network computer / consoles (powerful processor, several MB of memory)](https://reader036.vdocuments.us/reader036/viewer/2022082723/5a4d1af87f8b9ab059982552/html5/thumbnails/8.jpg)
Attributes
• Find Service (Printer, Movieplayer, PCMCIA-Cards, wordprocessor)
• Load Interface (Entry[], TypeInfo, ServiceInfo, Manufacturer)
• Find Driver for Service (Printer driver, plug-ins, application from specific vendor)
![Page 9: Case Study PrintService -dynamically networked products, services, and applications -network computer / consoles (powerful processor, several MB of memory)](https://reader036.vdocuments.us/reader036/viewer/2022082723/5a4d1af87f8b9ab059982552/html5/thumbnails/9.jpg)
Interface PrintService.java
PrintService.java
import java.rmi.*;
public interface PrintService { public String print(String file) throws RemoteException; public boolean setAttributes(String room, String device,
String format, String copies, boolean flagboolean psnup) throws RemoteException;
}
![Page 10: Case Study PrintService -dynamically networked products, services, and applications -network computer / consoles (powerful processor, several MB of memory)](https://reader036.vdocuments.us/reader036/viewer/2022082723/5a4d1af87f8b9ab059982552/html5/thumbnails/10.jpg)
Interface PrintManager.java
PrintManager.java
import java.rmi.*;
public interface PrintManager { public boolean start(String clientinfo) throws RemoteException;}
![Page 11: Case Study PrintService -dynamically networked products, services, and applications -network computer / consoles (powerful processor, several MB of memory)](https://reader036.vdocuments.us/reader036/viewer/2022082723/5a4d1af87f8b9ab059982552/html5/thumbnails/11.jpg)
What do we get?
• Dynamic loading of services without configuration or user-intervention
• the implementation of services is loaded dynamically, at runtime
• no administration (little) needed, ideal for dynamic environments
• A Jini Community is self-healing. (Printer failure)
![Page 12: Case Study PrintService -dynamically networked products, services, and applications -network computer / consoles (powerful processor, several MB of memory)](https://reader036.vdocuments.us/reader036/viewer/2022082723/5a4d1af87f8b9ab059982552/html5/thumbnails/12.jpg)
Service registration
Client PrintManager (Driver)
PrintServicePrintService register
PrintManager register
LUS
![Page 13: Case Study PrintService -dynamically networked products, services, and applications -network computer / consoles (powerful processor, several MB of memory)](https://reader036.vdocuments.us/reader036/viewer/2022082723/5a4d1af87f8b9ab059982552/html5/thumbnails/13.jpg)
Discovery / Loading
Client PrintManager (Driver)
LUS
1. Discover Print- Manager
2. Load PrintManager
(Local Execution)
![Page 14: Case Study PrintService -dynamically networked products, services, and applications -network computer / consoles (powerful processor, several MB of memory)](https://reader036.vdocuments.us/reader036/viewer/2022082723/5a4d1af87f8b9ab059982552/html5/thumbnails/14.jpg)
Discovery / Printing
Client PrintManager (Driver)
LUS
1. Discover Print- Service
2. Print
![Page 15: Case Study PrintService -dynamically networked products, services, and applications -network computer / consoles (powerful processor, several MB of memory)](https://reader036.vdocuments.us/reader036/viewer/2022082723/5a4d1af87f8b9ab059982552/html5/thumbnails/15.jpg)
Problems:
• Service Interfaces must be specified (a server is an implementation of a service)
• Interface is crucial. Both client and server know it.
• Jini Community (Developers) define set of common and ubiquitous interfaceshttp://www.jini.org/
• Generic Interface (Use object reflection to learn the interface of a service, extendible)
![Page 16: Case Study PrintService -dynamically networked products, services, and applications -network computer / consoles (powerful processor, several MB of memory)](https://reader036.vdocuments.us/reader036/viewer/2022082723/5a4d1af87f8b9ab059982552/html5/thumbnails/16.jpg)
Areas of application
• large systems (scalability)• environments sensitive to security and
fail-safety (robustness)• distributed systems• Ad-hoc networks
![Page 17: Case Study PrintService -dynamically networked products, services, and applications -network computer / consoles (powerful processor, several MB of memory)](https://reader036.vdocuments.us/reader036/viewer/2022082723/5a4d1af87f8b9ab059982552/html5/thumbnails/17.jpg)
Key Features:
• open standards based environment• Provides cross-platform compatibility,
safe network delivery, and smartcard to supercomputer scalability
• dynamically networked products, services, and applications that scale from device to the enterprise
• rapid and cost effective development
![Page 18: Case Study PrintService -dynamically networked products, services, and applications -network computer / consoles (powerful processor, several MB of memory)](https://reader036.vdocuments.us/reader036/viewer/2022082723/5a4d1af87f8b9ab059982552/html5/thumbnails/18.jpg)
Official Case Study from Sun:
• Jini[tm] Network Technology Drafted for Service in the U.S. Army
• Tactical Operation Centers• control, execute, plan, and monitor battlefield maneuvers• introduce new computing and communications elements into
the network under battle conditions• independent of computer re-starts, device drivers, system re-
configurations, and extensive technical support• increased TOC mobility and functionality