microsoft / demikernel

Kernel-Bypass LibOS Architecture
https://aka.ms/demikernel
MIT License
948 stars 119 forks source link

[Catpowder] Support multiple XDP RSS queues #1429

Closed iyzhang closed 2 weeks ago

iyzhang commented 2 weeks ago

Context

Currently we only support a single RSS queue for the XDP physical layer on Windows. Since the OS will likely be configured for more than one RSS queue in most cases, we should support multiple queues.

Proposed Solution

Implement a round-robin polling mechanism for multiple RSS queues. This will work if we run the inetstack on only a single core.

Alternative Solutions

Instantiate one inetstack per RSS queue. If we need to expand to multiple cores, this would be the way to go to avoid lock contention.

kyleholohan commented 2 weeks ago

Completed with #1434