1
Organizacja i architektura
sieci komputerowej
Podsumowanie
Topologie sieci
Adresowanie
Komunikacja między procesami
Multipleksacja statystyczna
Protokoły i architektura sieci
Parametry wydajności
2
Wstęp
• Sieć stanowi kluczowy składnik współczesnych
systemów obliczeniowych (computing systems).
• Rozważając system obliczeniowy jako zbiór
stacji roboczych i serwerów to sieć komputerowa
stanowi magistralę takiej konfiguracji.
• Głównym zadaniem sieci cyfrowych jest
współdzielenie zasobów komputerowych w
możliwie:
– najprostszy,
– najszybszy,
– najtańszy sposób.
3
Sieć komputerowa
• Sieć komputerowa to grupa komputerów stanowiących elementy
końcowe i urządzeń pośredniczących połączonych ze sobą w celu
wymiany danych lub współdzielenia zasobów.
• Sieć tworzy zespół urządzeń transmisyjnych:
– karta sieciowa,
– koncentrator, most, przełącznik, router, itp.,
połączonych ze sobą medium transmisyjnym:
– kablem koncentrycznym,
– skrętką UTP,
– światłowodem,
– radiowo
i sterowanych za pomocą oprogramowania w celu przesyłania
danych pomiędzy poszczególnymi komputerami wchodzącymi w
skład sieci.
4
Cel tworzenia sieci
• Sieć umożliwia efektywne wykorzystanie zasobów
sprzętowych i programowych będących w dyspozycji
rozproszonych użytkowników:
– współdzielenie zasobów logicznych:
• baz danych,
• programów zainstalowanych na innych komputerach,
– współdzielenie zasobów fizycznych:
• drukarek,
• ploterów,
• pamięci masowych, itp..
– Przesyłanie poczty elektronicznej.
– Dostęp do portali informacyjnych i społecznościowych.
– Przesyłanie informacji; tekstu, obrazu, dźwięku w postaci
cyfrowej na nieokreślone odległości.
5
Części składowe sieci
• Węzły:
– Host,
– Koncentrator (Hub),
– Most (Bridge),
– Przełącznik (Switch),
– Router.
• Łącza:
– kabel koncentryczny,
– światłowód,...
6
Odmiany topologii sieci
7
Topologie magistrali
• Połączenie Point-
to-Point
• Wszystkie
elementy sieci
podłączone do
jednej magistrali.
– Bus
• Zastosowania:
– Ethernet
– Token-Bus
H
H
8
Topologie pierścienia
• Topologie:
– pierścienia
– i podwójnego pierścienia.
• Zastosowania:
– Token-Ring
– FDDI
9
Topologia gwiazdy
• Komputery są
podłączone do
koncentratora lub
przełącznika,
– który tworzy fizyczną
topologię gwiazdy,
– ale logiczną magistralę.
• Zastosowania:
– Np. Ethernet
• Topologia gwiazdy i
gwiazdy rozszerzonej
jest podstawową
topologią LAN.
10
Topologia hierarchiczna
• W topologii drzewa
(hierarchicznej)
urządzenia aktywne
sterują dostępem
do sieci.
11
Topologia siatki
• Topologia siatki jest
typową dla sieci MAN
i WAN.
• Każdy z węzłów
połączony jest z
więcej niż jednym
urządzeniem.
• Zapewnienia to
redundancję połączeń
między
poszczególnymi
węzłami.
12
Topologie sieci komputerowej
• Segmenty LAN mogą
być połączone za
pomocą szkieletu, który
umożliwia komunikację
pomiędzy segmentami.
– Segmentacja pozawala
na lokalizację ruchu np.
wewnątrz firmy.
– Każdy segment LAN
podłączony jest do
szkieletu via most (bridge)
lub przełącznik (switch).
13
Topologie sieci komputerowej
• Podstawą konstrukcji
topologii rozszerzonej
gwiazdy jest topologia
gwiazd.
• Topologia ta stosowana
jest głównie w
przypadku
rozbudowanych sieci
lokalnych oraz sieci
WAN.
• Sieci LAN są
podłączone do sieci
WAN poprzez bramy
(gatway’e)
14
Sieci przełączane (komutowane)
– Dwa lub więcej
węzłów połączonych
nośnikiem
– Dwie lub więcej sieci
połączonych przez
dwa lub więcej
węzły
• Sieć można zdefiniować jako:
15
Topologia Internetu
16
Strategie przełączania (komutacji)
• Przełączanie Obwodów.
– Transmisja strumieni bitów.
– Circuit Switched Network (CSN) ustanawia w sieci połączenie, które
może być używane jedynie przez dwu korespondentów. PSTN jest
siecią CSN.
• Np. Sieć telefoniczna
• Przełączanie Pakietów,
– Przechowywanie i przekazywanie komunikatów.
– Packet Switched Network (PSN) dzieli wiadomość na pakiety, które są
opatrzone adresem odbiorcy.
– Pakiety te przesyłane są przez sieć wraz wieloma innymi i po przybyciu
na miejsce są lokalnie dystrybuowane.
• Np. zwykła poczta.
• Komunikacja w sieciach komputerowych i w Internecie oparta jest
na modelu, PSN.
– Zaletą PSN jest lepsze wykorzystanie kanału komunikacyjnego.
17
Adresowanie i routing
• Adres: łańcuch bajtów (string), który identyfikuje
określony węzeł.
– Zwykle w sposób jednoznaczny
• Routing: proces przekazywania komunikatu do
węzła odbiorczego na podstawie jego adresu
• Rodzaje adresów:
– unicast, unikalny dla danego węzła,
– broadcast, dotyczący wszystkich węzłów w
sieci,
– multicast, dotyczący wybranej grupy węzłów.
18
Multipleksacja
• Z podziałem czasu dostępu (Time-Division
Multiplexing TDM).
• Z podziałem częstości kanału (Frequency-
Division Multiplexing FDM).
L1
L2
L3
R1
R2
R3
Switch 1
Switch 2
19
Multipleksacja z Podziałem
Częstości Kanału
• Frequency-Division Multiplexing (FDM):
– np. multipleksacja stosowana w tradycyjnych głosowych
połączeniach telefonicznych, przydziały częstości dla stacji
radiowych.
• W przypadku sieci komputerowych FDM stosowana jest
w systemach telekomunikacyjnych opartych na
technologii WDM (Wavelength Division Multiplexing).
20
Multipleksacja Statystyczna TDM
• Charakterystyka statystycznej TDM:
– multipleksacja TDM obsługiwać może sygnały
cyfrowe,
– multipleksacja TDM następuje na żądanie klienta,
– pakiety pochodzące z różnych źródeł są wymieszane
w łączu,
– konieczne jest buforowanie pakietów, które rywalizują
o dostęp do łącza.
• hot-potato-routing,
– możliwość wystąpienia przepełnienie bufora (kolejki)
nazywane jest zatorem (congestion)
21
Multipleksacja Statystyczna TDM
• Pakiety różnych użytkowników są buforowane w
kolejności zależnej do przyjętej polityki
kolejkowania.
– Np. FI-FO
…
bufor
22
Podział sieci komputerowych ze
względu na zasięg
• Local area networks (LAN).
– Sieci tego rodzaju łączą komputery i terminale zlokalizowane na
ograniczonym obszarze np. campusie uniwersyteckim, biurze
czy fabryce. Komputery połączone są zazwyczaj za pomocą
kabla lub światłowodu, którego długość określa rozmiary LAN.
• Metropolitan area networks (MAN).
– Sieci tego rodzaju łączą kilka sieci typu LAN rozłożonych w tym
samym mieście. Ten rodzaj sieci wykorzystuje szkielet
światłowodowy charakteryzujący się dużą prędkością transmisji.
• Wide area networks (WAN).
– Sieci tego rodzaju łączą komputery na dużych odległościach.
Zwykle wymagają wielu połączeń komunikacyjnych takich jak
mikrofalowe łącza radiowe i łącza satelitarne.
23
Komutowane sieci publiczne
• Sieci WAN często korzystają z komutowanych sieci
publicznych takich jak np. system telefoniczny
• Istnieją trzy rodzaje tego typu sieci:
– Public switched telephone network (PSTN). Czyli zwykły system
telefoniczny do transmisji głosu, cyfrowych sygnałów "voice-
like".
– Public switched data network (PSDN). System przeznaczony do
transmisji danych w postaci cyfrowej.
• Powstał on z sieci WAN, które wymagały większej szybkości
transmisji niż oferowana przez PSTN.
– Integrated Services Digital Network (ISDN) termin ten określa
wszystkie rodzaje sieci o transmisji cyfrowej, które mogą
przenosić równocześnie głos i dane komunikacyjne oraz oferuje
inne usługi teletekstowe.
24
Sieci MAN
• Sieci MAN przejmują obecnie niektóre z
ról spełnianych przez sieci WAN.
– Dzięki dużej szybkości transmisji stanowią
one szczególnego rodzaju środowisko dla
połączeń typu LAN – LAN.
– Np.
• FDDI oferuje szybkość transmisji 100Mb/s,
• Podczas gdy linia PSTN z szybkim modemem
jedynie 19.2Kb/s.
25
Warstwa Internetu
• Usługi Warstwy Internetu składają się z dwóch części :
– Schematu adresowania i translacji adresów warstwy 2 (Media
Access Control MAC) na adresy warstwy 3 (IP) i odwrotnie.
Prefiksy statycznych adresów przydzielane przez IEEE
http://standards.ieee.org/regauth/oui/oui.txt
– pakietowego modelu dostawy danych
• Odpowiada za to Protokół Internetu IP (dosłowne
znaczenie tej nazwy). Zapewnia on:
– Heterogeniczność - niezależność intersieci od architektury warstw
łącza danych i fizycznej.
– Skalowalność sieci
• Protokół IP jest protokołem bezpołączeniowym-
urządzenia kierujące ruchem pakietu w sieci mogą
samodzielnie ustalać trasę przejścia dla każdego pakietu.
Nie występują tu żadne potwierdzenia, sterowanie
strumieniem danych etc. Funkcje te wykonują protokoły
warstw wyższych jak TCP.
26
Protokół IP
• Najniższą warstwę Internetu stanowi
Internet Protocol (IP).
• Spełnia on funkcję podstawowego
mechanizmu obsługi danych i definiuje
dwie bardzo istotne elementy:
– budowę pakietów danych,
– tworzenia adresów hostów w Internecie.
27
Model usługi IP
• Protokół bezpołączeniowy
(datagram-based)
• Dostarczanie pakietów typu
Best-effort (unreliable service)
– Pakiety bywają tracone
– Pakiety nie są dostarczane w
kolejności
– Dostarczane są podwójne
kopie pakietów
– Pakiety mogą być opóźnione
• Format datagramu Internet
Protocol, RFC 791:
Version
HLen
TOS
Length
Ident
Flags
Offset
TTL
Protocol
Checksum
SourceAddr
DestinationAddr
Options (variable)
Pad
(variable)
0
4
8
16
19
31
Data
28
Schemat adresowania IP
• Adres IP zwykło się przedstawiać jako cztery liczby
dziesiętne (4x8=32) oddzielone kropkami np. 200.1.2.3,
reprezentującymi dziesiętne wartości każdego z czterech
bajtów.
• Adresy IP zawarte są w zakresie od 0.0.0.0 do
255.255.255.255, daje to w sumie około 4.3 miliarda
adresów.
• Adresy IP podzielone są na klasy, kilka pierwszych bitów
adresu wskazuje klasę, do której adres należy:
Klasa Prefiks Numer Sieci Numer Hosta
A
0
bity 0-7
bity 8-31
B
10
bity 1-15
bity 16-31
C
110
bity 2-24
bity 25-31
D
1110
N/A
E
1111
N/A
29
Schemat adresowania IP
• Adresy klasy D używane są do multicastingu adresy klasy E nie są
wykorzystywane.
• Klasowa struktura adresów powoduje nieefektywność przydziału
adresów (trzy różniące się od siebie rozmiary):
– dla dwu komputerów w klasie C 2/255=0.78%,
– dla 256 komputerów w klasie B jest jeszcze gorzej 256/65535=0.39%.
• Problem wyczerpywania się adresów dotyczy głównie klasy B.
1
1 1
30
Routing IP, a maska podsieci
• Obok przypisania do każdego węzła sieci adresu
IP konieczne jest również przypisanie
odpowiedniej Maski Sieci (Netmask).
– Określa ona, która część adresu jest numerem sieci,
a która numerem hosta (patrz klasy adresów IP).
• Tej partycji dokonuje się za pomocą logicznej
operacji AND przeprowadzonej na bitach adresu
IP i Maski Sieci. Wynik określa numer sieci:
– dla klasy C maska sieci
255.255.255.0,
– dla klasy B, Maska Sieci
255.255.0.0
– etc.
31
Pozaklasowe adresowanie klasy C
• Protokół bezklasowego trasowania między domenowego
(Classless Interdomain Routing CIDR ) [RFC 1517,
1518, 1519]:
• Aby bardziej efektywnie wykorzystać adresy IP w
Internecie wykorzystuje się adresy pozaklasowe.
– Dowolna liczba bitów na adres sieci,
– Maska sieci staje się wyjątkowo ważna, gdy stosuje się
adresowanie pozaklasowe.
– Maski podsieci pozwalają kompensować ogromne odstępy w
liczbie adresów pomiędzy klasami adresowymi. Dostosowując
długość adresów hosta i/lub sieci.
• Zapis adresu dla podejścia bezklasowego np:
192.9.205.22 /18
– IP/ liczbę bitów maski sieci.
• Możliwe agregowanie adresów sieci i hierarchiczne
określanie trasy (super sieci);
32
Programy i procesy.
Co je odróżnia?
• Program stanowi statyczną jednostkę np.
uporządkowany zbiór lub sekwencję:
– instrukcji,
– definicji.
• Program jest przechowywany:
– na dysku,
– na kawałku papieru albo w czyjejś głowie.
• Program ma zwykle formę tekstu „English-like”, może to
być także zapis binarny lub coś pośredniego jak kod
assemblerowy
• Gdy program zostanie wprowadzony (skopiowany) do
pamięci komputera (procesora) i gdy rozpocznie się jego
wykonywanie staje się on programem działającym
(running program) albo procesem.
33
Hosty i aplikacje
• Gdy przez Internet komunikują się ze sobą takie
aplikacje, jak np. serwery FTP i przeglądarki
WWW nie mają one dostępu do pakietów IP,
które są wysyłane do hostów, a nie do aplikacji.
– Jeśli na danym hoście funkcjonuje kilka aplikacji
sieciowych, nie ma na tym poziomie możliwości
jednoznacznej ich identyfikacji,
– Nie jest wiadomo czy dany pakiet IP jest kierowany
do serwera WWW czy FTP.
34
Identyfikacja procesów
• Bezpośrednia identyfikacja procesów.
– Procesy mogą identyfikować się wzajemnie w sposób
bezpośredni za pomocą identyfikatora procesu (process
identifier - pid), przydzielonego przez system operacyjny.
• Rozwiązanie takie nożna zastosować jedynie w przypadku gdy
jeden system operacyjny jest uruchomiony na wszystkich
komputerach.
• Pośrednia identyfikacja procesów.
– Procesy identyfikują się wzajemnie za pomocą abstrakcyjnego
wskaźnika - portu (port lub mail box).
• Port stanowi etap pośredni w komunikacji.
• Proces nadawczy przekazuje komunikat do portu a proces
odbiorczy odbiera stamtąd tenże komunikat.
35
Porty i procesy c.d.
• IETF (Internet Engineering Task Force) przypisało
niektórym najczęściej stosowanym aplikacjom stałe
numery portów z przedziału: 0-255 mają one
zastosowanie publiczne np. :
•
• Innym aplikacjom przydziela się po prostu dostępny
numer portu.
Port
Protokół
Zadanie
20+21 FTP
Transmisja danych
23
TELNET
Wiersz poleceń zdalnego hosta
25
SMTP
Nadawanie przesyłek e-mailowych
53
DNS
Odwzorowywanie nazw domen na adresy IP
70
GOPHER Usługa wyszukiwawcza dla Archive
80
HTTP
World Wide Web
110
POP3
Pobieranie przesyłek e-mailowych
119
NNTP
Usenet
161
SNMP
Zdalne administrowanie urządzeniami sieciowym
194
IRC
Internet Chat
36
Porty i procesy c.d.
• Numery portów z przedziału: 255-1024
wykorzystanie komercyjne:
– 517 Talk w UNIX
– 666
DOOM
• Numery portów powyżej, 1023 brak uregulowań
– 27000 QuakeWorld; Internetowa wersja Quake'a
• Assigned Numbers: RFC 1700
– Dokument ten zawiera między innymi numery portów
przypisane dobrze znanym usługom.
37
Nagłówek demultipleksera
•
Nagłówek protokołu końcowego realizujący funkcje demultipleksacji
zawiera porty źródła i odbiorcy.
•
Port jest pojęciem abstrakcyjnym. Jego implementacja jest zależna od
systemu operacyjnego.
•
Proces w określonym komputerze jest identyfikowany przez parę
<
port, komputer
>
– Para ta jest kluczem procesy demultipleksacji dla UDP.
•
Pola portów w nagłówku UDP mają długość 16 bitów, co umożliwia
obsługę 64
⋅
103 portów.
Port Nadawcy
Port Odbiorcy
Suma kontrolna
Długość
Dane
0
16
31
38
Jak działa UDP?
• UDP dołącza komunikat skierowany do
określonego portu do kolejki
• Brak jest sterowania przepływem
• Gdy kolejka jest przepełniona komunikat jest po
prostu odrzucany
• Proces aplikacji odbiera komunikaty z początku
kolejki (1st.in-1st.out) i po kolei usuwa je z
kolejki
• Jeżeli kolejka jest pusta proces jest
zablokowany do momentu nadejścia następnego
komunikatu.
39
TCP - niezawodny strumień danych
• TCP protokół sterowania transmisją jest najszerzej znanym
protokołem transportowym oferującym połączeniową usługę
niezawodnego strumienia danych.
– Usługa ta uwalnia aplikacje od konieczności samodzielnego nadzoru
nad transmisją danych.
• Charakterystyka TCP:
– Protokół połączeniowy (Connection-oriented)
– TCP jest protokołem znakowym - strumień bajtów (Byte-stream)
• Aplikacja nadawcy wypisuje bajty
• Protokół TCP przesyła segmenty
• Aplikacja odbiorcy odczytuje bajty
– Komunikacja dupleksowa
– Sterowanie przepływem: protokół nie pozwala nadawcy na przeciążanie
możliwości odbiorcy – algorytm przesuwnwgo okna.
– Kontrola zatorów: protokół nie pozwala nadawcy na przeciążanie sieci
40
Sposób zarządzania strumieniem
bajtów
•
TCP w komputerze nadawczym
– buforuje pewną liczbę bajtów
generowanych przez proces
nadawczy, aby wypełnić pakiet
o ustalonym (dla danej
aplikacji) rozmiarze, a
następnie przesłać ten pakiet
do procesu odbiorczego.
•
TCP w komputerze odbiorczym
– pobiera zawartość pakietu do
bufora odbiorczego, a proces
odbierający w dogodnym
czasie ją odczytuje.
•
Wyzwalanie transmisji
segmentu następuje:
– na życzenie procesu
nadawczego
– z uwzględnieniem wartości
zmiennej progowej
– za pomocą zegara
Process aplikacji
Pisanie
bajtów
TCP
Bufor nadawcy
Segment
Segment
Segment
TRansmisja segmentów
Process aplikacji
Czytanie
bajtów
TCP
Bufor odbiorcy
…
…
…
41
Format nagłówka segmentu TCP
Opcje (zmienne)
Dane
Suma kontrolna
Por nadawcy
Port odbiorcy
HdrLen
0
Flagi
Wskaźnik pilnych danych
Zalecane okno
Numer sekwencyjny
Potwierdzenie
0
4
10
16
31
42
Multipeksacja i demultipleksacja
• Multipleksacja.
– Połączenie wyróżnionych kanałów komunikacyjnych w
pojedynczy kanał na niższym poziomie.
• Na przykład, oddzielne kanały TCP i UDP są poddane multipleksacji
do jednego kanału IP między węzłami sieci.
• Demultipleksacja.
– Operacja odwrotna do multipleksacji.
• Na podstawie informacji zawartej w nagłówku pakietu jest on
kierowany w górę w stosie protokołów.
• Na przykład , IP wykorzystuje zawartość pola Protokół w nagłówku
do skierowania pakietu do jednego z protokołów warstwy
transportowej TCP lub UDP,
• a te protokoły korzystając z numeru portu kierują segment do
właściwego procesu aplikacji.
LP1
LP2
LP3
ZP1
ZP2
ZP3
43
Komunikacja pomiędzy procesami
• Problem zamiany połączenia
host-to-host na połączenie
komunikacyjne process-to-
process.
• Procesy na poziomie aplikacji
porozumiewają się poprzez
kanał logiczny, który najczęściej
jest realizowany przez sieć
komutowaną łączącą komputery
na których te procesy są
uruchomione.
• Jedna aplikacja umieszcza dane
w kanale komunikacyjnym,
oczekując, że zastaną one
dostarczone przez sieć do
aplikacji działającej po drugiej
stronie kanału.
Host
Host
Aplikacja
Host
Aplikacja
Host
Host
Kanał logiczny
44
Funkcje kanału komunikacyjnego
• Niezawodność dostarczenia komunikatu.
• Dostarczanie komunikatów w tej samej
kolejności w jakiej zostały nadane.
• Uniemożliwić podsłuchiwanie kanału poprzez
procesy postronne, etc.
• Istnieją różne odmiany kanałów
komunikacyjnych, najczęściej spotykane to:
– żądanie – odpowiedź,
– strumień komunikatów.
45
Niezawodność, a błędy
występujące w sieci
• Rodzaje błędów:
– Błędy na poziomie bitów:
• zakłócenia elektryczne, kablu miedzianym 1/10
6
– 1/10
7
,
• 1/10
12
– 1/10
14
w światłowodzie.
– Błędy na poziomie pakietów
• przeciążenia buforów komutatorów,
• awarie łączy i węzłów.
• Skutki:
– opóźnienie komunikatów,
– dostarczanie komunikatów w zmienionej kolejności,
– uszkodzenie zawartości komunikatu.
46
Parametry określające wydajność sieci
• Pasmo-przepustowość (bandwidth, throughput)
– Szerokość pasma lub przepustowość – liczba bitów, które mogą być
przesłane przez łącze w jednostce czasu, np. 10Mb/s, (10Mbps).
• Notacja:
– KB = 2
10
bajtów.
– Kb = 10
3
bitów.
• Bity przesyłane w paśmie o danej szerokości mają różny czas
trwania:
1Mb/s -> 1
µ
s
2Mb/s -> 0.5
µ
s
47
Parametry określające wydajność sieci
• Opóźnienie (Latency, delay) - dotyczy czasu w którym pojedynczy
bit przemieszcza się z jednego końca kanału komunikacyjnego na
drugi.
• Mierzymy je w sekundach.
– One-Way Time,
– Round-Trip Time (RTT)
• Definicja:
Opóźnienie = Propagacja + Transmisja + Kolejkowanie
gdzie:
– Propagacja = odległość/v, gdzie v = (3.0 – 2.3) ·10
8
m/s.
– Transmisja = czas potrzebny do transmisji przyjętej jednostki danych
datagramu.
• Opóźnienie transm. = rozmiar datagramu/szerokość pasma.
– Opóźnienie wynikające z kolejkowania datagramów przez komutatory w
sieci.
48
Produkt Opóźnienie
×
Pasmo
• Ilość danych „w locie” lub “in the pipe”
– Przykład: 100ms x 45Mb/s = 560KB
• Wielkość ta odpowiada liczbie bitów, które wyśle
nadajnik zanim pierwszy z bitów dotrze do odbiornika.
• Wielkość ta jest szczególnie istotna w przypadku gdy
nadajnik oczekuje na sygnał z odbiornika lub gdy
odbiornik nakazuje nadajnikowi wstrzymanie nadawania.
Pasmo, Bandwidth
Opóźnienie, Delay
49
Opóźnienia w funkcji RTT
• Szerokość pasma i
opóźnienie określają
charakterystykę
efektywności danego
łącza.
• w przypadku:
– dużej odległości, opóźnienie
dominuje nad szerokością
pasma.
• Wykres przedstawia
opóźnienia w funkcji RTT
dla różnych rozmiarów
datagramu i szerokości
pasma łącza.
Opóźnienie niezależne od RTT
Dominacja RTT
50
Architektura sieci
• Korzystając z abstrakcji warstw można prościej
przedstawić złożony proces transmisji sieciowej.
– Tworzenie abstrakcji w sposób naturalny prowadzi do
uwarstwienia.
– Każdej warstwie odpowiada inne pojęcie abstrakcyjne.
• Każda z warstw świadczy usługi na rzecz innej,
idąc w górę usługi te mają coraz bardziej
abstrakcyjny charakter.
Program aplikacji
Kanały między procesami
Łączność między komputerami
Sprzęt
51
Architektura sieci
• Należy pamiętać, że obraz liniowej sekwencji
warstw stanowi pewne uproszczenie.
• Często na danym poziomie systemu istnieje
wiele abstrakcji świadczących odmienne usługi
w oparciu o tę samą abstrakcję niższego
poziomu,
– np. dwa typy kanałów itp..
Kanał
Żądanie/Odp.
Kanał
Potoku bajtów
Program aplikacji
Sprzęt
Połączenie Host-to-host
52
Model OSI
• Protokoły realizujące funkcje sieciowe na rozmaitych poziomach
abstrakcji – w rozmaitych warstwach można zaprezentować za
pomocą Modelu Współpracy Systemów Otwartych OSI (Open
Systems Interconnection).
• Model OSI:
– jest funkcjonalnym modelem opisującym sposób w jaki informacja jest
przekazywana poprzez sieć z aplikacji działającej na jednym
komputerze do aplikacji uruchomionej na innym komputerze.
– dzieli całość zadań związanych z przekazywaniem informacji pomiędzy
połączonymi siecią komputerami na siedem mniejszych, a tym samym
łatwiejszych do wykonania grup.
– został opracowany przez International Organization for Standardization
(ISO) in 1984, i stanowi obecnie podstawowy model komunikacji
międzykomputerowej.
53
Charakterystyka warstw modelu
OSI
• Każde zadanie lub grupa zadań
jest przypisana jednej warstwie
modelu OSI.
• Każda z warstw stanowi
samodzielną jednostkę, a
przypisane jej wybrane funkcje
sieci mogą być realizowane
niezależnie.
• Taka struktura sprawia
wprowadzanie modyfikacji
rozwiązań dotyczących jednej z
warstw bez konieczności
modyfikowania pozostałych
warstw modelu.
Warstwa aplikacji
Warstwa prezentacji
Warstwa sesji
Warstwa transportowa
Warstwa
sieciowa
Warstwa
łącza danych
Warstwa fizyczna
Aplikacja
Transport
danych
54
Warstwy górne i dolne modelu OSI
• Warstwy górne mają do czynienia z aplikacjami i zwykle są
implementowane jedynie programowo.
– Najwyższa warstwa aplikacji znajduje się najbliżej użytkownika systemu.
– Zarówno użytkownik jak i procesy warstwy aplikacji oddziałują z
oprogramowaniem aplikacji, które zawiera składnik komunikacyjny np.
przeglądarka, klient FTP etc.
• Warstwy niższe modelu OSI zajmują się problemami transportu
danych.
– Warstwa fizyczna i warstwa łącza danych są implementowane zarówno
sprzętowo jak też programowo.
– Najniższa warstwa fizyczna znajduje się najbliżej nośnika sieciowego
(np. okablowania) i jest odpowiedzialna za umieszczanie informacji w
nośniku.
• Należy pamiętać, że określenie warstwy wyższe odnosi się również
do każdej z warstw znajdującej się powyżej danej warstwy w
modelu OSI.
55
Protokoły komunikacyjne
• Protokoły komunikacyjne stanowią
elementy składowe architektury sieci.
– Są to obiekty abstrakcyjne, działające w
poszczególnych warstwach modelu systemu
sieciowego.
• Protokół definiuje usługę komunikacyjną,
wraz z regułami rządzącymi
komunikatami, które wymienia ze swym
odpowiednikiem, aby implementować
dana usługę.
56
• Z wyjątkiem poziomu
sprzętowego, na którym stacje
protokoły komunikują się ze
sobą bezpośrednio,
komunikacja między
pozostałymi stacjami jest
pośrednia - poprzez protokoły
niższych rzędów.
• Każdy protokół posiada dwa
różne interfejsy:
– service interface, są to
operacje wykonywane przez
protokół,
– peer-to-peer interface, są to
komunikaty wymieniane z
protokołem równorzędnym
działającym na drugim krańcu
kanału komunikacyjnego.
57
Proces enkapsulacji
• W procesie
komunikacji każda
warstwa modelu OSI
po stronie nadawcy
dołącza do PDU
odpowiednią
informację.
• Natomiast kolejne
warstwy systemy
adresata usuwają te
sterujące procesem
informacje z PDU
58
Porównanie modeli
referencyjnych OSI i TCP/IP
Nazwa warstwy
modelu OSI
Numer
warstwy OSI
Nazwa warstwy
modelu TCP/IP
Aplikacji
Prezentacji
Sesji
Transportu
Sieci
Łącza danych
Fizyczna
7
6
5
4
3
2
1
Procesu/Aplikacji
Host-z-Hostem
Internetu
Technologia
Dostępu do sieci
59
Adresowanie, routowanie,
multipleksacja
• Funkcje spełniane w tym
celu przez TCP(UDP)/IP:
– Adresowanie - adresy IP
jednoznacznie identyfikują
komputer w Internecie,
• pozwalają na doręczenie
danych do właściwego hosta.
– Rutowanie - gateway'e
dostarczają dane do
właściwej sieci.
– Multipleksacja – łączenie
kanałów komunikacyjnych
dla poszczególnych
procesów we wspólny
kanał datagramowy
obsługiwany przez protokół
IP.
60
Urządzenia i protokoły w modelu OSI
Like Morse
Code
Cables,
Connectors,
NIC Cards
Hubs,
Repeaters
Bits
Physical
1
MAC
address
BIA address,
Flow Control
FR, TR, ATM,
FDDI, Ethernet,
SDLC, ISDN,
SNA
Bridges,
Switches
Frame
Data Link
2
Routed or
routing
protocols
Logical
Addressing,
Best path
IP IPX
Routers,
PCs
Packet
Network
3
Reliable or
unreliable
Windowing,
Buffering
TCP UDP
Segment
Transport
4
Negotiate a
session set
up
Establish,
manage and
terminate
sessions
NFS SQL
NetBios RPC
Session
5
Standardize
d format
Syntax,
Compression,
Formatting
.doc .xls .midi
.ppt .jpg .bmp
.gif .mp3 .ascii
.ebcdic
Presentation
6
Ideas,
Thoughts
Checks
availability
with comm.
partner
Pictures, Writing,
Sound
Software
PCs
Raw Data
Application
7
NOTES
NOTES
PROTOCOLS
DEVICES
ENCAPS /
PDU
NAME
NO.
61
Warstwa
Funkcja
Protokoły
Składnik
i sieci
Aplikacji
Interfejs
użytkownika
•
obsługuje aplikacje przeznaczona do pracy
sieciowej
•
udostępnia aplikacji usługi sieciowe
•
umożliwia dostęp do sieci, steruje
przepływem oraz detekcja i korekcja
błędów
•
przykładowe aplikacje to: przesyłanie
plików, e-mail, aplikacje korzystające z
NetBIOS etc.
DNS,FTP,TF
TP,
SNMP,
SMTP,FING
ER,
TELNET,SM
B
Host,
Serwer
Prezentacji
Translacja
•
tłumaczy formaty aplikacji na formaty
sieciowe i odwrotnie
•
różnorodne formaty źródłowych aplikacji
są zamieniane na standardowy format
rozumiany przez pozostałe warstwy
modelu OSI
•
odpowiedzialna za konwersje protokołów,
znaków, szyfrowanie/deszyfrowanie,
obsługę formatów graficznych, kompresja
danych
•
ustanawia standardy dla różnych systemów
umożliwiając jednolity schemat
komunikacji dla różnych stosów
protokołów
•
nie zawsze implementowany w
protokołach sieciowych
XDR, ASN-1
Host,
Serwer
62
Warstwa
Funkcja
Protokoły
Składnik
i sieci
Sesji
Synchronizacja i
sesja
•
ustanawia, utrzymuje i kończy sesje
sieciową
•
odpowiedzialna za identyfikację
(rozpoznawanie nazw) uczestników sesji
•
Dostarcza usług synchronizacji
umieszczając w punkty kontrolne w
strumieniu danych, gdy sesja pada jedynie
dane znajdujące za ostatnim punktem
kontrolnym musza być retransmitowane.
•
Zarządza kto i jak długo może
transmitować dane w określonym czasie.
•
Przykłady: Interaktywne logowanie,
połączenie przy transmisji plików,
nawiązywanie i ponowne nawiązywanie
połączenia, rozpoznawanie i rejestracja
nazw podczas sesji
NetBIOS
Named
Pipes***,
Mail slots**,
RPC
Host,
Serwer,
Gatway
Transportu
Segmenty,
Obsługa błędów,
Sterowanie
przepływem
•
Zapewnia dodatkowe połączenie poniżej
warstwy sesji
•
Steruje przepływem danych poprzez sieć
•
Dzieli strumień danych na fragmenty lub
segmenty i składa je ponownie w
komunikaty
•
Dobrą analogią jest „pociąg” dane sa
dzielone na podobne jednostki
•
Dostarcza mechanizmu kontroli błędów,
gwarantuje dostarczanie komunikatów, bez
strat i duplikatów
•
Dostarcza potwierdzenia skutecznej
transmisji lub żąda retransmisji pakietów
TCP, UDP,
SPX,
NetBIOS
NetBEUI
ATP
(AppleTalk
Transaction
Protocol),
Host,
Serwer
Gatway
63
Warstwa
Funkcja
Protokoły
Składnik
i sieci
Sieciowa
Adresowanie
routing
•
Dokonuje translacji logicznych adresów
sieciowych i nazw na ich odpowiedniki
fizyczne (Nazwa komp.
→
IP
→
MAC)
•
Odpowiedzialna za:
Adresowanie
Wybór trasy
•
Zarządzanie problemami sieci jak
przełączanie pakietów, zatory etc.
•
Fragmentacja pakietów stosownie do MTU
technologii sieciowej i ponowne ich
składanie
•
Zaopatrywanie pakietu w odpowiedni
adres. Analogia z tablicami miejsc
przeznaczenia na poszczególnych
wagonach
ARP, RARP,
IP, ICMP,
IGMP*,
RIP, OSFP,
BGP,
IPX
NetBEUI
Router
Frame
Relay
Device,
ATM
Switch,
64
Warstwa
Funkcja
Protokoły
Składnik
i sieci
Łącza danych
Ramki i bity
•
Oprawia pakiety w ramki opatrując je
adresem fizycznym
•
Zamienia ramki na ciągi bitów i przekazuje
je do warstwy fizycznej i vice versa
•
Odpowiada za bezbłędna transmisję ramek
poprzez warstwę fizyczną do innego
komputera
•
Definiuje metody transmisji i odbioru
danych sieciowych
•
Korekcja błędów i sterowanie strumieniem,
zarządzanie połączeniem
•
Definiowanie ASP
LLC
MAC
802.1 OSI
802.2 LLC
Mosty
Przełącz-
niki w.2
Inteligen-
tne huby,
NIC
Fizyczna
Sprzęt,
Strumienie bitów
•
Transmituje strumienie bitów poprzez
fizyczne medium
•
Definiuje kable, karty i inne fizyczne
aspekty sieci
•
Definiuje połączenie NIC do kabla
•
Definiuje techniki transmisji bitów w
nośniku
IEEE 802
IEEE 802.2
ISO 2110
ISDN
Wzmac-
niak,
Koncen-
trator,
Medium
*IGMP Internet Group Management Protocol - służy do zarządzania grupami multicastowymi w sieciach opartych na
protokole IP.
**A MailSlot is a type of interprocess communication that allows communication between processes both locally and over a
network. The use of MailSlots is generally simpler than named pipes or sockets, but they are more limited.
***Named pipe is one of the methods of inter-process communication. MacOS calls it a socket, which should not be confused
with a TCP socket. The concept is also found in Microsoft Windows, although the semantics differ substantially. A traditional
pipe is "unnamed" because it exists anonymously and persists only for as long as the process is running. A named pipe is
system-persistent and exists beyond the life of the process and must be deleted once it is no longer being used.
65
Interfejs usługi i interfejs stacji
protokołu
Host 1
Protokół
Host 2
Protokół
Obiekt wyższego
poziomu
Interfejs usługi
Interfejs stacji
protokołu peer-to-peer
Obiekt wyższego
poziomu
66
Termin „protokół”
• Termin “protokół” może być interpretowany na dwa różne sposoby:
– jako specyfikacja interfejsu usługi lub peer-to-peer,
– jako moduł, który stanowi implementacje tych interfejsów.
• W celu rozróżnienia pomiędzy interfejsami, a modułem je
implementującym odwołujemy się do tych pierwszych jako do
specyfikacji protokołu.
– Specyfikacje są ogólnie rzecz biorąc wyrażone za pomocą kombinacji
tekstu i pseudokodu, diagramów przejść stanów, rysunków formatów
datagramów etc.
• Może się zdarzyć, że dany protokół będzie implementowany na
różne sposoby, pod warunkiem, że stosują się one do specyfikacji.
– Obie implementacje powinny skutecznie wymieniać pomiędzy sobą
komunikaty.
– Te zagadnienia podlegają normalizacji przez ISO i IETF.
67
Graf protokołu
• W danej warstwie modelu
może istnieć wiele
różnych protokołów, z
których każdy świadczy
inną usługę
komunikacyjną.
• Z tego powodu wygodnie
jest przedstawić zestaw
protokołów tworzących
system sieciowy za
pomocą grafu protokołów.
– Węzły grafu przedstawiają
protokoły
– Krawędzie przedstawiają
relację
File
application
Digital
library
application
Video
application
RRP
MSP
HHP
Host 1
File
application
Digital
library
application
Video
application
RRP
MSP
HHP
Host 2
68
Graf protokołu
File
application
Digital
library
application
Video
application
RRP
MSP
HHP
Host 1
File
application
Digital
library
application
Video
application
RRP
MSP
HHP
Host 2
• Typy protokołów:
– RRP- protokół żądanie-
odpowiedź (Request-Replay
Protocol)
– MSP – protokół strumienia
komunikatów (Message
Streem Protocol)
– HHP- protokół między
komputerami (Host-to-Host
Protocol)
69
Mechanizm działania stosu
protokołów
•
Kapsułkowanie
(Encapsulation)
– Nagłówek / dane
(header/body)
– Nagłówek dołączany
do komunikatu przez
protokół zawiera
identyfikator aplikacji
do której należy dany
komunikat (klucz
demultipleksacji).
RRP
Data
HHP
Application
program
Application
program
Host 1
Host 2
Data
RRP
RRP
Data
HHP
Data
RRP
RRP
Data
HHP
70
Realizacja multipleksacji i
demultipleksacji
• Idea komutacji pakietów
polega na umieszczaniu
wielu przepływów danych na
jednym łączu fizycznym.
– Podobna idea stosowana
jest w przypadku wędrówki
datagramów w górę i w dół
stosu protokołów.
• Protokół RRP realizuje
logiczny kanał
komunikacyjny, zawierający
komunikaty dwóch aplikacji
multipleksowanych w
komputerze nadawczym i
demultipleksowanych do
właściwej aplikacji w
komputerze odbiorczym.
File
application
Digital
library
application
Video
application
RRP
MSP
HHP
Host 1
File
application
Digital
library
application
Video
application
RRP
MSP
HHP
Host 2
71
Usługi sieciowe
Systemu Operacyjnego
• O.S. dostarcza jednolity zestaw usług
świadczonych przez maszynę(/y)
• W przypadku pojedynczego komputera
– wszystkie usługi są świadczone lokalnie
w przypadku sieci komputerowej
– część usług ma charakter lokalny inne zaś są
świadczone przez inne maszyny wchodzące w skład
sieci.
• O.S. dostarcza użytkownikowi takiej samej
wirtualnej maszyny niezależnie od konkretnego
zestawu sprzętu na którym O.S. jest
zainstalowany.
72
Sys tem operacyjny Windows NT 4.0
Server
Windows NT 4.0
Workstation
Windows
2000 Server
Windows 2000
Profess ional
NetWare 5.1 Lantas tic
8.0
Linux
Producent
Microsoft, USA Microsoft, USA
Microsoft,
USA
Microsoft, USA Novell, USA
Artisoft,
USA
-
Protokoły sieciowe i usługi
NetBIOS / NetBEUI /
IPX/SPX / TCP/IP
+/+/+/+
+/+/+/+
+/+/+/+
+/+/+/+
-/-/+/+
+/+/+/+
+/+/+/+
Router IPX/SPX
+
+
+
+
+
-
+
Router TCP/IP
+
+
+
+
+
-
+
Serwer usług
DHCP/
DNS
+/+
-/-
+/+
-/-
+/+
-/-
+/+
Udostępniane serwery w sieci lokalnej
Serwer plikowy
(dedykowany)
+
+
+
+
+
-
+
Serwer wydruku
+
+
+
+
+
+
+
Serwer aplikacji
-
-
+
-
+
-
+
Stacje robocze
DOS/Windows/Linux/Ma
cOS
-/+/-/-
-/+/-/-
-/+/-/-
-/+/-/-
+/+/-/+
+/+/-/-
-/+/+/-
Ładowanie systemu z
sieci
-
-
+
+
+
+
+
Centralne zarządzanie
stacjami
+ 1)
+ 1)
+ 1)
+ 1)
+
+
+
Zarządzanie zasobami
Serwer usług
katalogowych
LDAP
-
Active
Directory
-
NDS
-
LDAP
Narzędzia
administratora
rozdrobnione
rozdrobnione
scentralizowa
ne
scentralizowane scentralizowan
e
rozdrobni
one
rozdrobni
one
Ergonomia
administrow ania
średnia
średnia
duża
duża
duża
duża
mała
Serwery dołączane do pakietu
Serwer SQL
w wersji SBS
-
-
-
+
-
+
Serwer WWW
+
+
+
+
+
-
+
Serwer FTP
+
+
+
+
+
-
+
Serwer poczty
elektronicznej
+
+
+
+
+
-
+
Serwer zdalnego
dostępu (RAS)
+
+
+
+
w wersji Small
Business
-
+
Licencje
Liczba stanowisk
1, 10, 25, 50
(SBS: 5, 20)
nie dotyczy
1, 10, 25, 50 nie dotyczy
5, 25, 50, 100
bez
ogranicze
ń
bez
ogranicze
ń
+ - jest; - - nie ma; 1) stacje robocze pracujące pod kontrolą Windows NT/2000
73
Organizacje ustanawiające
standardy sieciowe
• W ustanawianiu standardów dla pracy w
sieciach komputerowych bierze udział wiele
organizacji.
– Stanowią one forum dla przedstawiania nowych idei i
dyskusji proponowanych rozwiązań,
– Formalizują wnioski z takich dyskusji w postaci
roboczych specyfikacji,
– Przegłosowują całość lub pewne aspekty tworzonych
standardów,
– Upowszechniają specyfikacje przyjętych standardów.
74
Organizacje ustanawiające
standardy c.d.
• International Organization for Standardization
(ISO)
– Najbardziej znanym standardem jest OSI reference
model i odpowiadający mu zestaw protokołów OSI.
• American National Standards Institute (ANSI)
– ANSI, będąca także członkiem ISO. ANSI rozwinął
specyfikację Fiber Distributed Data Interface (FDDI).
• Electronic Industries Association (EIA)
– Dziełem EIA jest szeroko stosowany standard
EIA/TIA-232, znany także jako RS-232.
75
Organizacje ustanawiające
standardy c.d.
• Institute of Electrical and Electronic Engineers (IEEE)
– IEEE utworzyła wiele standardów stosowanych w LAN, np. IEEE
802.3 i IEEE 802.5.
• International Telecommunication Union
Telecommunication Standardization Sector (ITU-T)
– Wcześnie znana jako Committee for International Telegraph and
Telephone (CCITT). Zbudowała standard X.25.
• Internet Activities Board (IAB)
– Autorstwa IAB są: Transmission Control Protocol/Internet
Protocol (TCP/IP) oraz Simple Network Management Protocol
(SNMP).
76
Architektura Internetu
…
FTP
HTTP
NV
TFTP
TCP
UDP
IP
NET
1
NET
2
NET
n
77
78