Está en la página 1de 69

Sloj mreže (eng.

network layer)
- Algoritmi rutiranja -
 1. 1 Uvod  1.5 Algoritmi rutiranja
 1.2 Mreže sa virtuelnim ◦ Link state
kolima i datagramima ◦ Distance Vector
 1.3 Funkcije rutera ◦ Hijerarhijsko rutiranje

 1.4 IP: Internet protokol  1.6 Rutiranje u Internet


◦ Format datagrama mrežama
◦ IPv4 adresiranje ◦ RIP
◦ ICMP ◦ OSPF
◦ IPv6 ◦ BGP
 1.7 Broadcast i multicast
rutiranje
Ruteri
Grafička abstrakcija

v 3 w
2 5
u 2 z
1
3
1
x y 2
1

Graf: G = (N,E)

N = skup rutera = {u, v, w, x, y, z}

E = skup linkova={(u,v), (u,x), (v,x), (v,w), (x,w), (x,y), (w,y), (w,z), (y,z)}
Grafička abstrakcija: cijena (cost)

5 • c(x,x’) = cijena linka (x,x’)


v 3 w
5 - npr. c(w,z) = 5
2
u 2 z
1 • cijena može biti u relaciji sa
3
1 propusnim opsegom, saobraćajnim
x y 2
opterećenjem, itd.
1

Cijena putanje (x1, x2, x3,…, xp) = c(x1,x2) + c(x2,x3) + … + c(xp-1,xp)

Algoritam rutiranja: pronalazi putanju sa najmanjom


cijenom!
Klasifikacija algoritama rutiranja

Globalne ili decentralizovane Statički ili dinamički?


informacije?
Statički:
Globalne:
 Rute se mijenjaju sporo u
 Svi ruteri imaju kompletnu
vremenu
informaciju o toplogiji mreže,
cijeni linka, itd.
 “link state” algoritmi Dinamički:
 Brža promjena ruta
Decentralizovane: ◦ periodični update u skladu sa
 Ruteri znaju svoje susjedne
promjenama cijena linka
čvorove, kao i cijene linkova do
njih
 Iterativni proces proračuna cijene,
razmjena informacija sa susjedima
 “distance vector” algoritmi
Protokoli rutiranja
 1. 1 Uvod  1.5 Algoritmi rutiranja
 1.2 Mreže sa virtuelnim ◦ Link state
kolima i datagramima ◦ Distance Vector
 1.3 Funkcije rutera ◦ Hijerarhijsko rutiranje

 1.4 IP: Internet protokol  1.6 Rutiranje u Internet


◦ Format datagrama
mrežama
◦ IPv4 adresiranje ◦ RIP
◦ ICMP ◦ OSPF
◦ IPv6 ◦ BGP
 1.7 Broadcast i multicast
rutiranje
Link-State algoritam rutiranja
Dijkstra algoritam
 Svim čvorovima je poznata
topologija mreže i cijene linkova Oznake:
◦ šalje se “link state” broadcast  c(x,y): cijena linka između
◦ svi čvorovi dobijaju isti info čvorova x i y; c(x,y) = ∞ ako
nema direktnih susjeda
 Računaju se putanje najmanje
cijene od izvora (source) do svih  D(v): trenutna cijena putanje
drugih čvorova od izvora do odredišta
◦ određuje tabelu usmjeravanja  p(v): čvor prethodnik na
za taj čvor putanji od izvora do v
◦ iterativni: poslije k iteracija,  N': skup čvorova sa poznatim
poznate su putanje minimalne putanjama min cijene
cijene do k odredišta

 Informacije se ne razmjenjuju
periodično, već samo pri
promjeni topologije
Dijkstra algoritam
1 Inicijalizacija:
2 N' = {u}
3 for all nodes v
4 if v adjacent to u
5 then D(v) = c(u,v)
6 else D(v) = ∞
7
8 Petlja
9 find w not in N' such that D(w) is a minimum
10 add w to N'
11 update D(v) for all v adjacent to w and not in N' :
12 D(v) = min( D(v), D(w) + c(w,v) )
13 /* nova cijena za v ili stara cijena za v ili poznata cijena najkraće
14 putanje za w + cijena od w do v */
15 until all nodes in N'
Dijkstra algoritam: primjer

