3. Kuljetuskerros 3.1. Kuljetuspalvelu

Samankaltaiset tiedostot
3. Kuljetuskerros 3.1. Kuljetuspalvelu

3. Kuljetuskerros 3.1. Kuljetuspalvelu End- to- end

3. Kuljetuskerros 3.1.

3. Kuljetuskerros 3.1. Kuljetuspalvelu End- to- end

Monimutkaisempi stop and wait -protokolla

Tehtävä 2: Tietoliikenneprotokolla

3. Kuljetuskerros 3.1.

3. Kuljetuskerros 3.1. Kuljetuspalvelu End- to- end

kynnysarvo (threshold)

kynnysarvo (threshold)

3. Kuljetuskerros 3.1. Kuljetuspalvelu. Internetin kuljetuskerros. kuljetuspalvelut parantavat verkkopalveluja

Monimutkaisempi stop and wait -protokolla

6. Kuljetuskerros 6.1. Kuljetuspalvelu End- to- end

6. Kuljetuskerros 6.1. Kuljetuspalvelu

OSI ja Protokollapino

Monimutkaisempi stop and wait -protokolla

kynnysarvo (threshold) varoitusarvo = tästä lähtien syytä varoa ruuhkaa aluksi 64 K RTT

6. Kuljetuskerros 6.1. Kuljetuspalvelu End- to- end. kuljetuspalvelut parantavat verkkopalveluja Kuljetuskerroksen toiminta

3. Kuljetuskerros 3.1. Kuljetuspalvelu

Tietoliikenteen perusteet

peittää verkkokerroksen puutteet

ELEC-C7241 Tietokoneverkot Kuljetuskerros

3. Kuljetuskerros 3.1. Kuljetuspalvelu

1.4. Tietoliikenneohjelmistot eli protokollat

1.4. Tietoliikenneohjelmistot eli protokollat

1.4. Tietoliikenneohjelmistot eli protokollat. Protokollien kerrosrakenne. Mitä monimutkaisuutta?

3. Kuljetuskerros 3.1. Kuljetuspalvelu

Siltojen haitat. Yleisesti edut selvästi suuremmat kuin haitat 2/19/ Kytkin (switch) Erittäin suorituskykyisiä, moniporttisia siltoja

Kuljetuskerros. Tietokoneverkot. Matti Siekkinen Pasi Sarolahti

Tietoliikenne II. Syksy 2005 Markku Kojo. Tietoliikenne II (2 ov,, 4 op) Page1. Markku Kojo Helsingin yliopisto Tietojenkäsittelytieteen laitos

Siirron optimointi. Optimointi on usein tarpeen: Silly window syndrome

11/20/ Siirron optimointi

TCP. TCP-optiot. Erilaisia suorituskykyongelmia. Aikaleima (timestamp) TCP:n peruspiirteiden toiminta tarkemmin. TCP:n uusia piirteitä.

Kohina (Noise) Signaalia häiritsee kohina. aina taustalla esiintyvää sähkömagneettista aaltoliikettä terminen kohina. elektronien liikkeestä johtuva,

Chapter 3 Transport Layer. Kuljetuskerros

Siltojen haitat Yleisesti edut selvästi suuremmat kuin haitat

Siirron optimointi. Optimointi on usein tarpeen: Silly window syndrome. Esimerkki jatkuu

Esimerkki jatkuu. <seq = 6, data = m6> <ack = 4, buf = 0> <ack = 4, buf = 1> <ack = 4, buf = 2> <ack = 6, buf = 0> <ack = 6, buf = 4> 1/31/

TCP. TCP:n peruspiirteiden toiminta tarkemmin. TCP:n uusia piirteitä. osin vain harjoitustehtävissä

TCP:n peruspiirteiden toiminta tarkemmin. osin vain harjoitustehtävissä. TCP:n uusia piirteitä

Kuljetuskerroksen protokollat. Luotettava vai epäluotettava? Kuljetuskerroksen tarkoitus. Tietosähkeen kapselointi. Portit ja (de)multipleksaus

