Tietoliikenteen perusteet. Vähän kertausta

Samankaltaiset tiedostot
R R R RR. Kaikkien. pakettien. siirto yhden linkin yli. always on. Viimeisen siirto muiden linkkien yli. Sovellus: Kuljetus: Verkko: Linkki:

Tietoliikenteen perusteet. Vähän kertausta

R R R RR. Kaikkien. pakettien. siirto yhden linkin yli. always on. Viimeisen siirto muiden linkkien yli. Sovellus: Kuljetus: Verkko: Linkki:

Tietoliikenteen perusteet. Vähän kertausta. Tietoliikenteen perusteet /2009/ Liisa Marttinen 1

Tietoliikenteen perusteet. Vähän kertausta. Tietoliikenteen perusteet /2007/ Liisa Marttinen 1

Tietoliikenteen perusteet. Langaton linkki

Tietoliikenteen perusteet. Langaton linkki

OSI ja Protokollapino

Tietoliikenteen perusteet. Verkkokerros

Tietoliikenteen perusteet. Verkkokerros

Kertausta: termejä ja käsitteitä

3. Kuljetuskerros 3.1. Kuljetuspalvelu

S Tietoliikennetekniikan perusteet. Pakettikytkentäiset verkot. Helsinki University of Technology Networking Laboratory

TIETOLIIKENTEEN PERUSTEET kevät 2009

Tietoliikenteen perusteet. Verkkokerros

Tietoliikenteen perusteet. Langaton linkki. Kurose, Ross: Ch 6.1, 6.2, 6.3. (ei: 6.2.1, ja 6.3.5)

Langaton linkki. Langaton verkko. Tietoliikenteen perusteet. Sisältö. Linkkikerros. Langattoman verkon komponentit. Langattoman linkin ominaisuuksia

Tietoliikenteen perusteet. Langaton linkki. Kurose, Ross: Ch 6.1, 6.2, 6.3. (ei: 6.2.1, ja 6.3.5)

Tietoliikenteen perusteet

Tietoliikenne II (2 ov)

3. Kuljetuskerros 3.1. Kuljetuspalvelu

ICMP-sanomia. 3. IP-kerroksen muita protokollia ja mekanismeja ICMP (Internet Control Message Protocol)

Tietoliikenne II (2 ov)

3. IP-kerroksen muita protokollia ja

Luento 5: Kuljetuskerros

ELEC-C7241 Tietokoneverkot Kuljetuskerros

Siltojen haitat. Yleisesti edut selvästi suuremmat kuin haitat 2/19/ Kytkin (switch) Erittäin suorituskykyisiä, moniporttisia siltoja

Sovellusarkkitehtuuri. Kertausta: termejä ja käsitteitä. Internet-protokollapino. Kertaus jatkuu: Kapselointi

Luento 5: Kuljetuskerros luotettavan tiedonsiirron periaatteet. Syksy 2014, Tiina Niklander

Tietoliikenteen perusteet

Luento 14: Kertausta. Syksy 2014, Tiina Niklander

Tietoliikenteen perusteet. Kuljetuskerros

ITKP104 Tietoverkot - Teoria 3

Tietoliikenteen perusteet. Kuljetuskerros

Tietoliikenne II. Syksy 2005 Markku Kojo. Tietoliikenne II (2 ov,, 4 op) Page1. Markku Kojo Helsingin yliopisto Tietojenkäsittelytieteen laitos

Tietoliikenteen perusteet. Kuljetuskerros

3. Kuljetuskerros 3.1. Kuljetuspalvelu End- to- end

Verkkokerroksen palvelut. 4. Verkkokerros. Virtuaalipiiri (virtual circuit) connection-oriented ~ connectionless. tavoitteet.

Tietoliikenteen perusteet. Kuljetuskerros

Eetteriverkon rakenne

CSMA/CD. Eetteriverkon rakenne. Signaalin koodaus. Törmäyksen jälkeinen uudelleenlähetys. Lyhyet etäisyydet, pieni määrä laitteita. Manchester-koodaus

Siltojen haitat Yleisesti edut selvästi suuremmat kuin haitat

Salausmenetelmät (ei käsitellä tällä kurssilla)

Tietoliikenteen perusteet. Kuljetuskerros

Eetteriverkon rakenne

Luento 7: Verkkokerros verkkokerroksen tehtävät, IP-protokolla, reititin. Syksy 2014, Tiina Niklander

Tietoliikenteen perusteet. Kuljetuskerros

