b63d1988f8806480a61024a10c140c5c.ppt
- Количество слайдов: 26
CONCEPTES AVANÇATS DE SISTEMES OPERATIUS Departament d’Arquitectura de Computadors Jini Autors Adam Hospital Gasch o Ignasi Mateos Salvador o Toni Solé Cortada o
Què és JINI? • • • Java Intelligent Network Infraestructure. Desenvolupat per Sun Micro. Systems l’any 1999. Està construït sobre la plataforma J 2 EE, això implica que no importa el hardwarde sobre el qual està construïda la xarxa. És un conjunt d’interfícies i protocols per afrontar els “problemes comuns” dels sistemes ditribuïts. La tecnologia Jini no treballa sobre ordinadors sino sobre serveis, no importa la màquina que hi hagi al darrera ni del lloc on es trobi. 2
Què aporta? • • • Proporciona un mecanisme senzill per a que diversos dispositius conectats a una xarxa puguin col·laborar i compartir recursos sense necesitat de que l’usuari final tingui que planificar i configurar la xarxa. Jini aporta a la xarxa les capacitats de distribució de recursos, serveis basats en xarxes, capacitat de conectar nous dispositius sense preocupacions, dispositius actius i segurs, i facilitat d’administració. Jini pot funcionar en entorns dinàmics on l’aparició o desconexió de dispositius sigui constant. 3
Per a què serveix? • • Jini s’ha desenvolupat inspirat en el llenguatge Java i, sobretot, en la filosofía de la Màquina Virtual de Java (JVM). Per tant, pot funcionar sobre potents estacions de treball, en PCs, en petits dispositius (PDAs, càmares de fotos, mòbils, reproductors de mp 3) o en electrodomèstics de línea marró o blanca (Hi. Fi, TV, Vídeos, set-top boxes, frigorífics, rentadores, etc. . ). Gràcies a Java la compatibilitat i la seguretat estàn garantides. Això permet gran possibilitat d’aplicacions. 4
Xarxes dinàmiques. • • • Els servidors “es cauen”, canvien de lloc, se n’afegeixen, s’en treuen. . . També s’afegeixen, treuen o mouen recursos. Les xarxes varien la seva latència, velocitat i disponibilitat. Fins i tot els protocols de comunicació poden ser substituïts. PROBLEMES : dificulta l’escalabilitat i l’administració. 5
Solució : Objectes distribuits. • Objectes distribuits : Semblant a Client/Servidor pero no del tot, ja que els clients poden servidors, els servidors clients i tots poden aparèixer i desaparèixer dinàmicament. • L’arquitectura està totalment distribuïda, cap dispositiu fa el paper de controlador central, tots poden parlar amb tots i oferir els seus serveis altres. No és necesàri la existència d’un PC central administrant la xarxa. 6
Requeriments (1) • Software : 1. J 2 SE / J 2 EE / JRE versió > 1. 3 2. JINI 1. 1 SDK • Hardware : 1. El nucli de JINI ocupa només 48 kb 2. Memòria. 7
Requeriments (2) • • • No obstant, hi ha més requeriments. De fet, cada servei requereix la seva JVM i els seus propis recursos: JINI Lookup Service ~10 MB. HTTPServer ~9 MB. RMID ~9 MB. Altres. 8
Quins conceptes utilitza? • Com a model de programació: Discovery / Join Events distribuïts Transaccions Interfícies • Com a infrastructura de programació: lookup service (interfície) Join / Discovery Protocol Transaction manager (interfície) Java. Spaces (interfície) 9
Com funciona ? (1) • Jini té un procediment, anonemant discovery per a que qualsevol dispositiu que s’acabi de conectar a la xarxa sigui capaç d’oferir els seus recursos altres, informant de la seva capacitat de processament i de memòria, a més de les funcions que és capaç de fer (rentar la roba, fer una foto, imprimir, fer torrades, etc. ) • Una vegada executat el discovery, s’executarà el procediment join, assignant-li una direcció fixa a la xarxa. 10
Con funciona ? (2) • • Quan un usuari demana un servei a la xarxa, o quan un servei és registrat al lookup service, es negocia un lloguer (leasing), que garanteix el servei durant un periode de temps. Els lloguers són del tipus: § Exclusiu: Només hi pot haver un usuari en el servei. § No exclusiu: El recurs pot ser compartit. • Un lloguer pot ser: § Cancel·lat: Per qui la demanat. § Renovat: Per qui l’ha demanat. § Expirar: Si passa el temps i no es renova o es cancel·la. 11
Con funciona ? (3) • • Un servei, que s’ha registrat al lookup service, ha d’anar renovant periodicament el seu lease, si no ho fa serà eliminat de la xarxa. La tecnologia Jini permet la utilització de transaccions. Una transacció permet agrupar un conjunt d’operacions, on totes s’executen simultàniament o fallen simultàniament. Les transaccions s’implementen a través d’unes interfícies predefinides, que són les que ens donen el protocol de comunicació. 12
Com funciona? (4) A t ep cc A re su lt. I te m s e Lo nc ok ou up nn Lookup service Client Servei 13
Que li ofereix Java a Jini? • • JVM li ofereix un processador en qualsevol plataforma. La serialització li permet enviar els objectes com streams. El RMI (Remote Method Invocation) li permet als objectes cridar a d’altres en processadors diferents i inclús transferir objectes. Moltissimes interfícies. 14
L’exemple de la impresora (1) Printer (JINI Enabled) Lookup Server Broadcasting Per buscar el Lookup server 15
L’exemple de la impresora (2) Printer (JINI Enabled) Lookup Server Announcement 16
L’exemple de la impresora (3) Printer (JINI Enabled) Lookup Server Enregistrament de serveis i atributs al Lookup server 17
L’exemple de la impresora (4) Printer (JINI Enabled) Lookup Server Leasing 18
L’exemple de la impresora (5) Printer (JINI Enabled) Scanner (JINI Enabled) Lookup Server Broadcasting Per buscar el/els Lookup server 19
L’exemple de la impresora (6) Printer (JINI Enabled) Scanner (JINI Enabled) Lookup Server Announcement 20
L’exemple de la impresora (7) Printer (JINI Enabled) Scanner (JINI Enabled) Lookup Server Locate amb interfície i/o atributs 21
L’exemple de la impresora (8) Printer (JINI Enabled) Scanner (JINI Enabled) Lookup Server Locate results 22
L’exemple de la impresora (9) Printer (JINI Enabled) Scanner (JINI Enabled) Lookup Server Utilitza el servei a partir de la Interfície proveida i el Proxy agafat del HTTPServer 23
Conclusions (1) 1. 2. 3. 4. Jini és una arquitectura de comunicacions distribuïda que promou el desplaçament d’objectes en la xarxa. Permet una escalabilitat dinàmica. És una tecnologia econòmica de desenvolupar, no cal pagar taxes ni drets d’autor per utilitzar-la. Permet espontaniament el “plug, use, unplug”. 24
Conclusions (2) • • Permet treballar amb xarxes canviants i molt heterogènes. Portable, gràcies al concepte de JVM. Gracies al protocol de discovery, no cal saber on estan els serveis. Existeixen tecnologies similars a JINI, com : UPn. P o. NET de Microsoft. 25
Referències Sun http: //java. sun. com/jini http: //java. sun. com/learning/ http: //developer. java. sun. com/developer/ www. sun. com/software/communitysource/jini/downl oad. html Jini Community http: //www. jini. org/ 26