A low-latency network filesystem protocol
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
NOTES
client
common
server
t
.gitignore
GPLv3.txt
LICENSE
README.md

README.md

Freemount

Summary

Freemount is a network filesystem protocol. It runs over a reliable transport medium, such as local sockets, TCP, TLS, and SSH.

Freemount's key features include

  • extended semantics, including operations like select()
  • low latency
    • small requests can be batched together in a single packet
    • messages can be interleaved -- a large read or write needn't block other requests
      • unrelated requests can be parallelized
    • related requests can be merged into chains -- if one fails, the rest abort
    • related requests can be combined, e.g. open/write-fd/close -> write-path

Freemount is designed to be the optimal protocol for FORGE (the File-Oriented, Reflective Graphical Environment).

Documentation

Licensing

The provided reference implementation is copyright Joshua Juran, and released under the GNU GPL version 3 (or later).