Kuljetuskerros. Tietokoneverkot. Matti Siekkinen Pasi Sarolahti

Internet Protocol version 6. IPv6

Chapter 4 Network Layer

Tietoliikenteen perusteet

Tietoliikenteen perusteet. Linkkikerros

Tietoliikenteen perusteet. Langaton linkki. Kurose, Ross: Ch 6.1, 6.2, 6.3. (ei: 6.2.1, ja 6.3.5) Tietoliikenteen perusteet /2010 1

Kuljetuspalvelu. Tietoliikenteen perusteet. Sisältöä. Kuljetuskerros. Kuljetuskerros. Kuljetuskerros. Internetin kuljetusprotokollat

Jos A:lla ei ole tietoa ARP-taulussaan, niin A lähettää ARP-kysely yleislähetyksenä

Luento 8: Verkkokerros

kynnysarvo (threshold)

kynnysarvo (threshold)

Luento 7: Verkkokerros

itää saada selville P-osoitetta vastaava erkko-osoite. leislähetyksenä ysely: Kenen IPsoite. IP-paketissa on vain vastaanottajan

Miten selain muodostaa TCP- tai UDP-yhteyden? TCP-osoite = IP-osoite + porttinumero ( tässä 80) SOCKET BIND (80) LISTEN ACCEPT. Connection Request

Tietoliikenteen perusteet. Linkkikerros

3. Kuljetuskerros 3.1.

kynnysarvo (threshold) varoitusarvo = tästä lähtien syytä varoa ruuhkaa aluksi 64 K RTT

Kuljetuspalvelu. Tietoliikenteen perusteet. Sisältöä. Kuljetuskerros. Kuljetuskerros. Kuljetuskerros. Internetin kuljetusprotokollat

Verkkoinformaation välittämiseen isäntäkoneiden ja reitittimien välillä

Tietoliikenteen perusteet. Langaton linkki. Kurose, Ross: Ch 6.1, 6.2, 6.3. (ei: 6.2.1, ja 6.3.5) Tietoliikenteen perusteet /2011 1

Tietoliikenteen perusteet

Linkkikerroksen tehtävät

Turvallisuus verkkokerroksella

Turvallisuus verkkokerroksella

AH-otsake. Turvallisuus verkkokerroksella. AH-otsake. AH-otsake. ESP-otsake. IP-otsake

Luento 11: Tietoturvasta ja kertausta

Chapter 3 Transport Layer. Kuljetuskerros

MAC-protokolla. » 7 tavua tahdistusta varten» kehyksen alku

Kun n = 32 ei ole tarpeeksi nopea nykyisiin runkoreitittimiin! - content addressable memory (CAM) - välimuistin käyttö

001.. Kun n = 32 ei ole tarpeeksi nopea nykyisiin runkoreitittimiin! - content addressable memory (CAM) - välimuistin käyttö

Kuva maailmasta Pakettiverkot (Luento 1)

TCP/IP-protokollapino. Verkkokerros ja Internetprotokolla. Sisältö. Viime luennolla. Matti Siekkinen

Väylää kuunneltava. kehyksen pituus. Ethernetin hyvät puolet. MAC-protokolla

Miten selain muodostaa TCP- tai UDP-yhteyden? TCP-osoite = IP-osoite + porttinumero ( tässä 80) SOCKET BIND (80) LISTEN ACCEPT. Connection Request

4.1 Verkkokerros toimittaa

Tietoliikenteen perusteet. Verkkokerros

4. Verkkokerros. sovelluskerros. kuljetuskerros. verkkokerros. siirtoyhteyskerros peruskerros. asiakas. end-to-end

Tietoliikenne II Kurssikoe

Miten Internet toimii?

Asiakkaan toimenpiteet

Tietoliikenteen perusteet

Tietoliikenteen perusteet: Kokeeseen tulevista asioista

» multiaccess channel» random access channel LAN (Ethernet) langaton. ongelma: käyttövuoron jakelu Yhteiskäyttöisen kanavan käyttö

4. MAC-alikerros. yleislähetys (broadcast) ongelma: käyttövuoron jakelu. » multiaccess channel» random access channel LAN (Ethernet) langaton

4.1 Verkkokerros toimittaa. 4. Verkkokerros. Datasähke virtuaalipiiri. connection-oriented connectionless. Virtuaalipiiri = yhteydellinen palvelu

Verkkokerros ja Internetprotokolla

Luento 6: Kuljetuskerros UDP & TCP TCP:n ruuhkanhallinta. Syksy 2014, Tiina Niklander Kurose&Ross: Ch3

