Ethernet jest Siecia z magistrala o szybkości rozsylania danych 10Mb/s z semantyka przenoszenia przy uzyciu dostępnych możliwości i rozproszoną kontrolą dostępu. Jest to sieć z magistralą gdyż wszystkie komputery wykorzystuja wspolne ten sam kanał komunikacyjny.
Kontrola dostępu w Ethernecie jest rozproszona gdyz inaczej niż w niektórych innych technikach
,nie ma tu centralnego osrodka przyznającego dostep do eteru.
Wykorzystywany jest dostep wielokrotny z wykrywaniem fali nosnej i wykrywaniem kolizji (CSMA/CD).
Wiele maszyn może korzystac a kazda maszyna sprawdza czy ether jest wolny wykrywając obecności fali nosnej.
Czas trwania transmisji jest ograniczony (określony jest maksymalny rozmiar pakietu) sprzet musi zapewniac czas jałowy aby każdy miał szanse przesłania czegos.
Ethernet w razie kolizji wydłuz czas oczekiwania wykładniczo w razie kolizji.
Ethernet wykorzystuje 48 bitowe adresy
Ramki Ethernetu maja zmienna długosc ale nie mogą być ktotsze niż 64 oktety ani dłuższe niż 1518(nagłówek,dane i CRC)
Preambuła-8 oktetów
Adres odbiorcy- 6 oktetow
Adres nadawcy- 6 oktetów
Typ ramki- 2 oktety
Dane ramki-64-1500
CRC- 4 oktety (32 bity)
adres IP-32 bitowa liczba całkowita
klasa A -ponad 65 535 maszyn, 7bitow adres sieci, 24 adres maszyny
0.1.0.0-126.0.0.0
klasa B-(srednia)-od 256 maszyn do 65 535 14 bitow identyfikator sieci a 16 identyfikator. Maszyny 126.0.0.0-191.255.0.0
klasa C-do 256 maszyn 21 bitow identyfikator sieci 8 bitow identyfikator maszyny.
192.0.1.0-223.255.255.0
Adres IP nie okresla konkretnego komputera ale przesyłacze do sieci
ISO
ISO -7 warstw
1-(połaczenie za pomoca fizycznego sprzętu
2-Łącze (interfejs sprzętowy)
3-Siec
4-Transport
5-Sesja
6-Reprezentacja danych
7-Programy uzytkowe
SOCKETY
Gniazo= socket ( rodzina protokołów , typ komunikacji, protocol)
gniazdo = socket( AF_INET, SOCK_STREAM, IPPROTO_TCP);-----tworzenie
bind( socket, localaddr , addrlen)
kod = bind( gniazdo, (SOCKADDR*) &addr_IN, sizeof(addr_IN));------ nazwanie
kod = listen(gniazdo, 4);----nasluch
gniazdo_0 = accept( gniazdo, NULL, NULL );
wynik = send(gniazdo_0, bufor_odb, (int)strlen(bufor_odb), 0); -----wysylka
wynik = recv(gniazdo_0, bufor_wys, wielkosc_bufora_odb, 0);-----odbiór
NETBIOS - nbc (Network Control Block)
typedef struct _NCB { // 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 (*ncb_post) (struct _NCB *);
UCHAR ncb_lana_num;
UCHAR ncb_cmd_cplt;
UCHAR ncb_reserve[10];
HANDLE ncb_event;
} NCB;
ADD_NAME
UCHAR _ncbAddName(NCB *blok,UCHAR *uname) {
blok->ncb_command = NCBADDNAME;
blok->ncb_lana_num = 3;
strcpy(blok->ncb_name, uname);
Netbios(blok);
return blok->ncb_retcode;
}
(RECEIVEBROADCASTDATAGRAM)
UCHAR komunikat[BUFSIZ];
UCHAR _ncbSendBroad(NCB *blok) {
blok->ncb_command = NCBDGRECVBC;
blok->ncb_buffer = &komunikat;
blok->ncb_length = sizeof(komunikat);
blok->ncb_lana_num = 3;
blok->ncb_num = numer;
Netbios(blok);
return blok->ncb_retcode;
}
(SENDBROADCASTDATAGRAM)
=NCBDGSENDBC;*
Jeszcze tam było multicastowe ale nie wiem jak to wyglada !!!!!!
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.
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).
Komendy kontroli dostępu:
FTP Protokół niezawodnego przesyłania plików za pomocą prostych komend tekstowych.
Komendy kontroli dostępu:
USER NAME (USER) - logowanie |
PASSWORD (PASS) - hasło |
ACCOUNT (ACCT) - konto |
CHANGE WORKING DIRECTORY (CWD) - zmiana folderu |
CHANGE TO PARENT DIRECTORY (CDUP) - zmień folder na nadrzędny |
STRUCTURE MOUNT (SMNT) - montowanie struktury |
REINITIALIZE (REIN) - reinicjalizacja |
LOGOUT (QUIT) - wylogowanie |
Komendy transferu:
Komendy usług:
HTTP
OPTIONS
Żądanie określenia możliwości serwera (podanych w nagłówku żądania)
● GET
Pobranie wskazanego zasobu
● HEAD
Pobranie tylko nagłówka z meta-informacjami strony WWW
● POST
Przesłanie danych na serwer do podanego zasobu
● PUT
Przesłanie wskazanych danych na serwer
● DELETE
Usunięcie wskazanego zasobu
● TRACE
Odesłania żądania do nadawcy (diagnostyka połączenia)
● CONNECT
Żądanie tunelowania połączenia ze wskazanym Proxy
kod Opis
100 Continue Serwer wykonuje żądanie,klient może wysyłać kolejne żądania
200 OK Żądanie wykonane prawidłowo
301 Moved Permanently Żądany zasób znajduje się pod innym adresem, konieczne
podanie nowego URI
400 Bad Request Nieznane żądanie (błąd syntaktyczny)
401 Unauthorized Odmowa dostępu do zasobu, z powodu błędnej autoryzacji
404 Not Found Nie ma takiego zasobu
500 Internaln Server Error Serwer napotkał niespodziewany błąd wewnętrzny
503 Service Unavailable Serwer jest zbyt obciążony
SMTP -Simple Mail Transfer Protocol (port 25) - jest protokółem TCP/IP obsługującym przesyłanie wiadomości z poczty elektronicznej. Gdy wiadomość e-mail dociera do serwera SMTP, zostaje umieszczona w buforze. Serwer SMTP co pewien czas sprawdza, czy sa wiadomości do wysłania. Proces przesyłania wiadomości przebiega następująco :
1) Serwer SMTP nawiązuje połączenie TCP z serwerem docelowym, czekając na odpowiedz.
2) Jeśli serwer docelowy jest gotowy, serwer SMTP wysyła do niego polecenie Helo. W odpowiedzi na nie serwer docelowy zwraca swoja nazwę domeny. Serwer SMTP używa tej nazwy do zweryfikowania, czy nawiązał połączenie
z właściwym serwerem docelowym.
3. Serwer SMTP rozpoczyna transakcje wiadomości przez wysłanie polecenia MAIL
do serwera docelowego
4. Serwer SMTP wysyła teraz polecenie DATA, które powiadamia serwer docelowy
o następującej po nim wiadomości.
5. Serwer SMTP za pomocą funkcji send wysyła wiadomość do jednego lub kilku
adresatów. Funkcja send przyjmuje adres poczty elektronicznej i wiadomość
jako swoje argumenty. Serwer docelowy potwierdza otrzymanie wiadomości
komunikatem OK (albo w razie problemów wysyła komunikat o błędzie)
do serwera SMTP.
SMTP opiera sie na dostawach dwupunktowych (end-to-end delivery), w których
łączy sie z serwerem docelowym w celu przesłania wiadomości.
IPv6 roznice w porównaniu z 4
SMTP -Simple Mail Transfer Protocol (port 25) - jest protokółem TCP/IP obsługującym przesyłanie wiadomości z poczty elektronicznej. Gdy wiadomość e-mail dociera do serwera SMTP, zostaje umieszczona w buforze. Serwer SMTP co pewien czas sprawdza, czy sa wiadomości do wysłania. Proces przesyłania wiadomości przebiega następująco :
1) Serwer SMTP nawiązuje połączenie TCP z serwerem docelowym, czekając na odpowiedz.
2) Jeśli serwer docelowy jest gotowy, serwer SMTP wysyła do niego polecenie Helo. W odpowiedzi na nie serwer docelowy zwraca swoja nazwę domeny. Serwer SMTP używa tej nazwy do zweryfikowania, czy nawiązał połączenie
z właściwym serwerem docelowym.
3. Serwer SMTP rozpoczyna transakcje wiadomości przez wysłanie polecenia MAIL
do serwera docelowego
4. Serwer SMTP wysyła teraz polecenie DATA, które powiadamia serwer docelowy
o następującej po nim wiadomości.
5. Serwer SMTP za pomocą funkcji send wysyła wiadomość do jednego lub kilku
adresatów. Funkcja send przyjmuje adres poczty elektronicznej i wiadomość
jako swoje argumenty. Serwer docelowy potwierdza otrzymanie wiadomości
komunikatem OK (albo w razie problemów wysyła komunikat o błędzie)
do serwera SMTP.
SMTP opiera sie na dostawach dwupunktowych (end-to-end delivery), w których
łączy sie z serwerem docelowym w celu przesłania wiadomości.
POP 3
Post Office Protocol jest protokołem internetowym, służącym do przesyłania wiadomości poczty elektronicznej z serwera POP do skrzynki pocztowej użytkownika w lokalnym komputerze.
Aby przeslac wiadomosci z serwera POP do lokalnej skrzynki pocztowej, musi zostac
nawiazana sesja POP, w nastepujacy sposób:
1. Klient POP nawiazuje polaczenie TCP z serwerem POP.
2. Po nawiazaniu polaczenia serwer POP wysyla komunikat do klienta POP. W tej
chwili sesja wchodzi w stan uwierzytelniania. W tym stanie klient musi podac
nazwe uzytkownika i haslo, aby uwierzytelnic sie w serwerze POP.
3. Serwer POP uwierzytelnia klienta, jesli nazwa uzytkownika i haslo sa poprawne.
Sesja wchodzi w stan transakcji. Nastepnie klient wysyla polecenia do serwera
POP, aby odebrac wiadomosc e-mail.
4. Po przeniesieniu wiadomosci do skrzynki pocztowej w lokalnym komputerze,
klient wysyla polecenie QUIT konczace sesje. W tym momencie sesja wchodzi
w stan aktualizacji.
5. Wiadomosc e-mail dociera do skrzynki pocztowej w lokalnym komputerze,
skad moze zostac odczytana przez uzytkownika.
Różnice między protokołem IPv4 a IPv6
Token Ring
Topologia Token Ring stosuje w komunikacji metodę dostępu z przekazywaniem żetonu.
W topologii pierścienia komputery przyłączone są do pojedynczej pętli kabla.
W przeciwieństwie do topologii magistrali, w topologii pierścienia z przekazywaniem
żetonu nie występuje konieczność stosowania terminatorów na końcach kabla. Każdy
komputer jest połączony z sąsiadami po dwóch stronach, jak na rysunku 3.12. Sygnały
podróżują po pętli tylko w jednym kierunku, przechodząc kolejno przez każdy komputer.
Każdy z komputerów posiada odbiornik i nadajnik, i każdy pełni funkcje regeneratora
wzmacniającego sygnał przekazywany do następnego komputera. Ponieważ sygnał
jest regenerowany w każdym komputerze, jego stopień zniekształcenia jest niski. Ponieważ jednak awaria jednego komputera w topologii pierścienia może spowodować
awarie całej sieci, fizyczna topologia pierścienia jest używana bardzo rzadko. Najczęstszym zastosowaniem pierścienia są topologie logiczne.
Siec o topologii pierścienia z przekazywaniem żetonu ma następujące zalety:
t Nawet przy dużym obciążeniu sieci, jej wydajność może być zbliżona do 100%.
t Wszystkie komputery maja równe szanse dostępu do sieci.
Ta siec ma tez wady:
t Awaria jednego komputera w pierścieniu wpływa na cala siec.
t Znajdowanie problemów w sieci token ring jest trudne.
t Operacja dodawania lub usuwania komputera powoduje przerwę w działaniu sieci.