Oppimispäiväkirja

Oppimispäiväkirjaan kirjataan omalta osin omaan oppimiseen vaikuttavia tekijöitä.

Ennakkonäkemys aihealueesta

Kurssin aluksi opiskelijat kirjaavat näkemyksensä tietoliikenteestä tähän kohtaan omaa oppimispäiväkirjaansa. Näkemys sinällään ei tarvitse olla pitkä selostus max 10 riviä tekstiä ja max 10 avainsanaa.

Tietoliikenne pitää sisällään kaikki komponentit ja käytännöt/protokollat millä tietoa voidaan siirtää eri menetelmin paikasta A paikkaan B. Tähän sisältyy mm. Internet ja sen osat kaapeloinnista kytkimiin ja langattomiin tukiasemiin, mobiiliverkot, radio, TV, sateelliitit ja kirjekyyhkyt. Tietoliikenteeseen liittyy myös joukko protokollia miten data siirtyy. Näit ovat mm. mitä taajuuksia käytetään, Internettiin liittyviä FTP, TCP/IP, ipv4 ja ipv6 sekä paljon muita.

Luentoyhteenvedot

Luentopäivä 1:
  • Päivän aihe: Johdanto / Tietokoneverkot ja Internet (Luku 1)
  • Päivän tärkeimmät asiat:
    • Internetin peruskomponentteja

  • Sisältää protokollia, jotka määrittävät kuinka tieto käyttäytyy
  • Network edge (verkon rajapinta?) ja millä eritavoin käyttäjä voi päästä Internettiin
    • DSL, digital subscriber line joka toimii lankapuhelinverkossa
    • Kaapeliverkko, samalla coax-kaapelilla millä TV-lähetyksiä lähetetään
    • Koti- ja yritysverkon eroja
    • Erilaisia langattomia teknologioita, LAN ja 3G/4G/LTE
    • Miten tietoa lähetetään, paketeissa pala kerrallaan
    • Fyysisen median lähetystapoja, coax- , lasikuitukaapeli sekä radio
  • Network core (verko ydin?)
    • Miten tietoa lähetetään paketeissa pala kerrallaan haluttuun päämäärään
    • talleta-ja-lähetä menetelmä, missä kokopaketin täytyy saapua reitittimelle ennenkuin se voidaan lähettää eteenpäin.
      • Jos reitittimen muistin puskuri täytyy ja kokonainen paketti ei mahdu, voi paketteja “tippua” tai hävitä
    • Piirikytkentä, missä tietty linkki piirissä varataan tietylle yhteydelle
      • Kun yhteyttä ei käytetä, myöskään kukaan muu ei voi sitä käyttää
    • Kummassakin tavassa omat heikkoudet ja vahvuudet, pitää valita käyttätarkoituksen mukaan
  • Mitä opin tällä kertaa:
    • Uutta minulle oli eri tiedonsiirtomenetelmät (talleta-ja-lähetä & piirikytkentä?) ja miten eri signaaleja voidaan lähettää samassa kaapelissa useita.
  • Jäi epäselväksi:
    • Reititys jäi vielä hieman epäselväksi. Ymmärsin että tietyllä osoitteella oleva paketti etsii reitittimien listalta oikean päämääränsä.
Luentopäivä 2:
  • Päivän aihe: Internetin rakenne (Luku 1) & Sovelluskerros (Luku 2)
  • Päivän tärkeimmät asiat:
    • Internet rakentuu paikallisista palveluntarjoajista (access ISP), jotka ovat yhteydessä globaaleihin palveluntarjoajiin (Tier 1 ISP), jotka ovat yhteydessä toisiinsa suoraa tai IXP:n kautta. Tämän lisäksi on olemassa sisällön tarjoajien omia verkkoja, jotka ovat suoraan yhteydessä paikallisiin palveluntarjoajiin (Google, Microsoft).

  • Tarkempi katsaus, mistä johtuu pakettien hävikki ja viive (nodal = processing + queueing + transmission + propagation).
    • Traceroute.
    • Läpimeno, verkko sisältää usein pullonkauloja, jotka rajoittavat yhteyden nopeutta.
  • Protokollakerrokset
    • Helpottaa monimutkaisten järjestelmien hallintaa
    • Internetin protokolla pino (Stack), kullakin kerroksella oma tehtävänsä

  • Turvallisuus
    • Internettiä ei alunperin suunniteltu turvalliseksi (yhteys luotettavien partnerien välillä)
    • Haittaohjelmat
      • Virukset
      • Madot
    • Vakoiluohjelmat, tallentavat tietoja käyttäjästä
      • DDoS (palvelunesto) hyökkäykset, lamauttavat palvelun kuormittamalla liikenteen palvelimelle
      • Pakettien/verkon “haistelu” (sniffing)
  • Internetin historiaa
    • Ensimmäiset yhteydet Suomessa 1980-luvulla
  • Sovelluskerros (Verkkosovelluksia: sähköposti, VOIP, Youtube, SOME jne.)
  • Verkkosovelluksien luonti
    • Pitää toimia eri systeemeissä
    • Kommunikoi verkon yli
    • Ei tarvetta ohjelmoida verkon ytimen laitteille
  • Mahdollisia rakenteita: client-server, P2P

  • Soketti (ovi): prosessi lähettää/vastaan ottaa viestejä sille määrätystä soketista tai sokettiin.
  • Prosessin osoite: jotta viestejä voidaan vastaan ottaa, täytyy prosessilla olla tunniste (IP-osoite, porttinumero)
  • Sovellustason protokollat määritävät
    • Minkälaisia viestejä vaihdetaan (pyyntö, vastaus)
    • Viestin syntaksi (mitä kenttiä viestissä on..)
    • Viestin semantiikka (informaation merkitys kentissä)
    • Säännöt (kuinka ja miten käsitellään, lähetetään, vastataan viestehin)
    • Avoimet protokollat (HTTP, SMTP)
    • Omistusprotokollat (Skype)
  • Mitä siirto palveluita ohjelmistot tarvitsevat: tiedon eheys, ajastus, läpimeno, turvallisuus
    • Eri ohjelmilla eri tarpeita: kaksi protokollaa TCP & UDP
      • TCP: luotettava, säädelty, vaatii yhteyden client-server välillä; ei tarjoa ajastusta, vähäinen läpimenotakuu, turvallisuutta (tätä varten SSL) → käytetään kun tietoa ei saa hävitä (email)
      • UDP: epäluotettava; ei tarjoa säätelyä, ajastusta, läpimenotakuuta, turvallisuutta ym. → käytetään kun hävikillä ei ole niin merkitystä (videon striimaus, youtube ym.)
  • Mitä opin tällä kertaa:
    • Internetin protokollapino, miten tietoa käsitellään eri kerroksissa
    • Jotain uutta tietoturvasta ja internetin historiasta
    • Paljon uutta sovelluskerroksesta
  • Jäi epäselväksi:
    • Soketti ja sen tarkoitus jäivät hieman epäselviksi
