MPLS

**MPLS** (**M**ulti**P**rotocol **L**abel **S**witching), konputagailu-sareen eta telekomunikazioen munduan, datuak garraiatzeko mekanismo bat da zeinek **zirkuitu-kommutazio** sare baten propietateak emulatzen dituen **pakete-kommutazio** sare baten gainean. MPLS-k OSI ereduko 2. geruzaren (lotura geruza) eta 3. geruzaren (sare geruza) artean lan egiten du, horregatik, askotan, 2.5 geruzako protokoloa dela esaten da. Zirkuitu-kommutazio eta pakete kommutazioan oinarritutako bezeroei datu garraio zerbitzu bateratua emateko diseinatu zen. Trafiko mota asko garraiatzeko erabili daiteke, hala nola, IP paketeak, ATM jatorrizko paketeak, SONET eta Ethernet tramak.

## Jatorria 
Teknologia desberdin asko erabili ziren lehenago helburu berdinekin, Frame Relay eta ATM-ren kasu. Gaur egun ordea, MPLS-k teknologia hauek ordezkatzen ari da merkatuan, batez ere, hobeto zuzenduta dagoelako oraingo eta etorkizuneko behar teknologikoetara.

MPLS-k ATM-ren zelula-kommutazioa eta seinale protokoloa alde batera uzten ditu. Protokolo honekin, ATM-ren zelula txikiak ez dira beharrezkoak gaur egungo sareen bihotzean, sare optiko berriak (2001etik aurrerakoak) hain azkarrak izanik (10 Gb/s tik gorakoak) 1500 byteko paketeek ere ez dutelako denbora errealeko atzerapen nabarmenik pairatzen (ATM-ren zelulen motibazioa horixe izan zen, atzerapen horiek txikitzea ahots trafikoa jasateko). Gainera, protokolo honek, eskala handiko sareak inplementatzeko erakargarri egiten zuen Frame Relay eta ATM-ren trafiko ingeniaritza eta bandatik at (*out-of-band*) kontrola erabiltzen ditu.

Jatorrian, MPLS Cisco Systems konpainiako ingeniari batzuek proposatu zuten eta “Plaka Kommutazioa” izena eman zioten . Geroago, “Etiketa Kommutazioa” izena hartu zuen IEFT-ren eskuetara pasa zenean estandarizaziorako.
Hasierako motibazioetako bat abiadura handiko kommutadore sinpleak sortzea zen, denbora tarte luze batean ezinezkoa baitzen IP paketeak osorik bidaltzea hardware bidez. Hala ere, VLSI-n eginiko aurrerapenei esker dispositibo hauek aurkitzea posible da gaur egun. MPLSren abantaila batzuk, zerbitzu mota desberdin asko jasatea edo trafikoaren kudeaketa egitea adibidez, ez dira galdu.

MPLSra migratzearen onurak asko diren bitartean (fidagarritasun hobea, eraginkortasun altuagoa, kostu baxuak…), MPLS sarea atzitzea sare arruntak atzitzea baino konplexuagoa da (bertan gertatzen ari dena kontrolatzea, alegia).

## MPLS-ren funtzionamendua 
MPLS protokoloaren funtzionamendua honako pausoetan azaldu daiteke:
#	**Bidea ezarri**: Korronte bati dagozkion datagramak bidaltzen hasi baino lehen, bide bat ezartzen da MPLS sarean, baita korrontearen QoS (*Quality of Service*) parametroak ere. Parametro horiek ondokoak baldintzatzen dituzte definitutako bideko bideratzaile bakoitzean:
##	Korronte horretarako gorde behar diren baliabideak.
##	Zein irizpideak jarraitu korronte honetan datagramak ilaretan sartu eta ateratzeko, eta datagramak baztertzeko.
#	**Etiketatu**: MPLS sarean (edo azpi-sarean) sartzeko bideratzaileari heltzen zaionean datagrama bat, bide bati esleitu behar zaio datagrama hori. Urratsak ondokoak dira:
##	Ezarri datagramak behar duen QoS.
## Esleitu datagramak korronte bati.
##	Korronteari dagokion biderako etiketatu datagrama. Biderik ez badago, definitu, lehenengo pausoan aipatu den moduan.
#	**Bideratu**: MPLS sareko bideratzaile bati MPLS datagrama bat heltzen zaionean, ondokoa egiten da:
##	Begiratu bere etiketa taulan jatorrizko etiketari zein etiketa berria eta irteera dagozkion.
##	Ordezkatu jatorrizko etiketa bere etiketa berriarekin.
##	Birbidali datagrama dagokion interfazetik.
#	**Desetiketatu**: Bide horren irteerako bideratzaileak etiketa kentzen du, eta IP goiburukoaren arabera dagoen informazioaren arabera birbidaltzen du datagrama.

