internet-reititys (routing)

Post on 12-Jan-2016

70 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

Internet-reititys (Routing). Verkkokerroksen tehtävänä on toimittaa data (paketit) lähettäjän koneelta vastaanottajan koneelle Välissä voi olla hyvin monimutkainen monista erilaisista aliverkoista koostuva verkko. - PowerPoint PPT Presentation

TRANSCRIPT

2/6/01

Internet-reititys (Routing)� Verkkokerroksen tehtävänä on

toimittaa data (paketit) lähettäjän koneelta vastaanottajan koneelle� Välissä voi olla hyvin monimutkainen monista

erilaisista aliverkoista koostuva verkko. � Internet, jossa miljoonia reitittimiä ja yli sata

miljoonaa konetta, eri yritysten omistuksessa� 2.11.2000: 100. miljoonas ‘host’

� Miten tämä saadaan aikaiseksi?

2/6/01

Verkkojen yhdistäminen (Internetworking) (ss.396-406)

� verkot erilaisia� nyt ja aina

� verkkoja yhdistävät� toistin: bittien kopiointia

� silta: kehys, store-and-forward, yhdistää LANeja

� reititin: paketti, store-and-forward, erilliset verkot ‘moniprotokolla’reitittimillä

� kulj.kerr. yhdyskäyt.: tavuvirta kuljetuskerroksessa

� sovelluskerr. yhdysk.: sovelluksen tietoyksiköitä

2/6/01

puoliyhdyskäytävä (half gateway)

� kun yhdistettävät verkot� etäällä toisistaan� eri organisaatioissa

� yhdyskäytävä jaetaan kahdeksi puolikkaaksi� kumpikin puoli hoitaa omat asiansa� puolikkaat yhdistetty pelkällä johdolla

� sovittava vain johdossa käytetty protokolla

2/6/01

� silta � tunnettava kehysotsikot� ei tarpeen tietää hyötykuorman takana olevaa

protokollaa

� reititin� tunnettava verkkoprotokolla� alakerran toimintatavoista ei väliä

� käytännössä termejä käytetään vapaammin!

2/6/01

Yhdistämisen vaikeus

� ongelmana on erilaisten toiminnallisuuksien yhteensopivuus� luotettavuus � ruuhkan valvonta� kuittaukset� toimitusaikatakuut

2/6/01

Pakettien pirstominen (fragmentation)

� kaikissa verkoissa paketilla jokin maksimikoko

� laitteisto (TDM-viipaleen pituus)� käyttöjärjestelmä (käytetty puskurinkoko)� protokolla (pituuskentän bittien lukumäärä)� standardinmukaisuus� virheistä johtuvan uudelleenlähetyksen

vähentäminen� tasapuolisuuden tavoite

� 48 tavua (atm) => 65515 tavua (IP)

2/6/01

Liian iso paketti verkkoon� liian iso paketti paloitellaan

yhdyskäytävässä� missä paketti kootaan?

� samassa verkossa, missä paloiteltiin� kaikki paketit ohjattava samaan yhdyskäytävään� jatkuvaa pilkkomista ja kokoamista!

� vasta määränpäässä� pieni pakettikoko => lisää yleisrasitetta� kaikkien solmujen kyettävä kokoamaan paketteja

2/6/01

Pakettien kokoaminen� edellyttää palojen ‘numerointia’

� on tiedettävä, minkä paketin mikä osa on kyseessä

� kaikissa paloissa alkuperäisen paketin tunniste + sijainti paketissa� sijainti: pakettiin kuuluvan ensimmäisen

tavun sijainti alkuperäisessä paketissa

� lisäksi tieto, onko pala paketin viimeinen

� tai tiedettävä paketin pituus

2/6/01

56

56

56

0 0

0 1

127 0

alkuperäinen paketti

paketin alkuosa

paketin loppuosa

paketin tunnus sijainti-

kohtaeliosannumero

viimeinen paketin osa?

paketin data

2/6/01

Verkkojen yhdistäminen � virtuaalikanavien kytkentä

� virtuaalikanava lähettäjältä vastaanottajalle rakennetaan vaihe vaiheelta

� tietosähkeverkkojen yhdistäminen� verkkoon voi syöttää pakettaja, verkko yrittää

toimittaa ne vastaanottajlle� erilaiset verkkoprotokollat� osoittaminen

� tunnelointi� kahden samanlaisen verkon välillä

� IP-protokolla => Internet

2/6/01

virtuaalikanavien kytkentä

� edellytys� löytyy reititys, jossa pystytään toteuttamaan

‘päästä-päähän’ -minimivaatimukset

� sopivuus� sopii parhaiten, jos verkoilla suunnilleen

samat ominaisuudet

� samat edut ja haitat kuin virtuaalipiirillä

2/6/01

Yhteydettömien verkkojen yhdistäminen

� lähes samanlaiset verkkoprotokollat� hyvin erilaisia lähes mahdoton yhdistää

� osoittaminen� IP: 32-bittinen osoite� OSI: puhelinnumeron kaltainen osoite

� osoitteiden yhteensovittaminen?� globaaliosoiteavaruus? standardi?

� ainoa tapa yhdistää, jos verkossa ei ole virtuaalipiiriä

� entä kun useita erilaisia verkkoja?

yhdyskäytävä

Luotettava, kuittaava, uudelleenlähettävä

Epäluotettava, ei kuittauksia, ei uudelleenlähetyksiä verkkokerroksella

AB

Verkko

X

Verkko

Y

Mitä tapahtuu, kun A lähettää B:lle?

Voiko yhdyskäytävä paikata asian?

2/6/01

Tunnelointi (tunneling)

� kohde- ja lähdeverkko samanlaisia, välissä erilainen verkko� vain reititinpari näkee välissä olevan verkon

� ~ iso tunneli niiden välissä

� lähdeverkon paketti (esim. IP-paketti) kulkee välissä olevan verkon paketin sisällä hyötykuormana

Välissä oleva erilainen verkko

X ja Y samanlaisia verkkoja

AB

X Y

Paketit välitetään verkon läpi hyötykuormana, kapseloituna ko. verkon protokollakehyksessä.

2/6/01

Internet� Yhdistää hyvin erilaiset verkot

yhteentoimivaksi kokonaisuudeksi� kaikkien käytettävä samaa IP-protokollaa � kaikkien käytettävä samaa IP-osoitustapaa

� verkkojen tarvitsee osata vain kuljettaa dataa lähettäjältä vastaanottajalle

� samantekevää kuinka sen tekee� verkko=> ‘linkkiyhteys’ tai tunneli

Frame Relay

Token ring

IP IP IP

host router host

2/6/01

Internetin verkkokerros� Internet

� on kokoelma ‘itsenäisiä’ aliverkkoja eli autonomisia järjestelmiä (AS, Autonomous Subsystem)

� joita yhdistää runkolinjat

� IP-protokolla� verkkotason protokolla, joka pitää Internetin koossa� tavoite: kuljettaa paketti (datagram) lähteestä

kohteeseen yli kaikkien tarpeellisten verkkojen

2/6/01

Reititys� (hajautettu) päätöksenteko

� yhteydellinen: alussa� yhteydetön: jatkuvasti

� system-wide fault tolerance� jatkuvaa muutosta

� rikkoutuvat komponentit, muuttuva topologia� ristiriitaisia vaatimuksia

� optimaalisuus /reiluus (fairness)� suorituskyky

� mean packet delay, network throughput

Verkkokerroksen tärkein tehtävä

� Koneilla ja reitittimillä yksikäsitteiset verkko-osoitteet� IP-osoite: verkko ja koneen osoite verkossa