Luentopäivä 3:
  • Päivän aihe: Sovelluskerros
  • Päivän tärkeimmät asiat:
  • 2.2 Web ja http
    • Sivusto koostuu objekteista, joita voivat olla HTML-tiedosto, kuva, Java ohjelma ym.
    • Objektit eivät ole sivulla, vaan HTML-tiedostossa on vain viitattu kyseiseen objektiin, joka löytyy erillisen URL:n takaa
  • HTTP: Hypertext transfer protocol
  • Verkon sovellustason protokolla, asiakas/palvelin malli
    • Asiakas lähettää pyynnön käyttäen (http protokollaa) nähdä objektin johon palvelin vastaa lähettämällä kyseisen objektin.
    • Käytetään TCP yhteyttä luomaan yhteys asiakkaan ja palvelimen välille kutakin objektia varten (pysymätön) vs. pysyvä jossa yhteys jätetään päälle
    • RTT (Round-trip delay time) eli paketin edestakaisin siirtymiseen kuluvasta ajasta johtuva viive (pysymättömässä 2xRTT + tiedoston lähetys aika vs. pysyvässä tarve vain yhdelle RTT:lle)
    • HTTP pyyntö ja vastaus viestit (404 Not Found), mahdollista testata itse (telnet ym.)
    • Evästeet
      • käytetään tunnistautumiseen, suosituksiin ym.
      • tieto säilytetään asiakkaalla, palvelin päässä vain viittausnumero kyseiselle tiedolle
    • Proxy palvelin
      • luodaan yhteys haluttuun palvelimeen proxyn kautta jolloin haluttu data haetaan proxy palvelimelta eikä suoraan alkuperäiseltä palvelimelta
        • voidaan mahdollisesti hakea tieto lähempää
        • pysytään anonyyminä
  • 2.3 FTP (the file transfer protocol)
    • Protokolla jota käytetään tiedostonsiirton hostin ja serverin välillä TCP- yhteyttä käyttäen.
    • Sisältää listan erilaisia komentoja ja vastauksia niihin
  • 2.4 Elektroninen posti (SMTP, POP3, IMAP)
    • Lähetysprosessi sisältää:
      • Käyttäjän ja käyttämän sähköpostisovelluksen (Outlook, Thunderbird, selain ym)
      • Sähköpostipalvelin, jossa on käyttäjien postilaatikot ja lähetysjono. Käyttää SMTP protokollaa
        • Postien lähettämiseen käytetään SMTP:tä eli simple mail transfer protokollaa
        • SMTP käyttää jatkuvaa yhteyttä, versus HTTP pull & push
      • Käyttäjällä erilaisia tapoja päästä käsiksi omaan postilaatikkoonsa ja hakea tietoja palvelimelta:
        • IMAP: Internet Mail accesss protocol
        • POP: Post office protocol
        • HTTP: Selain pohjainen.

  • POP ja IMAPn erona, IMAP pitää kaikki viestin palvelimelta, POP lataa laitteelle
  • 2.5 DNS
  • Domain name server antaa verkko-osoitteelle (esim. www.lut.fi) IP-osoitteen tunnistamista varten
  • DNS hierarkia:

  • DNS nimenselvitys esimerkki:

  • Kun DNS palvelin oppii kartoituksen, se siirtää tämän välimuistiin (caching), jotta kyseistä reittiä ei tarvitse hakea alusta asti uudestaan.
  • Eri DNS hyökkäyksiä: DDoS, TLD palvelimen tykitys, uudelleenohjaus hyökkäykset
  • Jäi epäselväksi:
    • Epäselväksi cache = välimuisti
