Slides for Chapter 1 Characterization of Distributed Systems

Samankaltaiset tiedostot
7. Product-line architectures

Capacity Utilization

Choose Finland-Helsinki Valitse Finland-Helsinki

Security server v6 installation requirements

Security server v6 installation requirements

TIEKE Verkottaja Service Tools for electronic data interchange utilizers. Heikki Laaksamo

National Building Code of Finland, Part D1, Building Water Supply and Sewerage Systems, Regulations and guidelines 2007

7.4 Variability management

Web Service torilla tavataan!

Slides for Chapter 11: Time and Global State

SOA SIG SOA Tuotetoimittajan näkökulma

On instrument costs in decentralized macroeconomic decision making (Helsingin Kauppakorkeakoulun julkaisuja ; D-31)

Voice Over LTE (VoLTE) By Miikka Poikselkä;Harri Holma;Jukka Hongisto

REST an idealistic model or a realistic solution?

Microsoft Lync 2010 Attendee

Use of spatial data in the new production environment and in a data warehouse

Ylläpitäjät, järjestelmäarkkitehdit ja muut, jotka huolehtivat VMwareinfrastruktuurin

On instrument costs in decentralized macroeconomic decision making (Helsingin Kauppakorkeakoulun julkaisuja ; D-31)

SMART BUSINESS ARCHITECTURE

Windows Phone. Module Descriptions. Opiframe Oy puh Espoo

Olet vastuussa osaamisestasi

OSI ja Protokollapino

Salasanan vaihto uuteen / How to change password

Tiedon salaaminen tallennusverkossa Luottokorttinumeroiden tokenisointi

C++11 seminaari, kevät Johannes Koskinen

AFCEA PVTO2010 Taistelija / S4

Perusoikeusbarometri. Panu Artemjeff Erityisasiantuntija

Järjestelmäarkkitehtuuri (TK081702)

IBM Iptorin pilven reunalla

BDD (behavior-driven development) suunnittelumenetelmän käyttö open source projektissa, case: SpecFlow/.NET.

Rich Web Applications in Server-side Java without Plug-ins or JavaScript

FPGA-piirien käyttökohteet nyt ja tulevaisuudessa Tomi Norolampi

IoT-platformien vertailu ja valinta erilaisiin sovelluksiin / Jarkko Paavola

Arkkitehtuuritietoisku. eli mitä aina olet halunnut tietää arkkitehtuureista, muttet ole uskaltanut kysyä

Digitalisoituminen, verkottuminen ja koulutuksen tulevaisuus. Teemu Leinonen Medialaboratorio Taideteollinen korkeakoulu

KONEISTUSKOKOONPANON TEKEMINEN NX10-YMPÄRISTÖSSÄ

Supplies

This notice in TED website:

Curriculum. Gym card

Automaatiojärjestelmän hankinnassa huomioitavat tietoturva-asiat

Internet of Things. Ideasta palveluksi IoT:n hyödyntäminen teollisuudessa. Palvelujen digitalisoinnista 4. teolliseen vallankumoukseen

Efficiency change over time

Tietorakenteet ja algoritmit

The necessary product key can be found in the hand out given to you.

DIPLOMITYÖ ARI KORHONEN

Information on preparing Presentation

Laiteriippumaton UI Ajaxilla ja Javalla

Results on the new polydrug use questions in the Finnish TDI data

Verkottunut suunnittelu

Perinteisesti käytettävät tiedon (datan) tyypit

You can check above like this: Start->Control Panel->Programs->find if Microsoft Lync or Microsoft Lync Attendeed is listed

Rekisteriseloste. Rekisterinpitäjä. Yhteyshenkilö rekisteriä koskevissa asioissa. Rekisterin nimi. Henkilötietojen käsittelyn tarkoitus

Portugalin tasavallan aloite neuvoston päätökseksi Schengenin konsultointiverkoston (tekniset eritelmät) osan 1 muuttamisesta

Supplies

Infrastruktuurin asemoituminen kansalliseen ja kansainväliseen kenttään Outi Ala-Honkola Tiedeasiantuntija

