dr Andrzej Bobyk
PROJEKTOWANIE I EKSPLOATACJA SIECI
Literatura:
„PC i sieci komputerowe”, Tomasz Zydorowicz, PLJ, W-wa 1993.
„Zarządzanie sieciami IP za pomocą routerów CISCO”, Scott Ballew, RM, W-wa 1998
„Administracja sieci TCP/IP”, RM, W-wa
„Tworzenie bezpiecznych sieci”, Merice Kareo, MIKOM, W-wa 2000.
Architektura sieci - w jaki sposób wszystkie elementy sieci ze sobą współpracują.
Media transmisyjne.
Fizyczna topologia sieci.
Pierwszym krokiem w projektowaniu sieci jest określenie celów:
Funkcjonalność sieci - czego od sieci oczekujemy, co powinna robić.
Niezawodność - jak dobrze powinna spełniać swoje funkcje.
Dostępność - gdzie i w jakim zakresie będzie dostępna, możliwość rozwoju, otwartość.
Elastyczność - jak łatwo będzie można sieć modyfikować w miarę wzrostu wymagań.
Koszt budowy oraz utrzymania i obsługi.
I. ARCHITEKRUTA SIECI
Każda dobrze zaprojektowana sieć składa się z 3 głównych komponentów:
rdzeń
punkty dystrybucyjne
punkty dostępowe
Rdzeń - struktura - najczęściej w postaci pierścienia, zapewniająca dużą szybkość i niezawodność.
System dystrybucyjny - do rdzenia dołączane są routery (ang. ścieżka) - ma za zadanie rozprowadzić strumień od rdzenia.
Router (komputer wyboru drogi) - jego zadaniem jest odpowiednie sterowanie strumieniami sieci.
Prędkość łączy. Przyjęto zasadę przy łączeniu podsieci (komputery blisko siebie) - 80% ruchu generowanego w sieci pozostaje wewnątrz sieci, a tylko 20% korzysta z dostępu na zewnątrz. Obecnie proporcje te zmieniły się.
„Napełnianie sieci zawartością” powoduje, że proporcje te zmieniają się na lepsze. Ideałem jest 50/50.
II. MEDIA TRANSMISYJNE
Projektując sieć należy dążyć do tego, aby zunifikować media sieci. Rodzaj media zależy od tego jaką prędkość chcemy uzyskać, jakie posiadamy fundusze i możliwości.
Grupy:
Media sieci rozległych WAN (sieci typu punkt - punkt).
Media sieci lokalnych LAN (łącza wielodostępowe pracujące na duże odległości).
Najczęściej stosowane media sieci lokalnej:
Sieć Ethernet - najczęściej realizowany za pomocą kabla koncentrycznego 50Ω lub skrętki nieekranowanej.
Sposób ten nazywamy „współdzielonym”, ponieważ panuje zasada „kto pierwszy ten lepszy” tzn. szybko można zająć sieć i inni nie mają do niej dostępu.
Pewnym wariantem jest Ethernet przełączany pracujący z szybkością 10 Mbit/s. Zastępuje on koncentrator przełącznicą tzw. Switch dzięki któremu sygnał biegnie tylko od nadawcy do odbiorcy, co uniemożliwia „podsłuchiwanie”. Zaletą jest również to, że należy wymieniać tylko koncentrator na switch. Wadą jego jest cena (ok. 3x droższy).
Fast Ethernet - przepływowość 100 Mbit/s. Wymaga wymiany kart sieciowych. Warunkiem jest odpowiedni koncentrator lub przełącznik.
Ograniczenia:
prędkość
ilość komputerów w sieci
odległość między poszczególnymi węzłami
Ethernet
Można zastosować wzmacniacz, który wydłuża odległość. Można zastosować, co najwyżej 2 wzmacniacze.
2.
H - koncentrator, HUB (ang. piasta)
Koncentratory pełnią również rolę wzmacniaczy i można połączyć ich 4. Tylko do 3 z tych 4 koncentratorów można podłączyć komputery.
Zasada 5 - 4 - 3 tzn. 500 metrów
4 huby
3 huby z podłączonymi końcówkami
Wszystkie te sieci mogą być łączone za pomocą medium światłowodowego, który pozwala „wydłużyć” sieć do wielu kilometrów.
Co zrobić, gdy chcemy „pomieszać” media np. skrętka + światłowód?
Stosuje się konwertery mediów, które potrafią przeprowadzić sygnał elektryczny na optyczny (i na odwrót).
ETHERNET GIGABITOWY - 1 Gbit/s przy większych odległościach stosuje się światłowód.
TOPOLOGIA PIERŚCIENIA
Pomiędzy poszczególnymi komputerami jest wymieniany tzw. Żeton (ang. token), który umożliwia danej stacji wysyłanie informacji. Technologię tą nazwa się TOKEN RING. Ma prędkość 4 Mb/s lub w wersji rozszerzonej 16 Mb/s.
Topologia ta zawiera 2 pierścienie:
główny
zapasowy
Oparte na światłowodach topologie pierścienia:
FDDI - 100 Mb/s
CDDI - sieć miedziana
Sieci komputerowe są sieciami z komutacją pakietów - informacja dzielona jest na porcje, które
niezależnie mogą „znajdować sobie drogę”.
SIEĆ TELEFONICZNA (PSTN)
Aby dane mogły przejść od aplikacji do aplikacji muszą przejść przez wiele warstw.
Model OSI (Open Systems Interconnection) został zaproponowany przez organizację ISO.
WARSTWY MODELU OSI/ISO
APLIKACJI - w warstwie tej pracują aplikacje korzystające z sieci, działają procesy sieciowe. (To co widzi bezpośrednio użytkownik.)
PREZENTACJI - określony jest sposób wymiany danych np. protokół FTP, SQL oraz skierowanie do odpowiednich aplikacji.
5. SESJI - pozwala powiązać sesję zalogowanego użytkownika do sesji pracy innego użytkownika.
TRANSPORTOWA - określa mechanizmy detekcji i korekcji błędów. Zadaniem tej warstwy jest stworzenie bezpiecznego protokołu transportu pomiędzy dwoma użytkownikami.
3. SIECIOWA - zarządzanie sieciowymi połączeniami wykorzystywanymi przez wyjście warstwy,
przekazywanie pakietów dalej.
2. ŁĄCZA DANYCH - zapewnia niezależne dostarczanie danych przez łącza fizyczne.
FIZYCZNA - określenie fizycznych parametrów łączy między dwoma systemami np. typ kabla (impedancja, przekrój), typ wtyczek itp., poziomy napięć, szybkość transmisji.
Router steruje strumieniem sieci.
Hub punkt zbiorczy dla sieci o topologii gwiazdy, niektóre huby posiadają zdolność do regenerowania sygnału.
ENKAPSULACJA (pakowanie, kapsułkowanie)
Przesyłane dane otrzymują nagłówek. Taki cały pakiet: dane + nagłówek. Dane przy przechodzeniu z jednej warstwy do drugiej otrzymują swoje nagłówki.
STOS PROTOKOŁÓW - warstwy tworzą stos protokołów (co dane znaczą).
Protokoły sieciowe:
ETHERNET. Protokół ten działa w warstwie łącza danych.
TCP/IP - działa w warstwie 3 i 4.
W warstwie sieciowej (internetu) mamy do czynienia z protokołem IP oraz ICMP (służy do kontroli pracy sieci). Niżej znajduje się protokół LLC.
Komunikacja za pomocą protokołów.
I. TCP
5. aplikacji - strumień informacji
4. transportu - dzielenie na segmenty
3. internetu - datagram
2. dostępu do sieci - ramki (komórki)
II. UDP
4. dzielenie na pakiety
3. datagramy
2. ramki (komórki)
Protokół ETHERNET
Protokół ten działa w warstwie łącza danych.
RAMKA SIECI ETHERNET
Każde urządzenie podłączone do sieci ethernet posiada własny 6 - bajtowy adres MAC np. 00:50:00:FE:20:7E.
Każdy interfejs sieciowy posiada unikalny adres MAC. Adresy te są przydzielone w sposób taki, że:
pierwsze trzy bajty kodują firmę produkującą kartę sieciową np.: 00:AA:00 - Intel; 00:08:20 - Sun
firma produkująca karty musi zapewnić każdej karcie unikalny adres (3 pozostałe bajty)
Każda ramka ethernetu posiada adresy nadawcy i odbiorcy.
Ramka w standardzie IEEE 802.3
Kod CRC - kontrola poprawności transmisji danych. Wyliczany jest na podstawie danych od adresu nadawcy. Jest wyliczany zarówno przy wysyłaniu jak i odbiorze.
Aby przełamać ograniczenia ethernetu cienkiego (opartego na kablu koncentrycznym) - dotyczące maksymalnej długości sieci (185 m) - stosuje się repeatery.
REPEATER WIELOPORTOWY (HUB)
Hub działa w warstwie fizycznej tzn. wzmacnia sygnały.
Repeater nie posiada własnego adresu MAC.
Ethernet działa ze współdzieleniem medium tzn. gdy jedna stacja w segmencie zaczyna nadawać pozostałe muszą milczeć.
Interfejs sieciowy można ustawić w trybie podsłuchiwania wszystkich informacji.
W sieci muszą być przekazywane pakiety broadcast (rozgłaszanie), tzn. takie, które trafią do wszystkich odbiorców, a jeden wie, że na taką usługę oczekuje i ją odbiera.
DHCD - protokół służący do nadawania komputerom adresów IP.
Zamiast repeatera można zastosować most (ang. bridge). Most działa w warstwie 2 internetu tzn. nie tylko wzmacnia sygnały elektryczne, ale analizuje ramki pod względem adresów nadawcy i odbiorcy. Most posiada własny adres MAC.
Most posiada tabelę hostów, w której zapisuje ich adresy.
SEGMENTY |
|
1 |
2 |
A |
C |
B |
|
Most “uczy się“ poprzez analizę adresów nadawcy tzn. analizuje adres i jeśli nie trzeba to nie przekazuje informacji do drugiego segmentu. Dzieli sieć na dwie logiczne sieci.
W ten sposób mamy lepsze wykorzystanie segmentów i brak możliwości podsłuchania.
Mikrosegmentacja - każdy segment posiada tylko jeden komputer.
MOST WIELOPORTOWY - SWITCH
Switch realizuje przełączany ethernet.
Switch posiada matrycę switchowania (przełączania) tzn. nie ma konkurencji mediów, jest pełne wykorzystanie mediów.
Np. C2900XL - posiada 24 porty 100Mb/s tzn. sumaryczna przepustowość 2,4Gb/s.
Mikrosegmentacja nie pozwala na podsłuchiwanie.
„Uczenie się adresów” nie dotyczy BROADCAST - zawsze do wszystkich.
Switch może pracować w dwóch trybach:
STORE - AND - FORWARD
Switch czeka do momentu nadejścia całej ramki; wtedy ją sprawdza i przekazuje do portu. Taka procedura potrzebna jest, gdy wymagana jest duża dokładność.
FAST FORWARD (FRAGMENT FREE)
Już przy nadejściu samego nagłówka switch decyduje, do którego portu przesłać ramkę. Stosuje się wtedy, gdy zależy na prędkości, a nie jakości.
W sieciach Novell, gdzie protokołem transmisji jest IPX, adres MAC jest jedną z części tego
protokołu (IPX).
Protokół IP
IP jest protokołem internetowym, znacznie bardziej rozpowszechnionym niż ethernet. Pozwala na lepsze administrowanie siecią.
Protokół IP ma strukturę wielowarstwową (składa się z wielu innych protokołów) - TCP/IP - zbiór protokołów.
W 1969 r. w USA chciano stworzyć sieć odporną na zakłócenia i uszkodzenia. Sieć ta nazywała się ARPANET. W 1975 r. sieć ta została przekształcona z eksperymentalnej na eksploatacyjną i wtedy weszły protokoły TCP/IP, co uznano za standard wojskowy.
1985 r. sieć wojskową przekształcono w internet dla systemu UNIX, a następnie Windows 3.11. Dopiero od Windows 95 TCP/IP jest w standardzie.
Do roku 1990 sieć ARPHANET była szkieletem sieci internet.
Standard TCP/IP jest powszechnie dostępny i bezpłatny, daje możliwość połączenia ze sobą różnych platform.
Jest niezależny od warstwy sprzętowej tzn. konkretnego protokołu niższego rzędu.
Posiada jednolity sposób adresowania. Adresy są przydzielane przez jedną oraganizację.
Telnet i FTP (protokołu nadrzędne TCP/IP) współpracują z nim.
Protokół TCP/IP
TCP/IP |
ISO/OSI |
|
aplikacji prezentacji sesji |
|
sesji transportowa |
|
sieciowa |
|
łącza danych |
warstwa fizyczna |
4. DOSTĘPU DO SIECI - określa sposób w jaki sposób bity są transmitowane do warstwy fizycznej.
Może to być warstwa internetu, token ring, FDDI, itd.
INTERNETU - działają w niej protokoły IP (przenoszący informacje użytkownika) i ICMP
(informacji kontrolnych).
2. TRANSPORTOWA - protokoły TCP, UDP - na bazie protokołu IP.
1. APLIKACJI - protokoły Telnet, FTP, HTTP.
Na styku warstwy dostępu do sieci i internetu działa protokół ARP - komputer zna tylko swój adres sprzętowy MAC, chce się skomunikować z innym, dlatego wysyła ramkę do wszystkich komputerów i pyta o adres komputera, który posiada dany adres IP.
Na tym poziomie działają też inne protokoły:
BOOTP - pozwala nadać adres IP komputerowi oraz uruchomić stację bezdyskową
DHCP - pozwala podawać też inne parametry konfiguracyjne
Cechy protokołu IP
DATAGRAM - jednostka informacji wysyłana na poziomie protokołu IP.
|
TCP |
UDP |
warstwa aplikacji |
strumień informacji |
wiadomość |
warstwa transportowa |
segmenty |
pakiety |
warstwa internetu |
datagram |
datagram |
warstwa dostępu do sieci |
ramka (komórki ATM) |
ramka (komórki ATM) |
Zadania protokołu internetowego IP:
definiuje datagram
definiuje schemat adresowania dostępny w internecie
zajmuje się przesyłaniem informacji między warstwą transportową i dostępu do sieci (i na odwrót)
routowanie informacji (sieć IP jest siecią z komutacją pakietów) wybieranie drogi przebiegu informacji
fragmentacja datagramów, a następnie ich defragmentacja
Cechy protokołu IP:
jest to protokół bezpołączeniowy, tzn. że między nadawcą a odbiorcą informacji nie jest wysyłana żadna informacja kontrolna przed wysłaniem informacji głównej
jest to protokół niepewny - nieprzewiduje usług wykrywania i korekcji błędów, co nie oznacza, że nie można polegać na jego wynikach - po prostu nie sprawdza czy informacje zostały prawidłowo odebrane
DATAGRAM (pakiet IP) tzn. struktura pakietu IP.
maksymalna długość nie może być większa niż 64 KB
długość nagłówka , 5 lub 6, 4 - bajtowych słów (20 lub 24 bajty)
version - wersja protokołu (IPv4, IPv6, IPng, IPsec)
IHL - długość nagłówka
TOS - atrybuty przesyłania danych
Total lenght - całkowita długość datagramu (w bajtach)
Identification - pozwala przypisać datagram do odpowiedniego strumienia danych
Flags - znaczniki (D, M)
Fragment offset - cała wiadomość dzielona jest na fragmenty, pozycja ta pokazuje, w które miejsce należy ten fragment włożyć (przesunięcie informacji)
TTL - czas życia, na początku przyjmuje wartość 30 i przy przejściu przez każdy router odejmowana jest wartość 1, gdy dojedzie do 0 datagram jest usuwany (nie krąży po sieci)
Protocol - numer protokołu wyższej warstwy
Header checksum - suma kontrolna nagłówka
Source address - adres źródła
Destination address - adres docelowy
Adres IP
Adres IP składa się z 32 bitów i tylko dla wygody zapisujemy go za pomocą ciągu 4 liczb (0 - 255) np. 192.168.0.1
Internet jest siecią (małych) sieci, które muszą też mieć swój adres.
Dlatego podzielono ją na klasy:
A.
pierwszym bitem jest zero
B.
Adresy od 128 - 191. 256 • 164 sieci, każda po 65534 hosty.
C.
Adresy 128 - 233.
D.
Adresy od 234 - 255. 31 • 65536 sieci, każda po 254 hosty.
Nie może być sieci o adresie 127 ponieważ byłyby to sieci broadcast (same jedynki), dlatego jest to adres pętli zwrotnej tzn. naszego komputera.
Adresy multicastowe
Wysłana do routera informacja multicastowa zostaje rozdzielona na unicast.
Adresy te (1111…) nie są wykorzystywane w sieci.
Wyjątki:
adresy muliticastowe - komputery oprócz swego adresu IP posiadają adres multicastowy, określający przynależność do tej klasy (D).
adresy prywatne, których żaden router nie przepuści do internetu (np. IP Policji)
są one wydzielone z każdej klasy:
A: 10.0.0.0 - 10.255.255.255
B: 172.16.0.0 - 172.31.255.255
C: 192.168.0.0 - 192.168.255.255
Rutowanie bezklasowe CIDR (Classless Inter - Domain Routing - bezklasowe rutowanie międzynarodowe)
Podziała adresu na adres sieci i adres hosta; nie musi przebiegać na granicy bajta.
Przykład.
MASKA SIECIOWA - składa się z 32 bitów tzn. ciąg jedynek dopełnionych zerami.
Dzięki temu przydział adresów może odbywać się w sposób bardziej dynamiczny, np. mamy sieć, którą dzielimy na podsieci:
192.168.0.0/20 — 192.168.0.0/22
192.168.1.0/22
192.168.2.0/22
192.168.3.0/22
Istnieją dwa specjalne adresy międzynarodowe dla hostów.
Adresy multicastowe.
Ruter kieruje ruchem pakietów; komputer oprócz swego własnego adresu IP musi podać adres grupy multicastowej.
Adresy grupy
127.0.0.0/8 adres pętli zwrotnej
0.0.0.0/8
Rutowanie datagramów
Dzięki temu, że internet jest siecią z komutacja pakietów nie jest potrzebna znajomość całej drogi.
Rutery pracują w warstwie trzeciej - internetu.
warstwa 1 - huby, wzmacniacze fizyczna
warstwa 2 - switch, bridge dostępu MAC
warstwa 3 - rutery internetu IP
Protokół IP - pole Fragment Offset dzieli datagram na kawałki i potem je składa.
Protokół ICMP (Internet Contra Message Protocol - protokół komunikatów kontrolnych)
Sam protokół IP nie zawiera kontroli, temu służy protokół ICMP, który posiada cztery funkcje:
Steruje przepływem danych - jeżeli następuje zapełnienie bufora komputera, wówczas komputer może wysłać protokół zwrotny Source Quency, który zwalnia tempo.
Wykrywanie nieosiągalnych miejsc przeznaczenia - komunikat Destination Unreachable (zaprzestanie wysyłania).
Przekierowywanie ścieżek - Redirect.
Sprawdzanie zdalnego hosta - ICMP Echo wysyła komunikat i otrzymuje zwrotny ICMP Reply np:
ping
traceroute - średnie ścieżki drogi pakietu do hosta docelowego
Warstwa transportowa
W warstwie transportowej działają dwa protokoły:
Protokół UDP - bezpołączeniowy, nie dysponuje mechanizmami kontroli i retransmisji.
Stosuje się go ponieważ na komputerze działa wiele usług (aplikacji), które wysyłają różne datagramy, gdyby nie było sposobu oznaczania rodzajów informacji, tzn. gdzie mają one dotrzeć, występowałoby wiele błędów.
Do tego celu służą PORTY, które są przypisane poszczególnym aplikacjom (adres IP jest taki sam, ale porty są inne), np.:
aplikacja telnet - port 23
protokół POP2 - port 105
protokół POP3 - port 110
protokół IMAP - port 143
Takie aplikacje nazywane są GNIAZDAMI - SOCKET.
****
W nagłówku IP jest pole: nr protokołu aplikacji np. w UNIX w pliku /etc/protocols są zapisane numery protokołów:
IP 0 TCP 6
ICMP 1 UDP 17
GGP 3
Na podstawie tego, dane są przekazywane do odpowiednich funkcji.
Porty → /etc/services
ftp 21/TCP (port 21, protokół TCP)
ftp - data 20/TCP
telnet 23/TCP
smtp 25/TCP
echo 7/UDP
echo 7/TCP
Multipleksowanie - dostarczanie danych do odpowiednich systemów i portów aplikacji. Wszystkie te informacje są zapisane w słowie trzecim nagłówka.
****
Format pakietu UDP
Protokół UDP wykorzystuje się, gdy kontrola poprawności jest niepotrzebna, gdyż zapewniona jest przez warstwę wyższą lub są to dane „mało ważne”.
Protokół TCP - protokół połączeniowy; zapewnia niezawodność tzn. weryfikuje poprawność przesyłanych danych; działa na strumieniach bajtów.
TCP stosuje trójpoziomowe potwierdzenie - Handshacke.
Niezawodność zapewnia mechanizm PAR (pozytywne potwierdzenie z retransmisją)
Nagłówek TCP
W polu Flagi są 3 bity: ACK, SYN, FIN
Trójpoziomowe potwierdzenie
Wartość w polu „nr sekwencji” oznacza kolejność danych w jakiej należy je ustawić.
ACK - potwierdzenie otrzymania informacji
SYN - synchronizacja
FIN - zakończenie transmisji
ISN - początkowy nr sekwencji
Zakładamy, że każdy segment posiada 1000 bajtów i początkowy nr sekwencji = 0 (ISN).
Bufor - obszar pamięci o ustalonej długości; przyjmujący dane.
Pole „okno” informuje, jaka jest długość bufora, czyli ile może jeszcze przyjąć. Liczy się go od ostatniego potwierdzonego bajtu.
Okno w miarę otrzymywania informacji potwierdzenia segmentów „przesuwa się”.
Projektowanie i eksploatacja sieci
9
Projektowanie i eksploatacja sieci
17