Tietoliikenne, kevät 2000

Harjoitustehtävät 5 (22.-25.2.) ( Tanenbaum ss. 175-239)

1. Vastaa hyvin lyhyesti seuraaviin kysymyksiin ("review"-tyyppinen tehtävä: vastaukset löytyvät lähes suoraan luennoilta tai kirjasta).
a) Mikä on Hamming-etäisyys?
b) Miksi linkkiprotokollissa tarkistussumma CRC on peräkkeessä (trailer) eikä otsakkeessa?
c) Mikä on liukuva ikkuna? Miten se vaikuttaa lähettäjän/vastaanottajan elämään? Miten ikkunan koon kasvattaminen vaikuttaa protokollan suorituskykyyn?
d) Miksi 1-bittinen järjestysnumero riittää IRQ-protokollassa (= Stop and Wait -protokolla)?
e) Jos ikkunan koko on K, niin valikoiva toisto (Selective Repeat) tarvitsee järjestysnumeroita 2K verran. Anna esimerkki tapauksesta, jossa pienempi järjestysnumeroiden määrä johtaa virheeseen.
f) Mikä on Petri-verkko? Mihin sitä käytetään?
Huom! g)-i) vasta seuraavalla viikolla!
g) Miten eroavat HDLC:n moodit NRM ja ABM?
h) Mikä on PPP? Miten PPP suhtautuu särkyneisiin / kadonneisiin kehyksiin?
i) Miksi vastaanottajan on vaikea havaita, mistä ATM-solu alkaa?

2. a) Erään datavirran (data stream) KESKELLä esiintyy seuraava jono (ASCII-merkeillä kuvattuna): DLE STX A DLE B DLE ETX. Miltä jono näyttää, kun siihen on kohdistettu "character stuffing" -toimenpide? Miten vastaanottaja erottaa kehyksen lopun keskellä virtaa olevasta vastaavasta DLE ETX -merkkijonosta? Miten kehystahdistuksen käy, jos jokin DLE-, STX- tai ETX-merkki vääristyy?
b) Jos käytetään 'bitin lisäämistä' (bit stuffing), voiko yhden bitin virhe eli bitin katoaminen, muuttuminen toiseksi tai kahdentuminen aiheuttaa sellaisen virheen, jota tarkistussumma ei huomaa? Perustele vastauksesi. Onko tarkistussumman bittien lukumäärällä merkitystä?

3. Simuloi
a) Go-Back-N -protokollan toimintaa,
b) implisiittistä uudelleenlähetystä käyttävän Selective Repeat -protokollan toimintaa (NAK ei käytössä),
c) NAK-kuittausta käyttävän Selective Repeat -protokollan toimintaa (NAK(N) ilmoittaa, että kehystä I(N) ei ole saatu),
kun häiriöpurske tuhoaa peräkkäin kehykset I(N+1) ja ACK(N) sekä sitä seuraavan kuittauksen.

4. a) Millä eri tavoin lähettäjä voi havaita kehyksen uudelleenlähetystarpeen? Miten eri tavat vaikuttavat eri protokollien suorituskykyyn?
b) Esitetty Go-Back-N -protokolla käyttää kumulatiivista kuittausta ja eksplisiittistä uudelleenlähetyspyyntöä. Voitaisiinko kumulatiivisen kuittauksen sijaan käyttää yksilöllistä kuittausta (jokainen saapunut kehys kuitataan)? Entä voitaisiinko NAK jättää kokonaan pois?
c) Onko ajastin välttämätön kaikissa em. protokollissa?

5. Kehyksiä, joiden koko on 1000 bittiä, lähetetään yli 1 Mbps satelliittikanavan. Kuittaukset tulevat "piggybacked"-menetelmällä takaisin. Otsikot (headers) ovat hyvin lyhyitä. Järjestys numerot ovat 3-bittisiä. Millaiseen kanavan käyttöasteeseen voidaan päästä, jos käytetään
a) Idle RQ (Stop-and-Wait) -protokollaa,
b) paluu n:ään ( Go-Back-N) -protokollaa,
c) valikoivan toiston (Selective Repeat ) protokollaa?

Tehtävä 6 siirtyy ensi viikkoon!
6. Tietoliikenneprotokolla noudattaa HDLC-standardia ja käyttää virheenkorjaukseen valikoivan toiston (Selective Repeat ) menetelmää. Kuvaa seuraavan toimenpidesarjan aikaansaamien HDLC-kehyksien oleellinen sisältö:
(- ensiöasema P herättää toisioaseman S:n vastaanottoon,)
- P lähettää S:lle joukon tietokehyksiä,
- häiriö tuhoaa kehyksen N+1 ja kuittauksen N,
- kehysten ja kuittausten vaihto jatkuu ...

--------------------------------------------------------------------------------------
Läsnäolokriteeri: vähintään kolme tehtävää tehtynä, tehtävän 1 on sisällyttävä niihin.