Skip to content
This repository has been archived by the owner on Mar 28, 2023. It is now read-only.

Split provide messages (message size limits) #55

Open
Tracked by #9150
willscott opened this issue Oct 10, 2022 · 4 comments
Open
Tracked by #9150

Split provide messages (message size limits) #55

willscott opened this issue Oct 10, 2022 · 4 comments
Labels
need/analysis Needs further analysis before proceeding P1 High: Likely tackled by core team if no one steps up

Comments

@willscott
Copy link
Contributor

When providing an array of many items, if the number of items is very large, we should consider splitting the request into multiple smaller messages.

cc @lidel - should there be a maximum in the spec for the number of accepted provided items a single delegated routing call may contain?

@willscott willscott added the need/triage Needs initial labeling and prioritization label Oct 10, 2022
@lidel
Copy link
Member

lidel commented Oct 13, 2022

Yes, we should always have max sizes as part of specs, just to ensure implementations don't create any footguns.

cc @ajnavarro for visibility, as i know you've been looking at a similar issue in Kubo, where we were sending provide (or bitswap asks?) for too many CIDs at the same time, and were considering batching

What max batch size would make sense for reframe?

@lidel lidel added P1 High: Likely tackled by core team if no one steps up need/analysis Needs further analysis before proceeding labels Oct 13, 2022
@lidel lidel changed the title Split provide messages Split provide messages (message size limits) Oct 14, 2022
@ajnavarro
Copy link
Member

What max batch size would make sense for reframe?

It depends on what we think is an acceptable and sane default for an HTTP payload size. 10Mb? 100Mb? 2Gb?

Here are the POST body sizes for some of the more popular HTTP servers:

@lidel
Copy link
Member

lidel commented Oct 18, 2022

Given the IPNS record size being capped at ~10KiB, and block limit in IPFS-over-libp2p being ~1MB atm, I'd go with 1MB or something in-between.

@BigLep
Copy link

BigLep commented Nov 7, 2022

Per @ajnavarro discussion in this issue and in 2022-11-07 standup, please also include a spec change change with a recommendation on limits.

@ajnavarro ajnavarro removed the need/triage Needs initial labeling and prioritization label Nov 8, 2022
@ajnavarro ajnavarro moved this to 🏃‍♀️ In Progress in IPFS Shipyard Team Nov 8, 2022
@ajnavarro ajnavarro moved this from 🏃‍♀️ In Progress to 🔎 In Review in IPFS Shipyard Team Nov 8, 2022
@ajnavarro ajnavarro removed their assignment Feb 5, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
need/analysis Needs further analysis before proceeding P1 High: Likely tackled by core team if no one steps up
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants