210 likes | 319 Views
Verkkopalvelu. Verkon rajapinta 1. a. XXX. DATA. DATA. DATA. CONTROL DTMF. Verkon rajapinta 2. Bittejä sisään Bittejä ulos Paljon ohjaussignaaleja. Verkon rajapinta 3. ATDT 123 4567 OK ATC … +++ OK ATH. Verkon rajapinta 4. err = dial(”1234567”); send(data);
E N D
Verkon rajapinta 1 a XXX DATA DATA DATA CONTROL DTMF
Verkon rajapinta 2 Bittejä sisään Bittejä ulos Paljon ohjaussignaaleja
Verkon rajapinta 3 ATDT 123 4567 OK ATC … +++ OK ATH
Verkon rajapinta 4 • err = dial(”1234567”); • send(data); • receive(data); • close( );
Verkon rajapinta 5 • sendIP(IPaddr,data); • receiveIP(IPaddr,data);
Sovelluohjelma IP:n päälle? • verkko ei luotettava • verkkoliitäntä on usean käyttäjän yhteinen • tarvitaan yhteys kahden ohjelman, ei vain koneiden välille • numeromuotoiset osoitteet
eli mitä kaikkea voi mennä pieleen tiedonsiirron eri vaiheissa? Murphy ja TLT
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ä
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
TCP hdr DATA IP hdr DATA TO FROM TYPE DATA CRC Yhteenvetoa Applic. protocol
TCP ja muut tasot Kommunikoi käyttäjän kanssa yms. Sovellusohjelma Sovellusohjelma Sov.tason protokolla Mitä tietoja siirretään Sov.tason protokolla Tietoliikenneohjelma Miten tiedot siirretään Tietoliikenneohjelma Tieto-liikenne-verkko
Domain Name Server (DNS) • www.comlab.hut.fi • 130.233.158.123 • hierarkia
Virheenkorjaus • tiedon koodaus – Hamming-etäisyys • redundanssi • summa, jakojäännös… • ARQ – Automatic Retransmission Request • FEC – Forward Error Correction
virheenkorjaus… Yhden bitin muutos johtaa luvattomaan koodiin
Palvelin listen(id) conn_reply(id) disconnect(id) receive(id,data) send(id,data) Käyttäjärajapinta (esim.) Asiakas id = connect(“www.tkk.fi”,80) disconnect(id) send(id,data) receive(id,data)