581333-1 Tietoliikenne I

Erilliskuulustelu 4.6.2004

Lähettäjän verkkoon lähettämät paketit voivat tulla perille virheellisinä tai kadota kokonaan.>
a) Mitkä tekijät aiheuttavat virheellisiä paketteja tai pakettien katoamisia? (4p)
b) Miten vastaanottaja havaitsee paketin virheelliseksi tai huomaa paketin puuttuvan? Mitä eri keinoja ja tapoja on käytettävissä? Miten tällaisesta virhetilanteesta toivutaan? (8 p)
c) Miten Internet-protokollat IP, UDP ja TCP suhtautuvat virheisiin ja virhetilanteesta toipumiseen? (8 p)


a) -kohdassa haluttiin seuraavia asioita:

Arvostelussa: 1 piste joka kohdasta.


b)-kohdan vastauksessa haluttiin seuraavia asioita:

Virheen tai puuttuvan paketin havaitseminen

Paketin virheestä tai puuttumisesta toipuminen

Arvostelussa: Miten havaitaan virheellinen tai puuttuva paketti 4 p; miten toivutaan virheestä 4 p.


c)-kohdassa kysyttiin Internet-protokollien suhtautumisesta virheisiin ja virheestä toipumiseen.

IP (2 p)

UDP (2 p)

TCP pyrkii virheettömään tiedonsiirtoon: havaitsemaan virheet ja toipumaan niistä sekä vuonvalvonnalla että ruuhkanvalvonnalla huolehtimaan siitä, ettei turhaan hävitetä jo verkkoon lähetettyjä ja pitkälle siirrettyjä paketteja. (4 p)

2. Hidas aloitus (slow start) ja nopea toipuminen (fast recovery)

a) Mihin hidast aaloitusta käytetään? Mitä hyötyä siitä on? Voiko siitä olla haittaa? Jos on, niin missä tilanteissa? (6 p)

b) Käytetään hidasta aloitusta linjalla, jonka kiertoviive (round.trip time) on 100 ms. Linjalla ei ole ruuhkaa ja kuittaukset saapuvat ajoissa. Vastaanottajan ikkunan on 18 kilotavua ja kynnysarvo (threshold) on 30 kilotavua. Esitä kaaviona, kuinka 100 kitotavun tiedoston lähettäminen tapahtuu, kun se lähetetään 2 kilotavun segmentteinä. (8 p)

c) Oletetaan, että tiedoston segmentti 20 katoaa kokonaan ruuhkan takia. Miten lähettämistä jatketaan tämän jälkeen, jos käytössä on nopea toipuminen? (6 p)


a) Haluttiin seuraavia asioita:


Arvostelusta: kukin pääkohta (käyttö, hyöty, haitat) 2 p


b)

Ei koskaan päästä kynnysarvoon ja lineaariseen kasvattamiseen, koska vastaanottajan ikkuna rajoittaa lähettämisen 9 segmenttiin (=18 kilotavua) kerralla.


Aika läh. määrä kok. määrä

0 1 = 2 kB 2 kB eksponentiaalinen kasvatus

100 2 = 4 kB 6 kB

200 4 = 8 kB 14 kB

300 8 =16 kB 30 kB

400 9 = 18 kB 48 kB ruuhkavalvonta => 32 kB, mutta vastaanottajan ikkuna = 18 kB

500 9 = 18 kB 66 kB

600 9 = 18 kB 84 kB

700 8 = 16 kB 100 kB ei ollut enempää lähetettävää!


Hitaalla aloituksella ruuhkaikkunaa kasvatetaan segmentin maksimikoosta (MSS) 2 kB aloittaen. Lähetettävää määrää aina kaksinkertaistetaan arvoon 16 kB asti. Seuraava arvo olisi 32 kB:tä, mutta vastaanottajan ikkunan koko on 18 kB ja tämä rajoittaa lähetyksen määrän.


Arvostelusta: vastaanottajan ikkunan merkitys 2 p

eksponentiaalinen kasvatus 3 p

selkeä ja ymmärrettävä kaavio 2 p

järkevät luvut ja ajat 1 p


