• Ei tuloksia

Verkkokerros ja Internet- protokolla

N/A
N/A
Info
Lataa
Protected

Academic year: 2022

Jaa "Verkkokerros ja Internet- protokolla"

Copied!
63
0
0

Kokoteksti

(1)

T-110.2100 Johdatus tietoliikenteeseen kevät 2013

Verkkokerros ja Internet- protokolla

Matti Siekkinen

(2)

TCP/IP-protokollapino

Sovelluskerros

Middleware: HTTP, SSL, XML...

Kuljetuskerros: TCP, UDP, ...

Verkkokerros: IPv4, IPv6 Linkkikerros: Ethernet, MPLS,

WLAN, GPRS ...

Tiedonsiirto yhden linkin yli Tiedonsiirto päästä päähän, Internetin yli (end to end)

Asiakas/palvelin- sovellukset ja monenväliset

palveluarkkitehtuurit

(3)

Viime luennolla…

§  Kuljetuskerros tarvitaan yhdistämään sovelluksia verkon yli

–  Monia aktiivisia sovelluksia yhtäaikaa päätelaitteen sisällä

§  Erityyppisiä palveluita

–  UDP: epäluotettava viestinvälitys

–  TCP: luotettava tavuvirta

(4)

Sisältö

§  Verkkokerroksen tehtävä ja ominaisuudet

§  Internet-protokolla

–  Osoitteet

§  IP-osoitteiden käyttö

–  NAT ja DHCP

§  ICMP

§  Reititin ja reititys

§  IPv6

(5)

Tämän luennon jälkeen…

§  Ymmärrätte:

–  Verkkokerroksen tehtävän ja toiminnan –  Internetin verkkokerroksen toiminnan

•  Internet protokolla (IP)

•  DHCP, NAT, ICMP

–  Mikä on reitin ja mitä se tekee

§  Tiedostatte:

–  Mitä reititys on

–  Internetin globaalin rakenteen

(6)

Mikä pilvi?

Internet

(7)

ARPANET 1969

(8)

§ 

Muutama kymmenen tuhatta

Autonomista järjestelmää (AS)

(9)

Verkkokerroksen tehtävä

§  Mahdollistaa päätelaitteiden yhdistämisen

§  Liikuttaa dataa pisteestä toiseen

–  Useiden erilaisten fyysisten kerrosten ylitse koneelta koneelle

Sovelluskerros Kuljetuskerros Verkkokerros

Linkkikerros Sovelluskerros

Kuljetuskerros Verkkokerros

Linkkikerros

Verkkokerros Linkkikerros

reititin

(10)

Verkkokerroksen ominaisuuksia

§  Pakettikytkentä eli pakettien välityspalvelu

§  Myös verkkokerros voi tarjota erilaisia palveluita

–  Luotettava tai ei, min. kaistanleveys, max. viiveen vaihtelu (jitter), tiedonsalaus, etc.

§  Virtuaalipiiri (virtual circuit) vs. datagrammi

–  Virtuaalipiiriverkko tarjoaa yhteydellisen palvelun

•  Yhteyden muodostus (virtuaalipiiri) ennen datan lähetystä

•  Hyvää: helpompi toteuttaa parempi palvelu (esim. max jitter)

•  Huonoa: reitittimet joutuvat pitämään lukua yhteyksistä

•  Esim. ATM ja x.25

–  Datagrammiverkko tarjoaa yhteydettömän palvelun

•  Paketteja liikutellaan kohdeosoitteen avulla

•  Reitittimet ei joudu pitämään tilaa yhteyksistä (niitä ei ole!)

•  Esim. Internet Protokolla (IP)

§  Tällä luennolla käsitellään jatkossa vain IP:aa

(11)

Sisältö

§  Verkkokerroksen tehtävä ja ominaisuudet

§  Internet-protokolla

–  Osoitteet

§  IP-osoitteiden käyttö

–  NAT ja DHCP

§  ICMP

§  Reititin ja reititys

§  IPv6

(12)

Internetin verkkokerros

§   Internet-protokolla (IP) toteuttaa Internetin verkkokerroksen

–  IP tuo datan päätelaitteeseen, kuljetuskerros välittää sen oikealle sovellukselle

–  Kuljetuskerroksen segmentti paketoidaan IP- paketin sisälle

•  Lisätään IP-otsake

§   Jokaisella päätelaitteella on IP-osoite

–  Tarkemmin: jokaisella verkkorajapinnalla (Wi- Fi, 3G, LTE, Eth…)

–  Osoiteavaruus on globaali

(13)

IP: Internet Protocol

§  Määritelty standardissa RFC 791

