Transcript MPLS

MPLS – višeprotokolarna
komutacija labela
Multi-Protocol Label Switching
dr Živko Bojović, dipl. ing.
13.4.2015
1
MPLS -sadržaj










Zašto MPLS?
Šta je MPLS?
Terminologija
MPLS – koncept (RFC 3031)
MPLS – kako radi?
Enkapsulacija labela
Label Distribution Protocol – LDP (RFC 3036)
Traffic Engineering – RFC 2702
MPLS – L2 i L3 VPN
MPLS i QoS (Class of Service, FC Class, E-LSP, L-LSP)
13.4.2015
2
Zašto MPLS – nedostaci IP?
 IP - prvi protokol i de facto jedini protokol za globalni rad na
Internetu
 Nedostaci IP-a
 Klasičan IP ne može da pruži neke servise koji su
vremenom postali značajni za ozbiljne primene u oblasti
pružanja telekomunikacionih servisa (traffic engineering,
VPN,...)
 Protokol bez uspostavljanja konekcije (nema garancija za
QoS)
 Problem sa rutiranjem saobraćaja
13.4.2015
3
Zašto MPLS – problemi IP sa
rutiranjem saobraćaja?
 Za metriku uzima samo najkraću putanju (ne uzimaju se u
obzir dodatne metrike i ne podržava traffic engineering).
 Svaki paket se nezavisno procesira i za svaki paket se
donosi nezavisna odluka (klasično IP rutiranje saobraćaja).
13.4.2015
4
Zašto MPLS?
 Veliki IP Header (najmanje 20 bajtova) – više informacija nego
što je potrebno za prosleđivanje paketa, pa je procesiranje
sporije.
 Paketi se “dugo” procesiraju:
 pri dolasku paketa u ruter proverava se L2 checksum i IP
header Checksum
 kada se paket prosleđuje: menjaju se source i dest MAC
adrese, dekrementira se TTL, računa se novi IP header
checksum i računa se novi L2 checksum.
13.4.2015
5
Zašto MPLS?
 Rutiranje na osnovu destinacije se može izbeći – Policy
based routing, ali ono tada postaje sporo i procesorski
zahtevno
 Više tehnika prosleđivanja paketa, a ni jedna nije potpuno
efikasna
 Process/interrupt prosleđivanje paketa
 Fast switching (cache) prosleđivanje paketa
13.4.2015
6
ATM kao rešenje problema?
 Zamišljen kao tehnologija koja bi rešavala probleme IP-a jer je:
 konekciono orijentisan (podržava QoS)
 Brza komutacija paketa sa fiksnom dužinom paketa
 integracija različitih tipova saobraćaja (voice, data, video)
….. ali postoje i nedostaci
 Uvođenjem optičkih mreža brzine 40 Gb/s i više u core mreže,
ATM sa velikim zaglavljem (5 bajta) i malom ćelijom (53 bajta)
postaje:
 kompleksno i skupo rešenje
 motiv za ATM- smanjenje kašnjenja "real-time" saobraćaja
je bespredmetan.
13.4.2015
7
Problema odnosa L2 i L3
tehnologija
 L2 tehnologije (FR, ATM) mogu da
pruže neke od zahtevanih servisa,
ali …
 L2 tehnologije ne mogu da
prosleđuju na osnovu IP adresa
 Neoptimalno rutiranje
 Statičko postavljanje L2 logičkih
veza
 Neskalabilnost
 Teška procena potrebnog
propusnog opsega
13.4.2015
8
Predlog za rešenje problema?
 Imajući sve ovo u vidu mrežni inženjeri su doneli odluku da
se ATM zameni sa protokolom koji bi:
 Radio sa okvirima (frejmovima)manjeg zaglavlja i
promenljive dužine okvira,
 pružao konekciono-orijentisane servise (kvalitet servisa)
 sačuvao „inženjering saobraćaja“ i kontrole „izvan
opsega“ koje su prisutne kod Frame Relay i ATM-a i
atraktivne su za primenu kod velikih mreža.
13.4.2015
9
ŠTA JE MPLS?
 MPLS (Multiprotocol Label Switching) - skalabilna mreža sa
komutacijom paketa koja obezbeđuje :
 jedinstven servis prenosa podataka kako iz mreže sa
komutacijom kola tako i iz mreža sa komutacijom paketa.
 „virtualne veze“ između udaljenih čvorova,
 enkapsuliranje paketa različitih mrežnih protokola (IP,
ATM, Frame Relay, Ethernet) praveći kola s kraja na kraj
kroz bilo koju vrstu transportnog medijuma, koristeći bilo
koji protokol i time eliminiše zavisnost od određene L2
tehnologije .
13.4.2015
10
TERMINOLOGIJA
 LER (Label Edge Router) ruter - ulazna ili izlazna tačka MPLS