� Muuttuvassa verkossa pystyttävä selvittämään kulloinkin parhaat reitit� reititysalgoritmi, reititysprotokolla

� reititin pystyy ohjaamaan seuraavaksi� reititystaulu (routing table)

2/6/01

Reititysalgoritmit� mukautuva / mukautumaton (adaptive / nonadaptive)

� dynaaminen /staattinen

� mittaukseen perustuva vai ‘kirjanpitopohjainen’� suuri ero aikaskaalassa (sekuntej, minuutteja <=>

päiviä, ihminen muuttaa)� optimaaliset reitit

� kaikista lähteistä annettuun kohteeseen� => puu, jonka juurena kohde

� Ongelmia:� reitittimien tietojen hankita� verkko elää=> reitittimien tietojen ylläpito?

2/6/01

Reititysalgoritmejä

� Dijkstran reititysalgoritmi (Shortest Path Routing)

� yleisesti käytetty

� tulvitus (flooding)� satunnainen (‘kuuma peruna’, hot potato)

� Flow-Based Routing

2/6/01

Flow-Based Routing

� viive = jonotusaika + siirtoaika� etsitään pienin mahdollinen viive

koko verkolle� tunnettava

� verkon topologia� kapasiteettimatriisi� liikennematriisi� alustava reititys

� lasketaan � kunkin linjan kuormitus i� keskim. pakettien määrä kullakin linjalla Ci

� keskim. pakettikoko = 1/esim. 800 bittiä)

� keskim viive kullekin linjalle

T = 1/( C - ) (jonoteoriasta) 1/ = keskim. paketin koko bitteinä C = kapasiteetti bps = keskim. pakettivirta (kuormitus) paketteina sekunnissa

� koko verkon viive� painotettu keskiarvo eri linkkien viipeistä

� painotuksena linkin osuus koko liikenteestä

� eri reititysalgoritmien vertailu� lasketaan erikseen kaikille reititysvaihtoehdoille� valitaan ‘paras’

� edellyttää kuormituksen pysyvän melko samanlaisena

2/6/01

Yleisesti käytetyt reititysalgoritmit

� etäisyysvektorireititys� Distance Vector Routing� Bellman-Ford, Ford-Fulkerson� ARPANETin alkuperäinen reititysalgoritmi� Internetin RIP-algoritmi

� linkkitilareititys� Link State routing� ARPANETin reititysalgoritmi vuodesta 1979

2/6/01

Etäisyysvektorireititys

� Solmut vaihtavat informaatiota vain naapuriensa kanssa

� Eri solmuilla eri näkemys verkosta� hyvät uutiset etenevät nopeasti, huonot hitaasti

� count- to-infinity, � simple split horizon : ei ilmoita naapurille sen kautta

meneviä parhaita reittejä� Split horizon with poisoned reverse" ilmoittaa, mutta

merkitsee ne äärettömiksi.

� ratkaisu ei toimi aina

A B

C

D

Linkki CD katkeaa,A ja B ilmoittavat C:lleettei D:hen pääse

C päättelee, että D:tä ei voi saavuttaa

Kuitenkin A kuulee B:ltä, että sillä on etäisyys 2 D:hen => oma etäisyys 3

x

2/6/01

Globaali reititysalgoritmi

� Kullakin reitittimellä käytössään koko verkon informaatio

� tästä lasketaan hajautetusti tai keskitetysti parhaat reitit

� monimutkainen algoritmi

2/6/01

Linkkitilareititys (Link State Routing)

� reitittimen tehtävät� selvitettävä naapurit ja niiden osoitteet� mitattava etäisyys / kustannus naapureihin� koottava tietopaketti ko. tiedoista� lähetttävä tietopaketti kaikille reitittimille� laskettava lyhin reitti kaikkiin muihin reitittimiin

� kyseessä maailman laajuinen verkko� kaikki häiriöt sattuvat

� joskus ja jossain

� vikasietoisuus

2/6/01

ongelmia

� väärin toimiva reititin� kertoo vääriä tietoja� ei välitä tietopaketteja� väärentää tietopaketteja� laskee reitit väärin

� isossa verkossa aina joku toimii väärin� tavoitteena rajata ongelmat pienelle alueelle

2/6/01

Hierarkkinen reititys� reitityksen skaalautuvuus

� isossa verkossa runsaasti reitittimiä� reititystaulut suuria� reittien laskeminen raskasta� tietopaketit kuluttavat linjakapasiteettia

� hierarkiaa� jaetaan reitittimet ryhmiin (alueet, regions)� kukin reititin tuntee kaikki alueensa sisällä� tietää mikä reititin hoitaa liikenteen muihin

alueisiin

2/6/01

IP-osoitteet� jokaisella verkon isäntäkoneella ja

reitittimellä on oma yksikäsitteinen osoite muotoa� verkon numeroverkon numero� isäntäkoneen numeroisäntäkoneen numero

� osoite on 32-bittinen� luokallinen reititys (A-, B- ja C-luokan osoitteet)� CIDR (classless Interdomain Routing)

� verkko-osan pituus vaihtelee : a.b.c.d/’pituus bitteinä’� 200.23.16.0/20

2/6/01

IP-osoitteiden jako� ICANN (The Internet Corporation for Assigned Names and

Numbers)� the non-profit corporation that was formed to assume responsibility

for the IP address space allocation, protocol parameter assignment, domain name system management, and root server system management functions previously performed under U.S. Government contract by IANA and other entities

� Alueellinen jako� APNIC Aasia� ARIN Amerikka + Etelä-Afrikka� RIPE NCC Eurooppa + lähialueet

� näiden alla Internet-palvelujen tarjoajat (ISP Internet Service Provider)

2/6/01

Osoitteiden antaminen koneille

� Manuaalisesti� DHCP (Dynamic Host Configuration Protocol)

� DHCP-palvelin antaa asiakkaalle dynaamisesti osoitteen� lähiverkoissa, PPP-yhteyksissä, liikkuville asemille

A: 0 verkko-os. koneosoite

B: 10 verkko-osoite koneosoite

C: 110 verkko-osoite koneos.

D: 1110 monilähetysosoite

E: 11110 varatttu tulevaan käyttöön

IP-osoitteiden luokkamuodot

0 8 16 24 31

2/6/01

IP-osoitteiden luokkajako� A-luokka: 126 verkkoa, 16 miljoonaa konetta/verkko� B-luokka: 16382 verkkoa, 65528 konetta/verkko� C-luokka:noin 2 miljoonaa verkkoa, kussakin

korkeintaan 254 konetta� D-luokka: monilähetysosoite� E-luokka: varattu tulevaan käyttöön

� Luokkajako osoittautui epäonnistuneeksi:� C-luokassa koneita liian vähän => useita eri verkkoja� B-luokassa koneita liian paljon => hukkakäyttöä, B-

osoitteet olivat loppua

2/6/01

Erikoisosoitteet� 0 tarkoittaa omaa verkkoa tai omaa isäntäkonetta

� 00000000000000000000000000000000� oma isäntäkone (‘minä itse’)

� 00 … 000 | isäntäkoneen osoite� isäntäkone omassa verkossa

� yleislähetykset� 11111111111111111111111111111111

� yleislähetys omassa verkossa� verkko-osoite|11111 … 11111

� yleislähetys toisessa verkossa

2/6/01

� osoitetta 0.0.0.0 käytetään vain, kun kone on juuri käynnistetty

� osoite testausta varten� 127.xx.yy.zz

� paketteja ei lähetetä, käsitellään vastaanotettuina

2/6/01

C-osoitteiden käyttö� verkon kasvu => ongelmia� kun tarvittiin lisää osoitteita => piti ottaa

