teorija grafova i ra čunarske mreže

25
LB 1/25 Teorija grafova i računarske mreže Definicija klasičnog Load Balancing-a (LB) Računarske mreže i distribuirani sistemi LB Web servisa Softverska i hardverska LB rešenja LB i senzorske bežične mreže Linux Scheduling Routing i Fault tolerance

Upload: weylin

Post on 12-Jan-2016

64 views

Category:

Documents


0 download

DESCRIPTION

Teorija grafova i ra čunarske mreže. Definicija klasičnog Load Balancing-a (LB) Računarske mreže i distribuirani sistemi LB Web servisa Softverska i hardverska LB re šenja LB i senzorske bežične mreže Linux Scheduling Routing i Fault tolerance. Definicija Load Balancing-a (LB). - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Teorija grafova  i  ra čunarske mreže

LB 1/25

Teorija grafova i računarske mreže

Definicija klasičnog Load Balancing-a (LB) Računarske mreže i distribuirani sistemi LB Web servisa Softverska i hardverska LB rešenja LB i senzorske bežične mreže Linux Scheduling Routing i Fault tolerance

Page 2: Teorija grafova  i  ra čunarske mreže

LB 2/25

Definicija Load Balancing-a (LB)

LB (Load Balancing) je optimizacioni metod za dobijanje maksimalnih karakteristika sistema (bolje iskorišćenje procesora, veća propusnost, brži odziv sistema itd.).

Opšti LB se sastoji iz četiri dela: podele programa na particije skupa zadataka (partitioning), dodeljivanja ovih zadataka pojedinim procesorima (assignment), određivanja najbolje komunikacione putanje (routing) i raspoređivanja-planiranja zadataka (scheduling). Raspoređivanje je određivanje

redosleda izvršenja zadataka koji su dodeljeni svakom procesoru (tako da se relacije zavisnosti ne naruše i da se odgovarajuće funkcije optimizuju) i određivanje trenutka početka izvršenja pojedinih zadataka

Page 3: Teorija grafova  i  ra čunarske mreže

LB 3/25

LB

4

T

T

T T

T T T

T

T

1

2 3

4 5

67 8

91

37

44

2 1

1P1

P2

T1

T3

T2 T4

T6 T5

T7

T8

T9

0 17

0 15

T3 T6T5 T8

T1 T2 T4 T7T9

a) Optimalno raspoređivanje sa liste

b) Optimalno raspoređivanje

P1P2

P2P1

Paralelni program je opisan težinskim usmerenim acikličnim grafom G(V,E), gde V predstavlja skup čvorova (zadataka) programa sa pridruženim težinama a E je skup usmerenih grana koje definišu parcijalni redosled ili uslove zavisnosti-prioriteta nad skupom V. Posmatramo grafove sa komunikacijom između zadataka gde svakoj grani eij pridružujemo realan broj (težinu).

Različiti grafovi: broj čvorova, stepen čvora, diametar, broj različitih eigenvalues.

Page 4: Teorija grafova  i  ra čunarske mreže

LB 4/25

Opšti optimizacioni metodi

HeuristikaMetodi teorije grafova

- Pretraživanje: -iscrpno, -selektivno: (unazad, lokalno, granaj i pridružuj - BB)- Iterativni metodi- Simulirano kaljenje - annealing- Lančana podela na particije- Matematičko programiranje: (0-1 intidžer programiranje, ...)- ...

- Max. tok - min. presek- Metodi kritične putanje- Metodi sa jednostrukim prolazom: raspoređivanje sa liste- Metodi sa višestrukim prolazom: klastering metodi- Metodi kritične petlje- ...

Heuristika je korišćenje iskustva i praktičnih pokušaja da bi se našli odgovori na pitanja ili poboljšale karakteristike...

StatičkiLB

LB problem se predstavlja preko kategorija kao što su local - global, static - dynamic i centralized - distributed scheduling.

Zavisno od prirode problema, LB tehnika se može primeniti za vreme izvršenja programa (dinamički LB) ili za vreme prevođenja (statički LB).

Većina LB problema pripada klasi NP-kompleta i ne postoji poznati algoritam polinomskog tipa za njihovo rešenje, sledi upotreba heuristike.

Load balancing se pojavljuje na različitim nivoima u računarskim sistemima, uglavnom kao LB na hardverskom nivou, LB na nivou mrežnog prenosa i LB na aplikacionom nivou.

Statički LB se obično posmatra kao problemmapiranja ili scheduling-a (raspoređivanja)

Page 5: Teorija grafova  i  ra čunarske mreže

LB 5/25

Konkurentnost

Na nivou arhitekture računara, eksploatacija različitih oblika konkurentnosti (uporednog rada) u programima je veoma važna.

