Project

General

Profile

Feature #4362

Updated by Anonymous over 6 years ago

When NFD is running natively (e.g. on Ethernet links), a router should be able to detect congestion by measuring its queue (either backlog size, or queuing delay). 

 This congestion measurement should then be used to signal consumers by putting congestion marks into packets (#3797). 

 In our Hackathon project we figured out, that we can use the **ioctl** command TIOCOUTQ to receive the buffer backlog size of all three socket types: TCP, UDP, and unix sockets. 

 The current Some remaining design includes: questions: 

 - Check if buffer is above THRESHOLD = MAX_BUF_SIZE / 3 (defaults Is it possible to 200KB / 3) access low-level queues of the network interface? 
 - If buffer > THRESHOLD -> Insert congestion mark into packet.  

 Are there some queues inside NFD that can be used for this purpose? 
 - Does this also work for TCP tunnels and/or wireless links? 

 Please feel free to ask more questions below.

Back