Opened 14 months ago
Last modified 10 months ago
#28090 new defect
Keepalive padding cell bypasses the cell scheduler
Reported by: | dgoulet | Owned by: | |
---|---|---|---|
Priority: | Medium | Milestone: | Tor: unspecified |
Component: | Core Tor/Tor | Version: | |
Severity: | Normal | Keywords: | tor-relay, tor-scheduler, tor-kist, 040-deferred-20190220 |
Cc: | Actual Points: | ||
Parent ID: | Points: | ||
Reviewer: | Sponsor: |
Description
When sending a keepalive cell, we look if the connection outbuf is empty but with the KIST scheduler, that buffer is optimized to be emptied very quickly.
That cell should be able to ask the scheduler if it can queue cells in the outbuf. In an _ideal_ world, that cell would be handled by the scheduler but since it is not a circuit level "cell", we can not quickly fix that.
The fix for padding cell is to ask the scheduler, for a specific channel, if it can queue in the outbuf. The KIST scheduler would do two things: check for pending cells and if the kernel would allow it (tcp buffer size).
This made the #28089 issue more pathological.
Child Tickets
Change History (2)
comment:1 Changed 13 months ago by
Milestone: | Tor: 0.3.6.x-final → Tor: 0.4.0.x-final |
---|
comment:2 Changed 10 months ago by
Keywords: | 040-deferred-20190220 added |
---|---|
Milestone: | Tor: 0.4.0.x-final → Tor: unspecified |
Deferring 51 tickets from 0.4.0.x-final. Tagging them with 040-deferred-20190220 for visibility. These are the tickets that did not get 040-must, 040-can, or tor-ci.
Tor 0.3.6.x has been renamed to 0.4.0.x.