Luentopäivä 4:
  • Päivän aihe: Kappale 2: Kuljetuskerros ja protokollat & Kappale 3: Kuljetuskerros
  • Päivän tärkeimmät asiat:
  • 2.6 P2P sovellukset
    • Arkkitehtuuri: ei aina palvelimella, käyttäjät keskenään yhteydessä esim. (BitTorrent, KanKan, Skype)
    • Jokainen käyttäjä tuo lisää palvelukapasiteettia verrattuna asiakas-palvelin malliin
    • BitTorrent suosii käyttäjiä, jotka jakavat enemmän, tit-4-tat
    • DHT = distributed hash table, tietovarasto käyttäjä- ja muiden tietojen tunnistamista varten.
    • käyttäjien menemistä ja tulemista kutsutaan kirnuamiseksi (churn)
  • 2.7 Sokettiohjelmointi UDP:tä JA TCP:tä käyttäen.
    • Soketti on ohjelman prosessin ja päästä-päähän-kuljetuksen protokolla

  • UDP-yhteyttä käyttäen:
    • ei “yhteyttä” asiakkaan ja palvelimen välillä
    • data voi kadota tai vastaanotetaan vanhentuneena = epäluotettava
  • TCP-yhteyttä käyttäen:
    • Asiakkaan täytyy yhdistää palvelimeen = luotettava
  • 3.1 Kuljetuskerroksen palvelut
    • Tarjoaa loogisen kommunikoinnin eri isännässä toimivien sovellusprosessien välillä
    • Kuljetusprotokollat toimivat pääty systeemeissä
    • Internetin kuljetuskerroksen protokollat: TCP, UDP. Ei tarjoa viive ja kaistanleveys takuita
  • 3.2 Multipleksaus ja epä-multipleksaus
    • Lähettäjän multipleksaus: käsittelee dataa useista soketeista, lisää kuljeutustunnisteen
    • Vastaan ottajan epä-multipleksaus: käyttää tunnistetietoja lähettääkseen vastaanotetut segmentit oikeisiin soketteihin (isäntä käyttää IP-osoitetta ja porttinumeroa ohjaukseen.)
    • epä-multipleksaus erimerkki (yhteydetön):

  • 3.3 Yhteydetön kuljetus: UDP
    • On olemassa koska: Ei tarvetta muodostaa yhteyttä (joka voisi lisätä viivettä), yksinkertainen (ei yhteyden tilaa lähettäjällä/vastaanottajalla), pieni tunnistekoko, ei ruuhkakontrollia (voi lähettää kuinka nopeasti haluaa)
    • UDP Checksum: tunnistaa virheitä siirretyissä segmenteissä
  • 3.4 Luotettavan datan siirron periaatteita
    • tärkeää sovellus, kuljetus ja linkki kerroksissa
    • rdt = reliable data tranfer protocol
  • Jäi epäselväksi:
    • Multipleksaus
    • Demux
    • Churn
    • rdt
Luentopäivä 5:
  • Päivän aihe: Kuljetuskerros
  • Päivän tärkeimmät asiat:
  • 3.4 Luotettava tiedonsiirto
    • rdt3.0 rajoittaa linkin käyttö (stop-and-wait)
    • Pipelining = lähetetään useampi paketti kerrallaan (enemmän sarjanumeroita)
      • esim. lähetetään 3pkt → linkin hyötysuhde kolmikertaistuu vrt. rdt3.0
      • eri protokollia
        • Go-back-N = kuitataan vain suurin sarjanumero, kaikki edeltävät saatu. Lähettäjällä ajastin vanhimmalle kuittaamattomalle paketille
        • Selective repeat = valitaan mitkä lähetetään uudestaan, koska kaikista paketeista lähetetään kuittaus & lähettäjällä ajastin kuittaamattomista
  • 3.5 TCP
    • RTT = saattaa olla olennainen viiveen takia (live pelaus)
    • TCP rdt = kuitataan tavuja
      • lähettäjä luo data segmentin #
      • käynnistää ajastimen
        • kun timeout → lähettää vanhimman uudestaan (kuittaamaton)
        • uudelleen käynnistää ajastimen
        • kun kuittaus tulee → siirretään ikkunaa eteenpäin
      • Flow Control
      • 3-tie kättely
      • TCP yhteyden sulkeminen → molempien päiden täytyy sulkea yhteys erikseen
      • ruuhkanhallinta
        • liikaa dataa verkon hallittavaksi → eri indikaattoreita (viive, kadonneita paketteja)
        • päästä-päähän → ei mitään suoraa tietoa verkosta, ruuhka päätellään viiveestä ym. TCP käyttää
        • verkko avustaa → muilta kerroksilta tietoa ruuhkasta
        • kun TCP huomaa ruuhkaa, muuttaa lähtetysikkunan kokoa
          • slow start = kasvattaa ikkunaa kunnes tapahtuu hävikki
  • Kappale 4: Verkkokerros
    • Verkkokerros
      • siirtää lähetetyt segmentit datagrammin muodossa kuljetus kerrokselle
        • jälleenlähetys
        • reititys
          • reititystaulussa tunniste, minkä perusteella oikealle rajapinnalle
      • Yhteys kahden laitteen välillä (vrt. kuljetustason kahden prosessin välillä)
      • erilaisia takuita, voi taata kaistanleveyttä jne.
      • virtuaalipiiri ( vrt. puhelinverkko)
        • käytetty ATM, frame-relay, ei käytetä Internetissä
      • datagram (Internet)
        • viisaampia päätelaitteita kuin virtuaalipiirissä
        • mukautuvampia
    • reititysarkkitehtuuri
      • reititysalgoritmit / protokollat (RIP, BGP)
      • datagrammien edelleen lähetys
    • IP