Azuren yleiskatsaus. eli mistä on kyse ja miten vertautuu esim. AWS:ään. AWS User Group Helsinki, Petri Raitio, Sulava Oy

Other approaches to restrict multipliers

Cloud, Convergence, Ubiquity ja muita uudissanoja - ICT toimialan näkymät 2011

T Hypermediadokumentin laatiminen. Sisältö. Tavoitteet. Mitä on www-ohjelmointi? Arkkitehtuuri (yleisesti) Interaktiivisuuden keinot

Office 2013 ja SQL Server 2012 SP1 uudet BI toiminnallisuudet Marko Somppi/Invenco Oy

LIIKETOIMINNAN JATKUVUUDEN VARMISTAVAT PALVELURATKAISUT Simo Leisti Myyntijohtaja, IBM teknologiapalvelut

TÄYTTÖAUTOMAATIT TÄYTTÖAUTOMAATIT COMPUTER INFLATORS

Network to Get Work. Tehtäviä opiskelijoille Assignments for students.

Maailman ensimmäinen Plug & Go etäyhteyslaite

HITSAUKSEN TUOTTAVUUSRATKAISUT

computer are not up to the challenges of tomorrow. home desktop computer obselete.

KODAK EIM & RIM VIParchive Ratkaisut

TURVALLISEN TEKNIIKAN SEMINAARI Laitteiden etähallinta tietoverkkojen välityksellä Jani Järvinen, tuotepäällikkö

Lokivirheiden analysointi

Ohjelmistoarkkitehtuurit Kevät 2016 Johdantoa

REST rajapintana mobiilikehityksessä

Lisensointikuulumisia - Kustannustehokkuus Oracle lisensoinnissa

BLOCKCHAINS AND ODR: SMART CONTRACTS AS AN ALTERNATIVE TO ENFORCEMENT

HSMT J2EE & EJB & SOAP &...

Paikkatietorajapinnat IT arkkitehtuurin näkökulmasta

Group 2 - Dentego PTH Korvake. Peer Testing Report

Copernicus, Sentinels, Finland. Erja Ämmälahti Tekes,

Power BI Tech Conference Power BI. #TechConfFI. Johdanto

1. SIT. The handler and dog stop with the dog sitting at heel. When the dog is sitting, the handler cues the dog to heel forward.

Encapsulation. Imperative programming abstraction via subprograms Modular programming data abstraction. TTY Ohjelmistotekniikka

Smart access control.

truck Check In. truck Check Net. ewaybill ja ajat suoraan terminaaliin

Enterprise Architecture TJTSE Yrityksen kokonaisarkkitehtuuri

Yrityksen hankkimat ohjelmistot ovat muistitikulla ja niiden hallinnointiin tarvittavat aktivointikoodit ovat Taitaja_xx.txt tiedostossa.

HOJ J2EE & EJB & SOAP &...

LUONNOS RT EN AGREEMENT ON BUILDING WORKS 1 THE PARTIES. May (10)

Teknologia-arkkitehtuurit. Valinta ja mallinnus

Sovellusarkkitehtuurit

Kaikki analogiset järjestelmät digitaalisiksi ja verkkokäyttöisiksi - jo tänään Kustannustekkuutta ja joustavuutta työskentelyyn

F-SECURE TOTAL. Pysy turvassa verkossa. Suojaa yksityisyytesi. Tietoturva ja VPN kaikille laitteille. f-secure.com/total

API:Hack Tournee 2014

Tavoitteena yhdistää eri tavoin toteutetut ja eri tavoin toimivat järjestelmät; integration & interoperability.

Katselupalvelujen INSPIRE-yhteensopivuuden testaus

Windows Phone 7.5 erilainen ja fiksu älypuhelin. Vesa-Matti Paananen Liiketoimintajohtaja, Windows Phone Microsoft Oy

Koodistoeditorin toteutuksen lähtökohtia: KaPA-koodistopalvelu ja REST-rajapinnat

Hankkeen toiminnot työsuunnitelman laatiminen

amkbyod-tulostaminen Huittisten ja Kankaanpään kampuksilla / BYOD printing in Huittinen and Kankaanpää campuses

