25.12.2013 Views

SLAMorris Final Thesis After Corrections.pdf - Cranfield University

SLAMorris Final Thesis After Corrections.pdf - Cranfield University

SLAMorris Final Thesis After Corrections.pdf - Cranfield University

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

9.4.1 Thumbcache_idx file fragment categories<br />

The repeating and fixed size record structure of the thumbcache_idx.db file can<br />

assist with reassembling the various fragments of the file. The index file stores<br />

records in a hash table whose size is always a multiple of 101; each file<br />

fragment of 4096 bytes can hold up to 127 complete records as shown in figure<br />

9.2. The figure shows there are four different categories of this file fragment<br />

type. Below each category is described:<br />

IDX Category_1: Fragment with 101 records and file header<br />

In this case the single fragment contains the entire 101 record index and<br />

therefore does not require further reassembly. The first check to identify these<br />

fragments is to check the file header identifier “IMMM”; this is followed by<br />

checking the header structure is a valid thumbcache_idx structure as identified<br />

in Appendix A. Within the header the number of records should be set to 101, if<br />

the number is larger, then the fragment belongs to Category_2. As a 4096 byte<br />

fragment can contain up to 127 complete records a further check is made to<br />

ensure that the fragment is empty after the 101 expected records; therefore the<br />

last 840 bytes of the fragment is checked to ensure they are0x00.If a fragment<br />

meets the criteria for this category it is logged as a reassembled file. As the<br />

entire 101 record file has been recovered the file is complete and the method<br />

moves on to the next fragment for identification.<br />

IDX Category_2: Fragment with 127 complete records and file header<br />

This fragment is the beginning of a larger index file which is stored over multiple<br />

fragments. The checks performed for this category are the same as in<br />

category_1; the difference between the two categories is the total number of<br />

records stored in the complete file. The file header contains the size of the index<br />

hash table and it is therefore possible to work out the total number of file<br />

fragments storing the index file; each fragment can hold up to 127 complete<br />

Page<br />

240

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!