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