Giter VIP home page Giter VIP logo

Comments (1)

whyrusleeping avatar whyrusleeping commented on August 15, 2024

The only real way to improve the actual scaling factor here is to increase the 'average deal duration'. So let's explore some ways we might do that:

Off-chain deal extension

We can find some way for clients to extend the duration of their deals without posting anything to the chain. For 'deals' made with storage miners, this is pretty simple, as nothing about the payment or the deal duration exists on chain anyways, an extended set of payment channel updates could be sent to the storage miner, and they would just keep storing files.

However, for deals made with repair miners, this gets a bit difficult. The current model has the duration of deals logged on-chain, in the deal. To change that, we can go one of two routes, either move the duration of the deal off-chain, or be okay with some small on-chain message to update that duration.

Small on-chain deal extension

A small on-chain message to extend a deal could just be a message, jointly submitted by the client and the repair miner, containing the new duration, funds to cover the storage, and a reference to the deal ID. With proper aggregation of signatures, this is quite small (it notably doesnt contain the hash of the data in question)

Off-chain deal duration

The duration of the deal existing on-chain is how the client can know that their data will be assured (economically) by the chain. Without a duration, nobody has any way of knowing whether or not any piece of data being handled by a repair miner should stick around, or if that miner can safely remove it from their set. (Note: the bid/deal aggregation proposal linked above also requires a solution to this problem.) I don't have any concrete ideas towards this, but one approach that i hear echoing from the far off reaches of rome is "Jury Trials" (cc @nicola ). Where effectively, we broadcast information about the deal durations to the network, and elect random subsets of miners to be responsible for ensuring that deals are kept for their proper duration.

from specs.

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.