PET adatgyujtes Biztonsaga

Mottó:
Data storage systems should be chosen such that required data can be retrieved in an acceptable timeframe and format, depending on the requirements to be fulfilled.

Az adattárolókat úgy kell megválasztani, hogy a kért adat az igényelt időben és formátumban visszaszerezhető legyen.

ISO IEC 27002 15.1.3

Az audit célja
Vállalatunk orvosi céra tervez és gyárt Pozitron Emissziós Tomográfokat. A vizsgálat során a páciens szervezetébe intravénásan egy Fludeoxyglucose (FDG) nevű izotópot fecskendeznek. Ez az izotóp a szervezet számára megkülönböztethetetlen a "sima" nem izotóp verziótól. A rákos sejtek szaporodásuk során nagy mennyiségű glukózt vesznek fel így emiatt a daganat megfelelő detektorok és képalkotó eszközök segítségével "lefényképezhető", helyzete alakja és kiterjedése pontosan meghatározható a sebészi beavatkozás megtervezéséhez.

A képalkotás úgy történik, hogy a detektorokból beérkező nagymennyiségű raszteres adatot (mely detektorpár mikor érzékelt becsapódó fotont) letároljuk egy számítógépen, majd az adatgyűjtés befejezését követően (vagy már azzal párhuzamosan elkezdve) nagy számítási kapacitású processzorokkal és különféle statisztikai algoritmusokkal (pl. Monte-Carlo elemzéssel) kiszámoljuk a daganat fizikai elhelyezkedését.

Egy PET vizsgálat körülbelül 5–7 mSv sugárterhelést okoz a páciensnek, ehhez hozzáadódik még a PET vizsgálatot kiegészítő CT szkennelés ami már 23–26 mSv. Viszonyítási alapul: egy hagyományos melkasi röntgen felvétel 0.02 mSv terhelést okoz, tehát egy ilyen súlyú vizsgálat csak néhány évente egyszer végezhető ami azt jelenti, hogy adatvesztés gyakorlatilag nem megengedhető.

Az audit területe, hatóköre
Informatikai biztonság szempontból az adatokra a rendelkezésre állás (availability), integritás, sértetlenség (integrity) követelmény fogalmazódik meg.

A rendszer fizikailag zárt csak az adott PET laboratóriumban illetékes szűk orvosi és asszisztensi személyzet juthat be, adat csak kifelé mozoghat - tehát a bizalmasság, illetéktelen hozzáférés (confidentiality) problémája nem merül fel.

Feladatunk a vizsgálat adatgyűjtése során a PET detektorokból a számítógépes infrastruktúrába ömlő adatok biztonságos eltárolásának minősítése megbízhatóság (reliability) szempontjából műszaki illetve technikai területen, megakadályozó (preventive) időben.

A bejövő adatokat a gyűjtő kliens számítógép egy 10 GBit/sec adatsebességű Ethernet hálózati csatolón továbbítja 50 méteres Cat7-es UTP kábelen keresztül a háttértárolást végző szerver számítógép felé. A tároló gép egy Intel RAID controller-t és az arra csatolt 4 darab 3 terrabájtos merevlemezt kezeli melyek RAID5 tömbbe vannak szervezve.

Követelmények
A gyűjtéskor keletkező maximum 800 MB/sec sebességgel keletkező összesen 1-2 terrabájt méretű adattömeget a hálózaton legalább 50 méterre továbbítani kell, a tároló gépen hálózatra megosztott meghajtóra rögzíteni és az adatokat reális biztonsággal kell tárolnia a képrekonstrukció elvégzéséig és az archiválás megtörténtéig. A rekonstrukció folyamán ugyanekkora adatsebességgel történik az olvasás. Adatvesztés akkor történik ha a rendszer nem képes fogadni az adott mennyiségű adatot (ilyenkor a küldő gép kénytelen eldobálni a mérési adatokat) az adott sebességgel vagy ha az a tárolás során meghibásodik.

