Snapshot delivery and send intervals for per-link BBR rate measurement
This commit is contained in:
1 parent
c2f4f048d7
commit
f3008b7aba
2 files changed
+4
-1
No files matched your search
@@ -80,6 +80,8 @@ struct INFLIGHT_PACKET {// выделяется из etcp->inflight_pool
|
||||
uint8_t state; // WAIT_ACK занимает окно last_link; WAIT_SEND ожидает первую/повторную отправку
|
||||
uint8_t send_hist[8]; // через какие каналы передавался пакет (NEW). send_count - head ptr
|
||||
uint64_t delivered_at_send; // link->delivered_bytes на момент отправки (для BBR prior_delivered)
|
||||
uint64_t delivered_time_at_send_tb; // время последней доставки при отправке; начало ACK-интервала BBR
|
||||
uint64_t first_tx_at_send_tb; // начало интервала отправок BBR (оба интервала — в 0.1мс)
|
||||
uint32_t inflight_at_send; // link->inflight_bytes на момент отправки (для BBR tx_in_flight)
|
||||
uint8_t is_app_limited; // данные ограничены приложением на момент отправки
|
||||
};
|
||||
|
||||
@@ -326,7 +326,8 @@ struct ETCP_LINK {
|
||||
// === BBR congestion control ===
|
||||
struct bbr* bbr; // BBR state (per-link, создаётся в etcp_link_new)
|
||||
uint64_t delivered_bytes; // кумулятивно delivered bytes на линке (для round detection)
|
||||
uint64_t last_ack_time_tb; // 0.1ms timestamp последнего ACK (для interval_us)
|
||||
uint64_t last_ack_time_tb; // время последней доставки/начала первого flight, 0.1мс
|
||||
uint64_t first_tx_time_tb; // начало интервала отправок, продвигается подтверждёнными попытками
|
||||
uint32_t bbr_pacing_rate; // bytes/sec output BBR → shaper
|
||||
uint32_t bbr_loss_since_ack; // счётчик потерь на линке с последнего ACK (для rs->lost)
|
||||
|
||||
|
||||
Reference in new issue
Block a user