mreže koja:
 na ulazu (Ingress LER) utisne (push) labelu ne obeleženim
paketima.
 na izlazu (Egress LER ) vrši ukloni (pop) labelu i prosledi
paket van MPLS mreže.
13.4.2015
11
TERMINOLOGIJA
 Ostali ruteri u MPLS mreži su LSR (Label Router Switching)
ruteri koji u svakom čvoru MPLS mreže:
 kada im stigne paket prvo “skinu” postojeću labelu,
 zatim dodele paketu novu labelu i
 onda na osnovu nove labele “proslede dalje” taj paket ne
razmatrajući sadržaj paketa.
 FEC (Forward Equivalent Class ) - svi IP paketi koje odlikuje
jednak način tretiranja u mreži i zajednički put kroz mrežu.
Formiranje FEC odnosno “smeštanje” оdrеđеnоg pаkеtа u
оdređenu FEC vrši se samo jednom, kada paket ulazi u mrežu.
13.4.2015
12
Terminologija
 LFIB (Label Forwarding Information Base) - baza informacija
o labelama za prosleđivanje koja sadrži tabele za mapiranje
(mapping) između labela što je osnova za prosleđivanje
paketa na izlaznim interfejsima.
 LSP (Label Switch Paths) - “putevi sa komutacijom labela”
koje paketi prolaze s jednog na drugi kraj MPLS mreže, tako
što im se u svakom čvoru LSR menja postojeću i dodeljuje
novu labelu. Put se uspostavlja pre nego što počne prenos
podataka i on je prikaz jedne FEC klase.
 LSP obezbeđuje mrežni operator sa namerom da obezbedi
određeni nivo performansi, izbegne zagušenje u mreži ili da
kreira IP tunele za virtuelne privatne mreže.
13.4.2015
13
TERMINOLOGIJA
 Komutiranje labela (label switching) se odnosi na hop po hop
rutiranje (hop-by-hop routing) gde se na putu od tačke A do
tačke B, na svakom čvoru, stalno traži ko je bliži B i stara
labela se menja sa novom (Label Substitution ili swapping).
 LDP (Label Distribution Protocol) - protokol za distribuciju
labela koji na osnovu tabela i mrežne topologije postavlja
vrednosti labela između susednih elemenata (LSP put).
13.4.2015
14
MPLS - RFC dokumenta
 IETF – MPLS
 http://www.ietf.org/html.charters/mpls-charter.html
 RFC3031 – MPLS Architecture
 RFC2702 – Requirements for TE over MPLS
 RFC3036 – LDP Specification
13.4.2015
15
MPLS - koncept (RFC 3031)
 Osnovna ideja MPLS je:
 Podrška L2 mrežama (ATM, Frame-Relay i Ethernet)
 Interfejsi sa postojećim protokolima rutiranja (RSVP, OSPF)
 Razvrstavanje saobraćaja u FEC klase (Forwarding
Equvalence Class) i upravljanje saobraćajnim tokovima
različite granularnosti (Flow Management)
 Realizacija putanja paketa od izvora da odredišta hop-byhop mehanizmom za prosleđivanje na osnovu labela koje
se podešavaju prema LDP protokolu
 Ugradnja mehanizam za brzo prosleđivanje paketa (ne
nužno na osnovu destinacione adrese i za različite servise)
13.4.2015
16
MPLS - koncept (RFC 3031)
 MPLS radi na sloju OSI modela koji se generalno smatra da
je između tradicionalne definicije sloja 2 (Data Link Layer) i
sloja 3 (Network Layer), pa se često naziva "sloj 2,5"
protokol ("layer 2.5" protocol).
 Nezavisan je od protokola na slojevima L2 i L3.
13.4.2015
17
MPLS - koncept (RFC 3031)
 MPLS mreža se sastoji od čvorova u jezgru (core) i na obodu
mreže (edge).
 Usmeravanje paketa vrši se na osnovu labela koje su zapisane u
tabelama u formatu (ulazna labela, izlazna labela, izlazni port).
 Labele nisu jedinstvene za neku FEC u celoj mreži već se:
 na svakom ruteru menjaju i
 najčešće dodeljuju na osnovu destinacione IP adrese paketa