Miksi? Miksi? Kaksisuuntainen liikenne TCP-protokolla. Ikkunankoko. Valikoiva toisto: ikkuna 5, numeroavaruus 8

Kohina (Noise) 1.4. Tietoliikenneohjelmistot eli protokollat. Signaalin vahvistaminen

Ikkunankoko. Kun käytetty numeroavaruus on 0, 1,.. n ja eri numeroita siis käytettävissä n+1

Ikkunankoko. Kun käytetty numeroavaruus on 0, 1,.. n ja eri numeroita siis käytettävissä n+1

Miten selain muodostaa TCP- tai UDP-yhteyden? TCP-osoite = IP-osoite + porttinumero ( tässä 80) SOCKET BIND (80) LISTEN ACCEPT. Connection Request

S Tietoliikennetekniikan perusteet. Pakettikytkentäiset verkot. Helsinki University of Technology Networking Laboratory

Esimerkki jatkuu. ajastin laukeaa, uudelleen sanoma 2. <seq = 6, data = m6>

Kuljetuskerroksen protokollat. Kuljetuskerroksen tarkoitus. Luotettava vai epäluotettava?

Kuljetuskerroksen protokollat

S Teletekniikan perusteet

Asiakkaan toimenpiteet

Miten selain muodostaa TCP- tai UDP-yhteyden? TCP-osoite = IP-osoite + porttinumero ( tässä 80) SOCKET BIND (80) LISTEN ACCEPT. Connection Request

Kuljetuskerros. Matti Siekkinen. T Johdatus tietoliikenteeseen kevät 2011

TCP/IP-protokollapino. Kuljetuskerros. Tämän luennon jälkeen. Sisältö. Matti Siekkinen. Ymmärrätte:

Kuljetuskerroksen protokollat

Tietoliikenne II (2 ov)

Luento 5: Kuljetuskerros

1. Tietokoneverkot ja Internet

Verkkoliikennettä Java[ssa lla] Jouni Smed

1. Tietokoneverkot ja Internet Tietokoneesta tietoverkkoon. Keskuskone ja päätteet (=>-80-luvun alku) Keskuskone ja oheislaitteet

Tietoliikenne II (2 ov)

1. Tietokoneverkot ja Internet Tietokoneesta tietoverkkoon. Keskuskone ja päätteet (=>-80-luvun alku) Keskuskone ja oheislaitteet

1. Tietokoneverkot ja Internet Tietokoneesta tietoverkkoon. Keskuskone ja oheislaitteet. Keskuskone ja päätteet (=>-80-luvun alku)

Miten Internet toimii?

Tietoliikenneohjelmointi. v. 0.01

Kuittaukset ACK. NAK-kuittaus. kumulatiivinen ACK. yksittäinen ACK. sanoma virheellinen tai puuttuu. tähän saakka kaikki ok!

Kuittaukset. Miksi? Miksi? Negatiiviset kuittaukset NAK-kuittauksilla voidaan nopeuttaa uudelleenlähettämistä. Ikkunankoko ACK

Kuittaukset. tähän saakka kaikki ok! Go-Back N. sanoma virheellinen tai puuttuu

Luento 6: Kuljetuskerros UDP & TCP TCP:n ruuhkanhallinta. Syksy 2014, Tiina Niklander Kurose&Ross: Ch3

Luento 5: Kuljetuskerros luotettavan tiedonsiirron periaatteet. Syksy 2014, Tiina Niklander

Kuljetuskerroksen protokollat

5. Siirtoyhteyskerros linkkikerros (Data Link Layer)

Salausmenetelmät (ei käsitellä tällä kurssilla)

5. Siirtoyhteyskerros linkkikerros (Data Link Layer)

Luento 6: Kuljetuskerros UDP & TCP TCP:n ruuhkanhallinta

Luento 6: Kuljetuskerros UDP & TCP TCP:n ruuhkanhallinta