Osnovna tehnika koja se koristi za realizaciju vremenske konkurentnosti je pipelining-protočnost (na nivou instrukcija i podataka).

Prostorna konkurentnost se naziva paralelno procesiranje.

Termini: simultano – istovremeno - konkurentno

Page 6: Teorija grafova  i  ra čunarske mreže

LB 6/25

LB

1

2

3

4

5

6

7

8

9

10

11

12

L (latest start time) E (earliest start time)

13

14

15

P P P P1 2 1 2

1

2

3

4

5

6

7

8

9

11

10

12

13

14

15

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

x

x

x

1

1

1

1

2

2

2

2

x

x

x

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

2

2

1

1

1

1

1

1

x

x

x

x

xx

T

T

T

T

T

T

T T

T

T

T

T

T

T

T

T

T

T

1

2

3

4 5

6

7

8

9

1

23

45

6

7

8

9

T6

T3

T6

Page 7: Teorija grafova  i  ra čunarske mreže

LB 7/25

DSP algoritam Proc. arhitektura

Podela na particije

pridruživanje procesorima

ruting

raspoređivanje

projekatzadovoljava

modifikacija

Kraj

LOBAL

da

ne

Page 8: Teorija grafova  i  ra čunarske mreže

LB 8/25

Računarske mreže i distribuirani sistemi

Item

Distributed OS

Network OSMiddleware-based OS

Multiproc. Multicomp.

Degree of transparency Very High High Low High

Same OS on all nodes Yes Yes No No

Number of copies of OS 1 N N N

Basis for communication Shared memory Messages Files Model specific

Resource management Global, central Global, distributed Per node Per node

Scalability No Moderately Yes Varies

Openness Closed Closed Open Open

Page 9: Teorija grafova  i  ra čunarske mreže

LB 9/25

PRINCIP RADA LB Web servisa

Korisnik unosi adresu u web browser DNS razreši ime Browser uspostavlja vezu sa

selektorom Selektor dodeljuje server WWW1

15.98.2.8

WWW215.98.5.1

WWWN15.98.x.y

PRINT

HELP

ALPHA

SHIFT

ENTERRUN

DG ER FI

AJ BK CL

7M 8N 9O

DG DG DG

DG T 3U

0V .WX Y Z

TAB

% UTILIZATION

HUB/MAU NIC

2BNC4Mb/s

DNS

korisnikselektor

Page 10: Teorija grafova  i  ra čunarske mreže

LB 10/25

LB REŠENJA

Kori{}enje CGI programa

NAT software

