T-07S-05: Difference between revisions

From
Jump to navigation Jump to search
No edit summary
 
 
(10 intermediate revisions by the same user not shown)
Line 1: Line 1:
=Distributed Filesystem for Wireless Mesh Networks=
=Distributed Filesystem for Wireless Mesh Networks=
Assigned to: Felix Bechstein
Assigned to: [http://www2.informatik.hu-berlin.de/~bechstei/ Felix Bechstein]


Advisor: Anatolij Zubow
Advisor: Anatolij Zubow
Line 8: Line 8:
==Problem Statement==
==Problem Statement==
*Which problem do you want to solve?
*Which problem do you want to solve?
** There is no filesystem only based on DHT for decentralized use, like our BRN.
*To which domain of Computer Science does this problem relate to?
*To which domain of Computer Science does this problem relate to?
*Why is the problem interesting? Why is it difficult?
*Why is the problem interesting? Why is it difficult?
** A filesystem is a basic service for many applications on top. It can be used for class- and update-distribution, backup- or storage-service and many more.


==Deliverables==
==Deliverables==
*At the end of the project, what will you have delivered?
*At the end of the project, what will you have delivered?
** A basic distributed (high-performance) filesystem, using only the [[T-07S-04|DHT]].
** An interface to that filesystem in fuse or nfs, to mount it.
*What does it mean that the project was successful?
*What does it mean that the project was successful?
** The filesystem's performance is sufficient for class- or upgrade-distribution.


==Prior Art==
==Prior Art==
Line 22: Line 27:
==Key Ideas / Project Execution Plan ==
==Key Ideas / Project Execution Plan ==
*How will you approach the problem?
*How will you approach the problem?
** I'll build the filesystem from bottom to top:
*** abstraction to fuse, nfs or similar
*** fs-layer: c# library, with an ioctl-like interface
*** block-layer: abstract the dht to simple blocks/extends variable in size
*** dht-layer: use the [[T-07S-04|DHT]]
** All the BRN-magic is done in the DHT, so i'll try to build a clever block structure with some caching to improve everything's speed.
*On which contributions of others do you depend on?
*On which contributions of others do you depend on?
** [[T-07S-04|Distributed Hash Table]] by Anselm Ringleben


==Project Log==
==Project Log==
* What you have done so far? What You plan to do next?
* What you have done so far?
** Define some Interfaces (not fixed yet).
** Implement a DHT interface localy (not distributed).
** Implement the Blocklayer.
*** hardcopys on blocklayer
** Implement Direcorys:
*** openDir
*** mkdir
*** rmdir
*** ls
*** close
*** <s>chdir</s>
*** <s>pwd</s>
** Implement Files
*** openFile
*** unlink
*** read
*** write
*** truncate
*** close
** Implement Fuse Frontend
** first prototype
* What You plan to do next?
** fix bugs
** push performance to its limits

Latest revision as of 17:17, 30 July 2007

Distributed Filesystem for Wireless Mesh Networks

Assigned to: Felix Bechstein

Advisor: Anatolij Zubow

Expected Submission: December 2007

Problem Statement

  • Which problem do you want to solve?
    • There is no filesystem only based on DHT for decentralized use, like our BRN.
  • To which domain of Computer Science does this problem relate to?
  • Why is the problem interesting? Why is it difficult?
    • A filesystem is a basic service for many applications on top. It can be used for class- and update-distribution, backup- or storage-service and many more.

Deliverables

  • At the end of the project, what will you have delivered?
    • A basic distributed (high-performance) filesystem, using only the DHT.
    • An interface to that filesystem in fuse or nfs, to mount it.
  • What does it mean that the project was successful?
    • The filesystem's performance is sufficient for class- or upgrade-distribution.

Prior Art

  • Who are your competitors? What are they doing?
  • How is your work different?
  • List of publications related to your topic.

Key Ideas / Project Execution Plan

  • How will you approach the problem?
    • I'll build the filesystem from bottom to top:
      • abstraction to fuse, nfs or similar
      • fs-layer: c# library, with an ioctl-like interface
      • block-layer: abstract the dht to simple blocks/extends variable in size
      • dht-layer: use the DHT
    • All the BRN-magic is done in the DHT, so i'll try to build a clever block structure with some caching to improve everything's speed.
  • On which contributions of others do you depend on?

Project Log

  • What you have done so far?
    • Define some Interfaces (not fixed yet).
    • Implement a DHT interface localy (not distributed).
    • Implement the Blocklayer.
      • hardcopys on blocklayer
    • Implement Direcorys:
      • openDir
      • mkdir
      • rmdir
      • ls
      • close
      • chdir
      • pwd
    • Implement Files
      • openFile
      • unlink
      • read
      • write
      • truncate
      • close
    • Implement Fuse Frontend
    • first prototype
  • What You plan to do next?
    • fix bugs
    • push performance to its limits