uusi verkko-osoite => yritykselle useita eri verkkoja� nimien/osoitteiden hallinta, reititys � konfiguraatiohallinta

� koneen vaihto verkosta toiseen

2/6/01

Aliverkko-osoitteiden käyttö (subnets)

� aliverkot B-osoitteiden avulla� ulospäin verkko yhtenäinen,mutta sisäisesti

jaettu aliverkkoihin� B-luokka => osa koneosoitteen biteistä aliverkon

osoitteelle

� verkonhallinta voi itse päättää aliverkko-osoitteiden jakamisesta

2/6/01

CIDR (Classless InterDomain Routing)� IP-osoitteiden riittävyys!

� C-osoitteita paljon, mutta koneosoitteita vain 256� B-osoitteessa koneosoitteita riittävästi, mutta B-

osoitteita vain 65536!� 100000 verkkoa jo 1996!� useassa B-verkossa alle 50 konetta

� reititystaulujen koon kasvaminen� reitittimien tunnettava kaikki verkot

� => laskennan monimutkaisuus, � => tietojenvaihto vie paljon resursseja

2/6/01

CIDR-idea

� varataan C-osoitteet peräkkäisinä lohkoina� esim. 2000 osoitetta => varataan 8 peräkkäistä C-

verkkoa (= 8*258 = 2048)� jaetaan osoitteet neljään osaan, kukin osa

varataan yhdelle maanosalle (Eurooppa, Pohjois-Amerikka, Etelä-Amerikka,

Aasia+Pasific)� kullekin noin 32 miljoonaa osoitetta� 320 miljoona jää vielä varastoon

� reititetään myös maanosien mukaan� osoitteet: 194.0.0.0 - 195.255.255.255 Eurooppaan

2/6/01

Paketin reititys

� Reititys verkko-osoitteen perusteella� Kun paketti saapuu reitittimeen, sen kohdeosoitteen

verkko-osoite etsitään reititystaulusta ja nähdään, minne porttiin paketti tulee lähettää

Verkko-osoite, 0 portti

Oma verkko, host portti

Muihin verkkoihin

Omaan (omiin) verkkoihin

2/6/01

� kun paketti saapuu, sen kohdeosoite etsitään reititystaulusta

� jos etäverkko => seuraavalle reitittimelle� jos sama verkko => kohdekoneelle

� jos ei löydy reittitaulusta, ohjataan reitittimelle, joka tietää enemmän

2/6/01

� Osoitteen luokka kertoi verkko-osoitteen bitit ja koneosoitteen bitit

� CIDR => verkko-osoitteen koko vaihtelee� CIDR:n käyttö vaatii maskin, joka kertoo, mitkä

bitit kuuluvat verkko-osoitteeseen ja mitkä koneosoitteeseen

� samoin aliverkko-osoitteita käytettäessä tarvitaan aliverkkomaski

� Esimerkki CDR:n käytöstä� varataan osoitteet

� Turun yliopisto 2048 osoitetta� 194.24.0.0 - 194.24.7.255 ja maski 255.255.248.0

� Helsingin yliopisto 4096 osoitetta� 194.24.16.0 - 194.24.31.255 ja maski 255.255.240.0

� Tampereen yliopisto 1024 osoitetta� 194.24.8.0 - 194.24.11.255 ja maski 255.255.255.0

� talletetaan reititystauluihin� jokaisesta osoitteen alku eli kantaosoite ja maski

� saapuva paketti esim. 194.24.17.4� AND-operaatio ensin Turun maskilla� jos tuloksena Turun kantaosoite, menossa Turkuun� muuten yritetään muita

2/6/01

Reititys aliverkko-osoitteita käytettäessä

� Reititystaulussa� (muu_verkko, 0) � (oma_verkko, muu _aliverkko, 0)� (oma_verkko, oma_aliverkko, kone)

� kukin reititin tietää� oman aliverkkonsa koneet, � kuinka päästä muihin aliverkkoihin/verkkoihin

� aliverkon maski� kertoo mitkä bitit ovat koneosoitetta, mitkä

aliverkko-osoitetta

10 verkko-osoite aliverkko koneosoite

111111111111111111111111111111000000000000

aliverkkomaski

Reitittimen reititystaulussa:verkko1,0 ulosmeno a…...verkkon,0 ulosmeno I0, aliverkkoi, 0 ulosmeno u………..0, aliverkkok, 0 ulosmeno v0, tämä aliverkko, kone1 ulosmeno k………0, tämä aliverkko, konen ulosmeno m

2/6/01

Aliverkkomaskin käyttö

� maskin avulla osoitteesta poistetaan koneosoite

� AND-operaatio

� etsitään verkko-osoite reititystaulusta� esim. paketin kohdeosoite: 130.50.15.6maski: 11 …1 11111100 00000000osoite: 00001111 00000110AND: 00001100 000000000tuloksena verkko-osoite: 130.50.12.0

2/6/01

Reititin (Router)

reititin

2/6/01

Reitittimen rakenne

ulostuloportitsisäänmenoportit

Reititys- prosessori

Kytkentä-osa

(switching fabric)

... ...

� Portit� peruskerroksen toiminnot (PK)

� fyysisen siirtoyhteyden pää

� linkkikerroksen toiminnot (LK)� virhetarkistukset, vuonvalvonta, � MAC-kerroksen toiminnot

� pakettien edelleenohjaaminen (PE)� datapaketit kytkentäverkoston kautta oikeaan ulostuloporttiin� valvontapakettit (RIP, OSPF, BGP) reititysprosessorille

PK LK PEkytkentäosa

sisääntuloportti

PE LK PKKytkentä osa

ulostuloportti

Vastaavasti kukin ulostuloportti tallettaa sen kautta eteenpäin lähtevät paketit ja suorittaa niille linkkikerroksen ja peruskerroksen vaatimat toimenpiteet.

Käytännössä useita portteja on yhdistetty yhdeksi linjakortiksi (line card) reitittimen sisällä.

Reititysprosessori suorittaa reititysprotokollaa RIP, OSPF, BGP, .. päivittää reititystauluja hallinta- ja ylläpitotoimintoja

Kytkentäosa yhdistää paketin sisääntuloportit ulostuloportteihin paketti siirtyy oikeaan verkkoon täysin reitittimen sisällä

Line termination

Data Link Processing

Lookup, forwarding

queuing

Sisääntuloportin toiminta

Etsitään reititystaulusta kohdeosoitetta vastaava ulosmenoportti.

Yleensä kopio reitistystaulusta talletettu porttiin ja reititysprosessori päivittää sitä. Näin kukin portti pystyy itse etsimään oikean ulosmenoportin.

Muuten paketti ohjataan reititysprosessorille, joka etsii reititystaulusta oikean portin (portti on pelkkä verkkokortti).

� Etsitään reititystaulusta� valitaan pisin sopiva verkko-osa

� Runkolinjareitittimiltä vaaditaan hyvin suuria nopeuksia� miljoonia hakuja sekunnissa� pitäisi pystyä toimimaan linjan nopeudella

� OC48-linkki => 2.5 Gbps� jos paketin koko 256 tavua => noin miljoona hakua

sekunnissa

� erilaisia tekniikoita� talletetaan reittitaulun alkiot puurakenteina

0 1

0 1

0 1

Osoitteen

1. bitti

2. bitti

3. bitti

jne

001…..

Kun n = 32 ei ole tarpeeksi nopea nykyisiin runkoreitittimiin!

- content addressable memory (CAM)

- välimuistin käyttö

2/6/01

Kytkentäosa� Kytkentä muistin kautta

