110 likes | 222 Views
Murphy ja TLT. eli mitä kaikkea voi mennä pieleen tiedonsiirron eri vaiheissa?. Mikä EI voisi mennä pieleen?. bitti kääntyy matkalla piuha poikki vastaanottaja ei hereillä puskuri täynnä sovellustason virhe (väärä siirto pelissä)
E N D
Murphy ja TLT eli mitä kaikkea voi mennä pieleen tiedonsiirron eri vaiheissa?
Mikä EI voisi mennä pieleen? bitti kääntyy matkalla piuha poikki vastaanottaja ei hereillä puskuri täynnä sovellustason virhe (väärä siirto pelissä) kehykset väärässä järj. protokollavirhe kenen vuoro? liian pitkä kehys kone kaatuu vastaanottaja muuttanut tiedostoa ei löydy eroja tiedon koodauksessa paljon bittivirheitä
Tietoliikenneohjelma • liitäntä kahden ohjelman välillä • luotettava tiedonsiirtopalvelu - kuljetuspalvelu • kommunikoi toisen osapuolen tietoliikenneohjelman kanssa jonkin verkon välityksellä
Asiakas id = connect(addr) disconnect(id) send(id,data) receive(id,data) Palvelin listen(id) conn_reply(id) disconnect(id) receive(id,data) send(id,data) Käyttäjärajapinta (esim.)
Multipleksointi • verkkointerface käyttöjärjestelmän valvonnassa • verkkoyhteydellä voi olla useita käyttäjiä • portit: standardoidut ja muut • yksikäs. osoite: URL ja portti • NAT
Protokollaan kuuluu • asiakasohjelma • palvelinohjelma • palvelut protokollan käyttäjälle – aliohjelmapakkaus (metodit, funktiot) • sanomat ohjelmien välillä • säännöt – mitä lähetetään milloinkin
Kuljetustaso • ”tietoliikenneohjelma” – tärkeä rajapinta • luotettava tiedonsiirtopalvelu • TCP ja UDP • bittivirhe • kehys voi: hävitä, kahdentua, tulla eri järj. • kuittauskin voi hävitä • streaming, esim. VoIP • vrt. verkkotaso
Kehys (esim.) CONN TO CHK CONF REF OK? CHK DATA REF NR DATA CHK ACK REF NR OK? CHK FIN REF CHK
Virheenkorjaus • tiedon koodaus – Hamming-etäisyys • redundanssi • summa, jakojäännös… • ARQ – Automatic Retransmission Request • piggyback ACK • FEC – Forward Error Correction