Chapter 4 Network Layer

Verkkokerroksen palvelut

Linkkikerroksen tehtävät

Siirron optimointi. Optimointi on usein tarpeen: Silly window syndrome

Luento 11: Tietoturvasta ja kertausta

Reitittimen rakenne. Kytkentäosa ... (switching fabric) Reititysprosessori 2/7/ pakettien edelleenohjaaminen (PE)

Transkriptio:

Tietoliikenteen perusteet Vähän kertausta Tietoliikenteen perusteet /2008/ Liisa Marttinen 1 Internet = verkkojen verkko (löyhää hierarkiaa) Internet-palvelun tarjoaja Lähiverkkoja (LAN, Local Area Network) yhdistetty reitittimien välityksellä Tietoliikenteen perusteet /2008/ Liisa Marttinen 2 1

Asiakas-palvelija-malli asiakasprosessi www-selain palvelijaprosessi www-palvelija pyyntö always on verkko vastaus sanomien reititys verkossa Oikea kone, oikea prosessi Tietoliikenteen perusteet /2008/ Liisa Marttinen 3 Pakettivälitys siirto-aika Olkoon siirtoaika a: a) ka+(n-1)a = (k+n-1)a b) na +(k-1)a = (n+k-1)a linkki1 linkki 2 linkki 3 R R R RR Kaikkien pakettien siirto yhden linkin yli Viimeisen siirto muiden linkkien yli Paketti 1 Paketti 2 Paketti 3 Paketti 4 Paketti 5 Paketti 1 Paketti 2 Paketti 3 Paketti 4 Paketti 5 Paketti 1 Paketti 2 Paketti 3 Paketti 4 Paketti 5 Yhden paketin siirto n linkin yli Muiden pakettien siirtoaika Sanoman siirtoaika, kun sanomassa on k pakettia ja linkkejä on n kappaletta a) k:n paketin siirto 1. linkin yli + viimeisen paketin siirto n-1 linkin yli. b) 1. paketin siirto n:n linkin yli + muiden k-1 paketin siirto yhden linkin li Animaatio: http://wps.aw.com/aw_kurose 4/63/16303/4173750.cw/index.html Tietoliikenteen perusteet /2008/ Liisa Marttinen 4 2

Internet-protokollapino Protocol Data Unit (PDU): Käyttöjärjestelmä laitteisto 5 4 3 2 1 Sovelluskerros (Application) Kuljetuskerros (Transport) Verkkokerros (Network) Linkkikerros (Link) Fyysinen kerros (Physical) sanoma segmentti datagrammi = paketti kehys bittivuo Tietoliikenteen perusteet /2008/ Liisa Marttinen 5 Kapselointi Sovellus: Kuljetus: Verkko: Linkki: sanoma H3 sanoma H2 H3 sanoma H1 H2 H3 sano H1 H2 ma Fyysinen: 0101110 01 Sovellus: Kuljetus: Verkko: Linkki: sanoma H3 sanoma H2 H3 sanoma H1 H2 H3 sano H1 H2 ma Fyysinen: 0101110 01 Verkko: H2 H3 sanoma Linkki: H1 H2 H3 sano Linkki: H1 H2 H3 sano H1 H2 ma H1 H2 ma Fyysinen: 0101110 01 Fyysinen: 0101110 01 Reititin Linkkitason kytkin Tietoliikenteen perusteet /2008/ Liisa Marttinen 6 3

HTTP (HyperText Transfer Protocol) PC, jossa on Explorerselain WWW:N sovellusprotokolla Tekstimuotoiset sanomat pyyntö vastaus Asiakas Selain: FireFox, Internet Explorer, Opera, Apple Safari, pyytää, noutaa ja näyttää objektit Palvelija etsii objektin (tiedoston) koneen hakemistosta ja lähettää sen vastauksena asiakkaalle Tilaton protokolla Palvelin, jossa on Apachewww-palvelija Palvelija ei muista mitään edellisistä pyynnöistä HTTP Request HTTP Response HTTP Response HTTP Request Linux-kone, jossa on Firefox-selain Tietoliikenteen perusteet /2008/ Liisa Marttinen 7 origin servers public Internet www.herkkutalo.com HTTP/1.1 304 Not Modified Date: Thu, 14 Jul 2007 15:39.29 institutional 1.5 Mbps access link GET /fruit/kiwi.gif HTTP/1.1 Host: www.herkkutalo.com If-modified-since: Wed, 4 Jul 2007 09:23:24 GET /fruit/kiwi.gif HTTP/1.1 Host: www.herkkutalo.com 10 Mbps LAN institutional cache Tietoliikenteen perusteet /2008/ Liisa Marttinen 8 4

