Research Article
Traffic Differentiation and Multiqueue Networking in ns-3
@INPROCEEDINGS{10.1145/3067665.3067677, author={Pasquale Imputato and Stefano Avallone}, title={Traffic Differentiation and Multiqueue Networking in ns-3}, proceedings={Proceedings of the Workshop on ns-3}, publisher={ACM}, proceedings_a={WNS3}, year={2017}, month={7}, keywords={ns-3 Traffic Control Queueing Discipline Active Queue Manage-ment Traffic Differentiation WiFi}, doi={10.1145/3067665.3067677} }
- Pasquale Imputato
Stefano Avallone
Year: 2017
Traffic Differentiation and Multiqueue Networking in ns-3
WNS3
ACM
DOI: 10.1145/3067665.3067677
Abstract
The Linux networking subsystem provides fundamental abstrac-tion to send and receive packets or to perform other operations. At socket layer, the user can set the socket priority used by the networking stack to prioritise the packets. The kernel sends a high priority packet before a low priority packet but the exact behaviour depends on the traffic control layer. A priority based queueing dis-cipline uses that value of priority to enqueue the packets while a multiqueue aware queueing discipline uses a priority mapping defined by the device to enqueue the packets in its queues. The enqueue event triggers a number of consecutive dequeues based on the implemented device flow control mechanism. In case of a WiFi device, an additional layer, named the Soft MAC layer, sits in between the networking API and the hard device MAC. This layer defines the priority mapping and the device driver uses the API provided by that layer to notify the kernel about the status of their queues. In this paper, we present the introduction of the socket priority and of the multiqueue networking infrastructure in ns-3 and the design of the new flow control infrastructure. Finally, we report a preliminary evaluation of our work, consisting of a number of tests that highlight the new behaviour introduced by our models.