Electrical Engineering Department

Degree Name

BS in Electrical Engineering




Michael Cirovic


For a very long time now I have been quite interested in having my personal web server. Senior project gave me the perfect opportunity to explore and to custom design web server that would fit my future storage/web needs.

There are multiple aspects of the project that I worked on to custom design the web server. The list and brief description of each of these categories is given bellow.

1. Ftp Options: There are several ftp options available, so I researched these options and found the client service that would work best with my requirements.

2. Number of Users: One of the critical aspects of the server construction requirement is that each user should have access to sufficient amount of storage, processor power, and memory allocated to have flawless usage. Therefore, I would need to estimate my data sharing needs which would determine the type of processor and amount RAM. Hard drive space would also be dependent on this.

3. Security Issues: This is also one of the major parts of the project to determine the system environment for secure data sharing.

4. Required Storage: I already have multiple relatively large hard drives that I have been using for quite some time now, but it seems that with growing trends in technology gigabytes are turning into megabytes. Therefore I would want to start with large storage up front, and still have options to increase storage in future.

5. Required Speed: Speed is quite critical for large data sharing, so I would need to research and implement solution that would be relatively high speed enabled.

6. Power Efficiency: Server by nature is going to be run all the time, so I would want to have system that is power efficient.

7. Minimum specification: I would also need to set minimum system specification, so that I can have longer time before next hardware upgrade needed.

8. Redundant Components: It is very common to have redundant system components in server system such as power supplies, and ethernet ports. These components would provide uninterrupted access even if one of them fails. I would need to find components that would best fit my needs.

9. Operating System Selection: There are many options available for OS ranging from Windows, Redhat, to open linux. Each of these have different functions, and so I would need to closely study them to find appropriate OS for my system.

10. Hard Drive Raid Options: There are several different types of hard drive raid options available, some are hardware based and some are software based. I would need to evaluate these options to find appropriate option for me.

11. Cost and Benefit Analysis: Last but not least, I would need to do cost and benefit analysis to see how much I am getting for the money I spend. Is it beneficial to choose the highest performance system? Or is it okay to go with second or third best in market? This way I would get most for the money I spend.

Himanshu Parmar Senior Project Demo Presentation.pdf (666 kB)
Himanshu Parmar Senior Project Demo Presentation