Skip to content

Commit e513c38

Browse files
committed
Fix order of operations in codel control law
1 parent d3c7445 commit e513c38

1 file changed

Lines changed: 3 additions & 6 deletions

File tree

src/main/routing/router_queue_codel.c

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -197,12 +197,9 @@ static Packet* _routerqueuecodel_dequeueHelper(QueueManagerCoDel* queueManager,
197197
}
198198

199199
static CSimulationTime _routerqueuecodel_controlLaw(guint count, CSimulationTime ts) {
200-
CSimulationTime newTS = ts + CODEL_PARAM_INTERVAL_SIMTIME;
201-
202-
double result = ((double)newTS) / sqrt((double)count);
203-
double rounded = round(result);
204-
205-
return (CSimulationTime)rounded;
200+
// control_law: t + (INTERVAL / sqrt(count));
201+
double result = ((double)CODEL_PARAM_INTERVAL_SIMTIME) / sqrt((double)count);
202+
return ts + ((CSimulationTime)result);
206203
}
207204

208205
static Packet* _routerqueuecodel_dequeue(QueueManagerCoDel* queueManager) {

0 commit comments

Comments
 (0)