Sieci komputerowe 1 DSRG

Wielkość: px
Rozpocząć pokaz od strony:

Download "Sieci komputerowe 1 DSRG"

Transkrypt

1 Sieci komputerowe 1

2 Sieci komputerowe 2 Warstwa transportowa Warstwa 4 modelu OSI Warstwa 3 modelu TCP/IP warstwa aplikacji warstwa prezentacji warstwa aplikacji warstwa sesji warstwa transportowa warstwa sieci warstwa łącza danych warstwa fizyczna API API API warstwa transportowa warstwa sieci warstwa łącza

3 Sieci komputerowe 3 Warstwa transportowa Zapewnienie niezawodnego przesyłania danych /wg ISO/ Transmisja połączeniowa nawiązywanie połączenia uzgadnianie parametrów połączenia wysyłanie danych wysokopriorytetowych Transmisja bezpołączeniowa

4 Sieci komputerowe 4 Enkapsulacja nagłówek ramki nagłówek pakietu nagłówek w. transportowej dane w. trans. dane pakietu dane ramki nagłówek Ethernet nagłówek IP nagłówek TCP o g o n 14 B 20 B 20 B dane pakietu dane ramki dane TCP 4 B

5 Sieci komputerowe 5 Enkapsulacja Narzut enkapsulacji może mieć duży wpływ na wielkość generowanego strumienia danych Przykładowo dla enkapsulacji Ethernet/IP/TCP oraz strumienia danych 64 kb/s: Rozmiar segmentu TCP Narzut nagłówków Wymagane pasmo dla sieci nagłówek Ethernet nagłówek IP nagłówek TCP o g o n 1 B 5800% ~ 3,8 Mb/s nagłówek Ethernet nagłówek IP nagłówek TCP dane (58 B) o g o n 58 B 100% 128 kb/s dane (1460B) 1460 B ~ 4% ~ 66 kb/s

6 Sieci komputerowe 6 Porty Właściwie każdy współczesny komputer jest (może być) wyposażony w system operacyjny pozwalający na uruchamianie wielu zadań jednocześnie Identyfikacja procesów: numery problemy: numery procesów zmieniają się np. przy restarcie, zmiana numerów punktów docelowych musiałaby być sygnalizowana innym hostom,... rozwiązanie: schemat adresacji procesów wewnątrz każdego hosta Port: abstrakcyjny punkt docelowy identyfikowany za pomocą dodatniej liczby całkowitej

7 Sieci komputerowe 7 Porty Multipleksacja / demultipleksacja segmentów Proces A Proces B Proces C Proces D Port 1 Port 2 Port 3 Port 4 Protokół warstwy 4 Protokół warstwy 3

8 Sieci komputerowe 8 Porty Dostęp do portów może być: synchroniczny: przetwarzanie jest wstrzymane na czas komunikacji, asynchroniczny: bez przerywania przetwarzania Zazwyczaj dane przychodzące na dany port są buforowane. Dzięki temu: dane przychodzące na port zanim proces obsługujący może je przetworzyć nie są tracone, czas oczekiwania procesu na dane może zostać skrócony. UWAGA! Bufory mają ograniczoną długość! Numery portów dla różnych protokołów warstwy 4 mogą się powtarzać.

9 Sieci komputerowe 9 Porty - programowanie Asocjacja jest to piątka: (protokół, adres lokalny, proces lokalny, adres obcy, proces obcy) Półasocjacja inaczej gniazdo (socket) to trójka: lub (protokół, adres lokalny, proces lokalny) (protokół, adres obcy, proces obcy) W przypadku protokołów TCP i UDP procesy identyfikowane są przez numery portów określone w nagłówku

10 Sieci komputerowe 10 Porty Zestaw dobrze znanych portów określa porty, z którymi mogą łączyć się klienci (RFC 1700) np.: 21 FTP 23 Telnet 25 Mail (SMTP) 80 HTTP Porty efemeryczne krótkotrwałe, określane przez moduł warstwy transportowej a na czas połączenia

11 Sieci komputerowe 11 Porty Możliwe jest więcej, niż jedno połączenie na port... np. trudno sobie wyobrazić, by SMTP zmieniał port dla każdego połączenia Usługa docelowa może obsługiwać jednocześnie wielu ów, gdyż dialog między nimi (połączenie) jest identyfikowany przez końce połączeń (ang. endpoints). Pozwala to różnym om na jednoczesne łączenie się na ten sam port a realizującego daną usługę.

12 Sieci komputerowe 12 Porty a połączenia (1029) (80) SERWER (1920) Protokół Adr. lok. Proc. lok. Adr. zd. Proc. zd. Połączenie 1: (TCP, , 80, , 1029) Połączenie 2: (TCP, , 80, , 1920)

13 Sieci komputerowe 13 Interfejs programisty Interfejsy niskiego poziomu gniazda BSD (UNIX, Linux) Transport Layer Interface TLI (UNIX, Linux) winsock (Microsoft) Interfejsy wysokiego poziomu java.net (Sun) biblioteka MFC (Microsoft)

14 Sieci komputerowe 14 Gniazda BSD socket bind listen accept connect send[to] recv[from] tworzy gniazdo; serw./kli. wiąże adres i proces z gniazdem; serw.[/kli.] tworzy kolejkę zgłoszeń; serw. oczekuje na zgłoszenie; serw. ustanawia połączenie; kli. wysyła dane; serw./kli. pobiera dane; serw./kli.

15 Sieci komputerowe 15 Gniazda BSD int socket(int family, tworzy int type, gniazdo; int protocol) serw./kli. bind wiąże adres i proces z gniazdem; serw.[/kli.] listen tworzy kolejkę zgłoszeń; serw. Rodzina Rodzaj Deskryptor gniazda: protokołu, adresów: gniazda np. sockfd dla AF_INET: accept AF_UNIX SOCK_STREAM IPPROTO_UDP oczekuje protokoły gniazdo protokół na wewnętrzne zgłoszenie; strumieniowe UDP Unixa serw. AF_INET IPPROTO_TCP protokoły Internetu connect SOCK_DGRAM protokół ustanawia gniazdo połączenie; datagramowe TCP kli. AF_NS IPPROTO_ICMP SOCK_RAW protokoły protokół gniazdo Xeroxa surowe ICMP NS AF_IMPLINK IPPROTO_RAW SOCK_SEQPACKET warstwa protokół gniazdo kanałowa surowe IPIMP

16 Sieci komputerowe 16 Gniazda BSD socket tworzy gniazdo; serw./kli. int bind(int sockfd, wiąże struct adres sockaddr i proces *myaddr, z gniazdem; int addrlen) serw.[/kli.] listen accept connect tworzy kolejkę zgłoszeń; serw. oczekuje na zgłoszenie; serw. ustanawia Deskryptor gniazda połączenie; kli. Określa Struktura Zero lub rozmiar kod zawierająca błędu struktury adres, myaddr właściwy danemu protokołowi

17 Sieci komputerowe 17 Gniazda BSD socket tworzy gniazdo; serw./kli. bind wiąże adres i proces z gniazdem; serw.[/kli.] int listen(int sockfd, tworzy int backlog) kolejkę zgłoszeń; serw. accept oczekuje na zgłoszenie; serw. connect ustanawia połączenie; kli. Deskryptor Rozmiar Zero lub kolejki kod gniazda błędu żądań połączenia maks. 5

18 Sieci komputerowe 18 socket bind Gniazda BSD tworzy gniazdo; serw./kli. Deskryptor Adres a, gniazda którego a żądanie zostało przyjęte wiąże adres i proces z gniazdem; serw.[/kli.] listen tworzy kolejkę zgłoszeń; serw. int accept(int sockfd, oczekuje struct na sockaddr zgłoszenie; *peer, serw. connect int *addrlen) ustanawia połączenie; kli.

19 Sieci komputerowe 19 Gniazda BSD socket tworzy gniazdo; serw./kli. bind wiąże adres i proces z gniazdem; serw.[/kli.] listen tworzy kolejkę zgłoszeń; serw. accept oczekuje na zgłoszenie; serw. int connect(int sockfd, ustanawia struct połączenie; sockaddr *servaddr, kli. int addrlen)

20 Sieci komputerowe 20 Gniazda BSD int write(int sockfd, char *buf, int nbytes) int send(int sockfd, char *buf, int nbytes, int flags) int sendto(int sockfd, char *buf, int nbytes, int flags, struct sockaddr *to, int addrlen) int read(int sockfd, char *buf, int nbytes) int recv(int sockfd, char *buf, int nbytes, int flags) int recvfrom(int sockfd, char *buf, int nbytes, int flags, struct sockaddr *from, int *addrlen)

21 Sieci komputerowe 21 Użycie funkcji interfejsu gniazd połączeniowy socket bind listen accept blokuje oczekując na zgłoszenie recv send ustanowienie połączenia dane - żądanie dane - odpowiedź socket connect send recv

22 Sieci komputerowe 22 Użycie funkcji interfejsu gniazd bezpołączeniowy socket bind recvfrom blokuje aż do otrzymania danych przetwarza dane sendto dane - żądanie dane - odpowiedź socket bind sendto recvfrom blokuje aż do otrzymania danych przetwarza dane

23 Sieci komputerowe 23 Interfejs wysokopoziomowy Serwer import java.net.*; import java.io.*; Klient import java.net.*; import java.io.*; [...] ServerSocket s_s = new ServerSocket(port); [...] Socket s = new Socket(s_ip_addr,s_port); [...] Socket s = s_s.accept(); OuptutStream out = s.getoutputstream(); InputStream in = s.getinputstream(); [...] [...] OuptutStream out = s.getoutputstream(); InputStream in = s.getinputstream(); [...]

24 Sieci komputerowe 24 Rodzaje protokołów Połączeniowy nawiązywanie połączenia transmisja danych zamykanie połączenia Większe możliwości (zapewnienie, że dane dotrą do celu itp.) Bezpołączeniowy tylko transmisja... Mniejsze narzuty na informacje kontrolne

25 Sieci komputerowe 25 Transmission Control Protocol Oczekiwanie warstw wyższych (i programistów :-) ): możliwość przesyłania strumieni danych bez konieczności wpisywania w każdy program obsługi błędów na maszynie odbiorcy ma się pojawić dokładnie taki sam ciąg oktetów, jak wysłany przez nadawcę

26 Sieci komputerowe 26 Transmission Control Protocol Połączeniowy nawiązywanie połączenia (zestawienie obwodu wirtualnego) złudzenie istnienia obwodu jest realizowane za pomocą mechanizmów kontrolnych TCP zamykanie połączenia każde połączenie ma dokładnie dwa końce za pomocą połączenia możliwa jest transmisja w obie strony (full-duplex) przy okazji do danych da się dokleić informacje kontrolne połączenia są buforowane w sposób niewidoczny dla aplikacji (powód: narzuty enkapsulacji)

27 Sieci komputerowe 27 Transmission Control Protocol Niezawodny potwierdzenia odbioru (ang. positive acknowledgement) retransmisje kontrola przepływu danych suma kontrolna dla nagłówka i danych porządkowanie kolejności segmentów usuwanie segmentów zdublowanych

28 Sieci komputerowe 28 Transmission Control Protocol Co specyfikuje protokół TCP? format danych, procedury inicjalizacji i zamknięcia połączeń, procedury upewnienia się, że dane dotarły, sposób rozróżniania odbiorców, sposoby reagowania na błędy Czego protokół TCP nie specyfikuje? interfejsu programisty (API)

29 Sieci komputerowe 29 Nagłówek TCP Nagłówek ma rozmiar 20 bajtów + opcje długość (4) numer portu źródła (16) zarezerw. (6) suma kontrolna (16) numer sekwencyjny (32) numer potwierdzenia (32) flagi (6) opcje (?) dane numer portu przeznaczenia (16) rozmiar okna (16) wskaźnik ważności (16)

30 Sieci komputerowe 30 Flagi TCP SYN ACK FIN RST URG PSH synchronizacja numerów sekwencyjnych (ang. Initial Sequence Number ISN) pole potwierdzenia (ang. acknowledgment) zawiera aktualny numer potwierdzenia zakończenie (ang. finish) przesyłania danych zresetowanie (ang. reset) połączenia dane pilne (ang. urgent) począwszy od wskaźnika ważności przekazanie danych do aplikacji najszybciej jak to możliwe (ang. push)

31 Sieci komputerowe 31 Suma kontrolna Obliczanie sumy kontrolnej dla nagłówka, danych oraz pseudonagłówka adres źródła (32) adres przeznaczenia (32) nieużywane = 0 (8) protokół = 6 (8) długość segmentu TCP (16) Nagłówek Dane

32 Sieci komputerowe 32 Suma kontrolna Do czego służy jeszcze jedna suma kontrolna? warstwa 2: poprawność ramki, ew. korekta, warstwa 3: poprawność nagłówka pakietu, warstwa 4: poprawność pseudonagłówka, nagłówka segmentu oraz przesyłanych danych Pseudonagłówek pozwala na zweryfikowanie, czy ramka dostarczona przez warstwę 3 rzeczywiście jest adresowany do danego odbiorcy Uwaga: ten sposób obliczania sumy kontrolnej oznacza, że protokół warstwy 4 korzysta z danych warstwy 3, co nie do końca jest zgodne z modelem OSI

