Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/research-camp/qjump-on-nic
Queue jump over NIC queues.
https://github.com/research-camp/qjump-on-nic
c c-programming kernel-module linux linux-kernel network nic qjump queue
Last synced: 6 days ago
JSON representation
Queue jump over NIC queues.
- Host: GitHub
- URL: https://github.com/research-camp/qjump-on-nic
- Owner: research-camp
- License: mit
- Created: 2022-09-26T06:38:59.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2023-12-22T16:41:40.000Z (about 1 year ago)
- Last Synced: 2024-11-11T15:09:21.615Z (2 months ago)
- Topics: c, c-programming, kernel-module, linux, linux-kernel, network, nic, qjump, queue
- Language: C
- Homepage:
- Size: 44.9 KB
- Stars: 1
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# QJump over NIC queue
Moving high priority packets to the front of the network interface card (aka ```queue jumping```).
The idea of this project comes from a paper called
[__Queues Don’t Matter When You Can JUMP Them!__](https://www.usenix.org/conference/nsdi15/technical-sessions/presentation/grosvenor) that
its focus is on deployable approach to controlling network interference in datacenter networks.Our goal is to create a kernel module to perform this approach on our local system's __NIC__. In this repository
we present this module's code-base. In the next sections we are going to describe this module by presenting 4
steps that its taking.## collaborators
- __Amirhossein Najafizadeh__ (Amirkabir University of Technology), research assistant
- __Dr. Seyed Ahmad Javadi__ (Amirkabir University of Technology), project supervisor## project steps
### step one (NIC event capturing)
The first step is to capture packets that are inserted into NIC queues. We should capture both
input packets and output packets.### step two (event management)
Next step is creating a event callback function to be called whenever we capture a packet. This callback
function gets packet data and decides where it belongs to.### step three (queue reordering)
After callback function is called, we need to reorder our system's NIC queue.
### step four (system logging)
In the final step we log these events into a file for debugging and tracing.