koraci N' D(v),p(v) D(w),p(w) D(x),p(x) D(y),p(y) D(z),p(z)


0 u 2,u 5,u 1,u ∞ ∞
1 ux 2,u 4,x 2,x ∞
2 uxy 2,u 3,y 4,y
3 uxyv 3,y 4,y
4 uxyvw 4,y
5 uxyvwz

v 3 w
2 5
u 2 z
1
3
1
x y 2
1
Dijkstra algoritam
Kompleksnost algoritma: n čvorova
 svaka iteracija: provjera svih čvorova
 n(n+1)/2 poređenja: O(n2)
 moguće su efikasnije implementacije: O(nlogn)
Moguće su promjene:
 Npr. cijena linka = intenzitetu saobraćaja

A A A A
1 1+e 2+e 0 0 2+e 2+e
D 0
B D B D B D B
0 0 1+e 1 0 0 1+e 1
0 C e 0 0 1 e
C C 1+e 0 C
1 1
e … ponovni … ponovni … ponovni
početna proračun proračun proračun
rute rute rute
 1. 1 Uvod  1.5 Algoritmi rutiranja
 1.2 Mreže sa virtuelnim ◦ Link state
kolima i datagramima ◦ Distance Vector
 1.3 Funkcije rutera ◦ Hijerarhijsko rutiranje

 1.4 IP: Internet protokol  1.6 Rutiranje u Internet


◦ Format datagrama
mrežama
◦ IPv4 adresiranje ◦ RIP
◦ ICMP ◦ OSPF
◦ IPv6 ◦ BGP
 1.7 Broadcast i multicast
rutiranje
Distance Vector algoritam (1)
Bellman-Ford jednačina (dinamičko programiranje)

Definiše se:
dx(y) := cijena min cost path od x do y

Tada je:

dx(y) = min {c(x,v) + dv(y)}

gdje je minimiziranje izvršeno preko svih čvorova koji su susjedni za x.


Distance Vector algoritam (2)

 Dinamički algoritam

– uzima se u obzir trenutno opterećenje mreže

 Ruter održava tabelu sa:


– najkraćim poznatim rastojanjima do svakog odredišta

– linkovima preko kojih se može stići do odredišta

 Ruter ažurira tabele razmjenjujući informacije sa


susjednim ruterima
Bellman-Ford primjer (3)
dv(z) = 5, dx(z) = 3, dw(z) = 3
5 B-F jednačina:
v 3 w
2 5 du(z) = min {c(u,v) + dv(z),
u z
2
3
1 c(u,x) + dx(z),
1
x y 2 c(u,w) + dw(z)}
1 = min {2 + 5,
1 + 3,
5 + 3} = 4

Čvor za koji se postiže minimum je sljedeći hop na


najkraćoj putanji ➜ tabela usmjeravanja.
Distance Vector algoritam (4)
 Dx(y) = procjena (estimate) najmanje cijene od x
do y
 Vektor udaljenosti: Dx = [Dx(y): y є N]
 Čvor x zna cijenu do svakog susjednog čvora v:
c(x,v)
 Čvor x održava vektor Dx = [Dx(y): y є N]
 Čvor x takođe održava vektore udaljenosti
susjednih čvorova
◦ Za svaki susjedni čvor v, x održava
Dv = [Dv(y): y є N]
Distance vector algoritam (5)
Osnovna ideja:
 Svaki čvor šalje svoju procjenu vektora udaljenosti (DV)
do susjednih čvorova
 Kada čvor x primi novi vektor procjene od susjednog
čvora, update-uje sopstveni DV primjenom B-F jednačine:

Dx(y) ← minv{c(x,v) + Dv(y)} za svaki čvor y ∊ N

 Pod standardnim uslovima, procjena Dx(y) konvergira ka


aktuelnoj min cijeni dx(y)
 Susjedni ruteri razmjenjuju informacije o podmrežama, na osnovu
kojih saznaju:
• distancu (metriku) do određene podmreže
• vektor (next-hop) koji vodi do određene podmreže
– ruteri poznaju samo susjedne rutere, ali ne i cijelu topologiju
– rute se periodično razmjenjuju
Distance vector algoritam (6)
Svaki čvor:
Iterativni, asinhroni: svaka
lokalna iteracija posljedica je:
 promjene cijene lokalnog linka wait for (change in local link
 DV update poruke od cost of msg from neighbor)