Sähköpostin komponentit User agent User agent Mail server SMTP Mail server User agent User agent SMTP SMTP User agent Mail server Lähtevien sanomien jono User agent postilaatikot Tietoliikenteen perusteet /2008/ Liisa Marttinen 9 Hajautettu, hierarkinen tietokanta Root DNS Servers com DNS servers org DNS servers edu DNS servers yahoo.com DNS servers amazon.com DNS servers pbs.org DNS servers poly.edu DNS servers umass.edu DNS servers 13 juuritason nimipalvelija Replikoituja, kaikilla samat tiedot KuRo05: Fig 2.18 Ylätason palvelimet maa- ja yleistunnuksille (n. 265 kpl), fi, fr, uk, edu, net, com, org, Autorisoidut aluepalvelimet (domain) (2-taso) www.iana.org Isoilla yliopistoilla ja firmoilla omansa, pienet käyttävät jonkun muun ylläpitämää Tietoliikenteen perusteet /2008/ Liisa Marttinen 10 5

Skaalautuvuus KuRo08: Fig. 2.24 Asiakas-palvelinmalli: Palvelimen siirrettävä n*f bittiä => siirtoaika = nf/u s. Hitain asiakas d min saa tiedoston ajassa F/ d min Siirtoaika = max(nf/u s, F/ d min ) FileF Server u s u n, d n... u 1, d 1 Internet u 6,d 6 u 2,d 2 u 5,d 5 u 3,d 3 u 4,d 4 Kun n kasvaa, palvelimen kuorma kasvaa ja siirtoaika kasvaa. aika Vertaistoimijamalli (alussa tiedosto on palvelimella) Siirtoaika = max (F/u s, F/ d min, nf/(u s +E u i )) Summamerkki 0 10 20 30 Tietoliikenteen perusteet /2008/ Liisa Marttinen 11 n Pistoke (socket) Kuljetuspalvelun ja sitä käyttävän sovelluksen rajapinta isäntäkoneessa Sovelluksen tietoliikenne = KJ:n palvelupyyntöjä Pistoke on palveluluukku Alunperin Berkeley UNIXin (BSD) mukana process socket with buffers, variables host or server internet process socket with buffers, variables host or server Sovellusohjelmoija Käyttöjärjestelmä Sovellusohjelmoija Käyttöjärjestelmä KuRo08: Fig 2.26 Tietoliikenteen perusteet /2008/ Liisa Marttinen 12 6

UDP: Tarkistussumma Lähetys Summaa 16 bitin kokonaisuudet (otsake + pseudo-otsake mukana), ylivuotobitit lasketaan mukaan, talleta yhden komplementtina Vastaanotto Summaa 16 b kokonaisuudet (myös tarkistussumma). Jos tuloksena on 16 ykköstä, niin OK! 32 bittiä Source port # Dest. Port # Length Checksum Application data (message) UDP-otsake 0=> 1 1=> 0 Checksum 1 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 1 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 1 1 0 1 1 1 0 1 1 1 0 1 1 1 0 1 1 1 1 0 1 1 1 0 1 1 1 0 1 1 1 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 0 1 1 Tietoliikenteen perusteet /2008/ Liisa Marttinen 13 rdt3.0 rdt_rcv(rcvpkt) Λ Wait for call 0from above rdt_rcv(rcvpkt) && notcorrupt(rcvpkt) && isack(rcvpkt,1) stop_timer timeout udt_send(sndpkt) start_timer rdt_rcv(rcvpkt) && ( corrupt(rcvpkt) isack(rcvpkt,0) ) Λ rdt_send(data) sndpkt = make_pkt(0, data, checksum) udt_send(sndpkt) start_timer Wait for ACK1 Sender Wait for ACK0 Wait for call 1 from above rdt_send(data) sndpkt = make_pkt(1, data, checksum) udt_send(sndpkt) start_timer rdt_rcv(rcvpkt) && ( corrupt(rcvpkt) isack(rcvpkt,1) ) Λ timeout udt_send(sndpkt) start_timer rdt_rcv(rcvpkt) && notcorrupt(rcvpkt) && isack(rcvpkt,0) stop_timer rdt_rcv(rcvpkt) Λ KuRo08: Fig 3.15 Tietoliikenteen perusteet /2008/ Liisa Marttinen 14 7

