Tietoliikenne II, syksy 2002

Harjoitus 2 (1.-3.10.2002)

  1. Käytössä on SACK-optio. Esitä kaaviokuvana, miten lähetykset tapahtuvat seuraavissa tilanteissa.
    1. Ruuhkaikkuna on 8 MSS ja ensin onnistutaan lähettämään yksi segmentti kunnolla perille, sen jälkeen virheryöppy vääristää 3 seuraavaa segmenttiä.
    2. Ruuhkaikkuna on 8 MSS ja toinen segmentti joutuu hieman ruuhkautuneelle yhteydelle ja se tule vastaanottajalle viivästyneenä vasta neljännen lähetetyn segmentin jälkeen. Muut segmentit tulevat kyllä järjestyksessä. Missä tilanteissa tästä näyttää olevan hyötyä?

  2. Oletetaan, että käytettävissä ei ole SACK-kuittausta, vaan NewReno:n ns. osittaiset kuittaukset (partial acknowledgement). Kuinka nyt selvitään tilanteesta, jossa ensimmäisen onnistuneen lähetyksen jälkeen ruuhkan takia kadotetaan kolme seuraavaa segmenttia. Tämän jälkeen lähetyksissä ei ole ongelmia. Ruuhkaikkuna on 16 MSS:ää.

  3. SACK-kuittaukset ja NewRenon osittaiset kuittaukset pyrkivät kumpikin ratkaisemaan ruuhkanhallinnan ongelmia. Mitä ongelmaa ne erityisesti pyrkivät ratkaisemaan. Vertaile näitä ratkaisuja. Mitä hyviä ja huonoja puolia niissä on?

  4. RED-puskuri ja ECN
    1. Miten RED-puskuri toimii? Mitä hyötyä siitä on?
    2. TCP-kerroksella halutaan käyttää ECN:ää (Explicit Congestion Notification). Mitä lisätoimintoja tarvitaan TCP-protokollassa ja IP-protokollassa? Miten ECN:n käytöstä sovitaan? Oletetaan, että ECN:ää käyttävän yhteyden yksi segmentti joutuu ruuhkaan. Miten tieto tästä tulee lähettäjälle ja ja miten lähettäjä sitten toimii?

  5. IP-protokolla ja isot paketit
    1. Miten suuria datamääriä IP-protokollissa voi lähettää? Mitkä tekijät rajoittavat lähetettävien IP-datagrammien kokoa?
    2. Voiko IPv4-protokollaa käyttäen lähettää 'normaalia suurempia' sanomia? Esimerkiksi voiko superkone A mitenkään lähettää 262144 tavun kokoisen sanoman koneelle B käyttäen IPv4-protokollaa? Jos voi, niin miten se tapahtuu? Mitä tapahtuu, jos superdatagrammi kohtaa verkon, joka ei kykene kuljettamaan niin suurta sanomaa?
    3. Miten IPv6 hoitaa isot paketit?

  6. IPv6:ssa on käytettävissä vuonimiökenttä (flow label).
    1. Anna esimerkkejä tilanteista, joissa IPv6:n vuonimiöiden (flow label) käytöstä on hyötyä. Millaisissa lähetyksissä nimiöitä ei tarvita? Olisiko järkevää käyttää vuonimiöitä myös esim. TCP-yhteydellä, jossa siirretään paljon dataa?
    2. Mitä tapahtuu, kun reititin vastaanottaa IP-paketin, jonka vuonimiötä se ei tunne eikä siis tiedä, miten pakettia tulee käsitellä? Voiko tästä aiheutua ongelmia?