Luentopäivä 6:
  • Päivän aihe: Verkkokerros & linkkikerros (Kappaleet 4-5)
  • Päivän tärkeimmät asiat:
  • Verkkokerros
  • DHCP (Dynamic Host Configuration Protocol)
    • lainataan osoitteita, joilla on lainausaika, jonka jälkeen osoitteet kierrätetän.
    • kertoo: kuka me olemme, mikä maski, jotta voidaan katsoa keitä muita samassa verkossa, reitittimen ja DNS:n osoite
  • ICANN
    • Hallitsee / jakelee verkkotunnuksia
  • NAT (Network address translation)
    • yksi ratkaisu IP-osoitteiden loppumiselle
    • kaikille paikallisenverkon koneille riittää yksi julkinen Ip-osoite joka näkyy ulospäin.
    • NAT muuttaa LAN-osoitteen WAN-osoitteeksi + porttinumero
  • ICMP
    • Host & reitittimen välistä verkkotason viestintää esim. vikatilanteista
  • IPv6
    • 32-bittinen osoiteavaruus loppumassa
    • osoitemuoto nopeuttaa käsittelyä/edelleenlähetystä
    • 40-tavuinen viesti otsikko, jota ei saa pilkkoa
    • checksum poistettu käytöstä, uusi ICMPv6, “options” kenttä
    • Käytännössä mahdoton siirtyä kerralla
  • AS
  • Linkkikerros
  • Siirtää viestin A:sta B:hen fyysisen linkin yli
    • linkki = Ethernet, 802.11
    • tarjoaa erilaisia palveluita ja ominaisuuksia (vuonhallintaa, virheen tunnistusta)
  • linkkikerroksen hyödyntäminen (yhteyksien)
    • point-to-point
    • broadcast
    • törmäys = kaksi tai useampi viesti samaan aikaan
      • multiple access protocol, hajautettuja algoritmeja
    • TDMA
    • Random access protocol (kanavanvaraustekniikka)
      • ALOHA, CSMA, “neuvottelu”, CSMA/CD
    • LAN
      • 32-bit IP-osoite
      • 48-bit MAC-osoite (Ethernet) verkkokortilta
      • Organisaatioille annettu osa MAC-osoitteden avaruudesta komponenttien valmistusta varten
      • MAC siirrettävissä, IP ei
      • ARP = IP/MAC selvitystä varten (plug-and-play systeemi)
      • Ethernet (kytkin pohjainen malli)
        • yhteydetön, ei ole luotettava (ei kuittauksia)
        • monta erilaista standardia nopeuden /tyypin / jne. mukaan
      • Kytkin tallettaa ja edelleen lähettää Ethernet kehyksiä osoitteiden perusteella, oppii minkä linkin takana on mikäkin kone
        • linkit kaksi suuntaisia, ei törmäyksiä, monta yhteyttä saman aikaisesti
        • kytkintaulu, jos ei tiedetä, lähetetään kehys kaikkiin tunnettuihin rajapintoihin
        • kytkin käsittelee linkkitason osoitteita, reititin verkkotason
      • VLAN = virutaalinen lähiverkko
        • Jaetaan kytkimen portteja eri verkoille, eri verkot eivät näy toisilleen
        • voidaan liittää myös dynaamisesti

Mitä opin kurssin aikana

Opin paljon uutta kurssin aikana. Lähtötasoni kyseiseen aiheeseen oli lähinnä fyysisten laitteiden (reititin, kytkin jne), eri yhteystapojen ja tiettyjen käsitteiden tunnistus. Vaikka edelleen tuntuu hieman, että aihetta on vasta hieman raapaistu pinnasta, uskon silti saaneeni jonkinlaisen kokonaiskuvan verkon toiminnasta, miten tieto siirtyy eri kerroksien läpi jne. Paljon lyhenteitä ja tietyissä asioissa mentiin melko syvälle aiheeseen, jolloin muutamaan otteeseen en pysynyt enää aivan täysin mukana.

Kotitehtävät

Luento 1 Kotitehtävä

  • WIKI-sivun luonti annettujen ohjeiden mukaan (jos ei onnistu, niin yhteyttä luennoitsijaan)
  • Oppimispäiväkirjan täyttäminen luentojen osalta. Muistakaa, että oppimispäiväkirja kuvaa teidän oppimistanne ja tuo esille asioita, joista koitte ahaa-elämyksen tai jotka jäivät täysin hämärään. Jos ette olleet luennoilla, niin silloin oppimispäiväkirjamerkintä ei ole pelkästään toteamus “en ollut luennoilla” vaan silloin käydään materiaali läpi ja pohditaan itsenäisesti mitä ajatuksia läpikäyty materiaali tuo mieleen.
  • Määrittele oma näkemyksesi tietoliikenteestä oppimispäiväkirjaan. Rehellinen näkemys asiasta lyhyesti ennen mitään muuta. Siihen on hyvä verrata sitten mitä kurssilla on opittu (siis opiskelija voi verrata)
    • Mieti termejä/käsitteitä/asioita/kokonaisuuksia, joita tietoliikenne tuo mieleesi ?
  • Käy läpi luennon kalvot. Ymmärrätkö termit ja asiat mistä puhutaan?
  • Tee max 10. hengen ryhmässä suomenkieliset versiot (Kurosen) kalvoista, jotka käytiin luennolla.
    • Kahdentakaa kalvot siten, että kalvosetissänne on aina ensin englanninkielinen kalvo ja sen perässä suomennettu kalvo. Kaikkia kuvia ei tarvitse kääntää, mutta jos sama kuva esiintyy useaan kertaan niin merkitkää ensimmäiseen suomenkieliset termit.
    • Valitkaa kalvosetin laadusta vastaava henkilö joka katsoo, että käytätte termejä johdonmukaisesti.
    • Kalvosetin ensimmäiseksi kalvoksi tieto ryhmän kokoonpanosta ja kunkin tekijän panos kalvosettiin.