ICMP-sanomia. 3. IP-kerroksen muita protokollia ja mekanismeja ICMP (Internet Control Message Protocol)

3. IP-kerroksen muita protokollia ja

Kun n = 32 ei ole tarpeeksi nopea nykyisiin runkoreitittimiin! - content addressable memory (CAM) - välimuistin käyttö

001.. Kun n = 32 ei ole tarpeeksi nopea nykyisiin runkoreitittimiin! - content addressable memory (CAM) - välimuistin käyttö

Tietokone. Tietokone ja ylläpito. Tietokone. Tietokone. Tietokone. Tietokone

5. Verkkokerros. Verkkokerroksen palvelut. Tulvitus jokainen saapunut paketti lähetetään kaikille muille ulosmenoille.

Kuljetuskerros. Kirja sivut: ,

Kuljetuskerros. Matti Siekkinen. T Johdatus tietoliikenteeseen kevät 2013

Kuljetuskerroksen tehtävä. Kuljetuskerros UDP. UDP-kaappaus (DNS) DNS-haku, Ethernet-kehys <#>

Tietoliikenteen perusteet: Kokeeseen tulevista asioista

Tietoliikenteen perusteet. Kuljetuskerros

Eetteriverkon rakenne

CSMA/CD. Eetteriverkon rakenne. Signaalin koodaus. Törmäyksen jälkeinen uudelleenlähetys. Lyhyet etäisyydet, pieni määrä laitteita. Manchester-koodaus

Eetteriverkon rakenne

WWW-sivu. Miten Internet toimii? World Wide Web. HTML-koodi. HTTP-istunto URL <#>

Tietoliikenteen perusteet. Kuljetuskerros

Tietoliikenteen perusteet

Tietoliikenteen perusteet. Kuljetuskerros

Tietoliikenteen perusteet

Protokollien yleiset toiminnot

Kuljetuspalvelu. Tietoliikenteen perusteet. Sisältöä. Kuljetuskerros. Kuljetuskerros. Kuljetuskerros. Internetin kuljetusprotokollat

Verkkokerroksen palvelut. 4. Verkkokerros. Virtuaalipiiri (virtual circuit) connection-oriented ~ connectionless. tavoitteet.

Lisää reititystä. Tietokoneverkot 2009 (4 op) Syksy Futurice Oy. Lisää reititystä. Jaakko Kangasharju

Transkriptio:

3. Kuljetuskerros 3.1. Kuljetuspalvelu End- to- end lta lle looginen yhteys portti verkkokerros koneelta koneelle I-osoite peittää verkkokerroksen puutteet jos verkkopalvelu ei ole riittävän hyvä, sitä voidaan parantaa kuljetuskerroksella kuljetuskerros huomaa verkkokerroksen kadottamat paketit ja pyytää niiden uudelleenlähetystä Sovelluksien datavirtojen erottaminen I-osoite osoittaa koneen yksikäsitteisesti Sovellus tunnistetaan porttinumerosta (16 bittiää =>0-65535) jokaisessa lähetetyssä segmentissä on lähettäjän porttinumero vastaanottajan porttinumero Yleisillä palvelimilla omat varatut porttinumerot (0-1023) SM 25, H, jne 1/27/2003 1 1/27/2003 2 asiakas-prosesseja kuljetusyhteys palvelin H Asiakkaalle kuljetuskerros usein automaattisesti antaa käyttöön jonkin vapaan porttinumeron yhteyden ajaksi alvelimilla kiinteät numerot yhteydenottoa varten 3256 1024 1068 portteja (porttinumero) 21 23 218.48.15.135 218.52.7.45 verkkoyhteys Kuljetusyhteys on looginen lta lle yhteys (end-to-end) Kolme yhteyttä: <=> 23, <=> 21, <=> 1/27/2003 4 arvitaan sekä lähteen että kohteen porttinumerot alvelimessa yhteyksille uudet porttinumerot, jotta portti voi ottaa vastaan uusia yhteyspyyntöjä 2067 1994 3256 Kolme yhteyttä: <=>, <=>, <=> Kolme yhteyttä: <=> 3256, <=> 1994, <=>2067 1/27/2003 5 1/27/2003 6