c)

400 9 = 18 kB 48 kB segmentti 20 katoaa tästä lähetyksestä (15, 16,17,18,19 menevät ok)

500 4 = 8 kB 56 kB (20 , 21, 22, 23)

600 5 = 10 kB 66 kB

700 6 = 12 kB 78 kB

800 7 = 14 kB 82 kB

900 8 = 16 kB 98 kB

1000 5 = 10 kB 108 kB (koska 4 segmenttiä jouduttiin lähettämään uudestaan)




Koska käytössä on nopea toipuminen, niin jo kolme toistokuittausta segmentistä 19 (eli kaikkiaan 4 kuittausta ack 20) riittää käynnistämään segmentin 20 uudelleenlähetyksen. Ei siis välttämättä odoteta uudelleenlähetysajastimen laukeamista.

Jos 4. ack 19 -kuittaus tulee ennen ajastimen laukeamista, niin ruuhkaikkunan arvoksi tulee puolet sillä hetkellä käytetystä lähetysmäärästä = 9 DIV 2 = 4 segmenttiä. Myös uudeksi kynnysarvoksi tulee 4 segmenttiä. Lähetysmäärää kasvatetaan tämän jälkeen lineaarisesti eli ensin 4, 5, 6, 7, 8 ja5 segmenttiä. Tähän lähetys loppuukin, jos joudutaan lähettämään kaikki kadonneen jälkeiset segmenti (GBN) eikä muita ongelmia esiinny.


Jos ruuhka on niin paha ettei toistokuittauksia tule, niin joudutaan hitaaseen aloitukseen.


Arvostelusta: nopean toipumisen toiminta 3 p

toistokuittaukset 2 p

uudelleenlähetysajastin 1 p

Tässä ei tarvinnut piirtää kaaviota, sanallinen selostus riitti.

3. Yhteiskäyttöinen siirtokanava jaetaan eri tavoin monen käyttäjän kesken. Esimerkkejä eri tavoista ovat Ethernet-lähiverkossa käytetty CSMA/CD-protokolla ja langattomissa verkoissa käytetty CDMA.

a) Miksi tarvitaan yhteiskäyttöisen kanavan käytön sääntelyä? (3 p)

Yleensä yhteiskäyttöisenä kanavana pidetään eetteriverkkoa ja ilmatietä, mutta myös kanavoitua kaapelia ja johtoa voidaan pitää yhteiskäyttöisenä kanavana.

Jos useampi kuin yksi mahdollinen lähettäjä, niin voivat lähettää samaan aikaan ja lähetykset sotkeutuvat eikä mitään järkevää mene perille. Tämä on lähetyskapasiteetin hukkakäyttöä. Jotta näin ei pääsisi käymään, niin on jotenkin sovittava lähetysvuoroista tai lähetystavoista.

(PerusALOHAssa kukin sai lähettää, milloin halusi ja törmäystilanteessa odotettiin satunnainen aika => maksimaalinen kapasiteetin hyötykäyttö 18%) (3p)



b) Miten CSMA/CD toimii? Simuloi Ethernetin CSMA/CD-väylän toimintaa alkaen

tilanteesta, jossa

- asema A on lähettämässä,

- ja A:n lähetyksen aikana asemat B ja C haluavat ryhtyä lähettämään.

Mitä sitten tapahtuu? Miten B ja C toimivat? Kuinka B ja C saavat lähetettyä omat

kehyksensä? (8 p)


Lähettämään pyrkivä 'kuuntelee linjaa' ja havaitsee, jos kanava on varattu eli joku jo lähettää.

Jos kanava on vapaa, niin lähetetään.

Jos tulee törmäys (myös törmäys huomataan) eli useampi aloittaa lähettämisen samalla kertaa, kaikki törmänneet keskeyttävät lähettämisen ja suorittavat binääristä peruuttamista. Ne yrittävät uudestaan valitsemallaan hetkellä eli kuuntelevat ja jos ei kukaan lähetä, niin lähettävät ja törmäysvaara-ajan sisällä varmistuvat, ettei törmäystä ole tapahtunut.


