# Automatic Multicast Tunneling

AMT (Automatic Multicast Tunneling) UDP-n oinarritutako enkapsulazioa erabiltzen duen protokolo bat da.
IETF-k (Internet Engineering Task Force) argitaratu zuen 2015-eko otsailean bere RFC 7450-an (Request for Comments). Protokolo honen eginkizuna azaltzeko beharrezkoa da jakitea eduki batzuk (adb. Multimedia) multicast-en bitartez bidaltzea oso onuragarria dela, baina askotan ez dagoela eduki horiek bidaltzen dituzten iturrietatik bezeroetara multicast trafiko hori ailegatzea, hau gehien bat gertatzen da ISP-ak (Internet Service Provider) ez dutelako bere sareetan trafiko mota hau baimentzen.
Egoera hau kontuan hartuta ondo ulertzen da AMT-ren eginkizuna, protokolo hau erabiliz multicast baimentzen duen sare batetik multicast baimentzen ez duen sare batera konexioa ahalbidetzen da, UDP-n oinarritutako enkapsulazioaz baliatuz.
Modu honetan, ASM (Any-Source Multicast) edo SSM (Source-Specific Multicast) erabiltzea ahalbidetzen da multicast konexio natiboa (Konexioaren punturen batean ez dago multicast ahalbidetuta) ez duten bi punturen artean.

## Aurrekariak

AMT-ren existentzia azaltzeko trafikoa saretik bidaltzeko bi modu nagusiak aztertu behar ditugu, alde batetik unicast dago, modu honetan igorlea interesatuta dagoen helburu bakoitzari kopia bat bidaltzen dio, eta kopia horiek hasieratik sortzen ditu (trafiko bikoiztuta).
Beste aldetik, multicast dago eredu bezala, baita ere kopia bat bidaltzen zaio interesatua dagoen helburu bakoitzari baina kasu honetan ez da bikoizten trafikoa.
Aurreko irudia ikusita konturatzen gara zein indar handia duen multicast ereduak, non pertsona bakar batek askorekin komunikatu daiteke bere igoera banda zabalera txikia izan arren. Hau oso onuragarria da Interneten oso erabilia den multimedia trafikoarentzat (Bideoa, audioa, bideokonferentziak…).
Orduan galdera da, zergatik 90-ko hamarkadatik sortuta dagoen teknologia bat (Multicast), hain onuragarria dena Interneten dagoen trafikoarentzako ez da teknologia nagusia bihurtu? Hemen Interneteko ekosisteman dagoen aktore handi bat aipatu behar da, ISP-ak, teknologia hau nagusia bilakatzekotan galtzaile nagusiak bihurtuko liratekeenak. `
ISP-ak dituzten sareak askotan ez dute multicast trafikoa baimentzen, hau gertatzen da, askotan ISP-ak telefono eta telebista konpainiak direlako, eta multicast baimenduko bazuten haien konpetentzia asko onuratuko zen, OTT-ak (Over The Top) alegia.
Modu honetan, multicast-ren ezaugarri bati zuzenean erasotzen zitzaion, “All or nothing” moduan ezagutzen dena, hau da, edo konexio baten puntu guztietan multicast erabiltzea posiblea da edo ezin daiteke multicast erabili konexio osoan.

## Osagaiak

Kontestu honetan AMT agertzen da, honek lortzen du arazo hau gainditzea eta bere inplementazioaren adibide bat hau izango litzateke:
Irudi honetan ikusi dezakegu nola konportatzen den trafikoa AMT inplementatuta dagoen egoera batean, trafikoaren enkapsulazio hau funtzionatu dezan hainbat osagai erabili behar dira:
* AMT Relay: AMT gateway-etatik eskaerak jasotzeko gai den multicast routerra da. Tunelaren mutur batean kokatzen da eta bere lana eskatu diren multicast paketeak tunelean enkapsulatzea da. Bi sareen arteko ertzean kokatzen denez, multicast sarera ematen duen ertzean interfaze bat edo gehiago ditu eta beste aldean zero edo gehiago unicast sareari eta AMT pseudo-interfazeari konektatuta.
* AMT Gateway: Tunelaren beste muturrean dagoen routerra da, multicast ahalbidetzen ez duen sarera konektatuta dagoena. Bideratzaile honek AMT pseudo-interfazea soportatzen du. Gailu honen zeregina multicast paketeen de-enkapsulazioa egitea da.
* AMT Pseudo-Interface: Relay eta gateway-arentzako sare interfaze bat da, osagai honetan enkapsulazioa eta de-enkapsulazioa gertatzen da. Pseudo interfazea deitzen zaio inplementazioaren arabera interfaze baten lana egin dezakeelako edo tunel baten amaiera zatiarena.

## Funtzionamendua

Behin osagaiak zein diren argi izanda bere funtzionamendua ulertu behar dugu, honetarako lehenengo pausoa AMT gateway-ak relay-a nola aurkitzen duen azalduko dugu.
Pauso honek AMT Relay Discovery izena du, hasteko relay-ak Internet osotik atzitu ahal den helbide bat behar du, honetarako soluzio bat anycast helbide bat ematea da.
Orduan, gateway-ak mezu bat (AMT Relay Discovery message) bidaliko dio relay-aren anycast helbidera, honetarako erreserbatuta dagoen UDP (User Datagram Protocol) 2268 portura eta kode berezi bat bidaliko du mezu horretan.
Anycast erabiltzen denez, sareak bideratze algoritmoen arabera gateway-ak hurbilen daukan relay-ari bidaliko dio mezua. Azaldutakoa hurrengo irudian deskribatzen da.
Honen ondoren, relay-ak gateway-ari erantzungo dio (AMT Relay Advertisement message) eta mezu honekin bere unicast IP helbidea emango dio, honetaz gain, segurtasuna bermatzeko balio duen aurretik aipatu dugun kodea bidaliko dio. Modu honetan, bi osagaiek haien IP-a ezagutuko dute. Azaldutakoa hurrengo irudian ikusi daiteke.
Honen ondoren beste pauso bat hasten da, three way handsake delakoa, hau da, hiru pausuko negoziazioa.
Hau konexioa ezartzeko erabiltzen den metodoa da, horretarako, hasieran gateway-ak bidaltzen dio mezu bat ezagutu berri duen IP helbideari, kode berri bat erabiliz.
Ondoren, gateway-ak kode berri hori erabilita eta beste segurtasun kode bat gehituz erantzuten dio, segurtasun kode hori gateway-ak erabili behar izango du hurrengo mezuetan. Honekin batera IGMP (Internet Group Management Protocol) mezu bat doa kontsulten interbaloa zein izango den ezartzen duena (Querier’s Query Interval Code).
Azkenik, gateway-ak edozein iturriri join bat egiteko, mezu bat bidaltzen du aurretik sortu diren bi kodeak eta IGMPv3 pakete bat bidaliz (AMT Membership Update).
Prozesu honen ondoren tunela ezarrita geratzen da, ondoren, relay-ak bere pseudo-interfazea gehitzen dio eta paketeak replikatu eta enkapsulatzen hasten da gateway-ari bidaliz.
Hemendik aurrera beste konexio bat egitekotan errepikatu behar den pauso bakarra hiru pausoko negoziazioa da. Eta relay-aren bilaketa berriro egingo da bakarrik konexio apurtzekotan edota eskaerak erantzunik jasotzen ez badu.

## Segurtasuna

Protokolo hau arina egin nahi izan zenez ez du segurtasun handia inplementatzen. Horregatik hainbat eraso bektoreekin kontuz ibili behar gara, hauek erabilita DoS (Denial of Service) motako erasoak jaso ahal ditugulako.
Honetaz gain protokoloak ez du mezuen integritatea edo konfidentzialitatea bermatzen duten mekanismorik, mezuak testu hutsean bidaltzen baitira.

## Eragina gaur egun

Behin Internet hartzen ari den bidea ikusita, argi geratzen da multicast beharrezkoa den teknologia bat dela. IPv6-rekin gertatzen ari den modu berean sistema honek dakarren onurak oso argiak dira, baina sarea osatzen duten hainbat sektoreen interes propioen ondorioz bere garapena moteltzen ari da, horregatik oso pauso garrantzitsua izan da AMT-ren sorrera, “All or nothing” arazoa gainditzen laguntzeko eta modu horretan sarea garatzea ekidin nahi zuten sektoreei presio handia sartzen blokeoa amaitzeko balio duen teknologia delako.

## Erreferentziak

* ↑ IETF. (2014). draft-ietf-mboned-auto-multicast-18 - Automatic Multicast Tunneling. [online] Available at: https://tools.ietf.org/html/draft-ietf-mboned-auto-multicast-18 [Accessed 20 Dec. 2016].
* 1 2 World, Leonard A. Giuliano, co-chair of the MBONED Working Group at the IETF, special to Network. «Next generation TV over the Internet: This revolution will be televised» Network World (Noiz kontsultatua: 2017-01-16).
* ↑ NANOG, (2014). Internet Multicast: It's Still a Thing. [video] Available at: https://www.youtube.com/watch?v=cVb2Qb3ViJs [Accessed 20 Dec. 2016].
* 1 2 Ferdous, A. (2015). DESIGN AND VALIDATION OF A SECURED TUNNEL IN THE AUTOMATIC MULTICAST TUNNELING (AMT) ENVIRONMENT. Concordia University.
* 1 2 Kernen, T. and Simlo, S. (2016). AMT— Automatic IP Multicast without explicit Tunnels. 1st ed. [pdf] Available at: http://www.octoshape.com/wp-content/uploads/2012/05/trev_2010-Q4_AMT_Kernen_Simlo-1.pdf [Accessed 20 Dec. 2016].

## Kanpo estekak

* Datuak: Q31188108