Informatyka 1 - PB Wydział Elektryczny

Transkrypt

Informatyka 1 - PB Wydział Elektryczny
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
dr inż. Jarosław Forenc
2/80
Plan wykładu nr 8
Definicja i podział sieci komputerowych
Informatyka 1
Topologie sieci komputerowych
Media transmisyjne
Model referencyjny ISO/OSI i model protokołu TCP/IP
Politechnika Białostocka - Wydział Elektryczny
warstwa dostępu do sieci
warstwa Internetu
Elektrotechnika, semestr II, studia niestacjonarne I stopnia
warstwa transportowa
Rok akademicki 2015/2016
warstwa aplikacji
Algorytmy komputerowe
Wykład nr 8 (04.06.2016)
definicje
podstawowe cechy
sposoby opisu
dr inż. Jarosław Forenc
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
dr inż. Jarosław Forenc
3/80
Sieć komputerowa
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
dr inż. Jarosław Forenc
4/80
Podział sieci w zależności od ich rozmiaru
Sieć komputerowa - zbiór komputerów i innych urządzeń umożliwiających
wzajemne przekazywanie informacji oraz udostępnianie zasobów
LAN (Local Area Network) - sieć lokalna, łączy komputery znajdujące się
na określonym, niewielkim obszarze (kilka budynków, przedsiębiorstwo),
wykonana jest w jednej technologii (np. Ethernet)
MAN (Metropolitan Area Network) - sieć miejska, obejmuje zasięgiem
aglomerację lub miasto łącząc oddzielne sieci LAN (np. Biaman)
WAN (Wide Area Network) - sieć rozległa, łączy ze sobą sieci MAN i LAN
na obszarze wykraczającym poza jedno miasto (POL-34, Pionier)
Internet - ogólnoświatowa sieć komputerowa łączące ze sobą wszystkie
rodzaje sieci („sieć sieci”)
Intranet - sieć podobna do Internetu, ale ograniczająca się do komputerów
w firmie lub organizacji
www.conceptdraw.com
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
dr inż. Jarosław Forenc
5/80
Topologie sieci komputerowych
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
dr inż. Jarosław Forenc
6/80
Topologie sieci komputerowych
Topologia sieci - określa strukturę sieci
topologia magistrali (bus) wszystkie komputery podłączone są
do jednego współdzielonego medium
transmisyjnego (najczęściej kabla
koncentrycznego)
zbiór zasad fizycznego łączenia elementów sieci oraz reguł
komunikacji poprzez medium transmisyjne
może dotyczyć konstrukcji fizycznej lub logicznej sieci
Topologia fizyczna - opisuje sposoby fizycznego łączenia ze sobą
komputerów (układ przewodów, media transmisyjne)
Topologia logiczna - opisuje sposoby komunikowania się hostów
za pomocą urządzeń topologii fizycznej; standardy komunikacji
definiowane przez IEEE:
topologia pierścienia (ring) komputery połączone są pomiędzy
sobą odcinkami kabla tworząc
zamknięty pierścień (sieci
światłowodowe, sieci LAN)
IEEE 802.3 - 10 Mb Ethernet
IEEE 802.3u - 100 Mb Ethernet
IEEE 802.3z - 1 Gb Ethernet
IEEE 802.5 - Token Ring
IEEE 802.11 - Wireless LAN
pl.wikipedia.org
IEEE 802.14 - Cable Modem
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
Topologie sieci komputerowych
dr inż. Jarosław Forenc
7/80
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
Topologie sieci komputerowych
topologia podwójnego pierścienia (dual-ring) komputery połączone są pomiędzy sobą
odcinkami kabla tworząc dwa zamknięte
pierścienie (większa niezawodność,
sieci: szkieletowe, MAN, Token Ring, FDDI)
topologia rozszerzonej gwiazdy
(extended star) - posiada punkt
centralny i punkty poboczne
(stosowana w rozbudowanych
sieciach lokalnych)
topologia gwiazdy (star) komputery podłączone są do jednego
punktu centralnego (koncentrator,
przełącznik), obecnie jest to
najczęściej stosowana topologia sieci LAN
topologia hierarchiczna (drzewa) jest kombinacją topologii gwiazdy
i magistrali
pl.wikipedia.org
pl.wikipedia.org
dr inż. Jarosław Forenc
8/80
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
dr inż. Jarosław Forenc
9/80
Topologie sieci komputerowych
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
dr inż. Jarosław Forenc
10/80
Media transmisyjne - przewód koncentryczny
topologia siatki (mesh) - każde urządzenie
połączone jest z więcej niż jednym
urządzeniem (sieci MAN i WAN, Internet)
Ethernet gruby (Thick Ethernet), 10Base-5
kabel RG-8 lub RG-11, impedancja falowa: 50 Ω, grubość: 1/2”
max. odległość między stacjami: 500 m
pełna siatka (full mesh) - każdy węzeł sieci
jest połączony fizycznie z każdym innym
węzłem sieci
Ethernet cienki (Thin Ethernet), 10Base-2
kabel RG-58, impedancja falowa: 50 Ω, grubość: 1/4”
częściowa siatka (partial mesh) - węzły
mają różną ilość połączeń sieciowych
do innych węzłów
max. odległość między stacjami: 185 m
pl.wikipedia.org
Złącze BNC
Terminator
ganipc.blogspot.com
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
dr inż. Jarosław Forenc
Media transmisyjne - przewód koncentryczny
11/80
Trójnik (Łącznik T)
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
www.globalsecurity.org
dr inż. Jarosław Forenc
12/80
Media transmisyjne - skrętka UTP
Zalety
UTP (Unshielded Twisted Pair) - skrętka nieekranowana
mało wrażliwy na zakłócenia i szumy
zbudowana z ośmiu przewodów skręconych po dwa (cztery pary)
umieszczonych we wspólnej izolacji
duża odległość między stacjami
wyróżnia się różne kategorie kabli (CAT-1, CAT-2, …, CAT-7),
najczęściej stosowane są kable kategorii 5 i 6
bardziej odporny na uszkodzenia mechaniczne niż skrętka
maksymalna długość segmentu sieci: 100 m
Wady
stosowane typy końcówek: RJ-11, RJ-45
mała szybkość przesyłania danych - do 10 Mb/s
mało odporny na awarie, trudno zlokalizować usterkę
niewygodny sposób instalacji (duże łącze, terminatory, trójniki)
RJRJ-11
UTP
UTP
RJRJ-45
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
dr inż. Jarosław Forenc
13/80
Media transmisyjne - skrętka UTP
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
dr inż. Jarosław Forenc
14/80
Media transmisyjne - skrętka STP
Zalety
STP (Shielded Twisted Pair) - skrętka ekranowana
niski koszt
ekranowany kabel skręcany zbudowany z czterech skręcanych ze sobą par
przewodów miedzianych otoczonych ekranującą siatką lub folią
i umieszczonych w izolacyjnej osłonie
wysoka szybkość transmisji - do 1000 Mb/s
łatwa instalacja
ekran chroni skrętkę przed wpływem zewnętrznego promieniowania
elektromagnetycznego
odporna na poważne awarie, łatwe diagnozowanie uszkodzeń
Wady
mała odporność na zakłócenia
mała odporność na uszkodzenia mechaniczne
mniejsza długość odcinka kabla niż w innych mediach
stosowanych w Ethernecie
STP
STP
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
dr inż. Jarosław Forenc
15/80
Media transmisyjne - skrętka
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
dr inż. Jarosław Forenc
16/80
Media transmisyjne - światłowód
F-FTP - każda para przewodów otoczona jest osobnym ekranem z folii,
cały kabel jest również pokryty folią
światłowód (fiber optic cable) przesyła impulsy świetlne między
nadajnikiem i odbiornikiem
S-FTP - każda para przewodów otoczona jest osobnym ekranem z folii,
cały kabel pokryty jest oplotem
nadajnik przekształca sygnały elektryczne na świetlne, a odbiornik
przekształca sygnały świetlne na elektryczne
S-STP - każda para przewodów otoczona jest osobnym ekranem (oplotem),
cały kabel pokryty jest oplotem
impulsy świetlne są przenoszone przez włókno optyczne składające się
z dwóch rodzajów szkła o różnych współczynnikach załamania światła
budowa światłowodu:
rdzeń (core), średnica: 9 µm lub 50 µm
płaszcz zewnętrzny (cladding), średnica: 125 µm
pokrycie zewnętrzne
S-STP
S-STP
promień światła wędrując w rdzeniu pada na
płaszcz pod pewnym kątem i następuje zjawisko
całkowitego odbicia wewnętrznego światła umożliwia to transmisję strumienia światła
przez włókno
lan-networks.cba.pl
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
dr inż. Jarosław Forenc
17/80
Media transmisyjne - światłowody wielomodowe
w światłowodzie wielomodowym (multi mode fiber) promień światła może
zostać wprowadzony pod różnymi kątami - modami
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
dr inż. Jarosław Forenc
18/80
Media transmisyjne - światłowody jednomodowe
w światłowodzie jednomodowym (single mode fiber) propaguje tylko
jeden mod
fala świetlna o takiej samej długości może rozchodzić się wieloma drogami
pl.wikipedia.org
pl.wikipedia.org
źródło światła: dioda laserowa
źródło światła: diody LED
długość fali świetlnej (1300 nm i 1500 nm)
długość fali świetlnej (850 nm i 1300 nm)
długość kabla: do 100 km
ze względu na dyspersję maksymalna długość kabla to 5 km
wyższy koszt od światłowodów wielomodowych
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
dr inż. Jarosław Forenc
19/80
Media transmisyjne - światłowody
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
dr inż. Jarosław Forenc
20/80
Model ISO/OSI
złącza światłowodowe
w latach 70-tych nie istniały ogólne standardy dotyczące sieci
komputerowych - każdy producent tworzył własną sieć
w 1984 roku Międzynarodowa Organizacja Normalizacyjna (ISO) przyjęła
model sieciowy, dzięki któremu producenci mogliby opracowywać
współpracujące ze sobą rozwiązania sieciowe
złącze ST
wybrane standardy transmisji
10Base-FL
- 10 Mb/s, rzadko spotykany
100Base-FX
- 100 Mb/s, do 2 km
1000Base-LX
- 1 Gb/s, do 10 km, jednomodowy
10GBase-ZR
- 10 Gb/s, do 80 km, jednomodowy
złącze SC
ISO OSI RM - ISO Open Systems Interconnection Reference Model
głównym założeniem modelu jest podział systemów sieciowych
na współpracujące ze sobą 7 warstw (layers)
podczas procesu komunikacji, w każdej warstwie, układy sprzętowe
lub oprogramowanie wykonują pewne niezależne zadania
struktura tworzona przez warstwy nazywana jest stosem protokołu
wymiany danych
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
dr inż. Jarosław Forenc
21/80
dr inż. Jarosław Forenc
22/80
Model ISO/OSI
Nadawca
N
Odbiorca
O
Model ISO/OSI
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
Dane 7
+
Dane 7
Nagł. 7
Dane 7
Dane 7
Dane 7
Warstwa
aplikacji
Nagł. 7
Nagł. 7
Nagł. 7
Nagł. 7
+
Nagł. 6
Nagł. 6
+
Dane 7
+
Nagł. 7
Dane 7
+
Nagł. 6
Nagł. 7
Dane 7
+
Nagł. 5
Nagł. 6
Nagł. 7
Dane 7
+
Nagł. 4
Nagł. 5
Nagł. 6
Nagł. 7
Dane 7
+
Nagł. 3
Nagł. 4
Nagł. 5
Nagł. 6
Nagł. 7
Dane 7
Nagł. 2
Nagł. 3
Nagł. 4
Nagł. 5
Nagł. 6
Nagł. 7
Dane 7
Warstwa
prezentacji
Nagł. 6
Nagł. 6
+
Nagł. 7
Nagł. 5
Nagł. 5
Nagł. 5
+
Nagł. 6
Warstwa
sesji
Nagł. 4
Nagł. 4
+
Nagł. 5
Warstwa
transportowa
Nagł. 4
Warstwa
sieciowa
Nagł. 3
Dane 7
Nagł. 7
Nagł. 6
Nagł. 5
Nagł. 4
Nagł. 3
+
Dane 7
Nagł. 7
Nagł. 6
Nagł. 5
Nagł. 4
Nagł. 3
Nagł. 2
Nagł. 2
+
Nagł. 3
Warstwa
łącza danych
Nagł. 1
Warstwa
fizyczna
Nagł. 2
Nagł. 1
+
wierzchołek stosu odpowiada usługom świadczonym bezpośrednio
użytkownikowi przez aplikacje sieciowe, zaś dół odpowiada sprzętowi
realizującemu transmisję sygnałów
przy przechodzeniu do warstwy niższej, warstwa dokleja do otrzymanych
przez siebie danych nagłówek z informacjami dla swojego odpowiednika
na odległym komputerze (odbiorcy)
dane przekazywane są od wierzchołka stosu nadawcy przez kolejne
warstwy, aż do warstwy pierwszej, która przesyła je do odbiorcy
warstwa na odległym komputerze interpretuje nagłówek i jeśli trzeba
przekazać dane wyżej - usuwa nagłówek i przekazuje dane dalej
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
dr inż. Jarosław Forenc
23/80
Model ISO/OSI a model TCP/IP
7 Warstwa aplikacji
Warstwa aplikacji
4
4 Warstwa transportowa
Warstwa transportowa
3
3 Warstwa sieciowa
Warstwa Internetu
2
2 Warstwa łącza danych
Warstwa
dostępu do sieci
1
5 Warstwa sesji
1 Warstwa fizyczna
Model ISO/OSI
Model TCP/IP
dr inż. Jarosław Forenc
24/80
Model TCP/IP
w przypadku protokołu TCP/IP tworzącego Internet stosuje się
uproszczony model czterowarstwowy
6 Warstwa prezentacji
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
z poszczególnymi warstwami związanych jest wiele protokołów
protokół - zbiór zasad określających format i sposób przesyłania danych
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
dr inż. Jarosław Forenc
25/80
Warstwa dostępu do sieci
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
dr inż. Jarosław Forenc
26/80
Warstwa dostępu do sieci
standard IEEE 802.3 (Ethernet) - 1985 r.
format ramki Ethernet II (DIX)
metody transmisji danych (wykrywanie kolizji)
ALOHA
CSMA (Carrier Sense, Multiple Access)
CSMA/CD (Carrier Sense, Multiple Access with Collision Detection)
norma IEEE 802.3 (odmiana CSMA/CD)
Preambuła - naprzemienny ciąg bitów 1 i 0 informujący o ramce
dane przesyłane są w postaci ramek Ethernet
Adres docelowy / źródłowy - 6-bajtowe liczby będące adresami
sprzętowymi komunikujących się interfejsów sieciowych
(MAC - Media Access Control)
typy ramek Ethernet
Ethernet wersja 1 - nieużywana
Ethernet wersja 2 (Ethernet II) - ramka DIX (DEC, Intel, Xerox), 1978 r.,
obecnie najczęściej stosowana
IEEE 802.x LLC (Logical Link Control)
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
dr inż. Jarosław Forenc
27/80
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
dr inż. Jarosław Forenc
Warstwa dostępu do sieci
Warstwa dostępu do sieci
format ramki Ethernet II (DIX)
format ramki Ethernet II (DIX)
Typ - numer protokołu warstwy wyższej, która odbierze dane
po zakończeniu obróbki przez standard Ethernet
wysłanie ramki wymaga znajomości adresu MAC odbiorcy
Dane - przesyłane dane, jeśli ilość danych jest mniejsza od 46 bajtów,
wprowadzane jest uzupełnienie jedynkami (bitowo)
FCS (Frame Check Sequence) - 4 bajty kontrolne (CRC - Cyclic
Redundancy Check) wygenerowane przez interfejs nadający
i sprawdzane przez odbierający
do określenia adresu MAC na podstawie numeru IP stosowany jest
protokół ARP (Address Resolution Protocol)
protokół ARP stosowany jest także do zapobiegania zdublowaniu
adresów IP
aktualną tablicę translacji ARP wyświetla polecenie: arp -a
28/80
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
dr inż. Jarosław Forenc
29/80
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
Warstwa dostępu do sieci
Warstwa dostępu do sieci
Karta sieciowa
Konwerter nośników
NIC (Network Interface Card)
30/80
urządzenie umożliwiające łączenie różnych
mediów transmisyjnych ze sobą,
np. światłowodu i skrętki
urządzenie łączące komputer z siecią
kontroluje dostęp komputera do medium
posiada unikalny numer MAC
Regenerator (repeater
(repeater))
pracuje w drugiej warstwie modelu ISO/OSI
wzmacniania i naprawia
zniekształcenia sygnałów w sieci
Modem
zazwyczaj ma jeden port wejściowy
i jeden port wyjściowy
urządzenie służące do połączenia
komputerów, najczęściej poprzez
sieć telefoniczną
stosowany w celu zwiększenia
zasięgu sieci ponad limit długości
kabla
modemy dzielą się na zewnętrzne
i wewnętrzne
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
dr inż. Jarosław Forenc
pracuje w pierwszej warstwie modelu ISO/OSI
dr inż. Jarosław Forenc
31/80
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
Warstwa dostępu do sieci
Warstwa dostępu do sieci
Koncentrator (hub)
Most (bridge
(bridge))
dr inż. Jarosław Forenc
32/80
urządzenie łączące wiele urządzeń sieciowych w sieci komputerowej
o topologii gwiazdy
urządzenie łączące dwie lub więcej sieci lub segmenty sieci dokonując
filtrowania ruchu sieciowego
nie analizuje ramek pod kątem adresu MAC oraz IP
analizując numery MAC określa, czy dane należy przesłać do innego
segmentu sieci
pracuje w pierwszej warstwie modelu ISO/OSI
aktywny - regeneruje otrzymany
sygnał i przesyła na wszystkie porty
pasywny - nie regeneruje sygnału,
a tylko przesyła na wszystkie porty
inteligentny - umożliwia zarządzanie
ruchem w sieci
pracuje w drugiej warstwie modelu ISO/OSI
zazwyczaj ma jeden port
wejściowy i jeden port wyjściowy
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
dr inż. Jarosław Forenc
33/80
Warstwa dostępu do sieci
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
dr inż. Jarosław Forenc
34/80
Warstwa Internetu
początek Internetu: sieć ARPANET (1969, USA), łączyła 4 komputery
na różnych uniwersytetach
Przełącznik (switch
(switch))
urządzenie łączące segmenty sieci komputerowej
najważniejsza część Internetu to protokół IP (Internet Protocol):
pracuje w drugiej warstwie modelu ISO/OSI
definiuje format i znaczenie pól datagramu IP
analizuje numery MAC i przesyła odebrane dane tylko na port,
do którego podłączony jest odbiorca
określa schemat adresowania stosowany w Internecie
zapewnia wybór trasy przesyłania datagramu (routing)
zmniejsza obciążenie sieci lokalnej
zapewnia podział danych na fragmenty i łączenie ich w całość
w przypadku sieci nie akceptujących rozmiaru przenoszonych danych
cechy protokołu:
bezpołączeniowy - nie ustanawia połączenia i nie sprawdza
gotowości odbiorcy danych
niepewny - nie zapewnia korekcji i wykrywania błędów transmisji
dr inż. Jarosław Forenc
35/80
dr inż. Jarosław Forenc
36/80
Warstwa Internetu - datagram IP
Nagłówek
Warstwa Internetu - datagram IP
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
Wersja (Version) - numer wersji protokołu IP (IPv4, nowsza - IPv6)
IHL (Internal Header Length) - długość nagłówka w 32-bitowych słowach
Typ usługi (Type of Service) - opisuje wymaganą jakość usługi
(pole najczęściej ignorowane przez routery)
Długość całkowita (Datagram Length) - długość pakietu IP w bajtach
(Nagłówek + Dane)
Nagłówek
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
Identyfikator (Identification), Flagi (Flags), Przesunięcie fragmentacji
(Fragment offset) - pola używane w przypadku podziału datagramu
na części (fragmenty)
Czas życia TTL (Time-to-Live) - maksymalny czas (w sekundach)
pozostawania datagramu w Internecie, przejście datagramu przez
każdy router zmniejsza wartość o 1
Protokół (Protocol) - numer protokołu warstwy wyższej, do którego
zostaną przekazane dane z tego pakietu
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
dr inż. Jarosław Forenc
37/80
Warstwa Internetu - datagram IP
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
dr inż. Jarosław Forenc
38/80
Warstwa Internetu - adresy IP
Nagłówek
adres IP komputera zajmuje 4 bajty (32-bitowa liczba całkowita)
najczęściej zapisywany jest w postaci 4 liczb z zakresu od 0 do 255 każda,
oddzielonych kropkami, np.
adres składa się z dwóch części:
Suma kontrolna (Header checksum) - suma kontrolna nagłówka
identyfikującej daną sieć w Internecie
Adres źródła (Source Address) - adres IP źródła danych
identyfikującej konkretny komputer w tej sieci
Adres przeznaczenia (Destination Address) - adres IP odbiorcy danych
do roku 1997 wyróżnienie części określającej sieć i komputer w sieci
następowało na podstawie tzw. klas adresów IP
Opcje (Options) - dodatkowe opcje
Uzupełnienie (Padding) - uzupełnienie pola opcji do pełnego słowa
(32 bitów)
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
dr inż. Jarosław Forenc
39/80
Warstwa Internetu - klasy adresów IP
Klasa A
Klasa B
Zakres IP
sieć (max. 126)
od: 1.0.0.0
do: 126.255.255.255
10nnnnnn.nnnnnnnn.hhhhhhhh.hhhhhhhh
sieć (max. 16 382)
Klasa C
110nnnnn.nnnnnnnn.nnnnnnnn.hhhhhhhh
sieć (max. 2 097 150)
Klasa D
komputer (max. 65 534)
komputer (max. 254)
1110xxxx.xxxxxxxx.xxxxxxxx.xxxxxxxx
multicast - adresy transmisji grupowej, np. wideokonferencje
Klasa E
1111xxxx.xxxxxxxx.xxxxxxxx.xxxxxxxx
zarezerwowane na potrzeby badawcze
dr inż. Jarosław Forenc
40/80
Warstwa Internetu - maska sieci
0nnnnnnn.hhhhhhhh.hhhhhhhh.hhhhhhhh
komputer (max. 16 777 214)
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
Zakres IP
od: 128.1.0.0
do 191.255.255.255
do:
191 255 255 255
Zakres IP
klasy adresów IP zostały zastąpione bezklasowym routowaniem
międzydomenowym CIDR (Classless Inter-Domain Routing)
do określenia liczby bitów odpowiadających sieci i liczby bitów
odpowiadających hostowi stosowana jest maska sieci
IP:
212.33.95.114
11010100.00100001.01011111.01110010
255.255.255.192
11111111.11111111.11111111.11000000
Adres sieci:
212.33.95.64
11010100.00100001.01011111.01000000
Broadcast:
212.33.95.127
11010100.00100001.01011111.01111111
212.33.95.65
11010100.00100001.01011111.01000001
212.33.95.126
11010100.00100001.01011111.01111110
Maska:
od: 192.0.0.0
do: 223.255.255.255
Zakres IP
od: 224.0.0.0
do: 239.255.255.255
Zakres IP
od: 240.0.0.0
do: 255.255.255.255
Pierwszy host:
Ostatni host:
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
dr inż. Jarosław Forenc
41/80
Warstwa Internetu - adresy IP
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
dr inż. Jarosław Forenc
42/80
Warstwa Internetu - routing datagramów IP
adresy specjalne
host A przesyła dane do hosta B stosując protokół IP (A zna adres IP B)
A sprawdza czy B należy do tej samej sieci (na podstawie swojego numeru
IP i maski sieci)
jeśli TAK, to A rozsyła ramkę rozgłoszeniową z zapytaniem protokołu ARP
o adres MAC komputera B
B powiadamia A o swoim adresie MAC
adresy prywatne (nierutowalne) - nie są przekazywane przez routery
A zapisuje adres MAC B w swojej tablicy ARP (przy kolejnej transmisji
danych pomiędzy tymi hostami, adres MAC zostanie odczytany z tej tablicy)
A wysyła datagram z danymi do B
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
dr inż. Jarosław Forenc
43/80
Warstwa Internetu - routing datagramów IP
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
dr inż. Jarosław Forenc
44/80
Warstwa Internetu - router
jeśli B NIE należy do tej samej sieci co A, to A wysyła pakiet na adres
lokalnej bramki (gateway) - określanej jako router
urządzenie sprzęgające sieci, funkcjonuje w warstwach: fizycznej, łącza
danych i sieciowej modelu ISO/OSI
A rozsyła ramkę rozgłoszeniową z zapytaniem ARP o adres MAC routera
odczytuje adresy z datagramów IP i odpowiednio je przekierowuje
(routowanie, trasowanie, przekierowanie)
router powiadamia A o swoim adresie MAC, A zapisuje MAC w tablicy ARP
A wysyła datagram z danymi przeznaczonymi dla B, zaadresowany
adresem MAC routera
pozwala na sterowanie przepustowością sieci, zapewnia pełną izolację
segmentów sieci
router podejmuje decyzję o przekazaniu datagramu na interfejs
podłączony do sieci B
może być wykorzystany jako urządzenie tłumaczące adresy sieciowe
(NAT - Network Address Translation) - umożliwia przesyłanie pakietów
z sieci lokalnej o adresach z zakresu nierutowalnego do Internetu
router rozsyła bramkę rozgłoszeniową z zapytaniem ARP o MAC
komputera B na interfejs podłączony do sieci B
może pełnić funkcję firewalla
B powiadamia router o swoim adresie MAC, router zapisuje adres MAC
komputera B w swojej tablicy ARP
router wysyła datagram z danymi do B
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
dr inż. Jarosław Forenc
45/80
Warstwa transportowa - porty
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
dr inż. Jarosław Forenc
46/80
Warstwa transportowa - porty
protokoły warstwy transportowej zapewniają dostarczenie danych
do konkretnych aplikacji (procesów) w odpowiedniej kolejności i formie
identyfikacja przynależności danej transmisji do procesu odbywa się
na podstawie numeru poru (liczba 16-bitowa, zakres: 0 ÷ 65535)
numery portów przydzielane są przez organizację IANA (Internet
Assigned Numbers Authority):
wybrane dobrze znane porty:
port
protokół
port
protokół
20
FTP (dane)
53
DNS
21
FTP (polecenia)
80
HTTP (www)
22
SSH
110
POP3 (mail)
0 ÷ 1023 - zakres zarezerwowany dla tzw. dobrze znanych portów
(well-know port number)
23
Telnet
119
NNTP (news)
1024 ÷ 49151 - porty zarejestrowane (registered)
25
SMTP (mail)
143
IMAP (mail)
49152 ÷ 65535 - porty dynamiczne/prywatne (dynamic/private)
połączenie numeru IP komputera i portu, na którym odbywa się
komunikacja, nazywa się gniazdem (socket)
w warstwie transportowej funkcjonują dwa podstawowe protokoły:
UDP (User Datagram Protocol)
TCP (Transmission Control Protocol)
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
dr inż. Jarosław Forenc
47/80
Warstwa transportowa - protokół UDP
UDP wykonuje usługę bezpołączeniowego dostarczania datagramów:
nie ustanawia połączenia
nie sprawdza gotowości odbiorcy do odebrania przesyłanych danych
nie sprawdza poprawności dostarczenia danych
jednostką przesyłanych danych jest pakiet
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
dr inż. Jarosław Forenc
48/80
Warstwa transportowa - protokoły UDP i TCP
UDP stosowany jest, gdy ilość przesyłanych danych w pakiecie jest
niewielka
pakiet UDP zawiera bardzo mało informacji kontrolnych, zatem opłacalne
jest jego stosowanie w powiązaniu z aplikacjami samodzielnie dbającymi
o kontrolę poprawności transmisji
TCP (Transmission Control Protocol) jest protokołem niezawodnym
i połączeniowym, działa na strumieniach bajtów
TCP sprawdza czy dane zostały dostarczone poprawnie i w określonej
kolejności
Port źródłowy (Source port) - numer portu nadawcy
Port przeznaczenia (Destination port) - numer portu odbiorcy
Długość (Length) - całkowita długość pakietu w bajtach (nagłówek + dane)
Suma kontrolna (Checksum) - tworzona na podstawie nagłówka i danych
jednostką przesyłanych danych stosowaną przez TCP jest segment
dr inż. Jarosław Forenc
49/80
dr inż. Jarosław Forenc
50/80
Warstwa Internetu - segment TCP
Nagłówek
Warstwa Internetu - segment TCP
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
Nagłówek
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
Port źródłowy (Source port) - numer portu nadawcy
Przesunięcie (Data offset) - liczba 32-bitowych słów w nagłówku TCP
Port przeznaczenia (Destination port) - numer portu odbiorcy
Zarezerwowane (Reserved) - zarezerwowane do przyszłych zastosowań
Numer kolejny (Sequence number) - identyfikator określający miejsce
segmentu przed fragmentacją
Flagi (Flags) - flagi dotyczące bieżącego segmentu
Numer potwierdzenia (Acknowledgment number) - identyfikator będący
potwierdzeniem otrzymania danych przez odbiorcę
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
dr inż. Jarosław Forenc
51/80
Warstwa Internetu - segment TCP
Okno (Window) - określa liczbę bajtów, które aktualnie odbiorca może
przyjąć (0 - wstrzymanie transmisji)
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
dr inż. Jarosław Forenc
52/80
Warstwa aplikacji
Nagłówek
zawiera szereg procesów (usług, protokołów) wykorzystywanych przez
uruchamiane przez użytkownika aplikacje do przesyłania danych
większość usług działa w architekturze klient-serwer (na odległym
komputerze musi być uruchomiony serwer danej usługi)
DNS (Domain Name System)
Suma kontrolna (Checksum) - suma kontrolna nagłówka i danych
świadczy usługi zamieniania (rozwiązywania) nazwy komputera
na jego adres IP
Wskaźnik pilności (Urgent pointer) - jeśli odpowiednia flaga
jest włączona (URG), to informuje o pilności pakietu
Opcje (Options) - dodatkowe opcje
Uzupełnienie (Padding) - uzupełnienie pola opcji do pełnego słowa
(32 bitów)
wykorzystuje port o numerze 53
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
dr inż. Jarosław Forenc
53/80
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
Warstwa aplikacji
Warstwa aplikacji
DNS (Domain Name System)
SMTP (Simple Mail Transfer Protocol)
przestrzeń nazw w Internecie oparta jest na modelu odwróconego drzewa
dr inż. Jarosław Forenc
54/80
umożliwia wysyłanie (ale nie odbieranie) i transport poczty elektronicznej
e-mail poprzez różnorodne środowiska systemowe
podczas przesyłania e-maila każdy serwer SMTP dodaje swój nagłówek
wykorzystuje port o numerze 25
POP (Post Office Protocol)
umożliwia odbieranie poczty ze zdalnego serwera na komputer lokalny
ma wiele ograniczeń: każda wiadomość jest pobierana z załącznikami,
nie pozwala przeglądać oczekujących w kolejce wiadomości
ostatnia wersja to POP3
zarządzaniem przestrzenią nazw domenowych zajmuje się w świecie
ICANN, zaś w Polsce - NASK
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
dr inż. Jarosław Forenc
55/80
Warstwa aplikacji
IMAP (Internet Message Access Protocol)
następca POP3
pozwala na umieszczenie wiadomości na serwerze w wielu folderach
umożliwia zarządzanie wiadomościami (usuwanie, przenoszenie pomiędzy
folderami) oraz ściąganie tylko nagłówków wiadomości
wykorzystuje port o numerze 143
FTP (File Transfer Protocol)
umożliwia wysyłanie i odbiór plików z odległego systemu oraz
wykonywanie operacji na tych plikach
umożliwia dostęp anonimowy - login: anonymous, password: e-mail
dwa tryby pracy: aktywny (active) i pasywny (passive)
wykorzystuje dwa porty: 21 (polecenia), 20 (dane)
wykorzystuje port o numerze 110
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
dr inż. Jarosław Forenc
56/80
Algorytm - definicje
Definicja 1
Skończony, uporządkowany ciąg jasno zdefiniowanych czynności,
koniecznych do wykonania pewnego zadania
Definicja 2
Metoda rozwiązania zadania
Definicja 3
Ściśle określona procedura obliczeniowa, która dla właściwych
danych wejściowych zwraca żądane dane wyjściowe zwane
wynikiem działania algorytmu
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
dr inż. Jarosław Forenc
57/80
Algorytmy
dr inż. Jarosław Forenc
58/80
Podstawowe cechy algorytmu
Słowo „algorytm” pochodzi od nazwiska Muhammada ibn-Musy
al-Chuwarizmiego (po łacinie pisanego jako Algorismus),
matematyka perskiego z IX wieku
Badaniem algorytmów zajmuje się algorytmika
Algorytm może zostać zaimplementowany w postaci programu
komputerowego
Przetłumaczenie algorytmu na wybrany język programowania
nazywane jest też kodowaniem algorytmu
Ten sam algorytm może być zaimplementowany (zakodowany)
w różny sposób przy użyciu różnych języków programowania.
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
dr inż. Jarosław Forenc
Sposoby opisu algorytmów
59/80
Posiadanie danych wejściowych (w ilości większej lub równej
zeru) pochodzących z dobrze zdefiniowanego zbioru
Zwracanie wyniku
Precyzyjne zdefiniowanie (każdy krok algorytmu musi być
jednoznacznie określony)
Poprawność (dla każdego z założonego dopuszczalnego
zestawu danych wejściowych)
Zakończenie działania po skończonej liczbie kroków (powinna
istnieć poprawnie działająca reguła stopu algorytmu)
Efektywność (jak najkrótszy czas wykonania i jak najmniejsze
zapotrzebowanie na pamięć).
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
dr inż. Jarosław Forenc
60/80
Opis słowny algorytmu
1. Opis słowny w języku naturalnym lub w postaci listy kroków
(opis w punktach)
Podanie kolejnych czynności, które należy wykonać,
aby otrzymać oczekiwany efekt końcowy
2. Schemat blokowy
Przypomina przepis kulinarny z książki kucharskiej lub instrukcję
obsługi urządzenia, np.
3. Pseudokod (nieformalna odmiana języka programowania)
4. Wybrany język programowania
Algorytm:
Tortilla („Podróże kulinarne” R. Makłowicza)
Dane wejściowe: 0,5 kg ziemniaków, 100 g kiełbasy Chorizo, 8 jajek
Dane wyjściowe: gotowa Tortilla
Opis algorytmu: Ziemniaki obrać i pokroić w plasterki. Kiełbasę pokroić
w plasterki. Ziemniaki wrzucić na gorącą oliwę
na patelni i przyrumienić z obu stron. Kiełbasę wrzucić
na gorącą oliwę na patelni i przyrumienić z obu stron.
Ubić jajka i dodać do połączonych ziemniaków
i kiełbasy. Dodać sól i pieprz. Usmażyć z obu stron
wielki omlet nadziewany chipsami ziemniaczanymi
z kiełbaską.
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
dr inż. Jarosław Forenc
61/80
Lista kroków
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
dr inż. Jarosław Forenc
62/80
Schemat blokowy
Uporządkowany opis wszystkich czynności, jakie należy wykonać
podczas realizacji algorytmu
Zawiera plan algorytmu przedstawiony
w postaci graficznej
Krok jest to pojedyncza czynność realizowana w algorytmie
Na schemacie umieszczane są bloki
oraz linie przepływu (strzałki)
Kroki w algorytmie są numerowane, operacje wykonywane
są zgodnie z rosnącą numeracją kroków
Jedynym odstępstwem od powyższej reguły są operacje skoku
(warunkowe lub bezwarunkowe), w których jawnie określa się
numer kolejnego kroku
START
Wczytaj(wiek)
Blok zawiera informację o wykonywanej
operacji
rok = 2016 - wiek
Linie przepływu (strzałki) określają
kolejność wykonywania bloków algorytmu
Drukuj(rok)
Przykład (instrukcja otwierania wózka-specerówki):
STOP
Krok 1:
Zwolnij element blokujący wózek
Krok 2:
Rozkładaj wózek w kierunku kółek
Krok 3:
Naciskając nogą dolny element blokujący aż do zatrzaśnięcia,
rozłóż wózek do pozycji przewozowej
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
dr inż. Jarosław Forenc
63/80
Schemat blokowy - symbole graficzne
START
STOP
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
dr inż. Jarosław Forenc
64/80
Schemat blokowy - symbole graficzne
blok startowy, początek algorytmu
blok wejścia-wyjścia
wskazuje miejsce rozpoczęcia algorytmu
ma jedno wyjście
poprzez ten blok wprowadzane są (czytane) dane
wejściowe i wyprowadzane (zapisywane) wyniki
może występować tylko jeden raz
ma jedno wejście i jedno wyjście
blok końcowy, koniec algorytmu
blok wykonawczy, blok funkcyjny, opis procesu
wskazuje miejsce zakończenia algorytmu
zawiera jedno lub kilka poleceń (elementarnych
instrukcji) wykonywanych w podanej kolejności
ma jedno wejście
musi występować przynajmniej jeden raz
Opis operacji
instrukcją może być np. operacja arytmetyczna,
podstawienie
ma jedno wejście i jedno wyjście
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
dr inż. Jarosław Forenc
65/80
Schemat blokowy - symbole graficzne
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
dr inż. Jarosław Forenc
66/80
Schemat blokowy - symbole graficzne
blok warunkowy (decyzyjny, porównujący)
linia przepływu, połączenie, linia
wewnątrz bloku umieszcza się warunek logiczny
występuje w postaci linii zakończonej strzałką
na podstawie warunku określana jest tylko
jedna droga wyjściowa
określa kierunek przemieszczania się po
schemacie
połączenia wychodzące z bloku:
łączy inne bloki występujące na schemacie
- T lub TAK - gdy warunek jest prawdziwy
linie pochodzące z różnych części algorytmu
mogą zbiegać się w jednym miejscu
- N lub NIE - gdy warunek nie jest prawdziwy
wyjścia mogą być skierowane na boki lub w dół
podprogram
wywołanie wcześniej zdefiniowanego
fragmentu algorytmu (podprogramu)
ma jedno wejście i jedno wyjście
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
dr inż. Jarosław Forenc
67/80
Schemat blokowy - symbole graficzne
komentarz
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
dr inż. Jarosław Forenc
68/80
Pseudokod i język programowania
Pseudokod:
dodanie do schematu dodatkowego opisu
Pseudokod (pseudojęzyk) - uproszczona wersja języka
programowania
łącznik stronicowy (wewnętrzny)
Często zawiera zwroty pochodzące z języków programowania
połączenie dwóch odrębnych części schematu
znajdujących się na tej samej stronie
łączniki opisywane są etykietami
Zapis w pseudokodzie może być łatwo przetłumaczony na
wybrany język programowania
Opis w języku programowania:
łącznik międzystronicowy (zewnętrzny)
połączenie dwóch odrębnych części schematu
znajdujących się na różnych stronach
łączniki opisywane są etykietami
Zapis programu w konkretnym języku programowania
Stosowane języki: Pascal, C, Matlab (kiedyś - Fortran, Basic)
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
dr inż. Jarosław Forenc
69/80
Algorytm Euklidesa - lista kroków
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
dr inż. Jarosław Forenc
70/80
Algorytm Euklidesa - przykład
NWD(1675,3752) = ?
Algorytm Euklidesa - największy wspólny dzielnik dwóch liczb
Dane wejściowe: niezerowe liczby naturalne a i b
a
b
Dane wyjściowe: NWD(a,b)
1675
3752
b/a = 3752/1675 = 2 reszta 402
b = 402
Kolejne kroki:
1675
402
a/b = 1675/402 = 4 reszta 67
a = 67
1. Czytaj liczby a i b
67
402
b/a = 402/67 = 6 reszta 0
b=0
2. Dopóki a i b są większe od zera, powtarzaj krok 3, a następnie
przejdź do kroku 4
67
0
3. Jeśli a jest większe od b, to weź za a resztę z dzielenia a przez b,
w przeciwnym razie weź za b resztę z dzielenia b przez a
Dzielenie większej liczby przez mniejszą
Zamiana
KONIEC
NWD(1675,3752) = 67
4. Przyjmij jako największy wspólny dzielnik tę z liczb a i b,
która pozostała większa od zera
5. Drukuj NWD(a,b)
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
dr inż. Jarosław Forenc
71/80
Algorytm Euklidesa - schemat blokowy
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
Algorytm Euklidesa - pseudokod
START
NWD(a,b)
while a>0 i b>0
do if a>b
then a ← a mod b
else b ← b mod a
if a>0
then return a
else return b
Wczytaj a,b
a,b > 0
N
T
T
T
a>b
N
a>0
NWD = a
a = a mod b
N
NWD = b
b = b mod a
STOP
dr inż. Jarosław Forenc
72/80
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
dr inż. Jarosław Forenc
73/80
Algorytm Euklidesa - język programowania (C)
dr inż. Jarosław Forenc
74/80
Wartość bezwzględna liczby - schemat blokowy
 x dla x ≥ 0
