Tietoliikenne II, syksy 2003
Harjoitus 1 (23.9. 2003)
- TCP-yhteydellä linjan
siirtonopeus on 100 Mbps ja edestakainen viive (RTT) on 200 ms.
- Mikä on TCP-yhteydellä
saavutettava maksiminopeus ilman TCP-protokollan optioita?
- Millä ikkunaskaalaus (window
scale) -option arvolla tällä TCP-yhteydellä päästään
hyödyntämään linjan täyttä siirtonopeutta?
- Miten ikkunaskaalaus-option käytöstä sovitaan?
- Miten TCP-yhteyden nopeuteen
vaikuttaa se, että TCP-segmentin maksimielinaika verkossa on 2
minuuttia? Päästäänkö TCP-yhteydellä
lainkaan teholliseen 100 Mbps nopeuteen? Millä eri tavoin
järjestysnumeroiden uudelleenkäytön ongelmaa
voitaisiin yrittää ratkaista? Voisiko
aikaleimaoptiota hyödyntää myös tässä?
- Esitä kaaviokuvana, miten
'perus'TCP (slow start, retransmission timer, fast retransmit, fast
recovery) selviää seuraavista tilanteista. MSS:n koko on
MSS:n oletusarvo eli 536 tavua (RFC 879) ja lähetysnopeus 10
Mbps.
- Ollaan lähetyksen alussa.
Ruuhkaikkunan koko on 2 MSS ja heti ensimmäinen paketti tulee
virheellisenä vastaanottajalle.
- 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ä.
- 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ä.
Oletetaan kaikissa tapauksissa, että kiertoaika
(round-trip-time) on 100 ms ja uudelleenlähetysajastimen arvo
2*kiertoaika. Lähetystä rajoittaa vain ruuhkaikkuna.
Esitä kaaviokuvana, miten edellisen tehtävän
tapauksista selvitään, jos käytössä on
rajoitettu lähetys (limited transmit). Missä tilanteissa
rajoitetusta lähetyksestä näyttää olevan
hyötyä?
Oletetaan, että käytössä onkin
SACK-optio. Esitä kaaviokuvana, miten lähetykset
tapahtuvat tehtävän 3 b) ja c)-kohdissa.
- Lähettävä TCP
noudattaa Naglen algoritmia.
- Sovellus lähettää
dataa tavu kerrallaan. Miten TCP voidaan pakottaa lähettämään
data aina heti, kun se on saapunut? Onko tilanteita, joissa
tällainen nopea, mutta tehoton tiedonsiirto voi olla
tarpeellista, jopa välttämätöntä?
- Voiko Naglen algoritmista olla hyötyä myös
"silly window syndroma" -ongelmaan?