Hankintailmoitus: Pohjois-Savon sairaanhoitopiirin kuntayhtymä/kiinteistöyksikkö : Puijon sairaalan Pääaula-alueen uudistus, Sähköurakka

Uusi Ajatus Löytyy Luonnosta 4 (käsikirja) (Finnish Edition)

Tulevaisuuden työ nyt

Transkriptio:

Slides for Chapter 1 Characterization of Distributed Systems From Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edition 4, Pearson Education 2005 Edited and supplemented by Jonne Itkonen, for TIE427 (2011 & 2013) Yleistä Opiskelumuodot: Luennot tai kirja Valitse toinen tai molemmat Demot Vapaaehtoiset, tehdään enemmän yhdessä Harjoitustyö Pakollinen Aihe: hajautettu järjestelmä Toimii yhteen muiden kanssa, CORBA? Ryhmässä 2-4 henkilöä Yksinkin mahdollinen, ehkä YouSource (git) 1

Characterization A distributed system is one in which components located at networked computers communicate and coordinate their actions only by passign messages. Concurrency of components Lack of a global clock Independent failures of components The sharing of resources is a main motivation for constructing distributed systems. 2

Characterization Concurrency of components Norm Sharing resources Capacity increased by adding resources (f.ex. computers) Lack of a global clock Coordinate actions by exchanging messages No global notion of the correct time only communicating by sending messages Independent failures of components Failure not neccesarily noticed Failure does not stop the system Figure 1.1 A typical portion of the Internet ISP intranet backbone satellite link desktop computer: server: network link: Instructor s Guide for Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edn. 4 Pearson Education 2005 3

Figure 1.2 A typical intranet print and other servers email server Desktop computer Web server Local area network email server File server print other servers the rest of the Internet router/firewall Instructor s Guide for Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edn. 4 Pearson Education 2005 Figure 1.3 Portable and handheld devices in a distributed system Internet Host intranet Wireless LAN WAP gateway Home intranet Printer Camera Mobile phone Laptop Host site Instructor s Guide for Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edn. 4 Pearson Education 2005 4

Figure 1.4 Web servers and web browsers www.google.com Web servers http://www.google.comlsearch?q=kindberg Browsers www.cdk3.net Internet http://www.cdk3.net/ www.w3c.org File system of www.w3c.org Protocols http://www.w3c.org/protocols/activity.html Activity.html Instructor s Guide for Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edn. 4 Pearson Education 2005 Internet HTML Dokumentin rakenteen kuvaus Ulkoasu esim. CSS HTTP Request Response, Client Server Get resurssin haku Post resurssin muokkaus Put resurssin lisäys Delete resurssin poisto Head, Options, Trace, Connect, Patch 5

Internet MIME Internet Media Type XML WebServices WebSDL, SOAP, Internet REST Representational State Transfer http://en.wikipedia.org/wiki/representational_state_transfer Roy Fielding, 2000 (kts. myös HTTP 1.0 ja 1.1) Client-Server Stateless asiakas säilyttää tilan Cacheable palvelin auttaa asiakasta kakutuksessa Layered asiakkaan ja palvelun välissä olevat kerrokset eivät näy (Code on demand) Uniform interface: identification of resources, manipulation of resources through representations, self-descriptive messages, hypermedia as the engine of application state 6

Cloud Computing / Pilvipalvelut Internetin sovellus, tallennus ja laskentapalvelut ei paikallisia sovelluksia tai tallennustilaa toteutettu tietokoneklustereilla Amazon, Apple iworks, Google Apps, MS Office365, Computing may someday be organized as a public utility just as the telephone system is a public utility, Professor John McCarthy said at MIT s centennial celebration in 1961. Each subscriber needs to pay only for the capacity he actually uses, but he has access to all programming languages characteristic of a very large system Certain subscribers might offer service to other subscribers The computer utility could become the basis of a new and important industry. http://www.technologyreview.com/news/425623/the-cloud-imperative/ Resource sharing / resurssien jako tulostimet, levypalvelimet tietovarastot computer-supported cooperative working (CSCW) palvelu (service) hallinnoi joukkoa resursseja tiedostopalvelu read, write, delete operaatiot palvelin (server) prosessi laskentayksikössä asiakas-palvelin (client-server) myös prosesseja arkikielessä laskentayksiköitä / tietokoneita etäkutsu (remote invocation) etäproseduuri, etäolio, asiakasolio, palvelinolio 7