x =
− x dla x < 0
int NWD(int a, int b)
{
while (a>0 && b>0)
if (a>b)
a = a % b;
else
b = b % a;
if (a>0)
return a;
else
return b;
}
START
START
Wczytaj(x)
Wczytaj(x)
T
T
x
x
0
dr inż. Jarosław Forenc
75/80
Parzystość liczby - schemat blokowy
N
N
0
Drukuj(x)
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
Drukuj(x)
Drukuj(-x)
STOP
STOP
Drukuj(-x)
STOP
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
dr inż. Jarosław Forenc
76/80
Równanie kwadratowe - schemat blokowy
START
START
START
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
ax 2 + bx + c = 0
Wczytaj(x)
Wczytaj(a,b,c)
∆ = b 2 − 4ac
Wczytaj(x)
x<0
delta=b2-4ac
T
∆ > 0:
N
x = -x
N
x mod 2 = 0
T
−b− ∆
−b+ ∆
x1 =
, x2 =
2a
2a
T
x>1
Drukuj
Drukuj
(x - nieparzyste)
(x - parzyste)
T
N
N
x=0
T
x=x-2
STOP
Drukuj
Drukuj
(x - nieparzyste)
(x - parzyste)
STOP
∆ = 0:
x1 = x2 =
delta > 0
N
−b− ∆
2a
−b+ ∆
x2 =
2a
x1 =
T
x1 = x2 =
−b
2a
−b
2a
delta = 0
N
Drukuj(Brak
rozwiązania)
Drukuj(x1,x2)
Drukuj(x1,x2)
STOP
STOP
STOP
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
dr inż. Jarosław Forenc
77/80
START
p ( 0) = r( 0 ) = b − A ⋅ x ( 0)
Wczytaj(n)
2!= 1⋅ 2
3!= 1⋅ 2 ⋅ 3
78/80
START
0!= 1
1!= 1
dr inż. Jarosław Forenc
Metoda CG - schemat blokowy
Silnia - schemat blokowy
n!= 1⋅ 2 ⋅ 3 ⋅ ... ⋅ n
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
α(k ) =
silnia = 1
r ⋅ r( k )
p
T
(k )
T
(k )
⋅ A ⋅ p(k )
x ( k +1) = x ( k ) + α ( k ) ⋅ p ( k )
...
r( k +1) = r( k ) − α ( k ) ⋅ A ⋅ p ( k )
N
n>0
r( k +1) < ε
T
KONIEC
T
Drukuj(silnia)
N
silnia = n · silnia
n=n-1
β ( k +1) =
STOP
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
dr inż. Jarosław Forenc
79/80
Metoda CG - pseudokod + program ((Matlab
Matlab))
T
( k +1)
T
(k )
r
⋅ r( k +1)
r ⋅ r( k )
Informatyka 1, studia niestacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 8
p ( k +1) = r( k +1) + β( k +1) ⋅ p ( k )
dr inż. Jarosław Forenc
Koniec wykładu nr 8
function [xk]=CGM(A,b,xk,eps)
pk = rk = b - A*xk;
dotrk = rk'*rk;
k = 0;
while (1)
k = k + 1;
Ap = A*pk;
alfa = dotrk/(pk'*Ap);
xk = xk + alfa*pk;
rk = rk - alfa*Ap;
dotrk1 = rk'*rk;
if norm(rk,inf)<eps
break
end
pk = rk + (dotrk1/dotrk)*pk;
dotrk = dotrk1;
end
Dziękuję za uwagę!
80/80

Podobne dokumenty