§  Se tarjoaa epäluotettavan ja yhteydettömän palvelun ( "best effort”)

–  Viestin perillemenoa ei varmenneta

•  Lähettäjä saa virheilmoituksen vain jos IP-kerros ei tiedä miten toimittaa viesti perille

•  Esim. jos reitittimen puskurimuisti on täynnä, tuleva data vain hylätään

–  Reitittimet käsittelevät jokaisen IP-paketin erikseen

§  IP-protokollan versio 4 nyt pääasiassa käytössä

–  IPv6 myös käytössä, mutta pienemmässä määrin

•  Protokolla olemassa jo 15 vuotta

–  IPv6:n olennaisin parannus on suurempi osoiteavaruus

(14)

IPv4-otsake

Vers Hdr

length TOS Total length

Identification Flags Fragment offset

TTL Protocol Header checksum

Source IP address Destination IP address

Options... Padding

Data

0 16 31

Ei oikeastaan käytössä

4

Kasvava laskuri -> Uniikki id paketille

fragmentointi

Time to Live:

- vähennetään yhdellä jokaisessa reitittimessä - kun 0 -> paketti hylätään

Kuljetuskerroksen protokolla

Harvoin käytössä: tietoturva &

tehokkuusongelmat

Lasketaan vain IP-otsakkeesta

(15)

Fragmentointi

§   Linkkikerroksella on maksimikoko siirrettävälle segmentille

–  MTU: maximum transmission unit –  Riippuu linkin tyypistä

•  Esim. Ethernet 1500 tavua, WiFi 2304 tavua

§  Mitä tehdään, jos IP-paketin lähettäjä

lähettää 64 kB paketin ja vastaanottajan kokorajoitus on 1,5 kB?

–  Vastaus: Fragmentointi

§   Reititin jakaa paketin osiin (fragmentit) ja lähettää ne erillisinä IP-paketteina

§   Vastaanottaja kokoaa taas yhdeksi IP-

paketiksi

(16)

Fragmentointi

§  Tehokkuusongelmat

–  Pitää lähettää enemmän otsakkeita (overhead)

•  Riippuu valitusta fragmentin koosta

–  Vastaanottaja puskuroi vastaanotetut palaset kunnes voidaan kasata koko paketti

–  Kaikki paketin palaset pitää lähettää uudelleen jos yksittäinen palanen katoaa

§  Aiemmin myös tietoturvaongelma

–  Jolt2: palvelunestohyökkäys väärinrakennetuilla fragmenteilla

§  Pyritään välttämään

–  Selvitetään ennemmin suurin sallittu segmentin koko

(17)

Path MTU Discovery

§  Fragmentoinnin välttämiseksi selvitetään suurin sallittu IP-paketin koko (RFC 1191, 1990)

§  Lähetetään suurehko IP-paketti, jossa on "Don't Fragment" -lippu päällä

–  Ensimmäinen reititin jonka MTU pienempi kuin

paketin koko vastaa ICMP "Fragmentation Needed"

viestillä (sis. linkin MTU:n)

–  Muutetaan paketin koko vastaamaan MTU:a –  Toistetaan kunnes paketti menee perille asti

§  Ongelma: palomuuri voi estää ICMP viestit

–  Ratkaisu: lähetetään toinen toistaan suurempia

paketteja kunnes paketti katoaa (RFC 4821, 2007)

(18)

IP-osoitteet

§  IP-osoite on verkkoliittymän (interface) tunniste

–  Päätelaitteella voi olla useita samanaikaisia verkkoliittymiä

•  Reitittimet

•  Luotettavuus (eräänlainen multihoming)

•  Erilaiset linkit (esim. kännykän WLAN, UMTS)

§  IPv4-osoitteet ovat 32-bitin mittaisia

–  IPv6 tarjoaa 128-bitin osoitteet

§  IPv4: Neljä pisteiden erottamaa tavua desimaalinumeroina

–  Esim: 130.233.240.9

§  Alkuosa osoitteesta kertoo verkon (network prefix), loppuosa viittaa koneeseen verkossa (host id)

–  Esim. lähiverkko tai yrityksen koko verkko

–  Reitittimet välittävät paketteja verkko-osan perusteella

(19)

IP-verkko ja osoitteet

223.1.2.9 223.1.1.4

223.1.3.27

223.1.3.1 223.1.3.2 223.1.1.1

223.1.1.2

223.1.1.3

223.1.2.1

223.1.2.2

(20)

IP-verkko ja osoitteet

§   Käytetään on CIDR notaatiota

–  Classless Inter-Domain Routing

–  Aiemmin oli käytössä osoiteluokat eri kokoisille organisaatioille

§  Ilmoitetaan verkko-osoite ja merkitsevien bittien määrä

–  Esim. 130.223.0.0/16 on TKK:n verkko runkoverkon tasolla

•  Kaikki 130.223 -alkuisiin osoitteisiin matkaavat paketit ohjataan tässä verkossa

–  Raja on bitteinä, ei tavuina

(21)

IP-verkko ja osoitteet

§  TKK:n verkon sisällä voi olla aliverkkoja, esim.

130.223.236.0/22

–  Verkkomaski (netmask) tässä on 255.255.252.0

–  Osoitteet 130.223.236.0-130.223.239.255 kuuluvat tähän verkkoon

§  Onko 130.223.237.0/22 eri aliverkko?

10000010 11011111 11101100 00000000 11111111 11111111 11111100 00000000 10000010 11011111 111011

130.223.236.0 verkkomaski 130.223.236.0/22

10000010 11011111 11101101 00000000 11111111 11111111 11111100 00000000 10000010 11011111 111011

130.223.237.0 verkkomaski 130.223.237.0/22

Sama

Ei.

(22)

IP-verkko ja osoitteet

223.1.2.9 223.1.1.4

223.1.3.27 223.1.1.1

223.1.1.2

223.1.1.3

223.1.2.1

223.1.2.2 223.1.1.0/24

223.1.2.0/24

223.1.3.0/24 223.1.2.0/28

223.1.3.0/27

(23)

Erityiset osoitteet

§  0.0.0.0

–  Mikä/kuka tahansa (any)

–  Lähettäjällä ei ole vielä IP-osoitetta

§  255.255.255.255

–  Paikallinen yleislähetys (broadcast)

§  Koneen osoite -osan kaikki bitit 1

–  Verkon yleislähetys –  Esim. 222.1.16.255/24

§  127.*.*.*

–  Loopback, viittaa ko. liittymään –  Yleensä. 127.0.0.1

–  Erittäin käytännöllinen

•  Asiakas ja palvelin samassa päätelaitteessa

(24)

Yksityiskäyttöön varatut osoitteet

§  Tietyt osoitteet on määritelty vain paikalliseen käyttöön

–  10.0.0.0/8

–  192.168.0.0/16 –  172.16.0.0/12

§  Runkoverkko kieltäytyy reitittämästä niitä

–  Voi käyttää vapaasti, mutta niistä ei voi viestiä (suoraan) Internetiin

–  Käytetään lähiverkoissa

•  julkisen verkon IPv4 osoitteista on pulaa

§  Liikennöinnin Internetiin mahdollistaa NAT

(Network Address Translation)

(25)

IPv6 osoitteet

§  Kahdeksan kaksoispisteiden erottamaa 16-bittistä heksadesimaalisarjaa

–  2001:0db8:0000:0000:0000:0000:1420:57ab –  2001:db8::1420:57ab (sama osoite)

§  3.4×10 38 mahdollista osoitetta

–  Noin 4.8×10

28

osoitetta jokaiselle ihmiselle

§  Helpompaa allokoida osoiteavaruutta

–  Ei tarvitse huolehtia osoitteiden niukkuudesta

–  Aggregointi mahdollisesti tehokkaampaa

(26)

Sisältö

§  Verkkokerroksen tehtävä ja ominaisuudet

§  Internet-protokolla

–  Osoitteet

§  IP-osoitteiden käyttö

–  NAT ja DHCP

§  ICMP

§  Reititin ja reititys

§  IPv6

(27)

NAT

§   Network/Port Address Translation (NAT/

PAT)

§   Mahdollistaa julkisen osoitteen jakamisen usean laitteen kesken

§   Reitittimellä yksi (tai muutama) julkinen IP- osoite ja sisäverkossa yksityisosoitteita

–  Yksityisosoitteet vaihdetaan julkisiin reitittimessä ja päinvastoin

–  Reititin pitää kirjaa yksityinen ↔ julkinen osoite (ja portti) kuvauksesta

–  Nyt reitittimessä on verkkoyhteyden tila

(28)

NAT

§  IP-paketin muuttuminen matkalla

10.0.0.2 10.0.0.1 194.197.18.3

130.233.9.10 lähdeosoite Lähdeportti Kohdeosoite kohdeportti

1 10.0.0.2 8890 130.233.9.10 80 2 194.197.18.3 3498 130.233.9.10 80 3 130.233.9.10 80 194.197.18.3 3498

1 2

3 4

lähdeosoite Lähdeportti Kohdeosoite kohdeportti 1 10.0.0.2 8890 130.233.9.10 80

2 194.197.18.3 3498 130.233.9.10 80 3 130.233.9.10 80 194.197.18.3 3498

lähdeosoite Lähdeportti Kohdeosoite kohdeportti 1 10.0.0.2 8890 130.233.9.10 80

2 194.197.18.3 3498 130.233.9.10 80

lähdeosoite Lähdeportti Kohdeosoite kohdeportti

1 10.0.0.2 8890 130.233.9.10 80

(29)

NAT: huono puoli

§   B haluaa viestiä A:n kanssa

§  Mihin osoitteeseen lähetetään ensimmäinen paketti?

§  Osoitteeseen 10.0.0.3?

à yksityisosoite (ei reittiä eikä reititin välitä)

§  Osoitteeseen 194.197.18.3?

à NAT1 ei tiedä kummalle paketti kuuluu

C: 10.0.0.2 10.0.0.1 194.197.18.3 B: 10.0.0.2

Internet

10.0.0.1 194.192.11.1

?

NAT1 NAT2

A: 10.0.0.3

(30)

NAT: huono puoli

§  Internetistä ei voi aloittaa yhteyttä NATin taakse

–  NAT toteuttaa siis tietynlaisen palomuurin (hyöty?) –  Kiinteä NAT-muunnos saa NATin takana olevan

palvelimen näkymään julkiseen verkkoon

§  Kaksi NATin takana olevaa päätelaitetta eivät pysty viestimään keskenään ilman apua

–  Ratkaisuina STUN, ICE, TURN

–  Pyritään tunnistamaan NAT:n toimintatapa

•  Esim. viestimällä STUN-palvelimen kanssa

–  Viimeisenä konstina välityspalvelin eli relay (TURN)

•  Molemmat päätepisteet ottavat yhteyden palvelimeen

(31)

Miten IP-osoite saadaan?

§  Blokki osoitteita

–  Internet-yhteydentarjoajalta (ISP) –  ICANN hallinnoi globaalisti

•  Internet Assigned Numbers Authority (IANA)

–  ICANNin alla

•  Viisi kappaletta Regional Internet Registryä (RIR)

–  Melkein maanosittain

–  IANAlta IPv4 osoitteet loppuivat jo...

•  Osalla RIR:stä on vielä muutamaksi vuodeksi

§  Yksittäisen päätelaitteen osoite

–  Manuaalisesti konfiguroimalla

–  Automaattisesti: Dynamic Host Configuration Protocol (DHCP)

•  Erittäin käytännöllistä (esim. läppärit)

(32)

DHCP

§  Dynamic Host Configuration Protocol

–  Automaattinen IP-osoitteiden jakelu lähiverkossa

§  Eri toimintatapoja

–  Staattinen allokointi

•  Pysyvät IP-osoitteet asiakkaan MAC-osoitteen perusteella

•  Vaatii manuaalisesti MAC-osoitteiden konffaamisen serverille

–  Automaattinen allokointi

•  Ei manuaalista MAC-osoitteiden konffaamista

•  Ensimmäisen kerran jälkeen staattinen allokointi

–  Dynaaminen allokointi

•  IP-osoitteet täysin dynaamisesti poolista

•  Sama asiakas voi saada joka kerta eri osoitteen

§  Edellyttää palvelimen tai proxy-palvelimen lähiverkkoon

§  RFC 2131, 2132

(33)

DHCP

§  Viestit kapseloitu UDP:nä IP:n yli

–  Palvelin portissa 67, asiakas portissa 68

§  Palvelin löydetään yleislähetyksellä

–  Ensimmäinen paketti osoitteeseen 255.255.255.255 osoitteesta 0.0.0.0

§  Viestityypit

–  DISCOVER, OFFER, REQUEST, DECLINE, ACK, NAK, RELEASE

§  Palvelin antaa lähiverkon työaseman tarvitseman perusinformaation

–  IP-osoite, verkkomaski, yhdyskäytävä –  DNS-palvelimen osoite

–  Yms.

(34)

Läh: 0.0.0.0:68 Vast:

255.255.255.255:67 yiaddr: 223.1.2.4

ID: 655

Server ID: 223.1.2.5 Läh: 223.1.2.5:67

Vast:

255.255.255.255:68 yiaddr: 223.1.2.4

ID: 655

Server ID: 223.1.2.5 Läh: 223.1.2.5:67

Vast: ??

yiaddr: 223.1.2.4 ID: 654

Server ID: 223.1.2.5

Läh: ??

Vast: ??

yiaddr: 0.0.0.0 ID: 654

DHCP esimerkki

Palvelin A

(

223.1.2.6

) Asiakas Palvelin B

(

223.1.2.5) DHCPDISCOVER

DHCPOFFER DHCPREQUEST

DHCPACK

DHCPRELEASE DHCPDISCOVER

DHCPOFFER

DHCPREQUEST

Läh: 0.0.0.0:68 Vast:

255.255.255.255:67 yiaddr: 0.0.0.0

ID: 654

Läh: 0.0.0.0:68 Vast: ??

yiaddr: 223.1.2.4 ID: 654

Server ID: 223.1.2.5

(35)

Sisältö

§  Verkkokerroksen tehtävä ja ominaisuudet

§  Internet-protokolla

–  Osoitteet

§  IP-osoitteiden käyttö

–  NAT ja DHCP

§  ICMP

§  Reititin ja reititys

§  IPv6

(36)

ICMP

§  Internet Control Message Protocol

§  RFC 792

§  Yksinkertainen viesti IP-paketin sisällä

–  Luodaan IP-kerroksella

–  Kahden koneen IP-kerroksien, ei sovelluksien, välillä –  Viestin ilmoitus usein kuitenkin välitetään sovellukselle

§  Toteuttaa

–  Verkon virheilmoitukset –  Ping

–  Traceroute

§  Turvasyistä käyttö usein rajoitettu

–  Esim. yhteyden kaappaus tai DoS perustuen "Route redirect",

"router advertisement” -viesteihin

–  Pelkkä ping mahdollistaa verkon koneiden kartoituksen

(37)

ICMP-viesti

Type Code Checksum

Data

§  Type määrittelee viestin: echo request, echo reply, destination unreachable, jne.

–  Esim. Ping = ICMP ”echo request” + ICMP ”echo reply”

§  Code määrittelee syyn: host unreachable, port unreachable, jne.

§  Data sisältää virheviesteissä virheen aiheuttaneen IP-

paketin oleelliset osat

(38)

traceroute

§  Mahdollistaa IP-tason polun selvittämisen

§  Lähettäjä lähettää UDP-segmenttejä

–  Kohdeosoite on polun päätepiste

•  Kohdeportiksi joku epätodennäköisesti auki oleva

–  Aluksi TTL=1, kasvatetaan yhdellä peräkkäisissä segmenteissä –  Myös ajastin käynnistetään jokaista segmenttiä lähetettäessä

§  Kun TTL=0

–  Reititin hylkää segmentin

–  Lähettää ICMP TTL expired viestin lähettäjälle

§  ICMP viestit paljastavat polun reitittimien osoitteet ja viiveen

L

TTL=1 TTL=2 TTL=3

V

(39)

ICMP esimerkki

§   Mitä tapahtuu?

§  Nimeltään Smurf-hyökkäys

–  Ei pitäisi toimia enää…

Internet

89.223.0.0/16

109.27.57.70

ICMP “echo request” (Ping) Vast: 89.223.255.255

Läh: 109.27.57.70

129.47.17.2

toista N kertaa, N hyvin suuri

(40)

Sisältö

§  Verkkokerroksen tehtävä ja ominaisuudet

§  Internet-protokolla

–  Osoitteet

§  IP-osoitteiden käyttö

–  NAT ja DHCP

§  ICMP

§  Reititin ja reititys

§  IPv6

(41)

Reititys

§  Verkossa useita vaihtoehtoisia reittejä pisteiden välille

–  Vikasietoisuus

–  Sopimukset liikenteen siirtämisestä ISP:n välillä

§  Reititys: Polkujen löytämistä osoitteesta toiseen

§  Reititysprotokolla: Tapa jolla reitittimet vaihtavat tietoa verkon tilasta ja tarjoamistaan osoitteista

§  Reititystaulu: Reitittimen tallentama tieto osoitteiden sijainneista

–  Mahdollisesti reititysprotokollan avulla selvitetty

(42)

Reititin

§   Kaksi tehtävää:

–  Reititys

•  Ei välttämätöntä

–  Esim. manuaalisesti konfiguroitu reititystaulu

–  Edelleenlähetys (Forwardointi)

•  Siirretään paketti sisääntulevasta portista

ulosmenevään (linkistä toiseen) reititystaulun perusteella à prefix-haku

•  Tehdään siis jokaiselle paketille

•  Erittäin aikakriittinen tehtävä

–  Miljoonia paketteja sekunnissa nopeissa reitittimissä

•  Jokainen lähetys vaatii prefix-haun

(43)

Prefix-haku (lookup)

§  Kohdeosoitetta verrataan reititystaulun sääntöihin

§  Longest prefix matching rule

–  Aina haetaan pisin soveltuva sääntö reititystaulusta

Destination Next Hop

200.223.0.0/16 R2

200.16.0.0/13 R4

200.22.0.0/15 R1

Kohdeosoite: 200.223.146.51

(44)

Longest Prefix Matching Rule

Destination Next Hop

11001000 11011111 R2

11001000 00010 R4

11001000 0001011 R1

§  Mihin tämä paketti lähetetään?

Kohdeosoite on: 200.23.146.51

11001000 00010111 10010010 00110011

200.223.0.0/16

200.16.0.0/13

200.22.0.0/15

(45)

Miksi longest prefix matching?

§  Vastaus on route aggregation (a.k.a. address aggregation)

–  Voidaan esittää useita aliverkkoja yhdellä säännöllä

§  Pienentää reititystaulujen kokoa

Destination Next Hop 10.1.0.0/24

10.1.2.0/24 10.2.1.0/24 10.3.1.0/24 20.0.0.0/8

R3 direct direct

R3 R2 Destination Next Hop

10.1.0.0/24 10.1.2.0/24 10.2.1.0/24 10.3.1.0/24 20.2.0.0/16 20.1.1.0/28

R3 direct direct

R3

R2

R2

(46)

Reitittimen arkkitehtuuri

Hae IP-osoite -> portti

Päivitä otsake

portti

reititystaulu

Hae IP-osoite -> portti

Päivitä otsake

portti

reititystaulu

Hae IP-osoite -> portti

Päivitä otsake

portti

Data Hdr

Data Hdr

Data Hdr

Puskurin- hallinta

Puskuri

Puskurin- hallinta

Puskuri

Puskurin- hallinta

Data Hdr Data Hdr

Data Hdr Kytkentäosa

(Switching Fabric)

(47)

Reititin: haasteita

§  Mikä on oikea puskurien koko?

–  Viime aikoina ymmärretty ettei ehkä vieläkään tiedetä J

–  Liian suuri:

•  Kallista

•  TCP:n ruuhkanhallinta reagoi myöhässä à epästabiili

–  Vrt. liian vetelä auton jousitus

–  Liian pieni:

•  Ei riittävästi toleranssia purskeiselle liikenteelle

§  Suuret nopeusvaatimukset

–  Prefix-haku pitää olla todella nopeaa

–  Useita eri ratkaisuja keksitty esim. kytkentäosioon –  Täysin optisia reitittimiä myös mietitty...

•  Erityisesti puskurien toteutus hankalaa optisesti

(48)

Staattinen reititys

§   Työasemissa ja verkon reunareitittimissä reititystaulu on usein staattinen

–  Reititysprotokollia ei käytetä

–  Eli oikeastaan ei reititystä ollenkaan

§   Forwardointi

–  Työasema vertaa lähtevän paketin kohdeosoitetta omaan osoitteeseen verkkomaskin puitteissa

–  Reunareititin (esim. kotiverkossa) tietää

lähiverkon verkko-osoitteet ja ohjaa kaiken

muun oletuslinkille (default)

(49)

Esimerkki: kotiverkko

§  Tyypillinen pieni kotiverkko

§  Reititystaulu:

Destination Next hop Comment

193.209.237.72/30 e0 Local LAN (Ethernet)

* s0 WAN (default route)

Internet s0 e0

193.209.237.72/30

(50)

Dynaaminen reititys

§   Reitittimille asetetaan käsin paikalliset (lähi)verkot ja niiden osoiteavaruudet

§   Reitittimet ”mainostavat” toisilleen omia verkkojaan

–  Reititysprotokollat

§  Vastaanotetusta tiedosta rakennetaan reititystaulu

–  Päivitetään jatkuvasti

§  Protokollat käsitellään tarkemmin kurssilla

T-110.4100 Tietokoneverkot

(51)

Toinen esimerkki

§  Toimipisteellä on 100 Mbps linkki Internetiin toisen toimipisteen kautta ja 2 Mbps varalinkki

Inet s1

s0

e0

L2, 100 Mbps L1, 100 Mbps

L2, 2 Mbps

193.209.237.0/24

194.197.118.0/25

R1

R2 R3

(52)

Vähän monimutkaisempi...

§  R3:n reititystaulu:

Destination Next hop Cost Comment

194.197.118.0/24 e0 0 Directly connected 193.209.237.0/24 s0 1 Fastest route

193.209.237.0/24 s1 10 Backup via R2

* s0 1 Fastest route via R1

* s1 10 Slower

§  "Cost" ei ole rahallinen kustannus vaan ohjaa

Inet s1

s0

e0

L2, 100 Mbps L1, 100 Mbps

L2, 2 Mbps

193.209.237.0/24

194.197.118.0/25

R1

R2 R3

(53)

Internetin rakenne

§  Internet-yhteydentarjoajat (ISP) jaoteltu kolmeen luokkaan

–  tier 1: globaali

•  Vähän yli kymmenen kappaletta

•  Internetin “selkäranka” eli runkoverkko

•  Sallivat toistensa liikenteen maksutta verkkonsa kautta (a.k.a. settlement free peering)

–  tier 2: alueellinen

•  Myös peering, lisäksi myös ostaa yhteyttä muilta (transit palvelu)

–  tier 3: lokaali

•  Yksinomaan ostaa yhteyttä muilta (ylemmän kategorian) ISP:lta

§  Internet koostuu Autonomisista järjestelmistä (AS)

–  “a connected group of one or more IP prefixes run by one or more network operators which has a single and clearly defined routing

policy” [RFC 1930]

(54)

Internetin rakenne

(55)

Reititysprotokollat

§  Internetissä on käytössä erilaisia reititysprotokollia

–  AS:n sisällä eli intra-domain routing protokollat –  AS:n välille eli inter-domain routing protokollat

§  Sisäiseen reititykseen on tarjoilla joukko vaihtoehtoja

–  EIGRP, OSPF, RIP, IS-IS, ...

–  Yleensä ”shortest path” reititystä

§  AS:n välillä käytetään BGP4:ää (Border Gateway Protocol)

–  Myös suurempien AS:n sisällä

–  Pääasiassa ”policy based” reititystä (AS:n väliset sopimukset, kustannukset), ei ”shortest path”

§  Reititin toteuttaa myös reititysalgoritmin

–  Rakennetaan tiedosta reititystaulu

–  Yleensä protokolla määrittää myös käytetyn algoritmin

(56)

Runkoverkon reititys

§  Runkoverkon reitittimillä ei oletusreittejä

–  Tiedettävä kaikkien maailman IP-osoitteiden reititys

–  Ei tietenkään koko polkua, vain seuraava pysäkki

–  Muista route aggregation

(57)

Sisältö

§  Verkkokerroksen tehtävä ja ominaisuudet

§  Internet-protokolla

–  Osoitteet

§  IP-osoitteiden käyttö

–  NAT ja DHCP

§  ICMP

§  Reititin ja reititys

§  IPv6

(58)

IPv6

§  IP:n uudempi versio

§  Tärkein etu on suuri osoiteavaruus

–  128 bittiä

–  Laskettu riittävän huonostikin käytettynä

§  Muita etuja

–  Parempi autokonfigurointi

–  Optiot toteutettu eri tavalla

–  IPsec ”sisäänrakennettuna”

(59)

59

IPv6 käyttöönotto

§  IPv6 käyttöönotto kasvanut

exponentiaalisesti 2007 eteenpäin

§  IPv4 ja IPv6

samanaikaisesti

–  dual stack –tyyliin –  Tunnelointi

0 5000 10000 15000 20000 25000 30000 35000 40000

Jan 1998

Jan 2000

Jan 2002

Jan 2004

Jan 2006

Jan 2008

Jan 2010

Jan 2012

0 500 1000 1500 2000 2500 3000 3500 4000 4500

Number of ASes (IPv4) Number of ASes (IPv6)

IPv4 IPv6

0 20000 40000 60000 80000 100000 120000 140000

Jan 1998

Jan 2000

Jan 2002

Jan 2004

Jan 2006

Jan 2008

Jan 2010

Jan 2012

0 2000 4000 6000 8000 10000 12000 14000 16000

Number of AS links (IPv4) Number of AS links (IPv6)

IPv4 IPv6

Figure 1: Both AS nodes and links grow linearly in IPv4 but exponentially (as of 2007) in IPv6.

ployment along three dimensions: topology, routing, and performance. Section 2 describes the data sources and sup- porting analysis techniques we use throughout the paper.

We find that the IPv6 network is maturing, as indicated by its increasing similarity in size and composition (Section 3), AS path congruity (Section 4), topological structure (Sec- tion 5), and dynamics (Section 6), to the public IPv4 In- ternet. While core Internet transit providers have mostly deployed IPv6, edge networks are lagging behind. While all geographic regions show exponential growth in IPv6 adop- tion, early IPv6 deployment was stronger in Europe and the Asia-Pacific region than in North America. The IPv6 network is characterized by the presence of a single promi- nent player, Hurricane Electric (HE). Hurricane Electric cur- rently appears in between 20% and 95% of IPv6 AS paths seen from different vantage points, and is more prominent in IPv6 than the most prominent player in IPv4. Further, when IPv4 and IPv6 AS paths differ, HE is the network most often added to the IPv6 path. Routing dynamics in the IPv6 topology are largely similar to those in IPv4. While routing churn grows linearly in IPv4 and super-linearly in IPv6, it is important to note that these trends match those of the underlying IPv4 and IPv6 AS topology growth. In terms of performance (Section 7), our measurements show that IPv6 data-plane performance closely matches IPv4 per- formance when the AS-level paths are the same, while it can be significantly worse when AS-level paths differ.

2. DATASETS AND METHODS

We use a variety of data sources and analysis methods, which we summarize here, providing more detail in sections that use specific data. Our analysis of the IPv6 Internet’s size, routing behavior, and structure (Sections 3-5) relies on publicly available historical BGP tables. Section 6 uses BGP updates from the same public repositories to analyze rout- ing dynamics of the IPv4 and IPv6 networks over time. We gather our own data using active measurements from five vantage points around the world, to compare and correlate IPv4 and IPv6 performance with other growth parameters.

To compare the composition of the IPv4 and IPv6 graphs ac- cording to type of networks, we classify the business types of

and the business relationships of the links between them (e.g., customer, provider, peer) using Gao’s algorithm [7].

BGP topology data

We collected historical BGP data from the two major public repositories at RouteViews [8] and RIPE [9]. We rely only on these two data sources because no other source of topo- logical/routing data (routing registries, traceroutes, looking glass servers, etc.) provides historical information. Route- views and RIPE started collecting IPv4 BGP data as early as 1998; the first IPv6 collector, however, became active in 2003. Consequently, our IPv4 data spans 14 years from 1998 to 2011, while the IPv6 data is from 2003 to 2011. The use of Routeviews/RIPE repositories of BGP data has been shown to inadequately expose the complete Internet topology [10, 11, 12] – although this data captures most ASes, it misses a significant fraction of peering and backup links at the edges of the Internet [13, 12, 14]. However, we are mainly inter- ested in customer-provider links used most of the time. AS links revealed by short term failures and transient routing events can “confuse” an evolutionary study, misinterpreting link disappearances and appearances due to transient fail- ures as link deaths and births respectively. For example, the primary link lp between ASes X and Y fails at time t1, caus- ing the activation of a backup linklb between ASes X and Z.

lp is repaired att2 and the connectivity returns to its original state. Since we focus on primary links, our goal is to ignore the transient event during (t1, t2) and not detect lb. On the other hand, a change of routing policy that makes lb the primary link should be detected as the death of lp and the birth of lb. To remove backup and transient links, we apply the method of “majority filtering” described in our previous work [6] on the set of BGP AS paths obtained from BGP table dumps at Routeviews and RIPE collectors. We do not use BGP updates to construct our topology snapshots, as these reveal backup and transient links which we want to filter. The majority filtering method works as follows. For both IPv4 and IPv6, we construct a topology snapshot by collecting 5 sets of AS paths over a duration of 3 weeks, only using AS paths that were seen in a majority of those five samples. We collect such a topology snapshot every 3 months, resulting in 56 snapshots of the IPv4 topology and 36 snapshots of the IPv6 topology. We refer the reader to our previous work [6] for a detailed description of the data collection and pre-processing.

BGP routing dynamics data

Our comparative analysis of routing dynamics of the IPv4 and IPv6 infrastructures is based on BGP updates collected by the Routeviews project. Routeviews collectors run BGP sessions with routers (or monitors) in many networks. Each monitor sends a BGP update to the collector every time there is a change in the preferred path from the monitor to a destination prefix. We use update traces from two Route- views collectors: Routeviews6 for IPv6 data and Oregon- IX for IPv4 data. The IPv4 updates span the period from 1 Jan 2003 to 16 Feb 2012, while the IPv6 updates span 7 May 2003 through 16 Feb 2012. We use monitors from five networks that contributed both IPv4 and IPv6 routing data throughout the study period: AT&T, Hurricane Elec- tric (HE), NTT-America, and Tinet, and IIJ. AT&T’s IPv4 monitor was unavailable for three months in 2003, and its IPv6 monitor was unavailable between May 2005 and May

A. Dhamdhere, M. Luckie, B. Huffaker, k. claffy, A. Elmokashfi, and E. Aben, “Measuring the Deployment of IPv6: Topology, Routing and Performance'', in Internet Measurement Conference (IMC), Nov 2012.

(60)

Yhteenveto

§  Verkkokerros on nykyään Internet- arkkitehtuurissa käytännössä IP

–  V4 dominoi edelleen, v6 käyttöönotto kiihtynyt

§  IP toteuttaa epäluotettavan ja tilattoman kuljetuspalvelun Internetissä

–  Ylemmät protokollat hoitaa tarvittaessa luotettavuuden ym.

§  IPv4-osoitteet ovat hallinnoitu luonnonvara

–  Voidaan jakaa aliverkoiksi bittirajojen kohdalta –  NAT helpottaa hyödyntämällä yksityisiä

osoiteavaruuksia

§  Reitittimet siirtelevät IP-paketteja verkossa

–  Forwardointi

(61)

Ensi luennolla

§  Linkkikerros

–  Miten IP paketti siirretään päätelaitteesta/

reitittimestä toiseen –  Ethernet

–  WLAN

(62)

Jatkokursseilla…

§  Reititysalgoritmit

–  Distance vector –  Link state

§  Reititysprotokollat

–  Inter-domain: BGP

–  Intra-domain: RIP, OSPF

§  Monilähetys eli multicast

§  NAT traversal -ratkaisut

§  Liikkuvuudenhallinta

–  Miten IP osoitteet hoidetaan kun liikutaan?

§  Kerroksia TCP:n ja IP:n väliin…?

–  Esim. Host Identity Protocol (HIP)

(63)

Kysymyksiä

§  Onko 196.199.356.17 toimiva IP-osoite?

§  Reititin muuttaa kunkin paketin IP-osoitteen seuraavaa linkkiä vastaavaksi, kyllä vai ei?

§  Reititin muuttaa kunkin paketin linkkikerroksen osoitteen seuraavaa linkkiä vastaavaksi, kyllä vai ei?

§  Vastaanottajan IP-toteutus asettaa IP-paketit oikeaan järjestykseen?

§  Mitä tapahtuisi jos TTL (Time To Live) kenttä

poistettaisi IP-otsakkeesta?

Viittaukset

LIITTYVÄT TIEDOSTOT

Esi- merkiksi logiikat eivät kykene korkeaan tietoturvatasoon, sillä niissä ei ole käyttäjän autentikointia ja niiden käyttämät protokollat eivät ole suojattuja, kun

Domain mismatch occurs when data from application-specific target domain is related to, but cannot be viewed as iid samples from the source domain used for training speaker

• Missä langattoman verkkoarkkitehtuurin komponenteissa (alla oleva kuva) TCP/IP protokollat sijaita?..

•  Reititin tarkistaa otsikon tarkistussumman, ja jos se on ok, katsoo vastaanottajan osoitteen perusteella, mihin. rajapinnoista viesti

§ Reititin muuttaa kunkin paketin IP-osoitteen seuraavaa linkkiä vastaavaksi, kyllä vai ei. § Reititin muuttaa kunkin paketin linkkikerroksen osoitteen seuraavaa linkkiä

§  Reititin toteuttaa myös reititysalgoritmin. –  Rakennetaan

Æ either a routing algorithm or a NL protocol; choose from (see Lecture 4 and book for details): shortest path routing, flooding, distance vector routing, link state

Kontrolliryhmän sisällä jaettujen digitaalisten laitteiden Ei-käyttäjä -ryhmän (N = 20) ja Aktiivi- käyttäjäryhmän (N = 22) välille ei syntynyt selkeitä eroja