Skip to content

Commit

Permalink
docs: edits
Browse files Browse the repository at this point in the history
  • Loading branch information
jcstein committed Oct 17, 2024
1 parent 999f301 commit 7172271
Showing 1 changed file with 14 additions and 6 deletions.
20 changes: 14 additions & 6 deletions cips/cip-pfb-limits.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,25 +11,33 @@

## Abstract

This CIP proposes to set limits for the number of PayForBlobs (PFBs) messages and non-PFBs messages per block. The proposal is to set the limits to 600 PFBs messages and 200 non-PFBs messages per block.
This CIP proposes to set limits for the number of PayForBlobs (PFBs) messages and non-PFBs messages per block. The proposal is to set the limits to 600 PFBs messages and 200 non-PFBs messages per block. Setting PFB and non-PFBs limits is not consensus-breaking.

## Specification

1. The number of PFBs per block is limited to 600 by setting `MaxPFBMessages` to 600.
2. The number of non-PFBs messages per block is limited to 200 by setting `MaxNonPFBMessages` to 200.
3. These limits are soft limits implemented in the `PrepareProposal` stage.
1. Set `MaxPFBMessages` to 600, limiting the number of PFBs per block to 600.
2. Set `MaxNonPFBMessages` to 200, limiting the number of non-PFBs messages per block to 200.
3. These limits are implemented as soft limits in the `PrepareProposal` stage of the `celestia-app`.
4. Validators can potentially modify the `PrepareProposal` logic and produce blocks exceeding these limits.

## Rationale

To prevent long block times on the network by limiting the number of PFBs and non-PFBs messages per block. Limits were established based on benchmarks to achieve a target processing time of ~0.25 seconds.
1. To prevent long block times by limiting PFBs and non-PFBs messages per block.
2. Limits were established based on benchmarks in [PR 3904](https://github.com/celestiaorg/celestia-app/pull/3904):
- Target processing time: ~0.25 seconds
- Benchmarks run on recommended validator configuration (4 CPU, 16GB RAM)
- Soft limiter implemented in prepare proposal stage
3. This approach balances network efficiency with block processing speed.
4. While initially not considered consensus-breaking, it has a meaningful effect on users and should be formalized.

## Backwards Compatibility

This proposal is meant to be included with v3 and the Ginger Network Upgrade. It is backwards compatible with v2.
This proposal is meant to be included with v3 and the [Ginger Network Upgrade](./cip-25.md). It is backwards compatible with v2.

## Security Considerations

This proposal does not introduce new security risks but impacts network behavior and user experience.

## Copyright

Copyright and related rights waived via [CC0](https://github.com/celestiaorg/CIPs/blob/main/LICENSE).

0 comments on commit 7172271

Please sign in to comment.