Ubiquitous Computing Characterization Heterogeneity of components Openness components added or replaced Security Scalability when the number of users increases Failure handling Concurrency of components Transparency 8

Heterogeneity of networks, computer hardware, operating systems, programming languages, Middleware: software layer that provides a programming abstraction as well as masking the heterogeneity of implementation by different developers Middleware (välikerros[ohjelmisto]) esimerkkejä: CORBA Common Object Request Broker Architecture Java RMI Mobile code: virtuaalikone, Java/C#, JavaScript Openness components added or replaced whether system can be extended and reimplemented in various ways key interfaces published IETF / RFC OMG / CORBA Open distributed systems (ODS) are based on the provision of a uniform communication mechanism and published interfaces for access to shared resources 9

Openness components added or replaced ODS can be constructed from heterogeneous hardware and software, possibly from different vendors. but the conformance of each component to the published standard must be carefully tested and verified if the system is to work correctly Mitä tehdään kun rajapintaa pitää muuttaa? Rajapintojen versiointi? REST Representational State Transfer Security Confidentiality protection against disclosure to unauthorized individuals Integrity protection against alteration or corruption Availability protection against interference with the means to access the resources not met: denial of service attacks security of mobile code 10

Scalability when the number of users and resources increases Controlling the cost of physical resources Controlling the performance loss Preventing software resources running out IPv4 / IPv6 Avoiding performance bottlenecks DNS Figure 1.5 Computers in the Internet Date Computers Web servers 1979, Dec. 188 0 1989, July 130,000 0 1999, July 56,218,000 5,560,866 2003, Jan. 171,638,297 35,424,956 Instructor s Guide for Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edn. 4 Pearson Education 2005 11

Figure 1.6 Computers vs. Web servers in the Internet Date Computers Web servers Percentage 1993, July 1,776,000 130 0.008 1995, July 6,642,000 23,500 0.4 1997, July 19,540,000 1,203,096 6 1999, July 56,218,000 6,598,697 12 2001, July 125,888,197 31,299,592 25 42,298,371 Instructor s Guide for Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edn. 4 Pearson Education 2005 Failure handling Detecting failures: Some failures can be detected. The challenge is to manage in the presence of failures that cannot be detected but may be suspected. Masking failures: Hide failures or make them less severe. Tolerating failures: Esim. kun web-selain ei löydä palvelinta, se lopettaa yrittämisen ja ilmoittaa virheestä käyttäjälle, eikä jää yrittämään ikuisesti. Recovery from failures: Roll back Redundancy: kts DNS 12

Concurrency of components any object that represents a shared resource in a distributed system must be responsible for ensuring that it operates correctly in a concurrent environment. Synchronized operations, semaphores, Erlang Section 1.4.7 Transparencies Access transparency: enables local and remote resources to be accessed using identical operations. Location transparency: enables resources to be accessed without knowledge of their physical or network location (for example, which building or IP address). Concurrency transparency: enables several processes to operate concurrently using shared resources without interference between them. Replication transparency: enables multiple instances of resources to be used to increase reliability and performance without knowledge of the replicas by users or application programmers. Failure transparency: enables the concealment of faults, allowing users and application programs to complete their tasks despite the failure of hardware or software components. Mobility transparency: allows the movement of resources and clients within a system without affecting the operation of users or programs. Performance transparency: allows the system to be reconfigured to improve performance as loads vary. Scaling transparency: allows the system and applications to expand in scale without change to the system structure or the application algorithms. Instructor s Guide for Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edn. 4 Pearson Education 2005 13

Quality of Service nonfunctional properties of the system reliability, security, performance adaptability (konfiguraatio, resurssimuutokset) time-critical data (stream / virtapalvelut, video, musiikki ) 14