Deal / Data Transfer Rate-limiting #7259
Replies: 11 comments 12 replies
-
I'm not a miner but my 2 cents. As to share my experience with You can be trapped in situations where the other side is too slow and you're not maximizing your throughput. I've experienced this as a client before, so is a tricky knob in the configuration file. You can try patching the situation with aggressive thresholds to drop transfers or similar or considering other dimensions of bytes/second limits in balanced ways. |
Beta Was this translation helpful? Give feedback.
-
I think we need separate configs for incoming and outgoing. Also this is more like a quantity control, not speed control. |
Beta Was this translation helpful? Give feedback.
-
Some additional thoughts from a storage-providers perspective about rate limiting: Most storage providers knows their theoretical maximum sealing capacity per 24 hours. When the storage provider is only sealing CC-sectors it's possible to go at max capacity, since you can time when you pledge a CC-sector to exactly fit your sealing cluster (in terms of how many PC1, PC2 & C2 your cluster can handle). Going at the max sealing capacity with only storage deals introduces a couple of hurdles currently for a storage provider:
|
Beta Was this translation helpful? Give feedback.
-
option 4. more important in my eyes is to decouple data transfer from data processing. enable miners to handle 2 possible bottle necks independent from each other |
Beta Was this translation helpful? Give feedback.
-
Option 4. |
Beta Was this translation helpful? Give feedback.
-
I would like to see data transfer as quickly as possible, however, I would like to see the following: |
Beta Was this translation helpful? Give feedback.
-
I have a small setup, but I would go with Option 4. I also agree with what @stuberman has written above. |
Beta Was this translation helpful? Give feedback.
-
I would go for option 4 in terms of managing data transfers. but I also strongly agree with the comments above. We need to be able to limit deals by max data transfers in GiB/day. |
Beta Was this translation helpful? Give feedback.
-
Option 4 A few additional ideas to make online deals better:
Our miner setup:
|
Beta Was this translation helpful? Give feedback.
-
Having read this discussion and went over it with the Ignite team, we are exploring various options on how to improve:
|
Beta Was this translation helpful? Give feedback.
-
I don't know how often to be used in storing and retrieving data in the future, but I prefer option 4 for flexibility. I think controlling the number of simultaneous transfers means that when N occupy a limited bandwidth of the storage provider, the average can be set according to a fast client. From a storage provider's perspective, a good client will be able to transfer or get data smoothly without having to wait. About the relationship between sealing and data transfer that some have mentioned: |
Beta Was this translation helpful? Give feedback.
-
As described in #7084 (comment), as the client demands in the Filecoin network, a better deal throttling in lotus is required so that storage provider system doesn't get overwhelmed by excessive deals and impact their service quality. One of the top requests for improvement here is to allow storage providers to config data transfer rate-limiting easily based on their hardware resources, setup and service operations. Lotus-miner currently has a
SimultaneousTransfers
that applies to the incoming retrieval deals data transfers. That being said, such a feature is missing for controlling incoming storage deal data transfers(#7030).There are multiple approaches that can be done here, and this discussion is created to ask our storage providers about which solution would be the most ideal to support your service.
Option 1: N for
SimultaneousTransfers
means exactly N in progress Storage or Retrieval deals combined at once for a miner (where sending or receiving data)Option 2: N for
SimultaneousTransfers
means exactly N in progress storage deals and N in progress Retrieval deals at once for a minerOption 3: N for
SimultaneousTransfers
means exactly N/2 in progress Storage or N/2 Retrieval deals at once for a miner (where sending or receiving data)Option 4: N in progress simultaneous Storage Deals and M in progress simultaneous Retrieval Deals separately.
Please let us know what's your preferred approach in a comment below in a form of:
Preferred Option:
Miner Setup(describe your system architecture, including subsystem setup and worker setup):
Reason:
Other consideration(special consideration you think worth calling out):
Beta Was this translation helpful? Give feedback.
All reactions