materialy, Studia PŚK informatyka, Semestr 4, sieci, kolos sieci, SK, sieci komputerowe


Unicast - rodzaj transmisji, w której dokładnie jeden punkt(komputer) wysyła pakiety do dokładnie jednego punktu(odbiorcy). Istnieje tylko jeden nadawca i jeden odbiorca. Wszystkie karty Ethernet posiadają zaimplementowany ten rodzaj transmisji.

Multicast - to sposób dystrybucji informacji, dla którego liczba odbiorców może być dowolna. Odbiorcy są widziani dla nadawcy, jako pojedynczy grupowy odbiorca dostępny pod jednym adresem dla danej grupy multicastowej. W transmisji multicastowej po każdym łączu sieciowym przesyłana informacja jest jednokrotnie, podczas gdy w unicastowej dystrybucji informacji do n odbiorców po niektórych łączach biorących udział w transmisji komunikat może być w najgorszym razie przesyłany nawet n razy.

Broadcast - rozgłoszeni owy tryb transmisji danych polegający na wysyłaniu przez jeden port pakietów, które powinny być odebrane przez wszystkie pozostałe porty przyłączone do danej sieci.

UDP (User Datagram Protocol) - jeden z podstawowych protokołów internetowych służący do komunikacji, datagramowej. Jest to protokół bezpołączeniowy nie ma narzutu na nawiązywanie połączenia i śledzenia sesji. Nie ma też mechanizmów kontroli przepływu i retransmisji(w przypadku zerwania połączenia).

Korzyści:

UDP często używany jest w takich zastosowaniach jak: wideokonferencje, strumienie dźwięku w internecie i gry sieciowe(gdzie dane muszą być przesyłane możliwie szybko)

Datagram - Podstawowa jednostka przesyłanych danych nazwana jest datagramem. Datagram podzielony jest na nagłówek i dane. Nagłówek datagramu zawiera adres nadawcy i odbiorcy oraz pole typu, które identyfikuje zawartość datagramu.

TCP - strumieniowy protokół informacji między dwoma komputerami. Jest protokołem działającym w trybie klient - serwer. Serwer oczekuje na nawiązanie połączenia na określonym porcie. Klient inicjuje połączenie do serwera. W przeciwieństwie do UDP, TCP gwarantuje wyższym warstwą komunikacyjnym dostarczenie wszystkich pakietów w całości, z zachowaniem kolejności i bez duplikatów. Zapewnia to wiarygodne połączenie kosztem większego narzutu w postaci nagłówka i większej liczby przesyłanych pakietów.

Winsock

By móc wykorzystać funkcje winsock należy dołączyć do programu jeden z nagłówków <winsock2.h> lub <winsock.h> oraz dołączyć biblioteki „ws2_32” lub „wsock32”.

Opis struktur:

- hostent przechowuje informacje na temat hosta(nazwa, adres IP itp)

Informacje te można uzyskać przy pomocy funkcji gethostbyname() i gethostbyaddr().

- sockaddr_in przechowuje informacje o sokecie np. na jakim porcie nasłuchuje lub nadaje adres ip do jakiego jest przypisany itp

Struktura programu realizująca komunikację datagramową (UDP)

Nadawca:

1 Inicjalizacja WinSock'a WSAStartup()

2Utworzenie gniazda SOCKET nadawca = socket()

3 Pobranie adresu IP, numeru portu odbiorcy i ustawienie tymi danymi pól struktury `sockaddr_in' Przykład:

struct sockaddr_in addr;

addr.sin_family = AF_INET;

addr.sin_port = htons(4000);

addr.sin_addr.s_addr = inet_addr("127.0.0.1");

4 wysłanie wiadomości do odbiorcy Przykład:

char buffor[256] = "wiadomosc ";

int wyslano = sendto(klient, buffor, strlen(buffor), 0, (struct sockaddr *)&addr, sizeof(struct sockaddr));

5 zamknięcie gniazda - closesocket(nadawca)

6 zwolnienie WinSock'a WSACleanup();

Odbiorca:

1 Inicjalizacja WinSock'a WSAStartup()

2Utworzenie gniazda SOCKET odbiorca= socket()

3 Pobranie adresu IP, numeru portu na którym ma nasłuchiwać Przykład:

struct sockaddr_in myAddr;

myAddr.sin_family = AF_INET;

myAddr.sin_port = htons(4000);

myAddr.sin_addr.s_addr = inet_addr("127.0.0.1");

4 Przypisanie portu i adresu do socketu na którym ma nasłuchiwać -bind() Przykład

bind(odbiorca, (struct sockaddr *)&myAddr, sizeof(struct sockaddr)

5 odbiór danych recvfrom()

6 zamknięcie gniazda - closesocket(odbiorca)

7 zwolnienie WinSock'a WSACleanup();

Struktura programu realizująca komunikację połączeniową (TCP)

Nadawca:

1 Inicjalizacja WinSock'a WSAStartup()

2Utworzenie gniazda SOCKET nadawca= socket()

3 Pobranie adresu IP, numeru portu

4 Ustawienie danymi z pkt 3 struktury `sockaddr_in' struct sockaddr_in myAddr