33 Sieci komputerowe 33 Opcje Maksymalny rozmiar segmentu (ang. Maximum Segment Size MSS) im większe segmenty tym wydajniejsze przesyłanie danych należy unikać fragmentacji pakietów IP duże segmenty mają niekorzystny wpływ np. na transmisje danych w czasie rzeczywistym Skalowanie okna Znacznik czasowy określanie RTT

34 Sieci komputerowe 34 Przykład połączenia Serwer tworzy gniazdo np. (tcp, *, 23) i oczekuje na połączenie od a (pasywne otwarcie) Serwer (tcp, *, 23) Klient

35 Sieci komputerowe 35 Przykład połączenia Klient łączy się z em, otwierając połączenie poleceniem connect (aktywne otwarcie) connect( :23) Serwer (tcp, *, 23) Klient

36 Sieci komputerowe 36 Przykład połączenia Moduł TCP tworzy gniazdo a z efemerycznym numerem portu np Serwer (tcp, *, 23) Klient (tcp, , 1234)

37 Sieci komputerowe 37 Przykład połączenia Serwer otrzymuje zgłoszenie od a Moduł TCP tworzy unikalną asocjację: (tcp, , 23, , 1234) Serwer (tcp, , 23) Klient (tcp, , 1234)

38 Sieci komputerowe 38 Schemat stanów TCP LISTEN CLOSE CONNECT SYN» CLOSE»SYN SYN+ACK» LISTEN SYN RCVD»RST»SYN SYN+ACK» SEND SYN» SYN SENT CLOSE FIN» CLOSE FIN»»SYN+ACK ACK»»FIN ACK» active close FIN WAIT 1 FIN WAIT 2»FIN ACK»»FIN+ACK ACK»»FIN ACK» CLOSING TIME WAIT CLOSE WAIT CLOSE FIN» LAST ACK passive close typowe przejście a typowe przejście a przejście nietypowe timeout

39 Sieci komputerowe 39 Nawiązanie połączenia LISTEN CLOSE CONNECT SYN» CLOSE»SYN SYN+ACK» LISTEN SYN RCVD»RST»SYN SYN+ACK» SEND SYN» SYN SENT»SYN+ACK ACK»

40 Sieci komputerowe 40 Nawiązanie połączenia LISTEN CLOSE CONNECT SYN» CLOSE»SYN SYN+ACK» LISTEN SYN RCVD»RST»SYN SYN+ACK» SEND SYN» SYN SENT»SYN+ACK ACK»

41 Sieci komputerowe 41 Nawiązanie połączenia LISTEN CLOSE CONNECT SYN» CLOSE»SYN SYN+ACK» LISTEN SYN RCVD»RST»SYN SYN+ACK» SEND SYN» SYN SENT»SYN+ACK ACK» LISTEN

42 Sieci komputerowe 42 Nawiązanie połączenia LISTEN CLOSE CONNECT SYN» CLOSE»SYN SYN+ACK» LISTEN SYN RCVD»RST»SYN SYN+ACK» SEND SYN» SYN SENT»SYN+ACK ACK» LISTEN

43 Sieci komputerowe 43 Nawiązanie połączenia LISTEN CLOSE CONNECT SYN» CLOSE»SYN SYN+ACK» LISTEN SYN RCVD»RST»SYN SYN+ACK» SEND SYN» SYN SENT»SYN+ACK ACK» SYN n SYN SENT LISTEN

44 Sieci komputerowe 44 Nawiązanie połączenia LISTEN CLOSE CONNECT SYN» CLOSE»SYN SYN+ACK» LISTEN SYN RCVD»RST»SYN SYN+ACK» SEND SYN» SYN SENT»SYN+ACK ACK» SYN SENT SYN n LISTEN

45 Sieci komputerowe 45 Nawiązanie połączenia LISTEN CLOSE CONNECT SYN» CLOSE»SYN SYN+ACK» LISTEN SYN RCVD»RST»SYN SYN+ACK» SEND SYN» SYN SENT»SYN+ACK ACK» SYN SENT SYN n LISTEN

46 Sieci komputerowe 46 Nawiązanie połączenia LISTEN CLOSE CONNECT SYN» CLOSE»SYN SYN+ACK» LISTEN SYN RCVD»RST»SYN SYN+ACK» SEND SYN» SYN SENT»SYN+ACK ACK» SYN SENT SYN n LISTEN

47 Sieci komputerowe 47 Nawiązanie połączenia LISTEN CLOSE CONNECT SYN» CLOSE»SYN SYN+ACK» LISTEN SYN RCVD»RST»SYN SYN+ACK» SEND SYN» SYN SENT»SYN+ACK ACK» SYN SENT SYN n LISTEN SYN m + ACK SYN RCVD

48 Sieci komputerowe 48 Nawiązanie połączenia LISTEN CLOSE CONNECT SYN» CLOSE»SYN SYN+ACK» LISTEN SYN RCVD»RST»SYN SYN+ACK» SEND SYN» SYN SENT»SYN+ACK ACK» SYN SENT SYN n SYN m + ACK LISTEN LISTEN

49 Sieci komputerowe 49 Nawiązanie połączenia LISTEN CLOSE CONNECT SYN» CLOSE»SYN SYN+ACK» LISTEN SYN RCVD»RST»SYN SYN+ACK» SEND SYN» SYN SENT»SYN+ACK ACK» SYN SENT SYN n LISTEN SYN m + ACK LISTEN

50 Sieci komputerowe 50 Nawiązanie połączenia LISTEN CLOSE CONNECT SYN» CLOSE»SYN SYN+ACK» LISTEN SYN RCVD»RST»SYN SYN+ACK» SEND SYN» SYN SENT»SYN+ACK ACK» SYN SENT SYN n LISTEN SYN m + ACK LISTEN

51 Sieci komputerowe 51 Nawiązanie połączenia LISTEN CLOSE CONNECT SYN» CLOSE»SYN SYN+ACK» LISTEN SYN RCVD»RST»SYN SYN+ACK» SEND SYN» SYN SENT»SYN+ACK ACK» SYN SENT SYN n LISTEN SYN m + ACK LISTEN ACK

52 Sieci komputerowe 52 Nawiązanie połączenia LISTEN CLOSE CONNECT SYN» CLOSE»SYN SYN+ACK» LISTEN SYN RCVD»RST»SYN SYN+ACK» SEND SYN» SYN SENT»SYN+ACK ACK» SYN SENT SYN n LISTEN SYN m + ACK LISTEN ACK

53 Sieci komputerowe 53 Nawiązanie połączenia LISTEN CLOSE CONNECT SYN» CLOSE»SYN SYN+ACK» LISTEN SYN RCVD»RST»SYN SYN+ACK» SEND SYN» SYN SENT»SYN+ACK ACK» SYN SENT SYN n LISTEN SYN m + ACK ACK LISTEN

54 Sieci komputerowe 54 Nawiązanie połączenia LISTEN CLOSE CONNECT SYN» CLOSE»SYN SYN+ACK» LISTEN SYN RCVD»RST»SYN SYN+ACK» SEND SYN» SYN SENT»SYN+ACK ACK» SYN SENT SYN n LISTEN SYN m + ACK ACK LISTEN

55 Sieci komputerowe 55 Nawiązanie połączenia LISTEN CLOSE CONNECT SYN» CLOSE»SYN SYN+ACK» LISTEN SYN RCVD»RST»SYN SYN+ACK» SEND SYN» SYN SENT»SYN+ACK ACK» SYN SENT SYN n LISTEN SYN m + ACK ACK LISTEN

56 Sieci komputerowe 56 Zamknięcie połączenia CLOSE FIN»»FIN ACK» active close FIN WAIT 1 FIN WAIT 2»FIN ACK»»FIN+ACK ACK»»FIN ACK» CLOSING TIME WAIT CLOSE WAIT CLOSE FIN» LAST ACK passive close timeout

57 Sieci komputerowe 57 Zamknięcie połączenia CLOSE FIN»»FIN ACK» active close FIN WAIT 1 FIN WAIT 2»FIN ACK»»FIN+ACK ACK»»FIN ACK» CLOSING TIME WAIT CLOSE WAIT CLOSE FIN» LAST ACK passive close timeout

58 Sieci komputerowe 58 Zamknięcie połączenia CLOSE FIN»»FIN ACK» active close FIN WAIT 1 FIN WAIT 2»FIN ACK»»FIN+ACK ACK»»FIN ACK» CLOSING TIME WAIT CLOSE WAIT CLOSE FIN» LAST ACK passive close timeout FIN WAIT 1 FIN

59 Sieci komputerowe 59 Zamknięcie połączenia CLOSE FIN»»FIN ACK» active close FIN WAIT 1 FIN WAIT 2»FIN ACK»»FIN+ACK ACK»»FIN ACK» CLOSING TIME WAIT CLOSE WAIT CLOSE FIN» LAST ACK passive close timeout FIN WAIT 1 FIN

60 Sieci komputerowe 60 Zamknięcie połączenia CLOSE FIN»»FIN ACK» active close FIN WAIT 1 FIN WAIT 2»FIN ACK»»FIN+ACK ACK»»FIN ACK» CLOSING TIME WAIT CLOSE WAIT CLOSE FIN» LAST ACK passive close timeout FIN WAIT 1 FIN ACK CLOSE WAIT

61 Sieci komputerowe 61 Zamknięcie połączenia CLOSE FIN»»FIN ACK» active close FIN WAIT 1 FIN WAIT 2»FIN ACK»»FIN+ACK ACK»»FIN ACK» CLOSING TIME WAIT CLOSE WAIT CLOSE FIN» LAST ACK passive close timeout FIN WAIT 1 FIN ACK CLOSE WAIT

62 Sieci komputerowe 62 Zamknięcie połączenia CLOSE FIN»»FIN ACK» active close FIN WAIT 1 FIN WAIT 2»FIN ACK»»FIN+ACK ACK»»FIN ACK» CLOSING TIME WAIT CLOSE WAIT CLOSE FIN» LAST ACK passive close timeout FIN WAIT 1 FIN ACK CLOSE WAIT FIN WAIT 2

63 Sieci komputerowe 63 Zamknięcie połączenia CLOSE FIN»»FIN ACK» active close FIN WAIT 1 FIN WAIT 2»FIN ACK»»FIN+ACK ACK»»FIN ACK» CLOSING TIME WAIT CLOSE WAIT CLOSE FIN» LAST ACK passive close timeout FIN WAIT 1 FIN ACK CLOSE WAIT FIN WAIT 2

64 Sieci komputerowe 64 Zamknięcie połączenia CLOSE FIN»»FIN ACK» active close FIN WAIT 1 FIN WAIT 2»FIN ACK»»FIN+ACK ACK»»FIN ACK» CLOSING TIME WAIT CLOSE WAIT CLOSE FIN» LAST ACK passive close timeout FIN WAIT 1 FIN ACK CLOSE WAIT FIN WAIT 2 FIN LAST ACK

65 Sieci komputerowe 65 Zamknięcie połączenia CLOSE FIN»»FIN ACK» active close FIN WAIT 1 FIN WAIT 2»FIN ACK»»FIN+ACK ACK»»FIN ACK» CLOSING TIME WAIT CLOSE WAIT CLOSE FIN» LAST ACK passive close timeout FIN WAIT 1 FIN ACK CLOSE WAIT FIN WAIT 2 FIN LAST ACK

66 Sieci komputerowe 66 Zamknięcie połączenia CLOSE FIN»»FIN ACK» active close FIN WAIT 1 FIN WAIT 2»FIN ACK»»FIN+ACK ACK»»FIN ACK» CLOSING TIME WAIT CLOSE WAIT CLOSE FIN» LAST ACK passive close timeout FIN WAIT 1 FIN ACK CLOSE WAIT FIN WAIT 2 TIME WAIT ACK FIN LAST ACK

67 Sieci komputerowe 67 Zamknięcie połączenia CLOSE FIN»»FIN ACK» active close FIN WAIT 1 FIN WAIT 2»FIN ACK»»FIN+ACK ACK»»FIN ACK» CLOSING TIME WAIT CLOSE WAIT CLOSE FIN» LAST ACK passive close timeout FIN WAIT 1 FIN ACK CLOSE WAIT FIN WAIT 2 TIME WAIT FIN ACK LAST ACK

68 Sieci komputerowe 68 Zamknięcie połączenia CLOSE FIN»»FIN ACK» active close FIN WAIT 1 FIN WAIT 2»FIN ACK»»FIN+ACK ACK»»FIN ACK» CLOSING TIME WAIT CLOSE WAIT CLOSE FIN» LAST ACK passive close timeout FIN WAIT 1 FIN ACK CLOSE WAIT FIN WAIT 2 TIME WAIT FIN ACK LAST ACK

