1 #ifndef NDNDPDK_FETCH_LOGIC_H
2 #define NDNDPDK_FETCH_LOGIC_H
6 #include "../core/rttest.h"
17 struct cds_list_head
retxQ;
28 __attribute__((nonnull))
void
31 __attribute__((nonnull))
void
34 __attribute__((nonnull))
void
42 __attribute__((nonnull))
size_t
56 __attribute__((nonnull))
void
struct FetchLogic FetchLogic
Fetcher congestion control and scheduling logic.
void FetchLogic_Reset(FetchLogic *fl, uint64_t segmentBegin, uint64_t segmentEnd)
Definition: logic.c:168
void FetchLogic_Init(FetchLogic *fl, uint32_t winCapacity, int numaSocket)
Definition: logic.c:151
void FetchLogic_RxDataBurst(FetchLogic *fl, const FetchLogicRxData *pkts, size_t count, TscTime now)
Notify Data arrival.
Definition: logic.c:121
void FetchLogic_Free(FetchLogic *fl)
Definition: logic.c:162
typedef TAILQ_HEAD(FetchRetxQueue, FetchSeg) FetchRetxQueue
struct FetchLogicRxData FetchLogicRxData
size_t FetchLogic_TxInterestBurst(FetchLogic *fl, uint64_t *segNums, size_t limit, TscTime now)
Request to transmit a burst of Interests.
Definition: logic.c:40
uint8_t congMark
Definition: logic.h:47
bool isFinalBlock
Definition: logic.h:48
uint64_t segNum
Definition: logic.h:46
Fetcher congestion control and scheduling logic.
Definition: logic.h:13
TscTime startTime
start time
Definition: logic.h:20
struct cds_list_head retxQ
Definition: logic.h:17
uint32_t nInFlight
count of in-flight Interests
Definition: logic.h:25
TscTime nextCwndDec
when cwnd may be decreased again
Definition: logic.h:22
TscTime finishTime
finish time, 0 if not finished
Definition: logic.h:21
MinSched * sched
Definition: logic.h:18
RttEst rtte
Definition: logic.h:15
FetchWindow win
Definition: logic.h:14
uint64_t segmentEnd
last segnum desired plus one
Definition: logic.h:19
uint64_t nTxRetx
retransmitted Interests
Definition: logic.h:23
TcpCubic ca
Definition: logic.h:16
uint64_t nRxData
non-duplicate Data
Definition: logic.h:24
Per-segment state.
Definition: window.h:15
Window of segment states.
Definition: window.h:34
Minute scheduler.
Definition: mintmr.h:22
RTT estimator.
Definition: rttest.h:55
TCP CUBIC algorithm.
Definition: tcpcubic.h:12
uint64_t TscTime
TSC clock time point.
Definition: tsc.h:9