Luento 2 Kotitehtävä

  • Listaa vähintään kuusi internettiin pääsyteknologiaa. Luokittele ovatko kotien liittämiseen, yrityksille vai mobiileja teknologioita.
    • Kotien liittämiseen
      • Puhelinverkkoyhteys, LAN tai lähiverkko / paikallisverkko, kaapelimodeemi, DSL, valokuitu
    • Yrityksille
      • LAN, valokuitu, kaapeli, SDSL
    • Mobiileja teknologioita
      • Wifi tai langatonverkko, satelliittilaajakaista, mobiililaajakaista 3G / 4G / LTE
  • Mitä Internettiin pääsyteknologioita on tarjolla Lappeenrannassa?
  • Puhelinverkkoyhteys, LAN, kaapelimodeemi, DSL, valokuitu??, Wifi, mobiililaajakaista
  • Mikä on asiakas ohjelma? Mikä on palvelin ohjelma? Kuinka ne toimivat yhteen?
    • Asiakas ohjelma on osa tietokoneen rautaa tai ohjelmistoa, joka luo yhteyden palvelimen tarjoamaan palveluun. Asiakas ohjelma ei kommunikoi suoraan toisen asiakkaan kanssa, vaan aina palvelimen kautta.
    • Palvelin ohjelma on joka kykenevä ottamaan vastaan pyyntöjä asiakkaalta ja suorittamaan kyseistä pyyntöä koskevan ohejlmiston
    • Kuten mainitsin, palvelin ohjelma tarjoaa palvelun tai ohjelman yhdelle tai useammalle asiakas ohjelmalle, jotka pyytävät lupaa käyttää kyseistä palvelua

  • Oleta, että järjestelmä A haluaa lähettää erittäin suuren tiedoston järjestelmälle B. Kuvaile korkealla tasolla (yleisesti) kuinka järjestelmä A luo tiedostosta paketteja. Kun yksi kyseisistä paketeista saapuu (paketti)reitittimelle, niin mitä tietoa reititin käyttää paketista päättääkseen mihin lähtevään yhteyteen (linkkiin) paketti jälleenlähetetään? Vastaako Internetin pakettikytkentä autoilua kaupungista toiseen kysyen ohjeita välillä?
    • Riippuen tiedoston koosta, A jakaa kyseisen tiedoston sopivan kokoisiin paketteihin lähettämistä varten. Paketin täytyy saapua kokonaan reitittimelle ennen kuin reititin voi jälleenlähettää sen eteenpäin seuraavalla linkille käyttäen paketin ylätunnisteessa olevaa päämääräosoitetta. Internetin paketti kytkentä voisi vastata autoilua kaupungista toiseen kysyen ohjeita välillä jos auton sijaan olisi ryhmä autoja, joilla kaikilla on sama päämäärä ja jotka kaikki kysyvät ohjeita matkan aikana.
  • Täydennä kappaleen 1 käännöskalvot loppuun.

Luento 3 Kotitehtävä

Tuntikuulustelun pohjalta

  • Mikä on kerrosmalli ja miksi se on tärkeä?
    • Kerrosmalli on tapa jakaa Internetin liikennöintiin liittyviä käytäntöjä erillisiin pienempiin kokonaisuuksiin. Perus malli pitää sisällään viisi kerrosta ylimmästä alimpaan: sovellus-, kuljetus-, verkko-, siirtokerroksen sekä fyysisen kerroksen. OSI-malliin kuuluu tämän lisäksi esitystapa- sekä istuntokerros. Kukin kerros käyttää alemman kerroksen palveluja ja tarjoaa niitä ylemmälle kerrokselle. Kerrosmalli yleisesti helpottaa erittäin monimutkaisen systeemin hallintaa ja ylläpitoa; kun muutoksia tehdään yhteen kerrokseen ei se vaikuta muihin.
  • Kenen kanssa tietyllä kerroksella oleva palvelu viesti (missä on sen vastinpalvelu/olio)? Kuinka tämä viestintä tapahtuu?
    • Vastinpalvelut viestivät samalla kerroksella olevan palvelun kanssa. Kun viesti kulkee kerroksien läpi ennen lähetystä, kukin kerros lisää oman tunnisteensa viestiin. Tämän tunnisteen avulla kukin kerros pystyy määrittämään vastinpalvelunsa.
  • Mikä on protokolla? Mitä kaikkea protokollan määrittelyyn tarvitaan?
    • Protokolla eli yhteyskäytäntö määrittää muodon, missä järjestyksessä viestejä lähetetään ja vastaan otetaan verkon kokonaisuuksien välillä ja toimenpiteet kun viesti lähetetään. Yleisesti ottaen protokolla on käytäntö tai standardi, joka määrittä kaiken liikennöinnin verkossa eri laitteiden välillä. Protokollan määrittelyyn tarvitaan varmasti ymmärrys halutusta viestinnästä, jotta sille voidaan laatia yhteiset säännöt.
  • Mikä on piirikytkentä ja mikä on pakettikytkentä?
    • Piirikytkentä on tiedonsiirtomenetelmä, jossa yhteys asiakkaiden välillä on allokoitu eli varattu ainoastaan tämän linkin käyttöön. Näin ollen kun yhteyttä ei käytetä, seisoo sen tarjoama kapasiteetti käytämättömänä. Tälläisiä ratkaisuja on käytetty mm. lankapuhelinyhteyksissä (kun puhelimeen ei puhuta, seisoo se käyttömättömänä.) Pakettikytkentä taas jakaa viestin pienempiin osiin eli paketteihin ja lähettää niitä yksi kerrallaan eteenpäin. Kun paketti saapuu reitittimelle, tarkistetaan ylätunnisteesta määränpään osoite ja lähetetään paketti eteenpäin. Jos kuitekin reitittimen puskurimuisti ruuhkautuu, saattaa joitain paketteja tippua tai kadota matkalla. Tätä varten on kuitenkin erilaisia protokollia käytössä. Toisin kuin piirikytkennässä, kyseistä yhteyttä ei varata vaan useamman viestin paketteja voi liikkua samaan aikaan.
  • Käynnistäkää Chrome-selain ja käynnistäkää kehittäjätila
  • Menkää sivulle www.funet.fi ja klikatkaa kehittäjätilan näytöstä “Network” (sivun alalaidassa)
  • Mitä palvelin vastaa sivulle www.funet.fi (Status)? Miksi / mitä vastaus tarkoittaa?
    • Palvelin vastaa 200 GET Etusivu info.funet.fi html
    • 200 tarkoittaa että kaikki on OK
    • GET on metodi tai pyyntö
    • info.funet.fi on palvelimen osoite
    • html viittaa tiedoston tyyppiin
  • Kuinka pitkään etusivun lapaaminen kesti?
    • Kokonaisuudessaan 30 000 ms (johtunee suurimmaksi osaksi OnniBussin verkon nopeudesta)
  • Montako kuvaa selain lataa?
    • 44
  • Valitse pyyntö www.funet.fi. Mikä vastauksesta voi päätellä vastanneesta palvelusta?
    • Että etusivu on siirtynyt toiseen osoitteeseen.