69 Sieci komputerowe 69 Zamknięcie połączenia CLOSE FIN»»FIN ACK» active close FIN WAIT 1 FIN WAIT 2»FIN ACK»»FIN+ACK ACK»»FIN ACK» CLOSING TIME WAIT CLOSE WAIT CLOSE FIN» LAST ACK passive close timeout FIN WAIT 1 FIN ACK CLOSE WAIT FIN WAIT 2 TIME WAIT FIN ACK LAST ACK

70 Sieci komputerowe 70 Zamknięcie połączenia CLOSE FIN»»FIN ACK» active close FIN WAIT 1 FIN WAIT 2»FIN ACK»»FIN+ACK ACK»»FIN ACK» CLOSING TIME WAIT CLOSE WAIT CLOSE FIN» LAST ACK passive close timeout FIN WAIT 1 FIN ACK CLOSE WAIT FIN WAIT 2 TIME WAIT FIN ACK LAST ACK

71 Sieci komputerowe 71 Jednoczesne otwarcie LISTEN CLOSE CONNECT SYN» CLOSE»SYN SYN+ACK» LISTEN SYN RCVD»RST»SYN SYN+ACK» SEND SYN» SYN SENT»SYN+ACK ACK» LISTEN

72 Sieci komputerowe 72 Jednoczesne otwarcie LISTEN CLOSE CONNECT SYN» CLOSE»SYN SYN+ACK» LISTEN SYN RCVD»RST»SYN SYN+ACK» SEND SYN» SYN SENT»SYN+ACK ACK» SYN n LISTEN

73 Sieci komputerowe 73 Jednoczesne otwarcie LISTEN CLOSE CONNECT SYN» CLOSE»SYN SYN+ACK» LISTEN SYN RCVD»RST»SYN SYN+ACK» SEND SYN» SYN SENT»SYN+ACK ACK» SYN SENT SYN n SYN m LISTEN

74 Sieci komputerowe 74 Jednoczesne otwarcie LISTEN CLOSE CONNECT SYN» CLOSE»SYN SYN+ACK» LISTEN SYN RCVD»RST»SYN SYN+ACK» SEND SYN» SYN SENT»SYN+ACK ACK» SYN SENT SYN n SYN m LISTEN SYN SENT

75 Sieci komputerowe 75 Jednoczesne otwarcie LISTEN CLOSE CONNECT SYN» CLOSE»SYN SYN+ACK» LISTEN SYN RCVD»RST»SYN SYN+ACK» SEND SYN» SYN SENT»SYN+ACK ACK» SYN SENT SYN n SYN m LISTEN SYN SENT

76 Sieci komputerowe 76 Jednoczesne otwarcie LISTEN CLOSE CONNECT SYN» CLOSE»SYN SYN+ACK» LISTEN SYN RCVD»RST»SYN SYN+ACK» SEND SYN» SYN SENT»SYN+ACK ACK» SYN SENT SYN n SYN m LISTEN SYN SENT SYN m, ACK n+1

77 Sieci komputerowe 77 Jednoczesne otwarcie LISTEN CLOSE CONNECT SYN» CLOSE»SYN SYN+ACK» LISTEN SYN RCVD»RST»SYN SYN+ACK» SEND SYN» SYN SENT»SYN+ACK ACK» SYN SENT SYN n, ACK m+1 LISTEN SYN n SYN SENT SYN m SYN m, ACK n+1 SYN RCVD

78 Sieci komputerowe 78 Jednoczesne otwarcie LISTEN CLOSE CONNECT SYN» CLOSE»SYN SYN+ACK» LISTEN SYN RCVD»RST»SYN SYN+ACK» SEND SYN» SYN SENT»SYN+ACK ACK» SYN SENT SYN RCVD SYN n SYN m SYN m, ACK n+1 SYN n, ACK m+1 LISTEN SYN SENT SYN RCVD

79 Sieci komputerowe 79 Jednoczesne otwarcie LISTEN CLOSE CONNECT SYN» CLOSE»SYN SYN+ACK» LISTEN SYN RCVD»RST»SYN SYN+ACK» SEND SYN» SYN SENT»SYN+ACK ACK» SYN SENT SYN RCVD SYN n SYN m SYN m, ACK n+1 SYN n, ACK m+1 LISTEN SYN SENT SYN RCVD

80 Sieci komputerowe 80 Jednoczesne otwarcie LISTEN CLOSE CONNECT SYN» CLOSE»SYN SYN+ACK» LISTEN SYN RCVD»RST»SYN SYN+ACK» SEND SYN» SYN SENT»SYN+ACK ACK» SYN SENT SYN RCVD SYN n SYN m SYN m, ACK n+1 SYN n, ACK m+1 LISTEN SYN SENT SYN RCVD

81 Sieci komputerowe 81 Jednoczesne otwarcie LISTEN CLOSE CONNECT SYN» CLOSE»SYN SYN+ACK» LISTEN SYN RCVD»RST»SYN SYN+ACK» SEND SYN» SYN SENT»SYN+ACK ACK» SYN SENT SYN RCVD SYN n SYN m SYN m, ACK n+1 SYN n, ACK m+1 LISTEN SYN SENT SYN RCVD

82 Sieci komputerowe 82 Jednoczesne otwarcie LISTEN CLOSE CONNECT SYN» CLOSE»SYN SYN+ACK» LISTEN SYN RCVD»RST»SYN SYN+ACK» SEND SYN» SYN SENT»SYN+ACK ACK» SYN SENT SYN RCVD SYN n SYN m SYN m, ACK n+1 SYN n, ACK m+1 LISTEN SYN SENT SYN RCVD

83 Sieci komputerowe 83 Jednoczesne zamknięcie CLOSE FIN» active close FIN WAIT 1 FIN WAIT 2»FIN ACK»»FIN+ACK ACK»»FIN ACK» CLOSING TIME WAIT timeout host A host B

84 Sieci komputerowe 84 Jednoczesne zamknięcie CLOSE FIN» active close FIN WAIT 1 FIN WAIT 2»FIN ACK»»FIN+ACK ACK»»FIN ACK» CLOSING TIME WAIT timeout host A FIN n host B

85 Sieci komputerowe 85 Jednoczesne zamknięcie CLOSE FIN» active close FIN WAIT 1 FIN WAIT 2»FIN ACK»»FIN+ACK ACK»»FIN ACK» CLOSING TIME WAIT timeout host A FIN m FIN n host B FIN WAIT 1

86 Sieci komputerowe 86 Jednoczesne zamknięcie CLOSE FIN» active close FIN WAIT 1 FIN WAIT 2»FIN ACK»»FIN+ACK ACK»»FIN ACK» CLOSING TIME WAIT timeout host A host B FIN WAIT 1 FIN m FIN n FIN WAIT 1

87 Sieci komputerowe 87 Jednoczesne zamknięcie CLOSE FIN» active close FIN WAIT 1 FIN WAIT 2»FIN ACK»»FIN+ACK ACK»»FIN ACK» CLOSING TIME WAIT timeout FIN WAIT 1 host A host B FIN m FIN n FIN WAIT 1

88 Sieci komputerowe 88 Jednoczesne zamknięcie CLOSE FIN» active close FIN WAIT 1 FIN WAIT 2»FIN ACK»»FIN+ACK ACK»»FIN ACK» CLOSING TIME WAIT timeout host A FIN WAIT 1 ACK n+1 FIN m FIN n host B FIN WAIT 1

89 Sieci komputerowe 89 Jednoczesne zamknięcie CLOSE FIN» active close FIN WAIT 1 FIN WAIT 2»FIN ACK»»FIN+ACK ACK»»FIN ACK» CLOSING TIME WAIT timeout host A host B FIN n FIN WAIT 1 FIN m FIN WAIT 1 ACK n+1 CLOSING ACK m+1

90 Sieci komputerowe 90 Jednoczesne zamknięcie CLOSE FIN» active close FIN WAIT 1 FIN WAIT 2»FIN ACK»»FIN+ACK ACK»»FIN ACK» CLOSING TIME WAIT timeout FIN WAIT 1 host A FIN m FIN n host B FIN WAIT 1 CLOSING ACK n+1 ACK m+1 CLOSING

91 Sieci komputerowe 91 Jednoczesne zamknięcie CLOSE FIN» active close FIN WAIT 1 FIN WAIT 2»FIN ACK»»FIN+ACK ACK»»FIN ACK» CLOSING TIME WAIT timeout FIN WAIT 1 host A FIN m FIN n host B FIN WAIT 1 CLOSING ACK n+1 ACK m+1 CLOSING

92 Sieci komputerowe 92 Jednoczesne zamknięcie CLOSE FIN» active close FIN WAIT 1 FIN WAIT 2»FIN ACK»»FIN+ACK ACK»»FIN ACK» CLOSING TIME WAIT timeout FIN WAIT 1 host A FIN m FIN n host B FIN WAIT 1 CLOSING ACK n+1 ACK m+1 CLOSING TIME WAIT

93 Sieci komputerowe 93 Jednoczesne zamknięcie CLOSE FIN» active close FIN WAIT 1 FIN WAIT 2»FIN ACK»»FIN+ACK ACK»»FIN ACK» CLOSING TIME WAIT timeout FIN WAIT 1 host A FIN m FIN n host B FIN WAIT 1 CLOSING ACK n+1 ACK m+1 TIME WAIT CLOSING TIME WAIT

94 Sieci komputerowe 94 Jednoczesne zamknięcie CLOSE FIN» active close FIN WAIT 1 FIN WAIT 2»FIN ACK»»FIN+ACK ACK»»FIN ACK» CLOSING TIME WAIT timeout FIN WAIT 1 host A FIN m FIN n host B FIN WAIT 1 CLOSING ACK n+1 ACK m+1 TIME WAIT CLOSING TIME WAIT

95 Sieci komputerowe 95 Jednoczesne zamknięcie CLOSE FIN» active close FIN WAIT 1 FIN WAIT 2»FIN ACK»»FIN+ACK ACK»»FIN ACK» CLOSING TIME WAIT timeout FIN WAIT 1 host A FIN m FIN n host B FIN WAIT 1 CLOSING ACK n+1 ACK m+1 TIME WAIT CLOSING TIME WAIT

96 Sieci komputerowe 96 Przesyłanie danych Przesyłanie danych masowych przesuwane okna powolny start Przesyłanie danych interaktywnych algorytm Nagle a opóźnione potwierdzenie Eliminacja syndromu głupiego okna

97 Sieci komputerowe 97 Przesuwane okno Zapobiega przeciążeniu odbiorcy odbiorca określa ile danych jest w stanie przyjąć szybki nadawca musi poczekać, aż odbiorca otworzy dla niego okno Zasada działania ogłoszenie okna zamykanie (wysyłanie danych) otwieranie (odbieranie danych) kurczenie się (zabronione) Rozmiar okna przesyłany jest w każdym potwierdzeniu i określa stan zapełnienia bufora odbiorcy

98 Sieci komputerowe 98 Przesuwane okno okno 4096 nadawca SYN SYN + ACK, win 4096 ACK odbiorca

99 Sieci komputerowe 99 Przesuwane okno nadawca SYN SYN + ACK, win 4096 ACK 1 odbiorca 1:1024, ACK 1

100 Sieci komputerowe 100 Przesuwane okno nadawca SYN SYN + ACK, win 4096 ACK 1 odbiorca 1:1024, ACK :2048, ACK 1

101 Sieci komputerowe 101 Przesuwane okno nadawca SYN SYN + ACK, win 4096 ACK 1 odbiorca 1:1024, ACK :2048, ACK :3072, ACK 1

102 Sieci komputerowe 102 Przesuwane okno okno 4096 nadawca SYN SYN + ACK, win 4096 ACK 1 odbiorca 1:1024, ACK :2048, ACK :3072, ACK 1 ACK 2049, win 4096

103 Sieci komputerowe 103 Przesuwane okno okno 3072 nadawca SYN SYN + ACK, win 4096 ACK 1 odbiorca 1:1024, ACK :2048, ACK :3072, ACK 1 ACK 2049, win 4096 ACK 3073, win 3072

104 Sieci komputerowe 104 Przesuwane okno nadawca SYN SYN + ACK, win 4096 ACK 1 odbiorca 1:1024, ACK :2048, ACK :3072, ACK 1 ACK 2049, win 4096 ACK 3073, win :4096, ACK 1

105 Sieci komputerowe 105 Przesuwane okno okno 4096 nadawca SYN + ACK, win 4096 ACK 1 odbiorca 1:1024, ACK :2048, ACK :3072, ACK 1 ACK 2049, win 4096 ACK 3073, win :4096, ACK 1 ACK 4097, win 4096

106 Sieci komputerowe 106 Przesuwane okno nadawca ACK 1 odbiorca 1:1024, ACK :2048, ACK :3072, ACK 1 ACK 2049, win 4096 ACK 3073, win :4096, ACK 1 ACK 4097, win :5120, ACK 1

107 Sieci komputerowe 107 Przesuwane okno nadawca odbiorca 1:1024, ACK :2048, ACK :3072, ACK 1 ACK 2049, win 4096 ACK 3073, win :4096, ACK 1 ACK 4097, win :5120, ACK :6144, ACK 1