(dodeljuju se i na osnovu drugih parametara, poput
interfejsa preko kog je stigao paket, na osnovu rutera,...).
13.4.2015
18
MPLS - koncept (RFC 3031)
 Zaglavlja paketa se analizira samo na ingress čvoru (edge)
kada se vrši “smeštanje” paketa u određeni FEC.
 Labelu dodeljuje downstream ruter koji je bliži destinaciji i
ona se nakon toga propagira ka upstream ruteru.
 Ru – Upstream ruter
 Rd – Downstream ruter
 Labela L outgoing za Ru, a
incoming za Rd
 Ruteri informišu jedan drugog o načinu povezivanja FEC i
labelama putem različitih protokola:LDP, MPBGP, RSVP.
13.4.2015
19
MPLS - koncept (RFC 3031)
 Zaglavlja paketa se analizira samo na ingress čvoru (edge)
kada se vrši “smeštanje” paketa u određeni FEC.
 Paket može da se mapira u određenu FEC na osnovu:
 Odredišne IP adrese,
 izvorišne IP adrese,
 TCP / UDP port,
 klase servisa (CoS) ili usluge (TOS)
 aplikacija koja se koristi,...
 bilo koje kombinaciju prethodnih kriterijuma.
13.4.2015
20
MPLS - koncept (RFC 3031)
 Koncept FEC obezbeđuje fleksibilnost, skalabilnost i traffic
engineering.
 U MPLS različite putanje ka istoj destinaciji mogu da imaju
paketi koji su u mrežu ušli preko npr. različitih rutera ili
različitih interfejsa jednog rutera.
 MPLS source routing – predefinisana putanja za neku FEC
13.4.2015
21
MPLS - kako radi?
 MPLS nudi dve opcije za podešavanje LSP:
 hop-by-hop rutiranje (svaki ruter samostalno bira skok
za dati FEC)
 eksplicitno rutiranje (ingress LSR određuje listu čvorova
kroz koje paket prolazi).
13.4.2015
22
MPLS - kako radi?
 Proces intenzivne analize, klasifikacije i filtriranja paketa
obavlja se samo jednom - na ingress LSR-u.
 Prosleđivanje paketa (slika) vrši se u 4 (četiri) koraka:
13.4.2015
23
MPLS – kako radi?
 Prvi korak: MPLS automatski na svakom ruteru gradi tabele
usmeravanja na osnovu OSPF, BGP ili IS-IS podataka. LDP na
osnovu tabela (slika) i mrežne topologije ostavlja vrednosti
labela između susednih elemenata čime se unapred kreira LSP
kao mapa puteva između odredišnih krajnjih tačaka.
13.4.2015
24
MPLS –kako radi?
 Drugi korak: Paket ulazi na ingress LER gde mu se na osnovu
zaglavlja određuje i ubacuje labela i on se prosleđuje na LSR.
 Treći korak: LSR ruteri u core-u mreže čitaju labelu na svakom
primljenom paketu, traže odgovarajući zapis unutar tabele
usmeravanja i na osnovu njega postavlja novu labelu i
prosleđuju pakete ka sledećem LSR core ruteru.
 Četvrti korak: Izlazni LER skida i odbacuje labelu, čita zaglavlje
paketa i prosleđuje ga na odredišnu adresu zapisanu unutar IP
zaglavlja.
13.4.2015
25
Shim Header - format labele
Exp - Experimental bitovi koriste se za Class of Service
BS - Bottom of Stack bit ima vrednost 0 ako iza date labele
postoji još jedna labela ili vrednost 1 ako nema više labela
TTL – Time to Leave bitovi imaju isto značenje kao i kod IP.
13.4.2015
26
Enkapsulacija labela
 Informacije o labelama (zaglavlje sa shim labelom) „ubacuju“
se:
 između Layer 2 i Layer 3 zaglavlja (sloj mreže)
 kao deo Layer 2 zaglavlja (ako Layer 2 zaglavlje
obezbeđuje adekvatnu semantiku kao kod ATM).
 U okviru zaglavlja mrežnog sloja (budućnost - IPv6).
13.4.2015
27
Label Distribution Protocol –
LDP (RFC 3036)
 Automatska distribucija informacija o labelama između dva
susedna (peer) rutera LSR (ili LER).
 Poruke između rutera se razmenjuju putem Hello paketa.
 Koristi TCP protokol po portu 646
 Tokom LDP sesije razmenjuju se sledeći tipovi poruka:
 Discovery messages - oglašavanje postojanja LSR
 Session messages - uspostava, održavanje i raskidanje sesije
 Advertisement messages - kreiranje, promena i brisanje