Eri koneissa voidaan ottaa sama numero! Kolme yhteyttä: <=>, <=>, <=>! Kuljetusyhteydellä käytetään apuna myös I-osoitetta: => koneilla eri I-osoitteet, joten yhteydet pystytään erottamaan Sovelluksen vaatimuksia kuljetuspalvelulle: Virheetön, luotettava järjestyksen säilyttävä kaksoiskappaleet karsiva mielivaltaisen pitkiä sanomia salliva vuonvalvonnan mahdollistava Verkkokerros kuitenkin voi kadottaa sanomia toimittaa sanomat epäjärjestyksessä viivyttää sanomia satunnaisen pitkän ajan luovuttaa useita kopioita samasta sanomasta rajoittaa sanomien kokoa 1/27/2003 7 1/27/2003 8 kuljetus parantavat verkkopalveluja Sovelluksen näkemä palvelun laatu (Quality of Service, QoS) kuljetuskerroksen verkkokerkoksen kuljetuskerroksen verkkokerroksen Internetin kuljetuskerros UD (User Datagram rotocol) yhteydetön, epäluotettava palvelu (ransmission ontrol rotocol) yhteydellinen, luotettava palvelu virhevalvonta havaitsee ja korjaa siirrossa syntyneet virheet vuonvalvonta ei ylikuormita vastaanottajaa ruuhkanvalvonta huolehtii ettei verkko pääse ruuhkautumaan 1/27/2003 9 1/27/2003 10 user proc I Verkkokerros tavuvirta Kuljetuskerros I segmentti I-datasähke user proc : lta lle - tavuvirta 1/27/2003 11 I istokerajapinta (Socket interface) Verkkopalvelun ja sitä käyttävän sovelluksen rajapinta yleensä käyttöjärjestelmän tarjoama palvelu rajapinta alunperin Berkeley Unixin mukana, nyt lähes kaikissa käyttöjärjestelmissä miten verkkoprotokollan tarjoamiin palveluihin päästään käsiksi sovelluksesta 1/27/2003 12

(socket) Sovelluksen tekijän alue KJ puskurit Internet puskurit KJ -yhteyden päätepiste sovellukselle lähettäjällä ja vastaanottajalla oma numero 48 bittiä koneen 32 bitin I-osoite 16 bitin porttinumero KJ = käyttöjärjestelmä rosessien kommunikointi -pistokkeita käyttäen 1/27/2003 13 1/27/2003 14 -yhteys kaksisuuntainen (full-duplex) kaksipisteyhteys tunnistetaan päätepisteinä olevien pistokkeiden tunnuksista (1, 2) Kone a Kone b :n primitiivit SOKE luo uusi yhteydenpäätepiste BIND anna pistokkeelle osoite LISEN halukas vastaanottamaan yhteyksiä AE jää odottamaan yhteysyrityksiä ONNE yritä muodostaa yhteys SEND lähetä dataa yhteyttä pitkin REEIVE vastaanota dataa yhteydeltä LOSE pura yhteys (symmetrinen) 1/27/2003 15 1/27/2003 16 Kuljetusyhteyden muodostus ja käyttö SOKE BIND LISEN server Jää kuuntele maan Luo pysyvä AE REEIVE SEND(DAA) LOSE Kuljetuspalvelun tuottaja esim. conn.req. conn. ack. data data disconn.req. disconn. ack. client SOKE Luo ONNE(SERVER) SEND(DAA) REEIVE LOSE Ota yhteys lähetä vastaanota dataa sulje yhteys 3.3 UD UD (User Data rotocol) voidaan lähettää sanomia ilman yhteyden muodostusta UD-otsake <------------------- 32 bittiä -----------------------------> Source port # Destination port # UD length UD checksum sovelluksen dataa 1/27/2003 18