5 Nawiązanie połączenia z odbiorcą connect(nadawca, (struct sockaddr *)&myAddr, sizeof(myAddr))

6 Wysłanie wiadomości send()

7 zamknięcie gniazda - closesocket(odbiorca)

8 zwolnienie WinSock'a WSACleanup();

Odbiorca:

1 Inicjalizacja WinSock'a WSAStartup()

2Utworzenie gniazda SOCKET odbiorca= socket()

3 Pobranie adresu IP, numeru portu na którym ma nasłuchiwać

4 Ustawienie danymi z pkt 3 struktury `sockaddr_in'

5 Przypisanie portu i adresu do socketu na którym ma nasłuchiwać -bind()

6 Nasłuchiwanie nadchodzącego połączenia listen(odbiorca, 1);

7 Akceptacja nawiązanego połączenia SOCKET klient = accept()

8 Odbiór danych recv() Przykład

char buffor[256];

recv(klient, buffor, 255, 0);

9 zamknięcie gniazda - closesocket(odbiorca)

10 zwolnienie WinSock'a WSACleanup();

NETBIOS

Struktura NCB:

typedef struct _NCB {

UCHAR ncb_command;

UCHAR ncb_retcode;

UCHAR ncb_lsn;

UCHAR ncb_num;

PUCHAR ncb_buffer;

WORD ncb_length;

UCHAR ncb_callname[NCBNAMSZ];

UCHAR ncb_name[NCBNAMSZ];

UCHAR ncb_rto;

UCHAR ncb_sto;

void (CALLBACK *ncb_post)(struct _NCB*);

UCHAR ncb_lana_num;

UCHAR ncb_cmd_cplt;

UCHAR ncb_reserve[10];

HANDLE ncb_event;

}

Opis funkcji:

Wykonanie określonej funkcji NetBios polega na odpowiednim ustawieniu określonych pól struktury _NCB.

Funkcja

Zmiany w NCB

Opis działania

RESET

ncb_command = NCBADDNAME

ncb_lana_num = (nr karty sieciowej)

Resetowanie węzła net bios

Wykonywane przed rozpoczęciem pracy z netbios

ADD NAME

ncb_command = NCBADDNAME

ncb_name = (nazwa wezla)

ncb_lana_num = (nr karty sieciowej)

Dodanie nazwy indywidualnej. Po zarejestrowaniu nazwy net bios nadaje jej unikalny id

ADD GROUP NAME

ncb_command = NCBADDGRNAME

ncb_name = (nazwa grupy)

ncb_lana_num = (nr karty sieciowej)

Dodanie nazwy grupowej. Po zarejestrowaniu nazwy net bios nadaje jej unikalny id

DELETE NAME

ncb_command = NCBDELNAME

ncb_name = (nazwa do usunięcia)

ncb_lana_num = (nr karty sieciowej)

Usunięcie określonej nazwy

SENDBROADCASTDATAGRAM

ncb_command = NCBDGSENDBC

ncb_lana_num = (nr karty sieciowej)

ncb_buffer = (wiadomość)

ncb_length = (wielkość wiadomośći)

Wysłanie wiadomości za pomocą datagramu broadcastowego

RECEIVEBROADCASTDATAGRAM

ncb_command = NCBDGRECVBC

ncb_lana_num = (nr karty sieciowej)

ncb_buffer = (bufor odbioru wiadomości)

ncb_length = (wielkość bufora)

Odbiór wiadomości wysłanej za pomocą datagramu broatcastowego

SEND DATAGRAM

ncb_command = NCBDGSEND

ncb_lana_num = (nr karty sieciowej)

ncb_buffer = (bufor wysyłania wiadomości)

ncb_length = (wielkość bufora)

ncb_callname = (nazwa unikatowa na ktorą wysyłamy)

Wysłanie datagramu do konkretnej nazwy

RECV DATAGRAM

ncb_command = NCBDGRECV

ncb_lana_num = (nr karty sieciowej)

ncb_buffer = (bufor odbioru wiadomości)

ncb_length = (wielkość bufora)

Odebranie datagramu specyficznego

LISTEN

ncb_command = NCBLISTEN

ncb_lana_num = (nr karty sieciowej)

ncb_name=(nazwa lokalna na której nasłuchujemy)

ncb_ callname=(nazwa z której połączenia się spodziewamy)

Nasłuchuje na połączenie na nazwie lokalnej ncb_name, ncb_callname może być równe „*” wtedy połączenie zostanie przyjęte od każdej nazwy

CALL

ncb_command = NCBCALL

ncb_lana_num = (nr karty sieciowej)

ncb_name=(nazwa lokalna)

ncb_ callname=(nazwa do której się łączymy)

Podłącza się do nazwy podanej jako parametr ncb_callname.

SEND

ncb_command = NCBDGSEND

ncb_lana_num = (nr karty sieciowej)

ncb_buffer = (bufor wysyłania wiadomości)

ncb_length = (wielkość bufora)

ncb_lsn = (numer połączenia)

Wysłanie wiadomości poprzez połączenie identyfikowane przez ncb_lsn. (Ustawione przez CALL albo LISTEN).

RECV

ncb_command = NCBRECV

ncb_lana_num = (nr karty sieciowej)

ncb_buffer = (bufor odbioru wiadomości)

ncb_length = (wielkość bufora)

ncb_lsn = (numer połączenia)

Odebranie wiadomości poprzez połączenie identyfikowane przez ncb_lsn.(Ustawione przez CALL albo LISTEN).

Sekwencja czynności podczas transmisji bezpołączeniowej

Klient

Serwer

  1. RESET odbiornika

  2. ADD NAME - dodanie nazwy unikatowej

  3. NCB RECV BROADCAST DATAGRAM/ NCB RECV DATAGRAM - pobranie datagramu ogólno dostępnego (broadcast) albo specyficznego (unicast)

  4. DELETE NAME - usunięcie nazwy unikatowej

  1. RESET odbiornika

  2. ADD NAME - dodanie nazwy unikatowej

  3. NCB SEND BROADCAST DATAGRAM/NCB SEND DATAGRAM - wysłanie datagramu ogólnego albo specyficznego

  4. DELETE NAME - usunięcie nazwy unikatowej

Sekwencja czynności podczas transmisji połączeniowej (sesyjnej)

Klient

Serwer

  1. RESET odbiornika

  2. ADD NAME - dodanie nazwy unikatowej

  3. NCB CALL - nawiązanie połączenia z inną nazwą unikatową

  4. NCB RECV - pobranie wiadomości od podłączonego programu

  5. NCB HANGUP - zakończenie sesji

  6. DELETE NAME - usunięcie nazwy unikatowej

  1. RESET odbiornika

  2. ADD NAME - dodanie nazwy unikatowej

  3. NCB LISTEN - nasłuchiwanie na połączenie z konkretnej nazwy lub z dowolnej (ncb_callname = nazwa albo *)

  4. NCB SEND - wysłanie wiadomości do podłączonego programu

  5. NCB HANGUP - zakończenie sesji

  6. DELETE NAME - usunięcie nazwy unikatowej



Wyszukiwarka

Podobne podstrony:
tomaszewski2, Studia PŚK informatyka, Semestr 4, Sieci komputerowe, sieci
sieci ściąga, Studia PŚK informatyka, Semestr 4, sieci, kolos sieci, SK, sieci komputerowe
Pytania-sieci, Studia PŚK informatyka, Semestr 4, sieci, kolos sieci, SK, sieci komputerowe, gawlik,
Sieci komputerowe, Studia PŚK informatyka, Semestr 4, sieci, kolos sieci, SK, sieci komputerowe, gaw
http & krypto, Studia PŚK informatyka, Semestr 4, sieci, kolos sieci, SK, sieci komputerowe, Sieci p
ncb, Studia PŚK informatyka, Semestr 4, sieci, kolos sieci, SK, kolos sieci
Sieci komputerowe, Studia PŚK informatyka, Semestr 4, sieci, kolos sieci, SK, sieci komputerowe, sie
Zestaw 3, Studia PŚK informatyka, Semestr 4, sieci, kolos sieci, SK, sieci komputerowe, gawlik, Kolo
Sieci, Studia PŚK informatyka, Semestr 4, SK kolos
Netbios, Studia PŚK informatyka, Semestr 4, SK kolos
dhcp, Studia PŚK informatyka, Semestr 4, SK kolos
NCBb, Studia PŚK informatyka, Semestr 4, SK kolos
siecii, Studia PŚK informatyka, Semestr 4, SK kolos
WinSock-PL, Studia PŚK informatyka, Semestr 4, SK kolos
Sockety, Studia PŚK informatyka, Semestr 4, SK kolos
ssciaga, Studia PŚK informatyka, Semestr 4, Bazy Danych 2, Bazy Danych Zaliczenie Wykladu, Bazy Dany
Si lab1, Studia PŚK informatyka, Semestr 5, semestr 5, SI 2, Sprawozdanie lab1
sc, Studia PŚK informatyka, semestr 2, archtektura
G312A-K04-P5, Studia PŚK informatyka, Semestr 5, semestr 5, SI 2, Sprawozdanie lab5

więcej podobnych podstron