Kontroler interfejsu sieciowego - Network interface controller

Kontroler interfejsu sieciowego
Karta sieciowa.jpg
Karta kontrolera interfejsu sieciowego Ethernet z lat 90., która łączy się z płytą główną za pośrednictwem przestarzałej magistrali ISA . Ta karta kombinowana zawiera zarówno złącze BNC (po lewej) do użytku w (obecnie przestarzałych) sieciach 10BASE2 oraz złącze 8P8C (po prawej) do użytku w sieciach 10BASE-T .
Łączy się z Płyta główna  za pośrednictwem jednego z:

Sieć za pośrednictwem jednego z:

Prędkości Pełny dupleks lub półdupleks :
  • 10 Mb/s
  • 100 Mb/s
  • 1 Gb/s

Pełny dupleks :
  • 2,5 Gb/s
  • 5 Gb/s
  • 10 Gb/s
  • do 160 Gb/s
Wspólni producenci Intel
Realtek
Broadcom (obejmuje dawny Avago , Emulex )
Marvell Technology Group
Cavium (dawniej QLogic )
Mellanox
Chelsio

Interfejs sieciowy kontroler ( NIC , znany również jako karta sieciowa , karta sieciowa , adapter LAN lub fizycznego interfejsu sieciowego , oraz podobnych warunkach) jest sprzęt komputerowy składnik, który łączy komputer z siecią komputerową .

Wczesne kontrolery interfejsu sieciowego były powszechnie implementowane na kartach rozszerzeń podłączanych do magistrali komputerowej . Niski koszt i wszechobecność Ethernet standardowe oznacza, że większość nowych komputerów posiada interfejs sieciowy wbudowany w płytę główną , albo jest zawarty w USB -connected klucza .

Nowoczesne kontrolery interfejsów sieciowych oferują zaawansowane funkcje, takie jak interfejsy przerwań i DMA do procesorów hosta, obsługa wielu kolejek odbierania i wysyłania, partycjonowanie na wiele interfejsów logicznych oraz przetwarzanie ruchu sieciowego na kontrolerze, takie jak mechanizm odciążania TCP .

Cel, powód

Kontroler sieciowy implementuje układy elektroniczne wymagane do komunikacji przy użyciu określonej warstwy fizycznej i standardu warstwy łącza danych, takiego jak Ethernet lub Wi-Fi . Stanowi to podstawę dla pełnego stosu protokołów sieciowych , umożliwiając komunikację między komputerami w tej samej sieci lokalnej (LAN) i komunikację sieciową na dużą skalę za pośrednictwem protokołów routowalnych, takich jak protokół internetowy (IP).

Karta sieciowa umożliwia komputerom komunikację w sieci komputerowej za pomocą kabli lub bezprzewodowo. Karta sieciowa jest zarówno urządzeniem warstwy fizycznej, jak i warstwy łącza danych, ponieważ zapewnia fizyczny dostęp do medium sieciowego, a w przypadku sieci IEEE 802 i podobnych zapewnia system adresowania niskiego poziomu dzięki wykorzystaniu adresów MAC, które są jednoznacznie przypisane do sieci interfejsy.

Realizacja

12 wczesnych 8-bitowych i 16-bitowych kart sieciowych ISA do komputerów PC. Karta z prawej dolnej części to wczesna karta sieci bezprzewodowej, a karta środkowa z częściowo beżową plastikową osłoną to modem PSTN .

Kontrolery sieciowe zostały pierwotnie zaimplementowane jako karty rozszerzeń podłączane do magistrali komputerowej. Niski koszt i wszechobecność standardu Ethernet oznacza, że ​​większość nowych komputerów ma wbudowany w płytę główną kontroler interfejsu sieciowego. Nowsze płyty główne serwerów mogą mieć wbudowanych wiele interfejsów sieciowych. Możliwości Ethernet są albo zintegrowane z chipsetem płyty głównej, albo zaimplementowane za pomocą niedrogiego dedykowanego układu Ethernet. Oddzielna karta sieciowa zwykle nie jest już wymagana, chyba że potrzebne są dodatkowe niezależne połączenia sieciowe lub używany jest jakiś typ sieci inny niż Ethernet. Ogólny trend w sprzęcie komputerowym zmierza w kierunku integracji różnych komponentów systemów na chipie , co dotyczy również kart sieciowych.

Kontroler sieci Ethernet zazwyczaj ma gniazdo 8P8C, do którego podłączony jest kabel sieciowy. Starsze karty sieciowe również dostarczały połączenia BNC lub AUI . Kontrolery sieci Ethernet zazwyczaj obsługują 10  Mbit/s Ethernet, 100 Mbit/s Ethernet i 1000 Mbit/s Ethernet . Takie kontrolery są oznaczone jako 10/100/1000 , co oznacza, że ​​mogą obsługiwać szybkości transmisji danych 10, 100 lub 1000 Mbit/s. Dostępne są również karty sieciowe 10 Gigabit Ethernet , które od listopada 2014 r. zaczynają być dostępne na płytach głównych komputerów .

Qlogic QLE3442-CU SFP + dual-port NIC

