Lic.(Tech.) Marko Luoma (1/50) Lic.(Tech.) Marko Luoma (2/50) Internet Internetin arvo on globaalissa saavutettavuudessa S-38.192 Verkkopalvelujen tuotanto Luento 5: Globaali saavutettavuus saadaan aikaiseksi eri operaattoreiden yhteistoiminnalla Asiakassuhteilla Paikallisella yhdysliikennetoiminnalla Saavutettavuus rakentuu reitityksellä, johon ottavat osaa kaikki operaattorit 18000 operattoria 13000 tynkä ASia 78 transit operaattoria Osa materiaalista on kopioitu tai johdettu Olivier Bonaventuren luentosarjasta www.info.ucl.ac.be/people/obo// 5000 yhdistelmää näistä kahdesta Lic.(Tech.) Marko Luoma (3/50) Lic.(Tech.) Marko Luoma (4/50) Sisäiset reititysprotokollat Ulkoiset reititysprotokollat Tehtävä Tehtävä Muodostaa tarkan kuvan autonomisen alueen sisäisestä rakenteesta Jokainen reititin ja linkki on kuvattu yhteiseen linkkitilatietokantaan Toiminta Välittää topologista tietoa Linkkitila algoritmi Keventää reititysprosessia eri autonomisten alueiden välillä poistamalla lokaalien muutosten aiheuttamat reittimuutokset muualla verkossa Yksityiskohtaista tietoa autonomisten alueiden sisäisestä rakenteesta ei siirretä muille aluille Mahdollistaa erilaisten politiikoiden käyttämisen lokaalin verkon reuna-alueilla Toiminta Ei välitä topologista tietoa vaan saavutettavuus tietoa ~ Etäisyysvektori algoritmi
Lic.(Tech.) Marko Luoma (6/50) Border Gateway Protocol Nykyinen versio -4 Virallinen määrittely FC 1772 (1995) Lukuisia lisäyksiä eitityspeilit FC 2796 eititysliittoumat FC 3065 MPLS leimojen välittäminen FC 3107 MPLS VPN tuki FC 2547 eitinvalinnan vaimennus FC 2439 etc Lic.(Tech.) Marko Luoma (7/50) Lic.(Tech.) Marko Luoma (8/50) vaatii toimiakseen tiedon Ulkoisista naapureista, joihin sen tulee olla yhteydessä e:llä IP osoite AS numero Sisäisistä naapureista, joihin sen tulee olla yhteydessä i:llä IP osoite AS numero Hyödyntää TCP:n palveluja reititysinformaation siirtoon Sovellusportti 179 CONNECT.req SYN(port=179) CONNECT.conf SYN+ACK(port=179) TCP connection established DATA.req(OPEN) ACK(port=179) DATA( OPEN) CONNECT.ind CONNECT.resp TCP connection established DATA.req(OPEN) DATA.req(OPEN) ACK DATA( OPEN) DATA.req(OPEN) session established ACK session established
Lic.(Tech.) Marko Luoma (9/50) Lic.(Tech.) Marko Luoma (10/50) Tärkeimmät sanomat :n toimintamalli UPDATE Välittää tiedot uusista verkoista, jotka on saavutettavissa kyseisen naapurin kautta WITHDAW Poistaa verkot, jotka eivät enää ole saavutettavissa kyseisen naapurin kautta sanomat etenevät globaalissa mittakaavassa muutospisteestä eteenpäin aina tiedon viimeiselle käyttäjälle Stabiilisuuden saavuttaminen vaikeata Msgs from Peer[N] Msgs from Peer[1] Peer[1] Peer[N] Import filter Attribute manipulation Import filter(peer[i]) Determines which Msgs are acceptable from Peer[i] Adj-IB-In Loc-IB All acceptable routes Decision Process One best route to each destination outing Information Base Contains all the acceptable routes learned from all Peers + internal routes decision process selects the best route towards each destination Peer[1] Adj-IB-Out Peer[N] Export filter Attribute manipulation Msgs to Peer[N] Msgs to Peer[1] Export filter(peer[i]) Determines which routes can be sent to Peer[i] Lic.(Tech.) Marko Luoma (11/50) Lic.(Tech.) Marko Luoma (12/50) Välitettävä Informaatio on vektoreita, jotka kuvaavat AS-tasolle abstraktoitua reittiä tietyn verkon (IP-osoitelohkon) ja kyseisen pisteen välillä Uutta verkkoa mainostava sanoma, sisältää tiedot Polkuparametreista eitti-ilmoituksen lähteestä AS1 10.1.0.0 AS1 AS3 AS2 10.1.0.0 AS2, AS1 AS4 AS5 10.1.0.0 AS4, AS3, AS1 AS6 Polkuvektorista, joka sisältää kaikki ne AS:t, joiden kautta on kuljettu Sarjana arvoja lähteestä käsin Sarjana arvoja agregoijasta käsin sekä joukkona sarjoja, jotka johtavat yksittäisiin aggregaatin osaverkkoihin eitittimestä, jonka kautta ko verkko on saavutettavissa Preferenssistä, joka kyseiselle ilmoitukselle tulee antaa Mahdollisesta aggregoinnista, joka ilmoitetulle verkolle suoritettiin Verkko-osoitteet, jotka on saavutettavissa polkuvektorin toisesta päästä
Lic.(Tech.) Marko Luoma (13/50) Lic.(Tech.) Marko Luoma (14/50) Polkuvektori Polkuvektori Polkuvektori kuvaa reittiä (kauttakulkualueita), joka verkossa kuljetaan kahden pisteen välillä Välitetään karkea kuva etäisyydestä kahden pisteen välillä Muut kustannusarvot olisivat keinotekoisia, koska yhteenliitettyjen verkkojen sisäiset kustannustekijät ovat vaihtelevia Polkuvektori mahdollistaa nopean silmukoiden havainnointi ja purkamismenetelmän etäisyysvektorityyppiseen toimintaan Autonomisen alueen reunareititin ei hyväksy reittiä, mikäli sen oma alue on jo polkuvektorissa Ongelma: Verkkojen määrä suuri Polkuvektoreiden määrä suuri eitittimet vaativat paljon muistia Vektoreiden siirto hidasta atkaisu Yliverkotus (supernetting) CID Agregoidaan mahdollisimman monia verkkoja yhden prefixin taakse Yksittäisen polkuvektorin koko kasvaa Kaikkiaan polkuvektoreiden määrä pienenee Lic.(Tech.) Marko Luoma (15/50) Lic.(Tech.) Marko Luoma (16/50) Polkuvektori Polkuvektori Polkuvektori kuvaa reittiä kohdeverkon ja reitityspisteen välillä Yliverkotus voi tapahtua mielivaltaisen usein Kaksi vaihtoehtoa Yksinkertaiset polkuvektorit Jokainen verkko on oma vektori Jokainen yliverkko on oma vektori Polku 1: 197.8.0.0/24 saavutetaan (T):n kautta Polku 2: 197.8.2.0/24 saavutetaan (T,X):n kautta Polku 3: 197.8.3.0/24 saavutetaan (T,Y):n kautta Polku 1: 197.8.0.0/22 saavutetaan (Z,T):n ja osajoukon (X,Y) kautta Polku 2: 197.8.5.0/23 saavutetaan (Z,):n ja osajoukon (M,N) kautta Polku 3: 197.8.7.0/24 saavutetaan (Z):n kautta Yliverkotuksen kutistaa vektoreiden määrää mutta johtaa monimutkaisempaan rakenteeseen Useampikertaisen yliverkotuksen jälkeen polkuvektori aivan samanlainen Yksilölliset osat polkua on siirretty jälkijoukkoon Polku 1: 197.8.0.0/22 saavutetaan (T):n ja osajoukon (X,Y) kautta Polku 1: 197.8.0.0/21 saavutetaan (Z):n ja osajoukon (M,N,,T,X,Y) kautta Yhteinen osa polkua Yksilölliset osat polkua
Lic.(Tech.) Marko Luoma (17/50) Lic.(Tech.) Marko Luoma (18/50) -verkottaminen -verkottaminen -verkotuksessa on keskeistä tietää alueiden rakenteet ja suhteet toisiin alueisiin Tynkä AS Tynkä AS Autonominen alue, joka on yhteydessä muuhun Internettiin ainoastaan yhdestä pisteestä Monikotinen AS Ei välttämättä vaadi :n käyttöä Transit AS Suora transitverkko Looginen transitverkko Lisäksi tulee miettiä sisäisen reitityksen ja ulkoisen reitityksen suhdetta e <-> i, IGP <-> e <-> IGP :llä voidaan hallita joukkoa staattisia reittejä, jotka ovat seurausta hajanaisesta osoitteistuksesta Käytetään privaatti AS-arvoja AS 65412 - AS 65535 Tynkä AS näkyy muulle verkolle osana palvelun tarjoajaa :llä välitettävät reitit siirretään palvelun tarjoajan verkossa IGP:hen Lic.(Tech.) Marko Luoma (19/50) Lic.(Tech.) Marko Luoma (20/50) -verkottaminen -verkottaminen Monikotinen AS Autonominen alue, joka on yhteydessä muuhun Internettiin useamman AS:n kautta Palvelun tarjoaja Ei kuitenkaan toimi transit liikenteen välittäjänä Oletus reitti Tynkä AS:n sisäiset verkot :n käyttöä suositellaan hallinnoimaan politiikkaa, jolla reitit valitaan Sisäisesti tarvitaan erilliset reititystiedot verkoille, jotka saavutetaan eri AS:n kautta Tynkä AS
-verkottaminen Lic.(Tech.) Marko Luoma (21/50) -verkottaminen Lic.(Tech.) Marko Luoma (22/50) Monikotinen transit AS Palvelun tarjoaja 1 Palvelun tarjoaja 1:n reitit Tynkä AS:n sisäiset verkot IGP:n oletus reitti Tynkä AS Palvelun tarjoaja 2 Palvelun tarjoaja 2:n reitit Operaattori, joka tarjoaa omaan verkkoaan muiden operaattoreiden keskinäisen liikenteen välittämiselle Edellyttää operaattoreiden mainostamien reittien välittämistä ympäröiville operaattoreille Edellyttää sisäisessä verkossa i:n tai polkuvektoreiden välittämisen mahdollistavan IGP:n käyttöä eittien määrä voi olla niin suuri, että sisäisen protokollan käyttäminen reittien välittämiseen ei ole perusteltua OSPF:n linkkitilatietokannan kasvu Jokainen ulkoinen reitti on oma rivi tietokannassa Lic.(Tech.) Marko Luoma (23/50) Lic.(Tech.) Marko Luoma (24/50) -verkottaminen Transit-verkot ISP 1 ISP 3 Transit-verkkojen sisäinen rakenne on yhtäläinen muiden autonomisten alueiden kanssa Palvelun tarjoaja 1:n reitit Palvelun tarjoaja 2:n reitit ISP 2 Transit reitit i i i Transit AS Transit reitit Palvelun tarjoaja 3:n reitit Sisällä käytetään omaa IGPprotokollaa Oletusreitti / reitit ulkomaailmaan i-sessio reunareitittimien välillä huolehtii polkuvektoreiden välittämisestä i i i Transit AS
Lic.(Tech.) Marko Luoma (25/50) Lic.(Tech.) Marko Luoma (26/50) Transit-verkot Transit-verkot Ongelma: atkaisu: Sisäverkon reitittimet tarvitsevat kaikki reitit välittääkseen paketit reunareitittimien välillä Tuhlaa FIBiä Lisää IGP:n työtä akentaa suora yhteys reunareitittimien välille Suora siirtoyhteys Tunnelointi GE MPLS Transit AS Lic.(Tech.) Marko Luoma (27/50) Lic.(Tech.) Marko Luoma (28/50) i vs e Stabiilisuuden kannalta on oleellista, että yhteys naapureiden välillä säilyy e sessiossa reititin mainostaa parasta reittiä kaikkiin tuntemiinsa kohteisiin prosessi on TCP-yhteys naapureiden välillä Yhteyden katkeaminen aiheuttaa kaikkien naapurin mainostamien reittien poistamisen prosessia ei kannata sitoa yksittäisen liitännän IP-osoitteeseen Tähän vaikuttavat sessioon käytettävät suodattimet sekä levitys säännöt i sessiossa reititin mainostaa ainoastaan parhaita reittejä, jotka se on oppinut omista e seissioista Loopback -osoite eunareitittimeen pitää aina tulla useampia riippumattomia polkuja Sisäverkossa Ulkoverkossa i session kautta opittua reittiä ei koskaan mainosteta toiselle i sessiolle Suodattimia ei yleensä käytetä i sessioissa
Lic.(Tech.) Marko Luoma (29/50) Lic.(Tech.) Marko Luoma (30/50) i i i on autonomisen alueen reunareitittimien välillä käytettävä protokolla Polkuvektoria ei voida käyttää ehkäisemään sisäisiä silmukoita Kaikilla i-reitittimillä on sama AS numero Ongelma N*(N-1)/2 i sessiota N:llä reitittimellä Silmukoituminen voidaan estää poistamalla reititystietojen välitys i:stä Kaikki reunareitittimet on suorassa naapuruussuhteessa keskenään Täysin kytketty verkko i sessio Lic.(Tech.) Marko Luoma (31/50) Lic.(Tech.) Marko Luoma (32/50) i eitityspeili Täysi kytkentä aiheuttaa ongelmia, jotka ilmenevät lähinnä erillisten tilakoneiden hallinnan mahdottomuutena Yhdellä operaattorilla saattaa olla kymmeniä liitäntäpisteitä, joiden välillä on tarvetta siirtää -informaatiota Kaksi ratkaisua (ei toisensa poissulkevia) eitityspeili (route reflector) i-informaation välityspiste, joka on suorassa yhteydessä muihin i-reitittimiin Vertaa juurireititin OSPF:ssä eititysliittouma Autonominen alue paloitellaan paikallisiin osiin, joiden välillä käytetään todellista -protokollaa eitityspeili toimii i-reitityssanomien välittäjänä Purkaa täyden kytkennän vaatimuksen niiden reitittimien osalta, jotka ovat kyseisen peilin asiakkaina Client <-> Server Verkossa voi olla samanaikaisesti Alueita, joilla käytetään peilejä Jokaisella peilausalueella on oma ryhmätunnus Alueita, joilla käytetään perinteistä i:tä eitityspeili i i i
Lic.(Tech.) Marko Luoma (33/50) Lic.(Tech.) Marko Luoma (34/50) eitityspeili eititysliittouma Välitys perustuu yksinkertaiseen logiikkaan eitityspeilin asiakkaalta tuleva -sanoma välitetään kaikille i:llä tuleva -sanoma välitetään peilin kaikille asiakkaille Hierarkiset reitityspeilit ja mahdolliset väärät konfiguraatiot voivat aiheuttaa reitityssilmukoiden syntymistä Kaksi uutta polkuvektoriparametria, jotka ovat AS:n sisäisiä Lähtöaseman tunnus (Originator ID) eitityspeilin tunnus, joka sanoman ensimmäisen kerran peilasi sanoman AS:n sisällä yhmälista (Cluster List) Jokainen reititinpeili lisää oman peilausalueensa tunnuksen listaan Mahdollistaa silmukoiden havainnoinnin eititysliittouma on joukko autonomisia alueita, jotka mainostetaan ulkopuoliselle yhtenä autonomisena alueena Mahdollistaa suuren transit-verkon paloittelun pienempiin osaverkkoihin, joiden välillä käytetään ulkoista reititystä Liittouman muodostavat AS-numerot ovat privaatista avaruudesta Liittouman sisällä käytetään AS 65010 i:tä täysin kytketysti eitityspeilejä AS 65012 AS 65011 eititysliittouma Vaatii polkuvektorin muuttamista liittouman alueella Lic.(Tech.) Marko Luoma (35/50) Normaali polkuvektori sisältää Järjestetyn listan yhteisistä AS:sta aggregaatiopisteeseen Osajoukon AS:sta, jotka ovat matkalla aggregaatin osiin eititysliittouman sisäisessä polkuvektorissa on myös Järjestetty lista sisäisistä AS:sta liittouman sisäiseen aggregaatiopisteeseen Osajoukko sisäisistä AS:sta, jotka ovat matkalla aggregaatin osiin Lic.(Tech.) Marko Luoma (36/50) :n reitinvalinnan eitinvalinta :ssä perustuu pääasiallisesti kolmeen tekijään: Mainostettavan verkon prefixin pituuteen Pisin prefix valitaan automaattisesti käyttöön Paikalliseen politiikkaan Autonomisella aluella voi olla jokin paikallinen politiikka, jonka perusteella se valitsee tietyt reitit käyttöön Ulkoiseen politiikkaan Naapurialueella voi olla jokin ulkoinen politiikka, jolla se pyrkii vaikuttamaan autonomisen alueen reitinvalitaprosessiin
Lic.(Tech.) Marko Luoma (37/50) :n reitinvalinnan Paikallinen politiikka voi perustua Polkuvektorin suodatukseen Hylätään ne polkuvektorit, jotka sisältävät tiety(n/t) AS-arvo(n/t) Lic.(Tech.) Marko Luoma (38/50) :n reitinvalinnan AS1 DENY AS-PATH AS1,AS2 ACCEPT AS-PATH * DENY AS-PATH AS1,AS2 ACCEPT AS-PATH * AS 5 Kustannustekijä Tietyt transit-operaattorit ovat kalliimpia kuin toiset Luotettavuustekijä Tietyt transit-operaattorit eivät toimi avoimesti AS 4 AS 3 Lic.(Tech.) Marko Luoma (39/50) :n reitinvalinnan Ulkoinen politiikka voi perustua Polkuvektorin kasvattamiseen Pyritään saattamaan tietyt polkuvektorit epäedulliseen asemaan muihin vektoreihin nähden Sisällytetään oma AS-tunnus useita kertoja polkuvektoriin Johtaa helpolla kilpavarusteluun, jos vastaava politiikka on toisaalla verkossa Kumpikin automaattisesti kasvattaa vektorin pituutta yhdellä yli vaihtoehtoisen reitin DENY AS-PATH AS1,AS2 ACCEPT AS-PATH * Lic.(Tech.) Marko Luoma (40/50) :n reitinvalinnan AS 5 AS1 AS 4 AS-PATH (AS1,AS5,AS5,AS5) AS-PATH (AS3,AS4,AS5) AS 3
Lic.(Tech.) Marko Luoma (41/50) :n reitinvalinnan Ulkoinen politiikka voi perustua Pidempien prefien mainostamiseen Mainostetaan omaa verkkoa pidemmällä prefixillä haluttuun suuntaan Etuna Mahdollistaa lyhyemmän prefixin jäämisen varareitiksi Haittana Kasvattaa verkon reititystaulujen kokoa Syö CID:llä saavutettua etua Lic.(Tech.) Marko Luoma (42/50) :n reitinvalinnan AS 5 AS 4 10.0.0.0/8 10.0.0.0/9 10.128.0.0/9 AS 3 Lic.(Tech.) Marko Luoma (43/50) :n reitinvalinnan Sisäinen / ulkoinen politiikka voi perustua yhteisön käyttöön -yhteisö on polkuparametri, joka mahdollistaa Sisäisen politiikan levittämisen i:ssä Vaikutuksen ulkoisiin naapureihin (vain yhden hypyn parametri) Yhteisöparametri Kokoaa useita polkuvektoreita yhteisen politiikan piiriin Mahdollistaa politiikan siirron naapureille Koostuu AS-numerosta Politiikkanumerosta Lic.(Tech.) Marko Luoma (44/50) :n reitinvalinnan 10.0.0.0/8 AS5:No Export AS 5 AS 4 10.0.0.0/8 AS 3
Lic.(Tech.) Marko Luoma (45/50) :n reitinvalinnan Import:1/20 Export:1/10 Import:1/10 Export:* Import:1/20 Export:1/10 Lic.(Tech.) Marko Luoma (46/50) :n reitinvalinnan Sisäinen politiikka voi perustua Paikallisen preferenssin Paikallinen preferenssi indikoi mitä liityntäpistettä tulee käyttää pyrittäessä kohti tiettyä verkkoa Merkityksellinen ainoastaan i:ssä AS 4 AS 3 Lic.(Tech.) Marko Luoma (47/50) :n reitinvalinnan 10.0.0.0/8 Pref 20 AS 4 10.0.0.0/8 Pref 10 AS 3 Lic.(Tech.) Marko Luoma (48/50) :n reitinvalinnan Ulkoinen politiikka voi perustua Ulkoisen reitityspisteen valintaan Multi-Exit Discriminator (MED) mahdollistaa polkuvektorikohtaisen liitäntäpisteen preferenssin signaloinnin Mahdollistaa kuorman jakamisen useiden liitäntäpisteiden välillä Mikäli naapurialueen paikallinen politiikka ei sodi MEDin osoittamaa politiikkaa vastaan 10.0.0.0/8
10.0.1.0/24 MED 10 10.0.2.0/24 MED 20 Lic.(Tech.) Marko Luoma (49/50) :n reitinvalinnan 10.0.1.0/24 10.0.2.0/24 10.0.1.0/24 MED 20 10.0.2.0/24 MED 10 Lic.(Tech.) Marko Luoma (50/50) :n reitinvalinnan Sisäinen politiikka voi perustua eitinvalinnan vaimennus -toimii globaaleissa verkoissa, joiden reititysmuutokset ovat laaja-alaisia Yksittäisten reittien aktivoitumiset ja passivoitumiset voivat olla jatkuvia prosesseja Kuormittaa turhaan reititintä ja koko verkkoa Voidaan vaimentaa liittämällä jokin vaimennusmenetelmä ankaisu: oskilointi käynnistää ajastimen, jonka aikana reittiä ei huolita Hallinnollinen: oskiloiva reitti poistetaan pysyvästi