Skip to content

Latest commit

 

History

History
129 lines (62 loc) · 3.63 KB

frc-0056.md

File metadata and controls

129 lines (62 loc) · 3.63 KB
fip title author status type created dependency
Filecoin Storage Deals Proposal Protocol Updates
torfinnolsen, brendalee
Draft
FRC
2023-01-12
none

Simple Summary

Storage Deal Protocol v1.2.1 Release FRC

We're releasing Storage Deal Protocol v1.2.1, a minor release which adds improved configurability to Indexer announcements, and unsealed copy storage. We would like to request community comment.

This release includes improved functionality, but does not disrupt present default Storage Deal Protocol behaviors. No bug fixes are addressed in this release, so while upgrading is encouraged, it is not immediately required.

Abstract

-Adding a flag to enable storage clients to elect to not announce deal data to IPNI(InterPlanetary Network Indexer)

-Adding a flag to enable storage clients to elect to not have an unsealed copy of their data stored.

Change Motivation

As the Filecoin network continues to grow, there are different clients and storage providers handling a variety of data storage use cases which require more flexibility. Storage clients may have specific requirements around discoverability of content, and storage providers may want to only store sealed data.

Currently by default, storage providers announce their content to the IPNI (Interplanetary Network Indexer), and also store unsealed copies of data. This change would give them the option to do otherwise.

Specification

The Propose Storage Deal libp2p protocol is updated: two optional boolean fields are introduced to enable more options at the deal proposal stage

📁 Storing unsealed copies: default is to store the unsealed copy

When a deal is made:

If

'RemoveUnsealedCopy = False'

OR No setting is made at all: An unsealed copy of the data is stored.

DEFAULT behavior is to keep an unsealed copy of the data just as it is today.

If

'RemoveUnsealedCopy = True'

An unsealed copy of the data will NOT be stored.

📡 Announce to Indexer behavior:

When a deal is made:

If

'SkipIPNIAnnounce = False'

OR No setting is made at all: An announcement is sent to IPNI

DEFAULT behavior is to announce to the indexer just as it is today.

If

'SkipIPNIAnnounce = True'

Deal will NOT be announced to the indexer.

Protocol Message

type DealParams struct { DealUUID uuid.UUID IsOffline bool ClientDealProposal market.ClientDealProposal DealDataRoot cid.Cid Transfer Transfer // Transfer params will be the zero value if this is an offline deal RemoveUnsealedCopy bool SkipIPNIAnnounce bool }

Link to Datastructure

Backwards Compatibility

This release includes improved functionality, but does not change the existing default Storage Deal Protocol behavior. By default, deals will be announced to IPNI, and a copy of unsealed data will be kept.

Security Considerations

No changes to underlying proofs or security.

Incentive Considerations

No change to incentives.

Product Considerations

We are updating the storage deal proposal libp2p protocol; two optional boolean fields are introduced to enable more options at the deal proposal stage.

Implementation

Link to Client flags to not announce deals Boost PR #1051

Copyright

Copyright and related rights waived via CC0.