Liukuhihnoitus: käyttöasteen kasvattaminen sender first packet bit transmitted, t = 0 last bit transmitted, t = L / R receiver KuRo05: Fig 3.18 RTT ACK arrives, send next packet, t = RTT + L / R first packet bit arrives last packet bit arrives, send ACK last bit of 2 nd packet arrives, send ACK last bit of 3 rd packet arrives, send ACK U sender = 3 * L / R RTT + L / R =.024 30.008 Increase utilization = 0.0008 microsecon by a factor of 3! Tietoliikenteen perusteet /2008/ Liisa Marttinen 15 Go-Back-N: Esimerkki Ikkunankoko = 4 KuRo08: Fig 3.22 Tietoliikenteen perusteet /2008/ Liisa Marttinen 16 8

: prosessilta prosessille -tavuvirta user proc Sovelluskerros tavuvirta user proc Kuljetuskerros segmentti IP-datasähke IP IP T C P IP Verkkokerros Tietoliikenteen perusteet /2008/ Liisa Marttinen 17 Yhteyden muodostus syn-sgmentti on yhden tavun kokoinen! syn-hyökkäys! 3.39 Tietoliikenteen perusteet /2008/ Liisa Marttinen 18 9

Reno: Hidas aloitus (slow start) ruuhkanvälttely (congestion avoidance) Aluksi ruuhkaikkuna = yksi segmentti Alussa hidas siirtonopeus= MSS/RTT Kukin kuittaus kasvattaa yhdellä ruuhkaikkunan kokoa hidas aloitus Eksponentiaalinen kasvu Ikkuna kaksinkertaistuu yhden RTT:n aikana Jos uudelleenlähetys, puolita ruuhkaikkunan koko Multiplicative decrease Sen jälkeen kasvata ikkunaa yksi segmentti/rtt ruuhkanvälttely Lineaarinen kasvu (Additive increase) Ruuhkan välttely (congestion avoidance) Siirtonopeus = CognWin / RTT tavua/sek RTT Host A ja Host B one segment two segments four segments time Tietoliikenteen perusteet /2008/ Liisa Marttinen 19 Tahoe vs. Reno Jos 3 toistokuittausta KuRo08: Fig 3.53 Ruuhkan välttely Hidas aloitus Kynnysarvo puoleen siitä missä oltiin Jos ajastin laukeaa Tietoliikenteen perusteet /2008/ Liisa Marttinen 20 10

Verkkokerros Toimittaa kuljetuskerroksen segmentit vastaanottajalle Lähettäjä luo segmenteistä verkkokerroksen IP-paketteja application transport data link physical Lisää otsaketietoja: mm. IP-osoitteet Reitittäminen Isäntä reititin... reititin isäntä Vastaanotto Poista otsake Anna segmentti kuljetuskerrokselle Verkkokerros toimii etenkin reitityksessä Reititin tutkii IP-paketin otsakkeen ja päättää, data link physical data link physical data link physical data link physical data link physical data link physical data link physical data link physical application transport data link physical mihin linkkiin se lähetetään seuraavaksi KuRo08: Fig 4.1 Tietoliikenteen perusteet /2008/ Liisa Marttinen 21 Reitittimen arkkitehtuuri Kaksi tehtävää Välitä paketteja tulolinkeistä ulosmenolinkkeihin Suorita reititysalgoritmia / -protokollaa Portti ~verkkokortti Useita portteja niputettu yhteen linjakorteiksi (line card) KuRo08:Fig 4.6 Tietoliikenteen perusteet /2008/ Liisa Marttinen 22 11

IP-paketin rakenne (IPv4) Tietoliikenteen perusteet /2008/ Liisa Marttinen 23 IP-pakettien paloittelu (fragmentointi) Maximum transfer Unit (MTU) suurin mahdollinen IP-paketti eri linkeillä eri koko Esim. Ethernet 1500 B Liian iso paketti pilkottava reitittimessä pienemmiksi paketeiksi (fragmenteiksi), jotka kohdekone kokoaa voivat kukin kulkea eri reittiä reassembly fragmentation: in: one large datagram out: 3 smaller datagrams IP-otsakkeessa kentät yhteenkuuluvien fragmenttien tunnistamiseksi ja kokoamiseksi KuRo08: Fig 4.14 Tietoliikenteen perusteet /2008/ Liisa Marttinen 24 12

