Netwerkinterfacecontroller

Een ATM-netwerkinterface.

Intel 82574L Gigabit Ethernet NIC, een PCI Express × 1-kaart, die twee hardware-ontvangstwachtrijen biedt

Multiqueue NICs bieden meerdere verzend- en ontvangstwachtrijen, waardoor pakketten die door de NIC worden ontvangen, kunnen worden toegewezen aan een van zijn ontvangstwachtrijen. De NIC kan inkomend verkeer tussen de ontvangstwachtrijen verdelen met behulp van een hash-functie. Elke ontvangstwachtrij wordt toegewezen aan een afzonderlijke onderbreking; door elk van deze interrupts naar verschillende CPUs of CPU-kernen te routeren, kan de verwerking van de interruptverzoeken die worden geactiveerd door het netwerkverkeer dat wordt ontvangen door een enkele NIC, worden gedistribueerd waardoor de prestaties worden verbeterd.

De op hardware gebaseerde distributie van de interrupts, hierboven beschreven, wordt ontvang-side scaling (RSS) genoemd. 82 Er bestaan ook puur software-implementaties, zoals de ontvangstpakketsturing (RPS) en ontvangststroomsturing (RFS). Verdere prestatieverbeteringen kunnen worden bereikt door de interruptverzoeken te routeren naar de CPUs of cores die de applicaties uitvoeren die de uiteindelijke bestemmingen zijn voor netwerkpakketten die de interrupts hebben gegenereerd. Deze techniek verbetert de referentielocatie en resulteert in hogere algehele prestaties, verminderde latentie en beter hardwaregebruik vanwege het hogere gebruik van CPU-caches en minder vereiste contextschakelaars. Voorbeelden van dergelijke implementaties zijn de RFS en Intel Flow Director.:98,99

Met NICs met meerdere wachtrijen kunnen aanvullende prestatieverbeteringen worden bereikt door uitgaand verkeer over verschillende verzendwachtrijen te verdelen. Door verschillende verzendwachtrijen aan verschillende CPUs of CPU-cores toe te wijzen, kunnen interne conflicten met het besturingssysteem worden vermeden. Deze benadering wordt gewoonlijk transmit packet steering (XPS) genoemd.

Sommige producten zijn voorzien van NIC-partitionering (NPAR, ook bekend als poortpartitionering) die SR-IOV-virtualisatie gebruikt om een enkele 10 Gigabit Ethernet NIC op te splitsen in meerdere discrete virtuele NICs met toegewezen bandbreedte, die aan de firmware en het besturingssysteem worden gepresenteerd als afzonderlijke PCI-apparaatfuncties.

TCP-offload-engine is een technologie die in sommige NICs wordt gebruikt om de verwerking van de volledige TCP / IP-stack te ontlasten naar de netwerkcontroller. Het wordt voornamelijk gebruikt met high-speed netwerkinterfaces, zoals Gigabit Ethernet en 10 Gigabit Ethernet, waarvoor de verwerkingsoverhead van de netwerkstack aanzienlijk wordt.

Sommige NICs bieden geïntegreerde veldprogrammeerbare gate-arrays (FPGAs). ) voor door de gebruiker programmeerbare verwerking van netwerkverkeer voordat het de hostcomputer bereikt, waardoor de latenties bij tijdgevoelige workloads aanzienlijk worden verminderd. Bovendien bieden sommige NICs complete TCP / IP-stacks met lage latentie die draaien op geïntegreerde FPGAs in combinatie met gebruikersruimtebibliotheken die netwerkbewerkingen onderscheppen die gewoonlijk worden uitgevoerd door de kernel van het besturingssysteem; De open-source OpenOnload-netwerkstack van Solarflare die op Linux draait, is een voorbeeld. Dit soort functionaliteit wordt meestal gebruikersniveau-netwerken genoemd.

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *