sched: Store the circuit ID instead of the full DESTROY cell in the destroy queue
Tor currently keeps the DESTROY cells it needs to relay on the
cmux->destroy_queue but it keeps the entire
packed_cell_t which is a full 514 bytes usually.
Instead, we should keep the
circid_t because this is really only what we need which would shrink down the used memory by a factor of 128x.
We've observed this on very loaded relays getting DoS with CREATE/DESTROY cells at high rate by many clients which is filling the DESTROY queue while tor is struggling to flush them on the network towards a relay that is also struggling.
This needs to be backported as far as we can in order to avoid relays being memory DoS too hard. The next step is to make our OOM consider those DESTROY cells but that is a bit more involving.