Unix: programowanie sieciowe
|
|
- Eleonora Kulesza
- 9 lat temu
- Przeglądów:
Transkrypt
1 Unix: programowanie sieciowe Witold Paluszyński witold/ Copyright c 1999,2004 Witold Paluszyński All rights reserved. Niniejszy dokument zawiera materia ly do wyk ladu na temat programowania sieciowego w systemie Unix. Jest on udostepniony pod warunkiem wykorzystania wy l acznie do w lasnych, prywatnych potrzeb i może być kopiowany wy l acznie w ca lości, razem z niniejsza strona tytu low a.
2
3 Warstwowy model sieci ISO-OSI Warstwa Warstwa aplikacji zapewnia określone us lugi sieciowe dla użytkownika aplikacji prezentacji sesji transportowa sieciowa po l aczeniowa zapewnia reprezentacje danych (format,kompresja,szyfrowanie) zapewnia otwieranie i zamykanie sesji oraz organizacje dialogu zapewnia niezawodny transport danych m-y dwoma systemami przesy lanie danych do określonego komputera (zawodne) przesy lanie danych do komputera w sieci lokalnej prezentacji sesji transportowa sieciowa po l aczeniowa fizyczna fizyczna po l aczenie fizyczne Unix: programowanie sieciowe 3
4 Model ISO a protoko ly internetowe Warstwy modelu ISO Protoko ly internetowe Funkcja aplikacji prezentacji aplikacji sesji transportowa sieciowa po l aczeniowa fizyczna TCP, UDP,... IP, ICMP IPv6, ICMPv6 systemowy driver karta sieciowa inny sprzet sieciowy interface gniazdek dostarczanie danych w trybie po l aczeniowym lub bezpo l aczeniowym pod określony adres (komputer+port) znajdowanie ścieżek sieciowych, przekazywanie pakietów do w laściwego adresu lokalnego, funkcje kontrolne Unix: programowanie sieciowe 4
5 Diagram stanów protoko lu TCP starting point CLOSED appl: passive open send: <nothing> timeout send: RST recv: RST recv: SYN; send: SYN, ACK LISTEN passive open appl: active open send: SYN appl: send data send: SYN SYN_RCVD recv: ACK send: <nothing> recv: SYN send: SYN, ACK simultaneous open recv: SYN, ACK send: ACK SYN_SENT active open appl: close or timeout appl: close send: FIN ESTABLISHED data transfer state recv: FIN send: ACK CLOSE_WAIT appl: close send: FIN appl: close send: FIN FIN_WAIT_1 recv: FIN send: ACK simultaneous close CLOSING LAST_ACK recv: ACK send: <nothing> recv: ACK send: <nothing> recv: FIN, ACK send: ACK recv: ACK send: <nothing> passive close FIN_WAIT_2 recv: FIN send: ACK active close TIME_WAIT 2MSL timeout appl: recv: send: normal transitions for client normal transitions for server state transitions taken when application issues operation state transitions taken when segment received what is sent for this transition TCP state transition diagram. Unix: programowanie sieciowe 5
6 Nag lówki pakietów TCP, UDP i IP IP Header bit 4-bit header 8-bit type of service 16-bit total length (in bytes) version length (TOS) 8-bit time to live (TTL) 16-bit identification 8-bit protocol 0 D F M F 32-bit source IP address 13-bit fragment offset 16-bit header checksum 20 bytes 32-bit destination IP address options (if any) data UDP Header bit source port number 16-bit destination port number 8bytes 16-bit UDP length 16-bit UDP checksum data (if any) TCP Header bit source port number 16-bit destination port number 32-bit sequence number 32-bit acknowledgment number 20 bytes 4-bit header length reserved (6 bits) U RG A CK P SH R ST S YN F IN 16-bit window size 16-bit TCP checksum 16-bit urgent pointer options (if any) data (if any) Unix: programowanie sieciowe 6
7 Interface gniazdek Gniazdka uniwersalny interface do mechanizmów komunikacji miedzyprocesowej pozwalajacy na dwukierunkowa komunikacje procesów, nawet miedzy różnymi komputerami. Gniazdko stanowi deskryptor pliku reprezentujacy koniec rury (a raczej dziury ), który po pod l aczeniu gdzieś drugiego końca można zapisywać i/lub odczytywać. Komunikaty wrzucone do dziury wypadaja drugim końcem, ale nie na pewno i niekoniecznie we w laściwej kolejności albo bez b l edów. Gniazdka typu SOCK_STREAM: komunikacja w modelu po l aczeniowym zwykle zwiazana z protoko lem TCP warstwy transportowej (analogia: komunikacja telefoniczna). Gniazdka typu SOCK_DGRAM: komunikacja w modelu bezpo l aczeniowym zwykle zwiazana z protoko lem UDP warstwy transportowej (analogia: komunikacja listowa). Gniazdka typu SOCK_RAW: komunikacja na niskim poziomie, wy l acznie bezpo l aczeniowa zwykle zwiazana z protoko lem IP warstwy sieciowej, a także komunikaty kontrolne protoko lu ICMP. Unix: programowanie sieciowe 7
8 Adresowanie w sieci Internet 32-bitowe (4-oktetowe) adresy IP wersji 4, stosowane od 1.I.1983 klasa A: pierwszy oktet jest adresem sieci (a pozosta le trzy adresem komputera), z czego pierwszy bit jest zerem; możliwe 128 takich sieci (przedzia l 0-127) i 16 milionow komputerów w każdej klasa B: pierwsze dwa oktety sa adresem sieci (a dwa adresem komputera), z czego pierwsze dwa bity sa 10; możliwe 16 tysiecy adresów sieci (przedzia l ) po 65 tysiecy komputerów klasa C: pierwsze trzy oktety sa adresem sieci (a jeden adresem komputera), z czego pierwsze trzy bity sa 110; możliwe dwa miliony takich sieci (przedzia l ) i 256 komputerów w każdej klasa D: ca ly adres jest jednym adresem, ale cztery pierwsze bity musza być 1110; adresy te stosuje sie do komunikacji multicast adresy broadcast: same jedynki lub same zera w adresie komputera adresy prywatne: Unix: programowanie sieciowe 8
9 Adresowanie bezklasowe Przydzielanie adresów IP wed lug schematu pieciu klas jest nieefektywne; pomimo iż istnieje ponad 4 miliardy liczb 32-bitowych już w po lowie lat 90-tych zacze lo brakować adresów IP. Ponadto, dowolność w przydzielaniu pojedynczych adresów sieci powodowa la przepe lnienie globalnych routerów zobowiazanych do odnajdowania ścieżki prowadzacej do każdej sieci. Dla rozwiazania tych problemów wprowadzono tzw. system CIDR (classless inter-domain routing). Odrzuca on sztywny podzia l adresu na sieć i komputer, oraz wprowadza agregacje bloków adresów sieci. Obecnie dowolny adres sk lada sie z prefixu (pierwszej cześci) dowolnej d lugości stanowiacego adres sieci, i reszty stanowiacej adres komputera. Dla wskazania d lugości prefixu stosuje sie notacje x.y.z.t/p. Na przyk lad, /25 oznacza adres sieci, w którym 25 bitów stanowi adres sieci, a pozosta lych 7 adres komputera. Oznacza to, że może być 128 adresów w tej sieci, z których pierwszy (same zera w cz eści adresu komputera) jest adresem sieci, a ostatni (same jedynki w cz eści adresu komputera) jest adresem rozg laszania (broadcast), co pozostawia 126 rzeczywistych adresów. Unix: programowanie sieciowe 9
10 Adresowanie z podsieciami Schemat adresowania: nr-sieci/nr-komputera pozwala przydzielać organizacji pule adresów jako ca l a sieć. Jednak czesto użytkownicy adresów sieciowych sami chca wydzielać sobie mniejsze sieci (podsieci) dla usprawnienia swojej w lasnej infrastruktury sieciowej. Dlatego jest możliwe traktowanie dowolnej poczatkowej cześci adresu komputera jako rozszerzenia adresu sieci (adresu podsieci), a reszty jako adresu komputera. Na przyk lad: adres sieci /25, albo /25, w rzeczywistości sk lada si e z adresu sieci /24 przydzielanej jednostkom Politechniki Wroc lawskiej, i jednobitowego adresu podsieci (o wartości 0). Dla odmiany, /25 nie jest adresem drugiej takiej samej sieci, ponieważ te adresy zosta ly podzielone na podsieci inaczej, z trzybitowym adresem podsieci, po 30 rzeczywistych adresów komputerów w każdej. Adresami tych sieci sa wiec: /27, /27, /27, /27. Maska podsieci jest adres, w którym wszystkie bity adresu sieci sa jedynkami, a bity adresu komputera zerami. Maska podsieci /25 jest , albo ffffff80, a posieci /27, jak i pozosta lych trzech powyższych podsieci, jest , albo ffffffe0. Unix: programowanie sieciowe 10
11 Adresy symboliczne Dla wygody wprowadzono dualna przestrzeń adresów adresy symboliczne. Sa one zorganizowane w hierarchiczna strukture tzw. domen adresowych. Struktura ta nie ma ograniczeń; domeny po lożone niżej w hierarchii sa w lasnościa różnych organizacji, które same dostarczaja informacji o domenach w nich zawartych. Np.: komputer sequoia.ict.pwr.wroc.pl (IP: ) należy do domeny ict.pwr.wroc.pl, która jest w lasnościa Instytutu Cybernetyki Technicznej Politechniki Wroc lawskiej, i która otrzyma la prawa do tej domeny od Politechniki Wroc lawskiej, w laściciela domeny pwr.wroc.pl. Przestrzeń adresów symbolicznych s luży tylko wygodzie ludzkiej pamieci, i istnieje odwzorowanie adresów symbolicznych na adresy numeryczne. Do realizacji tego odwzorowania s luży specjalny system DNS (domain name system) sk ladajacy sie z sieci serwerów wymieniajacych informacje o tych odwzorowaniach i serwujacych te informacje na życzenie. Unix: programowanie sieciowe 11
12 Adresy IP interface ów Komputer może posiadać wiecej niż jedna karte sieciowa (tzw. interface sieciowy), które moga być pod l aczone do różnych sieci lub do tej samej sieci. W obu przypadkach obie karty sieciowe powinny funkcjonować niezależnie i mieć oddzielne adresy IP. W pierwszym przypadku (dwie różne sieci) komputer może, ale nie musi, pe lnić role l acznika, tzw, routera przekazujacego ruch miedzy tymi sieciami. Czesto jednak taki komputer posiada tylko jeden adres symboliczny. Np. komputer tahoe.ict.pwr.wroc.pl ma dwie karty sieciowe o adresach i i jest routerem miedzy siecia Robotyki /25 a siecia g lówna ICT /27. Adres (symbol INADDR_LOOPBACK) jest na mocy konwencji przypisany na każdym komputerze virtualnemu interface-owi loopback, który jest programowa implementacja po l aczenia sieciowego komputera z samym soba. Adres (symbol INADDR_ANY) jest również czasami używany jako tzw. adres wild-card. Unix: programowanie sieciowe 12
13 Adresowanie inne zagadnienia adresy niskiego poziomu w sieciach lokalnych Sa to tzw. adresy MAC, medium access control unikalne 6-bajtowe adresy przydzielane na sta le urzadzeniom sieciowym (patent firmy Xerox dla sieci Ethernet, stosowany również w innych technologiach sieciowych, np. token ring) adresów co daje ok. 28 tysi ecy adresów na każdego mieszkańca planety adresy IP wersji 6 (IPv6) Jest to nowa wersja systemu adresów internetowych z nowa wersja protoko lu IP warstwy sieciowej. Adresy IPv6 sa 128-bitowe i zawieraja w sobie adresy MAC (a raczej ich 64-bitowe uogólnienie: EUI-64). Unix: programowanie sieciowe 13
14 Routing Routing jest czynnościa określania lokalizacji sieci komputerowej na podstawie jej adresu. Lokalizacje rozumiemy tu w sensie po l aczeń, to znaczy znalezienie ścieżki sieciowej (szeregu po l aczonych routerów), prowadzacej do lokalizowanej sieci. Realizacja tej czynności opiera sie na zwiazku prefixu adresu sieci z fizyczna lokalizacja sieci. Informacje wymieniane miedzy komputerami znajdujacymi ścieżki (routerami) pozwalaja im na określanie tych ścieżek przez abstrakcje. Algorytm routera: jeśli adres jest w mojej podsieci to doreczam pakiet komu trzeba, jeśli jest w jednej z podsieci do l aczonej do mojej, lub znam na pamieć ścieżke do tej podsieci z obs lugujacym ja routerem to jemu przekazuje pakiet, w przeciwnym wypadku przekazuje pakiet routerowi obs lugujacemu ruch na zewn atrz mojej podsieci; może to ja sam jestem takim routerem, w tym przypadku posiadam drugie po l aczenie z kimś kto obs luguje ruch wychodzacy z mojej podsieci. Unix: programowanie sieciowe 14
15 Komunikacja klient-serwer Pakiety sieciowe z konieczności odbiera system operacyjny, który nastepnie stwierdza dla kogo pakiet jest przeznaczony. Pakiety adresowane sa tzw. numerami portów. Numery portów moga być zwiazane z gniazdkami otwartymi przez procesy już po nawiazaniu komunikacji, albo otwartymi w celu oczekiwania na zg loszenie klienta. Wiekszość komunikacji sieciowej odbywa sie w trybie klient-serwer. Istnieja dobrze-znane us lugi sieciowe, obs lugiwane pod oficjalnymi numerami portów przez serwery, które rejestruja swoje us lugi w systemie (zwiazuj a gniazdko z adresem-numerem portu funkcja bind), nastepnie oczekuja na nadejście zg loszenia, odbieraja je od systemu operacyjnego, i przystepuj a do ich obs lużenia majac jednocześnie na uwadze możliwość nadejścia nastepnych zg loszeń. ftp-data 20/tcp ftp 21/tcp smtp 25/tcp mail http 80/tcp www www-http http 80/udp www www-http sunrpc 111/udp rpcbind sunrpc 111/tcp rpcbind Procesy pragnace nawiazać symetryczna komunikacje sieciowa (tzn. nie w Unix: programowanie sieciowe 15
16 trybie klient-serwer) również musza zainicjować komunikacje za pośrednictwem zdalnego systemu. Jeden z partnerów musi zarejestrować sie jak serwer, i oczekiwać na zg loszenie sie partnera może przejść do komunikacji symetrycznej zgodnie ze swoim protoko lem. Jeszcze inny model komunikacji stanowi zdalne wywo lywanie procedur (remote procedure calling, RPC). Proces wywo lywania zdalnej procedury rozpoczyna sie od kontaktu ze zdalnym serwerem pośredniczacym (brokera), który umożliwia komunikacje z w laściwym serwerem, który oblicza wartość funkcji dla przys lanych wartości argumentów. Unix: programowanie sieciowe 16
17 #include <netinet/in.h> #include <arpa/inet.h> #include <unistd.h> #include <netdb.h> #include <stdio.h> Uzyskiwanie informacji o adresie int main(int argc, char *argv[]) { char *host, **names, **addrs; struct hostent *hostinfo; if (argc == 1) { char myname[256]; gethostname(myname, 255); host = myname; else host = argv[1]; hostinfo = gethostbyname(host); if (!hostinfo) { fprintf(stderr, "brak translacji adresu dla: %s\n", host); exit(1); printf("wyniki dla adresu symbolicznego %s:\n", host); Unix: programowanie sieciowe 17
18 printf("nazwa: %s\n", hostinfo -> h_name); printf("aliasy:"); names = hostinfo -> h_aliases; while(*names) { printf(" %s", *names); names++; printf("\n"); if (hostinfo -> h_addrtype!= AF_INET) { fprintf(stderr, "Hmm, nie jest to adres internetowy!\n"); exit(1); addrs = hostinfo -> h_addr_list; while (*addrs) { printf(" %s", inet_ntoa(*(struct in_addr *)*addrs)); addrs++; printf("\n"); exit(0); Unix: programowanie sieciowe 18
19 * This program creates a datagram socket, binds a name to it, then reads * from t #include <sys/types.h> #include <sys/socket.h> #include <netinet/in.h> #include <stdio.h> #include <unistd.h> #include <stdlib.h> /* In the included file <netinet/in.h> a sockaddr_in is defined as follows: * struct sockaddr_in { * short sin_family; * u_short sin_port; * struct in_addr sin_addr; * char sin_zero[8]; * ; */ main() { int sock, length; struct sockaddr_in name; char buf[1024]; /* Create socket from which to read. */ sock = socket(pf_inet, SOCK_DGRAM, 0); if (sock < 0) { perror("opening datagram socket"); exit(1); Unix: programowanie sieciowe 19
20 /* Create name with wildcards. */ name.sin_family = AF_INET; name.sin_addr.s_addr = INADDR_ANY; name.sin_port = 0; if (bind(sock, &name, sizeof(name))) { perror("binding datagram socket"); exit(1); /* Find assigned port value and print it out. */ length = sizeof(name); if (getsockname(sock, &name, &length)) { perror("getting socket name"); exit(1); printf("socket has port #%d\n", ntohs(name.sin_port)); /* Read from the socket */ if (read(sock, buf, 1024) < 0) perror("receiving datagram packet"); printf("-->%s\n", buf); close(sock); Unix: programowanie sieciowe 20
21 #include <sys/types.h> #include <sys/socket.h> #include <netinet/in.h> #include <netdb.h> #include <stdio.h> #include <string.h> #include <stdlib.h> #include <unistd.h> #define DATA "The sea is calm tonight, the tide is full..." main(int argc, char *argv[]) { int sock; struct sockaddr_in name; struct hostent *hp, *gethostbyname(); /* Create socket on which to send. */ sock = socket(pf_inet, SOCK_DGRAM, 0); if (sock < 0) { perror("opening datagram socket"); exit(1); /* Unix: programowanie sieciowe 21
22 * Construct name, with no wildcards, of the socket to send to. * Gethostbyname() returns a structure including the network address * of the specified host. The port number is taken from the command * line. */ hp = gethostbyname(argv[1]); if (hp == 0) { fprintf(stderr, "%s: unknown host\n", argv[1]); exit(2); memcpy(&name.sin_addr, hp->h_addr, hp->h_length); name.sin_family = AF_INET; name.sin_port = htons(atoi(argv[2])); /* Send message. */ if (sendto(sock, DATA, sizeof(data), 0, &name, sizeof(name)) < 0) perror("sending datagram message"); close(sock); Unix: programowanie sieciowe 22
23 #include <sys/types.h> #include <sys/socket.h> #include <netinet/in.h> #include <netdb.h> #include <stdio.h> #include <string.h> #include <stdlib.h> #include <unistd.h> #define DATA "Half a league, half a league..." /* * This program creates a socket and initiates a connection with the socket * given in the command line. One message is sent over the connection and * then the socket is closed, ending the connection. The form of the command * line is streamwrite hostname portnumber */ main(int argc, char *argv[]) { int sock; struct sockaddr_in server; struct hostent *hp, *gethostbyname(); char buf[1024]; /* Create socket */ Unix: programowanie sieciowe 23
24 sock = socket(pf_inet, SOCK_STREAM, 0); if (sock < 0) { perror("opening stream socket"); exit(1); /* Connect socket using name specified by command line. */ server.sin_family = AF_INET; hp = gethostbyname(argv[1]); if (hp == 0) { fprintf(stderr, "%s: unknown host\n", argv[1]); exit(2); memcpy(&server.sin_addr, hp->h_addr, hp->h_length); server.sin_port = htons(atoi(argv[2])); if (connect(sock, &server, sizeof(server)) < 0) { perror("connecting stream socket"); exit(1); if (write(sock, DATA, sizeof(data)) < 0) perror("writing on stream socket"); close(sock); Unix: programowanie sieciowe 24
25 #include <sys/types.h> #include <sys/socket.h> #include <netinet/in.h> #include <netdb.h> #include <stdio.h> #include <string.h> #include <unistd.h> #include <stdlib.h> #define TRUE 1 /* * This program creates a socket and then begins an infinite loop. Each time * through the loop it accepts a connection and prints out messages from it. * When the connection breaks, or a termination message comes through, the * program accepts a new connection. */ main() { int sock, length; struct sockaddr_in server; int msgsock; char buf[1024]; int rval; Unix: programowanie sieciowe 25
26 int i; /* Create socket */ sock = socket(pf_inet, SOCK_STREAM, 0); if (sock < 0) { perror("opening stream socket"); exit(1); /* Name socket using wildcards */ server.sin_family = AF_INET; server.sin_addr.s_addr = INADDR_ANY; server.sin_port = 0; if (bind(sock, &server, sizeof(server))) { perror("binding stream socket"); exit(1); /* Find out assigned port number and print it out */ length = sizeof(server); if (getsockname(sock, &server, &length)) { perror("getting socket name"); exit(1); printf("socket has port #%d\n", ntohs(server.sin_port)); /* Start accepting connections */ Unix: programowanie sieciowe 26
27 listen(sock, 5); do { msgsock = accept(sock, 0, 0); if (msgsock == -1) perror("accept"); else do { memset(buf, 0, sizeof(buf)); if ((rval = read(msgsock, buf, 1024)) < 0) perror("reading stream message"); i = 0; if (rval == 0) printf("ending connection\n"); else printf("-->%s\n", buf); while (rval!= 0); close(msgsock); while (TRUE); /* * Since this program has an infinite loop, the socket "sock" is * never explicitly closed. However, all sockets will be closed * automatically when a process is killed or terminates normally. */ Unix: programowanie sieciowe 27
28 #include <sys/types.h> #include <sys/socket.h> #include <sys/time.h> #include <netinet/in.h> #include <sys/select.h> #include <netdb.h> #include <stdio.h> #include <string.h> #include <unistd.h> #include <stdlib.h> #define TRUE 1 /* * This program uses select() to check that someone is trying to connect * before calling accept(). */ main() { int sock, length; struct sockaddr_in server; int msgsock; char buf[1024]; int rval; Unix: programowanie sieciowe 28
29 fd_set ready; struct timeval to; /* Create socket */ sock = socket(af_inet, SOCK_STREAM, 0); if (sock < 0) { perror("opening stream socket"); exit(1); /* Name socket using wildcards */ server.sin_family = AF_INET; server.sin_addr.s_addr = INADDR_ANY; server.sin_port = 0; if (bind(sock, &server, sizeof(server))) { perror("binding stream socket"); exit(1); /* Find out assigned port number and print it out */ length = sizeof(server); if (getsockname(sock, &server, &length)) { perror("getting socket name"); exit(1); printf("socket has port #%d\n", ntohs(server.sin_port)); Unix: programowanie sieciowe 29
30 /* Start accepting connections */ listen(sock, 5); do { FD_ZERO(&ready); FD_SET(sock, &ready); to.tv_sec = 5; if (select(sock + 1, &ready, 0, 0, &to) < 0) { perror("select"); continue; if (FD_ISSET(sock, &ready)) { msgsock = accept(sock, (struct sockaddr *)0, (int *)0); if (msgsock == -1) perror("accept"); else do { memset(buf, 0, sizeof(buf)); if ((rval = read(msgsock, buf, 1024)) < 0) perror("reading stream message"); else if (rval == 0) printf("ending connection\n"); else printf("-->%s\n", buf); while (rval > 0); close(msgsock); else Unix: programowanie sieciowe 30
31 printf("do something else\n"); while (TRUE); Unix: programowanie sieciowe 31
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()
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
1.1 Przykład znajdowanie liczb pierwszych leżących w zadanym zakresie, tryb bezpołączeniowy
1.1 Przykład znajdowanie liczb pierwszych leżących w zadanym zakresie, tryb bezpołączeniowy Należy znaleźć liczby pierwsze w zakresie od 2 do N na P komputerach. Zarządca pocz[i], kon[i] wykonawca 1 wykonawca
3. Identyfikacja. SKŁADNIA #include <sys/socket.h> int getpeername(int socket, struct sockaddr *addr, int *addrlen);
3.1. Określanie adresu połączonego hosta 3. #include int getpeername(int socket, struct sockaddr *addr, int *addrlen); Funkcja getpeername dostarcza adresu drugiej strony połączenia. Parametry:
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
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
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ść
TIN Techniki Internetowe zima
TIN Techniki Internetowe zima 2016-2017 Grzegorz Blinowski Instytut Informatyki Politechniki Warszawskiej Plan wykładów 2 Intersieć, ISO/OSI, protokoły sieciowe, IP 3 Protokół IP i prot. transportowe:
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/
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.
Model sieci OSI, protokoły sieciowe, adresy IP
Model sieci OSI, protokoły sieciowe, adresy IP Podstawę działania internetu stanowi zestaw protokołów komunikacyjnych TCP/IP. Wiele z używanych obecnie protokołów zostało opartych na czterowarstwowym modelu
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
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)
Komputery i Systemy Równoległe Jędrzej Ułasiewicz 1
Komputery i Systemy Równoległe Jędrzej Ułasiewicz 1 1 Interfejs gniazdek Jednolity interfejs API (Application Program Interface) do mechanizmów komunikacji sieciowej. Wprowadzony w wersji Unixa BSD 4.2
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
Sieci dostępu do Internetu. Dr inż. Małgorzata Langer
Sieci dostępu do Internetu wykład 1 Dr inż. Małgorzata Langer ISO 7498-1 (1994 rok) OSI - Open System Interconnection Cele OSI: Logiczny rozkład złożonej sieci na mniejsze części (WARSTWY) Możliwość zdefiniowania
Przykład aplikacji UDP
#include #include #include /* atoi */ #include /* htons, ntohs... */ #include /* memset */ #include /* inet_ntoa */ #include
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
2. Interfejs gniazd. 2.1. Gniazdo
2. 2.1. Gniazdo Gniazdo (ang. socket): pewna abstrakcja wykorzystywana do wysyłania lub otrzymywania danych z innych procesów. Pełni rolę punktu końcowego w linii komunikacyjnej. to interfejs między programem
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
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:
Warstwa sieciowa. Model OSI Model TCP/IP. Aplikacji. Aplikacji. Prezentacji. Sesji. Transportowa. Transportowa
Warstwa sieciowa Model OSI Model TCP/IP Aplikacji Prezentacji Aplikacji podjęcie decyzji o trasowaniu (rutingu) na podstawie znanej, lokalnej topologii sieci ; - podział danych na pakiety Sesji Transportowa
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,
Sieci komputerowe. Wykład 3: Protokół IP. Marcin Bieńkowski. Instytut Informatyki Uniwersytet Wrocławski. Sieci komputerowe (II UWr) Wykład 3 1 / 25
Sieci komputerowe Wykład 3: Protokół IP Marcin Bieńkowski Instytut Informatyki Uniwersytet Wrocławski Sieci komputerowe (II UWr) Wykład 3 1 / 25 W poprzednim odcinku Podstawy warstwy pierwszej (fizycznej)
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
Sieci komputerowe. Tadeusz Kobus, Maciej Kokociński Instytut Informatyki, Politechnika Poznańska
Sieci komputerowe Tadeusz Kobus, Maciej Kokociński Instytut Informatyki, Politechnika Poznańska Warstwa transportowa Sieci Komputerowe, T. Kobus, M. Kokociński 2 Sieci Komputerowe, T. Kobus, M. Kokociński
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
Funkcje systemu Unix
Funkcje systemu Unix Witold Paluszyński witold@ict.pwr.wroc.pl http://sequoia.ict.pwr.wroc.pl/ witold/ Copyright c 2002 2005 Witold Paluszyński All rights reserved. Niniejszy dokument zawiera materia ly
Systemy operacyjne i sieci komputerowe Szymon Wilk Adresowanie w sieciach Klasy adresów IP a) klasa A
i sieci komputerowe Szymon Wilk Adresowanie w sieciach 1 1. Klasy adresów IP a) klasa A sieć host 0 mało sieci (1 oktet), dużo hostów (3 oktety) pierwszy bit równy 0 zakres adresów dla komputerów 1.0.0.0-127.255.255.255
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
Internet Control Message Protocol (ICMP) Łukasz Trzciałkowski
Internet Control Message Protocol (ICMP) Łukasz Trzciałkowski Czym jest ICMP? Protokół ICMP jest protokołem działającym w warstwie sieciowej i stanowi integralną część protokołu internetowego IP, a raczej
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
Model OSI/ISO. Komputer B. Warstwy w modelu OSI aplikacji. aplikacji. prezentacji Komputer A. prezentacji. sesji. sesji. komunikacja wirtualna
1 Plan wykładu 1. Model ISO/OSI warstwy modelu OSI transmisja w modelu OSI 2. Model TCP/IP protokół UDP protokół TCP 3. Połączenie i rozłączenie w TCP 4. Programowanie z wykorzystaniem gniazd. 2 Model
Adresy IP v.6 IP version 4 IP version 6 byte 0 byte 1 byte 2 byte 3 byte 0 byte 1 byte 2 byte 3
Historia - 1/2 Historia - 2/2 1984.1 RFC 932 - propozycja subnettingu 1985.8 RFC 95 - subnetting 199.1 ostrzeżenia o wyczerpywaniu się przestrzeni adresowej 1991.12 RFC 1287 - kierunki działań 1992.5 RFC
Przewodowe sieci dostępu do. Dr inż. Małgorzata Langer
Przewodowe sieci dostępu do Internetu - model OSI Dr inż. Małgorzata Langer ISO 7498-1 (1994 rok) OSI - Open System Interconnection Cele OSI: Logiczny rozkład złożonej sieci na mniejsze części (WARSTWY)
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
Programowanie aplikacji równoległych i rozproszonych. Wykład 4
Wykład 4 p. 1/44 Programowanie aplikacji równoległych i rozproszonych Wykład 4 Dr inż. Tomasz Olas olas@icis.pcz.pl Instytut Informatyki Teoretycznej i Stosowanej Politechnika Częstochowska Gniazda - Wstęp
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
Gniazda - Wstęp. Oprogramowanie systemów równoległych i rozproszonych. Sposób komunikacji. Domena adresowa. olas@icis.pcz.pl
Gniazda - Wstęp Oprogramowanie systemów równoległych i rozproszonych Dr inż. Tomasz Olas olas@icis.pcz.pl Instytut Informatyki Teoretycznej i Stosowanej Politechnika Częstochowska Domena adresowa 1/??
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
Sieci komputerowe. Wykład 3: Protokół IP. Marcin Bieńkowski. Instytut Informatyki Uniwersytet Wrocławski. Sieci komputerowe (II UWr) Wykład 3 1 / 24
Sieci komputerowe Wykład 3: Protokół IP Marcin Bieńkowski Instytut Informatyki Uniwersytet Wrocławski Sieci komputerowe (II UWr) Wykład 3 1 / 24 Przypomnienie W poprzednim odcinku Podstawy warstwy pierwszej
Krótkie wprowadzenie do korzystania z OpenSSL
Krótkie wprowadzenie do korzystania z OpenSSL Literatura: http://www.openssl.org E. Rescola, "An introduction to OpenSSL Programming (PartI)" (http://www.linuxjournal.com/article/4822) "An introduction
Testy penetracyjne Przykłady programów
Bezpieczeństwo systemów informatycznych Testy penetracyjne Przykłady programów Zbigniew Suski 1 Rekonesans - przykłady Zbigniew Suski 2 Rekonesans - przykłady Zbigniew Suski 3 Rekonesans - przykłady Zbigniew
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
ZESZYTY ETI ZESPOŁU SZKÓŁ W TARNOBRZEGU Nr 1 Seria: Teleinformatyka 2013
ZESZYTY ETI ZESPOŁU SZKÓŁ W TARNOBRZEGU Nr 1 Seria: Teleinformatyka 2013 Paweł Kowalik Zespół Szkół im. ks. S. Staszica w Tarnobrzegu KOMUNIKACJA SIECIOWA MIĘDZY URZĄDZENIAMI Z WYKORZYSTANIEM PROTKOŁU
Aby lepiej zrozumieć działanie adresów przedstawmy uproszczony schemat pakietów IP podróżujących w sieci.
Struktura komunikatów sieciowych Każdy pakiet posiada nagłówki kolejnych protokołów oraz dane w których mogą być zagnieżdżone nagłówki oraz dane protokołów wyższego poziomu. Każdy protokół ma inne zadanie
Klasy adresów IP. Model ISO - OSI. Subnetting. OSI packet encapsulation. w.aplikacji w.prezentacji w.sesji w.transportowa w.
w.aplikacji w.prezentacji w.sesji w.transportowa w.sieciowa w.łącza w.fizyczna Model ISO - OSI Telnet SMTP FTP DNS NFS XDR RPC TCP UDP IP Ethernet IEEE 802.3 X.25 SLIP PPP A B C D E 0 0.0.0.0 10 128.0.0.0
Protokół DHCP. Patryk Czarnik. Bezpieczeństwo sieci komputerowych MSUI 2009/10. Wydział Matematyki, Informatyki i Mechaniki Uniwersytet Warszawski
Protokół DHCP Patryk Czarnik Wydział Matematyki, Informatyki i Mechaniki Uniwersytet Warszawski Bezpieczeństwo sieci komputerowych MSUI 2009/10 Patryk Czarnik (MIMUW) 10 DHCP BSK 2009/10 1 / 18 DHCP ogólnie
Bazy Danych i Usługi Sieciowe
Bazy Danych i Usługi Sieciowe Sieci komputerowe Paweł Daniluk Wydział Fizyki Jesień 2012 P. Daniluk (Wydział Fizyki) BDiUS w. VI Jesień 2012 1 / 24 Historia 1 Komputery mainframe P. Daniluk (Wydział Fizyki)
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
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).
SUMA KONTROLNA (icmp_cksum) NUMER KOLEJNY (icmp_seq)
Program my_ping: wysłanie komunikatu ICMP z żądaniem echa Struktura icmp (plik netinet/ip_icmp.h) 0 7 8 15 16 31 TYP (icmp_type) KOD (icmp_code) IDENTYFIKATOR (icmp_id) SUMA KONTROLNA (icmp_cksum) NUMER
Akademickie Centrum Informatyki PS. Wydział Informatyki PS
Akademickie Centrum Informatyki PS Wydział Informatyki PS Wydział Informatyki Sieci komputerowe i Telekomunikacyjne Datagram w Intersieci (IP) Krzysztof Bogusławski tel. 449 41 82 kbogu@man.szczecin.pl
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
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
Charakterystyka grupy protokołów TCP/IP
Charakterystyka grupy protokołów TCP/IP Janusz Kleban Architektura TCP/IP - protokoły SMTP FTP Telnet HTTP NFS RTP/RTCP SNMP TCP UDP IP ICMP Protokoły routingu ARP RARP Bazowa technologia sieciowa J. Kleban
Plan wykładu. Wyznaczanie tras. Podsieci liczba urządzeń w klasie C. Funkcje warstwy sieciowej
Wyznaczanie tras (routing) 1 Wyznaczanie tras (routing) 2 Wyznaczanie tras VLSM Algorytmy rutingu Tablica rutingu CIDR Ruting statyczny Plan wykładu Wyznaczanie tras (routing) 3 Funkcje warstwy sieciowej
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
Architektura typu klient serwer: uproszczony klient POP3
Architektura typu klient serwer: uproszczony klient POP3 Wydział Inżynierii Mechanicznej i Informatyki Instytut Informatyki Teoretycznej i Stosowanej dr inż. Łukasz Szustak Składniki systemu poczty e-mail
Sieć komputerowa Adresy sprzętowe Adresy logiczne System adresacji IP (wersja IPv4)
Sieć komputerowa Siecią komputerową nazywamy system (tele)informatyczny łączący dwa lub więcej komputerów w celu wymiany danych między nimi. Sieć może być zbudowana z wykorzystaniem urządzeń takich jak
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/
Laboratorium Sieci Komputerowe
Laboratorium Sieci Komputerowe Adresowanie IP Mirosław Juszczak 9 października 2014 Mirosław Juszczak 1 Sieci Komputerowe Na początek: 1. Jak powstaje standard? 2. Co to są dokumenty RFC...??? (czego np.
Oprogramowanie komunikacyjne dla Internetu rzeczy Laboratorium nr 4 komunikacja unicastowa IPv6
Oprogramowanie komunikacyjne dla Internetu rzeczy Laboratorium nr 4 komunikacja unicastowa IPv6 Celem ćwiczenia jest zdobycie umiejętności programowania komunikacji unicastowej za pomocą protokołu IPv6
IPv6 Protokół następnej generacji
IPv6 Protokół następnej generacji Bartłomiej Świercz Katedra Mikroelektroniki i Technik Informatycznych Łódź,13maja2008 Wstęp Protokół IPv6 często nazywany również IPNG(Internet Protocol Next Generation)
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
Omówienie TCP/IP. Historia
PORADNIKI TCP/IP Omówienie TCP/IP TCP/IP oznacza Transmision Control Protocol / Internet Protocol, jest nazwą dwóch protokołów, ale również wspólną nazwą dla rodziny setek protokołów transmisji danych
Wirtualne sieci prywatne
Rozdzia l 7 Wirtualne sieci prywatne Contents 7.1 Wirtualne sieci prywatne.................... 135 7.1.1 Przegl ad.............................. 137 7.2 Przyk ladowa implementacja VPN w Linuxie........
Komunikacja w sieciach komputerowych
Komunikacja w sieciach komputerowych Dariusz CHAŁADYNIAK 2 Plan prezentacji Wstęp do adresowania IP Adresowanie klasowe Adresowanie bezklasowe - maski podsieci Podział na podsieci Translacja NAT i PAT
Architektura typu klient serwer: przesyłanie pliku tekstowo oraz logowania do serwera za pomocą szyfrowanego hasła
Architektura typu klient serwer: przesyłanie pliku tekstowo oraz logowania do serwera za pomocą szyfrowanego hasła Wydział Inżynierii Mechanicznej i Informatyki Instytut Informatyki Teoretycznej i Stosowanej
OSI Transport Layer. Network Fundamentals Chapter 4. Version Cisco Systems, Inc. All rights reserved. Cisco Public 1
OSI Transport Layer Network Fundamentals Chapter 4 Version 4.0 1 OSI Transport Layer Network Fundamentals Rozdział 4 Version 4.0 2 Objectives Explain the role of Transport Layer protocols and services
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.
Sieci komputerowe Warstwa sieci i warstwa transportowa
Sieci komputerowe Warstwa sieci i warstwa transportowa Ewa Burnecka / Janusz Szwabiński ewa@ift.uni.wroc.pl / szwabin@ift.uni.wroc.pl Sieci komputerowe (C) 2003 Janusz Szwabiński p.1/43 Model ISO/OSI Warstwa
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
JĘZYK PYTHON - NARZĘDZIE DLA KAŻDEGO NAUKOWCA. Marcin Lewandowski [ mlew@ippt.gov.pl ]
JĘZYK PYTHON - NARZĘDZIE DLA KAŻDEGO NAUKOWCA Marcin Lewandowski [ mlew@ippt.gov.pl ] PROGRAMOWANIE SIECIOWE 2 TCP/IP = UDP + TCP TCP/IP składa się z dwóch podstawowych protokołów: TCP i UDP. TCP jest
MASKI SIECIOWE W IPv4
MASKI SIECIOWE W IPv4 Maska podsieci wykorzystuje ten sam format i sposób reprezentacji jak adresy IP. Różnica polega na tym, że maska podsieci posiada bity ustawione na 1 dla części określającej adres
Wykład 4: Protokoły TCP/UDP i usługi sieciowe. A. Kisiel,Protokoły TCP/UDP i usługi sieciowe
N, Wykład 4: Protokoły TCP/UDP i usługi sieciowe 1 Adres aplikacji: numer portu Protokoły w. łącza danych (np. Ethernet) oraz w. sieciowej (IP) pozwalają tylko na zaadresowanie komputera (interfejsu sieciowego),
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:
Połączenie sieci w intersieci ( internet ) Intersieci oparte o IP Internet
Warstwa sieciowa Usługi dla warstwy transportowej Niezależne od sieci podkładowych Oddzielenie warstwy transportu od parametrów sieci (numeracja,topologia, etc.) Adresy sieciowe dostępne dla warstwy transportowej
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
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
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
Model warstwowy Warstwa fizyczna Warstwa łacza danych Warstwa sieciowa Warstwa transportowa Warstwa aplikacj. Protokoły sieciowe
Elektroniczne Przetwarzanie Informacji Konsultacje: czw. 14.00-15.30, pokój 3.211 Plan prezentacji Warstwowy model komunikacji sieciowej Warstwa fizyczna Warstwa łacza danych Warstwa sieciowa Warstwa transportowa
Wykład 2: Budowanie sieci lokalnych. A. Kisiel, Budowanie sieci lokalnych
Wykład 2: Budowanie sieci lokalnych 1 Budowanie sieci lokalnych Technologie istotne z punktu widzenia konfiguracji i testowania poprawnego działania sieci lokalnej: Protokół ICMP i narzędzia go wykorzystujące
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
Instrukcja konfiguracji usługi Wirtualnej Sieci Prywatnej w systemie Mac OSX
UNIWERSYTETU BIBLIOTEKA IEGO UNIWERSYTETU IEGO Instrukcja konfiguracji usługi Wirtualnej Sieci Prywatnej w systemie Mac OSX 1. Make a new connection Open the System Preferences by going to the Apple menu
Plan wykładu. 1. Sieć komputerowa 2. Rodzaje sieci 3. Topologie sieci 4. Karta sieciowa 5. Protokoły używane w sieciach LAN 6.
Plan wykładu 1. Sieć komputerowa 2. Rodzaje sieci 3. Topologie sieci 4. Karta sieciowa 5. Protokoły używane w sieciach LAN 6. Modem analogowy Sieć komputerowa Siecią komputerową nazywa się grupę komputerów
Zastosowania sieci komputerowych
Zastosowania sieci komputerowych wspó ldzielenie zasobów, np. plików, drukarek komunikacja, np. poczta email, telefonia komórkowa, internetowa przypadek specjalny: Internet wiele różnych nowych zastosowań:
Instalacja i konfiguracja rouera ASMAX AR 904u. Neostrada, Netia
Instalacja i konfiguracja rouera ASMAX AR 904u. Neostrada, Netia 1) Uruchomienie str. 2 2) Konfiguracja NEOSTRADA str. 3 3) Konfiguracja NET24 str. 4 4) Konfiguracja sieć LAN str. 5 5) Przekierowanie portów
Pobieranie argumentów wiersza polecenia
Pobieranie argumentów wiersza polecenia 2. Argumenty wiersza polecenia Lista argumentów Lista argumentów zawiera cały wiersz poleceń, łącznie z nazwą programu i wszystkimi dostarczonymi argumentami. Przykłady:
ZASADY PODZIAŁU SIECI NA PODSIECI, OBLICZANIA ADRESÓW PODSIECI, ADRESÓW HOSTÓW I ADRESU ROZGŁOSZENIOWEGO
ZASADY PODZIAŁU SIECI NA PODSIECI, OBLICZANIA ADRESÓW PODSIECI, ADRESÓW HOSTÓW I ADRESU ROZGŁOSZENIOWEGO Wybór schematu adresowania podsieci jest równoznaczny z wyborem podziału lokalnej części adresu
Stos TCP/IP Warstwa Internetu. Sieci komputerowe Wykład 4
Stos TCP/IP Warstwa Internetu Sieci komputerowe Wykład 4 Historia Internetu (1 etap) Wojsko USA zleca firmie Rand Corp. wyk. projektu sieci odpornej na atak nuklearny. Uruchomienie sieci ARPANet (1 IX
Gniazda. S. Samolej: Gniazda 1
Gniazda dr inż. Sławomir Samolej Katedra Informatyki i Automatyki Politechnika Rzeszowska Program przedmiotu oparto w części na materiałach opublikowanych na: http://wazniak.mimuw.edu.pl/ oraz na materiałach
Internet Protocol v6 - w czym tkwi problem?
NAUKOWA I AKADEMICKA SIEĆ KOMPUTEROWA Internet Protocol v6 - w czym tkwi problem? dr inż. Adam Kozakiewicz, adiunkt Zespół Metod Bezpieczeństwa Sieci i Informacji IPv6 bo adresów było za mało IPv6 co to
Sieciowa komunikacja procesów - XDR i RPC
*** abc.x Przyklad pliku RPCGEN Obliczanie sumy, roznicy i iloczynu dwoch liczb calkowitych *** ************************************ Wywolanie procedury odleglej dopuszcza tylko jeden argument wywolania
Sockety TCP/IP - podstawy. Sieci Komputerowe II Wyk ład 2
Sockety TCP/IP - podstawy Sieci Komputerowe II Wyk ład 2 Plan Klient IPv4 Serwer IPv4 Pierwszy program Aplikacja w architekturze klient-serwer Realizacja protokołu echo Zasada działania: klient łączy się
Zaawansowana adresacja IPv4
Zaawansowana adresacja IPv4 LAN LAN... MAN... LAN Internet Zagadnienia: podział sieci na równe podsieci (RFC 950, 1985 r.) technologia VLSM (RFC 1009, 1987 r.) technologia CIDR (RFC 1517-1520, 1993 r.)
Sieci komputerowe. Tadeusz Kobus, Maciej Kokociński Instytut Informatyki, Politechnika Poznańska
Sieci komputerowe Tadeusz Kobus, Maciej Kokociński Instytut Informatyki, Politechnika Poznańska Adresacja IPv4 Sieci Komputerowe, T. Kobus, M. Kokociński 2 Sieci Komputerowe, T. Kobus, M. Kokociński 3
Na podstawie: Kirch O., Dawson T. 2000: LINUX podręcznik administratora sieci. Wydawnictwo RM, Warszawa. FILTROWANIE IP
FILTROWANIE IP mechanizm decydujący, które typy datagramów IP mają być odebrane, które odrzucone. Odrzucenie oznacza usunięcie, zignorowanie datagramów, tak jakby nie zostały w ogóle odebrane. funkcja
Zadania z sieci Rozwiązanie
Zadania z sieci Rozwiązanie Zadanie 1. Komputery połączone są w sieci, z wykorzystaniem routera zgodnie ze schematem przedstawionym poniżej a) Jak się nazywa ten typ połączenia komputerów? (topologia sieciowa)
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