susjednog čvora

recompute estimates
Distribuirani:
 svaki čvor obavještava susjedne
čvorove samo kada se if DV to any dest has
promijeni njegov DV changed, notify neighbors
◦ susjedi tada obavještavaju svoje
susjedne čvorove (ako je
potrebno)
Dx(y) = min{c(x,y) + Dy(y), c(x,z) + Dz(y)} Dx(z) = min{c(x,y) +
= min{2+0 , 7+1} = 2 Dy(z), c(x,z) + Dz(z)}
čvor x - tabela = min{2+1 , 7+0} = 3
cijena do cijena do cijena do
x y z x y z x y z
x 0 2 7 x 0 2 3 x 0 2 3
y ∞∞ ∞ y 2 0 1
od

od
y 2 0 1

od
z ∞∞ ∞ z 7 1 0 z 3 1 0
čvor y - tabela
cijena do cijena do cijena do
x y z x y z x y z y
2 1
x ∞ ∞ ∞ x 0 2 7 x 0 2 3 x z
y 2 0 1 y 2 0 1
od

y 2 0 1 7
od

od
z ∞∞ ∞ z 7 1 0 z 3 1 0
čvor z - tabela
cijena do cijena do
cijena do
x y z x y z x y z
x ∞∞ ∞ x 0 2 7 x 0 2 3
y 2 0 1 y 2 0 1
od

od

y ∞∞ ∞
od

z 71 0 z 3 1 0 z 3 1 0
vrijeme
Distance Vector: promjene cijene linka
Promjene cijene linka:
 Čvor detektuje promjene cijene
1
lokalnog linka y
 Update-uje info o rutama, 4 1
x z
proračunava vektor udaljenosti
50
 Ako postoje promjene DV, čvor
obavještava susjede

U trenutkut0, y detektuje promjenu cijene linka, update-uje DV i


obavještava susjedne čvorove.

U trenutkut1, z prima update od y i osvježava svoju tabelu.


Računa novu cijenu linka do x i šalje susjedima svoj DV.

U trenutku t2, y prima update od z i osvježava svoju tabelu.


Najmanje cijene za y se ne mijenjaju, pa y ne šalje poruku do z.
Distance Vector: promjene cijene linka

Promjene cijene linka:


 “Dobre vijesti putuju brže”
 Loše vijesti putuju sporije -
“count to infinity” problem!
 44 iteracije prije
60
stabilizacije algoritma y
4 1
Poissoned reverse: x z
50
 Ako rute od Z prema X idu
preko Y:
 Z obavještava Y da je
njegova udaljenost do X
beskonačna (Y neće
rutirati do X preko Z)
Poređenje LS i DV algoritama

Kompleksnost poruka Robusnost: šta se dešava ako


 LS: sa n čvorova i E linkova, šalje se ruter ne radi ispravno?
O(nE) poruka LS:
 DV: razmjena poruka samo između ◦ čvor može poslati pogrešan link
susjednih čvorova cost info
◦ promjenjivo vrijeme ◦ svaki čvor proračunava samo
konvergencije sopstvenu tabelu
Brzina konvergencije DV:
 LS: O(n2) algoritam zahtijeva O(nE) ◦ DV čvor može oglasiti pogrešnu
poruka cijenu putanje
◦ može imati oscilacije ◦ tabelu svakog čvora koriste i
ostali čvorovi
 DV: promjena vremena
konvergencije  greška se propagira kroz mrežu
◦ mogu se javiti petlje (loops)
◦ count-to-infinity problem
 1. 1 Uvod  1.5 Algoritmi rutiranja
 1.2 Mreže sa virtuelnim ◦ Link state
kolima i datagramima ◦ Distance Vector
 1.3 Funkcije rutera ◦ Hijerarhijsko rutiranje

 1.4 IP: Internet protokol  1.6 Rutiranje u Internet


◦ Format datagrama
mrežama
◦ IPv4 adresiranje ◦ RIP
◦ ICMP ◦ OSPF
◦ IPv6 ◦ BGP
 1.7 Broadcast i multicast
rutiranje
Hijerarhijsko rutiranje
Do sada su razmatrane idealizovane forme
rutiranja u kojima su:
 svi ruteri identični
 mreža “flat” topologije
… ali praktične primjene su drugačije.