Esimerkki lengthid =4000 =x fragflag =0 offset =0 4000 tavun IP-paketti: dataa 3980 B MTU 1500 B 1480 B dataa 20 B IP-otsaketta offset = 1480/8 Yhdestä IP-paketista tulee 3 pienempää IP-pakettia length =1500 length =1500 length =1040 ID =x ID =x ID =x fragflag =1 fragflag =1 fragflag =0 offset =0 offset =185 offset =370 0 1480 2860 1. Pala: 1480 tavua 2. Pala: 1480 tavua 3. Pala: 1020 tavua Tietoliikenteen perusteet /2008/ Liisa Marttinen 25 CIDR: Classless InterDomain Routing Verkko-osa voi olla minkä tahansa kokoinen Vanha luokallinen osoite: A-luokka 8 b, B-luokka 16 b,c-luokka 24 b Formaatti: a.b.c.d/x x ilmoittaa verkko-osan bittienlukumäärän (prefix) Esim. Organisaatio, jolla 2000 konetta varaa 2024 = 2 11 konenumeroa, jolloin verkko-osaa varten jää 21 bittiä Yritys voi vielä itse jakaa viimeiset 11 bittiä aliverkko-osoitteeksi ja koneosoitteeksi. Tämä jako ei näy ulkopuolelle. Verkko (prefix) 11001000 00010111 00010000 00000000 200.23.16.0/21 Kone aliverkko: 200.23.a.b/25 Tietoliikenteen perusteet /2008/ Liisa Marttinen 26 13

Hierarkkinen osoite CIDR luo reititystä helpottavan hierarkian Aggregointi (yhdistäminen): yhteinen alkuosa => samaan suuntaan Organization 0 200.23.16.0/23 Organization 1 200.23.18.0/23 Organization 2 200.23.20.0/23 Organization 7 200.23.30.0/23 KuRo08: Fig 4.19.... Fly-By-Night-ISP ISPs-R-Us Send me anything with addresses beginning 200.23.16.0/20 Send me anything with addresses beginning 199.31.0.0/16 Internet Tietoliikenteen perusteet /2008/ Liisa Marttinen 27 2: NAT vaihtaa lähdeosoitteksi 138.76.29.7, ja portiksi 5001, päivittää taulun 2 NAT: Esimerkki NAT-muunnostaulu WAN-osoite LAN-osoite 138.76.29.7, 10.0.0.1, 5001 3345 S: 138.76.29.7, 5001 D: 128.119.40.186, 80 138.76.29.7 S: 128.119.40.186, 80 D: 138.76.29.7, 5001 3 1 S: 10.0.0.1, 3345 D: 128.119.40.186, 80 10.0.0.4 S: 128.119.40.186, 80 D: 10.0.0.1, 3345 1: kone 10.0.0.1 lähettää paketin 128.119.40.186, 80 4 10.0.0.1 10.0.0.2 10.0.0.3 3: Vastaus NAT-koneelle: 138.76.29.7, 5001 4: NAT vaihtaa kohdeosoitteeksi 10.0.0.1 ja portiksi 3345 Tietoliikenteen perusteet /2008/ Liisa Marttinen 28 14

Reititysalgoritmi Etsii edullisimmat reitit lähdekoneelta kohdekoneille Käytetään reititystaulun muodostamiseen - Mille linkille paketti seuraavaksi siirretään tältä reitittimeltä Reititysalgoritmi, joka tarvitsee täydellisen tiedon verkosta Ennen laskentaa käytössä koko kuva verkosta: - Kaikki linkkiyhteydet solmujen välillä ja niiden kustannukset - Käytännössä vain tietystä autonomisesta alueesta Parhaat reitit lasketaan joko keskitetysti tai hajautetusti Linkkitila-algoritmi (link-state algorithm) Reititysalgoritmi, jolle riittää epätäydellinen kuva verkosta Aluksi reititin tietää vain niistä koneista, joihin itse on yhdistetty Iteratiivinen algoritmi: reititin vaihtaa tietoja naapuriensa kanssa ja saa tietoa muusta verkosta Etäisyysvektorialgoritmi (distance vector algorithm) Tietoliikenteen perusteet /2008/ Liisa Marttinen 29 Dijkstran algoritmi 1 Initialization: 2 N' = {u} 3 for all nodes v 4 if v adjacent to u 5 then D(v) = c(u,v) 6 else D(v) = 7 8 Loop D(v)=2, D(w) = 5, D(x)=1 D(y) =, D(z)= 9 find w not in N' such that D(w) is a minimum 10 add w to N' 11 update D(v) for all v adjacent to w and not in N' : 12 D(v) = min( D(v), D(w) + c(w,v) ) 13 /* new cost to v is either old cost to v or known 14 shortest path cost to w plus cost from w to v */ 15 until all nodes in N' u 1 2 5 v x 2 3 1 3 w y 1 5 2 z Tietoliikenteen perusteet /2008/ Liisa Marttinen 30 15