� portit tavallisia käyttöjärjestelmän I/O-laitteita� keskeytys ilmoittaa paketin saapumisesta� CPU kopioi paketin sisääntuloportista muistiin� CPU tutkii osoitteen ja reitistystaulusta etsii vastaavan

ulosmenoportin� CPU kopioi paketin muistista tähän ulosmenoporttiin� muistin saantinopeus rajoittaa toimintaa

� nykyiset reitittimet � käyttävät linjakortin omia prosessoreita

� Memory shared multiprocessors

� Kytkentä väylän kautta� sisääntuloportit siirtävät paketin väylän kautta

suoraan oikeaan ulosmenoporttiin� vain yksi paketti kerrallan voi kulkea väylässä� jos väylä on varattu, paketti joutuu odottamaan� väylän nopeus rajoittaa kytkentänopeutta

� Gbps nopeudet riittävät LANeille ja yritysverkoilla

� Kytkentä kytkentäverkon kautta� ristikkäinkytkin (crossbar switch)� 2N väylää, jotka yhdistävät N sisääntuloporttia N:ään

ulosmenoporttiin� voivat tukkeutua => odotusta sisäänmenoportissa

� Cisco 12000: 64 Gbps

2/6/01

Ulosmenoportit

Line termination

Data Link Processing

Queuing

Buffer Management

Ulosmenoportti lähettää paketin taas seuraavaan verkkoon

2/6/01

Jonotus reitittimessä

� Sekä sisäänmeno- että ulostuloporttiin voi syntyä jonoa� näissä jonoissa reititin voi kadottaa paketteja,

kun puskuritila ei enää riitä� se kummassa jonossa paketit katoavat, riippuu

kytkimen ja linjan nopeuden suhteista� jonoa voi syntyä myös, koska useasta lähteestä

pyritään samaan kohteeseen

Yhdelle linjalle liian paljon liikennettä => ulosmenoportin puskuritila täyttyy ja paketteja katoaa!

N linjaa sisään N linjaa ulos

Kytkin toimii riittävällä nopeudella, joten sisääntulossa ei tarvitse jonottaa.

Esim. Ristikkäinkytkimessä paketti joutuu odottamaan, jos samaan kohteeseen on menossa useita paketteja. Jonottava paketti voi tukkia tien myös muilta saman portin paketeilta, jotka muuten voisivat edetä kytkimessä.

(head-of-the-line-blocking)

N linjaa sisään N linjaa ulos

Jos kytkin ei toimi tarpeeksi nopeasti, sisääntuloportteihin syntyy jonoja.

2/6/01

Yleislähetysreititys (Broadcast routing)

� paketti monelle vastaanottajalle� useita kaksipistelähetyksiä: kaikille oma paketti� tulvitus� multidestination routing: kohteet lueteltu paketissa,

reititin kopioi kaikkiin tarpeellisiin ulosmenoihin� virittävä puu (spanning tree)

� ei silmukoita� yhteinen tai jokaiselle oma puu

� reverse path forwarding-algoritmi� estimoi virittävää puuta

2/6/01

Reverse path forwarding -algoritmi� idea

� tuliko paketti portista, josta normaalisti lähetetään paketin aloittaneelle solmulle?� jos tuli, paketti kopioidaan kaikkiin muihin portteihin� jos ei tullut paketti tuhotaan kaksoiskappaleena

� edut� tehokas ja helppo toteuttaa� ei tarvitse tuntea virittävää puuta� ei ylim. yleisrasitetta (kohdelista, lisäbittejä)� tulvitus päättyy itsestään

2/6/01

Monilähetysreititys (multicast routing)

� Monilähetysryhmä� ryhmäosoite (Luokan D osoite)� vastaanottajaryhmän hallinta

� ryhmien muodostus, poistaminen� vastaanottajien lisääminen, poistaminen

� reitittimet tietävät ketkä kuuluvat mihinkin ryhmään

� reititin laskee virittävän puun� puusta poistetaan linjat, jotka eivät johda ryhmään

kuuluviin solmuihin � skaalautuu huonosti

2/6/01

Koko ryhmälle yksi puu� Vain yksi reitityspuu koko

monilähetysryhmälle� pienimmän kustannuksen puun löytäminen NP-

täydellinen ongelma (Steiner tree problem)� suht.koht. hyviä heuristisia ratkaisuja on � ei ole käytössä Internetissä

� tiedettävä kaikki kaikki linkkikustannukset� kustannusten muuttuessa laskettava uudelleen

� ryhmän keskuksena jokin solmu, johon muut myöhemmin liittyvät

2/6/01

Jokaiselle lähettäjälle oma puu

� Tavallisessa reitityksessä jo yleensä lasketaan pienimmän kustannuksen puu lähettäjältä muihin solmuihin� Dijkstra => reititystaulu

� Reverse path forwarding� “Älä turhaan lähetä tänne” (pruning)

� paljon puita� N lähettäjää => N puuta� reitityksessä käytetty puu valitaan lähettäjän mukaan

2/6/01

Liikkuvien isäntäkoneiden reititys

� liikkuva kone (mobile host)� kotiosoite (home address, home location)� kotiagentti (home agent)

� tietää, missä omat liikkuvat ovat

� kun ilmaantuu vieraalle alueelle, se rekisteröityy� vierasagentti (foreign agent)

� hoitaa alueelle tulleet vieraat liikkuvat

� vierasagentti ilmoittelee itsestään � yleislähetyksiä: ‘minä täällä’

tai vieras liikkuva kyselee� ‘onko täällä vierasagenttia’

� vieras liikkuva ilmoittaa vierasagentille� kotiosoitteensa� siirtoyhteyskerroksen osoitteensa (current data link

address)� todentamistietoja (authentication information)

� vierasagentti ottaa yhteyden liikkuvan kotiagenttiin� ‘liikkuva xyz on nyt täällä’� vierasagentin verkko-osoite� todentamistietoja

� kotiagentti tarkistaa tiedot� mm aikaleima

ja jos kaikki kunnossa, tallettaa sijaintipaikan� kun vierasagentti saa kuittauksen kotiagentilta,

se merkitsee liikkuvan xyz vieraakseen ja ilmoittaa liikkuvalle rekisteröinnin onnistuneen

� Kun paketti lähetetään liikkuvalle, se ohjautuu osoitteen perusteella kotialueelle

� kotiagentti tietää nykyisen sijainnin ja ohjaa paketin sinne

� uusi osoite lähettäjälle?� lähettäjä lähettää paketit suoraan ko. vierasagentille

välitettäväksi xyz:lle

2/6/01

IP-protokolla

� IP-datasähke� otsake� dataosa

� otsake� pituus 20 tavun kiinteä osa� vaihtelevan mittainen valinnainen osuus� big endian: vasemmalta oikealle, korkein bitti ensin

2/6/01

IP-otsakkeen kentät

� versio� IHL

� otsakkeen pituus vähintään viisi 32 bitin sanaa (20-60 tavua)

� type of service� kertoo halutun palvelun

� nopeus, luotettavuus, kapasiteetti� ääni <-> tiedostonsiirto

� yleensä ei käytössä

2/6/01

Type of service -bitit:

� presedence-kenttä (3 bittiä)� sanoman prioriteetti 0-7

0 normaali 7 verkon valvontapaketti

� D-bitti, T-bitti, R-bitti� mikä on tärkeää yhteydessä

D: viive (Delay), T: läpimeno (Throughput) R: luotettavuus (Reliability)

� lisäksi vielä 2 käyttämätöntä bittiä

2/6/01

IP-otsakkeen kentät jatkuvat

� Total length� koko datasähkeen pituus � maksimi 65535 tavua

� maksimipituus vielä riittävä, mutta tulevaisuuden nopeille verkoille jo ongelma