Skaliranje: Administrativna autonomija


 nije moguće memorisati sva  Internet = network of networks
odredišta u tabelama rutiranja!  svaki mrežni administrator
 razmjena tabela rutiranja bi upravlja rutiranjem u svojoj mreži
blokirala linkove!
Hijerarhijsko rutiranje

 Rutiranje se organizuje hijerarhijski (slično


kao u telefonskoj mreži)
 Ruteri se dijele u oblasti (eng. regions)
– svaki ruter ima informacije o rutiranju u
njegovoj oblasti
Hijerarhijsko rutiranje

 Agregacija rutiranja u Gateway ruter


regione - “autonomni  Direktan link do rutera u
sistemi” (AS) drugom AS
 AS - jedinstveni
administrativni domen
računarske mreže
 Ruteri u istom AS
pokreću isti protokol
rutiranja
◦ “intra-AS” protokol rutiranja
◦ ruteri u različitim AS mogu
pokretati različite intra-AS
protokole rutiranja
 1. 1 Uvod  1.5 Algoritmi rutiranja
 1.2 Mreže sa virtuelnim ◦ Link state
kolima i datagramima ◦ Distance Vector
 1.3 Funkcije rutera ◦ Hijerarhijsko rutiranje

 1.4 IP: Internet protokol  1.6 Rutiranje u Internet


◦ Format datagrama
mrežama
◦ IPv4 adresiranje ◦ RIP
◦ ICMP ◦ OSPF
◦ IPv6 ◦ BGP
 1.7 Broadcast i multicast
rutiranje
Povezani autonomni sistemi (AS)

3c
3a 2c
3b 2a
AS3 2b
1c AS2
1a 1b
1d AS1
 Tabela usmjeravanja se
konfiguriše na osnovu
intra- i inter-AS algoritma
Intra-AS
algoritam
Inter-AS
algoritam rutiranja
rutiranja rutiranja
◦ Intra-AS određuje ulaze za
Tabela interna odredišta
usmjeravanja
◦ Inter-AS i intra-AS određuju
ulaze za vanjska odredišta
Inter-AS funkcije
 Neka ruter iz AS1 primi AS1 treba:
datagram čije je odredište 1. naučiti koja su odredišta
izvan AS1 dostupna kroz AS2 i AS3
◦ ruter treba usmjeriti paket
2. proslijediti info o
do jednog od gateway rutera.
Koji izabrati? dostupnosti do svih
rutera u AS1

3c
3a 2c
3b 2a
AS3 2b
1c AS2
1a 1b
1d AS1
Primjer: uspostavljanje tabele rutiranja u
ruteru1d

 Pretpostavimo da AS1 “uči” od inter-AS protokola


da je podmreža x dostupna iz AS3 (gateway 1c), ali
ne iz AS2.
 Inter-AS protokol propagira info o dostupnosti do
svih internih rutera.
 Ruter 1d utvrđuje, na osnovu intra-AS info, da se
njegov interfejs I nalazi na putanji min cijene do 1c.
 Unosi podatak u tabelu (x,I).
Primjer: izbor između AS
 Pretpostavimo da AS1uči na osnovu inter-AS protokola da je
podmreža x dostupna iz AS3 i AS2.

 Da bi se konfigurisala tabela rutiranja, ruter 1d mora


odrediti prema kojem gateway-u može usmjeriti pakete za
odredište x.

Određuje se
Uči od inter-AS Koristi routing info tabela rutranja
protokola da je od intra-AS Hot potato rutiranje: interfejsa I koja
x dostupan preko protokola da bi utvrdio bira se gateway obezbjeđuje least-cost
više gateway-a min cost putanju sa min cost gateway.
do svakog gateway-a Unosi se (x,I) u tabelu
rutiranja.
Protokoli rutiranja
Autonomni sistem je skup mreža koje imaju zajednički
domen upravljanja (eng. administrative domain).
• U autonomnom sistemu se primjenjuje IGP (Interior
Gateway Protocol).
• Povezivanje autonomnih sistema se vrši preko EGP
(Exterior Gateway Protocol).
Intra-AS rutiranje
 Poznato i kao Interior Gateway Protocols (IGP)
 Standardni Intra-AS protokoli rutiranja:

◦ RIP: Routing Information Protocol