u 1 Z 2 Etäisyysvektorireititys: Esimerkki 1 5 v x 2 3 1 3 Kohde kust. linkki 4 X:ään w y 1 5 2 z Jos on jo saatu selville (= naapurit kertoneet), että D v (z) = 5, D x (z) = 3, D w (z) = 3 D u (z) = min { c(u,v) + d v (z), c(u,x) + d x (z), c(u,w) + d w (z) } = min {2 + 5, 1 + 3, 5 + 3} = 4 Kun paketti on matkalla solmusta u solmuun z, se tulee seuraavaksi lähettää solmuun x, joka tuotti tuon minimin => talleta tieto omaan etäisyysvektoriin (= reititystauluun) Tietoliikenteen perusteet /2008/ Liisa Marttinen 31 Huono uutinen etenee hitaasti! A B C D E Linkki AB katkeaa => etäisyys äärettömäksi Joka vaihdossa 'paras arvio' huononee vain yhdellä = reitityssilmukka Count-to-infinity - ongelma D B (A) D c (A) D D (A) D E (A) ääretön 2 3 4 3 2 3 4 3 4 3 4 5 4 5 4 5 6 5 6 7 6 7 6 7 8 7 8 jne Etäisyys A:han Tietoliikenteen perusteet /2008/ Liisa Marttinen 32 16

Laitetoimintoa Linkkikerros Siirtää paketin fyysistä linkkiä pitkin koneelta (solmulta (node)) toiselle langallinen / langaton bitit sisään, bitit ulos Kapseloi paketin siirtoon sopivaan muotoon Siirtokehys (frame) Lähiverkossa linkkejä voi yhdistää keskittimillä tai kytkimillä Käytetään fyysisiä osoitteita 'reititystä' ilman IP-osoitteita Tietoliikenteen perusteet /2008/ Liisa Marttinen 33 CRC-esimerkki Data: 101110 G: 1001, polynomina 1*x 3 + 0*x 2 + 0*x 1 +1*x 0 <D,R>: 101110??? Lähetä: 101110011 Modulo 2-aritmetiikka vähennyslasku yhteenlaskuja ei lainaamista, ei muistinumeroita = bittitason XOR 1+1 =0, 1+0 = 0+1 = 1, 0+0=0 KuRo08:Fig 5.8 Tietoliikenteen perusteet /2008/ Liisa Marttinen 34 17

MAC-osoitteet ja ARP-taulu, ARPprotokolla IP-osoite MAC-osoite TTL 222.222.222.220 1A-23-F9-CD-06-9B 13:24:00 222.222.222.223 5C-66-AB-90-75-B1 13:52:00 Tietoliikenteen perusteet /2008/ Liisa Marttinen 35 Lähettäjä A Lähettäminen toiseen verkkoon (2) Muodosta IP-paketti, jossa Source IP = A, Dest. IP = B Etsi ARP-taulusta reitittimen IP-osoitetta vastaava MAC-osoite Luo siirtokehys, osoitteena reitittimen MAC-osoite (data = IP-paketti). Verkkokortti lähettää siirtokehyksen. Reititin R Verkkokortti ottaa siirtokehyksen vastaan. Ota IP-paketti kehyksestä ja tutki otsakkeesta kohteen IP-osoite (B) Katso reititystaulusta, mihin verkkoon seuraavaksi (mille reitittimelle) Koska omassa verkossa, etsi kohdeverkon ARP-taulusta kohteen MAC-osoite R MAC B MAC Muodosta siirtokehys, osoitteena B:n MAC-osoite (data = IP-paketti) Vastaanottaja B Verkkokortti ottaa kehyksen vastaan; ohjaa IP-paketin verkkokerrokselle. Tietoliikenteen perusteet /2008/ Liisa Marttinen 36 18