mapiranja labela
 Notification messages – razmena informacija (npr. o
greškama).
13.4.2015
28
Label Distribution Protocol –
LDP (RFC 3036)
 Unsolicited vs. On demand režim rada LDP:
 Unsolicited – ruter šalje svoje parove (FEC (prefiks),labela)
svim susednim ruterima, bez pitanja. Ruter poredi next
hop rute u svojoj ruting tabeli sa ruterom od kog je dobio
par. Ukoliko je par dobijen od next hop rutera za dati
prefiks (a to je downstream ruter), labela se prihvata.
 On demand – ruter šalje svoje parove (FEC prefiks,labela)
po zahtevu susednog rutera.
13.4.2015
29
Label Distribution Protocol –
LDP (RFC 3036)
 Independent vs. Ordered control režim rada LDP:
 Independent control - ruter dodeljuje labele prefiksima u
svojoj ruting tabeli i šalje ih bez obzira na to da li je ruter
dobio mapiranje u labelu za tu rutu od downstream
rutera.
 Ordered control – Ruter šalje svoje (FEC,labela) parove
samo za one FEC za koje ima mapiranje dobijeno od
downstream. rutera
13.4.2015
30
Label Distribution Protocol –
LDP (RFC 3036)
 Liberal retention vs. Conservative retention režim rada LDP:
 Liberal retention – ruter čuva sve parove (FEC, Labela)
dobijene od svih suseda, a prosleđuje pakete na osnovu
labela dobijenih od nizvodnog rutera.
 Conservative retention - ruter čuva samo one parove
(FEC, Labela) dobijene od downstream suseda za dati
FEC (od Next Hop).
 Liberal – više memorije, brza konvergencija– manje
memorije, sporija konvergencija.
13.4.2015
31
MPLS aplikacije
 Traffic Engineering
 Virtual Private Network
 Quality of Service (QoS)
13.4.2015
32
Traffic Engineering – RFC 2702
 Osnovna ideja: optimalno iskorišćenje resursa mreže tako
što se prosleđivanje paketa tj. upravljanje saobraćajem vrši
na osnovu:
 topologije mreže,
 skupa ograničenja,
 raspoloživih resursa.
 Upravljanje saobraćajem može biti ručno ili automatski
(novi protokoli RSVP-TE ili CR-LDP).
13.4.2015
33
Traffic Engineering – RFC 2702
 Atributi (ograničenja) na osnovu kojih se određuje
optimalni LSP su:
 Destinacija
 Propusni opseg
 Preče pravo (eng. preemption)
 Afinitet (svaki link po 32 “boje”, po kašnjenju, nekoj
karakteristici linka...)
 Optimizovana metrika
 Zaštita pomoću Fast Reroute mehanizma.
13.4.2015
34
MPLS TE – RFC 2702
 Preče pravo (preemption) znači da LSP većeg prioriteta u
slučaju nedovoljnih resursa ima pravo da raskine LSP nižeg
prioriteta.
 Na svim linkovima administratori konfigurišu koliko
propusnog opsega može da se zauzme LSP-ovima. Svaki
novi LSP sa određenim zahtevom za propusnim opsegom
izaziva promenu slobodnog propusnog opsega na nekom
linku => LSA se generiše => novo Dijkstra izračunavanje.
13.4.2015
35
MPLS TE – RFC 2702
 Uspostavljanje TE-LSP
 PATH poruke idu u downstream smeru, sa posebnim
poljem LABEL_REQUEST u kojem su opisani parametri
(ograničenja) zahtevanog LSP
 RESV poruke idu u upstream smeru i alociraju labele
13.4.2015
36
MPLS – L2 i L3 VPN
 MPLS VPN je kreiranje privatnih mreža preko MPLS
infrastrukture pri čemu svaka privatna mreža može da ima:
 proizvoljan skup adresa
 nezavisno interno rutiranje (slanje informacija o rutama
unutar jedne od lokacija).
 Postoje tri vrste MPLS VPN koje danas postoje u mrežama:
 Point-to-point (Pseudovire)
 Layer 2 (VPLS)
 Layer 3 (VPRN)
13.4.2015
37
MPLS – L2 i L3 VPN
 Point-to-point MPLS VPN-ovi koriste virtuelne iznajmljene
linije (Virtual leased lines - VLL), za obezbeđivanje L2
point-to-point konektivnosti između dva sajta. Ethernet,
TDM, i ATM frejmovi mogu se enkapsulirati unutar VLLova.
 L2 MPLS VPN, ili VPLS (Virtual Private LAN Service), nudi
