1 / 35

Guy Jacob Roee Shapiro

INFINI DRIVE. 044167 – Project A Spring, 2008. Guy Jacob Roee Shapiro. Project Supervisor: Hai Vortman Lab Chief Engineer: Dr. Ilana David. Agenda. Goal Project Objective Technologies InfiniDrive Architecture System Overview Layers Overview InfiniDrive Demonstration Future Plans.

herve
Download Presentation

Guy Jacob Roee Shapiro

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. INFINI DRIVE 044167 – Project A Spring, 2008 • Guy Jacob • Roee Shapiro • Project Supervisor: Hai Vortman • Lab Chief Engineer: Dr. Ilana David

  2. Agenda • Goal • Project Objective • Technologies • InfiniDrive Architecture • System Overview • Layers Overview • InfiniDrive Demonstration • Future Plans

  3. Final Goal • One logic drive with infinite storage space

  4. Project Objective • Distributed Disk Application over the Internet. • Physical The physical part of the disk would be made from a number of disk fragments in different machines over the network which have different applications or protocol interfaces. Example for physical disks on the Internet could be: email accounts, ftp sites, peer-to-peer file sharing networks. • Logical The logical part will give the end user one logic disk which will be the size of the fragments sum. The application will give the end user one united interface for the logic disk and will hide all other different interfaces for the different physical disks.

  5. Technologies • Application Tier • .Net Framework 3.5 (C#) • Database Tier • XML Serialization • Development Environment • Visual Studio 2008

  6. Protocols • SMTP The objective of the Simple Mail Transfer Protocol (SMTP) is to transfer mail reliably and efficiently. When an SMTP client has a message to transmit, it establishes a two- way transmission channel to an SMTP server. The responsibility of an SMTP client is to transfer mail messages to one or more SMTP servers, or report its failure to do so • IMAP The Internet Message Access Protocol, allows a client to access and manipulate electronic mail messages on a server. IMAP4 permits manipulation of mailboxes (remote message folders) in a way that is functionally equivalent to local folders. IMAP also provides the capability for an offline client to resynchronize with the server.

  7. Management System Overview Restore Point Files Database Internet SMTP Connection IMAP IMAP Physical Logical Account Database GUI

  8. Management GUI Layer • Show local/remote file system • Show graphical indication for: • Transfer Status • Connection Status • Provide account management facilities • Add or remove accounts • Change priority • Provide InfiniDrive facilities • Create Restore Point • Refresh InfiniDrive Connection Physical Logical GUI

  9. GUI – Class Diagram Windows Forms Classes Service Classes

  10. Management Logical Layer • Manage virtual file system • Initiate Upload and Download flows • Build schemes holding logical limitations: • Upload scheme • Redundancy scheme • Scatter Data scheme • Invoking a controller for each thread • Each file is processed in a different thread Connection Physical Logical GUI

  11. Logical – Class Diagram Logic Classes Data Structure Classes Service Classes

  12. Management Physical Layer • Split files to fit the maximum attachment size • Add information to metadata header • Merge parts in to a single file Connection Physical Logical GUI

  13. Physical – Class Diagram Logic Classes

  14. Management Connection Layer • Manage clients database • Via IMAP: • Retrieve accounts properties • Retrieve InfiniDrive files • Via SMTP: • Send file parts to one or more accounts Connection Physical Logical GUI

  15. Connection – Class Diagram Logic Classes Data Structure Classes Service Classes

  16. Management Management Layer • OpenCM (Client Management) • Monitor accounts connection and respond to changes • Discovery • Discover and monitor InfiniDrive files • Build Download Assembly • Retrieve Restore Point Connection Physical Logical GUI

  17. Management – Class Diagram Logic Classes Data Structure Classes Service Classes

  18. Management Upload File - GUI Internet SMTP Connection IMAP IMAP Physical • Activated by mouse click or drag and drop • Pass folder tree or file to Logical Layer • Update Transfer and Status panes Logical GUI Database

  19. Management Upload File - Logical Internet SMTP Connection IMAP IMAP • Check logical conditions (space, connection, …) • Assign account/s • Generate metadata header • Upon successful completion - Update Remote FS and DB Physical Logical GUI Database

  20. Management Upload File - Physical Internet SMTP • Split files and build message with attachment • Complete metadata header Connection IMAP IMAP Physical Logical GUI Database

  21. Management Upload File - Connection • Send each part to one or more accounts • Send new database files Internet SMTP Connection IMAP IMAP Physical Logical GUI Database

  22. Upload File - Management Internet SMTP Connection IMAP Physical • Discover upload files • Update InfiniDrive file system • Update GUI Logical Management GUI Database

  23. InfiniDrive Demonstration Upload Download User Account

  24. Documentation Code documented using C# XML documentation. This documentation is compiled using SandCastle / DocProject creating user friendly help file

  25. Documentation – Preview

  26. Future Plans • Add more protocols (today supports imap and smtp) • Add namespace shell extension • Encryption • Beat the Competition

  27. Competition - livedrive • http://www.livedrive.com/

  28. Competition - Gladinet • http://gladinet.com/

  29. The End… Questions?

  30. Upload

  31. InfiniDrive – Internal View

  32. Download

  33. User Account

More Related