Ethernet kehys Tahdistuskuvio (preample) (8 B) 7 tavussa 10101010 kellojen tahdistusta varten 8. tavu 10101011 kertoo varsinaisen kehyksen alkavan Kohteen ja lähteen MAC-osoitteet (6 + 6 B) Type (2 B) verkkoprotokolla, jolle vastaanottaja luovuttaa kehyksen datan IP, ARP, jokin muu esim, Apple Talk, Novell IPX,.. Data (46... 1500 B) Ethernet MTU = 1500 B CRC (4 B) tarkistusbitit, tahdistuskuvio mukana laskennassa Tietoliikenteen perusteet /2008/ Liisa Marttinen 37 CSMA/CD (with Collision Detection) Asema kuuntelee myös lähettämisen jälkeen Langallinen LAN: signaalin voimakkuus muuttuu - Esim. Ethernet Langaton LAN: hankalaa Jos törmäys Niin keskeytä heti lähettäminen ja yritä uudestaan satunnaisen ajan kuluttua Näin törmäyksen aiheuttama hukka-aika pienenee Kauanko kuunneltava? 2* maksimi etenemisviive solmujen välillä törmäyssignaali A A ei saa lopettaa ennenkuin törmäyssignaali olisi ehtinyt tulla! B Tietoliikenteen perusteet /2008/ Liisa Marttinen 38 19

LAN, verkkosegmentit KuRo08: Fig 5.29 to external Takaperin oppiminen 10BaseT hub router 100 Mbps 100 Mbps 100 Mbps switch 10BaseT hub mail server web server IP subnet 10BaseT hub Electrical Engineering Computer Science System Engineering Tietoliikenteen perusteet /2008/ Liisa Marttinen 39 802.11: CSMA/CA KuRo08: Fig 6.10 Lähetys 1. Jos kanava vapaa Kuuntele DIFS aikayksikköä Lähetä kehys kokonaan 2. Jos kanava varattu Käynnistä peruutuslaskuri (backoff) random(max), jota vähennetään vain kun kanava on vapaa, Lähetä, kun laskuri nollassa Jos ei tule kuittausta, niin yritä uudestaan max = 2*max Vastaanotto Jos kehys OK Odota SIFS aikayksikköä Lähetä ACK (linkkikerroksen ACK) Distributed inter farme spacing Short interframe spacing Tietoliikenteen perusteet /2008/ Liisa Marttinen 40 20

Tietoliikenteen perusteet /2008/ Liisa Marttinen 41 Hajautettu DoS-hyökkäys (DDoS) Hyökkääjä ottaa ensin haltuun ison joukon koneita niiden omistajien huomaamatta Koputtelee ja löytää turva-aukot Asentaa hyökkäysohjelman, joka vain odottelee käskyä /kellolyömää Kaapatut koneet aloittavat samaan aikaan hyökkäyksen uhrin kimppuun Hajautetusti IP-osoitteet peukaloituina Tietoliikenteen perusteet /2008/ Liisa Marttinen 42 21

Palomuuri (firewall) Ohjelmisto + laitteisto Suodattaa (filteroi) liikennettä organisaation oman verkon (intranet) ja julkisen Interbetin välillä Osa IP-paketeista pääsee palomuurin läpi, osa ei KuRo05: Fig 8.23 administered firewall public Internet Tietoliikenteen perusteet /2008/ Liisa Marttinen 43 Sovellus (HTTP, SMTP) Request Reply Sovellus (HTTP, SMTP) Internet Tietoliikenteen perusteet /2008/ Liisa Marttinen 44 22

Sovellus (HTTP, SMTP) puskurit Request Reply.. SYN =1.. Sovellus (HTTP, SMTP) puskurit..fin = 1.. -otsake request???? -otsake request Internet Tietoliikenteen perusteet /2008/ Liisa Marttinen 45 Kone A Sovellus (HTTP, SMTP) Reply Request.. SYN =1.. Kone B Sovellus (HTTP, SMTP)..FIN = 1.. -otsake request Verkkopalvelu: - IP-protokolla, IP-osoitteet - reititys Tietoliikenteen perusteet /2008/ Liisa Marttinen 46 23

Kone A Sovellus (HTTP, SMTP) Reply Request.. SYN =1.. Kone B Sovellus (HTTP, SMTP)..FIN = 1.. IP IP IP re q IP IP Linkkikerroksen req IP req palvelut linkkikerros linkkikerros Tietoliikenteen perusteet /2008/ Liisa Marttinen 47 Kone A Sovellus (HTTP, SMTP) Reply Request.. SYN =1.. Kone B Sovellus (HTTP, SMTP)..FIN = 1.. IP IP IP req IP PPP req IP linkkikerros linkkikerros IP PPP req Tietoliikenteen perusteet /2008/ Liisa Marttinen 48 24

Tietoliikenteen perusteet Siinäpä se! Tietoliikenteen perusteet /2008/ Liisa Marttinen 49 25