◦ OSPF: Open Shortest Path First
◦ IGRP: Interior Gateway Routing Protocol
(Cisco proprietary)
Unutrašnji gateway protokoli - IGP
RIP (Routing Information Protocol)

 Distance vector algoritam


 Sadržan u BSD-UNIX distribuciji,1982.g.
 Metrika: broj hopova (max = 15 hopova)

u odredište hopovi
v
u 1
A B w v 2
w 2
x 3
x y 3
z C D z 2
y
RIP advertisements

 Distance vectors: razmjenjuju se između susjednih


čvorova svakih 30 s preko Response Message (zovu se
i advertisement)

 Svaki advertisement: lista od 25 odredišnih mreža


preko AS
RIP: Primjer

z
w x y
A D B

C
Odredišna mreža Sljedeći ruter Broj hopova do odred.
w A 2
y B 2
z B 7
x -- 1
…. …. ....
Tabela rutiranja u D
RIP: Primjer
Odred. Sljedeći hopovi
w - - Advertisement
x - - od A do D
z C 4
…. … ...
z
w x y
A D B

C
Odredišna mreža Sljedeći ruter Broj hopova do odredišta
w A 2
y B 2
z B A 7 5
x -- 1
…. …. ....
Tabela rutiranja u D
RIP: otkazi i oporavak linkova
Ako advertisement info ne stigne u periodu do180 s -->
deklariše se neighbor/link otkaz:

◦ pogrešne rute preko susjednih čvorova

◦ novi advertisement info se šalje susjednim čvorovima

◦ susjedi emituju nove advertisement info (ako se promijene


tabele)

◦ link failure info se brzo prenosi kroz cijelu mrežu

◦ poison reverse se koristi za prevenciju ping-pong petlji


(infinite distance = 16 hopova)
RIP tabela
 RIP tabelom rutiranja upravljaju procesi aplikacionog
sloja koji se nazivaju route-d (daemon)
 advertisements se šalju u UDP paketima i periodično se
ponavljaju

routed routed

Transprt Transprt
(UDP) (UDP)
network forwarding forwarding network
(IP) table table (IP)
link link
physical physical
 1. 1 Uvod  1.5 Algoritmi rutiranja
 1.2 Mreže sa virtuelnim ◦ Link state
kolima i datagramima ◦ Distance Vector
 1.3 Funkcije rutera ◦ Hijerarhijsko rutiranje

 1.4 IP: Internet protokol  1.6 Rutiranje u Internet


◦ Format datagrama
mrežama
◦ IPv4 adresiranje ◦ RIP
◦ ICMP ◦ OSPF
◦ IPv6 ◦ BGP
 1.7 Broadcast i multicast
rutiranje
OSPF (Open Shortest Path First)
 “Open”: javno dostupan
 Koristi Link State algoritam
◦ LS prenos paketa
◦ Topologija se mapira u svakom čvoru
◦ Proračun ruta primjenom Dijkstra algoritma

 OSPF advertisement prenosi jedan ulaz (entry) po susjednom


ruteru
 Advertisements se prenosi kroz kompletan AS (preko
flooding-a)
◦ Prenose se unutar OSPF poruka direktno preko IP (a ne primjenom
TCP ili UDP)
OSPF (Open Shortest Path First)
• Prvobitni unutrašnji protokol za mrežni prolaz je bio RIP
– zasnovan na vektoru rastojanja

• OSPF - Otvoreni protokol najkraće putanje, standard od


1990. godine za rutere u Internet mrežama
– Standard RFC 2328

• OSPF dozvoljava da se jedan autonomni sistem podijeli


na oblasti – povećava se efikasnost rutiranja

• Različite vrste rutera: interni, granični, kontrolni, ruteri


okosnice i sl.
OSPF “poboljšane” karakteristike (nisu
sadržane u RIP)
 Sigurnost: sve OSPF poruke se autentifikuju (radi prevencije
malicioznih napada)
 Dozvoljene su višestruke putanje iste cijene (samo jedna
putanja u RIP)
 Za svaki link, koristi se nekoliko cost metrika za različite ToS
(npr., satelitski link cost je postavljen kao “low” za best effort;
usluge, a “high” za prenos u realnom vremenu)
 Integrisana unicast i multicast podrška:
◦ Multicast OSPF (MOSPF) koristi istu bazičnu
topologiju kao OSPF
 Hijerarhijski OSPF u velikim domenima.
