p-mreznakomponenta i distribsistemi 2005 06

13
Fakultet informacijskih tehnologija [email protected] Uvod u Operativne Sisteme::Predavanja Copyright © by: FIT 1 Datum: 02.06.2006 Predavanje Uvod u operativne sisteme Sadržaj Predavanja Mrežna komponenta i distribuirani sistemi

Upload: goran-petrovic

Post on 06-Nov-2015

4 views

Category:

Documents


1 download

TRANSCRIPT

  • Fakultet informacijskih tehnologija

    [email protected]

    Uvod u Operativne Sisteme::Predavanja Copyright by: FIT

    1

    Datum: 02.06.2006

    Predavanje Uvod u operativne sisteme

    Sadraj Predavanja

    Mrena komponenta i distribuirani sistemi

  • Fakultet informacijskih tehnologija

    [email protected]

    Uvod u Operativne Sisteme::Predavanja Copyright by: FIT

    2

    Distribuirani sistem je skup procesora koji ne dijele memoriju ili sat. Umjesto toga svaki procesor ima svoju vlastitu memoriju. Procesori komuniciraju jedan sa drugim putem raznih komunikacionih kanala (mrea) kao to su bus-ovi velikih brzina ili telefonske linije. U ovom predavanju predstavit emo generalnu strukturu distribuiranih sistema i mrea koje ih povezuju.

    Mrena komponenta i distribuirani sistemi

    U cilju poboljanja perfomansi elektronske obrade podataka raunarski sistemi se mogu povezati u razliite oblike raunarskih mrea.

    Na taj nain se formiraju tzv. distribuirani sistemi iji su osnovni ciljevi poboljanje brzine obrade podataka i pouzdanosti sistema.

    Dva osnovna oblika ovih sistema su: 1. Multiprocesorske konfiguracije 2. Multikompjuterski - Distribuirani sistemi

    Multiprocesorski Sistemi

    Sistemi sa vie od jednog CPU-a - koji komuniciraju meusobno. Ovi sistemi se takoer nazivaju i tightly coupled sistemi, jer procesori dijele

    memoriju i sat (clock). Komunikacija se obino odvija preko dijeljene memorije. Prednosti multiprocesorskih sistema:

    Povean throughput (propustnost) Poveanjem broja procesora, pokuavamo da uradimo vie posla za manje vremena.

    Ekonominost Multiprocesor sistemi mogu kotati manje nego vie ekvivalentnih single-procesor sistema jer prvi mogu da dijele ureaje, sekundarnu memoriju i napajanje.

    Povean reliability (pouzdanost)

    Podbacivanje jednog procesora nee oboriti sistem, ve ga samo usporiti. Dva tipa multiprocesorskih sistema koji se trenutno koriste su:

    1. Sistemi koji koriste simetrino multiprocesiranje (SMP) Svaki procesor izvrava kopiju operativnog sistema. Vie procesora mogu izvravati odjedanput, bez slabljenja performansi rada

    sistema. Veina modernih operativnih sistema podrava SMP.

  • Fakultet informacijskih tehnologija

    [email protected]

    Uvod u Operativne Sisteme::Predavanja Copyright by: FIT

    3

    Slika: Arhitektura simetrinog multiprocesiranja (Lit. br. 2)

    2. Sistemi koji koriste asimetrino multiprocesiranje Svaki procesor je zaduen za specifian zadatak; master procesor

    rasporeuje i alocira posao slave-procesorima. Ovakvi sistemi su vie uestali kod ekstremno velikih sistema

    Distribuirani Sistemi

    Distribuiraju komputaciju na vie procesora Ovakvi sistemi se nazivaju i loosely coupled sistemi svaki procesor ima zasebnu

    lokalnu memoriju; procesori meusobno komuniciraju putem raznih komunikacionih linija, kao to su high-speed bus-ovi ili telefonske linije.

    Posmatrajui sa aspekta pojedinog procesora u distribuiranom sistemu, ostali procesori i njihovi resursi su udaljeni, dok su resursi tog procesora lokalni.

    Distribuirani sistemi za svoje funkcionisanje zahtijevaju mrenu infrastrukturu.

    Slika: Primjer Distribuiranog Sistema (Lit. br. 2)

  • Fakultet informacijskih tehnologija

    [email protected]

    Uvod u Operativne Sisteme::Predavanja Copyright by: FIT

    4

    Motivacija distribuiranih sistema (razlozi za umreavanje)

    Dijeljenje resursa

    Ukoliko je vie ovakvih procesora povezano medjusobno, onda korisnik sa jedne lokacije (jednog procesora) moe da koristi resurse sa druge lokacije.

    dijeljenje i printanje fajlova na udaljenim lokacijama procesiranje informacija u distribuiranim bazama podataka omoguavanje koritenja udaljenih specijaliziranih hardware ureaja

    Ubrzanje komputacija dijeljenje tereta (posla)

    Ukoliko se odreena komputacija moe raspodijeliti na vie manjih komputacija koje bi izvravale istovremeno, onda distribuirani sistem omoguava distribuciju komputacije na vie lokacija.

    - ukoliko je jedan sistem preoptereen, njegov posao se moe distribuirati

    Pouzdanost (reliability)

    Ukoliko jedna lokacija (procesor) padne, ostale mogu da nastave sa radom. olakana detekcija i oporavak od otkazivanja mogu transfer funkcije, kasnija reintegracija lokacije koja je otkazala pad jedne lokacije ne uzrokuje pad itavog sistema

    Komunikacija transfer poruka

    Kada je vie lokacija (procesora) povezano medjusobno, korisnici razliitih lokacija mogu da izmjenjuju informacije.

    fajl transfer, login, mail i dr. Operativni sistemi za distribuirane raunarske sisteme

    Dvije generalne kategorije operativnih sistema za distribuirane raunarske sisteme

    su:

    1. Mreni operativni sistemi 2. Distribuirani operativni sistemi

    Mreni operativni sistemi

    Ovi operativni sistemi pruaju okruenje u kojem su korisnici svjesni da se radi o

    vie maina. Pristup resursima raznih maina eksplicitno je uraen na slijedei nain:

    Udaljeno logovanje (remote login) na odgovarajuu udaljenu mainu Transferiranje podataka sa udaljenih na lokalne maine, via npr. File Transfer

    Protocol (FTP) mehanizma Primjer logovanja na daljinu: Predpostavimo da korisnik sa FIT-a eli da za svoje komputacije koristi kompjuter mouse.itlabs.umn.edu, koji se nalazi na University of Minnesota, S.A.D.. Ukoliko korisnik ima registrovan raun na tom kompjuteru mogao bi se uz pomo slijedee ili sline komande logovati na udaljeni kompjuter:

  • Fakultet informacijskih tehnologija

    [email protected]

    Uvod u Operativne Sisteme::Predavanja Copyright by: FIT

    5

    telnet mouse.itlabs.umn.edu Kao to smo ve napomenuli, dodatna bitna osobina mrenih operativnih sistema je pruanje mehanizma za remote file transfer (transfer fajlova na daljinu), sa jedne maine na drugu. Internet prua mehanizam za ovakav transfer putem FTP programa. Predpostavimo da korisnik sa kompjuter1.fit.ba eli da kopira Java program serverFile.java koji se nalazi na mouse.itlabs.umn.edu. Korisnik bi to mogao da obavi na slijedei nain: ftp mouse.itlabs.umn.edu Korisnik potom unosi svoje logon ime, skupa sa passwordom, te na udaljenom kompjuteru locira direktorij koji sadri fajl serverFile.java. Potom isti moe kopirati kao to slijedi: get serverFile.java Kao to vidimo, u ovoj emi lokacija fajla nije transparentna korisniku. Korisnik mora znati gdje se koji fajl nalazi (na kojem kompjuteru), kako bi mu pristupio.

    Distribuirani-Operativni Sistemi

    Kod distribuiranih OS (za razliku od mrenih OS) korisnici ne primjeuju postojanje vie maina. Korisnici pristupaju udaljenim resursima na isti nain kao i lokalnim resursima. Migracija podataka i procesa izmeu razliitih lokacija (procesora) je pod kontrolom distribuiranog operativnog sistema: Migracija podataka (npr. korisnik na lokaciji A eli da pristupi fajlu lociranom na

    lokaciji B) sistem moe transferirati podatake transferiranjem itavog fajla na lokaciju A, poslije ega e svaki naredni pristup fajlu biti lokalan. U ovom sluaju nakon to korisnik zavri sa fajlom kopija istog se alje ponovo na lokaciju B (ukoliko je dolo do promijena). Drugi metod bi bio da sistem na lokaciju A transferira samo one dijelove fajla koji su potrebni za neposredne (trenutne) poslove (npr. NFS). U oba sluaju transfer fajlova se sa gledita korisnika obavlja transparentno, t.j. sistem je taj koji obavlja transferiranje podataka za korisnika.

    Komputaciona migracija transfer komputacije, radije nego podataka, preko sistema. Primjer: izraunavanje statistike bazirane na velikim fajlovima koji se

    nalaze na drugoj lokaciji

    Proces migracija izvravanje itavog procesa ili nekog njegovog dijela, na razliitim lokacijama. Dakle, proces nije uvijek izvren na lokaciji na kojoj je inicijaliziran. itav proces ili dio njega moe biti izvren na drugim lokacijama. Ova ema se moe koristiti radi:

    Balansiranja optereenja distribuiranje procesa preko mree kako bi se izjednailo optereenje

    Ubrzavanja komputacije podprocesi mogu izvravati konkurentno na vie razliitih lokacija

    Izbora hardvera izvravanje procesa moe zahtijevati specijaliziran procesor koji se nalazi na udaljenoj lokaciji

    Izbora softvera potreban softver moe biti prisutan samo na jednoj lokaciji

  • Fakultet informacijskih tehnologija

    [email protected]

    Uvod u Operativne Sisteme::Predavanja Copyright by: FIT

    6

    Pristupa podacima izvravanje procesa na daljinu, radije nego lokalno

    transferiranje svih neophodnih podataka Pitanje za razmiljanje: Koje od navedenih migracija posjeduje Wold Wide Web?

    Topologija

    Razliite lokacije u distribuiranom sistemu mogu biti fiziki povezane na vie naina. Svaki od ovih naina ima svoje prednosti i nedostatke. Ove konfiguracije moemo usporeivati na osnovu slijedeih kriterija:

    Trokovi instalacije. Koliki su trokovi povezivanja razliitih lokacija? Trokovi komunikacije. Koliko drugo traje slanje poruke od lokacije A do

    lokacije B, plus koliko novaca kota isto slanje?

    Pouzdanost. Ukoliko spojni vod ili jedna itava lokacija u sistemu padne, dali je mogue da preostale lokacije nastave komunicirati meusobno?

    Slika koja slijedi prikazuje razliite mrene topologije. Razliite topologije su

    prikazane kao grafikoni iju vorovi odgovoraju lokacijama. Na pr.: ivica od vora A do vora B odgovara direktnoj konekciji izmeu dvije lokacije.

  • Fakultet informacijskih tehnologija

    [email protected]

    Uvod u Operativne Sisteme::Predavanja Copyright by: FIT

    7

    Slika: Mrene Topologije (Lit. br. 2)

    Kod fully connected network-a, na primjer, svaka lokacija je direktno povezana sa svakom lokacijom. Iako ova topologija ima odlinu pouzdanost te veliku brzinu slanja poruka, njeni instalacioni trokovi su veoma skupi, pa se ema obino koristi samo kod sistema koji se sastoje od svega par lokacija. Tree structured network ima relativno niske trokove instalacije i komunikacije, ali pad jednog spojnog voda u sistemu moe dovesti do particiranja itave mree. Uzimajui ranije navedene kriterije, koje su prednosti i mane svake od ostalih prikazanih topologija?

    Klasifikacija (Tipovi) Mrea

    Mree se mogu klasificirati na vie naina. Glavni metod klasifikacije bazira se na osnovu veliine podruja sa kojeg se raunari povezuju. Na osnovu ove klasifikacije mree moemo podijeliti u slijedee:

    1. Lokalne mree (LAN) 2. Raspostranjene mree (WAN) 3. Globalna mrea Internet

  • Fakultet informacijskih tehnologija

    [email protected]

    Uvod u Operativne Sisteme::Predavanja Copyright by: FIT

    8

    Distance izmeu

    procesora Procesori locirani u

    istom/istoj 1 m Kvadratnom metru

    10 m Prostoriji

    100 m Zgradi

    1 km Kampusu

    10 km Gradu

    100 km Dravi

    1000 km Kontinentu

    10 000 km Planeti

    Slika: Klasifikacija mrea po njihovoj rasprostranjenosti (Lit. br. 3)

    Local-Area Network (LAN) dizajnirana da pokrije manji geografski prostor

    (soba, sprat, zgrada) Multi-pristupni bus, ring, ili star mrea. Brzina 10 megabita/sekundi ili vea (10/100BaseT Ethernet) vorovi:

    Obino radne stanice (workstations) i/ili personalni kompjuteri Par (obino jedan ili dva) mainframe kompjutera

    Slika: Prikaz tipinog LAN-a (Lit. br. 2)

    Wide-Area Network (WAN) povezuje geografsko odvojene lokacije (vie zgrada, gradova, zemalja)

    Point-to-point konekcije preko dugakih kablova (esto iznajmljivanih od telefonskih kompanija).

    Brzina 100 kilobita/sekundi.

    Personal area network

    LAN (local area network)

    WAN (wide area network)

    Internet

  • Fakultet informacijskih tehnologija

    [email protected]

    Uvod u Operativne Sisteme::Predavanja Copyright by: FIT

    9

    vorovi:

    Obino visok procenat mainframe kompjutera

    Komunikacije

    Nakon to smo razmotrili neke od fizikih osobina umreavanja, osvrnuemo se na odreene aspekte koji se tiu funkcionisanja mrea.

    Dizajneri komunikacijske mree moraju uzeti u obzir pet osnovnih stvari:

    Strategija rutiranja. - Kako se poruke alju preko mree? Strategija povezivanja. - Nain na koji dva procesa alju sekvencu poruka? Kontentcija. - Mrea je dijeljen resurs, kako onda rjeavamo konfliktne zahtjeve za njeno koritenje? Imenovanje i razlaganje imena. - Kako dva procesa lociraju jedan drugog da bi bili u stanju da komuniciraju? Strategija dizajna

    Strategije Rutiranja

    Kada proces koji se nalazi na lokaciji A eli da komunicira sa procesom koji se nalazi

    na lokaciji B, kako se poruke alju? - jedna fizika veza izmeu A i B: poruke moraju ii kroz tu vezu - vie fizikih veza izmeu A i B: postoji vie ruting opcija

    - svaka lokacija ima routing table (tabelu rutiranja) koja indicira alternativne putanje za slanje poruka drugim lokacijama

    Tri najee koritene eme rutiranja su:

    - Fiksno rutiranje - Virtualno rutiranje - Dinamiko rutiranje a. Fiksno rutiranje (fixed routing). Putanja izmeu A i B je odreena unaprijed; Putanja se mijenja samo ukoliko je hardver greka onesposobi.

    Iz razloga to je najkraa putanja obino izabrana, komunikacioni trokovi su minimizirani.

    Fiksno rutiranje se ne moe prilagoditi promjeni optereenja Osigurava da e poruke biti dostavljenu u redoslijedu po kojem su i poslane

    b. Virtualno rutiranje (virtual circuit). Putanja od A do B se ne mijenja u toku jedne sesije. Razliite sesije slanja poruka od A do B mogu koristiti razliite putanje.

    Parcijalan lijek za adaptaciju promjene optereenja Osigurava da e poruke biti dostavljene u redoslijedu po kojem su poslane

    c. Dinamiko rutiranje. Putanja koritenja za slanje poruke od lokacije A do lokacije B izabire se neposredno prije nego se poruka alje.

  • Fakultet informacijskih tehnologija

    [email protected]

    Uvod u Operativne Sisteme::Predavanja Copyright by: FIT

    10

    Obino jedna lokacija alje poruku drugoj lokaciji preko veze koja se

    najmanje koristi u datom momentu Adaptira se promjeni optereenja tako to izbjegava rutiranje poruka preko

    mnogo promentnih putanja Poruke mogu stizati u drukijem redoslijedu nego to su poslane. Ovaj

    problem moe biti rijeen dodavanjem sekvencijonalnog broja u svaku poruku

    Strategije Povezivanja

    Dva procesa koji ele komunicirati preko mree mogu bit povezani na vie naina.

    Neki od njih su: a. Circuit switching. Permanentna fizika veza je uspostavljena za vrijeme trajanja jedne komunikacijske sesije; ostali procesi ne mogu koristiti tu vezu (analogno telefonskom sistemu). b. Message switching. Privremena veza je uspostavljena za period trajanja jednog transfera poruke (analogno potanskom sistemu)

    c. Packet switching. Poruke varijabilnih duina su podijeljene u pakete fiksnih duina koji se alju do destinacije. Svaki od paketa moe putovati razliim putanjama kroz mreu, na putu prema destinaciji. Paketi moraju biti ponovo sastavljeni u poruke kada dodju do destinacije. Circuit switching zahtijeva neto vie vremena da bi se uspostavio, ali zato zahtijeva

    manje posla prilikom slanja svake poruke; moe zauzimati dosta bandwith-a. Message and packet switching zahtijevaju manje vremena da bi se uspostavili, ali zato zahtijevaju vie posla prilikom slanja svake od poruka.

    Kontencija

    Razliite lokacije mogu pokuati da poalju informacije preko iste veze istovremeno kolizija izmijeane informacije. Tehnike za sprjeavanje ponavljanja kolizija ukljuuju:

    SCMA/CD : Collision detection (CD) ; Carrier sense with multiple access (CSMA) Prije slanja poruke preko linka, sistem koji eli da alje poruku najprije

    oslukuje taj link, da provjeri dali se neka druga poruka upravo alje preko istog linka. Ukoliko dvije ili vie lokacija ponu da transmituju u isto vrijeme, registrovae CD i prestati transmitovati.

    Kada je sistem veoma optereen, moe doi do mnogobrojnih kolizija, a time i do znatnog slabljenja performansi.

    SCMA/CD se uspjeno koristi kod Ethernet sistema - najee koritenog mrenog sistema.

    Token passing. Jedinstven tip poruke, poznat kao token, krui sistemom (obino kod prstenaste, t.j. ring strukture). Lokacija koja eli transmitovati informacije mora ekati dok token ne stigne do nje. Kada token dodje do lokacije koja eli da transsmituje ta lokacija skida token sa sistema te poinje sa transmitovanjem informacija. Nakon

  • Fakultet informacijskih tehnologija

    [email protected]

    Uvod u Operativne Sisteme::Predavanja Copyright by: FIT

    11

    to ista lokacija kompletira svoju rundu slanja poruke, ponovo retransmituje token. Token-passing ema se koristi kod IBM i Apollo sistema.

    Message slots. Odreen broj slotova (praznih mijesta) fiksne veliine kontinuirano krui mrenim sistemom (koji je obino prstenaste - ring strukture). Iz razloga to jedan slot moe da sadri samo poruke fiksnih veliina, logika poruka ponekad mora da se podijeli u vei broj manjih paketa, svaki od kojih se alje u posebnom slotu. Ova ema je adaptirana u eksperimentalnom Cambridge Digital Communication Ringu.

    Komunikacijski protokoli

    Dizajn komunikacijske mree:

    Kompleksnost koordinacije asinhronih operacija koje komuniciraju u okolini sklonoj grekama

    Sistemi na mrei se moraju sloiti u protokolu (pravilu slanja poruka) : odreivanje imena kompjutera, uspostavljanje konekcija, itd.

    Radi simplifikacije problema dizajna, problem se particira u vie slojeva, svaki od kojih komunicira sa adekvatnim slojem na drugom kompjuteru.

    Slijedea slika prikazuje logiku komunikaciju izmeu dva kompjutera, putem OSI

    modela. Ovaj model propisuje sedam funkcionalnih nivoa od kojih svaki predstavlja zaseban skup zadataka u funkciji prenosa podataka. Svaka poruka poslana sa jednog raunara ka drugom mora proi kroz ove nivoe, kako u postupku slanja, tako i prijema poruke.

    Slika: Komunikacija putem OSI mrenog modela (Lit. br. 2)

  • Fakultet informacijskih tehnologija

    [email protected]

    Uvod u Operativne Sisteme::Predavanja Copyright by: FIT

    12

    Strategije Dizajna

    Komunikaciona mrea OSI mrenog modela je podijeljena u slijedee slojeve:

    Fiziki sloj zaduen za mehanike i elektrine detalje fizike transmisije bit-niza - elektronska reprezentacija binarnih vrijednosti

    Data-link sloj zaduen za upravljanje okvirima (frames) - dijelovima paketa fiksnih veliina, to ukljuuje i detekciju i oporavak greaki koje su se dogodile u fizikom sloju

    Mreni sloj prua konekcije i rutira pakete u komunikacionoj mrei, ukljuujui

    upravljanje adresama paketa za slanje, dekodiranje adresa dolazeih paketa, te praenje (biljeenje) ruting informacija za prikladan odgovor na promjenjive nivoe optereenja

    - ruteri

    Transportni sloj odgovoran za mreni pristup niskog nivoa, te za transfer poruka meu klijentima, to ukljuuje i particiranje poruka u pakete, odravanje redoslijeda paketa, kontroliranje protoka, i generiranje fizike adrese

    Sesijski sloj implementira sesije, ili proces-proces komunikacijske protokole

    - login na daljinu, fajl & mail transfer ...

    Prezentacijski sloj uklanja razlike u formatima izmeu raznih lokacija na mrei, ukljuujui konverzije karaktera, kao i half duplex/full duplex razliku

    Aplikacijski sloj izvrava direktnu interakciju sa korisnicima, vezanim za transfer

    fajlova, login procedure sa udaljenih lokacija i e-mail

  • Fakultet informacijskih tehnologija

    [email protected]

    Uvod u Operativne Sisteme::Predavanja Copyright by: FIT

    13

    Obrada i prijevod dijelova sljedee literature:

    1. Bajgori (2004), Operativni Sistemi: Knjiga 1 2. Silberschatz (2004), Operating System Concepts, 6th edition 3. Tanenbaum (2001), Modern Operating Systems, 2nd edition