108 Sieci komputerowe 108 Przesuwane okno nadawca odbiorca 1025:2048, ACK :3072, ACK 1 ACK 2049, win 4096 ACK 3073, win :4096, ACK 1 ACK 4097, win :5120, ACK :6144, ACK :7168, ACK 1

109 Sieci komputerowe 109 Przesuwane okno okno 4096 nadawca 2049:3072, ACK 1 ACK 2049, win 4096 ACK 3073, win 3072 odbiorca 3073:4096, ACK 1 ACK 4097, win :5120, ACK :6144, ACK :7168, ACK 1 ACK 6145, win 4096

110 Sieci komputerowe 110 Przesuwane okno nadawca odbiorca ACK 2049, win 4096 ACK 3073, win :4097, ACK 1 ACK 4097, win :5121, ACK :6145, ACK :7169, ACK 1 ACK 6145, win :8192, ACK 1

111 Sieci komputerowe 111 Przesuwane okno nadawca ACK 3073, win 3072 odbiorca 3073:4097, ACK 1 ACK 4097, win :5121, ACK :6145, ACK :7169, ACK 1 ACK 6145, win :8193, ACK 1 ACK 8193, win 4096

112 Sieci komputerowe 112 Przesuwane okno Problem: okno o rozmiarze 0 możliwe jest zakleszczenie, gdy zginie ogłoszenie o niezerowym rozmiarze okna Rozwiązanie: nadawca co jakiś czas próbkuje zerowe okno Dane pilne (z ustawioną flagą URG) są wysyłane mimo zerowego rozmiaru okna tego typu dane są niejako poza głównym strumieniem transmisyjnym

113 Sieci komputerowe 113 Max. długość okna a przepustowość TCP Nadawca P= 64KB/(RTT + TT) Odbiorca 64KB Całe max okno 16bitów = 64K RTT TT Czas ACK, window 64K Opcja TCP Rozwiązanie: Skalowanie okna = mnożnik 16 bitowy = max okno 2 32

114 Sieci komputerowe 114 Powolny start Natychmiastowe zapełnienie całego okna może prowadzić do powstawania zatorów Nadawca określa okno przeciążenia cwnd (ang. congestion window) tj. ilość segmentów, które będzie wysyłał Powolny start kontrola przepływu przez nadawcę Wielkość okna kontrola przepływu przez odbiorcę Początkowo cwnd = 1 Zwiększanie cwnd o 1 po otrzymaniu ACK

115 Sieci komputerowe 115 Powolny start Przy stwierdzeniu przeciążenia (przekroczenie czasu oczekiwania na potwierdzenie) cwnd jest zmniejszane dwukrotnie (o ile cwnd > 1 segment) przy powtarzających się stratach cwnd maleje wykładniczo Następnie znowu każdy potwierdzony segment powoduje zwiększanie cwnd o 1 aż do momentu, gdy cwnd przyjmie wartość równą połowie wartości, przy której wystąpiło przeciążenie. Wtedy cwnd zaczyna rosnąć wolniej (jest zwiększane o 1 tylko wtedy, gdy wszystkie segmenty w oknie zostały potwierdzone).

116 Sieci komputerowe 116 Powolny start Liczba wysyłanych bajtów = Minimum { Sending window, Congestion window } Powolny start jest uaktywniany po każdym Timeout

117 Sieci komputerowe 117 Powolny start Congestion window Timeout 32 Próg 1 L Próg 2 =1/2 L ½ L Numer pakietu

118 Sieci komputerowe 118 Przesyłanie danych interaktywnych Opóźnione potwierdzenie Algorytm Nagle a Dla efektywności protokołu TCP kluczowe znaczenie ma możliwość wysyłania dużych bloków danych Kompromis pomiędzy czasem reakcji a efektywnością

119 Sieci komputerowe 119 Kto jest odpowiedzialny za wielkość bloków danych? Nadawca: wysyła znak po znaku Opóźnione potwierdzenie Nagle s algorythm Odbiorca: odbiera znak po znaku Silly window syndrome

120 Sieci komputerowe 120 Opóźnione potwierdzenie wyłączone włączone naciśnięcie klawisza A naciśnięcie klawisza A

121 Sieci komputerowe 121 Opóźnione potwierdzenie wyłączone włączone naciśnięcie klawisza A 1 bajt naciśnięcie klawisza A 1 bajt

122 Sieci komputerowe 122 Opóźnione potwierdzenie wyłączone włączone naciśnięcie klawisza A 1 bajt naciśnięcie klawisza A 1 bajt potwierdzenie bajta

123 Sieci komputerowe 123 Opóźnione potwierdzenie wyłączone włączone naciśnięcie klawisza A 1 bajt naciśnięcie klawisza A 1 bajt potwierdzenie bajta echo echo

124 Sieci komputerowe 124 Opóźnione potwierdzenie wyłączone włączone naciśnięcie klawisza A 1 bajt naciśnięcie klawisza A 1 bajt potwierdzenie bajta 1 bajt echo potwierdzenie + 1 bajt echo

125 Sieci komputerowe 125 Opóźnione potwierdzenie wyłączone włączone naciśnięcie klawisza A 1 bajt naciśnięcie klawisza A 1 bajt potwierdzenie bajta echo 1 bajt potwierdzenie + 1 bajt echo potwierdzenie bajta

126 Sieci komputerowe 126 Opóźnione potwierdzenie wyłączone włączone naciśnięcie klawisza A 1 bajt naciśnięcie klawisza A 1 bajt potwierdzenie bajta echo 1 bajt potwierdzenie + 1 bajt echo potwierdzenie bajta

127 Sieci komputerowe 127 Opóźnione potwierdzenie wyłączone włączone naciśnięcie klawisza A 1 bajt naciśnięcie klawisza A 1 bajt potwierdzenie bajta echo 1 bajt potwierdzenie + 1 bajt echo potwierdzenie bajta potwierdzenie bajta

128 Sieci komputerowe 128 Algorytm Nagle a Zastosowanie: Nadawca wysyła dane w postaci pojedynczych bajtów (małych bloków). Algorytm: wyślij pierwszy bajt, oczekuj na potwierdzenie, wyślij zebrane bajty, Samoregulacja Oszczędność łącza, szczególnie dla wolnych sieci rozległych

129 Sieci komputerowe 129 Algorytm Nagle a naciśnięcie N naciśnięcie N szybkie łącze (LAN) wolne łącze (WAN) :~> rlogin :~> _ :~> rlogin :~> _

130 Sieci komputerowe 130 Algorytm Nagle a naciśnięcie N 1 bajt (N) naciśnięcie N 1 bajt (N) szybkie łącze (LAN) wolne łącze (WAN) :~> rlogin :~> _ :~> rlogin :~> _

131 Sieci komputerowe 131 Algorytm Nagle a szybkie łącze (LAN) naciśnięcie N 1 bajt (N) potwierdzenie (N) + echo (N) naciśnięcie N 1 bajt (N) wolne łącze (WAN) :~> rlogin :~> n_ :~> rlogin :~> _

132 Sieci komputerowe 132 Algorytm Nagle a szybkie łącze (LAN) naciśnięcie N naciśnięcie A 1 bajt (N) potwierdzenie (N) + echo (N) potwierdzenie echa + 1 bajt (A) naciśnięcie N naciśnięcie A 1 bajt (N) wolne łącze (WAN) :~> rlogin :~> n_ :~> rlogin :~> _

133 Sieci komputerowe 133 Algorytm Nagle a szybkie łącze (LAN) naciśnięcie N naciśnięcie A 1 bajt (N) potwierdzenie (N) + echo (N) potwierdzenie echa + 1 bajt (A) potwierdzenie (A) + echo (A) naciśnięcie N naciśnięcie A 1 bajt (N) potwierdzenie (N) + echo (N) wolne łącze (WAN) :~> rlogin :~> na_ :~> rlogin :~> _

134 Sieci komputerowe 134 Algorytm Nagle a szybkie łącze (LAN) naciśnięcie N naciśnięcie A naciśnięcie G 1 bajt (N) potwierdzenie (N) + echo (N) potwierdzenie echa + 1 bajt (A) potwierdzenie (A) + echo (A) potwierdzenie echa + 1 bajt (G) naciśnięcie N naciśnięcie A naciśnięcie G 1 bajt (N) potwierdzenie (N) + echo (N) wolne łącze (WAN) :~> rlogin :~> na_ :~> rlogin :~> n_

135 Sieci komputerowe 135 Algorytm Nagle a szybkie łącze (LAN) naciśnięcie N naciśnięcie A naciśnięcie G 1 bajt (N) potwierdzenie (N) + echo (N) potwierdzenie echa + 1 bajt (A) potwierdzenie (A) + echo (A) potwierdzenie echa + 1 bajt (G) potwierdzenie (G) + echo (G) naciśnięcie N 1 bajt (N) naciśnięcie A potwierdzenie (N) + echo (N) naciśnięcie G potwierdzenie echa + 2 bajty (AG) wolne łącze (WAN) :~> rlogin :~> nag_ :~> rlogin :~> n_

136 Sieci komputerowe 136 Algorytm Nagle a szybkie łącze (LAN) naciśnięcie N naciśnięcie A naciśnięcie G naciśnięcie L 1 bajt (N) potwierdzenie (N) + echo (N) potwierdzenie echa + 1 bajt (A) potwierdzenie (A) + echo (A) potwierdzenie echa + 1 bajt (G) potwierdzenie (G) + echo (G) potwierdzenie echa + 1 bajt (L) naciśnięcie N 1 bajt (N) naciśnięcie A potwierdzenie (N) + echo (N) naciśnięcie G potwierdzenie echa + 2 bajty (AG) naciśnięcie L wolne łącze (WAN) :~> rlogin :~> nag_ :~> rlogin :~> n_

137 Sieci komputerowe 137 Algorytm Nagle a szybkie łącze (LAN) naciśnięcie N naciśnięcie A naciśnięcie G naciśnięcie L 1 bajt (N) potwierdzenie (N) + echo (N) potwierdzenie echa + 1 bajt (A) potwierdzenie (A) + echo (A) potwierdzenie echa + 1 bajt (G) potwierdzenie (G) + echo (G) potwierdzenie echa + 1 bajt (L) potwierdzenie (L) + echo (L) naciśnięcie N 1 bajt (N) naciśnięcie A potwierdzenie (N) + echo (N) naciśnięcie G potwierdzenie echa + 2 bajty (AG) naciśnięcie L wolne łącze (WAN) :~> rlogin :~> nagl_ :~> rlogin :~> n_

138 Sieci komputerowe 138 Algorytm Nagle a szybkie łącze (LAN) naciśnięcie N naciśnięcie A naciśnięcie G naciśnięcie L naciśnięcie E 1 bajt (N) potwierdzenie (N) + echo (N) potwierdzenie echa + 1 bajt (A) potwierdzenie (A) + echo (A) potwierdzenie echa + 1 bajt (G) potwierdzenie (G) + echo (G) potwierdzenie echa + 1 bajt (L) potwierdzenie (L) + echo (L) potwierdzenie echa + 1 bajt (E) naciśnięcie N 1 bajt (N) naciśnięcie A potwierdzenie (N) + echo (N) naciśnięcie G potwierdzenie echa + 2 bajty (AG) naciśnięcie L potwierdzenie (AG) + echo (AG) naciśnięcie E wolne łącze (WAN) :~> rlogin :~> nagl_ :~> rlogin :~> n_

139 Sieci komputerowe 139 Algorytm Nagle a szybkie łącze (LAN) naciśnięcie N naciśnięcie A naciśnięcie G naciśnięcie L naciśnięcie E 1 bajt (N) potwierdzenie (N) + echo (N) potwierdzenie echa + 1 bajt (A) potwierdzenie (A) + echo (A) potwierdzenie echa + 1 bajt (G) potwierdzenie (G) + echo (G) potwierdzenie echa + 1 bajt (L) potwierdzenie (L) + echo (L) potwierdzenie echa + 1 bajt (E) naciśnięcie N 1 bajt (N) naciśnięcie A potwierdzenie (N) + echo (N) naciśnięcie G potwierdzenie echa + 2 bajty (AG) naciśnięcie L potwierdzenie (AG) + echo (AG) naciśnięcie E wolne łącze (WAN) potwierdzenie (E) + echo (E) :~> rlogin :~> nagle_ :~> rlogin :~> nag_

140 Sieci komputerowe 140 Algorytm Nagle a szybkie łącze (LAN) naciśnięcie N naciśnięcie A naciśnięcie G naciśnięcie L naciśnięcie E 1 bajt (N) potwierdzenie (N) + echo (N) potwierdzenie echa + 1 bajt (A) potwierdzenie (A) + echo (A) potwierdzenie echa + 1 bajt (G) potwierdzenie (G) + echo (G) potwierdzenie echa + 1 bajt (L) potwierdzenie (L) + echo (L) potwierdzenie echa + 1 bajt (E) naciśnięcie N 1 bajt (N) naciśnięcie A potwierdzenie (N) + echo (N) naciśnięcie G potwierdzenie echa + 2 bajty (AG) naciśnięcie L potwierdzenie (AG) + echo (AG) naciśnięcie E wolne łącze (WAN) potwierdzenie (E) + echo (E) potwierdzenie echa + 2 bajty (LE) :~> rlogin :~> nagle_ :~> rlogin :~> nag_