## MPLS arkitektura 
MPLS protokoloa erabiltzen duen sare batek elementu hauek edukiko ditu:
 
*	**LER** (*Label Edge Router*): tunela hasieratu edo amaitzen duen elementua (burukoak jarri eta kentzen ditu). Hau da, MPLS sarera sarrera/irteera elementua da. Sarrerako bideratzailea *Ingress Router* bezala ezagutzen da eta irteerakoa *Egress Router* bezala. Biak *Edge Label Stwitch Router* izena hartzen dute MPLS sareko izkinetan aurkitzen baitira.
*	**LSR** (*Label Switching Router*): etiketak kommutatzen dituen elementua.
*	**LSP** (*Label Switched Path*): MPLS bide baten izen generikoa (FEC edo trafiko zehatz baterako), hots, izkinetan ezarritako MPLS tunelarena. Kontuan hartu LSP bat norabide bakarrekoa dela.
*	**LDP** (*Label Distribution Protocol*): MPLS etiketak banatzeko protokoloa.
*	**FEC** (*Forwarding Equivalence Class*): etiketa baten menpe bideratzen den trafikoari ematen zaion izena. Kommutadoreak era berean tratatzen dituen paketeen azpimultzoa.

Jarraian, MPLS protokoloa erabiltzen duen sare baten funtzionamenduaren eskema eta elementu batzuk azaltzen dira:

Fitxategi:EsquemaMPLS.jpg

## MPLS burukoa 
Fitxategi:MPLS packet.png

Non:
*	**Label** (20 bit): etiketaren identifikazioa.
*	**Exp** (3 bit): Beste testu batzuetan CoS bezala agertu daiteke eta paketeen txertatzean eta baztertzean eragina du.
*	**S** (1 bit): Ingeleseko *stack* hitzetik dator, etiketen pilaratze hierarkikorako balio du. S=0 denean etiketa gehiago gehitu zaizkiola paketeari esan nahi du. S=1 denean ordea, hierarkiaren hondoan gaude.
*	**TTL** (8 bit): *Time-to-Live*, IP-n daukan funtzionalitate bera, bideratzaile bakoitzean txikiagotzen da eta 0-ra iristean paketea baztertu egiten da.

## MPLS etiketa pila 
Fitxategi:Mpls_labelstack.png

## Kanpo estekak 
*	MPLS industriari buruzko berriak eta informazioa (ingelesez)
*	Orrialde honek MPLS-ko tutorial sinplea dauka
*	Ikerkuntza aukerak MPLS Hornitzaile desberdinen eskutik
*	MPLSren segurtasunari buruzko orrialdea
*	VPNentzat MPLS erabiliz
*	NEST IP/MPLS Software Multzoa sare planifikazioa, diseinu eta optimizaziorako
*	IP/MPLS modelatze tresna ahaltsua
*	IPv4/MPLS sare simuladore ahaltsua
*	Network Simulator (NS-2) -ekin MPLS simulazioak egiteko tutoriala
*	MPLS-Linux proiektua mpls-linux-docs dokumentazioa eta adibideak mpls-linux proiektuari buruz
* OpenSimMPLS: An MPLS sareko entziklopedia simulagailu eta irakaskuntza irekia, ikerketa eta diseinua.
* RFC 3031
* RFC 2547 BGP/MPLS VPNak