Az ellenőrzés tárgya
Vannak olyan paraméterek melyeket sajátkezűleg ellenőrizhetünk, van viszont olyan melynek a tesztelése lényegesen komplexebb hardveres laborkörülményeket igényel mint amit cégünk erre a feladatra biztosítani tud, ilyen esetekben a gyártó vagy más bemérőszerv méréseire támaszkodunk vagy ezek híján a legrosszabb - a technológiára jellemző - statisztikát vesszük alapul. Elsőre példa az átviteli sebességek melyeket módunkban áll közvetlenül mérni, a másodikra példa a háttértárolók meghibásodási statisztikája: Egy merevlemezen a tiszta adatmeghibásodás valószínűsége túl kicsi ahhoz, hogy néhány példány bevonásával reális idő alatt értékelhető eredményeket produkáljunk ezért erre nyilvános statisztikákat használunk fel. Második dolog amit szét kell választanunk az adat fizikai sérülése és a tárolóeszköz működésképtelensége. Ha egy merevlemez elektronikája felmondja a szolgálatot, a tárolt adatok egy azonos típusú merevlemez elektronikájának átszerelésével 15 perc után hozzáférhetővé válnak, esetünkben tehát csak arra a meghibásodásra szorítkozunk melyek az adatok olvasását teszik véglegesen lehetetlenné: a mágneslemez mechanikai sérülése, átmágneseződése vagy a hermetikusan elválasztott belső mechanika sérülése melynek javítása tisztaszobás elektromechanikai laborkörülményeket igényelne.

A hálózati kapcsolat
Fizikailag képes-e a feltüntetett adatsebesség elérésére? A 10 GBit/sec névleges teljesítménytől legfeljebb 10% eltérés lehet mert ebbe még belefér a 800 MB/sec felhasználói adatsebesség.

Fájlmegosztás
Ha a hálózat nyers adatfolyam szintjén hozza is a kívánt adatsebességet, a hálózati fájlrendszer (samba, CFS, NFS, stb.) még nem feltétlenül képes támogatni az ezt kihasználó protokollokat vagy maga a szolgáltatást megvalósító szoftver képtelen az adott követelményeknek megfelelni mert lehet, hogy a fejlesztői nem kalkuláltak ilyen extrém igénybevétellel, vagy például nem implementálták a nagysebességű átvitelt támogató extra protokollokat.

Háttértárolók
A merevlemezek nyers adatírási sebessége ha nem használjuk a RAID illesztőkártyát, illetve ugyanezen paraméterek hogyan változnak ha RAID5 tömbbe kapcsoljuk őket? Másodiknak vizsgáljuk: vajon a lemezek gyári adatmeghibásodási értékeit miképpen módosítja a RAID kapcsolat?

Az ellenőrzés módja
Debian Linux és 2.64-es vagy újabb kernel fut a tárgyalt eszközökön.

A hálózat
Nyers bitsebességét az iperf nevű szoftverrel mérjük. A szervernek kijelölt gépen iperf -s

parancs kiadásával indítjuk az egyik mérőprogramot a másik kliensnek kinevezett gépen pedig elkezdjük az adatforgalmazást: iperf -c 192.168.1.42 Ahol a 192.168.1.42 a szervernek kinevezett gép IP címe.

Merevlemezek
Ha egy lemez írási sebességét egy másik lemezről történő adatok másolásával tesztelnénk, akkor a vizsgált értékeket jelentősen befolyásolja a vizsgálatba bevont "másik" - nyilván hasonló nagyságrendi értékeket produkáló - lemez. Írási és olvasási sebességét valamint ezek hálózaton keresztül módosult értékeit a unix /dev/zero eszközfájl tesztfájlba történő írásával, az olvasásokat a vizsgált eszköz /dev/null eszközfájlba történő másolásával. Ezen módszerek lényege, hogy a /dev/XXX eszközfájlok csak processzként léteznek tehát ezek sebessége kizárólag a memória és a processzor függvénye így tekinthetjük őket végtelenül nagynak, eképpen nem rontják le, nem befolyásolják a vizsgálat eredményét.