Konstrukcje modułowe, takie jak SFP i SFP+, są bardzo popularne, zwłaszcza w przypadku komunikacji światłowodowej . Określają one standardowe gniazdo dla nadajników-odbiorników zależnych od mediów, dzięki czemu użytkownicy mogą łatwo dostosować interfejs sieciowy do swoich potrzeb.

Diody LED przylegające do złącza sieciowego lub zintegrowane ze złączem sieciowym informują użytkownika o tym, czy sieć jest podłączona i kiedy występuje aktywność danych.

Karta sieciowa może wykorzystywać jedną lub więcej z następujących technik, aby wskazać dostępność pakietów do przesłania:

  • Odpytywanie polega na tym, że procesor sprawdza stan urządzenia peryferyjnego pod kontrolą programu.
  • We/wy sterowane przerwaniami to sytuacja, w której urządzenie peryferyjne ostrzega procesor, że jest gotowe do przesyłania danych.

Karty sieciowe mogą wykorzystywać jedną lub więcej z następujących technik do przesyłania danych pakietowych:

Wydajność i zaawansowana funkcjonalność

ATM interfejs sieciowy.
Karta sieciowa Intel 82574L Gigabit Ethernet, karta PCI Express ×1, która zapewnia dwie sprzętowe kolejki odbioru

Karty sieciowe z wieloma kolejkami zapewniają wiele kolejek transmisji i odbioru , dzięki czemu pakiety odebrane przez kartę sieciową mogą być przypisywane do jednej z jej kolejek odbiorczych. Karta sieciowa może rozdzielać ruch przychodzący między kolejkami odbiorczymi za pomocą funkcji mieszającej . Każda kolejka odbiorcza jest przypisana do oddzielnego przerwania ; poprzez kierowanie każdego z tych przerwań do różnych procesorów lub rdzeni procesorów , przetwarzanie żądań przerwań wyzwalanych przez ruch sieciowy odbierany przez pojedynczą kartę sieciową może być rozłożone, poprawiając wydajność.

Oparta na sprzęcie dystrybucja przerwań, opisana powyżej, jest określana jako skalowanie po stronie odbiorczej (RSS). Istnieją również implementacje czysto programowe, takie jak sterowanie odbieraniem pakietów (RPS) i sterowanie przepływem odbierania (RFS). Dalszą poprawę wydajności można osiągnąć poprzez kierowanie żądań przerwań do procesorów lub rdzeni wykonujących aplikacje, które są ostatecznymi miejscami docelowymi pakietów sieciowych, które wygenerowały przerwania. Ta technika poprawia lokalność odniesienia i skutkuje wyższą ogólną wydajnością, zmniejszonymi opóźnieniami i lepszym wykorzystaniem sprzętu dzięki większemu wykorzystaniu pamięci podręcznej procesora i mniejszej liczbie wymaganych przełączników kontekstowych . Przykładami takich wdrożeń są RFS i Intel Flow Director .

Dzięki kartom sieciowym z wieloma kolejkami można uzyskać dodatkowe ulepszenia wydajności, rozdzielając ruch wychodzący między różne kolejki transmisji. Przypisując różne kolejki transmisji do różnych procesorów lub rdzeni procesorów, można uniknąć wewnętrznych rywalizacji o system operacyjny. Takie podejście jest zwykle określane jako sterowanie pakietami transmisji (XPS).

Niektóre produkty obsługują partycjonowanie kart sieciowych (NPAR, znane również jako partycjonowanie portów ), które wykorzystuje wirtualizację SR-IOV do dzielenia pojedynczej karty sieciowej 10 Gigabit Ethernet na wiele oddzielnych wirtualnych kart sieciowych o dedykowanej przepustowości, które są prezentowane oprogramowaniu układowemu i systemowi operacyjnemu jako oddzielne urządzenie PCI funkcje .

Aparat odciążania TCP to technologia używana w niektórych kartach sieciowych do przenoszenia przetwarzania całego stosu TCP/IP na kontroler sieci. Jest używany głównie z szybkimi interfejsami sieciowymi, takimi jak Gigabit Ethernet i 10 Gigabit Ethernet, dla których obciążenie przetwarzania stosu sieciowego staje się znaczące.

Niektóre karty sieciowe oferują zintegrowane macierze FPGA (ang. field programmable gate arrays ) do programowanego przez użytkownika przetwarzania ruchu sieciowego przed dotarciem do komputera hosta, co pozwala na znaczne zmniejszenie opóźnień w przypadku obciążeń wrażliwych na czas. Co więcej, niektóre karty sieciowe oferują kompletne stosy TCP/IP o niskich opóźnieniach działające na zintegrowanych układach FPGA w połączeniu z bibliotekami przestrzeni użytkownika, które przechwytują operacje sieciowe zwykle wykonywane przez jądro systemu operacyjnego ; Solarflare jest open-source OpenOnload sieć stos, który działa na Linux jest przykładem. Ten rodzaj funkcjonalności jest zwykle określany jako sieć na poziomie użytkownika .

Zobacz też

Uwagi

Bibliografia

Linki zewnętrzne