UD-tarkistussumma Virheen havaitsemista varten otsakkeeseen liitetään tarkistussumma kaikki segmentin 16 bitin sanat lasketaan yhteen ja summasta otetaan yhden komplementti = muutetaan ykköset nolliksi ja nollat ykkösiksi vastaanottaja laskee taas kaikkien segmentin sanojen (mukana myös tarkistussumma) summan jos tulokseksi saadaan 16 ykköstä, niin ok! Esimerkki Lasketaan yhteen kolme 8 bitin mittaista sanaa: Lähettäjä vastaanottaja 1011 0100 1011 0100 0111 0101 1111 0101 1000 1101 1000 1101 ========= 0100 1001 1011 0110 ========= 0111 1111 0100 1001 Yhden komplementti 1/27/2003 19 1/27/2003 20 Miksi tarvitaan tarkistussumma? Kaikki siirtoyhteyskerrokset eivät suorita tarkistuksia UD-tarkistussumma ei ole kovin tehokas havaitsemaan virheitä! Se ei myöskään yritä toipua virheistä! Jotkut toteutukset voivat tuhota virheellisen segmentin jotkut antavat se sovellukselle varoituksen kera UD:n etuja: Yhteydetön aikaa ei kulu yhteyden muodostamiseen ja purkamiseen ei tarvita resursseja yhteyden tilatietojen ylläpitoon Otsake (= 8 tavua) pieni => pieni yleisrasite => lisää tehokkuutta Ruuhkanvalvonta ei säännöstele liikennettä 1/27/2003 21 1/27/2003 22 ehtäviä: Lähetetään 10 tavun viesti UD:llä. Miten kauan kestää lähettäminen, jos lähetysnopeus on 56 kbps? 10 tavua + 8 tavua = 18 * 8 b = 144 bittiä 144 b/ 56 000 b/s = 2.57 ms Miten suuri on etenemisviive, jos etäisyys lähettäjältä vastaanottajalle on 1000 km? 1000km/200 000 km/s = 5 ms Miten suuri on UD-otsakkeen aiheuttama yleisrasite (overhead)? 8/18 = 0.44 eli 44 % UD:n käyttö Vaikka UD on epäluotettava, se sopii monien sovellusten tarpeisiin: Remote file server (NFS) multimedia Internet-puhelin verkon hallinta (SNM) reititys (RI) nimipalvelu (DNS) Miksi nämä sovellukset suosivat UD:tä? 1/27/2003 23 1/27/2003 24

3.4 Luotettava tiedonsiirto Data Data Lähettävä DAA Vastaanottava DAA Luotettava tiedonsiirto protokolla paketti Kuljetuskerros Luotettava tiedonsiirtoprotokolla paketti Luotettava kanava Epäluotettava kanava Kuljetuskerros Verkkokerros 1/27/2003 25 1/27/2003 26? Vuon valvonta vuon valvonta A B!!! datavirta X-ON / X-OFF : GO! SO! Kohinainen kanava A A AK/NAK B sanoma vääristyy => virhetarkistus sanoma katoaa => numerointi, ajastin ja uudelleenlähetys duplikaattien havaitseminen sanoma viivästyy => rajallinen elinaika sanomien järjestys muuttuu => järjestäminen Yksinkertainen Stop and wait -protokolla Oletus virheetön siirto => ei huolta virheistä, mutta vuonvalvontaa tarvitaan lähettäjä lähettää sanoman odottaa lupaa lähettää seuraava sanoma vastaanottaja käsittelee sanoman lähettää tiedon (=antaa luvan) lähettäjälle Entä jos virheitä? Sanomissa virheitä tai sanomat voivat puuttua kokonaan Myös kuittaukset voivat kadota arvitaan virheen havaitseminen ja korjaaminen tarkistussumma kuittaus uudelleenlähetys sanomien numerointi uudelleenlähetysajastin 1/27/2003 29 1/27/2003 30