TCP i UDP
1. W jakiej warstwie pracuje protokół TCP / UDP?
Warstwa 4 (transportowa)
2. Jak nazywamy jednostkę danych przesyłaną za pomoca protokołu TCP / UDP?
TCP – segment / UDP - datagram
3. Jak są adresowane jednostki danych protokołu TCP / UDP? (host/port)
datagramy mają przypisane nr portów źrodłowych i docelowych, które wskazują na docelowy proces.
Połączenie TCP jest definiowane przez parę punktów końcowych (host/port) (bierze udział również warstwa 3)
4. Co to są porty protokołów?
Abstrakcyjne punkty docelowe, każda maszyna pracująca na warstwie transportowej je posiada. Są identyfikowane przez liczby całkowite dodatnie. Korzystają z nich procesy.
5. Kto (co) zarządza dostępem do portów?
Mechanizmy określania portów i dostępu do nich zawiera system operacyjny.
6. Wymień i omów 2 sposoby przypisywania portów.
Centralny – well-known ports – numery portów przyznawanych centralnie, są przeznaczone dla serwerów konkretnych usług (0-1023)
dynamiczny – nr portów są przyznawane aplikacjom lokalnie na komputerze (dla klientów)
7. Wyjaśnij nazwę TCP.
Transmission Control Protocol – Protokół Kontroli Transmisji
8. Wyjasnij nazwę UDP.
User Datagram Protocol – Protokół Datagramu Użytkownika / Protokół Pakietów Użytkownika ??
9. Jakie informacje sa potrzebne, by 1-en host mógł się komunikować z 2-gim?
Adres IP komputera (warstwa 3)
nr portu docelowego ( i źródłowego, żeby wiedzieć gdzie wysłać odp)
10. Wymień 2 cechy protokołu TCP.
Zorientowany połączeniowo
zapewnia retransmisję danych
pozwala na ułożenie danych w odpowiedniej kolejności dzięki numerom sekwencyjnym
większy narzut
wolniejszy
11. Wymień 2 cechy protokołu UDP.
Bezpołączeniowy
Nie zapewnia dostarczania danych
mały narzut
szybki
12. Co to jest multiplexing / demultiplexing UDP?
Multiplexing – zbieranie datagramów z różnych aplikacji i przekazywanie ich warstwie 3 do przesłania
Demultiplexing – Odbieranie otrzymanych datagramów od warstwy 3 i przekazywanie ich do odpowiednich aplikacji. (dzięki nr portów)
13. Krótko omów mechanizm tzw. pozytywnego potwierdzenia z retransmisją.
W jakim protokole występuje?
Występuje w protokole TCP.
Odbiorca po otrzymaniu segmentu TCP wysyła wiadomość do nadawcy, że odebrał segment.
Gdy jest brak tej wiadomości następuje retransmisja (segmenty wysyłany jest kolejny raz).
14. Krótko omów mechanizm tzw. okiem przesuwnych(ang. sliding windows)
Pozwala na wysłanie wielu pakietów przed otrzymaniem potwierdzenia
Pozwala lepiej wykorzystać przepustowość sieci (strumieniowe przesyłanie danych)
Okno może mieć zmienną wielkość
15. Omów /narysuj jak nawiązywane jest połaczenie TCP
Three-way handshake
Host1 Host2
----------- SYN x --------->
<--- SYN y / ACK x+1---
---------ACK y+1 -------->
16. Jak okresla się 'pilność danych' w protokole TCP? Jakie znasz wykorzystanie tej możliwości?
Można oznaczyć pilność danych przez bit URG (urgent)
wskaźnik pilnych danych określa koniec takich danych w segmencie
Program odbiorcy powinien przejść do „trybu pilności” i obsłużyć otrzymane pilne dane
Przykład użycia: np. gdy trzeba pilnie zamknąć połączenie, gdy chcemy przerwać przesyłanie strumienia
17. Jak obsługiwane są przeciązenia sieci? Co w protokole TCP zapobiega przeciązeniom? Jaki mechanizm?
Metoda powolnego startu (Slow Start Algorithm) – do kontrolowania przeciążeń stosowane jest tzw. okno przeciążeniowe (congestion window). Zwykle jest ono równe oknu odbiorcy. Gubienie segmentu powoduje zmniejszenie się go o ½ (aż do osiągnięcia rozmiaru 1 segmentu). Dla segmentów pozostałych w oknie zwiększa się czas, po którym ma nastąpić retransmisja.
Metoda wielokrotnego zmniejszania – stosowana przy rozpoczynaniu ruchu w ramach nowego połączenia lub przy wyjściu ze stanu przeciążenia. Na początku okno przeciążeniowe ma rozmiar 1 segmentu. Rozmiar jest zwiększany o 1 segment po otrzymaniu potwierdzenia. Gdy rozmiar okna osiąga ½ swojej wartości sprzed przeciążenia to okno jest zwiększane dopiero wtedy, gdy wszystkie segmenty w oknie zostały potwierdzone.