141 Sieci komputerowe 141 Syndrom głupiego okna Problem: Odbiorca odczytuje bufor bajt po bajcie (małymi blokami) Odbiorca ogłasza niewielkie okna zamiast poczekać na opróżnienie bufora Nadawca wysyła niewielkie segmenty, zamiast większych bloków danych danych

142 Sieci komputerowe 142 Syndrom Głupiego Okna Pełny bufor odbiorcy Aplikacja odczytuje 1 B Miejsce na jeden bajt Okno zostaje zwiększone o 1 B Przychodzi wiadomość z 1B

143 Sieci komputerowe 143 Syndrom głupiego okna Rozwiązanie: Odbiorca czeka z otwarciem okna, aż możliwe będzie powiększenie go o MSS lub o połowę rozmiaru bufora odbiorcy Clark s solution

144 Sieci komputerowe 144 Clark+ Nagle Nadawca transmituje dane, gdy może wysłać: cały segment danych MSS co najmniej połowę rozmiaru bufora odbiorcy dowolną ilość danych pod warunkiem, że potwierdzone zostały wszystkie wysłane segmenty (przy włączonym alg. Nagle a)

145 Sieci komputerowe 145 Zegary TCP Retransmission Timer zegar odmierzający Timeout; czas oczekiwania jest zmienny (retransmisja z adaptacją) Persistence Timer Keepalive Timer zapobiega zakleszczeniu w sytuacji zgubienia pakietu zwiększającego okno pozwala na sprawdzenie aktywności drugiej strony połączenia

146 Sieci komputerowe 146 Retransmission Timer RTT = α RTT stare + (1-α) M M czas otrzymania potwierdzenia ( nowe RTT) α = 7/8 Sposób 1 Prawdopodobieństwo Timeout = β RTT, gdzie zalecane β= [ms] Round Trip Time Sposób 2 (alg. Jacobsona) D= α D + (1- α) RTT M Timeout = RTT + 4 D

147 Sieci komputerowe 147 Retransmission Timer cd. Dynamiczna estymacja RTT jest przeprowadzana wg. Algorytmu Karna W sytuacji braku potwierdzenia nie jest zmieniane RTT lecz zwiększa się Timeout 2 dwa razy (zazwyczaj). Ponowne wysłanie może spowodować niejednoznaczność, które ACK odpowiada ostatniemu wysłaniu. Dlatego nie zmienia się RTT na podstawie czasów zmierzonych dla retransmitowanych segmentów.

148 Sieci komputerowe 148 Persistence Timer nadawca odbiorca Oczekiwanie na okno ACK, window 0 ACK, window n Przekroczenie Persistence Timer zapytanie o okno

149 Sieci komputerowe 149 Zastosowania Przesyłanie danych wrażliwych na gubienie pakietów dane interaktywne: Telnet, SSH, mysz w X-Windows itp. dane masowe: FTP, Mail, News itp. Nie pozwala na transmisję grupową (ang. multicasting) dokładnie dwa końce połączenia

150 Sieci komputerowe 150 User Datagram Protocol Bardzo prosty bezpołączeniowy protokół warstwy transportowej szybki(małe narzuty) zawodny nie zawiera żadnych komunikatów potwierdzających przyjęcie pakietu bądź informujących o jego zagubieniu, nie gwarantuje, że dane zostaną dostarczone do procesu docelowego w kolejności wysłania, pakiety danych mogą być zduplikowane, nie zawiera żadnego mechanizmu kontroli prędkości przesyłania danych pomiędzy hostami. Proces docelowy musi sobie radzić ze wszystkimi wymienionymi zjawiskami.

151 Sieci komputerowe 151 Nagłówek UDP Nagłówek ma rozmiar 8 bajtów Suma kontrolna jest nieobowiązkowa (0 = brak sumy) gdyby suma po wyliczeniu wyniosła 0, zapisuje się ją jako 0xFFFF (stosowany jest kod U1) numer portu źródła (16 b) długość datagramu (16 b) numer portu przeznaczenia (16 b) suma kontrolna (16 b) dane

152 Sieci komputerowe 152 Suma kontrolna Obliczanie sumy kontrolnej dla nagłówka, danych oraz pseudonagłówka adres źródła (32) adres przeznaczenia (32) nieużywane = 0 (8) protokół = 17 (8) długość datagramu UDP (16) Nagłówek Dane

153 Sieci komputerowe 153 Zastosowania Transmisje grupowe Transmisje w czasie rzeczywistym Przesyłanie danych mniej wrażliwych na gubienie pakietów Przesyłanie w sieci LAN NFS, DNS Uwaga: Częstym błędem programistów jest testowanie programów wykorzystujących UDP tylko w sieci lokalnej (o niskim stopniu zawodności). Programy takie uruchomione w sieci rozległej mogą zachowywać się zupełnie inaczej!

154 Sieci komputerowe 154 Literatura W.R. Stevens Biblia TCP/IP, t. 1, 2 W.R. Stevens Programowanie zastosowań sieciowych w systemie UNIX D. Comer TCP/IP t.2 lub RFC 1700 RFC 2001, 2018, 2581, 2582, 3042

Warstwa transportowa. Warstwa transportowa. Enkapsulacja. Zapewnienie niezawodnego przesyłania danych /wg ISO/ Transmisja bezpołączeniowa

Warstwa transportowa. Warstwa transportowa. Enkapsulacja. Zapewnienie niezawodnego przesyłania danych /wg ISO/ Transmisja bezpołączeniowa Warstwa transportowa Warstwa 4 modelu OSI Warstwa 3 modelu TCP/IP warstwa aplikacji warstwa prezentacji warstwa sesji warstwa transportowa warstwa sieci warstwa łącza danych warstwa fizyczna warstwa aplikacji

Bardziej szczegółowo

Sieci komputerowe - Protokoły warstwy transportowej

Sieci komputerowe - Protokoły warstwy transportowej Piotr Kowalski KAiTI - Protokoły warstwy transportowej Plan i problematyka wykładu 1. Funkcje warstwy transportowej i wspólne cechy typowych protokołów tej warstwy 2. Protokół UDP Ogólna charakterystyka,

Bardziej szczegółowo

Protokoły sieciowe - TCP/IP

Protokoły sieciowe - TCP/IP Protokoły sieciowe Protokoły sieciowe - TCP/IP TCP/IP TCP/IP (Transmission Control Protocol / Internet Protocol) działa na sprzęcie rożnych producentów może współpracować z rożnymi protokołami warstwy

Bardziej szczegółowo

SEGMENT TCP CZ. II. Suma kontrolna (ang. Checksum) liczona dla danych jak i nagłówka, weryfikowana po stronie odbiorczej

SEGMENT TCP CZ. II. Suma kontrolna (ang. Checksum) liczona dla danych jak i nagłówka, weryfikowana po stronie odbiorczej SEGMENT TCP CZ. I Numer portu źródłowego (ang. Source port), przeznaczenia (ang. Destination port) identyfikują aplikacje wysyłającą odbierającą dane, te dwie wielkości wraz adresami IP źródła i przeznaczenia

Bardziej szczegółowo

Sieci komputerowe Warstwa transportowa

Sieci komputerowe Warstwa transportowa Sieci komputerowe Warstwa transportowa 2012-05-24 Sieci komputerowe Warstwa transportowa dr inż. Maciej Piechowiak 1 Wprowadzenie umożliwia jednoczesną komunikację poprzez sieć wielu aplikacjom uruchomionym

Bardziej szczegółowo

PROTOKOŁY WARSTWY TRANSPORTOWEJ