� Identification� tietosähkeen numero� kaikissa saman tietosähkeen osissa sama tunnus

2/6/01

IP-otsakkeen kentät jatkuvat

� DF- bitti (Don’t fragment)

� kieltää paloittelun � esim. jos vastaanottaja ei kykene kokoamaan

datasähkettä

� MF-bitti (More fragments)

� ilmoittaa, onko datasähkeen viimeinen osio vai tuleeko vielä lisää

2/6/01

IP-otsakkeen kentät jatkuvat

� Fragment offset� osion paikka datasähkeessä� osioiden oltava 8 tavun monikertoja (paitsi

viimeisen)� 13 bittiä => korkeintaan 8192 osiota yhdessä

datasähkeessä

� lisäksi 1 käyttämätön bitti

2/6/01

IP-otsakkeen kentät jatkuvat

� Time to live� rajoittaa paketin elinaikaa� maksimi 255 sekuntia� vähenee

� joka hypyllä reitittimestä toiseen� myös odottaessaan reitittimessä (ei yleensä)� paketti hävitetään, kun laskuri menee nollille

� Protocol� mille kuljetuskerrokselle kuuluu

� esim. TCP- tai UDP-siirtoon kuuluva

2/6/01

IP-otsakkeen kentät jatkuvat

� Header checksum� tarkistussumma lasketaan vain otsakkeelle� 16-bitin sanat lasketaan yhteen yhden

komplementin aritmetiikalla� laskettava uudestaan joka reitittimessä

� Source address, Destination address� kohteen ja lähettäjän osoitteet muodossa

� verkon numero ja isäntäkoneen numero

2/6/01

IP-otsakkeen kentät jatkuvat

� Options� vaihtelevan mittaisia

� 1. tavu kertoo option koodin� voi seurata pituuskenttä� datakenttiä� täytettä jotta 4 tavun monikertoja

� käytössä 5 optiota� mutta reitittimet eivät välttämättä ymmärrä

2/6/01

Optiot

� Security� datasähkeen luottamuksellisuus ja salassapidettävyys

� Strict source routing� datasähkeen kuljettava tarkalleen annettua reittiä

� Loose source routing� kuljettava ainakin annettujen reitittimien kautta

� Record route� reitin varrella olevat reitittimet liittävät tunnuksensa

� Timestamp� tunnuksen lisäksi liitettävä myös aikaleima

2/6/01

IPv6

� CIDR on ‘kikkailua’, ei ratkaise IP:n perusongelmia

� tavoitteita:� biljoonia osoitteita� pienempiä reititystauluja� yksinkertaisempia protokollia� turvallisuutta� mukaan palvelutyyppi (tosiaikainen), monilähetys� liikkuvien koneiden osoitteet� jatkokehitys ja nykyisten protokollien toimivuus

2/6/01

IPv6� 16 tavun osoitteet

� => ‘rajaton’ määrä osoitteita

� yksinkertaisempi otsake-kenttä� kiinteä kehys, jossa vain 7 kenttää

� valinnaisten piirteiden käsittely� monet ennen pakolliset nyt valinnaisia� opitioiden uusi esitystapa => nopeampi käsittely

� turvaus� todentaminen� yksityisyys

2/6/01

� palvelutyyppi otettu paremmin huomioon

� multimedia

� yhteensopiva Internetin protokollien kanssa

� osoitteiden koko

� ei ole yhteensopiva IPv4:n kanssa

IPv6-otsake

Source address (16 tavua)

Destination address (16 tavua)

Payload length Next header Hop limit

Flow labelV P

V = version, P = Priority

2/6/01

Otsakekentät

� Versio (version)� aina 6 IPv6:lle ja 4 IPv4:lle

� prioriteetti (priority)� 0-7 ruuhkatilanteessa voi hidastaa� 8-15 tosiaikapaketteja (video/audio)� isompi numero, tärkeämpi paketti

� vuonimiö (flow label)� pseudoyhteys, jolla tietyt ominaisuudet ja

vaatimukset (esim. viive, viipeen vaihtelu jne)� vuot muodostetaan etukäteen ja niille annetaan

tunnus: lähde- ja kohdeosoite ja vuonumero

� kuorman pituus (payload length)� paketin koko (ilman otsaketta)

� seurava otsake (next header)� otsikon laajentaminen� 6 otsikon laajennusosaa� viimeisessä kertoo kuljetusprotokollan (TCP, UDP)

� hyppyraja (hop limit)� hyppylaskuri, vähenee joka hypyllä

� source address, destination address� 16 tavun osoitteita

2/6/01

IPv4:n kentistä puuttuvat� paketin paloitteluun liittyvät kentät

� kaikki kykenevät käsittelemään ainakin 576 tavun paketteja

� lähettäjä huolehtii, että paketti on riittävän pieni� reititin ilmoittaa virheestä, jos se havaitsee liian

suuren paketin => ohjeet pilkkoa paketti pienemmäksi

� tarkistussumma� ei lasketa verkkokerroksella

� luotettavammat verkot� siirtoyhteyskerros laskee / kuljetuskerros laskee

IPv6- otsake

Laajennus-otsake

Laajennus- otsake

... TPDU

Ei yhtään, yksi tai useita laajennusotsikoita

Seuraava otsake -kenttä (Next header Field)

* ilmoittaa minkä tyyppinen otsakekenttä seuraa IPv6-otsaketta

* seuraaja voi olla jokin laajennusotsake tai ylemmän protokollan, kuten

TCP:n tai UDP:n otsake

2/6/01

Laajennusotsakkeet� Hop-By-Hop- optioiden otsake

� tietoja reitittimille, käsitellään joka reitittimessä� reititysotsake (Routing header)

� laajennettu reititys ~IPv4:n lähdereititys, � vaadittu reitti tai reitin osa

� paloitteluotsake (Fragmentation header)� paloitteluun ja kokoamiseen liittyvää tietoa

� autentikointiotsake (Authentication header)� paketin ehyys ja autentikointi (= taattu lähettäjän identiteetti)

� turvatun kuorman otsake (Encapsulating Security Payload header)� pakettien salakirjoitus

� kohdeoptioiden otsake (Destination Options header)� paketin vastaanottajille tarkoitettua tietoa

2/6/01

Otsakkeiden järjestys� Standardin otsakkeet myös annetaan

edellä esitetyssä järjestyksessä� Poikkeuksena ovat kohdeoptioiden otsakkeet

� Optiot voidaan tarkoittaa myös usealle kohteelle. Tällöin annetaan ensimmäinen osoite kohdeosoitteen kentässä ja muiden kohteiden lista reititysotsakkeessa.

� Tällainen kohdeoptioiden otsake esiintyy heti hop-by-hop-otsakkeen jälkeen.

� Jos otsakkeen tiedot on tarkoitettu vain paketin viimeiselle vastaanottajalle. Niin annetaan viimeisenä laajennuksena.

2/6/01

IPv6:n prioriteetit� ruuhkavalvottu liikenne (esim. TCP)

� viive saa jossain määrin vaihdella� pakettien järjestys saa muuttua

� ruuhkavalvomaton liikenne� tosiaikavideo tai audio� vakionopeus ja vakioviive => tasainen pakettivirta

� prioriteetti suhteessa muihin saman lähteen paketteihin � prioriteetti suhteessa saman liikennetyypin paketteihin

� ruuhkavalvotun ja valvomattoman liikenteen välillä ei ole määritelty prioriteettia

2/6/01

Ruuhkavalvottu liikenne