A on lähettämässä

B haluaa lähettää, mutta huomaa kanavan olevan käytössä (havaitsee jännitettä) ja jää odottamaan

kanavan vapautumista

C haluaa lähettää, mutta huomaa kanavan olevan käytössä, joten jää odottamaan kanavan

vapautumista

.....

A lopettaa lähetyksensä ja kanava vapautuu,

B ja C havaitsevat kanavan vapaaksi ja kumpikin lähettää

B ja C huomaavat törmäyksen tapahtuneen (tavallista suurempi jännite) ja keskeyttävät lähetyksensä.


=> Binäärinen perääntyminen (Binary backoff):

B valitsee satunnaisesti kahdesta odotusajasta:

0 = ei odoteta, vaan aloitetaan lähetys heti, jos kanava on vapaa eli kukaan muu ei ole jo

lähettämässä

1 = odotetaan yksi aikaviipale ja sen jälkeen aloitetaan lähettäminen, jos kanava on vapaa


C toimii samoin

Lähetys onnistuu, jos toinen valitsee vaihtoehdon 0 odotusta ja toinen vaihtoehdon 1 aikaviipaleen odotus. Tällöin heti lähettävä pääsee lähettämään ja toinen halutessaan lähettää havaitsee kanavan jo varatuksi. Olettaen, ettei kukaan muu ( A tai joku D) ole ehtinyt aloittaa omaa lähetystään.

Jos molemmat valitsevat samoin, niin seuraa taas törmäys ja nyt kumpikin valitsee satunnaisesti 2**2 = 4 mahdollisuudesta itselleen sen aikaviipaleen, jolloin lähettää (odotusaika = 0, 1, 2 tai 3 aikaviipaletta) ja lähettää valitsemassaan aikaviipaleessa, jos kanava on silloin vapaa.

Jos törmäily yhä jatkuu, niin vaihtoehtojen määrää kasvatetaan, Törmäys i. kerran => vaihtoehtoja 2 ** i, kun i < tai = 10. Maksimissaan vaihtoehtoja 1024. Tällä yritetään vielä 6 kertaa ja sitten luovutaan ja ilmoitetaan virheestä ylemmälle kerrokselle.

Törmäys voi tapahtua jonkun muun lähettämään pyrkivän kuin pelkästään C:n ja B:n kesken.

Aikaviipale on valittu siten, että törmäys kaukaisimpienkin asemien välillä havaitaan yhdessä aikaviipaleessa.

Arvostelu:


c) Miten CDMA jakaa yhteiskäyttöisen kanavan eri käyttäjille? (5 p)


Kullakin asemalla on oma sirukoodinsa ykkösbittiä ja nollabittejä varten. Sirukoodin pituus on 128 bittiä ja ykkösbitin koodi on nollabitin komplementti.

Kun sirukoodit valitaan niin, että ne ovat kaikki keskenään ortogonaalisia, niin samanaikaiset lähetykset eivät häiritse toisiaan, vaan muodostavat yhteissignaalin, josta vastaanottaja pystyy erottamaan kunkin eri lähettäjän lähetyksen, kun tuntee tämän sirukoodin.

Lisäksi voi selittää tarkemmin vaikka esimerkin avulla, kuinka yhteissignaali syntyy ja kuinka siitä pystytään erottamaan kunkin samanaikaisen lähettäjän lähettämät bitit.


Arvostelu: Pisteitä sai suunnilleen seuraavista asioista


d) Mitä muita tapoja yhteiskäyttöisen siirtokanavan kapasiteetin hyödyntämiseen voidaan käyttää? (4 p)

d) Muita tapoja ovat TDM, FDM, tilastollinen aikajako, pollaus, erilaiset muut vuoronantomenetelmät (vuoromerkki), erilaiset varausmenetelmät.

Arvostelu: Näissä riitti pelkkä maininta ja muutaman sanan luonnehdinta, joka selvitti, että vastaaja tietää, mistä puhuu. Pisteitä sai yhden pisteen kustakin eri menetelmästä. Täydet 4 pistettä siis kertomalla neljä muuta menetelmää.