582202 Tietoliikenteen perusteet (4 op, 2 ov)

Liisa Marttinen


Erilliskuulustelu 19.8.2008
Tässä on hieman selvitetty sitä, millaisia asioita vastauksissa toivottiin olevan, sekä hieman tarkennettu arvosteluperusteita eli kuinka paljon mistäkin asiasta on/olisi saanut pisteitä.
Jos huomaatte jotain kummallisuuksia tai jopa virheitä, niin ottakaa yhteyttä.

  1. PAKETTI- JA PIIRIKYTKENTÄ, VIRTUAALIPIIRI [14 p]
    1. Mitä tarkoitetaan pakettikytkentäisellä (packet switched) ja piirikytkentäisellä (circuit switched) verkolla? (4 p)
      Tätä käsitellään kurssikirjan sivuilla 23-28.
      Pakettikytkentä: data jaetaan paketeiksi, jotka kukin lähetetään erikseen verkkoon. Ei varata resursseja etukäteen, vaan vain tarvittaessa. (2 p)
      Piirikytkentä: Lähetykselle varataan kaistaa eli linkkikapasiteettia ennen lähetystä (muodostetaan jonkinlainen suora kytkentä lähettäjältä vastaanottajalla ja sen jälkeen kaikki data lähetetään tätä varattua suoraa yhteyttä käyttäen. Kun data on lähetetty, yhteys puretaan. (2 p)

    2. Kumpi verkkotekniikka on tehokkaampaa? Miksi ja missä tilanteissa? (4 p)
      Katso kurssikirja 28-29.
      Pakettikytkentä hyödyntää tehokkaammin verkkokapasiteettia: koska resursseja ei ole turhaan varattuna, niin etenkin purskeisessa liikenteessä (= tyypillinen Internet) useampi käyttäjä voi lähettää samanaikaisesti. Vikatilanteessasiirrytään käyttämään jotain muuta reittiä. (2 p)
      Siirtoaika vaihtelee eri reiteillä ja myös samalla reitillä eri hetkinä, joten se ei sovi kovin hyvin tasaista lähetysvirtaa vaativiin lähetyksiin. (1 p)
      Piirikytkentäinen on tehokkaampaa, jos on kiinteä määrä koko ajan tasaisesti lähettäviä asemia. Ei tarvita pakettiotsakkeita eikä kuluteta aikaa pakettien reititykseen. Yhteys muodostetaan ja kaikille varataan sopiva kaista ja sitten vaan lähetetään. (1-2p)

    3. Miten paketin koko vaikuttaa pakettiverkon suorituskykyyn? (3 p)
      Tästä puuttuu vielä tekstiä!
    4. Entä millainen on virtuaalipiiriverkko (virtual circuit) (3 p)
      Kurssikirja 318-321.
      Samoin tästä!

  2. NETTISURFFAILUA [24 p] Opiskelija surffailee Internetissä ja klikkaa URL-linkkiä. Tuloksena koneen näytölle tulee näkyviin osoitetta vastaava sivu jostakin kaukana olevasta koneesta.
    1. Mitä sovelluskerroksella (application layer) tapahtuu? Mitä sovelluskerroksen toimintoja ja protokollia käytetään? Mitä sanomia ja missä järjestyksessä sovelluskerroksella lähetetään? (10 p)
      Tässä piti selostaa sekä IP-soitteen selvittämistä (DNS-protokolla) (5 p) että selaimen ja palvelimen välistä viestintää (HTTP-protokolla) klikatun sivun siirtämiseksi (5 p).
      DNS-protokollan yhteydessä:
      • miksi osoitetta tarvitaan ja kuinka se selvitetään URL:sta (välimuisti, rekursiivinen kysely, iteratiivinen kysely)
      • DNS-sanomat: kysymys ja vastaussanomia
      HTTP:n GET-sanoma ja sen vastaukseksi pyydetty sivu tarvittaessa lisäsivuja (esim. kuvia) pyydetään erikseen.
      Ekstrapisteitä on voinut saada välimuistin käytöstä, pistokeohjelmoinnista,jne.

    2. Mitä tapahtuu kuljetuskerroksella (transport layer)? Mitä kuljetuskerroksen toimintoja ja protokollia käytetään? Mitä segmenttejä ja missä järjestyksessä kuljetuskerroksella lähetään? (10 p)
      DNS käyttää UDP-protokollaa ja HTTP TCP-protokollaa omien protokollasanomiensa välittämiseen.
      DNS-kyselyviestit käyttävät yhteydetöntä UDP-protokollaa. DNS-kyselyt laitetaan UDP-kehykseen ja lähetetään heti vastaanottajalle. Vastaukset saapuvat UDP-kehyksissä. Jos vastaus on pitkä, sen lähettämiseen voidaan tarvita useita UDP-segmenttejä. Vain yksinkertainen virhetarkistus, ei uudelleenlähetyksiä yms hienouksia.

      HTTP-protokolla käyttää yhteydellistä TCP-protokollaa sanomiensa välittämiseen:

      • ensin TCP-yhteyden muodostaminen SYN-segmenteillä (kolmivaiheinen kättely)
      • GET-kyselyn lähetetään TCP-segmentissä ja vastaus eli pyydetty sivu tulee myös TCP-segmenteissä. Jos yhteys ei ole pysyvä, niin uusia, sivuun kohdistuvia pyyntöjä varten avataan omat TCP-yhteydet.
        TCP pyrkii toimimaan luotettavasti:
        • kuittaukset ja uudelleenlähettämiset: data lähetetään segmentteinä segmenttien lähetyksessä virhetarkistus + uudelleenlähetys, jos kuittaus ei tule ajoissa,
        • vuonvalvonta, jossa lähettäjä ilmoittaa paljonko pystyy ottamaan vastaan
        • ruuhkavalvonta eli hidas aloitus aina lähetyksen alussa
      • TCP-yhteyden purkaminen yhteyden päätyttyä

      Arvostelusta:

      • UDP-protokollan käyttö 2 p
      • TCP-protokollan käyttö 8 p
        • yhteyden muodostus 2
        • sanomien lähettäminen 5 p
          • HTTP-sanomien pakkaaminen TCP-segmentteihin 1
          • kuittaukset ja uudelleen lähettäminen 1-2 p
          • vuonvalvonnan maininta 1 p
          • hidas aloitus 1-2 p
        • yhteyden purku 1 p

    3. Mitä tapahtuu verkkokerroksella (network layer)? Mitä verkkokerroksen toimintoja tarvitaan? (4 p)
      Tästäkin puuttuu vielä! Täydennän, jos tai kun ehdin.

  3. LÄHIVERKOISTA [12 p]
    1. Lähiverkko koostuu useista kytkimillä (switch) yhteenliitetyistä lähiverkkosgementeistä. Verkon eräässä segmentissä oleva asema A lähettää kehyksen usean kytkimen takana olevan toisen segmentin asemalle B. Miten kytkimet osaavat ohjata aseman A lähettämän kehyksen asemalle B? Mitä tietoja ohjaamisen tarvitaan ja miten tiedot kerätään? (8 p)
    2. Kurssikirjan sivut 481- 484.
      Mm. Seuraavista asioista on saanut pisteitä
      • Kytkintaulukko, joka sisältää tietoja MAC-osoitteista ja niitä vastaavista linkeistä eli liitännän, johon ko. MAC-osoitteeseen lähetetty kehys ohjataan
      • Kytkintaulukkoa päivitetään takaperin oppimalla
      • Takaperin oppiminen = kytkin kerää tietoja kaikista sille tulleista kehyksistä ja tallettaa kytkintauluunsa lähettäjän MAC-osoitteen ja sen liiitännän, josta kehys tuli
      • Kytkintaulun alkiot poistetaan, kun niiden elinaika on kulunut umpeen
      • Jos kehyksen osoite löytyy taulusta, se osataan lähettää oikeaan liitäntään
      • Jos kehys jo tulee oikeasta suunnasta, sitä ei enää ohjata eteenpäin.
      • Jos kytkin ei löydä osoitetta taulustaan, se tulvittaa kehyksen kaikkiin muihin linkkeihin paitsi siihen, josta kehys tuli.
      • Tulvituksen takia, kytkimet eivät saa muodostaa silmukkaa, muuten kehykset jäävät kiertämään verkkoon.
      • Kytkimet ovat plug and play -laitteita

      Tässä monet olivat sekoittaneet ARP-protokollaan ja sen toimintaan. Kytkin toimii linkkitasolla eikä ymmärrä mitään IP-osoitteista.

    3. Miksi hyvin suurissa, useita tuhansia koneita käsittävissä verkkoissa on hyödyllistä käyttää verkon osien yhdistämiseen kytkimien lisäksi myös reitittimiä (router)? (4 p)
      Kurssikirjan sivut 485-487
      • Näin saadaan tehokkaampi ja varmempi reititys.
        Reititinverkoissa voi olla silmukoita ja vaikka paketti jäisi kiertämään, niin elinajan loppuun kuluttua se hävitetään. Tästä seuraa tehokkaampi reititys, sillä voidaan aina käyttää reititysalgoritmien laskemia parhaita reittejä varmempi reititys, sillä on yleensä useita reittivaihtoehtoja eri kohteiden välillä. Vaikka jokin linkki tai reititin vikaantuisi, niin kohde voidaan tavoittaa toista reittiä Tulvituksen takia kytkimistä täytyy muodostaa virittävä puu (ei siis saa olla silmukoita).
      • Reitittimet eristävät verkon liikennettä paremmin:Kytkinverkoissa seonnut isäntäkone voi aiheuttaa yleislähetysmyrskyn lähettämällä paljon linkkikerroksen yleislähetyksiä. Reititin estää myrskyn leviäminen.
      • Suuria kytkimillä yhdistettyjä verkkoja => tarvitaan isoja ARP-tauluja ja/tai paljon ARP-kyselyjä.

  4. SELITÄ LYHYESTI [10 p]
    1. Selitä palomuurin (firewall) toimintaidea. (5 p)
      Kurssikirjan sivut 737-744.
      Mm. seuraavista asioista on saanut pisteitä:
      • Palomuuri eristää sisäverkon Internetistä Palomuuri valvoo kaikkea sisäverkon ja Internetin välistä liikennettä ja sallii vain tiettyjen pakettien läpimenon.
      • Paketteja suodattava palomuuri tutkii yksittäisten pakettien (mm. IP, TCP, UDP, ICMP, ...) otsakekenttiä ja niiden perusteellä sallii tai estää paketin kulun.
      • Voidaan ottaa huomioon myös yhteyden tila.
      • Sovellusyhdyskäytävä tutkii tietyn sovelluksen sanomia ja niiden perusteella päättää läpipääsystä. Kullekin sovellukselle tarvitaan oma yhdyskäytävä.
      • Monimutkaisia sääntöjä, jotka ilmoittavat, mitkä paketit sallitaan tai estetään.
      • Esimerkki palomuurisääntöjen käytöstä

    2. Miten NAT (network address translation) -reititin toimii? (5 p)
      Kurssikirjan sivut 353-356.
      Mm. seuraavista asioista on saanut pisteitä:
      • verkko näkyy ulospäin vain yhtenä koneena
      • verkon sisällä voidaan käyttää 'yleisiä' IP-osoitteita => osoitteita säästyy
      • Kun verkon kone lähettää, niin NAT muuttaa lähettäjän osoitteeksi oman osoitteensa ja portiksi jonkun vapaan porttinumeron
      • NAT-muunnostauluun talletetaan lähettäjän IP-osoite ja portti sekä NAT:n antama porttinumero
      • Kun vastaus tulee NAT:lle, NAT osaa lähettää sen oikealle koneelle, sillä porttinumeron avulla taulusta löytyy oikea IP-osoite ja oikea porttinumero.
      • Verkon koneisiin ei voida ottaa ulkoa yhteyttä
      • Puristien mielestä verkkotasolla toimivan reitittimen ei pitäisi tietää mitään porttinumeroista. Ne ovat kuljetuskerroksen asioita.