Kokeen 27.04.01 arvostelusta. ============================= Huom! Vielä keskeneräinen. Lisää arvosteluperusteita tulee. ============================================================================== Tehtävä 1. a) Pakettivälitteinen Lähetettävä sanoma pilkotaan paketeiksi ja kukin paketti kulkee verkossa itsenäisesti. Jokaisessa paketissa on koko vastaanottajan osoite. Reititin käsittelee kunkin paketin erikseen => viiveitä, paketin katoaminen puskurien täytyttyä, paketit voivat tulla väärässä järjestyksessä. Resursseja ei varata etukäteen, vaan kukin paketti saa resursseja tarpeen mukaan => resursseja ei kulu turhien varaustesten takia. b) kanavointi Siirtokanava jaetaan jollakin tavalla usean käyttäjän kesken. (1 p) Taajuusjakokanavoinnissa eri taajuusalueet, aikajakokanavoinnissa eri aikaviipaleet, koodijakokanavoinnissa eri koodit (1 p) c) Siirtonopeus Nopeus yleensä bitteinä sekunnissa, jolla dataa siirretään linjalle, eli kertoo, miten paljon bittejä voidaan tietoväylään lähettää sekunnissa. etenemisviive (Propagation delay) aika, jonka kuluessa signaalit etenevät siirtokanavassa lähettäjän koneesta vastaanottajan koneeseen. Aika riippuu etäisyydestä ja hieman myös käytetystä siirtovälineestä. Signaalien etenemisnopeus on noin 2/3 valonnopeudesta. d) korjaava koodaus Lähetettyyn kehyksen (pakettiin) liitetään niin paljon informaatiota, ettei vain havaita virheen tapahtuneen, vaan vastaanottaja pystyy myös korjaamaan virheen. Hammingin koodi ja Reed-Salomonin koodi ovat esimerkkejä korjaavasya koodauksesta. e) Valikoiva toisto Yleensä virheestä ja erityisesti paketin katoamisesta toivutaan virheellisen tai puuttuvan paketin uudelleenlähettämisellä. Valikoivassa toistossa vastaanottaja tallettaa puskuriinsa kaikki virheettömät paketit, joiden järjestysnumero on sen liukuvassa ikkunassa. Näin lähettäjän tarvitsee lähettää uudestaan vain virheelliset ja puuttuvat paketit. Näistä on saanut 0-2 pistettä sen mukaan, miten paljon asiasta on tiennyt. 2.a) DNS: selvitetään sähköpostiosoitetta vastaava IP-osoite. Käytetään UDP-sanomia DNS-viestien lähettämiseen. (2 p) Sähköpostin lähetys lähettäjän ja vastaanottajan postijärjestelmän välillä käyttäen SMTP-protokollan sanomia(HELO, MAIL FROM, RCPT, DATA, ., QUIT ja niiden vastauksia). SMTP-sanomat lähetetään TCP-segmentteinä. (3 p) Postin siirto käyttäjän koneesta omaan postipalvelimeen SMTP:llä ja postin lukeminen POP3- tai IMAP-protokollalla. b) 3. a) TCP käyttää hidasta aloitusta aina yhteyden alussa ja uudelleenlähetysajastimen lauettua. Varovaisella aloituksella etsitään verkon kapasiteetin rajoja ja pyritään näin estämään ruuhkan syntyminen. Hitaan aloituksen avulla päästään melko nopeasti (eksponentiaalisesti) kasvattamaan lähetysmäärä verkon sallimiin rajoihin. Hitaasta aloituksesta on haittaa esim. linjoilla, joissa on runsaasti siirtovirheita, koska nämä tulkitaan ruuhkaksi ja aloitetaan hidas aloitus. Tästä on haittaa etenki GSM-linjalla, jossa linjavirheen tai katvealueen takia joudutaan turhaan hitaaseen aloitukseen eikä pystytä hyödyntämään kokonaan linjan muutenkin pientä kapasiteettia. c) Uudeksi kynnysarvoksi puolet sen hetkisestä lähetysmäärästä. Aloitetetaan hidas aloitus eli asetetaan lähetysikkunan kooksi yksi ja lähetetään ensin puuttuva segmentti uudelleen. Sen jälkeen voidaan jatkaa lähetystä lähettämällä uusia segmenttejä. Jos puuttunutta seuraavankin segmentin ajasti ehtii laueta, joudutaan uudelleen hitaaseen aloitukseen. Jos käytössä on nopea uudelleenlähetys ja nopea toipuminen ja saadaan toistokuittauksia, niin ei aloiteta hidasta aloitusta, vaan jatketaan lähettämällä puuttuvan segmentin jälkeen seuraavaksi vuorossa olevia segmenttejä samaan tahtiin kuin vastaanottaja kuittaa aikaisempia lähetyksiä. Näin toimitaan kunnes saadaan kuittaus uudelleen lähetettyyn segmenttiin ja 4. Etäisyysvektorireititys a) Jokainen verkon reititin pitää yllä etäisyystaulukkoa, jossa on jokaiseen verkon kohteeseen etäisyys ja portti tai linkki eli mille välittämälle naapurille sanoma on ohjattava. Reititin selvittää etäisyyden välittömiin naapureihinsa ja vaihtaa näiden kanssa etäisyystietoja (reititystaulut). Naapurien lähettämien etäisyystaulujen avulla reititin laskee uudelleen etäisyydet kaikkiin kohteisiin ja valitsee omaan reititystauluunsa lyhyimmät etäisyydet sekä lisää tiedon, minkä naapurin kautta tämä lyhyin reitti kulkee. Naapureille ilmoitetaan aina uudet etäisyydet, kun tulee muutoksia. Eli pisteen on saanut, kun on kertonut - selvittää itse etäisyydet (kustannukset) välittömiin naapureihin - lähettää reititystaulunsa tiedot välittömille naapureilleen aina kun omat reititystiedot muuttuvat; tietojen vaihto vain välittömien naapureiden kanssa, tietojen vaihto asynkronista - kun saa naapuriltaan uudet reititystaulun tiedot,laskee uudelleen etäisyydet kaikkiin kohteisiin tämän naapurin kautta - päivittää omaan reititystauluunsa kaikkien tämän solmun kautta kulkevien kohteiden etäisyydet sekä solmun kautta löytyneet aikaisempaa lyhyemmät (pienemmän etäisyyden) reitit kohteisiin, joihin aikaisemmin lähetetty kunkun muun solmun kautta. b) Esimerkkinä voi käyttää kolmea peräkkäistä solmua A --- B ---- C, joiden välillä etäisyys on 1. Kun yhteys A: ja B: väliltä katkeaa, niin B kyllä huomaa sen, mutta C kertoo sillä olevan etäisyyden 2 A:han, jolloin B saa omaksi etäisyydekseen A:han 3. Nyt C huomaa etäisyyden A:han olevankin 4 ja kun B saa tämän tiedon, se päivittää omaksi etäisyydekseen 5. Ja näin jatketaan etäisyyttä hitaasti kasvattaen (count to infinity). Kun yhteys A:sta B:hen palautuu, B huomaa sen olevan 1 ja ilmoittaa tästä heti C:lle ja C saa omaksi etäisyydekseen heti 2. Yritys ratkaista: Sille solmulle, jonka kautta reitti kulkee, ilmoitetaan etäisyydeksi aina ääretön eli jos A:n reitti C:lle kulkee B:n kautta, niin A ilmoittaa B:lle etäisyyden C:hen äärettömäksi. Ratkaisua kutsutaan Kurose, Rossissa nimellä Poisoned Reverse ja Tanenbaumissa Split Horizon. Tässä tehtävässä useat ovat sekoittaneet linkkitilareititykseen. Jos linkkitilareititys on selostettu hyvin, siitä on saanut muutamia pisteitä. 5. Tuntumaton silta Lähettävä solmu N1 lähettää sanoman omaan lähiverkkoonsa A. Silta huomaa, että vastaanottajaa vastaava liitäntäportti ei ole sama kuin lähettäjän eli ne ovat eri verkoissa, joten sillan täytyy välittää sanoma toiseen verkkoon. (1 p) Sillassa osoitetaulu, jossa on sen tietämien koneiden koneosoite ja sitä vastaava liitäntänumero, joka kertoo, mihin liitäntäporttiin tälle koneelle osoitetut sanomat tulee lähettää. Silta tuntee kaikkien siihen liitettyjen verkkojen koneet. (2 p) Kun silta saa sanoman, joka on menossa sillan kautta toiseen lähiverkkoon, niin silta katsoo taulustaan portin, jonne sanoma lähetetään. (1 p) Jos ei löydy taulusta, niin silta tulvittaa sanoman kaikkiin muihin ulosmenoihin kuin siihen, josta sanoma tuli. (1 p) Jotta tulvitus päättyisi, niin verkosta on muodostettu virittävä puu, jolloin verkon sillat eivät muodosta silmukoita. (1 p) Silta ei aluksi tiedä mitään ja sen taulut ovat tyhjät. Se oppii kuuntelemalla kaikkea sen verkoissa liikkuvaa liikennettä ja keräämällä tietoja lähettäjistä ja porteista, joista niiden lähettämät sanomat tulevat. Vanhoja tietoja hävitetään ja päivitetään koko ajan. (2 p)