A "head' nevű szabványos unix segédprogramnak lehet megadni a másolni kívánt adatmennyiséget, ezt használjuk a forrásfile másolására.

A "date" nevű szabványos unix segédprogram alkalmas az adott mérető adatfolyam másolásának idejét mérni lehetővé téve ezzel a sebességek kiszámítását.

Például ha a számítógépbe beszerelt második merevlemez nyers adatírási sebességét kívánjuk meghatározni, akkor ezt az alábbi parancs kiadásával tehetjük meg: start=$(date +%s) ; head -c 10G /dev/null > /dev/sdb ; echo "Speed: $(( 10000/($(date +%s)-start) )) MB/sec." A pontosvesszők három önálló parancsot választanak el:

Az első feljegyzi a mérés kezdetét, a második 10 gigabájt nullákkal feltöltött adatblokkot másol a /dev/zero virtuális állományból a /dev/sdb lemezre, a harmadik pedig az aktuális időből kivonja a kezdőidőt és ebből kiszámolja majd kiírja a kapott írási sebességet, ami egy átlagos esetben az alábbi: Speed: 84 MB/sec.

Hálózat
Nyers adatátviteli sebesség két számítógép között: 9.89 - 9.98 GBit/Sec.

Merevlemez
Nyers adatátviteli sebesség: 200-250 MByte/sec. RAID5-be kapcsolva 500-600 MByte/sec lett. Ha fájlrendszerre írunk akkor ez az érték 450-550 MByte/sec-re romlik.

A RAID egységbe kapcsolt lemezek adatvesztést akkor okoznak ha egyszerre két lemez azonos helyen hibásodik meg. Egy átlagos SATA merevlemez 300,000 MTBF-es hibaértékkel bír. Ez alapján annak a valószínűsége, hogy egy adott évben a lemez meghibásodik AFR=1-EXP(-8760/MTBF) = 0.0287777994 = 2,87%. Egyszerre két lemeznek kell meghibásodnia melynek valószínúsége a fenti szám négyzete: 0.0828% Ez olyan érték mely egy nagyságrendel alacsonyabb a legmegbízhatóbb alaplap MTBF alapján számított meghibásodásának valószínűségével.

Jelentés
A RAID5 tömb nem lesz elegendő az adatok fogadására, azt vagy SSD meghajtók felhasználásával vagy a lemezek számának növelésével lehet elérni.

Fogalom-, definíció jegyzék
PET: Pozitron Emissziós Tomográf. A szervezetbe juttatott anyag radioaktív bomlása során az elektron antianyag párját pozitront bocsájt ki amit a berendezés - közvetett kölcsönhatások révén - képes felfogni.

FDG: Fludeoxyglucose. Rövid felezési idejű izotóp.

Monte-Carlo elemzés: Statisztikai módszer függvények közelítő értékeinek kiszámításához.

mSv: mini Sievert, a sugárterhelés mértékegysége.

Cat7-es UTP kábel: Olyan kábelszabvány amely garantál 10GBit adatsebességet 100 méteren.

RAID5: Minimum két merevlemez párhuzamos összekapcsolása úgy hogy egy lemeznyi redundancia legyen biztosítva, tehát ennyi lemez meghibásodhat az adatok elvesztése nélkül.

linux kernel: Az operációs rendszere felhasználói programok alatti része.

MTBF: Mean time between failures. Középérték két meghibásodás közötti időre. Általános mérőszám berendezések megbízhatóságának jellemzésére.

AFR: Annualized failure rate. Annak valószínűsége hogy egy adott évben mekkora valószínűséggel hibásodik meg egy berendezés.

Irodalomjegyzék
http://en.wikipedia.org/wiki/Annualized_failure_rate

http://www.dfi-itox.com/pages/products/mothers/info/mtbf.php

INTERNATIONAL STANDARD ISO/IEC 27002 First edition 2005

OReilly Linux Networking Cookbook 2007

Bailey, Townsend, Valk, Maisey: Positron emission tomography 2005 Springer

Thorsten M. Buzug: Computed Tomography: From Photon Statistics to Modern Cone-Beam CT 2010 Springer