Re{enja zasnovana na DNS servisu

Hardware-ska re{enja

Re{enja kompanije Microsoft

Page 11: Teorija grafova  i  ra čunarske mreže

LB 11/25

Hardverska rešenja: Cisco Local Director

Primer hadverske realizacije RR algoritma je uređaj CISCO Local Director. Jedna javna IP adresa dodeljuje se CISCO Local Director-u . Svi serveri koji dele javnu adresu moraju biti unutar jedne LAN mreže. Kada zahtev stigne do Local Director-a on po jednom od algoritama koji implementira (RR, Leastconn, weighted, fastest) bira najpodesniji server iz LAN mreže. On poboljšava brzinu odgovora servisa, podržava rad sa bilo kojim operativnim sistemom koji ima podršku za TCP/IP protokol.

Podržava 64 000 javnih i privatnih adresa Može da radi sa milion simultanih TCP/IP konekcija

Page 12: Teorija grafova  i  ra čunarske mreže

LB 12/25

Hardversko-softversko rešenje: MNLB

Primer hardversko–softverskog LB sistema koji implementira više algoritama je CISCO Multi Node Load Balancing

Work Load Agent-a koji čuva podatke o broju konekcija i opterećenju za svaki server u klasteru

Workload Agents

Page 13: Teorija grafova  i  ra čunarske mreže

LB 13/25

Softverska LB rešenja: Microsoft NLBNetwork Load Balancing Integration Concepts for Microsoft Internet Security and Acceleration (ISA) Server 2006

Integrated Clustering Scheme Using Network Load Balancing and Server Clusters

Page 14: Teorija grafova  i  ra čunarske mreže

LB 14/25

LB rešenje: HEFEST

Svi serveri unutar jedne LAN mre`e Samo je centralni server vidljiv za korisnika ima ulogu proxy

servera Dinamički izbor algoritma Fake Server Prenosivost - Java programsko okru`enje Nezavisnost od Web servera Nezavisnost od formata baze podataka Laka nadogradnja postoje}eg sistema

Page 15: Teorija grafova  i  ra čunarske mreže

LB 15/25

HEFEST-ahritektura sistema

PRINT

HELP

ALPHA

SHIFT

ENTERRUN

DG ER FI

AJ BK CL

7M 8N 9O

DG DG DG

DG T 3U

0V .WX Y Z

TAB

% UTILIZATION

HUB/MAU NIC

2BNC4Mb/s

switch

proxy server

DNS

korisnik

1

23

4

5

LAN mre`a servera

Page 16: Teorija grafova  i  ra čunarske mreže

LB 16/25

HEFEST-prikaz rada

Page 17: Teorija grafova  i  ra čunarske mreže

LB 17/25

LB i senzorske bežične mreže Mikrosenzori Klastering i hijerarhijska arhitektura Minimiziranje potrošnje energije

odnos komunikacija/sensing i computing pri procesiranju 1bit-a je 1000 do 10000

Traffic distribution and System partitioning

Biosensors based on molecular recognition

Ad hock On-demand Distance Vector - AODV

-pokretni računari, ograničeni propusni opseg i vek trajanja baterija

Page 18: Teorija grafova  i  ra čunarske mreže

LB 18/25

Linux Scheduling

LB omogućava da su runqueues izbalansirani Primenjen je u kernel/sched.c kao load_balance() Poziva se sa schedule() kada je tekući runqueue prazan Poziva se i preko timer-a: svakog 1ms kada je sistem

besposlen a inače svakih 200ms Na jednoprocesorskom sistemu load_balance se nikada

ne poziva

Page 19: Teorija grafova  i  ra čunarske mreže

LB 19/25

Routing i Fault tolerance

Algoritmi rutiranja Link-State (LS) ruting algoritam (Dijkstra) Distance vektor (rastojanja) (Bellman-Ford Equation - dinamičko programiranje,

Ford Fulkerson, prvi algoritam rutiranja na ARPANET-u i RIP-u) Hijerarhijsko rutiranje (AS)

Rutiranje na Internet-u RIP OSPF BGP

Difuzno rutiranje i rutiranje sa višestrukim upućivanjem

Page 20: Teorija grafova  i  ra čunarske mreže

LB 20/25

1

23

0111

value in arrivingpacket’s header

routing algorithm

local forwarding tableheader value output link

0100010101111001

3221

Ruting i prosleđivanje

Page 21: Teorija grafova  i  ra čunarske mreže

LB 21/25

Klasifikacija ruting algoritama

Globalne ili decentralizovane informacije?-Least-cost path:

Globalni ruting algoritmi: svi ruteri imaju-znaju kompletnu topologiju,

informacije o ceni linkova algoritmi LS “stanja linka”

Decentralizovani: ruter ima informacije o cenama-rastojanjima

linkova ka susedima iterativno se izračunavaju, razmenjuju informacije

sa susedima algoritmi “vektora rastojanja”

Statički ili dinamički?Statički: rute se menjaju polako tokom vremena

Dinamički: rute se menjaju brže

periodično ažuriranje menjaju se u odnosu na troškove

linka

Page 22: Teorija grafova  i  ra čunarske mreže

LB 22/25

Poređenje LS i DV algoritama

Kompleksnost poruka LS: sa n čvorova, E linkova, O(nE) poslatih

poruka DV: razmena između suseda samo

vreme konvergencije varira

Brzina konvergencije LS: Složenost algoritma je O(n2), algoritam

zahteva O(nE) poruka može da ima oscilacije

DV: vreme konvergencije varira može da se pojavi petlja rutiranja count-to-infinity problem

Robusnost: šta se dešava ako se ruter pokvari?LS:

čvor može da objavi nekorektnu cenu-cost linka svaki čvor izračunava samo svoju sopstvenu

tabelu

DV: DV čvor može da oglasi nekorektne troškove-

cenu putanje tabela svakog čvora korišćena od drugih

error-greška se prostire kroz mrežu

Podjednako se koriste oba algoritma na Internetu

Page 23: Teorija grafova  i  ra čunarske mreže

LB 23/25

AS protokoli rutiranja

Intra-AS ruting protokoli:

RIP: Routing Information Protocol (DV)

OSPF: Open Shortest Path First (LS)

IGRP: Interior Gateway Routing Protocol (vlasništvo Cisco-a)

............................................................. BGP (Border Gateway Protocol) - inter AS ruting protokol

Page 24: Teorija grafova  i  ra čunarske mreže

LB 24/25

Difuzno rutiranje i rutiranje sa višestrukim upućivanjem

Minimum spanning tree Stablo najkraće putanje (Dijkstrin algoritam) Deljeno-stablo: Steiner-ovo stablo Stabla bazirana na centralnom ruteru

DVMRP: distance vektor multicast ruting protokol

Page 25: Teorija grafova  i  ra čunarske mreže

LB 25/25

Umesto zaključka

Naučno istraživački rad – timski rad