Professional Documents
Culture Documents
Paralelni programi mogu biti distribuirani i distriburani programi mogi biti i paralelizovani.
Data race kada 2 ili vie zadataka rade sa istom deljenom promenljivom, tada konana vrednost te
promenljive zavisi od redosleda kojima su joj zadaci pristupali.
Deadlock kada 2 zadatka pre svog izvravanja ele da zauzmi 2 ista resursa ali razliitim redosledom,
moe se dogoditi da jedan zadatak zauzme jedan resurs, a drugi zadatak drugi resurs. U tom momentu,
ova dva zadatka ce se nai u situaciji da ekaju da se resurs koji im treba oslobodi.
Beskonano odlaganje kada neki zadatak eka da se desi odreeni dogaaj da bi nastavio sa svojim
izvravanjem, a taj dogaaj se ne dogodi, on e beskonano dugo ostati u ekanju.
Distribuirani sistem je mnotvo povezanih resursa koje korisnik doivljava kao jedinstven i koherentan
sistem.
1) Povezanost
2) Transparentnost
3) Otvorenost
4) Skalabilnost
Klaster obino se sastoje iz istog ili slinog hardvera, koji imaju isti operativni sistem, nalaze se u
neposrednoj blizini, imaju homogenu administraciju, povezani su na istu mreu, raunari rade paralelno
na reavanju jednog zadatka
Grid razliit hardver, razliiti operativni sistemi, geografski dislocirani, povezani su preko WAN mrea,
heterogena administracija, raunari rade paralelno na reavanju jednog zadatka
Arhitektura
1) Slojevita arhitektura
5) Hibridne
1) Centralizovana arhitektura
2) Decentralizovana arhitektura
- vertikalna distribucija
- horizontalna distribucija
3) Vieslojna/Meovita arhitektura
Procesi
Sesija je skup zahteva koje klijent alje serveru u konanom vremenskom intervalu.
3. ta je servis/server?
Iterativni server sastoji se od jednog procesa koji redom opsluuje sve klijentske zahteve redom kojim
stignu
Konkurentni server obradu zahteva klijenata prosleuje posebnim nitima ili procesima
4. ta je endpoint?
5. Endpoint vs superserver.
Endpoint server lako dostupan na poznatom endpointu, klijentima prua uslugu nalaenja traenih
servisa, tj. njihovih endpoint-a.
Superserver jedan proces koji oslukuje na svim endpoint-ima, na zahtev klijenta fork-uje eljeni
proces (fork = kreiranje novog procesa za obradu zahteva).
1) Stateless
2) Soft state
3) Statefull
4) Session state
Migracija koda je pomeranje programa, koje moe biti omogueno i tokom izvravanja istog.
1) Segment koda
2) Segment resursa
3) Segment izvrenja
Kod slabe migracije kopira se samo segment koda i osnovni podaci za inicijalizaciju migriranog procesa.
Socket komunikacioni endpoint u koji aplikacije upsiuju podatak za slanje kroz mreu i iz kojeg itaju
podatke primljene kroz mreu
Protokol skup standarnih pravila koja formalizuju komunikaciju izmedju elemenata. Tipovi su
connection oriented i connectionless.
2. OSI vs TCP/IP.
Slinosti:
-sastoje se od slojeva
Razlike:
-kod OSI prenosnog sloja isporuka je uvek zagarantovana, dok kod UDP TCP/IP nema garancije isporuke
Modbus svaki ureaj na Modbus magistrali ima jedinstvenu adresu. Primenjuje se kod komunikacije
sa procesnom opremom.
ICCP slui da smanji broj razliitih protokola. Koristi se za komunikaciju izmeu kontrolnih centara.
Medijumi mogu biti ini ili beini. ini medijumi su kablovi, a beini GSM, WiFi, RFID...
Kod perzistentne komunikacije poruke se uvaju u middleware-u do trenutka isporuke, dok se kod
tranzijentne komunikacije poruke ne uvaju u middleware-u.
Kod asinhrone komunikacije strana koja inicira komunikaciju ne eka na odgovor, dok je kod sinhrone
komunikacije strana koja inicira komunikaciju blokirana i eka na odgovor.
7. Stremanig.
U sistemima gde je vanija pravovremena isporuka poruka u odnosu na isporuku kompletnih informacija
primenjuje se data streaming. Data stream je niz povezanih podataka. Protokoli za data streaming su:
RTP i RTCP.
Tipovi prenosa:
-Asinhroni prenos elementi se alju jedan za drugim, bez provere redosleda prijema.
Reprezentacija podataka:
Imena
Tipovi imena:
3) itljiva adresa sastoji se od niza karaktera koji su itljivi oveku (URL adrese)
4) Kuna adresa distribuirani sistem imena omoguava nalaenje kune adrese svakog entiteta.
Entitet se javlja kui kad se premeta, te je omogueno njegovo praenje
Tipovi vorova:
1) List nema odlazne grane u usmerenom grafu, mapira imena sa adresama entiteta
Putanja se formira od imena vorova. Apsolutna putanja je od korenskog vora, relativna putanja je od
nekog vora koji nije korenski.
Postoje sistemi za nalaenje veeg broja entiteta koji imaju zadate vrednosti skupa atributa. Realizuju se
preko direktorijuma servisa. Entiteti se opisuju sa parom (atribut, vrednost).
Sinhronizacija
1. ta je sinhronizacija?
Tipovi sinhronizacije:
GPS je distribuirani sistem koji omoguava precizno odreivanje geografske pozicije koristei satelite.
GPS prijemnici se esto koriste za precizno odreivanje vremena.
3. Vreme i raunari.
Raunari sadre brojae bazirane na upotrebi precizno obraenih kristala koji osciluju.
Zbog CMOS baterije, brojai u raunarima rade i kada su raunari iskljueni iz struje.
Network Time Protocol (NTP) je protokol koji omoguava centralizovano raunanje vremena u
distribuiranom sistemu. Postoji jedan server od kojeg klijenti dobijaju tano vreme na zahtev. NTP server
moe biti vezan za GPS prijemnik tanog vremena.
5. Logiki asovnik.
Logiki asovnik omoguava odreivanje redosleda dogaaja u distribuiranom sistemu na kojem moe
isto da se bazira sinhronizacija. Primer je Lamport-ov.
Algoritmi:
1) Token ring
2) Centralizovani algoritam
3) Decentralizovani algoritam
4) Distribuirani algoritam
7. Izbor koordinatora.
Bully algoritam proces A pokree izbor kada primeti da koordinator K ne odgovara na zahteve. On alje
poruku o izboru svim procesima sa veim identifikatorom od njega. Ako poruku o izboru dobije proces B
koji ima vei identifikator od A, on alje poruku OK i time dobija izbore. Ako niko ne odgovori, A dobija
izbore.
Algoritam prstena procesi su sortirani i formiraju prsten. Proces A pokree izbor kada primeti da
koordinator K ne odgovara na zahteve. Proces A kreira poruku IZBOR i prosleuje je sledeem voru.
Svaki proces koji se izvrava dodaje svoj identifikator u poruku time nominujui sebe. Kada poruka doe
ponovo do A, selektuje se najvei identifikator, formira se poruka KOORDINATOR i alje se onim
vorovima koji su se nominovali.
Konzistencija i replikacija
Replikacija je proces kreiranja namerno repliciranih resursa u distributivnim sistemima. Uvodi se zbog
poveanja dostupnosti sistema i poboljanja preformansi.
Model konzistencije je dogovor izmedju skladita podataka i procesa. Ako proces potuje propisana
pravila pristupa, skladite podataka e biti konzistentno.
1) Sekvencijalna konzistencija
2) Uzrona konzistencija
5. Tipovi replika.
1) Stalne
Promena izazvana operacijom upisa se propagira u sve replike. Propagacija obavetenja o nastalim
promenama: -navodi koji deo podatka je promenjen
Sigurnost i bezbednost
1. Sigurnost vs bezbednost.
To su bezbednosni ciljevi.
Integritet resursi sistema se menjaju samo od stranje autorizovanih entiteta i na autorizovan nain
3. Elementi sigurnosti.
Mere bezbednosti slabost sistema se smanjuje merom bezbedednosti i tako se otklanja pretnja
Patentima se titi hardver. Postupci za izradu hardvera i softvera se zovu poslovna tajna. Dokumentacija
i softver se titi autorskim pravom. Zbog oteane zatite softvera, on se licencira.
5. Pretnje.
1) Presretavanje
2) Ispad
3) Modifikacija
4) Fabrikacija
6. Malware.
Po tipu nosioca:
-Samostalni crv
Po nainu propagacije:
7. Kompleksne pretnje.
1) Rootkit
2) Botnet
3) Zero day
4) Watering hole
Funkcionalna grupa obuhvata sve inioce informacionog sistema koji su potrebni za izvravanje jedne,
odreene funkcije
Zona je grupa elemenata informacionog sistema formirana od jedne ili vie slinih funkcionalnih grupa.
Eksterna i interna bezbednostna zona.
9. Mere bezbednosti u IT domenu.
1) Enkripcija
2) Autentifikacija
3) Autorizacija
5) Naplata usluga
Fizika bezbednost:
3) Odlazak zaposlenih
4) Protok ljudi
Tolerancija na otkaze
2. Tipovi otkaza.
1) Ispad servisa
3) Vremenski otkaz
4) Nevalidan odgovor
Otkaz servera moe da se desi u bilo kojoj fazi. Klijent moe ali ne mora da ponovo poalje zahtev nakon
detekcije otkaza servera.
Ako klijent otkae nakon slanja zahteva onda nije poeljno da se zahtev izvri. Zahtev koji je klijent
poslao pre otkaza se naziva siroe.
Asinhroni zahtev klijent nastavi sa radom i naie na greku koja prouzrokuje ispad.
Checkpoint je snimak celokupnog ili deliminog stanja distribuiranog sistema u odreenom vremenskom
trenutku.
Beleenje poruka je mera koja omoguava restauraciju stanja distribuiranog sistema nakon otkaza
nekog elementa.
5. Nenamerne greke.
2) Buffer overflow
3) Buffer over-read
Nadzor i upravljanje
Predmet nadzora u distribuiranom sistemu je promena stanja sistema u vremenu. Izazov je nadzirati
sistem u kojem se deava puno promena ili u sluajevima nekih vanrednih dogaaja.
3. Upravljanje komunikacijama.
Praenje optereenja i odziva komunikacionih kanala, i adekvatne reakcije ukoliko su optereenje ili
odziv neadekvatni.
4. Upravljanje replikama.
Cilj upravljanja replikama je odravanje odreenog nivoa kvaliteta usluga distribuiranog sistema.
5. Upravljanje konfiguracijama.
6. Reakcija na incidente.
Monitoring podaci omoguavaju detekciju i reakciju na incidente. Ukoliko se desio incident, izvravaju se
neke od sledeih akcija:
Distribuirani algoritmi
Osnovni algoritam izvrava distribuiranu obradu u kojoj uestvuje dva ili vie procesa u distribuiranom
sistemu.
3. Algoritam talasa.
Algoritam talasa omoguava procesu P da prikupi informacije od svih procesa u distribuiranom sistemu.
Dva tipa:
1) Algoritam obilaska
2) Eho algoritam
4. Algoritam za odabir putanje bez RIP.
Algoritam za odabir putanje nalazi optimalnu putanju u mrei iz skupa moguih putanja. Mogui naini
odabira: broadcast, multicast, unicast, anycast, geocast.
5. Meusobna iskljuivost.
1) Kritine sekcije
2) Centralizovani algoritam
3) Logiki asovnik
4) Token ring
5) Raymond algoritam
6. Izbor koordinatora.
1) Bully algoritam
2) Algoritam prstena
7. Simetrina kriptografija.
8. Asimetrina kriptografija.
U sistemima za asimetrinu kriptografiju koriste se razliiti kljuevi za kodiranje (tajni klju) i dekodiranje
(javni klju).
Hash je jednosmerna funkcija koja pretvara digitalne podatke proizvoljne duine u digitalan podatak
fiksne duine.
Digitalni potpis kada strana A poalje poruku strani B, moraju se osigurati sledee situacije: da strana B
nee zlonamerno promeniti sadraj primljene poruke i da strana A ne moe da tvrdi da nikada nije
poslala poruku. Postoji vie naina za digitalno potpisivanje, primeri su: potpisivanje sistemom javnih
kljueva, hash-ovanjem.
10. Autentifikacija.
Autentifikacija je provera identiteta neke stranke. To je prvi korak kod uspostavljanja bezbednih kanala.
11. Autorizacija.
Provere:
1) MAC
2) DAC
3) RBAC
Presek stanja se sastoji od skupa internih stanja procesa i poruka na komunikacionim kanalima. Razlozi
za formiranje preseka stanja: detekcija mrtvih petlji, zavretak obrade, garbage collection, restart
sistema, nalaenje greaka.
Detekcija otkaza omoguava da grupa procesa detektuje procese koji su otkazali. Mehanizmi: aktivno,
pasivno.
Oporavak je proces u kojem se proces vraa u validno stanje nakon njegovog otkaza.
Algoritam detekcije zavretka obrade je kontrolni algoritam koji omoguava detekciju zavretka obrade
u osnovnom algoritmu. Osnovni algoritam se zavrava kada su svi procesi obrade u finalnom stanju i
nema poruka na kanalima.
3) Lease model
4) Epidemic protokol
Algoritmi:
-Round-robin
1969 ARPANET
1989 WWW
1991 HTTP
Hardver komunikacioni kanali, blade serveri i okviri, data centri, personalni raunari, mobilni ureaji.
Procesi operativni sistem i softver mrene opreme. Web serveri, serveri baze podataka, aplikativni
serveri, server imena, internet pretraivai.
3. Imena.
DNS sistem imena raunara, servisa ili bilo kog resursa konektovanog na internet.
4. Sinhronizacija.
Redni broj paketa kod TCP/IP obezbeuje pravilan redosled prijema paketa i sastavljanje veih
sadraja. Sinhronizacija vremena raunara sa atomskim satom. Letnje i zimsko raunanje vremena.
5. Replikacija i konzistencija.
1) Estimacija optereenja
2) Detekcija anomalija
3) Implementacija mera
6. Otpornost na otkaze.
U sluaju otkaza komunikacionih kanala ili rutera, algoritmi za nalaenje putanja su otporni na viestruke
otkaze. U sluaju otkaza servera, reenje je replikacija i automatsko prekljuivanje na replike u trenutku
ispada. U sluaju otkaza klijenta, restart procesa.
7. Sigurnost i bezbednost.
8. Primeri Web baziranih sistema: peer-to-peer, content delivery network, online plaanje, bitcoin.
Peer-to-peer komunikacija se realizuje preko BitTorrenta ili slinog protokola, korisnik je ujedno i
klijent i server.
Bitcoin Web bazirani sistem digitalnog novca kupac na berzi kupi bitcoin obinim novcem, troi
bitcoin, transakcija se upisuje u globalnu knjigu transakcija koju odravaju kopai, kopai za
odravanje knjiga transakcija dobijaju nove bitcoin-e.
Kritine infrastrukture
Infrastruktura je mrea nezavisnih sistema koji su izgraeni od strane oveka i slue za proizvodnju i/ili
distribuciju resursa i usluga.
Kritina infrastruktura je ona iji produeni ispad ima razarajue efekte na drutvo i nain ivota na koji
smo navikli u zapadnim civilizacijama.
9/11 sruen Svetski trgovinski centar u New York-u zabijanjem 2 putnika aviona u njih.
5.
.
6. Podsistemi u kritinim infrastrukturama: procesni, SCADA, poslovni.
Procesni podsistem sastoji se od opreme za preradu i transfer sirovina, kao i elektronske opreme
Poslovni podsistem omoguava izvravanje poslovnih procesa kompanije, fiziki se nalazi u poslovnim
objektima.
Smart Grid
Smart Grid je moderan elektroenergetski sistem koji uz pomo dostignua sa polja informacionih i
komunikacionih tehnologija vri optimizaciju rada sistema.
Podsistem za proizvodnju elektrine energije ine izvori (hidro elektrane, fosilno gorivo, nuklearne
elekteane...).
3. Oprema.
1) SCADA serveri
2) SCADA HMI
3) EMS/DMS servisi
4) Istoriar
5. Procesi u poslovnom podsistemu.
Asset management, rad sa ispadima, upravljanje terenskim radovima, naplata, planiranje, istorijski
podsistem, ogranieni SCADA klijenti, monitoring sistem.