� Prioriteetit 0- 70 määrittelemätön liikenne (uncharacterized traffic)1 täyttöliikenne (filler traffic) verkkouutiset, USENET-sanomat2 lliikenne, jota käyttäjä ei dottele (unattended data traffic) sähköposti3 ei vielä käytössä4 käyttäjän odottama massasiirto (attended bulk traffic) FTP, HTTP5 ei vielä käytössä6 interaktiivinen liikenne (interactive traffic) TELNET, X7 verkon valvontaliikenne (Internet control traffic) SNMP, OSPF, BGP

2/6/01

Ruuhkavalvomaton liikenne

� Prioriteetit 8-158 sopivin hävitettäväksi esim. teräväpiirtovideo, jossa runsaasti redundanssia

…….15 huonoin hävitettäväksi esim. puhelinkeskustelu, jossa kadonneet paketit aiheuttavat

äänen pätkimistä ja häiriöääniä linjalla

2/6/01

Vuonimiö� Vuo

� peräkkäisten pakettien jono samasta lähteestä samoille vastaanottajille, jota reitittimien halutaan käsittelevän tietyllä tavalla� tiedostonsiirto usealla TCP-yhteydellä => yksi vuo� multimediakonferenssi => monta erilaista vuota

� lähdeosoite + 24-bittinen vuotunnus identifioi vuon� kaikille saman vuon paketeille sama tunnus

2/6/01

� Reitittimelle vuo on joukko peräkkäisiä paketteja, joita tulee käsitellä tietyllä tavalla

� samat resurssivaraukset� samat turvallisuusvaatimukset� samat säännöt pakettien hävittämiseen� samat etuoikeudet jonoissa� samat vaatimukset aliverkon palvelunlaadulle� sama laskutus

2/6/01

� Vuonimiö on pelkkä tunniste� on erikseen esitettävä, mitä toimintoja kuhunkin

nimiöön liittyy� neuvottelemalla etukäteen reitittimen kanssa

valvontaprotokollaa käyttäen� ilmoittamalla paketteja lähetettäessä otsakkeissa

halutut toiminnot� Hop-By-Hop -option otsakkeessa

� voidaan pyytää tiettyä palvelunlaatua (QoS) tai tosiaikaista palvelua

2/6/01

Vuonimiöiden käsittely solmuissa

� Jos ei osaa käsitellä, niin jätetään huomiotta� jos sama vuonimiö, niin oltava myös

� sama kohde- ja lähdeosoite� sama prioriteetti� samat hop-by-hop-optiot (jos käytössä)� samar reititysoptiot (jos käytössä)

jotta reititin pystyy käsittelemään paketin pelkän vuonimiön perusteella

� lähde antaa vuotunnisteen ja pitää kirjaa niistä� noin 16 miljoonaa tunnistetta� valitaan satunnaisesti� sama tunniste uudelleen käyttöön vasta kun sitä ei enää

käytetä

Hop-by-hop -optioiden laajennusotsake

Next Header Hrd Ext Len

One or more options

Next Header: seuraavan otsakkeen tyyppi

Header Extension Length: otsakkeen pituus 64 bitin osina ensimmäisen 64 bitin lisäksi

2/6/01

jumbogrammi� ainoa hop-to-hop- optio toistaiseksi� suuria paketteja tarvitaan

� supertietokoneille� suurien videopakettien siirrossa� erittäin nopeilla yhteyksillä

datagramminpituus4 tavulla

next header 0 194 0

Jumbo payload length ( > 65535 tavua)

option tyyppi

otsakkeen (lisä)pituus

Maksimikooksi yli 4 Gtavua

2/6/01

Paloittelu (fragmentation) � IPv6: sanoman paloittelee

lähettäjäsolmu� ei enää reititin� reititin hylkää liian suuret paketit

� path discovery -algoritmi: � lähettäjä selvittää reitillä olevan pienimmän MTU:n

(Maximum data unit), jotta osaa paloitella sopiviksi osiksi� 576 tavun paketti on kaikkien pystyttävä välittämään

2/6/01

Paloittelu-otsake

Next Header reserved Fragment offset res. M

identification

Fragment offset (13 bittiä): osan sijainti, yksikkönä 64 bitin osat

M-lippu: 1 = lisää palasia, 0= viimeinen pala

Identification (32 bittiä): koko sanoman tunniste, kaikissa osissa sama

,

2/6/01

Reititysotsake

Next Header Hdr Ext Len Routing type Segments left

Type-specific data

Routing type (8 bittiä): reititysotsakkeen tyyppi

Segments left (8 bittiä): kuljettavien välisolmujen määrä

Tyypin 0 reititysotsake

Routing type Segments left

Bit map (23 bittiä): 1 (strict routing) = vastaava osoite on seurava solmu, 0 (loose routing) = ei välttämättä oltava seuraava osoite

Next Header Hdr Ext Len

Address1

reserved Strict/loose bit map

Address n

...

0Segments left

2/6/01

� Kohteen IP-osoite on osoitelistan viimeinen, � IP-otsakkeessa on ensimmäisen reittilistalla

olevan reitittimen osoite� joka vasta tutkii reititysotsikon ja saa selville, minne

paketti ohjataan seuraavaksi� ja päivittää IP-paketin osoitteeksi seuraavan listalla

olevan reitittimen� sekä vähentää yhdellä segments left -kenttää

2/6/01

Turvallisuus verkkokerroksella� Ipsec

� Authentication Header-protokolla (AH-protokolla)

� Encapsulation Security Payload -protokolla (ESP-protokolla)

� ennen käyttöä on luotava kommunikoivien koneiden välille turvasopimus SA (Security Agreement)

� looginen yksisuuntainen yhteys verkkokerroksella � käytetty protokolla (AH tai ESP)� lähettäjän IP-osoite� 32-bittinen yhteystunnus SPI (Security Parameter Index)

� kaikissa SA:n Ipsec-datagrammeissa sama SPI-arvo

2/6/01

AH-otsake� Varmistaa datagrammin eheyden ja

lähettäjän identiteetin� “ juuri tämä lähettäjä on lähettänyt juuri tämän

paketin”� kukaan ei väärentänyt lähettäjää� kukaan ei ole millaan tavoin muuttanut pakettia

AH-otsakeIPv4-otsake TCP/UDP -segmentti

Protokollakenttä ( = 51) ilmoittaa, että mukana on AH-otsake eli käytössä AH-protokolla

2/6/01

AH-otsake� Next header

� onko data TCP-, UDP-,…. Segmentti

� SPI eli yhteystunnus� yhdessä lähettäjän IP-osoitteen ja käytetyn protokollan

kanssa identifioi yhteyden turvasopimuksen SA

� Sequence number� järjestysnumero 32 bitillä

� Authentication Data� sanoman digitaalinen allekirjoitus => lähettäjän

identiteetin ja sanoman yheyden varmistus

2/6/01

AH-otsake

Next Header Auth. Data Len

Securitty Parameters Index (SPI)

Sequence Number

Authentication Data

00000000 00000000

2/6/01

ESP-otsake

� Sanoman salaus ja lähettäjän autentikointi

IP-otsake ESP-otsake TCP/UDP- ESP-peräke ESP-autentikointisegm.

Protokollakenttä (=50): datagrammissa ESP-otsake ja -peräke

salakirjoitettu

autentikoitu

2/6/01

ESP-otsake

Securitty Parameters Index (SPI)

Sequence Number

Opaque Transport Data = salakirjoitettu data

Authentication Data

Pan Len Next Header

Padding

Padding

2/6/01

IPv6: osoiteavaruus

� jaettu osiin� osa IPv4-osoitteille

� palveluntuottajapohjainen osa� Internet-palvelujen tuottajille oma osuus osoitteista� noin 16 miljoonaa tuottajaa

� maantieteellinen osa� vastaa nykyista Internetiä

