You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Supporting uncapped outgoingMaxBufferedDatagrams is burdensome #806
But in the same breath, it lets websites set the size of this queue to 4294967295.
This forces the UA to buffer needlessly in the content process when it only needed to wave through enough datagrams to saturate its IPC.
Firefox example
Neqo (the networking code in Gecko's parent process) caps bytes it will buffer parent-side per-sink at 256 KB.
Say outgoingMaxBufferedDatagrams = 4000 and you write 4000 datagrams at once:
To be compliant, the underlying sink would have to waive through and temporarily store all 4000 chunks into sink memory content-side immediately, before beginning to IPC over a subset (say ~256) to the parent until empty:
But Firefox does something different: internally it signals back pressure over IPC anyway, so it just signals that up by withholding resolving the sink promise:
Activity