1 Promotor: prof. dr hab. inż. Andrzej Grzywak mgr inż. Piotr KasprzykBadania efektywności rozwiązań sprzętowych i programowych systemów multimedialnych Promotor: prof. dr hab. inż. Andrzej Grzywak mgr inż. Piotr Kasprzyk
2 Cel pracy Zwiększenie efektywności przesyłania dużych plików Tezy pracy Nie wszystkie systemy operacyjne nadają się w jednakowym stopniu do efektywnej transmisji plików. Zastosowanie buforowania danych z użyciem mechanizmów programowania współbieżnego umożliwia zwiększenie efektywności transmisji danych między pamięciami masowymi dwóch komputerów połączonych siecią.
3 Biblioteka dokumentów multimedialnychSerwer: 2xPIII 1.1 GHz, 1280 MB RAM, RAID 5x36 GB, Fast Ethernet, Gigabit Ethernet, Linux Internet pliki MB Fast Ethernet LAN 100 Mbit/s 80-95 % szybkości sieci przesyłane są pliki z informacjami multimedialnymi transmisje głównie z sieci lokalnej PIV 1.5 GHz, 256 MB RAM, ATA 40 GB, Fast Ethernet, Windows ME Stacje użytkowników
4 Struktura systemu Nadawanie Infrastruktura sieciowa Odbieranieoperacyjny Aplikacja Nadawanie Infrastruktura sieciowa Kontroler dysku Pamięć RAM Karta sieciowa Dysk ja rozpatruję taką fizyczną strukturę rozpatrywanego systemu dane są przekazywane: dysk, kontroler dysku, pamięć RAM, karta sieciowa wymiany elementów sprzętowych nie poprawiły efektywności, dlatego podjęto analizę budowy aplikacji System operacyjny Aplikacja Odbieranie Infrastruktura sieciowa Karta sieciowa Pamięć RAM Kontroler dysku Dysk
5 Praca aplikacji przesyłającej danewhile( są_dane(źródło_danych) ) { ilość_danych = read( źródło_danych, bufor, długość_bufora ); write( ujście danych, bufor, ilość_danych); }
6 Praca aplikacji bez trybów DMADysk CPU Sieć czas
7 Praca aplikacji z trybami DMA (1/3)Dysk CPU Sieć procesor nie jest wykorzystany czas
8 Praca aplikacji z trybami DMA (2/3)Dysk CPU Sieć czas
9 Praca aplikacji z trybami DMA (3/3)Dysk CPU Sieć kwestia doboru rozmiaru bufora – należy przeprowadzić badania czas
10 Aplikacja testowa działanie podobne do rzeczywistych aplikacji przesyłających dane łatwa modyfikacja konstrukcji i parametrów aplikacji operacje dyskowe operacje sieciowe generowanie strumienia danych wykonywanie pomiarów praca pod kontrolą wybranych systemów operacyjnych
11 Metoda analizowania przepływu informacji (1/2)a) sytuacja standardowa – monolityczna aplikacja źrodło aplikacja ujście b) wyodrębnienie obsługi bufora źrodło ujście c) podział na moduły źrodło ujście
12 Metoda analizowania przepływu informacji (2/2)magazyn wejście wyjście broker rozdzielacz
13 Model aplikacji (MBNF)łańcuch = wejście magazynowanie. magazynowanie = magazyn reszta. reszta = ( wyjście | broker magazynowanie | rozdzielacz reszta reszta ).
14 Przykładowe konfiguracje aplikacjistandardowa dwustopniowe buforowanie zwielokrotnienie strumienia danych
15 Nowe terminy przeskok - przekazanie sterowania między funkcjami obsługującymi ogniwa współczynnik proporcjonalności L – iloraz liczby przeskoków do liczby przesłanych bajtów danych, gdy liczba przesłanych bajtów danych dąży do nieskończoności po każdym przeskoku następuje powrót z przeskoku w trakcie przeskoku może, ale nie musi, być przenoszona porcja strumienia danych między modułami L – miara złożoności czasowej aplikacji, gdy przeskoki są operacją dominującą L pozwala oszacować, ile jest potrzebnych przeskoków dla przesłania porcji danych o zadanym rozmiarze
16 Przeskoki i współczynnik L podczas transmisji danych1 2 źródło A B C ujście gdzie: L – średnia liczba przeskoków między modułami dla przesłania jednego bajtu danych B – pojemność bufora magazynu B (w bajtach)
17 Dwa warianty wymiany informacjiwariant I – od pierwszego magazynu: 1 2 3 4 6 źródło A B C D E F ujście 5 G licznik 7 wariant II – od ostatniego magazynu: 6 4 3 2 1 źródło A B C D E F ujście G licznik 5
18 Wariant I wymiany informacji1 2 3 4 6 źródło A B C D E F ujście 5 G licznik 7 gdzie: L – średnia liczba przeskoków między modułami dla przesłania jednego bajtu danych B – pojemność bufora magazynu B (w bajtach) E – pojemność bufora magazynu E (w bajtach) NWD – największy wspólny dzielnik
19 Wariant II wymiany informacji6 4 3 2 1 źródło A B C D E F ujście G licznik 5 gdzie: L – średnia liczba przeskoków między modułami dla przesłania jednego bajtu danych B – pojemność bufora magazynu B (w bajtach) E – pojemność bufora magazynu E (w bajtach) NWD – największy wspólny dzielnik
20 Współczynnik L aplikacjiwariant I: wariant II: gdzie: L – średnia liczba przeskoków między modułami dla przesłania jednego bajtu danych B – pojemność bufora magazynu B (w bajtach) E – pojemność bufora magazynu E (w bajtach) NWD – największy wspólny dzielnik
21 Projekt modułowej budowy aplikacjiprzykładowe 2 warianty wymiany informacji między modułami weryfikacja poprawności przedstawionych wzorów z użyciem symulatora (Scheme) implementacja aplikacji testowej według wariantu I (C++)
22 Badania systemów operacyjnych: MS Windows ME MS Windows 2000MS Windows XP Linux transmisji danych warstwa liniowa: sieć typu LAN (Fast Ethernet) warstwa sieciowa: protokół IP warstwa transportowa: protokół TCP
23 Sposoby pracy aplikacjigenerator pamięć licznik generator pamięć (dysk+licznik) generator pamięć sieć dysk pamięć licznik dysk pamięć sieć sieć pamięć licznik sieć pamięć (dysk+licznik)
24 Odczyt danych z pliku 2GBSieć lokalna Fast Ethernet 100 Mbit/s karta PCI Fast Ethernet karta PCI Fast Ethernet Aplikacja Aplikacja postać uproszczona systemu, w którym występuje zjawisko transmisja za pomocą standardowej aplikacji do przesyłania plików Dysk ATA Dysk ATA Komputer Komputer
25 Czas odczytu danych z pliku 2GBbufor
26 Sieciowa transmisja danych (bufor 512B, plik 2GB)Sieć lokalna Fast Ethernet 100 Mbit/s karta PCI Fast Ethernet karta PCI Fast Ethernet Aplikacja Aplikacja postać uproszczona systemu, w którym występuje zjawisko transmisja za pomocą standardowej aplikacji do przesyłania plików Dysk ATA Dysk ATA Komputer Komputer
27 Liczby ramek o określonej długości (dane po 512 B)System operacyjny
28 Sklejanie danych w Microsoft TCPdane wejściowe Dane Dane Dane Max. rozmiar ramki nierówne rozmiary przesyłanych ramek R1 R2
29 Opóźnienia przy sieciowej transmisji pliku (bufor 10 KB)
30 Opóźnienia przy sieciowej transmisji pliku (bufor 100 KB)
31 Opóźnienia przy sieciowej transmisji pliku (bufor 1000 KB)
32 Opóźnienia przy sieciowej transmisji pliku (100 buf. 10KB)
33 Przesyłanie pliku 2GB przez siećSieć lokalna Fast Ethernet 100 Mbit/s karta PCI Fast Ethernet karta PCI Fast Ethernet Aplikacja Aplikacja postać uproszczona systemu, w którym występuje zjawisko transmisja za pomocą standardowej aplikacji do przesyłania plików Dysk ATA Dysk ATA Komputer Komputer
34 Szybkość zapisu pliku 2GB przesyłanego przez siećbuforowanie
35 Efektywność transmisji pliku 2GB przy zmianie sposobu buforowaniaStandardowa aplikacja 4000 buforów po 8KB MS Windows 2000 75% 99% Linux 95%
36 Wyniki badań Linux jest stabilny podczas transmisjisystemy Windows są nieprzewidywalne moja metoda – uzyskano ponad 99% efektywności sieciowej transmisji plików
37 Sposób wykorzystania nowej metody w projektowaniu systemów transmisji plikówprzebadanie sprzętowych elementów systemu (dyski, sieć) za pomocą aplikacji skonstruowanej podobnie do mojej napisać aplikację według zasad konstrukcji modułowej dobrać system operacyjny
38 Wnioski udowodniłem tezy rozprawy doktorskiejstworzyłem metodę poprawiającą transmisję plików o 4-24%
39
40
41
42
43
44
45 Geneza pracy współpraca z Ośrodkiem Szkolno-Wychowawczym dla Niewidomych Dzieci w Laskach badania prowadzone przez: prof. Mrózek, prof. Grzywak, dr Winiarczyk, Piotr Brzoza
46 Transmisja plików systemy operacyjne:MS Windows ME, 2000 i XP Linux protokół TCP w sieci Fast Ethernet pliki o dużej objętości: MB transmisja typu punkt-punkt
47 Transmisja plików Serwer Internet LAN 100 Mbit/s Stacje użytkowników80-95 % szybkości sieci transmisje dyskowe były szybsze od transmisji sieciowej Stacje użytkowników
48 Sieć lokalna Fast EthernetStanowisko badawcze Sieć lokalna Fast Ethernet 100 Mbit/s Analizator 75 % szybkości sieci Aplikacja Dysk ATA 20 GB Komputer Pentium III 866 MHz, 128 MB RAM, Windows 2000 karta PCI Fast Ethernet Aplikacja Dysk ATA 20 GB Komputer Pentium III 866 MHz, 128 MB RAM, Windows 2000 karta PCI Fast Ethernet postać uproszczona systemu, w którym występuje zjawisko transmisja za pomocą standardowej aplikacji do przesyłania plików
49 Opóźnienia przy sieciowej transmisji pliku ( bufor 10 KB)
50 Nowa koncepcja organizacji przesyłania danycha) sytuacja standardowa – monolityczna aplikacja źrodło aplikacja ujście b) wyodrębnienie obsługi bufora źrodło ujście c) podział na moduły źrodło ujście
51 Moduły używane do budowy aplikacji – nowa koncepcjamagazyn wejście wyjście broker rozdzielacz
52 Badania doświadczalneelementy stałe: procesor, dysk, kontroler dyskowy, pamięć, karta sieciowa, infrastruktura sieciowa elementy zmieniane: system operacyjny (Linux, MS Windows ME, 2000 i XP), budowa aplikacji, wielkość bufora
53
54
55
56 Projektowanie systemów transmisji plikówdobór elementów sprzętowch (dysk, sieć) zapewniających żądaną szybkość transmisji dobór rozmiaru i sposobu działania buforów aplikacji dla zapewnienia płynnej transmisji dobór systemu operacyjnego (Linux – bardziej stabilny)
57 Podsumowanie wykazanie postawionych tez ocena systemu operacyjnegomożliwość poprawienia aplikacji do transmisji plików
58 Aplikacja do przesyłania danychstanowisko komputerowe aplikacja sieć dysk
59 Czynniki wpływające na efektywność transmisji danych dla komputera PCsprzęt oprogramowanie system operacyjny aplikacje użytkowe
60 Metoda badań - aplikacja testowamodelowanie pracy rzeczywistych aplikacji do przesyłania plików przez sieć wymiana danych przez połączenia TCP odczyt i zapis informacji do pliku generowanie danych testowych pomiar prędkości przesyłania danych
61 Prędkość przesyłania danych15 MB/s dysk 11.3 MB/s 9.9 MB/s sieć transmisja pliku
62 Plan wystąpienia cel pracy przyczyna problemusposób dojścia do wyjaśnienia problemu rozwiązanie problemu badania i implementacje wnioski podsumowanie
63 Plan wystąpienia Geneza pracy Zauważenie zjawiska TezyMetoda rozwiązania problemu Podsumowanie
64 Sieć lokalna Fast EthernetStanowisko badawcze Sieć lokalna Fast Ethernet 100 Mbit/s karta PCI Fast Ethernet karta PCI Fast Ethernet Aplikacja Aplikacja postać uproszczona systemu, w którym występuje zjawisko transmisja za pomocą standardowej aplikacji do przesyłania plików Dysk ATA Dysk ATA Komputer Komputer