prekidač "u oblaku" tzv. VPLS servis. VPLS pruža
mogućnost kalibrisanja između VLAN sajtovima. L2 VPNovi se obično koriste za usmeravanje glasa, video i AMI
saobraćaj između stanica i data centar lokacija.
13.4.2015
38
MPLS – L2 i L3 VPN
 L3 VPN radi na trećem sloju referentnog OSI modela i
omogućava :
 virtualno povezivanje različitih lokacija putem
kreiranja virtuelne privatne mreže (VPN)
 korišćenje resursa javne IP/MPLS mreže
 nezavisnost sa aspekta rutiranja i adresnog plana ,
(algoritmi rutiranja i adresni plan nezavisni su od
drugih mreža)
 da resurse ovih veza koristi samo korisnik L3 VPN
usluge kome su veze dodeljene.
13.4.2015
39
MPLS – L2 i L3 VPN
 VRF (VPN Routing and Forwarding instance) - logička
terminaciju jedne MPLS VPN mreže odnosno VRF se odnosi
samo na jedan VPN.
 Svaki VPN ima svoj VRF na edge i core ruteru čime se
onemogućava “dodir” između različitih VPN-ova.
 Na jednom LER ruteru može da postoji više VRF, ali jedan
interfejs LER rutera može da pripada samo jednoj VRF,
odnosno, interfejs se dodeljuje određenoj VRF.
13.4.2015
40
MPLS – L2 i L3 VPN
 Jedna VPN može da ima jednu ili više
VRF na jednom LER ruteru.
 Da bi se razlikovao saobraćaj između
različitih VPN, paketi moraju da budu
na neki način obeleženi. Obeležavanje
se vrši drugim setom labela, koje su
enkapsulirane u labele za prenos
paketa po MPLS mreži.
13.4.2015
41
MPLS i QoS

Najvažnija prednost MPLS-a je sposobnost da se obezbedi kvalitet
servisa (QoS).

QoS mehanizmi:
 Pre-konfiguracija zasnovana na fizičkom interfejsu
 Klasifikacija ulaznih paketa u različite klase
 Klasifikacija zasnovana na mrežnim karakteristikama (kao što su
zagušenja, propusna moć, kašnjenje i gubitak).
 Različite aplikacije zahtevaju različite uslove u pogledu
kašnjenja, jitter-a, i gubitka paketa pri prenosu kroz mrežu.
13.4.2015
42
Class of Service (CoS)
 Klasa servisa (Class of Service) označava pridruživanje toka
saobraćaja određenom servisnom nivou.
 Ruteri koji podržavaju COS rade:
 klasifikaciju paketa,
 polisiranje - ograničavaju odgovarajući tok saobraćaja,
 primenuju polisa za slanje saobraćaja na osnovu CoS
atributa,
 raspored transmisije paketa na izlaznom interfejsu
(scheduler),
 markiranje bita na izlaznom interfejsu.
13.4.2015
43
Kalsifikacija paketa
 BA (Behavior Aggregate) klasifikator u jezgru mreže koristi rezervisana polja unutar zaglavlja paketa i na
osnovu njihove vrednosti, svrstava paket u njemu
odgovarajuću klasu servisa.
(U zavisnosti od primenjene enkapsulacije paketa mogu se
koristiti DSCP, IEEE 802.1p ili MPLS EXP biti).
 MF (Multifield) klasifikator na obodu mreže - vrši
klasifikovanje primljenog korisničkog saobraćaja na
osnovu IP adresa pošiljaoca ili odredišta…
13.4.2015
44
Klase za slanje podataka
(FC - Forwarding Class)
 EF (Expedited Forwarding) - najniže vrednosti gubitaka, kašnjenja i
varijacije datog kašnjenja, osigurava propusni opseg.
 AF (Assured Forwarding) - definisanje grupnih vrednosti za
pojedine podklase i tri različite mogućnosti odbacivanja.
 BE (Best Effort) klasa - ne obezbeđuje određeni profil servisiranja i
primenjuje RED (Random Early Discard) profil odbacivanja.
 NC (Network Control) klasa uobičajeno poseduje visok prioritet
obzirom da podržava funkcionisanje protokola.
13.4.2015
45
MPLS DiffServ standard
 DiffServ model garantuje kvalitet prenosa za svaku klasu
određivanjem QoS karakteristika paketa na svakom
pojedinačnom čvoru u mreži, tzv. PHB (Per-hop Behavior)
ponašanje.
13.4.2015
46
Metode prenosa različitih klasa
servisa MPLS mrežom
 E-LSP
 L-LSP
13.4.2015
47