Hijerarhijski OSPF
Hijerarhijski OSPF

 Dva hijerarhijska nivoa: lokalno područje i kičmeni dio.


◦ Link-state advertisements samo u oblasti
◦ Svaki čvor ima detaljnu topologiju oblasti; poznaje
samo najkraću putanju do mreža u ostalim
oblastima.
 Area border ruteri: “sumiraju” udaljenosti do mreža u
sopstvenoj oblasti, šalju advertise info do drugih Area Border
rutera.
 Backbone ruteri: OSPF rutiranje ograničeno na backbone.
 Boundary ruteri: za povezivanje sa drugim AS.
 1. 1 Uvod  1.5 Algoritmi rutiranja
 1.2 Mreže sa virtuelnim ◦ Link state
kolima i datagramima ◦ Distance Vector
 1.3 Funkcije rutera ◦ Hijerarhijsko rutiranje

 1.4 IP: Internet protokol  1.6 Rutiranje u Internet


◦ Format datagrama
mrežama
◦ IPv4 adresiranje ◦ RIP
◦ ICMP ◦ OSPF
◦ IPv6 ◦ BGP
 1.7 Broadcast i multicast
rutiranje
Internet inter-AS rutiranje: BGP

 BGP (Border Gateway Protocol): de facto


standard
 BGP obezbjeđuje za AS sljedeće:
1. Informaciju o dostupnosti podmreže iz susjednih
AS.
2. Prosljeđuje info o dostupnosti svim internim
ruterima u AS.
3. Određuje “dobre” rute do podmreža bazirane
na info o dostupnosti i pravilima upravljanja.
 Omogućava podmreži da oglasi svoje
prisustvo ostatku Interneta.
BGP osnove
 Parovi rutera (BGP peers) razmjenjuju routing info preko semi-
permanentnih TCP konekcija: BGP sessions
 BGP sessions ne odgovaraju fizičkim linkovima.
 Kada AS2 oglasi prefiks do AS1, AS2 prosljeđuje datagrame namijenjene
tom prefiksu.
◦ AS2 može udružiti prefikse u svom advertisement.

3c
3a 2c
3b 2a
AS3 2b
1c AS2
1a 1b
AS1 1d
eBGP session
iBGP session
Distribucija reachability info
 Sa eBGP sesijom između 3a i 1c, AS3 šalje prefix reachability info do
AS1.
 1c koristi iBGP za distribuciju ovog novog prefix reach info do svih
rutera u AS1
 1b može ponovo oglasiti novi reach info do AS2 preko 1b-to-2a eBGP
session
 Kada ruter nauči novi prefix, kreira ulaz za prefiks u svojoj tabeli
rutiranja.

3c
3a 2c
3b 2a
AS3 2b
1c AS2
1a 1b
AS1 1d
eBGP session
iBGP session
Atributi putanje (Path attributes) i
BGP rute
 Pri oglašavanju prefix-a, info sadrži BGP atribute.
◦ prefix + atributi = “route”

 Dva važna atributa:


◦ AS-PATH: sadrži AS-ove u okviru kojih se prosljeđuje prefix: AS
67 AS 17

◦ NEXT-HOP: ukazuje na specifične internal-AS router-to next-


hop AS (može postojati više linkova od AS do next-hop-AS)

 Kada gateway ruter prima route advert, koristi import


policy za prihvatanje/odbijanje.
BGP selekcija ruta
 Ruter može birati više od jedne rute za
pojedine prefikse. Ruteri moraju izabrati rutu.
 Pravila eliminacije:
1. Local preference value atribut: odlučivanje
2. Najkraća AS-PATH
3. Najbliži NEXT-HOP ruter: hot potato
rutiranje
4. Dodatni kriterijumi
BGP messages
 BGP messages se razmjenjuju primjenom TCP protokola.
 BGP messages:
◦ OPEN: otvara TCP konekciju za peer i autentifikuje
predajnike
◦ UPDATE: oglašava novu putanju
◦ KEEPALIVE održava konekciju u odsustvu
UPDATES; potvrde ACKs OPEN request
◦ NOTIFICATION: izvještaji o greškama u
prethodnim porukama; koristi se i za zatvaranje
konekcija
BGP routing policy
provajder
B mreže
X
W A
korisnik
C mreže

