Odevzdané protokoly OO Konfigurace počítačů ooo Měření end-to-end propustnosti sítě oooooooooooooooooooo Zpracování experimentálních dat ooooooooooooooooooooooo Měření propustnosti sítě Petr Holub PB156cv 2021-03-22 □ Q, O 1/70 Odevzdané protokoly OO Konfigurace počítačů ooo Měření end-to-end propustnosti sítě oooooooooooooooooooo Zpracování experimentálních dat ooooooooooooooooooooooo Cíle cvičení ► Získat zpětnou vazbu na tvorbu protokolů na základě protokolů odevzdaných po minulém cvičení. ► Získat zkušenosti se základním testováním výkonu sítě. ► Vyzkoušet si základy aplikované statistiky pro vyhodnocování výsledků. □ Q, O 2/70 Odevzdané protokoly Konfigurace počítačů Měření end-to-end propustnosti sítě Zpracování experimentálních dat •O ooo oooooooooooooooooooo ooooooooooooooooooooooo Odevzdané protokoly □ Q, O 3/70 Odevzdané protokoly O* Konfigurace počítačů ooo Měření end-to-end propustnosti sítě oooooooooooooooooooo Zpracování experimentálních dat ooooooooooooooooooooooo Co by měl protokol obsahovat? ► Vše co je nezbytné k reprodukování experimentu: ■ písemná formulace hypotézy/otázky, ■ dokumentace návrhu experimentu, ■ dokumentace provedení experimentu vč. podmínek, které by mohly mít vliv na výsledky, ■ dokumentace analýzy dat, ■ vyvození závěrů. 4/70 Odevzdané protokoly Konfigurace počítačů Měření end-to-end propustnosti sítě Zpracování experimentálních dat OO »00 oooooooooooooooooooo ooooooooooooooooooooooo Konfigurace počítačů □ Q, O 5/70 Odevzdané protokoly OO Konfigurace počítačů 090 Měření end-to-end propustnosti sítě oooooooooooooooooooo Zpracování experimentálních dat ooooooooooooooooooooooo Práce s virtuálními stroji ► Každý bude mít přiřazené 2 virtuální stroje ► Správa přes https://stratus.fi.muni.cz/ ■ přihlášení přes fakultní login/heslo ■ možnost startu/restartu stroje, připojení přes VNC konzolu v prohlížeči ■ root heslo unixfi_provided ■ stroje se automaticky restartují to výchozího nastavení mezi 23:00 a 02:00 Odevzdané protokoly OO Konfigurace počítačů 090 Měření end-to-end propustnosti sítě oooooooooooooooooooo Zpracování experimentálních dat ooooooooooooooooooooooo Práce s virtuálními stroji ► Každý bude mít přiřazené 2 virtuální stroje ► Správa přes https://stratus.fi.muni.cz/ Dashboard Instances ::: vms ^ Services 30 Q, O 10/70 Odevzdané protokoly OO Konfigurace počítačů 090 Měření end-to-end propustnosti sítě oooooooooooooooooooo Zpracování experimentálních dat ooooooooooooooooooooooo Práce s virtuálními stroji ► Gateway ssh netadm-gw.fi.muni.cz ■ potřeba být v univerzitní síti - VPN https://it.muni.cz/sluzby/vpn ■ přihlášení přes fakultní login/heslo ■ dohledání VM podle ARP $ ssh xholub2@netadm-gw.fi.muni . cz 2 xholub2@netadm-gw.fi.muni.cz's i password: 4 I | Hosted at Stratus.fi.muni.cz. i Cloud platform provided by unix@fi.muni 6 I Last login: Sat Mar 6 09:36:07 2021 from 147.251.55.142 8 [xholub2@netadm-gw ~]$ arp -a | fgrep 02:f1:01:f9:00:01 ? (10.0.1.10) at 02:fl:01:f9:00 :01 [ether] on ethl 10 [xholub2@netadm-gw ~]$ □ >T)<\(y 11/70 Odevzdané protokoly Konfigurace počítačů Měření end-to-end propustnosti sítě Zpracování experimentálních dat OO 090 oooooooooooooooooooo ooooooooooooooooooooooo Práce s virtuálními stroji ► Přiražení virtuálů najdete také v poznámkovém bloku v ISu ► Nezapomeňte vypnout firewalld na obou strojích service firewalld stop ■ Pokud uvidíte chybu typu Error: connect: No routě to host a přitom ping funguje, tak jste na to nejspíše zapomněli ;) □ >0 Q, O 12/70 Odevzdané protokoly OO Konfigurace počítačů 009 Měření end-to-end propustnosti sítě oooooooooooooooooooo Zpracování experimentálních dat ooooooooooooooooooooooo Využití SSH tunelu ► Možnost postavit si SSH tunel ssh -L 2222:10.0.yy.10:22 xlogin@netadm-gw.fi.muni.cz ■ za 2222 doplňte libovolný volný port ■ za yy si doplňte svoji podsít - a tohle nechejte běžet - zbytek ve druhém terminálu ssh -p 2222 root@localhost touch /tmp/soubor scp -P 2222 localhost:/tmp/soubor □ >0 Q, O 13/70 Odevzdané protokoly OO Konfigurace počítačů ooo Měření end-to-end propustnosti sítě •ooooooooooooooooooo Zpracování experimentálních dat ooooooooooooooooooooooo Měření end-to-end propustnosti sítě □ >0 Q, O 14/70 Odevzdané protokoly OO Konfigurace počítačů ooo Měření end-to-end propustnosti sítě 0*000000000000000000 Trocha "teorie" Zpracování experimentálních dat ooooooooooooooooooooooo ► Omezení propustnosti spojů ► Omezení propustnosti síťových prvků ► Omezení propustnosti koncových zařízení ► Závislost na velikosti paketů □ >0 Q, O 15/70 Odevzdané protokoly OO Konfigurace počítačů ooo Měření end-to-end propustnosti sítě OO0OOOOOOOOOOOOOOOOO Zpracování experimentálních dat ooooooooooooooooooooooo Provádění měření ► iperfUDP iperf -s -u -i 1 -l 8500 iperf -u -c hostname -i 1 -l 8500 -b 10M ► iperf TCP iperf -s -i 1 -w 8M iperf -c hostname -i 1 -w 8M ► netperfUDP netserver -n 4 netperf -H 10.0.10.1 -n 4 -t UDP.STREAM -- -s 8M -S 8M -m nnnn -M nnnn ► netperf TCP netserver -n 4 netperf -H 10.0.10.1 -n 4 -t TCP_STREAM -- -s 8M -S 8M -m nnnn -M nnnn □ Q> O 16/70 Odevzdané protokoly OO Konfigurace počítačů ooo Měření end-to-end propustnosti sítě ooo»oooooooooooooooo Zpracování experimentálních dat ooooooooooooooooooooooo Provádění měření ► nuttcp - trocha zábavy: for h in 1.2.3.4 2.3.4.5; do for j in r t; do echo 1111; if [ = "r" ]; then echo "From $h to server"; else echo "From server to $h"; fi; (for i in 200 400 600 800; do ./nuttcp -i5 -T10 -u -R${i}M -v -v \ -${]} ${h}; done ) | fgrep loss ; done; done □ >0 Q, O 17/70 Odevzdané protokoly OO Konfigurace počítačů ooo Měření end-to-end propustnosti sítě oooo»»oooooooooooooo Zpracování experimentálních dat ooooooooooooooooooooooo Základy zpracování v R I ► Použijte buď samotné R1 nebo RStudio2 ► Jak instalovat balíky: install. packages (11 ply r11) install.packages("tidyverse") install.packages("Rmisc") install. packages!11 kSamples") install.packages("anomalize") ► Nahrání dat např. nut <- scan("runl/nuttcp-forth-128.values", what=numeric()) □ >0 Q, O 18/70 Odevzdané protokoly OO Konfigurace počítačů ooo Měření end-to-end propustnosti sítě oooo»«oooooooooooooo Zpracování experimentálních dat ooooooooooooooooooooooo Základy zpracování v R II ► Řetězení zpracování pomocí tidyverse s <- c("32", "64", "128", "256", "512", "1024") file_names <- pasteO("runl/nuttcp-forth-", s, ".values") nuts <- t(do.call(rbind,lapply(file_names,scan,what=as.numeric()))) colnames(nuts) <- s nuts <- data.frame(nuts) nuts %>% slice(2:n()) %>% lapply(CI) nuts %>% lapply(shapiro.test) 1https://www.r-project.org/ 2https://rstudio.com/ Odevzdané protokoly OO Konfigurace počítačů ooo Měření end-to-end propustnosti sítě OOOOOO0OOOOOOOOOOOOO Zpracování experimentálních dat ooooooooooooooooooooooo Testy normality rozdělení ► test normality Shapiro-Wilk > Shapiro.test(nut) W = 0.63028, p-value = 4.978e-ll > Shapiro.test(nut[2:60]) W = 0.98598, p-value = 0.7302 ► nulová hypotéza: rozdělení je normální ► pokud je p-hodnota < .05, hypotézu zamítneme ► pokud je p-hodnota > .05, hypotézu nemůžeme zamítnout ► proč je hranice p-hodnoty 0.05? Odevzdané protokoly OO Konfigurace počítačů ooo Měření end-to-end propustnosti sítě 0000000*000000000000 Zpracování experimentálních dat ooooooooooooooooooooooo Charakterizace rozdělení I ► Průměrování a konfidenční interval se typicky počítá s předpokladem normálního rozdělení. Pro charakterizaci nenormálních rozdělení je lépe používat medián a kvantily: > summary(nut) Min. 1st Qu. Median Mean 3rd Qu. Max. 64.49 64.49 64.49 64.50 64.50 64.52 > Cl(nut) upper mean lower 64.49631 64.49523 64.49415 > quantile(nut, prob = seq(0, 1, length = 21)) 0% 5% 10% 15% 20% 25% 30% 35% 64.48900 64.49099 64.49209 64.49265 64.49318 64.49340 64.49357 64.49367 40% 45% 50% 55% 60% 65% 70% 75% 64.49422 64.49446 64.49470 64.49495 64.49512 64.49580 64.49610 64.49638 80% 85% 90% 95% 100% 64.49672 64.49748 64.49842 64.49882 64.52190 □ >0 Q, O 21/70 Odevzdané protokoly Konfigurace počítačů Měření end-to-end propustnosti sítě Zpracování experimentálních dat OO ooo oooooooo»»oooooooooo ooooooooooooooooooooooo Porovnání rozdělení I ► ► ► ► Mějme 3 experimenty vzorkující data (nut, nut2, nut3) Nulová hypotéza: data pochází ze stejného rozdělení Neparametrické testy v případě, že máme/můžeme mít nenormální rozdělení Test Kolmogorov-Smirnov (K-S): > ks.test(nut, nut2) Two-sample Kolmogorov-Smirnov test data: nut and nut2 D = 0.083333, p-value = 0.9853 alternative hypothesis: two-sided Warning message: In ks.test(nut, nut2) : cannot compute exact p-value with ties 4 □ >0 Q, O 22/70 Odevzdané protokoly OO Konfigurace počítačů ooo Měření end-to-end propustnosti sítě oooooooo»»oooooooooo Zpracování experimentálních dat ooooooooooooooooooooooo Porovnání rozdělení II ► Test Anderson-Darling (A-D): ■ A-D více zohledňuje konce rozdělení > library("kSamples") > ad.test(nut, nut2,nut3) Number of samples: 3 Sample sizes: 60, 60, 60 Number of ties: 100 Mean of Anderson-Darling Criterion: 2 Standard deviation of Anderson-Darling Criterion: 1.06249 T.AD = ( Anderson-Darling Criterion - mean)/sigma Null Hypothesis: All samples come from a common population. AD T.AD asympt. P-value version 1: 0.6283 -1.291 0.9888 version 2: 0.5950 -1.322 0.9922 ^"C^ □ >0 Q, O 23/70 Odevzdané protokoly OO Konfigurace počítačů ooo Měření end-to-end propustnosti sítě oooooooooo»«»»oooooo Zpracování experimentálních dat ooooooooooooooooooooooo Vizuální kontrola I Histogram Histogram of nut ■1> o <0 UTj ■r-j o ■r-j m — o —1 X I I I I 64.49 64.50 64.51 64.52 nut □ >0 Q, O 24/70 Odevzdané protokoly OO Konfigurace počítačů ooo Měření end-to-end propustnosti sítě oooooooooo»«»»oooooo Zpracování experimentálních dat ooooooooooooooooooooooo Vizuální kontrola II ► Histogram po odstranění hrubé chyby Histogram of nut[2:60] ÍZ ■D <1> Lil — O —1 I I I I I I I 64.488 64.490 64.492 64.494 64.496 64.498 64.500 nut[2:6Q] □ >0 Q, O 25/70 Odevzdané protokoly OO Konfigurace počítačů ooo Měření end-to-end propustnosti sítě oooooooooo»«»»oooooo Zpracování experimentálních dat ooooooooooooooooooooooo Vizuální kontrola III ► Q-Q Normal Q-Q Plot -2-1012 Theoretical Quantiles □ >0 Q, O 26/70 Odevzdané protokoly OO Konfigurace počítačů ooo Měření end-to-end propustnosti sítě oooooooooo»«»»oooooo Zpracování experimentálních dat ooooooooooooooooooooooo Vizuální kontrola IV ► Q-Q po odstranění hrubé chyby Normal Q-Q Plot SZ z? O & o. (f) OD o OJ o o OJ Theoretical Quantiles 5 C □ >0 Q, O 27/70 Odevzdané protokoly OO Konfigurace počítačů ooo Měření end-to-end propustnosti sítě oooooooooooooo»»oooo Zpracování experimentálních dat ooooooooooooooooooooooo Zadání I ► Experiment budete provádět a protokol zpracovávat samostatně. ► Připojte dva notebooky k 100Mbps přepínači ► Nastavte pevně danou IPv4 adresu na ethernetovém rozhraní ■ service network-manager stop ■ ifconfig zjistěte si jméno rozhraní ■ ifconfig rozhráni adresa/24 přičemž použijete privátní adresy z rozsahu 192.168.0.0/16 a domluvíte se mezi sebou na jednom přepínači, abyste si nepřidělili duplicitní adresy ► Na jednom z počítačů nastartujte nuttcp server ■ nuttcp -S ► Na druhém spusťte měření propustnosti UDP v závislosti na velikosti paketů pro velikosti bufferu 16, 32, 64, 128, 256, 512, 1024, 1500 v obou směrech (měření v opačném směru zajišťuje přepínač -r): ► Všiměte si, co se stalo pro velikosti < 32 a > 1448 a v protokolu vysvětlete. %^5uC^ ► Zvažte použití automatizace shellovým skriptováním, např.: ^y^C^ □ >0 Q, O 28/70 Odevzdané protokoly OO Konfigurace počítačů ooo Měření end-to-end propustnosti sítě oooooooooooooo»»oooo Zpracování experimentálních dat ooooooooooooooooooooooo Zadání II ■ for délka in 16 32 64 128 256 512 1024 1500; do \ nuttcp -u -l ${delka} -R100M -i -T20 cil_ip >nuttcp-${delka}.log; done Měření celkem 3x zopakujte pro ověření stability výsledků. Zamyslete se, co byste měli správně provést, abyste provedli nezávislá měření (m.j. systém uvedli do výchozího stavu). Stáhněte si dosažené výsledky. □ >0 Q, O 29/70 Odevzdané protokoly OO Konfigurace počítačů ooo Měření end-to-end propustnosti sítě oooooooooooooooo»»«» Zpracování experimentálních dat ooooooooooooooooooooooo Protokol I Každý samostatně zpracuje a odevzdá protokol. ► Výsledkem měření propustností jsou časové řady: 60s běhy jsou rozděleny na 1 s intervaly. Data z logu můžete extrahovat např. takto: for i in *.log; do cat $i | perl -pe 's/^.*\s+(\d+\.\d+)\sMbps\s+.*$/\l/' | \ head -n -2 >${i%%.log}.values; done ► Načtěte časové řady do R, např. nut <- scan("runl/nuttcp-128.values", what=numeric()) 30/70 Odevzdané protokoly OO Konfigurace počítačů ooo Měření end-to-end propustnosti sítě oooooooooooooooo»»«» Zpracování experimentálních dat ooooooooooooooooooooooo Protokol II ► Hypotéza: časové řady mají normální rozdělení. Lze nebo nelze tuto hypotézu vyvrátit pomocí Shapiro-Wilkova testu normality? shapiro.test(nut) Srovnejte vizuálně s histogramem a Q-Q diagramem: hist(nut) qqnorm(nut); qqline(nut) ► Lze-li tuto hypotézu vyvrátit, dokážete ji vyvrátit i v případě, pokud se do měření nezahrnou hodnoty, které byly naměřeny při současně registrovaných výpadcích - tedy hodnoty zatížené hrubou chybou (outliers)? Jde-li pouze o první hodnotu (častý případ - ale ověřte!), můžte jednoduše použít výběr nut [2:60]. □ >0 Q, O 31/70 Odevzdané protokoly OO Konfigurace počítačů ooo Měření end-to-end propustnosti sítě oooooooooooooooo»»«» Zpracování experimentálních dat ooooooooooooooooooooooo Protokol III ► Hypotéza: propustnost síťové karty a sítě nezávisí na velikosti paketů. Lze tuto hypotézu vyvrátit nebo nelze? Zdůvodněte. Pokud jsou rozdělení přibližně normální, využijte průměrné hodnoty měření pro jednotlivé velikost paketů s odhadnutou chybou měření při zvolené hranici intervalu spolehlivosti (např. 95%). V opačném případě použijte medián s uvedením rozsahu 1.-3. kvartilu. Příklad v R pro normální rozdělení: library( "Rmisc") - příp. install. packages("Rmisc"), pokud je třeba instalace CI(nut, ci=.95) a pro jiné než normální rozdělení summary(nut) quantile(nut, prob = seq(0, 1, length = 21)) 32/70 Odevzdané protokoly OO Konfigurace počítačů ooo Měření end-to-end propustnosti sítě oooooooooooooooo»»«» Zpracování experimentálních dat ooooooooooooooooooooooo Protokol IV ► Hypotéza: opakovaná měření poskytují výsledky vzorkované ze stejného rozdělení. Lze tuto hypotézu vyvrátit nebo nelze? Zdůvodněte. Můžete využít např. Anderson-Darling k-vzorkového testu. library("kSamples") nut <- scan("runl/nuttcp-forth-128.values", what=numeric()) nut2 <- scan("run2/nuttcp-forth-128.values", what=numeric()) ad.test(nut, nut2) ► Všechny presentované výsledky musí být řádně zaokrouhleny a musí být uvedeny jednotky měření. 33/70 Odevzdané protokoly Konfigurace počítačů Měření end-to-end propustnosti sítě Zpracování experimentálních dat OO OOO OOOOOOOOOOOOOOOOOOOO »0000000000000000000000 Zpracování experimentálních dat □ >0 Q, O 34/70 Odevzdané protokoly Konfigurace počítačů Měření end-to-end propustnosti sítě Zpracování experimentálních dat oo ooo oooooooooooooooooooo o«ooooooooooooooooooooo Délka zpracování obrázku □ >0 Q, O 35/70 Odevzdané protokoly OO Konfigurace počítačů ooo Měření end-to-end propustnosti sítě oooooooooooooooooooo Zpracování experimentálních dat OO0OOOOOOOOOOOOOOOOOOOO velikost obrázku čas běhu 640 x 480 124,12983930928 1280 x 720 539,98450298239 1920 x 1080 1529,02398429008 4096 x 2160 10210,09238488922 Odevzdané protokoly OO Konfigurace počítačů ooo Měření end-to-end propustnosti sítě oooooooooooooooooooo Zpracování experimentálních dat OO0OOOOOOOOOOOOOOOOOOOO velikost obt^zku časjzěhu 640 x 480 \ 12^983930928 1280 x 720 ^39,98450298239 1920 x 1080^ 152^398429008 4096 x^0 10210,092^8488922 □ >0 Q, O 37/70 Odevzdané protokoly Konfigurace počítačů Měření end-to-end propustnosti sítě Zpracování experimentálních dat oo ooo oooooooooooooooooooo ooo»ooooooooooooooooooo Měříme délku výpočtu v Javě □ >0 Q, O 38/70 Odevzdané protokoly OO Konfigurace počítačů ooo Měření end-to-end propustnosti sítě oooooooooooooooooooo Zpracování experimentálních dat ooo»ooooooooooooooooooo ~$ R > library(psych) > runlength <- read.csv(file="java-example.table", head=FALSE, sep=",") > summary(runlength$Vl) Min. 1st Qu. Median Mean 3rd Qu. Max. 92.08 104.70 108.80 166.80 187.20 594.70 > describe!runlength$Vl) var n mean sd median trimmed mad min max range skew 1 1 30 166.82 113.67 108.78 142.1 20.88 92.08 594.71 502.63 2.14 kurtosis se 1 4.55 20.75 39/70 Odevzdané protokoly OO Konfigurace počítačů OOO Měření end-to-end propustnosti sítě OOOOOOOOOOOOOOOOOOOO Zpracování experimentálních dat OOO0OOOOOOOOOOOOOOOOOOO Javové měření N= 30 x = 166,82 sx = 113,67 SX Sx ~ y/Ň = 20,75 ^0,05:29 = 2,045 x±r0,05;Aí-^x = 167±42ms „ o 03 *- O C O 100 200 -1- 300 Čas [ms] 400 500 600 40/70 Odevzdané protokoly OO Konfigurace počítačů ooo Měření end-to-end propustnosti sítě oooooooooooooooooooo Zpracování experimentálních dat OOO0OOOOOOOOOOOOOOOOOOO □ «0 0,0 41/70 Odevzdané protokoly OO Konfigurace počítačů ooo Měření end-to-end propustnosti sítě oooooooooooooooooooo Zpracování experimentálních dat 0000*000000000000000000 Javové měření o o CD O O LO to to f-■ § H co o o -i C\J o o -l o o o o o o o o o o o o o T 5 10 15 20 25 30 Měření □ >0 Q, O 42/70 Konfigurace počítačů ooo Měření end-to-end propustnosti sítě oooooooooooooooooooo Zpracování experimentálních dat 0000*000000000000000000 Javové měření □ >0 Q, O 43/70 Odevzdané protokoly OO Konfigurace počítačů ooo Měření end-to-end propustnosti sítě oooooooooooooooooooo Zpracování experimentálních dat ooooo»ooooooooooooooooo Soustava jednotek pro informatiky ► Předpony nejen speciálně informatické yocto- io-24 y - - - zepto- io-21 z - - - atto- io-18 a - - - femto- io-15 f — — — pico- io-12 P - - - nano- io-9 n - - - micro- 10"6 fi - - - milli- 10~3 m - - - kilo- 103 k kibi Ki mega- 106 M mebi 220 Mi g'ga- 109 G gibi 230 Gi tera- 1012 T tebi 240 Ti peta- 1015 P pebi 250 Pi exa- 1018 E exbi 260 Ei zetta- 1021 Z zebi 270 Zi yotta- 1024 Y yobi 280 Yi Amendment 2 to "IEC 60027-2: Letter symbols to be used in electrical technology - Part 2: Telecommunications and electronics" (1999) □ >0 Q, O 44/70 Odevzdané protokoly OO Konfigurace počítačů ooo Měření end-to-end propustnosti sítě oooooooooooooooooooo Zpracování experimentálních dat oooooo»oooooooooooooooo Typy měřících metod ► Subjektivní x objektivní metody ■ subjektivní: působí bezprostředně na lidské smysly ■ objektivní: působí na měřící zařízení ► Přímé x nepřímé metody ■ přímé: přímé srovnání se známou hodnotou veličiny ■ nepřímé: na základě jiných veličin, pomocí nichž lze měřenou veličinu spočítat ► Absolutní x relativní metody ■ absolutní: měření přímo v příslušné jednotce ■ relativní: měření srovnáním ► Statické x dynamické metody ■ statické: z klidového stavu přístroje ■ dynamické: na základě dynamiky měřícího přístroje □ >0 Q, O 45/70 Odevzdané protokoly OO Konfigurace počítačů ooo Měření end-to-end propustnosti sítě oooooooooooooooooooo Zpracování experimentálních dat ooooooo»ooooooooooooooo Výsledky měření ► Rozlišení měření ► Chyby měření ■ skládání většího počtu mikroskopických jevů ■ subjektivní vliv u měřících metod ► Jedno číslo zdaleka nepostihuje tyto informace □ >0 Q, O 46/70 Odevzdané protokoly OO Konfigurace počítačů ooo Měření end-to-end propustnosti sítě oooooooooooooooooooo Zpracování experimentálních dat ooooooo»ooooooooooooooo Výsledky měření x = (/xx ± zx) [jednotka] ► pjX... nepravděpodobnější hodnota měřené veličiny ► zx... interval spolehlivosti / přesnost ► jak tyto věci spočítat / odhadnout? ■ u normálního rozdělení chyb? ■ u jiného než normálního rozdělení chyb? jak takové rozdělení poznat? □ >0 Q, O 47/70 Odevzdané protokoly OO Konfigurace počítačů ooo Měření end-to-end propustnosti sítě oooooooooooooooooooo Zpracování experimentálních dat ooooooo»ooooooooooooooo Výsledky měření ► Protokolování podmínek, na nichž měření probíhalo ■ zachycení všech podmínek, které mohou mít na měření vliv konfigurace hardware popis síťové topologie instalovaný operační systém instalovaný software popis konfigurace a souběžně běžících procesů uschování vlastního měřeného software/hardware přesný popis použitých měřících metod přesná identifikace měřících nástrojů/přístrojů důležité pro reprodukovatelnost měření □ >0 Q, O 48/70 Odevzdané protokoly OO Konfigurace počítačů ooo Měření end-to-end propustnosti sítě oooooooooooooooooooo Zpracování experimentálních dat oooooooo«oooooooooooooo Chyby měření ► Klasifikace chyb podle místa vzniku ■ instrumentální (přístrojové) chyby ■ metodické chyby ■ teoretické chyby (principy, model) ■ chyby zpracování ► Klasifikace chyb podle původu ■ hrubé (omyly) ■ systematické ■ náhodné Odevzdané protokoly OO Konfigurace počítačů ooo Měření end-to-end propustnosti sítě oooooooooooooooooooo Zpracování experimentálních dat ooooooooo»ooooooooooooo Chyby měření Odevzdané protokoly OO Konfigurace počítačů ooo Měření end-to-end propustnosti sítě oooooooooooooooooooo Zpracování experimentálních dat 0000000000*000000000000 Chyby měření dle norem Metrologické normy ČSN 01 0250 Statistické metody v průmyslové praxi. Všeobecné základy ČSN 01 0251 Vzájemná shoda výsledků zkušebních metod. Stanovení opakovatelnosti a reprodukovatelnosti normalizované zkušební metody pomocí mezilaboratorních zkoušek ČSN 25 0008 Metrológia. Chyby primárnych etalónov. Spôsoby vyjadrovania ČSN 25 1202 Posuvná měřidla. Technické požadavky ČSN 25 1401 Mikrometrická měřidla na vnější měření. Technické požadavky ČSN 25 8304 Provozní termoelektrické snímače teploty ČSN 25 8305 Prevádzkové termoelektrické snímače teploty. Metody skúšania pri úradnom overovaní ČSN 25 8306 Provozní odporové snímače teploty ČSN 25 8307 Prevádzkové odporové snímače teploty. Metody overovania ČSN 35 6505 Elektronické měřicí přístroje. Všeobecné technické podmínky ...a mnoho dalších 51/70 Odevzdané protokoly OO Konfigurace počítačů ooo Měření end-to-end propustnosti sítě oooooooooooooooooooo Zpracování experimentálních dat 00000000000*00000000000 Přesnost měřících nástrojů Přesnost přístroje ... náhodná chyba Správnost přístroje ... systematická chyba ► Aditivní vs. multiplikativní chyby ► Mezní hodnota chyb ► Třída přesnosti přístroje Aditivní model Multiplikativní model Kombinovaný model Odevzdané protokoly OO Konfigurace počítačů ooo Měření end-to-end propustnosti sítě oooooooooooooooooooo Zpracování experimentálních dat oooooooooooo»oooooooooo Hrubé chyby ► Např. měříme něco jiného, než co máme měřit, nebo chyba při ručním odečtu měření ■ eliminace vhodným návrhem experimentu a jeho pečlivým provedením ► Volba měřící metody / měřících metod - příklad pro Javu ■ Problém garbage collection • -verbose:gc • krátká měření: vybrat pouze běhy, v nichž nedošlo ke GC • dlouhé běhy: dostatečně dlouhé, aby se přítomnost GC projevila representativně ■ Problém HotSpot kompilace • -XX:+PrintCompilation • dostatečný warm-up (minuty!) • mohou se vyskytovat rekompilace (optimalizace, nahrání nové třídy která zruší dosavadní předpoklady) • housekeeping tasks: oddělení nesouvisejících měření pauzou nebo restartem JVM □ >0 Q, O 53/70 Odevzdané protokoly OO Konfigurace počítačů ooo Měření end-to-end propustnosti sítě oooooooooooooooooooo Zpracování experimentálních dat OOOOOOOOOOOOO0OOOOOOOOO Náhodné chyby aneb proč se běžně pracuje s normálním rozdělením chyb? ► Hypotéza elementárních chyb [?] ■ každá náhodná chyba v měření je složena z řady malých chyb ■ při velkém počtu měření se vyskytne zhruba stejný počet chyb kladných i záporných a malé chyby jsou početnější než velké 1. m elementárních náhodných vlivů 2. každý elementární vliv generuje chybu a (dále označováno jako případ a) nebo —a (dále případ b) 3. chyby a a b jsou stejně časté ■ dostáváme binomické rozdělení kumulace vlivů elementárních chyb ■ konverguje k normálnímu rozdělení pro velký počet malých chyb ► Centrální limitní věta ■ rozdělení součtu vzájemně nezávislých veličin X, konverguje k normálnímu rozdělení i v případě, že veličiny X; nemají stejné rozdělení pravděpodobnosti Odevzdané protokoly Konfigurace počítačů Měření end-to-end propustnosti sítě Zpracování experimentálních dat oo ooo oooooooooooooooooooo oooooooooooooo«oooooooo Studentovo rozdělení t ► Používá se pro aproximaci normálního rozdělení při malém vzorku (neznámé směrodatné odchylky) kde v je počet stupňů volnosti. ■ odhad průměrů a chyby ■ t-test - odlišení průměrů □ >0 Q, O 55/70 Odevzdané protokoly OO Konfigurace počítačů ooo Měření end-to-end propustnosti sítě oooooooooooooooooooo Zpracování experimentálních dat oooooooooooooo«oooooooo Studentovo rozdělení t Srovnání s normálním rozdělením (modré) počet stupňů volnosti v = 3 Zdroj: http://en.wikipedia.org/wiki/File:T_distribution_3df.png □ >0 Q, O 56/70 Odevzdané protokoly OO Konfigurace počítačů ooo Měření end-to-end propustnosti sítě oooooooooooooooooooo Zpracování experimentálních dat OOOOOOOOOOOOOOO0OOOOOOO Normalizace rozdělení chyb ► Ověření normality rozdělení ■ vizuální ■ šikmost vzorku (sample skewness) (JEÍ=, M*,-*)2)372 Negative Skew Positive Skew Zdroj: http://en.wikipedia.org/wiki/File:Skewness_Statistics.svg □ >0 Q, O 57/70 Odevzdané protokoly OO Konfigurace počítačů ooo Měření end-to-end propustnosti sítě oooooooooooooooooooo Zpracování experimentálních dat ooooooooooooooo»ooooooo Normalizace rozdělení chyb ► Ověření normality rozdělení ■ špičatost vzorku (sample kurtosis) g2 = - 3 lehké konce (leptokurtic), g2 > 0 x těžké konce (platycurtic), g2 < 0 Zdroj: http://en.wikipedia.org/wiki/File:T_distribution_3df.png 5 C □ >0 Q, O 58/70 Odevzdané protokoly OO Konfigurace počítačů ooo Měření end-to-end propustnosti sítě oooooooooooooooooooo Zpracování experimentálních dat OOOOOOOOOOOOOOO0OOOOOOO Normalizace rozdělení chyb ► Techniky normalizace ■ šikmá rozdělení^ > 0: transformace hodnot • • log(x) • 1 x m šikmá rozdělení^ < 0: převrácení hodnot (reflection) • —x + c s vhodně zvolenou konstantou c ■ špičatá rozdělení: problém ■ další čtení: [?] Odevzdané protokoly OO Konfigurace počítačů ooo Měření end-to-end propustnosti sítě oooooooooooooooooooo Zpracování experimentálních dat oooooooooooooooo»oooooo Odhad spolehlivosti x=(p,x± zx) [jednotka] Statistická definice [?]: Je-li výsledek měření flx a zx je chyba tohoto měření odpovídající míře jistoty p, pak skutečná hodnota měřené veličiny leží v intervalu (flx db zx) s pravděpodobností p. ► Intervaly ■ 0,68 - střední kvadratická chyba ■ 0,95 ■ 0,99 - krajní chyba ► Zaokrouhlování ■ zx na 1 platné místo, nejvýše na 2 platná místa ■ jlx podle zx 60/70 Odevzdané protokoly OO Konfigurace počítačů ooo Měření end-to-end propustnosti sítě oooooooooooooooooooo Zpracování experimentálních dat oooooooooooooooo»oooooo Odhad spolehlivosti x=(píx± zx) [jednotka] Pro normální rozdělení chyby ► p,x = x= ^ ► s směrodatná odchylka jednoho měření, D rozptyl D EU*'*)2 n- 1 ► sx = yELG)25*/ a protože měření byly prováděny za stejných podmínek 5_= s* _ á n y n(n — 1) 61/70 Odevzdané protokoly OO Konfigurace počítačů ooo Měření end-to-end propustnosti sítě oooooooooooooooooooo Zpracování experimentálních dat oooooooooooooooo»oooooo Odhad spolehlivosti x=(p,x± zx) [jednotka] Pro normální rozdělení chyby ^ ZX = \. p n 0,683 0,954 0,99 \^ P n 0,683 0,954 0,99 1 1,8395 13,8155 63,6567 16 1,0329 2,1633 2,9208 2 1,3224 4,5001 9,9248 18 1,0292 2,1433 2,8784 3 1,1978 3,2923 5,8409 20 1,0263 2,1276 2,8453 4 1,1425 2,8585 4,6041 30 1,0176 2,0817 2,75 5 1,1113 2,6396 4,0321 40 1,0133 2,0595 2,7045 6 1,0913 2,5084 3,7074 50 1,0108 2,0463 2,6778 7 1,0775 2,4214 3,4995 60 1,0091 2,0377 2,6603 8 1,0673 2,3594 3,3554 70 1,0078 2,0315 2,6479 9 1,0594 2,3131 3,2498 80 1,0069 2,0269 2,6387 10 1,0533 2,2773 3,1693 90 1,0062 2,0234 2,6316 12 1,0441 2,2253 3,0545 100 1,0057 2,0206 2,6259 14 1,0377 2,1895 2,9768 □ -O Q* O 62/70 Odevzdané protokoly OO Konfigurace počítačů ooo Měření end-to-end propustnosti sítě oooooooooooooooooooo Zpracování experimentálních dat ooooooooooooooooo»ooooo Opakování měření ► Předchozí úvahy předpokládaly nezávislá měření prováděná za stejných podmínek. ► Co to znamená? □ >0 Q, O 63/70 Odevzdané protokoly OO Konfigurace počítačů ooo Měření end-to-end propustnosti sítě oooooooooooooooooooo Zpracování experimentálních dat 00000000000000000*00000 Opakování měření Předchozí úvahy předpokládaly nezávislá měření prováděná za stejných podmínek. Co to znamená? ■ musím zajistit stejné podmínky ■ pokud měření opakuji na stejném systému, musím zajistit „reset systému" před opakováním měření ■ předchozí měření nesmí mít vliv na nové měření □ >0 Q, O 64/70 Odevzdané protokoly OO Konfigurace počítačů ooo Měření end-to-end propustnosti sítě oooooooooooooooooooo Zpracování experimentálních dat oooooooooooooooooo»oooo Příklad odhadu spolehlivosti Příklad - měření výšky válečku [?]: výška v [mm] 4,6 4,5 4,7 4,4 4,5 4,6 4,4 4,4 4,3 4,5 ► n = 10 ► y = 4,49 [mm] ► sv = 0,038 [mm] ► r(o,68;9) = 1-059 ^ r(0,99;9) = 3,250 v = (4,49 ± 0,04) mm pro p = 0,68 v = (4,49 ± 0,12) mm pro p = 0,99 Odevzdané protokoly OO Konfigurace počítačů ooo Měření end-to-end propustnosti sítě oooooooooooooooooooo Zpracování experimentálních dat ooooooooooooooooooo»ooo Chyba nepřímo měřené veličiny ► K odhadu střední hodnoty a rozptylu lze použít ■ Taylorův rozvoj funkce A f{n)(x) /(x + e)=/(x) + £.^-^r-J-- si Z-^/ 2/77 X ^—' 4/77 /=1 /=1 Monte Carlo simulace □ >0 Q, O 66/70 Odevzdané protokoly OO Konfigurace počítačů ooo Měření end-to-end propustnosti sítě oooooooooooooooooooo Zpracování experimentálních dat oooooooooooooooooooo»oo Zákon přenosu chyb ► Na základě Taylorova rozvoje do druhého členu 2 / OZ \ 2 ^-^ ^-^ OZ OZ kde s^- je rozptyl (variance) x,- a £>,•/ je kovariance x,- a x;. Pro jednoduché případy, kdy x a y jsou nezávislé (q,j = 0): ■ aditivní funkce z = ax ± by a24 + b2s± , b c multiplikativní funkce z = ax y St = z> 2 / \ 2 bsx \ - / csv X + y kde z = axbyc. 0) (2) □ >0 Q, O 67/70 Odevzdané protokoly OO Konfigurace počítačů ooo Měření end-to-end propustnosti sítě oooooooooooooooooooo Zpracování experimentálních dat ooooooooooooooooooooo«o Model ► Mapování matematického modelu na naměřené hodnoty ■ hledáme parametry modelu ■ minimalizujeme odchylky (rezidua) modelu od naměřených dat r/(x) = \\y, - M(x)|| příp. vyjádřeno jako minimalizace normy vektoru r(x) = (ri(x).....rm(x))T m nejčastěji pracujeme s euklidovskou L2 normou (metoda nejmenších čtverců) m /(x) = r(x)rr(x) = ]Tr;(x)2 /=1 lze použít např. i (součet absolutních hodnot - méně citlivé na data s větší kumulací chyb, příp. zatížená hrubou chybou) či Z.00 (maximum z absolutních hodnot) 68/70 Odevzdané protokoly OO Konfigurace počítačů ooo Měření end-to-end propustnosti sítě oooooooooooooooooooo Zpracování experimentálních dat ooooooooooooooooooooo«o Model ► Metoda nej menších čtverců ■ mějme data (x/,y/), kde x\ je nezávislá proměnná a y, je závislá (měřená proměnná) ■ minimalizujeme 5 = J^ľ=i rf = Sľ=i()// —/(x'-c))2' kde c Je vektor parametrů ■ hledáme minimum vzhledem k c, tedy dS dn df(xj,c) dc dq n = 0 j = 1.....m □ >0 Q, O 69/70 Odevzdané protokoly OO Konfigurace počítačů ooo Měření end-to-end propustnosti sítě oooooooooooooooooooo Zpracování experimentálních dat 0000000000000000000000» Hodnocení modelu ► Pearsonův korelační koeficient r = EL((*í -*)(y/ -y)) ^YľUxt-xY-Y.Uiyi-y)2 m lineární závislost dvou veličin x a y a nabývá hodnot ■ 1 ... přesná souhlasná závislost, -1 ... přesná inverzní závislost, O nezávislé ■ využívá se často jako r^y ► Root mean square deviation - RMSD rmsd^ = wESZS! ■ srovnání mezi získaným modelem a originálními hodnotami