� Monilähetysosoitteet (multicast)� lippukentän bitti: pysyvä vai tilapäinen ryhmä� scope-kenttä rajoittaa monilähetyksen

� linkkiin� solmuun� yritykseen� planeettaan

� anycast� osoitteena ryhmä,� riittää lähettää jollekin ryhmän jäsenelle

2/6/01

Osoitteen esitysmuoto

� kahdeksan neljän heksaluvun ryhmää:

8000:0000:0000:0000:0123:4567:89AB:CDEF

� ryhmän alkunollat voi jättää pois� 16 nollan ryhmät voi korvava kaksoispisteellä

=> 8000::123:4567:89AB:CDEF� IPv4-osoitteet => ::193.31.20.46

2/6/01

� osoitteita on PALJON! 2**128 => ~3* 10**38� tasaisesti jaettuna noin 7 * 10**23 IP-

osoitetta jokaista maapallon pinnan neliömetriä kohden

� vaikka jako olisi epätasaisempi, ainakin yli 1000 IP-osoitetta neliömetriä kohden

2/6/01

Siirtyminen IPv4 => IPv6

� Kestää pitkään � syntyvät IPv6-saarekkeet

kommunikoivat tunneloinnilla� Dual stack -ratkaisut� IPv6-reitittimet

2/6/01

Internet-protokollia

� ICMP (Internet Control Message Protocol)� ARP (Address Resolution Protocol)� RARP (Reverse Address Resolution Protocol)� OSPF (Open Shortest Path First)� BGP (Border Gateway Protocol)� IGMP (Internet Group Management Protocol)� Mobile IP� CIDR (Classless InterDomain Routing)� IPv6

2/6/01

ICMP (Internet Control Message Protocol)

� Verkkoinformaation välittämiseen isäntäkoneiden ja reitittimien välillä� reitittimet ilmoittavat verkon ongelmista

toisilleen� reitittimet ilmoittavat lähetysten kohtalosta

isäntäkoneille� "Destination network unreachable"

� testauspakettien lähettäminen

2/6/01

� ICMP-sanomat kapseloidaan IP-paketteihin� TCP- ja UDP-segmenttien tavoin� IP-paketin protokollakentässä 'ICMP'� => paketti annetaan ICMP:n käsiteltäväksi

� ICMP-sanomassa� tyyppi + koodi kertovat sanoman� 8 tavua sanoman aiheuttaneesta IP-paketista

� jotta lähettäjä tietää, mikä paketti aiheutti sanoman

2/6/01

ICMP-sanomia� Destination unreachable� Time-To-Live exceeded� Parameter problem� Source quench� Redirect� Echo request, Echo reply� Timestamp request, Timestamp reply

2/6/01

Summary of Message Types

� 0 Echo Reply� 3 Destination Unreachable� 4 Source Quench� 5 Redirect� 8 Echo� 11 Time Exceeded� 12 Parameter Problem� 13 Timestamp� 14 Timestamp Reply� 15 Information Request� 16 Information Reply

2/6/01

Type 3: Destination unreachable

Code 0 = net unreachable;

1 = host unreachable;

2 = protocol unreachable;

3 = port unreachable;

4 = fragmentation needed and DF set;

5 = source route failed.

6 = network unknown

7 = host unknown

2/6/01

Type 11:Time-To-Live exceeded

Sanoma hävitettiin, koska sen elinaika ehti kulua umpeen

Code0 = time to live exceeded in transit;

1 = fragment reassembly time exceeded.

2/6/01

Type 12: Parameter problem

Virhe IP-otsakkeessa� Sanomassa osoitin, joka kertoo virheellisen� kohdan

� ilmoittaa virheellisen tavun� esim. osoittimen arvo 1 kertoo, että vika on TOS-

kentässä

� Sanoma lähetetään vain, jos IP-sanoma joudutaan virheen takia hävittämään

2/6/01

Type 4: Source quench

Tällä voidaan ilmoittaa lähettäjälle, että sen tulee vähentää lähettämistään� reititin joutuu hävittämään paketteja puskuristaan� vastaanottaja ei ehdi käsitellä paketteja sitä

vauhtia kun niitä tulee

HUOM! Käyttöä ei suositella• TCP-ruuhkanvalvonta • TCP-vuonvalvonta

2/6/01

Type 5: Redirect

Reititin voi pyytää isäntäkonetta lähettämään sanoman toiselle reitittimelle

Code:

0 = Redirect datagrams for the Network.

1 = Redirect datagrams for the Host.

2 = Redirect datagrams for the Type of Service and Network.

3 = Redirect datagrams for the Type of Service and Host

2/6/01

Echo-sanomat

Type 0: echo replyType 8: echo request

Echo-pyynnön sanoma tulee palauttaa echo-vastauksessa• ping-ohjelma lähettää echo-pyynnön koneelle ja

pyynnön vastaanottanut kone palauttaa sen

Echo-sanomat

2/6/01

Timestamp-sanomat

type 13: timestamp message type 14: timestamp reply message

lähettäjä leimaa lähettäessään ja vastaanottaja saadessaan ja

uudelleenlähettäessään • The timestamp is 32 bits of milliseconds since

midnight UT.

2/6/01

Traceroute-ohjelma

� Lähettää kohdekoneelle ICMP-sanomia, joissa TTL on 1, 2, 3,... sekuntia• reititin, jolla jonkin sanoman TTL loppuu,

lähettää tästä ilmoituksen, jossa on reitittimen osoite ja aikaleima

� Lähettäjä saa näin selville kiertoajan ja reitittimen eli kuljetun reitin lähettäjältä kohdekoneelle

2/6/01

ARP (Address Resolution Protocol)

� muuttaa IP-osoitteen siirtoyhteyskerroksen osoitteeksi� lähiverkkoon liitetyt laitteet ymmärtävät vain

LAN-osoitteita� esim. eetteriverkon 48-bittisiä osoitteita

� yleislähetys lähiverkkoon� “Kenellä on IP-osoite vv.xx.yy.zz ?”� vastauksena osoitteen omistavan laitteen

lähiverkko-osoite

2/6/01

� optimointia:� kyselyn tulos välimuistiin

� talletetaan muutaman minuutin ajan

� kyselijä liittää omat osoitteensa kyselyyn� alustettaessa jokainen laite ilmoittaa osoitteensa

muille� kysyy omaa osoitettaan� jos tulee vastaus, niin konfigurointivirhe

2/6/01

� reitittimet eivät välitä ARP-kyselyjä� reititin vastaa itse ARP-kyselyihin (proxy ARP)� muihin verkkoihin menevät paketit lähetetään

oletuspaikkaan, joka huolehtii niiden lähettämisestä

2/6/01

RARP (Reverse Address Resolution Protocol)

muuttaa lähiverkko-osoitteen IP-osoitteeksi

• käynnistettäessä levytön työasema

– asema kysyy IP-osoitettaan yleislähetyksenä• “Lähiverkko-osoitteeni on xxxxx..xx. Mikä on IP-

osoiteeni?”• RARP-palvelin vastaa kertomalla laitteen IP-

osoitteen

=> kaikille laitteille voidaan käyttää samaa aloitustiedostoa

2/6/01

� reititin ei välitä RARP-viestejä � joka verkossa oltava oma RARP-palvelin� käytetään BOOTP-protokollaa

� käyttää UDP-viestejä, jotka reititin välittää toisiin verkkoihin

� lisäinformaatiota• tiedostopalvelimen IP-osoite• oletusreitittimen IP-osoite• aliverkkomaski

2/6/01

5.3 Ruuhkan valvonta� yleistä ruuhkan valvonnasta� ruuhkan estäminen

