Modelowanie i analiza systemów informatycznych
Projekt
Informatyka
Prowadzący dr hab.
inż. Krzysztof Zatwarnicki, prof. PO
Uwagi ogólne
W ramach przedmiotu zajmować będą się państwo zagadnieniami symulacji systemów komputerowych. Zadania wykonywane będą w grupach trzyosobowych. W ramach zajęć, w określonych terminach podanych poniżej, należy oddać do oceny poszczególne etapy pracy. Za zadanie oddane z opóźnieniem o tydzień można otrzymać co najwyżej ocenę 3, zadania oddane w terminie późniejszym nie będą oceniane. Ocena końcowa będzie średnią ocen cząstkowych.
W ramach poszczególnych zadań oddane powinny zostać sprawozdania z każdego etapu pracy. Sprawozdania powinny mieć formą elektroniczną dokumentu PDF+doc i powinny zostać oddane w terminach wskazanych poniżej. Sprawozdania muszą zostać oddane osobiście (nie mogą być przesłane mailem) w obecności wszystkich członków zespołu tworzącego sprawozdanie (osoby, nieobecne przy oddaniu sprawozdania nie otrzymają za nie oceny). Przy oddaniu sprawozdania i wystawieniu za nie oceny prowadzący będzie przepytywał członków poszczególnych zespołów o szczegóły wykonania zadania. Sposób i rzeczowość odpowiedzi na pytania będą miały znaczący wpływ na ocenę za dane sprawozdanie.
Dokumentacja wraz z programami wytworzonymi w danym etapie
pracy powinna zostać wgrana na serwer po jej prezentacji i
ocenie:
Miejsce
wgrywania dokumentów.
Zakres oraz terminy oddania poszczególnych etapów pracy
W ramach
pierwszych zajęć omówione zostaną zadania, które będą wykonywane w
ramach projektu.
Pierwsze zadanie polega na wybraniu jednego z
tematów zadań podanych na końcu dokumentu. Każdy temat realizowany
jest przez daną grupę przez cały semestr. W ramach pierwszego
zadania należy wykonać następujące zadania:
- szczegółowy opis
celu i zakresu badań dla proponowanego rozwiązania (co badać, w jaki
sposób, jakie będą wyniki),
- zaproponować i przedstawić
strukturę badanego systemu (struktura ma być zaprezentowana w
postaci graficznej i opisana).
Należy wykonać sprawozdanie oraz
mówić je z prowadzącym.
Termin
oddania pierwszego sprawozdania: xxx.04.2019 (oddanie w
terminie zajęć).
Przedstawienie
działającego systemu.
Termin
prezentacji: xxx.05.2019(oddanie w terminie zajęć).
Zaprezentować
wyniki przeprowadzonych badań (sprawozdanie oraz omówienie). W
ramach sprawozdania proszę opisać działanie symulatora lub
programu/programów (ich możliwości wykorzystania), opisać sposób
prowadzenia badań, parametry systemu (czasy obsługi lub parametry
rzeczywistego komputera, użyte oprogramowanie), przedstawić
wyniki badań w postaci tabel i wykresów (wszystkie tabele i wykresy
muszą być prawidłowe opisane), przeprowadzić wnikliwą dyskusję nad
wynikami.
Termin oddania
sprawozdania z wynikami badań: xxx.06.2019 (oddanie w terminie
zajęć).
Wystawienie
oceny na podstawie informacji dostarczoej w dokumentacji
zawierającej wykonane oprogramowanie oraz sprawozdanie w podanym
powyżej formacie.
Wpisy:
xxx.06.2019 (w terminie zajęć).
Zadania do wykonania:
Przebadać w programie symulacyjnym napisanym w OMNET ++ działanie klastra serwerów WWW zawierającego serwery WWW wraz z serwerami bazodanowymi (każdemu serwerowi WWW odpowiada jeden serwer bazodanowy) oraz przełącznik webowy dystrybuujący obciążenia zgodnie z algorytmami Round-Robin (karuzelowy), Least Connections (działający ze względu na najmniejszą liczbę połączeń), Weighted Least Connections (ważony ze względu na najmniejszą liczbę połączeń). Przy czym przełącznik webowy posiada funkcjonalność caching proxy, gdzie wielkość pamięci podręcznej przełącznika będzie podlegała zmianie (cache działa zgodnie z algorytmem LRU).
Wykonać badania na rzeczywistym komputerze z zainstalowanym systemem Linux Apache wraz z PHP, ASP .NET Core oraz Python. Należy przebadać szybkość działania stron wykorzystujących wskazane technologie. Do badań należy dobrać odpowiednie narzędzia umożliwiające obciążanie serwera żądaniami HTTP i mierzące czas odpowiedzi.
Przeprowadzić badanie wydajności pracy przeglądarek internetowych (co najmniej 3 przeglądarki dla systemu) w systemach Windows 10, android. Eksperymenty należy przeprowadzić dla różnych stron i technologii. Wszystkie eksperymentu muszą być przeprowadzone z wykorzystaniem narzedzi samodzielnie wykonanych.
Porównać protokoły HTTP w wersjach 1.0, 1.1, 2.0. Sprawdzić szybkość pobierania stron internetowych w wykorzystaniem wskazanych protokołów.
Porównać technologie umożliwiające tworzenie chmór obliczeniowych. Przeprowadzić badania umożliwiające porównanie jakościowe i wydajnościowe wybranych rozwiązań.
Zbudować oprogramowanie z wykorzystaniem bibliotek Pcap/winpcap itp. umożliwiające badanie działania przeglądarek internetowych, w tym umożliwiające określenie liczby równocześnie pobieranych plików, pokazanie na wykresie czasu pobierania całej strony i poszczególnych obiektów, określenie przerwy czasowej w pobieraniu poszczególnych plików w ramach pojedynczego połączenia.
Wykonać symulator z wykorzystania oprogramowania Opnet (Riverbed) prezentującego działanie klastrów serwerów WWW umieszczonych w różnych lokalizacjach geograficznych i obsługujących dużą liczbą klientów. Przeprowadzić symulacje i zaprezentować wyniki.
Przeprowadzić badania szybkości działania oprogramowania napisanego w języku C++, C#, Java, Pascal dla programów wykorzystujących działania typowo matematyczne, wielowątkowe, "okienkowe". Badania można również dla porównania przeprowadzić na urządzeniach mobilnych.
Wykonać symulator z wykorzystaniem oprogramowania NS2/NS3. Symulator powinien symulować działanie sieci komputerowej, w której pracuje jeden serwer WWW podłączony do Internetu siecią 10 Mbs. Na serwerze powinno pracować wielu klientów rozmieszczonych w różnych lokalizacjach z różnymi łączami.
Temat własny.