Sl. BGPnew: jednostavan


Sl. BGPnew: jednostavanBGP
BGPscenario
scenario

 A,B,C su mrežni provajderi (ISP)


 X,W,Y su korisnici (provajdera mreže)
 X je spojen sa dvije mreže
 X neće rutirati od B preko X do C
 .. X neće oglasiti ka B rutu prema C
BGP routing policy (2)

provajder
B mreže
X
W A
korisnik
C mreže

 A oglašava prema B putanju AW


 B oglašava prema o X putanju BAW
 Da li B treba oglasiti ka C putanju BAW?
 Nema rutiranja CBAW, jer ni W ni C nisu korisnici B
 B forsira C da rutira ka w preko A
 B želi rutirati samo prema/od svojih korisnika!
Korišćenje različitih intra- i inter-AS pravila
rutiranja

Pravila:
 Inter-AS: više administratora, potrebna su pravila usmjeravanja
kroz mreže.
 Intra-AS: jedan administrator, nisu neophodna pravila

Skaliranje:
 Hijerarhijsko rutiranje smanjuje veličinu tabela, smanjuje
saobraćaj update poruka

Performanse:
 Intra-AS: fokus je na performansama
 Inter-AS: pravila su dominantnija u odnosu na performanse
 1. 1 Uvod  1.5 Algoritmi rutiranja
 1.2 Mreže sa virtuelnim ◦ Link state
kolima i datagramima ◦ Distance Vector
 1.3 Funkcije rutera ◦ Hijerarhijsko rutiranje

 1.4 IP: Internet protokol  1.6 Rutiranje u Internet


◦ Format datagrama
mrežama
◦ IPv4 adresiranje ◦ RIP
◦ ICMP ◦ OSPF
◦ IPv6 ◦ BGP
 1.7 Broadcast i multicast
rutiranje
dupliranje
dupliranjee R1 kreiranja/prenosa R1
dupliranje
R2 R2

R3 R4 R3 R4

(a) (b)

Sl. Poređenje “source-duplication” i “in-network” duplication.


(a) source duplication, (b) in-network duplication
A

B
c

D
F E

Sl. Reverse path usmjeravanje


A A

B B
c c

D D
F E F E

G G

(a) Broadcast iniciran u A (b) Broadcast iniciran u D

Sl.: Broadcast duž spanning tree


A A
3
B B
c c
4
2
D D
F E F E
1 5
G G
(a) Stepwise construction (b) Constructed spanning
of spanning tree tree

Sl. Center-based formiranje spanning tree


Multicast rutiranje: definicija problema

 Cilj: pronaći stablo (ili stabla) koje povezuje


rutere sa local mcast group članstvom:
◦ tree: ne koriste se sve putanje između rutera
◦ source-based: različito stablo od predajnika do većeg broja prijemnika
◦ shared-tree: isto stablo koriste svi članovi grupe

Shared stablo Source-based stabla


Pristupi u kreiranju mcast stabala

Pristupi:
 “source-based” stablo: jedno stablo po izvoru

◦ stabla najkraće putanje

◦ reverse path usmjeravanje

 “group-shared” stablo: grupa koristi jedno stablo

◦ minimal spanning

◦ center-based stabla
Shortest Path stablo
 mcast forwarding stablo: stablo sa rutama
najkraće putanje od izvora do svih prijemnika
◦ Dijkstra’s algoritam

S: izvor
R1 2
1 R4
ruter sa pridruženim
članom grupe
R2 5
router bez pridruženog
3 4
R5 člana grupe
R3 6 i link se koristi za usmjeravanje,
R6 R7 i ukazuje na red linka
koji pridružuje algoritam
Reverse Path Forwarding

 Zasniva se na znanju rutera o najkraćoj


unicast putanji od njega do predajnika
 Svaki ruter obavlja jednostavne operacije:

if (mcast datagram received on incoming link on


shortest path back to center)
then flood datagram onto all outgoing links
else ignore datagram
Reverse Path Forwarding: primjer
S: source
LEGEND
R1
R4 ruter sa pridruženim
članom grupe
R2
router bez pridruženog
R5 člana grupe
R3 datagram će biti
R6 R7 proslijeđen
datagram neće biti
proslijeđen

• Rezultat je source-specific reverse SPT


– nije dobro rješenje za asimetrične linkove

También podría gustarte