� liikenteen tasoittaminen� vuotava ämpäri, vuoromerkkiämpäri� liikennevirran määrittely

� ruuhkan säätely� kuorman rajoittaminen

� pääsyvalvonta, hidastuspaketit� kuorman purkaminen

� pakettien tuhoaminen

2/6/01

Yleistä ruuhkasta

� suorituskyvyn rajat� palvelijaketju (reititin, linkki, reititin, …)� ketjun maksimiteho korkeintaan hitaimman

palvelijan teho � suoritusteho: sanoma/aikayksikkö

� hitain palvelija on pullonkaula� jos hitainta tehostetaan => missä / mikä on uusi

pullonkaula?

> i

==>==> C1 C2 C4C3

=> ruuhkaajos

2/6/01

ruuhkan valvonta <=> vuon valvonta

� ruuhkanvalvonta� verkon selvittävä tarjotusta kuormasta� globaali ongelma

� monta lähettäjää, monta vastaanottajaa

� vuonvalvonta� lähettäjä ei saa lähettää enempää kuin

vastaanottaja pystyy käsittelemään� kaksipisteyhteys

� suora palaute vastaanottajalta lähettäjälle

2/6/01

‘open-loop’ control

� järjestelmä suunnitellaan sellaiseksi, ettei ruuhkaa synny� uuden asiakkaan hyväksyminen� pakettien hävittäminen� skedulointiperiaatteet

� järjestelmän tila ei vaikuta päätöksentekoon

2/6/01

‘closed-loop’ control

� palautesilmukka (feed back loop)� seurataan järjestelmän tilaa

� puskurien täyttöaste� uudelleenlähetysten lukumäärät, viipeet, viipeiden

vaihtelu

� ongelman havaitsija ilmoittaa� pakettien alkuperäiselle lähettäjälle, kaikille

� reitittimet aktiivisesti kyselevät� nopeampi reagointi mahdollista

� lähetyskäyttäytymisen muuttaminen ruuhkan vähentämiseksi� liian hidas reagointi => ruuhka kasvaa � liian nopea reagointi => heiluriliikettä

2/6/01

Toiminnan säätö ruuhkatilanteessa

� lisää kapasiteettia� kiintiön nostaminen� varajärjestelmän käyttö

� vähennä kuormaa� ei uusia käyttäjiä, huonompi palvelu, jne� sopii hyvin virtuaalipiireihin

� virtuaalipiirit =>verkkokerroksella� datasähkeet => kuljetuskerroksella

2/6/01

Ruuhkanestopolitiikat� siirtoyhteyskerros

� uudelleenlähetyspolitiikka� epäjärjestyksessä saapuneiden talletuspolitiikka� kuittauspolitiikka, � vuon valvontapolitiikka,

� verkkokerros� virtuaalipiiri <=> tietosähke� pakettien jonotuspolitiikka� pakettien poistamispolitiikka� reititysalgoritmi� pakettien elinikä

2/6/01

� kuljetuskerros� uudelleenlähetyspolitiikka� epäjärjestyksessä saapuneiden talletuspolitiikka� kuittauspolitiikka� vuon valvontapolitiikka� ajastinaikojen asetukset

2/6/01

Liikenteen tasoitus (traffic shaping)

� liikenne tyypillisesti purskeista� aiheuttaa ruuhkaisuutta

� tasoitetaan liikennevirtaa puskurilla� puskuri toimii jonona

� vuotava ämpäri� vuoromerkkiämpäri

� liikennevirran määrittely� määrittelee asiakkaan oikeudet ja velvollisuudet

2/6/01

Vuotava ämpäri (leaky bucket)

� purskeisuutta tasoittaa iso puskuri, josta liikenne valuu tasaisesti

� ‘vuotava ämpäri’� yksi tavu / yksi paketti lähtee jossain aikayksikössä,

jos on lähetettävää

� jos datapurske mahtuu puskuriin, se aikanaan pääsee matkaan

� äärellinen jono� yläraja saapumistiheydelle

2/6/01

Vuoromerkkiämpäri (Token bucket)

� lähettäminen vaatii vuoromerkin� vuoromerkkejä generoituu tasaisella

nopeudella� jos ei lähetettävää, merkkejä jää

säästöön� korkeintaan niin paljon kuin ämpäriin mahtuu� => sallii rajoitetut ‘minipurskeet’

� joustavampi kuin vuotava ämpäri� purskeet voivat aiheuttaa ruuhkaa => vuotava

ämpäri vuoromerkkiämpärin perään

2/6/01

Liikenteen määrittely (flow specification)

� sovitaan liikennevirrasta yhteyttä muodostettaessa� asiakas esittää kuorma- ja palvelutoiveet� palvelija: ok/ ei käy/ vastaehdotus� pyydetty palvelu

� pakettien katoamisen sietokyky (loss sensitivity): missä määrin asiakas sietää pakettien tuhoamista

� viiveherkkyys (delay, delay variation)� takuu: onko toive vai ehdoton vaatimus

� asiakas ei aina tiedä mitä todella haluaa

2/6/01

Virtuaalikanavan ruuhkanvalvonta

� pääsynvalvonta (admission control)� jos ruuhkaa, ei uusia virtuaalikanavia� uusi kanava ok, jos kiertää ruuhka-alueen

� virtuaalikanavaa avattaessa� sovitaan liikennekuormituksesta ja palvelun

laadusta� verkosta varataan tarvittavat resurssit

� resurssien varaus� milloin varataan, paljonko varataan

� liikenne on purskeista� turha varaus tuhlaa resursseja

2/6/01

hidastuspaketti (choke packet)

� voidaan käyttää kaikenlaisissa verkoissa

� reititin tarkkailee kuormitusta� ulosmenolinjojen käyttöastetta� jonopituuksia� esimUnew = aUold + (1-a)fUnew = aUold + (1-a)fa kuinka nopeasti aikaisempi historia unohtuuf kuormitettu vai ei ( o tai 1)

� jos liikaa kuormaa, reititin huolestuu� lähettäjälle hidastuspaketti� lähettäjä hidastaa lähetystään

� vähentää ensin puoleen� ja sitten taas puoleen

� perustuu vapaaehtoisuuteen� reilu jonotus

� useita kynnysarvoja� lievä, vakava, erittäin vakava varoitus

� muita ruuhkan ‘mittoja’� jonon pituus� puskurikäyttö

2/6/01

Hidastuspaketin ongelmia:

� lähettäjän hidastus vapaaehtoista� reilu jonotus:

� kullakin lähettäjällä oma jono jokaiseen ulosmenolinjaan

ABC

Lähetetään vuorotellen eri jonoista.

2/6/01

� Hidastuspaketin vaikutuksen hitaus pitkillä linjoilla

� Ratkaisu:� ei pelkästään lähettäjälle� myös välissä olevat reitittimet alkavat hidastaa

2/6/01

Kuorman kevennys (Load Shedding)

� tuhotaan paketteja => kuorma kevenee� reititin täyttyy:

� mitä paketteja tuhotaan?

11 10 9 8

reititin

7 613 12

FTP: tuhotaan 8 => paketit 8-11 uudelleen tuhotaan 11 => paketti 11 uudelleenvideo: ?

� riippuu sovelluksesta� viini: vanha parempi kuin uusi� maito: uusi parempi kuin vanha

� eriarvoiset paketit� perusdata/muutokset� teksti / kuva

� käyttäjä ilmoittaa prioriteetin� arvokkaita ei tuhota� prioriteetin käytön valvonta: hinta/sallitun

lähetysmäärän ylittävät paketit

� paketti tuhottu, entä sanoma� mitä tehdään ko. sanomalle

top related