Skip to content

Raise HTTP/2 SETTINGS limits - #13444

Merged
bneradt merged 1 commit into
apache:masterfrom
bneradt:raise-http2-settings-limits
Jul 31, 2026
Merged

Raise HTTP/2 SETTINGS limits#13444
bneradt merged 1 commit into
apache:masterfrom
bneradt:raise-http2-settings-limits

Conversation

@bneradt

@bneradt bneradt commented Jul 28, 2026

Copy link
Copy Markdown
Contributor

HTTP/2 extensions can add enough SETTINGS parameters to exceed the
defaults, causing Traffic Server to close otherwise valid connections
before a request. This occurs with Meta forward proxy traffic that
advertises WebTransport-over-HTTP/2 settings.

This raises the per-frame limit to 16 and the per-minute limit to
32, retaining abuse protections while allowing protocol growth. This
also adds an AuTest that sends an extension-rich SETTINGS frame and
verifies that the subsequent request succeeds.

Fixes: #13443

Copilot AI review requested due to automatic review settings July 28, 2026 18:38
@bneradt bneradt added this to the 11.0.0 milestone Jul 28, 2026
@bneradt bneradt self-assigned this Jul 28, 2026

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

HTTP/2 extensions can add enough SETTINGS parameters to exceed the
defaults, causing Traffic Server to close otherwise valid connections
before a request. This occurs with Meta forward proxy traffic that
advertises WebTransport-over-HTTP/2 settings.

This raises the per-frame limit to 16 and the per-minute limit to
32, retaining abuse protections while allowing protocol growth. This
also adds an AuTest that sends an extension-rich SETTINGS frame and
verifies that the subsequent request succeeds.

Fixes: apache#13443
@bneradt
bneradt force-pushed the raise-http2-settings-limits branch from 3695f54 to 219988b Compare July 29, 2026 15:30
Copilot AI review requested due to automatic review settings July 29, 2026 15:30

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 7 out of 7 changed files in this pull request and generated no new comments.

@maskit maskit left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I"m fine with the new limits (still small enough), but at the same time I'm not sure what are reasonable limits. We probably don't want to make the default values 1000 even if there is a legitimate case. The default values should be safe, and settings should be adjusted by users for minor use cases.

@bneradt
bneradt merged commit 89fdedb into apache:master Jul 31, 2026
15 checks passed
@github-project-automation github-project-automation Bot moved this to For v10.2.0 in ATS v10.2.x Jul 31, 2026
@bneradt
bneradt deleted the raise-http2-settings-limits branch July 31, 2026 15:55
cmcfarlen pushed a commit that referenced this pull request Aug 4, 2026
HTTP/2 extensions can add enough SETTINGS parameters to exceed the
defaults, causing Traffic Server to close otherwise valid connections
before a request. This occurs with Meta forward proxy traffic that
advertises WebTransport-over-HTTP/2 settings.

This raises the per-frame limit to 16 and the per-minute limit to
32, retaining abuse protections while allowing protocol growth. This
also adds an AuTest that sends an extension-rich SETTINGS frame and
verifies that the subsequent request succeeds.

Fixes: #13443
(cherry picked from commit 89fdedb)
@cmcfarlen cmcfarlen moved this from For v10.2.0 to Picked v10.2.0 in ATS v10.2.x Aug 4, 2026
@cmcfarlen cmcfarlen modified the milestones: 11.0.0, 10.2.0 Aug 4, 2026
@cmcfarlen

Copy link
Copy Markdown
Contributor

Cherry-picked to the 10.2.x branch as 53f07be for the 10.2.0 release.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

Status: Picked v10.2.0

Development

Successfully merging this pull request may close these issues.

Default HTTP/2 SETTINGS limits reject extension settings

4 participants