PROTOKOŁY WARSTWY TRANSPORTOWEJ PROTOKOŁY WARSTWY TRANSPORTOWEJ Na bazie protokołu internetowego (IP) zbudowane są dwa protokoły warstwy transportowej: UDP (User Datagram Protocol) - protokół bezpołączeniowy, zawodny; TCP (Transmission

Bardziej szczegółowo

Sieci komputerowe. Zajęcia 3 c.d. Warstwa transportu, protokoły UDP, ICMP

Sieci komputerowe. Zajęcia 3 c.d. Warstwa transportu, protokoły UDP, ICMP Sieci komputerowe Zajęcia 3 c.d. Warstwa transportu, protokoły UDP, ICMP Zadania warstwy transportu Zapewnienie niezawodności Dostarczanie danych do odpowiedniej aplikacji w warstwie aplikacji (multipleksacja)

Bardziej szczegółowo

DR INŻ. ROBERT WÓJCIK DR INŻ. JERZY DOMŻAŁ

DR INŻ. ROBERT WÓJCIK DR INŻ. JERZY DOMŻAŁ DR INŻ. ROBERT WÓJCIK DR INŻ. JERZY DOMŻAŁ PROTOKÓŁ STEROWANIA TRANSMISJĄ WSTĘP DO SIECI INTERNET Kraków, dn. 19 grudnia 2016 r. O CZYM JEST TEN WYKŁAD Protokół Sterowania Transmisją Transmission Control

Bardziej szczegółowo

Transport. część 2: protokół TCP. Sieci komputerowe. Wykład 6. Marcin Bieńkowski

Transport. część 2: protokół TCP. Sieci komputerowe. Wykład 6. Marcin Bieńkowski Transport część 2: protokół TCP Sieci komputerowe Wykład 6 Marcin Bieńkowski Protokoły w Internecie warstwa aplikacji HTTP warstwa transportowa SMTP TCP warstwa sieciowa warstwa łącza danych warstwa fizyczna

Bardziej szczegółowo

Transport. część 2: protokół TCP. Sieci komputerowe. Wykład 6. Marcin Bieńkowski

Transport. część 2: protokół TCP. Sieci komputerowe. Wykład 6. Marcin Bieńkowski Transport część 2: protokół TCP Sieci komputerowe Wykład 6 Marcin Bieńkowski Protokoły w Internecie warstwa aplikacji HTTP SMTP DNS NTP warstwa transportowa TCP UDP warstwa sieciowa IP warstwa łącza danych

Bardziej szczegółowo

DR INŻ. ROBERT WÓJCIK DR INŻ. JERZY DOMŻAŁ

DR INŻ. ROBERT WÓJCIK DR INŻ. JERZY DOMŻAŁ DR INŻ. ROBERT WÓJCIK DR INŻ. JERZY DOMŻAŁ PROTOKOŁY TCP I UDP WSTĘP DO SIECI INTERNET Kraków, dn. 12 grudnia 2016 r. PLAN TCP: cechy protokołu schemat nagłówka znane numery portów UDP: cechy protokołu

Bardziej szczegółowo

Klient-Serwer Komunikacja przy pomocy gniazd

Klient-Serwer Komunikacja przy pomocy gniazd II Klient-Serwer Komunikacja przy pomocy gniazd Gniazda pozwalają na efektywną wymianę danych pomiędzy procesami w systemie rozproszonym. Proces klienta Proces serwera gniazdko gniazdko protokół transportu

Bardziej szczegółowo

Sieci komputerowe. Wykład 7: Transport: protokół TCP. Marcin Bieńkowski. Instytut Informatyki Uniwersytet Wrocławski

Sieci komputerowe. Wykład 7: Transport: protokół TCP. Marcin Bieńkowski. Instytut Informatyki Uniwersytet Wrocławski Sieci komputerowe Wykład 7: Transport: protokół TCP Marcin Bieńkowski Instytut Informatyki Uniwersytet Wrocławski Sieci komputerowe (II UWr) Wykład 7 1 / 23 W poprzednim odcinku Niezawodny transport Algorytmy

Bardziej szczegółowo

MODEL WARSTWOWY PROTOKOŁY TCP/IP

MODEL WARSTWOWY PROTOKOŁY TCP/IP MODEL WARSTWOWY PROTOKOŁY TCP/IP TCP/IP (ang. Transmission Control Protocol/Internet Protocol) protokół kontroli transmisji. Pakiet najbardziej rozpowszechnionych protokołów komunikacyjnych współczesnych

Bardziej szczegółowo

Programowanie współbieżne i rozproszone

Programowanie współbieżne i rozproszone Programowanie współbieżne i rozproszone WYKŁAD 6 dr inż. Komunikowanie się procesów Z użyciem pamięci współdzielonej. wykorzystywane przede wszystkim w programowaniu wielowątkowym. Za pomocą przesyłania

Bardziej szczegółowo

Sieci komputerowe - warstwa transportowa

Sieci komputerowe - warstwa transportowa Sieci komputerowe - warstwa transportowa mgr inż. Rafał Watza Katedra Telekomunikacji AGH Al. Mickiewicza 30, 30-059 Kraków, Polska tel. +48 12 6174034, fax +48 12 6342372 e-mail: watza@kt.agh.edu.pl Wprowadzenie

Bardziej szczegółowo

Przesyłania danych przez protokół TCP/IP

Przesyłania danych przez protokół TCP/IP Przesyłania danych przez protokół TCP/IP PAKIETY Protokół TCP/IP transmituje dane przez sieć, dzieląc je na mniejsze porcje, zwane pakietami. Pakiety są często określane różnymi terminami, w zależności

Bardziej szczegółowo

Sieci Komputerowe Modele warstwowe sieci

Sieci Komputerowe Modele warstwowe sieci Sieci Komputerowe Modele warstwowe sieci mgr inż. Rafał Watza Katedra Telekomunikacji AGH Al. Mickiewicza 30, 30-059 Kraków, Polska tel. +48 12 6174034, fax +48 12 6342372 e-mail: watza@kt.agh.edu.pl Wprowadzenie

Bardziej szczegółowo

Sieci komputerowe. Wykład 5: Warstwa transportowa: TCP i UDP. Marcin Bieńkowski. Instytut Informatyki Uniwersytet Wrocławski

Sieci komputerowe. Wykład 5: Warstwa transportowa: TCP i UDP. Marcin Bieńkowski. Instytut Informatyki Uniwersytet Wrocławski Sieci komputerowe Wykład 5: Warstwa transportowa: TCP i UDP Marcin Bieńkowski Instytut Informatyki Uniwersytet Wrocławski Sieci komputerowe (II UWr) Wykład 5 1 / 22 Warstwa transportowa Cechy charakterystyczne:

Bardziej szczegółowo

Warstwa transportowa. mgr inż. Krzysztof Szałajko

Warstwa transportowa. mgr inż. Krzysztof Szałajko Warstwa transportowa mgr inż. Krzysztof Szałajko Modele odniesienia 7 Aplikacji 6 Prezentacji 5 Sesji 4 Transportowa 3 Sieciowa 2 Łącza danych 1 Fizyczna Aplikacji Transportowa Internetowa Dostępu do sieci

Bardziej szczegółowo

Podstawy Transmisji Danych. Wykład IV. Protokół IPV4. Sieci WAN to połączenia pomiędzy sieciami LAN

Podstawy Transmisji Danych. Wykład IV. Protokół IPV4. Sieci WAN to połączenia pomiędzy sieciami LAN Podstawy Transmisji Danych Wykład IV Protokół IPV4 Sieci WAN to połączenia pomiędzy sieciami LAN 1 IPv4/IPv6 TCP (Transmission Control Protocol) IP (Internet Protocol) ICMP (Internet Control Message Protocol)

Bardziej szczegółowo

Politechnika Łódzka. Instytut Systemów Inżynierii Elektrycznej

Politechnika Łódzka. Instytut Systemów Inżynierii Elektrycznej Politechnika Łódzka Instytut Systemów Inżynierii Elektrycznej Laboratorium komputerowych systemów pomiarowych Ćwiczenie 7 Wykorzystanie protokołu TCP do komunikacji w komputerowym systemie pomiarowym 1.

Bardziej szczegółowo

Iteracyjny serwer TCP i aplikacja UDP

Iteracyjny serwer TCP i aplikacja UDP Iteracyjny serwer TCP i aplikacja UDP Iteracyjny serwer TCP Funkcje wywoływane przez serwer TCP socket() - bind() - listen() - accept() - read() / write() - close() socket() Creates an endpoint for communication

Bardziej szczegółowo

Sieci komputerowe. Protokoły warstwy transportowej. Wydział Inżynierii Metali i Informatyki Przemysłowej. dr inż. Andrzej Opaliński. www.agh.edu.

Sieci komputerowe. Protokoły warstwy transportowej. Wydział Inżynierii Metali i Informatyki Przemysłowej. dr inż. Andrzej Opaliński. www.agh.edu. Sieci komputerowe Protokoły warstwy transportowej Wydział Inżynierii Metali i Informatyki Przemysłowej dr inż. Andrzej Opaliński Plan wykładu Wprowadzenie opis warstwy transportowej Protokoły spoza stosu

Bardziej szczegółowo

Model OSI. mgr inż. Krzysztof Szałajko

Model OSI. mgr inż. Krzysztof Szałajko Model OSI mgr inż. Krzysztof Szałajko Protokół 2 / 26 Protokół Def.: Zestaw reguł umożliwiający porozumienie 3 / 26 Komunikacja w sieci 101010010101101010101 4 / 26 Model OSI Open Systems Interconnection

Bardziej szczegółowo

Programowanie Sieciowe 1

Programowanie Sieciowe 1 Programowanie Sieciowe 1 dr inż. Tomasz Jaworski tjaworski@iis.p.lodz.pl http://tjaworski.iis.p.lodz.pl/ Cel przedmiotu Zapoznanie z mechanizmem przesyłania danych przy pomocy sieci komputerowych nawiązywaniem

Bardziej szczegółowo

Stos protokołów TCP/IP (ang. Transmission Control Protocol/Internet Protocol)

Stos protokołów TCP/IP (ang. Transmission Control Protocol/Internet Protocol) Stos protokołów TCP/IP (ang. Transmission Control Protocol/Internet Protocol) W latach 1973-78 Agencja DARPA i Stanford University opracowały dwa wzajemnie uzupełniające się protokoły: połączeniowy TCP

Bardziej szczegółowo

TCP/IP formaty ramek, datagramów, pakietów...

TCP/IP formaty ramek, datagramów, pakietów... SIECI KOMPUTEROWE DATAGRAM IP Protokół IP jest przeznaczony do sieci z komutacją pakietów. Pakiet jest nazywany przez IP datagramem. Każdy datagram jest podstawową, samodzielną jednostką przesyłaną w sieci

Bardziej szczegółowo

Unicast jeden nadawca i jeden odbiorca Broadcast jeden nadawca przesyła do wszystkich Multicast jeden nadawca i wielu (podzbiór wszystkich) odbiorców

Unicast jeden nadawca i jeden odbiorca Broadcast jeden nadawca przesyła do wszystkich Multicast jeden nadawca i wielu (podzbiór wszystkich) odbiorców METODY WYMIANY INFORMACJI W SIECIACH PAKIETOWYCH Unicast jeden nadawca i jeden odbiorca Broadcast jeden nadawca przesyła do wszystkich Multicast jeden nadawca i wielu (podzbiór wszystkich) odbiorców TRANSMISJA

Bardziej szczegółowo

Akademickie Centrum Informatyki PS. Wydział Informatyki PS

Akademickie Centrum Informatyki PS. Wydział Informatyki PS Akademickie Centrum Informatyki PS Wydział Informatyki PS Akademickie Centrum Informatyki Wydział Informatyki P.S. Warstwy transmisyjne Protokoły sieciowe Krzysztof Bogusławski tel. 449 41 82 kbogu@man.szczecin.pl

Bardziej szczegółowo

Programowanie sieciowe

Programowanie sieciowe Programowanie sieciowe Wykład dla studentów Informatyki Stosowanej i Fizyki Komputerowej UJ 2014/2015 Michał Cieśla pok. D-2-47, email: michal.ciesla@uj.edu.pl konsultacje: środy 10-12 http://users.uj.edu.pl/~ciesla/

Bardziej szczegółowo

Sieci Komputerowe Protokół TCP

Sieci Komputerowe Protokół TCP Sieci Komputerowe Protokół TCP Transmission Control Protocol dr Zbigniew Lipiński Instytut Matematyki i Informatyki ul. Oleska 48 50-204 Opole zlipinski@math.uni.opole.pl Zagadnienia Protokół TCP Transmisja

Bardziej szczegółowo

Warstwa transportowa

Warstwa transportowa Sieci komputerowe Podsumowanie DHCP Serwer DHCP moŝe przyznawać adresy IP według adresu MAC klienta waŝne dla stacji wymagającego stałego IP np. ze względu na rejestrację w DNS Klient moŝe pominąć komunikat

Bardziej szczegółowo

Gniazda surowe. Bartłomiej Świercz. Łódź,9maja2006. Katedra Mikroelektroniki i Technik Informatycznych. Bartłomiej Świercz Gniazda surowe

Gniazda surowe. Bartłomiej Świercz. Łódź,9maja2006. Katedra Mikroelektroniki i Technik Informatycznych. Bartłomiej Świercz Gniazda surowe Gniazda surowe Bartłomiej Świercz Katedra Mikroelektroniki i Technik Informatycznych Łódź,9maja2006 Wstęp Gniazda surowe posiadają pewne właściwości, których brakuje gniazdom TCP i UDP: Gniazda surowe

Bardziej szczegółowo

Transport. część 1: niezawodny transport. Sieci komputerowe. Wykład 6. Marcin Bieńkowski

Transport. część 1: niezawodny transport. Sieci komputerowe. Wykład 6. Marcin Bieńkowski Transport część 1: niezawodny transport Sieci komputerowe Wykład 6 Marcin Bieńkowski Protokoły w Internecie warstwa aplikacji HTTP SMTP DNS NTP warstwa transportowa TCP UDP warstwa sieciowa IP warstwa

Bardziej szczegółowo

Gniazda UDP. Bartłomiej Świercz. Łódź, 3 kwietnia Katedra Mikroelektroniki i Technik Informatycznych. Bartłomiej Świercz Gniazda UDP

Gniazda UDP. Bartłomiej Świercz. Łódź, 3 kwietnia Katedra Mikroelektroniki i Technik Informatycznych. Bartłomiej Świercz Gniazda UDP Gniazda UDP Bartłomiej Świercz Katedra Mikroelektroniki i Technik Informatycznych Łódź, 3 kwietnia 2006 Wstęp ZewzględunaróżnicewprotokołachTCPiUDPsposób korzystania z gniazd UDP różni sie znacznie od

Bardziej szczegółowo

Programowanie Sieciowe 1

Programowanie Sieciowe 1 Programowanie Sieciowe 1 dr inż. Tomasz Jaworski tjaworski@iis.p.lodz.pl http://tjaworski.iis.p.lodz.pl/ Klient UDP Kolejność wykonywania funkcji gniazdowych klienta UDP Protokół UDP jest bezpołączeniowy:

Bardziej szczegółowo

Programowanie sieciowe

Programowanie sieciowe Programowanie sieciowe dr Tomasz Tyrakowski Dyż ury: wtorki 12:00 13:00 czwartki 14:00 15:00 pokój B4-5 e-mail: ttomek@amu.edu.pl materiały: http://www.amu.edu.pl/~ttomek 1 Wymagania podstawowa znajomość

Bardziej szczegółowo

Podstawowe protokoły transportowe stosowane w sieciach IP cz.1

Podstawowe protokoły transportowe stosowane w sieciach IP cz.1 Laboratorium Technologie Sieciowe Podstawowe protokoły transportowe stosowane w sieciach IP cz.1 Wprowadzenie Ćwiczenie przedstawia praktyczną stronę następujących zagadnień: połączeniowy i bezpołączeniowy

Bardziej szczegółowo

Sieci Komputerowe. Wykład 1: TCP/IP i adresowanie w sieci Internet

Sieci Komputerowe. Wykład 1: TCP/IP i adresowanie w sieci Internet Sieci Komputerowe Wykład 1: TCP/IP i adresowanie w sieci Internet prof. nzw dr hab. inż. Adam Kisiel kisiel@if.pw.edu.pl Pokój 114 lub 117d 1 Kilka ważnych dat 1966: Projekt ARPANET finansowany przez DOD

Bardziej szczegółowo

pasja-informatyki.pl

pasja-informatyki.pl pasja-informatyki.pl Sieci komputerowe Protokoły warstwy transportowej TCP i UDP Damian Stelmach Zadania warstwy transportowej 2018 Spis treści Zadania warstwy transportowej... 3 Protokół TCP... 7 Nagłówek

Bardziej szczegółowo

Gniazda BSD. Procesy w środowisku sieciowym. Gniazda podstawowe funkcje dla serwera. Gniazda podstawowe funkcje dla klienta

Gniazda BSD. Procesy w środowisku sieciowym. Gniazda podstawowe funkcje dla serwera. Gniazda podstawowe funkcje dla klienta Procesy w środowisku sieciowym! Obsługa! Protokół! Numery portów i ogólnie znane adresy! Połączenie (asocjacja) i gniazdo (półasocjacja)! Model klient-serwer " Serwer - bierne otwarcie kanału " Klient

Bardziej szczegółowo

Transport. część 3: kontrola przeciążenia. Sieci komputerowe. Wykład 8. Marcin Bieńkowski

Transport. część 3: kontrola przeciążenia. Sieci komputerowe. Wykład 8. Marcin Bieńkowski Transport część 3: kontrola przeciążenia Sieci komputerowe Wykład 8 Marcin Bieńkowski Protokoły w Internecie warstwa aplikacji HTTP SMTP DNS NTP warstwa transportowa TCP UDP warstwa sieciowa IP warstwa

Bardziej szczegółowo

Podstawowe typy serwerów

Podstawowe typy serwerów Podstawowe typy serwerów 1. Algorytm serwera. 2. Cztery podstawowe typy serwerów. iteracyjne, współbieżne, połączeniowe, bezpołączeniowe. 3. Problem zakleszczenia serwera. 1 Algorytm serwera 1. Utworzenie

Bardziej szczegółowo

Programowanie przy użyciu gniazdek

Programowanie przy użyciu gniazdek Programowanie przy użyciu gniazdek Gniazdo (ang. socket) pojęcie abstrakcyjne reprezentujące dwukierunkowy punkt końcowy połączenia. Dwukierunkowość oznacza możliwość wysyłania i przyjmowania danych. Wykorzystywane

Bardziej szczegółowo

MODEL OSI A INTERNET

MODEL OSI A INTERNET MODEL OSI A INTERNET W Internecie przyjęto bardziej uproszczony model sieci. W modelu tym nacisk kładzie się na warstwy sieciową i transportową. Pozostałe warstwy łączone są w dwie warstwy - warstwę dostępu

Bardziej szczegółowo

Protokół IP. III warstwa modelu OSI (sieciowa) Pakowanie i adresowanie przesyłanych danych RFC 791 Pakiet składa się z:

Protokół IP. III warstwa modelu OSI (sieciowa) Pakowanie i adresowanie przesyłanych danych RFC 791 Pakiet składa się z: Protokoły Protokół IP III warstwa modelu OSI (sieciowa) Pakowanie i adresowanie przesyłanych danych RFC 791 Pakiet składa się z: Adresu źródłowego Adresu docelowego W sieciach opartych o Ethernet protokół

Bardziej szczegółowo

Transport. część 3: kontrola przeciążenia. Sieci komputerowe. Wykład 8. Marcin Bieńkowski

Transport. część 3: kontrola przeciążenia. Sieci komputerowe. Wykład 8. Marcin Bieńkowski Transport część 3: kontrola przeciążenia Sieci komputerowe Wykład 8 Marcin Bieńkowski Protokoły w Internecie warstwa aplikacji HTTP SMTP DNS NTP warstwa transportowa TCP UDP warstwa sieciowa IP warstwa

Bardziej szczegółowo

Komunikacja międzyprocesowa. Krzysztof Banaś Systemy rozproszone 1

Komunikacja międzyprocesowa. Krzysztof Banaś Systemy rozproszone 1 Komunikacja międzyprocesowa Krzysztof Banaś Systemy rozproszone 1 Komunikacja międzyprocesowa Dla funkcjonowania systemów rozproszonych konieczna jest sprawna komunikacja pomiędzy odległymi procesami Podstawowym

Bardziej szczegółowo

Zestaw ten opiera się na pakietach co oznacza, że dane podczas wysyłania są dzielone na niewielkie porcje. Wojciech Śleziak

Zestaw ten opiera się na pakietach co oznacza, że dane podczas wysyłania są dzielone na niewielkie porcje. Wojciech Śleziak Protokół TCP/IP Protokół TCP/IP (Transmission Control Protokol/Internet Protokol) to zestaw trzech protokołów: IP (Internet Protokol), TCP (Transmission Control Protokol), UDP (Universal Datagram Protokol).

Bardziej szczegółowo

Akademickie Centrum Informatyki PS. Wydział Informatyki PS

Akademickie Centrum Informatyki PS. Wydział Informatyki PS Akademickie Centrum Informatyki PS Wydział Informatyki PS Akademickie Centrum Informatyki Wydział Informatyki P.S. Warstwy transmisyjne Protokoły sieciowe Krzysztof Bogusławski tel. 449 41 82 kbogu@man.szczecin.pl

Bardziej szczegółowo

Sieci komputerowe w sterowaniu informacje ogólne, model TCP/IP, protokoły warstwy internetowej i sieciowej

Sieci komputerowe w sterowaniu informacje ogólne, model TCP/IP, protokoły warstwy internetowej i sieciowej ieci komputerowe w sterowaniu informacje ogólne, model TCP/IP, protokoły warstwy internetowej i sieciowej 1969 ARPANET sieć eksperymentalna oparta na wymianie pakietów danych: - stabilna, - niezawodna,

Bardziej szczegółowo

ISO/OSI TCP/IP SIECI KOMPUTEROWE

ISO/OSI TCP/IP SIECI KOMPUTEROWE ISO/OSI TCP/IP SIECI KOMPUTEROWE Model referencyjny ISO/OSI Aplikacji Prezentacji Sesji Transportu Sieci Łącza danych Fizyczna Każda warstwa odpowiada konkretnemu fragmentowi procesu komunikacji, który

Bardziej szczegółowo

Połączenie logiczne Zestawienie połączenia Zerwanie połączenia Niezawodne Np. TCP

Połączenie logiczne Zestawienie połączenia Zerwanie połączenia Niezawodne Np. TCP Połączeniowe Mechanizmy Protokołu Transportu Połączenie logiczne Zestawienie połączenia Zerwanie połączenia Niezawodne Np. TCP Niezawodna, Uporządkowana Usługa Sieciowa Przyjmijmy dowolną długość wiadomości

Bardziej szczegółowo

Selektywne powtarzanie (SP)

Selektywne powtarzanie (SP) Selektywne powtarzanie (SP) odbiorca selektywnie potwierdza poprawnie odebrane pakiety buforuje pakiety, gdy potrzeba, w celu uporządkowania przed przekazaniem warstwie wyższej nadawca retransmituje tylko

Bardziej szczegółowo

Sieci komputerowe Mechanizmy sterowania przebiegiem sesji TCP w Internecie

Sieci komputerowe Mechanizmy sterowania przebiegiem sesji TCP w Internecie Sieci komputerowe Mechanizmy sterowania przebiegiem sesji TCP w Internecie Józef Woźniak Katedra Teleinformatyki Wydział Elektroniki, Telekomunikacji i Informatyki Politechniki Gdańskiej Opracowano na

Bardziej szczegółowo

Transmisja bezpołączeniowa i połączeniowa

Transmisja bezpołączeniowa i połączeniowa Transmisja bezpołączeniowa i połączeniowa Mikołaj Leszczuk 2010-12-27 1 Spis treści wykładu Komunikacja bezpołączeniowa Komunikacja połączeniowa Protokół UDP Protokół TCP Literatura 2010-12-27 2 Komunikacja

Bardziej szczegółowo

Protokoły wspomagające. Mikołaj Leszczuk

Protokoły wspomagające. Mikołaj Leszczuk Protokoły wspomagające Mikołaj Leszczuk Spis treści wykładu Współpraca z warstwą łącza danych: o o ICMP o o ( ARP ) Protokół odwzorowania adresów ( RARP ) Odwrotny protokół odwzorowania adresów Opis protokołu

Bardziej szczegółowo

Podstawowe protokoły transportowe stosowane w sieciach IP cz.2

Podstawowe protokoły transportowe stosowane w sieciach IP cz.2 Laboratorium Technologie Sieciowe Podstawowe protokoły transportowe stosowane w sieciach IP cz.2 Wprowadzenie Ćwiczenie przedstawia praktyczną stronę następujących zagadnień: połączeniowy i bezpołączeniowy

Bardziej szczegółowo

Adresy w sieciach komputerowych

Adresy w sieciach komputerowych Adresy w sieciach komputerowych 1. Siedmio warstwowy model ISO-OSI (ang. Open System Interconnection Reference Model) 7. Warstwa aplikacji 6. Warstwa prezentacji 5. Warstwa sesji 4. Warstwa transportowa

Bardziej szczegółowo

Akademia Techniczno-Humanistyczna w Bielsku-Białej

Akademia Techniczno-Humanistyczna w Bielsku-Białej Akademia Techniczno-Humanistyczna w Bielsku-Białej Wydział Budowy Maszyn i Informatyki Laboratorium z sieci komputerowych Ćwiczenie numer: 5 Temat ćwiczenia: Badanie protokołów rodziny TCP/IP 1. Wstęp

Bardziej szczegółowo

DR INŻ. ROBERT WÓJCIK DR INŻ. JERZY DOMŻAŁ

DR INŻ. ROBERT WÓJCIK DR INŻ. JERZY DOMŻAŁ DR INŻ. ROBERT WÓJCIK DR INŻ. JERZY DOMŻAŁ INTERNET PROTOCOL (IP) INTERNET CONTROL MESSAGE PROTOCOL (ICMP) WSTĘP DO SIECI INTERNET Kraków, dn. 7 listopada 2016 r. PLAN IPv4: schemat nagłówka ICMP: informacje

Bardziej szczegółowo

Architektura INTERNET

Architektura INTERNET Internet, /IP Architektura INTERNET OST INTERNET OST OST BRAMA (ang. gateway) RUTER (ang. router) - lokalna sieć komputerowa (ang. Local Area Network) Bramy (ang. gateway) wg ISO ruter (ang. router) separuje

Bardziej szczegółowo

Literatura uzupełniająca: W. Richard Stevens, Programowanie zastosowań sieciowych w systemie Unix WNT 1998

Literatura uzupełniająca: W. Richard Stevens, Programowanie zastosowań sieciowych w systemie Unix WNT 1998 Gniazda BSD Literatura uzupełniająca: W. Richard Stevens, Programowanie zastosowań sieciowych w systemie Unix WNT 1998 socket() Użycie gniazd w transmisji połączeniowej bind() listen() socket() accept()

Bardziej szczegółowo

Transport. część 3: kontrola przeciążenia. Sieci komputerowe. Wykład 8. Marcin Bieńkowski

Transport. część 3: kontrola przeciążenia. Sieci komputerowe. Wykład 8. Marcin Bieńkowski Transport część 3: kontrola przeciążenia Sieci komputerowe Wykład 8 Marcin Bieńkowski Protokoły w Internecie warstwa aplikacji HTTP warstwa transportowa SMTP TCP warstwa sieciowa warstwa łącza danych warstwa

Bardziej szczegółowo

Zarządzanie ruchem w sieci IP. Komunikat ICMP. Internet Control Message Protocol DSRG DSRG. DSRG Warstwa sieciowa DSRG. Protokół sterujący

Zarządzanie ruchem w sieci IP. Komunikat ICMP. Internet Control Message Protocol DSRG DSRG. DSRG Warstwa sieciowa DSRG. Protokół sterujący Zarządzanie w sieci Protokół Internet Control Message Protocol Protokół sterujący informacje o błędach np. przeznaczenie nieosiągalne, informacje sterujące np. przekierunkowanie, informacje pomocnicze

Bardziej szczegółowo

Dr Michał Tanaś(http://www.amu.edu.pl/~mtanas)

Dr Michał Tanaś(http://www.amu.edu.pl/~mtanas) Dr Michał Tanaś(http://www.amu.edu.pl/~mtanas) Protokół komunikacyjny zapewniający niezawodność przesyłania danych w sieci IP Gwarantuje: Przyporządkowanie danych do konkretnego połączenia Dotarcie danych

Bardziej szczegółowo

Gniazda BSD implementacja w C#

Gniazda BSD implementacja w C# BSD implementacja w C# Implementacja w C#: Przestrzeń nazw: System.Net.Sockets Klasa: public class Socket : IDisposable Implementacja w C#: Konstruktor: public Socket( AddressFamily addressfamily, SocketType

Bardziej szczegółowo

1. Model klient-serwer

1. Model klient-serwer 1. 1.1. Model komunikacji w sieci łącze komunikacyjne klient serwer Tradycyjny podziała zadań: Klient strona żądająca dostępu do danej usługi lub zasobu Serwer strona, która świadczy usługę lub udostępnia

Bardziej szczegółowo

Laboratorium - Przechwytywanie i badanie datagramów DNS w programie Wireshark

Laboratorium - Przechwytywanie i badanie datagramów DNS w programie Wireshark Laboratorium - Przechwytywanie i badanie datagramów DNS w programie Wireshark Topologia Cele Część 1: Zapisanie informacji dotyczących konfiguracji IP komputerów Część 2: Użycie programu Wireshark do przechwycenia

Bardziej szczegółowo

UDP vs TCP. Autor: Marcin Koczara IV FDS

UDP vs TCP. Autor: Marcin Koczara IV FDS UDP vs TCP Autor: Marcin Koczara IV FDS STRESZCZENIE 1 W sieciach komputerowych używa się wielu protokołów. W pewnym sensie prawie każde działanie w sieci jest wykonywane w oparciu o taki czy inny protokół.

Bardziej szczegółowo

Sieci komputerowe wykłady Protokoły TCP i UDP. Adresowanie komunikatów. Adresowanie komunikatów c.d. Porty protokołów. Porty protokołów c.d.

Sieci komputerowe wykłady Protokoły TCP i UDP. Adresowanie komunikatów. Adresowanie komunikatów c.d. Porty protokołów. Porty protokołów c.d. Sieci komputerowe wykłady 10-11 Protokoły TCP i UDP rok ak. 2004/2005 Agata Półrola Katedra Informatyki Stosowanej UŁ polrola@math.uni.lodz.pl http://www.math.uni.lodz.pl/~polrola Adresowanie komunikatów

Bardziej szczegółowo

Plan całości wykładu 3-1

Plan całości wykładu 3-1 Plan całości wykładu Wprowadzenie Warstwa aplikacji Warstwa transportu Warstwa sieci Warstwa łącza i sieci lokalne Podstawy ochrony informacji (2 wykłady) (2 wykłady) (2-3 wykłady) (2-3 wykłady) (3 wykłady)

Bardziej szczegółowo

Komunikacja sieciowa - interfejs gniazd

Komunikacja sieciowa - interfejs gniazd SOE Systemy Operacyjne Wykład 14 Komunikacja sieciowa - interfejs gniazd dr inŝ. Andrzej Wielgus Instytut Mikroelektroniki i Optoelektroniki WEiTI PW Model komunikacji sieciowej Model OSI (ang. Open System

Bardziej szczegółowo

Stos TCP/IP Warstwa transportowa Warstwa aplikacji cz.1

Stos TCP/IP Warstwa transportowa Warstwa aplikacji cz.1 Stos TCP/IP Warstwa transportowa Warstwa aplikacji cz.1 aplikacji transportowa Internetu dostępu do sieci Sieci komputerowe Wykład 5 Podstawowe zadania warstwy transportowej Segmentacja danych aplikacji

Bardziej szczegółowo

Protokół TCP (RFC 793)

Protokół TCP (RFC 793) LAN 1 Protokół TCP (RFC 793) dotyczy komunikacji pojedynczej (unicastowej) pomiędzy dwoma punktami, każdy z adresem IP i numerem portu połączenie TCP jest dwustronne i dane mogą płynąć w każdą stronę niezależnie

Bardziej szczegółowo

Laboratorium 6.7.2: Śledzenie pakietów ICMP

Laboratorium 6.7.2: Śledzenie pakietów ICMP Topologia sieci Tabela adresacji Urządzenie Interfejs Adres IP Maska podsieci Domyślna brama R1-ISP R2-Central Serwer Eagle S0/0/0 10.10.10.6 255.255.255.252 Nie dotyczy Fa0/0 192.168.254.253 255.255.255.0

Bardziej szczegółowo

Sieci Komputerowe i Technologie Internetowe (SKiTI)

Sieci Komputerowe i Technologie Internetowe (SKiTI) Sieci Komputerowe i Technologie Internetowe (SKiTI) Wykład 6: Model TCP/IP - protokoły warstw transportowej. Dodatkowo, kilka słów o przemysłowych sieciach informatycznych. SKiTI07 WYDZIAŁ ELEKTROTECHNIKI

Bardziej szczegółowo

Wybrane działy Informatyki Stosowanej

Wybrane działy Informatyki Stosowanej Wybrane działy Informatyki Stosowanej Dr inż. Andrzej Czerepicki a.czerepicki@wt.pw.edu.pl http://www2.wt.pw.edu.pl/~a.czerepicki 2017 APLIKACJE SIECIOWE Definicja Architektura aplikacji sieciowych Programowanie

Bardziej szczegółowo

Instytut Teleinformatyki

Instytut Teleinformatyki Instytut Teleinformatyki Wydział Inżynierii Elektrycznej i Komputerowej Politechnika Krakowska programowanie usług sieciowych Dziedzina Unix laboratorium: 06 Kraków, 2014 06. Programowanie Usług Sieciowych

Bardziej szczegółowo

5. Model komunikujących się procesów, komunikaty

5. Model komunikujących się procesów, komunikaty Jędrzej Ułasiewicz str. 1 5. Model komunikujących się procesów, komunikaty Obecnie stosuje się następujące modele przetwarzania: Model procesów i komunikatów Model procesów komunikujących się poprzez pamięć

Bardziej szczegółowo

Gniazda BSD. komunikacja bezpołączeniowa

Gniazda BSD. komunikacja bezpołączeniowa Gniazda BSD komunikacja bezpołączeniowa Użycie gniazd w transmisji bezpołączeniowej socket() socket() bind() bind() STOP! recv() żądanie send() send() odpowiedź recv() STOP! recvfrom() #include

Bardziej szczegółowo

Plan wykładu. Warstwa sieci. Po co adresacja w warstwie sieci? Warstwa sieci

Plan wykładu. Warstwa sieci. Po co adresacja w warstwie sieci? Warstwa sieci Sieci komputerowe 1 Sieci komputerowe 2 Plan wykładu Warstwa sieci Miejsce w modelu OSI/ISO unkcje warstwy sieciowej Adresacja w warstwie sieciowej Protokół IP Protokół ARP Protokoły RARP, BOOTP, DHCP

Bardziej szczegółowo

Enkapsulacja RARP DANE TYP PREAMBUŁA SFD ADRES DOCELOWY ADRES ŹRÓDŁOWY TYP SUMA KONTROLNA 2 B 2 B 1 B 1 B 2 B N B N B N B N B Typ: 0x0835 Ramka RARP T

Enkapsulacja RARP DANE TYP PREAMBUŁA SFD ADRES DOCELOWY ADRES ŹRÓDŁOWY TYP SUMA KONTROLNA 2 B 2 B 1 B 1 B 2 B N B N B N B N B Typ: 0x0835 Ramka RARP T Skąd dostać adres? Metody uzyskiwania adresów IP Część sieciowa Jeśli nie jesteśmy dołączeni do Internetu wyssany z palca. W przeciwnym przypadku numer sieci dostajemy od NIC organizacji międzynarodowej

Bardziej szczegółowo

Konfiguracja sieci, podstawy protokołów IP, TCP, UDP, rodzaje transmisji w sieciach teleinformatycznych

Konfiguracja sieci, podstawy protokołów IP, TCP, UDP, rodzaje transmisji w sieciach teleinformatycznych Konfiguracja sieci, podstawy protokołów IP, TCP, UDP, rodzaje transmisji w sieciach teleinformatycznych dr inż. Jerzy Domżał Akademia Górniczo-Hutnicza w Krakowie, Katedra Telekomunikacji 10 października

Bardziej szczegółowo

Tryb bezpołączeniowy (datagramowy)

Tryb bezpołączeniowy (datagramowy) Tutaj trochę szerzej opisałam mechanizm gniazdek. 3 tematy wymienione poniŝej przeplatają się ze sobą więc wrzuciłam je do jednego worka i przedstawiłam w takim porządku, który wydawał mi się najbardziej

Bardziej szczegółowo

Projektowanie oprogramowania systemów KOMUNIKACJA SIECIOWA I SYSTEMY RPC

Projektowanie oprogramowania systemów KOMUNIKACJA SIECIOWA I SYSTEMY RPC Projektowanie oprogramowania systemów KOMUNIKACJA SIECIOWA I SYSTEMY RPC plan programowanie sieciowe BSD/POSIX Socket API systemy RPC interfejsy obiektowe CORBA DCOM RMI WebServices WSDL/SOAP XML-RPC REST

Bardziej szczegółowo

Podstawy sieci komputerowych

Podstawy sieci komputerowych mariusz@math.uwb.edu.pl http://math.uwb.edu.pl/~mariusz Uniwersytet w Białymstoku 2018/2019 Skąd się wziął Internet? Komutacja pakietów (packet switching) Transmisja danych za pomocą zaadresowanych pakietów,

Bardziej szczegółowo

DR INŻ. ROBERT WÓJCIK DR INŻ. JERZY DOMŻAŁ ADRESACJA W SIECIACH IP. WSTĘP DO SIECI INTERNET Kraków, dn. 24 października 2016r.

DR INŻ. ROBERT WÓJCIK DR INŻ. JERZY DOMŻAŁ ADRESACJA W SIECIACH IP. WSTĘP DO SIECI INTERNET Kraków, dn. 24 października 2016r. DR INŻ. ROBERT WÓJCIK DR INŻ. JERZY DOMŻAŁ ADRESACJA W SIECIACH IP WSTĘP DO SIECI INTERNET Kraków, dn. 24 października 2016r. PLAN Reprezentacja liczb w systemach cyfrowych Protokół IPv4 Adresacja w sieciach

Bardziej szczegółowo

System operacyjny UNIX Internet. mgr Michał Popławski, WFAiIS

System operacyjny UNIX Internet. mgr Michał Popławski, WFAiIS System operacyjny UNIX Internet Protokół TCP/IP Został stworzony w latach 70-tych XX wieku w DARPA w celu bezpiecznego przesyłania danych. Podstawowym jego założeniem jest rozdzielenie komunikacji sieciowej

Bardziej szczegółowo

Sieci komputerowe. Wykład dla studentów Informatyki Stosowanej i Fizyki Komputerowej UJ 2007/2008. Michał Cieśla

Sieci komputerowe. Wykład dla studentów Informatyki Stosowanej i Fizyki Komputerowej UJ 2007/2008. Michał Cieśla Sieci komputerowe Wykład dla studentów Informatyki Stosowanej i Fizyki Komputerowej UJ 2007/2008 Michał Cieśla pok. 440a, email: ciesla@if.uj.edu.pl konsultacje: wtorki 10-12 http://users.uj.edu.pl/~ciesla/

Bardziej szczegółowo

Uniwersalny Konwerter Protokołów

Uniwersalny Konwerter Protokołów Uniwersalny Konwerter Protokołów Autor Robert Szolc Promotor dr inż. Tomasz Szczygieł Uniwersalny Konwerter Protokołów Szybki rozwój technologii jaki obserwujemy w ostatnich latach, spowodował że systemy

Bardziej szczegółowo

Sieci komputerowe - Wstęp do intersieci, protokół IPv4

Sieci komputerowe - Wstęp do intersieci, protokół IPv4 Piotr Kowalski KAiTI Internet a internet - Wstęp do intersieci, protokół IPv Plan wykładu Informacje ogólne 1. Ogólne informacje na temat sieci Internet i protokołu IP (ang. Internet Protocol) w wersji.

Bardziej szczegółowo

Skąd dostać adres? Metody uzyskiwania adresów IP. Statycznie RARP. Część sieciowa. Część hosta

Skąd dostać adres? Metody uzyskiwania adresów IP. Statycznie RARP. Część sieciowa. Część hosta Sieci komputerowe 1 Sieci komputerowe 2 Skąd dostać adres? Metody uzyskiwania adresów IP Część sieciowa Jeśli nie jesteśmy dołączeni do Internetu wyssany z palca. W przeciwnym przypadku numer sieci dostajemy

Bardziej szczegółowo

1 Moduł Diagnostyki Sieci

1 Moduł Diagnostyki Sieci 1 Moduł Diagnostyki Sieci Moduł Diagnostyki Sieci daje użytkownikowi Systemu Vision możliwość badania dostępności w sieci Ethernet komputera lub innych urządzeń wykorzystujących do połączenia protokoły

Bardziej szczegółowo

Protokoły internetowe

Protokoły internetowe Protokoły internetowe O czym powiem? Wstęp Model OSI i TCP/IP Architektura modelu OSI i jego warstwy Architektura modelu TCP/IP i jego warstwy Protokoły warstwy transportowej Protokoły warstwy aplikacji

Bardziej szczegółowo

Instrukcja do laboratorium Systemów Operacyjnych. (semestr drugi)

Instrukcja do laboratorium Systemów Operacyjnych. (semestr drugi) Instrukcja do laboratorium Systemów Operacyjnych (semestr drugi) Ćwiczenie dziesiąte Temat: Gniazda BSD protokoły internetowe Opracowanie: mgr in ż. Arkadiusz Chrobot Wprowadzenie 1. Usługi sieciowe w

Bardziej szczegółowo

Plan wykładu. Warstwa sieci. Po co adresacja w warstwie sieci? Warstwa sieci

Plan wykładu. Warstwa sieci. Po co adresacja w warstwie sieci? Warstwa sieci Sieci komputerowe 1 Sieci komputerowe 2 Plan wykładu Warstwa sieci Miejsce w modelu OSI/ISO Funkcje warstwy sieciowej Adresacja w warstwie sieciowej Protokół IP Protokół ARP Protokoły RARP, BOOTP, DHCP

Bardziej szczegółowo

Sieci komputerowe. Wykład 1: Podstawowe pojęcia i modele. Marcin Bieńkowski. Instytut Informatyki Uniwersytet Wrocławski

Sieci komputerowe. Wykład 1: Podstawowe pojęcia i modele. Marcin Bieńkowski. Instytut Informatyki Uniwersytet Wrocławski Sieci komputerowe Wykład 1: Podstawowe pojęcia i modele Marcin Bieńkowski Instytut Informatyki Uniwersytet Wrocławski Sieci komputerowe (II UWr) Wykład 1 1 / 14 Komunikacja Komunikacja Komunikacja = proces

Bardziej szczegółowo

Sieci komputerowe - administracja

Sieci komputerowe - administracja Sieci komputerowe - administracja warstwa sieciowa Andrzej Stroiński andrzej.stroinski@cs.put.edu.pl http://www.cs.put.poznan.pl/astroinski/ warstwa sieciowa 2 zapewnia adresowanie w sieci ustala trasę

Bardziej szczegółowo