Luento 4 Kotitehtävä

  • Tuntikuulustelun pohjalta:
  • Miten sähköposti kulkee lähettäjältä vastaanottajalle?
    • Lähettäjä lähettää ensin sähköpostiohjelmallaan (Outlook, Thunderbird, Web Client ym.) sähköpostiviestin omalle sähköpostipalvelimelleen käyttäen IMAP, POP3 protokollia. Sähköpostipalvelimella viesti siirretään lähtevien viestien jonoon. Palvelin muodostaa TCP yhteyden vastaanottajan sähköpostipalvelimelle ja lähetää viestin eteenpäin. Vastaanottajan sähköpostipalvelin asettaa saapuneen viestin vastaanottajan sähköpostilaatikkoon, josta vastaanottaja hakee kyseisen viestin omalle sähköpostiosoitteelleen.

  • Muista kerrosmalli ja keskity ainoastaan sovelluskerroksen tapahtumiin:
    • Jos lähetätä postia käyttäjälle jouni@eduskunta.fi, niin kuinka DNS liittyy asiaan?
      • DNS muuttaa eduskunta.fi -domain nimen tietokoneille ymmärrettäviksi IP-osoitteeksi jotta viesti menee oikeaan osoitteesen.
    • Mitä DNS-palvelusta kysytään ja kuka kysyy?
      • Halutun verkkotunnuksen IP-osoitetta. Kun käyttäjä kysyy ensin paikalliselta DNS-palvelimelta kyseistä verkkotunnusta. Jos tieto löytyy jo tältä, ei tarvitse kysy muualta. Jos kuitenkaan näin ei ole kysytään juuri DNS-palvelimelta mistä kyseinen tieto löytyy ja liikutaan tästä eteenpäin.
  • Mikä on eduskunnan sähköpostipalvelimen nimi ja osoite? (kokeile esim: http://viewdns.info/dnsrecord/ tai komentoriviltä (Linux) dig eduskunta.fi -t any )
  • 41.145.71.217.in-addr.arpa –> smtpin.eduskunta.fi.
  • Mitä palveluja kuljetuskerros tarjoaa sovelluskerrokselle?
  • TCP & UDP
  • Miten eri sovelluksille menevät viestit erotellaan toisistaan?
  • Soketin avulla käyttäen joko TCP tai UDP-yhteyttä.
  • Kalvolla 3-33 ja 3-34 on luennolla luomamme luotettava protokolla, joka osaa toipua mm. vaurioituneista kuittauksista. Seuraa tilakoneen toimintaa ja piirrä kaavio (ks. esimerkki kaaviosta kalvolta 3-40) protokollan toiminasta, kun lähettäjä lähettää ensin kaksi viestiä (viesti 1 ja 2) onnistuneesti, jonka jälkeen lähettäjä lähettää viestin 3, joka vaurioituu matkalla ja lopulta viestin 4, jonka kuittaus ACK viesti vaurioituu. Piirrä kaavio siihen saakka kunnes lähettäjä on tyytyväinen kaikkien neljän viestin toimittamiseen.

Luento 5 Kotitehtävä

  • Kalvosetin 3 kääntäminen (kuten aiemmin). Palautus tehdään oppimispäiväkirjaan (upload wiki-palvelimelle ja linkki dokumenttiin kaikkien tekijöiden oppimispäiväkirjoihin).
  • Muiden opintopäiväkirjoista oppiminen. Etsi opintopäiväkirjojen listasta omaan nimeäsi seuraavat kaksi henkilöä (jotka ovat täyttäneet (vaadittavaa) opintopäiväkirjaa). Kirjoita molemmista päiväkirjoista reflektio omaan päiväkirjaasi. Vertaa omaa päiväkirjaa omaasi, mitä opit …
    • Molemmat opintopäiväkirjat, jotka luin olivat hyvin samanlaisia kuin omanikin. Eroja luentopäiväkirjan laajudessa sekä käsittelytavassa oli omaani verrattuna, itse käytän luentopäiväkirjaa lähinnä muistiinpanovälineenä, eli ranskalaisinviivoin minulle ymmärrettäviä tärkeitä asioita kun taas näissä kahdessa muussa oli käsitelty lähinnä esseemuodossa. Samanlaisia asioita oli jäänyt muillakin epäselväksi ja todettu myös, että neljän tunnin kalvosulkeisten aikana, luennon viimeiset asiat rupeavat hämärtymään. Kotitehtävien vastaukset ja pituudet olivat hyvin samanlaisia omieni kanssa, toisesta näki, että taustatietoja oli hieman enemmän kuin esim. itselläni.
  • Katso jossain LUTin tietokoneessa koneen aleverkon peite (ip mask), jolla josta avulla voidaan päätellä verkkoon kuuluvat koneet. Maski voi olla muotoa 255.255.255.0 tai /24. Mikä on käytetyn aliverkon maski? Mikä on koneen oma osoite? Montako osoitetta samassa aliverkossa on? Mitkä IP osoitteet ovat samassa aliverkossa? Voit joutua selvittämään lisää internetistä kysymykseen vastaamista varten. Aloittaa voi: https://en.wikipedia.org/wiki/Subnetwork
    • Subnet Mask: 255.255.252.0
    • IP-osoite: 157.24.51.61/22
    • Samassa aliverkossa on 1022 osoitetta
  • Kerro kuinka TCP-protokolla toimii pääpiirteittäin? Millaisia ominaisuuksia ja käsitteitä siihen liittyy ja mihin niillä pyritään? Mitä hyviä ja huonoja puolia TCP:llä on? Tämä on hyvin laaja kysymys, mutta tavoitteena ei ole osata TCP:n toimintaa bittitasolla vaan pääperiaatteiden ymmärtäminen, ja niihin liittyvien taustojen ymmärtäminen.
    • TCP-protokolla on toinen kuljetustason protokollista (UDP on toinen). TCP on yhteydellinen protokolla, joka soveltuu hyvin esim. tiedostojen ja sähköpostien lähetykseen luotettavan tiedonsiirron takaavien ominaisuuksien takia. Yhteys esim. käyttäjän ja palvelimen välillä muodostetaan kolmivaiheisen kättelyn tuloksena (= käyttäjä lähettää yhteydenavaus pyynnön palvelimelle, palvelin vastaanottaa pyynnön, tarkistaa onko sillä riittävästi resursseja uuteen yhteyteen, jos niin lähetetään ACK-kuittausviesti käyttäjälle, jonka jälkeen viimeiseksi käyttäjä lähettää palvelimelle varmistuspaketin että yhteys on muodostettu). Vastaavasti yhteyttä sulkiessa molempien päiden täytyy sulkea yhteys esikseen ja lähettää kuittaukset asiasta. Multipleksauksen ansiosta koneiden välillä voi olla useampikin TCP-yhteys samanaikaisesti. Hyviä puolia TCP:ssä on tiedonsiirron luottettavuus (matkalla hukkuneet paketit lähetetään uudestaan, jos niistä ei saada kuittausta tai jos ajastin laukeaa) sekä tehokkaan tiedonsiirron varmistava liukuva ikkuna (eli varmistutaan siitä, että dataa lähetetään niin paljon kuin toinen osapuoli pystyy vastaanottamaan → koko muuttuu dynaamisesti käytettävissä olevista resursseista riippuen).

Luento 6 Kotitehtävä

  • Kalvosetin 5 kääntäminen (kalvot 1-9,17-97) TAI kalvosetin 4 kääntäminen (kalvot 1-75, 98-103,121-134). Palautus tehdään oppimispäiväkirjaan (upload wiki-palvelimelle ja linkki dokumenttiin kaikkien tekijöiden oppimispäiväkirjoihin).
  • Lue vistintäviraston uutinen. Ymmärrätkö millaisia uhkia ylläpitämättömään laitteistoon voi liittyä? Osaisitko päivittää laitteen?
  • Jos tehtävänannolla tarkoitettuun uutista https://www.viestintavirasto.fi/kyberturvallisuus/tietoturvanyt/2015/10/ttn201510121051.html, uskoisin ymmärtäväni ylläpitämättömään laitteistoon liittyviä uhkia. Uhkia ovat lähinnä erilaiset haittaohjelmat, jotka saattavat mm. valjastaa verkon esim. bitcoin louhintaan, DDoS hyökkäyksiin tai osaksi roskapostia lähettävää bottiverkkoa tai DNS-asetuksien muokkaus. Suurin osa näistä uhista voidaan eliminoida pitämällä reitittimen ohjelmisto ajantasallaan, tai jos reitittimen ohjelmistopäivityksiä ei enää tarjota, voi olla syytä hankkia uusi reititin. Toinen yksinkertainen keino on muokata reitittimen oletusasetuksia esim. vaihtamalla salasanoja, estämällä laitteen etäohjaus ja poistamalla muita ominaisuuksia joita ei tarvita. Valtaosa kuluttajista on kuitenkin tietämättömiä kyseisistä uhista tai niiden torjumisesta edelleen tänä päivänä, joten helppoja koheita löytyy varmasti paljon. Itse kuitenkin uskoisin pystyväni ainakin suurimman osan näistä uhista estämään.
  • Miksi meillä on käytössä IP- ja Ethernet-osoitteita?
    • Ethernet- ja IP-verkoissa on pystyttävä osoittamaan haluttu päätelaite, oli se sitten tietokone, palvelin, reititin tai kytin. Ethernet-osoite tai MAC-osoite on annettu jokaiselle päätelaittelle yksilöllistä tunnistusta varten. Se on “painettu” kunkin laitteen verkkosovittimeen eikä sitä näin ollen voi siirtää. Sitä käytetään tunnistamaan kyseisessä lähiverkossa olevat laitteet. Siinä missä MAC-osoite on kullekkin laitteelle ykskilöllinen, saman IP-osoitteen alla voi olla useampi laite. Esim. reittittimestä näkyy vain yksi IP-osoite ulospäin ja kyseisen aliverkon sisällä olevat koneet näyttävät olevan kaikki samassa IP-osoitteessa. Reititin ohjaa paketit aliverkon sisällä oikeaan osoitteeseen porttien avulla.
  • Mikä on VLAN?
    • Virtuaalinenlähiverkko (Virtual LAN) on tekniikka, jolla fyysinen verkko voidaan jakaa loogisiin osiin. VLAN:n joan takana on toiminnalliset syyt pitää esim. hallinto, laskutus ja tuotekehits erillissä verkoissa. Näin saadaan fyysisesti yhtenäinen lähiverkko segmentoitua loogisesti täysin erotelluiksi verkoiksi, jolloin käyttäjät eri virtuaalisissalähiverkoissa voivat keskustella vain oman verkon sisällä olevien käyttäjien kanssa. VLAN edellyttää, että kytkimet ja reitittimet ovat siihen sopivia. Kytkin määrittelee VLANit joko porttien, osoitteiden tai käyttäjien perusteella. VLANin hyötyjä ovat: vähentyneet kustannukset kun tarvitaan vain yksi verkko, se on yhteensopiva DHCP:n kanssa, minimoi konfiguraatiomuutokset sekä keskittää hallinnan ja luo tietyn hallintapolitiikan (http://www.tlu.ee/~matsak/telecom/lasse/switch2/vlanperusteet.html).
  • Piirrä kuva verkkosta, jossa on 3-reititintä, ja joista jokaisen takana on verkko, jossa on 3 tietokonetta. Kerro kuvassa koneiden IP-osoitteet, reittimien IP-osoitteet (huom! reitittimen jokaisella rajapinnalla (interface) on oma IP-osoite). Kirjoita jokaiselle reitittimelle reitystaulu. Vilkaise vaikkapa Wikipediasta, millaisia tietoja reititystauluun tarvitaan.

routing_table.pdf

  • Keksi neljä tenttikysymystä, joihin vastaaminen osoittaa kurssin aihealueen ymmärtämistä.
    1. Selitä kerrosmalli ja siihen liittyviä protokollia
    2. Mikä on DNS ja mihin sitä tarvitaan?
    3. Selitä pakettikytkentä ja sen hyödyt sekä haitat
    4. Miksi on olemassa IPv6 ja miksi se ei ole käytössä?
  • Laadi vastaukset laatimiisi kysymyksiin.
  1. Kerrosmalli on Internetin arkkitehtuuriin käytetty viitemalli, jota kutsutaan myös protokolla pinoksi. Se jakaa Internetin liikennöintiin liittyviä käytäntöjä erillisiin pienempiin kokonaisuuksiin. Siihen kuuluvat ylimmästä alimpaan kerrokseen: sovellukerros (HTTP, SMTP, FTP DNS ym.), kuljetuskerros (TCP & UDP), verkkokerros (IP), linkkikerros (IP/Ethernet) sekä viimeisenä fyysinenkerros joka pitää sisällään fyysisen median millä tietoa siirretään (3G, coaxaali kaapeli, valokuitu). Kukin kerros käyttää alemman kerroksen palveluja ja tarjoaa niitä ylemmälle kerrokselle. Kerrosmalli lähtökohtana on helpottaa erittäin monimutkaisen systeemin hallintaa ja ylläpitoa; muutoksia voidaan tehdä vain yhteen kerrokseen vaikuttamatta muihin vs. koko systeemin uudelleen järjestely.
  1. DNS eli domain name server on nimipalvelujärjestelmä, joka muuntaa verkkotunnuksia IP-osoitteksi. DNS muuntaa tietokoneiden, palveluiden ja kaikkien Internettiin kytkettyjen osien nimet tietokoneiden ymmärrettäviksi numeerisiksi osoitteksi. Eli käytännössä jotta voidaan ottaa yhteyttä esim. www.lut.fi osoitteeseen, täytyy se muuntaa ensin IP-osoiteeksi, jotta Internetin eri laitteet voivat löytää sen ja kertoa kyseisen tiedon pyytäjälle.
  1. Pakettikytkentä tarkoittaa tapaa jakaa lähetettävä viesti pienempiin osiin eli paketteihin ja lähettää niitä yksi kerrallaan eteenpäin. Kun paketti saapuu reitittimelle, tarkistetaan ylätunnisteesta määränpään osoite ja lähetetään paketti eteenpäin seuraavaan oikeaan osoitteeseen. Jos kuitekin reitittimen puskurimuisti ruuhkautuu, saattaa joitain paketteja tippua tai kadota matkalla. Tätä varten on kuitenkin erilaisia protokollia käytössä.
  1. IPv6 on tämän hetkisen standardin IPv4 seuraajaksi kehitetty Internet protokolla. Sen pääomainen tarkoitus on ollut kasvattaa IP-osoitteiden pituutta ja osoiteavaruuden laajutta, sillä tämän hetkisestä IPv4 protokollasta on jo pitkään ollut IP-osoitteet loppumassa, tähän on kuitenkin keksitty erilaisia tilapäisratkaisuja kuten NAT. Mutta tulevaisuuden ajattelijat, jotka puhuvat mm. Internet of Things:stä ovat vakuuttuneita, että nykyinen käytäntö ei enää muutaman vuoden päästä riitä. IPv6 protokollaan ollaan myös lisätty muita uusia hyödyllisiä ominaisuuksia kuten IPsec (tietoturva-arkkitehtuuri), Mobile IPv6 (mahdollistaa verkosta toiseen liikkumisen ilman että yhteys katkeaa) ja SSM (skaalautuva tapa lähettää esim. videolähetystä monille vastaanottajille samanaikaisesti). IPv6:n käyttöönotto on kuitenkin kerralla lähes mahdotonta, sillä suuri määrä eri laitteisto reitittimistä kytkimiin ja palomuureihin pitäisi vaihtaa yhtäaikaisesti, osa useampi vuosi sitten kirjoitetuista ohjelmistoista ei enää toimisi (erittäin vaikea vaihtaa / kirjoittaa uudestaan) jne. Siirtoa IPv6:een tehdään kuitenkin kokoajan inkrementaaliesti.

Viikoittainen ajankäyttö

Luentoviikko 1

  • Lähiopetus: 4 h
  • Luentopäiväkirja: 1h
  • Kalvojen käännös: 2h

Luentoviikko 2

  • Lähiopetus: 4h
  • Luentopäiväkirja: 2,5h
  • Kotitehtävät 1h
  • Kertaus 1h

Luentoviikko 3

  • Lähiopetus: 4h + pistari
  • Luentopäiväkirja: 2h
  • Kotitehtävät: 2h

Luentoviikko 4

  • Lähiopetus: 4h + pistari
  • Luentopäiväkirja: 2h
  • Kotitehtävät: 1h
  • Käännös: 2h

Luentoviikko 5

  • Lähiopetus: 4h
  • Luentopäiväkirja: 1h
  • Kotitehtävät: 1h
  • Käännös: 2h

Luentoviikko 6

  • Lähiopetus: 4h
  • Luentopäiväkirja: 1h
  • Kotitehtävät: 3h
  • Käännös: 2h
  • Tenttiin lukeminen: 10h

—- http://www2.it.lut.fi/wiki/doku.php/courses/ct30a2001/start