Content deleted Content added
Citation bot (talk | contribs) Added bibcode. | Use this bot. Report bugs. | Suggested by Headbomb | #UCB_toolbar |
m Open access bot: url-access=subscription updated in citation with #oabot. |
||
Line 6:
For this reason many techniques, both in hardware and in software, are leveraged in order to distribute the incoming load of packets across the cores of the [[Central processing unit|processor]].
On the traffic-receiving side, the most notable techniques presented in this article are: RSS, aRFS, RPS and RFS.
For transmission, we will focus on XPS.<ref name="General intro">{{Citation |last=Madden |first=Michael M. |title=Challenges Using the Linux Network Stack for Real-Time Communication |date=2019-01-06 |work=AIAA Scitech 2019 Forum |url=https://arc.aiaa.org/doi/10.2514/6.2019-0503 |access-date=2025-07-10 |series=AIAA SciTech Forum |publisher=American Institute of Aeronautics and Astronautics |doi=10.2514/6.2019-0503 |pages=9–11 |isbn=978-1-62410-578-4 |url-access=subscription }}</ref><ref>{{Cite web |last=Herbert |first=Tom |date=2025-02-24 |title=The alphabet soup of receive packet steering: RSS, RPS, RFS, and aRFS |url=https://medium.com/@tom_84912/the-alphabet-soup-of-receive-packet-steering-rss-rps-rfs-and-arfs-c84347156d68 |access-date=2025-07-10 |website=Medium |language=en}}</ref><br>
As shown by the figure beside, packets coming into the [[Network_interface_controller|network interface card (NIC)]] are processed and loaded to the receiving queues managed by the cores (which are usually implemented as [[Circular buffer|ring buffers]] within the [[User space and kernel space|kernel space]]).
The main objective is being able to leverage all the cores available within the [[Central processing unit|CPU]] to process incoming packets, while also improving performances like [[Latency (engineering)|latency]] and [[Network throughput|throughput]].<ref name="RSS kernel linux docs">{{Cite web|title=RSS kernel linux docs|url=https://www.kernel.org/doc/html/v5.1/networking/scaling.html#rss-receive-side-scaling|access-date=2025-07-08|website=kernel.org|publisher=The Linux Kernel documentation|language=en-US}}</ref><ref name="RSS overview by microsoft">{{Cite web|title=RSS overview by microsoft|url=https://learn.microsoft.com/en-us/windows-hardware/drivers/network/introduction-to-receive-side-scaling|access-date=2025-07-08|website=learn.microsoft.com|language=en-US}}</ref><ref>{{Cite journal |last1=Wu |first1=Wenji |last2=DeMar |first2=Phil |last3=Crawford |first3=Matt |date=2011-02-01 |title=Why Can Some Advanced Ethernet NICs Cause Packet Reordering? |journal=IEEE Communications Letters |volume=15 |issue=2 |pages=253–255 |doi=10.1109/LCOMM.2011.122010.102022 |arxiv=1106.0443 |bibcode=2011IComL..15..253W |issn=1558-2558}}</ref>
Line 71:
* {{Cite book |last1=Helbig |first1=Maike |last2=Kim |first2=Younghoon |chapter=IAPS: Decreasing Software-Based Packet Steering Overhead Through Interrupt Reduction |date=2025-01-01 |pages=127–130 |title=2025 International Conference on Information Networking (ICOIN) |doi=10.1109/ICOIN63865.2025.10993154 |isbn=979-8-3315-0694-0 }}
* {{Cite book |last1=Kumar |first1=Ashwin |last2=Katkam |first2=Rajneesh |last3=Chaudhary |first3=Pranav |last4=Naik |first4=Priyanka |last5=Vutukuru |first5=Mythili |chapter=AppSteer: Framework for Improving Multicore Scalability of Network Functions via Application-aware Packet Steering |date=2024-05-01 |pages=18–27 |title=2024 IEEE 24th International Symposium on Cluster, Cloud and Internet Computing (CCGrid) |doi=10.1109/CCGrid59990.2024.00012 |isbn=979-8-3503-9566-2 }}
* {{Cite journal |last1=Tyunyayev |first1=Nikita |last2=Delzotti |first2=Clément |last3=Eran |first3=Haggai |last4=Barbette |first4=Tom |date=2025-06-09 |title=ASNI: Redefining the Interface Between SmartNICs and Applications |url=https://dl.acm.org/doi/10.1145/3730966 |journal=Proc. ACM Netw. |volume=3 |issue=CoNEXT2 |pages=1–22 |doi=10.1145/3730966|url-access=subscription }}
== External links ==
|