tag:blogger.com,1999:blog-54268138912569370732024-02-08T05:04:49.694+02:00blog :: skarwareby Martynas SkaringaMartynashttp://www.blogger.com/profile/00471091754225207342noreply@blogger.comBlogger29125tag:blogger.com,1999:blog-5426813891256937073.post-75389164067696590032017-08-30T20:00:00.001+03:002021-07-02T23:02:24.783+03:00BSD ir Linux OS našumo testavimas: užkardos atžvilgiu<div class="separator" style="align: center; clear: both;">
<span imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;">
<img border="0" data-original-height="256" data-original-width="256" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjr85lmJn2X4NerKoEM3nWriixRks7m4qlVp5IcZI1t7U8ZUtn0YrbP7uO10SvF_pl7sVWwM4p2wQ1gDnihwOCLtbQZxw4USXcvD5r39-gbc3ftBBRdRCQQeBefFgDXzQ_zh9St3jNGXoQ/s1600/FreeBSD_OpenBSD_Linux_Ubuntu.png" /></span></div>
<div style="text-align: justify; text-indent: 1cm;">
Rašant savo baigiamąjį bakalauro darbą tarp kolegijos IT išteklių skirtų studentų reikmėms atradau sąžiningai neblogos kompiuterių tinklo geležies (žr. 1 lentelę) todėl pasibaigus baigiamąjį darbą nusprendžiau kiek ilgiau su ja pažaisti ir ištirti tai kas senokai jau nedavė ramybės: <i>FreeBSD</i>, <i>OpenBSD </i>ir <i>Linux </i>operacinių sistemų branduolių našumas persiunčiant ir filtruojant kompiuterių tinklo paketus. Tiksliau kuri iš šių plačiai naudojamų OS turi našesnį tinklo steką ir užkardos posistemę?
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Tiesa dėl laiko stokos šis operacinių sistemų tinklo pralaidos našumo tyrimas gan paviršutiniškas, tačiau ateityje planuoju išsamesnę tiriamų OS tinklo steku analizę bei gilesnę ir įvairesnę paketų maršrutizavimo ir filtravimo testavimo metodika, paremta <a href="https://www.ietf.org/rfc/rfc2544.txt" target="_blank">RFC 2544</a> rekomendacijomis ir ne tik.
</div>
<br />
<div style="margin: 6pt 0cm; text-align: left;">
<span style="font-size: small;">1 lentelė. <b>Testavimo aplinkos aparatinė įranga</b></span></div>
<table border="0" cellpadding="0" cellspacing="1" style="border-collapse: collapse; border: none; width: 100%;">
<tbody>
<tr>
<td style="background: rgb(242, 242, 242); border: 1pt solid; padding: 0cm 5.4pt;" width="25%"><div align="center" style="margin: 3pt 0cm; text-align: center;">
<b><span style="font-size: small;">2 vnt.</span></b></div>
<div align="center" style="margin: 3pt 0cm; text-align: center;">
<b><span style="font-size: small;">HP ProLiant DL165 G7</span></b></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;">AMD Opteron™ Processor Model 6128 (2.0 GHz, 12MB Level 3 Cache, 8 cores, 80W)</span></div>
<div style="margin: 3pt 0cm;">
<span style="font-size: small;">AMD Chipset SR5670</span></div>
<div style="margin: 3pt 0cm;">
<span style="font-size: small;">2 x HP NC362i Integrated Dual Port Gigabit Server Adapter</span></div>
<div style="margin: 3pt 0cm;">
<span style="font-size: small;">4GB 1Rx4 PC3-10600R-09-10-C1-P1</span></div>
</td>
</tr>
</tbody></table>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Pažymėtina, jog testavimo aplinką sudarantys serveriai rinkoje pasirodė apie 2011 metus ir priklauso ekonomiškų modelių klasei. Jų skaičiavimų ir duomenų apdorojimo sparta nėra itin didelė. Tai reikia turėti mintyje, jog nesusidaryti klaidingos nuomonės apie nūdienos x86 architektūros platformos galimybes <i>Ethernet </i>kompiuterių tinklo mazge. Vis dėlto testuose testuojama ne geležis, o tinklo operacinių sistemų našumas.
</div>
<br />
<h2 style="text-align: center;">
<span style="font-size: x-large;">Metodika</span>
</h2>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Tiriamos <i>BSD </i>ir <i>Linux </i>operacinės sistemos su dedikuota aparatine įranga įterpiamos tarp dviejų kompiuterių – serverio ir kliento. Testų metu <i>iperf </i>programinės įrangos pagalba tarp kliento ir serverio sukuriamas vienalaikis dvikryptis duomenų srautas – tiek klientas tiek serveris generuoja ir priima duomenis – nes ir realybėje duomenys perduodami į abi puses. Visas duomenų srautas kerta testuojamą objektą ir leidžia išmatuoti jo įtaką duomenų perdavimo našumui, palyginti gautus rezultatus su kitomis testuojamomis OS. Kompiuteriai per <i>Gigabit Ethernet </i>tinklo sąsajas tiesiogiai apjungti vytos poros kabeliais, taip sumažinant pašalinių veiksnių trikdžius testų rezultatams.
</div>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgFKzItdqN4MxzUlIl88rKGlhyYDTfGySDyTL-5woqk9jg7qvr0u9QSCv-LARuX0-czhwfWAzE9Y1vQDTTvbuVA2xxWRnFf9AEHdnYYzlf8dWtTAd3kDgG14z4W7ecrOmQVX823d1UMnEo/s1600/schema.png" style="margin-left: auto; margin-right: auto;" width="640" /></td></tr>
<tr><td class="tr-caption" style="text-align: center;"><span style="font-size: small;"><b>Testavimo modelio schema</b></span></td></tr>
</tbody></table>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Šis modelis iš pirmo žvilgsnio prašo trijų kompiuterių, bet iš teisų galima atlikti ir su dviem: virtualizuojant vieną kompiuterio sistemą arba tiesiog vykdyti kelias <i>iperf </i>instancijas (kliento ir serverio) vienoje OS. Kiek pasvarstęs minusus ir pliusus nusprendžiau virš vieno fizinio serverio naudoti <i>Proxmox VE</i> virtualizacijos sluoksnį ir susikurti dvi ištekliais izoliuotas ir atskiras virtualias mašinas – serverio ir kliento imitavimui – su dedikuotomis tinklo sąsajomis per IOMMU virtualizacijos palaikymą. Šiam sprendimui daugiausia įtakos turėjo <i>Proxmox VE</i> siūlomi patogūs įrankiai nuotolinei prieigai prie virtualiųjų mašinų: tyrimo eigai derinti ir vykdyti. HP serverių siūloma <i>Lights-Out 100</i> funkcija pateikiama kaip <i>JAVA appletas</i>, kuris ne tik nebepalaikomas nūdienos naršyklėse dėl saugos, bet ir su senomis linkęs mėtyti klaidos pranešimus nei veikti kaip priklauso.
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Viena vertus, virtualizacijos sluoksnis su dviem virtualiomis mašinomis neturi kritinės reikšmės testų rezultatams, kadangi <i>iperf </i>serverio ir kliento programos neapkrauna sistemos maksimaliai – priklausomai nuo testo, bendra virtualizuotos kompiuterio sistemos apkrova svyravo nuo 30 iki 50 proc. Antra vertus, daugelį kartų kartoti testai sumažina rezultatų paklaidą.
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Visi testai atlikti su keliais <i>Ethernet </i>tinklo duomenų perdavimo vienetais – kanaliniame lygmenyje vadinamais kadrais {<i>frames</i>} – didžiausiu ir mažiausiu, bei vidutinio dydžio kadrais: 64, 512 ir 1518 baitais. Kaip jau minėta, dvikryptis duomenų srautas generuojamas su <i>iperf </i>tinklo testavimo programine įranga. Pažymėtina, jog visi testai atlikti tik su UDP paketų srautu, kadangi <i>iperf </i>įrankis tik su UDP duomenų srautu leidžia sumažinti generuojamų kadrų dydį iki 64 baitų.
</div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<span imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"><img border="0" data-original-height="335" data-original-width="290" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgUkNe3hSM7OwZ4a4vFYugJHGDAy9-T3hSONvvbQruvHGJ74Mzrw2dDZLEFoH0fbiQ0Ya4aqSrfezfvJOEdwdM_NdhDmX-Io8xifNeAvaUO5WPMZj0IcXtHU5sqr7Sf0T0ZetbIDokYuJY/s1600/Osi-model_290px.png" /></span></div>
<div style="text-align: justify; text-indent: 1cm;">
Straipsnyje naudojamos dvi kompiuterių tinklo duomenų perdavimo vienetų sąvokos – kadras {<i>frame</i>} ir paketas {<i>packet</i>} – iš pirmo žvilgsnio naudojamos pakaitomis, ir tam tikrais atvejais gali būti tapatinamos jei siekiama supaprastinti koncepcija, tačiau techniškai šių sąvokų apibrėžimas ir taikymo sritys skirtingos.
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Paketais norima pabrėžti, jog kalba eina apie duomenų perdavimo vienetus tinklo lygmenyje, tuo tarpu kadro sąvoka priklauso kanaliniam lygmeniui (žr. <a href="https://en.wikipedia.org/wiki/OSI_model" target="_blank">OSI modelį</a>). Paketus galima prilyginti laiškams, o kadrus vokui.
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Vienas standartinis <i>Ethernet </i>tinklo kadras leidžia perduoti nefragmentuotą paketą iki 1500 baitų, toks paketas apgaubtas kadro antraštėmis kanaliniame lygmenyje užima iki 1518 baitų – maksimalus perdavimo vienetas {<i>maximum transmission unit</i>} (MTU).
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Taigi, kadrų ir paketų skaičius sutampa jei IP paketo dydis nedidesnis už 1500 baitus; arba kadrų skaičius didesnis už paketų, jei pastarųjų dydis didesnis už 1500 baitus. Šiame tyrime siekta neviršyti <i>Ethernet </i>standarto MTU, todėl kadrų ir paketų skaičius testuose sutampa ir esminės klaidos nebus laikant kadro ir paketo sąvokas tapačiomis.
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Paketai šiame tyrime akcentuojami, nes testuojamas operacinės sistemos našumas tinklo lygmenyje (IP/UDP), o kadro sąvoka norint pabrėžti tinklu perduodamų vienetų dydį ir jų skaičių.
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Retas tinklo mazgas tik maršrutizuoja paketus, beveik visada jis atlieka bent minimalų duomenų srauto filtravimą ar visavertį užkardos vaidmenį. Todėl darbe bandoma ištirti ne tik kaip našiai OS persiunčia paketus su turima x86 kompiuterių architektūros aparatine įranga, bet ir kaip paketų apdorojimo spartą paveikia jų filtravimas. Taigi, šiame darbe tiriamos OS analizuojamos trimis skirtingais darbo režimais, kai:
</div>
<ul>
<li>veikia tik maršrutizatoriaus režimu {<i>forwarding</i>} (tik persiunčia paketus, filtravimas išjungtas)</li>
<li>dirba įsimenamuoju tinklo užkardos režimu {<i>stateful firewall</i>} + 25 vartotojo apibrėžtos taisyklės;</li>
<li>veikia neįsimenamuoju užkardos režimu {<i>stateless firewall</i>} + 25 vartotojo apibrėžtos taisyklės.</li>
</ul>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Tinklo užkardos testuose siekiama imituoti įprastą vartotojo sukonfigūruotą užkardos sistemą su 25 paketų filtravimo taisyklėmis, iš kurių tik viena ir paskutinė 25-oji taisyklė suteikia leidimą testo duomenų srautui kirsti testuojamą mazgą iki paskirties taško. Taip tiriama sistema priverčiama nuosekliai tikrinti visas 25 vartotojo apibrėžtas taisykles. Užkarda veikianti įsimenamuoju režimu geba įsiminti jau užmegztos tinklo sesijos paketų požymius, tad visą paketų filtravimo taisyklių sąrašą tikrina tik pirmąjį kartą (kai tinklo mazgą kerta paketas užmezgantis ryšį). Tuo tarpu užkarda veikianti neįsimenamuoju režimu besąlygiškai tikrina kiekvieną ją kertantį tinklo paketą per visas 25 taisykles (iki sąlygos praleisti). Toks taisyklių tikrinimas gali gerokai įtakoti tinklo mazgo našumą, jei šis nėra pritaikytas tinklo saugos užduotims vykdyti.
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Norint geriau suprasti testuojamų OS tinklo našumo savybes skirtingos architektūros aparatinėje įrangoje, testai buvo atliekami net tik su daugiaprocesorine sistema, bet ir imituojant vienaprocesorinę kompiuterio sistemą. Rezultatai diagramose sužymėti abiem atvejais: naudojant daugelį procesoriaus branduolių – MP (<i>multi-processor</i>), ir naudojant tik vieną branduolį – SP (<i>single-processor</i>). Šie duomenys gali praversti renkantis testuojama OS vienaprocesoriniams {<i>embedded</i>} tinklo įrenginiams, taip pat, įvertinti tiriamų OS branduolių darbo efektyvumą su daugiaprocesorinėmis SMP kompiuterio sistemomis.
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Vienam testuojamam kadro dydžiui atliekama 10 testo bandymų po 120 sekundžių. Siekiant pašalinti neproporcingus rezultatus, galimai iškreiptus dėl virtualizacijos sluoksnio ar kitų trikdžių, 3 iš 10 atmetami (su didžiausiais perdavimo nuostoliais), o iš likusių 7 testo bandymo rezultatų skaičiuojamas pralaidos, operatyviosios atminties sunaudojimo ir duomenų perdavimo nuostolių vidurkis. Vidurkis pralaidai ir atminties apkrovai užskaitomas kaip teisingas rezultatas reprezentuoti testuojamam kadro dydžiui, jei perduotų kadrų nuostolių vidurkis nėra didesnis už 0,15%, kita vertus bent pusė rezultatų šie nuostoliai nėra didesni už 0,1%.
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Testai atlikti pusiau automatizuojant rezultatų paieška su <i>bash </i>skriptais, prieš tai rankiniu būdų surandant reikiamas pralaidos reikšmes kiekvienam testuojamam kadro dydžiui taikant vadinamąjį pusėjimo/dvigubinimo {<i>halving/doubling</i>} metodą – mažinant ir didinant pralaidos parametro reikšmę du kartus – kol prie tam tikros pralaidos duomenų peravimo nuostoliai nėra didesni už 0,15 proc.
</div>
<br />
<h2 style="text-align: center;">
<span style="font-size: x-large;">Operacinių sistemų paruošimas testavimui</span>
</h2>
<br />
<div style="text-align: justify; text-indent: 1cm;">
<i>BSD </i>ir <i>Linux </i>operacinės sistemos turi nemažai panašumų: gali bei naudoja dalį tos pačios programinės įrangos, abi priskiriamos <i>Unix </i>tipo OS ir plėtojamos nemokamo ir atviro kodo principais. Tačiau, skiriasi jų plėtojimo filosofija ir tikslai. Šiam tyrimui pasirinktos populiariausios ir pagrindinės <i>BSD </i>ir <i>Linux </i>sistemos.
</div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<img border="0" data-original-height="500" data-original-width="640" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjmjQP-_M9JUg1Y-qdt6CwJfMl2bGtVlnqLEGUTVg5RcDTgYvYcyBMrfoXQOvrK6W7FY4mVNsomo9s6GLodLyKR-TzdZoHu0zjnQd4vX1y7Yk-yM5MhBPB1B-4r_Y-jD9Q-3Odr04e9_a8/s1600/640px-Unix_timeline.en.svg.png" /></div>
<br />
<br />
<div style="text-align: justify; text-indent: 1cm;">
Kaip matyti iš <i>Unix </i>tipo operacinių sistemų ryšių paveikslėlio, <i>OpenBSD </i>ir <i>FreeBSD</i> artimesnės tarpusavyje savo prigimtimi nei <i>GNU/Linux </i>OS atžvilgiu, be to <i>BSD </i>sistemos yra tiesioginis UNIX operacinės sistemos palikuonis; kita vertus beveik visos nūdien populiarios OS turi (bent filosofines) šaknis į UNIX OS (išimtis tik <i>Microsoft Windows</i>).
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Nors dauguma šiuolaikinių operacinių sistemų sugeba automatiškai prisitaikyti darbui tinkle ir pakankamai sparčiai dirba <i>Fast Ethernet</i> ir <i>Gigabit Ethernet</i> kompiuterių tinkluose be rankinio konfigūravimo. Antra vertus, papildomai paruošti darbui tinkle reiktų serveriams skirtas <i>Gigabit Ethernet</i> tinklo kortas, ir būtina jei naudojamos itin aukštos pralaidos, pvz., <i>10 Gigabit Ethernet</i> tinklo sąsajos. Šiame tyrime testuojamų OS tinklo stekai papildomai konfigūruoti siekiant pritaikyti jas maršrutizatoriaus darbui tinkle, kiek įmanoma suvienodinti tinklo steko parametrus, o kartu ir paspartinti jų našumą tinkle.
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Žemiau pateiktas operacinių sistemų tinklo steko konfigūravimas nėra rekomendacija ar pilna derinimo instrukcija kaip reiktų paruošti maršrutizatorių porodukcinei infrastruktūrai, bet viso labo reikšmingi sistemos parametrai atliktam testavimui (sąmoningai praleistas TCP konfigūravimas, kurio parametrai UDP paketų srauto testų metu neturi reikšmės).
</div>
<br />
<h3 style="text-align: center;">
<i><span style="font-size: normal;">FreeBSD 10.3 konfigūracija</span></i>
</h3>
<br />
<div class="separator" style="clear: both; text-align: center;">
<span imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"><img border="0" data-original-height="337" data-original-width="418" height="160" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiwlRE_z0-aHebM1GehwPYF7Nm3pGLvL2UlH7rhB9t_c_YW08QUHgChchluBNXUZtkjOTr2TFOqgv0da3i8PaBlUpZCLJRtz6uDMXGgy7-EtsRwa9oQ00nmWt7IUgUlfzTukhpDbtRcvj8/s200/freebsd_logo.png" width="200" /></span></div>
<div style="text-align: justify; text-indent: 1cm;">
<i>FreeBSD </i>– populiariausia <i>BSD </i>operacinė sistema, plėtojama kaip bendro pobūdžio. Filosofinis tikslas būti techniškai šiuolaikiška ir itin našia operacine sistema. <i>FreeBSD </i>pasižymi nepriekaištinga dokumentacija ir turi geriausia aparatinės įrangos palaikymą tarp kitų <i>BSD </i>tipo sistemų. Skirtingai nei <i>Linux</i>, <i>FreeBSD </i>plėtojama ir platinama kaip pilnai išbaigta OS (ne tik jos branduolys), todėl yra nuoseklesnė. Dėl išskirtinio stabilumo, saugos ir spartos santykio <i>FreeBSD </i>dažniausiai naudojama kaip serverių platforma, nors dalis jos vartotojų naudoja ir kaip stalinio ar nešiojamojo kompiuterio OS.
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Nepaslaptins, jog <i>Netflix </i>savo tinklo infrastruktūrą <a href="https://openconnect.netflix.com/en/software/" target="_blank">patiki <i>FreeBSD </i>sistemai</a>. Žinant, jog 2015 metais Šiaurės Amerikoje <a href="https://www.sandvine.com/downloads/general/global-internet-phenomena/2016/global-internet-phenomena-report-latin-america-and-north-america.pdf" target="_blank"><i>Netflix </i>duomenų srautas sudarė apie 35% viso Interneto duomenų srauto</a>, galima teigti, jog <i>FreeBSD </i>maršrutizuoja bent 35% Interneto duomenų srauto Šiaurės Amerikoje :)
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Nors <i>FreeBSD </i>turi savą užkardos sistemą (<i>ipfw</i>), dažnas tinklo administratorius pirmenybę teikia iš <i>OpenBSD </i>pasiskolintai užkardos posistemei – <i>pf</i>. Dėl to užkardos testuose <i>FreeBSD </i>naudojo <i>pf </i>modulį. Toliau pateikti visi testuotos <i>FreeBSD 10.3</i> operacinės sistemos papildomai konfigūruoti tinklo steko parametrai.
</div>
<br />
<span style="font-family: "courier new" , "courier" , monospace;"><b>/etc/rc.conf</b></span>
<br />
<pre style="background: #f0f0f0; border: 1px dashed #cccccc; color: black; font-family: "arial"; font-size: 12px; height: auto; line-height: 15px; overflow: auto; padding: 5px; text-align: left; width: 99%;"><code style="color: black; word-wrap: normal;">pf_enable="YES"
gateway_enable="YES"
ifconfig_igb1="inet 10.0.1.1/24 -tso –lro"
ifconfig_igb2="inet 10.0.2.1/24 -tso -lro"
</code></pre>
<br />
<span style="font-family: "courier new" , "courier" , monospace;"><b>/boot/loader.conf</b></span>
<br />
<pre style="background: #f0f0f0; border: 1px dashed #cccccc; color: black; font-family: "arial"; font-size: 12px; height: auto; line-height: 15px; overflow: auto; padding: 5px; text-align: left; width: 99%;"><code style="color: black; word-wrap: normal;">hw.igb.enable_msix=1
hw.igb.enable_aim=1
net.link.ifqmaxlen= 50 -> 512
hw.igb.num_queues= 0 -> 2
hw.igb.rxd= 1024 -> 4096
hw.igb.txd= 1024 -> 4096
hw.igb.max_interrupt_rate= 8000 -> 32000
hw.intr_storm_threshold= 1000 -> 300000
</code></pre>
<br />
<span style="font-family: "courier new" , "courier" , monospace;"><b>/etc/sysctl.conf</b></span>
<br />
<pre style="background: #f0f0f0; border: 1px dashed #cccccc; color: black; font-family: "arial"; font-size: 12px; height: auto; line-height: 15px; overflow: auto; padding: 5px; text-align: left; width: 99%;"><code style="color: black; word-wrap: normal;">net.inet.ip.forwarding= 0 -> 1
net.inet.ip.fastforwarding= 0 -> 1
net.inet.ip.redirect= 1 -> 0
dev.igb.1.fc= 3 -> 0
dev.igb.2.fc= 3 -> 0
dev.igb.1.rx_processing_limit= 100 -> -1 # < žymus našumo padidėjimas!
dev.igb.2.rx_processing_limit= 100 -> -1 # < žymus našumo padidėjimas!
kern.ipc.maxsockbuf= 2097152 -> 4194304
net.bpf.bufsize= 4096 -> 2097152
net.bpf.maxbufsize= 524288 -> 4194304
net.inet.raw.recvspace= 9216 -> 131072
net.inet.raw.maxdgram= 9216 -> 131072
net.inet.udp.recvspace= 42080 -> 131072
net.inet.udp.maxdgram= 9216 -> 131072
</code></pre>
<br />
<h3 style="text-align: center;">
<i><span style="font-size: normal;">OpenBSD 6.1 konfigūracija</span></i>
</h3>
<br />
<div class="separator" style="clear: both; text-align: center;">
<span imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"><img border="0" data-original-height="416" data-original-width="640" height="130" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgFDy2NPJgBOXl8w2jQjFmNL05lImEEgaU69tFYFm2umdeJWG2hkL5RUU4guxg_9_g-OCPOk9K8nV5MVL02OUlaOgh2ZY6qurljXzT4EKifJkT9-zfUMyMC0RPgaTV2KA4_h8JRF8snH20/s200/OpenBSD_Logo_-_Cartoon_Puffy_with_textual_logo_below.svg.png" width="200" /></span></div>
<div style="text-align: justify; text-indent: 1cm;">
<i>OpenBSD </i>laikoma viena iš saugiausių ir patikimiausių operacinių sistemų ne tik tarp <i>BSD</i>, bet visuotinai, todėl dažnai naudojama kritinei infrastruktūrai palaikyti, pavyzdžiui, bankuose ar kitose kibernetinei saugai itin jautriose organizacijose. Šias saugos <i>OpenBSD </i>savybes nulemia OS plėtojimo filosofija, kurią galima išskirti į tris plėtojimo tikslus: programinė įranga turi būti kaip galima atviresnė; vengti prasto, mažiau saugaus ar perteklinio programinio kodo; minimalizuoti naudojamas programinės įrangos tarnybas <i>OpenBSD </i>sistemoje pagal nutylėjimą. Taip sumažinant vadinamąjį atakos plotą visoje sistemoje.
</div>
<br />
<blockquote class="tr_bq">
Plačiau apie BSD sistemas, jų skirtumus: <b><a href="https://en.wikipedia.org/wiki/Comparison_of_BSD_operating_systems" target="_blank">Vikipedijoje</a></b>
</blockquote>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Testuose naudota <i>OpenBSD 6.1</i> sistemos versija taip pat papildomai paruošta maršrutizatoriaus vaidmeniui tinkle, tik <i>pf </i>užkardos sistema čia įgimta ir naujesnė už tą kuri integruota į <i>FreeBSD 10.3</i> sistemą. Toliau pateikti visi <i>OpenBSD </i>sistemoje konfigūruoti parametrai.
</div>
<br />
<span style="font-family: "courier new" , "courier" , monospace;"><b>/etc/sysctl.conf</b></span>
<br />
<pre style="background: #f0f0f0; border: 1px dashed #cccccc; color: black; font-family: "arial"; font-size: 12px; height: auto; line-height: 15px; overflow: auto; padding: 5px; text-align: left; width: 99%;"><code style="color: black; word-wrap: normal;">kern.bufcachepercent= 20 -> 50
net.inet.ip.ifq.maxlen= 256 -> 512
net.inet.ip.forwarding= 0 -> 1
net.inet.ip.redirect= 1 -> 0
net.inet.ip.maxqueue= 300 -> 4096
net.bpf.bufsize= 32768 -> 2097152
net.bpf.maxbufsize= 2097152 -> 4194304
net.inet.udp.recvspace= 41600 -> 131072
net.inet.udp.sendspace= 9216 -> 131072
</code></pre>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Skirtingai nei <i>Linux </i>ir <i>FreeBSD </i>sistemose, <i>OpenBSD </i>naudojo <a href="https://man.openbsd.org/em" target="_blank"><i>em </i>tinklo sąsajos tvarkykles</a>, kurios nepalaiko TSO ir LRO funkcijų, todėl jų ir išjungti nereikėjo. Apskritai, <i>OpenBSD </i>siūlo vos keletą konfigūruojamų parametrų be programinio branduolio derinimo ir kompiliacijos procesų.
</div>
<br />
<h3 style="text-align: center;">
<i><span style="font-size: normal;">Ubuntu Server 17.04 konfigūracija</span></i>
</h3>
<br />
<div class="separator" style="clear: both; text-align: center;">
<span imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"><img border="0" data-original-height="390" data-original-width="483" height="161" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh6260s7i1huCa765W7dPlPhbGQMtXeV9po8OUdvKpvY-SaQwH_UggXgLZBlgZv9yc1UFeixdt1ggE2CGDb5MB_D_pFOlXmwBCeum8hTHxagM2zzsJnYtgORDdqWDXIsJGfe-Zl8uRJysk/s200/ubuntu_linux_logo.png" width="200" /></span></div>
<div style="text-align: justify; text-indent: 1cm;">
<i>GNU/Linux</i> populiariausia ir universaliausia <i>Unix </i>tipo operacinė sistema, naudojama nuo išmaniųjų laikrodžių, telefonų iki superkompiuterių, todėl gali pasigirti geriausiu aparatinės įrangos palaikymu tarp kitų <i>Unix </i>tipo sistemų. Testuose <i>Linux</i> sistemai atstovauti pasirinkta populiari <i>Ubuntu Server</i> distribucija, minimalistine programines įrangos paketų atžvilgiu.
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Testuojama <i>Ubuntu Server 17.04</i> versija taip pat buvo papildomai paruošta maršrutizatoriaus funkcijai atlikti. Toliau pateikti visi standartinio <i>Ubuntu Server</i> tinklo steko, bei kiti konfigūruoti parametrų pakeitimai.
</div>
<br />
<span style="font-family: "courier new" , "courier" , monospace;"><b>/etc/rc.local</b></span>
<br />
<pre style="background: #f0f0f0; border: 1px dashed #cccccc; color: black; font-family: "arial"; font-size: 12px; height: auto; line-height: 15px; overflow: auto; padding: 5px; text-align: left; width: 99%;"><code style="color: black; word-wrap: normal;">for i in enp4s0f1 enp3s0f0;
do
ethtool –G $i tx 4096 rx 4096; (default 256)
ethtool –K $i tso off lro off gso off gro off; (default on, off, on, on)
ethtool –-pause $i autoneg off rx off tx off; (defult on,on)
done;
</code></pre>
<br />
<span style="font-family: "courier new" , "courier" , monospace;"><b>/etc/network/interfaces</b></span>
<br />
<pre style="background: #f0f0f0; border: 1px dashed #cccccc; color: black; font-family: "arial"; font-size: 12px; height: auto; line-height: 15px; overflow: auto; padding: 5px; text-align: left; width: 99%;"><code style="color: black; word-wrap: normal;">post-up /sbin/ifconfig enp4s0f1 txqueuelen 4096; (default 1000)
post-up /sbin/ifconfig enp3s0f0 txqueuelen 4096; (default 1000)
</code></pre>
<br />
<span style="font-family: "courier new" , "courier" , monospace;"><b>/etc/sysctl.conf</b></span>
<br />
<pre style="background: #f0f0f0; border: 1px dashed #cccccc; color: black; font-family: "arial"; font-size: 12px; height: auto; line-height: 15px; overflow: auto; padding: 5px; text-align: left; width: 99%;"><code style="color: black; word-wrap: normal;">net.ipv4.ip_forward= 0 -> 1
net.ipv4.conf.all.accept_redirects = 1 -> 0
net.ipv4.conf.all.send_redirects = 1 -> 0
net.ipv4.conf.all.accept_source_route = 0
<strike>net.core.rmem_max = 212992 -> 4194304
net.core.wmem_max = 212992 -> 4194304
net.core.rmem_default = 212992 -> 2097152
net.core.wmem_default = 212992 -> 2097152
net.ipv4.udp_rmem_min = 4096 -> 131072
net.ipv4.udp_wmem_min = 4096 -> 131072</strike>
</code></pre>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Konfigūruojant <i>Ubuntu Server </i>operacinę sistemą dalis tinklo steko parametrų ne tik nedavė didesnio našumo persiunčiant tinklo paketus, bet ir neigiamai įtakojo rezultatus. Todėl <i>Linux </i>atveju atsisakyta dalies branduolio derinimo nustatymų (išbrauktieji). Iš tiesų, keli šaltiniai Internetuose rekomenduoja papildomai nekonfigūruoti sistemos branduolio tinklo darbo atminties buferių, jei tinklo pralaida neviršija 1Gbit, o delsa mažesnė nei 50 ms.
</div>
<br />
<h2 style="text-align: center;">
<span style="font-size: x-large;">Tinklo pralaidos testų analizė</span>
</h2>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Tinklo pralaida {<i>throughput</i>} esminis tinklo našumo kiekybinis rodiklis, marketingo tikslais dažnai pateikiamas bitais per sekunde (bps), tartum leidžiantis iš pirmo žvilgsnio įvertinti tinklo įrenginio spartą. Tačiau, tinklo pralaida matuojama ne tik bitais per sekundę, bet ir kadrais/paketais per sekundę (kps/pps). Būtent pastarasis pralaidos matavimo vienetas padeda objektyviau įvertinti įrenginio spartą tinkle.
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Be to, labai svarbu nurodyti su kuriuo tinklo kadro ilgiu įrenginio pralaida išmatuota, kadangi dažnas <i>Ethernet </i>tinklo įrenginys pasieks afišuojamą 1 Gbps duomenų perdavimo spartą siunčiant didelius paketus, bet retas pasieks bent ketvirtadalį nurodytos pralaidos su mažais tinklo paketais.
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Todėl šiame tiriamajame straipsnyje pralaidos testų rezultatai bus pateikti trims skirtingiems kadro ilgiams juos matuojant kadrais per sekundę (kps) bei bitais per sekundę (bps). Pirmiausiai akcentuojant pralaidą kadrais per sekundę apačioje pateiktos stulpelinės diagramos: vertikalioje ašyje žymimas suminis vienalaikis abiejų krypčių kadrų skaičius per sekundę tūkstančiais; horizontalioje ašyje sužymėti skirtingų ilgių tinklo kadrai.</div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjtZixoSOvQJ679yKEkfkm3mp7R3mCkmof9A7w9y39gqE8pHtBFhJtXaXJntLpH50bfNH6uBCTNqjpDObVf8ewcYxRAgzamVnDG17fWBVqacj6IQQxvbGo4Akug-3TszZG33MpOB1uhDs8/s1600/forwarding_1.png" imageanchor="1"><img border="0" data-original-height="379" data-original-width="640" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjtZixoSOvQJ679yKEkfkm3mp7R3mCkmof9A7w9y39gqE8pHtBFhJtXaXJntLpH50bfNH6uBCTNqjpDObVf8ewcYxRAgzamVnDG17fWBVqacj6IQQxvbGo4Akug-3TszZG33MpOB1uhDs8/s1600/forwarding_1.png" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhggJNTYxMdXEVSsj0S-Zmk3YcPUQGvl_NXLDm569Xn3JXLdgu8OMyOubdk6lVYm3hGIRbpSczbdEucM7GrmS6f6DEnj4U1_aALPENAeo8vSH-C-KnJIFpNgEG0C8fwLscWavjp_oM0GPc/s1600/fw_stateful_1.png" imageanchor="1"><img border="0" data-original-height="379" data-original-width="640" height="190" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhggJNTYxMdXEVSsj0S-Zmk3YcPUQGvl_NXLDm569Xn3JXLdgu8OMyOubdk6lVYm3hGIRbpSczbdEucM7GrmS6f6DEnj4U1_aALPENAeo8vSH-C-KnJIFpNgEG0C8fwLscWavjp_oM0GPc/s320/fw_stateful_1.png" width="320" /></a>
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhGPlTTSXezrdIndwT7FWvDKgqcs-0uTw9L5eUuOFkyAoVe4z0nlZnG59hhPWYNXupmnWSACTqXxYEnENsqLMfCs8MAqLh1uNVCSt6Axz6X-2axl6an19Ef22orcZ2Brc0HwLV7j3c9-eY/s1600/fw_stateless_1.png" imageanchor="1"><img border="0" data-original-height="379" data-original-width="640" height="190" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhGPlTTSXezrdIndwT7FWvDKgqcs-0uTw9L5eUuOFkyAoVe4z0nlZnG59hhPWYNXupmnWSACTqXxYEnENsqLMfCs8MAqLh1uNVCSt6Axz6X-2axl6an19Ef22orcZ2Brc0HwLV7j3c9-eY/s320/fw_stateless_1.png" width="320" /></a>
</div>
<div style="text-align: center;">
<b><span style="font-size: small;"> Suminė vienalaikė dvikryptė tinklo pralaida matuojant kadrais per sekundę (tūkstančiais)</span></b></div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Kaip matyti iš testų rezultatų diagramų, jei bandytume testuojamas OS palyginti tarpusavyje su didžiausiais tinklo paketais, turėtume pripažinti visų jų lygybę, nors tai ne aparatinės įrangos spartos, o <i>Gigabit Ethernet</i> standarto lubos. Ilgiausių kadrų testai kone beverčiai šioje analizėje ir tarnauja tik kaip įrodymas, jog tinklo prietaiso spartos nereiktų vertinti su didžiausių paketų pralaida. Tai klaida būdinga tik kompiuterių tinklų neišmanėliams ir kadangi mes nesam neišmanėliai, toliau analizuojamos diagramos akcentuojant trumpiausių kadrų našumas, bei vidutinio ilgio kadrų jei šių testų rezultatai turi skirtingos informacijos.
</div>
<br />
<h3 style="text-align: center;">
<i><span style="font-size: normal;">OpenBSD</span></i>
</h3>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Vieša paslaptis, jog <i>OpenBSD </i>plėtotojų gretos daug retesnės už kitų dviejų testuojamų sistemų. Be jokių testų nemaža dalis išpranašautų <i>OpenBSD </i>daugiaprocesorinės sistemos branduoliui daug kuklesnius rezultatus lyginant su kitomis dviem testuojamomis OS. Tačiau turbūt niekas nesitikėtų, jog tos pačios operacinės sistemos MP branduolys gaus į kaulus nuo SP branduolio. Keista, bet visuose testuose <i>OpenBSD </i>operacinės sistemos SP branduolys demonstravo aiškų tinklo paketų apdorojimo spartos pranašumą prieš analogiška MP branduolį.
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Remiantis <span style="font-family: "courier new" , "courier" , monospace;">top </span>sisteminio įrankio duomenimis <i>OpenBSD </i>gebėjo paskirstyti tinklo paketų apdorojimą keliems procesoriaus branduoliams tik deja neigiamai efektyviai tą darė, tinklo pralaidos atžvilgiu. Kas dėl to kaltas sunku tiksliai pasakyti be gilesnės analizės. Galbūt naudota aparatinė įranga, o galbūt <i>OpenBSD </i>plėtojimo prioritetas sistemos saugumui prieš našumo gerinimą daugiaprocesorinėse SMP sistemose.
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Pažymėtina, jog <i>OpenBSD </i>vienintelė iš testuojamų OS turėjo įdiegtą gryną vienaprocesorinės (SP) sistemos branduolį, kurį galima paleisti krovos metu su komanda: <span style="font-family: "courier new" , "courier" , monospace;">boot /bsd.sp</span>. Tačiau tai nėra šių testų anomalios priežastis, MP branduolyje išjungiant procesoriaus branduolius (<span style="font-family: "courier new" , "courier" , monospace;">ukc> disable 55</span>) ir imituojant SP branduolio veikimą, gauti panašūs rezultatai.
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Apdorojant mažiausius kompiuterių tinklo paketus iš diagramų matyti akivaizdus <i>Ubuntu Linux</i> ir <i>FreeBSD </i>našumo pranašumas prieš <i>OpenBSD </i>operacinę sistemą. Visuose testuose ji buvo lėtesnė už kitas dvi testuotas sistemas naudojant tiek SP tiek MP branduolį. Išimtis tik keli vidutinio dydžio paketų testai tarp SP branduolių, kai <i>OpenBSD </i>paketų persiuntimo sparta gerokai pranoko <i>Ubuntu Linux</i> sistemą, bei demonstravo apylygį našumo rezultatą paketų filtravime įsimenamosios užkardos teste.
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Viena iš galimų vangaus našumo priežasčių yra prastas aparatinės įrangos palaikymas <i>OpenBSD </i>operacinėje sistemoje, kadangi ji vienintelė testuose naudotoms tinklo plokštėms, su <i>Intel</i> <i>82576 </i>valdiklio lustu, naudojo mažiau pažangias ir senesnes <i>em </i>tvarkykles vietoj naujesnių <i>igb </i>tinklo sąsajos tvarkyklių. Galima tarti, jog tai <i>OpenBSD </i>lėto plėtojimo kaltė, kadangi <i>FreeBSD </i>sistema dar nuo 2008 metų be <i>em </i>palaiko ir <i>igb </i>tinklo sąsajos tvarkykles.
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Vis dėlto našumo skirtumas tarp kitų testuotų OS nėra toks didelis, jog būtų teisinga nuvertinti <i>OpenBSD </i>kaip maršrutizatorių ar užkardos sistemą. Kaip jau buvo minėta <i>OpenBSD </i>yra viena saugiausių tinklo OS, todėl nedidelis spartos nuostolis pateisintinas saugos atžvilgiu palaikant kritinę kompiuterijos infrastruktūrą.
</div>
<br />
<h3 style="text-align: center;">
<i><span style="font-size: normal;">FreeBSD</span></i>
</h3>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Nuo seno vyrauja įsitikinimas, jog <i>FreeBSD </i>operacinė sistema turi stabilesnį ir spartesnį tinklo steką nei <i>Linux</i>. Tai argumentuojama <i>FreeBSD </i>tinklo steko paprastumu ir efektyvumu, tuo tarpu <i>Linux </i>pasižymi funkcionalumu. Tačiau <i>Linux </i>progresas niekada nesustojo, atvirkščiai, tai OS turinti geriausią palaikymą iš aparatinės įrangos gamintojų bei didžiausią plėtotojų bendruomenę tarp kitų <i>Unix </i>tipo operacinių sistemų. Natūralu, jog <i>Linux </i>tinklo steko efektyvumas su laiku didėja ir savo sparta tinkle tikrai nesiskundžia.
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Kaip matyti iš diagramų <i>FreeBSD </i>dar sugeba pasispardyti – užtikrintai lenkia <i>Ubuntu Linux </i>sistemą mažiausių paketų persiuntimo {<i>forwarding</i>} testuose, kai nenaudojama <i>pf </i>užkardos posistemė. Visgi retas tinklo mazgas tik persiunčia paketus, beveik visada naudojamas ir paketų filtravimas.
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Testuose su įjungta užkardos posisteme situacija palankesnė <i>Ubuntu Linux</i> operacinei sistemai. Nors daugelyje užkardos testuose <i>FreeBSD + pf</i> gerokai atsilieka savo sparta nuo <i>Linux + netfilter</i> paketų filtravimo posistemes, SP branduolių varžytinėse <i>FreeBSD </i>sparčiau filtruoja vidutinio dydžio IP tinklo paketus.
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Viena vertus, dėl itin spartaus paketų persiuntimo, bet lėto jų filtravimo galima kaltinti ne tik <i>FreeBSD </i>operacinę sistemą, bet ir iš <i>OpenBSD </i>pasiskolinta <i>pf</i> užkardos posistemę. Antra vertus, testuojamos <b><i>FreeBSD 10.3</i></b> ir <b><i>OpenBSD 6.1</i></b> sistemos naudoja skirtingas <i>pf</i> versijas.
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
<a href="https://github.com/freebsd/freebsd/blob/master/sys/net/pfvar.h" target="_blank"><i><b>FreeBSD 10.3</b></i>, išleista 2016-tais metais, turi integruotą <i>pf </i>posistemę iš 2009-ųjų metų <b><i>OpenBSD 4.5</i></b> versijos</a>. Per septynerius metus ne tik naujosios <i>pf </i>versijos pasikeitė savo sintakse ir pasipildė naujomis funkcijomis, bet ir perkeltoji <i>pf </i>versija kardinaliai modifikuota darbui su <i>FreeBSD</i> tinklo steku, kuris iš esmės skiriasi nuo <i>OpenBSD</i>.
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Versijų skirtumas atsirado <i>OpenBSD </i>užkardos sistemą modifikavus ir pritaikius našesniam darbui su <i>FreeBSD </i>daugiaprocesorinės sistemos branduoliu. Tačiau modifikacijos nėra perkeliamos atgal į <i>OpenBSD </i>sistemą ir <i>FreeBSD </i>priversta plaukti prieš <i>pf </i>plėtojimo srovę. Pasirodžius naujai <i>pf</i> versijai <i>OpenBSD </i>operacinėje sistemoje ir norint ją integruoti į <i>FreeBSD </i>reikia ją reikšmingai modifikuoti, o tai atima daug plėtotojų pastangų.
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Todėl panašu, jog procesas vytis naujas <i>pf </i>versijas <a href="https://lists.freebsd.org/pipermail/freebsd-current/2014-July/051255.html" target="_blank"><i>FreeBSD</i> plėtotojų bendruomenėje apstojo 2012 m</a>. Viliamasi, jog ateityje bus dažniau naudojama savoji paketų filtravimo posistemė – <a href="https://en.wikipedia.org/wiki/Ipfirewall" target="_blank">ipfw</a>, dėl didesnio našumo ir paprastesnio visos <i>FreeBSD </i>operacinės sistemos plėtojimo.
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Deja dėl laiko stokos nespėjau patikrinti kaip sparčiai savoji <i>FreeBSD </i>užkardos posistemė (<i>ipfw</i>) filtruoja tinklo paketus, o <i>pf </i>pasirinkta dėl didesnio jos populiarumo prieš savąją. Tikiuosi dievas man atleis. Aišku viena, <i>pf </i>paketų filtravimo posistemės implantacija <i>FreeBSD </i>operacinėje sistemoje veikia kur kas našiau nei gimtojoje <i>OpenBSD</i>.
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Iš testų rezultatų matyti, jog daugelio branduolių procesorius leidžia pasiekti geresnį našumą su <i>FreeBSD </i>operacine sistema. Tačiau pralaidumo padidėjimas toli gražu nėra tiesiogiai proporcingas procesoriaus branduolių skaičiui. Daugiaprocesorinė <i>FreeBSD </i>sistema leidžia apdoroti vidutiniškai 12% didesnę duomenų srauto apkrovą su mažiausiais tinklo paketais, o tai nėra ženklus padidėjimas.
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Pažymėtina, jog <i>FreeBSD </i>tik imitavo SP branduolį į operacinės sistemos paleidimo failą (<span style="font-family: "courier new" , "courier" , monospace;">/boot/loader.conf</span>) įrašius „<span style="font-family: "courier new" , "courier" , monospace;">kern.smp.disabled=1</span>“ direktyvą, kuri nurodo OS branduoliui imituoti vienaprocesorinės sistemos darbą. Mažai tikėtina, jog grynas <i>FreeBSD </i>operacinės sistemos SP branduolys parodytų ženkliai skirtingus rezultatus.
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Konfigūruojant <i>FreeBSD </i>tinklo steką pastebėta, jog daugelio eilių naudojimas per tinklo sąsają – siekiant tinklo plokštės paketus paskirstyti daugeliui procesoriaus branduolių lygiagrečiam jų apdorojimui, tikintis padidinti tinklo plokštės pralaidą – su testuota aparatine įranga ne visada davė norimą rezultatą. Todėl konfigūruojant <i>FreeBSD </i>operacinę sistemą tinklo plokštės galimų eilių skaičius buvo sumažintas nuo 8 iki 2 (<span style="font-family: "courier new" , "courier" , monospace;">hw.igb.num_queues=2</span>).
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Remiantis „<span style="font-family: "courier new" , "courier" , monospace;">systat –v 1</span>“ duomenimis, kai <i>FreeBSD </i>sistemoje naudojama daugiau nei viena eilė (procesoriaus branduolys) per tinklo sąsają, pvz., dvi eilės (du branduoliai) tinklo plokštei aptarnauti, bendras pertraukčių {<i>interrupts</i>} skaičius kompiuterio sistemoje taip pat padidėja du kartus. Deja tinklo pralaidumas tam tikrais atvejais (ieškant didžiausios pralaidos kurios nuostoliai nedidesni už 0,15 proc.) nepadidėja, o nukrenta kai sistema perkraunama pertraukčių užklausomis, dalinant paketų apdorojimą į skirtingas eiles priklausančias skirtingiems procesoriaus branduoliams.
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Galima spėti, jog tam tikrais atvejais vidinis procesoriaus duomenų srautas perkrauna jo fizines architektūros galimybes, pasireiškia duomenų perdavimo kamštis stabdantis spartų paketų apdorojimą. Viena vertus, kuo daugiau laiko sugaištama komunikuojant ir koordinuojant darbus, tuo mažiau laiko lieka naudingam darbui atlikti. Kita vertus, jei taikant keletą eilių pralaida padidėja, teoriškai padidėja ir paketų apdorojimo delsa.
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Iš tiesų, remiantis „<span style="font-family: "courier new" , "courier" , monospace;">systat –v 1</span>“ ir „<span style="font-family: "courier new" , "courier" , monospace;">top –SHIPZs1</span>“ stebėjimais, <i>FreeBSD 10.3</i> algoritmas balansuojantis pertrauktis {<i>interrupts</i>} tarp daugelio procesoriaus branduolių nėra idealus. Neretai tinklo srauto paketai apdorojami dviejų eilių pagalba, nors pakaktų ir vienos eilės per tinklo plokštę, ir atvirkščiai, naudojama tik viena eilė kai akivaizdžiai reiktų dviejų našiam tinklo darbui užtikrinti.
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Pastebimas ir balansavimo algoritmo neryžtingumas, kai vieno pralaidos testo metu kelis kart keičiasi taikomų eilių skaičius monotoniškam duomenų srautui apdoroti. Arba atliekant vieną testą <i>FreeBSD </i>gali puikiai susitvarkyti su tam tikros pralaidos duomenų srautu, bet pakartojus testą pasitaiko kitoks pertraukčių paskirstymas dėl ko paketų srauto apdorojimas sulėtėja.
</div>
<br />
<h3 style="text-align: center;">
<i><span style="font-size: normal;">Ubuntu Linux</span></i>
</h3>
<br />
<div style="text-align: justify; text-indent: 1cm;">
<i>OpenBSD </i>pasilikus saugoti užnugario reali tinklo našumo kova vyksta tik tarp <i>Ubuntu </i>ir <i>FreeBSD </i>operacinių sistemų. Kurioje, bent jau žvelgiant iš testų rezultatų diagramose, <i>Ubuntu Linux</i> su <i>netfilter </i>užkardos posisteme atrodo solidžiau, ji abiejų tipo užkardų testuose su mažiausiais tinklo paketais ženkliai lenkia <i>FreeBSD </i>sistemą.
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Taip pat geriau progresuoja <i>Ubuntu </i>našumas daugelio branduolių kompiuterio sistemoje – lyginant su vienaprocesorinę sistema tinklo pralaida su mažiausiais tinklo paketais padidėja vidutiniškai apie 32% naudojant daugiaprocesorinės <i>Linux </i>sistemos branduolį. Pastebėtina, jog testuose <i>Ubuntu </i>tik imituoja vienprocesorinę sistemą, per <span style="font-family: "courier new" , "courier" , monospace;">GRUB </span>paleidimo tvarkyklę <i>Linux</i> branduoliui perdavus parametrą „<span style="font-family: "courier new" , "courier" , monospace;">nosmp</span>“.
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Iš teisų, vienaprocesorinių sistemų užkardos testuose <i>Linux </i>tik per plauką lenkia <i>FreeBSD</i> operacinę sistemą, tačiau daugiaprocesorinių sistemų užkardos testuose <i>Linux </i>tinklo steko palaikoma pralaida vidutiniškai 29% didesnė už <i>FreeBSD</i>, ir net 93% didesnė už <i>OpenBSD </i>operacinės sistemos.
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Nors <i>Ubuntu Linux</i> daugiaprocesorinės sistemos testų rezultatai atrodo geriausiai tarp kitų testuotų operacinių sistemų, būtina pabrėžti, jog programinės įrangos dalis (<a href="https://github.com/Irqbalance/irqbalance" target="_blank"><i>Irqbalance</i></a>) <i>Ubuntu </i>OS atsakinga už pertraukčių {<i>interrupts</i>} balansavimą tarp daugelio procesoriaus branduolių nesugebėjo paskirstyti tinklo sąsajų generuojamas pertrauktis keliems branduoliams. O jei dar tiksliau, visas pertrauktis (ne tik iš tinklo plokščių) bandė atlikti su vienu nuliniu procesoriaus branduoliu.
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Sprendžiant iš Internetų ši problema nėra reta ir priklauso nuo naudojamos aparatinės įrangos. Tačiau, sprendžiant iš naudojamo <i>AMD Opteron 6128</i> procesoriaus specifikacijos, techniškai su šiuo procesoriumi pertraukčių balansavimas įmanoma, nes jo branduoliai dalinasi bendra spartinančiąja atmintine {<i>Level 3 cache</i>}. Taigi, kiek pasikrapščius su <i>Irqbalance</i> tarnyba {<i>daemon</i>} galiausiai nusprendžiau visiškai ją išjungti ir rankiniu būdu sukonfigūruoti specialius <span style="font-family: "courier new" , "courier" , monospace;">rps_cpus</span> ir <span style="font-family: "courier new" , "courier" , monospace;">cpu_affinity</span> failus, atsakingus už pertraukčių paskirstymą <i>Linux </i>sistemoje.
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Iš tiesų, net šis derinimo procesas nebuvo paprastas kaip gali pasirodyti iš pirmo žvilgsnio. Sukonfigūravus vieną variantą jis nebūtinai tiks po OS perkrovimo, tad tenka vėl ieškoti kelių branduolio ir tinklo sąsajos porų našiam pertraukčių apdorojimui. Galų gale net testavimo metu retkarčiais procesoriaus branduoliai tarsi apsikeisdavo vietomis ir tapdavo nebe efektyviausiu deriniu tinklo plokštėms aptarnauti, todėl teko kelis kartus stabdyti testavimą ir ieškoti kurie du procesoriaus branduoliai efektyviausiai lygiagrečiai darbuojasi su skirtingomis tinklo plokštėmis. Sunku pasakyti kas dėl to kaltas, bet aišku viena, su skriptais šių darbų nepavyks automatizuoti.
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Apačioje pateikta <i>bash </i>skripto iškarpa padedanti rankiniu būdu sukonfigūruoti <span style="font-family: "courier new" , "courier" , monospace;">rps_cpus</span> ir <span style="font-family: "courier new" , "courier" , monospace;">cpu_affinity</span> failų parametrus:
</div>
<pre style="background: #f0f0f0; border: 1px dashed #cccccc; color: black; font-family: "arial"; font-size: 12px; height: auto; line-height: 15px; overflow: auto; padding: 5px; text-align: left; width: 99%;"><code style="color: black; word-wrap: normal;">for i in {0..7}; do echo 000002 > /sys/class/net/ enp3s0f0 /queues/rx-$i/rps_cpus; done
for i in {0..7}; do echo 000004 > /sys/class/net/ enp4s0f1 /queues/rx-$i/rps_cpus; done
for i in {54..62}; do echo 000002 > /proc/irq/$i(enp3s0f0 IRQ)/smp_affinity; done
for i in {44..52}; do echo 000004 > /proc/irq/$i(enp4s0f1 IRQ)/smp_affinity; done
</code></pre>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Pastebėtina, jog <i>Ubuntu </i>kaip ir <i>FreeBSD </i>su testuota aparatine įranga naudoja <i>igb </i>tinklo plokštės tvarkykles, tik kiek skirtingas jų versijos: <a href="https://downloadcenter.intel.com/download/13663" target="_blank">5.4.0</a> ir <a href="https://downloadcenter.intel.com/download/15815/Intel-Network-Adapter-Driver-for-82575-6-and-82580-based-Gigabit-Network-Connections-under-FreeBSD-" target="_blank">2.5.3</a> atitinkamai. Remiantis <i>Intel.com</i> duomenimis abi tvarkyklės palaiko tas pačias tinklo plokštes. Tikėtina <i>Linux </i>skirtos <i>igb </i>tvarkykles numeracija daug aukštesne dėl dažnesnio plėtotojų indelio ir atnaujinimo. Kita vertus, <i>Linux</i> tvarkyklės dėl man nežinomų priežasčių neleido sumažinti tinklo sąsajas aptarnaujančių eilių skaičių nuo 8 iki 2, bandant tinklo steko konfigūraciją sutapatinti su <i>FreeBSD </i>sistema.
</div>
<br />
<h2 style="text-align: center;">
<span style="font-size: x-large;">Rezultatų apibendrinimas</span>
</h2>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Pabaigai tie patys visų testų rezultatai tik kitame pavidale, kai tinklo pralaida išreikšta megabitais per sekundę (Mbps). Nors testų rezultatus atvaizduojant bitais per sekundę niekas iš esmės nepasikeičia, šis matavimo vienetas suteikia papildomos informacijos vertinant tinklo prietaiso spartą. Visgi ne visi geba mintinai kadrų skaičių per sekundę versti į megabitus per sekundę. Tuo labiau, jog tai vienas dažniausių tinklo pralaidos matavimo vienetų, kartais suprantamas ir paprastų mirtingųjų tarpe.
</div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgsuwLMVoKzYk6qCC0xVKi6arzYeL0Szslxnko4mBk4LAqlvQlIB4lWlGbXgpBkAwC88b8BeKc4W_sIEf7dLxxLNtlwD8YKJqcdgdt1iuhDWVBHqTkBYxuXPjSp9VmaoLl-NQIVvSA66ss/s1600/forwarding_2.png" imageanchor="1"><img border="0" data-original-height="379" data-original-width="640" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgsuwLMVoKzYk6qCC0xVKi6arzYeL0Szslxnko4mBk4LAqlvQlIB4lWlGbXgpBkAwC88b8BeKc4W_sIEf7dLxxLNtlwD8YKJqcdgdt1iuhDWVBHqTkBYxuXPjSp9VmaoLl-NQIVvSA66ss/s1600/forwarding_2.png" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjpXMbZx6O5vRqU6AhoCLBZeTZPeoIHnjlixuE3s-AgTmBdcayQYJIFx1DAMRyLbaYp2h-8tX2_oiFy0JrKQNBkiSB1WNAi0lePUz1Qesp-TrJNQB7eS4orXUded_iTw5laLVSpjupEv7k/s1600/fw_stateful_2.png" imageanchor="1"><img border="0" data-original-height="379" data-original-width="640" height="190" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjpXMbZx6O5vRqU6AhoCLBZeTZPeoIHnjlixuE3s-AgTmBdcayQYJIFx1DAMRyLbaYp2h-8tX2_oiFy0JrKQNBkiSB1WNAi0lePUz1Qesp-TrJNQB7eS4orXUded_iTw5laLVSpjupEv7k/s320/fw_stateful_2.png" width="320" /></a>
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgK5rkAfhH4H6Nhfm3ScpnixK2V9d6xN4SQYTs_dhyQ_WQaKbxejKQmGUac2Y2bMHmmByURZKcTL5XZdNU-jGPm1JMGLgtHfYAri6OBUWfxLvbOEkHBI5_wzo5XigG6VPzVf25yCOT9770/s1600/fw_stateless_2.png" imageanchor="1"><img border="0" data-original-height="379" data-original-width="640" height="190" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgK5rkAfhH4H6Nhfm3ScpnixK2V9d6xN4SQYTs_dhyQ_WQaKbxejKQmGUac2Y2bMHmmByURZKcTL5XZdNU-jGPm1JMGLgtHfYAri6OBUWfxLvbOEkHBI5_wzo5XigG6VPzVf25yCOT9770/s320/fw_stateless_2.png" width="320" /></a>
</div>
<div style="text-align: center;">
<b><span style="font-size: small;"> Suminė vienalaikė dvikryptė tinklo pralaida matuojant megabitais per sekundę</span></b></div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Nūdien, visuotinai paplitus daugiaprocesorinėms kompiuterio sistemoms, kuomet net išmanieji laikrodžiai turi bent po kelis branduolius centriniame procesoriuje, dauguma operacinių sistemų plėtotojų nebesivargina platinti kopijų be SMP palaikymo (gryną vienaprocesorinės sistemos branduolį). Deja operacinės sistemos vis dar susiduria su sunkumais efektyviai išnaudoti daugelį centrinio procesoriaus branduolių, net jei fizinė procesoriaus architektūra tam neprieštarauja.
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Apibendrinant testuotų OS gebėjimą efektyviai progresuoti SMP kompiuterio sistemoje tinklo pralaidos atžvilgiu matoma kuriozinė situacija: <i>OpenBSD </i>MP branduolys veikė neigiamai efektyviai lyginant su SP; <i>Ubuntu </i>Linux nors ir fiksuotas vidutiniškai 32% pralaidos padidėjimas su MP branduoliu, tik rankiniu būdu pavyko priversti tinklo sąsajų pertrauktis {<i>interrupts</i>} priskirti skirtingiems branduoliams; tuo tarpu <i>FreeBSD </i>nors ir gebėjo daugiaprocesorinėje sistemoje savarankiškai paskirstyti tinklo pertrauktis skirtingiems centrinio procesoriaus branduoliams, bendras vidutinis pralaidos padidėjimas testuose tik 12 procentų.
</div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<span imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="267" data-original-width="640" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEitsSffQN6BScY4f6Nt5VCY3P_WU1XQQ9SRYc7Dvtv6gSdUP9Mfy1tcMIpTgx2j1Ym4902a3oZfUyoYo3KJ6tIaVTHgSFTBo3k9CbJ6OYOTKfz8sgCKwB-1LajqzsF7ySU3odlBDW1YFNQ/s1600/sp_mp.png" /></span></div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Galų gale taip ir liko neaišku, kaip <i>Ubuntu Linux</i> performintu jei <i>Irqbalance </i>nesipyktu su testuota aparatine įranga. Klausimas į kurį dar reikės atsakyti ateityje, o šį kart tiesiog pakelti skrybėlę ir nusilenkti <i>FreeBSD </i>operacinei sistemai, kuri vienintelė iš testuotų sistemų sugebėjo teigimai efektyviai automatizuoti pertraukčių balansavimą.
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Nereiktų nuvertinti ir operacinės sistemos kuri prioretizuoja saugumą. <i>OpenBSD </i>gali pasiūlyti išskirtinai saugią maršrutizatoriaus, užkardos ar kitą tinklo mazgo sistemą, ir bent jau vienaprocesorinėse kompiuterių sistemose – konkurencingą tinklo pralaidą. Saugai jautrioms organizacijoms nedidelis spartos nuostolis mainais į kompiuterių tinklo apsaugą, tai maža kaina už apsaugota organizacijos konkurencingumą, reputaciją ar išlikimą rinkoje apskritai.
</div>
<br />
<blockquote class="tr_bq">
Daugiau apie nūdienos kibernetinės saugos problematiką, galite perskaityti man ankstesniame straipsnyje: <a href="https://skarware.blogspot.com/2017/08/kibernetines-erdves-pazeidziamumas.html" target="_blank"><b>Kibernetinės erdvės pažeidžiamumas</b></a></blockquote>
<br />
<div style="text-align: justify; text-indent: 1cm;">
<i>FreeBSD </i>būtų neginčytinas šių pralaidos testų nugalėtojas jei vertintume OS tinklo steko našumą tik persiunčiant tinklo paketus be jų filtravimo. Vis dėlto, retas kompiuterių tinklo mazgas tik priima ir siunčia tinklo paketus, paprastai prisireikia ir užkardos funkcijų.
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Užkardos režimų testuose su mažiausiais tinklo paketais – svariausias argumentas vertinant tinklo prietaiso spartą – iš diagramų matyti <i>Linux + netfilter</i> paketų filtravimo posistemės pranašumas prieš <i>FreeBSD </i>su pasiskolinta <i>pf </i>užkardos posisteme. Skirtumas ypač ryškus <i>Ubuntu Linux</i> sistemai bandant išnaudoti daugelio branduolių SMP kompiuterio architektūrą.
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Vis dėl to, būtų neteisinga laikyti šių kompiuterių tinklo pralaidos testų nugalėtoja operacinę sistemą, kuri turėdama daug didesnę plėtotojų ir vartotojų bazę nesugeba deramai palaikyti populiarios bendro pobūdžio <i>x86 </i>aparatinės įrangos (automatizuotą pertraukčių balansavimą). Tuo tarpu mažesnį užnugarį turinti <i>FreeBSD </i>operacinė sistema su ta pačia aparatine įranga susitvarkė pakankamai neblogai.
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Kita vertus, vienas iš svarbiausių kompiuterio tinklo kokybinių rodiklių, padedančių įvertinti tinklo ar atskiro jo mazgo spartą, yra paketų delsa – laiko tarpas kurį paketas pralaidžia tinkle. Šiuo atveju buvo fiksuojama delsa tik per vieną kertamą tinklo mazgą, kuri parodo kiek laiko prireikia testuojamai operacinei sistemai apdoroti tinklo paketą. Nespėjau iki galo pilnai patvirtinti delsos rezultatus visuose OS, bet iš to ką mačiau <i>FreeBSD </i>sukeltoji delsa pastebimai mažesnė už <i>Ubuntu Linux</i> sistemos.
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Matuodamas tinklo pralaidą kiekvieno testo gale fiksavau ir operatyviosios atminties (sukeitimų skaidinys {<i>swap</i>} buvo išjungtas) sunaudojimą operacinėje sistemoje ir suspėjau surinkti pakankami duomenų, jog drįsčiau jais pasidalinti. Per daug nesismulkinant į atskirus testuotų operacinių sistemų režimus, tarp kurių skirtumas nėra žymus, pateikiu vidutinį jų laisvosios prieigos atminties užimtumą per OS.
</div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<span imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="267" data-original-width="640" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj1t-IdUY5qL_mcroihDEl4R0jraxrV5gqExa8S_laekhMK6VZuVumQs6HImIXS_2U2Thlp4ppeciHgUrLCTP6QxSAExmPve2VRRf3gYezM0Sie0imHcPzyhRsAjiOuYUX-W0k2_C9ll1I/s1600/ram.png" /></span></div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Žvelgiant į operacines sistemas iš kitos perspektyvos, jų alkį operatyviajai atminčiai, šį kart <i>Ubuntu </i>atrodo prasčiausiai, tiesą sakant tikras kompiuterio sistemos resursų ėdrūnas. <i>FreeBSD </i>ir <i>OpenBSD </i>po bazinės instaliacijos (be papildomų dietos pastangų) toms pačioms užduotims reikalauja du, tris kartus mažiau laisvosios prieigos atminties. Ir tai nėra <i>Ubuntu Desktop</i> versija, bet resursus taupanti <i>Ubuntu Server</i> distribucija.
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
<i>Linux </i>nutukimo problemą lemia sukaupti turtai – tvarkyklių ir modulių gausa. Apskritai, nebevaldomas noras <i>Linux </i>sistemą iškelti į stalinių kompiuterių rinką, tokios programinės įrangos kaip <i>Systemd </i>adaptacija ir priklausomybės nuo jos didėjimas <i>Linux </i>ekosistemoje rodo, jog populiariausios <i>Linux </i>distribucijos tolsta nuo <i>Unix </i>filosofijos. Tuo tarpu <i>BSD </i>operacinės sistemos išlieka ištikimos paprastumui – vis dar tiki ir plėtojamos pradine <i>Unix </i>filosofija – lengvai pakeičiama modulinė programinė įranga ir minimalizmas.
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Iš tiesų, ypač minimalistinę <i>Linux </i>distribuciją savo reikmėms galima susirinkti ir pačiam, tačiau kas garantuos tavo kūriniui stabilumą, kaip dėl palaikymo kurį galima gauti iš <i>Ubuntu </i>ar <i>Redhat</i>? Kaip sakoma <i>from here you're on your own</i>. Rizikingas žingsnis statyti smėlio pilis produkcinei infrastruktūrai. Todėl šiame tyrime testuojamos tik vientisos ir pilnai išbaigtos operacinės sistemos.
</div>
<br />
<h3 style="text-align: center;">
<i><span style="font-size: normal;">Viską susumavus... FreeBSD rocks</span></i>
</h3>
<br />
<div class="separator" style="clear: both; text-align: center;">
<span imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="235" data-original-width="570" height="164" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi3pcs0YBnPBOmV7ksBGctGtqEVSGfljXaC6-7urxfw7PWASqjXtWHc91rhAVparzN0quFEhbfXtmUqOYMGdHQ6R2f9HnOJ3eUpU8KOYtSdVYIJH4m-I7kAxhKCuDwUllNPJjaHKAS7Zuk/s400/unix_podiumas.png" width="400" /></span></div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Susumavus visas išvadas galima teigti, jog <i>FreeBSD </i>vis dar išlaiko našiausio tinklo steko titulą tarp kitų nemokamų ir atvirojo kodo operacinių sistemų. Vis dėlto, nesiryžtu per daug atkakliai tvirtinti, jog tai absoliuti ir neginčytina tiesa. Galbūt konfigūruojant sistemas testams buvo ir mano klaidų lėmusių prastesnius rezultatus. Atvirai pripažįstu testavimo metodika turi trūkumų, pvz.: imituojant realybei artimą kompiuterių tinklo situaciją duomenų srautas turėtų sklisti iš daugelio į daugelį skirtingų IP adresų, ar bent jau skirtingus IP adresų prievadus; <i>iperf </i>parankus įrankis tinklo testavimui, tačiau jis negali parodyti kaip tinklo mazgas susitvarko su 1000 ar daugiau vienalaikių tinklo sesijų. Maža to, testuose neleista pasireikšti savajai <i>FreeBSD </i>užkardos sistemai (<i>ipfw</i>), kuri sprendžiant iš Internetų lenkia pasiskolintą pf posisteme savo sparta, galbūt ir nurungti <i>Linux + netfilter</i>.
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Idėjų kaip patobulinti testavimo metodiką netrūksta, trūksta tik laiko ir aukštos pralaidos aparatinės įrangos (bent <i>10G Ethernet</i>) objektyvesniam testavimui. Žinoma, nereiktų nuvertinti ir tai kas buvo atlikta, tiesos mano testavimuose tikrai yra. Jei turit pastabų ar pasiūlymų, galit drąsiai pasireikšti komentarų sekcijoje. Konstruktyvi kritika visada laukiama ir į ją bus atsižvelgta ruošiantis kitiems eksperimentams.
</div>
<br />
<h3 style="text-align: center;">
<i><span style="font-size: normal;">Going BSD style</span></i>
</h3>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Neseniai teko perkelti savą Interneto svetainę (<i><a href="https://martynas.skaringa.dev/" target="_blank">martynas.skaringa.dev</a></i>), bei keletą kitų tinklo tarnybų į naują serverį. Po ilgų skaitymų ir asmeninių testavimų nusprendžiau atsisakyti iki šiol naudotos <i>CentOS </i>operacinės sistemos ir patikėti šį darbą <i>FreeBSD</i>. Sprendimas buvo tik natūralus norint patalpinti savas Interneto paslaugų tarnybas į itin ekonomišką 1 vCPU, 512MB RAM ir 20GB disko talpos VPS serverį, <a href="https://www.vultr.com/?ref=7211065" target="_blank">vos už 2,5 $/mėn</a>.
<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://www.vultr.com/?ref=7211065" imageanchor="1" style="margin-left: 1em; margin-right: 1em;" target="_blank"><img border="0" data-original-height="60" data-original-width="468" src="https://www.vultr.com/media/banner_2.png" /></a></div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Tokie kuklus serverio ištekliai būtų tikras iššūkis sunkiasvorei <i>CentOS </i>ar <i>Ubuntu </i>operacinei sistemai, tačiau su <i>FreeBSD </i>visa mano serverio sistema tesvėrė kiek daugiau nei 300MB RAM (nenaudojant <i>{swap} </i>skaidinio), vidutinė centrinio procesoriaus apkrova tik 2 proc, o disko talpa su visa programine įranga ir išeities kodu tik 3,2GB. Pasirinkus <i>OpenBSD </i>operacinė sistemą išteklių panaudojimo efektyvumas dar išaugtų, vis dėlto, <i>FreeBSD </i>šiuo atveju man pasirodė tinkamesnis pasirinkimas dėl didesnio lankstumo.
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Fanatizmas prie gero nepriveda, bet panašu vis labiau linkstu į tikrosios <i>Unix </i>platformos gretas ir ateityje sąmoningai nepraleisiu progos dislokuoti <i>BSD </i>sistemą ten kur ji adekvati iškeltoms užduotims atlikti, o gal ir tinkamesnė už vis labiau išpūstą pingviną. Vienas iš pagalbininkų šiai misijai vykdyti neabejotinai bus <i>pfSense </i>– itin populiari atvirojo kodo tinklo užkardos sistema – plėtojama <i>FreeBSD + pf</i> operacinės sistemos pagrindu.
</div>
<blockquote class="tr_bq">
Daugiau informacijos apie nemokama ir atvirojo kodo <i>pfSense </i>užkardos sistemą galite surasti mano kitame straipsnyje: <a href="https://skarware.blogspot.com/2016/10/pfsense-kompiuteriu-tinklo-mazge.html" target="_blank"><b><i>pfSense </i>kompiuterių tinklo mazge</b></a></blockquote>
<br /></div>
Martynashttp://www.blogger.com/profile/00471091754225207342noreply@blogger.com0tag:blogger.com,1999:blog-5426813891256937073.post-3518291135869847302017-08-29T21:18:00.000+03:002017-12-28T21:18:25.815+02:00Visuotinė Wi-Fi bevielio ryšio problema<div class="separator" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em; text-align: center;">
<img border="0" data-original-height="164" data-original-width="256" height="128" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjd__qNra3xnaji22sA5pcb0AXZhOicJ76sd0-JxCvX1k7QkDNMoLMWPyfQr5CAyAfIwpwXKjadHSIWYE4qGfiQ10b83KhXJQ0KfE2d58sV28hrZNlLFj_Kq7Vjc2ZwrTsWDRa7EXhUN08/s200/wifi_logo.png" width="200" /></div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Savo tinklaraštyje visada rašau šiek tiek apie kosmosą, tai kas aktualu man kaip informatikui, bet nelabai aktualu paprastiems mirtingiesiems. Tad šį kartą nusprendžiau parašyti trumpą straipsnį apie labai aktualią problemą mums visiems, ypač tiems kurie gyvena didmiesčiuose, tankiai apgyvendintoje teritorijoje, pvz., daugiabutyje, kur egzistuoja Wi-Fi prietaisų perteklius.
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Iš tiesų, šį straipsnį paskatino parašyti šeimos gydytojas, kuris greičiausia juokais paklausė kodėl jo kompiuteris dažnai atsijunginėja nuo Wi-Fi prieigos taško esant gana stipriam signalui. Aš dažnai nesuprasdamas juokų iškart nusprendžiau, jog tai rimta problema ir būtina ją išspręsti.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Pirma kilusi mintis buvo, jog kažkas bando įsilaužti ar tiesiog nulaužti jo Wi-Fi erdvę siunčiant deautentifikavimo paketus. Antra ir daug realesnė priežastis, išsiaiškinus, jog problema kyla daugiabutyje, tai buitinėmis 2,4 GHz radijo bangomis perpildytas eteris.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Bandžiau paaiškinti kodėl mano nuomone ta problema kyla, kodėl tai yra visuotinė problema daugiabučių gyventojams, kaip būtų galima pabandyti ją išspręsti. Tačiau suprantam žodžiu paaiškinti problemą ir jos sprendimą per daug sudėtinga žmogui be techninio išsilavinimo.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Taigi, gimė idėja parašyti straipsnį kuris būtų aktualus visiems piliečiams, ne tik informacinių technologijų atstovams (nors iš mano patirties ir dalis informatikų nesugeba dorai sukonfigūruoti Wi-Fi prieigos taško). Toliau bandysiu kaip galima paprasčiau paaiškinti kaip veikia Wi-Fi bevielis kompiuterių tinklas, kaip vyksta duomenų kaita tarp bevielės prieigos taško ir jos klientų, kodėl susidaro problema, ir kaip ją galima sušvelninti.
</div>
<br />
<h3 style="text-align: center;">
<i><span style="font-size: normal;">Radijo eterio dalybos</span></i>
</h3>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Kaip žinia Wi-Fi bevielio ryšio duomenys siunčiami radijo bangomis. Wi-Fi atveju dažniausiai naudojami 2,4 GHz arba 5 GHz dažnių diapazonai. Labiausiai paplitę prietaisai kurie dirba 2,4 GHz dažniu, todėl mūsų aplinka gali būti itin užteršta šiomis radijo bangomis.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Iš tiesų Wi-Fi standartai dirbantys 2,4 GHz dažniu (802.11a/b/g/n), užima vos 100 MHz dažnių juostą (maždaug nuo 2400 iki 2500 MHz), kuri suskirstyta į 14 fizinių kanalų po 20 MHz. Kadangi visi kanalai turi sutilpti į 100 MHz diapazono juostą, jie persidengia, o tai dažniausiai ir sukelia Wi-Fi ryšio našumo problemas.
</div>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhRkFOWA13b5f_lPT9o-imOnAuQPyByJkUMr0TlsszXRdKrz7f91PY7-5YS0EMPyaR-pxqxrND9gTb3FMrFE95fWQb-7XhZ02kzqdOsMgUMLbnDTf9EDExRWtgpjNrrcEhGF_sm3CHCHuQ/s1600/wifi+channels.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="900" data-original-width="1024" height="351" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhRkFOWA13b5f_lPT9o-imOnAuQPyByJkUMr0TlsszXRdKrz7f91PY7-5YS0EMPyaR-pxqxrND9gTb3FMrFE95fWQb-7XhZ02kzqdOsMgUMLbnDTf9EDExRWtgpjNrrcEhGF_sm3CHCHuQ/s400/wifi+channels.png" width="400" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Loginiai (kairėje) ir fiziniai (dešinėje) Wi-Fi kanalai</td></tr>
</tbody></table>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Taip pat reiktų nemaišyti Wi-Fi prieigos taškų loginių kanalų su fiziniais: loginiai tai Wi-Fi prieigos taško parinkti vardai (SSID) galintys egzistuoti tuose pačiuose fiziniuose kanaluose.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Tuo tarpu 5 GHz Wi-Fi veikia kur kas platesniame dažnių diapazone, maždaug 1000 MHz (nuo 4900 iki 5900 MHz), išskaidytą į 62 fizinius kanalus. Šis kanalų skaičius pats savaime išspręstų daugumos radijo eterio dalybų problemų. Be to, aukštas radijo dažnis geriau izoliuojamas patalpų sienų, todėl jo radijo sklaida bei eterio tarša mažesnė dėl aukšto radijo dažnio charakteristikos.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Nors 2013 metais pristatytas 802.11ac bevielio ryšio standartas apibrėžia Wi-Fi prietaisus dirbančius 5 GHz dažnio diapazone, šiandien, 2017 metais, daugelis Wi-Fi prieigos taškų duomenų apsikeitimui vis dar naudoja 2,4 GHz diapazoną. Deja panašu, jog situacija artimiausiu laiku nesikeis, 2,4 GHz dažnis ir toliau dominuos Wi-Fi tinkluose. Maža to, tą patį diapazoną naudoja ir mikrobangų krosnelė (tad nesistebėkit jei spraginant popkornus nusprogsta ir bevielis interneto ryšys), <a href="https://en.wikipedia.org/wiki/List_of_2.4_GHz_radio_use" target="_blank">bei keletas kitų buities prietaisų</a>.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Svarbiausia Wi-Fi bevielio ryšio koncepcijoje suprasti, jog visi prietaisai dirbantis tame pačiame dažnio diapazone turi dalintis radijo eteriu pakaitomis – siųsti signalą tik tada kai eteryje niekas kitas netransliuoja pranešimo. Tuo tarpu bevieliai prietaisai dirbantys gretimu dažniu nors ir gali siųsti pranešimus kartu, tačiau toks radijo bangų transliavimas sukelia dar didesnę problemą – radijo trukdžius {<i>interference</i>}. Būtent tai ir yra didžiausias bevielio ryšio minusas, jog vienu metu į eterį transliuoti radijo bangas gali tik vienas prietaisas, antraip besiklausantys prietaisai nesugebės atskirti iš kur ir kam skirtas signalas.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Tai vaizdžiai iliustruoti būtų galima įsivaizduoti pilną kambarį žmonių, kurie stovi per tam tikrą atstumą ir visi vienu metu šnekasi, bet nė vienas kito gerai nesupranta dėl susidariusio triukšmo. Taip ir su radijo bangomis, prietaisai negali tinkamai atskirti signalo kai radijo eteryje per daug triukšmų.
</div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<img border="0" data-original-height="683" data-original-width="1024" height="427" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiZZ_sQCbqKkQj_hzKvPEJbNe6EW-TlJtNNJvMnEM8aC0ojRBO036LUaGVDqRvXo4tNXWo3WsdECngIGksnF7oNTAN_VZY5S-sE0vSH3aDYMPRWVlIpdrgZAuiIUoO8KBsL6tfKevc0d_A/s640/wifi+room+example.jpg" width="640" /></div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Nesunku padaryti išvada, kuo daugiau turime prietaisų bevieliame kompiuterių tinkle, tuo mažesnis bevielio ryšio našumas. Iš tiesų, būtina pabrėžti, jog net gretimas kaimyno bevielio ryšio prietaisas dirbantis tame pačiame ar gretimame fiziniame kanale (tuo pačiu ar iš dalies persidengiančiu dažniu), taip pat trukdo ir jūsų Wi-Fi bevielio ryšio tinklui.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Techniškai bevieliai prietaisai dirbantis tais pačiais dažniais sudaro vadinamąsias susidūrimų sritis {<i>collision domain</i>}. Siekiant išvengti bevielio tinklo paketų susidūrimo {<i>packet collision</i>} Wi-Fi tinklo prietaisai užprogramuoti siųsti pranešimus į radijo eterį tik tada kai šis laisvas. Jei radijo eteris užimtas, bevieliai prietaisai laukia atsitiktinį laiko tarpą iki bando vėl transliuoti pranešimą.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Vadinasi, jei savo namuose turite Wi-Fi prieigos tašką ir tris prietaisus bendraujančius su juo, tai dar nereiškia, jog Wi-Fi radijo eteri jūs dalinatės tik su trimis prietaisais. Jei kaimyno Wi-Fi prieigos taškas ar kitas bevielio ryšio prietaisas dirba tuo pačių ar gretimu fiziniu kanalu, jūs savo radijo eterį dalinatės ir su kaimyno Wi-Fi bevielio ryšio prieigos tašku bei jo klientais. Tas pats galioja ir kaimynui, šis taip pat turės dalytis savo radijo eteriu jei iš jūsų prietaisų signalas nusklis iki jo bevielio tinklo prietaisų.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Taigi, jei mūsų turimas bevielis prieigos taškas skelbiasi palaikantis 600 Mbps duomenų perdavimą (802.11n standartas), reali jo pralaida yra maždaug dešimtadaliu mažesnė, apie 60 Mbps jei Wi-Fi prieigos taškas ir klientas tarp kurių vyksta duomenų mainai yra pakankamai arti vienas kito, o aplink nėra kitų prietaisų naudojančių tą patį dažnio diapazoną (tobula situacija, radijo eteris visada laisvas).
</div>
<div style="text-align: justify; text-indent: 1cm;">
Jei tarsim, jog mūsų turimas Wi-Fi prieigos taškas turi prie jo prijungtus 3 bevielio ryšio prietaisus (pvz., telefonas, TV ir kompiuteris), be to, jei gretimais tuo pačių ar persidengiančiu dažniu dirba kitas, kaimynams priklausantis, prieigos taškas su dar 2 bevielio ryšio klientais, galima tarti, jog reali Wi-Fi tinklo pralaida pasidalina į 6 dalis ir vidutinė bevielio tinklo prietaiso pralaida gali nukristi iki maždaug 10 Mbps.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Žinoma, tai tik pavyzdys, kuris padeda suvokti kaip veikia bevielis kompiuterių tinklas ir kokia nenuspėjama jo pralaida. Visgi tai ką nūdien skelbia bevielės prieigos maršrutizatorių gamintojai ant savo prietaisų dėžutės (pvz., 802.11ac standarto Wi-Fi prietaisas laiduoja 3 ar net 5,3 Gbps), yra teoriškai teorinė pralaida mažai ką bendro turinti su realybe, bet labai artima su marketingo departamentu.
</div>
<br />
<h3 style="text-align: center;">
<i><span style="font-size: normal;">Stipresnis signalas = silpnesnis ryšys</span></i>
</h3>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Prisiminkime pavyzdį su kambariu pilnu žmonių, kurie stovi vienas nuo kito per atstumą ir bando susikalbėti, bet kadangi visi kalbasi vienu metu, niekas gerai vienas kito nesupranta. Tarkime, jog kambaryje esantys žmonės bandys susikalbėti garsiau kalbėdami ar net rėkdami. Tačiau tai tik dar pablogins situaciją, bus ne tik masinis triukšmas, bet ir labai garsus, kuris dar labiau slopins klausos funkciją.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Šis kambario atvejis gerai parodo, kodėl nereiktų naudoti Wi-Fi prieigos taškų kurie stengiasi perrėkti kitus prieigos taškus. Jei visi naudos pastiprinto signalo Wi-Fi prietaisus, situacija ne pagerės, o pablogės, kadangi vieno prietaiso signalas nuskils ilgesnį kelią ir sukels daugiau triukšmo kitiems, kas tik dar labiau užterš aplinką radijo bangomis. Dėl tos priežasties neverta naudoti ir Wi-Fi prietaisų su jautresniu radijo bangų imtuvu.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Kas nors paskys: „bet gi mano kompiuteris su galingesniu ir jautresniu Wi-Fi maršrutizatoriumi geriau susikalbės!“, o aš manau, jog jis puikiai susikalbėtų ir nerėkiant į ausį. Jei visi aplink pradės rėkauti, tavo kompiuteris išgirs ne tik tavąjį Wi-Fi prieigos tašką, bet ir gretimų kaimynų belaidžio tinklo prietaisus. Gali turėti visas padalas ryšio stiprumo indikatoriuje, visgi jei aplink bus daug triukšmo, prietaisas gaus labai mažai laiko transliuoti pranešimu į laisvą radijo eterį ir praktiškai išnaudoti tą „gerą signalą“. Jei triukšmų aplink labai daug, net su stipriu signalu bevielio ryšio prietaisas gali savaime atsijunginėti nuo tinklo.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Vadinasi, naudodami stipresnį signalo siųstuvą išnaudosite ne tik daugiau energijos, bet sukursite ir daugiau triukšmo radijo eteryje kuris yra pagrindinis bevielio ryšio problemų kaltininkas. Tuo tarpu vidutinio stiprumo signalas tokių didelių problemų nesukelia. Manau sutiksite, jog jei viename kambaryje visi pasirinktų tinkamą atstumą nuo savo pašnekovo, kalbėtų pakaitomis ir kalbėtų normaliu balsu nesistengdami vienas kito perrėkti (ar net šnabždėdami), vienas kitą suprastų ir susikalbėtų kuo puikiausiai.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Taigi, stipresnis bevielio ryšio signalas, dažnai dėl marketingo kaltės, yra klaidingas problemos sprendimas ne iš to galo. Stipresnis signalas dažniau pablogina situaciją tankiai apgyvendintoms vietovėms nei ją išsprendžia.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Viena vertus, neverta piktnaudžiauti Wi-Fi skleidžiamu signalu, bet geriau surasti namuose centrinę-optimalią padėtį Wi-Fi prieigos taškui, kuris veiks normaliu ar net sumažintu energijos skleidimo radijo bangomis rėžimu ir netrukdys bei neprovokuos kitų kaimynų stiprinti savo signalo pajėgumus, kas atsilieptų neigiamai ir jums. Reikia suprasti, jei jūs trukdysite kaimynui, kaimynas gali nusipirkti galingesnį įrenginį kuris trukdys ir jums.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Kita vertus, kuo stipresnį signalą skleidžiate į eterį ir kuo toliau jis nusklinda, tuo labiau esate pažeidžiamas kibernetinėje erdvėje. Šiandien, 2017 metais, kai žinoma, jog WPA2 realizacija tam tikruose prietaisuose turi kritinę saugumo spragą (<a href="https://www.krackattacks.com/" target="_blank">KRACK</a>), savo signalo stiprumą reiktų minimalizuoti norint išvengti informacijos nutekėjimo. Taip pat verta signalo stiprumą minimalizuoti jei savo interneto dalybos jums ne prie širdies. Savaime suprantama, apie saugumą sąmoningai daugiau nieko nerašau, kas žino kada man reikės pasiskolinti jūsų internetus jums leidus (leidimą suprantu kaip nesaugiai sukonfigūruotą bevielės prieigos tašką). Ačiū.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Iš tiesų, o kaip gi minimalizuoti signalo stiprumą? Pirmiausia tai vengti Wi-Fi prieigos taško prietaisų kurie prisistato kaip itin stipraus signalo siųstuvo ir jautraus imtuvo. Rinkoje yra ir protingų Wi-Fi taškų, kurie stengiasi optimizuoti energijos sklaidą radijo bangomis, turi grįžtamąjį ryši su belaidžio tinklo prietaisais. Daug ką lemia ir parinkta vieta, antenų kryptis. Vienas iš įdomesnių projektų apie kurį teko neseniai skaityti, tai <i>WiPrint</i> (<a href="http://dartnets.cs.dartmouth.edu/wiprint" target="_blank">http://dartnets.cs.dartmouth.edu/wiprint</a>), kuris sukuria specifinių poreikių anteną, šią galima atsispausdinti 3D spausdintuvu ir lengvai pritaikyti Wi-Fi prieigos taškui. Sukurta antena leidžia optimizuoti bevielės prieigos ryšį savose patalpose, bei minimalizuoti signalo stiprumą už patalpų ribų. Deja šis projektas nėra atvirojo kodo iniciatyva, panašu jog autoriai ketina savo tyrimus paversti pinigais nei kilniais tikslais.
</div>
<br />
<h3 style="text-align: center;">
<i><span style="font-size: normal;">Nepersidengiantys Wi-Fi kanalai</span></i>
</h3>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Taigi, manau jau pasidarė aišku, jog didžiausios Wi-Fi problemos kyla dėl netinkamo fizinio kanalo naudojimo ir per stipraus signalo skleidimo. Iš tiesų, nesvarbu kokį spartų, galingą ir jautrų Wi-Fi bevielės prieigos prietaisą jūs turėsite, jei šis bus blogai sukonfigūruotas – darbinis dažnis persidengs su gretimais bevielio ryšio prietaisais – bevielio kompiuterių tinklo sparta bus labai menka ir nepastovi.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Kaip jau buvo minėta straipsnio pradžioje, 2,4 GHz dažnio Wi-Fi prieigos taškas naudoja maždaug 100 MHz dažnio diapazoną suskirstytą į 14 kanalų, iš kurių tik 11 palaiko visi bevieliai prietaisai. Kadangi vieno kanalo plotis 20 MHz, šie kanalai persidengia, o tai, kaip jau išsiaiškinome, dažniausiai ir sukelia Wi-Fi ryšio problemas.
</div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<img border="0" data-original-height="103" data-original-width="631" height="104" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhNysJphSbD7QExpyc6bZ3hRZYG8kr2RkeifmVo_LnUo9DjnSXHNU2u5_njkYkeqjfLLC-1nMbro7-voweoQhKqobaXQA3r21T0ug-EonzMbalTZZ_bLDXqEW4yMV_guLZOKBBbLKVtug4/s640/2.4+wifi+kanalai.png" width="640" /></div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Vis laimė, tarp tų vienuolikos yra trys fiziniai kanalai tarpusavyje nepersidengiantys – 1, 6 ir 11 – trys atskirtos 20 MHz dažnių juostos. Tačiau, jei su 802.11n standartu naudojamos platesnės – 40 MHz dažnių juostos, be persidengimų 100MHz ruože jų tilps tik dvi. Vis dėlto 40 MHz dažnio juostos nerekomenduojamos jei aplink yra bent keli kiti Wi-Fi prieigos taškai su savais bevieliais kompiuterių tinklais. Šios platesnės dažnių juostos naudojamos padidinti pralaidai bevieliame tinkle, deja dažnu atveju jos daro daugiau žalos nei naudos.
</div>
<br />
<h3 style="text-align: center;">
<i><span style="font-size: normal;">Wi-Fi tinklų skenavimas</span></i>
</h3>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Norint pasirinkti tinkamą Wi-Fi kanalą reikia pirmiausia mokėti pasitikrinti savo aplinkos Wi-Fi kanalų užimtumą, bei pačių naudojamą kanalą radijo eteryje. Todėl toliau bandysiu trumpai paaiškinti kaip nuskenuoti Wi-Fi kanalų užimtumą jūsų aplinkoje.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Šiai dienai tai gana paprasta, užtenka turėti išmanųjį telefoną ir išsirinkti vieną iš siūlomų Wi-Fi bevielių kompiuterių tinklų analizatorių. Mano rekomendacija būtų <a href="https://play.google.com/store/apps/details?id=com.vrem.wifianalyzer" target="_blank"><i>WiFiAnalyzer</i></a> arba <a href="https://play.google.com/store/apps/details?id=com.farproc.wifi.analyzer" target="_blank"><i>Wifi Analyzer</i></a> programėlės iš <i>GooglePlay</i> tiems kurie turi <i>Android </i>OS telefonus ar planšetes. <i>Windows </i>OS vartotojai gali išbandyti <a href="https://www.microsoft.com/en-us/store/p/wifi-analyzer/9nblggh33n0n" target="_blank"><i>WiFi Analyzer</i></a> programėlę iš <i>Microsoft Store</i>. Obuolio vartojai gali toliau būti pasikėlę.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Apsiginklavę Wi-Fi analizatoriaus programėle panagrinėkime keletą Wi-Fi bevielių kompiuterių tinklų persidengimo atvejų tankiai apgyvendintoje vietovėje, tai leis geriau suprasti kodėl reikia laikytis kanalų atskirties ir pasirinkti vieną iš nepersidengiančių kanalų (1,6 arba 11).
</div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<img border="0" data-original-height="815" data-original-width="1491" height="350" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhUahe2nyjOuSoFhQNmI-VcOt_ACcf0r33NK4_REClBkZlRsP3hMT6jXABMkO-XT1qBZVCY9FLpLsJMzZwtJLELoR8jKXMB23Oidej8AFTOrN3T6i3o3LAtIDpQS4LUYsnjiqbB-4jSjhw/s640/wifi+bardakas.png" width="640" /></div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Viršuje paveiksle pateiktas pavyzdinis Wi-Fi tinklų jovalas. Nesimato ne vieno geresnio kanalo į kurį būtų galima nustatyti ir savąjį Wi-Fi prieigos tašką. Tačiau reiktų laikytis atskirties taisyklės ir pasirinkti vieną iš nepersidengiančių kanalų (1,6 arba 11). Jei jūs esate panašioje situacijoje, didelė užuojauta. Tokioje netvarkingoje Wi-Fi prieigos taškų makalynėje bevielio prietaisų problemos neišvengiamos, ar tai būtų lėtas interneto ryšys ar periodiškai atsijunginėjantis ryšys, problemos sprendinių čia nedaug.
</div>
<br />
Keletas tokio sausakimšo radijo eterio problemos sprendimo būdų:
<br />
<ul>
<li>savo būstui atlikti kapitalinį remontą ir kambarių išorines sienas padengti metaliniu tinkleliu – sukurti iš kambarių Faradėjaus narvą {<i>faraday cage</i>}; </li>
<li>antras, naudoti 5 GHz dažnio Wi-Fi prieigos tašką, jei jūsų bevieliai prietaisai palaiko 802.11ac standartą (5 GHz diapazono Wi-Fi standartas turi net 24 nepersidengiančius kanalus po 20 MHz); </li>
<li>trečias, bandyti įkalbėti kaimynus pasikeisti 2,4 GHz dažnio Wi-Fi prieigos taškų naudojamus kanalus į vieną iš trijų nepersidengiančių fizinių kanalų (1,6 arba 11), kai gretimi kaimynai naudoja skirtingus, o tolimiausi vienodus kanalus.</li>
</ul>
<br />
<div class="separator" style="clear: both; text-align: center;">
<img border="0" data-original-height="807" data-original-width="1470" height="351" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjlQD6L7ibXjxfiIobuFhFmbt0K4oq4gUWGdF6yzmTcULx0WCRT2DdjlB-T3sseId8CTgaNaHP3D5XtVxR_C2Z9P5Fmas_lLKKIUFCbUILIe4rJevQXCRb_CBgx9-CJLSgimQznX0e7VkI/s640/wifi+tvarkingas.png" width="640" /></div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Šiame paveiksle situacija šiek tiek geresnė, nemaža dalis belaidžių prieigos taškų dirba nepersidengiančiuose 1,6 ir 11 kanaluose, visgi ir čia situacija netobula – keletas žioplių savo Wi-Fi stoteles sukonfigūravo darbui 3, 8, 9 ir 10 kanalu, kurie visi trukdo bent dviem nepersidengiantiems kanalams. Bevielis kompiuterių tinklas funkcionuotų daug geriau jei visi sąmoningai pasidalytų radijo eterį tik į tris fizinius Wi-Fi kanalus – 1, 6 ir 11. Taip radijo eterio trukdžiai būtų sumažinti iki minimumo.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Kam blokuoti du nepersidengiančius kanalus jei jūsų kaimynai jums nieko neskolingi? Tuo labiau jog pasirinkdami persidengiančius Wi-Fi kanalus jūs pabloginat ir savo interneto ryšį.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Viršutiniame paveiksle geriausias pasirinkimas jūsų Wi-Fi prieigos taškui būtų 1 arba 11 kanalas. Nors 11 kanalas turi vienu prieigos tašu daugiau už 1, šių prietaisų skleidžiamas signalas gerokai silpnesnis už 1-ojo kanalo prietaisų, vadinasi dirbant 11 kanalu didesnė tikimybė gauti laiko į laisvą eterį pranešimų transliavimui.
</div>
<br />
<h3 style="text-align: center;">
<i><span style="font-size: normal;">Fizinio Wi-Fi kanalo keitimas</span></i>
</h3>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Manau man pavyko jus įtikinti, jog verta naudoti tik 1, 6 ir 11 kanalus, todėl trumpai paaiškinsiu kaip pasikeisti fizinį Wi-Fi kanalą į vieną iš nepersidengiančių. Iš teisų, tarp skirtingų Wi-Fi prietaisų gamintojų tos instrukcijos šiek tiek skiriasi, tad aš negaliu duoti universalių instrukcijų tinkančių visiems bevielės prieigos prietaisams, vadinasi jums patiems teks šiek tiek pasukti galvą.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Jei jums kada nors teko prisiliesti prie Wi-Fi maršrutizatoriaus nustatymų: pakeisti Wi-Fi prieigos taško loginį vardą (SSID) ar pakeisti ilgą maišytų simbolių slaptažodį iš saugaus į savo sugalvotą, jums greičiausiai teko matyti ir fizinio kanalo nustatymo parametrą {<i>wireless channel</i>}.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Pagal nutylėjimą dauguma bevielių maršrutizatorių būna sukonfigūruoti automatiškai parinkti „tinkamiausią“ fizinį Wi-Fi ryšio kanalą, deja realybėje 2,4 GHz dažnio diapazone veikiantis Wi-Fi prieigos taškas reti sugeba automatiškai parinkti geriausią fizinį kanalą bevieliam kompiuterių tinklui sukurti. Neretai tas „tinkamiausias“ fizinis Wi-Fi kanalas būna vienas iš persidengiančių nors nepersidengiantis kanalas būtų geresnis pasirinkimas sausakimšame Wi-Fi radijo eteryje.
</div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi8lgHi2NS0Jun4DoVpn-wlO-1fhKHDe4BOPmGaAVsFSI9qkV102rdETPBT9O9A30UMFgQSpKTHOKUGyWMNvmlO2mfnOKs2hAIYIlnZTjCRNQ6WlChoZL46OxDR8yafR4msfrDGX87Z6_o/s1600/asuswificonfig.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="453" data-original-width="714" height="406" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi8lgHi2NS0Jun4DoVpn-wlO-1fhKHDe4BOPmGaAVsFSI9qkV102rdETPBT9O9A30UMFgQSpKTHOKUGyWMNvmlO2mfnOKs2hAIYIlnZTjCRNQ6WlChoZL46OxDR8yafR4msfrDGX87Z6_o/s640/asuswificonfig.png" width="640" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhCeTz_CsXv_ZsTcKqC6cx189M7SjRqhL-vzYACe6WzbPiVh4U0y8gi_UCIHwf98zROcTdsDdL9CkSd4KWmTt5qeiBT1AyD2JIdfxGUe-PW-IF4Z2yId3cM7pr1ClypANzypP0-ljaRDFk/s1600/dlinkwificonfig.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="522" data-original-width="832" height="200" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhCeTz_CsXv_ZsTcKqC6cx189M7SjRqhL-vzYACe6WzbPiVh4U0y8gi_UCIHwf98zROcTdsDdL9CkSd4KWmTt5qeiBT1AyD2JIdfxGUe-PW-IF4Z2yId3cM7pr1ClypANzypP0-ljaRDFk/s320/dlinkwificonfig.png" width="270" /></a><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh-ngh3fgvuqMSvBiUbNryaOJnLtulovl7usKcooA4rJWxDMMmSseqaKJiBy6MF9vzjybmQgRZ1gYxhUgUJU9ktt-uG3WYRIk0bHf7xAKW0oXKjsZfq64meS8iyorTYjhzvftbOSKhDCMc/s1600/tplinkwificonfig.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="439" data-original-width="752" height="185" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh-ngh3fgvuqMSvBiUbNryaOJnLtulovl7usKcooA4rJWxDMMmSseqaKJiBy6MF9vzjybmQgRZ1gYxhUgUJU9ktt-uG3WYRIk0bHf7xAKW0oXKjsZfq64meS8iyorTYjhzvftbOSKhDCMc/s320/tplinkwificonfig.png" width="360" /></a></div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Viršuje pateikti paveikslai su belaidės prieigos konfigūracijos nustatymais trim dažniausiai pasitaikantiems Wi-Fi maršrutizatorių gamintojams. Iš jų tik <i>D-Link</i> atvejis teisingai sukonfigūruotas, kadangi pasirinktas ne automatinis fizinių kanalų parinkimas, o 6-asis nepersidengiantis Wi-Fi tinklo kanalas.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Toliau pateiktos bendros Wi-Fi prieigos taško konfigūravimo instrukcijos. Jei kyla kažkokių problemų, neaiškumų, visada galima pasinaudoti <i>Google </i>pagalba - suvesti į paieškos laukelį kažką panašaus į „<i>How to change wifi channel maršrutizatoriaus_modelis</i>“.
</div>
<ol>
<li>Maršrutizatoriaus konfigūravimo sąsają galima pasiekti per interneto naršyklę, adresu: <i>192.168.0.1, 192.168.1.1, 192.168.100.1, 192.168.0.254, 192.168.1.254, 192.168.8.1</i> ar dar kitoks kuris čia nepaminėtas. Tiksliau reiktų žiūrėti į belaidžio tinklo prietaisų naudojamą tinklų vartų adresą {<i>default gateway</i>} (<i>Windows </i>OS į CMD suvedus <i>ipconfig </i>komandą; <i>Linux</i> OS atveju <i>ifconfig </i>komandą), prietaiso vartotojo vadovą arba apžiūrėti patį prietaisą, galbūt yra ant jo pateikta informacija prasidedanti <i>http://</i> (kartais konfigūravimo meniu prieiga per Wi-Fi belaidį ryšį blokuojama, tad norint ją pasiekti reikia prisijungti su vytos poros tinklo kabeliu per fizinį <i>Ethernet </i>prievadą).
</li>
<li>Suvedus tinkamą prietaiso konfigūravimo adresą į naršyklę atsivers prisijungimo langas, čia vėl teks ieškoti prisijungimo vardo su slaptažodžiu {<i>username/password</i>}, kuris gali būti ant prietaiso, gali būti įrenginio vartotojo vadove, o gali būti ir <i>admin/admin</i> ar <i>admin/123456</i> deriniai.
</li>
<li>Jei sėkmingai prisijungėt prie konfigūravimo sąsajos, toliau reiktų ieškoti <i>Wireless </i>ar <i>Advanced > Wireless</i> meniu skilties. Jei jūsų maršrutizatorius naudoja lietuvišką menių, norėčiau jums tik palinkėti sėkmės. Kartais gyvenimas gali būti itin sunkus.
</li>
<li>Jei nepaisant visų sunkumų nusigavote iki <i>Wireless </i>konfigūravimo meniu ir matote kažką panašaus į <i>control channel</i>, <i>wireless channel</i> ar tiesiog <i>channel</i>, kuris siūlo pasirinkti vieną iš 11, 13 ar net 14 kanalų – sveikinu, analizatoriaus ir sveiko proto dėka galite sukonfigūruoti savo Wi-Fi bevielį tinklą į nepersidengiantį kanalą (1,6 arba 11) teisingesniam ir našesniam bevieliam ryšiui užtikrinti. Tiesiog pakeiskit kanalą, išsaugokite pakeitimus ir perkraukite Wi-Fi prieigos tašką bei įsitikinkite, jog keitimas pavyko sėkmingai. Taip pat galite paskatinti ir padėti tą patį padaryti ir savo kaimynams.
</li>
</ol>
<div style="text-align: justify; text-indent: 1cm;">
Pabaigai noriu pabrėžti: <b>geriau du ar daugiau bevielių prietaisų dirbančių nepersidengiančiais vienodais kanalais, nei dirbantys gretimais persidengiančiais kanalais!</b> Gretimų Wi-Fi kanalų trukdžiai {<i>interference</i>} dažniausiai daug blogiau našumo atžvilgiu nei laiko dalybos naudojant tuos pačius fizinius kanalus. Verta prisiminti, jog kiekvienas atvejis unikalus ir reiktų vadovautis sveiku protu konfigūruojant Wi-Fi kompiuterių tinklus. Sėkmės!
</div>
<br />Martynashttp://www.blogger.com/profile/00471091754225207342noreply@blogger.com0tag:blogger.com,1999:blog-5426813891256937073.post-5017621650665965842017-08-27T14:46:00.002+03:002021-07-02T23:05:42.213+03:00Kibernetinės erdvės pažeidžiamumas<div style="text-align: justify; text-indent: 1.0cm;">
Nepaliaujamai progresuojančios technologijos, besiplečiantis centralizuotų kompiuterių tinklo paslaugų spektras ir jų įsigalėjimas, didėjantis prie interneto tinklo prijungtų prietaisų skaičius, stiprėjanti pavienių individų, o kartu ir organizacinių vienetų, produktyvumo ir konkurencingumo šiuolaikinėje ekonomikos rinkoje priklausomybė nuo informacinių technologijų harmoningo funkcionavimo formuoja itin pažeidžiamą naujos kartos informacinę visuomenę. Todėl šiandien kibernetinės erdvės sauga kaip niekada aktuali tema reikalaujanti išskirtinio dėmesio.</div>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Šiame blogo įraše bandysiu apibendrinti paskutinio dešimtmečio kompiuterijos saugos įvykius, kurie tikiuosi padės išsklaidyti mintis apie saugius ir nenulaužiamus kompiuterių tinklus bei priminti, jog bet kuri organizacija turi jautrių duomenų kuriuos privalu atitinkamai apsaugoti.</div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<img border="0" data-original-height="446" data-original-width="640" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhiryjPfzk8vsdoZeOaLZ5hK_u8HurN9bt0nyJFOCU1CrMcYS4vZWsIY3mbg8Ua2gpqfCsA0oNHPIJ67voJ8lBovJ6KqGFY6xp0DoU9bMwOCzJsmbHuAyNzWinerBmMqxGOIoQNSrtXegY/s1600/cyber-security.png" /></div>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Kiekvienais metais gausu pranešimų apie vieną už kitą didesnes <a href="https://en.wikipedia.org/wiki/List_of_data_breaches" target="_blank">duomenų vagystes</a>, kurios neretai tampa viešomis naujienomis ne aukos noru pasigirti apie savo sukompromituotą kompiuterijos infrastruktūrą, o po įsilaužėlių duomenų paviešinimo nepavykus deryboms dėl išpirkos. Paskutinio dešimtmečio duomenų nutekėjimo mastas itin gerai matyti duomenų vagysčių vizualizacijoje: <a href="http://www.informationisbeautiful.net/visualizations/worlds-biggest-data-breaches-hacks/" target="_blank">nuoroda</a>. Kibernetinės saugos atžvilgiu 2017 metai ypatingi ir lietuviško kapitalo įmonei „Grožio Chirurgija“ iš kurios buvo pavogti itin jautrūs klientų duomenys (<a href="https://www.theguardian.com/technology/2017/may/31/hackers-publish-private-photos-cosmetic-surgery-clinic-bitcoin-ransom-payments" target="_blank">plačiau</a>). </div>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
O kiek dar nežinomų duomenų vagysčių niekada neišlenda į dienos šviesą, kurių duomenimis prekiaujama vadinamojoje tamsiojoje interneto pusėje {<i>darknet</i>} pagal užsakymą? Ten pat egzistuoja, viešai nežinomų saugumo spragų {<i>zero-day vulnerabilities</i>} anoniminės prekyvietės programišiams, kuriose be pavienių saugumo spragų {<i>zero-day exploits</i>} galima įsigyti lengvai naudojamus įrankius, taikomosios programos pavidalu, jų rinkinius {<i>hacking toolkit</i>}. Su pastaraisiais bet koks IT žioplys gali pažeisti į saugumą neinvestuojančių organizacijų kompiuterių tinklus.</div>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Sunku neprisiminti skandalingą <i>Snowden </i>istoriją, apie paviešintą JAV <i>Nacionalinio Saugumo Agentūros</i> (angl. <i>National Security Agency</i>, NSA) veiklą, kuri atskleidė iki tol neregėto pasaulinio masto sekimo operacijas ir neteisėtus veiksmus pasitelkiant įspūdingą kibernetinį arsenalą – viešai nežinomos saugumo spragos populiarioje programinėje ir aparatinėje įrangoje {<i>zero-day vulnerabilities</i>}, bei jų taikomieji įrankiai {<i>toolkits</i>}.</div>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgVk8JTyHJI8xu0Uf1Ew8ppE6DprinlA56BLA7HHdtqZqRhktJc9A08VapNE8Q1IkEKjtDg8nO9UpwM6WsuswnGGFTxjdkQN_CwXnXRBCfxpYQIsy6339lcteku5PsCowkHpWg9LBkT8bo/s1600/National_Security_Agency_headquarters%252C_Fort_Meade%252C_Maryland.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="1248" data-original-width="1600" height="499" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgVk8JTyHJI8xu0Uf1Ew8ppE6DprinlA56BLA7HHdtqZqRhktJc9A08VapNE8Q1IkEKjtDg8nO9UpwM6WsuswnGGFTxjdkQN_CwXnXRBCfxpYQIsy6339lcteku5PsCowkHpWg9LBkT8bo/s640/National_Security_Agency_headquarters%252C_Fort_Meade%252C_Maryland.jpg" width="640" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;"><b>Centrinė NSA būstinė. Kiek primena Kaaba, abu objektai simbolizuoja dieviškumą, dieviškas galias.</b></td></tr>
</tbody></table>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Šiai dienai, 2017 metais, <i>WikiLeaks </i>pradėjus viešinti JAV <i>Centrinės Žvalgybos Vadybos</i> (angl. <i>Central Intelligence Agency,</i> CIA) konfidencialius dokumentus kodiniu pavadinimu „<a href="https://wikileaks.org/ciav7p1/" target="_blank">Vault 7</a>“, kibernetinės saugos situacija atrodo dar prasčiau. Iš paviešintų dokumentų matyti, jog CIA vykdo NSA agentūrai analogišką kibernetinę veiklą (CIA yra pagrindinė, konkuruojanti su NSA, JAV žvalgybos agentūra). </div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj-6o-8faJxol5BqIJVn3iK_PNcZ9FyhIrcDcySdPGa8Lejwh8UuoMEdeVcTpSbIBlkLdN7lJ3wwkJ8cVv5ouPXvdla9ned153GK3crB5WcZHdrI48h7fI1UQmoMjIJRZYZ10E7T4Pc1QQ/s1600/US_intelligence_budget.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="680" data-original-width="1600" height="272" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj-6o-8faJxol5BqIJVn3iK_PNcZ9FyhIrcDcySdPGa8Lejwh8UuoMEdeVcTpSbIBlkLdN7lJ3wwkJ8cVv5ouPXvdla9ned153GK3crB5WcZHdrI48h7fI1UQmoMjIJRZYZ10E7T4Pc1QQ/s640/US_intelligence_budget.png" width="640" /></a></div>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Iš <i>Edward Snowden</i> nutekintų dokumentų žinoma, jog vien Jungtinių Valstijų vadinamasis <a href="http://www.washingtonpost.com/wp-srv/special/national/black-budget/" target="_blank">juodasis biudžetas</a> 2013 metais buvo apie 52,6 mlrd. JAV dolerių (palyginimui, visas Lietuvos valstybės biudžetas tuo metu siekė 8,2 mlrd. JAV dolerių). Galima daryti tvirtą prielaidą, jog tokių mastų kibernetiniam arsenalui galimybės neribotos, ir greičiausiai nėra visiškai saugaus kompiuterių tinklo į kurį nesugebėtų įsilaužti didžiųjų valstybių remiamos programišių grupės.</div>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Tai puikiai paliudija <i>Stuxnet </i>kompiuterinis virusas, pirmasis precendentas kibernetinėje karyboje tarp valstybių. <i>Stuxnet </i>buvo JAV ir Izraelio koordinuota kibernetinė ataka nukreipta prieš Irano branduolinę programą <i>Natanz </i>branduolinėje jėgainėje. <i>Stuxnet </i>sugebėjo patekti į nuo pasaulio fiziškai atskirtą (<i><a href="https://en.wikipedia.org/wiki/Air_gap_(networking)" target="_blank">air gapped</a></i>) kompiuterių tinklą ir per metus sudaužyti apie dešimtadalį urano sodrinimo centrifugų. Gana ilgą laiko tarpą Irano mokslininkai suko galvas kodėl staiga be jokių techninių gedimų ar pakitimų tai viena tai kita centrifugą pradėdavo pašėlusiai suktis ir garsiai ūžti kol subyrėdavo į metalo laužą. Turbūt dar ilgai nebūtų supratę, jei ne <i>Stuxnet </i>atakos koordinatorių klaida išplatinant naują viruso versiją. Atnaujinta agresyvesnė <i>Stuxnet </i>viruso versija turėjo sparčiau plisti ir patekti į reikiamus taikinius, tačiau perlenkus lazdą virusas numigravo už taikinių ribos ir atkreipė virusų tyrėjų dėmesį. Plačiau apie šią istorija <i>arstechnica.com</i> siūlo linksmą straipsnį: <a href="https://arstechnica.com/tech-policy/2011/07/how-digital-detectives-deciphered-stuxnet-the-most-menacing-malware-in-history/" target="_blank">nuoroda</a>.
</div>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Tie kurie domisi kibernetinės erdvės saugumo įvykiais – neturi iliuzijų apie visišką saugą tinkle. Tik pro-aktyvi ir itin paranojiška kibernetinės saugos praktika gali jei ne užkirsti kelią, tai bent sumažinti galimybę konfidencialių duomenų nutekėjimui. Kita tvertus, nevisos organizacijos užsitraukia JAV, Kinijos ar Rusijos žvalgybos nemalonę. Daugeliu atveju gera kibernetinės saugos praktika organizacijoje gali padėti apsisaugoti nuo pavienių individų ar mažesnių piktavalių grupių veikiančių internetuose.
</div>
<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<img border="0" data-original-height="278" data-original-width="640" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiUKM09pOYINf56hu3BDfQhO5RolkrP4lAxGa4PKjgyjnRw3TjUD9v2TYVz9OhFtpU6ggZ0JOe3sobMXmk2m2J5O9lzEhNGP8DULA_jG0PBLyhW2ctR70Y12jlem4vk_6G9aWY66d_XAAc/s1600/Heartbleed_bug_explained.640.png" /></div>
<br />
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Ne taip seniai atrasta viena svarbiausių saugumo spragų interneto amžiuje – net keletą metų viešai nepastebėta kritiška saugumo spraga slėpėsi itin plačiai naudojamoje tinklo paslaugų programinėje įrangoje – <i>OpenSSL </i>kriptografijos bibliotekoje (<a href="http://heartbleed.com/" target="_blank"><i>Heartbleed</i></a>). Šis įvykis paskatino didžiąsias IT kompanijas po <i>Linux Foundation</i> organizacijos sparnu sukurti <i>Core Infrastructure Initiative</i> projektą, su misiją tikslingai remti nemokamos ir atvirosios programinė įrangos projektus, kurie nepakankamai finansuojami, bet vertinami kritiškai svarbiais tinklo paslaugų infrastruktūrai, bei kompiuterijos funkcionavimui apskritai.
</div>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
<i>Google </i>kompanija nesustojo ties pastarojo projekto dosnaus rėmimo, bet ėmėsi ir savos iniciatyvos – jau kurį laiką brendusios idėjos įgyvendinimą – suburti programišių komandą, po <i>Project Zero</i> vardu. Jos visas laikas ir pastangos nukreiptos į plačiausiai naudojamos programinės įrangos tyrimą, viešai nežinomoms saugumo spragoms medžioti, o aptiktas klaidas, jų taisymo eigą, dokumentuoti viešai prieinamoje <a href="https://code.google.com/p/google-security-research/issues/list?can=1" target="_blank">duomenų bazėje</a>.</div>
<div style="text-align: justify; text-indent: 1.0cm;">
Abiem iniciatyvomis tikimasi ateityje užkirsti kelią <i>Heartbleed </i>tipo saugumo incidentams.
</div>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><img border="0" data-original-height="297" data-original-width="632" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEimKoivKti3SFqRh9fbEGHXniBg-TH8VizEAQViPub0RzC3t2hkGzNFkExbhmzNShuTwu9lwFl0xagQBbvpw6xmCVK680VxT93MoFlVr-XBiiCMW9j08U_KfRKlAu7EIu5WzG4HtQwjJpg/s1600/VulnerabilitiesbyDate.png" style="margin-left: auto; margin-right: auto;" /></td></tr>
<tr><td class="tr-caption" style="text-align: center;"><b>Atrastos saugumo spragos programinėje įrangoje pagal metus</b><br />
Šaltinis: <i>cvedetails.com</i></td></tr>
</tbody></table>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Saugos tyrimams įsibėgėjus, nuo 2014 m., svetainės <i><a href="http://www.cvedetails.com/browse-by-date.php" target="_blank">cvedetails.com</a></i> duomenimis, fiksuojami neženkliai didesni atrastų saugumo spragų skaičiai programinėje įrangoje. Tačiau per pirmuosius aštuonis 2017 metų mėnesius atrasta maždaug 150 procentų visų 2016 metais pastebėtų saugumo spragų. Jei tempai nesumažės 2017 metais jų bus atrasta daugiau nei du kartus nei 2016 metais. O kiek dar egzistuoja viešai nežinomų, bet atrastų ir savanaudiškais tikslais, dažniausiai piktavališkais, slepiamų saugumo spragų programinėje įrangoje?
</div>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Nors didžiosios IT kompanijos pradėjo aktyviau remti, o kartais ir pačios imasi iniciatyvos taisyti kibernetinio saugumo padėtį, būtų klaidinga ir naivu tikėtis visiškos, iš sąlyginai nedidelės tyrėjų grupelės, kompiuterijos saugos užtikrinimo. Apsauga reikia rūpintis ir patiems, kaip dauguma įtakingų kompiuterijos saugu ekspertų nuolatos pabrėžia, svarbiausias kompiuterijos apsaugos komponentas yra pats technologijų vartotojas – žmogus, jo tingumas, abejingumas gerai saugos praktikai ir neišmanymas, leidžia piktavaliams ir jų kenkėjiškoms programoms {<i>malware</i>} triumfuoti.
</div>
<br />
<h3>
<div style="text-align: center;">
<i><span style="font-size: normal;">Auganti DDoS atakų grėsmė</span></i></div>
</h3>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Sparčiai didėjant tinklinių prietaisų skaičiui, didėja ir vadinamųjų <i>DDoS </i>atakų skaičius {<i>distributed denial-of-service attack</i>}, sparčiai didėja ne tik kiekybiškai, bei stabiliai auga ir jų kokybiniai mastai. <i>DDoS </i>– tai paskirstytosios <i>DoS </i>atakos versija, kurios metu iš daugybės sukompromituotų interneto tinklinių prietaisų {<i>botnet</i>} siunčiamas nepageidaujamas duomenų srautas į atakuojamą tinklo serverį ar jų sistemą, su tikslu padaryti tos sistemos tiekiamas tinklo paslaugas neprieinamas teisėtiems jos vartotojams {<i>denial-of-service</i>}. Jei bombarduojama sistema dėl ribotų kompiuterio sistemos ar jos tinklo išteklių nepajėgia aptarnauti visų užklausų, teisėtos vartotojų prieigą prie tinklo paslaugų labai sulėtėja arba tampa visiškai nepasiekiama sistemai neatlaikius krūvio ir nulūžus.
</div>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhh5kGc4VRRDknAlOeekdDxK9ibafHxdQQnwbZIHK3u3SWwa4LTkEKGcq87Ykct-EslwKWQ1hsy3dRiMVEk68D8uINs89EKVhExcqRxJrjKD09FvjYyVfoBRInGvc1il83SK5rcyNk0iB0/s1600/norse_live_DDoS_tracking.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="840" data-original-width="1272" height="423" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhh5kGc4VRRDknAlOeekdDxK9ibafHxdQQnwbZIHK3u3SWwa4LTkEKGcq87Ykct-EslwKWQ1hsy3dRiMVEk68D8uINs89EKVhExcqRxJrjKD09FvjYyVfoBRInGvc1il83SK5rcyNk0iB0/s640/norse_live_DDoS_tracking.png" width="640" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;"><b>Visi prieš Amerika ir Amerika prieš save. <a href="http://map.norsecorp.com/" target="_blank">NORSE </a>realaus laiko <i>DDoS </i>atakų vizualizacija.</b></td></tr>
</tbody></table>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
<i>DDoS </i>atakos per paskutinius 5 metus ypač suagresyvėjo, remiantis <a href="https://pages.arbornetworks.com/rs/082-KNA-087/images/12th_Worldwide_Infrastructure_Security_Report.pdf" target="_blank"><i>Arbor Networks 12th Worldwide Infrastructure Security Report</i></a> ataskaitos duomenimis žymiai padaugėjo <i>DDoS </i>atakų skaičius, kurių duomenų srautas didesnis nei 100 Gbps: 2015 metais jų užregistruota 223, o 2016 metais jau 558 atakų. Dar įspūdingesnis <i>DDoS </i>atakų padidėjimas, kurių srautas didesnis už 200 Gbps: 2015 metais užfiksuota 16, o 2016 metais jau 87 atakos. Sparčiai auga ir <i>DDoS </i>atakų srauto kokybiniai parametrai: didžiausia 2016 metų ataka siekė 800 Gbps, o tai net 60 procentų daugiau nei 2015 metais (500 Gbps).
</div>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><img border="0" data-original-height="303" data-original-width="576" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgJ4Q6Aa3hDeQ7HlE7NfqAd30nEDsTmxPgqwQR1xnQqUNmjmmZE5f-sTRLzPMGoIrg0CgSDRxM0210DN0GAUlUWJwPZA4nGo6OFv_04aSvi7om_1B9HSL-B8AN-Co9BXEqiunSH0FZ8bl8/s1600/ddos_from2007to2016.png" style="margin-left: auto; margin-right: auto;" /></td></tr>
<tr><td class="tr-caption" style="text-align: center;"><b><i>DDoS </i>atakų srauto kokybinis augimas per paskutinį dešimtmetį</b><br />
Šaltinis: <i>Arbor Networks Worldwide Infrastructure Security Report</i></td></tr>
</tbody></table>
<div class="separator" style="clear: both; text-align: center;">
</div>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Kai kuriais šaltiniais, tie skaičiai 2016 metais buvo dar didesni, OVH kompanijos savininkas pranešė apie dvi rekordines <i>DDoS </i>atakas, kurių srautas siekė 1,1 Tbps ir 901 Gbps. Vieną <i>DDoS</i> ataką 2016 metų pabaigoje pajuto didelė dalis JAV rytinės pakrantės gyventojų. <i>Dyn </i>duomenimis maždaug 1,2 Tbps srautas nukreiptas į jų kritinius DNS sistemos serverius sugebėjo sutrikdyti visos JAV rytines pakrantes interneto veikla iki tol neregėtu mastu. Saugumo ekspertų teigimu, jei situacija nesikeis, 1 Tbps srauto <i>DDoS </i>atakos artimiausiais metais gali tapti normaliu reiškiniu.</div>
<br />
<blockquote class="tr_bq">
Norint geriau suprasti kaip sunku išvesti iš rikiuotės DNS sistemą galima perskaityti mano ankstesnį blogo straipsnį, trumpai nužvelgianti jos veikimo principus: <b><a href="https://skarware.blogspot.com/2015/07/domenu-vardu-sistema-dns.html" target="_blank">Domenų vardų sistema</a></b>
</blockquote>
<br />
<h3>
<div style="text-align: center;">
<i><span style="font-size: normal;">Kenkėjiškų programų valdomieji tinklai</span></i></div>
</h3>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Šiai dienai tokias intensyvias <i>DDoS </i>atakas formuoja proliferuojantys tinkliniai prietaisai, priskiriami vadinamiesiems IoT {<i>Internet of things</i>}, kenkėjišku programiniu kodu paversti į piktavalių valdomus botus {<i>bot</i>}. Prieš <i>IoT </i>revoliuciją kenkėjiškų programų tinklus {<i>botnets</i>} formuodavo įprasti prie interneto prijungti kompiuteriai, kurių apsauga geresnė už <i>IoT </i>prietaisų, todėl ir piktavalių programišių pastangos buvo mažiau vaisingos. Dėl tinklinių prietaisų gamintojų aplaidumo ir abejingumo dauguma internetinių kamerų, išmaniųjų televizorių, skaitmeninių vaizdo rašytuvų, maršrutizatorių bei daug kitų prie interneto jungiamų prietaisų, pasižymi itin prasta apsauga ir tampa lengvu taikiniu. Deja tų prietaisų dažniausiai pataisyti negalima, todėl siūloma prie tinklo jungiamiems prietaisams pakeisti numatytuosius vartotojo vardus ir slaptažodžius, bei jų nejungti prie interneto tinklo jei tam nėra būtinybės.
</div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<img border="0" data-original-height="494" data-original-width="640" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgYgSs9InoXtHNQITft86u9p-Ogwg52LhoRDxZrr8K5eKWUPErY38plFxO-l0_KFqbBiqxty7SvW8hYS0S3yzErgRIU7s5K4O7S3LIv_tP1oljMSeZIzakGdMROLQWucTjYbg8jE1UdC50/s1600/Botnet.640.png" /></div>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Dar vienas, klasikinis kenkėjiškų programų tinklo {<i>botnet</i>} panaudojimas – brukalų {<i>spam</i>} siuntinėjimas. Tais atvejais kai kenkėjiška tinklo programa užsikrečia vienas ar daugiau įmonės kompiuterių, visas įmonės tinklas, jo išorinis IP adresas, rizikuoja atsidurti brukalų juoduosiuose sąrašuose {<i>spam blacklist</i>} ir sutrikdyti įmonės el. pašto serverio funkcionavimą. Galima nesunkiai įsivaizduoti, kiek netvarkos atsiras įmonės veikloje, jie jos el. laiškai nepasieks visų adresatų, kiek bus patirta žalos dėl elementarios tinklo paslaugos sutrikimo.
</div>
<br />
<h2>
<div style="text-align: center;">
<span style="font-size: x-large;">Išvados ir rekomendacijos</span></div>
</h2>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Žvelgiant į sparčiai didėjantį tinklo vartotojų skaičių, kompiuterijos saugumo pažeidimų mastą (kokybiškai ir kiekybiškai) per paskutinį dešimtmetį, o kartu augančią priklausomybę nuo informacinių technologijų, leidžia geriau suprasti kaip svarbu laikytis geros saugumo praktikos bet kurioje organizacijoje.
</div>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Net smulki ar vidutinė verslo organizacija gali turėti itin konfidencialių duomenų, padedančiu jai konkuruoti rinkoje. Daugumos organizacijų gerovė priklauso nuo stabilios interneto prieigos ir patikimai veikiančių jos tinklo paslaugų internete. Dėl to, tinkamas tinklo saugos įrengimas ir valdymas yra itin svarbus ir būtinas uždavinys kiekvienai save ir savo klientus gerbiančiai organizacijai.
</div>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Norint apsaugoti kompiuterių tinklo paslaugų sistemas ir jų vartotojus, būtina taikyti patikimas ir šiuolaikiškas kompiuterijos apsaugos priemones. Tačiau vienu svarbiausiu, esminiu kompiuterijos apsaugos sistemų komponentu išlieka kompiuterių tinklo užkarda – pirmoji gynybos linija tarp vidinio organizacijos kompiuterių tinklo ir interneto. Tinkamai suderinta užkardos sistema padeda užtikrinti stabilų ir patikimą ryšį, užkerta atvirą prieigą bei kitokią neapibrėžtą ir neleistiną veiklą tarp atskirų, bet tarpusavyje sąveikaujančių tinklų.
</div>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Pasigirsta kompiuterijos saugumo ekspertų nuomonių, jog kompiuterijos saugumo praktika paremta tinkamai suderinta tinklo užkardos sistema, kartu su programų baltaisiais sąrašais {<i>whitelist</i>} yra svarbesnė už antivirusinės programos naudojimą galutinių vartotojų kompiuteriuose, <a href="http://krebsonsecurity.com/2014/05/antivirus-is-dead-long-live-antivirus/" target="_blank">kadangi jos nebepajėgios susidoroti su naujausiomis kompiuterijos grėsmėmis</a>. Iš tiesų, antivirusinės programos taip pat neverta pamiršti, ji padeda apsisaugoti nuo senų ir mažiau pažangių grėsmių. Teisinga sistemos apsauga yra sluoksniuota, po saugos sprendimą kiekviename sluoksnyje.
</div>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Suprantama, joks tinklo užkardos prietaisas negali tiesiogiai apsaugoti nuo 1 Tbps <i>DDoS </i>atakų. Tačiau tinklo užkardos priemonės gali padėti izoliuoti lengvai pažeidžiamus tinklo prietaisus, todėl būtina suprasti kaip svarbu naudoti tinklo užkardą visoms organizacijoms bei namų vartotojams, norint sumažinti <i>DDoS </i>atakų grėsmę ateityje. Viena vertus <i>IoT </i>kenkėjiškas duomenų srautas į eikvoja organizacijos išteklius – trikdo interneto prieigos ir vietinio tinklo pralaidumą. Antra vertus, jei <i>IoT</i> situacija nesikeis, neužilgo interneto paslaugų nepasiekiamumas gali tapti normaliu reiškiniu.
</div>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Visus kenkėjiškų programų valdomuosius tinklus {<i>botnets</i>} formuoja sukompromituoti interneto tinklo dalyviai. Šių nepageidaujamų programų nuotolinis valdymas ir plitimas kibernetinėje erdvėje paremtas kompiuterių tinklu. Todėl tinkamai suderinta tinklo užkardos sistema gali padėti sustabdyti kenkėjiškų programų plitimą ir jų tinklų {<i>botnet</i>} susidarymą, bei padėti laiku pastebėti įtartina veiklą kompiuterių tinkle ar atskleisti naujus, dar nežinomus kenkėjiškų programų tinklus.
</div>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
XXI a. įsibėgėjus smulkusis ir vidutinis verslas vis dar pasyviai žiūri į kompiuterių tinklo apsaugą, nors jiems galioja tie patys kibernetiniai dėsniai kaip ir didžiosioms organizacijoms. Deja smulkiojo verslo kompiuterijos sauga arba neegzistuoja arba lengvai apeinama. Tik tinkamas dėmesys ir adekvačios investicijos į kompiuterijos saugą padeda apsaugoti organizacijos konkurencingumą, reputaciją ar išlikimą rinkoje apskritai. Kaip informacinės visuomenės istorija rodo, smulkus ir vidutinio dydžio verslas patyręs organizuotą kibernetinę ataką ir tinklo saugos pažeidimą, neretai baigia savo veiklą bankroto byla.
</div>
<br />
<blockquote class="tr_bq">
Daugiau informacijos apie kompiuterių tinklo užkardų taikymą organizacijos bei namu tinkle galima rasti mano ankstesniame straipsnyje: <a href="https://skarware.blogspot.com/2016/10/pfsense-kompiuteriu-tinklo-mazge.html" target="_blank"><b><i>pfSense </i>kompiuterių tinklo mazge</b></a></blockquote>
<br />Martynashttp://www.blogger.com/profile/00471091754225207342noreply@blogger.com0tag:blogger.com,1999:blog-5426813891256937073.post-59927681101646785342017-07-31T16:37:00.001+03:002021-07-02T23:09:49.730+03:00Virtualizacijos įtaka pfSense tinklo užkardos sistemai: našumo analizė [4 dalis - Noisy Neighbor]<br />
<h3 style="text-align: center;">
<i><span style="font-size: normal;">Tiriamasis modelis ir metodika</span></i>
</h3>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Apačioje pateikta tipinė virtualaus tinklo mazgo su integruota <i>pfSense </i>tinklo perimetro užkarda loginė schema (žr. 1 pav.). Joje <i>pfSense </i>sistema vykdoma lygiagrečiai su kita virtualia mašina virš vienos fizinės kompiuterio platformos. Šis kompiuterių tinklo perimetro užkardos schema bus praktiškai suderinta ir ištestuota.
</div>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><img border="0" data-original-height="303" data-original-width="1181" height="164" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhPCthpHcUG95XwFe8Z_p2zxTSCvOUjQsRebiREPf8VcjSRv-o9VHRm8s9VwqqshdIeCO9SBlAdcRjU1KE1_N4DrrmUEjlGkUUx2eStSqYHfaLAMZO1f7S6EegFHtJqSkYyTxHcE0bu4wE/s640/praktiskai+testuojamas+modelis.png" style="margin-left: auto; margin-right: auto;" width="640" /></td></tr>
<tr><td class="tr-caption" style="text-align: center;">1 pav. <b>Virtualizuota tinklo perimetro užkardos sistema</b></td></tr>
</tbody></table>
<div class="separator" style="clear: both; text-align: center;">
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Kaip matyti iš loginės schemos tiriama virtualizuota <i>pfSense </i>užkardos sistema dalinasi vienos fizinės kompiuterio sistemos ištekliais su kita lygiagrečiai veikiančia <i>Linux </i>VM. Taigi, šiuo darbu siekiama ištirti ne tik virtualizacijos sluoksnio įtaką tinklo našumui <i>pfSense </i>sistemos atžvilgiu, bet ir tuo atveju kai <i>pfSense </i>užkarda integruojama į virtualų tinklo mazgą kuriame turi dalintis aparatinės įrangos ištekliais su kitomis virtualiomis mašinomis.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Šioje dalyje bandoma patikrinti kokią įtaką <i>pfSense </i>užkardos našumui turi lygiagrečiai virš vienos fizinės sistemos vykdoma virtuali mašina kuri dirba perkrovos režimu – visapusiškai išnaudoja jai numatytos fizinės platformos dalies resursus. Pažymėtina, jog dėl ribotos testavimo aplinkos darbinės atminties išteklių lygiagrečiai su <i>pfSense </i>vykdoma tik viena papildoma VM. Fizinės platformos išteklių paskirstymas tarp virtualių mašinų pateiktas 1 lentelėje.
</div>
<br />
<div style="margin: 6pt 0cm; text-align: left;">
<span style="font-size: small;">1 lentelė. <b>Testuojamų virtualių mašinų techninės specifikacijos</b></span></div>
<table border="0" cellpadding="0" cellspacing="1" style="border-collapse: collapse; border: none; width: 100%;">
<tbody>
<tr>
<td style="background: rgb(242, 242, 242) none repeat scroll 0% 0%; border: 1pt solid; padding: 0cm 5.4pt; text-align: center;" width="25%"><div style="margin: 3pt 0cm;">
<b><span style="font-size: small;"></span></b></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt; text-align: center;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;"><b><i>Linux </i>VM </b></span></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt; text-align: center;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;"><b><i>pfSense </i>VM</b></span></div>
</td>
</tr>
<tr>
<td style="background: rgb(242, 242, 242); border: 1pt solid; padding: 0cm 5.4pt;" width="25%"><div align="center" style="margin: 3pt 0cm; text-align: center;">
<b><span style="font-size: small;">Hipervizorius</span></b></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt; text-align: center;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;"><i>Linux KVM (Proxmox VE 4.4)</i></span></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt; text-align: center;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;"><i>Linux KVM (Proxmox VE 4.4)</i></span></div>
</td>
</tr>
<tr>
<td style="background: rgb(242, 242, 242); border: 1pt solid; padding: 0cm 5.4pt;" width="25%"><div align="center" style="margin: 3pt 0cm; text-align: center;">
<b><span style="font-size: small;">vCPU branduoliai</span></b></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt; text-align: center;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;">2 [<i>host</i>]</span></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt; text-align: center;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;">4 [<i>host</i>]</span></div>
</td>
</tr>
<tr>
<td style="background: rgb(242, 242, 242); border: 1pt solid; padding: 0cm 5.4pt;" width="25%"><div align="center" style="margin: 3pt 0cm; text-align: center;">
<b><span style="font-size: small;">RAM</span></b></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt; text-align: center;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;">1280 MB (dedikuota, fiksuoto dydžio)</span></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt; text-align: center;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;">2048 MB (dedikuota, fiksuoto dydžio)</span></div>
</td>
</tr>
<tr>
<td style="background: rgb(242, 242, 242); border: 1pt solid; padding: 0cm 5.4pt;" width="25%"><div align="center" style="margin: 3pt 0cm; text-align: center;">
<b><span style="font-size: small;">OS</span></b></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt; text-align: center;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;"><i>Ubuntu 17.04 Server (64-bit)</i></span></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt; text-align: center;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;"><i>pfSense CE 2.3.4 (64-bit)</i></span></div>
</td>
</tr>
<tr>
<td style="background: rgb(242, 242, 242); border: 1pt solid; padding: 0cm 5.4pt;" width="25%"><div align="center" style="margin: 3pt 0cm; text-align: center;">
<b><span style="font-size: small;">Tinklo plokštė</span></b></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt; text-align: center;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;">1 bendrinama [<i>VirtIO bridge</i>]</span><br />
<span style="font-size: small;"><span style="font-size: small;">1 dedikuota [<i>PCI passthrough</i>]</span> </span></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt; text-align: center;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;">2 dedikuotos [<i>PCI passthrough</i>]<br />1 bendrinama [<i>VirtIO bridge</i>]</span></div>
</td>
</tr>
<tr>
<td style="background: rgb(242, 242, 242); border: 1pt solid; padding: 0cm 5.4pt;" width="25%"><div align="center" style="margin: 3pt 0cm; text-align: center;">
<b><span style="font-size: small;">Standusis diskas</span></b></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt; text-align: center;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;">4 GB [<i>VirtIO SCSI, LVM Thin</i>]</span></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt; text-align: center;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;">4 GB [<i>VirtIO SCSI, LVM Thin</i>]</span></div>
</td>
</tr>
</tbody></table>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Kaip matyti iš 1 lentelės <i>pfSense </i>VM priskirta tiek pat išteklių, kaip ir ankstesniais IOMMU virtualizacijos testavimo atvejais. Iš tiesų, tai ta pati VM, tik atkurta į pradinę konfigūracijos būseną. Vadinasi nebereikia per naujo testuoti tos pačios VM, nes jos našumo rezultatai jau yra žinomi.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Gretimai <i>Linux </i>VM priskirta tik dvejų branduolių procesorius su 1280 MB operatyviosios atminties. Daugiau fizinės sistemos išteklių neskirta, nes norima rezervuoti 2 fizinio procesoriaus branduolius ir likusią 768 MB operatyviąją atmintį KVM hipervizoriaus reikmėms, antraip testuose bus matuojama ne gretimos mašinos įtaka <i>pfSense </i>sistemai, o perkrauto hipervizoriaus.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Virtualioms mašinoms numatytos lygios dalys standžiojo disko išteklių dalys, bei jų KVM procesų apdorojimo prioritetai <i>Proxmox VE</i> atžvilgiu vienodi (tipinės <i>Proxmox VE</i> mašinos).
</div>
<div style="text-align: justify; text-indent: 1cm;">
Kadangi <i>pfSense </i>sistema pagal taikomą modelį yra kritinis taškas nuo kurio priklauso prieiga prie interneto tinklo ir vidinės debesų kompiuterijos infrastruktūros bei jų paslaugų administravimas, <i>pfSense </i>VM priskirtos dvi dedikuotos tinklo plokštės – interneto ir vidinio kompiuterių tinklo sąsajoms, per IOMMU virtualizacijos palaikymą; bei viena bendrinama skirtą testų valdymo reikmėms. Dedikuotos sąsajos padeda užtikrinti spartų ir patikimą ryšį.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Vienu atveju gretimai <i>Linux </i>OS vykdančiai VM įdiegta viena <i>VirtIO </i>tinklo plokštė su paravirtualizuotomis tvarkyklėmis, kurios taip pat leidžia tiesioginę prieiga prie fizinės tinklo plokštės, bet ji yra bendrinama tarp kelių mašinų, įskaitant <i>Proxmox </i>virtualios aplinkos sistemą. Ši tinklo plokštė skirta ne tik testų valdymui, bet ir tinklo sąsajos apkrovos imitavimui 100 Mbps dvikrypčiu duomenų srautu.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Antru atveju, į gretimą <i>Linux </i>VM įdiegta viena dedikuota tinklo plokštė per IOMMU virtualizacijos palaikymą, kuri taip pat naudojama testavimui, tinklo sąsajos apkrovos imitavimui 100 Mbps dvikrypčiu duomenų srautu.</div>
<div style="text-align: justify; text-indent: 1cm;">
Abiem atvejiais kompiuterio aparatinės įrangos (centrinio procesoriaus ir operatyviosios atminties) apkrovos imitavimui pasirinkta paprasta, bet veiksminga <i>stress </i>programinė įranga. <i>stress </i>sisteminio įrankio parametrai suderinti taip, jog sistema būtų reikšmingai ir tolygiai apkrauta – vieno tipo <i>stress </i>sukurti darbiniai procesai neblokuotų kito tipo darbines operacijas. Testų metu naudota <i>stress </i>komanda su parametrais: <span style="font-family: "courier new" , "courier" , monospace;">stress --cpu 1 --io 1 --vm 1 --vm-bytes 1G</span> (sukuria 1 procesoriaus, 1 įvesties/išvesties ir 1 su 1 GB operatyviosios atminties, darbinius procesus perkrovai imituoti)
</div>
<div style="text-align: justify; text-indent: 1cm;">
Dėl testų intensyvumo ir trukmės, standžiojo disko imituojamos apkrovos buvo atsisakyta baiminantis juos pažeisti (kartu testavimo aplinkos vientisumą). Antra vertus, testams suderinta <i>pfSense </i>sistema diską naudoja tik pradinio sistemos paleidimo metu kol įkrauna save į operatyviąją atmintį. Kita vertus, nūdien serverių platformose standusis diskas, ilgą laiką buvęs didžiausias spartos kamštis {<i>bottleneck</i>}, naudojamas tik atsarginėms kopijoms. Sisteminiams diskams kurti juos pakeitė daugelį kartų spartesni lustiniai duomenų kaupikliai (SSD). Be to, diskai <i>Linux </i>OS, kurioje vykdomos KVM virtualios mašinos, gali būti efektyviai ribojami <i>cgroups </i>įrankiais. Dėl šių priežasčių, atsisakyta standaus disko apkrovos testuose, kaip nekritinio kintamojo darbo tikslui pasiekti.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Viename iš testų, kartu su <i>stress </i>sistemos apkrova gretimoje <i>Linux </i>VM imituojamas ir dvikryptis 100 Mbps UDP duomenų srautas su <i>iperf </i>testavimo įrankiu. Pasirinktas imituojamo duomenų srauto kadrų ilgis – 512 baitų, arba 466 baitai UDP paketo krovoje {<i>payload</i>}, nes tai arti vidutinio paketo dydžio interneto tinklo sraute, bei jo apkrova proporcinga <i>stress </i>apkrovai.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Remiantis jau apžvelgtais <i>VirtIO </i>testų rezultatais (žr. 3 straipsnio dalį), šio tipo VM tinklo sąsajos sveikoji dvikryptė pralaida, su 512 baitų ilgio kadrais, apie 300 Mbps. Tačiau, šiuose testuose gretimos <i>Linux </i>VM tinklo sąsajos imituojamas duomenų srautas sumažintas iki 100 Mbps dėl ribotų aparatinės įrangos galimybių. 300 Mbps pralaidos dvikryptis duomenų srautas reikalauja daugiau nei pusė <i>Linux </i>VM procesoriaus laiko. Vadinasi ji negalėtų pakankamai laisvai vykdyti kitų, <i>stress</i> apkrovą imituojančių procesų, ir tolygiai paskirstyti skirtingo tipo apkrovas tarp visų VM resursų. Kita vertus 100 Mbps dvikryptė pralaida dažnai pakankama interneto prieigos greitaveika daugeliui tinklo paslaugų naudojamų smulkiojo ir vidutinio verslo įmonėse.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Vykdant <i>stress </i>ir <i>iperf </i>imituojamas apkrovas vienu metu <i>Linux </i>VM tinklo sąsajos pralaidumas tampa nestabilus. Siekiant visapusiškos sistemos komponentų apkrovos, bet atsižvelgiant į tai, jog tai tinklo mazgo testas, tinklo sąsajos pralaidumui užtikrinti <i>iperf </i>įrankis paleistas su <i>nice </i>sistemine komanda (<span style="font-family: "courier new" , "courier" , monospace;">nice --20 iperf...</span>), perkeliant <i>iperf </i>procesą į bendrosios planuoklės (SCHED_OTHER) sąrašo viršų. Tai užtikrina daugiau procesoriaus laiko <i>iperf </i>proceso apdorojimui.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Su <i>nice </i>prioretizavimu, <i>Linux </i>VM mašinos imituojamo <i>iperf </i>apkrovos srauto nuostoliai nuo <i>stress </i>darbinių procesų įtakos tapo minimalūs: mažiau nei 0,8% pamestų UDP paketų per 7 val. testą.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Iš tiesų, verta atkreipti dėmesį, jog naudojant <i>VirtIO </i>tvarkykles tinklo sąsajai realizuoti, KVM hipervizorius sukuria dar vieną procesą – <i>vhost-[VMpid]</i>, skirtą virtualios mašinos <i>VirtIO </i>tinklo plokštės imitavimui ir aptarnavimui. Šis procesas vykdomas šalia kitų KVM VM procesų.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Planuojant vykdyti VM su reikšminga tinklo pralaida per <i>VirtIO </i>tvarkykles, į tai būtina atkreipti dėmesį, nes visos imituojamos tinklo sąsajos atima papildomus aparatinės įrangos išteklius ne iš VM kuriai priskirta <i>VirtIO </i>tinklo plokštė, o iš bendros fizinės sistemos. Todėl reiktų tai įskaičiuot į virtualizacijos hipervizoriaus pridėtines sąnaudas {<i>overhead</i>} ir rezervuoti tam dali išteklių.
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Šioje dalyje testuojama gretimos <i>Linux </i>VM įtaka <i>pfSense </i>sistemai, jai veikiant normaliu įsimenamosios tinklo užkardos {<i>stateful firewall</i>} režimu. Šių testų rezultatai bus palyginti su jau turimais analogiškos įsimenamosios užkardos rezultatais apžvelgtais 3 straipsnio dalyje, kai virtualioje mašinoje naudojamos per IOMMU atvaizduotos fizinės tinklo sąsajos.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Skirtingai nei 1 straipsnio dalies apibrėžtoje metodikoje, šiame nebus ieškoma maksimali pralaida, prie kurios duomenų srauto nuostolis nedidesnis už 0,1%, bet pasinaudota jau turima sveikąja pralaida kaip atskaitos tašku, nuo kurio bus pamatuoti UDP duomenų srauto nuostoliai {<i>packet loss</i>}. Tai leis įvertinti kiek gretimos mašinos apkrova turi įtakos <i>pfSense </i>tinklo mazgo našumui.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Kiekvienam paketo ilgiui UDP duomenų srauto testas atliekamas 10 minučių, su jau turimu <i>iperf –b</i> pralaidos parametru iš analogiškų ankstesnių testų (<i>pfSense </i>+ IOMMU). Testas atliekamas 3 kartus, iš kurių rezultatų skaičiuojamas vidurkis kaip teisingas rezultatas testuojamam paketo dydžiui.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Tinklo mazgo sukeltam paketų drebėjimui išmatuoti bus pasinaudota tais pačiais 10 min. trukmės testų duomenimis, imant 10 sekundžių drebėjimo išmatavimus 90-100, 190-200, 290-300, 390-400 ir 490-500 sek. intervaluose iš 3 atliktų testų, viso 15 reikšmių kiekvienam paketo dydžiui. Iš šių reikšmių vedamas vidurkis ir užskaitomas kaip teisingas rezultatas atitinkamam paketo dydžiui.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Likusi testavimo metodika iš esmės nesikeitė ir yra paveldima iš pirmos dalies, jei nenurodyta kitaip.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Praktiškai derinamas ir testuojamas <i>pfSense</i> modelis yra tinklo perimetro užkarda, kuri toliau analizuojama, kai:
<br />
<ul>
<li>šalia <i>pfSense </i>sistemos virš bendros fizinės kompiuterio sistemos veikia <i>Linux </i>VM, kuri patiria centrinio procesoriaus ir operatyviosios atminties perkrovas (imituojamas <i>stress</i> įrankio);
</li>
<li>šalia <i>pfSense </i>sistemos virš bendros fizinės kompiuterio sistemos veikia <i>Linux </i>VM, kuri patiria centrinio procesoriaus ir operatyviosios atminties perkrovas (imituojamas <i>stress </i>įrankio) bei apdoroja dvikryptį 100 Mbps duomenų srautą kompiuterių tinkle (imituojamą <i>iperf</i> įrankio) naudojant <i>VirtIO </i>ir IOMMU tinklo sąsajas.
</li>
</ul>
</div>
<br />
<h3 style="text-align: center;">
<i><span style="font-size: normal;">pfSense perimetro užkardos ir gretimos Linux VM sąveikos testavimas</span></i>
</h3>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Sisteminio <i>top </i>įrankio parodymais, su pasirinktais <i>stress </i>parametrais, imituojama apkrova per 15 min. laikotarpį gretimoje <i>Linux </i>VM sistemoje būna apie 150 proc. (<span style="font-family: "courier new" , "courier" , monospace;">average load 3.08, 3.03, 3.00</span>), o tai 1,5 kartus daugiau nei procesorius geba susidoroti su užduotimis vienu metu.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Prie <i>stress </i>imituojamos apkrovos pridėjus <i>iperf </i>imituojamą <i>VirtIO</i> tinklo sąsajos apkrovą vienalaikiu dvikrypčiu 100 Mbps duomenų srautu, per 15 min. laikotarpį gretimos <i>Linux </i>VM sistemos apkrova pakyla iki 191 proc. (<i>top </i>įrankio parodymais: <span style="font-family: "courier new" , "courier" , monospace;">average load 3.86, 3.82, 3.81</span>), iš kurių maždaug 0.60 priklauso <i>iperf </i>procesui. Bendrai <i>Linux </i>VM patiria beveik 2 kartus daugiau apkrovos nei procesorius geba susidoroti su vykdomomis užduotimis.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Už <i>Linux </i>VM ribų, bet jos tiksliais sukurtas <i>vhost-[VMpid]</i> procesas, kuris pasiima dalį išteklių bendros fizinės sistemos sąskaita. Testų metu <i>iperf </i>imituojamas dvikryptis 100 Mbps duomenų srautas, nukreiptas per <i>VirtIO </i>tinklo sąsają, privertė <i>vhost </i>procesą apkrauti vieną realaus procesoriaus branduolį 30 procentų, kuris kaip minėta metodikos skyrelyje, neįskaičiuotas į VM išteklių dalį.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Pastebėta, jog gretimą <i>Linux </i>VM apkrovus <i>stress </i>ir <i>iperf </i>įrankiais ženkliai padaugėjo, ypač fragmentuojamiems paketams, pranešimų apie <i>out-of-order</i> priimtus UDP paketus <i>iperf </i>testų metu.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Prie <i>stress </i>imituojamos apkrovos pridėjus <i>iperf </i>imituojamą IOMMU tinklo sąsajos apkrovą vienalaikiu dvikrypčiu 100 Mbps duomenų srautu, per 15 min. laikotarpį gretimos <i>Linux </i>VM sistemos apkrova mažesnė nei <i>VirtIO </i>atveju (<i>top </i>įrankio parodymais: <span style="font-family: "courier new" , "courier" , monospace;">average load <span style="font-family: "courier new" , "courier" , monospace;">3.57, 3.66, 3.61</span></span>), iš kurių maždaug 50% priklauso <i>iperf </i>procesui. Skirtingai nei <i>VirtIO </i>atveju, IOMMU virtualizuotos tinklo plokštės nesukuria papildomų sąnaudu už VM ribų.</div>
<br />
<h3 style="text-align: center;">
<i><span style="font-size: normal;">Virtualaus tinklo mazgo nuostoliai dėl gretimos VM veiklos</span></i>
</h3>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Jungtinėje diagramoje (žr. 2 pav.) raudona ir mėlyna spalva pažymėtos linijos vaizdžiai iliustruoja našumo nuostolius {<i>packet loss</i>}, įtakotus <i>stress </i>ir <i>iperf </i>darbinių procesų. Kadangi abiejų vertikalių ašių masteliai vienodi, nubrėžtos kreivės tartum rodo nupjautą našumo dalį nuo <i>pfSense</i> tinklo mazgo su IOMMU atvaizduotomis {<i>remapped</i>} tinklo plokštėmis dėl gretimos <i>Linux </i>VM veiklos, vienu atveju testuotos su <i>VirtIO </i>tinklo sąsajos tvarkyklėmis (tamsiai raudona ir mėlyna kreivės), antru atveju su dedikuota tinklo plokšte per IOMMU virtualizacijos palaikymą (šviesiai mėlyna ir raudona linijos).
</div>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh3ghnqFzuMDoRqCZZFAv9QXNgeTVLf8gtfDNfN4AgI055Wu9Gle-XFVOukwC_TDGggGVrxbtfISAXWVVbl7vDfc0yXmTf3i-eVoFYHGlLJ4Ng7cL2PRahxuuiSHSybKxZy2USfh6fggcA/s1600/packetloss1.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="379" data-original-width="641" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh3ghnqFzuMDoRqCZZFAv9QXNgeTVLf8gtfDNfN4AgI055Wu9Gle-XFVOukwC_TDGggGVrxbtfISAXWVVbl7vDfc0yXmTf3i-eVoFYHGlLJ4Ng7cL2PRahxuuiSHSybKxZy2USfh6fggcA/s1600/packetloss1.png" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">2 pav.<b><i> pfSense stateful</i> užkardos režimu + <i>Linux </i>VM: pralaidos ir nuostolių santykis</b></td></tr>
</tbody></table>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Kiek kitoks patirtų tinklo nuostolių vaizdas susidaro padidinus mastelį, kuris leidžia pažvelgti iš arčiau į apkrovą imituojančios <i>Linux </i>VM ir <i>pfSense </i>užkardos sistemos sąveiką.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Remiantis surinktais testų duomenimis galima teigti, jog įtaka <i>pfSense </i>užkardos tinklo našumui minimali ir praktiškai nereikšmingą, kai gretima <i>Linux </i>VM veikla apima tik jai priskirtų resursų naudojimą – užduotys su procesoriumi ir operatyviąja atmintimi (žr. 3 pav., mėlynos linijos).</div>
<div style="text-align: justify; text-indent: 1cm;">
Tačiau, gretimai <i>Linux </i>VM papildomai naudojant bendrinamą kompiuterių tinklo sąsają su paravirtualizuotomis <i>VirtIO </i>tvarkyklėmis, sukėlė reikšmingus našumo pokyčius <i>pfSense </i>sistemoje su IOMMU atvaizduotomis {<i>remapped</i>} tinklo sąsajomis (žr. 3 pav., tamsiai raudona kreivė).
</div>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgiiG9bkozMa3-8cse3kTRcVlYNQDHeueLtBZ9M2DRMuiL62Sg1wSKMlgndFD4a57q_eNtWtG_YyS40L4ZpocMCgVPcz52lFT1Tf8pSq5jl-9m2BM4KJrZ1jiEcXaCJ0f3XP2SZ_FohHDs/s1600/packetloss2.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="379" data-original-width="641" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgiiG9bkozMa3-8cse3kTRcVlYNQDHeueLtBZ9M2DRMuiL62Sg1wSKMlgndFD4a57q_eNtWtG_YyS40L4ZpocMCgVPcz52lFT1Tf8pSq5jl-9m2BM4KJrZ1jiEcXaCJ0f3XP2SZ_FohHDs/s1600/packetloss2.png" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">3 pav. <b><i>pfSense stateful</i> užkardos režimu + <i>Linux </i>VM: pralaidos nuostoliai iš arti</b></td></tr>
</tbody></table>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Iš teisų, gretimoje <i>Linux </i>VM taip pat naudojant dedikuotą tinklo sąsają per IOMMU virtualizacijos palaikymą <i>Linux </i>VM aktyvi tinklo apkrova minimaliai įtakoja gretimą <i>pfSense </i>užkardos sistemą (žr. 3 pav., šviesiai raudona kreivė). </div>
<div style="text-align: justify; text-indent: 1cm;">
Antra vertus, ne visada įmanoma fiziškai priskirti VM tik išskirtinai dedikuotas tinklo plokštes per IOMMU virtualizacijos palaikymą. Todėl šiame darbe tiriamas ir bendresnis bei aktualesnis kompiuterio platformos virtualizacijos atvejis – kai tarp VM naudojama bendrinama aparatinė įranga. Visgi tuo virtualizacija ir patraukli, nes leidžia sumažinti aparatinės įrangos prastovas ją deleguojant kelioms virtualioms kompiuterio sistemoms.</div>
<div style="text-align: justify; text-indent: 1cm;">
Autoriaus nepastebėjo aiškaus skirtumo tarp pavienės <i>pfSense </i>VM su IOMMU ir kartu su gretimai tuščiąja eiga veikiančia <i>Linux </i>VM {<i>idle</i>}. Todėl nuspręsta naudoti vieną kreivę šio poskyrio diagramose dviem, bet praktikoje lygioms reikšmėms vaizduoti.
</div>
<br />
<h3 style="text-align: center;">
<i><span style="font-size: normal;">Paketų delsa</span></i>
</h3>
<br />
<div style="text-align: justify; text-indent: 1cm;">
<i>Linux </i>gretimos VM paveikė ir paketų apdorojimo laiką <i>pfSense </i>tinklo mazge, delsa tapo mažiau stabili. Tačiau lyginant su pavienės <i>pfSense </i>užkardos sistema, išsaugojo tendenciją turėti didesnę laisvąją delsą už apkrautąją. (žr. 4 ir 5 pav.)
</div>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi49E-uFIQ8kNdp-Mvj3n0qbVtoUrbUENfVsS0cttnP3ysrku2nU0WptnrIiNMWQ30h6dQVJx_FdN-QNvJVzdZIOiWjyBxp2hgaFf1tx8NrnfcUnwSzCMyx0jC8QqA-_QFsHhE1BylgpLM/s1600/ping_idle.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="378" data-original-width="641" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi49E-uFIQ8kNdp-Mvj3n0qbVtoUrbUENfVsS0cttnP3ysrku2nU0WptnrIiNMWQ30h6dQVJx_FdN-QNvJVzdZIOiWjyBxp2hgaFf1tx8NrnfcUnwSzCMyx0jC8QqA-_QFsHhE1BylgpLM/s1600/ping_idle.png" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">4 pav.<b> <i>pfSense stateful</i> užkardos režimu + <i>Linux </i>VM: laisvoji paketų delsa</b></td></tr>
</tbody></table>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Kaip matyti iš 4 paveikslo, ženkliai padidėjo <i>pfSense </i>sistemos laisvosios delsos laikas su 64-1518 kadrų dydžiais, vidutiniškai apie 45%, ir tik ties 8K baitų ilgio paketais susilygina su pavienės <i>pfSense</i> užkardos laisvąja delsa. Įtakos skirtumas tarp <i>stress </i>ir <i>iperf </i>imituojamos apkrovos nežymus.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Įdomu tai, jog gretimos <i>Linux </i>virtualios mašinos įtaka priartino <i>pfSense </i>IOMMU virtualizacijos laisvąją delsa prie pavienės <i>pfSense </i>sistemos naudojančios <i>VirtIO </i>paravirtualizuotas tvarkykles.
</div>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjxCJKGRvUVsTM2c5QRCYgRcLtkt2NTLhGFQgTiid92fssPgplMlGSPOm8L2gVZKB3x1-W0iZ_EIQPnscqEpZztLzN9duYFY6cNW_Fxfwc1rwTLVyekXeUl3ohkEezNW7C8yUWLaRTQE5U/s1600/ping_load.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="379" data-original-width="641" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjxCJKGRvUVsTM2c5QRCYgRcLtkt2NTLhGFQgTiid92fssPgplMlGSPOm8L2gVZKB3x1-W0iZ_EIQPnscqEpZztLzN9duYFY6cNW_Fxfwc1rwTLVyekXeUl3ohkEezNW7C8yUWLaRTQE5U/s1600/ping_load.png" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">5 pav. <b><i>pfSense stateful</i> užkardos režimu + <i>Linux </i>VM: apkrautoji paketų delsa</b></td></tr>
</tbody></table>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Apkrautosios delsos skirtumas, gretimai <i>Linux </i>VM imituojant apkrovas tik su <i>stress </i>įrankiu (per <i>VirtIO </i>sąsają) vidutiniškai 20% didesnis nei pavienės <i>pfSense </i>užkardos sistemos, su 64-1518 baitų ilgio kadrais. Tuo tarpu <i>Linux </i>VM naudojant tinklo plokštę per IOMMU, rezultatai labai nestabilūs.</div>
<div style="text-align: justify; text-indent: 1cm;">
Prisidėjus ir tinklo apkrovos imitavimui su <i>iperf </i>įrankiu, <i>pfSense </i>sistemos su IOMMU apkrautosios delsos laikas vidutiniškai padidėja iki 45%, su 64-1518 baitų ilgio kadrais, bei tampa labai nestabilus, vėl primindamas sunkiai nuspėjamą <i>VirtIO </i>paravirtualizuotos tinklo sąsajos kreivę.</div>
<br />
<h3 style="text-align: center;">
<i><span style="font-size: normal;">Paketų drebėjimas</span></i>
</h3>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgUpNksEk1-w9BVsRC8pOzUciBjQLk37ksNFqp2oylnLl_Hz6b7J1ji5JW3PgIa7qsJ9Q4BrNEpiWZaeqmTIsROaGYQYSvwO1UMRooh15dmDyNRwG6nRa-LVGsMusRUyhOo0bkjMUcVjNE/s1600/jitter.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="379" data-original-width="641" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgUpNksEk1-w9BVsRC8pOzUciBjQLk37ksNFqp2oylnLl_Hz6b7J1ji5JW3PgIa7qsJ9Q4BrNEpiWZaeqmTIsROaGYQYSvwO1UMRooh15dmDyNRwG6nRa-LVGsMusRUyhOo0bkjMUcVjNE/s1600/jitter.png" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">6 pav. <b><i>pfSense stateful </i>užkardos režimu + <i>Linux </i>VM: paketų drebėjimas</b></td></tr>
</tbody></table>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Kaip ir pralaidos testuose, dviejų VM mašinų sąveika beveik neįtakojo paketų drebėjimo <i>pfSense </i>tinklo mazge, kai <i>Linux </i>VM apkrova orientuota tik į jai priskirtus aparatinius išteklius (procesorių ir operatyviąją atmintį), kreivės praktiškai identiškos visų paketų ilgiais.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Nedidelį paketų drebėjimą <i>pfSense </i>užkardoje sukėlė gretimoje <i>Linux </i>VM prisidėjusi tinklo imituojama apkrova (abiem <i>VirtIO </i>ir IOMMU atvejais), kuri apima svarbiausius ir dažniausiai naudojamus realaus tinklo paslaugų kadrų ilgius. Tačiau jos kreivė ties 1024 baitų ilgio kadrais pasiveja nubrėžtą pavienės <i>pfSense </i>užkardos sistemos su IOMMU virtualizacija.
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Išanalizavus gautus testavimo duomenis, galima daryti išvadą, jog vienos VM mažesnis tinklo aktyvumas per bendrinamą <i>VirtIO</i> tinklo sąsają daro mažesnę įtaką kitos VM našumui tinkle ir minimalią įtaką kai gretimos virtualios mašina naudoja dedikuotas tinklo plokštes per IOMMU. Virtualios mašinos kurios aktyviai nesinaudoja tinklo paslaugomis ir jų netiekia – neturi reikšmingos įtakos tarpusavio darbui veikiant virš vienos fizinės kompiuterio sistemos ir naudojant <i>Linux </i>KVM hipervizoriaus realizuojamą kompiuterio platformos virtualizaciją.
</div>
<br />
<hr align="left" size="1" width="100%" />
<br />
<h3 style="text-align: start;">
<span style="font-family: inherit; font-size: large;">"Virtualizacijos įtaka <i>pfSense </i>tinklo užkardos sistemai: našumo analizė" Turinys:</span></h3>
<div>
<br />
<ol>
<li><a href="https://skarware.blogspot.com/2017/07/virtualizacijos-itaka-pfsense-metodika.html" target="_blank">Virtualizacijos įtaka <i>pfSense</i> tinklo užkardos sistemai: našumo analizė [<b>1 dalis - Metodika</b>]</a></li>
<li><a href="https://skarware.blogspot.com/2017/07/virtualizacijos-itaka-pfsense-router.html" target="_blank">Virtualizacijos įtaka <i>pfSense</i> tinklo užkardos sistemai: našumo analizė [<b>2 dalis - Router mode</b>]</a></li>
<li><a href="https://skarware.blogspot.com/2017/07/virtualizacijos-itaka-pfsense-firewall.html" target="_blank">Virtualizacijos įtaka <i>pfSense</i> tinklo užkardos sistemai: našumo analizė [<b>3 dalis - Firewall mode</b>]</a></li>
<li><span style="background-color: #d9ead3;"><a href="https://skarware.blogspot.com/2017/07/virtualizacijos-itaka-pfsense-noisy-neighbor.html">Virtualizacijos įtaka <i>pfSense</i> tinklo užkardos sistemai: našumo analizė [<b>4 dalis - Noisy Neighbor</b>]</a></span></li>
</ol>
<br />
<hr align="left" size="1" width="50%" />
</div>
Martynashttp://www.blogger.com/profile/00471091754225207342noreply@blogger.com0tag:blogger.com,1999:blog-5426813891256937073.post-11270401532197651922017-07-30T16:55:00.001+03:002021-07-02T23:11:56.187+03:00Virtualizacijos įtaka pfSense tinklo užkardos sistemai: našumo analizė [3 dalis - Firewall mode]<div style="text-align: justify; text-indent: 1cm;">
Prieš pradedant analizuoti <i>pfSense </i>sistemos veikimą įprastu įsimenamosios užkardos {<i>stateful firewall</i>} režimu, naudinga apžvelgti pralaidos pokyčius <i>pfSense </i>sistemoje tarp tik maršrutizatoriaus ir įsimenamosios užkardos režimų (be virtualizacijos sluoksnio).
</div>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj86qTGFMy3ut1fcEMPHXhMz4MOQYQC_kp5QmjKpQC3B8nClznY-sEpNNAvshoYT0lZkKWEpZuq0C0PNxuL77RGhHw_59waYskNsldLo-5z2XlEtqAUcIMMnAIjF4w8IkEHsAp6z6idXHM/s1600/pfsense_packet_filter_on_off.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="295" data-original-width="643" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj86qTGFMy3ut1fcEMPHXhMz4MOQYQC_kp5QmjKpQC3B8nClznY-sEpNNAvshoYT0lZkKWEpZuq0C0PNxuL77RGhHw_59waYskNsldLo-5z2XlEtqAUcIMMnAIjF4w8IkEHsAp6z6idXHM/s1600/pfsense_packet_filter_on_off.png" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;"><b><i>pfSense </i>sistemos našumas maršrutizatoriaus ir užkardos režimu</b></td></tr>
</tbody></table>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Kaip matyti iš diagramos, įjungus duomenų srauto filtravimą mažiausių paketų apdorojimo našumas <i>pfSense </i>sistemoje ženkliai krito: maždaug 38-40 proc. Taip yra todėl, jog užkardos sistema turi sužiūrėti ne tik paketų maršrutų lentelę, bet ir filtravimo. Kiekvienas paketas kertantis tinklo mazgą turi būti sutikrintas su paketų filtravimo lentele, o tai reikalauja papildomo procesoriaus laiko ir gali gerokai sulėtinti <i>pfSense </i>pralaidumą jei filtravimo lentelės sąrašas ilgas.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Iš teisų, įsimenamosios užkarda {<i>stateful firewall</i>} turi dar vieną lentelę – būsenos {<i>state table</i>}, kurią peržiūri pirmiausiai. Iki tam tikros ribos ji paspartina užkardos taisyklių peržiūrą greitąja grandine tiems tinklo paketams, kurie žinomi užkardai t.y. priklauso jau užmegztai ryšio sesijai.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Vis dėlto, reiktų stengtis filtravimo taisyklių užkardoje taikyti kuo mažiau, bei kiekviena iš jų būtų pasverta kitų atžvilgiu, parenkant jų eiliškumo tvarką. Tuo tikslu rekomenduojama taikyti tinklo saugos praktiką su strategija – viską blokuoti {<i>default deny</i>} ir praleisti tik tai kas būtina.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Kaip minėta metodikos skyrelyje, remiantis <i>RFC 2544</i> rekomendacijomis, <i>pfSense </i>užkarda per grafinę vartotojo sąsają sukonfigūruota su 25 vartotojo apibrėžtomis taisyklėmis, kurias sistema nuosekliai visas patikrina prieš užmezgant naują ryšio sesiją per <i>pfSense </i>tinklo mazgą. Taip siekiama imituoti vartotojo sukonfigūruotą ir praktikoje naudojamą užkardos sistemą.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Iš teisų, kadangi <i>pfSense </i>yra sofistiška tinklo apsaugos sistema, ji jau turi maždaug 80 įkoduotų {<i>hardcoded</i>} filtravimo taisyklių, kurios matomos tik per komandinės eilutės sąsają. Jų redagavimas per komandinę eilutę gali pažeisti <i>pfSense </i>sistemos vientisumą ir sutrikdyti normalų jos darbą. Jos kūrėjų palaikomas ir vienintelis teisingas <i>pfSense </i>sistemos konfigūracijos būdas yra per saityno tinklalapį prieinama grafinę vartotojo sąsają.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Nors į šio darbo testavimus neįtraukti testai skirtumui tarp 0 ir 25 vartojo apibrėžtų taisyklių ištirti, darbo autorius nepastebėjo jokio praktiškai reikšmingo skirtumo tarp šių <i>pfSense </i>sistemos konfigūracijų. Tačiau kaip jau apžvelgta, akivaizdus skirtumas atsiranda pilnai išjungus paketų filtravimą, kai <i>pfSense </i>dirba tik maršrutizatoriaus režimu.
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Šiame darbe nenagrinėjama, bet autoriaus pastebėjimais <i>pfSense </i>užkardos sistemoje yra didelis našumo skirtumas kaip paketų filtravimo taisyklės apibrėžtos. Pastebėta, jog naudojant specialią užkardos taisyklę apibrėžiančią vienu vardu keletą IP adresų {<i>alias</i>}, eikvojama daugiau sistemos išteklių, nei dvi įprastos su tais pačiais IP adresais. Vis dėlto tai yra tik autoriaus pastebėjimai, nepatenkantis į virtualizacijos tyrimo sritį ir reikalauja atskiro tiriamojo darbo.
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Toliau pateikta susistemintų testavimo duomenų vizualizacija diagramose, kai KVM virtualiųjų mašinų tinklo sąsajos realizuojamos trimis skirtingais būdais. Analizuojamas jų našumas tinklo mazgo pralaidumo, paketų delsos ir drebėjimo atžvilgiu, kai <i>pfSense </i>sistema dirba normaliu įsimenamuoju tinklo užkardos režimu {<i>stateful firewall</i>} + 25 vartotojo apibrėžtos taisyklės.
</div>
<br />
<h2 style="text-align: center;">
<span style="font-size: x-large;">Stateful Firewall mode</span>
</h2>
<br />
<h3 style="text-align: center;">
<i><span style="font-size: normal;">Tinklo mazgo pralaidumas</span></i>
</h3>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Kaip jau buvo pastebėta, perjungus <i>pfSense </i>sistemą į normalųjį užkardos režimą jos pralaidumas apdorojamų paketų skaičiumi per sekundę krito beveik 40 proc. lyginant su plika aparatinės įranga paremta <i>pfSense </i>sistema – be virtualizacijos sluoksnio. Saugos mokestis palietė ir virtualizuotų <i>pfSense </i>sistemų našumą.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Procesoriaus ištekliams reikli IOMMU virtualizacija tik maršrutizatoriaus režimu savo našumu su aparatinės įrangos susilygino ties 512 baitų ilgio paketais, perjungus <i>pfSense </i>sistemą į užkardos režimą ši riba pasistūmė perpus toliau – iki 1024 baitų ilgio paketų.
</div>
<div style="text-align: justify; text-indent: 1cm;">
<i>VirtIO </i>pralaida taip pat krito. Jei tik maršrutizatoriaus <i>pfSense </i>sistemoje su paravirtualizuotų tinklo tvarkyklių sąsaja savo pralaida tarp didesnių paketų prilygdavo aparatinei įrangai, šiai aptarnaujant <i>pfSense </i>užkardos sistemą nebepakanka fizinių išteklių spartos.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Tačiau kokia prasmė turėti užkardos sistemą kompiuterių tinkle su išjungtu paketų filtravimu. Šiuos nuostolius reikia priimti kaip natūralų motyvą – saugos kainą. Be to, nereikia pamiršti, jog šiame tiriamajame darbe <i>pfSense </i>sistema testuojama su senu ir ekonomiškos klasės serveriu. Nūdienos x86 architektūros serverių aparatinė įranga apginkluota tinklo funkcijas spartinančiomis posistemis, todėl tikėtina su analogiškomis užduotimis susidorotų geriau.
</div>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjbPQL67UxwR6EaR957ZjjKL8UWzPJcOZ8Wb7CdlWbNTQUV1KX4Zblq6DhArcOjNEe4aEOLCqWqZiTjhbj-aR2v_hmxjJK9lwuEOAmce4O5R8cDrEYzST8geNl4KgId9hI7e5zc8aHEjyo/s1600/pfsense-fw-stateful-pps.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="303" data-original-width="643" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjbPQL67UxwR6EaR957ZjjKL8UWzPJcOZ8Wb7CdlWbNTQUV1KX4Zblq6DhArcOjNEe4aEOLCqWqZiTjhbj-aR2v_hmxjJK9lwuEOAmce4O5R8cDrEYzST8geNl4KgId9hI7e5zc8aHEjyo/s1600/pfsense-fw-stateful-pps.png" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;"><b><i>pfSense stateful</i> užkardos režimu: dvikryptis paketų apdorojimo skaičius per sekundę</b></td></tr>
</tbody></table>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Nors iš stulpelinės pralaidos diagramos sunku įžvelgti, bet <i>VirtIO </i>ir E1000 tinklo sąsajos pralaida šiek tiek nukrenta pereinant nuo 1518 baitų ilgio kadrų prie 4K paketų: atitinkamai iš 79 į 73 kkps ir iš 28 į 24 kkps.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Tuo tarpu <i>pfSense </i>užkardos sistema su IOMMU dedikuotomis tinklo plokštėmis ir be virtualizacijos sluoksnio rodo nedidelį kardų pralaidos prieaugį pereinant iš 1518 baitų ilgio kadrų prie 4K paketų: abiem atvejais didėja nuo 81 iki 88 kkps.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Tai rodo, jog <i>pfSense </i>užkardos sistema su programine įranga imituojamomis tinklo plokštėmis turi sunkumų apdorojant fragmentuojamus tinklo paketus. Tą patvirtina ir testavimo metu su pastarosiomis tinklo sąsajomis prie įprastų tiems dydžiams pralaidos parametrų pradeda masiškai pametinėti tinklo paketus, ir informuoti apie fragmentuojamų paketų perpildymą <i>pfSense </i>sistemoje.
</div>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg_qbkohKezSVybYLxPXttE4qyso9owBRrRnXollmvhWCmUWt0mWOdTkvBH7WssGMUYQPxsq2tjQ1K9LlGsUv4Z1v-kVcG2vn5BIwpgqmmA_Mj5yfdw2WaeHSIHBza4XcZzslT5foxhLj0/s1600/pfsense-fw-stateful-bps.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="341" data-original-width="643" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg_qbkohKezSVybYLxPXttE4qyso9owBRrRnXollmvhWCmUWt0mWOdTkvBH7WssGMUYQPxsq2tjQ1K9LlGsUv4Z1v-kVcG2vn5BIwpgqmmA_Mj5yfdw2WaeHSIHBza4XcZzslT5foxhLj0/s1600/pfsense-fw-stateful-bps.png" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;"><b><i>pfSense stateful </i>užkardos režimu: dvikryptė tinklo mazgo greitaveika</b></td></tr>
</tbody></table>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Jei krenta kadrų pralaida, būtinai kris ir bitų pralaida per sekundę. Iš greitaveikos diagramos sunku įžvelgti skirtumus, bet remiantis testų duomenimis: <i>pfSense </i>užkardos be virtualizacijos sluoksnio sveikoji maksimali naudingoji dvikryptė pralaida su 64 baitų ilgio kadrais siekia 28 Mbps (bendrai 58 Mbps); IOMMU to pačio ilgio kadrus apdoroja 34 Mbps sparta, o <i>VirtIO </i>ir E1000 tinklo sąsajos tik 22 Mbps ir 8 Mbps atitinkamai.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Tokios tinko mazgo pralaidos išties nedžiugina, vis dėlto, vidutinis paketų dydis internete arčiau 256 baitų ilgio, o tai padidina <i>pfSense </i>tinklo užkardos sveikąją pralaidą su E1000 tinklo sąsajos tvarkyklėmis iki 104 Mbps duomenų srauto (52 Mbps abiem kryptimis). <i>VirtIO </i>tą ribą pakelia du kartus, iki 220 Mbps (110 Mbps abiem kryptimis), tai paknakamai solidi pralaida <i>Fast Ethernet</i> tinklui aptarnauti. IOMMU ir nevirtualizuota <i>pfSense </i>užkardos sistema su turima aparatine įranga gali pasiekti atitinkamai 452 ir 670 Mbps suminę greitaveiką per dvikryptį duomenų srautą.
</div>
<br />
<h3 style="text-align: center;">
<i><span style="font-size: normal;">Paketų delsa</span></i>
</h3>
<br />
<div style="text-align: justify; text-indent: 1cm;">
<i>pfSense </i>užkardos sistemai filtruojant ją kertančius paketus tenka apdoroti pagal kelias duomenų struktūras: maršrutizavimo, būsenos ir filtravimo lenteles. Teoriškai toks paketų apdorojimas itin neigiamai atsiliepia <i>pfSense </i>tinklo mazgą kertančių paketų delsos laikui.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Laisvosios <i>pfSense </i>tinklo užkardos sukeltos delsos diagrama primena maršrutizatoriaus laisvosios delsos diagramą.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Blankiau, bet vis dar matoma maršrutizatoriaus režimu veikiančios <i>pfSense </i>sistemos anomalija su didesniais paketais: <i>pfSense </i>veikiant užkardos režimu ties 8K baitų ilgio paketu užfiksuota aparatinės įrangos delsa didesnė nei su IOMMU atvaizduotos tinklo sąsajos sprendimu.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Kaip jau minėta, delsą šiuo atveju gali lemti tinklo plokštės dėklą aptarnaujančio proceso konteksto perjungimas (plačiau apie tai rašyta <i>pfSense </i>tik maršrutizatoriaus platformos analizėje).
</div>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgYsAmuZvQjqW62cNlrzhMT8kqahOc3_ssFsOgTpZQp74ySId0RE7g-RcXtVFTmEq12qNfPeSGm7wXwDwLZFIaxKIFtyOyd4uIYS8LFY6kpxgVxX102pfiJy-wwuhVNgcRMEghzXHK0VCA/s1600/pfsense-fw-stateful-ping.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="303" data-original-width="643" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgYsAmuZvQjqW62cNlrzhMT8kqahOc3_ssFsOgTpZQp74ySId0RE7g-RcXtVFTmEq12qNfPeSGm7wXwDwLZFIaxKIFtyOyd4uIYS8LFY6kpxgVxX102pfiJy-wwuhVNgcRMEghzXHK0VCA/s1600/pfsense-fw-stateful-ping.png" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;"><b><i>pfSense stateful </i>užkardos režimu: laisvoji paketų delsa</b></td></tr>
</tbody></table>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Įjungus <i>pfSense </i>sistemoje paketų filtravimą, laisvosios delsos rezultatai bendrai nežymiai padidėjo. Tačiau skirtumas tarp tos pačios tinklo plokštės, kai ši priskirta <i>pfSense </i>užkardos sistemai be virtualizacijos sluoksnio ir kai ji priskirta VM per IOMMU virtualizaciją su tos pačios konfigūracijos <i>pfSense </i>sistema, niekur nedingo. Pastarosios laisvoji delsa vidutiniškai net apie 39% didesnė, imant kadrų ilgius nuo 64 iki 1518 baitų.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Įsimenamosios užkardos režimu dirbančios <i>pfSense </i>sistemos apkrautosios delsos diagrama gerokai skiriasi nuo laisvosios delsos, bet turi akivaizdžių panašumų lyginant ją su <i>pfSense</i> maršrutizatoriaus platforma.
</div>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjpP3l3Dn0Dsvn8qB1rOt5wgP-rGvkgU2cLIZASR7F-OYqnWyz3OLOIyCsQsRHkjGn00wnsTQucmWLDYfDwxPxIgSWyzytRVK3cnsXupBKn64xcv9YmmqxfKkCSgnHRpSOiNckQ-HJFmME/s1600/pfsense-fw-stateful-ping-load.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="341" data-original-width="643" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjpP3l3Dn0Dsvn8qB1rOt5wgP-rGvkgU2cLIZASR7F-OYqnWyz3OLOIyCsQsRHkjGn00wnsTQucmWLDYfDwxPxIgSWyzytRVK3cnsXupBKn64xcv9YmmqxfKkCSgnHRpSOiNckQ-HJFmME/s1600/pfsense-fw-stateful-ping-load.png" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;"><b><i>pfSense stateful </i>užkardos režimu: apkrautoji paketų delsa</b></td></tr>
</tbody></table>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Kaip ir maršrutizatoriaus režimu, <i>pfSense </i>užkardos laisvoji tinklo delsa linkusi sumažėti ją apkrovus sveikąja pralaida virtualiose mašinose kurios turi tiesioginę prieigą prie fizinės tinklo plokštės. Tai vaizdžiai matoma iš jų suartėjusių delsos kreivių delsos diagramose. Didžiausias sumažėjimas vėl fiksuojamas su <i>VirtIO </i>tinklo sąsajos tvarkyklėmis, kiek mažesnis IOMMU atveju, o nevirtualizuotos <i>pfSense </i>tinklo užkardos sistemos atžvilgiu ji šiek tiek padidėjo. Kaip ir maršrutizatoriaus režimu, tikėtina to priežastis VM tinklo plokštės dėklą aptarnaujančio proceso konteksto perjunginėjimas procesoriuje.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Virtualios mašinos su programine įranga paremtomis E1000 ir <i>VirtIO</i> tinklo sąsajomis testų metu demonstravo nestabilius rezultatus, todėl ir jų kreivės labai nenuoseklios. Tuo tarpu nevirtualizuota <i>pfSense </i>sistema ir VM su realiomis tinklo sąsajomis atvaizduojamas {<i>re-mapped</i>} per IOMMU virtualizacijos palaikymą aparatinėje įrangoje, išlaiko paketų apdorojimo stabilumą <i>pfSense</i> sistemai veikiant įsimenamosios užkardos režimu.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Imituojamos tinklo plokštės su E1000 tvarkyklėmis, kaip ir <i>pfSense </i>maršrutizatoriaus platformos atveju, apkrautoji delsa visiškai nenuosekli ir nenuspėjama, vidutiniškai 2297% didesnė nei aparatinės įrangos, nuo 64 iki 1518 baitų ilgio kadrams.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Apkrautosios delsos skirtumas tarp atvaizduojamos tinklo plokštės <i>pfSense </i>virtualioje mašinoje per IOMMU ir tos pačios tinklo plokštės <i>pfSense </i>užkardos sistemoje be virtualizacijos sluoksnio, vidutiniškai didesnis kiek daugiau nei 15%, tarp 64 ir 1518 baitų ilgio kadrų.
</div>
<br />
<h3 style="text-align: center;">
<i><span style="font-size: normal;">Paketų drebėjimas</span></i>
</h3>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Kaip matyti iš paketų drebėjimo diagramos, visų skirtingų tinklo sąsajų kreivės sugeneruotos pfSense užkardos sistemos testavimu metu, pasižymi nuoseklumu ir stabilumu.
</div>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiigcnnpv2my9zlAvYhC0p_JzODBTDcqKBhKugK9o8DLAo-FaGH9qil5Mj1xO6CwoPq_q5BXbfH4mMZ_tSGKnMZ8dYHakWIcClXF7wDPXi88I1yZ6PnWZs-CstwEr6nrq03-fcMxOoWKTU/s1600/pfsense-fw-stateful-jitter.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="341" data-original-width="643" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiigcnnpv2my9zlAvYhC0p_JzODBTDcqKBhKugK9o8DLAo-FaGH9qil5Mj1xO6CwoPq_q5BXbfH4mMZ_tSGKnMZ8dYHakWIcClXF7wDPXi88I1yZ6PnWZs-CstwEr6nrq03-fcMxOoWKTU/s1600/pfsense-fw-stateful-jitter.png" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;"><b><i>pfSense stateful </i>užkardos režimu: paketų drebėjimas</b></td></tr>
</tbody></table>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Prie paveldėtos maršrutizatoriaus platformos anomalijos prisidėjo dar viena, taip pat programine įranga paremta tinklo sąsajos tvarkyklė.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Iš tiesų, abi anomalijos jau buvo pastebėtos pralaidos diagramoje ir ją sudarančių lentelių analizėje, kurią sukėlė sumažėjusi <i>pfSense </i>užkardos kadrų pralaida apdorojant fragmentuojamus paketus. Panašu, jog ir <i>VirtIO </i>banguojanti kreivė protestuoja prieš fragmentuotus tinklo paketus <i>pfSense </i>užkardos sistemoje, todėl reiktų vengti didesnių nei 1518 baitų ilgio kadrų kompiuterių tinkle su virtualizuota <i>pfSense </i>užkarda, arba naudoti IOMMU virtualizaciją.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Iš paketų drebėjimo diagramos matyti, jog su 64-256 baitų ilgio kadrais <i>VirtIO </i>paketų drebėjimas mažesnis už IOMMU. Tačiau IOMMU pralaida taip pat didesnė. Jei jos pralaidą sumažinti iki <i>VirtIO</i>, sumažėtų ir paketų drebėjimas, kurį šiuo atveju lemia itin aukšta <i>pfSense</i> sistemos centrinio procesoriaus apkrova.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Kaip ir <i>pfSense </i>maršrutizatoriaus platformos atveju, prie mažiausių tinklo kadro dydžių matyti ryškus skirtumas tarp IOMMU atvaizduojamos tinklo plokštės VM ir tos pačios tinklo plokštės nevirtualizuotoje <i>pfSense </i>užkardos sistemoje. Paketų drebėjimo skirtumas, kaip ir maršrutizatoriaus platformos atveju, išnyksta su didesniais nei 512 baitų ilgio paketais.
</div>
<br />
<h3 style="text-align: center;">
<i><span style="font-size: normal;">pfSense sistemos centrinio vidutinė apkrova</span></i>
</h3>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Kaip ir tikėtasi, vidutinės <i>pfSense </i>sistemos apkrovos diagramoje ryškus skirtumas tarp jos veikimo tik maršrutizatoriaus režimu ir įsimenamosios užkardos režimu.
</div>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi8IWpjDDRAsxlww2obIDvjmqoJg5-2ten9C_-QtxpK7oqcLac_YAhHrlJtLDCfc5em8gktBz2FpDTMAx-fuXzIXETFMyeTomFtV5h6xzlzCZgwpjbI0uaG3M0i5KYrwZ_a98ZNv9_nMY8/s1600/pfsense-fw-stateful-cpu.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="378" data-original-width="589" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi8IWpjDDRAsxlww2obIDvjmqoJg5-2ten9C_-QtxpK7oqcLac_YAhHrlJtLDCfc5em8gktBz2FpDTMAx-fuXzIXETFMyeTomFtV5h6xzlzCZgwpjbI0uaG3M0i5KYrwZ_a98ZNv9_nMY8/s1600/pfsense-fw-stateful-cpu.png" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;"><b><i>pfSense </i>sistemos vidutinė procesoriaus apkrova <i>stateful</i> užkardos režimu </b></td></tr>
</tbody></table>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Padidėjusi <i>pfSense </i>užkardos sistemos vidutinė apkrova lėmė didesnį rezultatų nuokrypį bei šio poskyrio diagramų kreivių netolygumą. Skirtingai nei maršrutizatoriaus režimu, įjungtas paketų filtravimas maksimaliai apkrauna ir nevirtualizuotą <i>pfSense </i>užkardos sistemą.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Kaip minėta <i>pfSense </i>maršrutizatoriaus vidutinės apkrovos analizėje, <i>pfSense </i>vidutinė apkrova sustoja ties 50 proc. riba, nes geba pilnai išnaudoti tik 2 iš 4 procesoriaus branduolių. Po vieną branduolį WAN ir LAN tinklo sąsajas kertančiam duomenų srautui apdoroti.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Testavimų metu pastebėta, jog nepriklausomai nuo turimų laisvų branduolių, <i>pfSense </i>sistemos įvesties/išvesties operacijų kamštis – vieno procesoriaus branduolio sparta. Jei dėl gausaus tinklo duomenų srauto vieno procesoriaus branduolio apkrova viršija 100%, nes nebespėja aptarnauti jam paskirtos tinklo plokštės generuojamas tiesiogines pertraukčių užklausas {<i>interrupt requests</i>}, <i>pfSense </i>(<i>FreeBSD</i>) operacinės sistema persijungia į programinį pavėlintą pertraukčių apdorojimą, tam sistemos branduolyje perkrautai tinklo plokštei sukuriama eilė {<i>queue</i>}, kurios aptarnavimas ne toks dažnas kaip tiesioginių procesoriaus pertraukčių. Nors tai ir sumažina tinklo sąsajos pertraukčių skaičių į procesorių, stipriai padidėja paketų apdorojimo delsos laikas ir duomenų srauto nuostoliai.
</div>
<br />
<h2 style="text-align: center;">
<span style="font-size: x-large;">Stateless Firewall mode</span>
</h2>
<br />
<div style="text-align: justify; text-indent: 1cm;">
<i>pfSense </i>buvo sukonfigūruota ir darbui neįsimenamuoju užkardos režimu {<i>stateless firewall</i>}, kai užkarda filtruoja kiekvieną ją kertantį paketą nepriklausomai nuo jo kilmės ir paskirties – kaip naują, net jei tik ką iš tos pačios ryšio sesijos tokį pat paketą apdorojo. Todėl kiekvienas tinklo paketas priverstas patikrinti visą užkardos taisyklių sąrašą + 25 vartotojo apibrėžtas taisykles.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Nepaisant šio tinklo užkardos režimo neefektyvumo praktikoje, šis testas atliktas su siekiu patikrinti kiek nežinomų/naujų paketų geba apdoroti <i>pfSense </i>užkardos sistema per vienetinį laiko tarpą. Taip sudarant apytikrį vaizdą, kiek lygiagrečių tarptinklinio ryšio kanalų <i>pfSense </i>užkarda su turima aparatine įranga gali apdoroti per vieną sekundę, bei įvertinti nuostolius lyginant su virtualizuota <i>pfSense </i>sistema. Testo rezultatai teoriškai turėtų atspindėti tuos kurie būtų gaunami praktikoje, priklausomai nuo kokio tipo ryšio sesijos užmezgamos:
</div>
<ul>
<li>Geresni jei ryšio sesijos užmezgamos tarp žinomų, vienodų tinklo adresų, kuriuos normaliu įsimenamuoju režimu dirbanti <i>pfSense </i>sistema įsimena ir apdoroja sparčiau.
</li>
<li>Blogesni, jei ryšio sesijos užmezgamos tarp nežinomų, skirtingų tinklo adresų, kuriuos normaliu užkardos režimu dirbanti <i>pfSense </i>sistema turi apdoroti kiekvieną atskirai prieš nusprendžiant blokuoti, atmesti ar praleisti. Tokia situacija gali susidaryti kai <i>pfSense </i>kertančio duomenų srauto tinklo paketai daugumoje priklauso TCP protokolui ir siuntėjai nežinomi užkardos sistemai (pvz., <i>DDoS </i>atakos atveju).
</li>
</ul>
<br />
<h3 style="text-align: center;">
<i><span style="font-size: normal;">Grynasis tinklo mazgo pralaidumas</span></i>
</h3>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Šiame darbe, <i>pfSense </i>sistemos veikiančios neįsimenamosios užkardos {<i>stateless firewall</i>} režimu ir apdorojančios maksimalų dvikryptį UDP duomenų srautą, kurio nuostoliai paketo dydžiui nedidesni už 0,1% šiame darbe vadinama grynąja tinklo mazgo pralaida.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Lyginant <i>pfSense </i>maršrutizatoriaus ir įsimenamosios užkardos režimų kadrų pralaidos diagramas akivaizdžiai matyti, jog kiekvieno <i>pfSense </i>tinklo mazgą kertančio paketo tikrinimas sukuria didžiules sąnaudas ir smarkiai sumažina <i>pfSense </i>užkardos našumą: grynoji <i>pfSense </i>mazgo pralaida beveik du kartus mažesnė už įsimenamosios užkardos sveikąją, ir net apie tris kartus už <i>pfSense </i>maršrutizatoriaus platformos pralaidą.
</div>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjc3O397-hgSsChpKlWlmnVtUPDe1QTjSYSnVF7ptirSwURDmBv0PE86noEgmHO07mC4FPquC7kZzFsE0tDlfmMKYoQ7yY-L2SxvaosMZFegfd7Xx-8xj_vLuZhLAj56D6qGdWI4zVuSmc/s1600/pfsense-fw-stateless-pps.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="303" data-original-width="643" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjc3O397-hgSsChpKlWlmnVtUPDe1QTjSYSnVF7ptirSwURDmBv0PE86noEgmHO07mC4FPquC7kZzFsE0tDlfmMKYoQ7yY-L2SxvaosMZFegfd7Xx-8xj_vLuZhLAj56D6qGdWI4zVuSmc/s1600/pfsense-fw-stateless-pps.png" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;"><b><i>pfSense stateless </i>užkardos režimu: dvikryptis paketų apdorojimo skaičius per sekundę</b></td></tr>
</tbody></table>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Jei tarsim, jog vidutinio tinklo vidutinio paketo ilgis apie 256 baitai, tai nevirtualizuota <i>pfSense</i> užkarda su turima aparatine įranga, gebanti apdoroti be žymių nuostolių 214 tūkst. nežinomų/naujų paketų per sekundę – galėtų teoriškai aptarnauti maždaug 214 tūkstančių lygiagrečių tarptinklinių ryšio kanalų per vieną sekundę; tuo tarpu virtualizuota <i>pfSense </i>užkarda geriausiu atveju (su IOMMU palaikymu) apdorotų apie 168 tūkstančius ryšio sesijų per vieną sekundę; o <i>VirtIO </i>ir E1000 atitinkamai po 80 ir 48 tūkstančių.
</div>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEieZCUThrnTq8Td6nbxMWYv7CJTUNC-45jRYryXO7b0LTvZY2NemYWxHHPuUDODEwyAfAFMdNor-_YdTw7nOpUv4_sUR9i_BHO8nOH1BIQRg-xEHEiaGoIbNTn_UmDSHyyeIcHRn00x7-M/s1600/pfsense-fw-stateless-bps.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="303" data-original-width="643" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEieZCUThrnTq8Td6nbxMWYv7CJTUNC-45jRYryXO7b0LTvZY2NemYWxHHPuUDODEwyAfAFMdNor-_YdTw7nOpUv4_sUR9i_BHO8nOH1BIQRg-xEHEiaGoIbNTn_UmDSHyyeIcHRn00x7-M/s1600/pfsense-fw-stateless-bps.png" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;"><b><i>pfSense stateless </i>užkardos režimu: dvikryptė tinklo mazgo greitaveika</b></td></tr>
</tbody></table>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Kaip įprasta, visapusiškai analizei verta į pralaidą pažvelgti ir bitais per sekundę. Jei vėl tarsim, jog vidutinio tinklo duomenų srauto vidutinis paketo ilgis yra apie 256 baitai, tai nevirtualizuota <i>pfSense </i>užkarda su turima aparatine įranga be virtualizacijos sluoksnio sugebės išfiltruoti 180 Mbps dvikryptį duomenų srautą (bendrai 360 Mbps). Virtualizacija geriausiu atveju be reikšmingų nuostolių sugebėtų apdoroti 141 Mbps dvikryptį duomenų srautą (bendrai 282 Mbps). <i>VirtIO </i>ir E1000 sąsajos atitinkamai po 134 Mbps ir 80 Mbps, nežinomos kilmės ir paskirties paketų srauto.
</div>
<br />
<hr align="left" size="1" width="100%" />
<br />
<h3 style="text-align: start;">
<span style="font-family: inherit; font-size: large;">"Virtualizacijos įtaka <i>pfSense </i>tinklo užkardos sistemai: našumo analizė" Turinys:</span></h3>
<div>
<br />
<ol>
<li><a href="https://skarware.blogspot.com/2017/07/virtualizacijos-itaka-pfsense-metodika.html" target="_blank">Virtualizacijos įtaka <i>pfSense</i> tinklo užkardos sistemai: našumo analizė [<b>1 dalis - Metodika</b>]</a></li>
<li><a href="https://skarware.blogspot.com/2017/07/virtualizacijos-itaka-pfsense-router.html" target="_blank">Virtualizacijos įtaka <i>pfSense</i> tinklo užkardos sistemai: našumo analizė [<b>2 dalis - Router mode</b>]</a></li>
<li><span style="background-color: #d9ead3;"><a href="https://skarware.blogspot.com/2017/07/virtualizacijos-itaka-pfsense-firewall.html">Virtualizacijos įtaka <i>pfSense</i> tinklo užkardos sistemai: našumo analizė [<b>3 dalis - Firewall mode</b>]</a></span></li>
<li><a href="https://skarware.blogspot.com/2017/07/virtualizacijos-itaka-pfsense-noisy-neighbor.html" target="_blank">Virtualizacijos įtaka <i>pfSense</i> tinklo užkardos sistemai: našumo analizė [<b>4 dalis - Noisy Neighbor</b>]</a></li>
</ol>
<br />
<hr align="left" size="1" width="50%" />
</div>
Martynashttp://www.blogger.com/profile/00471091754225207342noreply@blogger.com0tag:blogger.com,1999:blog-5426813891256937073.post-55879464452287902652017-07-23T16:52:00.001+03:002021-07-02T23:15:05.423+03:00Virtualizacijos įtaka pfSense tinklo užkardos sistemai: našumo analizė [2 dalis - Router mode]<div style="text-align: justify; text-indent: 1cm;">
Kartą jau apkalbėta <i>pfSense </i>kompiuterių tinklo užkardos sistema (žr. straipsnį "<a href="https://skarware.blogspot.com/2016/10/pfsense-kompiuteriu-tinklo-mazge.html" target="_blank"><i>pfSense</i> kompiuterių tinklo mazge</a>"), turi labai stiprius maršrutizatoriaus bruožus, todėl neretai tinklo administratoriai ją pritaiko kaip pavienį perimetro (WAN) ar vidinio (LAN) tinklo maršrutizatorių. Vidutinio ir didesnio dydžio kompiuterių tinkluose, kurių jungtys sodriai prisotintos paketų srautu, tai atskiras tinklo mazgo vaidmuo <i>pfSense </i>sistemai.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Šioje straipsnio dalyje pateikta susistemintų testavimo duomenų vizualizacija diagramose, kai KVM hipervizoriaus sukurtų virtualiųjų mašinų tinklo sąsajos realizuojamos skirtingais būdais. Analizuojamas jų našumas tinklo mazgo pralaidumo, paketų delsos ir drebėjimo atžvilgiu, kai <i>pfSense </i>sistema veikia tik maršrutizatoriaus režimu {<i>routing platform only</i>} (paketų filtravimas išjungtas).
</div>
<br />
<h3 style="text-align: center;">
<i><span style="font-size: normal;">Tinklo mazgo pralaidumas</span></i>
</h3>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Dauguma <i>Ethernet </i>tinklinės įrangos gamintojų pristato savo produktų pralaidą {<i>throughput</i>} bitais per sekundę (pvz., 100 Mbps ar 1 Gbps), tačiau marketingo verčiami pamiršta nurodyti svarbią informaciją: prie kurio paketo dydžio ta pralaida pamatuota. Beveik visada ta pralaida pamatuota su didžiausias paketais, tačiau tai neatspindi realios įrenginio spartos.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Kompiuterių tinklo inžinieriai tinklo įrenginių pralaidą matuoja pirmiausiai kadrais/paketais per sekundę, ir bent keliems skirtingiems jų dydžiams, kurie padeda objektyviau įvertinti įtaiso spartą tinkle. Tokia įrenginio specifikacija ypač naudinga jei tinklo administratorius išanalizavęs prižiūrimą tinklo duomenų srautą ir žino tinkle vyraujančių paketų ilgių pasiskirstymą.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Neatsitiktinai ir šiame tiriamajame darbe pralaida pirmiausiai matuojama ir vertinama kadrų skaičiumi per sekunde (kps). Toks žvilgsnis į <i>pfSense </i>tinklo mazgo sistemą padės geriau įvertinti našumo pokyčius sukeltus visiškos virtualizacijos sluoksnio, ir skirtingų KVM VM tinklo sąsajų.
</div>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg4vQrLoHmJJ4Jfc4yOJ3JqkPa4-evgQ6fgWNCtyGDkbNqA2lalmGDPNUnJNNg9fK7BZ1kRKNz827aRDnRs70p943oGR_Plf9y4-sOiYO7U1n8A1zrRjXqd8hdgI6grloMWIhPwbzOnxlo/s1600/pfsense-routing-pps.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="306" data-original-width="640" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg4vQrLoHmJJ4Jfc4yOJ3JqkPa4-evgQ6fgWNCtyGDkbNqA2lalmGDPNUnJNNg9fK7BZ1kRKNz827aRDnRs70p943oGR_Plf9y4-sOiYO7U1n8A1zrRjXqd8hdgI6grloMWIhPwbzOnxlo/s1600/pfsense-routing-pps.png" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;"><b><i>pfSense </i>tik maršrutizatoriaus režimu: dvikryptis paketų apdorojimo skaičius per sekundę</b></td></tr>
</tbody></table>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Pralaidos stulpelinėje diagramoje vertikalioje ašyje žymimas suminis vienalaikis abiejų krypčių kadrų skaičius per sekundę tūkstančiais. Horizontalioje ašyje sužymėti skirtingų dydžių tinklo paketai. Keturių spalvų stulpeliai žymi skirtingas <i>pfSense </i>maršrutizatoriaus realizacijas.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Kaip ir buvo galima tikėtis, <i>pfSense </i>maršrutizuoja paketus sparčiausiai kai jai priskiriamos dedikuotos tinklo plokštės per IOMMU virtualizaciją ir paravirtualizuotas <i>VirtIO </i>tinklo sąsajos tvarkykles, kurios abi leidžia tiesioginę prieigą prie fizinių tinklo plokščių.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Gali nustebinti, bet testuose užfiksuotas ženklus pralaidos našumo skirtumas (apie 27 proc. mažesnis) tarp IOMMU dedikuotų tinklo plokščių ir tų pačių tinklo plokščių aparatinės įrangos (HW) atveju, kai <i>pfSense </i>maršrutizatorius apdoroja mažiausius tinklo kadro dydžius (64-256 baitų ilgio).
</div>
<div style="text-align: justify; text-indent: 1cm;">
Iš diagramos matyti IOMMU dedikuotų tinklo plokščių maksimali 64-256 ilgio paketų apdorojimo riba – apie 470 tūkst. paketų per sekundę. <i>pfSense </i>sistemai veikiant betarpiškai virš aparatinės įrangos, su tomis panašiomis tinklo plokštėmis ir tvarkyklėmis, maksimali riba gerokai aukščiau – daugiau nei 600 tūkst. paketų per sekunde (to priežastis nagrinėjama prie <i>pfSense</i> sistemos procesoriaus vidutinės apkrovos diagramos).
</div>
<div style="text-align: justify; text-indent: 1cm;">
<i>VirtIO </i>ir <i>E1000 </i>tinklo plokštės paketų pralaida išlieka gana stabili nepriklausomai nuo testuojamo paketo ilgio – maždaug 85 ir 32 tūkst. paketų per sekundę atitinkamai. To priežastis aparatinės įrangos spartos ribos, realizuojant programine įranga imituojamas tinklo sąsajas.
</div>
<div style="text-align: justify; text-indent: 1cm;">
IOMMU kadrų pralaidumu prisiveja aparatinę įrangą ties 512 ilgio paketais; <i>VirtIO </i>paveja kai <i>pfSense </i>tinklo mazgas dirba su 1280 baitų paketais, o E1000 sąsaja nepriartėja ne perpus.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Taigi, įvertinus <i>pfSense </i>maršrutizatoriaus tinklo pralaidą kadrais per sekunde, galima į tą pačią pralaidą pažvelgti kitu kampu – bitais per sekundę. Kaip matyti kadrų ir bitų pralaidos paveiksluose vaizduojamų diagramų duomenys tarsi apsivertė. Tai gerai iliustruoja kaip įrenginio pralaidumas bitais priklauso nuo kadrų dydžio ir kaip maždaug vienodas kardų srautas per sekundę tarp visų paketo dydžių duoda skirtingą įrenginio greitaveiką bitais per sekunde (<i>E1000 </i>ir <i>VirtIO </i>atveju). Apačioje pralaidos diagramoje vaizduojama suminė vienalaikė dvikryptė greitaveika bitais per sekundę.
</div>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEijSCdUHTVIy9ogZSqg2SDv5E9MBxQIAHr_su1DsFKwrckRmm-JNZXwup4sxHFoclLsSY1lGxPCRwRwcN74LCnRTS9Rm-_uAScO5pYlrnfPZTgv_1qa_yzOFRrk9DNd1dgGvvdha2M5G00/s1600/pfsense-routing-bps.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="306" data-original-width="640" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEijSCdUHTVIy9ogZSqg2SDv5E9MBxQIAHr_su1DsFKwrckRmm-JNZXwup4sxHFoclLsSY1lGxPCRwRwcN74LCnRTS9Rm-_uAScO5pYlrnfPZTgv_1qa_yzOFRrk9DNd1dgGvvdha2M5G00/s1600/pfsense-routing-bps.png" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;"><b><i>pfSense </i>tik maršrutizatoriaus režimu: dvikryptė tinklo mazgo greitaveika</b></td></tr>
</tbody></table>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Gali nustebinti, tačiau net be virtualizacijos sluoksnio <i>pfSense </i>sistema su mažiausiais 64 baitų ilgio paketais, pralaida tik 90 Mbps (45 Mbps abiem kryptimis), kita vertus, šį duomenų srautą sudaro 629 tūkst. kadrų per sekundę; tuo tarpu IOMMU greitaveika beveik trečdaliu mažesnė – 66 Mbps (33 Mbps abiem kryptimis).
</div>
<div style="text-align: justify; text-indent: 1cm;">
Dar prasčiau atrodo E1000 programinės ir <i>VirtIO </i>paravirtualizuotos tinklo sąsajos tvarkyklės, tik 10 ir 24 Mbps atitinkamai. Šiais laikais, kai belaidžio ryšio technologijos gali pasiūlyti didesnę nei 30 Mbps stabilią greitaveiką, vargu ar gali sužavėti tokia virtualaus tinklo mazgo pralaida.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Iš dalies dėl to kalta pridėtinė informacija, kaip minėta metodikos straipsnio dalyje, 64 baitų ilgio paketu perduodamos naudingos informacijos kiekis tik apie 28%, visą kitą sudaro meta duomenys.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Kai <i>pfSense </i>maršrutizatorius dirba su dvigubai ilgesniais 128 baitų paketais, pralaida bitais padidėja daugiau nei 4 kartus, nes ir jų perduodama naudinga informacija didėja daugiau nei du kartus, iki 64%; kartu su kadro ilgio didėjimu matomas ženklus bendros pralaidos augimas bitais.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Visos tinklo sąsajos realizacijos virtualioje mašinoje pasiekia savo praktiškai naudingą pralaidos bitais piką su didžiausiais kadrų dydžiais – 1518, nes ir jų naudingoji krova išauga iki 97%.
</div>
<br />
<h3 style="text-align: center;">
<i><span style="font-size: normal;">Paketų delsa</span></i>
</h3>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Kitas svarbus maršrutizatoriaus rodiklis – jį kertančių paketų delsa. Kaip minėta metodikoje, šiame darbe <i>pfSense </i>mazgo delsa matuojama į abi puses {<i>round-trip time</i>}, o ne į vieną {<i>end-to-end</i>}. Toliau nagrinėjama delsa pamatuota dviem atvejais: kai <i>pfSense </i>sistema neveikios būsenos {<i>idle</i>} ir kai yra apkrauta sveikąja pralaida, nustatyta pralaidos testų metu.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Pažymėtina, jog vertikalioji linijinės diagramos vertikalioji ašis logaritminės skalės – maži pokyčiai plokštumoje, turi didelį skaitinių reikšmių skirtumą.
</div>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj_bRH8w1llXLQtiTKIwb6151nNXCQFu55N8iwK19P32NMjg9BIo214zPIA9jbDxo8hp0Dj7q2CBgsn2XDITlGD21GlTLIk9DrrLr-5OWmG28cIXhoI_BlTRfD_UJYhO7gX024q3uxZ-Uw/s1600/pfsense-routing-ping.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="283" data-original-width="640" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj_bRH8w1llXLQtiTKIwb6151nNXCQFu55N8iwK19P32NMjg9BIo214zPIA9jbDxo8hp0Dj7q2CBgsn2XDITlGD21GlTLIk9DrrLr-5OWmG28cIXhoI_BlTRfD_UJYhO7gX024q3uxZ-Uw/s1600/pfsense-routing-ping.png" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;"><b><i>pfSense </i>tik maršrutizatoriaus režimu: laisvoji paketų delsa</b></td></tr>
</tbody></table>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Vėlgi, galbūt daugelio nustebimui, bet matyti aiškus skirtumas tarp tos pačios tinklo plokštės, kai ši priskirta <i>pfSense </i>maršrutizatoriaus platformai be virtualizacijos sluoksnio ir kai ji priskirta VM per IOMMU virtualizaciją su tos pačios konfigūracijos <i>pfSense </i>sistema. Vidutiniškai laisvoji delsa IOMMU atveju net 38% didesnė, tarp 64 ir 1518 baitų ilgio kadrų.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Laisvosios delsos anomalija užfiksuota su 8K-64K dydžio paketais, čia VM tinklo plokštė pasižymėjo mažesne delsa nei ta pati tinklo plokštė aparatinės įrangos atveju. Papildomi testais nepavyko šios anomalijos panaikinti, todėl tai turėtų būti teisingi duomenys. Atsižvelgus į mažą <i>pfSense </i>apkrovą apdorojant fragmentuotus paketus, didesnę delsą aparatinės įrangos atveju gali lemti tinklo plokštę aptarnaujančio proceso konteksto perjungimo suvėlinimas.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Laisvosios delsos skirtumas tarp <i>VirtIO </i>ir aparatinės įrangos kiek daugiau nei 91%, imant 64 ir 1518 baitų ilgio kadrus. Nežymus skirtumas užfiksuotas tarp programiškai imituojamų <i>VirtIO </i>ir E1000 tinklo sąsajų. Pastarojo vidutiniškai apie 12% didesnis, tarp 64 ir 1518 baitų ilgio kadrų.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Ryškus laisvosios delsos skirtumas tarp aparatinės įrangos ir E1000 imituojamos tinklo sąsajos: nuo 64 iki 1518 baitų ilgio kadrų užfiksuota vidutiniškai 114% didesnė laisvoji delsa.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Didesnių nei 1518 dydžio, fragmentuojamų tinklo paketų delsa tiesiogiai priklauso nuo <i>Ethernet </i>kanalinio lygmens kadrų delsos, todėl dideliems paketams skiriamas mažesnis dėmesys.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Apkrautosios delsos diagrama ryškiai skiriasi nuo laisvosios delsos. Įdomu tai, jog apkrautoji delsa mažesnė už laisvąją toms VM tinklo sąsajoms, kurios turi tiesioginę prieigą prie fizinės tinklo plokštės. Itin ženkliai sumažėjo <i>VirtIO </i>paravirtualizuotos tinklo sąsajos delsa, nors jos skirtumas lyginant su nevirtualizuota <i>pfSense </i>sistema vidutiniškai kiek daugiau nei 62%, imant 64 ir 1518 baitų ilgio kadrus. Iš pirmo žvilgsnio šie rezultatai prieštarauja logikai, tačiau tiek daug klaidingų duomenų surinkta testų metu negalėjo būti.
</div>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgBc9kN_F1bfwb7lJZcH25Q8EhU7_1Ic6q4l9CczZgZ7BGdPly7DeAwvWj9xFu1uMbpMe4MxSy1gmrmDb_1ibFiBIXhkyFb_yOHe9iX8eQt1iPyrFVb7CFKsE4BedWKbyxdEDW8r6_oH9k/s1600/pfsense-routing-ping-load.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="276" data-original-width="640" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgBc9kN_F1bfwb7lJZcH25Q8EhU7_1Ic6q4l9CczZgZ7BGdPly7DeAwvWj9xFu1uMbpMe4MxSy1gmrmDb_1ibFiBIXhkyFb_yOHe9iX8eQt1iPyrFVb7CFKsE4BedWKbyxdEDW8r6_oH9k/s1600/pfsense-routing-ping-load.png" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;"><b><i>pfSense </i>tik maršrutizatoriaus režimu: apkrautoji paketų delsa</b></td></tr>
</tbody></table>
<br />
<div style="text-align: justify; text-indent: 1cm;">
To priežastis tikriausiai VM tinklo plokštės eiles aptarnaujančio proceso konteksto keitimas procesoriuje. Jei procesas reikšmingai apkrautas, jam skirta daugiau laiko užduotims atlikti iki procesoriaus planuoklės algoritmai nusprendžia vykdyti brangiai laiko ir našumo atžvilgiu kainuojantį procesoriaus/branduolio konteksto perjungimą. Siekiant efektyviau išnaudoti procesoriaus laiką planuoklės algoritmai siekia sumažinti kontekstų perjungimą, todėl priklausomai nuo apkrovos situacijos tai gali arba padidinti paketų aptarnavimo delsą, arba ją sumažinti.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Skirtingai nei kitos tinklo sąsajos <i>pfSense </i>maršrutizatoriaus apkrautos delsos testuose, E1000 gerokai sublogo. Jos rezultatai itin nenuoseklūs ir nestabilūs, kelis kart kirto 10 ms ribą. Bei apkrautoji delsa vidutiniškai didesnė net 2235% nei aparatinės įrangos, tarp 64 ir 1518 baitų dydžio kadrų.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Nepaisant rezultatų pagerėjimo tinklo plokštė atvaizduojama per IOMMU virtualizaciją vis tiek nepaveja savo našumu tos pačios tinklo plokštės naudojamos <i>pfSense </i>sistemoje be virtualizacijos sluoksnio; jos delsa vidutiniškai 21% didesnė, 64-1518 baitų ilgio kadrams.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Nors <i>VirtIO </i>tinklo sąsajos apdorojamų paketų delsa <i>pfSense </i>maršrutizatoriaus platformoje sumažėjo ir priartėjo prie IOMMU bei aparatinės įrangos atvejų, ji išliko pastebimai didesnė.
</div>
<br />
<h3 style="text-align: center;">
<i><span style="font-size: normal;">Paketų drebėjimas</span></i>
</h3>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Kitas svarbus kokybinis tinklo ryšio parametras, dažnai matuojamas kartu su tinklo delsa – tinklo paketų drebėjimas {<i>jitter</i>}. Atsižvelgus į sąlyginai nedidelį paketų drebėjimą sukeltą <i>pfSense</i> maršrutizatoriaus platformos, darbe matuojamas tik apkrautojo tinklo paketų drebėjimas, maksimalios dvikryptės pralaidos metu.
</div>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgIi6GSJj_dIV2nGPxeKF08DGcAKs2URV29A4CnM-ZTbXuHeMZKXGY9vwlgccC51hS1u1bNZ7Y1QsidgRyCn2XW2AkJobyin5S5iNHdmCT2C5AHQiWvidKcs0v9idTvd2ZpRml9-4NOFx4/s1600/pfsense-routing-jitter.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="283" data-original-width="640" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgIi6GSJj_dIV2nGPxeKF08DGcAKs2URV29A4CnM-ZTbXuHeMZKXGY9vwlgccC51hS1u1bNZ7Y1QsidgRyCn2XW2AkJobyin5S5iNHdmCT2C5AHQiWvidKcs0v9idTvd2ZpRml9-4NOFx4/s1600/pfsense-routing-jitter.png" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;"><b><i>pfSense </i>tik maršrutizatoriaus režimu: paketų drebėjimas</b></td></tr>
</tbody></table>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Kaip matyti iš paketų drebėjimo linijinės diagramos visais paketų ilgių matavimo atvejais <i>pfSense </i>maršrutizatoriaus įtakotas paketų drebėjimas, taikant skirtingas tinklo sąsajos realizacijas, pasižymi nuoseklumu ir stabilumu. Tarp kurių geriausiai pasirodė tiesioginę kreiptį prie fizinės tinklo plokštės turinčios virtualios mašinos tinklo sąsajos.
</div>
<div style="text-align: justify; text-indent: 1cm;">
<i>pfSense </i>maršrutizatoriaus platformai apdorojant mažiausius tinklo kadrų dydžius matyti akivaizdus našumo skirtumas tarp IOMMU virtualizacijos priskirtos tinklo plokštės ir tos pačios tinklo plokštės naudojamos betarpiškai virš aparatinės įrangos. Skirtumas pradeda blėsti ties 512 baitų ilgio paketų, o testuojant 1024 baitų ir ilgesnius paketus, užfiksuotas vienodas paketų drebėjimas.
</div>
<div style="text-align: justify; text-indent: 1cm;">
<i>VirtIO </i>ryškiai atsilieka nuo kitų tinklo sąsajos tvarkyklių, turinčių tiesioginę prieigą prie fizinės tinklo plokštės. Našumo skirtumas pakankamai ryškus <i>pfSense </i>apdorojant 128-512 baitų ilgio paketus, tačiau susilygina nuo 1280 baitų ilgio paketų.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Iš dalies blogiausius rezultatus vėl rodo programine įranga imituojama tinklo plokštė su E1000 tvarkyklėmis. E1000 rezultatų anomalija prasideda kartu su paketų fragmentacija. Pakartotini testai linijos trajektorijos nepakeitė, todėl laikomasi nuomonės, jog tai teisingi rezultatai. E1000 tinklo sąsajos pranašumą gali lemti tam tikri jos architektūriniai sprendimai, leidžiantys efektyviau apdoroti fragmentuojamus tinklo paketus.
</div>
<br />
<h3 style="text-align: center;">
<i><span style="font-size: normal;">pfSense sistemos procesoriaus vidutinė apkrova</span></i>
</h3>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Visų testų metu buvo fiksuojama <i>pfSense </i>maršrutizatoriaus vidutinė procesoriaus apkrova, tai duoda papildomos įžvalgos į <i>pfSense </i>sistemos ir virtualizacijos sąveiką.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Stebint <i>pfSense </i>vidutinę apkrova gali kilti klausimas, kodėl apkrova neviršija 50 procentų ribos. Dažniausiai, nors nebūtinai, <i>pfSense </i>sistemoje vienai tinklo sąsajai aptarnauti skiriamas vienas procesoriaus branduolys. Kadangi testuojama <i>pfSense </i>maršrutizatorius turi 4 branduolius ir 2 dedikuotas tinklo sąsajas testavimo duomenų srautui apdoroti, jų sveika apkrova neviršija 50 proc.
</div>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhHrW4DQJSiGaHQXXlUGE4jh-_0jNXJ31lIt8SdN-r2D679I40uJpF1BZoM_oCt-SxSQGul7a7tSeXVIGXfa-QVIBd_BrnoZu7-k-FeewkRsWn9J_g847ufEbMZBCps5TeKi57Rlpa9G4A/s1600/pfsense-routing-cpu.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="354" data-original-width="609" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhHrW4DQJSiGaHQXXlUGE4jh-_0jNXJ31lIt8SdN-r2D679I40uJpF1BZoM_oCt-SxSQGul7a7tSeXVIGXfa-QVIBd_BrnoZu7-k-FeewkRsWn9J_g847ufEbMZBCps5TeKi57Rlpa9G4A/s1600/pfsense-routing-cpu.png" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;"><b><i>pfSense </i>sistemos vidutinė procesoriaus apkrova maršrutizatoriaus režimu</b></td></tr>
</tbody></table>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Kaip matyt iš skritulinės diagramos IOMMU virtualizacija ir aparatine įranga paremta <i>pfSense</i> sistemos vidutinės apkrovos skritulinė figūra savo forma maždaug sutampa, bet ryškiai skiriasi jų masteliai. IOMMU būdu priskirtos tinklo plokštės VM siūlo ne tik didžiausią pralaidą virš virtualizacijos sluoksnio, bet ir vieną didžiausių <i>pfSense </i>VM centrinio procesoriaus apkrovą.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Iš apkrovos diagramos matyti, jog IOMMU su 64-512 baitų ilgio paketais remiasi į aparatinės įrangos galimybes, o tai paaiškina pralaidos diagramoje pastebėta aiškią IOMMU riba ties 470 tūkstančių kadrų per sekundę.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Iš teisų, IOMMU našumo dilema išlieka: kodėl toks didelis skirtumas tarp tinklo plokštės išskirtinai dedikuotos VM per IOMMU virtualizacijos palaikymą ir tos pačios tinklo plokštės be virtualizacijos sluoksnio, kai <i>pfSense </i>sistemos konfigūracija identiška.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Abiem atvejais, <i>pfSense </i>be virtualizacijos sluoksnio ir su IOMMU virtualizacija, mato tas pačias tinklo plokštes, bei naudoja tas pačias tvarkykles jų darbui tinkle. Tą patvirtina abejose <i>pfSense </i>sistemose, per komandinę eilutė įvykdytos komandos: <span style="font-family: "courier new" , "courier" , monospace;">pciconf –lvc igb1/igb2</span> ir<span style="font-family: "courier new" , "courier" , monospace;"> ifconfig –a</span> bei <span style="font-family: "courier new" , "courier" , monospace;">dmesg | grep igb1/igb2</span>; kurių išvesta informacija praktiškai sutampa. Tačiau IOMMU atveju ta pati tinklo plokštė tampa procesoriaus išteklių siurbliu, dėl ko pasiekia ir mažesnį našumą.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Įtarus, jog virtualizacija smarkiai įtakoja procesoriaus skaičiavimo pajėgumus, su <i>sysbench</i> testavimo įrankiu atliktas VM su IOMMU priskirtomis tinklo sąsajomis ir nevirtualizuotos <i>pfSense</i> sistemos procesoriaus testavimas su komanda: <span style="font-family: "courier new" , "courier" , monospace;">sysbench --test=cpu run --num-threads=1/2/4/32</span>; VM rezultatai buvo 3,22%, 3,23%, 3,25% ir 2,12% atitinkamai mažesni už nevirtualizuotos <i>pfSense </i>sistemos, o tai nepaaiškina kodėl kadrų pralaida kirto net apie 27 procentus.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Iš diagramos gana nuosekliai atrodo <i>VirtIO </i>tinklo sąsajos apkrova, bei apgaulingai nedidelė už mainais siūloma spartą. Iš tiesu, KVM hipervizorius kiekvienai <i>VirtIO </i>sąsajai sukuria po papildomą aptarnaujantį <i>vhost </i>procesą, matoma tik už VM ribų. Nors apkrovos diagramoje jų įtakos nematyti, <i>top </i>įrankio duomenimis <i>vhost </i>procesų apkrova testų metu buvo apie 60% per branduolį/tinklo sąsają, o tai bendrai sudaro daugiau apkrovos fizinei sistemai, nei kitos tiriamos VM tinklo sąsajos.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Kaip matyt iš skritulinės diagramos programine įranga imituojama tinklo sąsaja su E1000 tvarkyklėmis visais testuojamų paketų dydžiais maksimaliai išnaudoja dviejų branduolių išteklius – dviem tinklo plokštėms. Tikėtina, jog lėta bet stabili E1000 kadrų pralaida su visais paketų ilgiais (apie 32 kkps) padeda išlaikyti ir stabilesnį didesnių paketų apdorojimą <i>pfSense </i>tinklo mazge.
</div>
<br />
<hr align="left" size="1" width="100%" />
<br />
<h3 style="text-align: start;">
<span style="font-family: inherit; font-size: large;">"Virtualizacijos įtaka <i>pfSense </i>tinklo užkardos sistemai: našumo analizė" Turinys:</span></h3>
<div>
<br />
<ol>
<li><a href="https://skarware.blogspot.com/2017/07/virtualizacijos-itaka-pfsense-metodika.html" target="_blank">Virtualizacijos įtaka <i>pfSense</i> tinklo užkardos sistemai: našumo analizė [<b>1 dalis - Metodika</b>]</a></li>
<li><span style="background-color: #d9ead3;"><a href="https://skarware.blogspot.com/2017/07/virtualizacijos-itaka-pfsense-router.html">Virtualizacijos įtaka <i>pfSense</i> tinklo užkardos sistemai: našumo analizė [<b>2 dalis - Router mode</b>]</a></span></li>
<li><a href="https://skarware.blogspot.com/2017/07/virtualizacijos-itaka-pfsense-firewall.html" target="_blank">Virtualizacijos įtaka <i>pfSense</i> tinklo užkardos sistemai: našumo analizė [<b>3 dalis - Firewall mode</b>]</a></li>
<li><a href="https://skarware.blogspot.com/2017/07/virtualizacijos-itaka-pfsense-noisy-neighbor.html" target="_blank">Virtualizacijos įtaka <i>pfSense</i> tinklo užkardos sistemai: našumo analizė [<b>4 dalis - Noisy Neighbor</b>]</a></li>
</ol>
<br />
<hr align="left" size="1" width="50%" />
</div>
Martynashttp://www.blogger.com/profile/00471091754225207342noreply@blogger.com0tag:blogger.com,1999:blog-5426813891256937073.post-50333757253410952092017-07-16T16:36:00.001+03:002021-07-02T23:30:44.426+03:00Virtualizacijos įtaka pfSense tinklo užkardos sistemai: našumo analizė [1 dalis - Metodika]<div style="text-align: justify; text-indent: 1cm;">
Vienas iš pagrindinių darbų kuriuos atlikau ruošdamas savąjį bakalauro baigiamąjį darbą buvo kruopštus <i>Linux KVM</i> virtualizacijos ir <i>pfSense</i> kompiuterių tinklo užkardos sąveikos testavimas. <i>pfSense</i> sistemos atžvilgiu buvo ištestuotas <i>Linux KVM</i> visiškos virtualizacijos našumas <i>Ethernet </i>kompiuterių tinkle, taikant skirtingas tinklo sąsajas realizuojančias tvarkykles. Norėdamas gautus testų rezultatus padaryti kaip galima labiau prieinamus visiems internautams, nusprendžiau baigiamojo darbo praktinės dalies turinį paversti į keturių dalių straipsnį savo tinklaraščiui:
</div>
<ol>
<li><span style="background-color: #d9ead3;"><a href="https://skarware.blogspot.com/2017/07/virtualizacijos-itaka-pfsense-metodika.html">Virtualizacijos įtaka <i>pfSense</i> tinklo užkardos sistemai: našumo analizė [<b>1 dalis - Metodika</b>]</a></span></li>
<li><a href="https://skarware.blogspot.com/2017/07/virtualizacijos-itaka-pfsense-router.html" target="_blank">Virtualizacijos įtaka <i>pfSense</i> tinklo užkardos sistemai: našumo analizė [<b>2 dalis - Router mode</b>]</a></li>
<li><a href="https://skarware.blogspot.com/2017/07/virtualizacijos-itaka-pfsense-firewall.html" target="_blank">Virtualizacijos įtaka <i>pfSense</i> tinklo užkardos sistemai: našumo analizė [<b>3 dalis - Firewall mode</b>]</a></li>
<li><a href="https://skarware.blogspot.com/2017/07/virtualizacijos-itaka-pfsense-noisy-neighbor.html" target="_blank">Virtualizacijos įtaka <i>pfSense</i> tinklo užkardos sistemai: našumo analizė [<b>4 dalis - Noisy Neighbor</b>]</a></li>
</ol>
<div style="text-align: justify; text-indent: 1cm;">
Iš tiesų, pirmosios trys straipsnio dalys naujos informacijos nesuteikia tiems kas drįso skaityti mano bakalauro baigiamąjį darbą. Tačiau ketvirtoji dalis, kurioje nagrinėjama gretimų KVM virtualių mašinų sąveiką virš vienos fizinės kompiuterio sistemos, <b>papildyta nauja informacija iš papildomai atliktų testų jau po baigiamojo darbo</b>, kurio gautos išvados ir paskatino papildomus testavimus.
</div>
<br />
<h2 style="text-align: center;">
<span style="font-size: x-large;">Metodika</span>
</h2>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Prieš pereinant prie atliktų testavimo ir gautų duomenų analizės, šio straipsnio dalyje bus apžvelgta testavimo metodika – <i>Linux KVM </i>virtualizacijos ir <i>pfSense </i>sistemos testavimo procedūros – kuri išsamiai apibrėžia naudojamą aparatinę ir programinę įrangą, taikomus metodus testams, naudojamus įrankius, tyrimo eigą bei kitą informaciją tyrimui atlikti.
</div>
<br />
<h3 style="text-align: center;">
<i><span style="font-size: normal;">Testavimo aplinkos aparatinė įranga</span></i>
</h3>
<br />
<div style="text-align: justify; text-indent: 1cm;">
<i>pfSense </i>sistemos ir įvairių <i>Linux KVM</i> virtualizacijos metodų sąveikos testavimui buvo sukurta pakankamai nuo išorės izoliuota ir nepriklausoma kompiuterijos laboratorija. Nors ir su savais trūkumais, tačiau numatytam eksperimentui tinkama testavimo aplinka.
</div>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><img border="0" data-original-height="309" data-original-width="921" height="215" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEizh2fgu6Dy9m03795T3vSrcPbIeNI1dP06RItYvk_bMhwHshlYXSXeuuMJXgIGXRUXvGksDGX1VpMRi_RIotzg39Jj6cXXi9SP7wSB5TAXp1I_6PUsyov8Wi5mzSKTKvgkPnOyHzAOIqM/s640/fizine+lab.+schema.png" style="margin-left: auto; margin-right: auto;" width="640" /></td></tr>
<tr><td class="tr-caption" style="text-align: center;"><b>Testavimo aplinkos loginė schema</b></td></tr>
</tbody></table>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Testavimo aplinką sudaranti laboratorija suformuota iš kolegijai priklausančios studentų reikmėms skirtos kompiuterijos infrastruktūros, bei asmeninėmis priemonėmis (žr. 1 lentelė). Pažymėtina, jog testavimo aplinką sudarantys serveriai rinkoje pasirodė apie 2011 metus ir priklauso ekonomiškų modelių klasei. Jų skaičiavimų ir duomenų apdorojimo sparta nėra itin didelė. Tai reikia turėti mintyje, jog nesusidaryti klaidingos nuomonės apie nūdienos x86 architektūros platformos galimybes kompiuterių tinklo mazge.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Vis dėlto, testams skirti serveriai yra pakankamai nauji, jog turėtų AMD centrinį procesorių ir lustų rinkinį {<i>chipset</i>} su antros kartos aparatinio lygmens palaikymu x86 platformos virtualizacijai (<i>AMD V 2.0</i>), o tai tenkina minimalius praktinės darbo dalies reikalavimus, jos įgyvendinimą.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Iš tiesų, palankiomis aplinkybėmis renkantis naują serverio sistemą virtualizacijos platformai realizuoti, ypatingas dėmesys skiriamas pasirinkto virtualizacijos sprendimo palaikomos aparatinės įrangos sąrašą, bei pati kompiuterio sistema parenkama daug spartesnė už tą su kuria dirbama šiame tiriamajame darbe.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Kaip matyti iš 1 lentelės, abu serveriai identiški savo specifikacijomis (išskyrus standžiuosius diskus, bet tai neturi kritinės reikšmės tyrimui). Fizinėje testavimo aplinkos schemoje prie serverių pažymėtos tinklo plokštės prievadai (TP) iš kurių pirmieji (TP1) sujungti per komutatorių su kolegijos vidiniu kompiuterių tinklu. Tai leidžia serverius administruoti per nuotolį ir supaprastina praktinės dalies testavimo procesą. Šie prievadai (TP1) naudojami tik serverių administravimui.
</div>
<br />
<div style="margin: 6pt 0cm; text-align: left;">
<span style="font-size: small;">1 lentelė. <b>Testavimo aplinkos aparatinės įrangos sąrašas</b></span></div>
<table border="0" cellpadding="0" cellspacing="1" style="border-collapse: collapse; border: none; width: 100%;">
<tbody>
<tr>
<td style="background: rgb(242, 242, 242); border: 1pt solid; padding: 0cm 5.4pt;" width="25%"><div align="center" style="margin: 3pt 0cm; text-align: center;">
<b><span style="font-size: small;">Serveris 1</span></b></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;">HP ProLiant DL165 G7 (Firmware Version: 4.22)</span></div>
<div style="margin: 3pt 0cm;">
<span style="font-size: small;">AMD Opteron™ Processor Model 6128 (2.0 GHz, 12MB Level 3 Cache, 8 cores, 80W)</span></div>
<div style="margin: 3pt 0cm;">
<span style="font-size: small;">AMD Chipset SR5670</span></div>
<div style="margin: 3pt 0cm;">
<span style="font-size: small;">2 x HP NC362i Integrated Dual Port Gigabit Server Adapter</span></div>
<div style="margin: 3pt 0cm;">
<span style="font-size: small;">4GB 1Rx4 PC3-10600R-09-10-C1-P1</span></div>
<div style="margin: 3pt 0cm;">
<span style="font-size: small;"><i>2 x GB0160EAPRR HP 160GB 3G SATA 7.2K LFF HDD</i></span></div>
</td>
</tr>
<tr>
<td style="background: rgb(242, 242, 242); border: 1pt solid; padding: 0cm 5.4pt;" width="25%"><div align="center" style="margin: 3pt 0cm; text-align: center;">
<b><span style="font-size: small;"><span style="font-size: small;">Serveris 2</span></span></b></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;">HP ProLiant DL165 G7 (Firmware Version: 4.22)</span></div>
<div style="margin: 3pt 0cm;">
<span style="font-size: small;">AMD Opteron™ Processor Model 6128 (2.0 GHz, 12MB Level 3 Cache, 8 cores, 80W)</span></div>
<div style="margin: 3pt 0cm;">
<span style="font-size: small;">AMD Chipset SR5670</span></div>
<div style="margin: 3pt 0cm;">
<span style="font-size: small;">2 x HP NC362i Integrated Dual Port Gigabit Server Adapter</span></div>
<div style="margin: 3pt 0cm;">
<span style="font-size: small;">4GB 1Rx4 PC3-10600R-09-10-C1-P1</span></div>
<div style="margin: 3pt 0cm;">
<span style="font-size: small;"><i>SAMSUNG Spinpoint F3 HD103SJ 1TB 7200 RPM 32MB Cache SATA 3.0Gb/s 3.5"</i></span></div>
</td>
</tr>
<tr>
<td style="background: rgb(242, 242, 242); border: 1pt solid; padding: 0cm 5.4pt;" width="25%"><div align="center" style="margin: 3pt 0cm; text-align: center;">
<b><span style="font-size: small;">Komutatorius</span></b></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;"><i>NETGEAR GS305 5-port Gigabit Ethernet Switch</i></span></div>
</td>
</tr>
<tr>
<td style="background: rgb(242, 242, 242); border: 1pt solid; padding: 0cm 5.4pt;" width="25%"><div align="center" style="margin: 3pt 0cm; text-align: center;">
<b><span style="font-size: small;">Kabeliai</span></b></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;">5 vnt. vytos poros 5e kategorijos kabelių po 2 metrus</span></div>
</td>
</tr>
</tbody></table>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Tuo tarpu antrosios (TP2) ir trečiosios tinklo (TP3) sąsajos tarp serverių tiesiogiai sujungtos vytos poros 5e kategorijos kabeliais. Toks pastarųjų serverių tinklo prievadų sujungimas leidžia pasiekti maksimalią tinklo paketų pralaidą ir sumažina pašalinių veiksnių įtaką testų rezultatams. Testų metu <i>pfSense </i>sistemai veikiant tiesiogiai virš aparatinės įrangos ar virš KVM virtualizacijos, TP2 ir TP3 tinklo plokštės prievadai dedikuoti tik tiesioginėms testavimo reikmėms.
</div>
<br />
<h3 style="text-align: center;">
<i><span style="font-size: normal;">Testavimo aplinkos programinė įranga</span></i>
</h3>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Praktinėje baigiamojo darbo dalyje naudojama programinė įranga priklauso atvirajam kodui, kuris šiame darbe akcentuojamas kaip teisingas pasirinkimas smulkioms ir vidutinėms organizacijoms, neretai suvaržytoms finansiškai. Antra vertus, didžioji dauguma našumo testavimo įrankių priklauso atvirajai programinei įrangai ir buvo tik natūralus atsitiktinis pasirinkimas (apie juos netrukus). Visa testavimo aplinkoje naudojama programinė įranga pateikta 2 lentelėje.
</div>
<br />
<div style="margin: 6pt 0cm; text-align: left;">
<span style="font-size: small;">2 lentelė. <b>Testavimo aplinkoje naudojama programinė įranga</b></span></div>
<table border="0" cellpadding="0" cellspacing="1" style="border-collapse: collapse; border: none; width: 100%;">
<tbody>
<tr>
<td style="background: rgb(242, 242, 242); border: 1pt solid; padding: 0cm 5.4pt;" width="50%"><div align="center" style="margin: 3pt 0cm; text-align: center;">
<b><span style="font-size: small;">Visiškos virtualizacijos hipervizorius</span></b></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;"><i>Linux KVM</i></span></div>
</td>
</tr>
<tr>
<td style="background: rgb(242, 242, 242); border: 1pt solid; padding: 0cm 5.4pt;" width="50%"><div align="center" style="margin: 3pt 0cm; text-align: center;">
<b><span style="font-size: small;">Virtualizacijos administravimo įrankiai</span></b></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;"><i>Proxmox Virtual Environment 4.4</i></span></div>
</td>
</tr>
<tr>
<td style="background: rgb(242, 242, 242); border: 1pt solid; padding: 0cm 5.4pt;" width="50%"><div align="center" style="margin: 3pt 0cm; text-align: center;">
<b><span style="font-size: small;">Tinklo mazgo testavimo įrankių OS</span></b></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;"><i>Ubuntu 17.04 Server (64-bit)</i></span></div>
</td>
</tr>
<tr>
<td style="background: rgb(242, 242, 242); border: 1pt solid; padding: 0cm 5.4pt;" width="50%"><div align="center" style="margin: 3pt 0cm; text-align: center;">
<b><span style="font-size: small;">Tinklo mazgo testavimo įrankis</span></b></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;"><i>iperf 2.0.9 (1 June 2016) pthreads</i></span></div>
</td>
</tr>
<tr>
<td style="background: rgb(242, 242, 242); border: 1pt solid; padding: 0cm 5.4pt;" width="50%"><div align="center" style="margin: 3pt 0cm; text-align: center;">
<b><span style="font-size: small;">Kompiuterio apkrovos simuliavimo įrankis</span></b></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;"><i>stress 1.0.4</i></span></div>
</td>
</tr>
<tr>
<td style="background: rgb(242, 242, 242); border: 1pt solid; padding: 0cm 5.4pt;" width="50%"><div align="center" style="margin: 3pt 0cm; text-align: center;">
<b><span style="font-size: small;">Tinklo užkardos sistema</span></b></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;"><i>pfSense CE 2.3.4 (64-bit)</i></span></div>
</td>
</tr>
</tbody></table>
<br />
<br />
<h3 style="text-align: center;">
<i><span style="font-size: normal;">Testavimo sistemos struktūra</span></i>
</h3>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Testavimo aplinkos fiziniai serveriai sudaro dvi atskiras sistemas: testuojamą (serveris 1) ir testuojančią (serveris 2). Testuojantis serveris savo ruožtu gali būti išskirtas į duomenų srauto siuntėją ir gavėją (techniškai, abu serveriai siunčia ir gauna duomenis dvikryptės pralaidos testų metu), jų fizinė ir programinė konfigūracija viso testavimo metu nekinta. Tuo tarpu testuojamas serveris testavimo metu kinta tarp dviejų veikimo režimų: tarp aparatinės įrangos kompiuterio platformos su <i>pfSense </i>sistema ir KVM virtualizacijos platformos su <i>pfSense </i>sistema.
</div>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><img border="0" data-original-height="305" data-original-width="1160" height="168" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjmNIHxMGkZ38TDxzAnjiCjmsPjUh0h6V2cs-eaB7uAiRijECHf9VF4qFVD4wsYlSUQSMLXkoWBWnX_8F3icBVDHyZpYGE0HlOB61BYEAylq6T6d2zvuz2-v_-2D15rglgA98VeP1mlFdo/s640/testavimo+sistema.png" style="margin-left: auto; margin-right: auto;" width="640" /></td></tr>
<tr><td class="tr-caption" style="text-align: center;"><b>Testavimo sistemos struktūrinė schema</b></td></tr>
</tbody></table>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Pirmuoju atveju, testuojamas <i>pfSense </i>tinklo mazgas vykdomas be virtualizacijos sluoksnio, tiesiogiai virš aparatinės serverio įrangos. Tai leidžia nubrėžti atskaitos taškus ir nustatyti virtualizacijos sluoksnio įtaką <i>pfSense </i>užkardos sistemos našumui.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Antruoju atveju fizinis testuojamas serveris perjungiamas į <i>Proxmox VE</i> virtualizacijos aplinką, kurioje sukurtos ir pakaitomis vykdomos kelios savo specifikacijomis praktiškai identiškos KVM virtualios mašinos <i>pfSense </i>užkardos sistemos testavimui. Skiriasi tik VM tinklo sąsajos realizavimas skirtingiems testams atlikti.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Taigi, testavimo aplinka suprojektuota taip, jog bet kuriuo laiko momentu būtų galima persijungti tiek į virtualizuotą tiek į aparatinės įrangos <i>pfSense </i>tinklo mazgo testavimo režimą, jei toks poreikis atsiranda (pvz., aptikus klaidą ar netikslumų galima pakartoti tam tikrą testavimo etapą).
</div>
<br />
<h3 style="text-align: center;">
<i><span style="font-size: normal;">Testuojantis serveris</span></i>
</h3>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Vienas iš šios testavimo aplinkos trūkumų tas, jog testuojantis serveris taip pat remiasi į virtualizaciją – virš fizinio serverio veikia <i>Proxmox </i>virtualizacijos aplinka, kuri realizuoja siuntėjo ir gavėjo virtualias mašinas. Papildomas programinės įrangos sluoksnis gali įtakoti ir iškreipti testų rezultatus. Todėl, siekiant kompensuoti šiuos testavimo aplinkos trūkumus ir sumažinti gautų duomenų paklaidą, testavimui reikia skirti daugiau laiko, o neretai ir pakartoti didelę deviaciją turinčius rezultatus, jog įsitikinti gautų duomenų teisingumu.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Siuntėjo ir gavėjo virtualioms mašinoms paskirta po lygiai centrinio procesoriaus, operatyviosios atminties, standžiojo disko ir tinklo sąsajos išteklių, bei vienodos jų operacinės sistemos su įtaisų tvarkyklėmis ir visų operacijų prioritetais <i>Proxmox VE</i> atžvilgiu. Testavimo aplinkos siuntėjo ir gavėjo virtualiųjų mašinų charakteristikos pateiktos 3 lentelėje.
</div>
<br />
<div style="margin: 6pt 0cm; text-align: left;">
<span style="font-size: small;">3 lentelė. <b>Testavimo aplinkos siuntėjo ir gavėjo VM techninės specifikacijos</b></span></div>
<table border="0" cellpadding="0" cellspacing="1" style="border-collapse: collapse; border: none; width: 100%;">
<tbody>
<tr>
<td style="background: rgb(242, 242, 242) none repeat scroll 0% 0%; border: 1pt solid; padding: 0cm 5.4pt; text-align: center;" width="25%"><div style="margin: 3pt 0cm;">
<b><span style="font-size: small;"></span></b></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt; text-align: center;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;"><b>VM 1</b></span></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt; text-align: center;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;"><b>VM 2</b></span></div>
</td>
</tr>
<tr>
<td style="background: rgb(242, 242, 242); border: 1pt solid; padding: 0cm 5.4pt;" width="25%"><div align="center" style="margin: 3pt 0cm; text-align: center;">
<b><span style="font-size: small;">Hipervizorius</span></b></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt; text-align: center;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;"><i>Linux KVM (Proxmox VE 4.4)</i></span></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt; text-align: center;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;"><i>Linux KVM (Proxmox VE 4.4)</i></span></div>
</td>
</tr>
<tr>
<td style="background: rgb(242, 242, 242); border: 1pt solid; padding: 0cm 5.4pt;" width="25%"><div align="center" style="margin: 3pt 0cm; text-align: center;">
<b><span style="font-size: small;">vCPU branduoliai</span></b></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt; text-align: center;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;">8 [<i>host</i>]</span></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt; text-align: center;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;">8 [<i>host</i>]</span></div>
</td>
</tr>
<tr>
<td style="background: rgb(242, 242, 242); border: 1pt solid; padding: 0cm 5.4pt;" width="25%"><div align="center" style="margin: 3pt 0cm; text-align: center;">
<b><span style="font-size: small;">RAM</span></b></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt; text-align: center;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;">1376 MB (dedikuota, fiksuoto dydžio)</span></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt; text-align: center;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;">1376 MB (dedikuota, fiksuoto dydžio)</span></div>
</td>
</tr>
<tr>
<td style="background: rgb(242, 242, 242); border: 1pt solid; padding: 0cm 5.4pt;" width="25%"><div align="center" style="margin: 3pt 0cm; text-align: center;">
<b><span style="font-size: small;">OS</span></b></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt; text-align: center;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;"><i>Ubuntu 17.04 Server (64-bit)</i></span></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt; text-align: center;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;"><i>Ubuntu 17.04 Server (64-bit)</i></span></div>
</td>
</tr>
<tr>
<td style="background: rgb(242, 242, 242); border: 1pt solid; padding: 0cm 5.4pt;" width="25%"><div align="center" style="margin: 3pt 0cm; text-align: center;">
<b><span style="font-size: small;">Tinklo plokštė</span></b></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt; text-align: center;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;">1 dedikuota [<i>PCI passthrough</i>]<br />1 bendrinama [<i>VirtIO bridge</i>]</span></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt; text-align: center;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;">1 dedikuota [<i>PCI passthrough</i>]<br />1 bendrinama [<i>VirtIO bridge</i>]</span></div>
</td>
</tr>
<tr>
<td style="background: rgb(242, 242, 242); border: 1pt solid; padding: 0cm 5.4pt;" width="25%"><div align="center" style="margin: 3pt 0cm; text-align: center;">
<b><span style="font-size: small;">Standusis diskas</span></b></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt; text-align: center;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;">16 GB [<i>VirtIO SCSI, LVM Thin</i>]</span></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt; text-align: center;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;">16 GB [<i>VirtIO SCSI, LVM Thin</i>]</span></div>
</td>
</tr>
</tbody></table>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Pastebėtina, jog aštuoni virtualaus centrinio procesoriaus branduoliai abiems virtualioms mašinoms nėra klaida (fizinis procesorius turi tik 8 branduolius), o normali ir saugi KVM virtualizacijos praktika. Jei kuri nors viena mašina nenaudoja visų jai priskirtų branduolių, juos gali panaudoti kitos. Tačiau reiktų vengti vienoje VM nustatyti daugiau virtualiųjų branduolių nei turi fizinis procesorius, tai tik sulėtins sistemą dėl dažno procesoriaus konteksto perjunginėjimo.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Kadangi abi virtualios mašinos, siuntėjas ir gavėjas, dirbs su dideliais duomenų srautais tinkle nuo kurių našaus ir nepertraukiamo darbo priklauso testų rezultatai, abiems VM priskirtos dedikuotos tinklo plokštės per IOMMU virtualizacijos palaikymą (dar žinoma kaip <i>PCI passthrough</i>); bei viena bendrinama su paravirtualizuotomis tvarkyklėmis, skirtą testų valdymo reikmėms.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Nors techniškai buvo galima išvengti papildomo virtualizacijos sluoksnio siuntėjui ir gavėjui realizuoti, visgi praktikoje neretai dėl patogumo paaukojamas našumas. Šiuo atveju <i>Proxmox VE</i> administravimo panelė leidžia per nuotolį pasiekti abi virtualias mašinas ir jas valdyti per grafinę saityno tinklalapio vartotojo sąsaja (GUI), o tai supaprastina tiriamojo darbo įgyvendinimą.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Darbo autoriaus nuomone tai pateisintina dėl itin mažos siuntėjo ir gavėjo apkrovos bendrai sistemai. Priklausomai nuo testo, bendra fizinės kompiuterio sistemos apkrova svyruoja nuo 30 iki 50 proc.: po vieną centrinio procesoriaus branduolį tinklo sąsajoms aptarnauti ir maždaug po vieną branduolį testavimo <i>iperf </i>įrankio reikmėms – duomenų srautui generuoti ir registruoti. Antra vertus, prailgintas testavimo laikas gali kompensuoti rezultatų nuokrypio svyravimus ir sumažinti paklaidą.
</div>
<br />
<h3 style="text-align: center;">
<i><span style="font-size: normal;">Testuojamas serveris</span></i>
</h3>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Testavimo aplinkos testuojamas serveris priklauso ekonominei klasei, nepasižymi nei funkcijų gausumu nei ištekliu gausa. Todėl nors ir siekta sukonfigūruoti techniškai vienodų aparatinių parametrų VM ir fizinę serverio platformą <i>pfSense </i>užkardos sistemos testavimui, tarp jų yra skirtumų, tačiau atliekamiems testams jie nėra esminiai ir kritiškai reikšmingi (žr. 4 lentelę).
</div>
<br />
<div style="margin: 6pt 0cm; text-align: left;">
<span style="font-size: small;">4 lentelė. <b>Testavimo aplinkos testuojamų mašinų techninės specifikacijos</b></span></div>
<table border="0" cellpadding="0" cellspacing="1" style="border-collapse: collapse; border: none; width: 100%;">
<tbody>
<tr>
<td style="background: rgb(242, 242, 242) none repeat scroll 0% 0%; border: 1pt solid; padding: 0cm 5.4pt; text-align: center;" width="25%"><div style="margin: 3pt 0cm;">
<b><span style="font-size: small;"></span></b></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt; text-align: center;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;"><b>Nevirtualizuota <i>pfSense </i>sistema</b></span></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt; text-align: center;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;"><b>Virtualios mašinos su <i>pfSense </i>sistema</b></span></div>
</td>
</tr>
<tr>
<td style="background: rgb(242, 242, 242); border: 1pt solid; padding: 0cm 5.4pt;" width="25%"><div align="center" style="margin: 3pt 0cm; text-align: center;">
<b><span style="font-size: small;">Hipervizorius</span></b></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt; text-align: center;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;">-</span></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt; text-align: center;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;"><i>Linux KVM (Proxmox VE 4.4)</i></span></div>
</td>
</tr>
<tr>
<td style="background: rgb(242, 242, 242); border: 1pt solid; padding: 0cm 5.4pt;" width="25%"><div align="center" style="margin: 3pt 0cm; text-align: center;">
<b><span style="font-size: small;">vCPU branduoliai</span></b></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt; text-align: center;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;">4 (apriboti programiškai)</span></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt; text-align: center;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;">4 [<i>host</i>]</span></div>
</td>
</tr>
<tr>
<td style="background: rgb(242, 242, 242); border: 1pt solid; padding: 0cm 5.4pt;" width="25%"><div align="center" style="margin: 3pt 0cm; text-align: center;">
<b><span style="font-size: small;">RAM</span></b></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt; text-align: center;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;">4096 MB</span></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt; text-align: center;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;">2048 MB (dedikuota, fiksuoto dydžio)</span></div>
</td>
</tr>
<tr>
<td style="background: rgb(242, 242, 242); border: 1pt solid; padding: 0cm 5.4pt;" width="25%"><div align="center" style="margin: 3pt 0cm; text-align: center;">
<b><span style="font-size: small;">OS</span></b></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt; text-align: center;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;"><i>pfSense CE 2.3.4 (64-bit)</i></span></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt; text-align: center;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;"><i>pfSense CE 2.3.4 (64-bit)</i></span></div>
</td>
</tr>
<tr>
<td style="background: rgb(242, 242, 242); border: 1pt solid; padding: 0cm 5.4pt;" width="25%"><div align="center" style="margin: 3pt 0cm; text-align: center;">
<b><span style="font-size: small;">Tinklo plokštė</span></b></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt; text-align: center;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;">3 fizinės dedikuotos</span></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt; text-align: center;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;">1 atvejis: 2 dedikuotos [<i>E1000 bridge</i>]<br />2 atvejis: 2 dedikuotos [<i>VirtIO bridge</i>]<br />3 atvejis: 2 dedikuotos [<i>PCI passthrough</i>]<br />Visais atvejais: 1 bendrinama [<i>VirtIO bridge</i>]</span></div>
</td>
</tr>
<tr>
<td style="background: rgb(242, 242, 242); border: 1pt solid; padding: 0cm 5.4pt;" width="25%"><div align="center" style="margin: 3pt 0cm; text-align: center;">
<b><span style="font-size: small;">Standusis diskas</span></b></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt; text-align: center;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;">4 GB skaidinys [SATA standusis diskas]</span></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt; text-align: center;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;">4 GB [<i>VirtIO SCSI, LVM Thin</i>]</span></div>
</td>
</tr>
</tbody></table>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Vieną skirtumą įtakojo tai, jog testavimo serverio BIOS sistemoje nėra galimybės aparatiniame lygmenyje išjungti dalį centrinio procesoriaus branduolių. Tačiau, šią problemą pavyko išspręsti programiniu būdu – į <i>pfSense </i>paleidimo failą (<i>/boot/loader.conf</i>) įrašius kelias direktyvas: „<i>hint.lapic.CPUid.disabled=1</i>“, kurios nurodė <i>pfSense </i>(<i>FreeBSD</i>) operacinės sistemos branduoliui nenaudoti įvardintus procesoriaus branduolius.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Vis dėlto, sumažinti operatyviosios atminties kiekį nei fiziniu nei apriboti programiniu būdu nepavyko. Tačiau, remiantis sistemos apkrovos stebėjimais, testų metu <i>pfSense </i>užkardos sistemos darbinės atminties sunaudojimas neperžengė 512MB ribos, iš kurių 300MB autorius savo iniciatyva rezervavo <i>/tmp</i> ir <i>/var</i> atminties failų sistemos diskui {<i>memory file system disks</i>}. Iš tiesų, <i>pfSense</i> kūrėjų teigimu, jų sistemą įmanoma sėkmingai vykdyti ir su 128 MB operatyviosios atminties, nors rekomenduojama 256 MB ar daugiau.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Testuojamam serveriui veikiant virtualizacijos platformos režimu, sukurtos virtualios mašinos su <i>pfSense </i>užkardos sistema veikia virš tos pačios platformos pakaitomis. Todėl tarp jų aparatinės ir programinės įrangos parametrų skirtumų nėra (žr. 4 lentelę). Sąmoningai skiriasi tik KVM hipervizoriaus realizuojamos skirtingų savybių tinklo plokštės skirtingiems testams atlikti.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Jei nėra nurodyta kitaip, skirtumų nėra ir tarp <i>pfSense </i>užkardos sistemos konfigūracijos, taikytos virtualizuotoje ir nevirtualizuotoje aplinkoje.</div>
<br />
<h3 style="text-align: center;">
<i><span style="font-size: normal;">pfSense testavimo modelis</span></i>
</h3>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Praktinėje baigiamojo darbo dalyje tinklo mazgo testavimas vykdomas kliento-serverio modelių, kai matuojamas tinklo našumas tarp dviejų tinklo taškų. Šiuo tiriamojo darbo atveju tarp testuojamų dviejų tinklo taškų tik vienas tinklo mazgas – <i>pfSense </i>sistema, todėl matuojamas tik jos tinklo našumas, jei testo metu galinių taškų (serverio ir kliento) ištekliai nėra perkrauti.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Kaip jau buvo minėta praktinėje dalyje atliekamų testų metu testuojančio serverio bendra apkrova svyravo tarp 30 ir 50 proc., priklausomai nuo atliekamo testo. Todėl galima teigti, jog visų testų metu buvo matuojamas tik <i>pfSense </i>tinklo mazgo našumas.
</div>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><img border="0" data-original-height="203" data-original-width="850" height="152" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhR0dzpbiHiEvVb5l0tyg5FYMARM7s-uWuQwPUsHPerrMt9B5Nv69kzbUCNSfpdTUrM3oMz6ze9wgcJ9a4ZpDMIHOiBau0nc0Tu72dLI2P34Rn-woPZoo_sT4O6rlKW33M2KTCLFGmGX2E/s640/logine+testu+schema.png" style="margin-left: auto; margin-right: auto;" width="640" /></td></tr>
<tr><td class="tr-caption" style="text-align: center;"><b><i>pfSense</i> testavimo modelio schema</b></td></tr>
</tbody></table>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Atliktų testų procedūrą, nepriklausomai nuo platformos virš kurios veikia <i>pfSense </i>sistema, suprantamai perteikia testavimo modelio schema. Viena dedikuota <i>pfSense </i>tinklo plokštė sujungta su testavimo įrankio serveriu ir imituoja interneto sąsają (WAN); kita sujungta su klientu ir imituoja vietinio tinklo sąsają (LAN). Klientas su serveriu užmezga ryšį ir pagal nurodytus parametrus generuoja, siunčia bei priima duomenų srautą. Visi testai atliekami vienalaikiu dvikrypčiu duomenų perdavimu, nes ir praktikoje tinklo mazgas patiria vienalaikį dvikryptį duomenų srautą.
</div>
<br />
<h3 style="text-align: center;">
<i><span style="font-size: normal;">Testų metodika ir RFC 2544</span></i>
</h3>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Tiriamojo darbo testavimo metodika remiasi <i><a href="https://www.ietf.org/rfc/rfc2544.txt" target="_blank">RFC 2544</a></i> (<i>Benchmarking Methodology for Network Interconnect Devices</i>) rekomendacijomis. Vis dėlto, dėl tinklo mazgų testavimo įrankių palaikančių šį neoficialų standartą trūkumo autoriaus aplinkoje, tik iš dalies laikomasi <i>RFC 2544</i> nurodymų. Be to, darbe taikomas papildomas paketų drebėjimo {<i>jitter</i>} testas, kuris neapibrėžtas <i>RFC 2544</i> tinklo įrenginių testavimo metodikoje, nors šiai dienai įvardinamas kaip vienas iš svarbesnių tinklo kokybinių rodiklių. Iš tiesų, nūdienos <i>Ethernet </i>tinklo testavimo įrenginiai palaiko ir naujesnę tinklo mazgų testavimo metodiką, apibrėžtą ITU (<i>International Telecommunication Union</i>) organizacijos Y.1563 (<i>Ethernet frame transfer and availability performance</i>) standartu. Deja pastaroji yra mokama ir dėl finansinių suvaržymų darbe ja nesiremta.
</div>
<div style="text-align: justify; text-indent: 1cm;">
<i>RFC 2544</i>, tai tinklo kartotuvų, komutatorių bei maršrutizatorių testavimo metodikos <i>de facto</i> standartas laisvai prieinamas internete. Jis 1999 metais pristatytas <i>Internet Engineering Task Force</i> organizacijos, siekiant suvienodinti ir aiškiai apibrėžtą tinklo mazgų testavimo metodiką, kuri leistų palyginti skirtingų gamintojų tinklo įrenginius tarpusavyje.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Nors <i>RFC 2544</i> standartas numato daugiau tinklo mazgo įrenginių testų, šiame tiriamajame darbe pasinaudota tik svarbiausių testų metodikos rekomendacijomis, derinant jas prie darbe naudojamos testavimo įrangos išteklių ir poreikių darbo tikslui pasiekti.
</div>
<br />
<h3 style="text-align: center;">
<i><span style="font-size: normal;">Testavimo įrankiai</span></i>
</h3>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Šiame darbe testavimui naudojamas populiarus ir lengvai prieinamas atvirosios programinės įrangos tinklo tiriamasis įrankis – <i>iperf</i>. Jis leidžia pamatuoti tinklo pralaidą UDP ir TCP protokolais, vienakrypčiu {<i>unidirectionally</i>} ir vienalaikiu dvikrypčiu {<i>bi-directionally</i>} duomenų perdavimu, bei keliomis lygiagrečiomis ryšio sesijomis, tarp dviejų tinklo mazgų. Testuojant UDP duomenų srautu, <i>iperf </i>ne tik parodo pralaidos rezultatus, bet suteikia daug naudingos informacijos apie tinklo kokybinius rodiklius: tokius kaip UDP paketų drebėjimą {<i>packet jitter</i>} ir jų nuostolius {<i>packet loss</i>}.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Testavimo įrankį padėjo pasirinkti <i>Barton J.</i> tiriamasis darbas „<i>Performance Testing Tools</i>“, nagrinėjantis tinklo našumui tirti skirtus programinius įrankius <i>RFC2544</i> rekomendacijos atžvilgiu.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Tačiau tinklo našumo testavimas <i>iperf </i>turi trūkumą, tai programinės įrangos testavimo priemonė veikianti virš bendro pobūdžio <i>Linux </i>operacinės sistemos. Bendros paskirties operacinėje sistemoje veikia sisteminiai procesai, kurie tam tikrais laiko momentais suaktyvėja, o tai gali iškreipti testų duomenis, ne dėl testuojamo tinklo mazgo (<i>pfSense</i>) įtakos.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Kita vertus, testavimo <i>iperf </i>įrankis operuoja virš bendro pobūdžio <i>Linux </i>OS, kuri veikia virš virtualizacijos sluoksnio, sukurtą dar kitos programinės įrangos – <i>Proxmox VE</i>, ši taip pat paremta <i>Linux </i>OS. Deja profesionalūs tinklo mazgo testavimo įrankiai, kuriu integriniai grandynai sukurti tik vienai užduočiai atlikti – tinklo kokybiniams ir kiekybiniams rodikliams matuoti, kainuoja nemenkus finansinius išteklius ir autoriui yra neprieinami.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Nepaisant atsakingo ir kruopštaus testavimo, tiriamojo darbo testų metu surinktus duomenis vertėtų priimti mintyje su nedidele paklaida, atsirandančias dėl minėtų testuojamos aplinkos trūkumų. Tačiau, pateikti galutiniai ir susisteminti rezultatai pakankamai tikslūs, jog būtų galima palyginti skirtingas <i>Linux KVM</i> hipervizoriaus tinklo sąsajos tvarkykles, jų našumą <i>pfSense </i>sistemos atžvilgiu.
</div>
<br />
<h3 style="text-align: center;">
<i><span style="font-size: normal;">Ethernet kompiuterių tinklo kadrų ilgiai</span></i>
</h3>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Išsamiai tinklo mazgo charakteristikai gauti <i>RFC 2544</i> rekomenduoja, jog visi testai būtų atliekami bent su penkiais skirtingo dydžio tinklo kadrais. Tarp kurių būtinai mažiausias ir didžiausias galimas testuojamam kanalinio lygmens standartui.
</div>
<div style="text-align: justify; text-indent: 1cm;">
<i>Ethernet </i>kompiuterių tinklo atveju, <i>RFC 2544</i> rekomendacijos apibrėžia šiuos tinklo kadro dydžius: 64, 128, 256, 512, 1024, 1280 ir 1518 baitų; tarp kurių mažiausias ir didžiausias galimi, bei keletas tarpinių lengvai įsimenamų kadro dydžių.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Iš tiesų, nėra vieno geriausio kadro dydžio tinkamo visiems <i>Ethernet </i>tinklams, kadangi visuose kompiuterių tinkluose vyrauja skirtingas kadrų dydžių pasiskirstymas. Tačiau, jei tinklo įrenginio gamintojas pristato savo įrenginio spartą/pralaidą vienu skaičiumi, <i>RFC 2544</i> rekomenduoja, jog pralaida būtų išreikšta mažiausiu tinklo kadro dydžiu. Deja marketingo vedami didelė dalis tinklinės įrangos gamintojų pristato savo prietaisų pralaidą išmatuota su didžiausiais tinklo kadrais, dažnai pamiršdami tai nurodyti ne tik ant pakuotės, bet ir įrenginio instrukcijose, specifikacijose.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Mažesni tinklo kadrai padeda testuoti tinklo mazgo aparatinės įrangos spartą, kadangi maksimaliai mazgo pralaidai pasiekti reikia apdoroti daugiau tinklo kadrų per vienetinį laiko tarpą. Tuo tarpu didesni tinklo kadrai neša daugiau naudingos informacijos ir gali tą pačią pralaidą pasiekti su mažesniu tinklo kadrų skaičiumi per vienetinį laiko tarpą.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Iš dalies laikantis <i>RFC 2544</i> nurodymų, šiame darbe testai atliekami ne tik su didžiausiu <i>Ethernet </i>standarto kadro dydžiu, bet ir didžiausiu leidžiamu IP protokolo paketų dydžiu, bei keliais tarpiniais tinklo lygmens paketų dydžiais. Taigi, šiame darbe papildomai testuojami šie IP paketų dydžiai: 4096, 8192, 16384, 32768 ir 65507 baitų.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Kompiuterių tinkle maksimalus perdavimo vienetas – vadinamasis MTU {<i>maximum transmission unit</i>} – kanaliniame lygmenyje tik 1518 baitų ilgio. Todėl dideliems IP protokolo paketams reikalinga fragmentacija – didesnių tinklo lygmens paketų skaidymas į mažesnius kanalinio lygmens kadrus, kurį atlieka TCP/IP protokolų rinkinį palaikantis maršrutizatorius.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Kadrų dydžių išplėtimą IP paketų dydžiais siekiama išsiaiškinti kaip <i>pfSense </i>susitvarko su paketų fragmentacija vykstančia tinklo lygmenyje. Šiame darbe atliekami testai orientuoti ne kiek tinklų tilto (kuris apdoroja tik kanalinio lygmens kadrus), bet į interneto tinklą (paremta IP protokolu) sudarančių tinklo mazgų operacijoms testuoti.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Kita vertus operuoti 65507 baitų paketais virš pakankamai mažo standartinio <i>Ethernet </i>MTU yra pavojinga. Fragmentų surinkimas vykdomas tik tada, kai gaunami visi jo fragmentai. Tai sulėtina pilno paketo apdorojimą. Antra vertus, pametus bent vieną fragmentą, tenka siųsti visus fragmentus iš naujo. Vadinasi, vienas kadro netekimas prilygsta maždaug 44 įprastų MTU praradimui.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Nors paketo ir kadro sąvokos skiriasi, šiame darbe šie terminai neretai vartojami kaip lygus. Vis dėlto darbe dažniau vartojama paketo sąvoka. Viena vertus, testuojamas tinklo mazgas (<i>pfSense</i>) operuoja tinklo lygmenyje; antra vertus, ne IT srities atstovui paketo sąvoka suprantamesnė už kadro.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Tačiau reiktų turėti mintyje, jog IP protokolo leidžiamas paketo ilgis yra 20-65535 baitai, o žemesniojo <i>Ethernet </i>kanalinio lygmens kadrų: 64-1518 baitai. Todėl analizuojant gautus testų duomenis, visuose diagramose abscisės ašyje nuo 64 iki 1518 žymimas kanalinio lygmens kadrų ilgis baitais, o nuo 4K iki 64K paketų ilgis baitais. Pralaidos diagramos ordinatės ašyje mazgo sparta matuojama tik kadrais ir bitais per sekundę. Autoriaus nuomonė kadrai reikšmingesnė informacija už paketus vertinant tinklo mazgo spartą, kadangi paketai žemesniame lygmenyje vis vien perduodami kaip tinklo kadrai kurių maksimali naudingųjų duomenų krova {<i>payload</i>} tik 1500 baitų.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Šiame darbe testavimo įrankiu <i>iperf </i>tinklo mazgo našumo rodiklius pasirinktinai matuojama su UDP paketų srautu, kuris pagal OSI modelį priklauso ketvirtajam lygmeniui. Tuo tarpu <i>Ethernet</i> kadarai priklauso antrajam, kanaliniam lygmeniui. Todėl norint siųsti pageidaujamo dydžio kadrus kanaliniame lygmenyje, reikia nepamiršti apskaičiuoti ir atmesti iš siunčiamo paketo tarpinių lygmenų antraščių ilgius.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Pavyzdžiui, jei <i>iperf </i>nurodoma siusti 1518 baitų UDP paketus, kanaliniame lygmenyje pridėjus antraštes jo dydis bus matomas kaip 1546 baitai, o tai reiškia fragmentaciją, bet ne vieną standartinį <i>Ethernet </i>MTU, kas iškreiptų testo rezultatus. Jog neįsiveltų klaida, darbe siunčiamų paketų ir kadrų dydžių tikslumu buvo įsitikinta juos patikrinus <i>tcpdump </i>paketų analizatoriumi.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Taigi, norint išsiųsti tam tikro dydžio kadrą kanaliniu lygmeniu reikia nepamiršti transportinio (TCP/UDP), tinklinio (IP) bei kanalinio lygmens (<i>Ethernet</i>) antraščių ilgių sumos atimti iš siunčiamo paketo su <i>iperf </i>testavimo įrankiu.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Jei MTU 1518 baitų, norint išvengti UDP paketo fragmentacijos maksimalus jo ilgis neturėtų viršyti 1472 baitų: 1518 – 18 (<i>Ethernet </i>antraštė) – 20 (IP antraštė) – 8 (UDP antraštė);
</div>
<div style="text-align: justify; text-indent: 1cm;">
Atitinkamai TCP protokolo atveju maksimalus TCP paketo ilgis neturėtų viršyti 1460 baitų: 1518 – 18 (<i>Ethernet </i>antraštė) – 20 (IP antraštė) – 20 (TCP antraštė).
</div>
<div style="text-align: justify; text-indent: 1cm;">
Visi kadrų ir paketų ilgiai naudoti testavimo metu su <i>iperf –l </i>parametro reikšmėmis pateikti 5 lentelėje, naudingos UDP paketo krovos {<i>payload</i>} stulpelyje.
</div>
<br />
<div style="margin: 6pt 0cm; text-align: left;">
<span style="font-size: small;">5 lentelė. <b>Testuojamų kadrų ir paketų ilgiai baitais</b></span></div>
<table border="0" cellpadding="0" cellspacing="1" style="border-collapse: collapse; border: none; width: 100%;">
<tbody>
<tr>
<td style="background: rgb(242, 242, 242) none repeat scroll 0% 0%; border: 1pt solid; padding: 0cm 5.4pt; text-align: center;" width="25%"><div style="margin: 3pt 0cm;">
<b><span style="font-size: small;"><i>Ethernet </i>kadro dydis</span></b></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt; text-align: center;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;"><b>UDP paketo krova</b></span></div>
</td>
<td style="background: rgb(242, 242, 242) none repeat scroll 0% 0%; border: 1pt solid; padding: 0cm 5.4pt; text-align: center;" width="25%"><div style="margin: 3pt 0cm;">
<b><span style="font-size: small;"><i>Ethernet </i>kadro dydis</span></b></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt; text-align: center;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;"><b>UDP paketo krova</b></span></div>
</td>
</tr>
<tr>
<td style="background: rgb(242, 242, 242); border: 1pt solid; padding: 0cm 5.4pt;" width="25%"><div align="center" style="margin: 3pt 0cm; text-align: center;">
<b><span style="font-size: small;">64</span></b></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt; text-align: center;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;">18</span></div>
</td>
<td style="background: rgb(242, 242, 242) none repeat scroll 0% 0%; border: 1pt solid; padding: 0cm 5.4pt; text-align: center;" width="25%"><div style="margin: 3pt 0cm;">
<b><span style="font-size: small;">1518</span></b></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt; text-align: center;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;">1472</span></div>
</td>
</tr>
<tr>
<td style="background: rgb(242, 242, 242); border: 1pt solid; padding: 0cm 5.4pt;" width="25%"><div align="center" style="margin: 3pt 0cm; text-align: center;">
<b><span style="font-size: small;">128</span></b></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt; text-align: center;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;">82</span></div>
</td>
<td style="background: rgb(242, 242, 242) none repeat scroll 0% 0%; border: 1pt solid; padding: 0cm 5.4pt; text-align: center;" width="25%"><div style="margin: 3pt 0cm;">
<b><span style="font-size: small;">fragmentuojama į 1518</span></b></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt; text-align: center;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;">4096</span></div>
</td>
</tr>
<tr>
<td style="background: rgb(242, 242, 242); border: 1pt solid; padding: 0cm 5.4pt;" width="25%"><div align="center" style="margin: 3pt 0cm; text-align: center;">
<b><span style="font-size: small;">256</span></b></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt; text-align: center;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;">210</span></div>
</td>
<td style="background: rgb(242, 242, 242) none repeat scroll 0% 0%; border: 1pt solid; padding: 0cm 5.4pt; text-align: center;" width="25%"><div style="margin: 3pt 0cm;">
<b><span style="font-size: small;">fragmentuojama į 1518</span></b></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt; text-align: center;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;">8192</span></div>
</td>
</tr>
<tr>
<td style="background: rgb(242, 242, 242); border: 1pt solid; padding: 0cm 5.4pt;" width="25%"><div align="center" style="margin: 3pt 0cm; text-align: center;">
<b><span style="font-size: small;">512</span></b></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt; text-align: center;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;">466</span></div>
</td>
<td style="background: rgb(242, 242, 242) none repeat scroll 0% 0%; border: 1pt solid; padding: 0cm 5.4pt; text-align: center;" width="25%"><div style="margin: 3pt 0cm;">
<b><span style="font-size: small;">fragmentuojama į 1518</span></b></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt; text-align: center;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;">16384</span></div>
</td>
</tr>
<tr>
<td style="background: rgb(242, 242, 242); border: 1pt solid; padding: 0cm 5.4pt;" width="25%"><div align="center" style="margin: 3pt 0cm; text-align: center;">
<b><span style="font-size: small;">1024</span></b></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt; text-align: center;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;">978</span></div>
</td>
<td style="background: rgb(242, 242, 242) none repeat scroll 0% 0%; border: 1pt solid; padding: 0cm 5.4pt; text-align: center;" width="25%"><div style="margin: 3pt 0cm;">
<b><span style="font-size: small;">fragmentuojama į 1518</span></b></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt; text-align: center;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;">32768</span></div>
</td>
</tr>
<tr>
<td style="background: rgb(242, 242, 242); border: 1pt solid; padding: 0cm 5.4pt;" width="25%"><div align="center" style="margin: 3pt 0cm; text-align: center;">
<b><span style="font-size: small;">1280</span></b></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt; text-align: center;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;">1234</span></div>
</td>
<td style="background: rgb(242, 242, 242) none repeat scroll 0% 0%; border: 1pt solid; padding: 0cm 5.4pt; text-align: center;" width="25%"><div style="margin: 3pt 0cm;">
<b><span style="font-size: small;">fragmentuojama į 1518</span></b></div>
</td>
<td style="border: 1pt solid; padding: 0cm 5.4pt; text-align: center;"><div style="margin: 3pt 0cm;">
<span style="font-size: small;">65507</span></div>
</td>
</tr>
</tbody></table>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Iš 5 lentelės gerai matyti, jog labai skiriasi naudingos perduodamos informacijos ir pridėtinės informacijos (antraščių) santykis: kuo jis didesnis, tuo efektyviau išnaudojama tinklo mazgo pralaida. Iš tiesų, galima nesunkiai paskaičiuoti UDP protokolo efektyvumą <i>Ethernet </i>atžvilgiu:
</div>
<ul>
<li>Siunčiant mažiausius kadro dydžio paketus:</li>
(Naudinga UDP paketo krova)/(Mažiausias <i>Ethernet </i>kadro dydis)=18/64≈28%;
<li>Siunčiant didžiausius kadro dydžio paketus: </li>
(Naudinga UDP paketo krova)/(<i>Ethernet</i> MTU)=1472/1518≈97%
</ul>
<div style="text-align: justify; text-indent: 1cm;">
Atitinkamai pridėtinės UDP protokolo informacijos {<i>protocol overhead</i>} santykis išreikštas procentais: maždaug 72% su mažiausiais kadrais ir 3% su didžiausiais (<i>Ethernet </i>atžvilgiu).
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Sekančiame skyrelyje apibrėžta tinklo mazgo (<i>pfSense</i>) pralaidos matavimo metodika, kuri šiame darbe matuojama tik naudingos informacijos srauto atžvilgiu, t.y. tokią, kurią galima išnaudoti praktiškai, neskaičiuojant paketų antraščių sukuriamo pridėtinės informacijos duomenų srauto.
</div>
<br />
<h3 style="text-align: center;">
<i><span style="font-size: normal;">Sveikoji tinklo mazgo pralaida</span></i>
</h3>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Tinklo pralaida {<i>throughput</i>} esminis tinklo našumo kiekybinis rodiklis, marketingo tikslais dažnai perteikiamas bitais per sekunde (<i>bps</i>), tartum leidžiantis iš pirmo žvilgsnio įvertinti tinklo įrenginio spartą. Tačiau, tinklo pralaida matuojama ne tik bitais per sekundę, bet ir kadrais/paketais per sekundę (<i>kps/pps</i>). Būtent pastarasis pralaidos matavimo vienetas padeda objektyviau įvertinti įrenginio spartą. Be to, svarbu nurodyti su kuriuo tinklo kadro ilgiu įrenginio pralaida išmatuota, kadangi dažnas <i>Ethernet </i>tinklo įrenginys pasieks afišuojamą 1 Gbps duomenų perdavimo spartą siunčiant didelius paketus, bet retas pasieks bent pusę nurodytos pralaidos su mažais tinklo paketais.
</div>
<div style="text-align: justify; text-indent: 1cm;">
<i>RFC 2544</i> tinklo mazgo pralaidą apibrėžia kaip maksimalų kadrų skaičių per sekundę, perduotą be nuostolių per 60 sekundžių laikotarpį – išsiųstų kadrų skaičius lygus gautųjų skaičiui. Pralaidą rekomenduojama įvardinti kadrų skaičiumi per sekundę, visiems testuojamiems kadro dydžiams.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Šiame darbe pralaida taip pat įvardinama kadrais per sekundę (<i>kps</i>), bei bitais per sekundę (<i>bps</i>) dėl visuotinio aiškumo. Tačiau taikoma didesnė leidžiamoji nuostolių riba – 0,1 proc. Absoliučia dauguma atveju tinklo paslaugos turėtų be problemų susitvarkyti su 0,1% paketų nuostoliais tinkle.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Visgi reikia pažymėti, jog iš pirmo žvilgsnio ir nedidelė dalis pamestų tinklo paketų (pvz., 1-2 proc.), priklausomai nuo naudojamo transportinio protokolo, skirtingai įtakoja tinklą ir jo paslaugas. Pavyzdžiui, pamestas UDP paketas nepersiunčiamas ir papildomo krūvio tinklui dėl to nesukuria. Tačiau pamestas TCP paketas pagal protokolo apibrėžimą yra pakartotinai persiunčiamas, o tai gali paskatinti tinklo grūstį ir dar didesnius paketų nuostolius.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Nors tinklo mazgo pralaidą galima matuoti TCP paketais, šiame tiriamajame darbe pralaida matuojama su UDP paketų srautu, kadangi šis testavimo režimas su <i>iperf </i>tinklo testavimo įrankiu suteikia ne tik kiekybinės, bet ir kokybinės informacijos apie tinklo ryšį, reikalingos testų duomenims surinkti, bei testų patikimumui įvertinti. Visi pralaidos testai atliekami vienalaikiu dvikrypčiu duomenų perdavimu, nes ir praktikoje tinklo mazgas apdoroja vienalaikį dvikryptį duomenų srautą.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Tinklo mazgo pralaidos testai atliekami parenkant <i>iperf –b</i> parametro reikšmes ir laikomas sėkmingu jei testo metu prarastų paketų dalis mažesnė arba lygi 0,1 proc. Surasta <i>–b</i> parametro reikšmė nurodo testuojamam paketo dydžiui maksimalią pralaidą (paketais ir bitais) su kuria <i>pfSense</i> sistema gali susidoroti be žymių UDP paketų nuostolių. Maksimali pralaida kurios nuostoliai pasirinktam paketo dydžiui nedidesni už 0,1% šiame darbe vadinama sveikąja pralaida.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Vienas pralaidos testas trunka 100 sekundžių ir periodiškai pakartojamas 3 kartus. Jei bent 1 iš 3 bandymų rezultatų, imant vidurkį iš dvikrypčio duomenų srauto rezultatų, tenkina keliamus nedidesnių nei 0,1% nuostolių reikalavimus, o deviacija proporcinga kitiems rezultatams, jis užskaitomas kaip teisingas testas. Jei visi bandymai atitinka iškeltus reikalavimus, imami to bandymo rezultatai, kurio gauti duomenys turi mažesnius nuostolius, o paketų pralaida ir drebėjimas atrodo stabilesni už kitus. Antraip vėl kartojamas 3 bandymų ciklas kol randama <i>iperf –b</i> parametro reikšmė. Ieškant <i>–b</i> parametro reikšmės naudotas derinimo detalumas ir tikslumas: didesniems tinklo paketams po 5 Mbps, mažiems po 1 Mbps (nors galima derinti ir <i>kps</i>).
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Sėkmingo <i>iperf –c 10.0.2.20 –u –b 130 M –d –t 100 –i 10 –l 82</i> testo fragmentas:
</div>
<br />
<span style="font-size: small;"><span style="font-family: "courier new" , "courier" , monospace;">[ID] Interval Transfer Bandwidth Jitter Lost/Total Datagrams<br />[3] 0.0-10.0 sec 155 MBytes 130 Mbits/sec 0.006 ms 2182/1981800 (0.11%)<br />[3] 10.0-20.0 sec 155 MBytes 130 Mbits/sec 0.008 ms 2101/1981718 (0.11%)<br />[3] 20.0-30.0 sec 155 MBytes 130 Mbits/sec 0.008 ms 1071/1981710 (0.054%)<br />[3] 30.0-40.0 sec 155 MBytes 130 Mbits/sec 0.008 ms 1669/1981713 (0.084%)<br />[3] 40.0-50.0 sec 155 MBytes 130 Mbits/sec 0.006 ms 494/1981713 (0.025%)<br />[3] 50.0-60.0 sec 155 MBytes 130 Mbits/sec 0.008 ms 2276/1981709 (0.11%)<br />[3] 60.0-70.0 sec 155 MBytes 130 Mbits/sec 0.009 ms 1554/1981703 (0.078%)<br />[3] 70.0-80.0 sec 155 MBytes 130 Mbits/sec 0.006 ms 1742/1981718 (0.088%)<br />[3] 80.0-90.0 sec 155 MBytes 130 Mbits/sec 0.008 ms 1693/1981697 (0.085%)<br />[3] 0.0-100.0 sec 1.51 GBytes 130 Mbits/sec 0.008 ms 19657/19817064 (0.099%)</span></span><br />
<br />
<h3 style="text-align: center;">
<i><span style="font-size: normal;">Laisvoji ir apkrautoji paketų delsa tinkle</span></i>
</h3>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Paketų delsa {<i>latency</i>} yra vienas esminių kompiuterių tinklo kokybinių rodiklių, leidžiantis įvertinti ryšio kokybę. Vėlinimas itin neigiamai įtakoja realaus laiko tinklo paslaugas, tokias kaip <i>VoIP</i>, vaizdo konferencijas, kompiuterinius žaidimus tinkle bei kt. Nesunku įsivaizduoti, kaip laike vėlinamas pokalbis telefonu, ar vaizdo konferencija sumažina produktyvumą ir jų panaudojimo efektyvumą. Tuo tarpu žaidimai tinkle visai netoleruoja ir sąlyginai nedidelės paketų delsos.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Tinklu keliaujantis paketas yra pristabdomas kiekvieno tinklo mazgo kurį jis kerta, tol kol bus apdorotas pagal apibrėžtas mazgo taisykles. Kiek ilgai paketas užtruks tinkle, priklauso nuo tinklo mazgų spartos, todėl renkantis tinklo mazgą itin svarbu atkreipti dėmesį į jo sukeltą paketų vėlinimą.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Šiame darbe delsa matuojama dviem atvejais: kai <i>pfSense </i>sistema neveikios būsenos {<i>idle</i>} ir kai apkrovos būsenos {<i>load</i>}. Tuo tarpu <i>RFC 2544</i> apibrėžia tik apkrovos būsenos matavimą. Neveikios būsenos delsos laiką šiame darbe vadinsime laisvąja delsa, o apkrovos – apkrautąja delsa.
</div>
<div style="text-align: justify; text-indent: 1cm;">
<i>RFC 2544</i> taip pat taiko skirtingą delsos laiko matavimo metodiką, kuri matuoja tinklo mazgo vidinės delsos laiką {<i>end-to-end time</i>}. Šiame darbe testavimo metodika supaprastinta iki <i>ping</i> įrankio, matuojančio delsos laiką tinkle į abi puses {<i>round-trip time</i>}, tačiau visiškai tinkamo skirtumui ir įtakai tarp įvairių tinklo mazgo sprendimų pamatuoti.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Nors <i>RFC 2544</i> rekomenduoja tikrinti testuojamos sistemos delsą maksimalia pralaida nustatyta mazgo pralaidumo testuose, tačiau, atsižvelgus į testavimo sistemos jautrumą, <i>pfSense</i> tinklo paketų apkrautos delsos testai atliekami kartu su 95% maksimalia greitaveika, t.y. sveikoji pralaida sumažinta 5% kiekvienam testuojamo paketo dydžiui.
</div>
<div style="text-align: justify; text-indent: 1cm;">
<i>RFC 2544</i> numato vieną delsos testą kiekvienam paketo dydžiui vykdyti 120 sekundžių ir siųsti tik vieną delsos tikrinimo paketą po 60 sekundžių. Šį testą siūloma kartoti bent 20 kartų ir teisingam atsakymui imti vidurkį iš visų 20-ties gautų delsos tikrinimo paketų.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Šiame darbe delsos testas tai pat vykdomas 120 sekundžių, kurio metu po 60 sek. siunčiama 10 <i>ping </i>komandos sugeneruotų delsos tikrinimo paketų (kanaliniame lygmenyje 64 baitų ilgio). Vieno testo metu fiksuojamas vidurkis iš 10 delsos paketų. Toks išplėstas testavimas leidžia patikrinti delsos deviaciją tarp 10 paketų, ir padeda pastebėti galimai iškreiptus rezultatus dėl anksčiau aptartų testavimo sistemos trūkumų.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Delsos testai po 120 sek. kartojami 9 kartus kiekvienam paketo ilgiui. Iš geriausių 6 delsos laiko rezultatų imamas vidurkis kaip teisingas rezultatas testuojamam paketo dydžiui. Jei 9 testų metu gauti duomenys tarpusavyje prastai koreliuoja, turi didelę deviaciją ir nuostolius, visi duomenys atmetami ir testų serija atitinkamam paketo dydžiui kartojama.
</div>
<br />
<h3 style="text-align: center;">
<i><span style="font-size: normal;">Tinklo paketų drebėjimas</span></i>
</h3>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Kitas svarbus kokybinis kompiuterių tinklo rodiklis yra paketų drebėjimas {<i>jitter</i>}, kuris taip pat atsiranda dėl tinklo mazgo kaltės, jų paketų apdorojimo metodų ir spartos. Kaip ir paketų delsos atveju ryšio drebėjimas neigiamai įtakoja realaus laiko tinklo paslaugas. Sakoma, jog didelė paketų delsa ir drebėjimas sumažina naudingo kompiuterių tinklo diametrą.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Pavyzdžiui, <i>VoIP </i>perduodamo balso duomenų srauto paketų perteklinis drebėjimas gali sukelti girdimos kalbos trūkinėjimus telefono garsiakalbyje kitame ryšio gale; analogiškai trūkinėja ir tinklu transliuojamas vaizdo signalas. Taip nutinka jei priimančio prietaiso buferis lengvai perpildomas ar laiku negauna duomenų, kuris procesorinio įtaiso apdorojamas reguliariais laiko intervalais.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Paketų drebėjimas tai paketų delsos svyravimas, dėl kurio tinkle susidaro nelygus tarpai tarp nuosekliai siunčiamų paketų. Jei nuosekliai siunčiamų kadrų perdavimo pradžioje jų tarpkadrinis laiko tarpas buvo vienodas, tinklo paketams keliaujant tinklu ir kertant ne vieną tinklo mazgą tarpkadrinis laiko tarpas pradeda kisti. Jis kinta dėl ilgo kadrų apdorojimo laiko tinklo mazge, mazgo buferinės atminties sukeltų kadrų pliūpsnio {<i>burst</i>}, ar susidariusių skirtingų tinklo kelių tarp paketų.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Atrodytų keista, bet paketų drebėjimo testas nėra apibrėžtas <i>RFC 2544</i> rekomendacijoje. Galbūt todėl, jog 1999 metais šio kokybinio kompiuterių tinklo rodiklio reikšmę ateičiai buvo sunku numatyti? Kaip ten bebūtų, dauguma nūdienos tinklo testavimo įrenginių siūlo ne tik delsos, bet ir paketų drebėjimo testą. Ne išimtis ir šio tiriamojo darbo testavimas, kadangi paketų drebėjimas ir delsa gali sukelti daug problemų realaus laiko tinklo paslaugoms.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Paketų drebėjimo testai buvo atlikti kartu su maksimalios sveikosios pralaidos matavimais. Testuose naudojamas <i>iperf </i>tinklo testavimo įrankis kartu su UDP paketų pralaida leidžia matuoti ne tik pralaidą, pamestų paketų skaičių, bet ir suteikia informacija apie paketų drebėjimą.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Pralaidos testavimo metu pastebėtas <i>iperf </i>įrankio trūkumas – jis neskaičiuoja vidutinės paketų drebėjimo reikšmės, o pateikia tą, kurią fiksavo standartinės išvesties momentu. Atsižvelgus, jog paketų drebėjimo vidurkį tenka skaičiuoti lėtuoju-rankiniu būdu, bei į testų metu surinktų duomenų gausą, nuspręsta ryšio drebėjimą skaičiuoti tik iš vieno stabiliausio pralaidos testo duomenų.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Vienas pralaidos testas, 100 sekundžių trukmės, paketų drebėjimą užfiksavo 10 kartų, lygiais laiko tarpais kas 10 sekundžių nuo testo pradžios. Šių duomenų vidurkis buvo priimtas kaip paketų drebėjimo rezultatas tam pačiam paketų dydžiui kuriam matuota sveikoji pralaida.
</div>
<br />
<h3 style="text-align: center;">
<i><span style="font-size: normal;">Užkardos funkcijų testavimas</span></i>
</h3>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Dauguma tinklo mazgų turi bent minimalias galimybes filtruoti duomenų srautą, kurios neretai panaudojamos tinklo saugumo didinimui. Todėl <i>RFC 2544</i> rekomendacijos apibrėžia paketų filtravimo testą, kuriuo siekiama patikrinti tinklo mazgo galimybes efektyviai filtruoti paketus pagal tinklo protokolo siuntėjo ir gavėjo adresus. Šis tinklų tilto ir maršrutizatoriaus našumą įtakojantis testas buvo pritaikytas ir <i>pfSense </i>užkardos testavimo reikmėms. Testu tiriamajame darbe siekiama imituoti vartotojo sukonfigūruotą <i>pfSense </i>užkardos sistemą su vartotojo apibrėžtomis taisyklėmis.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Atliekant skirtingus <i>pfSense </i>užkardos sistemos režimų testus, pirmiausia buvo užfiksuota <i>pfSense </i>sistemos paketų apdorojimo sparta kai jos duomenų srauto filtravimo galimybės išjungtos, ir sistema dirba tik maršrutizatoriaus režimu (<i>pfctl -d</i>). Vėliau, į <i>pfSense </i>užkardos sistema su įjungtu duomenų srauto filtravimu (<i>pfctl -e</i>) buvo įtrauktos 25-ios vartotojo apibrėžtos paketų filtravimo taisyklės ir atliktas išsamus testavimas.
</div>
<div style="text-align: justify; text-indent: 1cm;">
<i>RFC 2544</i> nurodymais pirmosios 24 vartotojo apibrėžtos taisyklės turi blokuoti apibrėžtus, testų duomenų srautui nenaudojamus IP adresus, o paskutinė 25-oji taisyklė suteikti leidimą testo duomenų srautui kirsti <i>pfSense </i>mazgą iki paskirties taško. Taigi, <i>pfSense </i>sistema priverčiama nuosekliai tikrinti visas 25 vartotojo apibrėžtas paketų filtravimo taisykles. Toks taisyklių tikrinimas gali gerokai įtakoti tinklo mazgo našumą, jei šis nėra pritaikytas tinklo apsaugos užduotims vykdyti.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Reikia pastebėti, jog <i>RFC 2544</i> nurodo 24 pirmas taisykles kaip blokavimo. Tačiau tinklo užkardose dažniausiai taikoma saugos praktika paremta strategija viską blokuoti {<i>default deny</i>} ir praleisti tik tai kas būtina. Todėl <i>pfSense </i>sistema sukonfigūruota su 25 leidimo taisyklėmis, iš kurių taip pat tik viena ir paskutinė duoda leidimą testo duomenų srautui kirsti <i>pfSense </i>tinklo mazgą.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Atsižvelgiant į tai, jog vidinio tinklo adresai dažniau kerta <i>pfSense </i>užkardą, pirmosios 12 filtravimo taisyklių skirtos iš LAN sąsajos ateinantiems paketams ir sekančios 12 iš WAN pusės ateinantiems paketams; tuo būdu tikimasi optimizuoti užkardos paketų tikrinimą. Paskutinioji taisyklė, duodanti teigiamą leidimą testų duomenų srautams, tikrina abiejų sąsajų (WAN ir LAN) įeinantį {<i>inbound</i>} srautą. Taisyklių sąrašas naudotas <i>pfSense </i>užkardos testuose įkeltas į priedus.
</div>
<br />
<h3 style="text-align: center;">
<i><span style="font-size: normal;">Virtualizacijos ir pfSense sistemos sąveikos testavimas</span></i>
</h3>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Siekiant geriau suprasti kuri iš <i>Linux KVM</i> hipervizoriaus palaikomų tinklo plokštės tvarkyklių efektyviausiai – sparčiausiai ir su mažiausiomis sąnaudomis – atlieka <i>Ethernet </i>kompiuterių tinklo paketų apdorojimą, šiame skyriuje analizuojami testų metu surinkti duomenys su skirtingomis tinklo plokštės tvarkyklėmis virtualioje mašinoje:
</div>
<ul>
<li><i>E1000</i> – programine įranga imituojamos tinklo plokštės tvarkyklės, leidžia prieigą prie bendrinamos fizinės tinklo plokštės;</li>
<li><i>VirtIO</i> – paravirtualizuotos tinklo plokštės tvarkyklės leidžia tiesioginę prieigą prie fizinės, bendrinamos arba dedikuotos, tinklo plokštės;</li>
<li><i>IOMMU</i> virtualizacija – įgalina tiesioginę kreiptį prie sistemos išteklių {<i>PCI passthrough</i>}, VM priskiriama tik jai dedikuota fizinė tinklo plokštė su įprastomis įtaiso tvarkyklėmis.</li>
</ul>
<div style="text-align: justify; text-indent: 1cm;">
Skirtingi tinklo plokštės realizavimo būdai KVM virtualioje mašinoje analizuojami tinklo mazgo pralaidumo {<i>throughput</i>}, paketų delsos {<i>latency</i>} ir drebėjimo {<i>jitter</i>} atžvilgiu, kai:
</div>
<ul>
<li><i>pfSense </i>sistema tik persiunčia paketus {<i>forwarding</i>}, paketų filtravimas išjungtas – veikia tik kaip maršrutizatoriaus platforma {<i>routing platform only</i>};</li>
<li><i>pfSense </i>sistema dirba normaliu įsimenamuoju tinklo užkardos režimu {<i>stateful firewall</i>};</li>
<li><i>pfSense </i>sistema veikia specifiniu neįsimenamuoju užkardos režimu {<i>stateless firewall</i>}.</li>
</ul>
<div style="text-align: justify; text-indent: 1cm;">
Norint įvertinti virtualizacijos įtaką <i>pfSense </i>tinklo sistemos našumui, reikia ne tik mokėti jį testuoti, bet ir nusibrėžti atskaitos liniją, kuri leis įvertinti virtualizacijos įtaka <i>pfSense </i>sistemai. Todėl kartu su skirtingais KVM virtualizacijos būdais buvo ištestuota <i>pfSense </i>ir fizinės aparatinės įrangos našumas, kuris visose diagramose žymimas HW (nuo angl. <i>hardware</i>) trumpiniu.
</div>
<br />
<hr align="left" size="1" width="100%" />
<br />
<h3 style="text-align: start;">
<span style="font-family: inherit; font-size: large;">"Virtualizacijos įtaka <i>pfSense </i>tinklo užkardos sistemai: našumo analizė" Turinys:</span></h3>
<div>
<br />
<ol>
<li><span style="background-color: #d9ead3;"><a href="https://skarware.blogspot.com/2017/07/virtualizacijos-itaka-pfsense-metodika.html">Virtualizacijos įtaka <i>pfSense</i> tinklo užkardos sistemai: našumo analizė [<b>1 dalis - Metodika</b>]</a></span></li>
<li><a href="https://skarware.blogspot.com/2017/07/virtualizacijos-itaka-pfsense-router.html" target="_blank">Virtualizacijos įtaka <i>pfSense</i> tinklo užkardos sistemai: našumo analizė [<b>2 dalis - Router mode</b>]</a></li>
<li><a href="https://skarware.blogspot.com/2017/07/virtualizacijos-itaka-pfsense-firewall.html" target="_blank">Virtualizacijos įtaka <i>pfSense</i> tinklo užkardos sistemai: našumo analizė [<b>3 dalis - Firewall mode</b>]</a></li>
<li><a href="https://skarware.blogspot.com/2017/07/virtualizacijos-itaka-pfsense-noisy-neighbor.html" target="_blank">Virtualizacijos įtaka <i>pfSense</i> tinklo užkardos sistemai: našumo analizė [<b>4 dalis - Noisy Neighbor</b>]</a></li>
</ol>
<br />
<hr align="left" size="1" width="50%" />
</div>
Martynashttp://www.blogger.com/profile/00471091754225207342noreply@blogger.com0tag:blogger.com,1999:blog-5426813891256937073.post-9521799340193859702017-07-11T12:24:00.001+03:002021-07-02T23:36:32.612+03:00Populiariausi visiškos virtualizacijos sprendimai [4 dalis]<div style="text-align: justify; text-indent: 1cm;">
Šioje, paskutinėje virtualizacijos apžvalgos straipsnių serijos dalyje, trumpai apžvelgti populiariausi pirmojo tipo {<i>type-1</i>} hipervizoriai visiškai virtualizacijai {<i>full virtualization</i>} realizuoti virš įprastos x86 kompiuterių platformos.
</div>
<br />
<h3 style="text-align: center;">
<i><span style="font-size: normal;">Linux KVM</span></i>
</h3>
<br />
<div class="separator" style="clear: both; text-align: center;">
<img border="0" data-original-height="202" data-original-width="640" height="101" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjFwYp_rBKYFzb-f6UTiz4O2kKVMs11HEqxW9GVdDDdfiK5h8BLOdw5LADc_QU_FS0Mpui-8viiN5pA2ofpAMfO9TB0ztOF7_QVXSNYA8zHrVH66PzrSMfmTxXUswwrq62WAntvdB5FpD8/s320/kvm-logo.png" width="320" /> </div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div style="text-align: justify; text-indent: 1cm;">
<i>Linux KVM</i> (<i>Linux Kernel-based Virtual Machine</i>) yra vienas populiariausių pirmojo tipo hipervizorius visiškai virtualizacijai realizuoti. Jis plėtojamas nemokamos ir atviros programinės įrangos principais, todėl vartotojams nieko nekainuoja, taip pat turi nemokamu, pakankamai išplėtotų administracinių įrankių, o visiškos virtualizacijos realizacijos našumu ir efektyvumu nenusileidžia brangiems mokamiems produktams. Skirtingai nei kitas itin populiarus visiškos virtualizacijos hipervizorius – <i>VMware ESXi</i>, KVM nesugeba realizuoti visiškos virtualizacijos be aparatinio lygmens palaikymo, tačiau dauguma modernių procesorių jį turi, išskyrus itin apkarpytus mobiliųjų prietaisų procesorių modelius.
</div>
<div style="text-align: justify; text-indent: 1cm;">
KVM, kaip pagrindą savo virtualizacijos sprendimams plėtoti, pasirinko ir <i>Red Hat</i> kompanija, iš pradžių stipriai savų programuotojų galvomis ir rankomis investavusi į <i>Xen </i>projektą vėliau jo visiškai atsisakė savo plėtojamoje <i>Linux </i>operacinėje sistemoje. Todėl šiai dienai <i>Red Hat Enterprise Linux</i> distribucija oficialiai palaiko ir siūlo tik KVM pagrindų realizuojamą virtualizacijos sprendimą (<i>Red Hat Virtualization</i>).
</div>
<div style="text-align: justify; text-indent: 1cm;">
Kaip išduoda skyrelio pavadinimas, KVM virtualizacijos sprendimas gaunamas į <i>Linux</i> operacinės sistemos branduolį įdiegus specialų virtualizaciją palaikantį modulį {<i>kernel module</i>}, taip iš esmės bendro pobūdžio <i>Linux </i>OS paverčiant į pirmosios klasės hipervizorių. Įdomu tai, jog <i>Linux</i> OS su KVM branduolio moduliu {<i>kernel module</i>} išlieka pilnavertė bendro pobūdžio operacinė sistema, kurioje VM operacijos vykdomos lygiagrečiai su kitais procesais. Iš tiesų, KVM modulis pagal nutylėjimą įdiegtas į standartinį <i>Linux </i>branduolį nuo 2007 metų.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Kaip ir daugelyje šiuolaikinių visiškos virtualizacijos sprendimų, kartu su KVM galima naudoti paravirtualizuotas tvarkykles {<i>paravirtualized drivers</i>}, su kuriomis daug našiau vykdomos VM operacinės sistemos prieigos funkcijos prie įvesties/išvesties įtaisų (tinklo plokštės, disko bei kt.). <i>Red Hat </i>virtualizacijos sprendimas kartu su KVM naudoja <i>VirtIO </i>paravirtualizuotas įtaisų tvarkykles, prieinamas visoms populiariausioms serverių sistemoms (<i>Linux, BSD, Windows Server</i>).
</div>
<div style="text-align: justify; text-indent: 1cm;">
<i>Linux KVM</i> palaiko itin platų spektrą OS virtualiose mašinose vykdyti: <i>MS Windows, Linux, BSD, Solaris, Haiku, Android, GNU/Hurd, Minix, ReactOS, OS X</i> bei keletą kitų.
</div>
<br />
<h3 style="text-align: center;">
<i><span style="font-size: normal;">VMware ESXi</span></i>
</h3>
<br />
<div class="separator" style="clear: both; text-align: center;">
<img border="0" data-original-height="118" data-original-width="499" height="75" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiFrtq6VphkFc1BtbiJGkvlwH4czu5iwZSHdxSbPns8Tv7BCF8D7Kib4X8Xw24S5NGJfmvRJYJTyp6ZDwhdVlQdVbLrTCZUtHl6e5eGThYQMBC3F5c11HP2POio8Ki456TFUmfmA1VNSDs/s320/vmware-logo.png" width="320" /> </div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
<i>VMware </i>– virtualizacijos pionierius, kompanija savo veiklą pradėjo 1998 metais, jos produktai virtualizacijai turbūt geriausiai žinomi už techninės srities specialistų. Šiandien <i>VMware</i>, stambi korporacija, siūlo visą spektrą produktų kompiuterio platformos virtualizacijai, bei visai tinklo infrastruktūrai. Populiariausias jos produktas – <i>ESXi</i>, visiškos virtualizacijos savasis hipervizorius.
</div>
<div style="text-align: justify; text-indent: 1cm;">
<i>VMware ESXi</i> realizuoja visišką virtualizaciją su aparatinės įrangos palaikymu, nors gali pakankamai efektyviai realizuoti visišką virtualizaciją ir be aparatinės įrangos palaikymo – tai išskirtinis <i>VMware </i>sprendimų bruožas, ilgą laiką užtikrinęs jai lyderio poziciją. Nūdiena <i>VMware ESXi</i> išnaudoja x86 aparatinio lygmens palaikymą virtualizacijai kartu su paravirtualizuotomis įtaisų tvarkyklėmis {<i>paravirtualized drivers</i>} įvesties/išvesties funkcijoms paspartinti.
</div>
<div style="text-align: justify; text-indent: 1cm;">
<i>VMware ESXi </i>hipervizorius yra nemokamas, kainuoja tik papildomi administraciniai įrankiai ir pažangios funkcijos virtualizuotos infrastruktūros valdymui. Papildomus <i>VMware ESXi </i>hipervizoriaus administravimo įrankius, mokamus ir nemokamus, siūlo ir trečiosios šalys.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Taigi <i>ESXi </i>yra dedikuota virtualizacijos platforma, įdiegiama betarpiškai virš fizinės sistemos, kurios valdymo galimybės priklauso nuo pasirinktų administracinių įrankių.
</div>
<div style="text-align: justify; text-indent: 1cm;">
<i>VMware ESXi </i>palaiko populiariausias <i>Windows </i>OS ir <i>Linux </i>distribucijas virtualiose mašinose vykdyti: <i>Windows/Windows Server, Linux (SLES, RHEL, CentOS, Debian, Ubuntu)</i> ir <i>Oracle Linux</i>.
</div>
<br />
<h3 style="text-align: center;">
<i><span style="font-size: normal;">Xen Project</span></i>
</h3>
<br />
<div class="separator" style="clear: both; text-align: center;">
<img border="0" data-original-height="266" data-original-width="640" height="133" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhrM63XjMLZmXXRRRzqIAw2FIj0OUbaII-jaoaTMxF8fKWQiPMi5EEwNL44lhuzXRmbkULyJy0zI4BSn-pVgVFRAqQDsf3_IVp7lLrHAY6EhXXHiGevi6Rt7pUv8stpXenAi_4taMAMpCE/s320/Xen_project_logo.png" width="320" /> </div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
<i>Xen Project</i>, arba tiesiog <i>Xen</i>, yra atvirojo kodo virtualizacijos sprendimas ir siūlantis paravirtualizacijos bei visiškos virtualizacijos metodų realizaciją. Paravirtualizacija tik tam pritaikytoms OS, o visišką virtualizaciją visos įprastoms (nemodifikuotoms) operacinėms sistemoms, jei aparatinė įranga, virš kurios veikia <i>Xen</i>, palaiko virtualizaciją. Taip pat yra vadinamųjų hibridinių variantų, tarp para- ir visiškos virtualizacijos, kai visiška virtualizacija naudoja paravirtualizuotas įtaisų tvarkykles {<i>paravirtualized drivers</i>} įvesties/išvesties funkcijoms paspartinti.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Pirmoji <i>Xen </i>sprendimo versija pasirodė 2003 metais, kai grupė Kembridžo universiteto akademiku po tiriamojo projekto įkūrė <i>XenSource, Inc.</i> organizaciją, kuri globojo <i>Xen </i>kaip atvirojo kodo projektą (<i>Xen Project</i>). Tai vienas iš seniausių ir ilgiausiai plėtojamų hipervizorių, ir kadangi tai atvirojo kodo projektas, šiandien yra ne viena komercinė <i>Xen </i>versija, geriausiai iš jų žinoma <i>Citrix XenServer.</i> <i>Citrix </i>įsigijo <i>XenSource, Inc.</i> 2007 metais ir integravo <i>Xen </i>hipervizorių į savo produktus bei kartu palaikė <i>Xen </i>nemokamos versijos plėtojimą. 2013 metais <i>Xen </i>projektą priglaudė labai svarbus atvirojo kodo katalizatorius – <i>Linux Foundation </i>organizacija, bei globoja iki šiol.
</div>
<div style="text-align: justify; text-indent: 1cm;">
<i>Citrix XenServer </i>tai dedikuota virtualizacijos platforma, plėtojama <i>Citrix </i>kompanijos pelno tikslais. Tačiau <i>Xen </i>hipervizorius plėtojamas atvirojo kodo bendruomenės, ir realizuojamas įvairiose formose. Dažniausiai su <i>Linux </i>(<i>Xen </i>palaikymas integruotas į <i>Linux </i>kodą) ir <i>Unix </i>operacinėmis sistemomis: <i>Debian, FreeBSD, NetBSD, openSUSE, OpenSolaris</i> bei daug kitų <i>Unix </i>tipo OS.
</div>
<div style="text-align: justify; text-indent: 1cm;">
<i>Xen </i>hipervizoriaus palaikymas operacinėms sistemos, vykdyti virtualiose mašinose, itin platus: <i>MS Windows, Linux, GNU/Hurd, NetBSD, NetWare, OpenSolaris, OpenBSD</i> bei keletas kitų.
</div>
<br />
<h3 style="text-align: center;">
<i><span style="font-size: normal;">Microsoft Hyper-V</span></i>
</h3>
<br />
<div class="separator" style="clear: both; text-align: center;">
<img border="0" data-original-height="138" data-original-width="484" height="91" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEipV6rr3Eni8oVfW5g9laCRN1ACM2LYmDpRDLRRy7lQkHXzGZy0t6Eee4Q0SrbIx4aSAzWjJsiYMlzlPlWCCqU84f0e2svgqQD6WBxT2GiuLkLryepzMIQykmPHAizH2Bwg_qcGoOeR3CQ/s320/hyperv.png" width="320" /> </div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
<i>Microsoft</i>, programinės įrangos milžinė, negalėjo sau leisti ignoruoti virtualizacijos tendencijų. Todėl nuosekliai plėtojo savo virtualizacijos sprendimus, pradedant <i>Microsoft Virtual PC</i> ir baigiant 2008 metais pristatytu <i>Hyper-V</i>, turbūt sėkmingiausiu <i>Microsoft </i>virtualizacijos produktu.
</div>
<div style="text-align: justify; text-indent: 1cm;">
<i>Microsoft Hyper-V</i> yra pirmojo tipo hipervizorius integruotas į <i>Microsoft Windows Server</i> OS, bei keliose kitose <i>Microsoft </i>operacinių sistemų distribucijose kaip <i>Windows </i>OS komponentas ir rekomenduojamas visiškos virtualizacijos sprendimas <i>Microsoft </i>programinei įrangai.
</div>
<div style="text-align: justify; text-indent: 1cm;">
<i>Hyper-V</i> hipervizorius siūlomas ir kaip pavienis produktas <i>Microsoft Hyper-V Server </i>vardu. Praktiškai tai dar viena, virtualizacijai specializuota, <i>Windows Server</i> versija kurioje pašalinta kaip galima daugiau kitų <i>Windows Server</i> OS komponentų tiesiogiai nesusijusių su virtualizacija. Taip sukuriant minimalią virtualizacijos platformą, efektyviam fizinės sistemos išteklių panaudojimui virtualizacijoje – nukreipiant visus išteklius į virtualių mašinų operacijas.
</div>
<div style="text-align: justify; text-indent: 1cm;">
<i>Hyper-V</i> palaikomos OS virtualiose mašinose vykdyti: <i>MS Windows, Linux (SUSE, Red Hat, CentOS, Debian, Ubuntu) ir Oracle Linux</i>.
</div>
<br />
<br />
<div style="text-align: justify; text-indent: 1cm;">
Autoriaus nuomone KVM hipervizorius daugeliu atveju yra tinkamiausias pasirinkimas, dėl plačios atvirojo kodo bendruomenės ir sunkiasvorių verslo kompanijų palaikymo. KVM virtualizacijos našumas ir administraciniai įrankiai gerai išvystyti, be to, tai populiariausias virtualizacijos sprendimas kompiuterijos infrastruktūroje. Kita vertus, visi virtualizacijos sprendimai turi savų privalumų ir savų minusų, pagal kuriuos atitinkamai yra taikomi IKT infrastruktūroje.</div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<img border="0" data-original-height="103" data-original-width="640" height="64" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjCHArmoPZGLo2TvBpop_3-I4Or3vDtCtiElzWo_Rm8KHSvdajK5DkSSryr_-YZRk_mG6OYfEV05BaeW5iYUbUc3tKQ33K8V7pINwRScO4KTvIJHmH2q6RF0WB9ViW-wfepNxsFAJAjJm4/s400/Proxmox-VE-logo.png" width="400" /></div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Kalbant apie administracinius <i>Linux KVM</i> visiškos virtualizacijos įrankius, sunku neužsiminti apie <i>Proxmox Virtual Environment </i>– virtualios terpės valdymo panelė. Tai aktyviai plėtojamas atvirojo kodo produktas, mėgstamas ir vertinamas sistemų administratorių. Tinkamas realizuoti virtualizaciją tiek smulkių tiek didelių organizacijų kompiuterijos infrastruktūroje. <i>Proxmox VE </i>pasirinktinai realizuoja visus tris anksčiau apžvelgtus virtualizacijos metodus: </div>
<ul>
<li>Visišką virtualizaciją realizuoja <i>KVM</i>; </li>
<li>Paravirtualizaciją realizuoja <i>Xen</i>; </li>
<li>OS lygmens, priklausomai nuo naudojamos versijos, <i>OpenVZ</i> arba <i>LXC</i> (<i>Linux container</i>).
</li>
</ul>
<div style="text-align: justify; text-indent: 1cm;">
Plačiau <i>Proxmox Virtual Environment</i> funkcijų čia nenagrinėsime, virtualizacijos valdymo ir administracijos įrankių tema verta atskiro rašto darbo.
</div>
<br />
<hr align="left" size="1" width="100%" />
<br />
<h3 style="text-align: start;">
<span style="font-family: inherit; font-size: large;">
Straipsnių serija skirta kompiuterių platformos virtualizacijai apžvelgti:</span></h3>
<div>
<br />
<ol>
<li><a href="https://skarware.blogspot.com/2017/07/virtualizacijos-raida-x86-sistemose.html" target="_blank">Virtualizacijos raida x86 architektūros kompiuterio sistemoje</a></li>
<li><a href="https://skarware.blogspot.com/2017/07/kompiuteriu-platformos-virtualizacijos-metodai.html" target="_blank">Kompiuterių platformos virtualizacijos metodai</a></li>
<li><a href="https://skarware.blogspot.com/2017/07/virtualizacijos-nauda-ir-taikymas.html" target="_blank">Virtualizacijos nauda ir taikymo pavyzdžiai</a></li>
<li><a href="https://skarware.blogspot.com/2017/07/visiskos-virtualizacijos-sprendimai.html"><b style="background-color: #d9ead3;">Populiariausi visiškos virtualizacijos sprendimai</b></a></li>
</ol>
<br />
<hr align="left" size="1" width="50%" />
</div>
Martynashttp://www.blogger.com/profile/00471091754225207342noreply@blogger.com0tag:blogger.com,1999:blog-5426813891256937073.post-27444997252646793002017-07-07T12:22:00.001+03:002021-07-02T23:38:53.233+03:00Virtualizacijos nauda ir taikymo pavyzdžiai [3 dalis]<div style="text-align: justify; text-indent: 1cm;">
Nūdien kompiuterijos infrastruktūros virtualizacija plačiai paplitusi praktika, tai esminė technologija infrastruktūrai valdyti, naudojama nuo smulkaus verslo kompiuterių tinklų, vidutinių organizacijų duomenų centrų, iki debesų kompiuterijos milžinų. Virtualizacijos sprendimai naudojami ne tik tinklo mazgo sistemose bet ir nešiojamuosiuose kompiuteriuose.
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
<b>Virtualizacijos nauda argumentuojama šiais pagrindiniais veiksniais:</b>
</div>
<ul>
<li>Padeda apeiti taikomųjų programų, pririštų prie konkrečios aparatinės ar operacinės sistemos, apribojimus: Pavyzdžiui, <i>Linux </i>vartotojai gali vienu metu lygiagrečiai naudotis ir <i>Windows</i> OS, bei šiai operacinei sistemai skirtomis taikomojo pobūdžio programomis;</li>
<li>Sistemos portatyvumas {<i>portability</i>} ir nepriklausomumas {<i>hardware-independence</i>}: Keičiantis fizinės aparatinės įrangos specifikai, nebūtinai keičiasi VM įrangos ir įtaisų atvaizdas {<i>image</i>}. Tai leidžia paprastai kilnoti VM net tarp skirtingų parametrų techninės įrangos, jei virtualizacijos sprendimas nesikeičia ar pakeitimai tarp versijų neįtakoja VM suderinamumo; </li>
<li>Padidina pavienės fizinės sistemos su daugelio tinklo paslaugų patikimumą ir saugumą: VM tarpusavyje griežtai izoliuotos, už tai atsako hipervizorius {<i>hypervisor</i>} – virtualizacijos sluoksnis – iš architektūrinės pusės esantis tarp virtualios ir fizinės įrangos. Todėl OS kritinė klaida ar saugos pažeidimas vienoje VM, nesutrikdo kitų virtualių mašinų darbo; </li>
<li>Patogus virtualizuotų sistemų dubliavimas ir kilnojamumas {<i>relocation</i>} leidžia padidinti sistemos pasiekiamumą {<i>availability</i>} ir patikimumą {<i>reliability</i>}: Manipuliuojant atsarginėmis VM kopijomis virtualizaciją paprasta pritaikyti infrastruktūros sutrikimų šalinimui. Pavyzdžiui, sutrikus vienos virtualios mašinos darbui, automatiškai įsijungia atsarginė {<i>backed-up system</i>}; net fiziškai praradus dali kompiuterijos infrastruktūros savo duomenų centre {<i>on-premises</i>}, galima numatyti ir prireikus įjungti atsarginę virtualizuotą infrastruktūrą nutolusiame duomenų centre {<i>off-site</i>}; </li>
<li>Efektyviau išnaudojami kompiuterijos ištekliai: Šiuolaikinės itin sparčios kompiuterių sistemos neretai patiria prastovas dėl mažos vidutinės išteklių apkrovos. Todėl, jei padidėjusi vidutinė operacijų delsa nėra kritinis sistemų parametras, verta daugelį fizinių sistemų konsoliduoti jas virtualizuojant ir vykdyti ant vienos fizinės platformos. Esant trumpalaikiams, numatytiems ar nenumatytiems, sistemų apkrovos padidėjimams virš normalaus lygio, patogu dalį išteklių laikinai išsinuomoti. Visa tai gali ženkliai sumažinti išlaidas kompiuterijos infrastruktūros valdymui ir jos išlaikymui; </li>
<li>Daugelio serverių konsolidacija juos virtualizuojant palengvina ir infrastruktūros valdymą: Norint keisti virtualios sistemos aparatinius parametrus ne visada būtina prieiga prie fizinio aparatinio lygmens, tam virtualizacijos sprendimai turi virtualių mašinų valdymo panelę. Ji leidžia kelių mygtukų paspaudimu kurti ir naikinti VM, priskirti joms daugiau ar mažiau bendrųjų sistemos išteklių (centrinio procesoriaus ar darbinės atminties bei kt.).
</li>
</ul>
<br />
<div class="separator" style="clear: both; text-align: center;">
<img border="0" data-original-height="768" data-original-width="1024" height="480" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhIiNWK1GYX1PUwRkPIc0kBgvKZV6EafiVSki3UI_BxCSaZ6jPtTHFPnqs1F_xwgqgFbzOOdVzcsRTA7yurMjPAxrBIqG2gfpG_sblaSJxLSqYhOK-YRg4Y_E-Z8rQ9rJuZUt7bXuPtuWk/s640/virtualization-technology-usage-models.jpg" width="640" /></div>
<br />
<br />
<div style="text-align: justify; text-indent: 1cm;">
<b>Nesunku suprasti kodėl dauguma organizacijų virtualizuoja savo IT infrastruktūrą susipažinus su tipiniais jos taikymo pavyzdžiais:</b>
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
XI amžiaus įmonės naudoja įvairias interneto tinklo paslaugas, dažniausiai šias: el. paštas, saityno serveris {WEB}, sričių vardų serveris {DNS}, failų serveris, bei kitą programinę įrangą. Visos šios tinklo paslaugos gali būti vykdomos viename fiziniame serveryje, vienoje operacinėje sistemoje. Deja prireikus atnaujinti vienos tinklo paslaugos programinę įrangą ar įdiegti papildomos, su laiku tikrai iškils problemų, kurios neigiamai įtakos visų tinklo paslaugų darbą ir trukdys normaliai kompanijos veiklai. Viena vertus, pastatyti po atskirą fizinį kompiuterį atskiroms funkcijoms vykdyti nepraktiška finansiniu aspektu – net silpniausi šiuolaikiniai procesoriai nesunkiai susidoroja su dauguma užduočių ir patiria dideles prastovas. Antra vertus, darbuotojų prastovos dėl neveikiančios IT infrastruktūros taip pat brangiai atsieina.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Taigi, daug pigiau ir efektyviau valdyti infrastruktūrą, kurioje atskiros funkcijos priskirtos atskiriems virtualiems kompiuteriams. Akivaizdus virtualizuotos kompiuterijos infrastruktūros pranašumas tas, kad ši leidžia daryti VM momentinio būvio kopijas {<i>snapshots</i>}, klonuoti {<i>cloning</i>} virtualias mašinas ir derinti bei testuoti programinės įrangos atnaujinimus už produkcinės {<i>production</i>} infrastruktūros ribų – atskiroje VM, kurioje pirma galima įsitikinti programinės įrangos funkcijų korektiškumu prieš sukeičiant ją su senesne. Tai leidžia maksimaliai padidinti tinklo paslaugų pasiekiamumą ir garantuoti nenutrūkstamą įmonės veiklą.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Virtualizacija nepamainomas įrankis ir kompiuterijos saugos specialistams, aktyviai taikomas kenkėjiškos programinės įrangos {<i>malware</i>} aptikimui ir jos analizei. Internete paslėpta virtualių mašinų su spąstais {<i>honeypots</i>} piktavaliams programišiams – imituojantys pažeidžiamus/menkai apsaugotus tinklo prietaisus – siekiant surinkti informaciją apie nežinomas saugumo spragas, įsilaužimo metodus, ar užfiksuoti naujas, dažniausiai savaime plintančias, kenkėjiškas programas {<i>malware</i>}, bei jų tinklus {<i>botnets</i>}.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Virtualizacija idealiai tinka ir pavienėms įmonėms apsaugos barjerams kurti. Specializuoti tinklo spąstai {<i>honeypots</i>} geros saugos sistemos dalis, imituoja tam tikras tinklo paslaugas ar visą saugomą sistemą. Tikslingai apgalvoti ir paspęsti spąstai, kurių būklė akylai stebima ir analizuojama, ne tik sukuria diversiją nuo saugomų sistemų, bet ir padeda identifikuoti silpnąsias jos vietas.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Dėl savo universalių savybių virtualizacija palengvina ir studentų būvį – šiandien daug paprasčiau susikurti kompiuterijos tinklo laboratoriją mokslo tikslais, tam užtenka vieno fizinio kompiuterio. Neretai prieigą prie virtualizuotos kompiuterių laboratorijos suteikia akademinės įstaigos, ši virtuali mokymams skirta aplinka studentams paprastai nieko papildomai nekainuoja.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Neginčijama virtualizacijos įtaka ir debesų kompiuterijai, kurių infrastruktūra paremta pavieniais x86 architektūros serveriais sujungtais į klasterius {<i>clusters</i>}, taip sudarant vientisos sistemos iliuziją. Ją paprasta ir patogu valdyti per programinę įrangą. Gerai išvystyti virtualizacijos sprendimai turi visapusiškų, patogių ir efektyvių administravimo įrankių. Dažnai tai pagrindinis kriterijus renkantis vieną ar kitą virtualizacijos sprendimą.
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Nusakyti visas informacinių technologijų sritis kurias virtualizacija daro produktyvesnes, patenka už šio straipsnio tikslų, kita vertus, buvo pateikta pakankamai virtualizacijos taikymo pavyzdžių, parodančių kaip kompiuterio platformos virtualizacija paverčia kompiuterijos sistemas lankstesnėmis ir patikimesnėmis.
</div>
<br />
<hr align="left" size="1" width="100%" />
<br />
<h3 style="text-align: start;">
<span style="font-family: inherit; font-size: large;">
Straipsnių serija skirta kompiuterių platformos virtualizacijai apžvelgti:</span></h3>
<div>
<br />
<ol>
<li><a href="https://skarware.blogspot.com/2017/07/virtualizacijos-raida-x86-sistemose.html" target="_blank">Virtualizacijos raida x86 architektūros kompiuterio sistemoje</a></li>
<li><a href="https://skarware.blogspot.com/2017/07/kompiuteriu-platformos-virtualizacijos-metodai.html" target="_blank">Kompiuterių platformos virtualizacijos metodai</a></li>
<li><a href="https://skarware.blogspot.com/2017/07/virtualizacijos-nauda-ir-taikymas.html"><b style="background-color: #d9ead3;">Virtualizacijos nauda ir taikymo pavyzdžiai</b></a></li>
<li><a href="https://skarware.blogspot.com/2017/07/visiskos-virtualizacijos-sprendimai.html" target="_blank">Populiariausi visiškos virtualizacijos sprendimai</a></li>
</ol>
<br />
<hr align="left" size="1" width="50%" />
</div>
Martynashttp://www.blogger.com/profile/00471091754225207342noreply@blogger.com0tag:blogger.com,1999:blog-5426813891256937073.post-13942781981795699752017-07-03T12:16:00.001+03:002021-07-02T23:42:40.619+03:00Kompiuterių platformos virtualizacijos metodai [2 dalis]<div style="text-align: justify; text-indent: 1cm;">
Virtualizacijos sąvoka paliečia dauguma kompiuterijos sričių, todėl virtualizacijos apibrėžimas tarp jų šiek tiek skiriasi. Tačiau, ar tai būtų OS darbalaukio, failų sistemos, kompiuterių tinklo, darbinės atmintinės ar kompiuterio platformos virtualizavimas, praktiškai visais atvejais virtualizacija siekiama: supaprastinti sąveiką su žemesniu sudėtingesniu sistemos lygmeniu; arba abstrahuoti realios aparatinės įrangos išteklius į loginius, lengviau tvarkomus vienetus. Todėl dažniausiai virtualizacija įvardinama kaip abstrakcija, kuri su tam tikromis našumo sąnaudomis padidina visos sistemos funkcionalumą ir patikimumą.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Iš tiesų, egzistuoja įvairių techninių metodų virtualizuojant įvairius kompiuterijos išteklius. Vis dėlto, šis straipsnis apžvelgs tik kompiuterio platformos virtualizaciją {<i>platform-hardware virtualization</i>} – virtualaus kompiuterio sukūrimą – kaip vientisos platformos, o ne atskirų jos komponentų. Virtualų kompiuterį, virtualizacijos kontekste, įprasta vadinti virtualia mašina {<i>virtual machine</i>}. Šis terminas bus naudojamas ir šiame straipsnyje, siekiant išskirti realų ir virtualų kompiuterį.
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
<b>Esminis kompiuterio platformos virtualizacijos tikslas</b> – sukurti daugelį virtualių mašinų abstrahuojant vienos fizinės kompiuterio sistemos aparatinę įrangą.
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Kompiuterio platformos {<i>host hardware</i>} virtualizacija sukuria keletą programinio kodo vykdomųjų aplinkų. Šios aplinkos gali vykdyti įprastą programinę įrangą, tarp jų ir bendros paskirties operacines sistemas {<i>guest software</i>}. Virtualizacija sukuria iliuziją, jog kiekviena atskira aplinka tai pavienė kompiuterio platforma {<i>guest machine</i>}, virtuali mašina, su savais aparatinės įrangos ištekliais. Virtualios mašinos architektūriškai atskirtos, todėl vienoje fizinėje sistemoje galima lygiagrečiai vykdyti kelias operacines sistemas.
</div>
<br />
<h3 style="text-align: center;">
<i><span style="font-size: normal;">Hipervizorius</span></i>
</h3>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Šiuolaikinės x86 architektūros kompiuterio platformos virtualizaciją realizuoja du pagrindiniai komponentai: aparatinė įranga su aparatinio lygmens palaikymu virtualizacijai ir programinės įrangos sprendimai.</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjVXZMD6oISVwvolUvECT8gST_ffLUv9tDvEQZtuamFQrIcY3o4XRDEiJQhEPZVmpQVSl6ARn3IaWy7qE4arXVMYYTeH2Ko4_9k6Pzy1HsmbMTia5lXYQh_VRdNPsv71JJwm_qfWoWyUCw/s1600/non+and+virtualized+system.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="306" data-original-width="1002" height="193" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjVXZMD6oISVwvolUvECT8gST_ffLUv9tDvEQZtuamFQrIcY3o4XRDEiJQhEPZVmpQVSl6ARn3IaWy7qE4arXVMYYTeH2Ko4_9k6Pzy1HsmbMTia5lXYQh_VRdNPsv71JJwm_qfWoWyUCw/s640/non+and+virtualized+system.png" width="640" /></a></div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Programinė įranga {<i>host software</i>} – virtualių mašinų monitorius (VMM) dar žinomas kaip hipervizorius {<i>hypervisor</i>} – virš fizines kompiuterio platformos {<i>host hardware</i>}, sukuria virtualizacijos sluoksnį, kuris realizuoja virtualias mašinas {<i>guest machine</i>}. Hipervizorius imituoja ir koordinuoja visą kompiuterio platformos aparatinę įrangą. Tarpinis virtualizacijos lygmuo užtikrina saugią virtualios mašinos {<i>guest machine</i>} prieigą prie fizinio kompiuterio {<i>host machine</i>} išteklių, o esant daugeliui virtualių mašinų numatytą ar tikslingai apibrėžtą išteklių padalijimą.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Kiekvienos virtualios mašinos (VM) ištekliai konfigūruojami pagal poreikius. VM tarpusavyje atskirtos, jas galima lengvai sukurti ir pašalinti, įjungti ar išjungti nepriklausomai viena nuo kitos. Dauguma modernių virtualizacijos sprendimu leidžia nenutraukiant vykdomos programinės įrangos virtualiuose mašinose perkonfigūruoti jų aparatinės įrangos išteklius; bei perkelti VM tarp fiziškai atskirų kompiuterio platformų {<i>live migration</i>}. Plačiau apie virtualizacijos privalumus ir galimybes bus rašoma kitame straipsnyje.</div>
<div style="text-align: justify; text-indent: 1cm;">
Virtualizacija plačiai ir giliai įsiskverbė į kompiuteriją, jos svarba informacinėms technologijoms neabejotina. Iki šiol buvo kalbama apie populiariausią virtualizacijos būdą – visišką kompiuterio platformos virtualizaciją {<i>full virtualization</i>}. Virtualizacijos metodų yra įvairių, o jų tendencijos su laiku keičiasi. Norint geriau suprasti kompiuterio platformos virtualizaciją, reikia trumpai apžvelgti dažniausiai naudojamus virtualizacijos metodus.
</div>
<br />
<h2 style="text-align: center;">
<span style="font-size: x-large;">Kompiuterių virtualizacijos metodai</span>
</h2>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Virtualizacijos sprendimai, priklausomai nuo siekiamų tikslų, virtualizuoja ir imituoja skirtingus kompiuterio platformos architektūros lygmenis. Skirtingų lygmenų abstrakcijos sukuria skirtingų savybių virtualias aplinkas. Visos jos turi savų privalumų ir yra plačiai taikomos. Toliau trumpai apžvelgiami populiariausi kompiuterio sistemos virtualizacijos metodai, jų realizacija.
</div>
<br />
<h3 style="text-align: center;">
<i><span style="font-size: normal;">Visiška virtualizacija</span></i>
</h3>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Visiškos virtualizacijos {<i>full virtualization</i>} metodas virtualizuoja žemiausia kompiuterio sistemos architektūrinį lygmenį – aparatinę įranga, todėl virtuali mašina visiškai imituoja kompiuterio aparatinės įrangos architektūrinį lygmenį ir sukuria iliuziją, jog kiekviena VM yra unikali kompiuterio platforma su tikrais aparatiniais ištekliais. Virtuali mašina pasižymi tomis pačiomis aparatinės įrangos architektūros savybėmis kaip ir virtualizuojamas fizinis kompiuteris.
</div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<img border="0" data-original-height="305" data-original-width="473" height="204" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjxaPLc1lUeuchDOjbOHE1O8NzyqY4sRzQVl-j14iL4ToCycRzBuWr9NSUh2KrpNT7Um2cQ0D-n1YPoFrntvXfaGZrfyzQGxGpF7K4j7Q5zlAwBnKo9ELLjyXe_BDBr7iOh3LhHP11vMW8/s320/full+virtualization.png" width="320" /></div>
<div style="text-align: justify; text-indent: 1cm;">
Nors tarpinis virtualizacijos sluoksnis paslepia fizinės platformos išteklių specifikaciją – perteikia skirtingų parametrų virtualią platformą – galutiniam vartotojui VM su operacine sistema savo išvaizda ir pojūčiu iš esmės nesiskiria nuo analogiškos fizinės platformos su ta pačia OS ar kita programine įranga.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Visiškosios virtualizacijos vykdomosios aplinkos pakankamai „giliai“ tarpusavyje atskirtos, jog leistų vienoje fizinėje sistemoje vykdyti daugelį nepriklausomų VM su įvairiomis OS (pvz., <i>Linux </i>ir <i>Windows</i>). Operacinės sistemos, bei programinė įranga apskritai, vykdomos virtualioje mašinoje nereikia modifikuoti, specialiai pritaikyti darbui virtualizuotoje aplinkoje. Jei programinė įranga veikia betarpiškai virš fizinės kompiuterio platformos, ji veiks ir visiškos virtualizacijos aplinkoje.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Tai išskirtinis visiškos virtualizacijos bruožas, kiti kompiuterio platformos virtualizacijos metodai (paravirtualizacija ar OS lygmens virtualizacija) leidžia vykdyti tik tam tikrą programinę įrangą, jos nemodifikuojant taikomai virtualizacijai.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Kalbant apie nemodifikuotą OS, turima galvoje nemodifikuotą OS branduolį, kuris nežino, jog veikia virtualioje aplinkoje virš VM imituotos aparatinės įrangos. Todėl sisteminius kreipinius {<i>system calls</i>}, privilegijuotas operacijas, vykdo kaip įprasta – lyg veiktų betarpiškai virš realios aparatinės įrangos.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Taigi, dėl išskirtinio savo bruožo, visiškos virtualizacijos virtualių mašinų realizacija susiduria su išskirtine problema – privilegijuotų operacijų izoliavimu VM aplinkose. Šios operacijos, tai dalis procesoriaus vykdomų instrukcijų privilegijuoto lygmens režime, kurios gali prieiti prie bendrų fizinės sistemos išteklių, jais manipuliuoti. Todėl, virtualizacijai nepasiduodančias instrukcijas iš virtualios mašinos hipervizorius negali tiesiog nukreipti į aparatinę įrangą, bet privalo analizuoti visas VM instrukcijas ir aptikus sisteminius kreipinius su privilegijuotomis instrukcijomis pakeisti jas taip, jog vienos virtualios mašinos vykdoma instrukcija neįtakotų kitų VM būseną.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Tai sukuria nemenkas sąnaudas, našumo nuostolius, jei aparatinė įranga nepritaikyta virtualizacijai. Viena vertus hipervizorius rezervuoja dalį kompiuterio sistemos išteklių savo nepertraukiamai veiklai vykdyti; antra vertus, hipervizorius privalo apdoroti privilegijuotas operacijas, o tai, priklausomai nuo virtualioje mašinoje vykdomų veiksmų ir jų intensyvumo, gali gerokai sulėtinti virtualios mašinos bei visos sistemos darbą.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Visiška virtualizacija, populiariausias kompiuterių virtualizacijos metodas, tinka įvairių tinklo sistemų virtualizacijai, pasižymi saugumu ir patikimumu. Kompiuterių platformos kontekste, ypač kalbant apie serverių sistemas, virtualizacijos terminas dažnai pagal nutylėjimą reiškia visišką virtualizaciją. Tokią virtualizacijos termino reikšmės prielaidą galima daryti ir šiame straipsnyje.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Keletas dažnai sutinkamų visiškos virtualizacijos sprendimų: <i>VMware Workstation / Player / Fusion / ESXi, Citrix XenServer, Xen, Oracle VM, Parallels Desktop, Oracle VirtualBox, QEMU, Microsoft Hyper-V</i> ir <i>Linux KVM</i>.
</div>
<br />
<h3 style="text-align: center;">
<i><span style="font-size: normal;">Paravirtualizacija</span></i>
</h3>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Paravirtualizacijos terminas yra žodžių para ir virtualizacija junginys. Terminas para nurodo, jog šis virtualizacijos metodas tik panašus į virtualizaciją. Paravirtualizacijos sprendimai, skirtingai nei visiškos virtualizacijos, nesistengia apgauti OS, jog ši vykdoma atskiroje pavienėje kompiuterio sistemoje. Paravirtualizacijos hipervizorius neimituoja aparatinės įrangos 100 proc. t.y. neperteikia identiškos vykdomosios aplinkos virtualioms mašinoms virš kurios pats veikia, bet realizuoja panašią VM su specialia programine sąsaja {API}. Norint tokioje aplinkoje vykdyti operacinę sistemą, būtina modifikuoti jos branduolį – pritaikyti specialiai paravirtualizacijos programinei sąsajai.
</div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<img border="0" data-original-height="305" data-original-width="473" height="206" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh8we-X_-fTffaM3kSHpbOxrrkiT6hq1FmjzvB3LE15QUTOM6EeX2w31xYSyzNRCRzupkzs6JmE4xNn2vaRwQQ4CCg5idq9_32NqZ5kh96Jm6sA8CcU3MPvDMdJxTmGpTBMo_d-nddIx_A/s320/paravirtualization.png" width="320" /></div>
<div style="text-align: justify; text-indent: 1cm;">
Kaip jau minėta, visiška virtualizacija nereikalauja modifikuoti OS branduolio, nes hipervizorius analizuoja visas VM instrukcijas ir prireikus jas pakeičia. Tačiau, instrukcijų gaudymas ir jų perrašymas, gali gerokai sulėtinti virtualios mašinos darbą bei sumažinti visos sistemos efektyvumą. Todėl paravirtualizacijos sprendimai siekia nukreipti privilegijuotas, virtualizacijai nepasiduodančias, operacijas iš VM srities į hipervizoriaus lygmenį.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Tam modifikuojamas OS sistemos branduolys, sunkiai virtualizuojamas komandos pakeičiamos hiperkreipiniais {<i>hypercalls</i>} – sisteminiais kreipiniais į hipervizoriaus specialią programinę sąsają. Hipervizorius veikia betarpiškai virš fizinės aparatinės įrangos, turi tiesioginę prieigą prie visų sistemos išteklių, todėl daug efektyviau apdorojamos privilegijuotos operacijos.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Paravirtualizacijoje, VM vykdoma, operacinė sistema {<i>guest OS</i>} žino apie virtualizaciją, jog veikia virš hipervizoriaus ir sugeba su juo bendradarbiauti per programinę sąsają {API}. Hipervizorius, gavęs hiperkreipinį {<i>hypercall</i>} iš virtualioje aplinkoje veikiančios OS, atliks reikiamus veiksmus su sistemos ištekliais ir gražins rezultatą atgal į operacinę sistemą.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Galimybė operacinei sistemai tiesiogiai komunikuoti su hipervizoriu, leidžia paravirtualizacijai apeina privilegijuotų, virtualizacijai nepasiduodančių, operacijų problemą. Tai lemia: padidėjusi VM našumą – priklauso nuo apkrovos tipo; padidintą visos sistemos efektyvumą; ir plonesnį virtualizacijos sluoksnį – mažiau realių aparatinės įrangos išteklių rezervuojama hipervizoriaus nepertraukiamai veiklai vykdyti.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Paravirtualizacijos hipervizorius nesistengia apgauti operacinės sistemos pilnai imituodamas aparatinę įrangą, bet perteikia paprastą VM abstrakciją su specialia programine sąsaja, per kurią daug našiau ir efektyviau vykdomos OS prieigos, prie realiųjų aparatinės įrangos išteklių, funkcijos.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Taigi, nors paravirtualizacija ir sukuria virtualias aplinkas daugelio OS vykdymui virš vienos fizinės sistemos, šios vykdomosios aplinkos realizuojamos kitokiu principu nei visiškos virtualizacijos metodu. Pastarasis leidžia vykdyti bet kurią nemodifikuotą OS, kuri veiktų ant realios fizinės platformos, tuo tarpu, paravirtualizacijos metodas reikalauja pritaikyti OS virtualizacijai, modifikuojant jos branduolį. Todėl paravirtualizacija palaiko tik keletas operacinių sistemų (pvz., <i>Linux </i>ir dalis <i>Unix </i>OS), dažniausiai plėtojamos atvirojo kodo principu, kurios leidžia modifikuoti OS branduolio išeities kodą.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Paravirtualizacijos išlyga OS modifikacijai bei atsiradęs x86 platformos aparatinio lygmens palaikymas visiškajai virtualizacijai {<i>hardware-assisted virtualization</i>}, palaipsniui išstūmė paravirtualizaciją į pakraščius, ir leido visiškos virtualizacijos sprendimams savo našumu ir efektyvumu konkuruoti su paravirtualizacija. Kita vertus, modernūs visiškos virtualizacijos sprendimai šiandien naudoja paravirtualizuotas tvarkykles {<i>paravirtualized drivers</i>}, leidžiančias tiesioginę prieigą prie įvesties/išvesties įtaisų, vietoj imituojamų programine įranga, o tai žymiai paspartina virtualiųjų mašinų operacijas su tinklo plokštėmis, diskais bei kitais kompiuterio įtaisais.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Gryna {<i>pure</i>} paravirtualizacija šiandien dažniausiai naudojama tik tarp nulinio tipo {<i>Type-0</i>} hipervizorių (apie juos netrukus). Keletas populiaresnių paravirtualizacijos sprendimų: <i>Xen</i>, IBM kompanijos <i>LPAR </i>ir <i>Oracle VM Server for SPARC</i> (<i>LDOM</i>).
</div>
<br />
<h3 style="text-align: center;">
<i><span style="font-size: normal;">Aparatinio lygmens palaikymas virtualizacijai</span></i>
</h3>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Kaip jau nekartą užsiminta, virtualizacijos palaikymas aparatiniame lygmenyje leidžia su mažesnėmis sąnaudomis realizuoti visiškąją virtualizaciją {<i>full virtualization</i>} ir daug efektyviau dalyti x86 platformos išteklius tarp daugelio virtualiųjų mašinų su nepriklausomomis operacinėmis sistemomis. Toliau bus trumpai apžvelgti svarbiausi x86 architektūros išplėtimai visiškajai virtualizacijai palaikyti aparatiniame lygmenyje {<i>hardware-assisted virtualization</i>}.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Aparatinio lygmens palaikymą visiškai virtualizacijai x86 platformoje žymi <i>AMD-V</i> ir <i>VT-x</i> virtualizacijos technologijos, atitinkamai <i>AMD </i>ir <i>Intel </i>kompanijų procesoriams. Šie pirmieji virtualizacijos išplėtimai pasirodė x86 architektūros procesoriuose apie 2006 metus, ir palietė privilegijuotų instrukcijų problemą, tuo būdu supaprastindami virtualizacijos sprendimų kūrimą.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Kiek vėliau, 2008 m., pristatytas antros kartos aparatinio lygmens palaikymas virtualizacijai palietė procesoriaus atminties valdymo įtaiso (MMU) problemą. Iki tol programine įranga paremtas atminties puslapių lentelių tvarkymas atskiroms virtualioms mašinoms, gavo aparatinio lygmens palaikymą, kuris AMD procesoriuose žymimas NPT arba RVI, o Intel procesoriuose EPT. Tai išsprendė virtualizuotos darbinės atminties našumo problemą.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Tais pačiais metais atsiradęs įvesties/išvesties (IOMMU) palaikymas virtualizacijai x86 platformos lustų rinkinyje {<i>chipset</i>}, sutrumpintai žymimas AMD-Vi ir Intel VT-d, padėjo išspręsti visiškos virtualizacijos įvesties/išvesties prietaisų našumo problemą. Su IOMMU virtualizacijos išplėtimu hipervizorius gali virtualioms mašinoms leisti tiesiogiai naudotis periferinės magistralės prietaisais {<i>PCI passthrough</i>}. Pavyzdžiui, tinklo plokšte, diskų masyvų valdikliais bei kitais į PCI/PCI-e magistralę jungiamais prietaisais.
</div>
<br />
<h3 style="text-align: center;">
<i><span style="font-size: normal;">OS lygmens virtualizacija</span></i>
</h3>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Operacinės sistemos lygmens virtualizacijos {<i>OS-level virtualization</i>} metodas, kaip diktuoja pats pavadinimas, realizuojamas operacinėje sistemoje. Virtualizacijos sluoksnio su hipervizoriu, kaip visiškos ir para virtualizacijos atveju, čia nėra. Todėl OS lygmens virtualizacijos sprendimai nekuria ir virtualių mašinų, bet vienoje OS realizuoja izoliuotas vykdomąsias aplinkas.
</div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<img border="0" data-original-height="268" data-original-width="473" height="181" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEijl36Z6GvgANHry41zJPsX6uKld9_xdRqTA0N7JfmDoZBxOnD6svVVEcdA5dGbEWFIvMj-Kkw8LT7ujLhgwrrXcex_-ZPhk6RFIxNh_xb6oUojhisCMcywcib64bJ-d9R71itGYCh_aMg/s320/os-level+virtualization.png" width="320" /></div>
<div style="text-align: justify; text-indent: 1cm;">
Vykdomosios aplinkos, tai virtualizuotos OS vartotojo lygmens aplinkos {<i>user space</i>}, saugiai atskirtos ir izoliuotos tarpusavyje, bet veikiančios virš vieno bendrinamo operacinės sistemos branduolio {<i>shared kernel space</i>}. Kiekviena aplinka turi savo šakninę failų sistemą, sistemines bibliotekas, procesų lentelę, tinklo dėklą bei kitus būtinus komponentus, programos ar galutinio vartotojo atžvilgiu, pavienės OS iliuzijai sukurti.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Kadangi virtualizacija vyksta operacinės sistemos lygmenyje, nereikia imituoti aparatinės įrangos, vietoj to, virtualizuojama vartotojo lygmens aplinka {<i>user space</i>}. Kaip ir įprastos OS vartotojo lygmens aplinkoje, tiesioginė prieiga prie OS branduolio {<i>shared kernel</i>} pasiekiama standartiniai sisteminiais kreipiniais {<i>system calls</i>}. Todėl operacinės sistemos lygmens virtualizacijos sprendimai pasižymi mažiausiomis virtualizacijos sąnaudomis – didžiausiu našumu ir panaudotų išteklių efektyvumu, tarp kitų virtualizacijos metodų. OS lygmens virtualizacija veikia našiai ir efektyviai, net jei aparatinė įranga, virš kurios veikia OS, neturi palaikymo virtualizacijai.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Kitas OS lygmens virtualizacijos privalumas prieš visiškos ir para- virtualizacijos metodus – supaprastintas aplinkos portatyvumas {<i>portability</i>} – ypač lengvai kilnojama vykdomoji aplinka, dėl to dažnai jos vadinamos konteineriais {<i>containers</i>}. Pavyzdžiui, jei virtualios mašinos, su tipine OS ir programine įranga, momentinio būvio kopija {<i>snapshot</i>} užima bent maždaug 1GB, tai konteinerio svoris priklauso tik nuo vykdomos programinės įrangos ir unikalių rinkmenų-bibliotekų apimties virtualioje aplinkoje, visos kitos failų sistemos rinkmenos naudojamos bendrai iki jų pakeitimo {<i>copy-on-write</i>}, o tai konteinerio svorį gali sumažinti iki keleto megabaitų. Tai ypač paspartina gyvos virtualios aplinkos perkėlimą į kitą fizinę kompiuterio platformą {<i>live migration</i>}.
</div>
<div style="text-align: justify; text-indent: 1cm;">
OS lygmens virtualizacija taip pat galima panaudoti siekiant saugesnės atskirties tarp vykdomų programų vienoje operacinėje sistemoje, ar geresnio jų valdymo galimybių. Gerai išvysti OS lygmens virtualizacijos sprendimai turi puikus aplinkos valdymo ir išteklių ribojimo įrankius.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Tačiau, dėl aukštesnio lygmens virtualizacijos, turi prastesnius atskirties-saugumo požymius tarp virtualių aplinkų, nei visiškos ir para- virtualizacijos atveju. OS strigties {<i>crash</i>} atveju, klaidą ir pasekmes pajus visos virtualios vykdomosios aplinkos. Operacinės sistemos lygmens virtualizacija taip pat mažiau lanksti, už kitus du metodus, kadangi ji negali paleisti ir vykdyti kelių OS branduolių, ar skirtingų-maišytų OS (<i>MS Windows</i> ir <i>Linux</i>), virš vienos fizinės kompiuterio platformos.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Šis virtualizacijos metodas yra populiarus, nes dažnai programinė tinklo paslaugų įranga nereikalauja skirtingų OS ar individualaus branduolio, bet gali dalytis bendru OS branduoliu {<i>shared kernel</i>} saugiai atskirtose ir izoliuotose vartotojo vykdomosiose aplinkose {<i>user space</i>}.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Vienas tokių pavyzdžių saityno prieglaudos paslaugos {<i>web hosting</i>}. Vienoje fizinėje mašinoje galima sukurti daugelį nepriklausomų aplinkų: su vienoda tinklo paslaugų programine įranga, bet su skirtinga konfigūracija ir failais; su vienodu OS branduoliu {<i>shared kernel</i>}, bet skirtingomis vartotojo lygmens aplinkomis {<i>user space</i>}. OS lygmens virtualizacijos sprendimai užtikrina pakankamai saugų ir lygiagretų virtualių aplinkų darbą. Toks programinės įrangos vykdymas leidžia itin efektyviai išnaudoti fizinės mašinos išteklius.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Tokia tinklo paslaugų realizacija palengvina ir jų administravimą. Pavyzdžiui, norint į saityno serverius įdiegti saugumo atnaujinimą, ar pakeisti bendra jų konfigūracija, užtenka pakeitimus atlikti pagrindinėje operacinėje sistemoje, kuri virtualizuoja kitas aplinkas. Kita vertus, skirtinga programinę įranga gali prašyti skirtingų OS versijų stabiliam darbui užtikrinti.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Keletas populiaresnių OS lygmens virtualizacijos sprendimų: <i>OpenVZ, FreeBSD jails, Docker, LXC</i> ir <i>Solaris Containers</i> (<i>Solaris Zones</i>).
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Apžvelgus visas populiariausiu virtualizacijos metodus gali kilti klausimas ar OS lygmens virtualizacijos metodas gali būti priskiriamas platformos virtualizacijai? Akivaizdu, jog operacinės sistemos lygmens virtualizacija turi savų privalumų ir yra aktyviai taikomas serverių sistemose su vienarūšėms tinklo paslaugų programomis. Kita vertus OS lygmens virtualizacija, galutinio vartotojo atžvilgiu, taip pat sukuria iliuzija, jog naudojamasi paviene kompiuterio platforma.
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Galima pastebėti, jog visi paminėti virtualizacijos metodai siekia, virš vienos fizinės sistemos, sukurti nepriklausomas-izoliuotas, lengvai valdomas ir saugias aplinkas tinklo paslaugų programinės įrangos {<i>guest software</i>} vykdymui. Vis dėlto, visiška virtualizacija realizuoja žemiausią kompiuterio platformos lygmenį, todėl iš prigimties yra giliausiai izoliuota aplinka, kuri turėtų būti saugiausia ir stabiliausia vykdomoji aplinka, tinkama įvairioms tinklo paslaugų sistemoms virtualizuoti. Todėl ir ši straipsnių serija apie virtualizacija labiau akcentuoja visiškąją kompiuterio platformos virtualizaciją.
</div>
<br />
<h2 style="text-align: center;">
<span style="font-size: x-large;">Hipervizorių klasifikacija</span>
</h2>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Apžvelgus populiariausius virtualizacijos metodus, reikia trumpai apžvelgti ir skirtingus hipervizorius, kurie priklausomai nuo jų realizacijos lygmens kompiuterių sistemos architektūroje, dažnai skirstomi į nulinio {<i>Type-0</i>}, pirmojo {<i>Type-1</i>} ir antrojo {<i>Type-2</i>} tipo hipervizorius:
</div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<img border="0" data-original-height="278" data-original-width="480" height="185" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh-JAFj689NodmKyMgV65vPbHNCKcaBJ6p2K0g2wY3I1bFlCX0uV6l7llmpNPGL3JnYnMLVy1UWfTnLxOMSVnXbDB2MOSnbKiHRM6DOLQ6nmSCozvzVAukIJlo1Hkw6con7tlxYucNFEWQ/s320/Hypervisor+Type-0.png" width="320" /></div>
<div style="text-align: justify; text-indent: 1cm;">
Nulinio tipo {<i>Type-0</i>} hipervizorius realizuojamas žemiausiame kompiuterio sistemos lygmenyje – aparatinėje įrangoje. Virtualizacijos sluoksnis, VM kūrimas ir tvarkymas, integruotos į programinę aparatinę įrangą {<i>firmware</i>}. Visi šios klasės hipervizoriai naudoja specifinę, tarpusavyje surištą, aparatinę ir programinę įrangą, bet tarp skirtingų virtualizacijos sprendimų nesuderinamą. Todėl ši virtualizacijos platforma nėra plačiai paplitusi įmonių duomenų centruose. Tačiau, dėl savo ypatingų savybių, turi savo nišą ir sėkmingai naudojama vidutinėse bei didesnėse serverių sistemose.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Nulinio tipo hipervizorių siūlo IBM kompanijos <i>LPAR </i>ir <i>Oracle VM Server for SPARC</i> (<i>LDOM</i>) virtualizacijos sprendimai (aparatinė ir programinė įranga).
</div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<img border="0" data-original-height="305" data-original-width="473" height="206" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgTgMmNPH35RVbg0gf8I2G9M0fIDz8nWxdKRn_E9GOLo5otJXWfLBrMwq27SrZ3Q692TNrghFbo-Brdx67V7_ripcjX0PtzEiO_76O-nTUjxiFExUzD7pMZANj1euB73LcJJI5JBCoWTeM/s320/Hypervisor+Type-1.png" width="320" /></div>
<div style="text-align: justify; text-indent: 1cm;">
Pirmojo tipo {<i>Type-1</i>}, dažnai įvardinamas kaip savasis {<i>native</i>} ar plikos aparatūros {<i>bare-metal</i>}, hipervizorius veikia betarpiškai virš fizinio kompiuterio techninės įrangos, todėl, kaip ir nulinio lygio hipervizorius, turi tiesioginę prieigą prie visų kompiuterio sistemos išteklių. Šis hipervizorius pats koordinuoja tikslingą ir saugų aparatinės įrangos (centrinio procesoriaus, darbinės atminties, įvesties/išvesties įrenginių) dalijimą tarp daugelio virtualiųjų mašinų. Dėl savo atliekamų funkcijų savasis hipervizorius laikomas specializuota operacine sistema {<i>special-purpose OS</i>} virtualizacijos realizacijai. Aparatinio lygmens hipervizoriai pasižymi dideliu našumu, patikimumu ir unikaliomis funkcijomis. Tai populiariausias hipervizorių tipas įmonių kompiuterių tinkluose, plačiai taikomas virtualizuojant ne tik serverius, bet ir kitą IT infrastruktūrą, kur ypač svarbu sistemos stabilumas ir operacijų patikimumas.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Programinė įranga priskiriama pirmojo tipo hipervizoriui: <i>VMware ESXi, Citrix XenServer, Xen, Microsoft Hyper-V</i> ir <i>Linux KVM</i>.
</div>
<div class="separator" style="clear: both; text-align: center;">
<img border="0" data-original-height="358" data-original-width="473" height="242" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjZBvK80U1MlQtVnjbz8_zgW_GCle6Q0BjZUF4yfKdClX0JrF0l0BYsj17Li8AYVb98H4CoxIYaPzfVDytArA3k1sb6OSbp_Ry0tYi8vksX-Cnjh-sqdaiVqD922Du5saCmgGY0ISKr15s/s320/Hypervisor+Type-2.png" width="320" /></div>
<div style="text-align: justify; text-indent: 1cm;">
Antrojo tipo {<i>Type-2</i>}, dažnai įvardinamas kaip prieglobos {<i>hosted</i>}, hipervizorius realizuojamas aukštesniame architektūriniame sistemos lygmenyje, virš bendros paskirties operacinės sistemos {<i>general-purpose OS</i>}. Prieglaudos hipervizorius realizuojamas kaip programa, vykdoma lygiagrečiai su kitomis bendro pobūdžio OS programomis. Prieigos prie fizinio kompiuterio išteklių hipervizorius prašo iš operacinės sistemos, kuri nieko nežino apie vykdomą virtualizaciją. Dėl to hipervizorius aptarnaujamas kaip bet kuris kitas OS vykdomas procesas. Šio tipo hipervizorius nėra toks patikimas ir našus kaip pirmojo tipo, dažniausiai naudojamas ten kur pirmojo tipo hipervizorius taikymas negalimas ar nepraktiškas. Pavyzdžiui, norint naudotis keliomis operacinėmis sistemomis nešiojamajame kompiuteryje.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Programos veikiančios antrojo hipervizoriaus tipo principu: <i>VMware Workstation / Player / Fusion, Parallels Desktop, Oracle VirtualBox</i> ir <i>QEMU</i>.
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Reikia pastebėti, jog remiantis šią klasifikacija ne visi virtualizacijos hipervizoriai vienareikšmiškai priskiriami vienai ar kitai kategorijai. Pavyzdžiui, itin populiarus KVM hipervizorius turi kelių tipu požymius: viena vertus, KVM virtualizacijos sprendimas gaunamas į <i>Linux </i>OS branduolį įdiegus virtualizaciją palaikantį modulį, taip iš esmės paverčiant <i>Linux </i>OS į pirmosios klasės hipervizorių. Antra vertus, <i>Linux </i>sistema su KVM branduolio moduliu {<i>kernel module</i>} išlieka pilnavertė bendro pobūdžio OS, kurioje VM operacijos vykdomos lygiagrečiai su kitais procesais. Tačiau laikoma, jog bendros paskirties operacinės sistemos, kurios be įprastų savo funkcijų "sąmoningai" atlieka ir integruotą virtualizacijos funkciją, priklauso pirmojo tipo hipervizoriams (pvz., <i>MS Windows Server</i> su <i>Hyper-V</i> ar <i>Linux</i> su <i>KVM</i>).
</div>
<br />
<hr align="left" size="1" width="100%" />
<br />
<h3 style="text-align: start;">
<span style="font-family: inherit; font-size: large;">
Straipsnių serija skirta kompiuterių platformos virtualizacijai apžvelgti:</span></h3>
<div>
<br />
<ol>
<li><a href="https://skarware.blogspot.com/2017/07/virtualizacijos-raida-x86-sistemose.html" target="_blank">Virtualizacijos raida x86 architektūros kompiuterio sistemoje</a></li>
<li><a href="https://skarware.blogspot.com/2017/07/kompiuteriu-platformos-virtualizacijos-metodai.html" ><b style="background-color: #d9ead3;">Kompiuterių platformos virtualizacijos metodai</b></a></li>
<li><a href="https://skarware.blogspot.com/2017/07/virtualizacijos-nauda-ir-taikymas.html" target="_blank">Virtualizacijos nauda ir taikymo pavyzdžiai</a></li>
<li><a href="https://skarware.blogspot.com/2017/07/visiskos-virtualizacijos-sprendimai.html" target="_blank">Populiariausi visiškos virtualizacijos sprendimai</a></li>
</ol>
<br />
<hr align="left" size="1" width="50%" />
</div>
Martynashttp://www.blogger.com/profile/00471091754225207342noreply@blogger.com2tag:blogger.com,1999:blog-5426813891256937073.post-11727729325644728462017-07-01T12:12:00.001+03:002021-07-02T23:46:45.050+03:00Virtualizacijos raida x86 architektūros kompiuterio sistemoje [1 dalis]<div style="text-align: justify; text-indent: 1cm;">
Virtualizacija viena iš esminių technologijų kompiuterijos infrastruktūrai valdyti, naudojama nuo vidutinio ar smulkaus verslo kompiuterių tinklų iki debesų kompiuterijos milžinų. Jos indėlis į debesų kompiuterijos raidą neginčijamas. Virtualios infrastruktūros taikymas ženkliai sumažina finansines išlaidas infrastruktūros palaikymui, didina informacinių technologijų produktyvumą, padeda formuoti lankstesnę ir patikimesnę kompiuterijos infrastruktūrą visoms organizacijoms.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Šiandienos centralizuotą kompiuterijos infrastruktūra – dažnai vadinama debesų kompiuterija – sulipdyta iš x86 architektūros kompiuterių, būtų sunku įsivaizduoti be virtualizacijos technologijų. Todėl šiame blogo įraše nusprendžiau pradėti virtualizacijos raidos apžvalgą x86 architektūros kompiuterių sistemose. Dėl savo apimties nagrinėjama virtualizacijos tema bus padalyta į keturias dalis:
</div>
<ol>
<li><a href="https://skarware.blogspot.com/2017/07/virtualizacijos-raida-x86-sistemose.html"><b style="background-color: #d9ead3;">Virtualizacijos raida x86 architektūros kompiuterio sistemoje</b></a></li>
<li><a href="https://skarware.blogspot.com/2017/07/kompiuteriu-platformos-virtualizacijos-metodai.html" target="_blank">Kompiuterių platformos virtualizacijos metodai</a></li>
<li><a href="https://skarware.blogspot.com/2017/07/virtualizacijos-nauda-ir-taikymas.html" target="_blank">Virtualizacijos nauda ir taikymo pavyzdžiai</a></li>
<li><a href="https://skarware.blogspot.com/2017/07/visiskos-virtualizacijos-sprendimai.html" target="_blank">Populiariausi visiškos virtualizacijos sprendimai</a></li>
</ol>
<div style="text-align: justify; text-indent: 1cm;">
Virtualizacijos apžvalgoje visas dėmesys skirtas x86 platformos aparatinės įrangos virtualizacijai, kadangi šio tipo sistemos plačiai taikomos, lengvai prieinamos, pasižymi žema kaina ir itin didele skaičiavimų sparta. Tai kompiuterių architektūra dominuojanti ne tik asmeninių kompiuterių rinkoje, serverių sistemose bet ir superkompiuteriuose. Galiausiai x86 platformos virtualizacija tiesiogiai paveikė debesų kompiuterijos raidą.
</div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<img border="0" data-original-height="455" data-original-width="640" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEigyUsBrpXTe7WydHoY03uW2cQWSmXp-7SpH2OApd5UuTI5UN9U-SzAU_AKho_q4wXk5StJ0VBo9gQ00RKpHjDbbh7kovEsWZJq-TdzlME-JOai4G664MStqHhcBbd7ff5WSZO_DerzcJE/s1600/Processor_families_in_TOP500_supercomputers.png" /></div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Kaip matyti iš paveikslo, remiantis <i>top500.org</i> duomenimis, 500 galingiausių superkompiuterių veikia su x86 architektūros sistemos viduriais. Įdomu tai, jog x86 šeimos procesoriai buvo sukurti kaip kompaktiškų sistemų dariniai, jų pradinė panaudojimo paskirtis buvo visiškai priešinga centriniams {<i>mainframes</i>} ir superkompiuteriams.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Iš tiesų, x86 architektūros visiška virtualizacija ne visad buvo taip lengvai prieinama kaip nūdien. XXI amžiaus pradžioje tik keletas programinės įrangos kūrėjų sugebėjo pakankamai efektyviai virtualizuoti x86 platformą. Ilgą laiką kompiuterijos centralizavimo procesą (debesis) stabdė šių sprendimų (programinės įrangos) kaina, nepakankamai išvystytas pasaulinis kompiuterių tinklas ir galiausiai santykinai lėtos x86 kompiuterių sistemos.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Kita vertus, kompiuterių sistemų centralizavimas nieko naujo, pirmieji kompiuteriai buvo per daug dideli ir brangūs, jog po viena pastatyti kiekvienam norinčiam juo pasinaudoti. Todėl IBM kompanija dar 1972 metais pristatė "System/370" centrinį kompiuterį {<i>mainframe</i>} su "VM/370" operacine sistema. Ši aparatiniu lygmeniu palaikė visišką sistemos virtualizaciją. Kiekvienam OS vartotojui buvo sukuriama atskira kompiuterio imitacija – virtuali mašina, jos galimybės prilygo fizinio kompiuterio galimybėms. IBM "VM/370" OS padėjo pagrindus virtualizacijai ir leido daugeliui vartotojų patogiai dalintis, tuo metu ypač brangia, kompiuterio sistema.
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
</div>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj4BGm3yTgsnjP0a0WAlcrBVHYwC-dhiqK0okClsOlihx_JmawJQWQM37W-ibTociQQp0v1p5CFfeXT0Yc2_cw_pN0-zLswEET1MdV-Js0nzNYVl0zKP53IVm8Pgr-nxly_hWzNPR_l2X8/s1600/IBM+S370+console.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="700" data-original-width="1024" height="435" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj4BGm3yTgsnjP0a0WAlcrBVHYwC-dhiqK0okClsOlihx_JmawJQWQM37W-ibTociQQp0v1p5CFfeXT0Yc2_cw_pN0-zLswEET1MdV-Js0nzNYVl0zKP53IVm8Pgr-nxly_hWzNPR_l2X8/s640/IBM+S370+console.jpg" width="640" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;"><i>IBM S/370</i> centrinio kompiuterio pultas {<i>console</i>}</td></tr>
</tbody></table>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Tačiau didelė paklausa elektroniniams prietaisams vertė gamintojus nuolatos ieškoti pigesnių ir našesnių gamybos technologinių procesų, taip mažinant elektronikos kainas iki visiems prieinamos prekės. Nuolatinis mokslo ir technologijos progresas, integrinių grandynų gamybos įsisavinimas, privertė kompiuterių matmenis trauktis fiziškai, o skaičiavimų spartą didino eksponentiškai.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Netrukus, laisvą nišą įžvelgė asmeninių kompiuterių pionieriai <i>Steve Jobs</i> ir <i>Steve Wozniak</i>, 1976 metais įkūrė pirmąją asmeninių kompiuterių (AK) Apple kompaniją tėvų namo garaže. Netrukus AK rinką atrado ir IBM kompanija, tuometinis vadinamųjų centrinių kompiuterių {<i>mainframe</i>} gigantas, 1981 metais pristatė savo pirmąjį asmeninį kompiuterį ir vieną įtakingiausią jų istorijoje – IBM PC. Šis nuo pat pradžios sėkmingai konkuravo su <i>Apple </i>ir netrukus dominavo asmeninių kompiuterių rinkoje.
</div>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><img border="0" data-original-height="427" data-original-width="640" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgCKAOzELPmtbkE-m73CWDikdBgQ8iCpw971tM6gF6SZ7uDgLDmsxVR3-GZoZB9Kn1YNgie1yn5g6KWY6owTH2bijQDHLOHO9zxPiQf6TXytXjpGs6Ye0A6Yl4klaeLPuTzpswparKyjas/s1600/IMB_PC-IMG_7271.jpg" /></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Asmeninis kompiuteris<i> IBM PC 5150</i></td></tr>
</tbody></table>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Kartu su IBM asmeninių kompiuterių tipo sistemomis įsigalėjo ir x86 architektūros mikro-procesoriai. IBM PC dėka x86 architektūra tapo ne tik <i>Intel </i>kompanijos sėkmingiausia procesorių šeima, bet ir <i>de facto</i> standartu kompiuterių sistemose iki šių dienų.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Reikia pažymėti, jog plačiai paplitę <i>AMD </i>ir <i>Intel </i>64-bitų procesoriai, ir jų programinė įranga, dažnai kiek apgaulingai žymimi <i>x64</i> arba <i>amd64</i> terminais, tačiau priklauso tai pačiai x86 architektūrai. Rekomenduojama naudoti <i>x86-64</i> ir <i>x86_64</i> žymėjimus, jie turi užuomina apie išplėstą x86 architektūrą iki 64-bitų sistemos.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Skaičiavimams IBM PC naudojo <i>Intel 8088</i> mikro-procesorių – modifikuota ir pigesnė 8086 atmaina. Nors 8088 nebuvo labai spartus procesorius, veikė tik 5 Mhz dažniu, bet buvo ekonomiškas kainos atžvilgiu. Galiausiai jo užteko, jog IBM ne tik įsilietų, bet ir padėtų sukurti asmeninių kompiuterių rinką ir raidą. Taigi, skirtingai nei IBM centrinės {<i>mainframes</i>} kompiuterių sistemos, x86 architektūra nuo pat pradžių nebuvo pritaikyta virtualizacijai, bet skirta pavienėms kompaktiškoms skaičiavimų sistemoms.
</div>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><img border="0" data-original-height="340" data-original-width="640" height="210" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEikOKyKdwtcyUBfkc39n9Pg5aLtQmnOtocJ9IPK_6Eo19ygt2N7yZd5pv5d-SMLKCqVP1Lb5zRthT7ddpWvvpFzpJCASsTnhBMYoMv3XzpqtEBEsfAkd2POXY_byPPBrkyyb05nW6V43KY/s400/640px-KL_Intel_TD8088.jpg" width="400" /></td></tr>
<tr><td class="tr-caption" style="text-align: center;"><i>Intel 8088</i> mikro-procesorius – modifikuota ir pigesnė <i>Intel 8086</i> procesoriaus atmaina.</td></tr>
</tbody></table>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Nepaisant trukdžių x86 platformos virtualizacijai, <i>Intel </i>ir <i>AMD</i> kompanijų procesorių technologinis progresas buvo itin spartus, todėl po gero dešimtmečio, 1998 metais, susibūrė pirmieji x86 virtualizacijos entuziastai – <i>VMware </i>programinės įrangos kompanija.
</div>
<div style="text-align: justify; text-indent: 1cm;">
<i>VMware </i>siūlomi sprendimai duomenų centrams leido virtualizuoti ir suglaudinti kompiuterijos infrastruktūrą. Nors infrastruktūros virtualizacija buvo nemaža investicija, <i>VMware </i>teigimu, jų produktai leido daugiau sutaupyti nei išleisti, o jeigu išlaidos, vis dėlto apylygės, galima argumentuoti kitais virtualizacijos suteikiamais privalumais, pvz.: lankstesnis centralizuotos sistemos administravimas ar saugumo užtikrinimas.
</div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgCJwZ4YJhYsU0SvnClD1vYuWGXaQBuO3o2q6nKDAQpvfcDuMP6HQnGogChPkOpc77e3DBp3ITDK047FYNP2j7j1ZZEieZNHaioE2uvZ0rT9H0AlIt8TriqbwyunR4_LpHywLTkHPyZ7yM/s1600/Virtualization_consolidation.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="546" data-original-width="728" height="480" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgCJwZ4YJhYsU0SvnClD1vYuWGXaQBuO3o2q6nKDAQpvfcDuMP6HQnGogChPkOpc77e3DBp3ITDK047FYNP2j7j1ZZEieZNHaioE2uvZ0rT9H0AlIt8TriqbwyunR4_LpHywLTkHPyZ7yM/s640/Virtualization_consolidation.jpg" width="640" /></a></div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Visuotinai priimtos x86 architektūros kompiuterių sistemoms toliau sparčiai plėtojantis, dažno el. pašto ir žiniatinklio servisus aptarnaujančio serverio vidutinė apkrova nebesiekdavo 10 proc. centrinio procesoriaus galimybių. Akivaizdu, kompiuterijos resursai turintys dideles prastovas yra neefektyviai išnaudotos investicijos. Galiausiai buvo pasiekta ta riba, kai daugelio serverių virtualizavimas ir konsolidavimas ant kelių fizinių mašinų tapo ženkliai pigesnis ir efektyvesnis infrastruktūros įgyvendinimo ir administravimo modelis.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Netrukus, 2006 metais, <i>Intel </i>ir <i>AMD </i>kompanijoms nebeliko nieko kito kaip tik duoti tai ko rinka jau kurį laiką atvirai prašė – aparatinio lygmens palaikymą x86 platformos virtualizacijai. Taigi, šiuo metu, x86 platformos visiška virtualizacija realizuojama keliais būdais: programinės įrangos {<i>software-based</i>} ir aparatinės įrangos {<i>hardware-assisted</i>} pagalba. Toliau trumpai su jomis ir susipažinsime.
</div>
<br />
<h3 style="text-align: center;">
<i><span style="font-size: normal;">Programine įranga paremta virtualizacija</span></i>
</h3>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Pirmieji sprendimai virtualizuoti x86 platformą turėjo įveikti pačios architektūros apribojimus. Skirtingai nei galingi centriniai {<i>mainframe</i>} kompiuteriai, x86 procesoriai buvo skirti kompaktiškoms sistemoms, vadinasi jų architektūra iš prigimties nebuvo numatyta virtualizacijai.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Kadangi fiziškai keisti x86 procesorių architektūrą bet kas negalėjo, virtualizacijos pionieriams, siekiant visiškos x86 sistemos virtualizacijos, apribojimus teko apeiti per programinę įrangą. Deja programinis virtualizacijos sprendimas {<i>software-based virtualization</i>} turi didelių nuostolių virtualizuotų mašinų našumui, lyginant su aparatinio lygmens sparta.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Dalis virtualizacijos novatorių siūlė alternatyvą didelių sąnaudų programinės įrangos sprendimams – tik dalinę sistemos išteklių virtualizaciją – paravirtualizaciją (apie ją antroje virtualizacijos straipsnio dalyje). Tačiau tai taip pat turėjo savo trūkumus, pvz., reikalavo modifikuoti OS branduolį, o tai ne visada įmanoma.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Norint geriau suprasti su kokiais iššūkiais susidūrė visiškos virtualizacijos kūrėjai, reikia trumpai apžvelgti x86 architektūros kompiuterių raidą virtualizacijos kontekste.
</div>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><img border="0" data-original-height="951" data-original-width="882" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhmD69FMv3NEb1e9ePBOQ86P-2sUazywom65fWSwVbvoc7rO7TYe5x8tNPyfE8dIUjmsfB3Gf4p4kaA8xVpBjp7dXRoLFTNHIhzLNgejMgmkGZl_heitoFbf_mYmFzipdt1vnTb_60C5_M/s320/KL_Intel_i286.jpg" width="296" /></td></tr>
<tr><td class="tr-caption" style="text-align: center;"><i>Intel 80286</i> centrinio procesoriaus lustas</td></tr>
</tbody></table>
<div style="text-align: justify; text-indent: 1cm;">
Projektuodama 80286 ir 80386 procesorius <i>Intel </i>kompanija gerokai išplėtė x86 sistemų galimybes, padėjo tvirtą pagrindą x86 architektūrai, leidusį jai tapti <i>de facto</i> standartu asmeninių kompiuterių rinkoje. Visi svarbiausi išplėtimai susiję su įdiegtu apsaugotuoju režimu {<i>protected-mode</i>}, tai lig šiol naudojamas x86 procesoriaus darbinis režimas šiuolaikinėse operacinėse sistemose (pvz., <i>MS Windows</i> ir <i>Linux</i>). <i>Intel 80286</i> procesorius suteikė galimybę x86 architektūrai sukurti daugelio vartotojų {<i>multi-user</i>} ir daugelio užduočių {<i>multi-tasking</i>} operacinę sistemą, tuo atžvilgiu leido konkuruoti su labiau pažengusiomis <i>Unix</i> OS platformomis. Nors 80286 atvėrė kelią į serverių rinką, visiška x86 sistemos virtualizacija buvo dar neįsivaizduojamai toli to meto x86 mikroprocesorių inžinieriams.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Vadinamasis saugusis procesoriaus darbinis režimas {<i>protected-mode</i>} į x86 architektūrą įdiegė keturis privilegijų lygmenis, hierarchiškai sunumeruotais nuo 0 (didžiausios privilegijos) iki 3 (mažiausios privilegijos). Šie skirtingų privilegijų lygmenys, dažnai grafiškai atvaizduojami ir vadinami žiedais {<i>rings</i>}, turi skirtingas prieigos teises prie sistemos išteklių, tokių kaip: darbinė atmintis, įvesties/išvesties įrenginiai ir privilegijuotos instrukcijos. Operacinei sistemai bendradarbiaujant su centriniu procesoriumi programinės įrangos kodas padalytas į skirtingus lygmenis, tai supaprastina visos sistemos valdymą, padidina saugumą ir stabilumą.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Dauguma modernių OS, tokių kaip <i>MS Windows</i> ir <i>Linux</i>, naudojama tik du privilegijų žiedus; viena vertus konteksto perjungimas tarp žiedų sukelia didelius našumo nuostolius, antra vertus, skirtingos architektūros aparatinės platformos taiko skirtingą žiedų skaičių, todėl daugelio platformų OS dėl suderinamumo supaprastina saugumo modelį iki kelių privilegijuotų lygmenų – branduolio {<i>kernel mode</i>} ir vartotojo {<i>user mode</i>} režimų.
</div>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><img border="0" data-original-height="360" data-original-width="500" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhtdynWNZqLg4gtSuaRf67xbkVyPKRkiJce6pgIgQcNfYAl91uhql6ZJMKrhexkDQNVyJbpj_wglXzpHNzJOvDKkqEDYfBJDNLCslbTEVTZdtNjwTY_RQtsi7UfVCWjz2tZEBXJ58a9HBQ/s1600/x86_rings.png" /></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Privilegijų lygmenys-žiedai x86 architektūros procesoriui dirbant saugiuoju režimu {<i>protected mode</i>}</td></tr>
</tbody></table>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Įprastai x86 platformos OS branduolio {<i>kernel</i>} ir tvarkyklių {<i>drivers</i>} programinis kodas vykdomos nuliniame žiede (<i>kernel/supervisor mode</i>), jame vykdomas kodas tiesiogiai sąveikauja su aparatine kompiuterio įranga – turi tiesioginę prieigą prie visų sistemos išteklių be apribojimų. Vartotojų taikomosios programos ir dalis OS kodo vykdomos 3 žiede {<i>user mode</i>}. Šis privilegijų lygmuo neturi daug teisų, norint prieigos prie sistemos išteklių programos naudojasi sisteminiais kvietiniais {<i>system call</i>}, kuriuos aptarnauja OS branduolys, ir priklausomai nuo situacijos atliks tarpininko vaidmenį arba atmes užklausą. Daroma prielaida, jog programinis kodas vykdomas nuliniame žiede (<i>Ring 0</i>) neturi klaidų, todėl sistema dirba stabiliai ir saugiai. Tuo tarpu programinės įrangos klaidos taikomųjų programų lygmenyje (<i>Ring 3</i>), dėl sumažintų privilegijų, neįtakoja visos sistemos darbo.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Vadinasi virtualizacija susiduria su problema realizuojant virtualias mašinas (VM). Jei VM veiks taikomųjų programų lygmenyje (<i>Ring 3</i>), jų OS branduolys (<i>guest OS</i>) negalės pasiekti sistemos išteklių ir vykdyti privilegijuotas instrukcijas. Kita vertus, jei virtualios mašinos veiks nuliniame lygmenyje (<i>Ring 0</i>), vienos virtualios mašinos veiksmai gali paveikti kitų mašinų būsenas ar net visos sistemos būseną. Pavyzdžiui jei VM siunčia instrukcija ją išjungti, ši komanda paveiks visas virtualias mašinas, nes jos tinkamai neapdorojus išsijungs fizinė mašina. Panašios problemos kyla ir su darbinės atminties bei įvesties/išvesties įrenginiais, jei VM veiksmai nėra tinkamai apdorojami. Vienos virtualios mašinos poveikis kitoms literatūroje vadinamas VM pervėrimų (<i>pierce the virtual machine</i>).
</div>
<div style="text-align: justify; text-indent: 1cm;">
Šių x86 architektūros virtualizacijos problemų sprendimo metodas programiškai turi dideles sąnaudas be tinkamo aparatinio lygmens virtualizacijos palaikymo. Visiškoji/klasikinė x86 platformos virtualizaciją programiniu būdu įgyvendinama taikant tris pagrindinius principus:
</div>
<ul>
<li>Privilegijuotų instrukcijų virtualizacija (nesudaro didelių našumo nuostolių VM);</li>
<li>Pagrindinės atminties virtualizacija (didžiausios virtualizacijos sąnaudos; veiksnys labiausiai įtakojantis VM našumą);</li>
<li>Įrenginių ir I/O virtualizacija (sukelia ryškų įvesties/išvesties įrenginių vėlinimą).</li>
</ul>
<br />
<h3 style="text-align: center;">
<i><span style="font-size: normal;">Aparatine įranga paremta virtualizacija</span></i>
</h3>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Pirmasis aparatinio lygmens virtualizacijos {<i>hardware-assisted virtualization</i>} palaikymas x86 platformai įdiegtas 1985 metais su <i>Intel 80386</i> procesoriumi. Iš tiesų, tai nebuvo visiškosios virtualizacijos palaikymas, bet x86 architektūros suderinamumo, tarp senosios ir naujosios (<i>post-80286</i>), padidinimas. Po esminio x86 architektūros atnaujinimo su <i>Intel 80286</i> procesoriumi, tarp naujojo (<i>protected-mode</i>) ir senojo (<i>real-mode</i>) darbinio režimo, atsirado per didelis x86 architektūrinis plyšys, dėl kurio 8086 mikroprocesoriui parašytas kodas be modifikacijų negalėjo veikti naujajame (<i>protected-mode</i>) režime. Siekiant išspręsti nesuderinamumo problemas vėlesnis <i>Intel 80386</i> procesorius papildytas nauju – <i>virtual 8086 mode</i> – darbiniu režimu, kurio funkcionalumo daugeliu atveju užteko senosios programinės įrangos vykdymui.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Aparatinio lygmens virtualizacijos palaikymas leido naujiems <i>Intel 80386</i>, bei vėlesniems x86 architektūros procesoriams, imituoti 8086 procesoriaus pirminį darbo režimą {<i>real-mode</i>} techniškai neperjungiant pačio procesoriaus į senąjį darbinį režimą. Suderinamumo virtualizacija (<i>virtual 8086 mode</i>) galima iškviesti tiesiai iš apsaugotojo darbo režimo {<i>protected-mode</i>} ir sena programinį kodą vykdyti lygiagrečiai.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Įgyvendinant 8086 virtualų režimą, operacinė sistema turi specialią programinę įrangą – virtualizacijos monitorių, kuris su <i>virtual 8086 mode</i> funkcija gali sukurti saugią virtualią aplinką ir vykdyti net kelias 8086 procesoriaus programas vienu metu (<i>multi-tasking</i>). Pažymėtina, jog programos sukurtos įprastam 8086 režimui {<i>real-mode</i>}, suprojektuotos tik pavieniam darbui pagrindinėje atmintyje (<i>single-tasking</i>), tačiau virtualus 8086 režimas iškviečiama iš apsaugotojo darbinio režimo {<i>protected-mode</i>} ir programinį kodą vykdo taikomųjų programų lygmenyje (<i>Ring 3</i>), todėl susidaro daugiaprogramės (<i>multi-tasking</i>) sistemos iliuzija.
</div>
<div style="text-align: justify; text-indent: 1cm;">
Vadinasi, pirmosios virtualizacijos palaikymas x86 procesorių architektūroje įgalino daugumą programinės įrangos parašytos pirmiesiems x86 procesoriams (pvz., <i>MS-DOS</i>) veikti lygiagrečiai ne tik tarpusavyje, bet ir su nauja programine įranga, paremta saugiuoju procesoriaus darbiniu režimu (pvz., <i>MS-DOS</i> + <i>Windows 95</i>).
</div>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg9SQknpbC7DjUKbpYNsVtsIQTWEeNWHf9cnUNNP0-KM4sudVREnT95T-dvKdHAhluw_I7lD_B7qoeWLRH-dIM2CIixjQio10_Lb6RTdhcnI0O9I-upCcGaTmDjTNVCK41vEDkS1TuW2uw/s1600/Ic-photo-intel-A80386DX-33-IV-%2528386DX%2529.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="468" data-original-width="468" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg9SQknpbC7DjUKbpYNsVtsIQTWEeNWHf9cnUNNP0-KM4sudVREnT95T-dvKdHAhluw_I7lD_B7qoeWLRH-dIM2CIixjQio10_Lb6RTdhcnI0O9I-upCcGaTmDjTNVCK41vEDkS1TuW2uw/s320/Ic-photo-intel-A80386DX-33-IV-%2528386DX%2529.png" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;"><i>Intel 80386</i> centrinio procesoriaus lustas</td></tr>
</tbody></table>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Sekančio aparatinio virtualizacijos palaikymo x86 procesoriams teko laukti keletą dešimtmečių, kol <i>Intel </i>ir <i>AMD </i>kompanijos ilgai kartu vėlinusios, bet galiausiai atskirai, 2005 ir 2006 metais, pristatė gan paprastus x86 architektūros išplėtimus (<i>VT-x</i> ir <i>AMD-V</i>).
</div>
<div style="text-align: justify; text-indent: 1cm;">
Nors šie aparatinio lygmens plėtiniai palengvino x86 architektūros virtualizacijos programinės įrangos kūrimą, ženklaus našumo padidėjimo jie nedavė, lyginant su tuometiniais programinės įrangos virtualizacijos sprendimais. Tačiau vėlesni x86 architektūros virtualizacijos palaikymo išplėtimai skirti atmintinės valdymui bei tiesioginės prieigos prie fizinės mašinos išvesties/įvesties įrenginiu suteikė daugiau pasiekiamumo ir priartino virtualių mašinų našumą prie aparatinio lygmens.
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Plačiau apie aparatinio lygmens palaikymą visiškai virtualizacijai x86 architektūros kompiuterių sistemose, paravirtualizacija, bei skirtingų virtualizacijos metodų taikymą ir naudą bus rašoma kitose virtualizacijos apžvalgos dalyse.
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Verta pastebėti, jog išplėstas techninės įrangos palaikymas x86 architektūros virtualizacijai ir nuolatos besivystantis didelio pralaidumo pasaulinis kompiuterių tinklas lėmė itin sparčią debesų kompiuterijos plėtrą.
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Papildomai ir detaliau apie visiškos virtualizacijos veikimą ir jos iššūkius x86 architektūroje galima pasiskaityti šiuose straipsniuose:<br />
<ul>
<li><a href="https://www.anandtech.com/show/2480">https://www.anandtech.com/show/2480</a></li>
<li><a href="https://arstechnica.com/gadgets/2008/12/virtualization-guide-2/">https://arstechnica.com/gadgets/2008/12/virtualization-guide-2/</a></li>
<li><a href="https://arstechnica.com/information-technology/2010/02/io-virtualization/">https://arstechnica.com/information-technology/2010/02/io-virtualization/</a></li>
</ul>
</div>
<br />
<hr align="left" size="1" width="100%" />
<br />
<h3 style="text-align: start;">
<span style="font-family: inherit; font-size: large;">
Straipsnių serija skirta kompiuterių platformos virtualizacijai apžvelgti:</span></h3>
<div>
<br />
<ol>
<li><a href="https://skarware.blogspot.com/2017/07/virtualizacijos-raida-x86-sistemose.html"><b style="background-color: #d9ead3;">Virtualizacijos raida x86 architektūros kompiuterio sistemoje</b></a></li>
<li><a href="https://skarware.blogspot.com/2017/07/kompiuteriu-platformos-virtualizacijos-metodai.html" target="_blank">Kompiuterių platformos virtualizacijos metodai</a></li>
<li><a href="https://skarware.blogspot.com/2017/07/virtualizacijos-nauda-ir-taikymas.html" target="_blank">Virtualizacijos nauda ir taikymo pavyzdžiai</a></li>
<li><a href="https://skarware.blogspot.com/2017/07/visiskos-virtualizacijos-sprendimai.html" target="_blank">Populiariausi visiškos virtualizacijos sprendimai</a></li>
</ol>
<br />
<hr align="left" size="1" width="50%" />
</div>
Martynashttp://www.blogger.com/profile/00471091754225207342noreply@blogger.com0tag:blogger.com,1999:blog-5426813891256937073.post-73019822187220975952016-10-24T01:11:00.001+03:002021-07-02T23:58:35.360+03:00pfSense kompiuterių tinklo mazge<div style="text-align: justify; text-indent: 1.0cm;">
Paskutinius kelis metus nuosekliai domintis IKT administravimu, įvairių sistemų savybėmis ir galimybėmis, vis artimiau tenka susipažinti su atvirojo kodo sprendimais. Todėl neatsitiktinai naujai temai plėtoti pasirinkau atvirojo kodo sprendimą kompiuterių tinklo mazgui realizuoti – <b><i>pfSense</i></b> programinę įrangą. Sistemų administratoriams šis produktas pastebimai mėgstamas dėl savo atvirumo, plačios vartotojų bendruomenės, puikios dokumentacijos ir universalumo pritaikant jį skirtingiems kompiuterių tinklo sprendimams turint minimalius resursus tikslui pasiekti.</div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<img border="0" hspace="20" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjietjjUPDil0svN7pFzM6wftBiPGhhJuTij6EsApq_OBKpde_-GeNhUGDrVy8T_Lq3BB-BiaQE0GVJ9tGPYRzP-WVkcGc5Q3MecNqnY84zKYuyXcQ_ouoCHMFKRXVruO5HUkEHpAbKHPI/s1600/pfs1.png" style="margin: 0px; padding: 0px;" /><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiKWDldh1hTrVQiNmlUM5fMHd4DiYhyphenhyphenZucmESqAb8_VWAcWW8HrIoLFsvO85_xYqyNpTOHPqzAtlwasdjwAIQrIipfmPOPRW6_OOpfTQO5EUlnbwHnkQK3GpfVI56eNp2yiE3PBqss4Mzg/s1600/pfs2.png" style="margin: 0px; padding: 0px;" />
</div>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Šiame blogo įrašę bus apžvelgtos <i>pfSense </i>panaudojimo galimybes mažoje ir vidutinio dydžio organizacijos kompiuterių tinklo mazge. Iškelti uždaviniai straipsnio tikslui pasiekti:</div>
<ul>
<li><i>pfSense </i>ir analogiškų produktų apžvalga;</li>
<li>Pagrindinių <i>pfSense </i>savybių/funkcijų apžvalga;</li>
<li>Sumodeliuoti <i>pfSense </i>pritaikymo scenarijus organizacijos tinkle.</li>
</ul>
<br />
<h2>
<div style="text-align: center;">
<span style="font-size: x-large;"><i>pfSense </i>ir kitų tinklo užkardų sistemų apžvalga</span></div>
</h2>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Kai kuriems skaitytojams gali kilti klausimas, kas gi yra ta <i>pfSense </i>sistema, ir kuo ji ypatinga? Į šį klausimą ne taip jau paprasta atsakyti, kadangi tai labai dinamiška tinklo mazgo sistema, kuri su sąlyginai nedideliu įdirbiu gali atlikti daugybę įvairių funkcijų kompiuterių tinkle.
</div>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Pirmoji <i>pfSense </i>sistemos versija pasirodė 2004 metais, dviems kompiuterių entuziastams – <i>Chris Buechler</i> ir <i>Scott Ullrich</i> – nusprendus išplėsti tuo metu populiarios minimalistinės <i>m0n0wall </i>maršrutizatoriaus sistemos, skirtos įterptiniams prietaisams, galimybes. <i>pfSense </i>projektas siekė perkelti gerąsias <i>m0n0wall </i>maršrutizatoriaus savybes į plataus vartojimo aparatinę įrangą – įprastus personalinius kompiuterius, bei išplėsti sistemos funkcionalumą.
</div>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Šiandien <i>pfSense </i>pilnai subrendusi užkardos sistema pasižyminti stabilumu ir saugumu, bei unikaliomis funkcijomis. Neseniai <i>pfSense </i>programinei įrangai pradėta siūlyti oficiali aparatinė įranga ir oficialus mokamas palaikymas, kuris šiai sistemai atveria naujus kelius į verslo įmonių kompiuterijos infrastruktūrą, kur vidinė organizacijos reglamentuota tvarka reikalauja garantijų iš programinės įrangos gamintojo.
</div>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
<i>pfSense </i>itin dinamiška tinklo sistema, kuri su sąlyginai nedideliu įdirbiu gali atlikti daugybę įvairių funkcijų kompiuterių tinkle. Vis dėlto, <i>pfSense </i>pirmiausia įvardijama kaip užkardos sistema, o viena svarbiausia jos ypatybė yra ta, kad tai nemokamas atvirojo kodo sprendimas. Galima tarti, kad šio straipsnio tikslas ne tik apžvelgti <i>pfSense </i>galimybes organizacijos kompiuterių tinklo mazge, bet ir nemokamo atvirojo kodo perspektyvas, kadangi <i>pfSense </i>dažnai įvardijama kaip geriausia, nemokamos ir atvirosios programinės įrangos, tinklo užkardos ir maršrutizatoriaus sistema.
</div>
<br />
<div class="separator" style="clear: right; float: right; margin-left: 1em; text-align: center;">
<img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg85FJamZqxdH-6FdsKkutymDTjZsrmy1XOgRJ7AHxFAbS1DtgBtZPEGivNmY9AtObiblDlwSGE4ZU_KbJGfI61mQP5b9YztRItAxMYeB6UlfJEQ2acSNyjwueJXTvkt05b7ciLpl82eYw/s1600/320px-Freebsd_logo.svg.png" /></div>
<div style="text-align: justify; text-indent: 1.0cm;">
<i>pfSense </i>užkardos sistema paremta populiarios <i>Unix </i>operacinės sistemos pagrindu – <i>FreeBSD</i>, kuri savarankiškai yra užsitarnavusi vienos geriausios tinklo OS vardą. Tačiau norint naudotis sistemos tiekiamomis funkcijomis nebūtina išmanyti <i>FreeBSD </i>operacinės sistemos, <i>pfSense </i>sprendimas platinamas su patogia ir funkcijomis turtinga grafine vartotojo sąsaja (GUI), todėl užtenka turėti stiprius kompiuterių tinklų pagrindus ir patirties su analogiškais produktais.
</div>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Iš tiesų, pats pavadinimas kilęs iš minties, jog <i>pfSense</i> palengvina paketų filtravimo įrankio <i>pf </i>valdymą (<i>pf+Sense</i>) neįgudusiam <i>FreeBSD </i>OS vartotojui. Esant poreikiui <i>pfSense </i>sistemą galima valdyti ir tiesiogiai per komandinės eilutės sąsają (CLI), jungiantis per SSH loginį kanalą ar nuoseklųjį prievadą {<i>serial port</i>}.</div>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgN2y6NBgoaglUTG4SjHpAQ9EzjTXedqIJpV1Gi2ED-rMx7SD8v6SswqbPvBkU8OQ5vBLxvZwHtpoHuSz80aPdQj9RDQv8fg-_KD7w8Aw2CMUg9rCXwkeliHzl_R0u-iigLC-ytVh2QuGU/s1600/PfSense_2.3.2.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="640" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgN2y6NBgoaglUTG4SjHpAQ9EzjTXedqIJpV1Gi2ED-rMx7SD8v6SswqbPvBkU8OQ5vBLxvZwHtpoHuSz80aPdQj9RDQv8fg-_KD7w8Aw2CMUg9rCXwkeliHzl_R0u-iigLC-ytVh2QuGU/s640/PfSense_2.3.2.jpg" width="543" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;"><b><i>pfSense </i></b>grafinė vartotojo sąsaja</td></tr>
</tbody></table>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Nors <i>pfSense </i>kūrėjai savo produktą pirmiausia pristato kaip pažangią užkardos sistemą, ji turi ir labai stiprius maršrutizatoriaus bruožus. Apskritai visos užkardos dėl savo prigimties turi paketų maršrutizavimo savybę, bet verta paminėti, jog <i>pfSense </i>sistema turi savybių kurios daro ją ypač patrauklią maršrutizavimo funkcijai kompiuterių tinkle atlikti. Iš tiesų, <i>pfSense </i>dažnai naudojama ne tik kaip perimetro, vidinio tinklo užkarda ar maršrutizatorius, bet ir kaip WEB Proxy, DHCP, DNS, PPPoE serveris bei VPN ar fiksuotos prieigos {<i>captive portal</i>} tinklo paslaugoms teikti.
</div>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Kaip žinia, užkardos sistema yra pirmoji gynybos linija tarp interneto ir vidinio kompiuterių tinklo, ji užkerta atvirą prieigą bei kitą nesankcionuotą veiką tarp atskirtų, bet sąveikaujančių tinklų. Dėl to, tinkamas tinklo saugos įrengimas ir valdymas yra ypač svarbus ir būtinas uždavinys kiekvienos organizacijos kompiuterių tinklui.</div>
<blockquote class="tr_bq">
Daugiau apie Internete slypinčias grėsmes skaitykite kitame mano blogo straipsnyje: <b><a href="https://skarware.blogspot.com/2017/08/kibernetines-erdves-pazeidziamumas.html" target="_blank">Kibernetinės erdvės pažeidžiamumas</a></b>
</blockquote>
<br />
<h3>
<div style="text-align: center;">
<i><span style="font-size: normal;">Aparatinė ir programinė tinklo užkardos sistema</span></i></div>
</h3>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Kompiuterių tinklo užkardos sistemos skirstomas į du tipus – aparatinę {<i>hardware-based</i>} ir programinę {<i>software-based</i>}. Dažniausiai įmonės savo kompiuterių tinkle naudoja dedikuotus užkardos prietaisus, iš dalies dėl to, jog tikisi tikros aparatinės užkardos sistemos, kuri pasižymi didesne sparta už programinius sprendimus. Vis dėlto, dauguma modernių dedikuotų užkardos sistemų yra paremtos programine įranga ir įprasta, plataus vartojimo, x86/ARM architektūros aparatine įranga (maksimaliai pritaikyta darbui tinkle). Toks tinklo užkardos sistemos plėtojimo modelis pasižymi dideliu lankstumu ir leidžia užkardos plėtotojui vieną sprendimą pasiūlyti keliomis formomis. Taigi, šiandiena tinklo užkardos sistemos dažnai siūlomos ne tik kaip atskiras tinklo prietaisas {<i>hardware appliance</i>} ar programinės įrangos pavidalu {<i>software appliance</i>}, bet ir kaip virtualus prietaisas {<i>virtual appliance</i>}.
</div>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjygguMkf2JnOa2D_9bw902ugL4M_HP1tTNVfO0kyTbOeZqG7suX1EXcewkq2_r4DfNT4wYrFDXoUGj7fTC4SSE1_kIdpy8CKyzC0HRqHeAN2Phr2BNE5RtHlHahCvHUmoeZSt8OcN2Pi8/s1600/pfsense+on+firebox+hardware2.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="265" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjygguMkf2JnOa2D_9bw902ugL4M_HP1tTNVfO0kyTbOeZqG7suX1EXcewkq2_r4DfNT4wYrFDXoUGj7fTC4SSE1_kIdpy8CKyzC0HRqHeAN2Phr2BNE5RtHlHahCvHUmoeZSt8OcN2Pi8/s640/pfsense+on+firebox+hardware2.jpg" width="640" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;"><i><b>pfSense</b> </i>sistema įžūliai įdiegta ant konkurentų geležies (<i>Firebox x1250e</i>). Paleista sėkmingai nes viduriai <b>x86</b> architektūros.</td></tr>
</tbody></table>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Programine įranga paremtose užkardose {<i>software-based</i>} visą darbą – koordinuojant veiksmus ir apdorojant tinklo paketus – atlieka bendro pobūdžio, x86 architektūros procesorius iš <i>Intel </i>ar AMD kompanijos.</div>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Tuo tarpu tikslingai aparatiniais įtaisais paremtoje užkardos sistemoje {<i>hardware-based</i>}, centrinis procesorius atlieka tik bendras koordinavimo užduotis, o tinklo paketus apdoroja ypač spartūs specifinėms užduotims pritaikyti integriniai grandynai {<i>Application-Specific Integrated Circuit</i>} (ASIC).
</div>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Vienas ASIC lustas paprastai skirtas vienai funkcijai atlikti, todėl tinklo mazgo sistemos paremtos specializuota aparatine įranga turi ne vieną ASIC lustą įvairioms užduotims vykdyti. Vienas integrinis grandynas gali atlikti paketų perdavimo funkciją, antras ACL sąrašo apdorojimą, trečias išplėstinę paketų turinio patikrą pagal aiškiai apibrėžtus saugos parametrus, o dar kitas vykdyti tik šifravimo ir dešifravimo algoritmus. Visi šie integriniai grandynai atskiroms funkcijoms atlikti yra sudėtingos loginės schemos, kurios dėl ribotos gamybos apimties padidina bendros sistemos produkcijos išlaidas. Todėl tokie prietaisai ne tik daug spartesni, bet ir brangesni už bendro pobūdžio aparatine įranga paremtas tinklo sistemas, kurių gamybos mastai ženkliai didesni, taigi ir projektavimo išlaidos padalinamos didesnei lustų produkcijos aibei. Antra vertus, jei projektuojant ASIC lustus juose įsivėlė klaidą, po integrinio grandyno pagaminimo ir įmontavimo į prietaisą, jų nebegalima pataisyti, kad ir koks kritinis trikdis būtų atrastas. Tuo tarpu programine įranga paremtose tinklo mazgo sistemose atradus klaidą, kaip ir bet kurią kitą programinę įrangą vykdomą ant bendro pobūdžio aparatinės įrangos (pvz., <i>Windows </i>OS, <i>Chrome </i>naršyklę), galima atnaujinti, ištaisyti klaidas ar išplėsti sistemos galimybes įdiegiant papildomas funkcijas.</div>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEieda0NlbvHZX3-K1yvppx2e4lVD4dlnXyMtOTmmkLS66P266bnEcRxjiNdacmI7V4v9iG7cMAh18IUuKR3dnLQL2U3MGoQop3ecytPXt7upYwD_P-qR4TCMST2l4OfmDv2cwuGatI2EB4/s1600/HP+ProCurve+2824+board.JPG" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="480" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEieda0NlbvHZX3-K1yvppx2e4lVD4dlnXyMtOTmmkLS66P266bnEcRxjiNdacmI7V4v9iG7cMAh18IUuKR3dnLQL2U3MGoQop3ecytPXt7upYwD_P-qR4TCMST2l4OfmDv2cwuGatI2EB4/s640/HP+ProCurve+2824+board.JPG" width="640" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;"><b><i>HP ProCurve 2824</i></b> komutatoriaus viduriai. Plokštėje oranžine spalva pažymėtoje srityje, vadinamoje <b><i>switching fabric</i></b>, matomi <b>ASIC </b>lustai. Ši sritis nepriklausoma nuo CPU. Todėl prietaisas ypač sparčiai komutuoja paketus tarp <i><b>Ethernet</b> </i>prievadų.</td></tr>
</tbody></table>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Aparatine įranga paremtas paketų apdorojimas neretai būna trečio lygmens savybėmis pasižyminčiuose komutatoriuose ar verslo klasės maršrutizatoriuose. Tačiau šie prietaisai siūlo tik elementarias tinklo paketų apdorojimo funkcijas. Tokių prietaisų pirminė paskirtis ne tinklo apsauga, todėl jų užkardos galimybės dažniausiai apsiriboja paketų antraščių iki transportinio lygmens filtravimu. Jų visapusiškai įmonės kompiuterių tinklo apsaugai nepakanka.
</div>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Nors ASIC lustų naudojimas dedikuotame tinklo prietaise daro juos našesniais, užkardos sistemų plėtotojai vis dažniau patiki tinklo paketų apdorojimą plataus vartojimo aparatūrai. Dėl to dalinai atsakinga <i>Intel </i>kompanija, kuri į savo x86 architektūros procesorių įdiegia vis daugiau naujų posistemių konkrečioms užduotims atlikti: pav., kriptografijos funkcijų paspartinimas su <i>Intel</i> <i>QuickAssist </i>posisteme ar tinklo paketų našesnis apdorojimas su <i>Intel Hyperscan </i>ir <i>DPDK</i> technologijomis. Šie ir panašūs sprendimai ženkliai mažina x86 architektūra paremtų prietaisų našumo atotrūkį, apdorojant tinklo paketus, nuo aukštos klasės prietaisų su ASIC lustais..</div>
<br />
<h3>
<div style="text-align: center;">
<i><span style="font-size: normal;">Visapusiška tinklo užkardos sistema {Unified Threat Management}</span></i></div>
</h3>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Programinės įrangos atliekančios maršrutizavimo ir užkardos funkcijas tikrai netrūksta, jų sąrašas gana ilgas: <i>IPCop</i>, <i>IPFire</i>, <i>ZeroShell</i>, <i>SmoothWall</i>, <i>iptables</i>, <i>VyOS</i>, <i>Open Edgewize </i>ir kt. Dažnai <i>pfSense </i>sistema priskiriama įprastų tinklo paketų paskirstymo ir blokavimo programinės įrangos grupei, tačiau <i>pfSense </i>sugretinimas tik su maršrutizavimo ir užkardos funkcijas atliekančiais programinės įrangos produktais nebus tikslus, kadangi <i>pfSense </i>su išplėtimo moduliais palaiko gerokai platesnį spektrą tinklo mazgo funkcijų. Dalis vartotojų šią sistemą priskiria UTM sistemos kategorijai, nors <i>pfSense </i>su savo pirminėmis funkcijomis ir nėra grynas iš prigimties šio segmento atstovas. Tačiau atsižvelgiant į galimybę <i>pfSense </i>funkcionalumą praplėsti diegiant į jį modulius – trečiųjų šalių programinę įrangą <i>(pvz., anti-virus</i>, <i>Snort</i>, <i>Squid </i>ir kt.), kurie suteikia naujas funkcijas, išplėstas <i>pfSense </i>funkcionalumas gali būti sugretintas su UTM produktais. </div>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgvbpqE-tboH-0LN5EE5TeOVqXgpzzw9xBqc5aCulTsOAszPioUKSbGwe7OBUjbSrIv6Z3aTtcMhX_z2gB25eYi0Y8-Z3Jck1np9p-FQzbG_G9x0np1S6_7MrDCoCQtRj7SqHnfN8b_ekg/s1600/basic_UTM_functions.png" /></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Tipinės <b>UTM </b>sistemos funkcijos</td></tr>
</tbody></table>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
UTM akronimas sudarytas iš angliškos frazės žodžių pirmųjų raidžių – <i>Unified Threat Management</i>. Paprastai kalbant tai tinklo saugos sprendimas įmonėms, siūlantis ne tik tinklo užkardos funkciją, bet visapusišką IT laikams kompetentingą saugos sprendimą, tarp kurių: tinklo įsilaužimo prevencijos priemonės (IDS/IPS), tinklo vartų kenkėjiškų programų ir turinio žvalgyklė {<i>anti-virus/spam</i>}, turinio filtravimo, spartinimo ir stebėjimo įrankiai {<i>content filtering/caching/monitoring</i>}; neretai UTM produktai turi integruotas VPN ir srauto ribojimo, valdymo {<i>traffic control</i>} ir balansavimo {<i>load balancing</i>} funkcijas; suteikia priemones ypač patikimam tinklo mazgo realizuoti {<i>fail-over</i>} bei daug kitų funkcijų, kurios kinta tarp skirtingų UTM produktų.<br />
<br /></div>
<h3>
<div style="text-align: center;">
<i><span style="font-size: normal;">pfSense ir analogiškų produktų palyginimas</span></i></div>
</h3>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
UTM kategorijoje <i>pfSense </i>dažnai lyginamas su gerai žinomomis užkardų sistemomis iš <i>Sophos </i>ir <i>Untangle </i>programinės įrangos gamintojų, skirtų visapusiškai kontroliuoti tinklo vartotojų veiklą ir apsaugoti nuo interneto nepageidaujamų savybių. Tai ką galima išgauti iš <i>pfSense </i>nemokamai, <i>Sophos </i>ir <i>Untangle </i>sprendimai verslo sektoriui dažnai kainuoja tūkstančius eurų (licenzijos kaina priklauso nuo įmonės kompiuterių skaičiaus ir pageidaujamų funkcijų). Kita vertus, <i>pfSense</i> programinės įrangos minusas tas, jog norint padaryti alternatyvą mokamiems užkardų sistemų produktams reikia daugiau sistemų administratoriaus įdirbio, papildomo laiko ir įgūdžių <i>Unix </i>tipo operacinėse sistemose. Trumpai – efektyviam <i>pfSense </i>panaudojimui reikia talentingo sistemų/tinklų administratoriaus. Papildomų <i>pfSense </i>funkcijų įdiegimas moduliais, sudarytų iš trečiųjų šalių programinės įrangos, retai veikia be trikdžių kelių mygtukų paspaudimu. Tuo tarpu <i>Sophos </i>ar <i>Untangle </i>produktų gamintojų strateginis tikslas visas UTM funkcijas integruoti į bendrą produktą ir supaprastinti jų valdymą iki mažiausių administratoriaus pastangų – reikalingo laiko ir žinių. Pažangias tinklo saugos funkcijas galima įjungti vieno mygtuko paspaudimu.</div>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgOaxZLlqjEccNtAmzibwVtoGwyispsupQQ4q-yFRkuNoq8xtrF0Ov_IAHt2XPU3DodW52OHJHNJVGNLW_OjkWQwuouCtmoi4uh1Ou-yA2kbZZxQ1Z2OrDH6_afzXIuvSlp2hIO6pb7uUw/s1600/untangle+dashboard.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="312" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgOaxZLlqjEccNtAmzibwVtoGwyispsupQQ4q-yFRkuNoq8xtrF0Ov_IAHt2XPU3DodW52OHJHNJVGNLW_OjkWQwuouCtmoi4uh1Ou-yA2kbZZxQ1Z2OrDH6_afzXIuvSlp2hIO6pb7uUw/s640/untangle+dashboard.png" width="640" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;"><b><i>Untangle </i></b>UTM grafinė vartotojo sąsaja</td></tr>
</tbody></table>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Kita vertus, <i>Sophos </i>ir <i>Untangle </i>naudoja <i>Linux </i>branduolį, o <i>pfSense </i>sukurta <i>FreeBSD </i>sistemos pagrindu, kuri tarp tinklo administratorių turi nepriekaištingą reputaciją dėl savo stabilumo ir spartos tinklo mazge. Paplitęs įsitikinimas, jog <i>FreeBSD </i>turi užgrūdintą tinklo paslaugų steką, kuris net didelių perkrovų laikotarpiu nenulūžta, o tik sulėtėja jo paketų apdorojimo našumas. Tuo tarpu sistema su <i>Linux</i> branduoliu prie didelių tinklo apkrovų gali būti mažiau stabili, nelygu kuri <i>Linux </i>distribucija ar kita <i>Linux </i>modifikacija naudojama.</div>
<br />
<blockquote class="tr_bq">
Apie <i>BSD </i>ir <i>Linux </i>operacinių sistemų našumą tinkle skaitykite kitame mano blogo straipsnyje: <b><a href="https://skarware.blogspot.com/2017/08/bsd-ir-linux-os-nasumo-testavimas.html" target="_blank"><i>BSD </i>ir <i>Linux </i>OS našumo testavimas: užkardos atžvilgiu</a></b>
</blockquote>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Lyginant <i>pfSense</i>, <i>Sophos </i>ir <i>Untangle </i>UTM programinės įrangos patogumą vartotojo atžvilgiu, lengviausiai valdoma yra <i>Untangle</i>, ji reikalauja mažiausiai vartotojo išmanymo. Kiek sudėtingiau valdoma <i>Sophos </i>UTM užkardos sistema, o daugiausia įgūdžių ir žinių reikalauja <i>pfSense</i> administravimas. Vertinant grafinę vartotojo sąsają <i>Sophos </i>ir <i>Untangle </i>sistemos, kaip jau buvo minėta, pasižymi supaprastintu, patogiu ir intuityviu valdymu. Tuo tarpu <i>pfSense </i>GUI išdėstymas naujam vartotojui gali pasirodyti chaotiškas, be to, kai kurioms išplėstinėms funkcijoms konfigūruoti gali prireikti ir sąveikos su komandinės eilutės sąsaja. Nepaisant galimai painesnio <i>pfSense</i> administravimo, ši sistema siūlo labiausiai detalizuotą valdymą bei unikalias funkcijas, kurių dalies atitikmenų nėra kituose produktuose. Pagal unikalias funkcijas būtina pažymėti ir <i>Sophos </i>UTM, ji vienintelė iš paminėtų sistemų gali pasiūlyti centralizuotą valdymą ir integruojamas galinių taškų apsaugos priemones.
</div>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Dar vienas neabejotinas <i>pfSense </i>pranašumas tai minimalūs reikalavimai aparatinei įrangai, jie ženkliai mažesni už <i>Untangle </i>ir <i>Sophos</i>. Todėl <i>pfSense </i>ypač populiarus pasirinkimas ir sistemų administratorių namuose, kur iš dešimtmečio senumo kompiuterio galima pasistatyti daugelį kartų spartesnį ir funkcionalumu turtingesni vietinio tinklo saugos prietaisą net už pačius brangiausius namų rinkai skirtus maršrutizatorius. Antra vertus, mažas <i>pfSense </i>resursų poreikis supaprastina užkardos sistemos virtualizaciją vienoje fizinėje mašinoje kartu su kitomis, skirtingų tarnybų, virtualiomis mašinomis. Tai padeda taupyti turimus resursus jei tinklo srautas nėra didelis ir statyti atskirą fizinę aparatūra nėra būtina. Virtualizacija turi dar vieną ryškų privalumą – kaip ir visas virtualizuotas sistemas, sukonfigūruotą ir pilnai funkcionuojančią <i>pfSense </i>sistemą ypač patogu perkelti į kitą, kad ir visiškai skirtingų parametrų fizinę mašiną su tuo pačiu hipervizoriu.</div>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjOFSWqo3vRQPOCb685SttXcD8t7bRELkKbIGM9eESStUYMKNsHDvj1RN-0qMrIxXakGdgKRLyxRsnonJDkgHov6be-eyYTQgxO0dr-SdjThDwZ9sE1jDgwKy_TkXbpsm_k6zJuCsGzPak/s1600/PfSense_router_old_pentium_3.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjOFSWqo3vRQPOCb685SttXcD8t7bRELkKbIGM9eESStUYMKNsHDvj1RN-0qMrIxXakGdgKRLyxRsnonJDkgHov6be-eyYTQgxO0dr-SdjThDwZ9sE1jDgwKy_TkXbpsm_k6zJuCsGzPak/s1600/PfSense_router_old_pentium_3.jpg" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Žmogus inžinierius pasigamino maršrutizatorių iš seno <b><i>Pentium III</i></b> kompiuterio su <b><i>pfSense </i></b>programine įranga. Taip pat užklijavo lipdukų, jog žmona neišjungtu per klaidą.</td></tr>
</tbody></table>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Užsiminus apie namų kompiuterių vietinius tinklus verta trumpai paminėti, jog neįgudusiems namų vartotojams iš visų paminėtu tinklo saugos sistemų, dėl paprasto valdymo ir funkcijų gausos, rekomenduotina ir tikslinga naudoti <i>Sophos UTM Home Edition</i>. Nors ši veikia tik pirmiems 50 IP adresų/prietaisų, bei dalinai riboja VPN ir AV galimybes (daugumai namų vartotojų šie apribojimai nėra svarbūs ar pastebimi), tačiau praktiškai leidžia naudotis visomis saugumo ir tinklo valdymą užtikrinančiomis funkcijomis. Nors <i>Untangle </i>užkardos sukonfigūravimas ir priežiūra daug paprastesnė neįgudusiam vartotojui, šios sistemos kūrėjai nėra tokie dosnūs namų vartotojams – dauguma visapusiškos apsaugos funkcijų yra apribotos arba išjungtos be papildomo mokesčio. Namų tinklo atžvilgiu <i>pfSense </i>labiau dera kompiuterių entuziastams, kurie nebijo, o galbūt ir nori išmokti dirbti su aukštos klasės prietaisų siūlomomis funkcijomis, pradedant nuo paprasčiausių galimybių realizavimo namų vietiniame tinkle.</div>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhHTy1VgT0GJumBrYehGbzmnvpiAHCd2TKEwUpMoJ1fX6Tc9sz0ymOo5cZGSz9m5s7VVArVlhiwcXYQbLTRiQXuINVO44ApxRmFOS-7mxhRwFLr6KyONvY2o29rBZ0E9-rS3QV08GJ1Yl4/s1600/Sophos+UTM+9+dashboard.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="517" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhHTy1VgT0GJumBrYehGbzmnvpiAHCd2TKEwUpMoJ1fX6Tc9sz0ymOo5cZGSz9m5s7VVArVlhiwcXYQbLTRiQXuINVO44ApxRmFOS-7mxhRwFLr6KyONvY2o29rBZ0E9-rS3QV08GJ1Yl4/s640/Sophos+UTM+9+dashboard.png" width="640" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;"><b><i>Sophos </i></b>UTM grafinė vartotojo sąsaja</td></tr>
</tbody></table>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Kita sritis kur išsiskiria <i>pfSense</i>, tai vartotojų bendruomenės dydis. Būdama atviro kodo ir nemokama programinė įranga su unikaliomis galimybėmis tinklo paslaugoms tiekti, <i>pfSense </i>nuo pat pradžios traukė IT administratorių dėmesį, kaip ypač saugi ir stabili sistema tinklo mazgui diegti. Iš nuolatos besiplečiančios bendruomenės internete per ilgą laiką susikaupė nemažai informacijos kaip išspręsti iškilusias <i>pfSense </i>pritaikymo problemas. Taip pat, dėl gausaus propaguotojų skaičiaus, galima diskusijų svetainėse paprašyti konsultacijos diegiant <i>pfSense </i>sprendimus tinklo mazge. Nepaisant nemokamos pagalbos interneto bendruomenėje, <i>pfSense </i>plėtotojai neseniai pradėjo siūlyti ir mokamą profesionalią pagalbą bei kitas savo sistemos palaikymo paslaugas – tai knygos ir įvairūs mokymai apie <i>pfSense </i>sistemos konfigūraciją, bei reali profesionalų konsultacija iškilusioms problemoms spręsti, kurie be visa kito padeda numigruoti esamus tinklo mazgo sprendimus į <i>pfSense</i> programinę įranga. Kita vertus <i>Sophos </i>ir <i>Untangle </i>turi oficialią dokumentaciją bei taip pat siūlo profesionalų mokamą palaikymą.
</div>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Apibendrinant paminėtas <i>pfSense </i>savybes galima geriau suprasti kodėl ši užkardos sistema dažno IKT administratoriaus nuomone yra viena geriausių atvirojo kodo sistemų kompiuterių tinklo mazgui įdiegti. Šiai dienai tai pilnai subrendęs, stabilus ir saugus tinklo užkardos/maršrutizatoriaus sprendimas su pavydėtinomis savybėmis net mokamiems analogiškiems produktams. Todėl <i>pfSense</i> programinė įranga gali, o galbūt ir turi būti vienas iš kandidatų renkantis smulkaus ir vidutinio dydžio organizacijos kompiuterių tinklo užkardos sistemą.</div>
<br />
<h2>
<div style="text-align: center;">
<span style="font-size: x-large;"><i>pfSense </i>taikymas organizacijos kompiuterių tinkle </span></div>
</h2>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Kaip jau minėta, <i>pfSense </i>yra labai dinamiška sistema, jos pritaikymo galimybės kompiuterių tinklo mazge gana įvairios. Šiame skyriuje trumpai bus apžvelgtos tik pagrindinės savybės ir dažniausiai naudojamos funkcijos, kurios padės geriau suprasti <i>pfSense </i>sistemos galimybes organizacijos vietinio tinklo sprendimuose.
</div>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Nors <i>pfSense </i>dažniausiai aptinkamas mažo ir vidutinio dydžio organizacijų kompiuterių tinkluose, ypač tų kurių finansai suvaržyti, internete galima surasti nemažai sėkmės istorijų šią sistemą pritaikant ir didelių organizacijų kompiuterių tinkluose. Dažniausiai tai drąsūs administratoriai iš akademinės srities, liudijantys <i>pfSense </i>stabilumą ir gebėjimą aptarnauti studentų miesteli su +1000 tinklo prietaisų naudojant vidutinio galingumo geležį.</div>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
<i>pfSense </i>sistema jau daugelį metų vertinama ir Jungtinės Karalystės <i>geimerių</i> suvažiavimuose – <i>Insomnia Gaming Festival</i>, kuri organizuoja tinklo žaidimų vakarones ir <a href="https://blog.multiplay.com/getting-gigglebits-to-gamers-how-we-scale-pfsense-at-temporary-events-36e7ca73ba11" target="_blank">patiki <i>pfSense </i>įrangai aptarnauti daugiau nei 3000 kompiuterių tinklą</a>. Kaip žinia kompiuterių žaidimai tinkle itin reiklūs patikimam ryšiui ir spartai, o paketų delsa netoleruotina.</div>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Toliau pateikta keletas dažniausiai pasitaikančių <i>pfSense </i>taikymo modelių menamos įmonės kompiuterių tinkle, pagal darbuotojų skaičių priklausančios smulkiam ar vidutiniam verslui. Remiantis <i>Lietuvos Respublikos</i> įstatymais mažo ir vidutinio verslo subjektuose dirba ne daugiau kaip 50 ir 250 darbuotojų atitinkamai. Tai leidžia susidaryti bendrą vaizdą apie prietaisų skaičių, prijungtų prie vidinio kompiuterių tinklo. Antra vertus, vienas darbuotojas gali turėti keletą tinklo prietaisų.
</div>
<br />
<h3>
<div style="text-align: center;">
<i><span style="font-size: normal;">Kompiuterių tinklo perimetro užkarda {Perimeter firewall}</span></i></div>
</h3>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXi83i2tyZABmKezhNXQprfS4R3rxDY-oCkVC0I6Jsu3RnM3NKVDQijGegCJa84iqvnxOaye5SIgvfXQYl2lATJPHQZ3d9BP3reHNNxtVwB2JKFjT-Wrz8KBynj-n9yXrU3ekf0fYZi0M/s1600/perimetro.PNG" /></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Menamos įmonės tinklo loginė schema su <b><i>pfSense </i></b>perimetro užkarda</td></tr>
</tbody></table>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Vienas dažniausių <i>pfSense </i>taikymo atvejų mažos ir vidutinės organizacijos kompiuterių tinkle – kompiuterių tinklo perimetro užkardos sistema – pirmoji gynybos linija tarp interneto ir vidinio tinklo, kuri padeda užtikrinti stabilų ir patikimą ryši bei užkirsti nesankcionuotą veiką tarp atskirtų, bet tiesiogiai sąveikaujančių tinklų.
</div>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Viršuje paveikslėlyje pateikta bendra tinklo perimetro užkardos loginė schema <i>pfSense</i> galimybėms pabrėžti. Kaip matyti iš schemos <i>pfSense </i>sugeba suderinti daugiau nei vieną WAN apjungimą. Neretai kelios WAN ryšio sąsajos jungiamos su skirtingais interneto paslaugų tiekėjais (ISP), norint užtikrinti nenutrūkstamą interneto ryšį ir duomenų srauto balansavimą per CARP protokolą. Tuo būdu, jei vienas interneto kanalas tampa neveiklus, vidinio tinklo vartotojai gali pasiekti viešąjį tinklą per kitą, vis dar veikiantį interneto kanalą. Kadangi ryšio kanalai priklauso skirtingiems interneto paslaugų tiekėjams ir yra nepriklausomi vienas nuo kito, tikimybė, jog abu nustos veikti vienu metu labai maža.
</div>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
<i>pfSense </i>tinklo perimetro užkardos sistema su maršrutizavimo funkcija gali užtikrinti ne tik kelių WAN sąsajų apjungimą, bet ir kelių DMZ tinklų ar vietinių tinklų segmentavimą į atskirus potinklius, kurie gali turėti vienodas ar skirtingas sąsajas.</div>
<br />
<h3>
<div style="text-align: center;">
<i><span style="font-size: normal;">Tinklo perimetro ir vidinio tinklo maršrutizatorius {LAN/WAN router}</span></i></div>
</h3>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhBJDCE6GOhSu75ognIvPYSPx9kOay8LAM_tgTDYHwEcVghVJ9cSIr856HRcLVPETZK0l72HevniTxFIXfnqJInuvk-vU-XELsEpccarHWW-29X4yYqlp0rPmdMl7Vq8sNnSEhx2KTIKgQ/s1600/marsrutizatoriai.PNG" /></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Menamos įmonės tinklo loginė schema su <b><i>pfSense </i></b>maršrutizatoriais</td></tr>
</tbody></table>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
<i>pfSense </i>sistema turi labai stiprius maršrutizatoriaus bruožus, todėl nereta<i> </i>tinklo administratoriai ją pritaiko kaip pavienį perimetro (WAN) ar vidinio (LAN) tinklo maršrutizatorių (žr. pav. viršuje). Vidutinio ir didesnio dydžio kompiuterių tinkluose, kurių jungtys <i>sodriai prisotintos</i> paketų srautu, tai atskiras tinklo mazgo vaidmuo <i>pfSense </i>sistemai. Tačiau, jei aparatinės įrangos parametrų užtenka kelioms funkcijoms vykdyti, pvz., mažoje ar vidutinėje organizacijoje su nedideliu kompiuterių ūkiu, maršrutizatoriaus vaidmuo integruojamas į perimetro užkardos sistemą.</div>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Kalbant apie vidutinius ir didesnius kompiuterių tinklus, naudinga, o kartais ir būtina, vidinį tinklą segmentuoti į atskirus potinklius norint pagerinti tinklo našumą, valdymą ir saugumą. Apsaugoti jį ne tik iš išorės, bet ir nuo grėsmių iš vidaus. Tam <i>pfSense </i>sistema siūlo patikimą vidinio maršrutizatoriaus sprendimą, nes palaiko virtualių vietinių tinklų protokolą 802.1Q (VLAN) ir pagrindinius vidinio tinklo maršrutizavimo protokolus (RIP ir OSPF). VLAN leidžia nepaisyti fizinės tinklo topologijos ir sukurti loginius vietinius tinklus net tarp fiziškai atskirų jo dalių, o vidinio tinklo maršrutizavimo protokolai palengvina tinklų administravimą.</div>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
<i>pfSense </i>sistema gali tarnauti ir kaip patikimas perimetro maršrutizatorius. Tam ši sistema turi ne vieną funkciją, kaip jau buvo užsiminta, su <i>pfSense </i>sistema galima apjungti keletą interneto paslaugų tiekėjų ir užtikrinti nenutrūkstamą ryšį ir apkrovos balansavimą; virtualius IP adresus ir unikalias tinklo adresų transliavimo dalybas išeinantiems ryšiams (<i>NAT pooling for outbound connections</i>). <i>pfSense </i>programinė įranga taip pat palaiko BGP protokolą, skirtą autonominiams tinklams sujungti, kurie formuoja viešąjį tinklą – internetą. Bei daugelis kitų funkcijų, kurių reikalauja didžioji dauguma kompiuterių tinklų.</div>
<br />
<h3>
<div style="text-align: center;">
<i><span style="font-size: normal;">Virtualus privatus tinklas {Virtual Private Network}</span></i></div>
</h3>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi0Ing-00X1cv2dDdwsO0NQi7ymWRv6KnIJaBQwwxd_T9jAULcGrzkT9oVRwJ1XU11gKI_h4kG_ACoxynuQaxAI1gplrmV2-8i96qZjh8Div5eK9n5L5nMhYaheGF8W5_yGkcKed3PRjtY/s1600/vpn.PNG" /></td></tr>
<tr><td class="tr-caption" style="text-align: center;"><br />
Menamos įmonės tinklo loginė schema su <b><i>pfSense </i></b>virtualiuoju privačiu tinklu</td></tr>
</tbody></table>
<div style="text-align: justify; text-indent: 1.0cm;">
Kitas populiarus <i>pfSense </i>sistemos panaudojimas organizacijos kompiuterių tinkle – virtualusis privatusis tinklas {Virtual Private Network} (VPN). Neretai net vidutinio dydžio įmonės turi tarpusavyje atskirtus savo filialus keliose geografinėse vietovėse, kurių tiesiogiai fiziškai nesujungsi dėl didelių atstumų, o nuomojant išskirtąją liniją iš antrųjų šalių, nėra praktiškas sprendimas finansiniu požiūriu. Tokiose situacijose geriausia ir dažniausiai naudojami vadinamieji <i>site-to-site</i> ar <i>point-to-site</i> VPN sujungimo metodai.</div>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Pirmuoju atveju (<i>site-to-site</i>) per interneto tinklą saugiu šifruotu kanalu sujungiami fiziškai atskiri įmonės kompiuterių tinklai į vieną loginį vietinį tinklą (žr. pav. viršuje). Antrasis atvejis (<i>point-to-site</i>) pravartus keliaujantiems ar iš namų dirbantiems organizacijos darbuotojams, kuriems reikalinga prieiga prie įmonės vidinio tinklo resursų.
</div>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
VPN funkcijai atlikti galima naudoti atskirą pavienį tik tai užduočiai skirtą prietaisą su <i>pfSense</i> sistema jei reikalingas ypač didelio duomenų srauto pralaidos VPN kanalas, arba integruoti į bendrą, pvz., perimetro užkardos sistemą. </div>
<br />
<h3>
<div style="text-align: center;">
<i><span style="font-size: normal;">Bevielės prieigos taškas ir fiksuota prieiga {Captive Portal}</span></i></div>
</h3>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEir98Gui1qSVpNB8RzMFhxwhg09Nb87_EQDhHcZJh6g-jibnTrdUPgNWd1_jlSDP_-eEkAu6FQbx-TCLANtssdFxLcgcbb3wpuJqtSVmZSuWhQV-743ZKANTKCVOVl17p6wrZ41bAb4v7g/s1600/WAP.PNG" /></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Menamos įmonės tinklo loginė schema su <b><i>pfSense </i></b>bevieliu prieigos tašku</td></tr>
</tbody></table>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Remiantis <i>pfSense </i>duomenimis, nemaža dalis jos sistemos vartotojų dislokuoja šią sistemą tinklo mazge kaip bevielio ryšio prieigos tašką (žr. pav. viršuje). Nors galima bevielės prieigos taško integracija į daugelio paskirties tinklo mazgą kaip papildoma funkcija (pvz., perimetro užkardos sistemą), tačiau, dėl bendro tinklo sistemos saugumo ir stabilumo, tinklo administratoriai linkę izoliuoti atskiras funkcijas pavienėms sistemoms. Todėl dažna WLAN ir <i>pfSense </i>junginys tinklo mazge atlieka griežtai tik bevielio ryšio prieigos taško funkciją.
</div>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Kartu su bevieliu prieigos tašku, bet nebūtinai tik bevieliam ryšiui, populiaru pasinaudoti ypatinga <i>pfSense </i>programinės įrangos galimybe – sukurti fiksuotos prieigos {<i>captive portal</i>} autentifikacijos sistemą vietiniame tinkle (žr. pav. apačioje).
</div>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Fiksuota preiga {<i>captive portal</i>} – tai žiniatinklio puslapis, kurį vartotojas įpareigotas aplankyti jungdamasis prie tam tikro tinklo paslaugų, prieš gaudamas platesnes prieigos teises (pvz., prieigą prie interneto tinklo). Paprastai platesnėms prieigos teisėms gauti vartotojas nukreipiamas į autentifikacijos sistemą, kur vartotojas turi įvesti prisijungimo vardą ir slaptažodį. Kita vertus platesnėms prieigos teisėms gauti gali užtekti spustelėti ant nurodytos nuorodos, kurią tinkinant vartotojas sutinka su nurodytomis taisyklėmis naudojantis interneto prieiga. Fiksuotos prieigos {<i>captive portal</i>} sistema padeda administruoti viešos prieigos taškus, laidinius ir bevielius {<i>hotspots</i>}, todėl dažnai naudojama seminaruose, bibliotekose, viešbučiuose bei kitose viešosiose erdvėse interneto prieigai suteikti.</div>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgI3IDE_56lSKpPRC2llDFwjMeUW36a2E8ukdxGf8EF0J7uZjc1kCiHEMJWXUl3CzPwzyZ_WegioGFhs3cbKM_BJzQFqFFa7DtG1IXXv24RbB-vRY1_Cw1dthWOI5SmPgtb92gHfAKjOjA/s1600/captive+portal.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="323" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgI3IDE_56lSKpPRC2llDFwjMeUW36a2E8ukdxGf8EF0J7uZjc1kCiHEMJWXUl3CzPwzyZ_WegioGFhs3cbKM_BJzQFqFFa7DtG1IXXv24RbB-vRY1_Cw1dthWOI5SmPgtb92gHfAKjOjA/s640/captive+portal.png" width="640" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;"><b><i>Captive portal</i></b> pranešimas autentifikacijai norint pasiekti interneto svetainę adresu: <i>blogas.skarware.eu</i></td></tr>
</tbody></table>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Įmonės atžvilgiu fiksuotos prieigos {<i>captive portal</i>} sistema labai reikšminga, nes norint apsaugoti vidinį įmonės tinklą būtina griežtai kontroliuoti kas gauna prieigą prie jo ir kas ne. Šis sprendimas padeda sukurti atskiras interneto prieigos sąsajas, laidines ir bevieles, kurių tinklai pasirinktinai apriboti ir saugiai atskirti. Todėl įmonės darbuotojai, dažnai turintys net po kelis asmeninius tinklo prietaisus, ir jos svečiai gali gauti prieigą prie interneto be rizikos pažeisti įmonės tinklo saugą net jei asmeninis tinklo prietaisas turi paslėptų kenkėjiškų programų.</div>
<br />
<h3>
<div style="text-align: center;">
<i><span style="font-size: normal;">Kiti specifinės paskirties pritaikymai</span></i></div>
</h3>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Savaime suprantama, visi <i>pfSense </i>pritaikymo scenarijai smulkios ir vidutinės organizacijos tinklo mazge nebus apžvelgti. Viena vertus tai straipsnis blogui, o ne knyga, antra vertus, pritaikymo galimybės ribojamos tik žmogaus fantazijos ir turimų žinių tinklo mazgos sistemose. Todėl čia buvo paminėti tik dažniausiai pasitaikantys <i>pfSense </i>programinės įrangos pritaikymo variantai. Be dažniausiai sutinkamu <i>pfSense </i>panaudojimo scenarijų verta užsiminti rečiau sutinkamų pritaikymo variantų, skirtų labiau specifinėms tik tam tikroms užduotims atlikti kompiuterių tinkle.</div>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Pavyzdžiui, dalis vartotojų <i>pfSense </i>sistema naudoja kaip <a href="https://skarware.blogspot.com/2015/07/domenu-vardu-sistema-dns.html" target="_blank">autoritetingą DNS serverį</a>, atsakanti į viešojo tinklo (interneto) užklausas. Tam galima pasinaudoti <i>pfSense </i>išplėtimo modulio <i>TinyDNS</i> tarnyba – tai minimalistinis, tačiau ypač greitas ir saugus DNS serverio sprendimas vardų sistemos užklausoms atsakinėti. Jei ieškoma sprendimo vidinio tinklo DNS serveriui (<a href="https://skarware.blogspot.com/2015/07/domenu-vardu-sistema-dns.html" target="_blank"><i>Resolving Name Server</i></a>) su spartinimo funkcija {<i>caching</i>} įdiegti, tarp <i>pfSense </i>išplėtimo modulių galima surasti <i>Unbound DNS Resolver</i> tarnybą.</div>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
</div>
<div style="text-align: justify; text-indent: 1.0cm;">
Dar vienas specifinis <i>pfSense </i>sistemos panaudojamo scenarijus gali būti DHCP serveris, IP adresų nuomai organizacijos vidiniame tinkle. Tam <i>pfSense </i>turi gana turtingą parametrais valdymo panelę, prieinama per grafinę vartotojo sąsają, pvz., <i>pfSense </i>DHCP serveris leidžia skirtingų DNS adresų nuomą skirtingiems nuomininkams – tinklo prietaisams. Bei daug kitų patogių ir naudingų nustatymų kompiuterių tinklo administratoriui.</div>
<br />
<h2>
<div style="text-align: center;">
<span style="font-size: x-large;">Išvados</span></div>
</h2>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
<i>pfSense </i>pirminė funkcija kompiuterių tinklo mazge – užkardos sistema. Tai pirmoji gynybos linija tarp interneto ir vidinio kompiuterių tinklo. Ji užkerta nesankcionuotą veiką tarp atskirų bet sąveikaujančių tinklų, todėl labai svarbu pasirinkti tinkamą įmonės tinklo apsaugos sistemą.</div>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Nors tikslinės aparatinės įrangos užkardos sistemos yra spartesnės, dauguma kompiuterių tinklams skirtų saugos sistemų paremtos programine įranga dėl lankstesnės savo kainos ir galimybių. Šiai kategorijai priklauso ir <i>pfSense </i>sistema, kurios pamatus sudaro <i>Unix </i>tipo operacinė sistema – <i>FreeBSD</i>, plačiai žinoma dėl savo stabilumo ir saugumo tinklo mazge. Būdama programinės įrangos užkardos sistema, <i>pfSense </i>turi galimybę išplėsti savo funkcionalumą, diegiant į ją modulius su trečiųjų šalių programine įranga. Modulių pagalba išplėstą <i>pfSense </i>sistemą galima sugretinti su komerciniais UTM tinklo saugos sprendimais, kurie siūlo visapusišką šiems IT laikams adekvačią tinklo apsaugą.</div>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Kita vertus, modulių naudojimas ir jų neapibrėžtumas gali pareikalauti talentingo sistemų administratoriaus rankų įmonės IT personale. Tačiau gryna <i>pfSense </i>sistema be problemų administruojama GUI abstrakcijoje, todėl gilesnių žinių <i>FreeBSD </i>sistemoje nereikalauja.</div>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Viena ryškiausia <i>pfSense </i>savybė ta, jog ji yra nemokama atviro kodo programinė įranga ir dažnai įvardijama kaip geriausia šiai programinės įrangos kategorijai priklausanti užkardos sistema. Todėl šis straipsnis atspindi ir bendrai nemokamo atvirojo kodo galimybes organizacijos kompiuterių tinkle.</div>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Apžvelgtos pagrindinės <i>pfSense </i>programinės įrangos funkcijos ją pristato kaip subrendusią užkardos ir maršrutizatoriaus sistemą kompiuterių tinkle. Sistemos funkcionalumas, branda, stabilumas ir saugumas, kuri paveldi iš <i>FreeBSD </i>operacinės sistemos bei nemokamo ir atvirojo kodo etiketė <i>pfSense </i>sistemą išskiria iš kitų analogiškų produktų.</div>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Tinklo mazgo su <i>pfSesne </i>konfigūraciją palengvina jos puiki oficiali dokumentacija (vikis ir knyga) bei bendruomenės sukaupta derinimo informacija interneto platybėse. Sunku pervertinti plačios bendruomenės naudą diegiant tinklo mazgą su <i>pfSense </i>programine įranga. Tai ypač ryškus privalumas daugeliui sistemų administratorių.</div>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Sumodeliuoti <i>pfSense </i>sistemos pritaikymo scenarijai demonstruoja šios sistemos lankstumą kompiuterių tinklo mazge. Nors dažnai <i>pfSense </i>programinė įranga pristatoma kaip užkardos sistema, akivaizdu, jog jos panaudojimo galimybės priklauso nuo administratoriaus žinių ir fantazijos.</div>
<br />
<span style="font-size: x-small;">Straipsnis atnaujintas 2017-09-29 dieną: smulkios struktūrinės ir gramatinės klaidos.</span><br />
<hr align="left" size="1" width="75%" />
Martynashttp://www.blogger.com/profile/00471091754225207342noreply@blogger.com0tag:blogger.com,1999:blog-5426813891256937073.post-87930053119728371132015-07-23T20:33:00.004+03:002021-07-03T00:02:29.477+03:00Domenų vardų sistema (DNS)<div class="separator" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em; text-align: center;">
<img height="200" source="https://commons.wikimedia.org/wiki/File:Internet1.jpg by Rock1997 - Modified" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiJeZdRPptKHvQPF327w01O-XTP0PMmx_bOYrAhyphenhyphenx4k9IHWatbtuHgdU8k_R0qghKo5iL9JG8dw9nWrU4ze4kmbIrqD8bhTP3BRFw3JDlsrq1cMNpW7MO8976rlaC7GUDod6xQWHDZ4cBY/s640-Ic42/dns%252520domain%252520name.png" width="250" /></div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Kaip jau visi nepastebėjo šio blogo adresas pasikeitė iš vangaus <a href="http://skarware.blogspot.com/" target="_blank"><i><span style="font-family: inherit;">skarware.blogspot.com</span></i></a> į kur kas patrauklesnį europietišką variantą – <a href="https://blog.skarware.eu/" target="_blank"><i><span style="font-family: inherit;">blogas.skarware.eu</span></i></a> (pastaba, 2021-ais domenas atsikeitė atgal į skarware.blogspot.com). Ta iškilminga man proga nusprendžiau parašyti <strike>trumpą įrašą</strike> straipsnį apie internetinius vardinius adresus, vadinamuosius <i>domenus</i>, o jei tiksliau kalbant, apie <i>domenų vardų sistemą</i>, kuri yra svarbi ir būtina Interneto infrastruktūros dalis.</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Šiame blogo įraše bandysiu paprastai, tačiau sąžiningai techniškai atsakyti į sekančius klausimus:</div>
<ul>
<li>Kas yra <i><b>domenas </b></i>ir kokia jo paskirtis?</li>
<li>Kas yra <i><b>domenų vardų sistema (DNS)</b></i>?</li>
<li>Kaip veikia <i><b>domenų vardų sistema (DNS)</b></i>?</li>
</ul>
<br />
<h2 style="text-align: center;">
<span style="font-size: x-large;">Domeno sąvoka</span></h2>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Domenas (angl. <i>domain name</i>) – tai unikalus vardinis adresas Internete (pvz.: <span style="font-family: "courier new" , "courier" , monospace;">skarware.eu</span> ar <span style="font-family: "courier new" , "courier" , monospace;">google.lt</span>) per <i>domenų vardų sistemą</i> (DNS serverius) nukreipiamas į jam priskirtą skaitinį IP* adresą (pvz., <span style="font-family: "courier new" , "courier" , monospace;">195.12.176.35</span>), kuriame randasi svetainės tinklo serveris ar kiti tinklo resursai. Iš tikrųjų prie Interneto prijungti kompiuteriai komunikuoja tik per unikalius skaitinius IP adresus.</div>
<br />
<blockquote class="tr_bq">
* <span style="font-size: small;">IP – Interneto protokolas – rinkinys taisyklių, kurios apibrėžia komunikavimą tarp interneto tinklo dalyvių. Kompiuteriai naudojantys šį protokolą turi tuo metu unikalų IP adresą, kuris leidžia juos identifikuoti interneto tinkle.</span></blockquote>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Vardiniai <i>domenai </i>surišti su skaitiniais IP adresais palengvina prieigą prie žiniatinklio svetainės, ar kito tinklo ištekliaus, nes žmogaus protui daug lengviau įsiminti žodinius adresus nei sudarytus iš skaičių* (pvz., <span style="font-family: "courier new" , "courier" , monospace;">195.12.176.35</span>). Be to, <i>domeno </i>savininkas gali nevaržomai pakeisti savo svetainės talpinimo paslaugų tiekėją. Šiuo atveju paprastai keičiasi svetainės IP adresas, kurį galima nesunkiai perrišti administruojamam <i>domenui</i>. Tik įsivaizduokite koks sudėtingas paslaugų tiekėjo keitimo procesas būtų be <i>domenų</i>, norint išsaugoti savo svetainės lankytojus tektų juos visus informuoti apie besikeičianti skaitinį IP adresą.</div>
<br />
<blockquote class="tr_bq">
* <span style="font-size: small;">Iš tiesų, šiuo metu plačiausiai naudojama <i>Interneto Protokolo</i> versija IPv4 adresams užrašyti naudoja dešimtainės skaičiavimo sistemą, t. y. naudoja tik skaitmenis (pvz., <span style="font-family: "courier new" , "courier" , monospace;">195.12.176.35</span>). Vis dėlto naujos versijos <i>Interneto Protokolo</i> IPv6, pakeisiantį IPv4 protokolą, adresai užrašomi šešioliktainės skaičiavimo sistema, todėl adrese atsiranda ir pirmųjų lotynų abėcėlės raidžių: a, b, c, d, e, f (pvz., <span style="font-family: "courier new" , "courier" , monospace;">2a00:1450:400c:c05::5e</span>).
<br /><br />
Kodėl vyksta perėjimas nuo IPv4 prie IPv6? IPv4 protokolas projektuotas apie 1980 metus, tuo laiku internetas buvo naudojamas daugiau mokslinių tyrimų centrų ir karinių vienetų apjungimui, todėl buvo manoma, kad 32 bitų adresų erdvė yra optimalus variantas su didele atsarga į ateitį. Žmonių kalba kalbant 32 bitai duoda apie 2^32 ≈ 4,3 milijardus IP adresų. Vadinasi, jei visi žemės gyventojai – šiandien apie 7,4 milijardai – turės po kompiuterį ar kitą įrenginį jungiama prie interneto – jiems neužteks IP adresų prisijungti prie internetų! Retas kuris galėjo numatyti, jog po 30-ties metų beveik kiekvienas žmogus turės kišeninį interneto įrenginį, to nenumatė ir <i>Back to the Future</i> scenaristai 1989 metais. Šią problemą dalinai/laikinai išsprendė NAT (<i>network address translation</i>), vis dėlto perėjimas prie IPv6 yra racionalesnis sprendimas, kuris išspręs ne vieną su IPv4 susijusią problemą. Vienas ryškiausių patobulinimų <i>Interneto Protokole</i> yra adresų erdvės išplėtimas iki 128 bitų, tai apie 2^128 ≈ 340 000 000 000 000 000 000 000 000 000 000 000 000 IP adresų įrenginiams prie internetų prijungti. Kam tiek daug jei mūsų žemėje tik apie 7 400 000 000? Galbūt iš anksto ruoštasi tarpgalaktiniam internetui, ar tiesiog bijota dar kartą prašauti pro šalį. Vadinasi, IPv6 adresų užteks ne tik skalbimo mašinoms, šaldytuvams, durų skambučiams, laikrodžiams, bet ir atskiriems jų vidiniams komponentams, artimiausią šimtmetį? :)</span></blockquote>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Registruojant naują <i>domeną </i>patartina jį registruoti keliems metams į priekį, nes pirminėje <i>domeno </i>registracijoje įkainiai dažnai būna su nuolaida, beveik visada gerokai žemesni nei jau turimo <i>domeno </i>valdymo pratesimo įkainiai. <i>Domenas </i>yra unikalus – niekas kitas po jo užregistravimo negali naudoti tokio paties vardo. Tačiau pasibaigus <i>domeno </i>registracijos laikotarpiui ir laiku nepratęsus jo valdymo teisių, <i>domenas </i>yra pašalinamas iš registro ir vėl viešai prieinamas naujai registracijai.</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Trumpiausias terminas <i>domeno </i>registracijai yra 1 metai, o ilgiausias 10 metų. Šios ribos svyruoja priklausomai nuo registratoriaus, paslaugos tiekėjo.
</div>
<br />
<h2 style="text-align: center;">
<span style="font-size: x-large;">Domenų vardų sistema (DNS)</span></h2>
<br />
<div style="text-align: justify; text-indent: 1cm;">
DNS – abreviatūra iš „Domain Name System“ (liet. <i>domenų vardų sistema</i>), tai hierarchinės struktūros paskirstytoji vardų sistema (angl. <i>distributed system</i>), skirta prieigai prie kompiuterių tinklo prijungtų išteklių palengvinti, jų vardų valdymui ir organizavimui.</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Bendrai kalbant ši sistema naudojama <i>domenų </i>konvertavimui į IP adresus (ir atvirkščiai). Iš tiesų ši sistema prie <i>domeno </i>pririša daugiau viešai matomos informacijos nei tik IP adresą. Ją galima peržiūrėti su sisteminiais įrankiais (<i>Unix </i>tipo sistemoje: <i><span style="font-family: "courier new" , "courier" , monospace;">whois, dig, nslookup</span></i>) pateikus užklausą informacijai apie <i>domeną </i>gauti į vieną iš DNS serverių.
</div>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEidSHZkY3g-RJWMpSwBv31_lynHJNOLEyr1IDuzHj_cEJv0rY23-GTJl45RRf9L2uX6uh9rJ-kPiga8Muk8oeS8jSCArSDwcA2VmnbXV8qWuFSa3vjnkEt9FsNk-R5knEZTbb31sI5g7Jw/s1600/dig_cmd.png" /></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Užklausa į DNS serverį adresu 8.8.8.8 su <span style="font-family: "courier new" , "courier" , monospace;">DiG</span> sisteminiu įrankiu</td></tr>
</tbody></table>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Dalį šios informacijos savo <i>domenui </i>galima administruoti pačiam per nuosavą autoritetinga DNS serverį arba registratoriaus tiekiamą <i>domeno </i>valdymo panelę. Praktikoje reikalaujama, jog kiekvienas <i>domenas </i>turėtų bent du autoritetingus DNS serverius, viešai skelbiančius informaciją apie <i>domeno zoną</i>. Taip siekiama užtikrinti <i>domeno </i>paslaugų pasiekiamumą, net jei vienas <i>domeno </i>autoritetingas DNS serveris taptų nepasiekiamas.</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
DNS sistemą sudaro daugiau nei milijonas hierarchinėje struktūroje veikiančių DNS serverių, kurie kartu suformuoja paskirstytąją duomenų bazės sistemą, talpinančią milijonus įrašų apie registruotus <i>domenus </i>ir jų <i>subdomenus</i>. Per parą ši sistema sėkmingai apdoroja šimtus milijardų užklausų. Be <i>domenų vardų sistemos</i> Internetas kokį mes jį šiandien žinome – negalėtų egzistuoti.</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Techniškai DNS labai sudėtinga paskirstytoji vardų sistema (angl. <i>distributed system</i>), todėl jos struktūra ir veikimo principas toliau bus apžvelgtas tik aukščiausiame lygmenyje.
</div>
<br />
<h2 style="text-align: center;">
<span style="font-size: x-large;">Domenų vardų sistemos struktūra</span></h2>
<br />
<h3 style="text-align: center;">
<i><span style="font-size: normal;">Šakniniai vardų serveriai</span></i></h3>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Kaip jau minėta, DNS sistema yra hierarchinė – sudaryta iš <i>zonų</i>, susijusių priklausomumo ryšiais. Vadinasi kai kurie tą sistemą sudarantys DNS serveriai yra svarbesni už kitus, turi daugiau autoriteto visoje sistemoje. Pačiame hierarchijos viršūnėje yra vadinamieji <i>root serveriai</i> (liet. <i>šakniniai vardų serveriai</i>; angl. <i>root name servers</i>), priklausantys <i>root zonai</i>. Šiuos <i>root serverius</i> eksploatuoja 12 „nepriklausomų“ ne pelno siekiančių organizacijų. Jas diriguoja viena organizacija – ICANN (<i>Internet Assigned Numbers Authority</i>), psssst.. ši pavaldi JAV vyriausybei, kuri dar nuo 1998 m. <a href="http://arstechnica.com/tech-policy/2014/03/in-sudden-announcement-us-to-give-up-control-of-dns-root-zone/" target="_blank">perdavinėja visą valdžią privačiam sektoriui, daugelio šalių kontrolei</a>.</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Šiuo metu, 2015 metais, yra 13 <i>root serverių</i>, visgi tai klastingas skaičius, jis nurodo tik loginį serverių kiekį. Iš tiesų, kiekvieną loginį <i>root serverį</i> sudaro geros dešimtys fizinių serverių (ar jų klasteriai), kurie veikia kaip <i>veidrodinės kopijos</i> atspindinčios vienodą informaciją. Šios veidrodinės <i>root serverių</i> kopijos, išdėstytos aplink visą Žemės rutulį į svarbiausius Interneto tinklo mazgus.</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Loginį <i>root serverį</i> sudarantys fiziniai <i>veidrodiniai</i> serveriai adresuojami vienodais IP adresais t. y. turi vienodą IP adresą įvairiose geografinėse vietovėse, tam naudojama <i>anycast </i>maršrutizavimo techniką, kuri leidžia tolygiai išbalansuoti sistemos apkrovą, vartotojus nukreipiant į artimiausią <i>root serverio</i> veidrodinę kopiją. Taip siekiama didesnio DNS sistemos patikimumo (<i>fault tolerance</i>) ir našumo – trumpesnis atsakymo laikas (<i>latency</i>) į vartotojų užklausas.</div>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg4vPQ06FEHv-etYO88IDQBrFjySmbNjFzkU2t_IGrybSttuTBwurR6hFIoJxuy2eqcCcQ73v65wnmKxOd9z1IAnRrJ2b1Wl8y7dPxu8TtYeQEV6gcAPmq0ZarVRa87mDrWWF5XSOmaCmQ/s1600/Ams-ix.k.root-servers.net.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="480" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg4vPQ06FEHv-etYO88IDQBrFjySmbNjFzkU2t_IGrybSttuTBwurR6hFIoJxuy2eqcCcQ73v65wnmKxOd9z1IAnRrJ2b1Wl8y7dPxu8TtYeQEV6gcAPmq0ZarVRa87mDrWWF5XSOmaCmQ/s640/Ams-ix.k.root-servers.net.jpg" width="640" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Vienas iš <i>root </i>serverių; adresas <i>k.root-servers.net</i>, dislokacijos vieta – Amsterdamas, 2007 m.</td></tr>
</tbody></table>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Nuo 2014 metų yra maždaug apie 500 fizinių DNS <i>root zonos</i> serverių, juos galima peržiūrėti interaktyviame žemėlapyje adresu <span style="font-family: "courier new" , "courier" , monospace;"><a href="http://www.root-servers.org/" target="_blank">www.root-servers.org</a></span>.</div>
<div style="text-align: justify; text-indent: 1cm;">
Neoficialų root serverį galima įdiegti ir savo tinkle, tereikia DNS serverį sinchronizuoti su ICANN viešai skelbiamu <i>root zonos</i> failu: <a href="http://www.internic.net/zones/root.zone" target="_blank"><span style="font-family: "courier new" , "courier" , monospace;">http://www.internic.net/zones/root.zone </span></a></div>
<br />
<h3 style="text-align: center;">
<i><span style="font-size: normal;">Aukščiausiojo lygio sritys</span></i></h3>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Apkalbėti <i>root zonos</i> vardų serveriai saugo informaciją apie visus viena pakopa žemiau esančius <i>aukščiausiojo lygio domenų</i> serverius Interneto vardų erdvėje. <i>Aukščiausiojo lygio domenas</i> (angl. <i>Top-Level Domain</i> – TLD) yra kiekvieno <i>pilno domeno vardo</i> paskutinioji-dešiniausia dalis. Pvz., <i>domeno </i>vardų: <span style="font-family: "courier new" , "courier" , monospace;">www.google.<b><span style="font-size: large;">lt</span></b></span>, <span style="font-family: "courier new" , "courier" , monospace;">www.gmail.<b><span style="font-size: large;">com</span></b></span> ir <span style="font-family: "courier new" , "courier" , monospace;">skarware.<b><span style="font-size: large;">eu</span></b></span>, atitinkamai <span style="font-family: "courier new" , "courier" , monospace;"><b>lt</b></span>, <b><span style="font-family: "courier new" , "courier" , monospace;">com</span> </b>ir <span style="font-family: "courier new" , "courier" , monospace;"><b>eu</b></span> adresų dalys nurodo <i>aukščiausiojo lygio domenus</i>. TLD serveriai autoritetingi už šių sričių (<span style="font-family: "courier new" , "courier" , monospace;">lt</span>, <span style="font-family: "courier new" , "courier" , monospace;">com</span>, <span style="font-family: "courier new" , "courier" , monospace;">eu</span> ir kt.) zonas.</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
<i>Aukščiausiojo lygio domenai</i> skirstomi į keletą pagrindinių tipų:</div>
<ul>
<li><span style="text-indent: 1cm;"><b>ccTLD</b> (</span><i style="text-indent: 1cm;">country-code top-level domains</i><span style="text-indent: 1cm;">) – Šalies kodo </span><i style="text-indent: 1cm;">aukščiausio lygio domenas </i><span style="text-indent: 1cm;">skirtas šalims, suverenioms ar kitoms autonominėms teritorijoms. Visi ccTLD žymimi dviraidžiais šalies kodais remiantis ISO3166 standartu. pvz.:</span><span style="font-family: "courier new" , "courier" , monospace; text-indent: 1cm;"> <b>lt</b>, <b>de</b>, <b>us</b>, <b>uk </b></span><span style="text-indent: 1cm;">ir t. t.;</span></li>
<li><span style="text-indent: 1cm;"><b>gTLD</b> (</span><i style="text-indent: 1cm;">generic top-level domains</i><span style="text-indent: 1cm;">) – bendro pobūdžio aukščiausio lygio domenas sudarytas iš trijų ar daugiau simbolių. pvz.:</span><span style="font-family: "courier new" , "courier" , monospace; text-indent: 1cm;"> <b>com</b>, <b>edu</b>, <b>net</b>, <b>org</b>, <b>info </b></span><span style="text-indent: 1cm;">ir t. t. Jie sudaromi iš angliškų žodžių kurie turėtų atspindėti savo paskirtį (pvz., </span><span style="font-family: "courier new" , "courier" , monospace; text-indent: 1cm;"><b>com </b></span><span style="text-indent: 1cm;">nuo žodžio </span><i style="text-indent: 1cm;">commercial</i><span style="text-indent: 1cm;"> (liet. komercinis), skirtas komercinėms organizacijoms).</span></li>
</ul>
<div style="text-align: justify; text-indent: 1cm;">
Dalis TLD turi registracijos apribojimus. Pvz., interneto adresą su<span style="font-family: "courier new" , "courier" , monospace;"> <b>.edu</b> </span>galūne leidžiama registruoti tik sertifikuotoms švietimo organizacijoms iš Šiaurės Amerikos. <i>Domeno </i>vardą su galūne<span style="font-family: "courier new" , "courier" , monospace;"> <b>.uk</b> </span>leidžiama registruoti tik užsakovams iš Jungtinės Karalystės bei reikalaujama patvirtinti buveinės arba gyvenamosios vietos adresą, nurodomą <i>antro lygio domeno</i> registracijos metu.
</div>
<br />
<h3 style="text-align: center;">
<i><span style="font-size: normal;">Antro lygio sritys</span></i></h3>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Analogiškai <i>root zonos</i> serveriams, leidžiantis viena pakopa žemiau, <i>aukščiausiojo lygio sričių</i> serveriai saugo informaciją apie <i>antro lygio domenus </i>(angl. <i>Second-level domain – SLD</i>). Šių <i>domenų </i>registracija prieinama paprastiems mirtingesniems. Būtent juos dažniausiai įvardijame tiesiog kaip <i>domenas</i>, <i>domeno vardas</i> ar interneto adresas. Pvz., <span style="font-family: "courier new" , "courier" , monospace;">blogas.<b><span style="font-size: large;">skarware</span></b>.eu</span>, <span style="font-family: "courier new" , "courier" , monospace;">www.<b><span style="font-size: large;">gmail</span></b>.com</span> ir <span style="font-family: "courier new" , "courier" , monospace;">www.<b><span style="font-size: large;">google</span></b>.lt</span> atitinkamai<span style="font-family: "courier new" , "courier" , monospace;"> <b>skarware</b>, <b>gmail </b></span>ir<span style="font-family: "courier new" , "courier" , monospace;"> <b>google </b></span>yra <i>antro lygio domenai</i>.</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Užregistravus <i>antro lygio domeną</i>,<span style="font-family: "courier new" , "courier" , monospace;"> <b>eu</b> </span>TLD zonoje, pvz., <span style="font-family: "courier new" , "courier" , monospace;">skarware.eu</span>, šio <i>domeno</i> užsakovas tampa išskirtiniu <span style="font-family: "courier new" , "courier" , monospace;">skarware.eu</span> zonos administratorius, turintis visas privilegijas ir atsakomybes už šią DNS zoną. Kadangi DNS yra hierarchinės struktūros, <i>antro lygio domeno</i> zonos administratorius gali nevaržomai kurti ir deleguoti vardus iš žemesnio lygio <i>domenų</i>, esantiems <span style="font-family: "courier new" , "courier" , monospace;">skarware.eu</span> srities ribose, vadinamiesiems <i>subdomenams</i>, pvz., <span style="font-family: "courier new" , "courier" , monospace;"><b>blogas</b>.skarware.eu</span>, <span style="font-family: "courier new" , "courier" , monospace;"><b>mail</b>.google.com</span>, <span style="font-family: "courier new" , "courier" , monospace;"><b>foobar</b>.skarware.eu</span>.</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Norint administruoti <i>antrojo lygio domeną</i>, reikia turėti mažiausiai du autoritetingus DNS serverius. Juos, kaip paslaugą gali suteikti <i>domenų </i>registratorius arba galima susikurti savo autoritetingus DNS serverius, tai suteikia daugiau administravimo galimybių. Iš to galima daryti išvadą, jog DNS yra paskirstytoji sistema (angl. <i>distributed system</i>), sudaryta iš daugelio autonominių serverių, todėl nė vienas DNS serveris neturi visų Interneto <i>domeno </i>vardų įrašų. DNS sistemą galima apibrėžti kaip aibę atskirtų besiribojančių <i>DNS zonų*</i>, kurios bendrai sudaro DNS vardų erdvę.</div>
<blockquote class="tr_bq">
* <span style="font-size: small;">DNS serveris autoritetingai atsakantis į jam pavaldžių <i>domenų </i>užklausas saugo kiekvienam po <i>zonos failą</i>, jame saugoma informaciją apie <i>domeno </i>įrašus. Zonos failas apibrėžia DNS zoną. Pvz., <i>domenų </i>registratoriaus <span style="font-family: "courier new" , "courier" , monospace;">IV.lt</span> vardų serveriai autoritetingai atsako į užklausas apie <span style="font-family: "courier new" , "courier" , monospace;">skarware.eu</span> ir <span style="font-family: "courier new" , "courier" , monospace;">skaringa.eu</span> zonas, bei daugelį kitų savo klientų užregistruotų <i>domenų</i>, kurie neperkėlė šios funkcijos (zonų) į nuosavus DNS serverius. Vadinasi, vienas DNS serveris gali valdyti vieną ar daugelį zonų, bet kaip jau minėta, nė vienas vardų serveris neturi visų Interneto <i>domenų </i>zonų/įrašų.</span></blockquote>
<br />
<h3 style="text-align: center;">
<i><span style="font-size: normal;">Subdomenai</span></i></h3>
<br />
<div style="text-align: justify; text-indent: 1cm;">
<i>Trečio lygio domenai</i> įvardija trečiąją <i>pilno domeno vardo</i>* dalį, pvz., <span style="font-family: "courier new" , "courier" , monospace;"><b><span style="font-size: large;">blogas</span></b>.skarware.eu.</span>, <span style="font-family: "courier new" , "courier" , monospace;"><b><span style="font-size: large;">www</span></b>.gmail.com.</span> ir <span style="font-family: "courier new" , "courier" , monospace;"><b><span style="font-size: large;">foobar</span></b>.skarware.eu.</span>, atitinkamai<span style="font-family: "courier new" , "courier" , monospace;"> <b>blogas</b>, <b>www</b> </span>ir<span style="font-family: "courier new" , "courier" , monospace;"> <b>foobar</b> </span>yra <i>trečiojo lygio domenai</i>, paprastai vadinami <i>subdomenais</i>** ar <i>hostais</i>***.</div>
<blockquote class="tr_bq">
* <span style="font-size: small;">Pilnas interneto vardinis adresas su visais jį formuojančiais, <i>root</i>, aukščiausiojo, antro, trečio, ir t.t., lygio domenais sudaro </span><i>pilną-absoliutų domeno vardą</i> (angl. <i>Fully Qualified Domain Name – </i>FQDN). Pvz.: <span style="font-family: "courier new" , "courier" , monospace;">blogas.skarware.eu.</span> ir <span style="font-family: "courier new" , "courier" , monospace;">mail.google.com.</span><br />
<span style="font-size: small;"><i>
Pilnas domeno vardo</i> užrašymas nurodo tikslią <i>domeno </i>padėtį hierarchinėje <i>domenų vardų sistemoje</i>. FQDN užrašyti galima tik vienu būdu, todėl praktikoje jis dažnai naudojamas siekiant išvengti dviprasmiškų aplinkybių.
</span></blockquote>
<blockquote class="tr_bq">
** <span style="font-size: small;">Terminas <i><b>subdomenas </b></i>yra reliatyvus t.y. <i>trečio lygio domenas</i> yra subdomenas <i>antro lygio domenui</i>, tuo pačiu <i>antro lygio domenas</i> yra subdomenas <i>aukščiausio lygio domenui</i> ir pan. Šiame straipsnyje šis terminas vartojamas kalbant apie <i><b>trečio lygio domenus</b></i>.</span></blockquote>
<blockquote class="tr_bq">
*** <span style="font-size: small;">Terminas <i><b>host </b></i>vartojamas nurodant individualius kompiuterius ar servisus pasiekiamus per <i>domeną</i> (galinius taškus).</span></blockquote>
<div style="text-align: justify; text-indent: 1cm;">
Gilesni nei <i>trečio lygio domenai</i> praktikoje retai vartojami, nors teoriškai įmanoma kurti 127 gylio <i>domenus</i>, kurių kiekvienas gali būti iki 63 simbolių ilgio, bet bendras <i>pilno domeno vardo</i> ilgis neturi peržengti 253 simbolių ribos.
</div>
<br />
<h3 style="text-align: center;">
<i><span style="font-size: normal;">Root domenas</span></i></h3>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Viršuje pateiktuose <i>pilno domeno vardo</i> pavyzdžiuose po <i>aukščiausio lygio domeno</i> padėtas taškas (<b><span style="font-family: "courier new" , "courier" , monospace; font-size: large;">eu.</span></b> ir<span style="font-size: large;"> <b><span style="font-family: "courier new" , "courier" , monospace;">com.</span></b></span>) nėra skyrybos ar kitos šventos santvarkos klaida. Iš tiesų, taškas <i>pilno domeno</i> gale žymi <i>root zonos</i> sritį, tiksliau bevardį <i>root domeną</i> į dešine po šio taško*. Galite pabandyti įvesti į naršyklę jums įprastus internetinius adresus su tašku gale ir įsitikinti, jie kuo puikiausiai veikia. Dauguma programų šiuos taškus <i>domenų </i>gale uždeda automatiškai be vartotojo įsikišimo ir žinios.
</div>
<blockquote class="tr_bq">
* <span style="font-size: small;">DNS vardų sintaksė: <i>Pildo domeno vardas</i> (FQDN) susideda iš vienos ar daugiau dalių. Skaitant iš kairės į dešinę, nuosekliai lygiais išdėstytų sričių, hierarchiškai struktūrizuotų, nuo žemiausios iki aukščiausios – <i>root domeno</i>. Sričių lygiai sutartinai sujungti/atskirti taškais (pvz., <span style="font-family: "courier new" , "courier" , monospace;">blogas.skarware.eu.</span>).</span></blockquote>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg_7QaIBXJyCCFC1KRRZ71RYpBWP6E0KaYdJZqZJyBvW4jEVDkUkmGl7jEYPrxlYhx0NXU-suq-yEse9hLElKOpK-_lL6KnHfauOoMOAf7y4S_-lJ3HPaq4BI_Z-QLGE1VYYo0zYtAHUZk/s1600/dns+hierarchy.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="225" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg_7QaIBXJyCCFC1KRRZ71RYpBWP6E0KaYdJZqZJyBvW4jEVDkUkmGl7jEYPrxlYhx0NXU-suq-yEse9hLElKOpK-_lL6KnHfauOoMOAf7y4S_-lJ3HPaq4BI_Z-QLGE1VYYo0zYtAHUZk/s640/dns+hierarchy.png" width="640" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;"><i><br /></i>
DNS sričių hierarchija, <span style="font-size: 12.8000001907349px;"><i>domeno vardo</i> struktūra</span></td></tr>
</tbody></table>
<br />
<h3 style="text-align: center;">
<i><span style="font-size: normal;">DNS serverių tipai</span></i></h3>
<br />
<div style="text-align: justify; text-indent: 1cm;">
<i>Domenų vardų sistemą</i> sudaro kelių funkcinių tipų serveriai – autoritetingi (angl. <i>authoritative</i>) ir rekursiniai (angl. <i>recursive</i>).</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Autoritetingas DNS serveris, kaip jau buvo minėta, saugo <i>domenų</i> zonos failus ir apdoroja užklausas tik į savo paties administruojamas <i>domenų zonas</i>. Serveriui apdorojus užklausą jis pateikia pilną atsakymą, arba nuorodą į kitą autoritetingą vardų serverį, kuriam deleguota dalis <i>domeno zonos </i>atsakomybės.</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
DNS sistemoje naudojamas klientas–serveris modelis. Autoritetingi vardų serveriai dirba tik serverio režime ir tiekia informaciją klientams – rekursiniams DNS serveriams.</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Rekursinis DNS serveris, dažnai įvardijamas kaip <i>Resolving Name Server</i>, atlieka tarpininko vaidmenį – veikia abiem režimais – aptarnauja klientų (pvz., kompiuterių OS) užklausas kaip <i>serveris</i>, tuo pačiu kaip <i>klientas </i>ieško gautoms užklausoms informacijos autoritetinguose DNS sistemos serveriuose. Rekursinis vardų serveris savo klientams gražina pilną atsakymą arba klaidos pranešimą. Šio tipo serveriai leidžia naudotis spartinimo funkciją (<i>Caching DNS Server</i>), išsaugodami jau apdorotas klientų užklausas. Todėl sąlyginai ilgame laiko tarpe, vienodai užklausai atsakymo nebereikia ieškoti nuotoliniuose autoritetinguose vardų serveriuose, jį galima žaibišku greičiu pateikti iš vietinės atmintinės.</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
DNS serveris gali vykdyti griežtai vieną iš aprašytų funkcijų, arba derinti abiejų tipų savybes. Tai priklauso nuo reikalavimų ir norų konkrečiu atveju.</div>
<br />
<h2 style="text-align: center;">
<span style="font-size: x-large;">Domenų vardų sistemos veikimo principas</span></h2>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Naršyklės adreso laukelyje įvedus <span style="font-family: "courier new" , "courier" , monospace;">blogas.skarware.eu</span> ir paspaudus <span style="font-family: "courier new" , "courier" , monospace;">Enter</span> klavišą akimirksniu gaunamas atsakymas. Nors įvesto <i>domeno </i>vertimas į IP adresą trunka labai trumpą laiko tarpą (tai priklauso nuo kelių faktorių: turimos interneto linijos spartos/apkrovos, DNS serverio fizinio atstumo, jo apkrovos) ir yra vartotojui nepastebimas, per jį kompiuterio operacinė sistema (OS) ir DNS sistemos serveriai atlieka ne vieną operaciją užklausoms perduoti ir išspręsti. Panagrinėkim plačiau, kaip veikia <i>domeno </i>transliavimas į IP adresą.
</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Įvedus į naršyklės adreso laukelį <span style="font-family: "courier new" , "courier" , monospace;">blogas.skarware.eu</span>, siekiant išvengti dviprasmybių, kompiuteris ieškos atsakymo <span style="font-family: "courier new" , "courier" , monospace;">blogas.skarware.eu.</span> <i>domenui</i>. Tai FQDN – <i>absoliutus domeno vardas</i> su tašku gale, apie jį jau buvo užsiminta.</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Pirmiausia žiniatinklio naršyklė tikrina ar įvesto <i>domeno </i>ir jo IP adreso nėra jos vidinėje paskutinių užklausų talpykloje (<i>cache</i>). Jeigu ten atsakymo nėra, <i>domeno </i>transliavimas perduodamas OS, ši taip pat tikrina ar neturi atsakymo į užklausą savo duomenų struktūrose (<i>hosts </i>faile ir <i>cache</i>).</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Tarkime, jog naršyklė ir OS atsakymo neturėjo, vis dėlto operacinės sistemos tinklo parametruose būna išsaugota kelių rekursinių DNS serverių IP adresai. Jais tinkamai pasinaudoja OS sudedamoji dalis vadinama <i><span style="font-family: "courier new" , "courier" , monospace;">stub resolver</span></i>. Tai primityvi biblioteka leidžianti OS perduoti užklausos sprendimo problemą vienam iš rekursyvių serverių, dar vadinamų <i>Resolving Name Server</i> (RNS), kuris savarankiškai iki galo apdoroja užklausą ir gražina pilną atsakymą arba klaidą. RNS visada turi DNS <i>root zonos</i> serverių IP adresus, todėl geba išspręsti užklausas į bet kurį tuo metu techniškai tvarkingai veikianti <i>domeną</i>. Pradėdamas nuo hierarchinės vardų struktūros viršaus – <i>root domeno</i>, RNS paeiliui kreipiasi į autoritetingus DNS serverius kol gauna pilną atsakymą į pradinę užklausą.</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Taigi, kompiuterių tinklo pagalba, užklausa iš naršyklės persiunčiama kitai kompiuterių sistemai – <i>Resolving Name Server</i>, kuri vykdo rekursyvaus DNS serverio funkciją(1). Šis dažniausiai būna <i>kešuojantis </i>(<i>Caching DNS Server</i>), todėl atsakymo pirmiausiai ieško savo paskutinių užklausų atmintyje. Jei atsakymas ten yra, jis akimirksniu išsiunčiamas klientui – OS, ir užklausa tampa pilnai išspręsta.
</div>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><span style="margin-left: auto; margin-right: auto;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjX31TSLeG3GLfYoEKEpfhQmIzQ0GmnEJ3l9aawEC40o_C90yxWj2QrNLIQ2_cWwZYPHwi60L1OXSFsK6wDeQypQqEM6eoqcTz_Oo2HTnaB30z6EHfiFO838Bty6bcuSxwPtUEfZMK8sPE/s1600/DNS+Name+Resolution+Process.png" /></span></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Naršyklės inicijuotos užklausos apdorojimas per DNS serverį</td></tr>
</tbody></table>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Tarkime, jog <i>Resolving Name Server</i> atmintyje nebuvo jokios informacijos apie pateiktą užklausą, vis dėlto, RNS visada turi sąrašą <i>root srities</i> serverių su IP adresais, ir gali kreiptis tiesiogiai į bet kurį iš jų su iteracine užklausa apie <span style="font-family: "courier new" , "courier" , monospace;">blogas.skarware.eu.</span> <i>domeną</i>(2). Tikėtina, kad <i>root serveriai</i> neturės tiesioginio įrašo šiam <i>domenui</i>. Visgi <i>root zona</i> saugo informaciją apie visus <i>aukščiausiojo lygio domenus</i> (TLD), esančius DNS vardų erdvėje, todėl galės nukreipti į<span style="font-family: "courier new" , "courier" , monospace;"><b> eu. </b></span>zonos autoritetingus vardų serverius. Toliau, RNS serveris kreipiasi į<b style="font-family: 'Courier New', Courier, monospace; text-indent: 18.8976383209229px;"> eu. </b>zonos serverius su ta pačia užklausa apie <span style="font-family: "courier new" , "courier" , monospace;">blogas.skarware.eu.</span> <i>domeną</i>(3). Čia vėl gauna naujos informacijos – nuorodą, į autoritetingus DNS serverius valdančius <span style="font-family: "courier new" , "courier" , monospace;">skarware.eu.</span> zoną(4), kuri šiuo atveju jau turi tiesioginės informacijos – <span style="font-family: "courier new" , "courier" , monospace;">A</span> arba/ir <span style="font-family: "courier new" , "courier" , monospace;">AAAA</span> tipo DNS įrašą*, skirtą <span style="font-family: "courier new" , "courier" , monospace;">blogas.skarware.eu.</span> <i>domenui</i>. <i>Resolving Name Server</i> gavęs pilną atsakymą pradinei užklausai, persiunčia pilną atsakymą atgalios operacinei sistemai(5), o ši gražina IP adresą žiniatinklio naršyklei, kuri ir inicijavo <span style="font-family: "courier new" , "courier" , monospace;">blogas.skarware.eu.</span> <i>domeno </i>užklausą.</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Po šios užklausos atsakymo <i>kešuojantis </i>serveris (<i>Resolving Name Server</i>) tam tikram laiko tarpą turės išsaugojęs informaciją apie<span style="font-family: "courier new" , "courier" , monospace;"> eu. </span>ir <span style="font-family: "courier new" , "courier" , monospace;">skarware.eu.</span> zonų autoritetingus vardų serverius. Vadinasi, RNS nebereikės pakartotinai siųsti užklausą į <i>root zoną</i>, norint sužinoti <span style="font-family: "courier new" , "courier" , monospace;">google.eu.</span> <i>domeno </i>IP adresą, jis galės pradėti nuo<span style="font-family: "courier new" , "courier" , monospace;"> eu. </span>zonos vardų serverių. Šiuo atveju sutaupoma viena iteracinė užklausa. Pradedant ieškoti atsakymo nuo <i>root zonos</i> jų dažniausiai būna trys (nagrinėtas <span style="font-family: "courier new" , "courier" , monospace;">blogas.skarware.eu.</span> užklausos atvejis).
</div>
<blockquote class="tr_bq">
* <span style="font-size: small;">Abu šie zonos failo įrašai nukreipia <i>domeną </i>į nurodytus IP adresus. <span style="font-family: "courier new" , "courier" , monospace;">A</span> tipo DNS įrašas naudojamas nurodant IPv4 adresą, o <span style="font-family: "courier new" , "courier" , monospace;">AAAA</span> įrašai nukreipia į IPv6 adresus. Apie šias skirtingas IP adresų versijas jau buvo užsiminta ankščiau.</span></blockquote>
<br />
<h2 style="text-align: center;">
<span style="font-size: x-large;">Išvados</span></h2>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Tai kas turėjo būti kuklus trumpas įrašas apie <i>domenus</i>, išsirutuliojo į šiek tiek ilgesnį įrašą – straipsnį, nužvelgianti visą DNS sistemą aukščiausiame abstrahuotame jos lygmenyje.</div>
<div style="text-align: justify; text-indent: 1cm;">
Perskaičius straipsnį galima geriau suprasti kas yra <i>domenai</i> ir <i>domenų vardų sistema</i> bei kodėl ji (DNS) įvardijama kaip hierarchinė paskirstytoji duomenų bazės sistema (angl. <i>distributed database system</i>), sudaryta iš daugelio autonominių mazgų – DNS serverių – komunikuojančių klientas–serveris modeliu.</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Kiekvienas <i>domenas </i>turi bent vieną autoritetingą DNS serverį, kuris administruoja <i>domeno zoną</i> ir viešina informaciją susijusia su tuo <i>domenu</i>. Bendrai jie sudaro Interneto DNS vardų erdvę. Tikėtina, tai ne tik didžiausia duomenų bazė <strike>mūsų planetoje</strike> saulės sistemoje, bet ir aktyviausiai naudojama bei nuolatos atnaujinama.</div>
<br />
<div style="text-align: justify; text-indent: 1cm;">
Taigi, nė vienas DNS serveris neturi visų Interneto <i>domeno zonų</i> ir jų saugomų įrašų, nes techniškai tai būtų per daug sudėtinga ir nepraktiška vardų sistema. Dabartinė hierarchinės struktūros paskirstytoji vardų sistema (DNS) sukurta aštuntame dešimtmetyje yra kur kas lankstesnė. Ji ir šiandien, su nedideliais patobulinamais, pilnai tenkina šiuolaikinės informacinės visuomenės poreikius.</div>
<br />
<hr align="left" size="1" width="75%" />
Martynashttp://www.blogger.com/profile/00471091754225207342noreply@blogger.com1tag:blogger.com,1999:blog-5426813891256937073.post-12447217110928932252015-04-26T19:56:00.001+03:002021-07-03T00:03:50.427+03:00Integrinio Grandyno Fabrikavimas [IG, III dalis]<h2>
<span style="font-size: x-large;">Pagrindiniai IG formavimo procesai</span></h2>
<div style="text-align: justify; text-indent: 1.0cm;">
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="float: right; margin-left: 1em; text-align: right;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg_HPj8lSAUKsXphROjPEAUkMotE-A7aPgP2DBMmp8T6Qcsdd4tARRVHGMcJLt7g_GH0q5nSx4RH4Jp1uQPHYNvqu5OXhCrGfErB0TICw2TsyGcCLNQo1ODYduLq-Y-HTfhayO8AhdBurs/s2048-Ic42/AMIS.JPG" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img height="226" source="https://commons.wikimedia.org/wiki/File:AMIS.JPG" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg_HPj8lSAUKsXphROjPEAUkMotE-A7aPgP2DBMmp8T6Qcsdd4tARRVHGMcJLt7g_GH0q5nSx4RH4Jp1uQPHYNvqu5OXhCrGfErB0TICw2TsyGcCLNQo1ODYduLq-Y-HTfhayO8AhdBurs/s1024-Ic42/AMIS.JPG" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;"><i>Integrinių grandynų fabrikavimo laboratorija</i></td></tr>
</tbody></table>
Integrinio grandyno gamyba vadinama fabrikavimu – tai labai sudėtingas, pusiau automatizuotas procesas, reikalaujantis didelių investicijų, laiko ir aukštos kvalifikacijos specialistų kontrolės visų integrinio grandyno fabrikavimo procesų metu. Pati fabrikavimo technologija nuolatos tobulinama, siekiant vis didesnio integracinio laipsnio. Fabrikavimo infrastruktūros atnaujinimo išlaidos tokios didelės, jog fabrikantams kyla klausimas – atnaujinti turimos fabrikacijos įrangą ar statyti naujas patalpas su nauja fabrikavimo infrastruktūra.</div>
<div style="text-align: justify; text-indent: 1.0cm;">
Fabrikavimo patalpos laikomos tūkstančius kartų švaresnės nei ligoninės operacinė – viename kubiniame metre oro yra viena dulkelė, 15 <span style="font-family: "times new roman" , "serif"; font-size: 12.0pt; line-height: 150%;">μ</span>m skersmens (milijoninė dalis metro). Net mažiausi nešvarumai, kaip nematomos plika akimi dulkės (pvz., esant 65 nm fabrikacijos technologijai, net 22-33 nm dalelės pražudo IG), gali sugadinti visą integrinio grandyno fabrikavimo procesą. Todėl patalpų oras ypatingai filtruojamas, o darbuotojai vilki specialius baltus kostiumus, vadinamuosius <i>bunny suits</i> (iš anglų kalbos išvertus – triušių kostiumai), tai apsaugo IG fabrikavimo aplinką nuo pleiskanojančios odos ir plaukų taršos.</div>
<div style="text-align: justify; text-indent: 1.0cm;">
Pats IG gamybos procesas keičiasi priklausomai nuo gaminamo lusto tipo ir fabrikacijos technologijos. Pažangiausi <i>Intel</i> firmos mikroprocesorių fabrikacijos procesai susideda iš maždaug 300 žingsnių-etapų, panaudojant įvairias medžiagas ir technologijas.</div>
<div style="text-align: justify; text-indent: 1.0cm;">
Šioje dalyje bus apžvelgta IG fabrikacija aukščiausiame lygmenyje – pagrindiniai integrinių grandynų gamybos proceso etapai (lusto gamyboje eiliškumas gali nesutapti).</div>
<br />
<h3>
<span style="font-size: large;"><i>Silicio plokštelė (angl. Silicon Wafer)</i></span></h3>
<div style="text-align: justify; text-indent: 1.0cm;">
IG fabrikacija prasideda nuo silicio plokštelės, ant kurios statomas grandynas. Silicis yra puslaidininkis, todėl, skirtingai negu izoliatorius (medžiaga, kuri sulaiko elektronų judėjimą) ar laidininkas (medžiaga, praleidžianti elektronus), silicis gali būti ir izoliatorius, ir laidininkas, tai priklauso nuo to, su kokiomis medžiagomis jis maišomas. Silicis yra puikus pasirinkimas, nes jo gausu gamtoje (sudaro net 27 proc. Žemės plutos masės) ir jo oksidas geras izoliatorius. Visa tai palengvina integrinio grandyno fabrikaciją. Nors silicis – viena labiausiai paplitusių medžiagų, tačiau gryno gamtoje nerandama. Jis išgaunamas iš kvarco, tiksliau kvarcinio smėlio.</div>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiho6vJG0DIOyESXSeoPfhPRXYtkzcMMQMeEYb15fSIVxron1c5ZwoOXBt3pSr6GI978MM48O8wxlIJHmyqhRfRdgdVXVFBc5IdzUKElzPdFaw3qY6OMMYnJljHBGYZqBHevvcJWK1YUcI/s1600/silicio+ploksteles+isgavimas.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="152" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiho6vJG0DIOyESXSeoPfhPRXYtkzcMMQMeEYb15fSIVxron1c5ZwoOXBt3pSr6GI978MM48O8wxlIJHmyqhRfRdgdVXVFBc5IdzUKElzPdFaw3qY6OMMYnJljHBGYZqBHevvcJWK1YUcI/s1600/silicio+ploksteles+isgavimas.png" width="640" /></a></td></tr>
<tr><td class="tr-caption" style="font-size: 12.8000001907349px;"><i>Silicio plokštelės išgavimas ir apdorojimas iki IG lusto</i></td></tr>
</tbody></table>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Norint našių integrinių grandynų, puslaidininkis turi būti itin grynas (be priemaišų). Išgauti ypatingai gryną silicio kristalą naudojama <i>Czochralskio</i> metodas, kvarcas (smėlis) yra įkaitinamas ir išlydomas, atliekamos keletas procedūrų gryno silicio liejiniui išgauti (galima į silicį įterpti šiek tiek kitos medžiagos, siekiant <i>p</i> arba <i>n</i> tipo laidumo puslaidininkio). Užaugintas kristalas dažniausiai būna cilindro formos (šiuo metu jų skersmuo dažniausiai būna apie 300 mm), o jų grynumas siekia 99.9999 proc. Vėliau šie cilindrai supjaustomi į maždaug 0,75 mm storio silicio plokšteles ir viena pusė nupoliruojama iki nepriekaištingai lygaus paviršiaus <span style="text-indent: 1cm;">(žr. pav. apačioje)</span><span style="text-indent: 1cm;">. Tokia puslaidininkio plokštelė, perėjusi visą IG fabrikavimo procesą, turės šimtus stačiakampio formos lustų. Tai integriniai grandynai, kurie supjaustomi į atskiras dalis specialiais deimantiniais diskais, rėžikliais ar lazeriais (žr. pav. viršuje).</span><br />
<br /></div>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgZ57D-LG4od5q3bLV9rjgVUdNN9fu-xeGTWc_lpnEkYukR24KLKPuzmWL5GNV5dCc5S2GlS-SnzMwhNuSIU931bDFMr8xsWAutG08E98QnDDSrP8ubH39C_won1nMZRjCYS_y1ksoi9Nk/s1600/300mm.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="289" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgZ57D-LG4od5q3bLV9rjgVUdNN9fu-xeGTWc_lpnEkYukR24KLKPuzmWL5GNV5dCc5S2GlS-SnzMwhNuSIU931bDFMr8xsWAutG08E98QnDDSrP8ubH39C_won1nMZRjCYS_y1ksoi9Nk/s1600/300mm.png" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;"><i>Nupoliruotos 300 mm silicio plokštelės </i></td></tr>
</tbody></table>
<h3>
<span style="font-size: large;"><i><br /></i></span></h3>
<h3>
<span style="font-size: large;"><i>Epitaksinis auginimas (angl. Epitaxial Growth)</i></span></h3>
<div style="text-align: justify; text-indent: 1.0cm;">
Tai monokristalo sluoksnio auginimas kito monokristalo paviršiuje (pvz., ant silicio plokštelės), kontroliuojant elektronų laidumą specialioje kameroje. Epitaksinis* sluoksnis auginamas virš įkaitintos iki 1200 °C plokštelės, leidžiant dujų ir <i>silicio tetrochlorido</i> mišinį, iš kurio plokštelės paviršiuje nusėda grynas silicis. Norint gauti p ar n tipo laidumo puslaidininkius, galima įterpti kitų medžiagų į <i>silicio tetrochlorido</i> dujas. Priemaišų pasiskirstymas epitaksiniame sluoksnyje tolygus, kas integrinių grandynų fabrikacijoje labai svarbu. Epitaksinis auginimas plačiai taikomas lustų gamyboje, kai reikia daugiau sluoksnių negu įmanoma difuzijos arba joninio legiravimo** būdu.</div>
<blockquote class="tr_bq">
<span style="font-size: small;"><i>* epitãksija 〈epi- + gr. taxis – išdėstymas〉 – vienodai tarp savęs orientuotų kristalų augimas ant tos pačios ar kitos medžiagos.</i></span><br />
<span style="font-size: small;"><i>** legirãvimas 〈plg. legiruoti〉 – priedų, suteikiančių tam tikrų fizikinių, cheminių ar mechaninių savybių, įterpimas į metalą;</i></span></blockquote>
<h3>
<span style="font-size: large;"><i><br /></i></span></h3>
<h3>
<span style="font-size: large;"><i>Oksidavimas (angl. Oxidation)</i></span></h3>
<div style="text-align: justify; text-indent: 1.0cm;">
Silicio oksidas yra puikus izoliatorius ir turi savybę sulaikyti priemaišų difuziją, todėl pasitarnauja kaip puikus apsauginis sluoksnis. Jo neveikia dauguma reagentų, tad palengvina priemaišų įterpimą į norimas vietas integrinio grandyno elementų suformavimui.</div>
<div style="text-align: justify; text-indent: 1.0cm;">
Silicio plokštelės oksidavimas vyksta 950–1115 °C temperatūroje, leidžiant deguonies arba deguonies ir vandens garų mišinio dujas. Įvykus cheminei reakcijai ant plokštelės paviršiaus susidaro silicio dioksidas SiO2. Šis oksidacijos procesas dar vadinamas termine oksidacija dėl aukštų temperatūrų auginant oksido sluoksnį. Jo storis priklauso nuo trukmės, temperatūros ir drėgmės.</div>
<div style="text-align: justify; text-indent: 1.0cm;">
Ploni (0,02–0,1 μm storio) silicio dioksido sluoksniai naudojami kaip izoliacija po MOP tranzistorių užtūromis. </div>
<div style="text-align: justify; text-indent: 1.0cm;">
Storesni (0,1–1 μm) naudojami plokštelės paviršiui apsaugoti nuo priemaišų difuzijos ar joninio legiravimo procese į paviršių išeinančioms <i>pn</i> sandūroms izoliuoti, suformuoto lusto-integrinio grandyno paviršiui apsaugoti nuo aplinkos poveikio.</div>
<h3>
<span style="font-size: large;"><i><br /></i></span></h3>
<h3>
<span style="font-size: large;"><i>Ėsdinimas (angl. Etching)</i></span></h3>
<div style="text-align: justify; text-indent: 1.0cm;">
Po terminės oksidacijos silicio plokštelė pilnai padengta oksido sluoksniu, kuris stipriai saugo silicio plokštelę nuo sąveikavimo. Norint sukurti integrinį grandyną, dioksido sluoksnį numatytose vietose reikia pašalinti ir atitinkamai įterpti priemaišų/medžiagų, reikalingų jungiamiesiems takeliams, diodams, tranzistoriams bei kitiems integrinio grandyno elementams suformuoti. To pasiekti padeda IG fabrikacijos procesas, vadinamas ėsdinimu (angl. <i>etchnig</i>) – medžiagos sluoksnių pašalinimas nuo kristalo paviršiaus cheminiu, elektrocheminiu, joniniu ar plazmocheminiu ėsdinimu. Suprantama, ėsdinimo operacijų IG fabrikacijoje būna daug ir įvairių.</div>
<div style="text-align: justify; text-indent: 1.0cm;">
Cheminis ėsdinimas – viena pirmųjų ėsdinimo technologijų IG fabrikavime, dar vadinama drėgnu ėsdinimu. Tai plokštelės sluoksnių ardymas skystu tirpikliu. Nuėsdinamo sluoksnio storis priklauso nuo tirpalo koncentracijos, temperatūros bei trukmės.</div>
<div style="text-align: justify; text-indent: 1.0cm;">
Elektrocheminis ėsdinimas – vyksta tik tirpikliu tekant elektros srovei. Pašalinamo sluoksnio storis reguliuojamas tekančios tirpikliu elektros srovės stipriu ir trukme.</div>
<div style="text-align: justify; text-indent: 1.0cm;">
Joninis malimas – atliekamas labai žemame slėgyje (10 mPa), siekiant sumažinti susidūrimų su atmosferos dujomis. Plokštelės paviršiaus apšaudymas greitaisiais jonais (inertinių dujų).</div>
<div style="text-align: justify; text-indent: 1.0cm;">
Plazmocheminis ėsdinimas – taip pat atliekamas žemame slėgyje (133 Pa). Paviršių apšaudę jonai ne tik jį ardo, bet ir sąveikauja su ėsdinamąja medžiaga.</div>
<h3>
<span style="font-size: large;"><i><br /></i></span></h3>
<h3>
<span style="font-size: large;"><i>Fotolitografija (angl. Photolithography)</i></span></h3>
<div style="text-align: justify; text-indent: 1.0cm;">
Svarbiausias silicio plokštelės apdorojimo technologijos procesas, pagrįstas medžiagų savybe keisti atsparumą tirpikliams, paveikus jas šviesa. Fotolitografijos procese silicio plokštelė po oksidavimo proceso padengiama fotorezisto* sluoksniu (žr. pav., a ir b), ant jo uždedamas fotošablonas (skaidri plokštelė, iš apačios dalinai padengta metalo užtvariniu sluoksniu). Taip paruoštas šablonas iš viršaus apšviečiamas ultravioletiniais (UV) spinduliais (žr. pav., c). Apšviestos fotorezisto vietos praranda atsparumą ėsdinantiems tirpikliams ir yra pašalinamos ryškinimo metu (galimas ir atvirkščias procesas), tose vietose matyti dioksido sluoksnis (žr. pav., d). Šis SiO2 sluoksnis pašalinamas kitu tirpikliu, ėsdinančiu silicio dioksidą, ant kurio nėra likusio fotorezisto (žr. pav., e). Dar vienu tirpikliu pašalinamas fotorezistas ir plokštelės paviršiuje lieka išraižytas silicio oksido sluoksnis (žr. pav., f), tiksliai pakartojantis fotošablono vaizdą.</div>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj6rzD-gltMQQssFDeSe9Mcm9WsSHQTfjLDXhyrKoK40c-UcGXez_luPmfjEcBceOCt9E8uFkisK2gWTs5gDmA7KYKq3nAZsZehfUdsulTS7ZK7AHio1_uvF2wSEQAa2ovXuSFI4r0UTmY/s1600/fotolitografijos+procesas.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj6rzD-gltMQQssFDeSe9Mcm9WsSHQTfjLDXhyrKoK40c-UcGXez_luPmfjEcBceOCt9E8uFkisK2gWTs5gDmA7KYKq3nAZsZehfUdsulTS7ZK7AHio1_uvF2wSEQAa2ovXuSFI4r0UTmY/s1600/fotolitografijos+procesas.png" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Pilka – silicio plokštelė; mėlyna – silicio dioksido sluoksnis; ruda – fotorezistas</td></tr>
</tbody></table>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Įprasto fotolitografijos proceso metu naudojant ultravioletinę šviesą galima pagaminti integrinio grandyno elementus iki 2 mikronų dydžio (kadangi fotolitografijoje naudojamų UV bangų ilgis yra 0,3–0,4 <span style="font-family: "times new roman" , "serif"; font-size: 12.0pt; line-height: 150%;">μ</span>m, o difrakcijos efektas jas padidina daugiau nei penkis kartus, atsiranda technologinis limitas). Pasitelkiant naujesnes litografijos technologijas (naudojant trumpesnių bangų šaltinius), rentgeno spindulius ar apšaudant elektronais, įmanoma pagaminti ir mažesnius nei vieno mikrono integrinio grandyno elementus.</div>
<blockquote class="tr_bq">
<span style="font-size: small;">* <i>Fotorezistas yra šviesai jautris medžiaga, naudojama keliose pramonės procesuose, tokių kaip fotolitografija ir fotograviravimas, siekiant suformuoti šabloninę dangą ant paviršiaus.</i></span></blockquote>
<br />
<h3>
<span style="font-size: large;"><i>Difuzija (angl. Diffusion)</i></span></h3>
<div style="text-align: justify; text-indent: 1.0cm;">
Kaip jau buvo užsiminta, IG fabrikacijos procese taikomas legiravimas (priemaišų įterpimas į silicio plokštelę), siekiant pakeisti silicio elektrines savybes. Valdomas priemaišų įterpimas į silicį yra viena pagrindinių užduočių formuojant integrinio grandyno lustą – IG elementus (pvz., diodus, tranzistorius ir kt.).</div>
<div style="text-align: justify; text-indent: 1.0cm;">
Vienas iš būdų įterpti priemaišas į silicį – įlydyti jas pasitelkiant difuziją. Norint sukelti difuziją priemaišos atomams reikia suteikti energijos (pvz., šiluminiu energijos perdavimo būdu). Tam silicio plokštelės su priemaišomis kaitinamos specialioje krosnyje, kurios temperatūra maždaug 1150 °C ir tolygiai pasiskirsčiusi visoje kameroje. Priemaišų nešėjas paprastai yra dujos (sausas deguonis ar azotas). Proceso tikslas – įterpti donorines ar akceptorines priemaišas į neapsaugotus dioksido sluoksniu silicio plokštelės „langus“ ir suformuoti ten norimus IG elementus (pvz., <i>pn</i> sandūras – diodus). Difuzijos gylis – atomų įsiskverbimas į medžiagą – priklauso nuo trukmės, paprastai šis procesas trunka iki 2 val.</div>
<h3>
<span style="font-size: large;"><i><br /></i></span></h3>
<h3>
<span style="font-size: large;"><i>Joninis legiravimas (angl. Ion Implantation)</i></span></h3>
<div style="text-align: justify; text-indent: 1.0cm;">
Joninis legiravimas yra kitas metodas įterpti priemaišos atomus į silicio plokštelę ir šiuo metu labiausiai naudojamas dėl tikslumo. Jonizuoti priemaišos atomai dalelių greitintuvuose yra pagreitinti didelės įtampos elektriniu lauku iki labai didelės energijos (paprastai pagreitinto jono energija būna tarp 10 ir 500 keV) ir šaudomi į taikinį (silicio plokštelę). Greitinimo procesas vyksta vakuume, siekiant išvengti įgreitintų dalelių susidūrimo su atmosferos dujomis, nes tai pakeistų nustatytą kryptį bei energiją. Šaudomi jonai dėl didelės jų kinetinės energijos nesunkiai įsiskverbia į silicio plokštelę ir ten apsigyvena. Įsiskverbimo gylis priklauso nuo medžiagų ir elektrinio lauko stiprumo dalelėms įgreitinti.</div>
<div style="text-align: justify; text-indent: 1.0cm;">
Norint priemaišų jonus įterpti tiksliai tik į pageidaujamas vietas naudojamas apsauginis sluoksnis iš fotorezisto ir silicio dioksido. Prieš apšaudant silicio plokštelę jonais, jis plonu sluoksniu oksiduojamas (žr pav., a), tai atlieka izoliatoriaus ir apsauginio sluoksnio funkcijas, bet turi būti pakankamai plonas, jog praleistų šaudomus priemaišų jonus. SiO2 sluoksnis padengiamas fotorezistu, kuriame išbraižomi „langai“ pagal pasirinktą fotošabloną (žr pav., b). Toliau lustas apšaudomas priemaišų jonais. Jonai įsiskverbė į fotorezistu neapsaugotas „languotas“ šablono vietas (žr pav., c), o likęs fotorezistas nuėsdinamas tirpikliu.</div>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi4aaz79_eJLfeNGhltoIzXnjXPyZekmJtvSoEbNl9IB9QBujPOAfOiahS9kirjlKb8_LWLlb4rov6uMP5Cuotrg-6QcRehu3aTM8I8qCL2zwk0TsTMIPp8hX2s_SJQky4kqpR4UExOlvQ/s1600/joninis+legiravimas.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi4aaz79_eJLfeNGhltoIzXnjXPyZekmJtvSoEbNl9IB9QBujPOAfOiahS9kirjlKb8_LWLlb4rov6uMP5Cuotrg-6QcRehu3aTM8I8qCL2zwk0TsTMIPp8hX2s_SJQky4kqpR4UExOlvQ/s1600/joninis+legiravimas.png" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Pilka – silicio plokštelė; mėlyna – silicio dioksido sluoksnis; ruda – fotorezistas; žalia – įterptos priemaišos</td></tr>
</tbody></table>
<br />
<span style="text-align: justify; text-indent: 1.0cm;">Paskutinis <i>joninio legiravimo</i> etapas yra grūdinimas aukštos temperatūros kameroje. Šis aukštos temperatūros grūdinimas skatina papildomą difuziją – priemaišos įsiskverbimą į silicio plokštelę dar giliau, kur susiformuoja tvirti IG elementai (pvz., <i>pn</i> sandūra – diodas). Aukšta temperatūra taip pat atitaiso pažeistus sluoksnius nuo stipraus apšaudymo didelės energijos jonais, kurie mažiau ar daugiau ardo silicio plokštelės struktūrą. Sritis, į kurią įterpti priemaišų atomai, po grūdinimo vadinama <i>difuziniu klodu</i> (žr pav., d).</span><br />
<br />
<h3>
<span style="font-size: large;"><i>Metalizavimas (angl. Metallization)</i></span></h3>
<div style="text-align: justify; text-indent: 1.0cm;">
Šio proceso tikslas suformuoti ploną metalinį sluoksnį – plėvelę, iš kurios bus sudaromi jungiamieji laidieji takeliai tranzistoriams bei kitiems IG elementams sujungti. Metalizavimui dažniausiai naudojamas aliuminis, nes yra geras laidininkas ir gerai sąveikauja su siliciu.</div>
<div style="text-align: justify; text-indent: 1.0cm;">
Šiam metalizavimo procesui naudojama speciali vakuuminė garinimo kamera. Patalpinus į ją silicio plokštelę oras išsiurbiamas iki maždaug 0,00001 Pa slėgio (sumažėjus slėgiui sumažėja medžiagų virimo temperatūra). Aliuminio medžiaga galingu elektronų spinduliu įkaitinama iki virimo temperatūros ir pradeda garuoti. Virš garuojančio aliuminio įtaisyta silicio plokštelė garinama; aliuminio garai pasiekę plokštelę kondensuojasi, sukietėja ir padengia ją plona aliuminio plėvele. Po metalizacijos proceso plokštelė pilnai padengta aliuminio plėvele. Sekančiais fotolitografijos ir ėsdinimo procesais suformuojami reikalingi laidieji takeliai, jungiantys IG elementus.</div>
<br />
<hr align="left" size="1" width="75%" />
<h2>
<span style="font-size: x-large;">Lustų apdorojimas</span></h2>
<div style="text-align: justify; text-indent: 1.0cm;">
Paskutinis IG fabrikavimo procesas – silicio plokštelės integrinių grandynų kontrolė (patikrinimas) ir atskyrimas nuo bendros silicio plokštelės į individualias dalis, supjaustant specialiais deimantiniais diskais, lazeriais ar deimantiniais rėžtukais į pavienius lustus.<br />
<br /></div>
<div style="text-align: justify; text-indent: 1.0cm;">
Dėl IG fabrikavimo technologinio sudėtingumo, ilgus metus silicio plokštelė su šimtais lustų turėdavo daugiau neveikiančių-brokuotų, nei veikiančių integrinių grandynų. Geriausiu atveju iš vienos silicio plokštelės tik 25 proc. lustų pilnai funkcionuodavo pagal normatyvus.</div>
<div style="text-align: justify; text-indent: 1.0cm;">
Šiais laikais brokuotų integrinių grandynų dalis per silicio plokštelę svyruoja nuo 2 iki 90 proc., tai priklauso nuo fabrikavimo technologijos įsisavinimo, kuri yra nuolat atnaujinama ir kelia vis naujus iššūkius lustų fabrikantams. Vienas iš nuolatinio technologinio progreso pavyzdžių yra <i>Intel </i>firmos <i>Tick-Tock</i> mikroprocesorių plėtojimo modelis. Šiuo cikliniu modeliu <i>Intel </i>įsipareigoja tęsti pažangą procesorių fabrikacijos technologiniame procese ir mikroarchitektūros inovacijas, su kasmet besikeičiančiais <i>Tick</i> ir <i>Tock</i> ciklais. <i>Tick</i> ciklas reprezentuoja integracijos laipsnio didėjimą, o <i>Tock</i> naują mikroarchitektūrą. Šis ciklinis modelis paremtas <i>Mūro dėsniu</i>.<br />
<br /></div>
<div style="text-align: justify; text-indent: 1.0cm;">
Taigi, siekiant išvengti papildomų kaštų montuojant, hermetizuojant, įpakuojant ir transportuojant IG lustus pardavimui, visi IG lustai turi pirmiausiai praeiti griežtą kontrolę dar prieš supjaustant silicio plokštelę į individualias dalis (integrinius grandynus). Kontrolę atlieka visiškai automatizuotas prietaisas, vadinamas zondu, kuris iš eilės apeina visus lustus ir tikrina IG veikimą bei jo elektrinius parametrus (žr. pav. apačioje). Brokuoti lustai patepami paskutinei kelionei (pažymimi dažais) ir vėliau pašalinami iš produkcijos.</div>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh9icV3EgA4b9ecRUbYBPBXZjkvu72DTFkUL2_Kya4JINDbW7VzpfZ0D5OUV_94YZqL5a3CmhEJRnPR46gtRo7gmD9ta9hEnfLj5s28YpRpcq_fXjm12CX7FicBdaN5csjNAu_pmk-39Ys/s1600/IG+zonduojamas.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="396" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh9icV3EgA4b9ecRUbYBPBXZjkvu72DTFkUL2_Kya4JINDbW7VzpfZ0D5OUV_94YZqL5a3CmhEJRnPR46gtRo7gmD9ta9hEnfLj5s28YpRpcq_fXjm12CX7FicBdaN5csjNAu_pmk-39Ys/s1600/IG+zonduojamas.png" width="640" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;"><b>Automatizuotas IG zondavimas ant silicio plokštelės, po patikros defektiniai lustai pažymimi dažais ir vėliau atmetami</b></td></tr>
</tbody></table>
<br />
<hr align="left" size="1" width="75%" />
<h2>
<span style="font-size: x-large;">Išvados</span></h2>
<div style="text-align: justify;">
<ol>
<li>Informacijos amžiuje formuojantis naujų pažiūrų ir įpročių informacinei visuomenei, didėja informacijos kiekiai ir srautai, kuriems apdoroti reikia vis spartesnių elektrinių įrenginių. Taigi, labai svarbu didinti elektrinių prietaisų veikimo spartą ir efektyvumą.</li>
<li>Integrinis grandynas yra labai mažų matmenų puslaidininkio monokristalas, kurio tūryje sudaromi elementai (tranzistoriai, ...) ir juos jungiantys metalizuoti takeliai. Pagal tranzistorių tipą, integriniai grandynai skirstomi į dvipolius (Bi) ir MOP integrinius grandynus. Paskutinieji, o tiksliau jų grupės KMOP grandynai labiausiai išvystyti ir šiuo metu dominuoja dėl savo ypatybės mažam energijos kiekiui.</li>
<li>Nepaisant savo nuopelnų, integrinis grandynas nėra netikėtas išradimas – panašų sprendimą dar 1949 metais užpatentavo vokiečių inžinierius Verneris Jakobas (<i>Werner Jacobi</i>), vėliau, 1952 metais, britų radijo inžinierius Džefris Dameris (<i>Geoffrey Dummer</i>) pasiūlė integruoti standartinius elektroninius komponentus į monolitinį puslaidininkio kristalą. Akivaizdu, jog šiam išradimui jau buvo pribręsta, kai 1958 m. pasirodė pirmieji lustai net iš kelių inžinierių stovyklų. Daug svarbesnis yra tranzistoriaus išradimas iš puslaidininkio, neišvengiamai atvedęs prie IG išradimo.</li>
<li>Pradžioje didelės investicijos iš JAV karinės pramonės ir NASA agentūros skatino integrinių grandynų technologinę pažangą (integracijos laipsnio didėjimą), vėliau estafetę perėmė informacijos visuomenės susikūrimas, kurios nariai nebeįsivaizduoja gyvenimo be interneto ir mobilaus ryšio prietaiso, telpančio į kelnių kišenę.</li>
<li>Integrinių grandynų panaudojimas labai platus, nuo karinės pramonės (pvz., kovinių raketų, valdomų kulkų) iki buitinės technikos (pvz., skalbimo mašina) ar medicinos (įvairūs elektroniniai implantai kaip širdies stimuliatorius, skaitmeninis pasas).</li>
<li>Integrinių grandynų technologija paremta puslaidininkių unikalia savybe – jie gali tarnauti ir kaip izoliatorius, ir kaip laidininkas, priklauso nuo to, kaip jis apdirbtas. Vargu ar būtų atsiradusi alternatyva, galinti pavaduoti šią visapusišką medžiagą nuolatos didinančia savo integracijos laipsnį integriniuose grandynuose.</li>
<li>Silicis yra puikus pasirinkimas fabrikuojant integrinius grandynus ne tik dėl to, jog jo gausu gamtoje (silicis sudaro net 27 proc. Žemės plutos masės), bet jo oksidas yra stiprus izoliatorius, kurį palyginus nesunku „užauginti“ ant silicio plokštelės ir vėliau apdirbti pagal poreikius. Visa tai labai palengvina integrinio grandyno fabrikaciją.</li>
<li>Didėjant lustų integraciniam laipsniui – integrinio grandyno elementų skaičiui luste (ypač per vienetinį plotą), visos IG savybės pagerėja: sumažėja elektroninės įrangos tūris, masė, suvartojamas energijos kiekis bei didėja sparta ir patikimumas.</li>
<li>Kalbant apie integrinių grandynų progreso sulėtėjimą ar visišką stagnaciją, reiktų atkreipti dėmesį į tai, kokią svarbią poziciją užima šios technologijos vystymas šiuolaikinėje visuomenėje bei į nuolatos augantį puslaidininkių pramonės mastą su savo mokslinių tyrimų ir plėtros padaliniais, kurie aktyviai bendradarbiauja su akademinėmis įstaigomis. Visada sunku nuspėti realias prognozes daugiau nei dešimtmetį į priekį, visgi atsižvelgiant į šiuo metu vystomas technologijas ir augantį IG kapitalo dydį, tikėtina, jog integrinių grandynų progresas niekur nesustos.</li>
<li>Lustų fabrikavimas labai sudėtingas, pusiau automatizuotas procesas, reikalaujantis didelių investicijų, laiko ir aukštos kvalifikacijos specialistų kontrolės visų IG fabrikavimo procesų metu. Pats fabrikavimo technologinis procesas turi būti nuolat atnaujinamas arba produktai greit taps nekonkurencingi rinkos ekonomikoje. Fabrikavimo infrastruktūros atnaujinimo išlaidos tokios didelės, jog fabrikantams kyla klausimas – atnaujinti turimos fabrikacijos įrangą ar statyti naujas patalpas su nauja fabrikavimo infrastruktūra</li>
<li>Labai svarbu prieš parduodant integrinį grandyną kaip produktą jį patikrinti, norint išvengti papildomų išlaidų montuojant, hermetizuojant, įpakuojant ir transportuojant, dėl didelės tikimybės, jog integrinis grandynas gali būti brokuotas. Šiais laikais brokuotų integrinių grandynų dalis per silicio plokštelę svyruoja nuo 2 iki 90 proc., tai priklauso nuo fabrikavimo technologijos įsisavinimo.</li>
</ol>
<br />
<hr align="left" size="1" width="100%" />
<br />
<h3 style="text-align: start;">
<span style="font-family: inherit; font-size: large;">
Kitos šio straipsnio dalys:</span></h3>
<div>
<ol>
<a href="https://skarware.blogspot.com/2015/04/integrinis-grandynas-i-dalis.html" target="_blank">I dalis: Integrinio grandyno koncepcija, istorinė raida ir klasifikacija</a><br />
<a href="https://skarware.blogspot.com/2015/04/muro-desnis-moores-law-ig-ii-dalis.html" target="_blank">II dalis: Mūro dėsnis ir integracinio laipsnio didėjimas</a><br />
<b style="background-color: #fbf49b;">III dalis: Integrinio grandyno fabrikavimas</b><br />
</ol>
<br />
<hr align="left" size="1" width="50%" />
</div>
</div>
Martynashttp://www.blogger.com/profile/00471091754225207342noreply@blogger.com0tag:blogger.com,1999:blog-5426813891256937073.post-8255171365019337682015-04-25T19:00:00.001+03:002021-07-03T00:06:24.235+03:00Mūro dėsnis (Moore’s Law) [IG, II dalis]<h2 style="text-align: justify;">
<span style="font-size: large;">Gordonas Mūras</span></h2>
<div style="text-align: justify; text-indent: 1.0cm;">
1965 metais populiariame <i>Electronics</i> žurnale buvo išspausdintas straipsnis "<i><a href="http://www.monolithic3d.com/uploads/6/0/5/5/6055488/gordon_moore_1965_article.pdf" target="_blank">Cramming more components onto integrated circuits</a></i>". Jo autorius, tuometinis Fairchild kompanijos mokslinių tyrimų ir plėtros padalinio vadovas, Gordonas Mūras (<i>Gordon Moore</i>) buvo paprašytas <i>Electronics</i> žurnalo nuspėti, kaip plėtosis puslaidininkių komponentų pramonė per artimiausius dešimt metų. Publikuotame straipsnyje Mūras išanalizavo integrinių grandynų su mažiausia savikaina per elementą integracinio laipsnio augimą nuo 1959 iki 1964 metų ir padarė išvadas: artimiausią dešimtmetį integrinių grandynų elementų (tranzistorių, varžų, diodų ar kondensatorių) skaičius padvigubės kiekvienais metais. Vadinasi, 1975 metais integriniai grandynai su mažiausia savikaina per elementą turėjo turėti 65 000 elementų. <br />
<br /></div>
<div style="text-align: justify; text-indent: 1.0cm;">
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEipOFlXy_ywK7Q0HyYeeYW4KdNOgZ8h2ws7Z0DjqlczvOrYFyFeOAn7lQzzhGUHUZNhyTuMjs7upolkZEqMdnnuJ2xdO3KZzW4M5Lt217fDXiljJyouMFIVldULWARSDvPqmVaoo-TRkxc/s1600/1965+m.+lustai.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEipOFlXy_ywK7Q0HyYeeYW4KdNOgZ8h2ws7Z0DjqlczvOrYFyFeOAn7lQzzhGUHUZNhyTuMjs7upolkZEqMdnnuJ2xdO3KZzW4M5Lt217fDXiljJyouMFIVldULWARSDvPqmVaoo-TRkxc/s1600/1965+m.+lustai.png" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Keletas Mūro analizuotų lustų 1965 m., rašant publikaciją <i>Electronics</i> žurnalui</td></tr>
</tbody></table>
<br /></div>
<div style="text-align: justify; text-indent: 1.0cm;">
Po dešimtmečio, 1975 metais, jau kaip vienas iš <i>Intel </i>firmos įkūrėjų, Mūras peržvelgė savo prognozę, kuri pasirodė esanti pakankamai tiksli. Išanalizavęs naujus tuometinius duomenis ir įvertinęs perspektyvas jis patikslino savo prognozę IG ateinantiems dešimtmečiams (žr. pav. apačioje), kuri netrukus tapo žinoma kaip Mūro dėsnis (angl. <i>Moore’s Law</i>): <b><i>Integrinių grandynų elementų skaičius padvigubėja kas dvejus metus.</i></b></div>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgkbWil608_Y8NmVRJ0jy1wod8pgfmQqPNcZg3P2_IgWuYJGq07dqQ-00iHRaqSwk63Eyqc8dVVTfw9Hg_gEsPWvrrl82Q-fyANe710WevpXXVarS58apTN4s27657yA9nRGJG4G41QbPk/s1600/muro+desnio+diagramos.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgkbWil608_Y8NmVRJ0jy1wod8pgfmQqPNcZg3P2_IgWuYJGq07dqQ-00iHRaqSwk63Eyqc8dVVTfw9Hg_gEsPWvrrl82Q-fyANe710WevpXXVarS58apTN4s27657yA9nRGJG4G41QbPk/s1600/muro+desnio+diagramos.png" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Dešinėje: 1965 m. Mūro straipsnyje pavaizduota projekcija, numatanti artimiausio dešimtmečio integracinio laipsnio augimą;<br />
Kairėje: 1975 m. Mūro peržiūrėta integracijos laipsnio projekcija, remiantis to meto paskutiniais duomenimis.</td></tr>
</tbody></table>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Dar kartą įvertinęs puslaidininkių pramonės padėtį ir perspektyvas 1995 metais, kai <i>Intel Pentium</i>
procesorius turėjo 5,5 milijonus tranzistorių, Mūras padarė išvadas,
jog jo paskutinė 1975 m. prognozė greitu laiku netaps relikvija
integrinių grandynų fabrikacijoje.</div>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Gordono Mūro įžvalgos į integrinių grandynų plėtrą tapo kaip vedlys ir iššūkis, technologinės plėtros paskatinimas puslaidininkių pramonei. Dar ir šiandien, po 50-ties metų, <i>Intel</i> kompanija stengiasi neatsilikti nuo Mūro dėsnio ir yra akivaizdi IG fabrikavimo lyderė (žr. pav. apačioje).</div>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiLsaCJALq4co26ceNusMcbCZRmFZ9bO3OJs4ilFr72rBFEOV4f2-ftjF3anlkipIo0LlL6AaEpFNH6WcGn4Z0w1gXOyJmlVLdUhwmlqq9ZTjrLAnhBT9Suik7aUBSCt2SMUTUKoit5pIY/s1600/Transistor_Count_and_Moore's_Law_-_2011.svg.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="572" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiLsaCJALq4co26ceNusMcbCZRmFZ9bO3OJs4ilFr72rBFEOV4f2-ftjF3anlkipIo0LlL6AaEpFNH6WcGn4Z0w1gXOyJmlVLdUhwmlqq9ZTjrLAnhBT9Suik7aUBSCt2SMUTUKoit5pIY/s1600/Transistor_Count_and_Moore's_Law_-_2011.svg.png" width="640" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Mūro dėsnio kreivė ir tranzistorių skaičius mikroprocesoriuose nuo 1971 iki 2011 m.</td></tr>
</tbody></table>
<br />
<hr align="left" size="1" width="75%" />
<br />
<h2>
<span style="font-size: x-large;">Integracijos laipsnis</span></h2>
<div style="text-align: justify; text-indent: 1.0cm;">
Kaip jau buvo užsiminta pirmoje dalyje, integrinių grandynų pažangumą galima matuoti jų integracijos laipsniu, ypač kai elementų tankis per vienetinį plotą vienodas. Didėjant IG elementų skaičiui luste, visos IG savybės pagerėja: mažėja el. įrangos tūris, masė, elementų suvartojamos energijos kiekis bei didėja lusto sparta ir patikimumas.</div>
<div style="text-align: justify; text-indent: 1.0cm;">
Lustų integracijos laipsnis randamas pagal formulę:</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhqMdoKmPH4KIiDsbYjn6Oloz3aGdp40zt1nepWjAZnOMLQ7B0U6nJf6BVjtGjVdTEy6cm9g0v1oUn85dgVZXQ4YeVLO4YmA2oU6nq_ZdzIiEZ78ivUdI5UNh6EOePXnCMMo8JAGc6PVkE/s1600/integracinis+laipsnis+formule.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhqMdoKmPH4KIiDsbYjn6Oloz3aGdp40zt1nepWjAZnOMLQ7B0U6nJf6BVjtGjVdTEy6cm9g0v1oUn85dgVZXQ4YeVLO4YmA2oU6nq_ZdzIiEZ78ivUdI5UNh6EOePXnCMMo8JAGc6PVkE/s1600/integracinis+laipsnis+formule.png" /></a></div>
<div style="text-align: justify;">
čia <i>N</i> – elementų skaičiaus luste, <i>K</i> – integracijos laipsnis, lygus artimiausiam sveikajam skaičiui.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: right;">
<span style="font-size: small;">Elementų skaičius IG ir integracijos laipsnis</span></div>
<div style="text-align: justify;">
<br /></div>
<div align="center">
<table border="1" cellpadding="0" cellspacing="0" class="MsoTableGrid" style="border-collapse: collapse; border: none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 0cm 5.4pt 0cm 5.4pt; mso-yfti-tbllook: 1184; width: 611px;">
<tbody>
<tr style="height: 13.0pt; mso-yfti-firstrow: yes; mso-yfti-irow: 0;">
<td style="border: solid windowtext 1.0pt; height: 13.0pt; mso-border-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 52.0pt;" valign="top" width="69"><div align="center" class="MsoNormal" style="text-align: center;">
<b><span style="font-size: 11.0pt;">Nuo ~<o:p></o:p></span></b></div>
</td>
<td style="border-left: none; border: solid windowtext 1.0pt; height: 13.0pt; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 127.6pt;" valign="top" width="170"><div align="center" class="MsoNormal" style="text-align: center;">
<b><span style="font-size: 11.0pt;">Elementų
skaičius<o:p></o:p></span></b></div>
</td>
<td style="border-left: none; border: solid windowtext 1.0pt; height: 13.0pt; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 4.0cm;" valign="top" width="151"><div align="center" class="MsoNormal" style="text-align: center;">
<b><span style="font-size: 11.0pt;">Integracijos
laipsnis<o:p></o:p></span></b></div>
</td>
<td style="border-left: none; border: solid windowtext 1.0pt; height: 13.0pt; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 165.3pt;" valign="top" width="220"><div align="center" class="MsoNormal" style="text-align: center;">
<b><span style="font-size: 11.0pt;">Angliškas
žymėjimas<o:p></o:p></span></b></div>
</td>
</tr>
<tr style="height: 12.2pt; mso-yfti-irow: 1;">
<td style="border-top: none; border: solid windowtext 1.0pt; height: 12.2pt; mso-border-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 52.0pt;" valign="top" width="69"><div align="center" class="MsoNormal" style="text-align: center;">
<span style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt;">1958 m.<o:p></o:p></span></div>
</td>
<td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; height: 12.2pt; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 127.6pt;" valign="top" width="170"><div align="center" class="MsoNormal" style="text-align: center;">
<span style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt;"><100<o:p></o:p></span></div>
</td>
<td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; height: 12.2pt; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 4.0cm;" valign="top" width="151"><div align="center" class="MsoNormal" style="text-align: center;">
<span style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt;">Mažas<o:p></o:p></span></div>
</td>
<td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; height: 12.2pt; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 165.3pt;" valign="top" width="220"><div align="center" class="MsoNormal" style="text-align: center;">
<i><span style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt;">Small-scale integration (SSI)<o:p></o:p></span></i></div>
</td>
</tr>
<tr style="height: 12.2pt; mso-yfti-irow: 2;">
<td style="border-top: none; border: solid windowtext 1.0pt; height: 12.2pt; mso-border-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 52.0pt;" valign="top" width="69"><div align="center" class="MsoNormal" style="text-align: center;">
<span style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt;">1970 m.<o:p></o:p></span></div>
</td>
<td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; height: 12.2pt; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 127.6pt;" valign="top" width="170"><div align="center" class="MsoNormal" style="text-align: center;">
<span style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt;">>100<o:p></o:p></span></div>
</td>
<td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; height: 12.2pt; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 4.0cm;" valign="top" width="151"><div align="center" class="MsoNormal" style="text-align: center;">
<span style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt;">Vidutinis<o:p></o:p></span></div>
</td>
<td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; height: 12.2pt; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 165.3pt;" valign="top" width="220"><div align="center" class="MsoNormal" style="text-align: center;">
<i><span style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt;">Medium-scale integration (MSI)<o:p></o:p></span></i></div>
</td>
</tr>
<tr style="height: 12.2pt; mso-yfti-irow: 3;">
<td style="border-top: none; border: solid windowtext 1.0pt; height: 12.2pt; mso-border-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 52.0pt;" valign="top" width="69"><div align="center" class="MsoNormal" style="text-align: center;">
<span style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt;">1975 m.<o:p></o:p></span></div>
</td>
<td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; height: 12.2pt; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 127.6pt;" valign="top" width="170"><div align="center" class="MsoNormal" style="text-align: center;">
<span style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt;">>10 000<o:p></o:p></span></div>
</td>
<td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; height: 12.2pt; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 4.0cm;" valign="top" width="151"><div align="center" class="MsoNormal" style="text-align: center;">
<span style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt;">Didelis<o:p></o:p></span></div>
</td>
<td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; height: 12.2pt; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 165.3pt;" valign="top" width="220"><div align="center" class="MsoNormal" style="text-align: center;">
<i><span style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt;">Large-scale integration (LSI)<o:p></o:p></span></i></div>
</td>
</tr>
<tr style="height: 10.0pt; mso-yfti-irow: 4;">
<td style="border-top: none; border: solid windowtext 1.0pt; height: 10.0pt; mso-border-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 52.0pt;" valign="top" width="69"><div align="center" class="MsoNormal" style="text-align: center;">
<span style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt;">1980 m.<o:p></o:p></span></div>
</td>
<td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; height: 10.0pt; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 127.6pt;" valign="top" width="170"><div align="center" class="MsoNormal" style="text-align: center;">
<span style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt;">>100 000<o:p></o:p></span></div>
</td>
<td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; height: 10.0pt; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 4.0cm;" valign="top" width="151"><div align="center" class="MsoNormal" style="text-align: center;">
<span style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt;">Labai didelis<o:p></o:p></span></div>
</td>
<td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; height: 10.0pt; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 165.3pt;" valign="top" width="220"><div align="center" class="MsoNormal" style="text-align: center;">
<i><span style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt;">Very-large-scale integration (VLSI)<o:p></o:p></span></i></div>
</td>
</tr>
<tr style="height: 12.2pt; mso-yfti-irow: 5; mso-yfti-lastrow: yes;">
<td style="border-top: none; border: solid windowtext 1.0pt; height: 12.2pt; mso-border-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 52.0pt;" valign="top" width="69"><div align="center" class="MsoNormal" style="text-align: center;">
<span style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt;">1990 m.<o:p></o:p></span></div>
</td>
<td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; height: 12.2pt; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 127.6pt;" valign="top" width="170"><div align="center" class="MsoNormal" style="text-align: center;">
<span style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt;">>1 000 000<o:p></o:p></span></div>
</td>
<td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; height: 12.2pt; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 4.0cm;" valign="top" width="151"><div align="center" class="MsoNormal" style="text-align: center;">
<span style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt;">Ypač didelis<o:p></o:p></span></div>
</td>
<td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; height: 12.2pt; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 165.3pt;" valign="top" width="220"><div align="center" class="MsoNormal" style="text-align: center;">
<i><span style="font-size: 10.0pt; mso-bidi-font-size: 11.0pt;">Ultra-large-scale integration (ULSI)<o:p></o:p></span></i></div>
</td>
</tr>
</tbody></table>
</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify; text-indent: 1.0cm;">
Norint išlaikyti pusiausvyrą su Mūro dėsniu, reikia nuolatos didinti mikroelektronikos integracijos laipsnį. Vienas iš pagrindinių integracinio laipsnio didinimo uždavinių yra IG elementų (tranzistorių, diodų, varžų ir kondensatorių) matmenų mažinimas. Tikslas pasiekiamas tobulinant fotolitografijos techniką, taikant kitokias medžiagas ar visiškai naujas elementų konstrukcijas, kaip kad <i>Intel</i> firmos mikroprocesoriai, pereidami iš 32 nm į 22 nm fabrikavimo technologiją, turėjo pakeisti tranzistorių struktūrą iš įprasto plokštuminio į, vadinamąjį, trimatį tranzistorių. Stabilų integracijos laipsnio didėjimą puikiai iliustruoja pav. apačioje – tranzistorių skaičius per 43 metus padidėjo net 110 milijonų procentų. Skaičiai išties įspūdingi ir kalba patys už save.</div>
<div style="text-align: justify; text-indent: 1.0cm;">
Iš tiesų, didinant mikroprocesorių integracijos laipsnį mažėja ne tik jų IG elementų matmenys, bet ir didėja viso lusto matmenys (didėjimas yra sąlyginai nedidelis, apie 7% per metus), kadangi į vieną lustą prikamšoma daugiau elementų (bet ne į vienetinį plotą). Taip padeda išlaikyti Mūro dėsnio ribas (jis griežtai neapibrėžia lusto matmenų).</div>
<div style="text-align: justify;">
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhK40LzxF4I7YUD-Wr9Lo2tdVFkYgFpeFsQ_IsXR5h7xihuePELqKeAjXL0vcGBfXg42U84MNgCY2FKrG-FC2eJYSEK0k-KGmb5FwEkbXoJvTYr6o1Tga3Cc6DAFS9OscE-r51kFIpgvUk/s1600/IG+pokytis+per+43+metus.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhK40LzxF4I7YUD-Wr9Lo2tdVFkYgFpeFsQ_IsXR5h7xihuePELqKeAjXL0vcGBfXg42U84MNgCY2FKrG-FC2eJYSEK0k-KGmb5FwEkbXoJvTYr6o1Tga3Cc6DAFS9OscE-r51kFIpgvUk/s1600/IG+pokytis+per+43+metus.png" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Mikroprocesorių integracinio laipsnio padidėjimo pokytis procentais per 43 metus</td></tr>
</tbody></table>
<br /></div>
<div style="text-align: justify; text-indent: 1.0cm;">
Metai iš metų pasirodo įvairūs straipsniai apie Mūro dėsnio eros pabaigą. Pats Gordonas Mūras, dėsnio autorius, 2003 m. atsargumo dėlei savo prognozę prailgino tik 10 metų laikotarpiui, o 2007 m. vėl atsargiai kalbėjo apie sekantį dešimtmetį. Pagrindinis argumentas yra naudojamos medžiagos kaip silicis, kuris galiausiai prieis savo savybių fundamentaliąsias fizikos ribas. Taip, fundamentalūs limitai egzistuoja, pvz., IG elementų mažinimas darosi vis sudėtingesnis dėl <i>kvantinės mechanikos </i>aprašomų reiškinių kaip elektrono <i>tuneliavimo</i> ir srovės nutekėjimo. Tačiau visos galimybės tikrai neišsemtos didinant IG integracijos laipsnį. Mokslininkai-inžinieriai aktyviai eksperimentuoja su naujomis medžiagomis kaip <i>indžio arsenido, galio arsenidas, galio nitrido</i> ir kitomis, kurios gali pakeisti silicį. Dar vienas konkurentas, į kurį dedama daug vilčių, yra <i>grafenas</i>. Kitas radikalus metodas – <i>spintronika</i>, kur informaciją talpintų elektrono sūkio savybė, o ne krūvis. Eksperimentuojama ir su <i>fotonika</i>, kur informacija IG viduje būtų perduodama ne elektronais, o šviesa-fotonais. Bei daug kitų tyrinėjamų ir plėtojamų technologijų.</div>
<br />
<hr align="left" size="1" width="100%" />
<br />
<h3 style="text-align: start;">
<span style="font-family: inherit; font-size: large;">
Kitos šio straipsnio dalys:</span></h3>
<div>
<ol>
<a href="https://skarware.blogspot.com/2015/04/integrinis-grandynas-i-dalis.html" target="_blank">I dalis: Integrinio grandyno koncepcija, istorinė raida ir klasifikacija</a><br />
<b style="background-color: #fbf49b;">II dalis: Mūro dėsnis ir integracinio laipsnio didėjimas</b><br />
<a href="https://skarware.blogspot.com/2015/04/integrinio-grandyno-fabrikavimas-ig-iii.html" target="_blank">III dalis: Integrinio grandyno fabrikavimas</a><br />
</ol>
<br />
<hr align="left" size="1" width="50%" />
</div>
Martynashttp://www.blogger.com/profile/00471091754225207342noreply@blogger.com0tag:blogger.com,1999:blog-5426813891256937073.post-59035443402862953532015-04-24T18:00:00.001+03:002021-07-03T00:05:55.858+03:00Integrinis Grandynas [I dalis]<h2>
<span style="font-size: large;">Įvadas</span></h2>
<div style="text-align: justify; text-indent: 1.0cm;">
Vos prieš šimtmetį, antrosios industrinės revoliucijos laikotarpiu (1850~1918 m.), žmogui išmokus efektyviai apdirbti metalą, atradus elektros energiją bei įsigudrinus ją panaudoti saviems tikslams kaip apšvietimui ar patogiam energijos perdavimui dideliais atstumtais, taip pat tiksliųjų mokslų disciplinų praktiškumo išryškėjimas žmogaus buityje leido dažnam to laikotarpio išsilavinusiam atstovui pareikšti, jog fizikos mokslas jau užbaigtas ir technologinis žmogaus galimybių pažangumas pasiekė savo piką – ribas. Nepaisant to, mokslas niekur nesustojo, žvalūs protai drąsiai kėlė naujas problemas ir jas aktyviai sprendė. Dinamiško mąstymo dėka žmonija pasiekė vadinamąją trečiąją industrinę revoliuciją (1950~1970 m.), geriau žinomą kaip skaitmeninę. Šios revoliucijos didžiausias kaltininkas yra <i>integracinių grandynų</i> technologijos išradimas, įgalinęs kambario ar net pastato dydžio duomenų apdorojimo įrenginius (pirmuosius kompiuterius*) sumažinti iki delno dydžio ir tame pralenkti juos savo sparta milijonus kartų**.</div>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhzgaeD21nHobJXpAH-gbl2le57Uk6J0mQrdhfSeMAdrybE-7VGDaenHwsdrpP5qHbBXEgCJHbfFr0_rwICskBIUP5-yfcoVguJqKpll3tX4wNbzE_p4hOoWgrBa6P2ITmDTQCfc8gpjkY/s1600/S6-Edge-and-AN-FSQ-7.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="288" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhzgaeD21nHobJXpAH-gbl2le57Uk6J0mQrdhfSeMAdrybE-7VGDaenHwsdrpP5qHbBXEgCJHbfFr0_rwICskBIUP5-yfcoVguJqKpll3tX4wNbzE_p4hOoWgrBa6P2ITmDTQCfc8gpjkY/s1600/S6-Edge-and-AN-FSQ-7.png" width="640" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">2015 m. išmanusis tel. <i><b>Samsung Galaxy S6 Edge</b></i> milijonus kartų spartesnis už didžiausią vakuuminį kompiuterį <b><i>AN/FSQ-7</i></b></td></tr>
</tbody></table>
<hr align="left" size="1" width="100%" />
<blockquote class="tr_bq">
<span style="font-size: small;">*1947 m. pirmasis kompiuteris <i>ENIAC</i> – 500 Flops;<br />
1957 m. didžiausias vakuuminis kompiuteris <i>AN/FSQ-7</i> ~5 000 Flops (kainavęs 90 milijardų dolerių);<br />
1964 m. pirmas superkompiuteris <i>CDC 6600</i> – 3 000 000 Flops;<br />
1976 m. superkompiuteris <i>Cray-1</i> – 80 000 000 Flops;<br />
1985 m. superkompiuteris <i>Cray-2</i> – 1 900 000 000 Flops;<br />
1990 m. superkompiuteris <i>ETA-10G</i> – 10 000 000 000 Flops;<br />
**2015 m. išmanusis telefonas <i>Samsung Galaxy S6 Edge</i> (<i>Exynos 7420</i>) – 326 000 000 000 Flops;<br /><br />
(<b>Flops</b> – <i>FLoating-point Operations Per Second</i> – Slankiojo kablelio operacijų per sekundę)</span>
</blockquote>
<hr align="left" size="1" width="50%" />
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Šio straipsnio tikslas apžvelgti integrinio grandyno (angl. <i>integrated circuit</i>) technologiją, kurios išradimas tiesiogiai įtakojo ir keitė individo sąveikavimą su jį supančia aplinka, jo gyvenimo būdą, t. y. lėmė tolesnę elektronikos, kompiuterijos ir komunikacijos raidą ir sukūrė pamatus informacijos amžiui bei informacinės visuomenės susikūrimui. <br />
<br /></div>
<div style="text-align: justify;">
Šiame straipsnyje bus bandoma apžvelgti ir atsakyti į šiuos klausimus:</div>
<ul style="text-align: justify;">
<li>Kas yra integrinis grandynas?</li>
<li>Kokia šios technologijos istorijos raida?</li>
<li>Kokia buvo pirminė ir mūsų dienų šios technologijos pagrindinės funkcijos?</li>
<li>Kokia yra integrinių grandynų nauda ir varomoji technologijos jėga?</li>
<li>Kas yra Mūro dėsnis ir ar jis vis dar adekvatus?</li>
<li>Kokios šios technologijos perspektyvos ateityje?</li>
<li>Kaip gaminami integriniai grandynai?</li>
</ul>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Viršuje išdėstytais klausimais ir bus remiamasi siekiant sudaryti bendrą integracinio grandyno koncepcijos vaizdą aukščiausiame lygmenyje – supažindinti su svarbiausiomis integrinių grandynų savybėmis, jų fabrikavimo technologija, istorijos raida bei panaudojimo galimybėmis.</div>
<br />
<br />
Straipsnis dėl savo apimties padalytas į tris dalis:<br />
<ol>
<b style="background-color: #fbf49b;">I dalis apžvelgs integrinio grandyno koncepciją, istorinę raidą ir klasifikaciją;</b><br />
<a href="https://skarware.blogspot.com/2015/04/muro-desnis-moores-law-ig-ii-dalis.html" target="_blank">II dalis trumpai apibrėš Mūro dėsnį ir integracinio laipsnio didėjimą;</a><br />
<a href="https://skarware.blogspot.com/2015/04/integrinio-grandyno-fabrikavimas-ig-iii.html" target="_blank">III dalis nagrinės pagrindinius integrinio grandyno formavimo procesus.</a><br />
</ol>
<br />
<hr align="left" size="1" width="75%" />
<br />
<h2>
<span style="font-size: x-large;">
Integrinio grandyno koncepcija</span></h2>
<div style="text-align: justify; text-indent: 1.0cm;">
Integrinis grandynas (IG) – tai kertinis akmuo šiuolaikinėje elektronikoje. Integrinį grandyną nesunku atpažinti, tai nedidelio dydžio, dažniausiai juodos spalvos detalė, kurią galima aptikti beveik ant bet kurios elektroninės schemos ir dažnai ne vieną. Integrinis grandynas taip pat vadinamas: puslaidininkinis kristalas su integrine schema, lustas arba tiesiog mikroschema (angl. terminai <i>integrated circuit, monolithic integrated circuit, IC, silicon chip, , microchip, chip, die</i>).</div>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhCx8Ma2spREA2Cm-LjotCOweUSbco57EGfSZVYlcQq35ElaXkEAGZFOOXoUcVoAIewWnNEJL_OqCpI6ptv22ajSV6a_MVKKyg9bbUcTOfFHlRv3yR7iwCt0OMCByv7h9joWtBM1w6Dxbk/s1600/lustas-mikroschema.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="257" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhCx8Ma2spREA2Cm-LjotCOweUSbco57EGfSZVYlcQq35ElaXkEAGZFOOXoUcVoAIewWnNEJL_OqCpI6ptv22ajSV6a_MVKKyg9bbUcTOfFHlRv3yR7iwCt0OMCByv7h9joWtBM1w6Dxbk/s1600/lustas-mikroschema.png" width="640" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Mikroschema. Korpuso viduje matyti puslaidininkio kristalas – Integrinis grandynas</td></tr>
</tbody></table>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Aukščiausio lygmens požiūriu IG yra mikroelektronikos gaminys, susidedantis iš daugybės elementų ir komponentų, kurie sumontuoti į nedalomą visumą (puslaidininkio kristalą - lustą) ir atlieka tam tikrą numatytą funkciją. Integrinio grandyno sudedamosios dalys – elementai ir komponentai, ne kas kita kaip tranzistoriai, diodai (aktyvieji elementai-įtaisai), kondensatoriai, ritės ir varžai (pasyvieji elementai-įtaisai), kurie statomi ant plono puslaidininkio (silicio) pamato. Visos IG dalys tankiai išdėliotos ir sujungtos-integruotos į visumą bendram tikslui pasiekti, pvz., tai gali būti: įtampos reguliatorius, variklio valdiklis, programuojamas mikrovaldiklis, mikroprocesorius ir begalė kitų mikroschemų (integruotų grandynų) su savitomis funkcijomis. Kadangi individualios integrinio grandyno dalys yra mikroskopinio dydžio, gautas puslaidininkio monokristalas gali būti vos kelių kvadratinių centimetrų ar net milimetrų dydžio.</div>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Priklausomai nuo elementų skaičiaus puslaidininkinės plokštelės luste, mikroschemas galima suskirstyti į skirtingo integracijos laipsnio – kuo laipsnis didesnis, tuo integrinis grandynas pažangesnis. Integracijos laipsnis, randamas pagal formulę: <br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEglGLcHQ7jPgz5O__qlxt3cw_21HVw8btITlgGuDcnnBzHLfFOuFSktqy1exCQchGdX1kIx2wPHfRz-CE-eoDDzmQfxGyq6G8O-X_f_PKYBaEAHenuJSLFsZ7pfRz2W-9m3mZy5w6CM03o/s1600/integracinis+laipsnis+formule.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEglGLcHQ7jPgz5O__qlxt3cw_21HVw8btITlgGuDcnnBzHLfFOuFSktqy1exCQchGdX1kIx2wPHfRz-CE-eoDDzmQfxGyq6G8O-X_f_PKYBaEAHenuJSLFsZ7pfRz2W-9m3mZy5w6CM03o/s1600/integracinis+laipsnis+formule.png" /></a></div>
</div>
<div style="text-align: justify;">
čia <i>N</i> – elementų skaičiaus luste, <i>K</i> – integracijos laipsnis, lygus artimiausiam sveikajam skaičiui. Plačiau apie integracijos laipsnio didėjimą integriniuose grandynuose rašoma antroje dalyje.</div>
<br />
<hr align="left" size="1" width="75%" />
<br />
<h2>
<span style="font-size: x-large;">Integriniai grandynai – skaitmeninė era</span></h2>
<div style="text-align: justify; text-indent: 1.0cm;">
Kaip ir daugelis svarbių išradimų, integrinių grandynų idėja nenukrito iš giedro dangaus, mokslininkai ir inžinieriai jau kuris laikas ieškojo būdų šios technologijos realizavimui. Panašų sprendimą į IG dar 1949 metais užpatentavo vokiečių inžinierius Verneris Jakobas (<i>Werner Jacobi</i>), vėliau, 1952 metais, britų radijo inžinierius Džefris Dameris (<i>Geoffrey Dummer</i>) pasiūlė integruoti standartinius elektroninius komponentus į monolitinį puslaidininkio kristalą.</div>
<div style="text-align: justify; text-indent: 1.0cm;">
Šios technologijos poreikis atsirado Viljamui Šokliui (<i>William Shockley</i>) ir jo komandai <i>BELL</i> laboratorijoje išradus tranzistorių, pagaminta iš puslaidininkių medžiagų. Naujoji puslaidininkių technologija leido pagaminti tobulesnius elektroninius komponentus (tranzistorius, diodus, varžus, kondensatorius), kurių funkcijos iki tol buvo atliekamos vakuuminių vamzdžių, tik kietosios būsenos puslaidininkiai buvo daug mažesnių matmenų, lengviau ir pigiau gaminami bei atsparesni aplinkos sąlygoms. Dabar elektroniniai komponentai galėjo būti labai maži, o didžiausia įrenginio elektrinio grandyno dalis buvo nerangus laidynas, jungiantis labai mažus puslaidininkių komponentus.</div>
<div style="text-align: justify;">
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi9RTKS67jVK9pUvAhdP5qOGPzlz_mojdVG7KFXJqytKzbkM6kxyojw4eeDP592gO3nO173K2oIwykDwXna6TvS9ZF0k7y-CVruqChL_QfLdsuoNAoxFZ-3jmbmPxFh_raNOt9ZjyfDUzY/s1600/lustas,tranzistorius,vakuumininis+vamzdis.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi9RTKS67jVK9pUvAhdP5qOGPzlz_mojdVG7KFXJqytKzbkM6kxyojw4eeDP592gO3nO173K2oIwykDwXna6TvS9ZF0k7y-CVruqChL_QfLdsuoNAoxFZ-3jmbmPxFh_raNOt9ZjyfDUzY/s1600/lustas,tranzistorius,vakuumininis+vamzdis.png" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Mikroschema (kairėje), tranzistorius (viduryje) ir vakuuminis vamzdis (dešinė)</td></tr>
</tbody></table>
<br /></div>
<div style="text-align: justify; text-indent: 1.0cm;">
Akivaizdu, jog šiam išradimui jau buvo pribręsta, kai 1958 m. nepriklausomai vienas nuo kito panašias integrinio grandyno formavimo technologijas pasiūlė du mokslininkai: Dž. Kilbis (<i>Jack Kilby</i>) iš <i>Texas Instruments </i>kompanijos ir R. Noisas (<i>Robert Noyce</i>) iš <i>Fairchild</i> puslaidininkių korporacijos. Paskutinioji buvo garsiojo <i>Silicio Slėnio</i> inkubatorius. Būtent iš <i>Fairchild</i> pasitraukę mokslininkai ir inžinieriai dėl nesutarimų su vadovaujančiu V. Šokliu įkūrė savo kompaniją (ši grupė talentingų žmonių žinoma kaip <a href="http://en.wikipedia.org/wiki/Traitorous_eight" target="_blank">išdavikų aštuoniukė; angl. <i>Traitorous eight</i></a>). Tokių išeivių buvo ne vienas; netrukus jų vis daugėjo, kartu ir įmonių, užsiimančių silicio puslaidininkių gamyba. Šiandien tų kompanijų teritorija apibrėžiama kaip <i><a href="http://en.wikipedia.org/wiki/Silicon_Valley" target="_blank">Silicio Slėnis</a></i>.</div>
<div style="text-align: justify; text-indent: 1.0cm;">
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgxFfesGKltSaqN3gD5LQXNJXPNZjwiDOEPSKrJsBRza1oYxwyUsUV7ArZUTxOwb7et2rw4MXjkuo6Y8sh0yTPVZoQViRdq2C7aMEEgPOPekusFE_vy6bTLgTQ3_QI5fLPCGqRJDjNQ6G0/s1600/kilby_original_integrated_circuit.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgxFfesGKltSaqN3gD5LQXNJXPNZjwiDOEPSKrJsBRza1oYxwyUsUV7ArZUTxOwb7et2rw4MXjkuo6Y8sh0yTPVZoQViRdq2C7aMEEgPOPekusFE_vy6bTLgTQ3_QI5fLPCGqRJDjNQ6G0/s1600/kilby_original_integrated_circuit.png" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Dž. Kilbio pirmasis primityvus integrinis grandynas – germanis priklijuotas prie stiklo plokštelės</td></tr>
</tbody></table>
<br /></div>
<div style="text-align: justify; text-indent: 1.0cm;">
Reikia paminėti, jog būtent JAV gynybos departamentas ir astronautikos agentūra NASA – jų ypač pelningi užsakymai – padėjo labai greitai tobulinti integruotų grandynų technologiją (didinti lustų integracijos laipsnį) ir susiformavo pamatus informacinės visuomenės kūrimui.</div>
<div style="text-align: justify; text-indent: 1.0cm;">
Integriniai grandynai šiandien naudojami visur – nuo karinės pramonės iki buitinės technikos ir medicinos. Iš tiesų, šių dienų varomasis integracinių grandynų technologinis variklis yra nebe NASA ar JAV gynybos departamentas, o paprasti informacinės visuomenės nariai, kuriuos kasdien pasiekia vis didesnis srautas informacijos per išmaniuosius elektrinius prietaisus (kompiuteriai, ryšių įranga, telefonai, planšetės ir kt.).</div>
<br />
<blockquote class="tr_bq">
<i>"What we didn't realize then was that the integrated circuit would reduce the cost of electronic functions by a factor of a million to one, nothing had ever done that for anything before" ~ Jack Kilby</i></blockquote>
<br />
<hr align="left" size="1" width="75%" />
<br />
<h2>
<span style="font-size: x-large;">IG klasifikacija</span></h2>
<div style="text-align: justify; text-indent: 1.0cm;">
Integrinius grandynus galima klasifikuoti ir pagal gamybos technologiją į sluoksninius, hibridinius ir puslaidininkius:</div>
<div style="text-align: justify;">
Puslaidininkiniuose integrinio grandyno elementai ir juos jungiantys laidieji takeliai sudaromi vieno puslaidininkio kristalo viduje ir paviršiniame sluoksnyje.</div>
<div style="text-align: justify;">
Sluoksniniame integrinio grandyno elementai ir sujungimai sudaryti iš sluoksnių ant dielektriko paviršiaus. Sluoksninės technologijos metodu sudaromi pasyvieji elementai (varžai, ritės ir kondensatoriai).</div>
<div style="text-align: justify;">
Hibridinis integrinis grandynas sudaromas iš sluoksninių pasyviųjų elementų (varžų, kondensatorių, ritėms, laidžiųjų takelių bei aikštelių) ir bekorpusinių aktyviųjų komponentų (diodų, tranzistorių, puslaidininkių integriniai grandynai).</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify; text-indent: 1.0cm;">
Dar vienas galimas integrinio grandyno klasifikavimo būdas yra pagal funkcinę paskirtį:</div>
<div style="text-align: justify;">
Analoginiai integriniai grandynai taikomi tolydiems signalams apdoroti, naudojami analoginėje technikoje kaip radioelektronika.</div>
<div style="text-align: justify;">
Skaitmeniniai integriniai grandynai taikomi diskretiniams signalams (skaitmeniniams) apdoroti, jų pritaikymas labai platus – nuo paprasčiausių automatizuotų sistemų iki superkompiuterių.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify; text-indent: 1.0cm;">
Atsižvelgiant į svarbiausių grandynų elementų tipą (tranzistorių), puslaidininkiniai integriniai grandynai skirstomi į dvipolius (Bi) ir metalo-oksido-puslaidininkio (MOP) integrinius grandynus.</div>
<div style="text-align: justify;">
MOP tranzistoriai yra pranašesni už dvipolius. Jų gamyba paprastesnė nei dvipolių, todėl gaminant adekvačius integrinius grandynus MOP būna mažiau broko. MOP tranzistoriai yra gerokai mažesni, dėl to efektyviau panaudoja lusto plotą ir pasiekia didesnį integracijos laipsnį. MOP tranzistoriai pasižymi didele įėjimo varža, mažesniais triukšmais ir yra atsparesni jonizuojančiai spinduliuotei. Dėl pastarųjų išvardintų savybių, MOP integrinių grandynų vartojama galia yra maža ir jie mažiau kaista. Rezultatas – dauguma (3/4) šiuolaikinių mikroschemų naudoja MOP technologiją.</div>
<div style="text-align: justify; text-indent: 1.0cm;">
Atskirą, vieną svarbiausių MOP integrinių grandynų grupę sudaro komplementarieji MOP integriniai grandynai, sutrumpintai vadinamų KMOP (angl. <i>CMOS</i>). Nors KMOP integracinių grandynų gamyba sudėtingesnė ir jų veikimo sparta mažesnė, tačiau jie turi labai svarbų privalumą – šios technologijos mikroschemos grandine teka labai mažos srovės, o tranzistoriaus pusiausvyros būsenoje praktiškai nenaudojama srovė. Todėl KMOP labai efektyvūs kuriant didelio integracinio laipsnio mikroschemas (pvz., mobiliesiems prietaisams). Tai leidžia įrenginiams vartoti mažos galios ir įtampos maitinimo šaltinius.</div>
<div style="text-align: justify; text-indent: 1.0cm;">
Praktikoje didelės integracijos grandynai gaminami taikant maišytas Bi-KMOP arba Bi-MOP technologijas, taip išnaudojant abiejų technologijų privalomus.</div>
<br />
<hr align="left" size="1" width="100%" />
<br />
<h3 style="text-align: start;">
<span style="font-family: inherit; font-size: large;">
Kitos šio straipsnio dalys:</span></h3>
<div>
<ol>
<b style="background-color: #fbf49b;">I dalis: Integrinio grandyno koncepcija, istorinė raida ir klasifikacija</b><br />
<a href="https://skarware.blogspot.com/2015/04/muro-desnis-moores-law-ig-ii-dalis.html" target="_blank">II dalis: Mūro dėsnis ir integracinio laipsnio didėjimas</a><br />
<a href="https://skarware.blogspot.com/2015/04/integrinio-grandyno-fabrikavimas-ig-iii.html" target="_blank">III dalis: Integrinio grandyno fabrikavimas</a><br />
</ol>
<br />
<hr align="left" size="1" width="50%" />
</div>
Martynashttp://www.blogger.com/profile/00471091754225207342noreply@blogger.com0tag:blogger.com,1999:blog-5426813891256937073.post-81732731375080433462015-01-25T23:27:00.001+02:002021-07-03T00:09:19.525+03:00Linux distribucijų apžvalga - Išvados<img border="0" hspace="20" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj41wEvRU0pi2RpLMRHCIOihdmWaED-a1aeTs2NR3buzrdnVLCTMsNdtLzDSHrahSv5KZeE0pFqZT_aY9d-g7Hhw6-6rRzaV-hLTfpj9guA1_V5yMOCZEuvNnRKqpo3TklFCbwUTuhmvzQ/s1600/GNU+head.png" style="margin: 0; padding: 0;" /><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiFyDvQjjP3EpWd_QfMip_G_150LfgA7BFp6l5Qaa3_EFoNeJtJ2TuicsP4sjsIpAPQAmLdHn7bv3PaW9XzJ5KFcJ-wq6Fy3Z3iMCzXGcqQrPxn7ZvjkHhkzpOdgS_QgVAMZgie1DR3MKs/s1600/GNULinux.png" style="margin-left: -2px; margin: 0; padding: 0;" />
<br />
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
<a href="https://skarware.blogspot.com/2015/01/linux-distribuciju-apzvalga-ivadas.html" target="_blank">Buvo apžvelgtos</a> populiariausios, didžiausios ir
pagrindinės Linux distribucijos, iš kurių išvedamos ir plėtojamos kitos
modifikuotos distribucijos. Kaip pagrindą operacinėms sistemoms sukurti visos jos
naudoja tą patį komponentą – Linux branduolį. Tačiau visos distribucijos,
tiksliau jų plėtotojai, turi skirtingas idėjas ir tikslus, pagal kuriuos
plėtoja savo operacinę sistemą, skirtą tam tikros kompiuterinių sistemų
vartotojų grupės ar savo pačių poreikiams patenkinti. Todėl tarp pagrindinių
didžiausių Linux distribucijų galima nesunkiai pastebėti nemažai skirtumų ir
unikalių sprendimų. Iš programinės įrangos pusės tai nulemia sistemos
komponentų pasirinkimas ar jų kūrimas konkrečiai distribucijos vizijai
išpildyti. Iš techninės pusės tai sąlygoja savanorių plėtotojų iškelti tikslai
ir filosofiniai įsitikinimai arba verslo įmonių komercinių paslaugų sprendimai
distribucijos stabilumui ir kokybei užtikrinti.</div>
<br />
<br />
<div style="text-align: justify;">
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg7ts9KvcTcC6cppmQN5PgMDtOtWXZcMQOe_PbJ96OyvBtnPcz8XNOLQTx7g-g0HtoNCyw1ddif7SsrK1DJGEOGWXlrFNu287P348P06HwksAHUoMkVZsi1FecdPCjvuuscxRIe7zMDNbE/s455/LinuxRinkosDalis.png" /></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Apžvelgtų distribucijų bendra dalis Linux rinkoje per paskutinius 10 metų.<br />
šaltinis: <i><a href="http://distrowatch.com/" target="_blank">distrowatch.com</a></i></td></tr>
</tbody></table>
</div>
<br />
<div style="text-align: justify;">
Pagal savas ypatybes-skirtumus, Linux
distribucijas galima įvairiai sugrupuoti, pavyzdžiui, pagal darbalaukio aplinką,
paketų tvarkymo sistemą, į komercines ar savanorių bendruomenių plėtojamas ir
palaikomas distribucijas, orientuotas į naujausią arba stabilią programinę
įrangą, pritaikytas entuziastams ar neįgudusiems kompiuterių vartotojams bei į daug
kitų skirtingų kategorijų. Tikėtina, pačios pagrindinės-svarbiausios savybės,
pagal kurias galima sugrupuoti Linux distribucijas į kategorijas, ir buvo
apžvelgtos šiame darbe.</div>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEivSNfX9-MFVTkkq07ORY2p44b1aY3PciWyrFPISy11ISao9_q1cAh5PsH4xJarEmK_lVZnyEDEIIgq_LdjZVplxVZ1ncUIGwm55C9KCXzYqxlDoh2obAQVFf1-hHhDnOJRXIvSfO2CogI/s1600/YpatybiuLentele.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="132" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEivSNfX9-MFVTkkq07ORY2p44b1aY3PciWyrFPISy11ISao9_q1cAh5PsH4xJarEmK_lVZnyEDEIIgq_LdjZVplxVZ1ncUIGwm55C9KCXzYqxlDoh2obAQVFf1-hHhDnOJRXIvSfO2CogI/s1600/YpatybiuLentele.png" width="640" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;"><b><span style="font-size: small;">Apžvelgtų Linux distribucijų savybių palyginimas</span></b></td></tr>
</tbody></table>
<br />
<div style="text-align: left;">
<span style="font-size: x-large;"><b>Apibendrinimas</b></span></div>
<br />
<div style="text-align: justify;">
<span style="color: #d60a50; font-size: large;"><b>Debian</b></span> yra viena profesionaliausių ir didžiausių
tarp nemokamų Linux distribucijų, kurią nuo 1993 metų plėtoja gabių savanorių programuotojų
bendruomenė. Debian palaiko labai platų kompiuterių architektūrų spektrą, o s<i>table</i> atšakos programinė įranga visada orientuota
į maksimalų stabilumą, todėl Debian distribucija tinkama serverių sprendimams
realizuoti; kita vertus, Debian palaikymas nėra labai ilgas, oficialus <i>Lifetime</i> palaikymas trunka tik apie 3
metus, tiesa, padėtį gelbsti naujas Debian<i>
LTS</i> projektas, prailginantis sistemos saugumo palaikymą iki 5 metų, tai ypač
svarbu serveriams, kur dažna sistema nekoreguojama labai ilgą laikotarpį, jei
veikia sklandžiai ir atlieka numatytas funkcijas. Taip pat Debian distribucija
pasižymi gana draugiškomis diegimo ir valdymo vartotojo sąsajomis,
profesionaliais sistemos įrankiais, turi turtingą sukompiliuotų paketų
saugyklą, puikią dokumentaciją ir plačią savanorių bendruomenę nemokamam, bet
kokybiškam palaikymui suteikti, o tai daro Debian sistemą tinkamą ir įprasto
kompiuterio operacinės sistemos funkcijoms atlikti.<br />
[<a href="https://skarware.blogspot.com/2015/01/debian-gnulinux-linux-distribuciju.html" target="_blank">plačiau apie Debian</a>]</div>
<br />
<br />
<div style="text-align: justify;">
<span style="color: #d60a50; font-size: large;"><b>Ubuntu</b></span> projektas įkurtas 2004 metais, jo
plėtojama distribucija ypač greitai tapo geriausiai žinoma Linux distribucija,
kurią dažniausiai rekomenduoja neįgudusiems
naujiems Linux vartotojams. Ubuntu yra remiama ir plėtojama savanorių bendruomenės ir <i>Canonical Ltd</i> verslo kompanijos. Vis
dėlto pati Ubuntu distribucija yra nemokama, kainuoja tik jos palaikymas; kita
vertus, Ubuntu turi labai plačią ir paslaugią savanorių bendruomenę bei puikią
dokumentaciją. Kadangi Ubuntu yra <i>Debian</i>
distribucijos išvestinė, ji paveldi jos gerąsias savybes. Ubuntu nėra Debian
distribucijos klonas, <i>Canonical Ltd</i> kompanija papildo Ubuntu
sistemą savais sprendimais (kaip <i>Unity</i>
darbalaukio aplinka ir modernia <i>UpStart</i>
inicijavimo sistema), kuriais siekiama supaprastinti sistemos valdymą ir
pateikti Linux kaip modernią operacinę sistemą, skirtą asmeninio kompiuterio
vartotojui (šiandien Ubuntu siūlo ir sprendimus serveriams, mobiliesiems
įrenginiams, įvairioms įterptinėms sistemoms). Nepaisant dažno versijų leidimo grafiko, Ubuntu nėra
visiškas pionierius programinėje įrangoje, nes palieka vietos sistemos
stabilumui užtikrinti. Visa standartinė asmeninio kompiuterio programinė įranga
pateikiama kartu su Ubuntu OS. Esant trūkumui, papildomas programas nesudėtinga
įsidiegti, tam Ubuntu turi turtingas programų, paketų saugyklas internete. Kita
Ubuntu ypatybė ta, kad <i>Canonical Ltd</i> bendradarbiauja
su aparatinės įrangos gamintojais, todėl gali pasiūlyti gerą jų įrangos palaikymą.
Visko rezultatas – sklandžiai dirbanti bei stabili sistema tiek naujam, tiek
įgudusiam Linux vartotojui.<br />
[<a href="https://skarware.blogspot.com/2015/01/ubuntu.html" target="_blank">plačiau apie Ubuntu</a>]</div>
<br />
<div style="text-align: justify;">
<span style="color: #d60a50; font-size: large;"><b>Linux Mint</b></span> – dar viena populiari Linux distribucija, išvedama iš <i>Ubuntu</i> ir <i>Debian</i> sistemų.
Mint ypač išpopuliarėjo ir tapo populiariausia Linux distribucija, kai <i>Ubuntu</i> pradėjo naudoti savo plėtojamą,
tačiau prieštaringai vertinamą darbalaukio aplinką <i>Unity</i> (tuo tarpu Mint išlaikė tradicinę <i>Windows</i> darbalaukio atmosferą su savo plėtojama grafine sąsaja <i>Cinnamon</i>). Kadangi Linux Mint skirta
stalo ir nešiojamiems kompiuteriams, ji pateikiama kartu su standartinėmis asmeninių
kompiuterių programomis. Be savos grafinės darbalaukio aplinkos Mint plėtoja ir
eilę kitų savų įrankių, kurie supaprastina sistemos valdymą neįgudusiems Linux
vartotojams. Būdama išvestinė iš <i>Ubuntu</i>,
o ši iš <i>Debian</i> sistemos, Linux Mint
paveldi ir jų gerąsias savybes. Mint plėtojama savanorių bendruomenės, todėl ji
pati ir jos palaikymas yra nemokamas. Be to, Mint savęs nevaržo tik laisvosios
programinės įrangos idėjų principais ir yra numatyta kartu su reikalingiausia
patentuota programine įranga – multimedijos atkūrimui bei aparatinės įrangos
tvarkyklėmis. Mint su savo intuityvia, nupoliruota grafine darbalaukio terpe
taikosi į neįgudusių Linux vartotojų poreikius ir šį tikslą įvykdo
nepriekaištingai, todėl yra puikus pasirinkimas naujiems Linux vartotojams.<br />
[<a href="https://skarware.blogspot.com/2015/01/linux-mint.html" target="_blank">plačiau apie Linux Mint</a>]</div>
<br />
<div style="text-align: justify;">
<span style="color: #d60a50; font-size: large;"><b>Slackware</b></span> – seniausia vis dar aktyvi Linux distribucija, plėtojama laisvosios ir atvirosios programinės įrangos idėjomis, kadaise dominavusi Linux rinkoje. Nepaisant savo pavadinimo (angl. kalba „slackware“ reiškia „suglebusi įranga“), ji yra viena solidžiausių Linux distribucijų, iš kurios išvesta daugybė kitų Linux sistemų. Tai labai konservatyvi Linux distribucija, siekianti išsaugoti Unix OS šeimos principus – primityvumą, tad atsisako sistemos automatizacijos. Neįprasta, bet jos plėtotojų komanda sudaro ne daugiau nei 10 žmonių, o visus sistemai svarbius sprendimus priima vienas žmogus – Slackware projekto įkūrėjas. Dėl savo grynumo, klaidų retumo ir stabilumo yra mėgstama serveriuose ir nestandartiniuose sprendimuose; kita vertus, Linux entuziastai ją naudoja asmeniniuose (stalo ir nešiojamuose) kompiuteriuose. Slackware sistema yra puiki priemonė geriau susipažinti su Linux sistema, nes Slackware distribucija neturi savų aukšto lygio įrankių, palengvinančių sistemos valdymą, taip priversdama vartotoją su ja dirbti žemo lygio priemonėmis, su pačiomis sistemos šaknimis.<br />
[<a href="https://skarware.blogspot.com/2015/01/slackware.html" target="_blank">plačiau apie Slackware</a>]</div>
<br />
<div style="text-align: justify;">
<span style="color: #d60a50; font-size: large;"><b>openSUSE</b></span> pirmoji versija išleista 2006 m., po to
kai SUSE kompanija nusprendė reformuoti savo produktų liniją, atveriant SUSE
Linux plėtojimą už kompanijos ribų. openSUSE yra nemokama, avangardinė
distribucija (bandymų stendas SUSE komerciniams produktams), plėtojama
savanorių bendruomenės ir remiama SUSE kompanijos. Ji skirta asmeniniams
kompiuteriams, Linux entuziastams. Būdama SUSE kompanijos bandymų stendu apima kai kuriuos naujausius Linux
technologijų sprendimus (<i>bleeding edge</i>)
ir siūlo dvi nupoliruotas darbalaukio aplinkas su unikaliais SUSE kompanijos
plėtojamais įrankiais, kurie įgalina patogų ir paprastą visą sistemos administravimą
iš grafinės darbalaukio aplinkos (dėl to reikalauja nemažai kompiuterio
resursų). openSUSE kartu pateikiama su standartine asmeninio kompiuterio
programine įranga (<i>FireFox, LibreOffice,
...</i>), o sukompiliuotų programų paketų saugyklos internete vienos iš
turtingiausių, be to puiki sistemos dokumentacija, draugiška bendruomenė pagalbos
klausimais, geras aparatinės įrangos palaikymas, lengvai naudojamas sistemos
diegimo vedlys ir nepriekaištinga grafinė darbalaukio aplinka padaro openSUSE
idealia distribucija nepatyrusiam Linux vartotojui.<br />
[<a href="https://skarware.blogspot.com/2015/01/opensuse.html" target="_blank">plačiau apie openSUSE</a>]</div>
<br />
<div style="text-align: justify;">
<span style="color: #d60a50; font-size: large;"><b>SUSE Linux Enterprise (SLE)</b></span> distribucijos šaknys
siekia 1996–1998 metus, kai SUSE kompanija pradėjo kurti savo operacinę sistemą.
Iki tol, nuo 1992 metų, ji siūlė modifikuotą Slackware distribuciją su
nepriekaištinga dokumentacija ir techniniu palaikymu. SLE, tai SUSE kompanijos gerai
išbandytas ir sertifikuotas komercinis produktas, kuriamas openSUSE pagrindu.
SLE paveldi visas gerąsias openSUSE savybes, tik sukompiliuotų programų paketų
turi mažiau ir jie labiau orientuoti verslui, nei namų vartotojui. Kadangi SLE
yra komercinis produktas, jam siūlomas palaikymas iki 10 metų. Be to, jis yra sertifikuotas
aparatinei ir programinei įrangai iš nepriklausomų tiekėjų, vadinasi,
kompiuterinė sistema su SLE dirba sklandžiau ir stabiliau. Išskiriamos dvi SLE
distribucijos: SUSE Linux Enterprise Server (SLES) ir SUSE Linux Enterprise
Desktop (SLED). Pirmoji skirta galingiems serverių sprendimams, antroji taikosi
į asmeninius kompiuterius ir pristato save kaip alternatyvą MS Windows operacinei
sistemai (tam SUSE išplėtojo suderinamumą su <i>MS</i> produktais). Abu produktai puikus pasirinkimas verslo įmonėms,
kurioms reikia lanksčių ir patikimų produktų.<br />
[<a href="https://skarware.blogspot.com/2015/01/suse-linux-enterprise.html" target="_blank">plačiau apie SUSE Linux Enterprise</a>]</div>
<br />
<div style="text-align: justify;">
<span style="color: #d60a50; font-size: large;"><b>Fedora</b></span> projektas įkurtas 2003 m., vystomas
savanorių bendruomenės ir remiamas Red Hat kompanijos, plėtoja avangardinę ir
populiarią distribuciją – Fedora. Skirtingai nuo <i>SUSE</i> kompanijos remiamo projekto <i>openSUSE</i>, Fedora projektas nesistengia kurti savo programinės
įrangos, o integruoja į Fedora naujausią atvirojo kodo programinę įrangą, jos
labai nekoreguodama. Todėl Fedora galima vadinti Linux avangardine distribucija
arba avangardine visoms Linux distribucijoms, o ne tik Red Hat komerciniams
produktams. Kadangi tai savanorių bendruomenės plėtojama distribucija, ji yra
nemokama. Fedora orientuota į Linux entuziastus, kurie nori turėti naujausią
programinę įrangą (<i>bleeding edge</i>) savo
kompiuterinėje sistemoje. Tai pati novatoriškiausia Linux distribucija, pats Linux branduolio autorius <b><i>Linus
Torvalds</i></b> naudoja Fedora distribuciją visuose savo kompiuteriuose. Ji
pateikiama kartu su standartine kompiuterio programine įranga ir grafiniais valdymo
įrankiais, kurie dažniausiai yra optimizuoti <i>GNOME</i> darbalaukio aplinkai, tačiau galima rinktis ir kitas grafines
terpes. Programinės įrangos paketų saugyklos nėra labai turiningos, visgi
svarbiausias-reikalingiausias programas jos turi. Fedora verta rinktis tik
turint pakankamai žinių ir įgūdžių su Linux sistema.<br />
[<a href="https://skarware.blogspot.com/2015/01/fedora.html" target="_blank">plačiau apie Fedora</a>]</div>
<br />
<br />
<div style="text-align: justify;">
<span style="color: #d60a50; font-size: large;"><b>Red Hat Enterprise Linux (RHEL)</b></span> – komercinis Red
Hat kompanijos produktas, plėtojamas Fedora distribucijos pagrindu. RHEL šaknys siekia 1994 metus, kuomet
pasirodė pirmoji Red Hat įmonės Linux distribucija „<i>Red Hat Linux 1.0</i>“. Red Hat saugodama savo komercinius produktus
nuo laisvo platinimo pasinaudoja prekinio ženklo įstatymais, todėl kainuoja ne
tik RHEL palaikymas, bet ir pati distribucija. RHEL siūloma kelių variacijų,
kurias galima sugrupuojami į dvi kategorijas: serveriams ir salo kompiuteriams.
Abiem atvejais tai ypač kokybiškos ir patikimos operacinės sistemos verslo
įmonėms. Red Hat kompanija siūlo net iki 13 metų palaikymą savo RHEL
sistemoms. Tai labiausiai pažengusi Linux komercinė distribucija, garantuojanti
didelį platformos našumą, užtikrinanti karinio lygio saugumą ir stabilumą bei
turinti puikų suderinamumą su kitų kompanijų produktais – išpildomos visos
pageidaujamos savybės verslo sektoriuje. Galima drąsiai teigti, jog RHEL yra
serverinių sprendimų lyderis Linux sistemose.<br />
[<a href="https://skarware.blogspot.com/2015/01/red-hat-enterprise-linux.html" target="_blank">plačiau apie Red Hat Enterprise Linux</a>]</div>
<br />
<div style="text-align: justify;">
<span style="color: #d60a50; font-size: large;"><b>CentOS</b></span> distribucija plėtojama projekto, kurio
tikslas kurti laisvą bendruomenės plėtojamą verslo klasės distribuciją. CentOS yra
nemokama <i>Red Hat Enterprise Linux (RHEL)</i> distribucijos versija, tiksliau jos klonas. Nors RHEL nuo laisvo platinimo yra
apsaugota Red Hat prekinio ženklo įstatymais, RHEL yra atvirojo kodo dalis ir
pateikia išeities kodą viešai, iš kurio pašalinus Red Hat prekinį ženklą galima
klonuoti distribuciją. Būtent tą ir daro CentOS projektas, siekiantis pilno
funkcinio suderinamumo su RHEL. Vadinasi, CentOS paveldi pirminio produkto
gerąsias savybes, kurių neapriboja techninės detalės. Iš tiesų, CentOS negauna visų
Red Hat kompanijos tiekiamų komercinių paslaugų, CentOS techninis palaikymas
yra nemokamas iš savanorių bendruomenės (tiesa, ji paveldi programinį 10 metų
palaikymą) ir turi labai siaurą procesorių architektūrų palaikymą. CentOS
versijos išleidžiamos ir atnaujinamos su nedideliu vėlinimu. Jos neturi
priėjimo prie RHEL paketų saugyklų, todėl CentOS projektas plėtoja savo
programinės įrangos paketų saugyklas. Kita vertus, CentOS numatyta ne tik su
stabiliais RHEL programų paketais, bet siūlo ir naujesnę programinę įrangą, kuri
sistemoje įrašoma lygiagrečiai su numatytąja. Nepaisant trūkumų, CentOS yra
puiki nemokama Linux distribucija, paveldinti RHEL ilgalaikį palaikymą ir
stabilumą, ji tinkama tiek serverių sprendimams, tiek asmeniniams kompiuteriams.<br />
[<a href="https://skarware.blogspot.com/2015/01/centos.html" target="_blank">plačiau apie CentOS</a>]</div>
<br />
<div style="text-align: justify;">
<span style="color: #d60a50; font-size: large;"><b>Arch ir Gentoo</b></span>, dvi ideologiškai panašios, bet savarankiškos
Linux distribucijos, pradėtos aktyviai plėtoti maždaug tuo pačiu laiku (2002
m.). Abi įgalina vartotoją susikurti individualią ir savitą Linux sistemą. Nė
viena sistema neturi savos standartinės išvaizdos ir pojūčių atmosferos (<i>look-and-feel</i>) – neturi numatytosios
grafinės darbalaukio aplinkos, bet leidžia nesunkiai įsidiegti vieną iš
populiaresnių darbalaukio aplinkų. Visą programinę įrangą stengiasi pateikti
tokią, kokią jos autoriai ją sukūrė, tik <i>Gentoo</i>
ją kompiliuoja iš išeities kodo sistemos viduje, o <i>Arch</i> teikia iš anksto sukompiliuotas programas bei dažniausiai naujesnę
jų versiją (<i>bleeding edge</i>). Abiejų
distribucijų naudojamos paketų tvarkyklės ir jų įrankiai pasižymi panašiomis
funkcijomis. Abi turi vadinamosios <i>Ports</i>
paketų sistemos savybių, kurios automatiškai sukompiliuoja ir įdiegia programas
iš išeities kodo (koncepcijos idėja pasiskolinta iš BSD operacinės sistemos);
antra vertus, abi sugeba dirbti su iš anksto sukompiliuotų programų paketais. Visgi Arch ir Gentoo sistemų prioritetai ir
funkcionalumas skiriasi – Gentoo paketų
tvarkyklė ir jos įrankiai galingesni ir daro ją labiau koreguojama sistemą nei
Arch. Gentoo ideologija pirmenybę teikia programų paketams, kurie pateikia
programos išeities kodą jo sukompiliavimui konkrečios sistemos viduje, siekiant
maksimalios sistemos našumo ir efektyvumo. Tuo tarpu Arch pirmenybę teikia iš
anksto sukompiliuotoms programoms, nors ir turi <i>Ports</i> paketų sistemai būdingus įrankius. Kita ypatybė, pabrėžianti
Gentoo ir Arch panašumą bei išskirianti jas iš daugumos Linux distribucijų –
taikomas tęstinio leidimo (<i>rolling-release</i>)
plėtojimo modelis. Abi sistemos plėtojamos savanorių bendruomenių, tad yra
nemokamos įskaitant palaikymą. Skiriasi šių distribucijų inicijavimo sistemos
pasirinkimas – Arch naudoja modernią <i>Systemd</i>,
o Gentoo plėtoja labiau savą ir atvirą <i>OpenRC</i>
inicijavimo sistemą. Kitas Gentoo Linux pranašumas – platus kompiuterių
architektūrų palaikymas; Arch palaikymas daug siauresnis. Vis dėlto, abi šios
sistemos yra profesionalios ir kokybiškos, skirtos labiau įgudusiems Linux
vartotojams arba pasiryžusiems išmokti ir norintiems susipažinti su Linux
sistema nuo pačių jos šaknų.<br />
[plačiau apie <a href="https://skarware.blogspot.com/2015/01/arch-linux.html" target="_blank">Arch Linux</a> ir <a href="https://skarware.blogspot.com/2015/01/gentoo-linux.html" target="_blank">Gentoo Linux</a>]</div>
<br />
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Pabaigai turiu jus nuvilti – perskaitę visą apžvalgą Linux ekspertais netapote, kadangi buvo apžvelgtos tik 11 žinomiausių ir pagrindinių Linux distribucijų iš daugiau nei 300 vis dar aktyvių-plėtojamų. Be to, Linux sistemos kur kas rafinuotesnės, čia apžvelgta tik aukščiausio sluoksnio parametrai. Geriausiu atveju įgytomis žiniomis pavyks apgauti kaimyną, kurį nuo Linux sistemų skiria toks atstumas kaip nuo žemės iki mėnulio. Visgi, jei sąžiningai perskaitėte viską nuo pradžios iki šios pastraipos, esu tikras – jūs įgijote pakankamai kompetencijos pasirinkti tinkamiausią Linux distribuciją savo poreikiams.</div>
<br />
<hr align="left" size="1" width="100%" />
<br />
<h3 style="text-align: start;">
<span style="font-family: inherit; font-size: large;">
Linux distribucijų apžvalgos turinys su nuorodomis pateiktas apačioje:</span></h3>
<br />
<span style="font-family: inherit;"> • <a href="https://skarware.blogspot.com/2015/01/linux-distribuciju-apzvalga-ivadas.html" target="_blank">Įvadas</a></span>
<br />
<div>
<ol>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/debian-gnulinux-linux-distribuciju.html" target="_blank">Debian GNU/Linux</a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/ubuntu.html" target="_blank">Ubuntu</a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/linux-mint.html" target="_blank">Linux Mint</a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/slackware.html" target="_blank">Slackware</a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/opensuse.html" target="_blank">openSUSE</a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/suse-linux-enterprise.html" target="_blank">SUSE Linux Enterprise <i>(SLE)</i></a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/fedora.html" target="_blank">Fedora</a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/red-hat-enterprise-linux.html" target="_blank">Red Hat Enterprise Linux <i>(RHEL)</i></a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/centos.html" target="_blank">CentOS</a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/arch-linux.html" target="_blank">Arch Linux</a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/gentoo-linux.html" target="_blank">Gentoo Linux</a></span></li>
</ol>
<span style="font-family: inherit;"> •<b style="background-color: #d9ead3;"> Išvados</b></span></div>
<br />
<hr align="left" size="1" width="50%" />
Martynashttp://www.blogger.com/profile/00471091754225207342noreply@blogger.com0tag:blogger.com,1999:blog-5426813891256937073.post-62076707901124732902015-01-24T23:58:00.001+02:002021-07-03T00:10:43.070+03:00Gentoo Linux<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgitKvWEhj5dtPngCEBQRAgTadrhmQ4v4ETOfhK7paejsyg9eDCJCMfMXiUQG_NwcmZuDlaAFjD_6P-q3y0v0lSBYN4-aoqhBj2mJeSD9tyUlq4VH3K-pLr-0UJukT-zRaId1rtn6zh9gI/s1600/gentoo-logo-transparent.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"><img border="0" height="200" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgitKvWEhj5dtPngCEBQRAgTadrhmQ4v4ETOfhK7paejsyg9eDCJCMfMXiUQG_NwcmZuDlaAFjD_6P-q3y0v0lSBYN4-aoqhBj2mJeSD9tyUlq4VH3K-pLr-0UJukT-zRaId1rtn6zh9gI/s1600/gentoo-logo-transparent.png" width="150" /></a></div>
<div class="MsoNormal" style="text-align: justify; text-indent: 1.0cm;">
Gentoo – dar viena <b>savarankiška</b> Linux distribucija, jos šaknys siekia 1999 metus, kuomet pirmą kartą buvo išleista <i>Enoch Linux 0.75</i> distribucija. Vėliau <i>„Enoch“</i> distribucija<i> </i>buvo pervadinta į <i>„Gentoo“ </i>(„Gentoo“ yra greičiausiai plaukianti pingvinų rūšis), norint pabrėžti potencialų spartos prieaugį dėl programinės įrangos optimizavimo konkrečiai sistemai. <b><i>Gentoo Linux 1.0</i></b> išleista 2002 metais ir nuo tada pradėta aktyviau plėtoti. Gentoo projekto pirminis tikslas buvo sukurti efektyviai sistemos resursus naudojančią distribuciją, atsisakant nebūtinos ir iš anksto sukompiliuotos programinės įrangos, tačiau
suteikiant įrankius programinės įrangos sukompiliavimui sistemos viduje iš išeities kodo, taip, pagal vartotojo parametrus ir aparatinę įrangą, programas optimizuojant konkrečiai sistemai. Visgi šiandien dalis programų, ypač didesnės apimties dėl ilgo kompiliavimo sąnaudų, pateikiamos ir iš anksto sukompiliuotos (įskaitant patentuotą programinę įrangą).</div>
<br />
<div class="MsoNormal" style="text-align: justify; text-indent: 1.0cm;">
Gentoo Linux, panašiai kaip <i>Arch Linux</i> distribucija, yra orientuota
į Linux entuziastus ir įgudusius vartotojus, kuriems suteikiama minimali bazinė
struktūra, kurios pagrindu bus statoma sava Linux distribucija, atitinkanti
individualius vartotojo poreikius. Dėl savo neriboto lankstumo Gentoo dažnai
vadinama <i><b>meta-distribucija</b></i>*: ji gali būti serveris, darbo/laisvalaikio/žaidimų kompiuterio sistema ar
įterptinių sistemų sprendimas – viskas priklauso nuo vartotojo norų. Tačiau
skirtingai nuo <i>Arch, </i>kuri pateikia savo programinę įrangą iš anksto sukompiliuotą, Gentoo tikslas sukompiliuoti programinę įrangą konkrečios sistemos viduje, siekiant maksimalios jos spartos (<b>optimizacija</b>).</div>
<blockquote class="tr_bq">
* <span style="font-size: small;">Terminas <i>meta-distribucija</i> vartojamas beveik neribotai pritaikomoms distribucijoms, kurios leidžia sukurti individualias sistemas pagal vartotojo specifikacijas.</span></blockquote>
<div class="MsoNormal" style="text-align: justify; text-indent: 1.0cm;">
Panašiai kaip Arch Linux, Gentoo
neturi numatytosios grafinės darbalaukio aplinkos. Kita vertus, būtų galima
pasakyti, jog visos darbalaukio aplinkos yra Gentoo numatytosios, nes
oficialiai palaiko platų pasirinkimo spektrą ir įgalina vartotoją naudoti bet
kurią: <i>Awesome, Enlightenment, Fluxbox,
GNOME, KDE, LXDE-Meta, Openbox, XBMC</i> ir<i>
Xfce</i>. Apskritai Gentoo Linux neturi savos standartinės išvaizdos ir pojūčių
atmosferos (<i><b>look-and-feel</b></i>), visą
programinę įrangą stengiamasi pateikti tokią, kokią jos autoriai ir numatė.
Gentoo projekto plėtotojai nemodifikuoja ir netaiso programinės įrangos
išeities kodo, jei tai nėra būtina Gentoo Linux sistemos architektūrai ir
vientisumui išlaikyti.<o:p></o:p></div>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgI4sqFh7kXAGvKKYlbXVf2qvkcj7jpOMhOYmdcBgrkoElHeLoyvOK-02-uWZRRkl80-RNq8L8DCQiArs3iDL3bGde7WSYrihnCaNk5FGHf2QY1p8IZ-MyJeSFZixl3fA9gvmLKl5CuS5U/s1600/Gentoo+2012+desktop+Gnome.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="400" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgI4sqFh7kXAGvKKYlbXVf2qvkcj7jpOMhOYmdcBgrkoElHeLoyvOK-02-uWZRRkl80-RNq8L8DCQiArs3iDL3bGde7WSYrihnCaNk5FGHf2QY1p8IZ-MyJeSFZixl3fA9gvmLKl5CuS5U/s1600/Gentoo+2012+desktop+Gnome.png" width="640" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;"><i>Gentoo Linux</i> 2012-08-17 su <i>GNOME</i> darbalaukio aplinka</td></tr>
</tbody></table>
<br />
<div class="MsoNormal" style="text-align: justify; text-indent: 1.0cm;">
Pagrindinė ypatybė, išskirianti Gentoo iš kitų Linux distribucijų, yra vadinamoji <i><b>Ports</b></i> tipo galinga paketų tvarkymo sistema <i><b>Portage</b>*</i>, ji dirba su kelių tipų paketais, kurių plėtiniai .<i>ebuild**</i> ir <i>.tbz2***</i>. Pirmasis tipas (<i>ebuild</i>) yra pagrindinis ir numatytasis Gentoo sistemoje, naudojamas programinei įrangai diegti iš išeities kodo ją adaptuojant ir optimizuojant konkrečiai sistemai, siekiant didžiausio efektyvumo. Antrasis formatas (<i>tbz2</i>) talpina iš anksto sukompiliuotų programų failus su bendraisiais nustatymais ir be maksimalios optimizacijos konkrečiai sistemai. Būtent <i>Portage</i> lankstumas leidžia Gentoo vadinti <i>meta-distribucija</i>. Ji lėmė staigų jos išpopuliarėjimą 2002 metais ir daro ją savarankiška-nepriklausoma Linux distribucija.<o:p></o:p></div>
<blockquote class="tr_bq">
* <span style="font-size: small;"><i>Portage</i> paketų tvarkyklės koncepcijos idėja pasiskolinta iš Unix operacinės sistemos <i>FreeBSD </i>paketų tvarkyklės, vadinamos <i>Ports</i>. Panašiomis funkcijomis gali pasigirti ir <i>Arch Linux</i> distribucijos <i>ABS </i>sistema, visgi <i>Portage</i> sistema yra pažangesnė.</span><br />
** <span style="font-size: small;"><i>Bash</i> komandų aplinkos scenarijus (<i>script</i>), automatizuojantis programinės įrangos išeities kodo kompiliavimo ir diegimo procedūras <i>Gentoo</i> sistemoje.</span><br />
*** <span style="font-size: small;"><i>Gentoo Linux</i> sistemai skirti iš anksto sukompiliuotų programų <i>tar </i>archyvai (<i>tarballs</i>).</span></blockquote>
<br />
<div class="MsoNormal" style="text-align: justify;">
<i>Portage</i> sistemos pagrindą sudaro <i>ebuild </i>sistema ir <i>emerge</i>
įrankis, kaip visuma <i>Portage</i> paketų tvarkyklė yra <b>Gentoo Linux sistemos šerdis ir atlieka keletą pagrindinių funkcijų:</b></div>
<ul>
<li style="text-align: justify;"><b>Platina programinę įrangą Gentoo projektui</b> – su <i>emerge</i> įrankiu, parašius vieną komandą (<i>emerge --sync</i>),
galima sinchronizuoti sistemos vietinį <i>Portage</i>
medį (<i>Portage tree</i>) su interneto
saugyklomis (<i>repositories</i>). Šitaip
atsisiunčiant vėliausius <i>.ebuild</i>
failus į savo sistemą, iš kurių galima sukurti ir įdiegti naujausius Gentoo
programinės įrangos paketus.</li>
<li style="text-align: justify;"><b>Yra paketų kūrimo ir diegimo sistema</b> – užtenka vos
vienos komandos, norint įdiegti konkretų paketą (<i>emerge paketas</i>), <i>Portage</i>
automatiškai parsiunčia ir sukompiliuoja programą konkrečiai sistemai pagal jos
individualius nustatymus ir naudojamą aparatinę įrangą (optimizuoja programinę
įrangą konkrečiai sistemai) bei ją įdiegia.</li>
<li style="text-align: justify;"><b>Palaiko naujausią sistemos versiją</b> – kaip ir <i>Arch Linux</i>, Gentoo yra tęstinio leidimo
(<i>rolling-release</i>) distribucija, todėl
su viena komanda (<i>emerge -uD world</i>)
galima automatiškai atnaujinti visą sistemos programinę įrangą į vėliausią
versiją (apie tai plačiau vėliau).</li>
</ul>
<br />
<div class="MsoNormal" style="text-align: justify; text-indent: 1.0cm;">
Taigi, <i>Portage</i> yra labai pažangi ir galinga paketų tvarkymo sistema.
Keletas apibendrintų jos savybių: sugeba automatiškai išspręsti programinės
įrangos priklausomybes nuo kitų paketų; leidžia adaptuoti diegiamai programinei
įrangai pavienius ir globalius nustatymus su vadinamosiomis vėliavėlėmis (<i>USE flags</i>); suteikia vietinę <i>ebuild</i> failų saugyklą ir geba ją
sinchronizuoti su interneto saugyklomis (<i>repositories</i>);
leidžia lygiagretų paketo versijų diegimą; su <i>emerge</i> komanda diegiami paketai pirmiausiai testuojami sistemos
<b>virtualizacijoje</b> (<i>sandbox</i>) ir tik
neaptikus klaidų įdiegiami į tikrąją sistemą.<o:p></o:p></div>
<br />
<div class="MsoNormal" style="text-align: justify; text-indent: 1.0cm;">
Dar vienas Gentoo Linux paketų tvarkymo sistemos <i>Portage</i> privalumas – labai platus programinės įrangos paketų medis,
leidžiantis rinktis net iš +37000 <i>ebuild</i>
failų, skirtų programinės įrangos kompiliavimui sistemos viduje, ir +17000 iš
anksto sukompiliuotų programinės įrangos paketų.
<i>Portage</i> sistema paketus skirsto į
tris lygius: <b>stabilius</b> (<i>stable</i>),
testuojamus (<i>keyword masked</i>) ir
nestabilius (<i>hard masked</i>); vartotojas turi laisvę rinktis bet kurį lygį,
visoms ar tik pavienėms programoms. Paketus sistemoje galima tvarkyti iš
komandinės eilutės <i>emerge</i> įrankio
pagalba arba per grafinę vartotojo sąsają, kurią suteikia <i><b>Porthole</b></i> ir <i><b>Himerge</b></i>
programos.<o:p></o:p></div>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhp8pTPu8ZYuyhyphenhyphenM_mdZvKzEbbY76X-icBspKmYqcwGt8JF69_bZKIMlh5afj-m0g3njMY-PXt357-kn5jkv9794erYSHaUelAa3gqyg1RIktHY9VeEOVvbl-4iL1MvneSJRi05_5k6zHg/s1600/Gentoo-emerge.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="432" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhp8pTPu8ZYuyhyphenhyphenM_mdZvKzEbbY76X-icBspKmYqcwGt8JF69_bZKIMlh5afj-m0g3njMY-PXt357-kn5jkv9794erYSHaUelAa3gqyg1RIktHY9VeEOVvbl-4iL1MvneSJRi05_5k6zHg/s1600/Gentoo-emerge.png" width="640" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Paketo diegimas <i><b>emerge</b> </i>įrankio pagalba</td></tr>
</tbody></table>
<br />
<div class="MsoNormal" style="text-align: justify; text-indent: 1.0cm;">
Gentoo distribucija pasižymi
nepriekaištinga dokumentacija, todėl net nepatyręs Linux vartotojas gali ją
gana nesunkiai įsidiegti į savo kompiuterį, teriekia prieš imantis darbo
perskaityti Gentoo vadovą (rekomenduojama bet kuriam naujam Gentoo Linux
vartotojui). Kadangi tai yra bendruomenės, savanorių plėtojamas projektas,
mokamos pagalbos ir palaikymo čia nerasite. Nepaisant to, Gentoo projektas
užtikrina kokybę ir operatyviai išleidžia saugumo bei kitų klaidų, įtakojančių
sistemos vientisumą, pataisas. Iškilusias problemas tenka spręsti pirmiausiai
pačiam, o nepavykus galima susisiekti su kitais, labiau patyrusiais Gentoo
Linux vartotojais per forumus, el. pašto diskusijas ar IRC pokalbių kambarius
(kaip ir visose savanorių varomose distribucijose). <o:p></o:p></div>
<br />
<div class="MsoNormal" style="text-align: justify; text-indent: 1.0cm;">
Kita ypatybė dar kartą pabrėžianti Gentoo panašumą į <i>Arch Linux</i> sistemą ir išskirianti jas iš daugumos Linux
distribucijų – taikomas <b>tęstinio leidimo</b> (<i>rolling-release</i>)
vystymo modelis. Vadinasi, teoriškai naujausią Gentoo sistemos versiją galima
įdiegti iš bet kurio jos diegimo atvaizdo (<i>installation
image</i>), tereikia po įdiegimo įvykdyti pilną sistemos atnaujinimą <i>emerge</i> įrankio pagalba (su komanda <i>emerge -uD world</i>) ir sistema (jos visa
programinė įranga) automatiškai atnaujinama į vėliausią versiją iš programinės
įrangos saugyklų internete (<i>repositories</i>).
Praktiškai tai ne visada tiesa, nes retkarčiais visos sistemos atnaujinimas
reikalauja didesnio vartotojo įsikišimo dėl stambesnių Gentoo Linux bazinės
struktūros pakeitimų ar kitų nenumatytų klaidų. Kuo diegimo atvaizdas senesnis, tuo Gentoo
sistemos atnaujinimo procedūra į vėliausią jos versiją tampa sudėtingesnė. Kita
vertus, gana senas Gentoo Linux diegimo atvaizdas gali nepalaikyti ir
neatpažinti vėlesnės techninės įrangos. Patys Gentoo projekto išleidžiami
sistemos diegimo atvaizdai (<i>installation
image</i>) yra tiesiog naujausia bazinės Gentoo sistemos <b>momentinė kopija</b> (<i>snapshot</i>) su diegimo sistema. Iki 2008
metų diegimo atvaizdai buvo leidžiami labai nereguliariai, apie kelis
kartus per metus. Nuo 2008 m. sistemos diegimo atvaizdų kūrimas, t. y. vėliausios bazinės Gentoo
sistemos momentinio būvio kopijos (<i>snapshot</i>)
bei diegimo sistemos kūrimas buvo automatizuotas ir pradėtas leisti reguliariai
kas savaitę.<o:p></o:p></div>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgFQyWiWfd1ZZ0_iPfBx526PwRnUhRCwgnom-ENIWFY-ALzmWBDqYJFqMZLbV1h2UKVIkh1cLq3lTRylCR6dQBhGDRyRXAj8R1HbbGVuL28hlCi6AS4rxv9vu9Iz1WpAsO69HXlYWDlP74/s1600/emerge+-puvD+world.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="273" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgFQyWiWfd1ZZ0_iPfBx526PwRnUhRCwgnom-ENIWFY-ALzmWBDqYJFqMZLbV1h2UKVIkh1cLq3lTRylCR6dQBhGDRyRXAj8R1HbbGVuL28hlCi6AS4rxv9vu9Iz1WpAsO69HXlYWDlP74/s1600/emerge+-puvD+world.png" width="640" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Prieš visos sistemos atnaujinimą rekomenduojama pasitikrinti kas ir kaip bus įrašoma su komanda <i>emerge -puvD world</i></td></tr>
</tbody></table>
<br />
<div class="MsoNormal" style="text-align: justify; text-indent: 1cm;">
Be reguliariųjų sistemos diegimo atvaizdų (<i>installation images</i>) Gentoo projektas išleidžia ir vadinamuosius <i><b>Live
CD/DVD-ISO</b></i> atvaizdus, kurie įgalina vartotoją išbandyti Gentoo Linux operacinę
sistemą jos neįdiegus į savo kompiuterį. <i>Live</i> atvaizdai numatyti su grafine darbalaukio aplinka (<i>KDE, GNOME, Xfce, Fluxbox, LXQt</i>) bei būtiniausiomis asmeninio
kompiuterio programomis. Kompiuterio kietajame diske esančių duomenų <i>Live</i> sistema neliečia ir neįrašo naujų, visi OS reikalingi duomenys įrašomi į operatyviąją atmintį. Šie atvaizdai automatiškai
paleidžia grafinę darbalaukio aplinką, todėl tai yra puikus būdas išbandyti Gentoo
Linux sistemą. Visgi jos pilnas diegimas į kompiuterį gali trukti nuo kelių valandų
iki dienų. Kita vertus, šių atvaizdų leidimas labai nepastovus – tarp paskutinių
<i>LiveDVD</i> versijų yra net dvejų metų intervalas.</div>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjxVqAML_E7UlLTP6xE4qvJmrgmxJ2dRK26V9WDWKFe2rGs2eKelHfKDx2dV14FZQo4mrQ2TrSeugLR3pHNTYM55mX8S-L_h-FjmySkhSQLv4J0J9rtQy2Ex8PT-v4jENNsXDoPHZf_4l8/s1600/Gentoo+2014+Live+DVD+default+KDE.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="318" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjxVqAML_E7UlLTP6xE4qvJmrgmxJ2dRK26V9WDWKFe2rGs2eKelHfKDx2dV14FZQo4mrQ2TrSeugLR3pHNTYM55mX8S-L_h-FjmySkhSQLv4J0J9rtQy2Ex8PT-v4jENNsXDoPHZf_4l8/s1600/Gentoo+2014+Live+DVD+default+KDE.jpg" width="640" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;"><i>Gentoo Linux 20140826</i> - <b>LiveDVD</b> su <i>KDE</i> darbalaukio aplinka</td></tr>
</tbody></table>
<br />
<div class="MsoNormal" style="text-align: justify; text-indent: 1.0cm;">
Gentoo projektas plėtoja ir
naudoja kaip numatytąją <i><b>OpenRC</b></i>
inicijavimo sistemą (<i>init system</i>).
Tiesa, tai nėra pilnas tradicinės inicijavimo sistemos pakaitalas, o tik jos
papildymas (dažniausiai tradicinės <i>SysVinit
</i>inicijavimo sistemos), leidžiantis išplėsti funkciuonalumą iki modernios
inicijavimo sistemos ir yra naudojamas kaip analogija, kontraversiškai
vertinamai <i>Systemd</i> inicijavimo
sistemai. <i>OpenRC</i> pasižymi portatyvumu
– jos tikslas efektyviai veikti visose Unix tipo distribucijose kaip
inicijavimo sistema*, tuo tarpu <i>Systemd</i> pritaikyta tik
Linux distribucijoms. Keletas distribucijų tai vertina kaip didelį minusą, nes
yra plėtojamos ne tik darbui su Linux branduoliu (pvz., Debian ir Gentoo). <i>OpenRC</i> plėtojama laikantis Unix
filosofijos, kur svarbu paprastumas, primityvumas ir efektyvumas. Todėl<i> OpenRC </i>suteikia daugiau laisvės
vartotojui valdant savo sistemą, nei gana gremėzdiška <i>Systemd</i> inicijavimo sistema (<i>init
system</i>), išpūsta įvairiausiomis automatinėmis funkcijomis, kurių ne visoms
sistemoms reikia.</div>
<blockquote class="tr_bq">
* <span style="font-size: small;"><i>OpenRC</i> projekto įkūrėjas buvo/yra Unix <i>NetBSD</i> operacinės sistemos plėtotojas. Vėliau <i>OpenRC</i> inicijavimo sistemos (<i>init system</i>) plėtojimą perėmė Gentoo projektas.
</span></blockquote>
<br />
<div class="MsoNormal" style="text-align: justify; text-indent: 1.0cm;">
Dar viena Gentoo Linux ypatybė – <b>platus kompiuterinių sistemų architektūrų palaikymas</b>. Tarp oficialiai Gentoo
projekto palaikomų ir vertinamų kaip stabilių architektūrų yra: <i>x86, x86-64, IA-64, PA-RISC, PowerPC,
PowerPC 970, SPARC 64-bit</i> ir<i> DEC
Alpha </i>procesoriai. Oficialiai palaikomos, bet pažymėtos kaip testuojamos
procesorių architektūros:<i> MIPS, Cell,
System Z/s390, ARM</i> ir<i> SuperH</i>.
Toks platus kompiuterių architektūrų palaikymas nesunkiai įmanomas dėl Gentoo
projekto pirminio tikslo – plėtoti savo distribucijos programinę įrangą ne iš
anksto sukompiliuotą paketuose, o automatizuoti jos išeities kodo kompiliavimo
procesą konkrečios sistemos viduje (siekiant maksimalios jos spartos toje
sistemoje). Tai įgyvendinti padeda <i>Portage</i>
paketų tvarkyklė su <i>ebuild</i> failais, kurie turi programų kompiliavimo
instrukcijas skirtingoms kompiuterių architektūroms.</div>
<br />
<div class="MsoNormal" style="text-align: justify; text-indent: 1.0cm;">
Nuo pat pirmos stabilios <i>Gentoo Linux 1.0</i> versijos išleidimo
Gentoo greitai tapo viena populiariausių distribucijų: 2002 ir 2003 metais, <i>DistroWatch.com</i> duomenimis, ji užėmė
atitinkamai 3 ir 4 vietas populiariausių distribucijų reitinguose. Tačiau 2006
metais nukrito į 10 vietą ir iki 2014 metų populiarumas išblėso iki 37
pozicijos populiariausių distribucijų sąraše.</div>
<br />
<hr align="left" size="1" width="100%" />
<br />
<h3 style="text-align: start;">
<span style="font-family: inherit; font-size: large;">
Linux distribucijų apžvalgos turinys su nuorodomis pateiktas apačioje:</span></h3>
<br />
<span style="font-family: inherit;"> • <a href="https://skarware.blogspot.com/2015/01/linux-distribuciju-apzvalga-ivadas.html" target="_blank">Įvadas</a></span>
<br />
<div>
<ol>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/debian-gnulinux-linux-distribuciju.html" target="_blank">Debian GNU/Linux</a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/ubuntu.html" target="_blank">Ubuntu</a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/linux-mint.html" target="_blank">Linux Mint</a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/slackware.html" target="_blank">Slackware</a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/opensuse.html" target="_blank">openSUSE</a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/suse-linux-enterprise.html" target="_blank">SUSE Linux Enterprise <i>(SLE)</i></a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/fedora.html" target="_blank">Fedora</a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/red-hat-enterprise-linux.html" target="_blank">Red Hat Enterprise Linux <i>(RHEL)</i></a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/centos.html" target="_blank">CentOS</a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/arch-linux.html" target="_blank">Arch Linux</a></span></li>
<li><span style="font-family: inherit;"><b style="background-color: #d9ead3;">Gentoo Linux</b></span></li>
</ol>
<span style="font-family: inherit;"> • <a href="https://skarware.blogspot.com/2015/01/linux-distribuciju-apzvalga-isvados.html" target="_blank">Išvados</a></span></div>
<br />
<hr align="left" size="1" width="50%" />
Martynashttp://www.blogger.com/profile/00471091754225207342noreply@blogger.com0tag:blogger.com,1999:blog-5426813891256937073.post-65370262730704188342015-01-23T23:27:00.001+02:002021-07-03T00:11:21.791+03:00Arch Linux<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj_1pnjCDJtirmwP6cwww8fzYlpdNi4m1HTVgtpGE-IlrQ7RrdrdZ_kIp8Rw-PU9KmE64VW83g1whzlDDHQAWGeXeXWQVo_z6n58qmGz4fzVySI61-ri6LlmyeSW9C9OfFcJTG0o5fBzHY/s1600/Archlinux-logo-fullcolour.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"><img border="0" height="193" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj_1pnjCDJtirmwP6cwww8fzYlpdNi4m1HTVgtpGE-IlrQ7RrdrdZ_kIp8Rw-PU9KmE64VW83g1whzlDDHQAWGeXeXWQVo_z6n58qmGz4fzVySI61-ri6LlmyeSW9C9OfFcJTG0o5fBzHY/s1600/Archlinux-logo-fullcolour.png" width="200" /></a></div>
<div class="MsoNormal" style="text-align: justify; text-indent: 1.0cm;">
Arch Linux – lanksti, visapusiška savanorių bendruomenės plėtojama distribucija, pritaikyta įgudusių Linux vartotojų poreikius tenkinti. Pirmasis Arch Linux leidimas pasirodė 2002 metais su idėja sukurti <b>nepriklausomą </b>Linux distribuciją (nuo pačių pagrindų), kuri pasižymėtų paprastumu, minimalumu ir elegancija.</div>
<br />
<div class="MsoNormal" style="text-align: justify; text-indent: 1.0cm;">
Paprastumas Arch Linux distribucijoje pasireiškia ne intuityvia grafine aplinka neįgudusiam vartotojui, o <b>primityvumu</b> – sistema tik su būtiniausia programine įranga, vengiant jos modifikacijų bei atsisakant žymios sistemos automatizacijos ir akiai mielų sprendimų. Arch suteikia minimalią bazinę Linux struktūrą su visiškomis valdymo teisėmis ir atsakomybe, o tai leidžia individualiam vartotojui susikurti sistemą pagal savo poreikius ir norus.</div>
<br />
<div class="MsoNormal" style="text-align: justify; text-indent: 1.0cm;">
Diegimo vedlio Arch Linux
distribucija neturi, visas sistemos diegimas ir formavimas vyksta praktiškai
<b>nuo nulio</b>, vadinasi iš komandinės eilutės. Diegimo sistema tiesiog atidaro
terminalą, į kurį reikia įvesti atitinkamas komandas sistemos konfigūracijai,
diskų suskaidymui ir kitiems būtiniems veiksmams operacinės sistemos įdiegimui
(geras būdas susipažinti su Linux ir savo sistemos sandara; tai palengvina
puiki Arch Linux dokumentacija).</div>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiu-Z-EqvTf8wdzY1HBneQ_yUaB40jcOQFa5CVSb9YlzYRO1JJMC9UR7ZGaAPmo58FjgP3jvsENmSjRKAv11eMAWkKShd-9ZzB3mEJab9-gySkTwaNELHGmZ6-CHAUWaLq0K6TZXzvRLgI/s1600/Arch-Linux-install-terminal.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="200" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiu-Z-EqvTf8wdzY1HBneQ_yUaB40jcOQFa5CVSb9YlzYRO1JJMC9UR7ZGaAPmo58FjgP3jvsENmSjRKAv11eMAWkKShd-9ZzB3mEJab9-gySkTwaNELHGmZ6-CHAUWaLq0K6TZXzvRLgI/s1600/Arch-Linux-install-terminal.png" width="400" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Arch Linux sistemos diegimo terminalas</td></tr>
</tbody></table>
<br />
<div class="MsoNormal" style="text-align: justify; text-indent: 1.0cm;">
Tarp kitų Linux distribucijų Arch
sužibo apie 2004 metus, kai pradėjo save pristatyti kaip <b>tęstinio leidimo</b>
distribuciją (<i>rolling-release</i>), kurią
įdiegti reikia tik kartą, o toliau ji bus atnaujinama pasitelkus galingą paketų
tvarkyklę <i>Pacman.</i> Ši paketų tvarkymo
sistema sukurta specialiai Arch Linux distribucijos paketų įdiegimui, šalinimui
ir atnaujinimui.</div>
<br />
<div class="MsoNormal" style="text-align: justify; text-indent: 1.0cm;">
Arch sistemai atnaujinti teoriškai
pakanka vos <b>vienos komandos</b> (<i>pacman -Syu</i>),
tačiau praktiškai tai ne visada tiesa. Pasitaiko, kad tam tikram sistemos
atnaujinimui reikia vartotojo įsikišimo (instrukcijos būna paskelbtos Arch
projekto svetainėje). Be to, <b>tęstinio leidimo</b> (<i>rolling-release</i>) vystymo modelį taikanti sistema turi savų pavojų. Būna
atvejų, kai po <i>Pacman</i> atnaujinimo dėl
nenumatytų klaidų sistema praranda savo vientisumą ir nebegali užsikrauti. Dėl
to Arch distribucijos vartotojas turi turėti pakankamai įgūdžių ir žinių, jog
sugebėtų išspręsti iškilusias problemas.</div>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEidpM85O8cFI6HzbLoaYP72-5QgX3IT92lezEWDHb8as9BRBQbt4hpeLT4aoMYys0OK2s9BNHDEwA34aooKlXcs4wxkNZ9-QL0Xn4A2YeGKNFScqBL7YQSthDzeHmwOQYuS1PBHRP8Q-VY/s1600/Pacman-4.1.0rc1-39-gf89f4.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="379" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEidpM85O8cFI6HzbLoaYP72-5QgX3IT92lezEWDHb8as9BRBQbt4hpeLT4aoMYys0OK2s9BNHDEwA34aooKlXcs4wxkNZ9-QL0Xn4A2YeGKNFScqBL7YQSthDzeHmwOQYuS1PBHRP8Q-VY/s1600/Pacman-4.1.0rc1-39-gf89f4.png" width="640" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Arch Linux<i> </i> sistemos atnaujinimas su komanda <i><b>pacman -Syu</b></i></td></tr>
</tbody></table>
<br />
<div class="MsoNormal" style="text-align: justify; text-indent: 1.0cm;">
Skirtingai nuo daugumos kitų Linux
distribucijų, Arch Linux naujos versijos nėra planuojamos tam tikrai datai
pagal numatytą tvarkaraštį, ji taiko <b>tęstinio leidimo</b> (<i>rolling-release</i>) vystymo modelį, todėl atnaujinus sistemą per <i>Pacman</i> paketų tvarkyklę Arch
distribucija tampa naujausios versijos. Arch projekto išleidžiami sistemos
diegimo atvaizdai (<i>installation images</i>)
yra tiesiog naujausia bazinės Arch distribucijos <b>momentinė kopija</b> (<i>snapshot</i>) su primityvia įdiegimo
sistema. Taigi, dažniausiai nėra jokio skirtumo, iš kurio leidimo Arch Linux
distribucija bus įdiegta, ją vėliau atnaujinus iš programinės įrangos saugyklų
internete (<i>repositories</i>) sistema
visada bus naujausios versijos. Kita vertus, ganėtinai senas Arch diegimo
atvaizdas gali neatpažinti naujausios aparatinės įrangos, todėl nuo 2012 m.,
siekiant suteikti optimalų techninės įrangos palaikymą, diegimo atvaizdai su
einamąja Arch Linux bazinės sistemos <b>momentine kopija</b> (<i>snapshot</i>) išleidžiami reguliariai kas mėnesį.</div>
<br />
<div class="MsoNormal" style="text-align: justify; text-indent: 1.0cm;">
Vienas iš Arch distribucijos
prioritetų – stengtis visada pasiūlyti naujausią programinę įrangą (<i><b>bleeding edge</b></i>). Tai įmanoma dėl <i>Pacman</i> paketų tvarkyklės funkcionalumo
ir Arch paketų saugyklų (<i>repositories</i>)
„šviežumo“. Nors Arch sistema neturi numatytosios grafinės vartotojo sąsajos,
paketų saugyklose oficialiai palaikomos <i>Cinnamon,
Enlightenment, GNOME, KDE, LXDE, MATE</i> ir <i>Xfce</i> grafinės darbalaukio aplinkos, kurias nesunkiai galima
įsidiegti. Arch apskirtai nenumato savų<b> </b>pagalbinių įrankių grafinei vartotojo
sąsajai (net <i>Pacman</i> neturi oficialios
grafinės sąsajos). Vietoj to, Arch sistema pateikia <b>švarius </b>konfigūracijos failus, kuriuos lengva redaguoti iš komandinės
eilutės. Nepaisant to, Arch Linux distribucija suteikia visišką kūrimo laisvę
ir minimalią bazę, kurią galima išplėsti iki grandiozinės sistemos su grafine
darbalaukio aplinka. Kaip Arch Linux projekto įkūrėjas <i>Judd Vinet</i> yra pasakęs: „<i>Arch Linux is what you make it</i>“ (<i>Arch Linux yra tai, ką tu pats sukuri</i>).</div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhdyl4QItUGP4KlhuFWE8WDIidpaJbBwxEbsXuUhSpgxfsSzbA7tXlu40Zw9euZaue-io1iAIr7IIvThm7M4xe687wPbIuJf5pHb1chXIDsUilND9ivw2L87nY1w40ebeg3OKV6ocziWgQ/s1600/KDE+4.12+running+on+ArchLinux+with+global+menu+&+conky.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="358" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhdyl4QItUGP4KlhuFWE8WDIidpaJbBwxEbsXuUhSpgxfsSzbA7tXlu40Zw9euZaue-io1iAIr7IIvThm7M4xe687wPbIuJf5pHb1chXIDsUilND9ivw2L87nY1w40ebeg3OKV6ocziWgQ/s1600/KDE+4.12+running+on+ArchLinux+with+global+menu+&+conky.png" width="640" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Arch Linux su <i>KDE 4.12</i> darbalaukio aplinka (<i>+Global Menu & Conky</i>)<br />
šaltinis: <i><a href="https://secure.flickr.com/photos/okubax/" target="_blank">okubax</a></i></td></tr>
</tbody></table>
<br />
<div class="MsoNormal" style="text-align: justify; text-indent: 1.0cm;">
Labiausiai vertinama Arch Linux
ypatybė yra galinga nuosava paketų tvarkyklė <i><b>Pacman</b></i>, kuri sugeba ne tik efektyviai išspręsti programinės įrangos
priklausomybes nuo kitų paketų, bet ir atnaujinti sistemą į <b>vėliausią versiją</b>. <i>Pacman</i> dirba su sukompiliuotų programų
paketais, kurių plėtiniai <i>pkg.tar.xz</i>.
Šie paketai yra <i>tar</i> archyvai, failų
kompiliacijos, sukurtos <i>tar</i> programa
(<i>tarballs</i>).</div>
<br />
<div class="MsoNormal" style="text-align: justify; text-indent: 1.0cm;">
Dar viena Arch Linux distribucijos ypatybė yra vadinamoji <i><b>Ports</b></i> tipo paketų kūrimo sistema „<i><b>Arch Build System</b></i>“ (<b>ABS</b>). Ji suteikia įrankius, palengvinančius programos išeities kodo kompiliavimą į <i>Pacman</i> paketų tvarkyklės valdomus programų paketus (paprastai kalbant, ABS sistema leidžia vartotojui santykinai nesunkiai sukompiliuoti programas iš išeities kodo ir jas įdiegti į sistemą). ABS suteikia katalogų rinkinį (<i>ABS tree</i>), kuriuose saugoma Arch oficialiųjų paketų kūrimo komandų aplinkos scenarijai, vadinamieji <i>PKGBUILD'ai</i>*, tai leidžia vartotojams lengvai modifikuoti Arch oficialius paketus ir kurti jų modifikuotas versijas (ABS įrankis <i>makepkg</i> pagal <i>PKGBUILD</i> failo instrukcijas gali sukurti paketą su plėtiniu <i>pkg.tar.xz</i>, kurį atpažįsta <i>Pacman</i> paketų tvarkyklė). ABS sutiekia patogius įrankius ir trečiųjų šalių paketų kūrimui. Visi paketai sukurti su ABS sistemoje įdiegiami ir šalinami <i>Pacman</i> paketų tvarkyklės pagalba.</div>
<blockquote class="tr_bq">
<span style="font-size: small;"><b>*</b> <i>Bash</i> komandų aplinkos scenarijus (<i>script</i>), kuris talpina programos išeities kodo <i>URL</i>, priklausomybių sąrašą bei kompiliavimo ir paketo pakavimo instrukcijas, kurios suderintos su Arch sistemos architektūra.</span></blockquote>
<br />
<div class="MsoNormal" style="text-align: justify; text-indent: 1.0cm;">
Arch projektas turi ir <b>unikalią</b> vartotojų palaikomą saugyklą – <b>AUR</b> (<i><b>Arch User Repository</b></i>). AUR netalpina sukompiliuotų programų paketų, ji saugo tik vartotojų sukurtus <i>PKGBUILD'ai.</i> Taip išvengiama apribojimų dėl patentuotos programinės įrangos<b>*</b> ir sutaupomi Arch Linux projekto serverio resursai**. <i>PKGBUILD'ai </i>gali būti sukurti bet kuriai programinei įrangai ir bet kurio eilinio vartotojo įkelti į AUR, o <i>PKGBUILD'ai</i>, atitinkantys visas Arch paketų standartų taisykles ir surinkę pakankamai teigiamų balsų, gali būti perkelti iš AUR į oficialias Arch paketų saugyklas.</div>
<blockquote class="tr_bq">
<span style="font-size: small;"><b>*</b> Dalis nemokamos programinės įrangos apribota nuo perplatinimo iš trečiųjų šalių šaltinių.<br />** <i>PKGBUILD</i> „sveria“ mažiau informacijos vienetų nei programos kodas, kuris automatiškai</span></blockquote>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiIBoB6U23UiBb0tZvvUz7P6AwFKrs6pyAHbcZPxie0h8hodt5F43hLVCIQa8iobai_1cEi_fz5AaOeXIHd-EWXOHd-vtPX7VK8ZleSlTh6aKGIBGaMs38udBF00xnMLB2rrrR4_ptW3SM/s1600/EditPKGBUILD.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="276" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiIBoB6U23UiBb0tZvvUz7P6AwFKrs6pyAHbcZPxie0h8hodt5F43hLVCIQa8iobai_1cEi_fz5AaOeXIHd-EWXOHd-vtPX7VK8ZleSlTh6aKGIBGaMs38udBF00xnMLB2rrrR4_ptW3SM/s1600/EditPKGBUILD.png" width="400" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;"><i>PKGBUILD</i> failo turinys</td></tr>
</tbody></table>
<br />
<div class="MsoNormal" style="text-align: justify; text-indent: 1.0cm;">
<i>Pacman</i> programinės įrangos medyje yra daugiau nei <b>60 tūkstančių</b> paketų ir <i>PKGBUILD'ai, </i>paruoštų diegimui Arch Linux sistemoje. Didelis paketų ir <i>PKGBUILD </i>skaičius įvairiose Arch paketų saugyklose (<i>repositories</i>) siūlo ne tik laisvąją ir
atvirąją, bet ir patentuotą programinę įrangą tiems, kurie iškelia
funkcionalumą virš atviro kodo ideologijos. Galų gale, pagal Arch Linux
projekto laisvės principus – <b>vartotojo teisė rinktis</b>. Pastebėtina, jog Arch
plėtotojai stengiasi neredaguoti ir netaisyti programinės įrangos išeities
kodo, jei tai nėra būtina sistemos vientisumui užtikrinti.</div>
<br />
<div class="MsoNormal" style="text-align: justify; text-indent: 1.0cm;">
Visi paketai oficialiose Arch
projekto saugyklose optimizuojami tik labiausiai paplitusiai techninei įrangai
su <b><i>i686</i> </b>ir <i><b>x86-64</b></i> procesorių architektūroms. Egzistuoja ir neoficialus
projektas plėtojantis Arch distribucijos palaikymą <i>ARM</i> architektūrai,
kurio tikslas perkelti Arch Linux į vis labiau populiarėjančius mobiliuosius
prietaisus su <i>ARM</i> procesoriais.</div>
<br />
<div class="MsoNormal" style="text-align: justify; text-indent: 1.0cm;">
Arch stengiasi visada pasiūlyti
naujausias Linux technologijas (<i><b>bleeding
edge</b></i>), tokias kaip modernias failų sistemas (<i>Ext4, XFS, JFS, Btrfs</i>), <i>LVM2,
RAID</i> ir vėliausius Linux branduolius. Norint pasiūlyti ir naujausią
programinę įranga, Arch naudoja <i><b>Systemd</b></i>
inicijavimo sistemą (<i>init system</i>).
Kita moderni inicijavimo sistema <i>Upstart</i>
atmetama dėl mažesnio funkcionalumo ir atvirojo kodo programų priklausomybės
didėjimo nuo <i>Systemd</i> sistemos tarnybų.</div>
<br />
<div class="MsoNormal" style="text-align: justify; text-indent: 1.0cm;">
Palaikymas Arch projekte yra nemokamas, bet ne pats paslaugiausias. Arch projekto savanorių bendruomenė
tikisi iš Arch vartotojų gerų įgūdžių kompiuterinėse sistemose ir savarankiškumo.
Prieš kreipiantis pagalbos prašoma pirma pačiam pabandyti visomis pastangomis
išspręsti kilusią problemą ir tik po to kreiptis pagalbos. Antra vertus, Arch
turi puikią dokumentaciją ir ne vieną pradedančiųjų vadovą, jais vadovaujantis
net neįgudęs Linux vartotojas gali įsidiegti Arch sistemą.</div>
<br />
<div class="MsoNormal" style="text-align: justify; text-indent: 1.0cm;">
Arch Linux išsaugo GNU/Linux sistemai būdingą sudėtingumą, kartu užtikrindama ją kaip puikiai organizuotą ir suprantamą. Arch bendruomenė įsitikinusi, kad, bandant paslėpti sistemos sudėtingumą, sukuriama dar sudėtingesnė sistema, todėl to vengia.</div>
<br />
<hr align="left" size="1" width="100%" />
<br />
<h3 style="text-align: start;">
<span style="font-family: inherit; font-size: large;">
Linux distribucijų apžvalgos turinys su nuorodomis pateiktas apačioje:</span></h3>
<br />
<span style="font-family: inherit;"> • <a href="https://skarware.blogspot.com/2015/01/linux-distribuciju-apzvalga-ivadas.html" target="_blank">Įvadas</a></span>
<br />
<div>
<ol>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/debian-gnulinux-linux-distribuciju.html" target="_blank">Debian GNU/Linux</a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/ubuntu.html" target="_blank">Ubuntu</a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/linux-mint.html" target="_blank">Linux Mint</a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/slackware.html" target="_blank">Slackware</a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/opensuse.html" target="_blank">openSUSE</a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/suse-linux-enterprise.html" target="_blank">SUSE Linux Enterprise <i>(SLE)</i></a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/fedora.html" target="_blank">Fedora</a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/red-hat-enterprise-linux.html" target="_blank">Red Hat Enterprise Linux <i>(RHEL)</i></a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/centos.html" target="_blank">CentOS</a></span></li>
<li><span style="font-family: inherit;"><b style="background-color: #d9ead3;">Arch Linux</b></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/gentoo-linux.html" target="_blank">Gentoo Linux</a></span></li>
</ol>
<span style="font-family: inherit;"> • <a href="https://skarware.blogspot.com/2015/01/linux-distribuciju-apzvalga-isvados.html" target="_blank">Išvados</a></span></div>
<br />
<hr align="left" size="1" width="50%" />
Martynashttp://www.blogger.com/profile/00471091754225207342noreply@blogger.com0tag:blogger.com,1999:blog-5426813891256937073.post-71072333811866029062015-01-22T09:00:00.001+02:002021-07-03T00:12:33.923+03:00CentOS<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi0l5V22-rwWCJt9nSTHOderOWH_yOVDpMUCffHs1SKeW2TrDoddiXp92nLCwR0afIHbeigOUnj_GIpGylwrIcCtbXGSLJginWlD0mAfpTgCWLifu5gQZE1bOPeYS9MrFSzCjS0WwOsob0/s1600/CentOS+logo.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi0l5V22-rwWCJt9nSTHOderOWH_yOVDpMUCffHs1SKeW2TrDoddiXp92nLCwR0afIHbeigOUnj_GIpGylwrIcCtbXGSLJginWlD0mAfpTgCWLifu5gQZE1bOPeYS9MrFSzCjS0WwOsob0/s1600/CentOS+logo.png" /></a></div>
<div class="MsoNormal" style="text-align: justify; text-indent: 1.0cm;">
CentOS – Red Hat Enterprise Linux (RHEL) klonas. CentOS yra abreviatūra iš angliškų žodžių: <i>„<b>C</b>ommunity <b>Ent</b>erprise <b>O</b>perating <b>S</b>ystem“</i>, kuriais pabrėžiamas projekto siekis sukurti <b>laisvą</b> bendruomenės plėtojamą <b>verslo klasės</b> distribuciją. CentOS projektas įkurtas 2003 m. kaip bendruomenės palaikomas ir remiamas. Nuo 2014 metų CentOS projektas ir <i>Red Hat</i> kompanija susijungė, bet CentOS distribucija išliko nepriklausoma nuo RHEL. Perėmusi CentOS nuosavybės teises, šį projektą dabar dalinai plėtoja ir remia pati <i>Red Hat</i> kompanija, iš kurios produkto ir klonuojama CentOS distribucija.</div>
<br />
<div class="MsoNormal" style="text-align: justify; text-indent: 1.0cm;">
<i>Red Hat</i> kompanija siekdama apriboti savo komercinės RHEL distribucijos nemokamą platinimą pasinaudoja griežtais prekinio ženklo įstatymais, tačiau būdama atvirojo kodo dalis pateikia RHEL išeities kodą viešai. Iš išeities kodo pašalinus mokamus komponentus (kaip <i>Red Hat</i> prekinį ženklą), galima sukurti RHEL kloną. Vienas iš tokių ir yra CentOS distribucija, siekianti pilno funkcinio suderinamumo su RHEL (jų pamatai skiriasi tik „etikete“), o tai reiškia, kad CentOS paveldi pirminio produkto patikimumą su gerai išbandyta ir stabilia programine įranga. Kadangi abi pasižymi vienodomis savybėmis, toliau bus apžvelgti tik svariausi jų skirtumai.</div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi5uNULswE-ClkTmKAPhM86KhEDWs8Cy6rGWlo5HQevMoUxFjBjsvPfgfOnZAbxjd37fOSNcOP27O9afmFAoqwoZoTlwArUndG8so0q5A8f83VTTD9oQNSlZN_eD6vCqAnyl4LSRHPzXBE/s1600/Fedora+to+RHEL+to+CentOS+SMALL.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="92" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi5uNULswE-ClkTmKAPhM86KhEDWs8Cy6rGWlo5HQevMoUxFjBjsvPfgfOnZAbxjd37fOSNcOP27O9afmFAoqwoZoTlwArUndG8so0q5A8f83VTTD9oQNSlZN_eD6vCqAnyl4LSRHPzXBE/s1600/Fedora+to+RHEL+to+CentOS+SMALL.png" width="400" /></a></div>
<div class="MsoNormal" style="text-align: justify; text-indent: 1.0cm;">
CentOS pagrindinės versijos ir tarpiniai atnaujinimai (<i>point releases</i>) išleidžiami pagal RHEL distribucijos dinaminį grafiką, tačiau su nedideliu vėlinimu po naujos laidos. Pagrindinių ir tarpinių versijų numeracija sutampa su RHEL, tik CentOS prideda dar vieną skiltį (trečią dalį), kuri nurodo datą (pvz., versijos numeris 7.0-1406 parodo, kad CentOS sukurta iš RHEL 7.0 pirmos laidos, o 1406 nurodo išeities kodo datą, kurio pagrindu šis leidimas pastatytas – 2014 m. birželis).</div>
<br />
<div class="MsoNormal" style="text-align: justify; text-indent: 1.0cm;">
Būdama RHEL klonu, CentOS turi vieną ilgiausių vadinamųjų gyvybės ciklų (palaikymą) tarp nekomercinių Linux distribucijų, <b>net 10 metų</b>: pirmus 5,5 metus suteikiamas pilnas palaikymas – programinės įrangos ir naujos techninės įrangos tvarkyklių atnaujinimai-pataisymai; kitus 4,5 metus numatyti tik saugumo pataisymai, o parama naujai aparatinei įrangai palaipsniui mažėja.</div>
<br />
<div class="MsoNormal" style="text-align: justify; text-indent: 1.0cm;">
Nors RHEL klonai yra nemokami, jie iš <i>Red Hat</i> kompanijos negauna jokių komercinių paslaugų bei neturi tiek daug sertifikuotos programinės ir aparatinės įrangos kaip pirminis produktas*. CentOS projektas plėtojamas savanorių bendruomenės, todėl jo techninė pagalba yra <b>nemokama</b>, kuri suteikiama per diskusijų svetaines, el. pašto konferencijas ar <i>IRC</i> pokalbių kambarius.</div>
<blockquote class="tr_bq">
<span style="font-size: small;"><i>* </i>Jei sertifikuotos aparatinės ar programinės įrangos pardavėjas laiduoja, jog jo produktas puikiai suderinamas su RHEL, tai naudojant RHEL ir iškilus nesuderinamumo problemoms, jas įsipareigoja pašalinti. Visgi jei sistema naudos vieną iš RHEL klonų, pardavėjas <b>neatsako</b> už nesklandumus, net jei klonas turi 100 proc. suderinamumą su RHEL sistema.</span></blockquote>
<div class="separator" style="clear: both; text-align: center;">
</div>
<br />
<div class="MsoNormal" style="text-align: justify; text-indent: 1.0cm;">
CentOS negali naudotis <i>Red Hat Network</i> paslaugomis, tam reikia
užsiregistruoti su autentišku RHEL sistemoms išduotu kodu. Dėl to CentOS iš <i>Red Hat</i> kompanijos tiesiogiai negauna jokių atnaujinimų ir programų paketų iš jos interneto saugyklų (<i>repositories</i>). Tam CentOS projektas plėtoja savo programinės įrangos paketų saugyklas internete, iš kurių <b>nemokamai</b> tiekia atnaujinimus.</div>
<br />
<div class="separator" style="clear: both; text-align: center;">
</div>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjgpNdAMOohc2rR3yXhrpHCocIVhqRrg8B8Z1Nf-y1a0KhB47VHWDoRAOWNBrgyiZVddjZwN7fB9QBWFn_QFtxGYAUurvwW-WEI1LDh60G1PSk55cJ01a9_2KioNJMSfbJC-iezCT0YHOw/s1600/centos7_gnome3.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="360" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjgpNdAMOohc2rR3yXhrpHCocIVhqRrg8B8Z1Nf-y1a0KhB47VHWDoRAOWNBrgyiZVddjZwN7fB9QBWFn_QFtxGYAUurvwW-WEI1LDh60G1PSk55cJ01a9_2KioNJMSfbJC-iezCT0YHOw/s1600/centos7_gnome3.png" width="640" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;"><i>CentOS 7.0</i> su <i>GNOME 3</i> (<i>Classic Mode</i>) darbalaukio aplinka</td></tr>
</tbody></table>
<br />
<div class="MsoNormal" style="text-align: justify; text-indent: 1.0cm;">
Nors CentOS distribucija yra klonas, siekiantis pilno funkcinio suderinamumo su RHEL, projektas papildomai plėtoja ir naujesnės programinės įrangos paketų interneto saugyklą – <b>SCL</b> (<i>Software Collections</i>), kurioje programų versijos būna naujesnės nei RHEL. SCL saugykloje esantys paketai <b>nepakeičia</b> numatytųjų CentOS programų (paveldėtų iš RHEL), jie įrašomi atskirai į <i>/opt</i> katalogą ir pasirinktinai įjungiami kiekvienai programai su pagalbiniu įrankiu <i>scl</i>. Iš tiesų, visos programų paketų saugyklos, kurių turinys gali pažeisti suderinamumą su RHEL distribucija, yra išjungtos pagal nutylėjimą.</div>
<br />
<div class="MsoNormal" style="text-align: justify; text-indent: 1.0cm;">
Architektūros palaikymas žymiai siauresnis nei RHEL. Naujausia <i>CentOS 7</i> versija (kuri pasirodė prieš pusmetį) dabar oficialiai palaiko <b>vos vieną</b> procesorių architektūrą – <i><b>x86-64</b></i>, vis dėlto yra dedamos pastangos išleisti palaikymą ir <i>i386, ARM</i>, <i>PowerPC</i> architektūroms.</div>
<br />
<div class="MsoNormal" style="text-align: justify; text-indent: 1.0cm;">
Nepaisant to, kad CentOS plėtojamas savanorių, ji įgijo gerą reputaciją būdama labai patikima <b>nemokama</b> alternatyva, monetarinę kainą turinčioms Linux serverių distribucijoms. CentOS taip pat tinkama naudoti verslo stalo/darbo/nešiojamuose kompiuteriuose, kur patikimumas, stabilumas ir ilgalaikis palaikymas svarbiau už poreikį turėti pačią naujausią programinę įrangą.</div>
<br />
<div class="MsoNormal" style="text-align: justify; text-indent: 1.0cm;">
Remiantis <i><a href="http://w3techs.com/technologies/history_details/os-linux/all/y" target="_blank">w3tech.com</a></i> duomenimis, 2010 metais CentOS aplenkė <i>Debian</i> distribuciją ir buvo populiariausias žiniatinklio serveris. Abiejų distribucijų rinkos dalis tuo metu buvo po 30 proc. Vis dėlto po metų <i>Debian</i> atsikovojo savo pozicijas ir šiandien (2014 m.) yra žiniatinklio serverių lyderis, turėdamas 32 proc. rinkos dalies. Tuo tarpu CentOS rinkos dalis sumažėjo iki 21 proc., nusileisdamas ir <i>Ubuntu</i> platformai, kuriai priklauso 24 proc. rinkos dalies tarp žiniatinklio serverių.</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhA7l8dUMnWAuMYSpqlca1MYCTGq6Cmg0BqEYBtzxEfhab1MqTQ8M5tSmI7tgMHhW7CKFRwUNwRPcflLvR3HxiA2615ScH9C8K1YOYvz5j9acd434PKEUYcfIHoSjPH8Eqi_jyxlm7d68I/s1600/centos+web+server.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="186" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhA7l8dUMnWAuMYSpqlca1MYCTGq6Cmg0BqEYBtzxEfhab1MqTQ8M5tSmI7tgMHhW7CKFRwUNwRPcflLvR3HxiA2615ScH9C8K1YOYvz5j9acd434PKEUYcfIHoSjPH8Eqi_jyxlm7d68I/s1600/centos+web+server.png" width="320" /></a></div>
<br />
<hr align="left" size="1" width="100%" />
<br />
<h3 style="text-align: start;">
<span style="font-family: inherit; font-size: large;">
Linux distribucijų apžvalgos turinys su nuorodomis pateiktas apačioje:</span></h3>
<br />
<span style="font-family: inherit;"> • <a href="https://skarware.blogspot.com/2015/01/linux-distribuciju-apzvalga-ivadas.html" target="_blank">Įvadas</a></span>
<br />
<div>
<ol>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/debian-gnulinux-linux-distribuciju.html" target="_blank">Debian GNU/Linux</a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/ubuntu.html" target="_blank">Ubuntu</a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/linux-mint.html" target="_blank">Linux Mint</a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/slackware.html" target="_blank">Slackware</a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/opensuse.html" target="_blank">openSUSE</a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/suse-linux-enterprise.html" target="_blank">SUSE Linux Enterprise <i>(SLE)</i></a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/fedora.html" target="_blank">Fedora</a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/red-hat-enterprise-linux.html" target="_blank">Red Hat Enterprise Linux <i>(RHEL)</i></a></span></li>
<li><span style="font-family: inherit;"><b style="background-color: #d9ead3;">CentOS</b></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/arch-linux.html" target="_blank">Arch Linux</a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/gentoo-linux.html" target="_blank">Gentoo Linux</a></span></li>
</ol>
<span style="font-family: inherit;"> • <a href="https://skarware.blogspot.com/2015/01/linux-distribuciju-apzvalga-isvados.html" target="_blank">Išvados</a></span></div>
<br />
<hr align="left" size="1" width="50%" />
Martynashttp://www.blogger.com/profile/00471091754225207342noreply@blogger.com0tag:blogger.com,1999:blog-5426813891256937073.post-61132950948237651912015-01-21T10:25:00.001+02:002021-07-03T00:13:06.141+03:00Red Hat Enterprise Linux<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjLcxHZdGIFw1ha_0F_f2FlhItOt6zFy_bGPJs1pFZdO0Q4gIu7npr5tIRbcE75EU4p5zYvo72p2L_qPyj9Fgmg1zG1qHKymRxzwqEHQb_camnxpPiRdV2jN-nLKzQjoKF2puTNjagjqtQ/s1600/Red_hat_logo_small.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjLcxHZdGIFw1ha_0F_f2FlhItOt6zFy_bGPJs1pFZdO0Q4gIu7npr5tIRbcE75EU4p5zYvo72p2L_qPyj9Fgmg1zG1qHKymRxzwqEHQb_camnxpPiRdV2jN-nLKzQjoKF2puTNjagjqtQ/s1600/Red_hat_logo_small.png" /></a></div>
<div class="MsoNormal" style="text-align: justify; text-indent: 1.0cm;">
Red Hat – viena žinomiausių Linux distribucijų, kuri ilgą laiką buvo matoma kaip sinonimas Linux operacinei sistemai, o ne kaip viena iš Linux OS distribucijų. Šiandien jos pilnas pavadinimas <b><i>Red Hat Enterprise Linux</i> (RHEL).</b> Tai komercinis produktas, plėtojamas <i>Red Hat</i> kompanijos, skirtas serveriams, darbo stotims bei asmeniniams kompiuteriams. <span style="text-indent: 1cm;">Kaip ir </span><i style="text-indent: 1cm;">Fedora</i><span style="text-indent: 1cm;">, RHEL išvesta iš laisvai platintos </span><b style="text-indent: 1cm;"><i>Red Hat Linux</i></b><span style="text-indent: 1cm;"> distribucijos 2003 metais, kai Red Hat kompanija reformavo savo produktų liniją dviem kryptimis:</span></div>
<ul>
<li style="text-align: justify;"><i><b>Red Hat Enterprise Linux</b></i> – atviro kodo <b>komercinis</b> produktas, kuriamas siekiant didelio platformos stabilumo ir turintis ilgalaikį palaikymą iš Red Hat kompanijos;</li>
<li style="text-align: justify;"><i><b>Fedora</b></i> – bendruomenės plėtojama ir remiama bei valdoma Red Hat kompanijos atviro kodo distribucija (apie Fedora detaliau jau buvo rašyta).</li>
<br />
</ul>
<table cellpadding="0" cellspacing="0" class="tr-caption-container" style="float: right; margin-left: 1em; text-align: right;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiwJ5i3XZVLbDxl4BJmAhQmFhDHAVCmJngqMbaQE4ki-zDR63mOIgERi3Q8gJmHLwKpvWnkjLi_-8bc_6PGs9pvnLX6WKylgzYB0N36BhuoA_GxV33klD1hpdlMo1o0Z89qz3BCoXW0tj0/s1600/fedoratorhel.png" imageanchor="1" style="clear: right; margin-bottom: 1em; margin-left: auto; margin-right: auto;"><img border="0" height="147" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiwJ5i3XZVLbDxl4BJmAhQmFhDHAVCmJngqMbaQE4ki-zDR63mOIgERi3Q8gJmHLwKpvWnkjLi_-8bc_6PGs9pvnLX6WKylgzYB0N36BhuoA_GxV33klD1hpdlMo1o0Z89qz3BCoXW0tj0/s1600/fedoratorhel.png" width="200" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;"><i>fedora</i> ir <i>RHEL</i> plėtojimo ciklas</td></tr>
</tbody></table>
<div class="MsoNormal" style="text-align: justify;">
Netrukus RHEL pradėta <b>išvedinėti iš <i>Fedora</i></b> distribucijos, žinoma, po tvirtos stabilizacijos ir pastangų užtikrinti keliamus kokybės reikalavimus (pvz., <i>RHEL 7</i> išvesta iš <i>Fedora 19</i> ir <i>Fedora 20</i> versijų su keliomis modifikacijomis; pradėjus kurti naują pagrindinę RHEL versiją, užtrunkama apie metus laiko su bandymų etapais kaip <i>Alpha</i> ir <i>Beta </i>leidimais).</div>
<br />
<div class="MsoNormal" style="text-align: justify;">
Siekiant apriboti RHEL nuo laisvo platinimo, <i>Red Hat</i> kompanija panaudoja griežtus prekinio ženklo įstatymus, tačiau laikantis atvirojo kodo principų pateikia distribucijos išeities kodą viešai, iš kurio galima išvesti RHEL klonus pašalinus mokamus distribucijos komponentus kaip <i>Red Hat</i> prekinį ženklą (ką ir daro <i>CentOS, Scientific, Oracle Linux</i> bei kitų RHEL išvestinių plėtotojai).</div>
<br />
<div class="MsoNormal" style="text-align: justify;">
<b>RHEL lankstumui padidinti yra siūlomos <i>Server</i> ir <i>Desktop/Workstation</i> versijos:</b>
<br />
<ul>
<li><i><b>Server</b></i> – duomenų centrų galiūnas su visa serija serverinių sprendimų (virtualizacijos platformos, hibridiniai debesys (<i>hybrid cloud</i>), aukštas pereinamumas (<i>high availability</i>), ir kt.). Tai viena stabiliausių ir plačiausiai palaikoma (ypač aparatinės įrangos tiekėjų) Linux distribucija. RHEL užtikrina karinio lygio saugumo technologijas siekiant išvengti įsilaužimo ir apsaugoti duomenis. Platus failų sistemų palaikymas ir patikimas įrankių rinkinys atminties įrenginiams valdyti ir visai sistemai administruoti. RHEL turi puikų suderinamumą su <i>UNIX</i> ir <i>Microsoft Windows Server </i>sistemomis<i>.</i></li>
<li><i><b>Desktop/Workstation</b></i> – į vartotojus orientuota distribucija, pastatyta RHEL pagrindu, todėl yra ypač stabili ir saugi distribucija. Numatyta kartu su standartine asmeninio kompiuterio programine įranga kaip <i>Firefox, Evolution/Thunderbird, OpenOffice</i>, <i>Planner/TaskJuggle</i> ir kitomis<i>.</i> Ši versija labai panaši į bendruomenės plėtojamą <i>Fedora</i>, todėl bet kuris <i>Fedora</i> vartotojas turėtų jaustis kaip namie. Tiesa, programų pasirinkimas nėra toks platus kaip <i>Fedora</i> projekte bei visos programos senesnės versijos, siekiant užtikrinti kuo didesnį sistemos stabilumą. Antra vertus, jei reikia naujesnės programinės įrangos, galima pridėti trečiųjų šalių programų paketų saugyklų (<i>repositories</i>).</li>
</ul>
</div>
<br />
<div class="MsoNormal" style="text-align: justify; text-indent: 1.0cm;">
Numatytoji RHEL darbalaukio aplinka yra <i><b>GNOME</b></i>, bet galima įsidiegti ir alternatyvą – <i><b>KDE</b></i>. Abi darbalaukio aplinkos pasižymi panašiu išdėstymu ir funkcionalumu. Skirtingai nuo <i>Fedora</i> distribucijos, kurios pagrindu statoma sistema, RHEL naudoja darbalaukio aplinkas su intuityviu tradiciniu darbalaukio išdėstymu, atsisakydama modernių <i>GNOME Shell</i> sąsajų.<o:p></o:p></div>
<br />
<div class="separator" style="clear: both; text-align: center;">
</div>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiVsgxaYcWNlK_2dMUVRN8jAb1t3n2wfj6-4Kt3p1JozM_MYW12M3p4jwFiLr0KkJogwSD3eWcDnU-12V6PdeuyjqPCn9oTWnaXzaUm32vd0g3Fb7sbnrca96SkZcmFQExNGpRtz36mjis/s1600/rhel7.0desktop.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="398" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiVsgxaYcWNlK_2dMUVRN8jAb1t3n2wfj6-4Kt3p1JozM_MYW12M3p4jwFiLr0KkJogwSD3eWcDnU-12V6PdeuyjqPCn9oTWnaXzaUm32vd0g3Fb7sbnrca96SkZcmFQExNGpRtz36mjis/s1600/rhel7.0desktop.png" width="640" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;"><i>RHEL 7.0</i> su <i>GNOME 3</i> (<i>Classic Mode</i>) darbalaukio aplinka</td></tr>
</tbody></table>
<br />
<div class="MsoNormal" style="text-align: justify; text-indent: 1.0cm;">
Paketams tvarkyti RHEL naudoja savo sukurtą <i>RPM</i> programų paketų tvarkymo sistemą su
keliais aukštesnio lygio valdymo įrankiais – <i><b>YUM</b></i> (komandinės eilutės įrankis) ir <i><b>PackageKit</b></i> (<i>YUM </i>pagrindu
veikiantis<i> </i>grafinės sąsajos įrankis).<o:p></o:p></div>
<br />
<div class="MsoNormal" style="text-align: justify; text-indent: 1.0cm;">
RHEL turi ilgą vadinamąjį gyvybės ciklą (palaikymą), paskutinėms versijoms jis prailginamas net iki <b>13 metų</b>. Visas palaikymo ciklas dalijamas į keltą netolygių etapų su skirtingais palaikymo lygiais. Per pirmą etapą (pirmus 5,5 metus) <i>Red Hat</i> kompanija suteikia visišką palaikymą – programinės įrangos ir naujos techninės įrangos tvarkyklių atnaujinimai-pataisymai. Antroje ir trečioje (sekančius 4,5 metus) fazėje numatyti tik saugumo pataisymai, o parama naujai aparatinei įrangai palaipsniui mažėja. Per paskutinius trejus palaikymo ciklo metus (išplėstinio palaikymo etapas) suteikiami nuo kritinių klaidų ir su saugumu susiję pataisymai, tik tiems vartotojams, kurie papildomai moką mokestį už išplėstinį palaikymą.<o:p></o:p></div>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjLpPs7DIiH-_2lkTL_pas1NytwUoDIDByAiREgDAU5y6hLDCdaATgjh2fntQDc5WjsoACNchV47ocTicCLNAhUG61gwkjkyc8120UpoE7S7Ll1pzOQepnJTgPbi4kpTpBTicsP7fT0NPA/s1600/RHEL+support.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="241" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjLpPs7DIiH-_2lkTL_pas1NytwUoDIDByAiREgDAU5y6hLDCdaATgjh2fntQDc5WjsoACNchV47ocTicCLNAhUG61gwkjkyc8120UpoE7S7Ll1pzOQepnJTgPbi4kpTpBTicsP7fT0NPA/s1600/RHEL+support.png" width="640" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;"><b><span style="font-size: small;">RHEL distribucijos versijų leidimo ir palaikymo grafikas</span></b><br />
<i>šaltinis: wikipedia.org</i></td></tr>
</tbody></table>
<br />
<div class="MsoNormal" style="text-align: justify; text-indent: 1.0cm;">
Naujos RHEL versijos išleidžiamos
apytiksliai kas 3 metus, mažesni atnaujinimai (angl. <i>point releases</i>) išleidžiami kas 6–9 mėn. Tarpiniai mažesni
atnaujinimai paprastai neturi didelių naujovių, dažniausiai tai programinės
įrangos atnaujinimai ir kitokie smulkūs pataisymai, nors retkarčiais papildoma
ir naujesnės aparatinės įrangos tvarkyklėmis.<o:p></o:p></div>
<br />
<div class="MsoNormal" style="text-align: justify; text-indent: 1.0cm;">
Kaip ir pamatinė <i>Fedora</i>
projekto distribucija, RHEL naudoja modernią inicijavimo sistemą (<i>init system</i>) – <i><b>Systemd</b></i>. Kita moderni inicijavimo sistema <i>Upstart</i> atmetama dėl mažesnio funkcionalumo ir atvirojo kodo programų priklausomybės didėjimo nuo <i>Systemd</i> sistemos tarnybų.<o:p></o:p></div>
<br />
<div class="MsoNormal" style="text-align: justify; text-indent: 1.0cm;">
Architektūros palaikymas <i>Destop</i> versijoje nėra platus, palaikomos
tik <i>x86</i> ir <i>x86_64</i> procesorių architektūros, nes taip lengviau užtikrinti sistemų stabilumą. <i>Server</i> versijos palaikymas platesnis: <i>i386, x86_64, IA-64, PowerPC</i> ir <i>IBM System z</i> architektūros.</div>
<br />
<div class="MsoNormal" style="text-align: justify; text-indent: 1.0cm;">
<i>Red Hat</i> yra viena iš nedaugelio kompanijų, kuri plėtoja savo produktus atviro kodo principais ir sugeba būti pelną nešančia kompanija rinkoje, kurioje kitos, paprastai, sunkiai dirba be nuostolių. Šiandien <i>Red Hat</i> su savo <b>novatoriška</b> produktų linija, puikiomis klientų aptarnavimo paslaugomis bei kitomis iniciatyvomis kaip <i>„Red Hat Certified Engineer/</i><span style="text-indent: 1cm;"><i>System Administrator</i></span><i style="text-indent: 1cm;">“ </i><span style="text-indent: 1cm;">sertifikavimo programa yra didžiausia ir pelningiausia Linux kompanija.</span></div>
<br />
<hr align="left" size="1" width="100%" />
<br />
<h3 style="text-align: start;">
<span style="font-family: inherit; font-size: large;">
Linux distribucijų apžvalgos turinys su nuorodomis pateiktas apačioje:</span></h3>
<br />
<span style="font-family: inherit;"> • <a href="https://skarware.blogspot.com/2015/01/linux-distribuciju-apzvalga-ivadas.html" target="_blank">Įvadas</a></span>
<br />
<div>
<ol>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/debian-gnulinux-linux-distribuciju.html" target="_blank">Debian GNU/Linux</a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/ubuntu.html" target="_blank">Ubuntu</a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/linux-mint.html" target="_blank">Linux Mint</a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/slackware.html" target="_blank">Slackware</a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/opensuse.html" target="_blank">openSUSE</a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/suse-linux-enterprise.html" target="_blank">SUSE Linux Enterprise <i>(SLE)</i></a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/fedora.html" target="_blank">Fedora</a></span></li>
<li><span style="font-family: inherit;"><b style="background-color: #d9ead3;">Red Hat Enterprise Linux <i>(RHEL)</i></b></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/centos.html" target="_blank">CentOS</a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/arch-linux.html" target="_blank">Arch Linux</a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/gentoo-linux.html" target="_blank">Gentoo Linux</a></span></li>
</ol>
<span style="font-family: inherit;"> • <a href="https://skarware.blogspot.com/2015/01/linux-distribuciju-apzvalga-isvados.html" target="_blank">Išvados</a></span></div>
<br />
<hr align="left" size="1" width="50%" />
Martynashttp://www.blogger.com/profile/00471091754225207342noreply@blogger.com0tag:blogger.com,1999:blog-5426813891256937073.post-8950832097623379772015-01-20T16:07:00.001+02:002021-07-03T00:14:09.241+03:00Fedora<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgYDqz5wfclRiFu0iLpQo1wnpEh9PI3oo3lgYOJHXyLdyFJRDM-glZUNVJb60lAQBkBFRPSIU-F4W_rM0-Htdv-wOprAnwa0KXfVY4fDLFp5lmqLIUN-9HsSFcX4ongNxNmADBWLuQ4qsM/s1600/Fedora_logo_small.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgYDqz5wfclRiFu0iLpQo1wnpEh9PI3oo3lgYOJHXyLdyFJRDM-glZUNVJb60lAQBkBFRPSIU-F4W_rM0-Htdv-wOprAnwa0KXfVY4fDLFp5lmqLIUN-9HsSFcX4ongNxNmADBWLuQ4qsM/s1600/Fedora_logo_small.png" /></a></div>
<div class="MsoNormal" style="text-align: justify; text-indent: 1cm;">
Tai dar viena <b>avangardinė</b>, atvira ir laisvai platinama Linux distribucija, kuri plėtojama
savanorių bendruomenės ir remiama bei valdoma <i>Red Hat</i> kompanijos. Fedora dalinai naudojama kaip <i>Red Hat</i> kompanijos <b>bandymų stendas</b>, iš
kurios pagrindo plėtojama komercinė <i>Red
Hat Enterprise Linux</i> (RHEL) distribucija. Skirtingai nuo <i>openSUSE</i>, Fedora ne tik bandymų stendas
pagrindiniam rėmėjui, bet <b>visoms</b> Linux distribucijoms, kadangi labai aktyviai
integruoja naujausią laisvąją ir atvirojo kodo programinę įrangą bei kitus moderniausius Linux technologijų sprendimus <span style="text-indent: 1cm;">(</span><i style="text-indent: 1cm;"><b>bleeding edge</b></i><span style="text-indent: 1cm;">)</span><span style="text-indent: 1cm;">.</span></div>
<br />
<div class="MsoNormal" style="text-align: justify; text-indent: 1cm;">
Nors Fedora pirmą kartą išleista 2003 metais, jos šaknys
siekia 1994 metus, kuomet pasirodė pirmoji <i>Red
Hat</i> kompanijos Linux distribucija (<i><b>Red
Hat Linux 1.0</b></i>). Netrukus, 1997 metais, <i>Red
Hat</i> kompanija sukėlė perversmą Linux rinkoje, pristačiusi <i>RPM</i> – tuo metu pažangiausią paketų
tvarkymo sistemą. Tai padėjo iš <i>Slackware</i>
atimti labiausiai naudojamos distribucijos pasaulyje titulą.</div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="http://upload.wikimedia.org/wikipedia/commons/thumb/9/97/RedHatFamilyTree1210.svg/1900px-RedHatFamilyTree1210.svg.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" src="http://upload.wikimedia.org/wikipedia/commons/thumb/9/97/RedHatFamilyTree1210.svg/1900px-RedHatFamilyTree1210.svg.png" height="320" width="271" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;"><span style="font-size: small;"><b> Red Hat Linux išvestinės distribucijos</b></span><br />
šaltinis: <i><a href="http://futurist.se/gldt" target="_blank">futurist.se/gldt</a></i></td></tr>
</tbody></table>
<br />
<div class="MsoNormal" style="text-align: justify; text-indent: 1cm;">
Iš pradžių <i>Red Hat Linux</i> buvo plėtojama tik kompanijos viduje, o iš išorės gaudavo praktiškai tik aptiktų klaidų pranešimus. Viskas pasikeitė 2003 metais, kai kompanija pertvarkė savo produktų plėtojimo politiką. Buvo sukurtas <b>Fedora projektas</b>, kuris sujungė <i>Red Hat Linux</i> ir <i>Fedora Linux</i> projektus (iki tol <i>Fedora Linux</i> projektas savanoriškai tiekė gerai išbandytus trečiųjų šalių programinės įrangos paketus <i>Red Hat Linux</i> distribucijai). Įkurus naują Fedora<span style="font-family: "times new roman" , serif;"><span style="line-height: 24px;"><b>*</b></span></span> projektą <i>Red Hat Linux</i> distribucija buvo išskirta į <b>Fedora</b> ir <b>RHEL</b> (apie ją plačiau vėliau) operacines sistemas.</div>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjCcV1mLSo8V7CTsPlVU1RSHqoHmBMHiQQi9OzU3o7aem02jyGchomaWvLbbjut1qRyN7Yblr1eJ4TDEWVaM7vfjfyUsGKyhXMdbzTn6AEk06FhYsvtw7rCOHwN_ejZGpsxXCMUoxN1Lig/s1600/Red_Fedora.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="137" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjCcV1mLSo8V7CTsPlVU1RSHqoHmBMHiQQi9OzU3o7aem02jyGchomaWvLbbjut1qRyN7Yblr1eJ4TDEWVaM7vfjfyUsGKyhXMdbzTn6AEk06FhYsvtw7rCOHwN_ejZGpsxXCMUoxN1Lig/s1600/Red_Fedora.png" width="200" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">* Pats žodis <i>fedora </i>yra skrybėlės tipas, naudojamas <i>Red Hat</i> kompanijos emblemoje.</td></tr>
</tbody></table>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj2Wd7ej2oOgNxmmF3OR3XMRxQVOz13cUuXFMlt55cP8bwxpM8UEHPwh_UwcwYpIpf9oLeGuAn8nSN-l_waP3eh0jiGaoHuXzn02s5ZgouHYm-RqTLEWu9cTgrgVKjp7u5LIcUco6tUrHA/s1600/800px-Red_hat_logo.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="102" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj2Wd7ej2oOgNxmmF3OR3XMRxQVOz13cUuXFMlt55cP8bwxpM8UEHPwh_UwcwYpIpf9oLeGuAn8nSN-l_waP3eh0jiGaoHuXzn02s5ZgouHYm-RqTLEWu9cTgrgVKjp7u5LIcUco6tUrHA/s1600/800px-Red_hat_logo.png" width="320" /></a></div>
<div class="MsoNormal" style="text-align: justify; text-indent: 1cm;">
Pagal naują planą Fedora plėtojama <b>savanorių</b> bendruomenės, bet remiama
ir <b>valdoma</b> <i>Red Hat</i> kompanijos, kurios
pagrindu bus kuriama ir komercinė RHEL distribucija. Po šių reformų <i>Red Hat</i> greitai tapo didžiausia ir
pelningiausia Linux kompanija pasaulyje.</div>
<br />
<div class="MsoNormal" style="text-align: justify; text-indent: 1cm;">
Šiandien Fedora turi <b>klestinčią</b> bendruomenę, kuri nuo pat
pradžios sutelkia ypatingą dėmesį į laisvosios ir atvirojo kodo programinės
įrangos inovacijų plėtojimą, todėl yra viena <b>novatoriškiausių </b>Linux distribucijų,
ypač verslo įmonėms pageidaujamų savybių plėtojime.</div>
<table cellpadding="0" cellspacing="0" class="tr-caption-container" style="float: right; margin-left: 1em; text-align: right;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEglcZ3IkwiAyNImDJMWu9HMZFnwsKOnFss07jIMaP41OQFrPOkg41tpvrZzAsGRQNheMbmOWxD1awGb7FyagU9_kt9hquQZQgg91HVbLp6nLogLqi8tMI_ECs9yk1c0L__5jWYmMChHpRQ/s1600/Linus_Torvalds_2002.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="200" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEglcZ3IkwiAyNImDJMWu9HMZFnwsKOnFss07jIMaP41OQFrPOkg41tpvrZzAsGRQNheMbmOWxD1awGb7FyagU9_kt9hquQZQgg91HVbLp6nLogLqi8tMI_ECs9yk1c0L__5jWYmMChHpRQ/s200/Linus_Torvalds_2002.png" width="130" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;"><span style="font-size: small;"><b>Linus Torvalds</b></span><br />
<i>šaltinis: Linux Magazine, 2002</i></td><td class="tr-caption" style="text-align: center;"><br /></td></tr>
</tbody></table>
<br />
<div class="MsoNormal" style="text-align: justify; text-indent: 1cm;">
Fedora orientuota į Linux entuziastus, pats Linux branduolio autorius <b><i>Linus Torvalds</i></b> naudoja Fedora distribuciją visuose savo kompiuteriuose. Pasak kai kurių Linux vartotojų, Fedora operacinei sistemai trūksta labiau orientuotos strategijos į asmeninius kompiuterius. Visgi tai <i>Red Hat</i> valdomas projektas (naudojamas kaip bandymų stendas), kuri suinteresuota serverių sprendimų plėtojimu.</div>
<br />
<div class="MsoNormal" style="text-align: justify; text-indent: 1cm;">
Vis dėlto nuo naujausios, <i>Fedora 21,</i> versijos ši distribucija padidina savo lankstumą
siūlydama pasirinkti vieną iš trijų <b>Fedora atspalvių</b> (<i>Fedora flavours</i>) – <i>Workstation</i>
(nešiojamiems ir stalo kompiuteriams), <i>Server</i>
(serveriams) arba <i>Cloud</i> (debesų
sprendimams). Tarp šių variantų labiausiai skiriasi numatytų paketų rinkiniai,
kuriais siekiama patenkinti konkrečius vartotojų poreikius.</div>
<br />
<div class="MsoNormal" style="text-align: justify; text-indent: 1cm;">
Skirtingai nei <i>openSUSE</i>
ir <i>Ubuntu</i>, Fedora projektas
<b>nesistengia kurti savo</b> programinės įrangos. Vietoj to Fedora projektas
integruoja į Fedora distribuciją naujausią laisvąją ir atvirąją programinę
įrangą, jos labai nekeisdamas. Būtent todėl Fedora distribuciją galima laikyti
avangardine visoms Linux distribucijoms, o ne tik <i>Red Hat</i> kompanijos verslo produktui RHEL.</div>
<br />
<div class="MsoNormal" style="text-align: justify; text-indent: 1cm;">
Fedora tiekiama su standartine asmeninio kompiuterio programine
įranga (<i>LibreOffice</i>, <i>Firefox</i> bei kitomis). Programinė įranga
tiekiama kartu su Fedora dažniausiai yra limituota <i><b>GNOME</b></i> darbalaukio aplinkai su <i>GNOME
Shell</i> sąsaja. Nors tai vienintelė numatytoji darbalaukio aplinka, galima
įdiegti ir alternatyvias darbalaukio aplinkas – <i>KDE, Xfce, LXDE, MATE </i>ir <i>Cinnamon</i>,
arba rinktis jau pilnai paruoštus Fedora <b>„sukinius“</b> (<i>Fedora spins</i>) – Fedora versijos „pasiūtos“ konkretiems poreikiams
tenkinti, atrinkus specializuotą paketų rinkinį. Tai gali būti Fedora su
alternatyviomis darbalaukio aplinkomis arba programinės įrangos rinkiniu, kuris
orientuotas į tam tikrą vartotojų grupę – saugumo, inžinerijos, mokslinių
tyrimų, dizaino ar <i>3D</i> grafikos
specialistus.</div>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiXtW_5cOF8TnihV3ZVimL6A4Wcnz9ZWTYxdnrSICpyMsW0AF-YZCs4ITYwShfYER7kisuBapDhe9nFwwu_oEF2x17j4mJnBBMt5bqHIeJ_Gi4e_D4IZ3sj8H5Ju-NGUdNUo5nGDUVx8og/s1600/Captura_Fedora_21_(Gnome_Shell).png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="358" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiXtW_5cOF8TnihV3ZVimL6A4Wcnz9ZWTYxdnrSICpyMsW0AF-YZCs4ITYwShfYER7kisuBapDhe9nFwwu_oEF2x17j4mJnBBMt5bqHIeJ_Gi4e_D4IZ3sj8H5Ju-NGUdNUo5nGDUVx8og/s1600/Captura_Fedora_21_(Gnome_Shell).png" width="640" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;"><i>Fedora 21</i> su <i>GNOME 3.14 </i>darbalaukio aplinka (<i>Gnome Shell</i>)<br />
<br /></td></tr>
</tbody></table>
<div class="MsoNormal" style="text-align: justify; text-indent: 1cm;">
Fedora naudoja <i>RPM</i>
programų paketų tvarkymo sistemą (<i>Red Hat
Linux</i> palikimas) su keliais aukštesnio lygio valdymo įrankiais – <b><i>YUM</i> </b>(komandinės eilutės įrankis) ir <i><b>GNOME Software</b></i> (<i>YUM </i>pagrindu veikiantis<i> </i>grafinės
sąsajos įrankis). <i>YUM</i> įrankį paprasta
naudoti, jis kaip ir <i>APT</i> (Debian
paketų tvarkyklės įrankis) sugeba išspręsti paketų priklausomybes, tačiau nėra
toks funkcionalus ir greitas bei turi mažesnį sukompiliuotų programų paketų
skaičių interneto
saugyklose (<i>repositories</i>).</div>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi2bkoC0BAFK8j5WeVkio8hvQUaLEPzY8vzs11WTHKdj_kz3hmQfWIkqDKroJSZIXRfZZxJNGmRG0lUH-JtFpWRqhkl2YFpP7sjfjNLEpl2w6yy3S51b63ipFMpVWOaJWWlqdkJZd3i0A8/s1600/GNOME_Software_3.10.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi2bkoC0BAFK8j5WeVkio8hvQUaLEPzY8vzs11WTHKdj_kz3hmQfWIkqDKroJSZIXRfZZxJNGmRG0lUH-JtFpWRqhkl2YFpP7sjfjNLEpl2w6yy3S51b63ipFMpVWOaJWWlqdkJZd3i0A8/s1600/GNOME_Software_3.10.png" width="310" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;"><i>GNOME Software 3.10</i> - paketų tvarkyklė<br />
<br /></td></tr>
</tbody></table>
<div class="MsoNormal" style="text-align: justify; text-indent: 1cm;">
Nauja versija X išleidžiama apytiksliai <b>kas 6 mėnesius</b> (kaip <i>Ubuntu</i> ir <i>Mint</i>), kuri
turi ganėtinai trumpą palaikymo ciklą – vienas mėnuo po X+2 versijos išleidimo,
o tai sudaro apie 13 mėn. Tai, žinoma, įgalina Fedora plėtotojus daugiau laiko
praleisti prie inovacinių sprendimų, nei rūpintis buvusių versijų vientisumu.
Pereiti prie naujos versijos galima panaudojant specialų įrankį <i>FedUp </i>(<i>FEDora UPgrader</i>).
Šis įrankis pakankamai naujas, tad vertėtų prieš juo naudojantis įsitikinti,
jog turite paskutinę <i>FedUp</i> kliento versiją ar net peržiūrėti paskutinių klaidų sąrašą <i>FedUp</i> registruose.</div>
<br />
<div class="MsoNormal" style="text-align: justify; text-indent: 1cm;">
Avangardinei Linux distribucijai šiandien yra tik vienas praktiškas pasirinkimas tarp modernių inicijavimo sistemų (<i>init system</i>) – <i><b>Systemd</b></i>. Kitos modernios inicijavimo sistemos atmetamos dėl mažesnio
funkcionalumo ir atvirojo kodo programų priklausomybės didėjimo nuo <i>Systemd</i> tarnybų.</div>
<br />
<div style="text-align: justify;">
<b>Procesorių architektūros palaikymas Fedora distribucijoje išskiriamas į du lygmenis:
</b></div>
<ul>
<li style="text-align: justify;"><b>Pirminis</b>: Šios architektūros (<i><b>i686, x86-64</b></i> ir <i><b>ARM</b></i>) dažniausiai sutinkamos tarp vartotojų, todėl jų palaikymas yra svarbiausias ir būtinas norint programos paketą įtraukti į Fedora projekto programų saugyklas (<i>repositories</i>). Paprastai sakant, Fedora atidės naujos versijos leidimą, jei programų paketai šioms architektūroms nesikompiliuos tinkamai.</li>
</ul>
<div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjqBOWgCp26-TqK4Xldz83pHMhuxXsF6NfmfILIX9bTUF9j2u1CuwMtLsBFmxRUB6iqKsFJsTnsN4VKAgIMlc08qtJsbj9P9R5SQ6aJpwO6wemJjcVFuydDfc2xaL7NBkS0raPXofWtsx8/s1600/arm-amd-intel+longer.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="104" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjqBOWgCp26-TqK4Xldz83pHMhuxXsF6NfmfILIX9bTUF9j2u1CuwMtLsBFmxRUB6iqKsFJsTnsN4VKAgIMlc08qtJsbj9P9R5SQ6aJpwO6wemJjcVFuydDfc2xaL7NBkS0raPXofWtsx8/s1600/arm-amd-intel+longer.png" width="320" /></a></div>
</div>
<ul>
<li style="text-align: justify;"><b>Antrinis</b>: Šios architektūros (<i>PowerPC 32/64-bit, s390x</i> ir <i>ARM AArch64</i>) ne taip dažnai sutinkamos, todėl Fedora projektas jas palaiko tik dalinai. Jei programą pavyksta sukompiliuoti pirminėms architektūroms, ji įtraukiama į Fedora projektą <b>nepriklausomai</b> nuo to, ar ją pavyko sukompiliuoti ir antrinėse architektūrose.</li>
</ul>
<br />
<hr align="left" size="1" width="100%" />
<br />
<h3 style="text-align: start;">
<span style="font-family: inherit; font-size: large;">
Linux distribucijų apžvalgos turinys su nuorodomis pateiktas apačioje:</span></h3>
<br />
<span style="font-family: inherit;"> • <a href="https://skarware.blogspot.com/2015/01/linux-distribuciju-apzvalga-ivadas.html" target="_blank">Įvadas</a></span>
<br />
<div>
<ol>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/debian-gnulinux-linux-distribuciju.html" target="_blank">Debian GNU/Linux</a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/ubuntu.html" target="_blank">Ubuntu</a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/linux-mint.html" target="_blank">Linux Mint</a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/slackware.html" target="_blank">Slackware</a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/opensuse.html" target="_blank">openSUSE</a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/suse-linux-enterprise.html" target="_blank">SUSE Linux Enterprise <i>(SLE)</i></a></span></li>
<li><span style="font-family: inherit;"><b style="background-color: #d9ead3;">Fedora</b></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/red-hat-enterprise-linux.html" target="_blank">Red Hat Enterprise Linux <i>(RHEL)</i></a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/centos.html" target="_blank">CentOS</a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/arch-linux.html" target="_blank">Arch Linux</a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/gentoo-linux.html" target="_blank">Gentoo Linux</a></span></li>
</ol>
<span style="font-family: inherit;"> • <a href="https://skarware.blogspot.com/2015/01/linux-distribuciju-apzvalga-isvados.html" target="_blank">Išvados</a></span></div>
<br />
<hr align="left" size="1" width="50%" />
Martynashttp://www.blogger.com/profile/00471091754225207342noreply@blogger.com0tag:blogger.com,1999:blog-5426813891256937073.post-39633925999248088232015-01-19T09:22:00.001+02:002021-07-03T00:14:28.339+03:00SUSE Linux Enterprise<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEifuq8CR4eijs35gMs29DOnMuxmuCo6LQ3R2y0zGj6gq9IDVERL-jRDBcQ2yGMBu3dCAfas2uBOYwPe2rtSLh9jF1bmdpq8oAyuulALxP-BC359jBK2oWj6_SP0zrDvZF8ES4dRGA4xXqY/s1600/Suse_logo_w-tag_color.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"><img border="0" height="111" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEifuq8CR4eijs35gMs29DOnMuxmuCo6LQ3R2y0zGj6gq9IDVERL-jRDBcQ2yGMBu3dCAfas2uBOYwPe2rtSLh9jF1bmdpq8oAyuulALxP-BC359jBK2oWj6_SP0zrDvZF8ES4dRGA4xXqY/s1600/Suse_logo_w-tag_color.png" width="200" /></a></div>
<div class="MsoNormal" style="text-indent: 1.0cm;">
<div style="text-align: justify;">
Po <i>Novell</i> kompanijos pertvarkymo 2005 metais SUSE Linux distribucijos išskirtos į du
prekinius ženklus – <b>openSUSE</b> ir <b>SUSE Linux Enterprise</b>. Apie <i>OpenSUSE</i> jau
buvo rašyta, tai nemokama laisvai platinama Linux distribucija, plėtojama savanorių
bendruomenės ir remiama SUSE kompanijos bei keleto kitų šalių (kompanijų ir
asmenų).<o:p></o:p></div>
<div style="text-align: justify;">
<br /></div>
</div>
<div class="MsoNormal" style="text-indent: 1.0cm;">
<br /></div>
<div class="MsoNormal" style="text-indent: 1.0cm;">
<div style="text-align: justify;">
<b>SUSE Linux Enterprise</b> (<i>Desktop</i> ir <i>Server</i>) yra SUSE kompanijos <b>komercinis</b>, gerai išbandytas ir
sertifikuotas atviro kodo produktas, skirtas verslo įmonėmis. SUSE naudojasi
gerai išbandytais paketais iš <i>openSUSE</i>
Linux projekto kaip pagrindu kuriant Enterprise distribuciją (ji turi mažiau
sukompiliuotų programų paketų už <i>openSUSE</i>,
ir jie labiau <b>orientuoti verslui</b>, nei namų vartotojui). <o:p></o:p></div>
</div>
<div class="MsoNormal" style="text-indent: 1.0cm;">
<div style="text-align: justify;">
<br /></div>
</div>
<div class="MsoNormal" style="text-indent: 1.0cm;">
<div style="text-align: justify;">
Skirtingai nuo <i>openSUSE</i>, naujos SUSE Linux Enterprise
versijos išleidžiamos daug rečiau, o tai leidžia pasiūlyti efektyvesnį distribucijų
palaikymą. Naujos pagrindinės versijos išleidžiamos kas 24–36 mėnesius, tuo
tarpu jų pataisoms kas 9–18 mėn. išleidžiami mažesni atnaujinimai (<i>service packs</i>). Kadangi Enterprise
distribucijos skirtos verslo įmonėms, jos turi ilgesnį palaikymo ciklą (7
metus, kurį galima pratęsti <b>iki 10 metų</b>), tai garantuoja stabilumą, techninį
palaikymą, taip pat suteikia sertifikavimą iš nepriklausomų techninės ir
programinės įrangos tiekėjų. SUSE Enterprise Linux yra sertifikuota įvairioms
verslo įmonėse naudojamoms taikomosioms programoms ir kitokiems
specializuotiems komercinių įmonių sprendimams.<o:p></o:p></div>
</div>
<div class="MsoNormal" style="text-indent: 1.0cm;">
<div style="text-align: justify;">
<br /></div>
</div>
<div class="MsoNormal" style="text-indent: 1.0cm;">
<div style="text-align: justify;">
Yra dvi SUSE Enterprise Linux
distribucijos - <i><b>SUSE Linux Enterprise
Server</b></i> (<b>SLES</b>) ir <i><b>SUSE Linux Enterprise Desktop</b></i> (<b>SLED</b>). Pirmoji skirta serverių
sprendimams, o antroji stalo/darbo kompiuteriams. Kadangi SUSE Linux Enterprise
yra <i>openSUSE</i> išvestinė, ji paveldi
paketų tvarkyklę <i>ZYpp</i>, inicijavimo
sistemą<i> Systemd</i>, įrankius <i>YaST, Zypper, Snapper</i> bei daug kitų savybių.<o:p></o:p></div>
</div>
<div class="MsoNormal" style="text-indent: 1.0cm;">
<br /></div>
<div align="center" class="MsoNormal" style="text-align: center;">
<b><i><span style="font-size: large;">SUSE Linux Enterprise Desktop
(SLED)</span><o:p></o:p></i></b></div>
<br />
<div class="MsoNormal" style="text-indent: 1.0cm;">
<div style="text-align: justify;">
Linux asmeniniuose ir darbo kompiuteriuose
įsitvirtinti bando seniai, pirmiausiai ji stengėsi patenkinti grafikos (CAD),
elektronikos (EDA) ir programinės įrangos kūrėjų poreikius bei specializuotų
sistemų sprendimus (duomenų įvedimo darbo stotys, e. kioskai, ir pan.).</div>
</div>
<div class="MsoNormal" style="text-indent: 1.0cm;">
<div style="text-align: justify;">
Nuo <i>SLED 10</i> tuometinė savininkė <i>Novell</i>
padidino dėmesį į biuro darbuotojų poreikius ir nutarė juos patenkinti,
pateikdama SLED kaip konkurentą <i>MS
Windows</i>. Tikslui pasiekti <i>Novell</i> išplėtojo
SLED komponentus, siekiant puikaus suderinamumo su esamomis verslo infrastruktūromis
kaip <i>Microsoft Office</i> failais, <i>Microsoft Active Directory</i> ir <i>Microsoft Exchange Server</i> sistemomis.</div>
</div>
<div class="MsoNormal" style="text-indent: 1.0cm;">
<div style="text-align: justify;">
Į SLED įtraukta <i>Evolution</i> (palaiko <i>Microsoft Exchange</i>), <i>Mozilla</i>,
<i>Pidgin</i>, <i>F-spot</i>, <i>Banshee</i>, <i>LibreOffice</i> ir daug kitų populiarių
atviro kodo programų paketų kartu su patentuota programine įranga (<i>Adobe Reader, RealPlayer</i>, ir kt.).</div>
</div>
<div class="MsoNormal" style="text-indent: 1.0cm;">
<div style="text-align: justify;">
Darbalaukio aplinką galima rinktis
tarp <b>KDE</b> ir <b>GNOME</b>. Palaikoma procesorių architektūra nėra plati – <i>i586</i>, <i>x86_64</i> ir<i> PowerPC</i>, bet to užtenka stalo ir
nešiojamų kompiuterio poreikiams.<o:p></o:p></div>
</div>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg5iEMcs4wqKzlGAE2KUwQP9shxktav4IlgBc9QuGBSNMsWPpVU15PIJu2MlYUmR44LgLeN1KtaV6HukNPfJr1z4r3izumy3eXyFWIvGbVvXD9-xMH258Nr42l77DNgFDi0WcnCCG-5Bho/s1600/SLED11_kde_desktop_menus.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="480" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg5iEMcs4wqKzlGAE2KUwQP9shxktav4IlgBc9QuGBSNMsWPpVU15PIJu2MlYUmR44LgLeN1KtaV6HukNPfJr1z4r3izumy3eXyFWIvGbVvXD9-xMH258Nr42l77DNgFDi0WcnCCG-5Bho/s1600/SLED11_kde_desktop_menus.png" width="640" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">SUSE Linux Enterprise Desktop 11 su <i>KDE</i> darbalaukio aplinka</td></tr>
</tbody></table>
<br />
<br />
<div align="center" class="MsoNormal" style="text-align: center;">
<b><i><span style="font-size: large;">SUSE Linux Enterprise Server
(SLES)</span><o:p></o:p></i></b></div>
<br />
<div class="MsoNormal" style="text-indent: 1.0cm;">
<div style="text-align: justify;">
SLES sukurta serveriams,
didiesiems kompiuteriams (<i>mainframe</i>)
ir darbo stotims, puikiai susitvarko su dideliais krūviais ir turi gerą
techninės įrangos tiekėjų palaikymą. SLES – atvira, plačiai pritaikoma sistema,
kuri tiekiama kartu su <i><b>Xen</b>, <b>KVM</b></i> ir <i><b>QEMU</b></i> virtualizacijos platformų
palaikymu.</div>
</div>
<div class="MsoNormal" style="text-indent: 1.0cm;">
<div style="text-align: justify;">
Taip pat turi <b>gerą suderinamumą</b> su
<i>Windows</i> ir kitomis platformomis, o
tai užtikrina saugius pamatus plataus spektro duomenų saugojimo ar kitokiems IT
sprendimams.</div>
</div>
<div class="MsoNormal" style="text-indent: 1.0cm;">
<div style="text-align: justify;">
Kaip ir <i>Desktop</i> versijoje, darbalaukio aplinką galima rinktis tarp <i>KDE</i> ir <i>GNOME</i>. Palaikoma procesorių architektūra apima populiariausius
serverių sprendimus – <i>i586, x86_64, ia64, ppc</i> ir<i> s390x</i>. <o:p></o:p></div>
</div>
<div class="MsoNormal" style="text-indent: 1.0cm;">
<div style="text-align: justify;">
Garsusis IBM firmos
dirbtinis intelektas <i><b>Watson</b></i> sukurtas
sistemoje su SLES distribucija.</div>
</div>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg7B5VapmCCUWI8kzYoyusorD5_YR7Cjbtc7unOV67eTasz5SuFcl9bkaYqM4sYBsQCmhFOIgIVEVMVWHaUVUmbcE0F62mB4Bnftao25qN6bjiq_86RhkKg3DopdXVX-_Y_MDJ7ZRznOQE/s1600/SLED11_gnome_desktop.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="480" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg7B5VapmCCUWI8kzYoyusorD5_YR7Cjbtc7unOV67eTasz5SuFcl9bkaYqM4sYBsQCmhFOIgIVEVMVWHaUVUmbcE0F62mB4Bnftao25qN6bjiq_86RhkKg3DopdXVX-_Y_MDJ7ZRznOQE/s1600/SLED11_gnome_desktop.png" width="640" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">SUSE Linux Enterprise Desktop 11 su <i>GNOME</i> darbalaukio aplinka</td></tr>
</tbody></table>
<br />
<hr align="left" size="1" width="100%" />
<br />
<h3 style="text-align: start;">
<span style="font-family: inherit; font-size: large;">
Linux distribucijų apžvalgos turinys su nuorodomis pateiktas apačioje:</span></h3>
<br />
<span style="font-family: inherit;"> • <a href="https://skarware.blogspot.com/2015/01/linux-distribuciju-apzvalga-ivadas.html" target="_blank">Įvadas</a></span>
<br />
<div>
<ol>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/debian-gnulinux-linux-distribuciju.html" target="_blank">Debian GNU/Linux</a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/ubuntu.html" target="_blank">Ubuntu</a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/linux-mint.html" target="_blank">Linux Mint</a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/slackware.html" target="_blank">Slackware</a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/opensuse.html" target="_blank">openSUSE</a></span></li>
<li><span style="font-family: inherit;"><b style="background-color: #d9ead3;">SUSE Linux Enterprise <i>(SLE)</i></b></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/fedora.html" target="_blank">Fedora</a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/red-hat-enterprise-linux.html" target="_blank">Red Hat Enterprise Linux <i>(RHEL)</i></a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/centos.html" target="_blank">CentOS</a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/arch-linux.html" target="_blank">Arch Linux</a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/gentoo-linux.html" target="_blank">Gentoo Linux</a></span></li>
</ol>
<span style="font-family: inherit;"> • <a href="https://skarware.blogspot.com/2015/01/linux-distribuciju-apzvalga-isvados.html" target="_blank">Išvados</a></span></div>
<br />
<hr align="left" size="1" width="50%" />
Martynashttp://www.blogger.com/profile/00471091754225207342noreply@blogger.com0tag:blogger.com,1999:blog-5426813891256937073.post-82190256975102284672015-01-18T17:26:00.000+02:002016-10-23T20:40:52.736+03:00openSUSE<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiPxuJ-nIspAS4mICPKm1h_RVpI4SDtoW3eUpP6P4r2pxaJWlYBctYdMcSIYb_pHYeD3hKpMIx5u6zxg7bcigNFuICYvIxmRqKuZnToFmBuaw03kaPFVkfNRBp7GaDEo_TwkVbjPORVyqo/s1600/OpenSUSE_Logo.svg.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiPxuJ-nIspAS4mICPKm1h_RVpI4SDtoW3eUpP6P4r2pxaJWlYBctYdMcSIYb_pHYeD3hKpMIx5u6zxg7bcigNFuICYvIxmRqKuZnToFmBuaw03kaPFVkfNRBp7GaDEo_TwkVbjPORVyqo/s1600/OpenSUSE_Logo.svg.png" height="128" width="200" /></a></div>
<div class="MsoNormal" style="text-indent: 1.0cm;">
<div style="text-align: justify;">
SUSE kompanija viena <b>seniausių komercinių</b> Linux distribucijų
plėtotoja, įkurta Vokietijoje 1992 metais kaip konsultacinė įmonė, tiekianti
įvairią techninę pagalbą <i>Unix</i> tipo sistemoms. SUSE yra akronimas, sudarytas iš
pirminio įmonės pavadinimo „<b><i>S</i></b><i>oftware <b>u</b>nd <b>S</b>ystem-<b>E</b>ntwicklung“
</i>(išvertus reiškia<i> „Programinės
įrangos ir sistemų plėtojimas“</i>). Iš
pradžių SUSE platino redaguotą ir papildytą <i>Slackware</i> distribuciją su labai
kokybiška dokumentacija bei siūlė techninio palaikymo paslaugas. Netrukus, 1996
metais, SUSE sukūrė savo Linux distribuciją – <i>S.u.S.E Linux</i>. Šiandien SUSE turi daugiau <i>Red Hat</i> Linux
distribucijos savybių (<i>RPM</i> paketai ir failų sistemos struktūra), negu <i>Slackware</i>
ar <i>Jurix</i>, kurios buvo atspirties taškas šios kompanijos produktams ir
paslaugoms iki 1998 metų.</div>
</div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhGkOvf5FDSsuSg_yD32duJRbAuMUtlNhPMNFOZnfavTrfYIqtFjIQxpEFaCfaaf2MJVct2exNDOeSmgCfhD3FNPtMUf0jgggEK3PVfUE4jJzxY4jacwuLwns3o7crImdQSNe6T91SyTpI/s1600/Novell_Logo.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhGkOvf5FDSsuSg_yD32duJRbAuMUtlNhPMNFOZnfavTrfYIqtFjIQxpEFaCfaaf2MJVct2exNDOeSmgCfhD3FNPtMUf0jgggEK3PVfUE4jJzxY4jacwuLwns3o7crImdQSNe6T91SyTpI/s1600/Novell_Logo.png" height="53" width="200" /></a></div>
<div style="text-align: justify; text-indent: 1.0cm;">
SUSE kompaniją 2003 m. įsigijo <i>Novell</i>, kuri 2005 metais nusprendė reformuoti SUSE distribucijų vystymą atveriant SUSE Linux plėtojimą už kompanijos ribų. Tam ji įkūrė <b>openSUSE projektą</b>, kuris atsakingas už openSUSE sistemos komponentų plėtojimą ir priežiūrą. Nors SUSE yra verslo įmonė, pati SUSE Linux distribucija visada buvo atviro kodo dalis, tik visas plėtojimo darbas buvo atliekamas SUSE kompanijos ribose. Tuo tarpu openSUSE projektas plėtojimo procesą atvėrė bendruomenei. Netrukus asmeniniams kompiuteriams skirtos „<i>SuSE Linux Personal</i>“ distribucijos vystymas buvo nutrauktas, o „<i>SuSE Linux Professional</i>“ buvo pervadinta į „<i>SUSE Linux</i>“, kuri plėtojama bendruomenės ir remiama SUSE kompanijos. Galiausiai, norint aiškiai pabrėžti distribucijos atvirumą bei laisvumą, dar po metų „<i>SUSE Linux</i>“ pervadinta į „<i>openSUSE</i>“.</div>
<br />
<div style="text-align: justify; text-indent: 1.0cm;">
Po Novell pertvarkymo SUSE Linux distribucijos išskirtos į
du prekinius ženklus – <b>openSUSE</b> ir <b>SUSE Linux Enterprise</b>. OpenSUSE yra
<b>nemokama</b>, plėtojama bendruomenės ir remiama SUSE kompanijos. SUSE Linux
Enterprise yra SUSE įmonės <b>komercinis </b>produktas (apie jį plačiau vėliau).</div>
<div class="MsoNormal" style="text-indent: 1.0cm;">
<div style="text-align: justify;">
<o:p></o:p></div>
<div style="text-align: justify;">
<br /></div>
</div>
<div class="MsoNormal" style="text-indent: 1.0cm;">
<div style="text-align: justify;">
<b>OpenSUSE</b> – <b>avangardinė</b>, atvira ir laisvai platinama Linux distribucija, kurią SUSE kompanija naudoja kaip <b>bandymų stendą</b> savo komerciniams produktams plėtoti. OpenSUSE apima kai
kuriuos naujausius Linux technologijų sprendimus ir yra skirta asmeninio
kompiuterio vartotojams, Linux entuziastams. Kita vertus, sistema yra
pakankamai lanksti, ją galima paversti ir į pašto ar žiniatinklio serverį. Ją
ypač lengva įdiegti ir naudoti nepatyrusiam Linux vartotojui. Dėl savo grafinės
terpės įrankių serijos openSUSE sistema yra viena lengviausiai administruojamų
tarp Linux distribucijų. OpenSUSE išsiskiria ir savo nupoliruotomis darbalaukio
terpėmis (<i><b>KDE</b></i> ir <i><b>GNOME</b></i>), tačiau dėl to sistema gana „sunki“ kompiuterio resursų
atžvilgiu. <span style="text-indent: 1cm;">Taip pat openSUSE turi puikią dokumentaciją ir draugišką savanorių bendruomenę pagalbos klausimais bei gali pasigirti didžiausiu sukompiliuotų programų paketų pasirinkimu tarp Linux distribucijų. Sistema numatyta kartu su <i>FireFox, LibreOffice</i> ir kitomis svarbiausiomis asmeninio kompiuterio programomis.</span></div>
</div>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiKyjdvv1L3oX6agiHjZViPvMnB30bCOSORaXymL02BI0tTh8J2TjqNvUahRoWGJuyQ_kqaW3aj_jiL4TDOW7wSF-id1Hp9gictUqow26N2LW3Vk_KWgJ_EX9v17eEkE_ksv1kRmU95j5A/s1600/Start_menu_KDE_13.1.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiKyjdvv1L3oX6agiHjZViPvMnB30bCOSORaXymL02BI0tTh8J2TjqNvUahRoWGJuyQ_kqaW3aj_jiL4TDOW7wSF-id1Hp9gictUqow26N2LW3Vk_KWgJ_EX9v17eEkE_ksv1kRmU95j5A/s1600/Start_menu_KDE_13.1.png" height="358" width="640" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">OpenSUSE 13.1 su <i>KDE</i> grafine darbalaukio aplinka<br />
<br /></td></tr>
</tbody></table>
<div class="MsoNormal" style="text-indent: 1.0cm;">
<div style="text-align: justify;">
Kaip ir daugumoje Linux distribucijų, openSUSE diegimo metu vartotojas gali pasirinkti grafinę darbalaukio aplinką (<i>KDE, GNOME, LXDE, Enlightenment 19, MATE</i> ar <i>Xfce</i>) arba tradicinę komandinės eilutės sąsają. SUSE sistemoje rekomenduojama naudoti <i><b>KDE</b></i> arba <i><b>GNOME</b></i> darbalaukio aplinkas, siekiant didžiausio numatyto sistemos funkcionalumo ir produktyvumo (SUSE yra didžiausia <i>KDE</i> darbalaukio aplinkos propaguotoja ir plėtotoja).</div>
</div>
<div class="MsoNormal" style="text-indent: 1.0cm;">
<div style="text-align: justify;">
<br /></div>
</div>
<div class="MsoNormal">
<div style="text-align: justify;">
<b>OpenSUSE
projektas plėtoja ir savo unikalius įrankius sistemos valdymui ir tvarkymui:</b><o:p></o:p></div>
</div>
<div class="MsoNormal">
<div style="text-align: justify;">
<ul>
<li><i><b>YaST</b></i> valdymo centras – viskas
viename, aukštos kokybės administracinis įrankis ir programų paketų tvarkyklė. <i>YaST</i> yra grafinės aplinkos įrankis,
leidžiantis konfigūruoti beveik kiekvieną sistemos aspektą (nuo išvaizdos iki
techninės įrangos).</li>
<li><i><b>AutoYaST</b></i> – priemonė skirta sistemos
diegimui automatizuoti (be vartotojo įsikišimo).</li>
<li><i><b>WebYaST</b></i> – naršyklės pagrindu veikianti <i>YaST</i>
versija.</li>
<li><b><i>ZYpp</i> </b>– SUSE (ir jos pagrindu sukurtų
distribucijų) programų paketų tvarkymo sistema-variklis, dirbantis su <i>.RPM</i> programų paketais, kurie yra Red
Hat distribucijos kilmės. <i>ZYpp</i> yra
profesionalus įrankis, kuris labai efektyviai sprendžia programų paketų
priklausomybes nuo kitų paketų, turi patogų valdymą iš komandinės eilutės
sąsajos – <i><b>Zypper</b></i>, bei grafinės
vartotojo sąsajos – <b><i>YaST</i> </b>valdymo
centras.</li>
<li><b><i>Open Build Service</i> </b>– atviro kodo distribucijos
plėtojimo platforma, suteikianti patogius įrankius. Ji skatina programų
plėtotojus rengti programų paketus kelioms Linux distribucijoms iš karto,
supaprastindama visą programų pakavimo procesą.</li>
<li><i><b>Snapper </b></i>– Vienas naujausių ir
populiariausių openSUSE įrankių. <i>Snapper</i>
išnaudoja naujos kartos failų sistemos <b><i>Btrfs</i>
</b>savybes ir įgalina vartotoją kurti failų sistemos <b>momentines kopijas</b> (snapshots) bei jas vėliau palyginti ir esant poreikiui sistemą gražinti į buvusį <b>momentinį būvį</b> (snapshot). Paprastai kalbant, <i>Snapper</i>
leidžia sistemos vartotojams peržiūrėti senesnes failų versijas ir atgręžti jų
pakeitimus.</li>
</ul>
<o:p></o:p></div>
</div>
<div class="MsoNormal">
<div style="text-align: justify;">
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhSSLyZvYTqrIGkI-OpWsvhmOL_Y1rAaSmWZS_1D1QOCbw2RQZ-TDxm1Q-o5nw2mVBntJgd0fPfk4smAAaSwK5NbJP1ns8p2NnIW177OJlY7E9zhJxnzBEHlcQ3_ztADslJDz4SoNt5BWQ/s1600/OpenSUSE+13.2+KDE+-+YaSt+Control+Center.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhSSLyZvYTqrIGkI-OpWsvhmOL_Y1rAaSmWZS_1D1QOCbw2RQZ-TDxm1Q-o5nw2mVBntJgd0fPfk4smAAaSwK5NbJP1ns8p2NnIW177OJlY7E9zhJxnzBEHlcQ3_ztADslJDz4SoNt5BWQ/s1600/OpenSUSE+13.2+KDE+-+YaSt+Control+Center.png" height="345" width="640" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">OpenSUSE 13.2 <i>KDE</i> - <i>YaSt</i> valdymo centras<i><br /></i></td></tr>
</tbody></table>
<br />
<b>OpenSUSE projektas plėtoja keletą skirtingų openSUSE distribucijos atšakų:</b><br />
<ul>
<li><b><i>openSUSE</i></b> (stable) – stabili openSUSE distribucijos atšaka, rekomenduojama naujiems Linux vartotojams ar tiems kurie tiesiog nori stabilios sistemos.</li>
<li><b><i>openSUSE Factory</i></b> – bandomoji, nuolatinio plėtojimo atšaka, iš kurios reguliariai imamos sistemos <b>momentinės kopijos</b> (<i>snapshots</i>) pagrindinei stabiliai openSUSE atšakai išgauti. Iš čia taip pat imami stabilizuotų naujausių programų (bleeding edge) paketai Tumbleweed atšakai.</li>
<li><b><i>openSUSE</i> Tumbleweed</b> – pusiau-tęstinio leidimo (<i><b>rolling-release</b></i>) modeliu vystoma versija, kurioje naujausios stabilios versijos paketai yra prieinami, kai tik jie stabilizuojami <i>Factory</i> atšakoje. <i>Tumbleweed</i> atšaka rekomenduojama Linux entuziastams ir įgudusiems vartotojams, nes tai nėra labai stabili sistema.</li>
</ul>
</div>
</div>
<div class="MsoNormal" style="text-indent: 1.0cm;">
<div style="text-align: justify;">
Paskutiniais, 2014 metais, openSUSE projekte įvyko nemažai pokyčių. Buvo pakeistas-optimizuotas openSUSE distribucijos vystymo procesas ir nuo liepos mėnesio Factory atšaka tapo nepriklausoma bei stabilesne distribucija-atšaka, pilnai plėtojama tęstinio leidimo (<i>rolling-release</i>) modeliu. Nuo gruodžio mėnesio <i>Factory </i>ir <i>Tumbleweed </i>atšakos buvo sujungtos į vieną, po <i>Tumbleweed </i>pavadinimu, kaip visiška tęstinio leidimo (<i>rolling-release</i>) modeliu vystoma versija. Tai turėtų padidinti openSUSE konkurencingumą tarp tęstinio leidimo distribucijų.</div>
</div>
<br />
<div class="MsoNormal" style="text-indent: 1.0cm;">
<div style="text-align: justify;">
OpenSUSE turi ganėtinai trumpą plėtojimų ciklą, naujos versijos teoriškai pasirodo kas aštuonis mėnesius, o palaikymas nuo kritinių
klaidų suteikiamas 18 mėnesių nuo versijos išleidimo. Apytiksliai kas ketvirta
versija gauna papildomą 18 mėn. palaikymą<b> <i>Evergreen</i></b>
– bendruomenės pastangos prailginti sistemos palaikymą dar 18 mėn. pasibaigus
reguliariajam palaikymui. OpenSUSE distribucija visiškai nemokama ir laisvai
prieinama parsisiuntimui internetu nuo pat naujos versijos išleidimo pradžios
(prieš openSUSE projektą, <i><b>SUSE Linux</b></i>
nauja versija turėjo 2 mėn. delsą neapmokestintam parsisiuntimui internetu).<o:p></o:p></div>
<div style="text-align: justify;">
</div>
</div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiK2CGUbkgrzCUprfrXD9YB9k4p30DjMdijkM3RVkMves5_UASrMO2Vfn5y-FQ54eZOlrhiIJe5U4VgS6fsKmkr2wg-tMAY85nFdJ32bxd0aWk0B2cif-a_9LrLewYKqSZ_SPtPBx40BGE/s1600/opensusesupportgraphf.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiK2CGUbkgrzCUprfrXD9YB9k4p30DjMdijkM3RVkMves5_UASrMO2Vfn5y-FQ54eZOlrhiIJe5U4VgS6fsKmkr2wg-tMAY85nFdJ32bxd0aWk0B2cif-a_9LrLewYKqSZ_SPtPBx40BGE/s1600/opensusesupportgraphf.png" height="384" width="640" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;"><b><span style="font-size: small;">openSUSE distribucijos versijų leidimo ir palaikymo grafikas</span></b><br />
<i>šaltinis: wikipedia.org</i></td></tr>
</tbody></table>
<br />
<div class="MsoNormal" style="text-indent: 1.0cm;">
<div style="text-align: justify;">
Kaip ir reikėtų tikėtis iš avangardinės Linux distribucijos,
openSUSE naudoja šiuo momentu moderniausią inicijavimo sistemą (<i>init system</i>) <i><b>Systemd</b></i>. Daugumos
Linux distribucijų perėjimas prie <i>Systemd </i>inicijavimo sistemos, vietoj <i>Upstart</i> sistemos, labiausiai įtakoja didesnis
funkcionalumas ir atvirojo kodo programinės įrangos priklausomybės didėjimas
nuo <i>Systemd</i> tarnybų.<o:p></o:p></div>
<div style="text-align: justify;">
<br /></div>
</div>
<div class="MsoNormal" style="text-indent: 1.0cm;">
<div style="text-align: justify;">
OpenSUSE nutaikyta į namų vartotojų poreikius, todėl ši
distribucija neturi plataus procesorių architektūros palaikymo. Oficialiai
palaiko <i><b>i586</b></i> ir<i> <b>x86_64</b></i><b> </b>architektūras, o neoficialiai <i>parc64</i> ir <i>arm</i>.</div>
</div>
<br />
<div class="MsoNormal" style="text-align: justify; text-indent: 1.0cm;">
Šiandienis openSUSE projektas būtų dar sėkmingesnis,
jei ne liūdnai pagarsėjęs sandoris tarp buvusios SUSE savininkės <i>Novell</i> ir
<i>Microsoft</i> (siekiant abiejų kompanijų produktų didesnio suderinamumo), kuris
suteikė <i>Microsoft</i> intelektinės nuosavybės teisių į Linux sistemas. Tai sukėlė pasmerkimo bangą tarp daugybės
Linux asmenybių-plėtotojų, kurie paskatino SUSE vartotojus pereiti prie kitos
Linux distribucijos.<o:p></o:p></div>
<br />
<hr align="left" size="1" width="100%" />
<br />
<h3 style="text-align: start;">
<span style="font-family: inherit; font-size: large;">
Linux distribucijų apžvalgos turinys su nuorodomis pateiktas apačioje:</span></h3>
<br />
<span style="font-family: inherit;"> • <a href="../../2015/01/linux-distribuciju-apzvalga-ivadas.html" target="_blank">Įvadas</a></span>
<br />
<div>
<ol>
<li><span style="font-family: inherit;"><a href="../../2015/01/debian-gnulinux-linux-distribuciju.html" target="_blank">Debian GNU/Linux</a></span></li>
<li><span style="font-family: inherit;"><a href="../../2015/01/ubuntu.html" target="_blank">Ubuntu</a></span></li>
<li><span style="font-family: inherit;"><a href="../../2015/01/linux-mint.html" target="_blank">Linux Mint</a></span></li>
<li><span style="font-family: inherit;"><a href="../../2015/01/slackware.html" target="_blank">Slackware</a></span></li>
<li><span style="font-family: inherit;"><b style="background-color: #d9ead3;">openSUSE</b></span></li>
<li><span style="font-family: inherit;"><a href="../../2015/01/suse-linux-enterprise.html" target="_blank">SUSE Linux Enterprise <i>(SLE)</i></a></span></li>
<li><span style="font-family: inherit;"><a href="../../2015/01/fedora.html" target="_blank">Fedora</a></span></li>
<li><span style="font-family: inherit;"><a href="../../2015/01/red-hat-enterprise-linux.html" target="_blank">Red Hat Enterprise Linux <i>(RHEL)</i></a></span></li>
<li><span style="font-family: inherit;"><a href="../../2015/01/centos.html" target="_blank">CentOS</a></span></li>
<li><span style="font-family: inherit;"><a href="../../2015/01/arch-linux.html" target="_blank">Arch Linux</a></span></li>
<li><span style="font-family: inherit;"><a href="../../2015/01/gentoo-linux.html" target="_blank">Gentoo Linux</a></span></li>
</ol>
<span style="font-family: inherit;"> • <a href="../../2015/01/linux-distribuciju-apzvalga-isvados.html" target="_blank">Išvados</a></span></div>
<br />
<hr align="left" size="1" width="50%" />
Martynashttp://www.blogger.com/profile/00471091754225207342noreply@blogger.com3tag:blogger.com,1999:blog-5426813891256937073.post-78575168736451096502015-01-17T05:50:00.001+02:002021-07-03T00:15:46.360+03:00Slackware<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj39uWqWm7njLqnpaxdUbTeXg3OXmKM6bfilQLnxL4lWNlDTPNvdil9wAa8zKGzx775nK7dpqu_PEo1mpVf7ZISd8JZPv2tCRR5AT_oCKTQ1V9j7wnBqGX95uv8aW0e44nhSqKUR3u_PQY/s1600/175px-Slackware_logo.svg.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj39uWqWm7njLqnpaxdUbTeXg3OXmKM6bfilQLnxL4lWNlDTPNvdil9wAa8zKGzx775nK7dpqu_PEo1mpVf7ZISd8JZPv2tCRR5AT_oCKTQ1V9j7wnBqGX95uv8aW0e44nhSqKUR3u_PQY/s1600/175px-Slackware_logo.svg.png" /></a></div>
<div class="MsoNormal" style="text-align: justify; text-indent: 1cm;">
Slackware – <b>seniausia</b> vis dar
palaikoma Linux distribucija. Pirma versija išleista 1993 metais, nusprendus
patobulinti tuo laiku (1992–1993 m.) populiarią, bet, anot vartotojų, kupiną
klaidų SLS Linux distribuciją. Slackware greit tapo populiariausia Linux
distribucija ir <b>dominavo</b> Linux rinkoje iki 1997 metų. Slackware viena iš keleto
pagrindinių-pamatinių Linux distribucijų, kurios pagrindu buvo sukurtos
dešimtys kitų Linux distribucijų bei kitokie įvairūs nestandartiniai
kompiuterinių sistemų sprendimai.<br />
<br /></div>
<table cellpadding="0" cellspacing="0" class="tr-caption-container" style="float: right; margin-left: 1em; text-align: right;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEitTpY2IHQAFioXfheDEboNvuRzl1g_qZkSA9b96ucVFP_Q6qIMqfgeYm96ewBUIYKCb9cQ_3Oseg8ZxChwB2BbpUXEH3voDZU_bO2b4pvGeQk5DC0C65YSSg3mj9fHAIyV4PC_RIhN4F8/s1600/Slackware-mascot.svg.png" imageanchor="1" style="clear: right; margin-bottom: 1em; margin-left: auto; margin-right: auto;"><img border="0" height="200" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEitTpY2IHQAFioXfheDEboNvuRzl1g_qZkSA9b96ucVFP_Q6qIMqfgeYm96ewBUIYKCb9cQ_3Oseg8ZxChwB2BbpUXEH3voDZU_bO2b4pvGeQk5DC0C65YSSg3mj9fHAIyV4PC_RIhN4F8/s1600/Slackware-mascot.svg.png" width="171" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Slackware versijos snobiškas <br />
Tuksas (Tux) su pypke</td></tr>
</tbody></table>
<br />
<div class="MsoNormal" style="text-align: justify; text-indent: 1cm;">
Slackware yra <b>nekomercinis</b>
projektas. Kaip ir dauguma Linux distribucijų, ji plėtojama savanorių bendruomenės su laisvosios programinės įrangos idėjomis. Visgi Slackware
plėtotojų bendruomenė labai maža, ją sudaro <b>iki 10</b> žmonių. Projekto valdymo
forma autokratinė – vienvaldė. Tai labai uždara ir konservatyvi distribucija,
kurios filosofija orientuota į primityvumą-supaprastinimą, grynumą ir
stabilumą. Daugelis projektavimo pasirinkimų Slackware distribucijoje gali būti
vertinami kaip <b>siekis paveldėti tradicinės <i>Unix</i> sistemos savybes</b> ir jas
išlaikyti. Antra vertus, dėl primityvumo-supaprastinimo ir grynumo-švarumo
filosofijos, Slackware <b>atsisako</b> daugybės įrankių, kurie palengvina sistemos
administravimo darbus, todėl dauguma neįgudusių Linux vartotojų Slackware
vertina kaip <b>sudėtingą</b> Linux distribuciją, skirtą pažengusiems vartotojams. <o:p></o:p><br />
<br /></div>
<div class="MsoNormal" style="text-align: justify; text-indent: 1cm;">
Slackware naudoja primityvias programų
paketų tvarkymo sistemas (<i>slackpkg</i> ar<i> pkgtools</i>), kurios automatiškai
<b>neišsprendžia</b> programinės įrangos priklausomybes nuo kitų paketų. Slackware programinės
įrangos paketai yra <i>tar</i> archyvai
talpinantys programų failus ir jei reikia papildomas instrukcijas (<i>tarballs</i>). Nors pati Slackware
distribucija nenumato įrankių, kurie automatiškai išspręstų programų paketų
priklausomybes, yra trečiųjų šalių programų (<i>Swaret, slapt-get, pkgsrc</i>), kurios veikia panašiai kaip <i>APT</i> ir palengvina programų paketų tvarkymą
Slackware sistemoje. <o:p></o:p><br />
<br /></div>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgtTY5rxKGZlLcsEaTN8GVb5xFLUSamqqG66BXJv3hHJ74BZUYT1F3S3J1Nn5bNVXtHv5c1KJ4pg3kuR90Jt6qkAD1MLQxZid7L22BEIMPX9nzLc40rjBWuX-UG3_i3DgpHsRDY_ZRliNE/s1600/Slackware.140.slackpkg.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="225" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgtTY5rxKGZlLcsEaTN8GVb5xFLUSamqqG66BXJv3hHJ74BZUYT1F3S3J1Nn5bNVXtHv5c1KJ4pg3kuR90Jt6qkAD1MLQxZid7L22BEIMPX9nzLc40rjBWuX-UG3_i3DgpHsRDY_ZRliNE/s1600/Slackware.140.slackpkg.png" width="400" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;"><i>slackpkg</i> paketų tvarkyklė<br />
<br /></td></tr>
</tbody></table>
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="MsoNormal" style="text-align: justify; text-indent: 1cm;">
Slackware diegimo sistema pateikiama su svarbiausia programine įranga ir bibliotekomis, būtinomis distribucijos funkcionavimui ir administravimui bei tolesniam sistemos kūrimui pagal individualius vartotojo poreikius ir norus. Kartu numatytas platus darbalaukio aplinkos pasirinkimas
(<i>Blackbox, Fluxbox, FVWM, KDE, WMaker </i>arba<i> Xfce</i>). Darbalaukio aplinka paleidžiama
iš komandinės eilutės su komanda <i>startx</i>.
Norint, kad grafinė darbalaukio aplinka pasileistų automatiškai sistemos
įkrovos metu, reikia pakeisti <i>/etc/inittab</i><span style="font-style: normal; mso-bidi-font-family: "Times New Roman"; mso-bidi-font-style: italic; mso-bidi-theme-font: minor-bidi;"> failo konfigūraciją (iš </span><i>runlevel 3</i> į <i>runlevel
4</i><i><span style="font-style: normal; mso-bidi-font-family: "Times New Roman"; mso-bidi-font-style: italic; mso-bidi-theme-font: minor-bidi;">). Iš tiesų, v</span></i>isa
sistemos konfigūracija atliekama <b>redaguojant</b> tekstinius failus. Dėl savo
techninio įmantrumo Slackware užsitarnavo Linux bendruomenėje posakį „<i>Jei
išmoksi Red Hat, tai suprasi Red Hat, bet jei išmoksit Slackware, suprasi
Linux</i>“.<o:p></o:p></div>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="http://upload.wikimedia.org/wikipedia/commons/5/53/Slackware_GNU_Linux_14.1.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" src="http://upload.wikimedia.org/wikipedia/commons/5/53/Slackware_GNU_Linux_14.1.png" height="400" width="640" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Slackware 14.1 su <i>KDE</i> darbalaukio aplinka</td></tr>
</tbody></table>
<br />
<div class="MsoNormal" style="text-align: justify; text-indent: 1cm;">
Slackware tam tikru kampu atrodo
kaip <b>techniškai pasenusi</b> operacinė sistema, bet dėl savo švarumo-grynumo,
klaidų retumo ir stabilumo Slackware vis dar populiari serverių sprendimuose, vis
dėlto net čia ji darosi labai <b>nekonkurencinga</b> dėl sudėtingų atnaujinimo
procedūrų ir oficialiai palaikomų automatinių saugumo priemonių trūkumo.
Šiandien Slackware vis labiau <b>tampa bazine sistema</b> (<i>core system</i>), kurios pagrindu statomi nauji nestandartiniai
kompiuterinių sistemų sprendimai, vietoj pilnos distribucijos su plačiu
įvairios programinės įrangos palaikymu.<o:p></o:p><br />
<br /></div>
<div class="MsoNormal" style="text-align: justify; text-indent: 1cm;">
Naujų Slackware versijų išleidimo
ciklas ir jų palaikymas tiksliai neapibrėžtas. Tačiau jau kuris laikas naujos
versijos pasirodo apytiksliai kas metus laiko ir yra palaikomos apie 5 metus.
Kaip ir visa kita Slackware projekte, naujos distribucijos versijos išleidimą
apsprendžia pagrindinis distribucijos plėtotojas/įkūrėjas, kai sistema jo
manymu būna tam paruošta. Nepaisant labai konservatyvios politikos, Slackware
komanda siekia pateikti naujausią programinę įrangą bent kartą per metus.
Slackware taip pat turi bandomąją/plėtojamą versiją, vadinamą <i>„-current“</i>, kuri gali būti naudojama
esant naujesnės programinės įrangos
poreikiui.<o:p></o:p><br />
<br /></div>
<div class="MsoNormal" style="text-align: justify; text-indent: 1cm;">
Žinant Slackware filosofiją,
turbūt nieko nenustebins, jog ji vis dar naudoja <b><i>SysVinit</i> </b>inicijavimo sistemą (<i>init
system</i>) kaip numatytąją, tuo tarpu dauguma didžiųjų populiarių Linux
distribucijų perėjo prie funkcionalesnių, labiau automatizuotų inicijavimo
sistemų kaip <i>UpStart</i> ar <i>Systemd</i>.</div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjpSetuZmZHEQXFsx18DbCEYpBKO2MMn6ZGoK6F98p-n4hax5O1y6diKyumBaSNMGRSwCpZdBPbqC9wIWl_ePnBSpMJSaoIdW4fzkRmuclRvPsqjYw5N-tkwlIK1EheNSbaCW8uL29NKEY/s1600/Intel_Inside_logo_(2013)_small.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjpSetuZmZHEQXFsx18DbCEYpBKO2MMn6ZGoK6F98p-n4hax5O1y6diKyumBaSNMGRSwCpZdBPbqC9wIWl_ePnBSpMJSaoIdW4fzkRmuclRvPsqjYw5N-tkwlIK1EheNSbaCW8uL29NKEY/s1600/Intel_Inside_logo_(2013)_small.png" /></a></div>
<br />
<div class="MsoNormal" style="text-align: justify; text-indent: 1cm;">
Slackware save pristato kaip <i><b>Intel</b></i> procesorių Linux distribuciją, todėl gana ilgai oficialiai susikoncentruodavo vien į <i>x86</i> procesorių architektūros palaikymą, visgi nuo 2009 m. oficialiai pradėjo plėtoti <i>x64</i> architektūros platformą lygiagrečiai su <i>x86</i>. Nuo 2013 m. turi ir <i>ARM</i> architektūros palaikymą, o <i>S/390</i> architektūros palaikymas neaktyvus nuo 2009 m., galimai apleistas. Oficialiai Slackware, šiuo metu, palaiko keturias kompiuterių architektūras: <i>arm, i486, s390</i> ir <i>x86_64</i>.</div>
<br />
<hr align="left" size="1" width="100%" />
<br />
<h3 style="text-align: start;">
<span style="font-family: inherit; font-size: large;">
Linux distribucijų apžvalgos turinys su nuorodomis pateiktas apačioje:</span></h3>
<br />
<span style="font-family: inherit;"> • <a href="https://skarware.blogspot.com/2015/01/linux-distribuciju-apzvalga-ivadas.html" target="_blank">Įvadas</a></span>
<br />
<div>
<ol>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/debian-gnulinux-linux-distribuciju.html" target="_blank">Debian GNU/Linux</a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/ubuntu.html" target="_blank">Ubuntu</a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/linux-mint.html" target="_blank">Linux Mint</a></span></li>
<li><span style="font-family: inherit;"><b style="background-color: #d9ead3;">Slackware</b></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/opensuse.html" target="_blank">openSUSE</a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/suse-linux-enterprise.html" target="_blank">SUSE Linux Enterprise <i>(SLE)</i></a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/fedora.html" target="_blank">Fedora</a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/red-hat-enterprise-linux.html" target="_blank">Red Hat Enterprise Linux <i>(RHEL)</i></a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/centos.html" target="_blank">CentOS</a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/arch-linux.html" target="_blank">Arch Linux</a></span></li>
<li><span style="font-family: inherit;"><a href="https://skarware.blogspot.com/2015/01/gentoo-linux.html" target="_blank">Gentoo Linux</a></span></li>
</ol>
<span style="font-family: inherit;"> • <a href="https://skarware.blogspot.com/2015/01/linux-distribuciju-apzvalga-isvados.html" target="_blank">Išvados</a></span></div>
<br />
<hr align="left" size="1" width="50%" />
Martynashttp://www.blogger.com/profile/00471091754225207342noreply@blogger.com0