Giter VIP home page Giter VIP logo

Comments (5)

nwf avatar nwf commented on June 6, 2024 3

@tmagik You'll want to look at the fs/afs and net/rxrpc subsystems in Linux and at https://www.infradead.org/~dhowells/kafs/. Notably, AuriStor has modernized the Rx and AFS to add IPv6 and modern cryptography ("rxgk") among other things and has supported David Howells' bringing these changes to kAFS. (ETA: I'm not sure the extent to which these changes have propagated into the OpenAFS tree.)

from ipfs.

jbenet avatar jbenet commented on June 6, 2024

Hey @nwf, thanks for posting here. :)

Many things apparent in the ipfs effort were pioneered a long time ago by the AFS (now OpenAFS) project, including storage location transparency; a global, automatic namespace mounted on the clients; and cross-realm authentication and permission management. At a minimum, their papers should be studied and cited.

I have studied AFS, and the IPFS paper does cite AFS, it is in fact the first citation. (Though perhaps it should be 9P, as it was much more influential :) ). AFS is one of many distributed filesystems that did these things. It certainly deserves special mention, which is why I included it. But it wasn't the first, and it wasn't the last. Then again, do note the IPFS paper is a draft, not published at any academic journal/conference, and will change a lot before it makes out of this stage. My first priority is deploying it, not publishing.

In fact, it might also make sense to reuse much of their work

While I'm all for reusing code, most of the codebases I've worked with for larger distributed systems make deep assumptions about the system's model which make the code unusable by other systems. (Sadly, we're finding it too easy to make similar assumptions in our implementation, though we try hard to abstract things out into reusable, non-ipfs-dependent modules, though there's always the tradeoff of actually shipping something good :) ).

ipfs could be implemented as an alternative AFS file server

The point of IPFS is to evolve the web, not just enhance AFS. While I'm all for interop, and would love to support efforts there, we have limited time. Happy to accept Pull Requests or answer any questions on that front for any IPFS-AFS adapters that may make sense. (This will actually be very easy-- the reference IPFS implementation will provide a flexible, multi-format and multi-transport RPC API.

However I will say that IPFS itself using AFS does not make sense. IPFS is actually pretty large, and does a lot. And, part of the point is moving away from traditional permission models, or thinking just about files. IPFS is about data/objects addressable in the web.

client/server and server/server interactions.

IPFS breaks from the client/server model. The point is to be peer-to-peer.

reuse all the effort of the AFS file system client kernel and FUSE modules.

We already have our own FUSE module, and we'll eventually write our own kernel driver. In due time. (these things aren't that hard -- legacy side-effect ridden code is much worse to deal with).


@nwf In general, i'm happy to discuss AFS-IPFS interop, but this is not a topic for today. It will be a topic for months from now. Perhaps talk then! Feel free to follow along development of our first implementation here: https://github.com/jbenet/go-ipfs/

from ipfs.

nwf avatar nwf commented on June 6, 2024

Thanks for your prompt reply. Best of luck with everything. :)

from ipfs.

tmagik avatar tmagik commented on June 6, 2024

So this was closed 6 years ago, with a comment about

and we'll eventually write our own kernel driver

Does such a thing yet exist, cause I'll use it.

Otherwise, if you know of a distributed filesystem that's had as much adoption and use as AFS, please let me know, as I'm about to go full-on in attempting to bring AFS into the decade where everyone has an IPv6 address, half the world has a linux based phone on their desk (thank you Google), and IPFS is the next "new big thing".

There are some really nice things about IPFS... It seems to me like a great way to package and distributed read-only AFS volumes that you want to share with the rest of the world (like say the Debian archive in AFS, or the gajillion NodeJS modules, or maybe the binaries and everything else for Golang or Rust)

But we still need a kernel module.

from ipfs.

jnorthrup avatar jnorthrup commented on June 6, 2024

to necro this, sadly...

[open]mosix had a pervasive rpc and vfs on its own broadcast protocol which may have fallen short in paranoid security but was unbelievably helpful and was a vehicle to virtualize entire process spaces to peer nodes in pre-hypervisor days. it held up under production even.

from ipfs.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.