ofs | hex dump | ascii |
---|
0000 | 89 50 4e 47 0d 0a 1a 0a 00 00 00 0d 49 48 44 52 00 00 04 54 00 00 02 6f 08 02 00 00 00 da f2 12 | .PNG........IHDR...T...o........ |
0020 | 53 00 00 00 03 73 42 49 54 08 08 08 db e1 4f e0 00 00 00 19 74 45 58 74 53 6f 66 74 77 61 72 65 | S....sBIT.....O.....tEXtSoftware |
0040 | 00 67 6e 6f 6d 65 2d 73 63 72 65 65 6e 73 68 6f 74 ef 03 bf 3e 00 00 20 00 49 44 41 54 78 9c ec | .gnome-screenshot...>....IDATx.. |
0060 | dd 79 6c 1b e7 9d 3f fe cf cc c3 19 0e 39 3c 45 8a 14 25 4a 94 68 1d be 2f f9 3e 62 27 8e 9b a3 | .yl...?......9<E..%J.h../.>b'... |
0080 | f1 36 df f6 9b fe 02 b4 c0 a2 d8 34 6d 77 17 29 ba 68 bb 68 37 8b 45 5b 6c fb 5f 77 e1 02 d9 6d | .6.........4mw.).h.h7.E[l._w...m |
00a0 | b7 41 8b c5 a6 49 93 6f 0f af 92 d4 8e 8f f8 8c 65 d9 f2 7d c9 92 29 4b a2 48 91 e2 7d 0e 67 f4 | .A...I.o........e..}..)K.H..}.g. |
00c0 | cc fc fe a0 2c eb b2 23 27 b2 1d 5b 9f 57 0b 54 1a cd 3c f3 99 11 e5 3e 6f 3e cf 3c 64 76 ee dc | ....,..#'..[.W.T..<....>o>.<dv.. |
00e0 | 09 08 21 84 10 42 08 21 f4 a8 63 1f 74 01 08 21 84 10 42 08 21 74 3f 60 f8 41 08 21 84 10 42 08 | ..!..B.!..c.t..!..B.!t?`.A.!..B. |
0100 | cd 09 ba a9 9b 08 d1 11 c2 32 0c 73 ff ab 41 08 21 84 10 42 08 a1 7b 64 42 f8 61 59 56 a7 d3 61 | .........2.s..A.!..B..{dB.aYV..a |
0120 | ec 41 08 21 84 10 42 08 3d 7a 26 4c 7b 63 18 06 93 0f 42 08 21 84 10 42 e8 91 34 21 fc 10 42 1e | .A.!..B.=z&L{c....B.!..B..4!..B. |
0140 | 54 1d 08 21 84 10 42 08 21 74 4f 4d 1e f9 79 50 75 20 84 10 42 08 21 84 d0 3d 85 ab bd 21 84 10 | T..!..B.!tOM..yPu...B.!..=...!.. |
0160 | 42 08 21 84 e6 04 0c 3f 08 21 84 10 42 08 a1 39 01 c3 0f 42 08 21 84 10 42 68 4e c0 f0 83 10 42 | B.!....?.!..B..9...B.!..BhN....B |
0180 | 08 21 84 10 9a 13 30 fc 20 84 10 42 08 21 84 e6 04 0c 3f 08 21 84 10 42 08 a1 39 01 c3 0f 42 08 | .!....0....B.!....?.!..B..9...B. |
01a0 | 21 84 10 42 68 4e c0 f0 83 10 42 08 21 84 10 9a 13 30 fc 20 84 10 42 08 21 84 e6 04 0c 3f 08 21 | !..BhN....B.!....0....B.!....?.! |
01c0 | 84 10 42 08 a1 39 01 c3 0f 42 08 21 84 10 42 68 4e c0 f0 83 10 42 08 21 84 10 9a 13 30 fc 20 84 | ..B..9...B.!..BhN....B.!....0... |
01e0 | 10 42 08 21 84 e6 04 0c 3f 08 21 84 10 42 08 a1 39 01 c3 0f 42 08 21 84 10 42 68 4e c0 f0 83 10 | .B.!....?.!..B..9...B.!..BhN.... |
0200 | 42 08 21 84 10 9a 13 30 fc 20 84 10 42 08 21 84 e6 04 0c 3f 08 21 84 10 42 08 a1 39 01 c3 0f 42 | B.!....0....B.!....?.!..B..9...B |
0220 | 08 21 84 10 42 68 4e d0 cd 5a 4b 52 f4 ea d9 0b dd a1 54 ae a4 00 27 5a 5d 35 0b 97 2c ae b7 f3 | .!..BhN..ZKR......T...'Z]5..,... |
0240 | 00 00 20 07 3e fc e3 f1 a1 5b fb b2 9c 58 e1 69 6e 5d dd e2 e4 01 92 a7 ff bc fb 5a 9e b5 2d 7f | ....>....[...X.in].........Z..-. |
0260 | e6 e9 45 96 f2 cf c3 c7 ff df a1 00 ad 79 ec ff 6e ae 25 f4 c6 87 ef 1c 1b 9a 7c 36 cf da 27 ec | ..E..........y..n.%.......|6..'. |
0280 | 97 0f 5c ce b2 ee 55 7f f5 64 93 70 73 73 fe ea 07 6d 9d f1 89 1b cb ed 4f 53 71 cd c6 2f 6f ae | ..\...U..d.pss...m......OSq../o. |
02a0 | 27 77 77 95 c5 48 57 98 34 fa 9d 77 79 d8 83 21 c7 02 fd 72 75 63 b5 f0 f1 bb 22 84 10 42 08 21 | 'ww..HW.4..wy..!...ruc...."..B.! |
02c0 | f4 c8 9b a5 91 9f 7c e0 d0 fb 07 3a 7b 87 33 25 4a f4 02 a1 f9 e4 e0 b5 63 1f ec 3d 1e 96 26 9c | ......|....:{.3%J.......c..=..&. |
02e0 | 4c 2f 5a cc a2 a8 e7 40 c9 c7 fa cf 1c 38 16 28 8e fd 4c 4d 5d ea 1c f7 ed d4 42 f5 a2 c5 6c 1e | L/Z....@.....8.(..LM].....B...l. |
0300 | fb af 81 77 d4 7b cd 00 ea 70 7f f0 d6 51 52 b0 2f 0e c0 3a 7c b5 e3 fa fb e4 e6 81 46 8e 05 00 | ...w.{...p...QR./..:|.......F... |
0320 | e0 04 63 b9 11 81 bf cb 08 93 bc bc bb ed c0 99 1b d3 05 a9 cf 9e 7c f7 fe b6 3d 27 7a 33 f4 41 | ..c...................|...='z3.A |
0340 | 17 82 10 42 08 21 84 d0 67 c3 ac 8c fc 48 dd ed a7 82 25 60 6d cd 5b 1e 5b 56 2d 12 a0 99 1b 27 | ...B.!..g....H....%`m.[.[V-....' |
0360 | 8f 1c ef cd 06 8e 9f f6 3e b7 a1 96 1f dd cf bd fc a9 27 fc 3c 00 14 83 1f bd 7f a4 5f 1a ba 1e | ........>.........'.<......._... |
0380 | 94 fc 4d 37 5b 51 86 ce 77 86 bd 9b 3c fc b4 e7 a8 5c f2 d4 93 4d 13 7f 24 7a 2d 57 ae 64 62 7d | ..M7[Q..w...<....\...M..$z-W.db} |
03a0 | 61 a9 d1 2f 00 00 14 07 82 09 00 d6 e9 f3 8e 1f eb b0 b4 3c f1 5c 0b 00 40 e6 ca fb ef 9d 4b 72 | a../...............<.\..@.....Kr |
03c0 | 9e f5 5f d8 50 fd 49 2e 93 16 93 79 e5 93 1c f8 40 14 d3 b9 87 a7 58 84 10 42 08 21 84 ee bd d9 | .._.P.I....y....@.....X..B.!.... |
03e0 | 08 3f f9 de ee a8 0a 60 5b ba 71 65 b5 08 00 00 c4 52 bf 7a 6d 24 b2 af a7 10 ec 0e ca b5 fe c9 | .?.....`[.qe.....R.zm$.......... |
0400 | 47 18 3c 75 4e b6 3f a8 ca b9 09 63 3d 52 5f e7 c5 f9 cf ac 9c e9 9c 32 7b 9d d7 7c e5 72 36 7e | G.<uN.?....c=R_........2{..|.r6~ |
0420 | 23 24 fb fd 3c 80 1c 0e c6 55 60 dd 75 5e c3 0c 2b a7 99 1b a7 4f 9e ed 8b e7 29 11 ed 9e 45 2b | #$..<....U`.u^..+....O....)...E+ |
0440 | 57 35 39 79 00 90 63 5d 1d 27 af 85 32 79 45 65 05 b3 cb df ba 6e 85 47 88 9d 7e ff c3 7e 05 00 | W59y..c].'..2yEe.....n.G..~..~.. |
0460 | c2 1f bd f3 46 60 cd 0b 8f fb 27 44 31 29 7c e6 f8 e9 40 34 2b 11 c1 ee 6a 69 5d b3 c0 5d 0e 60 | ....F`....'D1)|...@4+...ji]..].` |
0480 | 72 b2 fb f4 a9 4b c1 64 5e 01 c1 e6 f2 2f 5f b7 c2 23 00 00 d0 fc c0 85 d3 17 fa a2 e9 02 25 46 | r....K.d^..../_..#............%F |
04a0 | 47 ed c2 95 ad 4d e5 39 82 34 19 38 d5 71 21 98 28 28 2a 2b 58 9c 35 4b 56 af ac b7 28 dd fb ff | G....M.9.4.8.q!.((*+X.5KV...(... |
04c0 | b7 23 0a 9e b5 cf 97 d3 63 fe ea de 3f 9f 89 0b 0d 4f 3c bf ce 91 99 66 7f e9 ea 07 fb ba 0a 00 | .#......c...?....O<....f........ |
04e0 | 10 ef fc df b7 02 cb 76 3c bb 50 94 63 57 8e 9f ec 0a a5 24 d0 9b dd f5 cb d6 2e f3 8a 04 68 df | .......v<.P.cW.....$..........h. |
0500 | c1 b7 3e 1a b2 37 ae f2 e4 ba ba a3 59 ca d9 ea 97 af f2 cb d7 3a 2f 07 93 0a 6f f7 2e de b4 ae | ..>..7......Y........:/...o..... |
0520 | d1 f2 50 4c f1 43 08 21 84 10 42 e8 e3 cc c2 b4 37 9a 8c a5 01 c0 ec aa b6 8c db 4a ec b5 4e 0e | ..PL.C.!..B.....7..........J..N. |
0540 | 40 4d c6 33 53 0f 29 06 fb 63 2a 00 08 a6 b1 98 62 ab f3 19 01 b2 3d 9d dd d3 cf 2a 1b be b0 a7 | @M.3S.)..c*.....b.....=....*.... |
0560 | ed dd f7 46 ff 7b 32 4c 01 00 ec e5 99 6f 91 be a0 0c 00 72 f8 46 54 9d 3c e7 ed 4e e4 50 fb 81 | ...F.{2L.....o.....r.FT.<..N.P.. |
0580 | 63 3d c3 b2 e8 f2 79 6c 90 ec ef 38 78 a4 3b 0f 40 c3 1d 87 cf f4 e5 59 b7 7f 41 4b a3 8b e4 87 | c=....yl...8x.;.@......Y..AK.... |
05a0 | 2e 1f 3e d2 9d 07 83 a3 ca a9 07 00 10 6c 55 3e b7 69 42 22 a0 b1 53 fb 0e 5d 1e 92 78 57 9d cf | ..>..........lU>.iB"..S..]..xW.. |
05c0 | c1 e5 06 cf 1d f8 f0 5c 12 00 20 df 7d e4 40 47 6f 5c e6 1c 9e 2a 0b a4 86 2e 1f 3e 78 29 03 00 | .......\....}.@Go\...*.....>x).. |
05e0 | d2 40 fb de c3 57 06 93 0a 5f e1 b0 10 69 38 70 6a ef be cb 49 0a 00 b1 73 87 4e f4 26 c0 e1 6f | .@...W..._...i8pj...I...s.N.&..o |
0600 | 59 d0 e8 e1 8a d1 eb c7 0e 5f 4c 82 e0 6b 70 b1 a0 46 fa c2 32 00 80 14 1a 4c 02 08 de 06 07 99 | Y........_L..kp..F..2....L...... |
0620 | 7e 7f 62 71 56 8a 2c 00 70 96 aa 1a 8f 9d 40 a6 eb c3 fd e7 82 19 52 59 53 e7 36 48 e1 ae a3 7b | ~.bqV.,.p.....@.......RYS.6H...{ |
0640 | 4f 47 c7 26 c4 25 7b ce 85 79 ef 22 7f 25 29 a5 02 27 f6 ed bb 5c 74 cc 6f f1 0a 72 b2 ff 74 47 | OG.&.%{..y.".%)..'...\t.o..r..tG |
0660 | 60 c2 c4 45 00 a9 90 ed 3b 73 26 94 2d 3c 14 c3 4a d9 6b 07 db 83 14 22 9d 47 2e a6 ee bc 27 0d | `..E....;s&.-<..J.k....".G....'. |
0680 | b5 ef ff b8 7d c6 48 b1 60 44 fa b8 9d 68 2a 18 9a 69 83 33 93 bd b8 bf 3d 48 0b 3d 47 3a 82 93 | ....}.H.`D...h*..i.3....=H.=G:.. |
06a0 | 27 33 2a 89 60 28 3b ab 27 43 08 21 84 10 7a 04 cd c2 c8 0f 95 a9 0a 00 bc 38 71 52 1a e1 79 1e | '3*.`(;.'C.!..z..........8qR..y. |
06c0 | 40 a1 f2 ad 5e 72 e4 ec 9e b6 cb 40 65 39 5f 52 00 40 a8 69 f1 09 00 e5 c1 1f e2 58 da 0a 91 23 | @...^r.....@e9_R.@.i.......X...# |
06e0 | fd b1 8b a7 6f d4 37 4e 3d 8b 5a ca 67 4a 37 bf 11 e5 f2 ff da 7d 5e cb 95 2b 99 68 7f 48 f6 d7 | ....o.7N=.Z.gJ7......}^..+.h.H.. |
0700 | 46 fb 63 2a b0 ae 89 73 de ee 40 ea bf 1c 94 c0 38 6f cb b6 95 4e 02 52 e0 e0 ff 9e 1a ee ee ce | F.c*...s..@.....8o...N.R........ |
0720 | 34 35 65 f2 25 00 a3 c5 ed 6d f0 b9 96 2d 6a 08 67 88 c5 2e 02 2f ae 5c 12 ec ff b0 5f b1 2f dc | 45e.%....m...-j.g..../.\...._./. |
0740 | bc c9 37 31 fb 84 af 04 b2 c0 d5 ad 7d 6a 9d 87 80 32 70 ec bd 63 83 bd d7 22 cb d6 f2 5d 97 a2 | ..71........}j...2p..c..."...].. |
0760 | 0a 18 e7 3d f1 dc 6a 27 81 e4 d5 23 67 e2 02 91 65 48 76 9d ed 97 80 ab d9 f8 dc e6 7a 01 68 f2 | ...=..j'...#g...eHv.........z.h. |
0780 | dc 9e 0f ae 24 2f 9c 1b 68 dc 5a 9b cf e4 01 38 93 bd ba a1 a5 da de d2 1c 4e 52 d1 61 01 20 de | ....$/..h.Z....8.........NR.a... |
07a0 | 86 ea d3 43 c1 68 7f 48 f6 d5 ab a1 be 98 0a c6 9a 79 6e 42 fb a6 dd 9f b7 af 5c e6 1d d8 d7 55 | ...C.h.H.........ynB......\....U |
07c0 | b0 34 ad d9 3c 5f 84 c8 c9 2b 31 95 75 af 7a e2 71 bf 00 34 7e ea 2f 07 7a fa ba 42 2b 5d a3 d3 | .4..<_...+1.u.z.q..4~./.z..B+].. |
07e0 | ff 6c 8b b7 6c 6c 11 21 9a 19 38 10 28 71 be 35 5b d7 7a 49 91 8d 06 cf c4 d3 f1 0c 34 8d bb a1 | .l..ll.!..8.(q.5[.zI........4... |
0800 | 8a 34 7c ad 27 18 21 50 69 5e 6a e4 1e 96 31 21 77 eb 66 f7 2c 36 47 13 81 9e 44 b3 d7 7d e7 17 | .4|.'.!Pi^j...1!w.f.,6G...D..}.. |
0820 | 5a 21 d8 d3 5f e1 a9 b6 cd f6 4d 32 36 6e 5e 33 65 63 ba af 27 52 eb ad 36 cf f2 b9 10 42 08 21 | Z!.._.....M26n^3ec..'R..6....B.! |
0840 | 84 1e 2d b3 10 7e 08 4f 58 00 b5 98 97 01 c4 5b 9b a9 2c cb 00 40 78 6e 6c d3 58 80 61 f5 66 77 | ..-..~.OX......[..,..@xnl.X.a.fw |
0860 | fd e2 55 cb bc e3 f2 12 e1 bc 2b 57 54 85 8f 0f 0d 9e 3d 2b da a7 9c c5 bd ea 8b 93 9f f9 81 5b | ..U.......+WT.....=+...........[ |
0880 | 33 df fa c2 12 09 46 95 bb 9a f3 96 8e a7 55 80 c2 f5 7d 7f b8 7e 6b 5b 3e 43 45 8f cf 71 31 16 | 3.....F.......U...}..~k[>CE..q1. |
08a0 | 1f ec 3c 38 d8 c9 72 16 a7 c7 df b2 d8 39 b5 a0 71 32 b1 8c 02 00 fd 47 df e9 1f db a6 64 33 b2 | ..<8..r......9..q2.....G.....d3. |
08c0 | 4c 32 79 00 d6 ee b1 13 00 00 fb fc cd 4f 00 00 80 1c 88 65 00 58 4f 43 79 8c 8a d8 1b 7c 96 2b | L2y..........O.....e.XOCy....|.+ |
08e0 | c9 54 2a 92 84 7a 77 83 57 3f 14 8c 5e 39 bc fb 0a 70 a2 d3 53 d7 b2 d0 e1 04 00 de eb f7 70 c1 | .T*..zw.W?..^9...p..S.........p. |
0900 | fe 68 5f 54 ae 96 fb 87 55 10 ab 1b 9c 00 70 bb fd 27 90 92 49 09 00 22 a7 da de 3a 35 b6 31 9f | .h_T....U.....p..'..I.."...:5.1. |
0920 | c9 43 39 fc b0 16 51 00 00 60 39 02 00 82 68 21 00 c0 f3 1c 00 50 3a 71 8c 81 33 8b d6 da 15 4e | .C9...Q..`9...h!.....P:q..3....N |
0940 | 59 36 19 d5 c0 b1 03 83 82 55 af 14 0a 60 ad e0 14 a9 50 50 dc cb d7 35 db d4 d8 b5 ce 8b 11 85 | Y6.......U...`....PP...5........ |
0960 | 50 30 36 2c 6f 75 0f 1f 39 a9 ae de dc 28 d0 50 c7 c1 58 e3 b6 05 ca f9 8e 6b 59 00 45 35 2d 58 | P06,ou..9....(.P..X......kY.E5-X |
0980 | bd c2 4d 12 d7 3a cf 87 14 02 60 6a 6e 5d 51 6d 1c 3d 0f 4d 05 3a 2f f4 97 00 28 e7 5d be da 97 | ..M..:....`jn]Qm.=.M.:/...(.]... |
09a0 | 3b 79 2c b5 68 eb 62 33 14 ae 1d 39 a3 5f bd ae 22 d4 d9 d9 5f 22 40 f5 0d ad ad de 6c e7 81 6b | ;y,.h.b3...9._.."..._"@.....l..k |
09c0 | 0a 07 a4 ae 75 9d df 0c 00 40 b3 81 ce ce fe 12 e1 58 b9 44 5a 80 46 3a 8e 44 9a b7 36 24 3a ce | ....u....@.......X.DZ.F:.D..6$:. |
09e0 | 0e 2a 2c 55 48 dd f2 d5 7e f5 fc fe 33 05 b3 cd 48 94 92 be b1 75 f1 e8 2f 58 89 5d ec bc 92 a4 | .*,UH...~...3...H....u../X.].... |
0a00 | 40 25 5a b1 78 e3 02 a5 f3 70 a2 79 db d2 0a 90 02 c7 3a a1 75 a3 5f 00 80 6c b0 37 99 2d 5c ea | @%Z.x....p.y......:.u._..l.7.-\. |
0a20 | f1 ae 73 27 c6 95 e1 33 a6 af 9d bc 14 a1 40 55 63 63 eb 52 ae 37 92 4d c4 2e 85 2a 96 96 57 db | ..s'...3......@Ucc.R.7.M...*..W. |
0a40 | 1b bb 22 30 36 b6 b6 7a e4 9e 93 17 c2 14 a8 44 cd 2d eb 5a bd 4a 60 7c 6d b6 52 b0 b3 b3 a7 00 | .."06..z.......D.-.Z.J`|m.R..... |
0a60 | 40 39 ef d2 d5 8d 15 13 f2 53 e1 da c1 f3 c6 cd ad dc a5 5b b7 71 01 0d c4 b2 c9 dc b5 d8 ba 66 | @9.......S.........[.q.........f |
0a80 | 27 07 08 21 84 10 42 e8 36 66 23 fc d8 9d 56 18 4c 16 c2 37 92 60 1f 0b 09 34 de 17 51 00 58 bb | '..!..B.6f#...V.L..7.`...4..Q.X. |
0aa0 | e3 d6 64 38 cf da 2f 3e e1 9f 7e 3d 03 00 00 10 fc ad 0b bb ff 72 2e d6 7b 2d 0f 33 9c 91 67 af | ..d8../>..~=.........r..{-.3..g. |
0ac0 | f7 9a 2f 5f c9 46 02 e7 20 ae 00 5b 39 e3 39 6f 00 2a 50 00 30 cf 7b 6c 5d c3 ad bc 64 b0 10 e0 | ../_.F.....[9.9o.*P.0.{l]...d... |
0ae0 | e7 6f 7b da 1e e8 e9 ee 0f 47 62 a9 4c b4 ff 6c 34 1c db bc 63 8b f7 f6 6f e1 ab 00 00 42 dd 9a | .o{......Gb.L..l4...c...o....B.. |
0b00 | 2d 2d b7 2e 96 37 f1 10 2a 7f 79 33 3f 50 4a 09 f9 98 81 00 c1 b7 e5 59 f1 46 e0 7a a0 2f 1a 4b | --...7..*.y3?PJ........Y.F.z./.K |
0b20 | e5 63 fd 57 62 c1 98 f2 dc b6 26 91 54 fb 3d 42 7f 7f 24 10 ec a3 51 15 44 6f 83 f3 8e fb 8f 6f | .c.Wb.....&.T.=B..$...Q.Do.....o |
0b40 | b4 5c 00 e7 59 b1 79 a9 73 ec b6 12 51 04 48 02 00 10 28 57 55 2e 8d 8c 2e 82 37 7d a1 c4 d9 d8 | .\..Y.y.s...Q.H...(WU.....7}.... |
0b60 | 5c fe 4a 49 a8 aa a9 a1 75 45 45 fa fc de f3 c6 cd 5b 97 72 c1 f6 83 c1 6c 33 f4 9f 1b f6 6c dc | \.JI....uEE......[.r....l3....l. |
0b80 | ec 13 68 e2 cc c1 4b c1 0a d7 c4 06 12 c1 08 d7 b0 b1 d5 cb a6 83 69 15 b2 3d 67 42 ce f5 5b 1b | ..h...K...............i..=gB..[. |
0ba0 | 8d 34 d6 79 f0 62 c8 bd a6 9a 00 00 14 7a cf f6 db 5a b7 36 9b 21 7b ed 60 67 6f f5 c6 3a 63 4f | .4.y.b.......z...Z.6.!{.`go..:cO |
0bc0 | 5f 0a 16 93 60 88 f3 6d 84 be f6 5e 61 e9 d6 35 15 90 ba 78 e4 7c b0 b2 01 54 63 c3 e6 d1 43 01 | _...`..m...^a..5...x.|...Tc...C. |
0be0 | 40 09 5f ea 37 2e df ba c6 a6 44 3a 0e f4 de 3c 71 21 d2 5f b0 2f dd b8 c0 2a c5 22 54 05 00 55 | @._.7.....D:...<q!._./...*."T..U |
0c00 | f0 2e 6d f5 09 4a b0 fd 58 57 6a 73 05 00 00 cd e7 85 86 d5 9b dd 02 8d 74 1e e8 4b 2c 6d ad 33 | ..m..J..XWjs............t..K,m.3 |
0c20 | 77 f5 25 a0 42 08 0e 82 77 f5 e8 4b cb ec 6d b0 f7 26 9a 1b 85 be 23 e3 cb 70 2f 48 0f 50 cf 9a | w.%.B...w..K..m..&....#..p/H.P.. |
0c40 | 35 8d c6 7c 28 42 59 77 83 db 5c a8 58 74 73 9d 71 29 58 ae c9 4c 13 81 eb 59 a9 44 a1 ae 75 73 | 5..|(BYw..\.Xts.q)X..L...Y.D..us |
0c60 | b5 11 12 e7 f7 5e 89 28 15 ca f8 da 68 e8 e2 15 68 de ba d9 cd 15 7a 8e 74 5c 77 6f 6d 9e 3a a2 | .....^.(....h...h.....z.t\wom.:. |
0c80 | 33 e1 36 0a d5 7e e7 b5 81 5a 4c 3e 08 21 84 10 42 77 36 1b 0b 1e 88 75 4d ae 0b 1d d1 ec d5 63 | 3.6..~...ZL>.!..Bw6....uM......c |
0ca0 | 27 ec 8f af aa 17 09 c8 c9 c0 c9 13 81 12 00 e7 6d f2 f2 00 f2 4c 9b b2 34 b7 36 f5 ec e9 ba 8b | '...............m....L..4.6..... |
0cc0 | c5 a4 47 67 be 0d f5 06 e1 6e e6 bc 01 80 c5 66 05 88 49 79 6a 72 3a 05 48 76 7f 74 3e ca b9 1b | ..Gg.....n.....f..Iyjr:.Hv.t>... |
0ce0 | 97 39 21 7c b5 3b 98 16 1a d6 6f 5b 46 40 8e 9c dc b3 af 27 9f 8c 66 c0 7b 73 40 85 d2 49 c9 40 | .9!|.;....o[F@.....'..f.{s@..I.@ |
0d00 | 74 88 2c 64 e5 bc 62 70 3a 45 c8 df 68 3f 19 04 b7 7f 89 d3 62 b1 88 30 94 8f 0d 46 64 5f 35 4f | t.,d..bp:E..h?......b..0...Fd_5O |
0d20 | 63 e7 76 ef e9 96 9c cb b6 3f e5 b6 5b 60 38 13 ee 1d 90 bc f5 02 d0 64 6f 5f 06 80 73 b8 ed 50 | c.v......?..[`8........do_..s..P |
0d40 | 8c f4 5c 1d 8c 83 67 d9 13 0b 05 a0 c9 33 1f ec b9 9c 4a 45 32 d0 24 02 71 35 56 eb fb 03 e1 33 | ..\...g......3....JE2.$.q5V....3 |
0d60 | 67 40 05 73 cd 3c 27 00 dc 69 ff b1 5a 01 04 8b 45 80 b8 94 2f 70 76 a7 9d c8 e1 53 c7 7a 14 6b | g@.s.<'..i..Z...E.../pv....S.z.k |
0d80 | dd 22 a7 fd 0e 49 74 06 58 bd 59 20 00 2c cb 19 8d 1c 00 b0 2c a8 40 73 05 b0 d6 09 00 40 ac 95 | ."...It.X.Y..,......,.@s.....@.. |
0da0 | 62 3e 55 9a 74 90 7b c1 d2 e1 8b 9d 07 af c8 bc b3 65 b9 27 5b 28 94 62 67 8e 45 00 40 01 62 2f | b>U.t.{..........e.'[(.bg.E.@.b/ |
0dc0 | 01 18 01 00 0a 69 6a f6 99 01 00 cc 56 33 0d 15 b8 06 9f f9 5a 7f 22 c5 86 8c 75 1b b9 c2 c5 42 | .....ij.....V3......Z."...u....B |
0de0 | 29 71 a5 fd 18 00 28 54 e5 25 00 9d d1 38 ee 37 92 4f e5 05 9b 19 00 38 ab d3 38 b6 d5 e8 5b 5a | )q....(T.%...8.7.O.....8..8...[Z |
0e00 | 77 f1 ca b1 03 05 30 fb 16 57 00 0b 82 d9 2c 00 00 67 34 d2 50 81 56 00 00 10 41 90 ae 75 1e eb | w.....0..W....,..g4.P.V...A..u
}
.. This work is licensed under a Creative Commons Attribution 4.0 International
.. License.
.. http://creativecommons.org/licenses/by/4.0
.. (c) OPNFV, 2016-2017 Intel Corporation.
Yardstick - NSB Testing - Operation
===================================
Abstract
--------
NSB test configuration and OpenStack setup requirements
OpenStack Network Configuration
-------------------------------
NSB requires certain OpenStack deployment configurations.
For optimal VNF characterization using external traffic generators NSB requires
provider/external networks.
Provider networks
^^^^^^^^^^^^^^^^^
The VNFs require a clear L2 connect to the external network in order to
generate realistic traffic from multiple address ranges and ports.
In order to prevent Neutron from filtering traffic we have to disable Neutron
Port Security. We also disable DHCP on the data ports because we are binding
the ports to DPDK and do not need DHCP addresses. We also disable gateways
because multiple default gateways can prevent SSH access to the VNF from the
floating IP. We only want a gateway on the mgmt network
.. code-block:: yaml
uplink_0:
cidr: '10.1.0.0/24'
gateway_ip: 'null'
port_security_enabled: False
enable_dhcp: 'false'
Heat Topologies
^^^^^^^^^^^^^^^
By default Heat will attach every node to every Neutron network that is
created. For scale-out tests we do not want to attach every node to every
network.
For each node you can specify which ports are on which network using the
network_ports dictionary.
In this example we have ``TRex xe0 <-> xe0 VNF xe1 <-> xe0 UDP_Replay``
.. code-block:: yaml
vnf_0:
floating_ip: true
placement: "pgrp1"
network_ports:
mgmt:
- mgmt
uplink_0:
- xe0
downlink_0:
- xe1
tg_0:
floating_ip: true
placement: "pgrp1"
network_ports:
mgmt:
- mgmt
uplink_0:
- xe0
# Trex always needs two ports
uplink_1:
- xe1
tg_1:
floating_ip: true
placement: "pgrp1"
network_ports:
mgmt:
- mgmt
downlink_0:
- xe0
Availability zone
^^^^^^^^^^^^^^^^^
The configuration of the availability zone is requred in cases where location
of exact compute host/group of compute hosts needs to be specified for SampleVNF
or traffic generator in the heat test case. If this is the case, please follow
the instructions below.
.. _`Create a host aggregate`:
1. Create a host aggregate in the OpenStack and add the available compute hosts
into the aggregate group.
.. note:: Change the ``<AZ_NAME>`` (availability zone name), ``<AGG_NAME>``
(host aggregate name) and ``<HOST>`` (host name of one of the compute) in the
commands below.
.. code-block:: bash
# create host aggregate
openstack aggregate create --zone <AZ_NAME> --property availability_zone=<AZ_NAME> <AGG_NAME>
# show available hosts
openstack compute service list --service nova-compute
# add selected host into the host aggregate
openstack aggregate add host <AGG_NAME> <HOST>
2. To specify the OpenStack location (the exact compute host or group of the hosts)
of SampleVNF or traffic generator in the heat test case, the ``availability_zone`` server
configuration option should be used. For example:
.. note:: The ``<AZ_NAME>`` (availability zone name) should be changed according
to the name used during the host aggregate creation steps above.
.. code-block:: yaml
context:
name: yardstick
image: yardstick-samplevnfs
...
servers:
vnf__0:
...
availability_zone: <AZ_NAME>
...
tg__0:
...
availability_zone: <AZ_NAME>
...
networks:
...
There are two example of SampleVNF scale out test case which use the availability zone
feature to specify the exact location of scaled VNFs and traffic generators.
Those are:
.. code-block:: console
<repo>/samples/vnf_samples/nsut/prox/tc_prox_heat_context_l2fwd_multiflow-2-scale-out.yaml
<repo>/samples/vnf_samples/nsut/vfw/tc_heat_rfc2544_ipv4_1rule_1flow_64B_trex_scale_out.yaml
.. note:: This section describes the PROX scale-out testcase, but the same
procedure is used for the vFW test case.
1. Before running the scale-out test case, make sure the host aggregates are
configured in the OpenStack environment. To check this, run the following
command:
.. code-block:: console
# show configured host aggregates (example)
openstack aggregate list
+----+------+-------------------+
| ID | Name | Availability Zone |
+----+------+-------------------+
| 4 | agg0 | AZ_NAME_0 |
| 5 | agg1 | AZ_NAME_1 |
+----+------+-------------------+
2. If no host aggregates are configured, please use `steps above`__ to
configure them.
__ `Create a host aggregate`_
3. Run the SampleVNF PROX scale-out test case, specifying the availability
zone of each VNF and traffic generator as a task arguments.
.. note:: The ``az_0`` and ``az_1`` should be changed according to the host
aggregates created in the OpenStack.
.. code-block:: console
yardstick -d task start\
<repo>/samples/vnf_samples/nsut/prox/tc_prox_heat_context_l2fwd_multiflow-2-scale-out.yaml\
--task-args='{
"num_vnfs": 4, "availability_zone": {
"vnf_0": "az_0", "tg_0": "az_1",
"vnf_1": "az_0", "tg_1": "az_1",
"vnf_2": "az_0", "tg_2": "az_1",
"vnf_3": "az_0", "tg_3": "az_1"
}
}'
``num_vnfs`` specifies how many VNFs are going to be deployed in the
``heat`` contexts. ``vnf_X`` and ``tg_X`` arguments configure the
availability zone where the VNF and traffic generator is going to be deployed.
Collectd KPIs
-------------
NSB can collect KPIs from collected. We have support for various plugins
enabled by the Barometer project.
The default yardstick-samplevnf has collectd installed. This allows for
collecting KPIs from the VNF.
Collecting KPIs from the NFVi is more complicated and requires manual setup.
We assume that collectd is not installed on the compute nodes.
To collectd KPIs from the NFVi compute nodes:
* install_collectd on the compute nodes
* create pod.yaml for the compute nodes
* enable specific plugins depending on the vswitch and DPDK
example pod.yaml section for Compute node running collectd.
.. code-block:: yaml
-
name: "compute-1"
role: Compute
ip: "10.1.2.3"
user: "root"
ssh_port: "22"
password: ""
collectd:
interval: 5
plugins:
# for libvirtd stats
virt: {}
intel_pmu: {}
ovs_stats:
# path to OVS socket
ovs_socket_path: /var/run/openvswitch/db.sock
intel_rdt: {}
Scale-Up
--------
VNFs performance data with scale-up
* Helps to figure out optimal number of cores specification in the Virtual
Machine template creation or VNF
* Helps in comparison between different VNF vendor offerings
* Better the scale-up index, indicates the performance scalability of a
particular solution
Heat
^^^^
For VNF scale-up tests we increase the number for VNF worker threads. In the
case of VNFs we also need to increase the number of VCPUs and memory allocated
to the VNF.
An example scale-up Heat testcase is:
.. literalinclude:: /submodules/yardstick/samples/vnf_samples/nsut/vfw/tc_heat_rfc2544_ipv4_1rule_1flow_64B_trex_scale-up.yaml
:language: yaml
This testcase template requires specifying the number of VCPUs, Memory and Ports.
We set the VCPUs and memory using the ``--task-args`` options
.. code-block:: console
yardstick task start --task-args='{"mem": 10480, "vcpus": 4, "vports": 2}' \
samples/vnf_samples/nsut/vfw/tc_heat_rfc2544_ipv4_1rule_1flow_64B_trex_scale-up.yaml
In order to support ports scale-up, traffic and topology templates need to be used in testcase.
A example topology template is:
.. literalinclude:: /submodules/yardstick/samples/vnf_samples/nsut/vfw/vfw-tg-topology-scale-up.yaml
:language: yaml
This template has ``vports`` as an argument. To pass this argument it needs to
be configured in ``extra_args`` scenario definition. Please note that more
argument can be defined in that section. All of them will be passed to topology
and traffic profile templates
For example:
.. code-block:: yaml
schema: yardstick:task:0.1
scenarios:
- type: NSPerf
traffic_profile: ../../traffic_profiles/ipv4_throughput-scale-up.yaml
extra_args:
vports: {{ vports }}
topology: vfw-tg-topology-scale-up.yaml
A example traffic profile template is:
.. literalinclude:: /submodules/yardstick/samples/vnf_samples/traffic_profiles/ipv4_throughput-scale-up.yaml
:language: yaml
There is an option to provide predefined config for SampleVNFs. Path to config
file may by specified in ``vnf_config`` scenario section.
.. code-block:: yaml
vnf__0:
rules: acl_1rule.yaml
vnf_config: {lb_config: 'SW', file: vfw_vnf_pipeline_cores_4_ports_2_lb_1_sw.conf }
Baremetal
^^^^^^^^^
1. Follow above traffic generator section to setup.
2. Edit num of threads in
``<repo>/samples/vnf_samples/nsut/vfw/tc_baremetal_rfc2544_ipv4_1rule_1flow_64B_trex_scale_up.yaml``
e.g, 6 Threads for given VNF
.. code-block:: yaml
schema: yardstick:task:0.1
scenarios:
{% for worker_thread in [1, 2 ,3 , 4, 5, 6] %}
- type: NSPerf
traffic_profile: ../../traffic_profiles/ipv4_throughput.yaml
topology: vfw-tg-topology.yaml
nodes:
tg__0: trafficgen_1.yardstick
vnf__0: vnf.yardstick
options:
framesize:
uplink: {64B: 100}
downlink: {64B: 100}
flow:
src_ip: [{'tg__0': 'xe0'}]
dst_ip: [{'tg__0': 'xe1'}]
count: 1
traffic_type: 4
rfc2544:
allowed_drop_rate: 0.0001 - 0.0001
vnf__0:
rules: acl_1rule.yaml
vnf_config: {lb_config: 'HW', lb_count: 1, worker_config: '1C/1T', worker_threads: {{worker_thread}}}
nfvi_enable: True
runner:
type: Iteration
iterations: 10
interval: 35
{% endfor %}
context:
type: Node
name: yardstick
nfvi_type: baremetal
file: /etc/yardstick/nodes/pod.yaml
Scale-Out
---------
VNFs performance data with scale-out helps
* in capacity planning to meet the given network node requirements
* in comparison between different VNF vendor offerings
* better the scale-out index, provides the flexibility in meeting future
capacity requirements
Standalone
^^^^^^^^^^
Scale-out not supported on Baremetal.
1. Follow above traffic generator section to setup.
2. Generate testcase for standalone virtualization using ansible scripts
.. code-block:: console
cd <repo>/ansible
trex: standalone_ovs_scale_out_trex_test.yaml or standalone_sriov_scale_out_trex_test.yaml
ixia: standalone_ovs_scale_out_ixia_test.yaml or standalone_sriov_scale_out_ixia_test.yaml
ixia_correlated: standalone_ovs_scale_out_ixia_correlated_test.yaml or standalone_sriov_scale_out_ixia_correlated_test.yaml
update the ovs_dpdk or sriov above Ansible scripts reflect the setup
3. run the test
.. code-block:: console
<repo>/samples/vnf_samples/nsut/tc_sriov_vfw_udp_ixia_correlated_scale_out-1.yaml
<repo>/samples/vnf_samples/nsut/tc_sriov_vfw_udp_ixia_correlated_scale_out-2.yaml
Heat
^^^^
There are sample scale-out all-VM Heat tests. These tests only use VMs and
don't use external traffic.
The tests use UDP_Replay and correlated traffic.
.. code-block:: console
<repo>/samples/vnf_samples/nsut/cgnapt/tc_heat_rfc2544_ipv4_1flow_64B_trex_correlated_scale_4.yaml
To run the test you need to increase OpenStack CPU, Memory and Port quotas.
Traffic Generator tuning
------------------------
The TRex traffic generator can be setup to use multiple threads per core, this
is for multiqueue testing.
TRex does not automatically enable multiple threads because we currently cannot
detect the number of queues on a device.
To enable multiple queue set the ``queues_per_port`` value in the TG VNF
options section.
.. code-block:: yaml
scenarios:
- type: NSPerf
nodes:
tg__0: tg_0.yardstick
options:
tg_0:
queues_per_port: 2
Standalone configuration
------------------------
NSB supports certain Standalone deployment configurations.
Standalone supports provisioning a VM in a standalone visualised environment using kvm/qemu.
There two types of Standalone contexts available: OVS-DPDK and SRIOV.
OVS-DPDK uses OVS network with DPDK drivers.
SRIOV enables network traffic to bypass the software switch layer of the Hyper-V stack.
Standalone with OVS-DPDK
^^^^^^^^^^^^^^^^^^^^^^^^
SampleVNF image is spawned in a VM on a baremetal server.
OVS with DPDK is installed on the baremetal server.
.. note:: Ubuntu 17.10 requires DPDK v.17.05 and higher, DPDK v.17.05 requires OVS v.2.8.0.
Default values for OVS-DPDK:
* queues: 4
* lcore_mask: ""
* pmd_cpu_mask: "0x6"
Sample test case file
^^^^^^^^^^^^^^^^^^^^^
1. Prepare SampleVNF image and copy it to ``flavor/images``.
2. Prepare context files for TREX and SampleVNF under ``contexts/file``.
3. Add bridge named ``br-int`` to the baremetal where SampleVNF image is deployed.
4. Modify ``networks/phy_port`` accordingly to the baremetal setup.
5. Run test from:
.. literalinclude:: /submodules/yardstick/samples/vnf_samples/nsut/acl/tc_ovs_rfc2544_ipv4_1rule_1flow_64B_trex.yaml
:language: yaml
|